; LLVM IR from OpenMathLib/OpenBLAS :: lapack-netlib/SRC (slag2)

; Unoptimized IR (clang -disable-llvm-passes):
target datalayout = "e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-i128:128-f80:128-n8:16:32:64-S128"
target triple = "x86_64-unknown-linux-gnu"

; Function Attrs: nounwind uwtable
define dso_local void @slag2_(ptr noundef %0, ptr noundef %1, ptr noundef %2, ptr noundef %3, ptr noundef %4, ptr noundef %5, ptr noundef %6, ptr noundef %7, ptr noundef %8, ptr noundef %9) #0 {
  %11 = alloca ptr, align 8
  %12 = alloca ptr, align 8
  %13 = alloca ptr, align 8
  %14 = alloca ptr, align 8
  %15 = alloca ptr, align 8
  %16 = alloca ptr, align 8
  %17 = alloca ptr, align 8
  %18 = alloca ptr, align 8
  %19 = alloca ptr, align 8
  %20 = alloca ptr, align 8
  %21 = alloca i32, align 4
  %22 = alloca i32, align 4
  %23 = alloca i32, align 4
  %24 = alloca i32, align 4
  %25 = alloca float, align 4
  %26 = alloca float, align 4
  %27 = alloca float, align 4
  %28 = alloca float, align 4
  %29 = alloca float, align 4
  %30 = alloca float, align 4
  %31 = alloca float, align 4
  %32 = alloca float, align 4
  %33 = alloca float, align 4
  %34 = alloca float, align 4
  %35 = alloca float, align 4
  %36 = alloca float, align 4
  %37 = alloca float, align 4
  %38 = alloca float, align 4
  %39 = alloca float, align 4
  %40 = alloca float, align 4
  %41 = alloca float, align 4
  %42 = alloca float, align 4
  %43 = alloca float, align 4
  %44 = alloca float, align 4
  %45 = alloca float, align 4
  %46 = alloca float, align 4
  %47 = alloca float, align 4
  %48 = alloca float, align 4
  %49 = alloca float, align 4
  %50 = alloca float, align 4
  %51 = alloca float, align 4
  %52 = alloca float, align 4
  %53 = alloca float, align 4
  %54 = alloca float, align 4
  %55 = alloca float, align 4
  %56 = alloca float, align 4
  %57 = alloca float, align 4
  %58 = alloca float, align 4
  %59 = alloca float, align 4
  %60 = alloca float, align 4
  %61 = alloca float, align 4
  %62 = alloca float, align 4
  %63 = alloca float, align 4
  %64 = alloca float, align 4
  %65 = alloca float, align 4
  %66 = alloca float, align 4
  %67 = alloca float, align 4
  %68 = alloca float, align 4
  %69 = alloca float, align 4
  %70 = alloca float, align 4
  %71 = alloca float, align 4
  %72 = alloca float, align 4
  %73 = alloca float, align 4
  store ptr %0, ptr %11, align 8, !tbaa !5
  store ptr %1, ptr %12, align 8, !tbaa !5
  store ptr %2, ptr %13, align 8, !tbaa !5
  store ptr %3, ptr %14, align 8, !tbaa !5
  store ptr %4, ptr %15, align 8, !tbaa !5
  store ptr %5, ptr %16, align 8, !tbaa !5
  store ptr %6, ptr %17, align 8, !tbaa !5
  store ptr %7, ptr %18, align 8, !tbaa !5
  store ptr %8, ptr %19, align 8, !tbaa !5
  store ptr %9, ptr %20, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr %21) #4
  call void @llvm.lifetime.start.p0(i64 4, ptr %22) #4
  call void @llvm.lifetime.start.p0(i64 4, ptr %23) #4
  call void @llvm.lifetime.start.p0(i64 4, ptr %24) #4
  call void @llvm.lifetime.start.p0(i64 4, ptr %25) #4
  call void @llvm.lifetime.start.p0(i64 4, ptr %26) #4
  call void @llvm.lifetime.start.p0(i64 4, ptr %27) #4
  call void @llvm.lifetime.start.p0(i64 4, ptr %28) #4
  call void @llvm.lifetime.start.p0(i64 4, ptr %29) #4
  call void @llvm.lifetime.start.p0(i64 4, ptr %30) #4
  call void @llvm.lifetime.start.p0(i64 4, ptr %31) #4
  call void @llvm.lifetime.start.p0(i64 4, ptr %32) #4
  call void @llvm.lifetime.start.p0(i64 4, ptr %33) #4
  call void @llvm.lifetime.start.p0(i64 4, ptr %34) #4
  call void @llvm.lifetime.start.p0(i64 4, ptr %35) #4
  call void @llvm.lifetime.start.p0(i64 4, ptr %36) #4
  call void @llvm.lifetime.start.p0(i64 4, ptr %37) #4
  call void @llvm.lifetime.start.p0(i64 4, ptr %38) #4
  call void @llvm.lifetime.start.p0(i64 4, ptr %39) #4
  call void @llvm.lifetime.start.p0(i64 4, ptr %40) #4
  call void @llvm.lifetime.start.p0(i64 4, ptr %41) #4
  call void @llvm.lifetime.start.p0(i64 4, ptr %42) #4
  call void @llvm.lifetime.start.p0(i64 4, ptr %43) #4
  call void @llvm.lifetime.start.p0(i64 4, ptr %44) #4
  call void @llvm.lifetime.start.p0(i64 4, ptr %45) #4
  call void @llvm.lifetime.start.p0(i64 4, ptr %46) #4
  call void @llvm.lifetime.start.p0(i64 4, ptr %47) #4
  call void @llvm.lifetime.start.p0(i64 4, ptr %48) #4
  call void @llvm.lifetime.start.p0(i64 4, ptr %49) #4
  call void @llvm.lifetime.start.p0(i64 4, ptr %50) #4
  call void @llvm.lifetime.start.p0(i64 4, ptr %51) #4
  call void @llvm.lifetime.start.p0(i64 4, ptr %52) #4
  call void @llvm.lifetime.start.p0(i64 4, ptr %53) #4
  call void @llvm.lifetime.start.p0(i64 4, ptr %54) #4
  call void @llvm.lifetime.start.p0(i64 4, ptr %55) #4
  call void @llvm.lifetime.start.p0(i64 4, ptr %56) #4
  call void @llvm.lifetime.start.p0(i64 4, ptr %57) #4
  call void @llvm.lifetime.start.p0(i64 4, ptr %58) #4
  call void @llvm.lifetime.start.p0(i64 4, ptr %59) #4
  call void @llvm.lifetime.start.p0(i64 4, ptr %60) #4
  call void @llvm.lifetime.start.p0(i64 4, ptr %61) #4
  call void @llvm.lifetime.start.p0(i64 4, ptr %62) #4
  call void @llvm.lifetime.start.p0(i64 4, ptr %63) #4
  call void @llvm.lifetime.start.p0(i64 4, ptr %64) #4
  call void @llvm.lifetime.start.p0(i64 4, ptr %65) #4
  call void @llvm.lifetime.start.p0(i64 4, ptr %66) #4
  call void @llvm.lifetime.start.p0(i64 4, ptr %67) #4
  call void @llvm.lifetime.start.p0(i64 4, ptr %68) #4
  call void @llvm.lifetime.start.p0(i64 4, ptr %69) #4
  call void @llvm.lifetime.start.p0(i64 4, ptr %70) #4
  call void @llvm.lifetime.start.p0(i64 4, ptr %71) #4
  call void @llvm.lifetime.start.p0(i64 4, ptr %72) #4
  call void @llvm.lifetime.start.p0(i64 4, ptr %73) #4
  %74 = load ptr, ptr %12, align 8, !tbaa !5
  %75 = load i32, ptr %74, align 4, !tbaa !9
  store i32 %75, ptr %21, align 4, !tbaa !9
  %76 = load i32, ptr %21, align 4, !tbaa !9
  %77 = mul nsw i32 %76, 1
  %78 = add nsw i32 1, %77
  store i32 %78, ptr %22, align 4, !tbaa !9
  %79 = load i32, ptr %22, align 4, !tbaa !9
  %80 = load ptr, ptr %11, align 8, !tbaa !5
  %81 = sext i32 %79 to i64
  %82 = sub i64 0, %81
  %83 = getelementptr inbounds float, ptr %80, i64 %82
  store ptr %83, ptr %11, align 8, !tbaa !5
  %84 = load ptr, ptr %14, align 8, !tbaa !5
  %85 = load i32, ptr %84, align 4, !tbaa !9
  store i32 %85, ptr %23, align 4, !tbaa !9
  %86 = load i32, ptr %23, align 4, !tbaa !9
  %87 = mul nsw i32 %86, 1
  %88 = add nsw i32 1, %87
  store i32 %88, ptr %24, align 4, !tbaa !9
  %89 = load i32, ptr %24, align 4, !tbaa !9
  %90 = load ptr, ptr %13, align 8, !tbaa !5
  %91 = sext i32 %89 to i64
  %92 = sub i64 0, %91
  %93 = getelementptr inbounds float, ptr %90, i64 %92
  store ptr %93, ptr %13, align 8, !tbaa !5
  %94 = load ptr, ptr %15, align 8, !tbaa !5
  %95 = load float, ptr %94, align 4, !tbaa !11
  %96 = fpext float %95 to double
  %97 = call double @sqrt(double noundef %96) #4
  %98 = fptrunc double %97 to float
  store float %98, ptr %49, align 4, !tbaa !11
  %99 = load float, ptr %49, align 4, !tbaa !11
  %100 = fdiv float 1.000000e+00, %99
  store float %100, ptr %50, align 4, !tbaa !11
  %101 = load ptr, ptr %15, align 8, !tbaa !5
  %102 = load float, ptr %101, align 4, !tbaa !11
  %103 = fdiv float 1.000000e+00, %102
  store float %103, ptr %67, align 4, !tbaa !11
  %104 = load ptr, ptr %11, align 8, !tbaa !5
  %105 = load i32, ptr %21, align 4, !tbaa !9
  %106 = add nsw i32 %105, 1
  %107 = sext i32 %106 to i64
  %108 = getelementptr inbounds float, ptr %104, i64 %107
  %109 = load float, ptr %108, align 4, !tbaa !11
  store float %109, ptr %25, align 4, !tbaa !11
  %110 = load float, ptr %25, align 4, !tbaa !11
  %111 = fcmp oge float %110, 0.000000e+00
  br i1 %111, label %112, label %114

112:                                              ; preds = %10
  %113 = load float, ptr %25, align 4, !tbaa !11
  br label %117

114:                                              ; preds = %10
  %115 = load float, ptr %25, align 4, !tbaa !11
  %116 = fneg float %115
  br label %117

117:                                              ; preds = %114, %112
  %118 = phi float [ %113, %112 ], [ %116, %114 ]
  %119 = load ptr, ptr %11, align 8, !tbaa !5
  %120 = load i32, ptr %21, align 4, !tbaa !9
  %121 = add nsw i32 %120, 2
  %122 = sext i32 %121 to i64
  %123 = getelementptr inbounds float, ptr %119, i64 %122
  %124 = load float, ptr %123, align 4, !tbaa !11
  store float %124, ptr %26, align 4, !tbaa !11
  %125 = load float, ptr %26, align 4, !tbaa !11
  %126 = fcmp oge float %125, 0.000000e+00
  br i1 %126, label %127, label %129

127:                                              ; preds = %117
  %128 = load float, ptr %26, align 4, !tbaa !11
  br label %132

129:                                              ; preds = %117
  %130 = load float, ptr %26, align 4, !tbaa !11
  %131 = fneg float %130
  br label %132

132:                                              ; preds = %129, %127
  %133 = phi float [ %128, %127 ], [ %131, %129 ]
  %134 = fadd float %118, %133
  store float %134, ptr %29, align 4, !tbaa !11
  %135 = load ptr, ptr %11, align 8, !tbaa !5
  %136 = load i32, ptr %21, align 4, !tbaa !9
  %137 = shl i32 %136, 1
  %138 = add nsw i32 %137, 1
  %139 = sext i32 %138 to i64
  %140 = getelementptr inbounds float, ptr %135, i64 %139
  %141 = load float, ptr %140, align 4, !tbaa !11
  store float %141, ptr %27, align 4, !tbaa !11
  %142 = load float, ptr %27, align 4, !tbaa !11
  %143 = fcmp oge float %142, 0.000000e+00
  br i1 %143, label %144, label %146

144:                                              ; preds = %132
  %145 = load float, ptr %27, align 4, !tbaa !11
  br label %149

146:                                              ; preds = %132
  %147 = load float, ptr %27, align 4, !tbaa !11
  %148 = fneg float %147
  br label %149

149:                                              ; preds = %146, %144
  %150 = phi float [ %145, %144 ], [ %148, %146 ]
  %151 = load ptr, ptr %11, align 8, !tbaa !5
  %152 = load i32, ptr %21, align 4, !tbaa !9
  %153 = shl i32 %152, 1
  %154 = add nsw i32 %153, 2
  %155 = sext i32 %154 to i64
  %156 = getelementptr inbounds float, ptr %151, i64 %155
  %157 = load float, ptr %156, align 4, !tbaa !11
  store float %157, ptr %28, align 4, !tbaa !11
  %158 = load float, ptr %28, align 4, !tbaa !11
  %159 = fcmp oge float %158, 0.000000e+00
  br i1 %159, label %160, label %162

160:                                              ; preds = %149
  %161 = load float, ptr %28, align 4, !tbaa !11
  br label %165

162:                                              ; preds = %149
  %163 = load float, ptr %28, align 4, !tbaa !11
  %164 = fneg float %163
  br label %165

165:                                              ; preds = %162, %160
  %166 = phi float [ %161, %160 ], [ %164, %162 ]
  %167 = fadd float %150, %166
  store float %167, ptr %30, align 4, !tbaa !11
  %168 = load float, ptr %29, align 4, !tbaa !11
  %169 = load float, ptr %30, align 4, !tbaa !11
  %170 = fcmp oge float %168, %169
  br i1 %170, label %171, label %173

171:                                              ; preds = %165
  %172 = load float, ptr %29, align 4, !tbaa !11
  br label %175

173:                                              ; preds = %165
  %174 = load float, ptr %30, align 4, !tbaa !11
  br label %175

