1// RUN: llvm-mc -filetype=obj -triple x86_64-pc-linux-gnu %s -o - | elf-dump --dump-section-data | FileCheck %s 2 3// Test that we emit the correct value. 4 5.set kernbase,0xffffffff80000000 6 7// CHECK: (('st_name', 0x00000001) # 'kernbase' 8// CHECK-NEXT: ('st_bind', 0x0) 9// CHECK-NEXT: ('st_type', 0x0) 10// CHECK-NEXT: ('st_other', 0x00) 11// CHECK-NEXT: ('st_shndx', 0xfff1) 12// CHECK-NEXT: ('st_value', 0xffffffff80000000) 13// CHECK-NEXT: ('st_size', 0x0000000000000000) 14// CHECK-NEXT: ), 15 16// Test that we accept .set of a symbol after it has been used in a statement. 17 18 jmp foo 19 .set foo, bar 20 21// or a .quad 22 23 .quad foo2 24 .set foo2,bar2 25 26// Test that there is an undefined reference to bar 27// CHECK: (('st_name', 0x0000000a) # 'bar' 28// CHECK-NEXT: ('st_bind', 0x1) 29// CHECK-NEXT: ('st_type', 0x0) 30// CHECK-NEXT: ('st_other', 0x00) 31// CHECK-NEXT: ('st_shndx', 0x0000) 32// CHECK-NEXT: ('st_value', 0x0000000000000000) 33// CHECK-NEXT: ('st_size', 0x0000000000000000) 34// CHECK-NEXT: ), 35