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