Changeset 3760 in CLRX


Ignore:
Timestamp:
Feb 8, 2018, 7:47:26 PM (20 months ago)
Author:
matszpk
Message:

CLRadeonExtender: AsmROCm: set type 'OBJECT' to extra symbols in globaldata section. Add extra symbols to dynsym table.

Location:
CLRadeonExtender/trunk
Files:
2 edited

Legend:

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

    r3757 r3760  
    24962496                continue;
    24972497            }
     2498            cxbyte info = symEntry.second.info;
     2499            // object type for global symbol referring to global data
     2500            if (symEntry.second.sectionId==dataSection)
     2501                info = ELF32_ST_INFO(ELF32_ST_BIND(symEntry.second.info), STT_OBJECT);
    24982502           
    24992503            cxuint binSectId = (symEntry.second.sectionId != ASMSECT_ABS) ?
     
    25032507           
    25042508            output.extraSymbols.push_back({ symEntry.first, symEntry.second.value,
    2505                     symEntry.second.size, binSectId, false, symEntry.second.info,
    2506                     symEntry.second.other });
     2509                    symEntry.second.size, binSectId, false,
     2510                    info, symEntry.second.other });
    25072511        }
    25082512   
  • CLRadeonExtender/trunk/amdbin/ROCmBinaries.cpp

    r3758 r3760  
    22182218    /* extra symbols */
    22192219    for (const BinSymbol& symbol: input->extraSymbols)
    2220         elfBinGen64.addSymbol(ElfSymbol64(symbol, mainBuiltinSectTable,
    2221                          ROCMSECTID_MAX, mainSectionsNum));
     2220    {
     2221        ElfSymbol64 sym(symbol, mainBuiltinSectTable,
     2222                         ROCMSECTID_MAX, mainSectionsNum);
     2223        elfBinGen64.addSymbol(sym);
     2224        elfBinGen64.addDynSymbol(sym);
     2225    }
    22222226   
    22232227    size_t binarySize = elfBinGen64.countSize();
Note: See TracChangeset for help on using the changeset viewer.