1 ;RUN: llc < %s -march=r600 -mcpu=cedar 2 ;REQUIRES: asserts 3 4 ;This test ensures that R600 backend can handle ifcvt properly 5 ;and do not generate ALU clauses with more than 128 instructions. 6 7 define void @main(<4 x float> inreg %reg0, <4 x float> inreg %reg1, <4 x float> inreg %reg2, <4 x float> inreg %reg3, <4 x float> inreg %reg4, <4 x float> inreg %reg5, <4 x float> inreg %reg6, <4 x float> inreg %reg7, <4 x float> inreg %reg8, <4 x float> inreg %reg9) #0 { 8 main_body: 9 %0 = extractelement <4 x float> %reg0, i32 0 10 %1 = extractelement <4 x float> %reg0, i32 1 11 %2 = extractelement <4 x float> %reg0, i32 2 12 %3 = extractelement <4 x float> %reg0, i32 3 13 %4 = extractelement <4 x float> %reg1, i32 0 14 %5 = extractelement <4 x float> %reg9, i32 0 15 %6 = extractelement <4 x float> %reg8, i32 0 16 %7 = fcmp ugt float %6, 0.000000e+00 17 %8 = select i1 %7, float %4, float %5 18 %9 = extractelement <4 x float> %reg1, i32 1 19 %10 = extractelement <4 x float> %reg9, i32 1 20 %11 = extractelement <4 x float> %reg8, i32 0 21 %12 = fcmp ugt float %11, 0.000000e+00 22 %13 = select i1 %12, float %9, float %10 23 %14 = extractelement <4 x float> %reg1, i32 2 24 %15 = extractelement <4 x float> %reg9, i32 2 25 %16 = extractelement <4 x float> %reg8, i32 0 26 %17 = fcmp ugt float %16, 0.000000e+00 27 %18 = select i1 %17, float %14, float %15 28 %19 = extractelement <4 x float> %reg1, i32 3 29 %20 = extractelement <4 x float> %reg9, i32 3 30 %21 = extractelement <4 x float> %reg8, i32 0 31 %22 = extractelement <4 x float> %reg2, i32 0 32 %23 = extractelement <4 x float> %reg2, i32 1 33 %24 = extractelement <4 x float> %reg2, i32 2 34 %25 = extractelement <4 x float> %reg2, i32 3 35 %26 = extractelement <4 x float> %reg3, i32 0 36 %27 = extractelement <4 x float> %reg3, i32 1 37 %28 = extractelement <4 x float> %reg3, i32 2 38 %29 = extractelement <4 x float> %reg3, i32 3 39 %30 = extractelement <4 x float> %reg4, i32 0 40 %31 = extractelement <4 x float> %reg4, i32 1 41 %32 = extractelement <4 x float> %reg4, i32 2 42 %33 = extractelement <4 x float> %reg4, i32 3 43 %34 = extractelement <4 x float> %reg5, i32 0 44 %35 = extractelement <4 x float> %reg5, i32 1 45 %36 = extractelement <4 x float> %reg5, i32 2 46 %37 = extractelement <4 x float> %reg5, i32 3 47 %38 = extractelement <4 x float> %reg6, i32 0 48 %39 = extractelement <4 x float> %reg6, i32 1 49 %40 = extractelement <4 x float> %reg6, i32 2 50 %41 = extractelement <4 x float> %reg6, i32 3 51 %42 = extractelement <4 x float> %reg7, i32 0 52 %43 = extractelement <4 x float> %reg7, i32 1 53 %44 = extractelement <4 x float> %reg7, i32 2 54 %45 = extractelement <4 x float> %reg7, i32 3 55 %46 = load <4 x float> addrspace(8)* getelementptr ([1024 x <4 x float>] addrspace(8)* null, i64 0, i32 11) 56 %47 = extractelement <4 x float> %46, i32 0 57 %48 = load <4 x float> addrspace(8)* getelementptr ([1024 x <4 x float>] addrspace(8)* null, i64 0, i32 11) 58 %49 = extractelement <4 x float> %48, i32 1 59 %50 = load <4 x float> addrspace(8)* getelementptr ([1024 x <4 x float>] addrspace(8)* null, i64 0, i32 11) 60 %51 = extractelement <4 x float> %50, i32 2 61 %52 = load <4 x float> addrspace(8)* getelementptr ([1024 x <4 x float>] addrspace(8)* null, i64 0, i32 12) 62 %53 = extractelement <4 x float> %52, i32 0 63 %54 = load <4 x float> addrspace(8)* getelementptr ([1024 x <4 x float>] addrspace(8)* null, i64 0, i32 14) 64 %55 = extractelement <4 x float> %54, i32 0 65 %56 = load <4 x float> addrspace(8)* getelementptr ([1024 x <4 x float>] addrspace(8)* null, i64 0, i32 14) 66 %57 = extractelement <4 x float> %56, i32 1 67 %58 = load <4 x float> addrspace(8)* getelementptr ([1024 x <4 x float>] addrspace(8)* null, i64 0, i32 14) 68 %59 = extractelement <4 x float> %58, i32 2 69 %60 = load <4 x float> addrspace(8)* getelementptr ([1024 x <4 x float>] addrspace(8)* null, i64 0, i32 14) 70 %61 = extractelement <4 x float> %60, i32 3 71 %62 = load <4 x float> addrspace(8)* getelementptr ([1024 x <4 x float>] addrspace(8)* null, i64 0, i32 16) 72 %63 = extractelement <4 x float> %62, i32 0 73 %64 = load <4 x float> addrspace(8)* getelementptr ([1024 x <4 x float>] addrspace(8)* null, i64 0, i32 16) 74 %65 = extractelement <4 x float> %64, i32 1 75 %66 = load <4 x float> addrspace(8)* getelementptr ([1024 x <4 x float>] addrspace(8)* null, i64 0, i32 16) 76 %67 = extractelement <4 x float> %66, i32 2 77 %68 = load <4 x float> addrspace(8)* getelementptr ([1024 x <4 x float>] addrspace(8)* null, i64 0, i32 9) 78 %69 = extractelement <4 x float> %68, i32 0 79 %70 = fcmp oge float %69, 3.500000e+00 80 %71 = sext i1 %70 to i32 81 %72 = bitcast i32 %71 to float 82 %73 = bitcast float %72 to i32 83 %74 = icmp ne i32 %73, 0 84 %. = select i1 %74, float 0.000000e+00, float 0.000000e+00 85 %75 = load <4 x float> addrspace(8)* getelementptr ([1024 x <4 x float>] addrspace(8)* null, i64 0, i32 9) 86 %76 = extractelement <4 x float> %75, i32 0 87 %77 = fcmp oge float %76, 2.000000e+00 88 %78 = sext i1 %77 to i32 89 %79 = bitcast i32 %78 to float 90 %80 = bitcast float %79 to i32 91 %81 = icmp ne i32 %80, 0 92 br i1 %81, label %IF137, label %ENDIF136 93 94 IF137: ; preds = %main_body 95 %82 = insertelement <4 x float> undef, float %30, i32 0 96 %83 = insertelement <4 x float> %82, float %31, i32 1 97 %84 = insertelement <4 x float> %83, float %32, i32 2 98 %85 = insertelement <4 x float> %84, float 0.000000e+00, i32 3 99 %86 = insertelement <4 x float> undef, float %30, i32 0 100 %87 = insertelement <4 x float> %86, float %31, i32 1 101 %88 = insertelement <4 x float> %87, float %32, i32 2 102 %89 = insertelement <4 x float> %88, float 0.000000e+00, i32 3 103 %90 = call float @llvm.AMDGPU.dp4(<4 x float> %85, <4 x float> %89) 104 %91 = call float @llvm.AMDGPU.rsq.f32(float %90) 105 %92 = fmul float %30, %91 106 %93 = fmul float %31, %91 107 %94 = fmul float %32, %91 108 %95 = insertelement <4 x float> undef, float %92, i32 0 109 %96 = insertelement <4 x float> %95, float %93, i32 1 110 %97 = insertelement <4 x float> %96, float %94, i32 2 111 %98 = insertelement <4 x float> %97, float 0.000000e+00, i32 3 112 %99 = insertelement <4 x float> undef, float %37, i32 0 113 %100 = insertelement <4 x float> %99, float %38, i32 1 114 %101 = insertelement <4 x float> %100, float %39, i32 2 115 %102 = insertelement <4 x float> %101, float 0.000000e+00, i32 3 116 %103 = call float @llvm.AMDGPU.dp4(<4 x float> %98, <4 x float> %102) 117 %104 = insertelement <4 x float> undef, float %92, i32 0 118 %105 = insertelement <4 x float> %104, float %93, i32 1 119 %106 = insertelement <4 x float> %105, float %94, i32 2 120 %107 = insertelement <4 x float> %106, float 0.000000e+00, i32 3 121 %108 = insertelement <4 x float> undef, float %40, i32 0 122 %109 = insertelement <4 x float> %108, float %41, i32 1 123 %110 = insertelement <4 x float> %109, float %42, i32 2 124 %111 = insertelement <4 x float> %110, float 0.000000e+00, i32 3 125 %112 = call float @llvm.AMDGPU.dp4(<4 x float> %107, <4 x float> %111) 126 %113 = fsub float -0.000000e+00, %92 127 %114 = fsub float -0.000000e+00, %93 128 %115 = fsub float -0.000000e+00, %94 129 %116 = insertelement <4 x float> undef, float %34, i32 0 130 %117 = insertelement <4 x float> %116, float %35, i32 1 131 %118 = insertelement <4 x float> %117, float %36, i32 2 132 %119 = insertelement <4 x float> %118, float 0.000000e+00, i32 3 133 %120 = insertelement <4 x float> undef, float %113, i32 0 134 %121 = insertelement <4 x float> %120, float %114, i32 1 135 %122 = insertelement <4 x float> %121, float %115, i32 2 136 %123 = insertelement <4 x float> %122, float 0.000000e+00, i32 3 137 %124 = call float @llvm.AMDGPU.dp4(<4 x float> %119, <4 x float> %123) 138 %125 = fdiv float 1.000000e+00, %124 139 %126 = load <4 x float> addrspace(8)* getelementptr ([1024 x <4 x float>] addrspace(8)* null, i64 0, i32 5) 140 %127 = extractelement <4 x float> %126, i32 0 141 %128 = fmul float %127, %125 142 %129 = fmul float %103, %128 143 %130 = fmul float %112, %128 144 %131 = bitcast float %. to i32 145 %132 = sitofp i32 %131 to float 146 %133 = fdiv float 1.000000e+00, %132 147 %134 = bitcast float %. to i32 148 %135 = add i32 %134, -1 149 %136 = bitcast i32 %135 to float 150 %137 = bitcast float %136 to i32 151 br label %LOOP 152 153 ENDIF136: ; preds = %main_body, %ENDIF154 154 %temp68.1 = phi float [ %600, %ENDIF154 ], [ 0.000000e+00, %main_body ] 155 %temp69.0 = phi float [ %602, %ENDIF154 ], [ 0.000000e+00, %main_body ] 156 %temp70.0 = phi float [ %604, %ENDIF154 ], [ 1.000000e+00, %main_body ] 157 %138 = fmul float %26, 0x3F847AE140000000 158 %139 = fmul float %27, 0x3F847AE140000000 159 %140 = fmul float %28, 0x3F847AE140000000 160 %141 = insertelement <4 x float> undef, float %138, i32 0 161 %142 = insertelement <4 x float> %141, float %139, i32 1 162 %143 = insertelement <4 x float> %142, float %140, i32 2 163 %144 = insertelement <4 x float> %143, float 0.000000e+00, i32 3 164 %145 = extractelement <4 x float> %144, i32 0 165 %146 = extractelement <4 x float> %144, i32 1 166 %147 = extractelement <4 x float> %144, i32 2 167 %148 = extractelement <4 x float> %144, i32 3 168 %149 = insertelement <4 x float> undef, float %145, i32 0 169 %150 = insertelement <4 x float> %149, float %146, i32 1 170 %151 = insertelement <4 x float> %150, float %147, i32 2 171 %152 = insertelement <4 x float> %151, float %148, i32 3 172 %153 = call <4 x float> @llvm.AMDGPU.tex(<4 x float> %152, i32 16, i32 0, i32 3) 173 %154 = extractelement <4 x float> %153, i32 0 174 %155 = extractelement <4 x float> %153, i32 1 175 %156 = extractelement <4 x float> %153, i32 2 176 %157 = extractelement <4 x float> %153, i32 3 177 %158 = fmul float %26, 0x3F45A07B40000000 178 %159 = fmul float %27, 0x3F45A07B40000000 179 %160 = fmul float %28, 0x3F45A07B40000000 180 %161 = insertelement <4 x float> undef, float %158, i32 0 181 %162 = insertelement <4 x float> %161, float %159, i32 1 182 %163 = insertelement <4 x float> %162, float %160, i32 2 183 %164 = insertelement <4 x float> %163, float 0.000000e+00, i32 3 184 %165 = extractelement <4 x float> %164, i32 0 185 %166 = extractelement <4 x float> %164, i32 1 186 %167 = extractelement <4 x float> %164, i32 2 187 %168 = extractelement <4 x float> %164, i32 3 188 %169 = insertelement <4 x float> undef, float %165, i32 0 189 %170 = insertelement <4 x float> %169, float %166, i32 1 190 %171 = insertelement <4 x float> %170, float %167, i32 2 191 %172 = insertelement <4 x float> %171, float %168, i32 3 192 %173 = call <4 x float> @llvm.AMDGPU.tex(<4 x float> %172, i32 16, i32 0, i32 3) 193 %174 = extractelement <4 x float> %173, i32 0 194 %175 = extractelement <4 x float> %173, i32 1 195 %176 = extractelement <4 x float> %173, i32 2 196 %177 = extractelement <4 x float> %173, i32 3 197 %178 = fmul float %176, 3.000000e+03 198 %179 = fadd float %178, %28 199 %180 = fdiv float 1.000000e+00, %33 200 %181 = fmul float %32, %180 201 %182 = call float @fabs(float %181) 202 %183 = fmul float %174, 0x3FD99999A0000000 203 %184 = fadd float %183, 0x3FAEB851E0000000 204 %185 = fmul float %175, 0x3FE3333340000000 205 %186 = fadd float %185, %184 206 %187 = fmul float %176, 2.000000e+00 207 %188 = fadd float %187, %186 208 %189 = fmul float %177, 4.000000e+00 209 %190 = fadd float %189, %188 210 %191 = fmul float %154, 0x3FB99999A0000000 211 %192 = fadd float %191, %190 212 %193 = fmul float %155, 0x3FD99999A0000000 213 %194 = fadd float %193, %192 214 %195 = fmul float %156, 0x3FE99999A0000000 215 %196 = fadd float %195, %194 216 %197 = fmul float %157, 0x4000CCCCC0000000 217 %198 = fadd float %197, %196 218 %199 = fmul float 0xBE5EFB4CC0000000, %182 219 %200 = fmul float %199, %182 220 %201 = call float @llvm.AMDIL.exp.(float %200) 221 %202 = call float @llvm.AMDGPU.lrp(float %201, float %198, float 0x3FA99999A0000000) 222 %203 = fadd float %202, 0x3FF4CCCCC0000000 223 %204 = fmul float %203, 0x3FE1C71C80000000 224 %205 = call float @llvm.AMDIL.clamp.(float %204, float 0.000000e+00, float 1.000000e+00) 225 %206 = fadd float %202, 0x3FF4CCCCC0000000 226 %207 = fmul float %206, 0x3FE1C71C80000000 227 %208 = call float @llvm.AMDIL.clamp.(float %207, float 0.000000e+00, float 1.000000e+00) 228 %209 = fadd float %202, 2.000000e+00 229 %210 = fmul float %209, 0x3FD611A7A0000000 230 %211 = call float @llvm.AMDIL.clamp.(float %210, float 0.000000e+00, float 1.000000e+00) 231 %212 = fmul float 2.000000e+00, %205 232 %213 = fsub float -0.000000e+00, %212 233 %214 = fadd float 3.000000e+00, %213 234 %215 = fmul float %205, %214 235 %216 = fmul float %205, %215 236 %217 = fmul float 2.000000e+00, %208 237 %218 = fsub float -0.000000e+00, %217 238 %219 = fadd float 3.000000e+00, %218 239 %220 = fmul float %208, %219 240 %221 = fmul float %208, %220 241 %222 = fmul float 2.000000e+00, %211 242 %223 = fsub float -0.000000e+00, %222 243 %224 = fadd float 3.000000e+00, %223 244 %225 = fmul float %211, %224 245 %226 = fmul float %211, %225 246 %227 = fmul float %26, 0x3F368B5CC0000000 247 %228 = fmul float %27, 0x3F368B5CC0000000 248 %229 = insertelement <4 x float> undef, float %227, i32 0 249 %230 = insertelement <4 x float> %229, float %228, i32 1 250 %231 = insertelement <4 x float> %230, float 0.000000e+00, i32 2 251 %232 = insertelement <4 x float> %231, float 0.000000e+00, i32 3 252 %233 = extractelement <4 x float> %232, i32 0 253 %234 = extractelement <4 x float> %232, i32 1 254 %235 = insertelement <4 x float> undef, float %233, i32 0 255 %236 = insertelement <4 x float> %235, float %234, i32 1 256 %237 = insertelement <4 x float> %236, float undef, i32 2 257 %238 = insertelement <4 x float> %237, float undef, i32 3 258 %239 = call <4 x float> @llvm.AMDGPU.tex(<4 x float> %238, i32 17, i32 1, i32 2) 259 %240 = extractelement <4 x float> %239, i32 0 260 %241 = insertelement <4 x float> undef, float %240, i32 0 261 %242 = insertelement <4 x float> %241, float %228, i32 1 262 %243 = insertelement <4 x float> %242, float 0.000000e+00, i32 2 263 %244 = insertelement <4 x float> %243, float 0.000000e+00, i32 3 264 %245 = extractelement <4 x float> %244, i32 0 265 %246 = insertelement <4 x float> undef, float %245, i32 0 266 %247 = insertelement <4 x float> %246, float undef, i32 1 267 %248 = insertelement <4 x float> %247, float undef, i32 2 268 %249 = insertelement <4 x float> %248, float undef, i32 3 269 %250 = call <4 x float> @llvm.AMDGPU.tex(<4 x float> %249, i32 18, i32 2, i32 1) 270 %251 = extractelement <4 x float> %250, i32 0 271 %252 = extractelement <4 x float> %250, i32 1 272 %253 = extractelement <4 x float> %250, i32 2 273 %254 = extractelement <4 x float> %250, i32 3 274 %255 = fmul float %251, %216 275 %256 = fmul float %252, %221 276 %257 = fmul float %253, %226 277 %258 = fmul float %254, 0.000000e+00 278 %259 = fadd float %202, 0x3FF4CCCCC0000000 279 %260 = fmul float %259, 0x3FE1C71C80000000 280 %261 = call float @llvm.AMDIL.clamp.(float %260, float 0.000000e+00, float 1.000000e+00) 281 %262 = fadd float %202, 0x3FF4CCCCC0000000 282 %263 = fmul float %262, 0x3FE1C71C80000000 283 %264 = call float @llvm.AMDIL.clamp.(float %263, float 0.000000e+00, float 1.000000e+00) 284 %265 = fadd float %202, 2.000000e+00 285 %266 = fmul float %265, 0x3FD611A7A0000000 286 %267 = call float @llvm.AMDIL.clamp.(float %266, float 0.000000e+00, float 1.000000e+00) 287 %268 = fmul float 2.000000e+00, %261 288 %269 = fsub float -0.000000e+00, %268 289 %270 = fadd float 3.000000e+00, %269 290 %271 = fmul float %261, %270 291 %272 = fmul float %261, %271 292 %273 = fmul float 2.000000e+00, %264 293 %274 = fsub float -0.000000e+00, %273 294 %275 = fadd float 3.000000e+00, %274 295 %276 = fmul float %264, %275 296 %277 = fmul float %264, %276 297 %278 = fmul float 2.000000e+00, %267 298 %279 = fsub float -0.000000e+00, %278 299 %280 = fadd float 3.000000e+00, %279 300 %281 = fmul float %267, %280 301 %282 = fmul float %267, %281 302 %283 = fmul float %26, 0x3F22DFD6A0000000 303 %284 = fmul float %27, 0x3F22DFD6A0000000 304 %285 = insertelement <4 x float> undef, float %283, i32 0 305 %286 = insertelement <4 x float> %285, float %284, i32 1 306 %287 = insertelement <4 x float> %286, float 0.000000e+00, i32 2 307 %288 = insertelement <4 x float> %287, float 0.000000e+00, i32 3 308 %289 = extractelement <4 x float> %288, i32 0 309 %290 = extractelement <4 x float> %288, i32 1 310 %291 = insertelement <4 x float> undef, float %289, i32 0 311 %292 = insertelement <4 x float> %291, float %290, i32 1 312 %293 = insertelement <4 x float> %292, float undef, i32 2 313 %294 = insertelement <4 x float> %293, float undef, i32 3 314 %295 = call <4 x float> @llvm.AMDGPU.tex(<4 x float> %294, i32 19, i32 3, i32 2) 315 %296 = extractelement <4 x float> %295, i32 0 316 %297 = extractelement <4 x float> %295, i32 1 317 %298 = extractelement <4 x float> %295, i32 2 318 %299 = extractelement <4 x float> %295, i32 3 319 %300 = fmul float %296, %272 320 %301 = fmul float %297, %277 321 %302 = fmul float %298, %282 322 %303 = fmul float %299, 0.000000e+00 323 %304 = fmul float %temp68.1, %37 324 %305 = fmul float %temp68.1, %38 325 %306 = fmul float %temp68.1, %39 326 %307 = fmul float %temp69.0, %40 327 %308 = fadd float %307, %304 328 %309 = fmul float %temp69.0, %41 329 %310 = fadd float %309, %305 330 %311 = fmul float %temp69.0, %42 331 %312 = fadd float %311, %306 332 %313 = fmul float %temp70.0, %34 333 %314 = fadd float %313, %308 334 %315 = fmul float %temp70.0, %35 335 %316 = fadd float %315, %310 336 %317 = fmul float %temp70.0, %36 337 %318 = fadd float %317, %312 338 %319 = insertelement <4 x float> undef, float %314, i32 0 339 %320 = insertelement <4 x float> %319, float %316, i32 1 340 %321 = insertelement <4 x float> %320, float %318, i32 2 341 %322 = insertelement <4 x float> %321, float 0.000000e+00, i32 3 342 %323 = insertelement <4 x float> undef, float %314, i32 0 343 %324 = insertelement <4 x float> %323, float %316, i32 1 344 %325 = insertelement <4 x float> %324, float %318, i32 2 345 %326 = insertelement <4 x float> %325, float 0.000000e+00, i32 3 346 %327 = call float @llvm.AMDGPU.dp4(<4 x float> %322, <4 x float> %326) 347 %328 = call float @llvm.AMDGPU.rsq.f32(float %327) 348 %329 = fmul float %314, %328 349 %330 = fmul float %316, %328 350 %331 = fmul float %318, %328 351 %332 = load <4 x float> addrspace(8)* getelementptr ([1024 x <4 x float>] addrspace(8)* null, i64 0, i32 6) 352 %333 = extractelement <4 x float> %332, i32 0 353 %334 = fsub float -0.000000e+00, %333 354 %335 = fadd float 1.000000e+00, %334 355 %336 = load <4 x float> addrspace(8)* getelementptr ([1024 x <4 x float>] addrspace(8)* null, i64 0, i32 7) 356 %337 = extractelement <4 x float> %336, i32 0 357 %338 = fsub float -0.000000e+00, %337 358 %339 = fadd float 1.000000e+00, %338 359 %340 = load <4 x float> addrspace(8)* getelementptr ([1024 x <4 x float>] addrspace(8)* null, i64 0, i32 8) 360 %341 = extractelement <4 x float> %340, i32 0 361 %342 = fsub float -0.000000e+00, %341 362 %343 = fadd float 1.000000e+00, %342 363 %344 = fsub float -0.000000e+00, %335 364 %345 = fadd float %202, %344 365 %346 = fsub float -0.000000e+00, %339 366 %347 = fadd float %202, %346 367 %348 = fadd float %347, 0xBFE3333340000000 368 %349 = fsub float -0.000000e+00, %202 369 %350 = fsub float -0.000000e+00, %343 370 %351 = fadd float %349, %350 371 %352 = insertelement <4 x float> undef, float %43, i32 0 372 %353 = insertelement <4 x float> %352, float %44, i32 1 373 %354 = insertelement <4 x float> %353, float %45, i32 2 374 %355 = insertelement <4 x float> %354, float 0.000000e+00, i32 3 375 %356 = insertelement <4 x float> undef, float %43, i32 0 376 %357 = insertelement <4 x float> %356, float %44, i32 1 377 %358 = insertelement <4 x float> %357, float %45, i32 2 378 %359 = insertelement <4 x float> %358, float 0.000000e+00, i32 3 379 %360 = call float @llvm.AMDGPU.dp4(<4 x float> %355, <4 x float> %359) 380 %361 = call float @llvm.AMDGPU.rsq.f32(float %360) 381 %362 = fmul float %45, %361 382 %363 = call float @fabs(float %362) 383 %364 = fmul float %176, 0x3FECCCCCC0000000 384 %365 = fadd float %364, %363 385 %366 = fadd float %365, 0xBFEFAE1480000000 386 %367 = fmul float %366, 0xC023FFFFC0000000 387 %368 = call float @llvm.AMDIL.clamp.(float %367, float 0.000000e+00, float 1.000000e+00) 388 %369 = fsub float -0.000000e+00, %335 389 %370 = fadd float %202, %369 390 %371 = fadd float %370, 0x3FBEB851E0000000 391 %372 = fsub float -0.000000e+00, %339 392 %373 = fadd float %202, %372 393 %374 = fadd float %373, 0xBFE0A3D700000000 394 %375 = fsub float -0.000000e+00, %202 395 %376 = fsub float -0.000000e+00, %343 396 %377 = fadd float %375, %376 397 %378 = insertelement <4 x float> undef, float %43, i32 0 398 %379 = insertelement <4 x float> %378, float %44, i32 1 399 %380 = insertelement <4 x float> %379, float %45, i32 2 400 %381 = insertelement <4 x float> %380, float 0.000000e+00, i32 3 401 %382 = insertelement <4 x float> undef, float %43, i32 0 402 %383 = insertelement <4 x float> %382, float %44, i32 1 403 %384 = insertelement <4 x float> %383, float %45, i32 2 404 %385 = insertelement <4 x float> %384, float 0.000000e+00, i32 3 405 %386 = call float @llvm.AMDGPU.dp4(<4 x float> %381, <4 x float> %385) 406 %387 = call float @llvm.AMDGPU.rsq.f32(float %386) 407 %388 = fmul float %45, %387 408 %389 = call float @fabs(float %388) 409 %390 = fmul float %176, 0x3FF51EB860000000 410 %391 = fadd float %390, %389 411 %392 = fadd float %391, 0xBFEFAE1480000000 412 %393 = fmul float %392, 0xC0490001A0000000 413 %394 = call float @llvm.AMDIL.clamp.(float %393, float 0.000000e+00, float 1.000000e+00) 414 %395 = fmul float 2.000000e+00, %368 415 %396 = fsub float -0.000000e+00, %395 416 %397 = fadd float 3.000000e+00, %396 417 %398 = fmul float %368, %397 418 %399 = fmul float %368, %398 419 %400 = call float @llvm.AMDGPU.lrp(float %399, float %255, float %345) 420 %401 = call float @llvm.AMDGPU.lrp(float %399, float %256, float %348) 421 %402 = call float @llvm.AMDGPU.lrp(float %399, float %257, float %351) 422 %403 = call float @llvm.AMDGPU.lrp(float %399, float %258, float 0.000000e+00) 423 %404 = fmul float 2.000000e+00, %394 424 %405 = fsub float -0.000000e+00, %404 425 %406 = fadd float 3.000000e+00, %405 426 %407 = fmul float %394, %406 427 %408 = fmul float %394, %407 428 %409 = call float @llvm.AMDGPU.lrp(float %408, float %255, float %371) 429 %410 = call float @llvm.AMDGPU.lrp(float %408, float %256, float %374) 430 %411 = call float @llvm.AMDGPU.lrp(float %408, float %257, float %377) 431 %412 = call float @llvm.AMDGPU.lrp(float %408, float %258, float 0x3FD3333340000000) 432 %413 = fcmp oge float 2.200000e+03, %179 433 %414 = sext i1 %413 to i32 434 %415 = bitcast i32 %414 to float 435 %416 = bitcast float %415 to i32 436 %417 = icmp ne i32 %416, 0 437 br i1 %417, label %IF161, label %ENDIF160 438 439 LOOP: ; preds = %ENDIF139, %IF137 440 %temp88.0 = phi float [ 0.000000e+00, %IF137 ], [ %446, %ENDIF139 ] 441 %temp92.0 = phi float [ 1.000000e+00, %IF137 ], [ %.temp92.0, %ENDIF139 ] 442 %temp96.0 = phi float [ 0.000000e+00, %IF137 ], [ %477, %ENDIF139 ] 443 %418 = bitcast float %temp96.0 to i32 444 %419 = icmp sge i32 %418, %137 445 %420 = sext i1 %419 to i32 446 %421 = bitcast i32 %420 to float 447 %422 = bitcast float %421 to i32 448 %423 = icmp ne i32 %422, 0 449 br i1 %423, label %IF140, label %ENDIF139 450 451 IF140: ; preds = %LOOP 452 %424 = fmul float %133, 5.000000e-01 453 %425 = fmul float %129, %temp92.0 454 %426 = fadd float %425, %22 455 %427 = fmul float %130, %temp92.0 456 %428 = fadd float %427, %23 457 %429 = insertelement <4 x float> undef, float %426, i32 0 458 %430 = insertelement <4 x float> %429, float %428, i32 1 459 %431 = insertelement <4 x float> %430, float 0.000000e+00, i32 2 460 %432 = insertelement <4 x float> %431, float 0.000000e+00, i32 3 461 %433 = extractelement <4 x float> %432, i32 0 462 %434 = extractelement <4 x float> %432, i32 1 463 %435 = insertelement <4 x float> undef, float %433, i32 0 464 %436 = insertelement <4 x float> %435, float %434, i32 1 465 %437 = insertelement <4 x float> %436, float undef, i32 2 466 %438 = insertelement <4 x float> %437, float undef, i32 3 467 %439 = call <4 x float> @llvm.AMDGPU.tex(<4 x float> %438, i32 20, i32 4, i32 2) 468 %440 = extractelement <4 x float> %439, i32 3 469 %441 = fcmp oge float %temp92.0, %440 470 %442 = sext i1 %441 to i32 471 %443 = bitcast i32 %442 to float 472 %444 = bitcast float %443 to i32 473 %445 = icmp ne i32 %444, 0 474 br i1 %445, label %IF146, label %ENDIF145 475 476 ENDIF139: ; preds = %LOOP 477 %446 = fadd float %temp88.0, %133 478 %447 = fmul float %129, %446 479 %448 = fadd float %447, %22 480 %449 = fmul float %130, %446 481 %450 = fadd float %449, %23 482 %451 = insertelement <4 x float> undef, float %448, i32 0 483 %452 = insertelement <4 x float> %451, float %450, i32 1 484 %453 = insertelement <4 x float> %452, float 0.000000e+00, i32 2 485 %454 = insertelement <4 x float> %453, float 0.000000e+00, i32 3 486 %455 = extractelement <4 x float> %454, i32 0 487 %456 = extractelement <4 x float> %454, i32 1 488 %457 = insertelement <4 x float> undef, float %455, i32 0 489 %458 = insertelement <4 x float> %457, float %456, i32 1 490 %459 = insertelement <4 x float> %458, float undef, i32 2 491 %460 = insertelement <4 x float> %459, float undef, i32 3 492 %461 = call <4 x float> @llvm.AMDGPU.tex(<4 x float> %460, i32 20, i32 4, i32 2) 493 %462 = extractelement <4 x float> %461, i32 3 494 %463 = fcmp olt float 0x3FEFDF3B60000000, %temp92.0 495 %464 = sext i1 %463 to i32 496 %465 = bitcast i32 %464 to float 497 %466 = fcmp oge float %446, %462 498 %467 = sext i1 %466 to i32 499 %468 = bitcast i32 %467 to float 500 %469 = bitcast float %465 to i32 501 %470 = bitcast float %468 to i32 502 %471 = and i32 %469, %470 503 %472 = bitcast i32 %471 to float 504 %473 = bitcast float %472 to i32 505 %474 = icmp ne i32 %473, 0 506 %.temp92.0 = select i1 %474, float %446, float %temp92.0 507 %475 = bitcast float %temp96.0 to i32 508 %476 = add i32 %475, 1 509 %477 = bitcast i32 %476 to float 510 br label %LOOP 511 512 IF146: ; preds = %IF140 513 %478 = fmul float 2.000000e+00, %424 514 %479 = fsub float -0.000000e+00, %478 515 %480 = fadd float %temp92.0, %479 516 br label %ENDIF145 517 518 ENDIF145: ; preds = %IF140, %IF146 519 %temp88.1 = phi float [ %480, %IF146 ], [ %temp92.0, %IF140 ] 520 %481 = fadd float %temp88.1, %424 521 %482 = fmul float %424, 5.000000e-01 522 %483 = fmul float %129, %481 523 %484 = fadd float %483, %22 524 %485 = fmul float %130, %481 525 %486 = fadd float %485, %23 526 %487 = insertelement <4 x float> undef, float %484, i32 0 527 %488 = insertelement <4 x float> %487, float %486, i32 1 528 %489 = insertelement <4 x float> %488, float 0.000000e+00, i32 2 529 %490 = insertelement <4 x float> %489, float %440, i32 3 530 %491 = extractelement <4 x float> %490, i32 0 531 %492 = extractelement <4 x float> %490, i32 1 532 %493 = insertelement <4 x float> undef, float %491, i32 0 533 %494 = insertelement <4 x float> %493, float %492, i32 1 534 %495 = insertelement <4 x float> %494, float undef, i32 2 535 %496 = insertelement <4 x float> %495, float undef, i32 3 536 %497 = call <4 x float> @llvm.AMDGPU.tex(<4 x float> %496, i32 20, i32 4, i32 2) 537 %498 = extractelement <4 x float> %497, i32 3 538 %499 = fcmp oge float %481, %498 539 %500 = sext i1 %499 to i32 540 %501 = bitcast i32 %500 to float 541 %502 = bitcast float %501 to i32 542 %503 = icmp ne i32 %502, 0 543 br i1 %503, label %IF149, label %ENDIF148 544 545 IF149: ; preds = %ENDIF145 546 %504 = fmul float 2.000000e+00, %482 547 %505 = fsub float -0.000000e+00, %504 548 %506 = fadd float %481, %505 549 br label %ENDIF148 550 551 ENDIF148: ; preds = %ENDIF145, %IF149 552 %temp88.2 = phi float [ %506, %IF149 ], [ %481, %ENDIF145 ] 553 %temp92.2 = phi float [ %481, %IF149 ], [ %temp92.0, %ENDIF145 ] 554 %507 = fadd float %temp88.2, %482 555 %508 = fmul float %482, 5.000000e-01 556 %509 = fmul float %129, %507 557 %510 = fadd float %509, %22 558 %511 = fmul float %130, %507 559 %512 = fadd float %511, %23 560 %513 = insertelement <4 x float> undef, float %510, i32 0 561 %514 = insertelement <4 x float> %513, float %512, i32 1 562 %515 = insertelement <4 x float> %514, float 0.000000e+00, i32 2 563 %516 = insertelement <4 x float> %515, float %498, i32 3 564 %517 = extractelement <4 x float> %516, i32 0 565 %518 = extractelement <4 x float> %516, i32 1 566 %519 = insertelement <4 x float> undef, float %517, i32 0 567 %520 = insertelement <4 x float> %519, float %518, i32 1 568 %521 = insertelement <4 x float> %520, float undef, i32 2 569 %522 = insertelement <4 x float> %521, float undef, i32 3 570 %523 = call <4 x float> @llvm.AMDGPU.tex(<4 x float> %522, i32 20, i32 4, i32 2) 571 %524 = extractelement <4 x float> %523, i32 3 572 %525 = fcmp oge float %507, %524 573 %526 = sext i1 %525 to i32 574 %527 = bitcast i32 %526 to float 575 %528 = bitcast float %527 to i32 576 %529 = icmp ne i32 %528, 0 577 br i1 %529, label %IF152, label %ENDIF151 578 579 IF152: ; preds = %ENDIF148 580 %530 = fmul float 2.000000e+00, %508 581 %531 = fsub float -0.000000e+00, %530 582 %532 = fadd float %507, %531 583 br label %ENDIF151 584 585 ENDIF151: ; preds = %ENDIF148, %IF152 586 %temp88.3 = phi float [ %532, %IF152 ], [ %507, %ENDIF148 ] 587 %temp92.3 = phi float [ %507, %IF152 ], [ %temp92.2, %ENDIF148 ] 588 %533 = fadd float %temp88.3, %508 589 %534 = fmul float %508, 5.000000e-01 590 %535 = fmul float %129, %533 591 %536 = fadd float %535, %22 592 %537 = fmul float %130, %533 593 %538 = fadd float %537, %23 594 %539 = insertelement <4 x float> undef, float %536, i32 0 595 %540 = insertelement <4 x float> %539, float %538, i32 1 596 %541 = insertelement <4 x float> %540, float 0.000000e+00, i32 2 597 %542 = insertelement <4 x float> %541, float %524, i32 3 598 %543 = extractelement <4 x float> %542, i32 0 599 %544 = extractelement <4 x float> %542, i32 1 600 %545 = insertelement <4 x float> undef, float %543, i32 0 601 %546 = insertelement <4 x float> %545, float %544, i32 1 602 %547 = insertelement <4 x float> %546, float undef, i32 2 603 %548 = insertelement <4 x float> %547, float undef, i32 3 604 %549 = call <4 x float> @llvm.AMDGPU.tex(<4 x float> %548, i32 20, i32 4, i32 2) 605 %550 = extractelement <4 x float> %549, i32 3 606 %551 = fcmp oge float %533, %550 607 %552 = sext i1 %551 to i32 608 %553 = bitcast i32 %552 to float 609 %554 = bitcast float %553 to i32 610 %555 = icmp ne i32 %554, 0 611 br i1 %555, label %IF155, label %ENDIF154 612 613 IF155: ; preds = %ENDIF151 614 %556 = fmul float 2.000000e+00, %534 615 %557 = fsub float -0.000000e+00, %556 616 %558 = fadd float %533, %557 617 br label %ENDIF154 618 619 ENDIF154: ; preds = %ENDIF151, %IF155 620 %temp88.4 = phi float [ %558, %IF155 ], [ %533, %ENDIF151 ] 621 %temp92.4 = phi float [ %533, %IF155 ], [ %temp92.3, %ENDIF151 ] 622 %559 = fadd float %temp88.4, %534 623 %560 = fmul float %129, %559 624 %561 = fadd float %560, %22 625 %562 = fmul float %130, %559 626 %563 = fadd float %562, %23 627 %564 = insertelement <4 x float> undef, float %561, i32 0 628 %565 = insertelement <4 x float> %564, float %563, i32 1 629 %566 = insertelement <4 x float> %565, float 0.000000e+00, i32 2 630 %567 = insertelement <4 x float> %566, float %550, i32 3 631 %568 = extractelement <4 x float> %567, i32 0 632 %569 = extractelement <4 x float> %567, i32 1 633 %570 = insertelement <4 x float> undef, float %568, i32 0 634 %571 = insertelement <4 x float> %570, float %569, i32 1 635 %572 = insertelement <4 x float> %571, float undef, i32 2 636 %573 = insertelement <4 x float> %572, float undef, i32 3 637 %574 = call <4 x float> @llvm.AMDGPU.tex(<4 x float> %573, i32 20, i32 4, i32 2) 638 %575 = extractelement <4 x float> %574, i32 3 639 %576 = fcmp oge float %559, %575 640 %577 = sext i1 %576 to i32 641 %578 = bitcast i32 %577 to float 642 %579 = bitcast float %578 to i32 643 %580 = icmp ne i32 %579, 0 644 %.temp92.4 = select i1 %580, float %559, float %temp92.4 645 %581 = fmul float %129, %.temp92.4 646 %582 = fadd float %581, %22 647 %583 = fmul float %130, %.temp92.4 648 %584 = fadd float %583, %23 649 %585 = insertelement <4 x float> undef, float %582, i32 0 650 %586 = insertelement <4 x float> %585, float %584, i32 1 651 %587 = insertelement <4 x float> %586, float 0.000000e+00, i32 2 652 %588 = insertelement <4 x float> %587, float %575, i32 3 653 %589 = extractelement <4 x float> %588, i32 0 654 %590 = extractelement <4 x float> %588, i32 1 655 %591 = insertelement <4 x float> undef, float %589, i32 0 656 %592 = insertelement <4 x float> %591, float %590, i32 1 657 %593 = insertelement <4 x float> %592, float undef, i32 2 658 %594 = insertelement <4 x float> %593, float undef, i32 3 659 %595 = call <4 x float> @llvm.AMDGPU.tex(<4 x float> %594, i32 20, i32 4, i32 2) 660 %596 = extractelement <4 x float> %595, i32 0 661 %597 = extractelement <4 x float> %595, i32 1 662 %598 = extractelement <4 x float> %595, i32 2 663 %599 = fmul float %596, 2.000000e+00 664 %600 = fadd float %599, -1.000000e+00 665 %601 = fmul float %597, 2.000000e+00 666 %602 = fadd float %601, -1.000000e+00 667 %603 = fmul float %598, 2.000000e+00 668 %604 = fadd float %603, -1.000000e+00 669 br label %ENDIF136 670 671 IF161: ; preds = %ENDIF136 672 %605 = fmul float %202, 0x3FB99999A0000000 673 %606 = fcmp uge float 0x3FE4CCCCC0000000, %605 674 %607 = select i1 %606, float 0x3FE4CCCCC0000000, float %605 675 %608 = fcmp uge float %607, 5.000000e-01 676 %609 = select i1 %608, float 5.000000e-01, float %607 677 %610 = call float @llvm.AMDGPU.lrp(float %609, float %400, float %300) 678 %611 = call float @llvm.AMDGPU.lrp(float %609, float %401, float %301) 679 %612 = call float @llvm.AMDGPU.lrp(float %609, float %402, float %302) 680 %613 = call float @llvm.AMDGPU.lrp(float %609, float %403, float %303) 681 %614 = insertelement <4 x float> undef, float %329, i32 0 682 %615 = insertelement <4 x float> %614, float %330, i32 1 683 %616 = insertelement <4 x float> %615, float %331, i32 2 684 %617 = insertelement <4 x float> %616, float 0.000000e+00, i32 3 685 %618 = insertelement <4 x float> undef, float %63, i32 0 686 %619 = insertelement <4 x float> %618, float %65, i32 1 687 %620 = insertelement <4 x float> %619, float %67, i32 2 688 %621 = insertelement <4 x float> %620, float 0.000000e+00, i32 3 689 %622 = call float @llvm.AMDGPU.dp4(<4 x float> %617, <4 x float> %621) 690 %623 = fcmp uge float 0x3FE6666660000000, %622 691 %624 = select i1 %623, float 0x3FE6666660000000, float %622 692 %625 = fmul float %8, %624 693 %626 = fmul float %13, %624 694 %627 = fmul float %18, %624 695 %628 = insertelement <4 x float> undef, float %34, i32 0 696 %629 = insertelement <4 x float> %628, float %35, i32 1 697 %630 = insertelement <4 x float> %629, float %36, i32 2 698 %631 = insertelement <4 x float> %630, float 0.000000e+00, i32 3 699 %632 = insertelement <4 x float> undef, float %63, i32 0 700 %633 = insertelement <4 x float> %632, float %65, i32 1 701 %634 = insertelement <4 x float> %633, float %67, i32 2 702 %635 = insertelement <4 x float> %634, float 0.000000e+00, i32 3 703 %636 = call float @llvm.AMDGPU.dp4(<4 x float> %631, <4 x float> %635) 704 %637 = fcmp uge float 0x3FECCCCCC0000000, %636 705 %638 = select i1 %637, float 0x3FECCCCCC0000000, float %636 706 %639 = fmul float %625, %638 707 %640 = fmul float %626, %638 708 %641 = fmul float %627, %638 709 br label %ENDIF160 710 711 ENDIF160: ; preds = %ENDIF136, %IF161 712 %temp84.0 = phi float [ %610, %IF161 ], [ %255, %ENDIF136 ] 713 %temp85.0 = phi float [ %611, %IF161 ], [ %256, %ENDIF136 ] 714 %temp86.0 = phi float [ %612, %IF161 ], [ %257, %ENDIF136 ] 715 %temp87.0 = phi float [ %613, %IF161 ], [ %258, %ENDIF136 ] 716 %temp92.6 = phi float [ %639, %IF161 ], [ %415, %ENDIF136 ] 717 %temp93.0 = phi float [ %640, %IF161 ], [ 0.000000e+00, %ENDIF136 ] 718 %temp94.0 = phi float [ %641, %IF161 ], [ 0.000000e+00, %ENDIF136 ] 719 %642 = fcmp olt float 2.200000e+03, %179 720 %643 = sext i1 %642 to i32 721 %644 = bitcast i32 %643 to float 722 %645 = fcmp olt float %179, 2.300000e+03 723 %646 = sext i1 %645 to i32 724 %647 = bitcast i32 %646 to float 725 %648 = bitcast float %644 to i32 726 %649 = bitcast float %647 to i32 727 %650 = and i32 %648, %649 728 %651 = bitcast i32 %650 to float 729 %652 = bitcast float %651 to i32 730 %653 = icmp ne i32 %652, 0 731 br i1 %653, label %IF164, label %ENDIF163 732 733 IF164: ; preds = %ENDIF160 734 %654 = fmul float %202, 5.000000e-01 735 %655 = fcmp uge float 0x3FE4CCCCC0000000, %654 736 %656 = select i1 %655, float 0x3FE4CCCCC0000000, float %654 737 %657 = fcmp uge float %656, 0x3FD6666660000000 738 %658 = select i1 %657, float 0x3FD6666660000000, float %656 739 %659 = call float @llvm.AMDGPU.lrp(float %658, float %400, float %300) 740 %660 = call float @llvm.AMDGPU.lrp(float %658, float %401, float %301) 741 %661 = call float @llvm.AMDGPU.lrp(float %658, float %402, float %302) 742 %662 = call float @llvm.AMDGPU.lrp(float %658, float %403, float %303) 743 %663 = insertelement <4 x float> undef, float %329, i32 0 744 %664 = insertelement <4 x float> %663, float %330, i32 1 745 %665 = insertelement <4 x float> %664, float %331, i32 2 746 %666 = insertelement <4 x float> %665, float 0.000000e+00, i32 3 747 %667 = insertelement <4 x float> undef, float %63, i32 0 748 %668 = insertelement <4 x float> %667, float %65, i32 1 749 %669 = insertelement <4 x float> %668, float %67, i32 2 750 %670 = insertelement <4 x float> %669, float 0.000000e+00, i32 3 751 %671 = call float @llvm.AMDGPU.dp4(<4 x float> %666, <4 x float> %670) 752 %672 = fcmp uge float 0x3FE6666660000000, %671 753 %673 = select i1 %672, float 0x3FE6666660000000, float %671 754 %674 = fmul float %8, %673 755 %675 = fmul float %13, %673 756 %676 = fmul float %18, %673 757 %677 = insertelement <4 x float> undef, float %34, i32 0 758 %678 = insertelement <4 x float> %677, float %35, i32 1 759 %679 = insertelement <4 x float> %678, float %36, i32 2 760 %680 = insertelement <4 x float> %679, float 0.000000e+00, i32 3 761 %681 = insertelement <4 x float> undef, float %63, i32 0 762 %682 = insertelement <4 x float> %681, float %65, i32 1 763 %683 = insertelement <4 x float> %682, float %67, i32 2 764 %684 = insertelement <4 x float> %683, float 0.000000e+00, i32 3 765 %685 = call float @llvm.AMDGPU.dp4(<4 x float> %680, <4 x float> %684) 766 %686 = fcmp uge float 0x3FECCCCCC0000000, %685 767 %687 = select i1 %686, float 0x3FECCCCCC0000000, float %685 768 %688 = fmul float %674, %687 769 %689 = fmul float %675, %687 770 %690 = fmul float %676, %687 771 br label %ENDIF163 772 773 ENDIF163: ; preds = %ENDIF160, %IF164 774 %temp84.1 = phi float [ %659, %IF164 ], [ %temp84.0, %ENDIF160 ] 775 %temp85.1 = phi float [ %660, %IF164 ], [ %temp85.0, %ENDIF160 ] 776 %temp86.1 = phi float [ %661, %IF164 ], [ %temp86.0, %ENDIF160 ] 777 %temp87.1 = phi float [ %662, %IF164 ], [ %temp87.0, %ENDIF160 ] 778 %temp92.7 = phi float [ %688, %IF164 ], [ %temp92.6, %ENDIF160 ] 779 %temp93.1 = phi float [ %689, %IF164 ], [ %temp93.0, %ENDIF160 ] 780 %temp94.1 = phi float [ %690, %IF164 ], [ %temp94.0, %ENDIF160 ] 781 %691 = fcmp oge float %179, 2.300000e+03 782 %692 = sext i1 %691 to i32 783 %693 = bitcast i32 %692 to float 784 %694 = fcmp olt float %179, 2.480000e+03 785 %695 = sext i1 %694 to i32 786 %696 = bitcast i32 %695 to float 787 %697 = bitcast float %693 to i32 788 %698 = bitcast float %696 to i32 789 %699 = and i32 %697, %698 790 %700 = bitcast i32 %699 to float 791 %701 = bitcast float %700 to i32 792 %702 = icmp ne i32 %701, 0 793 br i1 %702, label %IF167, label %ENDIF166 794 795 IF167: ; preds = %ENDIF163 796 %703 = fmul float %202, 5.000000e-01 797 %704 = fcmp uge float 0x3FE4CCCCC0000000, %703 798 %705 = select i1 %704, float 0x3FE4CCCCC0000000, float %703 799 %706 = fcmp uge float %705, 0x3FD3333340000000 800 %707 = select i1 %706, float 0x3FD3333340000000, float %705 801 %708 = call float @llvm.AMDGPU.lrp(float %707, float %409, float %300) 802 %709 = call float @llvm.AMDGPU.lrp(float %707, float %410, float %301) 803 %710 = call float @llvm.AMDGPU.lrp(float %707, float %411, float %302) 804 %711 = call float @llvm.AMDGPU.lrp(float %707, float %412, float %303) 805 %712 = insertelement <4 x float> undef, float %329, i32 0 806 %713 = insertelement <4 x float> %712, float %330, i32 1 807 %714 = insertelement <4 x float> %713, float %331, i32 2 808 %715 = insertelement <4 x float> %714, float 0.000000e+00, i32 3 809 %716 = insertelement <4 x float> undef, float %63, i32 0 810 %717 = insertelement <4 x float> %716, float %65, i32 1 811 %718 = insertelement <4 x float> %717, float %67, i32 2 812 %719 = insertelement <4 x float> %718, float 0.000000e+00, i32 3 813 %720 = call float @llvm.AMDGPU.dp4(<4 x float> %715, <4 x float> %719) 814 %721 = fcmp uge float 0x3FEB333340000000, %720 815 %722 = select i1 %721, float 0x3FEB333340000000, float %720 816 %723 = fmul float %8, %722 817 %724 = fmul float %13, %722 818 %725 = fmul float %18, %722 819 %726 = insertelement <4 x float> undef, float %34, i32 0 820 %727 = insertelement <4 x float> %726, float %35, i32 1 821 %728 = insertelement <4 x float> %727, float %36, i32 2 822 %729 = insertelement <4 x float> %728, float 0.000000e+00, i32 3 823 %730 = insertelement <4 x float> undef, float %63, i32 0 824 %731 = insertelement <4 x float> %730, float %65, i32 1 825 %732 = insertelement <4 x float> %731, float %67, i32 2 826 %733 = insertelement <4 x float> %732, float 0.000000e+00, i32 3 827 %734 = call float @llvm.AMDGPU.dp4(<4 x float> %729, <4 x float> %733) 828 %735 = fcmp uge float 0x3FECCCCCC0000000, %734 829 %736 = select i1 %735, float 0x3FECCCCCC0000000, float %734 830 %737 = fmul float %723, %736 831 %738 = fmul float %724, %736 832 %739 = fmul float %725, %736 833 br label %ENDIF166 834 835 ENDIF166: ; preds = %ENDIF163, %IF167 836 %temp84.2 = phi float [ %708, %IF167 ], [ %temp84.1, %ENDIF163 ] 837 %temp85.2 = phi float [ %709, %IF167 ], [ %temp85.1, %ENDIF163 ] 838 %temp86.2 = phi float [ %710, %IF167 ], [ %temp86.1, %ENDIF163 ] 839 %temp87.2 = phi float [ %711, %IF167 ], [ %temp87.1, %ENDIF163 ] 840 %temp92.8 = phi float [ %737, %IF167 ], [ %temp92.7, %ENDIF163 ] 841 %temp93.2 = phi float [ %738, %IF167 ], [ %temp93.1, %ENDIF163 ] 842 %temp94.2 = phi float [ %739, %IF167 ], [ %temp94.1, %ENDIF163 ] 843 %740 = fcmp oge float %179, 2.480000e+03 844 %741 = sext i1 %740 to i32 845 %742 = bitcast i32 %741 to float 846 %743 = fcmp olt float %179, 2.530000e+03 847 %744 = sext i1 %743 to i32 848 %745 = bitcast i32 %744 to float 849 %746 = bitcast float %742 to i32 850 %747 = bitcast float %745 to i32 851 %748 = and i32 %746, %747 852 %749 = bitcast i32 %748 to float 853 %750 = bitcast float %749 to i32 854 %751 = icmp ne i32 %750, 0 855 br i1 %751, label %IF170, label %ENDIF169 856 857 IF170: ; preds = %ENDIF166 858 %752 = fmul float %202, 5.000000e-01 859 %753 = fcmp uge float 0x3FE4CCCCC0000000, %752 860 %754 = select i1 %753, float 0x3FE4CCCCC0000000, float %752 861 %755 = fcmp uge float %754, 0x3FC99999A0000000 862 %756 = select i1 %755, float 0x3FC99999A0000000, float %754 863 %757 = call float @llvm.AMDGPU.lrp(float %756, float %409, float %300) 864 %758 = call float @llvm.AMDGPU.lrp(float %756, float %410, float %301) 865 %759 = call float @llvm.AMDGPU.lrp(float %756, float %411, float %302) 866 %760 = call float @llvm.AMDGPU.lrp(float %756, float %412, float %303) 867 %761 = insertelement <4 x float> undef, float %329, i32 0 868 %762 = insertelement <4 x float> %761, float %330, i32 1 869 %763 = insertelement <4 x float> %762, float %331, i32 2 870 %764 = insertelement <4 x float> %763, float 0.000000e+00, i32 3 871 %765 = insertelement <4 x float> undef, float %63, i32 0 872 %766 = insertelement <4 x float> %765, float %65, i32 1 873 %767 = insertelement <4 x float> %766, float %67, i32 2 874 %768 = insertelement <4 x float> %767, float 0.000000e+00, i32 3 875 %769 = call float @llvm.AMDGPU.dp4(<4 x float> %764, <4 x float> %768) 876 %770 = fcmp uge float 0x3FEB333340000000, %769 877 %771 = select i1 %770, float 0x3FEB333340000000, float %769 878 %772 = fmul float %8, %771 879 %773 = fmul float %13, %771 880 %774 = fmul float %18, %771 881 %775 = insertelement <4 x float> undef, float %34, i32 0 882 %776 = insertelement <4 x float> %775, float %35, i32 1 883 %777 = insertelement <4 x float> %776, float %36, i32 2 884 %778 = insertelement <4 x float> %777, float 0.000000e+00, i32 3 885 %779 = insertelement <4 x float> undef, float %63, i32 0 886 %780 = insertelement <4 x float> %779, float %65, i32 1 887 %781 = insertelement <4 x float> %780, float %67, i32 2 888 %782 = insertelement <4 x float> %781, float 0.000000e+00, i32 3 889 %783 = call float @llvm.AMDGPU.dp4(<4 x float> %778, <4 x float> %782) 890 %784 = fcmp uge float 0x3FECCCCCC0000000, %783 891 %785 = select i1 %784, float 0x3FECCCCCC0000000, float %783 892 %786 = fmul float %772, %785 893 %787 = fmul float %773, %785 894 %788 = fmul float %774, %785 895 br label %ENDIF169 896 897 ENDIF169: ; preds = %ENDIF166, %IF170 898 %temp84.3 = phi float [ %757, %IF170 ], [ %temp84.2, %ENDIF166 ] 899 %temp85.3 = phi float [ %758, %IF170 ], [ %temp85.2, %ENDIF166 ] 900 %temp86.3 = phi float [ %759, %IF170 ], [ %temp86.2, %ENDIF166 ] 901 %temp87.3 = phi float [ %760, %IF170 ], [ %temp87.2, %ENDIF166 ] 902 %temp92.9 = phi float [ %786, %IF170 ], [ %temp92.8, %ENDIF166 ] 903 %temp93.3 = phi float [ %787, %IF170 ], [ %temp93.2, %ENDIF166 ] 904 %temp94.3 = phi float [ %788, %IF170 ], [ %temp94.2, %ENDIF166 ] 905 %789 = fcmp oge float %179, 2.530000e+03 906 %790 = sext i1 %789 to i32 907 %791 = bitcast i32 %790 to float 908 %792 = fcmp olt float %179, 2.670000e+03 909 %793 = sext i1 %792 to i32 910 %794 = bitcast i32 %793 to float 911 %795 = bitcast float %791 to i32 912 %796 = bitcast float %794 to i32 913 %797 = and i32 %795, %796 914 %798 = bitcast i32 %797 to float 915 %799 = bitcast float %798 to i32 916 %800 = icmp ne i32 %799, 0 917 br i1 %800, label %IF173, label %ENDIF172 918 919 IF173: ; preds = %ENDIF169 920 %801 = fmul float %202, 5.000000e-01 921 %802 = fcmp uge float 0x3FE4CCCCC0000000, %801 922 %803 = select i1 %802, float 0x3FE4CCCCC0000000, float %801 923 %804 = fcmp uge float %803, 0x3FB99999A0000000 924 %805 = select i1 %804, float 0x3FB99999A0000000, float %803 925 %806 = call float @llvm.AMDGPU.lrp(float %805, float %400, float %300) 926 %807 = call float @llvm.AMDGPU.lrp(float %805, float %401, float %301) 927 %808 = call float @llvm.AMDGPU.lrp(float %805, float %402, float %302) 928 %809 = call float @llvm.AMDGPU.lrp(float %805, float %403, float %303) 929 %810 = insertelement <4 x float> undef, float %329, i32 0 930 %811 = insertelement <4 x float> %810, float %330, i32 1 931 %812 = insertelement <4 x float> %811, float %331, i32 2 932 %813 = insertelement <4 x float> %812, float 0.000000e+00, i32 3 933 %814 = insertelement <4 x float> undef, float %63, i32 0 934 %815 = insertelement <4 x float> %814, float %65, i32 1 935 %816 = insertelement <4 x float> %815, float %67, i32 2 936 %817 = insertelement <4 x float> %816, float 0.000000e+00, i32 3 937 %818 = call float @llvm.AMDGPU.dp4(<4 x float> %813, <4 x float> %817) 938 %819 = fcmp uge float 0x3FEB333340000000, %818 939 %820 = select i1 %819, float 0x3FEB333340000000, float %818 940 %821 = fmul float %8, %820 941 %822 = fmul float %13, %820 942 %823 = fmul float %18, %820 943 %824 = insertelement <4 x float> undef, float %34, i32 0 944 %825 = insertelement <4 x float> %824, float %35, i32 1 945 %826 = insertelement <4 x float> %825, float %36, i32 2 946 %827 = insertelement <4 x float> %826, float 0.000000e+00, i32 3 947 %828 = insertelement <4 x float> undef, float %63, i32 0 948 %829 = insertelement <4 x float> %828, float %65, i32 1 949 %830 = insertelement <4 x float> %829, float %67, i32 2 950 %831 = insertelement <4 x float> %830, float 0.000000e+00, i32 3 951 %832 = call float @llvm.AMDGPU.dp4(<4 x float> %827, <4 x float> %831) 952 %833 = fcmp uge float 0x3FECCCCCC0000000, %832 953 %834 = select i1 %833, float 0x3FECCCCCC0000000, float %832 954 %835 = fmul float %821, %834 955 %836 = fmul float %822, %834 956 %837 = fmul float %823, %834 957 br label %ENDIF172 958 959 ENDIF172: ; preds = %ENDIF169, %IF173 960 %temp84.4 = phi float [ %806, %IF173 ], [ %temp84.3, %ENDIF169 ] 961 %temp85.4 = phi float [ %807, %IF173 ], [ %temp85.3, %ENDIF169 ] 962 %temp86.4 = phi float [ %808, %IF173 ], [ %temp86.3, %ENDIF169 ] 963 %temp87.4 = phi float [ %809, %IF173 ], [ %temp87.3, %ENDIF169 ] 964 %temp92.10 = phi float [ %835, %IF173 ], [ %temp92.9, %ENDIF169 ] 965 %temp93.4 = phi float [ %836, %IF173 ], [ %temp93.3, %ENDIF169 ] 966 %temp94.4 = phi float [ %837, %IF173 ], [ %temp94.3, %ENDIF169 ] 967 %838 = fcmp oge float %179, 2.670000e+03 968 %839 = sext i1 %838 to i32 969 %840 = bitcast i32 %839 to float 970 %841 = bitcast float %840 to i32 971 %842 = icmp ne i32 %841, 0 972 br i1 %842, label %IF176, label %ENDIF175 973 974 IF176: ; preds = %ENDIF172 975 %843 = fmul float %202, 0x3FB99999A0000000 976 %844 = fcmp uge float 0.000000e+00, %843 977 %845 = select i1 %844, float 0.000000e+00, float %843 978 %846 = fcmp uge float %845, 0x3FD99999A0000000 979 %847 = select i1 %846, float 0x3FD99999A0000000, float %845 980 %848 = call float @llvm.AMDGPU.lrp(float %847, float %400, float %300) 981 %849 = call float @llvm.AMDGPU.lrp(float %847, float %401, float %301) 982 %850 = call float @llvm.AMDGPU.lrp(float %847, float %402, float %302) 983 %851 = call float @llvm.AMDGPU.lrp(float %847, float %403, float %303) 984 %852 = insertelement <4 x float> undef, float %329, i32 0 985 %853 = insertelement <4 x float> %852, float %330, i32 1 986 %854 = insertelement <4 x float> %853, float %331, i32 2 987 %855 = insertelement <4 x float> %854, float 0.000000e+00, i32 3 988 %856 = insertelement <4 x float> undef, float %63, i32 0 989 %857 = insertelement <4 x float> %856, float %65, i32 1 990 %858 = insertelement <4 x float> %857, float %67, i32 2 991 %859 = insertelement <4 x float> %858, float 0.000000e+00, i32 3 992 %860 = call float @llvm.AMDGPU.dp4(<4 x float> %855, <4 x float> %859) 993 %861 = fcmp uge float 0x3FEB333340000000, %860 994 %862 = select i1 %861, float 0x3FEB333340000000, float %860 995 %863 = fmul float %8, %862 996 %864 = fmul float %13, %862 997 %865 = fmul float %18, %862 998 %866 = insertelement <4 x float> undef, float %34, i32 0 999 %867 = insertelement <4 x float> %866, float %35, i32 1 1000 %868 = insertelement <4 x float> %867, float %36, i32 2 1001 %869 = insertelement <4 x float> %868, float 0.000000e+00, i32 3 1002 %870 = insertelement <4 x float> undef, float %63, i32 0 1003 %871 = insertelement <4 x float> %870, float %65, i32 1 1004 %872 = insertelement <4 x float> %871, float %67, i32 2 1005 %873 = insertelement <4 x float> %872, float 0.000000e+00, i32 3 1006 %874 = call float @llvm.AMDGPU.dp4(<4 x float> %869, <4 x float> %873) 1007 %875 = fcmp uge float 0x3FECCCCCC0000000, %874 1008 %876 = select i1 %875, float 0x3FECCCCCC0000000, float %874 1009 %877 = fmul float %863, %876 1010 %878 = fmul float %864, %876 1011 %879 = fmul float %865, %876 1012 br label %ENDIF175 1013 1014 ENDIF175: ; preds = %ENDIF172, %IF176 1015 %temp84.5 = phi float [ %848, %IF176 ], [ %temp84.4, %ENDIF172 ] 1016 %temp85.5 = phi float [ %849, %IF176 ], [ %temp85.4, %ENDIF172 ] 1017 %temp86.5 = phi float [ %850, %IF176 ], [ %temp86.4, %ENDIF172 ] 1018 %temp87.5 = phi float [ %851, %IF176 ], [ %temp87.4, %ENDIF172 ] 1019 %temp92.11 = phi float [ %877, %IF176 ], [ %temp92.10, %ENDIF172 ] 1020 %temp93.5 = phi float [ %878, %IF176 ], [ %temp93.4, %ENDIF172 ] 1021 %temp94.5 = phi float [ %879, %IF176 ], [ %temp94.4, %ENDIF172 ] 1022 %880 = load <4 x float> addrspace(8)* getelementptr ([1024 x <4 x float>] addrspace(8)* null, i64 0, i32 10) 1023 %881 = extractelement <4 x float> %880, i32 0 1024 %882 = fcmp olt float %881, %179 1025 %883 = sext i1 %882 to i32 1026 %884 = bitcast i32 %883 to float 1027 %885 = bitcast float %884 to i32 1028 %886 = icmp ne i32 %885, 0 1029 br i1 %886, label %IF179, label %ENDIF178 1030 1031 IF179: ; preds = %ENDIF175 1032 %887 = fadd float %202, 1.000000e+00 1033 %888 = fadd float %202, 1.000000e+00 1034 %889 = fadd float %202, 1.000000e+00 1035 %890 = insertelement <4 x float> undef, float %43, i32 0 1036 %891 = insertelement <4 x float> %890, float %44, i32 1 1037 %892 = insertelement <4 x float> %891, float %45, i32 2 1038 %893 = insertelement <4 x float> %892, float 0.000000e+00, i32 3 1039 %894 = insertelement <4 x float> undef, float %43, i32 0 1040 %895 = insertelement <4 x float> %894, float %44, i32 1 1041 %896 = insertelement <4 x float> %895, float %45, i32 2 1042 %897 = insertelement <4 x float> %896, float 0.000000e+00, i32 3 1043 %898 = call float @llvm.AMDGPU.dp4(<4 x float> %893, <4 x float> %897) 1044 %899 = call float @llvm.AMDGPU.rsq.f32(float %898) 1045 %900 = fmul float %45, %899 1046 %901 = call float @fabs(float %900) 1047 %902 = fmul float %176, 0x3FECCCCCC0000000 1048 %903 = fadd float %902, %901 1049 %904 = fadd float %903, 0xBFEFAE1480000000 1050 %905 = fmul float %904, 0xC043FFFE20000000 1051 %906 = call float @llvm.AMDIL.clamp.(float %905, float 0.000000e+00, float 1.000000e+00) 1052 %907 = fmul float 2.000000e+00, %906 1053 %908 = fsub float -0.000000e+00, %907 1054 %909 = fadd float 3.000000e+00, %908 1055 %910 = fmul float %906, %909 1056 %911 = fmul float %906, %910 1057 %912 = call float @llvm.AMDGPU.lrp(float %911, float %temp84.5, float %887) 1058 %913 = call float @llvm.AMDGPU.lrp(float %911, float %temp85.5, float %888) 1059 %914 = call float @llvm.AMDGPU.lrp(float %911, float %temp86.5, float %889) 1060 %915 = call float @llvm.AMDGPU.lrp(float %911, float %temp87.5, float 0.000000e+00) 1061 %916 = fmul float %202, 5.000000e-01 1062 %917 = fcmp uge float 0x3FE4CCCCC0000000, %916 1063 %918 = select i1 %917, float 0x3FE4CCCCC0000000, float %916 1064 %919 = fcmp uge float %918, 0x3FE3333340000000 1065 %920 = select i1 %919, float 0x3FE3333340000000, float %918 1066 %921 = call float @llvm.AMDGPU.lrp(float %920, float %912, float %temp84.5) 1067 %922 = call float @llvm.AMDGPU.lrp(float %920, float %913, float %temp85.5) 1068 %923 = call float @llvm.AMDGPU.lrp(float %920, float %914, float %temp86.5) 1069 %924 = call float @llvm.AMDGPU.lrp(float %920, float %915, float %temp87.5) 1070 %925 = insertelement <4 x float> undef, float %329, i32 0 1071 %926 = insertelement <4 x float> %925, float %330, i32 1 1072 %927 = insertelement <4 x float> %926, float %331, i32 2 1073 %928 = insertelement <4 x float> %927, float 0.000000e+00, i32 3 1074 %929 = insertelement <4 x float> undef, float %63, i32 0 1075 %930 = insertelement <4 x float> %929, float %65, i32 1 1076 %931 = insertelement <4 x float> %930, float %67, i32 2 1077 %932 = insertelement <4 x float> %931, float 0.000000e+00, i32 3 1078 %933 = call float @llvm.AMDGPU.dp4(<4 x float> %928, <4 x float> %932) 1079 %934 = fcmp uge float 0x3FE99999A0000000, %933 1080 %935 = select i1 %934, float 0x3FE99999A0000000, float %933 1081 %936 = fmul float %8, %935 1082 %937 = fmul float %13, %935 1083 %938 = fmul float %18, %935 1084 %939 = insertelement <4 x float> undef, float %34, i32 0 1085 %940 = insertelement <4 x float> %939, float %35, i32 1 1086 %941 = insertelement <4 x float> %940, float %36, i32 2 1087 %942 = insertelement <4 x float> %941, float 0.000000e+00, i32 3 1088 %943 = insertelement <4 x float> undef, float %63, i32 0 1089 %944 = insertelement <4 x float> %943, float %65, i32 1 1090 %945 = insertelement <4 x float> %944, float %67, i32 2 1091 %946 = insertelement <4 x float> %945, float 0.000000e+00, i32 3 1092 %947 = call float @llvm.AMDGPU.dp4(<4 x float> %942, <4 x float> %946) 1093 %948 = fcmp uge float 0x3FECCCCCC0000000, %947 1094 %949 = select i1 %948, float 0x3FECCCCCC0000000, float %947 1095 %950 = fmul float %936, %949 1096 %951 = fmul float %937, %949 1097 %952 = fmul float %938, %949 1098 br label %ENDIF178 1099 1100 ENDIF178: ; preds = %ENDIF175, %IF179 1101 %temp84.6 = phi float [ %921, %IF179 ], [ %temp84.5, %ENDIF175 ] 1102 %temp85.6 = phi float [ %922, %IF179 ], [ %temp85.5, %ENDIF175 ] 1103 %temp86.6 = phi float [ %923, %IF179 ], [ %temp86.5, %ENDIF175 ] 1104 %temp87.6 = phi float [ %924, %IF179 ], [ %temp87.5, %ENDIF175 ] 1105 %temp92.12 = phi float [ %950, %IF179 ], [ %temp92.11, %ENDIF175 ] 1106 %temp93.6 = phi float [ %951, %IF179 ], [ %temp93.5, %ENDIF175 ] 1107 %temp94.6 = phi float [ %952, %IF179 ], [ %temp94.5, %ENDIF175 ] 1108 %953 = fmul float %55, %temp92.12 1109 %954 = fmul float %57, %temp93.6 1110 %955 = fmul float %59, %temp94.6 1111 %956 = fmul float %61, 0.000000e+00 1112 %957 = fmul float %temp84.6, %953 1113 %958 = fmul float %temp85.6, %954 1114 %959 = fmul float %temp86.6, %955 1115 %960 = fmul float %temp87.6, %956 1116 %961 = fmul float %2, -2.000000e+00 1117 %962 = fadd float %961, 1.000000e+00 1118 %963 = load <4 x float> addrspace(8)* getelementptr ([1024 x <4 x float>] addrspace(8)* null, i64 0, i32 23) 1119 %964 = extractelement <4 x float> %963, i32 2 1120 %965 = fsub float -0.000000e+00, %964 1121 %966 = fadd float %962, %965 1122 %967 = fdiv float 1.000000e+00, %966 1123 %968 = load <4 x float> addrspace(8)* getelementptr ([1024 x <4 x float>] addrspace(8)* null, i64 0, i32 24) 1124 %969 = extractelement <4 x float> %968, i32 2 1125 %970 = fmul float %969, %967 1126 %971 = fsub float -0.000000e+00, %53 1127 %972 = fmul float %971, %53 1128 %973 = fmul float %972, %970 1129 %974 = fmul float %973, %970 1130 %975 = fmul float %974, 0x3FF7154760000000 1131 %976 = call float @llvm.AMDIL.exp.(float %975) 1132 %977 = fcmp oeq float %53, 1.000000e+00 1133 %978 = sext i1 %977 to i32 1134 %979 = bitcast i32 %978 to float 1135 %980 = bitcast float %979 to i32 1136 %981 = icmp ne i32 %980, 0 1137 %.184 = select i1 %981, float 1.000000e+00, float %976 1138 %982 = call float @llvm.AMDGPU.lrp(float %.184, float %957, float %47) 1139 %983 = call float @llvm.AMDGPU.lrp(float %.184, float %958, float %49) 1140 %984 = call float @llvm.AMDGPU.lrp(float %.184, float %959, float %51) 1141 %985 = insertelement <4 x float> undef, float %982, i32 0 1142 %986 = insertelement <4 x float> %985, float %983, i32 1 1143 %987 = insertelement <4 x float> %986, float %984, i32 2 1144 %988 = insertelement <4 x float> %987, float %960, i32 3 1145 call void @llvm.R600.store.swizzle(<4 x float> %988, i32 0, i32 0) 1146 ret void 1147 } 1148 1149 ; Function Attrs: readnone 1150 declare float @llvm.AMDGPU.dp4(<4 x float>, <4 x float>) #1 1151 1152 ; Function Attrs: readnone 1153 declare float @llvm.AMDGPU.rsq.f32(float) #1 1154 1155 ; Function Attrs: readnone 1156 declare <4 x float> @llvm.AMDGPU.tex(<4 x float>, i32, i32, i32) #1 1157 1158 ; Function Attrs: readonly 1159 declare float @fabs(float) #2 1160 1161 ; Function Attrs: readnone 1162 declare float @llvm.AMDIL.exp.(float) #1 1163 1164 ; Function Attrs: readnone 1165 declare float @llvm.AMDGPU.lrp(float, float, float) #1 1166 1167 ; Function Attrs: readnone 1168 declare float @llvm.AMDIL.clamp.(float, float, float) #1 1169 1170 declare void @llvm.R600.store.swizzle(<4 x float>, i32, i32) 1171 1172 attributes #0 = { "ShaderType"="0" } 1173 attributes #1 = { readnone } 1174 attributes #2 = { readonly } 1175