Changeset 1667 in CLRX


Ignore:
Timestamp:
Nov 6, 2015, 8:32:52 AM (5 years ago)
Author:
matszpk
Message:

CLRadeonExtender: Check if register symbol while resolving in makeSymbolSnapshot routine.
Reset sectionId when set register symbol.

Location:
CLRadeonExtender/trunk/amdasm
Files:
2 edited

Legend:

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

    r1665 r1667  
    917917                    if (nextSymEntry->second.hasValue)
    918918                    {   // put value to argument
     919                        if (nextSymEntry->second.regRange)
     920                        {
     921                            assembler.printError(expr->getSourcePos(),
     922                                                 "Expression have register symbol");
     923                            good = false;
     924                        }
    919925                        ops[opIndex] = AsmExprOp::ARG_VALUE;
    920926                        args[argIndex].relValue.value = nextSymEntry->second.value;
     
    12741280                    if (symEntry!=nullptr && symEntry->second.regRange)
    12751281                    {
    1276                         std::string errorMsg("Expression have register symbol '");
    1277                         errorMsg.append(linePtr, symEndStr);
    1278                         errorMsg += '\'';
    1279                         assembler.printError(linePtr, errorMsg.c_str());
     1282                        assembler.printError(linePtr, "Expression have register symbol");
    12801283                        good = false;
    12811284                        continue;
  • CLRadeonExtender/trunk/amdasm/Assembler.cpp

    r1666 r1667  
    977977        symEntry.second.onceDefined = !reassign;
    978978        symEntry.second.base = false;
     979        symEntry.second.sectionId = ASMSECT_ABS;
    979980        symEntry.second.regRange = symEntry.second.hasValue = true;
    980981        symEntry.second.value = (regStart | (uint64_t(regEnd)<<32));
Note: See TracChangeset for help on using the changeset viewer.