diff options
Diffstat (limited to 'test/MC/ELF/weak.s')
-rw-r--r-- | test/MC/ELF/weak.s | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/test/MC/ELF/weak.s b/test/MC/ELF/weak.s new file mode 100644 index 0000000..67e9b18 --- /dev/null +++ b/test/MC/ELF/weak.s @@ -0,0 +1,30 @@ +// RUN: llvm-mc -filetype=obj -triple x86_64-pc-linux-gnu %s -o - | elf-dump | FileCheck %s + +// Test that this produces a weak undefined symbol. + + .weak foo + .long foo + +// And that bar is after all local symbols and has non zero value. + .weak bar +bar: + +//CHECK: # Symbol 0x00000004 +//CHECK-NEXT: (('st_name', 0x00000005) # 'bar' +//CHECK-NEXT: ('st_bind', 0x00000002) +//CHECK-NEXT: ('st_type', 0x00000000) +//CHECK-NEXT: ('st_other', 0x00000000) +//CHECK-NEXT: ('st_shndx', 0x00000001) +//CHECK-NEXT: ('st_value', 0x0000000000000004) +//CHECK-NEXT: ('st_size', 0x0000000000000000) +//CHECK-NEXT: ), +//CHECK-NEXT: # Symbol 0x00000005 +//CHECK: (('st_name', 0x00000001) # 'foo' +//CHECK-NEXT: ('st_bind', 0x00000002) +//CHECK-NEXT: ('st_type', 0x00000000) +//CHECK-NEXT: ('st_other', 0x00000000) +//CHECK-NEXT: ('st_shndx', 0x00000000) +//CHECK-NEXT: ('st_value', 0x0000000000000000) +//CHECK-NEXT: ('st_size', 0x0000000000000000) +//CHECK-NEXT: ), +//CHECK-NEXT: ]) |