Changeset 2591 in CLRX


Ignore:
Timestamp:
Nov 24, 2016, 7:18:07 PM (3 years ago)
Author:
matszpk
Message:

CLRadeonExtender: AsmROCm: make setConfigBoolValue, use BINGEN64_NOTSUPPLIED in setConfigValue.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • CLRadeonExtender/trunk/amdasm/AsmROCmFormat.cpp

    r2589 r2591  
    359359    skipSpacesToEnd(linePtr, end);
    360360    const char* valuePlace = linePtr;
    361     uint64_t value = BINGEN_NOTSUPPLIED;
     361    uint64_t value = BINGEN64_NOTSUPPLIED;
    362362    bool good = getAbsoluteValueArg(asmr, value, linePtr, true);
    363363    /* ranges checking */
     
    549549          const char* pseudoOpPlace, const char* linePtr, ROCmConfigValueTarget target)
    550550{
     551    Assembler& asmr = handler.assembler;
     552    const char* end = asmr.line + asmr.lineSize;
     553   
     554    if (asmr.currentKernel==ASMKERN_GLOBAL ||
     555        asmr.sections[asmr.currentSection].type != AsmSectionType::CONFIG)
     556    {
     557        asmr.printError(pseudoOpPlace, "Illegal place of configuration pseudo-op");
     558        return;
     559    }
     560   
     561    skipSpacesToEnd(linePtr, end);
     562    if (!checkGarbagesAtEnd(asmr, linePtr))
     563        return;
     564   
     565    handler.kernelStates[asmr.currentKernel]->initializeKernelConfig();
     566    AsmROCmKernelConfig& config = *(handler.kernelStates[asmr.currentKernel]->config);
     567   
     568    switch(target)
     569    {
     570        case ROCMCVAL_PRIVMODE:
     571            config.privilegedMode = true;
     572            break;
     573        case ROCMCVAL_DEBUGMODE:
     574            config.debugMode = true;
     575            break;
     576        case ROCMCVAL_DX10CLAMP:
     577            config.dx10Clamp = true;
     578            break;
     579        case ROCMCVAL_IEEEMODE:
     580            config.ieeeMode = true;
     581            break;
     582        case ROCMCVAL_TGSIZE:
     583            config.tgSize = true;
     584            break;
     585        case ROCMCVAL_USE_PRIVATE_SEGMENT_BUFFER:
     586            config.enableSpgrRegisterFlags |= 1;
     587            break;
     588        case ROCMCVAL_USE_DISPATCH_PTR:
     589            config.enableSpgrRegisterFlags |= 2;
     590            break;
     591        case ROCMCVAL_USE_QUEUE_PTR:
     592            config.enableSpgrRegisterFlags |= 4;
     593            break;
     594        case ROCMCVAL_USE_KERNARG_SEGMENT_PTR:
     595            config.enableSpgrRegisterFlags |= 8;
     596            break;
     597        case ROCMCVAL_USE_DISPATCH_ID:
     598            config.enableSpgrRegisterFlags |= 16;
     599            break;
     600        case ROCMCVAL_USE_FLAT_SCRATCH_INIT:
     601            config.enableSpgrRegisterFlags |= 32;
     602            break;
     603        case ROCMCVAL_USE_PRIVATE_SEGMENT_SIZE:
     604            config.enableSpgrRegisterFlags |= 64;
     605            break;
     606        case ROCMCVAL_USE_ORDERED_APPEND_GDS:
     607            config.enableFeatureFlags |= 1;
     608            break;
     609        case ROCMCVAL_USE_PTR64:
     610            config.enableFeatureFlags |= 8;
     611            break;
     612        case ROCMCVAL_USE_DYNAMIC_CALL_STACK:
     613            config.enableFeatureFlags |= 16;
     614            break;
     615        case ROCMCVAL_USE_DEBUG_ENABLED:
     616            config.enableFeatureFlags |= 32;
     617            break;
     618        case ROCMCVAL_USE_XNACK_ENABLED:
     619            config.enableFeatureFlags |= 64;
     620            break;
     621        default:
     622            break;
     623    }
    551624}
    552625
Note: See TracChangeset for help on using the changeset viewer.