Home | History | Annotate | Download | only in ELF
      1 // RUN: llvm-mc -filetype=obj -triple i386-pc-linux-gnu %s -o - | elf-dump  | FileCheck %s
      2 
      3 // Test that all symbols are of type STT_TLS.
      4 
      5         movl    foo1@NTPOFF(%eax), %eax
      6         movl    foo2@GOTNTPOFF(%eax), %eax
      7         movl    foo3@TLSGD(%eax), %eax
      8         movl    foo4@TLSLDM(%eax), %eax
      9         movl    foo5@TPOFF(%eax), %eax
     10         movl    foo6@DTPOFF(%eax), %eax
     11         movl    foo7@INDNTPOFF, %eax
     12 
     13 // CHECK:       (('st_name', 0x00000001) # 'foo1'
     14 // CHECK-NEXT:   ('st_value', 0x00000000)
     15 // CHECK-NEXT:   ('st_size', 0x00000000)
     16 // CHECK-NEXT:   ('st_bind', 0x1)
     17 // CHECK-NEXT:   ('st_type', 0x6)
     18 // CHECK-NEXT:   ('st_other', 0x00)
     19 // CHECK-NEXT:   ('st_shndx', 0x0000)
     20 // CHECK-NEXT:  ),
     21 // CHECK-NEXT:  # Symbol 6
     22 // CHECK-NEXT:  (('st_name', 0x00000006) # 'foo2'
     23 // CHECK-NEXT:   ('st_value', 0x00000000)
     24 // CHECK-NEXT:   ('st_size', 0x00000000)
     25 // CHECK-NEXT:   ('st_bind', 0x1)
     26 // CHECK-NEXT:   ('st_type', 0x6)
     27 // CHECK-NEXT:   ('st_other', 0x00)
     28 // CHECK-NEXT:   ('st_shndx', 0x0000)
     29 // CHECK-NEXT:  ),
     30 // CHECK-NEXT:  # Symbol 7
     31 // CHECK-NEXT:  (('st_name', 0x0000000b) # 'foo3'
     32 // CHECK-NEXT:   ('st_value', 0x00000000)
     33 // CHECK-NEXT:   ('st_size', 0x00000000)
     34 // CHECK-NEXT:   ('st_bind', 0x1)
     35 // CHECK-NEXT:   ('st_type', 0x6)
     36 // CHECK-NEXT:   ('st_other', 0x00)
     37 // CHECK-NEXT:   ('st_shndx', 0x0000)
     38 // CHECK-NEXT:  ),
     39 // CHECK-NEXT:  # Symbol 8
     40 // CHECK-NEXT:  (('st_name', 0x00000010) # 'foo4'
     41 // CHECK-NEXT:   ('st_value', 0x00000000)
     42 // CHECK-NEXT:   ('st_size', 0x00000000)
     43 // CHECK-NEXT:   ('st_bind', 0x1)
     44 // CHECK-NEXT:   ('st_type', 0x6)
     45 // CHECK-NEXT:   ('st_other', 0x00)
     46 // CHECK-NEXT:   ('st_shndx', 0x0000)
     47 // CHECK-NEXT:  ),
     48 // CHECK-NEXT:  # Symbol 9
     49 // CHECK-NEXT:  (('st_name', 0x00000015) # 'foo5'
     50 // CHECK-NEXT:   ('st_value', 0x00000000)
     51 // CHECK-NEXT:   ('st_size', 0x00000000)
     52 // CHECK-NEXT:   ('st_bind', 0x1)
     53 // CHECK-NEXT:   ('st_type', 0x6)
     54 // CHECK-NEXT:   ('st_other', 0x00)
     55 // CHECK-NEXT:   ('st_shndx', 0x0000)
     56 // CHECK-NEXT:  ),
     57 // CHECK-NEXT:  # Symbol 10
     58 // CHECK-NEXT:  (('st_name', 0x0000001a) # 'foo6'
     59 // CHECK-NEXT:   ('st_value', 0x00000000)
     60 // CHECK-NEXT:   ('st_size', 0x00000000)
     61 // CHECK-NEXT:   ('st_bind', 0x1)
     62 // CHECK-NEXT:   ('st_type', 0x6)
     63 // CHECK-NEXT:   ('st_other', 0x00)
     64 // CHECK-NEXT:   ('st_shndx', 0x0000)
     65 // CHECK-NEXT:  ),
     66 // CHECK-NEXT:  # Symbol 11
     67 // CHECK-NEXT:  (('st_name', 0x0000001f) # 'foo7'
     68 // CHECK-NEXT:   ('st_value', 0x00000000)
     69 // CHECK-NEXT:   ('st_size', 0x00000000)
     70 // CHECK-NEXT:   ('st_bind', 0x1)
     71 // CHECK-NEXT:   ('st_type', 0x6)
     72 // CHECK-NEXT:   ('st_other', 0x00)
     73 // CHECK-NEXT:   ('st_shndx', 0x0000)
     74 // CHECK-NEXT:  ),
     75