diff options
author | Rafael Espindola <rafael.espindola@gmail.com> | 2015-08-26 21:46:24 +0000 |
---|---|---|
committer | Rafael Espindola <rafael.espindola@gmail.com> | 2015-08-26 21:46:24 +0000 |
commit | e11c6d2d6ffb9ad41afb80340118162cd5387edd (patch) | |
tree | 1b1284f24207e53c487db3bb8ee209d020b94981 | |
parent | 034e2e7a8e37a3388ad444c9c5080da9cab146f2 (diff) | |
download | bcm5719-llvm-e11c6d2d6ffb9ad41afb80340118162cd5387edd.tar.gz bcm5719-llvm-e11c6d2d6ffb9ad41afb80340118162cd5387edd.zip |
Set the symbol size in the symbol table.
llvm-svn: 246086
-rw-r--r-- | lld/ELF/Writer.cpp | 1 | ||||
-rw-r--r-- | lld/test/elf2/symbols.s | 3 |
2 files changed, 3 insertions, 1 deletions
diff --git a/lld/ELF/Writer.cpp b/lld/ELF/Writer.cpp index 3b01631d123..bde48972b01 100644 --- a/lld/ELF/Writer.cpp +++ b/lld/ELF/Writer.cpp @@ -260,6 +260,7 @@ template <class ELFT> void SymbolTableSection<ELFT>::writeTo(uint8_t *Buf) { uint8_t Type = InputSym->getType(); uint8_t Binding = InputSym->getBinding(); ESym->setBindingAndType(Binding, Type); + ESym->st_size = InputSym->st_size; } if (Section) { diff --git a/lld/test/elf2/symbols.s b/lld/test/elf2/symbols.s index e2b29962634..be0661d7413 100644 --- a/lld/test/elf2/symbols.s +++ b/lld/test/elf2/symbols.s @@ -25,6 +25,7 @@ zed2: .section foobar,"a",@nobits,unique,2 .globl zed3 +.size zed3, 4 zed3: // CHECK: Name: .text @@ -64,7 +65,7 @@ zed3: // CHECK-NEXT: Symbol { // CHECK-NEXT: Name: zed3 // CHECK-NEXT: Value: 0x100C -// CHECK-NEXT: Size: 0 +// CHECK-NEXT: Size: 4 // CHECK-NEXT: Binding: Global // CHECK-NEXT: Type: None // CHECK-NEXT: Other: 0 |