print st_other with the correct number of bits.
[oota-llvm.git] / test / MC / ELF / tls-i386.s
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', 0x00000000)
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', 0x00000000)
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', 0x00000000)
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', 0x00000000)
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', 0x00000000)
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', 0x00000000)
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', 0x00000000)
74 // CHECK-NEXT:  ),