175:                                              ; preds = %173, %171
  %176 = phi float [ %172, %171 ], [ %174, %173 ]
  store float %176, ptr %29, align 4, !tbaa !11
  %177 = load float, ptr %29, align 4, !tbaa !11
  %178 = load ptr, ptr %15, align 8, !tbaa !5
  %179 = load float, ptr %178, align 4, !tbaa !11
  %180 = fcmp oge float %177, %179
  br i1 %180, label %181, label %183

181:                                              ; preds = %175
  %182 = load float, ptr %29, align 4, !tbaa !11
  br label %186

183:                                              ; preds = %175
  %184 = load ptr, ptr %15, align 8, !tbaa !5
  %185 = load float, ptr %184, align 4, !tbaa !11
  br label %186

186:                                              ; preds = %183, %181
  %187 = phi float [ %182, %181 ], [ %185, %183 ]
  store float %187, ptr %40, align 4, !tbaa !11
  %188 = load float, ptr %40, align 4, !tbaa !11
  %189 = fdiv float 1.000000e+00, %188
  store float %189, ptr %61, align 4, !tbaa !11
  %190 = load float, ptr %61, align 4, !tbaa !11
  %191 = load ptr, ptr %11, align 8, !tbaa !5
  %192 = load i32, ptr %21, align 4, !tbaa !9
  %193 = add nsw i32 %192, 1
  %194 = sext i32 %193 to i64
  %195 = getelementptr inbounds float, ptr %191, i64 %194
  %196 = load float, ptr %195, align 4, !tbaa !11
  %197 = fmul float %190, %196
  store float %197, ptr %54, align 4, !tbaa !11
  %198 = load float, ptr %61, align 4, !tbaa !11
  %199 = load ptr, ptr %11, align 8, !tbaa !5
  %200 = load i32, ptr %21, align 4, !tbaa !9
  %201 = add nsw i32 %200, 2
  %202 = sext i32 %201 to i64
  %203 = getelementptr inbounds float, ptr %199, i64 %202
  %204 = load float, ptr %203, align 4, !tbaa !11
  %205 = fmul float %198, %204
  store float %205, ptr %56, align 4, !tbaa !11
  %206 = load float, ptr %61, align 4, !tbaa !11
  %207 = load ptr, ptr %11, align 8, !tbaa !5
  %208 = load i32, ptr %21, align 4, !tbaa !9
  %209 = shl i32 %208, 1
  %210 = add nsw i32 %209, 1
  %211 = sext i32 %210 to i64
  %212 = getelementptr inbounds float, ptr %207, i64 %211
  %213 = load float, ptr %212, align 4, !tbaa !11
  %214 = fmul float %206, %213
  store float %214, ptr %55, align 4, !tbaa !11
  %215 = load float, ptr %61, align 4, !tbaa !11
  %216 = load ptr, ptr %11, align 8, !tbaa !5
  %217 = load i32, ptr %21, align 4, !tbaa !9
  %218 = shl i32 %217, 1
  %219 = add nsw i32 %218, 2
  %220 = sext i32 %219 to i64
  %221 = getelementptr inbounds float, ptr %216, i64 %220
  %222 = load float, ptr %221, align 4, !tbaa !11
  %223 = fmul float %215, %222
  store float %223, ptr %57, align 4, !tbaa !11
  %224 = load ptr, ptr %13, align 8, !tbaa !5
  %225 = load i32, ptr %23, align 4, !tbaa !9
  %226 = add nsw i32 %225, 1
  %227 = sext i32 %226 to i64
  %228 = getelementptr inbounds float, ptr %224, i64 %227
  %229 = load float, ptr %228, align 4, !tbaa !11
  store float %229, ptr %58, align 4, !tbaa !11
  %230 = load ptr, ptr %13, align 8, !tbaa !5
  %231 = load i32, ptr %23, align 4, !tbaa !9
  %232 = shl i32 %231, 1
  %233 = add nsw i32 %232, 1
  %234 = sext i32 %233 to i64
  %235 = getelementptr inbounds float, ptr %230, i64 %234
  %236 = load float, ptr %235, align 4, !tbaa !11
  store float %236, ptr %59, align 4, !tbaa !11
  %237 = load ptr, ptr %13, align 8, !tbaa !5
  %238 = load i32, ptr %23, align 4, !tbaa !9
  %239 = shl i32 %238, 1
  %240 = add nsw i32 %239, 2
  %241 = sext i32 %240 to i64
  %242 = getelementptr inbounds float, ptr %237, i64 %241
  %243 = load float, ptr %242, align 4, !tbaa !11
  store float %243, ptr %60, align 4, !tbaa !11
  %244 = load float, ptr %58, align 4, !tbaa !11
  %245 = fcmp oge float %244, 0.000000e+00
  br i1 %245, label %246, label %248

246:                                              ; preds = %186
  %247 = load float, ptr %58, align 4, !tbaa !11
  br label %251

248:                                              ; preds = %186
  %249 = load float, ptr %58, align 4, !tbaa !11
  %250 = fneg float %249
  br label %251

251:                                              ; preds = %248, %246
  %252 = phi float [ %247, %246 ], [ %250, %248 ]
  store float %252, ptr %25, align 4, !tbaa !11
  %253 = load float, ptr %59, align 4, !tbaa !11
  %254 = fcmp oge float %253, 0.000000e+00
  br i1 %254, label %255, label %257

255:                                              ; preds = %251
  %256 = load float, ptr %59, align 4, !tbaa !11
  br label %260

257:                                              ; preds = %251
  %258 = load float, ptr %59, align 4, !tbaa !11
  %259 = fneg float %258
  br label %260

260:                                              ; preds = %257, %255
  %261 = phi float [ %256, %255 ], [ %259, %257 ]
  store float %261, ptr %26, align 4, !tbaa !11
  %262 = load float, ptr %25, align 4, !tbaa !11
  %263 = load float, ptr %26, align 4, !tbaa !11
  %264 = fcmp oge float %262, %263
  br i1 %264, label %265, label %267

265:                                              ; preds = %260
  %266 = load float, ptr %25, align 4, !tbaa !11
  br label %269

267:                                              ; preds = %260
  %268 = load float, ptr %26, align 4, !tbaa !11
  br label %269

269:                                              ; preds = %267, %265
  %270 = phi float [ %266, %265 ], [ %268, %267 ]
  store float %270, ptr %25, align 4, !tbaa !11
  %271 = load float, ptr %60, align 4, !tbaa !11
  %272 = fcmp oge float %271, 0.000000e+00
  br i1 %272, label %273, label %275

273:                                              ; preds = %269
  %274 = load float, ptr %60, align 4, !tbaa !11
  br label %278

275:                                              ; preds = %269
  %276 = load float, ptr %60, align 4, !tbaa !11
  %277 = fneg float %276
  br label %278

278:                                              ; preds = %275, %273
  %279 = phi float [ %274, %273 ], [ %277, %275 ]
  store float %279, ptr %26, align 4, !tbaa !11
  %280 = load float, ptr %25, align 4, !tbaa !11
  %281 = load float, ptr %26, align 4, !tbaa !11
  %282 = fcmp oge float %280, %281
  br i1 %282, label %283, label %285

283:                                              ; preds = %278
  %284 = load float, ptr %25, align 4, !tbaa !11
  br label %287

285:                                              ; preds = %278
  %286 = load float, ptr %26, align 4, !tbaa !11
  br label %287

287:                                              ; preds = %285, %283
  %288 = phi float [ %284, %283 ], [ %286, %285 ]
  store float %288, ptr %25, align 4, !tbaa !11
  %289 = load float, ptr %49, align 4, !tbaa !11
  %290 = load float, ptr %25, align 4, !tbaa !11
  %291 = load float, ptr %49, align 4, !tbaa !11
  %292 = fcmp oge float %290, %291
  br i1 %292, label %293, label %295

293:                                              ; preds = %287
  %294 = load float, ptr %25, align 4, !tbaa !11
  br label %297

295:                                              ; preds = %287
  %296 = load float, ptr %49, align 4, !tbaa !11
  br label %297

297:                                              ; preds = %295, %293
  %298 = phi float [ %294, %293 ], [ %296, %295 ]
  %299 = fmul float %289, %298
  store float %299, ptr %32, align 4, !tbaa !11
  %300 = load float, ptr %58, align 4, !tbaa !11
  %301 = fcmp oge float %300, 0.000000e+00
  br i1 %301, label %302, label %304

302:                                              ; preds = %297
  %303 = load float, ptr %58, align 4, !tbaa !11
  br label %307

304:                                              ; preds = %297
  %305 = load float, ptr %58, align 4, !tbaa !11
  %306 = fneg float %305
  br label %307

307:                                              ; preds = %304, %302
  %308 = phi float [ %303, %302 ], [ %306, %304 ]
  %309 = load float, ptr %32, align 4, !tbaa !11
  %310 = fcmp olt float %308, %309
  br i1 %310, label %311, label %337

311:                                              ; preds = %307
  %312 = load float, ptr %58, align 4, !tbaa !11
  %313 = fcmp oge float %312, 0.000000e+00
  br i1 %313, label %314, label %324

314:                                              ; preds = %311
  %315 = load float, ptr %32, align 4, !tbaa !11
  %316 = fcmp oge float %315, 0.000000e+00
  br i1 %316, label %317, label %319

317:                                              ; preds = %314
  %318 = load float, ptr %32, align 4, !tbaa !11
  br label %322

319:                                              ; preds = %314
  %320 = load float, ptr %32, align 4, !tbaa !11
  %321 = fneg float %320
  br label %322

322:                                              ; preds = %319, %317
  %323 = phi float [ %318, %317 ], [ %321, %319 ]
  br label %335

324:                                              ; preds = %311
  %325 = load float, ptr %32, align 4, !tbaa !11
  %326 = fcmp oge float %325, 0.000000e+00
  br i1 %326, label %327, label %329

327:                                              ; preds = %324
  %328 = load float, ptr %32, align 4, !tbaa !11
  br label %332

329:                                              ; preds = %324
  %330 = load float, ptr %32, align 4, !tbaa !11
  %331 = fneg float %330
  br label %332

332:                                              ; preds = %329, %327
  %333 = phi float [ %328, %327 ], [ %331, %329 ]
  %334 = fneg float %333
  br label %335

335:                                              ; preds = %332, %322
  %336 = phi float [ %323, %322 ], [ %334, %332 ]
  store float %336, ptr %58, align 4, !tbaa !11
  br label %337

337:                                              ; preds = %335, %307
  %338 = load float, ptr %60, align 4, !tbaa !11
  %339 = fcmp oge float %338, 0.000000e+00
  br i1 %339, label %340, label %342

340:                                              ; preds = %337
  %341 = load float, ptr %60, align 4, !tbaa !11
  br label %345

342:                                              ; preds = %337
  %343 = load float, ptr %60, align 4, !tbaa !11
  %344 = fneg float %343
  br label %345

345:                                              ; preds = %342, %340
  %346 = phi float [ %341, %340 ], [ %344, %342 ]
  %347 = load float, ptr %32, align 4, !tbaa !11
  %348 = fcmp olt float %346, %347
  br i1 %348, label %349, label %375

349:                                              ; preds = %345
  %350 = load float, ptr %60, align 4, !tbaa !11
  %351 = fcmp oge float %350, 0.000000e+00
  br i1 %351, label %352, label %362

352:                                              ; preds = %349
  %353 = load float, ptr %32, align 4, !tbaa !11
  %354 = fcmp oge float %353, 0.000000e+00
  br i1 %354, label %355, label %357

355:                                              ; preds = %352
  %356 = load float, ptr %32, align 4, !tbaa !11
  br label %360

357:                                              ; preds = %352
  %358 = load float, ptr %32, align 4, !tbaa !11
  %359 = fneg float %358
  br label %360

360:                                              ; preds = %357, %355
  %361 = phi float [ %356, %355 ], [ %359, %357 ]
  br label %373

362:                                              ; preds = %349
  %363 = load float, ptr %32, align 4, !tbaa !11
  %364 = fcmp oge float %363, 0.000000e+00
  br i1 %364, label %365, label %367

365:                                              ; preds = %362
  %366 = load float, ptr %32, align 4, !tbaa !11
  br label %370

367:                                              ; preds = %362
  %368 = load float, ptr %32, align 4, !tbaa !11
  %369 = fneg float %368
  br label %370

370:                                              ; preds = %367, %365
  %371 = phi float [ %366, %365 ], [ %369, %367 ]
  %372 = fneg float %371
  br label %373

373:                                              ; preds = %370, %360
  %374 = phi float [ %361, %360 ], [ %372, %370 ]
  store float %374, ptr %60, align 4, !tbaa !11
  br label %375

375:                                              ; preds = %373, %345
  %376 = load float, ptr %58, align 4, !tbaa !11
  %377 = fcmp oge float %376, 0.000000e+00
  br i1 %377, label %378, label %380

378:                                              ; preds = %375
  %379 = load float, ptr %58, align 4, !tbaa !11
  br label %383

380:                                              ; preds = %375
  %381 = load float, ptr %58, align 4, !tbaa !11
  %382 = fneg float %381
  br label %383

383:                                              ; preds = %380, %378
  %384 = phi float [ %379, %378 ], [ %382, %380 ]
  store float %384, ptr %25, align 4, !tbaa !11
  %385 = load float, ptr %59, align 4, !tbaa !11
  %386 = fcmp oge float %385, 0.000000e+00
  br i1 %386, label %387, label %389

387:                                              ; preds = %383
  %388 = load float, ptr %59, align 4, !tbaa !11
  br label %392

389:                                              ; preds = %383
  %390 = load float, ptr %59, align 4, !tbaa !11
  %391 = fneg float %390
  br label %392

392:                                              ; preds = %389, %387
  %393 = phi float [ %388, %387 ], [ %391, %389 ]
  %394 = load float, ptr %60, align 4, !tbaa !11
  %395 = fcmp oge float %394, 0.000000e+00
  br i1 %395, label %396, label %398

396:                                              ; preds = %392
  %397 = load float, ptr %60, align 4, !tbaa !11
  br label %401

398:                                              ; preds = %392
  %399 = load float, ptr %60, align 4, !tbaa !11
  %400 = fneg float %399
  br label %401

