This fixes https://bugs.llvm.org/show_bug.cgi?id=40337. Previously, it was always assumed that relocations referenced symbols in the static symbol table. Now, if the Link field references a section called ".dynsym" it will look up these symbols in the dynamic symbol table.
Details
Diff Detail
- Repository
- rL LLVM
Event Timeline
LGTM.
tools/yaml2obj/yaml2elf.cpp | ||
---|---|---|
868 | This place looks a bit overcomplicated (seems requires refactoring), but it is not a problem of this patch. |
I forgot to run all the test before putting this patch up for review, and llvm-readobj/demangle.test is failing in a non-trivial way, which I'll need to fix. It may result in a different change in yaml2obj going in first, to fix segment offsets that contain .dynstr and .dynsym based on my first look.
tools/yaml2obj/yaml2elf.cpp | ||
---|---|---|
868 | I committed NFC in r355832. Open for comments. |
tools/yaml2obj/yaml2elf.cpp | ||
---|---|---|
868 | Seems reasonable. I'll rebase later, once I've fixed up the other issue. I've got some higher priority work to do first, so this may have to go onto the backburner for a week or two. |
This place looks a bit overcomplicated (seems requires refactoring), but it is not a problem of this patch.