[PATCH] D84788: [ELF] for symver directives, preserve the given symbol's size
Anthony Eden via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Fri Jul 31 10:54:02 PDT 2020
aeden updated this revision to Diff 282267.
aeden added a comment.
Updated to use existing global1 in llvm/test/MC/ELF/symver.s
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D84788/new/
https://reviews.llvm.org/D84788
Files:
llvm/lib/MC/ELFObjectWriter.cpp
llvm/test/MC/ELF/symver.s
Index: llvm/test/MC/ELF/symver.s
===================================================================
--- llvm/test/MC/ELF/symver.s
+++ llvm/test/MC/ELF/symver.s
@@ -18,9 +18,12 @@
.long undefined3
.global global1
+ .type global1, @object
+ .size global1, 4
.symver global1, g1@@zed
global1:
+
// CHECK: Relocations [
// CHECK-NEXT: Section {{.*}} .rela.text {
// CHECK-NEXT: 0x0 R_X86_64_32 .text 0x0
@@ -106,18 +109,18 @@
// CHECK-NEXT: Symbol {
// CHECK-NEXT: Name: g1@@zed
// CHECK-NEXT: Value: 0x14
-// CHECK-NEXT: Size: 0
+// CHECK-NEXT: Size: 4
// CHECK-NEXT: Binding: Global
-// CHECK-NEXT: Type: None
+// CHECK-NEXT: Type: Object
// CHECK-NEXT: Other: 0
// CHECK-NEXT: Section: .text
// CHECK-NEXT: }
// CHECK-NEXT: Symbol {
// CHECK-NEXT: Name: global1
// CHECK-NEXT: Value: 0x14
-// CHECK-NEXT: Size: 0
+// CHECK-NEXT: Size: 4
// CHECK-NEXT: Binding: Global
-// CHECK-NEXT: Type: None
+// CHECK-NEXT: Type: Object
// CHECK-NEXT: Other: 0
// CHECK-NEXT: Section: .text
// CHECK-NEXT: }
Index: llvm/lib/MC/ELFObjectWriter.cpp
===================================================================
--- llvm/lib/MC/ELFObjectWriter.cpp
+++ llvm/lib/MC/ELFObjectWriter.cpp
@@ -1277,6 +1277,7 @@
Alias->setExternal(Symbol.isExternal());
Alias->setBinding(Symbol.getBinding());
Alias->setOther(Symbol.getOther());
+ Alias->setSize(Symbol.getSize());
if (!Symbol.isUndefined() && !Rest.startswith("@@@"))
continue;
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D84788.282267.patch
Type: text/x-patch
Size: 1603 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20200731/8d4fca40/attachment.bin>
More information about the llvm-commits
mailing list