401:                                              ; preds = %398, %396
  %402 = phi float [ %397, %396 ], [ %400, %398 ]
  %403 = fadd float %393, %402
  store float %403, ptr %26, align 4, !tbaa !11
  %404 = load float, ptr %25, align 4, !tbaa !11
  %405 = load float, ptr %26, align 4, !tbaa !11
  %406 = fcmp oge float %404, %405
  br i1 %406, label %407, label %409

407:                                              ; preds = %401
  %408 = load float, ptr %25, align 4, !tbaa !11
  br label %411

409:                                              ; preds = %401
  %410 = load float, ptr %26, align 4, !tbaa !11
  br label %411

411:                                              ; preds = %409, %407
  %412 = phi float [ %408, %407 ], [ %410, %409 ]
  store float %412, ptr %25, align 4, !tbaa !11
  %413 = load float, ptr %25, align 4, !tbaa !11
  %414 = load ptr, ptr %15, align 8, !tbaa !5
  %415 = load float, ptr %414, align 4, !tbaa !11
  %416 = fcmp oge float %413, %415
  br i1 %416, label %417, label %419

417:                                              ; preds = %411
  %418 = load float, ptr %25, align 4, !tbaa !11
  br label %422

419:                                              ; preds = %411
  %420 = load ptr, ptr %15, align 8, !tbaa !5
  %421 = load float, ptr %420, align 4, !tbaa !11
  br label %422

422:                                              ; preds = %419, %417
  %423 = phi float [ %418, %417 ], [ %421, %419 ]
  store float %423, ptr %41, align 4, !tbaa !11
  %424 = load float, ptr %58, align 4, !tbaa !11
  %425 = fcmp oge float %424, 0.000000e+00
  br i1 %425, label %426, label %428

426:                                              ; preds = %422
  %427 = load float, ptr %58, align 4, !tbaa !11
  br label %431

428:                                              ; preds = %422
  %429 = load float, ptr %58, align 4, !tbaa !11
  %430 = fneg float %429
  br label %431

431:                                              ; preds = %428, %426
  %432 = phi float [ %427, %426 ], [ %430, %428 ]
  store float %432, ptr %25, align 4, !tbaa !11
  %433 = load float, ptr %60, align 4, !tbaa !11
  %434 = fcmp oge float %433, 0.000000e+00
  br i1 %434, label %435, label %437

435:                                              ; preds = %431
  %436 = load float, ptr %60, align 4, !tbaa !11
  br label %440

437:                                              ; preds = %431
  %438 = load float, ptr %60, align 4, !tbaa !11
  %439 = fneg float %438
  br label %440

440:                                              ; preds = %437, %435
  %441 = phi float [ %436, %435 ], [ %439, %437 ]
  store float %441, ptr %26, align 4, !tbaa !11
  %442 = load float, ptr %25, align 4, !tbaa !11
  %443 = load float, ptr %26, align 4, !tbaa !11
  %444 = fcmp oge float %442, %443
  br i1 %444, label %445, label %447

445:                                              ; preds = %440
  %446 = load float, ptr %25, align 4, !tbaa !11
  br label %449

447:                                              ; preds = %440
  %448 = load float, ptr %26, align 4, !tbaa !11
  br label %449

449:                                              ; preds = %447, %445
  %450 = phi float [ %446, %445 ], [ %448, %447 ]
  store float %450, ptr %42, align 4, !tbaa !11
  %451 = load float, ptr %42, align 4, !tbaa !11
  %452 = fdiv float 1.000000e+00, %451
  store float %452, ptr %62, align 4, !tbaa !11
  %453 = load float, ptr %62, align 4, !tbaa !11
  %454 = load float, ptr %58, align 4, !tbaa !11
  %455 = fmul float %454, %453
  store float %455, ptr %58, align 4, !tbaa !11
  %456 = load float, ptr %62, align 4, !tbaa !11
  %457 = load float, ptr %59, align 4, !tbaa !11
  %458 = fmul float %457, %456
  store float %458, ptr %59, align 4, !tbaa !11
  %459 = load float, ptr %62, align 4, !tbaa !11
  %460 = load float, ptr %60, align 4, !tbaa !11
  %461 = fmul float %460, %459
  store float %461, ptr %60, align 4, !tbaa !11
  %462 = load float, ptr %58, align 4, !tbaa !11
  %463 = fdiv float 1.000000e+00, %462
  store float %463, ptr %37, align 4, !tbaa !11
  %464 = load float, ptr %60, align 4, !tbaa !11
  %465 = fdiv float 1.000000e+00, %464
  store float %465, ptr %38, align 4, !tbaa !11
  %466 = load float, ptr %54, align 4, !tbaa !11
  %467 = load float, ptr %37, align 4, !tbaa !11
  %468 = fmul float %466, %467
  store float %468, ptr %52, align 4, !tbaa !11
  %469 = load float, ptr %57, align 4, !tbaa !11
  %470 = load float, ptr %38, align 4, !tbaa !11
  %471 = fmul float %469, %470
  store float %471, ptr %53, align 4, !tbaa !11
  %472 = load float, ptr %52, align 4, !tbaa !11
  %473 = fcmp oge float %472, 0.000000e+00
  br i1 %473, label %474, label %476

474:                                              ; preds = %449
  %475 = load float, ptr %52, align 4, !tbaa !11
  br label %479

476:                                              ; preds = %449
  %477 = load float, ptr %52, align 4, !tbaa !11
  %478 = fneg float %477
  br label %479

479:                                              ; preds = %476, %474
  %480 = phi float [ %475, %474 ], [ %478, %476 ]
  %481 = load float, ptr %53, align 4, !tbaa !11
  %482 = fcmp oge float %481, 0.000000e+00
  br i1 %482, label %483, label %485

483:                                              ; preds = %479
  %484 = load float, ptr %53, align 4, !tbaa !11
  br label %488

485:                                              ; preds = %479
  %486 = load float, ptr %53, align 4, !tbaa !11
  %487 = fneg float %486
  br label %488

488:                                              ; preds = %485, %483
  %489 = phi float [ %484, %483 ], [ %487, %485 ]
  %490 = fcmp ole float %480, %489
  br i1 %490, label %491, label %517

491:                                              ; preds = %488
  %492 = load float, ptr %55, align 4, !tbaa !11
  %493 = load float, ptr %52, align 4, !tbaa !11
  %494 = load float, ptr %59, align 4, !tbaa !11
  %495 = fneg float %493
  %496 = call float @llvm.fmuladd.f32(float %495, float %494, float %492)
  store float %496, ptr %70, align 4, !tbaa !11
  %497 = load float, ptr %57, align 4, !tbaa !11
  %498 = load float, ptr %52, align 4, !tbaa !11
  %499 = load float, ptr %60, align 4, !tbaa !11
  %500 = fneg float %498
  %501 = call float @llvm.fmuladd.f32(float %500, float %499, float %497)
  store float %501, ptr %71, align 4, !tbaa !11
  %502 = load float, ptr %56, align 4, !tbaa !11
  %503 = load float, ptr %37, align 4, !tbaa !11
  %504 = load float, ptr %38, align 4, !tbaa !11
  %505 = fmul float %503, %504
  %506 = fmul float %502, %505
  store float %506, ptr %65, align 4, !tbaa !11
  %507 = load float, ptr %71, align 4, !tbaa !11
  %508 = load float, ptr %38, align 4, !tbaa !11
  %509 = load float, ptr %65, align 4, !tbaa !11
  %510 = load float, ptr %59, align 4, !tbaa !11
  %511 = fmul float %509, %510
  %512 = fneg float %511
  %513 = call float @llvm.fmuladd.f32(float %507, float %508, float %512)
  store float %513, ptr %73, align 4, !tbaa !11
  %514 = load float, ptr %73, align 4, !tbaa !11
  %515 = fmul float %514, 5.000000e-01
  store float %515, ptr %63, align 4, !tbaa !11
  %516 = load float, ptr %52, align 4, !tbaa !11
  store float %516, ptr %43, align 4, !tbaa !11
  br label %543

517:                                              ; preds = %488
  %518 = load float, ptr %55, align 4, !tbaa !11
  %519 = load float, ptr %53, align 4, !tbaa !11
  %520 = load float, ptr %59, align 4, !tbaa !11
  %521 = fneg float %519
  %522 = call float @llvm.fmuladd.f32(float %521, float %520, float %518)
  store float %522, ptr %70, align 4, !tbaa !11
  %523 = load float, ptr %54, align 4, !tbaa !11
  %524 = load float, ptr %53, align 4, !tbaa !11
  %525 = load float, ptr %58, align 4, !tbaa !11
  %526 = fneg float %524
  %527 = call float @llvm.fmuladd.f32(float %526, float %525, float %523)
  store float %527, ptr %69, align 4, !tbaa !11
  %528 = load float, ptr %56, align 4, !tbaa !11
  %529 = load float, ptr %37, align 4, !tbaa !11
  %530 = load float, ptr %38, align 4, !tbaa !11
  %531 = fmul float %529, %530
  %532 = fmul float %528, %531
  store float %532, ptr %65, align 4, !tbaa !11
  %533 = load float, ptr %65, align 4, !tbaa !11
  %534 = fneg float %533
  %535 = load float, ptr %59, align 4, !tbaa !11
  %536 = fmul float %534, %535
  store float %536, ptr %73, align 4, !tbaa !11
  %537 = load float, ptr %69, align 4, !tbaa !11
  %538 = load float, ptr %37, align 4, !tbaa !11
  %539 = load float, ptr %73, align 4, !tbaa !11
  %540 = call float @llvm.fmuladd.f32(float %537, float %538, float %539)
  %541 = fmul float %540, 5.000000e-01
  store float %541, ptr %63, align 4, !tbaa !11
  %542 = load float, ptr %53, align 4, !tbaa !11
  store float %542, ptr %43, align 4, !tbaa !11
  br label %543

543:                                              ; preds = %517, %491
  %544 = load float, ptr %65, align 4, !tbaa !11
  %545 = load float, ptr %70, align 4, !tbaa !11
  %546 = fmul float %544, %545
  store float %546, ptr %64, align 4, !tbaa !11
  %547 = load float, ptr %63, align 4, !tbaa !11
  %548 = load float, ptr %49, align 4, !tbaa !11
  %549 = fmul float %547, %548
  store float %549, ptr %25, align 4, !tbaa !11
  %550 = load float, ptr %25, align 4, !tbaa !11
  %551 = fcmp oge float %550, 0.000000e+00
  br i1 %551, label %552, label %554

552:                                              ; preds = %543
  %553 = load float, ptr %25, align 4, !tbaa !11
  br label %557

554:                                              ; preds = %543
  %555 = load float, ptr %25, align 4, !tbaa !11
  %556 = fneg float %555
  br label %557

557:                                              ; preds = %554, %552
  %558 = phi float [ %553, %552 ], [ %556, %554 ]
  %559 = fcmp oge float %558, 1.000000e+00
  br i1 %559, label %560, label %586

560:                                              ; preds = %557
  %561 = load float, ptr %49, align 4, !tbaa !11
  %562 = load float, ptr %63, align 4, !tbaa !11
  %563 = fmul float %561, %562
  store float %563, ptr %25, align 4, !tbaa !11
  %564 = load float, ptr %25, align 4, !tbaa !11
  %565 = load float, ptr %25, align 4, !tbaa !11
  %566 = load float, ptr %64, align 4, !tbaa !11
  %567 = load ptr, ptr %15, align 8, !tbaa !5
  %568 = load float, ptr %567, align 4, !tbaa !11
  %569 = fmul float %566, %568
  %570 = call float @llvm.fmuladd.f32(float %564, float %565, float %569)
  store float %570, ptr %39, align 4, !tbaa !11
  %571 = load float, ptr %39, align 4, !tbaa !11
  %572 = fcmp oge float %571, 0.000000e+00
  br i1 %572, label %573, label %575

573:                                              ; preds = %560
  %574 = load float, ptr %39, align 4, !tbaa !11
  br label %578

575:                                              ; preds = %560
  %576 = load float, ptr %39, align 4, !tbaa !11
  %577 = fneg float %576
  br label %578

578:                                              ; preds = %575, %573
  %579 = phi float [ %574, %573 ], [ %577, %575 ]
  %580 = fpext float %579 to double
  %581 = call double @sqrt(double noundef %580) #4
  %582 = load float, ptr %50, align 4, !tbaa !11
  %583 = fpext float %582 to double
  %584 = fmul double %581, %583
  %585 = fptrunc double %584 to float
  store float %585, ptr %36, align 4, !tbaa !11
  br label %647

586:                                              ; preds = %557
  %587 = load float, ptr %63, align 4, !tbaa !11
  store float %587, ptr %25, align 4, !tbaa !11
  %588 = load float, ptr %25, align 4, !tbaa !11
  %589 = load float, ptr %25, align 4, !tbaa !11
  %590 = load float, ptr %64, align 4, !tbaa !11
  %591 = fcmp oge float %590, 0.000000e+00
  br i1 %591, label %592, label %594

592:                                              ; preds = %586
  %593 = load float, ptr %64, align 4, !tbaa !11
  br label %597

594:                                              ; preds = %586
  %595 = load float, ptr %64, align 4, !tbaa !11
  %596 = fneg float %595
  br label %597

597:                                              ; preds = %594, %592
  %598 = phi float [ %593, %592 ], [ %596, %594 ]
  %599 = call float @llvm.fmuladd.f32(float %588, float %589, float %598)
  %600 = load ptr, ptr %15, align 8, !tbaa !5
  %601 = load float, ptr %600, align 4, !tbaa !11
  %602 = fcmp ole float %599, %601
  br i1 %602, label %603, label %628

603:                                              ; preds = %597
  %604 = load float, ptr %50, align 4, !tbaa !11
  %605 = load float, ptr %63, align 4, !tbaa !11
  %606 = fmul float %604, %605
  store float %606, ptr %25, align 4, !tbaa !11
  %607 = load float, ptr %25, align 4, !tbaa !11
  %608 = load float, ptr %25, align 4, !tbaa !11
  %609 = load float, ptr %64, align 4, !tbaa !11
  %610 = load float, ptr %67, align 4, !tbaa !11
  %611 = fmul float %609, %610
  %612 = call float @llvm.fmuladd.f32(float %607, float %608, float %611)
  store float %612, ptr %39, align 4, !tbaa !11
  %613 = load float, ptr %39, align 4, !tbaa !11
  %614 = fcmp oge float %613, 0.000000e+00
  br i1 %614, label %615, label %617

