[Lldb-commits] [PATCH] D131705: Don't create sections for SHN_ABS symbols in ELF files.
Alvin Wong via Phabricator via lldb-commits
lldb-commits at lists.llvm.org
Sat Sep 17 04:17:05 PDT 2022
alvinhochun added inline comments.
================
Comment at: lldb/source/Commands/CommandObjectTarget.cpp:1550
+ } else {
+ strm.IndentMore();
+ strm.Indent(" Value: ");
----------------
This `IndentMore` added is missing a matching `IndentLess` call.
================
Comment at: lldb/source/Commands/CommandObjectTarget.cpp:1551-1556
+ strm.Indent(" Value: ");
+ strm.Printf("0x%16.16" PRIx64 "\n", symbol->GetRawValue());
+ if (symbol->GetByteSizeIsValid()) {
+ strm.Indent(" Size: ");
+ strm.Printf("0x%16.16" PRIx64 "\n", symbol->GetByteSize());
+ }
----------------
May I ask, is it expected for this to print only the value and size but not the name of the symbol?
Also, in some COFF binaries linked by LLD there are a bunch of absolute symbols (e.g. `__guard_flags`) and when they hit this code path all they print is `Value: 0xffffffffffffffff`.
llvm-readobj shows the symbol as:
```
Symbol {
Name: __guard_flags
Value: 2147550464
Section: IMAGE_SYM_ABSOLUTE (-1)
BaseType: Null (0x0)
ComplexType: Null (0x0)
StorageClass: External (0x2)
AuxSymbolCount: 0
}
```
Though neither values are correct. I expect the value to be `0x10500`. I haven't looked into this yet. Any idea what might be going on?
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D131705/new/
https://reviews.llvm.org/D131705
More information about the lldb-commits
mailing list