Changeset 3697 in CLRX


Ignore:
Timestamp:
Feb 2, 2018, 6:54:17 AM (3 years ago)
Author:
matszpk
Message:

CLRadeonExtender: DisasmROCm: Move 'arch_minor' and 'arch_stepping' before metadata, globaldata and other new pseudo-ops.

File:
1 edited

Legend:

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

    r3666 r3697  
    524524    const cxuint maxSgprsNum = getGPUMaxRegistersNum(arch, REGTYPE_SGPR, 0);
    525525   
    526     if (rocmInput->eflags != 0)
    527     {
    528         // print eflags if not zero
    529         char buf[40];
    530         size_t size = snprintf(buf, 40, ".eflags %u\n", rocmInput->eflags);
    531         output.write(buf, size);
    532     }
    533    
    534     if (rocmInput->newBinFormat)
    535         output.write(".newbinfmt\n", 11);
    536    
    537     if (!rocmInput->target.empty())
    538     {
    539         output.write(".target \"", 9);
    540         const std::string escapedTarget = escapeStringCStyle(rocmInput->target);
    541         output.write(escapedTarget.c_str(), escapedTarget.size());
    542         output.write("\"\n", 2);
    543     }
    544    
    545     if (doDumpData && rocmInput->globalData != nullptr &&
    546         rocmInput->globalDataSize != 0)
    547     {
    548         output.write(".globaldata\n", 12);
    549         output.write(".gdata:\n", 8); /// symbol used by text relocations
    550         printDisasmData(rocmInput->globalDataSize, rocmInput->globalData, output);
    551     }
    552    
    553     if (doMetadata && !doDumpConfig &&
    554         rocmInput->metadataSize != 0 && rocmInput->metadata != nullptr)
    555     {
    556         output.write(".metadata\n", 10);
    557         printDisasmLongString(rocmInput->metadataSize, rocmInput->metadata, output);
    558     }
    559    
    560526    {
    561527        // print AMD architecture version
     
    565531        size = snprintf(buf, 40, ".arch_stepping %u\n", rocmInput->archStepping);
    566532        output.write(buf, size);
     533    }
     534   
     535    if (rocmInput->eflags != 0)
     536    {
     537        // print eflags if not zero
     538        char buf[40];
     539        size_t size = snprintf(buf, 40, ".eflags %u\n", rocmInput->eflags);
     540        output.write(buf, size);
     541    }
     542   
     543    if (rocmInput->newBinFormat)
     544        output.write(".newbinfmt\n", 11);
     545   
     546    if (!rocmInput->target.empty())
     547    {
     548        output.write(".target \"", 9);
     549        const std::string escapedTarget = escapeStringCStyle(rocmInput->target);
     550        output.write(escapedTarget.c_str(), escapedTarget.size());
     551        output.write("\"\n", 2);
     552    }
     553   
     554    if (doDumpData && rocmInput->globalData != nullptr &&
     555        rocmInput->globalDataSize != 0)
     556    {
     557        output.write(".globaldata\n", 12);
     558        output.write(".gdata:\n", 8); /// symbol used by text relocations
     559        printDisasmData(rocmInput->globalDataSize, rocmInput->globalData, output);
     560    }
     561   
     562    if (doMetadata && !doDumpConfig &&
     563        rocmInput->metadataSize != 0 && rocmInput->metadata != nullptr)
     564    {
     565        output.write(".metadata\n", 10);
     566        printDisasmLongString(rocmInput->metadataSize, rocmInput->metadata, output);
    567567    }
    568568   
Note: See TracChangeset for help on using the changeset viewer.