615:                                              ; preds = %603
  %616 = load float, ptr %39, align 4, !tbaa !11
  br label %620

617:                                              ; preds = %603
  %618 = load float, ptr %39, align 4, !tbaa !11
  %619 = fneg float %618
  br label %620

620:                                              ; preds = %617, %615
  %621 = phi float [ %616, %615 ], [ %619, %617 ]
  %622 = fpext float %621 to double
  %623 = call double @sqrt(double noundef %622) #4
  %624 = load float, ptr %49, align 4, !tbaa !11
  %625 = fpext float %624 to double
  %626 = fmul double %623, %625
  %627 = fptrunc double %626 to float
  store float %627, ptr %36, align 4, !tbaa !11
  br label %646

628:                                              ; preds = %597
  %629 = load float, ptr %63, align 4, !tbaa !11
  store float %629, ptr %25, align 4, !tbaa !11
  %630 = load float, ptr %25, align 4, !tbaa !11
  %631 = load float, ptr %25, align 4, !tbaa !11
  %632 = load float, ptr %64, align 4, !tbaa !11
  %633 = call float @llvm.fmuladd.f32(float %630, float %631, float %632)
  store float %633, ptr %39, align 4, !tbaa !11
  %634 = load float, ptr %39, align 4, !tbaa !11
  %635 = fcmp oge float %634, 0.000000e+00
  br i1 %635, label %636, label %638

636:                                              ; preds = %628
  %637 = load float, ptr %39, align 4, !tbaa !11
  br label %641

638:                                              ; preds = %628
  %639 = load float, ptr %39, align 4, !tbaa !11
  %640 = fneg float %639
  br label %641

641:                                              ; preds = %638, %636
  %642 = phi float [ %637, %636 ], [ %640, %638 ]
  %643 = fpext float %642 to double
  %644 = call double @sqrt(double noundef %643) #4
  %645 = fptrunc double %644 to float
  store float %645, ptr %36, align 4, !tbaa !11
  br label %646

646:                                              ; preds = %641, %620
  br label %647

647:                                              ; preds = %646, %578
  %648 = load float, ptr %39, align 4, !tbaa !11
  %649 = fcmp oge float %648, 0.000000e+00
  br i1 %649, label %653, label %650

650:                                              ; preds = %647
  %651 = load float, ptr %36, align 4, !tbaa !11
  %652 = fcmp oeq float %651, 0.000000e+00
  br i1 %652, label %653, label %808

653:                                              ; preds = %650, %647
  %654 = load float, ptr %63, align 4, !tbaa !11
  %655 = load float, ptr %63, align 4, !tbaa !11
  %656 = fcmp oge float %655, 0.000000e+00
  br i1 %656, label %657, label %667

657:                                              ; preds = %653
  %658 = load float, ptr %36, align 4, !tbaa !11
  %659 = fcmp oge float %658, 0.000000e+00
  br i1 %659, label %660, label %662

660:                                              ; preds = %657
  %661 = load float, ptr %36, align 4, !tbaa !11
  br label %665

662:                                              ; preds = %657
  %663 = load float, ptr %36, align 4, !tbaa !11
  %664 = fneg float %663
  br label %665

665:                                              ; preds = %662, %660
  %666 = phi float [ %661, %660 ], [ %664, %662 ]
  br label %678

667:                                              ; preds = %653
  %668 = load float, ptr %36, align 4, !tbaa !11
  %669 = fcmp oge float %668, 0.000000e+00
  br i1 %669, label %670, label %672

670:                                              ; preds = %667
  %671 = load float, ptr %36, align 4, !tbaa !11
  br label %675

672:                                              ; preds = %667
  %673 = load float, ptr %36, align 4, !tbaa !11
  %674 = fneg float %673
  br label %675

675:                                              ; preds = %672, %670
  %676 = phi float [ %671, %670 ], [ %674, %672 ]
  %677 = fneg float %676
  br label %678

678:                                              ; preds = %675, %665
  %679 = phi float [ %666, %665 ], [ %677, %675 ]
  %680 = fadd float %654, %679
  store float %680, ptr %72, align 4, !tbaa !11
  %681 = load float, ptr %63, align 4, !tbaa !11
  %682 = load float, ptr %63, align 4, !tbaa !11
  %683 = fcmp oge float %682, 0.000000e+00
  br i1 %683, label %684, label %694

684:                                              ; preds = %678
  %685 = load float, ptr %36, align 4, !tbaa !11
  %686 = fcmp oge float %685, 0.000000e+00
  br i1 %686, label %687, label %689

687:                                              ; preds = %684
  %688 = load float, ptr %36, align 4, !tbaa !11
  br label %692

689:                                              ; preds = %684
  %690 = load float, ptr %36, align 4, !tbaa !11
  %691 = fneg float %690
  br label %692

692:                                              ; preds = %689, %687
  %693 = phi float [ %688, %687 ], [ %691, %689 ]
  br label %705

694:                                              ; preds = %678
  %695 = load float, ptr %36, align 4, !tbaa !11
  %696 = fcmp oge float %695, 0.000000e+00
  br i1 %696, label %697, label %699

697:                                              ; preds = %694
  %698 = load float, ptr %36, align 4, !tbaa !11
  br label %702

699:                                              ; preds = %694
  %700 = load float, ptr %36, align 4, !tbaa !11
  %701 = fneg float %700
  br label %702

702:                                              ; preds = %699, %697
  %703 = phi float [ %698, %697 ], [ %701, %699 ]
  %704 = fneg float %703
  br label %705

705:                                              ; preds = %702, %692
  %706 = phi float [ %693, %692 ], [ %704, %702 ]
  %707 = fsub float %681, %706
  store float %707, ptr %31, align 4, !tbaa !11
  %708 = load float, ptr %43, align 4, !tbaa !11
  %709 = load float, ptr %72, align 4, !tbaa !11
  %710 = fadd float %708, %709
  store float %710, ptr %33, align 4, !tbaa !11
  %711 = load float, ptr %43, align 4, !tbaa !11
  %712 = load float, ptr %31, align 4, !tbaa !11
  %713 = fadd float %711, %712
  store float %713, ptr %68, align 4, !tbaa !11
  %714 = load float, ptr %68, align 4, !tbaa !11
  %715 = fcmp oge float %714, 0.000000e+00
  br i1 %715, label %716, label %718

716:                                              ; preds = %705
  %717 = load float, ptr %68, align 4, !tbaa !11
  br label %721

718:                                              ; preds = %705
  %719 = load float, ptr %68, align 4, !tbaa !11
  %720 = fneg float %719
  br label %721

721:                                              ; preds = %718, %716
  %722 = phi float [ %717, %716 ], [ %720, %718 ]
  store float %722, ptr %25, align 4, !tbaa !11
  %723 = load float, ptr %33, align 4, !tbaa !11
  %724 = fcmp oge float %723, 0.000000e+00
  br i1 %724, label %725, label %727

725:                                              ; preds = %721
  %726 = load float, ptr %33, align 4, !tbaa !11
  br label %730

727:                                              ; preds = %721
  %728 = load float, ptr %33, align 4, !tbaa !11
  %729 = fneg float %728
  br label %730

730:                                              ; preds = %727, %725
  %731 = phi float [ %726, %725 ], [ %729, %727 ]
  %732 = fmul float %731, 5.000000e-01
  %733 = load float, ptr %25, align 4, !tbaa !11
  %734 = load ptr, ptr %15, align 8, !tbaa !5
  %735 = load float, ptr %734, align 4, !tbaa !11
  %736 = fcmp oge float %733, %735
  br i1 %736, label %737, label %739

737:                                              ; preds = %730
  %738 = load float, ptr %25, align 4, !tbaa !11
  br label %742

739:                                              ; preds = %730
  %740 = load ptr, ptr %15, align 8, !tbaa !5
  %741 = load float, ptr %740, align 4, !tbaa !11
  br label %742

742:                                              ; preds = %739, %737
  %743 = phi float [ %738, %737 ], [ %741, %739 ]
  %744 = fcmp ogt float %732, %743
  br i1 %744, label %745, label %760

745:                                              ; preds = %742
  %746 = load float, ptr %54, align 4, !tbaa !11
  %747 = load float, ptr %57, align 4, !tbaa !11
  %748 = load float, ptr %55, align 4, !tbaa !11
  %749 = load float, ptr %56, align 4, !tbaa !11
  %750 = fmul float %748, %749
  %751 = fneg float %750
  %752 = call float @llvm.fmuladd.f32(float %746, float %747, float %751)
  %753 = load float, ptr %37, align 4, !tbaa !11
  %754 = load float, ptr %38, align 4, !tbaa !11
  %755 = fmul float %753, %754
  %756 = fmul float %752, %755
  store float %756, ptr %35, align 4, !tbaa !11
  %757 = load float, ptr %35, align 4, !tbaa !11
  %758 = load float, ptr %33, align 4, !tbaa !11
  %759 = fdiv float %757, %758
  store float %759, ptr %68, align 4, !tbaa !11
  br label %760

760:                                              ; preds = %745, %742
  %761 = load float, ptr %63, align 4, !tbaa !11
  %762 = load float, ptr %73, align 4, !tbaa !11
  %763 = fcmp ogt float %761, %762
  br i1 %763, label %764, label %785

764:                                              ; preds = %760
  %765 = load float, ptr %33, align 4, !tbaa !11
  %766 = load float, ptr %68, align 4, !tbaa !11
  %767 = fcmp ole float %765, %766
  br i1 %767, label %768, label %770

768:                                              ; preds = %764
  %769 = load float, ptr %33, align 4, !tbaa !11
  br label %772

770:                                              ; preds = %764
  %771 = load float, ptr %68, align 4, !tbaa !11
  br label %772

772:                                              ; preds = %770, %768
  %773 = phi float [ %769, %768 ], [ %771, %770 ]
  %774 = load ptr, ptr %18, align 8, !tbaa !5
  store float %773, ptr %774, align 4, !tbaa !11
  %775 = load float, ptr %33, align 4, !tbaa !11
  %776 = load float, ptr %68, align 4, !tbaa !11
  %777 = fcmp oge float %775, %776
  br i1 %777, label %778, label %780

778:                                              ; preds = %772
  %779 = load float, ptr %33, align 4, !tbaa !11
  br label %782

780:                                              ; preds = %772
  %781 = load float, ptr %68, align 4, !tbaa !11
  br label %782

782:                                              ; preds = %780, %778
  %783 = phi float [ %779, %778 ], [ %781, %780 ]
  %784 = load ptr, ptr %19, align 8, !tbaa !5
  store float %783, ptr %784, align 4, !tbaa !11
  br label %806

785:                                              ; preds = %760
  %786 = load float, ptr %33, align 4, !tbaa !11
  %787 = load float, ptr %68, align 4, !tbaa !11
  %788 = fcmp oge float %786, %787
  br i1 %788, label %789, label %791

789:                                              ; preds = %785
  %790 = load float, ptr %33, align 4, !tbaa !11
  br label %793

791:                                              ; preds = %785
  %792 = load float, ptr %68, align 4, !tbaa !11
  br label %793

793:                                              ; preds = %791, %789
  %794 = phi float [ %790, %789 ], [ %792, %791 ]
  %795 = load ptr, ptr %18, align 8, !tbaa !5
  store float %794, ptr %795, align 4, !tbaa !11
  %796 = load float, ptr %33, align 4, !tbaa !11
  %797 = load float, ptr %68, align 4, !tbaa !11
  %798 = fcmp ole float %796, %797
  br i1 %798, label %799, label %801

799:                                              ; preds = %793
  %800 = load float, ptr %33, align 4, !tbaa !11
  br label %803

801:                                              ; preds = %793
  %802 = load float, ptr %68, align 4, !tbaa !11
  br label %803

803:                                              ; preds = %801, %799
  %804 = phi float [ %800, %799 ], [ %802, %801 ]
  %805 = load ptr, ptr %19, align 8, !tbaa !5
  store float %804, ptr %805, align 4, !tbaa !11
  br label %806

806:                                              ; preds = %803, %782
  %807 = load ptr, ptr %20, align 8, !tbaa !5
  store float 0.000000e+00, ptr %807, align 4, !tbaa !11
  br label %818

808:                                              ; preds = %650
  %809 = load float, ptr %43, align 4, !tbaa !11
  %810 = load float, ptr %63, align 4, !tbaa !11
  %811 = fadd float %809, %810
  %812 = load ptr, ptr %18, align 8, !tbaa !5
  store float %811, ptr %812, align 4, !tbaa !11
  %813 = load ptr, ptr %18, align 8, !tbaa !5
  %814 = load float, ptr %813, align 4, !tbaa !11
  %815 = load ptr, ptr %19, align 8, !tbaa !5
  store float %814, ptr %815, align 4, !tbaa !11
  %816 = load float, ptr %36, align 4, !tbaa !11
  %817 = load ptr, ptr %20, align 8, !tbaa !5
  store float %816, ptr %817, align 4, !tbaa !11
  br label %818

818:                                              ; preds = %808, %806
  %819 = load float, ptr %42, align 4, !tbaa !11
  %820 = load ptr, ptr %15, align 8, !tbaa !5
  %821 = load float, ptr %820, align 4, !tbaa !11
  %822 = load float, ptr %61, align 4, !tbaa !11
  %823 = fcmp oge float 1.000000e+00, %822
  br i1 %823, label %824, label %825

824:                                              ; preds = %818
  br label %827

825:                                              ; preds = %818
  %826 = load float, ptr %61, align 4, !tbaa !11
  br label %827

827:                                              ; preds = %825, %824
  %828 = phi float [ 1.000000e+00, %824 ], [ %826, %825 ]
  %829 = fmul float %821, %828
  %830 = fmul float %819, %829
  store float %830, ptr %44, align 4, !tbaa !11
  %831 = load ptr, ptr %15, align 8, !tbaa !5
  %832 = load float, ptr %831, align 4, !tbaa !11
  %833 = load float, ptr %41, align 4, !tbaa !11
  %834 = fcmp oge float 1.000000e+00, %833
  br i1 %834, label %835, label %836

