Page MenuHomePhabricator

[RuntimeDyld] Added support for relocation of indirect functions
Needs ReviewPublic

Authored by MoritzS on Jul 6 2021, 1:27 AM.

Details

Reviewers
lhames
Summary

In ELF, symbols of type STT_GNU_IFUNC need to be resolved by calling the
function at the symbol's address. This is implemented by adding special
stubs for all symbols of that type.

Diff Detail

Unit TestsFailed

TimeTest
60 msx64 debian > LLVM.tools/llvm-objdump/ELF::symbol-table.test
Script: -- : 'RUN: at line 2'; /var/lib/buildkite-agent/builds/llvm-project/build/bin/yaml2obj --docnum=1 /var/lib/buildkite-agent/builds/llvm-project/llvm/test/tools/llvm-objdump/ELF/symbol-table.test -o /var/lib/buildkite-agent/builds/llvm-project/build/test/tools/llvm-objdump/ELF/Output/symbol-table.test.tmp
140 msx64 windows > LLVM.tools/llvm-objdump/ELF::symbol-table.test
Script: -- : 'RUN: at line 2'; c:\ws\w2\llvm-project\premerge-checks\build\bin\yaml2obj.exe --docnum=1 C:\ws\w2\llvm-project\premerge-checks\llvm\test\tools\llvm-objdump\ELF\symbol-table.test -o C:\ws\w2\llvm-project\premerge-checks\build\test\tools\llvm-objdump\ELF\Output\symbol-table.test.tmp