1 // RUN: llvm-mc -filetype=obj -triple x86_64-pc-linux-gnu %s -o - | elf-dump | FileCheck %s 2 3 // Test that both % and @ are accepted. 4 .global foo 5 .type foo,%function 6 foo: 7 8 .global bar 9 .type bar,@object 10 bar: 11 12 // Test that gnu_unique_object is accepted. 13 .type zed,@gnu_unique_object 14 15 ifunc: 16 .global ifunc 17 .type ifunc,@gnu_indirect_function 18 19 // CHECK: # Symbol 4 20 // CHECK-NEXT: (('st_name', 0x00000005) # 'bar' 21 // CHECK-NEXT: ('st_bind', 0x1) 22 // CHECK-NEXT: ('st_type', 0x1) 23 // CHECK-NEXT: ('st_other', 0x00) 24 // CHECK-NEXT: ('st_shndx', 0x0001) 25 // CHECK-NEXT: ('st_value', 0x0000000000000000) 26 // CHECK-NEXT: ('st_size', 0x0000000000000000) 27 // CHECK-NEXT: ), 28 // CHECK-NEXT: # Symbol 5 29 // CHECK-NEXT: (('st_name', 0x00000001) # 'foo' 30 // CHECK-NEXT: ('st_bind', 0x1) 31 // CHECK-NEXT: ('st_type', 0x2) 32 // CHECK-NEXT: ('st_other', 0x00) 33 // CHECK-NEXT: ('st_shndx', 0x0001) 34 // CHECK-NEXT: ('st_value', 0x0000000000000000) 35 // CHECK-NEXT: ('st_size', 0x0000000000000000) 36 // CHECK-NEXT: ), 37 // CHECK-NEXT: # Symbol 6 38 // CHECK-NEXT: (('st_name', 0x00000009) # 'ifunc' 39 // CHECK-NEXT: ('st_bind', 0x1) 40 // CHECK-NEXT: ('st_type', 0xa) 41 // CHECK-NEXT: ('st_other', 0x00) 42 // CHECK-NEXT: ('st_shndx', 0x0001) 43 // CHECK-NEXT: ('st_value', 0x0000000000000000) 44 // CHECK-NEXT: ('st_size', 0x0000000000000000) 45 // CHECK-NEXT: ), 46 47