835:                                              ; preds = %827
  br label %838

836:                                              ; preds = %827
  %837 = load float, ptr %41, align 4, !tbaa !11
  br label %838

838:                                              ; preds = %836, %835
  %839 = phi float [ 1.000000e+00, %835 ], [ %837, %836 ]
  %840 = fmul float %832, %839
  store float %840, ptr %45, align 4, !tbaa !11
  %841 = load float, ptr %42, align 4, !tbaa !11
  %842 = load ptr, ptr %15, align 8, !tbaa !5
  %843 = load float, ptr %842, align 4, !tbaa !11
  %844 = fmul float %841, %843
  store float %844, ptr %46, align 4, !tbaa !11
  %845 = load float, ptr %61, align 4, !tbaa !11
  %846 = fcmp ole float %845, 1.000000e+00
  br i1 %846, label %847, label %866

847:                                              ; preds = %838
  %848 = load float, ptr %42, align 4, !tbaa !11
  %849 = fcmp ole float %848, 1.000000e+00
  br i1 %849, label %850, label %866

850:                                              ; preds = %847
  store float 1.000000e+00, ptr %25, align 4, !tbaa !11
  %851 = load float, ptr %61, align 4, !tbaa !11
  %852 = load ptr, ptr %15, align 8, !tbaa !5
  %853 = load float, ptr %852, align 4, !tbaa !11
  %854 = fdiv float %851, %853
  %855 = load float, ptr %42, align 4, !tbaa !11
  %856 = fmul float %854, %855
  store float %856, ptr %26, align 4, !tbaa !11
  %857 = load float, ptr %25, align 4, !tbaa !11
  %858 = load float, ptr %26, align 4, !tbaa !11
  %859 = fcmp ole float %857, %858
  br i1 %859, label %860, label %862

860:                                              ; preds = %850
  %861 = load float, ptr %25, align 4, !tbaa !11
  br label %864

862:                                              ; preds = %850
  %863 = load float, ptr %26, align 4, !tbaa !11
  br label %864

864:                                              ; preds = %862, %860
  %865 = phi float [ %861, %860 ], [ %863, %862 ]
  store float %865, ptr %47, align 4, !tbaa !11
  br label %867

866:                                              ; preds = %847, %838
  store float 1.000000e+00, ptr %47, align 4, !tbaa !11
  br label %867

867:                                              ; preds = %866, %864
  %868 = load float, ptr %61, align 4, !tbaa !11
  %869 = fcmp ole float %868, 1.000000e+00
  br i1 %869, label %873, label %870

870:                                              ; preds = %867
  %871 = load float, ptr %42, align 4, !tbaa !11
  %872 = fcmp ole float %871, 1.000000e+00
  br i1 %872, label %873, label %886

873:                                              ; preds = %870, %867
  store float 1.000000e+00, ptr %25, align 4, !tbaa !11
  %874 = load float, ptr %61, align 4, !tbaa !11
  %875 = load float, ptr %42, align 4, !tbaa !11
  %876 = fmul float %874, %875
  store float %876, ptr %26, align 4, !tbaa !11
  %877 = load float, ptr %25, align 4, !tbaa !11
  %878 = load float, ptr %26, align 4, !tbaa !11
  %879 = fcmp ole float %877, %878
  br i1 %879, label %880, label %882

880:                                              ; preds = %873
  %881 = load float, ptr %25, align 4, !tbaa !11
  br label %884

882:                                              ; preds = %873
  %883 = load float, ptr %26, align 4, !tbaa !11
  br label %884

884:                                              ; preds = %882, %880
  %885 = phi float [ %881, %880 ], [ %883, %882 ]
  store float %885, ptr %48, align 4, !tbaa !11
  br label %887

886:                                              ; preds = %870
  store float 1.000000e+00, ptr %48, align 4, !tbaa !11
  br label %887

887:                                              ; preds = %886, %884
  %888 = load ptr, ptr %18, align 8, !tbaa !5
  %889 = load float, ptr %888, align 4, !tbaa !11
  %890 = fcmp oge float %889, 0.000000e+00
  br i1 %890, label %891, label %894

891:                                              ; preds = %887
  %892 = load ptr, ptr %18, align 8, !tbaa !5
  %893 = load float, ptr %892, align 4, !tbaa !11
  br label %898

894:                                              ; preds = %887
  %895 = load ptr, ptr %18, align 8, !tbaa !5
  %896 = load float, ptr %895, align 4, !tbaa !11
  %897 = fneg float %896
  br label %898

898:                                              ; preds = %894, %891
  %899 = phi float [ %893, %891 ], [ %897, %894 ]
  %900 = load ptr, ptr %20, align 8, !tbaa !5
  %901 = load float, ptr %900, align 4, !tbaa !11
  %902 = fcmp oge float %901, 0.000000e+00
  br i1 %902, label %903, label %906

903:                                              ; preds = %898
  %904 = load ptr, ptr %20, align 8, !tbaa !5
  %905 = load float, ptr %904, align 4, !tbaa !11
  br label %910

906:                                              ; preds = %898
  %907 = load ptr, ptr %20, align 8, !tbaa !5
  %908 = load float, ptr %907, align 4, !tbaa !11
  %909 = fneg float %908
  br label %910

910:                                              ; preds = %906, %903
  %911 = phi float [ %905, %903 ], [ %909, %906 ]
  %912 = fadd float %899, %911
  store float %912, ptr %34, align 4, !tbaa !11
  %913 = load float, ptr %47, align 4, !tbaa !11
  store float %913, ptr %27, align 4, !tbaa !11
  %914 = load float, ptr %34, align 4, !tbaa !11
  %915 = load float, ptr %48, align 4, !tbaa !11
  %916 = fcmp oge float %914, %915
  br i1 %916, label %917, label %919

917:                                              ; preds = %910
  %918 = load float, ptr %34, align 4, !tbaa !11
  br label %921

919:                                              ; preds = %910
  %920 = load float, ptr %48, align 4, !tbaa !11
  br label %921

921:                                              ; preds = %919, %917
  %922 = phi float [ %918, %917 ], [ %920, %919 ]
  %923 = fmul float %922, 5.000000e-01
  store float %923, ptr %28, align 4, !tbaa !11
  %924 = load ptr, ptr %15, align 8, !tbaa !5
  %925 = load float, ptr %924, align 4, !tbaa !11
  %926 = load float, ptr %44, align 4, !tbaa !11
  %927 = fcmp oge float %925, %926
  br i1 %927, label %928, label %931

928:                                              ; preds = %921
  %929 = load ptr, ptr %15, align 8, !tbaa !5
  %930 = load float, ptr %929, align 4, !tbaa !11
  br label %933

931:                                              ; preds = %921
  %932 = load float, ptr %44, align 4, !tbaa !11
  br label %933

933:                                              ; preds = %931, %928
  %934 = phi float [ %930, %928 ], [ %932, %931 ]
  store float %934, ptr %25, align 4, !tbaa !11
  %935 = load float, ptr %34, align 4, !tbaa !11
  %936 = load float, ptr %45, align 4, !tbaa !11
  %937 = load float, ptr %46, align 4, !tbaa !11
  %938 = call float @llvm.fmuladd.f32(float %935, float %936, float %937)
  %939 = fmul float %938, 0x3FF0000A80000000
  store float %939, ptr %26, align 4, !tbaa !11
  %940 = load float, ptr %25, align 4, !tbaa !11
  %941 = load float, ptr %26, align 4, !tbaa !11
  %942 = fcmp oge float %940, %941
  br i1 %942, label %943, label %945

943:                                              ; preds = %933
  %944 = load float, ptr %25, align 4, !tbaa !11
  br label %947

945:                                              ; preds = %933
  %946 = load float, ptr %26, align 4, !tbaa !11
  br label %947

947:                                              ; preds = %945, %943
  %948 = phi float [ %944, %943 ], [ %946, %945 ]
  store float %948, ptr %25, align 4, !tbaa !11
  %949 = load float, ptr %27, align 4, !tbaa !11
  %950 = load float, ptr %28, align 4, !tbaa !11
  %951 = fcmp ole float %949, %950
  br i1 %951, label %952, label %954

952:                                              ; preds = %947
  %953 = load float, ptr %27, align 4, !tbaa !11
  br label %956

954:                                              ; preds = %947
  %955 = load float, ptr %28, align 4, !tbaa !11
  br label %956

956:                                              ; preds = %954, %952
  %957 = phi float [ %953, %952 ], [ %955, %954 ]
  store float %957, ptr %26, align 4, !tbaa !11
  %958 = load float, ptr %25, align 4, !tbaa !11
  %959 = load float, ptr %26, align 4, !tbaa !11
  %960 = fcmp oge float %958, %959
  br i1 %960, label %961, label %963

961:                                              ; preds = %956
  %962 = load float, ptr %25, align 4, !tbaa !11
  br label %965

963:                                              ; preds = %956
  %964 = load float, ptr %26, align 4, !tbaa !11
  br label %965

965:                                              ; preds = %963, %961
  %966 = phi float [ %962, %961 ], [ %964, %963 ]
  store float %966, ptr %51, align 4, !tbaa !11
  %967 = load float, ptr %51, align 4, !tbaa !11
  %968 = fcmp une float %967, 1.000000e+00
  br i1 %968, label %969, label %1040

969:                                              ; preds = %965
  %970 = load float, ptr %51, align 4, !tbaa !11
  %971 = fdiv float 1.000000e+00, %970
  store float %971, ptr %66, align 4, !tbaa !11
  %972 = load float, ptr %51, align 4, !tbaa !11
  %973 = fcmp ogt float %972, 1.000000e+00
  br i1 %973, label %974, label %997

974:                                              ; preds = %969
  %975 = load float, ptr %61, align 4, !tbaa !11
  %976 = load float, ptr %42, align 4, !tbaa !11
  %977 = fcmp oge float %975, %976
  br i1 %977, label %978, label %980

978:                                              ; preds = %974
  %979 = load float, ptr %61, align 4, !tbaa !11
  br label %982

980:                                              ; preds = %974
  %981 = load float, ptr %42, align 4, !tbaa !11
  br label %982

982:                                              ; preds = %980, %978
  %983 = phi float [ %979, %978 ], [ %981, %980 ]
  %984 = load float, ptr %66, align 4, !tbaa !11
  %985 = fmul float %983, %984
  %986 = load float, ptr %61, align 4, !tbaa !11
  %987 = load float, ptr %42, align 4, !tbaa !11
  %988 = fcmp ole float %986, %987
  br i1 %988, label %989, label %991

989:                                              ; preds = %982
  %990 = load float, ptr %61, align 4, !tbaa !11
  br label %993

991:                                              ; preds = %982
  %992 = load float, ptr %42, align 4, !tbaa !11
  br label %993

993:                                              ; preds = %991, %989
  %994 = phi float [ %990, %989 ], [ %992, %991 ]
  %995 = fmul float %985, %994
  %996 = load ptr, ptr %16, align 8, !tbaa !5
  store float %995, ptr %996, align 4, !tbaa !11
  br label %1020

997:                                              ; preds = %969
  %998 = load float, ptr %61, align 4, !tbaa !11
  %999 = load float, ptr %42, align 4, !tbaa !11
  %1000 = fcmp ole float %998, %999
  br i1 %1000, label %1001, label %1003

1001:                                             ; preds = %997
  %1002 = load float, ptr %61, align 4, !tbaa !11
  br label %1005

1003:                                             ; preds = %997
  %1004 = load float, ptr %42, align 4, !tbaa !11
  br label %1005

1005:                                             ; preds = %1003, %1001
  %1006 = phi float [ %1002, %1001 ], [ %1004, %1003 ]
  %1007 = load float, ptr %66, align 4, !tbaa !11
  %1008 = fmul float %1006, %1007
  %1009 = load float, ptr %61, align 4, !tbaa !11
  %1010 = load float, ptr %42, align 4, !tbaa !11
  %1011 = fcmp oge float %1009, %1010
  br i1 %1011, label %1012, label %1014

1012:                                             ; preds = %1005
  %1013 = load float, ptr %61, align 4, !tbaa !11
  br label %1016

1014:                                             ; preds = %1005
  %1015 = load float, ptr %42, align 4, !tbaa !11
  br label %1016

1016:                                             ; preds = %1014, %1012
  %1017 = phi float [ %1013, %1012 ], [ %1015, %1014 ]
  %1018 = fmul float %1008, %1017
  %1019 = load ptr, ptr %16, align 8, !tbaa !5
  store float %1018, ptr %1019, align 4, !tbaa !11
  br label %1020

1020:                                             ; preds = %1016, %993
  %1021 = load float, ptr %66, align 4, !tbaa !11
  %1022 = load ptr, ptr %18, align 8, !tbaa !5
  %1023 = load float, ptr %1022, align 4, !tbaa !11
  %1024 = fmul float %1023, %1021
  store float %1024, ptr %1022, align 4, !tbaa !11
  %1025 = load ptr, ptr %20, align 8, !tbaa !5
  %1026 = load float, ptr %1025, align 4, !tbaa !11
  %1027 = fcmp une float %1026, 0.000000e+00
  br i1 %1027, label %1028, label %1039

1028:                                             ; preds = %1020
  %1029 = load float, ptr %66, align 4, !tbaa !11
  %1030 = load ptr, ptr %20, align 8, !tbaa !5
  %1031 = load float, ptr %1030, align 4, !tbaa !11
  %1032 = fmul float %1031, %1029
  store float %1032, ptr %1030, align 4, !tbaa !11
  %1033 = load ptr, ptr %18, align 8, !tbaa !5
  %1034 = load float, ptr %1033, align 4, !tbaa !11
  %1035 = load ptr, ptr %19, align 8, !tbaa !5
  store float %1034, ptr %1035, align 4, !tbaa !11
  %1036 = load ptr, ptr %16, align 8, !tbaa !5
  %1037 = load float, ptr %1036, align 4, !tbaa !11
  %1038 = load ptr, ptr %17, align 8, !tbaa !5
  store float %1037, ptr %1038, align 4, !tbaa !11
  br label %1039

1039:                                             ; preds = %1028, %1020
  br label %1048

