[all-commits] [llvm/llvm-project] b87a0f: [llvm-readobj] - Report a warning when an unexpect...
Georgii Rymar via All-commits
all-commits at lists.llvm.org
Tue Feb 18 03:36:33 PST 2020
Branch: refs/heads/master
Home: https://github.com/llvm/llvm-project
Commit: b87a0f7416f1a657d808690295b44669849e7bfc
https://github.com/llvm/llvm-project/commit/b87a0f7416f1a657d808690295b44669849e7bfc
Author: Georgii Rymar <grimar at accesssoftek.com>
Date: 2020-02-18 (Tue, 18 Feb 2020)
Changed paths:
M llvm/test/tools/llvm-readobj/ELF/dyn-symbols.test
M llvm/tools/llvm-readobj/ELFDumper.cpp
Log Message:
-----------
[llvm-readobj] - Report a warning when an unexpected DT_SYMENT tag value is met.
There was a short discussion about this:
https://reviews.llvm.org/D73484#inline-676942
To summarize:
It is a bit unclear to me why the `DT_SYMENT` tag exist.
LLD has the code that does:
"addInt(DT_SYMENT, sizeof(Elf_Sym));" and I guess other linkers has the same logic.
It is unclear why it can be possible to have other values rather than values of
a size of platform symbol. Seems it is not possible, and atm for me it looks that
this tag should not be used. This patch starts reporting the warning when the
value it contains differs from a symbol size for a 32/64 bit platform for safety.
It keeps the rest of the logic we have unchanged. Before this patch we did not handle
the tag at all.
Differential review: https://reviews.llvm.org/D74479
More information about the All-commits
mailing list