• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1; RUN: llc -march=amdgcn -mtriple=amdgcn---amdgiz -mcpu=tahiti -mattr=+vgpr-spilling -verify-machineinstrs < %s | FileCheck -check-prefix=GCN -check-prefix=GCNMESA -check-prefix=SIMESA %s
2; RUN: llc -march=amdgcn -mtriple=amdgcn---amdgiz -mcpu=fiji -mattr=+vgpr-spilling,-flat-for-global -verify-machineinstrs < %s | FileCheck -check-prefix=GCN -check-prefix=GCNMESA -check-prefix=VIMESA %s
3; RUN: llc -march=amdgcn -mtriple=amdgcn---amdgiz -mcpu=gfx900 -mattr=+vgpr-spilling,-flat-for-global -verify-machineinstrs < %s | FileCheck -check-prefix=GCN -check-prefix=GCNMESA -check-prefix=GFX9MESA %s
4; RUN: llc -march=amdgcn  -mcpu=hawaii -mtriple=amdgcn-unknown-amdhsa-amdgiz -mattr=+vgpr-spilling -verify-machineinstrs < %s | FileCheck -check-prefix=GCN -check-prefix=CIHSA -check-prefix=HSA %s
5; RUN: llc -march=amdgcn  -mcpu=fiji -mtriple=amdgcn-unknown-amdhsa-amdgiz -verify-machineinstrs < %s | FileCheck -check-prefix=GCN -check-prefix=VIHSA -check-prefix=HSA %s
6
7; This ends up using all 256 registers and requires register
8; scavenging which will fail to find an unsued register.
9
10; Check the ScratchSize to avoid regressions from spilling
11; intermediate register class copies.
12
13; FIXME: The same register is initialized to 0 for every spill.
14
15; GCN-LABEL: {{^}}spill_vgpr_compute:
16
17; HSA: enable_sgpr_private_segment_buffer = 1
18; HSA: enable_sgpr_flat_scratch_init = 0
19; HSA: workitem_private_segment_byte_size = 1536
20
21; GCN-NOT: flat_scr
22; MESA-NOT: s_mov_b32 s3
23; HSA-NOT: s_mov_b32 s7
24
25; GCNMESA-DAG: s_mov_b32 s12, SCRATCH_RSRC_DWORD0
26; GCNMESA-DAG: s_mov_b32 s13, SCRATCH_RSRC_DWORD1
27; GCNMESA-DAG: s_mov_b32 s14, -1
28; SIMESA-DAG: s_mov_b32 s15, 0xe8f000
29; VIMESA-DAG: s_mov_b32 s15, 0xe80000
30; GFX9MESA-DAG: s_mov_b32 s15, 0xe00000
31
32
33; GCNMESAMESA: buffer_store_dword {{v[0-9]+}}, off, s[12:15], s3 offset:{{[0-9]+}} ; 4-byte Folded Spill
34
35; GCNMESA: buffer_store_dword {{v[0-9]}}, off, s[12:15], s3 offset:{{[0-9]+}}
36; GCNMESA: buffer_store_dword {{v[0-9]}}, off, s[12:15], s3 offset:{{[0-9]+}}
37; GCNMESA: buffer_store_dword {{v[0-9]}}, off, s[12:15], s3 offset:{{[0-9]+}}
38; GCNMESA: buffer_store_dword {{v[0-9]}}, off, s[12:15], s3 offset:{{[0-9]+}}
39
40; GCNMESA: buffer_load_dword {{v[0-9]+}}, off, s[12:15], s3 offset:{{[0-9]+}}
41; GCNMESA: buffer_load_dword {{v[0-9]+}}, off, s[12:15], s3 offset:{{[0-9]+}}
42; GCNMESA: buffer_load_dword {{v[0-9]+}}, off, s[12:15], s3 offset:{{[0-9]+}}
43; GCNMESA: buffer_load_dword {{v[0-9]+}}, off, s[12:15], s3 offset:{{[0-9]+}}
44
45
46
47; HSA: buffer_store_dword {{v[0-9]+}}, off, s[0:3], s7 offset:{{[0-9]+}} ; 4-byte Folded Spill
48
49; HSA: buffer_store_dword {{v[0-9]}}, off, s[0:3], s7 offset:{{[0-9]+}}
50; HSA: buffer_store_dword {{v[0-9]}}, off, s[0:3], s7 offset:{{[0-9]+}}
51; HSA: buffer_store_dword {{v[0-9]}}, off, s[0:3], s7 offset:{{[0-9]+}}
52; HSA: buffer_store_dword {{v[0-9]}}, off, s[0:3], s7 offset:{{[0-9]+}}
53
54; HSA: buffer_load_dword {{v[0-9]+}}, off, s[0:3], s7 offset:{{[0-9]+}}
55; HSA: buffer_load_dword {{v[0-9]+}}, off, s[0:3], s7 offset:{{[0-9]+}}
56; HSA: buffer_load_dword {{v[0-9]+}}, off, s[0:3], s7 offset:{{[0-9]+}}
57; HSA: buffer_load_dword {{v[0-9]+}}, off, s[0:3], s7 offset:{{[0-9]+}}
58
59
60; GCN: NumVgprs: 256
61; GCN: ScratchSize: 1536
62
63; s[0:3] input user SGPRs. s4,s5,s6 = workgroup IDs. s8 scratch offset.
64define amdgpu_kernel void @spill_vgpr_compute(<4 x float> %arg6, float addrspace(1)* %arg, i32 %arg1, i32 %arg2, float %arg3, float %arg4, float %arg5) #0 {
65bb:
66  %tmp = add i32 %arg1, %arg2
67  %tmp7 = extractelement <4 x float> %arg6, i32 0
68  %tmp8 = extractelement <4 x float> %arg6, i32 1
69  %tmp9 = extractelement <4 x float> %arg6, i32 2
70  %tmp10 = extractelement <4 x float> %arg6, i32 3
71  %tmp11 = bitcast float %arg5 to i32
72  br label %bb12
73
74bb12:                                             ; preds = %bb145, %bb
75  %tmp13 = phi float [ 0.000000e+00, %bb ], [ %tmp338, %bb145 ]
76  %tmp14 = phi float [ 0.000000e+00, %bb ], [ %tmp337, %bb145 ]
77  %tmp15 = phi float [ 0.000000e+00, %bb ], [ %tmp336, %bb145 ]
78  %tmp16 = phi float [ 0.000000e+00, %bb ], [ %tmp339, %bb145 ]
79  %tmp17 = phi float [ 0.000000e+00, %bb ], [ %tmp335, %bb145 ]
80  %tmp18 = phi float [ 0.000000e+00, %bb ], [ %tmp334, %bb145 ]
81  %tmp19 = phi float [ 0.000000e+00, %bb ], [ %tmp333, %bb145 ]
82  %tmp20 = phi float [ 0.000000e+00, %bb ], [ %tmp340, %bb145 ]
83  %tmp21 = phi float [ 0.000000e+00, %bb ], [ %tmp332, %bb145 ]
84  %tmp22 = phi float [ 0.000000e+00, %bb ], [ %tmp331, %bb145 ]
85  %tmp23 = phi float [ 0.000000e+00, %bb ], [ %tmp330, %bb145 ]
86  %tmp24 = phi float [ 0.000000e+00, %bb ], [ %tmp341, %bb145 ]
87  %tmp25 = phi float [ 0.000000e+00, %bb ], [ %tmp329, %bb145 ]
88  %tmp26 = phi float [ 0.000000e+00, %bb ], [ %tmp328, %bb145 ]
89  %tmp27 = phi float [ 0.000000e+00, %bb ], [ %tmp327, %bb145 ]
90  %tmp28 = phi float [ 0.000000e+00, %bb ], [ %tmp342, %bb145 ]
91  %tmp29 = phi float [ 0.000000e+00, %bb ], [ %tmp326, %bb145 ]
92  %tmp30 = phi float [ 0.000000e+00, %bb ], [ %tmp325, %bb145 ]
93  %tmp31 = phi float [ 0.000000e+00, %bb ], [ %tmp324, %bb145 ]
94  %tmp32 = phi float [ 0.000000e+00, %bb ], [ %tmp343, %bb145 ]
95  %tmp33 = phi float [ 0.000000e+00, %bb ], [ %tmp323, %bb145 ]
96  %tmp34 = phi float [ 0.000000e+00, %bb ], [ %tmp322, %bb145 ]
97  %tmp35 = phi float [ 0.000000e+00, %bb ], [ %tmp321, %bb145 ]
98  %tmp36 = phi float [ 0.000000e+00, %bb ], [ %tmp344, %bb145 ]
99  %tmp37 = phi float [ 0.000000e+00, %bb ], [ %tmp320, %bb145 ]
100  %tmp38 = phi float [ 0.000000e+00, %bb ], [ %tmp319, %bb145 ]
101  %tmp39 = phi float [ 0.000000e+00, %bb ], [ %tmp318, %bb145 ]
102  %tmp40 = phi float [ 0.000000e+00, %bb ], [ %tmp345, %bb145 ]
103  %tmp41 = phi float [ 0.000000e+00, %bb ], [ %tmp317, %bb145 ]
104  %tmp42 = phi float [ 0.000000e+00, %bb ], [ %tmp316, %bb145 ]
105  %tmp43 = phi float [ 0.000000e+00, %bb ], [ %tmp315, %bb145 ]
106  %tmp44 = phi float [ 0.000000e+00, %bb ], [ %tmp346, %bb145 ]
107  %tmp45 = phi float [ 0.000000e+00, %bb ], [ %tmp314, %bb145 ]
108  %tmp46 = phi float [ 0.000000e+00, %bb ], [ %tmp313, %bb145 ]
109  %tmp47 = phi float [ 0.000000e+00, %bb ], [ %tmp312, %bb145 ]
110  %tmp48 = phi float [ 0.000000e+00, %bb ], [ %tmp347, %bb145 ]
111  %tmp49 = phi float [ 0.000000e+00, %bb ], [ %tmp311, %bb145 ]
112  %tmp50 = phi float [ 0.000000e+00, %bb ], [ %tmp310, %bb145 ]
113  %tmp51 = phi float [ 0.000000e+00, %bb ], [ %tmp309, %bb145 ]
114  %tmp52 = phi float [ 0.000000e+00, %bb ], [ %tmp348, %bb145 ]
115  %tmp53 = phi float [ 0.000000e+00, %bb ], [ %tmp308, %bb145 ]
116  %tmp54 = phi float [ 0.000000e+00, %bb ], [ %tmp307, %bb145 ]
117  %tmp55 = phi float [ 0.000000e+00, %bb ], [ %tmp306, %bb145 ]
118  %tmp56 = phi float [ 0.000000e+00, %bb ], [ %tmp349, %bb145 ]
119  %tmp57 = phi float [ 0.000000e+00, %bb ], [ %tmp305, %bb145 ]
120  %tmp58 = phi float [ 0.000000e+00, %bb ], [ %tmp304, %bb145 ]
121  %tmp59 = phi float [ 0.000000e+00, %bb ], [ %tmp303, %bb145 ]
122  %tmp60 = phi float [ 0.000000e+00, %bb ], [ %tmp350, %bb145 ]
123  %tmp61 = phi float [ 0.000000e+00, %bb ], [ %tmp302, %bb145 ]
124  %tmp62 = phi float [ 0.000000e+00, %bb ], [ %tmp301, %bb145 ]
125  %tmp63 = phi float [ 0.000000e+00, %bb ], [ %tmp300, %bb145 ]
126  %tmp64 = phi float [ 0.000000e+00, %bb ], [ %tmp351, %bb145 ]
127  %tmp65 = phi float [ 0.000000e+00, %bb ], [ %tmp299, %bb145 ]
128  %tmp66 = phi float [ 0.000000e+00, %bb ], [ %tmp298, %bb145 ]
129  %tmp67 = phi float [ 0.000000e+00, %bb ], [ %tmp297, %bb145 ]
130  %tmp68 = phi float [ 0.000000e+00, %bb ], [ %tmp352, %bb145 ]
131  %tmp69 = phi float [ 0.000000e+00, %bb ], [ %tmp296, %bb145 ]
132  %tmp70 = phi float [ 0.000000e+00, %bb ], [ %tmp295, %bb145 ]
133  %tmp71 = phi float [ 0.000000e+00, %bb ], [ %tmp294, %bb145 ]
134  %tmp72 = phi float [ 0.000000e+00, %bb ], [ %tmp353, %bb145 ]
135  %tmp73 = phi float [ 0.000000e+00, %bb ], [ %tmp293, %bb145 ]
136  %tmp74 = phi float [ 0.000000e+00, %bb ], [ %tmp292, %bb145 ]
137  %tmp75 = phi float [ 0.000000e+00, %bb ], [ %tmp291, %bb145 ]
138  %tmp76 = phi float [ 0.000000e+00, %bb ], [ %tmp354, %bb145 ]
139  %tmp77 = phi float [ 0.000000e+00, %bb ], [ %tmp290, %bb145 ]
140  %tmp78 = phi float [ 0.000000e+00, %bb ], [ %tmp289, %bb145 ]
141  %tmp79 = phi float [ 0.000000e+00, %bb ], [ %tmp288, %bb145 ]
142  %tmp80 = phi float [ 0.000000e+00, %bb ], [ %tmp355, %bb145 ]
143  %tmp81 = phi float [ 0.000000e+00, %bb ], [ %tmp287, %bb145 ]
144  %tmp82 = phi float [ 0.000000e+00, %bb ], [ %tmp286, %bb145 ]
145  %tmp83 = phi float [ 0.000000e+00, %bb ], [ %tmp285, %bb145 ]
146  %tmp84 = phi float [ 0.000000e+00, %bb ], [ %tmp356, %bb145 ]
147  %tmp85 = phi float [ 0.000000e+00, %bb ], [ %tmp284, %bb145 ]
148  %tmp86 = phi float [ 0.000000e+00, %bb ], [ %tmp283, %bb145 ]
149  %tmp87 = phi float [ 0.000000e+00, %bb ], [ %tmp282, %bb145 ]
150  %tmp88 = phi float [ 0.000000e+00, %bb ], [ %tmp357, %bb145 ]
151  %tmp89 = phi float [ 0.000000e+00, %bb ], [ %tmp281, %bb145 ]
152  %tmp90 = phi float [ 0.000000e+00, %bb ], [ %tmp280, %bb145 ]
153  %tmp91 = phi float [ 0.000000e+00, %bb ], [ %tmp279, %bb145 ]
154  %tmp92 = phi float [ 0.000000e+00, %bb ], [ %tmp358, %bb145 ]
155  %tmp93 = phi float [ 0.000000e+00, %bb ], [ %tmp359, %bb145 ]
156  %tmp94 = phi float [ 0.000000e+00, %bb ], [ %tmp360, %bb145 ]
157  %tmp95 = phi float [ 0.000000e+00, %bb ], [ %tmp409, %bb145 ]
158  %tmp96 = phi float [ 0.000000e+00, %bb ], [ %tmp361, %bb145 ]
159  %tmp97 = phi float [ 0.000000e+00, %bb ], [ %tmp362, %bb145 ]
160  %tmp98 = phi float [ 0.000000e+00, %bb ], [ %tmp363, %bb145 ]
161  %tmp99 = phi float [ 0.000000e+00, %bb ], [ %tmp364, %bb145 ]
162  %tmp100 = phi float [ 0.000000e+00, %bb ], [ %tmp365, %bb145 ]
163  %tmp101 = phi float [ 0.000000e+00, %bb ], [ %tmp366, %bb145 ]
164  %tmp102 = phi float [ 0.000000e+00, %bb ], [ %tmp367, %bb145 ]
165  %tmp103 = phi float [ 0.000000e+00, %bb ], [ %tmp368, %bb145 ]
166  %tmp104 = phi float [ 0.000000e+00, %bb ], [ %tmp369, %bb145 ]
167  %tmp105 = phi float [ 0.000000e+00, %bb ], [ %tmp370, %bb145 ]
168  %tmp106 = phi float [ 0.000000e+00, %bb ], [ %tmp371, %bb145 ]
169  %tmp107 = phi float [ 0.000000e+00, %bb ], [ %tmp372, %bb145 ]
170  %tmp108 = phi float [ 0.000000e+00, %bb ], [ %tmp373, %bb145 ]
171  %tmp109 = phi float [ 0.000000e+00, %bb ], [ %tmp374, %bb145 ]
172  %tmp110 = phi float [ 0.000000e+00, %bb ], [ %tmp375, %bb145 ]
173  %tmp111 = phi float [ 0.000000e+00, %bb ], [ %tmp376, %bb145 ]
174  %tmp112 = phi float [ 0.000000e+00, %bb ], [ %tmp377, %bb145 ]
175  %tmp113 = phi float [ 0.000000e+00, %bb ], [ %tmp378, %bb145 ]
176  %tmp114 = phi float [ 0.000000e+00, %bb ], [ %tmp379, %bb145 ]
177  %tmp115 = phi float [ 0.000000e+00, %bb ], [ %tmp380, %bb145 ]
178  %tmp116 = phi float [ 0.000000e+00, %bb ], [ %tmp381, %bb145 ]
179  %tmp117 = phi float [ 0.000000e+00, %bb ], [ %tmp382, %bb145 ]
180  %tmp118 = phi float [ 0.000000e+00, %bb ], [ %tmp383, %bb145 ]
181  %tmp119 = phi float [ 0.000000e+00, %bb ], [ %tmp384, %bb145 ]
182  %tmp120 = phi float [ 0.000000e+00, %bb ], [ %tmp385, %bb145 ]
183  %tmp121 = phi float [ 0.000000e+00, %bb ], [ %tmp386, %bb145 ]
184  %tmp122 = phi float [ 0.000000e+00, %bb ], [ %tmp387, %bb145 ]
185  %tmp123 = phi float [ 0.000000e+00, %bb ], [ %tmp388, %bb145 ]
186  %tmp124 = phi float [ 0.000000e+00, %bb ], [ %tmp389, %bb145 ]
187  %tmp125 = phi float [ 0.000000e+00, %bb ], [ %tmp390, %bb145 ]
188  %tmp126 = phi float [ 0.000000e+00, %bb ], [ %tmp391, %bb145 ]
189  %tmp127 = phi float [ 0.000000e+00, %bb ], [ %tmp392, %bb145 ]
190  %tmp128 = phi float [ 0.000000e+00, %bb ], [ %tmp393, %bb145 ]
191  %tmp129 = phi float [ 0.000000e+00, %bb ], [ %tmp394, %bb145 ]
192  %tmp130 = phi float [ 0.000000e+00, %bb ], [ %tmp395, %bb145 ]
193  %tmp131 = phi float [ 0.000000e+00, %bb ], [ %tmp396, %bb145 ]
194  %tmp132 = phi float [ 0.000000e+00, %bb ], [ %tmp397, %bb145 ]
195  %tmp133 = phi float [ 0.000000e+00, %bb ], [ %tmp398, %bb145 ]
196  %tmp134 = phi float [ 0.000000e+00, %bb ], [ %tmp399, %bb145 ]
197  %tmp135 = phi float [ 0.000000e+00, %bb ], [ %tmp400, %bb145 ]
198  %tmp136 = phi float [ 0.000000e+00, %bb ], [ %tmp401, %bb145 ]
199  %tmp137 = phi float [ 0.000000e+00, %bb ], [ %tmp402, %bb145 ]
200  %tmp138 = phi float [ 0.000000e+00, %bb ], [ %tmp403, %bb145 ]
201  %tmp139 = phi float [ 0.000000e+00, %bb ], [ %tmp404, %bb145 ]
202  %tmp140 = phi float [ 0.000000e+00, %bb ], [ %tmp405, %bb145 ]
203  %tmp141 = phi float [ 0.000000e+00, %bb ], [ %tmp406, %bb145 ]
204  %tmp142 = bitcast float %tmp95 to i32
205  %tid = call i32 @llvm.amdgcn.workitem.id.x() #1
206  %tmp143 = icmp sgt i32 %tmp142, %tid
207  br i1 %tmp143, label %bb144, label %bb145
208
209bb144:                                            ; preds = %bb12
210  store volatile float %arg3, float addrspace(1)* %arg
211  store volatile float %tmp91, float addrspace(1)* %arg
212  store volatile float %tmp90, float addrspace(1)* %arg
213  store volatile float %tmp89, float addrspace(1)* %arg
214  store volatile float %tmp87, float addrspace(1)* %arg
215  store volatile float %tmp86, float addrspace(1)* %arg
216  store volatile float %tmp85, float addrspace(1)* %arg
217  store volatile float %tmp83, float addrspace(1)* %arg
218  store volatile float %tmp82, float addrspace(1)* %arg
219  store volatile float %tmp81, float addrspace(1)* %arg
220  store volatile float %tmp79, float addrspace(1)* %arg
221  store volatile float %tmp78, float addrspace(1)* %arg
222  store volatile float %tmp77, float addrspace(1)* %arg
223  store volatile float %tmp75, float addrspace(1)* %arg
224  store volatile float %tmp74, float addrspace(1)* %arg
225  store volatile float %tmp73, float addrspace(1)* %arg
226  store volatile float %tmp71, float addrspace(1)* %arg
227  store volatile float %tmp70, float addrspace(1)* %arg
228  store volatile float %tmp69, float addrspace(1)* %arg
229  store volatile float %tmp67, float addrspace(1)* %arg
230  store volatile float %tmp66, float addrspace(1)* %arg
231  store volatile float %tmp65, float addrspace(1)* %arg
232  store volatile float %tmp63, float addrspace(1)* %arg
233  store volatile float %tmp62, float addrspace(1)* %arg
234  store volatile float %tmp61, float addrspace(1)* %arg
235  store volatile float %tmp59, float addrspace(1)* %arg
236  store volatile float %tmp58, float addrspace(1)* %arg
237  store volatile float %tmp57, float addrspace(1)* %arg
238  store volatile float %tmp55, float addrspace(1)* %arg
239  store volatile float %tmp54, float addrspace(1)* %arg
240  store volatile float %tmp53, float addrspace(1)* %arg
241  store volatile float %tmp51, float addrspace(1)* %arg
242  store volatile float %tmp50, float addrspace(1)* %arg
243  store volatile float %tmp49, float addrspace(1)* %arg
244  store volatile float %tmp47, float addrspace(1)* %arg
245  store volatile float %tmp46, float addrspace(1)* %arg
246  store volatile float %tmp45, float addrspace(1)* %arg
247  store volatile float %tmp43, float addrspace(1)* %arg
248  store volatile float %tmp42, float addrspace(1)* %arg
249  store volatile float %tmp41, float addrspace(1)* %arg
250  store volatile float %tmp39, float addrspace(1)* %arg
251  store volatile float %tmp38, float addrspace(1)* %arg
252  store volatile float %tmp37, float addrspace(1)* %arg
253  store volatile float %tmp35, float addrspace(1)* %arg
254  store volatile float %tmp34, float addrspace(1)* %arg
255  store volatile float %tmp33, float addrspace(1)* %arg
256  store volatile float %tmp31, float addrspace(1)* %arg
257  store volatile float %tmp30, float addrspace(1)* %arg
258  store volatile float %tmp29, float addrspace(1)* %arg
259  store volatile float %tmp27, float addrspace(1)* %arg
260  store volatile float %tmp26, float addrspace(1)* %arg
261  store volatile float %tmp25, float addrspace(1)* %arg
262  store volatile float %tmp23, float addrspace(1)* %arg
263  store volatile float %tmp22, float addrspace(1)* %arg
264  store volatile float %tmp21, float addrspace(1)* %arg
265  store volatile float %tmp19, float addrspace(1)* %arg
266  store volatile float %tmp18, float addrspace(1)* %arg
267  store volatile float %tmp17, float addrspace(1)* %arg
268  store volatile float %tmp15, float addrspace(1)* %arg
269  store volatile float %tmp14, float addrspace(1)* %arg
270  store volatile float %tmp13, float addrspace(1)* %arg
271  store volatile float %tmp16, float addrspace(1)* %arg
272  store volatile float %tmp20, float addrspace(1)* %arg
273  store volatile float %tmp24, float addrspace(1)* %arg
274  store volatile float %tmp28, float addrspace(1)* %arg
275  store volatile float %tmp32, float addrspace(1)* %arg
276  store volatile float %tmp36, float addrspace(1)* %arg
277  store volatile float %tmp40, float addrspace(1)* %arg
278  store volatile float %tmp44, float addrspace(1)* %arg
279  store volatile float %tmp48, float addrspace(1)* %arg
280  store volatile float %tmp52, float addrspace(1)* %arg
281  store volatile float %tmp56, float addrspace(1)* %arg
282  store volatile float %tmp60, float addrspace(1)* %arg
283  store volatile float %tmp64, float addrspace(1)* %arg
284  store volatile float %tmp68, float addrspace(1)* %arg
285  store volatile float %tmp72, float addrspace(1)* %arg
286  store volatile float %tmp76, float addrspace(1)* %arg
287  store volatile float %tmp80, float addrspace(1)* %arg
288  store volatile float %tmp84, float addrspace(1)* %arg
289  store volatile float %tmp88, float addrspace(1)* %arg
290  store volatile float %tmp92, float addrspace(1)* %arg
291  store volatile float %tmp93, float addrspace(1)* %arg
292  store volatile float %tmp94, float addrspace(1)* %arg
293  store volatile float %tmp96, float addrspace(1)* %arg
294  store volatile float %tmp97, float addrspace(1)* %arg
295  store volatile float %tmp98, float addrspace(1)* %arg
296  store volatile float %tmp99, float addrspace(1)* %arg
297  store volatile float %tmp100, float addrspace(1)* %arg
298  store volatile float %tmp101, float addrspace(1)* %arg
299  store volatile float %tmp102, float addrspace(1)* %arg
300  store volatile float %tmp103, float addrspace(1)* %arg
301  store volatile float %tmp104, float addrspace(1)* %arg
302  store volatile float %tmp105, float addrspace(1)* %arg
303  store volatile float %tmp106, float addrspace(1)* %arg
304  store volatile float %tmp107, float addrspace(1)* %arg
305  store volatile float %tmp108, float addrspace(1)* %arg
306  store volatile float %tmp109, float addrspace(1)* %arg
307  store volatile float %tmp110, float addrspace(1)* %arg
308  store volatile float %tmp111, float addrspace(1)* %arg
309  store volatile float %tmp112, float addrspace(1)* %arg
310  store volatile float %tmp113, float addrspace(1)* %arg
311  store volatile float %tmp114, float addrspace(1)* %arg
312  store volatile float %tmp115, float addrspace(1)* %arg
313  store volatile float %tmp116, float addrspace(1)* %arg
314  store volatile float %tmp117, float addrspace(1)* %arg
315  store volatile float %tmp118, float addrspace(1)* %arg
316  store volatile float %tmp119, float addrspace(1)* %arg
317  store volatile float %tmp120, float addrspace(1)* %arg
318  store volatile float %tmp121, float addrspace(1)* %arg
319  store volatile float %tmp122, float addrspace(1)* %arg
320  store volatile float %tmp123, float addrspace(1)* %arg
321  store volatile float %tmp124, float addrspace(1)* %arg
322  store volatile float %tmp125, float addrspace(1)* %arg
323  store volatile float %tmp126, float addrspace(1)* %arg
324  store volatile float %tmp127, float addrspace(1)* %arg
325  store volatile float %tmp128, float addrspace(1)* %arg
326  store volatile float %tmp129, float addrspace(1)* %arg
327  store volatile float %tmp130, float addrspace(1)* %arg
328  store volatile float %tmp131, float addrspace(1)* %arg
329  store volatile float %tmp132, float addrspace(1)* %arg
330  store volatile float %tmp133, float addrspace(1)* %arg
331  store volatile float %tmp134, float addrspace(1)* %arg
332  store volatile float %tmp135, float addrspace(1)* %arg
333  store volatile float %tmp136, float addrspace(1)* %arg
334  store volatile float %tmp137, float addrspace(1)* %arg
335  store volatile float %tmp138, float addrspace(1)* %arg
336  store volatile float %tmp139, float addrspace(1)* %arg
337  store volatile float %arg4, float addrspace(1)* %arg
338  store volatile float %tmp7, float addrspace(1)* %arg
339  store volatile float %tmp8, float addrspace(1)* %arg
340  store volatile float %tmp9, float addrspace(1)* %arg
341  store volatile float %tmp10, float addrspace(1)* %arg
342  ret void
343
344bb145:                                            ; preds = %bb12
345  %tmp146 = bitcast float %tmp95 to i32
346  %tmp147 = bitcast float %tmp95 to i32
347  %tmp148 = add i32 %tmp11, %tmp147
348  %tmp149 = bitcast i32 %tmp148 to float
349  %tmp150 = insertelement <128 x float> undef, float %tmp91, i32 0
350  %tmp151 = insertelement <128 x float> %tmp150, float %tmp90, i32 1
351  %tmp152 = insertelement <128 x float> %tmp151, float %tmp89, i32 2
352  %tmp153 = insertelement <128 x float> %tmp152, float %tmp87, i32 3
353  %tmp154 = insertelement <128 x float> %tmp153, float %tmp86, i32 4
354  %tmp155 = insertelement <128 x float> %tmp154, float %tmp85, i32 5
355  %tmp156 = insertelement <128 x float> %tmp155, float %tmp83, i32 6
356  %tmp157 = insertelement <128 x float> %tmp156, float %tmp82, i32 7
357  %tmp158 = insertelement <128 x float> %tmp157, float %tmp81, i32 8
358  %tmp159 = insertelement <128 x float> %tmp158, float %tmp79, i32 9
359  %tmp160 = insertelement <128 x float> %tmp159, float %tmp78, i32 10
360  %tmp161 = insertelement <128 x float> %tmp160, float %tmp77, i32 11
361  %tmp162 = insertelement <128 x float> %tmp161, float %tmp75, i32 12
362  %tmp163 = insertelement <128 x float> %tmp162, float %tmp74, i32 13
363  %tmp164 = insertelement <128 x float> %tmp163, float %tmp73, i32 14
364  %tmp165 = insertelement <128 x float> %tmp164, float %tmp71, i32 15
365  %tmp166 = insertelement <128 x float> %tmp165, float %tmp70, i32 16
366  %tmp167 = insertelement <128 x float> %tmp166, float %tmp69, i32 17
367  %tmp168 = insertelement <128 x float> %tmp167, float %tmp67, i32 18
368  %tmp169 = insertelement <128 x float> %tmp168, float %tmp66, i32 19
369  %tmp170 = insertelement <128 x float> %tmp169, float %tmp65, i32 20
370  %tmp171 = insertelement <128 x float> %tmp170, float %tmp63, i32 21
371  %tmp172 = insertelement <128 x float> %tmp171, float %tmp62, i32 22
372  %tmp173 = insertelement <128 x float> %tmp172, float %tmp61, i32 23
373  %tmp174 = insertelement <128 x float> %tmp173, float %tmp59, i32 24
374  %tmp175 = insertelement <128 x float> %tmp174, float %tmp58, i32 25
375  %tmp176 = insertelement <128 x float> %tmp175, float %tmp57, i32 26
376  %tmp177 = insertelement <128 x float> %tmp176, float %tmp55, i32 27
377  %tmp178 = insertelement <128 x float> %tmp177, float %tmp54, i32 28
378  %tmp179 = insertelement <128 x float> %tmp178, float %tmp53, i32 29
379  %tmp180 = insertelement <128 x float> %tmp179, float %tmp51, i32 30
380  %tmp181 = insertelement <128 x float> %tmp180, float %tmp50, i32 31
381  %tmp182 = insertelement <128 x float> %tmp181, float %tmp49, i32 32
382  %tmp183 = insertelement <128 x float> %tmp182, float %tmp47, i32 33
383  %tmp184 = insertelement <128 x float> %tmp183, float %tmp46, i32 34
384  %tmp185 = insertelement <128 x float> %tmp184, float %tmp45, i32 35
385  %tmp186 = insertelement <128 x float> %tmp185, float %tmp43, i32 36
386  %tmp187 = insertelement <128 x float> %tmp186, float %tmp42, i32 37
387  %tmp188 = insertelement <128 x float> %tmp187, float %tmp41, i32 38
388  %tmp189 = insertelement <128 x float> %tmp188, float %tmp39, i32 39
389  %tmp190 = insertelement <128 x float> %tmp189, float %tmp38, i32 40
390  %tmp191 = insertelement <128 x float> %tmp190, float %tmp37, i32 41
391  %tmp192 = insertelement <128 x float> %tmp191, float %tmp35, i32 42
392  %tmp193 = insertelement <128 x float> %tmp192, float %tmp34, i32 43
393  %tmp194 = insertelement <128 x float> %tmp193, float %tmp33, i32 44
394  %tmp195 = insertelement <128 x float> %tmp194, float %tmp31, i32 45
395  %tmp196 = insertelement <128 x float> %tmp195, float %tmp30, i32 46
396  %tmp197 = insertelement <128 x float> %tmp196, float %tmp29, i32 47
397  %tmp198 = insertelement <128 x float> %tmp197, float %tmp27, i32 48
398  %tmp199 = insertelement <128 x float> %tmp198, float %tmp26, i32 49
399  %tmp200 = insertelement <128 x float> %tmp199, float %tmp25, i32 50
400  %tmp201 = insertelement <128 x float> %tmp200, float %tmp23, i32 51
401  %tmp202 = insertelement <128 x float> %tmp201, float %tmp22, i32 52
402  %tmp203 = insertelement <128 x float> %tmp202, float %tmp21, i32 53
403  %tmp204 = insertelement <128 x float> %tmp203, float %tmp19, i32 54
404  %tmp205 = insertelement <128 x float> %tmp204, float %tmp18, i32 55
405  %tmp206 = insertelement <128 x float> %tmp205, float %tmp17, i32 56
406  %tmp207 = insertelement <128 x float> %tmp206, float %tmp15, i32 57
407  %tmp208 = insertelement <128 x float> %tmp207, float %tmp14, i32 58
408  %tmp209 = insertelement <128 x float> %tmp208, float %tmp13, i32 59
409  %tmp210 = insertelement <128 x float> %tmp209, float %tmp16, i32 60
410  %tmp211 = insertelement <128 x float> %tmp210, float %tmp20, i32 61
411  %tmp212 = insertelement <128 x float> %tmp211, float %tmp24, i32 62
412  %tmp213 = insertelement <128 x float> %tmp212, float %tmp28, i32 63
413  %tmp214 = insertelement <128 x float> %tmp213, float %tmp32, i32 64
414  %tmp215 = insertelement <128 x float> %tmp214, float %tmp36, i32 65
415  %tmp216 = insertelement <128 x float> %tmp215, float %tmp40, i32 66
416  %tmp217 = insertelement <128 x float> %tmp216, float %tmp44, i32 67
417  %tmp218 = insertelement <128 x float> %tmp217, float %tmp48, i32 68
418  %tmp219 = insertelement <128 x float> %tmp218, float %tmp52, i32 69
419  %tmp220 = insertelement <128 x float> %tmp219, float %tmp56, i32 70
420  %tmp221 = insertelement <128 x float> %tmp220, float %tmp60, i32 71
421  %tmp222 = insertelement <128 x float> %tmp221, float %tmp64, i32 72
422  %tmp223 = insertelement <128 x float> %tmp222, float %tmp68, i32 73
423  %tmp224 = insertelement <128 x float> %tmp223, float %tmp72, i32 74
424  %tmp225 = insertelement <128 x float> %tmp224, float %tmp76, i32 75
425  %tmp226 = insertelement <128 x float> %tmp225, float %tmp80, i32 76
426  %tmp227 = insertelement <128 x float> %tmp226, float %tmp84, i32 77
427  %tmp228 = insertelement <128 x float> %tmp227, float %tmp88, i32 78
428  %tmp229 = insertelement <128 x float> %tmp228, float %tmp92, i32 79
429  %tmp230 = insertelement <128 x float> %tmp229, float %tmp93, i32 80
430  %tmp231 = insertelement <128 x float> %tmp230, float %tmp94, i32 81
431  %tmp232 = insertelement <128 x float> %tmp231, float %tmp96, i32 82
432  %tmp233 = insertelement <128 x float> %tmp232, float %tmp97, i32 83
433  %tmp234 = insertelement <128 x float> %tmp233, float %tmp98, i32 84
434  %tmp235 = insertelement <128 x float> %tmp234, float %tmp99, i32 85
435  %tmp236 = insertelement <128 x float> %tmp235, float %tmp100, i32 86
436  %tmp237 = insertelement <128 x float> %tmp236, float %tmp101, i32 87
437  %tmp238 = insertelement <128 x float> %tmp237, float %tmp102, i32 88
438  %tmp239 = insertelement <128 x float> %tmp238, float %tmp103, i32 89
439  %tmp240 = insertelement <128 x float> %tmp239, float %tmp104, i32 90
440  %tmp241 = insertelement <128 x float> %tmp240, float %tmp105, i32 91
441  %tmp242 = insertelement <128 x float> %tmp241, float %tmp106, i32 92
442  %tmp243 = insertelement <128 x float> %tmp242, float %tmp107, i32 93
443  %tmp244 = insertelement <128 x float> %tmp243, float %tmp108, i32 94
444  %tmp245 = insertelement <128 x float> %tmp244, float %tmp109, i32 95
445  %tmp246 = insertelement <128 x float> %tmp245, float %tmp110, i32 96
446  %tmp247 = insertelement <128 x float> %tmp246, float %tmp111, i32 97
447  %tmp248 = insertelement <128 x float> %tmp247, float %tmp112, i32 98
448  %tmp249 = insertelement <128 x float> %tmp248, float %tmp113, i32 99
449  %tmp250 = insertelement <128 x float> %tmp249, float %tmp114, i32 100
450  %tmp251 = insertelement <128 x float> %tmp250, float %tmp115, i32 101
451  %tmp252 = insertelement <128 x float> %tmp251, float %tmp116, i32 102
452  %tmp253 = insertelement <128 x float> %tmp252, float %tmp117, i32 103
453  %tmp254 = insertelement <128 x float> %tmp253, float %tmp118, i32 104
454  %tmp255 = insertelement <128 x float> %tmp254, float %tmp119, i32 105
455  %tmp256 = insertelement <128 x float> %tmp255, float %tmp120, i32 106
456  %tmp257 = insertelement <128 x float> %tmp256, float %tmp121, i32 107
457  %tmp258 = insertelement <128 x float> %tmp257, float %tmp122, i32 108
458  %tmp259 = insertelement <128 x float> %tmp258, float %tmp123, i32 109
459  %tmp260 = insertelement <128 x float> %tmp259, float %tmp124, i32 110
460  %tmp261 = insertelement <128 x float> %tmp260, float %tmp125, i32 111
461  %tmp262 = insertelement <128 x float> %tmp261, float %tmp126, i32 112
462  %tmp263 = insertelement <128 x float> %tmp262, float %tmp127, i32 113
463  %tmp264 = insertelement <128 x float> %tmp263, float %tmp128, i32 114
464  %tmp265 = insertelement <128 x float> %tmp264, float %tmp129, i32 115
465  %tmp266 = insertelement <128 x float> %tmp265, float %tmp130, i32 116
466  %tmp267 = insertelement <128 x float> %tmp266, float %tmp131, i32 117
467  %tmp268 = insertelement <128 x float> %tmp267, float %tmp132, i32 118
468  %tmp269 = insertelement <128 x float> %tmp268, float %tmp133, i32 119
469  %tmp270 = insertelement <128 x float> %tmp269, float %tmp134, i32 120
470  %tmp271 = insertelement <128 x float> %tmp270, float %tmp135, i32 121
471  %tmp272 = insertelement <128 x float> %tmp271, float %tmp136, i32 122
472  %tmp273 = insertelement <128 x float> %tmp272, float %tmp137, i32 123
473  %tmp274 = insertelement <128 x float> %tmp273, float %tmp138, i32 124
474  %tmp275 = insertelement <128 x float> %tmp274, float %tmp139, i32 125
475  %tmp276 = insertelement <128 x float> %tmp275, float %tmp140, i32 126
476  %tmp277 = insertelement <128 x float> %tmp276, float %tmp141, i32 127
477  %tmp278 = insertelement <128 x float> %tmp277, float %tmp149, i32 %tmp146
478  %tmp279 = extractelement <128 x float> %tmp278, i32 0
479  %tmp280 = extractelement <128 x float> %tmp278, i32 1
480  %tmp281 = extractelement <128 x float> %tmp278, i32 2
481  %tmp282 = extractelement <128 x float> %tmp278, i32 3
482  %tmp283 = extractelement <128 x float> %tmp278, i32 4
483  %tmp284 = extractelement <128 x float> %tmp278, i32 5
484  %tmp285 = extractelement <128 x float> %tmp278, i32 6
485  %tmp286 = extractelement <128 x float> %tmp278, i32 7
486  %tmp287 = extractelement <128 x float> %tmp278, i32 8
487  %tmp288 = extractelement <128 x float> %tmp278, i32 9
488  %tmp289 = extractelement <128 x float> %tmp278, i32 10
489  %tmp290 = extractelement <128 x float> %tmp278, i32 11
490  %tmp291 = extractelement <128 x float> %tmp278, i32 12
491  %tmp292 = extractelement <128 x float> %tmp278, i32 13
492  %tmp293 = extractelement <128 x float> %tmp278, i32 14
493  %tmp294 = extractelement <128 x float> %tmp278, i32 15
494  %tmp295 = extractelement <128 x float> %tmp278, i32 16
495  %tmp296 = extractelement <128 x float> %tmp278, i32 17
496  %tmp297 = extractelement <128 x float> %tmp278, i32 18
497  %tmp298 = extractelement <128 x float> %tmp278, i32 19
498  %tmp299 = extractelement <128 x float> %tmp278, i32 20
499  %tmp300 = extractelement <128 x float> %tmp278, i32 21
500  %tmp301 = extractelement <128 x float> %tmp278, i32 22
501  %tmp302 = extractelement <128 x float> %tmp278, i32 23
502  %tmp303 = extractelement <128 x float> %tmp278, i32 24
503  %tmp304 = extractelement <128 x float> %tmp278, i32 25
504  %tmp305 = extractelement <128 x float> %tmp278, i32 26
505  %tmp306 = extractelement <128 x float> %tmp278, i32 27
506  %tmp307 = extractelement <128 x float> %tmp278, i32 28
507  %tmp308 = extractelement <128 x float> %tmp278, i32 29
508  %tmp309 = extractelement <128 x float> %tmp278, i32 30
509  %tmp310 = extractelement <128 x float> %tmp278, i32 31
510  %tmp311 = extractelement <128 x float> %tmp278, i32 32
511  %tmp312 = extractelement <128 x float> %tmp278, i32 33
512  %tmp313 = extractelement <128 x float> %tmp278, i32 34
513  %tmp314 = extractelement <128 x float> %tmp278, i32 35
514  %tmp315 = extractelement <128 x float> %tmp278, i32 36
515  %tmp316 = extractelement <128 x float> %tmp278, i32 37
516  %tmp317 = extractelement <128 x float> %tmp278, i32 38
517  %tmp318 = extractelement <128 x float> %tmp278, i32 39
518  %tmp319 = extractelement <128 x float> %tmp278, i32 40
519  %tmp320 = extractelement <128 x float> %tmp278, i32 41
520  %tmp321 = extractelement <128 x float> %tmp278, i32 42
521  %tmp322 = extractelement <128 x float> %tmp278, i32 43
522  %tmp323 = extractelement <128 x float> %tmp278, i32 44
523  %tmp324 = extractelement <128 x float> %tmp278, i32 45
524  %tmp325 = extractelement <128 x float> %tmp278, i32 46
525  %tmp326 = extractelement <128 x float> %tmp278, i32 47
526  %tmp327 = extractelement <128 x float> %tmp278, i32 48
527  %tmp328 = extractelement <128 x float> %tmp278, i32 49
528  %tmp329 = extractelement <128 x float> %tmp278, i32 50
529  %tmp330 = extractelement <128 x float> %tmp278, i32 51
530  %tmp331 = extractelement <128 x float> %tmp278, i32 52
531  %tmp332 = extractelement <128 x float> %tmp278, i32 53
532  %tmp333 = extractelement <128 x float> %tmp278, i32 54
533  %tmp334 = extractelement <128 x float> %tmp278, i32 55
534  %tmp335 = extractelement <128 x float> %tmp278, i32 56
535  %tmp336 = extractelement <128 x float> %tmp278, i32 57
536  %tmp337 = extractelement <128 x float> %tmp278, i32 58
537  %tmp338 = extractelement <128 x float> %tmp278, i32 59
538  %tmp339 = extractelement <128 x float> %tmp278, i32 60
539  %tmp340 = extractelement <128 x float> %tmp278, i32 61
540  %tmp341 = extractelement <128 x float> %tmp278, i32 62
541  %tmp342 = extractelement <128 x float> %tmp278, i32 63
542  %tmp343 = extractelement <128 x float> %tmp278, i32 64
543  %tmp344 = extractelement <128 x float> %tmp278, i32 65
544  %tmp345 = extractelement <128 x float> %tmp278, i32 66
545  %tmp346 = extractelement <128 x float> %tmp278, i32 67
546  %tmp347 = extractelement <128 x float> %tmp278, i32 68
547  %tmp348 = extractelement <128 x float> %tmp278, i32 69
548  %tmp349 = extractelement <128 x float> %tmp278, i32 70
549  %tmp350 = extractelement <128 x float> %tmp278, i32 71
550  %tmp351 = extractelement <128 x float> %tmp278, i32 72
551  %tmp352 = extractelement <128 x float> %tmp278, i32 73
552  %tmp353 = extractelement <128 x float> %tmp278, i32 74
553  %tmp354 = extractelement <128 x float> %tmp278, i32 75
554  %tmp355 = extractelement <128 x float> %tmp278, i32 76
555  %tmp356 = extractelement <128 x float> %tmp278, i32 77
556  %tmp357 = extractelement <128 x float> %tmp278, i32 78
557  %tmp358 = extractelement <128 x float> %tmp278, i32 79
558  %tmp359 = extractelement <128 x float> %tmp278, i32 80
559  %tmp360 = extractelement <128 x float> %tmp278, i32 81
560  %tmp361 = extractelement <128 x float> %tmp278, i32 82
561  %tmp362 = extractelement <128 x float> %tmp278, i32 83
562  %tmp363 = extractelement <128 x float> %tmp278, i32 84
563  %tmp364 = extractelement <128 x float> %tmp278, i32 85
564  %tmp365 = extractelement <128 x float> %tmp278, i32 86
565  %tmp366 = extractelement <128 x float> %tmp278, i32 87
566  %tmp367 = extractelement <128 x float> %tmp278, i32 88
567  %tmp368 = extractelement <128 x float> %tmp278, i32 89
568  %tmp369 = extractelement <128 x float> %tmp278, i32 90
569  %tmp370 = extractelement <128 x float> %tmp278, i32 91
570  %tmp371 = extractelement <128 x float> %tmp278, i32 92
571  %tmp372 = extractelement <128 x float> %tmp278, i32 93
572  %tmp373 = extractelement <128 x float> %tmp278, i32 94
573  %tmp374 = extractelement <128 x float> %tmp278, i32 95
574  %tmp375 = extractelement <128 x float> %tmp278, i32 96
575  %tmp376 = extractelement <128 x float> %tmp278, i32 97
576  %tmp377 = extractelement <128 x float> %tmp278, i32 98
577  %tmp378 = extractelement <128 x float> %tmp278, i32 99
578  %tmp379 = extractelement <128 x float> %tmp278, i32 100
579  %tmp380 = extractelement <128 x float> %tmp278, i32 101
580  %tmp381 = extractelement <128 x float> %tmp278, i32 102
581  %tmp382 = extractelement <128 x float> %tmp278, i32 103
582  %tmp383 = extractelement <128 x float> %tmp278, i32 104
583  %tmp384 = extractelement <128 x float> %tmp278, i32 105
584  %tmp385 = extractelement <128 x float> %tmp278, i32 106
585  %tmp386 = extractelement <128 x float> %tmp278, i32 107
586  %tmp387 = extractelement <128 x float> %tmp278, i32 108
587  %tmp388 = extractelement <128 x float> %tmp278, i32 109
588  %tmp389 = extractelement <128 x float> %tmp278, i32 110
589  %tmp390 = extractelement <128 x float> %tmp278, i32 111
590  %tmp391 = extractelement <128 x float> %tmp278, i32 112
591  %tmp392 = extractelement <128 x float> %tmp278, i32 113
592  %tmp393 = extractelement <128 x float> %tmp278, i32 114
593  %tmp394 = extractelement <128 x float> %tmp278, i32 115
594  %tmp395 = extractelement <128 x float> %tmp278, i32 116
595  %tmp396 = extractelement <128 x float> %tmp278, i32 117
596  %tmp397 = extractelement <128 x float> %tmp278, i32 118
597  %tmp398 = extractelement <128 x float> %tmp278, i32 119
598  %tmp399 = extractelement <128 x float> %tmp278, i32 120
599  %tmp400 = extractelement <128 x float> %tmp278, i32 121
600  %tmp401 = extractelement <128 x float> %tmp278, i32 122
601  %tmp402 = extractelement <128 x float> %tmp278, i32 123
602  %tmp403 = extractelement <128 x float> %tmp278, i32 124
603  %tmp404 = extractelement <128 x float> %tmp278, i32 125
604  %tmp405 = extractelement <128 x float> %tmp278, i32 126
605  %tmp406 = extractelement <128 x float> %tmp278, i32 127
606  %tmp407 = bitcast float %tmp95 to i32
607  %tmp408 = add i32 %tmp407, 1
608  %tmp409 = bitcast i32 %tmp408 to float
609  br label %bb12
610}
611
612declare i32 @llvm.amdgcn.workitem.id.x() #1
613
614attributes #0 = { nounwind }
615attributes #1 = { nounwind readnone }
616