1040:                                             ; preds = %965
  %1041 = load float, ptr %61, align 4, !tbaa !11
  %1042 = load float, ptr %42, align 4, !tbaa !11
  %1043 = fmul float %1041, %1042
  %1044 = load ptr, ptr %16, align 8, !tbaa !5
  store float %1043, ptr %1044, align 4, !tbaa !11
  %1045 = load ptr, ptr %16, align 8, !tbaa !5
  %1046 = load float, ptr %1045, align 4, !tbaa !11
  %1047 = load ptr, ptr %17, align 8, !tbaa !5
  store float %1046, ptr %1047, align 4, !tbaa !11
  br label %1048

1048:                                             ; preds = %1040, %1039
  %1049 = load ptr, ptr %20, align 8, !tbaa !5
  %1050 = load float, ptr %1049, align 4, !tbaa !11
  %1051 = fcmp oeq float %1050, 0.000000e+00
  br i1 %1051, label %1052, label %1194

1052:                                             ; preds = %1048
  %1053 = load ptr, ptr %19, align 8, !tbaa !5
  %1054 = load float, ptr %1053, align 4, !tbaa !11
  %1055 = fcmp oge float %1054, 0.000000e+00
  br i1 %1055, label %1056, label %1059

1056:                                             ; preds = %1052
  %1057 = load ptr, ptr %19, align 8, !tbaa !5
  %1058 = load float, ptr %1057, align 4, !tbaa !11
  br label %1063

1059:                                             ; preds = %1052
  %1060 = load ptr, ptr %19, align 8, !tbaa !5
  %1061 = load float, ptr %1060, align 4, !tbaa !11
  %1062 = fneg float %1061
  br label %1063

1063:                                             ; preds = %1059, %1056
  %1064 = phi float [ %1058, %1056 ], [ %1062, %1059 ]
  store float %1064, ptr %29, align 4, !tbaa !11
  %1065 = load float, ptr %47, align 4, !tbaa !11
  store float %1065, ptr %27, align 4, !tbaa !11
  %1066 = load float, ptr %29, align 4, !tbaa !11
  %1067 = load float, ptr %48, align 4, !tbaa !11
  %1068 = fcmp oge float %1066, %1067
  br i1 %1068, label %1069, label %1071

1069:                                             ; preds = %1063
  %1070 = load float, ptr %29, align 4, !tbaa !11
  br label %1073

1071:                                             ; preds = %1063
  %1072 = load float, ptr %48, align 4, !tbaa !11
  br label %1073

1073:                                             ; preds = %1071, %1069
  %1074 = phi float [ %1070, %1069 ], [ %1072, %1071 ]
  %1075 = fmul float %1074, 5.000000e-01
  store float %1075, ptr %28, align 4, !tbaa !11
  %1076 = load ptr, ptr %15, align 8, !tbaa !5
  %1077 = load float, ptr %1076, align 4, !tbaa !11
  %1078 = load float, ptr %44, align 4, !tbaa !11
  %1079 = fcmp oge float %1077, %1078
  br i1 %1079, label %1080, label %1083

1080:                                             ; preds = %1073
  %1081 = load ptr, ptr %15, align 8, !tbaa !5
  %1082 = load float, ptr %1081, align 4, !tbaa !11
  br label %1085

1083:                                             ; preds = %1073
  %1084 = load float, ptr %44, align 4, !tbaa !11
  br label %1085

1085:                                             ; preds = %1083, %1080
  %1086 = phi float [ %1082, %1080 ], [ %1084, %1083 ]
  store float %1086, ptr %25, align 4, !tbaa !11
  %1087 = load ptr, ptr %19, align 8, !tbaa !5
  %1088 = load float, ptr %1087, align 4, !tbaa !11
  %1089 = fcmp oge float %1088, 0.000000e+00
  br i1 %1089, label %1090, label %1093

1090:                                             ; preds = %1085
  %1091 = load ptr, ptr %19, align 8, !tbaa !5
  %1092 = load float, ptr %1091, align 4, !tbaa !11
  br label %1097

1093:                                             ; preds = %1085
  %1094 = load ptr, ptr %19, align 8, !tbaa !5
  %1095 = load float, ptr %1094, align 4, !tbaa !11
  %1096 = fneg float %1095
  br label %1097

1097:                                             ; preds = %1093, %1090
  %1098 = phi float [ %1092, %1090 ], [ %1096, %1093 ]
  %1099 = load float, ptr %45, align 4, !tbaa !11
  %1100 = load float, ptr %46, align 4, !tbaa !11
  %1101 = call float @llvm.fmuladd.f32(float %1098, float %1099, float %1100)
  %1102 = fmul float %1101, 0x3FF0000A80000000
  store float %1102, ptr %26, align 4, !tbaa !11
  %1103 = load float, ptr %25, align 4, !tbaa !11
  %1104 = load float, ptr %26, align 4, !tbaa !11
  %1105 = fcmp oge float %1103, %1104
  br i1 %1105, label %1106, label %1108

1106:                                             ; preds = %1097
  %1107 = load float, ptr %25, align 4, !tbaa !11
  br label %1110

1108:                                             ; preds = %1097
  %1109 = load float, ptr %26, align 4, !tbaa !11
  br label %1110

1110:                                             ; preds = %1108, %1106
  %1111 = phi float [ %1107, %1106 ], [ %1109, %1108 ]
  store float %1111, ptr %25, align 4, !tbaa !11
  %1112 = load float, ptr %27, align 4, !tbaa !11
  %1113 = load float, ptr %28, align 4, !tbaa !11
  %1114 = fcmp ole float %1112, %1113
  br i1 %1114, label %1115, label %1117

1115:                                             ; preds = %1110
  %1116 = load float, ptr %27, align 4, !tbaa !11
  br label %1119

1117:                                             ; preds = %1110
  %1118 = load float, ptr %28, align 4, !tbaa !11
  br label %1119

1119:                                             ; preds = %1117, %1115
  %1120 = phi float [ %1116, %1115 ], [ %1118, %1117 ]
  store float %1120, ptr %26, align 4, !tbaa !11
  %1121 = load float, ptr %25, align 4, !tbaa !11
  %1122 = load float, ptr %26, align 4, !tbaa !11
  %1123 = fcmp oge float %1121, %1122
  br i1 %1123, label %1124, label %1126

1124:                                             ; preds = %1119
  %1125 = load float, ptr %25, align 4, !tbaa !11
  br label %1128

1126:                                             ; preds = %1119
  %1127 = load float, ptr %26, align 4, !tbaa !11
  br label %1128

1128:                                             ; preds = %1126, %1124
  %1129 = phi float [ %1125, %1124 ], [ %1127, %1126 ]
  store float %1129, ptr %51, align 4, !tbaa !11
  %1130 = load float, ptr %51, align 4, !tbaa !11
  %1131 = fcmp une float %1130, 1.000000e+00
  br i1 %1131, label %1132, label %1188

1132:                                             ; preds = %1128
  %1133 = load float, ptr %51, align 4, !tbaa !11
  %1134 = fdiv float 1.000000e+00, %1133
  store float %1134, ptr %66, align 4, !tbaa !11
  %1135 = load float, ptr %51, align 4, !tbaa !11
  %1136 = fcmp ogt float %1135, 1.000000e+00
  br i1 %1136, label %1137, label %1160

1137:                                             ; preds = %1132
  %1138 = load float, ptr %61, align 4, !tbaa !11
  %1139 = load float, ptr %42, align 4, !tbaa !11
  %1140 = fcmp oge float %1138, %1139
  br i1 %1140, label %1141, label %1143

1141:                                             ; preds = %1137
  %1142 = load float, ptr %61, align 4, !tbaa !11
  br label %1145

1143:                                             ; preds = %1137
  %1144 = load float, ptr %42, align 4, !tbaa !11
  br label %1145

1145:                                             ; preds = %1143, %1141
  %1146 = phi float [ %1142, %1141 ], [ %1144, %1143 ]
  %1147 = load float, ptr %66, align 4, !tbaa !11
  %1148 = fmul float %1146, %1147
  %1149 = load float, ptr %61, align 4, !tbaa !11
  %1150 = load float, ptr %42, align 4, !tbaa !11
  %1151 = fcmp ole float %1149, %1150
  br i1 %1151, label %1152, label %1154

1152:                                             ; preds = %1145
  %1153 = load float, ptr %61, align 4, !tbaa !11
  br label %1156

1154:                                             ; preds = %1145
  %1155 = load float, ptr %42, align 4, !tbaa !11
  br label %1156

1156:                                             ; preds = %1154, %1152
  %1157 = phi float [ %1153, %1152 ], [ %1155, %1154 ]
  %1158 = fmul float %1148, %1157
  %1159 = load ptr, ptr %17, align 8, !tbaa !5
  store float %1158, ptr %1159, align 4, !tbaa !11
  br label %1183

1160:                                             ; preds = %1132
  %1161 = load float, ptr %61, align 4, !tbaa !11
  %1162 = load float, ptr %42, align 4, !tbaa !11
  %1163 = fcmp ole float %1161, %1162
  br i1 %1163, label %1164, label %1166

1164:                                             ; preds = %1160
  %1165 = load float, ptr %61, align 4, !tbaa !11
  br label %1168

1166:                                             ; preds = %1160
  %1167 = load float, ptr %42, align 4, !tbaa !11
  br label %1168

1168:                                             ; preds = %1166, %1164
  %1169 = phi float [ %1165, %1164 ], [ %1167, %1166 ]
  %1170 = load float, ptr %66, align 4, !tbaa !11
  %1171 = fmul float %1169, %1170
  %1172 = load float, ptr %61, align 4, !tbaa !11
  %1173 = load float, ptr %42, align 4, !tbaa !11
  %1174 = fcmp oge float %1172, %1173
  br i1 %1174, label %1175, label %1177

1175:                                             ; preds = %1168
  %1176 = load float, ptr %61, align 4, !tbaa !11
  br label %1179

1177:                                             ; preds = %1168
  %1178 = load float, ptr %42, align 4, !tbaa !11
  br label %1179

1179:                                             ; preds = %1177, %1175
  %1180 = phi float [ %1176, %1175 ], [ %1178, %1177 ]
  %1181 = fmul float %1171, %1180
  %1182 = load ptr, ptr %17, align 8, !tbaa !5
  store float %1181, ptr %1182, align 4, !tbaa !11
  br label %1183

1183:                                             ; preds = %1179, %1156
  %1184 = load float, ptr %66, align 4, !tbaa !11
  %1185 = load ptr, ptr %19, align 8, !tbaa !5
  %1186 = load float, ptr %1185, align 4, !tbaa !11
  %1187 = fmul float %1186, %1184
  store float %1187, ptr %1185, align 4, !tbaa !11
  br label %1193

1188:                                             ; preds = %1128
  %1189 = load float, ptr %61, align 4, !tbaa !11
  %1190 = load float, ptr %42, align 4, !tbaa !11
  %1191 = fmul float %1189, %1190
  %1192 = load ptr, ptr %17, align 8, !tbaa !5
  store float %1191, ptr %1192, align 4, !tbaa !11
  br label %1193

1193:                                             ; preds = %1188, %1183
  br label %1194

1194:                                             ; preds = %1193, %1048
  call void @llvm.lifetime.end.p0(i64 4, ptr %73) #4
  call void @llvm.lifetime.end.p0(i64 4, ptr %72) #4
  call void @llvm.lifetime.end.p0(i64 4, ptr %71) #4
  call void @llvm.lifetime.end.p0(i64 4, ptr %70) #4
  call void @llvm.lifetime.end.p0(i64 4, ptr %69) #4
  call void @llvm.lifetime.end.p0(i64 4, ptr %68) #4
  call void @llvm.lifetime.end.p0(i64 4, ptr %67) #4
  call void @llvm.lifetime.end.p0(i64 4, ptr %66) #4
  call void @llvm.lifetime.end.p0(i64 4, ptr %65) #4
  call void @llvm.lifetime.end.p0(i64 4, ptr %64) #4
  call void @llvm.lifetime.end.p0(i64 4, ptr %63) #4
  call void @llvm.lifetime.end.p0(i64 4, ptr %62) #4
  call void @llvm.lifetime.end.p0(i64 4, ptr %61) #4
  call void @llvm.lifetime.end.p0(i64 4, ptr %60) #4
  call void @llvm.lifetime.end.p0(i64 4, ptr %59) #4
  call void @llvm.lifetime.end.p0(i64 4, ptr %58) #4
  call void @llvm.lifetime.end.p0(i64 4, ptr %57) #4
  call void @llvm.lifetime.end.p0(i64 4, ptr %56) #4
  call void @llvm.lifetime.end.p0(i64 4, ptr %55) #4
  call void @llvm.lifetime.end.p0(i64 4, ptr %54) #4
  call void @llvm.lifetime.end.p0(i64 4, ptr %53) #4
  call void @llvm.lifetime.end.p0(i64 4, ptr %52) #4
  call void @llvm.lifetime.end.p0(i64 4, ptr %51) #4
  call void @llvm.lifetime.end.p0(i64 4, ptr %50) #4
  call void @llvm.lifetime.end.p0(i64 4, ptr %49) #4
  call void @llvm.lifetime.end.p0(i64 4, ptr %48) #4
  call void @llvm.lifetime.end.p0(i64 4, ptr %47) #4
  call void @llvm.lifetime.end.p0(i64 4, ptr %46) #4
  call void @llvm.lifetime.end.p0(i64 4, ptr %45) #4
  call void @llvm.lifetime.end.p0(i64 4, ptr %44) #4
  call void @llvm.lifetime.end.p0(i64 4, ptr %43) #4
  call void @llvm.lifetime.end.p0(i64 4, ptr %42) #4
  call void @llvm.lifetime.end.p0(i64 4, ptr %41) #4
  call void @llvm.lifetime.end.p0(i64 4, ptr %40) #4
  call void @llvm.lifetime.end.p0(i64 4, ptr %39) #4
  call void @llvm.lifetime.end.p0(i64 4, ptr %38) #4
  call void @llvm.lifetime.end.p0(i64 4, ptr %37) #4
  call void @llvm.lifetime.end.p0(i64 4, ptr %36) #4
  call void @llvm.lifetime.end.p0(i64 4, ptr %35) #4
  call void @llvm.lifetime.end.p0(i64 4, ptr %34) #4
  call void @llvm.lifetime.end.p0(i64 4, ptr %33) #4
  call void @llvm.lifetime.end.p0(i64 4, ptr %32) #4
  call void @llvm.lifetime.end.p0(i64 4, ptr %31) #4
  call void @llvm.lifetime.end.p0(i64 4, ptr %30) #4
  call void @llvm.lifetime.end.p0(i64 4, ptr %29) #4
  call void @llvm.lifetime.end.p0(i64 4, ptr %28) #4
  call void @llvm.lifetime.end.p0(i64 4, ptr %27) #4
  call void @llvm.lifetime.end.p0(i64 4, ptr %26) #4
  call void @llvm.lifetime.end.p0(i64 4, ptr %25) #4
  call void @llvm.lifetime.end.p0(i64 4, ptr %24) #4
  call void @llvm.lifetime.end.p0(i64 4, ptr %23) #4
  call void @llvm.lifetime.end.p0(i64 4, ptr %22) #4
  call void @llvm.lifetime.end.p0(i64 4, ptr %21) #4
  ret void
}

