• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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