mirror of
https://github.com/RPCS3/llvm.git
synced 2025-02-22 11:42:42 +00:00
Don't hide the first ELF symbol.
The first symbol on ELF is dummy, but it has a defined content and readelf normally displays it. With this change llvm-readobj also displays it and we can check that llvm-mc output is correct according to the standard. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@183337 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
512119770e
commit
c9f2cc7e05
@ -2466,7 +2466,7 @@ symbol_iterator ELFObjectFile<ELFT>::begin_symbols() const {
|
||||
SymbolData.d.a = 0;
|
||||
SymbolData.d.b = 0;
|
||||
} else {
|
||||
SymbolData.d.a = 1; // The 0th symbol in ELF is fake.
|
||||
SymbolData.d.a = 0;
|
||||
SymbolData.d.b = SymbolTableIndex;
|
||||
}
|
||||
return symbol_iterator(SymbolRef(SymbolData, this));
|
||||
@ -2493,7 +2493,7 @@ symbol_iterator ELFObjectFile<ELFT>::begin_dynamic_symbols() const {
|
||||
SymbolData.d.a = 0;
|
||||
SymbolData.d.b = 0;
|
||||
} else {
|
||||
SymbolData.d.a = 1; // The 0th symbol in ELF is fake.
|
||||
SymbolData.d.a = 0;
|
||||
SymbolData.d.b = DynamicSymbolTableIndex;
|
||||
}
|
||||
return symbol_iterator(SymbolRef(SymbolData, this));
|
||||
|
@ -25,7 +25,16 @@ foo2:
|
||||
// CHECK-NEXT: ]
|
||||
|
||||
// CHECK: Symbols [
|
||||
// CHECK: Symbol {
|
||||
// CHECK-NEXT: Symbol {
|
||||
// CHECK-NEXT: Name: (0)
|
||||
// CHECK-NEXT: Value: 0x0
|
||||
// CHECK-NEXT: Size: 0
|
||||
// CHECK-NEXT: Binding: Local (0x0)
|
||||
// CHECK-NEXT: Type: None (0x0)
|
||||
// CHECK-NEXT: Other: 0
|
||||
// CHECK-NEXT: Section: (0x0)
|
||||
// CHECK-NEXT: }
|
||||
// CHECK-NEXT: Symbol {
|
||||
// CHECK-NEXT: Name: bar
|
||||
// CHECK-NEXT: Value: 0x0
|
||||
// CHECK-NEXT: Size: 0
|
||||
|
@ -19,6 +19,15 @@ bar4 = foo4
|
||||
|
||||
// CHECK: Symbols [
|
||||
// CHECK-NEXT: Symbol {
|
||||
// CHECK-NEXT: Name: (0)
|
||||
// CHECK-NEXT: Value: 0x0
|
||||
// CHECK-NEXT: Size: 0
|
||||
// CHECK-NEXT: Binding: Local (0x0)
|
||||
// CHECK-NEXT: Type: None (0x0)
|
||||
// CHECK-NEXT: Other: 0
|
||||
// CHECK-NEXT: Section: (0x0)
|
||||
// CHECK-NEXT: }
|
||||
// CHECK-NEXT: Symbol {
|
||||
// CHECK-NEXT: Name: bar
|
||||
// CHECK-NEXT: Value: 0x0
|
||||
// CHECK-NEXT: Size: 0
|
||||
|
@ -71,6 +71,15 @@ bar15:
|
||||
|
||||
// CHECK: Symbols [
|
||||
// CHECK-NEXT: Symbol {
|
||||
// CHECK-NEXT: Name: (0)
|
||||
// CHECK-NEXT: Value: 0x0
|
||||
// CHECK-NEXT: Size: 0
|
||||
// CHECK-NEXT: Binding: Local (0x0)
|
||||
// CHECK-NEXT: Type: None (0x0)
|
||||
// CHECK-NEXT: Other: 0
|
||||
// CHECK-NEXT: Section: (0x0)
|
||||
// CHECK-NEXT: }
|
||||
// CHECK-NEXT: Symbol {
|
||||
// CHECK-NEXT: Name: bar6 (21)
|
||||
// CHECK-NEXT: Value: 0x18
|
||||
// CHECK-NEXT: Size: 0
|
||||
|
@ -25,6 +25,15 @@ COFF-NEXT: }
|
||||
|
||||
ELF: Symbols [
|
||||
ELF-NEXT: Symbol {
|
||||
ELF-NEXT: Name: (0)
|
||||
ELF-NEXT: Value: 0x0
|
||||
ELF-NEXT: Size: 0
|
||||
ELF-NEXT: Binding: Local (0x0)
|
||||
ELF-NEXT: Type: None (0x0)
|
||||
ELF-NEXT: Other: 0
|
||||
ELF-NEXT: Section: (0x0)
|
||||
ELF-NEXT: }
|
||||
ELF-NEXT: Symbol {
|
||||
ELF-NEXT: Name: trivial.ll (1)
|
||||
ELF-NEXT: Value: 0x0
|
||||
ELF-NEXT: Size: 0
|
||||
|
Loading…
x
Reference in New Issue
Block a user