; Function Attrs: nocallback nofree nosync nounwind willreturn memory(argmem: readwrite)
declare void @llvm.lifetime.start.p0(i64 immarg, ptr nocapture) #1

; Function Attrs: nounwind
declare double @sqrt(double noundef) #2

; Function Attrs: nocallback nofree nosync nounwind speculatable willreturn memory(none)
declare float @llvm.fmuladd.f32(float, float, float) #3

; Function Attrs: nocallback nofree nosync nounwind willreturn memory(argmem: readwrite)
declare void @llvm.lifetime.end.p0(i64 immarg, ptr nocapture) #1

attributes #0 = { nounwind uwtable "min-legal-vector-width"="0" "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #1 = { nocallback nofree nosync nounwind willreturn memory(argmem: readwrite) }
attributes #2 = { nounwind "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #3 = { nocallback nofree nosync nounwind speculatable willreturn memory(none) }
attributes #4 = { nounwind }

!llvm.module.flags = !{!0, !1, !2, !3}
!llvm.ident = !{!4}

!0 = !{i32 1, !"wchar_size", i32 4}
!1 = !{i32 8, !"PIC Level", i32 2}
!2 = !{i32 7, !"PIE Level", i32 2}
!3 = !{i32 7, !"uwtable", i32 2}
!4 = !{!"clang version 19.1.0 (git@github.com:llvm/llvm-project.git a4bf6cd7cfb1a1421ba92bca9d017b49936c55e4)"}
!5 = !{!6, !6, i64 0}
!6 = !{!"any pointer", !7, i64 0}
!7 = !{!"omnipotent char", !8, i64 0}
!8 = !{!"Simple C/C++ TBAA"}
!9 = !{!10, !10, i64 0}
!10 = !{!"int", !7, i64 0}
!11 = !{!12, !12, i64 0}
!12 = !{!"float", !7, i64 0}


; Optimized IR (opt -passes='default<O3>'):
target datalayout = "e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-i128:128-f80:128-n8:16:32:64-S128"
target triple = "x86_64-unknown-linux-gnu"

; Function Attrs: mustprogress nofree nounwind willreturn memory(write, argmem: readwrite) uwtable
define dso_local void @slag2_(ptr nocapture noundef readonly %0, ptr nocapture noundef readonly %1, ptr nocapture noundef readonly %2, ptr nocapture noundef readonly %3, ptr nocapture noundef readonly %4, ptr nocapture noundef %5, ptr nocapture noundef writeonly %6, ptr nocapture noundef %7, ptr nocapture noundef %8, ptr nocapture noundef %9) local_unnamed_addr #0 {
  %11 = load i32, ptr %1, align 4, !tbaa !5
  %narrow = xor i32 %11, -1
  %12 = sext i32 %narrow to i64
  %13 = getelementptr inbounds float, ptr %0, i64 %12
  %14 = load i32, ptr %3, align 4, !tbaa !5
  %narrow479 = xor i32 %14, -1
  %15 = sext i32 %narrow479 to i64
  %16 = getelementptr inbounds float, ptr %2, i64 %15
  %17 = load float, ptr %4, align 4, !tbaa !9
  %sqrtf = tail call float @sqrtf(float noundef %17) #1
  %18 = fdiv float 1.000000e+00, %sqrtf
  %19 = load float, ptr %4, align 4, !tbaa !9
  %20 = fdiv float 1.000000e+00, %19
  %21 = load float, ptr %0, align 4, !tbaa !9
  %22 = fcmp oge float %21, 0.000000e+00
  %23 = fneg float %21
  %24 = select i1 %22, float %21, float %23
  %25 = sext i32 %11 to i64
  %26 = getelementptr float, ptr %13, i64 %25
  %27 = getelementptr i8, ptr %26, i64 8
  %28 = load float, ptr %27, align 4, !tbaa !9
  %29 = fcmp oge float %28, 0.000000e+00
  %30 = fneg float %28
  %31 = select i1 %29, float %28, float %30
  %32 = fadd float %24, %31
  %33 = shl i32 %11, 1
  %34 = or disjoint i32 %33, 1
  %35 = sext i32 %34 to i64
  %36 = getelementptr inbounds float, ptr %13, i64 %35
  %37 = load <2 x float>, ptr %36, align 4, !tbaa !9
  %38 = fcmp oge <2 x float> %37, zeroinitializer
  %39 = fneg <2 x float> %37
  %40 = select <2 x i1> %38, <2 x float> %37, <2 x float> %39
  %shift = shufflevector <2 x float> %40, <2 x float> poison, <2 x i32> <i32 1, i32 poison>
  %41 = fadd <2 x float> %40, %shift
  %42 = extractelement <2 x float> %41, i64 0
  %43 = fcmp oge float %32, %42
  %44 = select i1 %43, float %32, float %42
  %.inv = fcmp oge float %44, %19
  %. = select i1 %.inv, float %44, float %19
  %45 = fdiv float 1.000000e+00, %.
  %46 = fmul float %28, %45
  %47 = extractelement <2 x float> %37, i64 0
  %48 = fmul float %47, %45
  %49 = insertelement <2 x float> %37, float %21, i64 0
  %50 = insertelement <2 x float> poison, float %45, i64 0
  %51 = shufflevector <2 x float> %50, <2 x float> poison, <2 x i32> zeroinitializer
  %52 = fmul <2 x float> %49, %51
  %53 = load float, ptr %2, align 4, !tbaa !9
  %54 = shl i32 %14, 1
  %55 = or disjoint i32 %54, 1
  %56 = sext i32 %55 to i64
  %57 = getelementptr inbounds float, ptr %16, i64 %56
  %58 = load float, ptr %57, align 4, !tbaa !9
  %59 = sext i32 %54 to i64
  %60 = getelementptr float, ptr %16, i64 %59
  %61 = getelementptr i8, ptr %60, i64 8
  %62 = load float, ptr %61, align 4, !tbaa !9
  %63 = fcmp oge float %53, 0.000000e+00
  %64 = fneg float %53
  %65 = select i1 %63, float %53, float %64
  %66 = fcmp oge float %58, 0.000000e+00
  %67 = fneg float %58
  %68 = select i1 %66, float %58, float %67
  %69 = fcmp oge float %65, %68
  %70 = select i1 %69, float %65, float %68
  %71 = fcmp oge float %62, 0.000000e+00
  %72 = fneg float %62
  %73 = select i1 %71, float %62, float %72
  %74 = fcmp oge float %70, %73
  %75 = select i1 %74, float %70, float %73
  %76 = fcmp oge float %75, %sqrtf
  %77 = select i1 %76, float %75, float %sqrtf
  %78 = fmul float %sqrtf, %77
  %79 = fcmp olt float %65, %78
  br i1 %79, label %80, label %87

80:                                               ; preds = %10
  %81 = fcmp oge float %78, 0.000000e+00
  %82 = fneg float %78
  br i1 %63, label %83, label %85

83:                                               ; preds = %80
  %84 = select i1 %81, float %78, float %82
  br label %87

85:                                               ; preds = %80
  %86 = select i1 %81, float %82, float %78
  br label %87

87:                                               ; preds = %83, %85, %10
  %.0449 = phi float [ %53, %10 ], [ %84, %83 ], [ %86, %85 ]
  %88 = fcmp olt float %73, %78
  br i1 %88, label %89, label %96

89:                                               ; preds = %87
  %90 = fcmp oge float %78, 0.000000e+00
  %91 = fneg float %78
  br i1 %71, label %92, label %94

92:                                               ; preds = %89
  %93 = select i1 %90, float %78, float %91
  br label %96

94:                                               ; preds = %89
  %95 = select i1 %90, float %91, float %78
  br label %96

96:                                               ; preds = %92, %94, %87
  %.0448 = phi float [ %62, %87 ], [ %93, %92 ], [ %95, %94 ]
  %97 = insertelement <2 x float> poison, float %.0449, i64 0
  %98 = insertelement <2 x float> %97, float %.0448, i64 1
  %99 = fcmp oge <2 x float> %98, zeroinitializer
  %100 = fneg <2 x float> %98
  %101 = select <2 x i1> %99, <2 x float> %98, <2 x float> %100
  %102 = extractelement <2 x float> %101, i64 1
  %103 = fadd float %68, %102
  %104 = extractelement <2 x float> %101, i64 0
  %105 = fcmp oge float %104, %103
  %106 = select i1 %105, float %104, float %103
  %.inv489 = fcmp oge float %106, %19
  %.487 = select i1 %.inv489, float %106, float %19
  %107 = fcmp oge float %104, %102
  %108 = select i1 %107, float %104, float %102
  %109 = fdiv float 1.000000e+00, %108
  %110 = fmul float %58, %109
  %111 = insertelement <2 x float> poison, float %109, i64 0
  %112 = shufflevector <2 x float> %111, <2 x float> poison, <2 x i32> zeroinitializer
  %113 = fmul <2 x float> %98, %112
  %114 = fdiv <2 x float> <float 1.000000e+00, float 1.000000e+00>, %113
  %115 = fmul <2 x float> %52, %114
  %116 = fcmp oge <2 x float> %115, zeroinitializer
  %117 = fneg <2 x float> %115
  %118 = select <2 x i1> %116, <2 x float> %115, <2 x float> %117
  %119 = extractelement <2 x float> %118, i64 0
  %120 = extractelement <2 x float> %118, i64 1
  %121 = fcmp ugt float %119, %120
  %122 = extractelement <2 x float> %114, i64 0
  %123 = extractelement <2 x float> %114, i64 1
  %124 = fmul float %122, %123
  %125 = fmul float %46, %124
  %126 = fneg float %125
  %127 = fmul float %110, %126
  br i1 %121, label %142, label %128

128:                                              ; preds = %96
  %129 = extractelement <2 x float> %52, i64 1
  %130 = extractelement <2 x float> %113, i64 1
  %131 = extractelement <2 x float> %117, i64 0
  %132 = tail call float @llvm.fmuladd.f32(float %131, float %130, float %129)
  %133 = insertelement <2 x float> poison, float %132, i64 0
  %134 = shufflevector <2 x float> %133, <2 x float> %117, <2 x i32> <i32 0, i32 2>
  %135 = shufflevector <2 x float> %114, <2 x float> poison, <2 x i32> <i32 1, i32 poison>
  %136 = insertelement <2 x float> %135, float %110, i64 1
  %137 = insertelement <2 x float> poison, float %127, i64 0
  %138 = insertelement <2 x float> %137, float %48, i64 1
  %139 = tail call <2 x float> @llvm.fmuladd.v2f32(<2 x float> %134, <2 x float> %136, <2 x float> %138)
  %140 = extractelement <2 x float> %139, i64 0
  %141 = extractelement <2 x float> %115, i64 0
  br label %153

142:                                              ; preds = %96
  %143 = extractelement <2 x float> %52, i64 0
  %144 = extractelement <2 x float> %113, i64 0
  %145 = extractelement <2 x float> %117, i64 1
  %146 = tail call float @llvm.fmuladd.f32(float %145, float %144, float %143)
  %147 = insertelement <2 x float> %117, float %146, i64 0
  %148 = insertelement <2 x float> %114, float %110, i64 1
  %149 = insertelement <2 x float> poison, float %127, i64 0
  %150 = insertelement <2 x float> %149, float %48, i64 1
  %151 = tail call <2 x float> @llvm.fmuladd.v2f32(<2 x float> %147, <2 x float> %148, <2 x float> %150)
  %152 = extractelement <2 x float> %115, i64 1
  br label %153

153:                                              ; preds = %142, %128
  %.0452 = phi float [ %141, %128 ], [ %152, %142 ]
  %.0 = phi float [ %140, %128 ], [ %127, %142 ]
  %154 = phi <2 x float> [ %139, %128 ], [ %151, %142 ]
  %155 = extractelement <2 x float> %154, i64 0
  %.0447 = fmul float %155, 5.000000e-01
  %156 = extractelement <2 x float> %154, i64 1
  %157 = fmul float %125, %156
  %158 = fmul float %sqrtf, %.0447
  %159 = fcmp oge float %158, 0.000000e+00
  %160 = fneg float %158
  %161 = select i1 %159, float %158, float %160
  %162 = fcmp ult float %161, 1.000000e+00
  br i1 %162, label %174, label %163

163:                                              ; preds = %153
  %164 = fmul float %19, %157
  %165 = tail call float @llvm.fmuladd.f32(float %158, float %158, float %164)
  %166 = fcmp oge float %165, 0.000000e+00
  %167 = fneg float %165
  %168 = select i1 %166, float %165, float %167
  %169 = fpext float %168 to double
  %170 = tail call double @sqrt(double noundef %169) #4
  %171 = fpext float %18 to double
  %172 = fmul double %170, %171
  %173 = fptrunc double %172 to float
  br label %197

174:                                              ; preds = %153
  %175 = fcmp oge float %157, 0.000000e+00
  %176 = fneg float %157
  %177 = select i1 %175, float %157, float %176
  %178 = tail call float @llvm.fmuladd.f32(float %.0447, float %.0447, float %177)
  %179 = fcmp ugt float %178, %19
  br i1 %179, label %192, label %180

