comparison test/MC/ARM/data-in-code.ll @ 3:9ad51c7bc036

1st commit. remove git dir and add all files.
author Kaito Tokumori <e105711@ie.u-ryukyu.ac.jp>
date Wed, 15 May 2013 06:43:32 +0900
parents
children 54457678186b
comparison
equal deleted inserted replaced
-1:000000000000 3:9ad51c7bc036
1 ;; RUN: llc -O0 -verify-machineinstrs -fast-isel-abort \
2 ;; RUN: -mtriple=armv7-linux-gnueabi -filetype=obj %s -o - | \
3 ;; RUN: llvm-readobj -t | FileCheck -check-prefix=ARM %s
4
5 ;; RUN: llc -O0 -verify-machineinstrs -fast-isel-abort \
6 ;; RUN: -mtriple=thumbv7-linux-gnueabi -filetype=obj %s -o - | \
7 ;; RUN: llvm-readobj -t | FileCheck -check-prefix=TMB %s
8
9 ;; Ensure that if a jump table is generated that it has Mapping Symbols
10 ;; marking the data-in-code region.
11
12 define void @foo(i32* %ptr) nounwind ssp {
13 %tmp = load i32* %ptr, align 4
14 switch i32 %tmp, label %default [
15 i32 11, label %bb0
16 i32 10, label %bb1
17 i32 8, label %bb2
18 i32 4, label %bb3
19 i32 2, label %bb4
20 i32 6, label %bb5
21 i32 9, label %bb6
22 i32 15, label %bb7
23 i32 1, label %bb8
24 i32 3, label %bb9
25 i32 5, label %bb10
26 i32 30, label %bb11
27 i32 31, label %bb12
28 i32 13, label %bb13
29 i32 14, label %bb14
30 i32 20, label %bb15
31 i32 19, label %bb16
32 i32 17, label %bb17
33 i32 18, label %bb18
34 i32 21, label %bb19
35 i32 22, label %bb20
36 i32 16, label %bb21
37 i32 24, label %bb22
38 i32 25, label %bb23
39 i32 26, label %bb24
40 i32 27, label %bb25
41 i32 28, label %bb26
42 i32 23, label %bb27
43 i32 12, label %bb28
44 ]
45
46 default:
47 br label %exit
48 bb0:
49 br label %exit
50 bb1:
51 br label %exit
52 bb2:
53 br label %exit
54 bb3:
55 br label %exit
56 bb4:
57 br label %exit
58 bb5:
59 br label %exit
60 bb6:
61 br label %exit
62 bb7:
63 br label %exit
64 bb8:
65 br label %exit
66 bb9:
67 br label %exit
68 bb10:
69 br label %exit
70 bb11:
71 br label %exit
72 bb12:
73 br label %exit
74 bb13:
75 br label %exit
76 bb14:
77 br label %exit
78 bb15:
79 br label %exit
80 bb16:
81 br label %exit
82 bb17:
83 br label %exit
84 bb18:
85 br label %exit
86 bb19:
87 br label %exit
88 bb20:
89 br label %exit
90 bb21:
91 br label %exit
92 bb22:
93 br label %exit
94 bb23:
95 br label %exit
96 bb24:
97 br label %exit
98 bb25:
99 br label %exit
100 bb26:
101 br label %exit
102 bb27:
103 br label %exit
104 bb28:
105 br label %exit
106
107
108 exit:
109
110 ret void
111 }
112
113 ;; ARM: Symbol {
114 ;; ARM: Name: $a
115 ;; ARM-NEXT: Value: 0x0
116 ;; ARM-NEXT: Size: 0
117 ;; ARM-NEXT: Binding: Local
118 ;; ARM-NEXT: Type: None
119 ;; ARM-NEXT: Other:
120 ;; ARM-NEXT: Section: [[MIXED_SECT:[^ ]+]]
121
122 ;; ARM: Symbol {
123 ;; ARM: Name: $a
124 ;; ARM-NEXT: Value: 0x{{[0-9A-F]+}}
125 ;; ARM-NEXT: Size: 0
126 ;; ARM-NEXT: Binding: Local
127 ;; ARM-NEXT: Type: None
128 ;; ARM-NEXT: Other:
129 ;; ARM-NEXT: Section: [[MIXED_SECT]]
130
131 ;; ARM: Symbol {
132 ;; ARM: Name: $d
133 ;; ARM-NEXT: Value: 0
134 ;; ARM-NEXT: Size: 0
135 ;; ARM-NEXT: Binding: Local
136 ;; ARM-NEXT: Type: None
137
138 ;; ARM: Symbol {
139 ;; ARM: Name: $d
140 ;; ARM-NEXT: Value: 0x{{[0-9A-F]+}}
141 ;; ARM-NEXT: Size: 0
142 ;; ARM-NEXT: Binding: Local
143 ;; ARM-NEXT: Type: None
144 ;; ARM-NEXT: Other:
145 ;; ARM-NEXT: Section: [[MIXED_SECT]]
146
147 ;; ARM-NOT: ${{[atd]}}
148
149 ;; TMB: Symbol {
150 ;; TMB: Name: $d.2
151 ;; TMB-NEXT: Value: 0x{{[0-9A-F]+}}
152 ;; TMB-NEXT: Size: 0
153 ;; TMB-NEXT: Binding: Local
154 ;; TMB-NEXT: Type: None
155 ;; TMB-NEXT: Other:
156 ;; TMB-NEXT: Section: [[MIXED_SECT:[^ ]+]]
157
158 ;; TMB: Symbol {
159 ;; TMB: Name: $t
160 ;; TMB-NEXT: Value: 0x0
161 ;; TMB-NEXT: Size: 0
162 ;; TMB-NEXT: Binding: Local
163 ;; TMB-NEXT: Type: None
164 ;; TMB-NEXT: Other:
165 ;; TMB-NEXT: Section: [[MIXED_SECT]]
166
167 ;; TMB: Symbol {
168 ;; TMB: Name: $t
169 ;; TMB-NEXT: Value: 0x{{[0-9A-F]+}}
170 ;; TMB-NEXT: Size: 0
171 ;; TMB-NEXT: Binding: Local
172 ;; TMB-NEXT: Type: None
173 ;; TMB-NEXT: Other:
174 ;; TMB-NEXT: Section: [[MIXED_SECT]]
175
176
177 ;; TMB-NOT: ${{[atd]}}
178