180:                                              ; preds = %174
  %181 = fmul float %18, %.0447
  %182 = fmul float %20, %157
  %183 = tail call float @llvm.fmuladd.f32(float %181, float %181, float %182)
  %184 = fcmp oge float %183, 0.000000e+00
  %185 = fneg float %183
  %186 = select i1 %184, float %183, float %185
  %187 = fpext float %186 to double
  %188 = tail call double @sqrt(double noundef %187) #4
  %189 = fpext float %sqrtf to double
  %190 = fmul double %188, %189
  %191 = fptrunc double %190 to float
  br label %197

192:                                              ; preds = %174
  %193 = tail call float @llvm.fmuladd.f32(float %.0447, float %.0447, float %157)
  %194 = fcmp oge float %193, 0.000000e+00
  %195 = fneg float %193
  %196 = select i1 %194, float %193, float %195
  %sqrtf481 = tail call float @sqrtf(float noundef %196) #1
  br label %197

197:                                              ; preds = %180, %192, %163
  %.0451 = phi float [ %165, %163 ], [ %183, %180 ], [ %193, %192 ]
  %.0450 = phi float [ %173, %163 ], [ %191, %180 ], [ %sqrtf481, %192 ]
  %198 = fcmp oge float %.0451, 0.000000e+00
  %199 = fcmp oeq float %.0450, 0.000000e+00
  %or.cond = select i1 %198, i1 true, i1 %199
  br i1 %or.cond, label %200, label %242

200:                                              ; preds = %197
  %201 = fcmp ult float %.0447, 0.000000e+00
  %202 = fcmp oge float %.0450, 0.000000e+00
  %.0450.neg = fneg float %.0450
  br i1 %201, label %205, label %203

203:                                              ; preds = %200
  %204 = select i1 %202, float %.0450, float %.0450.neg
  br label %207

205:                                              ; preds = %200
  %206 = select i1 %202, float %.0450.neg, float %.0450
  br label %207

207:                                              ; preds = %205, %203
  %.pn = phi float [ %204, %203 ], [ %206, %205 ]
  %208 = fadd float %.0447, %.pn
  %209 = fsub float %.0447, %.pn
  %210 = fadd float %.0452, %208
  %211 = fadd float %.0452, %209
  %212 = fcmp oge float %211, 0.000000e+00
  %213 = fneg float %211
  %214 = select i1 %212, float %211, float %213
  %215 = fcmp oge float %210, 0.000000e+00
  %216 = fneg float %210
  %217 = select i1 %215, float %210, float %216
  %218 = fmul float %217, 5.000000e-01
  %219 = load float, ptr %4, align 4, !tbaa !9
  %.inv490 = fcmp oge float %214, %219
  %.488 = select i1 %.inv490, float %214, float %219
  %220 = fcmp ogt float %218, %.488
  br i1 %220, label %221, label %230

221:                                              ; preds = %207
  %222 = fneg float %48
  %223 = fmul float %46, %222
  %224 = extractelement <2 x float> %52, i64 0
  %225 = extractelement <2 x float> %52, i64 1
  %226 = tail call float @llvm.fmuladd.f32(float %224, float %225, float %223)
  %227 = fmul float %122, %123
  %228 = fmul float %226, %227
  %229 = fdiv float %228, %210
  br label %230

230:                                              ; preds = %221, %207
  %.0445 = phi float [ %229, %221 ], [ %211, %207 ]
  %231 = fcmp ogt float %.0447, %.0
  br i1 %231, label %232, label %237

232:                                              ; preds = %230
  %233 = fcmp ole float %210, %.0445
  %234 = select i1 %233, float %210, float %.0445
  store float %234, ptr %7, align 4, !tbaa !9
  %235 = fcmp oge float %210, %.0445
  %236 = select i1 %235, float %210, float %.0445
  br label %244

237:                                              ; preds = %230
  %238 = fcmp oge float %210, %.0445
  %239 = select i1 %238, float %210, float %.0445
  store float %239, ptr %7, align 4, !tbaa !9
  %240 = fcmp ole float %210, %.0445
  %241 = select i1 %240, float %210, float %.0445
  br label %244

242:                                              ; preds = %197
  %243 = fadd float %.0452, %.0447
  store float %243, ptr %7, align 4, !tbaa !9
  br label %244

244:                                              ; preds = %232, %237, %242
  %storemerge484 = phi float [ %243, %242 ], [ %241, %237 ], [ %236, %232 ]
  %storemerge = phi float [ %.0450, %242 ], [ 0.000000e+00, %237 ], [ 0.000000e+00, %232 ]
  store float %storemerge484, ptr %8, align 4, !tbaa !9
  store float %storemerge, ptr %9, align 4, !tbaa !9
  %245 = load float, ptr %4, align 4, !tbaa !9
  %246 = fcmp ole float %45, 1.000000e+00
  %247 = select i1 %246, float 1.000000e+00, float %45
  %248 = fmul float %247, %245
  %249 = fmul float %108, %248
  %250 = fcmp ole float %.487, 1.000000e+00
  %251 = select i1 %250, float 1.000000e+00, float %.487
  %252 = fmul float %251, %245
  %253 = fmul float %108, %245
  %254 = fcmp ole float %108, 1.000000e+00
  %or.cond3 = and i1 %246, %254
  br i1 %or.cond3, label %255, label %260

255:                                              ; preds = %244
  %256 = fdiv float %45, %245
  %257 = fmul float %108, %256
  %258 = fcmp oge float %257, 1.000000e+00
  %259 = select i1 %258, float 1.000000e+00, float %257
  br label %260

260:                                              ; preds = %244, %255
  %.0453 = phi float [ %259, %255 ], [ 1.000000e+00, %244 ]
  %or.cond5 = or i1 %246, %254
  br i1 %or.cond5, label %261, label %265

261:                                              ; preds = %260
  %262 = fmul float %45, %108
  %263 = fcmp oge float %262, 1.000000e+00
  %264 = select i1 %263, float 1.000000e+00, float %262
  br label %265

265:                                              ; preds = %260, %261
  %.0454 = phi float [ %264, %261 ], [ 1.000000e+00, %260 ]
  %266 = load float, ptr %7, align 4, !tbaa !9
  %267 = insertelement <2 x float> poison, float %storemerge, i64 0
  %268 = insertelement <2 x float> %267, float %266, i64 1
  %269 = fcmp ult <2 x float> %268, zeroinitializer
  %270 = fneg <2 x float> %268
  %271 = select <2 x i1> %269, <2 x float> %270, <2 x float> %268
  %shift500 = shufflevector <2 x float> %271, <2 x float> poison, <2 x i32> <i32 1, i32 poison>
  %272 = fadd <2 x float> %271, %shift500
  %273 = extractelement <2 x float> %272, i64 0
  %274 = fcmp oge float %273, %.0454
  %275 = select i1 %274, float %273, float %.0454
  %276 = fmul float %275, 5.000000e-01
  %.inv491 = fcmp oge float %245, %249
  %277 = select i1 %.inv491, float %245, float %249
  %278 = tail call float @llvm.fmuladd.f32(float %273, float %252, float %253)
  %279 = fmul float %278, 0x3FF0000A80000000
  %280 = fcmp oge float %277, %279
  %281 = select i1 %280, float %277, float %279
  %282 = fcmp ole float %.0453, %276
  %283 = select i1 %282, float %.0453, float %276
  %284 = fcmp oge float %281, %283
  %285 = select i1 %284, float %281, float %283
  %286 = fcmp une float %285, 1.000000e+00
  br i1 %286, label %287, label %309

287:                                              ; preds = %265
  %288 = fdiv float 1.000000e+00, %285
  %289 = fcmp ogt float %285, 1.000000e+00
  br i1 %289, label %290, label %294

290:                                              ; preds = %287
  %291 = fcmp oge float %45, %108
  %292 = select i1 %291, float %45, float %108
  %293 = fcmp ole float %45, %108
  br label %298

294:                                              ; preds = %287
  %295 = fcmp ole float %45, %108
  %296 = select i1 %295, float %45, float %108
  %297 = fcmp oge float %45, %108
  br label %298

298:                                              ; preds = %294, %290
  %.sink495 = phi i1 [ %297, %294 ], [ %293, %290 ]
  %.pn498 = phi float [ %296, %294 ], [ %292, %290 ]
  %.sink494 = fmul float %.pn498, %288
  %299 = select i1 %.sink495, float %45, float %108
  %300 = fmul float %299, %.sink494
  store float %300, ptr %5, align 4, !tbaa !9
  %301 = load float, ptr %7, align 4, !tbaa !9
  %302 = fmul float %288, %301
  store float %302, ptr %7, align 4, !tbaa !9
  %303 = load float, ptr %9, align 4, !tbaa !9
  %304 = fcmp une float %303, 0.000000e+00
  br i1 %304, label %305, label %311

305:                                              ; preds = %298
  %306 = fmul float %288, %303
  store float %306, ptr %9, align 4, !tbaa !9
  %307 = load float, ptr %7, align 4, !tbaa !9
  store float %307, ptr %8, align 4, !tbaa !9
  %308 = load float, ptr %5, align 4, !tbaa !9
  br label %thread-pre-split

309:                                              ; preds = %265
  %310 = fmul float %45, %108
  store float %310, ptr %5, align 4, !tbaa !9
  br label %thread-pre-split

thread-pre-split:                                 ; preds = %309, %305
  %storemerge492 = phi float [ %310, %309 ], [ %308, %305 ]
  store float %storemerge492, ptr %6, align 4, !tbaa !9
  %.pr = load float, ptr %9, align 4, !tbaa !9
  br label %311

311:                                              ; preds = %thread-pre-split, %298
  %312 = phi float [ %.pr, %thread-pre-split ], [ %303, %298 ]
  %313 = fcmp oeq float %312, 0.000000e+00
  br i1 %313, label %314, label %351

314:                                              ; preds = %311
  %315 = load float, ptr %8, align 4, !tbaa !9
  %316 = fcmp ult float %315, 0.000000e+00
  %317 = fneg float %315
  %318 = select i1 %316, float %317, float %315
  %319 = fcmp oge float %318, %.0454
  %320 = select i1 %319, float %318, float %.0454
  %321 = fmul float %320, 5.000000e-01
  %322 = load float, ptr %4, align 4, !tbaa !9
  %.inv493 = fcmp oge float %322, %249
  %323 = select i1 %.inv493, float %322, float %249
  %324 = tail call float @llvm.fmuladd.f32(float %318, float %252, float %253)
  %325 = fmul float %324, 0x3FF0000A80000000
  %326 = fcmp oge float %323, %325
  %327 = select i1 %326, float %323, float %325
  %328 = fcmp ole float %.0453, %321
  %329 = select i1 %328, float %.0453, float %321
  %330 = fcmp oge float %327, %329
  %331 = select i1 %330, float %327, float %329
  %332 = fcmp une float %331, 1.000000e+00
  br i1 %332, label %333, label %349

333:                                              ; preds = %314
  %334 = fdiv float 1.000000e+00, %331
  %335 = fcmp ogt float %331, 1.000000e+00
  br i1 %335, label %336, label %340

336:                                              ; preds = %333
  %337 = fcmp oge float %45, %108
  %338 = select i1 %337, float %45, float %108
  %339 = fcmp ole float %45, %108
  br label %344

340:                                              ; preds = %333
  %341 = fcmp ole float %45, %108
  %342 = select i1 %341, float %45, float %108
  %343 = fcmp oge float %45, %108
  br label %344

344:                                              ; preds = %340, %336
  %.sink497 = phi i1 [ %343, %340 ], [ %339, %336 ]
  %.pn499 = phi float [ %342, %340 ], [ %338, %336 ]
  %.sink496 = fmul float %.pn499, %334
  %345 = select i1 %.sink497, float %45, float %108
  %346 = fmul float %345, %.sink496
  store float %346, ptr %6, align 4, !tbaa !9
  %347 = load float, ptr %8, align 4, !tbaa !9
  %348 = fmul float %334, %347
  store float %348, ptr %8, align 4, !tbaa !9
  br label %351

349:                                              ; preds = %314
  %350 = fmul float %45, %108
  store float %350, ptr %6, align 4, !tbaa !9
  br label %351

351:                                              ; preds = %344, %349, %311
  ret void
}

; Function Attrs: mustprogress nofree nounwind willreturn memory(write)
declare double @sqrt(double noundef) local_unnamed_addr #1

; Function Attrs: mustprogress nocallback nofree nosync nounwind speculatable willreturn memory(none)
declare float @llvm.fmuladd.f32(float, float, float) #2

declare float @sqrtf(float) local_unnamed_addr

; Function Attrs: nocallback nofree nosync nounwind speculatable willreturn memory(none)
declare <2 x float> @llvm.fmuladd.v2f32(<2 x float>, <2 x float>, <2 x float>) #3

attributes #0 = { mustprogress nofree nounwind willreturn memory(write, argmem: readwrite) uwtable "min-legal-vector-width"="0" "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #1 = { mustprogress nofree nounwind willreturn memory(write) "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #2 = { mustprogress nocallback nofree nosync nounwind speculatable willreturn memory(none) }
attributes #3 = { nocallback nofree nosync nounwind speculatable willreturn memory(none) }
attributes #4 = { nounwind }

!llvm.module.flags = !{!0, !1, !2, !3}
!llvm.ident = !{!4}

!0 = !{i32 1, !"wchar_size", i32 4}
!1 = !{i32 8, !"PIC Level", i32 2}
!2 = !{i32 7, !"PIE Level", i32 2}
!3 = !{i32 7, !"uwtable", i32 2}
!4 = !{!"clang version 19.1.0 (git@github.com:llvm/llvm-project.git a4bf6cd7cfb1a1421ba92bca9d017b49936c55e4)"}
!5 = !{!6, !6, i64 0}
!6 = !{!"int", !7, i64 0}
!7 = !{!"omnipotent char", !8, i64 0}
!8 = !{!"Simple C/C++ TBAA"}
!9 = !{!10, !10, i64 0}
!10 = !{!"float", !7, i64 0}


; Effective O3 passes: EarlyCSEPass,GVNPass,GlobalOptPass,IPSCCPPass,InferFunctionAttrsPass,InstCombinePass,JumpThreadingPass,PostOrderFunctionAttrsPass,ReassociatePass,SLPVectorizerPass,SROAPass,SimplifyCFGPass,TailCallElimPass,VectorCombinePass