; LLVM IR from romerojosh/zefr :: src (gimmik_cpu)

; 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: nocallback nofree nosync nounwind willreturn memory(argmem: readwrite)
declare void @llvm.lifetime.start.p0(i64 immarg, ptr nocapture) #0

; Function Attrs: nocallback nofree nosync nounwind speculatable willreturn memory(none)
declare double @llvm.fmuladd.f64(double, double, double) #1

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

; Function Attrs: nounwind uwtable
define dso_local void @gimmik_mm_cpu_16172623018483788170_b1(i32 noundef %0, ptr noalias noundef %1, i32 noundef %2, ptr noalias noundef %3, i32 noundef %4) #2 {
  %6 = alloca i32, align 4
  %7 = alloca ptr, align 8
  %8 = alloca i32, align 4
  %9 = alloca ptr, align 8
  %10 = alloca i32, align 4
  %11 = alloca double, align 8
  %12 = alloca i32, align 4
  store i32 %0, ptr %6, align 4, !tbaa !5
  store ptr %1, ptr %7, align 8, !tbaa !9
  store i32 %2, ptr %8, align 4, !tbaa !5
  store ptr %3, ptr %9, align 8, !tbaa !9
  store i32 %4, ptr %10, align 4, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 8, ptr %11) #3
  call void @llvm.lifetime.start.p0(i64 4, ptr %12) #3
  store i32 0, ptr %12, align 4, !tbaa !5
  br label %13

13:                                               ; preds = %24603, %5
  %14 = load i32, ptr %12, align 4, !tbaa !5
  %15 = load i32, ptr %6, align 4, !tbaa !5
  %16 = icmp slt i32 %14, %15
  br i1 %16, label %18, label %17

17:                                               ; preds = %13
  call void @llvm.lifetime.end.p0(i64 4, ptr %12) #3
  br label %24606

18:                                               ; preds = %13
  %19 = load ptr, ptr %7, align 8, !tbaa !9
  %20 = load i32, ptr %12, align 4, !tbaa !5
  %21 = load i32, ptr %8, align 4, !tbaa !5
  %22 = mul nsw i32 0, %21
  %23 = add nsw i32 %20, %22
  %24 = sext i32 %23 to i64
  %25 = getelementptr inbounds double, ptr %19, i64 %24
  %26 = load double, ptr %25, align 8, !tbaa !11
  %27 = load ptr, ptr %7, align 8, !tbaa !9
  %28 = load i32, ptr %12, align 4, !tbaa !5
  %29 = load i32, ptr %8, align 4, !tbaa !5
  %30 = mul nsw i32 1, %29
  %31 = add nsw i32 %28, %30
  %32 = sext i32 %31 to i64
  %33 = getelementptr inbounds double, ptr %27, i64 %32
  %34 = load double, ptr %33, align 8, !tbaa !11
  %35 = fmul double 0xBC7C000000000000, %34
  %36 = call double @llvm.fmuladd.f64(double 0x3FF86DB962AC2966, double %26, double %35)
  %37 = load ptr, ptr %7, align 8, !tbaa !9
  %38 = load i32, ptr %12, align 4, !tbaa !5
  %39 = load i32, ptr %8, align 4, !tbaa !5
  %40 = mul nsw i32 2, %39
  %41 = add nsw i32 %38, %40
  %42 = sext i32 %41 to i64
  %43 = getelementptr inbounds double, ptr %37, i64 %42
  %44 = load double, ptr %43, align 8, !tbaa !11
  %45 = call double @llvm.fmuladd.f64(double 0xBC66000000000000, double %44, double %36)
  %46 = load ptr, ptr %7, align 8, !tbaa !9
  %47 = load i32, ptr %12, align 4, !tbaa !5
  %48 = load i32, ptr %8, align 4, !tbaa !5
  %49 = mul nsw i32 3, %48
  %50 = add nsw i32 %47, %49
  %51 = sext i32 %50 to i64
  %52 = getelementptr inbounds double, ptr %46, i64 %51
  %53 = load double, ptr %52, align 8, !tbaa !11
  %54 = call double @llvm.fmuladd.f64(double 0x3C73000000000001, double %53, double %45)
  %55 = load ptr, ptr %7, align 8, !tbaa !9
  %56 = load i32, ptr %12, align 4, !tbaa !5
  %57 = load i32, ptr %8, align 4, !tbaa !5
  %58 = mul nsw i32 4, %57
  %59 = add nsw i32 %56, %58
  %60 = sext i32 %59 to i64
  %61 = getelementptr inbounds double, ptr %55, i64 %60
  %62 = load double, ptr %61, align 8, !tbaa !11
  %63 = call double @llvm.fmuladd.f64(double 0x3C7C000000000000, double %62, double %54)
  %64 = load ptr, ptr %7, align 8, !tbaa !9
  %65 = load i32, ptr %12, align 4, !tbaa !5
  %66 = load i32, ptr %8, align 4, !tbaa !5
  %67 = mul nsw i32 5, %66
  %68 = add nsw i32 %65, %67
  %69 = sext i32 %68 to i64
  %70 = getelementptr inbounds double, ptr %64, i64 %69
  %71 = load double, ptr %70, align 8, !tbaa !11
  %72 = call double @llvm.fmuladd.f64(double 0x3C82000000000000, double %71, double %63)
  %73 = load ptr, ptr %7, align 8, !tbaa !9
  %74 = load i32, ptr %12, align 4, !tbaa !5
  %75 = load i32, ptr %8, align 4, !tbaa !5
  %76 = mul nsw i32 6, %75
  %77 = add nsw i32 %74, %76
  %78 = sext i32 %77 to i64
  %79 = getelementptr inbounds double, ptr %73, i64 %78
  %80 = load double, ptr %79, align 8, !tbaa !11
  %81 = call double @llvm.fmuladd.f64(double 0xBC8D000000000001, double %80, double %72)
  %82 = load ptr, ptr %7, align 8, !tbaa !9
  %83 = load i32, ptr %12, align 4, !tbaa !5
  %84 = load i32, ptr %8, align 4, !tbaa !5
  %85 = mul nsw i32 7, %84
  %86 = add nsw i32 %83, %85
  %87 = sext i32 %86 to i64
  %88 = getelementptr inbounds double, ptr %82, i64 %87
  %89 = load double, ptr %88, align 8, !tbaa !11
  %90 = call double @llvm.fmuladd.f64(double 0xBC64000000000000, double %89, double %81)
  %91 = load ptr, ptr %7, align 8, !tbaa !9
  %92 = load i32, ptr %12, align 4, !tbaa !5
  %93 = load i32, ptr %8, align 4, !tbaa !5
  %94 = mul nsw i32 8, %93
  %95 = add nsw i32 %92, %94
  %96 = sext i32 %95 to i64
  %97 = getelementptr inbounds double, ptr %91, i64 %96
  %98 = load double, ptr %97, align 8, !tbaa !11
  %99 = call double @llvm.fmuladd.f64(double 0x3C70000000000001, double %98, double %90)
  %100 = load ptr, ptr %7, align 8, !tbaa !9
  %101 = load i32, ptr %12, align 4, !tbaa !5
  %102 = load i32, ptr %8, align 4, !tbaa !5
  %103 = mul nsw i32 9, %102
  %104 = add nsw i32 %101, %103
  %105 = sext i32 %104 to i64
  %106 = getelementptr inbounds double, ptr %100, i64 %105
  %107 = load double, ptr %106, align 8, !tbaa !11
  %108 = call double @llvm.fmuladd.f64(double 0xBC60000000000000, double %107, double %99)
  %109 = load ptr, ptr %7, align 8, !tbaa !9
  %110 = load i32, ptr %12, align 4, !tbaa !5
  %111 = load i32, ptr %8, align 4, !tbaa !5
  %112 = mul nsw i32 10, %111
  %113 = add nsw i32 %110, %112
  %114 = sext i32 %113 to i64
  %115 = getelementptr inbounds double, ptr %109, i64 %114
  %116 = load double, ptr %115, align 8, !tbaa !11
  %117 = call double @llvm.fmuladd.f64(double 0xBFEA0946EB3057DC, double %116, double %108)
  %118 = load ptr, ptr %7, align 8, !tbaa !9
  %119 = load i32, ptr %12, align 4, !tbaa !5
  %120 = load i32, ptr %8, align 4, !tbaa !5
  %121 = mul nsw i32 11, %120
  %122 = add nsw i32 %119, %121
  %123 = sext i32 %122 to i64
  %124 = getelementptr inbounds double, ptr %118, i64 %123
  %125 = load double, ptr %124, align 8, !tbaa !11
  %126 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %125, double %117)
  %127 = load ptr, ptr %7, align 8, !tbaa !9
  %128 = load i32, ptr %12, align 4, !tbaa !5
  %129 = load i32, ptr %8, align 4, !tbaa !5
  %130 = mul nsw i32 12, %129
  %131 = add nsw i32 %128, %130
  %132 = sext i32 %131 to i64
  %133 = getelementptr inbounds double, ptr %127, i64 %132
  %134 = load double, ptr %133, align 8, !tbaa !11
  %135 = call double @llvm.fmuladd.f64(double 0xBC81000000000000, double %134, double %126)
  %136 = load ptr, ptr %7, align 8, !tbaa !9
  %137 = load i32, ptr %12, align 4, !tbaa !5
  %138 = load i32, ptr %8, align 4, !tbaa !5
  %139 = mul nsw i32 13, %138
  %140 = add nsw i32 %137, %139
  %141 = sext i32 %140 to i64
  %142 = getelementptr inbounds double, ptr %136, i64 %141
  %143 = load double, ptr %142, align 8, !tbaa !11
  %144 = call double @llvm.fmuladd.f64(double 0x3C76000000000001, double %143, double %135)
  %145 = load ptr, ptr %7, align 8, !tbaa !9
  %146 = load i32, ptr %12, align 4, !tbaa !5
  %147 = load i32, ptr %8, align 4, !tbaa !5
  %148 = mul nsw i32 15, %147
  %149 = add nsw i32 %146, %148
  %150 = sext i32 %149 to i64
  %151 = getelementptr inbounds double, ptr %145, i64 %150
  %152 = load double, ptr %151, align 8, !tbaa !11
  %153 = call double @llvm.fmuladd.f64(double 0x3C70000000000001, double %152, double %144)
  %154 = load ptr, ptr %7, align 8, !tbaa !9
  %155 = load i32, ptr %12, align 4, !tbaa !5
  %156 = load i32, ptr %8, align 4, !tbaa !5
  %157 = mul nsw i32 16, %156
  %158 = add nsw i32 %155, %157
  %159 = sext i32 %158 to i64
  %160 = getelementptr inbounds double, ptr %154, i64 %159
  %161 = load double, ptr %160, align 8, !tbaa !11
  %162 = call double @llvm.fmuladd.f64(double 0x3C97000000000000, double %161, double %153)
  %163 = load ptr, ptr %7, align 8, !tbaa !9
  %164 = load i32, ptr %12, align 4, !tbaa !5
  %165 = load i32, ptr %8, align 4, !tbaa !5
  %166 = mul nsw i32 17, %165
  %167 = add nsw i32 %164, %166
  %168 = sext i32 %167 to i64
  %169 = getelementptr inbounds double, ptr %163, i64 %168
  %170 = load double, ptr %169, align 8, !tbaa !11
  %171 = call double @llvm.fmuladd.f64(double 0x3C92000000000000, double %170, double %162)
  %172 = load ptr, ptr %7, align 8, !tbaa !9
  %173 = load i32, ptr %12, align 4, !tbaa !5
  %174 = load i32, ptr %8, align 4, !tbaa !5
  %175 = mul nsw i32 19, %174
  %176 = add nsw i32 %173, %175
  %177 = sext i32 %176 to i64
  %178 = getelementptr inbounds double, ptr %172, i64 %177
  %179 = load double, ptr %178, align 8, !tbaa !11
  %180 = call double @llvm.fmuladd.f64(double 0xBC88000000000000, double %179, double %171)
  %181 = load ptr, ptr %7, align 8, !tbaa !9
  %182 = load i32, ptr %12, align 4, !tbaa !5
  %183 = load i32, ptr %8, align 4, !tbaa !5
  %184 = mul nsw i32 20, %183
  %185 = add nsw i32 %182, %184
  %186 = sext i32 %185 to i64
  %187 = getelementptr inbounds double, ptr %181, i64 %186
  %188 = load double, ptr %187, align 8, !tbaa !11
  %189 = call double @llvm.fmuladd.f64(double 0x3FD9A613A5CEF639, double %188, double %180)
  %190 = load ptr, ptr %7, align 8, !tbaa !9
  %191 = load i32, ptr %12, align 4, !tbaa !5
  %192 = load i32, ptr %8, align 4, !tbaa !5
  %193 = mul nsw i32 21, %192
  %194 = add nsw i32 %191, %193
  %195 = sext i32 %194 to i64
  %196 = getelementptr inbounds double, ptr %190, i64 %195
  %197 = load double, ptr %196, align 8, !tbaa !11
  %198 = call double @llvm.fmuladd.f64(double 0x3C70000000000001, double %197, double %189)
  %199 = load ptr, ptr %7, align 8, !tbaa !9
  %200 = load i32, ptr %12, align 4, !tbaa !5
  %201 = load i32, ptr %8, align 4, !tbaa !5
  %202 = mul nsw i32 22, %201
  %203 = add nsw i32 %200, %202
  %204 = sext i32 %203 to i64
  %205 = getelementptr inbounds double, ptr %199, i64 %204
  %206 = load double, ptr %205, align 8, !tbaa !11
  %207 = call double @llvm.fmuladd.f64(double 0x3C64000000000000, double %206, double %198)
  %208 = load ptr, ptr %7, align 8, !tbaa !9
  %209 = load i32, ptr %12, align 4, !tbaa !5
  %210 = load i32, ptr %8, align 4, !tbaa !5
  %211 = mul nsw i32 23, %210
  %212 = add nsw i32 %209, %211
  %213 = sext i32 %212 to i64
  %214 = getelementptr inbounds double, ptr %208, i64 %213
  %215 = load double, ptr %214, align 8, !tbaa !11
  %216 = call double @llvm.fmuladd.f64(double 0x3C70000000000001, double %215, double %207)
  %217 = load ptr, ptr %7, align 8, !tbaa !9
  %218 = load i32, ptr %12, align 4, !tbaa !5
  %219 = load i32, ptr %8, align 4, !tbaa !5
  %220 = mul nsw i32 25, %219
  %221 = add nsw i32 %218, %220
  %222 = sext i32 %221 to i64
  %223 = getelementptr inbounds double, ptr %217, i64 %222
  %224 = load double, ptr %223, align 8, !tbaa !11
  %225 = call double @llvm.fmuladd.f64(double 0x3C70000000000001, double %224, double %216)
  %226 = load ptr, ptr %7, align 8, !tbaa !9
  %227 = load i32, ptr %12, align 4, !tbaa !5
  %228 = load i32, ptr %8, align 4, !tbaa !5
  %229 = mul nsw i32 26, %228
  %230 = add nsw i32 %227, %229
  %231 = sext i32 %230 to i64
  %232 = getelementptr inbounds double, ptr %226, i64 %231
  %233 = load double, ptr %232, align 8, !tbaa !11
  %234 = call double @llvm.fmuladd.f64(double 0xBC70000000000001, double %233, double %225)
  %235 = load ptr, ptr %7, align 8, !tbaa !9
  %236 = load i32, ptr %12, align 4, !tbaa !5
  %237 = load i32, ptr %8, align 4, !tbaa !5
  %238 = mul nsw i32 27, %237
  %239 = add nsw i32 %236, %238
  %240 = sext i32 %239 to i64
  %241 = getelementptr inbounds double, ptr %235, i64 %240
  %242 = load double, ptr %241, align 8, !tbaa !11
  %243 = call double @llvm.fmuladd.f64(double 0xBC93000000000000, double %242, double %234)
  %244 = load ptr, ptr %7, align 8, !tbaa !9
  %245 = load i32, ptr %12, align 4, !tbaa !5
  %246 = load i32, ptr %8, align 4, !tbaa !5
  %247 = mul nsw i32 28, %246
  %248 = add nsw i32 %245, %247
  %249 = sext i32 %248 to i64
  %250 = getelementptr inbounds double, ptr %244, i64 %249
  %251 = load double, ptr %250, align 8, !tbaa !11
  %252 = call double @llvm.fmuladd.f64(double 0xBC70000000000001, double %251, double %243)
  %253 = load ptr, ptr %7, align 8, !tbaa !9
  %254 = load i32, ptr %12, align 4, !tbaa !5
  %255 = load i32, ptr %8, align 4, !tbaa !5
  %256 = mul nsw i32 30, %255
  %257 = add nsw i32 %254, %256
  %258 = sext i32 %257 to i64
  %259 = getelementptr inbounds double, ptr %253, i64 %258
  %260 = load double, ptr %259, align 8, !tbaa !11
  %261 = call double @llvm.fmuladd.f64(double 0xBFBD29AD687BB056, double %260, double %252)
  %262 = load ptr, ptr %7, align 8, !tbaa !9
  %263 = load i32, ptr %12, align 4, !tbaa !5
  %264 = load i32, ptr %8, align 4, !tbaa !5
  %265 = mul nsw i32 31, %264
  %266 = add nsw i32 %263, %265
  %267 = sext i32 %266 to i64
  %268 = getelementptr inbounds double, ptr %262, i64 %267
  %269 = load double, ptr %268, align 8, !tbaa !11
  %270 = call double @llvm.fmuladd.f64(double 0x3C67FFFFFFFFFFFE, double %269, double %261)
  %271 = load ptr, ptr %7, align 8, !tbaa !9
  %272 = load i32, ptr %12, align 4, !tbaa !5
  %273 = load i32, ptr %8, align 4, !tbaa !5
  %274 = mul nsw i32 32, %273
  %275 = add nsw i32 %272, %274
  %276 = sext i32 %275 to i64
  %277 = getelementptr inbounds double, ptr %271, i64 %276
  %278 = load double, ptr %277, align 8, !tbaa !11
  %279 = call double @llvm.fmuladd.f64(double 0xBC48000000000001, double %278, double %270)
  %280 = load ptr, ptr %7, align 8, !tbaa !9
  %281 = load i32, ptr %12, align 4, !tbaa !5
  %282 = load i32, ptr %8, align 4, !tbaa !5
  %283 = mul nsw i32 33, %282
  %284 = add nsw i32 %281, %283
  %285 = sext i32 %284 to i64
  %286 = getelementptr inbounds double, ptr %280, i64 %285
  %287 = load double, ptr %286, align 8, !tbaa !11
  %288 = call double @llvm.fmuladd.f64(double 0xBC5C000000000000, double %287, double %279)
  %289 = load ptr, ptr %7, align 8, !tbaa !9
  %290 = load i32, ptr %12, align 4, !tbaa !5
  %291 = load i32, ptr %8, align 4, !tbaa !5
  %292 = mul nsw i32 34, %291
  %293 = add nsw i32 %290, %292
  %294 = sext i32 %293 to i64
  %295 = getelementptr inbounds double, ptr %289, i64 %294
  %296 = load double, ptr %295, align 8, !tbaa !11
  %297 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %296, double %288)
  %298 = load ptr, ptr %7, align 8, !tbaa !9
  %299 = load i32, ptr %12, align 4, !tbaa !5
  %300 = load i32, ptr %8, align 4, !tbaa !5
  %301 = mul nsw i32 35, %300
  %302 = add nsw i32 %299, %301
  %303 = sext i32 %302 to i64
  %304 = getelementptr inbounds double, ptr %298, i64 %303
  %305 = load double, ptr %304, align 8, !tbaa !11
  %306 = call double @llvm.fmuladd.f64(double 0xBC86000000000001, double %305, double %297)
  %307 = load ptr, ptr %7, align 8, !tbaa !9
  %308 = load i32, ptr %12, align 4, !tbaa !5
  %309 = load i32, ptr %8, align 4, !tbaa !5
  %310 = mul nsw i32 36, %309
  %311 = add nsw i32 %308, %310
  %312 = sext i32 %311 to i64
  %313 = getelementptr inbounds double, ptr %307, i64 %312
  %314 = load double, ptr %313, align 8, !tbaa !11
  %315 = call double @llvm.fmuladd.f64(double 0x3C81000000000000, double %314, double %306)
  %316 = load ptr, ptr %7, align 8, !tbaa !9
  %317 = load i32, ptr %12, align 4, !tbaa !5
  %318 = load i32, ptr %8, align 4, !tbaa !5
  %319 = mul nsw i32 37, %318
  %320 = add nsw i32 %317, %319
  %321 = sext i32 %320 to i64
  %322 = getelementptr inbounds double, ptr %316, i64 %321
  %323 = load double, ptr %322, align 8, !tbaa !11
  %324 = call double @llvm.fmuladd.f64(double 0x3C40000000000000, double %323, double %315)
  %325 = load ptr, ptr %7, align 8, !tbaa !9
  %326 = load i32, ptr %12, align 4, !tbaa !5
  %327 = load i32, ptr %8, align 4, !tbaa !5
  %328 = mul nsw i32 38, %327
  %329 = add nsw i32 %326, %328
  %330 = sext i32 %329 to i64
  %331 = getelementptr inbounds double, ptr %325, i64 %330
  %332 = load double, ptr %331, align 8, !tbaa !11
  %333 = call double @llvm.fmuladd.f64(double 0xBC60000000000000, double %332, double %324)
  %334 = load ptr, ptr %7, align 8, !tbaa !9
  %335 = load i32, ptr %12, align 4, !tbaa !5
  %336 = load i32, ptr %8, align 4, !tbaa !5
  %337 = mul nsw i32 39, %336
  %338 = add nsw i32 %335, %337
  %339 = sext i32 %338 to i64
  %340 = getelementptr inbounds double, ptr %334, i64 %339
  %341 = load double, ptr %340, align 8, !tbaa !11
  %342 = call double @llvm.fmuladd.f64(double 0xBC78000000000002, double %341, double %333)
  store double %342, ptr %11, align 8, !tbaa !11
  %343 = load double, ptr %11, align 8, !tbaa !11
  %344 = load ptr, ptr %9, align 8, !tbaa !9
  %345 = load i32, ptr %12, align 4, !tbaa !5
  %346 = load i32, ptr %10, align 4, !tbaa !5
  %347 = mul nsw i32 0, %346
  %348 = add nsw i32 %345, %347
  %349 = sext i32 %348 to i64
  %350 = getelementptr inbounds double, ptr %344, i64 %349
  %351 = load double, ptr %350, align 8, !tbaa !11
  %352 = fadd double %351, %343
  store double %352, ptr %350, align 8, !tbaa !11
  %353 = load ptr, ptr %7, align 8, !tbaa !9
  %354 = load i32, ptr %12, align 4, !tbaa !5
  %355 = load i32, ptr %8, align 4, !tbaa !5
  %356 = mul nsw i32 0, %355
  %357 = add nsw i32 %354, %356
  %358 = sext i32 %357 to i64
  %359 = getelementptr inbounds double, ptr %353, i64 %358
  %360 = load double, ptr %359, align 8, !tbaa !11
  %361 = load ptr, ptr %7, align 8, !tbaa !9
  %362 = load i32, ptr %12, align 4, !tbaa !5
  %363 = load i32, ptr %8, align 4, !tbaa !5
  %364 = mul nsw i32 1, %363
  %365 = add nsw i32 %362, %364
  %366 = sext i32 %365 to i64
  %367 = getelementptr inbounds double, ptr %361, i64 %366
  %368 = load double, ptr %367, align 8, !tbaa !11
  %369 = fmul double 0x3FF86DB962AC2966, %368
  %370 = call double @llvm.fmuladd.f64(double 0x3CBC000000000000, double %360, double %369)
  %371 = load ptr, ptr %7, align 8, !tbaa !9
  %372 = load i32, ptr %12, align 4, !tbaa !5
  %373 = load i32, ptr %8, align 4, !tbaa !5
  %374 = mul nsw i32 2, %373
  %375 = add nsw i32 %372, %374
  %376 = sext i32 %375 to i64
  %377 = getelementptr inbounds double, ptr %371, i64 %376
  %378 = load double, ptr %377, align 8, !tbaa !11
  %379 = call double @llvm.fmuladd.f64(double 0x3C98000000000000, double %378, double %370)
  %380 = load ptr, ptr %7, align 8, !tbaa !9
  %381 = load i32, ptr %12, align 4, !tbaa !5
  %382 = load i32, ptr %8, align 4, !tbaa !5
  %383 = mul nsw i32 3, %382
  %384 = add nsw i32 %381, %383
  %385 = sext i32 %384 to i64
  %386 = getelementptr inbounds double, ptr %380, i64 %385
  %387 = load double, ptr %386, align 8, !tbaa !11
  %388 = call double @llvm.fmuladd.f64(double 0xBCBB3FFFFFFFFFFF, double %387, double %379)
  %389 = load ptr, ptr %7, align 8, !tbaa !9
  %390 = load i32, ptr %12, align 4, !tbaa !5
  %391 = load i32, ptr %8, align 4, !tbaa !5
  %392 = mul nsw i32 4, %391
  %393 = add nsw i32 %390, %392
  %394 = sext i32 %393 to i64
  %395 = getelementptr inbounds double, ptr %389, i64 %394
  %396 = load double, ptr %395, align 8, !tbaa !11
  %397 = call double @llvm.fmuladd.f64(double 0x3CAC000000000000, double %396, double %388)
  %398 = load ptr, ptr %7, align 8, !tbaa !9
  %399 = load i32, ptr %12, align 4, !tbaa !5
  %400 = load i32, ptr %8, align 4, !tbaa !5
  %401 = mul nsw i32 5, %400
  %402 = add nsw i32 %399, %401
  %403 = sext i32 %402 to i64
  %404 = getelementptr inbounds double, ptr %398, i64 %403
  %405 = load double, ptr %404, align 8, !tbaa !11
  %406 = call double @llvm.fmuladd.f64(double 0x3C94000000000000, double %405, double %397)
  %407 = load ptr, ptr %7, align 8, !tbaa !9
  %408 = load i32, ptr %12, align 4, !tbaa !5
  %409 = load i32, ptr %8, align 4, !tbaa !5
  %410 = mul nsw i32 6, %409
  %411 = add nsw i32 %408, %410
  %412 = sext i32 %411 to i64
  %413 = getelementptr inbounds double, ptr %407, i64 %412
  %414 = load double, ptr %413, align 8, !tbaa !11
  %415 = call double @llvm.fmuladd.f64(double 0xBCA2FFFFFFFFFFFE, double %414, double %406)
  %416 = load ptr, ptr %7, align 8, !tbaa !9
  %417 = load i32, ptr %12, align 4, !tbaa !5
  %418 = load i32, ptr %8, align 4, !tbaa !5
  %419 = mul nsw i32 7, %418
  %420 = add nsw i32 %417, %419
  %421 = sext i32 %420 to i64
  %422 = getelementptr inbounds double, ptr %416, i64 %421
  %423 = load double, ptr %422, align 8, !tbaa !11
  %424 = call double @llvm.fmuladd.f64(double 0xBC9C000000000000, double %423, double %415)
  %425 = load ptr, ptr %7, align 8, !tbaa !9
  %426 = load i32, ptr %12, align 4, !tbaa !5
  %427 = load i32, ptr %8, align 4, !tbaa !5
  %428 = mul nsw i32 9, %427
  %429 = add nsw i32 %426, %428
  %430 = sext i32 %429 to i64
  %431 = getelementptr inbounds double, ptr %425, i64 %430
  %432 = load double, ptr %431, align 8, !tbaa !11
  %433 = call double @llvm.fmuladd.f64(double 0x3CA0000000000002, double %432, double %424)
  %434 = load ptr, ptr %7, align 8, !tbaa !9
  %435 = load i32, ptr %12, align 4, !tbaa !5
  %436 = load i32, ptr %8, align 4, !tbaa !5
  %437 = mul nsw i32 10, %436
  %438 = add nsw i32 %435, %437
  %439 = sext i32 %438 to i64
  %440 = getelementptr inbounds double, ptr %434, i64 %439
  %441 = load double, ptr %440, align 8, !tbaa !11
  %442 = call double @llvm.fmuladd.f64(double 0xBCB0000000000000, double %441, double %433)
  %443 = load ptr, ptr %7, align 8, !tbaa !9
  %444 = load i32, ptr %12, align 4, !tbaa !5
  %445 = load i32, ptr %8, align 4, !tbaa !5
  %446 = mul nsw i32 11, %445
  %447 = add nsw i32 %444, %446
  %448 = sext i32 %447 to i64
  %449 = getelementptr inbounds double, ptr %443, i64 %448
  %450 = load double, ptr %449, align 8, !tbaa !11
  %451 = call double @llvm.fmuladd.f64(double 0xBFEA0946EB3057DA, double %450, double %442)
  %452 = load ptr, ptr %7, align 8, !tbaa !9
  %453 = load i32, ptr %12, align 4, !tbaa !5
  %454 = load i32, ptr %8, align 4, !tbaa !5
  %455 = mul nsw i32 12, %454
  %456 = add nsw i32 %453, %455
  %457 = sext i32 %456 to i64
  %458 = getelementptr inbounds double, ptr %452, i64 %457
  %459 = load double, ptr %458, align 8, !tbaa !11
  %460 = call double @llvm.fmuladd.f64(double 0x3C92000000000000, double %459, double %451)
  %461 = load ptr, ptr %7, align 8, !tbaa !9
  %462 = load i32, ptr %12, align 4, !tbaa !5
  %463 = load i32, ptr %8, align 4, !tbaa !5
  %464 = mul nsw i32 13, %463
  %465 = add nsw i32 %462, %464
  %466 = sext i32 %465 to i64
  %467 = getelementptr inbounds double, ptr %461, i64 %466
  %468 = load double, ptr %467, align 8, !tbaa !11
  %469 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %468, double %460)
  %470 = load ptr, ptr %7, align 8, !tbaa !9
  %471 = load i32, ptr %12, align 4, !tbaa !5
  %472 = load i32, ptr %8, align 4, !tbaa !5
  %473 = mul nsw i32 14, %472
  %474 = add nsw i32 %471, %473
  %475 = sext i32 %474 to i64
  %476 = getelementptr inbounds double, ptr %470, i64 %475
  %477 = load double, ptr %476, align 8, !tbaa !11
  %478 = call double @llvm.fmuladd.f64(double 0xBCBE000000000000, double %477, double %469)
  %479 = load ptr, ptr %7, align 8, !tbaa !9
  %480 = load i32, ptr %12, align 4, !tbaa !5
  %481 = load i32, ptr %8, align 4, !tbaa !5
  %482 = mul nsw i32 16, %481
  %483 = add nsw i32 %480, %482
  %484 = sext i32 %483 to i64
  %485 = getelementptr inbounds double, ptr %479, i64 %484
  %486 = load double, ptr %485, align 8, !tbaa !11
  %487 = call double @llvm.fmuladd.f64(double 0x3CAE000000000002, double %486, double %478)
  %488 = load ptr, ptr %7, align 8, !tbaa !9
  %489 = load i32, ptr %12, align 4, !tbaa !5
  %490 = load i32, ptr %8, align 4, !tbaa !5
  %491 = mul nsw i32 17, %490
  %492 = add nsw i32 %489, %491
  %493 = sext i32 %492 to i64
  %494 = getelementptr inbounds double, ptr %488, i64 %493
  %495 = load double, ptr %494, align 8, !tbaa !11
  %496 = call double @llvm.fmuladd.f64(double 0x3CA0000000000002, double %495, double %487)
  %497 = load ptr, ptr %7, align 8, !tbaa !9
  %498 = load i32, ptr %12, align 4, !tbaa !5
  %499 = load i32, ptr %8, align 4, !tbaa !5
  %500 = mul nsw i32 18, %499
  %501 = add nsw i32 %498, %500
  %502 = sext i32 %501 to i64
  %503 = getelementptr inbounds double, ptr %497, i64 %502
  %504 = load double, ptr %503, align 8, !tbaa !11
  %505 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %504, double %496)
  %506 = load ptr, ptr %7, align 8, !tbaa !9
  %507 = load i32, ptr %12, align 4, !tbaa !5
  %508 = load i32, ptr %8, align 4, !tbaa !5
  %509 = mul nsw i32 19, %508
  %510 = add nsw i32 %507, %509
  %511 = sext i32 %510 to i64
  %512 = getelementptr inbounds double, ptr %506, i64 %511
  %513 = load double, ptr %512, align 8, !tbaa !11
  %514 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %513, double %505)
  %515 = load ptr, ptr %7, align 8, !tbaa !9
  %516 = load i32, ptr %12, align 4, !tbaa !5
  %517 = load i32, ptr %8, align 4, !tbaa !5
  %518 = mul nsw i32 20, %517
  %519 = add nsw i32 %516, %518
  %520 = sext i32 %519 to i64
  %521 = getelementptr inbounds double, ptr %515, i64 %520
  %522 = load double, ptr %521, align 8, !tbaa !11
  %523 = call double @llvm.fmuladd.f64(double 0xBCA0000000000002, double %522, double %514)
  %524 = load ptr, ptr %7, align 8, !tbaa !9
  %525 = load i32, ptr %12, align 4, !tbaa !5
  %526 = load i32, ptr %8, align 4, !tbaa !5
  %527 = mul nsw i32 21, %526
  %528 = add nsw i32 %525, %527
  %529 = sext i32 %528 to i64
  %530 = getelementptr inbounds double, ptr %524, i64 %529
  %531 = load double, ptr %530, align 8, !tbaa !11
  %532 = call double @llvm.fmuladd.f64(double 0x3FD9A613A5CEF63B, double %531, double %523)
  %533 = load ptr, ptr %7, align 8, !tbaa !9
  %534 = load i32, ptr %12, align 4, !tbaa !5
  %535 = load i32, ptr %8, align 4, !tbaa !5
  %536 = mul nsw i32 22, %535
  %537 = add nsw i32 %534, %536
  %538 = sext i32 %537 to i64
  %539 = getelementptr inbounds double, ptr %533, i64 %538
  %540 = load double, ptr %539, align 8, !tbaa !11
  %541 = call double @llvm.fmuladd.f64(double 0x3C92000000000000, double %540, double %532)
  %542 = load ptr, ptr %7, align 8, !tbaa !9
  %543 = load i32, ptr %12, align 4, !tbaa !5
  %544 = load i32, ptr %8, align 4, !tbaa !5
  %545 = mul nsw i32 23, %544
  %546 = add nsw i32 %543, %545
  %547 = sext i32 %546 to i64
  %548 = getelementptr inbounds double, ptr %542, i64 %547
  %549 = load double, ptr %548, align 8, !tbaa !11
  %550 = call double @llvm.fmuladd.f64(double 0xBC92000000000000, double %549, double %541)
  %551 = load ptr, ptr %7, align 8, !tbaa !9
  %552 = load i32, ptr %12, align 4, !tbaa !5
  %553 = load i32, ptr %8, align 4, !tbaa !5
  %554 = mul nsw i32 24, %553
  %555 = add nsw i32 %552, %554
  %556 = sext i32 %555 to i64
  %557 = getelementptr inbounds double, ptr %551, i64 %556
  %558 = load double, ptr %557, align 8, !tbaa !11
  %559 = call double @llvm.fmuladd.f64(double 0x3C7FFFFFFFFFFFFF, double %558, double %550)
  %560 = load ptr, ptr %7, align 8, !tbaa !9
  %561 = load i32, ptr %12, align 4, !tbaa !5
  %562 = load i32, ptr %8, align 4, !tbaa !5
  %563 = mul nsw i32 25, %562
  %564 = add nsw i32 %561, %563
  %565 = sext i32 %564 to i64
  %566 = getelementptr inbounds double, ptr %560, i64 %565
  %567 = load double, ptr %566, align 8, !tbaa !11
  %568 = call double @llvm.fmuladd.f64(double 0xBCA8000000000001, double %567, double %559)
  %569 = load ptr, ptr %7, align 8, !tbaa !9
  %570 = load i32, ptr %12, align 4, !tbaa !5
  %571 = load i32, ptr %8, align 4, !tbaa !5
  %572 = mul nsw i32 26, %571
  %573 = add nsw i32 %570, %572
  %574 = sext i32 %573 to i64
  %575 = getelementptr inbounds double, ptr %569, i64 %574
  %576 = load double, ptr %575, align 8, !tbaa !11
  %577 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %576, double %568)
  %578 = load ptr, ptr %7, align 8, !tbaa !9
  %579 = load i32, ptr %12, align 4, !tbaa !5
  %580 = load i32, ptr %8, align 4, !tbaa !5
  %581 = mul nsw i32 27, %580
  %582 = add nsw i32 %579, %581
  %583 = sext i32 %582 to i64
  %584 = getelementptr inbounds double, ptr %578, i64 %583
  %585 = load double, ptr %584, align 8, !tbaa !11
  %586 = call double @llvm.fmuladd.f64(double 0x3CA2000000000000, double %585, double %577)
  %587 = load ptr, ptr %7, align 8, !tbaa !9
  %588 = load i32, ptr %12, align 4, !tbaa !5
  %589 = load i32, ptr %8, align 4, !tbaa !5
  %590 = mul nsw i32 28, %589
  %591 = add nsw i32 %588, %590
  %592 = sext i32 %591 to i64
  %593 = getelementptr inbounds double, ptr %587, i64 %592
  %594 = load double, ptr %593, align 8, !tbaa !11
  %595 = call double @llvm.fmuladd.f64(double 0xBCB0000000000000, double %594, double %586)
  %596 = load ptr, ptr %7, align 8, !tbaa !9
  %597 = load i32, ptr %12, align 4, !tbaa !5
  %598 = load i32, ptr %8, align 4, !tbaa !5
  %599 = mul nsw i32 29, %598
  %600 = add nsw i32 %597, %599
  %601 = sext i32 %600 to i64
  %602 = getelementptr inbounds double, ptr %596, i64 %601
  %603 = load double, ptr %602, align 8, !tbaa !11
  %604 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %603, double %595)
  %605 = load ptr, ptr %7, align 8, !tbaa !9
  %606 = load i32, ptr %12, align 4, !tbaa !5
  %607 = load i32, ptr %8, align 4, !tbaa !5
  %608 = mul nsw i32 30, %607
  %609 = add nsw i32 %606, %608
  %610 = sext i32 %609 to i64
  %611 = getelementptr inbounds double, ptr %605, i64 %610
  %612 = load double, ptr %611, align 8, !tbaa !11
  %613 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %612, double %604)
  %614 = load ptr, ptr %7, align 8, !tbaa !9
  %615 = load i32, ptr %12, align 4, !tbaa !5
  %616 = load i32, ptr %8, align 4, !tbaa !5
  %617 = mul nsw i32 31, %616
  %618 = add nsw i32 %615, %617
  %619 = sext i32 %618 to i64
  %620 = getelementptr inbounds double, ptr %614, i64 %619
  %621 = load double, ptr %620, align 8, !tbaa !11
  %622 = call double @llvm.fmuladd.f64(double 0xBFBD29AD687BB05D, double %621, double %613)
  %623 = load ptr, ptr %7, align 8, !tbaa !9
  %624 = load i32, ptr %12, align 4, !tbaa !5
  %625 = load i32, ptr %8, align 4, !tbaa !5
  %626 = mul nsw i32 32, %625
  %627 = add nsw i32 %624, %626
  %628 = sext i32 %627 to i64
  %629 = getelementptr inbounds double, ptr %623, i64 %628
  %630 = load double, ptr %629, align 8, !tbaa !11
  %631 = call double @llvm.fmuladd.f64(double 0x3C50000000000000, double %630, double %622)
  %632 = load ptr, ptr %7, align 8, !tbaa !9
  %633 = load i32, ptr %12, align 4, !tbaa !5
  %634 = load i32, ptr %8, align 4, !tbaa !5
  %635 = mul nsw i32 33, %634
  %636 = add nsw i32 %633, %635
  %637 = sext i32 %636 to i64
  %638 = getelementptr inbounds double, ptr %632, i64 %637
  %639 = load double, ptr %638, align 8, !tbaa !11
  %640 = call double @llvm.fmuladd.f64(double 0x3CAB800000000001, double %639, double %631)
  %641 = load ptr, ptr %7, align 8, !tbaa !9
  %642 = load i32, ptr %12, align 4, !tbaa !5
  %643 = load i32, ptr %8, align 4, !tbaa !5
  %644 = mul nsw i32 34, %643
  %645 = add nsw i32 %642, %644
  %646 = sext i32 %645 to i64
  %647 = getelementptr inbounds double, ptr %641, i64 %646
  %648 = load double, ptr %647, align 8, !tbaa !11
  %649 = call double @llvm.fmuladd.f64(double 0xBCA0000000000002, double %648, double %640)
  %650 = load ptr, ptr %7, align 8, !tbaa !9
  %651 = load i32, ptr %12, align 4, !tbaa !5
  %652 = load i32, ptr %8, align 4, !tbaa !5
  %653 = mul nsw i32 35, %652
  %654 = add nsw i32 %651, %653
  %655 = sext i32 %654 to i64
  %656 = getelementptr inbounds double, ptr %650, i64 %655
  %657 = load double, ptr %656, align 8, !tbaa !11
  %658 = call double @llvm.fmuladd.f64(double 0x3C7FFFFFFFFFFFFF, double %657, double %649)
  %659 = load ptr, ptr %7, align 8, !tbaa !9
  %660 = load i32, ptr %12, align 4, !tbaa !5
  %661 = load i32, ptr %8, align 4, !tbaa !5
  %662 = mul nsw i32 36, %661
  %663 = add nsw i32 %660, %662
  %664 = sext i32 %663 to i64
  %665 = getelementptr inbounds double, ptr %659, i64 %664
  %666 = load double, ptr %665, align 8, !tbaa !11
  %667 = call double @llvm.fmuladd.f64(double 0x3C78000000000002, double %666, double %658)
  %668 = load ptr, ptr %7, align 8, !tbaa !9
  %669 = load i32, ptr %12, align 4, !tbaa !5
  %670 = load i32, ptr %8, align 4, !tbaa !5
  %671 = mul nsw i32 37, %670
  %672 = add nsw i32 %669, %671
  %673 = sext i32 %672 to i64
  %674 = getelementptr inbounds double, ptr %668, i64 %673
  %675 = load double, ptr %674, align 8, !tbaa !11
  %676 = call double @llvm.fmuladd.f64(double 0xBC94000000000000, double %675, double %667)
  %677 = load ptr, ptr %7, align 8, !tbaa !9
  %678 = load i32, ptr %12, align 4, !tbaa !5
  %679 = load i32, ptr %8, align 4, !tbaa !5
  %680 = mul nsw i32 38, %679
  %681 = add nsw i32 %678, %680
  %682 = sext i32 %681 to i64
  %683 = getelementptr inbounds double, ptr %677, i64 %682
  %684 = load double, ptr %683, align 8, !tbaa !11
  %685 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %684, double %676)
  %686 = load ptr, ptr %7, align 8, !tbaa !9
  %687 = load i32, ptr %12, align 4, !tbaa !5
  %688 = load i32, ptr %8, align 4, !tbaa !5
  %689 = mul nsw i32 39, %688
  %690 = add nsw i32 %687, %689
  %691 = sext i32 %690 to i64
  %692 = getelementptr inbounds double, ptr %686, i64 %691
  %693 = load double, ptr %692, align 8, !tbaa !11
  %694 = call double @llvm.fmuladd.f64(double 0xBC98000000000000, double %693, double %685)
  store double %694, ptr %11, align 8, !tbaa !11
  %695 = load double, ptr %11, align 8, !tbaa !11
  %696 = load ptr, ptr %9, align 8, !tbaa !9
  %697 = load i32, ptr %12, align 4, !tbaa !5
  %698 = load i32, ptr %10, align 4, !tbaa !5
  %699 = mul nsw i32 1, %698
  %700 = add nsw i32 %697, %699
  %701 = sext i32 %700 to i64
  %702 = getelementptr inbounds double, ptr %696, i64 %701
  %703 = load double, ptr %702, align 8, !tbaa !11
  %704 = fadd double %703, %695
  store double %704, ptr %702, align 8, !tbaa !11
  %705 = load ptr, ptr %7, align 8, !tbaa !9
  %706 = load i32, ptr %12, align 4, !tbaa !5
  %707 = load i32, ptr %8, align 4, !tbaa !5
  %708 = mul nsw i32 0, %707
  %709 = add nsw i32 %706, %708
  %710 = sext i32 %709 to i64
  %711 = getelementptr inbounds double, ptr %705, i64 %710
  %712 = load double, ptr %711, align 8, !tbaa !11
  %713 = load ptr, ptr %7, align 8, !tbaa !9
  %714 = load i32, ptr %12, align 4, !tbaa !5
  %715 = load i32, ptr %8, align 4, !tbaa !5
  %716 = mul nsw i32 1, %715
  %717 = add nsw i32 %714, %716
  %718 = sext i32 %717 to i64
  %719 = getelementptr inbounds double, ptr %713, i64 %718
  %720 = load double, ptr %719, align 8, !tbaa !11
  %721 = fmul double 0xBC90000000000000, %720
  %722 = call double @llvm.fmuladd.f64(double 0x3C9B000000000000, double %712, double %721)
  %723 = load ptr, ptr %7, align 8, !tbaa !9
  %724 = load i32, ptr %12, align 4, !tbaa !5
  %725 = load i32, ptr %8, align 4, !tbaa !5
  %726 = mul nsw i32 2, %725
  %727 = add nsw i32 %724, %726
  %728 = sext i32 %727 to i64
  %729 = getelementptr inbounds double, ptr %723, i64 %728
  %730 = load double, ptr %729, align 8, !tbaa !11
  %731 = call double @llvm.fmuladd.f64(double 0x3FF86DB962AC2966, double %730, double %722)
  %732 = load ptr, ptr %7, align 8, !tbaa !9
  %733 = load i32, ptr %12, align 4, !tbaa !5
  %734 = load i32, ptr %8, align 4, !tbaa !5
  %735 = mul nsw i32 3, %734
  %736 = add nsw i32 %733, %735
  %737 = sext i32 %736 to i64
  %738 = getelementptr inbounds double, ptr %732, i64 %737
  %739 = load double, ptr %738, align 8, !tbaa !11
  %740 = call double @llvm.fmuladd.f64(double 0x3C92C00000000000, double %739, double %731)
  %741 = load ptr, ptr %7, align 8, !tbaa !9
  %742 = load i32, ptr %12, align 4, !tbaa !5
  %743 = load i32, ptr %8, align 4, !tbaa !5
  %744 = mul nsw i32 4, %743
  %745 = add nsw i32 %742, %744
  %746 = sext i32 %745 to i64
  %747 = getelementptr inbounds double, ptr %741, i64 %746
  %748 = load double, ptr %747, align 8, !tbaa !11
  %749 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %748, double %740)
  %750 = load ptr, ptr %7, align 8, !tbaa !9
  %751 = load i32, ptr %12, align 4, !tbaa !5
  %752 = load i32, ptr %8, align 4, !tbaa !5
  %753 = mul nsw i32 5, %752
  %754 = add nsw i32 %751, %753
  %755 = sext i32 %754 to i64
  %756 = getelementptr inbounds double, ptr %750, i64 %755
  %757 = load double, ptr %756, align 8, !tbaa !11
  %758 = call double @llvm.fmuladd.f64(double 0xBC60000000000000, double %757, double %749)
  %759 = load ptr, ptr %7, align 8, !tbaa !9
  %760 = load i32, ptr %12, align 4, !tbaa !5
  %761 = load i32, ptr %8, align 4, !tbaa !5
  %762 = mul nsw i32 6, %761
  %763 = add nsw i32 %760, %762
  %764 = sext i32 %763 to i64
  %765 = getelementptr inbounds double, ptr %759, i64 %764
  %766 = load double, ptr %765, align 8, !tbaa !11
  %767 = call double @llvm.fmuladd.f64(double 0x3C9B000000000000, double %766, double %758)
  %768 = load ptr, ptr %7, align 8, !tbaa !9
  %769 = load i32, ptr %12, align 4, !tbaa !5
  %770 = load i32, ptr %8, align 4, !tbaa !5
  %771 = mul nsw i32 7, %770
  %772 = add nsw i32 %769, %771
  %773 = sext i32 %772 to i64
  %774 = getelementptr inbounds double, ptr %768, i64 %773
  %775 = load double, ptr %774, align 8, !tbaa !11
  %776 = call double @llvm.fmuladd.f64(double 0xBC8F000000000000, double %775, double %767)
  %777 = load ptr, ptr %7, align 8, !tbaa !9
  %778 = load i32, ptr %12, align 4, !tbaa !5
  %779 = load i32, ptr %8, align 4, !tbaa !5
  %780 = mul nsw i32 8, %779
  %781 = add nsw i32 %778, %780
  %782 = sext i32 %781 to i64
  %783 = getelementptr inbounds double, ptr %777, i64 %782
  %784 = load double, ptr %783, align 8, !tbaa !11
  %785 = call double @llvm.fmuladd.f64(double 0x3C92000000000000, double %784, double %776)
  %786 = load ptr, ptr %7, align 8, !tbaa !9
  %787 = load i32, ptr %12, align 4, !tbaa !5
  %788 = load i32, ptr %8, align 4, !tbaa !5
  %789 = mul nsw i32 9, %788
  %790 = add nsw i32 %787, %789
  %791 = sext i32 %790 to i64
  %792 = getelementptr inbounds double, ptr %786, i64 %791
  %793 = load double, ptr %792, align 8, !tbaa !11
  %794 = call double @llvm.fmuladd.f64(double 0xBC96000000000000, double %793, double %785)
  %795 = load ptr, ptr %7, align 8, !tbaa !9
  %796 = load i32, ptr %12, align 4, !tbaa !5
  %797 = load i32, ptr %8, align 4, !tbaa !5
  %798 = mul nsw i32 10, %797
  %799 = add nsw i32 %796, %798
  %800 = sext i32 %799 to i64
  %801 = getelementptr inbounds double, ptr %795, i64 %800
  %802 = load double, ptr %801, align 8, !tbaa !11
  %803 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %802, double %794)
  %804 = load ptr, ptr %7, align 8, !tbaa !9
  %805 = load i32, ptr %12, align 4, !tbaa !5
  %806 = load i32, ptr %8, align 4, !tbaa !5
  %807 = mul nsw i32 11, %806
  %808 = add nsw i32 %805, %807
  %809 = sext i32 %808 to i64
  %810 = getelementptr inbounds double, ptr %804, i64 %809
  %811 = load double, ptr %810, align 8, !tbaa !11
  %812 = call double @llvm.fmuladd.f64(double 0xBCB5000000000000, double %811, double %803)
  %813 = load ptr, ptr %7, align 8, !tbaa !9
  %814 = load i32, ptr %12, align 4, !tbaa !5
  %815 = load i32, ptr %8, align 4, !tbaa !5
  %816 = mul nsw i32 12, %815
  %817 = add nsw i32 %814, %816
  %818 = sext i32 %817 to i64
  %819 = getelementptr inbounds double, ptr %813, i64 %818
  %820 = load double, ptr %819, align 8, !tbaa !11
  %821 = call double @llvm.fmuladd.f64(double 0xBFEA0946EB3057DC, double %820, double %812)
  %822 = load ptr, ptr %7, align 8, !tbaa !9
  %823 = load i32, ptr %12, align 4, !tbaa !5
  %824 = load i32, ptr %8, align 4, !tbaa !5
  %825 = mul nsw i32 13, %824
  %826 = add nsw i32 %823, %825
  %827 = sext i32 %826 to i64
  %828 = getelementptr inbounds double, ptr %822, i64 %827
  %829 = load double, ptr %828, align 8, !tbaa !11
  %830 = call double @llvm.fmuladd.f64(double 0xBC85000000000000, double %829, double %821)
  %831 = load ptr, ptr %7, align 8, !tbaa !9
  %832 = load i32, ptr %12, align 4, !tbaa !5
  %833 = load i32, ptr %8, align 4, !tbaa !5
  %834 = mul nsw i32 14, %833
  %835 = add nsw i32 %832, %834
  %836 = sext i32 %835 to i64
  %837 = getelementptr inbounds double, ptr %831, i64 %836
  %838 = load double, ptr %837, align 8, !tbaa !11
  %839 = call double @llvm.fmuladd.f64(double 0x3CC1000000000000, double %838, double %830)
  %840 = load ptr, ptr %7, align 8, !tbaa !9
  %841 = load i32, ptr %12, align 4, !tbaa !5
  %842 = load i32, ptr %8, align 4, !tbaa !5
  %843 = mul nsw i32 15, %842
  %844 = add nsw i32 %841, %843
  %845 = sext i32 %844 to i64
  %846 = getelementptr inbounds double, ptr %840, i64 %845
  %847 = load double, ptr %846, align 8, !tbaa !11
  %848 = call double @llvm.fmuladd.f64(double 0xBCB1800000000000, double %847, double %839)
  %849 = load ptr, ptr %7, align 8, !tbaa !9
  %850 = load i32, ptr %12, align 4, !tbaa !5
  %851 = load i32, ptr %8, align 4, !tbaa !5
  %852 = mul nsw i32 16, %851
  %853 = add nsw i32 %850, %852
  %854 = sext i32 %853 to i64
  %855 = getelementptr inbounds double, ptr %849, i64 %854
  %856 = load double, ptr %855, align 8, !tbaa !11
  %857 = call double @llvm.fmuladd.f64(double 0x3CA1000000000001, double %856, double %848)
  %858 = load ptr, ptr %7, align 8, !tbaa !9
  %859 = load i32, ptr %12, align 4, !tbaa !5
  %860 = load i32, ptr %8, align 4, !tbaa !5
  %861 = mul nsw i32 17, %860
  %862 = add nsw i32 %859, %861
  %863 = sext i32 %862 to i64
  %864 = getelementptr inbounds double, ptr %858, i64 %863
  %865 = load double, ptr %864, align 8, !tbaa !11
  %866 = call double @llvm.fmuladd.f64(double 0xBC7C000000000000, double %865, double %857)
  %867 = load ptr, ptr %7, align 8, !tbaa !9
  %868 = load i32, ptr %12, align 4, !tbaa !5
  %869 = load i32, ptr %8, align 4, !tbaa !5
  %870 = mul nsw i32 18, %869
  %871 = add nsw i32 %868, %870
  %872 = sext i32 %871 to i64
  %873 = getelementptr inbounds double, ptr %867, i64 %872
  %874 = load double, ptr %873, align 8, !tbaa !11
  %875 = call double @llvm.fmuladd.f64(double 0x3C9C000000000000, double %874, double %866)
  %876 = load ptr, ptr %7, align 8, !tbaa !9
  %877 = load i32, ptr %12, align 4, !tbaa !5
  %878 = load i32, ptr %8, align 4, !tbaa !5
  %879 = mul nsw i32 19, %878
  %880 = add nsw i32 %877, %879
  %881 = sext i32 %880 to i64
  %882 = getelementptr inbounds double, ptr %876, i64 %881
  %883 = load double, ptr %882, align 8, !tbaa !11
  %884 = call double @llvm.fmuladd.f64(double 0x3C98000000000000, double %883, double %875)
  %885 = load ptr, ptr %7, align 8, !tbaa !9
  %886 = load i32, ptr %12, align 4, !tbaa !5
  %887 = load i32, ptr %8, align 4, !tbaa !5
  %888 = mul nsw i32 20, %887
  %889 = add nsw i32 %886, %888
  %890 = sext i32 %889 to i64
  %891 = getelementptr inbounds double, ptr %885, i64 %890
  %892 = load double, ptr %891, align 8, !tbaa !11
  %893 = call double @llvm.fmuladd.f64(double 0x3CB0000000000000, double %892, double %884)
  %894 = load ptr, ptr %7, align 8, !tbaa !9
  %895 = load i32, ptr %12, align 4, !tbaa !5
  %896 = load i32, ptr %8, align 4, !tbaa !5
  %897 = mul nsw i32 21, %896
  %898 = add nsw i32 %895, %897
  %899 = sext i32 %898 to i64
  %900 = getelementptr inbounds double, ptr %894, i64 %899
  %901 = load double, ptr %900, align 8, !tbaa !11
  %902 = call double @llvm.fmuladd.f64(double 0x3C9C000000000000, double %901, double %893)
  %903 = load ptr, ptr %7, align 8, !tbaa !9
  %904 = load i32, ptr %12, align 4, !tbaa !5
  %905 = load i32, ptr %8, align 4, !tbaa !5
  %906 = mul nsw i32 22, %905
  %907 = add nsw i32 %904, %906
  %908 = sext i32 %907 to i64
  %909 = getelementptr inbounds double, ptr %903, i64 %908
  %910 = load double, ptr %909, align 8, !tbaa !11
  %911 = call double @llvm.fmuladd.f64(double 0x3FD9A613A5CEF635, double %910, double %902)
  %912 = load ptr, ptr %7, align 8, !tbaa !9
  %913 = load i32, ptr %12, align 4, !tbaa !5
  %914 = load i32, ptr %8, align 4, !tbaa !5
  %915 = mul nsw i32 23, %914
  %916 = add nsw i32 %913, %915
  %917 = sext i32 %916 to i64
  %918 = getelementptr inbounds double, ptr %912, i64 %917
  %919 = load double, ptr %918, align 8, !tbaa !11
  %920 = call double @llvm.fmuladd.f64(double 0x3CB3C00000000000, double %919, double %911)
  %921 = load ptr, ptr %7, align 8, !tbaa !9
  %922 = load i32, ptr %12, align 4, !tbaa !5
  %923 = load i32, ptr %8, align 4, !tbaa !5
  %924 = mul nsw i32 24, %923
  %925 = add nsw i32 %922, %924
  %926 = sext i32 %925 to i64
  %927 = getelementptr inbounds double, ptr %921, i64 %926
  %928 = load double, ptr %927, align 8, !tbaa !11
  %929 = call double @llvm.fmuladd.f64(double 0xBCBA000000000000, double %928, double %920)
  %930 = load ptr, ptr %7, align 8, !tbaa !9
  %931 = load i32, ptr %12, align 4, !tbaa !5
  %932 = load i32, ptr %8, align 4, !tbaa !5
  %933 = mul nsw i32 25, %932
  %934 = add nsw i32 %931, %933
  %935 = sext i32 %934 to i64
  %936 = getelementptr inbounds double, ptr %930, i64 %935
  %937 = load double, ptr %936, align 8, !tbaa !11
  %938 = call double @llvm.fmuladd.f64(double 0x3CA1000000000001, double %937, double %929)
  %939 = load ptr, ptr %7, align 8, !tbaa !9
  %940 = load i32, ptr %12, align 4, !tbaa !5
  %941 = load i32, ptr %8, align 4, !tbaa !5
  %942 = mul nsw i32 26, %941
  %943 = add nsw i32 %940, %942
  %944 = sext i32 %943 to i64
  %945 = getelementptr inbounds double, ptr %939, i64 %944
  %946 = load double, ptr %945, align 8, !tbaa !11
  %947 = call double @llvm.fmuladd.f64(double 0x3CAC800000000000, double %946, double %938)
  %948 = load ptr, ptr %7, align 8, !tbaa !9
  %949 = load i32, ptr %12, align 4, !tbaa !5
  %950 = load i32, ptr %8, align 4, !tbaa !5
  %951 = mul nsw i32 27, %950
  %952 = add nsw i32 %949, %951
  %953 = sext i32 %952 to i64
  %954 = getelementptr inbounds double, ptr %948, i64 %953
  %955 = load double, ptr %954, align 8, !tbaa !11
  %956 = call double @llvm.fmuladd.f64(double 0x3C8C000000000000, double %955, double %947)
  %957 = load ptr, ptr %7, align 8, !tbaa !9
  %958 = load i32, ptr %12, align 4, !tbaa !5
  %959 = load i32, ptr %8, align 4, !tbaa !5
  %960 = mul nsw i32 28, %959
  %961 = add nsw i32 %958, %960
  %962 = sext i32 %961 to i64
  %963 = getelementptr inbounds double, ptr %957, i64 %962
  %964 = load double, ptr %963, align 8, !tbaa !11
  %965 = call double @llvm.fmuladd.f64(double 0x3C70000000000001, double %964, double %956)
  %966 = load ptr, ptr %7, align 8, !tbaa !9
  %967 = load i32, ptr %12, align 4, !tbaa !5
  %968 = load i32, ptr %8, align 4, !tbaa !5
  %969 = mul nsw i32 29, %968
  %970 = add nsw i32 %967, %969
  %971 = sext i32 %970 to i64
  %972 = getelementptr inbounds double, ptr %966, i64 %971
  %973 = load double, ptr %972, align 8, !tbaa !11
  %974 = call double @llvm.fmuladd.f64(double 0xBC98000000000000, double %973, double %965)
  %975 = load ptr, ptr %7, align 8, !tbaa !9
  %976 = load i32, ptr %12, align 4, !tbaa !5
  %977 = load i32, ptr %8, align 4, !tbaa !5
  %978 = mul nsw i32 30, %977
  %979 = add nsw i32 %976, %978
  %980 = sext i32 %979 to i64
  %981 = getelementptr inbounds double, ptr %975, i64 %980
  %982 = load double, ptr %981, align 8, !tbaa !11
  %983 = call double @llvm.fmuladd.f64(double 0x3C7C000000000000, double %982, double %974)
  %984 = load ptr, ptr %7, align 8, !tbaa !9
  %985 = load i32, ptr %12, align 4, !tbaa !5
  %986 = load i32, ptr %8, align 4, !tbaa !5
  %987 = mul nsw i32 31, %986
  %988 = add nsw i32 %985, %987
  %989 = sext i32 %988 to i64
  %990 = getelementptr inbounds double, ptr %984, i64 %989
  %991 = load double, ptr %990, align 8, !tbaa !11
  %992 = call double @llvm.fmuladd.f64(double 0x3CA8000000000001, double %991, double %983)
  %993 = load ptr, ptr %7, align 8, !tbaa !9
  %994 = load i32, ptr %12, align 4, !tbaa !5
  %995 = load i32, ptr %8, align 4, !tbaa !5
  %996 = mul nsw i32 32, %995
  %997 = add nsw i32 %994, %996
  %998 = sext i32 %997 to i64
  %999 = getelementptr inbounds double, ptr %993, i64 %998
  %1000 = load double, ptr %999, align 8, !tbaa !11
  %1001 = call double @llvm.fmuladd.f64(double 0xBFBD29AD687BB056, double %1000, double %992)
  %1002 = load ptr, ptr %7, align 8, !tbaa !9
  %1003 = load i32, ptr %12, align 4, !tbaa !5
  %1004 = load i32, ptr %8, align 4, !tbaa !5
  %1005 = mul nsw i32 33, %1004
  %1006 = add nsw i32 %1003, %1005
  %1007 = sext i32 %1006 to i64
  %1008 = getelementptr inbounds double, ptr %1002, i64 %1007
  %1009 = load double, ptr %1008, align 8, !tbaa !11
  %1010 = call double @llvm.fmuladd.f64(double 0x3C9B000000000000, double %1009, double %1001)
  %1011 = load ptr, ptr %7, align 8, !tbaa !9
  %1012 = load i32, ptr %12, align 4, !tbaa !5
  %1013 = load i32, ptr %8, align 4, !tbaa !5
  %1014 = mul nsw i32 34, %1013
  %1015 = add nsw i32 %1012, %1014
  %1016 = sext i32 %1015 to i64
  %1017 = getelementptr inbounds double, ptr %1011, i64 %1016
  %1018 = load double, ptr %1017, align 8, !tbaa !11
  %1019 = call double @llvm.fmuladd.f64(double 0x3CB1400000000000, double %1018, double %1010)
  %1020 = load ptr, ptr %7, align 8, !tbaa !9
  %1021 = load i32, ptr %12, align 4, !tbaa !5
  %1022 = load i32, ptr %8, align 4, !tbaa !5
  %1023 = mul nsw i32 35, %1022
  %1024 = add nsw i32 %1021, %1023
  %1025 = sext i32 %1024 to i64
  %1026 = getelementptr inbounds double, ptr %1020, i64 %1025
  %1027 = load double, ptr %1026, align 8, !tbaa !11
  %1028 = call double @llvm.fmuladd.f64(double 0xBC94000000000000, double %1027, double %1019)
  %1029 = load ptr, ptr %7, align 8, !tbaa !9
  %1030 = load i32, ptr %12, align 4, !tbaa !5
  %1031 = load i32, ptr %8, align 4, !tbaa !5
  %1032 = mul nsw i32 36, %1031
  %1033 = add nsw i32 %1030, %1032
  %1034 = sext i32 %1033 to i64
  %1035 = getelementptr inbounds double, ptr %1029, i64 %1034
  %1036 = load double, ptr %1035, align 8, !tbaa !11
  %1037 = call double @llvm.fmuladd.f64(double 0xBC82000000000000, double %1036, double %1028)
  %1038 = load ptr, ptr %7, align 8, !tbaa !9
  %1039 = load i32, ptr %12, align 4, !tbaa !5
  %1040 = load i32, ptr %8, align 4, !tbaa !5
  %1041 = mul nsw i32 37, %1040
  %1042 = add nsw i32 %1039, %1041
  %1043 = sext i32 %1042 to i64
  %1044 = getelementptr inbounds double, ptr %1038, i64 %1043
  %1045 = load double, ptr %1044, align 8, !tbaa !11
  %1046 = call double @llvm.fmuladd.f64(double 0xBC84000000000000, double %1045, double %1037)
  %1047 = load ptr, ptr %7, align 8, !tbaa !9
  %1048 = load i32, ptr %12, align 4, !tbaa !5
  %1049 = load i32, ptr %8, align 4, !tbaa !5
  %1050 = mul nsw i32 38, %1049
  %1051 = add nsw i32 %1048, %1050
  %1052 = sext i32 %1051 to i64
  %1053 = getelementptr inbounds double, ptr %1047, i64 %1052
  %1054 = load double, ptr %1053, align 8, !tbaa !11
  %1055 = call double @llvm.fmuladd.f64(double 0x3C70000000000001, double %1054, double %1046)
  %1056 = load ptr, ptr %7, align 8, !tbaa !9
  %1057 = load i32, ptr %12, align 4, !tbaa !5
  %1058 = load i32, ptr %8, align 4, !tbaa !5
  %1059 = mul nsw i32 39, %1058
  %1060 = add nsw i32 %1057, %1059
  %1061 = sext i32 %1060 to i64
  %1062 = getelementptr inbounds double, ptr %1056, i64 %1061
  %1063 = load double, ptr %1062, align 8, !tbaa !11
  %1064 = call double @llvm.fmuladd.f64(double 0xBC8C000000000000, double %1063, double %1055)
  store double %1064, ptr %11, align 8, !tbaa !11
  %1065 = load double, ptr %11, align 8, !tbaa !11
  %1066 = load ptr, ptr %9, align 8, !tbaa !9
  %1067 = load i32, ptr %12, align 4, !tbaa !5
  %1068 = load i32, ptr %10, align 4, !tbaa !5
  %1069 = mul nsw i32 2, %1068
  %1070 = add nsw i32 %1067, %1069
  %1071 = sext i32 %1070 to i64
  %1072 = getelementptr inbounds double, ptr %1066, i64 %1071
  %1073 = load double, ptr %1072, align 8, !tbaa !11
  %1074 = fadd double %1073, %1065
  store double %1074, ptr %1072, align 8, !tbaa !11
  %1075 = load ptr, ptr %7, align 8, !tbaa !9
  %1076 = load i32, ptr %12, align 4, !tbaa !5
  %1077 = load i32, ptr %8, align 4, !tbaa !5
  %1078 = mul nsw i32 0, %1077
  %1079 = add nsw i32 %1076, %1078
  %1080 = sext i32 %1079 to i64
  %1081 = getelementptr inbounds double, ptr %1075, i64 %1080
  %1082 = load double, ptr %1081, align 8, !tbaa !11
  %1083 = load ptr, ptr %7, align 8, !tbaa !9
  %1084 = load i32, ptr %12, align 4, !tbaa !5
  %1085 = load i32, ptr %8, align 4, !tbaa !5
  %1086 = mul nsw i32 1, %1085
  %1087 = add nsw i32 %1084, %1086
  %1088 = sext i32 %1087 to i64
  %1089 = getelementptr inbounds double, ptr %1083, i64 %1088
  %1090 = load double, ptr %1089, align 8, !tbaa !11
  %1091 = fmul double 0xBC96000000000000, %1090
  %1092 = call double @llvm.fmuladd.f64(double 0x3CA0800000000001, double %1082, double %1091)
  %1093 = load ptr, ptr %7, align 8, !tbaa !9
  %1094 = load i32, ptr %12, align 4, !tbaa !5
  %1095 = load i32, ptr %8, align 4, !tbaa !5
  %1096 = mul nsw i32 2, %1095
  %1097 = add nsw i32 %1094, %1096
  %1098 = sext i32 %1097 to i64
  %1099 = getelementptr inbounds double, ptr %1093, i64 %1098
  %1100 = load double, ptr %1099, align 8, !tbaa !11
  %1101 = call double @llvm.fmuladd.f64(double 0xBC8B800000000001, double %1100, double %1092)
  %1102 = load ptr, ptr %7, align 8, !tbaa !9
  %1103 = load i32, ptr %12, align 4, !tbaa !5
  %1104 = load i32, ptr %8, align 4, !tbaa !5
  %1105 = mul nsw i32 3, %1104
  %1106 = add nsw i32 %1103, %1105
  %1107 = sext i32 %1106 to i64
  %1108 = getelementptr inbounds double, ptr %1102, i64 %1107
  %1109 = load double, ptr %1108, align 8, !tbaa !11
  %1110 = call double @llvm.fmuladd.f64(double 0x3FF86DB962AC2966, double %1109, double %1101)
  %1111 = load ptr, ptr %7, align 8, !tbaa !9
  %1112 = load i32, ptr %12, align 4, !tbaa !5
  %1113 = load i32, ptr %8, align 4, !tbaa !5
  %1114 = mul nsw i32 4, %1113
  %1115 = add nsw i32 %1112, %1114
  %1116 = sext i32 %1115 to i64
  %1117 = getelementptr inbounds double, ptr %1111, i64 %1116
  %1118 = load double, ptr %1117, align 8, !tbaa !11
  %1119 = call double @llvm.fmuladd.f64(double 0x3C60000000000000, double %1118, double %1110)
  %1120 = load ptr, ptr %7, align 8, !tbaa !9
  %1121 = load i32, ptr %12, align 4, !tbaa !5
  %1122 = load i32, ptr %8, align 4, !tbaa !5
  %1123 = mul nsw i32 5, %1122
  %1124 = add nsw i32 %1121, %1123
  %1125 = sext i32 %1124 to i64
  %1126 = getelementptr inbounds double, ptr %1120, i64 %1125
  %1127 = load double, ptr %1126, align 8, !tbaa !11
  %1128 = call double @llvm.fmuladd.f64(double 0xBCA8000000000001, double %1127, double %1119)
  %1129 = load ptr, ptr %7, align 8, !tbaa !9
  %1130 = load i32, ptr %12, align 4, !tbaa !5
  %1131 = load i32, ptr %8, align 4, !tbaa !5
  %1132 = mul nsw i32 6, %1131
  %1133 = add nsw i32 %1130, %1132
  %1134 = sext i32 %1133 to i64
  %1135 = getelementptr inbounds double, ptr %1129, i64 %1134
  %1136 = load double, ptr %1135, align 8, !tbaa !11
  %1137 = call double @llvm.fmuladd.f64(double 0x3C9A000000000000, double %1136, double %1128)
  %1138 = load ptr, ptr %7, align 8, !tbaa !9
  %1139 = load i32, ptr %12, align 4, !tbaa !5
  %1140 = load i32, ptr %8, align 4, !tbaa !5
  %1141 = mul nsw i32 7, %1140
  %1142 = add nsw i32 %1139, %1141
  %1143 = sext i32 %1142 to i64
  %1144 = getelementptr inbounds double, ptr %1138, i64 %1143
  %1145 = load double, ptr %1144, align 8, !tbaa !11
  %1146 = call double @llvm.fmuladd.f64(double 0xBC9D7FFFFFFFFFFE, double %1145, double %1137)
  %1147 = load ptr, ptr %7, align 8, !tbaa !9
  %1148 = load i32, ptr %12, align 4, !tbaa !5
  %1149 = load i32, ptr %8, align 4, !tbaa !5
  %1150 = mul nsw i32 8, %1149
  %1151 = add nsw i32 %1148, %1150
  %1152 = sext i32 %1151 to i64
  %1153 = getelementptr inbounds double, ptr %1147, i64 %1152
  %1154 = load double, ptr %1153, align 8, !tbaa !11
  %1155 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %1154, double %1146)
  %1156 = load ptr, ptr %7, align 8, !tbaa !9
  %1157 = load i32, ptr %12, align 4, !tbaa !5
  %1158 = load i32, ptr %8, align 4, !tbaa !5
  %1159 = mul nsw i32 9, %1158
  %1160 = add nsw i32 %1157, %1159
  %1161 = sext i32 %1160 to i64
  %1162 = getelementptr inbounds double, ptr %1156, i64 %1161
  %1163 = load double, ptr %1162, align 8, !tbaa !11
  %1164 = call double @llvm.fmuladd.f64(double 0x3C60000000000000, double %1163, double %1155)
  %1165 = load ptr, ptr %7, align 8, !tbaa !9
  %1166 = load i32, ptr %12, align 4, !tbaa !5
  %1167 = load i32, ptr %8, align 4, !tbaa !5
  %1168 = mul nsw i32 10, %1167
  %1169 = add nsw i32 %1166, %1168
  %1170 = sext i32 %1169 to i64
  %1171 = getelementptr inbounds double, ptr %1165, i64 %1170
  %1172 = load double, ptr %1171, align 8, !tbaa !11
  %1173 = call double @llvm.fmuladd.f64(double 0x3C98000000000000, double %1172, double %1164)
  %1174 = load ptr, ptr %7, align 8, !tbaa !9
  %1175 = load i32, ptr %12, align 4, !tbaa !5
  %1176 = load i32, ptr %8, align 4, !tbaa !5
  %1177 = mul nsw i32 11, %1176
  %1178 = add nsw i32 %1175, %1177
  %1179 = sext i32 %1178 to i64
  %1180 = getelementptr inbounds double, ptr %1174, i64 %1179
  %1181 = load double, ptr %1180, align 8, !tbaa !11
  %1182 = call double @llvm.fmuladd.f64(double 0x3C98000000000000, double %1181, double %1173)
  %1183 = load ptr, ptr %7, align 8, !tbaa !9
  %1184 = load i32, ptr %12, align 4, !tbaa !5
  %1185 = load i32, ptr %8, align 4, !tbaa !5
  %1186 = mul nsw i32 12, %1185
  %1187 = add nsw i32 %1184, %1186
  %1188 = sext i32 %1187 to i64
  %1189 = getelementptr inbounds double, ptr %1183, i64 %1188
  %1190 = load double, ptr %1189, align 8, !tbaa !11
  %1191 = call double @llvm.fmuladd.f64(double 0xBC98800000000000, double %1190, double %1182)
  %1192 = load ptr, ptr %7, align 8, !tbaa !9
  %1193 = load i32, ptr %12, align 4, !tbaa !5
  %1194 = load i32, ptr %8, align 4, !tbaa !5
  %1195 = mul nsw i32 13, %1194
  %1196 = add nsw i32 %1193, %1195
  %1197 = sext i32 %1196 to i64
  %1198 = getelementptr inbounds double, ptr %1192, i64 %1197
  %1199 = load double, ptr %1198, align 8, !tbaa !11
  %1200 = call double @llvm.fmuladd.f64(double 0xBFEA0946EB3057D9, double %1199, double %1191)
  %1201 = load ptr, ptr %7, align 8, !tbaa !9
  %1202 = load i32, ptr %12, align 4, !tbaa !5
  %1203 = load i32, ptr %8, align 4, !tbaa !5
  %1204 = mul nsw i32 15, %1203
  %1205 = add nsw i32 %1202, %1204
  %1206 = sext i32 %1205 to i64
  %1207 = getelementptr inbounds double, ptr %1201, i64 %1206
  %1208 = load double, ptr %1207, align 8, !tbaa !11
  %1209 = call double @llvm.fmuladd.f64(double 0x3C96000000000000, double %1208, double %1200)
  %1210 = load ptr, ptr %7, align 8, !tbaa !9
  %1211 = load i32, ptr %12, align 4, !tbaa !5
  %1212 = load i32, ptr %8, align 4, !tbaa !5
  %1213 = mul nsw i32 16, %1212
  %1214 = add nsw i32 %1211, %1213
  %1215 = sext i32 %1214 to i64
  %1216 = getelementptr inbounds double, ptr %1210, i64 %1215
  %1217 = load double, ptr %1216, align 8, !tbaa !11
  %1218 = call double @llvm.fmuladd.f64(double 0xBCA1800000000000, double %1217, double %1209)
  %1219 = load ptr, ptr %7, align 8, !tbaa !9
  %1220 = load i32, ptr %12, align 4, !tbaa !5
  %1221 = load i32, ptr %8, align 4, !tbaa !5
  %1222 = mul nsw i32 17, %1221
  %1223 = add nsw i32 %1220, %1222
  %1224 = sext i32 %1223 to i64
  %1225 = getelementptr inbounds double, ptr %1219, i64 %1224
  %1226 = load double, ptr %1225, align 8, !tbaa !11
  %1227 = call double @llvm.fmuladd.f64(double 0x3C97000000000000, double %1226, double %1218)
  %1228 = load ptr, ptr %7, align 8, !tbaa !9
  %1229 = load i32, ptr %12, align 4, !tbaa !5
  %1230 = load i32, ptr %8, align 4, !tbaa !5
  %1231 = mul nsw i32 18, %1230
  %1232 = add nsw i32 %1229, %1231
  %1233 = sext i32 %1232 to i64
  %1234 = getelementptr inbounds double, ptr %1228, i64 %1233
  %1235 = load double, ptr %1234, align 8, !tbaa !11
  %1236 = call double @llvm.fmuladd.f64(double 0x3C88000000000000, double %1235, double %1227)
  %1237 = load ptr, ptr %7, align 8, !tbaa !9
  %1238 = load i32, ptr %12, align 4, !tbaa !5
  %1239 = load i32, ptr %8, align 4, !tbaa !5
  %1240 = mul nsw i32 20, %1239
  %1241 = add nsw i32 %1238, %1240
  %1242 = sext i32 %1241 to i64
  %1243 = getelementptr inbounds double, ptr %1237, i64 %1242
  %1244 = load double, ptr %1243, align 8, !tbaa !11
  %1245 = call double @llvm.fmuladd.f64(double 0xBC98000000000000, double %1244, double %1236)
  %1246 = load ptr, ptr %7, align 8, !tbaa !9
  %1247 = load i32, ptr %12, align 4, !tbaa !5
  %1248 = load i32, ptr %8, align 4, !tbaa !5
  %1249 = mul nsw i32 21, %1248
  %1250 = add nsw i32 %1247, %1249
  %1251 = sext i32 %1250 to i64
  %1252 = getelementptr inbounds double, ptr %1246, i64 %1251
  %1253 = load double, ptr %1252, align 8, !tbaa !11
  %1254 = call double @llvm.fmuladd.f64(double 0xBC70000000000001, double %1253, double %1245)
  %1255 = load ptr, ptr %7, align 8, !tbaa !9
  %1256 = load i32, ptr %12, align 4, !tbaa !5
  %1257 = load i32, ptr %8, align 4, !tbaa !5
  %1258 = mul nsw i32 22, %1257
  %1259 = add nsw i32 %1256, %1258
  %1260 = sext i32 %1259 to i64
  %1261 = getelementptr inbounds double, ptr %1255, i64 %1260
  %1262 = load double, ptr %1261, align 8, !tbaa !11
  %1263 = call double @llvm.fmuladd.f64(double 0x3C93000000000000, double %1262, double %1254)
  %1264 = load ptr, ptr %7, align 8, !tbaa !9
  %1265 = load i32, ptr %12, align 4, !tbaa !5
  %1266 = load i32, ptr %8, align 4, !tbaa !5
  %1267 = mul nsw i32 23, %1266
  %1268 = add nsw i32 %1265, %1267
  %1269 = sext i32 %1268 to i64
  %1270 = getelementptr inbounds double, ptr %1264, i64 %1269
  %1271 = load double, ptr %1270, align 8, !tbaa !11
  %1272 = call double @llvm.fmuladd.f64(double 0x3FD9A613A5CEF635, double %1271, double %1263)
  %1273 = load ptr, ptr %7, align 8, !tbaa !9
  %1274 = load i32, ptr %12, align 4, !tbaa !5
  %1275 = load i32, ptr %8, align 4, !tbaa !5
  %1276 = mul nsw i32 24, %1275
  %1277 = add nsw i32 %1274, %1276
  %1278 = sext i32 %1277 to i64
  %1279 = getelementptr inbounds double, ptr %1273, i64 %1278
  %1280 = load double, ptr %1279, align 8, !tbaa !11
  %1281 = call double @llvm.fmuladd.f64(double 0xBCAC000000000000, double %1280, double %1272)
  %1282 = load ptr, ptr %7, align 8, !tbaa !9
  %1283 = load i32, ptr %12, align 4, !tbaa !5
  %1284 = load i32, ptr %8, align 4, !tbaa !5
  %1285 = mul nsw i32 25, %1284
  %1286 = add nsw i32 %1283, %1285
  %1287 = sext i32 %1286 to i64
  %1288 = getelementptr inbounds double, ptr %1282, i64 %1287
  %1289 = load double, ptr %1288, align 8, !tbaa !11
  %1290 = call double @llvm.fmuladd.f64(double 0x3C60000000000000, double %1289, double %1281)
  %1291 = load ptr, ptr %7, align 8, !tbaa !9
  %1292 = load i32, ptr %12, align 4, !tbaa !5
  %1293 = load i32, ptr %8, align 4, !tbaa !5
  %1294 = mul nsw i32 26, %1293
  %1295 = add nsw i32 %1292, %1294
  %1296 = sext i32 %1295 to i64
  %1297 = getelementptr inbounds double, ptr %1291, i64 %1296
  %1298 = load double, ptr %1297, align 8, !tbaa !11
  %1299 = call double @llvm.fmuladd.f64(double 0x3CA1800000000000, double %1298, double %1290)
  %1300 = load ptr, ptr %7, align 8, !tbaa !9
  %1301 = load i32, ptr %12, align 4, !tbaa !5
  %1302 = load i32, ptr %8, align 4, !tbaa !5
  %1303 = mul nsw i32 27, %1302
  %1304 = add nsw i32 %1301, %1303
  %1305 = sext i32 %1304 to i64
  %1306 = getelementptr inbounds double, ptr %1300, i64 %1305
  %1307 = load double, ptr %1306, align 8, !tbaa !11
  %1308 = call double @llvm.fmuladd.f64(double 0xBCA5800000000000, double %1307, double %1299)
  %1309 = load ptr, ptr %7, align 8, !tbaa !9
  %1310 = load i32, ptr %12, align 4, !tbaa !5
  %1311 = load i32, ptr %8, align 4, !tbaa !5
  %1312 = mul nsw i32 28, %1311
  %1313 = add nsw i32 %1310, %1312
  %1314 = sext i32 %1313 to i64
  %1315 = getelementptr inbounds double, ptr %1309, i64 %1314
  %1316 = load double, ptr %1315, align 8, !tbaa !11
  %1317 = call double @llvm.fmuladd.f64(double 0x3C98000000000000, double %1316, double %1308)
  %1318 = load ptr, ptr %7, align 8, !tbaa !9
  %1319 = load i32, ptr %12, align 4, !tbaa !5
  %1320 = load i32, ptr %8, align 4, !tbaa !5
  %1321 = mul nsw i32 29, %1320
  %1322 = add nsw i32 %1319, %1321
  %1323 = sext i32 %1322 to i64
  %1324 = getelementptr inbounds double, ptr %1318, i64 %1323
  %1325 = load double, ptr %1324, align 8, !tbaa !11
  %1326 = call double @llvm.fmuladd.f64(double 0xBC70000000000001, double %1325, double %1317)
  %1327 = load ptr, ptr %7, align 8, !tbaa !9
  %1328 = load i32, ptr %12, align 4, !tbaa !5
  %1329 = load i32, ptr %8, align 4, !tbaa !5
  %1330 = mul nsw i32 30, %1329
  %1331 = add nsw i32 %1328, %1330
  %1332 = sext i32 %1331 to i64
  %1333 = getelementptr inbounds double, ptr %1327, i64 %1332
  %1334 = load double, ptr %1333, align 8, !tbaa !11
  %1335 = call double @llvm.fmuladd.f64(double 0xBC9CFFFFFFFFFFFF, double %1334, double %1326)
  %1336 = load ptr, ptr %7, align 8, !tbaa !9
  %1337 = load i32, ptr %12, align 4, !tbaa !5
  %1338 = load i32, ptr %8, align 4, !tbaa !5
  %1339 = mul nsw i32 31, %1338
  %1340 = add nsw i32 %1337, %1339
  %1341 = sext i32 %1340 to i64
  %1342 = getelementptr inbounds double, ptr %1336, i64 %1341
  %1343 = load double, ptr %1342, align 8, !tbaa !11
  %1344 = call double @llvm.fmuladd.f64(double 0xBC89FFFFFFFFFFFF, double %1343, double %1335)
  %1345 = load ptr, ptr %7, align 8, !tbaa !9
  %1346 = load i32, ptr %12, align 4, !tbaa !5
  %1347 = load i32, ptr %8, align 4, !tbaa !5
  %1348 = mul nsw i32 32, %1347
  %1349 = add nsw i32 %1346, %1348
  %1350 = sext i32 %1349 to i64
  %1351 = getelementptr inbounds double, ptr %1345, i64 %1350
  %1352 = load double, ptr %1351, align 8, !tbaa !11
  %1353 = call double @llvm.fmuladd.f64(double 0xBC94000000000000, double %1352, double %1344)
  %1354 = load ptr, ptr %7, align 8, !tbaa !9
  %1355 = load i32, ptr %12, align 4, !tbaa !5
  %1356 = load i32, ptr %8, align 4, !tbaa !5
  %1357 = mul nsw i32 33, %1356
  %1358 = add nsw i32 %1355, %1357
  %1359 = sext i32 %1358 to i64
  %1360 = getelementptr inbounds double, ptr %1354, i64 %1359
  %1361 = load double, ptr %1360, align 8, !tbaa !11
  %1362 = call double @llvm.fmuladd.f64(double 0xBFBD29AD687BB056, double %1361, double %1353)
  %1363 = load ptr, ptr %7, align 8, !tbaa !9
  %1364 = load i32, ptr %12, align 4, !tbaa !5
  %1365 = load i32, ptr %8, align 4, !tbaa !5
  %1366 = mul nsw i32 34, %1365
  %1367 = add nsw i32 %1364, %1366
  %1368 = sext i32 %1367 to i64
  %1369 = getelementptr inbounds double, ptr %1363, i64 %1368
  %1370 = load double, ptr %1369, align 8, !tbaa !11
  %1371 = call double @llvm.fmuladd.f64(double 0xBC93000000000000, double %1370, double %1362)
  %1372 = load ptr, ptr %7, align 8, !tbaa !9
  %1373 = load i32, ptr %12, align 4, !tbaa !5
  %1374 = load i32, ptr %8, align 4, !tbaa !5
  %1375 = mul nsw i32 35, %1374
  %1376 = add nsw i32 %1373, %1375
  %1377 = sext i32 %1376 to i64
  %1378 = getelementptr inbounds double, ptr %1372, i64 %1377
  %1379 = load double, ptr %1378, align 8, !tbaa !11
  %1380 = call double @llvm.fmuladd.f64(double 0x3C98000000000000, double %1379, double %1371)
  %1381 = load ptr, ptr %7, align 8, !tbaa !9
  %1382 = load i32, ptr %12, align 4, !tbaa !5
  %1383 = load i32, ptr %8, align 4, !tbaa !5
  %1384 = mul nsw i32 36, %1383
  %1385 = add nsw i32 %1382, %1384
  %1386 = sext i32 %1385 to i64
  %1387 = getelementptr inbounds double, ptr %1381, i64 %1386
  %1388 = load double, ptr %1387, align 8, !tbaa !11
  %1389 = call double @llvm.fmuladd.f64(double 0xBCA2000000000000, double %1388, double %1380)
  %1390 = load ptr, ptr %7, align 8, !tbaa !9
  %1391 = load i32, ptr %12, align 4, !tbaa !5
  %1392 = load i32, ptr %8, align 4, !tbaa !5
  %1393 = mul nsw i32 37, %1392
  %1394 = add nsw i32 %1391, %1393
  %1395 = sext i32 %1394 to i64
  %1396 = getelementptr inbounds double, ptr %1390, i64 %1395
  %1397 = load double, ptr %1396, align 8, !tbaa !11
  %1398 = call double @llvm.fmuladd.f64(double 0x3C86000000000001, double %1397, double %1389)
  %1399 = load ptr, ptr %7, align 8, !tbaa !9
  %1400 = load i32, ptr %12, align 4, !tbaa !5
  %1401 = load i32, ptr %8, align 4, !tbaa !5
  %1402 = mul nsw i32 38, %1401
  %1403 = add nsw i32 %1400, %1402
  %1404 = sext i32 %1403 to i64
  %1405 = getelementptr inbounds double, ptr %1399, i64 %1404
  %1406 = load double, ptr %1405, align 8, !tbaa !11
  %1407 = call double @llvm.fmuladd.f64(double 0x3C88000000000000, double %1406, double %1398)
  %1408 = load ptr, ptr %7, align 8, !tbaa !9
  %1409 = load i32, ptr %12, align 4, !tbaa !5
  %1410 = load i32, ptr %8, align 4, !tbaa !5
  %1411 = mul nsw i32 39, %1410
  %1412 = add nsw i32 %1409, %1411
  %1413 = sext i32 %1412 to i64
  %1414 = getelementptr inbounds double, ptr %1408, i64 %1413
  %1415 = load double, ptr %1414, align 8, !tbaa !11
  %1416 = call double @llvm.fmuladd.f64(double 0xBC78000000000002, double %1415, double %1407)
  store double %1416, ptr %11, align 8, !tbaa !11
  %1417 = load double, ptr %11, align 8, !tbaa !11
  %1418 = load ptr, ptr %9, align 8, !tbaa !9
  %1419 = load i32, ptr %12, align 4, !tbaa !5
  %1420 = load i32, ptr %10, align 4, !tbaa !5
  %1421 = mul nsw i32 3, %1420
  %1422 = add nsw i32 %1419, %1421
  %1423 = sext i32 %1422 to i64
  %1424 = getelementptr inbounds double, ptr %1418, i64 %1423
  %1425 = load double, ptr %1424, align 8, !tbaa !11
  %1426 = fadd double %1425, %1417
  store double %1426, ptr %1424, align 8, !tbaa !11
  %1427 = load ptr, ptr %7, align 8, !tbaa !9
  %1428 = load i32, ptr %12, align 4, !tbaa !5
  %1429 = load i32, ptr %8, align 4, !tbaa !5
  %1430 = mul nsw i32 0, %1429
  %1431 = add nsw i32 %1428, %1430
  %1432 = sext i32 %1431 to i64
  %1433 = getelementptr inbounds double, ptr %1427, i64 %1432
  %1434 = load double, ptr %1433, align 8, !tbaa !11
  %1435 = load ptr, ptr %7, align 8, !tbaa !9
  %1436 = load i32, ptr %12, align 4, !tbaa !5
  %1437 = load i32, ptr %8, align 4, !tbaa !5
  %1438 = mul nsw i32 1, %1437
  %1439 = add nsw i32 %1436, %1438
  %1440 = sext i32 %1439 to i64
  %1441 = getelementptr inbounds double, ptr %1435, i64 %1440
  %1442 = load double, ptr %1441, align 8, !tbaa !11
  %1443 = fmul double 0xBC78000000000002, %1442
  %1444 = call double @llvm.fmuladd.f64(double 0x3CAC000000000000, double %1434, double %1443)
  %1445 = load ptr, ptr %7, align 8, !tbaa !9
  %1446 = load i32, ptr %12, align 4, !tbaa !5
  %1447 = load i32, ptr %8, align 4, !tbaa !5
  %1448 = mul nsw i32 2, %1447
  %1449 = add nsw i32 %1446, %1448
  %1450 = sext i32 %1449 to i64
  %1451 = getelementptr inbounds double, ptr %1445, i64 %1450
  %1452 = load double, ptr %1451, align 8, !tbaa !11
  %1453 = call double @llvm.fmuladd.f64(double 0x3CAF400000000001, double %1452, double %1444)
  %1454 = load ptr, ptr %7, align 8, !tbaa !9
  %1455 = load i32, ptr %12, align 4, !tbaa !5
  %1456 = load i32, ptr %8, align 4, !tbaa !5
  %1457 = mul nsw i32 3, %1456
  %1458 = add nsw i32 %1455, %1457
  %1459 = sext i32 %1458 to i64
  %1460 = getelementptr inbounds double, ptr %1454, i64 %1459
  %1461 = load double, ptr %1460, align 8, !tbaa !11
  %1462 = call double @llvm.fmuladd.f64(double 0xBC9AC00000000000, double %1461, double %1453)
  %1463 = load ptr, ptr %7, align 8, !tbaa !9
  %1464 = load i32, ptr %12, align 4, !tbaa !5
  %1465 = load i32, ptr %8, align 4, !tbaa !5
  %1466 = mul nsw i32 4, %1465
  %1467 = add nsw i32 %1464, %1466
  %1468 = sext i32 %1467 to i64
  %1469 = getelementptr inbounds double, ptr %1463, i64 %1468
  %1470 = load double, ptr %1469, align 8, !tbaa !11
  %1471 = call double @llvm.fmuladd.f64(double 0x3FF86DB962AC2966, double %1470, double %1462)
  %1472 = load ptr, ptr %7, align 8, !tbaa !9
  %1473 = load i32, ptr %12, align 4, !tbaa !5
  %1474 = load i32, ptr %8, align 4, !tbaa !5
  %1475 = mul nsw i32 5, %1474
  %1476 = add nsw i32 %1473, %1475
  %1477 = sext i32 %1476 to i64
  %1478 = getelementptr inbounds double, ptr %1472, i64 %1477
  %1479 = load double, ptr %1478, align 8, !tbaa !11
  %1480 = call double @llvm.fmuladd.f64(double 0xBC99000000000000, double %1479, double %1471)
  %1481 = load ptr, ptr %7, align 8, !tbaa !9
  %1482 = load i32, ptr %12, align 4, !tbaa !5
  %1483 = load i32, ptr %8, align 4, !tbaa !5
  %1484 = mul nsw i32 6, %1483
  %1485 = add nsw i32 %1482, %1484
  %1486 = sext i32 %1485 to i64
  %1487 = getelementptr inbounds double, ptr %1481, i64 %1486
  %1488 = load double, ptr %1487, align 8, !tbaa !11
  %1489 = call double @llvm.fmuladd.f64(double 0x3CAD7FFFFFFFFFFE, double %1488, double %1480)
  %1490 = load ptr, ptr %7, align 8, !tbaa !9
  %1491 = load i32, ptr %12, align 4, !tbaa !5
  %1492 = load i32, ptr %8, align 4, !tbaa !5
  %1493 = mul nsw i32 7, %1492
  %1494 = add nsw i32 %1491, %1493
  %1495 = sext i32 %1494 to i64
  %1496 = getelementptr inbounds double, ptr %1490, i64 %1495
  %1497 = load double, ptr %1496, align 8, !tbaa !11
  %1498 = call double @llvm.fmuladd.f64(double 0xBCB8A00000000000, double %1497, double %1489)
  %1499 = load ptr, ptr %7, align 8, !tbaa !9
  %1500 = load i32, ptr %12, align 4, !tbaa !5
  %1501 = load i32, ptr %8, align 4, !tbaa !5
  %1502 = mul nsw i32 8, %1501
  %1503 = add nsw i32 %1500, %1502
  %1504 = sext i32 %1503 to i64
  %1505 = getelementptr inbounds double, ptr %1499, i64 %1504
  %1506 = load double, ptr %1505, align 8, !tbaa !11
  %1507 = call double @llvm.fmuladd.f64(double 0x3C96000000000000, double %1506, double %1498)
  %1508 = load ptr, ptr %7, align 8, !tbaa !9
  %1509 = load i32, ptr %12, align 4, !tbaa !5
  %1510 = load i32, ptr %8, align 4, !tbaa !5
  %1511 = mul nsw i32 9, %1510
  %1512 = add nsw i32 %1509, %1511
  %1513 = sext i32 %1512 to i64
  %1514 = getelementptr inbounds double, ptr %1508, i64 %1513
  %1515 = load double, ptr %1514, align 8, !tbaa !11
  %1516 = call double @llvm.fmuladd.f64(double 0xBC9A000000000000, double %1515, double %1507)
  %1517 = load ptr, ptr %7, align 8, !tbaa !9
  %1518 = load i32, ptr %12, align 4, !tbaa !5
  %1519 = load i32, ptr %8, align 4, !tbaa !5
  %1520 = mul nsw i32 10, %1519
  %1521 = add nsw i32 %1518, %1520
  %1522 = sext i32 %1521 to i64
  %1523 = getelementptr inbounds double, ptr %1517, i64 %1522
  %1524 = load double, ptr %1523, align 8, !tbaa !11
  %1525 = call double @llvm.fmuladd.f64(double 0x3CC2000000000000, double %1524, double %1516)
  %1526 = load ptr, ptr %7, align 8, !tbaa !9
  %1527 = load i32, ptr %12, align 4, !tbaa !5
  %1528 = load i32, ptr %8, align 4, !tbaa !5
  %1529 = mul nsw i32 11, %1528
  %1530 = add nsw i32 %1527, %1529
  %1531 = sext i32 %1530 to i64
  %1532 = getelementptr inbounds double, ptr %1526, i64 %1531
  %1533 = load double, ptr %1532, align 8, !tbaa !11
  %1534 = call double @llvm.fmuladd.f64(double 0xBC88000000000000, double %1533, double %1525)
  %1535 = load ptr, ptr %7, align 8, !tbaa !9
  %1536 = load i32, ptr %12, align 4, !tbaa !5
  %1537 = load i32, ptr %8, align 4, !tbaa !5
  %1538 = mul nsw i32 12, %1537
  %1539 = add nsw i32 %1536, %1538
  %1540 = sext i32 %1539 to i64
  %1541 = getelementptr inbounds double, ptr %1535, i64 %1540
  %1542 = load double, ptr %1541, align 8, !tbaa !11
  %1543 = call double @llvm.fmuladd.f64(double 0x3C9EFFFFFFFFFFFD, double %1542, double %1534)
  %1544 = load ptr, ptr %7, align 8, !tbaa !9
  %1545 = load i32, ptr %12, align 4, !tbaa !5
  %1546 = load i32, ptr %8, align 4, !tbaa !5
  %1547 = mul nsw i32 13, %1546
  %1548 = add nsw i32 %1545, %1547
  %1549 = sext i32 %1548 to i64
  %1550 = getelementptr inbounds double, ptr %1544, i64 %1549
  %1551 = load double, ptr %1550, align 8, !tbaa !11
  %1552 = call double @llvm.fmuladd.f64(double 0xBC50000000000000, double %1551, double %1543)
  %1553 = load ptr, ptr %7, align 8, !tbaa !9
  %1554 = load i32, ptr %12, align 4, !tbaa !5
  %1555 = load i32, ptr %8, align 4, !tbaa !5
  %1556 = mul nsw i32 14, %1555
  %1557 = add nsw i32 %1554, %1556
  %1558 = sext i32 %1557 to i64
  %1559 = getelementptr inbounds double, ptr %1553, i64 %1558
  %1560 = load double, ptr %1559, align 8, !tbaa !11
  %1561 = call double @llvm.fmuladd.f64(double 0xBFEA0946EB3057DA, double %1560, double %1552)
  %1562 = load ptr, ptr %7, align 8, !tbaa !9
  %1563 = load i32, ptr %12, align 4, !tbaa !5
  %1564 = load i32, ptr %8, align 4, !tbaa !5
  %1565 = mul nsw i32 15, %1564
  %1566 = add nsw i32 %1563, %1565
  %1567 = sext i32 %1566 to i64
  %1568 = getelementptr inbounds double, ptr %1562, i64 %1567
  %1569 = load double, ptr %1568, align 8, !tbaa !11
  %1570 = call double @llvm.fmuladd.f64(double 0xBC70000000000001, double %1569, double %1561)
  %1571 = load ptr, ptr %7, align 8, !tbaa !9
  %1572 = load i32, ptr %12, align 4, !tbaa !5
  %1573 = load i32, ptr %8, align 4, !tbaa !5
  %1574 = mul nsw i32 16, %1573
  %1575 = add nsw i32 %1572, %1574
  %1576 = sext i32 %1575 to i64
  %1577 = getelementptr inbounds double, ptr %1571, i64 %1576
  %1578 = load double, ptr %1577, align 8, !tbaa !11
  %1579 = call double @llvm.fmuladd.f64(double 0x3C8C000000000000, double %1578, double %1570)
  %1580 = load ptr, ptr %7, align 8, !tbaa !9
  %1581 = load i32, ptr %12, align 4, !tbaa !5
  %1582 = load i32, ptr %8, align 4, !tbaa !5
  %1583 = mul nsw i32 17, %1582
  %1584 = add nsw i32 %1581, %1583
  %1585 = sext i32 %1584 to i64
  %1586 = getelementptr inbounds double, ptr %1580, i64 %1585
  %1587 = load double, ptr %1586, align 8, !tbaa !11
  %1588 = call double @llvm.fmuladd.f64(double 0xBC78000000000002, double %1587, double %1579)
  %1589 = load ptr, ptr %7, align 8, !tbaa !9
  %1590 = load i32, ptr %12, align 4, !tbaa !5
  %1591 = load i32, ptr %8, align 4, !tbaa !5
  %1592 = mul nsw i32 18, %1591
  %1593 = add nsw i32 %1590, %1592
  %1594 = sext i32 %1593 to i64
  %1595 = getelementptr inbounds double, ptr %1589, i64 %1594
  %1596 = load double, ptr %1595, align 8, !tbaa !11
  %1597 = call double @llvm.fmuladd.f64(double 0xBC98000000000000, double %1596, double %1588)
  %1598 = load ptr, ptr %7, align 8, !tbaa !9
  %1599 = load i32, ptr %12, align 4, !tbaa !5
  %1600 = load i32, ptr %8, align 4, !tbaa !5
  %1601 = mul nsw i32 19, %1600
  %1602 = add nsw i32 %1599, %1601
  %1603 = sext i32 %1602 to i64
  %1604 = getelementptr inbounds double, ptr %1598, i64 %1603
  %1605 = load double, ptr %1604, align 8, !tbaa !11
  %1606 = call double @llvm.fmuladd.f64(double 0x3C98000000000000, double %1605, double %1597)
  %1607 = load ptr, ptr %7, align 8, !tbaa !9
  %1608 = load i32, ptr %12, align 4, !tbaa !5
  %1609 = load i32, ptr %8, align 4, !tbaa !5
  %1610 = mul nsw i32 20, %1609
  %1611 = add nsw i32 %1608, %1610
  %1612 = sext i32 %1611 to i64
  %1613 = getelementptr inbounds double, ptr %1607, i64 %1612
  %1614 = load double, ptr %1613, align 8, !tbaa !11
  %1615 = call double @llvm.fmuladd.f64(double 0xBCC1000000000000, double %1614, double %1606)
  %1616 = load ptr, ptr %7, align 8, !tbaa !9
  %1617 = load i32, ptr %12, align 4, !tbaa !5
  %1618 = load i32, ptr %8, align 4, !tbaa !5
  %1619 = mul nsw i32 21, %1618
  %1620 = add nsw i32 %1617, %1619
  %1621 = sext i32 %1620 to i64
  %1622 = getelementptr inbounds double, ptr %1616, i64 %1621
  %1623 = load double, ptr %1622, align 8, !tbaa !11
  %1624 = call double @llvm.fmuladd.f64(double 0xBCA2000000000000, double %1623, double %1615)
  %1625 = load ptr, ptr %7, align 8, !tbaa !9
  %1626 = load i32, ptr %12, align 4, !tbaa !5
  %1627 = load i32, ptr %8, align 4, !tbaa !5
  %1628 = mul nsw i32 22, %1627
  %1629 = add nsw i32 %1626, %1628
  %1630 = sext i32 %1629 to i64
  %1631 = getelementptr inbounds double, ptr %1625, i64 %1630
  %1632 = load double, ptr %1631, align 8, !tbaa !11
  %1633 = call double @llvm.fmuladd.f64(double 0xBCAE000000000002, double %1632, double %1624)
  %1634 = load ptr, ptr %7, align 8, !tbaa !9
  %1635 = load i32, ptr %12, align 4, !tbaa !5
  %1636 = load i32, ptr %8, align 4, !tbaa !5
  %1637 = mul nsw i32 23, %1636
  %1638 = add nsw i32 %1635, %1637
  %1639 = sext i32 %1638 to i64
  %1640 = getelementptr inbounds double, ptr %1634, i64 %1639
  %1641 = load double, ptr %1640, align 8, !tbaa !11
  %1642 = call double @llvm.fmuladd.f64(double 0x3CB6400000000001, double %1641, double %1633)
  %1643 = load ptr, ptr %7, align 8, !tbaa !9
  %1644 = load i32, ptr %12, align 4, !tbaa !5
  %1645 = load i32, ptr %8, align 4, !tbaa !5
  %1646 = mul nsw i32 24, %1645
  %1647 = add nsw i32 %1644, %1646
  %1648 = sext i32 %1647 to i64
  %1649 = getelementptr inbounds double, ptr %1643, i64 %1648
  %1650 = load double, ptr %1649, align 8, !tbaa !11
  %1651 = call double @llvm.fmuladd.f64(double 0x3FD9A613A5CEF639, double %1650, double %1642)
  %1652 = load ptr, ptr %7, align 8, !tbaa !9
  %1653 = load i32, ptr %12, align 4, !tbaa !5
  %1654 = load i32, ptr %8, align 4, !tbaa !5
  %1655 = mul nsw i32 25, %1654
  %1656 = add nsw i32 %1653, %1655
  %1657 = sext i32 %1656 to i64
  %1658 = getelementptr inbounds double, ptr %1652, i64 %1657
  %1659 = load double, ptr %1658, align 8, !tbaa !11
  %1660 = call double @llvm.fmuladd.f64(double 0x3CB5000000000000, double %1659, double %1651)
  %1661 = load ptr, ptr %7, align 8, !tbaa !9
  %1662 = load i32, ptr %12, align 4, !tbaa !5
  %1663 = load i32, ptr %8, align 4, !tbaa !5
  %1664 = mul nsw i32 26, %1663
  %1665 = add nsw i32 %1662, %1664
  %1666 = sext i32 %1665 to i64
  %1667 = getelementptr inbounds double, ptr %1661, i64 %1666
  %1668 = load double, ptr %1667, align 8, !tbaa !11
  %1669 = call double @llvm.fmuladd.f64(double 0x3C95000000000000, double %1668, double %1660)
  %1670 = load ptr, ptr %7, align 8, !tbaa !9
  %1671 = load i32, ptr %12, align 4, !tbaa !5
  %1672 = load i32, ptr %8, align 4, !tbaa !5
  %1673 = mul nsw i32 27, %1672
  %1674 = add nsw i32 %1671, %1673
  %1675 = sext i32 %1674 to i64
  %1676 = getelementptr inbounds double, ptr %1670, i64 %1675
  %1677 = load double, ptr %1676, align 8, !tbaa !11
  %1678 = call double @llvm.fmuladd.f64(double 0xBC9B000000000000, double %1677, double %1669)
  %1679 = load ptr, ptr %7, align 8, !tbaa !9
  %1680 = load i32, ptr %12, align 4, !tbaa !5
  %1681 = load i32, ptr %8, align 4, !tbaa !5
  %1682 = mul nsw i32 28, %1681
  %1683 = add nsw i32 %1680, %1682
  %1684 = sext i32 %1683 to i64
  %1685 = getelementptr inbounds double, ptr %1679, i64 %1684
  %1686 = load double, ptr %1685, align 8, !tbaa !11
  %1687 = call double @llvm.fmuladd.f64(double 0x3C88000000000000, double %1686, double %1678)
  %1688 = load ptr, ptr %7, align 8, !tbaa !9
  %1689 = load i32, ptr %12, align 4, !tbaa !5
  %1690 = load i32, ptr %8, align 4, !tbaa !5
  %1691 = mul nsw i32 30, %1690
  %1692 = add nsw i32 %1689, %1691
  %1693 = sext i32 %1692 to i64
  %1694 = getelementptr inbounds double, ptr %1688, i64 %1693
  %1695 = load double, ptr %1694, align 8, !tbaa !11
  %1696 = call double @llvm.fmuladd.f64(double 0xBCA4000000000001, double %1695, double %1687)
  %1697 = load ptr, ptr %7, align 8, !tbaa !9
  %1698 = load i32, ptr %12, align 4, !tbaa !5
  %1699 = load i32, ptr %8, align 4, !tbaa !5
  %1700 = mul nsw i32 31, %1699
  %1701 = add nsw i32 %1698, %1700
  %1702 = sext i32 %1701 to i64
  %1703 = getelementptr inbounds double, ptr %1697, i64 %1702
  %1704 = load double, ptr %1703, align 8, !tbaa !11
  %1705 = call double @llvm.fmuladd.f64(double 0x3C84000000000000, double %1704, double %1696)
  %1706 = load ptr, ptr %7, align 8, !tbaa !9
  %1707 = load i32, ptr %12, align 4, !tbaa !5
  %1708 = load i32, ptr %8, align 4, !tbaa !5
  %1709 = mul nsw i32 32, %1708
  %1710 = add nsw i32 %1707, %1709
  %1711 = sext i32 %1710 to i64
  %1712 = getelementptr inbounds double, ptr %1706, i64 %1711
  %1713 = load double, ptr %1712, align 8, !tbaa !11
  %1714 = call double @llvm.fmuladd.f64(double 0xBC76FFFFFFFFFFFF, double %1713, double %1705)
  %1715 = load ptr, ptr %7, align 8, !tbaa !9
  %1716 = load i32, ptr %12, align 4, !tbaa !5
  %1717 = load i32, ptr %8, align 4, !tbaa !5
  %1718 = mul nsw i32 33, %1717
  %1719 = add nsw i32 %1716, %1718
  %1720 = sext i32 %1719 to i64
  %1721 = getelementptr inbounds double, ptr %1715, i64 %1720
  %1722 = load double, ptr %1721, align 8, !tbaa !11
  %1723 = call double @llvm.fmuladd.f64(double 0xBC817FFFFFFFFFFF, double %1722, double %1714)
  %1724 = load ptr, ptr %7, align 8, !tbaa !9
  %1725 = load i32, ptr %12, align 4, !tbaa !5
  %1726 = load i32, ptr %8, align 4, !tbaa !5
  %1727 = mul nsw i32 34, %1726
  %1728 = add nsw i32 %1725, %1727
  %1729 = sext i32 %1728 to i64
  %1730 = getelementptr inbounds double, ptr %1724, i64 %1729
  %1731 = load double, ptr %1730, align 8, !tbaa !11
  %1732 = call double @llvm.fmuladd.f64(double 0xBFBD29AD687BB056, double %1731, double %1723)
  %1733 = load ptr, ptr %7, align 8, !tbaa !9
  %1734 = load i32, ptr %12, align 4, !tbaa !5
  %1735 = load i32, ptr %8, align 4, !tbaa !5
  %1736 = mul nsw i32 35, %1735
  %1737 = add nsw i32 %1734, %1736
  %1738 = sext i32 %1737 to i64
  %1739 = getelementptr inbounds double, ptr %1733, i64 %1738
  %1740 = load double, ptr %1739, align 8, !tbaa !11
  %1741 = call double @llvm.fmuladd.f64(double 0xBCA1800000000000, double %1740, double %1732)
  %1742 = load ptr, ptr %7, align 8, !tbaa !9
  %1743 = load i32, ptr %12, align 4, !tbaa !5
  %1744 = load i32, ptr %8, align 4, !tbaa !5
  %1745 = mul nsw i32 36, %1744
  %1746 = add nsw i32 %1743, %1745
  %1747 = sext i32 %1746 to i64
  %1748 = getelementptr inbounds double, ptr %1742, i64 %1747
  %1749 = load double, ptr %1748, align 8, !tbaa !11
  %1750 = call double @llvm.fmuladd.f64(double 0x3CAC800000000000, double %1749, double %1741)
  %1751 = load ptr, ptr %7, align 8, !tbaa !9
  %1752 = load i32, ptr %12, align 4, !tbaa !5
  %1753 = load i32, ptr %8, align 4, !tbaa !5
  %1754 = mul nsw i32 37, %1753
  %1755 = add nsw i32 %1752, %1754
  %1756 = sext i32 %1755 to i64
  %1757 = getelementptr inbounds double, ptr %1751, i64 %1756
  %1758 = load double, ptr %1757, align 8, !tbaa !11
  %1759 = call double @llvm.fmuladd.f64(double 0x3CA23FFFFFFFFFFF, double %1758, double %1750)
  %1760 = load ptr, ptr %7, align 8, !tbaa !9
  %1761 = load i32, ptr %12, align 4, !tbaa !5
  %1762 = load i32, ptr %8, align 4, !tbaa !5
  %1763 = mul nsw i32 38, %1762
  %1764 = add nsw i32 %1761, %1763
  %1765 = sext i32 %1764 to i64
  %1766 = getelementptr inbounds double, ptr %1760, i64 %1765
  %1767 = load double, ptr %1766, align 8, !tbaa !11
  %1768 = call double @llvm.fmuladd.f64(double 0x3C60000000000000, double %1767, double %1759)
  %1769 = load ptr, ptr %7, align 8, !tbaa !9
  %1770 = load i32, ptr %12, align 4, !tbaa !5
  %1771 = load i32, ptr %8, align 4, !tbaa !5
  %1772 = mul nsw i32 39, %1771
  %1773 = add nsw i32 %1770, %1772
  %1774 = sext i32 %1773 to i64
  %1775 = getelementptr inbounds double, ptr %1769, i64 %1774
  %1776 = load double, ptr %1775, align 8, !tbaa !11
  %1777 = call double @llvm.fmuladd.f64(double 0xBCA0000000000002, double %1776, double %1768)
  store double %1777, ptr %11, align 8, !tbaa !11
  %1778 = load double, ptr %11, align 8, !tbaa !11
  %1779 = load ptr, ptr %9, align 8, !tbaa !9
  %1780 = load i32, ptr %12, align 4, !tbaa !5
  %1781 = load i32, ptr %10, align 4, !tbaa !5
  %1782 = mul nsw i32 4, %1781
  %1783 = add nsw i32 %1780, %1782
  %1784 = sext i32 %1783 to i64
  %1785 = getelementptr inbounds double, ptr %1779, i64 %1784
  %1786 = load double, ptr %1785, align 8, !tbaa !11
  %1787 = fadd double %1786, %1778
  store double %1787, ptr %1785, align 8, !tbaa !11
  %1788 = load ptr, ptr %7, align 8, !tbaa !9
  %1789 = load i32, ptr %12, align 4, !tbaa !5
  %1790 = load i32, ptr %8, align 4, !tbaa !5
  %1791 = mul nsw i32 0, %1790
  %1792 = add nsw i32 %1789, %1791
  %1793 = sext i32 %1792 to i64
  %1794 = getelementptr inbounds double, ptr %1788, i64 %1793
  %1795 = load double, ptr %1794, align 8, !tbaa !11
  %1796 = load ptr, ptr %7, align 8, !tbaa !9
  %1797 = load i32, ptr %12, align 4, !tbaa !5
  %1798 = load i32, ptr %8, align 4, !tbaa !5
  %1799 = mul nsw i32 1, %1798
  %1800 = add nsw i32 %1797, %1799
  %1801 = sext i32 %1800 to i64
  %1802 = getelementptr inbounds double, ptr %1796, i64 %1801
  %1803 = load double, ptr %1802, align 8, !tbaa !11
  %1804 = fmul double 0xBC92000000000000, %1803
  %1805 = call double @llvm.fmuladd.f64(double 0x3CA9FFFFFFFFFFFE, double %1795, double %1804)
  %1806 = load ptr, ptr %7, align 8, !tbaa !9
  %1807 = load i32, ptr %12, align 4, !tbaa !5
  %1808 = load i32, ptr %8, align 4, !tbaa !5
  %1809 = mul nsw i32 2, %1808
  %1810 = add nsw i32 %1807, %1809
  %1811 = sext i32 %1810 to i64
  %1812 = getelementptr inbounds double, ptr %1806, i64 %1811
  %1813 = load double, ptr %1812, align 8, !tbaa !11
  %1814 = call double @llvm.fmuladd.f64(double 0xBC76000000000001, double %1813, double %1805)
  %1815 = load ptr, ptr %7, align 8, !tbaa !9
  %1816 = load i32, ptr %12, align 4, !tbaa !5
  %1817 = load i32, ptr %8, align 4, !tbaa !5
  %1818 = mul nsw i32 3, %1817
  %1819 = add nsw i32 %1816, %1818
  %1820 = sext i32 %1819 to i64
  %1821 = getelementptr inbounds double, ptr %1815, i64 %1820
  %1822 = load double, ptr %1821, align 8, !tbaa !11
  %1823 = call double @llvm.fmuladd.f64(double 0x3CABA00000000001, double %1822, double %1814)
  %1824 = load ptr, ptr %7, align 8, !tbaa !9
  %1825 = load i32, ptr %12, align 4, !tbaa !5
  %1826 = load i32, ptr %8, align 4, !tbaa !5
  %1827 = mul nsw i32 4, %1826
  %1828 = add nsw i32 %1825, %1827
  %1829 = sext i32 %1828 to i64
  %1830 = getelementptr inbounds double, ptr %1824, i64 %1829
  %1831 = load double, ptr %1830, align 8, !tbaa !11
  %1832 = call double @llvm.fmuladd.f64(double 0x3C93000000000000, double %1831, double %1823)
  %1833 = load ptr, ptr %7, align 8, !tbaa !9
  %1834 = load i32, ptr %12, align 4, !tbaa !5
  %1835 = load i32, ptr %8, align 4, !tbaa !5
  %1836 = mul nsw i32 5, %1835
  %1837 = add nsw i32 %1834, %1836
  %1838 = sext i32 %1837 to i64
  %1839 = getelementptr inbounds double, ptr %1833, i64 %1838
  %1840 = load double, ptr %1839, align 8, !tbaa !11
  %1841 = call double @llvm.fmuladd.f64(double 0x3FF86DB962AC2966, double %1840, double %1832)
  %1842 = load ptr, ptr %7, align 8, !tbaa !9
  %1843 = load i32, ptr %12, align 4, !tbaa !5
  %1844 = load i32, ptr %8, align 4, !tbaa !5
  %1845 = mul nsw i32 6, %1844
  %1846 = add nsw i32 %1843, %1845
  %1847 = sext i32 %1846 to i64
  %1848 = getelementptr inbounds double, ptr %1842, i64 %1847
  %1849 = load double, ptr %1848, align 8, !tbaa !11
  %1850 = call double @llvm.fmuladd.f64(double 0xBC84000000000000, double %1849, double %1841)
  %1851 = load ptr, ptr %7, align 8, !tbaa !9
  %1852 = load i32, ptr %12, align 4, !tbaa !5
  %1853 = load i32, ptr %8, align 4, !tbaa !5
  %1854 = mul nsw i32 7, %1853
  %1855 = add nsw i32 %1852, %1854
  %1856 = sext i32 %1855 to i64
  %1857 = getelementptr inbounds double, ptr %1851, i64 %1856
  %1858 = load double, ptr %1857, align 8, !tbaa !11
  %1859 = call double @llvm.fmuladd.f64(double 0xBC64000000000000, double %1858, double %1850)
  %1860 = load ptr, ptr %7, align 8, !tbaa !9
  %1861 = load i32, ptr %12, align 4, !tbaa !5
  %1862 = load i32, ptr %8, align 4, !tbaa !5
  %1863 = mul nsw i32 8, %1862
  %1864 = add nsw i32 %1861, %1863
  %1865 = sext i32 %1864 to i64
  %1866 = getelementptr inbounds double, ptr %1860, i64 %1865
  %1867 = load double, ptr %1866, align 8, !tbaa !11
  %1868 = call double @llvm.fmuladd.f64(double 0xBCAB000000000001, double %1867, double %1859)
  %1869 = load ptr, ptr %7, align 8, !tbaa !9
  %1870 = load i32, ptr %12, align 4, !tbaa !5
  %1871 = load i32, ptr %8, align 4, !tbaa !5
  %1872 = mul nsw i32 9, %1871
  %1873 = add nsw i32 %1870, %1872
  %1874 = sext i32 %1873 to i64
  %1875 = getelementptr inbounds double, ptr %1869, i64 %1874
  %1876 = load double, ptr %1875, align 8, !tbaa !11
  %1877 = call double @llvm.fmuladd.f64(double 0x3C96000000000000, double %1876, double %1868)
  %1878 = load ptr, ptr %7, align 8, !tbaa !9
  %1879 = load i32, ptr %12, align 4, !tbaa !5
  %1880 = load i32, ptr %8, align 4, !tbaa !5
  %1881 = mul nsw i32 10, %1880
  %1882 = add nsw i32 %1879, %1881
  %1883 = sext i32 %1882 to i64
  %1884 = getelementptr inbounds double, ptr %1878, i64 %1883
  %1885 = load double, ptr %1884, align 8, !tbaa !11
  %1886 = call double @llvm.fmuladd.f64(double 0x3C7FFFFFFFFFFFFF, double %1885, double %1877)
  %1887 = load ptr, ptr %7, align 8, !tbaa !9
  %1888 = load i32, ptr %12, align 4, !tbaa !5
  %1889 = load i32, ptr %8, align 4, !tbaa !5
  %1890 = mul nsw i32 11, %1889
  %1891 = add nsw i32 %1888, %1890
  %1892 = sext i32 %1891 to i64
  %1893 = getelementptr inbounds double, ptr %1887, i64 %1892
  %1894 = load double, ptr %1893, align 8, !tbaa !11
  %1895 = call double @llvm.fmuladd.f64(double 0x3C94000000000000, double %1894, double %1886)
  %1896 = load ptr, ptr %7, align 8, !tbaa !9
  %1897 = load i32, ptr %12, align 4, !tbaa !5
  %1898 = load i32, ptr %8, align 4, !tbaa !5
  %1899 = mul nsw i32 12, %1898
  %1900 = add nsw i32 %1897, %1899
  %1901 = sext i32 %1900 to i64
  %1902 = getelementptr inbounds double, ptr %1896, i64 %1901
  %1903 = load double, ptr %1902, align 8, !tbaa !11
  %1904 = call double @llvm.fmuladd.f64(double 0xBC7C000000000000, double %1903, double %1895)
  %1905 = load ptr, ptr %7, align 8, !tbaa !9
  %1906 = load i32, ptr %12, align 4, !tbaa !5
  %1907 = load i32, ptr %8, align 4, !tbaa !5
  %1908 = mul nsw i32 13, %1907
  %1909 = add nsw i32 %1906, %1908
  %1910 = sext i32 %1909 to i64
  %1911 = getelementptr inbounds double, ptr %1905, i64 %1910
  %1912 = load double, ptr %1911, align 8, !tbaa !11
  %1913 = call double @llvm.fmuladd.f64(double 0x3C89FFFFFFFFFFFF, double %1912, double %1904)
  %1914 = load ptr, ptr %7, align 8, !tbaa !9
  %1915 = load i32, ptr %12, align 4, !tbaa !5
  %1916 = load i32, ptr %8, align 4, !tbaa !5
  %1917 = mul nsw i32 15, %1916
  %1918 = add nsw i32 %1915, %1917
  %1919 = sext i32 %1918 to i64
  %1920 = getelementptr inbounds double, ptr %1914, i64 %1919
  %1921 = load double, ptr %1920, align 8, !tbaa !11
  %1922 = call double @llvm.fmuladd.f64(double 0xBFEA0946EB3057DD, double %1921, double %1913)
  %1923 = load ptr, ptr %7, align 8, !tbaa !9
  %1924 = load i32, ptr %12, align 4, !tbaa !5
  %1925 = load i32, ptr %8, align 4, !tbaa !5
  %1926 = mul nsw i32 16, %1925
  %1927 = add nsw i32 %1924, %1926
  %1928 = sext i32 %1927 to i64
  %1929 = getelementptr inbounds double, ptr %1923, i64 %1928
  %1930 = load double, ptr %1929, align 8, !tbaa !11
  %1931 = call double @llvm.fmuladd.f64(double 0x3CA2FFFFFFFFFFFE, double %1930, double %1922)
  %1932 = load ptr, ptr %7, align 8, !tbaa !9
  %1933 = load i32, ptr %12, align 4, !tbaa !5
  %1934 = load i32, ptr %8, align 4, !tbaa !5
  %1935 = mul nsw i32 17, %1934
  %1936 = add nsw i32 %1933, %1935
  %1937 = sext i32 %1936 to i64
  %1938 = getelementptr inbounds double, ptr %1932, i64 %1937
  %1939 = load double, ptr %1938, align 8, !tbaa !11
  %1940 = call double @llvm.fmuladd.f64(double 0x3C78000000000002, double %1939, double %1931)
  %1941 = load ptr, ptr %7, align 8, !tbaa !9
  %1942 = load i32, ptr %12, align 4, !tbaa !5
  %1943 = load i32, ptr %8, align 4, !tbaa !5
  %1944 = mul nsw i32 18, %1943
  %1945 = add nsw i32 %1942, %1944
  %1946 = sext i32 %1945 to i64
  %1947 = getelementptr inbounds double, ptr %1941, i64 %1946
  %1948 = load double, ptr %1947, align 8, !tbaa !11
  %1949 = call double @llvm.fmuladd.f64(double 0x3C7FFFFFFFFFFFFF, double %1948, double %1940)
  %1950 = load ptr, ptr %7, align 8, !tbaa !9
  %1951 = load i32, ptr %12, align 4, !tbaa !5
  %1952 = load i32, ptr %8, align 4, !tbaa !5
  %1953 = mul nsw i32 19, %1952
  %1954 = add nsw i32 %1951, %1953
  %1955 = sext i32 %1954 to i64
  %1956 = getelementptr inbounds double, ptr %1950, i64 %1955
  %1957 = load double, ptr %1956, align 8, !tbaa !11
  %1958 = call double @llvm.fmuladd.f64(double 0xBC94000000000000, double %1957, double %1949)
  %1959 = load ptr, ptr %7, align 8, !tbaa !9
  %1960 = load i32, ptr %12, align 4, !tbaa !5
  %1961 = load i32, ptr %8, align 4, !tbaa !5
  %1962 = mul nsw i32 20, %1961
  %1963 = add nsw i32 %1960, %1962
  %1964 = sext i32 %1963 to i64
  %1965 = getelementptr inbounds double, ptr %1959, i64 %1964
  %1966 = load double, ptr %1965, align 8, !tbaa !11
  %1967 = call double @llvm.fmuladd.f64(double 0x3C7FFFFFFFFFFFFF, double %1966, double %1958)
  %1968 = load ptr, ptr %7, align 8, !tbaa !9
  %1969 = load i32, ptr %12, align 4, !tbaa !5
  %1970 = load i32, ptr %8, align 4, !tbaa !5
  %1971 = mul nsw i32 21, %1970
  %1972 = add nsw i32 %1969, %1971
  %1973 = sext i32 %1972 to i64
  %1974 = getelementptr inbounds double, ptr %1968, i64 %1973
  %1975 = load double, ptr %1974, align 8, !tbaa !11
  %1976 = call double @llvm.fmuladd.f64(double 0x3C88000000000000, double %1975, double %1967)
  %1977 = load ptr, ptr %7, align 8, !tbaa !9
  %1978 = load i32, ptr %12, align 4, !tbaa !5
  %1979 = load i32, ptr %8, align 4, !tbaa !5
  %1980 = mul nsw i32 22, %1979
  %1981 = add nsw i32 %1978, %1980
  %1982 = sext i32 %1981 to i64
  %1983 = getelementptr inbounds double, ptr %1977, i64 %1982
  %1984 = load double, ptr %1983, align 8, !tbaa !11
  %1985 = call double @llvm.fmuladd.f64(double 0x3C92000000000000, double %1984, double %1976)
  %1986 = load ptr, ptr %7, align 8, !tbaa !9
  %1987 = load i32, ptr %12, align 4, !tbaa !5
  %1988 = load i32, ptr %8, align 4, !tbaa !5
  %1989 = mul nsw i32 23, %1988
  %1990 = add nsw i32 %1987, %1989
  %1991 = sext i32 %1990 to i64
  %1992 = getelementptr inbounds double, ptr %1986, i64 %1991
  %1993 = load double, ptr %1992, align 8, !tbaa !11
  %1994 = call double @llvm.fmuladd.f64(double 0xBCA27FFFFFFFFFFF, double %1993, double %1985)
  %1995 = load ptr, ptr %7, align 8, !tbaa !9
  %1996 = load i32, ptr %12, align 4, !tbaa !5
  %1997 = load i32, ptr %8, align 4, !tbaa !5
  %1998 = mul nsw i32 25, %1997
  %1999 = add nsw i32 %1996, %1998
  %2000 = sext i32 %1999 to i64
  %2001 = getelementptr inbounds double, ptr %1995, i64 %2000
  %2002 = load double, ptr %2001, align 8, !tbaa !11
  %2003 = call double @llvm.fmuladd.f64(double 0x3FD9A613A5CEF639, double %2002, double %1994)
  %2004 = load ptr, ptr %7, align 8, !tbaa !9
  %2005 = load i32, ptr %12, align 4, !tbaa !5
  %2006 = load i32, ptr %8, align 4, !tbaa !5
  %2007 = mul nsw i32 26, %2006
  %2008 = add nsw i32 %2005, %2007
  %2009 = sext i32 %2008 to i64
  %2010 = getelementptr inbounds double, ptr %2004, i64 %2009
  %2011 = load double, ptr %2010, align 8, !tbaa !11
  %2012 = call double @llvm.fmuladd.f64(double 0xBCA7800000000001, double %2011, double %2003)
  %2013 = load ptr, ptr %7, align 8, !tbaa !9
  %2014 = load i32, ptr %12, align 4, !tbaa !5
  %2015 = load i32, ptr %8, align 4, !tbaa !5
  %2016 = mul nsw i32 27, %2015
  %2017 = add nsw i32 %2014, %2016
  %2018 = sext i32 %2017 to i64
  %2019 = getelementptr inbounds double, ptr %2013, i64 %2018
  %2020 = load double, ptr %2019, align 8, !tbaa !11
  %2021 = call double @llvm.fmuladd.f64(double 0xBC86000000000001, double %2020, double %2012)
  %2022 = load ptr, ptr %7, align 8, !tbaa !9
  %2023 = load i32, ptr %12, align 4, !tbaa !5
  %2024 = load i32, ptr %8, align 4, !tbaa !5
  %2025 = mul nsw i32 28, %2024
  %2026 = add nsw i32 %2023, %2025
  %2027 = sext i32 %2026 to i64
  %2028 = getelementptr inbounds double, ptr %2022, i64 %2027
  %2029 = load double, ptr %2028, align 8, !tbaa !11
  %2030 = call double @llvm.fmuladd.f64(double 0xBC88000000000000, double %2029, double %2021)
  %2031 = load ptr, ptr %7, align 8, !tbaa !9
  %2032 = load i32, ptr %12, align 4, !tbaa !5
  %2033 = load i32, ptr %8, align 4, !tbaa !5
  %2034 = mul nsw i32 29, %2033
  %2035 = add nsw i32 %2032, %2034
  %2036 = sext i32 %2035 to i64
  %2037 = getelementptr inbounds double, ptr %2031, i64 %2036
  %2038 = load double, ptr %2037, align 8, !tbaa !11
  %2039 = call double @llvm.fmuladd.f64(double 0x3C98000000000000, double %2038, double %2030)
  %2040 = load ptr, ptr %7, align 8, !tbaa !9
  %2041 = load i32, ptr %12, align 4, !tbaa !5
  %2042 = load i32, ptr %8, align 4, !tbaa !5
  %2043 = mul nsw i32 30, %2042
  %2044 = add nsw i32 %2041, %2043
  %2045 = sext i32 %2044 to i64
  %2046 = getelementptr inbounds double, ptr %2040, i64 %2045
  %2047 = load double, ptr %2046, align 8, !tbaa !11
  %2048 = call double @llvm.fmuladd.f64(double 0xBCAC000000000000, double %2047, double %2039)
  %2049 = load ptr, ptr %7, align 8, !tbaa !9
  %2050 = load i32, ptr %12, align 4, !tbaa !5
  %2051 = load i32, ptr %8, align 4, !tbaa !5
  %2052 = mul nsw i32 31, %2051
  %2053 = add nsw i32 %2050, %2052
  %2054 = sext i32 %2053 to i64
  %2055 = getelementptr inbounds double, ptr %2049, i64 %2054
  %2056 = load double, ptr %2055, align 8, !tbaa !11
  %2057 = call double @llvm.fmuladd.f64(double 0xBC98000000000000, double %2056, double %2048)
  %2058 = load ptr, ptr %7, align 8, !tbaa !9
  %2059 = load i32, ptr %12, align 4, !tbaa !5
  %2060 = load i32, ptr %8, align 4, !tbaa !5
  %2061 = mul nsw i32 32, %2060
  %2062 = add nsw i32 %2059, %2061
  %2063 = sext i32 %2062 to i64
  %2064 = getelementptr inbounds double, ptr %2058, i64 %2063
  %2065 = load double, ptr %2064, align 8, !tbaa !11
  %2066 = call double @llvm.fmuladd.f64(double 0xBC97C00000000000, double %2065, double %2057)
  %2067 = load ptr, ptr %7, align 8, !tbaa !9
  %2068 = load i32, ptr %12, align 4, !tbaa !5
  %2069 = load i32, ptr %8, align 4, !tbaa !5
  %2070 = mul nsw i32 33, %2069
  %2071 = add nsw i32 %2068, %2070
  %2072 = sext i32 %2071 to i64
  %2073 = getelementptr inbounds double, ptr %2067, i64 %2072
  %2074 = load double, ptr %2073, align 8, !tbaa !11
  %2075 = call double @llvm.fmuladd.f64(double 0xBC66000000000000, double %2074, double %2066)
  %2076 = load ptr, ptr %7, align 8, !tbaa !9
  %2077 = load i32, ptr %12, align 4, !tbaa !5
  %2078 = load i32, ptr %8, align 4, !tbaa !5
  %2079 = mul nsw i32 34, %2078
  %2080 = add nsw i32 %2077, %2079
  %2081 = sext i32 %2080 to i64
  %2082 = getelementptr inbounds double, ptr %2076, i64 %2081
  %2083 = load double, ptr %2082, align 8, !tbaa !11
  %2084 = call double @llvm.fmuladd.f64(double 0x3C9A000000000000, double %2083, double %2075)
  %2085 = load ptr, ptr %7, align 8, !tbaa !9
  %2086 = load i32, ptr %12, align 4, !tbaa !5
  %2087 = load i32, ptr %8, align 4, !tbaa !5
  %2088 = mul nsw i32 35, %2087
  %2089 = add nsw i32 %2086, %2088
  %2090 = sext i32 %2089 to i64
  %2091 = getelementptr inbounds double, ptr %2085, i64 %2090
  %2092 = load double, ptr %2091, align 8, !tbaa !11
  %2093 = call double @llvm.fmuladd.f64(double 0xBFBD29AD687BB04F, double %2092, double %2084)
  %2094 = load ptr, ptr %7, align 8, !tbaa !9
  %2095 = load i32, ptr %12, align 4, !tbaa !5
  %2096 = load i32, ptr %8, align 4, !tbaa !5
  %2097 = mul nsw i32 36, %2096
  %2098 = add nsw i32 %2095, %2097
  %2099 = sext i32 %2098 to i64
  %2100 = getelementptr inbounds double, ptr %2094, i64 %2099
  %2101 = load double, ptr %2100, align 8, !tbaa !11
  %2102 = call double @llvm.fmuladd.f64(double 0x3C70000000000001, double %2101, double %2093)
  %2103 = load ptr, ptr %7, align 8, !tbaa !9
  %2104 = load i32, ptr %12, align 4, !tbaa !5
  %2105 = load i32, ptr %8, align 4, !tbaa !5
  %2106 = mul nsw i32 37, %2105
  %2107 = add nsw i32 %2104, %2106
  %2108 = sext i32 %2107 to i64
  %2109 = getelementptr inbounds double, ptr %2103, i64 %2108
  %2110 = load double, ptr %2109, align 8, !tbaa !11
  %2111 = call double @llvm.fmuladd.f64(double 0xBC64000000000000, double %2110, double %2102)
  %2112 = load ptr, ptr %7, align 8, !tbaa !9
  %2113 = load i32, ptr %12, align 4, !tbaa !5
  %2114 = load i32, ptr %8, align 4, !tbaa !5
  %2115 = mul nsw i32 38, %2114
  %2116 = add nsw i32 %2113, %2115
  %2117 = sext i32 %2116 to i64
  %2118 = getelementptr inbounds double, ptr %2112, i64 %2117
  %2119 = load double, ptr %2118, align 8, !tbaa !11
  %2120 = call double @llvm.fmuladd.f64(double 0x3CA4000000000001, double %2119, double %2111)
  %2121 = load ptr, ptr %7, align 8, !tbaa !9
  %2122 = load i32, ptr %12, align 4, !tbaa !5
  %2123 = load i32, ptr %8, align 4, !tbaa !5
  %2124 = mul nsw i32 39, %2123
  %2125 = add nsw i32 %2122, %2124
  %2126 = sext i32 %2125 to i64
  %2127 = getelementptr inbounds double, ptr %2121, i64 %2126
  %2128 = load double, ptr %2127, align 8, !tbaa !11
  %2129 = call double @llvm.fmuladd.f64(double 0xBC8C000000000000, double %2128, double %2120)
  store double %2129, ptr %11, align 8, !tbaa !11
  %2130 = load double, ptr %11, align 8, !tbaa !11
  %2131 = load ptr, ptr %9, align 8, !tbaa !9
  %2132 = load i32, ptr %12, align 4, !tbaa !5
  %2133 = load i32, ptr %10, align 4, !tbaa !5
  %2134 = mul nsw i32 5, %2133
  %2135 = add nsw i32 %2132, %2134
  %2136 = sext i32 %2135 to i64
  %2137 = getelementptr inbounds double, ptr %2131, i64 %2136
  %2138 = load double, ptr %2137, align 8, !tbaa !11
  %2139 = fadd double %2138, %2130
  store double %2139, ptr %2137, align 8, !tbaa !11
  %2140 = load ptr, ptr %7, align 8, !tbaa !9
  %2141 = load i32, ptr %12, align 4, !tbaa !5
  %2142 = load i32, ptr %8, align 4, !tbaa !5
  %2143 = mul nsw i32 0, %2142
  %2144 = add nsw i32 %2141, %2143
  %2145 = sext i32 %2144 to i64
  %2146 = getelementptr inbounds double, ptr %2140, i64 %2145
  %2147 = load double, ptr %2146, align 8, !tbaa !11
  %2148 = load ptr, ptr %7, align 8, !tbaa !9
  %2149 = load i32, ptr %12, align 4, !tbaa !5
  %2150 = load i32, ptr %8, align 4, !tbaa !5
  %2151 = mul nsw i32 1, %2150
  %2152 = add nsw i32 %2149, %2151
  %2153 = sext i32 %2152 to i64
  %2154 = getelementptr inbounds double, ptr %2148, i64 %2153
  %2155 = load double, ptr %2154, align 8, !tbaa !11
  %2156 = fmul double 0x3CA0C00000000001, %2155
  %2157 = call double @llvm.fmuladd.f64(double 0xBC9C000000000000, double %2147, double %2156)
  %2158 = load ptr, ptr %7, align 8, !tbaa !9
  %2159 = load i32, ptr %12, align 4, !tbaa !5
  %2160 = load i32, ptr %8, align 4, !tbaa !5
  %2161 = mul nsw i32 2, %2160
  %2162 = add nsw i32 %2159, %2161
  %2163 = sext i32 %2162 to i64
  %2164 = getelementptr inbounds double, ptr %2158, i64 %2163
  %2165 = load double, ptr %2164, align 8, !tbaa !11
  %2166 = call double @llvm.fmuladd.f64(double 0xBCA0700000000001, double %2165, double %2157)
  %2167 = load ptr, ptr %7, align 8, !tbaa !9
  %2168 = load i32, ptr %12, align 4, !tbaa !5
  %2169 = load i32, ptr %8, align 4, !tbaa !5
  %2170 = mul nsw i32 3, %2169
  %2171 = add nsw i32 %2168, %2170
  %2172 = sext i32 %2171 to i64
  %2173 = getelementptr inbounds double, ptr %2167, i64 %2172
  %2174 = load double, ptr %2173, align 8, !tbaa !11
  %2175 = call double @llvm.fmuladd.f64(double 0x3C8FC00000000001, double %2174, double %2166)
  %2176 = load ptr, ptr %7, align 8, !tbaa !9
  %2177 = load i32, ptr %12, align 4, !tbaa !5
  %2178 = load i32, ptr %8, align 4, !tbaa !5
  %2179 = mul nsw i32 4, %2178
  %2180 = add nsw i32 %2177, %2179
  %2181 = sext i32 %2180 to i64
  %2182 = getelementptr inbounds double, ptr %2176, i64 %2181
  %2183 = load double, ptr %2182, align 8, !tbaa !11
  %2184 = call double @llvm.fmuladd.f64(double 0x3C71FFFFFFFFFFFF, double %2183, double %2175)
  %2185 = load ptr, ptr %7, align 8, !tbaa !9
  %2186 = load i32, ptr %12, align 4, !tbaa !5
  %2187 = load i32, ptr %8, align 4, !tbaa !5
  %2188 = mul nsw i32 5, %2187
  %2189 = add nsw i32 %2186, %2188
  %2190 = sext i32 %2189 to i64
  %2191 = getelementptr inbounds double, ptr %2185, i64 %2190
  %2192 = load double, ptr %2191, align 8, !tbaa !11
  %2193 = call double @llvm.fmuladd.f64(double 0x3C79FFFFFFFFFFFF, double %2192, double %2184)
  %2194 = load ptr, ptr %7, align 8, !tbaa !9
  %2195 = load i32, ptr %12, align 4, !tbaa !5
  %2196 = load i32, ptr %8, align 4, !tbaa !5
  %2197 = mul nsw i32 6, %2196
  %2198 = add nsw i32 %2195, %2197
  %2199 = sext i32 %2198 to i64
  %2200 = getelementptr inbounds double, ptr %2194, i64 %2199
  %2201 = load double, ptr %2200, align 8, !tbaa !11
  %2202 = call double @llvm.fmuladd.f64(double 0x3FF86DB962AC2966, double %2201, double %2193)
  %2203 = load ptr, ptr %7, align 8, !tbaa !9
  %2204 = load i32, ptr %12, align 4, !tbaa !5
  %2205 = load i32, ptr %8, align 4, !tbaa !5
  %2206 = mul nsw i32 7, %2205
  %2207 = add nsw i32 %2204, %2206
  %2208 = sext i32 %2207 to i64
  %2209 = getelementptr inbounds double, ptr %2203, i64 %2208
  %2210 = load double, ptr %2209, align 8, !tbaa !11
  %2211 = call double @llvm.fmuladd.f64(double 0x3C91400000000000, double %2210, double %2202)
  %2212 = load ptr, ptr %7, align 8, !tbaa !9
  %2213 = load i32, ptr %12, align 4, !tbaa !5
  %2214 = load i32, ptr %8, align 4, !tbaa !5
  %2215 = mul nsw i32 9, %2214
  %2216 = add nsw i32 %2213, %2215
  %2217 = sext i32 %2216 to i64
  %2218 = getelementptr inbounds double, ptr %2212, i64 %2217
  %2219 = load double, ptr %2218, align 8, !tbaa !11
  %2220 = call double @llvm.fmuladd.f64(double 0xBC84000000000000, double %2219, double %2211)
  %2221 = load ptr, ptr %7, align 8, !tbaa !9
  %2222 = load i32, ptr %12, align 4, !tbaa !5
  %2223 = load i32, ptr %8, align 4, !tbaa !5
  %2224 = mul nsw i32 10, %2223
  %2225 = add nsw i32 %2222, %2224
  %2226 = sext i32 %2225 to i64
  %2227 = getelementptr inbounds double, ptr %2221, i64 %2226
  %2228 = load double, ptr %2227, align 8, !tbaa !11
  %2229 = call double @llvm.fmuladd.f64(double 0x3CB3FFFFFFFFFFFF, double %2228, double %2220)
  %2230 = load ptr, ptr %7, align 8, !tbaa !9
  %2231 = load i32, ptr %12, align 4, !tbaa !5
  %2232 = load i32, ptr %8, align 4, !tbaa !5
  %2233 = mul nsw i32 11, %2232
  %2234 = add nsw i32 %2231, %2233
  %2235 = sext i32 %2234 to i64
  %2236 = getelementptr inbounds double, ptr %2230, i64 %2235
  %2237 = load double, ptr %2236, align 8, !tbaa !11
  %2238 = call double @llvm.fmuladd.f64(double 0xBC98000000000000, double %2237, double %2229)
  %2239 = load ptr, ptr %7, align 8, !tbaa !9
  %2240 = load i32, ptr %12, align 4, !tbaa !5
  %2241 = load i32, ptr %8, align 4, !tbaa !5
  %2242 = mul nsw i32 12, %2241
  %2243 = add nsw i32 %2240, %2242
  %2244 = sext i32 %2243 to i64
  %2245 = getelementptr inbounds double, ptr %2239, i64 %2244
  %2246 = load double, ptr %2245, align 8, !tbaa !11
  %2247 = call double @llvm.fmuladd.f64(double 0xBC8B000000000000, double %2246, double %2238)
  %2248 = load ptr, ptr %7, align 8, !tbaa !9
  %2249 = load i32, ptr %12, align 4, !tbaa !5
  %2250 = load i32, ptr %8, align 4, !tbaa !5
  %2251 = mul nsw i32 13, %2250
  %2252 = add nsw i32 %2249, %2251
  %2253 = sext i32 %2252 to i64
  %2254 = getelementptr inbounds double, ptr %2248, i64 %2253
  %2255 = load double, ptr %2254, align 8, !tbaa !11
  %2256 = call double @llvm.fmuladd.f64(double 0x3CA6DFFFFFFFFFFE, double %2255, double %2247)
  %2257 = load ptr, ptr %7, align 8, !tbaa !9
  %2258 = load i32, ptr %12, align 4, !tbaa !5
  %2259 = load i32, ptr %8, align 4, !tbaa !5
  %2260 = mul nsw i32 14, %2259
  %2261 = add nsw i32 %2258, %2260
  %2262 = sext i32 %2261 to i64
  %2263 = getelementptr inbounds double, ptr %2257, i64 %2262
  %2264 = load double, ptr %2263, align 8, !tbaa !11
  %2265 = call double @llvm.fmuladd.f64(double 0x3CA4800000000001, double %2264, double %2256)
  %2266 = load ptr, ptr %7, align 8, !tbaa !9
  %2267 = load i32, ptr %12, align 4, !tbaa !5
  %2268 = load i32, ptr %8, align 4, !tbaa !5
  %2269 = mul nsw i32 15, %2268
  %2270 = add nsw i32 %2267, %2269
  %2271 = sext i32 %2270 to i64
  %2272 = getelementptr inbounds double, ptr %2266, i64 %2271
  %2273 = load double, ptr %2272, align 8, !tbaa !11
  %2274 = call double @llvm.fmuladd.f64(double 0xBC50000000000000, double %2273, double %2265)
  %2275 = load ptr, ptr %7, align 8, !tbaa !9
  %2276 = load i32, ptr %12, align 4, !tbaa !5
  %2277 = load i32, ptr %8, align 4, !tbaa !5
  %2278 = mul nsw i32 16, %2277
  %2279 = add nsw i32 %2276, %2278
  %2280 = sext i32 %2279 to i64
  %2281 = getelementptr inbounds double, ptr %2275, i64 %2280
  %2282 = load double, ptr %2281, align 8, !tbaa !11
  %2283 = call double @llvm.fmuladd.f64(double 0xBFEA0946EB3057DA, double %2282, double %2274)
  %2284 = load ptr, ptr %7, align 8, !tbaa !9
  %2285 = load i32, ptr %12, align 4, !tbaa !5
  %2286 = load i32, ptr %8, align 4, !tbaa !5
  %2287 = mul nsw i32 17, %2286
  %2288 = add nsw i32 %2285, %2287
  %2289 = sext i32 %2288 to i64
  %2290 = getelementptr inbounds double, ptr %2284, i64 %2289
  %2291 = load double, ptr %2290, align 8, !tbaa !11
  %2292 = call double @llvm.fmuladd.f64(double 0xBC8E000000000000, double %2291, double %2283)
  %2293 = load ptr, ptr %7, align 8, !tbaa !9
  %2294 = load i32, ptr %12, align 4, !tbaa !5
  %2295 = load i32, ptr %8, align 4, !tbaa !5
  %2296 = mul nsw i32 18, %2295
  %2297 = add nsw i32 %2294, %2296
  %2298 = sext i32 %2297 to i64
  %2299 = getelementptr inbounds double, ptr %2293, i64 %2298
  %2300 = load double, ptr %2299, align 8, !tbaa !11
  %2301 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %2300, double %2292)
  %2302 = load ptr, ptr %7, align 8, !tbaa !9
  %2303 = load i32, ptr %12, align 4, !tbaa !5
  %2304 = load i32, ptr %8, align 4, !tbaa !5
  %2305 = mul nsw i32 19, %2304
  %2306 = add nsw i32 %2303, %2305
  %2307 = sext i32 %2306 to i64
  %2308 = getelementptr inbounds double, ptr %2302, i64 %2307
  %2309 = load double, ptr %2308, align 8, !tbaa !11
  %2310 = call double @llvm.fmuladd.f64(double 0x3C78000000000002, double %2309, double %2301)
  %2311 = load ptr, ptr %7, align 8, !tbaa !9
  %2312 = load i32, ptr %12, align 4, !tbaa !5
  %2313 = load i32, ptr %8, align 4, !tbaa !5
  %2314 = mul nsw i32 20, %2313
  %2315 = add nsw i32 %2312, %2314
  %2316 = sext i32 %2315 to i64
  %2317 = getelementptr inbounds double, ptr %2311, i64 %2316
  %2318 = load double, ptr %2317, align 8, !tbaa !11
  %2319 = call double @llvm.fmuladd.f64(double 0xBCA0000000000002, double %2318, double %2310)
  %2320 = load ptr, ptr %7, align 8, !tbaa !9
  %2321 = load i32, ptr %12, align 4, !tbaa !5
  %2322 = load i32, ptr %8, align 4, !tbaa !5
  %2323 = mul nsw i32 21, %2322
  %2324 = add nsw i32 %2321, %2323
  %2325 = sext i32 %2324 to i64
  %2326 = getelementptr inbounds double, ptr %2320, i64 %2325
  %2327 = load double, ptr %2326, align 8, !tbaa !11
  %2328 = call double @llvm.fmuladd.f64(double 0x3C60000000000000, double %2327, double %2319)
  %2329 = load ptr, ptr %7, align 8, !tbaa !9
  %2330 = load i32, ptr %12, align 4, !tbaa !5
  %2331 = load i32, ptr %8, align 4, !tbaa !5
  %2332 = mul nsw i32 22, %2331
  %2333 = add nsw i32 %2330, %2332
  %2334 = sext i32 %2333 to i64
  %2335 = getelementptr inbounds double, ptr %2329, i64 %2334
  %2336 = load double, ptr %2335, align 8, !tbaa !11
  %2337 = call double @llvm.fmuladd.f64(double 0x3C8D000000000001, double %2336, double %2328)
  %2338 = load ptr, ptr %7, align 8, !tbaa !9
  %2339 = load i32, ptr %12, align 4, !tbaa !5
  %2340 = load i32, ptr %8, align 4, !tbaa !5
  %2341 = mul nsw i32 23, %2340
  %2342 = add nsw i32 %2339, %2341
  %2343 = sext i32 %2342 to i64
  %2344 = getelementptr inbounds double, ptr %2338, i64 %2343
  %2345 = load double, ptr %2344, align 8, !tbaa !11
  %2346 = call double @llvm.fmuladd.f64(double 0xBC98400000000000, double %2345, double %2337)
  %2347 = load ptr, ptr %7, align 8, !tbaa !9
  %2348 = load i32, ptr %12, align 4, !tbaa !5
  %2349 = load i32, ptr %8, align 4, !tbaa !5
  %2350 = mul nsw i32 24, %2349
  %2351 = add nsw i32 %2348, %2350
  %2352 = sext i32 %2351 to i64
  %2353 = getelementptr inbounds double, ptr %2347, i64 %2352
  %2354 = load double, ptr %2353, align 8, !tbaa !11
  %2355 = call double @llvm.fmuladd.f64(double 0xBC99000000000000, double %2354, double %2346)
  %2356 = load ptr, ptr %7, align 8, !tbaa !9
  %2357 = load i32, ptr %12, align 4, !tbaa !5
  %2358 = load i32, ptr %8, align 4, !tbaa !5
  %2359 = mul nsw i32 25, %2358
  %2360 = add nsw i32 %2357, %2359
  %2361 = sext i32 %2360 to i64
  %2362 = getelementptr inbounds double, ptr %2356, i64 %2361
  %2363 = load double, ptr %2362, align 8, !tbaa !11
  %2364 = call double @llvm.fmuladd.f64(double 0xBC9B000000000000, double %2363, double %2355)
  %2365 = load ptr, ptr %7, align 8, !tbaa !9
  %2366 = load i32, ptr %12, align 4, !tbaa !5
  %2367 = load i32, ptr %8, align 4, !tbaa !5
  %2368 = mul nsw i32 26, %2367
  %2369 = add nsw i32 %2366, %2368
  %2370 = sext i32 %2369 to i64
  %2371 = getelementptr inbounds double, ptr %2365, i64 %2370
  %2372 = load double, ptr %2371, align 8, !tbaa !11
  %2373 = call double @llvm.fmuladd.f64(double 0x3FD9A613A5CEF63B, double %2372, double %2364)
  %2374 = load ptr, ptr %7, align 8, !tbaa !9
  %2375 = load i32, ptr %12, align 4, !tbaa !5
  %2376 = load i32, ptr %8, align 4, !tbaa !5
  %2377 = mul nsw i32 27, %2376
  %2378 = add nsw i32 %2375, %2377
  %2379 = sext i32 %2378 to i64
  %2380 = getelementptr inbounds double, ptr %2374, i64 %2379
  %2381 = load double, ptr %2380, align 8, !tbaa !11
  %2382 = call double @llvm.fmuladd.f64(double 0xBC64000000000000, double %2381, double %2373)
  %2383 = load ptr, ptr %7, align 8, !tbaa !9
  %2384 = load i32, ptr %12, align 4, !tbaa !5
  %2385 = load i32, ptr %8, align 4, !tbaa !5
  %2386 = mul nsw i32 28, %2385
  %2387 = add nsw i32 %2384, %2386
  %2388 = sext i32 %2387 to i64
  %2389 = getelementptr inbounds double, ptr %2383, i64 %2388
  %2390 = load double, ptr %2389, align 8, !tbaa !11
  %2391 = call double @llvm.fmuladd.f64(double 0x3C92000000000000, double %2390, double %2382)
  %2392 = load ptr, ptr %7, align 8, !tbaa !9
  %2393 = load i32, ptr %12, align 4, !tbaa !5
  %2394 = load i32, ptr %8, align 4, !tbaa !5
  %2395 = mul nsw i32 29, %2394
  %2396 = add nsw i32 %2393, %2395
  %2397 = sext i32 %2396 to i64
  %2398 = getelementptr inbounds double, ptr %2392, i64 %2397
  %2399 = load double, ptr %2398, align 8, !tbaa !11
  %2400 = call double @llvm.fmuladd.f64(double 0x3C78000000000002, double %2399, double %2391)
  %2401 = load ptr, ptr %7, align 8, !tbaa !9
  %2402 = load i32, ptr %12, align 4, !tbaa !5
  %2403 = load i32, ptr %8, align 4, !tbaa !5
  %2404 = mul nsw i32 30, %2403
  %2405 = add nsw i32 %2402, %2404
  %2406 = sext i32 %2405 to i64
  %2407 = getelementptr inbounds double, ptr %2401, i64 %2406
  %2408 = load double, ptr %2407, align 8, !tbaa !11
  %2409 = call double @llvm.fmuladd.f64(double 0x3C7FFFFFFFFFFFFF, double %2408, double %2400)
  %2410 = load ptr, ptr %7, align 8, !tbaa !9
  %2411 = load i32, ptr %12, align 4, !tbaa !5
  %2412 = load i32, ptr %8, align 4, !tbaa !5
  %2413 = mul nsw i32 31, %2412
  %2414 = add nsw i32 %2411, %2413
  %2415 = sext i32 %2414 to i64
  %2416 = getelementptr inbounds double, ptr %2410, i64 %2415
  %2417 = load double, ptr %2416, align 8, !tbaa !11
  %2418 = call double @llvm.fmuladd.f64(double 0x3C40000000000000, double %2417, double %2409)
  %2419 = load ptr, ptr %7, align 8, !tbaa !9
  %2420 = load i32, ptr %12, align 4, !tbaa !5
  %2421 = load i32, ptr %8, align 4, !tbaa !5
  %2422 = mul nsw i32 32, %2421
  %2423 = add nsw i32 %2420, %2422
  %2424 = sext i32 %2423 to i64
  %2425 = getelementptr inbounds double, ptr %2419, i64 %2424
  %2426 = load double, ptr %2425, align 8, !tbaa !11
  %2427 = call double @llvm.fmuladd.f64(double 0x3C50000000000000, double %2426, double %2418)
  %2428 = load ptr, ptr %7, align 8, !tbaa !9
  %2429 = load i32, ptr %12, align 4, !tbaa !5
  %2430 = load i32, ptr %8, align 4, !tbaa !5
  %2431 = mul nsw i32 33, %2430
  %2432 = add nsw i32 %2429, %2431
  %2433 = sext i32 %2432 to i64
  %2434 = getelementptr inbounds double, ptr %2428, i64 %2433
  %2435 = load double, ptr %2434, align 8, !tbaa !11
  %2436 = call double @llvm.fmuladd.f64(double 0xBC97600000000000, double %2435, double %2427)
  %2437 = load ptr, ptr %7, align 8, !tbaa !9
  %2438 = load i32, ptr %12, align 4, !tbaa !5
  %2439 = load i32, ptr %8, align 4, !tbaa !5
  %2440 = mul nsw i32 34, %2439
  %2441 = add nsw i32 %2438, %2440
  %2442 = sext i32 %2441 to i64
  %2443 = getelementptr inbounds double, ptr %2437, i64 %2442
  %2444 = load double, ptr %2443, align 8, !tbaa !11
  %2445 = call double @llvm.fmuladd.f64(double 0xBC85000000000000, double %2444, double %2436)
  %2446 = load ptr, ptr %7, align 8, !tbaa !9
  %2447 = load i32, ptr %12, align 4, !tbaa !5
  %2448 = load i32, ptr %8, align 4, !tbaa !5
  %2449 = mul nsw i32 35, %2448
  %2450 = add nsw i32 %2447, %2449
  %2451 = sext i32 %2450 to i64
  %2452 = getelementptr inbounds double, ptr %2446, i64 %2451
  %2453 = load double, ptr %2452, align 8, !tbaa !11
  %2454 = call double @llvm.fmuladd.f64(double 0x3C6C000000000000, double %2453, double %2445)
  %2455 = load ptr, ptr %7, align 8, !tbaa !9
  %2456 = load i32, ptr %12, align 4, !tbaa !5
  %2457 = load i32, ptr %8, align 4, !tbaa !5
  %2458 = mul nsw i32 36, %2457
  %2459 = add nsw i32 %2456, %2458
  %2460 = sext i32 %2459 to i64
  %2461 = getelementptr inbounds double, ptr %2455, i64 %2460
  %2462 = load double, ptr %2461, align 8, !tbaa !11
  %2463 = call double @llvm.fmuladd.f64(double 0xBFBD29AD687BB05D, double %2462, double %2454)
  %2464 = load ptr, ptr %7, align 8, !tbaa !9
  %2465 = load i32, ptr %12, align 4, !tbaa !5
  %2466 = load i32, ptr %8, align 4, !tbaa !5
  %2467 = mul nsw i32 37, %2466
  %2468 = add nsw i32 %2465, %2467
  %2469 = sext i32 %2468 to i64
  %2470 = getelementptr inbounds double, ptr %2464, i64 %2469
  %2471 = load double, ptr %2470, align 8, !tbaa !11
  %2472 = call double @llvm.fmuladd.f64(double 0x3C71FFFFFFFFFFFF, double %2471, double %2463)
  %2473 = load ptr, ptr %7, align 8, !tbaa !9
  %2474 = load i32, ptr %12, align 4, !tbaa !5
  %2475 = load i32, ptr %8, align 4, !tbaa !5
  %2476 = mul nsw i32 38, %2475
  %2477 = add nsw i32 %2474, %2476
  %2478 = sext i32 %2477 to i64
  %2479 = getelementptr inbounds double, ptr %2473, i64 %2478
  %2480 = load double, ptr %2479, align 8, !tbaa !11
  %2481 = call double @llvm.fmuladd.f64(double 0x3C50000000000000, double %2480, double %2472)
  %2482 = load ptr, ptr %7, align 8, !tbaa !9
  %2483 = load i32, ptr %12, align 4, !tbaa !5
  %2484 = load i32, ptr %8, align 4, !tbaa !5
  %2485 = mul nsw i32 39, %2484
  %2486 = add nsw i32 %2483, %2485
  %2487 = sext i32 %2486 to i64
  %2488 = getelementptr inbounds double, ptr %2482, i64 %2487
  %2489 = load double, ptr %2488, align 8, !tbaa !11
  %2490 = call double @llvm.fmuladd.f64(double 0x3C78000000000002, double %2489, double %2481)
  store double %2490, ptr %11, align 8, !tbaa !11
  %2491 = load double, ptr %11, align 8, !tbaa !11
  %2492 = load ptr, ptr %9, align 8, !tbaa !9
  %2493 = load i32, ptr %12, align 4, !tbaa !5
  %2494 = load i32, ptr %10, align 4, !tbaa !5
  %2495 = mul nsw i32 6, %2494
  %2496 = add nsw i32 %2493, %2495
  %2497 = sext i32 %2496 to i64
  %2498 = getelementptr inbounds double, ptr %2492, i64 %2497
  %2499 = load double, ptr %2498, align 8, !tbaa !11
  %2500 = fadd double %2499, %2491
  store double %2500, ptr %2498, align 8, !tbaa !11
  %2501 = load ptr, ptr %7, align 8, !tbaa !9
  %2502 = load i32, ptr %12, align 4, !tbaa !5
  %2503 = load i32, ptr %8, align 4, !tbaa !5
  %2504 = mul nsw i32 0, %2503
  %2505 = add nsw i32 %2502, %2504
  %2506 = sext i32 %2505 to i64
  %2507 = getelementptr inbounds double, ptr %2501, i64 %2506
  %2508 = load double, ptr %2507, align 8, !tbaa !11
  %2509 = load ptr, ptr %7, align 8, !tbaa !9
  %2510 = load i32, ptr %12, align 4, !tbaa !5
  %2511 = load i32, ptr %8, align 4, !tbaa !5
  %2512 = mul nsw i32 1, %2511
  %2513 = add nsw i32 %2510, %2512
  %2514 = sext i32 %2513 to i64
  %2515 = getelementptr inbounds double, ptr %2509, i64 %2514
  %2516 = load double, ptr %2515, align 8, !tbaa !11
  %2517 = fmul double 0x3C74000000000000, %2516
  %2518 = call double @llvm.fmuladd.f64(double 0x3CA1000000000001, double %2508, double %2517)
  %2519 = load ptr, ptr %7, align 8, !tbaa !9
  %2520 = load i32, ptr %12, align 4, !tbaa !5
  %2521 = load i32, ptr %8, align 4, !tbaa !5
  %2522 = mul nsw i32 2, %2521
  %2523 = add nsw i32 %2520, %2522
  %2524 = sext i32 %2523 to i64
  %2525 = getelementptr inbounds double, ptr %2519, i64 %2524
  %2526 = load double, ptr %2525, align 8, !tbaa !11
  %2527 = call double @llvm.fmuladd.f64(double 0xBCA6CFFFFFFFFFFE, double %2526, double %2518)
  %2528 = load ptr, ptr %7, align 8, !tbaa !9
  %2529 = load i32, ptr %12, align 4, !tbaa !5
  %2530 = load i32, ptr %8, align 4, !tbaa !5
  %2531 = mul nsw i32 3, %2530
  %2532 = add nsw i32 %2529, %2531
  %2533 = sext i32 %2532 to i64
  %2534 = getelementptr inbounds double, ptr %2528, i64 %2533
  %2535 = load double, ptr %2534, align 8, !tbaa !11
  %2536 = call double @llvm.fmuladd.f64(double 0x3CAAF00000000001, double %2535, double %2527)
  %2537 = load ptr, ptr %7, align 8, !tbaa !9
  %2538 = load i32, ptr %12, align 4, !tbaa !5
  %2539 = load i32, ptr %8, align 4, !tbaa !5
  %2540 = mul nsw i32 4, %2539
  %2541 = add nsw i32 %2538, %2540
  %2542 = sext i32 %2541 to i64
  %2543 = getelementptr inbounds double, ptr %2537, i64 %2542
  %2544 = load double, ptr %2543, align 8, !tbaa !11
  %2545 = call double @llvm.fmuladd.f64(double 0xBC7E000000000001, double %2544, double %2536)
  %2546 = load ptr, ptr %7, align 8, !tbaa !9
  %2547 = load i32, ptr %12, align 4, !tbaa !5
  %2548 = load i32, ptr %8, align 4, !tbaa !5
  %2549 = mul nsw i32 5, %2548
  %2550 = add nsw i32 %2547, %2549
  %2551 = sext i32 %2550 to i64
  %2552 = getelementptr inbounds double, ptr %2546, i64 %2551
  %2553 = load double, ptr %2552, align 8, !tbaa !11
  %2554 = call double @llvm.fmuladd.f64(double 0x3C90800000000000, double %2553, double %2545)
  %2555 = load ptr, ptr %7, align 8, !tbaa !9
  %2556 = load i32, ptr %12, align 4, !tbaa !5
  %2557 = load i32, ptr %8, align 4, !tbaa !5
  %2558 = mul nsw i32 6, %2557
  %2559 = add nsw i32 %2556, %2558
  %2560 = sext i32 %2559 to i64
  %2561 = getelementptr inbounds double, ptr %2555, i64 %2560
  %2562 = load double, ptr %2561, align 8, !tbaa !11
  %2563 = call double @llvm.fmuladd.f64(double 0xBCBB900000000001, double %2562, double %2554)
  %2564 = load ptr, ptr %7, align 8, !tbaa !9
  %2565 = load i32, ptr %12, align 4, !tbaa !5
  %2566 = load i32, ptr %8, align 4, !tbaa !5
  %2567 = mul nsw i32 7, %2566
  %2568 = add nsw i32 %2565, %2567
  %2569 = sext i32 %2568 to i64
  %2570 = getelementptr inbounds double, ptr %2564, i64 %2569
  %2571 = load double, ptr %2570, align 8, !tbaa !11
  %2572 = call double @llvm.fmuladd.f64(double 0x3FF86DB962AC2966, double %2571, double %2563)
  %2573 = load ptr, ptr %7, align 8, !tbaa !9
  %2574 = load i32, ptr %12, align 4, !tbaa !5
  %2575 = load i32, ptr %8, align 4, !tbaa !5
  %2576 = mul nsw i32 8, %2575
  %2577 = add nsw i32 %2574, %2576
  %2578 = sext i32 %2577 to i64
  %2579 = getelementptr inbounds double, ptr %2573, i64 %2578
  %2580 = load double, ptr %2579, align 8, !tbaa !11
  %2581 = call double @llvm.fmuladd.f64(double 0x3C78000000000002, double %2580, double %2572)
  %2582 = load ptr, ptr %7, align 8, !tbaa !9
  %2583 = load i32, ptr %12, align 4, !tbaa !5
  %2584 = load i32, ptr %8, align 4, !tbaa !5
  %2585 = mul nsw i32 9, %2584
  %2586 = add nsw i32 %2583, %2585
  %2587 = sext i32 %2586 to i64
  %2588 = getelementptr inbounds double, ptr %2582, i64 %2587
  %2589 = load double, ptr %2588, align 8, !tbaa !11
  %2590 = call double @llvm.fmuladd.f64(double 0xBC70000000000001, double %2589, double %2581)
  %2591 = load ptr, ptr %7, align 8, !tbaa !9
  %2592 = load i32, ptr %12, align 4, !tbaa !5
  %2593 = load i32, ptr %8, align 4, !tbaa !5
  %2594 = mul nsw i32 10, %2593
  %2595 = add nsw i32 %2592, %2594
  %2596 = sext i32 %2595 to i64
  %2597 = getelementptr inbounds double, ptr %2591, i64 %2596
  %2598 = load double, ptr %2597, align 8, !tbaa !11
  %2599 = call double @llvm.fmuladd.f64(double 0xBCA0000000000002, double %2598, double %2590)
  %2600 = load ptr, ptr %7, align 8, !tbaa !9
  %2601 = load i32, ptr %12, align 4, !tbaa !5
  %2602 = load i32, ptr %8, align 4, !tbaa !5
  %2603 = mul nsw i32 11, %2602
  %2604 = add nsw i32 %2601, %2603
  %2605 = sext i32 %2604 to i64
  %2606 = getelementptr inbounds double, ptr %2600, i64 %2605
  %2607 = load double, ptr %2606, align 8, !tbaa !11
  %2608 = call double @llvm.fmuladd.f64(double 0xBCA7000000000002, double %2607, double %2599)
  %2609 = load ptr, ptr %7, align 8, !tbaa !9
  %2610 = load i32, ptr %12, align 4, !tbaa !5
  %2611 = load i32, ptr %8, align 4, !tbaa !5
  %2612 = mul nsw i32 12, %2611
  %2613 = add nsw i32 %2610, %2612
  %2614 = sext i32 %2613 to i64
  %2615 = getelementptr inbounds double, ptr %2609, i64 %2614
  %2616 = load double, ptr %2615, align 8, !tbaa !11
  %2617 = call double @llvm.fmuladd.f64(double 0xBC82FFFFFFFFFFFF, double %2616, double %2608)
  %2618 = load ptr, ptr %7, align 8, !tbaa !9
  %2619 = load i32, ptr %12, align 4, !tbaa !5
  %2620 = load i32, ptr %8, align 4, !tbaa !5
  %2621 = mul nsw i32 13, %2620
  %2622 = add nsw i32 %2619, %2621
  %2623 = sext i32 %2622 to i64
  %2624 = getelementptr inbounds double, ptr %2618, i64 %2623
  %2625 = load double, ptr %2624, align 8, !tbaa !11
  %2626 = call double @llvm.fmuladd.f64(double 0x3CA21FFFFFFFFFFF, double %2625, double %2617)
  %2627 = load ptr, ptr %7, align 8, !tbaa !9
  %2628 = load i32, ptr %12, align 4, !tbaa !5
  %2629 = load i32, ptr %8, align 4, !tbaa !5
  %2630 = mul nsw i32 14, %2629
  %2631 = add nsw i32 %2628, %2630
  %2632 = sext i32 %2631 to i64
  %2633 = getelementptr inbounds double, ptr %2627, i64 %2632
  %2634 = load double, ptr %2633, align 8, !tbaa !11
  %2635 = call double @llvm.fmuladd.f64(double 0x3CB8400000000000, double %2634, double %2626)
  %2636 = load ptr, ptr %7, align 8, !tbaa !9
  %2637 = load i32, ptr %12, align 4, !tbaa !5
  %2638 = load i32, ptr %8, align 4, !tbaa !5
  %2639 = mul nsw i32 15, %2638
  %2640 = add nsw i32 %2637, %2639
  %2641 = sext i32 %2640 to i64
  %2642 = getelementptr inbounds double, ptr %2636, i64 %2641
  %2643 = load double, ptr %2642, align 8, !tbaa !11
  %2644 = call double @llvm.fmuladd.f64(double 0xBC89FFFFFFFFFFFF, double %2643, double %2635)
  %2645 = load ptr, ptr %7, align 8, !tbaa !9
  %2646 = load i32, ptr %12, align 4, !tbaa !5
  %2647 = load i32, ptr %8, align 4, !tbaa !5
  %2648 = mul nsw i32 16, %2647
  %2649 = add nsw i32 %2646, %2648
  %2650 = sext i32 %2649 to i64
  %2651 = getelementptr inbounds double, ptr %2645, i64 %2650
  %2652 = load double, ptr %2651, align 8, !tbaa !11
  %2653 = call double @llvm.fmuladd.f64(double 0x3C9E7FFFFFFFFFFD, double %2652, double %2644)
  %2654 = load ptr, ptr %7, align 8, !tbaa !9
  %2655 = load i32, ptr %12, align 4, !tbaa !5
  %2656 = load i32, ptr %8, align 4, !tbaa !5
  %2657 = mul nsw i32 17, %2656
  %2658 = add nsw i32 %2655, %2657
  %2659 = sext i32 %2658 to i64
  %2660 = getelementptr inbounds double, ptr %2654, i64 %2659
  %2661 = load double, ptr %2660, align 8, !tbaa !11
  %2662 = call double @llvm.fmuladd.f64(double 0xBFEA0946EB3057DB, double %2661, double %2653)
  %2663 = load ptr, ptr %7, align 8, !tbaa !9
  %2664 = load i32, ptr %12, align 4, !tbaa !5
  %2665 = load i32, ptr %8, align 4, !tbaa !5
  %2666 = mul nsw i32 18, %2665
  %2667 = add nsw i32 %2664, %2666
  %2668 = sext i32 %2667 to i64
  %2669 = getelementptr inbounds double, ptr %2663, i64 %2668
  %2670 = load double, ptr %2669, align 8, !tbaa !11
  %2671 = call double @llvm.fmuladd.f64(double 0x3C88000000000000, double %2670, double %2662)
  %2672 = load ptr, ptr %7, align 8, !tbaa !9
  %2673 = load i32, ptr %12, align 4, !tbaa !5
  %2674 = load i32, ptr %8, align 4, !tbaa !5
  %2675 = mul nsw i32 19, %2674
  %2676 = add nsw i32 %2673, %2675
  %2677 = sext i32 %2676 to i64
  %2678 = getelementptr inbounds double, ptr %2672, i64 %2677
  %2679 = load double, ptr %2678, align 8, !tbaa !11
  %2680 = call double @llvm.fmuladd.f64(double 0x3C9DFFFFFFFFFFFE, double %2679, double %2671)
  %2681 = load ptr, ptr %7, align 8, !tbaa !9
  %2682 = load i32, ptr %12, align 4, !tbaa !5
  %2683 = load i32, ptr %8, align 4, !tbaa !5
  %2684 = mul nsw i32 20, %2683
  %2685 = add nsw i32 %2682, %2684
  %2686 = sext i32 %2685 to i64
  %2687 = getelementptr inbounds double, ptr %2681, i64 %2686
  %2688 = load double, ptr %2687, align 8, !tbaa !11
  %2689 = call double @llvm.fmuladd.f64(double 0x3CB8000000000001, double %2688, double %2680)
  %2690 = load ptr, ptr %7, align 8, !tbaa !9
  %2691 = load i32, ptr %12, align 4, !tbaa !5
  %2692 = load i32, ptr %8, align 4, !tbaa !5
  %2693 = mul nsw i32 21, %2692
  %2694 = add nsw i32 %2691, %2693
  %2695 = sext i32 %2694 to i64
  %2696 = getelementptr inbounds double, ptr %2690, i64 %2695
  %2697 = load double, ptr %2696, align 8, !tbaa !11
  %2698 = call double @llvm.fmuladd.f64(double 0xBC88000000000000, double %2697, double %2689)
  %2699 = load ptr, ptr %7, align 8, !tbaa !9
  %2700 = load i32, ptr %12, align 4, !tbaa !5
  %2701 = load i32, ptr %8, align 4, !tbaa !5
  %2702 = mul nsw i32 22, %2701
  %2703 = add nsw i32 %2700, %2702
  %2704 = sext i32 %2703 to i64
  %2705 = getelementptr inbounds double, ptr %2699, i64 %2704
  %2706 = load double, ptr %2705, align 8, !tbaa !11
  %2707 = call double @llvm.fmuladd.f64(double 0x3C7C000000000000, double %2706, double %2698)
  %2708 = load ptr, ptr %7, align 8, !tbaa !9
  %2709 = load i32, ptr %12, align 4, !tbaa !5
  %2710 = load i32, ptr %8, align 4, !tbaa !5
  %2711 = mul nsw i32 23, %2710
  %2712 = add nsw i32 %2709, %2711
  %2713 = sext i32 %2712 to i64
  %2714 = getelementptr inbounds double, ptr %2708, i64 %2713
  %2715 = load double, ptr %2714, align 8, !tbaa !11
  %2716 = call double @llvm.fmuladd.f64(double 0x3C76FFFFFFFFFFFF, double %2715, double %2707)
  %2717 = load ptr, ptr %7, align 8, !tbaa !9
  %2718 = load i32, ptr %12, align 4, !tbaa !5
  %2719 = load i32, ptr %8, align 4, !tbaa !5
  %2720 = mul nsw i32 24, %2719
  %2721 = add nsw i32 %2718, %2720
  %2722 = sext i32 %2721 to i64
  %2723 = getelementptr inbounds double, ptr %2717, i64 %2722
  %2724 = load double, ptr %2723, align 8, !tbaa !11
  %2725 = call double @llvm.fmuladd.f64(double 0xBCA4800000000001, double %2724, double %2716)
  %2726 = load ptr, ptr %7, align 8, !tbaa !9
  %2727 = load i32, ptr %12, align 4, !tbaa !5
  %2728 = load i32, ptr %8, align 4, !tbaa !5
  %2729 = mul nsw i32 25, %2728
  %2730 = add nsw i32 %2727, %2729
  %2731 = sext i32 %2730 to i64
  %2732 = getelementptr inbounds double, ptr %2726, i64 %2731
  %2733 = load double, ptr %2732, align 8, !tbaa !11
  %2734 = call double @llvm.fmuladd.f64(double 0xBC8E000000000000, double %2733, double %2725)
  %2735 = load ptr, ptr %7, align 8, !tbaa !9
  %2736 = load i32, ptr %12, align 4, !tbaa !5
  %2737 = load i32, ptr %8, align 4, !tbaa !5
  %2738 = mul nsw i32 27, %2737
  %2739 = add nsw i32 %2736, %2738
  %2740 = sext i32 %2739 to i64
  %2741 = getelementptr inbounds double, ptr %2735, i64 %2740
  %2742 = load double, ptr %2741, align 8, !tbaa !11
  %2743 = call double @llvm.fmuladd.f64(double 0x3FD9A613A5CEF635, double %2742, double %2734)
  %2744 = load ptr, ptr %7, align 8, !tbaa !9
  %2745 = load i32, ptr %12, align 4, !tbaa !5
  %2746 = load i32, ptr %8, align 4, !tbaa !5
  %2747 = mul nsw i32 28, %2746
  %2748 = add nsw i32 %2745, %2747
  %2749 = sext i32 %2748 to i64
  %2750 = getelementptr inbounds double, ptr %2744, i64 %2749
  %2751 = load double, ptr %2750, align 8, !tbaa !11
  %2752 = call double @llvm.fmuladd.f64(double 0x3C88000000000000, double %2751, double %2743)
  %2753 = load ptr, ptr %7, align 8, !tbaa !9
  %2754 = load i32, ptr %12, align 4, !tbaa !5
  %2755 = load i32, ptr %8, align 4, !tbaa !5
  %2756 = mul nsw i32 29, %2755
  %2757 = add nsw i32 %2754, %2756
  %2758 = sext i32 %2757 to i64
  %2759 = getelementptr inbounds double, ptr %2753, i64 %2758
  %2760 = load double, ptr %2759, align 8, !tbaa !11
  %2761 = call double @llvm.fmuladd.f64(double 0xBC92000000000000, double %2760, double %2752)
  %2762 = load ptr, ptr %7, align 8, !tbaa !9
  %2763 = load i32, ptr %12, align 4, !tbaa !5
  %2764 = load i32, ptr %8, align 4, !tbaa !5
  %2765 = mul nsw i32 30, %2764
  %2766 = add nsw i32 %2763, %2765
  %2767 = sext i32 %2766 to i64
  %2768 = getelementptr inbounds double, ptr %2762, i64 %2767
  %2769 = load double, ptr %2768, align 8, !tbaa !11
  %2770 = call double @llvm.fmuladd.f64(double 0xBCA2000000000000, double %2769, double %2761)
  %2771 = load ptr, ptr %7, align 8, !tbaa !9
  %2772 = load i32, ptr %12, align 4, !tbaa !5
  %2773 = load i32, ptr %8, align 4, !tbaa !5
  %2774 = mul nsw i32 31, %2773
  %2775 = add nsw i32 %2772, %2774
  %2776 = sext i32 %2775 to i64
  %2777 = getelementptr inbounds double, ptr %2771, i64 %2776
  %2778 = load double, ptr %2777, align 8, !tbaa !11
  %2779 = call double @llvm.fmuladd.f64(double 0x3CA8C00000000000, double %2778, double %2770)
  %2780 = load ptr, ptr %7, align 8, !tbaa !9
  %2781 = load i32, ptr %12, align 4, !tbaa !5
  %2782 = load i32, ptr %8, align 4, !tbaa !5
  %2783 = mul nsw i32 32, %2782
  %2784 = add nsw i32 %2781, %2783
  %2785 = sext i32 %2784 to i64
  %2786 = getelementptr inbounds double, ptr %2780, i64 %2785
  %2787 = load double, ptr %2786, align 8, !tbaa !11
  %2788 = call double @llvm.fmuladd.f64(double 0xBC86FFFFFFFFFFFF, double %2787, double %2779)
  %2789 = load ptr, ptr %7, align 8, !tbaa !9
  %2790 = load i32, ptr %12, align 4, !tbaa !5
  %2791 = load i32, ptr %8, align 4, !tbaa !5
  %2792 = mul nsw i32 33, %2791
  %2793 = add nsw i32 %2790, %2792
  %2794 = sext i32 %2793 to i64
  %2795 = getelementptr inbounds double, ptr %2789, i64 %2794
  %2796 = load double, ptr %2795, align 8, !tbaa !11
  %2797 = call double @llvm.fmuladd.f64(double 0xBC9F9FFFFFFFFFFC, double %2796, double %2788)
  %2798 = load ptr, ptr %7, align 8, !tbaa !9
  %2799 = load i32, ptr %12, align 4, !tbaa !5
  %2800 = load i32, ptr %8, align 4, !tbaa !5
  %2801 = mul nsw i32 34, %2800
  %2802 = add nsw i32 %2799, %2801
  %2803 = sext i32 %2802 to i64
  %2804 = getelementptr inbounds double, ptr %2798, i64 %2803
  %2805 = load double, ptr %2804, align 8, !tbaa !11
  %2806 = call double @llvm.fmuladd.f64(double 0xBC89000000000000, double %2805, double %2797)
  %2807 = load ptr, ptr %7, align 8, !tbaa !9
  %2808 = load i32, ptr %12, align 4, !tbaa !5
  %2809 = load i32, ptr %8, align 4, !tbaa !5
  %2810 = mul nsw i32 35, %2809
  %2811 = add nsw i32 %2808, %2810
  %2812 = sext i32 %2811 to i64
  %2813 = getelementptr inbounds double, ptr %2807, i64 %2812
  %2814 = load double, ptr %2813, align 8, !tbaa !11
  %2815 = call double @llvm.fmuladd.f64(double 0xBCA1400000000000, double %2814, double %2806)
  %2816 = load ptr, ptr %7, align 8, !tbaa !9
  %2817 = load i32, ptr %12, align 4, !tbaa !5
  %2818 = load i32, ptr %8, align 4, !tbaa !5
  %2819 = mul nsw i32 36, %2818
  %2820 = add nsw i32 %2817, %2819
  %2821 = sext i32 %2820 to i64
  %2822 = getelementptr inbounds double, ptr %2816, i64 %2821
  %2823 = load double, ptr %2822, align 8, !tbaa !11
  %2824 = call double @llvm.fmuladd.f64(double 0xBCA4A00000000001, double %2823, double %2815)
  %2825 = load ptr, ptr %7, align 8, !tbaa !9
  %2826 = load i32, ptr %12, align 4, !tbaa !5
  %2827 = load i32, ptr %8, align 4, !tbaa !5
  %2828 = mul nsw i32 37, %2827
  %2829 = add nsw i32 %2826, %2828
  %2830 = sext i32 %2829 to i64
  %2831 = getelementptr inbounds double, ptr %2825, i64 %2830
  %2832 = load double, ptr %2831, align 8, !tbaa !11
  %2833 = call double @llvm.fmuladd.f64(double 0xBFBD29AD687BB056, double %2832, double %2824)
  %2834 = load ptr, ptr %7, align 8, !tbaa !9
  %2835 = load i32, ptr %12, align 4, !tbaa !5
  %2836 = load i32, ptr %8, align 4, !tbaa !5
  %2837 = mul nsw i32 38, %2836
  %2838 = add nsw i32 %2835, %2837
  %2839 = sext i32 %2838 to i64
  %2840 = getelementptr inbounds double, ptr %2834, i64 %2839
  %2841 = load double, ptr %2840, align 8, !tbaa !11
  %2842 = call double @llvm.fmuladd.f64(double 0xBC67FFFFFFFFFFFE, double %2841, double %2833)
  %2843 = load ptr, ptr %7, align 8, !tbaa !9
  %2844 = load i32, ptr %12, align 4, !tbaa !5
  %2845 = load i32, ptr %8, align 4, !tbaa !5
  %2846 = mul nsw i32 39, %2845
  %2847 = add nsw i32 %2844, %2846
  %2848 = sext i32 %2847 to i64
  %2849 = getelementptr inbounds double, ptr %2843, i64 %2848
  %2850 = load double, ptr %2849, align 8, !tbaa !11
  %2851 = call double @llvm.fmuladd.f64(double 0x3C67FFFFFFFFFFFE, double %2850, double %2842)
  store double %2851, ptr %11, align 8, !tbaa !11
  %2852 = load double, ptr %11, align 8, !tbaa !11
  %2853 = load ptr, ptr %9, align 8, !tbaa !9
  %2854 = load i32, ptr %12, align 4, !tbaa !5
  %2855 = load i32, ptr %10, align 4, !tbaa !5
  %2856 = mul nsw i32 7, %2855
  %2857 = add nsw i32 %2854, %2856
  %2858 = sext i32 %2857 to i64
  %2859 = getelementptr inbounds double, ptr %2853, i64 %2858
  %2860 = load double, ptr %2859, align 8, !tbaa !11
  %2861 = fadd double %2860, %2852
  store double %2861, ptr %2859, align 8, !tbaa !11
  %2862 = load ptr, ptr %7, align 8, !tbaa !9
  %2863 = load i32, ptr %12, align 4, !tbaa !5
  %2864 = load i32, ptr %8, align 4, !tbaa !5
  %2865 = mul nsw i32 0, %2864
  %2866 = add nsw i32 %2863, %2865
  %2867 = sext i32 %2866 to i64
  %2868 = getelementptr inbounds double, ptr %2862, i64 %2867
  %2869 = load double, ptr %2868, align 8, !tbaa !11
  %2870 = load ptr, ptr %7, align 8, !tbaa !9
  %2871 = load i32, ptr %12, align 4, !tbaa !5
  %2872 = load i32, ptr %8, align 4, !tbaa !5
  %2873 = mul nsw i32 1, %2872
  %2874 = add nsw i32 %2871, %2873
  %2875 = sext i32 %2874 to i64
  %2876 = getelementptr inbounds double, ptr %2870, i64 %2875
  %2877 = load double, ptr %2876, align 8, !tbaa !11
  %2878 = fmul double 0xBCA5000000000000, %2877
  %2879 = call double @llvm.fmuladd.f64(double 0x3CC5000000000000, double %2869, double %2878)
  %2880 = load ptr, ptr %7, align 8, !tbaa !9
  %2881 = load i32, ptr %12, align 4, !tbaa !5
  %2882 = load i32, ptr %8, align 4, !tbaa !5
  %2883 = mul nsw i32 2, %2882
  %2884 = add nsw i32 %2881, %2883
  %2885 = sext i32 %2884 to i64
  %2886 = getelementptr inbounds double, ptr %2880, i64 %2885
  %2887 = load double, ptr %2886, align 8, !tbaa !11
  %2888 = call double @llvm.fmuladd.f64(double 0x3C6C000000000000, double %2887, double %2879)
  %2889 = load ptr, ptr %7, align 8, !tbaa !9
  %2890 = load i32, ptr %12, align 4, !tbaa !5
  %2891 = load i32, ptr %8, align 4, !tbaa !5
  %2892 = mul nsw i32 3, %2891
  %2893 = add nsw i32 %2890, %2892
  %2894 = sext i32 %2893 to i64
  %2895 = getelementptr inbounds double, ptr %2889, i64 %2894
  %2896 = load double, ptr %2895, align 8, !tbaa !11
  %2897 = call double @llvm.fmuladd.f64(double 0xBC89000000000000, double %2896, double %2888)
  %2898 = load ptr, ptr %7, align 8, !tbaa !9
  %2899 = load i32, ptr %12, align 4, !tbaa !5
  %2900 = load i32, ptr %8, align 4, !tbaa !5
  %2901 = mul nsw i32 4, %2900
  %2902 = add nsw i32 %2899, %2901
  %2903 = sext i32 %2902 to i64
  %2904 = getelementptr inbounds double, ptr %2898, i64 %2903
  %2905 = load double, ptr %2904, align 8, !tbaa !11
  %2906 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %2905, double %2897)
  %2907 = load ptr, ptr %7, align 8, !tbaa !9
  %2908 = load i32, ptr %12, align 4, !tbaa !5
  %2909 = load i32, ptr %8, align 4, !tbaa !5
  %2910 = mul nsw i32 5, %2909
  %2911 = add nsw i32 %2908, %2910
  %2912 = sext i32 %2911 to i64
  %2913 = getelementptr inbounds double, ptr %2907, i64 %2912
  %2914 = load double, ptr %2913, align 8, !tbaa !11
  %2915 = call double @llvm.fmuladd.f64(double 0x3C60000000000000, double %2914, double %2906)
  %2916 = load ptr, ptr %7, align 8, !tbaa !9
  %2917 = load i32, ptr %12, align 4, !tbaa !5
  %2918 = load i32, ptr %8, align 4, !tbaa !5
  %2919 = mul nsw i32 6, %2918
  %2920 = add nsw i32 %2917, %2919
  %2921 = sext i32 %2920 to i64
  %2922 = getelementptr inbounds double, ptr %2916, i64 %2921
  %2923 = load double, ptr %2922, align 8, !tbaa !11
  %2924 = call double @llvm.fmuladd.f64(double 0xBC8C000000000000, double %2923, double %2915)
  %2925 = load ptr, ptr %7, align 8, !tbaa !9
  %2926 = load i32, ptr %12, align 4, !tbaa !5
  %2927 = load i32, ptr %8, align 4, !tbaa !5
  %2928 = mul nsw i32 7, %2927
  %2929 = add nsw i32 %2926, %2928
  %2930 = sext i32 %2929 to i64
  %2931 = getelementptr inbounds double, ptr %2925, i64 %2930
  %2932 = load double, ptr %2931, align 8, !tbaa !11
  %2933 = call double @llvm.fmuladd.f64(double 0x3C99000000000000, double %2932, double %2924)
  %2934 = load ptr, ptr %7, align 8, !tbaa !9
  %2935 = load i32, ptr %12, align 4, !tbaa !5
  %2936 = load i32, ptr %8, align 4, !tbaa !5
  %2937 = mul nsw i32 8, %2936
  %2938 = add nsw i32 %2935, %2937
  %2939 = sext i32 %2938 to i64
  %2940 = getelementptr inbounds double, ptr %2934, i64 %2939
  %2941 = load double, ptr %2940, align 8, !tbaa !11
  %2942 = call double @llvm.fmuladd.f64(double 0x3FF86DB962AC2966, double %2941, double %2933)
  %2943 = load ptr, ptr %7, align 8, !tbaa !9
  %2944 = load i32, ptr %12, align 4, !tbaa !5
  %2945 = load i32, ptr %8, align 4, !tbaa !5
  %2946 = mul nsw i32 9, %2945
  %2947 = add nsw i32 %2944, %2946
  %2948 = sext i32 %2947 to i64
  %2949 = getelementptr inbounds double, ptr %2943, i64 %2948
  %2950 = load double, ptr %2949, align 8, !tbaa !11
  %2951 = call double @llvm.fmuladd.f64(double 0x3C94000000000000, double %2950, double %2942)
  %2952 = load ptr, ptr %7, align 8, !tbaa !9
  %2953 = load i32, ptr %12, align 4, !tbaa !5
  %2954 = load i32, ptr %8, align 4, !tbaa !5
  %2955 = mul nsw i32 10, %2954
  %2956 = add nsw i32 %2953, %2955
  %2957 = sext i32 %2956 to i64
  %2958 = getelementptr inbounds double, ptr %2952, i64 %2957
  %2959 = load double, ptr %2958, align 8, !tbaa !11
  %2960 = call double @llvm.fmuladd.f64(double 0xBCA4000000000001, double %2959, double %2951)
  %2961 = load ptr, ptr %7, align 8, !tbaa !9
  %2962 = load i32, ptr %12, align 4, !tbaa !5
  %2963 = load i32, ptr %8, align 4, !tbaa !5
  %2964 = mul nsw i32 11, %2963
  %2965 = add nsw i32 %2962, %2964
  %2966 = sext i32 %2965 to i64
  %2967 = getelementptr inbounds double, ptr %2961, i64 %2966
  %2968 = load double, ptr %2967, align 8, !tbaa !11
  %2969 = call double @llvm.fmuladd.f64(double 0x3CAC000000000000, double %2968, double %2960)
  %2970 = load ptr, ptr %7, align 8, !tbaa !9
  %2971 = load i32, ptr %12, align 4, !tbaa !5
  %2972 = load i32, ptr %8, align 4, !tbaa !5
  %2973 = mul nsw i32 12, %2972
  %2974 = add nsw i32 %2971, %2973
  %2975 = sext i32 %2974 to i64
  %2976 = getelementptr inbounds double, ptr %2970, i64 %2975
  %2977 = load double, ptr %2976, align 8, !tbaa !11
  %2978 = call double @llvm.fmuladd.f64(double 0xBC84000000000000, double %2977, double %2969)
  %2979 = load ptr, ptr %7, align 8, !tbaa !9
  %2980 = load i32, ptr %12, align 4, !tbaa !5
  %2981 = load i32, ptr %8, align 4, !tbaa !5
  %2982 = mul nsw i32 13, %2981
  %2983 = add nsw i32 %2980, %2982
  %2984 = sext i32 %2983 to i64
  %2985 = getelementptr inbounds double, ptr %2979, i64 %2984
  %2986 = load double, ptr %2985, align 8, !tbaa !11
  %2987 = call double @llvm.fmuladd.f64(double 0xBCA0000000000002, double %2986, double %2978)
  %2988 = load ptr, ptr %7, align 8, !tbaa !9
  %2989 = load i32, ptr %12, align 4, !tbaa !5
  %2990 = load i32, ptr %8, align 4, !tbaa !5
  %2991 = mul nsw i32 14, %2990
  %2992 = add nsw i32 %2989, %2991
  %2993 = sext i32 %2992 to i64
  %2994 = getelementptr inbounds double, ptr %2988, i64 %2993
  %2995 = load double, ptr %2994, align 8, !tbaa !11
  %2996 = call double @llvm.fmuladd.f64(double 0xBCA9FFFFFFFFFFFE, double %2995, double %2987)
  %2997 = load ptr, ptr %7, align 8, !tbaa !9
  %2998 = load i32, ptr %12, align 4, !tbaa !5
  %2999 = load i32, ptr %8, align 4, !tbaa !5
  %3000 = mul nsw i32 16, %2999
  %3001 = add nsw i32 %2998, %3000
  %3002 = sext i32 %3001 to i64
  %3003 = getelementptr inbounds double, ptr %2997, i64 %3002
  %3004 = load double, ptr %3003, align 8, !tbaa !11
  %3005 = call double @llvm.fmuladd.f64(double 0x3CA1000000000001, double %3004, double %2996)
  %3006 = load ptr, ptr %7, align 8, !tbaa !9
  %3007 = load i32, ptr %12, align 4, !tbaa !5
  %3008 = load i32, ptr %8, align 4, !tbaa !5
  %3009 = mul nsw i32 17, %3008
  %3010 = add nsw i32 %3007, %3009
  %3011 = sext i32 %3010 to i64
  %3012 = getelementptr inbounds double, ptr %3006, i64 %3011
  %3013 = load double, ptr %3012, align 8, !tbaa !11
  %3014 = call double @llvm.fmuladd.f64(double 0xBC60000000000000, double %3013, double %3005)
  %3015 = load ptr, ptr %7, align 8, !tbaa !9
  %3016 = load i32, ptr %12, align 4, !tbaa !5
  %3017 = load i32, ptr %8, align 4, !tbaa !5
  %3018 = mul nsw i32 18, %3017
  %3019 = add nsw i32 %3016, %3018
  %3020 = sext i32 %3019 to i64
  %3021 = getelementptr inbounds double, ptr %3015, i64 %3020
  %3022 = load double, ptr %3021, align 8, !tbaa !11
  %3023 = call double @llvm.fmuladd.f64(double 0xBFEA0946EB3057DB, double %3022, double %3014)
  %3024 = load ptr, ptr %7, align 8, !tbaa !9
  %3025 = load i32, ptr %12, align 4, !tbaa !5
  %3026 = load i32, ptr %8, align 4, !tbaa !5
  %3027 = mul nsw i32 19, %3026
  %3028 = add nsw i32 %3025, %3027
  %3029 = sext i32 %3028 to i64
  %3030 = getelementptr inbounds double, ptr %3024, i64 %3029
  %3031 = load double, ptr %3030, align 8, !tbaa !11
  %3032 = call double @llvm.fmuladd.f64(double 0x3C7FFFFFFFFFFFFF, double %3031, double %3023)
  %3033 = load ptr, ptr %7, align 8, !tbaa !9
  %3034 = load i32, ptr %12, align 4, !tbaa !5
  %3035 = load i32, ptr %8, align 4, !tbaa !5
  %3036 = mul nsw i32 20, %3035
  %3037 = add nsw i32 %3034, %3036
  %3038 = sext i32 %3037 to i64
  %3039 = getelementptr inbounds double, ptr %3033, i64 %3038
  %3040 = load double, ptr %3039, align 8, !tbaa !11
  %3041 = call double @llvm.fmuladd.f64(double 0xBCA4000000000001, double %3040, double %3032)
  %3042 = load ptr, ptr %7, align 8, !tbaa !9
  %3043 = load i32, ptr %12, align 4, !tbaa !5
  %3044 = load i32, ptr %8, align 4, !tbaa !5
  %3045 = mul nsw i32 21, %3044
  %3046 = add nsw i32 %3043, %3045
  %3047 = sext i32 %3046 to i64
  %3048 = getelementptr inbounds double, ptr %3042, i64 %3047
  %3049 = load double, ptr %3048, align 8, !tbaa !11
  %3050 = call double @llvm.fmuladd.f64(double 0xBCA4000000000001, double %3049, double %3041)
  %3051 = load ptr, ptr %7, align 8, !tbaa !9
  %3052 = load i32, ptr %12, align 4, !tbaa !5
  %3053 = load i32, ptr %8, align 4, !tbaa !5
  %3054 = mul nsw i32 22, %3053
  %3055 = add nsw i32 %3052, %3054
  %3056 = sext i32 %3055 to i64
  %3057 = getelementptr inbounds double, ptr %3051, i64 %3056
  %3058 = load double, ptr %3057, align 8, !tbaa !11
  %3059 = call double @llvm.fmuladd.f64(double 0x3CA5000000000000, double %3058, double %3050)
  %3060 = load ptr, ptr %7, align 8, !tbaa !9
  %3061 = load i32, ptr %12, align 4, !tbaa !5
  %3062 = load i32, ptr %8, align 4, !tbaa !5
  %3063 = mul nsw i32 23, %3062
  %3064 = add nsw i32 %3061, %3063
  %3065 = sext i32 %3064 to i64
  %3066 = getelementptr inbounds double, ptr %3060, i64 %3065
  %3067 = load double, ptr %3066, align 8, !tbaa !11
  %3068 = call double @llvm.fmuladd.f64(double 0x3C91000000000000, double %3067, double %3059)
  %3069 = load ptr, ptr %7, align 8, !tbaa !9
  %3070 = load i32, ptr %12, align 4, !tbaa !5
  %3071 = load i32, ptr %8, align 4, !tbaa !5
  %3072 = mul nsw i32 24, %3071
  %3073 = add nsw i32 %3070, %3072
  %3074 = sext i32 %3073 to i64
  %3075 = getelementptr inbounds double, ptr %3069, i64 %3074
  %3076 = load double, ptr %3075, align 8, !tbaa !11
  %3077 = call double @llvm.fmuladd.f64(double 0xBC98000000000000, double %3076, double %3068)
  %3078 = load ptr, ptr %7, align 8, !tbaa !9
  %3079 = load i32, ptr %12, align 4, !tbaa !5
  %3080 = load i32, ptr %8, align 4, !tbaa !5
  %3081 = mul nsw i32 25, %3080
  %3082 = add nsw i32 %3079, %3081
  %3083 = sext i32 %3082 to i64
  %3084 = getelementptr inbounds double, ptr %3078, i64 %3083
  %3085 = load double, ptr %3084, align 8, !tbaa !11
  %3086 = call double @llvm.fmuladd.f64(double 0xBCB0000000000000, double %3085, double %3077)
  %3087 = load ptr, ptr %7, align 8, !tbaa !9
  %3088 = load i32, ptr %12, align 4, !tbaa !5
  %3089 = load i32, ptr %8, align 4, !tbaa !5
  %3090 = mul nsw i32 26, %3089
  %3091 = add nsw i32 %3088, %3090
  %3092 = sext i32 %3091 to i64
  %3093 = getelementptr inbounds double, ptr %3087, i64 %3092
  %3094 = load double, ptr %3093, align 8, !tbaa !11
  %3095 = call double @llvm.fmuladd.f64(double 0xBC92000000000000, double %3094, double %3086)
  %3096 = load ptr, ptr %7, align 8, !tbaa !9
  %3097 = load i32, ptr %12, align 4, !tbaa !5
  %3098 = load i32, ptr %8, align 4, !tbaa !5
  %3099 = mul nsw i32 27, %3098
  %3100 = add nsw i32 %3097, %3099
  %3101 = sext i32 %3100 to i64
  %3102 = getelementptr inbounds double, ptr %3096, i64 %3101
  %3103 = load double, ptr %3102, align 8, !tbaa !11
  %3104 = call double @llvm.fmuladd.f64(double 0xBC70000000000001, double %3103, double %3095)
  %3105 = load ptr, ptr %7, align 8, !tbaa !9
  %3106 = load i32, ptr %12, align 4, !tbaa !5
  %3107 = load i32, ptr %8, align 4, !tbaa !5
  %3108 = mul nsw i32 28, %3107
  %3109 = add nsw i32 %3106, %3108
  %3110 = sext i32 %3109 to i64
  %3111 = getelementptr inbounds double, ptr %3105, i64 %3110
  %3112 = load double, ptr %3111, align 8, !tbaa !11
  %3113 = call double @llvm.fmuladd.f64(double 0x3FD9A613A5CEF63C, double %3112, double %3104)
  %3114 = load ptr, ptr %7, align 8, !tbaa !9
  %3115 = load i32, ptr %12, align 4, !tbaa !5
  %3116 = load i32, ptr %8, align 4, !tbaa !5
  %3117 = mul nsw i32 29, %3116
  %3118 = add nsw i32 %3115, %3117
  %3119 = sext i32 %3118 to i64
  %3120 = getelementptr inbounds double, ptr %3114, i64 %3119
  %3121 = load double, ptr %3120, align 8, !tbaa !11
  %3122 = call double @llvm.fmuladd.f64(double 0x3CA4000000000001, double %3121, double %3113)
  %3123 = load ptr, ptr %7, align 8, !tbaa !9
  %3124 = load i32, ptr %12, align 4, !tbaa !5
  %3125 = load i32, ptr %8, align 4, !tbaa !5
  %3126 = mul nsw i32 30, %3125
  %3127 = add nsw i32 %3124, %3126
  %3128 = sext i32 %3127 to i64
  %3129 = getelementptr inbounds double, ptr %3123, i64 %3128
  %3130 = load double, ptr %3129, align 8, !tbaa !11
  %3131 = call double @llvm.fmuladd.f64(double 0x3CB2000000000000, double %3130, double %3122)
  %3132 = load ptr, ptr %7, align 8, !tbaa !9
  %3133 = load i32, ptr %12, align 4, !tbaa !5
  %3134 = load i32, ptr %8, align 4, !tbaa !5
  %3135 = mul nsw i32 31, %3134
  %3136 = add nsw i32 %3133, %3135
  %3137 = sext i32 %3136 to i64
  %3138 = getelementptr inbounds double, ptr %3132, i64 %3137
  %3139 = load double, ptr %3138, align 8, !tbaa !11
  %3140 = call double @llvm.fmuladd.f64(double 0x3CA4000000000001, double %3139, double %3131)
  %3141 = load ptr, ptr %7, align 8, !tbaa !9
  %3142 = load i32, ptr %12, align 4, !tbaa !5
  %3143 = load i32, ptr %8, align 4, !tbaa !5
  %3144 = mul nsw i32 32, %3143
  %3145 = add nsw i32 %3142, %3144
  %3146 = sext i32 %3145 to i64
  %3147 = getelementptr inbounds double, ptr %3141, i64 %3146
  %3148 = load double, ptr %3147, align 8, !tbaa !11
  %3149 = call double @llvm.fmuladd.f64(double 0xBC95800000000000, double %3148, double %3140)
  %3150 = load ptr, ptr %7, align 8, !tbaa !9
  %3151 = load i32, ptr %12, align 4, !tbaa !5
  %3152 = load i32, ptr %8, align 4, !tbaa !5
  %3153 = mul nsw i32 33, %3152
  %3154 = add nsw i32 %3151, %3153
  %3155 = sext i32 %3154 to i64
  %3156 = getelementptr inbounds double, ptr %3150, i64 %3155
  %3157 = load double, ptr %3156, align 8, !tbaa !11
  %3158 = call double @llvm.fmuladd.f64(double 0xBC58000000000000, double %3157, double %3149)
  %3159 = load ptr, ptr %7, align 8, !tbaa !9
  %3160 = load i32, ptr %12, align 4, !tbaa !5
  %3161 = load i32, ptr %8, align 4, !tbaa !5
  %3162 = mul nsw i32 34, %3161
  %3163 = add nsw i32 %3160, %3162
  %3164 = sext i32 %3163 to i64
  %3165 = getelementptr inbounds double, ptr %3159, i64 %3164
  %3166 = load double, ptr %3165, align 8, !tbaa !11
  %3167 = call double @llvm.fmuladd.f64(double 0xBC9C000000000000, double %3166, double %3158)
  %3168 = load ptr, ptr %7, align 8, !tbaa !9
  %3169 = load i32, ptr %12, align 4, !tbaa !5
  %3170 = load i32, ptr %8, align 4, !tbaa !5
  %3171 = mul nsw i32 35, %3170
  %3172 = add nsw i32 %3169, %3171
  %3173 = sext i32 %3172 to i64
  %3174 = getelementptr inbounds double, ptr %3168, i64 %3173
  %3175 = load double, ptr %3174, align 8, !tbaa !11
  %3176 = call double @llvm.fmuladd.f64(double 0xBC9A000000000000, double %3175, double %3167)
  %3177 = load ptr, ptr %7, align 8, !tbaa !9
  %3178 = load i32, ptr %12, align 4, !tbaa !5
  %3179 = load i32, ptr %8, align 4, !tbaa !5
  %3180 = mul nsw i32 36, %3179
  %3181 = add nsw i32 %3178, %3180
  %3182 = sext i32 %3181 to i64
  %3183 = getelementptr inbounds double, ptr %3177, i64 %3182
  %3184 = load double, ptr %3183, align 8, !tbaa !11
  %3185 = call double @llvm.fmuladd.f64(double 0x3C78000000000002, double %3184, double %3176)
  %3186 = load ptr, ptr %7, align 8, !tbaa !9
  %3187 = load i32, ptr %12, align 4, !tbaa !5
  %3188 = load i32, ptr %8, align 4, !tbaa !5
  %3189 = mul nsw i32 37, %3188
  %3190 = add nsw i32 %3187, %3189
  %3191 = sext i32 %3190 to i64
  %3192 = getelementptr inbounds double, ptr %3186, i64 %3191
  %3193 = load double, ptr %3192, align 8, !tbaa !11
  %3194 = call double @llvm.fmuladd.f64(double 0xBC70000000000001, double %3193, double %3185)
  %3195 = load ptr, ptr %7, align 8, !tbaa !9
  %3196 = load i32, ptr %12, align 4, !tbaa !5
  %3197 = load i32, ptr %8, align 4, !tbaa !5
  %3198 = mul nsw i32 38, %3197
  %3199 = add nsw i32 %3196, %3198
  %3200 = sext i32 %3199 to i64
  %3201 = getelementptr inbounds double, ptr %3195, i64 %3200
  %3202 = load double, ptr %3201, align 8, !tbaa !11
  %3203 = call double @llvm.fmuladd.f64(double 0xBFBD29AD687BB05D, double %3202, double %3194)
  %3204 = load ptr, ptr %7, align 8, !tbaa !9
  %3205 = load i32, ptr %12, align 4, !tbaa !5
  %3206 = load i32, ptr %8, align 4, !tbaa !5
  %3207 = mul nsw i32 39, %3206
  %3208 = add nsw i32 %3205, %3207
  %3209 = sext i32 %3208 to i64
  %3210 = getelementptr inbounds double, ptr %3204, i64 %3209
  %3211 = load double, ptr %3210, align 8, !tbaa !11
  %3212 = call double @llvm.fmuladd.f64(double 0xBC70000000000001, double %3211, double %3203)
  store double %3212, ptr %11, align 8, !tbaa !11
  %3213 = load double, ptr %11, align 8, !tbaa !11
  %3214 = load ptr, ptr %9, align 8, !tbaa !9
  %3215 = load i32, ptr %12, align 4, !tbaa !5
  %3216 = load i32, ptr %10, align 4, !tbaa !5
  %3217 = mul nsw i32 8, %3216
  %3218 = add nsw i32 %3215, %3217
  %3219 = sext i32 %3218 to i64
  %3220 = getelementptr inbounds double, ptr %3214, i64 %3219
  %3221 = load double, ptr %3220, align 8, !tbaa !11
  %3222 = fadd double %3221, %3213
  store double %3222, ptr %3220, align 8, !tbaa !11
  %3223 = load ptr, ptr %7, align 8, !tbaa !9
  %3224 = load i32, ptr %12, align 4, !tbaa !5
  %3225 = load i32, ptr %8, align 4, !tbaa !5
  %3226 = mul nsw i32 0, %3225
  %3227 = add nsw i32 %3224, %3226
  %3228 = sext i32 %3227 to i64
  %3229 = getelementptr inbounds double, ptr %3223, i64 %3228
  %3230 = load double, ptr %3229, align 8, !tbaa !11
  %3231 = load ptr, ptr %7, align 8, !tbaa !9
  %3232 = load i32, ptr %12, align 4, !tbaa !5
  %3233 = load i32, ptr %8, align 4, !tbaa !5
  %3234 = mul nsw i32 1, %3233
  %3235 = add nsw i32 %3232, %3234
  %3236 = sext i32 %3235 to i64
  %3237 = getelementptr inbounds double, ptr %3231, i64 %3236
  %3238 = load double, ptr %3237, align 8, !tbaa !11
  %3239 = fmul double 0xBC84000000000000, %3238
  %3240 = call double @llvm.fmuladd.f64(double 0x3CAC000000000000, double %3230, double %3239)
  %3241 = load ptr, ptr %7, align 8, !tbaa !9
  %3242 = load i32, ptr %12, align 4, !tbaa !5
  %3243 = load i32, ptr %8, align 4, !tbaa !5
  %3244 = mul nsw i32 2, %3243
  %3245 = add nsw i32 %3242, %3244
  %3246 = sext i32 %3245 to i64
  %3247 = getelementptr inbounds double, ptr %3241, i64 %3246
  %3248 = load double, ptr %3247, align 8, !tbaa !11
  %3249 = call double @llvm.fmuladd.f64(double 0x3CB21FFFFFFFFFFF, double %3248, double %3240)
  %3250 = load ptr, ptr %7, align 8, !tbaa !9
  %3251 = load i32, ptr %12, align 4, !tbaa !5
  %3252 = load i32, ptr %8, align 4, !tbaa !5
  %3253 = mul nsw i32 3, %3252
  %3254 = add nsw i32 %3251, %3253
  %3255 = sext i32 %3254 to i64
  %3256 = getelementptr inbounds double, ptr %3250, i64 %3255
  %3257 = load double, ptr %3256, align 8, !tbaa !11
  %3258 = call double @llvm.fmuladd.f64(double 0xBCB9C00000000001, double %3257, double %3249)
  %3259 = load ptr, ptr %7, align 8, !tbaa !9
  %3260 = load i32, ptr %12, align 4, !tbaa !5
  %3261 = load i32, ptr %8, align 4, !tbaa !5
  %3262 = mul nsw i32 4, %3261
  %3263 = add nsw i32 %3260, %3262
  %3264 = sext i32 %3263 to i64
  %3265 = getelementptr inbounds double, ptr %3259, i64 %3264
  %3266 = load double, ptr %3265, align 8, !tbaa !11
  %3267 = call double @llvm.fmuladd.f64(double 0x3CA7000000000002, double %3266, double %3258)
  %3268 = load ptr, ptr %7, align 8, !tbaa !9
  %3269 = load i32, ptr %12, align 4, !tbaa !5
  %3270 = load i32, ptr %8, align 4, !tbaa !5
  %3271 = mul nsw i32 5, %3270
  %3272 = add nsw i32 %3269, %3271
  %3273 = sext i32 %3272 to i64
  %3274 = getelementptr inbounds double, ptr %3268, i64 %3273
  %3275 = load double, ptr %3274, align 8, !tbaa !11
  %3276 = call double @llvm.fmuladd.f64(double 0xBC96000000000000, double %3275, double %3267)
  %3277 = load ptr, ptr %7, align 8, !tbaa !9
  %3278 = load i32, ptr %12, align 4, !tbaa !5
  %3279 = load i32, ptr %8, align 4, !tbaa !5
  %3280 = mul nsw i32 6, %3279
  %3281 = add nsw i32 %3278, %3280
  %3282 = sext i32 %3281 to i64
  %3283 = getelementptr inbounds double, ptr %3277, i64 %3282
  %3284 = load double, ptr %3283, align 8, !tbaa !11
  %3285 = call double @llvm.fmuladd.f64(double 0x3CAA800000000002, double %3284, double %3276)
  %3286 = load ptr, ptr %7, align 8, !tbaa !9
  %3287 = load i32, ptr %12, align 4, !tbaa !5
  %3288 = load i32, ptr %8, align 4, !tbaa !5
  %3289 = mul nsw i32 7, %3288
  %3290 = add nsw i32 %3287, %3289
  %3291 = sext i32 %3290 to i64
  %3292 = getelementptr inbounds double, ptr %3286, i64 %3291
  %3293 = load double, ptr %3292, align 8, !tbaa !11
  %3294 = call double @llvm.fmuladd.f64(double 0xBCA5000000000000, double %3293, double %3285)
  %3295 = load ptr, ptr %7, align 8, !tbaa !9
  %3296 = load i32, ptr %12, align 4, !tbaa !5
  %3297 = load i32, ptr %8, align 4, !tbaa !5
  %3298 = mul nsw i32 8, %3297
  %3299 = add nsw i32 %3296, %3298
  %3300 = sext i32 %3299 to i64
  %3301 = getelementptr inbounds double, ptr %3295, i64 %3300
  %3302 = load double, ptr %3301, align 8, !tbaa !11
  %3303 = call double @llvm.fmuladd.f64(double 0x3CA8000000000001, double %3302, double %3294)
  %3304 = load ptr, ptr %7, align 8, !tbaa !9
  %3305 = load i32, ptr %12, align 4, !tbaa !5
  %3306 = load i32, ptr %8, align 4, !tbaa !5
  %3307 = mul nsw i32 9, %3306
  %3308 = add nsw i32 %3305, %3307
  %3309 = sext i32 %3308 to i64
  %3310 = getelementptr inbounds double, ptr %3304, i64 %3309
  %3311 = load double, ptr %3310, align 8, !tbaa !11
  %3312 = call double @llvm.fmuladd.f64(double 0x3FF86DB962AC2966, double %3311, double %3303)
  %3313 = load ptr, ptr %7, align 8, !tbaa !9
  %3314 = load i32, ptr %12, align 4, !tbaa !5
  %3315 = load i32, ptr %8, align 4, !tbaa !5
  %3316 = mul nsw i32 10, %3315
  %3317 = add nsw i32 %3314, %3316
  %3318 = sext i32 %3317 to i64
  %3319 = getelementptr inbounds double, ptr %3313, i64 %3318
  %3320 = load double, ptr %3319, align 8, !tbaa !11
  %3321 = call double @llvm.fmuladd.f64(double 0x3CAC000000000000, double %3320, double %3312)
  %3322 = load ptr, ptr %7, align 8, !tbaa !9
  %3323 = load i32, ptr %12, align 4, !tbaa !5
  %3324 = load i32, ptr %8, align 4, !tbaa !5
  %3325 = mul nsw i32 11, %3324
  %3326 = add nsw i32 %3323, %3325
  %3327 = sext i32 %3326 to i64
  %3328 = getelementptr inbounds double, ptr %3322, i64 %3327
  %3329 = load double, ptr %3328, align 8, !tbaa !11
  %3330 = call double @llvm.fmuladd.f64(double 0x3CA0000000000002, double %3329, double %3321)
  %3331 = load ptr, ptr %7, align 8, !tbaa !9
  %3332 = load i32, ptr %12, align 4, !tbaa !5
  %3333 = load i32, ptr %8, align 4, !tbaa !5
  %3334 = mul nsw i32 12, %3333
  %3335 = add nsw i32 %3332, %3334
  %3336 = sext i32 %3335 to i64
  %3337 = getelementptr inbounds double, ptr %3331, i64 %3336
  %3338 = load double, ptr %3337, align 8, !tbaa !11
  %3339 = call double @llvm.fmuladd.f64(double 0x3C96000000000000, double %3338, double %3330)
  %3340 = load ptr, ptr %7, align 8, !tbaa !9
  %3341 = load i32, ptr %12, align 4, !tbaa !5
  %3342 = load i32, ptr %8, align 4, !tbaa !5
  %3343 = mul nsw i32 13, %3342
  %3344 = add nsw i32 %3341, %3343
  %3345 = sext i32 %3344 to i64
  %3346 = getelementptr inbounds double, ptr %3340, i64 %3345
  %3347 = load double, ptr %3346, align 8, !tbaa !11
  %3348 = call double @llvm.fmuladd.f64(double 0xBC96000000000000, double %3347, double %3339)
  %3349 = load ptr, ptr %7, align 8, !tbaa !9
  %3350 = load i32, ptr %12, align 4, !tbaa !5
  %3351 = load i32, ptr %8, align 4, !tbaa !5
  %3352 = mul nsw i32 14, %3351
  %3353 = add nsw i32 %3350, %3352
  %3354 = sext i32 %3353 to i64
  %3355 = getelementptr inbounds double, ptr %3349, i64 %3354
  %3356 = load double, ptr %3355, align 8, !tbaa !11
  %3357 = call double @llvm.fmuladd.f64(double 0xBCA5FFFFFFFFFFFF, double %3356, double %3348)
  %3358 = load ptr, ptr %7, align 8, !tbaa !9
  %3359 = load i32, ptr %12, align 4, !tbaa !5
  %3360 = load i32, ptr %8, align 4, !tbaa !5
  %3361 = mul nsw i32 15, %3360
  %3362 = add nsw i32 %3359, %3361
  %3363 = sext i32 %3362 to i64
  %3364 = getelementptr inbounds double, ptr %3358, i64 %3363
  %3365 = load double, ptr %3364, align 8, !tbaa !11
  %3366 = call double @llvm.fmuladd.f64(double 0x3C94000000000000, double %3365, double %3357)
  %3367 = load ptr, ptr %7, align 8, !tbaa !9
  %3368 = load i32, ptr %12, align 4, !tbaa !5
  %3369 = load i32, ptr %8, align 4, !tbaa !5
  %3370 = mul nsw i32 16, %3369
  %3371 = add nsw i32 %3368, %3370
  %3372 = sext i32 %3371 to i64
  %3373 = getelementptr inbounds double, ptr %3367, i64 %3372
  %3374 = load double, ptr %3373, align 8, !tbaa !11
  %3375 = call double @llvm.fmuladd.f64(double 0xBC9DFFFFFFFFFFFE, double %3374, double %3366)
  %3376 = load ptr, ptr %7, align 8, !tbaa !9
  %3377 = load i32, ptr %12, align 4, !tbaa !5
  %3378 = load i32, ptr %8, align 4, !tbaa !5
  %3379 = mul nsw i32 17, %3378
  %3380 = add nsw i32 %3377, %3379
  %3381 = sext i32 %3380 to i64
  %3382 = getelementptr inbounds double, ptr %3376, i64 %3381
  %3383 = load double, ptr %3382, align 8, !tbaa !11
  %3384 = call double @llvm.fmuladd.f64(double 0xBC88000000000000, double %3383, double %3375)
  %3385 = load ptr, ptr %7, align 8, !tbaa !9
  %3386 = load i32, ptr %12, align 4, !tbaa !5
  %3387 = load i32, ptr %8, align 4, !tbaa !5
  %3388 = mul nsw i32 18, %3387
  %3389 = add nsw i32 %3386, %3388
  %3390 = sext i32 %3389 to i64
  %3391 = getelementptr inbounds double, ptr %3385, i64 %3390
  %3392 = load double, ptr %3391, align 8, !tbaa !11
  %3393 = call double @llvm.fmuladd.f64(double 0x3C98000000000000, double %3392, double %3384)
  %3394 = load ptr, ptr %7, align 8, !tbaa !9
  %3395 = load i32, ptr %12, align 4, !tbaa !5
  %3396 = load i32, ptr %8, align 4, !tbaa !5
  %3397 = mul nsw i32 19, %3396
  %3398 = add nsw i32 %3395, %3397
  %3399 = sext i32 %3398 to i64
  %3400 = getelementptr inbounds double, ptr %3394, i64 %3399
  %3401 = load double, ptr %3400, align 8, !tbaa !11
  %3402 = call double @llvm.fmuladd.f64(double 0xBFEA0946EB3057DC, double %3401, double %3393)
  %3403 = load ptr, ptr %7, align 8, !tbaa !9
  %3404 = load i32, ptr %12, align 4, !tbaa !5
  %3405 = load i32, ptr %8, align 4, !tbaa !5
  %3406 = mul nsw i32 20, %3405
  %3407 = add nsw i32 %3404, %3406
  %3408 = sext i32 %3407 to i64
  %3409 = getelementptr inbounds double, ptr %3403, i64 %3408
  %3410 = load double, ptr %3409, align 8, !tbaa !11
  %3411 = call double @llvm.fmuladd.f64(double 0xBCB2000000000000, double %3410, double %3402)
  %3412 = load ptr, ptr %7, align 8, !tbaa !9
  %3413 = load i32, ptr %12, align 4, !tbaa !5
  %3414 = load i32, ptr %8, align 4, !tbaa !5
  %3415 = mul nsw i32 21, %3414
  %3416 = add nsw i32 %3413, %3415
  %3417 = sext i32 %3416 to i64
  %3418 = getelementptr inbounds double, ptr %3412, i64 %3417
  %3419 = load double, ptr %3418, align 8, !tbaa !11
  %3420 = call double @llvm.fmuladd.f64(double 0xBCAC000000000000, double %3419, double %3411)
  %3421 = load ptr, ptr %7, align 8, !tbaa !9
  %3422 = load i32, ptr %12, align 4, !tbaa !5
  %3423 = load i32, ptr %8, align 4, !tbaa !5
  %3424 = mul nsw i32 22, %3423
  %3425 = add nsw i32 %3422, %3424
  %3426 = sext i32 %3425 to i64
  %3427 = getelementptr inbounds double, ptr %3421, i64 %3426
  %3428 = load double, ptr %3427, align 8, !tbaa !11
  %3429 = call double @llvm.fmuladd.f64(double 0xBCA9000000000000, double %3428, double %3420)
  %3430 = load ptr, ptr %7, align 8, !tbaa !9
  %3431 = load i32, ptr %12, align 4, !tbaa !5
  %3432 = load i32, ptr %8, align 4, !tbaa !5
  %3433 = mul nsw i32 23, %3432
  %3434 = add nsw i32 %3431, %3433
  %3435 = sext i32 %3434 to i64
  %3436 = getelementptr inbounds double, ptr %3430, i64 %3435
  %3437 = load double, ptr %3436, align 8, !tbaa !11
  %3438 = call double @llvm.fmuladd.f64(double 0x3CB2C00000000001, double %3437, double %3429)
  %3439 = load ptr, ptr %7, align 8, !tbaa !9
  %3440 = load i32, ptr %12, align 4, !tbaa !5
  %3441 = load i32, ptr %8, align 4, !tbaa !5
  %3442 = mul nsw i32 24, %3441
  %3443 = add nsw i32 %3440, %3442
  %3444 = sext i32 %3443 to i64
  %3445 = getelementptr inbounds double, ptr %3439, i64 %3444
  %3446 = load double, ptr %3445, align 8, !tbaa !11
  %3447 = call double @llvm.fmuladd.f64(double 0xBC70000000000001, double %3446, double %3438)
  %3448 = load ptr, ptr %7, align 8, !tbaa !9
  %3449 = load i32, ptr %12, align 4, !tbaa !5
  %3450 = load i32, ptr %8, align 4, !tbaa !5
  %3451 = mul nsw i32 25, %3450
  %3452 = add nsw i32 %3449, %3451
  %3453 = sext i32 %3452 to i64
  %3454 = getelementptr inbounds double, ptr %3448, i64 %3453
  %3455 = load double, ptr %3454, align 8, !tbaa !11
  %3456 = call double @llvm.fmuladd.f64(double 0x3CB0000000000000, double %3455, double %3447)
  %3457 = load ptr, ptr %7, align 8, !tbaa !9
  %3458 = load i32, ptr %12, align 4, !tbaa !5
  %3459 = load i32, ptr %8, align 4, !tbaa !5
  %3460 = mul nsw i32 26, %3459
  %3461 = add nsw i32 %3458, %3460
  %3462 = sext i32 %3461 to i64
  %3463 = getelementptr inbounds double, ptr %3457, i64 %3462
  %3464 = load double, ptr %3463, align 8, !tbaa !11
  %3465 = call double @llvm.fmuladd.f64(double 0x3C60000000000000, double %3464, double %3456)
  %3466 = load ptr, ptr %7, align 8, !tbaa !9
  %3467 = load i32, ptr %12, align 4, !tbaa !5
  %3468 = load i32, ptr %8, align 4, !tbaa !5
  %3469 = mul nsw i32 27, %3468
  %3470 = add nsw i32 %3467, %3469
  %3471 = sext i32 %3470 to i64
  %3472 = getelementptr inbounds double, ptr %3466, i64 %3471
  %3473 = load double, ptr %3472, align 8, !tbaa !11
  %3474 = call double @llvm.fmuladd.f64(double 0x3C9DFFFFFFFFFFFE, double %3473, double %3465)
  %3475 = load ptr, ptr %7, align 8, !tbaa !9
  %3476 = load i32, ptr %12, align 4, !tbaa !5
  %3477 = load i32, ptr %8, align 4, !tbaa !5
  %3478 = mul nsw i32 28, %3477
  %3479 = add nsw i32 %3476, %3478
  %3480 = sext i32 %3479 to i64
  %3481 = getelementptr inbounds double, ptr %3475, i64 %3480
  %3482 = load double, ptr %3481, align 8, !tbaa !11
  %3483 = call double @llvm.fmuladd.f64(double 0xBCB5FFFFFFFFFFFF, double %3482, double %3474)
  %3484 = load ptr, ptr %7, align 8, !tbaa !9
  %3485 = load i32, ptr %12, align 4, !tbaa !5
  %3486 = load i32, ptr %8, align 4, !tbaa !5
  %3487 = mul nsw i32 29, %3486
  %3488 = add nsw i32 %3485, %3487
  %3489 = sext i32 %3488 to i64
  %3490 = getelementptr inbounds double, ptr %3484, i64 %3489
  %3491 = load double, ptr %3490, align 8, !tbaa !11
  %3492 = call double @llvm.fmuladd.f64(double 0x3FD9A613A5CEF63B, double %3491, double %3483)
  %3493 = load ptr, ptr %7, align 8, !tbaa !9
  %3494 = load i32, ptr %12, align 4, !tbaa !5
  %3495 = load i32, ptr %8, align 4, !tbaa !5
  %3496 = mul nsw i32 30, %3495
  %3497 = add nsw i32 %3494, %3496
  %3498 = sext i32 %3497 to i64
  %3499 = getelementptr inbounds double, ptr %3493, i64 %3498
  %3500 = load double, ptr %3499, align 8, !tbaa !11
  %3501 = call double @llvm.fmuladd.f64(double 0xBCBA000000000000, double %3500, double %3492)
  %3502 = load ptr, ptr %7, align 8, !tbaa !9
  %3503 = load i32, ptr %12, align 4, !tbaa !5
  %3504 = load i32, ptr %8, align 4, !tbaa !5
  %3505 = mul nsw i32 31, %3504
  %3506 = add nsw i32 %3503, %3505
  %3507 = sext i32 %3506 to i64
  %3508 = getelementptr inbounds double, ptr %3502, i64 %3507
  %3509 = load double, ptr %3508, align 8, !tbaa !11
  %3510 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %3509, double %3501)
  %3511 = load ptr, ptr %7, align 8, !tbaa !9
  %3512 = load i32, ptr %12, align 4, !tbaa !5
  %3513 = load i32, ptr %8, align 4, !tbaa !5
  %3514 = mul nsw i32 32, %3513
  %3515 = add nsw i32 %3512, %3514
  %3516 = sext i32 %3515 to i64
  %3517 = getelementptr inbounds double, ptr %3511, i64 %3516
  %3518 = load double, ptr %3517, align 8, !tbaa !11
  %3519 = call double @llvm.fmuladd.f64(double 0x3C74000000000000, double %3518, double %3510)
  %3520 = load ptr, ptr %7, align 8, !tbaa !9
  %3521 = load i32, ptr %12, align 4, !tbaa !5
  %3522 = load i32, ptr %8, align 4, !tbaa !5
  %3523 = mul nsw i32 33, %3522
  %3524 = add nsw i32 %3521, %3523
  %3525 = sext i32 %3524 to i64
  %3526 = getelementptr inbounds double, ptr %3520, i64 %3525
  %3527 = load double, ptr %3526, align 8, !tbaa !11
  %3528 = call double @llvm.fmuladd.f64(double 0xBC91800000000000, double %3527, double %3519)
  %3529 = load ptr, ptr %7, align 8, !tbaa !9
  %3530 = load i32, ptr %12, align 4, !tbaa !5
  %3531 = load i32, ptr %8, align 4, !tbaa !5
  %3532 = mul nsw i32 34, %3531
  %3533 = add nsw i32 %3530, %3532
  %3534 = sext i32 %3533 to i64
  %3535 = getelementptr inbounds double, ptr %3529, i64 %3534
  %3536 = load double, ptr %3535, align 8, !tbaa !11
  %3537 = call double @llvm.fmuladd.f64(double 0x3C78000000000002, double %3536, double %3528)
  %3538 = load ptr, ptr %7, align 8, !tbaa !9
  %3539 = load i32, ptr %12, align 4, !tbaa !5
  %3540 = load i32, ptr %8, align 4, !tbaa !5
  %3541 = mul nsw i32 35, %3540
  %3542 = add nsw i32 %3539, %3541
  %3543 = sext i32 %3542 to i64
  %3544 = getelementptr inbounds double, ptr %3538, i64 %3543
  %3545 = load double, ptr %3544, align 8, !tbaa !11
  %3546 = call double @llvm.fmuladd.f64(double 0x3C9A000000000000, double %3545, double %3537)
  %3547 = load ptr, ptr %7, align 8, !tbaa !9
  %3548 = load i32, ptr %12, align 4, !tbaa !5
  %3549 = load i32, ptr %8, align 4, !tbaa !5
  %3550 = mul nsw i32 36, %3549
  %3551 = add nsw i32 %3548, %3550
  %3552 = sext i32 %3551 to i64
  %3553 = getelementptr inbounds double, ptr %3547, i64 %3552
  %3554 = load double, ptr %3553, align 8, !tbaa !11
  %3555 = call double @llvm.fmuladd.f64(double 0x3C60000000000000, double %3554, double %3546)
  %3556 = load ptr, ptr %7, align 8, !tbaa !9
  %3557 = load i32, ptr %12, align 4, !tbaa !5
  %3558 = load i32, ptr %8, align 4, !tbaa !5
  %3559 = mul nsw i32 37, %3558
  %3560 = add nsw i32 %3557, %3559
  %3561 = sext i32 %3560 to i64
  %3562 = getelementptr inbounds double, ptr %3556, i64 %3561
  %3563 = load double, ptr %3562, align 8, !tbaa !11
  %3564 = call double @llvm.fmuladd.f64(double 0xBC93000000000000, double %3563, double %3555)
  %3565 = load ptr, ptr %7, align 8, !tbaa !9
  %3566 = load i32, ptr %12, align 4, !tbaa !5
  %3567 = load i32, ptr %8, align 4, !tbaa !5
  %3568 = mul nsw i32 38, %3567
  %3569 = add nsw i32 %3566, %3568
  %3570 = sext i32 %3569 to i64
  %3571 = getelementptr inbounds double, ptr %3565, i64 %3570
  %3572 = load double, ptr %3571, align 8, !tbaa !11
  %3573 = call double @llvm.fmuladd.f64(double 0xBC94000000000000, double %3572, double %3564)
  %3574 = load ptr, ptr %7, align 8, !tbaa !9
  %3575 = load i32, ptr %12, align 4, !tbaa !5
  %3576 = load i32, ptr %8, align 4, !tbaa !5
  %3577 = mul nsw i32 39, %3576
  %3578 = add nsw i32 %3575, %3577
  %3579 = sext i32 %3578 to i64
  %3580 = getelementptr inbounds double, ptr %3574, i64 %3579
  %3581 = load double, ptr %3580, align 8, !tbaa !11
  %3582 = call double @llvm.fmuladd.f64(double 0xBFBD29AD687BB05D, double %3581, double %3573)
  store double %3582, ptr %11, align 8, !tbaa !11
  %3583 = load double, ptr %11, align 8, !tbaa !11
  %3584 = load ptr, ptr %9, align 8, !tbaa !9
  %3585 = load i32, ptr %12, align 4, !tbaa !5
  %3586 = load i32, ptr %10, align 4, !tbaa !5
  %3587 = mul nsw i32 9, %3586
  %3588 = add nsw i32 %3585, %3587
  %3589 = sext i32 %3588 to i64
  %3590 = getelementptr inbounds double, ptr %3584, i64 %3589
  %3591 = load double, ptr %3590, align 8, !tbaa !11
  %3592 = fadd double %3591, %3583
  store double %3592, ptr %3590, align 8, !tbaa !11
  %3593 = load ptr, ptr %7, align 8, !tbaa !9
  %3594 = load i32, ptr %12, align 4, !tbaa !5
  %3595 = load i32, ptr %8, align 4, !tbaa !5
  %3596 = mul nsw i32 0, %3595
  %3597 = add nsw i32 %3594, %3596
  %3598 = sext i32 %3597 to i64
  %3599 = getelementptr inbounds double, ptr %3593, i64 %3598
  %3600 = load double, ptr %3599, align 8, !tbaa !11
  %3601 = load ptr, ptr %7, align 8, !tbaa !9
  %3602 = load i32, ptr %12, align 4, !tbaa !5
  %3603 = load i32, ptr %8, align 4, !tbaa !5
  %3604 = mul nsw i32 1, %3603
  %3605 = add nsw i32 %3602, %3604
  %3606 = sext i32 %3605 to i64
  %3607 = getelementptr inbounds double, ptr %3601, i64 %3606
  %3608 = load double, ptr %3607, align 8, !tbaa !11
  %3609 = fmul double 0x3C7C000000000000, %3608
  %3610 = call double @llvm.fmuladd.f64(double 0xBFBD29AD687BB04F, double %3600, double %3609)
  %3611 = load ptr, ptr %7, align 8, !tbaa !9
  %3612 = load i32, ptr %12, align 4, !tbaa !5
  %3613 = load i32, ptr %8, align 4, !tbaa !5
  %3614 = mul nsw i32 2, %3613
  %3615 = add nsw i32 %3612, %3614
  %3616 = sext i32 %3615 to i64
  %3617 = getelementptr inbounds double, ptr %3611, i64 %3616
  %3618 = load double, ptr %3617, align 8, !tbaa !11
  %3619 = call double @llvm.fmuladd.f64(double 0x3C66000000000000, double %3618, double %3610)
  %3620 = load ptr, ptr %7, align 8, !tbaa !9
  %3621 = load i32, ptr %12, align 4, !tbaa !5
  %3622 = load i32, ptr %8, align 4, !tbaa !5
  %3623 = mul nsw i32 3, %3622
  %3624 = add nsw i32 %3621, %3623
  %3625 = sext i32 %3624 to i64
  %3626 = getelementptr inbounds double, ptr %3620, i64 %3625
  %3627 = load double, ptr %3626, align 8, !tbaa !11
  %3628 = call double @llvm.fmuladd.f64(double 0x3C71000000000000, double %3627, double %3619)
  %3629 = load ptr, ptr %7, align 8, !tbaa !9
  %3630 = load i32, ptr %12, align 4, !tbaa !5
  %3631 = load i32, ptr %8, align 4, !tbaa !5
  %3632 = mul nsw i32 4, %3631
  %3633 = add nsw i32 %3630, %3632
  %3634 = sext i32 %3633 to i64
  %3635 = getelementptr inbounds double, ptr %3629, i64 %3634
  %3636 = load double, ptr %3635, align 8, !tbaa !11
  %3637 = call double @llvm.fmuladd.f64(double 0xBC8E000000000000, double %3636, double %3628)
  %3638 = load ptr, ptr %7, align 8, !tbaa !9
  %3639 = load i32, ptr %12, align 4, !tbaa !5
  %3640 = load i32, ptr %8, align 4, !tbaa !5
  %3641 = mul nsw i32 5, %3640
  %3642 = add nsw i32 %3639, %3641
  %3643 = sext i32 %3642 to i64
  %3644 = getelementptr inbounds double, ptr %3638, i64 %3643
  %3645 = load double, ptr %3644, align 8, !tbaa !11
  %3646 = call double @llvm.fmuladd.f64(double 0x3C7C000000000000, double %3645, double %3637)
  %3647 = load ptr, ptr %7, align 8, !tbaa !9
  %3648 = load i32, ptr %12, align 4, !tbaa !5
  %3649 = load i32, ptr %8, align 4, !tbaa !5
  %3650 = mul nsw i32 6, %3649
  %3651 = add nsw i32 %3648, %3650
  %3652 = sext i32 %3651 to i64
  %3653 = getelementptr inbounds double, ptr %3647, i64 %3652
  %3654 = load double, ptr %3653, align 8, !tbaa !11
  %3655 = call double @llvm.fmuladd.f64(double 0xBC58000000000000, double %3654, double %3646)
  %3656 = load ptr, ptr %7, align 8, !tbaa !9
  %3657 = load i32, ptr %12, align 4, !tbaa !5
  %3658 = load i32, ptr %8, align 4, !tbaa !5
  %3659 = mul nsw i32 7, %3658
  %3660 = add nsw i32 %3657, %3659
  %3661 = sext i32 %3660 to i64
  %3662 = getelementptr inbounds double, ptr %3656, i64 %3661
  %3663 = load double, ptr %3662, align 8, !tbaa !11
  %3664 = call double @llvm.fmuladd.f64(double 0xBC76000000000001, double %3663, double %3655)
  %3665 = load ptr, ptr %7, align 8, !tbaa !9
  %3666 = load i32, ptr %12, align 4, !tbaa !5
  %3667 = load i32, ptr %8, align 4, !tbaa !5
  %3668 = mul nsw i32 8, %3667
  %3669 = add nsw i32 %3666, %3668
  %3670 = sext i32 %3669 to i64
  %3671 = getelementptr inbounds double, ptr %3665, i64 %3670
  %3672 = load double, ptr %3671, align 8, !tbaa !11
  %3673 = call double @llvm.fmuladd.f64(double 0x3C7FFFFFFFFFFFFF, double %3672, double %3664)
  %3674 = load ptr, ptr %7, align 8, !tbaa !9
  %3675 = load i32, ptr %12, align 4, !tbaa !5
  %3676 = load i32, ptr %8, align 4, !tbaa !5
  %3677 = mul nsw i32 9, %3676
  %3678 = add nsw i32 %3675, %3677
  %3679 = sext i32 %3678 to i64
  %3680 = getelementptr inbounds double, ptr %3674, i64 %3679
  %3681 = load double, ptr %3680, align 8, !tbaa !11
  %3682 = call double @llvm.fmuladd.f64(double 0xBC84000000000000, double %3681, double %3673)
  %3683 = load ptr, ptr %7, align 8, !tbaa !9
  %3684 = load i32, ptr %12, align 4, !tbaa !5
  %3685 = load i32, ptr %8, align 4, !tbaa !5
  %3686 = mul nsw i32 10, %3685
  %3687 = add nsw i32 %3684, %3686
  %3688 = sext i32 %3687 to i64
  %3689 = getelementptr inbounds double, ptr %3683, i64 %3688
  %3690 = load double, ptr %3689, align 8, !tbaa !11
  %3691 = call double @llvm.fmuladd.f64(double 0x3FD9A613A5CEF639, double %3690, double %3682)
  %3692 = load ptr, ptr %7, align 8, !tbaa !9
  %3693 = load i32, ptr %12, align 4, !tbaa !5
  %3694 = load i32, ptr %8, align 4, !tbaa !5
  %3695 = mul nsw i32 12, %3694
  %3696 = add nsw i32 %3693, %3695
  %3697 = sext i32 %3696 to i64
  %3698 = getelementptr inbounds double, ptr %3692, i64 %3697
  %3699 = load double, ptr %3698, align 8, !tbaa !11
  %3700 = call double @llvm.fmuladd.f64(double 0x3C40000000000000, double %3699, double %3691)
  %3701 = load ptr, ptr %7, align 8, !tbaa !9
  %3702 = load i32, ptr %12, align 4, !tbaa !5
  %3703 = load i32, ptr %8, align 4, !tbaa !5
  %3704 = mul nsw i32 13, %3703
  %3705 = add nsw i32 %3702, %3704
  %3706 = sext i32 %3705 to i64
  %3707 = getelementptr inbounds double, ptr %3701, i64 %3706
  %3708 = load double, ptr %3707, align 8, !tbaa !11
  %3709 = call double @llvm.fmuladd.f64(double 0x3C85000000000000, double %3708, double %3700)
  %3710 = load ptr, ptr %7, align 8, !tbaa !9
  %3711 = load i32, ptr %12, align 4, !tbaa !5
  %3712 = load i32, ptr %8, align 4, !tbaa !5
  %3713 = mul nsw i32 14, %3712
  %3714 = add nsw i32 %3711, %3713
  %3715 = sext i32 %3714 to i64
  %3716 = getelementptr inbounds double, ptr %3710, i64 %3715
  %3717 = load double, ptr %3716, align 8, !tbaa !11
  %3718 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %3717, double %3709)
  %3719 = load ptr, ptr %7, align 8, !tbaa !9
  %3720 = load i32, ptr %12, align 4, !tbaa !5
  %3721 = load i32, ptr %8, align 4, !tbaa !5
  %3722 = mul nsw i32 15, %3721
  %3723 = add nsw i32 %3720, %3722
  %3724 = sext i32 %3723 to i64
  %3725 = getelementptr inbounds double, ptr %3719, i64 %3724
  %3726 = load double, ptr %3725, align 8, !tbaa !11
  %3727 = call double @llvm.fmuladd.f64(double 0xBC88000000000000, double %3726, double %3718)
  %3728 = load ptr, ptr %7, align 8, !tbaa !9
  %3729 = load i32, ptr %12, align 4, !tbaa !5
  %3730 = load i32, ptr %8, align 4, !tbaa !5
  %3731 = mul nsw i32 16, %3730
  %3732 = add nsw i32 %3729, %3731
  %3733 = sext i32 %3732 to i64
  %3734 = getelementptr inbounds double, ptr %3728, i64 %3733
  %3735 = load double, ptr %3734, align 8, !tbaa !11
  %3736 = call double @llvm.fmuladd.f64(double 0x3C50000000000000, double %3735, double %3727)
  %3737 = load ptr, ptr %7, align 8, !tbaa !9
  %3738 = load i32, ptr %12, align 4, !tbaa !5
  %3739 = load i32, ptr %8, align 4, !tbaa !5
  %3740 = mul nsw i32 17, %3739
  %3741 = add nsw i32 %3738, %3740
  %3742 = sext i32 %3741 to i64
  %3743 = getelementptr inbounds double, ptr %3737, i64 %3742
  %3744 = load double, ptr %3743, align 8, !tbaa !11
  %3745 = call double @llvm.fmuladd.f64(double 0xBC92000000000000, double %3744, double %3736)
  %3746 = load ptr, ptr %7, align 8, !tbaa !9
  %3747 = load i32, ptr %12, align 4, !tbaa !5
  %3748 = load i32, ptr %8, align 4, !tbaa !5
  %3749 = mul nsw i32 18, %3748
  %3750 = add nsw i32 %3747, %3749
  %3751 = sext i32 %3750 to i64
  %3752 = getelementptr inbounds double, ptr %3746, i64 %3751
  %3753 = load double, ptr %3752, align 8, !tbaa !11
  %3754 = call double @llvm.fmuladd.f64(double 0x3C7FFFFFFFFFFFFF, double %3753, double %3745)
  %3755 = load ptr, ptr %7, align 8, !tbaa !9
  %3756 = load i32, ptr %12, align 4, !tbaa !5
  %3757 = load i32, ptr %8, align 4, !tbaa !5
  %3758 = mul nsw i32 19, %3757
  %3759 = add nsw i32 %3756, %3758
  %3760 = sext i32 %3759 to i64
  %3761 = getelementptr inbounds double, ptr %3755, i64 %3760
  %3762 = load double, ptr %3761, align 8, !tbaa !11
  %3763 = call double @llvm.fmuladd.f64(double 0x3C88000000000000, double %3762, double %3754)
  %3764 = load ptr, ptr %7, align 8, !tbaa !9
  %3765 = load i32, ptr %12, align 4, !tbaa !5
  %3766 = load i32, ptr %8, align 4, !tbaa !5
  %3767 = mul nsw i32 20, %3766
  %3768 = add nsw i32 %3765, %3767
  %3769 = sext i32 %3768 to i64
  %3770 = getelementptr inbounds double, ptr %3764, i64 %3769
  %3771 = load double, ptr %3770, align 8, !tbaa !11
  %3772 = call double @llvm.fmuladd.f64(double 0xBFEA0946EB3057DB, double %3771, double %3763)
  %3773 = load ptr, ptr %7, align 8, !tbaa !9
  %3774 = load i32, ptr %12, align 4, !tbaa !5
  %3775 = load i32, ptr %8, align 4, !tbaa !5
  %3776 = mul nsw i32 21, %3775
  %3777 = add nsw i32 %3774, %3776
  %3778 = sext i32 %3777 to i64
  %3779 = getelementptr inbounds double, ptr %3773, i64 %3778
  %3780 = load double, ptr %3779, align 8, !tbaa !11
  %3781 = call double @llvm.fmuladd.f64(double 0xBC70000000000001, double %3780, double %3772)
  %3782 = load ptr, ptr %7, align 8, !tbaa !9
  %3783 = load i32, ptr %12, align 4, !tbaa !5
  %3784 = load i32, ptr %8, align 4, !tbaa !5
  %3785 = mul nsw i32 22, %3784
  %3786 = add nsw i32 %3783, %3785
  %3787 = sext i32 %3786 to i64
  %3788 = getelementptr inbounds double, ptr %3782, i64 %3787
  %3789 = load double, ptr %3788, align 8, !tbaa !11
  %3790 = call double @llvm.fmuladd.f64(double 0xBC64000000000000, double %3789, double %3781)
  %3791 = load ptr, ptr %7, align 8, !tbaa !9
  %3792 = load i32, ptr %12, align 4, !tbaa !5
  %3793 = load i32, ptr %8, align 4, !tbaa !5
  %3794 = mul nsw i32 23, %3793
  %3795 = add nsw i32 %3792, %3794
  %3796 = sext i32 %3795 to i64
  %3797 = getelementptr inbounds double, ptr %3791, i64 %3796
  %3798 = load double, ptr %3797, align 8, !tbaa !11
  %3799 = call double @llvm.fmuladd.f64(double 0xBC70000000000001, double %3798, double %3790)
  %3800 = load ptr, ptr %7, align 8, !tbaa !9
  %3801 = load i32, ptr %12, align 4, !tbaa !5
  %3802 = load i32, ptr %8, align 4, !tbaa !5
  %3803 = mul nsw i32 24, %3802
  %3804 = add nsw i32 %3801, %3803
  %3805 = sext i32 %3804 to i64
  %3806 = getelementptr inbounds double, ptr %3800, i64 %3805
  %3807 = load double, ptr %3806, align 8, !tbaa !11
  %3808 = call double @llvm.fmuladd.f64(double 0x3C7FFFFFFFFFFFFF, double %3807, double %3799)
  %3809 = load ptr, ptr %7, align 8, !tbaa !9
  %3810 = load i32, ptr %12, align 4, !tbaa !5
  %3811 = load i32, ptr %8, align 4, !tbaa !5
  %3812 = mul nsw i32 25, %3811
  %3813 = add nsw i32 %3810, %3812
  %3814 = sext i32 %3813 to i64
  %3815 = getelementptr inbounds double, ptr %3809, i64 %3814
  %3816 = load double, ptr %3815, align 8, !tbaa !11
  %3817 = call double @llvm.fmuladd.f64(double 0x3C70000000000001, double %3816, double %3808)
  %3818 = load ptr, ptr %7, align 8, !tbaa !9
  %3819 = load i32, ptr %12, align 4, !tbaa !5
  %3820 = load i32, ptr %8, align 4, !tbaa !5
  %3821 = mul nsw i32 26, %3820
  %3822 = add nsw i32 %3819, %3821
  %3823 = sext i32 %3822 to i64
  %3824 = getelementptr inbounds double, ptr %3818, i64 %3823
  %3825 = load double, ptr %3824, align 8, !tbaa !11
  %3826 = call double @llvm.fmuladd.f64(double 0x3C70000000000001, double %3825, double %3817)
  %3827 = load ptr, ptr %7, align 8, !tbaa !9
  %3828 = load i32, ptr %12, align 4, !tbaa !5
  %3829 = load i32, ptr %8, align 4, !tbaa !5
  %3830 = mul nsw i32 27, %3829
  %3831 = add nsw i32 %3828, %3830
  %3832 = sext i32 %3831 to i64
  %3833 = getelementptr inbounds double, ptr %3827, i64 %3832
  %3834 = load double, ptr %3833, align 8, !tbaa !11
  %3835 = call double @llvm.fmuladd.f64(double 0x3C93000000000000, double %3834, double %3826)
  %3836 = load ptr, ptr %7, align 8, !tbaa !9
  %3837 = load i32, ptr %12, align 4, !tbaa !5
  %3838 = load i32, ptr %8, align 4, !tbaa !5
  %3839 = mul nsw i32 28, %3838
  %3840 = add nsw i32 %3837, %3839
  %3841 = sext i32 %3840 to i64
  %3842 = getelementptr inbounds double, ptr %3836, i64 %3841
  %3843 = load double, ptr %3842, align 8, !tbaa !11
  %3844 = call double @llvm.fmuladd.f64(double 0xBC70000000000001, double %3843, double %3835)
  %3845 = load ptr, ptr %7, align 8, !tbaa !9
  %3846 = load i32, ptr %12, align 4, !tbaa !5
  %3847 = load i32, ptr %8, align 4, !tbaa !5
  %3848 = mul nsw i32 29, %3847
  %3849 = add nsw i32 %3846, %3848
  %3850 = sext i32 %3849 to i64
  %3851 = getelementptr inbounds double, ptr %3845, i64 %3850
  %3852 = load double, ptr %3851, align 8, !tbaa !11
  %3853 = call double @llvm.fmuladd.f64(double 0xBC88000000000000, double %3852, double %3844)
  %3854 = load ptr, ptr %7, align 8, !tbaa !9
  %3855 = load i32, ptr %12, align 4, !tbaa !5
  %3856 = load i32, ptr %8, align 4, !tbaa !5
  %3857 = mul nsw i32 30, %3856
  %3858 = add nsw i32 %3855, %3857
  %3859 = sext i32 %3858 to i64
  %3860 = getelementptr inbounds double, ptr %3854, i64 %3859
  %3861 = load double, ptr %3860, align 8, !tbaa !11
  %3862 = call double @llvm.fmuladd.f64(double 0x3FF86DB962AC2966, double %3861, double %3853)
  %3863 = load ptr, ptr %7, align 8, !tbaa !9
  %3864 = load i32, ptr %12, align 4, !tbaa !5
  %3865 = load i32, ptr %8, align 4, !tbaa !5
  %3866 = mul nsw i32 31, %3865
  %3867 = add nsw i32 %3864, %3866
  %3868 = sext i32 %3867 to i64
  %3869 = getelementptr inbounds double, ptr %3863, i64 %3868
  %3870 = load double, ptr %3869, align 8, !tbaa !11
  %3871 = call double @llvm.fmuladd.f64(double 0xBC7C000000000000, double %3870, double %3862)
  %3872 = load ptr, ptr %7, align 8, !tbaa !9
  %3873 = load i32, ptr %12, align 4, !tbaa !5
  %3874 = load i32, ptr %8, align 4, !tbaa !5
  %3875 = mul nsw i32 32, %3874
  %3876 = add nsw i32 %3873, %3875
  %3877 = sext i32 %3876 to i64
  %3878 = getelementptr inbounds double, ptr %3872, i64 %3877
  %3879 = load double, ptr %3878, align 8, !tbaa !11
  %3880 = call double @llvm.fmuladd.f64(double 0xBC6A000000000003, double %3879, double %3871)
  %3881 = load ptr, ptr %7, align 8, !tbaa !9
  %3882 = load i32, ptr %12, align 4, !tbaa !5
  %3883 = load i32, ptr %8, align 4, !tbaa !5
  %3884 = mul nsw i32 33, %3883
  %3885 = add nsw i32 %3882, %3884
  %3886 = sext i32 %3885 to i64
  %3887 = getelementptr inbounds double, ptr %3881, i64 %3886
  %3888 = load double, ptr %3887, align 8, !tbaa !11
  %3889 = call double @llvm.fmuladd.f64(double 0x3C7F000000000000, double %3888, double %3880)
  %3890 = load ptr, ptr %7, align 8, !tbaa !9
  %3891 = load i32, ptr %12, align 4, !tbaa !5
  %3892 = load i32, ptr %8, align 4, !tbaa !5
  %3893 = mul nsw i32 34, %3892
  %3894 = add nsw i32 %3891, %3893
  %3895 = sext i32 %3894 to i64
  %3896 = getelementptr inbounds double, ptr %3890, i64 %3895
  %3897 = load double, ptr %3896, align 8, !tbaa !11
  %3898 = call double @llvm.fmuladd.f64(double 0x3C88000000000000, double %3897, double %3889)
  %3899 = load ptr, ptr %7, align 8, !tbaa !9
  %3900 = load i32, ptr %12, align 4, !tbaa !5
  %3901 = load i32, ptr %8, align 4, !tbaa !5
  %3902 = mul nsw i32 35, %3901
  %3903 = add nsw i32 %3900, %3902
  %3904 = sext i32 %3903 to i64
  %3905 = getelementptr inbounds double, ptr %3899, i64 %3904
  %3906 = load double, ptr %3905, align 8, !tbaa !11
  %3907 = call double @llvm.fmuladd.f64(double 0xBC50000000000000, double %3906, double %3898)
  %3908 = load ptr, ptr %7, align 8, !tbaa !9
  %3909 = load i32, ptr %12, align 4, !tbaa !5
  %3910 = load i32, ptr %8, align 4, !tbaa !5
  %3911 = mul nsw i32 36, %3910
  %3912 = add nsw i32 %3909, %3911
  %3913 = sext i32 %3912 to i64
  %3914 = getelementptr inbounds double, ptr %3908, i64 %3913
  %3915 = load double, ptr %3914, align 8, !tbaa !11
  %3916 = call double @llvm.fmuladd.f64(double 0xBC81000000000000, double %3915, double %3907)
  %3917 = load ptr, ptr %7, align 8, !tbaa !9
  %3918 = load i32, ptr %12, align 4, !tbaa !5
  %3919 = load i32, ptr %8, align 4, !tbaa !5
  %3920 = mul nsw i32 37, %3919
  %3921 = add nsw i32 %3918, %3920
  %3922 = sext i32 %3921 to i64
  %3923 = getelementptr inbounds double, ptr %3917, i64 %3922
  %3924 = load double, ptr %3923, align 8, !tbaa !11
  %3925 = call double @llvm.fmuladd.f64(double 0xBC40000000000000, double %3924, double %3916)
  %3926 = load ptr, ptr %7, align 8, !tbaa !9
  %3927 = load i32, ptr %12, align 4, !tbaa !5
  %3928 = load i32, ptr %8, align 4, !tbaa !5
  %3929 = mul nsw i32 38, %3928
  %3930 = add nsw i32 %3927, %3929
  %3931 = sext i32 %3930 to i64
  %3932 = getelementptr inbounds double, ptr %3926, i64 %3931
  %3933 = load double, ptr %3932, align 8, !tbaa !11
  %3934 = call double @llvm.fmuladd.f64(double 0xBC60000000000000, double %3933, double %3925)
  %3935 = load ptr, ptr %7, align 8, !tbaa !9
  %3936 = load i32, ptr %12, align 4, !tbaa !5
  %3937 = load i32, ptr %8, align 4, !tbaa !5
  %3938 = mul nsw i32 39, %3937
  %3939 = add nsw i32 %3936, %3938
  %3940 = sext i32 %3939 to i64
  %3941 = getelementptr inbounds double, ptr %3935, i64 %3940
  %3942 = load double, ptr %3941, align 8, !tbaa !11
  %3943 = call double @llvm.fmuladd.f64(double 0xBC78000000000002, double %3942, double %3934)
  store double %3943, ptr %11, align 8, !tbaa !11
  %3944 = load double, ptr %11, align 8, !tbaa !11
  %3945 = load ptr, ptr %9, align 8, !tbaa !9
  %3946 = load i32, ptr %12, align 4, !tbaa !5
  %3947 = load i32, ptr %10, align 4, !tbaa !5
  %3948 = mul nsw i32 10, %3947
  %3949 = add nsw i32 %3946, %3948
  %3950 = sext i32 %3949 to i64
  %3951 = getelementptr inbounds double, ptr %3945, i64 %3950
  %3952 = load double, ptr %3951, align 8, !tbaa !11
  %3953 = fadd double %3952, %3944
  store double %3953, ptr %3951, align 8, !tbaa !11
  %3954 = load ptr, ptr %7, align 8, !tbaa !9
  %3955 = load i32, ptr %12, align 4, !tbaa !5
  %3956 = load i32, ptr %8, align 4, !tbaa !5
  %3957 = mul nsw i32 0, %3956
  %3958 = add nsw i32 %3955, %3957
  %3959 = sext i32 %3958 to i64
  %3960 = getelementptr inbounds double, ptr %3954, i64 %3959
  %3961 = load double, ptr %3960, align 8, !tbaa !11
  %3962 = load ptr, ptr %7, align 8, !tbaa !9
  %3963 = load i32, ptr %12, align 4, !tbaa !5
  %3964 = load i32, ptr %8, align 4, !tbaa !5
  %3965 = mul nsw i32 1, %3964
  %3966 = add nsw i32 %3963, %3965
  %3967 = sext i32 %3966 to i64
  %3968 = getelementptr inbounds double, ptr %3962, i64 %3967
  %3969 = load double, ptr %3968, align 8, !tbaa !11
  %3970 = fmul double 0xBFBD29AD687BB05D, %3969
  %3971 = call double @llvm.fmuladd.f64(double 0x3CBC000000000000, double %3961, double %3970)
  %3972 = load ptr, ptr %7, align 8, !tbaa !9
  %3973 = load i32, ptr %12, align 4, !tbaa !5
  %3974 = load i32, ptr %8, align 4, !tbaa !5
  %3975 = mul nsw i32 2, %3974
  %3976 = add nsw i32 %3973, %3975
  %3977 = sext i32 %3976 to i64
  %3978 = getelementptr inbounds double, ptr %3972, i64 %3977
  %3979 = load double, ptr %3978, align 8, !tbaa !11
  %3980 = call double @llvm.fmuladd.f64(double 0x3CACFFFFFFFFFFFF, double %3979, double %3971)
  %3981 = load ptr, ptr %7, align 8, !tbaa !9
  %3982 = load i32, ptr %12, align 4, !tbaa !5
  %3983 = load i32, ptr %8, align 4, !tbaa !5
  %3984 = mul nsw i32 3, %3983
  %3985 = add nsw i32 %3982, %3984
  %3986 = sext i32 %3985 to i64
  %3987 = getelementptr inbounds double, ptr %3981, i64 %3986
  %3988 = load double, ptr %3987, align 8, !tbaa !11
  %3989 = call double @llvm.fmuladd.f64(double 0xBCAC800000000000, double %3988, double %3980)
  %3990 = load ptr, ptr %7, align 8, !tbaa !9
  %3991 = load i32, ptr %12, align 4, !tbaa !5
  %3992 = load i32, ptr %8, align 4, !tbaa !5
  %3993 = mul nsw i32 4, %3992
  %3994 = add nsw i32 %3991, %3993
  %3995 = sext i32 %3994 to i64
  %3996 = getelementptr inbounds double, ptr %3990, i64 %3995
  %3997 = load double, ptr %3996, align 8, !tbaa !11
  %3998 = call double @llvm.fmuladd.f64(double 0x3C7FFFFFFFFFFFFF, double %3997, double %3989)
  %3999 = load ptr, ptr %7, align 8, !tbaa !9
  %4000 = load i32, ptr %12, align 4, !tbaa !5
  %4001 = load i32, ptr %8, align 4, !tbaa !5
  %4002 = mul nsw i32 5, %4001
  %4003 = add nsw i32 %4000, %4002
  %4004 = sext i32 %4003 to i64
  %4005 = getelementptr inbounds double, ptr %3999, i64 %4004
  %4006 = load double, ptr %4005, align 8, !tbaa !11
  %4007 = call double @llvm.fmuladd.f64(double 0x3C88000000000000, double %4006, double %3998)
  %4008 = load ptr, ptr %7, align 8, !tbaa !9
  %4009 = load i32, ptr %12, align 4, !tbaa !5
  %4010 = load i32, ptr %8, align 4, !tbaa !5
  %4011 = mul nsw i32 6, %4010
  %4012 = add nsw i32 %4009, %4011
  %4013 = sext i32 %4012 to i64
  %4014 = getelementptr inbounds double, ptr %4008, i64 %4013
  %4015 = load double, ptr %4014, align 8, !tbaa !11
  %4016 = call double @llvm.fmuladd.f64(double 0xBC8C000000000000, double %4015, double %4007)
  %4017 = load ptr, ptr %7, align 8, !tbaa !9
  %4018 = load i32, ptr %12, align 4, !tbaa !5
  %4019 = load i32, ptr %8, align 4, !tbaa !5
  %4020 = mul nsw i32 7, %4019
  %4021 = add nsw i32 %4018, %4020
  %4022 = sext i32 %4021 to i64
  %4023 = getelementptr inbounds double, ptr %4017, i64 %4022
  %4024 = load double, ptr %4023, align 8, !tbaa !11
  %4025 = call double @llvm.fmuladd.f64(double 0x3C88000000000000, double %4024, double %4016)
  %4026 = load ptr, ptr %7, align 8, !tbaa !9
  %4027 = load i32, ptr %12, align 4, !tbaa !5
  %4028 = load i32, ptr %8, align 4, !tbaa !5
  %4029 = mul nsw i32 8, %4028
  %4030 = add nsw i32 %4027, %4029
  %4031 = sext i32 %4030 to i64
  %4032 = getelementptr inbounds double, ptr %4026, i64 %4031
  %4033 = load double, ptr %4032, align 8, !tbaa !11
  %4034 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %4033, double %4025)
  %4035 = load ptr, ptr %7, align 8, !tbaa !9
  %4036 = load i32, ptr %12, align 4, !tbaa !5
  %4037 = load i32, ptr %8, align 4, !tbaa !5
  %4038 = mul nsw i32 9, %4037
  %4039 = add nsw i32 %4036, %4038
  %4040 = sext i32 %4039 to i64
  %4041 = getelementptr inbounds double, ptr %4035, i64 %4040
  %4042 = load double, ptr %4041, align 8, !tbaa !11
  %4043 = call double @llvm.fmuladd.f64(double 0xBCA4000000000001, double %4042, double %4034)
  %4044 = load ptr, ptr %7, align 8, !tbaa !9
  %4045 = load i32, ptr %12, align 4, !tbaa !5
  %4046 = load i32, ptr %8, align 4, !tbaa !5
  %4047 = mul nsw i32 10, %4046
  %4048 = add nsw i32 %4045, %4047
  %4049 = sext i32 %4048 to i64
  %4050 = getelementptr inbounds double, ptr %4044, i64 %4049
  %4051 = load double, ptr %4050, align 8, !tbaa !11
  %4052 = call double @llvm.fmuladd.f64(double 0xBCB8000000000001, double %4051, double %4043)
  %4053 = load ptr, ptr %7, align 8, !tbaa !9
  %4054 = load i32, ptr %12, align 4, !tbaa !5
  %4055 = load i32, ptr %8, align 4, !tbaa !5
  %4056 = mul nsw i32 11, %4055
  %4057 = add nsw i32 %4054, %4056
  %4058 = sext i32 %4057 to i64
  %4059 = getelementptr inbounds double, ptr %4053, i64 %4058
  %4060 = load double, ptr %4059, align 8, !tbaa !11
  %4061 = call double @llvm.fmuladd.f64(double 0x3FD9A613A5CEF63B, double %4060, double %4052)
  %4062 = load ptr, ptr %7, align 8, !tbaa !9
  %4063 = load i32, ptr %12, align 4, !tbaa !5
  %4064 = load i32, ptr %8, align 4, !tbaa !5
  %4065 = mul nsw i32 12, %4064
  %4066 = add nsw i32 %4063, %4065
  %4067 = sext i32 %4066 to i64
  %4068 = getelementptr inbounds double, ptr %4062, i64 %4067
  %4069 = load double, ptr %4068, align 8, !tbaa !11
  %4070 = call double @llvm.fmuladd.f64(double 0xBC60000000000000, double %4069, double %4061)
  %4071 = load ptr, ptr %7, align 8, !tbaa !9
  %4072 = load i32, ptr %12, align 4, !tbaa !5
  %4073 = load i32, ptr %8, align 4, !tbaa !5
  %4074 = mul nsw i32 13, %4073
  %4075 = add nsw i32 %4072, %4074
  %4076 = sext i32 %4075 to i64
  %4077 = getelementptr inbounds double, ptr %4071, i64 %4076
  %4078 = load double, ptr %4077, align 8, !tbaa !11
  %4079 = call double @llvm.fmuladd.f64(double 0xBC9C000000000000, double %4078, double %4070)
  %4080 = load ptr, ptr %7, align 8, !tbaa !9
  %4081 = load i32, ptr %12, align 4, !tbaa !5
  %4082 = load i32, ptr %8, align 4, !tbaa !5
  %4083 = mul nsw i32 14, %4082
  %4084 = add nsw i32 %4081, %4083
  %4085 = sext i32 %4084 to i64
  %4086 = getelementptr inbounds double, ptr %4080, i64 %4085
  %4087 = load double, ptr %4086, align 8, !tbaa !11
  %4088 = call double @llvm.fmuladd.f64(double 0xBCAC000000000000, double %4087, double %4079)
  %4089 = load ptr, ptr %7, align 8, !tbaa !9
  %4090 = load i32, ptr %12, align 4, !tbaa !5
  %4091 = load i32, ptr %8, align 4, !tbaa !5
  %4092 = mul nsw i32 16, %4091
  %4093 = add nsw i32 %4090, %4092
  %4094 = sext i32 %4093 to i64
  %4095 = getelementptr inbounds double, ptr %4089, i64 %4094
  %4096 = load double, ptr %4095, align 8, !tbaa !11
  %4097 = call double @llvm.fmuladd.f64(double 0x3CA9FFFFFFFFFFFE, double %4096, double %4088)
  %4098 = load ptr, ptr %7, align 8, !tbaa !9
  %4099 = load i32, ptr %12, align 4, !tbaa !5
  %4100 = load i32, ptr %8, align 4, !tbaa !5
  %4101 = mul nsw i32 17, %4100
  %4102 = add nsw i32 %4099, %4101
  %4103 = sext i32 %4102 to i64
  %4104 = getelementptr inbounds double, ptr %4098, i64 %4103
  %4105 = load double, ptr %4104, align 8, !tbaa !11
  %4106 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %4105, double %4097)
  %4107 = load ptr, ptr %7, align 8, !tbaa !9
  %4108 = load i32, ptr %12, align 4, !tbaa !5
  %4109 = load i32, ptr %8, align 4, !tbaa !5
  %4110 = mul nsw i32 19, %4109
  %4111 = add nsw i32 %4108, %4110
  %4112 = sext i32 %4111 to i64
  %4113 = getelementptr inbounds double, ptr %4107, i64 %4112
  %4114 = load double, ptr %4113, align 8, !tbaa !11
  %4115 = call double @llvm.fmuladd.f64(double 0x3CA0000000000002, double %4114, double %4106)
  %4116 = load ptr, ptr %7, align 8, !tbaa !9
  %4117 = load i32, ptr %12, align 4, !tbaa !5
  %4118 = load i32, ptr %8, align 4, !tbaa !5
  %4119 = mul nsw i32 21, %4118
  %4120 = add nsw i32 %4117, %4119
  %4121 = sext i32 %4120 to i64
  %4122 = getelementptr inbounds double, ptr %4116, i64 %4121
  %4123 = load double, ptr %4122, align 8, !tbaa !11
  %4124 = call double @llvm.fmuladd.f64(double 0xBFEA0946EB3057DA, double %4123, double %4115)
  %4125 = load ptr, ptr %7, align 8, !tbaa !9
  %4126 = load i32, ptr %12, align 4, !tbaa !5
  %4127 = load i32, ptr %8, align 4, !tbaa !5
  %4128 = mul nsw i32 22, %4127
  %4129 = add nsw i32 %4126, %4128
  %4130 = sext i32 %4129 to i64
  %4131 = getelementptr inbounds double, ptr %4125, i64 %4130
  %4132 = load double, ptr %4131, align 8, !tbaa !11
  %4133 = call double @llvm.fmuladd.f64(double 0x3C8C000000000000, double %4132, double %4124)
  %4134 = load ptr, ptr %7, align 8, !tbaa !9
  %4135 = load i32, ptr %12, align 4, !tbaa !5
  %4136 = load i32, ptr %8, align 4, !tbaa !5
  %4137 = mul nsw i32 23, %4136
  %4138 = add nsw i32 %4135, %4137
  %4139 = sext i32 %4138 to i64
  %4140 = getelementptr inbounds double, ptr %4134, i64 %4139
  %4141 = load double, ptr %4140, align 8, !tbaa !11
  %4142 = call double @llvm.fmuladd.f64(double 0xBC78000000000002, double %4141, double %4133)
  %4143 = load ptr, ptr %7, align 8, !tbaa !9
  %4144 = load i32, ptr %12, align 4, !tbaa !5
  %4145 = load i32, ptr %8, align 4, !tbaa !5
  %4146 = mul nsw i32 24, %4145
  %4147 = add nsw i32 %4144, %4146
  %4148 = sext i32 %4147 to i64
  %4149 = getelementptr inbounds double, ptr %4143, i64 %4148
  %4150 = load double, ptr %4149, align 8, !tbaa !11
  %4151 = call double @llvm.fmuladd.f64(double 0x3C7FFFFFFFFFFFFF, double %4150, double %4142)
  %4152 = load ptr, ptr %7, align 8, !tbaa !9
  %4153 = load i32, ptr %12, align 4, !tbaa !5
  %4154 = load i32, ptr %8, align 4, !tbaa !5
  %4155 = mul nsw i32 25, %4154
  %4156 = add nsw i32 %4153, %4155
  %4157 = sext i32 %4156 to i64
  %4158 = getelementptr inbounds double, ptr %4152, i64 %4157
  %4159 = load double, ptr %4158, align 8, !tbaa !11
  %4160 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %4159, double %4151)
  %4161 = load ptr, ptr %7, align 8, !tbaa !9
  %4162 = load i32, ptr %12, align 4, !tbaa !5
  %4163 = load i32, ptr %8, align 4, !tbaa !5
  %4164 = mul nsw i32 26, %4163
  %4165 = add nsw i32 %4162, %4164
  %4166 = sext i32 %4165 to i64
  %4167 = getelementptr inbounds double, ptr %4161, i64 %4166
  %4168 = load double, ptr %4167, align 8, !tbaa !11
  %4169 = call double @llvm.fmuladd.f64(double 0xBCA8000000000001, double %4168, double %4160)
  %4170 = load ptr, ptr %7, align 8, !tbaa !9
  %4171 = load i32, ptr %12, align 4, !tbaa !5
  %4172 = load i32, ptr %8, align 4, !tbaa !5
  %4173 = mul nsw i32 27, %4172
  %4174 = add nsw i32 %4171, %4173
  %4175 = sext i32 %4174 to i64
  %4176 = getelementptr inbounds double, ptr %4170, i64 %4175
  %4177 = load double, ptr %4176, align 8, !tbaa !11
  %4178 = call double @llvm.fmuladd.f64(double 0x3CAE000000000002, double %4177, double %4169)
  %4179 = load ptr, ptr %7, align 8, !tbaa !9
  %4180 = load i32, ptr %12, align 4, !tbaa !5
  %4181 = load i32, ptr %8, align 4, !tbaa !5
  %4182 = mul nsw i32 28, %4181
  %4183 = add nsw i32 %4180, %4182
  %4184 = sext i32 %4183 to i64
  %4185 = getelementptr inbounds double, ptr %4179, i64 %4184
  %4186 = load double, ptr %4185, align 8, !tbaa !11
  %4187 = call double @llvm.fmuladd.f64(double 0xBCA0000000000002, double %4186, double %4178)
  %4188 = load ptr, ptr %7, align 8, !tbaa !9
  %4189 = load i32, ptr %12, align 4, !tbaa !5
  %4190 = load i32, ptr %8, align 4, !tbaa !5
  %4191 = mul nsw i32 29, %4190
  %4192 = add nsw i32 %4189, %4191
  %4193 = sext i32 %4192 to i64
  %4194 = getelementptr inbounds double, ptr %4188, i64 %4193
  %4195 = load double, ptr %4194, align 8, !tbaa !11
  %4196 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %4195, double %4187)
  %4197 = load ptr, ptr %7, align 8, !tbaa !9
  %4198 = load i32, ptr %12, align 4, !tbaa !5
  %4199 = load i32, ptr %8, align 4, !tbaa !5
  %4200 = mul nsw i32 30, %4199
  %4201 = add nsw i32 %4198, %4200
  %4202 = sext i32 %4201 to i64
  %4203 = getelementptr inbounds double, ptr %4197, i64 %4202
  %4204 = load double, ptr %4203, align 8, !tbaa !11
  %4205 = call double @llvm.fmuladd.f64(double 0x3CB2000000000000, double %4204, double %4196)
  %4206 = load ptr, ptr %7, align 8, !tbaa !9
  %4207 = load i32, ptr %12, align 4, !tbaa !5
  %4208 = load i32, ptr %8, align 4, !tbaa !5
  %4209 = mul nsw i32 31, %4208
  %4210 = add nsw i32 %4207, %4209
  %4211 = sext i32 %4210 to i64
  %4212 = getelementptr inbounds double, ptr %4206, i64 %4211
  %4213 = load double, ptr %4212, align 8, !tbaa !11
  %4214 = call double @llvm.fmuladd.f64(double 0x3FF86DB962AC2966, double %4213, double %4205)
  %4215 = load ptr, ptr %7, align 8, !tbaa !9
  %4216 = load i32, ptr %12, align 4, !tbaa !5
  %4217 = load i32, ptr %8, align 4, !tbaa !5
  %4218 = mul nsw i32 32, %4217
  %4219 = add nsw i32 %4216, %4218
  %4220 = sext i32 %4219 to i64
  %4221 = getelementptr inbounds double, ptr %4215, i64 %4220
  %4222 = load double, ptr %4221, align 8, !tbaa !11
  %4223 = call double @llvm.fmuladd.f64(double 0xBC74000000000000, double %4222, double %4214)
  %4224 = load ptr, ptr %7, align 8, !tbaa !9
  %4225 = load i32, ptr %12, align 4, !tbaa !5
  %4226 = load i32, ptr %8, align 4, !tbaa !5
  %4227 = mul nsw i32 33, %4226
  %4228 = add nsw i32 %4225, %4227
  %4229 = sext i32 %4228 to i64
  %4230 = getelementptr inbounds double, ptr %4224, i64 %4229
  %4231 = load double, ptr %4230, align 8, !tbaa !11
  %4232 = call double @llvm.fmuladd.f64(double 0x3C7C000000000000, double %4231, double %4223)
  %4233 = load ptr, ptr %7, align 8, !tbaa !9
  %4234 = load i32, ptr %12, align 4, !tbaa !5
  %4235 = load i32, ptr %8, align 4, !tbaa !5
  %4236 = mul nsw i32 35, %4235
  %4237 = add nsw i32 %4234, %4236
  %4238 = sext i32 %4237 to i64
  %4239 = getelementptr inbounds double, ptr %4233, i64 %4238
  %4240 = load double, ptr %4239, align 8, !tbaa !11
  %4241 = call double @llvm.fmuladd.f64(double 0xBCA0000000000002, double %4240, double %4232)
  %4242 = load ptr, ptr %7, align 8, !tbaa !9
  %4243 = load i32, ptr %12, align 4, !tbaa !5
  %4244 = load i32, ptr %8, align 4, !tbaa !5
  %4245 = mul nsw i32 36, %4244
  %4246 = add nsw i32 %4243, %4245
  %4247 = sext i32 %4246 to i64
  %4248 = getelementptr inbounds double, ptr %4242, i64 %4247
  %4249 = load double, ptr %4248, align 8, !tbaa !11
  %4250 = call double @llvm.fmuladd.f64(double 0xBC78000000000002, double %4249, double %4241)
  %4251 = load ptr, ptr %7, align 8, !tbaa !9
  %4252 = load i32, ptr %12, align 4, !tbaa !5
  %4253 = load i32, ptr %8, align 4, !tbaa !5
  %4254 = mul nsw i32 37, %4253
  %4255 = add nsw i32 %4252, %4254
  %4256 = sext i32 %4255 to i64
  %4257 = getelementptr inbounds double, ptr %4251, i64 %4256
  %4258 = load double, ptr %4257, align 8, !tbaa !11
  %4259 = call double @llvm.fmuladd.f64(double 0xBCAE000000000002, double %4258, double %4250)
  %4260 = load ptr, ptr %7, align 8, !tbaa !9
  %4261 = load i32, ptr %12, align 4, !tbaa !5
  %4262 = load i32, ptr %8, align 4, !tbaa !5
  %4263 = mul nsw i32 38, %4262
  %4264 = add nsw i32 %4261, %4263
  %4265 = sext i32 %4264 to i64
  %4266 = getelementptr inbounds double, ptr %4260, i64 %4265
  %4267 = load double, ptr %4266, align 8, !tbaa !11
  %4268 = call double @llvm.fmuladd.f64(double 0x3CA8000000000001, double %4267, double %4259)
  %4269 = load ptr, ptr %7, align 8, !tbaa !9
  %4270 = load i32, ptr %12, align 4, !tbaa !5
  %4271 = load i32, ptr %8, align 4, !tbaa !5
  %4272 = mul nsw i32 39, %4271
  %4273 = add nsw i32 %4270, %4272
  %4274 = sext i32 %4273 to i64
  %4275 = getelementptr inbounds double, ptr %4269, i64 %4274
  %4276 = load double, ptr %4275, align 8, !tbaa !11
  %4277 = call double @llvm.fmuladd.f64(double 0x3C7FFFFFFFFFFFFF, double %4276, double %4268)
  store double %4277, ptr %11, align 8, !tbaa !11
  %4278 = load double, ptr %11, align 8, !tbaa !11
  %4279 = load ptr, ptr %9, align 8, !tbaa !9
  %4280 = load i32, ptr %12, align 4, !tbaa !5
  %4281 = load i32, ptr %10, align 4, !tbaa !5
  %4282 = mul nsw i32 11, %4281
  %4283 = add nsw i32 %4280, %4282
  %4284 = sext i32 %4283 to i64
  %4285 = getelementptr inbounds double, ptr %4279, i64 %4284
  %4286 = load double, ptr %4285, align 8, !tbaa !11
  %4287 = fadd double %4286, %4278
  store double %4287, ptr %4285, align 8, !tbaa !11
  %4288 = load ptr, ptr %7, align 8, !tbaa !9
  %4289 = load i32, ptr %12, align 4, !tbaa !5
  %4290 = load i32, ptr %8, align 4, !tbaa !5
  %4291 = mul nsw i32 0, %4290
  %4292 = add nsw i32 %4289, %4291
  %4293 = sext i32 %4292 to i64
  %4294 = getelementptr inbounds double, ptr %4288, i64 %4293
  %4295 = load double, ptr %4294, align 8, !tbaa !11
  %4296 = load ptr, ptr %7, align 8, !tbaa !9
  %4297 = load i32, ptr %12, align 4, !tbaa !5
  %4298 = load i32, ptr %8, align 4, !tbaa !5
  %4299 = mul nsw i32 1, %4298
  %4300 = add nsw i32 %4297, %4299
  %4301 = sext i32 %4300 to i64
  %4302 = getelementptr inbounds double, ptr %4296, i64 %4301
  %4303 = load double, ptr %4302, align 8, !tbaa !11
  %4304 = fmul double 0x3C70000000000001, %4303
  %4305 = call double @llvm.fmuladd.f64(double 0xBCC9600000000000, double %4295, double %4304)
  %4306 = load ptr, ptr %7, align 8, !tbaa !9
  %4307 = load i32, ptr %12, align 4, !tbaa !5
  %4308 = load i32, ptr %8, align 4, !tbaa !5
  %4309 = mul nsw i32 2, %4308
  %4310 = add nsw i32 %4307, %4309
  %4311 = sext i32 %4310 to i64
  %4312 = getelementptr inbounds double, ptr %4306, i64 %4311
  %4313 = load double, ptr %4312, align 8, !tbaa !11
  %4314 = call double @llvm.fmuladd.f64(double 0xBFBD29AD687BB05D, double %4313, double %4305)
  %4315 = load ptr, ptr %7, align 8, !tbaa !9
  %4316 = load i32, ptr %12, align 4, !tbaa !5
  %4317 = load i32, ptr %8, align 4, !tbaa !5
  %4318 = mul nsw i32 3, %4317
  %4319 = add nsw i32 %4316, %4318
  %4320 = sext i32 %4319 to i64
  %4321 = getelementptr inbounds double, ptr %4315, i64 %4320
  %4322 = load double, ptr %4321, align 8, !tbaa !11
  %4323 = call double @llvm.fmuladd.f64(double 0xBCBB2FFFFFFFFFFF, double %4322, double %4314)
  %4324 = load ptr, ptr %7, align 8, !tbaa !9
  %4325 = load i32, ptr %12, align 4, !tbaa !5
  %4326 = load i32, ptr %8, align 4, !tbaa !5
  %4327 = mul nsw i32 4, %4326
  %4328 = add nsw i32 %4325, %4327
  %4329 = sext i32 %4328 to i64
  %4330 = getelementptr inbounds double, ptr %4324, i64 %4329
  %4331 = load double, ptr %4330, align 8, !tbaa !11
  %4332 = call double @llvm.fmuladd.f64(double 0xBCB3FFFFFFFFFFFF, double %4331, double %4323)
  %4333 = load ptr, ptr %7, align 8, !tbaa !9
  %4334 = load i32, ptr %12, align 4, !tbaa !5
  %4335 = load i32, ptr %8, align 4, !tbaa !5
  %4336 = mul nsw i32 5, %4335
  %4337 = add nsw i32 %4334, %4336
  %4338 = sext i32 %4337 to i64
  %4339 = getelementptr inbounds double, ptr %4333, i64 %4338
  %4340 = load double, ptr %4339, align 8, !tbaa !11
  %4341 = call double @llvm.fmuladd.f64(double 0x3CA5000000000000, double %4340, double %4332)
  %4342 = load ptr, ptr %7, align 8, !tbaa !9
  %4343 = load i32, ptr %12, align 4, !tbaa !5
  %4344 = load i32, ptr %8, align 4, !tbaa !5
  %4345 = mul nsw i32 6, %4344
  %4346 = add nsw i32 %4343, %4345
  %4347 = sext i32 %4346 to i64
  %4348 = getelementptr inbounds double, ptr %4342, i64 %4347
  %4349 = load double, ptr %4348, align 8, !tbaa !11
  %4350 = call double @llvm.fmuladd.f64(double 0x3C95000000000000, double %4349, double %4341)
  %4351 = load ptr, ptr %7, align 8, !tbaa !9
  %4352 = load i32, ptr %12, align 4, !tbaa !5
  %4353 = load i32, ptr %8, align 4, !tbaa !5
  %4354 = mul nsw i32 7, %4353
  %4355 = add nsw i32 %4352, %4354
  %4356 = sext i32 %4355 to i64
  %4357 = getelementptr inbounds double, ptr %4351, i64 %4356
  %4358 = load double, ptr %4357, align 8, !tbaa !11
  %4359 = call double @llvm.fmuladd.f64(double 0x3C97800000000000, double %4358, double %4350)
  %4360 = load ptr, ptr %7, align 8, !tbaa !9
  %4361 = load i32, ptr %12, align 4, !tbaa !5
  %4362 = load i32, ptr %8, align 4, !tbaa !5
  %4363 = mul nsw i32 8, %4362
  %4364 = add nsw i32 %4361, %4363
  %4365 = sext i32 %4364 to i64
  %4366 = getelementptr inbounds double, ptr %4360, i64 %4365
  %4367 = load double, ptr %4366, align 8, !tbaa !11
  %4368 = call double @llvm.fmuladd.f64(double 0x3CB3800000000000, double %4367, double %4359)
  %4369 = load ptr, ptr %7, align 8, !tbaa !9
  %4370 = load i32, ptr %12, align 4, !tbaa !5
  %4371 = load i32, ptr %8, align 4, !tbaa !5
  %4372 = mul nsw i32 9, %4371
  %4373 = add nsw i32 %4370, %4372
  %4374 = sext i32 %4373 to i64
  %4375 = getelementptr inbounds double, ptr %4369, i64 %4374
  %4376 = load double, ptr %4375, align 8, !tbaa !11
  %4377 = call double @llvm.fmuladd.f64(double 0xBC84000000000000, double %4376, double %4368)
  %4378 = load ptr, ptr %7, align 8, !tbaa !9
  %4379 = load i32, ptr %12, align 4, !tbaa !5
  %4380 = load i32, ptr %8, align 4, !tbaa !5
  %4381 = mul nsw i32 10, %4380
  %4382 = add nsw i32 %4379, %4381
  %4383 = sext i32 %4382 to i64
  %4384 = getelementptr inbounds double, ptr %4378, i64 %4383
  %4385 = load double, ptr %4384, align 8, !tbaa !11
  %4386 = call double @llvm.fmuladd.f64(double 0x3CCE000000000000, double %4385, double %4377)
  %4387 = load ptr, ptr %7, align 8, !tbaa !9
  %4388 = load i32, ptr %12, align 4, !tbaa !5
  %4389 = load i32, ptr %8, align 4, !tbaa !5
  %4390 = mul nsw i32 11, %4389
  %4391 = add nsw i32 %4388, %4390
  %4392 = sext i32 %4391 to i64
  %4393 = getelementptr inbounds double, ptr %4387, i64 %4392
  %4394 = load double, ptr %4393, align 8, !tbaa !11
  %4395 = call double @llvm.fmuladd.f64(double 0x3C88000000000000, double %4394, double %4386)
  %4396 = load ptr, ptr %7, align 8, !tbaa !9
  %4397 = load i32, ptr %12, align 4, !tbaa !5
  %4398 = load i32, ptr %8, align 4, !tbaa !5
  %4399 = mul nsw i32 12, %4398
  %4400 = add nsw i32 %4397, %4399
  %4401 = sext i32 %4400 to i64
  %4402 = getelementptr inbounds double, ptr %4396, i64 %4401
  %4403 = load double, ptr %4402, align 8, !tbaa !11
  %4404 = call double @llvm.fmuladd.f64(double 0x3FD9A613A5CEF639, double %4403, double %4395)
  %4405 = load ptr, ptr %7, align 8, !tbaa !9
  %4406 = load i32, ptr %12, align 4, !tbaa !5
  %4407 = load i32, ptr %8, align 4, !tbaa !5
  %4408 = mul nsw i32 13, %4407
  %4409 = add nsw i32 %4406, %4408
  %4410 = sext i32 %4409 to i64
  %4411 = getelementptr inbounds double, ptr %4405, i64 %4410
  %4412 = load double, ptr %4411, align 8, !tbaa !11
  %4413 = call double @llvm.fmuladd.f64(double 0xBC95800000000000, double %4412, double %4404)
  %4414 = load ptr, ptr %7, align 8, !tbaa !9
  %4415 = load i32, ptr %12, align 4, !tbaa !5
  %4416 = load i32, ptr %8, align 4, !tbaa !5
  %4417 = mul nsw i32 14, %4416
  %4418 = add nsw i32 %4415, %4417
  %4419 = sext i32 %4418 to i64
  %4420 = getelementptr inbounds double, ptr %4414, i64 %4419
  %4421 = load double, ptr %4420, align 8, !tbaa !11
  %4422 = call double @llvm.fmuladd.f64(double 0xBCC1000000000000, double %4421, double %4413)
  %4423 = load ptr, ptr %7, align 8, !tbaa !9
  %4424 = load i32, ptr %12, align 4, !tbaa !5
  %4425 = load i32, ptr %8, align 4, !tbaa !5
  %4426 = mul nsw i32 15, %4425
  %4427 = add nsw i32 %4424, %4426
  %4428 = sext i32 %4427 to i64
  %4429 = getelementptr inbounds double, ptr %4423, i64 %4428
  %4430 = load double, ptr %4429, align 8, !tbaa !11
  %4431 = call double @llvm.fmuladd.f64(double 0xBCB6800000000000, double %4430, double %4422)
  %4432 = load ptr, ptr %7, align 8, !tbaa !9
  %4433 = load i32, ptr %12, align 4, !tbaa !5
  %4434 = load i32, ptr %8, align 4, !tbaa !5
  %4435 = mul nsw i32 16, %4434
  %4436 = add nsw i32 %4433, %4435
  %4437 = sext i32 %4436 to i64
  %4438 = getelementptr inbounds double, ptr %4432, i64 %4437
  %4439 = load double, ptr %4438, align 8, !tbaa !11
  %4440 = call double @llvm.fmuladd.f64(double 0x3C9DFFFFFFFFFFFE, double %4439, double %4431)
  %4441 = load ptr, ptr %7, align 8, !tbaa !9
  %4442 = load i32, ptr %12, align 4, !tbaa !5
  %4443 = load i32, ptr %8, align 4, !tbaa !5
  %4444 = mul nsw i32 17, %4443
  %4445 = add nsw i32 %4442, %4444
  %4446 = sext i32 %4445 to i64
  %4447 = getelementptr inbounds double, ptr %4441, i64 %4446
  %4448 = load double, ptr %4447, align 8, !tbaa !11
  %4449 = call double @llvm.fmuladd.f64(double 0x3CB9C00000000001, double %4448, double %4440)
  %4450 = load ptr, ptr %7, align 8, !tbaa !9
  %4451 = load i32, ptr %12, align 4, !tbaa !5
  %4452 = load i32, ptr %8, align 4, !tbaa !5
  %4453 = mul nsw i32 18, %4452
  %4454 = add nsw i32 %4451, %4453
  %4455 = sext i32 %4454 to i64
  %4456 = getelementptr inbounds double, ptr %4450, i64 %4455
  %4457 = load double, ptr %4456, align 8, !tbaa !11
  %4458 = call double @llvm.fmuladd.f64(double 0x3C70000000000001, double %4457, double %4449)
  %4459 = load ptr, ptr %7, align 8, !tbaa !9
  %4460 = load i32, ptr %12, align 4, !tbaa !5
  %4461 = load i32, ptr %8, align 4, !tbaa !5
  %4462 = mul nsw i32 19, %4461
  %4463 = add nsw i32 %4460, %4462
  %4464 = sext i32 %4463 to i64
  %4465 = getelementptr inbounds double, ptr %4459, i64 %4464
  %4466 = load double, ptr %4465, align 8, !tbaa !11
  %4467 = call double @llvm.fmuladd.f64(double 0x3C7FFFFFFFFFFFFF, double %4466, double %4458)
  %4468 = load ptr, ptr %7, align 8, !tbaa !9
  %4469 = load i32, ptr %12, align 4, !tbaa !5
  %4470 = load i32, ptr %8, align 4, !tbaa !5
  %4471 = mul nsw i32 20, %4470
  %4472 = add nsw i32 %4469, %4471
  %4473 = sext i32 %4472 to i64
  %4474 = getelementptr inbounds double, ptr %4468, i64 %4473
  %4475 = load double, ptr %4474, align 8, !tbaa !11
  %4476 = call double @llvm.fmuladd.f64(double 0xBCC8000000000000, double %4475, double %4467)
  %4477 = load ptr, ptr %7, align 8, !tbaa !9
  %4478 = load i32, ptr %12, align 4, !tbaa !5
  %4479 = load i32, ptr %8, align 4, !tbaa !5
  %4480 = mul nsw i32 21, %4479
  %4481 = add nsw i32 %4478, %4480
  %4482 = sext i32 %4481 to i64
  %4483 = getelementptr inbounds double, ptr %4477, i64 %4482
  %4484 = load double, ptr %4483, align 8, !tbaa !11
  %4485 = call double @llvm.fmuladd.f64(double 0xBCB1000000000001, double %4484, double %4476)
  %4486 = load ptr, ptr %7, align 8, !tbaa !9
  %4487 = load i32, ptr %12, align 4, !tbaa !5
  %4488 = load i32, ptr %8, align 4, !tbaa !5
  %4489 = mul nsw i32 22, %4488
  %4490 = add nsw i32 %4487, %4489
  %4491 = sext i32 %4490 to i64
  %4492 = getelementptr inbounds double, ptr %4486, i64 %4491
  %4493 = load double, ptr %4492, align 8, !tbaa !11
  %4494 = call double @llvm.fmuladd.f64(double 0xBFEA0946EB3057DC, double %4493, double %4485)
  %4495 = load ptr, ptr %7, align 8, !tbaa !9
  %4496 = load i32, ptr %12, align 4, !tbaa !5
  %4497 = load i32, ptr %8, align 4, !tbaa !5
  %4498 = mul nsw i32 23, %4497
  %4499 = add nsw i32 %4496, %4498
  %4500 = sext i32 %4499 to i64
  %4501 = getelementptr inbounds double, ptr %4495, i64 %4500
  %4502 = load double, ptr %4501, align 8, !tbaa !11
  %4503 = call double @llvm.fmuladd.f64(double 0x3CBA400000000000, double %4502, double %4494)
  %4504 = load ptr, ptr %7, align 8, !tbaa !9
  %4505 = load i32, ptr %12, align 4, !tbaa !5
  %4506 = load i32, ptr %8, align 4, !tbaa !5
  %4507 = mul nsw i32 24, %4506
  %4508 = add nsw i32 %4505, %4507
  %4509 = sext i32 %4508 to i64
  %4510 = getelementptr inbounds double, ptr %4504, i64 %4509
  %4511 = load double, ptr %4510, align 8, !tbaa !11
  %4512 = call double @llvm.fmuladd.f64(double 0x3CB2000000000000, double %4511, double %4503)
  %4513 = load ptr, ptr %7, align 8, !tbaa !9
  %4514 = load i32, ptr %12, align 4, !tbaa !5
  %4515 = load i32, ptr %8, align 4, !tbaa !5
  %4516 = mul nsw i32 25, %4515
  %4517 = add nsw i32 %4514, %4516
  %4518 = sext i32 %4517 to i64
  %4519 = getelementptr inbounds double, ptr %4513, i64 %4518
  %4520 = load double, ptr %4519, align 8, !tbaa !11
  %4521 = call double @llvm.fmuladd.f64(double 0x3C8C000000000000, double %4520, double %4512)
  %4522 = load ptr, ptr %7, align 8, !tbaa !9
  %4523 = load i32, ptr %12, align 4, !tbaa !5
  %4524 = load i32, ptr %8, align 4, !tbaa !5
  %4525 = mul nsw i32 26, %4524
  %4526 = add nsw i32 %4523, %4525
  %4527 = sext i32 %4526 to i64
  %4528 = getelementptr inbounds double, ptr %4522, i64 %4527
  %4529 = load double, ptr %4528, align 8, !tbaa !11
  %4530 = call double @llvm.fmuladd.f64(double 0xBCA4800000000001, double %4529, double %4521)
  %4531 = load ptr, ptr %7, align 8, !tbaa !9
  %4532 = load i32, ptr %12, align 4, !tbaa !5
  %4533 = load i32, ptr %8, align 4, !tbaa !5
  %4534 = mul nsw i32 27, %4533
  %4535 = add nsw i32 %4532, %4534
  %4536 = sext i32 %4535 to i64
  %4537 = getelementptr inbounds double, ptr %4531, i64 %4536
  %4538 = load double, ptr %4537, align 8, !tbaa !11
  %4539 = call double @llvm.fmuladd.f64(double 0xBCA7000000000002, double %4538, double %4530)
  %4540 = load ptr, ptr %7, align 8, !tbaa !9
  %4541 = load i32, ptr %12, align 4, !tbaa !5
  %4542 = load i32, ptr %8, align 4, !tbaa !5
  %4543 = mul nsw i32 28, %4542
  %4544 = add nsw i32 %4541, %4543
  %4545 = sext i32 %4544 to i64
  %4546 = getelementptr inbounds double, ptr %4540, i64 %4545
  %4547 = load double, ptr %4546, align 8, !tbaa !11
  %4548 = call double @llvm.fmuladd.f64(double 0x3C94000000000000, double %4547, double %4539)
  %4549 = load ptr, ptr %7, align 8, !tbaa !9
  %4550 = load i32, ptr %12, align 4, !tbaa !5
  %4551 = load i32, ptr %8, align 4, !tbaa !5
  %4552 = mul nsw i32 29, %4551
  %4553 = add nsw i32 %4550, %4552
  %4554 = sext i32 %4553 to i64
  %4555 = getelementptr inbounds double, ptr %4549, i64 %4554
  %4556 = load double, ptr %4555, align 8, !tbaa !11
  %4557 = call double @llvm.fmuladd.f64(double 0xBC98000000000000, double %4556, double %4548)
  %4558 = load ptr, ptr %7, align 8, !tbaa !9
  %4559 = load i32, ptr %12, align 4, !tbaa !5
  %4560 = load i32, ptr %8, align 4, !tbaa !5
  %4561 = mul nsw i32 30, %4560
  %4562 = add nsw i32 %4559, %4561
  %4563 = sext i32 %4562 to i64
  %4564 = getelementptr inbounds double, ptr %4558, i64 %4563
  %4565 = load double, ptr %4564, align 8, !tbaa !11
  %4566 = call double @llvm.fmuladd.f64(double 0xBCBBC00000000001, double %4565, double %4557)
  %4567 = load ptr, ptr %7, align 8, !tbaa !9
  %4568 = load i32, ptr %12, align 4, !tbaa !5
  %4569 = load i32, ptr %8, align 4, !tbaa !5
  %4570 = mul nsw i32 31, %4569
  %4571 = add nsw i32 %4568, %4570
  %4572 = sext i32 %4571 to i64
  %4573 = getelementptr inbounds double, ptr %4567, i64 %4572
  %4574 = load double, ptr %4573, align 8, !tbaa !11
  %4575 = call double @llvm.fmuladd.f64(double 0xBC94000000000000, double %4574, double %4566)
  %4576 = load ptr, ptr %7, align 8, !tbaa !9
  %4577 = load i32, ptr %12, align 4, !tbaa !5
  %4578 = load i32, ptr %8, align 4, !tbaa !5
  %4579 = mul nsw i32 32, %4578
  %4580 = add nsw i32 %4577, %4579
  %4581 = sext i32 %4580 to i64
  %4582 = getelementptr inbounds double, ptr %4576, i64 %4581
  %4583 = load double, ptr %4582, align 8, !tbaa !11
  %4584 = call double @llvm.fmuladd.f64(double 0x3FF86DB962AC2966, double %4583, double %4575)
  %4585 = load ptr, ptr %7, align 8, !tbaa !9
  %4586 = load i32, ptr %12, align 4, !tbaa !5
  %4587 = load i32, ptr %8, align 4, !tbaa !5
  %4588 = mul nsw i32 33, %4587
  %4589 = add nsw i32 %4586, %4588
  %4590 = sext i32 %4589 to i64
  %4591 = getelementptr inbounds double, ptr %4585, i64 %4590
  %4592 = load double, ptr %4591, align 8, !tbaa !11
  %4593 = call double @llvm.fmuladd.f64(double 0x3C95000000000000, double %4592, double %4584)
  %4594 = load ptr, ptr %7, align 8, !tbaa !9
  %4595 = load i32, ptr %12, align 4, !tbaa !5
  %4596 = load i32, ptr %8, align 4, !tbaa !5
  %4597 = mul nsw i32 34, %4596
  %4598 = add nsw i32 %4595, %4597
  %4599 = sext i32 %4598 to i64
  %4600 = getelementptr inbounds double, ptr %4594, i64 %4599
  %4601 = load double, ptr %4600, align 8, !tbaa !11
  %4602 = call double @llvm.fmuladd.f64(double 0x3CAD7FFFFFFFFFFE, double %4601, double %4593)
  %4603 = load ptr, ptr %7, align 8, !tbaa !9
  %4604 = load i32, ptr %12, align 4, !tbaa !5
  %4605 = load i32, ptr %8, align 4, !tbaa !5
  %4606 = mul nsw i32 35, %4605
  %4607 = add nsw i32 %4604, %4606
  %4608 = sext i32 %4607 to i64
  %4609 = getelementptr inbounds double, ptr %4603, i64 %4608
  %4610 = load double, ptr %4609, align 8, !tbaa !11
  %4611 = call double @llvm.fmuladd.f64(double 0x3CA4000000000001, double %4610, double %4602)
  %4612 = load ptr, ptr %7, align 8, !tbaa !9
  %4613 = load i32, ptr %12, align 4, !tbaa !5
  %4614 = load i32, ptr %8, align 4, !tbaa !5
  %4615 = mul nsw i32 36, %4614
  %4616 = add nsw i32 %4613, %4615
  %4617 = sext i32 %4616 to i64
  %4618 = getelementptr inbounds double, ptr %4612, i64 %4617
  %4619 = load double, ptr %4618, align 8, !tbaa !11
  %4620 = call double @llvm.fmuladd.f64(double 0xBCAB800000000001, double %4619, double %4611)
  %4621 = load ptr, ptr %7, align 8, !tbaa !9
  %4622 = load i32, ptr %12, align 4, !tbaa !5
  %4623 = load i32, ptr %8, align 4, !tbaa !5
  %4624 = mul nsw i32 37, %4623
  %4625 = add nsw i32 %4622, %4624
  %4626 = sext i32 %4625 to i64
  %4627 = getelementptr inbounds double, ptr %4621, i64 %4626
  %4628 = load double, ptr %4627, align 8, !tbaa !11
  %4629 = call double @llvm.fmuladd.f64(double 0xBC78000000000002, double %4628, double %4620)
  %4630 = load ptr, ptr %7, align 8, !tbaa !9
  %4631 = load i32, ptr %12, align 4, !tbaa !5
  %4632 = load i32, ptr %8, align 4, !tbaa !5
  %4633 = mul nsw i32 38, %4632
  %4634 = add nsw i32 %4631, %4633
  %4635 = sext i32 %4634 to i64
  %4636 = getelementptr inbounds double, ptr %4630, i64 %4635
  %4637 = load double, ptr %4636, align 8, !tbaa !11
  %4638 = call double @llvm.fmuladd.f64(double 0xBCA9FFFFFFFFFFFE, double %4637, double %4629)
  %4639 = load ptr, ptr %7, align 8, !tbaa !9
  %4640 = load i32, ptr %12, align 4, !tbaa !5
  %4641 = load i32, ptr %8, align 4, !tbaa !5
  %4642 = mul nsw i32 39, %4641
  %4643 = add nsw i32 %4640, %4642
  %4644 = sext i32 %4643 to i64
  %4645 = getelementptr inbounds double, ptr %4639, i64 %4644
  %4646 = load double, ptr %4645, align 8, !tbaa !11
  %4647 = call double @llvm.fmuladd.f64(double 0xBC84000000000000, double %4646, double %4638)
  store double %4647, ptr %11, align 8, !tbaa !11
  %4648 = load double, ptr %11, align 8, !tbaa !11
  %4649 = load ptr, ptr %9, align 8, !tbaa !9
  %4650 = load i32, ptr %12, align 4, !tbaa !5
  %4651 = load i32, ptr %10, align 4, !tbaa !5
  %4652 = mul nsw i32 12, %4651
  %4653 = add nsw i32 %4650, %4652
  %4654 = sext i32 %4653 to i64
  %4655 = getelementptr inbounds double, ptr %4649, i64 %4654
  %4656 = load double, ptr %4655, align 8, !tbaa !11
  %4657 = fadd double %4656, %4648
  store double %4657, ptr %4655, align 8, !tbaa !11
  %4658 = load ptr, ptr %7, align 8, !tbaa !9
  %4659 = load i32, ptr %12, align 4, !tbaa !5
  %4660 = load i32, ptr %8, align 4, !tbaa !5
  %4661 = mul nsw i32 0, %4660
  %4662 = add nsw i32 %4659, %4661
  %4663 = sext i32 %4662 to i64
  %4664 = getelementptr inbounds double, ptr %4658, i64 %4663
  %4665 = load double, ptr %4664, align 8, !tbaa !11
  %4666 = load ptr, ptr %7, align 8, !tbaa !9
  %4667 = load i32, ptr %12, align 4, !tbaa !5
  %4668 = load i32, ptr %8, align 4, !tbaa !5
  %4669 = mul nsw i32 1, %4668
  %4670 = add nsw i32 %4667, %4669
  %4671 = sext i32 %4670 to i64
  %4672 = getelementptr inbounds double, ptr %4666, i64 %4671
  %4673 = load double, ptr %4672, align 8, !tbaa !11
  %4674 = fmul double 0xBC78000000000002, %4673
  %4675 = call double @llvm.fmuladd.f64(double 0x3C8E000000000000, double %4665, double %4674)
  %4676 = load ptr, ptr %7, align 8, !tbaa !9
  %4677 = load i32, ptr %12, align 4, !tbaa !5
  %4678 = load i32, ptr %8, align 4, !tbaa !5
  %4679 = mul nsw i32 2, %4678
  %4680 = add nsw i32 %4677, %4679
  %4681 = sext i32 %4680 to i64
  %4682 = getelementptr inbounds double, ptr %4676, i64 %4681
  %4683 = load double, ptr %4682, align 8, !tbaa !11
  %4684 = call double @llvm.fmuladd.f64(double 0xBC62000000000000, double %4683, double %4675)
  %4685 = load ptr, ptr %7, align 8, !tbaa !9
  %4686 = load i32, ptr %12, align 4, !tbaa !5
  %4687 = load i32, ptr %8, align 4, !tbaa !5
  %4688 = mul nsw i32 3, %4687
  %4689 = add nsw i32 %4686, %4688
  %4690 = sext i32 %4689 to i64
  %4691 = getelementptr inbounds double, ptr %4685, i64 %4690
  %4692 = load double, ptr %4691, align 8, !tbaa !11
  %4693 = call double @llvm.fmuladd.f64(double 0xBFBD29AD687BB04F, double %4692, double %4684)
  %4694 = load ptr, ptr %7, align 8, !tbaa !9
  %4695 = load i32, ptr %12, align 4, !tbaa !5
  %4696 = load i32, ptr %8, align 4, !tbaa !5
  %4697 = mul nsw i32 4, %4696
  %4698 = add nsw i32 %4695, %4697
  %4699 = sext i32 %4698 to i64
  %4700 = getelementptr inbounds double, ptr %4694, i64 %4699
  %4701 = load double, ptr %4700, align 8, !tbaa !11
  %4702 = call double @llvm.fmuladd.f64(double 0x3C96000000000000, double %4701, double %4693)
  %4703 = load ptr, ptr %7, align 8, !tbaa !9
  %4704 = load i32, ptr %12, align 4, !tbaa !5
  %4705 = load i32, ptr %8, align 4, !tbaa !5
  %4706 = mul nsw i32 5, %4705
  %4707 = add nsw i32 %4704, %4706
  %4708 = sext i32 %4707 to i64
  %4709 = getelementptr inbounds double, ptr %4703, i64 %4708
  %4710 = load double, ptr %4709, align 8, !tbaa !11
  %4711 = call double @llvm.fmuladd.f64(double 0x3CA8000000000001, double %4710, double %4702)
  %4712 = load ptr, ptr %7, align 8, !tbaa !9
  %4713 = load i32, ptr %12, align 4, !tbaa !5
  %4714 = load i32, ptr %8, align 4, !tbaa !5
  %4715 = mul nsw i32 6, %4714
  %4716 = add nsw i32 %4713, %4715
  %4717 = sext i32 %4716 to i64
  %4718 = getelementptr inbounds double, ptr %4712, i64 %4717
  %4719 = load double, ptr %4718, align 8, !tbaa !11
  %4720 = call double @llvm.fmuladd.f64(double 0xBCA1000000000001, double %4719, double %4711)
  %4721 = load ptr, ptr %7, align 8, !tbaa !9
  %4722 = load i32, ptr %12, align 4, !tbaa !5
  %4723 = load i32, ptr %8, align 4, !tbaa !5
  %4724 = mul nsw i32 7, %4723
  %4725 = add nsw i32 %4722, %4724
  %4726 = sext i32 %4725 to i64
  %4727 = getelementptr inbounds double, ptr %4721, i64 %4726
  %4728 = load double, ptr %4727, align 8, !tbaa !11
  %4729 = call double @llvm.fmuladd.f64(double 0xBC64000000000000, double %4728, double %4720)
  %4730 = load ptr, ptr %7, align 8, !tbaa !9
  %4731 = load i32, ptr %12, align 4, !tbaa !5
  %4732 = load i32, ptr %8, align 4, !tbaa !5
  %4733 = mul nsw i32 8, %4732
  %4734 = add nsw i32 %4731, %4733
  %4735 = sext i32 %4734 to i64
  %4736 = getelementptr inbounds double, ptr %4730, i64 %4735
  %4737 = load double, ptr %4736, align 8, !tbaa !11
  %4738 = call double @llvm.fmuladd.f64(double 0xBC98000000000000, double %4737, double %4729)
  %4739 = load ptr, ptr %7, align 8, !tbaa !9
  %4740 = load i32, ptr %12, align 4, !tbaa !5
  %4741 = load i32, ptr %8, align 4, !tbaa !5
  %4742 = mul nsw i32 9, %4741
  %4743 = add nsw i32 %4740, %4742
  %4744 = sext i32 %4743 to i64
  %4745 = getelementptr inbounds double, ptr %4739, i64 %4744
  %4746 = load double, ptr %4745, align 8, !tbaa !11
  %4747 = call double @llvm.fmuladd.f64(double 0xBCA7000000000002, double %4746, double %4738)
  %4748 = load ptr, ptr %7, align 8, !tbaa !9
  %4749 = load i32, ptr %12, align 4, !tbaa !5
  %4750 = load i32, ptr %8, align 4, !tbaa !5
  %4751 = mul nsw i32 10, %4750
  %4752 = add nsw i32 %4749, %4751
  %4753 = sext i32 %4752 to i64
  %4754 = getelementptr inbounds double, ptr %4748, i64 %4753
  %4755 = load double, ptr %4754, align 8, !tbaa !11
  %4756 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %4755, double %4747)
  %4757 = load ptr, ptr %7, align 8, !tbaa !9
  %4758 = load i32, ptr %12, align 4, !tbaa !5
  %4759 = load i32, ptr %8, align 4, !tbaa !5
  %4760 = mul nsw i32 11, %4759
  %4761 = add nsw i32 %4758, %4760
  %4762 = sext i32 %4761 to i64
  %4763 = getelementptr inbounds double, ptr %4757, i64 %4762
  %4764 = load double, ptr %4763, align 8, !tbaa !11
  %4765 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %4764, double %4756)
  %4766 = load ptr, ptr %7, align 8, !tbaa !9
  %4767 = load i32, ptr %12, align 4, !tbaa !5
  %4768 = load i32, ptr %8, align 4, !tbaa !5
  %4769 = mul nsw i32 12, %4768
  %4770 = add nsw i32 %4767, %4769
  %4771 = sext i32 %4770 to i64
  %4772 = getelementptr inbounds double, ptr %4766, i64 %4771
  %4773 = load double, ptr %4772, align 8, !tbaa !11
  %4774 = call double @llvm.fmuladd.f64(double 0xBC7E000000000001, double %4773, double %4765)
  %4775 = load ptr, ptr %7, align 8, !tbaa !9
  %4776 = load i32, ptr %12, align 4, !tbaa !5
  %4777 = load i32, ptr %8, align 4, !tbaa !5
  %4778 = mul nsw i32 13, %4777
  %4779 = add nsw i32 %4776, %4778
  %4780 = sext i32 %4779 to i64
  %4781 = getelementptr inbounds double, ptr %4775, i64 %4780
  %4782 = load double, ptr %4781, align 8, !tbaa !11
  %4783 = call double @llvm.fmuladd.f64(double 0x3FD9A613A5CEF637, double %4782, double %4774)
  %4784 = load ptr, ptr %7, align 8, !tbaa !9
  %4785 = load i32, ptr %12, align 4, !tbaa !5
  %4786 = load i32, ptr %8, align 4, !tbaa !5
  %4787 = mul nsw i32 15, %4786
  %4788 = add nsw i32 %4785, %4787
  %4789 = sext i32 %4788 to i64
  %4790 = getelementptr inbounds double, ptr %4784, i64 %4789
  %4791 = load double, ptr %4790, align 8, !tbaa !11
  %4792 = call double @llvm.fmuladd.f64(double 0xBC96000000000000, double %4791, double %4783)
  %4793 = load ptr, ptr %7, align 8, !tbaa !9
  %4794 = load i32, ptr %12, align 4, !tbaa !5
  %4795 = load i32, ptr %8, align 4, !tbaa !5
  %4796 = mul nsw i32 16, %4795
  %4797 = add nsw i32 %4794, %4796
  %4798 = sext i32 %4797 to i64
  %4799 = getelementptr inbounds double, ptr %4793, i64 %4798
  %4800 = load double, ptr %4799, align 8, !tbaa !11
  %4801 = call double @llvm.fmuladd.f64(double 0x3CA1800000000000, double %4800, double %4792)
  %4802 = load ptr, ptr %7, align 8, !tbaa !9
  %4803 = load i32, ptr %12, align 4, !tbaa !5
  %4804 = load i32, ptr %8, align 4, !tbaa !5
  %4805 = mul nsw i32 17, %4804
  %4806 = add nsw i32 %4803, %4805
  %4807 = sext i32 %4806 to i64
  %4808 = getelementptr inbounds double, ptr %4802, i64 %4807
  %4809 = load double, ptr %4808, align 8, !tbaa !11
  %4810 = call double @llvm.fmuladd.f64(double 0xBCB5BFFFFFFFFFFF, double %4809, double %4801)
  %4811 = load ptr, ptr %7, align 8, !tbaa !9
  %4812 = load i32, ptr %12, align 4, !tbaa !5
  %4813 = load i32, ptr %8, align 4, !tbaa !5
  %4814 = mul nsw i32 18, %4813
  %4815 = add nsw i32 %4812, %4814
  %4816 = sext i32 %4815 to i64
  %4817 = getelementptr inbounds double, ptr %4811, i64 %4816
  %4818 = load double, ptr %4817, align 8, !tbaa !11
  %4819 = call double @llvm.fmuladd.f64(double 0xBC88000000000000, double %4818, double %4810)
  %4820 = load ptr, ptr %7, align 8, !tbaa !9
  %4821 = load i32, ptr %12, align 4, !tbaa !5
  %4822 = load i32, ptr %8, align 4, !tbaa !5
  %4823 = mul nsw i32 19, %4822
  %4824 = add nsw i32 %4821, %4823
  %4825 = sext i32 %4824 to i64
  %4826 = getelementptr inbounds double, ptr %4820, i64 %4825
  %4827 = load double, ptr %4826, align 8, !tbaa !11
  %4828 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %4827, double %4819)
  %4829 = load ptr, ptr %7, align 8, !tbaa !9
  %4830 = load i32, ptr %12, align 4, !tbaa !5
  %4831 = load i32, ptr %8, align 4, !tbaa !5
  %4832 = mul nsw i32 20, %4831
  %4833 = add nsw i32 %4830, %4832
  %4834 = sext i32 %4833 to i64
  %4835 = getelementptr inbounds double, ptr %4829, i64 %4834
  %4836 = load double, ptr %4835, align 8, !tbaa !11
  %4837 = call double @llvm.fmuladd.f64(double 0x3CA4000000000001, double %4836, double %4828)
  %4838 = load ptr, ptr %7, align 8, !tbaa !9
  %4839 = load i32, ptr %12, align 4, !tbaa !5
  %4840 = load i32, ptr %8, align 4, !tbaa !5
  %4841 = mul nsw i32 21, %4840
  %4842 = add nsw i32 %4839, %4841
  %4843 = sext i32 %4842 to i64
  %4844 = getelementptr inbounds double, ptr %4838, i64 %4843
  %4845 = load double, ptr %4844, align 8, !tbaa !11
  %4846 = call double @llvm.fmuladd.f64(double 0x3C88000000000000, double %4845, double %4837)
  %4847 = load ptr, ptr %7, align 8, !tbaa !9
  %4848 = load i32, ptr %12, align 4, !tbaa !5
  %4849 = load i32, ptr %8, align 4, !tbaa !5
  %4850 = mul nsw i32 22, %4849
  %4851 = add nsw i32 %4848, %4850
  %4852 = sext i32 %4851 to i64
  %4853 = getelementptr inbounds double, ptr %4847, i64 %4852
  %4854 = load double, ptr %4853, align 8, !tbaa !11
  %4855 = call double @llvm.fmuladd.f64(double 0xBC86000000000001, double %4854, double %4846)
  %4856 = load ptr, ptr %7, align 8, !tbaa !9
  %4857 = load i32, ptr %12, align 4, !tbaa !5
  %4858 = load i32, ptr %8, align 4, !tbaa !5
  %4859 = mul nsw i32 23, %4858
  %4860 = add nsw i32 %4857, %4859
  %4861 = sext i32 %4860 to i64
  %4862 = getelementptr inbounds double, ptr %4856, i64 %4861
  %4863 = load double, ptr %4862, align 8, !tbaa !11
  %4864 = call double @llvm.fmuladd.f64(double 0xBFEA0946EB3057DA, double %4863, double %4855)
  %4865 = load ptr, ptr %7, align 8, !tbaa !9
  %4866 = load i32, ptr %12, align 4, !tbaa !5
  %4867 = load i32, ptr %8, align 4, !tbaa !5
  %4868 = mul nsw i32 24, %4867
  %4869 = add nsw i32 %4866, %4868
  %4870 = sext i32 %4869 to i64
  %4871 = getelementptr inbounds double, ptr %4865, i64 %4870
  %4872 = load double, ptr %4871, align 8, !tbaa !11
  %4873 = call double @llvm.fmuladd.f64(double 0x3C7FFFFFFFFFFFFF, double %4872, double %4864)
  %4874 = load ptr, ptr %7, align 8, !tbaa !9
  %4875 = load i32, ptr %12, align 4, !tbaa !5
  %4876 = load i32, ptr %8, align 4, !tbaa !5
  %4877 = mul nsw i32 25, %4876
  %4878 = add nsw i32 %4875, %4877
  %4879 = sext i32 %4878 to i64
  %4880 = getelementptr inbounds double, ptr %4874, i64 %4879
  %4881 = load double, ptr %4880, align 8, !tbaa !11
  %4882 = call double @llvm.fmuladd.f64(double 0xBC60000000000000, double %4881, double %4873)
  %4883 = load ptr, ptr %7, align 8, !tbaa !9
  %4884 = load i32, ptr %12, align 4, !tbaa !5
  %4885 = load i32, ptr %8, align 4, !tbaa !5
  %4886 = mul nsw i32 26, %4885
  %4887 = add nsw i32 %4884, %4886
  %4888 = sext i32 %4887 to i64
  %4889 = getelementptr inbounds double, ptr %4883, i64 %4888
  %4890 = load double, ptr %4889, align 8, !tbaa !11
  %4891 = call double @llvm.fmuladd.f64(double 0x3C9CFFFFFFFFFFFF, double %4890, double %4882)
  %4892 = load ptr, ptr %7, align 8, !tbaa !9
  %4893 = load i32, ptr %12, align 4, !tbaa !5
  %4894 = load i32, ptr %8, align 4, !tbaa !5
  %4895 = mul nsw i32 27, %4894
  %4896 = add nsw i32 %4893, %4895
  %4897 = sext i32 %4896 to i64
  %4898 = getelementptr inbounds double, ptr %4892, i64 %4897
  %4899 = load double, ptr %4898, align 8, !tbaa !11
  %4900 = call double @llvm.fmuladd.f64(double 0xBC74000000000000, double %4899, double %4891)
  %4901 = load ptr, ptr %7, align 8, !tbaa !9
  %4902 = load i32, ptr %12, align 4, !tbaa !5
  %4903 = load i32, ptr %8, align 4, !tbaa !5
  %4904 = mul nsw i32 28, %4903
  %4905 = add nsw i32 %4902, %4904
  %4906 = sext i32 %4905 to i64
  %4907 = getelementptr inbounds double, ptr %4901, i64 %4906
  %4908 = load double, ptr %4907, align 8, !tbaa !11
  %4909 = call double @llvm.fmuladd.f64(double 0x3CA4000000000001, double %4908, double %4900)
  %4910 = load ptr, ptr %7, align 8, !tbaa !9
  %4911 = load i32, ptr %12, align 4, !tbaa !5
  %4912 = load i32, ptr %8, align 4, !tbaa !5
  %4913 = mul nsw i32 29, %4912
  %4914 = add nsw i32 %4911, %4913
  %4915 = sext i32 %4914 to i64
  %4916 = getelementptr inbounds double, ptr %4910, i64 %4915
  %4917 = load double, ptr %4916, align 8, !tbaa !11
  %4918 = call double @llvm.fmuladd.f64(double 0x3C70000000000001, double %4917, double %4909)
  %4919 = load ptr, ptr %7, align 8, !tbaa !9
  %4920 = load i32, ptr %12, align 4, !tbaa !5
  %4921 = load i32, ptr %8, align 4, !tbaa !5
  %4922 = mul nsw i32 30, %4921
  %4923 = add nsw i32 %4920, %4922
  %4924 = sext i32 %4923 to i64
  %4925 = getelementptr inbounds double, ptr %4919, i64 %4924
  %4926 = load double, ptr %4925, align 8, !tbaa !11
  %4927 = call double @llvm.fmuladd.f64(double 0x3CAE800000000001, double %4926, double %4918)
  %4928 = load ptr, ptr %7, align 8, !tbaa !9
  %4929 = load i32, ptr %12, align 4, !tbaa !5
  %4930 = load i32, ptr %8, align 4, !tbaa !5
  %4931 = mul nsw i32 31, %4930
  %4932 = add nsw i32 %4929, %4931
  %4933 = sext i32 %4932 to i64
  %4934 = getelementptr inbounds double, ptr %4928, i64 %4933
  %4935 = load double, ptr %4934, align 8, !tbaa !11
  %4936 = call double @llvm.fmuladd.f64(double 0xBC8E000000000000, double %4935, double %4927)
  %4937 = load ptr, ptr %7, align 8, !tbaa !9
  %4938 = load i32, ptr %12, align 4, !tbaa !5
  %4939 = load i32, ptr %8, align 4, !tbaa !5
  %4940 = mul nsw i32 32, %4939
  %4941 = add nsw i32 %4938, %4940
  %4942 = sext i32 %4941 to i64
  %4943 = getelementptr inbounds double, ptr %4937, i64 %4942
  %4944 = load double, ptr %4943, align 8, !tbaa !11
  %4945 = call double @llvm.fmuladd.f64(double 0xBC70000000000001, double %4944, double %4936)
  %4946 = load ptr, ptr %7, align 8, !tbaa !9
  %4947 = load i32, ptr %12, align 4, !tbaa !5
  %4948 = load i32, ptr %8, align 4, !tbaa !5
  %4949 = mul nsw i32 33, %4948
  %4950 = add nsw i32 %4947, %4949
  %4951 = sext i32 %4950 to i64
  %4952 = getelementptr inbounds double, ptr %4946, i64 %4951
  %4953 = load double, ptr %4952, align 8, !tbaa !11
  %4954 = call double @llvm.fmuladd.f64(double 0x3FF86DB962AC2966, double %4953, double %4945)
  %4955 = load ptr, ptr %7, align 8, !tbaa !9
  %4956 = load i32, ptr %12, align 4, !tbaa !5
  %4957 = load i32, ptr %8, align 4, !tbaa !5
  %4958 = mul nsw i32 34, %4957
  %4959 = add nsw i32 %4956, %4958
  %4960 = sext i32 %4959 to i64
  %4961 = getelementptr inbounds double, ptr %4955, i64 %4960
  %4962 = load double, ptr %4961, align 8, !tbaa !11
  %4963 = call double @llvm.fmuladd.f64(double 0x3C93000000000000, double %4962, double %4954)
  %4964 = load ptr, ptr %7, align 8, !tbaa !9
  %4965 = load i32, ptr %12, align 4, !tbaa !5
  %4966 = load i32, ptr %8, align 4, !tbaa !5
  %4967 = mul nsw i32 35, %4966
  %4968 = add nsw i32 %4965, %4967
  %4969 = sext i32 %4968 to i64
  %4970 = getelementptr inbounds double, ptr %4964, i64 %4969
  %4971 = load double, ptr %4970, align 8, !tbaa !11
  %4972 = call double @llvm.fmuladd.f64(double 0xBC98000000000000, double %4971, double %4963)
  %4973 = load ptr, ptr %7, align 8, !tbaa !9
  %4974 = load i32, ptr %12, align 4, !tbaa !5
  %4975 = load i32, ptr %8, align 4, !tbaa !5
  %4976 = mul nsw i32 36, %4975
  %4977 = add nsw i32 %4974, %4976
  %4978 = sext i32 %4977 to i64
  %4979 = getelementptr inbounds double, ptr %4973, i64 %4978
  %4980 = load double, ptr %4979, align 8, !tbaa !11
  %4981 = call double @llvm.fmuladd.f64(double 0x3C94000000000000, double %4980, double %4972)
  %4982 = load ptr, ptr %7, align 8, !tbaa !9
  %4983 = load i32, ptr %12, align 4, !tbaa !5
  %4984 = load i32, ptr %8, align 4, !tbaa !5
  %4985 = mul nsw i32 37, %4984
  %4986 = add nsw i32 %4983, %4985
  %4987 = sext i32 %4986 to i64
  %4988 = getelementptr inbounds double, ptr %4982, i64 %4987
  %4989 = load double, ptr %4988, align 8, !tbaa !11
  %4990 = call double @llvm.fmuladd.f64(double 0x3C95000000000000, double %4989, double %4981)
  %4991 = load ptr, ptr %7, align 8, !tbaa !9
  %4992 = load i32, ptr %12, align 4, !tbaa !5
  %4993 = load i32, ptr %8, align 4, !tbaa !5
  %4994 = mul nsw i32 38, %4993
  %4995 = add nsw i32 %4992, %4994
  %4996 = sext i32 %4995 to i64
  %4997 = getelementptr inbounds double, ptr %4991, i64 %4996
  %4998 = load double, ptr %4997, align 8, !tbaa !11
  %4999 = call double @llvm.fmuladd.f64(double 0xBCA2000000000000, double %4998, double %4990)
  %5000 = load ptr, ptr %7, align 8, !tbaa !9
  %5001 = load i32, ptr %12, align 4, !tbaa !5
  %5002 = load i32, ptr %8, align 4, !tbaa !5
  %5003 = mul nsw i32 39, %5002
  %5004 = add nsw i32 %5001, %5003
  %5005 = sext i32 %5004 to i64
  %5006 = getelementptr inbounds double, ptr %5000, i64 %5005
  %5007 = load double, ptr %5006, align 8, !tbaa !11
  %5008 = call double @llvm.fmuladd.f64(double 0x3C78000000000002, double %5007, double %4999)
  store double %5008, ptr %11, align 8, !tbaa !11
  %5009 = load double, ptr %11, align 8, !tbaa !11
  %5010 = load ptr, ptr %9, align 8, !tbaa !9
  %5011 = load i32, ptr %12, align 4, !tbaa !5
  %5012 = load i32, ptr %10, align 4, !tbaa !5
  %5013 = mul nsw i32 13, %5012
  %5014 = add nsw i32 %5011, %5013
  %5015 = sext i32 %5014 to i64
  %5016 = getelementptr inbounds double, ptr %5010, i64 %5015
  %5017 = load double, ptr %5016, align 8, !tbaa !11
  %5018 = fadd double %5017, %5009
  store double %5018, ptr %5016, align 8, !tbaa !11
  %5019 = load ptr, ptr %7, align 8, !tbaa !9
  %5020 = load i32, ptr %12, align 4, !tbaa !5
  %5021 = load i32, ptr %8, align 4, !tbaa !5
  %5022 = mul nsw i32 0, %5021
  %5023 = add nsw i32 %5020, %5022
  %5024 = sext i32 %5023 to i64
  %5025 = getelementptr inbounds double, ptr %5019, i64 %5024
  %5026 = load double, ptr %5025, align 8, !tbaa !11
  %5027 = load ptr, ptr %7, align 8, !tbaa !9
  %5028 = load i32, ptr %12, align 4, !tbaa !5
  %5029 = load i32, ptr %8, align 4, !tbaa !5
  %5030 = mul nsw i32 1, %5029
  %5031 = add nsw i32 %5028, %5030
  %5032 = sext i32 %5031 to i64
  %5033 = getelementptr inbounds double, ptr %5027, i64 %5032
  %5034 = load double, ptr %5033, align 8, !tbaa !11
  %5035 = fmul double 0xBCB77FFFFFFFFFFF, %5034
  %5036 = call double @llvm.fmuladd.f64(double 0xBCC9000000000000, double %5026, double %5035)
  %5037 = load ptr, ptr %7, align 8, !tbaa !9
  %5038 = load i32, ptr %12, align 4, !tbaa !5
  %5039 = load i32, ptr %8, align 4, !tbaa !5
  %5040 = mul nsw i32 2, %5039
  %5041 = add nsw i32 %5038, %5040
  %5042 = sext i32 %5041 to i64
  %5043 = getelementptr inbounds double, ptr %5037, i64 %5042
  %5044 = load double, ptr %5043, align 8, !tbaa !11
  %5045 = call double @llvm.fmuladd.f64(double 0xBCA33FFFFFFFFFFE, double %5044, double %5036)
  %5046 = load ptr, ptr %7, align 8, !tbaa !9
  %5047 = load i32, ptr %12, align 4, !tbaa !5
  %5048 = load i32, ptr %8, align 4, !tbaa !5
  %5049 = mul nsw i32 3, %5048
  %5050 = add nsw i32 %5047, %5049
  %5051 = sext i32 %5050 to i64
  %5052 = getelementptr inbounds double, ptr %5046, i64 %5051
  %5053 = load double, ptr %5052, align 8, !tbaa !11
  %5054 = call double @llvm.fmuladd.f64(double 0xBCB7D00000000001, double %5053, double %5045)
  %5055 = load ptr, ptr %7, align 8, !tbaa !9
  %5056 = load i32, ptr %12, align 4, !tbaa !5
  %5057 = load i32, ptr %8, align 4, !tbaa !5
  %5058 = mul nsw i32 4, %5057
  %5059 = add nsw i32 %5056, %5058
  %5060 = sext i32 %5059 to i64
  %5061 = getelementptr inbounds double, ptr %5055, i64 %5060
  %5062 = load double, ptr %5061, align 8, !tbaa !11
  %5063 = call double @llvm.fmuladd.f64(double 0xBFBD29AD687BB04F, double %5062, double %5054)
  %5064 = load ptr, ptr %7, align 8, !tbaa !9
  %5065 = load i32, ptr %12, align 4, !tbaa !5
  %5066 = load i32, ptr %8, align 4, !tbaa !5
  %5067 = mul nsw i32 5, %5066
  %5068 = add nsw i32 %5065, %5067
  %5069 = sext i32 %5068 to i64
  %5070 = getelementptr inbounds double, ptr %5064, i64 %5069
  %5071 = load double, ptr %5070, align 8, !tbaa !11
  %5072 = call double @llvm.fmuladd.f64(double 0x3CAE800000000001, double %5071, double %5063)
  %5073 = load ptr, ptr %7, align 8, !tbaa !9
  %5074 = load i32, ptr %12, align 4, !tbaa !5
  %5075 = load i32, ptr %8, align 4, !tbaa !5
  %5076 = mul nsw i32 6, %5075
  %5077 = add nsw i32 %5074, %5076
  %5078 = sext i32 %5077 to i64
  %5079 = getelementptr inbounds double, ptr %5073, i64 %5078
  %5080 = load double, ptr %5079, align 8, !tbaa !11
  %5081 = call double @llvm.fmuladd.f64(double 0x3C99000000000000, double %5080, double %5072)
  %5082 = load ptr, ptr %7, align 8, !tbaa !9
  %5083 = load i32, ptr %12, align 4, !tbaa !5
  %5084 = load i32, ptr %8, align 4, !tbaa !5
  %5085 = mul nsw i32 7, %5084
  %5086 = add nsw i32 %5083, %5085
  %5087 = sext i32 %5086 to i64
  %5088 = getelementptr inbounds double, ptr %5082, i64 %5087
  %5089 = load double, ptr %5088, align 8, !tbaa !11
  %5090 = call double @llvm.fmuladd.f64(double 0xBCB5600000000000, double %5089, double %5081)
  %5091 = load ptr, ptr %7, align 8, !tbaa !9
  %5092 = load i32, ptr %12, align 4, !tbaa !5
  %5093 = load i32, ptr %8, align 4, !tbaa !5
  %5094 = mul nsw i32 8, %5093
  %5095 = add nsw i32 %5092, %5094
  %5096 = sext i32 %5095 to i64
  %5097 = getelementptr inbounds double, ptr %5091, i64 %5096
  %5098 = load double, ptr %5097, align 8, !tbaa !11
  %5099 = call double @llvm.fmuladd.f64(double 0x3C60000000000000, double %5098, double %5090)
  %5100 = load ptr, ptr %7, align 8, !tbaa !9
  %5101 = load i32, ptr %12, align 4, !tbaa !5
  %5102 = load i32, ptr %8, align 4, !tbaa !5
  %5103 = mul nsw i32 9, %5102
  %5104 = add nsw i32 %5101, %5103
  %5105 = sext i32 %5104 to i64
  %5106 = getelementptr inbounds double, ptr %5100, i64 %5105
  %5107 = load double, ptr %5106, align 8, !tbaa !11
  %5108 = call double @llvm.fmuladd.f64(double 0xBC78000000000002, double %5107, double %5099)
  %5109 = load ptr, ptr %7, align 8, !tbaa !9
  %5110 = load i32, ptr %12, align 4, !tbaa !5
  %5111 = load i32, ptr %8, align 4, !tbaa !5
  %5112 = mul nsw i32 10, %5111
  %5113 = add nsw i32 %5110, %5112
  %5114 = sext i32 %5113 to i64
  %5115 = getelementptr inbounds double, ptr %5109, i64 %5114
  %5116 = load double, ptr %5115, align 8, !tbaa !11
  %5117 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %5116, double %5108)
  %5118 = load ptr, ptr %7, align 8, !tbaa !9
  %5119 = load i32, ptr %12, align 4, !tbaa !5
  %5120 = load i32, ptr %8, align 4, !tbaa !5
  %5121 = mul nsw i32 11, %5120
  %5122 = add nsw i32 %5119, %5121
  %5123 = sext i32 %5122 to i64
  %5124 = getelementptr inbounds double, ptr %5118, i64 %5123
  %5125 = load double, ptr %5124, align 8, !tbaa !11
  %5126 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %5125, double %5117)
  %5127 = load ptr, ptr %7, align 8, !tbaa !9
  %5128 = load i32, ptr %12, align 4, !tbaa !5
  %5129 = load i32, ptr %8, align 4, !tbaa !5
  %5130 = mul nsw i32 12, %5129
  %5131 = add nsw i32 %5128, %5130
  %5132 = sext i32 %5131 to i64
  %5133 = getelementptr inbounds double, ptr %5127, i64 %5132
  %5134 = load double, ptr %5133, align 8, !tbaa !11
  %5135 = call double @llvm.fmuladd.f64(double 0x3C91000000000000, double %5134, double %5126)
  %5136 = load ptr, ptr %7, align 8, !tbaa !9
  %5137 = load i32, ptr %12, align 4, !tbaa !5
  %5138 = load i32, ptr %8, align 4, !tbaa !5
  %5139 = mul nsw i32 13, %5138
  %5140 = add nsw i32 %5137, %5139
  %5141 = sext i32 %5140 to i64
  %5142 = getelementptr inbounds double, ptr %5136, i64 %5141
  %5143 = load double, ptr %5142, align 8, !tbaa !11
  %5144 = call double @llvm.fmuladd.f64(double 0x3CA27FFFFFFFFFFF, double %5143, double %5135)
  %5145 = load ptr, ptr %7, align 8, !tbaa !9
  %5146 = load i32, ptr %12, align 4, !tbaa !5
  %5147 = load i32, ptr %8, align 4, !tbaa !5
  %5148 = mul nsw i32 14, %5147
  %5149 = add nsw i32 %5146, %5148
  %5150 = sext i32 %5149 to i64
  %5151 = getelementptr inbounds double, ptr %5145, i64 %5150
  %5152 = load double, ptr %5151, align 8, !tbaa !11
  %5153 = call double @llvm.fmuladd.f64(double 0x3FD9A613A5CEF63B, double %5152, double %5144)
  %5154 = load ptr, ptr %7, align 8, !tbaa !9
  %5155 = load i32, ptr %12, align 4, !tbaa !5
  %5156 = load i32, ptr %8, align 4, !tbaa !5
  %5157 = mul nsw i32 15, %5156
  %5158 = add nsw i32 %5155, %5157
  %5159 = sext i32 %5158 to i64
  %5160 = getelementptr inbounds double, ptr %5154, i64 %5159
  %5161 = load double, ptr %5160, align 8, !tbaa !11
  %5162 = call double @llvm.fmuladd.f64(double 0x3C88000000000000, double %5161, double %5153)
  %5163 = load ptr, ptr %7, align 8, !tbaa !9
  %5164 = load i32, ptr %12, align 4, !tbaa !5
  %5165 = load i32, ptr %8, align 4, !tbaa !5
  %5166 = mul nsw i32 16, %5165
  %5167 = add nsw i32 %5164, %5166
  %5168 = sext i32 %5167 to i64
  %5169 = getelementptr inbounds double, ptr %5163, i64 %5168
  %5170 = load double, ptr %5169, align 8, !tbaa !11
  %5171 = call double @llvm.fmuladd.f64(double 0x3CACFFFFFFFFFFFF, double %5170, double %5162)
  %5172 = load ptr, ptr %7, align 8, !tbaa !9
  %5173 = load i32, ptr %12, align 4, !tbaa !5
  %5174 = load i32, ptr %8, align 4, !tbaa !5
  %5175 = mul nsw i32 17, %5174
  %5176 = add nsw i32 %5173, %5175
  %5177 = sext i32 %5176 to i64
  %5178 = getelementptr inbounds double, ptr %5172, i64 %5177
  %5179 = load double, ptr %5178, align 8, !tbaa !11
  %5180 = call double @llvm.fmuladd.f64(double 0xBCB6800000000000, double %5179, double %5171)
  %5181 = load ptr, ptr %7, align 8, !tbaa !9
  %5182 = load i32, ptr %12, align 4, !tbaa !5
  %5183 = load i32, ptr %8, align 4, !tbaa !5
  %5184 = mul nsw i32 19, %5183
  %5185 = add nsw i32 %5182, %5184
  %5186 = sext i32 %5185 to i64
  %5187 = getelementptr inbounds double, ptr %5181, i64 %5186
  %5188 = load double, ptr %5187, align 8, !tbaa !11
  %5189 = call double @llvm.fmuladd.f64(double 0xBC98000000000000, double %5188, double %5180)
  %5190 = load ptr, ptr %7, align 8, !tbaa !9
  %5191 = load i32, ptr %12, align 4, !tbaa !5
  %5192 = load i32, ptr %8, align 4, !tbaa !5
  %5193 = mul nsw i32 20, %5192
  %5194 = add nsw i32 %5191, %5193
  %5195 = sext i32 %5194 to i64
  %5196 = getelementptr inbounds double, ptr %5190, i64 %5195
  %5197 = load double, ptr %5196, align 8, !tbaa !11
  %5198 = call double @llvm.fmuladd.f64(double 0xBCA4000000000001, double %5197, double %5189)
  %5199 = load ptr, ptr %7, align 8, !tbaa !9
  %5200 = load i32, ptr %12, align 4, !tbaa !5
  %5201 = load i32, ptr %8, align 4, !tbaa !5
  %5202 = mul nsw i32 21, %5201
  %5203 = add nsw i32 %5200, %5202
  %5204 = sext i32 %5203 to i64
  %5205 = getelementptr inbounds double, ptr %5199, i64 %5204
  %5206 = load double, ptr %5205, align 8, !tbaa !11
  %5207 = call double @llvm.fmuladd.f64(double 0x3C7FFFFFFFFFFFFF, double %5206, double %5198)
  %5208 = load ptr, ptr %7, align 8, !tbaa !9
  %5209 = load i32, ptr %12, align 4, !tbaa !5
  %5210 = load i32, ptr %8, align 4, !tbaa !5
  %5211 = mul nsw i32 22, %5210
  %5212 = add nsw i32 %5209, %5211
  %5213 = sext i32 %5212 to i64
  %5214 = getelementptr inbounds double, ptr %5208, i64 %5213
  %5215 = load double, ptr %5214, align 8, !tbaa !11
  %5216 = call double @llvm.fmuladd.f64(double 0xBCB1000000000001, double %5215, double %5207)
  %5217 = load ptr, ptr %7, align 8, !tbaa !9
  %5218 = load i32, ptr %12, align 4, !tbaa !5
  %5219 = load i32, ptr %8, align 4, !tbaa !5
  %5220 = mul nsw i32 23, %5219
  %5221 = add nsw i32 %5218, %5220
  %5222 = sext i32 %5221 to i64
  %5223 = getelementptr inbounds double, ptr %5217, i64 %5222
  %5224 = load double, ptr %5223, align 8, !tbaa !11
  %5225 = call double @llvm.fmuladd.f64(double 0x3CA3800000000002, double %5224, double %5216)
  %5226 = load ptr, ptr %7, align 8, !tbaa !9
  %5227 = load i32, ptr %12, align 4, !tbaa !5
  %5228 = load i32, ptr %8, align 4, !tbaa !5
  %5229 = mul nsw i32 24, %5228
  %5230 = add nsw i32 %5227, %5229
  %5231 = sext i32 %5230 to i64
  %5232 = getelementptr inbounds double, ptr %5226, i64 %5231
  %5233 = load double, ptr %5232, align 8, !tbaa !11
  %5234 = call double @llvm.fmuladd.f64(double 0xBFEA0946EB3057E0, double %5233, double %5225)
  %5235 = load ptr, ptr %7, align 8, !tbaa !9
  %5236 = load i32, ptr %12, align 4, !tbaa !5
  %5237 = load i32, ptr %8, align 4, !tbaa !5
  %5238 = mul nsw i32 25, %5237
  %5239 = add nsw i32 %5236, %5238
  %5240 = sext i32 %5239 to i64
  %5241 = getelementptr inbounds double, ptr %5235, i64 %5240
  %5242 = load double, ptr %5241, align 8, !tbaa !11
  %5243 = call double @llvm.fmuladd.f64(double 0x3C9C000000000000, double %5242, double %5234)
  %5244 = load ptr, ptr %7, align 8, !tbaa !9
  %5245 = load i32, ptr %12, align 4, !tbaa !5
  %5246 = load i32, ptr %8, align 4, !tbaa !5
  %5247 = mul nsw i32 26, %5246
  %5248 = add nsw i32 %5245, %5247
  %5249 = sext i32 %5248 to i64
  %5250 = getelementptr inbounds double, ptr %5244, i64 %5249
  %5251 = load double, ptr %5250, align 8, !tbaa !11
  %5252 = call double @llvm.fmuladd.f64(double 0x3C86000000000001, double %5251, double %5243)
  %5253 = load ptr, ptr %7, align 8, !tbaa !9
  %5254 = load i32, ptr %12, align 4, !tbaa !5
  %5255 = load i32, ptr %8, align 4, !tbaa !5
  %5256 = mul nsw i32 27, %5255
  %5257 = add nsw i32 %5254, %5256
  %5258 = sext i32 %5257 to i64
  %5259 = getelementptr inbounds double, ptr %5253, i64 %5258
  %5260 = load double, ptr %5259, align 8, !tbaa !11
  %5261 = call double @llvm.fmuladd.f64(double 0x3CC3600000000000, double %5260, double %5252)
  %5262 = load ptr, ptr %7, align 8, !tbaa !9
  %5263 = load i32, ptr %12, align 4, !tbaa !5
  %5264 = load i32, ptr %8, align 4, !tbaa !5
  %5265 = mul nsw i32 28, %5264
  %5266 = add nsw i32 %5263, %5265
  %5267 = sext i32 %5266 to i64
  %5268 = getelementptr inbounds double, ptr %5262, i64 %5267
  %5269 = load double, ptr %5268, align 8, !tbaa !11
  %5270 = call double @llvm.fmuladd.f64(double 0xBC9C000000000000, double %5269, double %5261)
  %5271 = load ptr, ptr %7, align 8, !tbaa !9
  %5272 = load i32, ptr %12, align 4, !tbaa !5
  %5273 = load i32, ptr %8, align 4, !tbaa !5
  %5274 = mul nsw i32 29, %5273
  %5275 = add nsw i32 %5272, %5274
  %5276 = sext i32 %5275 to i64
  %5277 = getelementptr inbounds double, ptr %5271, i64 %5276
  %5278 = load double, ptr %5277, align 8, !tbaa !11
  %5279 = call double @llvm.fmuladd.f64(double 0xBCA0000000000002, double %5278, double %5270)
  %5280 = load ptr, ptr %7, align 8, !tbaa !9
  %5281 = load i32, ptr %12, align 4, !tbaa !5
  %5282 = load i32, ptr %8, align 4, !tbaa !5
  %5283 = mul nsw i32 30, %5282
  %5284 = add nsw i32 %5281, %5283
  %5285 = sext i32 %5284 to i64
  %5286 = getelementptr inbounds double, ptr %5280, i64 %5285
  %5287 = load double, ptr %5286, align 8, !tbaa !11
  %5288 = call double @llvm.fmuladd.f64(double 0xBCB2000000000000, double %5287, double %5279)
  %5289 = load ptr, ptr %7, align 8, !tbaa !9
  %5290 = load i32, ptr %12, align 4, !tbaa !5
  %5291 = load i32, ptr %8, align 4, !tbaa !5
  %5292 = mul nsw i32 31, %5291
  %5293 = add nsw i32 %5290, %5292
  %5294 = sext i32 %5293 to i64
  %5295 = getelementptr inbounds double, ptr %5289, i64 %5294
  %5296 = load double, ptr %5295, align 8, !tbaa !11
  %5297 = call double @llvm.fmuladd.f64(double 0x3CB4800000000001, double %5296, double %5288)
  %5298 = load ptr, ptr %7, align 8, !tbaa !9
  %5299 = load i32, ptr %12, align 4, !tbaa !5
  %5300 = load i32, ptr %8, align 4, !tbaa !5
  %5301 = mul nsw i32 32, %5300
  %5302 = add nsw i32 %5299, %5301
  %5303 = sext i32 %5302 to i64
  %5304 = getelementptr inbounds double, ptr %5298, i64 %5303
  %5305 = load double, ptr %5304, align 8, !tbaa !11
  %5306 = call double @llvm.fmuladd.f64(double 0x3CA0E00000000001, double %5305, double %5297)
  %5307 = load ptr, ptr %7, align 8, !tbaa !9
  %5308 = load i32, ptr %12, align 4, !tbaa !5
  %5309 = load i32, ptr %8, align 4, !tbaa !5
  %5310 = mul nsw i32 33, %5309
  %5311 = add nsw i32 %5308, %5310
  %5312 = sext i32 %5311 to i64
  %5313 = getelementptr inbounds double, ptr %5307, i64 %5312
  %5314 = load double, ptr %5313, align 8, !tbaa !11
  %5315 = call double @llvm.fmuladd.f64(double 0xBCB2D00000000001, double %5314, double %5306)
  %5316 = load ptr, ptr %7, align 8, !tbaa !9
  %5317 = load i32, ptr %12, align 4, !tbaa !5
  %5318 = load i32, ptr %8, align 4, !tbaa !5
  %5319 = mul nsw i32 34, %5318
  %5320 = add nsw i32 %5317, %5319
  %5321 = sext i32 %5320 to i64
  %5322 = getelementptr inbounds double, ptr %5316, i64 %5321
  %5323 = load double, ptr %5322, align 8, !tbaa !11
  %5324 = call double @llvm.fmuladd.f64(double 0x3FF86DB962AC2961, double %5323, double %5315)
  %5325 = load ptr, ptr %7, align 8, !tbaa !9
  %5326 = load i32, ptr %12, align 4, !tbaa !5
  %5327 = load i32, ptr %8, align 4, !tbaa !5
  %5328 = mul nsw i32 35, %5327
  %5329 = add nsw i32 %5326, %5328
  %5330 = sext i32 %5329 to i64
  %5331 = getelementptr inbounds double, ptr %5325, i64 %5330
  %5332 = load double, ptr %5331, align 8, !tbaa !11
  %5333 = call double @llvm.fmuladd.f64(double 0x3C97000000000000, double %5332, double %5324)
  %5334 = load ptr, ptr %7, align 8, !tbaa !9
  %5335 = load i32, ptr %12, align 4, !tbaa !5
  %5336 = load i32, ptr %8, align 4, !tbaa !5
  %5337 = mul nsw i32 36, %5336
  %5338 = add nsw i32 %5335, %5337
  %5339 = sext i32 %5338 to i64
  %5340 = getelementptr inbounds double, ptr %5334, i64 %5339
  %5341 = load double, ptr %5340, align 8, !tbaa !11
  %5342 = call double @llvm.fmuladd.f64(double 0x3C9EFFFFFFFFFFFD, double %5341, double %5333)
  %5343 = load ptr, ptr %7, align 8, !tbaa !9
  %5344 = load i32, ptr %12, align 4, !tbaa !5
  %5345 = load i32, ptr %8, align 4, !tbaa !5
  %5346 = mul nsw i32 37, %5345
  %5347 = add nsw i32 %5344, %5346
  %5348 = sext i32 %5347 to i64
  %5349 = getelementptr inbounds double, ptr %5343, i64 %5348
  %5350 = load double, ptr %5349, align 8, !tbaa !11
  %5351 = call double @llvm.fmuladd.f64(double 0x3CB8E00000000000, double %5350, double %5342)
  %5352 = load ptr, ptr %7, align 8, !tbaa !9
  %5353 = load i32, ptr %12, align 4, !tbaa !5
  %5354 = load i32, ptr %8, align 4, !tbaa !5
  %5355 = mul nsw i32 38, %5354
  %5356 = add nsw i32 %5353, %5355
  %5357 = sext i32 %5356 to i64
  %5358 = getelementptr inbounds double, ptr %5352, i64 %5357
  %5359 = load double, ptr %5358, align 8, !tbaa !11
  %5360 = call double @llvm.fmuladd.f64(double 0x3CA1000000000001, double %5359, double %5351)
  %5361 = load ptr, ptr %7, align 8, !tbaa !9
  %5362 = load i32, ptr %12, align 4, !tbaa !5
  %5363 = load i32, ptr %8, align 4, !tbaa !5
  %5364 = mul nsw i32 39, %5363
  %5365 = add nsw i32 %5362, %5364
  %5366 = sext i32 %5365 to i64
  %5367 = getelementptr inbounds double, ptr %5361, i64 %5366
  %5368 = load double, ptr %5367, align 8, !tbaa !11
  %5369 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %5368, double %5360)
  store double %5369, ptr %11, align 8, !tbaa !11
  %5370 = load double, ptr %11, align 8, !tbaa !11
  %5371 = load ptr, ptr %9, align 8, !tbaa !9
  %5372 = load i32, ptr %12, align 4, !tbaa !5
  %5373 = load i32, ptr %10, align 4, !tbaa !5
  %5374 = mul nsw i32 14, %5373
  %5375 = add nsw i32 %5372, %5374
  %5376 = sext i32 %5375 to i64
  %5377 = getelementptr inbounds double, ptr %5371, i64 %5376
  %5378 = load double, ptr %5377, align 8, !tbaa !11
  %5379 = fadd double %5378, %5370
  store double %5379, ptr %5377, align 8, !tbaa !11
  %5380 = load ptr, ptr %7, align 8, !tbaa !9
  %5381 = load i32, ptr %12, align 4, !tbaa !5
  %5382 = load i32, ptr %8, align 4, !tbaa !5
  %5383 = mul nsw i32 0, %5382
  %5384 = add nsw i32 %5381, %5383
  %5385 = sext i32 %5384 to i64
  %5386 = getelementptr inbounds double, ptr %5380, i64 %5385
  %5387 = load double, ptr %5386, align 8, !tbaa !11
  %5388 = load ptr, ptr %7, align 8, !tbaa !9
  %5389 = load i32, ptr %12, align 4, !tbaa !5
  %5390 = load i32, ptr %8, align 4, !tbaa !5
  %5391 = mul nsw i32 1, %5390
  %5392 = add nsw i32 %5389, %5391
  %5393 = sext i32 %5392 to i64
  %5394 = getelementptr inbounds double, ptr %5388, i64 %5393
  %5395 = load double, ptr %5394, align 8, !tbaa !11
  %5396 = fmul double 0xBC98000000000000, %5395
  %5397 = call double @llvm.fmuladd.f64(double 0x3C88000000000000, double %5387, double %5396)
  %5398 = load ptr, ptr %7, align 8, !tbaa !9
  %5399 = load i32, ptr %12, align 4, !tbaa !5
  %5400 = load i32, ptr %8, align 4, !tbaa !5
  %5401 = mul nsw i32 2, %5400
  %5402 = add nsw i32 %5399, %5401
  %5403 = sext i32 %5402 to i64
  %5404 = getelementptr inbounds double, ptr %5398, i64 %5403
  %5405 = load double, ptr %5404, align 8, !tbaa !11
  %5406 = call double @llvm.fmuladd.f64(double 0x3C90800000000000, double %5405, double %5397)
  %5407 = load ptr, ptr %7, align 8, !tbaa !9
  %5408 = load i32, ptr %12, align 4, !tbaa !5
  %5409 = load i32, ptr %8, align 4, !tbaa !5
  %5410 = mul nsw i32 3, %5409
  %5411 = add nsw i32 %5408, %5410
  %5412 = sext i32 %5411 to i64
  %5413 = getelementptr inbounds double, ptr %5407, i64 %5412
  %5414 = load double, ptr %5413, align 8, !tbaa !11
  %5415 = call double @llvm.fmuladd.f64(double 0x3CB8300000000001, double %5414, double %5406)
  %5416 = load ptr, ptr %7, align 8, !tbaa !9
  %5417 = load i32, ptr %12, align 4, !tbaa !5
  %5418 = load i32, ptr %8, align 4, !tbaa !5
  %5419 = mul nsw i32 4, %5418
  %5420 = add nsw i32 %5417, %5419
  %5421 = sext i32 %5420 to i64
  %5422 = getelementptr inbounds double, ptr %5416, i64 %5421
  %5423 = load double, ptr %5422, align 8, !tbaa !11
  %5424 = call double @llvm.fmuladd.f64(double 0x3C99000000000000, double %5423, double %5415)
  %5425 = load ptr, ptr %7, align 8, !tbaa !9
  %5426 = load i32, ptr %12, align 4, !tbaa !5
  %5427 = load i32, ptr %8, align 4, !tbaa !5
  %5428 = mul nsw i32 5, %5427
  %5429 = add nsw i32 %5426, %5428
  %5430 = sext i32 %5429 to i64
  %5431 = getelementptr inbounds double, ptr %5425, i64 %5430
  %5432 = load double, ptr %5431, align 8, !tbaa !11
  %5433 = call double @llvm.fmuladd.f64(double 0xBFBD29AD687BB056, double %5432, double %5424)
  %5434 = load ptr, ptr %7, align 8, !tbaa !9
  %5435 = load i32, ptr %12, align 4, !tbaa !5
  %5436 = load i32, ptr %8, align 4, !tbaa !5
  %5437 = mul nsw i32 6, %5436
  %5438 = add nsw i32 %5435, %5437
  %5439 = sext i32 %5438 to i64
  %5440 = getelementptr inbounds double, ptr %5434, i64 %5439
  %5441 = load double, ptr %5440, align 8, !tbaa !11
  %5442 = call double @llvm.fmuladd.f64(double 0xBC78000000000002, double %5441, double %5433)
  %5443 = load ptr, ptr %7, align 8, !tbaa !9
  %5444 = load i32, ptr %12, align 4, !tbaa !5
  %5445 = load i32, ptr %8, align 4, !tbaa !5
  %5446 = mul nsw i32 7, %5445
  %5447 = add nsw i32 %5444, %5446
  %5448 = sext i32 %5447 to i64
  %5449 = getelementptr inbounds double, ptr %5443, i64 %5448
  %5450 = load double, ptr %5449, align 8, !tbaa !11
  %5451 = call double @llvm.fmuladd.f64(double 0x3C64000000000000, double %5450, double %5442)
  %5452 = load ptr, ptr %7, align 8, !tbaa !9
  %5453 = load i32, ptr %12, align 4, !tbaa !5
  %5454 = load i32, ptr %8, align 4, !tbaa !5
  %5455 = mul nsw i32 8, %5454
  %5456 = add nsw i32 %5453, %5455
  %5457 = sext i32 %5456 to i64
  %5458 = getelementptr inbounds double, ptr %5452, i64 %5457
  %5459 = load double, ptr %5458, align 8, !tbaa !11
  %5460 = call double @llvm.fmuladd.f64(double 0x3CA7000000000002, double %5459, double %5451)
  %5461 = load ptr, ptr %7, align 8, !tbaa !9
  %5462 = load i32, ptr %12, align 4, !tbaa !5
  %5463 = load i32, ptr %8, align 4, !tbaa !5
  %5464 = mul nsw i32 9, %5463
  %5465 = add nsw i32 %5462, %5464
  %5466 = sext i32 %5465 to i64
  %5467 = getelementptr inbounds double, ptr %5461, i64 %5466
  %5468 = load double, ptr %5467, align 8, !tbaa !11
  %5469 = call double @llvm.fmuladd.f64(double 0xBCA2FFFFFFFFFFFE, double %5468, double %5460)
  %5470 = load ptr, ptr %7, align 8, !tbaa !9
  %5471 = load i32, ptr %12, align 4, !tbaa !5
  %5472 = load i32, ptr %8, align 4, !tbaa !5
  %5473 = mul nsw i32 10, %5472
  %5474 = add nsw i32 %5471, %5473
  %5475 = sext i32 %5474 to i64
  %5476 = getelementptr inbounds double, ptr %5470, i64 %5475
  %5477 = load double, ptr %5476, align 8, !tbaa !11
  %5478 = call double @llvm.fmuladd.f64(double 0xBC98000000000000, double %5477, double %5469)
  %5479 = load ptr, ptr %7, align 8, !tbaa !9
  %5480 = load i32, ptr %12, align 4, !tbaa !5
  %5481 = load i32, ptr %8, align 4, !tbaa !5
  %5482 = mul nsw i32 11, %5481
  %5483 = add nsw i32 %5480, %5482
  %5484 = sext i32 %5483 to i64
  %5485 = getelementptr inbounds double, ptr %5479, i64 %5484
  %5486 = load double, ptr %5485, align 8, !tbaa !11
  %5487 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %5486, double %5478)
  %5488 = load ptr, ptr %7, align 8, !tbaa !9
  %5489 = load i32, ptr %12, align 4, !tbaa !5
  %5490 = load i32, ptr %8, align 4, !tbaa !5
  %5491 = mul nsw i32 12, %5490
  %5492 = add nsw i32 %5489, %5491
  %5493 = sext i32 %5492 to i64
  %5494 = getelementptr inbounds double, ptr %5488, i64 %5493
  %5495 = load double, ptr %5494, align 8, !tbaa !11
  %5496 = call double @llvm.fmuladd.f64(double 0x3C7C000000000000, double %5495, double %5487)
  %5497 = load ptr, ptr %7, align 8, !tbaa !9
  %5498 = load i32, ptr %12, align 4, !tbaa !5
  %5499 = load i32, ptr %8, align 4, !tbaa !5
  %5500 = mul nsw i32 13, %5499
  %5501 = add nsw i32 %5498, %5500
  %5502 = sext i32 %5501 to i64
  %5503 = getelementptr inbounds double, ptr %5497, i64 %5502
  %5504 = load double, ptr %5503, align 8, !tbaa !11
  %5505 = call double @llvm.fmuladd.f64(double 0xBC9CFFFFFFFFFFFF, double %5504, double %5496)
  %5506 = load ptr, ptr %7, align 8, !tbaa !9
  %5507 = load i32, ptr %12, align 4, !tbaa !5
  %5508 = load i32, ptr %8, align 4, !tbaa !5
  %5509 = mul nsw i32 14, %5508
  %5510 = add nsw i32 %5507, %5509
  %5511 = sext i32 %5510 to i64
  %5512 = getelementptr inbounds double, ptr %5506, i64 %5511
  %5513 = load double, ptr %5512, align 8, !tbaa !11
  %5514 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %5513, double %5505)
  %5515 = load ptr, ptr %7, align 8, !tbaa !9
  %5516 = load i32, ptr %12, align 4, !tbaa !5
  %5517 = load i32, ptr %8, align 4, !tbaa !5
  %5518 = mul nsw i32 15, %5517
  %5519 = add nsw i32 %5516, %5518
  %5520 = sext i32 %5519 to i64
  %5521 = getelementptr inbounds double, ptr %5515, i64 %5520
  %5522 = load double, ptr %5521, align 8, !tbaa !11
  %5523 = call double @llvm.fmuladd.f64(double 0x3FD9A613A5CEF63C, double %5522, double %5514)
  %5524 = load ptr, ptr %7, align 8, !tbaa !9
  %5525 = load i32, ptr %12, align 4, !tbaa !5
  %5526 = load i32, ptr %8, align 4, !tbaa !5
  %5527 = mul nsw i32 16, %5526
  %5528 = add nsw i32 %5525, %5527
  %5529 = sext i32 %5528 to i64
  %5530 = getelementptr inbounds double, ptr %5524, i64 %5529
  %5531 = load double, ptr %5530, align 8, !tbaa !11
  %5532 = call double @llvm.fmuladd.f64(double 0xBCA2FFFFFFFFFFFE, double %5531, double %5523)
  %5533 = load ptr, ptr %7, align 8, !tbaa !9
  %5534 = load i32, ptr %12, align 4, !tbaa !5
  %5535 = load i32, ptr %8, align 4, !tbaa !5
  %5536 = mul nsw i32 17, %5535
  %5537 = add nsw i32 %5534, %5536
  %5538 = sext i32 %5537 to i64
  %5539 = getelementptr inbounds double, ptr %5533, i64 %5538
  %5540 = load double, ptr %5539, align 8, !tbaa !11
  %5541 = call double @llvm.fmuladd.f64(double 0xBCA2FFFFFFFFFFFE, double %5540, double %5532)
  %5542 = load ptr, ptr %7, align 8, !tbaa !9
  %5543 = load i32, ptr %12, align 4, !tbaa !5
  %5544 = load i32, ptr %8, align 4, !tbaa !5
  %5545 = mul nsw i32 18, %5544
  %5546 = add nsw i32 %5543, %5545
  %5547 = sext i32 %5546 to i64
  %5548 = getelementptr inbounds double, ptr %5542, i64 %5547
  %5549 = load double, ptr %5548, align 8, !tbaa !11
  %5550 = call double @llvm.fmuladd.f64(double 0x3C98000000000000, double %5549, double %5541)
  %5551 = load ptr, ptr %7, align 8, !tbaa !9
  %5552 = load i32, ptr %12, align 4, !tbaa !5
  %5553 = load i32, ptr %8, align 4, !tbaa !5
  %5554 = mul nsw i32 19, %5553
  %5555 = add nsw i32 %5552, %5554
  %5556 = sext i32 %5555 to i64
  %5557 = getelementptr inbounds double, ptr %5551, i64 %5556
  %5558 = load double, ptr %5557, align 8, !tbaa !11
  %5559 = call double @llvm.fmuladd.f64(double 0x3CA2000000000000, double %5558, double %5550)
  %5560 = load ptr, ptr %7, align 8, !tbaa !9
  %5561 = load i32, ptr %12, align 4, !tbaa !5
  %5562 = load i32, ptr %8, align 4, !tbaa !5
  %5563 = mul nsw i32 20, %5562
  %5564 = add nsw i32 %5561, %5563
  %5565 = sext i32 %5564 to i64
  %5566 = getelementptr inbounds double, ptr %5560, i64 %5565
  %5567 = load double, ptr %5566, align 8, !tbaa !11
  %5568 = call double @llvm.fmuladd.f64(double 0x3CB0000000000000, double %5567, double %5559)
  %5569 = load ptr, ptr %7, align 8, !tbaa !9
  %5570 = load i32, ptr %12, align 4, !tbaa !5
  %5571 = load i32, ptr %8, align 4, !tbaa !5
  %5572 = mul nsw i32 21, %5571
  %5573 = add nsw i32 %5570, %5572
  %5574 = sext i32 %5573 to i64
  %5575 = getelementptr inbounds double, ptr %5569, i64 %5574
  %5576 = load double, ptr %5575, align 8, !tbaa !11
  %5577 = call double @llvm.fmuladd.f64(double 0x3C88000000000000, double %5576, double %5568)
  %5578 = load ptr, ptr %7, align 8, !tbaa !9
  %5579 = load i32, ptr %12, align 4, !tbaa !5
  %5580 = load i32, ptr %8, align 4, !tbaa !5
  %5581 = mul nsw i32 22, %5580
  %5582 = add nsw i32 %5579, %5581
  %5583 = sext i32 %5582 to i64
  %5584 = getelementptr inbounds double, ptr %5578, i64 %5583
  %5585 = load double, ptr %5584, align 8, !tbaa !11
  %5586 = call double @llvm.fmuladd.f64(double 0xBC60000000000000, double %5585, double %5577)
  %5587 = load ptr, ptr %7, align 8, !tbaa !9
  %5588 = load i32, ptr %12, align 4, !tbaa !5
  %5589 = load i32, ptr %8, align 4, !tbaa !5
  %5590 = mul nsw i32 23, %5589
  %5591 = add nsw i32 %5588, %5590
  %5592 = sext i32 %5591 to i64
  %5593 = getelementptr inbounds double, ptr %5587, i64 %5592
  %5594 = load double, ptr %5593, align 8, !tbaa !11
  %5595 = call double @llvm.fmuladd.f64(double 0xBCAD7FFFFFFFFFFE, double %5594, double %5586)
  %5596 = load ptr, ptr %7, align 8, !tbaa !9
  %5597 = load i32, ptr %12, align 4, !tbaa !5
  %5598 = load i32, ptr %8, align 4, !tbaa !5
  %5599 = mul nsw i32 24, %5598
  %5600 = add nsw i32 %5597, %5599
  %5601 = sext i32 %5600 to i64
  %5602 = getelementptr inbounds double, ptr %5596, i64 %5601
  %5603 = load double, ptr %5602, align 8, !tbaa !11
  %5604 = call double @llvm.fmuladd.f64(double 0x3CB3FFFFFFFFFFFF, double %5603, double %5595)
  %5605 = load ptr, ptr %7, align 8, !tbaa !9
  %5606 = load i32, ptr %12, align 4, !tbaa !5
  %5607 = load i32, ptr %8, align 4, !tbaa !5
  %5608 = mul nsw i32 25, %5607
  %5609 = add nsw i32 %5606, %5608
  %5610 = sext i32 %5609 to i64
  %5611 = getelementptr inbounds double, ptr %5605, i64 %5610
  %5612 = load double, ptr %5611, align 8, !tbaa !11
  %5613 = call double @llvm.fmuladd.f64(double 0xBFEA0946EB3057DC, double %5612, double %5604)
  %5614 = load ptr, ptr %7, align 8, !tbaa !9
  %5615 = load i32, ptr %12, align 4, !tbaa !5
  %5616 = load i32, ptr %8, align 4, !tbaa !5
  %5617 = mul nsw i32 26, %5616
  %5618 = add nsw i32 %5615, %5617
  %5619 = sext i32 %5618 to i64
  %5620 = getelementptr inbounds double, ptr %5614, i64 %5619
  %5621 = load double, ptr %5620, align 8, !tbaa !11
  %5622 = call double @llvm.fmuladd.f64(double 0x3C9EFFFFFFFFFFFD, double %5621, double %5613)
  %5623 = load ptr, ptr %7, align 8, !tbaa !9
  %5624 = load i32, ptr %12, align 4, !tbaa !5
  %5625 = load i32, ptr %8, align 4, !tbaa !5
  %5626 = mul nsw i32 27, %5625
  %5627 = add nsw i32 %5624, %5626
  %5628 = sext i32 %5627 to i64
  %5629 = getelementptr inbounds double, ptr %5623, i64 %5628
  %5630 = load double, ptr %5629, align 8, !tbaa !11
  %5631 = call double @llvm.fmuladd.f64(double 0x3C67FFFFFFFFFFFE, double %5630, double %5622)
  %5632 = load ptr, ptr %7, align 8, !tbaa !9
  %5633 = load i32, ptr %12, align 4, !tbaa !5
  %5634 = load i32, ptr %8, align 4, !tbaa !5
  %5635 = mul nsw i32 28, %5634
  %5636 = add nsw i32 %5633, %5635
  %5637 = sext i32 %5636 to i64
  %5638 = getelementptr inbounds double, ptr %5632, i64 %5637
  %5639 = load double, ptr %5638, align 8, !tbaa !11
  %5640 = call double @llvm.fmuladd.f64(double 0x3C88000000000000, double %5639, double %5631)
  %5641 = load ptr, ptr %7, align 8, !tbaa !9
  %5642 = load i32, ptr %12, align 4, !tbaa !5
  %5643 = load i32, ptr %8, align 4, !tbaa !5
  %5644 = mul nsw i32 29, %5643
  %5645 = add nsw i32 %5642, %5644
  %5646 = sext i32 %5645 to i64
  %5647 = getelementptr inbounds double, ptr %5641, i64 %5646
  %5648 = load double, ptr %5647, align 8, !tbaa !11
  %5649 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %5648, double %5640)
  %5650 = load ptr, ptr %7, align 8, !tbaa !9
  %5651 = load i32, ptr %12, align 4, !tbaa !5
  %5652 = load i32, ptr %8, align 4, !tbaa !5
  %5653 = mul nsw i32 30, %5652
  %5654 = add nsw i32 %5651, %5653
  %5655 = sext i32 %5654 to i64
  %5656 = getelementptr inbounds double, ptr %5650, i64 %5655
  %5657 = load double, ptr %5656, align 8, !tbaa !11
  %5658 = call double @llvm.fmuladd.f64(double 0x3CB8000000000001, double %5657, double %5649)
  %5659 = load ptr, ptr %7, align 8, !tbaa !9
  %5660 = load i32, ptr %12, align 4, !tbaa !5
  %5661 = load i32, ptr %8, align 4, !tbaa !5
  %5662 = mul nsw i32 31, %5661
  %5663 = add nsw i32 %5660, %5662
  %5664 = sext i32 %5663 to i64
  %5665 = getelementptr inbounds double, ptr %5659, i64 %5664
  %5666 = load double, ptr %5665, align 8, !tbaa !11
  %5667 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %5666, double %5658)
  %5668 = load ptr, ptr %7, align 8, !tbaa !9
  %5669 = load i32, ptr %12, align 4, !tbaa !5
  %5670 = load i32, ptr %8, align 4, !tbaa !5
  %5671 = mul nsw i32 32, %5670
  %5672 = add nsw i32 %5669, %5671
  %5673 = sext i32 %5672 to i64
  %5674 = getelementptr inbounds double, ptr %5668, i64 %5673
  %5675 = load double, ptr %5674, align 8, !tbaa !11
  %5676 = call double @llvm.fmuladd.f64(double 0x3C6DFFFFFFFFFFFE, double %5675, double %5667)
  %5677 = load ptr, ptr %7, align 8, !tbaa !9
  %5678 = load i32, ptr %12, align 4, !tbaa !5
  %5679 = load i32, ptr %8, align 4, !tbaa !5
  %5680 = mul nsw i32 33, %5679
  %5681 = add nsw i32 %5678, %5680
  %5682 = sext i32 %5681 to i64
  %5683 = getelementptr inbounds double, ptr %5677, i64 %5682
  %5684 = load double, ptr %5683, align 8, !tbaa !11
  %5685 = call double @llvm.fmuladd.f64(double 0x3C9AC00000000000, double %5684, double %5676)
  %5686 = load ptr, ptr %7, align 8, !tbaa !9
  %5687 = load i32, ptr %12, align 4, !tbaa !5
  %5688 = load i32, ptr %8, align 4, !tbaa !5
  %5689 = mul nsw i32 34, %5688
  %5690 = add nsw i32 %5687, %5689
  %5691 = sext i32 %5690 to i64
  %5692 = getelementptr inbounds double, ptr %5686, i64 %5691
  %5693 = load double, ptr %5692, align 8, !tbaa !11
  %5694 = call double @llvm.fmuladd.f64(double 0x3C8C000000000000, double %5693, double %5685)
  %5695 = load ptr, ptr %7, align 8, !tbaa !9
  %5696 = load i32, ptr %12, align 4, !tbaa !5
  %5697 = load i32, ptr %8, align 4, !tbaa !5
  %5698 = mul nsw i32 35, %5697
  %5699 = add nsw i32 %5696, %5698
  %5700 = sext i32 %5699 to i64
  %5701 = getelementptr inbounds double, ptr %5695, i64 %5700
  %5702 = load double, ptr %5701, align 8, !tbaa !11
  %5703 = call double @llvm.fmuladd.f64(double 0x3FF86DB962AC2966, double %5702, double %5694)
  %5704 = load ptr, ptr %7, align 8, !tbaa !9
  %5705 = load i32, ptr %12, align 4, !tbaa !5
  %5706 = load i32, ptr %8, align 4, !tbaa !5
  %5707 = mul nsw i32 36, %5706
  %5708 = add nsw i32 %5705, %5707
  %5709 = sext i32 %5708 to i64
  %5710 = getelementptr inbounds double, ptr %5704, i64 %5709
  %5711 = load double, ptr %5710, align 8, !tbaa !11
  %5712 = call double @llvm.fmuladd.f64(double 0xBC94000000000000, double %5711, double %5703)
  %5713 = load ptr, ptr %7, align 8, !tbaa !9
  %5714 = load i32, ptr %12, align 4, !tbaa !5
  %5715 = load i32, ptr %8, align 4, !tbaa !5
  %5716 = mul nsw i32 37, %5715
  %5717 = add nsw i32 %5714, %5716
  %5718 = sext i32 %5717 to i64
  %5719 = getelementptr inbounds double, ptr %5713, i64 %5718
  %5720 = load double, ptr %5719, align 8, !tbaa !11
  %5721 = call double @llvm.fmuladd.f64(double 0xBC76000000000001, double %5720, double %5712)
  %5722 = load ptr, ptr %7, align 8, !tbaa !9
  %5723 = load i32, ptr %12, align 4, !tbaa !5
  %5724 = load i32, ptr %8, align 4, !tbaa !5
  %5725 = mul nsw i32 38, %5724
  %5726 = add nsw i32 %5723, %5725
  %5727 = sext i32 %5726 to i64
  %5728 = getelementptr inbounds double, ptr %5722, i64 %5727
  %5729 = load double, ptr %5728, align 8, !tbaa !11
  %5730 = call double @llvm.fmuladd.f64(double 0xBCB2000000000000, double %5729, double %5721)
  %5731 = load ptr, ptr %7, align 8, !tbaa !9
  %5732 = load i32, ptr %12, align 4, !tbaa !5
  %5733 = load i32, ptr %8, align 4, !tbaa !5
  %5734 = mul nsw i32 39, %5733
  %5735 = add nsw i32 %5732, %5734
  %5736 = sext i32 %5735 to i64
  %5737 = getelementptr inbounds double, ptr %5731, i64 %5736
  %5738 = load double, ptr %5737, align 8, !tbaa !11
  %5739 = call double @llvm.fmuladd.f64(double 0x3CA7000000000002, double %5738, double %5730)
  store double %5739, ptr %11, align 8, !tbaa !11
  %5740 = load double, ptr %11, align 8, !tbaa !11
  %5741 = load ptr, ptr %9, align 8, !tbaa !9
  %5742 = load i32, ptr %12, align 4, !tbaa !5
  %5743 = load i32, ptr %10, align 4, !tbaa !5
  %5744 = mul nsw i32 15, %5743
  %5745 = add nsw i32 %5742, %5744
  %5746 = sext i32 %5745 to i64
  %5747 = getelementptr inbounds double, ptr %5741, i64 %5746
  %5748 = load double, ptr %5747, align 8, !tbaa !11
  %5749 = fadd double %5748, %5740
  store double %5749, ptr %5747, align 8, !tbaa !11
  %5750 = load ptr, ptr %7, align 8, !tbaa !9
  %5751 = load i32, ptr %12, align 4, !tbaa !5
  %5752 = load i32, ptr %8, align 4, !tbaa !5
  %5753 = mul nsw i32 0, %5752
  %5754 = add nsw i32 %5751, %5753
  %5755 = sext i32 %5754 to i64
  %5756 = getelementptr inbounds double, ptr %5750, i64 %5755
  %5757 = load double, ptr %5756, align 8, !tbaa !11
  %5758 = load ptr, ptr %7, align 8, !tbaa !9
  %5759 = load i32, ptr %12, align 4, !tbaa !5
  %5760 = load i32, ptr %8, align 4, !tbaa !5
  %5761 = mul nsw i32 1, %5760
  %5762 = add nsw i32 %5759, %5761
  %5763 = sext i32 %5762 to i64
  %5764 = getelementptr inbounds double, ptr %5758, i64 %5763
  %5765 = load double, ptr %5764, align 8, !tbaa !11
  %5766 = fmul double 0xBC76000000000001, %5765
  %5767 = call double @llvm.fmuladd.f64(double 0x3CB3000000000000, double %5757, double %5766)
  %5768 = load ptr, ptr %7, align 8, !tbaa !9
  %5769 = load i32, ptr %12, align 4, !tbaa !5
  %5770 = load i32, ptr %8, align 4, !tbaa !5
  %5771 = mul nsw i32 2, %5770
  %5772 = add nsw i32 %5769, %5771
  %5773 = sext i32 %5772 to i64
  %5774 = getelementptr inbounds double, ptr %5768, i64 %5773
  %5775 = load double, ptr %5774, align 8, !tbaa !11
  %5776 = call double @llvm.fmuladd.f64(double 0xBC99200000000000, double %5775, double %5767)
  %5777 = load ptr, ptr %7, align 8, !tbaa !9
  %5778 = load i32, ptr %12, align 4, !tbaa !5
  %5779 = load i32, ptr %8, align 4, !tbaa !5
  %5780 = mul nsw i32 3, %5779
  %5781 = add nsw i32 %5778, %5780
  %5782 = sext i32 %5781 to i64
  %5783 = getelementptr inbounds double, ptr %5777, i64 %5782
  %5784 = load double, ptr %5783, align 8, !tbaa !11
  %5785 = call double @llvm.fmuladd.f64(double 0x3CAE100000000002, double %5784, double %5776)
  %5786 = load ptr, ptr %7, align 8, !tbaa !9
  %5787 = load i32, ptr %12, align 4, !tbaa !5
  %5788 = load i32, ptr %8, align 4, !tbaa !5
  %5789 = mul nsw i32 4, %5788
  %5790 = add nsw i32 %5787, %5789
  %5791 = sext i32 %5790 to i64
  %5792 = getelementptr inbounds double, ptr %5786, i64 %5791
  %5793 = load double, ptr %5792, align 8, !tbaa !11
  %5794 = call double @llvm.fmuladd.f64(double 0x3C86FFFFFFFFFFFF, double %5793, double %5785)
  %5795 = load ptr, ptr %7, align 8, !tbaa !9
  %5796 = load i32, ptr %12, align 4, !tbaa !5
  %5797 = load i32, ptr %8, align 4, !tbaa !5
  %5798 = mul nsw i32 5, %5797
  %5799 = add nsw i32 %5796, %5798
  %5800 = sext i32 %5799 to i64
  %5801 = getelementptr inbounds double, ptr %5795, i64 %5800
  %5802 = load double, ptr %5801, align 8, !tbaa !11
  %5803 = call double @llvm.fmuladd.f64(double 0x3C99800000000000, double %5802, double %5794)
  %5804 = load ptr, ptr %7, align 8, !tbaa !9
  %5805 = load i32, ptr %12, align 4, !tbaa !5
  %5806 = load i32, ptr %8, align 4, !tbaa !5
  %5807 = mul nsw i32 6, %5806
  %5808 = add nsw i32 %5805, %5807
  %5809 = sext i32 %5808 to i64
  %5810 = getelementptr inbounds double, ptr %5804, i64 %5809
  %5811 = load double, ptr %5810, align 8, !tbaa !11
  %5812 = call double @llvm.fmuladd.f64(double 0xBFBD29AD687BB06B, double %5811, double %5803)
  %5813 = load ptr, ptr %7, align 8, !tbaa !9
  %5814 = load i32, ptr %12, align 4, !tbaa !5
  %5815 = load i32, ptr %8, align 4, !tbaa !5
  %5816 = mul nsw i32 7, %5815
  %5817 = add nsw i32 %5814, %5816
  %5818 = sext i32 %5817 to i64
  %5819 = getelementptr inbounds double, ptr %5813, i64 %5818
  %5820 = load double, ptr %5819, align 8, !tbaa !11
  %5821 = call double @llvm.fmuladd.f64(double 0x3C8D800000000000, double %5820, double %5812)
  %5822 = load ptr, ptr %7, align 8, !tbaa !9
  %5823 = load i32, ptr %12, align 4, !tbaa !5
  %5824 = load i32, ptr %8, align 4, !tbaa !5
  %5825 = mul nsw i32 8, %5824
  %5826 = add nsw i32 %5823, %5825
  %5827 = sext i32 %5826 to i64
  %5828 = getelementptr inbounds double, ptr %5822, i64 %5827
  %5829 = load double, ptr %5828, align 8, !tbaa !11
  %5830 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %5829, double %5821)
  %5831 = load ptr, ptr %7, align 8, !tbaa !9
  %5832 = load i32, ptr %12, align 4, !tbaa !5
  %5833 = load i32, ptr %8, align 4, !tbaa !5
  %5834 = mul nsw i32 9, %5833
  %5835 = add nsw i32 %5832, %5834
  %5836 = sext i32 %5835 to i64
  %5837 = getelementptr inbounds double, ptr %5831, i64 %5836
  %5838 = load double, ptr %5837, align 8, !tbaa !11
  %5839 = call double @llvm.fmuladd.f64(double 0xBC60000000000000, double %5838, double %5830)
  %5840 = load ptr, ptr %7, align 8, !tbaa !9
  %5841 = load i32, ptr %12, align 4, !tbaa !5
  %5842 = load i32, ptr %8, align 4, !tbaa !5
  %5843 = mul nsw i32 10, %5842
  %5844 = add nsw i32 %5841, %5843
  %5845 = sext i32 %5844 to i64
  %5846 = getelementptr inbounds double, ptr %5840, i64 %5845
  %5847 = load double, ptr %5846, align 8, !tbaa !11
  %5848 = call double @llvm.fmuladd.f64(double 0xBCB0000000000000, double %5847, double %5839)
  %5849 = load ptr, ptr %7, align 8, !tbaa !9
  %5850 = load i32, ptr %12, align 4, !tbaa !5
  %5851 = load i32, ptr %8, align 4, !tbaa !5
  %5852 = mul nsw i32 12, %5851
  %5853 = add nsw i32 %5850, %5852
  %5854 = sext i32 %5853 to i64
  %5855 = getelementptr inbounds double, ptr %5849, i64 %5854
  %5856 = load double, ptr %5855, align 8, !tbaa !11
  %5857 = call double @llvm.fmuladd.f64(double 0xBC85000000000000, double %5856, double %5848)
  %5858 = load ptr, ptr %7, align 8, !tbaa !9
  %5859 = load i32, ptr %12, align 4, !tbaa !5
  %5860 = load i32, ptr %8, align 4, !tbaa !5
  %5861 = mul nsw i32 13, %5860
  %5862 = add nsw i32 %5859, %5861
  %5863 = sext i32 %5862 to i64
  %5864 = getelementptr inbounds double, ptr %5858, i64 %5863
  %5865 = load double, ptr %5864, align 8, !tbaa !11
  %5866 = call double @llvm.fmuladd.f64(double 0xBC8B800000000001, double %5865, double %5857)
  %5867 = load ptr, ptr %7, align 8, !tbaa !9
  %5868 = load i32, ptr %12, align 4, !tbaa !5
  %5869 = load i32, ptr %8, align 4, !tbaa !5
  %5870 = mul nsw i32 14, %5869
  %5871 = add nsw i32 %5868, %5870
  %5872 = sext i32 %5871 to i64
  %5873 = getelementptr inbounds double, ptr %5867, i64 %5872
  %5874 = load double, ptr %5873, align 8, !tbaa !11
  %5875 = call double @llvm.fmuladd.f64(double 0x3C8E000000000000, double %5874, double %5866)
  %5876 = load ptr, ptr %7, align 8, !tbaa !9
  %5877 = load i32, ptr %12, align 4, !tbaa !5
  %5878 = load i32, ptr %8, align 4, !tbaa !5
  %5879 = mul nsw i32 15, %5878
  %5880 = add nsw i32 %5877, %5879
  %5881 = sext i32 %5880 to i64
  %5882 = getelementptr inbounds double, ptr %5876, i64 %5881
  %5883 = load double, ptr %5882, align 8, !tbaa !11
  %5884 = call double @llvm.fmuladd.f64(double 0xBCAB800000000001, double %5883, double %5875)
  %5885 = load ptr, ptr %7, align 8, !tbaa !9
  %5886 = load i32, ptr %12, align 4, !tbaa !5
  %5887 = load i32, ptr %8, align 4, !tbaa !5
  %5888 = mul nsw i32 16, %5887
  %5889 = add nsw i32 %5886, %5888
  %5890 = sext i32 %5889 to i64
  %5891 = getelementptr inbounds double, ptr %5885, i64 %5890
  %5892 = load double, ptr %5891, align 8, !tbaa !11
  %5893 = call double @llvm.fmuladd.f64(double 0x3FD9A613A5CEF639, double %5892, double %5884)
  %5894 = load ptr, ptr %7, align 8, !tbaa !9
  %5895 = load i32, ptr %12, align 4, !tbaa !5
  %5896 = load i32, ptr %8, align 4, !tbaa !5
  %5897 = mul nsw i32 17, %5896
  %5898 = add nsw i32 %5895, %5897
  %5899 = sext i32 %5898 to i64
  %5900 = getelementptr inbounds double, ptr %5894, i64 %5899
  %5901 = load double, ptr %5900, align 8, !tbaa !11
  %5902 = call double @llvm.fmuladd.f64(double 0xBC91000000000000, double %5901, double %5893)
  %5903 = load ptr, ptr %7, align 8, !tbaa !9
  %5904 = load i32, ptr %12, align 4, !tbaa !5
  %5905 = load i32, ptr %8, align 4, !tbaa !5
  %5906 = mul nsw i32 18, %5905
  %5907 = add nsw i32 %5904, %5906
  %5908 = sext i32 %5907 to i64
  %5909 = getelementptr inbounds double, ptr %5903, i64 %5908
  %5910 = load double, ptr %5909, align 8, !tbaa !11
  %5911 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %5910, double %5902)
  %5912 = load ptr, ptr %7, align 8, !tbaa !9
  %5913 = load i32, ptr %12, align 4, !tbaa !5
  %5914 = load i32, ptr %8, align 4, !tbaa !5
  %5915 = mul nsw i32 19, %5914
  %5916 = add nsw i32 %5913, %5915
  %5917 = sext i32 %5916 to i64
  %5918 = getelementptr inbounds double, ptr %5912, i64 %5917
  %5919 = load double, ptr %5918, align 8, !tbaa !11
  %5920 = call double @llvm.fmuladd.f64(double 0x3C84000000000000, double %5919, double %5911)
  %5921 = load ptr, ptr %7, align 8, !tbaa !9
  %5922 = load i32, ptr %12, align 4, !tbaa !5
  %5923 = load i32, ptr %8, align 4, !tbaa !5
  %5924 = mul nsw i32 20, %5923
  %5925 = add nsw i32 %5922, %5924
  %5926 = sext i32 %5925 to i64
  %5927 = getelementptr inbounds double, ptr %5921, i64 %5926
  %5928 = load double, ptr %5927, align 8, !tbaa !11
  %5929 = call double @llvm.fmuladd.f64(double 0x3CC0000000000000, double %5928, double %5920)
  %5930 = load ptr, ptr %7, align 8, !tbaa !9
  %5931 = load i32, ptr %12, align 4, !tbaa !5
  %5932 = load i32, ptr %8, align 4, !tbaa !5
  %5933 = mul nsw i32 21, %5932
  %5934 = add nsw i32 %5931, %5933
  %5935 = sext i32 %5934 to i64
  %5936 = getelementptr inbounds double, ptr %5930, i64 %5935
  %5937 = load double, ptr %5936, align 8, !tbaa !11
  %5938 = call double @llvm.fmuladd.f64(double 0xBC92000000000000, double %5937, double %5929)
  %5939 = load ptr, ptr %7, align 8, !tbaa !9
  %5940 = load i32, ptr %12, align 4, !tbaa !5
  %5941 = load i32, ptr %8, align 4, !tbaa !5
  %5942 = mul nsw i32 22, %5941
  %5943 = add nsw i32 %5940, %5942
  %5944 = sext i32 %5943 to i64
  %5945 = getelementptr inbounds double, ptr %5939, i64 %5944
  %5946 = load double, ptr %5945, align 8, !tbaa !11
  %5947 = call double @llvm.fmuladd.f64(double 0x3C91800000000000, double %5946, double %5938)
  %5948 = load ptr, ptr %7, align 8, !tbaa !9
  %5949 = load i32, ptr %12, align 4, !tbaa !5
  %5950 = load i32, ptr %8, align 4, !tbaa !5
  %5951 = mul nsw i32 23, %5950
  %5952 = add nsw i32 %5949, %5951
  %5953 = sext i32 %5952 to i64
  %5954 = getelementptr inbounds double, ptr %5948, i64 %5953
  %5955 = load double, ptr %5954, align 8, !tbaa !11
  %5956 = call double @llvm.fmuladd.f64(double 0x3C30000000000000, double %5955, double %5947)
  %5957 = load ptr, ptr %7, align 8, !tbaa !9
  %5958 = load i32, ptr %12, align 4, !tbaa !5
  %5959 = load i32, ptr %8, align 4, !tbaa !5
  %5960 = mul nsw i32 24, %5959
  %5961 = add nsw i32 %5958, %5960
  %5962 = sext i32 %5961 to i64
  %5963 = getelementptr inbounds double, ptr %5957, i64 %5962
  %5964 = load double, ptr %5963, align 8, !tbaa !11
  %5965 = call double @llvm.fmuladd.f64(double 0x3C82000000000000, double %5964, double %5956)
  %5966 = load ptr, ptr %7, align 8, !tbaa !9
  %5967 = load i32, ptr %12, align 4, !tbaa !5
  %5968 = load i32, ptr %8, align 4, !tbaa !5
  %5969 = mul nsw i32 25, %5968
  %5970 = add nsw i32 %5967, %5969
  %5971 = sext i32 %5970 to i64
  %5972 = getelementptr inbounds double, ptr %5966, i64 %5971
  %5973 = load double, ptr %5972, align 8, !tbaa !11
  %5974 = call double @llvm.fmuladd.f64(double 0xBC95000000000000, double %5973, double %5965)
  %5975 = load ptr, ptr %7, align 8, !tbaa !9
  %5976 = load i32, ptr %12, align 4, !tbaa !5
  %5977 = load i32, ptr %8, align 4, !tbaa !5
  %5978 = mul nsw i32 26, %5977
  %5979 = add nsw i32 %5976, %5978
  %5980 = sext i32 %5979 to i64
  %5981 = getelementptr inbounds double, ptr %5975, i64 %5980
  %5982 = load double, ptr %5981, align 8, !tbaa !11
  %5983 = call double @llvm.fmuladd.f64(double 0xBFEA0946EB3057DA, double %5982, double %5974)
  %5984 = load ptr, ptr %7, align 8, !tbaa !9
  %5985 = load i32, ptr %12, align 4, !tbaa !5
  %5986 = load i32, ptr %8, align 4, !tbaa !5
  %5987 = mul nsw i32 27, %5986
  %5988 = add nsw i32 %5985, %5987
  %5989 = sext i32 %5988 to i64
  %5990 = getelementptr inbounds double, ptr %5984, i64 %5989
  %5991 = load double, ptr %5990, align 8, !tbaa !11
  %5992 = call double @llvm.fmuladd.f64(double 0xBCA6BFFFFFFFFFFE, double %5991, double %5983)
  %5993 = load ptr, ptr %7, align 8, !tbaa !9
  %5994 = load i32, ptr %12, align 4, !tbaa !5
  %5995 = load i32, ptr %8, align 4, !tbaa !5
  %5996 = mul nsw i32 28, %5995
  %5997 = add nsw i32 %5994, %5996
  %5998 = sext i32 %5997 to i64
  %5999 = getelementptr inbounds double, ptr %5993, i64 %5998
  %6000 = load double, ptr %5999, align 8, !tbaa !11
  %6001 = call double @llvm.fmuladd.f64(double 0x3C8C000000000000, double %6000, double %5992)
  %6002 = load ptr, ptr %7, align 8, !tbaa !9
  %6003 = load i32, ptr %12, align 4, !tbaa !5
  %6004 = load i32, ptr %8, align 4, !tbaa !5
  %6005 = mul nsw i32 29, %6004
  %6006 = add nsw i32 %6003, %6005
  %6007 = sext i32 %6006 to i64
  %6008 = getelementptr inbounds double, ptr %6002, i64 %6007
  %6009 = load double, ptr %6008, align 8, !tbaa !11
  %6010 = call double @llvm.fmuladd.f64(double 0xBC8C000000000000, double %6009, double %6001)
  %6011 = load ptr, ptr %7, align 8, !tbaa !9
  %6012 = load i32, ptr %12, align 4, !tbaa !5
  %6013 = load i32, ptr %8, align 4, !tbaa !5
  %6014 = mul nsw i32 30, %6013
  %6015 = add nsw i32 %6012, %6014
  %6016 = sext i32 %6015 to i64
  %6017 = getelementptr inbounds double, ptr %6011, i64 %6016
  %6018 = load double, ptr %6017, align 8, !tbaa !11
  %6019 = call double @llvm.fmuladd.f64(double 0x3CAC000000000000, double %6018, double %6010)
  %6020 = load ptr, ptr %7, align 8, !tbaa !9
  %6021 = load i32, ptr %12, align 4, !tbaa !5
  %6022 = load i32, ptr %8, align 4, !tbaa !5
  %6023 = mul nsw i32 31, %6022
  %6024 = add nsw i32 %6021, %6023
  %6025 = sext i32 %6024 to i64
  %6026 = getelementptr inbounds double, ptr %6020, i64 %6025
  %6027 = load double, ptr %6026, align 8, !tbaa !11
  %6028 = call double @llvm.fmuladd.f64(double 0x3C91800000000000, double %6027, double %6019)
  %6029 = load ptr, ptr %7, align 8, !tbaa !9
  %6030 = load i32, ptr %12, align 4, !tbaa !5
  %6031 = load i32, ptr %8, align 4, !tbaa !5
  %6032 = mul nsw i32 32, %6031
  %6033 = add nsw i32 %6030, %6032
  %6034 = sext i32 %6033 to i64
  %6035 = getelementptr inbounds double, ptr %6029, i64 %6034
  %6036 = load double, ptr %6035, align 8, !tbaa !11
  %6037 = call double @llvm.fmuladd.f64(double 0xBC74000000000000, double %6036, double %6028)
  %6038 = load ptr, ptr %7, align 8, !tbaa !9
  %6039 = load i32, ptr %12, align 4, !tbaa !5
  %6040 = load i32, ptr %8, align 4, !tbaa !5
  %6041 = mul nsw i32 33, %6040
  %6042 = add nsw i32 %6039, %6041
  %6043 = sext i32 %6042 to i64
  %6044 = getelementptr inbounds double, ptr %6038, i64 %6043
  %6045 = load double, ptr %6044, align 8, !tbaa !11
  %6046 = call double @llvm.fmuladd.f64(double 0xBC72800000000001, double %6045, double %6037)
  %6047 = load ptr, ptr %7, align 8, !tbaa !9
  %6048 = load i32, ptr %12, align 4, !tbaa !5
  %6049 = load i32, ptr %8, align 4, !tbaa !5
  %6050 = mul nsw i32 34, %6049
  %6051 = add nsw i32 %6048, %6050
  %6052 = sext i32 %6051 to i64
  %6053 = getelementptr inbounds double, ptr %6047, i64 %6052
  %6054 = load double, ptr %6053, align 8, !tbaa !11
  %6055 = call double @llvm.fmuladd.f64(double 0xBC76000000000001, double %6054, double %6046)
  %6056 = load ptr, ptr %7, align 8, !tbaa !9
  %6057 = load i32, ptr %12, align 4, !tbaa !5
  %6058 = load i32, ptr %8, align 4, !tbaa !5
  %6059 = mul nsw i32 35, %6058
  %6060 = add nsw i32 %6057, %6059
  %6061 = sext i32 %6060 to i64
  %6062 = getelementptr inbounds double, ptr %6056, i64 %6061
  %6063 = load double, ptr %6062, align 8, !tbaa !11
  %6064 = call double @llvm.fmuladd.f64(double 0xBC6C000000000000, double %6063, double %6055)
  %6065 = load ptr, ptr %7, align 8, !tbaa !9
  %6066 = load i32, ptr %12, align 4, !tbaa !5
  %6067 = load i32, ptr %8, align 4, !tbaa !5
  %6068 = mul nsw i32 36, %6067
  %6069 = add nsw i32 %6066, %6068
  %6070 = sext i32 %6069 to i64
  %6071 = getelementptr inbounds double, ptr %6065, i64 %6070
  %6072 = load double, ptr %6071, align 8, !tbaa !11
  %6073 = call double @llvm.fmuladd.f64(double 0x3FF86DB962AC2966, double %6072, double %6064)
  %6074 = load ptr, ptr %7, align 8, !tbaa !9
  %6075 = load i32, ptr %12, align 4, !tbaa !5
  %6076 = load i32, ptr %8, align 4, !tbaa !5
  %6077 = mul nsw i32 37, %6076
  %6078 = add nsw i32 %6075, %6077
  %6079 = sext i32 %6078 to i64
  %6080 = getelementptr inbounds double, ptr %6074, i64 %6079
  %6081 = load double, ptr %6080, align 8, !tbaa !11
  %6082 = call double @llvm.fmuladd.f64(double 0xBC9C800000000000, double %6081, double %6073)
  %6083 = load ptr, ptr %7, align 8, !tbaa !9
  %6084 = load i32, ptr %12, align 4, !tbaa !5
  %6085 = load i32, ptr %8, align 4, !tbaa !5
  %6086 = mul nsw i32 38, %6085
  %6087 = add nsw i32 %6084, %6086
  %6088 = sext i32 %6087 to i64
  %6089 = getelementptr inbounds double, ptr %6083, i64 %6088
  %6090 = load double, ptr %6089, align 8, !tbaa !11
  %6091 = call double @llvm.fmuladd.f64(double 0xBC99000000000000, double %6090, double %6082)
  %6092 = load ptr, ptr %7, align 8, !tbaa !9
  %6093 = load i32, ptr %12, align 4, !tbaa !5
  %6094 = load i32, ptr %8, align 4, !tbaa !5
  %6095 = mul nsw i32 39, %6094
  %6096 = add nsw i32 %6093, %6095
  %6097 = sext i32 %6096 to i64
  %6098 = getelementptr inbounds double, ptr %6092, i64 %6097
  %6099 = load double, ptr %6098, align 8, !tbaa !11
  %6100 = call double @llvm.fmuladd.f64(double 0xBC78000000000002, double %6099, double %6091)
  store double %6100, ptr %11, align 8, !tbaa !11
  %6101 = load double, ptr %11, align 8, !tbaa !11
  %6102 = load ptr, ptr %9, align 8, !tbaa !9
  %6103 = load i32, ptr %12, align 4, !tbaa !5
  %6104 = load i32, ptr %10, align 4, !tbaa !5
  %6105 = mul nsw i32 16, %6104
  %6106 = add nsw i32 %6103, %6105
  %6107 = sext i32 %6106 to i64
  %6108 = getelementptr inbounds double, ptr %6102, i64 %6107
  %6109 = load double, ptr %6108, align 8, !tbaa !11
  %6110 = fadd double %6109, %6101
  store double %6110, ptr %6108, align 8, !tbaa !11
  %6111 = load ptr, ptr %7, align 8, !tbaa !9
  %6112 = load i32, ptr %12, align 4, !tbaa !5
  %6113 = load i32, ptr %8, align 4, !tbaa !5
  %6114 = mul nsw i32 0, %6113
  %6115 = add nsw i32 %6112, %6114
  %6116 = sext i32 %6115 to i64
  %6117 = getelementptr inbounds double, ptr %6111, i64 %6116
  %6118 = load double, ptr %6117, align 8, !tbaa !11
  %6119 = load ptr, ptr %7, align 8, !tbaa !9
  %6120 = load i32, ptr %12, align 4, !tbaa !5
  %6121 = load i32, ptr %8, align 4, !tbaa !5
  %6122 = mul nsw i32 1, %6121
  %6123 = add nsw i32 %6120, %6122
  %6124 = sext i32 %6123 to i64
  %6125 = getelementptr inbounds double, ptr %6119, i64 %6124
  %6126 = load double, ptr %6125, align 8, !tbaa !11
  %6127 = fmul double 0x3C9EFFFFFFFFFFFD, %6126
  %6128 = call double @llvm.fmuladd.f64(double 0xBCB8800000000000, double %6118, double %6127)
  %6129 = load ptr, ptr %7, align 8, !tbaa !9
  %6130 = load i32, ptr %12, align 4, !tbaa !5
  %6131 = load i32, ptr %8, align 4, !tbaa !5
  %6132 = mul nsw i32 2, %6131
  %6133 = add nsw i32 %6130, %6132
  %6134 = sext i32 %6133 to i64
  %6135 = getelementptr inbounds double, ptr %6129, i64 %6134
  %6136 = load double, ptr %6135, align 8, !tbaa !11
  %6137 = call double @llvm.fmuladd.f64(double 0xBC9E5FFFFFFFFFFD, double %6136, double %6128)
  %6138 = load ptr, ptr %7, align 8, !tbaa !9
  %6139 = load i32, ptr %12, align 4, !tbaa !5
  %6140 = load i32, ptr %8, align 4, !tbaa !5
  %6141 = mul nsw i32 3, %6140
  %6142 = add nsw i32 %6139, %6141
  %6143 = sext i32 %6142 to i64
  %6144 = getelementptr inbounds double, ptr %6138, i64 %6143
  %6145 = load double, ptr %6144, align 8, !tbaa !11
  %6146 = call double @llvm.fmuladd.f64(double 0x3C92200000000000, double %6145, double %6137)
  %6147 = load ptr, ptr %7, align 8, !tbaa !9
  %6148 = load i32, ptr %12, align 4, !tbaa !5
  %6149 = load i32, ptr %8, align 4, !tbaa !5
  %6150 = mul nsw i32 4, %6149
  %6151 = add nsw i32 %6148, %6150
  %6152 = sext i32 %6151 to i64
  %6153 = getelementptr inbounds double, ptr %6147, i64 %6152
  %6154 = load double, ptr %6153, align 8, !tbaa !11
  %6155 = call double @llvm.fmuladd.f64(double 0xBCA4400000000001, double %6154, double %6146)
  %6156 = load ptr, ptr %7, align 8, !tbaa !9
  %6157 = load i32, ptr %12, align 4, !tbaa !5
  %6158 = load i32, ptr %8, align 4, !tbaa !5
  %6159 = mul nsw i32 5, %6158
  %6160 = add nsw i32 %6157, %6159
  %6161 = sext i32 %6160 to i64
  %6162 = getelementptr inbounds double, ptr %6156, i64 %6161
  %6163 = load double, ptr %6162, align 8, !tbaa !11
  %6164 = call double @llvm.fmuladd.f64(double 0xBC71FFFFFFFFFFFF, double %6163, double %6155)
  %6165 = load ptr, ptr %7, align 8, !tbaa !9
  %6166 = load i32, ptr %12, align 4, !tbaa !5
  %6167 = load i32, ptr %8, align 4, !tbaa !5
  %6168 = mul nsw i32 6, %6167
  %6169 = add nsw i32 %6166, %6168
  %6170 = sext i32 %6169 to i64
  %6171 = getelementptr inbounds double, ptr %6165, i64 %6170
  %6172 = load double, ptr %6171, align 8, !tbaa !11
  %6173 = call double @llvm.fmuladd.f64(double 0x3C96400000000000, double %6172, double %6164)
  %6174 = load ptr, ptr %7, align 8, !tbaa !9
  %6175 = load i32, ptr %12, align 4, !tbaa !5
  %6176 = load i32, ptr %8, align 4, !tbaa !5
  %6177 = mul nsw i32 7, %6176
  %6178 = add nsw i32 %6175, %6177
  %6179 = sext i32 %6178 to i64
  %6180 = getelementptr inbounds double, ptr %6174, i64 %6179
  %6181 = load double, ptr %6180, align 8, !tbaa !11
  %6182 = call double @llvm.fmuladd.f64(double 0xBFBD29AD687BB056, double %6181, double %6173)
  %6183 = load ptr, ptr %7, align 8, !tbaa !9
  %6184 = load i32, ptr %12, align 4, !tbaa !5
  %6185 = load i32, ptr %8, align 4, !tbaa !5
  %6186 = mul nsw i32 8, %6185
  %6187 = add nsw i32 %6184, %6186
  %6188 = sext i32 %6187 to i64
  %6189 = getelementptr inbounds double, ptr %6183, i64 %6188
  %6190 = load double, ptr %6189, align 8, !tbaa !11
  %6191 = call double @llvm.fmuladd.f64(double 0x3CB07FFFFFFFFFFF, double %6190, double %6182)
  %6192 = load ptr, ptr %7, align 8, !tbaa !9
  %6193 = load i32, ptr %12, align 4, !tbaa !5
  %6194 = load i32, ptr %8, align 4, !tbaa !5
  %6195 = mul nsw i32 10, %6194
  %6196 = add nsw i32 %6193, %6195
  %6197 = sext i32 %6196 to i64
  %6198 = getelementptr inbounds double, ptr %6192, i64 %6197
  %6199 = load double, ptr %6198, align 8, !tbaa !11
  %6200 = call double @llvm.fmuladd.f64(double 0x3CB8000000000001, double %6199, double %6191)
  %6201 = load ptr, ptr %7, align 8, !tbaa !9
  %6202 = load i32, ptr %12, align 4, !tbaa !5
  %6203 = load i32, ptr %8, align 4, !tbaa !5
  %6204 = mul nsw i32 11, %6203
  %6205 = add nsw i32 %6202, %6204
  %6206 = sext i32 %6205 to i64
  %6207 = getelementptr inbounds double, ptr %6201, i64 %6206
  %6208 = load double, ptr %6207, align 8, !tbaa !11
  %6209 = call double @llvm.fmuladd.f64(double 0xBC9A000000000000, double %6208, double %6200)
  %6210 = load ptr, ptr %7, align 8, !tbaa !9
  %6211 = load i32, ptr %12, align 4, !tbaa !5
  %6212 = load i32, ptr %8, align 4, !tbaa !5
  %6213 = mul nsw i32 12, %6212
  %6214 = add nsw i32 %6211, %6213
  %6215 = sext i32 %6214 to i64
  %6216 = getelementptr inbounds double, ptr %6210, i64 %6215
  %6217 = load double, ptr %6216, align 8, !tbaa !11
  %6218 = call double @llvm.fmuladd.f64(double 0x3C82FFFFFFFFFFFF, double %6217, double %6209)
  %6219 = load ptr, ptr %7, align 8, !tbaa !9
  %6220 = load i32, ptr %12, align 4, !tbaa !5
  %6221 = load i32, ptr %8, align 4, !tbaa !5
  %6222 = mul nsw i32 13, %6221
  %6223 = add nsw i32 %6220, %6222
  %6224 = sext i32 %6223 to i64
  %6225 = getelementptr inbounds double, ptr %6219, i64 %6224
  %6226 = load double, ptr %6225, align 8, !tbaa !11
  %6227 = call double @llvm.fmuladd.f64(double 0x3C6DFFFFFFFFFFFE, double %6226, double %6218)
  %6228 = load ptr, ptr %7, align 8, !tbaa !9
  %6229 = load i32, ptr %12, align 4, !tbaa !5
  %6230 = load i32, ptr %8, align 4, !tbaa !5
  %6231 = mul nsw i32 14, %6230
  %6232 = add nsw i32 %6229, %6231
  %6233 = sext i32 %6232 to i64
  %6234 = getelementptr inbounds double, ptr %6228, i64 %6233
  %6235 = load double, ptr %6234, align 8, !tbaa !11
  %6236 = call double @llvm.fmuladd.f64(double 0xBCA0800000000001, double %6235, double %6227)
  %6237 = load ptr, ptr %7, align 8, !tbaa !9
  %6238 = load i32, ptr %12, align 4, !tbaa !5
  %6239 = load i32, ptr %8, align 4, !tbaa !5
  %6240 = mul nsw i32 15, %6239
  %6241 = add nsw i32 %6238, %6240
  %6242 = sext i32 %6241 to i64
  %6243 = getelementptr inbounds double, ptr %6237, i64 %6242
  %6244 = load double, ptr %6243, align 8, !tbaa !11
  %6245 = call double @llvm.fmuladd.f64(double 0xBCB1C00000000000, double %6244, double %6236)
  %6246 = load ptr, ptr %7, align 8, !tbaa !9
  %6247 = load i32, ptr %12, align 4, !tbaa !5
  %6248 = load i32, ptr %8, align 4, !tbaa !5
  %6249 = mul nsw i32 16, %6248
  %6250 = add nsw i32 %6247, %6249
  %6251 = sext i32 %6250 to i64
  %6252 = getelementptr inbounds double, ptr %6246, i64 %6251
  %6253 = load double, ptr %6252, align 8, !tbaa !11
  %6254 = call double @llvm.fmuladd.f64(double 0xBC9E7FFFFFFFFFFD, double %6253, double %6245)
  %6255 = load ptr, ptr %7, align 8, !tbaa !9
  %6256 = load i32, ptr %12, align 4, !tbaa !5
  %6257 = load i32, ptr %8, align 4, !tbaa !5
  %6258 = mul nsw i32 17, %6257
  %6259 = add nsw i32 %6256, %6258
  %6260 = sext i32 %6259 to i64
  %6261 = getelementptr inbounds double, ptr %6255, i64 %6260
  %6262 = load double, ptr %6261, align 8, !tbaa !11
  %6263 = call double @llvm.fmuladd.f64(double 0x3FD9A613A5CEF63B, double %6262, double %6254)
  %6264 = load ptr, ptr %7, align 8, !tbaa !9
  %6265 = load i32, ptr %12, align 4, !tbaa !5
  %6266 = load i32, ptr %8, align 4, !tbaa !5
  %6267 = mul nsw i32 18, %6266
  %6268 = add nsw i32 %6265, %6267
  %6269 = sext i32 %6268 to i64
  %6270 = getelementptr inbounds double, ptr %6264, i64 %6269
  %6271 = load double, ptr %6270, align 8, !tbaa !11
  %6272 = call double @llvm.fmuladd.f64(double 0x3C88000000000000, double %6271, double %6263)
  %6273 = load ptr, ptr %7, align 8, !tbaa !9
  %6274 = load i32, ptr %12, align 4, !tbaa !5
  %6275 = load i32, ptr %8, align 4, !tbaa !5
  %6276 = mul nsw i32 19, %6275
  %6277 = add nsw i32 %6274, %6276
  %6278 = sext i32 %6277 to i64
  %6279 = getelementptr inbounds double, ptr %6273, i64 %6278
  %6280 = load double, ptr %6279, align 8, !tbaa !11
  %6281 = call double @llvm.fmuladd.f64(double 0x3C84000000000000, double %6280, double %6272)
  %6282 = load ptr, ptr %7, align 8, !tbaa !9
  %6283 = load i32, ptr %12, align 4, !tbaa !5
  %6284 = load i32, ptr %8, align 4, !tbaa !5
  %6285 = mul nsw i32 21, %6284
  %6286 = add nsw i32 %6283, %6285
  %6287 = sext i32 %6286 to i64
  %6288 = getelementptr inbounds double, ptr %6282, i64 %6287
  %6289 = load double, ptr %6288, align 8, !tbaa !11
  %6290 = call double @llvm.fmuladd.f64(double 0xBC9C000000000000, double %6289, double %6281)
  %6291 = load ptr, ptr %7, align 8, !tbaa !9
  %6292 = load i32, ptr %12, align 4, !tbaa !5
  %6293 = load i32, ptr %8, align 4, !tbaa !5
  %6294 = mul nsw i32 22, %6293
  %6295 = add nsw i32 %6292, %6294
  %6296 = sext i32 %6295 to i64
  %6297 = getelementptr inbounds double, ptr %6291, i64 %6296
  %6298 = load double, ptr %6297, align 8, !tbaa !11
  %6299 = call double @llvm.fmuladd.f64(double 0xBC97000000000000, double %6298, double %6290)
  %6300 = load ptr, ptr %7, align 8, !tbaa !9
  %6301 = load i32, ptr %12, align 4, !tbaa !5
  %6302 = load i32, ptr %8, align 4, !tbaa !5
  %6303 = mul nsw i32 23, %6302
  %6304 = add nsw i32 %6301, %6303
  %6305 = sext i32 %6304 to i64
  %6306 = getelementptr inbounds double, ptr %6300, i64 %6305
  %6307 = load double, ptr %6306, align 8, !tbaa !11
  %6308 = call double @llvm.fmuladd.f64(double 0x3CA5200000000000, double %6307, double %6299)
  %6309 = load ptr, ptr %7, align 8, !tbaa !9
  %6310 = load i32, ptr %12, align 4, !tbaa !5
  %6311 = load i32, ptr %8, align 4, !tbaa !5
  %6312 = mul nsw i32 24, %6311
  %6313 = add nsw i32 %6310, %6312
  %6314 = sext i32 %6313 to i64
  %6315 = getelementptr inbounds double, ptr %6309, i64 %6314
  %6316 = load double, ptr %6315, align 8, !tbaa !11
  %6317 = call double @llvm.fmuladd.f64(double 0x3C99000000000000, double %6316, double %6308)
  %6318 = load ptr, ptr %7, align 8, !tbaa !9
  %6319 = load i32, ptr %12, align 4, !tbaa !5
  %6320 = load i32, ptr %8, align 4, !tbaa !5
  %6321 = mul nsw i32 25, %6320
  %6322 = add nsw i32 %6319, %6321
  %6323 = sext i32 %6322 to i64
  %6324 = getelementptr inbounds double, ptr %6318, i64 %6323
  %6325 = load double, ptr %6324, align 8, !tbaa !11
  %6326 = call double @llvm.fmuladd.f64(double 0x3C8E000000000000, double %6325, double %6317)
  %6327 = load ptr, ptr %7, align 8, !tbaa !9
  %6328 = load i32, ptr %12, align 4, !tbaa !5
  %6329 = load i32, ptr %8, align 4, !tbaa !5
  %6330 = mul nsw i32 27, %6329
  %6331 = add nsw i32 %6328, %6330
  %6332 = sext i32 %6331 to i64
  %6333 = getelementptr inbounds double, ptr %6327, i64 %6332
  %6334 = load double, ptr %6333, align 8, !tbaa !11
  %6335 = call double @llvm.fmuladd.f64(double 0xBFEA0946EB3057DC, double %6334, double %6326)
  %6336 = load ptr, ptr %7, align 8, !tbaa !9
  %6337 = load i32, ptr %12, align 4, !tbaa !5
  %6338 = load i32, ptr %8, align 4, !tbaa !5
  %6339 = mul nsw i32 28, %6338
  %6340 = add nsw i32 %6337, %6339
  %6341 = sext i32 %6340 to i64
  %6342 = getelementptr inbounds double, ptr %6336, i64 %6341
  %6343 = load double, ptr %6342, align 8, !tbaa !11
  %6344 = call double @llvm.fmuladd.f64(double 0xBC88000000000000, double %6343, double %6335)
  %6345 = load ptr, ptr %7, align 8, !tbaa !9
  %6346 = load i32, ptr %12, align 4, !tbaa !5
  %6347 = load i32, ptr %8, align 4, !tbaa !5
  %6348 = mul nsw i32 29, %6347
  %6349 = add nsw i32 %6346, %6348
  %6350 = sext i32 %6349 to i64
  %6351 = getelementptr inbounds double, ptr %6345, i64 %6350
  %6352 = load double, ptr %6351, align 8, !tbaa !11
  %6353 = call double @llvm.fmuladd.f64(double 0xBC8C000000000000, double %6352, double %6344)
  %6354 = load ptr, ptr %7, align 8, !tbaa !9
  %6355 = load i32, ptr %12, align 4, !tbaa !5
  %6356 = load i32, ptr %8, align 4, !tbaa !5
  %6357 = mul nsw i32 30, %6356
  %6358 = add nsw i32 %6355, %6357
  %6359 = sext i32 %6358 to i64
  %6360 = getelementptr inbounds double, ptr %6354, i64 %6359
  %6361 = load double, ptr %6360, align 8, !tbaa !11
  %6362 = call double @llvm.fmuladd.f64(double 0x3CC1800000000000, double %6361, double %6353)
  %6363 = load ptr, ptr %7, align 8, !tbaa !9
  %6364 = load i32, ptr %12, align 4, !tbaa !5
  %6365 = load i32, ptr %8, align 4, !tbaa !5
  %6366 = mul nsw i32 31, %6365
  %6367 = add nsw i32 %6364, %6366
  %6368 = sext i32 %6367 to i64
  %6369 = getelementptr inbounds double, ptr %6363, i64 %6368
  %6370 = load double, ptr %6369, align 8, !tbaa !11
  %6371 = call double @llvm.fmuladd.f64(double 0xBCA8C00000000000, double %6370, double %6362)
  %6372 = load ptr, ptr %7, align 8, !tbaa !9
  %6373 = load i32, ptr %12, align 4, !tbaa !5
  %6374 = load i32, ptr %8, align 4, !tbaa !5
  %6375 = mul nsw i32 32, %6374
  %6376 = add nsw i32 %6373, %6375
  %6377 = sext i32 %6376 to i64
  %6378 = getelementptr inbounds double, ptr %6372, i64 %6377
  %6379 = load double, ptr %6378, align 8, !tbaa !11
  %6380 = call double @llvm.fmuladd.f64(double 0xBCAE400000000002, double %6379, double %6371)
  %6381 = load ptr, ptr %7, align 8, !tbaa !9
  %6382 = load i32, ptr %12, align 4, !tbaa !5
  %6383 = load i32, ptr %8, align 4, !tbaa !5
  %6384 = mul nsw i32 33, %6383
  %6385 = add nsw i32 %6382, %6384
  %6386 = sext i32 %6385 to i64
  %6387 = getelementptr inbounds double, ptr %6381, i64 %6386
  %6388 = load double, ptr %6387, align 8, !tbaa !11
  %6389 = call double @llvm.fmuladd.f64(double 0xBC94600000000000, double %6388, double %6380)
  %6390 = load ptr, ptr %7, align 8, !tbaa !9
  %6391 = load i32, ptr %12, align 4, !tbaa !5
  %6392 = load i32, ptr %8, align 4, !tbaa !5
  %6393 = mul nsw i32 34, %6392
  %6394 = add nsw i32 %6391, %6393
  %6395 = sext i32 %6394 to i64
  %6396 = getelementptr inbounds double, ptr %6390, i64 %6395
  %6397 = load double, ptr %6396, align 8, !tbaa !11
  %6398 = call double @llvm.fmuladd.f64(double 0x3C94800000000000, double %6397, double %6389)
  %6399 = load ptr, ptr %7, align 8, !tbaa !9
  %6400 = load i32, ptr %12, align 4, !tbaa !5
  %6401 = load i32, ptr %8, align 4, !tbaa !5
  %6402 = mul nsw i32 35, %6401
  %6403 = add nsw i32 %6400, %6402
  %6404 = sext i32 %6403 to i64
  %6405 = getelementptr inbounds double, ptr %6399, i64 %6404
  %6406 = load double, ptr %6405, align 8, !tbaa !11
  %6407 = call double @llvm.fmuladd.f64(double 0x3CAF400000000001, double %6406, double %6398)
  %6408 = load ptr, ptr %7, align 8, !tbaa !9
  %6409 = load i32, ptr %12, align 4, !tbaa !5
  %6410 = load i32, ptr %8, align 4, !tbaa !5
  %6411 = mul nsw i32 36, %6410
  %6412 = add nsw i32 %6409, %6411
  %6413 = sext i32 %6412 to i64
  %6414 = getelementptr inbounds double, ptr %6408, i64 %6413
  %6415 = load double, ptr %6414, align 8, !tbaa !11
  %6416 = call double @llvm.fmuladd.f64(double 0xBCB7AFFFFFFFFFFF, double %6415, double %6407)
  %6417 = load ptr, ptr %7, align 8, !tbaa !9
  %6418 = load i32, ptr %12, align 4, !tbaa !5
  %6419 = load i32, ptr %8, align 4, !tbaa !5
  %6420 = mul nsw i32 37, %6419
  %6421 = add nsw i32 %6418, %6420
  %6422 = sext i32 %6421 to i64
  %6423 = getelementptr inbounds double, ptr %6417, i64 %6422
  %6424 = load double, ptr %6423, align 8, !tbaa !11
  %6425 = call double @llvm.fmuladd.f64(double 0x3FF86DB962AC2966, double %6424, double %6416)
  %6426 = load ptr, ptr %7, align 8, !tbaa !9
  %6427 = load i32, ptr %12, align 4, !tbaa !5
  %6428 = load i32, ptr %8, align 4, !tbaa !5
  %6429 = mul nsw i32 38, %6428
  %6430 = add nsw i32 %6427, %6429
  %6431 = sext i32 %6430 to i64
  %6432 = getelementptr inbounds double, ptr %6426, i64 %6431
  %6433 = load double, ptr %6432, align 8, !tbaa !11
  %6434 = call double @llvm.fmuladd.f64(double 0xBCA67FFFFFFFFFFE, double %6433, double %6425)
  %6435 = load ptr, ptr %7, align 8, !tbaa !9
  %6436 = load i32, ptr %12, align 4, !tbaa !5
  %6437 = load i32, ptr %8, align 4, !tbaa !5
  %6438 = mul nsw i32 39, %6437
  %6439 = add nsw i32 %6436, %6438
  %6440 = sext i32 %6439 to i64
  %6441 = getelementptr inbounds double, ptr %6435, i64 %6440
  %6442 = load double, ptr %6441, align 8, !tbaa !11
  %6443 = call double @llvm.fmuladd.f64(double 0xBC86000000000001, double %6442, double %6434)
  store double %6443, ptr %11, align 8, !tbaa !11
  %6444 = load double, ptr %11, align 8, !tbaa !11
  %6445 = load ptr, ptr %9, align 8, !tbaa !9
  %6446 = load i32, ptr %12, align 4, !tbaa !5
  %6447 = load i32, ptr %10, align 4, !tbaa !5
  %6448 = mul nsw i32 17, %6447
  %6449 = add nsw i32 %6446, %6448
  %6450 = sext i32 %6449 to i64
  %6451 = getelementptr inbounds double, ptr %6445, i64 %6450
  %6452 = load double, ptr %6451, align 8, !tbaa !11
  %6453 = fadd double %6452, %6444
  store double %6453, ptr %6451, align 8, !tbaa !11
  %6454 = load ptr, ptr %7, align 8, !tbaa !9
  %6455 = load i32, ptr %12, align 4, !tbaa !5
  %6456 = load i32, ptr %8, align 4, !tbaa !5
  %6457 = mul nsw i32 0, %6456
  %6458 = add nsw i32 %6455, %6457
  %6459 = sext i32 %6458 to i64
  %6460 = getelementptr inbounds double, ptr %6454, i64 %6459
  %6461 = load double, ptr %6460, align 8, !tbaa !11
  %6462 = load ptr, ptr %7, align 8, !tbaa !9
  %6463 = load i32, ptr %12, align 4, !tbaa !5
  %6464 = load i32, ptr %8, align 4, !tbaa !5
  %6465 = mul nsw i32 1, %6464
  %6466 = add nsw i32 %6463, %6465
  %6467 = sext i32 %6466 to i64
  %6468 = getelementptr inbounds double, ptr %6462, i64 %6467
  %6469 = load double, ptr %6468, align 8, !tbaa !11
  %6470 = fmul double 0xBCB5800000000000, %6469
  %6471 = call double @llvm.fmuladd.f64(double 0x3CA4000000000001, double %6461, double %6470)
  %6472 = load ptr, ptr %7, align 8, !tbaa !9
  %6473 = load i32, ptr %12, align 4, !tbaa !5
  %6474 = load i32, ptr %8, align 4, !tbaa !5
  %6475 = mul nsw i32 2, %6474
  %6476 = add nsw i32 %6473, %6475
  %6477 = sext i32 %6476 to i64
  %6478 = getelementptr inbounds double, ptr %6472, i64 %6477
  %6479 = load double, ptr %6478, align 8, !tbaa !11
  %6480 = call double @llvm.fmuladd.f64(double 0x3CA33FFFFFFFFFFE, double %6479, double %6471)
  %6481 = load ptr, ptr %7, align 8, !tbaa !9
  %6482 = load i32, ptr %12, align 4, !tbaa !5
  %6483 = load i32, ptr %8, align 4, !tbaa !5
  %6484 = mul nsw i32 3, %6483
  %6485 = add nsw i32 %6482, %6484
  %6486 = sext i32 %6485 to i64
  %6487 = getelementptr inbounds double, ptr %6481, i64 %6486
  %6488 = load double, ptr %6487, align 8, !tbaa !11
  %6489 = call double @llvm.fmuladd.f64(double 0xBCA1C00000000000, double %6488, double %6480)
  %6490 = load ptr, ptr %7, align 8, !tbaa !9
  %6491 = load i32, ptr %12, align 4, !tbaa !5
  %6492 = load i32, ptr %8, align 4, !tbaa !5
  %6493 = mul nsw i32 4, %6492
  %6494 = add nsw i32 %6491, %6493
  %6495 = sext i32 %6494 to i64
  %6496 = getelementptr inbounds double, ptr %6490, i64 %6495
  %6497 = load double, ptr %6496, align 8, !tbaa !11
  %6498 = call double @llvm.fmuladd.f64(double 0xBCB8000000000001, double %6497, double %6489)
  %6499 = load ptr, ptr %7, align 8, !tbaa !9
  %6500 = load i32, ptr %12, align 4, !tbaa !5
  %6501 = load i32, ptr %8, align 4, !tbaa !5
  %6502 = mul nsw i32 5, %6501
  %6503 = add nsw i32 %6500, %6502
  %6504 = sext i32 %6503 to i64
  %6505 = getelementptr inbounds double, ptr %6499, i64 %6504
  %6506 = load double, ptr %6505, align 8, !tbaa !11
  %6507 = call double @llvm.fmuladd.f64(double 0xBCACFFFFFFFFFFFF, double %6506, double %6498)
  %6508 = load ptr, ptr %7, align 8, !tbaa !9
  %6509 = load i32, ptr %12, align 4, !tbaa !5
  %6510 = load i32, ptr %8, align 4, !tbaa !5
  %6511 = mul nsw i32 6, %6510
  %6512 = add nsw i32 %6509, %6511
  %6513 = sext i32 %6512 to i64
  %6514 = getelementptr inbounds double, ptr %6508, i64 %6513
  %6515 = load double, ptr %6514, align 8, !tbaa !11
  %6516 = call double @llvm.fmuladd.f64(double 0xBC92000000000000, double %6515, double %6507)
  %6517 = load ptr, ptr %7, align 8, !tbaa !9
  %6518 = load i32, ptr %12, align 4, !tbaa !5
  %6519 = load i32, ptr %8, align 4, !tbaa !5
  %6520 = mul nsw i32 7, %6519
  %6521 = add nsw i32 %6518, %6520
  %6522 = sext i32 %6521 to i64
  %6523 = getelementptr inbounds double, ptr %6517, i64 %6522
  %6524 = load double, ptr %6523, align 8, !tbaa !11
  %6525 = call double @llvm.fmuladd.f64(double 0x3C9B000000000000, double %6524, double %6516)
  %6526 = load ptr, ptr %7, align 8, !tbaa !9
  %6527 = load i32, ptr %12, align 4, !tbaa !5
  %6528 = load i32, ptr %8, align 4, !tbaa !5
  %6529 = mul nsw i32 8, %6528
  %6530 = add nsw i32 %6527, %6529
  %6531 = sext i32 %6530 to i64
  %6532 = getelementptr inbounds double, ptr %6526, i64 %6531
  %6533 = load double, ptr %6532, align 8, !tbaa !11
  %6534 = call double @llvm.fmuladd.f64(double 0xBFBD29AD687BB04F, double %6533, double %6525)
  %6535 = load ptr, ptr %7, align 8, !tbaa !9
  %6536 = load i32, ptr %12, align 4, !tbaa !5
  %6537 = load i32, ptr %8, align 4, !tbaa !5
  %6538 = mul nsw i32 9, %6537
  %6539 = add nsw i32 %6536, %6538
  %6540 = sext i32 %6539 to i64
  %6541 = getelementptr inbounds double, ptr %6535, i64 %6540
  %6542 = load double, ptr %6541, align 8, !tbaa !11
  %6543 = call double @llvm.fmuladd.f64(double 0x3CA2000000000000, double %6542, double %6534)
  %6544 = load ptr, ptr %7, align 8, !tbaa !9
  %6545 = load i32, ptr %12, align 4, !tbaa !5
  %6546 = load i32, ptr %8, align 4, !tbaa !5
  %6547 = mul nsw i32 10, %6546
  %6548 = add nsw i32 %6545, %6547
  %6549 = sext i32 %6548 to i64
  %6550 = getelementptr inbounds double, ptr %6544, i64 %6549
  %6551 = load double, ptr %6550, align 8, !tbaa !11
  %6552 = call double @llvm.fmuladd.f64(double 0xBCC4000000000000, double %6551, double %6543)
  %6553 = load ptr, ptr %7, align 8, !tbaa !9
  %6554 = load i32, ptr %12, align 4, !tbaa !5
  %6555 = load i32, ptr %8, align 4, !tbaa !5
  %6556 = mul nsw i32 11, %6555
  %6557 = add nsw i32 %6554, %6556
  %6558 = sext i32 %6557 to i64
  %6559 = getelementptr inbounds double, ptr %6553, i64 %6558
  %6560 = load double, ptr %6559, align 8, !tbaa !11
  %6561 = call double @llvm.fmuladd.f64(double 0xBCAC000000000000, double %6560, double %6552)
  %6562 = load ptr, ptr %7, align 8, !tbaa !9
  %6563 = load i32, ptr %12, align 4, !tbaa !5
  %6564 = load i32, ptr %8, align 4, !tbaa !5
  %6565 = mul nsw i32 12, %6564
  %6566 = add nsw i32 %6563, %6565
  %6567 = sext i32 %6566 to i64
  %6568 = getelementptr inbounds double, ptr %6562, i64 %6567
  %6569 = load double, ptr %6568, align 8, !tbaa !11
  %6570 = call double @llvm.fmuladd.f64(double 0xBC9DFFFFFFFFFFFE, double %6569, double %6561)
  %6571 = load ptr, ptr %7, align 8, !tbaa !9
  %6572 = load i32, ptr %12, align 4, !tbaa !5
  %6573 = load i32, ptr %8, align 4, !tbaa !5
  %6574 = mul nsw i32 15, %6573
  %6575 = add nsw i32 %6572, %6574
  %6576 = sext i32 %6575 to i64
  %6577 = getelementptr inbounds double, ptr %6571, i64 %6576
  %6578 = load double, ptr %6577, align 8, !tbaa !11
  %6579 = call double @llvm.fmuladd.f64(double 0x3CA0000000000002, double %6578, double %6570)
  %6580 = load ptr, ptr %7, align 8, !tbaa !9
  %6581 = load i32, ptr %12, align 4, !tbaa !5
  %6582 = load i32, ptr %8, align 4, !tbaa !5
  %6583 = mul nsw i32 16, %6582
  %6584 = add nsw i32 %6581, %6583
  %6585 = sext i32 %6584 to i64
  %6586 = getelementptr inbounds double, ptr %6580, i64 %6585
  %6587 = load double, ptr %6586, align 8, !tbaa !11
  %6588 = call double @llvm.fmuladd.f64(double 0x3CA7000000000002, double %6587, double %6579)
  %6589 = load ptr, ptr %7, align 8, !tbaa !9
  %6590 = load i32, ptr %12, align 4, !tbaa !5
  %6591 = load i32, ptr %8, align 4, !tbaa !5
  %6592 = mul nsw i32 17, %6591
  %6593 = add nsw i32 %6590, %6592
  %6594 = sext i32 %6593 to i64
  %6595 = getelementptr inbounds double, ptr %6589, i64 %6594
  %6596 = load double, ptr %6595, align 8, !tbaa !11
  %6597 = call double @llvm.fmuladd.f64(double 0xBC9DFFFFFFFFFFFE, double %6596, double %6588)
  %6598 = load ptr, ptr %7, align 8, !tbaa !9
  %6599 = load i32, ptr %12, align 4, !tbaa !5
  %6600 = load i32, ptr %8, align 4, !tbaa !5
  %6601 = mul nsw i32 18, %6600
  %6602 = add nsw i32 %6599, %6601
  %6603 = sext i32 %6602 to i64
  %6604 = getelementptr inbounds double, ptr %6598, i64 %6603
  %6605 = load double, ptr %6604, align 8, !tbaa !11
  %6606 = call double @llvm.fmuladd.f64(double 0x3FD9A613A5CEF63E, double %6605, double %6597)
  %6607 = load ptr, ptr %7, align 8, !tbaa !9
  %6608 = load i32, ptr %12, align 4, !tbaa !5
  %6609 = load i32, ptr %8, align 4, !tbaa !5
  %6610 = mul nsw i32 19, %6609
  %6611 = add nsw i32 %6608, %6610
  %6612 = sext i32 %6611 to i64
  %6613 = getelementptr inbounds double, ptr %6607, i64 %6612
  %6614 = load double, ptr %6613, align 8, !tbaa !11
  %6615 = call double @llvm.fmuladd.f64(double 0x3CB0000000000000, double %6614, double %6606)
  %6616 = load ptr, ptr %7, align 8, !tbaa !9
  %6617 = load i32, ptr %12, align 4, !tbaa !5
  %6618 = load i32, ptr %8, align 4, !tbaa !5
  %6619 = mul nsw i32 20, %6618
  %6620 = add nsw i32 %6617, %6619
  %6621 = sext i32 %6620 to i64
  %6622 = getelementptr inbounds double, ptr %6616, i64 %6621
  %6623 = load double, ptr %6622, align 8, !tbaa !11
  %6624 = call double @llvm.fmuladd.f64(double 0x3CBA000000000000, double %6623, double %6615)
  %6625 = load ptr, ptr %7, align 8, !tbaa !9
  %6626 = load i32, ptr %12, align 4, !tbaa !5
  %6627 = load i32, ptr %8, align 4, !tbaa !5
  %6628 = mul nsw i32 21, %6627
  %6629 = add nsw i32 %6626, %6628
  %6630 = sext i32 %6629 to i64
  %6631 = getelementptr inbounds double, ptr %6625, i64 %6630
  %6632 = load double, ptr %6631, align 8, !tbaa !11
  %6633 = call double @llvm.fmuladd.f64(double 0x3CC1000000000000, double %6632, double %6624)
  %6634 = load ptr, ptr %7, align 8, !tbaa !9
  %6635 = load i32, ptr %12, align 4, !tbaa !5
  %6636 = load i32, ptr %8, align 4, !tbaa !5
  %6637 = mul nsw i32 22, %6636
  %6638 = add nsw i32 %6635, %6637
  %6639 = sext i32 %6638 to i64
  %6640 = getelementptr inbounds double, ptr %6634, i64 %6639
  %6641 = load double, ptr %6640, align 8, !tbaa !11
  %6642 = call double @llvm.fmuladd.f64(double 0x3C9DFFFFFFFFFFFE, double %6641, double %6633)
  %6643 = load ptr, ptr %7, align 8, !tbaa !9
  %6644 = load i32, ptr %12, align 4, !tbaa !5
  %6645 = load i32, ptr %8, align 4, !tbaa !5
  %6646 = mul nsw i32 23, %6645
  %6647 = add nsw i32 %6644, %6646
  %6648 = sext i32 %6647 to i64
  %6649 = getelementptr inbounds double, ptr %6643, i64 %6648
  %6650 = load double, ptr %6649, align 8, !tbaa !11
  %6651 = call double @llvm.fmuladd.f64(double 0xBCBC400000000000, double %6650, double %6642)
  %6652 = load ptr, ptr %7, align 8, !tbaa !9
  %6653 = load i32, ptr %12, align 4, !tbaa !5
  %6654 = load i32, ptr %8, align 4, !tbaa !5
  %6655 = mul nsw i32 24, %6654
  %6656 = add nsw i32 %6653, %6655
  %6657 = sext i32 %6656 to i64
  %6658 = getelementptr inbounds double, ptr %6652, i64 %6657
  %6659 = load double, ptr %6658, align 8, !tbaa !11
  %6660 = call double @llvm.fmuladd.f64(double 0x3C7FFFFFFFFFFFFF, double %6659, double %6651)
  %6661 = load ptr, ptr %7, align 8, !tbaa !9
  %6662 = load i32, ptr %12, align 4, !tbaa !5
  %6663 = load i32, ptr %8, align 4, !tbaa !5
  %6664 = mul nsw i32 25, %6663
  %6665 = add nsw i32 %6662, %6664
  %6666 = sext i32 %6665 to i64
  %6667 = getelementptr inbounds double, ptr %6661, i64 %6666
  %6668 = load double, ptr %6667, align 8, !tbaa !11
  %6669 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %6668, double %6660)
  %6670 = load ptr, ptr %7, align 8, !tbaa !9
  %6671 = load i32, ptr %12, align 4, !tbaa !5
  %6672 = load i32, ptr %8, align 4, !tbaa !5
  %6673 = mul nsw i32 26, %6672
  %6674 = add nsw i32 %6671, %6673
  %6675 = sext i32 %6674 to i64
  %6676 = getelementptr inbounds double, ptr %6670, i64 %6675
  %6677 = load double, ptr %6676, align 8, !tbaa !11
  %6678 = call double @llvm.fmuladd.f64(double 0xBCAF000000000001, double %6677, double %6669)
  %6679 = load ptr, ptr %7, align 8, !tbaa !9
  %6680 = load i32, ptr %12, align 4, !tbaa !5
  %6681 = load i32, ptr %8, align 4, !tbaa !5
  %6682 = mul nsw i32 27, %6681
  %6683 = add nsw i32 %6680, %6682
  %6684 = sext i32 %6683 to i64
  %6685 = getelementptr inbounds double, ptr %6679, i64 %6684
  %6686 = load double, ptr %6685, align 8, !tbaa !11
  %6687 = call double @llvm.fmuladd.f64(double 0x3C88000000000000, double %6686, double %6678)
  %6688 = load ptr, ptr %7, align 8, !tbaa !9
  %6689 = load i32, ptr %12, align 4, !tbaa !5
  %6690 = load i32, ptr %8, align 4, !tbaa !5
  %6691 = mul nsw i32 28, %6690
  %6692 = add nsw i32 %6689, %6691
  %6693 = sext i32 %6692 to i64
  %6694 = getelementptr inbounds double, ptr %6688, i64 %6693
  %6695 = load double, ptr %6694, align 8, !tbaa !11
  %6696 = call double @llvm.fmuladd.f64(double 0xBFEA0946EB3057DD, double %6695, double %6687)
  %6697 = load ptr, ptr %7, align 8, !tbaa !9
  %6698 = load i32, ptr %12, align 4, !tbaa !5
  %6699 = load i32, ptr %8, align 4, !tbaa !5
  %6700 = mul nsw i32 29, %6699
  %6701 = add nsw i32 %6698, %6700
  %6702 = sext i32 %6701 to i64
  %6703 = getelementptr inbounds double, ptr %6697, i64 %6702
  %6704 = load double, ptr %6703, align 8, !tbaa !11
  %6705 = call double @llvm.fmuladd.f64(double 0xBCA4000000000001, double %6704, double %6696)
  %6706 = load ptr, ptr %7, align 8, !tbaa !9
  %6707 = load i32, ptr %12, align 4, !tbaa !5
  %6708 = load i32, ptr %8, align 4, !tbaa !5
  %6709 = mul nsw i32 30, %6708
  %6710 = add nsw i32 %6707, %6709
  %6711 = sext i32 %6710 to i64
  %6712 = getelementptr inbounds double, ptr %6706, i64 %6711
  %6713 = load double, ptr %6712, align 8, !tbaa !11
  %6714 = call double @llvm.fmuladd.f64(double 0x3CC0000000000000, double %6713, double %6705)
  %6715 = load ptr, ptr %7, align 8, !tbaa !9
  %6716 = load i32, ptr %12, align 4, !tbaa !5
  %6717 = load i32, ptr %8, align 4, !tbaa !5
  %6718 = mul nsw i32 31, %6717
  %6719 = add nsw i32 %6716, %6718
  %6720 = sext i32 %6719 to i64
  %6721 = getelementptr inbounds double, ptr %6715, i64 %6720
  %6722 = load double, ptr %6721, align 8, !tbaa !11
  %6723 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %6722, double %6714)
  %6724 = load ptr, ptr %7, align 8, !tbaa !9
  %6725 = load i32, ptr %12, align 4, !tbaa !5
  %6726 = load i32, ptr %8, align 4, !tbaa !5
  %6727 = mul nsw i32 32, %6726
  %6728 = add nsw i32 %6725, %6727
  %6729 = sext i32 %6728 to i64
  %6730 = getelementptr inbounds double, ptr %6724, i64 %6729
  %6731 = load double, ptr %6730, align 8, !tbaa !11
  %6732 = call double @llvm.fmuladd.f64(double 0xBCA0400000000002, double %6731, double %6723)
  %6733 = load ptr, ptr %7, align 8, !tbaa !9
  %6734 = load i32, ptr %12, align 4, !tbaa !5
  %6735 = load i32, ptr %8, align 4, !tbaa !5
  %6736 = mul nsw i32 33, %6735
  %6737 = add nsw i32 %6734, %6736
  %6738 = sext i32 %6737 to i64
  %6739 = getelementptr inbounds double, ptr %6733, i64 %6738
  %6740 = load double, ptr %6739, align 8, !tbaa !11
  %6741 = call double @llvm.fmuladd.f64(double 0x3CB4600000000001, double %6740, double %6732)
  %6742 = load ptr, ptr %7, align 8, !tbaa !9
  %6743 = load i32, ptr %12, align 4, !tbaa !5
  %6744 = load i32, ptr %8, align 4, !tbaa !5
  %6745 = mul nsw i32 34, %6744
  %6746 = add nsw i32 %6743, %6745
  %6747 = sext i32 %6746 to i64
  %6748 = getelementptr inbounds double, ptr %6742, i64 %6747
  %6749 = load double, ptr %6748, align 8, !tbaa !11
  %6750 = call double @llvm.fmuladd.f64(double 0x3CB1000000000001, double %6749, double %6741)
  %6751 = load ptr, ptr %7, align 8, !tbaa !9
  %6752 = load i32, ptr %12, align 4, !tbaa !5
  %6753 = load i32, ptr %8, align 4, !tbaa !5
  %6754 = mul nsw i32 35, %6753
  %6755 = add nsw i32 %6752, %6754
  %6756 = sext i32 %6755 to i64
  %6757 = getelementptr inbounds double, ptr %6751, i64 %6756
  %6758 = load double, ptr %6757, align 8, !tbaa !11
  %6759 = call double @llvm.fmuladd.f64(double 0xBCA7000000000002, double %6758, double %6750)
  %6760 = load ptr, ptr %7, align 8, !tbaa !9
  %6761 = load i32, ptr %12, align 4, !tbaa !5
  %6762 = load i32, ptr %8, align 4, !tbaa !5
  %6763 = mul nsw i32 36, %6762
  %6764 = add nsw i32 %6761, %6763
  %6765 = sext i32 %6764 to i64
  %6766 = getelementptr inbounds double, ptr %6760, i64 %6765
  %6767 = load double, ptr %6766, align 8, !tbaa !11
  %6768 = call double @llvm.fmuladd.f64(double 0x3C84000000000000, double %6767, double %6759)
  %6769 = load ptr, ptr %7, align 8, !tbaa !9
  %6770 = load i32, ptr %12, align 4, !tbaa !5
  %6771 = load i32, ptr %8, align 4, !tbaa !5
  %6772 = mul nsw i32 37, %6771
  %6773 = add nsw i32 %6770, %6772
  %6774 = sext i32 %6773 to i64
  %6775 = getelementptr inbounds double, ptr %6769, i64 %6774
  %6776 = load double, ptr %6775, align 8, !tbaa !11
  %6777 = call double @llvm.fmuladd.f64(double 0xBC88000000000000, double %6776, double %6768)
  %6778 = load ptr, ptr %7, align 8, !tbaa !9
  %6779 = load i32, ptr %12, align 4, !tbaa !5
  %6780 = load i32, ptr %8, align 4, !tbaa !5
  %6781 = mul nsw i32 38, %6780
  %6782 = add nsw i32 %6779, %6781
  %6783 = sext i32 %6782 to i64
  %6784 = getelementptr inbounds double, ptr %6778, i64 %6783
  %6785 = load double, ptr %6784, align 8, !tbaa !11
  %6786 = call double @llvm.fmuladd.f64(double 0x3FF86DB962AC2966, double %6785, double %6777)
  %6787 = load ptr, ptr %7, align 8, !tbaa !9
  %6788 = load i32, ptr %12, align 4, !tbaa !5
  %6789 = load i32, ptr %8, align 4, !tbaa !5
  %6790 = mul nsw i32 39, %6789
  %6791 = add nsw i32 %6788, %6790
  %6792 = sext i32 %6791 to i64
  %6793 = getelementptr inbounds double, ptr %6787, i64 %6792
  %6794 = load double, ptr %6793, align 8, !tbaa !11
  %6795 = call double @llvm.fmuladd.f64(double 0x3CA2000000000000, double %6794, double %6786)
  store double %6795, ptr %11, align 8, !tbaa !11
  %6796 = load double, ptr %11, align 8, !tbaa !11
  %6797 = load ptr, ptr %9, align 8, !tbaa !9
  %6798 = load i32, ptr %12, align 4, !tbaa !5
  %6799 = load i32, ptr %10, align 4, !tbaa !5
  %6800 = mul nsw i32 18, %6799
  %6801 = add nsw i32 %6798, %6800
  %6802 = sext i32 %6801 to i64
  %6803 = getelementptr inbounds double, ptr %6797, i64 %6802
  %6804 = load double, ptr %6803, align 8, !tbaa !11
  %6805 = fadd double %6804, %6796
  store double %6805, ptr %6803, align 8, !tbaa !11
  %6806 = load ptr, ptr %7, align 8, !tbaa !9
  %6807 = load i32, ptr %12, align 4, !tbaa !5
  %6808 = load i32, ptr %8, align 4, !tbaa !5
  %6809 = mul nsw i32 0, %6808
  %6810 = add nsw i32 %6807, %6809
  %6811 = sext i32 %6810 to i64
  %6812 = getelementptr inbounds double, ptr %6806, i64 %6811
  %6813 = load double, ptr %6812, align 8, !tbaa !11
  %6814 = load ptr, ptr %7, align 8, !tbaa !9
  %6815 = load i32, ptr %12, align 4, !tbaa !5
  %6816 = load i32, ptr %8, align 4, !tbaa !5
  %6817 = mul nsw i32 1, %6816
  %6818 = add nsw i32 %6815, %6817
  %6819 = sext i32 %6818 to i64
  %6820 = getelementptr inbounds double, ptr %6814, i64 %6819
  %6821 = load double, ptr %6820, align 8, !tbaa !11
  %6822 = fmul double 0x3CAB000000000001, %6821
  %6823 = call double @llvm.fmuladd.f64(double 0x3CC1000000000000, double %6813, double %6822)
  %6824 = load ptr, ptr %7, align 8, !tbaa !9
  %6825 = load i32, ptr %12, align 4, !tbaa !5
  %6826 = load i32, ptr %8, align 4, !tbaa !5
  %6827 = mul nsw i32 2, %6826
  %6828 = add nsw i32 %6825, %6827
  %6829 = sext i32 %6828 to i64
  %6830 = getelementptr inbounds double, ptr %6824, i64 %6829
  %6831 = load double, ptr %6830, align 8, !tbaa !11
  %6832 = call double @llvm.fmuladd.f64(double 0x3CA1C00000000000, double %6831, double %6823)
  %6833 = load ptr, ptr %7, align 8, !tbaa !9
  %6834 = load i32, ptr %12, align 4, !tbaa !5
  %6835 = load i32, ptr %8, align 4, !tbaa !5
  %6836 = mul nsw i32 3, %6835
  %6837 = add nsw i32 %6834, %6836
  %6838 = sext i32 %6837 to i64
  %6839 = getelementptr inbounds double, ptr %6833, i64 %6838
  %6840 = load double, ptr %6839, align 8, !tbaa !11
  %6841 = call double @llvm.fmuladd.f64(double 0xBCC2A00000000000, double %6840, double %6832)
  %6842 = load ptr, ptr %7, align 8, !tbaa !9
  %6843 = load i32, ptr %12, align 4, !tbaa !5
  %6844 = load i32, ptr %8, align 4, !tbaa !5
  %6845 = mul nsw i32 4, %6844
  %6846 = add nsw i32 %6843, %6845
  %6847 = sext i32 %6846 to i64
  %6848 = getelementptr inbounds double, ptr %6842, i64 %6847
  %6849 = load double, ptr %6848, align 8, !tbaa !11
  %6850 = call double @llvm.fmuladd.f64(double 0x3CBC800000000000, double %6849, double %6841)
  %6851 = load ptr, ptr %7, align 8, !tbaa !9
  %6852 = load i32, ptr %12, align 4, !tbaa !5
  %6853 = load i32, ptr %8, align 4, !tbaa !5
  %6854 = mul nsw i32 5, %6853
  %6855 = add nsw i32 %6852, %6854
  %6856 = sext i32 %6855 to i64
  %6857 = getelementptr inbounds double, ptr %6851, i64 %6856
  %6858 = load double, ptr %6857, align 8, !tbaa !11
  %6859 = call double @llvm.fmuladd.f64(double 0x3C96000000000000, double %6858, double %6850)
  %6860 = load ptr, ptr %7, align 8, !tbaa !9
  %6861 = load i32, ptr %12, align 4, !tbaa !5
  %6862 = load i32, ptr %8, align 4, !tbaa !5
  %6863 = mul nsw i32 6, %6862
  %6864 = add nsw i32 %6861, %6863
  %6865 = sext i32 %6864 to i64
  %6866 = getelementptr inbounds double, ptr %6860, i64 %6865
  %6867 = load double, ptr %6866, align 8, !tbaa !11
  %6868 = call double @llvm.fmuladd.f64(double 0xBC95000000000000, double %6867, double %6859)
  %6869 = load ptr, ptr %7, align 8, !tbaa !9
  %6870 = load i32, ptr %12, align 4, !tbaa !5
  %6871 = load i32, ptr %8, align 4, !tbaa !5
  %6872 = mul nsw i32 7, %6871
  %6873 = add nsw i32 %6870, %6872
  %6874 = sext i32 %6873 to i64
  %6875 = getelementptr inbounds double, ptr %6869, i64 %6874
  %6876 = load double, ptr %6875, align 8, !tbaa !11
  %6877 = call double @llvm.fmuladd.f64(double 0xBCB07FFFFFFFFFFF, double %6876, double %6868)
  %6878 = load ptr, ptr %7, align 8, !tbaa !9
  %6879 = load i32, ptr %12, align 4, !tbaa !5
  %6880 = load i32, ptr %8, align 4, !tbaa !5
  %6881 = mul nsw i32 8, %6880
  %6882 = add nsw i32 %6879, %6881
  %6883 = sext i32 %6882 to i64
  %6884 = getelementptr inbounds double, ptr %6878, i64 %6883
  %6885 = load double, ptr %6884, align 8, !tbaa !11
  %6886 = call double @llvm.fmuladd.f64(double 0xBCA0000000000002, double %6885, double %6877)
  %6887 = load ptr, ptr %7, align 8, !tbaa !9
  %6888 = load i32, ptr %12, align 4, !tbaa !5
  %6889 = load i32, ptr %8, align 4, !tbaa !5
  %6890 = mul nsw i32 9, %6889
  %6891 = add nsw i32 %6888, %6890
  %6892 = sext i32 %6891 to i64
  %6893 = getelementptr inbounds double, ptr %6887, i64 %6892
  %6894 = load double, ptr %6893, align 8, !tbaa !11
  %6895 = call double @llvm.fmuladd.f64(double 0xBFBD29AD687BB05D, double %6894, double %6886)
  %6896 = load ptr, ptr %7, align 8, !tbaa !9
  %6897 = load i32, ptr %12, align 4, !tbaa !5
  %6898 = load i32, ptr %8, align 4, !tbaa !5
  %6899 = mul nsw i32 10, %6898
  %6900 = add nsw i32 %6897, %6899
  %6901 = sext i32 %6900 to i64
  %6902 = getelementptr inbounds double, ptr %6896, i64 %6901
  %6903 = load double, ptr %6902, align 8, !tbaa !11
  %6904 = call double @llvm.fmuladd.f64(double 0x3CC3000000000000, double %6903, double %6895)
  %6905 = load ptr, ptr %7, align 8, !tbaa !9
  %6906 = load i32, ptr %12, align 4, !tbaa !5
  %6907 = load i32, ptr %8, align 4, !tbaa !5
  %6908 = mul nsw i32 11, %6907
  %6909 = add nsw i32 %6906, %6908
  %6910 = sext i32 %6909 to i64
  %6911 = getelementptr inbounds double, ptr %6905, i64 %6910
  %6912 = load double, ptr %6911, align 8, !tbaa !11
  %6913 = call double @llvm.fmuladd.f64(double 0x3CA4000000000001, double %6912, double %6904)
  %6914 = load ptr, ptr %7, align 8, !tbaa !9
  %6915 = load i32, ptr %12, align 4, !tbaa !5
  %6916 = load i32, ptr %8, align 4, !tbaa !5
  %6917 = mul nsw i32 12, %6916
  %6918 = add nsw i32 %6915, %6917
  %6919 = sext i32 %6918 to i64
  %6920 = getelementptr inbounds double, ptr %6914, i64 %6919
  %6921 = load double, ptr %6920, align 8, !tbaa !11
  %6922 = call double @llvm.fmuladd.f64(double 0x3CAF000000000001, double %6921, double %6913)
  %6923 = load ptr, ptr %7, align 8, !tbaa !9
  %6924 = load i32, ptr %12, align 4, !tbaa !5
  %6925 = load i32, ptr %8, align 4, !tbaa !5
  %6926 = mul nsw i32 13, %6925
  %6927 = add nsw i32 %6924, %6926
  %6928 = sext i32 %6927 to i64
  %6929 = getelementptr inbounds double, ptr %6923, i64 %6928
  %6930 = load double, ptr %6929, align 8, !tbaa !11
  %6931 = call double @llvm.fmuladd.f64(double 0x3CAB000000000001, double %6930, double %6922)
  %6932 = load ptr, ptr %7, align 8, !tbaa !9
  %6933 = load i32, ptr %12, align 4, !tbaa !5
  %6934 = load i32, ptr %8, align 4, !tbaa !5
  %6935 = mul nsw i32 14, %6934
  %6936 = add nsw i32 %6933, %6935
  %6937 = sext i32 %6936 to i64
  %6938 = getelementptr inbounds double, ptr %6932, i64 %6937
  %6939 = load double, ptr %6938, align 8, !tbaa !11
  %6940 = call double @llvm.fmuladd.f64(double 0xBCB9000000000000, double %6939, double %6931)
  %6941 = load ptr, ptr %7, align 8, !tbaa !9
  %6942 = load i32, ptr %12, align 4, !tbaa !5
  %6943 = load i32, ptr %8, align 4, !tbaa !5
  %6944 = mul nsw i32 15, %6943
  %6945 = add nsw i32 %6942, %6944
  %6946 = sext i32 %6945 to i64
  %6947 = getelementptr inbounds double, ptr %6941, i64 %6946
  %6948 = load double, ptr %6947, align 8, !tbaa !11
  %6949 = call double @llvm.fmuladd.f64(double 0xBCA2000000000000, double %6948, double %6940)
  %6950 = load ptr, ptr %7, align 8, !tbaa !9
  %6951 = load i32, ptr %12, align 4, !tbaa !5
  %6952 = load i32, ptr %8, align 4, !tbaa !5
  %6953 = mul nsw i32 16, %6952
  %6954 = add nsw i32 %6951, %6953
  %6955 = sext i32 %6954 to i64
  %6956 = getelementptr inbounds double, ptr %6950, i64 %6955
  %6957 = load double, ptr %6956, align 8, !tbaa !11
  %6958 = call double @llvm.fmuladd.f64(double 0x3CA7000000000002, double %6957, double %6949)
  %6959 = load ptr, ptr %7, align 8, !tbaa !9
  %6960 = load i32, ptr %12, align 4, !tbaa !5
  %6961 = load i32, ptr %8, align 4, !tbaa !5
  %6962 = mul nsw i32 17, %6961
  %6963 = add nsw i32 %6960, %6962
  %6964 = sext i32 %6963 to i64
  %6965 = getelementptr inbounds double, ptr %6959, i64 %6964
  %6966 = load double, ptr %6965, align 8, !tbaa !11
  %6967 = call double @llvm.fmuladd.f64(double 0xBCA5FFFFFFFFFFFF, double %6966, double %6958)
  %6968 = load ptr, ptr %7, align 8, !tbaa !9
  %6969 = load i32, ptr %12, align 4, !tbaa !5
  %6970 = load i32, ptr %8, align 4, !tbaa !5
  %6971 = mul nsw i32 18, %6970
  %6972 = add nsw i32 %6969, %6971
  %6973 = sext i32 %6972 to i64
  %6974 = getelementptr inbounds double, ptr %6968, i64 %6973
  %6975 = load double, ptr %6974, align 8, !tbaa !11
  %6976 = call double @llvm.fmuladd.f64(double 0xBCB5FFFFFFFFFFFF, double %6975, double %6967)
  %6977 = load ptr, ptr %7, align 8, !tbaa !9
  %6978 = load i32, ptr %12, align 4, !tbaa !5
  %6979 = load i32, ptr %8, align 4, !tbaa !5
  %6980 = mul nsw i32 19, %6979
  %6981 = add nsw i32 %6978, %6980
  %6982 = sext i32 %6981 to i64
  %6983 = getelementptr inbounds double, ptr %6977, i64 %6982
  %6984 = load double, ptr %6983, align 8, !tbaa !11
  %6985 = call double @llvm.fmuladd.f64(double 0x3FD9A613A5CEF63B, double %6984, double %6976)
  %6986 = load ptr, ptr %7, align 8, !tbaa !9
  %6987 = load i32, ptr %12, align 4, !tbaa !5
  %6988 = load i32, ptr %8, align 4, !tbaa !5
  %6989 = mul nsw i32 20, %6988
  %6990 = add nsw i32 %6987, %6989
  %6991 = sext i32 %6990 to i64
  %6992 = getelementptr inbounds double, ptr %6986, i64 %6991
  %6993 = load double, ptr %6992, align 8, !tbaa !11
  %6994 = call double @llvm.fmuladd.f64(double 0xBCCB000000000000, double %6993, double %6985)
  %6995 = load ptr, ptr %7, align 8, !tbaa !9
  %6996 = load i32, ptr %12, align 4, !tbaa !5
  %6997 = load i32, ptr %8, align 4, !tbaa !5
  %6998 = mul nsw i32 21, %6997
  %6999 = add nsw i32 %6996, %6998
  %7000 = sext i32 %6999 to i64
  %7001 = getelementptr inbounds double, ptr %6995, i64 %7000
  %7002 = load double, ptr %7001, align 8, !tbaa !11
  %7003 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %7002, double %6994)
  %7004 = load ptr, ptr %7, align 8, !tbaa !9
  %7005 = load i32, ptr %12, align 4, !tbaa !5
  %7006 = load i32, ptr %8, align 4, !tbaa !5
  %7007 = mul nsw i32 22, %7006
  %7008 = add nsw i32 %7005, %7007
  %7009 = sext i32 %7008 to i64
  %7010 = getelementptr inbounds double, ptr %7004, i64 %7009
  %7011 = load double, ptr %7010, align 8, !tbaa !11
  %7012 = call double @llvm.fmuladd.f64(double 0xBCA7000000000002, double %7011, double %7003)
  %7013 = load ptr, ptr %7, align 8, !tbaa !9
  %7014 = load i32, ptr %12, align 4, !tbaa !5
  %7015 = load i32, ptr %8, align 4, !tbaa !5
  %7016 = mul nsw i32 23, %7015
  %7017 = add nsw i32 %7014, %7016
  %7018 = sext i32 %7017 to i64
  %7019 = getelementptr inbounds double, ptr %7013, i64 %7018
  %7020 = load double, ptr %7019, align 8, !tbaa !11
  %7021 = call double @llvm.fmuladd.f64(double 0x3C89FFFFFFFFFFFF, double %7020, double %7012)
  %7022 = load ptr, ptr %7, align 8, !tbaa !9
  %7023 = load i32, ptr %12, align 4, !tbaa !5
  %7024 = load i32, ptr %8, align 4, !tbaa !5
  %7025 = mul nsw i32 24, %7024
  %7026 = add nsw i32 %7023, %7025
  %7027 = sext i32 %7026 to i64
  %7028 = getelementptr inbounds double, ptr %7022, i64 %7027
  %7029 = load double, ptr %7028, align 8, !tbaa !11
  %7030 = call double @llvm.fmuladd.f64(double 0x3CA2000000000000, double %7029, double %7021)
  %7031 = load ptr, ptr %7, align 8, !tbaa !9
  %7032 = load i32, ptr %12, align 4, !tbaa !5
  %7033 = load i32, ptr %8, align 4, !tbaa !5
  %7034 = mul nsw i32 25, %7033
  %7035 = add nsw i32 %7032, %7034
  %7036 = sext i32 %7035 to i64
  %7037 = getelementptr inbounds double, ptr %7031, i64 %7036
  %7038 = load double, ptr %7037, align 8, !tbaa !11
  %7039 = call double @llvm.fmuladd.f64(double 0x3CB0000000000000, double %7038, double %7030)
  %7040 = load ptr, ptr %7, align 8, !tbaa !9
  %7041 = load i32, ptr %12, align 4, !tbaa !5
  %7042 = load i32, ptr %8, align 4, !tbaa !5
  %7043 = mul nsw i32 26, %7042
  %7044 = add nsw i32 %7041, %7043
  %7045 = sext i32 %7044 to i64
  %7046 = getelementptr inbounds double, ptr %7040, i64 %7045
  %7047 = load double, ptr %7046, align 8, !tbaa !11
  %7048 = call double @llvm.fmuladd.f64(double 0xBC84000000000000, double %7047, double %7039)
  %7049 = load ptr, ptr %7, align 8, !tbaa !9
  %7050 = load i32, ptr %12, align 4, !tbaa !5
  %7051 = load i32, ptr %8, align 4, !tbaa !5
  %7052 = mul nsw i32 27, %7051
  %7053 = add nsw i32 %7050, %7052
  %7054 = sext i32 %7053 to i64
  %7055 = getelementptr inbounds double, ptr %7049, i64 %7054
  %7056 = load double, ptr %7055, align 8, !tbaa !11
  %7057 = call double @llvm.fmuladd.f64(double 0x3CB27FFFFFFFFFFF, double %7056, double %7048)
  %7058 = load ptr, ptr %7, align 8, !tbaa !9
  %7059 = load i32, ptr %12, align 4, !tbaa !5
  %7060 = load i32, ptr %8, align 4, !tbaa !5
  %7061 = mul nsw i32 28, %7060
  %7062 = add nsw i32 %7059, %7061
  %7063 = sext i32 %7062 to i64
  %7064 = getelementptr inbounds double, ptr %7058, i64 %7063
  %7065 = load double, ptr %7064, align 8, !tbaa !11
  %7066 = call double @llvm.fmuladd.f64(double 0x3CA4000000000001, double %7065, double %7057)
  %7067 = load ptr, ptr %7, align 8, !tbaa !9
  %7068 = load i32, ptr %12, align 4, !tbaa !5
  %7069 = load i32, ptr %8, align 4, !tbaa !5
  %7070 = mul nsw i32 29, %7069
  %7071 = add nsw i32 %7068, %7070
  %7072 = sext i32 %7071 to i64
  %7073 = getelementptr inbounds double, ptr %7067, i64 %7072
  %7074 = load double, ptr %7073, align 8, !tbaa !11
  %7075 = call double @llvm.fmuladd.f64(double 0xBFEA0946EB3057DB, double %7074, double %7066)
  %7076 = load ptr, ptr %7, align 8, !tbaa !9
  %7077 = load i32, ptr %12, align 4, !tbaa !5
  %7078 = load i32, ptr %8, align 4, !tbaa !5
  %7079 = mul nsw i32 30, %7078
  %7080 = add nsw i32 %7077, %7079
  %7081 = sext i32 %7080 to i64
  %7082 = getelementptr inbounds double, ptr %7076, i64 %7081
  %7083 = load double, ptr %7082, align 8, !tbaa !11
  %7084 = call double @llvm.fmuladd.f64(double 0xBCA8000000000001, double %7083, double %7075)
  %7085 = load ptr, ptr %7, align 8, !tbaa !9
  %7086 = load i32, ptr %12, align 4, !tbaa !5
  %7087 = load i32, ptr %8, align 4, !tbaa !5
  %7088 = mul nsw i32 31, %7087
  %7089 = add nsw i32 %7086, %7088
  %7090 = sext i32 %7089 to i64
  %7091 = getelementptr inbounds double, ptr %7085, i64 %7090
  %7092 = load double, ptr %7091, align 8, !tbaa !11
  %7093 = call double @llvm.fmuladd.f64(double 0xBCAE000000000002, double %7092, double %7084)
  %7094 = load ptr, ptr %7, align 8, !tbaa !9
  %7095 = load i32, ptr %12, align 4, !tbaa !5
  %7096 = load i32, ptr %8, align 4, !tbaa !5
  %7097 = mul nsw i32 32, %7096
  %7098 = add nsw i32 %7095, %7097
  %7099 = sext i32 %7098 to i64
  %7100 = getelementptr inbounds double, ptr %7094, i64 %7099
  %7101 = load double, ptr %7100, align 8, !tbaa !11
  %7102 = call double @llvm.fmuladd.f64(double 0x3C50000000000000, double %7101, double %7093)
  %7103 = load ptr, ptr %7, align 8, !tbaa !9
  %7104 = load i32, ptr %12, align 4, !tbaa !5
  %7105 = load i32, ptr %8, align 4, !tbaa !5
  %7106 = mul nsw i32 33, %7105
  %7107 = add nsw i32 %7104, %7106
  %7108 = sext i32 %7107 to i64
  %7109 = getelementptr inbounds double, ptr %7103, i64 %7108
  %7110 = load double, ptr %7109, align 8, !tbaa !11
  %7111 = call double @llvm.fmuladd.f64(double 0xBC96800000000000, double %7110, double %7102)
  %7112 = load ptr, ptr %7, align 8, !tbaa !9
  %7113 = load i32, ptr %12, align 4, !tbaa !5
  %7114 = load i32, ptr %8, align 4, !tbaa !5
  %7115 = mul nsw i32 34, %7114
  %7116 = add nsw i32 %7113, %7115
  %7117 = sext i32 %7116 to i64
  %7118 = getelementptr inbounds double, ptr %7112, i64 %7117
  %7119 = load double, ptr %7118, align 8, !tbaa !11
  %7120 = call double @llvm.fmuladd.f64(double 0xBC78000000000002, double %7119, double %7111)
  %7121 = load ptr, ptr %7, align 8, !tbaa !9
  %7122 = load i32, ptr %12, align 4, !tbaa !5
  %7123 = load i32, ptr %8, align 4, !tbaa !5
  %7124 = mul nsw i32 35, %7123
  %7125 = add nsw i32 %7122, %7124
  %7126 = sext i32 %7125 to i64
  %7127 = getelementptr inbounds double, ptr %7121, i64 %7126
  %7128 = load double, ptr %7127, align 8, !tbaa !11
  %7129 = call double @llvm.fmuladd.f64(double 0x3CA2FFFFFFFFFFFE, double %7128, double %7120)
  %7130 = load ptr, ptr %7, align 8, !tbaa !9
  %7131 = load i32, ptr %12, align 4, !tbaa !5
  %7132 = load i32, ptr %8, align 4, !tbaa !5
  %7133 = mul nsw i32 36, %7132
  %7134 = add nsw i32 %7131, %7133
  %7135 = sext i32 %7134 to i64
  %7136 = getelementptr inbounds double, ptr %7130, i64 %7135
  %7137 = load double, ptr %7136, align 8, !tbaa !11
  %7138 = call double @llvm.fmuladd.f64(double 0x3C9A000000000000, double %7137, double %7129)
  %7139 = load ptr, ptr %7, align 8, !tbaa !9
  %7140 = load i32, ptr %12, align 4, !tbaa !5
  %7141 = load i32, ptr %8, align 4, !tbaa !5
  %7142 = mul nsw i32 37, %7141
  %7143 = add nsw i32 %7140, %7142
  %7144 = sext i32 %7143 to i64
  %7145 = getelementptr inbounds double, ptr %7139, i64 %7144
  %7146 = load double, ptr %7145, align 8, !tbaa !11
  %7147 = call double @llvm.fmuladd.f64(double 0x3CA3800000000002, double %7146, double %7138)
  %7148 = load ptr, ptr %7, align 8, !tbaa !9
  %7149 = load i32, ptr %12, align 4, !tbaa !5
  %7150 = load i32, ptr %8, align 4, !tbaa !5
  %7151 = mul nsw i32 38, %7150
  %7152 = add nsw i32 %7149, %7151
  %7153 = sext i32 %7152 to i64
  %7154 = getelementptr inbounds double, ptr %7148, i64 %7153
  %7155 = load double, ptr %7154, align 8, !tbaa !11
  %7156 = call double @llvm.fmuladd.f64(double 0x3CBCFFFFFFFFFFFF, double %7155, double %7147)
  %7157 = load ptr, ptr %7, align 8, !tbaa !9
  %7158 = load i32, ptr %12, align 4, !tbaa !5
  %7159 = load i32, ptr %8, align 4, !tbaa !5
  %7160 = mul nsw i32 39, %7159
  %7161 = add nsw i32 %7158, %7160
  %7162 = sext i32 %7161 to i64
  %7163 = getelementptr inbounds double, ptr %7157, i64 %7162
  %7164 = load double, ptr %7163, align 8, !tbaa !11
  %7165 = call double @llvm.fmuladd.f64(double 0x3FF86DB962AC2966, double %7164, double %7156)
  store double %7165, ptr %11, align 8, !tbaa !11
  %7166 = load double, ptr %11, align 8, !tbaa !11
  %7167 = load ptr, ptr %9, align 8, !tbaa !9
  %7168 = load i32, ptr %12, align 4, !tbaa !5
  %7169 = load i32, ptr %10, align 4, !tbaa !5
  %7170 = mul nsw i32 19, %7169
  %7171 = add nsw i32 %7168, %7170
  %7172 = sext i32 %7171 to i64
  %7173 = getelementptr inbounds double, ptr %7167, i64 %7172
  %7174 = load double, ptr %7173, align 8, !tbaa !11
  %7175 = fadd double %7174, %7166
  store double %7175, ptr %7173, align 8, !tbaa !11
  %7176 = load ptr, ptr %7, align 8, !tbaa !9
  %7177 = load i32, ptr %12, align 4, !tbaa !5
  %7178 = load i32, ptr %8, align 4, !tbaa !5
  %7179 = mul nsw i32 0, %7178
  %7180 = add nsw i32 %7177, %7179
  %7181 = sext i32 %7180 to i64
  %7182 = getelementptr inbounds double, ptr %7176, i64 %7181
  %7183 = load double, ptr %7182, align 8, !tbaa !11
  %7184 = load ptr, ptr %7, align 8, !tbaa !9
  %7185 = load i32, ptr %12, align 4, !tbaa !5
  %7186 = load i32, ptr %8, align 4, !tbaa !5
  %7187 = mul nsw i32 1, %7186
  %7188 = add nsw i32 %7185, %7187
  %7189 = sext i32 %7188 to i64
  %7190 = getelementptr inbounds double, ptr %7184, i64 %7189
  %7191 = load double, ptr %7190, align 8, !tbaa !11
  %7192 = fmul double 0xBFB5B58B4F03B1A2, %7191
  %7193 = call double @llvm.fmuladd.f64(double 0xBF83152016E0ECA0, double %7183, double %7192)
  %7194 = load ptr, ptr %7, align 8, !tbaa !9
  %7195 = load i32, ptr %12, align 4, !tbaa !5
  %7196 = load i32, ptr %8, align 4, !tbaa !5
  %7197 = mul nsw i32 2, %7196
  %7198 = add nsw i32 %7195, %7197
  %7199 = sext i32 %7198 to i64
  %7200 = getelementptr inbounds double, ptr %7194, i64 %7199
  %7201 = load double, ptr %7200, align 8, !tbaa !11
  %7202 = call double @llvm.fmuladd.f64(double 0x3F938CE4890DB307, double %7201, double %7193)
  %7203 = load ptr, ptr %7, align 8, !tbaa !9
  %7204 = load i32, ptr %12, align 4, !tbaa !5
  %7205 = load i32, ptr %8, align 4, !tbaa !5
  %7206 = mul nsw i32 3, %7205
  %7207 = add nsw i32 %7204, %7206
  %7208 = sext i32 %7207 to i64
  %7209 = getelementptr inbounds double, ptr %7203, i64 %7208
  %7210 = load double, ptr %7209, align 8, !tbaa !11
  %7211 = call double @llvm.fmuladd.f64(double 0x3FF4EC1BB3FDC612, double %7210, double %7202)
  %7212 = load ptr, ptr %7, align 8, !tbaa !9
  %7213 = load i32, ptr %12, align 4, !tbaa !5
  %7214 = load i32, ptr %8, align 4, !tbaa !5
  %7215 = mul nsw i32 4, %7214
  %7216 = add nsw i32 %7213, %7215
  %7217 = sext i32 %7216 to i64
  %7218 = getelementptr inbounds double, ptr %7212, i64 %7217
  %7219 = load double, ptr %7218, align 8, !tbaa !11
  %7220 = call double @llvm.fmuladd.f64(double 0x3F85E50BB681A41A, double %7219, double %7211)
  %7221 = load ptr, ptr %7, align 8, !tbaa !9
  %7222 = load i32, ptr %12, align 4, !tbaa !5
  %7223 = load i32, ptr %8, align 4, !tbaa !5
  %7224 = mul nsw i32 5, %7223
  %7225 = add nsw i32 %7222, %7224
  %7226 = sext i32 %7225 to i64
  %7227 = getelementptr inbounds double, ptr %7221, i64 %7226
  %7228 = load double, ptr %7227, align 8, !tbaa !11
  %7229 = call double @llvm.fmuladd.f64(double 0xBFE5679E70A60657, double %7228, double %7220)
  %7230 = load ptr, ptr %7, align 8, !tbaa !9
  %7231 = load i32, ptr %12, align 4, !tbaa !5
  %7232 = load i32, ptr %8, align 4, !tbaa !5
  %7233 = mul nsw i32 6, %7232
  %7234 = add nsw i32 %7231, %7233
  %7235 = sext i32 %7234 to i64
  %7236 = getelementptr inbounds double, ptr %7230, i64 %7235
  %7237 = load double, ptr %7236, align 8, !tbaa !11
  %7238 = call double @llvm.fmuladd.f64(double 0x3FCA50C41AB7A334, double %7237, double %7229)
  %7239 = load ptr, ptr %7, align 8, !tbaa !9
  %7240 = load i32, ptr %12, align 4, !tbaa !5
  %7241 = load i32, ptr %8, align 4, !tbaa !5
  %7242 = mul nsw i32 7, %7241
  %7243 = add nsw i32 %7240, %7242
  %7244 = sext i32 %7243 to i64
  %7245 = getelementptr inbounds double, ptr %7239, i64 %7244
  %7246 = load double, ptr %7245, align 8, !tbaa !11
  %7247 = call double @llvm.fmuladd.f64(double 0xBFB49217631F5953, double %7246, double %7238)
  %7248 = load ptr, ptr %7, align 8, !tbaa !9
  %7249 = load i32, ptr %12, align 4, !tbaa !5
  %7250 = load i32, ptr %8, align 4, !tbaa !5
  %7251 = mul nsw i32 8, %7250
  %7252 = add nsw i32 %7249, %7251
  %7253 = sext i32 %7252 to i64
  %7254 = getelementptr inbounds double, ptr %7248, i64 %7253
  %7255 = load double, ptr %7254, align 8, !tbaa !11
  %7256 = call double @llvm.fmuladd.f64(double 0x3FD417DEBFC17B18, double %7255, double %7247)
  %7257 = load ptr, ptr %7, align 8, !tbaa !9
  %7258 = load i32, ptr %12, align 4, !tbaa !5
  %7259 = load i32, ptr %8, align 4, !tbaa !5
  %7260 = mul nsw i32 9, %7259
  %7261 = add nsw i32 %7258, %7260
  %7262 = sext i32 %7261 to i64
  %7263 = getelementptr inbounds double, ptr %7257, i64 %7262
  %7264 = load double, ptr %7263, align 8, !tbaa !11
  %7265 = call double @llvm.fmuladd.f64(double 0xBF8BDAF699AECF20, double %7264, double %7256)
  %7266 = load ptr, ptr %7, align 8, !tbaa !9
  %7267 = load i32, ptr %12, align 4, !tbaa !5
  %7268 = load i32, ptr %8, align 4, !tbaa !5
  %7269 = mul nsw i32 10, %7268
  %7270 = add nsw i32 %7267, %7269
  %7271 = sext i32 %7270 to i64
  %7272 = getelementptr inbounds double, ptr %7266, i64 %7271
  %7273 = load double, ptr %7272, align 8, !tbaa !11
  %7274 = call double @llvm.fmuladd.f64(double 0x3CA4000000000001, double %7273, double %7265)
  %7275 = load ptr, ptr %7, align 8, !tbaa !9
  %7276 = load i32, ptr %12, align 4, !tbaa !5
  %7277 = load i32, ptr %8, align 4, !tbaa !5
  %7278 = mul nsw i32 11, %7277
  %7279 = add nsw i32 %7276, %7278
  %7280 = sext i32 %7279 to i64
  %7281 = getelementptr inbounds double, ptr %7275, i64 %7280
  %7282 = load double, ptr %7281, align 8, !tbaa !11
  %7283 = call double @llvm.fmuladd.f64(double 0x3C88000000000000, double %7282, double %7274)
  %7284 = load ptr, ptr %7, align 8, !tbaa !9
  %7285 = load i32, ptr %12, align 4, !tbaa !5
  %7286 = load i32, ptr %8, align 4, !tbaa !5
  %7287 = mul nsw i32 12, %7286
  %7288 = add nsw i32 %7285, %7287
  %7289 = sext i32 %7288 to i64
  %7290 = getelementptr inbounds double, ptr %7284, i64 %7289
  %7291 = load double, ptr %7290, align 8, !tbaa !11
  %7292 = call double @llvm.fmuladd.f64(double 0xBC74000000000000, double %7291, double %7283)
  %7293 = load ptr, ptr %7, align 8, !tbaa !9
  %7294 = load i32, ptr %12, align 4, !tbaa !5
  %7295 = load i32, ptr %8, align 4, !tbaa !5
  %7296 = mul nsw i32 13, %7295
  %7297 = add nsw i32 %7294, %7296
  %7298 = sext i32 %7297 to i64
  %7299 = getelementptr inbounds double, ptr %7293, i64 %7298
  %7300 = load double, ptr %7299, align 8, !tbaa !11
  %7301 = call double @llvm.fmuladd.f64(double 0x3CB4E00000000000, double %7300, double %7292)
  %7302 = load ptr, ptr %7, align 8, !tbaa !9
  %7303 = load i32, ptr %12, align 4, !tbaa !5
  %7304 = load i32, ptr %8, align 4, !tbaa !5
  %7305 = mul nsw i32 14, %7304
  %7306 = add nsw i32 %7303, %7305
  %7307 = sext i32 %7306 to i64
  %7308 = getelementptr inbounds double, ptr %7302, i64 %7307
  %7309 = load double, ptr %7308, align 8, !tbaa !11
  %7310 = call double @llvm.fmuladd.f64(double 0x3C70000000000001, double %7309, double %7301)
  %7311 = load ptr, ptr %7, align 8, !tbaa !9
  %7312 = load i32, ptr %12, align 4, !tbaa !5
  %7313 = load i32, ptr %8, align 4, !tbaa !5
  %7314 = mul nsw i32 15, %7313
  %7315 = add nsw i32 %7312, %7314
  %7316 = sext i32 %7315 to i64
  %7317 = getelementptr inbounds double, ptr %7311, i64 %7316
  %7318 = load double, ptr %7317, align 8, !tbaa !11
  %7319 = call double @llvm.fmuladd.f64(double 0xBCAB000000000001, double %7318, double %7310)
  %7320 = load ptr, ptr %7, align 8, !tbaa !9
  %7321 = load i32, ptr %12, align 4, !tbaa !5
  %7322 = load i32, ptr %8, align 4, !tbaa !5
  %7323 = mul nsw i32 16, %7322
  %7324 = add nsw i32 %7321, %7323
  %7325 = sext i32 %7324 to i64
  %7326 = getelementptr inbounds double, ptr %7320, i64 %7325
  %7327 = load double, ptr %7326, align 8, !tbaa !11
  %7328 = call double @llvm.fmuladd.f64(double 0xBC91000000000000, double %7327, double %7319)
  %7329 = load ptr, ptr %7, align 8, !tbaa !9
  %7330 = load i32, ptr %12, align 4, !tbaa !5
  %7331 = load i32, ptr %8, align 4, !tbaa !5
  %7332 = mul nsw i32 17, %7331
  %7333 = add nsw i32 %7330, %7332
  %7334 = sext i32 %7333 to i64
  %7335 = getelementptr inbounds double, ptr %7329, i64 %7334
  %7336 = load double, ptr %7335, align 8, !tbaa !11
  %7337 = call double @llvm.fmuladd.f64(double 0xBC86000000000001, double %7336, double %7328)
  %7338 = load ptr, ptr %7, align 8, !tbaa !9
  %7339 = load i32, ptr %12, align 4, !tbaa !5
  %7340 = load i32, ptr %8, align 4, !tbaa !5
  %7341 = mul nsw i32 19, %7340
  %7342 = add nsw i32 %7339, %7341
  %7343 = sext i32 %7342 to i64
  %7344 = getelementptr inbounds double, ptr %7338, i64 %7343
  %7345 = load double, ptr %7344, align 8, !tbaa !11
  %7346 = call double @llvm.fmuladd.f64(double 0x3C94000000000000, double %7345, double %7337)
  %7347 = load ptr, ptr %7, align 8, !tbaa !9
  %7348 = load i32, ptr %12, align 4, !tbaa !5
  %7349 = load i32, ptr %8, align 4, !tbaa !5
  %7350 = mul nsw i32 20, %7349
  %7351 = add nsw i32 %7348, %7350
  %7352 = sext i32 %7351 to i64
  %7353 = getelementptr inbounds double, ptr %7347, i64 %7352
  %7354 = load double, ptr %7353, align 8, !tbaa !11
  %7355 = call double @llvm.fmuladd.f64(double 0xBCA0000000000002, double %7354, double %7346)
  %7356 = load ptr, ptr %7, align 8, !tbaa !9
  %7357 = load i32, ptr %12, align 4, !tbaa !5
  %7358 = load i32, ptr %8, align 4, !tbaa !5
  %7359 = mul nsw i32 22, %7358
  %7360 = add nsw i32 %7357, %7359
  %7361 = sext i32 %7360 to i64
  %7362 = getelementptr inbounds double, ptr %7356, i64 %7361
  %7363 = load double, ptr %7362, align 8, !tbaa !11
  %7364 = call double @llvm.fmuladd.f64(double 0x3C8C000000000000, double %7363, double %7355)
  %7365 = load ptr, ptr %7, align 8, !tbaa !9
  %7366 = load i32, ptr %12, align 4, !tbaa !5
  %7367 = load i32, ptr %8, align 4, !tbaa !5
  %7368 = mul nsw i32 23, %7367
  %7369 = add nsw i32 %7366, %7368
  %7370 = sext i32 %7369 to i64
  %7371 = getelementptr inbounds double, ptr %7365, i64 %7370
  %7372 = load double, ptr %7371, align 8, !tbaa !11
  %7373 = call double @llvm.fmuladd.f64(double 0xBC74000000000000, double %7372, double %7364)
  %7374 = load ptr, ptr %7, align 8, !tbaa !9
  %7375 = load i32, ptr %12, align 4, !tbaa !5
  %7376 = load i32, ptr %8, align 4, !tbaa !5
  %7377 = mul nsw i32 24, %7376
  %7378 = add nsw i32 %7375, %7377
  %7379 = sext i32 %7378 to i64
  %7380 = getelementptr inbounds double, ptr %7374, i64 %7379
  %7381 = load double, ptr %7380, align 8, !tbaa !11
  %7382 = call double @llvm.fmuladd.f64(double 0xBC70000000000001, double %7381, double %7373)
  %7383 = load ptr, ptr %7, align 8, !tbaa !9
  %7384 = load i32, ptr %12, align 4, !tbaa !5
  %7385 = load i32, ptr %8, align 4, !tbaa !5
  %7386 = mul nsw i32 25, %7385
  %7387 = add nsw i32 %7384, %7386
  %7388 = sext i32 %7387 to i64
  %7389 = getelementptr inbounds double, ptr %7383, i64 %7388
  %7390 = load double, ptr %7389, align 8, !tbaa !11
  %7391 = call double @llvm.fmuladd.f64(double 0xBCB07FFFFFFFFFFF, double %7390, double %7382)
  %7392 = load ptr, ptr %7, align 8, !tbaa !9
  %7393 = load i32, ptr %12, align 4, !tbaa !5
  %7394 = load i32, ptr %8, align 4, !tbaa !5
  %7395 = mul nsw i32 26, %7394
  %7396 = add nsw i32 %7393, %7395
  %7397 = sext i32 %7396 to i64
  %7398 = getelementptr inbounds double, ptr %7392, i64 %7397
  %7399 = load double, ptr %7398, align 8, !tbaa !11
  %7400 = call double @llvm.fmuladd.f64(double 0x3CA0800000000001, double %7399, double %7391)
  %7401 = load ptr, ptr %7, align 8, !tbaa !9
  %7402 = load i32, ptr %12, align 4, !tbaa !5
  %7403 = load i32, ptr %8, align 4, !tbaa !5
  %7404 = mul nsw i32 27, %7403
  %7405 = add nsw i32 %7402, %7404
  %7406 = sext i32 %7405 to i64
  %7407 = getelementptr inbounds double, ptr %7401, i64 %7406
  %7408 = load double, ptr %7407, align 8, !tbaa !11
  %7409 = call double @llvm.fmuladd.f64(double 0xBC82000000000000, double %7408, double %7400)
  %7410 = load ptr, ptr %7, align 8, !tbaa !9
  %7411 = load i32, ptr %12, align 4, !tbaa !5
  %7412 = load i32, ptr %8, align 4, !tbaa !5
  %7413 = mul nsw i32 28, %7412
  %7414 = add nsw i32 %7411, %7413
  %7415 = sext i32 %7414 to i64
  %7416 = getelementptr inbounds double, ptr %7410, i64 %7415
  %7417 = load double, ptr %7416, align 8, !tbaa !11
  %7418 = call double @llvm.fmuladd.f64(double 0x3CA5FFFFFFFFFFFF, double %7417, double %7409)
  %7419 = load ptr, ptr %7, align 8, !tbaa !9
  %7420 = load i32, ptr %12, align 4, !tbaa !5
  %7421 = load i32, ptr %8, align 4, !tbaa !5
  %7422 = mul nsw i32 29, %7421
  %7423 = add nsw i32 %7420, %7422
  %7424 = sext i32 %7423 to i64
  %7425 = getelementptr inbounds double, ptr %7419, i64 %7424
  %7426 = load double, ptr %7425, align 8, !tbaa !11
  %7427 = call double @llvm.fmuladd.f64(double 0xBC9C000000000000, double %7426, double %7418)
  %7428 = load ptr, ptr %7, align 8, !tbaa !9
  %7429 = load i32, ptr %12, align 4, !tbaa !5
  %7430 = load i32, ptr %8, align 4, !tbaa !5
  %7431 = mul nsw i32 30, %7430
  %7432 = add nsw i32 %7429, %7431
  %7433 = sext i32 %7432 to i64
  %7434 = getelementptr inbounds double, ptr %7428, i64 %7433
  %7435 = load double, ptr %7434, align 8, !tbaa !11
  %7436 = call double @llvm.fmuladd.f64(double 0x3C82000000000000, double %7435, double %7427)
  %7437 = load ptr, ptr %7, align 8, !tbaa !9
  %7438 = load i32, ptr %12, align 4, !tbaa !5
  %7439 = load i32, ptr %8, align 4, !tbaa !5
  %7440 = mul nsw i32 31, %7439
  %7441 = add nsw i32 %7438, %7440
  %7442 = sext i32 %7441 to i64
  %7443 = getelementptr inbounds double, ptr %7437, i64 %7442
  %7444 = load double, ptr %7443, align 8, !tbaa !11
  %7445 = call double @llvm.fmuladd.f64(double 0x3C74000000000000, double %7444, double %7436)
  %7446 = load ptr, ptr %7, align 8, !tbaa !9
  %7447 = load i32, ptr %12, align 4, !tbaa !5
  %7448 = load i32, ptr %8, align 4, !tbaa !5
  %7449 = mul nsw i32 32, %7448
  %7450 = add nsw i32 %7447, %7449
  %7451 = sext i32 %7450 to i64
  %7452 = getelementptr inbounds double, ptr %7446, i64 %7451
  %7453 = load double, ptr %7452, align 8, !tbaa !11
  %7454 = call double @llvm.fmuladd.f64(double 0xBC6C000000000000, double %7453, double %7445)
  %7455 = load ptr, ptr %7, align 8, !tbaa !9
  %7456 = load i32, ptr %12, align 4, !tbaa !5
  %7457 = load i32, ptr %8, align 4, !tbaa !5
  %7458 = mul nsw i32 33, %7457
  %7459 = add nsw i32 %7456, %7458
  %7460 = sext i32 %7459 to i64
  %7461 = getelementptr inbounds double, ptr %7455, i64 %7460
  %7462 = load double, ptr %7461, align 8, !tbaa !11
  %7463 = call double @llvm.fmuladd.f64(double 0x3C96C00000000000, double %7462, double %7454)
  %7464 = load ptr, ptr %7, align 8, !tbaa !9
  %7465 = load i32, ptr %12, align 4, !tbaa !5
  %7466 = load i32, ptr %8, align 4, !tbaa !5
  %7467 = mul nsw i32 34, %7466
  %7468 = add nsw i32 %7465, %7467
  %7469 = sext i32 %7468 to i64
  %7470 = getelementptr inbounds double, ptr %7464, i64 %7469
  %7471 = load double, ptr %7470, align 8, !tbaa !11
  %7472 = call double @llvm.fmuladd.f64(double 0xBC99000000000000, double %7471, double %7463)
  %7473 = load ptr, ptr %7, align 8, !tbaa !9
  %7474 = load i32, ptr %12, align 4, !tbaa !5
  %7475 = load i32, ptr %8, align 4, !tbaa !5
  %7476 = mul nsw i32 35, %7475
  %7477 = add nsw i32 %7474, %7476
  %7478 = sext i32 %7477 to i64
  %7479 = getelementptr inbounds double, ptr %7473, i64 %7478
  %7480 = load double, ptr %7479, align 8, !tbaa !11
  %7481 = call double @llvm.fmuladd.f64(double 0xBC89FFFFFFFFFFFF, double %7480, double %7472)
  %7482 = load ptr, ptr %7, align 8, !tbaa !9
  %7483 = load i32, ptr %12, align 4, !tbaa !5
  %7484 = load i32, ptr %8, align 4, !tbaa !5
  %7485 = mul nsw i32 36, %7484
  %7486 = add nsw i32 %7483, %7485
  %7487 = sext i32 %7486 to i64
  %7488 = getelementptr inbounds double, ptr %7482, i64 %7487
  %7489 = load double, ptr %7488, align 8, !tbaa !11
  %7490 = call double @llvm.fmuladd.f64(double 0xBC8B000000000000, double %7489, double %7481)
  %7491 = load ptr, ptr %7, align 8, !tbaa !9
  %7492 = load i32, ptr %12, align 4, !tbaa !5
  %7493 = load i32, ptr %8, align 4, !tbaa !5
  %7494 = mul nsw i32 37, %7493
  %7495 = add nsw i32 %7492, %7494
  %7496 = sext i32 %7495 to i64
  %7497 = getelementptr inbounds double, ptr %7491, i64 %7496
  %7498 = load double, ptr %7497, align 8, !tbaa !11
  %7499 = call double @llvm.fmuladd.f64(double 0x3C85000000000000, double %7498, double %7490)
  %7500 = load ptr, ptr %7, align 8, !tbaa !9
  %7501 = load i32, ptr %12, align 4, !tbaa !5
  %7502 = load i32, ptr %8, align 4, !tbaa !5
  %7503 = mul nsw i32 38, %7502
  %7504 = add nsw i32 %7501, %7503
  %7505 = sext i32 %7504 to i64
  %7506 = getelementptr inbounds double, ptr %7500, i64 %7505
  %7507 = load double, ptr %7506, align 8, !tbaa !11
  %7508 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %7507, double %7499)
  %7509 = load ptr, ptr %7, align 8, !tbaa !9
  %7510 = load i32, ptr %12, align 4, !tbaa !5
  %7511 = load i32, ptr %8, align 4, !tbaa !5
  %7512 = mul nsw i32 39, %7511
  %7513 = add nsw i32 %7510, %7512
  %7514 = sext i32 %7513 to i64
  %7515 = getelementptr inbounds double, ptr %7509, i64 %7514
  %7516 = load double, ptr %7515, align 8, !tbaa !11
  %7517 = call double @llvm.fmuladd.f64(double 0xBC92000000000000, double %7516, double %7508)
  store double %7517, ptr %11, align 8, !tbaa !11
  %7518 = load double, ptr %11, align 8, !tbaa !11
  %7519 = load ptr, ptr %9, align 8, !tbaa !9
  %7520 = load i32, ptr %12, align 4, !tbaa !5
  %7521 = load i32, ptr %10, align 4, !tbaa !5
  %7522 = mul nsw i32 20, %7521
  %7523 = add nsw i32 %7520, %7522
  %7524 = sext i32 %7523 to i64
  %7525 = getelementptr inbounds double, ptr %7519, i64 %7524
  %7526 = load double, ptr %7525, align 8, !tbaa !11
  %7527 = fadd double %7526, %7518
  store double %7527, ptr %7525, align 8, !tbaa !11
  %7528 = load ptr, ptr %7, align 8, !tbaa !9
  %7529 = load i32, ptr %12, align 4, !tbaa !5
  %7530 = load i32, ptr %8, align 4, !tbaa !5
  %7531 = mul nsw i32 0, %7530
  %7532 = add nsw i32 %7529, %7531
  %7533 = sext i32 %7532 to i64
  %7534 = getelementptr inbounds double, ptr %7528, i64 %7533
  %7535 = load double, ptr %7534, align 8, !tbaa !11
  %7536 = load ptr, ptr %7, align 8, !tbaa !9
  %7537 = load i32, ptr %12, align 4, !tbaa !5
  %7538 = load i32, ptr %8, align 4, !tbaa !5
  %7539 = mul nsw i32 1, %7538
  %7540 = add nsw i32 %7537, %7539
  %7541 = sext i32 %7540 to i64
  %7542 = getelementptr inbounds double, ptr %7536, i64 %7541
  %7543 = load double, ptr %7542, align 8, !tbaa !11
  %7544 = fmul double 0xBFBEED13A9F0D8FA, %7543
  %7545 = call double @llvm.fmuladd.f64(double 0xBFE333710B32A29B, double %7535, double %7544)
  %7546 = load ptr, ptr %7, align 8, !tbaa !9
  %7547 = load i32, ptr %12, align 4, !tbaa !5
  %7548 = load i32, ptr %8, align 4, !tbaa !5
  %7549 = mul nsw i32 2, %7548
  %7550 = add nsw i32 %7547, %7549
  %7551 = sext i32 %7550 to i64
  %7552 = getelementptr inbounds double, ptr %7546, i64 %7551
  %7553 = load double, ptr %7552, align 8, !tbaa !11
  %7554 = call double @llvm.fmuladd.f64(double 0xBFA352D4DB969C1C, double %7553, double %7545)
  %7555 = load ptr, ptr %7, align 8, !tbaa !9
  %7556 = load i32, ptr %12, align 4, !tbaa !5
  %7557 = load i32, ptr %8, align 4, !tbaa !5
  %7558 = mul nsw i32 3, %7557
  %7559 = add nsw i32 %7556, %7558
  %7560 = sext i32 %7559 to i64
  %7561 = getelementptr inbounds double, ptr %7555, i64 %7560
  %7562 = load double, ptr %7561, align 8, !tbaa !11
  %7563 = call double @llvm.fmuladd.f64(double 0x3FA87D764354853D, double %7562, double %7554)
  %7564 = load ptr, ptr %7, align 8, !tbaa !9
  %7565 = load i32, ptr %12, align 4, !tbaa !5
  %7566 = load i32, ptr %8, align 4, !tbaa !5
  %7567 = mul nsw i32 4, %7566
  %7568 = add nsw i32 %7565, %7567
  %7569 = sext i32 %7568 to i64
  %7570 = getelementptr inbounds double, ptr %7564, i64 %7569
  %7571 = load double, ptr %7570, align 8, !tbaa !11
  %7572 = call double @llvm.fmuladd.f64(double 0x3F9854E0ADA34BB8, double %7571, double %7563)
  %7573 = load ptr, ptr %7, align 8, !tbaa !9
  %7574 = load i32, ptr %12, align 4, !tbaa !5
  %7575 = load i32, ptr %8, align 4, !tbaa !5
  %7576 = mul nsw i32 5, %7575
  %7577 = add nsw i32 %7574, %7576
  %7578 = sext i32 %7577 to i64
  %7579 = getelementptr inbounds double, ptr %7573, i64 %7578
  %7580 = load double, ptr %7579, align 8, !tbaa !11
  %7581 = call double @llvm.fmuladd.f64(double 0xBFD41C0D131D4295, double %7580, double %7572)
  %7582 = load ptr, ptr %7, align 8, !tbaa !9
  %7583 = load i32, ptr %12, align 4, !tbaa !5
  %7584 = load i32, ptr %8, align 4, !tbaa !5
  %7585 = mul nsw i32 6, %7584
  %7586 = add nsw i32 %7583, %7585
  %7587 = sext i32 %7586 to i64
  %7588 = getelementptr inbounds double, ptr %7582, i64 %7587
  %7589 = load double, ptr %7588, align 8, !tbaa !11
  %7590 = call double @llvm.fmuladd.f64(double 0x3FF670C5F1F4C929, double %7589, double %7581)
  %7591 = load ptr, ptr %7, align 8, !tbaa !9
  %7592 = load i32, ptr %12, align 4, !tbaa !5
  %7593 = load i32, ptr %8, align 4, !tbaa !5
  %7594 = mul nsw i32 7, %7593
  %7595 = add nsw i32 %7592, %7594
  %7596 = sext i32 %7595 to i64
  %7597 = getelementptr inbounds double, ptr %7591, i64 %7596
  %7598 = load double, ptr %7597, align 8, !tbaa !11
  %7599 = call double @llvm.fmuladd.f64(double 0x3FC36A9134CD3C5F, double %7598, double %7590)
  %7600 = load ptr, ptr %7, align 8, !tbaa !9
  %7601 = load i32, ptr %12, align 4, !tbaa !5
  %7602 = load i32, ptr %8, align 4, !tbaa !5
  %7603 = mul nsw i32 8, %7602
  %7604 = add nsw i32 %7601, %7603
  %7605 = sext i32 %7604 to i64
  %7606 = getelementptr inbounds double, ptr %7600, i64 %7605
  %7607 = load double, ptr %7606, align 8, !tbaa !11
  %7608 = call double @llvm.fmuladd.f64(double 0x3FD35DAE88CBA648, double %7607, double %7599)
  %7609 = load ptr, ptr %7, align 8, !tbaa !9
  %7610 = load i32, ptr %12, align 4, !tbaa !5
  %7611 = load i32, ptr %8, align 4, !tbaa !5
  %7612 = mul nsw i32 9, %7611
  %7613 = add nsw i32 %7610, %7612
  %7614 = sext i32 %7613 to i64
  %7615 = getelementptr inbounds double, ptr %7609, i64 %7614
  %7616 = load double, ptr %7615, align 8, !tbaa !11
  %7617 = call double @llvm.fmuladd.f64(double 0x3FC27B05E24EC5FB, double %7616, double %7608)
  %7618 = load ptr, ptr %7, align 8, !tbaa !9
  %7619 = load i32, ptr %12, align 4, !tbaa !5
  %7620 = load i32, ptr %8, align 4, !tbaa !5
  %7621 = mul nsw i32 10, %7620
  %7622 = add nsw i32 %7619, %7621
  %7623 = sext i32 %7622 to i64
  %7624 = getelementptr inbounds double, ptr %7618, i64 %7623
  %7625 = load double, ptr %7624, align 8, !tbaa !11
  %7626 = call double @llvm.fmuladd.f64(double 0x3C70000000000001, double %7625, double %7617)
  %7627 = load ptr, ptr %7, align 8, !tbaa !9
  %7628 = load i32, ptr %12, align 4, !tbaa !5
  %7629 = load i32, ptr %8, align 4, !tbaa !5
  %7630 = mul nsw i32 11, %7629
  %7631 = add nsw i32 %7628, %7630
  %7632 = sext i32 %7631 to i64
  %7633 = getelementptr inbounds double, ptr %7627, i64 %7632
  %7634 = load double, ptr %7633, align 8, !tbaa !11
  %7635 = call double @llvm.fmuladd.f64(double 0x3C7FFFFFFFFFFFFF, double %7634, double %7626)
  %7636 = load ptr, ptr %7, align 8, !tbaa !9
  %7637 = load i32, ptr %12, align 4, !tbaa !5
  %7638 = load i32, ptr %8, align 4, !tbaa !5
  %7639 = mul nsw i32 12, %7638
  %7640 = add nsw i32 %7637, %7639
  %7641 = sext i32 %7640 to i64
  %7642 = getelementptr inbounds double, ptr %7636, i64 %7641
  %7643 = load double, ptr %7642, align 8, !tbaa !11
  %7644 = call double @llvm.fmuladd.f64(double 0xBC95000000000000, double %7643, double %7635)
  %7645 = load ptr, ptr %7, align 8, !tbaa !9
  %7646 = load i32, ptr %12, align 4, !tbaa !5
  %7647 = load i32, ptr %8, align 4, !tbaa !5
  %7648 = mul nsw i32 13, %7647
  %7649 = add nsw i32 %7646, %7648
  %7650 = sext i32 %7649 to i64
  %7651 = getelementptr inbounds double, ptr %7645, i64 %7650
  %7652 = load double, ptr %7651, align 8, !tbaa !11
  %7653 = call double @llvm.fmuladd.f64(double 0x3CA3C00000000002, double %7652, double %7644)
  %7654 = load ptr, ptr %7, align 8, !tbaa !9
  %7655 = load i32, ptr %12, align 4, !tbaa !5
  %7656 = load i32, ptr %8, align 4, !tbaa !5
  %7657 = mul nsw i32 14, %7656
  %7658 = add nsw i32 %7655, %7657
  %7659 = sext i32 %7658 to i64
  %7660 = getelementptr inbounds double, ptr %7654, i64 %7659
  %7661 = load double, ptr %7660, align 8, !tbaa !11
  %7662 = call double @llvm.fmuladd.f64(double 0x3C7FFFFFFFFFFFFF, double %7661, double %7653)
  %7663 = load ptr, ptr %7, align 8, !tbaa !9
  %7664 = load i32, ptr %12, align 4, !tbaa !5
  %7665 = load i32, ptr %8, align 4, !tbaa !5
  %7666 = mul nsw i32 15, %7665
  %7667 = add nsw i32 %7664, %7666
  %7668 = sext i32 %7667 to i64
  %7669 = getelementptr inbounds double, ptr %7663, i64 %7668
  %7670 = load double, ptr %7669, align 8, !tbaa !11
  %7671 = call double @llvm.fmuladd.f64(double 0xBC92000000000000, double %7670, double %7662)
  %7672 = load ptr, ptr %7, align 8, !tbaa !9
  %7673 = load i32, ptr %12, align 4, !tbaa !5
  %7674 = load i32, ptr %8, align 4, !tbaa !5
  %7675 = mul nsw i32 16, %7674
  %7676 = add nsw i32 %7673, %7675
  %7677 = sext i32 %7676 to i64
  %7678 = getelementptr inbounds double, ptr %7672, i64 %7677
  %7679 = load double, ptr %7678, align 8, !tbaa !11
  %7680 = call double @llvm.fmuladd.f64(double 0x3CB1000000000001, double %7679, double %7671)
  %7681 = load ptr, ptr %7, align 8, !tbaa !9
  %7682 = load i32, ptr %12, align 4, !tbaa !5
  %7683 = load i32, ptr %8, align 4, !tbaa !5
  %7684 = mul nsw i32 17, %7683
  %7685 = add nsw i32 %7682, %7684
  %7686 = sext i32 %7685 to i64
  %7687 = getelementptr inbounds double, ptr %7681, i64 %7686
  %7688 = load double, ptr %7687, align 8, !tbaa !11
  %7689 = call double @llvm.fmuladd.f64(double 0x3CA3800000000002, double %7688, double %7680)
  %7690 = load ptr, ptr %7, align 8, !tbaa !9
  %7691 = load i32, ptr %12, align 4, !tbaa !5
  %7692 = load i32, ptr %8, align 4, !tbaa !5
  %7693 = mul nsw i32 18, %7692
  %7694 = add nsw i32 %7691, %7693
  %7695 = sext i32 %7694 to i64
  %7696 = getelementptr inbounds double, ptr %7690, i64 %7695
  %7697 = load double, ptr %7696, align 8, !tbaa !11
  %7698 = call double @llvm.fmuladd.f64(double 0xBC98000000000000, double %7697, double %7689)
  %7699 = load ptr, ptr %7, align 8, !tbaa !9
  %7700 = load i32, ptr %12, align 4, !tbaa !5
  %7701 = load i32, ptr %8, align 4, !tbaa !5
  %7702 = mul nsw i32 20, %7701
  %7703 = add nsw i32 %7700, %7702
  %7704 = sext i32 %7703 to i64
  %7705 = getelementptr inbounds double, ptr %7699, i64 %7704
  %7706 = load double, ptr %7705, align 8, !tbaa !11
  %7707 = call double @llvm.fmuladd.f64(double 0x3CAE000000000002, double %7706, double %7698)
  %7708 = load ptr, ptr %7, align 8, !tbaa !9
  %7709 = load i32, ptr %12, align 4, !tbaa !5
  %7710 = load i32, ptr %8, align 4, !tbaa !5
  %7711 = mul nsw i32 21, %7710
  %7712 = add nsw i32 %7709, %7711
  %7713 = sext i32 %7712 to i64
  %7714 = getelementptr inbounds double, ptr %7708, i64 %7713
  %7715 = load double, ptr %7714, align 8, !tbaa !11
  %7716 = call double @llvm.fmuladd.f64(double 0xBCA2000000000000, double %7715, double %7707)
  %7717 = load ptr, ptr %7, align 8, !tbaa !9
  %7718 = load i32, ptr %12, align 4, !tbaa !5
  %7719 = load i32, ptr %8, align 4, !tbaa !5
  %7720 = mul nsw i32 22, %7719
  %7721 = add nsw i32 %7718, %7720
  %7722 = sext i32 %7721 to i64
  %7723 = getelementptr inbounds double, ptr %7717, i64 %7722
  %7724 = load double, ptr %7723, align 8, !tbaa !11
  %7725 = call double @llvm.fmuladd.f64(double 0x3C94000000000000, double %7724, double %7716)
  %7726 = load ptr, ptr %7, align 8, !tbaa !9
  %7727 = load i32, ptr %12, align 4, !tbaa !5
  %7728 = load i32, ptr %8, align 4, !tbaa !5
  %7729 = mul nsw i32 23, %7728
  %7730 = add nsw i32 %7727, %7729
  %7731 = sext i32 %7730 to i64
  %7732 = getelementptr inbounds double, ptr %7726, i64 %7731
  %7733 = load double, ptr %7732, align 8, !tbaa !11
  %7734 = call double @llvm.fmuladd.f64(double 0xBCA1800000000000, double %7733, double %7725)
  %7735 = load ptr, ptr %7, align 8, !tbaa !9
  %7736 = load i32, ptr %12, align 4, !tbaa !5
  %7737 = load i32, ptr %8, align 4, !tbaa !5
  %7738 = mul nsw i32 24, %7737
  %7739 = add nsw i32 %7736, %7738
  %7740 = sext i32 %7739 to i64
  %7741 = getelementptr inbounds double, ptr %7735, i64 %7740
  %7742 = load double, ptr %7741, align 8, !tbaa !11
  %7743 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %7742, double %7734)
  %7744 = load ptr, ptr %7, align 8, !tbaa !9
  %7745 = load i32, ptr %12, align 4, !tbaa !5
  %7746 = load i32, ptr %8, align 4, !tbaa !5
  %7747 = mul nsw i32 25, %7746
  %7748 = add nsw i32 %7745, %7747
  %7749 = sext i32 %7748 to i64
  %7750 = getelementptr inbounds double, ptr %7744, i64 %7749
  %7751 = load double, ptr %7750, align 8, !tbaa !11
  %7752 = call double @llvm.fmuladd.f64(double 0xBC70000000000001, double %7751, double %7743)
  %7753 = load ptr, ptr %7, align 8, !tbaa !9
  %7754 = load i32, ptr %12, align 4, !tbaa !5
  %7755 = load i32, ptr %8, align 4, !tbaa !5
  %7756 = mul nsw i32 26, %7755
  %7757 = add nsw i32 %7754, %7756
  %7758 = sext i32 %7757 to i64
  %7759 = getelementptr inbounds double, ptr %7753, i64 %7758
  %7760 = load double, ptr %7759, align 8, !tbaa !11
  %7761 = call double @llvm.fmuladd.f64(double 0x3CA4800000000001, double %7760, double %7752)
  %7762 = load ptr, ptr %7, align 8, !tbaa !9
  %7763 = load i32, ptr %12, align 4, !tbaa !5
  %7764 = load i32, ptr %8, align 4, !tbaa !5
  %7765 = mul nsw i32 27, %7764
  %7766 = add nsw i32 %7763, %7765
  %7767 = sext i32 %7766 to i64
  %7768 = getelementptr inbounds double, ptr %7762, i64 %7767
  %7769 = load double, ptr %7768, align 8, !tbaa !11
  %7770 = call double @llvm.fmuladd.f64(double 0xBC97000000000000, double %7769, double %7761)
  %7771 = load ptr, ptr %7, align 8, !tbaa !9
  %7772 = load i32, ptr %12, align 4, !tbaa !5
  %7773 = load i32, ptr %8, align 4, !tbaa !5
  %7774 = mul nsw i32 28, %7773
  %7775 = add nsw i32 %7772, %7774
  %7776 = sext i32 %7775 to i64
  %7777 = getelementptr inbounds double, ptr %7771, i64 %7776
  %7778 = load double, ptr %7777, align 8, !tbaa !11
  %7779 = call double @llvm.fmuladd.f64(double 0x3CA5FFFFFFFFFFFF, double %7778, double %7770)
  %7780 = load ptr, ptr %7, align 8, !tbaa !9
  %7781 = load i32, ptr %12, align 4, !tbaa !5
  %7782 = load i32, ptr %8, align 4, !tbaa !5
  %7783 = mul nsw i32 30, %7782
  %7784 = add nsw i32 %7781, %7783
  %7785 = sext i32 %7784 to i64
  %7786 = getelementptr inbounds double, ptr %7780, i64 %7785
  %7787 = load double, ptr %7786, align 8, !tbaa !11
  %7788 = call double @llvm.fmuladd.f64(double 0x3C8E000000000000, double %7787, double %7779)
  %7789 = load ptr, ptr %7, align 8, !tbaa !9
  %7790 = load i32, ptr %12, align 4, !tbaa !5
  %7791 = load i32, ptr %8, align 4, !tbaa !5
  %7792 = mul nsw i32 31, %7791
  %7793 = add nsw i32 %7790, %7792
  %7794 = sext i32 %7793 to i64
  %7795 = getelementptr inbounds double, ptr %7789, i64 %7794
  %7796 = load double, ptr %7795, align 8, !tbaa !11
  %7797 = call double @llvm.fmuladd.f64(double 0x3C97000000000000, double %7796, double %7788)
  %7798 = load ptr, ptr %7, align 8, !tbaa !9
  %7799 = load i32, ptr %12, align 4, !tbaa !5
  %7800 = load i32, ptr %8, align 4, !tbaa !5
  %7801 = mul nsw i32 32, %7800
  %7802 = add nsw i32 %7799, %7801
  %7803 = sext i32 %7802 to i64
  %7804 = getelementptr inbounds double, ptr %7798, i64 %7803
  %7805 = load double, ptr %7804, align 8, !tbaa !11
  %7806 = call double @llvm.fmuladd.f64(double 0x3C7C000000000000, double %7805, double %7797)
  %7807 = load ptr, ptr %7, align 8, !tbaa !9
  %7808 = load i32, ptr %12, align 4, !tbaa !5
  %7809 = load i32, ptr %8, align 4, !tbaa !5
  %7810 = mul nsw i32 33, %7809
  %7811 = add nsw i32 %7808, %7810
  %7812 = sext i32 %7811 to i64
  %7813 = getelementptr inbounds double, ptr %7807, i64 %7812
  %7814 = load double, ptr %7813, align 8, !tbaa !11
  %7815 = call double @llvm.fmuladd.f64(double 0xBC8C000000000000, double %7814, double %7806)
  %7816 = load ptr, ptr %7, align 8, !tbaa !9
  %7817 = load i32, ptr %12, align 4, !tbaa !5
  %7818 = load i32, ptr %8, align 4, !tbaa !5
  %7819 = mul nsw i32 34, %7818
  %7820 = add nsw i32 %7817, %7819
  %7821 = sext i32 %7820 to i64
  %7822 = getelementptr inbounds double, ptr %7816, i64 %7821
  %7823 = load double, ptr %7822, align 8, !tbaa !11
  %7824 = call double @llvm.fmuladd.f64(double 0xBC92000000000000, double %7823, double %7815)
  %7825 = load ptr, ptr %7, align 8, !tbaa !9
  %7826 = load i32, ptr %12, align 4, !tbaa !5
  %7827 = load i32, ptr %8, align 4, !tbaa !5
  %7828 = mul nsw i32 35, %7827
  %7829 = add nsw i32 %7826, %7828
  %7830 = sext i32 %7829 to i64
  %7831 = getelementptr inbounds double, ptr %7825, i64 %7830
  %7832 = load double, ptr %7831, align 8, !tbaa !11
  %7833 = call double @llvm.fmuladd.f64(double 0xBC88000000000000, double %7832, double %7824)
  %7834 = load ptr, ptr %7, align 8, !tbaa !9
  %7835 = load i32, ptr %12, align 4, !tbaa !5
  %7836 = load i32, ptr %8, align 4, !tbaa !5
  %7837 = mul nsw i32 36, %7836
  %7838 = add nsw i32 %7835, %7837
  %7839 = sext i32 %7838 to i64
  %7840 = getelementptr inbounds double, ptr %7834, i64 %7839
  %7841 = load double, ptr %7840, align 8, !tbaa !11
  %7842 = call double @llvm.fmuladd.f64(double 0xBC82000000000000, double %7841, double %7833)
  %7843 = load ptr, ptr %7, align 8, !tbaa !9
  %7844 = load i32, ptr %12, align 4, !tbaa !5
  %7845 = load i32, ptr %8, align 4, !tbaa !5
  %7846 = mul nsw i32 37, %7845
  %7847 = add nsw i32 %7844, %7846
  %7848 = sext i32 %7847 to i64
  %7849 = getelementptr inbounds double, ptr %7843, i64 %7848
  %7850 = load double, ptr %7849, align 8, !tbaa !11
  %7851 = call double @llvm.fmuladd.f64(double 0x3C6C000000000000, double %7850, double %7842)
  %7852 = load ptr, ptr %7, align 8, !tbaa !9
  %7853 = load i32, ptr %12, align 4, !tbaa !5
  %7854 = load i32, ptr %8, align 4, !tbaa !5
  %7855 = mul nsw i32 38, %7854
  %7856 = add nsw i32 %7853, %7855
  %7857 = sext i32 %7856 to i64
  %7858 = getelementptr inbounds double, ptr %7852, i64 %7857
  %7859 = load double, ptr %7858, align 8, !tbaa !11
  %7860 = call double @llvm.fmuladd.f64(double 0x3C8C000000000000, double %7859, double %7851)
  %7861 = load ptr, ptr %7, align 8, !tbaa !9
  %7862 = load i32, ptr %12, align 4, !tbaa !5
  %7863 = load i32, ptr %8, align 4, !tbaa !5
  %7864 = mul nsw i32 39, %7863
  %7865 = add nsw i32 %7862, %7864
  %7866 = sext i32 %7865 to i64
  %7867 = getelementptr inbounds double, ptr %7861, i64 %7866
  %7868 = load double, ptr %7867, align 8, !tbaa !11
  %7869 = call double @llvm.fmuladd.f64(double 0x3C78000000000002, double %7868, double %7860)
  store double %7869, ptr %11, align 8, !tbaa !11
  %7870 = load double, ptr %11, align 8, !tbaa !11
  %7871 = load ptr, ptr %9, align 8, !tbaa !9
  %7872 = load i32, ptr %12, align 4, !tbaa !5
  %7873 = load i32, ptr %10, align 4, !tbaa !5
  %7874 = mul nsw i32 21, %7873
  %7875 = add nsw i32 %7872, %7874
  %7876 = sext i32 %7875 to i64
  %7877 = getelementptr inbounds double, ptr %7871, i64 %7876
  %7878 = load double, ptr %7877, align 8, !tbaa !11
  %7879 = fadd double %7878, %7870
  store double %7879, ptr %7877, align 8, !tbaa !11
  %7880 = load ptr, ptr %7, align 8, !tbaa !9
  %7881 = load i32, ptr %12, align 4, !tbaa !5
  %7882 = load i32, ptr %8, align 4, !tbaa !5
  %7883 = mul nsw i32 0, %7882
  %7884 = add nsw i32 %7881, %7883
  %7885 = sext i32 %7884 to i64
  %7886 = getelementptr inbounds double, ptr %7880, i64 %7885
  %7887 = load double, ptr %7886, align 8, !tbaa !11
  %7888 = load ptr, ptr %7, align 8, !tbaa !9
  %7889 = load i32, ptr %12, align 4, !tbaa !5
  %7890 = load i32, ptr %8, align 4, !tbaa !5
  %7891 = mul nsw i32 1, %7890
  %7892 = add nsw i32 %7889, %7891
  %7893 = sext i32 %7892 to i64
  %7894 = getelementptr inbounds double, ptr %7888, i64 %7893
  %7895 = load double, ptr %7894, align 8, !tbaa !11
  %7896 = fmul double 0xBFBEED13A9F0D902, %7895
  %7897 = call double @llvm.fmuladd.f64(double 0xBFE333710B32A29D, double %7887, double %7896)
  %7898 = load ptr, ptr %7, align 8, !tbaa !9
  %7899 = load i32, ptr %12, align 4, !tbaa !5
  %7900 = load i32, ptr %8, align 4, !tbaa !5
  %7901 = mul nsw i32 2, %7900
  %7902 = add nsw i32 %7899, %7901
  %7903 = sext i32 %7902 to i64
  %7904 = getelementptr inbounds double, ptr %7898, i64 %7903
  %7905 = load double, ptr %7904, align 8, !tbaa !11
  %7906 = call double @llvm.fmuladd.f64(double 0x3FA87D76435484EB, double %7905, double %7897)
  %7907 = load ptr, ptr %7, align 8, !tbaa !9
  %7908 = load i32, ptr %12, align 4, !tbaa !5
  %7909 = load i32, ptr %8, align 4, !tbaa !5
  %7910 = mul nsw i32 3, %7909
  %7911 = add nsw i32 %7908, %7910
  %7912 = sext i32 %7911 to i64
  %7913 = getelementptr inbounds double, ptr %7907, i64 %7912
  %7914 = load double, ptr %7913, align 8, !tbaa !11
  %7915 = call double @llvm.fmuladd.f64(double 0xBFA352D4DB969BE2, double %7914, double %7906)
  %7916 = load ptr, ptr %7, align 8, !tbaa !9
  %7917 = load i32, ptr %12, align 4, !tbaa !5
  %7918 = load i32, ptr %8, align 4, !tbaa !5
  %7919 = mul nsw i32 4, %7918
  %7920 = add nsw i32 %7917, %7919
  %7921 = sext i32 %7920 to i64
  %7922 = getelementptr inbounds double, ptr %7916, i64 %7921
  %7923 = load double, ptr %7922, align 8, !tbaa !11
  %7924 = call double @llvm.fmuladd.f64(double 0xBFD41C0D131D4288, double %7923, double %7915)
  %7925 = load ptr, ptr %7, align 8, !tbaa !9
  %7926 = load i32, ptr %12, align 4, !tbaa !5
  %7927 = load i32, ptr %8, align 4, !tbaa !5
  %7928 = mul nsw i32 5, %7927
  %7929 = add nsw i32 %7926, %7928
  %7930 = sext i32 %7929 to i64
  %7931 = getelementptr inbounds double, ptr %7925, i64 %7930
  %7932 = load double, ptr %7931, align 8, !tbaa !11
  %7933 = call double @llvm.fmuladd.f64(double 0x3F9854E0ADA34B36, double %7932, double %7924)
  %7934 = load ptr, ptr %7, align 8, !tbaa !9
  %7935 = load i32, ptr %12, align 4, !tbaa !5
  %7936 = load i32, ptr %8, align 4, !tbaa !5
  %7937 = mul nsw i32 6, %7936
  %7938 = add nsw i32 %7935, %7937
  %7939 = sext i32 %7938 to i64
  %7940 = getelementptr inbounds double, ptr %7934, i64 %7939
  %7941 = load double, ptr %7940, align 8, !tbaa !11
  %7942 = call double @llvm.fmuladd.f64(double 0x3FC36A9134CD3C4D, double %7941, double %7933)
  %7943 = load ptr, ptr %7, align 8, !tbaa !9
  %7944 = load i32, ptr %12, align 4, !tbaa !5
  %7945 = load i32, ptr %8, align 4, !tbaa !5
  %7946 = mul nsw i32 7, %7945
  %7947 = add nsw i32 %7944, %7946
  %7948 = sext i32 %7947 to i64
  %7949 = getelementptr inbounds double, ptr %7943, i64 %7948
  %7950 = load double, ptr %7949, align 8, !tbaa !11
  %7951 = call double @llvm.fmuladd.f64(double 0x3FF670C5F1F4C92E, double %7950, double %7942)
  %7952 = load ptr, ptr %7, align 8, !tbaa !9
  %7953 = load i32, ptr %12, align 4, !tbaa !5
  %7954 = load i32, ptr %8, align 4, !tbaa !5
  %7955 = mul nsw i32 8, %7954
  %7956 = add nsw i32 %7953, %7955
  %7957 = sext i32 %7956 to i64
  %7958 = getelementptr inbounds double, ptr %7952, i64 %7957
  %7959 = load double, ptr %7958, align 8, !tbaa !11
  %7960 = call double @llvm.fmuladd.f64(double 0x3FC27B05E24EC5FF, double %7959, double %7951)
  %7961 = load ptr, ptr %7, align 8, !tbaa !9
  %7962 = load i32, ptr %12, align 4, !tbaa !5
  %7963 = load i32, ptr %8, align 4, !tbaa !5
  %7964 = mul nsw i32 9, %7963
  %7965 = add nsw i32 %7962, %7964
  %7966 = sext i32 %7965 to i64
  %7967 = getelementptr inbounds double, ptr %7961, i64 %7966
  %7968 = load double, ptr %7967, align 8, !tbaa !11
  %7969 = call double @llvm.fmuladd.f64(double 0x3FD35DAE88CBA64A, double %7968, double %7960)
  %7970 = load ptr, ptr %7, align 8, !tbaa !9
  %7971 = load i32, ptr %12, align 4, !tbaa !5
  %7972 = load i32, ptr %8, align 4, !tbaa !5
  %7973 = mul nsw i32 10, %7972
  %7974 = add nsw i32 %7971, %7973
  %7975 = sext i32 %7974 to i64
  %7976 = getelementptr inbounds double, ptr %7970, i64 %7975
  %7977 = load double, ptr %7976, align 8, !tbaa !11
  %7978 = call double @llvm.fmuladd.f64(double 0x3C94000000000000, double %7977, double %7969)
  %7979 = load ptr, ptr %7, align 8, !tbaa !9
  %7980 = load i32, ptr %12, align 4, !tbaa !5
  %7981 = load i32, ptr %8, align 4, !tbaa !5
  %7982 = mul nsw i32 11, %7981
  %7983 = add nsw i32 %7980, %7982
  %7984 = sext i32 %7983 to i64
  %7985 = getelementptr inbounds double, ptr %7979, i64 %7984
  %7986 = load double, ptr %7985, align 8, !tbaa !11
  %7987 = call double @llvm.fmuladd.f64(double 0xBC9C000000000000, double %7986, double %7978)
  %7988 = load ptr, ptr %7, align 8, !tbaa !9
  %7989 = load i32, ptr %12, align 4, !tbaa !5
  %7990 = load i32, ptr %8, align 4, !tbaa !5
  %7991 = mul nsw i32 12, %7990
  %7992 = add nsw i32 %7989, %7991
  %7993 = sext i32 %7992 to i64
  %7994 = getelementptr inbounds double, ptr %7988, i64 %7993
  %7995 = load double, ptr %7994, align 8, !tbaa !11
  %7996 = call double @llvm.fmuladd.f64(double 0x3C82000000000000, double %7995, double %7987)
  %7997 = load ptr, ptr %7, align 8, !tbaa !9
  %7998 = load i32, ptr %12, align 4, !tbaa !5
  %7999 = load i32, ptr %8, align 4, !tbaa !5
  %8000 = mul nsw i32 13, %7999
  %8001 = add nsw i32 %7998, %8000
  %8002 = sext i32 %8001 to i64
  %8003 = getelementptr inbounds double, ptr %7997, i64 %8002
  %8004 = load double, ptr %8003, align 8, !tbaa !11
  %8005 = call double @llvm.fmuladd.f64(double 0x3C95800000000000, double %8004, double %7996)
  %8006 = load ptr, ptr %7, align 8, !tbaa !9
  %8007 = load i32, ptr %12, align 4, !tbaa !5
  %8008 = load i32, ptr %8, align 4, !tbaa !5
  %8009 = mul nsw i32 14, %8008
  %8010 = add nsw i32 %8007, %8009
  %8011 = sext i32 %8010 to i64
  %8012 = getelementptr inbounds double, ptr %8006, i64 %8011
  %8013 = load double, ptr %8012, align 8, !tbaa !11
  %8014 = call double @llvm.fmuladd.f64(double 0x3CA8000000000001, double %8013, double %8005)
  %8015 = load ptr, ptr %7, align 8, !tbaa !9
  %8016 = load i32, ptr %12, align 4, !tbaa !5
  %8017 = load i32, ptr %8, align 4, !tbaa !5
  %8018 = mul nsw i32 15, %8017
  %8019 = add nsw i32 %8016, %8018
  %8020 = sext i32 %8019 to i64
  %8021 = getelementptr inbounds double, ptr %8015, i64 %8020
  %8022 = load double, ptr %8021, align 8, !tbaa !11
  %8023 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %8022, double %8014)
  %8024 = load ptr, ptr %7, align 8, !tbaa !9
  %8025 = load i32, ptr %12, align 4, !tbaa !5
  %8026 = load i32, ptr %8, align 4, !tbaa !5
  %8027 = mul nsw i32 16, %8026
  %8028 = add nsw i32 %8025, %8027
  %8029 = sext i32 %8028 to i64
  %8030 = getelementptr inbounds double, ptr %8024, i64 %8029
  %8031 = load double, ptr %8030, align 8, !tbaa !11
  %8032 = call double @llvm.fmuladd.f64(double 0xBC78000000000002, double %8031, double %8023)
  %8033 = load ptr, ptr %7, align 8, !tbaa !9
  %8034 = load i32, ptr %12, align 4, !tbaa !5
  %8035 = load i32, ptr %8, align 4, !tbaa !5
  %8036 = mul nsw i32 17, %8035
  %8037 = add nsw i32 %8034, %8036
  %8038 = sext i32 %8037 to i64
  %8039 = getelementptr inbounds double, ptr %8033, i64 %8038
  %8040 = load double, ptr %8039, align 8, !tbaa !11
  %8041 = call double @llvm.fmuladd.f64(double 0x3C7C000000000000, double %8040, double %8032)
  %8042 = load ptr, ptr %7, align 8, !tbaa !9
  %8043 = load i32, ptr %12, align 4, !tbaa !5
  %8044 = load i32, ptr %8, align 4, !tbaa !5
  %8045 = mul nsw i32 18, %8044
  %8046 = add nsw i32 %8043, %8045
  %8047 = sext i32 %8046 to i64
  %8048 = getelementptr inbounds double, ptr %8042, i64 %8047
  %8049 = load double, ptr %8048, align 8, !tbaa !11
  %8050 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %8049, double %8041)
  %8051 = load ptr, ptr %7, align 8, !tbaa !9
  %8052 = load i32, ptr %12, align 4, !tbaa !5
  %8053 = load i32, ptr %8, align 4, !tbaa !5
  %8054 = mul nsw i32 19, %8053
  %8055 = add nsw i32 %8052, %8054
  %8056 = sext i32 %8055 to i64
  %8057 = getelementptr inbounds double, ptr %8051, i64 %8056
  %8058 = load double, ptr %8057, align 8, !tbaa !11
  %8059 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %8058, double %8050)
  %8060 = load ptr, ptr %7, align 8, !tbaa !9
  %8061 = load i32, ptr %12, align 4, !tbaa !5
  %8062 = load i32, ptr %8, align 4, !tbaa !5
  %8063 = mul nsw i32 20, %8062
  %8064 = add nsw i32 %8061, %8063
  %8065 = sext i32 %8064 to i64
  %8066 = getelementptr inbounds double, ptr %8060, i64 %8065
  %8067 = load double, ptr %8066, align 8, !tbaa !11
  %8068 = call double @llvm.fmuladd.f64(double 0x3C9C000000000000, double %8067, double %8059)
  %8069 = load ptr, ptr %7, align 8, !tbaa !9
  %8070 = load i32, ptr %12, align 4, !tbaa !5
  %8071 = load i32, ptr %8, align 4, !tbaa !5
  %8072 = mul nsw i32 21, %8071
  %8073 = add nsw i32 %8070, %8072
  %8074 = sext i32 %8073 to i64
  %8075 = getelementptr inbounds double, ptr %8069, i64 %8074
  %8076 = load double, ptr %8075, align 8, !tbaa !11
  %8077 = call double @llvm.fmuladd.f64(double 0xBCA4000000000001, double %8076, double %8068)
  %8078 = load ptr, ptr %7, align 8, !tbaa !9
  %8079 = load i32, ptr %12, align 4, !tbaa !5
  %8080 = load i32, ptr %8, align 4, !tbaa !5
  %8081 = mul nsw i32 22, %8080
  %8082 = add nsw i32 %8079, %8081
  %8083 = sext i32 %8082 to i64
  %8084 = getelementptr inbounds double, ptr %8078, i64 %8083
  %8085 = load double, ptr %8084, align 8, !tbaa !11
  %8086 = call double @llvm.fmuladd.f64(double 0xBC8C000000000000, double %8085, double %8077)
  %8087 = load ptr, ptr %7, align 8, !tbaa !9
  %8088 = load i32, ptr %12, align 4, !tbaa !5
  %8089 = load i32, ptr %8, align 4, !tbaa !5
  %8090 = mul nsw i32 23, %8089
  %8091 = add nsw i32 %8088, %8090
  %8092 = sext i32 %8091 to i64
  %8093 = getelementptr inbounds double, ptr %8087, i64 %8092
  %8094 = load double, ptr %8093, align 8, !tbaa !11
  %8095 = call double @llvm.fmuladd.f64(double 0x3C95000000000000, double %8094, double %8086)
  %8096 = load ptr, ptr %7, align 8, !tbaa !9
  %8097 = load i32, ptr %12, align 4, !tbaa !5
  %8098 = load i32, ptr %8, align 4, !tbaa !5
  %8099 = mul nsw i32 24, %8098
  %8100 = add nsw i32 %8097, %8099
  %8101 = sext i32 %8100 to i64
  %8102 = getelementptr inbounds double, ptr %8096, i64 %8101
  %8103 = load double, ptr %8102, align 8, !tbaa !11
  %8104 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %8103, double %8095)
  %8105 = load ptr, ptr %7, align 8, !tbaa !9
  %8106 = load i32, ptr %12, align 4, !tbaa !5
  %8107 = load i32, ptr %8, align 4, !tbaa !5
  %8108 = mul nsw i32 25, %8107
  %8109 = add nsw i32 %8106, %8108
  %8110 = sext i32 %8109 to i64
  %8111 = getelementptr inbounds double, ptr %8105, i64 %8110
  %8112 = load double, ptr %8111, align 8, !tbaa !11
  %8113 = call double @llvm.fmuladd.f64(double 0xBC98000000000000, double %8112, double %8104)
  %8114 = load ptr, ptr %7, align 8, !tbaa !9
  %8115 = load i32, ptr %12, align 4, !tbaa !5
  %8116 = load i32, ptr %8, align 4, !tbaa !5
  %8117 = mul nsw i32 26, %8116
  %8118 = add nsw i32 %8115, %8117
  %8119 = sext i32 %8118 to i64
  %8120 = getelementptr inbounds double, ptr %8114, i64 %8119
  %8121 = load double, ptr %8120, align 8, !tbaa !11
  %8122 = call double @llvm.fmuladd.f64(double 0x3C9B000000000000, double %8121, double %8113)
  %8123 = load ptr, ptr %7, align 8, !tbaa !9
  %8124 = load i32, ptr %12, align 4, !tbaa !5
  %8125 = load i32, ptr %8, align 4, !tbaa !5
  %8126 = mul nsw i32 27, %8125
  %8127 = add nsw i32 %8124, %8126
  %8128 = sext i32 %8127 to i64
  %8129 = getelementptr inbounds double, ptr %8123, i64 %8128
  %8130 = load double, ptr %8129, align 8, !tbaa !11
  %8131 = call double @llvm.fmuladd.f64(double 0xBCA27FFFFFFFFFFF, double %8130, double %8122)
  %8132 = load ptr, ptr %7, align 8, !tbaa !9
  %8133 = load i32, ptr %12, align 4, !tbaa !5
  %8134 = load i32, ptr %8, align 4, !tbaa !5
  %8135 = mul nsw i32 28, %8134
  %8136 = add nsw i32 %8133, %8135
  %8137 = sext i32 %8136 to i64
  %8138 = getelementptr inbounds double, ptr %8132, i64 %8137
  %8139 = load double, ptr %8138, align 8, !tbaa !11
  %8140 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %8139, double %8131)
  %8141 = load ptr, ptr %7, align 8, !tbaa !9
  %8142 = load i32, ptr %12, align 4, !tbaa !5
  %8143 = load i32, ptr %8, align 4, !tbaa !5
  %8144 = mul nsw i32 29, %8143
  %8145 = add nsw i32 %8142, %8144
  %8146 = sext i32 %8145 to i64
  %8147 = getelementptr inbounds double, ptr %8141, i64 %8146
  %8148 = load double, ptr %8147, align 8, !tbaa !11
  %8149 = call double @llvm.fmuladd.f64(double 0xBC88000000000000, double %8148, double %8140)
  %8150 = load ptr, ptr %7, align 8, !tbaa !9
  %8151 = load i32, ptr %12, align 4, !tbaa !5
  %8152 = load i32, ptr %8, align 4, !tbaa !5
  %8153 = mul nsw i32 30, %8152
  %8154 = add nsw i32 %8151, %8153
  %8155 = sext i32 %8154 to i64
  %8156 = getelementptr inbounds double, ptr %8150, i64 %8155
  %8157 = load double, ptr %8156, align 8, !tbaa !11
  %8158 = call double @llvm.fmuladd.f64(double 0x3C9EFFFFFFFFFFFD, double %8157, double %8149)
  %8159 = load ptr, ptr %7, align 8, !tbaa !9
  %8160 = load i32, ptr %12, align 4, !tbaa !5
  %8161 = load i32, ptr %8, align 4, !tbaa !5
  %8162 = mul nsw i32 31, %8161
  %8163 = add nsw i32 %8160, %8162
  %8164 = sext i32 %8163 to i64
  %8165 = getelementptr inbounds double, ptr %8159, i64 %8164
  %8166 = load double, ptr %8165, align 8, !tbaa !11
  %8167 = call double @llvm.fmuladd.f64(double 0x3C7C000000000000, double %8166, double %8158)
  %8168 = load ptr, ptr %7, align 8, !tbaa !9
  %8169 = load i32, ptr %12, align 4, !tbaa !5
  %8170 = load i32, ptr %8, align 4, !tbaa !5
  %8171 = mul nsw i32 32, %8170
  %8172 = add nsw i32 %8169, %8171
  %8173 = sext i32 %8172 to i64
  %8174 = getelementptr inbounds double, ptr %8168, i64 %8173
  %8175 = load double, ptr %8174, align 8, !tbaa !11
  %8176 = call double @llvm.fmuladd.f64(double 0xBC9C000000000000, double %8175, double %8167)
  %8177 = load ptr, ptr %7, align 8, !tbaa !9
  %8178 = load i32, ptr %12, align 4, !tbaa !5
  %8179 = load i32, ptr %8, align 4, !tbaa !5
  %8180 = mul nsw i32 33, %8179
  %8181 = add nsw i32 %8178, %8180
  %8182 = sext i32 %8181 to i64
  %8183 = getelementptr inbounds double, ptr %8177, i64 %8182
  %8184 = load double, ptr %8183, align 8, !tbaa !11
  %8185 = call double @llvm.fmuladd.f64(double 0xBC95800000000000, double %8184, double %8176)
  %8186 = load ptr, ptr %7, align 8, !tbaa !9
  %8187 = load i32, ptr %12, align 4, !tbaa !5
  %8188 = load i32, ptr %8, align 4, !tbaa !5
  %8189 = mul nsw i32 34, %8188
  %8190 = add nsw i32 %8187, %8189
  %8191 = sext i32 %8190 to i64
  %8192 = getelementptr inbounds double, ptr %8186, i64 %8191
  %8193 = load double, ptr %8192, align 8, !tbaa !11
  %8194 = call double @llvm.fmuladd.f64(double 0xBC99000000000000, double %8193, double %8185)
  %8195 = load ptr, ptr %7, align 8, !tbaa !9
  %8196 = load i32, ptr %12, align 4, !tbaa !5
  %8197 = load i32, ptr %8, align 4, !tbaa !5
  %8198 = mul nsw i32 35, %8197
  %8199 = add nsw i32 %8196, %8198
  %8200 = sext i32 %8199 to i64
  %8201 = getelementptr inbounds double, ptr %8195, i64 %8200
  %8202 = load double, ptr %8201, align 8, !tbaa !11
  %8203 = call double @llvm.fmuladd.f64(double 0xBC92000000000000, double %8202, double %8194)
  %8204 = load ptr, ptr %7, align 8, !tbaa !9
  %8205 = load i32, ptr %12, align 4, !tbaa !5
  %8206 = load i32, ptr %8, align 4, !tbaa !5
  %8207 = mul nsw i32 36, %8206
  %8208 = add nsw i32 %8205, %8207
  %8209 = sext i32 %8208 to i64
  %8210 = getelementptr inbounds double, ptr %8204, i64 %8209
  %8211 = load double, ptr %8210, align 8, !tbaa !11
  %8212 = call double @llvm.fmuladd.f64(double 0xBCA5FFFFFFFFFFFF, double %8211, double %8203)
  %8213 = load ptr, ptr %7, align 8, !tbaa !9
  %8214 = load i32, ptr %12, align 4, !tbaa !5
  %8215 = load i32, ptr %8, align 4, !tbaa !5
  %8216 = mul nsw i32 37, %8215
  %8217 = add nsw i32 %8214, %8216
  %8218 = sext i32 %8217 to i64
  %8219 = getelementptr inbounds double, ptr %8213, i64 %8218
  %8220 = load double, ptr %8219, align 8, !tbaa !11
  %8221 = call double @llvm.fmuladd.f64(double 0xBC8B000000000000, double %8220, double %8212)
  %8222 = load ptr, ptr %7, align 8, !tbaa !9
  %8223 = load i32, ptr %12, align 4, !tbaa !5
  %8224 = load i32, ptr %8, align 4, !tbaa !5
  %8225 = mul nsw i32 38, %8224
  %8226 = add nsw i32 %8223, %8225
  %8227 = sext i32 %8226 to i64
  %8228 = getelementptr inbounds double, ptr %8222, i64 %8227
  %8229 = load double, ptr %8228, align 8, !tbaa !11
  %8230 = call double @llvm.fmuladd.f64(double 0xBC94000000000000, double %8229, double %8221)
  %8231 = load ptr, ptr %7, align 8, !tbaa !9
  %8232 = load i32, ptr %12, align 4, !tbaa !5
  %8233 = load i32, ptr %8, align 4, !tbaa !5
  %8234 = mul nsw i32 39, %8233
  %8235 = add nsw i32 %8232, %8234
  %8236 = sext i32 %8235 to i64
  %8237 = getelementptr inbounds double, ptr %8231, i64 %8236
  %8238 = load double, ptr %8237, align 8, !tbaa !11
  %8239 = call double @llvm.fmuladd.f64(double 0xBC78000000000002, double %8238, double %8230)
  store double %8239, ptr %11, align 8, !tbaa !11
  %8240 = load double, ptr %11, align 8, !tbaa !11
  %8241 = load ptr, ptr %9, align 8, !tbaa !9
  %8242 = load i32, ptr %12, align 4, !tbaa !5
  %8243 = load i32, ptr %10, align 4, !tbaa !5
  %8244 = mul nsw i32 22, %8243
  %8245 = add nsw i32 %8242, %8244
  %8246 = sext i32 %8245 to i64
  %8247 = getelementptr inbounds double, ptr %8241, i64 %8246
  %8248 = load double, ptr %8247, align 8, !tbaa !11
  %8249 = fadd double %8248, %8240
  store double %8249, ptr %8247, align 8, !tbaa !11
  %8250 = load ptr, ptr %7, align 8, !tbaa !9
  %8251 = load i32, ptr %12, align 4, !tbaa !5
  %8252 = load i32, ptr %8, align 4, !tbaa !5
  %8253 = mul nsw i32 0, %8252
  %8254 = add nsw i32 %8251, %8253
  %8255 = sext i32 %8254 to i64
  %8256 = getelementptr inbounds double, ptr %8250, i64 %8255
  %8257 = load double, ptr %8256, align 8, !tbaa !11
  %8258 = load ptr, ptr %7, align 8, !tbaa !9
  %8259 = load i32, ptr %12, align 4, !tbaa !5
  %8260 = load i32, ptr %8, align 4, !tbaa !5
  %8261 = mul nsw i32 1, %8260
  %8262 = add nsw i32 %8259, %8261
  %8263 = sext i32 %8262 to i64
  %8264 = getelementptr inbounds double, ptr %8258, i64 %8263
  %8265 = load double, ptr %8264, align 8, !tbaa !11
  %8266 = fmul double 0xBFB5B58B4F03B1A2, %8265
  %8267 = call double @llvm.fmuladd.f64(double 0xBF83152016E0ED34, double %8257, double %8266)
  %8268 = load ptr, ptr %7, align 8, !tbaa !9
  %8269 = load i32, ptr %12, align 4, !tbaa !5
  %8270 = load i32, ptr %8, align 4, !tbaa !5
  %8271 = mul nsw i32 2, %8270
  %8272 = add nsw i32 %8269, %8271
  %8273 = sext i32 %8272 to i64
  %8274 = getelementptr inbounds double, ptr %8268, i64 %8273
  %8275 = load double, ptr %8274, align 8, !tbaa !11
  %8276 = call double @llvm.fmuladd.f64(double 0x3FF4EC1BB3FDC61B, double %8275, double %8267)
  %8277 = load ptr, ptr %7, align 8, !tbaa !9
  %8278 = load i32, ptr %12, align 4, !tbaa !5
  %8279 = load i32, ptr %8, align 4, !tbaa !5
  %8280 = mul nsw i32 3, %8279
  %8281 = add nsw i32 %8278, %8280
  %8282 = sext i32 %8281 to i64
  %8283 = getelementptr inbounds double, ptr %8277, i64 %8282
  %8284 = load double, ptr %8283, align 8, !tbaa !11
  %8285 = call double @llvm.fmuladd.f64(double 0x3F938CE4890DB2BF, double %8284, double %8276)
  %8286 = load ptr, ptr %7, align 8, !tbaa !9
  %8287 = load i32, ptr %12, align 4, !tbaa !5
  %8288 = load i32, ptr %8, align 4, !tbaa !5
  %8289 = mul nsw i32 4, %8288
  %8290 = add nsw i32 %8287, %8289
  %8291 = sext i32 %8290 to i64
  %8292 = getelementptr inbounds double, ptr %8286, i64 %8291
  %8293 = load double, ptr %8292, align 8, !tbaa !11
  %8294 = call double @llvm.fmuladd.f64(double 0xBFE5679E70A60656, double %8293, double %8285)
  %8295 = load ptr, ptr %7, align 8, !tbaa !9
  %8296 = load i32, ptr %12, align 4, !tbaa !5
  %8297 = load i32, ptr %8, align 4, !tbaa !5
  %8298 = mul nsw i32 5, %8297
  %8299 = add nsw i32 %8296, %8298
  %8300 = sext i32 %8299 to i64
  %8301 = getelementptr inbounds double, ptr %8295, i64 %8300
  %8302 = load double, ptr %8301, align 8, !tbaa !11
  %8303 = call double @llvm.fmuladd.f64(double 0x3F85E50BB681A43D, double %8302, double %8294)
  %8304 = load ptr, ptr %7, align 8, !tbaa !9
  %8305 = load i32, ptr %12, align 4, !tbaa !5
  %8306 = load i32, ptr %8, align 4, !tbaa !5
  %8307 = mul nsw i32 6, %8306
  %8308 = add nsw i32 %8305, %8307
  %8309 = sext i32 %8308 to i64
  %8310 = getelementptr inbounds double, ptr %8304, i64 %8309
  %8311 = load double, ptr %8310, align 8, !tbaa !11
  %8312 = call double @llvm.fmuladd.f64(double 0xBFB49217631F5912, double %8311, double %8303)
  %8313 = load ptr, ptr %7, align 8, !tbaa !9
  %8314 = load i32, ptr %12, align 4, !tbaa !5
  %8315 = load i32, ptr %8, align 4, !tbaa !5
  %8316 = mul nsw i32 7, %8315
  %8317 = add nsw i32 %8314, %8316
  %8318 = sext i32 %8317 to i64
  %8319 = getelementptr inbounds double, ptr %8313, i64 %8318
  %8320 = load double, ptr %8319, align 8, !tbaa !11
  %8321 = call double @llvm.fmuladd.f64(double 0x3FCA50C41AB7A2EC, double %8320, double %8312)
  %8322 = load ptr, ptr %7, align 8, !tbaa !9
  %8323 = load i32, ptr %12, align 4, !tbaa !5
  %8324 = load i32, ptr %8, align 4, !tbaa !5
  %8325 = mul nsw i32 8, %8324
  %8326 = add nsw i32 %8323, %8325
  %8327 = sext i32 %8326 to i64
  %8328 = getelementptr inbounds double, ptr %8322, i64 %8327
  %8329 = load double, ptr %8328, align 8, !tbaa !11
  %8330 = call double @llvm.fmuladd.f64(double 0xBF8BDAF699AECEFD, double %8329, double %8321)
  %8331 = load ptr, ptr %7, align 8, !tbaa !9
  %8332 = load i32, ptr %12, align 4, !tbaa !5
  %8333 = load i32, ptr %8, align 4, !tbaa !5
  %8334 = mul nsw i32 9, %8333
  %8335 = add nsw i32 %8332, %8334
  %8336 = sext i32 %8335 to i64
  %8337 = getelementptr inbounds double, ptr %8331, i64 %8336
  %8338 = load double, ptr %8337, align 8, !tbaa !11
  %8339 = call double @llvm.fmuladd.f64(double 0x3FD417DEBFC17B15, double %8338, double %8330)
  %8340 = load ptr, ptr %7, align 8, !tbaa !9
  %8341 = load i32, ptr %12, align 4, !tbaa !5
  %8342 = load i32, ptr %8, align 4, !tbaa !5
  %8343 = mul nsw i32 10, %8342
  %8344 = add nsw i32 %8341, %8343
  %8345 = sext i32 %8344 to i64
  %8346 = getelementptr inbounds double, ptr %8340, i64 %8345
  %8347 = load double, ptr %8346, align 8, !tbaa !11
  %8348 = call double @llvm.fmuladd.f64(double 0x3CA4000000000001, double %8347, double %8339)
  %8349 = load ptr, ptr %7, align 8, !tbaa !9
  %8350 = load i32, ptr %12, align 4, !tbaa !5
  %8351 = load i32, ptr %8, align 4, !tbaa !5
  %8352 = mul nsw i32 11, %8351
  %8353 = add nsw i32 %8350, %8352
  %8354 = sext i32 %8353 to i64
  %8355 = getelementptr inbounds double, ptr %8349, i64 %8354
  %8356 = load double, ptr %8355, align 8, !tbaa !11
  %8357 = call double @llvm.fmuladd.f64(double 0xBCA2000000000000, double %8356, double %8348)
  %8358 = load ptr, ptr %7, align 8, !tbaa !9
  %8359 = load i32, ptr %12, align 4, !tbaa !5
  %8360 = load i32, ptr %8, align 4, !tbaa !5
  %8361 = mul nsw i32 12, %8360
  %8362 = add nsw i32 %8359, %8361
  %8363 = sext i32 %8362 to i64
  %8364 = getelementptr inbounds double, ptr %8358, i64 %8363
  %8365 = load double, ptr %8364, align 8, !tbaa !11
  %8366 = call double @llvm.fmuladd.f64(double 0x3CA0800000000001, double %8365, double %8357)
  %8367 = load ptr, ptr %7, align 8, !tbaa !9
  %8368 = load i32, ptr %12, align 4, !tbaa !5
  %8369 = load i32, ptr %8, align 4, !tbaa !5
  %8370 = mul nsw i32 13, %8369
  %8371 = add nsw i32 %8368, %8370
  %8372 = sext i32 %8371 to i64
  %8373 = getelementptr inbounds double, ptr %8367, i64 %8372
  %8374 = load double, ptr %8373, align 8, !tbaa !11
  %8375 = call double @llvm.fmuladd.f64(double 0xBCA0C00000000001, double %8374, double %8366)
  %8376 = load ptr, ptr %7, align 8, !tbaa !9
  %8377 = load i32, ptr %12, align 4, !tbaa !5
  %8378 = load i32, ptr %8, align 4, !tbaa !5
  %8379 = mul nsw i32 14, %8378
  %8380 = add nsw i32 %8377, %8379
  %8381 = sext i32 %8380 to i64
  %8382 = getelementptr inbounds double, ptr %8376, i64 %8381
  %8383 = load double, ptr %8382, align 8, !tbaa !11
  %8384 = call double @llvm.fmuladd.f64(double 0x3C9C000000000000, double %8383, double %8375)
  %8385 = load ptr, ptr %7, align 8, !tbaa !9
  %8386 = load i32, ptr %12, align 4, !tbaa !5
  %8387 = load i32, ptr %8, align 4, !tbaa !5
  %8388 = mul nsw i32 15, %8387
  %8389 = add nsw i32 %8386, %8388
  %8390 = sext i32 %8389 to i64
  %8391 = getelementptr inbounds double, ptr %8385, i64 %8390
  %8392 = load double, ptr %8391, align 8, !tbaa !11
  %8393 = call double @llvm.fmuladd.f64(double 0xBCAF000000000001, double %8392, double %8384)
  %8394 = load ptr, ptr %7, align 8, !tbaa !9
  %8395 = load i32, ptr %12, align 4, !tbaa !5
  %8396 = load i32, ptr %8, align 4, !tbaa !5
  %8397 = mul nsw i32 16, %8396
  %8398 = add nsw i32 %8395, %8397
  %8399 = sext i32 %8398 to i64
  %8400 = getelementptr inbounds double, ptr %8394, i64 %8399
  %8401 = load double, ptr %8400, align 8, !tbaa !11
  %8402 = call double @llvm.fmuladd.f64(double 0x3C97000000000000, double %8401, double %8393)
  %8403 = load ptr, ptr %7, align 8, !tbaa !9
  %8404 = load i32, ptr %12, align 4, !tbaa !5
  %8405 = load i32, ptr %8, align 4, !tbaa !5
  %8406 = mul nsw i32 17, %8405
  %8407 = add nsw i32 %8404, %8406
  %8408 = sext i32 %8407 to i64
  %8409 = getelementptr inbounds double, ptr %8403, i64 %8408
  %8410 = load double, ptr %8409, align 8, !tbaa !11
  %8411 = call double @llvm.fmuladd.f64(double 0x3CA0800000000001, double %8410, double %8402)
  %8412 = load ptr, ptr %7, align 8, !tbaa !9
  %8413 = load i32, ptr %12, align 4, !tbaa !5
  %8414 = load i32, ptr %8, align 4, !tbaa !5
  %8415 = mul nsw i32 18, %8414
  %8416 = add nsw i32 %8413, %8415
  %8417 = sext i32 %8416 to i64
  %8418 = getelementptr inbounds double, ptr %8412, i64 %8417
  %8419 = load double, ptr %8418, align 8, !tbaa !11
  %8420 = call double @llvm.fmuladd.f64(double 0x3CA5FFFFFFFFFFFF, double %8419, double %8411)
  %8421 = load ptr, ptr %7, align 8, !tbaa !9
  %8422 = load i32, ptr %12, align 4, !tbaa !5
  %8423 = load i32, ptr %8, align 4, !tbaa !5
  %8424 = mul nsw i32 19, %8423
  %8425 = add nsw i32 %8422, %8424
  %8426 = sext i32 %8425 to i64
  %8427 = getelementptr inbounds double, ptr %8421, i64 %8426
  %8428 = load double, ptr %8427, align 8, !tbaa !11
  %8429 = call double @llvm.fmuladd.f64(double 0xBCA4000000000001, double %8428, double %8420)
  %8430 = load ptr, ptr %7, align 8, !tbaa !9
  %8431 = load i32, ptr %12, align 4, !tbaa !5
  %8432 = load i32, ptr %8, align 4, !tbaa !5
  %8433 = mul nsw i32 20, %8432
  %8434 = add nsw i32 %8431, %8433
  %8435 = sext i32 %8434 to i64
  %8436 = getelementptr inbounds double, ptr %8430, i64 %8435
  %8437 = load double, ptr %8436, align 8, !tbaa !11
  %8438 = call double @llvm.fmuladd.f64(double 0x3CA0000000000002, double %8437, double %8429)
  %8439 = load ptr, ptr %7, align 8, !tbaa !9
  %8440 = load i32, ptr %12, align 4, !tbaa !5
  %8441 = load i32, ptr %8, align 4, !tbaa !5
  %8442 = mul nsw i32 22, %8441
  %8443 = add nsw i32 %8440, %8442
  %8444 = sext i32 %8443 to i64
  %8445 = getelementptr inbounds double, ptr %8439, i64 %8444
  %8446 = load double, ptr %8445, align 8, !tbaa !11
  %8447 = call double @llvm.fmuladd.f64(double 0xBCA8000000000001, double %8446, double %8438)
  %8448 = load ptr, ptr %7, align 8, !tbaa !9
  %8449 = load i32, ptr %12, align 4, !tbaa !5
  %8450 = load i32, ptr %8, align 4, !tbaa !5
  %8451 = mul nsw i32 23, %8450
  %8452 = add nsw i32 %8449, %8451
  %8453 = sext i32 %8452 to i64
  %8454 = getelementptr inbounds double, ptr %8448, i64 %8453
  %8455 = load double, ptr %8454, align 8, !tbaa !11
  %8456 = call double @llvm.fmuladd.f64(double 0x3CBA000000000000, double %8455, double %8447)
  %8457 = load ptr, ptr %7, align 8, !tbaa !9
  %8458 = load i32, ptr %12, align 4, !tbaa !5
  %8459 = load i32, ptr %8, align 4, !tbaa !5
  %8460 = mul nsw i32 24, %8459
  %8461 = add nsw i32 %8458, %8460
  %8462 = sext i32 %8461 to i64
  %8463 = getelementptr inbounds double, ptr %8457, i64 %8462
  %8464 = load double, ptr %8463, align 8, !tbaa !11
  %8465 = call double @llvm.fmuladd.f64(double 0xBC9C000000000000, double %8464, double %8456)
  %8466 = load ptr, ptr %7, align 8, !tbaa !9
  %8467 = load i32, ptr %12, align 4, !tbaa !5
  %8468 = load i32, ptr %8, align 4, !tbaa !5
  %8469 = mul nsw i32 25, %8468
  %8470 = add nsw i32 %8467, %8469
  %8471 = sext i32 %8470 to i64
  %8472 = getelementptr inbounds double, ptr %8466, i64 %8471
  %8473 = load double, ptr %8472, align 8, !tbaa !11
  %8474 = call double @llvm.fmuladd.f64(double 0xBC60000000000000, double %8473, double %8465)
  %8475 = load ptr, ptr %7, align 8, !tbaa !9
  %8476 = load i32, ptr %12, align 4, !tbaa !5
  %8477 = load i32, ptr %8, align 4, !tbaa !5
  %8478 = mul nsw i32 26, %8477
  %8479 = add nsw i32 %8476, %8478
  %8480 = sext i32 %8479 to i64
  %8481 = getelementptr inbounds double, ptr %8475, i64 %8480
  %8482 = load double, ptr %8481, align 8, !tbaa !11
  %8483 = call double @llvm.fmuladd.f64(double 0x3C8E000000000000, double %8482, double %8474)
  %8484 = load ptr, ptr %7, align 8, !tbaa !9
  %8485 = load i32, ptr %12, align 4, !tbaa !5
  %8486 = load i32, ptr %8, align 4, !tbaa !5
  %8487 = mul nsw i32 27, %8486
  %8488 = add nsw i32 %8485, %8487
  %8489 = sext i32 %8488 to i64
  %8490 = getelementptr inbounds double, ptr %8484, i64 %8489
  %8491 = load double, ptr %8490, align 8, !tbaa !11
  %8492 = call double @llvm.fmuladd.f64(double 0xBCAF800000000000, double %8491, double %8483)
  %8493 = load ptr, ptr %7, align 8, !tbaa !9
  %8494 = load i32, ptr %12, align 4, !tbaa !5
  %8495 = load i32, ptr %8, align 4, !tbaa !5
  %8496 = mul nsw i32 28, %8495
  %8497 = add nsw i32 %8494, %8496
  %8498 = sext i32 %8497 to i64
  %8499 = getelementptr inbounds double, ptr %8493, i64 %8498
  %8500 = load double, ptr %8499, align 8, !tbaa !11
  %8501 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %8500, double %8492)
  %8502 = load ptr, ptr %7, align 8, !tbaa !9
  %8503 = load i32, ptr %12, align 4, !tbaa !5
  %8504 = load i32, ptr %8, align 4, !tbaa !5
  %8505 = mul nsw i32 29, %8504
  %8506 = add nsw i32 %8503, %8505
  %8507 = sext i32 %8506 to i64
  %8508 = getelementptr inbounds double, ptr %8502, i64 %8507
  %8509 = load double, ptr %8508, align 8, !tbaa !11
  %8510 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %8509, double %8501)
  %8511 = load ptr, ptr %7, align 8, !tbaa !9
  %8512 = load i32, ptr %12, align 4, !tbaa !5
  %8513 = load i32, ptr %8, align 4, !tbaa !5
  %8514 = mul nsw i32 30, %8513
  %8515 = add nsw i32 %8512, %8514
  %8516 = sext i32 %8515 to i64
  %8517 = getelementptr inbounds double, ptr %8511, i64 %8516
  %8518 = load double, ptr %8517, align 8, !tbaa !11
  %8519 = call double @llvm.fmuladd.f64(double 0x3C99000000000000, double %8518, double %8510)
  %8520 = load ptr, ptr %7, align 8, !tbaa !9
  %8521 = load i32, ptr %12, align 4, !tbaa !5
  %8522 = load i32, ptr %8, align 4, !tbaa !5
  %8523 = mul nsw i32 31, %8522
  %8524 = add nsw i32 %8521, %8523
  %8525 = sext i32 %8524 to i64
  %8526 = getelementptr inbounds double, ptr %8520, i64 %8525
  %8527 = load double, ptr %8526, align 8, !tbaa !11
  %8528 = call double @llvm.fmuladd.f64(double 0x3C9A000000000000, double %8527, double %8519)
  %8529 = load ptr, ptr %7, align 8, !tbaa !9
  %8530 = load i32, ptr %12, align 4, !tbaa !5
  %8531 = load i32, ptr %8, align 4, !tbaa !5
  %8532 = mul nsw i32 32, %8531
  %8533 = add nsw i32 %8530, %8532
  %8534 = sext i32 %8533 to i64
  %8535 = getelementptr inbounds double, ptr %8529, i64 %8534
  %8536 = load double, ptr %8535, align 8, !tbaa !11
  %8537 = call double @llvm.fmuladd.f64(double 0x3C70000000000001, double %8536, double %8528)
  %8538 = load ptr, ptr %7, align 8, !tbaa !9
  %8539 = load i32, ptr %12, align 4, !tbaa !5
  %8540 = load i32, ptr %8, align 4, !tbaa !5
  %8541 = mul nsw i32 33, %8540
  %8542 = add nsw i32 %8539, %8541
  %8543 = sext i32 %8542 to i64
  %8544 = getelementptr inbounds double, ptr %8538, i64 %8543
  %8545 = load double, ptr %8544, align 8, !tbaa !11
  %8546 = call double @llvm.fmuladd.f64(double 0x3C9BC00000000000, double %8545, double %8537)
  %8547 = load ptr, ptr %7, align 8, !tbaa !9
  %8548 = load i32, ptr %12, align 4, !tbaa !5
  %8549 = load i32, ptr %8, align 4, !tbaa !5
  %8550 = mul nsw i32 34, %8549
  %8551 = add nsw i32 %8548, %8550
  %8552 = sext i32 %8551 to i64
  %8553 = getelementptr inbounds double, ptr %8547, i64 %8552
  %8554 = load double, ptr %8553, align 8, !tbaa !11
  %8555 = call double @llvm.fmuladd.f64(double 0x3CA4000000000001, double %8554, double %8546)
  %8556 = load ptr, ptr %7, align 8, !tbaa !9
  %8557 = load i32, ptr %12, align 4, !tbaa !5
  %8558 = load i32, ptr %8, align 4, !tbaa !5
  %8559 = mul nsw i32 35, %8558
  %8560 = add nsw i32 %8557, %8559
  %8561 = sext i32 %8560 to i64
  %8562 = getelementptr inbounds double, ptr %8556, i64 %8561
  %8563 = load double, ptr %8562, align 8, !tbaa !11
  %8564 = call double @llvm.fmuladd.f64(double 0x3C92000000000000, double %8563, double %8555)
  %8565 = load ptr, ptr %7, align 8, !tbaa !9
  %8566 = load i32, ptr %12, align 4, !tbaa !5
  %8567 = load i32, ptr %8, align 4, !tbaa !5
  %8568 = mul nsw i32 36, %8567
  %8569 = add nsw i32 %8566, %8568
  %8570 = sext i32 %8569 to i64
  %8571 = getelementptr inbounds double, ptr %8565, i64 %8570
  %8572 = load double, ptr %8571, align 8, !tbaa !11
  %8573 = call double @llvm.fmuladd.f64(double 0xBCA8C00000000000, double %8572, double %8564)
  %8574 = load ptr, ptr %7, align 8, !tbaa !9
  %8575 = load i32, ptr %12, align 4, !tbaa !5
  %8576 = load i32, ptr %8, align 4, !tbaa !5
  %8577 = mul nsw i32 37, %8576
  %8578 = add nsw i32 %8575, %8577
  %8579 = sext i32 %8578 to i64
  %8580 = getelementptr inbounds double, ptr %8574, i64 %8579
  %8581 = load double, ptr %8580, align 8, !tbaa !11
  %8582 = call double @llvm.fmuladd.f64(double 0xBC71FFFFFFFFFFFF, double %8581, double %8573)
  %8583 = load ptr, ptr %7, align 8, !tbaa !9
  %8584 = load i32, ptr %12, align 4, !tbaa !5
  %8585 = load i32, ptr %8, align 4, !tbaa !5
  %8586 = mul nsw i32 38, %8585
  %8587 = add nsw i32 %8584, %8586
  %8588 = sext i32 %8587 to i64
  %8589 = getelementptr inbounds double, ptr %8583, i64 %8588
  %8590 = load double, ptr %8589, align 8, !tbaa !11
  %8591 = call double @llvm.fmuladd.f64(double 0xBCA1000000000001, double %8590, double %8582)
  %8592 = load ptr, ptr %7, align 8, !tbaa !9
  %8593 = load i32, ptr %12, align 4, !tbaa !5
  %8594 = load i32, ptr %8, align 4, !tbaa !5
  %8595 = mul nsw i32 39, %8594
  %8596 = add nsw i32 %8593, %8595
  %8597 = sext i32 %8596 to i64
  %8598 = getelementptr inbounds double, ptr %8592, i64 %8597
  %8599 = load double, ptr %8598, align 8, !tbaa !11
  %8600 = call double @llvm.fmuladd.f64(double 0xBC94000000000000, double %8599, double %8591)
  store double %8600, ptr %11, align 8, !tbaa !11
  %8601 = load double, ptr %11, align 8, !tbaa !11
  %8602 = load ptr, ptr %9, align 8, !tbaa !9
  %8603 = load i32, ptr %12, align 4, !tbaa !5
  %8604 = load i32, ptr %10, align 4, !tbaa !5
  %8605 = mul nsw i32 23, %8604
  %8606 = add nsw i32 %8603, %8605
  %8607 = sext i32 %8606 to i64
  %8608 = getelementptr inbounds double, ptr %8602, i64 %8607
  %8609 = load double, ptr %8608, align 8, !tbaa !11
  %8610 = fadd double %8609, %8601
  store double %8610, ptr %8608, align 8, !tbaa !11
  %8611 = load ptr, ptr %7, align 8, !tbaa !9
  %8612 = load i32, ptr %12, align 4, !tbaa !5
  %8613 = load i32, ptr %8, align 4, !tbaa !5
  %8614 = mul nsw i32 0, %8613
  %8615 = add nsw i32 %8612, %8614
  %8616 = sext i32 %8615 to i64
  %8617 = getelementptr inbounds double, ptr %8611, i64 %8616
  %8618 = load double, ptr %8617, align 8, !tbaa !11
  %8619 = load ptr, ptr %7, align 8, !tbaa !9
  %8620 = load i32, ptr %12, align 4, !tbaa !5
  %8621 = load i32, ptr %8, align 4, !tbaa !5
  %8622 = mul nsw i32 1, %8621
  %8623 = add nsw i32 %8620, %8622
  %8624 = sext i32 %8623 to i64
  %8625 = getelementptr inbounds double, ptr %8619, i64 %8624
  %8626 = load double, ptr %8625, align 8, !tbaa !11
  %8627 = fmul double 0x3C7FFFFFFFFFFFFF, %8626
  %8628 = call double @llvm.fmuladd.f64(double 0xBCAB000000000001, double %8618, double %8627)
  %8629 = load ptr, ptr %7, align 8, !tbaa !9
  %8630 = load i32, ptr %12, align 4, !tbaa !5
  %8631 = load i32, ptr %8, align 4, !tbaa !5
  %8632 = mul nsw i32 2, %8631
  %8633 = add nsw i32 %8630, %8632
  %8634 = sext i32 %8633 to i64
  %8635 = getelementptr inbounds double, ptr %8629, i64 %8634
  %8636 = load double, ptr %8635, align 8, !tbaa !11
  %8637 = call double @llvm.fmuladd.f64(double 0xBC91400000000000, double %8636, double %8628)
  %8638 = load ptr, ptr %7, align 8, !tbaa !9
  %8639 = load i32, ptr %12, align 4, !tbaa !5
  %8640 = load i32, ptr %8, align 4, !tbaa !5
  %8641 = mul nsw i32 3, %8640
  %8642 = add nsw i32 %8639, %8641
  %8643 = sext i32 %8642 to i64
  %8644 = getelementptr inbounds double, ptr %8638, i64 %8643
  %8645 = load double, ptr %8644, align 8, !tbaa !11
  %8646 = call double @llvm.fmuladd.f64(double 0xBC84800000000001, double %8645, double %8637)
  %8647 = load ptr, ptr %7, align 8, !tbaa !9
  %8648 = load i32, ptr %12, align 4, !tbaa !5
  %8649 = load i32, ptr %8, align 4, !tbaa !5
  %8650 = mul nsw i32 4, %8649
  %8651 = add nsw i32 %8648, %8650
  %8652 = sext i32 %8651 to i64
  %8653 = getelementptr inbounds double, ptr %8647, i64 %8652
  %8654 = load double, ptr %8653, align 8, !tbaa !11
  %8655 = call double @llvm.fmuladd.f64(double 0xBCA5FFFFFFFFFFFF, double %8654, double %8646)
  %8656 = load ptr, ptr %7, align 8, !tbaa !9
  %8657 = load i32, ptr %12, align 4, !tbaa !5
  %8658 = load i32, ptr %8, align 4, !tbaa !5
  %8659 = mul nsw i32 5, %8658
  %8660 = add nsw i32 %8657, %8659
  %8661 = sext i32 %8660 to i64
  %8662 = getelementptr inbounds double, ptr %8656, i64 %8661
  %8663 = load double, ptr %8662, align 8, !tbaa !11
  %8664 = call double @llvm.fmuladd.f64(double 0x3CAC000000000000, double %8663, double %8655)
  %8665 = load ptr, ptr %7, align 8, !tbaa !9
  %8666 = load i32, ptr %12, align 4, !tbaa !5
  %8667 = load i32, ptr %8, align 4, !tbaa !5
  %8668 = mul nsw i32 6, %8667
  %8669 = add nsw i32 %8666, %8668
  %8670 = sext i32 %8669 to i64
  %8671 = getelementptr inbounds double, ptr %8665, i64 %8670
  %8672 = load double, ptr %8671, align 8, !tbaa !11
  %8673 = call double @llvm.fmuladd.f64(double 0xBC9A800000000000, double %8672, double %8664)
  %8674 = load ptr, ptr %7, align 8, !tbaa !9
  %8675 = load i32, ptr %12, align 4, !tbaa !5
  %8676 = load i32, ptr %8, align 4, !tbaa !5
  %8677 = mul nsw i32 7, %8676
  %8678 = add nsw i32 %8675, %8677
  %8679 = sext i32 %8678 to i64
  %8680 = getelementptr inbounds double, ptr %8674, i64 %8679
  %8681 = load double, ptr %8680, align 8, !tbaa !11
  %8682 = call double @llvm.fmuladd.f64(double 0xBC50000000000000, double %8681, double %8673)
  %8683 = load ptr, ptr %7, align 8, !tbaa !9
  %8684 = load i32, ptr %12, align 4, !tbaa !5
  %8685 = load i32, ptr %8, align 4, !tbaa !5
  %8686 = mul nsw i32 8, %8685
  %8687 = add nsw i32 %8684, %8686
  %8688 = sext i32 %8687 to i64
  %8689 = getelementptr inbounds double, ptr %8683, i64 %8688
  %8690 = load double, ptr %8689, align 8, !tbaa !11
  %8691 = call double @llvm.fmuladd.f64(double 0xBC70000000000001, double %8690, double %8682)
  %8692 = load ptr, ptr %7, align 8, !tbaa !9
  %8693 = load i32, ptr %12, align 4, !tbaa !5
  %8694 = load i32, ptr %8, align 4, !tbaa !5
  %8695 = mul nsw i32 9, %8694
  %8696 = add nsw i32 %8693, %8695
  %8697 = sext i32 %8696 to i64
  %8698 = getelementptr inbounds double, ptr %8692, i64 %8697
  %8699 = load double, ptr %8698, align 8, !tbaa !11
  %8700 = call double @llvm.fmuladd.f64(double 0x3C9A000000000000, double %8699, double %8691)
  %8701 = load ptr, ptr %7, align 8, !tbaa !9
  %8702 = load i32, ptr %12, align 4, !tbaa !5
  %8703 = load i32, ptr %8, align 4, !tbaa !5
  %8704 = mul nsw i32 10, %8703
  %8705 = add nsw i32 %8702, %8704
  %8706 = sext i32 %8705 to i64
  %8707 = getelementptr inbounds double, ptr %8701, i64 %8706
  %8708 = load double, ptr %8707, align 8, !tbaa !11
  %8709 = call double @llvm.fmuladd.f64(double 0xBF83152016E0EC80, double %8708, double %8700)
  %8710 = load ptr, ptr %7, align 8, !tbaa !9
  %8711 = load i32, ptr %12, align 4, !tbaa !5
  %8712 = load i32, ptr %8, align 4, !tbaa !5
  %8713 = mul nsw i32 11, %8712
  %8714 = add nsw i32 %8711, %8713
  %8715 = sext i32 %8714 to i64
  %8716 = getelementptr inbounds double, ptr %8710, i64 %8715
  %8717 = load double, ptr %8716, align 8, !tbaa !11
  %8718 = call double @llvm.fmuladd.f64(double 0xBFB5B58B4F03B19E, double %8717, double %8709)
  %8719 = load ptr, ptr %7, align 8, !tbaa !9
  %8720 = load i32, ptr %12, align 4, !tbaa !5
  %8721 = load i32, ptr %8, align 4, !tbaa !5
  %8722 = mul nsw i32 12, %8721
  %8723 = add nsw i32 %8720, %8722
  %8724 = sext i32 %8723 to i64
  %8725 = getelementptr inbounds double, ptr %8719, i64 %8724
  %8726 = load double, ptr %8725, align 8, !tbaa !11
  %8727 = call double @llvm.fmuladd.f64(double 0x3F938CE4890DB313, double %8726, double %8718)
  %8728 = load ptr, ptr %7, align 8, !tbaa !9
  %8729 = load i32, ptr %12, align 4, !tbaa !5
  %8730 = load i32, ptr %8, align 4, !tbaa !5
  %8731 = mul nsw i32 13, %8730
  %8732 = add nsw i32 %8729, %8731
  %8733 = sext i32 %8732 to i64
  %8734 = getelementptr inbounds double, ptr %8728, i64 %8733
  %8735 = load double, ptr %8734, align 8, !tbaa !11
  %8736 = call double @llvm.fmuladd.f64(double 0x3FF4EC1BB3FDC612, double %8735, double %8727)
  %8737 = load ptr, ptr %7, align 8, !tbaa !9
  %8738 = load i32, ptr %12, align 4, !tbaa !5
  %8739 = load i32, ptr %8, align 4, !tbaa !5
  %8740 = mul nsw i32 14, %8739
  %8741 = add nsw i32 %8738, %8740
  %8742 = sext i32 %8741 to i64
  %8743 = getelementptr inbounds double, ptr %8737, i64 %8742
  %8744 = load double, ptr %8743, align 8, !tbaa !11
  %8745 = call double @llvm.fmuladd.f64(double 0x3F85E50BB681A431, double %8744, double %8736)
  %8746 = load ptr, ptr %7, align 8, !tbaa !9
  %8747 = load i32, ptr %12, align 4, !tbaa !5
  %8748 = load i32, ptr %8, align 4, !tbaa !5
  %8749 = mul nsw i32 15, %8748
  %8750 = add nsw i32 %8747, %8749
  %8751 = sext i32 %8750 to i64
  %8752 = getelementptr inbounds double, ptr %8746, i64 %8751
  %8753 = load double, ptr %8752, align 8, !tbaa !11
  %8754 = call double @llvm.fmuladd.f64(double 0xBFE5679E70A60658, double %8753, double %8745)
  %8755 = load ptr, ptr %7, align 8, !tbaa !9
  %8756 = load i32, ptr %12, align 4, !tbaa !5
  %8757 = load i32, ptr %8, align 4, !tbaa !5
  %8758 = mul nsw i32 16, %8757
  %8759 = add nsw i32 %8756, %8758
  %8760 = sext i32 %8759 to i64
  %8761 = getelementptr inbounds double, ptr %8755, i64 %8760
  %8762 = load double, ptr %8761, align 8, !tbaa !11
  %8763 = call double @llvm.fmuladd.f64(double 0x3FCA50C41AB7A337, double %8762, double %8754)
  %8764 = load ptr, ptr %7, align 8, !tbaa !9
  %8765 = load i32, ptr %12, align 4, !tbaa !5
  %8766 = load i32, ptr %8, align 4, !tbaa !5
  %8767 = mul nsw i32 17, %8766
  %8768 = add nsw i32 %8765, %8767
  %8769 = sext i32 %8768 to i64
  %8770 = getelementptr inbounds double, ptr %8764, i64 %8769
  %8771 = load double, ptr %8770, align 8, !tbaa !11
  %8772 = call double @llvm.fmuladd.f64(double 0xBFB49217631F5956, double %8771, double %8763)
  %8773 = load ptr, ptr %7, align 8, !tbaa !9
  %8774 = load i32, ptr %12, align 4, !tbaa !5
  %8775 = load i32, ptr %8, align 4, !tbaa !5
  %8776 = mul nsw i32 18, %8775
  %8777 = add nsw i32 %8774, %8776
  %8778 = sext i32 %8777 to i64
  %8779 = getelementptr inbounds double, ptr %8773, i64 %8778
  %8780 = load double, ptr %8779, align 8, !tbaa !11
  %8781 = call double @llvm.fmuladd.f64(double 0x3FD417DEBFC17B18, double %8780, double %8772)
  %8782 = load ptr, ptr %7, align 8, !tbaa !9
  %8783 = load i32, ptr %12, align 4, !tbaa !5
  %8784 = load i32, ptr %8, align 4, !tbaa !5
  %8785 = mul nsw i32 19, %8784
  %8786 = add nsw i32 %8783, %8785
  %8787 = sext i32 %8786 to i64
  %8788 = getelementptr inbounds double, ptr %8782, i64 %8787
  %8789 = load double, ptr %8788, align 8, !tbaa !11
  %8790 = call double @llvm.fmuladd.f64(double 0xBF8BDAF699AECFC1, double %8789, double %8781)
  %8791 = load ptr, ptr %7, align 8, !tbaa !9
  %8792 = load i32, ptr %12, align 4, !tbaa !5
  %8793 = load i32, ptr %8, align 4, !tbaa !5
  %8794 = mul nsw i32 20, %8793
  %8795 = add nsw i32 %8792, %8794
  %8796 = sext i32 %8795 to i64
  %8797 = getelementptr inbounds double, ptr %8791, i64 %8796
  %8798 = load double, ptr %8797, align 8, !tbaa !11
  %8799 = call double @llvm.fmuladd.f64(double 0x3CA8000000000001, double %8798, double %8790)
  %8800 = load ptr, ptr %7, align 8, !tbaa !9
  %8801 = load i32, ptr %12, align 4, !tbaa !5
  %8802 = load i32, ptr %8, align 4, !tbaa !5
  %8803 = mul nsw i32 21, %8802
  %8804 = add nsw i32 %8801, %8803
  %8805 = sext i32 %8804 to i64
  %8806 = getelementptr inbounds double, ptr %8800, i64 %8805
  %8807 = load double, ptr %8806, align 8, !tbaa !11
  %8808 = call double @llvm.fmuladd.f64(double 0xBC70000000000001, double %8807, double %8799)
  %8809 = load ptr, ptr %7, align 8, !tbaa !9
  %8810 = load i32, ptr %12, align 4, !tbaa !5
  %8811 = load i32, ptr %8, align 4, !tbaa !5
  %8812 = mul nsw i32 22, %8811
  %8813 = add nsw i32 %8810, %8812
  %8814 = sext i32 %8813 to i64
  %8815 = getelementptr inbounds double, ptr %8809, i64 %8814
  %8816 = load double, ptr %8815, align 8, !tbaa !11
  %8817 = call double @llvm.fmuladd.f64(double 0x3C86000000000001, double %8816, double %8808)
  %8818 = load ptr, ptr %7, align 8, !tbaa !9
  %8819 = load i32, ptr %12, align 4, !tbaa !5
  %8820 = load i32, ptr %8, align 4, !tbaa !5
  %8821 = mul nsw i32 23, %8820
  %8822 = add nsw i32 %8819, %8821
  %8823 = sext i32 %8822 to i64
  %8824 = getelementptr inbounds double, ptr %8818, i64 %8823
  %8825 = load double, ptr %8824, align 8, !tbaa !11
  %8826 = call double @llvm.fmuladd.f64(double 0xBCB1800000000000, double %8825, double %8817)
  %8827 = load ptr, ptr %7, align 8, !tbaa !9
  %8828 = load i32, ptr %12, align 4, !tbaa !5
  %8829 = load i32, ptr %8, align 4, !tbaa !5
  %8830 = mul nsw i32 24, %8829
  %8831 = add nsw i32 %8828, %8830
  %8832 = sext i32 %8831 to i64
  %8833 = getelementptr inbounds double, ptr %8827, i64 %8832
  %8834 = load double, ptr %8833, align 8, !tbaa !11
  %8835 = call double @llvm.fmuladd.f64(double 0x3CA5FFFFFFFFFFFF, double %8834, double %8826)
  %8836 = load ptr, ptr %7, align 8, !tbaa !9
  %8837 = load i32, ptr %12, align 4, !tbaa !5
  %8838 = load i32, ptr %8, align 4, !tbaa !5
  %8839 = mul nsw i32 25, %8838
  %8840 = add nsw i32 %8837, %8839
  %8841 = sext i32 %8840 to i64
  %8842 = getelementptr inbounds double, ptr %8836, i64 %8841
  %8843 = load double, ptr %8842, align 8, !tbaa !11
  %8844 = call double @llvm.fmuladd.f64(double 0xBC70000000000001, double %8843, double %8835)
  %8845 = load ptr, ptr %7, align 8, !tbaa !9
  %8846 = load i32, ptr %12, align 4, !tbaa !5
  %8847 = load i32, ptr %8, align 4, !tbaa !5
  %8848 = mul nsw i32 26, %8847
  %8849 = add nsw i32 %8846, %8848
  %8850 = sext i32 %8849 to i64
  %8851 = getelementptr inbounds double, ptr %8845, i64 %8850
  %8852 = load double, ptr %8851, align 8, !tbaa !11
  %8853 = call double @llvm.fmuladd.f64(double 0xBCA8000000000001, double %8852, double %8844)
  %8854 = load ptr, ptr %7, align 8, !tbaa !9
  %8855 = load i32, ptr %12, align 4, !tbaa !5
  %8856 = load i32, ptr %8, align 4, !tbaa !5
  %8857 = mul nsw i32 27, %8856
  %8858 = add nsw i32 %8855, %8857
  %8859 = sext i32 %8858 to i64
  %8860 = getelementptr inbounds double, ptr %8854, i64 %8859
  %8861 = load double, ptr %8860, align 8, !tbaa !11
  %8862 = call double @llvm.fmuladd.f64(double 0xBC78000000000002, double %8861, double %8853)
  %8863 = load ptr, ptr %7, align 8, !tbaa !9
  %8864 = load i32, ptr %12, align 4, !tbaa !5
  %8865 = load i32, ptr %8, align 4, !tbaa !5
  %8866 = mul nsw i32 28, %8865
  %8867 = add nsw i32 %8864, %8866
  %8868 = sext i32 %8867 to i64
  %8869 = getelementptr inbounds double, ptr %8863, i64 %8868
  %8870 = load double, ptr %8869, align 8, !tbaa !11
  %8871 = call double @llvm.fmuladd.f64(double 0x3CAC000000000000, double %8870, double %8862)
  %8872 = load ptr, ptr %7, align 8, !tbaa !9
  %8873 = load i32, ptr %12, align 4, !tbaa !5
  %8874 = load i32, ptr %8, align 4, !tbaa !5
  %8875 = mul nsw i32 29, %8874
  %8876 = add nsw i32 %8873, %8875
  %8877 = sext i32 %8876 to i64
  %8878 = getelementptr inbounds double, ptr %8872, i64 %8877
  %8879 = load double, ptr %8878, align 8, !tbaa !11
  %8880 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %8879, double %8871)
  %8881 = load ptr, ptr %7, align 8, !tbaa !9
  %8882 = load i32, ptr %12, align 4, !tbaa !5
  %8883 = load i32, ptr %8, align 4, !tbaa !5
  %8884 = mul nsw i32 30, %8883
  %8885 = add nsw i32 %8882, %8884
  %8886 = sext i32 %8885 to i64
  %8887 = getelementptr inbounds double, ptr %8881, i64 %8886
  %8888 = load double, ptr %8887, align 8, !tbaa !11
  %8889 = call double @llvm.fmuladd.f64(double 0xBCA1000000000001, double %8888, double %8880)
  %8890 = load ptr, ptr %7, align 8, !tbaa !9
  %8891 = load i32, ptr %12, align 4, !tbaa !5
  %8892 = load i32, ptr %8, align 4, !tbaa !5
  %8893 = mul nsw i32 31, %8892
  %8894 = add nsw i32 %8891, %8893
  %8895 = sext i32 %8894 to i64
  %8896 = getelementptr inbounds double, ptr %8890, i64 %8895
  %8897 = load double, ptr %8896, align 8, !tbaa !11
  %8898 = call double @llvm.fmuladd.f64(double 0xBC70000000000001, double %8897, double %8889)
  %8899 = load ptr, ptr %7, align 8, !tbaa !9
  %8900 = load i32, ptr %12, align 4, !tbaa !5
  %8901 = load i32, ptr %8, align 4, !tbaa !5
  %8902 = mul nsw i32 32, %8901
  %8903 = add nsw i32 %8900, %8902
  %8904 = sext i32 %8903 to i64
  %8905 = getelementptr inbounds double, ptr %8899, i64 %8904
  %8906 = load double, ptr %8905, align 8, !tbaa !11
  %8907 = call double @llvm.fmuladd.f64(double 0xBC67FFFFFFFFFFFE, double %8906, double %8898)
  %8908 = load ptr, ptr %7, align 8, !tbaa !9
  %8909 = load i32, ptr %12, align 4, !tbaa !5
  %8910 = load i32, ptr %8, align 4, !tbaa !5
  %8911 = mul nsw i32 33, %8910
  %8912 = add nsw i32 %8909, %8911
  %8913 = sext i32 %8912 to i64
  %8914 = getelementptr inbounds double, ptr %8908, i64 %8913
  %8915 = load double, ptr %8914, align 8, !tbaa !11
  %8916 = call double @llvm.fmuladd.f64(double 0x3CAFC00000000000, double %8915, double %8907)
  %8917 = load ptr, ptr %7, align 8, !tbaa !9
  %8918 = load i32, ptr %12, align 4, !tbaa !5
  %8919 = load i32, ptr %8, align 4, !tbaa !5
  %8920 = mul nsw i32 34, %8919
  %8921 = add nsw i32 %8918, %8920
  %8922 = sext i32 %8921 to i64
  %8923 = getelementptr inbounds double, ptr %8917, i64 %8922
  %8924 = load double, ptr %8923, align 8, !tbaa !11
  %8925 = call double @llvm.fmuladd.f64(double 0xBC92000000000000, double %8924, double %8916)
  %8926 = load ptr, ptr %7, align 8, !tbaa !9
  %8927 = load i32, ptr %12, align 4, !tbaa !5
  %8928 = load i32, ptr %8, align 4, !tbaa !5
  %8929 = mul nsw i32 36, %8928
  %8930 = add nsw i32 %8927, %8929
  %8931 = sext i32 %8930 to i64
  %8932 = getelementptr inbounds double, ptr %8926, i64 %8931
  %8933 = load double, ptr %8932, align 8, !tbaa !11
  %8934 = call double @llvm.fmuladd.f64(double 0x3C89FFFFFFFFFFFF, double %8933, double %8925)
  %8935 = load ptr, ptr %7, align 8, !tbaa !9
  %8936 = load i32, ptr %12, align 4, !tbaa !5
  %8937 = load i32, ptr %8, align 4, !tbaa !5
  %8938 = mul nsw i32 37, %8937
  %8939 = add nsw i32 %8936, %8938
  %8940 = sext i32 %8939 to i64
  %8941 = getelementptr inbounds double, ptr %8935, i64 %8940
  %8942 = load double, ptr %8941, align 8, !tbaa !11
  %8943 = call double @llvm.fmuladd.f64(double 0xBCAE000000000002, double %8942, double %8934)
  %8944 = load ptr, ptr %7, align 8, !tbaa !9
  %8945 = load i32, ptr %12, align 4, !tbaa !5
  %8946 = load i32, ptr %8, align 4, !tbaa !5
  %8947 = mul nsw i32 39, %8946
  %8948 = add nsw i32 %8945, %8947
  %8949 = sext i32 %8948 to i64
  %8950 = getelementptr inbounds double, ptr %8944, i64 %8949
  %8951 = load double, ptr %8950, align 8, !tbaa !11
  %8952 = call double @llvm.fmuladd.f64(double 0xBC84000000000000, double %8951, double %8943)
  store double %8952, ptr %11, align 8, !tbaa !11
  %8953 = load double, ptr %11, align 8, !tbaa !11
  %8954 = load ptr, ptr %9, align 8, !tbaa !9
  %8955 = load i32, ptr %12, align 4, !tbaa !5
  %8956 = load i32, ptr %10, align 4, !tbaa !5
  %8957 = mul nsw i32 24, %8956
  %8958 = add nsw i32 %8955, %8957
  %8959 = sext i32 %8958 to i64
  %8960 = getelementptr inbounds double, ptr %8954, i64 %8959
  %8961 = load double, ptr %8960, align 8, !tbaa !11
  %8962 = fadd double %8961, %8953
  store double %8962, ptr %8960, align 8, !tbaa !11
  %8963 = load ptr, ptr %7, align 8, !tbaa !9
  %8964 = load i32, ptr %12, align 4, !tbaa !5
  %8965 = load i32, ptr %8, align 4, !tbaa !5
  %8966 = mul nsw i32 0, %8965
  %8967 = add nsw i32 %8964, %8966
  %8968 = sext i32 %8967 to i64
  %8969 = getelementptr inbounds double, ptr %8963, i64 %8968
  %8970 = load double, ptr %8969, align 8, !tbaa !11
  %8971 = load ptr, ptr %7, align 8, !tbaa !9
  %8972 = load i32, ptr %12, align 4, !tbaa !5
  %8973 = load i32, ptr %8, align 4, !tbaa !5
  %8974 = mul nsw i32 1, %8973
  %8975 = add nsw i32 %8972, %8974
  %8976 = sext i32 %8975 to i64
  %8977 = getelementptr inbounds double, ptr %8971, i64 %8976
  %8978 = load double, ptr %8977, align 8, !tbaa !11
  %8979 = fmul double 0xBC60000000000000, %8978
  %8980 = call double @llvm.fmuladd.f64(double 0x3CC2400000000000, double %8970, double %8979)
  %8981 = load ptr, ptr %7, align 8, !tbaa !9
  %8982 = load i32, ptr %12, align 4, !tbaa !5
  %8983 = load i32, ptr %8, align 4, !tbaa !5
  %8984 = mul nsw i32 2, %8983
  %8985 = add nsw i32 %8982, %8984
  %8986 = sext i32 %8985 to i64
  %8987 = getelementptr inbounds double, ptr %8981, i64 %8986
  %8988 = load double, ptr %8987, align 8, !tbaa !11
  %8989 = call double @llvm.fmuladd.f64(double 0xBC9E3FFFFFFFFFFE, double %8988, double %8980)
  %8990 = load ptr, ptr %7, align 8, !tbaa !9
  %8991 = load i32, ptr %12, align 4, !tbaa !5
  %8992 = load i32, ptr %8, align 4, !tbaa !5
  %8993 = mul nsw i32 3, %8992
  %8994 = add nsw i32 %8991, %8993
  %8995 = sext i32 %8994 to i64
  %8996 = getelementptr inbounds double, ptr %8990, i64 %8995
  %8997 = load double, ptr %8996, align 8, !tbaa !11
  %8998 = call double @llvm.fmuladd.f64(double 0x3CA65FFFFFFFFFFF, double %8997, double %8989)
  %8999 = load ptr, ptr %7, align 8, !tbaa !9
  %9000 = load i32, ptr %12, align 4, !tbaa !5
  %9001 = load i32, ptr %8, align 4, !tbaa !5
  %9002 = mul nsw i32 4, %9001
  %9003 = add nsw i32 %9000, %9002
  %9004 = sext i32 %9003 to i64
  %9005 = getelementptr inbounds double, ptr %8999, i64 %9004
  %9006 = load double, ptr %9005, align 8, !tbaa !11
  %9007 = call double @llvm.fmuladd.f64(double 0x3C8E000000000000, double %9006, double %8998)
  %9008 = load ptr, ptr %7, align 8, !tbaa !9
  %9009 = load i32, ptr %12, align 4, !tbaa !5
  %9010 = load i32, ptr %8, align 4, !tbaa !5
  %9011 = mul nsw i32 5, %9010
  %9012 = add nsw i32 %9009, %9011
  %9013 = sext i32 %9012 to i64
  %9014 = getelementptr inbounds double, ptr %9008, i64 %9013
  %9015 = load double, ptr %9014, align 8, !tbaa !11
  %9016 = call double @llvm.fmuladd.f64(double 0x3C91000000000000, double %9015, double %9007)
  %9017 = load ptr, ptr %7, align 8, !tbaa !9
  %9018 = load i32, ptr %12, align 4, !tbaa !5
  %9019 = load i32, ptr %8, align 4, !tbaa !5
  %9020 = mul nsw i32 6, %9019
  %9021 = add nsw i32 %9018, %9020
  %9022 = sext i32 %9021 to i64
  %9023 = getelementptr inbounds double, ptr %9017, i64 %9022
  %9024 = load double, ptr %9023, align 8, !tbaa !11
  %9025 = call double @llvm.fmuladd.f64(double 0xBCC6700000000000, double %9024, double %9016)
  %9026 = load ptr, ptr %7, align 8, !tbaa !9
  %9027 = load i32, ptr %12, align 4, !tbaa !5
  %9028 = load i32, ptr %8, align 4, !tbaa !5
  %9029 = mul nsw i32 7, %9028
  %9030 = add nsw i32 %9027, %9029
  %9031 = sext i32 %9030 to i64
  %9032 = getelementptr inbounds double, ptr %9026, i64 %9031
  %9033 = load double, ptr %9032, align 8, !tbaa !11
  %9034 = call double @llvm.fmuladd.f64(double 0xBCB23FFFFFFFFFFF, double %9033, double %9025)
  %9035 = load ptr, ptr %7, align 8, !tbaa !9
  %9036 = load i32, ptr %12, align 4, !tbaa !5
  %9037 = load i32, ptr %8, align 4, !tbaa !5
  %9038 = mul nsw i32 8, %9037
  %9039 = add nsw i32 %9036, %9038
  %9040 = sext i32 %9039 to i64
  %9041 = getelementptr inbounds double, ptr %9035, i64 %9040
  %9042 = load double, ptr %9041, align 8, !tbaa !11
  %9043 = call double @llvm.fmuladd.f64(double 0xBC60000000000000, double %9042, double %9034)
  %9044 = load ptr, ptr %7, align 8, !tbaa !9
  %9045 = load i32, ptr %12, align 4, !tbaa !5
  %9046 = load i32, ptr %8, align 4, !tbaa !5
  %9047 = mul nsw i32 9, %9046
  %9048 = add nsw i32 %9045, %9047
  %9049 = sext i32 %9048 to i64
  %9050 = getelementptr inbounds double, ptr %9044, i64 %9049
  %9051 = load double, ptr %9050, align 8, !tbaa !11
  %9052 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %9051, double %9043)
  %9053 = load ptr, ptr %7, align 8, !tbaa !9
  %9054 = load i32, ptr %12, align 4, !tbaa !5
  %9055 = load i32, ptr %8, align 4, !tbaa !5
  %9056 = mul nsw i32 10, %9055
  %9057 = add nsw i32 %9054, %9056
  %9058 = sext i32 %9057 to i64
  %9059 = getelementptr inbounds double, ptr %9053, i64 %9058
  %9060 = load double, ptr %9059, align 8, !tbaa !11
  %9061 = call double @llvm.fmuladd.f64(double 0xBFE333710B32A29F, double %9060, double %9052)
  %9062 = load ptr, ptr %7, align 8, !tbaa !9
  %9063 = load i32, ptr %12, align 4, !tbaa !5
  %9064 = load i32, ptr %8, align 4, !tbaa !5
  %9065 = mul nsw i32 11, %9064
  %9066 = add nsw i32 %9063, %9065
  %9067 = sext i32 %9066 to i64
  %9068 = getelementptr inbounds double, ptr %9062, i64 %9067
  %9069 = load double, ptr %9068, align 8, !tbaa !11
  %9070 = call double @llvm.fmuladd.f64(double 0xBFBEED13A9F0D8EC, double %9069, double %9061)
  %9071 = load ptr, ptr %7, align 8, !tbaa !9
  %9072 = load i32, ptr %12, align 4, !tbaa !5
  %9073 = load i32, ptr %8, align 4, !tbaa !5
  %9074 = mul nsw i32 12, %9073
  %9075 = add nsw i32 %9072, %9074
  %9076 = sext i32 %9075 to i64
  %9077 = getelementptr inbounds double, ptr %9071, i64 %9076
  %9078 = load double, ptr %9077, align 8, !tbaa !11
  %9079 = call double @llvm.fmuladd.f64(double 0xBFA352D4DB969C1F, double %9078, double %9070)
  %9080 = load ptr, ptr %7, align 8, !tbaa !9
  %9081 = load i32, ptr %12, align 4, !tbaa !5
  %9082 = load i32, ptr %8, align 4, !tbaa !5
  %9083 = mul nsw i32 13, %9082
  %9084 = add nsw i32 %9081, %9083
  %9085 = sext i32 %9084 to i64
  %9086 = getelementptr inbounds double, ptr %9080, i64 %9085
  %9087 = load double, ptr %9086, align 8, !tbaa !11
  %9088 = call double @llvm.fmuladd.f64(double 0x3FA87D7643548540, double %9087, double %9079)
  %9089 = load ptr, ptr %7, align 8, !tbaa !9
  %9090 = load i32, ptr %12, align 4, !tbaa !5
  %9091 = load i32, ptr %8, align 4, !tbaa !5
  %9092 = mul nsw i32 14, %9091
  %9093 = add nsw i32 %9090, %9092
  %9094 = sext i32 %9093 to i64
  %9095 = getelementptr inbounds double, ptr %9089, i64 %9094
  %9096 = load double, ptr %9095, align 8, !tbaa !11
  %9097 = call double @llvm.fmuladd.f64(double 0x3F9854E0ADA34B70, double %9096, double %9088)
  %9098 = load ptr, ptr %7, align 8, !tbaa !9
  %9099 = load i32, ptr %12, align 4, !tbaa !5
  %9100 = load i32, ptr %8, align 4, !tbaa !5
  %9101 = mul nsw i32 15, %9100
  %9102 = add nsw i32 %9099, %9101
  %9103 = sext i32 %9102 to i64
  %9104 = getelementptr inbounds double, ptr %9098, i64 %9103
  %9105 = load double, ptr %9104, align 8, !tbaa !11
  %9106 = call double @llvm.fmuladd.f64(double 0xBFD41C0D131D4297, double %9105, double %9097)
  %9107 = load ptr, ptr %7, align 8, !tbaa !9
  %9108 = load i32, ptr %12, align 4, !tbaa !5
  %9109 = load i32, ptr %8, align 4, !tbaa !5
  %9110 = mul nsw i32 16, %9109
  %9111 = add nsw i32 %9108, %9110
  %9112 = sext i32 %9111 to i64
  %9113 = getelementptr inbounds double, ptr %9107, i64 %9112
  %9114 = load double, ptr %9113, align 8, !tbaa !11
  %9115 = call double @llvm.fmuladd.f64(double 0x3FF670C5F1F4C92E, double %9114, double %9106)
  %9116 = load ptr, ptr %7, align 8, !tbaa !9
  %9117 = load i32, ptr %12, align 4, !tbaa !5
  %9118 = load i32, ptr %8, align 4, !tbaa !5
  %9119 = mul nsw i32 17, %9118
  %9120 = add nsw i32 %9117, %9119
  %9121 = sext i32 %9120 to i64
  %9122 = getelementptr inbounds double, ptr %9116, i64 %9121
  %9123 = load double, ptr %9122, align 8, !tbaa !11
  %9124 = call double @llvm.fmuladd.f64(double 0x3FC36A9134CD3C66, double %9123, double %9115)
  %9125 = load ptr, ptr %7, align 8, !tbaa !9
  %9126 = load i32, ptr %12, align 4, !tbaa !5
  %9127 = load i32, ptr %8, align 4, !tbaa !5
  %9128 = mul nsw i32 18, %9127
  %9129 = add nsw i32 %9126, %9128
  %9130 = sext i32 %9129 to i64
  %9131 = getelementptr inbounds double, ptr %9125, i64 %9130
  %9132 = load double, ptr %9131, align 8, !tbaa !11
  %9133 = call double @llvm.fmuladd.f64(double 0x3FD35DAE88CBA648, double %9132, double %9124)
  %9134 = load ptr, ptr %7, align 8, !tbaa !9
  %9135 = load i32, ptr %12, align 4, !tbaa !5
  %9136 = load i32, ptr %8, align 4, !tbaa !5
  %9137 = mul nsw i32 19, %9136
  %9138 = add nsw i32 %9135, %9137
  %9139 = sext i32 %9138 to i64
  %9140 = getelementptr inbounds double, ptr %9134, i64 %9139
  %9141 = load double, ptr %9140, align 8, !tbaa !11
  %9142 = call double @llvm.fmuladd.f64(double 0x3FC27B05E24EC5F4, double %9141, double %9133)
  %9143 = load ptr, ptr %7, align 8, !tbaa !9
  %9144 = load i32, ptr %12, align 4, !tbaa !5
  %9145 = load i32, ptr %8, align 4, !tbaa !5
  %9146 = mul nsw i32 20, %9145
  %9147 = add nsw i32 %9144, %9146
  %9148 = sext i32 %9147 to i64
  %9149 = getelementptr inbounds double, ptr %9143, i64 %9148
  %9150 = load double, ptr %9149, align 8, !tbaa !11
  %9151 = call double @llvm.fmuladd.f64(double 0x3CC1000000000000, double %9150, double %9142)
  %9152 = load ptr, ptr %7, align 8, !tbaa !9
  %9153 = load i32, ptr %12, align 4, !tbaa !5
  %9154 = load i32, ptr %8, align 4, !tbaa !5
  %9155 = mul nsw i32 21, %9154
  %9156 = add nsw i32 %9153, %9155
  %9157 = sext i32 %9156 to i64
  %9158 = getelementptr inbounds double, ptr %9152, i64 %9157
  %9159 = load double, ptr %9158, align 8, !tbaa !11
  %9160 = call double @llvm.fmuladd.f64(double 0xBCA2000000000000, double %9159, double %9151)
  %9161 = load ptr, ptr %7, align 8, !tbaa !9
  %9162 = load i32, ptr %12, align 4, !tbaa !5
  %9163 = load i32, ptr %8, align 4, !tbaa !5
  %9164 = mul nsw i32 22, %9163
  %9165 = add nsw i32 %9162, %9164
  %9166 = sext i32 %9165 to i64
  %9167 = getelementptr inbounds double, ptr %9161, i64 %9166
  %9168 = load double, ptr %9167, align 8, !tbaa !11
  %9169 = call double @llvm.fmuladd.f64(double 0x3C7C000000000000, double %9168, double %9160)
  %9170 = load ptr, ptr %7, align 8, !tbaa !9
  %9171 = load i32, ptr %12, align 4, !tbaa !5
  %9172 = load i32, ptr %8, align 4, !tbaa !5
  %9173 = mul nsw i32 23, %9172
  %9174 = add nsw i32 %9171, %9173
  %9175 = sext i32 %9174 to i64
  %9176 = getelementptr inbounds double, ptr %9170, i64 %9175
  %9177 = load double, ptr %9176, align 8, !tbaa !11
  %9178 = call double @llvm.fmuladd.f64(double 0xBCAF800000000000, double %9177, double %9169)
  %9179 = load ptr, ptr %7, align 8, !tbaa !9
  %9180 = load i32, ptr %12, align 4, !tbaa !5
  %9181 = load i32, ptr %8, align 4, !tbaa !5
  %9182 = mul nsw i32 24, %9181
  %9183 = add nsw i32 %9180, %9182
  %9184 = sext i32 %9183 to i64
  %9185 = getelementptr inbounds double, ptr %9179, i64 %9184
  %9186 = load double, ptr %9185, align 8, !tbaa !11
  %9187 = call double @llvm.fmuladd.f64(double 0x3CA0000000000002, double %9186, double %9178)
  %9188 = load ptr, ptr %7, align 8, !tbaa !9
  %9189 = load i32, ptr %12, align 4, !tbaa !5
  %9190 = load i32, ptr %8, align 4, !tbaa !5
  %9191 = mul nsw i32 25, %9190
  %9192 = add nsw i32 %9189, %9191
  %9193 = sext i32 %9192 to i64
  %9194 = getelementptr inbounds double, ptr %9188, i64 %9193
  %9195 = load double, ptr %9194, align 8, !tbaa !11
  %9196 = call double @llvm.fmuladd.f64(double 0xBC88000000000000, double %9195, double %9187)
  %9197 = load ptr, ptr %7, align 8, !tbaa !9
  %9198 = load i32, ptr %12, align 4, !tbaa !5
  %9199 = load i32, ptr %8, align 4, !tbaa !5
  %9200 = mul nsw i32 26, %9199
  %9201 = add nsw i32 %9198, %9200
  %9202 = sext i32 %9201 to i64
  %9203 = getelementptr inbounds double, ptr %9197, i64 %9202
  %9204 = load double, ptr %9203, align 8, !tbaa !11
  %9205 = call double @llvm.fmuladd.f64(double 0x3C95000000000000, double %9204, double %9196)
  %9206 = load ptr, ptr %7, align 8, !tbaa !9
  %9207 = load i32, ptr %12, align 4, !tbaa !5
  %9208 = load i32, ptr %8, align 4, !tbaa !5
  %9209 = mul nsw i32 27, %9208
  %9210 = add nsw i32 %9207, %9209
  %9211 = sext i32 %9210 to i64
  %9212 = getelementptr inbounds double, ptr %9206, i64 %9211
  %9213 = load double, ptr %9212, align 8, !tbaa !11
  %9214 = call double @llvm.fmuladd.f64(double 0xBCA0800000000001, double %9213, double %9205)
  %9215 = load ptr, ptr %7, align 8, !tbaa !9
  %9216 = load i32, ptr %12, align 4, !tbaa !5
  %9217 = load i32, ptr %8, align 4, !tbaa !5
  %9218 = mul nsw i32 28, %9217
  %9219 = add nsw i32 %9216, %9218
  %9220 = sext i32 %9219 to i64
  %9221 = getelementptr inbounds double, ptr %9215, i64 %9220
  %9222 = load double, ptr %9221, align 8, !tbaa !11
  %9223 = call double @llvm.fmuladd.f64(double 0x3C98000000000000, double %9222, double %9214)
  %9224 = load ptr, ptr %7, align 8, !tbaa !9
  %9225 = load i32, ptr %12, align 4, !tbaa !5
  %9226 = load i32, ptr %8, align 4, !tbaa !5
  %9227 = mul nsw i32 30, %9226
  %9228 = add nsw i32 %9225, %9227
  %9229 = sext i32 %9228 to i64
  %9230 = getelementptr inbounds double, ptr %9224, i64 %9229
  %9231 = load double, ptr %9230, align 8, !tbaa !11
  %9232 = call double @llvm.fmuladd.f64(double 0xBCA7000000000002, double %9231, double %9223)
  %9233 = load ptr, ptr %7, align 8, !tbaa !9
  %9234 = load i32, ptr %12, align 4, !tbaa !5
  %9235 = load i32, ptr %8, align 4, !tbaa !5
  %9236 = mul nsw i32 31, %9235
  %9237 = add nsw i32 %9234, %9236
  %9238 = sext i32 %9237 to i64
  %9239 = getelementptr inbounds double, ptr %9233, i64 %9238
  %9240 = load double, ptr %9239, align 8, !tbaa !11
  %9241 = call double @llvm.fmuladd.f64(double 0xBC8C000000000000, double %9240, double %9232)
  %9242 = load ptr, ptr %7, align 8, !tbaa !9
  %9243 = load i32, ptr %12, align 4, !tbaa !5
  %9244 = load i32, ptr %8, align 4, !tbaa !5
  %9245 = mul nsw i32 32, %9244
  %9246 = add nsw i32 %9243, %9245
  %9247 = sext i32 %9246 to i64
  %9248 = getelementptr inbounds double, ptr %9242, i64 %9247
  %9249 = load double, ptr %9248, align 8, !tbaa !11
  %9250 = call double @llvm.fmuladd.f64(double 0x3C94800000000000, double %9249, double %9241)
  %9251 = load ptr, ptr %7, align 8, !tbaa !9
  %9252 = load i32, ptr %12, align 4, !tbaa !5
  %9253 = load i32, ptr %8, align 4, !tbaa !5
  %9254 = mul nsw i32 33, %9253
  %9255 = add nsw i32 %9252, %9254
  %9256 = sext i32 %9255 to i64
  %9257 = getelementptr inbounds double, ptr %9251, i64 %9256
  %9258 = load double, ptr %9257, align 8, !tbaa !11
  %9259 = call double @llvm.fmuladd.f64(double 0x3C99000000000000, double %9258, double %9250)
  %9260 = load ptr, ptr %7, align 8, !tbaa !9
  %9261 = load i32, ptr %12, align 4, !tbaa !5
  %9262 = load i32, ptr %8, align 4, !tbaa !5
  %9263 = mul nsw i32 34, %9262
  %9264 = add nsw i32 %9261, %9263
  %9265 = sext i32 %9264 to i64
  %9266 = getelementptr inbounds double, ptr %9260, i64 %9265
  %9267 = load double, ptr %9266, align 8, !tbaa !11
  %9268 = call double @llvm.fmuladd.f64(double 0xBC92000000000000, double %9267, double %9259)
  %9269 = load ptr, ptr %7, align 8, !tbaa !9
  %9270 = load i32, ptr %12, align 4, !tbaa !5
  %9271 = load i32, ptr %8, align 4, !tbaa !5
  %9272 = mul nsw i32 35, %9271
  %9273 = add nsw i32 %9270, %9272
  %9274 = sext i32 %9273 to i64
  %9275 = getelementptr inbounds double, ptr %9269, i64 %9274
  %9276 = load double, ptr %9275, align 8, !tbaa !11
  %9277 = call double @llvm.fmuladd.f64(double 0xBC8E000000000000, double %9276, double %9268)
  %9278 = load ptr, ptr %7, align 8, !tbaa !9
  %9279 = load i32, ptr %12, align 4, !tbaa !5
  %9280 = load i32, ptr %8, align 4, !tbaa !5
  %9281 = mul nsw i32 36, %9280
  %9282 = add nsw i32 %9279, %9281
  %9283 = sext i32 %9282 to i64
  %9284 = getelementptr inbounds double, ptr %9278, i64 %9283
  %9285 = load double, ptr %9284, align 8, !tbaa !11
  %9286 = call double @llvm.fmuladd.f64(double 0x3CA0000000000002, double %9285, double %9277)
  %9287 = load ptr, ptr %7, align 8, !tbaa !9
  %9288 = load i32, ptr %12, align 4, !tbaa !5
  %9289 = load i32, ptr %8, align 4, !tbaa !5
  %9290 = mul nsw i32 37, %9289
  %9291 = add nsw i32 %9288, %9290
  %9292 = sext i32 %9291 to i64
  %9293 = getelementptr inbounds double, ptr %9287, i64 %9292
  %9294 = load double, ptr %9293, align 8, !tbaa !11
  %9295 = call double @llvm.fmuladd.f64(double 0xBCA23FFFFFFFFFFF, double %9294, double %9286)
  %9296 = load ptr, ptr %7, align 8, !tbaa !9
  %9297 = load i32, ptr %12, align 4, !tbaa !5
  %9298 = load i32, ptr %8, align 4, !tbaa !5
  %9299 = mul nsw i32 39, %9298
  %9300 = add nsw i32 %9297, %9299
  %9301 = sext i32 %9300 to i64
  %9302 = getelementptr inbounds double, ptr %9296, i64 %9301
  %9303 = load double, ptr %9302, align 8, !tbaa !11
  %9304 = call double @llvm.fmuladd.f64(double 0xBC84000000000000, double %9303, double %9295)
  store double %9304, ptr %11, align 8, !tbaa !11
  %9305 = load double, ptr %11, align 8, !tbaa !11
  %9306 = load ptr, ptr %9, align 8, !tbaa !9
  %9307 = load i32, ptr %12, align 4, !tbaa !5
  %9308 = load i32, ptr %10, align 4, !tbaa !5
  %9309 = mul nsw i32 25, %9308
  %9310 = add nsw i32 %9307, %9309
  %9311 = sext i32 %9310 to i64
  %9312 = getelementptr inbounds double, ptr %9306, i64 %9311
  %9313 = load double, ptr %9312, align 8, !tbaa !11
  %9314 = fadd double %9313, %9305
  store double %9314, ptr %9312, align 8, !tbaa !11
  %9315 = load ptr, ptr %7, align 8, !tbaa !9
  %9316 = load i32, ptr %12, align 4, !tbaa !5
  %9317 = load i32, ptr %8, align 4, !tbaa !5
  %9318 = mul nsw i32 0, %9317
  %9319 = add nsw i32 %9316, %9318
  %9320 = sext i32 %9319 to i64
  %9321 = getelementptr inbounds double, ptr %9315, i64 %9320
  %9322 = load double, ptr %9321, align 8, !tbaa !11
  %9323 = load ptr, ptr %7, align 8, !tbaa !9
  %9324 = load i32, ptr %12, align 4, !tbaa !5
  %9325 = load i32, ptr %8, align 4, !tbaa !5
  %9326 = mul nsw i32 1, %9325
  %9327 = add nsw i32 %9324, %9326
  %9328 = sext i32 %9327 to i64
  %9329 = getelementptr inbounds double, ptr %9323, i64 %9328
  %9330 = load double, ptr %9329, align 8, !tbaa !11
  %9331 = fmul double 0xBC92000000000000, %9330
  %9332 = call double @llvm.fmuladd.f64(double 0x3CC1400000000000, double %9322, double %9331)
  %9333 = load ptr, ptr %7, align 8, !tbaa !9
  %9334 = load i32, ptr %12, align 4, !tbaa !5
  %9335 = load i32, ptr %8, align 4, !tbaa !5
  %9336 = mul nsw i32 2, %9335
  %9337 = add nsw i32 %9334, %9336
  %9338 = sext i32 %9337 to i64
  %9339 = getelementptr inbounds double, ptr %9333, i64 %9338
  %9340 = load double, ptr %9339, align 8, !tbaa !11
  %9341 = call double @llvm.fmuladd.f64(double 0xBCAAA00000000002, double %9340, double %9332)
  %9342 = load ptr, ptr %7, align 8, !tbaa !9
  %9343 = load i32, ptr %12, align 4, !tbaa !5
  %9344 = load i32, ptr %8, align 4, !tbaa !5
  %9345 = mul nsw i32 3, %9344
  %9346 = add nsw i32 %9343, %9345
  %9347 = sext i32 %9346 to i64
  %9348 = getelementptr inbounds double, ptr %9342, i64 %9347
  %9349 = load double, ptr %9348, align 8, !tbaa !11
  %9350 = call double @llvm.fmuladd.f64(double 0x3C9EBFFFFFFFFFFD, double %9349, double %9341)
  %9351 = load ptr, ptr %7, align 8, !tbaa !9
  %9352 = load i32, ptr %12, align 4, !tbaa !5
  %9353 = load i32, ptr %8, align 4, !tbaa !5
  %9354 = mul nsw i32 4, %9353
  %9355 = add nsw i32 %9352, %9354
  %9356 = sext i32 %9355 to i64
  %9357 = getelementptr inbounds double, ptr %9351, i64 %9356
  %9358 = load double, ptr %9357, align 8, !tbaa !11
  %9359 = call double @llvm.fmuladd.f64(double 0x3C88000000000000, double %9358, double %9350)
  %9360 = load ptr, ptr %7, align 8, !tbaa !9
  %9361 = load i32, ptr %12, align 4, !tbaa !5
  %9362 = load i32, ptr %8, align 4, !tbaa !5
  %9363 = mul nsw i32 5, %9362
  %9364 = add nsw i32 %9361, %9363
  %9365 = sext i32 %9364 to i64
  %9366 = getelementptr inbounds double, ptr %9360, i64 %9365
  %9367 = load double, ptr %9366, align 8, !tbaa !11
  %9368 = call double @llvm.fmuladd.f64(double 0xBCAC000000000000, double %9367, double %9359)
  %9369 = load ptr, ptr %7, align 8, !tbaa !9
  %9370 = load i32, ptr %12, align 4, !tbaa !5
  %9371 = load i32, ptr %8, align 4, !tbaa !5
  %9372 = mul nsw i32 6, %9371
  %9373 = add nsw i32 %9370, %9372
  %9374 = sext i32 %9373 to i64
  %9375 = getelementptr inbounds double, ptr %9369, i64 %9374
  %9376 = load double, ptr %9375, align 8, !tbaa !11
  %9377 = call double @llvm.fmuladd.f64(double 0xBCB3200000000000, double %9376, double %9368)
  %9378 = load ptr, ptr %7, align 8, !tbaa !9
  %9379 = load i32, ptr %12, align 4, !tbaa !5
  %9380 = load i32, ptr %8, align 4, !tbaa !5
  %9381 = mul nsw i32 7, %9380
  %9382 = add nsw i32 %9379, %9381
  %9383 = sext i32 %9382 to i64
  %9384 = getelementptr inbounds double, ptr %9378, i64 %9383
  %9385 = load double, ptr %9384, align 8, !tbaa !11
  %9386 = call double @llvm.fmuladd.f64(double 0xBC74000000000000, double %9385, double %9377)
  %9387 = load ptr, ptr %7, align 8, !tbaa !9
  %9388 = load i32, ptr %12, align 4, !tbaa !5
  %9389 = load i32, ptr %8, align 4, !tbaa !5
  %9390 = mul nsw i32 8, %9389
  %9391 = add nsw i32 %9388, %9390
  %9392 = sext i32 %9391 to i64
  %9393 = getelementptr inbounds double, ptr %9387, i64 %9392
  %9394 = load double, ptr %9393, align 8, !tbaa !11
  %9395 = call double @llvm.fmuladd.f64(double 0x3C8C000000000000, double %9394, double %9386)
  %9396 = load ptr, ptr %7, align 8, !tbaa !9
  %9397 = load i32, ptr %12, align 4, !tbaa !5
  %9398 = load i32, ptr %8, align 4, !tbaa !5
  %9399 = mul nsw i32 9, %9398
  %9400 = add nsw i32 %9397, %9399
  %9401 = sext i32 %9400 to i64
  %9402 = getelementptr inbounds double, ptr %9396, i64 %9401
  %9403 = load double, ptr %9402, align 8, !tbaa !11
  %9404 = call double @llvm.fmuladd.f64(double 0xBC98000000000000, double %9403, double %9395)
  %9405 = load ptr, ptr %7, align 8, !tbaa !9
  %9406 = load i32, ptr %12, align 4, !tbaa !5
  %9407 = load i32, ptr %8, align 4, !tbaa !5
  %9408 = mul nsw i32 10, %9407
  %9409 = add nsw i32 %9406, %9408
  %9410 = sext i32 %9409 to i64
  %9411 = getelementptr inbounds double, ptr %9405, i64 %9410
  %9412 = load double, ptr %9411, align 8, !tbaa !11
  %9413 = call double @llvm.fmuladd.f64(double 0xBFE333710B32A29B, double %9412, double %9404)
  %9414 = load ptr, ptr %7, align 8, !tbaa !9
  %9415 = load i32, ptr %12, align 4, !tbaa !5
  %9416 = load i32, ptr %8, align 4, !tbaa !5
  %9417 = mul nsw i32 11, %9416
  %9418 = add nsw i32 %9415, %9417
  %9419 = sext i32 %9418 to i64
  %9420 = getelementptr inbounds double, ptr %9414, i64 %9419
  %9421 = load double, ptr %9420, align 8, !tbaa !11
  %9422 = call double @llvm.fmuladd.f64(double 0xBFBEED13A9F0D8FA, double %9421, double %9413)
  %9423 = load ptr, ptr %7, align 8, !tbaa !9
  %9424 = load i32, ptr %12, align 4, !tbaa !5
  %9425 = load i32, ptr %8, align 4, !tbaa !5
  %9426 = mul nsw i32 12, %9425
  %9427 = add nsw i32 %9424, %9426
  %9428 = sext i32 %9427 to i64
  %9429 = getelementptr inbounds double, ptr %9423, i64 %9428
  %9430 = load double, ptr %9429, align 8, !tbaa !11
  %9431 = call double @llvm.fmuladd.f64(double 0x3FA87D764354851E, double %9430, double %9422)
  %9432 = load ptr, ptr %7, align 8, !tbaa !9
  %9433 = load i32, ptr %12, align 4, !tbaa !5
  %9434 = load i32, ptr %8, align 4, !tbaa !5
  %9435 = mul nsw i32 13, %9434
  %9436 = add nsw i32 %9433, %9435
  %9437 = sext i32 %9436 to i64
  %9438 = getelementptr inbounds double, ptr %9432, i64 %9437
  %9439 = load double, ptr %9438, align 8, !tbaa !11
  %9440 = call double @llvm.fmuladd.f64(double 0xBFA352D4DB969BFC, double %9439, double %9431)
  %9441 = load ptr, ptr %7, align 8, !tbaa !9
  %9442 = load i32, ptr %12, align 4, !tbaa !5
  %9443 = load i32, ptr %8, align 4, !tbaa !5
  %9444 = mul nsw i32 14, %9443
  %9445 = add nsw i32 %9442, %9444
  %9446 = sext i32 %9445 to i64
  %9447 = getelementptr inbounds double, ptr %9441, i64 %9446
  %9448 = load double, ptr %9447, align 8, !tbaa !11
  %9449 = call double @llvm.fmuladd.f64(double 0xBFD41C0D131D428E, double %9448, double %9440)
  %9450 = load ptr, ptr %7, align 8, !tbaa !9
  %9451 = load i32, ptr %12, align 4, !tbaa !5
  %9452 = load i32, ptr %8, align 4, !tbaa !5
  %9453 = mul nsw i32 15, %9452
  %9454 = add nsw i32 %9451, %9453
  %9455 = sext i32 %9454 to i64
  %9456 = getelementptr inbounds double, ptr %9450, i64 %9455
  %9457 = load double, ptr %9456, align 8, !tbaa !11
  %9458 = call double @llvm.fmuladd.f64(double 0x3F9854E0ADA34B53, double %9457, double %9449)
  %9459 = load ptr, ptr %7, align 8, !tbaa !9
  %9460 = load i32, ptr %12, align 4, !tbaa !5
  %9461 = load i32, ptr %8, align 4, !tbaa !5
  %9462 = mul nsw i32 16, %9461
  %9463 = add nsw i32 %9460, %9462
  %9464 = sext i32 %9463 to i64
  %9465 = getelementptr inbounds double, ptr %9459, i64 %9464
  %9466 = load double, ptr %9465, align 8, !tbaa !11
  %9467 = call double @llvm.fmuladd.f64(double 0x3FC36A9134CD3C4D, double %9466, double %9458)
  %9468 = load ptr, ptr %7, align 8, !tbaa !9
  %9469 = load i32, ptr %12, align 4, !tbaa !5
  %9470 = load i32, ptr %8, align 4, !tbaa !5
  %9471 = mul nsw i32 17, %9470
  %9472 = add nsw i32 %9469, %9471
  %9473 = sext i32 %9472 to i64
  %9474 = getelementptr inbounds double, ptr %9468, i64 %9473
  %9475 = load double, ptr %9474, align 8, !tbaa !11
  %9476 = call double @llvm.fmuladd.f64(double 0x3FF670C5F1F4C92E, double %9475, double %9467)
  %9477 = load ptr, ptr %7, align 8, !tbaa !9
  %9478 = load i32, ptr %12, align 4, !tbaa !5
  %9479 = load i32, ptr %8, align 4, !tbaa !5
  %9480 = mul nsw i32 18, %9479
  %9481 = add nsw i32 %9478, %9480
  %9482 = sext i32 %9481 to i64
  %9483 = getelementptr inbounds double, ptr %9477, i64 %9482
  %9484 = load double, ptr %9483, align 8, !tbaa !11
  %9485 = call double @llvm.fmuladd.f64(double 0x3FC27B05E24EC5F8, double %9484, double %9476)
  %9486 = load ptr, ptr %7, align 8, !tbaa !9
  %9487 = load i32, ptr %12, align 4, !tbaa !5
  %9488 = load i32, ptr %8, align 4, !tbaa !5
  %9489 = mul nsw i32 19, %9488
  %9490 = add nsw i32 %9487, %9489
  %9491 = sext i32 %9490 to i64
  %9492 = getelementptr inbounds double, ptr %9486, i64 %9491
  %9493 = load double, ptr %9492, align 8, !tbaa !11
  %9494 = call double @llvm.fmuladd.f64(double 0x3FD35DAE88CBA64A, double %9493, double %9485)
  %9495 = load ptr, ptr %7, align 8, !tbaa !9
  %9496 = load i32, ptr %12, align 4, !tbaa !5
  %9497 = load i32, ptr %8, align 4, !tbaa !5
  %9498 = mul nsw i32 20, %9497
  %9499 = add nsw i32 %9496, %9498
  %9500 = sext i32 %9499 to i64
  %9501 = getelementptr inbounds double, ptr %9495, i64 %9500
  %9502 = load double, ptr %9501, align 8, !tbaa !11
  %9503 = call double @llvm.fmuladd.f64(double 0xBCB3FFFFFFFFFFFF, double %9502, double %9494)
  %9504 = load ptr, ptr %7, align 8, !tbaa !9
  %9505 = load i32, ptr %12, align 4, !tbaa !5
  %9506 = load i32, ptr %8, align 4, !tbaa !5
  %9507 = mul nsw i32 22, %9506
  %9508 = add nsw i32 %9505, %9507
  %9509 = sext i32 %9508 to i64
  %9510 = getelementptr inbounds double, ptr %9504, i64 %9509
  %9511 = load double, ptr %9510, align 8, !tbaa !11
  %9512 = call double @llvm.fmuladd.f64(double 0xBCB3C00000000000, double %9511, double %9503)
  %9513 = load ptr, ptr %7, align 8, !tbaa !9
  %9514 = load i32, ptr %12, align 4, !tbaa !5
  %9515 = load i32, ptr %8, align 4, !tbaa !5
  %9516 = mul nsw i32 23, %9515
  %9517 = add nsw i32 %9514, %9516
  %9518 = sext i32 %9517 to i64
  %9519 = getelementptr inbounds double, ptr %9513, i64 %9518
  %9520 = load double, ptr %9519, align 8, !tbaa !11
  %9521 = call double @llvm.fmuladd.f64(double 0x3CAB800000000001, double %9520, double %9512)
  %9522 = load ptr, ptr %7, align 8, !tbaa !9
  %9523 = load i32, ptr %12, align 4, !tbaa !5
  %9524 = load i32, ptr %8, align 4, !tbaa !5
  %9525 = mul nsw i32 24, %9524
  %9526 = add nsw i32 %9523, %9525
  %9527 = sext i32 %9526 to i64
  %9528 = getelementptr inbounds double, ptr %9522, i64 %9527
  %9529 = load double, ptr %9528, align 8, !tbaa !11
  %9530 = call double @llvm.fmuladd.f64(double 0x3CA8000000000001, double %9529, double %9521)
  %9531 = load ptr, ptr %7, align 8, !tbaa !9
  %9532 = load i32, ptr %12, align 4, !tbaa !5
  %9533 = load i32, ptr %8, align 4, !tbaa !5
  %9534 = mul nsw i32 25, %9533
  %9535 = add nsw i32 %9532, %9534
  %9536 = sext i32 %9535 to i64
  %9537 = getelementptr inbounds double, ptr %9531, i64 %9536
  %9538 = load double, ptr %9537, align 8, !tbaa !11
  %9539 = call double @llvm.fmuladd.f64(double 0xBCA5FFFFFFFFFFFF, double %9538, double %9530)
  %9540 = load ptr, ptr %7, align 8, !tbaa !9
  %9541 = load i32, ptr %12, align 4, !tbaa !5
  %9542 = load i32, ptr %8, align 4, !tbaa !5
  %9543 = mul nsw i32 26, %9542
  %9544 = add nsw i32 %9541, %9543
  %9545 = sext i32 %9544 to i64
  %9546 = getelementptr inbounds double, ptr %9540, i64 %9545
  %9547 = load double, ptr %9546, align 8, !tbaa !11
  %9548 = call double @llvm.fmuladd.f64(double 0x3CA3800000000002, double %9547, double %9539)
  %9549 = load ptr, ptr %7, align 8, !tbaa !9
  %9550 = load i32, ptr %12, align 4, !tbaa !5
  %9551 = load i32, ptr %8, align 4, !tbaa !5
  %9552 = mul nsw i32 27, %9551
  %9553 = add nsw i32 %9550, %9552
  %9554 = sext i32 %9553 to i64
  %9555 = getelementptr inbounds double, ptr %9549, i64 %9554
  %9556 = load double, ptr %9555, align 8, !tbaa !11
  %9557 = call double @llvm.fmuladd.f64(double 0xBC8E000000000000, double %9556, double %9548)
  %9558 = load ptr, ptr %7, align 8, !tbaa !9
  %9559 = load i32, ptr %12, align 4, !tbaa !5
  %9560 = load i32, ptr %8, align 4, !tbaa !5
  %9561 = mul nsw i32 28, %9560
  %9562 = add nsw i32 %9559, %9561
  %9563 = sext i32 %9562 to i64
  %9564 = getelementptr inbounds double, ptr %9558, i64 %9563
  %9565 = load double, ptr %9564, align 8, !tbaa !11
  %9566 = call double @llvm.fmuladd.f64(double 0x3C88000000000000, double %9565, double %9557)
  %9567 = load ptr, ptr %7, align 8, !tbaa !9
  %9568 = load i32, ptr %12, align 4, !tbaa !5
  %9569 = load i32, ptr %8, align 4, !tbaa !5
  %9570 = mul nsw i32 29, %9569
  %9571 = add nsw i32 %9568, %9570
  %9572 = sext i32 %9571 to i64
  %9573 = getelementptr inbounds double, ptr %9567, i64 %9572
  %9574 = load double, ptr %9573, align 8, !tbaa !11
  %9575 = call double @llvm.fmuladd.f64(double 0xBC70000000000001, double %9574, double %9566)
  %9576 = load ptr, ptr %7, align 8, !tbaa !9
  %9577 = load i32, ptr %12, align 4, !tbaa !5
  %9578 = load i32, ptr %8, align 4, !tbaa !5
  %9579 = mul nsw i32 30, %9578
  %9580 = add nsw i32 %9577, %9579
  %9581 = sext i32 %9580 to i64
  %9582 = getelementptr inbounds double, ptr %9576, i64 %9581
  %9583 = load double, ptr %9582, align 8, !tbaa !11
  %9584 = call double @llvm.fmuladd.f64(double 0x3CC0400000000000, double %9583, double %9575)
  %9585 = load ptr, ptr %7, align 8, !tbaa !9
  %9586 = load i32, ptr %12, align 4, !tbaa !5
  %9587 = load i32, ptr %8, align 4, !tbaa !5
  %9588 = mul nsw i32 31, %9587
  %9589 = add nsw i32 %9586, %9588
  %9590 = sext i32 %9589 to i64
  %9591 = getelementptr inbounds double, ptr %9585, i64 %9590
  %9592 = load double, ptr %9591, align 8, !tbaa !11
  %9593 = call double @llvm.fmuladd.f64(double 0xBCB27FFFFFFFFFFF, double %9592, double %9584)
  %9594 = load ptr, ptr %7, align 8, !tbaa !9
  %9595 = load i32, ptr %12, align 4, !tbaa !5
  %9596 = load i32, ptr %8, align 4, !tbaa !5
  %9597 = mul nsw i32 32, %9596
  %9598 = add nsw i32 %9595, %9597
  %9599 = sext i32 %9598 to i64
  %9600 = getelementptr inbounds double, ptr %9594, i64 %9599
  %9601 = load double, ptr %9600, align 8, !tbaa !11
  %9602 = call double @llvm.fmuladd.f64(double 0xBCA7C00000000001, double %9601, double %9593)
  %9603 = load ptr, ptr %7, align 8, !tbaa !9
  %9604 = load i32, ptr %12, align 4, !tbaa !5
  %9605 = load i32, ptr %8, align 4, !tbaa !5
  %9606 = mul nsw i32 33, %9605
  %9607 = add nsw i32 %9604, %9606
  %9608 = sext i32 %9607 to i64
  %9609 = getelementptr inbounds double, ptr %9603, i64 %9608
  %9610 = load double, ptr %9609, align 8, !tbaa !11
  %9611 = call double @llvm.fmuladd.f64(double 0x3C94000000000000, double %9610, double %9602)
  %9612 = load ptr, ptr %7, align 8, !tbaa !9
  %9613 = load i32, ptr %12, align 4, !tbaa !5
  %9614 = load i32, ptr %8, align 4, !tbaa !5
  %9615 = mul nsw i32 34, %9614
  %9616 = add nsw i32 %9613, %9615
  %9617 = sext i32 %9616 to i64
  %9618 = getelementptr inbounds double, ptr %9612, i64 %9617
  %9619 = load double, ptr %9618, align 8, !tbaa !11
  %9620 = call double @llvm.fmuladd.f64(double 0xBC91000000000000, double %9619, double %9611)
  %9621 = load ptr, ptr %7, align 8, !tbaa !9
  %9622 = load i32, ptr %12, align 4, !tbaa !5
  %9623 = load i32, ptr %8, align 4, !tbaa !5
  %9624 = mul nsw i32 35, %9623
  %9625 = add nsw i32 %9622, %9624
  %9626 = sext i32 %9625 to i64
  %9627 = getelementptr inbounds double, ptr %9621, i64 %9626
  %9628 = load double, ptr %9627, align 8, !tbaa !11
  %9629 = call double @llvm.fmuladd.f64(double 0xBC88000000000000, double %9628, double %9620)
  %9630 = load ptr, ptr %7, align 8, !tbaa !9
  %9631 = load i32, ptr %12, align 4, !tbaa !5
  %9632 = load i32, ptr %8, align 4, !tbaa !5
  %9633 = mul nsw i32 36, %9632
  %9634 = add nsw i32 %9631, %9633
  %9635 = sext i32 %9634 to i64
  %9636 = getelementptr inbounds double, ptr %9630, i64 %9635
  %9637 = load double, ptr %9636, align 8, !tbaa !11
  %9638 = call double @llvm.fmuladd.f64(double 0x3CA9FFFFFFFFFFFE, double %9637, double %9629)
  %9639 = load ptr, ptr %7, align 8, !tbaa !9
  %9640 = load i32, ptr %12, align 4, !tbaa !5
  %9641 = load i32, ptr %8, align 4, !tbaa !5
  %9642 = mul nsw i32 37, %9641
  %9643 = add nsw i32 %9640, %9642
  %9644 = sext i32 %9643 to i64
  %9645 = getelementptr inbounds double, ptr %9639, i64 %9644
  %9646 = load double, ptr %9645, align 8, !tbaa !11
  %9647 = call double @llvm.fmuladd.f64(double 0xBC8B000000000000, double %9646, double %9638)
  %9648 = load ptr, ptr %7, align 8, !tbaa !9
  %9649 = load i32, ptr %12, align 4, !tbaa !5
  %9650 = load i32, ptr %8, align 4, !tbaa !5
  %9651 = mul nsw i32 38, %9650
  %9652 = add nsw i32 %9649, %9651
  %9653 = sext i32 %9652 to i64
  %9654 = getelementptr inbounds double, ptr %9648, i64 %9653
  %9655 = load double, ptr %9654, align 8, !tbaa !11
  %9656 = call double @llvm.fmuladd.f64(double 0xBC94000000000000, double %9655, double %9647)
  %9657 = load ptr, ptr %7, align 8, !tbaa !9
  %9658 = load i32, ptr %12, align 4, !tbaa !5
  %9659 = load i32, ptr %8, align 4, !tbaa !5
  %9660 = mul nsw i32 39, %9659
  %9661 = add nsw i32 %9658, %9660
  %9662 = sext i32 %9661 to i64
  %9663 = getelementptr inbounds double, ptr %9657, i64 %9662
  %9664 = load double, ptr %9663, align 8, !tbaa !11
  %9665 = call double @llvm.fmuladd.f64(double 0xBC92000000000000, double %9664, double %9656)
  store double %9665, ptr %11, align 8, !tbaa !11
  %9666 = load double, ptr %11, align 8, !tbaa !11
  %9667 = load ptr, ptr %9, align 8, !tbaa !9
  %9668 = load i32, ptr %12, align 4, !tbaa !5
  %9669 = load i32, ptr %10, align 4, !tbaa !5
  %9670 = mul nsw i32 26, %9669
  %9671 = add nsw i32 %9668, %9670
  %9672 = sext i32 %9671 to i64
  %9673 = getelementptr inbounds double, ptr %9667, i64 %9672
  %9674 = load double, ptr %9673, align 8, !tbaa !11
  %9675 = fadd double %9674, %9666
  store double %9675, ptr %9673, align 8, !tbaa !11
  %9676 = load ptr, ptr %7, align 8, !tbaa !9
  %9677 = load i32, ptr %12, align 4, !tbaa !5
  %9678 = load i32, ptr %8, align 4, !tbaa !5
  %9679 = mul nsw i32 0, %9678
  %9680 = add nsw i32 %9677, %9679
  %9681 = sext i32 %9680 to i64
  %9682 = getelementptr inbounds double, ptr %9676, i64 %9681
  %9683 = load double, ptr %9682, align 8, !tbaa !11
  %9684 = load ptr, ptr %7, align 8, !tbaa !9
  %9685 = load i32, ptr %12, align 4, !tbaa !5
  %9686 = load i32, ptr %8, align 4, !tbaa !5
  %9687 = mul nsw i32 1, %9686
  %9688 = add nsw i32 %9685, %9687
  %9689 = sext i32 %9688 to i64
  %9690 = getelementptr inbounds double, ptr %9684, i64 %9689
  %9691 = load double, ptr %9690, align 8, !tbaa !11
  %9692 = fmul double 0xBCA8000000000001, %9691
  %9693 = call double @llvm.fmuladd.f64(double 0xBCC3C00000000000, double %9683, double %9692)
  %9694 = load ptr, ptr %7, align 8, !tbaa !9
  %9695 = load i32, ptr %12, align 4, !tbaa !5
  %9696 = load i32, ptr %8, align 4, !tbaa !5
  %9697 = mul nsw i32 2, %9696
  %9698 = add nsw i32 %9695, %9697
  %9699 = sext i32 %9698 to i64
  %9700 = getelementptr inbounds double, ptr %9694, i64 %9699
  %9701 = load double, ptr %9700, align 8, !tbaa !11
  %9702 = call double @llvm.fmuladd.f64(double 0x3CB7D00000000001, double %9701, double %9693)
  %9703 = load ptr, ptr %7, align 8, !tbaa !9
  %9704 = load i32, ptr %12, align 4, !tbaa !5
  %9705 = load i32, ptr %8, align 4, !tbaa !5
  %9706 = mul nsw i32 3, %9705
  %9707 = add nsw i32 %9704, %9706
  %9708 = sext i32 %9707 to i64
  %9709 = getelementptr inbounds double, ptr %9703, i64 %9708
  %9710 = load double, ptr %9709, align 8, !tbaa !11
  %9711 = call double @llvm.fmuladd.f64(double 0xBC8B800000000001, double %9710, double %9702)
  %9712 = load ptr, ptr %7, align 8, !tbaa !9
  %9713 = load i32, ptr %12, align 4, !tbaa !5
  %9714 = load i32, ptr %8, align 4, !tbaa !5
  %9715 = mul nsw i32 4, %9714
  %9716 = add nsw i32 %9713, %9715
  %9717 = sext i32 %9716 to i64
  %9718 = getelementptr inbounds double, ptr %9712, i64 %9717
  %9719 = load double, ptr %9718, align 8, !tbaa !11
  %9720 = call double @llvm.fmuladd.f64(double 0x3CB8800000000000, double %9719, double %9711)
  %9721 = load ptr, ptr %7, align 8, !tbaa !9
  %9722 = load i32, ptr %12, align 4, !tbaa !5
  %9723 = load i32, ptr %8, align 4, !tbaa !5
  %9724 = mul nsw i32 5, %9723
  %9725 = add nsw i32 %9722, %9724
  %9726 = sext i32 %9725 to i64
  %9727 = getelementptr inbounds double, ptr %9721, i64 %9726
  %9728 = load double, ptr %9727, align 8, !tbaa !11
  %9729 = call double @llvm.fmuladd.f64(double 0xBC88000000000000, double %9728, double %9720)
  %9730 = load ptr, ptr %7, align 8, !tbaa !9
  %9731 = load i32, ptr %12, align 4, !tbaa !5
  %9732 = load i32, ptr %8, align 4, !tbaa !5
  %9733 = mul nsw i32 6, %9732
  %9734 = add nsw i32 %9731, %9733
  %9735 = sext i32 %9734 to i64
  %9736 = getelementptr inbounds double, ptr %9730, i64 %9735
  %9737 = load double, ptr %9736, align 8, !tbaa !11
  %9738 = call double @llvm.fmuladd.f64(double 0xBC94800000000000, double %9737, double %9729)
  %9739 = load ptr, ptr %7, align 8, !tbaa !9
  %9740 = load i32, ptr %12, align 4, !tbaa !5
  %9741 = load i32, ptr %8, align 4, !tbaa !5
  %9742 = mul nsw i32 7, %9741
  %9743 = add nsw i32 %9740, %9742
  %9744 = sext i32 %9743 to i64
  %9745 = getelementptr inbounds double, ptr %9739, i64 %9744
  %9746 = load double, ptr %9745, align 8, !tbaa !11
  %9747 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %9746, double %9738)
  %9748 = load ptr, ptr %7, align 8, !tbaa !9
  %9749 = load i32, ptr %12, align 4, !tbaa !5
  %9750 = load i32, ptr %8, align 4, !tbaa !5
  %9751 = mul nsw i32 8, %9750
  %9752 = add nsw i32 %9749, %9751
  %9753 = sext i32 %9752 to i64
  %9754 = getelementptr inbounds double, ptr %9748, i64 %9753
  %9755 = load double, ptr %9754, align 8, !tbaa !11
  %9756 = call double @llvm.fmuladd.f64(double 0x3C7FFFFFFFFFFFFF, double %9755, double %9747)
  %9757 = load ptr, ptr %7, align 8, !tbaa !9
  %9758 = load i32, ptr %12, align 4, !tbaa !5
  %9759 = load i32, ptr %8, align 4, !tbaa !5
  %9760 = mul nsw i32 9, %9759
  %9761 = add nsw i32 %9758, %9760
  %9762 = sext i32 %9761 to i64
  %9763 = getelementptr inbounds double, ptr %9757, i64 %9762
  %9764 = load double, ptr %9763, align 8, !tbaa !11
  %9765 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %9764, double %9756)
  %9766 = load ptr, ptr %7, align 8, !tbaa !9
  %9767 = load i32, ptr %12, align 4, !tbaa !5
  %9768 = load i32, ptr %8, align 4, !tbaa !5
  %9769 = mul nsw i32 10, %9768
  %9770 = add nsw i32 %9767, %9769
  %9771 = sext i32 %9770 to i64
  %9772 = getelementptr inbounds double, ptr %9766, i64 %9771
  %9773 = load double, ptr %9772, align 8, !tbaa !11
  %9774 = call double @llvm.fmuladd.f64(double 0xBF83152016E0EAD0, double %9773, double %9765)
  %9775 = load ptr, ptr %7, align 8, !tbaa !9
  %9776 = load i32, ptr %12, align 4, !tbaa !5
  %9777 = load i32, ptr %8, align 4, !tbaa !5
  %9778 = mul nsw i32 11, %9777
  %9779 = add nsw i32 %9776, %9778
  %9780 = sext i32 %9779 to i64
  %9781 = getelementptr inbounds double, ptr %9775, i64 %9780
  %9782 = load double, ptr %9781, align 8, !tbaa !11
  %9783 = call double @llvm.fmuladd.f64(double 0xBFB5B58B4F03B192, double %9782, double %9774)
  %9784 = load ptr, ptr %7, align 8, !tbaa !9
  %9785 = load i32, ptr %12, align 4, !tbaa !5
  %9786 = load i32, ptr %8, align 4, !tbaa !5
  %9787 = mul nsw i32 12, %9786
  %9788 = add nsw i32 %9785, %9787
  %9789 = sext i32 %9788 to i64
  %9790 = getelementptr inbounds double, ptr %9784, i64 %9789
  %9791 = load double, ptr %9790, align 8, !tbaa !11
  %9792 = call double @llvm.fmuladd.f64(double 0x3FF4EC1BB3FDC61B, double %9791, double %9783)
  %9793 = load ptr, ptr %7, align 8, !tbaa !9
  %9794 = load i32, ptr %12, align 4, !tbaa !5
  %9795 = load i32, ptr %8, align 4, !tbaa !5
  %9796 = mul nsw i32 13, %9795
  %9797 = add nsw i32 %9794, %9796
  %9798 = sext i32 %9797 to i64
  %9799 = getelementptr inbounds double, ptr %9793, i64 %9798
  %9800 = load double, ptr %9799, align 8, !tbaa !11
  %9801 = call double @llvm.fmuladd.f64(double 0x3F938CE4890DB29A, double %9800, double %9792)
  %9802 = load ptr, ptr %7, align 8, !tbaa !9
  %9803 = load i32, ptr %12, align 4, !tbaa !5
  %9804 = load i32, ptr %8, align 4, !tbaa !5
  %9805 = mul nsw i32 14, %9804
  %9806 = add nsw i32 %9803, %9805
  %9807 = sext i32 %9806 to i64
  %9808 = getelementptr inbounds double, ptr %9802, i64 %9807
  %9809 = load double, ptr %9808, align 8, !tbaa !11
  %9810 = call double @llvm.fmuladd.f64(double 0xBFE5679E70A6065C, double %9809, double %9801)
  %9811 = load ptr, ptr %7, align 8, !tbaa !9
  %9812 = load i32, ptr %12, align 4, !tbaa !5
  %9813 = load i32, ptr %8, align 4, !tbaa !5
  %9814 = mul nsw i32 15, %9813
  %9815 = add nsw i32 %9812, %9814
  %9816 = sext i32 %9815 to i64
  %9817 = getelementptr inbounds double, ptr %9811, i64 %9816
  %9818 = load double, ptr %9817, align 8, !tbaa !11
  %9819 = call double @llvm.fmuladd.f64(double 0x3F85E50BB681A3CA, double %9818, double %9810)
  %9820 = load ptr, ptr %7, align 8, !tbaa !9
  %9821 = load i32, ptr %12, align 4, !tbaa !5
  %9822 = load i32, ptr %8, align 4, !tbaa !5
  %9823 = mul nsw i32 16, %9822
  %9824 = add nsw i32 %9821, %9823
  %9825 = sext i32 %9824 to i64
  %9826 = getelementptr inbounds double, ptr %9820, i64 %9825
  %9827 = load double, ptr %9826, align 8, !tbaa !11
  %9828 = call double @llvm.fmuladd.f64(double 0xBFB49217631F5913, double %9827, double %9819)
  %9829 = load ptr, ptr %7, align 8, !tbaa !9
  %9830 = load i32, ptr %12, align 4, !tbaa !5
  %9831 = load i32, ptr %8, align 4, !tbaa !5
  %9832 = mul nsw i32 17, %9831
  %9833 = add nsw i32 %9830, %9832
  %9834 = sext i32 %9833 to i64
  %9835 = getelementptr inbounds double, ptr %9829, i64 %9834
  %9836 = load double, ptr %9835, align 8, !tbaa !11
  %9837 = call double @llvm.fmuladd.f64(double 0x3FCA50C41AB7A2F3, double %9836, double %9828)
  %9838 = load ptr, ptr %7, align 8, !tbaa !9
  %9839 = load i32, ptr %12, align 4, !tbaa !5
  %9840 = load i32, ptr %8, align 4, !tbaa !5
  %9841 = mul nsw i32 18, %9840
  %9842 = add nsw i32 %9839, %9841
  %9843 = sext i32 %9842 to i64
  %9844 = getelementptr inbounds double, ptr %9838, i64 %9843
  %9845 = load double, ptr %9844, align 8, !tbaa !11
  %9846 = call double @llvm.fmuladd.f64(double 0xBF8BDAF699AECF4E, double %9845, double %9837)
  %9847 = load ptr, ptr %7, align 8, !tbaa !9
  %9848 = load i32, ptr %12, align 4, !tbaa !5
  %9849 = load i32, ptr %8, align 4, !tbaa !5
  %9850 = mul nsw i32 19, %9849
  %9851 = add nsw i32 %9848, %9850
  %9852 = sext i32 %9851 to i64
  %9853 = getelementptr inbounds double, ptr %9847, i64 %9852
  %9854 = load double, ptr %9853, align 8, !tbaa !11
  %9855 = call double @llvm.fmuladd.f64(double 0x3FD417DEBFC17B11, double %9854, double %9846)
  %9856 = load ptr, ptr %7, align 8, !tbaa !9
  %9857 = load i32, ptr %12, align 4, !tbaa !5
  %9858 = load i32, ptr %8, align 4, !tbaa !5
  %9859 = mul nsw i32 20, %9858
  %9860 = add nsw i32 %9857, %9859
  %9861 = sext i32 %9860 to i64
  %9862 = getelementptr inbounds double, ptr %9856, i64 %9861
  %9863 = load double, ptr %9862, align 8, !tbaa !11
  %9864 = call double @llvm.fmuladd.f64(double 0xBCC2000000000000, double %9863, double %9855)
  %9865 = load ptr, ptr %7, align 8, !tbaa !9
  %9866 = load i32, ptr %12, align 4, !tbaa !5
  %9867 = load i32, ptr %8, align 4, !tbaa !5
  %9868 = mul nsw i32 21, %9867
  %9869 = add nsw i32 %9866, %9868
  %9870 = sext i32 %9869 to i64
  %9871 = getelementptr inbounds double, ptr %9865, i64 %9870
  %9872 = load double, ptr %9871, align 8, !tbaa !11
  %9873 = call double @llvm.fmuladd.f64(double 0xBC9C000000000000, double %9872, double %9864)
  %9874 = load ptr, ptr %7, align 8, !tbaa !9
  %9875 = load i32, ptr %12, align 4, !tbaa !5
  %9876 = load i32, ptr %8, align 4, !tbaa !5
  %9877 = mul nsw i32 22, %9876
  %9878 = add nsw i32 %9875, %9877
  %9879 = sext i32 %9878 to i64
  %9880 = getelementptr inbounds double, ptr %9874, i64 %9879
  %9881 = load double, ptr %9880, align 8, !tbaa !11
  %9882 = call double @llvm.fmuladd.f64(double 0xBCB7400000000000, double %9881, double %9873)
  %9883 = load ptr, ptr %7, align 8, !tbaa !9
  %9884 = load i32, ptr %12, align 4, !tbaa !5
  %9885 = load i32, ptr %8, align 4, !tbaa !5
  %9886 = mul nsw i32 23, %9885
  %9887 = add nsw i32 %9884, %9886
  %9888 = sext i32 %9887 to i64
  %9889 = getelementptr inbounds double, ptr %9883, i64 %9888
  %9890 = load double, ptr %9889, align 8, !tbaa !11
  %9891 = call double @llvm.fmuladd.f64(double 0x3CBC000000000000, double %9890, double %9882)
  %9892 = load ptr, ptr %7, align 8, !tbaa !9
  %9893 = load i32, ptr %12, align 4, !tbaa !5
  %9894 = load i32, ptr %8, align 4, !tbaa !5
  %9895 = mul nsw i32 24, %9894
  %9896 = add nsw i32 %9893, %9895
  %9897 = sext i32 %9896 to i64
  %9898 = getelementptr inbounds double, ptr %9892, i64 %9897
  %9899 = load double, ptr %9898, align 8, !tbaa !11
  %9900 = call double @llvm.fmuladd.f64(double 0x3CBF000000000001, double %9899, double %9891)
  %9901 = load ptr, ptr %7, align 8, !tbaa !9
  %9902 = load i32, ptr %12, align 4, !tbaa !5
  %9903 = load i32, ptr %8, align 4, !tbaa !5
  %9904 = mul nsw i32 25, %9903
  %9905 = add nsw i32 %9902, %9904
  %9906 = sext i32 %9905 to i64
  %9907 = getelementptr inbounds double, ptr %9901, i64 %9906
  %9908 = load double, ptr %9907, align 8, !tbaa !11
  %9909 = call double @llvm.fmuladd.f64(double 0xBCA5FFFFFFFFFFFF, double %9908, double %9900)
  %9910 = load ptr, ptr %7, align 8, !tbaa !9
  %9911 = load i32, ptr %12, align 4, !tbaa !5
  %9912 = load i32, ptr %8, align 4, !tbaa !5
  %9913 = mul nsw i32 26, %9912
  %9914 = add nsw i32 %9911, %9913
  %9915 = sext i32 %9914 to i64
  %9916 = getelementptr inbounds double, ptr %9910, i64 %9915
  %9917 = load double, ptr %9916, align 8, !tbaa !11
  %9918 = call double @llvm.fmuladd.f64(double 0x3C70000000000001, double %9917, double %9909)
  %9919 = load ptr, ptr %7, align 8, !tbaa !9
  %9920 = load i32, ptr %12, align 4, !tbaa !5
  %9921 = load i32, ptr %8, align 4, !tbaa !5
  %9922 = mul nsw i32 27, %9921
  %9923 = add nsw i32 %9920, %9922
  %9924 = sext i32 %9923 to i64
  %9925 = getelementptr inbounds double, ptr %9919, i64 %9924
  %9926 = load double, ptr %9925, align 8, !tbaa !11
  %9927 = call double @llvm.fmuladd.f64(double 0xBCBE7FFFFFFFFFFF, double %9926, double %9918)
  %9928 = load ptr, ptr %7, align 8, !tbaa !9
  %9929 = load i32, ptr %12, align 4, !tbaa !5
  %9930 = load i32, ptr %8, align 4, !tbaa !5
  %9931 = mul nsw i32 28, %9930
  %9932 = add nsw i32 %9929, %9931
  %9933 = sext i32 %9932 to i64
  %9934 = getelementptr inbounds double, ptr %9928, i64 %9933
  %9935 = load double, ptr %9934, align 8, !tbaa !11
  %9936 = call double @llvm.fmuladd.f64(double 0x3CA0000000000002, double %9935, double %9927)
  %9937 = load ptr, ptr %7, align 8, !tbaa !9
  %9938 = load i32, ptr %12, align 4, !tbaa !5
  %9939 = load i32, ptr %8, align 4, !tbaa !5
  %9940 = mul nsw i32 29, %9939
  %9941 = add nsw i32 %9938, %9940
  %9942 = sext i32 %9941 to i64
  %9943 = getelementptr inbounds double, ptr %9937, i64 %9942
  %9944 = load double, ptr %9943, align 8, !tbaa !11
  %9945 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %9944, double %9936)
  %9946 = load ptr, ptr %7, align 8, !tbaa !9
  %9947 = load i32, ptr %12, align 4, !tbaa !5
  %9948 = load i32, ptr %8, align 4, !tbaa !5
  %9949 = mul nsw i32 30, %9948
  %9950 = add nsw i32 %9947, %9949
  %9951 = sext i32 %9950 to i64
  %9952 = getelementptr inbounds double, ptr %9946, i64 %9951
  %9953 = load double, ptr %9952, align 8, !tbaa !11
  %9954 = call double @llvm.fmuladd.f64(double 0x3CBC800000000000, double %9953, double %9945)
  %9955 = load ptr, ptr %7, align 8, !tbaa !9
  %9956 = load i32, ptr %12, align 4, !tbaa !5
  %9957 = load i32, ptr %8, align 4, !tbaa !5
  %9958 = mul nsw i32 31, %9957
  %9959 = add nsw i32 %9956, %9958
  %9960 = sext i32 %9959 to i64
  %9961 = getelementptr inbounds double, ptr %9955, i64 %9960
  %9962 = load double, ptr %9961, align 8, !tbaa !11
  %9963 = call double @llvm.fmuladd.f64(double 0xBC9A000000000000, double %9962, double %9954)
  %9964 = load ptr, ptr %7, align 8, !tbaa !9
  %9965 = load i32, ptr %12, align 4, !tbaa !5
  %9966 = load i32, ptr %8, align 4, !tbaa !5
  %9967 = mul nsw i32 32, %9966
  %9968 = add nsw i32 %9965, %9967
  %9969 = sext i32 %9968 to i64
  %9970 = getelementptr inbounds double, ptr %9964, i64 %9969
  %9971 = load double, ptr %9970, align 8, !tbaa !11
  %9972 = call double @llvm.fmuladd.f64(double 0xBCA4400000000001, double %9971, double %9963)
  %9973 = load ptr, ptr %7, align 8, !tbaa !9
  %9974 = load i32, ptr %12, align 4, !tbaa !5
  %9975 = load i32, ptr %8, align 4, !tbaa !5
  %9976 = mul nsw i32 33, %9975
  %9977 = add nsw i32 %9974, %9976
  %9978 = sext i32 %9977 to i64
  %9979 = getelementptr inbounds double, ptr %9973, i64 %9978
  %9980 = load double, ptr %9979, align 8, !tbaa !11
  %9981 = call double @llvm.fmuladd.f64(double 0xBC78000000000002, double %9980, double %9972)
  %9982 = load ptr, ptr %7, align 8, !tbaa !9
  %9983 = load i32, ptr %12, align 4, !tbaa !5
  %9984 = load i32, ptr %8, align 4, !tbaa !5
  %9985 = mul nsw i32 34, %9984
  %9986 = add nsw i32 %9983, %9985
  %9987 = sext i32 %9986 to i64
  %9988 = getelementptr inbounds double, ptr %9982, i64 %9987
  %9989 = load double, ptr %9988, align 8, !tbaa !11
  %9990 = call double @llvm.fmuladd.f64(double 0xBC70000000000001, double %9989, double %9981)
  %9991 = load ptr, ptr %7, align 8, !tbaa !9
  %9992 = load i32, ptr %12, align 4, !tbaa !5
  %9993 = load i32, ptr %8, align 4, !tbaa !5
  %9994 = mul nsw i32 35, %9993
  %9995 = add nsw i32 %9992, %9994
  %9996 = sext i32 %9995 to i64
  %9997 = getelementptr inbounds double, ptr %9991, i64 %9996
  %9998 = load double, ptr %9997, align 8, !tbaa !11
  %9999 = call double @llvm.fmuladd.f64(double 0x3CA2000000000000, double %9998, double %9990)
  %10000 = load ptr, ptr %7, align 8, !tbaa !9
  %10001 = load i32, ptr %12, align 4, !tbaa !5
  %10002 = load i32, ptr %8, align 4, !tbaa !5
  %10003 = mul nsw i32 36, %10002
  %10004 = add nsw i32 %10001, %10003
  %10005 = sext i32 %10004 to i64
  %10006 = getelementptr inbounds double, ptr %10000, i64 %10005
  %10007 = load double, ptr %10006, align 8, !tbaa !11
  %10008 = call double @llvm.fmuladd.f64(double 0x3CA8000000000001, double %10007, double %9999)
  %10009 = load ptr, ptr %7, align 8, !tbaa !9
  %10010 = load i32, ptr %12, align 4, !tbaa !5
  %10011 = load i32, ptr %8, align 4, !tbaa !5
  %10012 = mul nsw i32 37, %10011
  %10013 = add nsw i32 %10010, %10012
  %10014 = sext i32 %10013 to i64
  %10015 = getelementptr inbounds double, ptr %10009, i64 %10014
  %10016 = load double, ptr %10015, align 8, !tbaa !11
  %10017 = call double @llvm.fmuladd.f64(double 0x3CA97FFFFFFFFFFF, double %10016, double %10008)
  %10018 = load ptr, ptr %7, align 8, !tbaa !9
  %10019 = load i32, ptr %12, align 4, !tbaa !5
  %10020 = load i32, ptr %8, align 4, !tbaa !5
  %10021 = mul nsw i32 38, %10020
  %10022 = add nsw i32 %10019, %10021
  %10023 = sext i32 %10022 to i64
  %10024 = getelementptr inbounds double, ptr %10018, i64 %10023
  %10025 = load double, ptr %10024, align 8, !tbaa !11
  %10026 = call double @llvm.fmuladd.f64(double 0xBCA2FFFFFFFFFFFE, double %10025, double %10017)
  %10027 = load ptr, ptr %7, align 8, !tbaa !9
  %10028 = load i32, ptr %12, align 4, !tbaa !5
  %10029 = load i32, ptr %8, align 4, !tbaa !5
  %10030 = mul nsw i32 39, %10029
  %10031 = add nsw i32 %10028, %10030
  %10032 = sext i32 %10031 to i64
  %10033 = getelementptr inbounds double, ptr %10027, i64 %10032
  %10034 = load double, ptr %10033, align 8, !tbaa !11
  %10035 = call double @llvm.fmuladd.f64(double 0xBC96000000000000, double %10034, double %10026)
  store double %10035, ptr %11, align 8, !tbaa !11
  %10036 = load double, ptr %11, align 8, !tbaa !11
  %10037 = load ptr, ptr %9, align 8, !tbaa !9
  %10038 = load i32, ptr %12, align 4, !tbaa !5
  %10039 = load i32, ptr %10, align 4, !tbaa !5
  %10040 = mul nsw i32 27, %10039
  %10041 = add nsw i32 %10038, %10040
  %10042 = sext i32 %10041 to i64
  %10043 = getelementptr inbounds double, ptr %10037, i64 %10042
  %10044 = load double, ptr %10043, align 8, !tbaa !11
  %10045 = fadd double %10044, %10036
  store double %10045, ptr %10043, align 8, !tbaa !11
  %10046 = load ptr, ptr %7, align 8, !tbaa !9
  %10047 = load i32, ptr %12, align 4, !tbaa !5
  %10048 = load i32, ptr %8, align 4, !tbaa !5
  %10049 = mul nsw i32 0, %10048
  %10050 = add nsw i32 %10047, %10049
  %10051 = sext i32 %10050 to i64
  %10052 = getelementptr inbounds double, ptr %10046, i64 %10051
  %10053 = load double, ptr %10052, align 8, !tbaa !11
  %10054 = load ptr, ptr %7, align 8, !tbaa !9
  %10055 = load i32, ptr %12, align 4, !tbaa !5
  %10056 = load i32, ptr %8, align 4, !tbaa !5
  %10057 = mul nsw i32 1, %10056
  %10058 = add nsw i32 %10055, %10057
  %10059 = sext i32 %10058 to i64
  %10060 = getelementptr inbounds double, ptr %10054, i64 %10059
  %10061 = load double, ptr %10060, align 8, !tbaa !11
  %10062 = fmul double 0x3C88000000000000, %10061
  %10063 = call double @llvm.fmuladd.f64(double 0xBCB4800000000001, double %10053, double %10062)
  %10064 = load ptr, ptr %7, align 8, !tbaa !9
  %10065 = load i32, ptr %12, align 4, !tbaa !5
  %10066 = load i32, ptr %8, align 4, !tbaa !5
  %10067 = mul nsw i32 2, %10066
  %10068 = add nsw i32 %10065, %10067
  %10069 = sext i32 %10068 to i64
  %10070 = getelementptr inbounds double, ptr %10064, i64 %10069
  %10071 = load double, ptr %10070, align 8, !tbaa !11
  %10072 = call double @llvm.fmuladd.f64(double 0xBC76FFFFFFFFFFFF, double %10071, double %10063)
  %10073 = load ptr, ptr %7, align 8, !tbaa !9
  %10074 = load i32, ptr %12, align 4, !tbaa !5
  %10075 = load i32, ptr %8, align 4, !tbaa !5
  %10076 = mul nsw i32 3, %10075
  %10077 = add nsw i32 %10074, %10076
  %10078 = sext i32 %10077 to i64
  %10079 = getelementptr inbounds double, ptr %10073, i64 %10078
  %10080 = load double, ptr %10079, align 8, !tbaa !11
  %10081 = call double @llvm.fmuladd.f64(double 0x3C92400000000000, double %10080, double %10072)
  %10082 = load ptr, ptr %7, align 8, !tbaa !9
  %10083 = load i32, ptr %12, align 4, !tbaa !5
  %10084 = load i32, ptr %8, align 4, !tbaa !5
  %10085 = mul nsw i32 4, %10084
  %10086 = add nsw i32 %10083, %10085
  %10087 = sext i32 %10086 to i64
  %10088 = getelementptr inbounds double, ptr %10082, i64 %10087
  %10089 = load double, ptr %10088, align 8, !tbaa !11
  %10090 = call double @llvm.fmuladd.f64(double 0xBC98000000000000, double %10089, double %10081)
  %10091 = load ptr, ptr %7, align 8, !tbaa !9
  %10092 = load i32, ptr %12, align 4, !tbaa !5
  %10093 = load i32, ptr %8, align 4, !tbaa !5
  %10094 = mul nsw i32 5, %10093
  %10095 = add nsw i32 %10092, %10094
  %10096 = sext i32 %10095 to i64
  %10097 = getelementptr inbounds double, ptr %10091, i64 %10096
  %10098 = load double, ptr %10097, align 8, !tbaa !11
  %10099 = call double @llvm.fmuladd.f64(double 0x3CAC000000000000, double %10098, double %10090)
  %10100 = load ptr, ptr %7, align 8, !tbaa !9
  %10101 = load i32, ptr %12, align 4, !tbaa !5
  %10102 = load i32, ptr %8, align 4, !tbaa !5
  %10103 = mul nsw i32 6, %10102
  %10104 = add nsw i32 %10101, %10103
  %10105 = sext i32 %10104 to i64
  %10106 = getelementptr inbounds double, ptr %10100, i64 %10105
  %10107 = load double, ptr %10106, align 8, !tbaa !11
  %10108 = call double @llvm.fmuladd.f64(double 0x3C9A800000000000, double %10107, double %10099)
  %10109 = load ptr, ptr %7, align 8, !tbaa !9
  %10110 = load i32, ptr %12, align 4, !tbaa !5
  %10111 = load i32, ptr %8, align 4, !tbaa !5
  %10112 = mul nsw i32 7, %10111
  %10113 = add nsw i32 %10110, %10112
  %10114 = sext i32 %10113 to i64
  %10115 = getelementptr inbounds double, ptr %10109, i64 %10114
  %10116 = load double, ptr %10115, align 8, !tbaa !11
  %10117 = call double @llvm.fmuladd.f64(double 0x3C9CFFFFFFFFFFFF, double %10116, double %10108)
  %10118 = load ptr, ptr %7, align 8, !tbaa !9
  %10119 = load i32, ptr %12, align 4, !tbaa !5
  %10120 = load i32, ptr %8, align 4, !tbaa !5
  %10121 = mul nsw i32 8, %10120
  %10122 = add nsw i32 %10119, %10121
  %10123 = sext i32 %10122 to i64
  %10124 = getelementptr inbounds double, ptr %10118, i64 %10123
  %10125 = load double, ptr %10124, align 8, !tbaa !11
  %10126 = call double @llvm.fmuladd.f64(double 0x3C70000000000001, double %10125, double %10117)
  %10127 = load ptr, ptr %7, align 8, !tbaa !9
  %10128 = load i32, ptr %12, align 4, !tbaa !5
  %10129 = load i32, ptr %8, align 4, !tbaa !5
  %10130 = mul nsw i32 9, %10129
  %10131 = add nsw i32 %10128, %10130
  %10132 = sext i32 %10131 to i64
  %10133 = getelementptr inbounds double, ptr %10127, i64 %10132
  %10134 = load double, ptr %10133, align 8, !tbaa !11
  %10135 = call double @llvm.fmuladd.f64(double 0x3C78000000000002, double %10134, double %10126)
  %10136 = load ptr, ptr %7, align 8, !tbaa !9
  %10137 = load i32, ptr %12, align 4, !tbaa !5
  %10138 = load i32, ptr %8, align 4, !tbaa !5
  %10139 = mul nsw i32 10, %10138
  %10140 = add nsw i32 %10137, %10139
  %10141 = sext i32 %10140 to i64
  %10142 = getelementptr inbounds double, ptr %10136, i64 %10141
  %10143 = load double, ptr %10142, align 8, !tbaa !11
  %10144 = call double @llvm.fmuladd.f64(double 0x3CB3FFFFFFFFFFFF, double %10143, double %10135)
  %10145 = load ptr, ptr %7, align 8, !tbaa !9
  %10146 = load i32, ptr %12, align 4, !tbaa !5
  %10147 = load i32, ptr %8, align 4, !tbaa !5
  %10148 = mul nsw i32 11, %10147
  %10149 = add nsw i32 %10146, %10148
  %10150 = sext i32 %10149 to i64
  %10151 = getelementptr inbounds double, ptr %10145, i64 %10150
  %10152 = load double, ptr %10151, align 8, !tbaa !11
  %10153 = call double @llvm.fmuladd.f64(double 0x3C9C000000000000, double %10152, double %10144)
  %10154 = load ptr, ptr %7, align 8, !tbaa !9
  %10155 = load i32, ptr %12, align 4, !tbaa !5
  %10156 = load i32, ptr %8, align 4, !tbaa !5
  %10157 = mul nsw i32 12, %10156
  %10158 = add nsw i32 %10155, %10157
  %10159 = sext i32 %10158 to i64
  %10160 = getelementptr inbounds double, ptr %10154, i64 %10159
  %10161 = load double, ptr %10160, align 8, !tbaa !11
  %10162 = call double @llvm.fmuladd.f64(double 0x3C60000000000000, double %10161, double %10153)
  %10163 = load ptr, ptr %7, align 8, !tbaa !9
  %10164 = load i32, ptr %12, align 4, !tbaa !5
  %10165 = load i32, ptr %8, align 4, !tbaa !5
  %10166 = mul nsw i32 13, %10165
  %10167 = add nsw i32 %10164, %10166
  %10168 = sext i32 %10167 to i64
  %10169 = getelementptr inbounds double, ptr %10163, i64 %10168
  %10170 = load double, ptr %10169, align 8, !tbaa !11
  %10171 = call double @llvm.fmuladd.f64(double 0x3CAF800000000000, double %10170, double %10162)
  %10172 = load ptr, ptr %7, align 8, !tbaa !9
  %10173 = load i32, ptr %12, align 4, !tbaa !5
  %10174 = load i32, ptr %8, align 4, !tbaa !5
  %10175 = mul nsw i32 15, %10174
  %10176 = add nsw i32 %10173, %10175
  %10177 = sext i32 %10176 to i64
  %10178 = getelementptr inbounds double, ptr %10172, i64 %10177
  %10179 = load double, ptr %10178, align 8, !tbaa !11
  %10180 = call double @llvm.fmuladd.f64(double 0x3CA2000000000000, double %10179, double %10171)
  %10181 = load ptr, ptr %7, align 8, !tbaa !9
  %10182 = load i32, ptr %12, align 4, !tbaa !5
  %10183 = load i32, ptr %8, align 4, !tbaa !5
  %10184 = mul nsw i32 16, %10183
  %10185 = add nsw i32 %10182, %10184
  %10186 = sext i32 %10185 to i64
  %10187 = getelementptr inbounds double, ptr %10181, i64 %10186
  %10188 = load double, ptr %10187, align 8, !tbaa !11
  %10189 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %10188, double %10180)
  %10190 = load ptr, ptr %7, align 8, !tbaa !9
  %10191 = load i32, ptr %12, align 4, !tbaa !5
  %10192 = load i32, ptr %8, align 4, !tbaa !5
  %10193 = mul nsw i32 17, %10192
  %10194 = add nsw i32 %10191, %10193
  %10195 = sext i32 %10194 to i64
  %10196 = getelementptr inbounds double, ptr %10190, i64 %10195
  %10197 = load double, ptr %10196, align 8, !tbaa !11
  %10198 = call double @llvm.fmuladd.f64(double 0xBCA7000000000002, double %10197, double %10189)
  %10199 = load ptr, ptr %7, align 8, !tbaa !9
  %10200 = load i32, ptr %12, align 4, !tbaa !5
  %10201 = load i32, ptr %8, align 4, !tbaa !5
  %10202 = mul nsw i32 18, %10201
  %10203 = add nsw i32 %10200, %10202
  %10204 = sext i32 %10203 to i64
  %10205 = getelementptr inbounds double, ptr %10199, i64 %10204
  %10206 = load double, ptr %10205, align 8, !tbaa !11
  %10207 = call double @llvm.fmuladd.f64(double 0x3CAC000000000000, double %10206, double %10198)
  %10208 = load ptr, ptr %7, align 8, !tbaa !9
  %10209 = load i32, ptr %12, align 4, !tbaa !5
  %10210 = load i32, ptr %8, align 4, !tbaa !5
  %10211 = mul nsw i32 19, %10210
  %10212 = add nsw i32 %10209, %10211
  %10213 = sext i32 %10212 to i64
  %10214 = getelementptr inbounds double, ptr %10208, i64 %10213
  %10215 = load double, ptr %10214, align 8, !tbaa !11
  %10216 = call double @llvm.fmuladd.f64(double 0xBCB5FFFFFFFFFFFF, double %10215, double %10207)
  %10217 = load ptr, ptr %7, align 8, !tbaa !9
  %10218 = load i32, ptr %12, align 4, !tbaa !5
  %10219 = load i32, ptr %8, align 4, !tbaa !5
  %10220 = mul nsw i32 20, %10219
  %10221 = add nsw i32 %10218, %10220
  %10222 = sext i32 %10221 to i64
  %10223 = getelementptr inbounds double, ptr %10217, i64 %10222
  %10224 = load double, ptr %10223, align 8, !tbaa !11
  %10225 = call double @llvm.fmuladd.f64(double 0xBF83152016E0ECA0, double %10224, double %10216)
  %10226 = load ptr, ptr %7, align 8, !tbaa !9
  %10227 = load i32, ptr %12, align 4, !tbaa !5
  %10228 = load i32, ptr %8, align 4, !tbaa !5
  %10229 = mul nsw i32 21, %10228
  %10230 = add nsw i32 %10227, %10229
  %10231 = sext i32 %10230 to i64
  %10232 = getelementptr inbounds double, ptr %10226, i64 %10231
  %10233 = load double, ptr %10232, align 8, !tbaa !11
  %10234 = call double @llvm.fmuladd.f64(double 0xBFB5B58B4F03B1A6, double %10233, double %10225)
  %10235 = load ptr, ptr %7, align 8, !tbaa !9
  %10236 = load i32, ptr %12, align 4, !tbaa !5
  %10237 = load i32, ptr %8, align 4, !tbaa !5
  %10238 = mul nsw i32 22, %10237
  %10239 = add nsw i32 %10236, %10238
  %10240 = sext i32 %10239 to i64
  %10241 = getelementptr inbounds double, ptr %10235, i64 %10240
  %10242 = load double, ptr %10241, align 8, !tbaa !11
  %10243 = call double @llvm.fmuladd.f64(double 0x3F938CE4890DB313, double %10242, double %10234)
  %10244 = load ptr, ptr %7, align 8, !tbaa !9
  %10245 = load i32, ptr %12, align 4, !tbaa !5
  %10246 = load i32, ptr %8, align 4, !tbaa !5
  %10247 = mul nsw i32 23, %10246
  %10248 = add nsw i32 %10245, %10247
  %10249 = sext i32 %10248 to i64
  %10250 = getelementptr inbounds double, ptr %10244, i64 %10249
  %10251 = load double, ptr %10250, align 8, !tbaa !11
  %10252 = call double @llvm.fmuladd.f64(double 0x3FF4EC1BB3FDC612, double %10251, double %10243)
  %10253 = load ptr, ptr %7, align 8, !tbaa !9
  %10254 = load i32, ptr %12, align 4, !tbaa !5
  %10255 = load i32, ptr %8, align 4, !tbaa !5
  %10256 = mul nsw i32 24, %10255
  %10257 = add nsw i32 %10254, %10256
  %10258 = sext i32 %10257 to i64
  %10259 = getelementptr inbounds double, ptr %10253, i64 %10258
  %10260 = load double, ptr %10259, align 8, !tbaa !11
  %10261 = call double @llvm.fmuladd.f64(double 0x3F85E50BB681A45A, double %10260, double %10252)
  %10262 = load ptr, ptr %7, align 8, !tbaa !9
  %10263 = load i32, ptr %12, align 4, !tbaa !5
  %10264 = load i32, ptr %8, align 4, !tbaa !5
  %10265 = mul nsw i32 25, %10264
  %10266 = add nsw i32 %10263, %10265
  %10267 = sext i32 %10266 to i64
  %10268 = getelementptr inbounds double, ptr %10262, i64 %10267
  %10269 = load double, ptr %10268, align 8, !tbaa !11
  %10270 = call double @llvm.fmuladd.f64(double 0xBFE5679E70A60659, double %10269, double %10261)
  %10271 = load ptr, ptr %7, align 8, !tbaa !9
  %10272 = load i32, ptr %12, align 4, !tbaa !5
  %10273 = load i32, ptr %8, align 4, !tbaa !5
  %10274 = mul nsw i32 26, %10273
  %10275 = add nsw i32 %10272, %10274
  %10276 = sext i32 %10275 to i64
  %10277 = getelementptr inbounds double, ptr %10271, i64 %10276
  %10278 = load double, ptr %10277, align 8, !tbaa !11
  %10279 = call double @llvm.fmuladd.f64(double 0x3FCA50C41AB7A337, double %10278, double %10270)
  %10280 = load ptr, ptr %7, align 8, !tbaa !9
  %10281 = load i32, ptr %12, align 4, !tbaa !5
  %10282 = load i32, ptr %8, align 4, !tbaa !5
  %10283 = mul nsw i32 27, %10282
  %10284 = add nsw i32 %10281, %10283
  %10285 = sext i32 %10284 to i64
  %10286 = getelementptr inbounds double, ptr %10280, i64 %10285
  %10287 = load double, ptr %10286, align 8, !tbaa !11
  %10288 = call double @llvm.fmuladd.f64(double 0xBFB49217631F594F, double %10287, double %10279)
  %10289 = load ptr, ptr %7, align 8, !tbaa !9
  %10290 = load i32, ptr %12, align 4, !tbaa !5
  %10291 = load i32, ptr %8, align 4, !tbaa !5
  %10292 = mul nsw i32 28, %10291
  %10293 = add nsw i32 %10290, %10292
  %10294 = sext i32 %10293 to i64
  %10295 = getelementptr inbounds double, ptr %10289, i64 %10294
  %10296 = load double, ptr %10295, align 8, !tbaa !11
  %10297 = call double @llvm.fmuladd.f64(double 0x3FD417DEBFC17B18, double %10296, double %10288)
  %10298 = load ptr, ptr %7, align 8, !tbaa !9
  %10299 = load i32, ptr %12, align 4, !tbaa !5
  %10300 = load i32, ptr %8, align 4, !tbaa !5
  %10301 = mul nsw i32 29, %10300
  %10302 = add nsw i32 %10299, %10301
  %10303 = sext i32 %10302 to i64
  %10304 = getelementptr inbounds double, ptr %10298, i64 %10303
  %10305 = load double, ptr %10304, align 8, !tbaa !11
  %10306 = call double @llvm.fmuladd.f64(double 0xBF8BDAF699AECEE1, double %10305, double %10297)
  %10307 = load ptr, ptr %7, align 8, !tbaa !9
  %10308 = load i32, ptr %12, align 4, !tbaa !5
  %10309 = load i32, ptr %8, align 4, !tbaa !5
  %10310 = mul nsw i32 30, %10309
  %10311 = add nsw i32 %10308, %10310
  %10312 = sext i32 %10311 to i64
  %10313 = getelementptr inbounds double, ptr %10307, i64 %10312
  %10314 = load double, ptr %10313, align 8, !tbaa !11
  %10315 = call double @llvm.fmuladd.f64(double 0x3CA9000000000000, double %10314, double %10306)
  %10316 = load ptr, ptr %7, align 8, !tbaa !9
  %10317 = load i32, ptr %12, align 4, !tbaa !5
  %10318 = load i32, ptr %8, align 4, !tbaa !5
  %10319 = mul nsw i32 31, %10318
  %10320 = add nsw i32 %10317, %10319
  %10321 = sext i32 %10320 to i64
  %10322 = getelementptr inbounds double, ptr %10316, i64 %10321
  %10323 = load double, ptr %10322, align 8, !tbaa !11
  %10324 = call double @llvm.fmuladd.f64(double 0x3C78000000000002, double %10323, double %10315)
  %10325 = load ptr, ptr %7, align 8, !tbaa !9
  %10326 = load i32, ptr %12, align 4, !tbaa !5
  %10327 = load i32, ptr %8, align 4, !tbaa !5
  %10328 = mul nsw i32 32, %10327
  %10329 = add nsw i32 %10326, %10328
  %10330 = sext i32 %10329 to i64
  %10331 = getelementptr inbounds double, ptr %10325, i64 %10330
  %10332 = load double, ptr %10331, align 8, !tbaa !11
  %10333 = call double @llvm.fmuladd.f64(double 0xBC9CFFFFFFFFFFFF, double %10332, double %10324)
  %10334 = load ptr, ptr %7, align 8, !tbaa !9
  %10335 = load i32, ptr %12, align 4, !tbaa !5
  %10336 = load i32, ptr %8, align 4, !tbaa !5
  %10337 = mul nsw i32 33, %10336
  %10338 = add nsw i32 %10335, %10337
  %10339 = sext i32 %10338 to i64
  %10340 = getelementptr inbounds double, ptr %10334, i64 %10339
  %10341 = load double, ptr %10340, align 8, !tbaa !11
  %10342 = call double @llvm.fmuladd.f64(double 0x3CB0200000000000, double %10341, double %10333)
  %10343 = load ptr, ptr %7, align 8, !tbaa !9
  %10344 = load i32, ptr %12, align 4, !tbaa !5
  %10345 = load i32, ptr %8, align 4, !tbaa !5
  %10346 = mul nsw i32 34, %10345
  %10347 = add nsw i32 %10344, %10346
  %10348 = sext i32 %10347 to i64
  %10349 = getelementptr inbounds double, ptr %10343, i64 %10348
  %10350 = load double, ptr %10349, align 8, !tbaa !11
  %10351 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %10350, double %10342)
  %10352 = load ptr, ptr %7, align 8, !tbaa !9
  %10353 = load i32, ptr %12, align 4, !tbaa !5
  %10354 = load i32, ptr %8, align 4, !tbaa !5
  %10355 = mul nsw i32 36, %10354
  %10356 = add nsw i32 %10353, %10355
  %10357 = sext i32 %10356 to i64
  %10358 = getelementptr inbounds double, ptr %10352, i64 %10357
  %10359 = load double, ptr %10358, align 8, !tbaa !11
  %10360 = call double @llvm.fmuladd.f64(double 0xBC95000000000000, double %10359, double %10351)
  %10361 = load ptr, ptr %7, align 8, !tbaa !9
  %10362 = load i32, ptr %12, align 4, !tbaa !5
  %10363 = load i32, ptr %8, align 4, !tbaa !5
  %10364 = mul nsw i32 37, %10363
  %10365 = add nsw i32 %10362, %10364
  %10366 = sext i32 %10365 to i64
  %10367 = getelementptr inbounds double, ptr %10361, i64 %10366
  %10368 = load double, ptr %10367, align 8, !tbaa !11
  %10369 = call double @llvm.fmuladd.f64(double 0xBCB1800000000000, double %10368, double %10360)
  %10370 = load ptr, ptr %7, align 8, !tbaa !9
  %10371 = load i32, ptr %12, align 4, !tbaa !5
  %10372 = load i32, ptr %8, align 4, !tbaa !5
  %10373 = mul nsw i32 38, %10372
  %10374 = add nsw i32 %10371, %10373
  %10375 = sext i32 %10374 to i64
  %10376 = getelementptr inbounds double, ptr %10370, i64 %10375
  %10377 = load double, ptr %10376, align 8, !tbaa !11
  %10378 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %10377, double %10369)
  %10379 = load ptr, ptr %7, align 8, !tbaa !9
  %10380 = load i32, ptr %12, align 4, !tbaa !5
  %10381 = load i32, ptr %8, align 4, !tbaa !5
  %10382 = mul nsw i32 39, %10381
  %10383 = add nsw i32 %10380, %10382
  %10384 = sext i32 %10383 to i64
  %10385 = getelementptr inbounds double, ptr %10379, i64 %10384
  %10386 = load double, ptr %10385, align 8, !tbaa !11
  %10387 = call double @llvm.fmuladd.f64(double 0x3C92000000000000, double %10386, double %10378)
  store double %10387, ptr %11, align 8, !tbaa !11
  %10388 = load double, ptr %11, align 8, !tbaa !11
  %10389 = load ptr, ptr %9, align 8, !tbaa !9
  %10390 = load i32, ptr %12, align 4, !tbaa !5
  %10391 = load i32, ptr %10, align 4, !tbaa !5
  %10392 = mul nsw i32 28, %10391
  %10393 = add nsw i32 %10390, %10392
  %10394 = sext i32 %10393 to i64
  %10395 = getelementptr inbounds double, ptr %10389, i64 %10394
  %10396 = load double, ptr %10395, align 8, !tbaa !11
  %10397 = fadd double %10396, %10388
  store double %10397, ptr %10395, align 8, !tbaa !11
  %10398 = load ptr, ptr %7, align 8, !tbaa !9
  %10399 = load i32, ptr %12, align 4, !tbaa !5
  %10400 = load i32, ptr %8, align 4, !tbaa !5
  %10401 = mul nsw i32 0, %10400
  %10402 = add nsw i32 %10399, %10401
  %10403 = sext i32 %10402 to i64
  %10404 = getelementptr inbounds double, ptr %10398, i64 %10403
  %10405 = load double, ptr %10404, align 8, !tbaa !11
  %10406 = load ptr, ptr %7, align 8, !tbaa !9
  %10407 = load i32, ptr %12, align 4, !tbaa !5
  %10408 = load i32, ptr %8, align 4, !tbaa !5
  %10409 = mul nsw i32 1, %10408
  %10410 = add nsw i32 %10407, %10409
  %10411 = sext i32 %10410 to i64
  %10412 = getelementptr inbounds double, ptr %10406, i64 %10411
  %10413 = load double, ptr %10412, align 8, !tbaa !11
  %10414 = fmul double 0xBC78000000000002, %10413
  %10415 = call double @llvm.fmuladd.f64(double 0x3CB97FFFFFFFFFFF, double %10405, double %10414)
  %10416 = load ptr, ptr %7, align 8, !tbaa !9
  %10417 = load i32, ptr %12, align 4, !tbaa !5
  %10418 = load i32, ptr %8, align 4, !tbaa !5
  %10419 = mul nsw i32 2, %10418
  %10420 = add nsw i32 %10417, %10419
  %10421 = sext i32 %10420 to i64
  %10422 = getelementptr inbounds double, ptr %10416, i64 %10421
  %10423 = load double, ptr %10422, align 8, !tbaa !11
  %10424 = call double @llvm.fmuladd.f64(double 0xBCA0E00000000001, double %10423, double %10415)
  %10425 = load ptr, ptr %7, align 8, !tbaa !9
  %10426 = load i32, ptr %12, align 4, !tbaa !5
  %10427 = load i32, ptr %8, align 4, !tbaa !5
  %10428 = mul nsw i32 3, %10427
  %10429 = add nsw i32 %10426, %10428
  %10430 = sext i32 %10429 to i64
  %10431 = getelementptr inbounds double, ptr %10425, i64 %10430
  %10432 = load double, ptr %10431, align 8, !tbaa !11
  %10433 = call double @llvm.fmuladd.f64(double 0x3CA0A00000000001, double %10432, double %10424)
  %10434 = load ptr, ptr %7, align 8, !tbaa !9
  %10435 = load i32, ptr %12, align 4, !tbaa !5
  %10436 = load i32, ptr %8, align 4, !tbaa !5
  %10437 = mul nsw i32 4, %10436
  %10438 = add nsw i32 %10435, %10437
  %10439 = sext i32 %10438 to i64
  %10440 = getelementptr inbounds double, ptr %10434, i64 %10439
  %10441 = load double, ptr %10440, align 8, !tbaa !11
  %10442 = call double @llvm.fmuladd.f64(double 0x3CA27FFFFFFFFFFF, double %10441, double %10433)
  %10443 = load ptr, ptr %7, align 8, !tbaa !9
  %10444 = load i32, ptr %12, align 4, !tbaa !5
  %10445 = load i32, ptr %8, align 4, !tbaa !5
  %10446 = mul nsw i32 5, %10445
  %10447 = add nsw i32 %10444, %10446
  %10448 = sext i32 %10447 to i64
  %10449 = getelementptr inbounds double, ptr %10443, i64 %10448
  %10450 = load double, ptr %10449, align 8, !tbaa !11
  %10451 = call double @llvm.fmuladd.f64(double 0x3CA5800000000000, double %10450, double %10442)
  %10452 = load ptr, ptr %7, align 8, !tbaa !9
  %10453 = load i32, ptr %12, align 4, !tbaa !5
  %10454 = load i32, ptr %8, align 4, !tbaa !5
  %10455 = mul nsw i32 6, %10454
  %10456 = add nsw i32 %10453, %10455
  %10457 = sext i32 %10456 to i64
  %10458 = getelementptr inbounds double, ptr %10452, i64 %10457
  %10459 = load double, ptr %10458, align 8, !tbaa !11
  %10460 = call double @llvm.fmuladd.f64(double 0xBCBB1FFFFFFFFFFF, double %10459, double %10451)
  %10461 = load ptr, ptr %7, align 8, !tbaa !9
  %10462 = load i32, ptr %12, align 4, !tbaa !5
  %10463 = load i32, ptr %8, align 4, !tbaa !5
  %10464 = mul nsw i32 7, %10463
  %10465 = add nsw i32 %10462, %10464
  %10466 = sext i32 %10465 to i64
  %10467 = getelementptr inbounds double, ptr %10461, i64 %10466
  %10468 = load double, ptr %10467, align 8, !tbaa !11
  %10469 = call double @llvm.fmuladd.f64(double 0xBC9B000000000000, double %10468, double %10460)
  %10470 = load ptr, ptr %7, align 8, !tbaa !9
  %10471 = load i32, ptr %12, align 4, !tbaa !5
  %10472 = load i32, ptr %8, align 4, !tbaa !5
  %10473 = mul nsw i32 8, %10472
  %10474 = add nsw i32 %10471, %10473
  %10475 = sext i32 %10474 to i64
  %10476 = getelementptr inbounds double, ptr %10470, i64 %10475
  %10477 = load double, ptr %10476, align 8, !tbaa !11
  %10478 = call double @llvm.fmuladd.f64(double 0xBC78000000000002, double %10477, double %10469)
  %10479 = load ptr, ptr %7, align 8, !tbaa !9
  %10480 = load i32, ptr %12, align 4, !tbaa !5
  %10481 = load i32, ptr %8, align 4, !tbaa !5
  %10482 = mul nsw i32 9, %10481
  %10483 = add nsw i32 %10480, %10482
  %10484 = sext i32 %10483 to i64
  %10485 = getelementptr inbounds double, ptr %10479, i64 %10484
  %10486 = load double, ptr %10485, align 8, !tbaa !11
  %10487 = call double @llvm.fmuladd.f64(double 0xBC70000000000001, double %10486, double %10478)
  %10488 = load ptr, ptr %7, align 8, !tbaa !9
  %10489 = load i32, ptr %12, align 4, !tbaa !5
  %10490 = load i32, ptr %8, align 4, !tbaa !5
  %10491 = mul nsw i32 10, %10490
  %10492 = add nsw i32 %10489, %10491
  %10493 = sext i32 %10492 to i64
  %10494 = getelementptr inbounds double, ptr %10488, i64 %10493
  %10495 = load double, ptr %10494, align 8, !tbaa !11
  %10496 = call double @llvm.fmuladd.f64(double 0x3CA4000000000001, double %10495, double %10487)
  %10497 = load ptr, ptr %7, align 8, !tbaa !9
  %10498 = load i32, ptr %12, align 4, !tbaa !5
  %10499 = load i32, ptr %8, align 4, !tbaa !5
  %10500 = mul nsw i32 11, %10499
  %10501 = add nsw i32 %10498, %10500
  %10502 = sext i32 %10501 to i64
  %10503 = getelementptr inbounds double, ptr %10497, i64 %10502
  %10504 = load double, ptr %10503, align 8, !tbaa !11
  %10505 = call double @llvm.fmuladd.f64(double 0x3CB1000000000001, double %10504, double %10496)
  %10506 = load ptr, ptr %7, align 8, !tbaa !9
  %10507 = load i32, ptr %12, align 4, !tbaa !5
  %10508 = load i32, ptr %8, align 4, !tbaa !5
  %10509 = mul nsw i32 12, %10508
  %10510 = add nsw i32 %10507, %10509
  %10511 = sext i32 %10510 to i64
  %10512 = getelementptr inbounds double, ptr %10506, i64 %10511
  %10513 = load double, ptr %10512, align 8, !tbaa !11
  %10514 = call double @llvm.fmuladd.f64(double 0xBC95000000000000, double %10513, double %10505)
  %10515 = load ptr, ptr %7, align 8, !tbaa !9
  %10516 = load i32, ptr %12, align 4, !tbaa !5
  %10517 = load i32, ptr %8, align 4, !tbaa !5
  %10518 = mul nsw i32 13, %10517
  %10519 = add nsw i32 %10516, %10518
  %10520 = sext i32 %10519 to i64
  %10521 = getelementptr inbounds double, ptr %10515, i64 %10520
  %10522 = load double, ptr %10521, align 8, !tbaa !11
  %10523 = call double @llvm.fmuladd.f64(double 0x3C91000000000000, double %10522, double %10514)
  %10524 = load ptr, ptr %7, align 8, !tbaa !9
  %10525 = load i32, ptr %12, align 4, !tbaa !5
  %10526 = load i32, ptr %8, align 4, !tbaa !5
  %10527 = mul nsw i32 14, %10526
  %10528 = add nsw i32 %10525, %10527
  %10529 = sext i32 %10528 to i64
  %10530 = getelementptr inbounds double, ptr %10524, i64 %10529
  %10531 = load double, ptr %10530, align 8, !tbaa !11
  %10532 = call double @llvm.fmuladd.f64(double 0xBCAC000000000000, double %10531, double %10523)
  %10533 = load ptr, ptr %7, align 8, !tbaa !9
  %10534 = load i32, ptr %12, align 4, !tbaa !5
  %10535 = load i32, ptr %8, align 4, !tbaa !5
  %10536 = mul nsw i32 15, %10535
  %10537 = add nsw i32 %10534, %10536
  %10538 = sext i32 %10537 to i64
  %10539 = getelementptr inbounds double, ptr %10533, i64 %10538
  %10540 = load double, ptr %10539, align 8, !tbaa !11
  %10541 = call double @llvm.fmuladd.f64(double 0xBC9C000000000000, double %10540, double %10532)
  %10542 = load ptr, ptr %7, align 8, !tbaa !9
  %10543 = load i32, ptr %12, align 4, !tbaa !5
  %10544 = load i32, ptr %8, align 4, !tbaa !5
  %10545 = mul nsw i32 16, %10544
  %10546 = add nsw i32 %10543, %10545
  %10547 = sext i32 %10546 to i64
  %10548 = getelementptr inbounds double, ptr %10542, i64 %10547
  %10549 = load double, ptr %10548, align 8, !tbaa !11
  %10550 = call double @llvm.fmuladd.f64(double 0x3CB07FFFFFFFFFFF, double %10549, double %10541)
  %10551 = load ptr, ptr %7, align 8, !tbaa !9
  %10552 = load i32, ptr %12, align 4, !tbaa !5
  %10553 = load i32, ptr %8, align 4, !tbaa !5
  %10554 = mul nsw i32 17, %10553
  %10555 = add nsw i32 %10552, %10554
  %10556 = sext i32 %10555 to i64
  %10557 = getelementptr inbounds double, ptr %10551, i64 %10556
  %10558 = load double, ptr %10557, align 8, !tbaa !11
  %10559 = call double @llvm.fmuladd.f64(double 0x3CA7000000000002, double %10558, double %10550)
  %10560 = load ptr, ptr %7, align 8, !tbaa !9
  %10561 = load i32, ptr %12, align 4, !tbaa !5
  %10562 = load i32, ptr %8, align 4, !tbaa !5
  %10563 = mul nsw i32 19, %10562
  %10564 = add nsw i32 %10561, %10563
  %10565 = sext i32 %10564 to i64
  %10566 = getelementptr inbounds double, ptr %10560, i64 %10565
  %10567 = load double, ptr %10566, align 8, !tbaa !11
  %10568 = call double @llvm.fmuladd.f64(double 0xBCAE000000000002, double %10567, double %10559)
  %10569 = load ptr, ptr %7, align 8, !tbaa !9
  %10570 = load i32, ptr %12, align 4, !tbaa !5
  %10571 = load i32, ptr %8, align 4, !tbaa !5
  %10572 = mul nsw i32 20, %10571
  %10573 = add nsw i32 %10570, %10572
  %10574 = sext i32 %10573 to i64
  %10575 = getelementptr inbounds double, ptr %10569, i64 %10574
  %10576 = load double, ptr %10575, align 8, !tbaa !11
  %10577 = call double @llvm.fmuladd.f64(double 0xBFE333710B32A29C, double %10576, double %10568)
  %10578 = load ptr, ptr %7, align 8, !tbaa !9
  %10579 = load i32, ptr %12, align 4, !tbaa !5
  %10580 = load i32, ptr %8, align 4, !tbaa !5
  %10581 = mul nsw i32 21, %10580
  %10582 = add nsw i32 %10579, %10581
  %10583 = sext i32 %10582 to i64
  %10584 = getelementptr inbounds double, ptr %10578, i64 %10583
  %10585 = load double, ptr %10584, align 8, !tbaa !11
  %10586 = call double @llvm.fmuladd.f64(double 0xBFBEED13A9F0D909, double %10585, double %10577)
  %10587 = load ptr, ptr %7, align 8, !tbaa !9
  %10588 = load i32, ptr %12, align 4, !tbaa !5
  %10589 = load i32, ptr %8, align 4, !tbaa !5
  %10590 = mul nsw i32 22, %10589
  %10591 = add nsw i32 %10588, %10590
  %10592 = sext i32 %10591 to i64
  %10593 = getelementptr inbounds double, ptr %10587, i64 %10592
  %10594 = load double, ptr %10593, align 8, !tbaa !11
  %10595 = call double @llvm.fmuladd.f64(double 0xBFA352D4DB969C0E, double %10594, double %10586)
  %10596 = load ptr, ptr %7, align 8, !tbaa !9
  %10597 = load i32, ptr %12, align 4, !tbaa !5
  %10598 = load i32, ptr %8, align 4, !tbaa !5
  %10599 = mul nsw i32 23, %10598
  %10600 = add nsw i32 %10597, %10599
  %10601 = sext i32 %10600 to i64
  %10602 = getelementptr inbounds double, ptr %10596, i64 %10601
  %10603 = load double, ptr %10602, align 8, !tbaa !11
  %10604 = call double @llvm.fmuladd.f64(double 0x3FA87D764354851C, double %10603, double %10595)
  %10605 = load ptr, ptr %7, align 8, !tbaa !9
  %10606 = load i32, ptr %12, align 4, !tbaa !5
  %10607 = load i32, ptr %8, align 4, !tbaa !5
  %10608 = mul nsw i32 24, %10607
  %10609 = add nsw i32 %10606, %10608
  %10610 = sext i32 %10609 to i64
  %10611 = getelementptr inbounds double, ptr %10605, i64 %10610
  %10612 = load double, ptr %10611, align 8, !tbaa !11
  %10613 = call double @llvm.fmuladd.f64(double 0x3F9854E0ADA34BC3, double %10612, double %10604)
  %10614 = load ptr, ptr %7, align 8, !tbaa !9
  %10615 = load i32, ptr %12, align 4, !tbaa !5
  %10616 = load i32, ptr %8, align 4, !tbaa !5
  %10617 = mul nsw i32 25, %10616
  %10618 = add nsw i32 %10615, %10617
  %10619 = sext i32 %10618 to i64
  %10620 = getelementptr inbounds double, ptr %10614, i64 %10619
  %10621 = load double, ptr %10620, align 8, !tbaa !11
  %10622 = call double @llvm.fmuladd.f64(double 0xBFD41C0D131D4295, double %10621, double %10613)
  %10623 = load ptr, ptr %7, align 8, !tbaa !9
  %10624 = load i32, ptr %12, align 4, !tbaa !5
  %10625 = load i32, ptr %8, align 4, !tbaa !5
  %10626 = mul nsw i32 26, %10625
  %10627 = add nsw i32 %10624, %10626
  %10628 = sext i32 %10627 to i64
  %10629 = getelementptr inbounds double, ptr %10623, i64 %10628
  %10630 = load double, ptr %10629, align 8, !tbaa !11
  %10631 = call double @llvm.fmuladd.f64(double 0x3FF670C5F1F4C92E, double %10630, double %10622)
  %10632 = load ptr, ptr %7, align 8, !tbaa !9
  %10633 = load i32, ptr %12, align 4, !tbaa !5
  %10634 = load i32, ptr %8, align 4, !tbaa !5
  %10635 = mul nsw i32 27, %10634
  %10636 = add nsw i32 %10633, %10635
  %10637 = sext i32 %10636 to i64
  %10638 = getelementptr inbounds double, ptr %10632, i64 %10637
  %10639 = load double, ptr %10638, align 8, !tbaa !11
  %10640 = call double @llvm.fmuladd.f64(double 0x3FC36A9134CD3C5C, double %10639, double %10631)
  %10641 = load ptr, ptr %7, align 8, !tbaa !9
  %10642 = load i32, ptr %12, align 4, !tbaa !5
  %10643 = load i32, ptr %8, align 4, !tbaa !5
  %10644 = mul nsw i32 28, %10643
  %10645 = add nsw i32 %10642, %10644
  %10646 = sext i32 %10645 to i64
  %10647 = getelementptr inbounds double, ptr %10641, i64 %10646
  %10648 = load double, ptr %10647, align 8, !tbaa !11
  %10649 = call double @llvm.fmuladd.f64(double 0x3FD35DAE88CBA64B, double %10648, double %10640)
  %10650 = load ptr, ptr %7, align 8, !tbaa !9
  %10651 = load i32, ptr %12, align 4, !tbaa !5
  %10652 = load i32, ptr %8, align 4, !tbaa !5
  %10653 = mul nsw i32 29, %10652
  %10654 = add nsw i32 %10651, %10653
  %10655 = sext i32 %10654 to i64
  %10656 = getelementptr inbounds double, ptr %10650, i64 %10655
  %10657 = load double, ptr %10656, align 8, !tbaa !11
  %10658 = call double @llvm.fmuladd.f64(double 0x3FC27B05E24EC5FB, double %10657, double %10649)
  %10659 = load ptr, ptr %7, align 8, !tbaa !9
  %10660 = load i32, ptr %12, align 4, !tbaa !5
  %10661 = load i32, ptr %8, align 4, !tbaa !5
  %10662 = mul nsw i32 30, %10661
  %10663 = add nsw i32 %10660, %10662
  %10664 = sext i32 %10663 to i64
  %10665 = getelementptr inbounds double, ptr %10659, i64 %10664
  %10666 = load double, ptr %10665, align 8, !tbaa !11
  %10667 = call double @llvm.fmuladd.f64(double 0xBC9A000000000000, double %10666, double %10658)
  %10668 = load ptr, ptr %7, align 8, !tbaa !9
  %10669 = load i32, ptr %12, align 4, !tbaa !5
  %10670 = load i32, ptr %8, align 4, !tbaa !5
  %10671 = mul nsw i32 31, %10670
  %10672 = add nsw i32 %10669, %10671
  %10673 = sext i32 %10672 to i64
  %10674 = getelementptr inbounds double, ptr %10668, i64 %10673
  %10675 = load double, ptr %10674, align 8, !tbaa !11
  %10676 = call double @llvm.fmuladd.f64(double 0xBC96000000000000, double %10675, double %10667)
  %10677 = load ptr, ptr %7, align 8, !tbaa !9
  %10678 = load i32, ptr %12, align 4, !tbaa !5
  %10679 = load i32, ptr %8, align 4, !tbaa !5
  %10680 = mul nsw i32 32, %10679
  %10681 = add nsw i32 %10678, %10680
  %10682 = sext i32 %10681 to i64
  %10683 = getelementptr inbounds double, ptr %10677, i64 %10682
  %10684 = load double, ptr %10683, align 8, !tbaa !11
  %10685 = call double @llvm.fmuladd.f64(double 0x3C82FFFFFFFFFFFF, double %10684, double %10676)
  %10686 = load ptr, ptr %7, align 8, !tbaa !9
  %10687 = load i32, ptr %12, align 4, !tbaa !5
  %10688 = load i32, ptr %8, align 4, !tbaa !5
  %10689 = mul nsw i32 33, %10688
  %10690 = add nsw i32 %10687, %10689
  %10691 = sext i32 %10690 to i64
  %10692 = getelementptr inbounds double, ptr %10686, i64 %10691
  %10693 = load double, ptr %10692, align 8, !tbaa !11
  %10694 = call double @llvm.fmuladd.f64(double 0x3C7C000000000000, double %10693, double %10685)
  %10695 = load ptr, ptr %7, align 8, !tbaa !9
  %10696 = load i32, ptr %12, align 4, !tbaa !5
  %10697 = load i32, ptr %8, align 4, !tbaa !5
  %10698 = mul nsw i32 34, %10697
  %10699 = add nsw i32 %10696, %10698
  %10700 = sext i32 %10699 to i64
  %10701 = getelementptr inbounds double, ptr %10695, i64 %10700
  %10702 = load double, ptr %10701, align 8, !tbaa !11
  %10703 = call double @llvm.fmuladd.f64(double 0xBC92000000000000, double %10702, double %10694)
  %10704 = load ptr, ptr %7, align 8, !tbaa !9
  %10705 = load i32, ptr %12, align 4, !tbaa !5
  %10706 = load i32, ptr %8, align 4, !tbaa !5
  %10707 = mul nsw i32 35, %10706
  %10708 = add nsw i32 %10705, %10707
  %10709 = sext i32 %10708 to i64
  %10710 = getelementptr inbounds double, ptr %10704, i64 %10709
  %10711 = load double, ptr %10710, align 8, !tbaa !11
  %10712 = call double @llvm.fmuladd.f64(double 0xBC99000000000000, double %10711, double %10703)
  %10713 = load ptr, ptr %7, align 8, !tbaa !9
  %10714 = load i32, ptr %12, align 4, !tbaa !5
  %10715 = load i32, ptr %8, align 4, !tbaa !5
  %10716 = mul nsw i32 36, %10715
  %10717 = add nsw i32 %10714, %10716
  %10718 = sext i32 %10717 to i64
  %10719 = getelementptr inbounds double, ptr %10713, i64 %10718
  %10720 = load double, ptr %10719, align 8, !tbaa !11
  %10721 = call double @llvm.fmuladd.f64(double 0x3CA4000000000001, double %10720, double %10712)
  %10722 = load ptr, ptr %7, align 8, !tbaa !9
  %10723 = load i32, ptr %12, align 4, !tbaa !5
  %10724 = load i32, ptr %8, align 4, !tbaa !5
  %10725 = mul nsw i32 37, %10724
  %10726 = add nsw i32 %10723, %10725
  %10727 = sext i32 %10726 to i64
  %10728 = getelementptr inbounds double, ptr %10722, i64 %10727
  %10729 = load double, ptr %10728, align 8, !tbaa !11
  %10730 = call double @llvm.fmuladd.f64(double 0xBCB8E00000000000, double %10729, double %10721)
  %10731 = load ptr, ptr %7, align 8, !tbaa !9
  %10732 = load i32, ptr %12, align 4, !tbaa !5
  %10733 = load i32, ptr %8, align 4, !tbaa !5
  %10734 = mul nsw i32 38, %10733
  %10735 = add nsw i32 %10732, %10734
  %10736 = sext i32 %10735 to i64
  %10737 = getelementptr inbounds double, ptr %10731, i64 %10736
  %10738 = load double, ptr %10737, align 8, !tbaa !11
  %10739 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %10738, double %10730)
  %10740 = load ptr, ptr %7, align 8, !tbaa !9
  %10741 = load i32, ptr %12, align 4, !tbaa !5
  %10742 = load i32, ptr %8, align 4, !tbaa !5
  %10743 = mul nsw i32 39, %10742
  %10744 = add nsw i32 %10741, %10743
  %10745 = sext i32 %10744 to i64
  %10746 = getelementptr inbounds double, ptr %10740, i64 %10745
  %10747 = load double, ptr %10746, align 8, !tbaa !11
  %10748 = call double @llvm.fmuladd.f64(double 0x3C84000000000000, double %10747, double %10739)
  store double %10748, ptr %11, align 8, !tbaa !11
  %10749 = load double, ptr %11, align 8, !tbaa !11
  %10750 = load ptr, ptr %9, align 8, !tbaa !9
  %10751 = load i32, ptr %12, align 4, !tbaa !5
  %10752 = load i32, ptr %10, align 4, !tbaa !5
  %10753 = mul nsw i32 29, %10752
  %10754 = add nsw i32 %10751, %10753
  %10755 = sext i32 %10754 to i64
  %10756 = getelementptr inbounds double, ptr %10750, i64 %10755
  %10757 = load double, ptr %10756, align 8, !tbaa !11
  %10758 = fadd double %10757, %10749
  store double %10758, ptr %10756, align 8, !tbaa !11
  %10759 = load ptr, ptr %7, align 8, !tbaa !9
  %10760 = load i32, ptr %12, align 4, !tbaa !5
  %10761 = load i32, ptr %8, align 4, !tbaa !5
  %10762 = mul nsw i32 0, %10761
  %10763 = add nsw i32 %10760, %10762
  %10764 = sext i32 %10763 to i64
  %10765 = getelementptr inbounds double, ptr %10759, i64 %10764
  %10766 = load double, ptr %10765, align 8, !tbaa !11
  %10767 = load ptr, ptr %7, align 8, !tbaa !9
  %10768 = load i32, ptr %12, align 4, !tbaa !5
  %10769 = load i32, ptr %8, align 4, !tbaa !5
  %10770 = mul nsw i32 1, %10769
  %10771 = add nsw i32 %10768, %10770
  %10772 = sext i32 %10771 to i64
  %10773 = getelementptr inbounds double, ptr %10767, i64 %10772
  %10774 = load double, ptr %10773, align 8, !tbaa !11
  %10775 = fmul double 0xBCA9000000000000, %10774
  %10776 = call double @llvm.fmuladd.f64(double 0x3CBD800000000001, double %10766, double %10775)
  %10777 = load ptr, ptr %7, align 8, !tbaa !9
  %10778 = load i32, ptr %12, align 4, !tbaa !5
  %10779 = load i32, ptr %8, align 4, !tbaa !5
  %10780 = mul nsw i32 2, %10779
  %10781 = add nsw i32 %10778, %10780
  %10782 = sext i32 %10781 to i64
  %10783 = getelementptr inbounds double, ptr %10777, i64 %10782
  %10784 = load double, ptr %10783, align 8, !tbaa !11
  %10785 = call double @llvm.fmuladd.f64(double 0xBCADDFFFFFFFFFFE, double %10784, double %10776)
  %10786 = load ptr, ptr %7, align 8, !tbaa !9
  %10787 = load i32, ptr %12, align 4, !tbaa !5
  %10788 = load i32, ptr %8, align 4, !tbaa !5
  %10789 = mul nsw i32 3, %10788
  %10790 = add nsw i32 %10787, %10789
  %10791 = sext i32 %10790 to i64
  %10792 = getelementptr inbounds double, ptr %10786, i64 %10791
  %10793 = load double, ptr %10792, align 8, !tbaa !11
  %10794 = call double @llvm.fmuladd.f64(double 0x3C91400000000000, double %10793, double %10785)
  %10795 = load ptr, ptr %7, align 8, !tbaa !9
  %10796 = load i32, ptr %12, align 4, !tbaa !5
  %10797 = load i32, ptr %8, align 4, !tbaa !5
  %10798 = mul nsw i32 4, %10797
  %10799 = add nsw i32 %10796, %10798
  %10800 = sext i32 %10799 to i64
  %10801 = getelementptr inbounds double, ptr %10795, i64 %10800
  %10802 = load double, ptr %10801, align 8, !tbaa !11
  %10803 = call double @llvm.fmuladd.f64(double 0x3C9C000000000000, double %10802, double %10794)
  %10804 = load ptr, ptr %7, align 8, !tbaa !9
  %10805 = load i32, ptr %12, align 4, !tbaa !5
  %10806 = load i32, ptr %8, align 4, !tbaa !5
  %10807 = mul nsw i32 5, %10806
  %10808 = add nsw i32 %10805, %10807
  %10809 = sext i32 %10808 to i64
  %10810 = getelementptr inbounds double, ptr %10804, i64 %10809
  %10811 = load double, ptr %10810, align 8, !tbaa !11
  %10812 = call double @llvm.fmuladd.f64(double 0xBCA0000000000002, double %10811, double %10803)
  %10813 = load ptr, ptr %7, align 8, !tbaa !9
  %10814 = load i32, ptr %12, align 4, !tbaa !5
  %10815 = load i32, ptr %8, align 4, !tbaa !5
  %10816 = mul nsw i32 6, %10815
  %10817 = add nsw i32 %10814, %10816
  %10818 = sext i32 %10817 to i64
  %10819 = getelementptr inbounds double, ptr %10813, i64 %10818
  %10820 = load double, ptr %10819, align 8, !tbaa !11
  %10821 = call double @llvm.fmuladd.f64(double 0xBCBADFFFFFFFFFFF, double %10820, double %10812)
  %10822 = load ptr, ptr %7, align 8, !tbaa !9
  %10823 = load i32, ptr %12, align 4, !tbaa !5
  %10824 = load i32, ptr %8, align 4, !tbaa !5
  %10825 = mul nsw i32 7, %10824
  %10826 = add nsw i32 %10823, %10825
  %10827 = sext i32 %10826 to i64
  %10828 = getelementptr inbounds double, ptr %10822, i64 %10827
  %10829 = load double, ptr %10828, align 8, !tbaa !11
  %10830 = call double @llvm.fmuladd.f64(double 0x3C95000000000000, double %10829, double %10821)
  %10831 = load ptr, ptr %7, align 8, !tbaa !9
  %10832 = load i32, ptr %12, align 4, !tbaa !5
  %10833 = load i32, ptr %8, align 4, !tbaa !5
  %10834 = mul nsw i32 8, %10833
  %10835 = add nsw i32 %10832, %10834
  %10836 = sext i32 %10835 to i64
  %10837 = getelementptr inbounds double, ptr %10831, i64 %10836
  %10838 = load double, ptr %10837, align 8, !tbaa !11
  %10839 = call double @llvm.fmuladd.f64(double 0x3C9DFFFFFFFFFFFE, double %10838, double %10830)
  %10840 = load ptr, ptr %7, align 8, !tbaa !9
  %10841 = load i32, ptr %12, align 4, !tbaa !5
  %10842 = load i32, ptr %8, align 4, !tbaa !5
  %10843 = mul nsw i32 9, %10842
  %10844 = add nsw i32 %10841, %10843
  %10845 = sext i32 %10844 to i64
  %10846 = getelementptr inbounds double, ptr %10840, i64 %10845
  %10847 = load double, ptr %10846, align 8, !tbaa !11
  %10848 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %10847, double %10839)
  %10849 = load ptr, ptr %7, align 8, !tbaa !9
  %10850 = load i32, ptr %12, align 4, !tbaa !5
  %10851 = load i32, ptr %8, align 4, !tbaa !5
  %10852 = mul nsw i32 10, %10851
  %10853 = add nsw i32 %10850, %10852
  %10854 = sext i32 %10853 to i64
  %10855 = getelementptr inbounds double, ptr %10849, i64 %10854
  %10856 = load double, ptr %10855, align 8, !tbaa !11
  %10857 = call double @llvm.fmuladd.f64(double 0xBCB3FFFFFFFFFFFF, double %10856, double %10848)
  %10858 = load ptr, ptr %7, align 8, !tbaa !9
  %10859 = load i32, ptr %12, align 4, !tbaa !5
  %10860 = load i32, ptr %8, align 4, !tbaa !5
  %10861 = mul nsw i32 12, %10860
  %10862 = add nsw i32 %10859, %10861
  %10863 = sext i32 %10862 to i64
  %10864 = getelementptr inbounds double, ptr %10858, i64 %10863
  %10865 = load double, ptr %10864, align 8, !tbaa !11
  %10866 = call double @llvm.fmuladd.f64(double 0x3C9CFFFFFFFFFFFF, double %10865, double %10857)
  %10867 = load ptr, ptr %7, align 8, !tbaa !9
  %10868 = load i32, ptr %12, align 4, !tbaa !5
  %10869 = load i32, ptr %8, align 4, !tbaa !5
  %10870 = mul nsw i32 13, %10869
  %10871 = add nsw i32 %10868, %10870
  %10872 = sext i32 %10871 to i64
  %10873 = getelementptr inbounds double, ptr %10867, i64 %10872
  %10874 = load double, ptr %10873, align 8, !tbaa !11
  %10875 = call double @llvm.fmuladd.f64(double 0x3CAF800000000000, double %10874, double %10866)
  %10876 = load ptr, ptr %7, align 8, !tbaa !9
  %10877 = load i32, ptr %12, align 4, !tbaa !5
  %10878 = load i32, ptr %8, align 4, !tbaa !5
  %10879 = mul nsw i32 14, %10878
  %10880 = add nsw i32 %10877, %10879
  %10881 = sext i32 %10880 to i64
  %10882 = getelementptr inbounds double, ptr %10876, i64 %10881
  %10883 = load double, ptr %10882, align 8, !tbaa !11
  %10884 = call double @llvm.fmuladd.f64(double 0x3CB0000000000000, double %10883, double %10875)
  %10885 = load ptr, ptr %7, align 8, !tbaa !9
  %10886 = load i32, ptr %12, align 4, !tbaa !5
  %10887 = load i32, ptr %8, align 4, !tbaa !5
  %10888 = mul nsw i32 15, %10887
  %10889 = add nsw i32 %10886, %10888
  %10890 = sext i32 %10889 to i64
  %10891 = getelementptr inbounds double, ptr %10885, i64 %10890
  %10892 = load double, ptr %10891, align 8, !tbaa !11
  %10893 = call double @llvm.fmuladd.f64(double 0x3CB8000000000001, double %10892, double %10884)
  %10894 = load ptr, ptr %7, align 8, !tbaa !9
  %10895 = load i32, ptr %12, align 4, !tbaa !5
  %10896 = load i32, ptr %8, align 4, !tbaa !5
  %10897 = mul nsw i32 16, %10896
  %10898 = add nsw i32 %10895, %10897
  %10899 = sext i32 %10898 to i64
  %10900 = getelementptr inbounds double, ptr %10894, i64 %10899
  %10901 = load double, ptr %10900, align 8, !tbaa !11
  %10902 = call double @llvm.fmuladd.f64(double 0xBCC1C00000000000, double %10901, double %10893)
  %10903 = load ptr, ptr %7, align 8, !tbaa !9
  %10904 = load i32, ptr %12, align 4, !tbaa !5
  %10905 = load i32, ptr %8, align 4, !tbaa !5
  %10906 = mul nsw i32 17, %10905
  %10907 = add nsw i32 %10904, %10906
  %10908 = sext i32 %10907 to i64
  %10909 = getelementptr inbounds double, ptr %10903, i64 %10908
  %10910 = load double, ptr %10909, align 8, !tbaa !11
  %10911 = call double @llvm.fmuladd.f64(double 0x3C96000000000000, double %10910, double %10902)
  %10912 = load ptr, ptr %7, align 8, !tbaa !9
  %10913 = load i32, ptr %12, align 4, !tbaa !5
  %10914 = load i32, ptr %8, align 4, !tbaa !5
  %10915 = mul nsw i32 18, %10914
  %10916 = add nsw i32 %10913, %10915
  %10917 = sext i32 %10916 to i64
  %10918 = getelementptr inbounds double, ptr %10912, i64 %10917
  %10919 = load double, ptr %10918, align 8, !tbaa !11
  %10920 = call double @llvm.fmuladd.f64(double 0x3C9C000000000000, double %10919, double %10911)
  %10921 = load ptr, ptr %7, align 8, !tbaa !9
  %10922 = load i32, ptr %12, align 4, !tbaa !5
  %10923 = load i32, ptr %8, align 4, !tbaa !5
  %10924 = mul nsw i32 19, %10923
  %10925 = add nsw i32 %10922, %10924
  %10926 = sext i32 %10925 to i64
  %10927 = getelementptr inbounds double, ptr %10921, i64 %10926
  %10928 = load double, ptr %10927, align 8, !tbaa !11
  %10929 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %10928, double %10920)
  %10930 = load ptr, ptr %7, align 8, !tbaa !9
  %10931 = load i32, ptr %12, align 4, !tbaa !5
  %10932 = load i32, ptr %8, align 4, !tbaa !5
  %10933 = mul nsw i32 20, %10932
  %10934 = add nsw i32 %10931, %10933
  %10935 = sext i32 %10934 to i64
  %10936 = getelementptr inbounds double, ptr %10930, i64 %10935
  %10937 = load double, ptr %10936, align 8, !tbaa !11
  %10938 = call double @llvm.fmuladd.f64(double 0xBFE333710B32A29A, double %10937, double %10929)
  %10939 = load ptr, ptr %7, align 8, !tbaa !9
  %10940 = load i32, ptr %12, align 4, !tbaa !5
  %10941 = load i32, ptr %8, align 4, !tbaa !5
  %10942 = mul nsw i32 21, %10941
  %10943 = add nsw i32 %10940, %10942
  %10944 = sext i32 %10943 to i64
  %10945 = getelementptr inbounds double, ptr %10939, i64 %10944
  %10946 = load double, ptr %10945, align 8, !tbaa !11
  %10947 = call double @llvm.fmuladd.f64(double 0xBFBEED13A9F0D8FA, double %10946, double %10938)
  %10948 = load ptr, ptr %7, align 8, !tbaa !9
  %10949 = load i32, ptr %12, align 4, !tbaa !5
  %10950 = load i32, ptr %8, align 4, !tbaa !5
  %10951 = mul nsw i32 22, %10950
  %10952 = add nsw i32 %10949, %10951
  %10953 = sext i32 %10952 to i64
  %10954 = getelementptr inbounds double, ptr %10948, i64 %10953
  %10955 = load double, ptr %10954, align 8, !tbaa !11
  %10956 = call double @llvm.fmuladd.f64(double 0x3FA87D76435484F4, double %10955, double %10947)
  %10957 = load ptr, ptr %7, align 8, !tbaa !9
  %10958 = load i32, ptr %12, align 4, !tbaa !5
  %10959 = load i32, ptr %8, align 4, !tbaa !5
  %10960 = mul nsw i32 23, %10959
  %10961 = add nsw i32 %10958, %10960
  %10962 = sext i32 %10961 to i64
  %10963 = getelementptr inbounds double, ptr %10957, i64 %10962
  %10964 = load double, ptr %10963, align 8, !tbaa !11
  %10965 = call double @llvm.fmuladd.f64(double 0xBFA352D4DB969BF2, double %10964, double %10956)
  %10966 = load ptr, ptr %7, align 8, !tbaa !9
  %10967 = load i32, ptr %12, align 4, !tbaa !5
  %10968 = load i32, ptr %8, align 4, !tbaa !5
  %10969 = mul nsw i32 24, %10968
  %10970 = add nsw i32 %10967, %10969
  %10971 = sext i32 %10970 to i64
  %10972 = getelementptr inbounds double, ptr %10966, i64 %10971
  %10973 = load double, ptr %10972, align 8, !tbaa !11
  %10974 = call double @llvm.fmuladd.f64(double 0xBFD41C0D131D428E, double %10973, double %10965)
  %10975 = load ptr, ptr %7, align 8, !tbaa !9
  %10976 = load i32, ptr %12, align 4, !tbaa !5
  %10977 = load i32, ptr %8, align 4, !tbaa !5
  %10978 = mul nsw i32 25, %10977
  %10979 = add nsw i32 %10976, %10978
  %10980 = sext i32 %10979 to i64
  %10981 = getelementptr inbounds double, ptr %10975, i64 %10980
  %10982 = load double, ptr %10981, align 8, !tbaa !11
  %10983 = call double @llvm.fmuladd.f64(double 0x3F9854E0ADA34ACB, double %10982, double %10974)
  %10984 = load ptr, ptr %7, align 8, !tbaa !9
  %10985 = load i32, ptr %12, align 4, !tbaa !5
  %10986 = load i32, ptr %8, align 4, !tbaa !5
  %10987 = mul nsw i32 26, %10986
  %10988 = add nsw i32 %10985, %10987
  %10989 = sext i32 %10988 to i64
  %10990 = getelementptr inbounds double, ptr %10984, i64 %10989
  %10991 = load double, ptr %10990, align 8, !tbaa !11
  %10992 = call double @llvm.fmuladd.f64(double 0x3FC36A9134CD3C5F, double %10991, double %10983)
  %10993 = load ptr, ptr %7, align 8, !tbaa !9
  %10994 = load i32, ptr %12, align 4, !tbaa !5
  %10995 = load i32, ptr %8, align 4, !tbaa !5
  %10996 = mul nsw i32 27, %10995
  %10997 = add nsw i32 %10994, %10996
  %10998 = sext i32 %10997 to i64
  %10999 = getelementptr inbounds double, ptr %10993, i64 %10998
  %11000 = load double, ptr %10999, align 8, !tbaa !11
  %11001 = call double @llvm.fmuladd.f64(double 0x3FF670C5F1F4C92E, double %11000, double %10992)
  %11002 = load ptr, ptr %7, align 8, !tbaa !9
  %11003 = load i32, ptr %12, align 4, !tbaa !5
  %11004 = load i32, ptr %8, align 4, !tbaa !5
  %11005 = mul nsw i32 28, %11004
  %11006 = add nsw i32 %11003, %11005
  %11007 = sext i32 %11006 to i64
  %11008 = getelementptr inbounds double, ptr %11002, i64 %11007
  %11009 = load double, ptr %11008, align 8, !tbaa !11
  %11010 = call double @llvm.fmuladd.f64(double 0x3FC27B05E24EC5F8, double %11009, double %11001)
  %11011 = load ptr, ptr %7, align 8, !tbaa !9
  %11012 = load i32, ptr %12, align 4, !tbaa !5
  %11013 = load i32, ptr %8, align 4, !tbaa !5
  %11014 = mul nsw i32 29, %11013
  %11015 = add nsw i32 %11012, %11014
  %11016 = sext i32 %11015 to i64
  %11017 = getelementptr inbounds double, ptr %11011, i64 %11016
  %11018 = load double, ptr %11017, align 8, !tbaa !11
  %11019 = call double @llvm.fmuladd.f64(double 0x3FD35DAE88CBA648, double %11018, double %11010)
  %11020 = load ptr, ptr %7, align 8, !tbaa !9
  %11021 = load i32, ptr %12, align 4, !tbaa !5
  %11022 = load i32, ptr %8, align 4, !tbaa !5
  %11023 = mul nsw i32 30, %11022
  %11024 = add nsw i32 %11021, %11023
  %11025 = sext i32 %11024 to i64
  %11026 = getelementptr inbounds double, ptr %11020, i64 %11025
  %11027 = load double, ptr %11026, align 8, !tbaa !11
  %11028 = call double @llvm.fmuladd.f64(double 0xBCA9000000000000, double %11027, double %11019)
  %11029 = load ptr, ptr %7, align 8, !tbaa !9
  %11030 = load i32, ptr %12, align 4, !tbaa !5
  %11031 = load i32, ptr %8, align 4, !tbaa !5
  %11032 = mul nsw i32 31, %11031
  %11033 = add nsw i32 %11030, %11032
  %11034 = sext i32 %11033 to i64
  %11035 = getelementptr inbounds double, ptr %11029, i64 %11034
  %11036 = load double, ptr %11035, align 8, !tbaa !11
  %11037 = call double @llvm.fmuladd.f64(double 0xBCA1000000000001, double %11036, double %11028)
  %11038 = load ptr, ptr %7, align 8, !tbaa !9
  %11039 = load i32, ptr %12, align 4, !tbaa !5
  %11040 = load i32, ptr %8, align 4, !tbaa !5
  %11041 = mul nsw i32 32, %11040
  %11042 = add nsw i32 %11039, %11041
  %11043 = sext i32 %11042 to i64
  %11044 = getelementptr inbounds double, ptr %11038, i64 %11043
  %11045 = load double, ptr %11044, align 8, !tbaa !11
  %11046 = call double @llvm.fmuladd.f64(double 0xBCA1400000000000, double %11045, double %11037)
  %11047 = load ptr, ptr %7, align 8, !tbaa !9
  %11048 = load i32, ptr %12, align 4, !tbaa !5
  %11049 = load i32, ptr %8, align 4, !tbaa !5
  %11050 = mul nsw i32 33, %11049
  %11051 = add nsw i32 %11048, %11050
  %11052 = sext i32 %11051 to i64
  %11053 = getelementptr inbounds double, ptr %11047, i64 %11052
  %11054 = load double, ptr %11053, align 8, !tbaa !11
  %11055 = call double @llvm.fmuladd.f64(double 0xBC94000000000000, double %11054, double %11046)
  %11056 = load ptr, ptr %7, align 8, !tbaa !9
  %11057 = load i32, ptr %12, align 4, !tbaa !5
  %11058 = load i32, ptr %8, align 4, !tbaa !5
  %11059 = mul nsw i32 34, %11058
  %11060 = add nsw i32 %11057, %11059
  %11061 = sext i32 %11060 to i64
  %11062 = getelementptr inbounds double, ptr %11056, i64 %11061
  %11063 = load double, ptr %11062, align 8, !tbaa !11
  %11064 = call double @llvm.fmuladd.f64(double 0xBCA7800000000001, double %11063, double %11055)
  %11065 = load ptr, ptr %7, align 8, !tbaa !9
  %11066 = load i32, ptr %12, align 4, !tbaa !5
  %11067 = load i32, ptr %8, align 4, !tbaa !5
  %11068 = mul nsw i32 35, %11067
  %11069 = add nsw i32 %11066, %11068
  %11070 = sext i32 %11069 to i64
  %11071 = getelementptr inbounds double, ptr %11065, i64 %11070
  %11072 = load double, ptr %11071, align 8, !tbaa !11
  %11073 = call double @llvm.fmuladd.f64(double 0xBC9C000000000000, double %11072, double %11064)
  %11074 = load ptr, ptr %7, align 8, !tbaa !9
  %11075 = load i32, ptr %12, align 4, !tbaa !5
  %11076 = load i32, ptr %8, align 4, !tbaa !5
  %11077 = mul nsw i32 36, %11076
  %11078 = add nsw i32 %11075, %11077
  %11079 = sext i32 %11078 to i64
  %11080 = getelementptr inbounds double, ptr %11074, i64 %11079
  %11081 = load double, ptr %11080, align 8, !tbaa !11
  %11082 = call double @llvm.fmuladd.f64(double 0x3CB6800000000000, double %11081, double %11073)
  %11083 = load ptr, ptr %7, align 8, !tbaa !9
  %11084 = load i32, ptr %12, align 4, !tbaa !5
  %11085 = load i32, ptr %8, align 4, !tbaa !5
  %11086 = mul nsw i32 37, %11085
  %11087 = add nsw i32 %11084, %11086
  %11088 = sext i32 %11087 to i64
  %11089 = getelementptr inbounds double, ptr %11083, i64 %11088
  %11090 = load double, ptr %11089, align 8, !tbaa !11
  %11091 = call double @llvm.fmuladd.f64(double 0xBCB8A00000000000, double %11090, double %11082)
  %11092 = load ptr, ptr %7, align 8, !tbaa !9
  %11093 = load i32, ptr %12, align 4, !tbaa !5
  %11094 = load i32, ptr %8, align 4, !tbaa !5
  %11095 = mul nsw i32 38, %11094
  %11096 = add nsw i32 %11093, %11095
  %11097 = sext i32 %11096 to i64
  %11098 = getelementptr inbounds double, ptr %11092, i64 %11097
  %11099 = load double, ptr %11098, align 8, !tbaa !11
  %11100 = call double @llvm.fmuladd.f64(double 0xBCA4000000000001, double %11099, double %11091)
  %11101 = load ptr, ptr %7, align 8, !tbaa !9
  %11102 = load i32, ptr %12, align 4, !tbaa !5
  %11103 = load i32, ptr %8, align 4, !tbaa !5
  %11104 = mul nsw i32 39, %11103
  %11105 = add nsw i32 %11102, %11104
  %11106 = sext i32 %11105 to i64
  %11107 = getelementptr inbounds double, ptr %11101, i64 %11106
  %11108 = load double, ptr %11107, align 8, !tbaa !11
  %11109 = call double @llvm.fmuladd.f64(double 0x3C8C000000000000, double %11108, double %11100)
  store double %11109, ptr %11, align 8, !tbaa !11
  %11110 = load double, ptr %11, align 8, !tbaa !11
  %11111 = load ptr, ptr %9, align 8, !tbaa !9
  %11112 = load i32, ptr %12, align 4, !tbaa !5
  %11113 = load i32, ptr %10, align 4, !tbaa !5
  %11114 = mul nsw i32 30, %11113
  %11115 = add nsw i32 %11112, %11114
  %11116 = sext i32 %11115 to i64
  %11117 = getelementptr inbounds double, ptr %11111, i64 %11116
  %11118 = load double, ptr %11117, align 8, !tbaa !11
  %11119 = fadd double %11118, %11110
  store double %11119, ptr %11117, align 8, !tbaa !11
  %11120 = load ptr, ptr %7, align 8, !tbaa !9
  %11121 = load i32, ptr %12, align 4, !tbaa !5
  %11122 = load i32, ptr %8, align 4, !tbaa !5
  %11123 = mul nsw i32 0, %11122
  %11124 = add nsw i32 %11121, %11123
  %11125 = sext i32 %11124 to i64
  %11126 = getelementptr inbounds double, ptr %11120, i64 %11125
  %11127 = load double, ptr %11126, align 8, !tbaa !11
  %11128 = load ptr, ptr %7, align 8, !tbaa !9
  %11129 = load i32, ptr %12, align 4, !tbaa !5
  %11130 = load i32, ptr %8, align 4, !tbaa !5
  %11131 = mul nsw i32 1, %11130
  %11132 = add nsw i32 %11129, %11131
  %11133 = sext i32 %11132 to i64
  %11134 = getelementptr inbounds double, ptr %11128, i64 %11133
  %11135 = load double, ptr %11134, align 8, !tbaa !11
  %11136 = fmul double 0xBCB0000000000000, %11135
  %11137 = call double @llvm.fmuladd.f64(double 0xBCC8400000000000, double %11127, double %11136)
  %11138 = load ptr, ptr %7, align 8, !tbaa !9
  %11139 = load i32, ptr %12, align 4, !tbaa !5
  %11140 = load i32, ptr %8, align 4, !tbaa !5
  %11141 = mul nsw i32 2, %11140
  %11142 = add nsw i32 %11139, %11141
  %11143 = sext i32 %11142 to i64
  %11144 = getelementptr inbounds double, ptr %11138, i64 %11143
  %11145 = load double, ptr %11144, align 8, !tbaa !11
  %11146 = call double @llvm.fmuladd.f64(double 0x3CB42FFFFFFFFFFF, double %11145, double %11137)
  %11147 = load ptr, ptr %7, align 8, !tbaa !9
  %11148 = load i32, ptr %12, align 4, !tbaa !5
  %11149 = load i32, ptr %8, align 4, !tbaa !5
  %11150 = mul nsw i32 3, %11149
  %11151 = add nsw i32 %11148, %11150
  %11152 = sext i32 %11151 to i64
  %11153 = getelementptr inbounds double, ptr %11147, i64 %11152
  %11154 = load double, ptr %11153, align 8, !tbaa !11
  %11155 = call double @llvm.fmuladd.f64(double 0xBC91400000000000, double %11154, double %11146)
  %11156 = load ptr, ptr %7, align 8, !tbaa !9
  %11157 = load i32, ptr %12, align 4, !tbaa !5
  %11158 = load i32, ptr %8, align 4, !tbaa !5
  %11159 = mul nsw i32 4, %11158
  %11160 = add nsw i32 %11157, %11159
  %11161 = sext i32 %11160 to i64
  %11162 = getelementptr inbounds double, ptr %11156, i64 %11161
  %11163 = load double, ptr %11162, align 8, !tbaa !11
  %11164 = call double @llvm.fmuladd.f64(double 0x3C8C000000000000, double %11163, double %11155)
  %11165 = load ptr, ptr %7, align 8, !tbaa !9
  %11166 = load i32, ptr %12, align 4, !tbaa !5
  %11167 = load i32, ptr %8, align 4, !tbaa !5
  %11168 = mul nsw i32 5, %11167
  %11169 = add nsw i32 %11166, %11168
  %11170 = sext i32 %11169 to i64
  %11171 = getelementptr inbounds double, ptr %11165, i64 %11170
  %11172 = load double, ptr %11171, align 8, !tbaa !11
  %11173 = call double @llvm.fmuladd.f64(double 0xBCAE000000000002, double %11172, double %11164)
  %11174 = load ptr, ptr %7, align 8, !tbaa !9
  %11175 = load i32, ptr %12, align 4, !tbaa !5
  %11176 = load i32, ptr %8, align 4, !tbaa !5
  %11177 = mul nsw i32 6, %11176
  %11178 = add nsw i32 %11175, %11177
  %11179 = sext i32 %11178 to i64
  %11180 = getelementptr inbounds double, ptr %11174, i64 %11179
  %11181 = load double, ptr %11180, align 8, !tbaa !11
  %11182 = call double @llvm.fmuladd.f64(double 0xBC93800000000000, double %11181, double %11173)
  %11183 = load ptr, ptr %7, align 8, !tbaa !9
  %11184 = load i32, ptr %12, align 4, !tbaa !5
  %11185 = load i32, ptr %8, align 4, !tbaa !5
  %11186 = mul nsw i32 7, %11185
  %11187 = add nsw i32 %11184, %11186
  %11188 = sext i32 %11187 to i64
  %11189 = getelementptr inbounds double, ptr %11183, i64 %11188
  %11190 = load double, ptr %11189, align 8, !tbaa !11
  %11191 = call double @llvm.fmuladd.f64(double 0x3CAE000000000002, double %11190, double %11182)
  %11192 = load ptr, ptr %7, align 8, !tbaa !9
  %11193 = load i32, ptr %12, align 4, !tbaa !5
  %11194 = load i32, ptr %8, align 4, !tbaa !5
  %11195 = mul nsw i32 8, %11194
  %11196 = add nsw i32 %11193, %11195
  %11197 = sext i32 %11196 to i64
  %11198 = getelementptr inbounds double, ptr %11192, i64 %11197
  %11199 = load double, ptr %11198, align 8, !tbaa !11
  %11200 = call double @llvm.fmuladd.f64(double 0x3C98000000000000, double %11199, double %11191)
  %11201 = load ptr, ptr %7, align 8, !tbaa !9
  %11202 = load i32, ptr %12, align 4, !tbaa !5
  %11203 = load i32, ptr %8, align 4, !tbaa !5
  %11204 = mul nsw i32 9, %11203
  %11205 = add nsw i32 %11202, %11204
  %11206 = sext i32 %11205 to i64
  %11207 = getelementptr inbounds double, ptr %11201, i64 %11206
  %11208 = load double, ptr %11207, align 8, !tbaa !11
  %11209 = call double @llvm.fmuladd.f64(double 0xBCA0000000000002, double %11208, double %11200)
  %11210 = load ptr, ptr %7, align 8, !tbaa !9
  %11211 = load i32, ptr %12, align 4, !tbaa !5
  %11212 = load i32, ptr %8, align 4, !tbaa !5
  %11213 = mul nsw i32 11, %11212
  %11214 = add nsw i32 %11211, %11213
  %11215 = sext i32 %11214 to i64
  %11216 = getelementptr inbounds double, ptr %11210, i64 %11215
  %11217 = load double, ptr %11216, align 8, !tbaa !11
  %11218 = call double @llvm.fmuladd.f64(double 0xBC88000000000000, double %11217, double %11209)
  %11219 = load ptr, ptr %7, align 8, !tbaa !9
  %11220 = load i32, ptr %12, align 4, !tbaa !5
  %11221 = load i32, ptr %8, align 4, !tbaa !5
  %11222 = mul nsw i32 12, %11221
  %11223 = add nsw i32 %11220, %11222
  %11224 = sext i32 %11223 to i64
  %11225 = getelementptr inbounds double, ptr %11219, i64 %11224
  %11226 = load double, ptr %11225, align 8, !tbaa !11
  %11227 = call double @llvm.fmuladd.f64(double 0x3CB1000000000001, double %11226, double %11218)
  %11228 = load ptr, ptr %7, align 8, !tbaa !9
  %11229 = load i32, ptr %12, align 4, !tbaa !5
  %11230 = load i32, ptr %8, align 4, !tbaa !5
  %11231 = mul nsw i32 13, %11230
  %11232 = add nsw i32 %11229, %11231
  %11233 = sext i32 %11232 to i64
  %11234 = getelementptr inbounds double, ptr %11228, i64 %11233
  %11235 = load double, ptr %11234, align 8, !tbaa !11
  %11236 = call double @llvm.fmuladd.f64(double 0x3CA4800000000001, double %11235, double %11227)
  %11237 = load ptr, ptr %7, align 8, !tbaa !9
  %11238 = load i32, ptr %12, align 4, !tbaa !5
  %11239 = load i32, ptr %8, align 4, !tbaa !5
  %11240 = mul nsw i32 14, %11239
  %11241 = add nsw i32 %11238, %11240
  %11242 = sext i32 %11241 to i64
  %11243 = getelementptr inbounds double, ptr %11237, i64 %11242
  %11244 = load double, ptr %11243, align 8, !tbaa !11
  %11245 = call double @llvm.fmuladd.f64(double 0xBC70000000000001, double %11244, double %11236)
  %11246 = load ptr, ptr %7, align 8, !tbaa !9
  %11247 = load i32, ptr %12, align 4, !tbaa !5
  %11248 = load i32, ptr %8, align 4, !tbaa !5
  %11249 = mul nsw i32 15, %11248
  %11250 = add nsw i32 %11247, %11249
  %11251 = sext i32 %11250 to i64
  %11252 = getelementptr inbounds double, ptr %11246, i64 %11251
  %11253 = load double, ptr %11252, align 8, !tbaa !11
  %11254 = call double @llvm.fmuladd.f64(double 0x3CB1000000000001, double %11253, double %11245)
  %11255 = load ptr, ptr %7, align 8, !tbaa !9
  %11256 = load i32, ptr %12, align 4, !tbaa !5
  %11257 = load i32, ptr %8, align 4, !tbaa !5
  %11258 = mul nsw i32 16, %11257
  %11259 = add nsw i32 %11256, %11258
  %11260 = sext i32 %11259 to i64
  %11261 = getelementptr inbounds double, ptr %11255, i64 %11260
  %11262 = load double, ptr %11261, align 8, !tbaa !11
  %11263 = call double @llvm.fmuladd.f64(double 0xBCC3800000000000, double %11262, double %11254)
  %11264 = load ptr, ptr %7, align 8, !tbaa !9
  %11265 = load i32, ptr %12, align 4, !tbaa !5
  %11266 = load i32, ptr %8, align 4, !tbaa !5
  %11267 = mul nsw i32 17, %11266
  %11268 = add nsw i32 %11265, %11267
  %11269 = sext i32 %11268 to i64
  %11270 = getelementptr inbounds double, ptr %11264, i64 %11269
  %11271 = load double, ptr %11270, align 8, !tbaa !11
  %11272 = call double @llvm.fmuladd.f64(double 0x3CB5800000000000, double %11271, double %11263)
  %11273 = load ptr, ptr %7, align 8, !tbaa !9
  %11274 = load i32, ptr %12, align 4, !tbaa !5
  %11275 = load i32, ptr %8, align 4, !tbaa !5
  %11276 = mul nsw i32 18, %11275
  %11277 = add nsw i32 %11274, %11276
  %11278 = sext i32 %11277 to i64
  %11279 = getelementptr inbounds double, ptr %11273, i64 %11278
  %11280 = load double, ptr %11279, align 8, !tbaa !11
  %11281 = call double @llvm.fmuladd.f64(double 0x3CA4000000000001, double %11280, double %11272)
  %11282 = load ptr, ptr %7, align 8, !tbaa !9
  %11283 = load i32, ptr %12, align 4, !tbaa !5
  %11284 = load i32, ptr %8, align 4, !tbaa !5
  %11285 = mul nsw i32 19, %11284
  %11286 = add nsw i32 %11283, %11285
  %11287 = sext i32 %11286 to i64
  %11288 = getelementptr inbounds double, ptr %11282, i64 %11287
  %11289 = load double, ptr %11288, align 8, !tbaa !11
  %11290 = call double @llvm.fmuladd.f64(double 0xBC98000000000000, double %11289, double %11281)
  %11291 = load ptr, ptr %7, align 8, !tbaa !9
  %11292 = load i32, ptr %12, align 4, !tbaa !5
  %11293 = load i32, ptr %8, align 4, !tbaa !5
  %11294 = mul nsw i32 20, %11293
  %11295 = add nsw i32 %11292, %11294
  %11296 = sext i32 %11295 to i64
  %11297 = getelementptr inbounds double, ptr %11291, i64 %11296
  %11298 = load double, ptr %11297, align 8, !tbaa !11
  %11299 = call double @llvm.fmuladd.f64(double 0xBF83152016E0EBD0, double %11298, double %11290)
  %11300 = load ptr, ptr %7, align 8, !tbaa !9
  %11301 = load i32, ptr %12, align 4, !tbaa !5
  %11302 = load i32, ptr %8, align 4, !tbaa !5
  %11303 = mul nsw i32 21, %11302
  %11304 = add nsw i32 %11301, %11303
  %11305 = sext i32 %11304 to i64
  %11306 = getelementptr inbounds double, ptr %11300, i64 %11305
  %11307 = load double, ptr %11306, align 8, !tbaa !11
  %11308 = call double @llvm.fmuladd.f64(double 0xBFB5B58B4F03B198, double %11307, double %11299)
  %11309 = load ptr, ptr %7, align 8, !tbaa !9
  %11310 = load i32, ptr %12, align 4, !tbaa !5
  %11311 = load i32, ptr %8, align 4, !tbaa !5
  %11312 = mul nsw i32 22, %11311
  %11313 = add nsw i32 %11310, %11312
  %11314 = sext i32 %11313 to i64
  %11315 = getelementptr inbounds double, ptr %11309, i64 %11314
  %11316 = load double, ptr %11315, align 8, !tbaa !11
  %11317 = call double @llvm.fmuladd.f64(double 0x3FF4EC1BB3FDC617, double %11316, double %11308)
  %11318 = load ptr, ptr %7, align 8, !tbaa !9
  %11319 = load i32, ptr %12, align 4, !tbaa !5
  %11320 = load i32, ptr %8, align 4, !tbaa !5
  %11321 = mul nsw i32 23, %11320
  %11322 = add nsw i32 %11319, %11321
  %11323 = sext i32 %11322 to i64
  %11324 = getelementptr inbounds double, ptr %11318, i64 %11323
  %11325 = load double, ptr %11324, align 8, !tbaa !11
  %11326 = call double @llvm.fmuladd.f64(double 0x3F938CE4890DB2F0, double %11325, double %11317)
  %11327 = load ptr, ptr %7, align 8, !tbaa !9
  %11328 = load i32, ptr %12, align 4, !tbaa !5
  %11329 = load i32, ptr %8, align 4, !tbaa !5
  %11330 = mul nsw i32 24, %11329
  %11331 = add nsw i32 %11328, %11330
  %11332 = sext i32 %11331 to i64
  %11333 = getelementptr inbounds double, ptr %11327, i64 %11332
  %11334 = load double, ptr %11333, align 8, !tbaa !11
  %11335 = call double @llvm.fmuladd.f64(double 0xBFE5679E70A60656, double %11334, double %11326)
  %11336 = load ptr, ptr %7, align 8, !tbaa !9
  %11337 = load i32, ptr %12, align 4, !tbaa !5
  %11338 = load i32, ptr %8, align 4, !tbaa !5
  %11339 = mul nsw i32 25, %11338
  %11340 = add nsw i32 %11337, %11339
  %11341 = sext i32 %11340 to i64
  %11342 = getelementptr inbounds double, ptr %11336, i64 %11341
  %11343 = load double, ptr %11342, align 8, !tbaa !11
  %11344 = call double @llvm.fmuladd.f64(double 0x3F85E50BB681A339, double %11343, double %11335)
  %11345 = load ptr, ptr %7, align 8, !tbaa !9
  %11346 = load i32, ptr %12, align 4, !tbaa !5
  %11347 = load i32, ptr %8, align 4, !tbaa !5
  %11348 = mul nsw i32 26, %11347
  %11349 = add nsw i32 %11346, %11348
  %11350 = sext i32 %11349 to i64
  %11351 = getelementptr inbounds double, ptr %11345, i64 %11350
  %11352 = load double, ptr %11351, align 8, !tbaa !11
  %11353 = call double @llvm.fmuladd.f64(double 0xBFB49217631F58F9, double %11352, double %11344)
  %11354 = load ptr, ptr %7, align 8, !tbaa !9
  %11355 = load i32, ptr %12, align 4, !tbaa !5
  %11356 = load i32, ptr %8, align 4, !tbaa !5
  %11357 = mul nsw i32 27, %11356
  %11358 = add nsw i32 %11355, %11357
  %11359 = sext i32 %11358 to i64
  %11360 = getelementptr inbounds double, ptr %11354, i64 %11359
  %11361 = load double, ptr %11360, align 8, !tbaa !11
  %11362 = call double @llvm.fmuladd.f64(double 0x3FCA50C41AB7A2DD, double %11361, double %11353)
  %11363 = load ptr, ptr %7, align 8, !tbaa !9
  %11364 = load i32, ptr %12, align 4, !tbaa !5
  %11365 = load i32, ptr %8, align 4, !tbaa !5
  %11366 = mul nsw i32 28, %11365
  %11367 = add nsw i32 %11364, %11366
  %11368 = sext i32 %11367 to i64
  %11369 = getelementptr inbounds double, ptr %11363, i64 %11368
  %11370 = load double, ptr %11369, align 8, !tbaa !11
  %11371 = call double @llvm.fmuladd.f64(double 0xBF8BDAF699AECF43, double %11370, double %11362)
  %11372 = load ptr, ptr %7, align 8, !tbaa !9
  %11373 = load i32, ptr %12, align 4, !tbaa !5
  %11374 = load i32, ptr %8, align 4, !tbaa !5
  %11375 = mul nsw i32 29, %11374
  %11376 = add nsw i32 %11373, %11375
  %11377 = sext i32 %11376 to i64
  %11378 = getelementptr inbounds double, ptr %11372, i64 %11377
  %11379 = load double, ptr %11378, align 8, !tbaa !11
  %11380 = call double @llvm.fmuladd.f64(double 0x3FD417DEBFC17B15, double %11379, double %11371)
  %11381 = load ptr, ptr %7, align 8, !tbaa !9
  %11382 = load i32, ptr %12, align 4, !tbaa !5
  %11383 = load i32, ptr %8, align 4, !tbaa !5
  %11384 = mul nsw i32 30, %11383
  %11385 = add nsw i32 %11382, %11384
  %11386 = sext i32 %11385 to i64
  %11387 = getelementptr inbounds double, ptr %11381, i64 %11386
  %11388 = load double, ptr %11387, align 8, !tbaa !11
  %11389 = call double @llvm.fmuladd.f64(double 0x3CBB800000000001, double %11388, double %11380)
  %11390 = load ptr, ptr %7, align 8, !tbaa !9
  %11391 = load i32, ptr %12, align 4, !tbaa !5
  %11392 = load i32, ptr %8, align 4, !tbaa !5
  %11393 = mul nsw i32 31, %11392
  %11394 = add nsw i32 %11391, %11393
  %11395 = sext i32 %11394 to i64
  %11396 = getelementptr inbounds double, ptr %11390, i64 %11395
  %11397 = load double, ptr %11396, align 8, !tbaa !11
  %11398 = call double @llvm.fmuladd.f64(double 0xBC60000000000000, double %11397, double %11389)
  %11399 = load ptr, ptr %7, align 8, !tbaa !9
  %11400 = load i32, ptr %12, align 4, !tbaa !5
  %11401 = load i32, ptr %8, align 4, !tbaa !5
  %11402 = mul nsw i32 32, %11401
  %11403 = add nsw i32 %11400, %11402
  %11404 = sext i32 %11403 to i64
  %11405 = getelementptr inbounds double, ptr %11399, i64 %11404
  %11406 = load double, ptr %11405, align 8, !tbaa !11
  %11407 = call double @llvm.fmuladd.f64(double 0xBC7E000000000001, double %11406, double %11398)
  %11408 = load ptr, ptr %7, align 8, !tbaa !9
  %11409 = load i32, ptr %12, align 4, !tbaa !5
  %11410 = load i32, ptr %8, align 4, !tbaa !5
  %11411 = mul nsw i32 33, %11410
  %11412 = add nsw i32 %11409, %11411
  %11413 = sext i32 %11412 to i64
  %11414 = getelementptr inbounds double, ptr %11408, i64 %11413
  %11415 = load double, ptr %11414, align 8, !tbaa !11
  %11416 = call double @llvm.fmuladd.f64(double 0xBCA2FFFFFFFFFFFE, double %11415, double %11407)
  %11417 = load ptr, ptr %7, align 8, !tbaa !9
  %11418 = load i32, ptr %12, align 4, !tbaa !5
  %11419 = load i32, ptr %8, align 4, !tbaa !5
  %11420 = mul nsw i32 34, %11419
  %11421 = add nsw i32 %11418, %11420
  %11422 = sext i32 %11421 to i64
  %11423 = getelementptr inbounds double, ptr %11417, i64 %11422
  %11424 = load double, ptr %11423, align 8, !tbaa !11
  %11425 = call double @llvm.fmuladd.f64(double 0xBC9C000000000000, double %11424, double %11416)
  %11426 = load ptr, ptr %7, align 8, !tbaa !9
  %11427 = load i32, ptr %12, align 4, !tbaa !5
  %11428 = load i32, ptr %8, align 4, !tbaa !5
  %11429 = mul nsw i32 35, %11428
  %11430 = add nsw i32 %11427, %11429
  %11431 = sext i32 %11430 to i64
  %11432 = getelementptr inbounds double, ptr %11426, i64 %11431
  %11433 = load double, ptr %11432, align 8, !tbaa !11
  %11434 = call double @llvm.fmuladd.f64(double 0x3CAE000000000002, double %11433, double %11425)
  %11435 = load ptr, ptr %7, align 8, !tbaa !9
  %11436 = load i32, ptr %12, align 4, !tbaa !5
  %11437 = load i32, ptr %8, align 4, !tbaa !5
  %11438 = mul nsw i32 36, %11437
  %11439 = add nsw i32 %11436, %11438
  %11440 = sext i32 %11439 to i64
  %11441 = getelementptr inbounds double, ptr %11435, i64 %11440
  %11442 = load double, ptr %11441, align 8, !tbaa !11
  %11443 = call double @llvm.fmuladd.f64(double 0x3CAC000000000000, double %11442, double %11434)
  %11444 = load ptr, ptr %7, align 8, !tbaa !9
  %11445 = load i32, ptr %12, align 4, !tbaa !5
  %11446 = load i32, ptr %8, align 4, !tbaa !5
  %11447 = mul nsw i32 37, %11446
  %11448 = add nsw i32 %11445, %11447
  %11449 = sext i32 %11448 to i64
  %11450 = getelementptr inbounds double, ptr %11444, i64 %11449
  %11451 = load double, ptr %11450, align 8, !tbaa !11
  %11452 = call double @llvm.fmuladd.f64(double 0x3C95000000000000, double %11451, double %11443)
  %11453 = load ptr, ptr %7, align 8, !tbaa !9
  %11454 = load i32, ptr %12, align 4, !tbaa !5
  %11455 = load i32, ptr %8, align 4, !tbaa !5
  %11456 = mul nsw i32 38, %11455
  %11457 = add nsw i32 %11454, %11456
  %11458 = sext i32 %11457 to i64
  %11459 = getelementptr inbounds double, ptr %11453, i64 %11458
  %11460 = load double, ptr %11459, align 8, !tbaa !11
  %11461 = call double @llvm.fmuladd.f64(double 0xBCAB000000000001, double %11460, double %11452)
  %11462 = load ptr, ptr %7, align 8, !tbaa !9
  %11463 = load i32, ptr %12, align 4, !tbaa !5
  %11464 = load i32, ptr %8, align 4, !tbaa !5
  %11465 = mul nsw i32 39, %11464
  %11466 = add nsw i32 %11463, %11465
  %11467 = sext i32 %11466 to i64
  %11468 = getelementptr inbounds double, ptr %11462, i64 %11467
  %11469 = load double, ptr %11468, align 8, !tbaa !11
  %11470 = call double @llvm.fmuladd.f64(double 0x3CA1000000000001, double %11469, double %11461)
  store double %11470, ptr %11, align 8, !tbaa !11
  %11471 = load double, ptr %11, align 8, !tbaa !11
  %11472 = load ptr, ptr %9, align 8, !tbaa !9
  %11473 = load i32, ptr %12, align 4, !tbaa !5
  %11474 = load i32, ptr %10, align 4, !tbaa !5
  %11475 = mul nsw i32 31, %11474
  %11476 = add nsw i32 %11473, %11475
  %11477 = sext i32 %11476 to i64
  %11478 = getelementptr inbounds double, ptr %11472, i64 %11477
  %11479 = load double, ptr %11478, align 8, !tbaa !11
  %11480 = fadd double %11479, %11471
  store double %11480, ptr %11478, align 8, !tbaa !11
  %11481 = load ptr, ptr %7, align 8, !tbaa !9
  %11482 = load i32, ptr %12, align 4, !tbaa !5
  %11483 = load i32, ptr %8, align 4, !tbaa !5
  %11484 = mul nsw i32 0, %11483
  %11485 = add nsw i32 %11482, %11484
  %11486 = sext i32 %11485 to i64
  %11487 = getelementptr inbounds double, ptr %11481, i64 %11486
  %11488 = load double, ptr %11487, align 8, !tbaa !11
  %11489 = load ptr, ptr %7, align 8, !tbaa !9
  %11490 = load i32, ptr %12, align 4, !tbaa !5
  %11491 = load i32, ptr %8, align 4, !tbaa !5
  %11492 = mul nsw i32 1, %11491
  %11493 = add nsw i32 %11490, %11492
  %11494 = sext i32 %11493 to i64
  %11495 = getelementptr inbounds double, ptr %11489, i64 %11494
  %11496 = load double, ptr %11495, align 8, !tbaa !11
  %11497 = fmul double 0xBC92000000000000, %11496
  %11498 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %11488, double %11497)
  %11499 = load ptr, ptr %7, align 8, !tbaa !9
  %11500 = load i32, ptr %12, align 4, !tbaa !5
  %11501 = load i32, ptr %8, align 4, !tbaa !5
  %11502 = mul nsw i32 2, %11501
  %11503 = add nsw i32 %11500, %11502
  %11504 = sext i32 %11503 to i64
  %11505 = getelementptr inbounds double, ptr %11499, i64 %11504
  %11506 = load double, ptr %11505, align 8, !tbaa !11
  %11507 = call double @llvm.fmuladd.f64(double 0xBC8B800000000001, double %11506, double %11498)
  %11508 = load ptr, ptr %7, align 8, !tbaa !9
  %11509 = load i32, ptr %12, align 4, !tbaa !5
  %11510 = load i32, ptr %8, align 4, !tbaa !5
  %11511 = mul nsw i32 3, %11510
  %11512 = add nsw i32 %11509, %11511
  %11513 = sext i32 %11512 to i64
  %11514 = getelementptr inbounds double, ptr %11508, i64 %11513
  %11515 = load double, ptr %11514, align 8, !tbaa !11
  %11516 = call double @llvm.fmuladd.f64(double 0x3C95C00000000000, double %11515, double %11507)
  %11517 = load ptr, ptr %7, align 8, !tbaa !9
  %11518 = load i32, ptr %12, align 4, !tbaa !5
  %11519 = load i32, ptr %8, align 4, !tbaa !5
  %11520 = mul nsw i32 4, %11519
  %11521 = add nsw i32 %11518, %11520
  %11522 = sext i32 %11521 to i64
  %11523 = getelementptr inbounds double, ptr %11517, i64 %11522
  %11524 = load double, ptr %11523, align 8, !tbaa !11
  %11525 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %11524, double %11516)
  %11526 = load ptr, ptr %7, align 8, !tbaa !9
  %11527 = load i32, ptr %12, align 4, !tbaa !5
  %11528 = load i32, ptr %8, align 4, !tbaa !5
  %11529 = mul nsw i32 5, %11528
  %11530 = add nsw i32 %11527, %11529
  %11531 = sext i32 %11530 to i64
  %11532 = getelementptr inbounds double, ptr %11526, i64 %11531
  %11533 = load double, ptr %11532, align 8, !tbaa !11
  %11534 = call double @llvm.fmuladd.f64(double 0x3CA1800000000000, double %11533, double %11525)
  %11535 = load ptr, ptr %7, align 8, !tbaa !9
  %11536 = load i32, ptr %12, align 4, !tbaa !5
  %11537 = load i32, ptr %8, align 4, !tbaa !5
  %11538 = mul nsw i32 6, %11537
  %11539 = add nsw i32 %11536, %11538
  %11540 = sext i32 %11539 to i64
  %11541 = getelementptr inbounds double, ptr %11535, i64 %11540
  %11542 = load double, ptr %11541, align 8, !tbaa !11
  %11543 = call double @llvm.fmuladd.f64(double 0xBC7E000000000001, double %11542, double %11534)
  %11544 = load ptr, ptr %7, align 8, !tbaa !9
  %11545 = load i32, ptr %12, align 4, !tbaa !5
  %11546 = load i32, ptr %8, align 4, !tbaa !5
  %11547 = mul nsw i32 7, %11546
  %11548 = add nsw i32 %11545, %11547
  %11549 = sext i32 %11548 to i64
  %11550 = getelementptr inbounds double, ptr %11544, i64 %11549
  %11551 = load double, ptr %11550, align 8, !tbaa !11
  %11552 = call double @llvm.fmuladd.f64(double 0x3C74000000000000, double %11551, double %11543)
  %11553 = load ptr, ptr %7, align 8, !tbaa !9
  %11554 = load i32, ptr %12, align 4, !tbaa !5
  %11555 = load i32, ptr %8, align 4, !tbaa !5
  %11556 = mul nsw i32 8, %11555
  %11557 = add nsw i32 %11554, %11556
  %11558 = sext i32 %11557 to i64
  %11559 = getelementptr inbounds double, ptr %11553, i64 %11558
  %11560 = load double, ptr %11559, align 8, !tbaa !11
  %11561 = call double @llvm.fmuladd.f64(double 0x3C7FFFFFFFFFFFFF, double %11560, double %11552)
  %11562 = load ptr, ptr %7, align 8, !tbaa !9
  %11563 = load i32, ptr %12, align 4, !tbaa !5
  %11564 = load i32, ptr %8, align 4, !tbaa !5
  %11565 = mul nsw i32 9, %11564
  %11566 = add nsw i32 %11563, %11565
  %11567 = sext i32 %11566 to i64
  %11568 = getelementptr inbounds double, ptr %11562, i64 %11567
  %11569 = load double, ptr %11568, align 8, !tbaa !11
  %11570 = call double @llvm.fmuladd.f64(double 0xBC94000000000000, double %11569, double %11561)
  %11571 = load ptr, ptr %7, align 8, !tbaa !9
  %11572 = load i32, ptr %12, align 4, !tbaa !5
  %11573 = load i32, ptr %8, align 4, !tbaa !5
  %11574 = mul nsw i32 10, %11573
  %11575 = add nsw i32 %11572, %11574
  %11576 = sext i32 %11575 to i64
  %11577 = getelementptr inbounds double, ptr %11571, i64 %11576
  %11578 = load double, ptr %11577, align 8, !tbaa !11
  %11579 = call double @llvm.fmuladd.f64(double 0xBC98000000000000, double %11578, double %11570)
  %11580 = load ptr, ptr %7, align 8, !tbaa !9
  %11581 = load i32, ptr %12, align 4, !tbaa !5
  %11582 = load i32, ptr %8, align 4, !tbaa !5
  %11583 = mul nsw i32 11, %11582
  %11584 = add nsw i32 %11581, %11583
  %11585 = sext i32 %11584 to i64
  %11586 = getelementptr inbounds double, ptr %11580, i64 %11585
  %11587 = load double, ptr %11586, align 8, !tbaa !11
  %11588 = call double @llvm.fmuladd.f64(double 0x3C70000000000001, double %11587, double %11579)
  %11589 = load ptr, ptr %7, align 8, !tbaa !9
  %11590 = load i32, ptr %12, align 4, !tbaa !5
  %11591 = load i32, ptr %8, align 4, !tbaa !5
  %11592 = mul nsw i32 12, %11591
  %11593 = add nsw i32 %11590, %11592
  %11594 = sext i32 %11593 to i64
  %11595 = getelementptr inbounds double, ptr %11589, i64 %11594
  %11596 = load double, ptr %11595, align 8, !tbaa !11
  %11597 = call double @llvm.fmuladd.f64(double 0xBC97000000000000, double %11596, double %11588)
  %11598 = load ptr, ptr %7, align 8, !tbaa !9
  %11599 = load i32, ptr %12, align 4, !tbaa !5
  %11600 = load i32, ptr %8, align 4, !tbaa !5
  %11601 = mul nsw i32 13, %11600
  %11602 = add nsw i32 %11599, %11601
  %11603 = sext i32 %11602 to i64
  %11604 = getelementptr inbounds double, ptr %11598, i64 %11603
  %11605 = load double, ptr %11604, align 8, !tbaa !11
  %11606 = call double @llvm.fmuladd.f64(double 0x3CAE400000000002, double %11605, double %11597)
  %11607 = load ptr, ptr %7, align 8, !tbaa !9
  %11608 = load i32, ptr %12, align 4, !tbaa !5
  %11609 = load i32, ptr %8, align 4, !tbaa !5
  %11610 = mul nsw i32 14, %11609
  %11611 = add nsw i32 %11608, %11610
  %11612 = sext i32 %11611 to i64
  %11613 = getelementptr inbounds double, ptr %11607, i64 %11612
  %11614 = load double, ptr %11613, align 8, !tbaa !11
  %11615 = call double @llvm.fmuladd.f64(double 0x3C94000000000000, double %11614, double %11606)
  %11616 = load ptr, ptr %7, align 8, !tbaa !9
  %11617 = load i32, ptr %12, align 4, !tbaa !5
  %11618 = load i32, ptr %8, align 4, !tbaa !5
  %11619 = mul nsw i32 15, %11618
  %11620 = add nsw i32 %11617, %11619
  %11621 = sext i32 %11620 to i64
  %11622 = getelementptr inbounds double, ptr %11616, i64 %11621
  %11623 = load double, ptr %11622, align 8, !tbaa !11
  %11624 = call double @llvm.fmuladd.f64(double 0xBC84000000000000, double %11623, double %11615)
  %11625 = load ptr, ptr %7, align 8, !tbaa !9
  %11626 = load i32, ptr %12, align 4, !tbaa !5
  %11627 = load i32, ptr %8, align 4, !tbaa !5
  %11628 = mul nsw i32 16, %11627
  %11629 = add nsw i32 %11626, %11628
  %11630 = sext i32 %11629 to i64
  %11631 = getelementptr inbounds double, ptr %11625, i64 %11630
  %11632 = load double, ptr %11631, align 8, !tbaa !11
  %11633 = call double @llvm.fmuladd.f64(double 0x3CA0800000000001, double %11632, double %11624)
  %11634 = load ptr, ptr %7, align 8, !tbaa !9
  %11635 = load i32, ptr %12, align 4, !tbaa !5
  %11636 = load i32, ptr %8, align 4, !tbaa !5
  %11637 = mul nsw i32 17, %11636
  %11638 = add nsw i32 %11635, %11637
  %11639 = sext i32 %11638 to i64
  %11640 = getelementptr inbounds double, ptr %11634, i64 %11639
  %11641 = load double, ptr %11640, align 8, !tbaa !11
  %11642 = call double @llvm.fmuladd.f64(double 0xBCAA800000000002, double %11641, double %11633)
  %11643 = load ptr, ptr %7, align 8, !tbaa !9
  %11644 = load i32, ptr %12, align 4, !tbaa !5
  %11645 = load i32, ptr %8, align 4, !tbaa !5
  %11646 = mul nsw i32 18, %11645
  %11647 = add nsw i32 %11644, %11646
  %11648 = sext i32 %11647 to i64
  %11649 = getelementptr inbounds double, ptr %11643, i64 %11648
  %11650 = load double, ptr %11649, align 8, !tbaa !11
  %11651 = call double @llvm.fmuladd.f64(double 0x3C98000000000000, double %11650, double %11642)
  %11652 = load ptr, ptr %7, align 8, !tbaa !9
  %11653 = load i32, ptr %12, align 4, !tbaa !5
  %11654 = load i32, ptr %8, align 4, !tbaa !5
  %11655 = mul nsw i32 19, %11654
  %11656 = add nsw i32 %11653, %11655
  %11657 = sext i32 %11656 to i64
  %11658 = getelementptr inbounds double, ptr %11652, i64 %11657
  %11659 = load double, ptr %11658, align 8, !tbaa !11
  %11660 = call double @llvm.fmuladd.f64(double 0xBCA5FFFFFFFFFFFF, double %11659, double %11651)
  %11661 = load ptr, ptr %7, align 8, !tbaa !9
  %11662 = load i32, ptr %12, align 4, !tbaa !5
  %11663 = load i32, ptr %8, align 4, !tbaa !5
  %11664 = mul nsw i32 20, %11663
  %11665 = add nsw i32 %11662, %11664
  %11666 = sext i32 %11665 to i64
  %11667 = getelementptr inbounds double, ptr %11661, i64 %11666
  %11668 = load double, ptr %11667, align 8, !tbaa !11
  %11669 = call double @llvm.fmuladd.f64(double 0x3CA4000000000001, double %11668, double %11660)
  %11670 = load ptr, ptr %7, align 8, !tbaa !9
  %11671 = load i32, ptr %12, align 4, !tbaa !5
  %11672 = load i32, ptr %8, align 4, !tbaa !5
  %11673 = mul nsw i32 21, %11672
  %11674 = add nsw i32 %11671, %11673
  %11675 = sext i32 %11674 to i64
  %11676 = getelementptr inbounds double, ptr %11670, i64 %11675
  %11677 = load double, ptr %11676, align 8, !tbaa !11
  %11678 = call double @llvm.fmuladd.f64(double 0x3C7FFFFFFFFFFFFF, double %11677, double %11669)
  %11679 = load ptr, ptr %7, align 8, !tbaa !9
  %11680 = load i32, ptr %12, align 4, !tbaa !5
  %11681 = load i32, ptr %8, align 4, !tbaa !5
  %11682 = mul nsw i32 22, %11681
  %11683 = add nsw i32 %11680, %11682
  %11684 = sext i32 %11683 to i64
  %11685 = getelementptr inbounds double, ptr %11679, i64 %11684
  %11686 = load double, ptr %11685, align 8, !tbaa !11
  %11687 = call double @llvm.fmuladd.f64(double 0x3C84000000000000, double %11686, double %11678)
  %11688 = load ptr, ptr %7, align 8, !tbaa !9
  %11689 = load i32, ptr %12, align 4, !tbaa !5
  %11690 = load i32, ptr %8, align 4, !tbaa !5
  %11691 = mul nsw i32 23, %11690
  %11692 = add nsw i32 %11689, %11691
  %11693 = sext i32 %11692 to i64
  %11694 = getelementptr inbounds double, ptr %11688, i64 %11693
  %11695 = load double, ptr %11694, align 8, !tbaa !11
  %11696 = call double @llvm.fmuladd.f64(double 0xBC86000000000001, double %11695, double %11687)
  %11697 = load ptr, ptr %7, align 8, !tbaa !9
  %11698 = load i32, ptr %12, align 4, !tbaa !5
  %11699 = load i32, ptr %8, align 4, !tbaa !5
  %11700 = mul nsw i32 24, %11699
  %11701 = add nsw i32 %11698, %11700
  %11702 = sext i32 %11701 to i64
  %11703 = getelementptr inbounds double, ptr %11697, i64 %11702
  %11704 = load double, ptr %11703, align 8, !tbaa !11
  %11705 = call double @llvm.fmuladd.f64(double 0xBC94000000000000, double %11704, double %11696)
  %11706 = load ptr, ptr %7, align 8, !tbaa !9
  %11707 = load i32, ptr %12, align 4, !tbaa !5
  %11708 = load i32, ptr %8, align 4, !tbaa !5
  %11709 = mul nsw i32 25, %11708
  %11710 = add nsw i32 %11707, %11709
  %11711 = sext i32 %11710 to i64
  %11712 = getelementptr inbounds double, ptr %11706, i64 %11711
  %11713 = load double, ptr %11712, align 8, !tbaa !11
  %11714 = call double @llvm.fmuladd.f64(double 0x3C60000000000000, double %11713, double %11705)
  %11715 = load ptr, ptr %7, align 8, !tbaa !9
  %11716 = load i32, ptr %12, align 4, !tbaa !5
  %11717 = load i32, ptr %8, align 4, !tbaa !5
  %11718 = mul nsw i32 26, %11717
  %11719 = add nsw i32 %11716, %11718
  %11720 = sext i32 %11719 to i64
  %11721 = getelementptr inbounds double, ptr %11715, i64 %11720
  %11722 = load double, ptr %11721, align 8, !tbaa !11
  %11723 = call double @llvm.fmuladd.f64(double 0x3C7C000000000000, double %11722, double %11714)
  %11724 = load ptr, ptr %7, align 8, !tbaa !9
  %11725 = load i32, ptr %12, align 4, !tbaa !5
  %11726 = load i32, ptr %8, align 4, !tbaa !5
  %11727 = mul nsw i32 27, %11726
  %11728 = add nsw i32 %11725, %11727
  %11729 = sext i32 %11728 to i64
  %11730 = getelementptr inbounds double, ptr %11724, i64 %11729
  %11731 = load double, ptr %11730, align 8, !tbaa !11
  %11732 = call double @llvm.fmuladd.f64(double 0xBC97000000000000, double %11731, double %11723)
  %11733 = load ptr, ptr %7, align 8, !tbaa !9
  %11734 = load i32, ptr %12, align 4, !tbaa !5
  %11735 = load i32, ptr %8, align 4, !tbaa !5
  %11736 = mul nsw i32 28, %11735
  %11737 = add nsw i32 %11734, %11736
  %11738 = sext i32 %11737 to i64
  %11739 = getelementptr inbounds double, ptr %11733, i64 %11738
  %11740 = load double, ptr %11739, align 8, !tbaa !11
  %11741 = call double @llvm.fmuladd.f64(double 0x3CA2000000000000, double %11740, double %11732)
  %11742 = load ptr, ptr %7, align 8, !tbaa !9
  %11743 = load i32, ptr %12, align 4, !tbaa !5
  %11744 = load i32, ptr %8, align 4, !tbaa !5
  %11745 = mul nsw i32 29, %11744
  %11746 = add nsw i32 %11743, %11745
  %11747 = sext i32 %11746 to i64
  %11748 = getelementptr inbounds double, ptr %11742, i64 %11747
  %11749 = load double, ptr %11748, align 8, !tbaa !11
  %11750 = call double @llvm.fmuladd.f64(double 0x3CA2000000000000, double %11749, double %11741)
  %11751 = load ptr, ptr %7, align 8, !tbaa !9
  %11752 = load i32, ptr %12, align 4, !tbaa !5
  %11753 = load i32, ptr %8, align 4, !tbaa !5
  %11754 = mul nsw i32 30, %11753
  %11755 = add nsw i32 %11752, %11754
  %11756 = sext i32 %11755 to i64
  %11757 = getelementptr inbounds double, ptr %11751, i64 %11756
  %11758 = load double, ptr %11757, align 8, !tbaa !11
  %11759 = call double @llvm.fmuladd.f64(double 0xBF83152016E0EC4E, double %11758, double %11750)
  %11760 = load ptr, ptr %7, align 8, !tbaa !9
  %11761 = load i32, ptr %12, align 4, !tbaa !5
  %11762 = load i32, ptr %8, align 4, !tbaa !5
  %11763 = mul nsw i32 31, %11762
  %11764 = add nsw i32 %11761, %11763
  %11765 = sext i32 %11764 to i64
  %11766 = getelementptr inbounds double, ptr %11760, i64 %11765
  %11767 = load double, ptr %11766, align 8, !tbaa !11
  %11768 = call double @llvm.fmuladd.f64(double 0xBFB5B58B4F03B19E, double %11767, double %11759)
  %11769 = load ptr, ptr %7, align 8, !tbaa !9
  %11770 = load i32, ptr %12, align 4, !tbaa !5
  %11771 = load i32, ptr %8, align 4, !tbaa !5
  %11772 = mul nsw i32 32, %11771
  %11773 = add nsw i32 %11770, %11772
  %11774 = sext i32 %11773 to i64
  %11775 = getelementptr inbounds double, ptr %11769, i64 %11774
  %11776 = load double, ptr %11775, align 8, !tbaa !11
  %11777 = call double @llvm.fmuladd.f64(double 0x3F938CE4890DB2FC, double %11776, double %11768)
  %11778 = load ptr, ptr %7, align 8, !tbaa !9
  %11779 = load i32, ptr %12, align 4, !tbaa !5
  %11780 = load i32, ptr %8, align 4, !tbaa !5
  %11781 = mul nsw i32 33, %11780
  %11782 = add nsw i32 %11779, %11781
  %11783 = sext i32 %11782 to i64
  %11784 = getelementptr inbounds double, ptr %11778, i64 %11783
  %11785 = load double, ptr %11784, align 8, !tbaa !11
  %11786 = call double @llvm.fmuladd.f64(double 0x3FF4EC1BB3FDC612, double %11785, double %11777)
  %11787 = load ptr, ptr %7, align 8, !tbaa !9
  %11788 = load i32, ptr %12, align 4, !tbaa !5
  %11789 = load i32, ptr %8, align 4, !tbaa !5
  %11790 = mul nsw i32 34, %11789
  %11791 = add nsw i32 %11788, %11790
  %11792 = sext i32 %11791 to i64
  %11793 = getelementptr inbounds double, ptr %11787, i64 %11792
  %11794 = load double, ptr %11793, align 8, !tbaa !11
  %11795 = call double @llvm.fmuladd.f64(double 0x3F85E50BB681A437, double %11794, double %11786)
  %11796 = load ptr, ptr %7, align 8, !tbaa !9
  %11797 = load i32, ptr %12, align 4, !tbaa !5
  %11798 = load i32, ptr %8, align 4, !tbaa !5
  %11799 = mul nsw i32 35, %11798
  %11800 = add nsw i32 %11797, %11799
  %11801 = sext i32 %11800 to i64
  %11802 = getelementptr inbounds double, ptr %11796, i64 %11801
  %11803 = load double, ptr %11802, align 8, !tbaa !11
  %11804 = call double @llvm.fmuladd.f64(double 0xBFE5679E70A60657, double %11803, double %11795)
  %11805 = load ptr, ptr %7, align 8, !tbaa !9
  %11806 = load i32, ptr %12, align 4, !tbaa !5
  %11807 = load i32, ptr %8, align 4, !tbaa !5
  %11808 = mul nsw i32 36, %11807
  %11809 = add nsw i32 %11806, %11808
  %11810 = sext i32 %11809 to i64
  %11811 = getelementptr inbounds double, ptr %11805, i64 %11810
  %11812 = load double, ptr %11811, align 8, !tbaa !11
  %11813 = call double @llvm.fmuladd.f64(double 0x3FCA50C41AB7A337, double %11812, double %11804)
  %11814 = load ptr, ptr %7, align 8, !tbaa !9
  %11815 = load i32, ptr %12, align 4, !tbaa !5
  %11816 = load i32, ptr %8, align 4, !tbaa !5
  %11817 = mul nsw i32 37, %11816
  %11818 = add nsw i32 %11815, %11817
  %11819 = sext i32 %11818 to i64
  %11820 = getelementptr inbounds double, ptr %11814, i64 %11819
  %11821 = load double, ptr %11820, align 8, !tbaa !11
  %11822 = call double @llvm.fmuladd.f64(double 0xBFB49217631F5952, double %11821, double %11813)
  %11823 = load ptr, ptr %7, align 8, !tbaa !9
  %11824 = load i32, ptr %12, align 4, !tbaa !5
  %11825 = load i32, ptr %8, align 4, !tbaa !5
  %11826 = mul nsw i32 38, %11825
  %11827 = add nsw i32 %11824, %11826
  %11828 = sext i32 %11827 to i64
  %11829 = getelementptr inbounds double, ptr %11823, i64 %11828
  %11830 = load double, ptr %11829, align 8, !tbaa !11
  %11831 = call double @llvm.fmuladd.f64(double 0x3FD417DEBFC17B15, double %11830, double %11822)
  %11832 = load ptr, ptr %7, align 8, !tbaa !9
  %11833 = load i32, ptr %12, align 4, !tbaa !5
  %11834 = load i32, ptr %8, align 4, !tbaa !5
  %11835 = mul nsw i32 39, %11834
  %11836 = add nsw i32 %11833, %11835
  %11837 = sext i32 %11836 to i64
  %11838 = getelementptr inbounds double, ptr %11832, i64 %11837
  %11839 = load double, ptr %11838, align 8, !tbaa !11
  %11840 = call double @llvm.fmuladd.f64(double 0xBF8BDAF699AECF15, double %11839, double %11831)
  store double %11840, ptr %11, align 8, !tbaa !11
  %11841 = load double, ptr %11, align 8, !tbaa !11
  %11842 = load ptr, ptr %9, align 8, !tbaa !9
  %11843 = load i32, ptr %12, align 4, !tbaa !5
  %11844 = load i32, ptr %10, align 4, !tbaa !5
  %11845 = mul nsw i32 32, %11844
  %11846 = add nsw i32 %11843, %11845
  %11847 = sext i32 %11846 to i64
  %11848 = getelementptr inbounds double, ptr %11842, i64 %11847
  %11849 = load double, ptr %11848, align 8, !tbaa !11
  %11850 = fadd double %11849, %11841
  store double %11850, ptr %11848, align 8, !tbaa !11
  %11851 = load ptr, ptr %7, align 8, !tbaa !9
  %11852 = load i32, ptr %12, align 4, !tbaa !5
  %11853 = load i32, ptr %8, align 4, !tbaa !5
  %11854 = mul nsw i32 0, %11853
  %11855 = add nsw i32 %11852, %11854
  %11856 = sext i32 %11855 to i64
  %11857 = getelementptr inbounds double, ptr %11851, i64 %11856
  %11858 = load double, ptr %11857, align 8, !tbaa !11
  %11859 = load ptr, ptr %7, align 8, !tbaa !9
  %11860 = load i32, ptr %12, align 4, !tbaa !5
  %11861 = load i32, ptr %8, align 4, !tbaa !5
  %11862 = mul nsw i32 1, %11861
  %11863 = add nsw i32 %11860, %11862
  %11864 = sext i32 %11863 to i64
  %11865 = getelementptr inbounds double, ptr %11859, i64 %11864
  %11866 = load double, ptr %11865, align 8, !tbaa !11
  %11867 = fmul double 0xBC78000000000002, %11866
  %11868 = call double @llvm.fmuladd.f64(double 0x3CAF800000000000, double %11858, double %11867)
  %11869 = load ptr, ptr %7, align 8, !tbaa !9
  %11870 = load i32, ptr %12, align 4, !tbaa !5
  %11871 = load i32, ptr %8, align 4, !tbaa !5
  %11872 = mul nsw i32 2, %11871
  %11873 = add nsw i32 %11870, %11872
  %11874 = sext i32 %11873 to i64
  %11875 = getelementptr inbounds double, ptr %11869, i64 %11874
  %11876 = load double, ptr %11875, align 8, !tbaa !11
  %11877 = call double @llvm.fmuladd.f64(double 0xBCA5200000000000, double %11876, double %11868)
  %11878 = load ptr, ptr %7, align 8, !tbaa !9
  %11879 = load i32, ptr %12, align 4, !tbaa !5
  %11880 = load i32, ptr %8, align 4, !tbaa !5
  %11881 = mul nsw i32 3, %11880
  %11882 = add nsw i32 %11879, %11881
  %11883 = sext i32 %11882 to i64
  %11884 = getelementptr inbounds double, ptr %11878, i64 %11883
  %11885 = load double, ptr %11884, align 8, !tbaa !11
  %11886 = call double @llvm.fmuladd.f64(double 0x3CA21FFFFFFFFFFF, double %11885, double %11877)
  %11887 = load ptr, ptr %7, align 8, !tbaa !9
  %11888 = load i32, ptr %12, align 4, !tbaa !5
  %11889 = load i32, ptr %8, align 4, !tbaa !5
  %11890 = mul nsw i32 4, %11889
  %11891 = add nsw i32 %11888, %11890
  %11892 = sext i32 %11891 to i64
  %11893 = getelementptr inbounds double, ptr %11887, i64 %11892
  %11894 = load double, ptr %11893, align 8, !tbaa !11
  %11895 = call double @llvm.fmuladd.f64(double 0x3C70000000000001, double %11894, double %11886)
  %11896 = load ptr, ptr %7, align 8, !tbaa !9
  %11897 = load i32, ptr %12, align 4, !tbaa !5
  %11898 = load i32, ptr %8, align 4, !tbaa !5
  %11899 = mul nsw i32 5, %11898
  %11900 = add nsw i32 %11897, %11899
  %11901 = sext i32 %11900 to i64
  %11902 = getelementptr inbounds double, ptr %11896, i64 %11901
  %11903 = load double, ptr %11902, align 8, !tbaa !11
  %11904 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %11903, double %11895)
  %11905 = load ptr, ptr %7, align 8, !tbaa !9
  %11906 = load i32, ptr %12, align 4, !tbaa !5
  %11907 = load i32, ptr %8, align 4, !tbaa !5
  %11908 = mul nsw i32 6, %11907
  %11909 = add nsw i32 %11906, %11908
  %11910 = sext i32 %11909 to i64
  %11911 = getelementptr inbounds double, ptr %11905, i64 %11910
  %11912 = load double, ptr %11911, align 8, !tbaa !11
  %11913 = call double @llvm.fmuladd.f64(double 0xBCB1A00000000000, double %11912, double %11904)
  %11914 = load ptr, ptr %7, align 8, !tbaa !9
  %11915 = load i32, ptr %12, align 4, !tbaa !5
  %11916 = load i32, ptr %8, align 4, !tbaa !5
  %11917 = mul nsw i32 7, %11916
  %11918 = add nsw i32 %11915, %11917
  %11919 = sext i32 %11918 to i64
  %11920 = getelementptr inbounds double, ptr %11914, i64 %11919
  %11921 = load double, ptr %11920, align 8, !tbaa !11
  %11922 = call double @llvm.fmuladd.f64(double 0xBC64000000000000, double %11921, double %11913)
  %11923 = load ptr, ptr %7, align 8, !tbaa !9
  %11924 = load i32, ptr %12, align 4, !tbaa !5
  %11925 = load i32, ptr %8, align 4, !tbaa !5
  %11926 = mul nsw i32 8, %11925
  %11927 = add nsw i32 %11924, %11926
  %11928 = sext i32 %11927 to i64
  %11929 = getelementptr inbounds double, ptr %11923, i64 %11928
  %11930 = load double, ptr %11929, align 8, !tbaa !11
  %11931 = call double @llvm.fmuladd.f64(double 0x3CA2000000000000, double %11930, double %11922)
  %11932 = load ptr, ptr %7, align 8, !tbaa !9
  %11933 = load i32, ptr %12, align 4, !tbaa !5
  %11934 = load i32, ptr %8, align 4, !tbaa !5
  %11935 = mul nsw i32 9, %11934
  %11936 = add nsw i32 %11933, %11935
  %11937 = sext i32 %11936 to i64
  %11938 = getelementptr inbounds double, ptr %11932, i64 %11937
  %11939 = load double, ptr %11938, align 8, !tbaa !11
  %11940 = call double @llvm.fmuladd.f64(double 0x3C88000000000000, double %11939, double %11931)
  %11941 = load ptr, ptr %7, align 8, !tbaa !9
  %11942 = load i32, ptr %12, align 4, !tbaa !5
  %11943 = load i32, ptr %8, align 4, !tbaa !5
  %11944 = mul nsw i32 10, %11943
  %11945 = add nsw i32 %11942, %11944
  %11946 = sext i32 %11945 to i64
  %11947 = getelementptr inbounds double, ptr %11941, i64 %11946
  %11948 = load double, ptr %11947, align 8, !tbaa !11
  %11949 = call double @llvm.fmuladd.f64(double 0xBCA2000000000000, double %11948, double %11940)
  %11950 = load ptr, ptr %7, align 8, !tbaa !9
  %11951 = load i32, ptr %12, align 4, !tbaa !5
  %11952 = load i32, ptr %8, align 4, !tbaa !5
  %11953 = mul nsw i32 11, %11952
  %11954 = add nsw i32 %11951, %11953
  %11955 = sext i32 %11954 to i64
  %11956 = getelementptr inbounds double, ptr %11950, i64 %11955
  %11957 = load double, ptr %11956, align 8, !tbaa !11
  %11958 = call double @llvm.fmuladd.f64(double 0x3C7FFFFFFFFFFFFF, double %11957, double %11949)
  %11959 = load ptr, ptr %7, align 8, !tbaa !9
  %11960 = load i32, ptr %12, align 4, !tbaa !5
  %11961 = load i32, ptr %8, align 4, !tbaa !5
  %11962 = mul nsw i32 12, %11961
  %11963 = add nsw i32 %11960, %11962
  %11964 = sext i32 %11963 to i64
  %11965 = getelementptr inbounds double, ptr %11959, i64 %11964
  %11966 = load double, ptr %11965, align 8, !tbaa !11
  %11967 = call double @llvm.fmuladd.f64(double 0xBC67FFFFFFFFFFFE, double %11966, double %11958)
  %11968 = load ptr, ptr %7, align 8, !tbaa !9
  %11969 = load i32, ptr %12, align 4, !tbaa !5
  %11970 = load i32, ptr %8, align 4, !tbaa !5
  %11971 = mul nsw i32 13, %11970
  %11972 = add nsw i32 %11969, %11971
  %11973 = sext i32 %11972 to i64
  %11974 = getelementptr inbounds double, ptr %11968, i64 %11973
  %11975 = load double, ptr %11974, align 8, !tbaa !11
  %11976 = call double @llvm.fmuladd.f64(double 0xBC6C000000000000, double %11975, double %11967)
  %11977 = load ptr, ptr %7, align 8, !tbaa !9
  %11978 = load i32, ptr %12, align 4, !tbaa !5
  %11979 = load i32, ptr %8, align 4, !tbaa !5
  %11980 = mul nsw i32 14, %11979
  %11981 = add nsw i32 %11978, %11980
  %11982 = sext i32 %11981 to i64
  %11983 = getelementptr inbounds double, ptr %11977, i64 %11982
  %11984 = load double, ptr %11983, align 8, !tbaa !11
  %11985 = call double @llvm.fmuladd.f64(double 0x3C70000000000001, double %11984, double %11976)
  %11986 = load ptr, ptr %7, align 8, !tbaa !9
  %11987 = load i32, ptr %12, align 4, !tbaa !5
  %11988 = load i32, ptr %8, align 4, !tbaa !5
  %11989 = mul nsw i32 15, %11988
  %11990 = add nsw i32 %11987, %11989
  %11991 = sext i32 %11990 to i64
  %11992 = getelementptr inbounds double, ptr %11986, i64 %11991
  %11993 = load double, ptr %11992, align 8, !tbaa !11
  %11994 = call double @llvm.fmuladd.f64(double 0xBCA2FFFFFFFFFFFE, double %11993, double %11985)
  %11995 = load ptr, ptr %7, align 8, !tbaa !9
  %11996 = load i32, ptr %12, align 4, !tbaa !5
  %11997 = load i32, ptr %8, align 4, !tbaa !5
  %11998 = mul nsw i32 16, %11997
  %11999 = add nsw i32 %11996, %11998
  %12000 = sext i32 %11999 to i64
  %12001 = getelementptr inbounds double, ptr %11995, i64 %12000
  %12002 = load double, ptr %12001, align 8, !tbaa !11
  %12003 = call double @llvm.fmuladd.f64(double 0xBC94000000000000, double %12002, double %11994)
  %12004 = load ptr, ptr %7, align 8, !tbaa !9
  %12005 = load i32, ptr %12, align 4, !tbaa !5
  %12006 = load i32, ptr %8, align 4, !tbaa !5
  %12007 = mul nsw i32 17, %12006
  %12008 = add nsw i32 %12005, %12007
  %12009 = sext i32 %12008 to i64
  %12010 = getelementptr inbounds double, ptr %12004, i64 %12009
  %12011 = load double, ptr %12010, align 8, !tbaa !11
  %12012 = call double @llvm.fmuladd.f64(double 0xBC7C000000000000, double %12011, double %12003)
  %12013 = load ptr, ptr %7, align 8, !tbaa !9
  %12014 = load i32, ptr %12, align 4, !tbaa !5
  %12015 = load i32, ptr %8, align 4, !tbaa !5
  %12016 = mul nsw i32 18, %12015
  %12017 = add nsw i32 %12014, %12016
  %12018 = sext i32 %12017 to i64
  %12019 = getelementptr inbounds double, ptr %12013, i64 %12018
  %12020 = load double, ptr %12019, align 8, !tbaa !11
  %12021 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %12020, double %12012)
  %12022 = load ptr, ptr %7, align 8, !tbaa !9
  %12023 = load i32, ptr %12, align 4, !tbaa !5
  %12024 = load i32, ptr %8, align 4, !tbaa !5
  %12025 = mul nsw i32 20, %12024
  %12026 = add nsw i32 %12023, %12025
  %12027 = sext i32 %12026 to i64
  %12028 = getelementptr inbounds double, ptr %12022, i64 %12027
  %12029 = load double, ptr %12028, align 8, !tbaa !11
  %12030 = call double @llvm.fmuladd.f64(double 0x3CB9000000000000, double %12029, double %12021)
  %12031 = load ptr, ptr %7, align 8, !tbaa !9
  %12032 = load i32, ptr %12, align 4, !tbaa !5
  %12033 = load i32, ptr %8, align 4, !tbaa !5
  %12034 = mul nsw i32 22, %12033
  %12035 = add nsw i32 %12032, %12034
  %12036 = sext i32 %12035 to i64
  %12037 = getelementptr inbounds double, ptr %12031, i64 %12036
  %12038 = load double, ptr %12037, align 8, !tbaa !11
  %12039 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %12038, double %12030)
  %12040 = load ptr, ptr %7, align 8, !tbaa !9
  %12041 = load i32, ptr %12, align 4, !tbaa !5
  %12042 = load i32, ptr %8, align 4, !tbaa !5
  %12043 = mul nsw i32 23, %12042
  %12044 = add nsw i32 %12041, %12043
  %12045 = sext i32 %12044 to i64
  %12046 = getelementptr inbounds double, ptr %12040, i64 %12045
  %12047 = load double, ptr %12046, align 8, !tbaa !11
  %12048 = call double @llvm.fmuladd.f64(double 0xBC82000000000000, double %12047, double %12039)
  %12049 = load ptr, ptr %7, align 8, !tbaa !9
  %12050 = load i32, ptr %12, align 4, !tbaa !5
  %12051 = load i32, ptr %8, align 4, !tbaa !5
  %12052 = mul nsw i32 24, %12051
  %12053 = add nsw i32 %12050, %12052
  %12054 = sext i32 %12053 to i64
  %12055 = getelementptr inbounds double, ptr %12049, i64 %12054
  %12056 = load double, ptr %12055, align 8, !tbaa !11
  %12057 = call double @llvm.fmuladd.f64(double 0xBC70000000000001, double %12056, double %12048)
  %12058 = load ptr, ptr %7, align 8, !tbaa !9
  %12059 = load i32, ptr %12, align 4, !tbaa !5
  %12060 = load i32, ptr %8, align 4, !tbaa !5
  %12061 = mul nsw i32 25, %12060
  %12062 = add nsw i32 %12059, %12061
  %12063 = sext i32 %12062 to i64
  %12064 = getelementptr inbounds double, ptr %12058, i64 %12063
  %12065 = load double, ptr %12064, align 8, !tbaa !11
  %12066 = call double @llvm.fmuladd.f64(double 0xBC70000000000001, double %12065, double %12057)
  %12067 = load ptr, ptr %7, align 8, !tbaa !9
  %12068 = load i32, ptr %12, align 4, !tbaa !5
  %12069 = load i32, ptr %8, align 4, !tbaa !5
  %12070 = mul nsw i32 26, %12069
  %12071 = add nsw i32 %12068, %12070
  %12072 = sext i32 %12071 to i64
  %12073 = getelementptr inbounds double, ptr %12067, i64 %12072
  %12074 = load double, ptr %12073, align 8, !tbaa !11
  %12075 = call double @llvm.fmuladd.f64(double 0x3CBDC00000000000, double %12074, double %12066)
  %12076 = load ptr, ptr %7, align 8, !tbaa !9
  %12077 = load i32, ptr %12, align 4, !tbaa !5
  %12078 = load i32, ptr %8, align 4, !tbaa !5
  %12079 = mul nsw i32 27, %12078
  %12080 = add nsw i32 %12077, %12079
  %12081 = sext i32 %12080 to i64
  %12082 = getelementptr inbounds double, ptr %12076, i64 %12081
  %12083 = load double, ptr %12082, align 8, !tbaa !11
  %12084 = call double @llvm.fmuladd.f64(double 0xBCA8800000000000, double %12083, double %12075)
  %12085 = load ptr, ptr %7, align 8, !tbaa !9
  %12086 = load i32, ptr %12, align 4, !tbaa !5
  %12087 = load i32, ptr %8, align 4, !tbaa !5
  %12088 = mul nsw i32 28, %12087
  %12089 = add nsw i32 %12086, %12088
  %12090 = sext i32 %12089 to i64
  %12091 = getelementptr inbounds double, ptr %12085, i64 %12090
  %12092 = load double, ptr %12091, align 8, !tbaa !11
  %12093 = call double @llvm.fmuladd.f64(double 0x3C88000000000000, double %12092, double %12084)
  %12094 = load ptr, ptr %7, align 8, !tbaa !9
  %12095 = load i32, ptr %12, align 4, !tbaa !5
  %12096 = load i32, ptr %8, align 4, !tbaa !5
  %12097 = mul nsw i32 29, %12096
  %12098 = add nsw i32 %12095, %12097
  %12099 = sext i32 %12098 to i64
  %12100 = getelementptr inbounds double, ptr %12094, i64 %12099
  %12101 = load double, ptr %12100, align 8, !tbaa !11
  %12102 = call double @llvm.fmuladd.f64(double 0xBC70000000000001, double %12101, double %12093)
  %12103 = load ptr, ptr %7, align 8, !tbaa !9
  %12104 = load i32, ptr %12, align 4, !tbaa !5
  %12105 = load i32, ptr %8, align 4, !tbaa !5
  %12106 = mul nsw i32 30, %12105
  %12107 = add nsw i32 %12104, %12106
  %12108 = sext i32 %12107 to i64
  %12109 = getelementptr inbounds double, ptr %12103, i64 %12108
  %12110 = load double, ptr %12109, align 8, !tbaa !11
  %12111 = call double @llvm.fmuladd.f64(double 0xBFE333710B32A29A, double %12110, double %12102)
  %12112 = load ptr, ptr %7, align 8, !tbaa !9
  %12113 = load i32, ptr %12, align 4, !tbaa !5
  %12114 = load i32, ptr %8, align 4, !tbaa !5
  %12115 = mul nsw i32 31, %12114
  %12116 = add nsw i32 %12113, %12115
  %12117 = sext i32 %12116 to i64
  %12118 = getelementptr inbounds double, ptr %12112, i64 %12117
  %12119 = load double, ptr %12118, align 8, !tbaa !11
  %12120 = call double @llvm.fmuladd.f64(double 0xBFBEED13A9F0D8FA, double %12119, double %12111)
  %12121 = load ptr, ptr %7, align 8, !tbaa !9
  %12122 = load i32, ptr %12, align 4, !tbaa !5
  %12123 = load i32, ptr %8, align 4, !tbaa !5
  %12124 = mul nsw i32 32, %12123
  %12125 = add nsw i32 %12122, %12124
  %12126 = sext i32 %12125 to i64
  %12127 = getelementptr inbounds double, ptr %12121, i64 %12126
  %12128 = load double, ptr %12127, align 8, !tbaa !11
  %12129 = call double @llvm.fmuladd.f64(double 0xBFA352D4DB969C0E, double %12128, double %12120)
  %12130 = load ptr, ptr %7, align 8, !tbaa !9
  %12131 = load i32, ptr %12, align 4, !tbaa !5
  %12132 = load i32, ptr %8, align 4, !tbaa !5
  %12133 = mul nsw i32 33, %12132
  %12134 = add nsw i32 %12131, %12133
  %12135 = sext i32 %12134 to i64
  %12136 = getelementptr inbounds double, ptr %12130, i64 %12135
  %12137 = load double, ptr %12136, align 8, !tbaa !11
  %12138 = call double @llvm.fmuladd.f64(double 0x3FA87D7643548531, double %12137, double %12129)
  %12139 = load ptr, ptr %7, align 8, !tbaa !9
  %12140 = load i32, ptr %12, align 4, !tbaa !5
  %12141 = load i32, ptr %8, align 4, !tbaa !5
  %12142 = mul nsw i32 34, %12141
  %12143 = add nsw i32 %12140, %12142
  %12144 = sext i32 %12143 to i64
  %12145 = getelementptr inbounds double, ptr %12139, i64 %12144
  %12146 = load double, ptr %12145, align 8, !tbaa !11
  %12147 = call double @llvm.fmuladd.f64(double 0x3F9854E0ADA34BB5, double %12146, double %12138)
  %12148 = load ptr, ptr %7, align 8, !tbaa !9
  %12149 = load i32, ptr %12, align 4, !tbaa !5
  %12150 = load i32, ptr %8, align 4, !tbaa !5
  %12151 = mul nsw i32 35, %12150
  %12152 = add nsw i32 %12149, %12151
  %12153 = sext i32 %12152 to i64
  %12154 = getelementptr inbounds double, ptr %12148, i64 %12153
  %12155 = load double, ptr %12154, align 8, !tbaa !11
  %12156 = call double @llvm.fmuladd.f64(double 0xBFD41C0D131D4295, double %12155, double %12147)
  %12157 = load ptr, ptr %7, align 8, !tbaa !9
  %12158 = load i32, ptr %12, align 4, !tbaa !5
  %12159 = load i32, ptr %8, align 4, !tbaa !5
  %12160 = mul nsw i32 36, %12159
  %12161 = add nsw i32 %12158, %12160
  %12162 = sext i32 %12161 to i64
  %12163 = getelementptr inbounds double, ptr %12157, i64 %12162
  %12164 = load double, ptr %12163, align 8, !tbaa !11
  %12165 = call double @llvm.fmuladd.f64(double 0x3FF670C5F1F4C92E, double %12164, double %12156)
  %12166 = load ptr, ptr %7, align 8, !tbaa !9
  %12167 = load i32, ptr %12, align 4, !tbaa !5
  %12168 = load i32, ptr %8, align 4, !tbaa !5
  %12169 = mul nsw i32 37, %12168
  %12170 = add nsw i32 %12167, %12169
  %12171 = sext i32 %12170 to i64
  %12172 = getelementptr inbounds double, ptr %12166, i64 %12171
  %12173 = load double, ptr %12172, align 8, !tbaa !11
  %12174 = call double @llvm.fmuladd.f64(double 0x3FC36A9134CD3C58, double %12173, double %12165)
  %12175 = load ptr, ptr %7, align 8, !tbaa !9
  %12176 = load i32, ptr %12, align 4, !tbaa !5
  %12177 = load i32, ptr %8, align 4, !tbaa !5
  %12178 = mul nsw i32 38, %12177
  %12179 = add nsw i32 %12176, %12178
  %12180 = sext i32 %12179 to i64
  %12181 = getelementptr inbounds double, ptr %12175, i64 %12180
  %12182 = load double, ptr %12181, align 8, !tbaa !11
  %12183 = call double @llvm.fmuladd.f64(double 0x3FD35DAE88CBA648, double %12182, double %12174)
  %12184 = load ptr, ptr %7, align 8, !tbaa !9
  %12185 = load i32, ptr %12, align 4, !tbaa !5
  %12186 = load i32, ptr %8, align 4, !tbaa !5
  %12187 = mul nsw i32 39, %12186
  %12188 = add nsw i32 %12185, %12187
  %12189 = sext i32 %12188 to i64
  %12190 = getelementptr inbounds double, ptr %12184, i64 %12189
  %12191 = load double, ptr %12190, align 8, !tbaa !11
  %12192 = call double @llvm.fmuladd.f64(double 0x3FC27B05E24EC5F8, double %12191, double %12183)
  store double %12192, ptr %11, align 8, !tbaa !11
  %12193 = load double, ptr %11, align 8, !tbaa !11
  %12194 = load ptr, ptr %9, align 8, !tbaa !9
  %12195 = load i32, ptr %12, align 4, !tbaa !5
  %12196 = load i32, ptr %10, align 4, !tbaa !5
  %12197 = mul nsw i32 33, %12196
  %12198 = add nsw i32 %12195, %12197
  %12199 = sext i32 %12198 to i64
  %12200 = getelementptr inbounds double, ptr %12194, i64 %12199
  %12201 = load double, ptr %12200, align 8, !tbaa !11
  %12202 = fadd double %12201, %12193
  store double %12202, ptr %12200, align 8, !tbaa !11
  %12203 = load ptr, ptr %7, align 8, !tbaa !9
  %12204 = load i32, ptr %12, align 4, !tbaa !5
  %12205 = load i32, ptr %8, align 4, !tbaa !5
  %12206 = mul nsw i32 0, %12205
  %12207 = add nsw i32 %12204, %12206
  %12208 = sext i32 %12207 to i64
  %12209 = getelementptr inbounds double, ptr %12203, i64 %12208
  %12210 = load double, ptr %12209, align 8, !tbaa !11
  %12211 = load ptr, ptr %7, align 8, !tbaa !9
  %12212 = load i32, ptr %12, align 4, !tbaa !5
  %12213 = load i32, ptr %8, align 4, !tbaa !5
  %12214 = mul nsw i32 1, %12213
  %12215 = add nsw i32 %12212, %12214
  %12216 = sext i32 %12215 to i64
  %12217 = getelementptr inbounds double, ptr %12211, i64 %12216
  %12218 = load double, ptr %12217, align 8, !tbaa !11
  %12219 = fmul double 0x3CA0000000000002, %12218
  %12220 = call double @llvm.fmuladd.f64(double 0xBC89FFFFFFFFFFFF, double %12210, double %12219)
  %12221 = load ptr, ptr %7, align 8, !tbaa !9
  %12222 = load i32, ptr %12, align 4, !tbaa !5
  %12223 = load i32, ptr %8, align 4, !tbaa !5
  %12224 = mul nsw i32 2, %12223
  %12225 = add nsw i32 %12222, %12224
  %12226 = sext i32 %12225 to i64
  %12227 = getelementptr inbounds double, ptr %12221, i64 %12226
  %12228 = load double, ptr %12227, align 8, !tbaa !11
  %12229 = call double @llvm.fmuladd.f64(double 0xBCA4A00000000001, double %12228, double %12220)
  %12230 = load ptr, ptr %7, align 8, !tbaa !9
  %12231 = load i32, ptr %12, align 4, !tbaa !5
  %12232 = load i32, ptr %8, align 4, !tbaa !5
  %12233 = mul nsw i32 3, %12232
  %12234 = add nsw i32 %12231, %12233
  %12235 = sext i32 %12234 to i64
  %12236 = getelementptr inbounds double, ptr %12230, i64 %12235
  %12237 = load double, ptr %12236, align 8, !tbaa !11
  %12238 = call double @llvm.fmuladd.f64(double 0x3C8B800000000001, double %12237, double %12229)
  %12239 = load ptr, ptr %7, align 8, !tbaa !9
  %12240 = load i32, ptr %12, align 4, !tbaa !5
  %12241 = load i32, ptr %8, align 4, !tbaa !5
  %12242 = mul nsw i32 4, %12241
  %12243 = add nsw i32 %12240, %12242
  %12244 = sext i32 %12243 to i64
  %12245 = getelementptr inbounds double, ptr %12239, i64 %12244
  %12246 = load double, ptr %12245, align 8, !tbaa !11
  %12247 = call double @llvm.fmuladd.f64(double 0xBC94000000000000, double %12246, double %12238)
  %12248 = load ptr, ptr %7, align 8, !tbaa !9
  %12249 = load i32, ptr %12, align 4, !tbaa !5
  %12250 = load i32, ptr %8, align 4, !tbaa !5
  %12251 = mul nsw i32 5, %12250
  %12252 = add nsw i32 %12249, %12251
  %12253 = sext i32 %12252 to i64
  %12254 = getelementptr inbounds double, ptr %12248, i64 %12253
  %12255 = load double, ptr %12254, align 8, !tbaa !11
  %12256 = call double @llvm.fmuladd.f64(double 0xBC96000000000000, double %12255, double %12247)
  %12257 = load ptr, ptr %7, align 8, !tbaa !9
  %12258 = load i32, ptr %12, align 4, !tbaa !5
  %12259 = load i32, ptr %8, align 4, !tbaa !5
  %12260 = mul nsw i32 6, %12259
  %12261 = add nsw i32 %12258, %12260
  %12262 = sext i32 %12261 to i64
  %12263 = getelementptr inbounds double, ptr %12257, i64 %12262
  %12264 = load double, ptr %12263, align 8, !tbaa !11
  %12265 = call double @llvm.fmuladd.f64(double 0xBCA33FFFFFFFFFFE, double %12264, double %12256)
  %12266 = load ptr, ptr %7, align 8, !tbaa !9
  %12267 = load i32, ptr %12, align 4, !tbaa !5
  %12268 = load i32, ptr %8, align 4, !tbaa !5
  %12269 = mul nsw i32 7, %12268
  %12270 = add nsw i32 %12267, %12269
  %12271 = sext i32 %12270 to i64
  %12272 = getelementptr inbounds double, ptr %12266, i64 %12271
  %12273 = load double, ptr %12272, align 8, !tbaa !11
  %12274 = call double @llvm.fmuladd.f64(double 0x3C6C000000000000, double %12273, double %12265)
  %12275 = load ptr, ptr %7, align 8, !tbaa !9
  %12276 = load i32, ptr %12, align 4, !tbaa !5
  %12277 = load i32, ptr %8, align 4, !tbaa !5
  %12278 = mul nsw i32 8, %12277
  %12279 = add nsw i32 %12276, %12278
  %12280 = sext i32 %12279 to i64
  %12281 = getelementptr inbounds double, ptr %12275, i64 %12280
  %12282 = load double, ptr %12281, align 8, !tbaa !11
  %12283 = call double @llvm.fmuladd.f64(double 0x3CB3000000000000, double %12282, double %12274)
  %12284 = load ptr, ptr %7, align 8, !tbaa !9
  %12285 = load i32, ptr %12, align 4, !tbaa !5
  %12286 = load i32, ptr %8, align 4, !tbaa !5
  %12287 = mul nsw i32 9, %12286
  %12288 = add nsw i32 %12285, %12287
  %12289 = sext i32 %12288 to i64
  %12290 = getelementptr inbounds double, ptr %12284, i64 %12289
  %12291 = load double, ptr %12290, align 8, !tbaa !11
  %12292 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %12291, double %12283)
  %12293 = load ptr, ptr %7, align 8, !tbaa !9
  %12294 = load i32, ptr %12, align 4, !tbaa !5
  %12295 = load i32, ptr %8, align 4, !tbaa !5
  %12296 = mul nsw i32 10, %12295
  %12297 = add nsw i32 %12294, %12296
  %12298 = sext i32 %12297 to i64
  %12299 = getelementptr inbounds double, ptr %12293, i64 %12298
  %12300 = load double, ptr %12299, align 8, !tbaa !11
  %12301 = call double @llvm.fmuladd.f64(double 0x3CA5FFFFFFFFFFFF, double %12300, double %12292)
  %12302 = load ptr, ptr %7, align 8, !tbaa !9
  %12303 = load i32, ptr %12, align 4, !tbaa !5
  %12304 = load i32, ptr %8, align 4, !tbaa !5
  %12305 = mul nsw i32 11, %12304
  %12306 = add nsw i32 %12303, %12305
  %12307 = sext i32 %12306 to i64
  %12308 = getelementptr inbounds double, ptr %12302, i64 %12307
  %12309 = load double, ptr %12308, align 8, !tbaa !11
  %12310 = call double @llvm.fmuladd.f64(double 0xBC98000000000000, double %12309, double %12301)
  %12311 = load ptr, ptr %7, align 8, !tbaa !9
  %12312 = load i32, ptr %12, align 4, !tbaa !5
  %12313 = load i32, ptr %8, align 4, !tbaa !5
  %12314 = mul nsw i32 12, %12313
  %12315 = add nsw i32 %12312, %12314
  %12316 = sext i32 %12315 to i64
  %12317 = getelementptr inbounds double, ptr %12311, i64 %12316
  %12318 = load double, ptr %12317, align 8, !tbaa !11
  %12319 = call double @llvm.fmuladd.f64(double 0x3C93000000000000, double %12318, double %12310)
  %12320 = load ptr, ptr %7, align 8, !tbaa !9
  %12321 = load i32, ptr %12, align 4, !tbaa !5
  %12322 = load i32, ptr %8, align 4, !tbaa !5
  %12323 = mul nsw i32 13, %12322
  %12324 = add nsw i32 %12321, %12323
  %12325 = sext i32 %12324 to i64
  %12326 = getelementptr inbounds double, ptr %12320, i64 %12325
  %12327 = load double, ptr %12326, align 8, !tbaa !11
  %12328 = call double @llvm.fmuladd.f64(double 0x3C9A800000000000, double %12327, double %12319)
  %12329 = load ptr, ptr %7, align 8, !tbaa !9
  %12330 = load i32, ptr %12, align 4, !tbaa !5
  %12331 = load i32, ptr %8, align 4, !tbaa !5
  %12332 = mul nsw i32 14, %12331
  %12333 = add nsw i32 %12330, %12332
  %12334 = sext i32 %12333 to i64
  %12335 = getelementptr inbounds double, ptr %12329, i64 %12334
  %12336 = load double, ptr %12335, align 8, !tbaa !11
  %12337 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %12336, double %12328)
  %12338 = load ptr, ptr %7, align 8, !tbaa !9
  %12339 = load i32, ptr %12, align 4, !tbaa !5
  %12340 = load i32, ptr %8, align 4, !tbaa !5
  %12341 = mul nsw i32 15, %12340
  %12342 = add nsw i32 %12339, %12341
  %12343 = sext i32 %12342 to i64
  %12344 = getelementptr inbounds double, ptr %12338, i64 %12343
  %12345 = load double, ptr %12344, align 8, !tbaa !11
  %12346 = call double @llvm.fmuladd.f64(double 0xBCA2000000000000, double %12345, double %12337)
  %12347 = load ptr, ptr %7, align 8, !tbaa !9
  %12348 = load i32, ptr %12, align 4, !tbaa !5
  %12349 = load i32, ptr %8, align 4, !tbaa !5
  %12350 = mul nsw i32 16, %12349
  %12351 = add nsw i32 %12348, %12350
  %12352 = sext i32 %12351 to i64
  %12353 = getelementptr inbounds double, ptr %12347, i64 %12352
  %12354 = load double, ptr %12353, align 8, !tbaa !11
  %12355 = call double @llvm.fmuladd.f64(double 0xBCBA800000000000, double %12354, double %12346)
  %12356 = load ptr, ptr %7, align 8, !tbaa !9
  %12357 = load i32, ptr %12, align 4, !tbaa !5
  %12358 = load i32, ptr %8, align 4, !tbaa !5
  %12359 = mul nsw i32 17, %12358
  %12360 = add nsw i32 %12357, %12359
  %12361 = sext i32 %12360 to i64
  %12362 = getelementptr inbounds double, ptr %12356, i64 %12361
  %12363 = load double, ptr %12362, align 8, !tbaa !11
  %12364 = call double @llvm.fmuladd.f64(double 0x3C99000000000000, double %12363, double %12355)
  %12365 = load ptr, ptr %7, align 8, !tbaa !9
  %12366 = load i32, ptr %12, align 4, !tbaa !5
  %12367 = load i32, ptr %8, align 4, !tbaa !5
  %12368 = mul nsw i32 19, %12367
  %12369 = add nsw i32 %12366, %12368
  %12370 = sext i32 %12369 to i64
  %12371 = getelementptr inbounds double, ptr %12365, i64 %12370
  %12372 = load double, ptr %12371, align 8, !tbaa !11
  %12373 = call double @llvm.fmuladd.f64(double 0x3C7FFFFFFFFFFFFF, double %12372, double %12364)
  %12374 = load ptr, ptr %7, align 8, !tbaa !9
  %12375 = load i32, ptr %12, align 4, !tbaa !5
  %12376 = load i32, ptr %8, align 4, !tbaa !5
  %12377 = mul nsw i32 20, %12376
  %12378 = add nsw i32 %12375, %12377
  %12379 = sext i32 %12378 to i64
  %12380 = getelementptr inbounds double, ptr %12374, i64 %12379
  %12381 = load double, ptr %12380, align 8, !tbaa !11
  %12382 = call double @llvm.fmuladd.f64(double 0x3CB1000000000001, double %12381, double %12373)
  %12383 = load ptr, ptr %7, align 8, !tbaa !9
  %12384 = load i32, ptr %12, align 4, !tbaa !5
  %12385 = load i32, ptr %8, align 4, !tbaa !5
  %12386 = mul nsw i32 21, %12385
  %12387 = add nsw i32 %12384, %12386
  %12388 = sext i32 %12387 to i64
  %12389 = getelementptr inbounds double, ptr %12383, i64 %12388
  %12390 = load double, ptr %12389, align 8, !tbaa !11
  %12391 = call double @llvm.fmuladd.f64(double 0xBC88000000000000, double %12390, double %12382)
  %12392 = load ptr, ptr %7, align 8, !tbaa !9
  %12393 = load i32, ptr %12, align 4, !tbaa !5
  %12394 = load i32, ptr %8, align 4, !tbaa !5
  %12395 = mul nsw i32 22, %12394
  %12396 = add nsw i32 %12393, %12395
  %12397 = sext i32 %12396 to i64
  %12398 = getelementptr inbounds double, ptr %12392, i64 %12397
  %12399 = load double, ptr %12398, align 8, !tbaa !11
  %12400 = call double @llvm.fmuladd.f64(double 0xBCA1000000000001, double %12399, double %12391)
  %12401 = load ptr, ptr %7, align 8, !tbaa !9
  %12402 = load i32, ptr %12, align 4, !tbaa !5
  %12403 = load i32, ptr %8, align 4, !tbaa !5
  %12404 = mul nsw i32 23, %12403
  %12405 = add nsw i32 %12402, %12404
  %12406 = sext i32 %12405 to i64
  %12407 = getelementptr inbounds double, ptr %12401, i64 %12406
  %12408 = load double, ptr %12407, align 8, !tbaa !11
  %12409 = call double @llvm.fmuladd.f64(double 0x3CA3800000000002, double %12408, double %12400)
  %12410 = load ptr, ptr %7, align 8, !tbaa !9
  %12411 = load i32, ptr %12, align 4, !tbaa !5
  %12412 = load i32, ptr %8, align 4, !tbaa !5
  %12413 = mul nsw i32 24, %12412
  %12414 = add nsw i32 %12411, %12413
  %12415 = sext i32 %12414 to i64
  %12416 = getelementptr inbounds double, ptr %12410, i64 %12415
  %12417 = load double, ptr %12416, align 8, !tbaa !11
  %12418 = call double @llvm.fmuladd.f64(double 0x3CA0000000000002, double %12417, double %12409)
  %12419 = load ptr, ptr %7, align 8, !tbaa !9
  %12420 = load i32, ptr %12, align 4, !tbaa !5
  %12421 = load i32, ptr %8, align 4, !tbaa !5
  %12422 = mul nsw i32 25, %12421
  %12423 = add nsw i32 %12420, %12422
  %12424 = sext i32 %12423 to i64
  %12425 = getelementptr inbounds double, ptr %12419, i64 %12424
  %12426 = load double, ptr %12425, align 8, !tbaa !11
  %12427 = call double @llvm.fmuladd.f64(double 0xBCA0000000000002, double %12426, double %12418)
  %12428 = load ptr, ptr %7, align 8, !tbaa !9
  %12429 = load i32, ptr %12, align 4, !tbaa !5
  %12430 = load i32, ptr %8, align 4, !tbaa !5
  %12431 = mul nsw i32 26, %12430
  %12432 = add nsw i32 %12429, %12431
  %12433 = sext i32 %12432 to i64
  %12434 = getelementptr inbounds double, ptr %12428, i64 %12433
  %12435 = load double, ptr %12434, align 8, !tbaa !11
  %12436 = call double @llvm.fmuladd.f64(double 0xBC86000000000001, double %12435, double %12427)
  %12437 = load ptr, ptr %7, align 8, !tbaa !9
  %12438 = load i32, ptr %12, align 4, !tbaa !5
  %12439 = load i32, ptr %8, align 4, !tbaa !5
  %12440 = mul nsw i32 27, %12439
  %12441 = add nsw i32 %12438, %12440
  %12442 = sext i32 %12441 to i64
  %12443 = getelementptr inbounds double, ptr %12437, i64 %12442
  %12444 = load double, ptr %12443, align 8, !tbaa !11
  %12445 = call double @llvm.fmuladd.f64(double 0xBCAD7FFFFFFFFFFE, double %12444, double %12436)
  %12446 = load ptr, ptr %7, align 8, !tbaa !9
  %12447 = load i32, ptr %12, align 4, !tbaa !5
  %12448 = load i32, ptr %8, align 4, !tbaa !5
  %12449 = mul nsw i32 29, %12448
  %12450 = add nsw i32 %12447, %12449
  %12451 = sext i32 %12450 to i64
  %12452 = getelementptr inbounds double, ptr %12446, i64 %12451
  %12453 = load double, ptr %12452, align 8, !tbaa !11
  %12454 = call double @llvm.fmuladd.f64(double 0xBC70000000000001, double %12453, double %12445)
  %12455 = load ptr, ptr %7, align 8, !tbaa !9
  %12456 = load i32, ptr %12, align 4, !tbaa !5
  %12457 = load i32, ptr %8, align 4, !tbaa !5
  %12458 = mul nsw i32 30, %12457
  %12459 = add nsw i32 %12456, %12458
  %12460 = sext i32 %12459 to i64
  %12461 = getelementptr inbounds double, ptr %12455, i64 %12460
  %12462 = load double, ptr %12461, align 8, !tbaa !11
  %12463 = call double @llvm.fmuladd.f64(double 0xBFE333710B32A29C, double %12462, double %12454)
  %12464 = load ptr, ptr %7, align 8, !tbaa !9
  %12465 = load i32, ptr %12, align 4, !tbaa !5
  %12466 = load i32, ptr %8, align 4, !tbaa !5
  %12467 = mul nsw i32 31, %12466
  %12468 = add nsw i32 %12465, %12467
  %12469 = sext i32 %12468 to i64
  %12470 = getelementptr inbounds double, ptr %12464, i64 %12469
  %12471 = load double, ptr %12470, align 8, !tbaa !11
  %12472 = call double @llvm.fmuladd.f64(double 0xBFBEED13A9F0D910, double %12471, double %12463)
  %12473 = load ptr, ptr %7, align 8, !tbaa !9
  %12474 = load i32, ptr %12, align 4, !tbaa !5
  %12475 = load i32, ptr %8, align 4, !tbaa !5
  %12476 = mul nsw i32 32, %12475
  %12477 = add nsw i32 %12474, %12476
  %12478 = sext i32 %12477 to i64
  %12479 = getelementptr inbounds double, ptr %12473, i64 %12478
  %12480 = load double, ptr %12479, align 8, !tbaa !11
  %12481 = call double @llvm.fmuladd.f64(double 0x3FA87D76435484EB, double %12480, double %12472)
  %12482 = load ptr, ptr %7, align 8, !tbaa !9
  %12483 = load i32, ptr %12, align 4, !tbaa !5
  %12484 = load i32, ptr %8, align 4, !tbaa !5
  %12485 = mul nsw i32 33, %12484
  %12486 = add nsw i32 %12483, %12485
  %12487 = sext i32 %12486 to i64
  %12488 = getelementptr inbounds double, ptr %12482, i64 %12487
  %12489 = load double, ptr %12488, align 8, !tbaa !11
  %12490 = call double @llvm.fmuladd.f64(double 0xBFA352D4DB969C03, double %12489, double %12481)
  %12491 = load ptr, ptr %7, align 8, !tbaa !9
  %12492 = load i32, ptr %12, align 4, !tbaa !5
  %12493 = load i32, ptr %8, align 4, !tbaa !5
  %12494 = mul nsw i32 34, %12493
  %12495 = add nsw i32 %12492, %12494
  %12496 = sext i32 %12495 to i64
  %12497 = getelementptr inbounds double, ptr %12491, i64 %12496
  %12498 = load double, ptr %12497, align 8, !tbaa !11
  %12499 = call double @llvm.fmuladd.f64(double 0xBFD41C0D131D428A, double %12498, double %12490)
  %12500 = load ptr, ptr %7, align 8, !tbaa !9
  %12501 = load i32, ptr %12, align 4, !tbaa !5
  %12502 = load i32, ptr %8, align 4, !tbaa !5
  %12503 = mul nsw i32 35, %12502
  %12504 = add nsw i32 %12501, %12503
  %12505 = sext i32 %12504 to i64
  %12506 = getelementptr inbounds double, ptr %12500, i64 %12505
  %12507 = load double, ptr %12506, align 8, !tbaa !11
  %12508 = call double @llvm.fmuladd.f64(double 0x3F9854E0ADA34B70, double %12507, double %12499)
  %12509 = load ptr, ptr %7, align 8, !tbaa !9
  %12510 = load i32, ptr %12, align 4, !tbaa !5
  %12511 = load i32, ptr %8, align 4, !tbaa !5
  %12512 = mul nsw i32 36, %12511
  %12513 = add nsw i32 %12510, %12512
  %12514 = sext i32 %12513 to i64
  %12515 = getelementptr inbounds double, ptr %12509, i64 %12514
  %12516 = load double, ptr %12515, align 8, !tbaa !11
  %12517 = call double @llvm.fmuladd.f64(double 0x3FC36A9134CD3C54, double %12516, double %12508)
  %12518 = load ptr, ptr %7, align 8, !tbaa !9
  %12519 = load i32, ptr %12, align 4, !tbaa !5
  %12520 = load i32, ptr %8, align 4, !tbaa !5
  %12521 = mul nsw i32 37, %12520
  %12522 = add nsw i32 %12519, %12521
  %12523 = sext i32 %12522 to i64
  %12524 = getelementptr inbounds double, ptr %12518, i64 %12523
  %12525 = load double, ptr %12524, align 8, !tbaa !11
  %12526 = call double @llvm.fmuladd.f64(double 0x3FF670C5F1F4C92E, double %12525, double %12517)
  %12527 = load ptr, ptr %7, align 8, !tbaa !9
  %12528 = load i32, ptr %12, align 4, !tbaa !5
  %12529 = load i32, ptr %8, align 4, !tbaa !5
  %12530 = mul nsw i32 38, %12529
  %12531 = add nsw i32 %12528, %12530
  %12532 = sext i32 %12531 to i64
  %12533 = getelementptr inbounds double, ptr %12527, i64 %12532
  %12534 = load double, ptr %12533, align 8, !tbaa !11
  %12535 = call double @llvm.fmuladd.f64(double 0x3FC27B05E24EC5F4, double %12534, double %12526)
  %12536 = load ptr, ptr %7, align 8, !tbaa !9
  %12537 = load i32, ptr %12, align 4, !tbaa !5
  %12538 = load i32, ptr %8, align 4, !tbaa !5
  %12539 = mul nsw i32 39, %12538
  %12540 = add nsw i32 %12537, %12539
  %12541 = sext i32 %12540 to i64
  %12542 = getelementptr inbounds double, ptr %12536, i64 %12541
  %12543 = load double, ptr %12542, align 8, !tbaa !11
  %12544 = call double @llvm.fmuladd.f64(double 0x3FD35DAE88CBA64A, double %12543, double %12535)
  store double %12544, ptr %11, align 8, !tbaa !11
  %12545 = load double, ptr %11, align 8, !tbaa !11
  %12546 = load ptr, ptr %9, align 8, !tbaa !9
  %12547 = load i32, ptr %12, align 4, !tbaa !5
  %12548 = load i32, ptr %10, align 4, !tbaa !5
  %12549 = mul nsw i32 34, %12548
  %12550 = add nsw i32 %12547, %12549
  %12551 = sext i32 %12550 to i64
  %12552 = getelementptr inbounds double, ptr %12546, i64 %12551
  %12553 = load double, ptr %12552, align 8, !tbaa !11
  %12554 = fadd double %12553, %12545
  store double %12554, ptr %12552, align 8, !tbaa !11
  %12555 = load ptr, ptr %7, align 8, !tbaa !9
  %12556 = load i32, ptr %12, align 4, !tbaa !5
  %12557 = load i32, ptr %8, align 4, !tbaa !5
  %12558 = mul nsw i32 0, %12557
  %12559 = add nsw i32 %12556, %12558
  %12560 = sext i32 %12559 to i64
  %12561 = getelementptr inbounds double, ptr %12555, i64 %12560
  %12562 = load double, ptr %12561, align 8, !tbaa !11
  %12563 = load ptr, ptr %7, align 8, !tbaa !9
  %12564 = load i32, ptr %12, align 4, !tbaa !5
  %12565 = load i32, ptr %8, align 4, !tbaa !5
  %12566 = mul nsw i32 1, %12565
  %12567 = add nsw i32 %12564, %12566
  %12568 = sext i32 %12567 to i64
  %12569 = getelementptr inbounds double, ptr %12563, i64 %12568
  %12570 = load double, ptr %12569, align 8, !tbaa !11
  %12571 = fmul double 0x3CA5000000000000, %12570
  %12572 = call double @llvm.fmuladd.f64(double 0xBCC1400000000000, double %12562, double %12571)
  %12573 = load ptr, ptr %7, align 8, !tbaa !9
  %12574 = load i32, ptr %12, align 4, !tbaa !5
  %12575 = load i32, ptr %8, align 4, !tbaa !5
  %12576 = mul nsw i32 2, %12575
  %12577 = add nsw i32 %12574, %12576
  %12578 = sext i32 %12577 to i64
  %12579 = getelementptr inbounds double, ptr %12573, i64 %12578
  %12580 = load double, ptr %12579, align 8, !tbaa !11
  %12581 = call double @llvm.fmuladd.f64(double 0x3CA8600000000000, double %12580, double %12572)
  %12582 = load ptr, ptr %7, align 8, !tbaa !9
  %12583 = load i32, ptr %12, align 4, !tbaa !5
  %12584 = load i32, ptr %8, align 4, !tbaa !5
  %12585 = mul nsw i32 3, %12584
  %12586 = add nsw i32 %12583, %12585
  %12587 = sext i32 %12586 to i64
  %12588 = getelementptr inbounds double, ptr %12582, i64 %12587
  %12589 = load double, ptr %12588, align 8, !tbaa !11
  %12590 = call double @llvm.fmuladd.f64(double 0xBCB5100000000000, double %12589, double %12581)
  %12591 = load ptr, ptr %7, align 8, !tbaa !9
  %12592 = load i32, ptr %12, align 4, !tbaa !5
  %12593 = load i32, ptr %8, align 4, !tbaa !5
  %12594 = mul nsw i32 4, %12593
  %12595 = add nsw i32 %12592, %12594
  %12596 = sext i32 %12595 to i64
  %12597 = getelementptr inbounds double, ptr %12591, i64 %12596
  %12598 = load double, ptr %12597, align 8, !tbaa !11
  %12599 = call double @llvm.fmuladd.f64(double 0xBCA9FFFFFFFFFFFE, double %12598, double %12590)
  %12600 = load ptr, ptr %7, align 8, !tbaa !9
  %12601 = load i32, ptr %12, align 4, !tbaa !5
  %12602 = load i32, ptr %8, align 4, !tbaa !5
  %12603 = mul nsw i32 5, %12602
  %12604 = add nsw i32 %12601, %12603
  %12605 = sext i32 %12604 to i64
  %12606 = getelementptr inbounds double, ptr %12600, i64 %12605
  %12607 = load double, ptr %12606, align 8, !tbaa !11
  %12608 = call double @llvm.fmuladd.f64(double 0xBC88000000000000, double %12607, double %12599)
  %12609 = load ptr, ptr %7, align 8, !tbaa !9
  %12610 = load i32, ptr %12, align 4, !tbaa !5
  %12611 = load i32, ptr %8, align 4, !tbaa !5
  %12612 = mul nsw i32 6, %12611
  %12613 = add nsw i32 %12610, %12612
  %12614 = sext i32 %12613 to i64
  %12615 = getelementptr inbounds double, ptr %12609, i64 %12614
  %12616 = load double, ptr %12615, align 8, !tbaa !11
  %12617 = call double @llvm.fmuladd.f64(double 0x3C8D000000000001, double %12616, double %12608)
  %12618 = load ptr, ptr %7, align 8, !tbaa !9
  %12619 = load i32, ptr %12, align 4, !tbaa !5
  %12620 = load i32, ptr %8, align 4, !tbaa !5
  %12621 = mul nsw i32 7, %12620
  %12622 = add nsw i32 %12619, %12621
  %12623 = sext i32 %12622 to i64
  %12624 = getelementptr inbounds double, ptr %12618, i64 %12623
  %12625 = load double, ptr %12624, align 8, !tbaa !11
  %12626 = call double @llvm.fmuladd.f64(double 0x3CB0400000000000, double %12625, double %12617)
  %12627 = load ptr, ptr %7, align 8, !tbaa !9
  %12628 = load i32, ptr %12, align 4, !tbaa !5
  %12629 = load i32, ptr %8, align 4, !tbaa !5
  %12630 = mul nsw i32 8, %12629
  %12631 = add nsw i32 %12628, %12630
  %12632 = sext i32 %12631 to i64
  %12633 = getelementptr inbounds double, ptr %12627, i64 %12632
  %12634 = load double, ptr %12633, align 8, !tbaa !11
  %12635 = call double @llvm.fmuladd.f64(double 0x3CB1000000000001, double %12634, double %12626)
  %12636 = load ptr, ptr %7, align 8, !tbaa !9
  %12637 = load i32, ptr %12, align 4, !tbaa !5
  %12638 = load i32, ptr %8, align 4, !tbaa !5
  %12639 = mul nsw i32 9, %12638
  %12640 = add nsw i32 %12637, %12639
  %12641 = sext i32 %12640 to i64
  %12642 = getelementptr inbounds double, ptr %12636, i64 %12641
  %12643 = load double, ptr %12642, align 8, !tbaa !11
  %12644 = call double @llvm.fmuladd.f64(double 0xBC78000000000002, double %12643, double %12635)
  %12645 = load ptr, ptr %7, align 8, !tbaa !9
  %12646 = load i32, ptr %12, align 4, !tbaa !5
  %12647 = load i32, ptr %8, align 4, !tbaa !5
  %12648 = mul nsw i32 10, %12647
  %12649 = add nsw i32 %12646, %12648
  %12650 = sext i32 %12649 to i64
  %12651 = getelementptr inbounds double, ptr %12645, i64 %12650
  %12652 = load double, ptr %12651, align 8, !tbaa !11
  %12653 = call double @llvm.fmuladd.f64(double 0x3CC7000000000000, double %12652, double %12644)
  %12654 = load ptr, ptr %7, align 8, !tbaa !9
  %12655 = load i32, ptr %12, align 4, !tbaa !5
  %12656 = load i32, ptr %8, align 4, !tbaa !5
  %12657 = mul nsw i32 11, %12656
  %12658 = add nsw i32 %12655, %12657
  %12659 = sext i32 %12658 to i64
  %12660 = getelementptr inbounds double, ptr %12654, i64 %12659
  %12661 = load double, ptr %12660, align 8, !tbaa !11
  %12662 = call double @llvm.fmuladd.f64(double 0xBC70000000000001, double %12661, double %12653)
  %12663 = load ptr, ptr %7, align 8, !tbaa !9
  %12664 = load i32, ptr %12, align 4, !tbaa !5
  %12665 = load i32, ptr %8, align 4, !tbaa !5
  %12666 = mul nsw i32 12, %12665
  %12667 = add nsw i32 %12664, %12666
  %12668 = sext i32 %12667 to i64
  %12669 = getelementptr inbounds double, ptr %12663, i64 %12668
  %12670 = load double, ptr %12669, align 8, !tbaa !11
  %12671 = call double @llvm.fmuladd.f64(double 0x3C9EFFFFFFFFFFFD, double %12670, double %12662)
  %12672 = load ptr, ptr %7, align 8, !tbaa !9
  %12673 = load i32, ptr %12, align 4, !tbaa !5
  %12674 = load i32, ptr %8, align 4, !tbaa !5
  %12675 = mul nsw i32 13, %12674
  %12676 = add nsw i32 %12673, %12675
  %12677 = sext i32 %12676 to i64
  %12678 = getelementptr inbounds double, ptr %12672, i64 %12677
  %12679 = load double, ptr %12678, align 8, !tbaa !11
  %12680 = call double @llvm.fmuladd.f64(double 0x3C8B000000000000, double %12679, double %12671)
  %12681 = load ptr, ptr %7, align 8, !tbaa !9
  %12682 = load i32, ptr %12, align 4, !tbaa !5
  %12683 = load i32, ptr %8, align 4, !tbaa !5
  %12684 = mul nsw i32 14, %12683
  %12685 = add nsw i32 %12682, %12684
  %12686 = sext i32 %12685 to i64
  %12687 = getelementptr inbounds double, ptr %12681, i64 %12686
  %12688 = load double, ptr %12687, align 8, !tbaa !11
  %12689 = call double @llvm.fmuladd.f64(double 0xBCBF000000000001, double %12688, double %12680)
  %12690 = load ptr, ptr %7, align 8, !tbaa !9
  %12691 = load i32, ptr %12, align 4, !tbaa !5
  %12692 = load i32, ptr %8, align 4, !tbaa !5
  %12693 = mul nsw i32 15, %12692
  %12694 = add nsw i32 %12691, %12693
  %12695 = sext i32 %12694 to i64
  %12696 = getelementptr inbounds double, ptr %12690, i64 %12695
  %12697 = load double, ptr %12696, align 8, !tbaa !11
  %12698 = call double @llvm.fmuladd.f64(double 0xBCACFFFFFFFFFFFF, double %12697, double %12689)
  %12699 = load ptr, ptr %7, align 8, !tbaa !9
  %12700 = load i32, ptr %12, align 4, !tbaa !5
  %12701 = load i32, ptr %8, align 4, !tbaa !5
  %12702 = mul nsw i32 16, %12701
  %12703 = add nsw i32 %12700, %12702
  %12704 = sext i32 %12703 to i64
  %12705 = getelementptr inbounds double, ptr %12699, i64 %12704
  %12706 = load double, ptr %12705, align 8, !tbaa !11
  %12707 = call double @llvm.fmuladd.f64(double 0xBCA3800000000002, double %12706, double %12698)
  %12708 = load ptr, ptr %7, align 8, !tbaa !9
  %12709 = load i32, ptr %12, align 4, !tbaa !5
  %12710 = load i32, ptr %8, align 4, !tbaa !5
  %12711 = mul nsw i32 17, %12710
  %12712 = add nsw i32 %12709, %12711
  %12713 = sext i32 %12712 to i64
  %12714 = getelementptr inbounds double, ptr %12708, i64 %12713
  %12715 = load double, ptr %12714, align 8, !tbaa !11
  %12716 = call double @llvm.fmuladd.f64(double 0x3CB9C00000000001, double %12715, double %12707)
  %12717 = load ptr, ptr %7, align 8, !tbaa !9
  %12718 = load i32, ptr %12, align 4, !tbaa !5
  %12719 = load i32, ptr %8, align 4, !tbaa !5
  %12720 = mul nsw i32 18, %12719
  %12721 = add nsw i32 %12718, %12720
  %12722 = sext i32 %12721 to i64
  %12723 = getelementptr inbounds double, ptr %12717, i64 %12722
  %12724 = load double, ptr %12723, align 8, !tbaa !11
  %12725 = call double @llvm.fmuladd.f64(double 0xBC94000000000000, double %12724, double %12716)
  %12726 = load ptr, ptr %7, align 8, !tbaa !9
  %12727 = load i32, ptr %12, align 4, !tbaa !5
  %12728 = load i32, ptr %8, align 4, !tbaa !5
  %12729 = mul nsw i32 20, %12728
  %12730 = add nsw i32 %12727, %12729
  %12731 = sext i32 %12730 to i64
  %12732 = getelementptr inbounds double, ptr %12726, i64 %12731
  %12733 = load double, ptr %12732, align 8, !tbaa !11
  %12734 = call double @llvm.fmuladd.f64(double 0xBCB2000000000000, double %12733, double %12725)
  %12735 = load ptr, ptr %7, align 8, !tbaa !9
  %12736 = load i32, ptr %12, align 4, !tbaa !5
  %12737 = load i32, ptr %8, align 4, !tbaa !5
  %12738 = mul nsw i32 21, %12737
  %12739 = add nsw i32 %12736, %12738
  %12740 = sext i32 %12739 to i64
  %12741 = getelementptr inbounds double, ptr %12735, i64 %12740
  %12742 = load double, ptr %12741, align 8, !tbaa !11
  %12743 = call double @llvm.fmuladd.f64(double 0xBCA8000000000001, double %12742, double %12734)
  %12744 = load ptr, ptr %7, align 8, !tbaa !9
  %12745 = load i32, ptr %12, align 4, !tbaa !5
  %12746 = load i32, ptr %8, align 4, !tbaa !5
  %12747 = mul nsw i32 22, %12746
  %12748 = add nsw i32 %12745, %12747
  %12749 = sext i32 %12748 to i64
  %12750 = getelementptr inbounds double, ptr %12744, i64 %12749
  %12751 = load double, ptr %12750, align 8, !tbaa !11
  %12752 = call double @llvm.fmuladd.f64(double 0xBCB3FFFFFFFFFFFF, double %12751, double %12743)
  %12753 = load ptr, ptr %7, align 8, !tbaa !9
  %12754 = load i32, ptr %12, align 4, !tbaa !5
  %12755 = load i32, ptr %8, align 4, !tbaa !5
  %12756 = mul nsw i32 23, %12755
  %12757 = add nsw i32 %12754, %12756
  %12758 = sext i32 %12757 to i64
  %12759 = getelementptr inbounds double, ptr %12753, i64 %12758
  %12760 = load double, ptr %12759, align 8, !tbaa !11
  %12761 = call double @llvm.fmuladd.f64(double 0x3CB7000000000000, double %12760, double %12752)
  %12762 = load ptr, ptr %7, align 8, !tbaa !9
  %12763 = load i32, ptr %12, align 4, !tbaa !5
  %12764 = load i32, ptr %8, align 4, !tbaa !5
  %12765 = mul nsw i32 24, %12764
  %12766 = add nsw i32 %12763, %12765
  %12767 = sext i32 %12766 to i64
  %12768 = getelementptr inbounds double, ptr %12762, i64 %12767
  %12769 = load double, ptr %12768, align 8, !tbaa !11
  %12770 = call double @llvm.fmuladd.f64(double 0x3CB7000000000000, double %12769, double %12761)
  %12771 = load ptr, ptr %7, align 8, !tbaa !9
  %12772 = load i32, ptr %12, align 4, !tbaa !5
  %12773 = load i32, ptr %8, align 4, !tbaa !5
  %12774 = mul nsw i32 25, %12773
  %12775 = add nsw i32 %12772, %12774
  %12776 = sext i32 %12775 to i64
  %12777 = getelementptr inbounds double, ptr %12771, i64 %12776
  %12778 = load double, ptr %12777, align 8, !tbaa !11
  %12779 = call double @llvm.fmuladd.f64(double 0xBC8C000000000000, double %12778, double %12770)
  %12780 = load ptr, ptr %7, align 8, !tbaa !9
  %12781 = load i32, ptr %12, align 4, !tbaa !5
  %12782 = load i32, ptr %8, align 4, !tbaa !5
  %12783 = mul nsw i32 26, %12782
  %12784 = add nsw i32 %12781, %12783
  %12785 = sext i32 %12784 to i64
  %12786 = getelementptr inbounds double, ptr %12780, i64 %12785
  %12787 = load double, ptr %12786, align 8, !tbaa !11
  %12788 = call double @llvm.fmuladd.f64(double 0x3C95000000000000, double %12787, double %12779)
  %12789 = load ptr, ptr %7, align 8, !tbaa !9
  %12790 = load i32, ptr %12, align 4, !tbaa !5
  %12791 = load i32, ptr %8, align 4, !tbaa !5
  %12792 = mul nsw i32 27, %12791
  %12793 = add nsw i32 %12790, %12792
  %12794 = sext i32 %12793 to i64
  %12795 = getelementptr inbounds double, ptr %12789, i64 %12794
  %12796 = load double, ptr %12795, align 8, !tbaa !11
  %12797 = call double @llvm.fmuladd.f64(double 0xBCBE400000000000, double %12796, double %12788)
  %12798 = load ptr, ptr %7, align 8, !tbaa !9
  %12799 = load i32, ptr %12, align 4, !tbaa !5
  %12800 = load i32, ptr %8, align 4, !tbaa !5
  %12801 = mul nsw i32 28, %12800
  %12802 = add nsw i32 %12799, %12801
  %12803 = sext i32 %12802 to i64
  %12804 = getelementptr inbounds double, ptr %12798, i64 %12803
  %12805 = load double, ptr %12804, align 8, !tbaa !11
  %12806 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %12805, double %12797)
  %12807 = load ptr, ptr %7, align 8, !tbaa !9
  %12808 = load i32, ptr %12, align 4, !tbaa !5
  %12809 = load i32, ptr %8, align 4, !tbaa !5
  %12810 = mul nsw i32 29, %12809
  %12811 = add nsw i32 %12808, %12810
  %12812 = sext i32 %12811 to i64
  %12813 = getelementptr inbounds double, ptr %12807, i64 %12812
  %12814 = load double, ptr %12813, align 8, !tbaa !11
  %12815 = call double @llvm.fmuladd.f64(double 0xBCA0000000000002, double %12814, double %12806)
  %12816 = load ptr, ptr %7, align 8, !tbaa !9
  %12817 = load i32, ptr %12, align 4, !tbaa !5
  %12818 = load i32, ptr %8, align 4, !tbaa !5
  %12819 = mul nsw i32 30, %12818
  %12820 = add nsw i32 %12817, %12819
  %12821 = sext i32 %12820 to i64
  %12822 = getelementptr inbounds double, ptr %12816, i64 %12821
  %12823 = load double, ptr %12822, align 8, !tbaa !11
  %12824 = call double @llvm.fmuladd.f64(double 0xBF83152016E0ED26, double %12823, double %12815)
  %12825 = load ptr, ptr %7, align 8, !tbaa !9
  %12826 = load i32, ptr %12, align 4, !tbaa !5
  %12827 = load i32, ptr %8, align 4, !tbaa !5
  %12828 = mul nsw i32 31, %12827
  %12829 = add nsw i32 %12826, %12828
  %12830 = sext i32 %12829 to i64
  %12831 = getelementptr inbounds double, ptr %12825, i64 %12830
  %12832 = load double, ptr %12831, align 8, !tbaa !11
  %12833 = call double @llvm.fmuladd.f64(double 0xBFB5B58B4F03B1AC, double %12832, double %12824)
  %12834 = load ptr, ptr %7, align 8, !tbaa !9
  %12835 = load i32, ptr %12, align 4, !tbaa !5
  %12836 = load i32, ptr %8, align 4, !tbaa !5
  %12837 = mul nsw i32 32, %12836
  %12838 = add nsw i32 %12835, %12837
  %12839 = sext i32 %12838 to i64
  %12840 = getelementptr inbounds double, ptr %12834, i64 %12839
  %12841 = load double, ptr %12840, align 8, !tbaa !11
  %12842 = call double @llvm.fmuladd.f64(double 0x3FF4EC1BB3FDC617, double %12841, double %12833)
  %12843 = load ptr, ptr %7, align 8, !tbaa !9
  %12844 = load i32, ptr %12, align 4, !tbaa !5
  %12845 = load i32, ptr %8, align 4, !tbaa !5
  %12846 = mul nsw i32 33, %12845
  %12847 = add nsw i32 %12844, %12846
  %12848 = sext i32 %12847 to i64
  %12849 = getelementptr inbounds double, ptr %12843, i64 %12848
  %12850 = load double, ptr %12849, align 8, !tbaa !11
  %12851 = call double @llvm.fmuladd.f64(double 0x3F938CE4890DB2CB, double %12850, double %12842)
  %12852 = load ptr, ptr %7, align 8, !tbaa !9
  %12853 = load i32, ptr %12, align 4, !tbaa !5
  %12854 = load i32, ptr %8, align 4, !tbaa !5
  %12855 = mul nsw i32 34, %12854
  %12856 = add nsw i32 %12853, %12855
  %12857 = sext i32 %12856 to i64
  %12858 = getelementptr inbounds double, ptr %12852, i64 %12857
  %12859 = load double, ptr %12858, align 8, !tbaa !11
  %12860 = call double @llvm.fmuladd.f64(double 0xBFE5679E70A60654, double %12859, double %12851)
  %12861 = load ptr, ptr %7, align 8, !tbaa !9
  %12862 = load i32, ptr %12, align 4, !tbaa !5
  %12863 = load i32, ptr %8, align 4, !tbaa !5
  %12864 = mul nsw i32 35, %12863
  %12865 = add nsw i32 %12862, %12864
  %12866 = sext i32 %12865 to i64
  %12867 = getelementptr inbounds double, ptr %12861, i64 %12866
  %12868 = load double, ptr %12867, align 8, !tbaa !11
  %12869 = call double @llvm.fmuladd.f64(double 0x3F85E50BB681A4BC, double %12868, double %12860)
  %12870 = load ptr, ptr %7, align 8, !tbaa !9
  %12871 = load i32, ptr %12, align 4, !tbaa !5
  %12872 = load i32, ptr %8, align 4, !tbaa !5
  %12873 = mul nsw i32 36, %12872
  %12874 = add nsw i32 %12871, %12873
  %12875 = sext i32 %12874 to i64
  %12876 = getelementptr inbounds double, ptr %12870, i64 %12875
  %12877 = load double, ptr %12876, align 8, !tbaa !11
  %12878 = call double @llvm.fmuladd.f64(double 0xBFB49217631F591C, double %12877, double %12869)
  %12879 = load ptr, ptr %7, align 8, !tbaa !9
  %12880 = load i32, ptr %12, align 4, !tbaa !5
  %12881 = load i32, ptr %8, align 4, !tbaa !5
  %12882 = mul nsw i32 37, %12881
  %12883 = add nsw i32 %12880, %12882
  %12884 = sext i32 %12883 to i64
  %12885 = getelementptr inbounds double, ptr %12879, i64 %12884
  %12886 = load double, ptr %12885, align 8, !tbaa !11
  %12887 = call double @llvm.fmuladd.f64(double 0x3FCA50C41AB7A2E4, double %12886, double %12878)
  %12888 = load ptr, ptr %7, align 8, !tbaa !9
  %12889 = load i32, ptr %12, align 4, !tbaa !5
  %12890 = load i32, ptr %8, align 4, !tbaa !5
  %12891 = mul nsw i32 38, %12890
  %12892 = add nsw i32 %12889, %12891
  %12893 = sext i32 %12892 to i64
  %12894 = getelementptr inbounds double, ptr %12888, i64 %12893
  %12895 = load double, ptr %12894, align 8, !tbaa !11
  %12896 = call double @llvm.fmuladd.f64(double 0xBF8BDAF699AECF71, double %12895, double %12887)
  %12897 = load ptr, ptr %7, align 8, !tbaa !9
  %12898 = load i32, ptr %12, align 4, !tbaa !5
  %12899 = load i32, ptr %8, align 4, !tbaa !5
  %12900 = mul nsw i32 39, %12899
  %12901 = add nsw i32 %12898, %12900
  %12902 = sext i32 %12901 to i64
  %12903 = getelementptr inbounds double, ptr %12897, i64 %12902
  %12904 = load double, ptr %12903, align 8, !tbaa !11
  %12905 = call double @llvm.fmuladd.f64(double 0x3FD417DEBFC17B15, double %12904, double %12896)
  store double %12905, ptr %11, align 8, !tbaa !11
  %12906 = load double, ptr %11, align 8, !tbaa !11
  %12907 = load ptr, ptr %9, align 8, !tbaa !9
  %12908 = load i32, ptr %12, align 4, !tbaa !5
  %12909 = load i32, ptr %10, align 4, !tbaa !5
  %12910 = mul nsw i32 35, %12909
  %12911 = add nsw i32 %12908, %12910
  %12912 = sext i32 %12911 to i64
  %12913 = getelementptr inbounds double, ptr %12907, i64 %12912
  %12914 = load double, ptr %12913, align 8, !tbaa !11
  %12915 = fadd double %12914, %12906
  store double %12915, ptr %12913, align 8, !tbaa !11
  %12916 = load ptr, ptr %7, align 8, !tbaa !9
  %12917 = load i32, ptr %12, align 4, !tbaa !5
  %12918 = load i32, ptr %8, align 4, !tbaa !5
  %12919 = mul nsw i32 0, %12918
  %12920 = add nsw i32 %12917, %12919
  %12921 = sext i32 %12920 to i64
  %12922 = getelementptr inbounds double, ptr %12916, i64 %12921
  %12923 = load double, ptr %12922, align 8, !tbaa !11
  %12924 = load ptr, ptr %7, align 8, !tbaa !9
  %12925 = load i32, ptr %12, align 4, !tbaa !5
  %12926 = load i32, ptr %8, align 4, !tbaa !5
  %12927 = mul nsw i32 1, %12926
  %12928 = add nsw i32 %12925, %12927
  %12929 = sext i32 %12928 to i64
  %12930 = getelementptr inbounds double, ptr %12924, i64 %12929
  %12931 = load double, ptr %12930, align 8, !tbaa !11
  %12932 = fmul double 0x3F938CE4890DB2D9, %12931
  %12933 = call double @llvm.fmuladd.f64(double 0xBF83152016E0ECAB, double %12923, double %12932)
  %12934 = load ptr, ptr %7, align 8, !tbaa !9
  %12935 = load i32, ptr %12, align 4, !tbaa !5
  %12936 = load i32, ptr %8, align 4, !tbaa !5
  %12937 = mul nsw i32 2, %12936
  %12938 = add nsw i32 %12935, %12937
  %12939 = sext i32 %12938 to i64
  %12940 = getelementptr inbounds double, ptr %12934, i64 %12939
  %12941 = load double, ptr %12940, align 8, !tbaa !11
  %12942 = call double @llvm.fmuladd.f64(double 0xBFB5B58B4F03B1A3, double %12941, double %12933)
  %12943 = load ptr, ptr %7, align 8, !tbaa !9
  %12944 = load i32, ptr %12, align 4, !tbaa !5
  %12945 = load i32, ptr %8, align 4, !tbaa !5
  %12946 = mul nsw i32 3, %12945
  %12947 = add nsw i32 %12944, %12946
  %12948 = sext i32 %12947 to i64
  %12949 = getelementptr inbounds double, ptr %12943, i64 %12948
  %12950 = load double, ptr %12949, align 8, !tbaa !11
  %12951 = call double @llvm.fmuladd.f64(double 0x3FF4EC1BB3FDC612, double %12950, double %12942)
  %12952 = load ptr, ptr %7, align 8, !tbaa !9
  %12953 = load i32, ptr %12, align 4, !tbaa !5
  %12954 = load i32, ptr %8, align 4, !tbaa !5
  %12955 = mul nsw i32 4, %12954
  %12956 = add nsw i32 %12953, %12955
  %12957 = sext i32 %12956 to i64
  %12958 = getelementptr inbounds double, ptr %12952, i64 %12957
  %12959 = load double, ptr %12958, align 8, !tbaa !11
  %12960 = call double @llvm.fmuladd.f64(double 0xBF8BDAF699AECF88, double %12959, double %12951)
  %12961 = load ptr, ptr %7, align 8, !tbaa !9
  %12962 = load i32, ptr %12, align 4, !tbaa !5
  %12963 = load i32, ptr %8, align 4, !tbaa !5
  %12964 = mul nsw i32 5, %12963
  %12965 = add nsw i32 %12962, %12964
  %12966 = sext i32 %12965 to i64
  %12967 = getelementptr inbounds double, ptr %12961, i64 %12966
  %12968 = load double, ptr %12967, align 8, !tbaa !11
  %12969 = call double @llvm.fmuladd.f64(double 0x3FCA50C41AB7A325, double %12968, double %12960)
  %12970 = load ptr, ptr %7, align 8, !tbaa !9
  %12971 = load i32, ptr %12, align 4, !tbaa !5
  %12972 = load i32, ptr %8, align 4, !tbaa !5
  %12973 = mul nsw i32 6, %12972
  %12974 = add nsw i32 %12971, %12973
  %12975 = sext i32 %12974 to i64
  %12976 = getelementptr inbounds double, ptr %12970, i64 %12975
  %12977 = load double, ptr %12976, align 8, !tbaa !11
  %12978 = call double @llvm.fmuladd.f64(double 0xBFE5679E70A60653, double %12977, double %12969)
  %12979 = load ptr, ptr %7, align 8, !tbaa !9
  %12980 = load i32, ptr %12, align 4, !tbaa !5
  %12981 = load i32, ptr %8, align 4, !tbaa !5
  %12982 = mul nsw i32 7, %12981
  %12983 = add nsw i32 %12980, %12982
  %12984 = sext i32 %12983 to i64
  %12985 = getelementptr inbounds double, ptr %12979, i64 %12984
  %12986 = load double, ptr %12985, align 8, !tbaa !11
  %12987 = call double @llvm.fmuladd.f64(double 0x3FD417DEBFC17B18, double %12986, double %12978)
  %12988 = load ptr, ptr %7, align 8, !tbaa !9
  %12989 = load i32, ptr %12, align 4, !tbaa !5
  %12990 = load i32, ptr %8, align 4, !tbaa !5
  %12991 = mul nsw i32 8, %12990
  %12992 = add nsw i32 %12989, %12991
  %12993 = sext i32 %12992 to i64
  %12994 = getelementptr inbounds double, ptr %12988, i64 %12993
  %12995 = load double, ptr %12994, align 8, !tbaa !11
  %12996 = call double @llvm.fmuladd.f64(double 0xBFB49217631F5944, double %12995, double %12987)
  %12997 = load ptr, ptr %7, align 8, !tbaa !9
  %12998 = load i32, ptr %12, align 4, !tbaa !5
  %12999 = load i32, ptr %8, align 4, !tbaa !5
  %13000 = mul nsw i32 9, %12999
  %13001 = add nsw i32 %12998, %13000
  %13002 = sext i32 %13001 to i64
  %13003 = getelementptr inbounds double, ptr %12997, i64 %13002
  %13004 = load double, ptr %13003, align 8, !tbaa !11
  %13005 = call double @llvm.fmuladd.f64(double 0x3F85E50BB681A448, double %13004, double %12996)
  %13006 = load ptr, ptr %7, align 8, !tbaa !9
  %13007 = load i32, ptr %12, align 4, !tbaa !5
  %13008 = load i32, ptr %8, align 4, !tbaa !5
  %13009 = mul nsw i32 10, %13008
  %13010 = add nsw i32 %13007, %13009
  %13011 = sext i32 %13010 to i64
  %13012 = getelementptr inbounds double, ptr %13006, i64 %13011
  %13013 = load double, ptr %13012, align 8, !tbaa !11
  %13014 = call double @llvm.fmuladd.f64(double 0x3C9C800000000000, double %13013, double %13005)
  %13015 = load ptr, ptr %7, align 8, !tbaa !9
  %13016 = load i32, ptr %12, align 4, !tbaa !5
  %13017 = load i32, ptr %8, align 4, !tbaa !5
  %13018 = mul nsw i32 11, %13017
  %13019 = add nsw i32 %13016, %13018
  %13020 = sext i32 %13019 to i64
  %13021 = getelementptr inbounds double, ptr %13015, i64 %13020
  %13022 = load double, ptr %13021, align 8, !tbaa !11
  %13023 = call double @llvm.fmuladd.f64(double 0xBC60000000000000, double %13022, double %13014)
  %13024 = load ptr, ptr %7, align 8, !tbaa !9
  %13025 = load i32, ptr %12, align 4, !tbaa !5
  %13026 = load i32, ptr %8, align 4, !tbaa !5
  %13027 = mul nsw i32 12, %13026
  %13028 = add nsw i32 %13025, %13027
  %13029 = sext i32 %13028 to i64
  %13030 = getelementptr inbounds double, ptr %13024, i64 %13029
  %13031 = load double, ptr %13030, align 8, !tbaa !11
  %13032 = call double @llvm.fmuladd.f64(double 0xBC80800000000000, double %13031, double %13023)
  %13033 = load ptr, ptr %7, align 8, !tbaa !9
  %13034 = load i32, ptr %12, align 4, !tbaa !5
  %13035 = load i32, ptr %8, align 4, !tbaa !5
  %13036 = mul nsw i32 13, %13035
  %13037 = add nsw i32 %13034, %13036
  %13038 = sext i32 %13037 to i64
  %13039 = getelementptr inbounds double, ptr %13033, i64 %13038
  %13040 = load double, ptr %13039, align 8, !tbaa !11
  %13041 = call double @llvm.fmuladd.f64(double 0x3CA5CFFFFFFFFFFF, double %13040, double %13032)
  %13042 = load ptr, ptr %7, align 8, !tbaa !9
  %13043 = load i32, ptr %12, align 4, !tbaa !5
  %13044 = load i32, ptr %8, align 4, !tbaa !5
  %13045 = mul nsw i32 14, %13044
  %13046 = add nsw i32 %13043, %13045
  %13047 = sext i32 %13046 to i64
  %13048 = getelementptr inbounds double, ptr %13042, i64 %13047
  %13049 = load double, ptr %13048, align 8, !tbaa !11
  %13050 = call double @llvm.fmuladd.f64(double 0x3C94000000000000, double %13049, double %13041)
  %13051 = load ptr, ptr %7, align 8, !tbaa !9
  %13052 = load i32, ptr %12, align 4, !tbaa !5
  %13053 = load i32, ptr %8, align 4, !tbaa !5
  %13054 = mul nsw i32 15, %13053
  %13055 = add nsw i32 %13052, %13054
  %13056 = sext i32 %13055 to i64
  %13057 = getelementptr inbounds double, ptr %13051, i64 %13056
  %13058 = load double, ptr %13057, align 8, !tbaa !11
  %13059 = call double @llvm.fmuladd.f64(double 0xBC82FFFFFFFFFFFF, double %13058, double %13050)
  %13060 = load ptr, ptr %7, align 8, !tbaa !9
  %13061 = load i32, ptr %12, align 4, !tbaa !5
  %13062 = load i32, ptr %8, align 4, !tbaa !5
  %13063 = mul nsw i32 16, %13062
  %13064 = add nsw i32 %13061, %13063
  %13065 = sext i32 %13064 to i64
  %13066 = getelementptr inbounds double, ptr %13060, i64 %13065
  %13067 = load double, ptr %13066, align 8, !tbaa !11
  %13068 = call double @llvm.fmuladd.f64(double 0xBC97E00000000000, double %13067, double %13059)
  %13069 = load ptr, ptr %7, align 8, !tbaa !9
  %13070 = load i32, ptr %12, align 4, !tbaa !5
  %13071 = load i32, ptr %8, align 4, !tbaa !5
  %13072 = mul nsw i32 17, %13071
  %13073 = add nsw i32 %13070, %13072
  %13074 = sext i32 %13073 to i64
  %13075 = getelementptr inbounds double, ptr %13069, i64 %13074
  %13076 = load double, ptr %13075, align 8, !tbaa !11
  %13077 = call double @llvm.fmuladd.f64(double 0xBC8B800000000001, double %13076, double %13068)
  %13078 = load ptr, ptr %7, align 8, !tbaa !9
  %13079 = load i32, ptr %12, align 4, !tbaa !5
  %13080 = load i32, ptr %8, align 4, !tbaa !5
  %13081 = mul nsw i32 18, %13080
  %13082 = add nsw i32 %13079, %13081
  %13083 = sext i32 %13082 to i64
  %13084 = getelementptr inbounds double, ptr %13078, i64 %13083
  %13085 = load double, ptr %13084, align 8, !tbaa !11
  %13086 = call double @llvm.fmuladd.f64(double 0x3C7FFFFFFFFFFFFF, double %13085, double %13077)
  %13087 = load ptr, ptr %7, align 8, !tbaa !9
  %13088 = load i32, ptr %12, align 4, !tbaa !5
  %13089 = load i32, ptr %8, align 4, !tbaa !5
  %13090 = mul nsw i32 19, %13089
  %13091 = add nsw i32 %13088, %13090
  %13092 = sext i32 %13091 to i64
  %13093 = getelementptr inbounds double, ptr %13087, i64 %13092
  %13094 = load double, ptr %13093, align 8, !tbaa !11
  %13095 = call double @llvm.fmuladd.f64(double 0x3C74000000000000, double %13094, double %13086)
  %13096 = load ptr, ptr %7, align 8, !tbaa !9
  %13097 = load i32, ptr %12, align 4, !tbaa !5
  %13098 = load i32, ptr %8, align 4, !tbaa !5
  %13099 = mul nsw i32 20, %13098
  %13100 = add nsw i32 %13097, %13099
  %13101 = sext i32 %13100 to i64
  %13102 = getelementptr inbounds double, ptr %13096, i64 %13101
  %13103 = load double, ptr %13102, align 8, !tbaa !11
  %13104 = call double @llvm.fmuladd.f64(double 0x3C93800000000000, double %13103, double %13095)
  %13105 = load ptr, ptr %7, align 8, !tbaa !9
  %13106 = load i32, ptr %12, align 4, !tbaa !5
  %13107 = load i32, ptr %8, align 4, !tbaa !5
  %13108 = mul nsw i32 21, %13107
  %13109 = add nsw i32 %13106, %13108
  %13110 = sext i32 %13109 to i64
  %13111 = getelementptr inbounds double, ptr %13105, i64 %13110
  %13112 = load double, ptr %13111, align 8, !tbaa !11
  %13113 = call double @llvm.fmuladd.f64(double 0x3C86FFFFFFFFFFFF, double %13112, double %13104)
  %13114 = load ptr, ptr %7, align 8, !tbaa !9
  %13115 = load i32, ptr %12, align 4, !tbaa !5
  %13116 = load i32, ptr %8, align 4, !tbaa !5
  %13117 = mul nsw i32 22, %13116
  %13118 = add nsw i32 %13115, %13117
  %13119 = sext i32 %13118 to i64
  %13120 = getelementptr inbounds double, ptr %13114, i64 %13119
  %13121 = load double, ptr %13120, align 8, !tbaa !11
  %13122 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %13121, double %13113)
  %13123 = load ptr, ptr %7, align 8, !tbaa !9
  %13124 = load i32, ptr %12, align 4, !tbaa !5
  %13125 = load i32, ptr %8, align 4, !tbaa !5
  %13126 = mul nsw i32 23, %13125
  %13127 = add nsw i32 %13124, %13126
  %13128 = sext i32 %13127 to i64
  %13129 = getelementptr inbounds double, ptr %13123, i64 %13128
  %13130 = load double, ptr %13129, align 8, !tbaa !11
  %13131 = call double @llvm.fmuladd.f64(double 0xBC68FFFFFFFFFFFD, double %13130, double %13122)
  %13132 = load ptr, ptr %7, align 8, !tbaa !9
  %13133 = load i32, ptr %12, align 4, !tbaa !5
  %13134 = load i32, ptr %8, align 4, !tbaa !5
  %13135 = mul nsw i32 24, %13134
  %13136 = add nsw i32 %13133, %13135
  %13137 = sext i32 %13136 to i64
  %13138 = getelementptr inbounds double, ptr %13132, i64 %13137
  %13139 = load double, ptr %13138, align 8, !tbaa !11
  %13140 = call double @llvm.fmuladd.f64(double 0x3C78000000000002, double %13139, double %13131)
  %13141 = load ptr, ptr %7, align 8, !tbaa !9
  %13142 = load i32, ptr %12, align 4, !tbaa !5
  %13143 = load i32, ptr %8, align 4, !tbaa !5
  %13144 = mul nsw i32 25, %13143
  %13145 = add nsw i32 %13142, %13144
  %13146 = sext i32 %13145 to i64
  %13147 = getelementptr inbounds double, ptr %13141, i64 %13146
  %13148 = load double, ptr %13147, align 8, !tbaa !11
  %13149 = call double @llvm.fmuladd.f64(double 0x3CA7C00000000001, double %13148, double %13140)
  %13150 = load ptr, ptr %7, align 8, !tbaa !9
  %13151 = load i32, ptr %12, align 4, !tbaa !5
  %13152 = load i32, ptr %8, align 4, !tbaa !5
  %13153 = mul nsw i32 26, %13152
  %13154 = add nsw i32 %13151, %13153
  %13155 = sext i32 %13154 to i64
  %13156 = getelementptr inbounds double, ptr %13150, i64 %13155
  %13157 = load double, ptr %13156, align 8, !tbaa !11
  %13158 = call double @llvm.fmuladd.f64(double 0x3CA4100000000001, double %13157, double %13149)
  %13159 = load ptr, ptr %7, align 8, !tbaa !9
  %13160 = load i32, ptr %12, align 4, !tbaa !5
  %13161 = load i32, ptr %8, align 4, !tbaa !5
  %13162 = mul nsw i32 27, %13161
  %13163 = add nsw i32 %13160, %13162
  %13164 = sext i32 %13163 to i64
  %13165 = getelementptr inbounds double, ptr %13159, i64 %13164
  %13166 = load double, ptr %13165, align 8, !tbaa !11
  %13167 = call double @llvm.fmuladd.f64(double 0xBCA1A00000000000, double %13166, double %13158)
  %13168 = load ptr, ptr %7, align 8, !tbaa !9
  %13169 = load i32, ptr %12, align 4, !tbaa !5
  %13170 = load i32, ptr %8, align 4, !tbaa !5
  %13171 = mul nsw i32 28, %13170
  %13172 = add nsw i32 %13169, %13171
  %13173 = sext i32 %13172 to i64
  %13174 = getelementptr inbounds double, ptr %13168, i64 %13173
  %13175 = load double, ptr %13174, align 8, !tbaa !11
  %13176 = call double @llvm.fmuladd.f64(double 0x3C89000000000000, double %13175, double %13167)
  %13177 = load ptr, ptr %7, align 8, !tbaa !9
  %13178 = load i32, ptr %12, align 4, !tbaa !5
  %13179 = load i32, ptr %8, align 4, !tbaa !5
  %13180 = mul nsw i32 29, %13179
  %13181 = add nsw i32 %13178, %13180
  %13182 = sext i32 %13181 to i64
  %13183 = getelementptr inbounds double, ptr %13177, i64 %13182
  %13184 = load double, ptr %13183, align 8, !tbaa !11
  %13185 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %13184, double %13176)
  %13186 = load ptr, ptr %7, align 8, !tbaa !9
  %13187 = load i32, ptr %12, align 4, !tbaa !5
  %13188 = load i32, ptr %8, align 4, !tbaa !5
  %13189 = mul nsw i32 30, %13188
  %13190 = add nsw i32 %13187, %13189
  %13191 = sext i32 %13190 to i64
  %13192 = getelementptr inbounds double, ptr %13186, i64 %13191
  %13193 = load double, ptr %13192, align 8, !tbaa !11
  %13194 = call double @llvm.fmuladd.f64(double 0xBC92400000000000, double %13193, double %13185)
  %13195 = load ptr, ptr %7, align 8, !tbaa !9
  %13196 = load i32, ptr %12, align 4, !tbaa !5
  %13197 = load i32, ptr %8, align 4, !tbaa !5
  %13198 = mul nsw i32 31, %13197
  %13199 = add nsw i32 %13196, %13198
  %13200 = sext i32 %13199 to i64
  %13201 = getelementptr inbounds double, ptr %13195, i64 %13200
  %13202 = load double, ptr %13201, align 8, !tbaa !11
  %13203 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %13202, double %13194)
  %13204 = load ptr, ptr %7, align 8, !tbaa !9
  %13205 = load i32, ptr %12, align 4, !tbaa !5
  %13206 = load i32, ptr %8, align 4, !tbaa !5
  %13207 = mul nsw i32 32, %13206
  %13208 = add nsw i32 %13205, %13207
  %13209 = sext i32 %13208 to i64
  %13210 = getelementptr inbounds double, ptr %13204, i64 %13209
  %13211 = load double, ptr %13210, align 8, !tbaa !11
  %13212 = call double @llvm.fmuladd.f64(double 0xBCA0780000000001, double %13211, double %13203)
  %13213 = load ptr, ptr %7, align 8, !tbaa !9
  %13214 = load i32, ptr %12, align 4, !tbaa !5
  %13215 = load i32, ptr %8, align 4, !tbaa !5
  %13216 = mul nsw i32 33, %13215
  %13217 = add nsw i32 %13214, %13216
  %13218 = sext i32 %13217 to i64
  %13219 = getelementptr inbounds double, ptr %13213, i64 %13218
  %13220 = load double, ptr %13219, align 8, !tbaa !11
  %13221 = call double @llvm.fmuladd.f64(double 0x3C69800000000003, double %13220, double %13212)
  %13222 = load ptr, ptr %7, align 8, !tbaa !9
  %13223 = load i32, ptr %12, align 4, !tbaa !5
  %13224 = load i32, ptr %8, align 4, !tbaa !5
  %13225 = mul nsw i32 34, %13224
  %13226 = add nsw i32 %13223, %13225
  %13227 = sext i32 %13226 to i64
  %13228 = getelementptr inbounds double, ptr %13222, i64 %13227
  %13229 = load double, ptr %13228, align 8, !tbaa !11
  %13230 = call double @llvm.fmuladd.f64(double 0xBC70000000000001, double %13229, double %13221)
  %13231 = load ptr, ptr %7, align 8, !tbaa !9
  %13232 = load i32, ptr %12, align 4, !tbaa !5
  %13233 = load i32, ptr %8, align 4, !tbaa !5
  %13234 = mul nsw i32 35, %13233
  %13235 = add nsw i32 %13232, %13234
  %13236 = sext i32 %13235 to i64
  %13237 = getelementptr inbounds double, ptr %13231, i64 %13236
  %13238 = load double, ptr %13237, align 8, !tbaa !11
  %13239 = call double @llvm.fmuladd.f64(double 0x3CA27FFFFFFFFFFF, double %13238, double %13230)
  %13240 = load ptr, ptr %7, align 8, !tbaa !9
  %13241 = load i32, ptr %12, align 4, !tbaa !5
  %13242 = load i32, ptr %8, align 4, !tbaa !5
  %13243 = mul nsw i32 36, %13242
  %13244 = add nsw i32 %13241, %13243
  %13245 = sext i32 %13244 to i64
  %13246 = getelementptr inbounds double, ptr %13240, i64 %13245
  %13247 = load double, ptr %13246, align 8, !tbaa !11
  %13248 = call double @llvm.fmuladd.f64(double 0xBC90F00000000000, double %13247, double %13239)
  %13249 = load ptr, ptr %7, align 8, !tbaa !9
  %13250 = load i32, ptr %12, align 4, !tbaa !5
  %13251 = load i32, ptr %8, align 4, !tbaa !5
  %13252 = mul nsw i32 37, %13251
  %13253 = add nsw i32 %13250, %13252
  %13254 = sext i32 %13253 to i64
  %13255 = getelementptr inbounds double, ptr %13249, i64 %13254
  %13256 = load double, ptr %13255, align 8, !tbaa !11
  %13257 = call double @llvm.fmuladd.f64(double 0xBC82A00000000000, double %13256, double %13248)
  %13258 = load ptr, ptr %7, align 8, !tbaa !9
  %13259 = load i32, ptr %12, align 4, !tbaa !5
  %13260 = load i32, ptr %8, align 4, !tbaa !5
  %13261 = mul nsw i32 38, %13260
  %13262 = add nsw i32 %13259, %13261
  %13263 = sext i32 %13262 to i64
  %13264 = getelementptr inbounds double, ptr %13258, i64 %13263
  %13265 = load double, ptr %13264, align 8, !tbaa !11
  %13266 = call double @llvm.fmuladd.f64(double 0x3C6C000000000000, double %13265, double %13257)
  %13267 = load ptr, ptr %7, align 8, !tbaa !9
  %13268 = load i32, ptr %12, align 4, !tbaa !5
  %13269 = load i32, ptr %8, align 4, !tbaa !5
  %13270 = mul nsw i32 39, %13269
  %13271 = add nsw i32 %13268, %13270
  %13272 = sext i32 %13271 to i64
  %13273 = getelementptr inbounds double, ptr %13267, i64 %13272
  %13274 = load double, ptr %13273, align 8, !tbaa !11
  %13275 = call double @llvm.fmuladd.f64(double 0xBC66000000000000, double %13274, double %13266)
  store double %13275, ptr %11, align 8, !tbaa !11
  %13276 = load double, ptr %11, align 8, !tbaa !11
  %13277 = load ptr, ptr %9, align 8, !tbaa !9
  %13278 = load i32, ptr %12, align 4, !tbaa !5
  %13279 = load i32, ptr %10, align 4, !tbaa !5
  %13280 = mul nsw i32 36, %13279
  %13281 = add nsw i32 %13278, %13280
  %13282 = sext i32 %13281 to i64
  %13283 = getelementptr inbounds double, ptr %13277, i64 %13282
  %13284 = load double, ptr %13283, align 8, !tbaa !11
  %13285 = fadd double %13284, %13276
  store double %13285, ptr %13283, align 8, !tbaa !11
  %13286 = load ptr, ptr %7, align 8, !tbaa !9
  %13287 = load i32, ptr %12, align 4, !tbaa !5
  %13288 = load i32, ptr %8, align 4, !tbaa !5
  %13289 = mul nsw i32 0, %13288
  %13290 = add nsw i32 %13287, %13289
  %13291 = sext i32 %13290 to i64
  %13292 = getelementptr inbounds double, ptr %13286, i64 %13291
  %13293 = load double, ptr %13292, align 8, !tbaa !11
  %13294 = load ptr, ptr %7, align 8, !tbaa !9
  %13295 = load i32, ptr %12, align 4, !tbaa !5
  %13296 = load i32, ptr %8, align 4, !tbaa !5
  %13297 = mul nsw i32 1, %13296
  %13298 = add nsw i32 %13295, %13297
  %13299 = sext i32 %13298 to i64
  %13300 = getelementptr inbounds double, ptr %13294, i64 %13299
  %13301 = load double, ptr %13300, align 8, !tbaa !11
  %13302 = fmul double 0xBFA352D4DB969C0E, %13301
  %13303 = call double @llvm.fmuladd.f64(double 0xBFE333710B32A29A, double %13293, double %13302)
  %13304 = load ptr, ptr %7, align 8, !tbaa !9
  %13305 = load i32, ptr %12, align 4, !tbaa !5
  %13306 = load i32, ptr %8, align 4, !tbaa !5
  %13307 = mul nsw i32 2, %13306
  %13308 = add nsw i32 %13305, %13307
  %13309 = sext i32 %13308 to i64
  %13310 = getelementptr inbounds double, ptr %13304, i64 %13309
  %13311 = load double, ptr %13310, align 8, !tbaa !11
  %13312 = call double @llvm.fmuladd.f64(double 0xBFBEED13A9F0D910, double %13311, double %13303)
  %13313 = load ptr, ptr %7, align 8, !tbaa !9
  %13314 = load i32, ptr %12, align 4, !tbaa !5
  %13315 = load i32, ptr %8, align 4, !tbaa !5
  %13316 = mul nsw i32 3, %13315
  %13317 = add nsw i32 %13314, %13316
  %13318 = sext i32 %13317 to i64
  %13319 = getelementptr inbounds double, ptr %13313, i64 %13318
  %13320 = load double, ptr %13319, align 8, !tbaa !11
  %13321 = call double @llvm.fmuladd.f64(double 0x3FA87D764354855F, double %13320, double %13312)
  %13322 = load ptr, ptr %7, align 8, !tbaa !9
  %13323 = load i32, ptr %12, align 4, !tbaa !5
  %13324 = load i32, ptr %8, align 4, !tbaa !5
  %13325 = mul nsw i32 4, %13324
  %13326 = add nsw i32 %13323, %13325
  %13327 = sext i32 %13326 to i64
  %13328 = getelementptr inbounds double, ptr %13322, i64 %13327
  %13329 = load double, ptr %13328, align 8, !tbaa !11
  %13330 = call double @llvm.fmuladd.f64(double 0x3FC27B05E24EC5F8, double %13329, double %13321)
  %13331 = load ptr, ptr %7, align 8, !tbaa !9
  %13332 = load i32, ptr %12, align 4, !tbaa !5
  %13333 = load i32, ptr %8, align 4, !tbaa !5
  %13334 = mul nsw i32 5, %13333
  %13335 = add nsw i32 %13332, %13334
  %13336 = sext i32 %13335 to i64
  %13337 = getelementptr inbounds double, ptr %13331, i64 %13336
  %13338 = load double, ptr %13337, align 8, !tbaa !11
  %13339 = call double @llvm.fmuladd.f64(double 0x3FF670C5F1F4C92E, double %13338, double %13330)
  %13340 = load ptr, ptr %7, align 8, !tbaa !9
  %13341 = load i32, ptr %12, align 4, !tbaa !5
  %13342 = load i32, ptr %8, align 4, !tbaa !5
  %13343 = mul nsw i32 6, %13342
  %13344 = add nsw i32 %13341, %13343
  %13345 = sext i32 %13344 to i64
  %13346 = getelementptr inbounds double, ptr %13340, i64 %13345
  %13347 = load double, ptr %13346, align 8, !tbaa !11
  %13348 = call double @llvm.fmuladd.f64(double 0xBFD41C0D131D4295, double %13347, double %13339)
  %13349 = load ptr, ptr %7, align 8, !tbaa !9
  %13350 = load i32, ptr %12, align 4, !tbaa !5
  %13351 = load i32, ptr %8, align 4, !tbaa !5
  %13352 = mul nsw i32 7, %13351
  %13353 = add nsw i32 %13350, %13352
  %13354 = sext i32 %13353 to i64
  %13355 = getelementptr inbounds double, ptr %13349, i64 %13354
  %13356 = load double, ptr %13355, align 8, !tbaa !11
  %13357 = call double @llvm.fmuladd.f64(double 0x3FD35DAE88CBA64D, double %13356, double %13348)
  %13358 = load ptr, ptr %7, align 8, !tbaa !9
  %13359 = load i32, ptr %12, align 4, !tbaa !5
  %13360 = load i32, ptr %8, align 4, !tbaa !5
  %13361 = mul nsw i32 8, %13360
  %13362 = add nsw i32 %13359, %13361
  %13363 = sext i32 %13362 to i64
  %13364 = getelementptr inbounds double, ptr %13358, i64 %13363
  %13365 = load double, ptr %13364, align 8, !tbaa !11
  %13366 = call double @llvm.fmuladd.f64(double 0x3FC36A9134CD3C5F, double %13365, double %13357)
  %13367 = load ptr, ptr %7, align 8, !tbaa !9
  %13368 = load i32, ptr %12, align 4, !tbaa !5
  %13369 = load i32, ptr %8, align 4, !tbaa !5
  %13370 = mul nsw i32 9, %13369
  %13371 = add nsw i32 %13368, %13370
  %13372 = sext i32 %13371 to i64
  %13373 = getelementptr inbounds double, ptr %13367, i64 %13372
  %13374 = load double, ptr %13373, align 8, !tbaa !11
  %13375 = call double @llvm.fmuladd.f64(double 0x3F9854E0ADA34BA1, double %13374, double %13366)
  %13376 = load ptr, ptr %7, align 8, !tbaa !9
  %13377 = load i32, ptr %12, align 4, !tbaa !5
  %13378 = load i32, ptr %8, align 4, !tbaa !5
  %13379 = mul nsw i32 10, %13378
  %13380 = add nsw i32 %13377, %13379
  %13381 = sext i32 %13380 to i64
  %13382 = getelementptr inbounds double, ptr %13376, i64 %13381
  %13383 = load double, ptr %13382, align 8, !tbaa !11
  %13384 = call double @llvm.fmuladd.f64(double 0xBC9DFFFFFFFFFFFE, double %13383, double %13375)
  %13385 = load ptr, ptr %7, align 8, !tbaa !9
  %13386 = load i32, ptr %12, align 4, !tbaa !5
  %13387 = load i32, ptr %8, align 4, !tbaa !5
  %13388 = mul nsw i32 12, %13387
  %13389 = add nsw i32 %13386, %13388
  %13390 = sext i32 %13389 to i64
  %13391 = getelementptr inbounds double, ptr %13385, i64 %13390
  %13392 = load double, ptr %13391, align 8, !tbaa !11
  %13393 = call double @llvm.fmuladd.f64(double 0x3C7B000000000001, double %13392, double %13384)
  %13394 = load ptr, ptr %7, align 8, !tbaa !9
  %13395 = load i32, ptr %12, align 4, !tbaa !5
  %13396 = load i32, ptr %8, align 4, !tbaa !5
  %13397 = mul nsw i32 13, %13396
  %13398 = add nsw i32 %13395, %13397
  %13399 = sext i32 %13398 to i64
  %13400 = getelementptr inbounds double, ptr %13394, i64 %13399
  %13401 = load double, ptr %13400, align 8, !tbaa !11
  %13402 = call double @llvm.fmuladd.f64(double 0xBC89000000000000, double %13401, double %13393)
  %13403 = load ptr, ptr %7, align 8, !tbaa !9
  %13404 = load i32, ptr %12, align 4, !tbaa !5
  %13405 = load i32, ptr %8, align 4, !tbaa !5
  %13406 = mul nsw i32 14, %13405
  %13407 = add nsw i32 %13404, %13406
  %13408 = sext i32 %13407 to i64
  %13409 = getelementptr inbounds double, ptr %13403, i64 %13408
  %13410 = load double, ptr %13409, align 8, !tbaa !11
  %13411 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %13410, double %13402)
  %13412 = load ptr, ptr %7, align 8, !tbaa !9
  %13413 = load i32, ptr %12, align 4, !tbaa !5
  %13414 = load i32, ptr %8, align 4, !tbaa !5
  %13415 = mul nsw i32 15, %13414
  %13416 = add nsw i32 %13413, %13415
  %13417 = sext i32 %13416 to i64
  %13418 = getelementptr inbounds double, ptr %13412, i64 %13417
  %13419 = load double, ptr %13418, align 8, !tbaa !11
  %13420 = call double @llvm.fmuladd.f64(double 0x3CA67FFFFFFFFFFE, double %13419, double %13411)
  %13421 = load ptr, ptr %7, align 8, !tbaa !9
  %13422 = load i32, ptr %12, align 4, !tbaa !5
  %13423 = load i32, ptr %8, align 4, !tbaa !5
  %13424 = mul nsw i32 16, %13423
  %13425 = add nsw i32 %13422, %13424
  %13426 = sext i32 %13425 to i64
  %13427 = getelementptr inbounds double, ptr %13421, i64 %13426
  %13428 = load double, ptr %13427, align 8, !tbaa !11
  %13429 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %13428, double %13420)
  %13430 = load ptr, ptr %7, align 8, !tbaa !9
  %13431 = load i32, ptr %12, align 4, !tbaa !5
  %13432 = load i32, ptr %8, align 4, !tbaa !5
  %13433 = mul nsw i32 17, %13432
  %13434 = add nsw i32 %13431, %13433
  %13435 = sext i32 %13434 to i64
  %13436 = getelementptr inbounds double, ptr %13430, i64 %13435
  %13437 = load double, ptr %13436, align 8, !tbaa !11
  %13438 = call double @llvm.fmuladd.f64(double 0xBCA33FFFFFFFFFFE, double %13437, double %13429)
  %13439 = load ptr, ptr %7, align 8, !tbaa !9
  %13440 = load i32, ptr %12, align 4, !tbaa !5
  %13441 = load i32, ptr %8, align 4, !tbaa !5
  %13442 = mul nsw i32 18, %13441
  %13443 = add nsw i32 %13440, %13442
  %13444 = sext i32 %13443 to i64
  %13445 = getelementptr inbounds double, ptr %13439, i64 %13444
  %13446 = load double, ptr %13445, align 8, !tbaa !11
  %13447 = call double @llvm.fmuladd.f64(double 0x3C8E000000000000, double %13446, double %13438)
  %13448 = load ptr, ptr %7, align 8, !tbaa !9
  %13449 = load i32, ptr %12, align 4, !tbaa !5
  %13450 = load i32, ptr %8, align 4, !tbaa !5
  %13451 = mul nsw i32 19, %13450
  %13452 = add nsw i32 %13449, %13451
  %13453 = sext i32 %13452 to i64
  %13454 = getelementptr inbounds double, ptr %13448, i64 %13453
  %13455 = load double, ptr %13454, align 8, !tbaa !11
  %13456 = call double @llvm.fmuladd.f64(double 0x3C78000000000002, double %13455, double %13447)
  %13457 = load ptr, ptr %7, align 8, !tbaa !9
  %13458 = load i32, ptr %12, align 4, !tbaa !5
  %13459 = load i32, ptr %8, align 4, !tbaa !5
  %13460 = mul nsw i32 20, %13459
  %13461 = add nsw i32 %13458, %13460
  %13462 = sext i32 %13461 to i64
  %13463 = getelementptr inbounds double, ptr %13457, i64 %13462
  %13464 = load double, ptr %13463, align 8, !tbaa !11
  %13465 = call double @llvm.fmuladd.f64(double 0x3C8C000000000000, double %13464, double %13456)
  %13466 = load ptr, ptr %7, align 8, !tbaa !9
  %13467 = load i32, ptr %12, align 4, !tbaa !5
  %13468 = load i32, ptr %8, align 4, !tbaa !5
  %13469 = mul nsw i32 21, %13468
  %13470 = add nsw i32 %13467, %13469
  %13471 = sext i32 %13470 to i64
  %13472 = getelementptr inbounds double, ptr %13466, i64 %13471
  %13473 = load double, ptr %13472, align 8, !tbaa !11
  %13474 = call double @llvm.fmuladd.f64(double 0x3C92000000000000, double %13473, double %13465)
  %13475 = load ptr, ptr %7, align 8, !tbaa !9
  %13476 = load i32, ptr %12, align 4, !tbaa !5
  %13477 = load i32, ptr %8, align 4, !tbaa !5
  %13478 = mul nsw i32 22, %13477
  %13479 = add nsw i32 %13476, %13478
  %13480 = sext i32 %13479 to i64
  %13481 = getelementptr inbounds double, ptr %13475, i64 %13480
  %13482 = load double, ptr %13481, align 8, !tbaa !11
  %13483 = call double @llvm.fmuladd.f64(double 0x3C8F000000000000, double %13482, double %13474)
  %13484 = load ptr, ptr %7, align 8, !tbaa !9
  %13485 = load i32, ptr %12, align 4, !tbaa !5
  %13486 = load i32, ptr %8, align 4, !tbaa !5
  %13487 = mul nsw i32 23, %13486
  %13488 = add nsw i32 %13485, %13487
  %13489 = sext i32 %13488 to i64
  %13490 = getelementptr inbounds double, ptr %13484, i64 %13489
  %13491 = load double, ptr %13490, align 8, !tbaa !11
  %13492 = call double @llvm.fmuladd.f64(double 0xBCA61FFFFFFFFFFF, double %13491, double %13483)
  %13493 = load ptr, ptr %7, align 8, !tbaa !9
  %13494 = load i32, ptr %12, align 4, !tbaa !5
  %13495 = load i32, ptr %8, align 4, !tbaa !5
  %13496 = mul nsw i32 24, %13495
  %13497 = add nsw i32 %13494, %13496
  %13498 = sext i32 %13497 to i64
  %13499 = getelementptr inbounds double, ptr %13493, i64 %13498
  %13500 = load double, ptr %13499, align 8, !tbaa !11
  %13501 = call double @llvm.fmuladd.f64(double 0x3C94000000000000, double %13500, double %13492)
  %13502 = load ptr, ptr %7, align 8, !tbaa !9
  %13503 = load i32, ptr %12, align 4, !tbaa !5
  %13504 = load i32, ptr %8, align 4, !tbaa !5
  %13505 = mul nsw i32 25, %13504
  %13506 = add nsw i32 %13503, %13505
  %13507 = sext i32 %13506 to i64
  %13508 = getelementptr inbounds double, ptr %13502, i64 %13507
  %13509 = load double, ptr %13508, align 8, !tbaa !11
  %13510 = call double @llvm.fmuladd.f64(double 0xBC99000000000000, double %13509, double %13501)
  %13511 = load ptr, ptr %7, align 8, !tbaa !9
  %13512 = load i32, ptr %12, align 4, !tbaa !5
  %13513 = load i32, ptr %8, align 4, !tbaa !5
  %13514 = mul nsw i32 26, %13513
  %13515 = add nsw i32 %13512, %13514
  %13516 = sext i32 %13515 to i64
  %13517 = getelementptr inbounds double, ptr %13511, i64 %13516
  %13518 = load double, ptr %13517, align 8, !tbaa !11
  %13519 = call double @llvm.fmuladd.f64(double 0xBC9F7FFFFFFFFFFC, double %13518, double %13510)
  %13520 = load ptr, ptr %7, align 8, !tbaa !9
  %13521 = load i32, ptr %12, align 4, !tbaa !5
  %13522 = load i32, ptr %8, align 4, !tbaa !5
  %13523 = mul nsw i32 27, %13522
  %13524 = add nsw i32 %13521, %13523
  %13525 = sext i32 %13524 to i64
  %13526 = getelementptr inbounds double, ptr %13520, i64 %13525
  %13527 = load double, ptr %13526, align 8, !tbaa !11
  %13528 = call double @llvm.fmuladd.f64(double 0xBC8D800000000000, double %13527, double %13519)
  %13529 = load ptr, ptr %7, align 8, !tbaa !9
  %13530 = load i32, ptr %12, align 4, !tbaa !5
  %13531 = load i32, ptr %8, align 4, !tbaa !5
  %13532 = mul nsw i32 28, %13531
  %13533 = add nsw i32 %13530, %13532
  %13534 = sext i32 %13533 to i64
  %13535 = getelementptr inbounds double, ptr %13529, i64 %13534
  %13536 = load double, ptr %13535, align 8, !tbaa !11
  %13537 = call double @llvm.fmuladd.f64(double 0xBC9C000000000000, double %13536, double %13528)
  %13538 = load ptr, ptr %7, align 8, !tbaa !9
  %13539 = load i32, ptr %12, align 4, !tbaa !5
  %13540 = load i32, ptr %8, align 4, !tbaa !5
  %13541 = mul nsw i32 29, %13540
  %13542 = add nsw i32 %13539, %13541
  %13543 = sext i32 %13542 to i64
  %13544 = getelementptr inbounds double, ptr %13538, i64 %13543
  %13545 = load double, ptr %13544, align 8, !tbaa !11
  %13546 = call double @llvm.fmuladd.f64(double 0x3C78000000000002, double %13545, double %13537)
  %13547 = load ptr, ptr %7, align 8, !tbaa !9
  %13548 = load i32, ptr %12, align 4, !tbaa !5
  %13549 = load i32, ptr %8, align 4, !tbaa !5
  %13550 = mul nsw i32 30, %13549
  %13551 = add nsw i32 %13548, %13550
  %13552 = sext i32 %13551 to i64
  %13553 = getelementptr inbounds double, ptr %13547, i64 %13552
  %13554 = load double, ptr %13553, align 8, !tbaa !11
  %13555 = call double @llvm.fmuladd.f64(double 0x3C85000000000000, double %13554, double %13546)
  %13556 = load ptr, ptr %7, align 8, !tbaa !9
  %13557 = load i32, ptr %12, align 4, !tbaa !5
  %13558 = load i32, ptr %8, align 4, !tbaa !5
  %13559 = mul nsw i32 31, %13558
  %13560 = add nsw i32 %13557, %13559
  %13561 = sext i32 %13560 to i64
  %13562 = getelementptr inbounds double, ptr %13556, i64 %13561
  %13563 = load double, ptr %13562, align 8, !tbaa !11
  %13564 = call double @llvm.fmuladd.f64(double 0xBC91000000000000, double %13563, double %13555)
  %13565 = load ptr, ptr %7, align 8, !tbaa !9
  %13566 = load i32, ptr %12, align 4, !tbaa !5
  %13567 = load i32, ptr %8, align 4, !tbaa !5
  %13568 = mul nsw i32 32, %13567
  %13569 = add nsw i32 %13566, %13568
  %13570 = sext i32 %13569 to i64
  %13571 = getelementptr inbounds double, ptr %13565, i64 %13570
  %13572 = load double, ptr %13571, align 8, !tbaa !11
  %13573 = call double @llvm.fmuladd.f64(double 0xBC96E00000000000, double %13572, double %13564)
  %13574 = load ptr, ptr %7, align 8, !tbaa !9
  %13575 = load i32, ptr %12, align 4, !tbaa !5
  %13576 = load i32, ptr %8, align 4, !tbaa !5
  %13577 = mul nsw i32 33, %13576
  %13578 = add nsw i32 %13575, %13577
  %13579 = sext i32 %13578 to i64
  %13580 = getelementptr inbounds double, ptr %13574, i64 %13579
  %13581 = load double, ptr %13580, align 8, !tbaa !11
  %13582 = call double @llvm.fmuladd.f64(double 0xBC6EFFFFFFFFFFFD, double %13581, double %13573)
  %13583 = load ptr, ptr %7, align 8, !tbaa !9
  %13584 = load i32, ptr %12, align 4, !tbaa !5
  %13585 = load i32, ptr %8, align 4, !tbaa !5
  %13586 = mul nsw i32 34, %13585
  %13587 = add nsw i32 %13584, %13586
  %13588 = sext i32 %13587 to i64
  %13589 = getelementptr inbounds double, ptr %13583, i64 %13588
  %13590 = load double, ptr %13589, align 8, !tbaa !11
  %13591 = call double @llvm.fmuladd.f64(double 0x3C93800000000000, double %13590, double %13582)
  %13592 = load ptr, ptr %7, align 8, !tbaa !9
  %13593 = load i32, ptr %12, align 4, !tbaa !5
  %13594 = load i32, ptr %8, align 4, !tbaa !5
  %13595 = mul nsw i32 35, %13594
  %13596 = add nsw i32 %13593, %13595
  %13597 = sext i32 %13596 to i64
  %13598 = getelementptr inbounds double, ptr %13592, i64 %13597
  %13599 = load double, ptr %13598, align 8, !tbaa !11
  %13600 = call double @llvm.fmuladd.f64(double 0xBC8F000000000000, double %13599, double %13591)
  %13601 = load ptr, ptr %7, align 8, !tbaa !9
  %13602 = load i32, ptr %12, align 4, !tbaa !5
  %13603 = load i32, ptr %8, align 4, !tbaa !5
  %13604 = mul nsw i32 36, %13603
  %13605 = add nsw i32 %13602, %13604
  %13606 = sext i32 %13605 to i64
  %13607 = getelementptr inbounds double, ptr %13601, i64 %13606
  %13608 = load double, ptr %13607, align 8, !tbaa !11
  %13609 = call double @llvm.fmuladd.f64(double 0x3C7F000000000000, double %13608, double %13600)
  %13610 = load ptr, ptr %7, align 8, !tbaa !9
  %13611 = load i32, ptr %12, align 4, !tbaa !5
  %13612 = load i32, ptr %8, align 4, !tbaa !5
  %13613 = mul nsw i32 37, %13612
  %13614 = add nsw i32 %13611, %13613
  %13615 = sext i32 %13614 to i64
  %13616 = getelementptr inbounds double, ptr %13610, i64 %13615
  %13617 = load double, ptr %13616, align 8, !tbaa !11
  %13618 = call double @llvm.fmuladd.f64(double 0x3C66000000000000, double %13617, double %13609)
  %13619 = load ptr, ptr %7, align 8, !tbaa !9
  %13620 = load i32, ptr %12, align 4, !tbaa !5
  %13621 = load i32, ptr %8, align 4, !tbaa !5
  %13622 = mul nsw i32 38, %13621
  %13623 = add nsw i32 %13620, %13622
  %13624 = sext i32 %13623 to i64
  %13625 = getelementptr inbounds double, ptr %13619, i64 %13624
  %13626 = load double, ptr %13625, align 8, !tbaa !11
  %13627 = call double @llvm.fmuladd.f64(double 0x3C89FFFFFFFFFFFF, double %13626, double %13618)
  %13628 = load ptr, ptr %7, align 8, !tbaa !9
  %13629 = load i32, ptr %12, align 4, !tbaa !5
  %13630 = load i32, ptr %8, align 4, !tbaa !5
  %13631 = mul nsw i32 39, %13630
  %13632 = add nsw i32 %13629, %13631
  %13633 = sext i32 %13632 to i64
  %13634 = getelementptr inbounds double, ptr %13628, i64 %13633
  %13635 = load double, ptr %13634, align 8, !tbaa !11
  %13636 = call double @llvm.fmuladd.f64(double 0x3C8B000000000000, double %13635, double %13627)
  store double %13636, ptr %11, align 8, !tbaa !11
  %13637 = load double, ptr %11, align 8, !tbaa !11
  %13638 = load ptr, ptr %9, align 8, !tbaa !9
  %13639 = load i32, ptr %12, align 4, !tbaa !5
  %13640 = load i32, ptr %10, align 4, !tbaa !5
  %13641 = mul nsw i32 37, %13640
  %13642 = add nsw i32 %13639, %13641
  %13643 = sext i32 %13642 to i64
  %13644 = getelementptr inbounds double, ptr %13638, i64 %13643
  %13645 = load double, ptr %13644, align 8, !tbaa !11
  %13646 = fadd double %13645, %13637
  store double %13646, ptr %13644, align 8, !tbaa !11
  %13647 = load ptr, ptr %7, align 8, !tbaa !9
  %13648 = load i32, ptr %12, align 4, !tbaa !5
  %13649 = load i32, ptr %8, align 4, !tbaa !5
  %13650 = mul nsw i32 0, %13649
  %13651 = add nsw i32 %13648, %13650
  %13652 = sext i32 %13651 to i64
  %13653 = getelementptr inbounds double, ptr %13647, i64 %13652
  %13654 = load double, ptr %13653, align 8, !tbaa !11
  %13655 = load ptr, ptr %7, align 8, !tbaa !9
  %13656 = load i32, ptr %12, align 4, !tbaa !5
  %13657 = load i32, ptr %8, align 4, !tbaa !5
  %13658 = mul nsw i32 1, %13657
  %13659 = add nsw i32 %13656, %13658
  %13660 = sext i32 %13659 to i64
  %13661 = getelementptr inbounds double, ptr %13655, i64 %13660
  %13662 = load double, ptr %13661, align 8, !tbaa !11
  %13663 = fmul double 0x3FA87D7643548500, %13662
  %13664 = call double @llvm.fmuladd.f64(double 0xBFE333710B32A297, double %13654, double %13663)
  %13665 = load ptr, ptr %7, align 8, !tbaa !9
  %13666 = load i32, ptr %12, align 4, !tbaa !5
  %13667 = load i32, ptr %8, align 4, !tbaa !5
  %13668 = mul nsw i32 2, %13667
  %13669 = add nsw i32 %13666, %13668
  %13670 = sext i32 %13669 to i64
  %13671 = getelementptr inbounds double, ptr %13665, i64 %13670
  %13672 = load double, ptr %13671, align 8, !tbaa !11
  %13673 = call double @llvm.fmuladd.f64(double 0xBFBEED13A9F0D910, double %13672, double %13664)
  %13674 = load ptr, ptr %7, align 8, !tbaa !9
  %13675 = load i32, ptr %12, align 4, !tbaa !5
  %13676 = load i32, ptr %8, align 4, !tbaa !5
  %13677 = mul nsw i32 3, %13676
  %13678 = add nsw i32 %13675, %13677
  %13679 = sext i32 %13678 to i64
  %13680 = getelementptr inbounds double, ptr %13674, i64 %13679
  %13681 = load double, ptr %13680, align 8, !tbaa !11
  %13682 = call double @llvm.fmuladd.f64(double 0xBFA352D4DB969BEA, double %13681, double %13673)
  %13683 = load ptr, ptr %7, align 8, !tbaa !9
  %13684 = load i32, ptr %12, align 4, !tbaa !5
  %13685 = load i32, ptr %8, align 4, !tbaa !5
  %13686 = mul nsw i32 4, %13685
  %13687 = add nsw i32 %13684, %13686
  %13688 = sext i32 %13687 to i64
  %13689 = getelementptr inbounds double, ptr %13683, i64 %13688
  %13690 = load double, ptr %13689, align 8, !tbaa !11
  %13691 = call double @llvm.fmuladd.f64(double 0x3FD35DAE88CBA641, double %13690, double %13682)
  %13692 = load ptr, ptr %7, align 8, !tbaa !9
  %13693 = load i32, ptr %12, align 4, !tbaa !5
  %13694 = load i32, ptr %8, align 4, !tbaa !5
  %13695 = mul nsw i32 5, %13694
  %13696 = add nsw i32 %13693, %13695
  %13697 = sext i32 %13696 to i64
  %13698 = getelementptr inbounds double, ptr %13692, i64 %13697
  %13699 = load double, ptr %13698, align 8, !tbaa !11
  %13700 = call double @llvm.fmuladd.f64(double 0x3FC36A9134CD3C54, double %13699, double %13691)
  %13701 = load ptr, ptr %7, align 8, !tbaa !9
  %13702 = load i32, ptr %12, align 4, !tbaa !5
  %13703 = load i32, ptr %8, align 4, !tbaa !5
  %13704 = mul nsw i32 6, %13703
  %13705 = add nsw i32 %13702, %13704
  %13706 = sext i32 %13705 to i64
  %13707 = getelementptr inbounds double, ptr %13701, i64 %13706
  %13708 = load double, ptr %13707, align 8, !tbaa !11
  %13709 = call double @llvm.fmuladd.f64(double 0x3F9854E0ADA34AF1, double %13708, double %13700)
  %13710 = load ptr, ptr %7, align 8, !tbaa !9
  %13711 = load i32, ptr %12, align 4, !tbaa !5
  %13712 = load i32, ptr %8, align 4, !tbaa !5
  %13713 = mul nsw i32 7, %13712
  %13714 = add nsw i32 %13711, %13713
  %13715 = sext i32 %13714 to i64
  %13716 = getelementptr inbounds double, ptr %13710, i64 %13715
  %13717 = load double, ptr %13716, align 8, !tbaa !11
  %13718 = call double @llvm.fmuladd.f64(double 0x3FC27B05E24EC602, double %13717, double %13709)
  %13719 = load ptr, ptr %7, align 8, !tbaa !9
  %13720 = load i32, ptr %12, align 4, !tbaa !5
  %13721 = load i32, ptr %8, align 4, !tbaa !5
  %13722 = mul nsw i32 8, %13721
  %13723 = add nsw i32 %13720, %13722
  %13724 = sext i32 %13723 to i64
  %13725 = getelementptr inbounds double, ptr %13719, i64 %13724
  %13726 = load double, ptr %13725, align 8, !tbaa !11
  %13727 = call double @llvm.fmuladd.f64(double 0x3FF670C5F1F4C92E, double %13726, double %13718)
  %13728 = load ptr, ptr %7, align 8, !tbaa !9
  %13729 = load i32, ptr %12, align 4, !tbaa !5
  %13730 = load i32, ptr %8, align 4, !tbaa !5
  %13731 = mul nsw i32 9, %13730
  %13732 = add nsw i32 %13729, %13731
  %13733 = sext i32 %13732 to i64
  %13734 = getelementptr inbounds double, ptr %13728, i64 %13733
  %13735 = load double, ptr %13734, align 8, !tbaa !11
  %13736 = call double @llvm.fmuladd.f64(double 0xBFD41C0D131D4288, double %13735, double %13727)
  %13737 = load ptr, ptr %7, align 8, !tbaa !9
  %13738 = load i32, ptr %12, align 4, !tbaa !5
  %13739 = load i32, ptr %8, align 4, !tbaa !5
  %13740 = mul nsw i32 10, %13739
  %13741 = add nsw i32 %13738, %13740
  %13742 = sext i32 %13741 to i64
  %13743 = getelementptr inbounds double, ptr %13737, i64 %13742
  %13744 = load double, ptr %13743, align 8, !tbaa !11
  %13745 = call double @llvm.fmuladd.f64(double 0xBCAB000000000001, double %13744, double %13736)
  %13746 = load ptr, ptr %7, align 8, !tbaa !9
  %13747 = load i32, ptr %12, align 4, !tbaa !5
  %13748 = load i32, ptr %8, align 4, !tbaa !5
  %13749 = mul nsw i32 11, %13748
  %13750 = add nsw i32 %13747, %13749
  %13751 = sext i32 %13750 to i64
  %13752 = getelementptr inbounds double, ptr %13746, i64 %13751
  %13753 = load double, ptr %13752, align 8, !tbaa !11
  %13754 = call double @llvm.fmuladd.f64(double 0x3C92000000000000, double %13753, double %13745)
  %13755 = load ptr, ptr %7, align 8, !tbaa !9
  %13756 = load i32, ptr %12, align 4, !tbaa !5
  %13757 = load i32, ptr %8, align 4, !tbaa !5
  %13758 = mul nsw i32 12, %13757
  %13759 = add nsw i32 %13756, %13758
  %13760 = sext i32 %13759 to i64
  %13761 = getelementptr inbounds double, ptr %13755, i64 %13760
  %13762 = load double, ptr %13761, align 8, !tbaa !11
  %13763 = call double @llvm.fmuladd.f64(double 0xBC96800000000000, double %13762, double %13754)
  %13764 = load ptr, ptr %7, align 8, !tbaa !9
  %13765 = load i32, ptr %12, align 4, !tbaa !5
  %13766 = load i32, ptr %8, align 4, !tbaa !5
  %13767 = mul nsw i32 13, %13766
  %13768 = add nsw i32 %13765, %13767
  %13769 = sext i32 %13768 to i64
  %13770 = getelementptr inbounds double, ptr %13764, i64 %13769
  %13771 = load double, ptr %13770, align 8, !tbaa !11
  %13772 = call double @llvm.fmuladd.f64(double 0xBC9CFFFFFFFFFFFF, double %13771, double %13763)
  %13773 = load ptr, ptr %7, align 8, !tbaa !9
  %13774 = load i32, ptr %12, align 4, !tbaa !5
  %13775 = load i32, ptr %8, align 4, !tbaa !5
  %13776 = mul nsw i32 14, %13775
  %13777 = add nsw i32 %13774, %13776
  %13778 = sext i32 %13777 to i64
  %13779 = getelementptr inbounds double, ptr %13773, i64 %13778
  %13780 = load double, ptr %13779, align 8, !tbaa !11
  %13781 = call double @llvm.fmuladd.f64(double 0xBCAB000000000001, double %13780, double %13772)
  %13782 = load ptr, ptr %7, align 8, !tbaa !9
  %13783 = load i32, ptr %12, align 4, !tbaa !5
  %13784 = load i32, ptr %8, align 4, !tbaa !5
  %13785 = mul nsw i32 15, %13784
  %13786 = add nsw i32 %13783, %13785
  %13787 = sext i32 %13786 to i64
  %13788 = getelementptr inbounds double, ptr %13782, i64 %13787
  %13789 = load double, ptr %13788, align 8, !tbaa !11
  %13790 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %13789, double %13781)
  %13791 = load ptr, ptr %7, align 8, !tbaa !9
  %13792 = load i32, ptr %12, align 4, !tbaa !5
  %13793 = load i32, ptr %8, align 4, !tbaa !5
  %13794 = mul nsw i32 16, %13793
  %13795 = add nsw i32 %13792, %13794
  %13796 = sext i32 %13795 to i64
  %13797 = getelementptr inbounds double, ptr %13791, i64 %13796
  %13798 = load double, ptr %13797, align 8, !tbaa !11
  %13799 = call double @llvm.fmuladd.f64(double 0x3CA2FFFFFFFFFFFE, double %13798, double %13790)
  %13800 = load ptr, ptr %7, align 8, !tbaa !9
  %13801 = load i32, ptr %12, align 4, !tbaa !5
  %13802 = load i32, ptr %8, align 4, !tbaa !5
  %13803 = mul nsw i32 17, %13802
  %13804 = add nsw i32 %13801, %13803
  %13805 = sext i32 %13804 to i64
  %13806 = getelementptr inbounds double, ptr %13800, i64 %13805
  %13807 = load double, ptr %13806, align 8, !tbaa !11
  %13808 = call double @llvm.fmuladd.f64(double 0xBC9DFFFFFFFFFFFE, double %13807, double %13799)
  %13809 = load ptr, ptr %7, align 8, !tbaa !9
  %13810 = load i32, ptr %12, align 4, !tbaa !5
  %13811 = load i32, ptr %8, align 4, !tbaa !5
  %13812 = mul nsw i32 18, %13811
  %13813 = add nsw i32 %13810, %13812
  %13814 = sext i32 %13813 to i64
  %13815 = getelementptr inbounds double, ptr %13809, i64 %13814
  %13816 = load double, ptr %13815, align 8, !tbaa !11
  %13817 = call double @llvm.fmuladd.f64(double 0x3CB9000000000000, double %13816, double %13808)
  %13818 = load ptr, ptr %7, align 8, !tbaa !9
  %13819 = load i32, ptr %12, align 4, !tbaa !5
  %13820 = load i32, ptr %8, align 4, !tbaa !5
  %13821 = mul nsw i32 19, %13820
  %13822 = add nsw i32 %13819, %13821
  %13823 = sext i32 %13822 to i64
  %13824 = getelementptr inbounds double, ptr %13818, i64 %13823
  %13825 = load double, ptr %13824, align 8, !tbaa !11
  %13826 = call double @llvm.fmuladd.f64(double 0x3CA1000000000001, double %13825, double %13817)
  %13827 = load ptr, ptr %7, align 8, !tbaa !9
  %13828 = load i32, ptr %12, align 4, !tbaa !5
  %13829 = load i32, ptr %8, align 4, !tbaa !5
  %13830 = mul nsw i32 20, %13829
  %13831 = add nsw i32 %13828, %13830
  %13832 = sext i32 %13831 to i64
  %13833 = getelementptr inbounds double, ptr %13827, i64 %13832
  %13834 = load double, ptr %13833, align 8, !tbaa !11
  %13835 = call double @llvm.fmuladd.f64(double 0xBCA9000000000000, double %13834, double %13826)
  %13836 = load ptr, ptr %7, align 8, !tbaa !9
  %13837 = load i32, ptr %12, align 4, !tbaa !5
  %13838 = load i32, ptr %8, align 4, !tbaa !5
  %13839 = mul nsw i32 21, %13838
  %13840 = add nsw i32 %13837, %13839
  %13841 = sext i32 %13840 to i64
  %13842 = getelementptr inbounds double, ptr %13836, i64 %13841
  %13843 = load double, ptr %13842, align 8, !tbaa !11
  %13844 = call double @llvm.fmuladd.f64(double 0x3CA5000000000000, double %13843, double %13835)
  %13845 = load ptr, ptr %7, align 8, !tbaa !9
  %13846 = load i32, ptr %12, align 4, !tbaa !5
  %13847 = load i32, ptr %8, align 4, !tbaa !5
  %13848 = mul nsw i32 22, %13847
  %13849 = add nsw i32 %13846, %13848
  %13850 = sext i32 %13849 to i64
  %13851 = getelementptr inbounds double, ptr %13845, i64 %13850
  %13852 = load double, ptr %13851, align 8, !tbaa !11
  %13853 = call double @llvm.fmuladd.f64(double 0x3CAB800000000001, double %13852, double %13844)
  %13854 = load ptr, ptr %7, align 8, !tbaa !9
  %13855 = load i32, ptr %12, align 4, !tbaa !5
  %13856 = load i32, ptr %8, align 4, !tbaa !5
  %13857 = mul nsw i32 23, %13856
  %13858 = add nsw i32 %13855, %13857
  %13859 = sext i32 %13858 to i64
  %13860 = getelementptr inbounds double, ptr %13854, i64 %13859
  %13861 = load double, ptr %13860, align 8, !tbaa !11
  %13862 = call double @llvm.fmuladd.f64(double 0xBCA9BFFFFFFFFFFF, double %13861, double %13853)
  %13863 = load ptr, ptr %7, align 8, !tbaa !9
  %13864 = load i32, ptr %12, align 4, !tbaa !5
  %13865 = load i32, ptr %8, align 4, !tbaa !5
  %13866 = mul nsw i32 24, %13865
  %13867 = add nsw i32 %13864, %13866
  %13868 = sext i32 %13867 to i64
  %13869 = getelementptr inbounds double, ptr %13863, i64 %13868
  %13870 = load double, ptr %13869, align 8, !tbaa !11
  %13871 = call double @llvm.fmuladd.f64(double 0xBC84000000000000, double %13870, double %13862)
  %13872 = load ptr, ptr %7, align 8, !tbaa !9
  %13873 = load i32, ptr %12, align 4, !tbaa !5
  %13874 = load i32, ptr %8, align 4, !tbaa !5
  %13875 = mul nsw i32 25, %13874
  %13876 = add nsw i32 %13873, %13875
  %13877 = sext i32 %13876 to i64
  %13878 = getelementptr inbounds double, ptr %13872, i64 %13877
  %13879 = load double, ptr %13878, align 8, !tbaa !11
  %13880 = call double @llvm.fmuladd.f64(double 0xBCA4000000000001, double %13879, double %13871)
  %13881 = load ptr, ptr %7, align 8, !tbaa !9
  %13882 = load i32, ptr %12, align 4, !tbaa !5
  %13883 = load i32, ptr %8, align 4, !tbaa !5
  %13884 = mul nsw i32 26, %13883
  %13885 = add nsw i32 %13882, %13884
  %13886 = sext i32 %13885 to i64
  %13887 = getelementptr inbounds double, ptr %13881, i64 %13886
  %13888 = load double, ptr %13887, align 8, !tbaa !11
  %13889 = call double @llvm.fmuladd.f64(double 0xBCA7400000000002, double %13888, double %13880)
  %13890 = load ptr, ptr %7, align 8, !tbaa !9
  %13891 = load i32, ptr %12, align 4, !tbaa !5
  %13892 = load i32, ptr %8, align 4, !tbaa !5
  %13893 = mul nsw i32 27, %13892
  %13894 = add nsw i32 %13891, %13893
  %13895 = sext i32 %13894 to i64
  %13896 = getelementptr inbounds double, ptr %13890, i64 %13895
  %13897 = load double, ptr %13896, align 8, !tbaa !11
  %13898 = call double @llvm.fmuladd.f64(double 0x3CA0000000000002, double %13897, double %13889)
  %13899 = load ptr, ptr %7, align 8, !tbaa !9
  %13900 = load i32, ptr %12, align 4, !tbaa !5
  %13901 = load i32, ptr %8, align 4, !tbaa !5
  %13902 = mul nsw i32 28, %13901
  %13903 = add nsw i32 %13900, %13902
  %13904 = sext i32 %13903 to i64
  %13905 = getelementptr inbounds double, ptr %13899, i64 %13904
  %13906 = load double, ptr %13905, align 8, !tbaa !11
  %13907 = call double @llvm.fmuladd.f64(double 0x3CB5000000000000, double %13906, double %13898)
  %13908 = load ptr, ptr %7, align 8, !tbaa !9
  %13909 = load i32, ptr %12, align 4, !tbaa !5
  %13910 = load i32, ptr %8, align 4, !tbaa !5
  %13911 = mul nsw i32 29, %13910
  %13912 = add nsw i32 %13909, %13911
  %13913 = sext i32 %13912 to i64
  %13914 = getelementptr inbounds double, ptr %13908, i64 %13913
  %13915 = load double, ptr %13914, align 8, !tbaa !11
  %13916 = call double @llvm.fmuladd.f64(double 0x3C9A000000000000, double %13915, double %13907)
  %13917 = load ptr, ptr %7, align 8, !tbaa !9
  %13918 = load i32, ptr %12, align 4, !tbaa !5
  %13919 = load i32, ptr %8, align 4, !tbaa !5
  %13920 = mul nsw i32 30, %13919
  %13921 = add nsw i32 %13918, %13920
  %13922 = sext i32 %13921 to i64
  %13923 = getelementptr inbounds double, ptr %13917, i64 %13922
  %13924 = load double, ptr %13923, align 8, !tbaa !11
  %13925 = call double @llvm.fmuladd.f64(double 0x3CA0000000000002, double %13924, double %13916)
  %13926 = load ptr, ptr %7, align 8, !tbaa !9
  %13927 = load i32, ptr %12, align 4, !tbaa !5
  %13928 = load i32, ptr %8, align 4, !tbaa !5
  %13929 = mul nsw i32 31, %13928
  %13930 = add nsw i32 %13927, %13929
  %13931 = sext i32 %13930 to i64
  %13932 = getelementptr inbounds double, ptr %13926, i64 %13931
  %13933 = load double, ptr %13932, align 8, !tbaa !11
  %13934 = call double @llvm.fmuladd.f64(double 0x3C98000000000000, double %13933, double %13925)
  %13935 = load ptr, ptr %7, align 8, !tbaa !9
  %13936 = load i32, ptr %12, align 4, !tbaa !5
  %13937 = load i32, ptr %8, align 4, !tbaa !5
  %13938 = mul nsw i32 32, %13937
  %13939 = add nsw i32 %13936, %13938
  %13940 = sext i32 %13939 to i64
  %13941 = getelementptr inbounds double, ptr %13935, i64 %13940
  %13942 = load double, ptr %13941, align 8, !tbaa !11
  %13943 = call double @llvm.fmuladd.f64(double 0xBC86800000000000, double %13942, double %13934)
  %13944 = load ptr, ptr %7, align 8, !tbaa !9
  %13945 = load i32, ptr %12, align 4, !tbaa !5
  %13946 = load i32, ptr %8, align 4, !tbaa !5
  %13947 = mul nsw i32 33, %13946
  %13948 = add nsw i32 %13945, %13947
  %13949 = sext i32 %13948 to i64
  %13950 = getelementptr inbounds double, ptr %13944, i64 %13949
  %13951 = load double, ptr %13950, align 8, !tbaa !11
  %13952 = call double @llvm.fmuladd.f64(double 0x3C96200000000000, double %13951, double %13943)
  %13953 = load ptr, ptr %7, align 8, !tbaa !9
  %13954 = load i32, ptr %12, align 4, !tbaa !5
  %13955 = load i32, ptr %8, align 4, !tbaa !5
  %13956 = mul nsw i32 34, %13955
  %13957 = add nsw i32 %13954, %13956
  %13958 = sext i32 %13957 to i64
  %13959 = getelementptr inbounds double, ptr %13953, i64 %13958
  %13960 = load double, ptr %13959, align 8, !tbaa !11
  %13961 = call double @llvm.fmuladd.f64(double 0xBCA33FFFFFFFFFFE, double %13960, double %13952)
  %13962 = load ptr, ptr %7, align 8, !tbaa !9
  %13963 = load i32, ptr %12, align 4, !tbaa !5
  %13964 = load i32, ptr %8, align 4, !tbaa !5
  %13965 = mul nsw i32 35, %13964
  %13966 = add nsw i32 %13963, %13965
  %13967 = sext i32 %13966 to i64
  %13968 = getelementptr inbounds double, ptr %13962, i64 %13967
  %13969 = load double, ptr %13968, align 8, !tbaa !11
  %13970 = call double @llvm.fmuladd.f64(double 0x3C82FFFFFFFFFFFF, double %13969, double %13961)
  %13971 = load ptr, ptr %7, align 8, !tbaa !9
  %13972 = load i32, ptr %12, align 4, !tbaa !5
  %13973 = load i32, ptr %8, align 4, !tbaa !5
  %13974 = mul nsw i32 36, %13973
  %13975 = add nsw i32 %13972, %13974
  %13976 = sext i32 %13975 to i64
  %13977 = getelementptr inbounds double, ptr %13971, i64 %13976
  %13978 = load double, ptr %13977, align 8, !tbaa !11
  %13979 = call double @llvm.fmuladd.f64(double 0x3C9FC00000000004, double %13978, double %13970)
  %13980 = load ptr, ptr %7, align 8, !tbaa !9
  %13981 = load i32, ptr %12, align 4, !tbaa !5
  %13982 = load i32, ptr %8, align 4, !tbaa !5
  %13983 = mul nsw i32 37, %13982
  %13984 = add nsw i32 %13981, %13983
  %13985 = sext i32 %13984 to i64
  %13986 = getelementptr inbounds double, ptr %13980, i64 %13985
  %13987 = load double, ptr %13986, align 8, !tbaa !11
  %13988 = call double @llvm.fmuladd.f64(double 0xBC82800000000000, double %13987, double %13979)
  %13989 = load ptr, ptr %7, align 8, !tbaa !9
  %13990 = load i32, ptr %12, align 4, !tbaa !5
  %13991 = load i32, ptr %8, align 4, !tbaa !5
  %13992 = mul nsw i32 38, %13991
  %13993 = add nsw i32 %13990, %13992
  %13994 = sext i32 %13993 to i64
  %13995 = getelementptr inbounds double, ptr %13989, i64 %13994
  %13996 = load double, ptr %13995, align 8, !tbaa !11
  %13997 = call double @llvm.fmuladd.f64(double 0x3C9A000000000000, double %13996, double %13988)
  %13998 = load ptr, ptr %7, align 8, !tbaa !9
  %13999 = load i32, ptr %12, align 4, !tbaa !5
  %14000 = load i32, ptr %8, align 4, !tbaa !5
  %14001 = mul nsw i32 39, %14000
  %14002 = add nsw i32 %13999, %14001
  %14003 = sext i32 %14002 to i64
  %14004 = getelementptr inbounds double, ptr %13998, i64 %14003
  %14005 = load double, ptr %14004, align 8, !tbaa !11
  %14006 = call double @llvm.fmuladd.f64(double 0x3C91000000000000, double %14005, double %13997)
  store double %14006, ptr %11, align 8, !tbaa !11
  %14007 = load double, ptr %11, align 8, !tbaa !11
  %14008 = load ptr, ptr %9, align 8, !tbaa !9
  %14009 = load i32, ptr %12, align 4, !tbaa !5
  %14010 = load i32, ptr %10, align 4, !tbaa !5
  %14011 = mul nsw i32 38, %14010
  %14012 = add nsw i32 %14009, %14011
  %14013 = sext i32 %14012 to i64
  %14014 = getelementptr inbounds double, ptr %14008, i64 %14013
  %14015 = load double, ptr %14014, align 8, !tbaa !11
  %14016 = fadd double %14015, %14007
  store double %14016, ptr %14014, align 8, !tbaa !11
  %14017 = load ptr, ptr %7, align 8, !tbaa !9
  %14018 = load i32, ptr %12, align 4, !tbaa !5
  %14019 = load i32, ptr %8, align 4, !tbaa !5
  %14020 = mul nsw i32 0, %14019
  %14021 = add nsw i32 %14018, %14020
  %14022 = sext i32 %14021 to i64
  %14023 = getelementptr inbounds double, ptr %14017, i64 %14022
  %14024 = load double, ptr %14023, align 8, !tbaa !11
  %14025 = load ptr, ptr %7, align 8, !tbaa !9
  %14026 = load i32, ptr %12, align 4, !tbaa !5
  %14027 = load i32, ptr %8, align 4, !tbaa !5
  %14028 = mul nsw i32 1, %14027
  %14029 = add nsw i32 %14026, %14028
  %14030 = sext i32 %14029 to i64
  %14031 = getelementptr inbounds double, ptr %14025, i64 %14030
  %14032 = load double, ptr %14031, align 8, !tbaa !11
  %14033 = fmul double 0x3FF4EC1BB3FDC612, %14032
  %14034 = call double @llvm.fmuladd.f64(double 0xBF83152016E0EAA8, double %14024, double %14033)
  %14035 = load ptr, ptr %7, align 8, !tbaa !9
  %14036 = load i32, ptr %12, align 4, !tbaa !5
  %14037 = load i32, ptr %8, align 4, !tbaa !5
  %14038 = mul nsw i32 2, %14037
  %14039 = add nsw i32 %14036, %14038
  %14040 = sext i32 %14039 to i64
  %14041 = getelementptr inbounds double, ptr %14035, i64 %14040
  %14042 = load double, ptr %14041, align 8, !tbaa !11
  %14043 = call double @llvm.fmuladd.f64(double 0xBFB5B58B4F03B19F, double %14042, double %14034)
  %14044 = load ptr, ptr %7, align 8, !tbaa !9
  %14045 = load i32, ptr %12, align 4, !tbaa !5
  %14046 = load i32, ptr %8, align 4, !tbaa !5
  %14047 = mul nsw i32 3, %14046
  %14048 = add nsw i32 %14045, %14047
  %14049 = sext i32 %14048 to i64
  %14050 = getelementptr inbounds double, ptr %14044, i64 %14049
  %14051 = load double, ptr %14050, align 8, !tbaa !11
  %14052 = call double @llvm.fmuladd.f64(double 0x3F938CE4890DB2C2, double %14051, double %14043)
  %14053 = load ptr, ptr %7, align 8, !tbaa !9
  %14054 = load i32, ptr %12, align 4, !tbaa !5
  %14055 = load i32, ptr %8, align 4, !tbaa !5
  %14056 = mul nsw i32 4, %14055
  %14057 = add nsw i32 %14054, %14056
  %14058 = sext i32 %14057 to i64
  %14059 = getelementptr inbounds double, ptr %14053, i64 %14058
  %14060 = load double, ptr %14059, align 8, !tbaa !11
  %14061 = call double @llvm.fmuladd.f64(double 0x3FD417DEBFC17B11, double %14060, double %14052)
  %14062 = load ptr, ptr %7, align 8, !tbaa !9
  %14063 = load i32, ptr %12, align 4, !tbaa !5
  %14064 = load i32, ptr %8, align 4, !tbaa !5
  %14065 = mul nsw i32 5, %14064
  %14066 = add nsw i32 %14063, %14065
  %14067 = sext i32 %14066 to i64
  %14068 = getelementptr inbounds double, ptr %14062, i64 %14067
  %14069 = load double, ptr %14068, align 8, !tbaa !11
  %14070 = call double @llvm.fmuladd.f64(double 0xBFB49217631F5929, double %14069, double %14061)
  %14071 = load ptr, ptr %7, align 8, !tbaa !9
  %14072 = load i32, ptr %12, align 4, !tbaa !5
  %14073 = load i32, ptr %8, align 4, !tbaa !5
  %14074 = mul nsw i32 6, %14073
  %14075 = add nsw i32 %14072, %14074
  %14076 = sext i32 %14075 to i64
  %14077 = getelementptr inbounds double, ptr %14071, i64 %14076
  %14078 = load double, ptr %14077, align 8, !tbaa !11
  %14079 = call double @llvm.fmuladd.f64(double 0x3F85E50BB681A350, double %14078, double %14070)
  %14080 = load ptr, ptr %7, align 8, !tbaa !9
  %14081 = load i32, ptr %12, align 4, !tbaa !5
  %14082 = load i32, ptr %8, align 4, !tbaa !5
  %14083 = mul nsw i32 7, %14082
  %14084 = add nsw i32 %14081, %14083
  %14085 = sext i32 %14084 to i64
  %14086 = getelementptr inbounds double, ptr %14080, i64 %14085
  %14087 = load double, ptr %14086, align 8, !tbaa !11
  %14088 = call double @llvm.fmuladd.f64(double 0xBF8BDAF699AECF48, double %14087, double %14079)
  %14089 = load ptr, ptr %7, align 8, !tbaa !9
  %14090 = load i32, ptr %12, align 4, !tbaa !5
  %14091 = load i32, ptr %8, align 4, !tbaa !5
  %14092 = mul nsw i32 8, %14091
  %14093 = add nsw i32 %14090, %14092
  %14094 = sext i32 %14093 to i64
  %14095 = getelementptr inbounds double, ptr %14089, i64 %14094
  %14096 = load double, ptr %14095, align 8, !tbaa !11
  %14097 = call double @llvm.fmuladd.f64(double 0x3FCA50C41AB7A310, double %14096, double %14088)
  %14098 = load ptr, ptr %7, align 8, !tbaa !9
  %14099 = load i32, ptr %12, align 4, !tbaa !5
  %14100 = load i32, ptr %8, align 4, !tbaa !5
  %14101 = mul nsw i32 9, %14100
  %14102 = add nsw i32 %14099, %14101
  %14103 = sext i32 %14102 to i64
  %14104 = getelementptr inbounds double, ptr %14098, i64 %14103
  %14105 = load double, ptr %14104, align 8, !tbaa !11
  %14106 = call double @llvm.fmuladd.f64(double 0xBFE5679E70A60656, double %14105, double %14097)
  %14107 = load ptr, ptr %7, align 8, !tbaa !9
  %14108 = load i32, ptr %12, align 4, !tbaa !5
  %14109 = load i32, ptr %8, align 4, !tbaa !5
  %14110 = mul nsw i32 10, %14109
  %14111 = add nsw i32 %14108, %14110
  %14112 = sext i32 %14111 to i64
  %14113 = getelementptr inbounds double, ptr %14107, i64 %14112
  %14114 = load double, ptr %14113, align 8, !tbaa !11
  %14115 = call double @llvm.fmuladd.f64(double 0xBCB8000000000001, double %14114, double %14106)
  %14116 = load ptr, ptr %7, align 8, !tbaa !9
  %14117 = load i32, ptr %12, align 4, !tbaa !5
  %14118 = load i32, ptr %8, align 4, !tbaa !5
  %14119 = mul nsw i32 11, %14118
  %14120 = add nsw i32 %14117, %14119
  %14121 = sext i32 %14120 to i64
  %14122 = getelementptr inbounds double, ptr %14116, i64 %14121
  %14123 = load double, ptr %14122, align 8, !tbaa !11
  %14124 = call double @llvm.fmuladd.f64(double 0x3CA0000000000002, double %14123, double %14115)
  %14125 = load ptr, ptr %7, align 8, !tbaa !9
  %14126 = load i32, ptr %12, align 4, !tbaa !5
  %14127 = load i32, ptr %8, align 4, !tbaa !5
  %14128 = mul nsw i32 12, %14127
  %14129 = add nsw i32 %14126, %14128
  %14130 = sext i32 %14129 to i64
  %14131 = getelementptr inbounds double, ptr %14125, i64 %14130
  %14132 = load double, ptr %14131, align 8, !tbaa !11
  %14133 = call double @llvm.fmuladd.f64(double 0xBC8C000000000000, double %14132, double %14124)
  %14134 = load ptr, ptr %7, align 8, !tbaa !9
  %14135 = load i32, ptr %12, align 4, !tbaa !5
  %14136 = load i32, ptr %8, align 4, !tbaa !5
  %14137 = mul nsw i32 13, %14136
  %14138 = add nsw i32 %14135, %14137
  %14139 = sext i32 %14138 to i64
  %14140 = getelementptr inbounds double, ptr %14134, i64 %14139
  %14141 = load double, ptr %14140, align 8, !tbaa !11
  %14142 = call double @llvm.fmuladd.f64(double 0xBCA4000000000001, double %14141, double %14133)
  %14143 = load ptr, ptr %7, align 8, !tbaa !9
  %14144 = load i32, ptr %12, align 4, !tbaa !5
  %14145 = load i32, ptr %8, align 4, !tbaa !5
  %14146 = mul nsw i32 14, %14145
  %14147 = add nsw i32 %14144, %14146
  %14148 = sext i32 %14147 to i64
  %14149 = getelementptr inbounds double, ptr %14143, i64 %14148
  %14150 = load double, ptr %14149, align 8, !tbaa !11
  %14151 = call double @llvm.fmuladd.f64(double 0xBCAC000000000000, double %14150, double %14142)
  %14152 = load ptr, ptr %7, align 8, !tbaa !9
  %14153 = load i32, ptr %12, align 4, !tbaa !5
  %14154 = load i32, ptr %8, align 4, !tbaa !5
  %14155 = mul nsw i32 15, %14154
  %14156 = add nsw i32 %14153, %14155
  %14157 = sext i32 %14156 to i64
  %14158 = getelementptr inbounds double, ptr %14152, i64 %14157
  %14159 = load double, ptr %14158, align 8, !tbaa !11
  %14160 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %14159, double %14151)
  %14161 = load ptr, ptr %7, align 8, !tbaa !9
  %14162 = load i32, ptr %12, align 4, !tbaa !5
  %14163 = load i32, ptr %8, align 4, !tbaa !5
  %14164 = mul nsw i32 16, %14163
  %14165 = add nsw i32 %14162, %14164
  %14166 = sext i32 %14165 to i64
  %14167 = getelementptr inbounds double, ptr %14161, i64 %14166
  %14168 = load double, ptr %14167, align 8, !tbaa !11
  %14169 = call double @llvm.fmuladd.f64(double 0x3CB2000000000000, double %14168, double %14160)
  %14170 = load ptr, ptr %7, align 8, !tbaa !9
  %14171 = load i32, ptr %12, align 4, !tbaa !5
  %14172 = load i32, ptr %8, align 4, !tbaa !5
  %14173 = mul nsw i32 17, %14172
  %14174 = add nsw i32 %14171, %14173
  %14175 = sext i32 %14174 to i64
  %14176 = getelementptr inbounds double, ptr %14170, i64 %14175
  %14177 = load double, ptr %14176, align 8, !tbaa !11
  %14178 = call double @llvm.fmuladd.f64(double 0xBC8C000000000000, double %14177, double %14169)
  %14179 = load ptr, ptr %7, align 8, !tbaa !9
  %14180 = load i32, ptr %12, align 4, !tbaa !5
  %14181 = load i32, ptr %8, align 4, !tbaa !5
  %14182 = mul nsw i32 19, %14181
  %14183 = add nsw i32 %14180, %14182
  %14184 = sext i32 %14183 to i64
  %14185 = getelementptr inbounds double, ptr %14179, i64 %14184
  %14186 = load double, ptr %14185, align 8, !tbaa !11
  %14187 = call double @llvm.fmuladd.f64(double 0x3C7FFFFFFFFFFFFF, double %14186, double %14178)
  %14188 = load ptr, ptr %7, align 8, !tbaa !9
  %14189 = load i32, ptr %12, align 4, !tbaa !5
  %14190 = load i32, ptr %8, align 4, !tbaa !5
  %14191 = mul nsw i32 20, %14190
  %14192 = add nsw i32 %14189, %14191
  %14193 = sext i32 %14192 to i64
  %14194 = getelementptr inbounds double, ptr %14188, i64 %14193
  %14195 = load double, ptr %14194, align 8, !tbaa !11
  %14196 = call double @llvm.fmuladd.f64(double 0xBCB5FFFFFFFFFFFF, double %14195, double %14187)
  %14197 = load ptr, ptr %7, align 8, !tbaa !9
  %14198 = load i32, ptr %12, align 4, !tbaa !5
  %14199 = load i32, ptr %8, align 4, !tbaa !5
  %14200 = mul nsw i32 21, %14199
  %14201 = add nsw i32 %14198, %14200
  %14202 = sext i32 %14201 to i64
  %14203 = getelementptr inbounds double, ptr %14197, i64 %14202
  %14204 = load double, ptr %14203, align 8, !tbaa !11
  %14205 = call double @llvm.fmuladd.f64(double 0x3CA8000000000001, double %14204, double %14196)
  %14206 = load ptr, ptr %7, align 8, !tbaa !9
  %14207 = load i32, ptr %12, align 4, !tbaa !5
  %14208 = load i32, ptr %8, align 4, !tbaa !5
  %14209 = mul nsw i32 22, %14208
  %14210 = add nsw i32 %14207, %14209
  %14211 = sext i32 %14210 to i64
  %14212 = getelementptr inbounds double, ptr %14206, i64 %14211
  %14213 = load double, ptr %14212, align 8, !tbaa !11
  %14214 = call double @llvm.fmuladd.f64(double 0x3CA97FFFFFFFFFFF, double %14213, double %14205)
  %14215 = load ptr, ptr %7, align 8, !tbaa !9
  %14216 = load i32, ptr %12, align 4, !tbaa !5
  %14217 = load i32, ptr %8, align 4, !tbaa !5
  %14218 = mul nsw i32 23, %14217
  %14219 = add nsw i32 %14216, %14218
  %14220 = sext i32 %14219 to i64
  %14221 = getelementptr inbounds double, ptr %14215, i64 %14220
  %14222 = load double, ptr %14221, align 8, !tbaa !11
  %14223 = call double @llvm.fmuladd.f64(double 0xBCA0000000000002, double %14222, double %14214)
  %14224 = load ptr, ptr %7, align 8, !tbaa !9
  %14225 = load i32, ptr %12, align 4, !tbaa !5
  %14226 = load i32, ptr %8, align 4, !tbaa !5
  %14227 = mul nsw i32 24, %14226
  %14228 = add nsw i32 %14225, %14227
  %14229 = sext i32 %14228 to i64
  %14230 = getelementptr inbounds double, ptr %14224, i64 %14229
  %14231 = load double, ptr %14230, align 8, !tbaa !11
  %14232 = call double @llvm.fmuladd.f64(double 0xBCB0000000000000, double %14231, double %14223)
  %14233 = load ptr, ptr %7, align 8, !tbaa !9
  %14234 = load i32, ptr %12, align 4, !tbaa !5
  %14235 = load i32, ptr %8, align 4, !tbaa !5
  %14236 = mul nsw i32 25, %14235
  %14237 = add nsw i32 %14234, %14236
  %14238 = sext i32 %14237 to i64
  %14239 = getelementptr inbounds double, ptr %14233, i64 %14238
  %14240 = load double, ptr %14239, align 8, !tbaa !11
  %14241 = call double @llvm.fmuladd.f64(double 0xBCA8000000000001, double %14240, double %14232)
  %14242 = load ptr, ptr %7, align 8, !tbaa !9
  %14243 = load i32, ptr %12, align 4, !tbaa !5
  %14244 = load i32, ptr %8, align 4, !tbaa !5
  %14245 = mul nsw i32 26, %14244
  %14246 = add nsw i32 %14243, %14245
  %14247 = sext i32 %14246 to i64
  %14248 = getelementptr inbounds double, ptr %14242, i64 %14247
  %14249 = load double, ptr %14248, align 8, !tbaa !11
  %14250 = call double @llvm.fmuladd.f64(double 0xBC92000000000000, double %14249, double %14241)
  %14251 = load ptr, ptr %7, align 8, !tbaa !9
  %14252 = load i32, ptr %12, align 4, !tbaa !5
  %14253 = load i32, ptr %8, align 4, !tbaa !5
  %14254 = mul nsw i32 27, %14253
  %14255 = add nsw i32 %14252, %14254
  %14256 = sext i32 %14255 to i64
  %14257 = getelementptr inbounds double, ptr %14251, i64 %14256
  %14258 = load double, ptr %14257, align 8, !tbaa !11
  %14259 = call double @llvm.fmuladd.f64(double 0x3CB6800000000000, double %14258, double %14250)
  %14260 = load ptr, ptr %7, align 8, !tbaa !9
  %14261 = load i32, ptr %12, align 4, !tbaa !5
  %14262 = load i32, ptr %8, align 4, !tbaa !5
  %14263 = mul nsw i32 28, %14262
  %14264 = add nsw i32 %14261, %14263
  %14265 = sext i32 %14264 to i64
  %14266 = getelementptr inbounds double, ptr %14260, i64 %14265
  %14267 = load double, ptr %14266, align 8, !tbaa !11
  %14268 = call double @llvm.fmuladd.f64(double 0x3C7FFFFFFFFFFFFF, double %14267, double %14259)
  %14269 = load ptr, ptr %7, align 8, !tbaa !9
  %14270 = load i32, ptr %12, align 4, !tbaa !5
  %14271 = load i32, ptr %8, align 4, !tbaa !5
  %14272 = mul nsw i32 30, %14271
  %14273 = add nsw i32 %14270, %14272
  %14274 = sext i32 %14273 to i64
  %14275 = getelementptr inbounds double, ptr %14269, i64 %14274
  %14276 = load double, ptr %14275, align 8, !tbaa !11
  %14277 = call double @llvm.fmuladd.f64(double 0xBC88000000000000, double %14276, double %14268)
  %14278 = load ptr, ptr %7, align 8, !tbaa !9
  %14279 = load i32, ptr %12, align 4, !tbaa !5
  %14280 = load i32, ptr %8, align 4, !tbaa !5
  %14281 = mul nsw i32 31, %14280
  %14282 = add nsw i32 %14279, %14281
  %14283 = sext i32 %14282 to i64
  %14284 = getelementptr inbounds double, ptr %14278, i64 %14283
  %14285 = load double, ptr %14284, align 8, !tbaa !11
  %14286 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %14285, double %14277)
  %14287 = load ptr, ptr %7, align 8, !tbaa !9
  %14288 = load i32, ptr %12, align 4, !tbaa !5
  %14289 = load i32, ptr %8, align 4, !tbaa !5
  %14290 = mul nsw i32 32, %14289
  %14291 = add nsw i32 %14288, %14290
  %14292 = sext i32 %14291 to i64
  %14293 = getelementptr inbounds double, ptr %14287, i64 %14292
  %14294 = load double, ptr %14293, align 8, !tbaa !11
  %14295 = call double @llvm.fmuladd.f64(double 0x3C70000000000001, double %14294, double %14286)
  %14296 = load ptr, ptr %7, align 8, !tbaa !9
  %14297 = load i32, ptr %12, align 4, !tbaa !5
  %14298 = load i32, ptr %8, align 4, !tbaa !5
  %14299 = mul nsw i32 33, %14298
  %14300 = add nsw i32 %14297, %14299
  %14301 = sext i32 %14300 to i64
  %14302 = getelementptr inbounds double, ptr %14296, i64 %14301
  %14303 = load double, ptr %14302, align 8, !tbaa !11
  %14304 = call double @llvm.fmuladd.f64(double 0x3CA67FFFFFFFFFFE, double %14303, double %14295)
  %14305 = load ptr, ptr %7, align 8, !tbaa !9
  %14306 = load i32, ptr %12, align 4, !tbaa !5
  %14307 = load i32, ptr %8, align 4, !tbaa !5
  %14308 = mul nsw i32 34, %14307
  %14309 = add nsw i32 %14306, %14308
  %14310 = sext i32 %14309 to i64
  %14311 = getelementptr inbounds double, ptr %14305, i64 %14310
  %14312 = load double, ptr %14311, align 8, !tbaa !11
  %14313 = call double @llvm.fmuladd.f64(double 0xBCAE000000000002, double %14312, double %14304)
  %14314 = load ptr, ptr %7, align 8, !tbaa !9
  %14315 = load i32, ptr %12, align 4, !tbaa !5
  %14316 = load i32, ptr %8, align 4, !tbaa !5
  %14317 = mul nsw i32 35, %14316
  %14318 = add nsw i32 %14315, %14317
  %14319 = sext i32 %14318 to i64
  %14320 = getelementptr inbounds double, ptr %14314, i64 %14319
  %14321 = load double, ptr %14320, align 8, !tbaa !11
  %14322 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %14321, double %14313)
  %14323 = load ptr, ptr %7, align 8, !tbaa !9
  %14324 = load i32, ptr %12, align 4, !tbaa !5
  %14325 = load i32, ptr %8, align 4, !tbaa !5
  %14326 = mul nsw i32 36, %14325
  %14327 = add nsw i32 %14324, %14326
  %14328 = sext i32 %14327 to i64
  %14329 = getelementptr inbounds double, ptr %14323, i64 %14328
  %14330 = load double, ptr %14329, align 8, !tbaa !11
  %14331 = call double @llvm.fmuladd.f64(double 0x3C97000000000000, double %14330, double %14322)
  %14332 = load ptr, ptr %7, align 8, !tbaa !9
  %14333 = load i32, ptr %12, align 4, !tbaa !5
  %14334 = load i32, ptr %8, align 4, !tbaa !5
  %14335 = mul nsw i32 37, %14334
  %14336 = add nsw i32 %14333, %14335
  %14337 = sext i32 %14336 to i64
  %14338 = getelementptr inbounds double, ptr %14332, i64 %14337
  %14339 = load double, ptr %14338, align 8, !tbaa !11
  %14340 = call double @llvm.fmuladd.f64(double 0xBC78000000000002, double %14339, double %14331)
  %14341 = load ptr, ptr %7, align 8, !tbaa !9
  %14342 = load i32, ptr %12, align 4, !tbaa !5
  %14343 = load i32, ptr %8, align 4, !tbaa !5
  %14344 = mul nsw i32 38, %14343
  %14345 = add nsw i32 %14342, %14344
  %14346 = sext i32 %14345 to i64
  %14347 = getelementptr inbounds double, ptr %14341, i64 %14346
  %14348 = load double, ptr %14347, align 8, !tbaa !11
  %14349 = call double @llvm.fmuladd.f64(double 0xBC98000000000000, double %14348, double %14340)
  %14350 = load ptr, ptr %7, align 8, !tbaa !9
  %14351 = load i32, ptr %12, align 4, !tbaa !5
  %14352 = load i32, ptr %8, align 4, !tbaa !5
  %14353 = mul nsw i32 39, %14352
  %14354 = add nsw i32 %14351, %14353
  %14355 = sext i32 %14354 to i64
  %14356 = getelementptr inbounds double, ptr %14350, i64 %14355
  %14357 = load double, ptr %14356, align 8, !tbaa !11
  %14358 = call double @llvm.fmuladd.f64(double 0x3C70000000000001, double %14357, double %14349)
  store double %14358, ptr %11, align 8, !tbaa !11
  %14359 = load double, ptr %11, align 8, !tbaa !11
  %14360 = load ptr, ptr %9, align 8, !tbaa !9
  %14361 = load i32, ptr %12, align 4, !tbaa !5
  %14362 = load i32, ptr %10, align 4, !tbaa !5
  %14363 = mul nsw i32 39, %14362
  %14364 = add nsw i32 %14361, %14363
  %14365 = sext i32 %14364 to i64
  %14366 = getelementptr inbounds double, ptr %14360, i64 %14365
  %14367 = load double, ptr %14366, align 8, !tbaa !11
  %14368 = fadd double %14367, %14359
  store double %14368, ptr %14366, align 8, !tbaa !11
  %14369 = load ptr, ptr %7, align 8, !tbaa !9
  %14370 = load i32, ptr %12, align 4, !tbaa !5
  %14371 = load i32, ptr %8, align 4, !tbaa !5
  %14372 = mul nsw i32 0, %14371
  %14373 = add nsw i32 %14370, %14372
  %14374 = sext i32 %14373 to i64
  %14375 = getelementptr inbounds double, ptr %14369, i64 %14374
  %14376 = load double, ptr %14375, align 8, !tbaa !11
  %14377 = load ptr, ptr %7, align 8, !tbaa !9
  %14378 = load i32, ptr %12, align 4, !tbaa !5
  %14379 = load i32, ptr %8, align 4, !tbaa !5
  %14380 = mul nsw i32 1, %14379
  %14381 = add nsw i32 %14378, %14380
  %14382 = sext i32 %14381 to i64
  %14383 = getelementptr inbounds double, ptr %14377, i64 %14382
  %14384 = load double, ptr %14383, align 8, !tbaa !11
  %14385 = fmul double 0x3C7CFFFFFFFFFFFF, %14384
  %14386 = call double @llvm.fmuladd.f64(double 0xBCB05FFFFFFFFFFF, double %14376, double %14385)
  %14387 = load ptr, ptr %7, align 8, !tbaa !9
  %14388 = load i32, ptr %12, align 4, !tbaa !5
  %14389 = load i32, ptr %8, align 4, !tbaa !5
  %14390 = mul nsw i32 2, %14389
  %14391 = add nsw i32 %14388, %14390
  %14392 = sext i32 %14391 to i64
  %14393 = getelementptr inbounds double, ptr %14387, i64 %14392
  %14394 = load double, ptr %14393, align 8, !tbaa !11
  %14395 = call double @llvm.fmuladd.f64(double 0xBC91400000000000, double %14394, double %14386)
  %14396 = load ptr, ptr %7, align 8, !tbaa !9
  %14397 = load i32, ptr %12, align 4, !tbaa !5
  %14398 = load i32, ptr %8, align 4, !tbaa !5
  %14399 = mul nsw i32 3, %14398
  %14400 = add nsw i32 %14397, %14399
  %14401 = sext i32 %14400 to i64
  %14402 = getelementptr inbounds double, ptr %14396, i64 %14401
  %14403 = load double, ptr %14402, align 8, !tbaa !11
  %14404 = call double @llvm.fmuladd.f64(double 0x3C95000000000000, double %14403, double %14395)
  %14405 = load ptr, ptr %7, align 8, !tbaa !9
  %14406 = load i32, ptr %12, align 4, !tbaa !5
  %14407 = load i32, ptr %8, align 4, !tbaa !5
  %14408 = mul nsw i32 4, %14407
  %14409 = add nsw i32 %14406, %14408
  %14410 = sext i32 %14409 to i64
  %14411 = getelementptr inbounds double, ptr %14405, i64 %14410
  %14412 = load double, ptr %14411, align 8, !tbaa !11
  %14413 = call double @llvm.fmuladd.f64(double 0xBC9BC00000000000, double %14412, double %14404)
  %14414 = load ptr, ptr %7, align 8, !tbaa !9
  %14415 = load i32, ptr %12, align 4, !tbaa !5
  %14416 = load i32, ptr %8, align 4, !tbaa !5
  %14417 = mul nsw i32 5, %14416
  %14418 = add nsw i32 %14415, %14417
  %14419 = sext i32 %14418 to i64
  %14420 = getelementptr inbounds double, ptr %14414, i64 %14419
  %14421 = load double, ptr %14420, align 8, !tbaa !11
  %14422 = call double @llvm.fmuladd.f64(double 0x3CA9FFFFFFFFFFFE, double %14421, double %14413)
  %14423 = load ptr, ptr %7, align 8, !tbaa !9
  %14424 = load i32, ptr %12, align 4, !tbaa !5
  %14425 = load i32, ptr %8, align 4, !tbaa !5
  %14426 = mul nsw i32 6, %14425
  %14427 = add nsw i32 %14424, %14426
  %14428 = sext i32 %14427 to i64
  %14429 = getelementptr inbounds double, ptr %14423, i64 %14428
  %14430 = load double, ptr %14429, align 8, !tbaa !11
  %14431 = call double @llvm.fmuladd.f64(double 0x3CB92BFFFFFFFFFF, double %14430, double %14422)
  %14432 = load ptr, ptr %7, align 8, !tbaa !9
  %14433 = load i32, ptr %12, align 4, !tbaa !5
  %14434 = load i32, ptr %8, align 4, !tbaa !5
  %14435 = mul nsw i32 7, %14434
  %14436 = add nsw i32 %14433, %14435
  %14437 = sext i32 %14436 to i64
  %14438 = getelementptr inbounds double, ptr %14432, i64 %14437
  %14439 = load double, ptr %14438, align 8, !tbaa !11
  %14440 = call double @llvm.fmuladd.f64(double 0x3C98900000000000, double %14439, double %14431)
  %14441 = load ptr, ptr %7, align 8, !tbaa !9
  %14442 = load i32, ptr %12, align 4, !tbaa !5
  %14443 = load i32, ptr %8, align 4, !tbaa !5
  %14444 = mul nsw i32 8, %14443
  %14445 = add nsw i32 %14442, %14444
  %14446 = sext i32 %14445 to i64
  %14447 = getelementptr inbounds double, ptr %14441, i64 %14446
  %14448 = load double, ptr %14447, align 8, !tbaa !11
  %14449 = call double @llvm.fmuladd.f64(double 0x3C8B000000000000, double %14448, double %14440)
  %14450 = load ptr, ptr %7, align 8, !tbaa !9
  %14451 = load i32, ptr %12, align 4, !tbaa !5
  %14452 = load i32, ptr %8, align 4, !tbaa !5
  %14453 = mul nsw i32 9, %14452
  %14454 = add nsw i32 %14451, %14453
  %14455 = sext i32 %14454 to i64
  %14456 = getelementptr inbounds double, ptr %14450, i64 %14455
  %14457 = load double, ptr %14456, align 8, !tbaa !11
  %14458 = call double @llvm.fmuladd.f64(double 0xBC67FFFFFFFFFFFE, double %14457, double %14449)
  %14459 = load ptr, ptr %7, align 8, !tbaa !9
  %14460 = load i32, ptr %12, align 4, !tbaa !5
  %14461 = load i32, ptr %8, align 4, !tbaa !5
  %14462 = mul nsw i32 10, %14461
  %14463 = add nsw i32 %14460, %14462
  %14464 = sext i32 %14463 to i64
  %14465 = getelementptr inbounds double, ptr %14459, i64 %14464
  %14466 = load double, ptr %14465, align 8, !tbaa !11
  %14467 = call double @llvm.fmuladd.f64(double 0xBF83152016E0EC5E, double %14466, double %14458)
  %14468 = load ptr, ptr %7, align 8, !tbaa !9
  %14469 = load i32, ptr %12, align 4, !tbaa !5
  %14470 = load i32, ptr %8, align 4, !tbaa !5
  %14471 = mul nsw i32 11, %14470
  %14472 = add nsw i32 %14469, %14471
  %14473 = sext i32 %14472 to i64
  %14474 = getelementptr inbounds double, ptr %14468, i64 %14473
  %14475 = load double, ptr %14474, align 8, !tbaa !11
  %14476 = call double @llvm.fmuladd.f64(double 0x3F938CE4890DB2BA, double %14475, double %14467)
  %14477 = load ptr, ptr %7, align 8, !tbaa !9
  %14478 = load i32, ptr %12, align 4, !tbaa !5
  %14479 = load i32, ptr %8, align 4, !tbaa !5
  %14480 = mul nsw i32 12, %14479
  %14481 = add nsw i32 %14478, %14480
  %14482 = sext i32 %14481 to i64
  %14483 = getelementptr inbounds double, ptr %14477, i64 %14482
  %14484 = load double, ptr %14483, align 8, !tbaa !11
  %14485 = call double @llvm.fmuladd.f64(double 0xBFB5B58B4F03B19E, double %14484, double %14476)
  %14486 = load ptr, ptr %7, align 8, !tbaa !9
  %14487 = load i32, ptr %12, align 4, !tbaa !5
  %14488 = load i32, ptr %8, align 4, !tbaa !5
  %14489 = mul nsw i32 13, %14488
  %14490 = add nsw i32 %14487, %14489
  %14491 = sext i32 %14490 to i64
  %14492 = getelementptr inbounds double, ptr %14486, i64 %14491
  %14493 = load double, ptr %14492, align 8, !tbaa !11
  %14494 = call double @llvm.fmuladd.f64(double 0x3FF4EC1BB3FDC612, double %14493, double %14485)
  %14495 = load ptr, ptr %7, align 8, !tbaa !9
  %14496 = load i32, ptr %12, align 4, !tbaa !5
  %14497 = load i32, ptr %8, align 4, !tbaa !5
  %14498 = mul nsw i32 14, %14497
  %14499 = add nsw i32 %14496, %14498
  %14500 = sext i32 %14499 to i64
  %14501 = getelementptr inbounds double, ptr %14495, i64 %14500
  %14502 = load double, ptr %14501, align 8, !tbaa !11
  %14503 = call double @llvm.fmuladd.f64(double 0xBF8BDAF699AECEEC, double %14502, double %14494)
  %14504 = load ptr, ptr %7, align 8, !tbaa !9
  %14505 = load i32, ptr %12, align 4, !tbaa !5
  %14506 = load i32, ptr %8, align 4, !tbaa !5
  %14507 = mul nsw i32 15, %14506
  %14508 = add nsw i32 %14505, %14507
  %14509 = sext i32 %14508 to i64
  %14510 = getelementptr inbounds double, ptr %14504, i64 %14509
  %14511 = load double, ptr %14510, align 8, !tbaa !11
  %14512 = call double @llvm.fmuladd.f64(double 0x3FCA50C41AB7A329, double %14511, double %14503)
  %14513 = load ptr, ptr %7, align 8, !tbaa !9
  %14514 = load i32, ptr %12, align 4, !tbaa !5
  %14515 = load i32, ptr %8, align 4, !tbaa !5
  %14516 = mul nsw i32 16, %14515
  %14517 = add nsw i32 %14514, %14516
  %14518 = sext i32 %14517 to i64
  %14519 = getelementptr inbounds double, ptr %14513, i64 %14518
  %14520 = load double, ptr %14519, align 8, !tbaa !11
  %14521 = call double @llvm.fmuladd.f64(double 0xBFE5679E70A60656, double %14520, double %14512)
  %14522 = load ptr, ptr %7, align 8, !tbaa !9
  %14523 = load i32, ptr %12, align 4, !tbaa !5
  %14524 = load i32, ptr %8, align 4, !tbaa !5
  %14525 = mul nsw i32 17, %14524
  %14526 = add nsw i32 %14523, %14525
  %14527 = sext i32 %14526 to i64
  %14528 = getelementptr inbounds double, ptr %14522, i64 %14527
  %14529 = load double, ptr %14528, align 8, !tbaa !11
  %14530 = call double @llvm.fmuladd.f64(double 0x3FD417DEBFC17B11, double %14529, double %14521)
  %14531 = load ptr, ptr %7, align 8, !tbaa !9
  %14532 = load i32, ptr %12, align 4, !tbaa !5
  %14533 = load i32, ptr %8, align 4, !tbaa !5
  %14534 = mul nsw i32 18, %14533
  %14535 = add nsw i32 %14532, %14534
  %14536 = sext i32 %14535 to i64
  %14537 = getelementptr inbounds double, ptr %14531, i64 %14536
  %14538 = load double, ptr %14537, align 8, !tbaa !11
  %14539 = call double @llvm.fmuladd.f64(double 0xBFB49217631F593C, double %14538, double %14530)
  %14540 = load ptr, ptr %7, align 8, !tbaa !9
  %14541 = load i32, ptr %12, align 4, !tbaa !5
  %14542 = load i32, ptr %8, align 4, !tbaa !5
  %14543 = mul nsw i32 19, %14542
  %14544 = add nsw i32 %14541, %14543
  %14545 = sext i32 %14544 to i64
  %14546 = getelementptr inbounds double, ptr %14540, i64 %14545
  %14547 = load double, ptr %14546, align 8, !tbaa !11
  %14548 = call double @llvm.fmuladd.f64(double 0x3F85E50BB681A42C, double %14547, double %14539)
  %14549 = load ptr, ptr %7, align 8, !tbaa !9
  %14550 = load i32, ptr %12, align 4, !tbaa !5
  %14551 = load i32, ptr %8, align 4, !tbaa !5
  %14552 = mul nsw i32 20, %14551
  %14553 = add nsw i32 %14550, %14552
  %14554 = sext i32 %14553 to i64
  %14555 = getelementptr inbounds double, ptr %14549, i64 %14554
  %14556 = load double, ptr %14555, align 8, !tbaa !11
  %14557 = call double @llvm.fmuladd.f64(double 0x3C97000000000000, double %14556, double %14548)
  %14558 = load ptr, ptr %7, align 8, !tbaa !9
  %14559 = load i32, ptr %12, align 4, !tbaa !5
  %14560 = load i32, ptr %8, align 4, !tbaa !5
  %14561 = mul nsw i32 21, %14560
  %14562 = add nsw i32 %14559, %14561
  %14563 = sext i32 %14562 to i64
  %14564 = getelementptr inbounds double, ptr %14558, i64 %14563
  %14565 = load double, ptr %14564, align 8, !tbaa !11
  %14566 = call double @llvm.fmuladd.f64(double 0x3C8F000000000000, double %14565, double %14557)
  %14567 = load ptr, ptr %7, align 8, !tbaa !9
  %14568 = load i32, ptr %12, align 4, !tbaa !5
  %14569 = load i32, ptr %8, align 4, !tbaa !5
  %14570 = mul nsw i32 22, %14569
  %14571 = add nsw i32 %14568, %14570
  %14572 = sext i32 %14571 to i64
  %14573 = getelementptr inbounds double, ptr %14567, i64 %14572
  %14574 = load double, ptr %14573, align 8, !tbaa !11
  %14575 = call double @llvm.fmuladd.f64(double 0xBC94C00000000000, double %14574, double %14566)
  %14576 = load ptr, ptr %7, align 8, !tbaa !9
  %14577 = load i32, ptr %12, align 4, !tbaa !5
  %14578 = load i32, ptr %8, align 4, !tbaa !5
  %14579 = mul nsw i32 23, %14578
  %14580 = add nsw i32 %14577, %14579
  %14581 = sext i32 %14580 to i64
  %14582 = getelementptr inbounds double, ptr %14576, i64 %14581
  %14583 = load double, ptr %14582, align 8, !tbaa !11
  %14584 = call double @llvm.fmuladd.f64(double 0xBC97E00000000000, double %14583, double %14575)
  %14585 = load ptr, ptr %7, align 8, !tbaa !9
  %14586 = load i32, ptr %12, align 4, !tbaa !5
  %14587 = load i32, ptr %8, align 4, !tbaa !5
  %14588 = mul nsw i32 24, %14587
  %14589 = add nsw i32 %14586, %14588
  %14590 = sext i32 %14589 to i64
  %14591 = getelementptr inbounds double, ptr %14585, i64 %14590
  %14592 = load double, ptr %14591, align 8, !tbaa !11
  %14593 = call double @llvm.fmuladd.f64(double 0x3CA27FFFFFFFFFFF, double %14592, double %14584)
  %14594 = load ptr, ptr %7, align 8, !tbaa !9
  %14595 = load i32, ptr %12, align 4, !tbaa !5
  %14596 = load i32, ptr %8, align 4, !tbaa !5
  %14597 = mul nsw i32 25, %14596
  %14598 = add nsw i32 %14595, %14597
  %14599 = sext i32 %14598 to i64
  %14600 = getelementptr inbounds double, ptr %14594, i64 %14599
  %14601 = load double, ptr %14600, align 8, !tbaa !11
  %14602 = call double @llvm.fmuladd.f64(double 0xBC7E000000000001, double %14601, double %14593)
  %14603 = load ptr, ptr %7, align 8, !tbaa !9
  %14604 = load i32, ptr %12, align 4, !tbaa !5
  %14605 = load i32, ptr %8, align 4, !tbaa !5
  %14606 = mul nsw i32 26, %14605
  %14607 = add nsw i32 %14604, %14606
  %14608 = sext i32 %14607 to i64
  %14609 = getelementptr inbounds double, ptr %14603, i64 %14608
  %14610 = load double, ptr %14609, align 8, !tbaa !11
  %14611 = call double @llvm.fmuladd.f64(double 0xBC94000000000000, double %14610, double %14602)
  %14612 = load ptr, ptr %7, align 8, !tbaa !9
  %14613 = load i32, ptr %12, align 4, !tbaa !5
  %14614 = load i32, ptr %8, align 4, !tbaa !5
  %14615 = mul nsw i32 27, %14614
  %14616 = add nsw i32 %14613, %14615
  %14617 = sext i32 %14616 to i64
  %14618 = getelementptr inbounds double, ptr %14612, i64 %14617
  %14619 = load double, ptr %14618, align 8, !tbaa !11
  %14620 = call double @llvm.fmuladd.f64(double 0x3CAD5FFFFFFFFFFF, double %14619, double %14611)
  %14621 = load ptr, ptr %7, align 8, !tbaa !9
  %14622 = load i32, ptr %12, align 4, !tbaa !5
  %14623 = load i32, ptr %8, align 4, !tbaa !5
  %14624 = mul nsw i32 28, %14623
  %14625 = add nsw i32 %14622, %14624
  %14626 = sext i32 %14625 to i64
  %14627 = getelementptr inbounds double, ptr %14621, i64 %14626
  %14628 = load double, ptr %14627, align 8, !tbaa !11
  %14629 = call double @llvm.fmuladd.f64(double 0x3C9CFFFFFFFFFFFF, double %14628, double %14620)
  %14630 = load ptr, ptr %7, align 8, !tbaa !9
  %14631 = load i32, ptr %12, align 4, !tbaa !5
  %14632 = load i32, ptr %8, align 4, !tbaa !5
  %14633 = mul nsw i32 29, %14632
  %14634 = add nsw i32 %14631, %14633
  %14635 = sext i32 %14634 to i64
  %14636 = getelementptr inbounds double, ptr %14630, i64 %14635
  %14637 = load double, ptr %14636, align 8, !tbaa !11
  %14638 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %14637, double %14629)
  %14639 = load ptr, ptr %7, align 8, !tbaa !9
  %14640 = load i32, ptr %12, align 4, !tbaa !5
  %14641 = load i32, ptr %8, align 4, !tbaa !5
  %14642 = mul nsw i32 30, %14641
  %14643 = add nsw i32 %14640, %14642
  %14644 = sext i32 %14643 to i64
  %14645 = getelementptr inbounds double, ptr %14639, i64 %14644
  %14646 = load double, ptr %14645, align 8, !tbaa !11
  %14647 = call double @llvm.fmuladd.f64(double 0x3CA8600000000000, double %14646, double %14638)
  %14648 = load ptr, ptr %7, align 8, !tbaa !9
  %14649 = load i32, ptr %12, align 4, !tbaa !5
  %14650 = load i32, ptr %8, align 4, !tbaa !5
  %14651 = mul nsw i32 31, %14650
  %14652 = add nsw i32 %14649, %14651
  %14653 = sext i32 %14652 to i64
  %14654 = getelementptr inbounds double, ptr %14648, i64 %14653
  %14655 = load double, ptr %14654, align 8, !tbaa !11
  %14656 = call double @llvm.fmuladd.f64(double 0xBC87800000000001, double %14655, double %14647)
  %14657 = load ptr, ptr %7, align 8, !tbaa !9
  %14658 = load i32, ptr %12, align 4, !tbaa !5
  %14659 = load i32, ptr %8, align 4, !tbaa !5
  %14660 = mul nsw i32 32, %14659
  %14661 = add nsw i32 %14658, %14660
  %14662 = sext i32 %14661 to i64
  %14663 = getelementptr inbounds double, ptr %14657, i64 %14662
  %14664 = load double, ptr %14663, align 8, !tbaa !11
  %14665 = call double @llvm.fmuladd.f64(double 0xBC97000000000000, double %14664, double %14656)
  %14666 = load ptr, ptr %7, align 8, !tbaa !9
  %14667 = load i32, ptr %12, align 4, !tbaa !5
  %14668 = load i32, ptr %8, align 4, !tbaa !5
  %14669 = mul nsw i32 33, %14668
  %14670 = add nsw i32 %14667, %14669
  %14671 = sext i32 %14670 to i64
  %14672 = getelementptr inbounds double, ptr %14666, i64 %14671
  %14673 = load double, ptr %14672, align 8, !tbaa !11
  %14674 = call double @llvm.fmuladd.f64(double 0x3CA63FFFFFFFFFFF, double %14673, double %14665)
  %14675 = load ptr, ptr %7, align 8, !tbaa !9
  %14676 = load i32, ptr %12, align 4, !tbaa !5
  %14677 = load i32, ptr %8, align 4, !tbaa !5
  %14678 = mul nsw i32 34, %14677
  %14679 = add nsw i32 %14676, %14678
  %14680 = sext i32 %14679 to i64
  %14681 = getelementptr inbounds double, ptr %14675, i64 %14680
  %14682 = load double, ptr %14681, align 8, !tbaa !11
  %14683 = call double @llvm.fmuladd.f64(double 0xBC99C00000000000, double %14682, double %14674)
  %14684 = load ptr, ptr %7, align 8, !tbaa !9
  %14685 = load i32, ptr %12, align 4, !tbaa !5
  %14686 = load i32, ptr %8, align 4, !tbaa !5
  %14687 = mul nsw i32 35, %14686
  %14688 = add nsw i32 %14685, %14687
  %14689 = sext i32 %14688 to i64
  %14690 = getelementptr inbounds double, ptr %14684, i64 %14689
  %14691 = load double, ptr %14690, align 8, !tbaa !11
  %14692 = call double @llvm.fmuladd.f64(double 0xBC70000000000001, double %14691, double %14683)
  %14693 = load ptr, ptr %7, align 8, !tbaa !9
  %14694 = load i32, ptr %12, align 4, !tbaa !5
  %14695 = load i32, ptr %8, align 4, !tbaa !5
  %14696 = mul nsw i32 36, %14695
  %14697 = add nsw i32 %14694, %14696
  %14698 = sext i32 %14697 to i64
  %14699 = getelementptr inbounds double, ptr %14693, i64 %14698
  %14700 = load double, ptr %14699, align 8, !tbaa !11
  %14701 = call double @llvm.fmuladd.f64(double 0xBC88200000000000, double %14700, double %14692)
  %14702 = load ptr, ptr %7, align 8, !tbaa !9
  %14703 = load i32, ptr %12, align 4, !tbaa !5
  %14704 = load i32, ptr %8, align 4, !tbaa !5
  %14705 = mul nsw i32 37, %14704
  %14706 = add nsw i32 %14703, %14705
  %14707 = sext i32 %14706 to i64
  %14708 = getelementptr inbounds double, ptr %14702, i64 %14707
  %14709 = load double, ptr %14708, align 8, !tbaa !11
  %14710 = call double @llvm.fmuladd.f64(double 0xBC9A500000000000, double %14709, double %14701)
  %14711 = load ptr, ptr %7, align 8, !tbaa !9
  %14712 = load i32, ptr %12, align 4, !tbaa !5
  %14713 = load i32, ptr %8, align 4, !tbaa !5
  %14714 = mul nsw i32 38, %14713
  %14715 = add nsw i32 %14712, %14714
  %14716 = sext i32 %14715 to i64
  %14717 = getelementptr inbounds double, ptr %14711, i64 %14716
  %14718 = load double, ptr %14717, align 8, !tbaa !11
  %14719 = call double @llvm.fmuladd.f64(double 0xBC81000000000000, double %14718, double %14710)
  %14720 = load ptr, ptr %7, align 8, !tbaa !9
  %14721 = load i32, ptr %12, align 4, !tbaa !5
  %14722 = load i32, ptr %8, align 4, !tbaa !5
  %14723 = mul nsw i32 39, %14722
  %14724 = add nsw i32 %14721, %14723
  %14725 = sext i32 %14724 to i64
  %14726 = getelementptr inbounds double, ptr %14720, i64 %14725
  %14727 = load double, ptr %14726, align 8, !tbaa !11
  %14728 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %14727, double %14719)
  store double %14728, ptr %11, align 8, !tbaa !11
  %14729 = load double, ptr %11, align 8, !tbaa !11
  %14730 = load ptr, ptr %9, align 8, !tbaa !9
  %14731 = load i32, ptr %12, align 4, !tbaa !5
  %14732 = load i32, ptr %10, align 4, !tbaa !5
  %14733 = mul nsw i32 40, %14732
  %14734 = add nsw i32 %14731, %14733
  %14735 = sext i32 %14734 to i64
  %14736 = getelementptr inbounds double, ptr %14730, i64 %14735
  %14737 = load double, ptr %14736, align 8, !tbaa !11
  %14738 = fadd double %14737, %14729
  store double %14738, ptr %14736, align 8, !tbaa !11
  %14739 = load ptr, ptr %7, align 8, !tbaa !9
  %14740 = load i32, ptr %12, align 4, !tbaa !5
  %14741 = load i32, ptr %8, align 4, !tbaa !5
  %14742 = mul nsw i32 0, %14741
  %14743 = add nsw i32 %14740, %14742
  %14744 = sext i32 %14743 to i64
  %14745 = getelementptr inbounds double, ptr %14739, i64 %14744
  %14746 = load double, ptr %14745, align 8, !tbaa !11
  %14747 = load ptr, ptr %7, align 8, !tbaa !9
  %14748 = load i32, ptr %12, align 4, !tbaa !5
  %14749 = load i32, ptr %8, align 4, !tbaa !5
  %14750 = mul nsw i32 1, %14749
  %14751 = add nsw i32 %14748, %14750
  %14752 = sext i32 %14751 to i64
  %14753 = getelementptr inbounds double, ptr %14747, i64 %14752
  %14754 = load double, ptr %14753, align 8, !tbaa !11
  %14755 = fmul double 0xBCA3C00000000002, %14754
  %14756 = call double @llvm.fmuladd.f64(double 0x3CC1100000000000, double %14746, double %14755)
  %14757 = load ptr, ptr %7, align 8, !tbaa !9
  %14758 = load i32, ptr %12, align 4, !tbaa !5
  %14759 = load i32, ptr %8, align 4, !tbaa !5
  %14760 = mul nsw i32 2, %14759
  %14761 = add nsw i32 %14758, %14760
  %14762 = sext i32 %14761 to i64
  %14763 = getelementptr inbounds double, ptr %14757, i64 %14762
  %14764 = load double, ptr %14763, align 8, !tbaa !11
  %14765 = call double @llvm.fmuladd.f64(double 0xBC8BC00000000001, double %14764, double %14756)
  %14766 = load ptr, ptr %7, align 8, !tbaa !9
  %14767 = load i32, ptr %12, align 4, !tbaa !5
  %14768 = load i32, ptr %8, align 4, !tbaa !5
  %14769 = mul nsw i32 3, %14768
  %14770 = add nsw i32 %14767, %14769
  %14771 = sext i32 %14770 to i64
  %14772 = getelementptr inbounds double, ptr %14766, i64 %14771
  %14773 = load double, ptr %14772, align 8, !tbaa !11
  %14774 = call double @llvm.fmuladd.f64(double 0x3CAE400000000002, double %14773, double %14765)
  %14775 = load ptr, ptr %7, align 8, !tbaa !9
  %14776 = load i32, ptr %12, align 4, !tbaa !5
  %14777 = load i32, ptr %8, align 4, !tbaa !5
  %14778 = mul nsw i32 4, %14777
  %14779 = add nsw i32 %14776, %14778
  %14780 = sext i32 %14779 to i64
  %14781 = getelementptr inbounds double, ptr %14775, i64 %14780
  %14782 = load double, ptr %14781, align 8, !tbaa !11
  %14783 = call double @llvm.fmuladd.f64(double 0xBC9F7FFFFFFFFFFC, double %14782, double %14774)
  %14784 = load ptr, ptr %7, align 8, !tbaa !9
  %14785 = load i32, ptr %12, align 4, !tbaa !5
  %14786 = load i32, ptr %8, align 4, !tbaa !5
  %14787 = mul nsw i32 5, %14786
  %14788 = add nsw i32 %14785, %14787
  %14789 = sext i32 %14788 to i64
  %14790 = getelementptr inbounds double, ptr %14784, i64 %14789
  %14791 = load double, ptr %14790, align 8, !tbaa !11
  %14792 = call double @llvm.fmuladd.f64(double 0x3C96800000000000, double %14791, double %14783)
  %14793 = load ptr, ptr %7, align 8, !tbaa !9
  %14794 = load i32, ptr %12, align 4, !tbaa !5
  %14795 = load i32, ptr %8, align 4, !tbaa !5
  %14796 = mul nsw i32 6, %14795
  %14797 = add nsw i32 %14794, %14796
  %14798 = sext i32 %14797 to i64
  %14799 = getelementptr inbounds double, ptr %14793, i64 %14798
  %14800 = load double, ptr %14799, align 8, !tbaa !11
  %14801 = call double @llvm.fmuladd.f64(double 0x3C95800000000000, double %14800, double %14792)
  %14802 = load ptr, ptr %7, align 8, !tbaa !9
  %14803 = load i32, ptr %12, align 4, !tbaa !5
  %14804 = load i32, ptr %8, align 4, !tbaa !5
  %14805 = mul nsw i32 7, %14804
  %14806 = add nsw i32 %14803, %14805
  %14807 = sext i32 %14806 to i64
  %14808 = getelementptr inbounds double, ptr %14802, i64 %14807
  %14809 = load double, ptr %14808, align 8, !tbaa !11
  %14810 = call double @llvm.fmuladd.f64(double 0x3C73000000000001, double %14809, double %14801)
  %14811 = load ptr, ptr %7, align 8, !tbaa !9
  %14812 = load i32, ptr %12, align 4, !tbaa !5
  %14813 = load i32, ptr %8, align 4, !tbaa !5
  %14814 = mul nsw i32 8, %14813
  %14815 = add nsw i32 %14812, %14814
  %14816 = sext i32 %14815 to i64
  %14817 = getelementptr inbounds double, ptr %14811, i64 %14816
  %14818 = load double, ptr %14817, align 8, !tbaa !11
  %14819 = call double @llvm.fmuladd.f64(double 0x3CA23FFFFFFFFFFF, double %14818, double %14810)
  %14820 = load ptr, ptr %7, align 8, !tbaa !9
  %14821 = load i32, ptr %12, align 4, !tbaa !5
  %14822 = load i32, ptr %8, align 4, !tbaa !5
  %14823 = mul nsw i32 9, %14822
  %14824 = add nsw i32 %14821, %14823
  %14825 = sext i32 %14824 to i64
  %14826 = getelementptr inbounds double, ptr %14820, i64 %14825
  %14827 = load double, ptr %14826, align 8, !tbaa !11
  %14828 = call double @llvm.fmuladd.f64(double 0xBCA1400000000000, double %14827, double %14819)
  %14829 = load ptr, ptr %7, align 8, !tbaa !9
  %14830 = load i32, ptr %12, align 4, !tbaa !5
  %14831 = load i32, ptr %8, align 4, !tbaa !5
  %14832 = mul nsw i32 10, %14831
  %14833 = add nsw i32 %14830, %14832
  %14834 = sext i32 %14833 to i64
  %14835 = getelementptr inbounds double, ptr %14829, i64 %14834
  %14836 = load double, ptr %14835, align 8, !tbaa !11
  %14837 = call double @llvm.fmuladd.f64(double 0xBFE333710B32A29E, double %14836, double %14828)
  %14838 = load ptr, ptr %7, align 8, !tbaa !9
  %14839 = load i32, ptr %12, align 4, !tbaa !5
  %14840 = load i32, ptr %8, align 4, !tbaa !5
  %14841 = mul nsw i32 11, %14840
  %14842 = add nsw i32 %14839, %14841
  %14843 = sext i32 %14842 to i64
  %14844 = getelementptr inbounds double, ptr %14838, i64 %14843
  %14845 = load double, ptr %14844, align 8, !tbaa !11
  %14846 = call double @llvm.fmuladd.f64(double 0xBFA352D4DB969C18, double %14845, double %14837)
  %14847 = load ptr, ptr %7, align 8, !tbaa !9
  %14848 = load i32, ptr %12, align 4, !tbaa !5
  %14849 = load i32, ptr %8, align 4, !tbaa !5
  %14850 = mul nsw i32 12, %14849
  %14851 = add nsw i32 %14848, %14850
  %14852 = sext i32 %14851 to i64
  %14853 = getelementptr inbounds double, ptr %14847, i64 %14852
  %14854 = load double, ptr %14853, align 8, !tbaa !11
  %14855 = call double @llvm.fmuladd.f64(double 0xBFBEED13A9F0D909, double %14854, double %14846)
  %14856 = load ptr, ptr %7, align 8, !tbaa !9
  %14857 = load i32, ptr %12, align 4, !tbaa !5
  %14858 = load i32, ptr %8, align 4, !tbaa !5
  %14859 = mul nsw i32 13, %14858
  %14860 = add nsw i32 %14857, %14859
  %14861 = sext i32 %14860 to i64
  %14862 = getelementptr inbounds double, ptr %14856, i64 %14861
  %14863 = load double, ptr %14862, align 8, !tbaa !11
  %14864 = call double @llvm.fmuladd.f64(double 0x3FA87D7643548522, double %14863, double %14855)
  %14865 = load ptr, ptr %7, align 8, !tbaa !9
  %14866 = load i32, ptr %12, align 4, !tbaa !5
  %14867 = load i32, ptr %8, align 4, !tbaa !5
  %14868 = mul nsw i32 14, %14867
  %14869 = add nsw i32 %14866, %14868
  %14870 = sext i32 %14869 to i64
  %14871 = getelementptr inbounds double, ptr %14865, i64 %14870
  %14872 = load double, ptr %14871, align 8, !tbaa !11
  %14873 = call double @llvm.fmuladd.f64(double 0x3FC27B05E24EC5F8, double %14872, double %14864)
  %14874 = load ptr, ptr %7, align 8, !tbaa !9
  %14875 = load i32, ptr %12, align 4, !tbaa !5
  %14876 = load i32, ptr %8, align 4, !tbaa !5
  %14877 = mul nsw i32 15, %14876
  %14878 = add nsw i32 %14875, %14877
  %14879 = sext i32 %14878 to i64
  %14880 = getelementptr inbounds double, ptr %14874, i64 %14879
  %14881 = load double, ptr %14880, align 8, !tbaa !11
  %14882 = call double @llvm.fmuladd.f64(double 0x3FF670C5F1F4C929, double %14881, double %14873)
  %14883 = load ptr, ptr %7, align 8, !tbaa !9
  %14884 = load i32, ptr %12, align 4, !tbaa !5
  %14885 = load i32, ptr %8, align 4, !tbaa !5
  %14886 = mul nsw i32 16, %14885
  %14887 = add nsw i32 %14884, %14886
  %14888 = sext i32 %14887 to i64
  %14889 = getelementptr inbounds double, ptr %14883, i64 %14888
  %14890 = load double, ptr %14889, align 8, !tbaa !11
  %14891 = call double @llvm.fmuladd.f64(double 0xBFD41C0D131D4297, double %14890, double %14882)
  %14892 = load ptr, ptr %7, align 8, !tbaa !9
  %14893 = load i32, ptr %12, align 4, !tbaa !5
  %14894 = load i32, ptr %8, align 4, !tbaa !5
  %14895 = mul nsw i32 17, %14894
  %14896 = add nsw i32 %14893, %14895
  %14897 = sext i32 %14896 to i64
  %14898 = getelementptr inbounds double, ptr %14892, i64 %14897
  %14899 = load double, ptr %14898, align 8, !tbaa !11
  %14900 = call double @llvm.fmuladd.f64(double 0x3FD35DAE88CBA648, double %14899, double %14891)
  %14901 = load ptr, ptr %7, align 8, !tbaa !9
  %14902 = load i32, ptr %12, align 4, !tbaa !5
  %14903 = load i32, ptr %8, align 4, !tbaa !5
  %14904 = mul nsw i32 18, %14903
  %14905 = add nsw i32 %14902, %14904
  %14906 = sext i32 %14905 to i64
  %14907 = getelementptr inbounds double, ptr %14901, i64 %14906
  %14908 = load double, ptr %14907, align 8, !tbaa !11
  %14909 = call double @llvm.fmuladd.f64(double 0x3FC36A9134CD3C63, double %14908, double %14900)
  %14910 = load ptr, ptr %7, align 8, !tbaa !9
  %14911 = load i32, ptr %12, align 4, !tbaa !5
  %14912 = load i32, ptr %8, align 4, !tbaa !5
  %14913 = mul nsw i32 19, %14912
  %14914 = add nsw i32 %14911, %14913
  %14915 = sext i32 %14914 to i64
  %14916 = getelementptr inbounds double, ptr %14910, i64 %14915
  %14917 = load double, ptr %14916, align 8, !tbaa !11
  %14918 = call double @llvm.fmuladd.f64(double 0x3F9854E0ADA34BC6, double %14917, double %14909)
  %14919 = load ptr, ptr %7, align 8, !tbaa !9
  %14920 = load i32, ptr %12, align 4, !tbaa !5
  %14921 = load i32, ptr %8, align 4, !tbaa !5
  %14922 = mul nsw i32 20, %14921
  %14923 = add nsw i32 %14920, %14922
  %14924 = sext i32 %14923 to i64
  %14925 = getelementptr inbounds double, ptr %14919, i64 %14924
  %14926 = load double, ptr %14925, align 8, !tbaa !11
  %14927 = call double @llvm.fmuladd.f64(double 0x3CA1000000000001, double %14926, double %14918)
  %14928 = load ptr, ptr %7, align 8, !tbaa !9
  %14929 = load i32, ptr %12, align 4, !tbaa !5
  %14930 = load i32, ptr %8, align 4, !tbaa !5
  %14931 = mul nsw i32 21, %14930
  %14932 = add nsw i32 %14929, %14931
  %14933 = sext i32 %14932 to i64
  %14934 = getelementptr inbounds double, ptr %14928, i64 %14933
  %14935 = load double, ptr %14934, align 8, !tbaa !11
  %14936 = call double @llvm.fmuladd.f64(double 0x3CA27FFFFFFFFFFF, double %14935, double %14927)
  %14937 = load ptr, ptr %7, align 8, !tbaa !9
  %14938 = load i32, ptr %12, align 4, !tbaa !5
  %14939 = load i32, ptr %8, align 4, !tbaa !5
  %14940 = mul nsw i32 22, %14939
  %14941 = add nsw i32 %14938, %14940
  %14942 = sext i32 %14941 to i64
  %14943 = getelementptr inbounds double, ptr %14937, i64 %14942
  %14944 = load double, ptr %14943, align 8, !tbaa !11
  %14945 = call double @llvm.fmuladd.f64(double 0xBC82800000000000, double %14944, double %14936)
  %14946 = load ptr, ptr %7, align 8, !tbaa !9
  %14947 = load i32, ptr %12, align 4, !tbaa !5
  %14948 = load i32, ptr %8, align 4, !tbaa !5
  %14949 = mul nsw i32 23, %14948
  %14950 = add nsw i32 %14947, %14949
  %14951 = sext i32 %14950 to i64
  %14952 = getelementptr inbounds double, ptr %14946, i64 %14951
  %14953 = load double, ptr %14952, align 8, !tbaa !11
  %14954 = call double @llvm.fmuladd.f64(double 0xBCB1D00000000000, double %14953, double %14945)
  %14955 = load ptr, ptr %7, align 8, !tbaa !9
  %14956 = load i32, ptr %12, align 4, !tbaa !5
  %14957 = load i32, ptr %8, align 4, !tbaa !5
  %14958 = mul nsw i32 24, %14957
  %14959 = add nsw i32 %14956, %14958
  %14960 = sext i32 %14959 to i64
  %14961 = getelementptr inbounds double, ptr %14955, i64 %14960
  %14962 = load double, ptr %14961, align 8, !tbaa !11
  %14963 = call double @llvm.fmuladd.f64(double 0x3CA8800000000000, double %14962, double %14954)
  %14964 = load ptr, ptr %7, align 8, !tbaa !9
  %14965 = load i32, ptr %12, align 4, !tbaa !5
  %14966 = load i32, ptr %8, align 4, !tbaa !5
  %14967 = mul nsw i32 25, %14966
  %14968 = add nsw i32 %14965, %14967
  %14969 = sext i32 %14968 to i64
  %14970 = getelementptr inbounds double, ptr %14964, i64 %14969
  %14971 = load double, ptr %14970, align 8, !tbaa !11
  %14972 = call double @llvm.fmuladd.f64(double 0x3C92000000000000, double %14971, double %14963)
  %14973 = load ptr, ptr %7, align 8, !tbaa !9
  %14974 = load i32, ptr %12, align 4, !tbaa !5
  %14975 = load i32, ptr %8, align 4, !tbaa !5
  %14976 = mul nsw i32 26, %14975
  %14977 = add nsw i32 %14974, %14976
  %14978 = sext i32 %14977 to i64
  %14979 = getelementptr inbounds double, ptr %14973, i64 %14978
  %14980 = load double, ptr %14979, align 8, !tbaa !11
  %14981 = call double @llvm.fmuladd.f64(double 0x3CA63FFFFFFFFFFF, double %14980, double %14972)
  %14982 = load ptr, ptr %7, align 8, !tbaa !9
  %14983 = load i32, ptr %12, align 4, !tbaa !5
  %14984 = load i32, ptr %8, align 4, !tbaa !5
  %14985 = mul nsw i32 27, %14984
  %14986 = add nsw i32 %14983, %14985
  %14987 = sext i32 %14986 to i64
  %14988 = getelementptr inbounds double, ptr %14982, i64 %14987
  %14989 = load double, ptr %14988, align 8, !tbaa !11
  %14990 = call double @llvm.fmuladd.f64(double 0x3CA4000000000001, double %14989, double %14981)
  %14991 = load ptr, ptr %7, align 8, !tbaa !9
  %14992 = load i32, ptr %12, align 4, !tbaa !5
  %14993 = load i32, ptr %8, align 4, !tbaa !5
  %14994 = mul nsw i32 28, %14993
  %14995 = add nsw i32 %14992, %14994
  %14996 = sext i32 %14995 to i64
  %14997 = getelementptr inbounds double, ptr %14991, i64 %14996
  %14998 = load double, ptr %14997, align 8, !tbaa !11
  %14999 = call double @llvm.fmuladd.f64(double 0x3C92000000000000, double %14998, double %14990)
  %15000 = load ptr, ptr %7, align 8, !tbaa !9
  %15001 = load i32, ptr %12, align 4, !tbaa !5
  %15002 = load i32, ptr %8, align 4, !tbaa !5
  %15003 = mul nsw i32 29, %15002
  %15004 = add nsw i32 %15001, %15003
  %15005 = sext i32 %15004 to i64
  %15006 = getelementptr inbounds double, ptr %15000, i64 %15005
  %15007 = load double, ptr %15006, align 8, !tbaa !11
  %15008 = call double @llvm.fmuladd.f64(double 0xBC9C000000000000, double %15007, double %14999)
  %15009 = load ptr, ptr %7, align 8, !tbaa !9
  %15010 = load i32, ptr %12, align 4, !tbaa !5
  %15011 = load i32, ptr %8, align 4, !tbaa !5
  %15012 = mul nsw i32 30, %15011
  %15013 = add nsw i32 %15010, %15012
  %15014 = sext i32 %15013 to i64
  %15015 = getelementptr inbounds double, ptr %15009, i64 %15014
  %15016 = load double, ptr %15015, align 8, !tbaa !11
  %15017 = call double @llvm.fmuladd.f64(double 0x3CA8800000000000, double %15016, double %15008)
  %15018 = load ptr, ptr %7, align 8, !tbaa !9
  %15019 = load i32, ptr %12, align 4, !tbaa !5
  %15020 = load i32, ptr %8, align 4, !tbaa !5
  %15021 = mul nsw i32 31, %15020
  %15022 = add nsw i32 %15019, %15021
  %15023 = sext i32 %15022 to i64
  %15024 = getelementptr inbounds double, ptr %15018, i64 %15023
  %15025 = load double, ptr %15024, align 8, !tbaa !11
  %15026 = call double @llvm.fmuladd.f64(double 0xBC8E000000000000, double %15025, double %15017)
  %15027 = load ptr, ptr %7, align 8, !tbaa !9
  %15028 = load i32, ptr %12, align 4, !tbaa !5
  %15029 = load i32, ptr %8, align 4, !tbaa !5
  %15030 = mul nsw i32 32, %15029
  %15031 = add nsw i32 %15028, %15030
  %15032 = sext i32 %15031 to i64
  %15033 = getelementptr inbounds double, ptr %15027, i64 %15032
  %15034 = load double, ptr %15033, align 8, !tbaa !11
  %15035 = call double @llvm.fmuladd.f64(double 0x3C90E00000000000, double %15034, double %15026)
  %15036 = load ptr, ptr %7, align 8, !tbaa !9
  %15037 = load i32, ptr %12, align 4, !tbaa !5
  %15038 = load i32, ptr %8, align 4, !tbaa !5
  %15039 = mul nsw i32 33, %15038
  %15040 = add nsw i32 %15037, %15039
  %15041 = sext i32 %15040 to i64
  %15042 = getelementptr inbounds double, ptr %15036, i64 %15041
  %15043 = load double, ptr %15042, align 8, !tbaa !11
  %15044 = call double @llvm.fmuladd.f64(double 0x3C97200000000000, double %15043, double %15035)
  %15045 = load ptr, ptr %7, align 8, !tbaa !9
  %15046 = load i32, ptr %12, align 4, !tbaa !5
  %15047 = load i32, ptr %8, align 4, !tbaa !5
  %15048 = mul nsw i32 34, %15047
  %15049 = add nsw i32 %15046, %15048
  %15050 = sext i32 %15049 to i64
  %15051 = getelementptr inbounds double, ptr %15045, i64 %15050
  %15052 = load double, ptr %15051, align 8, !tbaa !11
  %15053 = call double @llvm.fmuladd.f64(double 0xBC89FFFFFFFFFFFF, double %15052, double %15044)
  %15054 = load ptr, ptr %7, align 8, !tbaa !9
  %15055 = load i32, ptr %12, align 4, !tbaa !5
  %15056 = load i32, ptr %8, align 4, !tbaa !5
  %15057 = mul nsw i32 35, %15056
  %15058 = add nsw i32 %15055, %15057
  %15059 = sext i32 %15058 to i64
  %15060 = getelementptr inbounds double, ptr %15054, i64 %15059
  %15061 = load double, ptr %15060, align 8, !tbaa !11
  %15062 = call double @llvm.fmuladd.f64(double 0xBC9A800000000000, double %15061, double %15053)
  %15063 = load ptr, ptr %7, align 8, !tbaa !9
  %15064 = load i32, ptr %12, align 4, !tbaa !5
  %15065 = load i32, ptr %8, align 4, !tbaa !5
  %15066 = mul nsw i32 36, %15065
  %15067 = add nsw i32 %15064, %15066
  %15068 = sext i32 %15067 to i64
  %15069 = getelementptr inbounds double, ptr %15063, i64 %15068
  %15070 = load double, ptr %15069, align 8, !tbaa !11
  %15071 = call double @llvm.fmuladd.f64(double 0xBC94400000000000, double %15070, double %15062)
  %15072 = load ptr, ptr %7, align 8, !tbaa !9
  %15073 = load i32, ptr %12, align 4, !tbaa !5
  %15074 = load i32, ptr %8, align 4, !tbaa !5
  %15075 = mul nsw i32 37, %15074
  %15076 = add nsw i32 %15073, %15075
  %15077 = sext i32 %15076 to i64
  %15078 = getelementptr inbounds double, ptr %15072, i64 %15077
  %15079 = load double, ptr %15078, align 8, !tbaa !11
  %15080 = call double @llvm.fmuladd.f64(double 0xBC91400000000000, double %15079, double %15071)
  %15081 = load ptr, ptr %7, align 8, !tbaa !9
  %15082 = load i32, ptr %12, align 4, !tbaa !5
  %15083 = load i32, ptr %8, align 4, !tbaa !5
  %15084 = mul nsw i32 38, %15083
  %15085 = add nsw i32 %15082, %15084
  %15086 = sext i32 %15085 to i64
  %15087 = getelementptr inbounds double, ptr %15081, i64 %15086
  %15088 = load double, ptr %15087, align 8, !tbaa !11
  %15089 = call double @llvm.fmuladd.f64(double 0xBC9EFFFFFFFFFFFD, double %15088, double %15080)
  %15090 = load ptr, ptr %7, align 8, !tbaa !9
  %15091 = load i32, ptr %12, align 4, !tbaa !5
  %15092 = load i32, ptr %8, align 4, !tbaa !5
  %15093 = mul nsw i32 39, %15092
  %15094 = add nsw i32 %15091, %15093
  %15095 = sext i32 %15094 to i64
  %15096 = getelementptr inbounds double, ptr %15090, i64 %15095
  %15097 = load double, ptr %15096, align 8, !tbaa !11
  %15098 = call double @llvm.fmuladd.f64(double 0x3C79FFFFFFFFFFFF, double %15097, double %15089)
  store double %15098, ptr %11, align 8, !tbaa !11
  %15099 = load double, ptr %11, align 8, !tbaa !11
  %15100 = load ptr, ptr %9, align 8, !tbaa !9
  %15101 = load i32, ptr %12, align 4, !tbaa !5
  %15102 = load i32, ptr %10, align 4, !tbaa !5
  %15103 = mul nsw i32 41, %15102
  %15104 = add nsw i32 %15101, %15103
  %15105 = sext i32 %15104 to i64
  %15106 = getelementptr inbounds double, ptr %15100, i64 %15105
  %15107 = load double, ptr %15106, align 8, !tbaa !11
  %15108 = fadd double %15107, %15099
  store double %15108, ptr %15106, align 8, !tbaa !11
  %15109 = load ptr, ptr %7, align 8, !tbaa !9
  %15110 = load i32, ptr %12, align 4, !tbaa !5
  %15111 = load i32, ptr %8, align 4, !tbaa !5
  %15112 = mul nsw i32 0, %15111
  %15113 = add nsw i32 %15110, %15112
  %15114 = sext i32 %15113 to i64
  %15115 = getelementptr inbounds double, ptr %15109, i64 %15114
  %15116 = load double, ptr %15115, align 8, !tbaa !11
  %15117 = load ptr, ptr %7, align 8, !tbaa !9
  %15118 = load i32, ptr %12, align 4, !tbaa !5
  %15119 = load i32, ptr %8, align 4, !tbaa !5
  %15120 = mul nsw i32 1, %15119
  %15121 = add nsw i32 %15118, %15120
  %15122 = sext i32 %15121 to i64
  %15123 = getelementptr inbounds double, ptr %15117, i64 %15122
  %15124 = load double, ptr %15123, align 8, !tbaa !11
  %15125 = fmul double 0xBCB6C00000000000, %15124
  %15126 = call double @llvm.fmuladd.f64(double 0x3CC4E00000000000, double %15116, double %15125)
  %15127 = load ptr, ptr %7, align 8, !tbaa !9
  %15128 = load i32, ptr %12, align 4, !tbaa !5
  %15129 = load i32, ptr %8, align 4, !tbaa !5
  %15130 = mul nsw i32 2, %15129
  %15131 = add nsw i32 %15128, %15130
  %15132 = sext i32 %15131 to i64
  %15133 = getelementptr inbounds double, ptr %15127, i64 %15132
  %15134 = load double, ptr %15133, align 8, !tbaa !11
  %15135 = call double @llvm.fmuladd.f64(double 0xBC8E800000000001, double %15134, double %15126)
  %15136 = load ptr, ptr %7, align 8, !tbaa !9
  %15137 = load i32, ptr %12, align 4, !tbaa !5
  %15138 = load i32, ptr %8, align 4, !tbaa !5
  %15139 = mul nsw i32 3, %15138
  %15140 = add nsw i32 %15137, %15139
  %15141 = sext i32 %15140 to i64
  %15142 = getelementptr inbounds double, ptr %15136, i64 %15141
  %15143 = load double, ptr %15142, align 8, !tbaa !11
  %15144 = call double @llvm.fmuladd.f64(double 0x3C67FFFFFFFFFFFE, double %15143, double %15135)
  %15145 = load ptr, ptr %7, align 8, !tbaa !9
  %15146 = load i32, ptr %12, align 4, !tbaa !5
  %15147 = load i32, ptr %8, align 4, !tbaa !5
  %15148 = mul nsw i32 4, %15147
  %15149 = add nsw i32 %15146, %15148
  %15150 = sext i32 %15149 to i64
  %15151 = getelementptr inbounds double, ptr %15145, i64 %15150
  %15152 = load double, ptr %15151, align 8, !tbaa !11
  %15153 = call double @llvm.fmuladd.f64(double 0xBCC2C00000000000, double %15152, double %15144)
  %15154 = load ptr, ptr %7, align 8, !tbaa !9
  %15155 = load i32, ptr %12, align 4, !tbaa !5
  %15156 = load i32, ptr %8, align 4, !tbaa !5
  %15157 = mul nsw i32 5, %15156
  %15158 = add nsw i32 %15155, %15157
  %15159 = sext i32 %15158 to i64
  %15160 = getelementptr inbounds double, ptr %15154, i64 %15159
  %15161 = load double, ptr %15160, align 8, !tbaa !11
  %15162 = call double @llvm.fmuladd.f64(double 0xBC50000000000000, double %15161, double %15153)
  %15163 = load ptr, ptr %7, align 8, !tbaa !9
  %15164 = load i32, ptr %12, align 4, !tbaa !5
  %15165 = load i32, ptr %8, align 4, !tbaa !5
  %15166 = mul nsw i32 6, %15165
  %15167 = add nsw i32 %15164, %15166
  %15168 = sext i32 %15167 to i64
  %15169 = getelementptr inbounds double, ptr %15163, i64 %15168
  %15170 = load double, ptr %15169, align 8, !tbaa !11
  %15171 = call double @llvm.fmuladd.f64(double 0x3C8E800000000001, double %15170, double %15162)
  %15172 = load ptr, ptr %7, align 8, !tbaa !9
  %15173 = load i32, ptr %12, align 4, !tbaa !5
  %15174 = load i32, ptr %8, align 4, !tbaa !5
  %15175 = mul nsw i32 7, %15174
  %15176 = add nsw i32 %15173, %15175
  %15177 = sext i32 %15176 to i64
  %15178 = getelementptr inbounds double, ptr %15172, i64 %15177
  %15179 = load double, ptr %15178, align 8, !tbaa !11
  %15180 = call double @llvm.fmuladd.f64(double 0x3C9BC00000000000, double %15179, double %15171)
  %15181 = load ptr, ptr %7, align 8, !tbaa !9
  %15182 = load i32, ptr %12, align 4, !tbaa !5
  %15183 = load i32, ptr %8, align 4, !tbaa !5
  %15184 = mul nsw i32 8, %15183
  %15185 = add nsw i32 %15182, %15184
  %15186 = sext i32 %15185 to i64
  %15187 = getelementptr inbounds double, ptr %15181, i64 %15186
  %15188 = load double, ptr %15187, align 8, !tbaa !11
  %15189 = call double @llvm.fmuladd.f64(double 0x3CA0800000000001, double %15188, double %15180)
  %15190 = load ptr, ptr %7, align 8, !tbaa !9
  %15191 = load i32, ptr %12, align 4, !tbaa !5
  %15192 = load i32, ptr %8, align 4, !tbaa !5
  %15193 = mul nsw i32 9, %15192
  %15194 = add nsw i32 %15191, %15193
  %15195 = sext i32 %15194 to i64
  %15196 = getelementptr inbounds double, ptr %15190, i64 %15195
  %15197 = load double, ptr %15196, align 8, !tbaa !11
  %15198 = call double @llvm.fmuladd.f64(double 0x3CAB800000000001, double %15197, double %15189)
  %15199 = load ptr, ptr %7, align 8, !tbaa !9
  %15200 = load i32, ptr %12, align 4, !tbaa !5
  %15201 = load i32, ptr %8, align 4, !tbaa !5
  %15202 = mul nsw i32 10, %15201
  %15203 = add nsw i32 %15200, %15202
  %15204 = sext i32 %15203 to i64
  %15205 = getelementptr inbounds double, ptr %15199, i64 %15204
  %15206 = load double, ptr %15205, align 8, !tbaa !11
  %15207 = call double @llvm.fmuladd.f64(double 0xBFE333710B32A29E, double %15206, double %15198)
  %15208 = load ptr, ptr %7, align 8, !tbaa !9
  %15209 = load i32, ptr %12, align 4, !tbaa !5
  %15210 = load i32, ptr %8, align 4, !tbaa !5
  %15211 = mul nsw i32 11, %15210
  %15212 = add nsw i32 %15209, %15211
  %15213 = sext i32 %15212 to i64
  %15214 = getelementptr inbounds double, ptr %15208, i64 %15213
  %15215 = load double, ptr %15214, align 8, !tbaa !11
  %15216 = call double @llvm.fmuladd.f64(double 0x3FA87D764354850E, double %15215, double %15207)
  %15217 = load ptr, ptr %7, align 8, !tbaa !9
  %15218 = load i32, ptr %12, align 4, !tbaa !5
  %15219 = load i32, ptr %8, align 4, !tbaa !5
  %15220 = mul nsw i32 12, %15219
  %15221 = add nsw i32 %15218, %15220
  %15222 = sext i32 %15221 to i64
  %15223 = getelementptr inbounds double, ptr %15217, i64 %15222
  %15224 = load double, ptr %15223, align 8, !tbaa !11
  %15225 = call double @llvm.fmuladd.f64(double 0xBFBEED13A9F0D910, double %15224, double %15216)
  %15226 = load ptr, ptr %7, align 8, !tbaa !9
  %15227 = load i32, ptr %12, align 4, !tbaa !5
  %15228 = load i32, ptr %8, align 4, !tbaa !5
  %15229 = mul nsw i32 13, %15228
  %15230 = add nsw i32 %15227, %15229
  %15231 = sext i32 %15230 to i64
  %15232 = getelementptr inbounds double, ptr %15226, i64 %15231
  %15233 = load double, ptr %15232, align 8, !tbaa !11
  %15234 = call double @llvm.fmuladd.f64(double 0xBFA352D4DB969BFC, double %15233, double %15225)
  %15235 = load ptr, ptr %7, align 8, !tbaa !9
  %15236 = load i32, ptr %12, align 4, !tbaa !5
  %15237 = load i32, ptr %8, align 4, !tbaa !5
  %15238 = mul nsw i32 14, %15237
  %15239 = add nsw i32 %15236, %15238
  %15240 = sext i32 %15239 to i64
  %15241 = getelementptr inbounds double, ptr %15235, i64 %15240
  %15242 = load double, ptr %15241, align 8, !tbaa !11
  %15243 = call double @llvm.fmuladd.f64(double 0x3FD35DAE88CBA644, double %15242, double %15234)
  %15244 = load ptr, ptr %7, align 8, !tbaa !9
  %15245 = load i32, ptr %12, align 4, !tbaa !5
  %15246 = load i32, ptr %8, align 4, !tbaa !5
  %15247 = mul nsw i32 15, %15246
  %15248 = add nsw i32 %15245, %15247
  %15249 = sext i32 %15248 to i64
  %15250 = getelementptr inbounds double, ptr %15244, i64 %15249
  %15251 = load double, ptr %15250, align 8, !tbaa !11
  %15252 = call double @llvm.fmuladd.f64(double 0x3FC36A9134CD3C4D, double %15251, double %15243)
  %15253 = load ptr, ptr %7, align 8, !tbaa !9
  %15254 = load i32, ptr %12, align 4, !tbaa !5
  %15255 = load i32, ptr %8, align 4, !tbaa !5
  %15256 = mul nsw i32 16, %15255
  %15257 = add nsw i32 %15254, %15256
  %15258 = sext i32 %15257 to i64
  %15259 = getelementptr inbounds double, ptr %15253, i64 %15258
  %15260 = load double, ptr %15259, align 8, !tbaa !11
  %15261 = call double @llvm.fmuladd.f64(double 0x3F9854E0ADA34B16, double %15260, double %15252)
  %15262 = load ptr, ptr %7, align 8, !tbaa !9
  %15263 = load i32, ptr %12, align 4, !tbaa !5
  %15264 = load i32, ptr %8, align 4, !tbaa !5
  %15265 = mul nsw i32 17, %15264
  %15266 = add nsw i32 %15263, %15265
  %15267 = sext i32 %15266 to i64
  %15268 = getelementptr inbounds double, ptr %15262, i64 %15267
  %15269 = load double, ptr %15268, align 8, !tbaa !11
  %15270 = call double @llvm.fmuladd.f64(double 0x3FC27B05E24EC5F8, double %15269, double %15261)
  %15271 = load ptr, ptr %7, align 8, !tbaa !9
  %15272 = load i32, ptr %12, align 4, !tbaa !5
  %15273 = load i32, ptr %8, align 4, !tbaa !5
  %15274 = mul nsw i32 18, %15273
  %15275 = add nsw i32 %15272, %15274
  %15276 = sext i32 %15275 to i64
  %15277 = getelementptr inbounds double, ptr %15271, i64 %15276
  %15278 = load double, ptr %15277, align 8, !tbaa !11
  %15279 = call double @llvm.fmuladd.f64(double 0x3FF670C5F1F4C932, double %15278, double %15270)
  %15280 = load ptr, ptr %7, align 8, !tbaa !9
  %15281 = load i32, ptr %12, align 4, !tbaa !5
  %15282 = load i32, ptr %8, align 4, !tbaa !5
  %15283 = mul nsw i32 19, %15282
  %15284 = add nsw i32 %15281, %15283
  %15285 = sext i32 %15284 to i64
  %15286 = getelementptr inbounds double, ptr %15280, i64 %15285
  %15287 = load double, ptr %15286, align 8, !tbaa !11
  %15288 = call double @llvm.fmuladd.f64(double 0xBFD41C0D131D4291, double %15287, double %15279)
  %15289 = load ptr, ptr %7, align 8, !tbaa !9
  %15290 = load i32, ptr %12, align 4, !tbaa !5
  %15291 = load i32, ptr %8, align 4, !tbaa !5
  %15292 = mul nsw i32 20, %15291
  %15293 = add nsw i32 %15290, %15292
  %15294 = sext i32 %15293 to i64
  %15295 = getelementptr inbounds double, ptr %15289, i64 %15294
  %15296 = load double, ptr %15295, align 8, !tbaa !11
  %15297 = call double @llvm.fmuladd.f64(double 0xBCAE000000000002, double %15296, double %15288)
  %15298 = load ptr, ptr %7, align 8, !tbaa !9
  %15299 = load i32, ptr %12, align 4, !tbaa !5
  %15300 = load i32, ptr %8, align 4, !tbaa !5
  %15301 = mul nsw i32 21, %15300
  %15302 = add nsw i32 %15299, %15301
  %15303 = sext i32 %15302 to i64
  %15304 = getelementptr inbounds double, ptr %15298, i64 %15303
  %15305 = load double, ptr %15304, align 8, !tbaa !11
  %15306 = call double @llvm.fmuladd.f64(double 0x3CBA000000000000, double %15305, double %15297)
  %15307 = load ptr, ptr %7, align 8, !tbaa !9
  %15308 = load i32, ptr %12, align 4, !tbaa !5
  %15309 = load i32, ptr %8, align 4, !tbaa !5
  %15310 = mul nsw i32 22, %15309
  %15311 = add nsw i32 %15308, %15310
  %15312 = sext i32 %15311 to i64
  %15313 = getelementptr inbounds double, ptr %15307, i64 %15312
  %15314 = load double, ptr %15313, align 8, !tbaa !11
  %15315 = call double @llvm.fmuladd.f64(double 0x3CA4C00000000000, double %15314, double %15306)
  %15316 = load ptr, ptr %7, align 8, !tbaa !9
  %15317 = load i32, ptr %12, align 4, !tbaa !5
  %15318 = load i32, ptr %8, align 4, !tbaa !5
  %15319 = mul nsw i32 23, %15318
  %15320 = add nsw i32 %15317, %15319
  %15321 = sext i32 %15320 to i64
  %15322 = getelementptr inbounds double, ptr %15316, i64 %15321
  %15323 = load double, ptr %15322, align 8, !tbaa !11
  %15324 = call double @llvm.fmuladd.f64(double 0xBCB93FFFFFFFFFFF, double %15323, double %15315)
  %15325 = load ptr, ptr %7, align 8, !tbaa !9
  %15326 = load i32, ptr %12, align 4, !tbaa !5
  %15327 = load i32, ptr %8, align 4, !tbaa !5
  %15328 = mul nsw i32 24, %15327
  %15329 = add nsw i32 %15326, %15328
  %15330 = sext i32 %15329 to i64
  %15331 = getelementptr inbounds double, ptr %15325, i64 %15330
  %15332 = load double, ptr %15331, align 8, !tbaa !11
  %15333 = call double @llvm.fmuladd.f64(double 0xBC94000000000000, double %15332, double %15324)
  %15334 = load ptr, ptr %7, align 8, !tbaa !9
  %15335 = load i32, ptr %12, align 4, !tbaa !5
  %15336 = load i32, ptr %8, align 4, !tbaa !5
  %15337 = mul nsw i32 25, %15336
  %15338 = add nsw i32 %15335, %15337
  %15339 = sext i32 %15338 to i64
  %15340 = getelementptr inbounds double, ptr %15334, i64 %15339
  %15341 = load double, ptr %15340, align 8, !tbaa !11
  %15342 = call double @llvm.fmuladd.f64(double 0x3CA2000000000000, double %15341, double %15333)
  %15343 = load ptr, ptr %7, align 8, !tbaa !9
  %15344 = load i32, ptr %12, align 4, !tbaa !5
  %15345 = load i32, ptr %8, align 4, !tbaa !5
  %15346 = mul nsw i32 26, %15345
  %15347 = add nsw i32 %15344, %15346
  %15348 = sext i32 %15347 to i64
  %15349 = getelementptr inbounds double, ptr %15343, i64 %15348
  %15350 = load double, ptr %15349, align 8, !tbaa !11
  %15351 = call double @llvm.fmuladd.f64(double 0xBCA9000000000000, double %15350, double %15342)
  %15352 = load ptr, ptr %7, align 8, !tbaa !9
  %15353 = load i32, ptr %12, align 4, !tbaa !5
  %15354 = load i32, ptr %8, align 4, !tbaa !5
  %15355 = mul nsw i32 27, %15354
  %15356 = add nsw i32 %15353, %15355
  %15357 = sext i32 %15356 to i64
  %15358 = getelementptr inbounds double, ptr %15352, i64 %15357
  %15359 = load double, ptr %15358, align 8, !tbaa !11
  %15360 = call double @llvm.fmuladd.f64(double 0x3CB77FFFFFFFFFFF, double %15359, double %15351)
  %15361 = load ptr, ptr %7, align 8, !tbaa !9
  %15362 = load i32, ptr %12, align 4, !tbaa !5
  %15363 = load i32, ptr %8, align 4, !tbaa !5
  %15364 = mul nsw i32 28, %15363
  %15365 = add nsw i32 %15362, %15364
  %15366 = sext i32 %15365 to i64
  %15367 = getelementptr inbounds double, ptr %15361, i64 %15366
  %15368 = load double, ptr %15367, align 8, !tbaa !11
  %15369 = call double @llvm.fmuladd.f64(double 0x3CB2000000000000, double %15368, double %15360)
  %15370 = load ptr, ptr %7, align 8, !tbaa !9
  %15371 = load i32, ptr %12, align 4, !tbaa !5
  %15372 = load i32, ptr %8, align 4, !tbaa !5
  %15373 = mul nsw i32 29, %15372
  %15374 = add nsw i32 %15371, %15373
  %15375 = sext i32 %15374 to i64
  %15376 = getelementptr inbounds double, ptr %15370, i64 %15375
  %15377 = load double, ptr %15376, align 8, !tbaa !11
  %15378 = call double @llvm.fmuladd.f64(double 0x3C9C000000000000, double %15377, double %15369)
  %15379 = load ptr, ptr %7, align 8, !tbaa !9
  %15380 = load i32, ptr %12, align 4, !tbaa !5
  %15381 = load i32, ptr %8, align 4, !tbaa !5
  %15382 = mul nsw i32 30, %15381
  %15383 = add nsw i32 %15380, %15382
  %15384 = sext i32 %15383 to i64
  %15385 = getelementptr inbounds double, ptr %15379, i64 %15384
  %15386 = load double, ptr %15385, align 8, !tbaa !11
  %15387 = call double @llvm.fmuladd.f64(double 0xBCBAFFFFFFFFFFFF, double %15386, double %15378)
  %15388 = load ptr, ptr %7, align 8, !tbaa !9
  %15389 = load i32, ptr %12, align 4, !tbaa !5
  %15390 = load i32, ptr %8, align 4, !tbaa !5
  %15391 = mul nsw i32 31, %15390
  %15392 = add nsw i32 %15389, %15391
  %15393 = sext i32 %15392 to i64
  %15394 = getelementptr inbounds double, ptr %15388, i64 %15393
  %15395 = load double, ptr %15394, align 8, !tbaa !11
  %15396 = call double @llvm.fmuladd.f64(double 0xBC98000000000000, double %15395, double %15387)
  %15397 = load ptr, ptr %7, align 8, !tbaa !9
  %15398 = load i32, ptr %12, align 4, !tbaa !5
  %15399 = load i32, ptr %8, align 4, !tbaa !5
  %15400 = mul nsw i32 32, %15399
  %15401 = add nsw i32 %15398, %15400
  %15402 = sext i32 %15401 to i64
  %15403 = getelementptr inbounds double, ptr %15397, i64 %15402
  %15404 = load double, ptr %15403, align 8, !tbaa !11
  %15405 = call double @llvm.fmuladd.f64(double 0x3C8C800000000000, double %15404, double %15396)
  %15406 = load ptr, ptr %7, align 8, !tbaa !9
  %15407 = load i32, ptr %12, align 4, !tbaa !5
  %15408 = load i32, ptr %8, align 4, !tbaa !5
  %15409 = mul nsw i32 33, %15408
  %15410 = add nsw i32 %15407, %15409
  %15411 = sext i32 %15410 to i64
  %15412 = getelementptr inbounds double, ptr %15406, i64 %15411
  %15413 = load double, ptr %15412, align 8, !tbaa !11
  %15414 = call double @llvm.fmuladd.f64(double 0x3CB4700000000001, double %15413, double %15405)
  %15415 = load ptr, ptr %7, align 8, !tbaa !9
  %15416 = load i32, ptr %12, align 4, !tbaa !5
  %15417 = load i32, ptr %8, align 4, !tbaa !5
  %15418 = mul nsw i32 34, %15417
  %15419 = add nsw i32 %15416, %15418
  %15420 = sext i32 %15419 to i64
  %15421 = getelementptr inbounds double, ptr %15415, i64 %15420
  %15422 = load double, ptr %15421, align 8, !tbaa !11
  %15423 = call double @llvm.fmuladd.f64(double 0xBCA1000000000001, double %15422, double %15414)
  %15424 = load ptr, ptr %7, align 8, !tbaa !9
  %15425 = load i32, ptr %12, align 4, !tbaa !5
  %15426 = load i32, ptr %8, align 4, !tbaa !5
  %15427 = mul nsw i32 35, %15426
  %15428 = add nsw i32 %15425, %15427
  %15429 = sext i32 %15428 to i64
  %15430 = getelementptr inbounds double, ptr %15424, i64 %15429
  %15431 = load double, ptr %15430, align 8, !tbaa !11
  %15432 = call double @llvm.fmuladd.f64(double 0x3CAC800000000000, double %15431, double %15423)
  %15433 = load ptr, ptr %7, align 8, !tbaa !9
  %15434 = load i32, ptr %12, align 4, !tbaa !5
  %15435 = load i32, ptr %8, align 4, !tbaa !5
  %15436 = mul nsw i32 36, %15435
  %15437 = add nsw i32 %15434, %15436
  %15438 = sext i32 %15437 to i64
  %15439 = getelementptr inbounds double, ptr %15433, i64 %15438
  %15440 = load double, ptr %15439, align 8, !tbaa !11
  %15441 = call double @llvm.fmuladd.f64(double 0x3C9A400000000000, double %15440, double %15432)
  %15442 = load ptr, ptr %7, align 8, !tbaa !9
  %15443 = load i32, ptr %12, align 4, !tbaa !5
  %15444 = load i32, ptr %8, align 4, !tbaa !5
  %15445 = mul nsw i32 37, %15444
  %15446 = add nsw i32 %15443, %15445
  %15447 = sext i32 %15446 to i64
  %15448 = getelementptr inbounds double, ptr %15442, i64 %15447
  %15449 = load double, ptr %15448, align 8, !tbaa !11
  %15450 = call double @llvm.fmuladd.f64(double 0xBCB1700000000000, double %15449, double %15441)
  %15451 = load ptr, ptr %7, align 8, !tbaa !9
  %15452 = load i32, ptr %12, align 4, !tbaa !5
  %15453 = load i32, ptr %8, align 4, !tbaa !5
  %15454 = mul nsw i32 38, %15453
  %15455 = add nsw i32 %15452, %15454
  %15456 = sext i32 %15455 to i64
  %15457 = getelementptr inbounds double, ptr %15451, i64 %15456
  %15458 = load double, ptr %15457, align 8, !tbaa !11
  %15459 = call double @llvm.fmuladd.f64(double 0xBC9DFFFFFFFFFFFE, double %15458, double %15450)
  %15460 = load ptr, ptr %7, align 8, !tbaa !9
  %15461 = load i32, ptr %12, align 4, !tbaa !5
  %15462 = load i32, ptr %8, align 4, !tbaa !5
  %15463 = mul nsw i32 39, %15462
  %15464 = add nsw i32 %15461, %15463
  %15465 = sext i32 %15464 to i64
  %15466 = getelementptr inbounds double, ptr %15460, i64 %15465
  %15467 = load double, ptr %15466, align 8, !tbaa !11
  %15468 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %15467, double %15459)
  store double %15468, ptr %11, align 8, !tbaa !11
  %15469 = load double, ptr %11, align 8, !tbaa !11
  %15470 = load ptr, ptr %9, align 8, !tbaa !9
  %15471 = load i32, ptr %12, align 4, !tbaa !5
  %15472 = load i32, ptr %10, align 4, !tbaa !5
  %15473 = mul nsw i32 42, %15472
  %15474 = add nsw i32 %15471, %15473
  %15475 = sext i32 %15474 to i64
  %15476 = getelementptr inbounds double, ptr %15470, i64 %15475
  %15477 = load double, ptr %15476, align 8, !tbaa !11
  %15478 = fadd double %15477, %15469
  store double %15478, ptr %15476, align 8, !tbaa !11
  %15479 = load ptr, ptr %7, align 8, !tbaa !9
  %15480 = load i32, ptr %12, align 4, !tbaa !5
  %15481 = load i32, ptr %8, align 4, !tbaa !5
  %15482 = mul nsw i32 0, %15481
  %15483 = add nsw i32 %15480, %15482
  %15484 = sext i32 %15483 to i64
  %15485 = getelementptr inbounds double, ptr %15479, i64 %15484
  %15486 = load double, ptr %15485, align 8, !tbaa !11
  %15487 = load ptr, ptr %7, align 8, !tbaa !9
  %15488 = load i32, ptr %12, align 4, !tbaa !5
  %15489 = load i32, ptr %8, align 4, !tbaa !5
  %15490 = mul nsw i32 1, %15489
  %15491 = add nsw i32 %15488, %15490
  %15492 = sext i32 %15491 to i64
  %15493 = getelementptr inbounds double, ptr %15487, i64 %15492
  %15494 = load double, ptr %15493, align 8, !tbaa !11
  %15495 = fmul double 0xBCB5000000000000, %15494
  %15496 = call double @llvm.fmuladd.f64(double 0x3CBC000000000000, double %15486, double %15495)
  %15497 = load ptr, ptr %7, align 8, !tbaa !9
  %15498 = load i32, ptr %12, align 4, !tbaa !5
  %15499 = load i32, ptr %8, align 4, !tbaa !5
  %15500 = mul nsw i32 2, %15499
  %15501 = add nsw i32 %15498, %15500
  %15502 = sext i32 %15501 to i64
  %15503 = getelementptr inbounds double, ptr %15497, i64 %15502
  %15504 = load double, ptr %15503, align 8, !tbaa !11
  %15505 = call double @llvm.fmuladd.f64(double 0x3C9CFFFFFFFFFFFF, double %15504, double %15496)
  %15506 = load ptr, ptr %7, align 8, !tbaa !9
  %15507 = load i32, ptr %12, align 4, !tbaa !5
  %15508 = load i32, ptr %8, align 4, !tbaa !5
  %15509 = mul nsw i32 3, %15508
  %15510 = add nsw i32 %15507, %15509
  %15511 = sext i32 %15510 to i64
  %15512 = getelementptr inbounds double, ptr %15506, i64 %15511
  %15513 = load double, ptr %15512, align 8, !tbaa !11
  %15514 = call double @llvm.fmuladd.f64(double 0x3C84000000000000, double %15513, double %15505)
  %15515 = load ptr, ptr %7, align 8, !tbaa !9
  %15516 = load i32, ptr %12, align 4, !tbaa !5
  %15517 = load i32, ptr %8, align 4, !tbaa !5
  %15518 = mul nsw i32 4, %15517
  %15519 = add nsw i32 %15516, %15518
  %15520 = sext i32 %15519 to i64
  %15521 = getelementptr inbounds double, ptr %15515, i64 %15520
  %15522 = load double, ptr %15521, align 8, !tbaa !11
  %15523 = call double @llvm.fmuladd.f64(double 0xBCB7000000000000, double %15522, double %15514)
  %15524 = load ptr, ptr %7, align 8, !tbaa !9
  %15525 = load i32, ptr %12, align 4, !tbaa !5
  %15526 = load i32, ptr %8, align 4, !tbaa !5
  %15527 = mul nsw i32 5, %15526
  %15528 = add nsw i32 %15525, %15527
  %15529 = sext i32 %15528 to i64
  %15530 = getelementptr inbounds double, ptr %15524, i64 %15529
  %15531 = load double, ptr %15530, align 8, !tbaa !11
  %15532 = call double @llvm.fmuladd.f64(double 0x3C98000000000000, double %15531, double %15523)
  %15533 = load ptr, ptr %7, align 8, !tbaa !9
  %15534 = load i32, ptr %12, align 4, !tbaa !5
  %15535 = load i32, ptr %8, align 4, !tbaa !5
  %15536 = mul nsw i32 6, %15535
  %15537 = add nsw i32 %15534, %15536
  %15538 = sext i32 %15537 to i64
  %15539 = getelementptr inbounds double, ptr %15533, i64 %15538
  %15540 = load double, ptr %15539, align 8, !tbaa !11
  %15541 = call double @llvm.fmuladd.f64(double 0x3C95000000000000, double %15540, double %15532)
  %15542 = load ptr, ptr %7, align 8, !tbaa !9
  %15543 = load i32, ptr %12, align 4, !tbaa !5
  %15544 = load i32, ptr %8, align 4, !tbaa !5
  %15545 = mul nsw i32 7, %15544
  %15546 = add nsw i32 %15543, %15545
  %15547 = sext i32 %15546 to i64
  %15548 = getelementptr inbounds double, ptr %15542, i64 %15547
  %15549 = load double, ptr %15548, align 8, !tbaa !11
  %15550 = call double @llvm.fmuladd.f64(double 0x3CA2000000000000, double %15549, double %15541)
  %15551 = load ptr, ptr %7, align 8, !tbaa !9
  %15552 = load i32, ptr %12, align 4, !tbaa !5
  %15553 = load i32, ptr %8, align 4, !tbaa !5
  %15554 = mul nsw i32 8, %15553
  %15555 = add nsw i32 %15552, %15554
  %15556 = sext i32 %15555 to i64
  %15557 = getelementptr inbounds double, ptr %15551, i64 %15556
  %15558 = load double, ptr %15557, align 8, !tbaa !11
  %15559 = call double @llvm.fmuladd.f64(double 0xBC94000000000000, double %15558, double %15550)
  %15560 = load ptr, ptr %7, align 8, !tbaa !9
  %15561 = load i32, ptr %12, align 4, !tbaa !5
  %15562 = load i32, ptr %8, align 4, !tbaa !5
  %15563 = mul nsw i32 9, %15562
  %15564 = add nsw i32 %15561, %15563
  %15565 = sext i32 %15564 to i64
  %15566 = getelementptr inbounds double, ptr %15560, i64 %15565
  %15567 = load double, ptr %15566, align 8, !tbaa !11
  %15568 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %15567, double %15559)
  %15569 = load ptr, ptr %7, align 8, !tbaa !9
  %15570 = load i32, ptr %12, align 4, !tbaa !5
  %15571 = load i32, ptr %8, align 4, !tbaa !5
  %15572 = mul nsw i32 10, %15571
  %15573 = add nsw i32 %15570, %15572
  %15574 = sext i32 %15573 to i64
  %15575 = getelementptr inbounds double, ptr %15569, i64 %15574
  %15576 = load double, ptr %15575, align 8, !tbaa !11
  %15577 = call double @llvm.fmuladd.f64(double 0xBF83152016E0EC50, double %15576, double %15568)
  %15578 = load ptr, ptr %7, align 8, !tbaa !9
  %15579 = load i32, ptr %12, align 4, !tbaa !5
  %15580 = load i32, ptr %8, align 4, !tbaa !5
  %15581 = mul nsw i32 11, %15580
  %15582 = add nsw i32 %15579, %15581
  %15583 = sext i32 %15582 to i64
  %15584 = getelementptr inbounds double, ptr %15578, i64 %15583
  %15585 = load double, ptr %15584, align 8, !tbaa !11
  %15586 = call double @llvm.fmuladd.f64(double 0x3FF4EC1BB3FDC612, double %15585, double %15577)
  %15587 = load ptr, ptr %7, align 8, !tbaa !9
  %15588 = load i32, ptr %12, align 4, !tbaa !5
  %15589 = load i32, ptr %8, align 4, !tbaa !5
  %15590 = mul nsw i32 12, %15589
  %15591 = add nsw i32 %15588, %15590
  %15592 = sext i32 %15591 to i64
  %15593 = getelementptr inbounds double, ptr %15587, i64 %15592
  %15594 = load double, ptr %15593, align 8, !tbaa !11
  %15595 = call double @llvm.fmuladd.f64(double 0xBFB5B58B4F03B1AE, double %15594, double %15586)
  %15596 = load ptr, ptr %7, align 8, !tbaa !9
  %15597 = load i32, ptr %12, align 4, !tbaa !5
  %15598 = load i32, ptr %8, align 4, !tbaa !5
  %15599 = mul nsw i32 13, %15598
  %15600 = add nsw i32 %15597, %15599
  %15601 = sext i32 %15600 to i64
  %15602 = getelementptr inbounds double, ptr %15596, i64 %15601
  %15603 = load double, ptr %15602, align 8, !tbaa !11
  %15604 = call double @llvm.fmuladd.f64(double 0x3F938CE4890DB2A0, double %15603, double %15595)
  %15605 = load ptr, ptr %7, align 8, !tbaa !9
  %15606 = load i32, ptr %12, align 4, !tbaa !5
  %15607 = load i32, ptr %8, align 4, !tbaa !5
  %15608 = mul nsw i32 14, %15607
  %15609 = add nsw i32 %15606, %15608
  %15610 = sext i32 %15609 to i64
  %15611 = getelementptr inbounds double, ptr %15605, i64 %15610
  %15612 = load double, ptr %15611, align 8, !tbaa !11
  %15613 = call double @llvm.fmuladd.f64(double 0x3FD417DEBFC17B15, double %15612, double %15604)
  %15614 = load ptr, ptr %7, align 8, !tbaa !9
  %15615 = load i32, ptr %12, align 4, !tbaa !5
  %15616 = load i32, ptr %8, align 4, !tbaa !5
  %15617 = mul nsw i32 15, %15616
  %15618 = add nsw i32 %15615, %15617
  %15619 = sext i32 %15618 to i64
  %15620 = getelementptr inbounds double, ptr %15614, i64 %15619
  %15621 = load double, ptr %15620, align 8, !tbaa !11
  %15622 = call double @llvm.fmuladd.f64(double 0xBFB49217631F5930, double %15621, double %15613)
  %15623 = load ptr, ptr %7, align 8, !tbaa !9
  %15624 = load i32, ptr %12, align 4, !tbaa !5
  %15625 = load i32, ptr %8, align 4, !tbaa !5
  %15626 = mul nsw i32 16, %15625
  %15627 = add nsw i32 %15624, %15626
  %15628 = sext i32 %15627 to i64
  %15629 = getelementptr inbounds double, ptr %15623, i64 %15628
  %15630 = load double, ptr %15629, align 8, !tbaa !11
  %15631 = call double @llvm.fmuladd.f64(double 0x3F85E50BB681A426, double %15630, double %15622)
  %15632 = load ptr, ptr %7, align 8, !tbaa !9
  %15633 = load i32, ptr %12, align 4, !tbaa !5
  %15634 = load i32, ptr %8, align 4, !tbaa !5
  %15635 = mul nsw i32 17, %15634
  %15636 = add nsw i32 %15633, %15635
  %15637 = sext i32 %15636 to i64
  %15638 = getelementptr inbounds double, ptr %15632, i64 %15637
  %15639 = load double, ptr %15638, align 8, !tbaa !11
  %15640 = call double @llvm.fmuladd.f64(double 0xBF8BDAF699AED00C, double %15639, double %15631)
  %15641 = load ptr, ptr %7, align 8, !tbaa !9
  %15642 = load i32, ptr %12, align 4, !tbaa !5
  %15643 = load i32, ptr %8, align 4, !tbaa !5
  %15644 = mul nsw i32 18, %15643
  %15645 = add nsw i32 %15642, %15644
  %15646 = sext i32 %15645 to i64
  %15647 = getelementptr inbounds double, ptr %15641, i64 %15646
  %15648 = load double, ptr %15647, align 8, !tbaa !11
  %15649 = call double @llvm.fmuladd.f64(double 0x3FCA50C41AB7A31A, double %15648, double %15640)
  %15650 = load ptr, ptr %7, align 8, !tbaa !9
  %15651 = load i32, ptr %12, align 4, !tbaa !5
  %15652 = load i32, ptr %8, align 4, !tbaa !5
  %15653 = mul nsw i32 19, %15652
  %15654 = add nsw i32 %15651, %15653
  %15655 = sext i32 %15654 to i64
  %15656 = getelementptr inbounds double, ptr %15650, i64 %15655
  %15657 = load double, ptr %15656, align 8, !tbaa !11
  %15658 = call double @llvm.fmuladd.f64(double 0xBFE5679E70A6065A, double %15657, double %15649)
  %15659 = load ptr, ptr %7, align 8, !tbaa !9
  %15660 = load i32, ptr %12, align 4, !tbaa !5
  %15661 = load i32, ptr %8, align 4, !tbaa !5
  %15662 = mul nsw i32 20, %15661
  %15663 = add nsw i32 %15660, %15662
  %15664 = sext i32 %15663 to i64
  %15665 = getelementptr inbounds double, ptr %15659, i64 %15664
  %15666 = load double, ptr %15665, align 8, !tbaa !11
  %15667 = call double @llvm.fmuladd.f64(double 0xBCC1000000000000, double %15666, double %15658)
  %15668 = load ptr, ptr %7, align 8, !tbaa !9
  %15669 = load i32, ptr %12, align 4, !tbaa !5
  %15670 = load i32, ptr %8, align 4, !tbaa !5
  %15671 = mul nsw i32 21, %15670
  %15672 = add nsw i32 %15669, %15671
  %15673 = sext i32 %15672 to i64
  %15674 = getelementptr inbounds double, ptr %15668, i64 %15673
  %15675 = load double, ptr %15674, align 8, !tbaa !11
  %15676 = call double @llvm.fmuladd.f64(double 0x3CA8000000000001, double %15675, double %15667)
  %15677 = load ptr, ptr %7, align 8, !tbaa !9
  %15678 = load i32, ptr %12, align 4, !tbaa !5
  %15679 = load i32, ptr %8, align 4, !tbaa !5
  %15680 = mul nsw i32 22, %15679
  %15681 = add nsw i32 %15678, %15680
  %15682 = sext i32 %15681 to i64
  %15683 = getelementptr inbounds double, ptr %15677, i64 %15682
  %15684 = load double, ptr %15683, align 8, !tbaa !11
  %15685 = call double @llvm.fmuladd.f64(double 0x3CB0000000000000, double %15684, double %15676)
  %15686 = load ptr, ptr %7, align 8, !tbaa !9
  %15687 = load i32, ptr %12, align 4, !tbaa !5
  %15688 = load i32, ptr %8, align 4, !tbaa !5
  %15689 = mul nsw i32 23, %15688
  %15690 = add nsw i32 %15687, %15689
  %15691 = sext i32 %15690 to i64
  %15692 = getelementptr inbounds double, ptr %15686, i64 %15691
  %15693 = load double, ptr %15692, align 8, !tbaa !11
  %15694 = call double @llvm.fmuladd.f64(double 0xBC9C000000000000, double %15693, double %15685)
  %15695 = load ptr, ptr %7, align 8, !tbaa !9
  %15696 = load i32, ptr %12, align 4, !tbaa !5
  %15697 = load i32, ptr %8, align 4, !tbaa !5
  %15698 = mul nsw i32 24, %15697
  %15699 = add nsw i32 %15696, %15698
  %15700 = sext i32 %15699 to i64
  %15701 = getelementptr inbounds double, ptr %15695, i64 %15700
  %15702 = load double, ptr %15701, align 8, !tbaa !11
  %15703 = call double @llvm.fmuladd.f64(double 0xBCB8000000000001, double %15702, double %15694)
  %15704 = load ptr, ptr %7, align 8, !tbaa !9
  %15705 = load i32, ptr %12, align 4, !tbaa !5
  %15706 = load i32, ptr %8, align 4, !tbaa !5
  %15707 = mul nsw i32 25, %15706
  %15708 = add nsw i32 %15705, %15707
  %15709 = sext i32 %15708 to i64
  %15710 = getelementptr inbounds double, ptr %15704, i64 %15709
  %15711 = load double, ptr %15710, align 8, !tbaa !11
  %15712 = call double @llvm.fmuladd.f64(double 0x3CA0000000000002, double %15711, double %15703)
  %15713 = load ptr, ptr %7, align 8, !tbaa !9
  %15714 = load i32, ptr %12, align 4, !tbaa !5
  %15715 = load i32, ptr %8, align 4, !tbaa !5
  %15716 = mul nsw i32 26, %15715
  %15717 = add nsw i32 %15714, %15716
  %15718 = sext i32 %15717 to i64
  %15719 = getelementptr inbounds double, ptr %15713, i64 %15718
  %15720 = load double, ptr %15719, align 8, !tbaa !11
  %15721 = call double @llvm.fmuladd.f64(double 0xBCA2000000000000, double %15720, double %15712)
  %15722 = load ptr, ptr %7, align 8, !tbaa !9
  %15723 = load i32, ptr %12, align 4, !tbaa !5
  %15724 = load i32, ptr %8, align 4, !tbaa !5
  %15725 = mul nsw i32 27, %15724
  %15726 = add nsw i32 %15723, %15725
  %15727 = sext i32 %15726 to i64
  %15728 = getelementptr inbounds double, ptr %15722, i64 %15727
  %15729 = load double, ptr %15728, align 8, !tbaa !11
  %15730 = call double @llvm.fmuladd.f64(double 0x3CC4000000000000, double %15729, double %15721)
  %15731 = load ptr, ptr %7, align 8, !tbaa !9
  %15732 = load i32, ptr %12, align 4, !tbaa !5
  %15733 = load i32, ptr %8, align 4, !tbaa !5
  %15734 = mul nsw i32 28, %15733
  %15735 = add nsw i32 %15732, %15734
  %15736 = sext i32 %15735 to i64
  %15737 = getelementptr inbounds double, ptr %15731, i64 %15736
  %15738 = load double, ptr %15737, align 8, !tbaa !11
  %15739 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %15738, double %15730)
  %15740 = load ptr, ptr %7, align 8, !tbaa !9
  %15741 = load i32, ptr %12, align 4, !tbaa !5
  %15742 = load i32, ptr %8, align 4, !tbaa !5
  %15743 = mul nsw i32 29, %15742
  %15744 = add nsw i32 %15741, %15743
  %15745 = sext i32 %15744 to i64
  %15746 = getelementptr inbounds double, ptr %15740, i64 %15745
  %15747 = load double, ptr %15746, align 8, !tbaa !11
  %15748 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %15747, double %15739)
  %15749 = load ptr, ptr %7, align 8, !tbaa !9
  %15750 = load i32, ptr %12, align 4, !tbaa !5
  %15751 = load i32, ptr %8, align 4, !tbaa !5
  %15752 = mul nsw i32 30, %15751
  %15753 = add nsw i32 %15750, %15752
  %15754 = sext i32 %15753 to i64
  %15755 = getelementptr inbounds double, ptr %15749, i64 %15754
  %15756 = load double, ptr %15755, align 8, !tbaa !11
  %15757 = call double @llvm.fmuladd.f64(double 0xBCBE000000000000, double %15756, double %15748)
  %15758 = load ptr, ptr %7, align 8, !tbaa !9
  %15759 = load i32, ptr %12, align 4, !tbaa !5
  %15760 = load i32, ptr %8, align 4, !tbaa !5
  %15761 = mul nsw i32 31, %15760
  %15762 = add nsw i32 %15759, %15761
  %15763 = sext i32 %15762 to i64
  %15764 = getelementptr inbounds double, ptr %15758, i64 %15763
  %15765 = load double, ptr %15764, align 8, !tbaa !11
  %15766 = call double @llvm.fmuladd.f64(double 0x3CAC000000000000, double %15765, double %15757)
  %15767 = load ptr, ptr %7, align 8, !tbaa !9
  %15768 = load i32, ptr %12, align 4, !tbaa !5
  %15769 = load i32, ptr %8, align 4, !tbaa !5
  %15770 = mul nsw i32 32, %15769
  %15771 = add nsw i32 %15768, %15770
  %15772 = sext i32 %15771 to i64
  %15773 = getelementptr inbounds double, ptr %15767, i64 %15772
  %15774 = load double, ptr %15773, align 8, !tbaa !11
  %15775 = call double @llvm.fmuladd.f64(double 0x3C91000000000000, double %15774, double %15766)
  %15776 = load ptr, ptr %7, align 8, !tbaa !9
  %15777 = load i32, ptr %12, align 4, !tbaa !5
  %15778 = load i32, ptr %8, align 4, !tbaa !5
  %15779 = mul nsw i32 33, %15778
  %15780 = add nsw i32 %15777, %15779
  %15781 = sext i32 %15780 to i64
  %15782 = getelementptr inbounds double, ptr %15776, i64 %15781
  %15783 = load double, ptr %15782, align 8, !tbaa !11
  %15784 = call double @llvm.fmuladd.f64(double 0x3C9B000000000000, double %15783, double %15775)
  %15785 = load ptr, ptr %7, align 8, !tbaa !9
  %15786 = load i32, ptr %12, align 4, !tbaa !5
  %15787 = load i32, ptr %8, align 4, !tbaa !5
  %15788 = mul nsw i32 34, %15787
  %15789 = add nsw i32 %15786, %15788
  %15790 = sext i32 %15789 to i64
  %15791 = getelementptr inbounds double, ptr %15785, i64 %15790
  %15792 = load double, ptr %15791, align 8, !tbaa !11
  %15793 = call double @llvm.fmuladd.f64(double 0xBCA9FFFFFFFFFFFE, double %15792, double %15784)
  %15794 = load ptr, ptr %7, align 8, !tbaa !9
  %15795 = load i32, ptr %12, align 4, !tbaa !5
  %15796 = load i32, ptr %8, align 4, !tbaa !5
  %15797 = mul nsw i32 35, %15796
  %15798 = add nsw i32 %15795, %15797
  %15799 = sext i32 %15798 to i64
  %15800 = getelementptr inbounds double, ptr %15794, i64 %15799
  %15801 = load double, ptr %15800, align 8, !tbaa !11
  %15802 = call double @llvm.fmuladd.f64(double 0x3CA5FFFFFFFFFFFF, double %15801, double %15793)
  %15803 = load ptr, ptr %7, align 8, !tbaa !9
  %15804 = load i32, ptr %12, align 4, !tbaa !5
  %15805 = load i32, ptr %8, align 4, !tbaa !5
  %15806 = mul nsw i32 36, %15805
  %15807 = add nsw i32 %15804, %15806
  %15808 = sext i32 %15807 to i64
  %15809 = getelementptr inbounds double, ptr %15803, i64 %15808
  %15810 = load double, ptr %15809, align 8, !tbaa !11
  %15811 = call double @llvm.fmuladd.f64(double 0x3C67FFFFFFFFFFFE, double %15810, double %15802)
  %15812 = load ptr, ptr %7, align 8, !tbaa !9
  %15813 = load i32, ptr %12, align 4, !tbaa !5
  %15814 = load i32, ptr %8, align 4, !tbaa !5
  %15815 = mul nsw i32 37, %15814
  %15816 = add nsw i32 %15813, %15815
  %15817 = sext i32 %15816 to i64
  %15818 = getelementptr inbounds double, ptr %15812, i64 %15817
  %15819 = load double, ptr %15818, align 8, !tbaa !11
  %15820 = call double @llvm.fmuladd.f64(double 0xBCB0C00000000001, double %15819, double %15811)
  %15821 = load ptr, ptr %7, align 8, !tbaa !9
  %15822 = load i32, ptr %12, align 4, !tbaa !5
  %15823 = load i32, ptr %8, align 4, !tbaa !5
  %15824 = mul nsw i32 38, %15823
  %15825 = add nsw i32 %15822, %15824
  %15826 = sext i32 %15825 to i64
  %15827 = getelementptr inbounds double, ptr %15821, i64 %15826
  %15828 = load double, ptr %15827, align 8, !tbaa !11
  %15829 = call double @llvm.fmuladd.f64(double 0x3CA0000000000002, double %15828, double %15820)
  %15830 = load ptr, ptr %7, align 8, !tbaa !9
  %15831 = load i32, ptr %12, align 4, !tbaa !5
  %15832 = load i32, ptr %8, align 4, !tbaa !5
  %15833 = mul nsw i32 39, %15832
  %15834 = add nsw i32 %15831, %15833
  %15835 = sext i32 %15834 to i64
  %15836 = getelementptr inbounds double, ptr %15830, i64 %15835
  %15837 = load double, ptr %15836, align 8, !tbaa !11
  %15838 = call double @llvm.fmuladd.f64(double 0x3C88000000000000, double %15837, double %15829)
  store double %15838, ptr %11, align 8, !tbaa !11
  %15839 = load double, ptr %11, align 8, !tbaa !11
  %15840 = load ptr, ptr %9, align 8, !tbaa !9
  %15841 = load i32, ptr %12, align 4, !tbaa !5
  %15842 = load i32, ptr %10, align 4, !tbaa !5
  %15843 = mul nsw i32 43, %15842
  %15844 = add nsw i32 %15841, %15843
  %15845 = sext i32 %15844 to i64
  %15846 = getelementptr inbounds double, ptr %15840, i64 %15845
  %15847 = load double, ptr %15846, align 8, !tbaa !11
  %15848 = fadd double %15847, %15839
  store double %15848, ptr %15846, align 8, !tbaa !11
  %15849 = load ptr, ptr %7, align 8, !tbaa !9
  %15850 = load i32, ptr %12, align 4, !tbaa !5
  %15851 = load i32, ptr %8, align 4, !tbaa !5
  %15852 = mul nsw i32 0, %15851
  %15853 = add nsw i32 %15850, %15852
  %15854 = sext i32 %15853 to i64
  %15855 = getelementptr inbounds double, ptr %15849, i64 %15854
  %15856 = load double, ptr %15855, align 8, !tbaa !11
  %15857 = load ptr, ptr %7, align 8, !tbaa !9
  %15858 = load i32, ptr %12, align 4, !tbaa !5
  %15859 = load i32, ptr %8, align 4, !tbaa !5
  %15860 = mul nsw i32 1, %15859
  %15861 = add nsw i32 %15858, %15860
  %15862 = sext i32 %15861 to i64
  %15863 = getelementptr inbounds double, ptr %15857, i64 %15862
  %15864 = load double, ptr %15863, align 8, !tbaa !11
  %15865 = fmul double 0xBC30000000000000, %15864
  %15866 = call double @llvm.fmuladd.f64(double 0xBC8D000000000001, double %15856, double %15865)
  %15867 = load ptr, ptr %7, align 8, !tbaa !9
  %15868 = load i32, ptr %12, align 4, !tbaa !5
  %15869 = load i32, ptr %8, align 4, !tbaa !5
  %15870 = mul nsw i32 2, %15869
  %15871 = add nsw i32 %15868, %15870
  %15872 = sext i32 %15871 to i64
  %15873 = getelementptr inbounds double, ptr %15867, i64 %15872
  %15874 = load double, ptr %15873, align 8, !tbaa !11
  %15875 = call double @llvm.fmuladd.f64(double 0xBC92C00000000000, double %15874, double %15866)
  %15876 = load ptr, ptr %7, align 8, !tbaa !9
  %15877 = load i32, ptr %12, align 4, !tbaa !5
  %15878 = load i32, ptr %8, align 4, !tbaa !5
  %15879 = mul nsw i32 3, %15878
  %15880 = add nsw i32 %15877, %15879
  %15881 = sext i32 %15880 to i64
  %15882 = getelementptr inbounds double, ptr %15876, i64 %15881
  %15883 = load double, ptr %15882, align 8, !tbaa !11
  %15884 = call double @llvm.fmuladd.f64(double 0x3CAD7FFFFFFFFFFE, double %15883, double %15875)
  %15885 = load ptr, ptr %7, align 8, !tbaa !9
  %15886 = load i32, ptr %12, align 4, !tbaa !5
  %15887 = load i32, ptr %8, align 4, !tbaa !5
  %15888 = mul nsw i32 4, %15887
  %15889 = add nsw i32 %15886, %15888
  %15890 = sext i32 %15889 to i64
  %15891 = getelementptr inbounds double, ptr %15885, i64 %15890
  %15892 = load double, ptr %15891, align 8, !tbaa !11
  %15893 = call double @llvm.fmuladd.f64(double 0xBC80800000000000, double %15892, double %15884)
  %15894 = load ptr, ptr %7, align 8, !tbaa !9
  %15895 = load i32, ptr %12, align 4, !tbaa !5
  %15896 = load i32, ptr %8, align 4, !tbaa !5
  %15897 = mul nsw i32 5, %15896
  %15898 = add nsw i32 %15895, %15897
  %15899 = sext i32 %15898 to i64
  %15900 = getelementptr inbounds double, ptr %15894, i64 %15899
  %15901 = load double, ptr %15900, align 8, !tbaa !11
  %15902 = call double @llvm.fmuladd.f64(double 0x3C98000000000000, double %15901, double %15893)
  %15903 = load ptr, ptr %7, align 8, !tbaa !9
  %15904 = load i32, ptr %12, align 4, !tbaa !5
  %15905 = load i32, ptr %8, align 4, !tbaa !5
  %15906 = mul nsw i32 6, %15905
  %15907 = add nsw i32 %15904, %15906
  %15908 = sext i32 %15907 to i64
  %15909 = getelementptr inbounds double, ptr %15903, i64 %15908
  %15910 = load double, ptr %15909, align 8, !tbaa !11
  %15911 = call double @llvm.fmuladd.f64(double 0x3CADA7FFFFFFFFFE, double %15910, double %15902)
  %15912 = load ptr, ptr %7, align 8, !tbaa !9
  %15913 = load i32, ptr %12, align 4, !tbaa !5
  %15914 = load i32, ptr %8, align 4, !tbaa !5
  %15915 = mul nsw i32 7, %15914
  %15916 = add nsw i32 %15913, %15915
  %15917 = sext i32 %15916 to i64
  %15918 = getelementptr inbounds double, ptr %15912, i64 %15917
  %15919 = load double, ptr %15918, align 8, !tbaa !11
  %15920 = call double @llvm.fmuladd.f64(double 0x3C7DC00000000001, double %15919, double %15911)
  %15921 = load ptr, ptr %7, align 8, !tbaa !9
  %15922 = load i32, ptr %12, align 4, !tbaa !5
  %15923 = load i32, ptr %8, align 4, !tbaa !5
  %15924 = mul nsw i32 8, %15923
  %15925 = add nsw i32 %15922, %15924
  %15926 = sext i32 %15925 to i64
  %15927 = getelementptr inbounds double, ptr %15921, i64 %15926
  %15928 = load double, ptr %15927, align 8, !tbaa !11
  %15929 = call double @llvm.fmuladd.f64(double 0x3C79FFFFFFFFFFFF, double %15928, double %15920)
  %15930 = load ptr, ptr %7, align 8, !tbaa !9
  %15931 = load i32, ptr %12, align 4, !tbaa !5
  %15932 = load i32, ptr %8, align 4, !tbaa !5
  %15933 = mul nsw i32 9, %15932
  %15934 = add nsw i32 %15931, %15933
  %15935 = sext i32 %15934 to i64
  %15936 = getelementptr inbounds double, ptr %15930, i64 %15935
  %15937 = load double, ptr %15936, align 8, !tbaa !11
  %15938 = call double @llvm.fmuladd.f64(double 0xBC9A000000000000, double %15937, double %15929)
  %15939 = load ptr, ptr %7, align 8, !tbaa !9
  %15940 = load i32, ptr %12, align 4, !tbaa !5
  %15941 = load i32, ptr %8, align 4, !tbaa !5
  %15942 = mul nsw i32 10, %15941
  %15943 = add nsw i32 %15940, %15942
  %15944 = sext i32 %15943 to i64
  %15945 = getelementptr inbounds double, ptr %15939, i64 %15944
  %15946 = load double, ptr %15945, align 8, !tbaa !11
  %15947 = call double @llvm.fmuladd.f64(double 0x3C7C000000000000, double %15946, double %15938)
  %15948 = load ptr, ptr %7, align 8, !tbaa !9
  %15949 = load i32, ptr %12, align 4, !tbaa !5
  %15950 = load i32, ptr %8, align 4, !tbaa !5
  %15951 = mul nsw i32 11, %15950
  %15952 = add nsw i32 %15949, %15951
  %15953 = sext i32 %15952 to i64
  %15954 = getelementptr inbounds double, ptr %15948, i64 %15953
  %15955 = load double, ptr %15954, align 8, !tbaa !11
  %15956 = call double @llvm.fmuladd.f64(double 0xBC96000000000000, double %15955, double %15947)
  %15957 = load ptr, ptr %7, align 8, !tbaa !9
  %15958 = load i32, ptr %12, align 4, !tbaa !5
  %15959 = load i32, ptr %8, align 4, !tbaa !5
  %15960 = mul nsw i32 12, %15959
  %15961 = add nsw i32 %15958, %15960
  %15962 = sext i32 %15961 to i64
  %15963 = getelementptr inbounds double, ptr %15957, i64 %15962
  %15964 = load double, ptr %15963, align 8, !tbaa !11
  %15965 = call double @llvm.fmuladd.f64(double 0x3C73800000000000, double %15964, double %15956)
  %15966 = load ptr, ptr %7, align 8, !tbaa !9
  %15967 = load i32, ptr %12, align 4, !tbaa !5
  %15968 = load i32, ptr %8, align 4, !tbaa !5
  %15969 = mul nsw i32 13, %15968
  %15970 = add nsw i32 %15967, %15969
  %15971 = sext i32 %15970 to i64
  %15972 = getelementptr inbounds double, ptr %15966, i64 %15971
  %15973 = load double, ptr %15972, align 8, !tbaa !11
  %15974 = call double @llvm.fmuladd.f64(double 0x3C9E9FFFFFFFFFFD, double %15973, double %15965)
  %15975 = load ptr, ptr %7, align 8, !tbaa !9
  %15976 = load i32, ptr %12, align 4, !tbaa !5
  %15977 = load i32, ptr %8, align 4, !tbaa !5
  %15978 = mul nsw i32 14, %15977
  %15979 = add nsw i32 %15976, %15978
  %15980 = sext i32 %15979 to i64
  %15981 = getelementptr inbounds double, ptr %15975, i64 %15980
  %15982 = load double, ptr %15981, align 8, !tbaa !11
  %15983 = call double @llvm.fmuladd.f64(double 0x3CB1400000000000, double %15982, double %15974)
  %15984 = load ptr, ptr %7, align 8, !tbaa !9
  %15985 = load i32, ptr %12, align 4, !tbaa !5
  %15986 = load i32, ptr %8, align 4, !tbaa !5
  %15987 = mul nsw i32 15, %15986
  %15988 = add nsw i32 %15985, %15987
  %15989 = sext i32 %15988 to i64
  %15990 = getelementptr inbounds double, ptr %15984, i64 %15989
  %15991 = load double, ptr %15990, align 8, !tbaa !11
  %15992 = call double @llvm.fmuladd.f64(double 0x3CA63FFFFFFFFFFF, double %15991, double %15983)
  %15993 = load ptr, ptr %7, align 8, !tbaa !9
  %15994 = load i32, ptr %12, align 4, !tbaa !5
  %15995 = load i32, ptr %8, align 4, !tbaa !5
  %15996 = mul nsw i32 16, %15995
  %15997 = add nsw i32 %15994, %15996
  %15998 = sext i32 %15997 to i64
  %15999 = getelementptr inbounds double, ptr %15993, i64 %15998
  %16000 = load double, ptr %15999, align 8, !tbaa !11
  %16001 = call double @llvm.fmuladd.f64(double 0xBCA95FFFFFFFFFFF, double %16000, double %15992)
  %16002 = load ptr, ptr %7, align 8, !tbaa !9
  %16003 = load i32, ptr %12, align 4, !tbaa !5
  %16004 = load i32, ptr %8, align 4, !tbaa !5
  %16005 = mul nsw i32 17, %16004
  %16006 = add nsw i32 %16003, %16005
  %16007 = sext i32 %16006 to i64
  %16008 = getelementptr inbounds double, ptr %16002, i64 %16007
  %16009 = load double, ptr %16008, align 8, !tbaa !11
  %16010 = call double @llvm.fmuladd.f64(double 0xBCB9C00000000001, double %16009, double %16001)
  %16011 = load ptr, ptr %7, align 8, !tbaa !9
  %16012 = load i32, ptr %12, align 4, !tbaa !5
  %16013 = load i32, ptr %8, align 4, !tbaa !5
  %16014 = mul nsw i32 18, %16013
  %16015 = add nsw i32 %16012, %16014
  %16016 = sext i32 %16015 to i64
  %16017 = getelementptr inbounds double, ptr %16011, i64 %16016
  %16018 = load double, ptr %16017, align 8, !tbaa !11
  %16019 = call double @llvm.fmuladd.f64(double 0x3CA1800000000000, double %16018, double %16010)
  %16020 = load ptr, ptr %7, align 8, !tbaa !9
  %16021 = load i32, ptr %12, align 4, !tbaa !5
  %16022 = load i32, ptr %8, align 4, !tbaa !5
  %16023 = mul nsw i32 19, %16022
  %16024 = add nsw i32 %16021, %16023
  %16025 = sext i32 %16024 to i64
  %16026 = getelementptr inbounds double, ptr %16020, i64 %16025
  %16027 = load double, ptr %16026, align 8, !tbaa !11
  %16028 = call double @llvm.fmuladd.f64(double 0xBC8C000000000000, double %16027, double %16019)
  %16029 = load ptr, ptr %7, align 8, !tbaa !9
  %16030 = load i32, ptr %12, align 4, !tbaa !5
  %16031 = load i32, ptr %8, align 4, !tbaa !5
  %16032 = mul nsw i32 20, %16031
  %16033 = add nsw i32 %16030, %16032
  %16034 = sext i32 %16033 to i64
  %16035 = getelementptr inbounds double, ptr %16029, i64 %16034
  %16036 = load double, ptr %16035, align 8, !tbaa !11
  %16037 = call double @llvm.fmuladd.f64(double 0xBF83152016E0EC4E, double %16036, double %16028)
  %16038 = load ptr, ptr %7, align 8, !tbaa !9
  %16039 = load i32, ptr %12, align 4, !tbaa !5
  %16040 = load i32, ptr %8, align 4, !tbaa !5
  %16041 = mul nsw i32 21, %16040
  %16042 = add nsw i32 %16039, %16041
  %16043 = sext i32 %16042 to i64
  %16044 = getelementptr inbounds double, ptr %16038, i64 %16043
  %16045 = load double, ptr %16044, align 8, !tbaa !11
  %16046 = call double @llvm.fmuladd.f64(double 0x3F938CE4890DB2EE, double %16045, double %16037)
  %16047 = load ptr, ptr %7, align 8, !tbaa !9
  %16048 = load i32, ptr %12, align 4, !tbaa !5
  %16049 = load i32, ptr %8, align 4, !tbaa !5
  %16050 = mul nsw i32 22, %16049
  %16051 = add nsw i32 %16048, %16050
  %16052 = sext i32 %16051 to i64
  %16053 = getelementptr inbounds double, ptr %16047, i64 %16052
  %16054 = load double, ptr %16053, align 8, !tbaa !11
  %16055 = call double @llvm.fmuladd.f64(double 0xBFB5B58B4F03B1AA, double %16054, double %16046)
  %16056 = load ptr, ptr %7, align 8, !tbaa !9
  %16057 = load i32, ptr %12, align 4, !tbaa !5
  %16058 = load i32, ptr %8, align 4, !tbaa !5
  %16059 = mul nsw i32 23, %16058
  %16060 = add nsw i32 %16057, %16059
  %16061 = sext i32 %16060 to i64
  %16062 = getelementptr inbounds double, ptr %16056, i64 %16061
  %16063 = load double, ptr %16062, align 8, !tbaa !11
  %16064 = call double @llvm.fmuladd.f64(double 0x3FF4EC1BB3FDC60E, double %16063, double %16055)
  %16065 = load ptr, ptr %7, align 8, !tbaa !9
  %16066 = load i32, ptr %12, align 4, !tbaa !5
  %16067 = load i32, ptr %8, align 4, !tbaa !5
  %16068 = mul nsw i32 24, %16067
  %16069 = add nsw i32 %16066, %16068
  %16070 = sext i32 %16069 to i64
  %16071 = getelementptr inbounds double, ptr %16065, i64 %16070
  %16072 = load double, ptr %16071, align 8, !tbaa !11
  %16073 = call double @llvm.fmuladd.f64(double 0xBF8BDAF699AECF54, double %16072, double %16064)
  %16074 = load ptr, ptr %7, align 8, !tbaa !9
  %16075 = load i32, ptr %12, align 4, !tbaa !5
  %16076 = load i32, ptr %8, align 4, !tbaa !5
  %16077 = mul nsw i32 25, %16076
  %16078 = add nsw i32 %16075, %16077
  %16079 = sext i32 %16078 to i64
  %16080 = getelementptr inbounds double, ptr %16074, i64 %16079
  %16081 = load double, ptr %16080, align 8, !tbaa !11
  %16082 = call double @llvm.fmuladd.f64(double 0x3FCA50C41AB7A325, double %16081, double %16073)
  %16083 = load ptr, ptr %7, align 8, !tbaa !9
  %16084 = load i32, ptr %12, align 4, !tbaa !5
  %16085 = load i32, ptr %8, align 4, !tbaa !5
  %16086 = mul nsw i32 26, %16085
  %16087 = add nsw i32 %16084, %16086
  %16088 = sext i32 %16087 to i64
  %16089 = getelementptr inbounds double, ptr %16083, i64 %16088
  %16090 = load double, ptr %16089, align 8, !tbaa !11
  %16091 = call double @llvm.fmuladd.f64(double 0xBFE5679E70A60654, double %16090, double %16082)
  %16092 = load ptr, ptr %7, align 8, !tbaa !9
  %16093 = load i32, ptr %12, align 4, !tbaa !5
  %16094 = load i32, ptr %8, align 4, !tbaa !5
  %16095 = mul nsw i32 27, %16094
  %16096 = add nsw i32 %16093, %16095
  %16097 = sext i32 %16096 to i64
  %16098 = getelementptr inbounds double, ptr %16092, i64 %16097
  %16099 = load double, ptr %16098, align 8, !tbaa !11
  %16100 = call double @llvm.fmuladd.f64(double 0x3FD417DEBFC17B18, double %16099, double %16091)
  %16101 = load ptr, ptr %7, align 8, !tbaa !9
  %16102 = load i32, ptr %12, align 4, !tbaa !5
  %16103 = load i32, ptr %8, align 4, !tbaa !5
  %16104 = mul nsw i32 28, %16103
  %16105 = add nsw i32 %16102, %16104
  %16106 = sext i32 %16105 to i64
  %16107 = getelementptr inbounds double, ptr %16101, i64 %16106
  %16108 = load double, ptr %16107, align 8, !tbaa !11
  %16109 = call double @llvm.fmuladd.f64(double 0xBFB49217631F593D, double %16108, double %16100)
  %16110 = load ptr, ptr %7, align 8, !tbaa !9
  %16111 = load i32, ptr %12, align 4, !tbaa !5
  %16112 = load i32, ptr %8, align 4, !tbaa !5
  %16113 = mul nsw i32 29, %16112
  %16114 = add nsw i32 %16111, %16113
  %16115 = sext i32 %16114 to i64
  %16116 = getelementptr inbounds double, ptr %16110, i64 %16115
  %16117 = load double, ptr %16116, align 8, !tbaa !11
  %16118 = call double @llvm.fmuladd.f64(double 0x3F85E50BB681A431, double %16117, double %16109)
  %16119 = load ptr, ptr %7, align 8, !tbaa !9
  %16120 = load i32, ptr %12, align 4, !tbaa !5
  %16121 = load i32, ptr %8, align 4, !tbaa !5
  %16122 = mul nsw i32 30, %16121
  %16123 = add nsw i32 %16120, %16122
  %16124 = sext i32 %16123 to i64
  %16125 = getelementptr inbounds double, ptr %16119, i64 %16124
  %16126 = load double, ptr %16125, align 8, !tbaa !11
  %16127 = call double @llvm.fmuladd.f64(double 0x3C9F3FFFFFFFFFFC, double %16126, double %16118)
  %16128 = load ptr, ptr %7, align 8, !tbaa !9
  %16129 = load i32, ptr %12, align 4, !tbaa !5
  %16130 = load i32, ptr %8, align 4, !tbaa !5
  %16131 = mul nsw i32 31, %16130
  %16132 = add nsw i32 %16129, %16131
  %16133 = sext i32 %16132 to i64
  %16134 = getelementptr inbounds double, ptr %16128, i64 %16133
  %16135 = load double, ptr %16134, align 8, !tbaa !11
  %16136 = call double @llvm.fmuladd.f64(double 0xBC54000000000000, double %16135, double %16127)
  %16137 = load ptr, ptr %7, align 8, !tbaa !9
  %16138 = load i32, ptr %12, align 4, !tbaa !5
  %16139 = load i32, ptr %8, align 4, !tbaa !5
  %16140 = mul nsw i32 32, %16139
  %16141 = add nsw i32 %16138, %16140
  %16142 = sext i32 %16141 to i64
  %16143 = getelementptr inbounds double, ptr %16137, i64 %16142
  %16144 = load double, ptr %16143, align 8, !tbaa !11
  %16145 = call double @llvm.fmuladd.f64(double 0xBCA27FFFFFFFFFFF, double %16144, double %16136)
  %16146 = load ptr, ptr %7, align 8, !tbaa !9
  %16147 = load i32, ptr %12, align 4, !tbaa !5
  %16148 = load i32, ptr %8, align 4, !tbaa !5
  %16149 = mul nsw i32 33, %16148
  %16150 = add nsw i32 %16147, %16149
  %16151 = sext i32 %16150 to i64
  %16152 = getelementptr inbounds double, ptr %16146, i64 %16151
  %16153 = load double, ptr %16152, align 8, !tbaa !11
  %16154 = call double @llvm.fmuladd.f64(double 0x3CA9BFFFFFFFFFFF, double %16153, double %16145)
  %16155 = load ptr, ptr %7, align 8, !tbaa !9
  %16156 = load i32, ptr %12, align 4, !tbaa !5
  %16157 = load i32, ptr %8, align 4, !tbaa !5
  %16158 = mul nsw i32 34, %16157
  %16159 = add nsw i32 %16156, %16158
  %16160 = sext i32 %16159 to i64
  %16161 = getelementptr inbounds double, ptr %16155, i64 %16160
  %16162 = load double, ptr %16161, align 8, !tbaa !11
  %16163 = call double @llvm.fmuladd.f64(double 0xBC9A400000000000, double %16162, double %16154)
  %16164 = load ptr, ptr %7, align 8, !tbaa !9
  %16165 = load i32, ptr %12, align 4, !tbaa !5
  %16166 = load i32, ptr %8, align 4, !tbaa !5
  %16167 = mul nsw i32 35, %16166
  %16168 = add nsw i32 %16165, %16167
  %16169 = sext i32 %16168 to i64
  %16170 = getelementptr inbounds double, ptr %16164, i64 %16169
  %16171 = load double, ptr %16170, align 8, !tbaa !11
  %16172 = call double @llvm.fmuladd.f64(double 0xBC70000000000001, double %16171, double %16163)
  %16173 = load ptr, ptr %7, align 8, !tbaa !9
  %16174 = load i32, ptr %12, align 4, !tbaa !5
  %16175 = load i32, ptr %8, align 4, !tbaa !5
  %16176 = mul nsw i32 36, %16175
  %16177 = add nsw i32 %16174, %16176
  %16178 = sext i32 %16177 to i64
  %16179 = getelementptr inbounds double, ptr %16173, i64 %16178
  %16180 = load double, ptr %16179, align 8, !tbaa !11
  %16181 = call double @llvm.fmuladd.f64(double 0xBCA5F7FFFFFFFFFF, double %16180, double %16172)
  %16182 = load ptr, ptr %7, align 8, !tbaa !9
  %16183 = load i32, ptr %12, align 4, !tbaa !5
  %16184 = load i32, ptr %8, align 4, !tbaa !5
  %16185 = mul nsw i32 37, %16184
  %16186 = add nsw i32 %16183, %16185
  %16187 = sext i32 %16186 to i64
  %16188 = getelementptr inbounds double, ptr %16182, i64 %16187
  %16189 = load double, ptr %16188, align 8, !tbaa !11
  %16190 = call double @llvm.fmuladd.f64(double 0xBC9DAFFFFFFFFFFE, double %16189, double %16181)
  %16191 = load ptr, ptr %7, align 8, !tbaa !9
  %16192 = load i32, ptr %12, align 4, !tbaa !5
  %16193 = load i32, ptr %8, align 4, !tbaa !5
  %16194 = mul nsw i32 38, %16193
  %16195 = add nsw i32 %16192, %16194
  %16196 = sext i32 %16195 to i64
  %16197 = getelementptr inbounds double, ptr %16191, i64 %16196
  %16198 = load double, ptr %16197, align 8, !tbaa !11
  %16199 = call double @llvm.fmuladd.f64(double 0x3C71FFFFFFFFFFFF, double %16198, double %16190)
  %16200 = load ptr, ptr %7, align 8, !tbaa !9
  %16201 = load i32, ptr %12, align 4, !tbaa !5
  %16202 = load i32, ptr %8, align 4, !tbaa !5
  %16203 = mul nsw i32 39, %16202
  %16204 = add nsw i32 %16201, %16203
  %16205 = sext i32 %16204 to i64
  %16206 = getelementptr inbounds double, ptr %16200, i64 %16205
  %16207 = load double, ptr %16206, align 8, !tbaa !11
  %16208 = call double @llvm.fmuladd.f64(double 0x3C60000000000000, double %16207, double %16199)
  store double %16208, ptr %11, align 8, !tbaa !11
  %16209 = load double, ptr %11, align 8, !tbaa !11
  %16210 = load ptr, ptr %9, align 8, !tbaa !9
  %16211 = load i32, ptr %12, align 4, !tbaa !5
  %16212 = load i32, ptr %10, align 4, !tbaa !5
  %16213 = mul nsw i32 44, %16212
  %16214 = add nsw i32 %16211, %16213
  %16215 = sext i32 %16214 to i64
  %16216 = getelementptr inbounds double, ptr %16210, i64 %16215
  %16217 = load double, ptr %16216, align 8, !tbaa !11
  %16218 = fadd double %16217, %16209
  store double %16218, ptr %16216, align 8, !tbaa !11
  %16219 = load ptr, ptr %7, align 8, !tbaa !9
  %16220 = load i32, ptr %12, align 4, !tbaa !5
  %16221 = load i32, ptr %8, align 4, !tbaa !5
  %16222 = mul nsw i32 0, %16221
  %16223 = add nsw i32 %16220, %16222
  %16224 = sext i32 %16223 to i64
  %16225 = getelementptr inbounds double, ptr %16219, i64 %16224
  %16226 = load double, ptr %16225, align 8, !tbaa !11
  %16227 = load ptr, ptr %7, align 8, !tbaa !9
  %16228 = load i32, ptr %12, align 4, !tbaa !5
  %16229 = load i32, ptr %8, align 4, !tbaa !5
  %16230 = mul nsw i32 1, %16229
  %16231 = add nsw i32 %16228, %16230
  %16232 = sext i32 %16231 to i64
  %16233 = getelementptr inbounds double, ptr %16227, i64 %16232
  %16234 = load double, ptr %16233, align 8, !tbaa !11
  %16235 = fmul double 0xBCA5400000000000, %16234
  %16236 = call double @llvm.fmuladd.f64(double 0x3CCCF00000000000, double %16226, double %16235)
  %16237 = load ptr, ptr %7, align 8, !tbaa !9
  %16238 = load i32, ptr %12, align 4, !tbaa !5
  %16239 = load i32, ptr %8, align 4, !tbaa !5
  %16240 = mul nsw i32 2, %16239
  %16241 = add nsw i32 %16238, %16240
  %16242 = sext i32 %16241 to i64
  %16243 = getelementptr inbounds double, ptr %16237, i64 %16242
  %16244 = load double, ptr %16243, align 8, !tbaa !11
  %16245 = call double @llvm.fmuladd.f64(double 0xBCA30FFFFFFFFFFE, double %16244, double %16236)
  %16246 = load ptr, ptr %7, align 8, !tbaa !9
  %16247 = load i32, ptr %12, align 4, !tbaa !5
  %16248 = load i32, ptr %8, align 4, !tbaa !5
  %16249 = mul nsw i32 3, %16248
  %16250 = add nsw i32 %16247, %16249
  %16251 = sext i32 %16250 to i64
  %16252 = getelementptr inbounds double, ptr %16246, i64 %16251
  %16253 = load double, ptr %16252, align 8, !tbaa !11
  %16254 = call double @llvm.fmuladd.f64(double 0x3CBC600000000000, double %16253, double %16245)
  %16255 = load ptr, ptr %7, align 8, !tbaa !9
  %16256 = load i32, ptr %12, align 4, !tbaa !5
  %16257 = load i32, ptr %8, align 4, !tbaa !5
  %16258 = mul nsw i32 4, %16257
  %16259 = add nsw i32 %16256, %16258
  %16260 = sext i32 %16259 to i64
  %16261 = getelementptr inbounds double, ptr %16255, i64 %16260
  %16262 = load double, ptr %16261, align 8, !tbaa !11
  %16263 = call double @llvm.fmuladd.f64(double 0x3C86FFFFFFFFFFFF, double %16262, double %16254)
  %16264 = load ptr, ptr %7, align 8, !tbaa !9
  %16265 = load i32, ptr %12, align 4, !tbaa !5
  %16266 = load i32, ptr %8, align 4, !tbaa !5
  %16267 = mul nsw i32 5, %16266
  %16268 = add nsw i32 %16265, %16267
  %16269 = sext i32 %16268 to i64
  %16270 = getelementptr inbounds double, ptr %16264, i64 %16269
  %16271 = load double, ptr %16270, align 8, !tbaa !11
  %16272 = call double @llvm.fmuladd.f64(double 0xBC96800000000000, double %16271, double %16263)
  %16273 = load ptr, ptr %7, align 8, !tbaa !9
  %16274 = load i32, ptr %12, align 4, !tbaa !5
  %16275 = load i32, ptr %8, align 4, !tbaa !5
  %16276 = mul nsw i32 6, %16275
  %16277 = add nsw i32 %16274, %16276
  %16278 = sext i32 %16277 to i64
  %16279 = getelementptr inbounds double, ptr %16273, i64 %16278
  %16280 = load double, ptr %16279, align 8, !tbaa !11
  %16281 = call double @llvm.fmuladd.f64(double 0x3C9A800000000000, double %16280, double %16272)
  %16282 = load ptr, ptr %7, align 8, !tbaa !9
  %16283 = load i32, ptr %12, align 4, !tbaa !5
  %16284 = load i32, ptr %8, align 4, !tbaa !5
  %16285 = mul nsw i32 7, %16284
  %16286 = add nsw i32 %16283, %16285
  %16287 = sext i32 %16286 to i64
  %16288 = getelementptr inbounds double, ptr %16282, i64 %16287
  %16289 = load double, ptr %16288, align 8, !tbaa !11
  %16290 = call double @llvm.fmuladd.f64(double 0xBC73000000000001, double %16289, double %16281)
  %16291 = load ptr, ptr %7, align 8, !tbaa !9
  %16292 = load i32, ptr %12, align 4, !tbaa !5
  %16293 = load i32, ptr %8, align 4, !tbaa !5
  %16294 = mul nsw i32 8, %16293
  %16295 = add nsw i32 %16292, %16294
  %16296 = sext i32 %16295 to i64
  %16297 = getelementptr inbounds double, ptr %16291, i64 %16296
  %16298 = load double, ptr %16297, align 8, !tbaa !11
  %16299 = call double @llvm.fmuladd.f64(double 0x3C93800000000000, double %16298, double %16290)
  %16300 = load ptr, ptr %7, align 8, !tbaa !9
  %16301 = load i32, ptr %12, align 4, !tbaa !5
  %16302 = load i32, ptr %8, align 4, !tbaa !5
  %16303 = mul nsw i32 9, %16302
  %16304 = add nsw i32 %16301, %16303
  %16305 = sext i32 %16304 to i64
  %16306 = getelementptr inbounds double, ptr %16300, i64 %16305
  %16307 = load double, ptr %16306, align 8, !tbaa !11
  %16308 = call double @llvm.fmuladd.f64(double 0x3C40000000000000, double %16307, double %16299)
  %16309 = load ptr, ptr %7, align 8, !tbaa !9
  %16310 = load i32, ptr %12, align 4, !tbaa !5
  %16311 = load i32, ptr %8, align 4, !tbaa !5
  %16312 = mul nsw i32 10, %16311
  %16313 = add nsw i32 %16310, %16312
  %16314 = sext i32 %16313 to i64
  %16315 = getelementptr inbounds double, ptr %16309, i64 %16314
  %16316 = load double, ptr %16315, align 8, !tbaa !11
  %16317 = call double @llvm.fmuladd.f64(double 0x3C60000000000000, double %16316, double %16308)
  %16318 = load ptr, ptr %7, align 8, !tbaa !9
  %16319 = load i32, ptr %12, align 4, !tbaa !5
  %16320 = load i32, ptr %8, align 4, !tbaa !5
  %16321 = mul nsw i32 11, %16320
  %16322 = add nsw i32 %16319, %16321
  %16323 = sext i32 %16322 to i64
  %16324 = getelementptr inbounds double, ptr %16318, i64 %16323
  %16325 = load double, ptr %16324, align 8, !tbaa !11
  %16326 = call double @llvm.fmuladd.f64(double 0xBC9A000000000000, double %16325, double %16317)
  %16327 = load ptr, ptr %7, align 8, !tbaa !9
  %16328 = load i32, ptr %12, align 4, !tbaa !5
  %16329 = load i32, ptr %8, align 4, !tbaa !5
  %16330 = mul nsw i32 12, %16329
  %16331 = add nsw i32 %16328, %16330
  %16332 = sext i32 %16331 to i64
  %16333 = getelementptr inbounds double, ptr %16327, i64 %16332
  %16334 = load double, ptr %16333, align 8, !tbaa !11
  %16335 = call double @llvm.fmuladd.f64(double 0xBC73000000000001, double %16334, double %16326)
  %16336 = load ptr, ptr %7, align 8, !tbaa !9
  %16337 = load i32, ptr %12, align 4, !tbaa !5
  %16338 = load i32, ptr %8, align 4, !tbaa !5
  %16339 = mul nsw i32 13, %16338
  %16340 = add nsw i32 %16337, %16339
  %16341 = sext i32 %16340 to i64
  %16342 = getelementptr inbounds double, ptr %16336, i64 %16341
  %16343 = load double, ptr %16342, align 8, !tbaa !11
  %16344 = call double @llvm.fmuladd.f64(double 0xBC94400000000000, double %16343, double %16335)
  %16345 = load ptr, ptr %7, align 8, !tbaa !9
  %16346 = load i32, ptr %12, align 4, !tbaa !5
  %16347 = load i32, ptr %8, align 4, !tbaa !5
  %16348 = mul nsw i32 14, %16347
  %16349 = add nsw i32 %16346, %16348
  %16350 = sext i32 %16349 to i64
  %16351 = getelementptr inbounds double, ptr %16345, i64 %16350
  %16352 = load double, ptr %16351, align 8, !tbaa !11
  %16353 = call double @llvm.fmuladd.f64(double 0x3CA0800000000001, double %16352, double %16344)
  %16354 = load ptr, ptr %7, align 8, !tbaa !9
  %16355 = load i32, ptr %12, align 4, !tbaa !5
  %16356 = load i32, ptr %8, align 4, !tbaa !5
  %16357 = mul nsw i32 15, %16356
  %16358 = add nsw i32 %16355, %16357
  %16359 = sext i32 %16358 to i64
  %16360 = getelementptr inbounds double, ptr %16354, i64 %16359
  %16361 = load double, ptr %16360, align 8, !tbaa !11
  %16362 = call double @llvm.fmuladd.f64(double 0x3CA1000000000001, double %16361, double %16353)
  %16363 = load ptr, ptr %7, align 8, !tbaa !9
  %16364 = load i32, ptr %12, align 4, !tbaa !5
  %16365 = load i32, ptr %8, align 4, !tbaa !5
  %16366 = mul nsw i32 16, %16365
  %16367 = add nsw i32 %16364, %16366
  %16368 = sext i32 %16367 to i64
  %16369 = getelementptr inbounds double, ptr %16363, i64 %16368
  %16370 = load double, ptr %16369, align 8, !tbaa !11
  %16371 = call double @llvm.fmuladd.f64(double 0x3C90800000000000, double %16370, double %16362)
  %16372 = load ptr, ptr %7, align 8, !tbaa !9
  %16373 = load i32, ptr %12, align 4, !tbaa !5
  %16374 = load i32, ptr %8, align 4, !tbaa !5
  %16375 = mul nsw i32 17, %16374
  %16376 = add nsw i32 %16373, %16375
  %16377 = sext i32 %16376 to i64
  %16378 = getelementptr inbounds double, ptr %16372, i64 %16377
  %16379 = load double, ptr %16378, align 8, !tbaa !11
  %16380 = call double @llvm.fmuladd.f64(double 0xBCB5200000000000, double %16379, double %16371)
  %16381 = load ptr, ptr %7, align 8, !tbaa !9
  %16382 = load i32, ptr %12, align 4, !tbaa !5
  %16383 = load i32, ptr %8, align 4, !tbaa !5
  %16384 = mul nsw i32 18, %16383
  %16385 = add nsw i32 %16382, %16384
  %16386 = sext i32 %16385 to i64
  %16387 = getelementptr inbounds double, ptr %16381, i64 %16386
  %16388 = load double, ptr %16387, align 8, !tbaa !11
  %16389 = call double @llvm.fmuladd.f64(double 0x3CA0000000000002, double %16388, double %16380)
  %16390 = load ptr, ptr %7, align 8, !tbaa !9
  %16391 = load i32, ptr %12, align 4, !tbaa !5
  %16392 = load i32, ptr %8, align 4, !tbaa !5
  %16393 = mul nsw i32 19, %16392
  %16394 = add nsw i32 %16391, %16393
  %16395 = sext i32 %16394 to i64
  %16396 = getelementptr inbounds double, ptr %16390, i64 %16395
  %16397 = load double, ptr %16396, align 8, !tbaa !11
  %16398 = call double @llvm.fmuladd.f64(double 0x3C84000000000000, double %16397, double %16389)
  %16399 = load ptr, ptr %7, align 8, !tbaa !9
  %16400 = load i32, ptr %12, align 4, !tbaa !5
  %16401 = load i32, ptr %8, align 4, !tbaa !5
  %16402 = mul nsw i32 20, %16401
  %16403 = add nsw i32 %16400, %16402
  %16404 = sext i32 %16403 to i64
  %16405 = getelementptr inbounds double, ptr %16399, i64 %16404
  %16406 = load double, ptr %16405, align 8, !tbaa !11
  %16407 = call double @llvm.fmuladd.f64(double 0xBFE333710B32A29C, double %16406, double %16398)
  %16408 = load ptr, ptr %7, align 8, !tbaa !9
  %16409 = load i32, ptr %12, align 4, !tbaa !5
  %16410 = load i32, ptr %8, align 4, !tbaa !5
  %16411 = mul nsw i32 21, %16410
  %16412 = add nsw i32 %16409, %16411
  %16413 = sext i32 %16412 to i64
  %16414 = getelementptr inbounds double, ptr %16408, i64 %16413
  %16415 = load double, ptr %16414, align 8, !tbaa !11
  %16416 = call double @llvm.fmuladd.f64(double 0xBFA352D4DB969BF9, double %16415, double %16407)
  %16417 = load ptr, ptr %7, align 8, !tbaa !9
  %16418 = load i32, ptr %12, align 4, !tbaa !5
  %16419 = load i32, ptr %8, align 4, !tbaa !5
  %16420 = mul nsw i32 22, %16419
  %16421 = add nsw i32 %16418, %16420
  %16422 = sext i32 %16421 to i64
  %16423 = getelementptr inbounds double, ptr %16417, i64 %16422
  %16424 = load double, ptr %16423, align 8, !tbaa !11
  %16425 = call double @llvm.fmuladd.f64(double 0xBFBEED13A9F0D910, double %16424, double %16416)
  %16426 = load ptr, ptr %7, align 8, !tbaa !9
  %16427 = load i32, ptr %12, align 4, !tbaa !5
  %16428 = load i32, ptr %8, align 4, !tbaa !5
  %16429 = mul nsw i32 23, %16428
  %16430 = add nsw i32 %16427, %16429
  %16431 = sext i32 %16430 to i64
  %16432 = getelementptr inbounds double, ptr %16426, i64 %16431
  %16433 = load double, ptr %16432, align 8, !tbaa !11
  %16434 = call double @llvm.fmuladd.f64(double 0x3FA87D764354850A, double %16433, double %16425)
  %16435 = load ptr, ptr %7, align 8, !tbaa !9
  %16436 = load i32, ptr %12, align 4, !tbaa !5
  %16437 = load i32, ptr %8, align 4, !tbaa !5
  %16438 = mul nsw i32 24, %16437
  %16439 = add nsw i32 %16436, %16438
  %16440 = sext i32 %16439 to i64
  %16441 = getelementptr inbounds double, ptr %16435, i64 %16440
  %16442 = load double, ptr %16441, align 8, !tbaa !11
  %16443 = call double @llvm.fmuladd.f64(double 0x3FC27B05E24EC5FB, double %16442, double %16434)
  %16444 = load ptr, ptr %7, align 8, !tbaa !9
  %16445 = load i32, ptr %12, align 4, !tbaa !5
  %16446 = load i32, ptr %8, align 4, !tbaa !5
  %16447 = mul nsw i32 25, %16446
  %16448 = add nsw i32 %16445, %16447
  %16449 = sext i32 %16448 to i64
  %16450 = getelementptr inbounds double, ptr %16444, i64 %16449
  %16451 = load double, ptr %16450, align 8, !tbaa !11
  %16452 = call double @llvm.fmuladd.f64(double 0x3FF670C5F1F4C929, double %16451, double %16443)
  %16453 = load ptr, ptr %7, align 8, !tbaa !9
  %16454 = load i32, ptr %12, align 4, !tbaa !5
  %16455 = load i32, ptr %8, align 4, !tbaa !5
  %16456 = mul nsw i32 26, %16455
  %16457 = add nsw i32 %16454, %16456
  %16458 = sext i32 %16457 to i64
  %16459 = getelementptr inbounds double, ptr %16453, i64 %16458
  %16460 = load double, ptr %16459, align 8, !tbaa !11
  %16461 = call double @llvm.fmuladd.f64(double 0xBFD41C0D131D4293, double %16460, double %16452)
  %16462 = load ptr, ptr %7, align 8, !tbaa !9
  %16463 = load i32, ptr %12, align 4, !tbaa !5
  %16464 = load i32, ptr %8, align 4, !tbaa !5
  %16465 = mul nsw i32 27, %16464
  %16466 = add nsw i32 %16463, %16465
  %16467 = sext i32 %16466 to i64
  %16468 = getelementptr inbounds double, ptr %16462, i64 %16467
  %16469 = load double, ptr %16468, align 8, !tbaa !11
  %16470 = call double @llvm.fmuladd.f64(double 0x3FD35DAE88CBA64F, double %16469, double %16461)
  %16471 = load ptr, ptr %7, align 8, !tbaa !9
  %16472 = load i32, ptr %12, align 4, !tbaa !5
  %16473 = load i32, ptr %8, align 4, !tbaa !5
  %16474 = mul nsw i32 28, %16473
  %16475 = add nsw i32 %16472, %16474
  %16476 = sext i32 %16475 to i64
  %16477 = getelementptr inbounds double, ptr %16471, i64 %16476
  %16478 = load double, ptr %16477, align 8, !tbaa !11
  %16479 = call double @llvm.fmuladd.f64(double 0x3FC36A9134CD3C5C, double %16478, double %16470)
  %16480 = load ptr, ptr %7, align 8, !tbaa !9
  %16481 = load i32, ptr %12, align 4, !tbaa !5
  %16482 = load i32, ptr %8, align 4, !tbaa !5
  %16483 = mul nsw i32 29, %16482
  %16484 = add nsw i32 %16481, %16483
  %16485 = sext i32 %16484 to i64
  %16486 = getelementptr inbounds double, ptr %16480, i64 %16485
  %16487 = load double, ptr %16486, align 8, !tbaa !11
  %16488 = call double @llvm.fmuladd.f64(double 0x3F9854E0ADA34BA1, double %16487, double %16479)
  %16489 = load ptr, ptr %7, align 8, !tbaa !9
  %16490 = load i32, ptr %12, align 4, !tbaa !5
  %16491 = load i32, ptr %8, align 4, !tbaa !5
  %16492 = mul nsw i32 30, %16491
  %16493 = add nsw i32 %16490, %16492
  %16494 = sext i32 %16493 to i64
  %16495 = getelementptr inbounds double, ptr %16489, i64 %16494
  %16496 = load double, ptr %16495, align 8, !tbaa !11
  %16497 = call double @llvm.fmuladd.f64(double 0xBC82000000000000, double %16496, double %16488)
  %16498 = load ptr, ptr %7, align 8, !tbaa !9
  %16499 = load i32, ptr %12, align 4, !tbaa !5
  %16500 = load i32, ptr %8, align 4, !tbaa !5
  %16501 = mul nsw i32 31, %16500
  %16502 = add nsw i32 %16499, %16501
  %16503 = sext i32 %16502 to i64
  %16504 = getelementptr inbounds double, ptr %16498, i64 %16503
  %16505 = load double, ptr %16504, align 8, !tbaa !11
  %16506 = call double @llvm.fmuladd.f64(double 0xBC67FFFFFFFFFFFE, double %16505, double %16497)
  %16507 = load ptr, ptr %7, align 8, !tbaa !9
  %16508 = load i32, ptr %12, align 4, !tbaa !5
  %16509 = load i32, ptr %8, align 4, !tbaa !5
  %16510 = mul nsw i32 32, %16509
  %16511 = add nsw i32 %16508, %16510
  %16512 = sext i32 %16511 to i64
  %16513 = getelementptr inbounds double, ptr %16507, i64 %16512
  %16514 = load double, ptr %16513, align 8, !tbaa !11
  %16515 = call double @llvm.fmuladd.f64(double 0x3C9B200000000000, double %16514, double %16506)
  %16516 = load ptr, ptr %7, align 8, !tbaa !9
  %16517 = load i32, ptr %12, align 4, !tbaa !5
  %16518 = load i32, ptr %8, align 4, !tbaa !5
  %16519 = mul nsw i32 33, %16518
  %16520 = add nsw i32 %16517, %16519
  %16521 = sext i32 %16520 to i64
  %16522 = getelementptr inbounds double, ptr %16516, i64 %16521
  %16523 = load double, ptr %16522, align 8, !tbaa !11
  %16524 = call double @llvm.fmuladd.f64(double 0x3C81C00000000001, double %16523, double %16515)
  %16525 = load ptr, ptr %7, align 8, !tbaa !9
  %16526 = load i32, ptr %12, align 4, !tbaa !5
  %16527 = load i32, ptr %8, align 4, !tbaa !5
  %16528 = mul nsw i32 34, %16527
  %16529 = add nsw i32 %16526, %16528
  %16530 = sext i32 %16529 to i64
  %16531 = getelementptr inbounds double, ptr %16525, i64 %16530
  %16532 = load double, ptr %16531, align 8, !tbaa !11
  %16533 = call double @llvm.fmuladd.f64(double 0xBC9B000000000000, double %16532, double %16524)
  %16534 = load ptr, ptr %7, align 8, !tbaa !9
  %16535 = load i32, ptr %12, align 4, !tbaa !5
  %16536 = load i32, ptr %8, align 4, !tbaa !5
  %16537 = mul nsw i32 35, %16536
  %16538 = add nsw i32 %16535, %16537
  %16539 = sext i32 %16538 to i64
  %16540 = getelementptr inbounds double, ptr %16534, i64 %16539
  %16541 = load double, ptr %16540, align 8, !tbaa !11
  %16542 = call double @llvm.fmuladd.f64(double 0xBC95800000000000, double %16541, double %16533)
  %16543 = load ptr, ptr %7, align 8, !tbaa !9
  %16544 = load i32, ptr %12, align 4, !tbaa !5
  %16545 = load i32, ptr %8, align 4, !tbaa !5
  %16546 = mul nsw i32 36, %16545
  %16547 = add nsw i32 %16544, %16546
  %16548 = sext i32 %16547 to i64
  %16549 = getelementptr inbounds double, ptr %16543, i64 %16548
  %16550 = load double, ptr %16549, align 8, !tbaa !11
  %16551 = call double @llvm.fmuladd.f64(double 0xBCA1E00000000000, double %16550, double %16542)
  %16552 = load ptr, ptr %7, align 8, !tbaa !9
  %16553 = load i32, ptr %12, align 4, !tbaa !5
  %16554 = load i32, ptr %8, align 4, !tbaa !5
  %16555 = mul nsw i32 37, %16554
  %16556 = add nsw i32 %16553, %16555
  %16557 = sext i32 %16556 to i64
  %16558 = getelementptr inbounds double, ptr %16552, i64 %16557
  %16559 = load double, ptr %16558, align 8, !tbaa !11
  %16560 = call double @llvm.fmuladd.f64(double 0xBC9EBFFFFFFFFFFD, double %16559, double %16551)
  %16561 = load ptr, ptr %7, align 8, !tbaa !9
  %16562 = load i32, ptr %12, align 4, !tbaa !5
  %16563 = load i32, ptr %8, align 4, !tbaa !5
  %16564 = mul nsw i32 38, %16563
  %16565 = add nsw i32 %16562, %16564
  %16566 = sext i32 %16565 to i64
  %16567 = getelementptr inbounds double, ptr %16561, i64 %16566
  %16568 = load double, ptr %16567, align 8, !tbaa !11
  %16569 = call double @llvm.fmuladd.f64(double 0xBC82000000000000, double %16568, double %16560)
  %16570 = load ptr, ptr %7, align 8, !tbaa !9
  %16571 = load i32, ptr %12, align 4, !tbaa !5
  %16572 = load i32, ptr %8, align 4, !tbaa !5
  %16573 = mul nsw i32 39, %16572
  %16574 = add nsw i32 %16571, %16573
  %16575 = sext i32 %16574 to i64
  %16576 = getelementptr inbounds double, ptr %16570, i64 %16575
  %16577 = load double, ptr %16576, align 8, !tbaa !11
  %16578 = call double @llvm.fmuladd.f64(double 0xBC9C800000000000, double %16577, double %16569)
  store double %16578, ptr %11, align 8, !tbaa !11
  %16579 = load double, ptr %11, align 8, !tbaa !11
  %16580 = load ptr, ptr %9, align 8, !tbaa !9
  %16581 = load i32, ptr %12, align 4, !tbaa !5
  %16582 = load i32, ptr %10, align 4, !tbaa !5
  %16583 = mul nsw i32 45, %16582
  %16584 = add nsw i32 %16581, %16583
  %16585 = sext i32 %16584 to i64
  %16586 = getelementptr inbounds double, ptr %16580, i64 %16585
  %16587 = load double, ptr %16586, align 8, !tbaa !11
  %16588 = fadd double %16587, %16579
  store double %16588, ptr %16586, align 8, !tbaa !11
  %16589 = load ptr, ptr %7, align 8, !tbaa !9
  %16590 = load i32, ptr %12, align 4, !tbaa !5
  %16591 = load i32, ptr %8, align 4, !tbaa !5
  %16592 = mul nsw i32 0, %16591
  %16593 = add nsw i32 %16590, %16592
  %16594 = sext i32 %16593 to i64
  %16595 = getelementptr inbounds double, ptr %16589, i64 %16594
  %16596 = load double, ptr %16595, align 8, !tbaa !11
  %16597 = load ptr, ptr %7, align 8, !tbaa !9
  %16598 = load i32, ptr %12, align 4, !tbaa !5
  %16599 = load i32, ptr %8, align 4, !tbaa !5
  %16600 = mul nsw i32 1, %16599
  %16601 = add nsw i32 %16598, %16600
  %16602 = sext i32 %16601 to i64
  %16603 = getelementptr inbounds double, ptr %16597, i64 %16602
  %16604 = load double, ptr %16603, align 8, !tbaa !11
  %16605 = fmul double 0xBCB5400000000000, %16604
  %16606 = call double @llvm.fmuladd.f64(double 0x3CCA200000000000, double %16596, double %16605)
  %16607 = load ptr, ptr %7, align 8, !tbaa !9
  %16608 = load i32, ptr %12, align 4, !tbaa !5
  %16609 = load i32, ptr %8, align 4, !tbaa !5
  %16610 = mul nsw i32 2, %16609
  %16611 = add nsw i32 %16608, %16610
  %16612 = sext i32 %16611 to i64
  %16613 = getelementptr inbounds double, ptr %16607, i64 %16612
  %16614 = load double, ptr %16613, align 8, !tbaa !11
  %16615 = call double @llvm.fmuladd.f64(double 0xBCA0600000000001, double %16614, double %16606)
  %16616 = load ptr, ptr %7, align 8, !tbaa !9
  %16617 = load i32, ptr %12, align 4, !tbaa !5
  %16618 = load i32, ptr %8, align 4, !tbaa !5
  %16619 = mul nsw i32 3, %16618
  %16620 = add nsw i32 %16617, %16619
  %16621 = sext i32 %16620 to i64
  %16622 = getelementptr inbounds double, ptr %16616, i64 %16621
  %16623 = load double, ptr %16622, align 8, !tbaa !11
  %16624 = call double @llvm.fmuladd.f64(double 0x3CB23FFFFFFFFFFF, double %16623, double %16615)
  %16625 = load ptr, ptr %7, align 8, !tbaa !9
  %16626 = load i32, ptr %12, align 4, !tbaa !5
  %16627 = load i32, ptr %8, align 4, !tbaa !5
  %16628 = mul nsw i32 4, %16627
  %16629 = add nsw i32 %16626, %16628
  %16630 = sext i32 %16629 to i64
  %16631 = getelementptr inbounds double, ptr %16625, i64 %16630
  %16632 = load double, ptr %16631, align 8, !tbaa !11
  %16633 = call double @llvm.fmuladd.f64(double 0xBCBE7FFFFFFFFFFF, double %16632, double %16624)
  %16634 = load ptr, ptr %7, align 8, !tbaa !9
  %16635 = load i32, ptr %12, align 4, !tbaa !5
  %16636 = load i32, ptr %8, align 4, !tbaa !5
  %16637 = mul nsw i32 5, %16636
  %16638 = add nsw i32 %16635, %16637
  %16639 = sext i32 %16638 to i64
  %16640 = getelementptr inbounds double, ptr %16634, i64 %16639
  %16641 = load double, ptr %16640, align 8, !tbaa !11
  %16642 = call double @llvm.fmuladd.f64(double 0x3C95000000000000, double %16641, double %16633)
  %16643 = load ptr, ptr %7, align 8, !tbaa !9
  %16644 = load i32, ptr %12, align 4, !tbaa !5
  %16645 = load i32, ptr %8, align 4, !tbaa !5
  %16646 = mul nsw i32 6, %16645
  %16647 = add nsw i32 %16644, %16646
  %16648 = sext i32 %16647 to i64
  %16649 = getelementptr inbounds double, ptr %16643, i64 %16648
  %16650 = load double, ptr %16649, align 8, !tbaa !11
  %16651 = call double @llvm.fmuladd.f64(double 0x3C9CC00000000000, double %16650, double %16642)
  %16652 = load ptr, ptr %7, align 8, !tbaa !9
  %16653 = load i32, ptr %12, align 4, !tbaa !5
  %16654 = load i32, ptr %8, align 4, !tbaa !5
  %16655 = mul nsw i32 7, %16654
  %16656 = add nsw i32 %16653, %16655
  %16657 = sext i32 %16656 to i64
  %16658 = getelementptr inbounds double, ptr %16652, i64 %16657
  %16659 = load double, ptr %16658, align 8, !tbaa !11
  %16660 = call double @llvm.fmuladd.f64(double 0x3CA8200000000001, double %16659, double %16651)
  %16661 = load ptr, ptr %7, align 8, !tbaa !9
  %16662 = load i32, ptr %12, align 4, !tbaa !5
  %16663 = load i32, ptr %8, align 4, !tbaa !5
  %16664 = mul nsw i32 8, %16663
  %16665 = add nsw i32 %16662, %16664
  %16666 = sext i32 %16665 to i64
  %16667 = getelementptr inbounds double, ptr %16661, i64 %16666
  %16668 = load double, ptr %16667, align 8, !tbaa !11
  %16669 = call double @llvm.fmuladd.f64(double 0x3C9EFFFFFFFFFFFD, double %16668, double %16660)
  %16670 = load ptr, ptr %7, align 8, !tbaa !9
  %16671 = load i32, ptr %12, align 4, !tbaa !5
  %16672 = load i32, ptr %8, align 4, !tbaa !5
  %16673 = mul nsw i32 9, %16672
  %16674 = add nsw i32 %16671, %16673
  %16675 = sext i32 %16674 to i64
  %16676 = getelementptr inbounds double, ptr %16670, i64 %16675
  %16677 = load double, ptr %16676, align 8, !tbaa !11
  %16678 = call double @llvm.fmuladd.f64(double 0x3CBD400000000001, double %16677, double %16669)
  %16679 = load ptr, ptr %7, align 8, !tbaa !9
  %16680 = load i32, ptr %12, align 4, !tbaa !5
  %16681 = load i32, ptr %8, align 4, !tbaa !5
  %16682 = mul nsw i32 10, %16681
  %16683 = add nsw i32 %16680, %16682
  %16684 = sext i32 %16683 to i64
  %16685 = getelementptr inbounds double, ptr %16679, i64 %16684
  %16686 = load double, ptr %16685, align 8, !tbaa !11
  %16687 = call double @llvm.fmuladd.f64(double 0x3C70000000000001, double %16686, double %16678)
  %16688 = load ptr, ptr %7, align 8, !tbaa !9
  %16689 = load i32, ptr %12, align 4, !tbaa !5
  %16690 = load i32, ptr %8, align 4, !tbaa !5
  %16691 = mul nsw i32 11, %16690
  %16692 = add nsw i32 %16689, %16691
  %16693 = sext i32 %16692 to i64
  %16694 = getelementptr inbounds double, ptr %16688, i64 %16693
  %16695 = load double, ptr %16694, align 8, !tbaa !11
  %16696 = call double @llvm.fmuladd.f64(double 0xBC70000000000001, double %16695, double %16687)
  %16697 = load ptr, ptr %7, align 8, !tbaa !9
  %16698 = load i32, ptr %12, align 4, !tbaa !5
  %16699 = load i32, ptr %8, align 4, !tbaa !5
  %16700 = mul nsw i32 12, %16699
  %16701 = add nsw i32 %16698, %16700
  %16702 = sext i32 %16701 to i64
  %16703 = getelementptr inbounds double, ptr %16697, i64 %16702
  %16704 = load double, ptr %16703, align 8, !tbaa !11
  %16705 = call double @llvm.fmuladd.f64(double 0xBCA5400000000000, double %16704, double %16696)
  %16706 = load ptr, ptr %7, align 8, !tbaa !9
  %16707 = load i32, ptr %12, align 4, !tbaa !5
  %16708 = load i32, ptr %8, align 4, !tbaa !5
  %16709 = mul nsw i32 13, %16708
  %16710 = add nsw i32 %16707, %16709
  %16711 = sext i32 %16710 to i64
  %16712 = getelementptr inbounds double, ptr %16706, i64 %16711
  %16713 = load double, ptr %16712, align 8, !tbaa !11
  %16714 = call double @llvm.fmuladd.f64(double 0xBCAEC00000000001, double %16713, double %16705)
  %16715 = load ptr, ptr %7, align 8, !tbaa !9
  %16716 = load i32, ptr %12, align 4, !tbaa !5
  %16717 = load i32, ptr %8, align 4, !tbaa !5
  %16718 = mul nsw i32 14, %16717
  %16719 = add nsw i32 %16716, %16718
  %16720 = sext i32 %16719 to i64
  %16721 = getelementptr inbounds double, ptr %16715, i64 %16720
  %16722 = load double, ptr %16721, align 8, !tbaa !11
  %16723 = call double @llvm.fmuladd.f64(double 0xBC94000000000000, double %16722, double %16714)
  %16724 = load ptr, ptr %7, align 8, !tbaa !9
  %16725 = load i32, ptr %12, align 4, !tbaa !5
  %16726 = load i32, ptr %8, align 4, !tbaa !5
  %16727 = mul nsw i32 15, %16726
  %16728 = add nsw i32 %16725, %16727
  %16729 = sext i32 %16728 to i64
  %16730 = getelementptr inbounds double, ptr %16724, i64 %16729
  %16731 = load double, ptr %16730, align 8, !tbaa !11
  %16732 = call double @llvm.fmuladd.f64(double 0xBCB7000000000000, double %16731, double %16723)
  %16733 = load ptr, ptr %7, align 8, !tbaa !9
  %16734 = load i32, ptr %12, align 4, !tbaa !5
  %16735 = load i32, ptr %8, align 4, !tbaa !5
  %16736 = mul nsw i32 16, %16735
  %16737 = add nsw i32 %16734, %16736
  %16738 = sext i32 %16737 to i64
  %16739 = getelementptr inbounds double, ptr %16733, i64 %16738
  %16740 = load double, ptr %16739, align 8, !tbaa !11
  %16741 = call double @llvm.fmuladd.f64(double 0x3CB3800000000000, double %16740, double %16732)
  %16742 = load ptr, ptr %7, align 8, !tbaa !9
  %16743 = load i32, ptr %12, align 4, !tbaa !5
  %16744 = load i32, ptr %8, align 4, !tbaa !5
  %16745 = mul nsw i32 17, %16744
  %16746 = add nsw i32 %16743, %16745
  %16747 = sext i32 %16746 to i64
  %16748 = getelementptr inbounds double, ptr %16742, i64 %16747
  %16749 = load double, ptr %16748, align 8, !tbaa !11
  %16750 = call double @llvm.fmuladd.f64(double 0xBCB23FFFFFFFFFFF, double %16749, double %16741)
  %16751 = load ptr, ptr %7, align 8, !tbaa !9
  %16752 = load i32, ptr %12, align 4, !tbaa !5
  %16753 = load i32, ptr %8, align 4, !tbaa !5
  %16754 = mul nsw i32 18, %16753
  %16755 = add nsw i32 %16752, %16754
  %16756 = sext i32 %16755 to i64
  %16757 = getelementptr inbounds double, ptr %16751, i64 %16756
  %16758 = load double, ptr %16757, align 8, !tbaa !11
  %16759 = call double @llvm.fmuladd.f64(double 0x3CC4800000000000, double %16758, double %16750)
  %16760 = load ptr, ptr %7, align 8, !tbaa !9
  %16761 = load i32, ptr %12, align 4, !tbaa !5
  %16762 = load i32, ptr %8, align 4, !tbaa !5
  %16763 = mul nsw i32 19, %16762
  %16764 = add nsw i32 %16761, %16763
  %16765 = sext i32 %16764 to i64
  %16766 = getelementptr inbounds double, ptr %16760, i64 %16765
  %16767 = load double, ptr %16766, align 8, !tbaa !11
  %16768 = call double @llvm.fmuladd.f64(double 0xBCC6000000000000, double %16767, double %16759)
  %16769 = load ptr, ptr %7, align 8, !tbaa !9
  %16770 = load i32, ptr %12, align 4, !tbaa !5
  %16771 = load i32, ptr %8, align 4, !tbaa !5
  %16772 = mul nsw i32 20, %16771
  %16773 = add nsw i32 %16770, %16772
  %16774 = sext i32 %16773 to i64
  %16775 = getelementptr inbounds double, ptr %16769, i64 %16774
  %16776 = load double, ptr %16775, align 8, !tbaa !11
  %16777 = call double @llvm.fmuladd.f64(double 0xBFE333710B32A2A0, double %16776, double %16768)
  %16778 = load ptr, ptr %7, align 8, !tbaa !9
  %16779 = load i32, ptr %12, align 4, !tbaa !5
  %16780 = load i32, ptr %8, align 4, !tbaa !5
  %16781 = mul nsw i32 21, %16780
  %16782 = add nsw i32 %16779, %16781
  %16783 = sext i32 %16782 to i64
  %16784 = getelementptr inbounds double, ptr %16778, i64 %16783
  %16785 = load double, ptr %16784, align 8, !tbaa !11
  %16786 = call double @llvm.fmuladd.f64(double 0x3FA87D7643548526, double %16785, double %16777)
  %16787 = load ptr, ptr %7, align 8, !tbaa !9
  %16788 = load i32, ptr %12, align 4, !tbaa !5
  %16789 = load i32, ptr %8, align 4, !tbaa !5
  %16790 = mul nsw i32 22, %16789
  %16791 = add nsw i32 %16788, %16790
  %16792 = sext i32 %16791 to i64
  %16793 = getelementptr inbounds double, ptr %16787, i64 %16792
  %16794 = load double, ptr %16793, align 8, !tbaa !11
  %16795 = call double @llvm.fmuladd.f64(double 0xBFBEED13A9F0D8FA, double %16794, double %16786)
  %16796 = load ptr, ptr %7, align 8, !tbaa !9
  %16797 = load i32, ptr %12, align 4, !tbaa !5
  %16798 = load i32, ptr %8, align 4, !tbaa !5
  %16799 = mul nsw i32 23, %16798
  %16800 = add nsw i32 %16797, %16799
  %16801 = sext i32 %16800 to i64
  %16802 = getelementptr inbounds double, ptr %16796, i64 %16801
  %16803 = load double, ptr %16802, align 8, !tbaa !11
  %16804 = call double @llvm.fmuladd.f64(double 0xBFA352D4DB969C02, double %16803, double %16795)
  %16805 = load ptr, ptr %7, align 8, !tbaa !9
  %16806 = load i32, ptr %12, align 4, !tbaa !5
  %16807 = load i32, ptr %8, align 4, !tbaa !5
  %16808 = mul nsw i32 24, %16807
  %16809 = add nsw i32 %16806, %16808
  %16810 = sext i32 %16809 to i64
  %16811 = getelementptr inbounds double, ptr %16805, i64 %16810
  %16812 = load double, ptr %16811, align 8, !tbaa !11
  %16813 = call double @llvm.fmuladd.f64(double 0x3FD35DAE88CBA644, double %16812, double %16804)
  %16814 = load ptr, ptr %7, align 8, !tbaa !9
  %16815 = load i32, ptr %12, align 4, !tbaa !5
  %16816 = load i32, ptr %8, align 4, !tbaa !5
  %16817 = mul nsw i32 25, %16816
  %16818 = add nsw i32 %16815, %16817
  %16819 = sext i32 %16818 to i64
  %16820 = getelementptr inbounds double, ptr %16814, i64 %16819
  %16821 = load double, ptr %16820, align 8, !tbaa !11
  %16822 = call double @llvm.fmuladd.f64(double 0x3FC36A9134CD3C51, double %16821, double %16813)
  %16823 = load ptr, ptr %7, align 8, !tbaa !9
  %16824 = load i32, ptr %12, align 4, !tbaa !5
  %16825 = load i32, ptr %8, align 4, !tbaa !5
  %16826 = mul nsw i32 26, %16825
  %16827 = add nsw i32 %16824, %16826
  %16828 = sext i32 %16827 to i64
  %16829 = getelementptr inbounds double, ptr %16823, i64 %16828
  %16830 = load double, ptr %16829, align 8, !tbaa !11
  %16831 = call double @llvm.fmuladd.f64(double 0x3F9854E0ADA34AA6, double %16830, double %16822)
  %16832 = load ptr, ptr %7, align 8, !tbaa !9
  %16833 = load i32, ptr %12, align 4, !tbaa !5
  %16834 = load i32, ptr %8, align 4, !tbaa !5
  %16835 = mul nsw i32 27, %16834
  %16836 = add nsw i32 %16833, %16835
  %16837 = sext i32 %16836 to i64
  %16838 = getelementptr inbounds double, ptr %16832, i64 %16837
  %16839 = load double, ptr %16838, align 8, !tbaa !11
  %16840 = call double @llvm.fmuladd.f64(double 0x3FC27B05E24EC606, double %16839, double %16831)
  %16841 = load ptr, ptr %7, align 8, !tbaa !9
  %16842 = load i32, ptr %12, align 4, !tbaa !5
  %16843 = load i32, ptr %8, align 4, !tbaa !5
  %16844 = mul nsw i32 28, %16843
  %16845 = add nsw i32 %16842, %16844
  %16846 = sext i32 %16845 to i64
  %16847 = getelementptr inbounds double, ptr %16841, i64 %16846
  %16848 = load double, ptr %16847, align 8, !tbaa !11
  %16849 = call double @llvm.fmuladd.f64(double 0x3FF670C5F1F4C932, double %16848, double %16840)
  %16850 = load ptr, ptr %7, align 8, !tbaa !9
  %16851 = load i32, ptr %12, align 4, !tbaa !5
  %16852 = load i32, ptr %8, align 4, !tbaa !5
  %16853 = mul nsw i32 29, %16852
  %16854 = add nsw i32 %16851, %16853
  %16855 = sext i32 %16854 to i64
  %16856 = getelementptr inbounds double, ptr %16850, i64 %16855
  %16857 = load double, ptr %16856, align 8, !tbaa !11
  %16858 = call double @llvm.fmuladd.f64(double 0xBFD41C0D131D4281, double %16857, double %16849)
  %16859 = load ptr, ptr %7, align 8, !tbaa !9
  %16860 = load i32, ptr %12, align 4, !tbaa !5
  %16861 = load i32, ptr %8, align 4, !tbaa !5
  %16862 = mul nsw i32 30, %16861
  %16863 = add nsw i32 %16860, %16862
  %16864 = sext i32 %16863 to i64
  %16865 = getelementptr inbounds double, ptr %16859, i64 %16864
  %16866 = load double, ptr %16865, align 8, !tbaa !11
  %16867 = call double @llvm.fmuladd.f64(double 0x3CB5FFFFFFFFFFFF, double %16866, double %16858)
  %16868 = load ptr, ptr %7, align 8, !tbaa !9
  %16869 = load i32, ptr %12, align 4, !tbaa !5
  %16870 = load i32, ptr %8, align 4, !tbaa !5
  %16871 = mul nsw i32 31, %16870
  %16872 = add nsw i32 %16869, %16871
  %16873 = sext i32 %16872 to i64
  %16874 = getelementptr inbounds double, ptr %16868, i64 %16873
  %16875 = load double, ptr %16874, align 8, !tbaa !11
  %16876 = call double @llvm.fmuladd.f64(double 0x3CAC000000000000, double %16875, double %16867)
  %16877 = load ptr, ptr %7, align 8, !tbaa !9
  %16878 = load i32, ptr %12, align 4, !tbaa !5
  %16879 = load i32, ptr %8, align 4, !tbaa !5
  %16880 = mul nsw i32 32, %16879
  %16881 = add nsw i32 %16878, %16880
  %16882 = sext i32 %16881 to i64
  %16883 = getelementptr inbounds double, ptr %16877, i64 %16882
  %16884 = load double, ptr %16883, align 8, !tbaa !11
  %16885 = call double @llvm.fmuladd.f64(double 0x3C91C00000000000, double %16884, double %16876)
  %16886 = load ptr, ptr %7, align 8, !tbaa !9
  %16887 = load i32, ptr %12, align 4, !tbaa !5
  %16888 = load i32, ptr %8, align 4, !tbaa !5
  %16889 = mul nsw i32 33, %16888
  %16890 = add nsw i32 %16887, %16889
  %16891 = sext i32 %16890 to i64
  %16892 = getelementptr inbounds double, ptr %16886, i64 %16891
  %16893 = load double, ptr %16892, align 8, !tbaa !11
  %16894 = call double @llvm.fmuladd.f64(double 0x3CB0100000000000, double %16893, double %16885)
  %16895 = load ptr, ptr %7, align 8, !tbaa !9
  %16896 = load i32, ptr %12, align 4, !tbaa !5
  %16897 = load i32, ptr %8, align 4, !tbaa !5
  %16898 = mul nsw i32 34, %16897
  %16899 = add nsw i32 %16896, %16898
  %16900 = sext i32 %16899 to i64
  %16901 = getelementptr inbounds double, ptr %16895, i64 %16900
  %16902 = load double, ptr %16901, align 8, !tbaa !11
  %16903 = call double @llvm.fmuladd.f64(double 0xBCAF000000000001, double %16902, double %16894)
  %16904 = load ptr, ptr %7, align 8, !tbaa !9
  %16905 = load i32, ptr %12, align 4, !tbaa !5
  %16906 = load i32, ptr %8, align 4, !tbaa !5
  %16907 = mul nsw i32 35, %16906
  %16908 = add nsw i32 %16905, %16907
  %16909 = sext i32 %16908 to i64
  %16910 = getelementptr inbounds double, ptr %16904, i64 %16909
  %16911 = load double, ptr %16910, align 8, !tbaa !11
  %16912 = call double @llvm.fmuladd.f64(double 0x3C9EFFFFFFFFFFFD, double %16911, double %16903)
  %16913 = load ptr, ptr %7, align 8, !tbaa !9
  %16914 = load i32, ptr %12, align 4, !tbaa !5
  %16915 = load i32, ptr %8, align 4, !tbaa !5
  %16916 = mul nsw i32 36, %16915
  %16917 = add nsw i32 %16914, %16916
  %16918 = sext i32 %16917 to i64
  %16919 = getelementptr inbounds double, ptr %16913, i64 %16918
  %16920 = load double, ptr %16919, align 8, !tbaa !11
  %16921 = call double @llvm.fmuladd.f64(double 0xBC79000000000000, double %16920, double %16912)
  %16922 = load ptr, ptr %7, align 8, !tbaa !9
  %16923 = load i32, ptr %12, align 4, !tbaa !5
  %16924 = load i32, ptr %8, align 4, !tbaa !5
  %16925 = mul nsw i32 37, %16924
  %16926 = add nsw i32 %16923, %16925
  %16927 = sext i32 %16926 to i64
  %16928 = getelementptr inbounds double, ptr %16922, i64 %16927
  %16929 = load double, ptr %16928, align 8, !tbaa !11
  %16930 = call double @llvm.fmuladd.f64(double 0xBCB4900000000001, double %16929, double %16921)
  %16931 = load ptr, ptr %7, align 8, !tbaa !9
  %16932 = load i32, ptr %12, align 4, !tbaa !5
  %16933 = load i32, ptr %8, align 4, !tbaa !5
  %16934 = mul nsw i32 38, %16933
  %16935 = add nsw i32 %16932, %16934
  %16936 = sext i32 %16935 to i64
  %16937 = getelementptr inbounds double, ptr %16931, i64 %16936
  %16938 = load double, ptr %16937, align 8, !tbaa !11
  %16939 = call double @llvm.fmuladd.f64(double 0xBCB07FFFFFFFFFFF, double %16938, double %16930)
  %16940 = load ptr, ptr %7, align 8, !tbaa !9
  %16941 = load i32, ptr %12, align 4, !tbaa !5
  %16942 = load i32, ptr %8, align 4, !tbaa !5
  %16943 = mul nsw i32 39, %16942
  %16944 = add nsw i32 %16941, %16943
  %16945 = sext i32 %16944 to i64
  %16946 = getelementptr inbounds double, ptr %16940, i64 %16945
  %16947 = load double, ptr %16946, align 8, !tbaa !11
  %16948 = call double @llvm.fmuladd.f64(double 0xBCB1000000000001, double %16947, double %16939)
  store double %16948, ptr %11, align 8, !tbaa !11
  %16949 = load double, ptr %11, align 8, !tbaa !11
  %16950 = load ptr, ptr %9, align 8, !tbaa !9
  %16951 = load i32, ptr %12, align 4, !tbaa !5
  %16952 = load i32, ptr %10, align 4, !tbaa !5
  %16953 = mul nsw i32 46, %16952
  %16954 = add nsw i32 %16951, %16953
  %16955 = sext i32 %16954 to i64
  %16956 = getelementptr inbounds double, ptr %16950, i64 %16955
  %16957 = load double, ptr %16956, align 8, !tbaa !11
  %16958 = fadd double %16957, %16949
  store double %16958, ptr %16956, align 8, !tbaa !11
  %16959 = load ptr, ptr %7, align 8, !tbaa !9
  %16960 = load i32, ptr %12, align 4, !tbaa !5
  %16961 = load i32, ptr %8, align 4, !tbaa !5
  %16962 = mul nsw i32 0, %16961
  %16963 = add nsw i32 %16960, %16962
  %16964 = sext i32 %16963 to i64
  %16965 = getelementptr inbounds double, ptr %16959, i64 %16964
  %16966 = load double, ptr %16965, align 8, !tbaa !11
  %16967 = load ptr, ptr %7, align 8, !tbaa !9
  %16968 = load i32, ptr %12, align 4, !tbaa !5
  %16969 = load i32, ptr %8, align 4, !tbaa !5
  %16970 = mul nsw i32 1, %16969
  %16971 = add nsw i32 %16968, %16970
  %16972 = sext i32 %16971 to i64
  %16973 = getelementptr inbounds double, ptr %16967, i64 %16972
  %16974 = load double, ptr %16973, align 8, !tbaa !11
  %16975 = fmul double 0x3C70000000000001, %16974
  %16976 = call double @llvm.fmuladd.f64(double 0x3CAC000000000000, double %16966, double %16975)
  %16977 = load ptr, ptr %7, align 8, !tbaa !9
  %16978 = load i32, ptr %12, align 4, !tbaa !5
  %16979 = load i32, ptr %8, align 4, !tbaa !5
  %16980 = mul nsw i32 2, %16979
  %16981 = add nsw i32 %16978, %16980
  %16982 = sext i32 %16981 to i64
  %16983 = getelementptr inbounds double, ptr %16977, i64 %16982
  %16984 = load double, ptr %16983, align 8, !tbaa !11
  %16985 = call double @llvm.fmuladd.f64(double 0x3C99000000000000, double %16984, double %16976)
  %16986 = load ptr, ptr %7, align 8, !tbaa !9
  %16987 = load i32, ptr %12, align 4, !tbaa !5
  %16988 = load i32, ptr %8, align 4, !tbaa !5
  %16989 = mul nsw i32 3, %16988
  %16990 = add nsw i32 %16987, %16989
  %16991 = sext i32 %16990 to i64
  %16992 = getelementptr inbounds double, ptr %16986, i64 %16991
  %16993 = load double, ptr %16992, align 8, !tbaa !11
  %16994 = call double @llvm.fmuladd.f64(double 0xBC92000000000000, double %16993, double %16985)
  %16995 = load ptr, ptr %7, align 8, !tbaa !9
  %16996 = load i32, ptr %12, align 4, !tbaa !5
  %16997 = load i32, ptr %8, align 4, !tbaa !5
  %16998 = mul nsw i32 4, %16997
  %16999 = add nsw i32 %16996, %16998
  %17000 = sext i32 %16999 to i64
  %17001 = getelementptr inbounds double, ptr %16995, i64 %17000
  %17002 = load double, ptr %17001, align 8, !tbaa !11
  %17003 = call double @llvm.fmuladd.f64(double 0xBCB2000000000000, double %17002, double %16994)
  %17004 = load ptr, ptr %7, align 8, !tbaa !9
  %17005 = load i32, ptr %12, align 4, !tbaa !5
  %17006 = load i32, ptr %8, align 4, !tbaa !5
  %17007 = mul nsw i32 5, %17006
  %17008 = add nsw i32 %17005, %17007
  %17009 = sext i32 %17008 to i64
  %17010 = getelementptr inbounds double, ptr %17004, i64 %17009
  %17011 = load double, ptr %17010, align 8, !tbaa !11
  %17012 = call double @llvm.fmuladd.f64(double 0x3CB4800000000001, double %17011, double %17003)
  %17013 = load ptr, ptr %7, align 8, !tbaa !9
  %17014 = load i32, ptr %12, align 4, !tbaa !5
  %17015 = load i32, ptr %8, align 4, !tbaa !5
  %17016 = mul nsw i32 6, %17015
  %17017 = add nsw i32 %17014, %17016
  %17018 = sext i32 %17017 to i64
  %17019 = getelementptr inbounds double, ptr %17013, i64 %17018
  %17020 = load double, ptr %17019, align 8, !tbaa !11
  %17021 = call double @llvm.fmuladd.f64(double 0x3C67FFFFFFFFFFFE, double %17020, double %17012)
  %17022 = load ptr, ptr %7, align 8, !tbaa !9
  %17023 = load i32, ptr %12, align 4, !tbaa !5
  %17024 = load i32, ptr %8, align 4, !tbaa !5
  %17025 = mul nsw i32 7, %17024
  %17026 = add nsw i32 %17023, %17025
  %17027 = sext i32 %17026 to i64
  %17028 = getelementptr inbounds double, ptr %17022, i64 %17027
  %17029 = load double, ptr %17028, align 8, !tbaa !11
  %17030 = call double @llvm.fmuladd.f64(double 0x3C9C000000000000, double %17029, double %17021)
  %17031 = load ptr, ptr %7, align 8, !tbaa !9
  %17032 = load i32, ptr %12, align 4, !tbaa !5
  %17033 = load i32, ptr %8, align 4, !tbaa !5
  %17034 = mul nsw i32 8, %17033
  %17035 = add nsw i32 %17032, %17034
  %17036 = sext i32 %17035 to i64
  %17037 = getelementptr inbounds double, ptr %17031, i64 %17036
  %17038 = load double, ptr %17037, align 8, !tbaa !11
  %17039 = call double @llvm.fmuladd.f64(double 0xBCA0000000000002, double %17038, double %17030)
  %17040 = load ptr, ptr %7, align 8, !tbaa !9
  %17041 = load i32, ptr %12, align 4, !tbaa !5
  %17042 = load i32, ptr %8, align 4, !tbaa !5
  %17043 = mul nsw i32 9, %17042
  %17044 = add nsw i32 %17041, %17043
  %17045 = sext i32 %17044 to i64
  %17046 = getelementptr inbounds double, ptr %17040, i64 %17045
  %17047 = load double, ptr %17046, align 8, !tbaa !11
  %17048 = call double @llvm.fmuladd.f64(double 0x3C98000000000000, double %17047, double %17039)
  %17049 = load ptr, ptr %7, align 8, !tbaa !9
  %17050 = load i32, ptr %12, align 4, !tbaa !5
  %17051 = load i32, ptr %8, align 4, !tbaa !5
  %17052 = mul nsw i32 10, %17051
  %17053 = add nsw i32 %17050, %17052
  %17054 = sext i32 %17053 to i64
  %17055 = getelementptr inbounds double, ptr %17049, i64 %17054
  %17056 = load double, ptr %17055, align 8, !tbaa !11
  %17057 = call double @llvm.fmuladd.f64(double 0xBCBE000000000000, double %17056, double %17048)
  %17058 = load ptr, ptr %7, align 8, !tbaa !9
  %17059 = load i32, ptr %12, align 4, !tbaa !5
  %17060 = load i32, ptr %8, align 4, !tbaa !5
  %17061 = mul nsw i32 11, %17060
  %17062 = add nsw i32 %17059, %17061
  %17063 = sext i32 %17062 to i64
  %17064 = getelementptr inbounds double, ptr %17058, i64 %17063
  %17065 = load double, ptr %17064, align 8, !tbaa !11
  %17066 = call double @llvm.fmuladd.f64(double 0x3C7FFFFFFFFFFFFF, double %17065, double %17057)
  %17067 = load ptr, ptr %7, align 8, !tbaa !9
  %17068 = load i32, ptr %12, align 4, !tbaa !5
  %17069 = load i32, ptr %8, align 4, !tbaa !5
  %17070 = mul nsw i32 12, %17069
  %17071 = add nsw i32 %17068, %17070
  %17072 = sext i32 %17071 to i64
  %17073 = getelementptr inbounds double, ptr %17067, i64 %17072
  %17074 = load double, ptr %17073, align 8, !tbaa !11
  %17075 = call double @llvm.fmuladd.f64(double 0xBCA5000000000000, double %17074, double %17066)
  %17076 = load ptr, ptr %7, align 8, !tbaa !9
  %17077 = load i32, ptr %12, align 4, !tbaa !5
  %17078 = load i32, ptr %8, align 4, !tbaa !5
  %17079 = mul nsw i32 13, %17078
  %17080 = add nsw i32 %17077, %17079
  %17081 = sext i32 %17080 to i64
  %17082 = getelementptr inbounds double, ptr %17076, i64 %17081
  %17083 = load double, ptr %17082, align 8, !tbaa !11
  %17084 = call double @llvm.fmuladd.f64(double 0xBCAE000000000002, double %17083, double %17075)
  %17085 = load ptr, ptr %7, align 8, !tbaa !9
  %17086 = load i32, ptr %12, align 4, !tbaa !5
  %17087 = load i32, ptr %8, align 4, !tbaa !5
  %17088 = mul nsw i32 15, %17087
  %17089 = add nsw i32 %17086, %17088
  %17090 = sext i32 %17089 to i64
  %17091 = getelementptr inbounds double, ptr %17085, i64 %17090
  %17092 = load double, ptr %17091, align 8, !tbaa !11
  %17093 = call double @llvm.fmuladd.f64(double 0xBCA8000000000001, double %17092, double %17084)
  %17094 = load ptr, ptr %7, align 8, !tbaa !9
  %17095 = load i32, ptr %12, align 4, !tbaa !5
  %17096 = load i32, ptr %8, align 4, !tbaa !5
  %17097 = mul nsw i32 16, %17096
  %17098 = add nsw i32 %17095, %17097
  %17099 = sext i32 %17098 to i64
  %17100 = getelementptr inbounds double, ptr %17094, i64 %17099
  %17101 = load double, ptr %17100, align 8, !tbaa !11
  %17102 = call double @llvm.fmuladd.f64(double 0x3CBF000000000001, double %17101, double %17093)
  %17103 = load ptr, ptr %7, align 8, !tbaa !9
  %17104 = load i32, ptr %12, align 4, !tbaa !5
  %17105 = load i32, ptr %8, align 4, !tbaa !5
  %17106 = mul nsw i32 17, %17105
  %17107 = add nsw i32 %17104, %17106
  %17108 = sext i32 %17107 to i64
  %17109 = getelementptr inbounds double, ptr %17103, i64 %17108
  %17110 = load double, ptr %17109, align 8, !tbaa !11
  %17111 = call double @llvm.fmuladd.f64(double 0xBCB3000000000000, double %17110, double %17102)
  %17112 = load ptr, ptr %7, align 8, !tbaa !9
  %17113 = load i32, ptr %12, align 4, !tbaa !5
  %17114 = load i32, ptr %8, align 4, !tbaa !5
  %17115 = mul nsw i32 18, %17114
  %17116 = add nsw i32 %17113, %17115
  %17117 = sext i32 %17116 to i64
  %17118 = getelementptr inbounds double, ptr %17112, i64 %17117
  %17119 = load double, ptr %17118, align 8, !tbaa !11
  %17120 = call double @llvm.fmuladd.f64(double 0x3CB3FFFFFFFFFFFF, double %17119, double %17111)
  %17121 = load ptr, ptr %7, align 8, !tbaa !9
  %17122 = load i32, ptr %12, align 4, !tbaa !5
  %17123 = load i32, ptr %8, align 4, !tbaa !5
  %17124 = mul nsw i32 19, %17123
  %17125 = add nsw i32 %17122, %17124
  %17126 = sext i32 %17125 to i64
  %17127 = getelementptr inbounds double, ptr %17121, i64 %17126
  %17128 = load double, ptr %17127, align 8, !tbaa !11
  %17129 = call double @llvm.fmuladd.f64(double 0xBCA8000000000001, double %17128, double %17120)
  %17130 = load ptr, ptr %7, align 8, !tbaa !9
  %17131 = load i32, ptr %12, align 4, !tbaa !5
  %17132 = load i32, ptr %8, align 4, !tbaa !5
  %17133 = mul nsw i32 20, %17132
  %17134 = add nsw i32 %17131, %17133
  %17135 = sext i32 %17134 to i64
  %17136 = getelementptr inbounds double, ptr %17130, i64 %17135
  %17137 = load double, ptr %17136, align 8, !tbaa !11
  %17138 = call double @llvm.fmuladd.f64(double 0xBF83152016E0EC70, double %17137, double %17129)
  %17139 = load ptr, ptr %7, align 8, !tbaa !9
  %17140 = load i32, ptr %12, align 4, !tbaa !5
  %17141 = load i32, ptr %8, align 4, !tbaa !5
  %17142 = mul nsw i32 21, %17141
  %17143 = add nsw i32 %17140, %17142
  %17144 = sext i32 %17143 to i64
  %17145 = getelementptr inbounds double, ptr %17139, i64 %17144
  %17146 = load double, ptr %17145, align 8, !tbaa !11
  %17147 = call double @llvm.fmuladd.f64(double 0x3FF4EC1BB3FDC612, double %17146, double %17138)
  %17148 = load ptr, ptr %7, align 8, !tbaa !9
  %17149 = load i32, ptr %12, align 4, !tbaa !5
  %17150 = load i32, ptr %8, align 4, !tbaa !5
  %17151 = mul nsw i32 22, %17150
  %17152 = add nsw i32 %17149, %17151
  %17153 = sext i32 %17152 to i64
  %17154 = getelementptr inbounds double, ptr %17148, i64 %17153
  %17155 = load double, ptr %17154, align 8, !tbaa !11
  %17156 = call double @llvm.fmuladd.f64(double 0xBFB5B58B4F03B194, double %17155, double %17147)
  %17157 = load ptr, ptr %7, align 8, !tbaa !9
  %17158 = load i32, ptr %12, align 4, !tbaa !5
  %17159 = load i32, ptr %8, align 4, !tbaa !5
  %17160 = mul nsw i32 23, %17159
  %17161 = add nsw i32 %17158, %17160
  %17162 = sext i32 %17161 to i64
  %17163 = getelementptr inbounds double, ptr %17157, i64 %17162
  %17164 = load double, ptr %17163, align 8, !tbaa !11
  %17165 = call double @llvm.fmuladd.f64(double 0x3F938CE4890DB2C2, double %17164, double %17156)
  %17166 = load ptr, ptr %7, align 8, !tbaa !9
  %17167 = load i32, ptr %12, align 4, !tbaa !5
  %17168 = load i32, ptr %8, align 4, !tbaa !5
  %17169 = mul nsw i32 24, %17168
  %17170 = add nsw i32 %17167, %17169
  %17171 = sext i32 %17170 to i64
  %17172 = getelementptr inbounds double, ptr %17166, i64 %17171
  %17173 = load double, ptr %17172, align 8, !tbaa !11
  %17174 = call double @llvm.fmuladd.f64(double 0x3FD417DEBFC17B11, double %17173, double %17165)
  %17175 = load ptr, ptr %7, align 8, !tbaa !9
  %17176 = load i32, ptr %12, align 4, !tbaa !5
  %17177 = load i32, ptr %8, align 4, !tbaa !5
  %17178 = mul nsw i32 25, %17177
  %17179 = add nsw i32 %17176, %17178
  %17180 = sext i32 %17179 to i64
  %17181 = getelementptr inbounds double, ptr %17175, i64 %17180
  %17182 = load double, ptr %17181, align 8, !tbaa !11
  %17183 = call double @llvm.fmuladd.f64(double 0xBFB49217631F592C, double %17182, double %17174)
  %17184 = load ptr, ptr %7, align 8, !tbaa !9
  %17185 = load i32, ptr %12, align 4, !tbaa !5
  %17186 = load i32, ptr %8, align 4, !tbaa !5
  %17187 = mul nsw i32 26, %17186
  %17188 = add nsw i32 %17185, %17187
  %17189 = sext i32 %17188 to i64
  %17190 = getelementptr inbounds double, ptr %17184, i64 %17189
  %17191 = load double, ptr %17190, align 8, !tbaa !11
  %17192 = call double @llvm.fmuladd.f64(double 0x3F85E50BB681A317, double %17191, double %17183)
  %17193 = load ptr, ptr %7, align 8, !tbaa !9
  %17194 = load i32, ptr %12, align 4, !tbaa !5
  %17195 = load i32, ptr %8, align 4, !tbaa !5
  %17196 = mul nsw i32 27, %17195
  %17197 = add nsw i32 %17194, %17196
  %17198 = sext i32 %17197 to i64
  %17199 = getelementptr inbounds double, ptr %17193, i64 %17198
  %17200 = load double, ptr %17199, align 8, !tbaa !11
  %17201 = call double @llvm.fmuladd.f64(double 0xBF8BDAF699AECE56, double %17200, double %17192)
  %17202 = load ptr, ptr %7, align 8, !tbaa !9
  %17203 = load i32, ptr %12, align 4, !tbaa !5
  %17204 = load i32, ptr %8, align 4, !tbaa !5
  %17205 = mul nsw i32 28, %17204
  %17206 = add nsw i32 %17203, %17205
  %17207 = sext i32 %17206 to i64
  %17208 = getelementptr inbounds double, ptr %17202, i64 %17207
  %17209 = load double, ptr %17208, align 8, !tbaa !11
  %17210 = call double @llvm.fmuladd.f64(double 0x3FCA50C41AB7A31A, double %17209, double %17201)
  %17211 = load ptr, ptr %7, align 8, !tbaa !9
  %17212 = load i32, ptr %12, align 4, !tbaa !5
  %17213 = load i32, ptr %8, align 4, !tbaa !5
  %17214 = mul nsw i32 29, %17213
  %17215 = add nsw i32 %17212, %17214
  %17216 = sext i32 %17215 to i64
  %17217 = getelementptr inbounds double, ptr %17211, i64 %17216
  %17218 = load double, ptr %17217, align 8, !tbaa !11
  %17219 = call double @llvm.fmuladd.f64(double 0xBFE5679E70A60656, double %17218, double %17210)
  %17220 = load ptr, ptr %7, align 8, !tbaa !9
  %17221 = load i32, ptr %12, align 4, !tbaa !5
  %17222 = load i32, ptr %8, align 4, !tbaa !5
  %17223 = mul nsw i32 30, %17222
  %17224 = add nsw i32 %17221, %17223
  %17225 = sext i32 %17224 to i64
  %17226 = getelementptr inbounds double, ptr %17220, i64 %17225
  %17227 = load double, ptr %17226, align 8, !tbaa !11
  %17228 = call double @llvm.fmuladd.f64(double 0x3C7FFFFFFFFFFFFF, double %17227, double %17219)
  %17229 = load ptr, ptr %7, align 8, !tbaa !9
  %17230 = load i32, ptr %12, align 4, !tbaa !5
  %17231 = load i32, ptr %8, align 4, !tbaa !5
  %17232 = mul nsw i32 31, %17231
  %17233 = add nsw i32 %17230, %17232
  %17234 = sext i32 %17233 to i64
  %17235 = getelementptr inbounds double, ptr %17229, i64 %17234
  %17236 = load double, ptr %17235, align 8, !tbaa !11
  %17237 = call double @llvm.fmuladd.f64(double 0x3CAC000000000000, double %17236, double %17228)
  %17238 = load ptr, ptr %7, align 8, !tbaa !9
  %17239 = load i32, ptr %12, align 4, !tbaa !5
  %17240 = load i32, ptr %8, align 4, !tbaa !5
  %17241 = mul nsw i32 32, %17240
  %17242 = add nsw i32 %17239, %17241
  %17243 = sext i32 %17242 to i64
  %17244 = getelementptr inbounds double, ptr %17238, i64 %17243
  %17245 = load double, ptr %17244, align 8, !tbaa !11
  %17246 = call double @llvm.fmuladd.f64(double 0x3C95000000000000, double %17245, double %17237)
  %17247 = load ptr, ptr %7, align 8, !tbaa !9
  %17248 = load i32, ptr %12, align 4, !tbaa !5
  %17249 = load i32, ptr %8, align 4, !tbaa !5
  %17250 = mul nsw i32 33, %17249
  %17251 = add nsw i32 %17248, %17250
  %17252 = sext i32 %17251 to i64
  %17253 = getelementptr inbounds double, ptr %17247, i64 %17252
  %17254 = load double, ptr %17253, align 8, !tbaa !11
  %17255 = call double @llvm.fmuladd.f64(double 0x3CB8800000000000, double %17254, double %17246)
  %17256 = load ptr, ptr %7, align 8, !tbaa !9
  %17257 = load i32, ptr %12, align 4, !tbaa !5
  %17258 = load i32, ptr %8, align 4, !tbaa !5
  %17259 = mul nsw i32 34, %17258
  %17260 = add nsw i32 %17257, %17259
  %17261 = sext i32 %17260 to i64
  %17262 = getelementptr inbounds double, ptr %17256, i64 %17261
  %17263 = load double, ptr %17262, align 8, !tbaa !11
  %17264 = call double @llvm.fmuladd.f64(double 0xBC98000000000000, double %17263, double %17255)
  %17265 = load ptr, ptr %7, align 8, !tbaa !9
  %17266 = load i32, ptr %12, align 4, !tbaa !5
  %17267 = load i32, ptr %8, align 4, !tbaa !5
  %17268 = mul nsw i32 35, %17267
  %17269 = add nsw i32 %17266, %17268
  %17270 = sext i32 %17269 to i64
  %17271 = getelementptr inbounds double, ptr %17265, i64 %17270
  %17272 = load double, ptr %17271, align 8, !tbaa !11
  %17273 = call double @llvm.fmuladd.f64(double 0xBCA2000000000000, double %17272, double %17264)
  %17274 = load ptr, ptr %7, align 8, !tbaa !9
  %17275 = load i32, ptr %12, align 4, !tbaa !5
  %17276 = load i32, ptr %8, align 4, !tbaa !5
  %17277 = mul nsw i32 36, %17276
  %17278 = add nsw i32 %17275, %17277
  %17279 = sext i32 %17278 to i64
  %17280 = getelementptr inbounds double, ptr %17274, i64 %17279
  %17281 = load double, ptr %17280, align 8, !tbaa !11
  %17282 = call double @llvm.fmuladd.f64(double 0x3C7C000000000000, double %17281, double %17273)
  %17283 = load ptr, ptr %7, align 8, !tbaa !9
  %17284 = load i32, ptr %12, align 4, !tbaa !5
  %17285 = load i32, ptr %8, align 4, !tbaa !5
  %17286 = mul nsw i32 37, %17285
  %17287 = add nsw i32 %17284, %17286
  %17288 = sext i32 %17287 to i64
  %17289 = getelementptr inbounds double, ptr %17283, i64 %17288
  %17290 = load double, ptr %17289, align 8, !tbaa !11
  %17291 = call double @llvm.fmuladd.f64(double 0xBCB0400000000000, double %17290, double %17282)
  %17292 = load ptr, ptr %7, align 8, !tbaa !9
  %17293 = load i32, ptr %12, align 4, !tbaa !5
  %17294 = load i32, ptr %8, align 4, !tbaa !5
  %17295 = mul nsw i32 38, %17294
  %17296 = add nsw i32 %17293, %17295
  %17297 = sext i32 %17296 to i64
  %17298 = getelementptr inbounds double, ptr %17292, i64 %17297
  %17299 = load double, ptr %17298, align 8, !tbaa !11
  %17300 = call double @llvm.fmuladd.f64(double 0x3C98000000000000, double %17299, double %17291)
  %17301 = load ptr, ptr %7, align 8, !tbaa !9
  %17302 = load i32, ptr %12, align 4, !tbaa !5
  %17303 = load i32, ptr %8, align 4, !tbaa !5
  %17304 = mul nsw i32 39, %17303
  %17305 = add nsw i32 %17302, %17304
  %17306 = sext i32 %17305 to i64
  %17307 = getelementptr inbounds double, ptr %17301, i64 %17306
  %17308 = load double, ptr %17307, align 8, !tbaa !11
  %17309 = call double @llvm.fmuladd.f64(double 0xBC9C000000000000, double %17308, double %17300)
  store double %17309, ptr %11, align 8, !tbaa !11
  %17310 = load double, ptr %11, align 8, !tbaa !11
  %17311 = load ptr, ptr %9, align 8, !tbaa !9
  %17312 = load i32, ptr %12, align 4, !tbaa !5
  %17313 = load i32, ptr %10, align 4, !tbaa !5
  %17314 = mul nsw i32 47, %17313
  %17315 = add nsw i32 %17312, %17314
  %17316 = sext i32 %17315 to i64
  %17317 = getelementptr inbounds double, ptr %17311, i64 %17316
  %17318 = load double, ptr %17317, align 8, !tbaa !11
  %17319 = fadd double %17318, %17310
  store double %17319, ptr %17317, align 8, !tbaa !11
  %17320 = load ptr, ptr %7, align 8, !tbaa !9
  %17321 = load i32, ptr %12, align 4, !tbaa !5
  %17322 = load i32, ptr %8, align 4, !tbaa !5
  %17323 = mul nsw i32 0, %17322
  %17324 = add nsw i32 %17321, %17323
  %17325 = sext i32 %17324 to i64
  %17326 = getelementptr inbounds double, ptr %17320, i64 %17325
  %17327 = load double, ptr %17326, align 8, !tbaa !11
  %17328 = load ptr, ptr %7, align 8, !tbaa !9
  %17329 = load i32, ptr %12, align 4, !tbaa !5
  %17330 = load i32, ptr %8, align 4, !tbaa !5
  %17331 = mul nsw i32 1, %17330
  %17332 = add nsw i32 %17329, %17331
  %17333 = sext i32 %17332 to i64
  %17334 = getelementptr inbounds double, ptr %17328, i64 %17333
  %17335 = load double, ptr %17334, align 8, !tbaa !11
  %17336 = fmul double 0x3C6C000000000000, %17335
  %17337 = call double @llvm.fmuladd.f64(double 0xBC81000000000000, double %17327, double %17336)
  %17338 = load ptr, ptr %7, align 8, !tbaa !9
  %17339 = load i32, ptr %12, align 4, !tbaa !5
  %17340 = load i32, ptr %8, align 4, !tbaa !5
  %17341 = mul nsw i32 2, %17340
  %17342 = add nsw i32 %17339, %17341
  %17343 = sext i32 %17342 to i64
  %17344 = getelementptr inbounds double, ptr %17338, i64 %17343
  %17345 = load double, ptr %17344, align 8, !tbaa !11
  %17346 = call double @llvm.fmuladd.f64(double 0xBC68BFFFFFFFFFFD, double %17345, double %17337)
  %17347 = load ptr, ptr %7, align 8, !tbaa !9
  %17348 = load i32, ptr %12, align 4, !tbaa !5
  %17349 = load i32, ptr %8, align 4, !tbaa !5
  %17350 = mul nsw i32 3, %17349
  %17351 = add nsw i32 %17348, %17350
  %17352 = sext i32 %17351 to i64
  %17353 = getelementptr inbounds double, ptr %17347, i64 %17352
  %17354 = load double, ptr %17353, align 8, !tbaa !11
  %17355 = call double @llvm.fmuladd.f64(double 0x3CB72A0000000001, double %17354, double %17346)
  %17356 = load ptr, ptr %7, align 8, !tbaa !9
  %17357 = load i32, ptr %12, align 4, !tbaa !5
  %17358 = load i32, ptr %8, align 4, !tbaa !5
  %17359 = mul nsw i32 4, %17358
  %17360 = add nsw i32 %17357, %17359
  %17361 = sext i32 %17360 to i64
  %17362 = getelementptr inbounds double, ptr %17356, i64 %17361
  %17363 = load double, ptr %17362, align 8, !tbaa !11
  %17364 = call double @llvm.fmuladd.f64(double 0x3C90400000000000, double %17363, double %17355)
  %17365 = load ptr, ptr %7, align 8, !tbaa !9
  %17366 = load i32, ptr %12, align 4, !tbaa !5
  %17367 = load i32, ptr %8, align 4, !tbaa !5
  %17368 = mul nsw i32 5, %17367
  %17369 = add nsw i32 %17366, %17368
  %17370 = sext i32 %17369 to i64
  %17371 = getelementptr inbounds double, ptr %17365, i64 %17370
  %17372 = load double, ptr %17371, align 8, !tbaa !11
  %17373 = call double @llvm.fmuladd.f64(double 0x3C91000000000000, double %17372, double %17364)
  %17374 = load ptr, ptr %7, align 8, !tbaa !9
  %17375 = load i32, ptr %12, align 4, !tbaa !5
  %17376 = load i32, ptr %8, align 4, !tbaa !5
  %17377 = mul nsw i32 6, %17376
  %17378 = add nsw i32 %17375, %17377
  %17379 = sext i32 %17378 to i64
  %17380 = getelementptr inbounds double, ptr %17374, i64 %17379
  %17381 = load double, ptr %17380, align 8, !tbaa !11
  %17382 = call double @llvm.fmuladd.f64(double 0x3CA9B7FFFFFFFFFF, double %17381, double %17373)
  %17383 = load ptr, ptr %7, align 8, !tbaa !9
  %17384 = load i32, ptr %12, align 4, !tbaa !5
  %17385 = load i32, ptr %8, align 4, !tbaa !5
  %17386 = mul nsw i32 7, %17385
  %17387 = add nsw i32 %17384, %17386
  %17388 = sext i32 %17387 to i64
  %17389 = getelementptr inbounds double, ptr %17383, i64 %17388
  %17390 = load double, ptr %17389, align 8, !tbaa !11
  %17391 = call double @llvm.fmuladd.f64(double 0x3C73400000000001, double %17390, double %17382)
  %17392 = load ptr, ptr %7, align 8, !tbaa !9
  %17393 = load i32, ptr %12, align 4, !tbaa !5
  %17394 = load i32, ptr %8, align 4, !tbaa !5
  %17395 = mul nsw i32 8, %17394
  %17396 = add nsw i32 %17393, %17395
  %17397 = sext i32 %17396 to i64
  %17398 = getelementptr inbounds double, ptr %17392, i64 %17397
  %17399 = load double, ptr %17398, align 8, !tbaa !11
  %17400 = call double @llvm.fmuladd.f64(double 0x3C74000000000000, double %17399, double %17391)
  %17401 = load ptr, ptr %7, align 8, !tbaa !9
  %17402 = load i32, ptr %12, align 4, !tbaa !5
  %17403 = load i32, ptr %8, align 4, !tbaa !5
  %17404 = mul nsw i32 9, %17403
  %17405 = add nsw i32 %17402, %17404
  %17406 = sext i32 %17405 to i64
  %17407 = getelementptr inbounds double, ptr %17401, i64 %17406
  %17408 = load double, ptr %17407, align 8, !tbaa !11
  %17409 = call double @llvm.fmuladd.f64(double 0xBCA5800000000000, double %17408, double %17400)
  %17410 = load ptr, ptr %7, align 8, !tbaa !9
  %17411 = load i32, ptr %12, align 4, !tbaa !5
  %17412 = load i32, ptr %8, align 4, !tbaa !5
  %17413 = mul nsw i32 10, %17412
  %17414 = add nsw i32 %17411, %17413
  %17415 = sext i32 %17414 to i64
  %17416 = getelementptr inbounds double, ptr %17410, i64 %17415
  %17417 = load double, ptr %17416, align 8, !tbaa !11
  %17418 = call double @llvm.fmuladd.f64(double 0x3C93800000000000, double %17417, double %17409)
  %17419 = load ptr, ptr %7, align 8, !tbaa !9
  %17420 = load i32, ptr %12, align 4, !tbaa !5
  %17421 = load i32, ptr %8, align 4, !tbaa !5
  %17422 = mul nsw i32 11, %17421
  %17423 = add nsw i32 %17420, %17422
  %17424 = sext i32 %17423 to i64
  %17425 = getelementptr inbounds double, ptr %17419, i64 %17424
  %17426 = load double, ptr %17425, align 8, !tbaa !11
  %17427 = call double @llvm.fmuladd.f64(double 0xBC70000000000001, double %17426, double %17418)
  %17428 = load ptr, ptr %7, align 8, !tbaa !9
  %17429 = load i32, ptr %12, align 4, !tbaa !5
  %17430 = load i32, ptr %8, align 4, !tbaa !5
  %17431 = mul nsw i32 12, %17430
  %17432 = add nsw i32 %17429, %17431
  %17433 = sext i32 %17432 to i64
  %17434 = getelementptr inbounds double, ptr %17428, i64 %17433
  %17435 = load double, ptr %17434, align 8, !tbaa !11
  %17436 = call double @llvm.fmuladd.f64(double 0xBC93C00000000000, double %17435, double %17427)
  %17437 = load ptr, ptr %7, align 8, !tbaa !9
  %17438 = load i32, ptr %12, align 4, !tbaa !5
  %17439 = load i32, ptr %8, align 4, !tbaa !5
  %17440 = mul nsw i32 13, %17439
  %17441 = add nsw i32 %17438, %17440
  %17442 = sext i32 %17441 to i64
  %17443 = getelementptr inbounds double, ptr %17437, i64 %17442
  %17444 = load double, ptr %17443, align 8, !tbaa !11
  %17445 = call double @llvm.fmuladd.f64(double 0x3C717FFFFFFFFFFF, double %17444, double %17436)
  %17446 = load ptr, ptr %7, align 8, !tbaa !9
  %17447 = load i32, ptr %12, align 4, !tbaa !5
  %17448 = load i32, ptr %8, align 4, !tbaa !5
  %17449 = mul nsw i32 14, %17448
  %17450 = add nsw i32 %17447, %17449
  %17451 = sext i32 %17450 to i64
  %17452 = getelementptr inbounds double, ptr %17446, i64 %17451
  %17453 = load double, ptr %17452, align 8, !tbaa !11
  %17454 = call double @llvm.fmuladd.f64(double 0x3C94000000000000, double %17453, double %17445)
  %17455 = load ptr, ptr %7, align 8, !tbaa !9
  %17456 = load i32, ptr %12, align 4, !tbaa !5
  %17457 = load i32, ptr %8, align 4, !tbaa !5
  %17458 = mul nsw i32 15, %17457
  %17459 = add nsw i32 %17456, %17458
  %17460 = sext i32 %17459 to i64
  %17461 = getelementptr inbounds double, ptr %17455, i64 %17460
  %17462 = load double, ptr %17461, align 8, !tbaa !11
  %17463 = call double @llvm.fmuladd.f64(double 0x3C91800000000000, double %17462, double %17454)
  %17464 = load ptr, ptr %7, align 8, !tbaa !9
  %17465 = load i32, ptr %12, align 4, !tbaa !5
  %17466 = load i32, ptr %8, align 4, !tbaa !5
  %17467 = mul nsw i32 16, %17466
  %17468 = add nsw i32 %17465, %17467
  %17469 = sext i32 %17468 to i64
  %17470 = getelementptr inbounds double, ptr %17464, i64 %17469
  %17471 = load double, ptr %17470, align 8, !tbaa !11
  %17472 = call double @llvm.fmuladd.f64(double 0x3CABF00000000000, double %17471, double %17463)
  %17473 = load ptr, ptr %7, align 8, !tbaa !9
  %17474 = load i32, ptr %12, align 4, !tbaa !5
  %17475 = load i32, ptr %8, align 4, !tbaa !5
  %17476 = mul nsw i32 17, %17475
  %17477 = add nsw i32 %17474, %17476
  %17478 = sext i32 %17477 to i64
  %17479 = getelementptr inbounds double, ptr %17473, i64 %17478
  %17480 = load double, ptr %17479, align 8, !tbaa !11
  %17481 = call double @llvm.fmuladd.f64(double 0xBCB08FFFFFFFFFFF, double %17480, double %17472)
  %17482 = load ptr, ptr %7, align 8, !tbaa !9
  %17483 = load i32, ptr %12, align 4, !tbaa !5
  %17484 = load i32, ptr %8, align 4, !tbaa !5
  %17485 = mul nsw i32 18, %17484
  %17486 = add nsw i32 %17483, %17485
  %17487 = sext i32 %17486 to i64
  %17488 = getelementptr inbounds double, ptr %17482, i64 %17487
  %17489 = load double, ptr %17488, align 8, !tbaa !11
  %17490 = call double @llvm.fmuladd.f64(double 0x3CA0000000000002, double %17489, double %17481)
  %17491 = load ptr, ptr %7, align 8, !tbaa !9
  %17492 = load i32, ptr %12, align 4, !tbaa !5
  %17493 = load i32, ptr %8, align 4, !tbaa !5
  %17494 = mul nsw i32 19, %17493
  %17495 = add nsw i32 %17492, %17494
  %17496 = sext i32 %17495 to i64
  %17497 = getelementptr inbounds double, ptr %17491, i64 %17496
  %17498 = load double, ptr %17497, align 8, !tbaa !11
  %17499 = call double @llvm.fmuladd.f64(double 0xBC50000000000000, double %17498, double %17490)
  %17500 = load ptr, ptr %7, align 8, !tbaa !9
  %17501 = load i32, ptr %12, align 4, !tbaa !5
  %17502 = load i32, ptr %8, align 4, !tbaa !5
  %17503 = mul nsw i32 20, %17502
  %17504 = add nsw i32 %17501, %17503
  %17505 = sext i32 %17504 to i64
  %17506 = getelementptr inbounds double, ptr %17500, i64 %17505
  %17507 = load double, ptr %17506, align 8, !tbaa !11
  %17508 = call double @llvm.fmuladd.f64(double 0x3CA63FFFFFFFFFFF, double %17507, double %17499)
  %17509 = load ptr, ptr %7, align 8, !tbaa !9
  %17510 = load i32, ptr %12, align 4, !tbaa !5
  %17511 = load i32, ptr %8, align 4, !tbaa !5
  %17512 = mul nsw i32 21, %17511
  %17513 = add nsw i32 %17510, %17512
  %17514 = sext i32 %17513 to i64
  %17515 = getelementptr inbounds double, ptr %17509, i64 %17514
  %17516 = load double, ptr %17515, align 8, !tbaa !11
  %17517 = call double @llvm.fmuladd.f64(double 0xBC6C000000000000, double %17516, double %17508)
  %17518 = load ptr, ptr %7, align 8, !tbaa !9
  %17519 = load i32, ptr %12, align 4, !tbaa !5
  %17520 = load i32, ptr %8, align 4, !tbaa !5
  %17521 = mul nsw i32 22, %17520
  %17522 = add nsw i32 %17519, %17521
  %17523 = sext i32 %17522 to i64
  %17524 = getelementptr inbounds double, ptr %17518, i64 %17523
  %17525 = load double, ptr %17524, align 8, !tbaa !11
  %17526 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %17525, double %17517)
  %17527 = load ptr, ptr %7, align 8, !tbaa !9
  %17528 = load i32, ptr %12, align 4, !tbaa !5
  %17529 = load i32, ptr %8, align 4, !tbaa !5
  %17530 = mul nsw i32 23, %17529
  %17531 = add nsw i32 %17528, %17530
  %17532 = sext i32 %17531 to i64
  %17533 = getelementptr inbounds double, ptr %17527, i64 %17532
  %17534 = load double, ptr %17533, align 8, !tbaa !11
  %17535 = call double @llvm.fmuladd.f64(double 0xBC9CDFFFFFFFFFFF, double %17534, double %17526)
  %17536 = load ptr, ptr %7, align 8, !tbaa !9
  %17537 = load i32, ptr %12, align 4, !tbaa !5
  %17538 = load i32, ptr %8, align 4, !tbaa !5
  %17539 = mul nsw i32 24, %17538
  %17540 = add nsw i32 %17537, %17539
  %17541 = sext i32 %17540 to i64
  %17542 = getelementptr inbounds double, ptr %17536, i64 %17541
  %17543 = load double, ptr %17542, align 8, !tbaa !11
  %17544 = call double @llvm.fmuladd.f64(double 0x3CA9000000000000, double %17543, double %17535)
  %17545 = load ptr, ptr %7, align 8, !tbaa !9
  %17546 = load i32, ptr %12, align 4, !tbaa !5
  %17547 = load i32, ptr %8, align 4, !tbaa !5
  %17548 = mul nsw i32 25, %17547
  %17549 = add nsw i32 %17546, %17548
  %17550 = sext i32 %17549 to i64
  %17551 = getelementptr inbounds double, ptr %17545, i64 %17550
  %17552 = load double, ptr %17551, align 8, !tbaa !11
  %17553 = call double @llvm.fmuladd.f64(double 0xBCA3C00000000002, double %17552, double %17544)
  %17554 = load ptr, ptr %7, align 8, !tbaa !9
  %17555 = load i32, ptr %12, align 4, !tbaa !5
  %17556 = load i32, ptr %8, align 4, !tbaa !5
  %17557 = mul nsw i32 26, %17556
  %17558 = add nsw i32 %17555, %17557
  %17559 = sext i32 %17558 to i64
  %17560 = getelementptr inbounds double, ptr %17554, i64 %17559
  %17561 = load double, ptr %17560, align 8, !tbaa !11
  %17562 = call double @llvm.fmuladd.f64(double 0xBC98200000000000, double %17561, double %17553)
  %17563 = load ptr, ptr %7, align 8, !tbaa !9
  %17564 = load i32, ptr %12, align 4, !tbaa !5
  %17565 = load i32, ptr %8, align 4, !tbaa !5
  %17566 = mul nsw i32 27, %17565
  %17567 = add nsw i32 %17564, %17566
  %17568 = sext i32 %17567 to i64
  %17569 = getelementptr inbounds double, ptr %17563, i64 %17568
  %17570 = load double, ptr %17569, align 8, !tbaa !11
  %17571 = call double @llvm.fmuladd.f64(double 0xBCA65FFFFFFFFFFF, double %17570, double %17562)
  %17572 = load ptr, ptr %7, align 8, !tbaa !9
  %17573 = load i32, ptr %12, align 4, !tbaa !5
  %17574 = load i32, ptr %8, align 4, !tbaa !5
  %17575 = mul nsw i32 28, %17574
  %17576 = add nsw i32 %17573, %17575
  %17577 = sext i32 %17576 to i64
  %17578 = getelementptr inbounds double, ptr %17572, i64 %17577
  %17579 = load double, ptr %17578, align 8, !tbaa !11
  %17580 = call double @llvm.fmuladd.f64(double 0x3C93800000000000, double %17579, double %17571)
  %17581 = load ptr, ptr %7, align 8, !tbaa !9
  %17582 = load i32, ptr %12, align 4, !tbaa !5
  %17583 = load i32, ptr %8, align 4, !tbaa !5
  %17584 = mul nsw i32 29, %17583
  %17585 = add nsw i32 %17582, %17584
  %17586 = sext i32 %17585 to i64
  %17587 = getelementptr inbounds double, ptr %17581, i64 %17586
  %17588 = load double, ptr %17587, align 8, !tbaa !11
  %17589 = call double @llvm.fmuladd.f64(double 0x3C7FFFFFFFFFFFFF, double %17588, double %17580)
  %17590 = load ptr, ptr %7, align 8, !tbaa !9
  %17591 = load i32, ptr %12, align 4, !tbaa !5
  %17592 = load i32, ptr %8, align 4, !tbaa !5
  %17593 = mul nsw i32 30, %17592
  %17594 = add nsw i32 %17591, %17593
  %17595 = sext i32 %17594 to i64
  %17596 = getelementptr inbounds double, ptr %17590, i64 %17595
  %17597 = load double, ptr %17596, align 8, !tbaa !11
  %17598 = call double @llvm.fmuladd.f64(double 0xBF83152016E0EC5C, double %17597, double %17589)
  %17599 = load ptr, ptr %7, align 8, !tbaa !9
  %17600 = load i32, ptr %12, align 4, !tbaa !5
  %17601 = load i32, ptr %8, align 4, !tbaa !5
  %17602 = mul nsw i32 31, %17601
  %17603 = add nsw i32 %17600, %17602
  %17604 = sext i32 %17603 to i64
  %17605 = getelementptr inbounds double, ptr %17599, i64 %17604
  %17606 = load double, ptr %17605, align 8, !tbaa !11
  %17607 = call double @llvm.fmuladd.f64(double 0x3F938CE4890DB2DC, double %17606, double %17598)
  %17608 = load ptr, ptr %7, align 8, !tbaa !9
  %17609 = load i32, ptr %12, align 4, !tbaa !5
  %17610 = load i32, ptr %8, align 4, !tbaa !5
  %17611 = mul nsw i32 32, %17610
  %17612 = add nsw i32 %17609, %17611
  %17613 = sext i32 %17612 to i64
  %17614 = getelementptr inbounds double, ptr %17608, i64 %17613
  %17615 = load double, ptr %17614, align 8, !tbaa !11
  %17616 = call double @llvm.fmuladd.f64(double 0xBFB5B58B4F03B1AA, double %17615, double %17607)
  %17617 = load ptr, ptr %7, align 8, !tbaa !9
  %17618 = load i32, ptr %12, align 4, !tbaa !5
  %17619 = load i32, ptr %8, align 4, !tbaa !5
  %17620 = mul nsw i32 33, %17619
  %17621 = add nsw i32 %17618, %17620
  %17622 = sext i32 %17621 to i64
  %17623 = getelementptr inbounds double, ptr %17617, i64 %17622
  %17624 = load double, ptr %17623, align 8, !tbaa !11
  %17625 = call double @llvm.fmuladd.f64(double 0x3FF4EC1BB3FDC612, double %17624, double %17616)
  %17626 = load ptr, ptr %7, align 8, !tbaa !9
  %17627 = load i32, ptr %12, align 4, !tbaa !5
  %17628 = load i32, ptr %8, align 4, !tbaa !5
  %17629 = mul nsw i32 34, %17628
  %17630 = add nsw i32 %17627, %17629
  %17631 = sext i32 %17630 to i64
  %17632 = getelementptr inbounds double, ptr %17626, i64 %17631
  %17633 = load double, ptr %17632, align 8, !tbaa !11
  %17634 = call double @llvm.fmuladd.f64(double 0xBF8BDAF699AECF71, double %17633, double %17625)
  %17635 = load ptr, ptr %7, align 8, !tbaa !9
  %17636 = load i32, ptr %12, align 4, !tbaa !5
  %17637 = load i32, ptr %8, align 4, !tbaa !5
  %17638 = mul nsw i32 35, %17637
  %17639 = add nsw i32 %17636, %17638
  %17640 = sext i32 %17639 to i64
  %17641 = getelementptr inbounds double, ptr %17635, i64 %17640
  %17642 = load double, ptr %17641, align 8, !tbaa !11
  %17643 = call double @llvm.fmuladd.f64(double 0x3FCA50C41AB7A329, double %17642, double %17634)
  %17644 = load ptr, ptr %7, align 8, !tbaa !9
  %17645 = load i32, ptr %12, align 4, !tbaa !5
  %17646 = load i32, ptr %8, align 4, !tbaa !5
  %17647 = mul nsw i32 36, %17646
  %17648 = add nsw i32 %17645, %17647
  %17649 = sext i32 %17648 to i64
  %17650 = getelementptr inbounds double, ptr %17644, i64 %17649
  %17651 = load double, ptr %17650, align 8, !tbaa !11
  %17652 = call double @llvm.fmuladd.f64(double 0xBFE5679E70A60655, double %17651, double %17643)
  %17653 = load ptr, ptr %7, align 8, !tbaa !9
  %17654 = load i32, ptr %12, align 4, !tbaa !5
  %17655 = load i32, ptr %8, align 4, !tbaa !5
  %17656 = mul nsw i32 37, %17655
  %17657 = add nsw i32 %17654, %17656
  %17658 = sext i32 %17657 to i64
  %17659 = getelementptr inbounds double, ptr %17653, i64 %17658
  %17660 = load double, ptr %17659, align 8, !tbaa !11
  %17661 = call double @llvm.fmuladd.f64(double 0x3FD417DEBFC17B1A, double %17660, double %17652)
  %17662 = load ptr, ptr %7, align 8, !tbaa !9
  %17663 = load i32, ptr %12, align 4, !tbaa !5
  %17664 = load i32, ptr %8, align 4, !tbaa !5
  %17665 = mul nsw i32 38, %17664
  %17666 = add nsw i32 %17663, %17665
  %17667 = sext i32 %17666 to i64
  %17668 = getelementptr inbounds double, ptr %17662, i64 %17667
  %17669 = load double, ptr %17668, align 8, !tbaa !11
  %17670 = call double @llvm.fmuladd.f64(double 0xBFB49217631F5947, double %17669, double %17661)
  %17671 = load ptr, ptr %7, align 8, !tbaa !9
  %17672 = load i32, ptr %12, align 4, !tbaa !5
  %17673 = load i32, ptr %8, align 4, !tbaa !5
  %17674 = mul nsw i32 39, %17673
  %17675 = add nsw i32 %17672, %17674
  %17676 = sext i32 %17675 to i64
  %17677 = getelementptr inbounds double, ptr %17671, i64 %17676
  %17678 = load double, ptr %17677, align 8, !tbaa !11
  %17679 = call double @llvm.fmuladd.f64(double 0x3F85E50BB681A448, double %17678, double %17670)
  store double %17679, ptr %11, align 8, !tbaa !11
  %17680 = load double, ptr %11, align 8, !tbaa !11
  %17681 = load ptr, ptr %9, align 8, !tbaa !9
  %17682 = load i32, ptr %12, align 4, !tbaa !5
  %17683 = load i32, ptr %10, align 4, !tbaa !5
  %17684 = mul nsw i32 48, %17683
  %17685 = add nsw i32 %17682, %17684
  %17686 = sext i32 %17685 to i64
  %17687 = getelementptr inbounds double, ptr %17681, i64 %17686
  %17688 = load double, ptr %17687, align 8, !tbaa !11
  %17689 = fadd double %17688, %17680
  store double %17689, ptr %17687, align 8, !tbaa !11
  %17690 = load ptr, ptr %7, align 8, !tbaa !9
  %17691 = load i32, ptr %12, align 4, !tbaa !5
  %17692 = load i32, ptr %8, align 4, !tbaa !5
  %17693 = mul nsw i32 0, %17692
  %17694 = add nsw i32 %17691, %17693
  %17695 = sext i32 %17694 to i64
  %17696 = getelementptr inbounds double, ptr %17690, i64 %17695
  %17697 = load double, ptr %17696, align 8, !tbaa !11
  %17698 = load ptr, ptr %7, align 8, !tbaa !9
  %17699 = load i32, ptr %12, align 4, !tbaa !5
  %17700 = load i32, ptr %8, align 4, !tbaa !5
  %17701 = mul nsw i32 1, %17700
  %17702 = add nsw i32 %17699, %17701
  %17703 = sext i32 %17702 to i64
  %17704 = getelementptr inbounds double, ptr %17698, i64 %17703
  %17705 = load double, ptr %17704, align 8, !tbaa !11
  %17706 = fmul double 0xBCA5FFFFFFFFFFFF, %17705
  %17707 = call double @llvm.fmuladd.f64(double 0x3CB0000000000000, double %17697, double %17706)
  %17708 = load ptr, ptr %7, align 8, !tbaa !9
  %17709 = load i32, ptr %12, align 4, !tbaa !5
  %17710 = load i32, ptr %8, align 4, !tbaa !5
  %17711 = mul nsw i32 2, %17710
  %17712 = add nsw i32 %17709, %17711
  %17713 = sext i32 %17712 to i64
  %17714 = getelementptr inbounds double, ptr %17708, i64 %17713
  %17715 = load double, ptr %17714, align 8, !tbaa !11
  %17716 = call double @llvm.fmuladd.f64(double 0x3C86C00000000000, double %17715, double %17707)
  %17717 = load ptr, ptr %7, align 8, !tbaa !9
  %17718 = load i32, ptr %12, align 4, !tbaa !5
  %17719 = load i32, ptr %8, align 4, !tbaa !5
  %17720 = mul nsw i32 3, %17719
  %17721 = add nsw i32 %17718, %17720
  %17722 = sext i32 %17721 to i64
  %17723 = getelementptr inbounds double, ptr %17717, i64 %17722
  %17724 = load double, ptr %17723, align 8, !tbaa !11
  %17725 = call double @llvm.fmuladd.f64(double 0x3CBCAFFFFFFFFFFF, double %17724, double %17716)
  %17726 = load ptr, ptr %7, align 8, !tbaa !9
  %17727 = load i32, ptr %12, align 4, !tbaa !5
  %17728 = load i32, ptr %8, align 4, !tbaa !5
  %17729 = mul nsw i32 4, %17728
  %17730 = add nsw i32 %17727, %17729
  %17731 = sext i32 %17730 to i64
  %17732 = getelementptr inbounds double, ptr %17726, i64 %17731
  %17733 = load double, ptr %17732, align 8, !tbaa !11
  %17734 = call double @llvm.fmuladd.f64(double 0x3C94400000000000, double %17733, double %17725)
  %17735 = load ptr, ptr %7, align 8, !tbaa !9
  %17736 = load i32, ptr %12, align 4, !tbaa !5
  %17737 = load i32, ptr %8, align 4, !tbaa !5
  %17738 = mul nsw i32 5, %17737
  %17739 = add nsw i32 %17736, %17738
  %17740 = sext i32 %17739 to i64
  %17741 = getelementptr inbounds double, ptr %17735, i64 %17740
  %17742 = load double, ptr %17741, align 8, !tbaa !11
  %17743 = call double @llvm.fmuladd.f64(double 0xBC9B800000000000, double %17742, double %17734)
  %17744 = load ptr, ptr %7, align 8, !tbaa !9
  %17745 = load i32, ptr %12, align 4, !tbaa !5
  %17746 = load i32, ptr %8, align 4, !tbaa !5
  %17747 = mul nsw i32 6, %17746
  %17748 = add nsw i32 %17745, %17747
  %17749 = sext i32 %17748 to i64
  %17750 = getelementptr inbounds double, ptr %17744, i64 %17749
  %17751 = load double, ptr %17750, align 8, !tbaa !11
  %17752 = call double @llvm.fmuladd.f64(double 0x3C91800000000000, double %17751, double %17743)
  %17753 = load ptr, ptr %7, align 8, !tbaa !9
  %17754 = load i32, ptr %12, align 4, !tbaa !5
  %17755 = load i32, ptr %8, align 4, !tbaa !5
  %17756 = mul nsw i32 7, %17755
  %17757 = add nsw i32 %17754, %17756
  %17758 = sext i32 %17757 to i64
  %17759 = getelementptr inbounds double, ptr %17753, i64 %17758
  %17760 = load double, ptr %17759, align 8, !tbaa !11
  %17761 = call double @llvm.fmuladd.f64(double 0xBC71FFFFFFFFFFFF, double %17760, double %17752)
  %17762 = load ptr, ptr %7, align 8, !tbaa !9
  %17763 = load i32, ptr %12, align 4, !tbaa !5
  %17764 = load i32, ptr %8, align 4, !tbaa !5
  %17765 = mul nsw i32 8, %17764
  %17766 = add nsw i32 %17763, %17765
  %17767 = sext i32 %17766 to i64
  %17768 = getelementptr inbounds double, ptr %17762, i64 %17767
  %17769 = load double, ptr %17768, align 8, !tbaa !11
  %17770 = call double @llvm.fmuladd.f64(double 0x3CA1800000000000, double %17769, double %17761)
  %17771 = load ptr, ptr %7, align 8, !tbaa !9
  %17772 = load i32, ptr %12, align 4, !tbaa !5
  %17773 = load i32, ptr %8, align 4, !tbaa !5
  %17774 = mul nsw i32 9, %17773
  %17775 = add nsw i32 %17772, %17774
  %17776 = sext i32 %17775 to i64
  %17777 = getelementptr inbounds double, ptr %17771, i64 %17776
  %17778 = load double, ptr %17777, align 8, !tbaa !11
  %17779 = call double @llvm.fmuladd.f64(double 0xBC9C000000000000, double %17778, double %17770)
  %17780 = load ptr, ptr %7, align 8, !tbaa !9
  %17781 = load i32, ptr %12, align 4, !tbaa !5
  %17782 = load i32, ptr %8, align 4, !tbaa !5
  %17783 = mul nsw i32 10, %17782
  %17784 = add nsw i32 %17781, %17783
  %17785 = sext i32 %17784 to i64
  %17786 = getelementptr inbounds double, ptr %17780, i64 %17785
  %17787 = load double, ptr %17786, align 8, !tbaa !11
  %17788 = call double @llvm.fmuladd.f64(double 0xBC60000000000000, double %17787, double %17779)
  %17789 = load ptr, ptr %7, align 8, !tbaa !9
  %17790 = load i32, ptr %12, align 4, !tbaa !5
  %17791 = load i32, ptr %8, align 4, !tbaa !5
  %17792 = mul nsw i32 11, %17791
  %17793 = add nsw i32 %17790, %17792
  %17794 = sext i32 %17793 to i64
  %17795 = getelementptr inbounds double, ptr %17789, i64 %17794
  %17796 = load double, ptr %17795, align 8, !tbaa !11
  %17797 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %17796, double %17788)
  %17798 = load ptr, ptr %7, align 8, !tbaa !9
  %17799 = load i32, ptr %12, align 4, !tbaa !5
  %17800 = load i32, ptr %8, align 4, !tbaa !5
  %17801 = mul nsw i32 12, %17800
  %17802 = add nsw i32 %17799, %17801
  %17803 = sext i32 %17802 to i64
  %17804 = getelementptr inbounds double, ptr %17798, i64 %17803
  %17805 = load double, ptr %17804, align 8, !tbaa !11
  %17806 = call double @llvm.fmuladd.f64(double 0xBC7B000000000001, double %17805, double %17797)
  %17807 = load ptr, ptr %7, align 8, !tbaa !9
  %17808 = load i32, ptr %12, align 4, !tbaa !5
  %17809 = load i32, ptr %8, align 4, !tbaa !5
  %17810 = mul nsw i32 13, %17809
  %17811 = add nsw i32 %17808, %17810
  %17812 = sext i32 %17811 to i64
  %17813 = getelementptr inbounds double, ptr %17807, i64 %17812
  %17814 = load double, ptr %17813, align 8, !tbaa !11
  %17815 = call double @llvm.fmuladd.f64(double 0xBC97800000000000, double %17814, double %17806)
  %17816 = load ptr, ptr %7, align 8, !tbaa !9
  %17817 = load i32, ptr %12, align 4, !tbaa !5
  %17818 = load i32, ptr %8, align 4, !tbaa !5
  %17819 = mul nsw i32 14, %17818
  %17820 = add nsw i32 %17817, %17819
  %17821 = sext i32 %17820 to i64
  %17822 = getelementptr inbounds double, ptr %17816, i64 %17821
  %17823 = load double, ptr %17822, align 8, !tbaa !11
  %17824 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %17823, double %17815)
  %17825 = load ptr, ptr %7, align 8, !tbaa !9
  %17826 = load i32, ptr %12, align 4, !tbaa !5
  %17827 = load i32, ptr %8, align 4, !tbaa !5
  %17828 = mul nsw i32 15, %17827
  %17829 = add nsw i32 %17826, %17828
  %17830 = sext i32 %17829 to i64
  %17831 = getelementptr inbounds double, ptr %17825, i64 %17830
  %17832 = load double, ptr %17831, align 8, !tbaa !11
  %17833 = call double @llvm.fmuladd.f64(double 0x3C93000000000000, double %17832, double %17824)
  %17834 = load ptr, ptr %7, align 8, !tbaa !9
  %17835 = load i32, ptr %12, align 4, !tbaa !5
  %17836 = load i32, ptr %8, align 4, !tbaa !5
  %17837 = mul nsw i32 16, %17836
  %17838 = add nsw i32 %17835, %17837
  %17839 = sext i32 %17838 to i64
  %17840 = getelementptr inbounds double, ptr %17834, i64 %17839
  %17841 = load double, ptr %17840, align 8, !tbaa !11
  %17842 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %17841, double %17833)
  %17843 = load ptr, ptr %7, align 8, !tbaa !9
  %17844 = load i32, ptr %12, align 4, !tbaa !5
  %17845 = load i32, ptr %8, align 4, !tbaa !5
  %17846 = mul nsw i32 17, %17845
  %17847 = add nsw i32 %17844, %17846
  %17848 = sext i32 %17847 to i64
  %17849 = getelementptr inbounds double, ptr %17843, i64 %17848
  %17850 = load double, ptr %17849, align 8, !tbaa !11
  %17851 = call double @llvm.fmuladd.f64(double 0xBCB4600000000001, double %17850, double %17842)
  %17852 = load ptr, ptr %7, align 8, !tbaa !9
  %17853 = load i32, ptr %12, align 4, !tbaa !5
  %17854 = load i32, ptr %8, align 4, !tbaa !5
  %17855 = mul nsw i32 18, %17854
  %17856 = add nsw i32 %17853, %17855
  %17857 = sext i32 %17856 to i64
  %17858 = getelementptr inbounds double, ptr %17852, i64 %17857
  %17859 = load double, ptr %17858, align 8, !tbaa !11
  %17860 = call double @llvm.fmuladd.f64(double 0x3C99000000000000, double %17859, double %17851)
  %17861 = load ptr, ptr %7, align 8, !tbaa !9
  %17862 = load i32, ptr %12, align 4, !tbaa !5
  %17863 = load i32, ptr %8, align 4, !tbaa !5
  %17864 = mul nsw i32 19, %17863
  %17865 = add nsw i32 %17862, %17864
  %17866 = sext i32 %17865 to i64
  %17867 = getelementptr inbounds double, ptr %17861, i64 %17866
  %17868 = load double, ptr %17867, align 8, !tbaa !11
  %17869 = call double @llvm.fmuladd.f64(double 0x3C9DFFFFFFFFFFFE, double %17868, double %17860)
  %17870 = load ptr, ptr %7, align 8, !tbaa !9
  %17871 = load i32, ptr %12, align 4, !tbaa !5
  %17872 = load i32, ptr %8, align 4, !tbaa !5
  %17873 = mul nsw i32 20, %17872
  %17874 = add nsw i32 %17871, %17873
  %17875 = sext i32 %17874 to i64
  %17876 = getelementptr inbounds double, ptr %17870, i64 %17875
  %17877 = load double, ptr %17876, align 8, !tbaa !11
  %17878 = call double @llvm.fmuladd.f64(double 0x3CB07FFFFFFFFFFF, double %17877, double %17869)
  %17879 = load ptr, ptr %7, align 8, !tbaa !9
  %17880 = load i32, ptr %12, align 4, !tbaa !5
  %17881 = load i32, ptr %8, align 4, !tbaa !5
  %17882 = mul nsw i32 21, %17881
  %17883 = add nsw i32 %17880, %17882
  %17884 = sext i32 %17883 to i64
  %17885 = getelementptr inbounds double, ptr %17879, i64 %17884
  %17886 = load double, ptr %17885, align 8, !tbaa !11
  %17887 = call double @llvm.fmuladd.f64(double 0x3C96000000000000, double %17886, double %17878)
  %17888 = load ptr, ptr %7, align 8, !tbaa !9
  %17889 = load i32, ptr %12, align 4, !tbaa !5
  %17890 = load i32, ptr %8, align 4, !tbaa !5
  %17891 = mul nsw i32 22, %17890
  %17892 = add nsw i32 %17889, %17891
  %17893 = sext i32 %17892 to i64
  %17894 = getelementptr inbounds double, ptr %17888, i64 %17893
  %17895 = load double, ptr %17894, align 8, !tbaa !11
  %17896 = call double @llvm.fmuladd.f64(double 0xBC7E000000000001, double %17895, double %17887)
  %17897 = load ptr, ptr %7, align 8, !tbaa !9
  %17898 = load i32, ptr %12, align 4, !tbaa !5
  %17899 = load i32, ptr %8, align 4, !tbaa !5
  %17900 = mul nsw i32 23, %17899
  %17901 = add nsw i32 %17898, %17900
  %17902 = sext i32 %17901 to i64
  %17903 = getelementptr inbounds double, ptr %17897, i64 %17902
  %17904 = load double, ptr %17903, align 8, !tbaa !11
  %17905 = call double @llvm.fmuladd.f64(double 0xBCB4F00000000000, double %17904, double %17896)
  %17906 = load ptr, ptr %7, align 8, !tbaa !9
  %17907 = load i32, ptr %12, align 4, !tbaa !5
  %17908 = load i32, ptr %8, align 4, !tbaa !5
  %17909 = mul nsw i32 24, %17908
  %17910 = add nsw i32 %17907, %17909
  %17911 = sext i32 %17910 to i64
  %17912 = getelementptr inbounds double, ptr %17906, i64 %17911
  %17913 = load double, ptr %17912, align 8, !tbaa !11
  %17914 = call double @llvm.fmuladd.f64(double 0x3CA9FFFFFFFFFFFE, double %17913, double %17905)
  %17915 = load ptr, ptr %7, align 8, !tbaa !9
  %17916 = load i32, ptr %12, align 4, !tbaa !5
  %17917 = load i32, ptr %8, align 4, !tbaa !5
  %17918 = mul nsw i32 25, %17917
  %17919 = add nsw i32 %17916, %17918
  %17920 = sext i32 %17919 to i64
  %17921 = getelementptr inbounds double, ptr %17915, i64 %17920
  %17922 = load double, ptr %17921, align 8, !tbaa !11
  %17923 = call double @llvm.fmuladd.f64(double 0xBCB9C00000000001, double %17922, double %17914)
  %17924 = load ptr, ptr %7, align 8, !tbaa !9
  %17925 = load i32, ptr %12, align 4, !tbaa !5
  %17926 = load i32, ptr %8, align 4, !tbaa !5
  %17927 = mul nsw i32 26, %17926
  %17928 = add nsw i32 %17925, %17927
  %17929 = sext i32 %17928 to i64
  %17930 = getelementptr inbounds double, ptr %17924, i64 %17929
  %17931 = load double, ptr %17930, align 8, !tbaa !11
  %17932 = call double @llvm.fmuladd.f64(double 0xBC90800000000000, double %17931, double %17923)
  %17933 = load ptr, ptr %7, align 8, !tbaa !9
  %17934 = load i32, ptr %12, align 4, !tbaa !5
  %17935 = load i32, ptr %8, align 4, !tbaa !5
  %17936 = mul nsw i32 27, %17935
  %17937 = add nsw i32 %17934, %17936
  %17938 = sext i32 %17937 to i64
  %17939 = getelementptr inbounds double, ptr %17933, i64 %17938
  %17940 = load double, ptr %17939, align 8, !tbaa !11
  %17941 = call double @llvm.fmuladd.f64(double 0x3C8D800000000000, double %17940, double %17932)
  %17942 = load ptr, ptr %7, align 8, !tbaa !9
  %17943 = load i32, ptr %12, align 4, !tbaa !5
  %17944 = load i32, ptr %8, align 4, !tbaa !5
  %17945 = mul nsw i32 28, %17944
  %17946 = add nsw i32 %17943, %17945
  %17947 = sext i32 %17946 to i64
  %17948 = getelementptr inbounds double, ptr %17942, i64 %17947
  %17949 = load double, ptr %17948, align 8, !tbaa !11
  %17950 = call double @llvm.fmuladd.f64(double 0x3C70000000000001, double %17949, double %17941)
  %17951 = load ptr, ptr %7, align 8, !tbaa !9
  %17952 = load i32, ptr %12, align 4, !tbaa !5
  %17953 = load i32, ptr %8, align 4, !tbaa !5
  %17954 = mul nsw i32 29, %17953
  %17955 = add nsw i32 %17952, %17954
  %17956 = sext i32 %17955 to i64
  %17957 = getelementptr inbounds double, ptr %17951, i64 %17956
  %17958 = load double, ptr %17957, align 8, !tbaa !11
  %17959 = call double @llvm.fmuladd.f64(double 0xBC78000000000002, double %17958, double %17950)
  %17960 = load ptr, ptr %7, align 8, !tbaa !9
  %17961 = load i32, ptr %12, align 4, !tbaa !5
  %17962 = load i32, ptr %8, align 4, !tbaa !5
  %17963 = mul nsw i32 30, %17962
  %17964 = add nsw i32 %17961, %17963
  %17965 = sext i32 %17964 to i64
  %17966 = getelementptr inbounds double, ptr %17960, i64 %17965
  %17967 = load double, ptr %17966, align 8, !tbaa !11
  %17968 = call double @llvm.fmuladd.f64(double 0xBFE333710B32A29C, double %17967, double %17959)
  %17969 = load ptr, ptr %7, align 8, !tbaa !9
  %17970 = load i32, ptr %12, align 4, !tbaa !5
  %17971 = load i32, ptr %8, align 4, !tbaa !5
  %17972 = mul nsw i32 31, %17971
  %17973 = add nsw i32 %17970, %17972
  %17974 = sext i32 %17973 to i64
  %17975 = getelementptr inbounds double, ptr %17969, i64 %17974
  %17976 = load double, ptr %17975, align 8, !tbaa !11
  %17977 = call double @llvm.fmuladd.f64(double 0xBFA352D4DB969C02, double %17976, double %17968)
  %17978 = load ptr, ptr %7, align 8, !tbaa !9
  %17979 = load i32, ptr %12, align 4, !tbaa !5
  %17980 = load i32, ptr %8, align 4, !tbaa !5
  %17981 = mul nsw i32 32, %17980
  %17982 = add nsw i32 %17979, %17981
  %17983 = sext i32 %17982 to i64
  %17984 = getelementptr inbounds double, ptr %17978, i64 %17983
  %17985 = load double, ptr %17984, align 8, !tbaa !11
  %17986 = call double @llvm.fmuladd.f64(double 0xBFBEED13A9F0D910, double %17985, double %17977)
  %17987 = load ptr, ptr %7, align 8, !tbaa !9
  %17988 = load i32, ptr %12, align 4, !tbaa !5
  %17989 = load i32, ptr %8, align 4, !tbaa !5
  %17990 = mul nsw i32 33, %17989
  %17991 = add nsw i32 %17988, %17990
  %17992 = sext i32 %17991 to i64
  %17993 = getelementptr inbounds double, ptr %17987, i64 %17992
  %17994 = load double, ptr %17993, align 8, !tbaa !11
  %17995 = call double @llvm.fmuladd.f64(double 0x3FA87D7643548543, double %17994, double %17986)
  %17996 = load ptr, ptr %7, align 8, !tbaa !9
  %17997 = load i32, ptr %12, align 4, !tbaa !5
  %17998 = load i32, ptr %8, align 4, !tbaa !5
  %17999 = mul nsw i32 34, %17998
  %18000 = add nsw i32 %17997, %17999
  %18001 = sext i32 %18000 to i64
  %18002 = getelementptr inbounds double, ptr %17996, i64 %18001
  %18003 = load double, ptr %18002, align 8, !tbaa !11
  %18004 = call double @llvm.fmuladd.f64(double 0x3FC27B05E24EC5F8, double %18003, double %17995)
  %18005 = load ptr, ptr %7, align 8, !tbaa !9
  %18006 = load i32, ptr %12, align 4, !tbaa !5
  %18007 = load i32, ptr %8, align 4, !tbaa !5
  %18008 = mul nsw i32 35, %18007
  %18009 = add nsw i32 %18006, %18008
  %18010 = sext i32 %18009 to i64
  %18011 = getelementptr inbounds double, ptr %18005, i64 %18010
  %18012 = load double, ptr %18011, align 8, !tbaa !11
  %18013 = call double @llvm.fmuladd.f64(double 0x3FF670C5F1F4C92E, double %18012, double %18004)
  %18014 = load ptr, ptr %7, align 8, !tbaa !9
  %18015 = load i32, ptr %12, align 4, !tbaa !5
  %18016 = load i32, ptr %8, align 4, !tbaa !5
  %18017 = mul nsw i32 36, %18016
  %18018 = add nsw i32 %18015, %18017
  %18019 = sext i32 %18018 to i64
  %18020 = getelementptr inbounds double, ptr %18014, i64 %18019
  %18021 = load double, ptr %18020, align 8, !tbaa !11
  %18022 = call double @llvm.fmuladd.f64(double 0xBFD41C0D131D4297, double %18021, double %18013)
  %18023 = load ptr, ptr %7, align 8, !tbaa !9
  %18024 = load i32, ptr %12, align 4, !tbaa !5
  %18025 = load i32, ptr %8, align 4, !tbaa !5
  %18026 = mul nsw i32 37, %18025
  %18027 = add nsw i32 %18024, %18026
  %18028 = sext i32 %18027 to i64
  %18029 = getelementptr inbounds double, ptr %18023, i64 %18028
  %18030 = load double, ptr %18029, align 8, !tbaa !11
  %18031 = call double @llvm.fmuladd.f64(double 0x3FD35DAE88CBA64D, double %18030, double %18022)
  %18032 = load ptr, ptr %7, align 8, !tbaa !9
  %18033 = load i32, ptr %12, align 4, !tbaa !5
  %18034 = load i32, ptr %8, align 4, !tbaa !5
  %18035 = mul nsw i32 38, %18034
  %18036 = add nsw i32 %18033, %18035
  %18037 = sext i32 %18036 to i64
  %18038 = getelementptr inbounds double, ptr %18032, i64 %18037
  %18039 = load double, ptr %18038, align 8, !tbaa !11
  %18040 = call double @llvm.fmuladd.f64(double 0x3FC36A9134CD3C5C, double %18039, double %18031)
  %18041 = load ptr, ptr %7, align 8, !tbaa !9
  %18042 = load i32, ptr %12, align 4, !tbaa !5
  %18043 = load i32, ptr %8, align 4, !tbaa !5
  %18044 = mul nsw i32 39, %18043
  %18045 = add nsw i32 %18042, %18044
  %18046 = sext i32 %18045 to i64
  %18047 = getelementptr inbounds double, ptr %18041, i64 %18046
  %18048 = load double, ptr %18047, align 8, !tbaa !11
  %18049 = call double @llvm.fmuladd.f64(double 0x3F9854E0ADA34BAF, double %18048, double %18040)
  store double %18049, ptr %11, align 8, !tbaa !11
  %18050 = load double, ptr %11, align 8, !tbaa !11
  %18051 = load ptr, ptr %9, align 8, !tbaa !9
  %18052 = load i32, ptr %12, align 4, !tbaa !5
  %18053 = load i32, ptr %10, align 4, !tbaa !5
  %18054 = mul nsw i32 49, %18053
  %18055 = add nsw i32 %18052, %18054
  %18056 = sext i32 %18055 to i64
  %18057 = getelementptr inbounds double, ptr %18051, i64 %18056
  %18058 = load double, ptr %18057, align 8, !tbaa !11
  %18059 = fadd double %18058, %18050
  store double %18059, ptr %18057, align 8, !tbaa !11
  %18060 = load ptr, ptr %7, align 8, !tbaa !9
  %18061 = load i32, ptr %12, align 4, !tbaa !5
  %18062 = load i32, ptr %8, align 4, !tbaa !5
  %18063 = mul nsw i32 0, %18062
  %18064 = add nsw i32 %18061, %18063
  %18065 = sext i32 %18064 to i64
  %18066 = getelementptr inbounds double, ptr %18060, i64 %18065
  %18067 = load double, ptr %18066, align 8, !tbaa !11
  %18068 = load ptr, ptr %7, align 8, !tbaa !9
  %18069 = load i32, ptr %12, align 4, !tbaa !5
  %18070 = load i32, ptr %8, align 4, !tbaa !5
  %18071 = mul nsw i32 1, %18070
  %18072 = add nsw i32 %18069, %18071
  %18073 = sext i32 %18072 to i64
  %18074 = getelementptr inbounds double, ptr %18068, i64 %18073
  %18075 = load double, ptr %18074, align 8, !tbaa !11
  %18076 = fmul double 0xBCC0200000000000, %18075
  %18077 = call double @llvm.fmuladd.f64(double 0x3CB07FFFFFFFFFFF, double %18067, double %18076)
  %18078 = load ptr, ptr %7, align 8, !tbaa !9
  %18079 = load i32, ptr %12, align 4, !tbaa !5
  %18080 = load i32, ptr %8, align 4, !tbaa !5
  %18081 = mul nsw i32 2, %18080
  %18082 = add nsw i32 %18079, %18081
  %18083 = sext i32 %18082 to i64
  %18084 = getelementptr inbounds double, ptr %18078, i64 %18083
  %18085 = load double, ptr %18084, align 8, !tbaa !11
  %18086 = call double @llvm.fmuladd.f64(double 0x3C94400000000000, double %18085, double %18077)
  %18087 = load ptr, ptr %7, align 8, !tbaa !9
  %18088 = load i32, ptr %12, align 4, !tbaa !5
  %18089 = load i32, ptr %8, align 4, !tbaa !5
  %18090 = mul nsw i32 3, %18089
  %18091 = add nsw i32 %18088, %18090
  %18092 = sext i32 %18091 to i64
  %18093 = getelementptr inbounds double, ptr %18087, i64 %18092
  %18094 = load double, ptr %18093, align 8, !tbaa !11
  %18095 = call double @llvm.fmuladd.f64(double 0x3CA0E00000000001, double %18094, double %18086)
  %18096 = load ptr, ptr %7, align 8, !tbaa !9
  %18097 = load i32, ptr %12, align 4, !tbaa !5
  %18098 = load i32, ptr %8, align 4, !tbaa !5
  %18099 = mul nsw i32 4, %18098
  %18100 = add nsw i32 %18097, %18099
  %18101 = sext i32 %18100 to i64
  %18102 = getelementptr inbounds double, ptr %18096, i64 %18101
  %18103 = load double, ptr %18102, align 8, !tbaa !11
  %18104 = call double @llvm.fmuladd.f64(double 0xBCC0700000000000, double %18103, double %18095)
  %18105 = load ptr, ptr %7, align 8, !tbaa !9
  %18106 = load i32, ptr %12, align 4, !tbaa !5
  %18107 = load i32, ptr %8, align 4, !tbaa !5
  %18108 = mul nsw i32 5, %18107
  %18109 = add nsw i32 %18106, %18108
  %18110 = sext i32 %18109 to i64
  %18111 = getelementptr inbounds double, ptr %18105, i64 %18110
  %18112 = load double, ptr %18111, align 8, !tbaa !11
  %18113 = call double @llvm.fmuladd.f64(double 0xBC89000000000000, double %18112, double %18104)
  %18114 = load ptr, ptr %7, align 8, !tbaa !9
  %18115 = load i32, ptr %12, align 4, !tbaa !5
  %18116 = load i32, ptr %8, align 4, !tbaa !5
  %18117 = mul nsw i32 6, %18116
  %18118 = add nsw i32 %18115, %18117
  %18119 = sext i32 %18118 to i64
  %18120 = getelementptr inbounds double, ptr %18114, i64 %18119
  %18121 = load double, ptr %18120, align 8, !tbaa !11
  %18122 = call double @llvm.fmuladd.f64(double 0xBC66000000000000, double %18121, double %18113)
  %18123 = load ptr, ptr %7, align 8, !tbaa !9
  %18124 = load i32, ptr %12, align 4, !tbaa !5
  %18125 = load i32, ptr %8, align 4, !tbaa !5
  %18126 = mul nsw i32 7, %18125
  %18127 = add nsw i32 %18124, %18126
  %18128 = sext i32 %18127 to i64
  %18129 = getelementptr inbounds double, ptr %18123, i64 %18128
  %18130 = load double, ptr %18129, align 8, !tbaa !11
  %18131 = call double @llvm.fmuladd.f64(double 0x3CA4A00000000001, double %18130, double %18122)
  %18132 = load ptr, ptr %7, align 8, !tbaa !9
  %18133 = load i32, ptr %12, align 4, !tbaa !5
  %18134 = load i32, ptr %8, align 4, !tbaa !5
  %18135 = mul nsw i32 8, %18134
  %18136 = add nsw i32 %18133, %18135
  %18137 = sext i32 %18136 to i64
  %18138 = getelementptr inbounds double, ptr %18132, i64 %18137
  %18139 = load double, ptr %18138, align 8, !tbaa !11
  %18140 = call double @llvm.fmuladd.f64(double 0x3CB1C00000000000, double %18139, double %18131)
  %18141 = load ptr, ptr %7, align 8, !tbaa !9
  %18142 = load i32, ptr %12, align 4, !tbaa !5
  %18143 = load i32, ptr %8, align 4, !tbaa !5
  %18144 = mul nsw i32 9, %18143
  %18145 = add nsw i32 %18142, %18144
  %18146 = sext i32 %18145 to i64
  %18147 = getelementptr inbounds double, ptr %18141, i64 %18146
  %18148 = load double, ptr %18147, align 8, !tbaa !11
  %18149 = call double @llvm.fmuladd.f64(double 0x3CBBC00000000001, double %18148, double %18140)
  %18150 = load ptr, ptr %7, align 8, !tbaa !9
  %18151 = load i32, ptr %12, align 4, !tbaa !5
  %18152 = load i32, ptr %8, align 4, !tbaa !5
  %18153 = mul nsw i32 10, %18152
  %18154 = add nsw i32 %18151, %18153
  %18155 = sext i32 %18154 to i64
  %18156 = getelementptr inbounds double, ptr %18150, i64 %18155
  %18157 = load double, ptr %18156, align 8, !tbaa !11
  %18158 = call double @llvm.fmuladd.f64(double 0xBCC9400000000000, double %18157, double %18149)
  %18159 = load ptr, ptr %7, align 8, !tbaa !9
  %18160 = load i32, ptr %12, align 4, !tbaa !5
  %18161 = load i32, ptr %8, align 4, !tbaa !5
  %18162 = mul nsw i32 11, %18161
  %18163 = add nsw i32 %18160, %18162
  %18164 = sext i32 %18163 to i64
  %18165 = getelementptr inbounds double, ptr %18159, i64 %18164
  %18166 = load double, ptr %18165, align 8, !tbaa !11
  %18167 = call double @llvm.fmuladd.f64(double 0xBCA5000000000000, double %18166, double %18158)
  %18168 = load ptr, ptr %7, align 8, !tbaa !9
  %18169 = load i32, ptr %12, align 4, !tbaa !5
  %18170 = load i32, ptr %8, align 4, !tbaa !5
  %18171 = mul nsw i32 12, %18170
  %18172 = add nsw i32 %18169, %18171
  %18173 = sext i32 %18172 to i64
  %18174 = getelementptr inbounds double, ptr %18168, i64 %18173
  %18175 = load double, ptr %18174, align 8, !tbaa !11
  %18176 = call double @llvm.fmuladd.f64(double 0xBCACBFFFFFFFFFFF, double %18175, double %18167)
  %18177 = load ptr, ptr %7, align 8, !tbaa !9
  %18178 = load i32, ptr %12, align 4, !tbaa !5
  %18179 = load i32, ptr %8, align 4, !tbaa !5
  %18180 = mul nsw i32 13, %18179
  %18181 = add nsw i32 %18178, %18180
  %18182 = sext i32 %18181 to i64
  %18183 = getelementptr inbounds double, ptr %18177, i64 %18182
  %18184 = load double, ptr %18183, align 8, !tbaa !11
  %18185 = call double @llvm.fmuladd.f64(double 0xBC9EFFFFFFFFFFFD, double %18184, double %18176)
  %18186 = load ptr, ptr %7, align 8, !tbaa !9
  %18187 = load i32, ptr %12, align 4, !tbaa !5
  %18188 = load i32, ptr %8, align 4, !tbaa !5
  %18189 = mul nsw i32 14, %18188
  %18190 = add nsw i32 %18187, %18189
  %18191 = sext i32 %18190 to i64
  %18192 = getelementptr inbounds double, ptr %18186, i64 %18191
  %18193 = load double, ptr %18192, align 8, !tbaa !11
  %18194 = call double @llvm.fmuladd.f64(double 0x3CA2FFFFFFFFFFFE, double %18193, double %18185)
  %18195 = load ptr, ptr %7, align 8, !tbaa !9
  %18196 = load i32, ptr %12, align 4, !tbaa !5
  %18197 = load i32, ptr %8, align 4, !tbaa !5
  %18198 = mul nsw i32 15, %18197
  %18199 = add nsw i32 %18196, %18198
  %18200 = sext i32 %18199 to i64
  %18201 = getelementptr inbounds double, ptr %18195, i64 %18200
  %18202 = load double, ptr %18201, align 8, !tbaa !11
  %18203 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %18202, double %18194)
  %18204 = load ptr, ptr %7, align 8, !tbaa !9
  %18205 = load i32, ptr %12, align 4, !tbaa !5
  %18206 = load i32, ptr %8, align 4, !tbaa !5
  %18207 = mul nsw i32 16, %18206
  %18208 = add nsw i32 %18205, %18207
  %18209 = sext i32 %18208 to i64
  %18210 = getelementptr inbounds double, ptr %18204, i64 %18209
  %18211 = load double, ptr %18210, align 8, !tbaa !11
  %18212 = call double @llvm.fmuladd.f64(double 0x3CA9000000000000, double %18211, double %18203)
  %18213 = load ptr, ptr %7, align 8, !tbaa !9
  %18214 = load i32, ptr %12, align 4, !tbaa !5
  %18215 = load i32, ptr %8, align 4, !tbaa !5
  %18216 = mul nsw i32 17, %18215
  %18217 = add nsw i32 %18214, %18216
  %18218 = sext i32 %18217 to i64
  %18219 = getelementptr inbounds double, ptr %18213, i64 %18218
  %18220 = load double, ptr %18219, align 8, !tbaa !11
  %18221 = call double @llvm.fmuladd.f64(double 0xBCAB000000000001, double %18220, double %18212)
  %18222 = load ptr, ptr %7, align 8, !tbaa !9
  %18223 = load i32, ptr %12, align 4, !tbaa !5
  %18224 = load i32, ptr %8, align 4, !tbaa !5
  %18225 = mul nsw i32 18, %18224
  %18226 = add nsw i32 %18223, %18225
  %18227 = sext i32 %18226 to i64
  %18228 = getelementptr inbounds double, ptr %18222, i64 %18227
  %18229 = load double, ptr %18228, align 8, !tbaa !11
  %18230 = call double @llvm.fmuladd.f64(double 0x3CC5800000000000, double %18229, double %18221)
  %18231 = load ptr, ptr %7, align 8, !tbaa !9
  %18232 = load i32, ptr %12, align 4, !tbaa !5
  %18233 = load i32, ptr %8, align 4, !tbaa !5
  %18234 = mul nsw i32 19, %18233
  %18235 = add nsw i32 %18232, %18234
  %18236 = sext i32 %18235 to i64
  %18237 = getelementptr inbounds double, ptr %18231, i64 %18236
  %18238 = load double, ptr %18237, align 8, !tbaa !11
  %18239 = call double @llvm.fmuladd.f64(double 0xBCA1000000000001, double %18238, double %18230)
  %18240 = load ptr, ptr %7, align 8, !tbaa !9
  %18241 = load i32, ptr %12, align 4, !tbaa !5
  %18242 = load i32, ptr %8, align 4, !tbaa !5
  %18243 = mul nsw i32 20, %18242
  %18244 = add nsw i32 %18241, %18243
  %18245 = sext i32 %18244 to i64
  %18246 = getelementptr inbounds double, ptr %18240, i64 %18245
  %18247 = load double, ptr %18246, align 8, !tbaa !11
  %18248 = call double @llvm.fmuladd.f64(double 0x3CBC800000000000, double %18247, double %18239)
  %18249 = load ptr, ptr %7, align 8, !tbaa !9
  %18250 = load i32, ptr %12, align 4, !tbaa !5
  %18251 = load i32, ptr %8, align 4, !tbaa !5
  %18252 = mul nsw i32 21, %18251
  %18253 = add nsw i32 %18250, %18252
  %18254 = sext i32 %18253 to i64
  %18255 = getelementptr inbounds double, ptr %18249, i64 %18254
  %18256 = load double, ptr %18255, align 8, !tbaa !11
  %18257 = call double @llvm.fmuladd.f64(double 0x3CBA800000000000, double %18256, double %18248)
  %18258 = load ptr, ptr %7, align 8, !tbaa !9
  %18259 = load i32, ptr %12, align 4, !tbaa !5
  %18260 = load i32, ptr %8, align 4, !tbaa !5
  %18261 = mul nsw i32 22, %18260
  %18262 = add nsw i32 %18259, %18261
  %18263 = sext i32 %18262 to i64
  %18264 = getelementptr inbounds double, ptr %18258, i64 %18263
  %18265 = load double, ptr %18264, align 8, !tbaa !11
  %18266 = call double @llvm.fmuladd.f64(double 0x3CAE800000000001, double %18265, double %18257)
  %18267 = load ptr, ptr %7, align 8, !tbaa !9
  %18268 = load i32, ptr %12, align 4, !tbaa !5
  %18269 = load i32, ptr %8, align 4, !tbaa !5
  %18270 = mul nsw i32 23, %18269
  %18271 = add nsw i32 %18268, %18270
  %18272 = sext i32 %18271 to i64
  %18273 = getelementptr inbounds double, ptr %18267, i64 %18272
  %18274 = load double, ptr %18273, align 8, !tbaa !11
  %18275 = call double @llvm.fmuladd.f64(double 0xBCBB1FFFFFFFFFFF, double %18274, double %18266)
  %18276 = load ptr, ptr %7, align 8, !tbaa !9
  %18277 = load i32, ptr %12, align 4, !tbaa !5
  %18278 = load i32, ptr %8, align 4, !tbaa !5
  %18279 = mul nsw i32 24, %18278
  %18280 = add nsw i32 %18277, %18279
  %18281 = sext i32 %18280 to i64
  %18282 = getelementptr inbounds double, ptr %18276, i64 %18281
  %18283 = load double, ptr %18282, align 8, !tbaa !11
  %18284 = call double @llvm.fmuladd.f64(double 0xBCAB000000000001, double %18283, double %18275)
  %18285 = load ptr, ptr %7, align 8, !tbaa !9
  %18286 = load i32, ptr %12, align 4, !tbaa !5
  %18287 = load i32, ptr %8, align 4, !tbaa !5
  %18288 = mul nsw i32 25, %18287
  %18289 = add nsw i32 %18286, %18288
  %18290 = sext i32 %18289 to i64
  %18291 = getelementptr inbounds double, ptr %18285, i64 %18290
  %18292 = load double, ptr %18291, align 8, !tbaa !11
  %18293 = call double @llvm.fmuladd.f64(double 0xBCA0000000000002, double %18292, double %18284)
  %18294 = load ptr, ptr %7, align 8, !tbaa !9
  %18295 = load i32, ptr %12, align 4, !tbaa !5
  %18296 = load i32, ptr %8, align 4, !tbaa !5
  %18297 = mul nsw i32 26, %18296
  %18298 = add nsw i32 %18295, %18297
  %18299 = sext i32 %18298 to i64
  %18300 = getelementptr inbounds double, ptr %18294, i64 %18299
  %18301 = load double, ptr %18300, align 8, !tbaa !11
  %18302 = call double @llvm.fmuladd.f64(double 0xBCB4600000000001, double %18301, double %18293)
  %18303 = load ptr, ptr %7, align 8, !tbaa !9
  %18304 = load i32, ptr %12, align 4, !tbaa !5
  %18305 = load i32, ptr %8, align 4, !tbaa !5
  %18306 = mul nsw i32 27, %18305
  %18307 = add nsw i32 %18304, %18306
  %18308 = sext i32 %18307 to i64
  %18309 = getelementptr inbounds double, ptr %18303, i64 %18308
  %18310 = load double, ptr %18309, align 8, !tbaa !11
  %18311 = call double @llvm.fmuladd.f64(double 0x3CA0000000000002, double %18310, double %18302)
  %18312 = load ptr, ptr %7, align 8, !tbaa !9
  %18313 = load i32, ptr %12, align 4, !tbaa !5
  %18314 = load i32, ptr %8, align 4, !tbaa !5
  %18315 = mul nsw i32 28, %18314
  %18316 = add nsw i32 %18313, %18315
  %18317 = sext i32 %18316 to i64
  %18318 = getelementptr inbounds double, ptr %18312, i64 %18317
  %18319 = load double, ptr %18318, align 8, !tbaa !11
  %18320 = call double @llvm.fmuladd.f64(double 0x3CA5FFFFFFFFFFFF, double %18319, double %18311)
  %18321 = load ptr, ptr %7, align 8, !tbaa !9
  %18322 = load i32, ptr %12, align 4, !tbaa !5
  %18323 = load i32, ptr %8, align 4, !tbaa !5
  %18324 = mul nsw i32 29, %18323
  %18325 = add nsw i32 %18322, %18324
  %18326 = sext i32 %18325 to i64
  %18327 = getelementptr inbounds double, ptr %18321, i64 %18326
  %18328 = load double, ptr %18327, align 8, !tbaa !11
  %18329 = call double @llvm.fmuladd.f64(double 0x3CA7000000000002, double %18328, double %18320)
  %18330 = load ptr, ptr %7, align 8, !tbaa !9
  %18331 = load i32, ptr %12, align 4, !tbaa !5
  %18332 = load i32, ptr %8, align 4, !tbaa !5
  %18333 = mul nsw i32 30, %18332
  %18334 = add nsw i32 %18331, %18333
  %18335 = sext i32 %18334 to i64
  %18336 = getelementptr inbounds double, ptr %18330, i64 %18335
  %18337 = load double, ptr %18336, align 8, !tbaa !11
  %18338 = call double @llvm.fmuladd.f64(double 0xBFE333710B32A296, double %18337, double %18329)
  %18339 = load ptr, ptr %7, align 8, !tbaa !9
  %18340 = load i32, ptr %12, align 4, !tbaa !5
  %18341 = load i32, ptr %8, align 4, !tbaa !5
  %18342 = mul nsw i32 31, %18341
  %18343 = add nsw i32 %18340, %18342
  %18344 = sext i32 %18343 to i64
  %18345 = getelementptr inbounds double, ptr %18339, i64 %18344
  %18346 = load double, ptr %18345, align 8, !tbaa !11
  %18347 = call double @llvm.fmuladd.f64(double 0x3FA87D764354853C, double %18346, double %18338)
  %18348 = load ptr, ptr %7, align 8, !tbaa !9
  %18349 = load i32, ptr %12, align 4, !tbaa !5
  %18350 = load i32, ptr %8, align 4, !tbaa !5
  %18351 = mul nsw i32 32, %18350
  %18352 = add nsw i32 %18349, %18351
  %18353 = sext i32 %18352 to i64
  %18354 = getelementptr inbounds double, ptr %18348, i64 %18353
  %18355 = load double, ptr %18354, align 8, !tbaa !11
  %18356 = call double @llvm.fmuladd.f64(double 0xBFBEED13A9F0D910, double %18355, double %18347)
  %18357 = load ptr, ptr %7, align 8, !tbaa !9
  %18358 = load i32, ptr %12, align 4, !tbaa !5
  %18359 = load i32, ptr %8, align 4, !tbaa !5
  %18360 = mul nsw i32 33, %18359
  %18361 = add nsw i32 %18358, %18360
  %18362 = sext i32 %18361 to i64
  %18363 = getelementptr inbounds double, ptr %18357, i64 %18362
  %18364 = load double, ptr %18363, align 8, !tbaa !11
  %18365 = call double @llvm.fmuladd.f64(double 0xBFA352D4DB969BC4, double %18364, double %18356)
  %18366 = load ptr, ptr %7, align 8, !tbaa !9
  %18367 = load i32, ptr %12, align 4, !tbaa !5
  %18368 = load i32, ptr %8, align 4, !tbaa !5
  %18369 = mul nsw i32 34, %18368
  %18370 = add nsw i32 %18367, %18369
  %18371 = sext i32 %18370 to i64
  %18372 = getelementptr inbounds double, ptr %18366, i64 %18371
  %18373 = load double, ptr %18372, align 8, !tbaa !11
  %18374 = call double @llvm.fmuladd.f64(double 0x3FD35DAE88CBA648, double %18373, double %18365)
  %18375 = load ptr, ptr %7, align 8, !tbaa !9
  %18376 = load i32, ptr %12, align 4, !tbaa !5
  %18377 = load i32, ptr %8, align 4, !tbaa !5
  %18378 = mul nsw i32 35, %18377
  %18379 = add nsw i32 %18376, %18378
  %18380 = sext i32 %18379 to i64
  %18381 = getelementptr inbounds double, ptr %18375, i64 %18380
  %18382 = load double, ptr %18381, align 8, !tbaa !11
  %18383 = call double @llvm.fmuladd.f64(double 0x3FC36A9134CD3C4A, double %18382, double %18374)
  %18384 = load ptr, ptr %7, align 8, !tbaa !9
  %18385 = load i32, ptr %12, align 4, !tbaa !5
  %18386 = load i32, ptr %8, align 4, !tbaa !5
  %18387 = mul nsw i32 36, %18386
  %18388 = add nsw i32 %18385, %18387
  %18389 = sext i32 %18388 to i64
  %18390 = getelementptr inbounds double, ptr %18384, i64 %18389
  %18391 = load double, ptr %18390, align 8, !tbaa !11
  %18392 = call double @llvm.fmuladd.f64(double 0x3F9854E0ADA34B08, double %18391, double %18383)
  %18393 = load ptr, ptr %7, align 8, !tbaa !9
  %18394 = load i32, ptr %12, align 4, !tbaa !5
  %18395 = load i32, ptr %8, align 4, !tbaa !5
  %18396 = mul nsw i32 37, %18395
  %18397 = add nsw i32 %18394, %18396
  %18398 = sext i32 %18397 to i64
  %18399 = getelementptr inbounds double, ptr %18393, i64 %18398
  %18400 = load double, ptr %18399, align 8, !tbaa !11
  %18401 = call double @llvm.fmuladd.f64(double 0x3FC27B05E24EC5FF, double %18400, double %18392)
  %18402 = load ptr, ptr %7, align 8, !tbaa !9
  %18403 = load i32, ptr %12, align 4, !tbaa !5
  %18404 = load i32, ptr %8, align 4, !tbaa !5
  %18405 = mul nsw i32 38, %18404
  %18406 = add nsw i32 %18403, %18405
  %18407 = sext i32 %18406 to i64
  %18408 = getelementptr inbounds double, ptr %18402, i64 %18407
  %18409 = load double, ptr %18408, align 8, !tbaa !11
  %18410 = call double @llvm.fmuladd.f64(double 0x3FF670C5F1F4C92E, double %18409, double %18401)
  %18411 = load ptr, ptr %7, align 8, !tbaa !9
  %18412 = load i32, ptr %12, align 4, !tbaa !5
  %18413 = load i32, ptr %8, align 4, !tbaa !5
  %18414 = mul nsw i32 39, %18413
  %18415 = add nsw i32 %18412, %18414
  %18416 = sext i32 %18415 to i64
  %18417 = getelementptr inbounds double, ptr %18411, i64 %18416
  %18418 = load double, ptr %18417, align 8, !tbaa !11
  %18419 = call double @llvm.fmuladd.f64(double 0xBFD41C0D131D428A, double %18418, double %18410)
  store double %18419, ptr %11, align 8, !tbaa !11
  %18420 = load double, ptr %11, align 8, !tbaa !11
  %18421 = load ptr, ptr %9, align 8, !tbaa !9
  %18422 = load i32, ptr %12, align 4, !tbaa !5
  %18423 = load i32, ptr %10, align 4, !tbaa !5
  %18424 = mul nsw i32 50, %18423
  %18425 = add nsw i32 %18422, %18424
  %18426 = sext i32 %18425 to i64
  %18427 = getelementptr inbounds double, ptr %18421, i64 %18426
  %18428 = load double, ptr %18427, align 8, !tbaa !11
  %18429 = fadd double %18428, %18420
  store double %18429, ptr %18427, align 8, !tbaa !11
  %18430 = load ptr, ptr %7, align 8, !tbaa !9
  %18431 = load i32, ptr %12, align 4, !tbaa !5
  %18432 = load i32, ptr %8, align 4, !tbaa !5
  %18433 = mul nsw i32 0, %18432
  %18434 = add nsw i32 %18431, %18433
  %18435 = sext i32 %18434 to i64
  %18436 = getelementptr inbounds double, ptr %18430, i64 %18435
  %18437 = load double, ptr %18436, align 8, !tbaa !11
  %18438 = load ptr, ptr %7, align 8, !tbaa !9
  %18439 = load i32, ptr %12, align 4, !tbaa !5
  %18440 = load i32, ptr %8, align 4, !tbaa !5
  %18441 = mul nsw i32 1, %18440
  %18442 = add nsw i32 %18439, %18441
  %18443 = sext i32 %18442 to i64
  %18444 = getelementptr inbounds double, ptr %18438, i64 %18443
  %18445 = load double, ptr %18444, align 8, !tbaa !11
  %18446 = fmul double 0xBCB07FFFFFFFFFFF, %18445
  %18447 = call double @llvm.fmuladd.f64(double 0x3C94000000000000, double %18437, double %18446)
  %18448 = load ptr, ptr %7, align 8, !tbaa !9
  %18449 = load i32, ptr %12, align 4, !tbaa !5
  %18450 = load i32, ptr %8, align 4, !tbaa !5
  %18451 = mul nsw i32 2, %18450
  %18452 = add nsw i32 %18449, %18451
  %18453 = sext i32 %18452 to i64
  %18454 = getelementptr inbounds double, ptr %18448, i64 %18453
  %18455 = load double, ptr %18454, align 8, !tbaa !11
  %18456 = call double @llvm.fmuladd.f64(double 0x3C92000000000000, double %18455, double %18447)
  %18457 = load ptr, ptr %7, align 8, !tbaa !9
  %18458 = load i32, ptr %12, align 4, !tbaa !5
  %18459 = load i32, ptr %8, align 4, !tbaa !5
  %18460 = mul nsw i32 3, %18459
  %18461 = add nsw i32 %18458, %18460
  %18462 = sext i32 %18461 to i64
  %18463 = getelementptr inbounds double, ptr %18457, i64 %18462
  %18464 = load double, ptr %18463, align 8, !tbaa !11
  %18465 = call double @llvm.fmuladd.f64(double 0xBC91000000000000, double %18464, double %18456)
  %18466 = load ptr, ptr %7, align 8, !tbaa !9
  %18467 = load i32, ptr %12, align 4, !tbaa !5
  %18468 = load i32, ptr %8, align 4, !tbaa !5
  %18469 = mul nsw i32 4, %18468
  %18470 = add nsw i32 %18467, %18469
  %18471 = sext i32 %18470 to i64
  %18472 = getelementptr inbounds double, ptr %18466, i64 %18471
  %18473 = load double, ptr %18472, align 8, !tbaa !11
  %18474 = call double @llvm.fmuladd.f64(double 0xBCA4000000000001, double %18473, double %18465)
  %18475 = load ptr, ptr %7, align 8, !tbaa !9
  %18476 = load i32, ptr %12, align 4, !tbaa !5
  %18477 = load i32, ptr %8, align 4, !tbaa !5
  %18478 = mul nsw i32 5, %18477
  %18479 = add nsw i32 %18476, %18478
  %18480 = sext i32 %18479 to i64
  %18481 = getelementptr inbounds double, ptr %18475, i64 %18480
  %18482 = load double, ptr %18481, align 8, !tbaa !11
  %18483 = call double @llvm.fmuladd.f64(double 0x3C9C000000000000, double %18482, double %18474)
  %18484 = load ptr, ptr %7, align 8, !tbaa !9
  %18485 = load i32, ptr %12, align 4, !tbaa !5
  %18486 = load i32, ptr %8, align 4, !tbaa !5
  %18487 = mul nsw i32 7, %18486
  %18488 = add nsw i32 %18485, %18487
  %18489 = sext i32 %18488 to i64
  %18490 = getelementptr inbounds double, ptr %18484, i64 %18489
  %18491 = load double, ptr %18490, align 8, !tbaa !11
  %18492 = call double @llvm.fmuladd.f64(double 0x3C91000000000000, double %18491, double %18483)
  %18493 = load ptr, ptr %7, align 8, !tbaa !9
  %18494 = load i32, ptr %12, align 4, !tbaa !5
  %18495 = load i32, ptr %8, align 4, !tbaa !5
  %18496 = mul nsw i32 8, %18495
  %18497 = add nsw i32 %18494, %18496
  %18498 = sext i32 %18497 to i64
  %18499 = getelementptr inbounds double, ptr %18493, i64 %18498
  %18500 = load double, ptr %18499, align 8, !tbaa !11
  %18501 = call double @llvm.fmuladd.f64(double 0xBCAC000000000000, double %18500, double %18492)
  %18502 = load ptr, ptr %7, align 8, !tbaa !9
  %18503 = load i32, ptr %12, align 4, !tbaa !5
  %18504 = load i32, ptr %8, align 4, !tbaa !5
  %18505 = mul nsw i32 9, %18504
  %18506 = add nsw i32 %18503, %18505
  %18507 = sext i32 %18506 to i64
  %18508 = getelementptr inbounds double, ptr %18502, i64 %18507
  %18509 = load double, ptr %18508, align 8, !tbaa !11
  %18510 = call double @llvm.fmuladd.f64(double 0x3C88000000000000, double %18509, double %18501)
  %18511 = load ptr, ptr %7, align 8, !tbaa !9
  %18512 = load i32, ptr %12, align 4, !tbaa !5
  %18513 = load i32, ptr %8, align 4, !tbaa !5
  %18514 = mul nsw i32 10, %18513
  %18515 = add nsw i32 %18512, %18514
  %18516 = sext i32 %18515 to i64
  %18517 = getelementptr inbounds double, ptr %18511, i64 %18516
  %18518 = load double, ptr %18517, align 8, !tbaa !11
  %18519 = call double @llvm.fmuladd.f64(double 0xBCCE000000000000, double %18518, double %18510)
  %18520 = load ptr, ptr %7, align 8, !tbaa !9
  %18521 = load i32, ptr %12, align 4, !tbaa !5
  %18522 = load i32, ptr %8, align 4, !tbaa !5
  %18523 = mul nsw i32 12, %18522
  %18524 = add nsw i32 %18521, %18523
  %18525 = sext i32 %18524 to i64
  %18526 = getelementptr inbounds double, ptr %18520, i64 %18525
  %18527 = load double, ptr %18526, align 8, !tbaa !11
  %18528 = call double @llvm.fmuladd.f64(double 0xBC9DFFFFFFFFFFFE, double %18527, double %18519)
  %18529 = load ptr, ptr %7, align 8, !tbaa !9
  %18530 = load i32, ptr %12, align 4, !tbaa !5
  %18531 = load i32, ptr %8, align 4, !tbaa !5
  %18532 = mul nsw i32 13, %18531
  %18533 = add nsw i32 %18530, %18532
  %18534 = sext i32 %18533 to i64
  %18535 = getelementptr inbounds double, ptr %18529, i64 %18534
  %18536 = load double, ptr %18535, align 8, !tbaa !11
  %18537 = call double @llvm.fmuladd.f64(double 0xBCA4000000000001, double %18536, double %18528)
  %18538 = load ptr, ptr %7, align 8, !tbaa !9
  %18539 = load i32, ptr %12, align 4, !tbaa !5
  %18540 = load i32, ptr %8, align 4, !tbaa !5
  %18541 = mul nsw i32 14, %18540
  %18542 = add nsw i32 %18539, %18541
  %18543 = sext i32 %18542 to i64
  %18544 = getelementptr inbounds double, ptr %18538, i64 %18543
  %18545 = load double, ptr %18544, align 8, !tbaa !11
  %18546 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %18545, double %18537)
  %18547 = load ptr, ptr %7, align 8, !tbaa !9
  %18548 = load i32, ptr %12, align 4, !tbaa !5
  %18549 = load i32, ptr %8, align 4, !tbaa !5
  %18550 = mul nsw i32 16, %18549
  %18551 = add nsw i32 %18548, %18550
  %18552 = sext i32 %18551 to i64
  %18553 = getelementptr inbounds double, ptr %18547, i64 %18552
  %18554 = load double, ptr %18553, align 8, !tbaa !11
  %18555 = call double @llvm.fmuladd.f64(double 0x3CBA000000000000, double %18554, double %18546)
  %18556 = load ptr, ptr %7, align 8, !tbaa !9
  %18557 = load i32, ptr %12, align 4, !tbaa !5
  %18558 = load i32, ptr %8, align 4, !tbaa !5
  %18559 = mul nsw i32 17, %18558
  %18560 = add nsw i32 %18557, %18559
  %18561 = sext i32 %18560 to i64
  %18562 = getelementptr inbounds double, ptr %18556, i64 %18561
  %18563 = load double, ptr %18562, align 8, !tbaa !11
  %18564 = call double @llvm.fmuladd.f64(double 0xBCA1000000000001, double %18563, double %18555)
  %18565 = load ptr, ptr %7, align 8, !tbaa !9
  %18566 = load i32, ptr %12, align 4, !tbaa !5
  %18567 = load i32, ptr %8, align 4, !tbaa !5
  %18568 = mul nsw i32 18, %18567
  %18569 = add nsw i32 %18566, %18568
  %18570 = sext i32 %18569 to i64
  %18571 = getelementptr inbounds double, ptr %18565, i64 %18570
  %18572 = load double, ptr %18571, align 8, !tbaa !11
  %18573 = call double @llvm.fmuladd.f64(double 0x3CB0000000000000, double %18572, double %18564)
  %18574 = load ptr, ptr %7, align 8, !tbaa !9
  %18575 = load i32, ptr %12, align 4, !tbaa !5
  %18576 = load i32, ptr %8, align 4, !tbaa !5
  %18577 = mul nsw i32 19, %18576
  %18578 = add nsw i32 %18575, %18577
  %18579 = sext i32 %18578 to i64
  %18580 = getelementptr inbounds double, ptr %18574, i64 %18579
  %18581 = load double, ptr %18580, align 8, !tbaa !11
  %18582 = call double @llvm.fmuladd.f64(double 0xBCA4000000000001, double %18581, double %18573)
  %18583 = load ptr, ptr %7, align 8, !tbaa !9
  %18584 = load i32, ptr %12, align 4, !tbaa !5
  %18585 = load i32, ptr %8, align 4, !tbaa !5
  %18586 = mul nsw i32 20, %18585
  %18587 = add nsw i32 %18584, %18586
  %18588 = sext i32 %18587 to i64
  %18589 = getelementptr inbounds double, ptr %18583, i64 %18588
  %18590 = load double, ptr %18589, align 8, !tbaa !11
  %18591 = call double @llvm.fmuladd.f64(double 0x3CB5FFFFFFFFFFFF, double %18590, double %18582)
  %18592 = load ptr, ptr %7, align 8, !tbaa !9
  %18593 = load i32, ptr %12, align 4, !tbaa !5
  %18594 = load i32, ptr %8, align 4, !tbaa !5
  %18595 = mul nsw i32 21, %18594
  %18596 = add nsw i32 %18593, %18595
  %18597 = sext i32 %18596 to i64
  %18598 = getelementptr inbounds double, ptr %18592, i64 %18597
  %18599 = load double, ptr %18598, align 8, !tbaa !11
  %18600 = call double @llvm.fmuladd.f64(double 0x3CB3FFFFFFFFFFFF, double %18599, double %18591)
  %18601 = load ptr, ptr %7, align 8, !tbaa !9
  %18602 = load i32, ptr %12, align 4, !tbaa !5
  %18603 = load i32, ptr %8, align 4, !tbaa !5
  %18604 = mul nsw i32 22, %18603
  %18605 = add nsw i32 %18602, %18604
  %18606 = sext i32 %18605 to i64
  %18607 = getelementptr inbounds double, ptr %18601, i64 %18606
  %18608 = load double, ptr %18607, align 8, !tbaa !11
  %18609 = call double @llvm.fmuladd.f64(double 0x3CA67FFFFFFFFFFE, double %18608, double %18600)
  %18610 = load ptr, ptr %7, align 8, !tbaa !9
  %18611 = load i32, ptr %12, align 4, !tbaa !5
  %18612 = load i32, ptr %8, align 4, !tbaa !5
  %18613 = mul nsw i32 23, %18612
  %18614 = add nsw i32 %18611, %18613
  %18615 = sext i32 %18614 to i64
  %18616 = getelementptr inbounds double, ptr %18610, i64 %18615
  %18617 = load double, ptr %18616, align 8, !tbaa !11
  %18618 = call double @llvm.fmuladd.f64(double 0xBCAB000000000001, double %18617, double %18609)
  %18619 = load ptr, ptr %7, align 8, !tbaa !9
  %18620 = load i32, ptr %12, align 4, !tbaa !5
  %18621 = load i32, ptr %8, align 4, !tbaa !5
  %18622 = mul nsw i32 24, %18621
  %18623 = add nsw i32 %18620, %18622
  %18624 = sext i32 %18623 to i64
  %18625 = getelementptr inbounds double, ptr %18619, i64 %18624
  %18626 = load double, ptr %18625, align 8, !tbaa !11
  %18627 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %18626, double %18618)
  %18628 = load ptr, ptr %7, align 8, !tbaa !9
  %18629 = load i32, ptr %12, align 4, !tbaa !5
  %18630 = load i32, ptr %8, align 4, !tbaa !5
  %18631 = mul nsw i32 25, %18630
  %18632 = add nsw i32 %18629, %18631
  %18633 = sext i32 %18632 to i64
  %18634 = getelementptr inbounds double, ptr %18628, i64 %18633
  %18635 = load double, ptr %18634, align 8, !tbaa !11
  %18636 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %18635, double %18627)
  %18637 = load ptr, ptr %7, align 8, !tbaa !9
  %18638 = load i32, ptr %12, align 4, !tbaa !5
  %18639 = load i32, ptr %8, align 4, !tbaa !5
  %18640 = mul nsw i32 26, %18639
  %18641 = add nsw i32 %18638, %18640
  %18642 = sext i32 %18641 to i64
  %18643 = getelementptr inbounds double, ptr %18637, i64 %18642
  %18644 = load double, ptr %18643, align 8, !tbaa !11
  %18645 = call double @llvm.fmuladd.f64(double 0xBCB3800000000000, double %18644, double %18636)
  %18646 = load ptr, ptr %7, align 8, !tbaa !9
  %18647 = load i32, ptr %12, align 4, !tbaa !5
  %18648 = load i32, ptr %8, align 4, !tbaa !5
  %18649 = mul nsw i32 27, %18648
  %18650 = add nsw i32 %18647, %18649
  %18651 = sext i32 %18650 to i64
  %18652 = getelementptr inbounds double, ptr %18646, i64 %18651
  %18653 = load double, ptr %18652, align 8, !tbaa !11
  %18654 = call double @llvm.fmuladd.f64(double 0x3CB1800000000000, double %18653, double %18645)
  %18655 = load ptr, ptr %7, align 8, !tbaa !9
  %18656 = load i32, ptr %12, align 4, !tbaa !5
  %18657 = load i32, ptr %8, align 4, !tbaa !5
  %18658 = mul nsw i32 28, %18657
  %18659 = add nsw i32 %18656, %18658
  %18660 = sext i32 %18659 to i64
  %18661 = getelementptr inbounds double, ptr %18655, i64 %18660
  %18662 = load double, ptr %18661, align 8, !tbaa !11
  %18663 = call double @llvm.fmuladd.f64(double 0xBCAC000000000000, double %18662, double %18654)
  %18664 = load ptr, ptr %7, align 8, !tbaa !9
  %18665 = load i32, ptr %12, align 4, !tbaa !5
  %18666 = load i32, ptr %8, align 4, !tbaa !5
  %18667 = mul nsw i32 29, %18666
  %18668 = add nsw i32 %18665, %18667
  %18669 = sext i32 %18668 to i64
  %18670 = getelementptr inbounds double, ptr %18664, i64 %18669
  %18671 = load double, ptr %18670, align 8, !tbaa !11
  %18672 = call double @llvm.fmuladd.f64(double 0x3CA0000000000002, double %18671, double %18663)
  %18673 = load ptr, ptr %7, align 8, !tbaa !9
  %18674 = load i32, ptr %12, align 4, !tbaa !5
  %18675 = load i32, ptr %8, align 4, !tbaa !5
  %18676 = mul nsw i32 30, %18675
  %18677 = add nsw i32 %18674, %18676
  %18678 = sext i32 %18677 to i64
  %18679 = getelementptr inbounds double, ptr %18673, i64 %18678
  %18680 = load double, ptr %18679, align 8, !tbaa !11
  %18681 = call double @llvm.fmuladd.f64(double 0xBF83152016E0EAC8, double %18680, double %18672)
  %18682 = load ptr, ptr %7, align 8, !tbaa !9
  %18683 = load i32, ptr %12, align 4, !tbaa !5
  %18684 = load i32, ptr %8, align 4, !tbaa !5
  %18685 = mul nsw i32 31, %18684
  %18686 = add nsw i32 %18683, %18685
  %18687 = sext i32 %18686 to i64
  %18688 = getelementptr inbounds double, ptr %18682, i64 %18687
  %18689 = load double, ptr %18688, align 8, !tbaa !11
  %18690 = call double @llvm.fmuladd.f64(double 0x3FF4EC1BB3FDC612, double %18689, double %18681)
  %18691 = load ptr, ptr %7, align 8, !tbaa !9
  %18692 = load i32, ptr %12, align 4, !tbaa !5
  %18693 = load i32, ptr %8, align 4, !tbaa !5
  %18694 = mul nsw i32 32, %18693
  %18695 = add nsw i32 %18692, %18694
  %18696 = sext i32 %18695 to i64
  %18697 = getelementptr inbounds double, ptr %18691, i64 %18696
  %18698 = load double, ptr %18697, align 8, !tbaa !11
  %18699 = call double @llvm.fmuladd.f64(double 0xBFB5B58B4F03B1A3, double %18698, double %18690)
  %18700 = load ptr, ptr %7, align 8, !tbaa !9
  %18701 = load i32, ptr %12, align 4, !tbaa !5
  %18702 = load i32, ptr %8, align 4, !tbaa !5
  %18703 = mul nsw i32 33, %18702
  %18704 = add nsw i32 %18701, %18703
  %18705 = sext i32 %18704 to i64
  %18706 = getelementptr inbounds double, ptr %18700, i64 %18705
  %18707 = load double, ptr %18706, align 8, !tbaa !11
  %18708 = call double @llvm.fmuladd.f64(double 0x3F938CE4890DB32D, double %18707, double %18699)
  %18709 = load ptr, ptr %7, align 8, !tbaa !9
  %18710 = load i32, ptr %12, align 4, !tbaa !5
  %18711 = load i32, ptr %8, align 4, !tbaa !5
  %18712 = mul nsw i32 34, %18711
  %18713 = add nsw i32 %18710, %18712
  %18714 = sext i32 %18713 to i64
  %18715 = getelementptr inbounds double, ptr %18709, i64 %18714
  %18716 = load double, ptr %18715, align 8, !tbaa !11
  %18717 = call double @llvm.fmuladd.f64(double 0x3FD417DEBFC17B11, double %18716, double %18708)
  %18718 = load ptr, ptr %7, align 8, !tbaa !9
  %18719 = load i32, ptr %12, align 4, !tbaa !5
  %18720 = load i32, ptr %8, align 4, !tbaa !5
  %18721 = mul nsw i32 35, %18720
  %18722 = add nsw i32 %18719, %18721
  %18723 = sext i32 %18722 to i64
  %18724 = getelementptr inbounds double, ptr %18718, i64 %18723
  %18725 = load double, ptr %18724, align 8, !tbaa !11
  %18726 = call double @llvm.fmuladd.f64(double 0xBFB49217631F593D, double %18725, double %18717)
  %18727 = load ptr, ptr %7, align 8, !tbaa !9
  %18728 = load i32, ptr %12, align 4, !tbaa !5
  %18729 = load i32, ptr %8, align 4, !tbaa !5
  %18730 = mul nsw i32 36, %18729
  %18731 = add nsw i32 %18728, %18730
  %18732 = sext i32 %18731 to i64
  %18733 = getelementptr inbounds double, ptr %18727, i64 %18732
  %18734 = load double, ptr %18733, align 8, !tbaa !11
  %18735 = call double @llvm.fmuladd.f64(double 0x3F85E50BB681A3B8, double %18734, double %18726)
  %18736 = load ptr, ptr %7, align 8, !tbaa !9
  %18737 = load i32, ptr %12, align 4, !tbaa !5
  %18738 = load i32, ptr %8, align 4, !tbaa !5
  %18739 = mul nsw i32 37, %18738
  %18740 = add nsw i32 %18737, %18739
  %18741 = sext i32 %18740 to i64
  %18742 = getelementptr inbounds double, ptr %18736, i64 %18741
  %18743 = load double, ptr %18742, align 8, !tbaa !11
  %18744 = call double @llvm.fmuladd.f64(double 0xBF8BDAF699AECFBC, double %18743, double %18735)
  %18745 = load ptr, ptr %7, align 8, !tbaa !9
  %18746 = load i32, ptr %12, align 4, !tbaa !5
  %18747 = load i32, ptr %8, align 4, !tbaa !5
  %18748 = mul nsw i32 38, %18747
  %18749 = add nsw i32 %18746, %18748
  %18750 = sext i32 %18749 to i64
  %18751 = getelementptr inbounds double, ptr %18745, i64 %18750
  %18752 = load double, ptr %18751, align 8, !tbaa !11
  %18753 = call double @llvm.fmuladd.f64(double 0x3FCA50C41AB7A310, double %18752, double %18744)
  %18754 = load ptr, ptr %7, align 8, !tbaa !9
  %18755 = load i32, ptr %12, align 4, !tbaa !5
  %18756 = load i32, ptr %8, align 4, !tbaa !5
  %18757 = mul nsw i32 39, %18756
  %18758 = add nsw i32 %18755, %18757
  %18759 = sext i32 %18758 to i64
  %18760 = getelementptr inbounds double, ptr %18754, i64 %18759
  %18761 = load double, ptr %18760, align 8, !tbaa !11
  %18762 = call double @llvm.fmuladd.f64(double 0xBFE5679E70A60657, double %18761, double %18753)
  store double %18762, ptr %11, align 8, !tbaa !11
  %18763 = load double, ptr %11, align 8, !tbaa !11
  %18764 = load ptr, ptr %9, align 8, !tbaa !9
  %18765 = load i32, ptr %12, align 4, !tbaa !5
  %18766 = load i32, ptr %10, align 4, !tbaa !5
  %18767 = mul nsw i32 51, %18766
  %18768 = add nsw i32 %18765, %18767
  %18769 = sext i32 %18768 to i64
  %18770 = getelementptr inbounds double, ptr %18764, i64 %18769
  %18771 = load double, ptr %18770, align 8, !tbaa !11
  %18772 = fadd double %18771, %18763
  store double %18772, ptr %18770, align 8, !tbaa !11
  %18773 = load ptr, ptr %7, align 8, !tbaa !9
  %18774 = load i32, ptr %12, align 4, !tbaa !5
  %18775 = load i32, ptr %8, align 4, !tbaa !5
  %18776 = mul nsw i32 0, %18775
  %18777 = add nsw i32 %18774, %18776
  %18778 = sext i32 %18777 to i64
  %18779 = getelementptr inbounds double, ptr %18773, i64 %18778
  %18780 = load double, ptr %18779, align 8, !tbaa !11
  %18781 = load ptr, ptr %7, align 8, !tbaa !9
  %18782 = load i32, ptr %12, align 4, !tbaa !5
  %18783 = load i32, ptr %8, align 4, !tbaa !5
  %18784 = mul nsw i32 1, %18783
  %18785 = add nsw i32 %18782, %18784
  %18786 = sext i32 %18785 to i64
  %18787 = getelementptr inbounds double, ptr %18781, i64 %18786
  %18788 = load double, ptr %18787, align 8, !tbaa !11
  %18789 = fmul double 0x3F938CE4890DB2E5, %18788
  %18790 = call double @llvm.fmuladd.f64(double 0xBF83152016E0EC7C, double %18780, double %18789)
  %18791 = load ptr, ptr %7, align 8, !tbaa !9
  %18792 = load i32, ptr %12, align 4, !tbaa !5
  %18793 = load i32, ptr %8, align 4, !tbaa !5
  %18794 = mul nsw i32 2, %18793
  %18795 = add nsw i32 %18792, %18794
  %18796 = sext i32 %18795 to i64
  %18797 = getelementptr inbounds double, ptr %18791, i64 %18796
  %18798 = load double, ptr %18797, align 8, !tbaa !11
  %18799 = call double @llvm.fmuladd.f64(double 0x3FF4EC1BB3FDC61B, double %18798, double %18790)
  %18800 = load ptr, ptr %7, align 8, !tbaa !9
  %18801 = load i32, ptr %12, align 4, !tbaa !5
  %18802 = load i32, ptr %8, align 4, !tbaa !5
  %18803 = mul nsw i32 3, %18802
  %18804 = add nsw i32 %18801, %18803
  %18805 = sext i32 %18804 to i64
  %18806 = getelementptr inbounds double, ptr %18800, i64 %18805
  %18807 = load double, ptr %18806, align 8, !tbaa !11
  %18808 = call double @llvm.fmuladd.f64(double 0xBFB5B58B4F03B1AE, double %18807, double %18799)
  %18809 = load ptr, ptr %7, align 8, !tbaa !9
  %18810 = load i32, ptr %12, align 4, !tbaa !5
  %18811 = load i32, ptr %8, align 4, !tbaa !5
  %18812 = mul nsw i32 4, %18811
  %18813 = add nsw i32 %18810, %18812
  %18814 = sext i32 %18813 to i64
  %18815 = getelementptr inbounds double, ptr %18809, i64 %18814
  %18816 = load double, ptr %18815, align 8, !tbaa !11
  %18817 = call double @llvm.fmuladd.f64(double 0x3FCA50C41AB7A329, double %18816, double %18808)
  %18818 = load ptr, ptr %7, align 8, !tbaa !9
  %18819 = load i32, ptr %12, align 4, !tbaa !5
  %18820 = load i32, ptr %8, align 4, !tbaa !5
  %18821 = mul nsw i32 5, %18820
  %18822 = add nsw i32 %18819, %18821
  %18823 = sext i32 %18822 to i64
  %18824 = getelementptr inbounds double, ptr %18818, i64 %18823
  %18825 = load double, ptr %18824, align 8, !tbaa !11
  %18826 = call double @llvm.fmuladd.f64(double 0xBF8BDAF699AECFB0, double %18825, double %18817)
  %18827 = load ptr, ptr %7, align 8, !tbaa !9
  %18828 = load i32, ptr %12, align 4, !tbaa !5
  %18829 = load i32, ptr %8, align 4, !tbaa !5
  %18830 = mul nsw i32 6, %18829
  %18831 = add nsw i32 %18828, %18830
  %18832 = sext i32 %18831 to i64
  %18833 = getelementptr inbounds double, ptr %18827, i64 %18832
  %18834 = load double, ptr %18833, align 8, !tbaa !11
  %18835 = call double @llvm.fmuladd.f64(double 0x3FD417DEBFC17B27, double %18834, double %18826)
  %18836 = load ptr, ptr %7, align 8, !tbaa !9
  %18837 = load i32, ptr %12, align 4, !tbaa !5
  %18838 = load i32, ptr %8, align 4, !tbaa !5
  %18839 = mul nsw i32 7, %18838
  %18840 = add nsw i32 %18837, %18839
  %18841 = sext i32 %18840 to i64
  %18842 = getelementptr inbounds double, ptr %18836, i64 %18841
  %18843 = load double, ptr %18842, align 8, !tbaa !11
  %18844 = call double @llvm.fmuladd.f64(double 0xBFE5679E70A6066B, double %18843, double %18835)
  %18845 = load ptr, ptr %7, align 8, !tbaa !9
  %18846 = load i32, ptr %12, align 4, !tbaa !5
  %18847 = load i32, ptr %8, align 4, !tbaa !5
  %18848 = mul nsw i32 8, %18847
  %18849 = add nsw i32 %18846, %18848
  %18850 = sext i32 %18849 to i64
  %18851 = getelementptr inbounds double, ptr %18845, i64 %18850
  %18852 = load double, ptr %18851, align 8, !tbaa !11
  %18853 = call double @llvm.fmuladd.f64(double 0x3F85E50BB681A41A, double %18852, double %18844)
  %18854 = load ptr, ptr %7, align 8, !tbaa !9
  %18855 = load i32, ptr %12, align 4, !tbaa !5
  %18856 = load i32, ptr %8, align 4, !tbaa !5
  %18857 = mul nsw i32 9, %18856
  %18858 = add nsw i32 %18855, %18857
  %18859 = sext i32 %18858 to i64
  %18860 = getelementptr inbounds double, ptr %18854, i64 %18859
  %18861 = load double, ptr %18860, align 8, !tbaa !11
  %18862 = call double @llvm.fmuladd.f64(double 0xBFB49217631F5949, double %18861, double %18853)
  %18863 = load ptr, ptr %7, align 8, !tbaa !9
  %18864 = load i32, ptr %12, align 4, !tbaa !5
  %18865 = load i32, ptr %8, align 4, !tbaa !5
  %18866 = mul nsw i32 10, %18865
  %18867 = add nsw i32 %18864, %18866
  %18868 = sext i32 %18867 to i64
  %18869 = getelementptr inbounds double, ptr %18863, i64 %18868
  %18870 = load double, ptr %18869, align 8, !tbaa !11
  %18871 = call double @llvm.fmuladd.f64(double 0x3CB8200000000001, double %18870, double %18862)
  %18872 = load ptr, ptr %7, align 8, !tbaa !9
  %18873 = load i32, ptr %12, align 4, !tbaa !5
  %18874 = load i32, ptr %8, align 4, !tbaa !5
  %18875 = mul nsw i32 11, %18874
  %18876 = add nsw i32 %18873, %18875
  %18877 = sext i32 %18876 to i64
  %18878 = getelementptr inbounds double, ptr %18872, i64 %18877
  %18879 = load double, ptr %18878, align 8, !tbaa !11
  %18880 = call double @llvm.fmuladd.f64(double 0xBC9C000000000000, double %18879, double %18871)
  %18881 = load ptr, ptr %7, align 8, !tbaa !9
  %18882 = load i32, ptr %12, align 4, !tbaa !5
  %18883 = load i32, ptr %8, align 4, !tbaa !5
  %18884 = mul nsw i32 12, %18883
  %18885 = add nsw i32 %18882, %18884
  %18886 = sext i32 %18885 to i64
  %18887 = getelementptr inbounds double, ptr %18881, i64 %18886
  %18888 = load double, ptr %18887, align 8, !tbaa !11
  %18889 = call double @llvm.fmuladd.f64(double 0xBC887FFFFFFFFFFF, double %18888, double %18880)
  %18890 = load ptr, ptr %7, align 8, !tbaa !9
  %18891 = load i32, ptr %12, align 4, !tbaa !5
  %18892 = load i32, ptr %8, align 4, !tbaa !5
  %18893 = mul nsw i32 13, %18892
  %18894 = add nsw i32 %18891, %18893
  %18895 = sext i32 %18894 to i64
  %18896 = getelementptr inbounds double, ptr %18890, i64 %18895
  %18897 = load double, ptr %18896, align 8, !tbaa !11
  %18898 = call double @llvm.fmuladd.f64(double 0xBCA22FFFFFFFFFFF, double %18897, double %18889)
  %18899 = load ptr, ptr %7, align 8, !tbaa !9
  %18900 = load i32, ptr %12, align 4, !tbaa !5
  %18901 = load i32, ptr %8, align 4, !tbaa !5
  %18902 = mul nsw i32 14, %18901
  %18903 = add nsw i32 %18900, %18902
  %18904 = sext i32 %18903 to i64
  %18905 = getelementptr inbounds double, ptr %18899, i64 %18904
  %18906 = load double, ptr %18905, align 8, !tbaa !11
  %18907 = call double @llvm.fmuladd.f64(double 0xBC84000000000000, double %18906, double %18898)
  %18908 = load ptr, ptr %7, align 8, !tbaa !9
  %18909 = load i32, ptr %12, align 4, !tbaa !5
  %18910 = load i32, ptr %8, align 4, !tbaa !5
  %18911 = mul nsw i32 15, %18910
  %18912 = add nsw i32 %18909, %18911
  %18913 = sext i32 %18912 to i64
  %18914 = getelementptr inbounds double, ptr %18908, i64 %18913
  %18915 = load double, ptr %18914, align 8, !tbaa !11
  %18916 = call double @llvm.fmuladd.f64(double 0xBCB7E00000000001, double %18915, double %18907)
  %18917 = load ptr, ptr %7, align 8, !tbaa !9
  %18918 = load i32, ptr %12, align 4, !tbaa !5
  %18919 = load i32, ptr %8, align 4, !tbaa !5
  %18920 = mul nsw i32 16, %18919
  %18921 = add nsw i32 %18918, %18920
  %18922 = sext i32 %18921 to i64
  %18923 = getelementptr inbounds double, ptr %18917, i64 %18922
  %18924 = load double, ptr %18923, align 8, !tbaa !11
  %18925 = call double @llvm.fmuladd.f64(double 0x3CA28FFFFFFFFFFF, double %18924, double %18916)
  %18926 = load ptr, ptr %7, align 8, !tbaa !9
  %18927 = load i32, ptr %12, align 4, !tbaa !5
  %18928 = load i32, ptr %8, align 4, !tbaa !5
  %18929 = mul nsw i32 17, %18928
  %18930 = add nsw i32 %18927, %18929
  %18931 = sext i32 %18930 to i64
  %18932 = getelementptr inbounds double, ptr %18926, i64 %18931
  %18933 = load double, ptr %18932, align 8, !tbaa !11
  %18934 = call double @llvm.fmuladd.f64(double 0xBC8E800000000001, double %18933, double %18925)
  %18935 = load ptr, ptr %7, align 8, !tbaa !9
  %18936 = load i32, ptr %12, align 4, !tbaa !5
  %18937 = load i32, ptr %8, align 4, !tbaa !5
  %18938 = mul nsw i32 18, %18937
  %18939 = add nsw i32 %18936, %18938
  %18940 = sext i32 %18939 to i64
  %18941 = getelementptr inbounds double, ptr %18935, i64 %18940
  %18942 = load double, ptr %18941, align 8, !tbaa !11
  %18943 = call double @llvm.fmuladd.f64(double 0x3CA1000000000001, double %18942, double %18934)
  %18944 = load ptr, ptr %7, align 8, !tbaa !9
  %18945 = load i32, ptr %12, align 4, !tbaa !5
  %18946 = load i32, ptr %8, align 4, !tbaa !5
  %18947 = mul nsw i32 19, %18946
  %18948 = add nsw i32 %18945, %18947
  %18949 = sext i32 %18948 to i64
  %18950 = getelementptr inbounds double, ptr %18944, i64 %18949
  %18951 = load double, ptr %18950, align 8, !tbaa !11
  %18952 = call double @llvm.fmuladd.f64(double 0xBC50000000000000, double %18951, double %18943)
  %18953 = load ptr, ptr %7, align 8, !tbaa !9
  %18954 = load i32, ptr %12, align 4, !tbaa !5
  %18955 = load i32, ptr %8, align 4, !tbaa !5
  %18956 = mul nsw i32 20, %18955
  %18957 = add nsw i32 %18954, %18956
  %18958 = sext i32 %18957 to i64
  %18959 = getelementptr inbounds double, ptr %18953, i64 %18958
  %18960 = load double, ptr %18959, align 8, !tbaa !11
  %18961 = call double @llvm.fmuladd.f64(double 0xBCA0400000000002, double %18960, double %18952)
  %18962 = load ptr, ptr %7, align 8, !tbaa !9
  %18963 = load i32, ptr %12, align 4, !tbaa !5
  %18964 = load i32, ptr %8, align 4, !tbaa !5
  %18965 = mul nsw i32 21, %18964
  %18966 = add nsw i32 %18963, %18965
  %18967 = sext i32 %18966 to i64
  %18968 = getelementptr inbounds double, ptr %18962, i64 %18967
  %18969 = load double, ptr %18968, align 8, !tbaa !11
  %18970 = call double @llvm.fmuladd.f64(double 0x3C92800000000000, double %18969, double %18961)
  %18971 = load ptr, ptr %7, align 8, !tbaa !9
  %18972 = load i32, ptr %12, align 4, !tbaa !5
  %18973 = load i32, ptr %8, align 4, !tbaa !5
  %18974 = mul nsw i32 22, %18973
  %18975 = add nsw i32 %18972, %18974
  %18976 = sext i32 %18975 to i64
  %18977 = getelementptr inbounds double, ptr %18971, i64 %18976
  %18978 = load double, ptr %18977, align 8, !tbaa !11
  %18979 = call double @llvm.fmuladd.f64(double 0xBCAB000000000001, double %18978, double %18970)
  %18980 = load ptr, ptr %7, align 8, !tbaa !9
  %18981 = load i32, ptr %12, align 4, !tbaa !5
  %18982 = load i32, ptr %8, align 4, !tbaa !5
  %18983 = mul nsw i32 23, %18982
  %18984 = add nsw i32 %18981, %18983
  %18985 = sext i32 %18984 to i64
  %18986 = getelementptr inbounds double, ptr %18980, i64 %18985
  %18987 = load double, ptr %18986, align 8, !tbaa !11
  %18988 = call double @llvm.fmuladd.f64(double 0x3CBB37FFFFFFFFFF, double %18987, double %18979)
  %18989 = load ptr, ptr %7, align 8, !tbaa !9
  %18990 = load i32, ptr %12, align 4, !tbaa !5
  %18991 = load i32, ptr %8, align 4, !tbaa !5
  %18992 = mul nsw i32 24, %18991
  %18993 = add nsw i32 %18990, %18992
  %18994 = sext i32 %18993 to i64
  %18995 = getelementptr inbounds double, ptr %18989, i64 %18994
  %18996 = load double, ptr %18995, align 8, !tbaa !11
  %18997 = call double @llvm.fmuladd.f64(double 0x3C84000000000000, double %18996, double %18988)
  %18998 = load ptr, ptr %7, align 8, !tbaa !9
  %18999 = load i32, ptr %12, align 4, !tbaa !5
  %19000 = load i32, ptr %8, align 4, !tbaa !5
  %19001 = mul nsw i32 25, %19000
  %19002 = add nsw i32 %18999, %19001
  %19003 = sext i32 %19002 to i64
  %19004 = getelementptr inbounds double, ptr %18998, i64 %19003
  %19005 = load double, ptr %19004, align 8, !tbaa !11
  %19006 = call double @llvm.fmuladd.f64(double 0x3CA1C00000000000, double %19005, double %18997)
  %19007 = load ptr, ptr %7, align 8, !tbaa !9
  %19008 = load i32, ptr %12, align 4, !tbaa !5
  %19009 = load i32, ptr %8, align 4, !tbaa !5
  %19010 = mul nsw i32 26, %19009
  %19011 = add nsw i32 %19008, %19010
  %19012 = sext i32 %19011 to i64
  %19013 = getelementptr inbounds double, ptr %19007, i64 %19012
  %19014 = load double, ptr %19013, align 8, !tbaa !11
  %19015 = call double @llvm.fmuladd.f64(double 0x3CA8D00000000000, double %19014, double %19006)
  %19016 = load ptr, ptr %7, align 8, !tbaa !9
  %19017 = load i32, ptr %12, align 4, !tbaa !5
  %19018 = load i32, ptr %8, align 4, !tbaa !5
  %19019 = mul nsw i32 27, %19018
  %19020 = add nsw i32 %19017, %19019
  %19021 = sext i32 %19020 to i64
  %19022 = getelementptr inbounds double, ptr %19016, i64 %19021
  %19023 = load double, ptr %19022, align 8, !tbaa !11
  %19024 = call double @llvm.fmuladd.f64(double 0xBC9F3FFFFFFFFFFC, double %19023, double %19015)
  %19025 = load ptr, ptr %7, align 8, !tbaa !9
  %19026 = load i32, ptr %12, align 4, !tbaa !5
  %19027 = load i32, ptr %8, align 4, !tbaa !5
  %19028 = mul nsw i32 28, %19027
  %19029 = add nsw i32 %19026, %19028
  %19030 = sext i32 %19029 to i64
  %19031 = getelementptr inbounds double, ptr %19025, i64 %19030
  %19032 = load double, ptr %19031, align 8, !tbaa !11
  %19033 = call double @llvm.fmuladd.f64(double 0x3C98800000000000, double %19032, double %19024)
  %19034 = load ptr, ptr %7, align 8, !tbaa !9
  %19035 = load i32, ptr %12, align 4, !tbaa !5
  %19036 = load i32, ptr %8, align 4, !tbaa !5
  %19037 = mul nsw i32 29, %19036
  %19038 = add nsw i32 %19035, %19037
  %19039 = sext i32 %19038 to i64
  %19040 = getelementptr inbounds double, ptr %19034, i64 %19039
  %19041 = load double, ptr %19040, align 8, !tbaa !11
  %19042 = call double @llvm.fmuladd.f64(double 0xBC91000000000000, double %19041, double %19033)
  %19043 = load ptr, ptr %7, align 8, !tbaa !9
  %19044 = load i32, ptr %12, align 4, !tbaa !5
  %19045 = load i32, ptr %8, align 4, !tbaa !5
  %19046 = mul nsw i32 30, %19045
  %19047 = add nsw i32 %19044, %19046
  %19048 = sext i32 %19047 to i64
  %19049 = getelementptr inbounds double, ptr %19043, i64 %19048
  %19050 = load double, ptr %19049, align 8, !tbaa !11
  %19051 = call double @llvm.fmuladd.f64(double 0xBCB1F00000000000, double %19050, double %19042)
  %19052 = load ptr, ptr %7, align 8, !tbaa !9
  %19053 = load i32, ptr %12, align 4, !tbaa !5
  %19054 = load i32, ptr %8, align 4, !tbaa !5
  %19055 = mul nsw i32 31, %19054
  %19056 = add nsw i32 %19053, %19055
  %19057 = sext i32 %19056 to i64
  %19058 = getelementptr inbounds double, ptr %19052, i64 %19057
  %19059 = load double, ptr %19058, align 8, !tbaa !11
  %19060 = call double @llvm.fmuladd.f64(double 0x3CA1400000000000, double %19059, double %19051)
  %19061 = load ptr, ptr %7, align 8, !tbaa !9
  %19062 = load i32, ptr %12, align 4, !tbaa !5
  %19063 = load i32, ptr %8, align 4, !tbaa !5
  %19064 = mul nsw i32 32, %19063
  %19065 = add nsw i32 %19062, %19064
  %19066 = sext i32 %19065 to i64
  %19067 = getelementptr inbounds double, ptr %19061, i64 %19066
  %19068 = load double, ptr %19067, align 8, !tbaa !11
  %19069 = call double @llvm.fmuladd.f64(double 0x3C64800000000000, double %19068, double %19060)
  %19070 = load ptr, ptr %7, align 8, !tbaa !9
  %19071 = load i32, ptr %12, align 4, !tbaa !5
  %19072 = load i32, ptr %8, align 4, !tbaa !5
  %19073 = mul nsw i32 33, %19072
  %19074 = add nsw i32 %19071, %19073
  %19075 = sext i32 %19074 to i64
  %19076 = getelementptr inbounds double, ptr %19070, i64 %19075
  %19077 = load double, ptr %19076, align 8, !tbaa !11
  %19078 = call double @llvm.fmuladd.f64(double 0x3C9FAFFFFFFFFFFC, double %19077, double %19069)
  %19079 = load ptr, ptr %7, align 8, !tbaa !9
  %19080 = load i32, ptr %12, align 4, !tbaa !5
  %19081 = load i32, ptr %8, align 4, !tbaa !5
  %19082 = mul nsw i32 34, %19081
  %19083 = add nsw i32 %19080, %19082
  %19084 = sext i32 %19083 to i64
  %19085 = getelementptr inbounds double, ptr %19079, i64 %19084
  %19086 = load double, ptr %19085, align 8, !tbaa !11
  %19087 = call double @llvm.fmuladd.f64(double 0x3CAD7FFFFFFFFFFE, double %19086, double %19078)
  %19088 = load ptr, ptr %7, align 8, !tbaa !9
  %19089 = load i32, ptr %12, align 4, !tbaa !5
  %19090 = load i32, ptr %8, align 4, !tbaa !5
  %19091 = mul nsw i32 35, %19090
  %19092 = add nsw i32 %19089, %19091
  %19093 = sext i32 %19092 to i64
  %19094 = getelementptr inbounds double, ptr %19088, i64 %19093
  %19095 = load double, ptr %19094, align 8, !tbaa !11
  %19096 = call double @llvm.fmuladd.f64(double 0x3C82000000000000, double %19095, double %19087)
  %19097 = load ptr, ptr %7, align 8, !tbaa !9
  %19098 = load i32, ptr %12, align 4, !tbaa !5
  %19099 = load i32, ptr %8, align 4, !tbaa !5
  %19100 = mul nsw i32 36, %19099
  %19101 = add nsw i32 %19098, %19100
  %19102 = sext i32 %19101 to i64
  %19103 = getelementptr inbounds double, ptr %19097, i64 %19102
  %19104 = load double, ptr %19103, align 8, !tbaa !11
  %19105 = call double @llvm.fmuladd.f64(double 0x3C96100000000000, double %19104, double %19096)
  %19106 = load ptr, ptr %7, align 8, !tbaa !9
  %19107 = load i32, ptr %12, align 4, !tbaa !5
  %19108 = load i32, ptr %8, align 4, !tbaa !5
  %19109 = mul nsw i32 37, %19108
  %19110 = add nsw i32 %19107, %19109
  %19111 = sext i32 %19110 to i64
  %19112 = getelementptr inbounds double, ptr %19106, i64 %19111
  %19113 = load double, ptr %19112, align 8, !tbaa !11
  %19114 = call double @llvm.fmuladd.f64(double 0x3C9A700000000000, double %19113, double %19105)
  %19115 = load ptr, ptr %7, align 8, !tbaa !9
  %19116 = load i32, ptr %12, align 4, !tbaa !5
  %19117 = load i32, ptr %8, align 4, !tbaa !5
  %19118 = mul nsw i32 38, %19117
  %19119 = add nsw i32 %19116, %19118
  %19120 = sext i32 %19119 to i64
  %19121 = getelementptr inbounds double, ptr %19115, i64 %19120
  %19122 = load double, ptr %19121, align 8, !tbaa !11
  %19123 = call double @llvm.fmuladd.f64(double 0xBC7E000000000001, double %19122, double %19114)
  %19124 = load ptr, ptr %7, align 8, !tbaa !9
  %19125 = load i32, ptr %12, align 4, !tbaa !5
  %19126 = load i32, ptr %8, align 4, !tbaa !5
  %19127 = mul nsw i32 39, %19126
  %19128 = add nsw i32 %19125, %19127
  %19129 = sext i32 %19128 to i64
  %19130 = getelementptr inbounds double, ptr %19124, i64 %19129
  %19131 = load double, ptr %19130, align 8, !tbaa !11
  %19132 = call double @llvm.fmuladd.f64(double 0xBC9BC00000000000, double %19131, double %19123)
  store double %19132, ptr %11, align 8, !tbaa !11
  %19133 = load double, ptr %11, align 8, !tbaa !11
  %19134 = load ptr, ptr %9, align 8, !tbaa !9
  %19135 = load i32, ptr %12, align 4, !tbaa !5
  %19136 = load i32, ptr %10, align 4, !tbaa !5
  %19137 = mul nsw i32 52, %19136
  %19138 = add nsw i32 %19135, %19137
  %19139 = sext i32 %19138 to i64
  %19140 = getelementptr inbounds double, ptr %19134, i64 %19139
  %19141 = load double, ptr %19140, align 8, !tbaa !11
  %19142 = fadd double %19141, %19133
  store double %19142, ptr %19140, align 8, !tbaa !11
  %19143 = load ptr, ptr %7, align 8, !tbaa !9
  %19144 = load i32, ptr %12, align 4, !tbaa !5
  %19145 = load i32, ptr %8, align 4, !tbaa !5
  %19146 = mul nsw i32 0, %19145
  %19147 = add nsw i32 %19144, %19146
  %19148 = sext i32 %19147 to i64
  %19149 = getelementptr inbounds double, ptr %19143, i64 %19148
  %19150 = load double, ptr %19149, align 8, !tbaa !11
  %19151 = load ptr, ptr %7, align 8, !tbaa !9
  %19152 = load i32, ptr %12, align 4, !tbaa !5
  %19153 = load i32, ptr %8, align 4, !tbaa !5
  %19154 = mul nsw i32 1, %19153
  %19155 = add nsw i32 %19152, %19154
  %19156 = sext i32 %19155 to i64
  %19157 = getelementptr inbounds double, ptr %19151, i64 %19156
  %19158 = load double, ptr %19157, align 8, !tbaa !11
  %19159 = fmul double 0xBFA352D4DB969C02, %19158
  %19160 = call double @llvm.fmuladd.f64(double 0xBFE333710B32A298, double %19150, double %19159)
  %19161 = load ptr, ptr %7, align 8, !tbaa !9
  %19162 = load i32, ptr %12, align 4, !tbaa !5
  %19163 = load i32, ptr %8, align 4, !tbaa !5
  %19164 = mul nsw i32 2, %19163
  %19165 = add nsw i32 %19162, %19164
  %19166 = sext i32 %19165 to i64
  %19167 = getelementptr inbounds double, ptr %19161, i64 %19166
  %19168 = load double, ptr %19167, align 8, !tbaa !11
  %19169 = call double @llvm.fmuladd.f64(double 0x3FA87D7643548552, double %19168, double %19160)
  %19170 = load ptr, ptr %7, align 8, !tbaa !9
  %19171 = load i32, ptr %12, align 4, !tbaa !5
  %19172 = load i32, ptr %8, align 4, !tbaa !5
  %19173 = mul nsw i32 3, %19172
  %19174 = add nsw i32 %19171, %19173
  %19175 = sext i32 %19174 to i64
  %19176 = getelementptr inbounds double, ptr %19170, i64 %19175
  %19177 = load double, ptr %19176, align 8, !tbaa !11
  %19178 = call double @llvm.fmuladd.f64(double 0xBFBEED13A9F0D902, double %19177, double %19169)
  %19179 = load ptr, ptr %7, align 8, !tbaa !9
  %19180 = load i32, ptr %12, align 4, !tbaa !5
  %19181 = load i32, ptr %8, align 4, !tbaa !5
  %19182 = mul nsw i32 4, %19181
  %19183 = add nsw i32 %19180, %19182
  %19184 = sext i32 %19183 to i64
  %19185 = getelementptr inbounds double, ptr %19179, i64 %19184
  %19186 = load double, ptr %19185, align 8, !tbaa !11
  %19187 = call double @llvm.fmuladd.f64(double 0x3FF670C5F1F4C92E, double %19186, double %19178)
  %19188 = load ptr, ptr %7, align 8, !tbaa !9
  %19189 = load i32, ptr %12, align 4, !tbaa !5
  %19190 = load i32, ptr %8, align 4, !tbaa !5
  %19191 = mul nsw i32 5, %19190
  %19192 = add nsw i32 %19189, %19191
  %19193 = sext i32 %19192 to i64
  %19194 = getelementptr inbounds double, ptr %19188, i64 %19193
  %19195 = load double, ptr %19194, align 8, !tbaa !11
  %19196 = call double @llvm.fmuladd.f64(double 0x3FC27B05E24EC5DB, double %19195, double %19187)
  %19197 = load ptr, ptr %7, align 8, !tbaa !9
  %19198 = load i32, ptr %12, align 4, !tbaa !5
  %19199 = load i32, ptr %8, align 4, !tbaa !5
  %19200 = mul nsw i32 6, %19199
  %19201 = add nsw i32 %19198, %19200
  %19202 = sext i32 %19201 to i64
  %19203 = getelementptr inbounds double, ptr %19197, i64 %19202
  %19204 = load double, ptr %19203, align 8, !tbaa !11
  %19205 = call double @llvm.fmuladd.f64(double 0x3FD35DAE88CBA644, double %19204, double %19196)
  %19206 = load ptr, ptr %7, align 8, !tbaa !9
  %19207 = load i32, ptr %12, align 4, !tbaa !5
  %19208 = load i32, ptr %8, align 4, !tbaa !5
  %19209 = mul nsw i32 7, %19208
  %19210 = add nsw i32 %19207, %19209
  %19211 = sext i32 %19210 to i64
  %19212 = getelementptr inbounds double, ptr %19206, i64 %19211
  %19213 = load double, ptr %19212, align 8, !tbaa !11
  %19214 = call double @llvm.fmuladd.f64(double 0xBFD41C0D131D428E, double %19213, double %19205)
  %19215 = load ptr, ptr %7, align 8, !tbaa !9
  %19216 = load i32, ptr %12, align 4, !tbaa !5
  %19217 = load i32, ptr %8, align 4, !tbaa !5
  %19218 = mul nsw i32 8, %19217
  %19219 = add nsw i32 %19216, %19218
  %19220 = sext i32 %19219 to i64
  %19221 = getelementptr inbounds double, ptr %19215, i64 %19220
  %19222 = load double, ptr %19221, align 8, !tbaa !11
  %19223 = call double @llvm.fmuladd.f64(double 0x3F9854E0ADA34B70, double %19222, double %19214)
  %19224 = load ptr, ptr %7, align 8, !tbaa !9
  %19225 = load i32, ptr %12, align 4, !tbaa !5
  %19226 = load i32, ptr %8, align 4, !tbaa !5
  %19227 = mul nsw i32 9, %19226
  %19228 = add nsw i32 %19225, %19227
  %19229 = sext i32 %19228 to i64
  %19230 = getelementptr inbounds double, ptr %19224, i64 %19229
  %19231 = load double, ptr %19230, align 8, !tbaa !11
  %19232 = call double @llvm.fmuladd.f64(double 0x3FC36A9134CD3C5F, double %19231, double %19223)
  %19233 = load ptr, ptr %7, align 8, !tbaa !9
  %19234 = load i32, ptr %12, align 4, !tbaa !5
  %19235 = load i32, ptr %8, align 4, !tbaa !5
  %19236 = mul nsw i32 10, %19235
  %19237 = add nsw i32 %19234, %19236
  %19238 = sext i32 %19237 to i64
  %19239 = getelementptr inbounds double, ptr %19233, i64 %19238
  %19240 = load double, ptr %19239, align 8, !tbaa !11
  %19241 = call double @llvm.fmuladd.f64(double 0x3CBE000000000000, double %19240, double %19232)
  %19242 = load ptr, ptr %7, align 8, !tbaa !9
  %19243 = load i32, ptr %12, align 4, !tbaa !5
  %19244 = load i32, ptr %8, align 4, !tbaa !5
  %19245 = mul nsw i32 11, %19244
  %19246 = add nsw i32 %19243, %19245
  %19247 = sext i32 %19246 to i64
  %19248 = getelementptr inbounds double, ptr %19242, i64 %19247
  %19249 = load double, ptr %19248, align 8, !tbaa !11
  %19250 = call double @llvm.fmuladd.f64(double 0xBC94000000000000, double %19249, double %19241)
  %19251 = load ptr, ptr %7, align 8, !tbaa !9
  %19252 = load i32, ptr %12, align 4, !tbaa !5
  %19253 = load i32, ptr %8, align 4, !tbaa !5
  %19254 = mul nsw i32 12, %19253
  %19255 = add nsw i32 %19252, %19254
  %19256 = sext i32 %19255 to i64
  %19257 = getelementptr inbounds double, ptr %19251, i64 %19256
  %19258 = load double, ptr %19257, align 8, !tbaa !11
  %19259 = call double @llvm.fmuladd.f64(double 0x3C9EBFFFFFFFFFFD, double %19258, double %19250)
  %19260 = load ptr, ptr %7, align 8, !tbaa !9
  %19261 = load i32, ptr %12, align 4, !tbaa !5
  %19262 = load i32, ptr %8, align 4, !tbaa !5
  %19263 = mul nsw i32 13, %19262
  %19264 = add nsw i32 %19261, %19263
  %19265 = sext i32 %19264 to i64
  %19266 = getelementptr inbounds double, ptr %19260, i64 %19265
  %19267 = load double, ptr %19266, align 8, !tbaa !11
  %19268 = call double @llvm.fmuladd.f64(double 0x3C95800000000000, double %19267, double %19259)
  %19269 = load ptr, ptr %7, align 8, !tbaa !9
  %19270 = load i32, ptr %12, align 4, !tbaa !5
  %19271 = load i32, ptr %8, align 4, !tbaa !5
  %19272 = mul nsw i32 14, %19271
  %19273 = add nsw i32 %19270, %19272
  %19274 = sext i32 %19273 to i64
  %19275 = getelementptr inbounds double, ptr %19269, i64 %19274
  %19276 = load double, ptr %19275, align 8, !tbaa !11
  %19277 = call double @llvm.fmuladd.f64(double 0xBC92000000000000, double %19276, double %19268)
  %19278 = load ptr, ptr %7, align 8, !tbaa !9
  %19279 = load i32, ptr %12, align 4, !tbaa !5
  %19280 = load i32, ptr %8, align 4, !tbaa !5
  %19281 = mul nsw i32 15, %19280
  %19282 = add nsw i32 %19279, %19281
  %19283 = sext i32 %19282 to i64
  %19284 = getelementptr inbounds double, ptr %19278, i64 %19283
  %19285 = load double, ptr %19284, align 8, !tbaa !11
  %19286 = call double @llvm.fmuladd.f64(double 0xBC74000000000000, double %19285, double %19277)
  %19287 = load ptr, ptr %7, align 8, !tbaa !9
  %19288 = load i32, ptr %12, align 4, !tbaa !5
  %19289 = load i32, ptr %8, align 4, !tbaa !5
  %19290 = mul nsw i32 16, %19289
  %19291 = add nsw i32 %19288, %19290
  %19292 = sext i32 %19291 to i64
  %19293 = getelementptr inbounds double, ptr %19287, i64 %19292
  %19294 = load double, ptr %19293, align 8, !tbaa !11
  %19295 = call double @llvm.fmuladd.f64(double 0xBCA1800000000000, double %19294, double %19286)
  %19296 = load ptr, ptr %7, align 8, !tbaa !9
  %19297 = load i32, ptr %12, align 4, !tbaa !5
  %19298 = load i32, ptr %8, align 4, !tbaa !5
  %19299 = mul nsw i32 17, %19298
  %19300 = add nsw i32 %19297, %19299
  %19301 = sext i32 %19300 to i64
  %19302 = getelementptr inbounds double, ptr %19296, i64 %19301
  %19303 = load double, ptr %19302, align 8, !tbaa !11
  %19304 = call double @llvm.fmuladd.f64(double 0xBC93800000000000, double %19303, double %19295)
  %19305 = load ptr, ptr %7, align 8, !tbaa !9
  %19306 = load i32, ptr %12, align 4, !tbaa !5
  %19307 = load i32, ptr %8, align 4, !tbaa !5
  %19308 = mul nsw i32 18, %19307
  %19309 = add nsw i32 %19306, %19308
  %19310 = sext i32 %19309 to i64
  %19311 = getelementptr inbounds double, ptr %19305, i64 %19310
  %19312 = load double, ptr %19311, align 8, !tbaa !11
  %19313 = call double @llvm.fmuladd.f64(double 0xBC89FFFFFFFFFFFF, double %19312, double %19304)
  %19314 = load ptr, ptr %7, align 8, !tbaa !9
  %19315 = load i32, ptr %12, align 4, !tbaa !5
  %19316 = load i32, ptr %8, align 4, !tbaa !5
  %19317 = mul nsw i32 19, %19316
  %19318 = add nsw i32 %19315, %19317
  %19319 = sext i32 %19318 to i64
  %19320 = getelementptr inbounds double, ptr %19314, i64 %19319
  %19321 = load double, ptr %19320, align 8, !tbaa !11
  %19322 = call double @llvm.fmuladd.f64(double 0xBC60000000000000, double %19321, double %19313)
  %19323 = load ptr, ptr %7, align 8, !tbaa !9
  %19324 = load i32, ptr %12, align 4, !tbaa !5
  %19325 = load i32, ptr %8, align 4, !tbaa !5
  %19326 = mul nsw i32 20, %19325
  %19327 = add nsw i32 %19324, %19326
  %19328 = sext i32 %19327 to i64
  %19329 = getelementptr inbounds double, ptr %19323, i64 %19328
  %19330 = load double, ptr %19329, align 8, !tbaa !11
  %19331 = call double @llvm.fmuladd.f64(double 0xBCB5FFFFFFFFFFFF, double %19330, double %19322)
  %19332 = load ptr, ptr %7, align 8, !tbaa !9
  %19333 = load i32, ptr %12, align 4, !tbaa !5
  %19334 = load i32, ptr %8, align 4, !tbaa !5
  %19335 = mul nsw i32 21, %19334
  %19336 = add nsw i32 %19333, %19335
  %19337 = sext i32 %19336 to i64
  %19338 = getelementptr inbounds double, ptr %19332, i64 %19337
  %19339 = load double, ptr %19338, align 8, !tbaa !11
  %19340 = call double @llvm.fmuladd.f64(double 0xBC94000000000000, double %19339, double %19331)
  %19341 = load ptr, ptr %7, align 8, !tbaa !9
  %19342 = load i32, ptr %12, align 4, !tbaa !5
  %19343 = load i32, ptr %8, align 4, !tbaa !5
  %19344 = mul nsw i32 22, %19343
  %19345 = add nsw i32 %19342, %19344
  %19346 = sext i32 %19345 to i64
  %19347 = getelementptr inbounds double, ptr %19341, i64 %19346
  %19348 = load double, ptr %19347, align 8, !tbaa !11
  %19349 = call double @llvm.fmuladd.f64(double 0xBCB1200000000001, double %19348, double %19340)
  %19350 = load ptr, ptr %7, align 8, !tbaa !9
  %19351 = load i32, ptr %12, align 4, !tbaa !5
  %19352 = load i32, ptr %8, align 4, !tbaa !5
  %19353 = mul nsw i32 23, %19352
  %19354 = add nsw i32 %19351, %19353
  %19355 = sext i32 %19354 to i64
  %19356 = getelementptr inbounds double, ptr %19350, i64 %19355
  %19357 = load double, ptr %19356, align 8, !tbaa !11
  %19358 = call double @llvm.fmuladd.f64(double 0x3CB5700000000000, double %19357, double %19349)
  %19359 = load ptr, ptr %7, align 8, !tbaa !9
  %19360 = load i32, ptr %12, align 4, !tbaa !5
  %19361 = load i32, ptr %8, align 4, !tbaa !5
  %19362 = mul nsw i32 24, %19361
  %19363 = add nsw i32 %19360, %19362
  %19364 = sext i32 %19363 to i64
  %19365 = getelementptr inbounds double, ptr %19359, i64 %19364
  %19366 = load double, ptr %19365, align 8, !tbaa !11
  %19367 = call double @llvm.fmuladd.f64(double 0x3CA9000000000000, double %19366, double %19358)
  %19368 = load ptr, ptr %7, align 8, !tbaa !9
  %19369 = load i32, ptr %12, align 4, !tbaa !5
  %19370 = load i32, ptr %8, align 4, !tbaa !5
  %19371 = mul nsw i32 25, %19370
  %19372 = add nsw i32 %19369, %19371
  %19373 = sext i32 %19372 to i64
  %19374 = getelementptr inbounds double, ptr %19368, i64 %19373
  %19375 = load double, ptr %19374, align 8, !tbaa !11
  %19376 = call double @llvm.fmuladd.f64(double 0x3CBB3FFFFFFFFFFF, double %19375, double %19367)
  %19377 = load ptr, ptr %7, align 8, !tbaa !9
  %19378 = load i32, ptr %12, align 4, !tbaa !5
  %19379 = load i32, ptr %8, align 4, !tbaa !5
  %19380 = mul nsw i32 26, %19379
  %19381 = add nsw i32 %19378, %19380
  %19382 = sext i32 %19381 to i64
  %19383 = getelementptr inbounds double, ptr %19377, i64 %19382
  %19384 = load double, ptr %19383, align 8, !tbaa !11
  %19385 = call double @llvm.fmuladd.f64(double 0x3CB1200000000001, double %19384, double %19376)
  %19386 = load ptr, ptr %7, align 8, !tbaa !9
  %19387 = load i32, ptr %12, align 4, !tbaa !5
  %19388 = load i32, ptr %8, align 4, !tbaa !5
  %19389 = mul nsw i32 27, %19388
  %19390 = add nsw i32 %19387, %19389
  %19391 = sext i32 %19390 to i64
  %19392 = getelementptr inbounds double, ptr %19386, i64 %19391
  %19393 = load double, ptr %19392, align 8, !tbaa !11
  %19394 = call double @llvm.fmuladd.f64(double 0xBC8F7FFFFFFFFFFF, double %19393, double %19385)
  %19395 = load ptr, ptr %7, align 8, !tbaa !9
  %19396 = load i32, ptr %12, align 4, !tbaa !5
  %19397 = load i32, ptr %8, align 4, !tbaa !5
  %19398 = mul nsw i32 28, %19397
  %19399 = add nsw i32 %19396, %19398
  %19400 = sext i32 %19399 to i64
  %19401 = getelementptr inbounds double, ptr %19395, i64 %19400
  %19402 = load double, ptr %19401, align 8, !tbaa !11
  %19403 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %19402, double %19394)
  %19404 = load ptr, ptr %7, align 8, !tbaa !9
  %19405 = load i32, ptr %12, align 4, !tbaa !5
  %19406 = load i32, ptr %8, align 4, !tbaa !5
  %19407 = mul nsw i32 29, %19406
  %19408 = add nsw i32 %19405, %19407
  %19409 = sext i32 %19408 to i64
  %19410 = getelementptr inbounds double, ptr %19404, i64 %19409
  %19411 = load double, ptr %19410, align 8, !tbaa !11
  %19412 = call double @llvm.fmuladd.f64(double 0x3C60000000000000, double %19411, double %19403)
  %19413 = load ptr, ptr %7, align 8, !tbaa !9
  %19414 = load i32, ptr %12, align 4, !tbaa !5
  %19415 = load i32, ptr %8, align 4, !tbaa !5
  %19416 = mul nsw i32 30, %19415
  %19417 = add nsw i32 %19414, %19416
  %19418 = sext i32 %19417 to i64
  %19419 = getelementptr inbounds double, ptr %19413, i64 %19418
  %19420 = load double, ptr %19419, align 8, !tbaa !11
  %19421 = call double @llvm.fmuladd.f64(double 0xBCC5D00000000000, double %19420, double %19412)
  %19422 = load ptr, ptr %7, align 8, !tbaa !9
  %19423 = load i32, ptr %12, align 4, !tbaa !5
  %19424 = load i32, ptr %8, align 4, !tbaa !5
  %19425 = mul nsw i32 31, %19424
  %19426 = add nsw i32 %19423, %19425
  %19427 = sext i32 %19426 to i64
  %19428 = getelementptr inbounds double, ptr %19422, i64 %19427
  %19429 = load double, ptr %19428, align 8, !tbaa !11
  %19430 = call double @llvm.fmuladd.f64(double 0x3C96000000000000, double %19429, double %19421)
  %19431 = load ptr, ptr %7, align 8, !tbaa !9
  %19432 = load i32, ptr %12, align 4, !tbaa !5
  %19433 = load i32, ptr %8, align 4, !tbaa !5
  %19434 = mul nsw i32 32, %19433
  %19435 = add nsw i32 %19432, %19434
  %19436 = sext i32 %19435 to i64
  %19437 = getelementptr inbounds double, ptr %19431, i64 %19436
  %19438 = load double, ptr %19437, align 8, !tbaa !11
  %19439 = call double @llvm.fmuladd.f64(double 0xBC7F7FFFFFFFFFFF, double %19438, double %19430)
  %19440 = load ptr, ptr %7, align 8, !tbaa !9
  %19441 = load i32, ptr %12, align 4, !tbaa !5
  %19442 = load i32, ptr %8, align 4, !tbaa !5
  %19443 = mul nsw i32 33, %19442
  %19444 = add nsw i32 %19441, %19443
  %19445 = sext i32 %19444 to i64
  %19446 = getelementptr inbounds double, ptr %19440, i64 %19445
  %19447 = load double, ptr %19446, align 8, !tbaa !11
  %19448 = call double @llvm.fmuladd.f64(double 0xBC7B800000000001, double %19447, double %19439)
  %19449 = load ptr, ptr %7, align 8, !tbaa !9
  %19450 = load i32, ptr %12, align 4, !tbaa !5
  %19451 = load i32, ptr %8, align 4, !tbaa !5
  %19452 = mul nsw i32 34, %19451
  %19453 = add nsw i32 %19450, %19452
  %19454 = sext i32 %19453 to i64
  %19455 = getelementptr inbounds double, ptr %19449, i64 %19454
  %19456 = load double, ptr %19455, align 8, !tbaa !11
  %19457 = call double @llvm.fmuladd.f64(double 0x3C9A800000000000, double %19456, double %19448)
  %19458 = load ptr, ptr %7, align 8, !tbaa !9
  %19459 = load i32, ptr %12, align 4, !tbaa !5
  %19460 = load i32, ptr %8, align 4, !tbaa !5
  %19461 = mul nsw i32 35, %19460
  %19462 = add nsw i32 %19459, %19461
  %19463 = sext i32 %19462 to i64
  %19464 = getelementptr inbounds double, ptr %19458, i64 %19463
  %19465 = load double, ptr %19464, align 8, !tbaa !11
  %19466 = call double @llvm.fmuladd.f64(double 0xBC8B000000000000, double %19465, double %19457)
  %19467 = load ptr, ptr %7, align 8, !tbaa !9
  %19468 = load i32, ptr %12, align 4, !tbaa !5
  %19469 = load i32, ptr %8, align 4, !tbaa !5
  %19470 = mul nsw i32 36, %19469
  %19471 = add nsw i32 %19468, %19470
  %19472 = sext i32 %19471 to i64
  %19473 = getelementptr inbounds double, ptr %19467, i64 %19472
  %19474 = load double, ptr %19473, align 8, !tbaa !11
  %19475 = call double @llvm.fmuladd.f64(double 0x3CAC200000000000, double %19474, double %19466)
  %19476 = load ptr, ptr %7, align 8, !tbaa !9
  %19477 = load i32, ptr %12, align 4, !tbaa !5
  %19478 = load i32, ptr %8, align 4, !tbaa !5
  %19479 = mul nsw i32 37, %19478
  %19480 = add nsw i32 %19477, %19479
  %19481 = sext i32 %19480 to i64
  %19482 = getelementptr inbounds double, ptr %19476, i64 %19481
  %19483 = load double, ptr %19482, align 8, !tbaa !11
  %19484 = call double @llvm.fmuladd.f64(double 0x3CB0100000000000, double %19483, double %19475)
  %19485 = load ptr, ptr %7, align 8, !tbaa !9
  %19486 = load i32, ptr %12, align 4, !tbaa !5
  %19487 = load i32, ptr %8, align 4, !tbaa !5
  %19488 = mul nsw i32 38, %19487
  %19489 = add nsw i32 %19486, %19488
  %19490 = sext i32 %19489 to i64
  %19491 = getelementptr inbounds double, ptr %19485, i64 %19490
  %19492 = load double, ptr %19491, align 8, !tbaa !11
  %19493 = call double @llvm.fmuladd.f64(double 0x3C7C000000000000, double %19492, double %19484)
  %19494 = load ptr, ptr %7, align 8, !tbaa !9
  %19495 = load i32, ptr %12, align 4, !tbaa !5
  %19496 = load i32, ptr %8, align 4, !tbaa !5
  %19497 = mul nsw i32 39, %19496
  %19498 = add nsw i32 %19495, %19497
  %19499 = sext i32 %19498 to i64
  %19500 = getelementptr inbounds double, ptr %19494, i64 %19499
  %19501 = load double, ptr %19500, align 8, !tbaa !11
  %19502 = call double @llvm.fmuladd.f64(double 0xBC64000000000000, double %19501, double %19493)
  store double %19502, ptr %11, align 8, !tbaa !11
  %19503 = load double, ptr %11, align 8, !tbaa !11
  %19504 = load ptr, ptr %9, align 8, !tbaa !9
  %19505 = load i32, ptr %12, align 4, !tbaa !5
  %19506 = load i32, ptr %10, align 4, !tbaa !5
  %19507 = mul nsw i32 53, %19506
  %19508 = add nsw i32 %19505, %19507
  %19509 = sext i32 %19508 to i64
  %19510 = getelementptr inbounds double, ptr %19504, i64 %19509
  %19511 = load double, ptr %19510, align 8, !tbaa !11
  %19512 = fadd double %19511, %19503
  store double %19512, ptr %19510, align 8, !tbaa !11
  %19513 = load ptr, ptr %7, align 8, !tbaa !9
  %19514 = load i32, ptr %12, align 4, !tbaa !5
  %19515 = load i32, ptr %8, align 4, !tbaa !5
  %19516 = mul nsw i32 0, %19515
  %19517 = add nsw i32 %19514, %19516
  %19518 = sext i32 %19517 to i64
  %19519 = getelementptr inbounds double, ptr %19513, i64 %19518
  %19520 = load double, ptr %19519, align 8, !tbaa !11
  %19521 = load ptr, ptr %7, align 8, !tbaa !9
  %19522 = load i32, ptr %12, align 4, !tbaa !5
  %19523 = load i32, ptr %8, align 4, !tbaa !5
  %19524 = mul nsw i32 1, %19523
  %19525 = add nsw i32 %19522, %19524
  %19526 = sext i32 %19525 to i64
  %19527 = getelementptr inbounds double, ptr %19521, i64 %19526
  %19528 = load double, ptr %19527, align 8, !tbaa !11
  %19529 = fmul double 0x3FA87D764354852C, %19528
  %19530 = call double @llvm.fmuladd.f64(double 0xBFE333710B32A29C, double %19520, double %19529)
  %19531 = load ptr, ptr %7, align 8, !tbaa !9
  %19532 = load i32, ptr %12, align 4, !tbaa !5
  %19533 = load i32, ptr %8, align 4, !tbaa !5
  %19534 = mul nsw i32 2, %19533
  %19535 = add nsw i32 %19532, %19534
  %19536 = sext i32 %19535 to i64
  %19537 = getelementptr inbounds double, ptr %19531, i64 %19536
  %19538 = load double, ptr %19537, align 8, !tbaa !11
  %19539 = call double @llvm.fmuladd.f64(double 0xBFA352D4DB969BDD, double %19538, double %19530)
  %19540 = load ptr, ptr %7, align 8, !tbaa !9
  %19541 = load i32, ptr %12, align 4, !tbaa !5
  %19542 = load i32, ptr %8, align 4, !tbaa !5
  %19543 = mul nsw i32 3, %19542
  %19544 = add nsw i32 %19541, %19543
  %19545 = sext i32 %19544 to i64
  %19546 = getelementptr inbounds double, ptr %19540, i64 %19545
  %19547 = load double, ptr %19546, align 8, !tbaa !11
  %19548 = call double @llvm.fmuladd.f64(double 0xBFBEED13A9F0D917, double %19547, double %19539)
  %19549 = load ptr, ptr %7, align 8, !tbaa !9
  %19550 = load i32, ptr %12, align 4, !tbaa !5
  %19551 = load i32, ptr %8, align 4, !tbaa !5
  %19552 = mul nsw i32 4, %19551
  %19553 = add nsw i32 %19550, %19552
  %19554 = sext i32 %19553 to i64
  %19555 = getelementptr inbounds double, ptr %19549, i64 %19554
  %19556 = load double, ptr %19555, align 8, !tbaa !11
  %19557 = call double @llvm.fmuladd.f64(double 0x3FC36A9134CD3C6E, double %19556, double %19548)
  %19558 = load ptr, ptr %7, align 8, !tbaa !9
  %19559 = load i32, ptr %12, align 4, !tbaa !5
  %19560 = load i32, ptr %8, align 4, !tbaa !5
  %19561 = mul nsw i32 5, %19560
  %19562 = add nsw i32 %19559, %19561
  %19563 = sext i32 %19562 to i64
  %19564 = getelementptr inbounds double, ptr %19558, i64 %19563
  %19565 = load double, ptr %19564, align 8, !tbaa !11
  %19566 = call double @llvm.fmuladd.f64(double 0x3FD35DAE88CBA63D, double %19565, double %19557)
  %19567 = load ptr, ptr %7, align 8, !tbaa !9
  %19568 = load i32, ptr %12, align 4, !tbaa !5
  %19569 = load i32, ptr %8, align 4, !tbaa !5
  %19570 = mul nsw i32 6, %19569
  %19571 = add nsw i32 %19568, %19570
  %19572 = sext i32 %19571 to i64
  %19573 = getelementptr inbounds double, ptr %19567, i64 %19572
  %19574 = load double, ptr %19573, align 8, !tbaa !11
  %19575 = call double @llvm.fmuladd.f64(double 0x3FC27B05E24EC5ED, double %19574, double %19566)
  %19576 = load ptr, ptr %7, align 8, !tbaa !9
  %19577 = load i32, ptr %12, align 4, !tbaa !5
  %19578 = load i32, ptr %8, align 4, !tbaa !5
  %19579 = mul nsw i32 7, %19578
  %19580 = add nsw i32 %19577, %19579
  %19581 = sext i32 %19580 to i64
  %19582 = getelementptr inbounds double, ptr %19576, i64 %19581
  %19583 = load double, ptr %19582, align 8, !tbaa !11
  %19584 = call double @llvm.fmuladd.f64(double 0x3F9854E0ADA34B6D, double %19583, double %19575)
  %19585 = load ptr, ptr %7, align 8, !tbaa !9
  %19586 = load i32, ptr %12, align 4, !tbaa !5
  %19587 = load i32, ptr %8, align 4, !tbaa !5
  %19588 = mul nsw i32 8, %19587
  %19589 = add nsw i32 %19586, %19588
  %19590 = sext i32 %19589 to i64
  %19591 = getelementptr inbounds double, ptr %19585, i64 %19590
  %19592 = load double, ptr %19591, align 8, !tbaa !11
  %19593 = call double @llvm.fmuladd.f64(double 0xBFD41C0D131D428A, double %19592, double %19584)
  %19594 = load ptr, ptr %7, align 8, !tbaa !9
  %19595 = load i32, ptr %12, align 4, !tbaa !5
  %19596 = load i32, ptr %8, align 4, !tbaa !5
  %19597 = mul nsw i32 9, %19596
  %19598 = add nsw i32 %19595, %19597
  %19599 = sext i32 %19598 to i64
  %19600 = getelementptr inbounds double, ptr %19594, i64 %19599
  %19601 = load double, ptr %19600, align 8, !tbaa !11
  %19602 = call double @llvm.fmuladd.f64(double 0x3FF670C5F1F4C92E, double %19601, double %19593)
  %19603 = load ptr, ptr %7, align 8, !tbaa !9
  %19604 = load i32, ptr %12, align 4, !tbaa !5
  %19605 = load i32, ptr %8, align 4, !tbaa !5
  %19606 = mul nsw i32 10, %19605
  %19607 = add nsw i32 %19604, %19606
  %19608 = sext i32 %19607 to i64
  %19609 = getelementptr inbounds double, ptr %19603, i64 %19608
  %19610 = load double, ptr %19609, align 8, !tbaa !11
  %19611 = call double @llvm.fmuladd.f64(double 0x3CB07FFFFFFFFFFF, double %19610, double %19602)
  %19612 = load ptr, ptr %7, align 8, !tbaa !9
  %19613 = load i32, ptr %12, align 4, !tbaa !5
  %19614 = load i32, ptr %8, align 4, !tbaa !5
  %19615 = mul nsw i32 11, %19614
  %19616 = add nsw i32 %19613, %19615
  %19617 = sext i32 %19616 to i64
  %19618 = getelementptr inbounds double, ptr %19612, i64 %19617
  %19619 = load double, ptr %19618, align 8, !tbaa !11
  %19620 = call double @llvm.fmuladd.f64(double 0x3C84000000000000, double %19619, double %19611)
  %19621 = load ptr, ptr %7, align 8, !tbaa !9
  %19622 = load i32, ptr %12, align 4, !tbaa !5
  %19623 = load i32, ptr %8, align 4, !tbaa !5
  %19624 = mul nsw i32 12, %19623
  %19625 = add nsw i32 %19622, %19624
  %19626 = sext i32 %19625 to i64
  %19627 = getelementptr inbounds double, ptr %19621, i64 %19626
  %19628 = load double, ptr %19627, align 8, !tbaa !11
  %19629 = call double @llvm.fmuladd.f64(double 0x3CA1C00000000000, double %19628, double %19620)
  %19630 = load ptr, ptr %7, align 8, !tbaa !9
  %19631 = load i32, ptr %12, align 4, !tbaa !5
  %19632 = load i32, ptr %8, align 4, !tbaa !5
  %19633 = mul nsw i32 13, %19632
  %19634 = add nsw i32 %19631, %19633
  %19635 = sext i32 %19634 to i64
  %19636 = getelementptr inbounds double, ptr %19630, i64 %19635
  %19637 = load double, ptr %19636, align 8, !tbaa !11
  %19638 = call double @llvm.fmuladd.f64(double 0x3C8E000000000000, double %19637, double %19629)
  %19639 = load ptr, ptr %7, align 8, !tbaa !9
  %19640 = load i32, ptr %12, align 4, !tbaa !5
  %19641 = load i32, ptr %8, align 4, !tbaa !5
  %19642 = mul nsw i32 14, %19641
  %19643 = add nsw i32 %19640, %19642
  %19644 = sext i32 %19643 to i64
  %19645 = getelementptr inbounds double, ptr %19639, i64 %19644
  %19646 = load double, ptr %19645, align 8, !tbaa !11
  %19647 = call double @llvm.fmuladd.f64(double 0xBCA5000000000000, double %19646, double %19638)
  %19648 = load ptr, ptr %7, align 8, !tbaa !9
  %19649 = load i32, ptr %12, align 4, !tbaa !5
  %19650 = load i32, ptr %8, align 4, !tbaa !5
  %19651 = mul nsw i32 15, %19650
  %19652 = add nsw i32 %19649, %19651
  %19653 = sext i32 %19652 to i64
  %19654 = getelementptr inbounds double, ptr %19648, i64 %19653
  %19655 = load double, ptr %19654, align 8, !tbaa !11
  %19656 = call double @llvm.fmuladd.f64(double 0x3C88000000000000, double %19655, double %19647)
  %19657 = load ptr, ptr %7, align 8, !tbaa !9
  %19658 = load i32, ptr %12, align 4, !tbaa !5
  %19659 = load i32, ptr %8, align 4, !tbaa !5
  %19660 = mul nsw i32 16, %19659
  %19661 = add nsw i32 %19658, %19660
  %19662 = sext i32 %19661 to i64
  %19663 = getelementptr inbounds double, ptr %19657, i64 %19662
  %19664 = load double, ptr %19663, align 8, !tbaa !11
  %19665 = call double @llvm.fmuladd.f64(double 0xBC91000000000000, double %19664, double %19656)
  %19666 = load ptr, ptr %7, align 8, !tbaa !9
  %19667 = load i32, ptr %12, align 4, !tbaa !5
  %19668 = load i32, ptr %8, align 4, !tbaa !5
  %19669 = mul nsw i32 17, %19668
  %19670 = add nsw i32 %19667, %19669
  %19671 = sext i32 %19670 to i64
  %19672 = getelementptr inbounds double, ptr %19666, i64 %19671
  %19673 = load double, ptr %19672, align 8, !tbaa !11
  %19674 = call double @llvm.fmuladd.f64(double 0xBC9DFFFFFFFFFFFE, double %19673, double %19665)
  %19675 = load ptr, ptr %7, align 8, !tbaa !9
  %19676 = load i32, ptr %12, align 4, !tbaa !5
  %19677 = load i32, ptr %8, align 4, !tbaa !5
  %19678 = mul nsw i32 18, %19677
  %19679 = add nsw i32 %19676, %19678
  %19680 = sext i32 %19679 to i64
  %19681 = getelementptr inbounds double, ptr %19675, i64 %19680
  %19682 = load double, ptr %19681, align 8, !tbaa !11
  %19683 = call double @llvm.fmuladd.f64(double 0xBCA9FFFFFFFFFFFE, double %19682, double %19674)
  %19684 = load ptr, ptr %7, align 8, !tbaa !9
  %19685 = load i32, ptr %12, align 4, !tbaa !5
  %19686 = load i32, ptr %8, align 4, !tbaa !5
  %19687 = mul nsw i32 19, %19686
  %19688 = add nsw i32 %19685, %19687
  %19689 = sext i32 %19688 to i64
  %19690 = getelementptr inbounds double, ptr %19684, i64 %19689
  %19691 = load double, ptr %19690, align 8, !tbaa !11
  %19692 = call double @llvm.fmuladd.f64(double 0x3C92000000000000, double %19691, double %19683)
  %19693 = load ptr, ptr %7, align 8, !tbaa !9
  %19694 = load i32, ptr %12, align 4, !tbaa !5
  %19695 = load i32, ptr %8, align 4, !tbaa !5
  %19696 = mul nsw i32 20, %19695
  %19697 = add nsw i32 %19694, %19696
  %19698 = sext i32 %19697 to i64
  %19699 = getelementptr inbounds double, ptr %19693, i64 %19698
  %19700 = load double, ptr %19699, align 8, !tbaa !11
  %19701 = call double @llvm.fmuladd.f64(double 0x3C96000000000000, double %19700, double %19692)
  %19702 = load ptr, ptr %7, align 8, !tbaa !9
  %19703 = load i32, ptr %12, align 4, !tbaa !5
  %19704 = load i32, ptr %8, align 4, !tbaa !5
  %19705 = mul nsw i32 21, %19704
  %19706 = add nsw i32 %19703, %19705
  %19707 = sext i32 %19706 to i64
  %19708 = getelementptr inbounds double, ptr %19702, i64 %19707
  %19709 = load double, ptr %19708, align 8, !tbaa !11
  %19710 = call double @llvm.fmuladd.f64(double 0xBCA5000000000000, double %19709, double %19701)
  %19711 = load ptr, ptr %7, align 8, !tbaa !9
  %19712 = load i32, ptr %12, align 4, !tbaa !5
  %19713 = load i32, ptr %8, align 4, !tbaa !5
  %19714 = mul nsw i32 22, %19713
  %19715 = add nsw i32 %19712, %19714
  %19716 = sext i32 %19715 to i64
  %19717 = getelementptr inbounds double, ptr %19711, i64 %19716
  %19718 = load double, ptr %19717, align 8, !tbaa !11
  %19719 = call double @llvm.fmuladd.f64(double 0xBCAB800000000001, double %19718, double %19710)
  %19720 = load ptr, ptr %7, align 8, !tbaa !9
  %19721 = load i32, ptr %12, align 4, !tbaa !5
  %19722 = load i32, ptr %8, align 4, !tbaa !5
  %19723 = mul nsw i32 23, %19722
  %19724 = add nsw i32 %19721, %19723
  %19725 = sext i32 %19724 to i64
  %19726 = getelementptr inbounds double, ptr %19720, i64 %19725
  %19727 = load double, ptr %19726, align 8, !tbaa !11
  %19728 = call double @llvm.fmuladd.f64(double 0x3CB09FFFFFFFFFFF, double %19727, double %19719)
  %19729 = load ptr, ptr %7, align 8, !tbaa !9
  %19730 = load i32, ptr %12, align 4, !tbaa !5
  %19731 = load i32, ptr %8, align 4, !tbaa !5
  %19732 = mul nsw i32 24, %19731
  %19733 = add nsw i32 %19730, %19732
  %19734 = sext i32 %19733 to i64
  %19735 = getelementptr inbounds double, ptr %19729, i64 %19734
  %19736 = load double, ptr %19735, align 8, !tbaa !11
  %19737 = call double @llvm.fmuladd.f64(double 0xBC78000000000002, double %19736, double %19728)
  %19738 = load ptr, ptr %7, align 8, !tbaa !9
  %19739 = load i32, ptr %12, align 4, !tbaa !5
  %19740 = load i32, ptr %8, align 4, !tbaa !5
  %19741 = mul nsw i32 25, %19740
  %19742 = add nsw i32 %19739, %19741
  %19743 = sext i32 %19742 to i64
  %19744 = getelementptr inbounds double, ptr %19738, i64 %19743
  %19745 = load double, ptr %19744, align 8, !tbaa !11
  %19746 = call double @llvm.fmuladd.f64(double 0x3CB0000000000000, double %19745, double %19737)
  %19747 = load ptr, ptr %7, align 8, !tbaa !9
  %19748 = load i32, ptr %12, align 4, !tbaa !5
  %19749 = load i32, ptr %8, align 4, !tbaa !5
  %19750 = mul nsw i32 26, %19749
  %19751 = add nsw i32 %19748, %19750
  %19752 = sext i32 %19751 to i64
  %19753 = getelementptr inbounds double, ptr %19747, i64 %19752
  %19754 = load double, ptr %19753, align 8, !tbaa !11
  %19755 = call double @llvm.fmuladd.f64(double 0x3C8D000000000001, double %19754, double %19746)
  %19756 = load ptr, ptr %7, align 8, !tbaa !9
  %19757 = load i32, ptr %12, align 4, !tbaa !5
  %19758 = load i32, ptr %8, align 4, !tbaa !5
  %19759 = mul nsw i32 27, %19758
  %19760 = add nsw i32 %19757, %19759
  %19761 = sext i32 %19760 to i64
  %19762 = getelementptr inbounds double, ptr %19756, i64 %19761
  %19763 = load double, ptr %19762, align 8, !tbaa !11
  %19764 = call double @llvm.fmuladd.f64(double 0x3C60000000000000, double %19763, double %19755)
  %19765 = load ptr, ptr %7, align 8, !tbaa !9
  %19766 = load i32, ptr %12, align 4, !tbaa !5
  %19767 = load i32, ptr %8, align 4, !tbaa !5
  %19768 = mul nsw i32 28, %19767
  %19769 = add nsw i32 %19766, %19768
  %19770 = sext i32 %19769 to i64
  %19771 = getelementptr inbounds double, ptr %19765, i64 %19770
  %19772 = load double, ptr %19771, align 8, !tbaa !11
  %19773 = call double @llvm.fmuladd.f64(double 0xBC9C000000000000, double %19772, double %19764)
  %19774 = load ptr, ptr %7, align 8, !tbaa !9
  %19775 = load i32, ptr %12, align 4, !tbaa !5
  %19776 = load i32, ptr %8, align 4, !tbaa !5
  %19777 = mul nsw i32 29, %19776
  %19778 = add nsw i32 %19775, %19777
  %19779 = sext i32 %19778 to i64
  %19780 = getelementptr inbounds double, ptr %19774, i64 %19779
  %19781 = load double, ptr %19780, align 8, !tbaa !11
  %19782 = call double @llvm.fmuladd.f64(double 0x3C9DFFFFFFFFFFFE, double %19781, double %19773)
  %19783 = load ptr, ptr %7, align 8, !tbaa !9
  %19784 = load i32, ptr %12, align 4, !tbaa !5
  %19785 = load i32, ptr %8, align 4, !tbaa !5
  %19786 = mul nsw i32 30, %19785
  %19787 = add nsw i32 %19784, %19786
  %19788 = sext i32 %19787 to i64
  %19789 = getelementptr inbounds double, ptr %19783, i64 %19788
  %19790 = load double, ptr %19789, align 8, !tbaa !11
  %19791 = call double @llvm.fmuladd.f64(double 0xBCBA800000000000, double %19790, double %19782)
  %19792 = load ptr, ptr %7, align 8, !tbaa !9
  %19793 = load i32, ptr %12, align 4, !tbaa !5
  %19794 = load i32, ptr %8, align 4, !tbaa !5
  %19795 = mul nsw i32 31, %19794
  %19796 = add nsw i32 %19793, %19795
  %19797 = sext i32 %19796 to i64
  %19798 = getelementptr inbounds double, ptr %19792, i64 %19797
  %19799 = load double, ptr %19798, align 8, !tbaa !11
  %19800 = call double @llvm.fmuladd.f64(double 0xBC84000000000000, double %19799, double %19791)
  %19801 = load ptr, ptr %7, align 8, !tbaa !9
  %19802 = load i32, ptr %12, align 4, !tbaa !5
  %19803 = load i32, ptr %8, align 4, !tbaa !5
  %19804 = mul nsw i32 32, %19803
  %19805 = add nsw i32 %19802, %19804
  %19806 = sext i32 %19805 to i64
  %19807 = getelementptr inbounds double, ptr %19801, i64 %19806
  %19808 = load double, ptr %19807, align 8, !tbaa !11
  %19809 = call double @llvm.fmuladd.f64(double 0x3C62000000000000, double %19808, double %19800)
  %19810 = load ptr, ptr %7, align 8, !tbaa !9
  %19811 = load i32, ptr %12, align 4, !tbaa !5
  %19812 = load i32, ptr %8, align 4, !tbaa !5
  %19813 = mul nsw i32 33, %19812
  %19814 = add nsw i32 %19811, %19813
  %19815 = sext i32 %19814 to i64
  %19816 = getelementptr inbounds double, ptr %19810, i64 %19815
  %19817 = load double, ptr %19816, align 8, !tbaa !11
  %19818 = call double @llvm.fmuladd.f64(double 0x3C7E800000000001, double %19817, double %19809)
  %19819 = load ptr, ptr %7, align 8, !tbaa !9
  %19820 = load i32, ptr %12, align 4, !tbaa !5
  %19821 = load i32, ptr %8, align 4, !tbaa !5
  %19822 = mul nsw i32 34, %19821
  %19823 = add nsw i32 %19820, %19822
  %19824 = sext i32 %19823 to i64
  %19825 = getelementptr inbounds double, ptr %19819, i64 %19824
  %19826 = load double, ptr %19825, align 8, !tbaa !11
  %19827 = call double @llvm.fmuladd.f64(double 0x3CA0C00000000001, double %19826, double %19818)
  %19828 = load ptr, ptr %7, align 8, !tbaa !9
  %19829 = load i32, ptr %12, align 4, !tbaa !5
  %19830 = load i32, ptr %8, align 4, !tbaa !5
  %19831 = mul nsw i32 35, %19830
  %19832 = add nsw i32 %19829, %19831
  %19833 = sext i32 %19832 to i64
  %19834 = getelementptr inbounds double, ptr %19828, i64 %19833
  %19835 = load double, ptr %19834, align 8, !tbaa !11
  %19836 = call double @llvm.fmuladd.f64(double 0x3C6C000000000000, double %19835, double %19827)
  %19837 = load ptr, ptr %7, align 8, !tbaa !9
  %19838 = load i32, ptr %12, align 4, !tbaa !5
  %19839 = load i32, ptr %8, align 4, !tbaa !5
  %19840 = mul nsw i32 36, %19839
  %19841 = add nsw i32 %19838, %19840
  %19842 = sext i32 %19841 to i64
  %19843 = getelementptr inbounds double, ptr %19837, i64 %19842
  %19844 = load double, ptr %19843, align 8, !tbaa !11
  %19845 = call double @llvm.fmuladd.f64(double 0x3C71000000000000, double %19844, double %19836)
  %19846 = load ptr, ptr %7, align 8, !tbaa !9
  %19847 = load i32, ptr %12, align 4, !tbaa !5
  %19848 = load i32, ptr %8, align 4, !tbaa !5
  %19849 = mul nsw i32 37, %19848
  %19850 = add nsw i32 %19847, %19849
  %19851 = sext i32 %19850 to i64
  %19852 = getelementptr inbounds double, ptr %19846, i64 %19851
  %19853 = load double, ptr %19852, align 8, !tbaa !11
  %19854 = call double @llvm.fmuladd.f64(double 0x3C91C00000000000, double %19853, double %19845)
  %19855 = load ptr, ptr %7, align 8, !tbaa !9
  %19856 = load i32, ptr %12, align 4, !tbaa !5
  %19857 = load i32, ptr %8, align 4, !tbaa !5
  %19858 = mul nsw i32 39, %19857
  %19859 = add nsw i32 %19856, %19858
  %19860 = sext i32 %19859 to i64
  %19861 = getelementptr inbounds double, ptr %19855, i64 %19860
  %19862 = load double, ptr %19861, align 8, !tbaa !11
  %19863 = call double @llvm.fmuladd.f64(double 0x3C9A000000000000, double %19862, double %19854)
  store double %19863, ptr %11, align 8, !tbaa !11
  %19864 = load double, ptr %11, align 8, !tbaa !11
  %19865 = load ptr, ptr %9, align 8, !tbaa !9
  %19866 = load i32, ptr %12, align 4, !tbaa !5
  %19867 = load i32, ptr %10, align 4, !tbaa !5
  %19868 = mul nsw i32 54, %19867
  %19869 = add nsw i32 %19866, %19868
  %19870 = sext i32 %19869 to i64
  %19871 = getelementptr inbounds double, ptr %19865, i64 %19870
  %19872 = load double, ptr %19871, align 8, !tbaa !11
  %19873 = fadd double %19872, %19864
  store double %19873, ptr %19871, align 8, !tbaa !11
  %19874 = load ptr, ptr %7, align 8, !tbaa !9
  %19875 = load i32, ptr %12, align 4, !tbaa !5
  %19876 = load i32, ptr %8, align 4, !tbaa !5
  %19877 = mul nsw i32 0, %19876
  %19878 = add nsw i32 %19875, %19877
  %19879 = sext i32 %19878 to i64
  %19880 = getelementptr inbounds double, ptr %19874, i64 %19879
  %19881 = load double, ptr %19880, align 8, !tbaa !11
  %19882 = load ptr, ptr %7, align 8, !tbaa !9
  %19883 = load i32, ptr %12, align 4, !tbaa !5
  %19884 = load i32, ptr %8, align 4, !tbaa !5
  %19885 = mul nsw i32 1, %19884
  %19886 = add nsw i32 %19883, %19885
  %19887 = sext i32 %19886 to i64
  %19888 = getelementptr inbounds double, ptr %19882, i64 %19887
  %19889 = load double, ptr %19888, align 8, !tbaa !11
  %19890 = fmul double 0x3FF4EC1BB3FDC612, %19889
  %19891 = call double @llvm.fmuladd.f64(double 0xBF83152016E0EB78, double %19881, double %19890)
  %19892 = load ptr, ptr %7, align 8, !tbaa !9
  %19893 = load i32, ptr %12, align 4, !tbaa !5
  %19894 = load i32, ptr %8, align 4, !tbaa !5
  %19895 = mul nsw i32 2, %19894
  %19896 = add nsw i32 %19893, %19895
  %19897 = sext i32 %19896 to i64
  %19898 = getelementptr inbounds double, ptr %19892, i64 %19897
  %19899 = load double, ptr %19898, align 8, !tbaa !11
  %19900 = call double @llvm.fmuladd.f64(double 0x3F938CE4890DB341, double %19899, double %19891)
  %19901 = load ptr, ptr %7, align 8, !tbaa !9
  %19902 = load i32, ptr %12, align 4, !tbaa !5
  %19903 = load i32, ptr %8, align 4, !tbaa !5
  %19904 = mul nsw i32 3, %19903
  %19905 = add nsw i32 %19902, %19904
  %19906 = sext i32 %19905 to i64
  %19907 = getelementptr inbounds double, ptr %19901, i64 %19906
  %19908 = load double, ptr %19907, align 8, !tbaa !11
  %19909 = call double @llvm.fmuladd.f64(double 0xBFB5B58B4F03B1B9, double %19908, double %19900)
  %19910 = load ptr, ptr %7, align 8, !tbaa !9
  %19911 = load i32, ptr %12, align 4, !tbaa !5
  %19912 = load i32, ptr %8, align 4, !tbaa !5
  %19913 = mul nsw i32 4, %19912
  %19914 = add nsw i32 %19911, %19913
  %19915 = sext i32 %19914 to i64
  %19916 = getelementptr inbounds double, ptr %19910, i64 %19915
  %19917 = load double, ptr %19916, align 8, !tbaa !11
  %19918 = call double @llvm.fmuladd.f64(double 0xBFB49217631F592E, double %19917, double %19909)
  %19919 = load ptr, ptr %7, align 8, !tbaa !9
  %19920 = load i32, ptr %12, align 4, !tbaa !5
  %19921 = load i32, ptr %8, align 4, !tbaa !5
  %19922 = mul nsw i32 5, %19921
  %19923 = add nsw i32 %19920, %19922
  %19924 = sext i32 %19923 to i64
  %19925 = getelementptr inbounds double, ptr %19919, i64 %19924
  %19926 = load double, ptr %19925, align 8, !tbaa !11
  %19927 = call double @llvm.fmuladd.f64(double 0x3FD417DEBFC17B18, double %19926, double %19918)
  %19928 = load ptr, ptr %7, align 8, !tbaa !9
  %19929 = load i32, ptr %12, align 4, !tbaa !5
  %19930 = load i32, ptr %8, align 4, !tbaa !5
  %19931 = mul nsw i32 6, %19930
  %19932 = add nsw i32 %19929, %19931
  %19933 = sext i32 %19932 to i64
  %19934 = getelementptr inbounds double, ptr %19928, i64 %19933
  %19935 = load double, ptr %19934, align 8, !tbaa !11
  %19936 = call double @llvm.fmuladd.f64(double 0xBF8BDAF699AECFD9, double %19935, double %19927)
  %19937 = load ptr, ptr %7, align 8, !tbaa !9
  %19938 = load i32, ptr %12, align 4, !tbaa !5
  %19939 = load i32, ptr %8, align 4, !tbaa !5
  %19940 = mul nsw i32 7, %19939
  %19941 = add nsw i32 %19938, %19940
  %19942 = sext i32 %19941 to i64
  %19943 = getelementptr inbounds double, ptr %19937, i64 %19942
  %19944 = load double, ptr %19943, align 8, !tbaa !11
  %19945 = call double @llvm.fmuladd.f64(double 0x3F85E50BB681A3A1, double %19944, double %19936)
  %19946 = load ptr, ptr %7, align 8, !tbaa !9
  %19947 = load i32, ptr %12, align 4, !tbaa !5
  %19948 = load i32, ptr %8, align 4, !tbaa !5
  %19949 = mul nsw i32 8, %19948
  %19950 = add nsw i32 %19947, %19949
  %19951 = sext i32 %19950 to i64
  %19952 = getelementptr inbounds double, ptr %19946, i64 %19951
  %19953 = load double, ptr %19952, align 8, !tbaa !11
  %19954 = call double @llvm.fmuladd.f64(double 0xBFE5679E70A6065C, double %19953, double %19945)
  %19955 = load ptr, ptr %7, align 8, !tbaa !9
  %19956 = load i32, ptr %12, align 4, !tbaa !5
  %19957 = load i32, ptr %8, align 4, !tbaa !5
  %19958 = mul nsw i32 9, %19957
  %19959 = add nsw i32 %19956, %19958
  %19960 = sext i32 %19959 to i64
  %19961 = getelementptr inbounds double, ptr %19955, i64 %19960
  %19962 = load double, ptr %19961, align 8, !tbaa !11
  %19963 = call double @llvm.fmuladd.f64(double 0x3FCA50C41AB7A32C, double %19962, double %19954)
  %19964 = load ptr, ptr %7, align 8, !tbaa !9
  %19965 = load i32, ptr %12, align 4, !tbaa !5
  %19966 = load i32, ptr %8, align 4, !tbaa !5
  %19967 = mul nsw i32 10, %19966
  %19968 = add nsw i32 %19965, %19967
  %19969 = sext i32 %19968 to i64
  %19970 = getelementptr inbounds double, ptr %19964, i64 %19969
  %19971 = load double, ptr %19970, align 8, !tbaa !11
  %19972 = call double @llvm.fmuladd.f64(double 0xBCAC000000000000, double %19971, double %19963)
  %19973 = load ptr, ptr %7, align 8, !tbaa !9
  %19974 = load i32, ptr %12, align 4, !tbaa !5
  %19975 = load i32, ptr %8, align 4, !tbaa !5
  %19976 = mul nsw i32 11, %19975
  %19977 = add nsw i32 %19974, %19976
  %19978 = sext i32 %19977 to i64
  %19979 = getelementptr inbounds double, ptr %19973, i64 %19978
  %19980 = load double, ptr %19979, align 8, !tbaa !11
  %19981 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %19980, double %19972)
  %19982 = load ptr, ptr %7, align 8, !tbaa !9
  %19983 = load i32, ptr %12, align 4, !tbaa !5
  %19984 = load i32, ptr %8, align 4, !tbaa !5
  %19985 = mul nsw i32 12, %19984
  %19986 = add nsw i32 %19983, %19985
  %19987 = sext i32 %19986 to i64
  %19988 = getelementptr inbounds double, ptr %19982, i64 %19987
  %19989 = load double, ptr %19988, align 8, !tbaa !11
  %19990 = call double @llvm.fmuladd.f64(double 0x3C70000000000001, double %19989, double %19981)
  %19991 = load ptr, ptr %7, align 8, !tbaa !9
  %19992 = load i32, ptr %12, align 4, !tbaa !5
  %19993 = load i32, ptr %8, align 4, !tbaa !5
  %19994 = mul nsw i32 13, %19993
  %19995 = add nsw i32 %19992, %19994
  %19996 = sext i32 %19995 to i64
  %19997 = getelementptr inbounds double, ptr %19991, i64 %19996
  %19998 = load double, ptr %19997, align 8, !tbaa !11
  %19999 = call double @llvm.fmuladd.f64(double 0xBC86000000000001, double %19998, double %19990)
  %20000 = load ptr, ptr %7, align 8, !tbaa !9
  %20001 = load i32, ptr %12, align 4, !tbaa !5
  %20002 = load i32, ptr %8, align 4, !tbaa !5
  %20003 = mul nsw i32 14, %20002
  %20004 = add nsw i32 %20001, %20003
  %20005 = sext i32 %20004 to i64
  %20006 = getelementptr inbounds double, ptr %20000, i64 %20005
  %20007 = load double, ptr %20006, align 8, !tbaa !11
  %20008 = call double @llvm.fmuladd.f64(double 0xBCAC000000000000, double %20007, double %19999)
  %20009 = load ptr, ptr %7, align 8, !tbaa !9
  %20010 = load i32, ptr %12, align 4, !tbaa !5
  %20011 = load i32, ptr %8, align 4, !tbaa !5
  %20012 = mul nsw i32 16, %20011
  %20013 = add nsw i32 %20010, %20012
  %20014 = sext i32 %20013 to i64
  %20015 = getelementptr inbounds double, ptr %20009, i64 %20014
  %20016 = load double, ptr %20015, align 8, !tbaa !11
  %20017 = call double @llvm.fmuladd.f64(double 0x3CAC000000000000, double %20016, double %20008)
  %20018 = load ptr, ptr %7, align 8, !tbaa !9
  %20019 = load i32, ptr %12, align 4, !tbaa !5
  %20020 = load i32, ptr %8, align 4, !tbaa !5
  %20021 = mul nsw i32 17, %20020
  %20022 = add nsw i32 %20019, %20021
  %20023 = sext i32 %20022 to i64
  %20024 = getelementptr inbounds double, ptr %20018, i64 %20023
  %20025 = load double, ptr %20024, align 8, !tbaa !11
  %20026 = call double @llvm.fmuladd.f64(double 0xBC60000000000000, double %20025, double %20017)
  %20027 = load ptr, ptr %7, align 8, !tbaa !9
  %20028 = load i32, ptr %12, align 4, !tbaa !5
  %20029 = load i32, ptr %8, align 4, !tbaa !5
  %20030 = mul nsw i32 18, %20029
  %20031 = add nsw i32 %20028, %20030
  %20032 = sext i32 %20031 to i64
  %20033 = getelementptr inbounds double, ptr %20027, i64 %20032
  %20034 = load double, ptr %20033, align 8, !tbaa !11
  %20035 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %20034, double %20026)
  %20036 = load ptr, ptr %7, align 8, !tbaa !9
  %20037 = load i32, ptr %12, align 4, !tbaa !5
  %20038 = load i32, ptr %8, align 4, !tbaa !5
  %20039 = mul nsw i32 19, %20038
  %20040 = add nsw i32 %20037, %20039
  %20041 = sext i32 %20040 to i64
  %20042 = getelementptr inbounds double, ptr %20036, i64 %20041
  %20043 = load double, ptr %20042, align 8, !tbaa !11
  %20044 = call double @llvm.fmuladd.f64(double 0xBC98000000000000, double %20043, double %20035)
  %20045 = load ptr, ptr %7, align 8, !tbaa !9
  %20046 = load i32, ptr %12, align 4, !tbaa !5
  %20047 = load i32, ptr %8, align 4, !tbaa !5
  %20048 = mul nsw i32 20, %20047
  %20049 = add nsw i32 %20046, %20048
  %20050 = sext i32 %20049 to i64
  %20051 = getelementptr inbounds double, ptr %20045, i64 %20050
  %20052 = load double, ptr %20051, align 8, !tbaa !11
  %20053 = call double @llvm.fmuladd.f64(double 0xBC98000000000000, double %20052, double %20044)
  %20054 = load ptr, ptr %7, align 8, !tbaa !9
  %20055 = load i32, ptr %12, align 4, !tbaa !5
  %20056 = load i32, ptr %8, align 4, !tbaa !5
  %20057 = mul nsw i32 21, %20056
  %20058 = add nsw i32 %20055, %20057
  %20059 = sext i32 %20058 to i64
  %20060 = getelementptr inbounds double, ptr %20054, i64 %20059
  %20061 = load double, ptr %20060, align 8, !tbaa !11
  %20062 = call double @llvm.fmuladd.f64(double 0x3CA0000000000002, double %20061, double %20053)
  %20063 = load ptr, ptr %7, align 8, !tbaa !9
  %20064 = load i32, ptr %12, align 4, !tbaa !5
  %20065 = load i32, ptr %8, align 4, !tbaa !5
  %20066 = mul nsw i32 22, %20065
  %20067 = add nsw i32 %20064, %20066
  %20068 = sext i32 %20067 to i64
  %20069 = getelementptr inbounds double, ptr %20063, i64 %20068
  %20070 = load double, ptr %20069, align 8, !tbaa !11
  %20071 = call double @llvm.fmuladd.f64(double 0x3C7FFFFFFFFFFFFF, double %20070, double %20062)
  %20072 = load ptr, ptr %7, align 8, !tbaa !9
  %20073 = load i32, ptr %12, align 4, !tbaa !5
  %20074 = load i32, ptr %8, align 4, !tbaa !5
  %20075 = mul nsw i32 23, %20074
  %20076 = add nsw i32 %20073, %20075
  %20077 = sext i32 %20076 to i64
  %20078 = getelementptr inbounds double, ptr %20072, i64 %20077
  %20079 = load double, ptr %20078, align 8, !tbaa !11
  %20080 = call double @llvm.fmuladd.f64(double 0x3C74000000000000, double %20079, double %20071)
  %20081 = load ptr, ptr %7, align 8, !tbaa !9
  %20082 = load i32, ptr %12, align 4, !tbaa !5
  %20083 = load i32, ptr %8, align 4, !tbaa !5
  %20084 = mul nsw i32 24, %20083
  %20085 = add nsw i32 %20082, %20084
  %20086 = sext i32 %20085 to i64
  %20087 = getelementptr inbounds double, ptr %20081, i64 %20086
  %20088 = load double, ptr %20087, align 8, !tbaa !11
  %20089 = call double @llvm.fmuladd.f64(double 0xBCA5FFFFFFFFFFFF, double %20088, double %20080)
  %20090 = load ptr, ptr %7, align 8, !tbaa !9
  %20091 = load i32, ptr %12, align 4, !tbaa !5
  %20092 = load i32, ptr %8, align 4, !tbaa !5
  %20093 = mul nsw i32 25, %20092
  %20094 = add nsw i32 %20091, %20093
  %20095 = sext i32 %20094 to i64
  %20096 = getelementptr inbounds double, ptr %20090, i64 %20095
  %20097 = load double, ptr %20096, align 8, !tbaa !11
  %20098 = call double @llvm.fmuladd.f64(double 0x3C94000000000000, double %20097, double %20089)
  %20099 = load ptr, ptr %7, align 8, !tbaa !9
  %20100 = load i32, ptr %12, align 4, !tbaa !5
  %20101 = load i32, ptr %8, align 4, !tbaa !5
  %20102 = mul nsw i32 26, %20101
  %20103 = add nsw i32 %20100, %20102
  %20104 = sext i32 %20103 to i64
  %20105 = getelementptr inbounds double, ptr %20099, i64 %20104
  %20106 = load double, ptr %20105, align 8, !tbaa !11
  %20107 = call double @llvm.fmuladd.f64(double 0xBC84000000000000, double %20106, double %20098)
  %20108 = load ptr, ptr %7, align 8, !tbaa !9
  %20109 = load i32, ptr %12, align 4, !tbaa !5
  %20110 = load i32, ptr %8, align 4, !tbaa !5
  %20111 = mul nsw i32 27, %20110
  %20112 = add nsw i32 %20109, %20111
  %20113 = sext i32 %20112 to i64
  %20114 = getelementptr inbounds double, ptr %20108, i64 %20113
  %20115 = load double, ptr %20114, align 8, !tbaa !11
  %20116 = call double @llvm.fmuladd.f64(double 0x3CB4800000000001, double %20115, double %20107)
  %20117 = load ptr, ptr %7, align 8, !tbaa !9
  %20118 = load i32, ptr %12, align 4, !tbaa !5
  %20119 = load i32, ptr %8, align 4, !tbaa !5
  %20120 = mul nsw i32 28, %20119
  %20121 = add nsw i32 %20118, %20120
  %20122 = sext i32 %20121 to i64
  %20123 = getelementptr inbounds double, ptr %20117, i64 %20122
  %20124 = load double, ptr %20123, align 8, !tbaa !11
  %20125 = call double @llvm.fmuladd.f64(double 0xBCA0000000000002, double %20124, double %20116)
  %20126 = load ptr, ptr %7, align 8, !tbaa !9
  %20127 = load i32, ptr %12, align 4, !tbaa !5
  %20128 = load i32, ptr %8, align 4, !tbaa !5
  %20129 = mul nsw i32 29, %20128
  %20130 = add nsw i32 %20127, %20129
  %20131 = sext i32 %20130 to i64
  %20132 = getelementptr inbounds double, ptr %20126, i64 %20131
  %20133 = load double, ptr %20132, align 8, !tbaa !11
  %20134 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %20133, double %20125)
  %20135 = load ptr, ptr %7, align 8, !tbaa !9
  %20136 = load i32, ptr %12, align 4, !tbaa !5
  %20137 = load i32, ptr %8, align 4, !tbaa !5
  %20138 = mul nsw i32 30, %20137
  %20139 = add nsw i32 %20136, %20138
  %20140 = sext i32 %20139 to i64
  %20141 = getelementptr inbounds double, ptr %20135, i64 %20140
  %20142 = load double, ptr %20141, align 8, !tbaa !11
  %20143 = call double @llvm.fmuladd.f64(double 0xBC94000000000000, double %20142, double %20134)
  %20144 = load ptr, ptr %7, align 8, !tbaa !9
  %20145 = load i32, ptr %12, align 4, !tbaa !5
  %20146 = load i32, ptr %8, align 4, !tbaa !5
  %20147 = mul nsw i32 31, %20146
  %20148 = add nsw i32 %20145, %20147
  %20149 = sext i32 %20148 to i64
  %20150 = getelementptr inbounds double, ptr %20144, i64 %20149
  %20151 = load double, ptr %20150, align 8, !tbaa !11
  %20152 = call double @llvm.fmuladd.f64(double 0xBC94000000000000, double %20151, double %20143)
  %20153 = load ptr, ptr %7, align 8, !tbaa !9
  %20154 = load i32, ptr %12, align 4, !tbaa !5
  %20155 = load i32, ptr %8, align 4, !tbaa !5
  %20156 = mul nsw i32 32, %20155
  %20157 = add nsw i32 %20154, %20156
  %20158 = sext i32 %20157 to i64
  %20159 = getelementptr inbounds double, ptr %20153, i64 %20158
  %20160 = load double, ptr %20159, align 8, !tbaa !11
  %20161 = call double @llvm.fmuladd.f64(double 0x3C92000000000000, double %20160, double %20152)
  %20162 = load ptr, ptr %7, align 8, !tbaa !9
  %20163 = load i32, ptr %12, align 4, !tbaa !5
  %20164 = load i32, ptr %8, align 4, !tbaa !5
  %20165 = mul nsw i32 33, %20164
  %20166 = add nsw i32 %20163, %20165
  %20167 = sext i32 %20166 to i64
  %20168 = getelementptr inbounds double, ptr %20162, i64 %20167
  %20169 = load double, ptr %20168, align 8, !tbaa !11
  %20170 = call double @llvm.fmuladd.f64(double 0x3CA2000000000000, double %20169, double %20161)
  %20171 = load ptr, ptr %7, align 8, !tbaa !9
  %20172 = load i32, ptr %12, align 4, !tbaa !5
  %20173 = load i32, ptr %8, align 4, !tbaa !5
  %20174 = mul nsw i32 34, %20173
  %20175 = add nsw i32 %20172, %20174
  %20176 = sext i32 %20175 to i64
  %20177 = getelementptr inbounds double, ptr %20171, i64 %20176
  %20178 = load double, ptr %20177, align 8, !tbaa !11
  %20179 = call double @llvm.fmuladd.f64(double 0xBC98000000000000, double %20178, double %20170)
  %20180 = load ptr, ptr %7, align 8, !tbaa !9
  %20181 = load i32, ptr %12, align 4, !tbaa !5
  %20182 = load i32, ptr %8, align 4, !tbaa !5
  %20183 = mul nsw i32 35, %20182
  %20184 = add nsw i32 %20181, %20183
  %20185 = sext i32 %20184 to i64
  %20186 = getelementptr inbounds double, ptr %20180, i64 %20185
  %20187 = load double, ptr %20186, align 8, !tbaa !11
  %20188 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %20187, double %20179)
  %20189 = load ptr, ptr %7, align 8, !tbaa !9
  %20190 = load i32, ptr %12, align 4, !tbaa !5
  %20191 = load i32, ptr %8, align 4, !tbaa !5
  %20192 = mul nsw i32 36, %20191
  %20193 = add nsw i32 %20190, %20192
  %20194 = sext i32 %20193 to i64
  %20195 = getelementptr inbounds double, ptr %20189, i64 %20194
  %20196 = load double, ptr %20195, align 8, !tbaa !11
  %20197 = call double @llvm.fmuladd.f64(double 0x3C74000000000000, double %20196, double %20188)
  %20198 = load ptr, ptr %7, align 8, !tbaa !9
  %20199 = load i32, ptr %12, align 4, !tbaa !5
  %20200 = load i32, ptr %8, align 4, !tbaa !5
  %20201 = mul nsw i32 37, %20200
  %20202 = add nsw i32 %20199, %20201
  %20203 = sext i32 %20202 to i64
  %20204 = getelementptr inbounds double, ptr %20198, i64 %20203
  %20205 = load double, ptr %20204, align 8, !tbaa !11
  %20206 = call double @llvm.fmuladd.f64(double 0xBC84000000000000, double %20205, double %20197)
  %20207 = load ptr, ptr %7, align 8, !tbaa !9
  %20208 = load i32, ptr %12, align 4, !tbaa !5
  %20209 = load i32, ptr %8, align 4, !tbaa !5
  %20210 = mul nsw i32 38, %20209
  %20211 = add nsw i32 %20208, %20210
  %20212 = sext i32 %20211 to i64
  %20213 = getelementptr inbounds double, ptr %20207, i64 %20212
  %20214 = load double, ptr %20213, align 8, !tbaa !11
  %20215 = call double @llvm.fmuladd.f64(double 0x3C7FFFFFFFFFFFFF, double %20214, double %20206)
  %20216 = load ptr, ptr %7, align 8, !tbaa !9
  %20217 = load i32, ptr %12, align 4, !tbaa !5
  %20218 = load i32, ptr %8, align 4, !tbaa !5
  %20219 = mul nsw i32 39, %20218
  %20220 = add nsw i32 %20217, %20219
  %20221 = sext i32 %20220 to i64
  %20222 = getelementptr inbounds double, ptr %20216, i64 %20221
  %20223 = load double, ptr %20222, align 8, !tbaa !11
  %20224 = call double @llvm.fmuladd.f64(double 0xBC88000000000000, double %20223, double %20215)
  store double %20224, ptr %11, align 8, !tbaa !11
  %20225 = load double, ptr %11, align 8, !tbaa !11
  %20226 = load ptr, ptr %9, align 8, !tbaa !9
  %20227 = load i32, ptr %12, align 4, !tbaa !5
  %20228 = load i32, ptr %10, align 4, !tbaa !5
  %20229 = mul nsw i32 55, %20228
  %20230 = add nsw i32 %20227, %20229
  %20231 = sext i32 %20230 to i64
  %20232 = getelementptr inbounds double, ptr %20226, i64 %20231
  %20233 = load double, ptr %20232, align 8, !tbaa !11
  %20234 = fadd double %20233, %20225
  store double %20234, ptr %20232, align 8, !tbaa !11
  %20235 = load ptr, ptr %7, align 8, !tbaa !9
  %20236 = load i32, ptr %12, align 4, !tbaa !5
  %20237 = load i32, ptr %8, align 4, !tbaa !5
  %20238 = mul nsw i32 0, %20237
  %20239 = add nsw i32 %20236, %20238
  %20240 = sext i32 %20239 to i64
  %20241 = getelementptr inbounds double, ptr %20235, i64 %20240
  %20242 = load double, ptr %20241, align 8, !tbaa !11
  %20243 = load ptr, ptr %7, align 8, !tbaa !9
  %20244 = load i32, ptr %12, align 4, !tbaa !5
  %20245 = load i32, ptr %8, align 4, !tbaa !5
  %20246 = mul nsw i32 1, %20245
  %20247 = add nsw i32 %20244, %20246
  %20248 = sext i32 %20247 to i64
  %20249 = getelementptr inbounds double, ptr %20243, i64 %20248
  %20250 = load double, ptr %20249, align 8, !tbaa !11
  %20251 = fmul double 0xBCAD3FFFFFFFFFFF, %20250
  %20252 = call double @llvm.fmuladd.f64(double 0xBCCAC00000000000, double %20242, double %20251)
  %20253 = load ptr, ptr %7, align 8, !tbaa !9
  %20254 = load i32, ptr %12, align 4, !tbaa !5
  %20255 = load i32, ptr %8, align 4, !tbaa !5
  %20256 = mul nsw i32 2, %20255
  %20257 = add nsw i32 %20254, %20256
  %20258 = sext i32 %20257 to i64
  %20259 = getelementptr inbounds double, ptr %20253, i64 %20258
  %20260 = load double, ptr %20259, align 8, !tbaa !11
  %20261 = call double @llvm.fmuladd.f64(double 0x3CC4880000000000, double %20260, double %20252)
  %20262 = load ptr, ptr %7, align 8, !tbaa !9
  %20263 = load i32, ptr %12, align 4, !tbaa !5
  %20264 = load i32, ptr %8, align 4, !tbaa !5
  %20265 = mul nsw i32 3, %20264
  %20266 = add nsw i32 %20263, %20265
  %20267 = sext i32 %20266 to i64
  %20268 = getelementptr inbounds double, ptr %20262, i64 %20267
  %20269 = load double, ptr %20268, align 8, !tbaa !11
  %20270 = call double @llvm.fmuladd.f64(double 0xBC9C000000000000, double %20269, double %20261)
  %20271 = load ptr, ptr %7, align 8, !tbaa !9
  %20272 = load i32, ptr %12, align 4, !tbaa !5
  %20273 = load i32, ptr %8, align 4, !tbaa !5
  %20274 = mul nsw i32 4, %20273
  %20275 = add nsw i32 %20272, %20274
  %20276 = sext i32 %20275 to i64
  %20277 = getelementptr inbounds double, ptr %20271, i64 %20276
  %20278 = load double, ptr %20277, align 8, !tbaa !11
  %20279 = call double @llvm.fmuladd.f64(double 0x3CA7200000000002, double %20278, double %20270)
  %20280 = load ptr, ptr %7, align 8, !tbaa !9
  %20281 = load i32, ptr %12, align 4, !tbaa !5
  %20282 = load i32, ptr %8, align 4, !tbaa !5
  %20283 = mul nsw i32 5, %20282
  %20284 = add nsw i32 %20281, %20283
  %20285 = sext i32 %20284 to i64
  %20286 = getelementptr inbounds double, ptr %20280, i64 %20285
  %20287 = load double, ptr %20286, align 8, !tbaa !11
  %20288 = call double @llvm.fmuladd.f64(double 0xBC89FFFFFFFFFFFF, double %20287, double %20279)
  %20289 = load ptr, ptr %7, align 8, !tbaa !9
  %20290 = load i32, ptr %12, align 4, !tbaa !5
  %20291 = load i32, ptr %8, align 4, !tbaa !5
  %20292 = mul nsw i32 6, %20291
  %20293 = add nsw i32 %20290, %20292
  %20294 = sext i32 %20293 to i64
  %20295 = getelementptr inbounds double, ptr %20289, i64 %20294
  %20296 = load double, ptr %20295, align 8, !tbaa !11
  %20297 = call double @llvm.fmuladd.f64(double 0xBC9A500000000000, double %20296, double %20288)
  %20298 = load ptr, ptr %7, align 8, !tbaa !9
  %20299 = load i32, ptr %12, align 4, !tbaa !5
  %20300 = load i32, ptr %8, align 4, !tbaa !5
  %20301 = mul nsw i32 7, %20300
  %20302 = add nsw i32 %20299, %20301
  %20303 = sext i32 %20302 to i64
  %20304 = getelementptr inbounds double, ptr %20298, i64 %20303
  %20305 = load double, ptr %20304, align 8, !tbaa !11
  %20306 = call double @llvm.fmuladd.f64(double 0x3C8BA00000000001, double %20305, double %20297)
  %20307 = load ptr, ptr %7, align 8, !tbaa !9
  %20308 = load i32, ptr %12, align 4, !tbaa !5
  %20309 = load i32, ptr %8, align 4, !tbaa !5
  %20310 = mul nsw i32 8, %20309
  %20311 = add nsw i32 %20308, %20310
  %20312 = sext i32 %20311 to i64
  %20313 = getelementptr inbounds double, ptr %20307, i64 %20312
  %20314 = load double, ptr %20313, align 8, !tbaa !11
  %20315 = call double @llvm.fmuladd.f64(double 0xBC9C800000000000, double %20314, double %20306)
  %20316 = load ptr, ptr %7, align 8, !tbaa !9
  %20317 = load i32, ptr %12, align 4, !tbaa !5
  %20318 = load i32, ptr %8, align 4, !tbaa !5
  %20319 = mul nsw i32 9, %20318
  %20320 = add nsw i32 %20317, %20319
  %20321 = sext i32 %20320 to i64
  %20322 = getelementptr inbounds double, ptr %20316, i64 %20321
  %20323 = load double, ptr %20322, align 8, !tbaa !11
  %20324 = call double @llvm.fmuladd.f64(double 0xBC70000000000001, double %20323, double %20315)
  %20325 = load ptr, ptr %7, align 8, !tbaa !9
  %20326 = load i32, ptr %12, align 4, !tbaa !5
  %20327 = load i32, ptr %8, align 4, !tbaa !5
  %20328 = mul nsw i32 10, %20327
  %20329 = add nsw i32 %20326, %20328
  %20330 = sext i32 %20329 to i64
  %20331 = getelementptr inbounds double, ptr %20325, i64 %20330
  %20332 = load double, ptr %20331, align 8, !tbaa !11
  %20333 = call double @llvm.fmuladd.f64(double 0xBF83152016E0EA5E, double %20332, double %20324)
  %20334 = load ptr, ptr %7, align 8, !tbaa !9
  %20335 = load i32, ptr %12, align 4, !tbaa !5
  %20336 = load i32, ptr %8, align 4, !tbaa !5
  %20337 = mul nsw i32 11, %20336
  %20338 = add nsw i32 %20335, %20337
  %20339 = sext i32 %20338 to i64
  %20340 = getelementptr inbounds double, ptr %20334, i64 %20339
  %20341 = load double, ptr %20340, align 8, !tbaa !11
  %20342 = call double @llvm.fmuladd.f64(double 0x3F938CE4890DB33B, double %20341, double %20333)
  %20343 = load ptr, ptr %7, align 8, !tbaa !9
  %20344 = load i32, ptr %12, align 4, !tbaa !5
  %20345 = load i32, ptr %8, align 4, !tbaa !5
  %20346 = mul nsw i32 12, %20345
  %20347 = add nsw i32 %20344, %20346
  %20348 = sext i32 %20347 to i64
  %20349 = getelementptr inbounds double, ptr %20343, i64 %20348
  %20350 = load double, ptr %20349, align 8, !tbaa !11
  %20351 = call double @llvm.fmuladd.f64(double 0x3FF4EC1BB3FDC61B, double %20350, double %20342)
  %20352 = load ptr, ptr %7, align 8, !tbaa !9
  %20353 = load i32, ptr %12, align 4, !tbaa !5
  %20354 = load i32, ptr %8, align 4, !tbaa !5
  %20355 = mul nsw i32 13, %20354
  %20356 = add nsw i32 %20353, %20355
  %20357 = sext i32 %20356 to i64
  %20358 = getelementptr inbounds double, ptr %20352, i64 %20357
  %20359 = load double, ptr %20358, align 8, !tbaa !11
  %20360 = call double @llvm.fmuladd.f64(double 0xBFB5B58B4F03B1B6, double %20359, double %20351)
  %20361 = load ptr, ptr %7, align 8, !tbaa !9
  %20362 = load i32, ptr %12, align 4, !tbaa !5
  %20363 = load i32, ptr %8, align 4, !tbaa !5
  %20364 = mul nsw i32 14, %20363
  %20365 = add nsw i32 %20362, %20364
  %20366 = sext i32 %20365 to i64
  %20367 = getelementptr inbounds double, ptr %20361, i64 %20366
  %20368 = load double, ptr %20367, align 8, !tbaa !11
  %20369 = call double @llvm.fmuladd.f64(double 0x3FCA50C41AB7A310, double %20368, double %20360)
  %20370 = load ptr, ptr %7, align 8, !tbaa !9
  %20371 = load i32, ptr %12, align 4, !tbaa !5
  %20372 = load i32, ptr %8, align 4, !tbaa !5
  %20373 = mul nsw i32 15, %20372
  %20374 = add nsw i32 %20371, %20373
  %20375 = sext i32 %20374 to i64
  %20376 = getelementptr inbounds double, ptr %20370, i64 %20375
  %20377 = load double, ptr %20376, align 8, !tbaa !11
  %20378 = call double @llvm.fmuladd.f64(double 0xBF8BDAF699AED080, double %20377, double %20369)
  %20379 = load ptr, ptr %7, align 8, !tbaa !9
  %20380 = load i32, ptr %12, align 4, !tbaa !5
  %20381 = load i32, ptr %8, align 4, !tbaa !5
  %20382 = mul nsw i32 16, %20381
  %20383 = add nsw i32 %20380, %20382
  %20384 = sext i32 %20383 to i64
  %20385 = getelementptr inbounds double, ptr %20379, i64 %20384
  %20386 = load double, ptr %20385, align 8, !tbaa !11
  %20387 = call double @llvm.fmuladd.f64(double 0x3FD417DEBFC17B27, double %20386, double %20378)
  %20388 = load ptr, ptr %7, align 8, !tbaa !9
  %20389 = load i32, ptr %12, align 4, !tbaa !5
  %20390 = load i32, ptr %8, align 4, !tbaa !5
  %20391 = mul nsw i32 17, %20390
  %20392 = add nsw i32 %20389, %20391
  %20393 = sext i32 %20392 to i64
  %20394 = getelementptr inbounds double, ptr %20388, i64 %20393
  %20395 = load double, ptr %20394, align 8, !tbaa !11
  %20396 = call double @llvm.fmuladd.f64(double 0xBFE5679E70A60666, double %20395, double %20387)
  %20397 = load ptr, ptr %7, align 8, !tbaa !9
  %20398 = load i32, ptr %12, align 4, !tbaa !5
  %20399 = load i32, ptr %8, align 4, !tbaa !5
  %20400 = mul nsw i32 18, %20399
  %20401 = add nsw i32 %20398, %20400
  %20402 = sext i32 %20401 to i64
  %20403 = getelementptr inbounds double, ptr %20397, i64 %20402
  %20404 = load double, ptr %20403, align 8, !tbaa !11
  %20405 = call double @llvm.fmuladd.f64(double 0x3F85E50BB681A420, double %20404, double %20396)
  %20406 = load ptr, ptr %7, align 8, !tbaa !9
  %20407 = load i32, ptr %12, align 4, !tbaa !5
  %20408 = load i32, ptr %8, align 4, !tbaa !5
  %20409 = mul nsw i32 19, %20408
  %20410 = add nsw i32 %20407, %20409
  %20411 = sext i32 %20410 to i64
  %20412 = getelementptr inbounds double, ptr %20406, i64 %20411
  %20413 = load double, ptr %20412, align 8, !tbaa !11
  %20414 = call double @llvm.fmuladd.f64(double 0xBFB49217631F5956, double %20413, double %20405)
  %20415 = load ptr, ptr %7, align 8, !tbaa !9
  %20416 = load i32, ptr %12, align 4, !tbaa !5
  %20417 = load i32, ptr %8, align 4, !tbaa !5
  %20418 = mul nsw i32 20, %20417
  %20419 = add nsw i32 %20416, %20418
  %20420 = sext i32 %20419 to i64
  %20421 = getelementptr inbounds double, ptr %20415, i64 %20420
  %20422 = load double, ptr %20421, align 8, !tbaa !11
  %20423 = call double @llvm.fmuladd.f64(double 0xBCBE400000000000, double %20422, double %20414)
  %20424 = load ptr, ptr %7, align 8, !tbaa !9
  %20425 = load i32, ptr %12, align 4, !tbaa !5
  %20426 = load i32, ptr %8, align 4, !tbaa !5
  %20427 = mul nsw i32 21, %20426
  %20428 = add nsw i32 %20425, %20427
  %20429 = sext i32 %20428 to i64
  %20430 = getelementptr inbounds double, ptr %20424, i64 %20429
  %20431 = load double, ptr %20430, align 8, !tbaa !11
  %20432 = call double @llvm.fmuladd.f64(double 0xBCA63FFFFFFFFFFF, double %20431, double %20423)
  %20433 = load ptr, ptr %7, align 8, !tbaa !9
  %20434 = load i32, ptr %12, align 4, !tbaa !5
  %20435 = load i32, ptr %8, align 4, !tbaa !5
  %20436 = mul nsw i32 22, %20435
  %20437 = add nsw i32 %20434, %20436
  %20438 = sext i32 %20437 to i64
  %20439 = getelementptr inbounds double, ptr %20433, i64 %20438
  %20440 = load double, ptr %20439, align 8, !tbaa !11
  %20441 = call double @llvm.fmuladd.f64(double 0xBC98C00000000000, double %20440, double %20432)
  %20442 = load ptr, ptr %7, align 8, !tbaa !9
  %20443 = load i32, ptr %12, align 4, !tbaa !5
  %20444 = load i32, ptr %8, align 4, !tbaa !5
  %20445 = mul nsw i32 23, %20444
  %20446 = add nsw i32 %20443, %20445
  %20447 = sext i32 %20446 to i64
  %20448 = getelementptr inbounds double, ptr %20442, i64 %20447
  %20449 = load double, ptr %20448, align 8, !tbaa !11
  %20450 = call double @llvm.fmuladd.f64(double 0x3CBF080000000001, double %20449, double %20441)
  %20451 = load ptr, ptr %7, align 8, !tbaa !9
  %20452 = load i32, ptr %12, align 4, !tbaa !5
  %20453 = load i32, ptr %8, align 4, !tbaa !5
  %20454 = mul nsw i32 24, %20453
  %20455 = add nsw i32 %20452, %20454
  %20456 = sext i32 %20455 to i64
  %20457 = getelementptr inbounds double, ptr %20451, i64 %20456
  %20458 = load double, ptr %20457, align 8, !tbaa !11
  %20459 = call double @llvm.fmuladd.f64(double 0x3CC1A00000000000, double %20458, double %20450)
  %20460 = load ptr, ptr %7, align 8, !tbaa !9
  %20461 = load i32, ptr %12, align 4, !tbaa !5
  %20462 = load i32, ptr %8, align 4, !tbaa !5
  %20463 = mul nsw i32 25, %20462
  %20464 = add nsw i32 %20461, %20463
  %20465 = sext i32 %20464 to i64
  %20466 = getelementptr inbounds double, ptr %20460, i64 %20465
  %20467 = load double, ptr %20466, align 8, !tbaa !11
  %20468 = call double @llvm.fmuladd.f64(double 0x3C96800000000000, double %20467, double %20459)
  %20469 = load ptr, ptr %7, align 8, !tbaa !9
  %20470 = load i32, ptr %12, align 4, !tbaa !5
  %20471 = load i32, ptr %8, align 4, !tbaa !5
  %20472 = mul nsw i32 26, %20471
  %20473 = add nsw i32 %20470, %20472
  %20474 = sext i32 %20473 to i64
  %20475 = getelementptr inbounds double, ptr %20469, i64 %20474
  %20476 = load double, ptr %20475, align 8, !tbaa !11
  %20477 = call double @llvm.fmuladd.f64(double 0x3C8C000000000000, double %20476, double %20468)
  %20478 = load ptr, ptr %7, align 8, !tbaa !9
  %20479 = load i32, ptr %12, align 4, !tbaa !5
  %20480 = load i32, ptr %8, align 4, !tbaa !5
  %20481 = mul nsw i32 27, %20480
  %20482 = add nsw i32 %20479, %20481
  %20483 = sext i32 %20482 to i64
  %20484 = getelementptr inbounds double, ptr %20478, i64 %20483
  %20485 = load double, ptr %20484, align 8, !tbaa !11
  %20486 = call double @llvm.fmuladd.f64(double 0xBCC6880000000000, double %20485, double %20477)
  %20487 = load ptr, ptr %7, align 8, !tbaa !9
  %20488 = load i32, ptr %12, align 4, !tbaa !5
  %20489 = load i32, ptr %8, align 4, !tbaa !5
  %20490 = mul nsw i32 28, %20489
  %20491 = add nsw i32 %20488, %20490
  %20492 = sext i32 %20491 to i64
  %20493 = getelementptr inbounds double, ptr %20487, i64 %20492
  %20494 = load double, ptr %20493, align 8, !tbaa !11
  %20495 = call double @llvm.fmuladd.f64(double 0x3C9EFFFFFFFFFFFD, double %20494, double %20486)
  %20496 = load ptr, ptr %7, align 8, !tbaa !9
  %20497 = load i32, ptr %12, align 4, !tbaa !5
  %20498 = load i32, ptr %8, align 4, !tbaa !5
  %20499 = mul nsw i32 29, %20498
  %20500 = add nsw i32 %20497, %20499
  %20501 = sext i32 %20500 to i64
  %20502 = getelementptr inbounds double, ptr %20496, i64 %20501
  %20503 = load double, ptr %20502, align 8, !tbaa !11
  %20504 = call double @llvm.fmuladd.f64(double 0xBC70000000000001, double %20503, double %20495)
  %20505 = load ptr, ptr %7, align 8, !tbaa !9
  %20506 = load i32, ptr %12, align 4, !tbaa !5
  %20507 = load i32, ptr %8, align 4, !tbaa !5
  %20508 = mul nsw i32 30, %20507
  %20509 = add nsw i32 %20506, %20508
  %20510 = sext i32 %20509 to i64
  %20511 = getelementptr inbounds double, ptr %20505, i64 %20510
  %20512 = load double, ptr %20511, align 8, !tbaa !11
  %20513 = call double @llvm.fmuladd.f64(double 0xBCBEF00000000001, double %20512, double %20504)
  %20514 = load ptr, ptr %7, align 8, !tbaa !9
  %20515 = load i32, ptr %12, align 4, !tbaa !5
  %20516 = load i32, ptr %8, align 4, !tbaa !5
  %20517 = mul nsw i32 31, %20516
  %20518 = add nsw i32 %20515, %20517
  %20519 = sext i32 %20518 to i64
  %20520 = getelementptr inbounds double, ptr %20514, i64 %20519
  %20521 = load double, ptr %20520, align 8, !tbaa !11
  %20522 = call double @llvm.fmuladd.f64(double 0x3C96C00000000000, double %20521, double %20513)
  %20523 = load ptr, ptr %7, align 8, !tbaa !9
  %20524 = load i32, ptr %12, align 4, !tbaa !5
  %20525 = load i32, ptr %8, align 4, !tbaa !5
  %20526 = mul nsw i32 32, %20525
  %20527 = add nsw i32 %20524, %20526
  %20528 = sext i32 %20527 to i64
  %20529 = getelementptr inbounds double, ptr %20523, i64 %20528
  %20530 = load double, ptr %20529, align 8, !tbaa !11
  %20531 = call double @llvm.fmuladd.f64(double 0xBC82000000000000, double %20530, double %20522)
  %20532 = load ptr, ptr %7, align 8, !tbaa !9
  %20533 = load i32, ptr %12, align 4, !tbaa !5
  %20534 = load i32, ptr %8, align 4, !tbaa !5
  %20535 = mul nsw i32 33, %20534
  %20536 = add nsw i32 %20533, %20535
  %20537 = sext i32 %20536 to i64
  %20538 = getelementptr inbounds double, ptr %20532, i64 %20537
  %20539 = load double, ptr %20538, align 8, !tbaa !11
  %20540 = call double @llvm.fmuladd.f64(double 0xBCABC00000000001, double %20539, double %20531)
  %20541 = load ptr, ptr %7, align 8, !tbaa !9
  %20542 = load i32, ptr %12, align 4, !tbaa !5
  %20543 = load i32, ptr %8, align 4, !tbaa !5
  %20544 = mul nsw i32 34, %20543
  %20545 = add nsw i32 %20542, %20544
  %20546 = sext i32 %20545 to i64
  %20547 = getelementptr inbounds double, ptr %20541, i64 %20546
  %20548 = load double, ptr %20547, align 8, !tbaa !11
  %20549 = call double @llvm.fmuladd.f64(double 0xBC76FFFFFFFFFFFF, double %20548, double %20540)
  %20550 = load ptr, ptr %7, align 8, !tbaa !9
  %20551 = load i32, ptr %12, align 4, !tbaa !5
  %20552 = load i32, ptr %8, align 4, !tbaa !5
  %20553 = mul nsw i32 35, %20552
  %20554 = add nsw i32 %20551, %20553
  %20555 = sext i32 %20554 to i64
  %20556 = getelementptr inbounds double, ptr %20550, i64 %20555
  %20557 = load double, ptr %20556, align 8, !tbaa !11
  %20558 = call double @llvm.fmuladd.f64(double 0x3CA8000000000001, double %20557, double %20549)
  %20559 = load ptr, ptr %7, align 8, !tbaa !9
  %20560 = load i32, ptr %12, align 4, !tbaa !5
  %20561 = load i32, ptr %8, align 4, !tbaa !5
  %20562 = mul nsw i32 36, %20561
  %20563 = add nsw i32 %20560, %20562
  %20564 = sext i32 %20563 to i64
  %20565 = getelementptr inbounds double, ptr %20559, i64 %20564
  %20566 = load double, ptr %20565, align 8, !tbaa !11
  %20567 = call double @llvm.fmuladd.f64(double 0x3C91B00000000000, double %20566, double %20558)
  %20568 = load ptr, ptr %7, align 8, !tbaa !9
  %20569 = load i32, ptr %12, align 4, !tbaa !5
  %20570 = load i32, ptr %8, align 4, !tbaa !5
  %20571 = mul nsw i32 37, %20570
  %20572 = add nsw i32 %20569, %20571
  %20573 = sext i32 %20572 to i64
  %20574 = getelementptr inbounds double, ptr %20568, i64 %20573
  %20575 = load double, ptr %20574, align 8, !tbaa !11
  %20576 = call double @llvm.fmuladd.f64(double 0x3CB1FC0000000000, double %20575, double %20567)
  %20577 = load ptr, ptr %7, align 8, !tbaa !9
  %20578 = load i32, ptr %12, align 4, !tbaa !5
  %20579 = load i32, ptr %8, align 4, !tbaa !5
  %20580 = mul nsw i32 38, %20579
  %20581 = add nsw i32 %20578, %20580
  %20582 = sext i32 %20581 to i64
  %20583 = getelementptr inbounds double, ptr %20577, i64 %20582
  %20584 = load double, ptr %20583, align 8, !tbaa !11
  %20585 = call double @llvm.fmuladd.f64(double 0xBC99800000000000, double %20584, double %20576)
  %20586 = load ptr, ptr %7, align 8, !tbaa !9
  %20587 = load i32, ptr %12, align 4, !tbaa !5
  %20588 = load i32, ptr %8, align 4, !tbaa !5
  %20589 = mul nsw i32 39, %20588
  %20590 = add nsw i32 %20587, %20589
  %20591 = sext i32 %20590 to i64
  %20592 = getelementptr inbounds double, ptr %20586, i64 %20591
  %20593 = load double, ptr %20592, align 8, !tbaa !11
  %20594 = call double @llvm.fmuladd.f64(double 0xBC93000000000000, double %20593, double %20585)
  store double %20594, ptr %11, align 8, !tbaa !11
  %20595 = load double, ptr %11, align 8, !tbaa !11
  %20596 = load ptr, ptr %9, align 8, !tbaa !9
  %20597 = load i32, ptr %12, align 4, !tbaa !5
  %20598 = load i32, ptr %10, align 4, !tbaa !5
  %20599 = mul nsw i32 56, %20598
  %20600 = add nsw i32 %20597, %20599
  %20601 = sext i32 %20600 to i64
  %20602 = getelementptr inbounds double, ptr %20596, i64 %20601
  %20603 = load double, ptr %20602, align 8, !tbaa !11
  %20604 = fadd double %20603, %20595
  store double %20604, ptr %20602, align 8, !tbaa !11
  %20605 = load ptr, ptr %7, align 8, !tbaa !9
  %20606 = load i32, ptr %12, align 4, !tbaa !5
  %20607 = load i32, ptr %8, align 4, !tbaa !5
  %20608 = mul nsw i32 0, %20607
  %20609 = add nsw i32 %20606, %20608
  %20610 = sext i32 %20609 to i64
  %20611 = getelementptr inbounds double, ptr %20605, i64 %20610
  %20612 = load double, ptr %20611, align 8, !tbaa !11
  %20613 = load ptr, ptr %7, align 8, !tbaa !9
  %20614 = load i32, ptr %12, align 4, !tbaa !5
  %20615 = load i32, ptr %8, align 4, !tbaa !5
  %20616 = mul nsw i32 1, %20615
  %20617 = add nsw i32 %20614, %20616
  %20618 = sext i32 %20617 to i64
  %20619 = getelementptr inbounds double, ptr %20613, i64 %20618
  %20620 = load double, ptr %20619, align 8, !tbaa !11
  %20621 = fmul double 0xBC96800000000000, %20620
  %20622 = call double @llvm.fmuladd.f64(double 0xBCB1200000000001, double %20612, double %20621)
  %20623 = load ptr, ptr %7, align 8, !tbaa !9
  %20624 = load i32, ptr %12, align 4, !tbaa !5
  %20625 = load i32, ptr %8, align 4, !tbaa !5
  %20626 = mul nsw i32 2, %20625
  %20627 = add nsw i32 %20624, %20626
  %20628 = sext i32 %20627 to i64
  %20629 = getelementptr inbounds double, ptr %20623, i64 %20628
  %20630 = load double, ptr %20629, align 8, !tbaa !11
  %20631 = call double @llvm.fmuladd.f64(double 0x3CB7080000000000, double %20630, double %20622)
  %20632 = load ptr, ptr %7, align 8, !tbaa !9
  %20633 = load i32, ptr %12, align 4, !tbaa !5
  %20634 = load i32, ptr %8, align 4, !tbaa !5
  %20635 = mul nsw i32 3, %20634
  %20636 = add nsw i32 %20633, %20635
  %20637 = sext i32 %20636 to i64
  %20638 = getelementptr inbounds double, ptr %20632, i64 %20637
  %20639 = load double, ptr %20638, align 8, !tbaa !11
  %20640 = call double @llvm.fmuladd.f64(double 0xBCBE9FFFFFFFFFFF, double %20639, double %20631)
  %20641 = load ptr, ptr %7, align 8, !tbaa !9
  %20642 = load i32, ptr %12, align 4, !tbaa !5
  %20643 = load i32, ptr %8, align 4, !tbaa !5
  %20644 = mul nsw i32 4, %20643
  %20645 = add nsw i32 %20642, %20644
  %20646 = sext i32 %20645 to i64
  %20647 = getelementptr inbounds double, ptr %20641, i64 %20646
  %20648 = load double, ptr %20647, align 8, !tbaa !11
  %20649 = call double @llvm.fmuladd.f64(double 0xBCB2A00000000001, double %20648, double %20640)
  %20650 = load ptr, ptr %7, align 8, !tbaa !9
  %20651 = load i32, ptr %12, align 4, !tbaa !5
  %20652 = load i32, ptr %8, align 4, !tbaa !5
  %20653 = mul nsw i32 5, %20652
  %20654 = add nsw i32 %20651, %20653
  %20655 = sext i32 %20654 to i64
  %20656 = getelementptr inbounds double, ptr %20650, i64 %20655
  %20657 = load double, ptr %20656, align 8, !tbaa !11
  %20658 = call double @llvm.fmuladd.f64(double 0xBCADBFFFFFFFFFFE, double %20657, double %20649)
  %20659 = load ptr, ptr %7, align 8, !tbaa !9
  %20660 = load i32, ptr %12, align 4, !tbaa !5
  %20661 = load i32, ptr %8, align 4, !tbaa !5
  %20662 = mul nsw i32 6, %20661
  %20663 = add nsw i32 %20660, %20662
  %20664 = sext i32 %20663 to i64
  %20665 = getelementptr inbounds double, ptr %20659, i64 %20664
  %20666 = load double, ptr %20665, align 8, !tbaa !11
  %20667 = call double @llvm.fmuladd.f64(double 0x3CA9BFFFFFFFFFFF, double %20666, double %20658)
  %20668 = load ptr, ptr %7, align 8, !tbaa !9
  %20669 = load i32, ptr %12, align 4, !tbaa !5
  %20670 = load i32, ptr %8, align 4, !tbaa !5
  %20671 = mul nsw i32 7, %20670
  %20672 = add nsw i32 %20669, %20671
  %20673 = sext i32 %20672 to i64
  %20674 = getelementptr inbounds double, ptr %20668, i64 %20673
  %20675 = load double, ptr %20674, align 8, !tbaa !11
  %20676 = call double @llvm.fmuladd.f64(double 0x3C8C800000000000, double %20675, double %20667)
  %20677 = load ptr, ptr %7, align 8, !tbaa !9
  %20678 = load i32, ptr %12, align 4, !tbaa !5
  %20679 = load i32, ptr %8, align 4, !tbaa !5
  %20680 = mul nsw i32 8, %20679
  %20681 = add nsw i32 %20678, %20680
  %20682 = sext i32 %20681 to i64
  %20683 = getelementptr inbounds double, ptr %20677, i64 %20682
  %20684 = load double, ptr %20683, align 8, !tbaa !11
  %20685 = call double @llvm.fmuladd.f64(double 0xBCA8C00000000000, double %20684, double %20676)
  %20686 = load ptr, ptr %7, align 8, !tbaa !9
  %20687 = load i32, ptr %12, align 4, !tbaa !5
  %20688 = load i32, ptr %8, align 4, !tbaa !5
  %20689 = mul nsw i32 9, %20688
  %20690 = add nsw i32 %20687, %20689
  %20691 = sext i32 %20690 to i64
  %20692 = getelementptr inbounds double, ptr %20686, i64 %20691
  %20693 = load double, ptr %20692, align 8, !tbaa !11
  %20694 = call double @llvm.fmuladd.f64(double 0xBC85000000000000, double %20693, double %20685)
  %20695 = load ptr, ptr %7, align 8, !tbaa !9
  %20696 = load i32, ptr %12, align 4, !tbaa !5
  %20697 = load i32, ptr %8, align 4, !tbaa !5
  %20698 = mul nsw i32 10, %20697
  %20699 = add nsw i32 %20696, %20698
  %20700 = sext i32 %20699 to i64
  %20701 = getelementptr inbounds double, ptr %20695, i64 %20700
  %20702 = load double, ptr %20701, align 8, !tbaa !11
  %20703 = call double @llvm.fmuladd.f64(double 0xBFE333710B32A298, double %20702, double %20694)
  %20704 = load ptr, ptr %7, align 8, !tbaa !9
  %20705 = load i32, ptr %12, align 4, !tbaa !5
  %20706 = load i32, ptr %8, align 4, !tbaa !5
  %20707 = mul nsw i32 11, %20706
  %20708 = add nsw i32 %20705, %20707
  %20709 = sext i32 %20708 to i64
  %20710 = getelementptr inbounds double, ptr %20704, i64 %20709
  %20711 = load double, ptr %20710, align 8, !tbaa !11
  %20712 = call double @llvm.fmuladd.f64(double 0xBFA352D4DB969BFB, double %20711, double %20703)
  %20713 = load ptr, ptr %7, align 8, !tbaa !9
  %20714 = load i32, ptr %12, align 4, !tbaa !5
  %20715 = load i32, ptr %8, align 4, !tbaa !5
  %20716 = mul nsw i32 12, %20715
  %20717 = add nsw i32 %20714, %20716
  %20718 = sext i32 %20717 to i64
  %20719 = getelementptr inbounds double, ptr %20713, i64 %20718
  %20720 = load double, ptr %20719, align 8, !tbaa !11
  %20721 = call double @llvm.fmuladd.f64(double 0x3FA87D7643548531, double %20720, double %20712)
  %20722 = load ptr, ptr %7, align 8, !tbaa !9
  %20723 = load i32, ptr %12, align 4, !tbaa !5
  %20724 = load i32, ptr %8, align 4, !tbaa !5
  %20725 = mul nsw i32 13, %20724
  %20726 = add nsw i32 %20723, %20725
  %20727 = sext i32 %20726 to i64
  %20728 = getelementptr inbounds double, ptr %20722, i64 %20727
  %20729 = load double, ptr %20728, align 8, !tbaa !11
  %20730 = call double @llvm.fmuladd.f64(double 0xBFBEED13A9F0D8FA, double %20729, double %20721)
  %20731 = load ptr, ptr %7, align 8, !tbaa !9
  %20732 = load i32, ptr %12, align 4, !tbaa !5
  %20733 = load i32, ptr %8, align 4, !tbaa !5
  %20734 = mul nsw i32 14, %20733
  %20735 = add nsw i32 %20732, %20734
  %20736 = sext i32 %20735 to i64
  %20737 = getelementptr inbounds double, ptr %20731, i64 %20736
  %20738 = load double, ptr %20737, align 8, !tbaa !11
  %20739 = call double @llvm.fmuladd.f64(double 0x3FF670C5F1F4C92E, double %20738, double %20730)
  %20740 = load ptr, ptr %7, align 8, !tbaa !9
  %20741 = load i32, ptr %12, align 4, !tbaa !5
  %20742 = load i32, ptr %8, align 4, !tbaa !5
  %20743 = mul nsw i32 15, %20742
  %20744 = add nsw i32 %20741, %20743
  %20745 = sext i32 %20744 to i64
  %20746 = getelementptr inbounds double, ptr %20740, i64 %20745
  %20747 = load double, ptr %20746, align 8, !tbaa !11
  %20748 = call double @llvm.fmuladd.f64(double 0x3FC27B05E24EC5DE, double %20747, double %20739)
  %20749 = load ptr, ptr %7, align 8, !tbaa !9
  %20750 = load i32, ptr %12, align 4, !tbaa !5
  %20751 = load i32, ptr %8, align 4, !tbaa !5
  %20752 = mul nsw i32 16, %20751
  %20753 = add nsw i32 %20750, %20752
  %20754 = sext i32 %20753 to i64
  %20755 = getelementptr inbounds double, ptr %20749, i64 %20754
  %20756 = load double, ptr %20755, align 8, !tbaa !11
  %20757 = call double @llvm.fmuladd.f64(double 0x3FD35DAE88CBA641, double %20756, double %20748)
  %20758 = load ptr, ptr %7, align 8, !tbaa !9
  %20759 = load i32, ptr %12, align 4, !tbaa !5
  %20760 = load i32, ptr %8, align 4, !tbaa !5
  %20761 = mul nsw i32 17, %20760
  %20762 = add nsw i32 %20759, %20761
  %20763 = sext i32 %20762 to i64
  %20764 = getelementptr inbounds double, ptr %20758, i64 %20763
  %20765 = load double, ptr %20764, align 8, !tbaa !11
  %20766 = call double @llvm.fmuladd.f64(double 0xBFD41C0D131D4286, double %20765, double %20757)
  %20767 = load ptr, ptr %7, align 8, !tbaa !9
  %20768 = load i32, ptr %12, align 4, !tbaa !5
  %20769 = load i32, ptr %8, align 4, !tbaa !5
  %20770 = mul nsw i32 18, %20769
  %20771 = add nsw i32 %20768, %20770
  %20772 = sext i32 %20771 to i64
  %20773 = getelementptr inbounds double, ptr %20767, i64 %20772
  %20774 = load double, ptr %20773, align 8, !tbaa !11
  %20775 = call double @llvm.fmuladd.f64(double 0x3F9854E0ADA34B73, double %20774, double %20766)
  %20776 = load ptr, ptr %7, align 8, !tbaa !9
  %20777 = load i32, ptr %12, align 4, !tbaa !5
  %20778 = load i32, ptr %8, align 4, !tbaa !5
  %20779 = mul nsw i32 19, %20778
  %20780 = add nsw i32 %20777, %20779
  %20781 = sext i32 %20780 to i64
  %20782 = getelementptr inbounds double, ptr %20776, i64 %20781
  %20783 = load double, ptr %20782, align 8, !tbaa !11
  %20784 = call double @llvm.fmuladd.f64(double 0x3FC36A9134CD3C63, double %20783, double %20775)
  %20785 = load ptr, ptr %7, align 8, !tbaa !9
  %20786 = load i32, ptr %12, align 4, !tbaa !5
  %20787 = load i32, ptr %8, align 4, !tbaa !5
  %20788 = mul nsw i32 20, %20787
  %20789 = add nsw i32 %20786, %20788
  %20790 = sext i32 %20789 to i64
  %20791 = getelementptr inbounds double, ptr %20785, i64 %20790
  %20792 = load double, ptr %20791, align 8, !tbaa !11
  %20793 = call double @llvm.fmuladd.f64(double 0x3CA8000000000001, double %20792, double %20784)
  %20794 = load ptr, ptr %7, align 8, !tbaa !9
  %20795 = load i32, ptr %12, align 4, !tbaa !5
  %20796 = load i32, ptr %8, align 4, !tbaa !5
  %20797 = mul nsw i32 21, %20796
  %20798 = add nsw i32 %20795, %20797
  %20799 = sext i32 %20798 to i64
  %20800 = getelementptr inbounds double, ptr %20794, i64 %20799
  %20801 = load double, ptr %20800, align 8, !tbaa !11
  %20802 = call double @llvm.fmuladd.f64(double 0xBC93000000000000, double %20801, double %20793)
  %20803 = load ptr, ptr %7, align 8, !tbaa !9
  %20804 = load i32, ptr %12, align 4, !tbaa !5
  %20805 = load i32, ptr %8, align 4, !tbaa !5
  %20806 = mul nsw i32 22, %20805
  %20807 = add nsw i32 %20804, %20806
  %20808 = sext i32 %20807 to i64
  %20809 = getelementptr inbounds double, ptr %20803, i64 %20808
  %20810 = load double, ptr %20809, align 8, !tbaa !11
  %20811 = call double @llvm.fmuladd.f64(double 0x3C66000000000000, double %20810, double %20802)
  %20812 = load ptr, ptr %7, align 8, !tbaa !9
  %20813 = load i32, ptr %12, align 4, !tbaa !5
  %20814 = load i32, ptr %8, align 4, !tbaa !5
  %20815 = mul nsw i32 23, %20814
  %20816 = add nsw i32 %20813, %20815
  %20817 = sext i32 %20816 to i64
  %20818 = getelementptr inbounds double, ptr %20812, i64 %20817
  %20819 = load double, ptr %20818, align 8, !tbaa !11
  %20820 = call double @llvm.fmuladd.f64(double 0x3CBAB00000000000, double %20819, double %20811)
  %20821 = load ptr, ptr %7, align 8, !tbaa !9
  %20822 = load i32, ptr %12, align 4, !tbaa !5
  %20823 = load i32, ptr %8, align 4, !tbaa !5
  %20824 = mul nsw i32 24, %20823
  %20825 = add nsw i32 %20822, %20824
  %20826 = sext i32 %20825 to i64
  %20827 = getelementptr inbounds double, ptr %20821, i64 %20826
  %20828 = load double, ptr %20827, align 8, !tbaa !11
  %20829 = call double @llvm.fmuladd.f64(double 0x3CA4800000000001, double %20828, double %20820)
  %20830 = load ptr, ptr %7, align 8, !tbaa !9
  %20831 = load i32, ptr %12, align 4, !tbaa !5
  %20832 = load i32, ptr %8, align 4, !tbaa !5
  %20833 = mul nsw i32 25, %20832
  %20834 = add nsw i32 %20831, %20833
  %20835 = sext i32 %20834 to i64
  %20836 = getelementptr inbounds double, ptr %20830, i64 %20835
  %20837 = load double, ptr %20836, align 8, !tbaa !11
  %20838 = call double @llvm.fmuladd.f64(double 0x3CBC800000000000, double %20837, double %20829)
  %20839 = load ptr, ptr %7, align 8, !tbaa !9
  %20840 = load i32, ptr %12, align 4, !tbaa !5
  %20841 = load i32, ptr %8, align 4, !tbaa !5
  %20842 = mul nsw i32 26, %20841
  %20843 = add nsw i32 %20840, %20842
  %20844 = sext i32 %20843 to i64
  %20845 = getelementptr inbounds double, ptr %20839, i64 %20844
  %20846 = load double, ptr %20845, align 8, !tbaa !11
  %20847 = call double @llvm.fmuladd.f64(double 0x3CAB400000000001, double %20846, double %20838)
  %20848 = load ptr, ptr %7, align 8, !tbaa !9
  %20849 = load i32, ptr %12, align 4, !tbaa !5
  %20850 = load i32, ptr %8, align 4, !tbaa !5
  %20851 = mul nsw i32 27, %20850
  %20852 = add nsw i32 %20849, %20851
  %20853 = sext i32 %20852 to i64
  %20854 = getelementptr inbounds double, ptr %20848, i64 %20853
  %20855 = load double, ptr %20854, align 8, !tbaa !11
  %20856 = call double @llvm.fmuladd.f64(double 0xBCC0400000000000, double %20855, double %20847)
  %20857 = load ptr, ptr %7, align 8, !tbaa !9
  %20858 = load i32, ptr %12, align 4, !tbaa !5
  %20859 = load i32, ptr %8, align 4, !tbaa !5
  %20860 = mul nsw i32 28, %20859
  %20861 = add nsw i32 %20858, %20860
  %20862 = sext i32 %20861 to i64
  %20863 = getelementptr inbounds double, ptr %20857, i64 %20862
  %20864 = load double, ptr %20863, align 8, !tbaa !11
  %20865 = call double @llvm.fmuladd.f64(double 0x3C9DFFFFFFFFFFFE, double %20864, double %20856)
  %20866 = load ptr, ptr %7, align 8, !tbaa !9
  %20867 = load i32, ptr %12, align 4, !tbaa !5
  %20868 = load i32, ptr %8, align 4, !tbaa !5
  %20869 = mul nsw i32 29, %20868
  %20870 = add nsw i32 %20867, %20869
  %20871 = sext i32 %20870 to i64
  %20872 = getelementptr inbounds double, ptr %20866, i64 %20871
  %20873 = load double, ptr %20872, align 8, !tbaa !11
  %20874 = call double @llvm.fmuladd.f64(double 0xBCAE000000000002, double %20873, double %20865)
  %20875 = load ptr, ptr %7, align 8, !tbaa !9
  %20876 = load i32, ptr %12, align 4, !tbaa !5
  %20877 = load i32, ptr %8, align 4, !tbaa !5
  %20878 = mul nsw i32 30, %20877
  %20879 = add nsw i32 %20876, %20878
  %20880 = sext i32 %20879 to i64
  %20881 = getelementptr inbounds double, ptr %20875, i64 %20880
  %20882 = load double, ptr %20881, align 8, !tbaa !11
  %20883 = call double @llvm.fmuladd.f64(double 0xBCD4500000000002, double %20882, double %20874)
  %20884 = load ptr, ptr %7, align 8, !tbaa !9
  %20885 = load i32, ptr %12, align 4, !tbaa !5
  %20886 = load i32, ptr %8, align 4, !tbaa !5
  %20887 = mul nsw i32 31, %20886
  %20888 = add nsw i32 %20885, %20887
  %20889 = sext i32 %20888 to i64
  %20890 = getelementptr inbounds double, ptr %20884, i64 %20889
  %20891 = load double, ptr %20890, align 8, !tbaa !11
  %20892 = call double @llvm.fmuladd.f64(double 0x3C9A000000000000, double %20891, double %20883)
  %20893 = load ptr, ptr %7, align 8, !tbaa !9
  %20894 = load i32, ptr %12, align 4, !tbaa !5
  %20895 = load i32, ptr %8, align 4, !tbaa !5
  %20896 = mul nsw i32 32, %20895
  %20897 = add nsw i32 %20894, %20896
  %20898 = sext i32 %20897 to i64
  %20899 = getelementptr inbounds double, ptr %20893, i64 %20898
  %20900 = load double, ptr %20899, align 8, !tbaa !11
  %20901 = call double @llvm.fmuladd.f64(double 0x3C777FFFFFFFFFFF, double %20900, double %20892)
  %20902 = load ptr, ptr %7, align 8, !tbaa !9
  %20903 = load i32, ptr %12, align 4, !tbaa !5
  %20904 = load i32, ptr %8, align 4, !tbaa !5
  %20905 = mul nsw i32 33, %20904
  %20906 = add nsw i32 %20903, %20905
  %20907 = sext i32 %20906 to i64
  %20908 = getelementptr inbounds double, ptr %20902, i64 %20907
  %20909 = load double, ptr %20908, align 8, !tbaa !11
  %20910 = call double @llvm.fmuladd.f64(double 0xBCA66FFFFFFFFFFF, double %20909, double %20901)
  %20911 = load ptr, ptr %7, align 8, !tbaa !9
  %20912 = load i32, ptr %12, align 4, !tbaa !5
  %20913 = load i32, ptr %8, align 4, !tbaa !5
  %20914 = mul nsw i32 34, %20913
  %20915 = add nsw i32 %20912, %20914
  %20916 = sext i32 %20915 to i64
  %20917 = getelementptr inbounds double, ptr %20911, i64 %20916
  %20918 = load double, ptr %20917, align 8, !tbaa !11
  %20919 = call double @llvm.fmuladd.f64(double 0xBC89FFFFFFFFFFFF, double %20918, double %20910)
  %20920 = load ptr, ptr %7, align 8, !tbaa !9
  %20921 = load i32, ptr %12, align 4, !tbaa !5
  %20922 = load i32, ptr %8, align 4, !tbaa !5
  %20923 = mul nsw i32 35, %20922
  %20924 = add nsw i32 %20921, %20923
  %20925 = sext i32 %20924 to i64
  %20926 = getelementptr inbounds double, ptr %20920, i64 %20925
  %20927 = load double, ptr %20926, align 8, !tbaa !11
  %20928 = call double @llvm.fmuladd.f64(double 0x3C9F7FFFFFFFFFFC, double %20927, double %20919)
  %20929 = load ptr, ptr %7, align 8, !tbaa !9
  %20930 = load i32, ptr %12, align 4, !tbaa !5
  %20931 = load i32, ptr %8, align 4, !tbaa !5
  %20932 = mul nsw i32 36, %20931
  %20933 = add nsw i32 %20930, %20932
  %20934 = sext i32 %20933 to i64
  %20935 = getelementptr inbounds double, ptr %20929, i64 %20934
  %20936 = load double, ptr %20935, align 8, !tbaa !11
  %20937 = call double @llvm.fmuladd.f64(double 0xBC9EBFFFFFFFFFFD, double %20936, double %20928)
  %20938 = load ptr, ptr %7, align 8, !tbaa !9
  %20939 = load i32, ptr %12, align 4, !tbaa !5
  %20940 = load i32, ptr %8, align 4, !tbaa !5
  %20941 = mul nsw i32 37, %20940
  %20942 = add nsw i32 %20939, %20941
  %20943 = sext i32 %20942 to i64
  %20944 = getelementptr inbounds double, ptr %20938, i64 %20943
  %20945 = load double, ptr %20944, align 8, !tbaa !11
  %20946 = call double @llvm.fmuladd.f64(double 0x3CB6900000000000, double %20945, double %20937)
  %20947 = load ptr, ptr %7, align 8, !tbaa !9
  %20948 = load i32, ptr %12, align 4, !tbaa !5
  %20949 = load i32, ptr %8, align 4, !tbaa !5
  %20950 = mul nsw i32 38, %20949
  %20951 = add nsw i32 %20948, %20950
  %20952 = sext i32 %20951 to i64
  %20953 = getelementptr inbounds double, ptr %20947, i64 %20952
  %20954 = load double, ptr %20953, align 8, !tbaa !11
  %20955 = call double @llvm.fmuladd.f64(double 0x3C8C000000000000, double %20954, double %20946)
  %20956 = load ptr, ptr %7, align 8, !tbaa !9
  %20957 = load i32, ptr %12, align 4, !tbaa !5
  %20958 = load i32, ptr %8, align 4, !tbaa !5
  %20959 = mul nsw i32 39, %20958
  %20960 = add nsw i32 %20957, %20959
  %20961 = sext i32 %20960 to i64
  %20962 = getelementptr inbounds double, ptr %20956, i64 %20961
  %20963 = load double, ptr %20962, align 8, !tbaa !11
  %20964 = call double @llvm.fmuladd.f64(double 0x3C64000000000000, double %20963, double %20955)
  store double %20964, ptr %11, align 8, !tbaa !11
  %20965 = load double, ptr %11, align 8, !tbaa !11
  %20966 = load ptr, ptr %9, align 8, !tbaa !9
  %20967 = load i32, ptr %12, align 4, !tbaa !5
  %20968 = load i32, ptr %10, align 4, !tbaa !5
  %20969 = mul nsw i32 57, %20968
  %20970 = add nsw i32 %20967, %20969
  %20971 = sext i32 %20970 to i64
  %20972 = getelementptr inbounds double, ptr %20966, i64 %20971
  %20973 = load double, ptr %20972, align 8, !tbaa !11
  %20974 = fadd double %20973, %20965
  store double %20974, ptr %20972, align 8, !tbaa !11
  %20975 = load ptr, ptr %7, align 8, !tbaa !9
  %20976 = load i32, ptr %12, align 4, !tbaa !5
  %20977 = load i32, ptr %8, align 4, !tbaa !5
  %20978 = mul nsw i32 0, %20977
  %20979 = add nsw i32 %20976, %20978
  %20980 = sext i32 %20979 to i64
  %20981 = getelementptr inbounds double, ptr %20975, i64 %20980
  %20982 = load double, ptr %20981, align 8, !tbaa !11
  %20983 = load ptr, ptr %7, align 8, !tbaa !9
  %20984 = load i32, ptr %12, align 4, !tbaa !5
  %20985 = load i32, ptr %8, align 4, !tbaa !5
  %20986 = mul nsw i32 1, %20985
  %20987 = add nsw i32 %20984, %20986
  %20988 = sext i32 %20987 to i64
  %20989 = getelementptr inbounds double, ptr %20983, i64 %20988
  %20990 = load double, ptr %20989, align 8, !tbaa !11
  %20991 = fmul double 0x3C86000000000001, %20990
  %20992 = call double @llvm.fmuladd.f64(double 0x3C93000000000000, double %20982, double %20991)
  %20993 = load ptr, ptr %7, align 8, !tbaa !9
  %20994 = load i32, ptr %12, align 4, !tbaa !5
  %20995 = load i32, ptr %8, align 4, !tbaa !5
  %20996 = mul nsw i32 2, %20995
  %20997 = add nsw i32 %20994, %20996
  %20998 = sext i32 %20997 to i64
  %20999 = getelementptr inbounds double, ptr %20993, i64 %20998
  %21000 = load double, ptr %20999, align 8, !tbaa !11
  %21001 = call double @llvm.fmuladd.f64(double 0x3CB92FFFFFFFFFFF, double %21000, double %20992)
  %21002 = load ptr, ptr %7, align 8, !tbaa !9
  %21003 = load i32, ptr %12, align 4, !tbaa !5
  %21004 = load i32, ptr %8, align 4, !tbaa !5
  %21005 = mul nsw i32 3, %21004
  %21006 = add nsw i32 %21003, %21005
  %21007 = sext i32 %21006 to i64
  %21008 = getelementptr inbounds double, ptr %21002, i64 %21007
  %21009 = load double, ptr %21008, align 8, !tbaa !11
  %21010 = call double @llvm.fmuladd.f64(double 0xBCCAE00000000001, double %21009, double %21001)
  %21011 = load ptr, ptr %7, align 8, !tbaa !9
  %21012 = load i32, ptr %12, align 4, !tbaa !5
  %21013 = load i32, ptr %8, align 4, !tbaa !5
  %21014 = mul nsw i32 4, %21013
  %21015 = add nsw i32 %21012, %21014
  %21016 = sext i32 %21015 to i64
  %21017 = getelementptr inbounds double, ptr %21011, i64 %21016
  %21018 = load double, ptr %21017, align 8, !tbaa !11
  %21019 = call double @llvm.fmuladd.f64(double 0x3CB5000000000000, double %21018, double %21010)
  %21020 = load ptr, ptr %7, align 8, !tbaa !9
  %21021 = load i32, ptr %12, align 4, !tbaa !5
  %21022 = load i32, ptr %8, align 4, !tbaa !5
  %21023 = mul nsw i32 5, %21022
  %21024 = add nsw i32 %21021, %21023
  %21025 = sext i32 %21024 to i64
  %21026 = getelementptr inbounds double, ptr %21020, i64 %21025
  %21027 = load double, ptr %21026, align 8, !tbaa !11
  %21028 = call double @llvm.fmuladd.f64(double 0x3C50000000000000, double %21027, double %21019)
  %21029 = load ptr, ptr %7, align 8, !tbaa !9
  %21030 = load i32, ptr %12, align 4, !tbaa !5
  %21031 = load i32, ptr %8, align 4, !tbaa !5
  %21032 = mul nsw i32 6, %21031
  %21033 = add nsw i32 %21030, %21032
  %21034 = sext i32 %21033 to i64
  %21035 = getelementptr inbounds double, ptr %21029, i64 %21034
  %21036 = load double, ptr %21035, align 8, !tbaa !11
  %21037 = call double @llvm.fmuladd.f64(double 0x3CAF200000000001, double %21036, double %21028)
  %21038 = load ptr, ptr %7, align 8, !tbaa !9
  %21039 = load i32, ptr %12, align 4, !tbaa !5
  %21040 = load i32, ptr %8, align 4, !tbaa !5
  %21041 = mul nsw i32 7, %21040
  %21042 = add nsw i32 %21039, %21041
  %21043 = sext i32 %21042 to i64
  %21044 = getelementptr inbounds double, ptr %21038, i64 %21043
  %21045 = load double, ptr %21044, align 8, !tbaa !11
  %21046 = call double @llvm.fmuladd.f64(double 0xBCA1200000000001, double %21045, double %21037)
  %21047 = load ptr, ptr %7, align 8, !tbaa !9
  %21048 = load i32, ptr %12, align 4, !tbaa !5
  %21049 = load i32, ptr %8, align 4, !tbaa !5
  %21050 = mul nsw i32 8, %21049
  %21051 = add nsw i32 %21048, %21050
  %21052 = sext i32 %21051 to i64
  %21053 = getelementptr inbounds double, ptr %21047, i64 %21052
  %21054 = load double, ptr %21053, align 8, !tbaa !11
  %21055 = call double @llvm.fmuladd.f64(double 0xBC89FFFFFFFFFFFF, double %21054, double %21046)
  %21056 = load ptr, ptr %7, align 8, !tbaa !9
  %21057 = load i32, ptr %12, align 4, !tbaa !5
  %21058 = load i32, ptr %8, align 4, !tbaa !5
  %21059 = mul nsw i32 9, %21058
  %21060 = add nsw i32 %21057, %21059
  %21061 = sext i32 %21060 to i64
  %21062 = getelementptr inbounds double, ptr %21056, i64 %21061
  %21063 = load double, ptr %21062, align 8, !tbaa !11
  %21064 = call double @llvm.fmuladd.f64(double 0xBCB0400000000000, double %21063, double %21055)
  %21065 = load ptr, ptr %7, align 8, !tbaa !9
  %21066 = load i32, ptr %12, align 4, !tbaa !5
  %21067 = load i32, ptr %8, align 4, !tbaa !5
  %21068 = mul nsw i32 10, %21067
  %21069 = add nsw i32 %21066, %21068
  %21070 = sext i32 %21069 to i64
  %21071 = getelementptr inbounds double, ptr %21065, i64 %21070
  %21072 = load double, ptr %21071, align 8, !tbaa !11
  %21073 = call double @llvm.fmuladd.f64(double 0xBFE333710B32A29D, double %21072, double %21064)
  %21074 = load ptr, ptr %7, align 8, !tbaa !9
  %21075 = load i32, ptr %12, align 4, !tbaa !5
  %21076 = load i32, ptr %8, align 4, !tbaa !5
  %21077 = mul nsw i32 11, %21076
  %21078 = add nsw i32 %21075, %21077
  %21079 = sext i32 %21078 to i64
  %21080 = getelementptr inbounds double, ptr %21074, i64 %21079
  %21081 = load double, ptr %21080, align 8, !tbaa !11
  %21082 = call double @llvm.fmuladd.f64(double 0x3FA87D7643548512, double %21081, double %21073)
  %21083 = load ptr, ptr %7, align 8, !tbaa !9
  %21084 = load i32, ptr %12, align 4, !tbaa !5
  %21085 = load i32, ptr %8, align 4, !tbaa !5
  %21086 = mul nsw i32 12, %21085
  %21087 = add nsw i32 %21084, %21086
  %21088 = sext i32 %21087 to i64
  %21089 = getelementptr inbounds double, ptr %21083, i64 %21088
  %21090 = load double, ptr %21089, align 8, !tbaa !11
  %21091 = call double @llvm.fmuladd.f64(double 0xBFA352D4DB969C06, double %21090, double %21082)
  %21092 = load ptr, ptr %7, align 8, !tbaa !9
  %21093 = load i32, ptr %12, align 4, !tbaa !5
  %21094 = load i32, ptr %8, align 4, !tbaa !5
  %21095 = mul nsw i32 13, %21094
  %21096 = add nsw i32 %21093, %21095
  %21097 = sext i32 %21096 to i64
  %21098 = getelementptr inbounds double, ptr %21092, i64 %21097
  %21099 = load double, ptr %21098, align 8, !tbaa !11
  %21100 = call double @llvm.fmuladd.f64(double 0xBFBEED13A9F0D8F3, double %21099, double %21091)
  %21101 = load ptr, ptr %7, align 8, !tbaa !9
  %21102 = load i32, ptr %12, align 4, !tbaa !5
  %21103 = load i32, ptr %8, align 4, !tbaa !5
  %21104 = mul nsw i32 14, %21103
  %21105 = add nsw i32 %21102, %21104
  %21106 = sext i32 %21105 to i64
  %21107 = getelementptr inbounds double, ptr %21101, i64 %21106
  %21108 = load double, ptr %21107, align 8, !tbaa !11
  %21109 = call double @llvm.fmuladd.f64(double 0x3FC36A9134CD3C66, double %21108, double %21100)
  %21110 = load ptr, ptr %7, align 8, !tbaa !9
  %21111 = load i32, ptr %12, align 4, !tbaa !5
  %21112 = load i32, ptr %8, align 4, !tbaa !5
  %21113 = mul nsw i32 15, %21112
  %21114 = add nsw i32 %21111, %21113
  %21115 = sext i32 %21114 to i64
  %21116 = getelementptr inbounds double, ptr %21110, i64 %21115
  %21117 = load double, ptr %21116, align 8, !tbaa !11
  %21118 = call double @llvm.fmuladd.f64(double 0x3FD35DAE88CBA63D, double %21117, double %21109)
  %21119 = load ptr, ptr %7, align 8, !tbaa !9
  %21120 = load i32, ptr %12, align 4, !tbaa !5
  %21121 = load i32, ptr %8, align 4, !tbaa !5
  %21122 = mul nsw i32 16, %21121
  %21123 = add nsw i32 %21120, %21122
  %21124 = sext i32 %21123 to i64
  %21125 = getelementptr inbounds double, ptr %21119, i64 %21124
  %21126 = load double, ptr %21125, align 8, !tbaa !11
  %21127 = call double @llvm.fmuladd.f64(double 0x3FC27B05E24EC5ED, double %21126, double %21118)
  %21128 = load ptr, ptr %7, align 8, !tbaa !9
  %21129 = load i32, ptr %12, align 4, !tbaa !5
  %21130 = load i32, ptr %8, align 4, !tbaa !5
  %21131 = mul nsw i32 17, %21130
  %21132 = add nsw i32 %21129, %21131
  %21133 = sext i32 %21132 to i64
  %21134 = getelementptr inbounds double, ptr %21128, i64 %21133
  %21135 = load double, ptr %21134, align 8, !tbaa !11
  %21136 = call double @llvm.fmuladd.f64(double 0x3F9854E0ADA34B73, double %21135, double %21127)
  %21137 = load ptr, ptr %7, align 8, !tbaa !9
  %21138 = load i32, ptr %12, align 4, !tbaa !5
  %21139 = load i32, ptr %8, align 4, !tbaa !5
  %21140 = mul nsw i32 18, %21139
  %21141 = add nsw i32 %21138, %21140
  %21142 = sext i32 %21141 to i64
  %21143 = getelementptr inbounds double, ptr %21137, i64 %21142
  %21144 = load double, ptr %21143, align 8, !tbaa !11
  %21145 = call double @llvm.fmuladd.f64(double 0xBFD41C0D131D4293, double %21144, double %21136)
  %21146 = load ptr, ptr %7, align 8, !tbaa !9
  %21147 = load i32, ptr %12, align 4, !tbaa !5
  %21148 = load i32, ptr %8, align 4, !tbaa !5
  %21149 = mul nsw i32 19, %21148
  %21150 = add nsw i32 %21147, %21149
  %21151 = sext i32 %21150 to i64
  %21152 = getelementptr inbounds double, ptr %21146, i64 %21151
  %21153 = load double, ptr %21152, align 8, !tbaa !11
  %21154 = call double @llvm.fmuladd.f64(double 0x3FF670C5F1F4C932, double %21153, double %21145)
  %21155 = load ptr, ptr %7, align 8, !tbaa !9
  %21156 = load i32, ptr %12, align 4, !tbaa !5
  %21157 = load i32, ptr %8, align 4, !tbaa !5
  %21158 = mul nsw i32 20, %21157
  %21159 = add nsw i32 %21156, %21158
  %21160 = sext i32 %21159 to i64
  %21161 = getelementptr inbounds double, ptr %21155, i64 %21160
  %21162 = load double, ptr %21161, align 8, !tbaa !11
  %21163 = call double @llvm.fmuladd.f64(double 0x3CC9800000000000, double %21162, double %21154)
  %21164 = load ptr, ptr %7, align 8, !tbaa !9
  %21165 = load i32, ptr %12, align 4, !tbaa !5
  %21166 = load i32, ptr %8, align 4, !tbaa !5
  %21167 = mul nsw i32 21, %21166
  %21168 = add nsw i32 %21165, %21167
  %21169 = sext i32 %21168 to i64
  %21170 = getelementptr inbounds double, ptr %21164, i64 %21169
  %21171 = load double, ptr %21170, align 8, !tbaa !11
  %21172 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %21171, double %21163)
  %21173 = load ptr, ptr %7, align 8, !tbaa !9
  %21174 = load i32, ptr %12, align 4, !tbaa !5
  %21175 = load i32, ptr %8, align 4, !tbaa !5
  %21176 = mul nsw i32 22, %21175
  %21177 = add nsw i32 %21174, %21176
  %21178 = sext i32 %21177 to i64
  %21179 = getelementptr inbounds double, ptr %21173, i64 %21178
  %21180 = load double, ptr %21179, align 8, !tbaa !11
  %21181 = call double @llvm.fmuladd.f64(double 0xBC64000000000000, double %21180, double %21172)
  %21182 = load ptr, ptr %7, align 8, !tbaa !9
  %21183 = load i32, ptr %12, align 4, !tbaa !5
  %21184 = load i32, ptr %8, align 4, !tbaa !5
  %21185 = mul nsw i32 23, %21184
  %21186 = add nsw i32 %21183, %21185
  %21187 = sext i32 %21186 to i64
  %21188 = getelementptr inbounds double, ptr %21182, i64 %21187
  %21189 = load double, ptr %21188, align 8, !tbaa !11
  %21190 = call double @llvm.fmuladd.f64(double 0x3CA0800000000001, double %21189, double %21181)
  %21191 = load ptr, ptr %7, align 8, !tbaa !9
  %21192 = load i32, ptr %12, align 4, !tbaa !5
  %21193 = load i32, ptr %8, align 4, !tbaa !5
  %21194 = mul nsw i32 24, %21193
  %21195 = add nsw i32 %21192, %21194
  %21196 = sext i32 %21195 to i64
  %21197 = getelementptr inbounds double, ptr %21191, i64 %21196
  %21198 = load double, ptr %21197, align 8, !tbaa !11
  %21199 = call double @llvm.fmuladd.f64(double 0xBCA0000000000002, double %21198, double %21190)
  %21200 = load ptr, ptr %7, align 8, !tbaa !9
  %21201 = load i32, ptr %12, align 4, !tbaa !5
  %21202 = load i32, ptr %8, align 4, !tbaa !5
  %21203 = mul nsw i32 25, %21202
  %21204 = add nsw i32 %21201, %21203
  %21205 = sext i32 %21204 to i64
  %21206 = getelementptr inbounds double, ptr %21200, i64 %21205
  %21207 = load double, ptr %21206, align 8, !tbaa !11
  %21208 = call double @llvm.fmuladd.f64(double 0x3CA8000000000001, double %21207, double %21199)
  %21209 = load ptr, ptr %7, align 8, !tbaa !9
  %21210 = load i32, ptr %12, align 4, !tbaa !5
  %21211 = load i32, ptr %8, align 4, !tbaa !5
  %21212 = mul nsw i32 26, %21211
  %21213 = add nsw i32 %21210, %21212
  %21214 = sext i32 %21213 to i64
  %21215 = getelementptr inbounds double, ptr %21209, i64 %21214
  %21216 = load double, ptr %21215, align 8, !tbaa !11
  %21217 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %21216, double %21208)
  %21218 = load ptr, ptr %7, align 8, !tbaa !9
  %21219 = load i32, ptr %12, align 4, !tbaa !5
  %21220 = load i32, ptr %8, align 4, !tbaa !5
  %21221 = mul nsw i32 27, %21220
  %21222 = add nsw i32 %21219, %21221
  %21223 = sext i32 %21222 to i64
  %21224 = getelementptr inbounds double, ptr %21218, i64 %21223
  %21225 = load double, ptr %21224, align 8, !tbaa !11
  %21226 = call double @llvm.fmuladd.f64(double 0xBCAB000000000001, double %21225, double %21217)
  %21227 = load ptr, ptr %7, align 8, !tbaa !9
  %21228 = load i32, ptr %12, align 4, !tbaa !5
  %21229 = load i32, ptr %8, align 4, !tbaa !5
  %21230 = mul nsw i32 28, %21229
  %21231 = add nsw i32 %21228, %21230
  %21232 = sext i32 %21231 to i64
  %21233 = getelementptr inbounds double, ptr %21227, i64 %21232
  %21234 = load double, ptr %21233, align 8, !tbaa !11
  %21235 = call double @llvm.fmuladd.f64(double 0x3CB9000000000000, double %21234, double %21226)
  %21236 = load ptr, ptr %7, align 8, !tbaa !9
  %21237 = load i32, ptr %12, align 4, !tbaa !5
  %21238 = load i32, ptr %8, align 4, !tbaa !5
  %21239 = mul nsw i32 29, %21238
  %21240 = add nsw i32 %21237, %21239
  %21241 = sext i32 %21240 to i64
  %21242 = getelementptr inbounds double, ptr %21236, i64 %21241
  %21243 = load double, ptr %21242, align 8, !tbaa !11
  %21244 = call double @llvm.fmuladd.f64(double 0xBCB9000000000000, double %21243, double %21235)
  %21245 = load ptr, ptr %7, align 8, !tbaa !9
  %21246 = load i32, ptr %12, align 4, !tbaa !5
  %21247 = load i32, ptr %8, align 4, !tbaa !5
  %21248 = mul nsw i32 30, %21247
  %21249 = add nsw i32 %21246, %21248
  %21250 = sext i32 %21249 to i64
  %21251 = getelementptr inbounds double, ptr %21245, i64 %21250
  %21252 = load double, ptr %21251, align 8, !tbaa !11
  %21253 = call double @llvm.fmuladd.f64(double 0xBC92000000000000, double %21252, double %21244)
  %21254 = load ptr, ptr %7, align 8, !tbaa !9
  %21255 = load i32, ptr %12, align 4, !tbaa !5
  %21256 = load i32, ptr %8, align 4, !tbaa !5
  %21257 = mul nsw i32 32, %21256
  %21258 = add nsw i32 %21255, %21257
  %21259 = sext i32 %21258 to i64
  %21260 = getelementptr inbounds double, ptr %21254, i64 %21259
  %21261 = load double, ptr %21260, align 8, !tbaa !11
  %21262 = call double @llvm.fmuladd.f64(double 0x3C9F3FFFFFFFFFFC, double %21261, double %21253)
  %21263 = load ptr, ptr %7, align 8, !tbaa !9
  %21264 = load i32, ptr %12, align 4, !tbaa !5
  %21265 = load i32, ptr %8, align 4, !tbaa !5
  %21266 = mul nsw i32 33, %21265
  %21267 = add nsw i32 %21264, %21266
  %21268 = sext i32 %21267 to i64
  %21269 = getelementptr inbounds double, ptr %21263, i64 %21268
  %21270 = load double, ptr %21269, align 8, !tbaa !11
  %21271 = call double @llvm.fmuladd.f64(double 0x3C9AC00000000000, double %21270, double %21262)
  %21272 = load ptr, ptr %7, align 8, !tbaa !9
  %21273 = load i32, ptr %12, align 4, !tbaa !5
  %21274 = load i32, ptr %8, align 4, !tbaa !5
  %21275 = mul nsw i32 34, %21274
  %21276 = add nsw i32 %21273, %21275
  %21277 = sext i32 %21276 to i64
  %21278 = getelementptr inbounds double, ptr %21272, i64 %21277
  %21279 = load double, ptr %21278, align 8, !tbaa !11
  %21280 = call double @llvm.fmuladd.f64(double 0xBC8C000000000000, double %21279, double %21271)
  %21281 = load ptr, ptr %7, align 8, !tbaa !9
  %21282 = load i32, ptr %12, align 4, !tbaa !5
  %21283 = load i32, ptr %8, align 4, !tbaa !5
  %21284 = mul nsw i32 35, %21283
  %21285 = add nsw i32 %21282, %21284
  %21286 = sext i32 %21285 to i64
  %21287 = getelementptr inbounds double, ptr %21281, i64 %21286
  %21288 = load double, ptr %21287, align 8, !tbaa !11
  %21289 = call double @llvm.fmuladd.f64(double 0xBC89FFFFFFFFFFFF, double %21288, double %21280)
  %21290 = load ptr, ptr %7, align 8, !tbaa !9
  %21291 = load i32, ptr %12, align 4, !tbaa !5
  %21292 = load i32, ptr %8, align 4, !tbaa !5
  %21293 = mul nsw i32 36, %21292
  %21294 = add nsw i32 %21291, %21293
  %21295 = sext i32 %21294 to i64
  %21296 = getelementptr inbounds double, ptr %21290, i64 %21295
  %21297 = load double, ptr %21296, align 8, !tbaa !11
  %21298 = call double @llvm.fmuladd.f64(double 0xBCA65FFFFFFFFFFF, double %21297, double %21289)
  %21299 = load ptr, ptr %7, align 8, !tbaa !9
  %21300 = load i32, ptr %12, align 4, !tbaa !5
  %21301 = load i32, ptr %8, align 4, !tbaa !5
  %21302 = mul nsw i32 37, %21301
  %21303 = add nsw i32 %21300, %21302
  %21304 = sext i32 %21303 to i64
  %21305 = getelementptr inbounds double, ptr %21299, i64 %21304
  %21306 = load double, ptr %21305, align 8, !tbaa !11
  %21307 = call double @llvm.fmuladd.f64(double 0x3CB9100000000000, double %21306, double %21298)
  %21308 = load ptr, ptr %7, align 8, !tbaa !9
  %21309 = load i32, ptr %12, align 4, !tbaa !5
  %21310 = load i32, ptr %8, align 4, !tbaa !5
  %21311 = mul nsw i32 38, %21310
  %21312 = add nsw i32 %21309, %21311
  %21313 = sext i32 %21312 to i64
  %21314 = getelementptr inbounds double, ptr %21308, i64 %21313
  %21315 = load double, ptr %21314, align 8, !tbaa !11
  %21316 = call double @llvm.fmuladd.f64(double 0x3C7FFFFFFFFFFFFF, double %21315, double %21307)
  %21317 = load ptr, ptr %7, align 8, !tbaa !9
  %21318 = load i32, ptr %12, align 4, !tbaa !5
  %21319 = load i32, ptr %8, align 4, !tbaa !5
  %21320 = mul nsw i32 39, %21319
  %21321 = add nsw i32 %21318, %21320
  %21322 = sext i32 %21321 to i64
  %21323 = getelementptr inbounds double, ptr %21317, i64 %21322
  %21324 = load double, ptr %21323, align 8, !tbaa !11
  %21325 = call double @llvm.fmuladd.f64(double 0x3C8C000000000000, double %21324, double %21316)
  store double %21325, ptr %11, align 8, !tbaa !11
  %21326 = load double, ptr %11, align 8, !tbaa !11
  %21327 = load ptr, ptr %9, align 8, !tbaa !9
  %21328 = load i32, ptr %12, align 4, !tbaa !5
  %21329 = load i32, ptr %10, align 4, !tbaa !5
  %21330 = mul nsw i32 58, %21329
  %21331 = add nsw i32 %21328, %21330
  %21332 = sext i32 %21331 to i64
  %21333 = getelementptr inbounds double, ptr %21327, i64 %21332
  %21334 = load double, ptr %21333, align 8, !tbaa !11
  %21335 = fadd double %21334, %21326
  store double %21335, ptr %21333, align 8, !tbaa !11
  %21336 = load ptr, ptr %7, align 8, !tbaa !9
  %21337 = load i32, ptr %12, align 4, !tbaa !5
  %21338 = load i32, ptr %8, align 4, !tbaa !5
  %21339 = mul nsw i32 0, %21338
  %21340 = add nsw i32 %21337, %21339
  %21341 = sext i32 %21340 to i64
  %21342 = getelementptr inbounds double, ptr %21336, i64 %21341
  %21343 = load double, ptr %21342, align 8, !tbaa !11
  %21344 = load ptr, ptr %7, align 8, !tbaa !9
  %21345 = load i32, ptr %12, align 4, !tbaa !5
  %21346 = load i32, ptr %8, align 4, !tbaa !5
  %21347 = mul nsw i32 1, %21346
  %21348 = add nsw i32 %21345, %21347
  %21349 = sext i32 %21348 to i64
  %21350 = getelementptr inbounds double, ptr %21344, i64 %21349
  %21351 = load double, ptr %21350, align 8, !tbaa !11
  %21352 = fmul double 0xBC94000000000000, %21351
  %21353 = call double @llvm.fmuladd.f64(double 0x3CAE000000000002, double %21343, double %21352)
  %21354 = load ptr, ptr %7, align 8, !tbaa !9
  %21355 = load i32, ptr %12, align 4, !tbaa !5
  %21356 = load i32, ptr %8, align 4, !tbaa !5
  %21357 = mul nsw i32 2, %21356
  %21358 = add nsw i32 %21355, %21357
  %21359 = sext i32 %21358 to i64
  %21360 = getelementptr inbounds double, ptr %21354, i64 %21359
  %21361 = load double, ptr %21360, align 8, !tbaa !11
  %21362 = call double @llvm.fmuladd.f64(double 0x3CB3000000000000, double %21361, double %21353)
  %21363 = load ptr, ptr %7, align 8, !tbaa !9
  %21364 = load i32, ptr %12, align 4, !tbaa !5
  %21365 = load i32, ptr %8, align 4, !tbaa !5
  %21366 = mul nsw i32 3, %21365
  %21367 = add nsw i32 %21364, %21366
  %21368 = sext i32 %21367 to i64
  %21369 = getelementptr inbounds double, ptr %21363, i64 %21368
  %21370 = load double, ptr %21369, align 8, !tbaa !11
  %21371 = call double @llvm.fmuladd.f64(double 0xBCB0400000000000, double %21370, double %21362)
  %21372 = load ptr, ptr %7, align 8, !tbaa !9
  %21373 = load i32, ptr %12, align 4, !tbaa !5
  %21374 = load i32, ptr %8, align 4, !tbaa !5
  %21375 = mul nsw i32 4, %21374
  %21376 = add nsw i32 %21373, %21375
  %21377 = sext i32 %21376 to i64
  %21378 = getelementptr inbounds double, ptr %21372, i64 %21377
  %21379 = load double, ptr %21378, align 8, !tbaa !11
  %21380 = call double @llvm.fmuladd.f64(double 0x3CA8000000000001, double %21379, double %21371)
  %21381 = load ptr, ptr %7, align 8, !tbaa !9
  %21382 = load i32, ptr %12, align 4, !tbaa !5
  %21383 = load i32, ptr %8, align 4, !tbaa !5
  %21384 = mul nsw i32 5, %21383
  %21385 = add nsw i32 %21382, %21384
  %21386 = sext i32 %21385 to i64
  %21387 = getelementptr inbounds double, ptr %21381, i64 %21386
  %21388 = load double, ptr %21387, align 8, !tbaa !11
  %21389 = call double @llvm.fmuladd.f64(double 0x3CACFFFFFFFFFFFF, double %21388, double %21380)
  %21390 = load ptr, ptr %7, align 8, !tbaa !9
  %21391 = load i32, ptr %12, align 4, !tbaa !5
  %21392 = load i32, ptr %8, align 4, !tbaa !5
  %21393 = mul nsw i32 6, %21392
  %21394 = add nsw i32 %21391, %21393
  %21395 = sext i32 %21394 to i64
  %21396 = getelementptr inbounds double, ptr %21390, i64 %21395
  %21397 = load double, ptr %21396, align 8, !tbaa !11
  %21398 = call double @llvm.fmuladd.f64(double 0x3C9CFFFFFFFFFFFF, double %21397, double %21389)
  %21399 = load ptr, ptr %7, align 8, !tbaa !9
  %21400 = load i32, ptr %12, align 4, !tbaa !5
  %21401 = load i32, ptr %8, align 4, !tbaa !5
  %21402 = mul nsw i32 7, %21401
  %21403 = add nsw i32 %21400, %21402
  %21404 = sext i32 %21403 to i64
  %21405 = getelementptr inbounds double, ptr %21399, i64 %21404
  %21406 = load double, ptr %21405, align 8, !tbaa !11
  %21407 = call double @llvm.fmuladd.f64(double 0xBC70000000000001, double %21406, double %21398)
  %21408 = load ptr, ptr %7, align 8, !tbaa !9
  %21409 = load i32, ptr %12, align 4, !tbaa !5
  %21410 = load i32, ptr %8, align 4, !tbaa !5
  %21411 = mul nsw i32 8, %21410
  %21412 = add nsw i32 %21409, %21411
  %21413 = sext i32 %21412 to i64
  %21414 = getelementptr inbounds double, ptr %21408, i64 %21413
  %21415 = load double, ptr %21414, align 8, !tbaa !11
  %21416 = call double @llvm.fmuladd.f64(double 0xBC98000000000000, double %21415, double %21407)
  %21417 = load ptr, ptr %7, align 8, !tbaa !9
  %21418 = load i32, ptr %12, align 4, !tbaa !5
  %21419 = load i32, ptr %8, align 4, !tbaa !5
  %21420 = mul nsw i32 9, %21419
  %21421 = add nsw i32 %21418, %21420
  %21422 = sext i32 %21421 to i64
  %21423 = getelementptr inbounds double, ptr %21417, i64 %21422
  %21424 = load double, ptr %21423, align 8, !tbaa !11
  %21425 = call double @llvm.fmuladd.f64(double 0xBCB3FFFFFFFFFFFF, double %21424, double %21416)
  %21426 = load ptr, ptr %7, align 8, !tbaa !9
  %21427 = load i32, ptr %12, align 4, !tbaa !5
  %21428 = load i32, ptr %8, align 4, !tbaa !5
  %21429 = mul nsw i32 10, %21428
  %21430 = add nsw i32 %21427, %21429
  %21431 = sext i32 %21430 to i64
  %21432 = getelementptr inbounds double, ptr %21426, i64 %21431
  %21433 = load double, ptr %21432, align 8, !tbaa !11
  %21434 = call double @llvm.fmuladd.f64(double 0xBF83152016E0EC70, double %21433, double %21425)
  %21435 = load ptr, ptr %7, align 8, !tbaa !9
  %21436 = load i32, ptr %12, align 4, !tbaa !5
  %21437 = load i32, ptr %8, align 4, !tbaa !5
  %21438 = mul nsw i32 11, %21437
  %21439 = add nsw i32 %21436, %21438
  %21440 = sext i32 %21439 to i64
  %21441 = getelementptr inbounds double, ptr %21435, i64 %21440
  %21442 = load double, ptr %21441, align 8, !tbaa !11
  %21443 = call double @llvm.fmuladd.f64(double 0x3FF4EC1BB3FDC612, double %21442, double %21434)
  %21444 = load ptr, ptr %7, align 8, !tbaa !9
  %21445 = load i32, ptr %12, align 4, !tbaa !5
  %21446 = load i32, ptr %8, align 4, !tbaa !5
  %21447 = mul nsw i32 12, %21446
  %21448 = add nsw i32 %21445, %21447
  %21449 = sext i32 %21448 to i64
  %21450 = getelementptr inbounds double, ptr %21444, i64 %21449
  %21451 = load double, ptr %21450, align 8, !tbaa !11
  %21452 = call double @llvm.fmuladd.f64(double 0x3F938CE4890DB2E5, double %21451, double %21443)
  %21453 = load ptr, ptr %7, align 8, !tbaa !9
  %21454 = load i32, ptr %12, align 4, !tbaa !5
  %21455 = load i32, ptr %8, align 4, !tbaa !5
  %21456 = mul nsw i32 13, %21455
  %21457 = add nsw i32 %21454, %21456
  %21458 = sext i32 %21457 to i64
  %21459 = getelementptr inbounds double, ptr %21453, i64 %21458
  %21460 = load double, ptr %21459, align 8, !tbaa !11
  %21461 = call double @llvm.fmuladd.f64(double 0xBFB5B58B4F03B1B0, double %21460, double %21452)
  %21462 = load ptr, ptr %7, align 8, !tbaa !9
  %21463 = load i32, ptr %12, align 4, !tbaa !5
  %21464 = load i32, ptr %8, align 4, !tbaa !5
  %21465 = mul nsw i32 14, %21464
  %21466 = add nsw i32 %21463, %21465
  %21467 = sext i32 %21466 to i64
  %21468 = getelementptr inbounds double, ptr %21462, i64 %21467
  %21469 = load double, ptr %21468, align 8, !tbaa !11
  %21470 = call double @llvm.fmuladd.f64(double 0xBFB49217631F5930, double %21469, double %21461)
  %21471 = load ptr, ptr %7, align 8, !tbaa !9
  %21472 = load i32, ptr %12, align 4, !tbaa !5
  %21473 = load i32, ptr %8, align 4, !tbaa !5
  %21474 = mul nsw i32 15, %21473
  %21475 = add nsw i32 %21472, %21474
  %21476 = sext i32 %21475 to i64
  %21477 = getelementptr inbounds double, ptr %21471, i64 %21476
  %21478 = load double, ptr %21477, align 8, !tbaa !11
  %21479 = call double @llvm.fmuladd.f64(double 0x3FD417DEBFC17B18, double %21478, double %21470)
  %21480 = load ptr, ptr %7, align 8, !tbaa !9
  %21481 = load i32, ptr %12, align 4, !tbaa !5
  %21482 = load i32, ptr %8, align 4, !tbaa !5
  %21483 = mul nsw i32 16, %21482
  %21484 = add nsw i32 %21481, %21483
  %21485 = sext i32 %21484 to i64
  %21486 = getelementptr inbounds double, ptr %21480, i64 %21485
  %21487 = load double, ptr %21486, align 8, !tbaa !11
  %21488 = call double @llvm.fmuladd.f64(double 0xBF8BDAF699AECF31, double %21487, double %21479)
  %21489 = load ptr, ptr %7, align 8, !tbaa !9
  %21490 = load i32, ptr %12, align 4, !tbaa !5
  %21491 = load i32, ptr %8, align 4, !tbaa !5
  %21492 = mul nsw i32 17, %21491
  %21493 = add nsw i32 %21490, %21492
  %21494 = sext i32 %21493 to i64
  %21495 = getelementptr inbounds double, ptr %21489, i64 %21494
  %21496 = load double, ptr %21495, align 8, !tbaa !11
  %21497 = call double @llvm.fmuladd.f64(double 0x3F85E50BB681A306, double %21496, double %21488)
  %21498 = load ptr, ptr %7, align 8, !tbaa !9
  %21499 = load i32, ptr %12, align 4, !tbaa !5
  %21500 = load i32, ptr %8, align 4, !tbaa !5
  %21501 = mul nsw i32 18, %21500
  %21502 = add nsw i32 %21499, %21501
  %21503 = sext i32 %21502 to i64
  %21504 = getelementptr inbounds double, ptr %21498, i64 %21503
  %21505 = load double, ptr %21504, align 8, !tbaa !11
  %21506 = call double @llvm.fmuladd.f64(double 0xBFE5679E70A6065E, double %21505, double %21497)
  %21507 = load ptr, ptr %7, align 8, !tbaa !9
  %21508 = load i32, ptr %12, align 4, !tbaa !5
  %21509 = load i32, ptr %8, align 4, !tbaa !5
  %21510 = mul nsw i32 19, %21509
  %21511 = add nsw i32 %21508, %21510
  %21512 = sext i32 %21511 to i64
  %21513 = getelementptr inbounds double, ptr %21507, i64 %21512
  %21514 = load double, ptr %21513, align 8, !tbaa !11
  %21515 = call double @llvm.fmuladd.f64(double 0x3FCA50C41AB7A334, double %21514, double %21506)
  %21516 = load ptr, ptr %7, align 8, !tbaa !9
  %21517 = load i32, ptr %12, align 4, !tbaa !5
  %21518 = load i32, ptr %8, align 4, !tbaa !5
  %21519 = mul nsw i32 22, %21518
  %21520 = add nsw i32 %21517, %21519
  %21521 = sext i32 %21520 to i64
  %21522 = getelementptr inbounds double, ptr %21516, i64 %21521
  %21523 = load double, ptr %21522, align 8, !tbaa !11
  %21524 = call double @llvm.fmuladd.f64(double 0x3C9DFFFFFFFFFFFE, double %21523, double %21515)
  %21525 = load ptr, ptr %7, align 8, !tbaa !9
  %21526 = load i32, ptr %12, align 4, !tbaa !5
  %21527 = load i32, ptr %8, align 4, !tbaa !5
  %21528 = mul nsw i32 24, %21527
  %21529 = add nsw i32 %21526, %21528
  %21530 = sext i32 %21529 to i64
  %21531 = getelementptr inbounds double, ptr %21525, i64 %21530
  %21532 = load double, ptr %21531, align 8, !tbaa !11
  %21533 = call double @llvm.fmuladd.f64(double 0xBCBC000000000000, double %21532, double %21524)
  %21534 = load ptr, ptr %7, align 8, !tbaa !9
  %21535 = load i32, ptr %12, align 4, !tbaa !5
  %21536 = load i32, ptr %8, align 4, !tbaa !5
  %21537 = mul nsw i32 25, %21536
  %21538 = add nsw i32 %21535, %21537
  %21539 = sext i32 %21538 to i64
  %21540 = getelementptr inbounds double, ptr %21534, i64 %21539
  %21541 = load double, ptr %21540, align 8, !tbaa !11
  %21542 = call double @llvm.fmuladd.f64(double 0x3CB2000000000000, double %21541, double %21533)
  %21543 = load ptr, ptr %7, align 8, !tbaa !9
  %21544 = load i32, ptr %12, align 4, !tbaa !5
  %21545 = load i32, ptr %8, align 4, !tbaa !5
  %21546 = mul nsw i32 26, %21545
  %21547 = add nsw i32 %21544, %21546
  %21548 = sext i32 %21547 to i64
  %21549 = getelementptr inbounds double, ptr %21543, i64 %21548
  %21550 = load double, ptr %21549, align 8, !tbaa !11
  %21551 = call double @llvm.fmuladd.f64(double 0xBC88000000000000, double %21550, double %21542)
  %21552 = load ptr, ptr %7, align 8, !tbaa !9
  %21553 = load i32, ptr %12, align 4, !tbaa !5
  %21554 = load i32, ptr %8, align 4, !tbaa !5
  %21555 = mul nsw i32 27, %21554
  %21556 = add nsw i32 %21553, %21555
  %21557 = sext i32 %21556 to i64
  %21558 = getelementptr inbounds double, ptr %21552, i64 %21557
  %21559 = load double, ptr %21558, align 8, !tbaa !11
  %21560 = call double @llvm.fmuladd.f64(double 0x3CBC000000000000, double %21559, double %21551)
  %21561 = load ptr, ptr %7, align 8, !tbaa !9
  %21562 = load i32, ptr %12, align 4, !tbaa !5
  %21563 = load i32, ptr %8, align 4, !tbaa !5
  %21564 = mul nsw i32 28, %21563
  %21565 = add nsw i32 %21562, %21564
  %21566 = sext i32 %21565 to i64
  %21567 = getelementptr inbounds double, ptr %21561, i64 %21566
  %21568 = load double, ptr %21567, align 8, !tbaa !11
  %21569 = call double @llvm.fmuladd.f64(double 0x3CB3FFFFFFFFFFFF, double %21568, double %21560)
  %21570 = load ptr, ptr %7, align 8, !tbaa !9
  %21571 = load i32, ptr %12, align 4, !tbaa !5
  %21572 = load i32, ptr %8, align 4, !tbaa !5
  %21573 = mul nsw i32 29, %21572
  %21574 = add nsw i32 %21571, %21573
  %21575 = sext i32 %21574 to i64
  %21576 = getelementptr inbounds double, ptr %21570, i64 %21575
  %21577 = load double, ptr %21576, align 8, !tbaa !11
  %21578 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %21577, double %21569)
  %21579 = load ptr, ptr %7, align 8, !tbaa !9
  %21580 = load i32, ptr %12, align 4, !tbaa !5
  %21581 = load i32, ptr %8, align 4, !tbaa !5
  %21582 = mul nsw i32 30, %21581
  %21583 = add nsw i32 %21580, %21582
  %21584 = sext i32 %21583 to i64
  %21585 = getelementptr inbounds double, ptr %21579, i64 %21584
  %21586 = load double, ptr %21585, align 8, !tbaa !11
  %21587 = call double @llvm.fmuladd.f64(double 0x3C88000000000000, double %21586, double %21578)
  %21588 = load ptr, ptr %7, align 8, !tbaa !9
  %21589 = load i32, ptr %12, align 4, !tbaa !5
  %21590 = load i32, ptr %8, align 4, !tbaa !5
  %21591 = mul nsw i32 31, %21590
  %21592 = add nsw i32 %21589, %21591
  %21593 = sext i32 %21592 to i64
  %21594 = getelementptr inbounds double, ptr %21588, i64 %21593
  %21595 = load double, ptr %21594, align 8, !tbaa !11
  %21596 = call double @llvm.fmuladd.f64(double 0x3CB3FFFFFFFFFFFF, double %21595, double %21587)
  %21597 = load ptr, ptr %7, align 8, !tbaa !9
  %21598 = load i32, ptr %12, align 4, !tbaa !5
  %21599 = load i32, ptr %8, align 4, !tbaa !5
  %21600 = mul nsw i32 32, %21599
  %21601 = add nsw i32 %21598, %21600
  %21602 = sext i32 %21601 to i64
  %21603 = getelementptr inbounds double, ptr %21597, i64 %21602
  %21604 = load double, ptr %21603, align 8, !tbaa !11
  %21605 = call double @llvm.fmuladd.f64(double 0x3CA1800000000000, double %21604, double %21596)
  %21606 = load ptr, ptr %7, align 8, !tbaa !9
  %21607 = load i32, ptr %12, align 4, !tbaa !5
  %21608 = load i32, ptr %8, align 4, !tbaa !5
  %21609 = mul nsw i32 33, %21608
  %21610 = add nsw i32 %21607, %21609
  %21611 = sext i32 %21610 to i64
  %21612 = getelementptr inbounds double, ptr %21606, i64 %21611
  %21613 = load double, ptr %21612, align 8, !tbaa !11
  %21614 = call double @llvm.fmuladd.f64(double 0x3C84000000000000, double %21613, double %21605)
  %21615 = load ptr, ptr %7, align 8, !tbaa !9
  %21616 = load i32, ptr %12, align 4, !tbaa !5
  %21617 = load i32, ptr %8, align 4, !tbaa !5
  %21618 = mul nsw i32 34, %21617
  %21619 = add nsw i32 %21616, %21618
  %21620 = sext i32 %21619 to i64
  %21621 = getelementptr inbounds double, ptr %21615, i64 %21620
  %21622 = load double, ptr %21621, align 8, !tbaa !11
  %21623 = call double @llvm.fmuladd.f64(double 0xBCA5000000000000, double %21622, double %21614)
  %21624 = load ptr, ptr %7, align 8, !tbaa !9
  %21625 = load i32, ptr %12, align 4, !tbaa !5
  %21626 = load i32, ptr %8, align 4, !tbaa !5
  %21627 = mul nsw i32 35, %21626
  %21628 = add nsw i32 %21625, %21627
  %21629 = sext i32 %21628 to i64
  %21630 = getelementptr inbounds double, ptr %21624, i64 %21629
  %21631 = load double, ptr %21630, align 8, !tbaa !11
  %21632 = call double @llvm.fmuladd.f64(double 0xBC84000000000000, double %21631, double %21623)
  %21633 = load ptr, ptr %7, align 8, !tbaa !9
  %21634 = load i32, ptr %12, align 4, !tbaa !5
  %21635 = load i32, ptr %8, align 4, !tbaa !5
  %21636 = mul nsw i32 36, %21635
  %21637 = add nsw i32 %21634, %21636
  %21638 = sext i32 %21637 to i64
  %21639 = getelementptr inbounds double, ptr %21633, i64 %21638
  %21640 = load double, ptr %21639, align 8, !tbaa !11
  %21641 = call double @llvm.fmuladd.f64(double 0xBC9B000000000000, double %21640, double %21632)
  %21642 = load ptr, ptr %7, align 8, !tbaa !9
  %21643 = load i32, ptr %12, align 4, !tbaa !5
  %21644 = load i32, ptr %8, align 4, !tbaa !5
  %21645 = mul nsw i32 37, %21644
  %21646 = add nsw i32 %21643, %21645
  %21647 = sext i32 %21646 to i64
  %21648 = getelementptr inbounds double, ptr %21642, i64 %21647
  %21649 = load double, ptr %21648, align 8, !tbaa !11
  %21650 = call double @llvm.fmuladd.f64(double 0xBC67FFFFFFFFFFFE, double %21649, double %21641)
  %21651 = load ptr, ptr %7, align 8, !tbaa !9
  %21652 = load i32, ptr %12, align 4, !tbaa !5
  %21653 = load i32, ptr %8, align 4, !tbaa !5
  %21654 = mul nsw i32 38, %21653
  %21655 = add nsw i32 %21652, %21654
  %21656 = sext i32 %21655 to i64
  %21657 = getelementptr inbounds double, ptr %21651, i64 %21656
  %21658 = load double, ptr %21657, align 8, !tbaa !11
  %21659 = call double @llvm.fmuladd.f64(double 0x3CB1000000000001, double %21658, double %21650)
  %21660 = load ptr, ptr %7, align 8, !tbaa !9
  %21661 = load i32, ptr %12, align 4, !tbaa !5
  %21662 = load i32, ptr %8, align 4, !tbaa !5
  %21663 = mul nsw i32 39, %21662
  %21664 = add nsw i32 %21661, %21663
  %21665 = sext i32 %21664 to i64
  %21666 = getelementptr inbounds double, ptr %21660, i64 %21665
  %21667 = load double, ptr %21666, align 8, !tbaa !11
  %21668 = call double @llvm.fmuladd.f64(double 0x3C9C000000000000, double %21667, double %21659)
  store double %21668, ptr %11, align 8, !tbaa !11
  %21669 = load double, ptr %11, align 8, !tbaa !11
  %21670 = load ptr, ptr %9, align 8, !tbaa !9
  %21671 = load i32, ptr %12, align 4, !tbaa !5
  %21672 = load i32, ptr %10, align 4, !tbaa !5
  %21673 = mul nsw i32 59, %21672
  %21674 = add nsw i32 %21671, %21673
  %21675 = sext i32 %21674 to i64
  %21676 = getelementptr inbounds double, ptr %21670, i64 %21675
  %21677 = load double, ptr %21676, align 8, !tbaa !11
  %21678 = fadd double %21677, %21669
  store double %21678, ptr %21676, align 8, !tbaa !11
  %21679 = load ptr, ptr %7, align 8, !tbaa !9
  %21680 = load i32, ptr %12, align 4, !tbaa !5
  %21681 = load i32, ptr %8, align 4, !tbaa !5
  %21682 = mul nsw i32 0, %21681
  %21683 = add nsw i32 %21680, %21682
  %21684 = sext i32 %21683 to i64
  %21685 = getelementptr inbounds double, ptr %21679, i64 %21684
  %21686 = load double, ptr %21685, align 8, !tbaa !11
  %21687 = load ptr, ptr %7, align 8, !tbaa !9
  %21688 = load i32, ptr %12, align 4, !tbaa !5
  %21689 = load i32, ptr %8, align 4, !tbaa !5
  %21690 = mul nsw i32 1, %21689
  %21691 = add nsw i32 %21688, %21690
  %21692 = sext i32 %21691 to i64
  %21693 = getelementptr inbounds double, ptr %21687, i64 %21692
  %21694 = load double, ptr %21693, align 8, !tbaa !11
  %21695 = fmul double 0xBCA1800000000000, %21694
  %21696 = call double @llvm.fmuladd.f64(double 0xBCCEC00000000000, double %21686, double %21695)
  %21697 = load ptr, ptr %7, align 8, !tbaa !9
  %21698 = load i32, ptr %12, align 4, !tbaa !5
  %21699 = load i32, ptr %8, align 4, !tbaa !5
  %21700 = mul nsw i32 2, %21699
  %21701 = add nsw i32 %21698, %21700
  %21702 = sext i32 %21701 to i64
  %21703 = getelementptr inbounds double, ptr %21697, i64 %21702
  %21704 = load double, ptr %21703, align 8, !tbaa !11
  %21705 = call double @llvm.fmuladd.f64(double 0x3CBEF00000000001, double %21704, double %21696)
  %21706 = load ptr, ptr %7, align 8, !tbaa !9
  %21707 = load i32, ptr %12, align 4, !tbaa !5
  %21708 = load i32, ptr %8, align 4, !tbaa !5
  %21709 = mul nsw i32 3, %21708
  %21710 = add nsw i32 %21707, %21709
  %21711 = sext i32 %21710 to i64
  %21712 = getelementptr inbounds double, ptr %21706, i64 %21711
  %21713 = load double, ptr %21712, align 8, !tbaa !11
  %21714 = call double @llvm.fmuladd.f64(double 0xBCA4000000000001, double %21713, double %21705)
  %21715 = load ptr, ptr %7, align 8, !tbaa !9
  %21716 = load i32, ptr %12, align 4, !tbaa !5
  %21717 = load i32, ptr %8, align 4, !tbaa !5
  %21718 = mul nsw i32 4, %21717
  %21719 = add nsw i32 %21716, %21718
  %21720 = sext i32 %21719 to i64
  %21721 = getelementptr inbounds double, ptr %21715, i64 %21720
  %21722 = load double, ptr %21721, align 8, !tbaa !11
  %21723 = call double @llvm.fmuladd.f64(double 0xBC8C800000000000, double %21722, double %21714)
  %21724 = load ptr, ptr %7, align 8, !tbaa !9
  %21725 = load i32, ptr %12, align 4, !tbaa !5
  %21726 = load i32, ptr %8, align 4, !tbaa !5
  %21727 = mul nsw i32 5, %21726
  %21728 = add nsw i32 %21725, %21727
  %21729 = sext i32 %21728 to i64
  %21730 = getelementptr inbounds double, ptr %21724, i64 %21729
  %21731 = load double, ptr %21730, align 8, !tbaa !11
  %21732 = call double @llvm.fmuladd.f64(double 0xBCA1800000000000, double %21731, double %21723)
  %21733 = load ptr, ptr %7, align 8, !tbaa !9
  %21734 = load i32, ptr %12, align 4, !tbaa !5
  %21735 = load i32, ptr %8, align 4, !tbaa !5
  %21736 = mul nsw i32 6, %21735
  %21737 = add nsw i32 %21734, %21736
  %21738 = sext i32 %21737 to i64
  %21739 = getelementptr inbounds double, ptr %21733, i64 %21738
  %21740 = load double, ptr %21739, align 8, !tbaa !11
  %21741 = call double @llvm.fmuladd.f64(double 0x3C8CA00000000000, double %21740, double %21732)
  %21742 = load ptr, ptr %7, align 8, !tbaa !9
  %21743 = load i32, ptr %12, align 4, !tbaa !5
  %21744 = load i32, ptr %8, align 4, !tbaa !5
  %21745 = mul nsw i32 7, %21744
  %21746 = add nsw i32 %21743, %21745
  %21747 = sext i32 %21746 to i64
  %21748 = getelementptr inbounds double, ptr %21742, i64 %21747
  %21749 = load double, ptr %21748, align 8, !tbaa !11
  %21750 = call double @llvm.fmuladd.f64(double 0x3C61800000000000, double %21749, double %21741)
  %21751 = load ptr, ptr %7, align 8, !tbaa !9
  %21752 = load i32, ptr %12, align 4, !tbaa !5
  %21753 = load i32, ptr %8, align 4, !tbaa !5
  %21754 = mul nsw i32 8, %21753
  %21755 = add nsw i32 %21752, %21754
  %21756 = sext i32 %21755 to i64
  %21757 = getelementptr inbounds double, ptr %21751, i64 %21756
  %21758 = load double, ptr %21757, align 8, !tbaa !11
  %21759 = call double @llvm.fmuladd.f64(double 0xBCA1C00000000000, double %21758, double %21750)
  %21760 = load ptr, ptr %7, align 8, !tbaa !9
  %21761 = load i32, ptr %12, align 4, !tbaa !5
  %21762 = load i32, ptr %8, align 4, !tbaa !5
  %21763 = mul nsw i32 9, %21762
  %21764 = add nsw i32 %21761, %21763
  %21765 = sext i32 %21764 to i64
  %21766 = getelementptr inbounds double, ptr %21760, i64 %21765
  %21767 = load double, ptr %21766, align 8, !tbaa !11
  %21768 = call double @llvm.fmuladd.f64(double 0xBC70000000000001, double %21767, double %21759)
  %21769 = load ptr, ptr %7, align 8, !tbaa !9
  %21770 = load i32, ptr %12, align 4, !tbaa !5
  %21771 = load i32, ptr %8, align 4, !tbaa !5
  %21772 = mul nsw i32 10, %21771
  %21773 = add nsw i32 %21770, %21772
  %21774 = sext i32 %21773 to i64
  %21775 = getelementptr inbounds double, ptr %21769, i64 %21774
  %21776 = load double, ptr %21775, align 8, !tbaa !11
  %21777 = call double @llvm.fmuladd.f64(double 0x3CC3E00000000000, double %21776, double %21768)
  %21778 = load ptr, ptr %7, align 8, !tbaa !9
  %21779 = load i32, ptr %12, align 4, !tbaa !5
  %21780 = load i32, ptr %8, align 4, !tbaa !5
  %21781 = mul nsw i32 11, %21780
  %21782 = add nsw i32 %21779, %21781
  %21783 = sext i32 %21782 to i64
  %21784 = getelementptr inbounds double, ptr %21778, i64 %21783
  %21785 = load double, ptr %21784, align 8, !tbaa !11
  %21786 = call double @llvm.fmuladd.f64(double 0x3CA0000000000002, double %21785, double %21777)
  %21787 = load ptr, ptr %7, align 8, !tbaa !9
  %21788 = load i32, ptr %12, align 4, !tbaa !5
  %21789 = load i32, ptr %8, align 4, !tbaa !5
  %21790 = mul nsw i32 12, %21789
  %21791 = add nsw i32 %21788, %21790
  %21792 = sext i32 %21791 to i64
  %21793 = getelementptr inbounds double, ptr %21787, i64 %21792
  %21794 = load double, ptr %21793, align 8, !tbaa !11
  %21795 = call double @llvm.fmuladd.f64(double 0x3CB937FFFFFFFFFF, double %21794, double %21786)
  %21796 = load ptr, ptr %7, align 8, !tbaa !9
  %21797 = load i32, ptr %12, align 4, !tbaa !5
  %21798 = load i32, ptr %8, align 4, !tbaa !5
  %21799 = mul nsw i32 13, %21798
  %21800 = add nsw i32 %21797, %21799
  %21801 = sext i32 %21800 to i64
  %21802 = getelementptr inbounds double, ptr %21796, i64 %21801
  %21803 = load double, ptr %21802, align 8, !tbaa !11
  %21804 = call double @llvm.fmuladd.f64(double 0xBCA4B00000000001, double %21803, double %21795)
  %21805 = load ptr, ptr %7, align 8, !tbaa !9
  %21806 = load i32, ptr %12, align 4, !tbaa !5
  %21807 = load i32, ptr %8, align 4, !tbaa !5
  %21808 = mul nsw i32 14, %21807
  %21809 = add nsw i32 %21806, %21808
  %21810 = sext i32 %21809 to i64
  %21811 = getelementptr inbounds double, ptr %21805, i64 %21810
  %21812 = load double, ptr %21811, align 8, !tbaa !11
  %21813 = call double @llvm.fmuladd.f64(double 0xBCBAC00000000000, double %21812, double %21804)
  %21814 = load ptr, ptr %7, align 8, !tbaa !9
  %21815 = load i32, ptr %12, align 4, !tbaa !5
  %21816 = load i32, ptr %8, align 4, !tbaa !5
  %21817 = mul nsw i32 15, %21816
  %21818 = add nsw i32 %21815, %21817
  %21819 = sext i32 %21818 to i64
  %21820 = getelementptr inbounds double, ptr %21814, i64 %21819
  %21821 = load double, ptr %21820, align 8, !tbaa !11
  %21822 = call double @llvm.fmuladd.f64(double 0xBCA3C00000000002, double %21821, double %21813)
  %21823 = load ptr, ptr %7, align 8, !tbaa !9
  %21824 = load i32, ptr %12, align 4, !tbaa !5
  %21825 = load i32, ptr %8, align 4, !tbaa !5
  %21826 = mul nsw i32 16, %21825
  %21827 = add nsw i32 %21824, %21826
  %21828 = sext i32 %21827 to i64
  %21829 = getelementptr inbounds double, ptr %21823, i64 %21828
  %21830 = load double, ptr %21829, align 8, !tbaa !11
  %21831 = call double @llvm.fmuladd.f64(double 0x3C9C400000000000, double %21830, double %21822)
  %21832 = load ptr, ptr %7, align 8, !tbaa !9
  %21833 = load i32, ptr %12, align 4, !tbaa !5
  %21834 = load i32, ptr %8, align 4, !tbaa !5
  %21835 = mul nsw i32 17, %21834
  %21836 = add nsw i32 %21833, %21835
  %21837 = sext i32 %21836 to i64
  %21838 = getelementptr inbounds double, ptr %21832, i64 %21837
  %21839 = load double, ptr %21838, align 8, !tbaa !11
  %21840 = call double @llvm.fmuladd.f64(double 0x3CBB800000000001, double %21839, double %21831)
  %21841 = load ptr, ptr %7, align 8, !tbaa !9
  %21842 = load i32, ptr %12, align 4, !tbaa !5
  %21843 = load i32, ptr %8, align 4, !tbaa !5
  %21844 = mul nsw i32 18, %21843
  %21845 = add nsw i32 %21842, %21844
  %21846 = sext i32 %21845 to i64
  %21847 = getelementptr inbounds double, ptr %21841, i64 %21846
  %21848 = load double, ptr %21847, align 8, !tbaa !11
  %21849 = call double @llvm.fmuladd.f64(double 0xBC74000000000000, double %21848, double %21840)
  %21850 = load ptr, ptr %7, align 8, !tbaa !9
  %21851 = load i32, ptr %12, align 4, !tbaa !5
  %21852 = load i32, ptr %8, align 4, !tbaa !5
  %21853 = mul nsw i32 19, %21852
  %21854 = add nsw i32 %21851, %21853
  %21855 = sext i32 %21854 to i64
  %21856 = getelementptr inbounds double, ptr %21850, i64 %21855
  %21857 = load double, ptr %21856, align 8, !tbaa !11
  %21858 = call double @llvm.fmuladd.f64(double 0xBC9A000000000000, double %21857, double %21849)
  %21859 = load ptr, ptr %7, align 8, !tbaa !9
  %21860 = load i32, ptr %12, align 4, !tbaa !5
  %21861 = load i32, ptr %8, align 4, !tbaa !5
  %21862 = mul nsw i32 20, %21861
  %21863 = add nsw i32 %21860, %21862
  %21864 = sext i32 %21863 to i64
  %21865 = getelementptr inbounds double, ptr %21859, i64 %21864
  %21866 = load double, ptr %21865, align 8, !tbaa !11
  %21867 = call double @llvm.fmuladd.f64(double 0xBF83152016E0EC8E, double %21866, double %21858)
  %21868 = load ptr, ptr %7, align 8, !tbaa !9
  %21869 = load i32, ptr %12, align 4, !tbaa !5
  %21870 = load i32, ptr %8, align 4, !tbaa !5
  %21871 = mul nsw i32 21, %21870
  %21872 = add nsw i32 %21869, %21871
  %21873 = sext i32 %21872 to i64
  %21874 = getelementptr inbounds double, ptr %21868, i64 %21873
  %21875 = load double, ptr %21874, align 8, !tbaa !11
  %21876 = call double @llvm.fmuladd.f64(double 0x3F938CE4890DB2EB, double %21875, double %21867)
  %21877 = load ptr, ptr %7, align 8, !tbaa !9
  %21878 = load i32, ptr %12, align 4, !tbaa !5
  %21879 = load i32, ptr %8, align 4, !tbaa !5
  %21880 = mul nsw i32 22, %21879
  %21881 = add nsw i32 %21878, %21880
  %21882 = sext i32 %21881 to i64
  %21883 = getelementptr inbounds double, ptr %21877, i64 %21882
  %21884 = load double, ptr %21883, align 8, !tbaa !11
  %21885 = call double @llvm.fmuladd.f64(double 0x3FF4EC1BB3FDC61B, double %21884, double %21876)
  %21886 = load ptr, ptr %7, align 8, !tbaa !9
  %21887 = load i32, ptr %12, align 4, !tbaa !5
  %21888 = load i32, ptr %8, align 4, !tbaa !5
  %21889 = mul nsw i32 23, %21888
  %21890 = add nsw i32 %21887, %21889
  %21891 = sext i32 %21890 to i64
  %21892 = getelementptr inbounds double, ptr %21886, i64 %21891
  %21893 = load double, ptr %21892, align 8, !tbaa !11
  %21894 = call double @llvm.fmuladd.f64(double 0xBFB5B58B4F03B184, double %21893, double %21885)
  %21895 = load ptr, ptr %7, align 8, !tbaa !9
  %21896 = load i32, ptr %12, align 4, !tbaa !5
  %21897 = load i32, ptr %8, align 4, !tbaa !5
  %21898 = mul nsw i32 24, %21897
  %21899 = add nsw i32 %21896, %21898
  %21900 = sext i32 %21899 to i64
  %21901 = getelementptr inbounds double, ptr %21895, i64 %21900
  %21902 = load double, ptr %21901, align 8, !tbaa !11
  %21903 = call double @llvm.fmuladd.f64(double 0x3FCA50C41AB7A334, double %21902, double %21894)
  %21904 = load ptr, ptr %7, align 8, !tbaa !9
  %21905 = load i32, ptr %12, align 4, !tbaa !5
  %21906 = load i32, ptr %8, align 4, !tbaa !5
  %21907 = mul nsw i32 25, %21906
  %21908 = add nsw i32 %21905, %21907
  %21909 = sext i32 %21908 to i64
  %21910 = getelementptr inbounds double, ptr %21904, i64 %21909
  %21911 = load double, ptr %21910, align 8, !tbaa !11
  %21912 = call double @llvm.fmuladd.f64(double 0xBF8BDAF699AECF9F, double %21911, double %21903)
  %21913 = load ptr, ptr %7, align 8, !tbaa !9
  %21914 = load i32, ptr %12, align 4, !tbaa !5
  %21915 = load i32, ptr %8, align 4, !tbaa !5
  %21916 = mul nsw i32 26, %21915
  %21917 = add nsw i32 %21914, %21916
  %21918 = sext i32 %21917 to i64
  %21919 = getelementptr inbounds double, ptr %21913, i64 %21918
  %21920 = load double, ptr %21919, align 8, !tbaa !11
  %21921 = call double @llvm.fmuladd.f64(double 0x3FD417DEBFC17B27, double %21920, double %21912)
  %21922 = load ptr, ptr %7, align 8, !tbaa !9
  %21923 = load i32, ptr %12, align 4, !tbaa !5
  %21924 = load i32, ptr %8, align 4, !tbaa !5
  %21925 = mul nsw i32 27, %21924
  %21926 = add nsw i32 %21923, %21925
  %21927 = sext i32 %21926 to i64
  %21928 = getelementptr inbounds double, ptr %21922, i64 %21927
  %21929 = load double, ptr %21928, align 8, !tbaa !11
  %21930 = call double @llvm.fmuladd.f64(double 0xBFE5679E70A6066E, double %21929, double %21921)
  %21931 = load ptr, ptr %7, align 8, !tbaa !9
  %21932 = load i32, ptr %12, align 4, !tbaa !5
  %21933 = load i32, ptr %8, align 4, !tbaa !5
  %21934 = mul nsw i32 28, %21933
  %21935 = add nsw i32 %21932, %21934
  %21936 = sext i32 %21935 to i64
  %21937 = getelementptr inbounds double, ptr %21931, i64 %21936
  %21938 = load double, ptr %21937, align 8, !tbaa !11
  %21939 = call double @llvm.fmuladd.f64(double 0x3F85E50BB681A443, double %21938, double %21930)
  %21940 = load ptr, ptr %7, align 8, !tbaa !9
  %21941 = load i32, ptr %12, align 4, !tbaa !5
  %21942 = load i32, ptr %8, align 4, !tbaa !5
  %21943 = mul nsw i32 29, %21942
  %21944 = add nsw i32 %21941, %21943
  %21945 = sext i32 %21944 to i64
  %21946 = getelementptr inbounds double, ptr %21940, i64 %21945
  %21947 = load double, ptr %21946, align 8, !tbaa !11
  %21948 = call double @llvm.fmuladd.f64(double 0xBFB49217631F5948, double %21947, double %21939)
  %21949 = load ptr, ptr %7, align 8, !tbaa !9
  %21950 = load i32, ptr %12, align 4, !tbaa !5
  %21951 = load i32, ptr %8, align 4, !tbaa !5
  %21952 = mul nsw i32 30, %21951
  %21953 = add nsw i32 %21950, %21952
  %21954 = sext i32 %21953 to i64
  %21955 = getelementptr inbounds double, ptr %21949, i64 %21954
  %21956 = load double, ptr %21955, align 8, !tbaa !11
  %21957 = call double @llvm.fmuladd.f64(double 0x3CB1F00000000000, double %21956, double %21948)
  %21958 = load ptr, ptr %7, align 8, !tbaa !9
  %21959 = load i32, ptr %12, align 4, !tbaa !5
  %21960 = load i32, ptr %8, align 4, !tbaa !5
  %21961 = mul nsw i32 31, %21960
  %21962 = add nsw i32 %21959, %21961
  %21963 = sext i32 %21962 to i64
  %21964 = getelementptr inbounds double, ptr %21958, i64 %21963
  %21965 = load double, ptr %21964, align 8, !tbaa !11
  %21966 = call double @llvm.fmuladd.f64(double 0x3C8B800000000001, double %21965, double %21957)
  %21967 = load ptr, ptr %7, align 8, !tbaa !9
  %21968 = load i32, ptr %12, align 4, !tbaa !5
  %21969 = load i32, ptr %8, align 4, !tbaa !5
  %21970 = mul nsw i32 32, %21969
  %21971 = add nsw i32 %21968, %21970
  %21972 = sext i32 %21971 to i64
  %21973 = getelementptr inbounds double, ptr %21967, i64 %21972
  %21974 = load double, ptr %21973, align 8, !tbaa !11
  %21975 = call double @llvm.fmuladd.f64(double 0xBC9EFFFFFFFFFFFD, double %21974, double %21966)
  %21976 = load ptr, ptr %7, align 8, !tbaa !9
  %21977 = load i32, ptr %12, align 4, !tbaa !5
  %21978 = load i32, ptr %8, align 4, !tbaa !5
  %21979 = mul nsw i32 33, %21978
  %21980 = add nsw i32 %21977, %21979
  %21981 = sext i32 %21980 to i64
  %21982 = getelementptr inbounds double, ptr %21976, i64 %21981
  %21983 = load double, ptr %21982, align 8, !tbaa !11
  %21984 = call double @llvm.fmuladd.f64(double 0xBCB5200000000000, double %21983, double %21975)
  %21985 = load ptr, ptr %7, align 8, !tbaa !9
  %21986 = load i32, ptr %12, align 4, !tbaa !5
  %21987 = load i32, ptr %8, align 4, !tbaa !5
  %21988 = mul nsw i32 34, %21987
  %21989 = add nsw i32 %21986, %21988
  %21990 = sext i32 %21989 to i64
  %21991 = getelementptr inbounds double, ptr %21985, i64 %21990
  %21992 = load double, ptr %21991, align 8, !tbaa !11
  %21993 = call double @llvm.fmuladd.f64(double 0x3C76FFFFFFFFFFFF, double %21992, double %21984)
  %21994 = load ptr, ptr %7, align 8, !tbaa !9
  %21995 = load i32, ptr %12, align 4, !tbaa !5
  %21996 = load i32, ptr %8, align 4, !tbaa !5
  %21997 = mul nsw i32 35, %21996
  %21998 = add nsw i32 %21995, %21997
  %21999 = sext i32 %21998 to i64
  %22000 = getelementptr inbounds double, ptr %21994, i64 %21999
  %22001 = load double, ptr %22000, align 8, !tbaa !11
  %22002 = call double @llvm.fmuladd.f64(double 0x3CA9FFFFFFFFFFFE, double %22001, double %21993)
  %22003 = load ptr, ptr %7, align 8, !tbaa !9
  %22004 = load i32, ptr %12, align 4, !tbaa !5
  %22005 = load i32, ptr %8, align 4, !tbaa !5
  %22006 = mul nsw i32 36, %22005
  %22007 = add nsw i32 %22004, %22006
  %22008 = sext i32 %22007 to i64
  %22009 = getelementptr inbounds double, ptr %22003, i64 %22008
  %22010 = load double, ptr %22009, align 8, !tbaa !11
  %22011 = call double @llvm.fmuladd.f64(double 0xBC91B00000000000, double %22010, double %22002)
  %22012 = load ptr, ptr %7, align 8, !tbaa !9
  %22013 = load i32, ptr %12, align 4, !tbaa !5
  %22014 = load i32, ptr %8, align 4, !tbaa !5
  %22015 = mul nsw i32 37, %22014
  %22016 = add nsw i32 %22013, %22015
  %22017 = sext i32 %22016 to i64
  %22018 = getelementptr inbounds double, ptr %22012, i64 %22017
  %22019 = load double, ptr %22018, align 8, !tbaa !11
  %22020 = call double @llvm.fmuladd.f64(double 0x3CBA040000000000, double %22019, double %22011)
  %22021 = load ptr, ptr %7, align 8, !tbaa !9
  %22022 = load i32, ptr %12, align 4, !tbaa !5
  %22023 = load i32, ptr %8, align 4, !tbaa !5
  %22024 = mul nsw i32 38, %22023
  %22025 = add nsw i32 %22022, %22024
  %22026 = sext i32 %22025 to i64
  %22027 = getelementptr inbounds double, ptr %22021, i64 %22026
  %22028 = load double, ptr %22027, align 8, !tbaa !11
  %22029 = call double @llvm.fmuladd.f64(double 0xBC7E000000000001, double %22028, double %22020)
  %22030 = load ptr, ptr %7, align 8, !tbaa !9
  %22031 = load i32, ptr %12, align 4, !tbaa !5
  %22032 = load i32, ptr %8, align 4, !tbaa !5
  %22033 = mul nsw i32 39, %22032
  %22034 = add nsw i32 %22031, %22033
  %22035 = sext i32 %22034 to i64
  %22036 = getelementptr inbounds double, ptr %22030, i64 %22035
  %22037 = load double, ptr %22036, align 8, !tbaa !11
  %22038 = call double @llvm.fmuladd.f64(double 0x3C86000000000001, double %22037, double %22029)
  store double %22038, ptr %11, align 8, !tbaa !11
  %22039 = load double, ptr %11, align 8, !tbaa !11
  %22040 = load ptr, ptr %9, align 8, !tbaa !9
  %22041 = load i32, ptr %12, align 4, !tbaa !5
  %22042 = load i32, ptr %10, align 4, !tbaa !5
  %22043 = mul nsw i32 60, %22042
  %22044 = add nsw i32 %22041, %22043
  %22045 = sext i32 %22044 to i64
  %22046 = getelementptr inbounds double, ptr %22040, i64 %22045
  %22047 = load double, ptr %22046, align 8, !tbaa !11
  %22048 = fadd double %22047, %22039
  store double %22048, ptr %22046, align 8, !tbaa !11
  %22049 = load ptr, ptr %7, align 8, !tbaa !9
  %22050 = load i32, ptr %12, align 4, !tbaa !5
  %22051 = load i32, ptr %8, align 4, !tbaa !5
  %22052 = mul nsw i32 0, %22051
  %22053 = add nsw i32 %22050, %22052
  %22054 = sext i32 %22053 to i64
  %22055 = getelementptr inbounds double, ptr %22049, i64 %22054
  %22056 = load double, ptr %22055, align 8, !tbaa !11
  %22057 = load ptr, ptr %7, align 8, !tbaa !9
  %22058 = load i32, ptr %12, align 4, !tbaa !5
  %22059 = load i32, ptr %8, align 4, !tbaa !5
  %22060 = mul nsw i32 1, %22059
  %22061 = add nsw i32 %22058, %22060
  %22062 = sext i32 %22061 to i64
  %22063 = getelementptr inbounds double, ptr %22057, i64 %22062
  %22064 = load double, ptr %22063, align 8, !tbaa !11
  %22065 = fmul double 0x3C81000000000000, %22064
  %22066 = call double @llvm.fmuladd.f64(double 0xBCBCDFFFFFFFFFFF, double %22056, double %22065)
  %22067 = load ptr, ptr %7, align 8, !tbaa !9
  %22068 = load i32, ptr %12, align 4, !tbaa !5
  %22069 = load i32, ptr %8, align 4, !tbaa !5
  %22070 = mul nsw i32 2, %22069
  %22071 = add nsw i32 %22068, %22070
  %22072 = sext i32 %22071 to i64
  %22073 = getelementptr inbounds double, ptr %22067, i64 %22072
  %22074 = load double, ptr %22073, align 8, !tbaa !11
  %22075 = call double @llvm.fmuladd.f64(double 0x3CB7F80000000001, double %22074, double %22066)
  %22076 = load ptr, ptr %7, align 8, !tbaa !9
  %22077 = load i32, ptr %12, align 4, !tbaa !5
  %22078 = load i32, ptr %8, align 4, !tbaa !5
  %22079 = mul nsw i32 3, %22078
  %22080 = add nsw i32 %22077, %22079
  %22081 = sext i32 %22080 to i64
  %22082 = getelementptr inbounds double, ptr %22076, i64 %22081
  %22083 = load double, ptr %22082, align 8, !tbaa !11
  %22084 = call double @llvm.fmuladd.f64(double 0xBCBF600000000000, double %22083, double %22075)
  %22085 = load ptr, ptr %7, align 8, !tbaa !9
  %22086 = load i32, ptr %12, align 4, !tbaa !5
  %22087 = load i32, ptr %8, align 4, !tbaa !5
  %22088 = mul nsw i32 4, %22087
  %22089 = add nsw i32 %22086, %22088
  %22090 = sext i32 %22089 to i64
  %22091 = getelementptr inbounds double, ptr %22085, i64 %22090
  %22092 = load double, ptr %22091, align 8, !tbaa !11
  %22093 = call double @llvm.fmuladd.f64(double 0xBCA2BFFFFFFFFFFF, double %22092, double %22084)
  %22094 = load ptr, ptr %7, align 8, !tbaa !9
  %22095 = load i32, ptr %12, align 4, !tbaa !5
  %22096 = load i32, ptr %8, align 4, !tbaa !5
  %22097 = mul nsw i32 5, %22096
  %22098 = add nsw i32 %22095, %22097
  %22099 = sext i32 %22098 to i64
  %22100 = getelementptr inbounds double, ptr %22094, i64 %22099
  %22101 = load double, ptr %22100, align 8, !tbaa !11
  %22102 = call double @llvm.fmuladd.f64(double 0xBCA4400000000001, double %22101, double %22093)
  %22103 = load ptr, ptr %7, align 8, !tbaa !9
  %22104 = load i32, ptr %12, align 4, !tbaa !5
  %22105 = load i32, ptr %8, align 4, !tbaa !5
  %22106 = mul nsw i32 6, %22105
  %22107 = add nsw i32 %22104, %22106
  %22108 = sext i32 %22107 to i64
  %22109 = getelementptr inbounds double, ptr %22103, i64 %22108
  %22110 = load double, ptr %22109, align 8, !tbaa !11
  %22111 = call double @llvm.fmuladd.f64(double 0x3CAE400000000002, double %22110, double %22102)
  %22112 = load ptr, ptr %7, align 8, !tbaa !9
  %22113 = load i32, ptr %12, align 4, !tbaa !5
  %22114 = load i32, ptr %8, align 4, !tbaa !5
  %22115 = mul nsw i32 7, %22114
  %22116 = add nsw i32 %22113, %22115
  %22117 = sext i32 %22116 to i64
  %22118 = getelementptr inbounds double, ptr %22112, i64 %22117
  %22119 = load double, ptr %22118, align 8, !tbaa !11
  %22120 = call double @llvm.fmuladd.f64(double 0xBCA91FFFFFFFFFFF, double %22119, double %22111)
  %22121 = load ptr, ptr %7, align 8, !tbaa !9
  %22122 = load i32, ptr %12, align 4, !tbaa !5
  %22123 = load i32, ptr %8, align 4, !tbaa !5
  %22124 = mul nsw i32 8, %22123
  %22125 = add nsw i32 %22122, %22124
  %22126 = sext i32 %22125 to i64
  %22127 = getelementptr inbounds double, ptr %22121, i64 %22126
  %22128 = load double, ptr %22127, align 8, !tbaa !11
  %22129 = call double @llvm.fmuladd.f64(double 0xBCB0200000000000, double %22128, double %22120)
  %22130 = load ptr, ptr %7, align 8, !tbaa !9
  %22131 = load i32, ptr %12, align 4, !tbaa !5
  %22132 = load i32, ptr %8, align 4, !tbaa !5
  %22133 = mul nsw i32 9, %22132
  %22134 = add nsw i32 %22131, %22133
  %22135 = sext i32 %22134 to i64
  %22136 = getelementptr inbounds double, ptr %22130, i64 %22135
  %22137 = load double, ptr %22136, align 8, !tbaa !11
  %22138 = call double @llvm.fmuladd.f64(double 0xBC91800000000000, double %22137, double %22129)
  %22139 = load ptr, ptr %7, align 8, !tbaa !9
  %22140 = load i32, ptr %12, align 4, !tbaa !5
  %22141 = load i32, ptr %8, align 4, !tbaa !5
  %22142 = mul nsw i32 10, %22141
  %22143 = add nsw i32 %22140, %22142
  %22144 = sext i32 %22143 to i64
  %22145 = getelementptr inbounds double, ptr %22139, i64 %22144
  %22146 = load double, ptr %22145, align 8, !tbaa !11
  %22147 = call double @llvm.fmuladd.f64(double 0x3CD1000000000000, double %22146, double %22138)
  %22148 = load ptr, ptr %7, align 8, !tbaa !9
  %22149 = load i32, ptr %12, align 4, !tbaa !5
  %22150 = load i32, ptr %8, align 4, !tbaa !5
  %22151 = mul nsw i32 11, %22150
  %22152 = add nsw i32 %22149, %22151
  %22153 = sext i32 %22152 to i64
  %22154 = getelementptr inbounds double, ptr %22148, i64 %22153
  %22155 = load double, ptr %22154, align 8, !tbaa !11
  %22156 = call double @llvm.fmuladd.f64(double 0x3CA4000000000001, double %22155, double %22147)
  %22157 = load ptr, ptr %7, align 8, !tbaa !9
  %22158 = load i32, ptr %12, align 4, !tbaa !5
  %22159 = load i32, ptr %8, align 4, !tbaa !5
  %22160 = mul nsw i32 12, %22159
  %22161 = add nsw i32 %22158, %22160
  %22162 = sext i32 %22161 to i64
  %22163 = getelementptr inbounds double, ptr %22157, i64 %22162
  %22164 = load double, ptr %22163, align 8, !tbaa !11
  %22165 = call double @llvm.fmuladd.f64(double 0x3C9F3FFFFFFFFFFC, double %22164, double %22156)
  %22166 = load ptr, ptr %7, align 8, !tbaa !9
  %22167 = load i32, ptr %12, align 4, !tbaa !5
  %22168 = load i32, ptr %8, align 4, !tbaa !5
  %22169 = mul nsw i32 13, %22168
  %22170 = add nsw i32 %22167, %22169
  %22171 = sext i32 %22170 to i64
  %22172 = getelementptr inbounds double, ptr %22166, i64 %22171
  %22173 = load double, ptr %22172, align 8, !tbaa !11
  %22174 = call double @llvm.fmuladd.f64(double 0xBCC2C80000000000, double %22173, double %22165)
  %22175 = load ptr, ptr %7, align 8, !tbaa !9
  %22176 = load i32, ptr %12, align 4, !tbaa !5
  %22177 = load i32, ptr %8, align 4, !tbaa !5
  %22178 = mul nsw i32 14, %22177
  %22179 = add nsw i32 %22176, %22178
  %22180 = sext i32 %22179 to i64
  %22181 = getelementptr inbounds double, ptr %22175, i64 %22180
  %22182 = load double, ptr %22181, align 8, !tbaa !11
  %22183 = call double @llvm.fmuladd.f64(double 0xBCB9C00000000001, double %22182, double %22174)
  %22184 = load ptr, ptr %7, align 8, !tbaa !9
  %22185 = load i32, ptr %12, align 4, !tbaa !5
  %22186 = load i32, ptr %8, align 4, !tbaa !5
  %22187 = mul nsw i32 15, %22186
  %22188 = add nsw i32 %22185, %22187
  %22189 = sext i32 %22188 to i64
  %22190 = getelementptr inbounds double, ptr %22184, i64 %22189
  %22191 = load double, ptr %22190, align 8, !tbaa !11
  %22192 = call double @llvm.fmuladd.f64(double 0xBCB97FFFFFFFFFFF, double %22191, double %22183)
  %22193 = load ptr, ptr %7, align 8, !tbaa !9
  %22194 = load i32, ptr %12, align 4, !tbaa !5
  %22195 = load i32, ptr %8, align 4, !tbaa !5
  %22196 = mul nsw i32 16, %22195
  %22197 = add nsw i32 %22194, %22196
  %22198 = sext i32 %22197 to i64
  %22199 = getelementptr inbounds double, ptr %22193, i64 %22198
  %22200 = load double, ptr %22199, align 8, !tbaa !11
  %22201 = call double @llvm.fmuladd.f64(double 0x3CBE200000000000, double %22200, double %22192)
  %22202 = load ptr, ptr %7, align 8, !tbaa !9
  %22203 = load i32, ptr %12, align 4, !tbaa !5
  %22204 = load i32, ptr %8, align 4, !tbaa !5
  %22205 = mul nsw i32 17, %22204
  %22206 = add nsw i32 %22203, %22205
  %22207 = sext i32 %22206 to i64
  %22208 = getelementptr inbounds double, ptr %22202, i64 %22207
  %22209 = load double, ptr %22208, align 8, !tbaa !11
  %22210 = call double @llvm.fmuladd.f64(double 0x3CA4C00000000000, double %22209, double %22201)
  %22211 = load ptr, ptr %7, align 8, !tbaa !9
  %22212 = load i32, ptr %12, align 4, !tbaa !5
  %22213 = load i32, ptr %8, align 4, !tbaa !5
  %22214 = mul nsw i32 18, %22213
  %22215 = add nsw i32 %22212, %22214
  %22216 = sext i32 %22215 to i64
  %22217 = getelementptr inbounds double, ptr %22211, i64 %22216
  %22218 = load double, ptr %22217, align 8, !tbaa !11
  %22219 = call double @llvm.fmuladd.f64(double 0xBCA4000000000001, double %22218, double %22210)
  %22220 = load ptr, ptr %7, align 8, !tbaa !9
  %22221 = load i32, ptr %12, align 4, !tbaa !5
  %22222 = load i32, ptr %8, align 4, !tbaa !5
  %22223 = mul nsw i32 19, %22222
  %22224 = add nsw i32 %22221, %22223
  %22225 = sext i32 %22224 to i64
  %22226 = getelementptr inbounds double, ptr %22220, i64 %22225
  %22227 = load double, ptr %22226, align 8, !tbaa !11
  %22228 = call double @llvm.fmuladd.f64(double 0x3CA4000000000001, double %22227, double %22219)
  %22229 = load ptr, ptr %7, align 8, !tbaa !9
  %22230 = load i32, ptr %12, align 4, !tbaa !5
  %22231 = load i32, ptr %8, align 4, !tbaa !5
  %22232 = mul nsw i32 20, %22231
  %22233 = add nsw i32 %22230, %22232
  %22234 = sext i32 %22233 to i64
  %22235 = getelementptr inbounds double, ptr %22229, i64 %22234
  %22236 = load double, ptr %22235, align 8, !tbaa !11
  %22237 = call double @llvm.fmuladd.f64(double 0xBFE333710B32A2A0, double %22236, double %22228)
  %22238 = load ptr, ptr %7, align 8, !tbaa !9
  %22239 = load i32, ptr %12, align 4, !tbaa !5
  %22240 = load i32, ptr %8, align 4, !tbaa !5
  %22241 = mul nsw i32 21, %22240
  %22242 = add nsw i32 %22239, %22241
  %22243 = sext i32 %22242 to i64
  %22244 = getelementptr inbounds double, ptr %22238, i64 %22243
  %22245 = load double, ptr %22244, align 8, !tbaa !11
  %22246 = call double @llvm.fmuladd.f64(double 0xBFA352D4DB969C25, double %22245, double %22237)
  %22247 = load ptr, ptr %7, align 8, !tbaa !9
  %22248 = load i32, ptr %12, align 4, !tbaa !5
  %22249 = load i32, ptr %8, align 4, !tbaa !5
  %22250 = mul nsw i32 22, %22249
  %22251 = add nsw i32 %22248, %22250
  %22252 = sext i32 %22251 to i64
  %22253 = getelementptr inbounds double, ptr %22247, i64 %22252
  %22254 = load double, ptr %22253, align 8, !tbaa !11
  %22255 = call double @llvm.fmuladd.f64(double 0x3FA87D7643548526, double %22254, double %22246)
  %22256 = load ptr, ptr %7, align 8, !tbaa !9
  %22257 = load i32, ptr %12, align 4, !tbaa !5
  %22258 = load i32, ptr %8, align 4, !tbaa !5
  %22259 = mul nsw i32 23, %22258
  %22260 = add nsw i32 %22257, %22259
  %22261 = sext i32 %22260 to i64
  %22262 = getelementptr inbounds double, ptr %22256, i64 %22261
  %22263 = load double, ptr %22262, align 8, !tbaa !11
  %22264 = call double @llvm.fmuladd.f64(double 0xBFBEED13A9F0D8B2, double %22263, double %22255)
  %22265 = load ptr, ptr %7, align 8, !tbaa !9
  %22266 = load i32, ptr %12, align 4, !tbaa !5
  %22267 = load i32, ptr %8, align 4, !tbaa !5
  %22268 = mul nsw i32 24, %22267
  %22269 = add nsw i32 %22266, %22268
  %22270 = sext i32 %22269 to i64
  %22271 = getelementptr inbounds double, ptr %22265, i64 %22270
  %22272 = load double, ptr %22271, align 8, !tbaa !11
  %22273 = call double @llvm.fmuladd.f64(double 0x3FF670C5F1F4C92E, double %22272, double %22264)
  %22274 = load ptr, ptr %7, align 8, !tbaa !9
  %22275 = load i32, ptr %12, align 4, !tbaa !5
  %22276 = load i32, ptr %8, align 4, !tbaa !5
  %22277 = mul nsw i32 25, %22276
  %22278 = add nsw i32 %22275, %22277
  %22279 = sext i32 %22278 to i64
  %22280 = getelementptr inbounds double, ptr %22274, i64 %22279
  %22281 = load double, ptr %22280, align 8, !tbaa !11
  %22282 = call double @llvm.fmuladd.f64(double 0x3FC27B05E24EC5F4, double %22281, double %22273)
  %22283 = load ptr, ptr %7, align 8, !tbaa !9
  %22284 = load i32, ptr %12, align 4, !tbaa !5
  %22285 = load i32, ptr %8, align 4, !tbaa !5
  %22286 = mul nsw i32 26, %22285
  %22287 = add nsw i32 %22284, %22286
  %22288 = sext i32 %22287 to i64
  %22289 = getelementptr inbounds double, ptr %22283, i64 %22288
  %22290 = load double, ptr %22289, align 8, !tbaa !11
  %22291 = call double @llvm.fmuladd.f64(double 0x3FD35DAE88CBA63B, double %22290, double %22282)
  %22292 = load ptr, ptr %7, align 8, !tbaa !9
  %22293 = load i32, ptr %12, align 4, !tbaa !5
  %22294 = load i32, ptr %8, align 4, !tbaa !5
  %22295 = mul nsw i32 27, %22294
  %22296 = add nsw i32 %22293, %22295
  %22297 = sext i32 %22296 to i64
  %22298 = getelementptr inbounds double, ptr %22292, i64 %22297
  %22299 = load double, ptr %22298, align 8, !tbaa !11
  %22300 = call double @llvm.fmuladd.f64(double 0xBFD41C0D131D428F, double %22299, double %22291)
  %22301 = load ptr, ptr %7, align 8, !tbaa !9
  %22302 = load i32, ptr %12, align 4, !tbaa !5
  %22303 = load i32, ptr %8, align 4, !tbaa !5
  %22304 = mul nsw i32 28, %22303
  %22305 = add nsw i32 %22302, %22304
  %22306 = sext i32 %22305 to i64
  %22307 = getelementptr inbounds double, ptr %22301, i64 %22306
  %22308 = load double, ptr %22307, align 8, !tbaa !11
  %22309 = call double @llvm.fmuladd.f64(double 0x3F9854E0ADA34B9E, double %22308, double %22300)
  %22310 = load ptr, ptr %7, align 8, !tbaa !9
  %22311 = load i32, ptr %12, align 4, !tbaa !5
  %22312 = load i32, ptr %8, align 4, !tbaa !5
  %22313 = mul nsw i32 29, %22312
  %22314 = add nsw i32 %22311, %22313
  %22315 = sext i32 %22314 to i64
  %22316 = getelementptr inbounds double, ptr %22310, i64 %22315
  %22317 = load double, ptr %22316, align 8, !tbaa !11
  %22318 = call double @llvm.fmuladd.f64(double 0x3FC36A9134CD3C5F, double %22317, double %22309)
  %22319 = load ptr, ptr %7, align 8, !tbaa !9
  %22320 = load i32, ptr %12, align 4, !tbaa !5
  %22321 = load i32, ptr %8, align 4, !tbaa !5
  %22322 = mul nsw i32 30, %22321
  %22323 = add nsw i32 %22320, %22322
  %22324 = sext i32 %22323 to i64
  %22325 = getelementptr inbounds double, ptr %22319, i64 %22324
  %22326 = load double, ptr %22325, align 8, !tbaa !11
  %22327 = call double @llvm.fmuladd.f64(double 0xBCC2E00000000000, double %22326, double %22318)
  %22328 = load ptr, ptr %7, align 8, !tbaa !9
  %22329 = load i32, ptr %12, align 4, !tbaa !5
  %22330 = load i32, ptr %8, align 4, !tbaa !5
  %22331 = mul nsw i32 31, %22330
  %22332 = add nsw i32 %22329, %22331
  %22333 = sext i32 %22332 to i64
  %22334 = getelementptr inbounds double, ptr %22328, i64 %22333
  %22335 = load double, ptr %22334, align 8, !tbaa !11
  %22336 = call double @llvm.fmuladd.f64(double 0x3C98000000000000, double %22335, double %22327)
  %22337 = load ptr, ptr %7, align 8, !tbaa !9
  %22338 = load i32, ptr %12, align 4, !tbaa !5
  %22339 = load i32, ptr %8, align 4, !tbaa !5
  %22340 = mul nsw i32 32, %22339
  %22341 = add nsw i32 %22338, %22340
  %22342 = sext i32 %22341 to i64
  %22343 = getelementptr inbounds double, ptr %22337, i64 %22342
  %22344 = load double, ptr %22343, align 8, !tbaa !11
  %22345 = call double @llvm.fmuladd.f64(double 0x3C96200000000000, double %22344, double %22336)
  %22346 = load ptr, ptr %7, align 8, !tbaa !9
  %22347 = load i32, ptr %12, align 4, !tbaa !5
  %22348 = load i32, ptr %8, align 4, !tbaa !5
  %22349 = mul nsw i32 33, %22348
  %22350 = add nsw i32 %22347, %22349
  %22351 = sext i32 %22350 to i64
  %22352 = getelementptr inbounds double, ptr %22346, i64 %22351
  %22353 = load double, ptr %22352, align 8, !tbaa !11
  %22354 = call double @llvm.fmuladd.f64(double 0xBCC0A40000000000, double %22353, double %22345)
  %22355 = load ptr, ptr %7, align 8, !tbaa !9
  %22356 = load i32, ptr %12, align 4, !tbaa !5
  %22357 = load i32, ptr %8, align 4, !tbaa !5
  %22358 = mul nsw i32 34, %22357
  %22359 = add nsw i32 %22356, %22358
  %22360 = sext i32 %22359 to i64
  %22361 = getelementptr inbounds double, ptr %22355, i64 %22360
  %22362 = load double, ptr %22361, align 8, !tbaa !11
  %22363 = call double @llvm.fmuladd.f64(double 0xBC93000000000000, double %22362, double %22354)
  %22364 = load ptr, ptr %7, align 8, !tbaa !9
  %22365 = load i32, ptr %12, align 4, !tbaa !5
  %22366 = load i32, ptr %8, align 4, !tbaa !5
  %22367 = mul nsw i32 35, %22366
  %22368 = add nsw i32 %22365, %22367
  %22369 = sext i32 %22368 to i64
  %22370 = getelementptr inbounds double, ptr %22364, i64 %22369
  %22371 = load double, ptr %22370, align 8, !tbaa !11
  %22372 = call double @llvm.fmuladd.f64(double 0x3C81000000000000, double %22371, double %22363)
  %22373 = load ptr, ptr %7, align 8, !tbaa !9
  %22374 = load i32, ptr %12, align 4, !tbaa !5
  %22375 = load i32, ptr %8, align 4, !tbaa !5
  %22376 = mul nsw i32 36, %22375
  %22377 = add nsw i32 %22374, %22376
  %22378 = sext i32 %22377 to i64
  %22379 = getelementptr inbounds double, ptr %22373, i64 %22378
  %22380 = load double, ptr %22379, align 8, !tbaa !11
  %22381 = call double @llvm.fmuladd.f64(double 0xBCBA500000000000, double %22380, double %22372)
  %22382 = load ptr, ptr %7, align 8, !tbaa !9
  %22383 = load i32, ptr %12, align 4, !tbaa !5
  %22384 = load i32, ptr %8, align 4, !tbaa !5
  %22385 = mul nsw i32 37, %22384
  %22386 = add nsw i32 %22383, %22385
  %22387 = sext i32 %22386 to i64
  %22388 = getelementptr inbounds double, ptr %22382, i64 %22387
  %22389 = load double, ptr %22388, align 8, !tbaa !11
  %22390 = call double @llvm.fmuladd.f64(double 0x3CC2B80000000000, double %22389, double %22381)
  %22391 = load ptr, ptr %7, align 8, !tbaa !9
  %22392 = load i32, ptr %12, align 4, !tbaa !5
  %22393 = load i32, ptr %8, align 4, !tbaa !5
  %22394 = mul nsw i32 38, %22393
  %22395 = add nsw i32 %22392, %22394
  %22396 = sext i32 %22395 to i64
  %22397 = getelementptr inbounds double, ptr %22391, i64 %22396
  %22398 = load double, ptr %22397, align 8, !tbaa !11
  %22399 = call double @llvm.fmuladd.f64(double 0x3C9A000000000000, double %22398, double %22390)
  %22400 = load ptr, ptr %7, align 8, !tbaa !9
  %22401 = load i32, ptr %12, align 4, !tbaa !5
  %22402 = load i32, ptr %8, align 4, !tbaa !5
  %22403 = mul nsw i32 39, %22402
  %22404 = add nsw i32 %22401, %22403
  %22405 = sext i32 %22404 to i64
  %22406 = getelementptr inbounds double, ptr %22400, i64 %22405
  %22407 = load double, ptr %22406, align 8, !tbaa !11
  %22408 = call double @llvm.fmuladd.f64(double 0xBCA93FFFFFFFFFFF, double %22407, double %22399)
  store double %22408, ptr %11, align 8, !tbaa !11
  %22409 = load double, ptr %11, align 8, !tbaa !11
  %22410 = load ptr, ptr %9, align 8, !tbaa !9
  %22411 = load i32, ptr %12, align 4, !tbaa !5
  %22412 = load i32, ptr %10, align 4, !tbaa !5
  %22413 = mul nsw i32 61, %22412
  %22414 = add nsw i32 %22411, %22413
  %22415 = sext i32 %22414 to i64
  %22416 = getelementptr inbounds double, ptr %22410, i64 %22415
  %22417 = load double, ptr %22416, align 8, !tbaa !11
  %22418 = fadd double %22417, %22409
  store double %22418, ptr %22416, align 8, !tbaa !11
  %22419 = load ptr, ptr %7, align 8, !tbaa !9
  %22420 = load i32, ptr %12, align 4, !tbaa !5
  %22421 = load i32, ptr %8, align 4, !tbaa !5
  %22422 = mul nsw i32 0, %22421
  %22423 = add nsw i32 %22420, %22422
  %22424 = sext i32 %22423 to i64
  %22425 = getelementptr inbounds double, ptr %22419, i64 %22424
  %22426 = load double, ptr %22425, align 8, !tbaa !11
  %22427 = load ptr, ptr %7, align 8, !tbaa !9
  %22428 = load i32, ptr %12, align 4, !tbaa !5
  %22429 = load i32, ptr %8, align 4, !tbaa !5
  %22430 = mul nsw i32 1, %22429
  %22431 = add nsw i32 %22428, %22430
  %22432 = sext i32 %22431 to i64
  %22433 = getelementptr inbounds double, ptr %22427, i64 %22432
  %22434 = load double, ptr %22433, align 8, !tbaa !11
  %22435 = fmul double 0x3C7C000000000000, %22434
  %22436 = call double @llvm.fmuladd.f64(double 0xBCB6C00000000000, double %22426, double %22435)
  %22437 = load ptr, ptr %7, align 8, !tbaa !9
  %22438 = load i32, ptr %12, align 4, !tbaa !5
  %22439 = load i32, ptr %8, align 4, !tbaa !5
  %22440 = mul nsw i32 2, %22439
  %22441 = add nsw i32 %22438, %22440
  %22442 = sext i32 %22441 to i64
  %22443 = getelementptr inbounds double, ptr %22437, i64 %22442
  %22444 = load double, ptr %22443, align 8, !tbaa !11
  %22445 = call double @llvm.fmuladd.f64(double 0x3CBB500000000001, double %22444, double %22436)
  %22446 = load ptr, ptr %7, align 8, !tbaa !9
  %22447 = load i32, ptr %12, align 4, !tbaa !5
  %22448 = load i32, ptr %8, align 4, !tbaa !5
  %22449 = mul nsw i32 3, %22448
  %22450 = add nsw i32 %22447, %22449
  %22451 = sext i32 %22450 to i64
  %22452 = getelementptr inbounds double, ptr %22446, i64 %22451
  %22453 = load double, ptr %22452, align 8, !tbaa !11
  %22454 = call double @llvm.fmuladd.f64(double 0xBCCB200000000000, double %22453, double %22445)
  %22455 = load ptr, ptr %7, align 8, !tbaa !9
  %22456 = load i32, ptr %12, align 4, !tbaa !5
  %22457 = load i32, ptr %8, align 4, !tbaa !5
  %22458 = mul nsw i32 4, %22457
  %22459 = add nsw i32 %22456, %22458
  %22460 = sext i32 %22459 to i64
  %22461 = getelementptr inbounds double, ptr %22455, i64 %22460
  %22462 = load double, ptr %22461, align 8, !tbaa !11
  %22463 = call double @llvm.fmuladd.f64(double 0x3CA8000000000001, double %22462, double %22454)
  %22464 = load ptr, ptr %7, align 8, !tbaa !9
  %22465 = load i32, ptr %12, align 4, !tbaa !5
  %22466 = load i32, ptr %8, align 4, !tbaa !5
  %22467 = mul nsw i32 5, %22466
  %22468 = add nsw i32 %22465, %22467
  %22469 = sext i32 %22468 to i64
  %22470 = getelementptr inbounds double, ptr %22464, i64 %22469
  %22471 = load double, ptr %22470, align 8, !tbaa !11
  %22472 = call double @llvm.fmuladd.f64(double 0xBCB3400000000000, double %22471, double %22463)
  %22473 = load ptr, ptr %7, align 8, !tbaa !9
  %22474 = load i32, ptr %12, align 4, !tbaa !5
  %22475 = load i32, ptr %8, align 4, !tbaa !5
  %22476 = mul nsw i32 6, %22475
  %22477 = add nsw i32 %22474, %22476
  %22478 = sext i32 %22477 to i64
  %22479 = getelementptr inbounds double, ptr %22473, i64 %22478
  %22480 = load double, ptr %22479, align 8, !tbaa !11
  %22481 = call double @llvm.fmuladd.f64(double 0x3CB1700000000000, double %22480, double %22472)
  %22482 = load ptr, ptr %7, align 8, !tbaa !9
  %22483 = load i32, ptr %12, align 4, !tbaa !5
  %22484 = load i32, ptr %8, align 4, !tbaa !5
  %22485 = mul nsw i32 7, %22484
  %22486 = add nsw i32 %22483, %22485
  %22487 = sext i32 %22486 to i64
  %22488 = getelementptr inbounds double, ptr %22482, i64 %22487
  %22489 = load double, ptr %22488, align 8, !tbaa !11
  %22490 = call double @llvm.fmuladd.f64(double 0xBCA2DFFFFFFFFFFF, double %22489, double %22481)
  %22491 = load ptr, ptr %7, align 8, !tbaa !9
  %22492 = load i32, ptr %12, align 4, !tbaa !5
  %22493 = load i32, ptr %8, align 4, !tbaa !5
  %22494 = mul nsw i32 8, %22493
  %22495 = add nsw i32 %22492, %22494
  %22496 = sext i32 %22495 to i64
  %22497 = getelementptr inbounds double, ptr %22491, i64 %22496
  %22498 = load double, ptr %22497, align 8, !tbaa !11
  %22499 = call double @llvm.fmuladd.f64(double 0xBC86000000000001, double %22498, double %22490)
  %22500 = load ptr, ptr %7, align 8, !tbaa !9
  %22501 = load i32, ptr %12, align 4, !tbaa !5
  %22502 = load i32, ptr %8, align 4, !tbaa !5
  %22503 = mul nsw i32 9, %22502
  %22504 = add nsw i32 %22501, %22503
  %22505 = sext i32 %22504 to i64
  %22506 = getelementptr inbounds double, ptr %22500, i64 %22505
  %22507 = load double, ptr %22506, align 8, !tbaa !11
  %22508 = call double @llvm.fmuladd.f64(double 0xBCBBC00000000001, double %22507, double %22499)
  %22509 = load ptr, ptr %7, align 8, !tbaa !9
  %22510 = load i32, ptr %12, align 4, !tbaa !5
  %22511 = load i32, ptr %8, align 4, !tbaa !5
  %22512 = mul nsw i32 10, %22511
  %22513 = add nsw i32 %22510, %22512
  %22514 = sext i32 %22513 to i64
  %22515 = getelementptr inbounds double, ptr %22509, i64 %22514
  %22516 = load double, ptr %22515, align 8, !tbaa !11
  %22517 = call double @llvm.fmuladd.f64(double 0x3CA5FFFFFFFFFFFF, double %22516, double %22508)
  %22518 = load ptr, ptr %7, align 8, !tbaa !9
  %22519 = load i32, ptr %12, align 4, !tbaa !5
  %22520 = load i32, ptr %8, align 4, !tbaa !5
  %22521 = mul nsw i32 11, %22520
  %22522 = add nsw i32 %22519, %22521
  %22523 = sext i32 %22522 to i64
  %22524 = getelementptr inbounds double, ptr %22518, i64 %22523
  %22525 = load double, ptr %22524, align 8, !tbaa !11
  %22526 = call double @llvm.fmuladd.f64(double 0xBCA2000000000000, double %22525, double %22517)
  %22527 = load ptr, ptr %7, align 8, !tbaa !9
  %22528 = load i32, ptr %12, align 4, !tbaa !5
  %22529 = load i32, ptr %8, align 4, !tbaa !5
  %22530 = mul nsw i32 12, %22529
  %22531 = add nsw i32 %22528, %22530
  %22532 = sext i32 %22531 to i64
  %22533 = getelementptr inbounds double, ptr %22527, i64 %22532
  %22534 = load double, ptr %22533, align 8, !tbaa !11
  %22535 = call double @llvm.fmuladd.f64(double 0x3C95800000000000, double %22534, double %22526)
  %22536 = load ptr, ptr %7, align 8, !tbaa !9
  %22537 = load i32, ptr %12, align 4, !tbaa !5
  %22538 = load i32, ptr %8, align 4, !tbaa !5
  %22539 = mul nsw i32 13, %22538
  %22540 = add nsw i32 %22537, %22539
  %22541 = sext i32 %22540 to i64
  %22542 = getelementptr inbounds double, ptr %22536, i64 %22541
  %22543 = load double, ptr %22542, align 8, !tbaa !11
  %22544 = call double @llvm.fmuladd.f64(double 0xBCA9BFFFFFFFFFFF, double %22543, double %22535)
  %22545 = load ptr, ptr %7, align 8, !tbaa !9
  %22546 = load i32, ptr %12, align 4, !tbaa !5
  %22547 = load i32, ptr %8, align 4, !tbaa !5
  %22548 = mul nsw i32 14, %22547
  %22549 = add nsw i32 %22546, %22548
  %22550 = sext i32 %22549 to i64
  %22551 = getelementptr inbounds double, ptr %22545, i64 %22550
  %22552 = load double, ptr %22551, align 8, !tbaa !11
  %22553 = call double @llvm.fmuladd.f64(double 0x3CA0000000000002, double %22552, double %22544)
  %22554 = load ptr, ptr %7, align 8, !tbaa !9
  %22555 = load i32, ptr %12, align 4, !tbaa !5
  %22556 = load i32, ptr %8, align 4, !tbaa !5
  %22557 = mul nsw i32 15, %22556
  %22558 = add nsw i32 %22555, %22557
  %22559 = sext i32 %22558 to i64
  %22560 = getelementptr inbounds double, ptr %22554, i64 %22559
  %22561 = load double, ptr %22560, align 8, !tbaa !11
  %22562 = call double @llvm.fmuladd.f64(double 0xBCA9FFFFFFFFFFFE, double %22561, double %22553)
  %22563 = load ptr, ptr %7, align 8, !tbaa !9
  %22564 = load i32, ptr %12, align 4, !tbaa !5
  %22565 = load i32, ptr %8, align 4, !tbaa !5
  %22566 = mul nsw i32 16, %22565
  %22567 = add nsw i32 %22564, %22566
  %22568 = sext i32 %22567 to i64
  %22569 = getelementptr inbounds double, ptr %22563, i64 %22568
  %22570 = load double, ptr %22569, align 8, !tbaa !11
  %22571 = call double @llvm.fmuladd.f64(double 0x3CB07FFFFFFFFFFF, double %22570, double %22562)
  %22572 = load ptr, ptr %7, align 8, !tbaa !9
  %22573 = load i32, ptr %12, align 4, !tbaa !5
  %22574 = load i32, ptr %8, align 4, !tbaa !5
  %22575 = mul nsw i32 17, %22574
  %22576 = add nsw i32 %22573, %22575
  %22577 = sext i32 %22576 to i64
  %22578 = getelementptr inbounds double, ptr %22572, i64 %22577
  %22579 = load double, ptr %22578, align 8, !tbaa !11
  %22580 = call double @llvm.fmuladd.f64(double 0xBCA1800000000000, double %22579, double %22571)
  %22581 = load ptr, ptr %7, align 8, !tbaa !9
  %22582 = load i32, ptr %12, align 4, !tbaa !5
  %22583 = load i32, ptr %8, align 4, !tbaa !5
  %22584 = mul nsw i32 19, %22583
  %22585 = add nsw i32 %22582, %22584
  %22586 = sext i32 %22585 to i64
  %22587 = getelementptr inbounds double, ptr %22581, i64 %22586
  %22588 = load double, ptr %22587, align 8, !tbaa !11
  %22589 = call double @llvm.fmuladd.f64(double 0x3CA5FFFFFFFFFFFF, double %22588, double %22580)
  %22590 = load ptr, ptr %7, align 8, !tbaa !9
  %22591 = load i32, ptr %12, align 4, !tbaa !5
  %22592 = load i32, ptr %8, align 4, !tbaa !5
  %22593 = mul nsw i32 20, %22592
  %22594 = add nsw i32 %22591, %22593
  %22595 = sext i32 %22594 to i64
  %22596 = getelementptr inbounds double, ptr %22590, i64 %22595
  %22597 = load double, ptr %22596, align 8, !tbaa !11
  %22598 = call double @llvm.fmuladd.f64(double 0xBFE333710B32A298, double %22597, double %22589)
  %22599 = load ptr, ptr %7, align 8, !tbaa !9
  %22600 = load i32, ptr %12, align 4, !tbaa !5
  %22601 = load i32, ptr %8, align 4, !tbaa !5
  %22602 = mul nsw i32 21, %22601
  %22603 = add nsw i32 %22600, %22602
  %22604 = sext i32 %22603 to i64
  %22605 = getelementptr inbounds double, ptr %22599, i64 %22604
  %22606 = load double, ptr %22605, align 8, !tbaa !11
  %22607 = call double @llvm.fmuladd.f64(double 0x3FA87D7643548514, double %22606, double %22598)
  %22608 = load ptr, ptr %7, align 8, !tbaa !9
  %22609 = load i32, ptr %12, align 4, !tbaa !5
  %22610 = load i32, ptr %8, align 4, !tbaa !5
  %22611 = mul nsw i32 22, %22610
  %22612 = add nsw i32 %22609, %22611
  %22613 = sext i32 %22612 to i64
  %22614 = getelementptr inbounds double, ptr %22608, i64 %22613
  %22615 = load double, ptr %22614, align 8, !tbaa !11
  %22616 = call double @llvm.fmuladd.f64(double 0xBFA352D4DB969C25, double %22615, double %22607)
  %22617 = load ptr, ptr %7, align 8, !tbaa !9
  %22618 = load i32, ptr %12, align 4, !tbaa !5
  %22619 = load i32, ptr %8, align 4, !tbaa !5
  %22620 = mul nsw i32 23, %22619
  %22621 = add nsw i32 %22618, %22620
  %22622 = sext i32 %22621 to i64
  %22623 = getelementptr inbounds double, ptr %22617, i64 %22622
  %22624 = load double, ptr %22623, align 8, !tbaa !11
  %22625 = call double @llvm.fmuladd.f64(double 0xBFBEED13A9F0D8DE, double %22624, double %22616)
  %22626 = load ptr, ptr %7, align 8, !tbaa !9
  %22627 = load i32, ptr %12, align 4, !tbaa !5
  %22628 = load i32, ptr %8, align 4, !tbaa !5
  %22629 = mul nsw i32 24, %22628
  %22630 = add nsw i32 %22627, %22629
  %22631 = sext i32 %22630 to i64
  %22632 = getelementptr inbounds double, ptr %22626, i64 %22631
  %22633 = load double, ptr %22632, align 8, !tbaa !11
  %22634 = call double @llvm.fmuladd.f64(double 0x3FC36A9134CD3C5F, double %22633, double %22625)
  %22635 = load ptr, ptr %7, align 8, !tbaa !9
  %22636 = load i32, ptr %12, align 4, !tbaa !5
  %22637 = load i32, ptr %8, align 4, !tbaa !5
  %22638 = mul nsw i32 25, %22637
  %22639 = add nsw i32 %22636, %22638
  %22640 = sext i32 %22639 to i64
  %22641 = getelementptr inbounds double, ptr %22635, i64 %22640
  %22642 = load double, ptr %22641, align 8, !tbaa !11
  %22643 = call double @llvm.fmuladd.f64(double 0x3FD35DAE88CBA644, double %22642, double %22634)
  %22644 = load ptr, ptr %7, align 8, !tbaa !9
  %22645 = load i32, ptr %12, align 4, !tbaa !5
  %22646 = load i32, ptr %8, align 4, !tbaa !5
  %22647 = mul nsw i32 26, %22646
  %22648 = add nsw i32 %22645, %22647
  %22649 = sext i32 %22648 to i64
  %22650 = getelementptr inbounds double, ptr %22644, i64 %22649
  %22651 = load double, ptr %22650, align 8, !tbaa !11
  %22652 = call double @llvm.fmuladd.f64(double 0x3FC27B05E24EC5E2, double %22651, double %22643)
  %22653 = load ptr, ptr %7, align 8, !tbaa !9
  %22654 = load i32, ptr %12, align 4, !tbaa !5
  %22655 = load i32, ptr %8, align 4, !tbaa !5
  %22656 = mul nsw i32 27, %22655
  %22657 = add nsw i32 %22654, %22656
  %22658 = sext i32 %22657 to i64
  %22659 = getelementptr inbounds double, ptr %22653, i64 %22658
  %22660 = load double, ptr %22659, align 8, !tbaa !11
  %22661 = call double @llvm.fmuladd.f64(double 0x3F9854E0ADA34BA9, double %22660, double %22652)
  %22662 = load ptr, ptr %7, align 8, !tbaa !9
  %22663 = load i32, ptr %12, align 4, !tbaa !5
  %22664 = load i32, ptr %8, align 4, !tbaa !5
  %22665 = mul nsw i32 28, %22664
  %22666 = add nsw i32 %22663, %22665
  %22667 = sext i32 %22666 to i64
  %22668 = getelementptr inbounds double, ptr %22662, i64 %22667
  %22669 = load double, ptr %22668, align 8, !tbaa !11
  %22670 = call double @llvm.fmuladd.f64(double 0xBFD41C0D131D428F, double %22669, double %22661)
  %22671 = load ptr, ptr %7, align 8, !tbaa !9
  %22672 = load i32, ptr %12, align 4, !tbaa !5
  %22673 = load i32, ptr %8, align 4, !tbaa !5
  %22674 = mul nsw i32 29, %22673
  %22675 = add nsw i32 %22672, %22674
  %22676 = sext i32 %22675 to i64
  %22677 = getelementptr inbounds double, ptr %22671, i64 %22676
  %22678 = load double, ptr %22677, align 8, !tbaa !11
  %22679 = call double @llvm.fmuladd.f64(double 0x3FF670C5F1F4C932, double %22678, double %22670)
  %22680 = load ptr, ptr %7, align 8, !tbaa !9
  %22681 = load i32, ptr %12, align 4, !tbaa !5
  %22682 = load i32, ptr %8, align 4, !tbaa !5
  %22683 = mul nsw i32 30, %22682
  %22684 = add nsw i32 %22681, %22683
  %22685 = sext i32 %22684 to i64
  %22686 = getelementptr inbounds double, ptr %22680, i64 %22685
  %22687 = load double, ptr %22686, align 8, !tbaa !11
  %22688 = call double @llvm.fmuladd.f64(double 0xBCC1400000000000, double %22687, double %22679)
  %22689 = load ptr, ptr %7, align 8, !tbaa !9
  %22690 = load i32, ptr %12, align 4, !tbaa !5
  %22691 = load i32, ptr %8, align 4, !tbaa !5
  %22692 = mul nsw i32 31, %22691
  %22693 = add nsw i32 %22690, %22692
  %22694 = sext i32 %22693 to i64
  %22695 = getelementptr inbounds double, ptr %22689, i64 %22694
  %22696 = load double, ptr %22695, align 8, !tbaa !11
  %22697 = call double @llvm.fmuladd.f64(double 0x3CA9000000000000, double %22696, double %22688)
  %22698 = load ptr, ptr %7, align 8, !tbaa !9
  %22699 = load i32, ptr %12, align 4, !tbaa !5
  %22700 = load i32, ptr %8, align 4, !tbaa !5
  %22701 = mul nsw i32 32, %22700
  %22702 = add nsw i32 %22699, %22701
  %22703 = sext i32 %22702 to i64
  %22704 = getelementptr inbounds double, ptr %22698, i64 %22703
  %22705 = load double, ptr %22704, align 8, !tbaa !11
  %22706 = call double @llvm.fmuladd.f64(double 0x3CB1B00000000000, double %22705, double %22697)
  %22707 = load ptr, ptr %7, align 8, !tbaa !9
  %22708 = load i32, ptr %12, align 4, !tbaa !5
  %22709 = load i32, ptr %8, align 4, !tbaa !5
  %22710 = mul nsw i32 33, %22709
  %22711 = add nsw i32 %22708, %22710
  %22712 = sext i32 %22711 to i64
  %22713 = getelementptr inbounds double, ptr %22707, i64 %22712
  %22714 = load double, ptr %22713, align 8, !tbaa !11
  %22715 = call double @llvm.fmuladd.f64(double 0xBCB2B00000000001, double %22714, double %22706)
  %22716 = load ptr, ptr %7, align 8, !tbaa !9
  %22717 = load i32, ptr %12, align 4, !tbaa !5
  %22718 = load i32, ptr %8, align 4, !tbaa !5
  %22719 = mul nsw i32 34, %22718
  %22720 = add nsw i32 %22717, %22719
  %22721 = sext i32 %22720 to i64
  %22722 = getelementptr inbounds double, ptr %22716, i64 %22721
  %22723 = load double, ptr %22722, align 8, !tbaa !11
  %22724 = call double @llvm.fmuladd.f64(double 0xBCA1000000000001, double %22723, double %22715)
  %22725 = load ptr, ptr %7, align 8, !tbaa !9
  %22726 = load i32, ptr %12, align 4, !tbaa !5
  %22727 = load i32, ptr %8, align 4, !tbaa !5
  %22728 = mul nsw i32 35, %22727
  %22729 = add nsw i32 %22726, %22728
  %22730 = sext i32 %22729 to i64
  %22731 = getelementptr inbounds double, ptr %22725, i64 %22730
  %22732 = load double, ptr %22731, align 8, !tbaa !11
  %22733 = call double @llvm.fmuladd.f64(double 0x3CB1400000000000, double %22732, double %22724)
  %22734 = load ptr, ptr %7, align 8, !tbaa !9
  %22735 = load i32, ptr %12, align 4, !tbaa !5
  %22736 = load i32, ptr %8, align 4, !tbaa !5
  %22737 = mul nsw i32 36, %22736
  %22738 = add nsw i32 %22735, %22737
  %22739 = sext i32 %22738 to i64
  %22740 = getelementptr inbounds double, ptr %22734, i64 %22739
  %22741 = load double, ptr %22740, align 8, !tbaa !11
  %22742 = call double @llvm.fmuladd.f64(double 0xBCBAD00000000000, double %22741, double %22733)
  %22743 = load ptr, ptr %7, align 8, !tbaa !9
  %22744 = load i32, ptr %12, align 4, !tbaa !5
  %22745 = load i32, ptr %8, align 4, !tbaa !5
  %22746 = mul nsw i32 37, %22745
  %22747 = add nsw i32 %22744, %22746
  %22748 = sext i32 %22747 to i64
  %22749 = getelementptr inbounds double, ptr %22743, i64 %22748
  %22750 = load double, ptr %22749, align 8, !tbaa !11
  %22751 = call double @llvm.fmuladd.f64(double 0x3CB6F00000000000, double %22750, double %22742)
  %22752 = load ptr, ptr %7, align 8, !tbaa !9
  %22753 = load i32, ptr %12, align 4, !tbaa !5
  %22754 = load i32, ptr %8, align 4, !tbaa !5
  %22755 = mul nsw i32 38, %22754
  %22756 = add nsw i32 %22753, %22755
  %22757 = sext i32 %22756 to i64
  %22758 = getelementptr inbounds double, ptr %22752, i64 %22757
  %22759 = load double, ptr %22758, align 8, !tbaa !11
  %22760 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %22759, double %22751)
  %22761 = load ptr, ptr %7, align 8, !tbaa !9
  %22762 = load i32, ptr %12, align 4, !tbaa !5
  %22763 = load i32, ptr %8, align 4, !tbaa !5
  %22764 = mul nsw i32 39, %22763
  %22765 = add nsw i32 %22762, %22764
  %22766 = sext i32 %22765 to i64
  %22767 = getelementptr inbounds double, ptr %22761, i64 %22766
  %22768 = load double, ptr %22767, align 8, !tbaa !11
  %22769 = call double @llvm.fmuladd.f64(double 0xBCB1800000000000, double %22768, double %22760)
  store double %22769, ptr %11, align 8, !tbaa !11
  %22770 = load double, ptr %11, align 8, !tbaa !11
  %22771 = load ptr, ptr %9, align 8, !tbaa !9
  %22772 = load i32, ptr %12, align 4, !tbaa !5
  %22773 = load i32, ptr %10, align 4, !tbaa !5
  %22774 = mul nsw i32 62, %22773
  %22775 = add nsw i32 %22772, %22774
  %22776 = sext i32 %22775 to i64
  %22777 = getelementptr inbounds double, ptr %22771, i64 %22776
  %22778 = load double, ptr %22777, align 8, !tbaa !11
  %22779 = fadd double %22778, %22770
  store double %22779, ptr %22777, align 8, !tbaa !11
  %22780 = load ptr, ptr %7, align 8, !tbaa !9
  %22781 = load i32, ptr %12, align 4, !tbaa !5
  %22782 = load i32, ptr %8, align 4, !tbaa !5
  %22783 = mul nsw i32 0, %22782
  %22784 = add nsw i32 %22781, %22783
  %22785 = sext i32 %22784 to i64
  %22786 = getelementptr inbounds double, ptr %22780, i64 %22785
  %22787 = load double, ptr %22786, align 8, !tbaa !11
  %22788 = load ptr, ptr %7, align 8, !tbaa !9
  %22789 = load i32, ptr %12, align 4, !tbaa !5
  %22790 = load i32, ptr %8, align 4, !tbaa !5
  %22791 = mul nsw i32 1, %22790
  %22792 = add nsw i32 %22789, %22791
  %22793 = sext i32 %22792 to i64
  %22794 = getelementptr inbounds double, ptr %22788, i64 %22793
  %22795 = load double, ptr %22794, align 8, !tbaa !11
  %22796 = fmul double 0x3CA9FFFFFFFFFFFE, %22795
  %22797 = call double @llvm.fmuladd.f64(double 0xBCA4000000000001, double %22787, double %22796)
  %22798 = load ptr, ptr %7, align 8, !tbaa !9
  %22799 = load i32, ptr %12, align 4, !tbaa !5
  %22800 = load i32, ptr %8, align 4, !tbaa !5
  %22801 = mul nsw i32 2, %22800
  %22802 = add nsw i32 %22799, %22801
  %22803 = sext i32 %22802 to i64
  %22804 = getelementptr inbounds double, ptr %22798, i64 %22803
  %22805 = load double, ptr %22804, align 8, !tbaa !11
  %22806 = call double @llvm.fmuladd.f64(double 0x3CB3000000000000, double %22805, double %22797)
  %22807 = load ptr, ptr %7, align 8, !tbaa !9
  %22808 = load i32, ptr %12, align 4, !tbaa !5
  %22809 = load i32, ptr %8, align 4, !tbaa !5
  %22810 = mul nsw i32 3, %22809
  %22811 = add nsw i32 %22808, %22810
  %22812 = sext i32 %22811 to i64
  %22813 = getelementptr inbounds double, ptr %22807, i64 %22812
  %22814 = load double, ptr %22813, align 8, !tbaa !11
  %22815 = call double @llvm.fmuladd.f64(double 0xBCBAC00000000000, double %22814, double %22806)
  %22816 = load ptr, ptr %7, align 8, !tbaa !9
  %22817 = load i32, ptr %12, align 4, !tbaa !5
  %22818 = load i32, ptr %8, align 4, !tbaa !5
  %22819 = mul nsw i32 4, %22818
  %22820 = add nsw i32 %22817, %22819
  %22821 = sext i32 %22820 to i64
  %22822 = getelementptr inbounds double, ptr %22816, i64 %22821
  %22823 = load double, ptr %22822, align 8, !tbaa !11
  %22824 = call double @llvm.fmuladd.f64(double 0x3CA2FFFFFFFFFFFE, double %22823, double %22815)
  %22825 = load ptr, ptr %7, align 8, !tbaa !9
  %22826 = load i32, ptr %12, align 4, !tbaa !5
  %22827 = load i32, ptr %8, align 4, !tbaa !5
  %22828 = mul nsw i32 5, %22827
  %22829 = add nsw i32 %22826, %22828
  %22830 = sext i32 %22829 to i64
  %22831 = getelementptr inbounds double, ptr %22825, i64 %22830
  %22832 = load double, ptr %22831, align 8, !tbaa !11
  %22833 = call double @llvm.fmuladd.f64(double 0x3C9DFFFFFFFFFFFE, double %22832, double %22824)
  %22834 = load ptr, ptr %7, align 8, !tbaa !9
  %22835 = load i32, ptr %12, align 4, !tbaa !5
  %22836 = load i32, ptr %8, align 4, !tbaa !5
  %22837 = mul nsw i32 6, %22836
  %22838 = add nsw i32 %22835, %22837
  %22839 = sext i32 %22838 to i64
  %22840 = getelementptr inbounds double, ptr %22834, i64 %22839
  %22841 = load double, ptr %22840, align 8, !tbaa !11
  %22842 = call double @llvm.fmuladd.f64(double 0x3C93000000000000, double %22841, double %22833)
  %22843 = load ptr, ptr %7, align 8, !tbaa !9
  %22844 = load i32, ptr %12, align 4, !tbaa !5
  %22845 = load i32, ptr %8, align 4, !tbaa !5
  %22846 = mul nsw i32 7, %22845
  %22847 = add nsw i32 %22844, %22846
  %22848 = sext i32 %22847 to i64
  %22849 = getelementptr inbounds double, ptr %22843, i64 %22848
  %22850 = load double, ptr %22849, align 8, !tbaa !11
  %22851 = call double @llvm.fmuladd.f64(double 0xBC88000000000000, double %22850, double %22842)
  %22852 = load ptr, ptr %7, align 8, !tbaa !9
  %22853 = load i32, ptr %12, align 4, !tbaa !5
  %22854 = load i32, ptr %8, align 4, !tbaa !5
  %22855 = mul nsw i32 8, %22854
  %22856 = add nsw i32 %22853, %22855
  %22857 = sext i32 %22856 to i64
  %22858 = getelementptr inbounds double, ptr %22852, i64 %22857
  %22859 = load double, ptr %22858, align 8, !tbaa !11
  %22860 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %22859, double %22851)
  %22861 = load ptr, ptr %7, align 8, !tbaa !9
  %22862 = load i32, ptr %12, align 4, !tbaa !5
  %22863 = load i32, ptr %8, align 4, !tbaa !5
  %22864 = mul nsw i32 9, %22863
  %22865 = add nsw i32 %22862, %22864
  %22866 = sext i32 %22865 to i64
  %22867 = getelementptr inbounds double, ptr %22861, i64 %22866
  %22868 = load double, ptr %22867, align 8, !tbaa !11
  %22869 = call double @llvm.fmuladd.f64(double 0xBCB5FFFFFFFFFFFF, double %22868, double %22860)
  %22870 = load ptr, ptr %7, align 8, !tbaa !9
  %22871 = load i32, ptr %12, align 4, !tbaa !5
  %22872 = load i32, ptr %8, align 4, !tbaa !5
  %22873 = mul nsw i32 10, %22872
  %22874 = add nsw i32 %22871, %22873
  %22875 = sext i32 %22874 to i64
  %22876 = getelementptr inbounds double, ptr %22870, i64 %22875
  %22877 = load double, ptr %22876, align 8, !tbaa !11
  %22878 = call double @llvm.fmuladd.f64(double 0xBCC3000000000000, double %22877, double %22869)
  %22879 = load ptr, ptr %7, align 8, !tbaa !9
  %22880 = load i32, ptr %12, align 4, !tbaa !5
  %22881 = load i32, ptr %8, align 4, !tbaa !5
  %22882 = mul nsw i32 11, %22881
  %22883 = add nsw i32 %22880, %22882
  %22884 = sext i32 %22883 to i64
  %22885 = getelementptr inbounds double, ptr %22879, i64 %22884
  %22886 = load double, ptr %22885, align 8, !tbaa !11
  %22887 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %22886, double %22878)
  %22888 = load ptr, ptr %7, align 8, !tbaa !9
  %22889 = load i32, ptr %12, align 4, !tbaa !5
  %22890 = load i32, ptr %8, align 4, !tbaa !5
  %22891 = mul nsw i32 12, %22890
  %22892 = add nsw i32 %22889, %22891
  %22893 = sext i32 %22892 to i64
  %22894 = getelementptr inbounds double, ptr %22888, i64 %22893
  %22895 = load double, ptr %22894, align 8, !tbaa !11
  %22896 = call double @llvm.fmuladd.f64(double 0xBC88000000000000, double %22895, double %22887)
  %22897 = load ptr, ptr %7, align 8, !tbaa !9
  %22898 = load i32, ptr %12, align 4, !tbaa !5
  %22899 = load i32, ptr %8, align 4, !tbaa !5
  %22900 = mul nsw i32 13, %22899
  %22901 = add nsw i32 %22898, %22900
  %22902 = sext i32 %22901 to i64
  %22903 = getelementptr inbounds double, ptr %22897, i64 %22902
  %22904 = load double, ptr %22903, align 8, !tbaa !11
  %22905 = call double @llvm.fmuladd.f64(double 0xBCA0000000000002, double %22904, double %22896)
  %22906 = load ptr, ptr %7, align 8, !tbaa !9
  %22907 = load i32, ptr %12, align 4, !tbaa !5
  %22908 = load i32, ptr %8, align 4, !tbaa !5
  %22909 = mul nsw i32 14, %22908
  %22910 = add nsw i32 %22907, %22909
  %22911 = sext i32 %22910 to i64
  %22912 = getelementptr inbounds double, ptr %22906, i64 %22911
  %22913 = load double, ptr %22912, align 8, !tbaa !11
  %22914 = call double @llvm.fmuladd.f64(double 0x3CA0000000000002, double %22913, double %22905)
  %22915 = load ptr, ptr %7, align 8, !tbaa !9
  %22916 = load i32, ptr %12, align 4, !tbaa !5
  %22917 = load i32, ptr %8, align 4, !tbaa !5
  %22918 = mul nsw i32 15, %22917
  %22919 = add nsw i32 %22916, %22918
  %22920 = sext i32 %22919 to i64
  %22921 = getelementptr inbounds double, ptr %22915, i64 %22920
  %22922 = load double, ptr %22921, align 8, !tbaa !11
  %22923 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %22922, double %22914)
  %22924 = load ptr, ptr %7, align 8, !tbaa !9
  %22925 = load i32, ptr %12, align 4, !tbaa !5
  %22926 = load i32, ptr %8, align 4, !tbaa !5
  %22927 = mul nsw i32 16, %22926
  %22928 = add nsw i32 %22925, %22927
  %22929 = sext i32 %22928 to i64
  %22930 = getelementptr inbounds double, ptr %22924, i64 %22929
  %22931 = load double, ptr %22930, align 8, !tbaa !11
  %22932 = call double @llvm.fmuladd.f64(double 0x3CB5FFFFFFFFFFFF, double %22931, double %22923)
  %22933 = load ptr, ptr %7, align 8, !tbaa !9
  %22934 = load i32, ptr %12, align 4, !tbaa !5
  %22935 = load i32, ptr %8, align 4, !tbaa !5
  %22936 = mul nsw i32 17, %22935
  %22937 = add nsw i32 %22934, %22936
  %22938 = sext i32 %22937 to i64
  %22939 = getelementptr inbounds double, ptr %22933, i64 %22938
  %22940 = load double, ptr %22939, align 8, !tbaa !11
  %22941 = call double @llvm.fmuladd.f64(double 0xBCB1000000000001, double %22940, double %22932)
  %22942 = load ptr, ptr %7, align 8, !tbaa !9
  %22943 = load i32, ptr %12, align 4, !tbaa !5
  %22944 = load i32, ptr %8, align 4, !tbaa !5
  %22945 = mul nsw i32 19, %22944
  %22946 = add nsw i32 %22943, %22945
  %22947 = sext i32 %22946 to i64
  %22948 = getelementptr inbounds double, ptr %22942, i64 %22947
  %22949 = load double, ptr %22948, align 8, !tbaa !11
  %22950 = call double @llvm.fmuladd.f64(double 0x3CB3FFFFFFFFFFFF, double %22949, double %22941)
  %22951 = load ptr, ptr %7, align 8, !tbaa !9
  %22952 = load i32, ptr %12, align 4, !tbaa !5
  %22953 = load i32, ptr %8, align 4, !tbaa !5
  %22954 = mul nsw i32 20, %22953
  %22955 = add nsw i32 %22952, %22954
  %22956 = sext i32 %22955 to i64
  %22957 = getelementptr inbounds double, ptr %22951, i64 %22956
  %22958 = load double, ptr %22957, align 8, !tbaa !11
  %22959 = call double @llvm.fmuladd.f64(double 0xBF83152016E0EB50, double %22958, double %22950)
  %22960 = load ptr, ptr %7, align 8, !tbaa !9
  %22961 = load i32, ptr %12, align 4, !tbaa !5
  %22962 = load i32, ptr %8, align 4, !tbaa !5
  %22963 = mul nsw i32 21, %22962
  %22964 = add nsw i32 %22961, %22963
  %22965 = sext i32 %22964 to i64
  %22966 = getelementptr inbounds double, ptr %22960, i64 %22965
  %22967 = load double, ptr %22966, align 8, !tbaa !11
  %22968 = call double @llvm.fmuladd.f64(double 0x3FF4EC1BB3FDC612, double %22967, double %22959)
  %22969 = load ptr, ptr %7, align 8, !tbaa !9
  %22970 = load i32, ptr %12, align 4, !tbaa !5
  %22971 = load i32, ptr %8, align 4, !tbaa !5
  %22972 = mul nsw i32 22, %22971
  %22973 = add nsw i32 %22970, %22972
  %22974 = sext i32 %22973 to i64
  %22975 = getelementptr inbounds double, ptr %22969, i64 %22974
  %22976 = load double, ptr %22975, align 8, !tbaa !11
  %22977 = call double @llvm.fmuladd.f64(double 0x3F938CE4890DB2F9, double %22976, double %22968)
  %22978 = load ptr, ptr %7, align 8, !tbaa !9
  %22979 = load i32, ptr %12, align 4, !tbaa !5
  %22980 = load i32, ptr %8, align 4, !tbaa !5
  %22981 = mul nsw i32 23, %22980
  %22982 = add nsw i32 %22979, %22981
  %22983 = sext i32 %22982 to i64
  %22984 = getelementptr inbounds double, ptr %22978, i64 %22983
  %22985 = load double, ptr %22984, align 8, !tbaa !11
  %22986 = call double @llvm.fmuladd.f64(double 0xBFB5B58B4F03B1AE, double %22985, double %22977)
  %22987 = load ptr, ptr %7, align 8, !tbaa !9
  %22988 = load i32, ptr %12, align 4, !tbaa !5
  %22989 = load i32, ptr %8, align 4, !tbaa !5
  %22990 = mul nsw i32 24, %22989
  %22991 = add nsw i32 %22988, %22990
  %22992 = sext i32 %22991 to i64
  %22993 = getelementptr inbounds double, ptr %22987, i64 %22992
  %22994 = load double, ptr %22993, align 8, !tbaa !11
  %22995 = call double @llvm.fmuladd.f64(double 0xBFB49217631F5954, double %22994, double %22986)
  %22996 = load ptr, ptr %7, align 8, !tbaa !9
  %22997 = load i32, ptr %12, align 4, !tbaa !5
  %22998 = load i32, ptr %8, align 4, !tbaa !5
  %22999 = mul nsw i32 25, %22998
  %23000 = add nsw i32 %22997, %22999
  %23001 = sext i32 %23000 to i64
  %23002 = getelementptr inbounds double, ptr %22996, i64 %23001
  %23003 = load double, ptr %23002, align 8, !tbaa !11
  %23004 = call double @llvm.fmuladd.f64(double 0x3FD417DEBFC17B1A, double %23003, double %22995)
  %23005 = load ptr, ptr %7, align 8, !tbaa !9
  %23006 = load i32, ptr %12, align 4, !tbaa !5
  %23007 = load i32, ptr %8, align 4, !tbaa !5
  %23008 = mul nsw i32 26, %23007
  %23009 = add nsw i32 %23006, %23008
  %23010 = sext i32 %23009 to i64
  %23011 = getelementptr inbounds double, ptr %23005, i64 %23010
  %23012 = load double, ptr %23011, align 8, !tbaa !11
  %23013 = call double @llvm.fmuladd.f64(double 0xBF8BDAF699AECFF5, double %23012, double %23004)
  %23014 = load ptr, ptr %7, align 8, !tbaa !9
  %23015 = load i32, ptr %12, align 4, !tbaa !5
  %23016 = load i32, ptr %8, align 4, !tbaa !5
  %23017 = mul nsw i32 27, %23016
  %23018 = add nsw i32 %23015, %23017
  %23019 = sext i32 %23018 to i64
  %23020 = getelementptr inbounds double, ptr %23014, i64 %23019
  %23021 = load double, ptr %23020, align 8, !tbaa !11
  %23022 = call double @llvm.fmuladd.f64(double 0x3F85E50BB681A4B0, double %23021, double %23013)
  %23023 = load ptr, ptr %7, align 8, !tbaa !9
  %23024 = load i32, ptr %12, align 4, !tbaa !5
  %23025 = load i32, ptr %8, align 4, !tbaa !5
  %23026 = mul nsw i32 28, %23025
  %23027 = add nsw i32 %23024, %23026
  %23028 = sext i32 %23027 to i64
  %23029 = getelementptr inbounds double, ptr %23023, i64 %23028
  %23030 = load double, ptr %23029, align 8, !tbaa !11
  %23031 = call double @llvm.fmuladd.f64(double 0xBFE5679E70A60660, double %23030, double %23022)
  %23032 = load ptr, ptr %7, align 8, !tbaa !9
  %23033 = load i32, ptr %12, align 4, !tbaa !5
  %23034 = load i32, ptr %8, align 4, !tbaa !5
  %23035 = mul nsw i32 29, %23034
  %23036 = add nsw i32 %23033, %23035
  %23037 = sext i32 %23036 to i64
  %23038 = getelementptr inbounds double, ptr %23032, i64 %23037
  %23039 = load double, ptr %23038, align 8, !tbaa !11
  %23040 = call double @llvm.fmuladd.f64(double 0x3FCA50C41AB7A32C, double %23039, double %23031)
  %23041 = load ptr, ptr %7, align 8, !tbaa !9
  %23042 = load i32, ptr %12, align 4, !tbaa !5
  %23043 = load i32, ptr %8, align 4, !tbaa !5
  %23044 = mul nsw i32 30, %23043
  %23045 = add nsw i32 %23042, %23044
  %23046 = sext i32 %23045 to i64
  %23047 = getelementptr inbounds double, ptr %23041, i64 %23046
  %23048 = load double, ptr %23047, align 8, !tbaa !11
  %23049 = call double @llvm.fmuladd.f64(double 0xBCB3000000000000, double %23048, double %23040)
  %23050 = load ptr, ptr %7, align 8, !tbaa !9
  %23051 = load i32, ptr %12, align 4, !tbaa !5
  %23052 = load i32, ptr %8, align 4, !tbaa !5
  %23053 = mul nsw i32 31, %23052
  %23054 = add nsw i32 %23051, %23053
  %23055 = sext i32 %23054 to i64
  %23056 = getelementptr inbounds double, ptr %23050, i64 %23055
  %23057 = load double, ptr %23056, align 8, !tbaa !11
  %23058 = call double @llvm.fmuladd.f64(double 0x3C98000000000000, double %23057, double %23049)
  %23059 = load ptr, ptr %7, align 8, !tbaa !9
  %23060 = load i32, ptr %12, align 4, !tbaa !5
  %23061 = load i32, ptr %8, align 4, !tbaa !5
  %23062 = mul nsw i32 32, %23061
  %23063 = add nsw i32 %23060, %23062
  %23064 = sext i32 %23063 to i64
  %23065 = getelementptr inbounds double, ptr %23059, i64 %23064
  %23066 = load double, ptr %23065, align 8, !tbaa !11
  %23067 = call double @llvm.fmuladd.f64(double 0x3CAA800000000002, double %23066, double %23058)
  %23068 = load ptr, ptr %7, align 8, !tbaa !9
  %23069 = load i32, ptr %12, align 4, !tbaa !5
  %23070 = load i32, ptr %8, align 4, !tbaa !5
  %23071 = mul nsw i32 33, %23070
  %23072 = add nsw i32 %23069, %23071
  %23073 = sext i32 %23072 to i64
  %23074 = getelementptr inbounds double, ptr %23068, i64 %23073
  %23075 = load double, ptr %23074, align 8, !tbaa !11
  %23076 = call double @llvm.fmuladd.f64(double 0x3CA9000000000000, double %23075, double %23067)
  %23077 = load ptr, ptr %7, align 8, !tbaa !9
  %23078 = load i32, ptr %12, align 4, !tbaa !5
  %23079 = load i32, ptr %8, align 4, !tbaa !5
  %23080 = mul nsw i32 34, %23079
  %23081 = add nsw i32 %23078, %23080
  %23082 = sext i32 %23081 to i64
  %23083 = getelementptr inbounds double, ptr %23077, i64 %23082
  %23084 = load double, ptr %23083, align 8, !tbaa !11
  %23085 = call double @llvm.fmuladd.f64(double 0xBC92000000000000, double %23084, double %23076)
  %23086 = load ptr, ptr %7, align 8, !tbaa !9
  %23087 = load i32, ptr %12, align 4, !tbaa !5
  %23088 = load i32, ptr %8, align 4, !tbaa !5
  %23089 = mul nsw i32 35, %23088
  %23090 = add nsw i32 %23087, %23089
  %23091 = sext i32 %23090 to i64
  %23092 = getelementptr inbounds double, ptr %23086, i64 %23091
  %23093 = load double, ptr %23092, align 8, !tbaa !11
  %23094 = call double @llvm.fmuladd.f64(double 0xBC60000000000000, double %23093, double %23085)
  %23095 = load ptr, ptr %7, align 8, !tbaa !9
  %23096 = load i32, ptr %12, align 4, !tbaa !5
  %23097 = load i32, ptr %8, align 4, !tbaa !5
  %23098 = mul nsw i32 36, %23097
  %23099 = add nsw i32 %23096, %23098
  %23100 = sext i32 %23099 to i64
  %23101 = getelementptr inbounds double, ptr %23095, i64 %23100
  %23102 = load double, ptr %23101, align 8, !tbaa !11
  %23103 = call double @llvm.fmuladd.f64(double 0xBC95000000000000, double %23102, double %23094)
  %23104 = load ptr, ptr %7, align 8, !tbaa !9
  %23105 = load i32, ptr %12, align 4, !tbaa !5
  %23106 = load i32, ptr %8, align 4, !tbaa !5
  %23107 = mul nsw i32 37, %23106
  %23108 = add nsw i32 %23105, %23107
  %23109 = sext i32 %23108 to i64
  %23110 = getelementptr inbounds double, ptr %23104, i64 %23109
  %23111 = load double, ptr %23110, align 8, !tbaa !11
  %23112 = call double @llvm.fmuladd.f64(double 0xBC74000000000000, double %23111, double %23103)
  %23113 = load ptr, ptr %7, align 8, !tbaa !9
  %23114 = load i32, ptr %12, align 4, !tbaa !5
  %23115 = load i32, ptr %8, align 4, !tbaa !5
  %23116 = mul nsw i32 38, %23115
  %23117 = add nsw i32 %23114, %23116
  %23118 = sext i32 %23117 to i64
  %23119 = getelementptr inbounds double, ptr %23113, i64 %23118
  %23120 = load double, ptr %23119, align 8, !tbaa !11
  %23121 = call double @llvm.fmuladd.f64(double 0x3CB1000000000001, double %23120, double %23112)
  %23122 = load ptr, ptr %7, align 8, !tbaa !9
  %23123 = load i32, ptr %12, align 4, !tbaa !5
  %23124 = load i32, ptr %8, align 4, !tbaa !5
  %23125 = mul nsw i32 39, %23124
  %23126 = add nsw i32 %23123, %23125
  %23127 = sext i32 %23126 to i64
  %23128 = getelementptr inbounds double, ptr %23122, i64 %23127
  %23129 = load double, ptr %23128, align 8, !tbaa !11
  %23130 = call double @llvm.fmuladd.f64(double 0xBC88000000000000, double %23129, double %23121)
  store double %23130, ptr %11, align 8, !tbaa !11
  %23131 = load double, ptr %11, align 8, !tbaa !11
  %23132 = load ptr, ptr %9, align 8, !tbaa !9
  %23133 = load i32, ptr %12, align 4, !tbaa !5
  %23134 = load i32, ptr %10, align 4, !tbaa !5
  %23135 = mul nsw i32 63, %23134
  %23136 = add nsw i32 %23133, %23135
  %23137 = sext i32 %23136 to i64
  %23138 = getelementptr inbounds double, ptr %23132, i64 %23137
  %23139 = load double, ptr %23138, align 8, !tbaa !11
  %23140 = fadd double %23139, %23131
  store double %23140, ptr %23138, align 8, !tbaa !11
  %23141 = load ptr, ptr %7, align 8, !tbaa !9
  %23142 = load i32, ptr %12, align 4, !tbaa !5
  %23143 = load i32, ptr %8, align 4, !tbaa !5
  %23144 = mul nsw i32 0, %23143
  %23145 = add nsw i32 %23142, %23144
  %23146 = sext i32 %23145 to i64
  %23147 = getelementptr inbounds double, ptr %23141, i64 %23146
  %23148 = load double, ptr %23147, align 8, !tbaa !11
  %23149 = load ptr, ptr %7, align 8, !tbaa !9
  %23150 = load i32, ptr %12, align 4, !tbaa !5
  %23151 = load i32, ptr %8, align 4, !tbaa !5
  %23152 = mul nsw i32 1, %23151
  %23153 = add nsw i32 %23150, %23152
  %23154 = sext i32 %23153 to i64
  %23155 = getelementptr inbounds double, ptr %23149, i64 %23154
  %23156 = load double, ptr %23155, align 8, !tbaa !11
  %23157 = fmul double 0xBC9DFFFFFFFFFFFE, %23156
  %23158 = call double @llvm.fmuladd.f64(double 0xBCCE000000000000, double %23148, double %23157)
  %23159 = load ptr, ptr %7, align 8, !tbaa !9
  %23160 = load i32, ptr %12, align 4, !tbaa !5
  %23161 = load i32, ptr %8, align 4, !tbaa !5
  %23162 = mul nsw i32 2, %23161
  %23163 = add nsw i32 %23160, %23162
  %23164 = sext i32 %23163 to i64
  %23165 = getelementptr inbounds double, ptr %23159, i64 %23164
  %23166 = load double, ptr %23165, align 8, !tbaa !11
  %23167 = call double @llvm.fmuladd.f64(double 0x3CA173FFFFFFFFFE, double %23166, double %23158)
  %23168 = load ptr, ptr %7, align 8, !tbaa !9
  %23169 = load i32, ptr %12, align 4, !tbaa !5
  %23170 = load i32, ptr %8, align 4, !tbaa !5
  %23171 = mul nsw i32 3, %23170
  %23172 = add nsw i32 %23169, %23171
  %23173 = sext i32 %23172 to i64
  %23174 = getelementptr inbounds double, ptr %23168, i64 %23173
  %23175 = load double, ptr %23174, align 8, !tbaa !11
  %23176 = call double @llvm.fmuladd.f64(double 0xBCBAD60000000001, double %23175, double %23167)
  %23177 = load ptr, ptr %7, align 8, !tbaa !9
  %23178 = load i32, ptr %12, align 4, !tbaa !5
  %23179 = load i32, ptr %8, align 4, !tbaa !5
  %23180 = mul nsw i32 4, %23179
  %23181 = add nsw i32 %23178, %23180
  %23182 = sext i32 %23181 to i64
  %23183 = getelementptr inbounds double, ptr %23177, i64 %23182
  %23184 = load double, ptr %23183, align 8, !tbaa !11
  %23185 = call double @llvm.fmuladd.f64(double 0xBCB1F00000000000, double %23184, double %23176)
  %23186 = load ptr, ptr %7, align 8, !tbaa !9
  %23187 = load i32, ptr %12, align 4, !tbaa !5
  %23188 = load i32, ptr %8, align 4, !tbaa !5
  %23189 = mul nsw i32 5, %23188
  %23190 = add nsw i32 %23187, %23189
  %23191 = sext i32 %23190 to i64
  %23192 = getelementptr inbounds double, ptr %23186, i64 %23191
  %23193 = load double, ptr %23192, align 8, !tbaa !11
  %23194 = call double @llvm.fmuladd.f64(double 0x3CA1000000000001, double %23193, double %23185)
  %23195 = load ptr, ptr %7, align 8, !tbaa !9
  %23196 = load i32, ptr %12, align 4, !tbaa !5
  %23197 = load i32, ptr %8, align 4, !tbaa !5
  %23198 = mul nsw i32 6, %23197
  %23199 = add nsw i32 %23196, %23198
  %23200 = sext i32 %23199 to i64
  %23201 = getelementptr inbounds double, ptr %23195, i64 %23200
  %23202 = load double, ptr %23201, align 8, !tbaa !11
  %23203 = call double @llvm.fmuladd.f64(double 0x3C83600000000000, double %23202, double %23194)
  %23204 = load ptr, ptr %7, align 8, !tbaa !9
  %23205 = load i32, ptr %12, align 4, !tbaa !5
  %23206 = load i32, ptr %8, align 4, !tbaa !5
  %23207 = mul nsw i32 7, %23206
  %23208 = add nsw i32 %23205, %23207
  %23209 = sext i32 %23208 to i64
  %23210 = getelementptr inbounds double, ptr %23204, i64 %23209
  %23211 = load double, ptr %23210, align 8, !tbaa !11
  %23212 = call double @llvm.fmuladd.f64(double 0x3C90500000000000, double %23211, double %23203)
  %23213 = load ptr, ptr %7, align 8, !tbaa !9
  %23214 = load i32, ptr %12, align 4, !tbaa !5
  %23215 = load i32, ptr %8, align 4, !tbaa !5
  %23216 = mul nsw i32 8, %23215
  %23217 = add nsw i32 %23214, %23216
  %23218 = sext i32 %23217 to i64
  %23219 = getelementptr inbounds double, ptr %23213, i64 %23218
  %23220 = load double, ptr %23219, align 8, !tbaa !11
  %23221 = call double @llvm.fmuladd.f64(double 0x3CA27FFFFFFFFFFF, double %23220, double %23212)
  %23222 = load ptr, ptr %7, align 8, !tbaa !9
  %23223 = load i32, ptr %12, align 4, !tbaa !5
  %23224 = load i32, ptr %8, align 4, !tbaa !5
  %23225 = mul nsw i32 9, %23224
  %23226 = add nsw i32 %23223, %23225
  %23227 = sext i32 %23226 to i64
  %23228 = getelementptr inbounds double, ptr %23222, i64 %23227
  %23229 = load double, ptr %23228, align 8, !tbaa !11
  %23230 = call double @llvm.fmuladd.f64(double 0xBC88000000000000, double %23229, double %23221)
  %23231 = load ptr, ptr %7, align 8, !tbaa !9
  %23232 = load i32, ptr %12, align 4, !tbaa !5
  %23233 = load i32, ptr %8, align 4, !tbaa !5
  %23234 = mul nsw i32 10, %23233
  %23235 = add nsw i32 %23232, %23234
  %23236 = sext i32 %23235 to i64
  %23237 = getelementptr inbounds double, ptr %23231, i64 %23236
  %23238 = load double, ptr %23237, align 8, !tbaa !11
  %23239 = call double @llvm.fmuladd.f64(double 0x3CC3F00000000000, double %23238, double %23230)
  %23240 = load ptr, ptr %7, align 8, !tbaa !9
  %23241 = load i32, ptr %12, align 4, !tbaa !5
  %23242 = load i32, ptr %8, align 4, !tbaa !5
  %23243 = mul nsw i32 11, %23242
  %23244 = add nsw i32 %23241, %23243
  %23245 = sext i32 %23244 to i64
  %23246 = getelementptr inbounds double, ptr %23240, i64 %23245
  %23247 = load double, ptr %23246, align 8, !tbaa !11
  %23248 = call double @llvm.fmuladd.f64(double 0x3C92000000000000, double %23247, double %23239)
  %23249 = load ptr, ptr %7, align 8, !tbaa !9
  %23250 = load i32, ptr %12, align 4, !tbaa !5
  %23251 = load i32, ptr %8, align 4, !tbaa !5
  %23252 = mul nsw i32 12, %23251
  %23253 = add nsw i32 %23250, %23252
  %23254 = sext i32 %23253 to i64
  %23255 = getelementptr inbounds double, ptr %23249, i64 %23254
  %23256 = load double, ptr %23255, align 8, !tbaa !11
  %23257 = call double @llvm.fmuladd.f64(double 0x3CA61FFFFFFFFFFF, double %23256, double %23248)
  %23258 = load ptr, ptr %7, align 8, !tbaa !9
  %23259 = load i32, ptr %12, align 4, !tbaa !5
  %23260 = load i32, ptr %8, align 4, !tbaa !5
  %23261 = mul nsw i32 13, %23260
  %23262 = add nsw i32 %23259, %23261
  %23263 = sext i32 %23262 to i64
  %23264 = getelementptr inbounds double, ptr %23258, i64 %23263
  %23265 = load double, ptr %23264, align 8, !tbaa !11
  %23266 = call double @llvm.fmuladd.f64(double 0xBC97A00000000000, double %23265, double %23257)
  %23267 = load ptr, ptr %7, align 8, !tbaa !9
  %23268 = load i32, ptr %12, align 4, !tbaa !5
  %23269 = load i32, ptr %8, align 4, !tbaa !5
  %23270 = mul nsw i32 14, %23269
  %23271 = add nsw i32 %23268, %23270
  %23272 = sext i32 %23271 to i64
  %23273 = getelementptr inbounds double, ptr %23267, i64 %23272
  %23274 = load double, ptr %23273, align 8, !tbaa !11
  %23275 = call double @llvm.fmuladd.f64(double 0xBCB5800000000000, double %23274, double %23266)
  %23276 = load ptr, ptr %7, align 8, !tbaa !9
  %23277 = load i32, ptr %12, align 4, !tbaa !5
  %23278 = load i32, ptr %8, align 4, !tbaa !5
  %23279 = mul nsw i32 15, %23278
  %23280 = add nsw i32 %23277, %23279
  %23281 = sext i32 %23280 to i64
  %23282 = getelementptr inbounds double, ptr %23276, i64 %23281
  %23283 = load double, ptr %23282, align 8, !tbaa !11
  %23284 = call double @llvm.fmuladd.f64(double 0xBCB0200000000000, double %23283, double %23275)
  %23285 = load ptr, ptr %7, align 8, !tbaa !9
  %23286 = load i32, ptr %12, align 4, !tbaa !5
  %23287 = load i32, ptr %8, align 4, !tbaa !5
  %23288 = mul nsw i32 16, %23287
  %23289 = add nsw i32 %23286, %23288
  %23290 = sext i32 %23289 to i64
  %23291 = getelementptr inbounds double, ptr %23285, i64 %23290
  %23292 = load double, ptr %23291, align 8, !tbaa !11
  %23293 = call double @llvm.fmuladd.f64(double 0x3CAD6FFFFFFFFFFF, double %23292, double %23284)
  %23294 = load ptr, ptr %7, align 8, !tbaa !9
  %23295 = load i32, ptr %12, align 4, !tbaa !5
  %23296 = load i32, ptr %8, align 4, !tbaa !5
  %23297 = mul nsw i32 17, %23296
  %23298 = add nsw i32 %23295, %23297
  %23299 = sext i32 %23298 to i64
  %23300 = getelementptr inbounds double, ptr %23294, i64 %23299
  %23301 = load double, ptr %23300, align 8, !tbaa !11
  %23302 = call double @llvm.fmuladd.f64(double 0x3CB3D00000000000, double %23301, double %23293)
  %23303 = load ptr, ptr %7, align 8, !tbaa !9
  %23304 = load i32, ptr %12, align 4, !tbaa !5
  %23305 = load i32, ptr %8, align 4, !tbaa !5
  %23306 = mul nsw i32 18, %23305
  %23307 = add nsw i32 %23304, %23306
  %23308 = sext i32 %23307 to i64
  %23309 = getelementptr inbounds double, ptr %23303, i64 %23308
  %23310 = load double, ptr %23309, align 8, !tbaa !11
  %23311 = call double @llvm.fmuladd.f64(double 0xBC84000000000000, double %23310, double %23302)
  %23312 = load ptr, ptr %7, align 8, !tbaa !9
  %23313 = load i32, ptr %12, align 4, !tbaa !5
  %23314 = load i32, ptr %8, align 4, !tbaa !5
  %23315 = mul nsw i32 19, %23314
  %23316 = add nsw i32 %23313, %23315
  %23317 = sext i32 %23316 to i64
  %23318 = getelementptr inbounds double, ptr %23312, i64 %23317
  %23319 = load double, ptr %23318, align 8, !tbaa !11
  %23320 = call double @llvm.fmuladd.f64(double 0x3C50000000000000, double %23319, double %23311)
  %23321 = load ptr, ptr %7, align 8, !tbaa !9
  %23322 = load i32, ptr %12, align 4, !tbaa !5
  %23323 = load i32, ptr %8, align 4, !tbaa !5
  %23324 = mul nsw i32 20, %23323
  %23325 = add nsw i32 %23322, %23324
  %23326 = sext i32 %23325 to i64
  %23327 = getelementptr inbounds double, ptr %23321, i64 %23326
  %23328 = load double, ptr %23327, align 8, !tbaa !11
  %23329 = call double @llvm.fmuladd.f64(double 0xBCBFE00000000000, double %23328, double %23320)
  %23330 = load ptr, ptr %7, align 8, !tbaa !9
  %23331 = load i32, ptr %12, align 4, !tbaa !5
  %23332 = load i32, ptr %8, align 4, !tbaa !5
  %23333 = mul nsw i32 21, %23332
  %23334 = add nsw i32 %23331, %23333
  %23335 = sext i32 %23334 to i64
  %23336 = getelementptr inbounds double, ptr %23330, i64 %23335
  %23337 = load double, ptr %23336, align 8, !tbaa !11
  %23338 = call double @llvm.fmuladd.f64(double 0xBCA7400000000002, double %23337, double %23329)
  %23339 = load ptr, ptr %7, align 8, !tbaa !9
  %23340 = load i32, ptr %12, align 4, !tbaa !5
  %23341 = load i32, ptr %8, align 4, !tbaa !5
  %23342 = mul nsw i32 22, %23341
  %23343 = add nsw i32 %23340, %23342
  %23344 = sext i32 %23343 to i64
  %23345 = getelementptr inbounds double, ptr %23339, i64 %23344
  %23346 = load double, ptr %23345, align 8, !tbaa !11
  %23347 = call double @llvm.fmuladd.f64(double 0xBCA5000000000000, double %23346, double %23338)
  %23348 = load ptr, ptr %7, align 8, !tbaa !9
  %23349 = load i32, ptr %12, align 4, !tbaa !5
  %23350 = load i32, ptr %8, align 4, !tbaa !5
  %23351 = mul nsw i32 23, %23350
  %23352 = add nsw i32 %23349, %23351
  %23353 = sext i32 %23352 to i64
  %23354 = getelementptr inbounds double, ptr %23348, i64 %23353
  %23355 = load double, ptr %23354, align 8, !tbaa !11
  %23356 = call double @llvm.fmuladd.f64(double 0x3CBBC80000000000, double %23355, double %23347)
  %23357 = load ptr, ptr %7, align 8, !tbaa !9
  %23358 = load i32, ptr %12, align 4, !tbaa !5
  %23359 = load i32, ptr %8, align 4, !tbaa !5
  %23360 = mul nsw i32 24, %23359
  %23361 = add nsw i32 %23358, %23360
  %23362 = sext i32 %23361 to i64
  %23363 = getelementptr inbounds double, ptr %23357, i64 %23362
  %23364 = load double, ptr %23363, align 8, !tbaa !11
  %23365 = call double @llvm.fmuladd.f64(double 0x3C96000000000000, double %23364, double %23356)
  %23366 = load ptr, ptr %7, align 8, !tbaa !9
  %23367 = load i32, ptr %12, align 4, !tbaa !5
  %23368 = load i32, ptr %8, align 4, !tbaa !5
  %23369 = mul nsw i32 25, %23368
  %23370 = add nsw i32 %23367, %23369
  %23371 = sext i32 %23370 to i64
  %23372 = getelementptr inbounds double, ptr %23366, i64 %23371
  %23373 = load double, ptr %23372, align 8, !tbaa !11
  %23374 = call double @llvm.fmuladd.f64(double 0x3C89000000000000, double %23373, double %23365)
  %23375 = load ptr, ptr %7, align 8, !tbaa !9
  %23376 = load i32, ptr %12, align 4, !tbaa !5
  %23377 = load i32, ptr %8, align 4, !tbaa !5
  %23378 = mul nsw i32 26, %23377
  %23379 = add nsw i32 %23376, %23378
  %23380 = sext i32 %23379 to i64
  %23381 = getelementptr inbounds double, ptr %23375, i64 %23380
  %23382 = load double, ptr %23381, align 8, !tbaa !11
  %23383 = call double @llvm.fmuladd.f64(double 0x3C9E5FFFFFFFFFFD, double %23382, double %23374)
  %23384 = load ptr, ptr %7, align 8, !tbaa !9
  %23385 = load i32, ptr %12, align 4, !tbaa !5
  %23386 = load i32, ptr %8, align 4, !tbaa !5
  %23387 = mul nsw i32 27, %23386
  %23388 = add nsw i32 %23385, %23387
  %23389 = sext i32 %23388 to i64
  %23390 = getelementptr inbounds double, ptr %23384, i64 %23389
  %23391 = load double, ptr %23390, align 8, !tbaa !11
  %23392 = call double @llvm.fmuladd.f64(double 0xBCA0600000000001, double %23391, double %23383)
  %23393 = load ptr, ptr %7, align 8, !tbaa !9
  %23394 = load i32, ptr %12, align 4, !tbaa !5
  %23395 = load i32, ptr %8, align 4, !tbaa !5
  %23396 = mul nsw i32 28, %23395
  %23397 = add nsw i32 %23394, %23396
  %23398 = sext i32 %23397 to i64
  %23399 = getelementptr inbounds double, ptr %23393, i64 %23398
  %23400 = load double, ptr %23399, align 8, !tbaa !11
  %23401 = call double @llvm.fmuladd.f64(double 0x3C97800000000000, double %23400, double %23392)
  %23402 = load ptr, ptr %7, align 8, !tbaa !9
  %23403 = load i32, ptr %12, align 4, !tbaa !5
  %23404 = load i32, ptr %8, align 4, !tbaa !5
  %23405 = mul nsw i32 29, %23404
  %23406 = add nsw i32 %23403, %23405
  %23407 = sext i32 %23406 to i64
  %23408 = getelementptr inbounds double, ptr %23402, i64 %23407
  %23409 = load double, ptr %23408, align 8, !tbaa !11
  %23410 = call double @llvm.fmuladd.f64(double 0xBC8E000000000000, double %23409, double %23401)
  %23411 = load ptr, ptr %7, align 8, !tbaa !9
  %23412 = load i32, ptr %12, align 4, !tbaa !5
  %23413 = load i32, ptr %8, align 4, !tbaa !5
  %23414 = mul nsw i32 30, %23413
  %23415 = add nsw i32 %23412, %23414
  %23416 = sext i32 %23415 to i64
  %23417 = getelementptr inbounds double, ptr %23411, i64 %23416
  %23418 = load double, ptr %23417, align 8, !tbaa !11
  %23419 = call double @llvm.fmuladd.f64(double 0xBF83152016E0EC60, double %23418, double %23410)
  %23420 = load ptr, ptr %7, align 8, !tbaa !9
  %23421 = load i32, ptr %12, align 4, !tbaa !5
  %23422 = load i32, ptr %8, align 4, !tbaa !5
  %23423 = mul nsw i32 31, %23422
  %23424 = add nsw i32 %23421, %23423
  %23425 = sext i32 %23424 to i64
  %23426 = getelementptr inbounds double, ptr %23420, i64 %23425
  %23427 = load double, ptr %23426, align 8, !tbaa !11
  %23428 = call double @llvm.fmuladd.f64(double 0x3F938CE4890DB316, double %23427, double %23419)
  %23429 = load ptr, ptr %7, align 8, !tbaa !9
  %23430 = load i32, ptr %12, align 4, !tbaa !5
  %23431 = load i32, ptr %8, align 4, !tbaa !5
  %23432 = mul nsw i32 32, %23431
  %23433 = add nsw i32 %23430, %23432
  %23434 = sext i32 %23433 to i64
  %23435 = getelementptr inbounds double, ptr %23429, i64 %23434
  %23436 = load double, ptr %23435, align 8, !tbaa !11
  %23437 = call double @llvm.fmuladd.f64(double 0x3FF4EC1BB3FDC61B, double %23436, double %23428)
  %23438 = load ptr, ptr %7, align 8, !tbaa !9
  %23439 = load i32, ptr %12, align 4, !tbaa !5
  %23440 = load i32, ptr %8, align 4, !tbaa !5
  %23441 = mul nsw i32 33, %23440
  %23442 = add nsw i32 %23439, %23441
  %23443 = sext i32 %23442 to i64
  %23444 = getelementptr inbounds double, ptr %23438, i64 %23443
  %23445 = load double, ptr %23444, align 8, !tbaa !11
  %23446 = call double @llvm.fmuladd.f64(double 0xBFB5B58B4F03B1AC, double %23445, double %23437)
  %23447 = load ptr, ptr %7, align 8, !tbaa !9
  %23448 = load i32, ptr %12, align 4, !tbaa !5
  %23449 = load i32, ptr %8, align 4, !tbaa !5
  %23450 = mul nsw i32 34, %23449
  %23451 = add nsw i32 %23448, %23450
  %23452 = sext i32 %23451 to i64
  %23453 = getelementptr inbounds double, ptr %23447, i64 %23452
  %23454 = load double, ptr %23453, align 8, !tbaa !11
  %23455 = call double @llvm.fmuladd.f64(double 0x3FCA50C41AB7A329, double %23454, double %23446)
  %23456 = load ptr, ptr %7, align 8, !tbaa !9
  %23457 = load i32, ptr %12, align 4, !tbaa !5
  %23458 = load i32, ptr %8, align 4, !tbaa !5
  %23459 = mul nsw i32 35, %23458
  %23460 = add nsw i32 %23457, %23459
  %23461 = sext i32 %23460 to i64
  %23462 = getelementptr inbounds double, ptr %23456, i64 %23461
  %23463 = load double, ptr %23462, align 8, !tbaa !11
  %23464 = call double @llvm.fmuladd.f64(double 0xBF8BDAF699AECF88, double %23463, double %23455)
  %23465 = load ptr, ptr %7, align 8, !tbaa !9
  %23466 = load i32, ptr %12, align 4, !tbaa !5
  %23467 = load i32, ptr %8, align 4, !tbaa !5
  %23468 = mul nsw i32 36, %23467
  %23469 = add nsw i32 %23466, %23468
  %23470 = sext i32 %23469 to i64
  %23471 = getelementptr inbounds double, ptr %23465, i64 %23470
  %23472 = load double, ptr %23471, align 8, !tbaa !11
  %23473 = call double @llvm.fmuladd.f64(double 0x3FD417DEBFC17B21, double %23472, double %23464)
  %23474 = load ptr, ptr %7, align 8, !tbaa !9
  %23475 = load i32, ptr %12, align 4, !tbaa !5
  %23476 = load i32, ptr %8, align 4, !tbaa !5
  %23477 = mul nsw i32 37, %23476
  %23478 = add nsw i32 %23475, %23477
  %23479 = sext i32 %23478 to i64
  %23480 = getelementptr inbounds double, ptr %23474, i64 %23479
  %23481 = load double, ptr %23480, align 8, !tbaa !11
  %23482 = call double @llvm.fmuladd.f64(double 0xBFE5679E70A60669, double %23481, double %23473)
  %23483 = load ptr, ptr %7, align 8, !tbaa !9
  %23484 = load i32, ptr %12, align 4, !tbaa !5
  %23485 = load i32, ptr %8, align 4, !tbaa !5
  %23486 = mul nsw i32 38, %23485
  %23487 = add nsw i32 %23484, %23486
  %23488 = sext i32 %23487 to i64
  %23489 = getelementptr inbounds double, ptr %23483, i64 %23488
  %23490 = load double, ptr %23489, align 8, !tbaa !11
  %23491 = call double @llvm.fmuladd.f64(double 0x3F85E50BB681A3E1, double %23490, double %23482)
  %23492 = load ptr, ptr %7, align 8, !tbaa !9
  %23493 = load i32, ptr %12, align 4, !tbaa !5
  %23494 = load i32, ptr %8, align 4, !tbaa !5
  %23495 = mul nsw i32 39, %23494
  %23496 = add nsw i32 %23493, %23495
  %23497 = sext i32 %23496 to i64
  %23498 = getelementptr inbounds double, ptr %23492, i64 %23497
  %23499 = load double, ptr %23498, align 8, !tbaa !11
  %23500 = call double @llvm.fmuladd.f64(double 0xBFB49217631F5945, double %23499, double %23491)
  store double %23500, ptr %11, align 8, !tbaa !11
  %23501 = load double, ptr %11, align 8, !tbaa !11
  %23502 = load ptr, ptr %9, align 8, !tbaa !9
  %23503 = load i32, ptr %12, align 4, !tbaa !5
  %23504 = load i32, ptr %10, align 4, !tbaa !5
  %23505 = mul nsw i32 64, %23504
  %23506 = add nsw i32 %23503, %23505
  %23507 = sext i32 %23506 to i64
  %23508 = getelementptr inbounds double, ptr %23502, i64 %23507
  %23509 = load double, ptr %23508, align 8, !tbaa !11
  %23510 = fadd double %23509, %23501
  store double %23510, ptr %23508, align 8, !tbaa !11
  %23511 = load ptr, ptr %7, align 8, !tbaa !9
  %23512 = load i32, ptr %12, align 4, !tbaa !5
  %23513 = load i32, ptr %8, align 4, !tbaa !5
  %23514 = mul nsw i32 0, %23513
  %23515 = add nsw i32 %23512, %23514
  %23516 = sext i32 %23515 to i64
  %23517 = getelementptr inbounds double, ptr %23511, i64 %23516
  %23518 = load double, ptr %23517, align 8, !tbaa !11
  %23519 = load ptr, ptr %7, align 8, !tbaa !9
  %23520 = load i32, ptr %12, align 4, !tbaa !5
  %23521 = load i32, ptr %8, align 4, !tbaa !5
  %23522 = mul nsw i32 1, %23521
  %23523 = add nsw i32 %23520, %23522
  %23524 = sext i32 %23523 to i64
  %23525 = getelementptr inbounds double, ptr %23519, i64 %23524
  %23526 = load double, ptr %23525, align 8, !tbaa !11
  %23527 = fmul double 0xBCB3000000000000, %23526
  %23528 = call double @llvm.fmuladd.f64(double 0xBCC7800000000000, double %23518, double %23527)
  %23529 = load ptr, ptr %7, align 8, !tbaa !9
  %23530 = load i32, ptr %12, align 4, !tbaa !5
  %23531 = load i32, ptr %8, align 4, !tbaa !5
  %23532 = mul nsw i32 2, %23531
  %23533 = add nsw i32 %23530, %23532
  %23534 = sext i32 %23533 to i64
  %23535 = getelementptr inbounds double, ptr %23529, i64 %23534
  %23536 = load double, ptr %23535, align 8, !tbaa !11
  %23537 = call double @llvm.fmuladd.f64(double 0x3C7B800000000001, double %23536, double %23528)
  %23538 = load ptr, ptr %7, align 8, !tbaa !9
  %23539 = load i32, ptr %12, align 4, !tbaa !5
  %23540 = load i32, ptr %8, align 4, !tbaa !5
  %23541 = mul nsw i32 3, %23540
  %23542 = add nsw i32 %23539, %23541
  %23543 = sext i32 %23542 to i64
  %23544 = getelementptr inbounds double, ptr %23538, i64 %23543
  %23545 = load double, ptr %23544, align 8, !tbaa !11
  %23546 = call double @llvm.fmuladd.f64(double 0xBCC1080000000000, double %23545, double %23537)
  %23547 = load ptr, ptr %7, align 8, !tbaa !9
  %23548 = load i32, ptr %12, align 4, !tbaa !5
  %23549 = load i32, ptr %8, align 4, !tbaa !5
  %23550 = mul nsw i32 4, %23549
  %23551 = add nsw i32 %23548, %23550
  %23552 = sext i32 %23551 to i64
  %23553 = getelementptr inbounds double, ptr %23547, i64 %23552
  %23554 = load double, ptr %23553, align 8, !tbaa !11
  %23555 = call double @llvm.fmuladd.f64(double 0x3CB0100000000000, double %23554, double %23546)
  %23556 = load ptr, ptr %7, align 8, !tbaa !9
  %23557 = load i32, ptr %12, align 4, !tbaa !5
  %23558 = load i32, ptr %8, align 4, !tbaa !5
  %23559 = mul nsw i32 5, %23558
  %23560 = add nsw i32 %23557, %23559
  %23561 = sext i32 %23560 to i64
  %23562 = getelementptr inbounds double, ptr %23556, i64 %23561
  %23563 = load double, ptr %23562, align 8, !tbaa !11
  %23564 = call double @llvm.fmuladd.f64(double 0x3CAA3FFFFFFFFFFE, double %23563, double %23555)
  %23565 = load ptr, ptr %7, align 8, !tbaa !9
  %23566 = load i32, ptr %12, align 4, !tbaa !5
  %23567 = load i32, ptr %8, align 4, !tbaa !5
  %23568 = mul nsw i32 6, %23567
  %23569 = add nsw i32 %23566, %23568
  %23570 = sext i32 %23569 to i64
  %23571 = getelementptr inbounds double, ptr %23565, i64 %23570
  %23572 = load double, ptr %23571, align 8, !tbaa !11
  %23573 = call double @llvm.fmuladd.f64(double 0x3C92800000000000, double %23572, double %23564)
  %23574 = load ptr, ptr %7, align 8, !tbaa !9
  %23575 = load i32, ptr %12, align 4, !tbaa !5
  %23576 = load i32, ptr %8, align 4, !tbaa !5
  %23577 = mul nsw i32 7, %23576
  %23578 = add nsw i32 %23575, %23577
  %23579 = sext i32 %23578 to i64
  %23580 = getelementptr inbounds double, ptr %23574, i64 %23579
  %23581 = load double, ptr %23580, align 8, !tbaa !11
  %23582 = call double @llvm.fmuladd.f64(double 0xBCBE200000000000, double %23581, double %23573)
  %23583 = load ptr, ptr %7, align 8, !tbaa !9
  %23584 = load i32, ptr %12, align 4, !tbaa !5
  %23585 = load i32, ptr %8, align 4, !tbaa !5
  %23586 = mul nsw i32 8, %23585
  %23587 = add nsw i32 %23584, %23586
  %23588 = sext i32 %23587 to i64
  %23589 = getelementptr inbounds double, ptr %23583, i64 %23588
  %23590 = load double, ptr %23589, align 8, !tbaa !11
  %23591 = call double @llvm.fmuladd.f64(double 0xBC94000000000000, double %23590, double %23582)
  %23592 = load ptr, ptr %7, align 8, !tbaa !9
  %23593 = load i32, ptr %12, align 4, !tbaa !5
  %23594 = load i32, ptr %8, align 4, !tbaa !5
  %23595 = mul nsw i32 9, %23594
  %23596 = add nsw i32 %23593, %23595
  %23597 = sext i32 %23596 to i64
  %23598 = getelementptr inbounds double, ptr %23592, i64 %23597
  %23599 = load double, ptr %23598, align 8, !tbaa !11
  %23600 = call double @llvm.fmuladd.f64(double 0xBC70000000000001, double %23599, double %23591)
  %23601 = load ptr, ptr %7, align 8, !tbaa !9
  %23602 = load i32, ptr %12, align 4, !tbaa !5
  %23603 = load i32, ptr %8, align 4, !tbaa !5
  %23604 = mul nsw i32 10, %23603
  %23605 = add nsw i32 %23602, %23604
  %23606 = sext i32 %23605 to i64
  %23607 = getelementptr inbounds double, ptr %23601, i64 %23606
  %23608 = load double, ptr %23607, align 8, !tbaa !11
  %23609 = call double @llvm.fmuladd.f64(double 0x3CBE000000000000, double %23608, double %23600)
  %23610 = load ptr, ptr %7, align 8, !tbaa !9
  %23611 = load i32, ptr %12, align 4, !tbaa !5
  %23612 = load i32, ptr %8, align 4, !tbaa !5
  %23613 = mul nsw i32 11, %23612
  %23614 = add nsw i32 %23611, %23613
  %23615 = sext i32 %23614 to i64
  %23616 = getelementptr inbounds double, ptr %23610, i64 %23615
  %23617 = load double, ptr %23616, align 8, !tbaa !11
  %23618 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %23617, double %23609)
  %23619 = load ptr, ptr %7, align 8, !tbaa !9
  %23620 = load i32, ptr %12, align 4, !tbaa !5
  %23621 = load i32, ptr %8, align 4, !tbaa !5
  %23622 = mul nsw i32 12, %23621
  %23623 = add nsw i32 %23620, %23622
  %23624 = sext i32 %23623 to i64
  %23625 = getelementptr inbounds double, ptr %23619, i64 %23624
  %23626 = load double, ptr %23625, align 8, !tbaa !11
  %23627 = call double @llvm.fmuladd.f64(double 0x3CA4A00000000001, double %23626, double %23618)
  %23628 = load ptr, ptr %7, align 8, !tbaa !9
  %23629 = load i32, ptr %12, align 4, !tbaa !5
  %23630 = load i32, ptr %8, align 4, !tbaa !5
  %23631 = mul nsw i32 13, %23630
  %23632 = add nsw i32 %23629, %23631
  %23633 = sext i32 %23632 to i64
  %23634 = getelementptr inbounds double, ptr %23628, i64 %23633
  %23635 = load double, ptr %23634, align 8, !tbaa !11
  %23636 = call double @llvm.fmuladd.f64(double 0xBC9D7FFFFFFFFFFE, double %23635, double %23627)
  %23637 = load ptr, ptr %7, align 8, !tbaa !9
  %23638 = load i32, ptr %12, align 4, !tbaa !5
  %23639 = load i32, ptr %8, align 4, !tbaa !5
  %23640 = mul nsw i32 14, %23639
  %23641 = add nsw i32 %23638, %23640
  %23642 = sext i32 %23641 to i64
  %23643 = getelementptr inbounds double, ptr %23637, i64 %23642
  %23644 = load double, ptr %23643, align 8, !tbaa !11
  %23645 = call double @llvm.fmuladd.f64(double 0x3CB4800000000001, double %23644, double %23636)
  %23646 = load ptr, ptr %7, align 8, !tbaa !9
  %23647 = load i32, ptr %12, align 4, !tbaa !5
  %23648 = load i32, ptr %8, align 4, !tbaa !5
  %23649 = mul nsw i32 15, %23648
  %23650 = add nsw i32 %23647, %23649
  %23651 = sext i32 %23650 to i64
  %23652 = getelementptr inbounds double, ptr %23646, i64 %23651
  %23653 = load double, ptr %23652, align 8, !tbaa !11
  %23654 = call double @llvm.fmuladd.f64(double 0xBC86000000000001, double %23653, double %23645)
  %23655 = load ptr, ptr %7, align 8, !tbaa !9
  %23656 = load i32, ptr %12, align 4, !tbaa !5
  %23657 = load i32, ptr %8, align 4, !tbaa !5
  %23658 = mul nsw i32 16, %23657
  %23659 = add nsw i32 %23656, %23658
  %23660 = sext i32 %23659 to i64
  %23661 = getelementptr inbounds double, ptr %23655, i64 %23660
  %23662 = load double, ptr %23661, align 8, !tbaa !11
  %23663 = call double @llvm.fmuladd.f64(double 0x3CBEBFFFFFFFFFFF, double %23662, double %23654)
  %23664 = load ptr, ptr %7, align 8, !tbaa !9
  %23665 = load i32, ptr %12, align 4, !tbaa !5
  %23666 = load i32, ptr %8, align 4, !tbaa !5
  %23667 = mul nsw i32 17, %23666
  %23668 = add nsw i32 %23665, %23667
  %23669 = sext i32 %23668 to i64
  %23670 = getelementptr inbounds double, ptr %23664, i64 %23669
  %23671 = load double, ptr %23670, align 8, !tbaa !11
  %23672 = call double @llvm.fmuladd.f64(double 0xBCB3200000000000, double %23671, double %23663)
  %23673 = load ptr, ptr %7, align 8, !tbaa !9
  %23674 = load i32, ptr %12, align 4, !tbaa !5
  %23675 = load i32, ptr %8, align 4, !tbaa !5
  %23676 = mul nsw i32 18, %23675
  %23677 = add nsw i32 %23674, %23676
  %23678 = sext i32 %23677 to i64
  %23679 = getelementptr inbounds double, ptr %23673, i64 %23678
  %23680 = load double, ptr %23679, align 8, !tbaa !11
  %23681 = call double @llvm.fmuladd.f64(double 0xBC97000000000000, double %23680, double %23672)
  %23682 = load ptr, ptr %7, align 8, !tbaa !9
  %23683 = load i32, ptr %12, align 4, !tbaa !5
  %23684 = load i32, ptr %8, align 4, !tbaa !5
  %23685 = mul nsw i32 19, %23684
  %23686 = add nsw i32 %23683, %23685
  %23687 = sext i32 %23686 to i64
  %23688 = getelementptr inbounds double, ptr %23682, i64 %23687
  %23689 = load double, ptr %23688, align 8, !tbaa !11
  %23690 = call double @llvm.fmuladd.f64(double 0x3C92000000000000, double %23689, double %23681)
  %23691 = load ptr, ptr %7, align 8, !tbaa !9
  %23692 = load i32, ptr %12, align 4, !tbaa !5
  %23693 = load i32, ptr %8, align 4, !tbaa !5
  %23694 = mul nsw i32 20, %23693
  %23695 = add nsw i32 %23692, %23694
  %23696 = sext i32 %23695 to i64
  %23697 = getelementptr inbounds double, ptr %23691, i64 %23696
  %23698 = load double, ptr %23697, align 8, !tbaa !11
  %23699 = call double @llvm.fmuladd.f64(double 0xBCCB000000000000, double %23698, double %23690)
  %23700 = load ptr, ptr %7, align 8, !tbaa !9
  %23701 = load i32, ptr %12, align 4, !tbaa !5
  %23702 = load i32, ptr %8, align 4, !tbaa !5
  %23703 = mul nsw i32 21, %23702
  %23704 = add nsw i32 %23701, %23703
  %23705 = sext i32 %23704 to i64
  %23706 = getelementptr inbounds double, ptr %23700, i64 %23705
  %23707 = load double, ptr %23706, align 8, !tbaa !11
  %23708 = call double @llvm.fmuladd.f64(double 0xBCA2000000000000, double %23707, double %23699)
  %23709 = load ptr, ptr %7, align 8, !tbaa !9
  %23710 = load i32, ptr %12, align 4, !tbaa !5
  %23711 = load i32, ptr %8, align 4, !tbaa !5
  %23712 = mul nsw i32 22, %23711
  %23713 = add nsw i32 %23710, %23712
  %23714 = sext i32 %23713 to i64
  %23715 = getelementptr inbounds double, ptr %23709, i64 %23714
  %23716 = load double, ptr %23715, align 8, !tbaa !11
  %23717 = call double @llvm.fmuladd.f64(double 0xBCA5BFFFFFFFFFFF, double %23716, double %23708)
  %23718 = load ptr, ptr %7, align 8, !tbaa !9
  %23719 = load i32, ptr %12, align 4, !tbaa !5
  %23720 = load i32, ptr %8, align 4, !tbaa !5
  %23721 = mul nsw i32 23, %23720
  %23722 = add nsw i32 %23719, %23721
  %23723 = sext i32 %23722 to i64
  %23724 = getelementptr inbounds double, ptr %23718, i64 %23723
  %23725 = load double, ptr %23724, align 8, !tbaa !11
  %23726 = call double @llvm.fmuladd.f64(double 0x3CC2480000000000, double %23725, double %23717)
  %23727 = load ptr, ptr %7, align 8, !tbaa !9
  %23728 = load i32, ptr %12, align 4, !tbaa !5
  %23729 = load i32, ptr %8, align 4, !tbaa !5
  %23730 = mul nsw i32 24, %23729
  %23731 = add nsw i32 %23728, %23730
  %23732 = sext i32 %23731 to i64
  %23733 = getelementptr inbounds double, ptr %23727, i64 %23732
  %23734 = load double, ptr %23733, align 8, !tbaa !11
  %23735 = call double @llvm.fmuladd.f64(double 0xBC92000000000000, double %23734, double %23726)
  %23736 = load ptr, ptr %7, align 8, !tbaa !9
  %23737 = load i32, ptr %12, align 4, !tbaa !5
  %23738 = load i32, ptr %8, align 4, !tbaa !5
  %23739 = mul nsw i32 25, %23738
  %23740 = add nsw i32 %23737, %23739
  %23741 = sext i32 %23740 to i64
  %23742 = getelementptr inbounds double, ptr %23736, i64 %23741
  %23743 = load double, ptr %23742, align 8, !tbaa !11
  %23744 = call double @llvm.fmuladd.f64(double 0x3CB4C00000000000, double %23743, double %23735)
  %23745 = load ptr, ptr %7, align 8, !tbaa !9
  %23746 = load i32, ptr %12, align 4, !tbaa !5
  %23747 = load i32, ptr %8, align 4, !tbaa !5
  %23748 = mul nsw i32 26, %23747
  %23749 = add nsw i32 %23746, %23748
  %23750 = sext i32 %23749 to i64
  %23751 = getelementptr inbounds double, ptr %23745, i64 %23750
  %23752 = load double, ptr %23751, align 8, !tbaa !11
  %23753 = call double @llvm.fmuladd.f64(double 0xBC89000000000000, double %23752, double %23744)
  %23754 = load ptr, ptr %7, align 8, !tbaa !9
  %23755 = load i32, ptr %12, align 4, !tbaa !5
  %23756 = load i32, ptr %8, align 4, !tbaa !5
  %23757 = mul nsw i32 27, %23756
  %23758 = add nsw i32 %23755, %23757
  %23759 = sext i32 %23758 to i64
  %23760 = getelementptr inbounds double, ptr %23754, i64 %23759
  %23761 = load double, ptr %23760, align 8, !tbaa !11
  %23762 = call double @llvm.fmuladd.f64(double 0x3CB7F00000000001, double %23761, double %23753)
  %23763 = load ptr, ptr %7, align 8, !tbaa !9
  %23764 = load i32, ptr %12, align 4, !tbaa !5
  %23765 = load i32, ptr %8, align 4, !tbaa !5
  %23766 = mul nsw i32 28, %23765
  %23767 = add nsw i32 %23764, %23766
  %23768 = sext i32 %23767 to i64
  %23769 = getelementptr inbounds double, ptr %23763, i64 %23768
  %23770 = load double, ptr %23769, align 8, !tbaa !11
  %23771 = call double @llvm.fmuladd.f64(double 0xBC70000000000001, double %23770, double %23762)
  %23772 = load ptr, ptr %7, align 8, !tbaa !9
  %23773 = load i32, ptr %12, align 4, !tbaa !5
  %23774 = load i32, ptr %8, align 4, !tbaa !5
  %23775 = mul nsw i32 29, %23774
  %23776 = add nsw i32 %23773, %23775
  %23777 = sext i32 %23776 to i64
  %23778 = getelementptr inbounds double, ptr %23772, i64 %23777
  %23779 = load double, ptr %23778, align 8, !tbaa !11
  %23780 = call double @llvm.fmuladd.f64(double 0xBCA7000000000002, double %23779, double %23771)
  %23781 = load ptr, ptr %7, align 8, !tbaa !9
  %23782 = load i32, ptr %12, align 4, !tbaa !5
  %23783 = load i32, ptr %8, align 4, !tbaa !5
  %23784 = mul nsw i32 30, %23783
  %23785 = add nsw i32 %23782, %23784
  %23786 = sext i32 %23785 to i64
  %23787 = getelementptr inbounds double, ptr %23781, i64 %23786
  %23788 = load double, ptr %23787, align 8, !tbaa !11
  %23789 = call double @llvm.fmuladd.f64(double 0xBFE333710B32A29A, double %23788, double %23780)
  %23790 = load ptr, ptr %7, align 8, !tbaa !9
  %23791 = load i32, ptr %12, align 4, !tbaa !5
  %23792 = load i32, ptr %8, align 4, !tbaa !5
  %23793 = mul nsw i32 31, %23792
  %23794 = add nsw i32 %23791, %23793
  %23795 = sext i32 %23794 to i64
  %23796 = getelementptr inbounds double, ptr %23790, i64 %23795
  %23797 = load double, ptr %23796, align 8, !tbaa !11
  %23798 = call double @llvm.fmuladd.f64(double 0xBFA352D4DB969BCE, double %23797, double %23789)
  %23799 = load ptr, ptr %7, align 8, !tbaa !9
  %23800 = load i32, ptr %12, align 4, !tbaa !5
  %23801 = load i32, ptr %8, align 4, !tbaa !5
  %23802 = mul nsw i32 32, %23801
  %23803 = add nsw i32 %23800, %23802
  %23804 = sext i32 %23803 to i64
  %23805 = getelementptr inbounds double, ptr %23799, i64 %23804
  %23806 = load double, ptr %23805, align 8, !tbaa !11
  %23807 = call double @llvm.fmuladd.f64(double 0x3FA87D7643548540, double %23806, double %23798)
  %23808 = load ptr, ptr %7, align 8, !tbaa !9
  %23809 = load i32, ptr %12, align 4, !tbaa !5
  %23810 = load i32, ptr %8, align 4, !tbaa !5
  %23811 = mul nsw i32 33, %23810
  %23812 = add nsw i32 %23809, %23811
  %23813 = sext i32 %23812 to i64
  %23814 = getelementptr inbounds double, ptr %23808, i64 %23813
  %23815 = load double, ptr %23814, align 8, !tbaa !11
  %23816 = call double @llvm.fmuladd.f64(double 0xBFBEED13A9F0D910, double %23815, double %23807)
  %23817 = load ptr, ptr %7, align 8, !tbaa !9
  %23818 = load i32, ptr %12, align 4, !tbaa !5
  %23819 = load i32, ptr %8, align 4, !tbaa !5
  %23820 = mul nsw i32 34, %23819
  %23821 = add nsw i32 %23818, %23820
  %23822 = sext i32 %23821 to i64
  %23823 = getelementptr inbounds double, ptr %23817, i64 %23822
  %23824 = load double, ptr %23823, align 8, !tbaa !11
  %23825 = call double @llvm.fmuladd.f64(double 0x3FF670C5F1F4C92E, double %23824, double %23816)
  %23826 = load ptr, ptr %7, align 8, !tbaa !9
  %23827 = load i32, ptr %12, align 4, !tbaa !5
  %23828 = load i32, ptr %8, align 4, !tbaa !5
  %23829 = mul nsw i32 35, %23828
  %23830 = add nsw i32 %23827, %23829
  %23831 = sext i32 %23830 to i64
  %23832 = getelementptr inbounds double, ptr %23826, i64 %23831
  %23833 = load double, ptr %23832, align 8, !tbaa !11
  %23834 = call double @llvm.fmuladd.f64(double 0x3FC27B05E24EC5E2, double %23833, double %23825)
  %23835 = load ptr, ptr %7, align 8, !tbaa !9
  %23836 = load i32, ptr %12, align 4, !tbaa !5
  %23837 = load i32, ptr %8, align 4, !tbaa !5
  %23838 = mul nsw i32 36, %23837
  %23839 = add nsw i32 %23836, %23838
  %23840 = sext i32 %23839 to i64
  %23841 = getelementptr inbounds double, ptr %23835, i64 %23840
  %23842 = load double, ptr %23841, align 8, !tbaa !11
  %23843 = call double @llvm.fmuladd.f64(double 0x3FD35DAE88CBA63F, double %23842, double %23834)
  %23844 = load ptr, ptr %7, align 8, !tbaa !9
  %23845 = load i32, ptr %12, align 4, !tbaa !5
  %23846 = load i32, ptr %8, align 4, !tbaa !5
  %23847 = mul nsw i32 37, %23846
  %23848 = add nsw i32 %23845, %23847
  %23849 = sext i32 %23848 to i64
  %23850 = getelementptr inbounds double, ptr %23844, i64 %23849
  %23851 = load double, ptr %23850, align 8, !tbaa !11
  %23852 = call double @llvm.fmuladd.f64(double 0xBFD41C0D131D427F, double %23851, double %23843)
  %23853 = load ptr, ptr %7, align 8, !tbaa !9
  %23854 = load i32, ptr %12, align 4, !tbaa !5
  %23855 = load i32, ptr %8, align 4, !tbaa !5
  %23856 = mul nsw i32 38, %23855
  %23857 = add nsw i32 %23854, %23856
  %23858 = sext i32 %23857 to i64
  %23859 = getelementptr inbounds double, ptr %23853, i64 %23858
  %23860 = load double, ptr %23859, align 8, !tbaa !11
  %23861 = call double @llvm.fmuladd.f64(double 0x3F9854E0ADA34BA6, double %23860, double %23852)
  %23862 = load ptr, ptr %7, align 8, !tbaa !9
  %23863 = load i32, ptr %12, align 4, !tbaa !5
  %23864 = load i32, ptr %8, align 4, !tbaa !5
  %23865 = mul nsw i32 39, %23864
  %23866 = add nsw i32 %23863, %23865
  %23867 = sext i32 %23866 to i64
  %23868 = getelementptr inbounds double, ptr %23862, i64 %23867
  %23869 = load double, ptr %23868, align 8, !tbaa !11
  %23870 = call double @llvm.fmuladd.f64(double 0x3FC36A9134CD3C63, double %23869, double %23861)
  store double %23870, ptr %11, align 8, !tbaa !11
  %23871 = load double, ptr %11, align 8, !tbaa !11
  %23872 = load ptr, ptr %9, align 8, !tbaa !9
  %23873 = load i32, ptr %12, align 4, !tbaa !5
  %23874 = load i32, ptr %10, align 4, !tbaa !5
  %23875 = mul nsw i32 65, %23874
  %23876 = add nsw i32 %23873, %23875
  %23877 = sext i32 %23876 to i64
  %23878 = getelementptr inbounds double, ptr %23872, i64 %23877
  %23879 = load double, ptr %23878, align 8, !tbaa !11
  %23880 = fadd double %23879, %23871
  store double %23880, ptr %23878, align 8, !tbaa !11
  %23881 = load ptr, ptr %7, align 8, !tbaa !9
  %23882 = load i32, ptr %12, align 4, !tbaa !5
  %23883 = load i32, ptr %8, align 4, !tbaa !5
  %23884 = mul nsw i32 0, %23883
  %23885 = add nsw i32 %23882, %23884
  %23886 = sext i32 %23885 to i64
  %23887 = getelementptr inbounds double, ptr %23881, i64 %23886
  %23888 = load double, ptr %23887, align 8, !tbaa !11
  %23889 = load ptr, ptr %7, align 8, !tbaa !9
  %23890 = load i32, ptr %12, align 4, !tbaa !5
  %23891 = load i32, ptr %8, align 4, !tbaa !5
  %23892 = mul nsw i32 1, %23891
  %23893 = add nsw i32 %23890, %23892
  %23894 = sext i32 %23893 to i64
  %23895 = getelementptr inbounds double, ptr %23889, i64 %23894
  %23896 = load double, ptr %23895, align 8, !tbaa !11
  %23897 = fmul double 0x3CAB800000000001, %23896
  %23898 = call double @llvm.fmuladd.f64(double 0x3CAF000000000001, double %23888, double %23897)
  %23899 = load ptr, ptr %7, align 8, !tbaa !9
  %23900 = load i32, ptr %12, align 4, !tbaa !5
  %23901 = load i32, ptr %8, align 4, !tbaa !5
  %23902 = mul nsw i32 2, %23901
  %23903 = add nsw i32 %23900, %23902
  %23904 = sext i32 %23903 to i64
  %23905 = getelementptr inbounds double, ptr %23899, i64 %23904
  %23906 = load double, ptr %23905, align 8, !tbaa !11
  %23907 = call double @llvm.fmuladd.f64(double 0x3CADDFFFFFFFFFFE, double %23906, double %23898)
  %23908 = load ptr, ptr %7, align 8, !tbaa !9
  %23909 = load i32, ptr %12, align 4, !tbaa !5
  %23910 = load i32, ptr %8, align 4, !tbaa !5
  %23911 = mul nsw i32 3, %23910
  %23912 = add nsw i32 %23909, %23911
  %23913 = sext i32 %23912 to i64
  %23914 = getelementptr inbounds double, ptr %23908, i64 %23913
  %23915 = load double, ptr %23914, align 8, !tbaa !11
  %23916 = call double @llvm.fmuladd.f64(double 0xBCC7780000000000, double %23915, double %23907)
  %23917 = load ptr, ptr %7, align 8, !tbaa !9
  %23918 = load i32, ptr %12, align 4, !tbaa !5
  %23919 = load i32, ptr %8, align 4, !tbaa !5
  %23920 = mul nsw i32 4, %23919
  %23921 = add nsw i32 %23918, %23920
  %23922 = sext i32 %23921 to i64
  %23923 = getelementptr inbounds double, ptr %23917, i64 %23922
  %23924 = load double, ptr %23923, align 8, !tbaa !11
  %23925 = call double @llvm.fmuladd.f64(double 0x3CC2900000000000, double %23924, double %23916)
  %23926 = load ptr, ptr %7, align 8, !tbaa !9
  %23927 = load i32, ptr %12, align 4, !tbaa !5
  %23928 = load i32, ptr %8, align 4, !tbaa !5
  %23929 = mul nsw i32 5, %23928
  %23930 = add nsw i32 %23927, %23929
  %23931 = sext i32 %23930 to i64
  %23932 = getelementptr inbounds double, ptr %23926, i64 %23931
  %23933 = load double, ptr %23932, align 8, !tbaa !11
  %23934 = call double @llvm.fmuladd.f64(double 0xBC94800000000000, double %23933, double %23925)
  %23935 = load ptr, ptr %7, align 8, !tbaa !9
  %23936 = load i32, ptr %12, align 4, !tbaa !5
  %23937 = load i32, ptr %8, align 4, !tbaa !5
  %23938 = mul nsw i32 6, %23937
  %23939 = add nsw i32 %23936, %23938
  %23940 = sext i32 %23939 to i64
  %23941 = getelementptr inbounds double, ptr %23935, i64 %23940
  %23942 = load double, ptr %23941, align 8, !tbaa !11
  %23943 = call double @llvm.fmuladd.f64(double 0x3C66000000000000, double %23942, double %23934)
  %23944 = load ptr, ptr %7, align 8, !tbaa !9
  %23945 = load i32, ptr %12, align 4, !tbaa !5
  %23946 = load i32, ptr %8, align 4, !tbaa !5
  %23947 = mul nsw i32 7, %23946
  %23948 = add nsw i32 %23945, %23947
  %23949 = sext i32 %23948 to i64
  %23950 = getelementptr inbounds double, ptr %23944, i64 %23949
  %23951 = load double, ptr %23950, align 8, !tbaa !11
  %23952 = call double @llvm.fmuladd.f64(double 0xBCB42FFFFFFFFFFF, double %23951, double %23943)
  %23953 = load ptr, ptr %7, align 8, !tbaa !9
  %23954 = load i32, ptr %12, align 4, !tbaa !5
  %23955 = load i32, ptr %8, align 4, !tbaa !5
  %23956 = mul nsw i32 8, %23955
  %23957 = add nsw i32 %23954, %23956
  %23958 = sext i32 %23957 to i64
  %23959 = getelementptr inbounds double, ptr %23953, i64 %23958
  %23960 = load double, ptr %23959, align 8, !tbaa !11
  %23961 = call double @llvm.fmuladd.f64(double 0xBCAA800000000002, double %23960, double %23952)
  %23962 = load ptr, ptr %7, align 8, !tbaa !9
  %23963 = load i32, ptr %12, align 4, !tbaa !5
  %23964 = load i32, ptr %8, align 4, !tbaa !5
  %23965 = mul nsw i32 9, %23964
  %23966 = add nsw i32 %23963, %23965
  %23967 = sext i32 %23966 to i64
  %23968 = getelementptr inbounds double, ptr %23962, i64 %23967
  %23969 = load double, ptr %23968, align 8, !tbaa !11
  %23970 = call double @llvm.fmuladd.f64(double 0xBCB3C00000000000, double %23969, double %23961)
  %23971 = load ptr, ptr %7, align 8, !tbaa !9
  %23972 = load i32, ptr %12, align 4, !tbaa !5
  %23973 = load i32, ptr %8, align 4, !tbaa !5
  %23974 = mul nsw i32 10, %23973
  %23975 = add nsw i32 %23972, %23974
  %23976 = sext i32 %23975 to i64
  %23977 = getelementptr inbounds double, ptr %23971, i64 %23976
  %23978 = load double, ptr %23977, align 8, !tbaa !11
  %23979 = call double @llvm.fmuladd.f64(double 0x3CC6C00000000000, double %23978, double %23970)
  %23980 = load ptr, ptr %7, align 8, !tbaa !9
  %23981 = load i32, ptr %12, align 4, !tbaa !5
  %23982 = load i32, ptr %8, align 4, !tbaa !5
  %23983 = mul nsw i32 11, %23982
  %23984 = add nsw i32 %23981, %23983
  %23985 = sext i32 %23984 to i64
  %23986 = getelementptr inbounds double, ptr %23980, i64 %23985
  %23987 = load double, ptr %23986, align 8, !tbaa !11
  %23988 = call double @llvm.fmuladd.f64(double 0x3C9DFFFFFFFFFFFE, double %23987, double %23979)
  %23989 = load ptr, ptr %7, align 8, !tbaa !9
  %23990 = load i32, ptr %12, align 4, !tbaa !5
  %23991 = load i32, ptr %8, align 4, !tbaa !5
  %23992 = mul nsw i32 12, %23991
  %23993 = add nsw i32 %23990, %23992
  %23994 = sext i32 %23993 to i64
  %23995 = getelementptr inbounds double, ptr %23989, i64 %23994
  %23996 = load double, ptr %23995, align 8, !tbaa !11
  %23997 = call double @llvm.fmuladd.f64(double 0x3CB6200000000001, double %23996, double %23988)
  %23998 = load ptr, ptr %7, align 8, !tbaa !9
  %23999 = load i32, ptr %12, align 4, !tbaa !5
  %24000 = load i32, ptr %8, align 4, !tbaa !5
  %24001 = mul nsw i32 13, %24000
  %24002 = add nsw i32 %23999, %24001
  %24003 = sext i32 %24002 to i64
  %24004 = getelementptr inbounds double, ptr %23998, i64 %24003
  %24005 = load double, ptr %24004, align 8, !tbaa !11
  %24006 = call double @llvm.fmuladd.f64(double 0x3C89FFFFFFFFFFFF, double %24005, double %23997)
  %24007 = load ptr, ptr %7, align 8, !tbaa !9
  %24008 = load i32, ptr %12, align 4, !tbaa !5
  %24009 = load i32, ptr %8, align 4, !tbaa !5
  %24010 = mul nsw i32 14, %24009
  %24011 = add nsw i32 %24008, %24010
  %24012 = sext i32 %24011 to i64
  %24013 = getelementptr inbounds double, ptr %24007, i64 %24012
  %24014 = load double, ptr %24013, align 8, !tbaa !11
  %24015 = call double @llvm.fmuladd.f64(double 0xBCB5800000000000, double %24014, double %24006)
  %24016 = load ptr, ptr %7, align 8, !tbaa !9
  %24017 = load i32, ptr %12, align 4, !tbaa !5
  %24018 = load i32, ptr %8, align 4, !tbaa !5
  %24019 = mul nsw i32 15, %24018
  %24020 = add nsw i32 %24017, %24019
  %24021 = sext i32 %24020 to i64
  %24022 = getelementptr inbounds double, ptr %24016, i64 %24021
  %24023 = load double, ptr %24022, align 8, !tbaa !11
  %24024 = call double @llvm.fmuladd.f64(double 0xBCA5FFFFFFFFFFFF, double %24023, double %24015)
  %24025 = load ptr, ptr %7, align 8, !tbaa !9
  %24026 = load i32, ptr %12, align 4, !tbaa !5
  %24027 = load i32, ptr %8, align 4, !tbaa !5
  %24028 = mul nsw i32 16, %24027
  %24029 = add nsw i32 %24026, %24028
  %24030 = sext i32 %24029 to i64
  %24031 = getelementptr inbounds double, ptr %24025, i64 %24030
  %24032 = load double, ptr %24031, align 8, !tbaa !11
  %24033 = call double @llvm.fmuladd.f64(double 0x3CA4800000000001, double %24032, double %24024)
  %24034 = load ptr, ptr %7, align 8, !tbaa !9
  %24035 = load i32, ptr %12, align 4, !tbaa !5
  %24036 = load i32, ptr %8, align 4, !tbaa !5
  %24037 = mul nsw i32 17, %24036
  %24038 = add nsw i32 %24035, %24037
  %24039 = sext i32 %24038 to i64
  %24040 = getelementptr inbounds double, ptr %24034, i64 %24039
  %24041 = load double, ptr %24040, align 8, !tbaa !11
  %24042 = call double @llvm.fmuladd.f64(double 0xBCB27FFFFFFFFFFF, double %24041, double %24033)
  %24043 = load ptr, ptr %7, align 8, !tbaa !9
  %24044 = load i32, ptr %12, align 4, !tbaa !5
  %24045 = load i32, ptr %8, align 4, !tbaa !5
  %24046 = mul nsw i32 18, %24045
  %24047 = add nsw i32 %24044, %24046
  %24048 = sext i32 %24047 to i64
  %24049 = getelementptr inbounds double, ptr %24043, i64 %24048
  %24050 = load double, ptr %24049, align 8, !tbaa !11
  %24051 = call double @llvm.fmuladd.f64(double 0xBCB1000000000001, double %24050, double %24042)
  %24052 = load ptr, ptr %7, align 8, !tbaa !9
  %24053 = load i32, ptr %12, align 4, !tbaa !5
  %24054 = load i32, ptr %8, align 4, !tbaa !5
  %24055 = mul nsw i32 19, %24054
  %24056 = add nsw i32 %24053, %24055
  %24057 = sext i32 %24056 to i64
  %24058 = getelementptr inbounds double, ptr %24052, i64 %24057
  %24059 = load double, ptr %24058, align 8, !tbaa !11
  %24060 = call double @llvm.fmuladd.f64(double 0x3CB3800000000000, double %24059, double %24051)
  %24061 = load ptr, ptr %7, align 8, !tbaa !9
  %24062 = load i32, ptr %12, align 4, !tbaa !5
  %24063 = load i32, ptr %8, align 4, !tbaa !5
  %24064 = mul nsw i32 20, %24063
  %24065 = add nsw i32 %24062, %24064
  %24066 = sext i32 %24065 to i64
  %24067 = getelementptr inbounds double, ptr %24061, i64 %24066
  %24068 = load double, ptr %24067, align 8, !tbaa !11
  %24069 = call double @llvm.fmuladd.f64(double 0xBCC6C00000000000, double %24068, double %24060)
  %24070 = load ptr, ptr %7, align 8, !tbaa !9
  %24071 = load i32, ptr %12, align 4, !tbaa !5
  %24072 = load i32, ptr %8, align 4, !tbaa !5
  %24073 = mul nsw i32 21, %24072
  %24074 = add nsw i32 %24071, %24073
  %24075 = sext i32 %24074 to i64
  %24076 = getelementptr inbounds double, ptr %24070, i64 %24075
  %24077 = load double, ptr %24076, align 8, !tbaa !11
  %24078 = call double @llvm.fmuladd.f64(double 0xBCAF000000000001, double %24077, double %24069)
  %24079 = load ptr, ptr %7, align 8, !tbaa !9
  %24080 = load i32, ptr %12, align 4, !tbaa !5
  %24081 = load i32, ptr %8, align 4, !tbaa !5
  %24082 = mul nsw i32 22, %24081
  %24083 = add nsw i32 %24080, %24082
  %24084 = sext i32 %24083 to i64
  %24085 = getelementptr inbounds double, ptr %24079, i64 %24084
  %24086 = load double, ptr %24085, align 8, !tbaa !11
  %24087 = call double @llvm.fmuladd.f64(double 0xBCB5400000000000, double %24086, double %24078)
  %24088 = load ptr, ptr %7, align 8, !tbaa !9
  %24089 = load i32, ptr %12, align 4, !tbaa !5
  %24090 = load i32, ptr %8, align 4, !tbaa !5
  %24091 = mul nsw i32 23, %24090
  %24092 = add nsw i32 %24089, %24091
  %24093 = sext i32 %24092 to i64
  %24094 = getelementptr inbounds double, ptr %24088, i64 %24093
  %24095 = load double, ptr %24094, align 8, !tbaa !11
  %24096 = call double @llvm.fmuladd.f64(double 0x3CB5600000000000, double %24095, double %24087)
  %24097 = load ptr, ptr %7, align 8, !tbaa !9
  %24098 = load i32, ptr %12, align 4, !tbaa !5
  %24099 = load i32, ptr %8, align 4, !tbaa !5
  %24100 = mul nsw i32 24, %24099
  %24101 = add nsw i32 %24098, %24100
  %24102 = sext i32 %24101 to i64
  %24103 = getelementptr inbounds double, ptr %24097, i64 %24102
  %24104 = load double, ptr %24103, align 8, !tbaa !11
  %24105 = call double @llvm.fmuladd.f64(double 0x3C96000000000000, double %24104, double %24096)
  %24106 = load ptr, ptr %7, align 8, !tbaa !9
  %24107 = load i32, ptr %12, align 4, !tbaa !5
  %24108 = load i32, ptr %8, align 4, !tbaa !5
  %24109 = mul nsw i32 25, %24108
  %24110 = add nsw i32 %24107, %24109
  %24111 = sext i32 %24110 to i64
  %24112 = getelementptr inbounds double, ptr %24106, i64 %24111
  %24113 = load double, ptr %24112, align 8, !tbaa !11
  %24114 = call double @llvm.fmuladd.f64(double 0x3CB8000000000001, double %24113, double %24105)
  %24115 = load ptr, ptr %7, align 8, !tbaa !9
  %24116 = load i32, ptr %12, align 4, !tbaa !5
  %24117 = load i32, ptr %8, align 4, !tbaa !5
  %24118 = mul nsw i32 26, %24117
  %24119 = add nsw i32 %24116, %24118
  %24120 = sext i32 %24119 to i64
  %24121 = getelementptr inbounds double, ptr %24115, i64 %24120
  %24122 = load double, ptr %24121, align 8, !tbaa !11
  %24123 = call double @llvm.fmuladd.f64(double 0xBC79FFFFFFFFFFFF, double %24122, double %24114)
  %24124 = load ptr, ptr %7, align 8, !tbaa !9
  %24125 = load i32, ptr %12, align 4, !tbaa !5
  %24126 = load i32, ptr %8, align 4, !tbaa !5
  %24127 = mul nsw i32 27, %24126
  %24128 = add nsw i32 %24125, %24127
  %24129 = sext i32 %24128 to i64
  %24130 = getelementptr inbounds double, ptr %24124, i64 %24129
  %24131 = load double, ptr %24130, align 8, !tbaa !11
  %24132 = call double @llvm.fmuladd.f64(double 0x3CB77FFFFFFFFFFF, double %24131, double %24123)
  %24133 = load ptr, ptr %7, align 8, !tbaa !9
  %24134 = load i32, ptr %12, align 4, !tbaa !5
  %24135 = load i32, ptr %8, align 4, !tbaa !5
  %24136 = mul nsw i32 28, %24135
  %24137 = add nsw i32 %24134, %24136
  %24138 = sext i32 %24137 to i64
  %24139 = getelementptr inbounds double, ptr %24133, i64 %24138
  %24140 = load double, ptr %24139, align 8, !tbaa !11
  %24141 = call double @llvm.fmuladd.f64(double 0xBCA2000000000000, double %24140, double %24132)
  %24142 = load ptr, ptr %7, align 8, !tbaa !9
  %24143 = load i32, ptr %12, align 4, !tbaa !5
  %24144 = load i32, ptr %8, align 4, !tbaa !5
  %24145 = mul nsw i32 29, %24144
  %24146 = add nsw i32 %24143, %24145
  %24147 = sext i32 %24146 to i64
  %24148 = getelementptr inbounds double, ptr %24142, i64 %24147
  %24149 = load double, ptr %24148, align 8, !tbaa !11
  %24150 = call double @llvm.fmuladd.f64(double 0x3CA1000000000001, double %24149, double %24141)
  %24151 = load ptr, ptr %7, align 8, !tbaa !9
  %24152 = load i32, ptr %12, align 4, !tbaa !5
  %24153 = load i32, ptr %8, align 4, !tbaa !5
  %24154 = mul nsw i32 30, %24153
  %24155 = add nsw i32 %24152, %24154
  %24156 = sext i32 %24155 to i64
  %24157 = getelementptr inbounds double, ptr %24151, i64 %24156
  %24158 = load double, ptr %24157, align 8, !tbaa !11
  %24159 = call double @llvm.fmuladd.f64(double 0xBFE333710B32A2A1, double %24158, double %24150)
  %24160 = load ptr, ptr %7, align 8, !tbaa !9
  %24161 = load i32, ptr %12, align 4, !tbaa !5
  %24162 = load i32, ptr %8, align 4, !tbaa !5
  %24163 = mul nsw i32 31, %24162
  %24164 = add nsw i32 %24161, %24163
  %24165 = sext i32 %24164 to i64
  %24166 = getelementptr inbounds double, ptr %24160, i64 %24165
  %24167 = load double, ptr %24166, align 8, !tbaa !11
  %24168 = call double @llvm.fmuladd.f64(double 0x3FA87D764354851C, double %24167, double %24159)
  %24169 = load ptr, ptr %7, align 8, !tbaa !9
  %24170 = load i32, ptr %12, align 4, !tbaa !5
  %24171 = load i32, ptr %8, align 4, !tbaa !5
  %24172 = mul nsw i32 32, %24171
  %24173 = add nsw i32 %24170, %24172
  %24174 = sext i32 %24173 to i64
  %24175 = getelementptr inbounds double, ptr %24169, i64 %24174
  %24176 = load double, ptr %24175, align 8, !tbaa !11
  %24177 = call double @llvm.fmuladd.f64(double 0xBFA352D4DB969BF9, double %24176, double %24168)
  %24178 = load ptr, ptr %7, align 8, !tbaa !9
  %24179 = load i32, ptr %12, align 4, !tbaa !5
  %24180 = load i32, ptr %8, align 4, !tbaa !5
  %24181 = mul nsw i32 33, %24180
  %24182 = add nsw i32 %24179, %24181
  %24183 = sext i32 %24182 to i64
  %24184 = getelementptr inbounds double, ptr %24178, i64 %24183
  %24185 = load double, ptr %24184, align 8, !tbaa !11
  %24186 = call double @llvm.fmuladd.f64(double 0xBFBEED13A9F0D909, double %24185, double %24177)
  %24187 = load ptr, ptr %7, align 8, !tbaa !9
  %24188 = load i32, ptr %12, align 4, !tbaa !5
  %24189 = load i32, ptr %8, align 4, !tbaa !5
  %24190 = mul nsw i32 34, %24189
  %24191 = add nsw i32 %24188, %24190
  %24192 = sext i32 %24191 to i64
  %24193 = getelementptr inbounds double, ptr %24187, i64 %24192
  %24194 = load double, ptr %24193, align 8, !tbaa !11
  %24195 = call double @llvm.fmuladd.f64(double 0x3FC36A9134CD3C5F, double %24194, double %24186)
  %24196 = load ptr, ptr %7, align 8, !tbaa !9
  %24197 = load i32, ptr %12, align 4, !tbaa !5
  %24198 = load i32, ptr %8, align 4, !tbaa !5
  %24199 = mul nsw i32 35, %24198
  %24200 = add nsw i32 %24197, %24199
  %24201 = sext i32 %24200 to i64
  %24202 = getelementptr inbounds double, ptr %24196, i64 %24201
  %24203 = load double, ptr %24202, align 8, !tbaa !11
  %24204 = call double @llvm.fmuladd.f64(double 0x3FD35DAE88CBA642, double %24203, double %24195)
  %24205 = load ptr, ptr %7, align 8, !tbaa !9
  %24206 = load i32, ptr %12, align 4, !tbaa !5
  %24207 = load i32, ptr %8, align 4, !tbaa !5
  %24208 = mul nsw i32 36, %24207
  %24209 = add nsw i32 %24206, %24208
  %24210 = sext i32 %24209 to i64
  %24211 = getelementptr inbounds double, ptr %24205, i64 %24210
  %24212 = load double, ptr %24211, align 8, !tbaa !11
  %24213 = call double @llvm.fmuladd.f64(double 0x3FC27B05E24EC5E9, double %24212, double %24204)
  %24214 = load ptr, ptr %7, align 8, !tbaa !9
  %24215 = load i32, ptr %12, align 4, !tbaa !5
  %24216 = load i32, ptr %8, align 4, !tbaa !5
  %24217 = mul nsw i32 37, %24216
  %24218 = add nsw i32 %24215, %24217
  %24219 = sext i32 %24218 to i64
  %24220 = getelementptr inbounds double, ptr %24214, i64 %24219
  %24221 = load double, ptr %24220, align 8, !tbaa !11
  %24222 = call double @llvm.fmuladd.f64(double 0x3F9854E0ADA34BFA, double %24221, double %24213)
  %24223 = load ptr, ptr %7, align 8, !tbaa !9
  %24224 = load i32, ptr %12, align 4, !tbaa !5
  %24225 = load i32, ptr %8, align 4, !tbaa !5
  %24226 = mul nsw i32 38, %24225
  %24227 = add nsw i32 %24224, %24226
  %24228 = sext i32 %24227 to i64
  %24229 = getelementptr inbounds double, ptr %24223, i64 %24228
  %24230 = load double, ptr %24229, align 8, !tbaa !11
  %24231 = call double @llvm.fmuladd.f64(double 0xBFD41C0D131D4285, double %24230, double %24222)
  %24232 = load ptr, ptr %7, align 8, !tbaa !9
  %24233 = load i32, ptr %12, align 4, !tbaa !5
  %24234 = load i32, ptr %8, align 4, !tbaa !5
  %24235 = mul nsw i32 39, %24234
  %24236 = add nsw i32 %24233, %24235
  %24237 = sext i32 %24236 to i64
  %24238 = getelementptr inbounds double, ptr %24232, i64 %24237
  %24239 = load double, ptr %24238, align 8, !tbaa !11
  %24240 = call double @llvm.fmuladd.f64(double 0x3FF670C5F1F4C92E, double %24239, double %24231)
  store double %24240, ptr %11, align 8, !tbaa !11
  %24241 = load double, ptr %11, align 8, !tbaa !11
  %24242 = load ptr, ptr %9, align 8, !tbaa !9
  %24243 = load i32, ptr %12, align 4, !tbaa !5
  %24244 = load i32, ptr %10, align 4, !tbaa !5
  %24245 = mul nsw i32 66, %24244
  %24246 = add nsw i32 %24243, %24245
  %24247 = sext i32 %24246 to i64
  %24248 = getelementptr inbounds double, ptr %24242, i64 %24247
  %24249 = load double, ptr %24248, align 8, !tbaa !11
  %24250 = fadd double %24249, %24241
  store double %24250, ptr %24248, align 8, !tbaa !11
  %24251 = load ptr, ptr %7, align 8, !tbaa !9
  %24252 = load i32, ptr %12, align 4, !tbaa !5
  %24253 = load i32, ptr %8, align 4, !tbaa !5
  %24254 = mul nsw i32 0, %24253
  %24255 = add nsw i32 %24252, %24254
  %24256 = sext i32 %24255 to i64
  %24257 = getelementptr inbounds double, ptr %24251, i64 %24256
  %24258 = load double, ptr %24257, align 8, !tbaa !11
  %24259 = load ptr, ptr %7, align 8, !tbaa !9
  %24260 = load i32, ptr %12, align 4, !tbaa !5
  %24261 = load i32, ptr %8, align 4, !tbaa !5
  %24262 = mul nsw i32 1, %24261
  %24263 = add nsw i32 %24260, %24262
  %24264 = sext i32 %24263 to i64
  %24265 = getelementptr inbounds double, ptr %24259, i64 %24264
  %24266 = load double, ptr %24265, align 8, !tbaa !11
  %24267 = fmul double 0x3CA1000000000001, %24266
  %24268 = call double @llvm.fmuladd.f64(double 0x3CB3FFFFFFFFFFFF, double %24258, double %24267)
  %24269 = load ptr, ptr %7, align 8, !tbaa !9
  %24270 = load i32, ptr %12, align 4, !tbaa !5
  %24271 = load i32, ptr %8, align 4, !tbaa !5
  %24272 = mul nsw i32 2, %24271
  %24273 = add nsw i32 %24270, %24272
  %24274 = sext i32 %24273 to i64
  %24275 = getelementptr inbounds double, ptr %24269, i64 %24274
  %24276 = load double, ptr %24275, align 8, !tbaa !11
  %24277 = call double @llvm.fmuladd.f64(double 0x3CAF000000000001, double %24276, double %24268)
  %24278 = load ptr, ptr %7, align 8, !tbaa !9
  %24279 = load i32, ptr %12, align 4, !tbaa !5
  %24280 = load i32, ptr %8, align 4, !tbaa !5
  %24281 = mul nsw i32 3, %24280
  %24282 = add nsw i32 %24279, %24281
  %24283 = sext i32 %24282 to i64
  %24284 = getelementptr inbounds double, ptr %24278, i64 %24283
  %24285 = load double, ptr %24284, align 8, !tbaa !11
  %24286 = call double @llvm.fmuladd.f64(double 0xBCB4C00000000000, double %24285, double %24277)
  %24287 = load ptr, ptr %7, align 8, !tbaa !9
  %24288 = load i32, ptr %12, align 4, !tbaa !5
  %24289 = load i32, ptr %8, align 4, !tbaa !5
  %24290 = mul nsw i32 4, %24289
  %24291 = add nsw i32 %24288, %24290
  %24292 = sext i32 %24291 to i64
  %24293 = getelementptr inbounds double, ptr %24287, i64 %24292
  %24294 = load double, ptr %24293, align 8, !tbaa !11
  %24295 = call double @llvm.fmuladd.f64(double 0x3CB5000000000000, double %24294, double %24286)
  %24296 = load ptr, ptr %7, align 8, !tbaa !9
  %24297 = load i32, ptr %12, align 4, !tbaa !5
  %24298 = load i32, ptr %8, align 4, !tbaa !5
  %24299 = mul nsw i32 5, %24298
  %24300 = add nsw i32 %24297, %24299
  %24301 = sext i32 %24300 to i64
  %24302 = getelementptr inbounds double, ptr %24296, i64 %24301
  %24303 = load double, ptr %24302, align 8, !tbaa !11
  %24304 = call double @llvm.fmuladd.f64(double 0x3C7FFFFFFFFFFFFF, double %24303, double %24295)
  %24305 = load ptr, ptr %7, align 8, !tbaa !9
  %24306 = load i32, ptr %12, align 4, !tbaa !5
  %24307 = load i32, ptr %8, align 4, !tbaa !5
  %24308 = mul nsw i32 7, %24307
  %24309 = add nsw i32 %24306, %24308
  %24310 = sext i32 %24309 to i64
  %24311 = getelementptr inbounds double, ptr %24305, i64 %24310
  %24312 = load double, ptr %24311, align 8, !tbaa !11
  %24313 = call double @llvm.fmuladd.f64(double 0xBC94000000000000, double %24312, double %24304)
  %24314 = load ptr, ptr %7, align 8, !tbaa !9
  %24315 = load i32, ptr %12, align 4, !tbaa !5
  %24316 = load i32, ptr %8, align 4, !tbaa !5
  %24317 = mul nsw i32 8, %24316
  %24318 = add nsw i32 %24315, %24317
  %24319 = sext i32 %24318 to i64
  %24320 = getelementptr inbounds double, ptr %24314, i64 %24319
  %24321 = load double, ptr %24320, align 8, !tbaa !11
  %24322 = call double @llvm.fmuladd.f64(double 0xBCB5FFFFFFFFFFFF, double %24321, double %24313)
  %24323 = load ptr, ptr %7, align 8, !tbaa !9
  %24324 = load i32, ptr %12, align 4, !tbaa !5
  %24325 = load i32, ptr %8, align 4, !tbaa !5
  %24326 = mul nsw i32 9, %24325
  %24327 = add nsw i32 %24324, %24326
  %24328 = sext i32 %24327 to i64
  %24329 = getelementptr inbounds double, ptr %24323, i64 %24328
  %24330 = load double, ptr %24329, align 8, !tbaa !11
  %24331 = call double @llvm.fmuladd.f64(double 0xBCB7000000000000, double %24330, double %24322)
  %24332 = load ptr, ptr %7, align 8, !tbaa !9
  %24333 = load i32, ptr %12, align 4, !tbaa !5
  %24334 = load i32, ptr %8, align 4, !tbaa !5
  %24335 = mul nsw i32 10, %24334
  %24336 = add nsw i32 %24333, %24335
  %24337 = sext i32 %24336 to i64
  %24338 = getelementptr inbounds double, ptr %24332, i64 %24337
  %24339 = load double, ptr %24338, align 8, !tbaa !11
  %24340 = call double @llvm.fmuladd.f64(double 0xBCAC000000000000, double %24339, double %24331)
  %24341 = load ptr, ptr %7, align 8, !tbaa !9
  %24342 = load i32, ptr %12, align 4, !tbaa !5
  %24343 = load i32, ptr %8, align 4, !tbaa !5
  %24344 = mul nsw i32 11, %24343
  %24345 = add nsw i32 %24342, %24344
  %24346 = sext i32 %24345 to i64
  %24347 = getelementptr inbounds double, ptr %24341, i64 %24346
  %24348 = load double, ptr %24347, align 8, !tbaa !11
  %24349 = call double @llvm.fmuladd.f64(double 0x3CA8000000000001, double %24348, double %24340)
  %24350 = load ptr, ptr %7, align 8, !tbaa !9
  %24351 = load i32, ptr %12, align 4, !tbaa !5
  %24352 = load i32, ptr %8, align 4, !tbaa !5
  %24353 = mul nsw i32 12, %24352
  %24354 = add nsw i32 %24351, %24353
  %24355 = sext i32 %24354 to i64
  %24356 = getelementptr inbounds double, ptr %24350, i64 %24355
  %24357 = load double, ptr %24356, align 8, !tbaa !11
  %24358 = call double @llvm.fmuladd.f64(double 0x3CA4000000000001, double %24357, double %24349)
  %24359 = load ptr, ptr %7, align 8, !tbaa !9
  %24360 = load i32, ptr %12, align 4, !tbaa !5
  %24361 = load i32, ptr %8, align 4, !tbaa !5
  %24362 = mul nsw i32 13, %24361
  %24363 = add nsw i32 %24360, %24362
  %24364 = sext i32 %24363 to i64
  %24365 = getelementptr inbounds double, ptr %24359, i64 %24364
  %24366 = load double, ptr %24365, align 8, !tbaa !11
  %24367 = call double @llvm.fmuladd.f64(double 0xBC99000000000000, double %24366, double %24358)
  %24368 = load ptr, ptr %7, align 8, !tbaa !9
  %24369 = load i32, ptr %12, align 4, !tbaa !5
  %24370 = load i32, ptr %8, align 4, !tbaa !5
  %24371 = mul nsw i32 14, %24370
  %24372 = add nsw i32 %24369, %24371
  %24373 = sext i32 %24372 to i64
  %24374 = getelementptr inbounds double, ptr %24368, i64 %24373
  %24375 = load double, ptr %24374, align 8, !tbaa !11
  %24376 = call double @llvm.fmuladd.f64(double 0xBCB8000000000001, double %24375, double %24367)
  %24377 = load ptr, ptr %7, align 8, !tbaa !9
  %24378 = load i32, ptr %12, align 4, !tbaa !5
  %24379 = load i32, ptr %8, align 4, !tbaa !5
  %24380 = mul nsw i32 16, %24379
  %24381 = add nsw i32 %24378, %24380
  %24382 = sext i32 %24381 to i64
  %24383 = getelementptr inbounds double, ptr %24377, i64 %24382
  %24384 = load double, ptr %24383, align 8, !tbaa !11
  %24385 = call double @llvm.fmuladd.f64(double 0x3CB0000000000000, double %24384, double %24376)
  %24386 = load ptr, ptr %7, align 8, !tbaa !9
  %24387 = load i32, ptr %12, align 4, !tbaa !5
  %24388 = load i32, ptr %8, align 4, !tbaa !5
  %24389 = mul nsw i32 17, %24388
  %24390 = add nsw i32 %24387, %24389
  %24391 = sext i32 %24390 to i64
  %24392 = getelementptr inbounds double, ptr %24386, i64 %24391
  %24393 = load double, ptr %24392, align 8, !tbaa !11
  %24394 = call double @llvm.fmuladd.f64(double 0xBC96000000000000, double %24393, double %24385)
  %24395 = load ptr, ptr %7, align 8, !tbaa !9
  %24396 = load i32, ptr %12, align 4, !tbaa !5
  %24397 = load i32, ptr %8, align 4, !tbaa !5
  %24398 = mul nsw i32 18, %24397
  %24399 = add nsw i32 %24396, %24398
  %24400 = sext i32 %24399 to i64
  %24401 = getelementptr inbounds double, ptr %24395, i64 %24400
  %24402 = load double, ptr %24401, align 8, !tbaa !11
  %24403 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %24402, double %24394)
  %24404 = load ptr, ptr %7, align 8, !tbaa !9
  %24405 = load i32, ptr %12, align 4, !tbaa !5
  %24406 = load i32, ptr %8, align 4, !tbaa !5
  %24407 = mul nsw i32 19, %24406
  %24408 = add nsw i32 %24405, %24407
  %24409 = sext i32 %24408 to i64
  %24410 = getelementptr inbounds double, ptr %24404, i64 %24409
  %24411 = load double, ptr %24410, align 8, !tbaa !11
  %24412 = call double @llvm.fmuladd.f64(double 0x3CA0000000000002, double %24411, double %24403)
  %24413 = load ptr, ptr %7, align 8, !tbaa !9
  %24414 = load i32, ptr %12, align 4, !tbaa !5
  %24415 = load i32, ptr %8, align 4, !tbaa !5
  %24416 = mul nsw i32 20, %24415
  %24417 = add nsw i32 %24414, %24416
  %24418 = sext i32 %24417 to i64
  %24419 = getelementptr inbounds double, ptr %24413, i64 %24418
  %24420 = load double, ptr %24419, align 8, !tbaa !11
  %24421 = call double @llvm.fmuladd.f64(double 0xBCA4000000000001, double %24420, double %24412)
  %24422 = load ptr, ptr %7, align 8, !tbaa !9
  %24423 = load i32, ptr %12, align 4, !tbaa !5
  %24424 = load i32, ptr %8, align 4, !tbaa !5
  %24425 = mul nsw i32 21, %24424
  %24426 = add nsw i32 %24423, %24425
  %24427 = sext i32 %24426 to i64
  %24428 = getelementptr inbounds double, ptr %24422, i64 %24427
  %24429 = load double, ptr %24428, align 8, !tbaa !11
  %24430 = call double @llvm.fmuladd.f64(double 0x3CB0000000000000, double %24429, double %24421)
  %24431 = load ptr, ptr %7, align 8, !tbaa !9
  %24432 = load i32, ptr %12, align 4, !tbaa !5
  %24433 = load i32, ptr %8, align 4, !tbaa !5
  %24434 = mul nsw i32 22, %24433
  %24435 = add nsw i32 %24432, %24434
  %24436 = sext i32 %24435 to i64
  %24437 = getelementptr inbounds double, ptr %24431, i64 %24436
  %24438 = load double, ptr %24437, align 8, !tbaa !11
  %24439 = call double @llvm.fmuladd.f64(double 0xBC9A000000000000, double %24438, double %24430)
  %24440 = load ptr, ptr %7, align 8, !tbaa !9
  %24441 = load i32, ptr %12, align 4, !tbaa !5
  %24442 = load i32, ptr %8, align 4, !tbaa !5
  %24443 = mul nsw i32 23, %24442
  %24444 = add nsw i32 %24441, %24443
  %24445 = sext i32 %24444 to i64
  %24446 = getelementptr inbounds double, ptr %24440, i64 %24445
  %24447 = load double, ptr %24446, align 8, !tbaa !11
  %24448 = call double @llvm.fmuladd.f64(double 0x3C82000000000000, double %24447, double %24439)
  %24449 = load ptr, ptr %7, align 8, !tbaa !9
  %24450 = load i32, ptr %12, align 4, !tbaa !5
  %24451 = load i32, ptr %8, align 4, !tbaa !5
  %24452 = mul nsw i32 24, %24451
  %24453 = add nsw i32 %24450, %24452
  %24454 = sext i32 %24453 to i64
  %24455 = getelementptr inbounds double, ptr %24449, i64 %24454
  %24456 = load double, ptr %24455, align 8, !tbaa !11
  %24457 = call double @llvm.fmuladd.f64(double 0x3C98000000000000, double %24456, double %24448)
  %24458 = load ptr, ptr %7, align 8, !tbaa !9
  %24459 = load i32, ptr %12, align 4, !tbaa !5
  %24460 = load i32, ptr %8, align 4, !tbaa !5
  %24461 = mul nsw i32 25, %24460
  %24462 = add nsw i32 %24459, %24461
  %24463 = sext i32 %24462 to i64
  %24464 = getelementptr inbounds double, ptr %24458, i64 %24463
  %24465 = load double, ptr %24464, align 8, !tbaa !11
  %24466 = call double @llvm.fmuladd.f64(double 0x3CA2000000000000, double %24465, double %24457)
  %24467 = load ptr, ptr %7, align 8, !tbaa !9
  %24468 = load i32, ptr %12, align 4, !tbaa !5
  %24469 = load i32, ptr %8, align 4, !tbaa !5
  %24470 = mul nsw i32 26, %24469
  %24471 = add nsw i32 %24468, %24470
  %24472 = sext i32 %24471 to i64
  %24473 = getelementptr inbounds double, ptr %24467, i64 %24472
  %24474 = load double, ptr %24473, align 8, !tbaa !11
  %24475 = call double @llvm.fmuladd.f64(double 0xBCA1000000000001, double %24474, double %24466)
  %24476 = load ptr, ptr %7, align 8, !tbaa !9
  %24477 = load i32, ptr %12, align 4, !tbaa !5
  %24478 = load i32, ptr %8, align 4, !tbaa !5
  %24479 = mul nsw i32 27, %24478
  %24480 = add nsw i32 %24477, %24479
  %24481 = sext i32 %24480 to i64
  %24482 = getelementptr inbounds double, ptr %24476, i64 %24481
  %24483 = load double, ptr %24482, align 8, !tbaa !11
  %24484 = call double @llvm.fmuladd.f64(double 0x3CB3800000000000, double %24483, double %24475)
  %24485 = load ptr, ptr %7, align 8, !tbaa !9
  %24486 = load i32, ptr %12, align 4, !tbaa !5
  %24487 = load i32, ptr %8, align 4, !tbaa !5
  %24488 = mul nsw i32 28, %24487
  %24489 = add nsw i32 %24486, %24488
  %24490 = sext i32 %24489 to i64
  %24491 = getelementptr inbounds double, ptr %24485, i64 %24490
  %24492 = load double, ptr %24491, align 8, !tbaa !11
  %24493 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %24492, double %24484)
  %24494 = load ptr, ptr %7, align 8, !tbaa !9
  %24495 = load i32, ptr %12, align 4, !tbaa !5
  %24496 = load i32, ptr %8, align 4, !tbaa !5
  %24497 = mul nsw i32 29, %24496
  %24498 = add nsw i32 %24495, %24497
  %24499 = sext i32 %24498 to i64
  %24500 = getelementptr inbounds double, ptr %24494, i64 %24499
  %24501 = load double, ptr %24500, align 8, !tbaa !11
  %24502 = call double @llvm.fmuladd.f64(double 0x3C98000000000000, double %24501, double %24493)
  %24503 = load ptr, ptr %7, align 8, !tbaa !9
  %24504 = load i32, ptr %12, align 4, !tbaa !5
  %24505 = load i32, ptr %8, align 4, !tbaa !5
  %24506 = mul nsw i32 30, %24505
  %24507 = add nsw i32 %24504, %24506
  %24508 = sext i32 %24507 to i64
  %24509 = getelementptr inbounds double, ptr %24503, i64 %24508
  %24510 = load double, ptr %24509, align 8, !tbaa !11
  %24511 = call double @llvm.fmuladd.f64(double 0xBF83152016E0EC28, double %24510, double %24502)
  %24512 = load ptr, ptr %7, align 8, !tbaa !9
  %24513 = load i32, ptr %12, align 4, !tbaa !5
  %24514 = load i32, ptr %8, align 4, !tbaa !5
  %24515 = mul nsw i32 31, %24514
  %24516 = add nsw i32 %24513, %24515
  %24517 = sext i32 %24516 to i64
  %24518 = getelementptr inbounds double, ptr %24512, i64 %24517
  %24519 = load double, ptr %24518, align 8, !tbaa !11
  %24520 = call double @llvm.fmuladd.f64(double 0x3FF4EC1BB3FDC612, double %24519, double %24511)
  %24521 = load ptr, ptr %7, align 8, !tbaa !9
  %24522 = load i32, ptr %12, align 4, !tbaa !5
  %24523 = load i32, ptr %8, align 4, !tbaa !5
  %24524 = mul nsw i32 32, %24523
  %24525 = add nsw i32 %24522, %24524
  %24526 = sext i32 %24525 to i64
  %24527 = getelementptr inbounds double, ptr %24521, i64 %24526
  %24528 = load double, ptr %24527, align 8, !tbaa !11
  %24529 = call double @llvm.fmuladd.f64(double 0x3F938CE4890DB31F, double %24528, double %24520)
  %24530 = load ptr, ptr %7, align 8, !tbaa !9
  %24531 = load i32, ptr %12, align 4, !tbaa !5
  %24532 = load i32, ptr %8, align 4, !tbaa !5
  %24533 = mul nsw i32 33, %24532
  %24534 = add nsw i32 %24531, %24533
  %24535 = sext i32 %24534 to i64
  %24536 = getelementptr inbounds double, ptr %24530, i64 %24535
  %24537 = load double, ptr %24536, align 8, !tbaa !11
  %24538 = call double @llvm.fmuladd.f64(double 0xBFB5B58B4F03B1A3, double %24537, double %24529)
  %24539 = load ptr, ptr %7, align 8, !tbaa !9
  %24540 = load i32, ptr %12, align 4, !tbaa !5
  %24541 = load i32, ptr %8, align 4, !tbaa !5
  %24542 = mul nsw i32 34, %24541
  %24543 = add nsw i32 %24540, %24542
  %24544 = sext i32 %24543 to i64
  %24545 = getelementptr inbounds double, ptr %24539, i64 %24544
  %24546 = load double, ptr %24545, align 8, !tbaa !11
  %24547 = call double @llvm.fmuladd.f64(double 0xBFB49217631F5946, double %24546, double %24538)
  %24548 = load ptr, ptr %7, align 8, !tbaa !9
  %24549 = load i32, ptr %12, align 4, !tbaa !5
  %24550 = load i32, ptr %8, align 4, !tbaa !5
  %24551 = mul nsw i32 35, %24550
  %24552 = add nsw i32 %24549, %24551
  %24553 = sext i32 %24552 to i64
  %24554 = getelementptr inbounds double, ptr %24548, i64 %24553
  %24555 = load double, ptr %24554, align 8, !tbaa !11
  %24556 = call double @llvm.fmuladd.f64(double 0x3FD417DEBFC17B1A, double %24555, double %24547)
  %24557 = load ptr, ptr %7, align 8, !tbaa !9
  %24558 = load i32, ptr %12, align 4, !tbaa !5
  %24559 = load i32, ptr %8, align 4, !tbaa !5
  %24560 = mul nsw i32 36, %24559
  %24561 = add nsw i32 %24558, %24560
  %24562 = sext i32 %24561 to i64
  %24563 = getelementptr inbounds double, ptr %24557, i64 %24562
  %24564 = load double, ptr %24563, align 8, !tbaa !11
  %24565 = call double @llvm.fmuladd.f64(double 0xBF8BDAF699AECFB6, double %24564, double %24556)
  %24566 = load ptr, ptr %7, align 8, !tbaa !9
  %24567 = load i32, ptr %12, align 4, !tbaa !5
  %24568 = load i32, ptr %8, align 4, !tbaa !5
  %24569 = mul nsw i32 37, %24568
  %24570 = add nsw i32 %24567, %24569
  %24571 = sext i32 %24570 to i64
  %24572 = getelementptr inbounds double, ptr %24566, i64 %24571
  %24573 = load double, ptr %24572, align 8, !tbaa !11
  %24574 = call double @llvm.fmuladd.f64(double 0x3F85E50BB681A390, double %24573, double %24565)
  %24575 = load ptr, ptr %7, align 8, !tbaa !9
  %24576 = load i32, ptr %12, align 4, !tbaa !5
  %24577 = load i32, ptr %8, align 4, !tbaa !5
  %24578 = mul nsw i32 38, %24577
  %24579 = add nsw i32 %24576, %24578
  %24580 = sext i32 %24579 to i64
  %24581 = getelementptr inbounds double, ptr %24575, i64 %24580
  %24582 = load double, ptr %24581, align 8, !tbaa !11
  %24583 = call double @llvm.fmuladd.f64(double 0xBFE5679E70A6065B, double %24582, double %24574)
  %24584 = load ptr, ptr %7, align 8, !tbaa !9
  %24585 = load i32, ptr %12, align 4, !tbaa !5
  %24586 = load i32, ptr %8, align 4, !tbaa !5
  %24587 = mul nsw i32 39, %24586
  %24588 = add nsw i32 %24585, %24587
  %24589 = sext i32 %24588 to i64
  %24590 = getelementptr inbounds double, ptr %24584, i64 %24589
  %24591 = load double, ptr %24590, align 8, !tbaa !11
  %24592 = call double @llvm.fmuladd.f64(double 0x3FCA50C41AB7A329, double %24591, double %24583)
  store double %24592, ptr %11, align 8, !tbaa !11
  %24593 = load double, ptr %11, align 8, !tbaa !11
  %24594 = load ptr, ptr %9, align 8, !tbaa !9
  %24595 = load i32, ptr %12, align 4, !tbaa !5
  %24596 = load i32, ptr %10, align 4, !tbaa !5
  %24597 = mul nsw i32 67, %24596
  %24598 = add nsw i32 %24595, %24597
  %24599 = sext i32 %24598 to i64
  %24600 = getelementptr inbounds double, ptr %24594, i64 %24599
  %24601 = load double, ptr %24600, align 8, !tbaa !11
  %24602 = fadd double %24601, %24593
  store double %24602, ptr %24600, align 8, !tbaa !11
  br label %24603

24603:                                            ; preds = %18
  %24604 = load i32, ptr %12, align 4, !tbaa !5
  %24605 = add nsw i32 %24604, 1
  store i32 %24605, ptr %12, align 4, !tbaa !5
  br label %13, !llvm.loop !13

24606:                                            ; preds = %17
  call void @llvm.lifetime.end.p0(i64 8, ptr %11) #3
  ret void
}

attributes #0 = { nocallback nofree nosync nounwind willreturn memory(argmem: readwrite) }
attributes #1 = { nocallback nofree nosync nounwind speculatable willreturn memory(none) }
attributes #2 = { 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 #3 = { 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 = !{!"any pointer", !7, i64 0}
!11 = !{!12, !12, i64 0}
!12 = !{!"double", !7, i64 0}
!13 = distinct !{!13, !14}
!14 = !{!"llvm.loop.mustprogress"}


; 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 nocallback nofree nosync nounwind speculatable willreturn memory(none)
declare double @llvm.fmuladd.f64(double, double, double) #0

; Function Attrs: nofree norecurse nosync nounwind memory(argmem: readwrite) uwtable
define dso_local void @gimmik_mm_cpu_16172623018483788170_b1(i32 noundef %0, ptr noalias noundef readonly %1, i32 noundef %2, ptr noalias noundef %3, i32 noundef %4) local_unnamed_addr #1 {
  %6 = icmp sgt i32 %0, 0
  br i1 %6, label %.lr.ph, label %._crit_edge

.lr.ph:                                           ; preds = %5
  %7 = shl nsw i32 %2, 1
  %8 = mul nsw i32 %2, 3
  %9 = shl nsw i32 %2, 2
  %10 = mul nsw i32 %2, 5
  %11 = mul nsw i32 %2, 6
  %12 = mul nsw i32 %2, 7
  %13 = shl nsw i32 %2, 3
  %14 = mul nsw i32 %2, 9
  %15 = mul nsw i32 %2, 10
  %16 = mul nsw i32 %2, 11
  %17 = mul nsw i32 %2, 12
  %18 = mul nsw i32 %2, 13
  %19 = mul nsw i32 %2, 15
  %20 = shl nsw i32 %2, 4
  %21 = mul nsw i32 %2, 17
  %22 = mul nsw i32 %2, 19
  %23 = mul nsw i32 %2, 20
  %24 = mul nsw i32 %2, 21
  %25 = mul nsw i32 %2, 22
  %26 = mul nsw i32 %2, 23
  %27 = mul nsw i32 %2, 25
  %28 = mul nsw i32 %2, 26
  %29 = mul nsw i32 %2, 27
  %30 = mul nsw i32 %2, 28
  %31 = mul nsw i32 %2, 30
  %32 = mul nsw i32 %2, 31
  %33 = shl nsw i32 %2, 5
  %34 = mul nsw i32 %2, 33
  %35 = mul nsw i32 %2, 34
  %36 = mul nsw i32 %2, 35
  %37 = mul nsw i32 %2, 36
  %38 = mul nsw i32 %2, 37
  %39 = mul nsw i32 %2, 38
  %40 = mul nsw i32 %2, 39
  %41 = mul nsw i32 %2, 14
  %42 = mul nsw i32 %2, 18
  %43 = mul nsw i32 %2, 24
  %44 = mul nsw i32 %2, 29
  %45 = shl nsw i32 %4, 1
  %46 = mul nsw i32 %4, 3
  %47 = shl nsw i32 %4, 2
  %48 = mul nsw i32 %4, 5
  %49 = mul nsw i32 %4, 6
  %50 = mul nsw i32 %4, 7
  %51 = shl nsw i32 %4, 3
  %52 = mul nsw i32 %4, 9
  %53 = mul nsw i32 %4, 10
  %54 = mul nsw i32 %4, 11
  %55 = mul nsw i32 %4, 12
  %56 = mul nsw i32 %4, 13
  %57 = mul nsw i32 %4, 14
  %58 = mul nsw i32 %4, 15
  %59 = shl nsw i32 %4, 4
  %60 = mul nsw i32 %4, 17
  %61 = mul nsw i32 %4, 18
  %62 = mul nsw i32 %4, 19
  %63 = mul nsw i32 %4, 20
  %64 = mul nsw i32 %4, 21
  %65 = mul nsw i32 %4, 22
  %66 = mul nsw i32 %4, 23
  %67 = mul nsw i32 %4, 24
  %68 = mul nsw i32 %4, 25
  %69 = mul nsw i32 %4, 26
  %70 = mul nsw i32 %4, 27
  %71 = mul nsw i32 %4, 28
  %72 = mul nsw i32 %4, 29
  %73 = mul nsw i32 %4, 30
  %74 = mul nsw i32 %4, 31
  %75 = shl nsw i32 %4, 5
  %76 = mul nsw i32 %4, 33
  %77 = mul nsw i32 %4, 34
  %78 = mul nsw i32 %4, 35
  %79 = mul nsw i32 %4, 36
  %80 = mul nsw i32 %4, 37
  %81 = mul nsw i32 %4, 38
  %82 = mul nsw i32 %4, 39
  %83 = mul nsw i32 %4, 40
  %84 = mul nsw i32 %4, 41
  %85 = mul nsw i32 %4, 42
  %86 = mul nsw i32 %4, 43
  %87 = mul nsw i32 %4, 44
  %88 = mul nsw i32 %4, 45
  %89 = mul nsw i32 %4, 46
  %90 = mul nsw i32 %4, 47
  %91 = mul nsw i32 %4, 48
  %92 = mul nsw i32 %4, 49
  %93 = mul nsw i32 %4, 50
  %94 = mul nsw i32 %4, 51
  %95 = mul nsw i32 %4, 52
  %96 = mul nsw i32 %4, 53
  %97 = mul nsw i32 %4, 54
  %98 = mul nsw i32 %4, 55
  %99 = mul nsw i32 %4, 56
  %100 = mul nsw i32 %4, 57
  %101 = mul nsw i32 %4, 58
  %102 = mul nsw i32 %4, 59
  %103 = mul nsw i32 %4, 60
  %104 = mul nsw i32 %4, 61
  %105 = mul nsw i32 %4, 62
  %106 = mul nsw i32 %4, 63
  %107 = shl nsw i32 %4, 6
  %108 = mul nsw i32 %4, 65
  %109 = mul nsw i32 %4, 66
  %110 = mul nsw i32 %4, 67
  %111 = sext i32 %2 to i64
  %112 = sext i32 %7 to i64
  %113 = sext i32 %8 to i64
  %114 = sext i32 %9 to i64
  %115 = sext i32 %10 to i64
  %116 = sext i32 %11 to i64
  %117 = sext i32 %12 to i64
  %118 = sext i32 %13 to i64
  %119 = sext i32 %14 to i64
  %120 = sext i32 %15 to i64
  %121 = sext i32 %16 to i64
  %122 = sext i32 %17 to i64
  %123 = sext i32 %18 to i64
  %124 = sext i32 %19 to i64
  %125 = sext i32 %20 to i64
  %126 = sext i32 %21 to i64
  %127 = sext i32 %22 to i64
  %128 = sext i32 %23 to i64
  %129 = sext i32 %24 to i64
  %130 = sext i32 %25 to i64
  %131 = sext i32 %26 to i64
  %132 = sext i32 %27 to i64
  %133 = sext i32 %28 to i64
  %134 = sext i32 %29 to i64
  %135 = sext i32 %30 to i64
  %136 = sext i32 %31 to i64
  %137 = sext i32 %32 to i64
  %138 = sext i32 %33 to i64
  %139 = sext i32 %34 to i64
  %140 = sext i32 %35 to i64
  %141 = sext i32 %36 to i64
  %142 = sext i32 %37 to i64
  %143 = sext i32 %38 to i64
  %144 = sext i32 %39 to i64
  %145 = sext i32 %40 to i64
  %146 = sext i32 %41 to i64
  %147 = sext i32 %42 to i64
  %148 = sext i32 %43 to i64
  %149 = sext i32 %44 to i64
  %150 = sext i32 %4 to i64
  %151 = sext i32 %45 to i64
  %152 = sext i32 %46 to i64
  %153 = sext i32 %47 to i64
  %154 = sext i32 %48 to i64
  %155 = sext i32 %49 to i64
  %156 = sext i32 %50 to i64
  %157 = sext i32 %51 to i64
  %158 = sext i32 %52 to i64
  %159 = sext i32 %53 to i64
  %160 = sext i32 %54 to i64
  %161 = sext i32 %55 to i64
  %162 = sext i32 %56 to i64
  %163 = sext i32 %57 to i64
  %164 = sext i32 %58 to i64
  %165 = sext i32 %59 to i64
  %166 = sext i32 %60 to i64
  %167 = sext i32 %61 to i64
  %168 = sext i32 %62 to i64
  %169 = sext i32 %63 to i64
  %170 = sext i32 %64 to i64
  %171 = sext i32 %65 to i64
  %172 = sext i32 %66 to i64
  %173 = sext i32 %67 to i64
  %174 = sext i32 %68 to i64
  %175 = sext i32 %69 to i64
  %176 = sext i32 %70 to i64
  %177 = sext i32 %71 to i64
  %178 = sext i32 %72 to i64
  %179 = sext i32 %73 to i64
  %180 = sext i32 %74 to i64
  %181 = sext i32 %75 to i64
  %182 = sext i32 %76 to i64
  %183 = sext i32 %77 to i64
  %184 = sext i32 %78 to i64
  %185 = sext i32 %79 to i64
  %186 = sext i32 %80 to i64
  %187 = sext i32 %81 to i64
  %188 = sext i32 %82 to i64
  %189 = sext i32 %83 to i64
  %190 = sext i32 %84 to i64
  %191 = sext i32 %85 to i64
  %192 = sext i32 %86 to i64
  %193 = sext i32 %87 to i64
  %194 = sext i32 %88 to i64
  %195 = sext i32 %89 to i64
  %196 = sext i32 %90 to i64
  %197 = sext i32 %91 to i64
  %198 = sext i32 %92 to i64
  %199 = sext i32 %93 to i64
  %200 = sext i32 %94 to i64
  %201 = sext i32 %95 to i64
  %202 = sext i32 %96 to i64
  %203 = sext i32 %97 to i64
  %204 = sext i32 %98 to i64
  %205 = sext i32 %99 to i64
  %206 = sext i32 %100 to i64
  %207 = sext i32 %101 to i64
  %208 = sext i32 %102 to i64
  %209 = sext i32 %103 to i64
  %210 = sext i32 %104 to i64
  %211 = sext i32 %105 to i64
  %212 = sext i32 %106 to i64
  %213 = sext i32 %107 to i64
  %214 = sext i32 %108 to i64
  %215 = sext i32 %109 to i64
  %216 = sext i32 %110 to i64
  %wide.trip.count = zext nneg i32 %0 to i64
  %invariant.gep = getelementptr double, ptr %1, i64 %111
  %invariant.gep8244 = getelementptr double, ptr %1, i64 %112
  %invariant.gep8246 = getelementptr double, ptr %1, i64 %113
  %invariant.gep8248 = getelementptr double, ptr %1, i64 %114
  %invariant.gep8250 = getelementptr double, ptr %1, i64 %115
  %invariant.gep8252 = getelementptr double, ptr %1, i64 %116
  %invariant.gep8254 = getelementptr double, ptr %1, i64 %117
  %invariant.gep8256 = getelementptr double, ptr %1, i64 %118
  %invariant.gep8258 = getelementptr double, ptr %1, i64 %119
  %invariant.gep8260 = getelementptr double, ptr %1, i64 %120
  %invariant.gep8262 = getelementptr double, ptr %1, i64 %121
  %invariant.gep8264 = getelementptr double, ptr %1, i64 %122
  %invariant.gep8266 = getelementptr double, ptr %1, i64 %123
  %invariant.gep8268 = getelementptr double, ptr %1, i64 %124
  %invariant.gep8270 = getelementptr double, ptr %1, i64 %125
  %invariant.gep8272 = getelementptr double, ptr %1, i64 %126
  %invariant.gep8274 = getelementptr double, ptr %1, i64 %127
  %invariant.gep8276 = getelementptr double, ptr %1, i64 %128
  %invariant.gep8278 = getelementptr double, ptr %1, i64 %129
  %invariant.gep8280 = getelementptr double, ptr %1, i64 %130
  %invariant.gep8282 = getelementptr double, ptr %1, i64 %131
  %invariant.gep8284 = getelementptr double, ptr %1, i64 %132
  %invariant.gep8286 = getelementptr double, ptr %1, i64 %133
  %invariant.gep8288 = getelementptr double, ptr %1, i64 %134
  %invariant.gep8290 = getelementptr double, ptr %1, i64 %135
  %invariant.gep8292 = getelementptr double, ptr %1, i64 %136
  %invariant.gep8294 = getelementptr double, ptr %1, i64 %137
  %invariant.gep8296 = getelementptr double, ptr %1, i64 %138
  %invariant.gep8298 = getelementptr double, ptr %1, i64 %139
  %invariant.gep8300 = getelementptr double, ptr %1, i64 %140
  %invariant.gep8302 = getelementptr double, ptr %1, i64 %141
  %invariant.gep8304 = getelementptr double, ptr %1, i64 %142
  %invariant.gep8306 = getelementptr double, ptr %1, i64 %143
  %invariant.gep8308 = getelementptr double, ptr %1, i64 %144
  %invariant.gep8310 = getelementptr double, ptr %1, i64 %145
  %invariant.gep8312 = getelementptr double, ptr %1, i64 %146
  %invariant.gep8314 = getelementptr double, ptr %1, i64 %147
  %invariant.gep8316 = getelementptr double, ptr %1, i64 %148
  %invariant.gep8318 = getelementptr double, ptr %1, i64 %149
  %invariant.gep8320 = getelementptr double, ptr %3, i64 %150
  %invariant.gep8322 = getelementptr double, ptr %3, i64 %151
  %invariant.gep8324 = getelementptr double, ptr %3, i64 %152
  %invariant.gep8326 = getelementptr double, ptr %3, i64 %153
  %invariant.gep8328 = getelementptr double, ptr %3, i64 %154
  %invariant.gep8330 = getelementptr double, ptr %3, i64 %155
  %invariant.gep8332 = getelementptr double, ptr %3, i64 %156
  %invariant.gep8334 = getelementptr double, ptr %3, i64 %157
  %invariant.gep8336 = getelementptr double, ptr %3, i64 %158
  %invariant.gep8338 = getelementptr double, ptr %3, i64 %159
  %invariant.gep8340 = getelementptr double, ptr %3, i64 %160
  %invariant.gep8342 = getelementptr double, ptr %3, i64 %161
  %invariant.gep8344 = getelementptr double, ptr %3, i64 %162
  %invariant.gep8346 = getelementptr double, ptr %3, i64 %163
  %invariant.gep8348 = getelementptr double, ptr %3, i64 %164
  %invariant.gep8350 = getelementptr double, ptr %3, i64 %165
  %invariant.gep8352 = getelementptr double, ptr %3, i64 %166
  %invariant.gep8354 = getelementptr double, ptr %3, i64 %167
  %invariant.gep8356 = getelementptr double, ptr %3, i64 %168
  %invariant.gep8358 = getelementptr double, ptr %3, i64 %169
  %invariant.gep8360 = getelementptr double, ptr %3, i64 %170
  %invariant.gep8362 = getelementptr double, ptr %3, i64 %171
  %invariant.gep8364 = getelementptr double, ptr %3, i64 %172
  %invariant.gep8366 = getelementptr double, ptr %3, i64 %173
  %invariant.gep8368 = getelementptr double, ptr %3, i64 %174
  %invariant.gep8370 = getelementptr double, ptr %3, i64 %175
  %invariant.gep8372 = getelementptr double, ptr %3, i64 %176
  %invariant.gep8374 = getelementptr double, ptr %3, i64 %177
  %invariant.gep8376 = getelementptr double, ptr %3, i64 %178
  %invariant.gep8378 = getelementptr double, ptr %3, i64 %179
  %invariant.gep8380 = getelementptr double, ptr %3, i64 %180
  %invariant.gep8382 = getelementptr double, ptr %3, i64 %181
  %invariant.gep8384 = getelementptr double, ptr %3, i64 %182
  %invariant.gep8386 = getelementptr double, ptr %3, i64 %183
  %invariant.gep8388 = getelementptr double, ptr %3, i64 %184
  %invariant.gep8390 = getelementptr double, ptr %3, i64 %185
  %invariant.gep8392 = getelementptr double, ptr %3, i64 %186
  %invariant.gep8394 = getelementptr double, ptr %3, i64 %187
  %invariant.gep8396 = getelementptr double, ptr %3, i64 %188
  %invariant.gep8398 = getelementptr double, ptr %3, i64 %189
  %invariant.gep8400 = getelementptr double, ptr %3, i64 %190
  %invariant.gep8402 = getelementptr double, ptr %3, i64 %191
  %invariant.gep8404 = getelementptr double, ptr %3, i64 %192
  %invariant.gep8406 = getelementptr double, ptr %3, i64 %193
  %invariant.gep8408 = getelementptr double, ptr %3, i64 %194
  %invariant.gep8410 = getelementptr double, ptr %3, i64 %195
  %invariant.gep8412 = getelementptr double, ptr %3, i64 %196
  %invariant.gep8414 = getelementptr double, ptr %3, i64 %197
  %invariant.gep8416 = getelementptr double, ptr %3, i64 %198
  %invariant.gep8418 = getelementptr double, ptr %3, i64 %199
  %invariant.gep8420 = getelementptr double, ptr %3, i64 %200
  %invariant.gep8422 = getelementptr double, ptr %3, i64 %201
  %invariant.gep8424 = getelementptr double, ptr %3, i64 %202
  %invariant.gep8426 = getelementptr double, ptr %3, i64 %203
  %invariant.gep8428 = getelementptr double, ptr %3, i64 %204
  %invariant.gep8430 = getelementptr double, ptr %3, i64 %205
  %invariant.gep8432 = getelementptr double, ptr %3, i64 %206
  %invariant.gep8434 = getelementptr double, ptr %3, i64 %207
  %invariant.gep8436 = getelementptr double, ptr %3, i64 %208
  %invariant.gep8438 = getelementptr double, ptr %3, i64 %209
  %invariant.gep8440 = getelementptr double, ptr %3, i64 %210
  %invariant.gep8442 = getelementptr double, ptr %3, i64 %211
  %invariant.gep8444 = getelementptr double, ptr %3, i64 %212
  %invariant.gep8446 = getelementptr double, ptr %3, i64 %213
  %invariant.gep8448 = getelementptr double, ptr %3, i64 %214
  %invariant.gep8450 = getelementptr double, ptr %3, i64 %215
  %invariant.gep8452 = getelementptr double, ptr %3, i64 %216
  br label %217

._crit_edge:                                      ; preds = %217, %5
  ret void

217:                                              ; preds = %.lr.ph, %217
  %indvars.iv = phi i64 [ 0, %.lr.ph ], [ %indvars.iv.next, %217 ]
  %218 = getelementptr inbounds double, ptr %1, i64 %indvars.iv
  %219 = load double, ptr %218, align 8, !tbaa !5
  %gep = getelementptr double, ptr %invariant.gep, i64 %indvars.iv
  %220 = load double, ptr %gep, align 8, !tbaa !5
  %221 = fmul double %220, 0xBC7C000000000000
  %222 = tail call double @llvm.fmuladd.f64(double %219, double 0x3FF86DB962AC2966, double %221)
  %gep8245 = getelementptr double, ptr %invariant.gep8244, i64 %indvars.iv
  %223 = load double, ptr %gep8245, align 8, !tbaa !5
  %224 = tail call double @llvm.fmuladd.f64(double %223, double 0xBC66000000000000, double %222)
  %gep8247 = getelementptr double, ptr %invariant.gep8246, i64 %indvars.iv
  %225 = load double, ptr %gep8247, align 8, !tbaa !5
  %226 = tail call double @llvm.fmuladd.f64(double %225, double 0x3C73000000000001, double %224)
  %gep8249 = getelementptr double, ptr %invariant.gep8248, i64 %indvars.iv
  %227 = load double, ptr %gep8249, align 8, !tbaa !5
  %228 = tail call double @llvm.fmuladd.f64(double %227, double 0x3C7C000000000000, double %226)
  %gep8251 = getelementptr double, ptr %invariant.gep8250, i64 %indvars.iv
  %229 = load double, ptr %gep8251, align 8, !tbaa !5
  %230 = tail call double @llvm.fmuladd.f64(double %229, double 0x3C82000000000000, double %228)
  %gep8253 = getelementptr double, ptr %invariant.gep8252, i64 %indvars.iv
  %231 = load double, ptr %gep8253, align 8, !tbaa !5
  %232 = tail call double @llvm.fmuladd.f64(double %231, double 0xBC8D000000000001, double %230)
  %gep8255 = getelementptr double, ptr %invariant.gep8254, i64 %indvars.iv
  %233 = load double, ptr %gep8255, align 8, !tbaa !5
  %234 = tail call double @llvm.fmuladd.f64(double %233, double 0xBC64000000000000, double %232)
  %gep8257 = getelementptr double, ptr %invariant.gep8256, i64 %indvars.iv
  %235 = load double, ptr %gep8257, align 8, !tbaa !5
  %236 = tail call double @llvm.fmuladd.f64(double %235, double 0x3C70000000000001, double %234)
  %gep8259 = getelementptr double, ptr %invariant.gep8258, i64 %indvars.iv
  %237 = load double, ptr %gep8259, align 8, !tbaa !5
  %238 = tail call double @llvm.fmuladd.f64(double %237, double 0xBC60000000000000, double %236)
  %gep8261 = getelementptr double, ptr %invariant.gep8260, i64 %indvars.iv
  %239 = load double, ptr %gep8261, align 8, !tbaa !5
  %240 = tail call double @llvm.fmuladd.f64(double %239, double 0xBFEA0946EB3057DC, double %238)
  %gep8263 = getelementptr double, ptr %invariant.gep8262, i64 %indvars.iv
  %241 = load double, ptr %gep8263, align 8, !tbaa !5
  %242 = tail call double @llvm.fmuladd.f64(double %241, double 0xBC7FFFFFFFFFFFFF, double %240)
  %gep8265 = getelementptr double, ptr %invariant.gep8264, i64 %indvars.iv
  %243 = load double, ptr %gep8265, align 8, !tbaa !5
  %244 = tail call double @llvm.fmuladd.f64(double %243, double 0xBC81000000000000, double %242)
  %gep8267 = getelementptr double, ptr %invariant.gep8266, i64 %indvars.iv
  %245 = load double, ptr %gep8267, align 8, !tbaa !5
  %246 = tail call double @llvm.fmuladd.f64(double %245, double 0x3C76000000000001, double %244)
  %gep8269 = getelementptr double, ptr %invariant.gep8268, i64 %indvars.iv
  %247 = load double, ptr %gep8269, align 8, !tbaa !5
  %248 = tail call double @llvm.fmuladd.f64(double %247, double 0x3C70000000000001, double %246)
  %gep8271 = getelementptr double, ptr %invariant.gep8270, i64 %indvars.iv
  %249 = load double, ptr %gep8271, align 8, !tbaa !5
  %250 = tail call double @llvm.fmuladd.f64(double %249, double 0x3C97000000000000, double %248)
  %gep8273 = getelementptr double, ptr %invariant.gep8272, i64 %indvars.iv
  %251 = load double, ptr %gep8273, align 8, !tbaa !5
  %252 = tail call double @llvm.fmuladd.f64(double %251, double 0x3C92000000000000, double %250)
  %gep8275 = getelementptr double, ptr %invariant.gep8274, i64 %indvars.iv
  %253 = load double, ptr %gep8275, align 8, !tbaa !5
  %254 = tail call double @llvm.fmuladd.f64(double %253, double 0xBC88000000000000, double %252)
  %gep8277 = getelementptr double, ptr %invariant.gep8276, i64 %indvars.iv
  %255 = load double, ptr %gep8277, align 8, !tbaa !5
  %256 = tail call double @llvm.fmuladd.f64(double %255, double 0x3FD9A613A5CEF639, double %254)
  %gep8279 = getelementptr double, ptr %invariant.gep8278, i64 %indvars.iv
  %257 = load double, ptr %gep8279, align 8, !tbaa !5
  %258 = tail call double @llvm.fmuladd.f64(double %257, double 0x3C70000000000001, double %256)
  %gep8281 = getelementptr double, ptr %invariant.gep8280, i64 %indvars.iv
  %259 = load double, ptr %gep8281, align 8, !tbaa !5
  %260 = tail call double @llvm.fmuladd.f64(double %259, double 0x3C64000000000000, double %258)
  %gep8283 = getelementptr double, ptr %invariant.gep8282, i64 %indvars.iv
  %261 = load double, ptr %gep8283, align 8, !tbaa !5
  %262 = tail call double @llvm.fmuladd.f64(double %261, double 0x3C70000000000001, double %260)
  %gep8285 = getelementptr double, ptr %invariant.gep8284, i64 %indvars.iv
  %263 = load double, ptr %gep8285, align 8, !tbaa !5
  %264 = tail call double @llvm.fmuladd.f64(double %263, double 0x3C70000000000001, double %262)
  %gep8287 = getelementptr double, ptr %invariant.gep8286, i64 %indvars.iv
  %265 = load double, ptr %gep8287, align 8, !tbaa !5
  %266 = tail call double @llvm.fmuladd.f64(double %265, double 0xBC70000000000001, double %264)
  %gep8289 = getelementptr double, ptr %invariant.gep8288, i64 %indvars.iv
  %267 = load double, ptr %gep8289, align 8, !tbaa !5
  %268 = tail call double @llvm.fmuladd.f64(double %267, double 0xBC93000000000000, double %266)
  %gep8291 = getelementptr double, ptr %invariant.gep8290, i64 %indvars.iv
  %269 = load double, ptr %gep8291, align 8, !tbaa !5
  %270 = tail call double @llvm.fmuladd.f64(double %269, double 0xBC70000000000001, double %268)
  %gep8293 = getelementptr double, ptr %invariant.gep8292, i64 %indvars.iv
  %271 = load double, ptr %gep8293, align 8, !tbaa !5
  %272 = tail call double @llvm.fmuladd.f64(double %271, double 0xBFBD29AD687BB056, double %270)
  %gep8295 = getelementptr double, ptr %invariant.gep8294, i64 %indvars.iv
  %273 = load double, ptr %gep8295, align 8, !tbaa !5
  %274 = tail call double @llvm.fmuladd.f64(double %273, double 0x3C67FFFFFFFFFFFE, double %272)
  %gep8297 = getelementptr double, ptr %invariant.gep8296, i64 %indvars.iv
  %275 = load double, ptr %gep8297, align 8, !tbaa !5
  %276 = tail call double @llvm.fmuladd.f64(double %275, double 0xBC48000000000001, double %274)
  %gep8299 = getelementptr double, ptr %invariant.gep8298, i64 %indvars.iv
  %277 = load double, ptr %gep8299, align 8, !tbaa !5
  %278 = tail call double @llvm.fmuladd.f64(double %277, double 0xBC5C000000000000, double %276)
  %gep8301 = getelementptr double, ptr %invariant.gep8300, i64 %indvars.iv
  %279 = load double, ptr %gep8301, align 8, !tbaa !5
  %280 = tail call double @llvm.fmuladd.f64(double %279, double 0xBC90000000000000, double %278)
  %gep8303 = getelementptr double, ptr %invariant.gep8302, i64 %indvars.iv
  %281 = load double, ptr %gep8303, align 8, !tbaa !5
  %282 = tail call double @llvm.fmuladd.f64(double %281, double 0xBC86000000000001, double %280)
  %gep8305 = getelementptr double, ptr %invariant.gep8304, i64 %indvars.iv
  %283 = load double, ptr %gep8305, align 8, !tbaa !5
  %284 = tail call double @llvm.fmuladd.f64(double %283, double 0x3C81000000000000, double %282)
  %gep8307 = getelementptr double, ptr %invariant.gep8306, i64 %indvars.iv
  %285 = load double, ptr %gep8307, align 8, !tbaa !5
  %286 = tail call double @llvm.fmuladd.f64(double %285, double 0x3C40000000000000, double %284)
  %gep8309 = getelementptr double, ptr %invariant.gep8308, i64 %indvars.iv
  %287 = load double, ptr %gep8309, align 8, !tbaa !5
  %288 = tail call double @llvm.fmuladd.f64(double %287, double 0xBC60000000000000, double %286)
  %gep8311 = getelementptr double, ptr %invariant.gep8310, i64 %indvars.iv
  %289 = load double, ptr %gep8311, align 8, !tbaa !5
  %290 = tail call double @llvm.fmuladd.f64(double %289, double 0xBC78000000000002, double %288)
  %291 = getelementptr inbounds double, ptr %3, i64 %indvars.iv
  %292 = load double, ptr %291, align 8, !tbaa !5
  %293 = fadd double %292, %290
  store double %293, ptr %291, align 8, !tbaa !5
  %294 = fmul double %220, 0x3FF86DB962AC2966
  %295 = tail call double @llvm.fmuladd.f64(double %219, double 0x3CBC000000000000, double %294)
  %296 = tail call double @llvm.fmuladd.f64(double %223, double 0x3C98000000000000, double %295)
  %297 = tail call double @llvm.fmuladd.f64(double %225, double 0xBCBB3FFFFFFFFFFF, double %296)
  %298 = tail call double @llvm.fmuladd.f64(double %227, double 0x3CAC000000000000, double %297)
  %299 = tail call double @llvm.fmuladd.f64(double %229, double 0x3C94000000000000, double %298)
  %300 = tail call double @llvm.fmuladd.f64(double %231, double 0xBCA2FFFFFFFFFFFE, double %299)
  %301 = tail call double @llvm.fmuladd.f64(double %233, double 0xBC9C000000000000, double %300)
  %302 = tail call double @llvm.fmuladd.f64(double %237, double 0x3CA0000000000002, double %301)
  %303 = tail call double @llvm.fmuladd.f64(double %239, double 0xBCB0000000000000, double %302)
  %304 = tail call double @llvm.fmuladd.f64(double %241, double 0xBFEA0946EB3057DA, double %303)
  %305 = tail call double @llvm.fmuladd.f64(double %243, double 0x3C92000000000000, double %304)
  %306 = tail call double @llvm.fmuladd.f64(double %245, double 0xBC7FFFFFFFFFFFFF, double %305)
  %gep8313 = getelementptr double, ptr %invariant.gep8312, i64 %indvars.iv
  %307 = load double, ptr %gep8313, align 8, !tbaa !5
  %308 = tail call double @llvm.fmuladd.f64(double %307, double 0xBCBE000000000000, double %306)
  %309 = tail call double @llvm.fmuladd.f64(double %249, double 0x3CAE000000000002, double %308)
  %310 = tail call double @llvm.fmuladd.f64(double %251, double 0x3CA0000000000002, double %309)
  %gep8315 = getelementptr double, ptr %invariant.gep8314, i64 %indvars.iv
  %311 = load double, ptr %gep8315, align 8, !tbaa !5
  %312 = tail call double @llvm.fmuladd.f64(double %311, double 0xBC90000000000000, double %310)
  %313 = tail call double @llvm.fmuladd.f64(double %253, double 0xBC90000000000000, double %312)
  %314 = tail call double @llvm.fmuladd.f64(double %255, double 0xBCA0000000000002, double %313)
  %315 = tail call double @llvm.fmuladd.f64(double %257, double 0x3FD9A613A5CEF63B, double %314)
  %316 = tail call double @llvm.fmuladd.f64(double %259, double 0x3C92000000000000, double %315)
  %317 = tail call double @llvm.fmuladd.f64(double %261, double 0xBC92000000000000, double %316)
  %gep8317 = getelementptr double, ptr %invariant.gep8316, i64 %indvars.iv
  %318 = load double, ptr %gep8317, align 8, !tbaa !5
  %319 = tail call double @llvm.fmuladd.f64(double %318, double 0x3C7FFFFFFFFFFFFF, double %317)
  %320 = tail call double @llvm.fmuladd.f64(double %263, double 0xBCA8000000000001, double %319)
  %321 = tail call double @llvm.fmuladd.f64(double %265, double 0xBC90000000000000, double %320)
  %322 = tail call double @llvm.fmuladd.f64(double %267, double 0x3CA2000000000000, double %321)
  %323 = tail call double @llvm.fmuladd.f64(double %269, double 0xBCB0000000000000, double %322)
  %gep8319 = getelementptr double, ptr %invariant.gep8318, i64 %indvars.iv
  %324 = load double, ptr %gep8319, align 8, !tbaa !5
  %325 = tail call double @llvm.fmuladd.f64(double %324, double 0x3C90000000000000, double %323)
  %326 = tail call double @llvm.fmuladd.f64(double %271, double 0xBC7FFFFFFFFFFFFF, double %325)
  %327 = tail call double @llvm.fmuladd.f64(double %273, double 0xBFBD29AD687BB05D, double %326)
  %328 = tail call double @llvm.fmuladd.f64(double %275, double 0x3C50000000000000, double %327)
  %329 = tail call double @llvm.fmuladd.f64(double %277, double 0x3CAB800000000001, double %328)
  %330 = tail call double @llvm.fmuladd.f64(double %279, double 0xBCA0000000000002, double %329)
  %331 = tail call double @llvm.fmuladd.f64(double %281, double 0x3C7FFFFFFFFFFFFF, double %330)
  %332 = tail call double @llvm.fmuladd.f64(double %283, double 0x3C78000000000002, double %331)
  %333 = tail call double @llvm.fmuladd.f64(double %285, double 0xBC94000000000000, double %332)
  %334 = tail call double @llvm.fmuladd.f64(double %287, double 0x3C90000000000000, double %333)
  %335 = tail call double @llvm.fmuladd.f64(double %289, double 0xBC98000000000000, double %334)
  %gep8321 = getelementptr double, ptr %invariant.gep8320, i64 %indvars.iv
  %336 = load double, ptr %gep8321, align 8, !tbaa !5
  %337 = fadd double %336, %335
  store double %337, ptr %gep8321, align 8, !tbaa !5
  %338 = fmul double %220, 0xBC90000000000000
  %339 = tail call double @llvm.fmuladd.f64(double %219, double 0x3C9B000000000000, double %338)
  %340 = tail call double @llvm.fmuladd.f64(double %223, double 0x3FF86DB962AC2966, double %339)
  %341 = tail call double @llvm.fmuladd.f64(double %225, double 0x3C92C00000000000, double %340)
  %342 = tail call double @llvm.fmuladd.f64(double %227, double 0xBC90000000000000, double %341)
  %343 = tail call double @llvm.fmuladd.f64(double %229, double 0xBC60000000000000, double %342)
  %344 = tail call double @llvm.fmuladd.f64(double %231, double 0x3C9B000000000000, double %343)
  %345 = tail call double @llvm.fmuladd.f64(double %233, double 0xBC8F000000000000, double %344)
  %346 = tail call double @llvm.fmuladd.f64(double %235, double 0x3C92000000000000, double %345)
  %347 = tail call double @llvm.fmuladd.f64(double %237, double 0xBC96000000000000, double %346)
  %348 = tail call double @llvm.fmuladd.f64(double %239, double 0xBC90000000000000, double %347)
  %349 = tail call double @llvm.fmuladd.f64(double %241, double 0xBCB5000000000000, double %348)
  %350 = tail call double @llvm.fmuladd.f64(double %243, double 0xBFEA0946EB3057DC, double %349)
  %351 = tail call double @llvm.fmuladd.f64(double %245, double 0xBC85000000000000, double %350)
  %352 = tail call double @llvm.fmuladd.f64(double %307, double 0x3CC1000000000000, double %351)
  %353 = tail call double @llvm.fmuladd.f64(double %247, double 0xBCB1800000000000, double %352)
  %354 = tail call double @llvm.fmuladd.f64(double %249, double 0x3CA1000000000001, double %353)
  %355 = tail call double @llvm.fmuladd.f64(double %251, double 0xBC7C000000000000, double %354)
  %356 = tail call double @llvm.fmuladd.f64(double %311, double 0x3C9C000000000000, double %355)
  %357 = tail call double @llvm.fmuladd.f64(double %253, double 0x3C98000000000000, double %356)
  %358 = tail call double @llvm.fmuladd.f64(double %255, double 0x3CB0000000000000, double %357)
  %359 = tail call double @llvm.fmuladd.f64(double %257, double 0x3C9C000000000000, double %358)
  %360 = tail call double @llvm.fmuladd.f64(double %259, double 0x3FD9A613A5CEF635, double %359)
  %361 = tail call double @llvm.fmuladd.f64(double %261, double 0x3CB3C00000000000, double %360)
  %362 = tail call double @llvm.fmuladd.f64(double %318, double 0xBCBA000000000000, double %361)
  %363 = tail call double @llvm.fmuladd.f64(double %263, double 0x3CA1000000000001, double %362)
  %364 = tail call double @llvm.fmuladd.f64(double %265, double 0x3CAC800000000000, double %363)
  %365 = tail call double @llvm.fmuladd.f64(double %267, double 0x3C8C000000000000, double %364)
  %366 = tail call double @llvm.fmuladd.f64(double %269, double 0x3C70000000000001, double %365)
  %367 = tail call double @llvm.fmuladd.f64(double %324, double 0xBC98000000000000, double %366)
  %368 = tail call double @llvm.fmuladd.f64(double %271, double 0x3C7C000000000000, double %367)
  %369 = tail call double @llvm.fmuladd.f64(double %273, double 0x3CA8000000000001, double %368)
  %370 = tail call double @llvm.fmuladd.f64(double %275, double 0xBFBD29AD687BB056, double %369)
  %371 = tail call double @llvm.fmuladd.f64(double %277, double 0x3C9B000000000000, double %370)
  %372 = tail call double @llvm.fmuladd.f64(double %279, double 0x3CB1400000000000, double %371)
  %373 = tail call double @llvm.fmuladd.f64(double %281, double 0xBC94000000000000, double %372)
  %374 = tail call double @llvm.fmuladd.f64(double %283, double 0xBC82000000000000, double %373)
  %375 = tail call double @llvm.fmuladd.f64(double %285, double 0xBC84000000000000, double %374)
  %376 = tail call double @llvm.fmuladd.f64(double %287, double 0x3C70000000000001, double %375)
  %377 = tail call double @llvm.fmuladd.f64(double %289, double 0xBC8C000000000000, double %376)
  %gep8323 = getelementptr double, ptr %invariant.gep8322, i64 %indvars.iv
  %378 = load double, ptr %gep8323, align 8, !tbaa !5
  %379 = fadd double %378, %377
  store double %379, ptr %gep8323, align 8, !tbaa !5
  %380 = fmul double %220, 0xBC96000000000000
  %381 = tail call double @llvm.fmuladd.f64(double %219, double 0x3CA0800000000001, double %380)
  %382 = tail call double @llvm.fmuladd.f64(double %223, double 0xBC8B800000000001, double %381)
  %383 = tail call double @llvm.fmuladd.f64(double %225, double 0x3FF86DB962AC2966, double %382)
  %384 = tail call double @llvm.fmuladd.f64(double %227, double 0x3C60000000000000, double %383)
  %385 = tail call double @llvm.fmuladd.f64(double %229, double 0xBCA8000000000001, double %384)
  %386 = tail call double @llvm.fmuladd.f64(double %231, double 0x3C9A000000000000, double %385)
  %387 = tail call double @llvm.fmuladd.f64(double %233, double 0xBC9D7FFFFFFFFFFE, double %386)
  %388 = tail call double @llvm.fmuladd.f64(double %235, double 0xBC90000000000000, double %387)
  %389 = tail call double @llvm.fmuladd.f64(double %237, double 0x3C60000000000000, double %388)
  %390 = tail call double @llvm.fmuladd.f64(double %239, double 0x3C98000000000000, double %389)
  %391 = tail call double @llvm.fmuladd.f64(double %241, double 0x3C98000000000000, double %390)
  %392 = tail call double @llvm.fmuladd.f64(double %243, double 0xBC98800000000000, double %391)
  %393 = tail call double @llvm.fmuladd.f64(double %245, double 0xBFEA0946EB3057D9, double %392)
  %394 = tail call double @llvm.fmuladd.f64(double %247, double 0x3C96000000000000, double %393)
  %395 = tail call double @llvm.fmuladd.f64(double %249, double 0xBCA1800000000000, double %394)
  %396 = tail call double @llvm.fmuladd.f64(double %251, double 0x3C97000000000000, double %395)
  %397 = tail call double @llvm.fmuladd.f64(double %311, double 0x3C88000000000000, double %396)
  %398 = tail call double @llvm.fmuladd.f64(double %255, double 0xBC98000000000000, double %397)
  %399 = tail call double @llvm.fmuladd.f64(double %257, double 0xBC70000000000001, double %398)
  %400 = tail call double @llvm.fmuladd.f64(double %259, double 0x3C93000000000000, double %399)
  %401 = tail call double @llvm.fmuladd.f64(double %261, double 0x3FD9A613A5CEF635, double %400)
  %402 = tail call double @llvm.fmuladd.f64(double %318, double 0xBCAC000000000000, double %401)
  %403 = tail call double @llvm.fmuladd.f64(double %263, double 0x3C60000000000000, double %402)
  %404 = tail call double @llvm.fmuladd.f64(double %265, double 0x3CA1800000000000, double %403)
  %405 = tail call double @llvm.fmuladd.f64(double %267, double 0xBCA5800000000000, double %404)
  %406 = tail call double @llvm.fmuladd.f64(double %269, double 0x3C98000000000000, double %405)
  %407 = tail call double @llvm.fmuladd.f64(double %324, double 0xBC70000000000001, double %406)
  %408 = tail call double @llvm.fmuladd.f64(double %271, double 0xBC9CFFFFFFFFFFFF, double %407)
  %409 = tail call double @llvm.fmuladd.f64(double %273, double 0xBC89FFFFFFFFFFFF, double %408)
  %410 = tail call double @llvm.fmuladd.f64(double %275, double 0xBC94000000000000, double %409)
  %411 = tail call double @llvm.fmuladd.f64(double %277, double 0xBFBD29AD687BB056, double %410)
  %412 = tail call double @llvm.fmuladd.f64(double %279, double 0xBC93000000000000, double %411)
  %413 = tail call double @llvm.fmuladd.f64(double %281, double 0x3C98000000000000, double %412)
  %414 = tail call double @llvm.fmuladd.f64(double %283, double 0xBCA2000000000000, double %413)
  %415 = tail call double @llvm.fmuladd.f64(double %285, double 0x3C86000000000001, double %414)
  %416 = tail call double @llvm.fmuladd.f64(double %287, double 0x3C88000000000000, double %415)
  %417 = tail call double @llvm.fmuladd.f64(double %289, double 0xBC78000000000002, double %416)
  %gep8325 = getelementptr double, ptr %invariant.gep8324, i64 %indvars.iv
  %418 = load double, ptr %gep8325, align 8, !tbaa !5
  %419 = fadd double %418, %417
  store double %419, ptr %gep8325, align 8, !tbaa !5
  %420 = fmul double %220, 0xBC78000000000002
  %421 = tail call double @llvm.fmuladd.f64(double %219, double 0x3CAC000000000000, double %420)
  %422 = tail call double @llvm.fmuladd.f64(double %223, double 0x3CAF400000000001, double %421)
  %423 = tail call double @llvm.fmuladd.f64(double %225, double 0xBC9AC00000000000, double %422)
  %424 = tail call double @llvm.fmuladd.f64(double %227, double 0x3FF86DB962AC2966, double %423)
  %425 = tail call double @llvm.fmuladd.f64(double %229, double 0xBC99000000000000, double %424)
  %426 = tail call double @llvm.fmuladd.f64(double %231, double 0x3CAD7FFFFFFFFFFE, double %425)
  %427 = tail call double @llvm.fmuladd.f64(double %233, double 0xBCB8A00000000000, double %426)
  %428 = tail call double @llvm.fmuladd.f64(double %235, double 0x3C96000000000000, double %427)
  %429 = tail call double @llvm.fmuladd.f64(double %237, double 0xBC9A000000000000, double %428)
  %430 = tail call double @llvm.fmuladd.f64(double %239, double 0x3CC2000000000000, double %429)
  %431 = tail call double @llvm.fmuladd.f64(double %241, double 0xBC88000000000000, double %430)
  %432 = tail call double @llvm.fmuladd.f64(double %243, double 0x3C9EFFFFFFFFFFFD, double %431)
  %433 = tail call double @llvm.fmuladd.f64(double %245, double 0xBC50000000000000, double %432)
  %434 = tail call double @llvm.fmuladd.f64(double %307, double 0xBFEA0946EB3057DA, double %433)
  %435 = tail call double @llvm.fmuladd.f64(double %247, double 0xBC70000000000001, double %434)
  %436 = tail call double @llvm.fmuladd.f64(double %249, double 0x3C8C000000000000, double %435)
  %437 = tail call double @llvm.fmuladd.f64(double %251, double 0xBC78000000000002, double %436)
  %438 = tail call double @llvm.fmuladd.f64(double %311, double 0xBC98000000000000, double %437)
  %439 = tail call double @llvm.fmuladd.f64(double %253, double 0x3C98000000000000, double %438)
  %440 = tail call double @llvm.fmuladd.f64(double %255, double 0xBCC1000000000000, double %439)
  %441 = tail call double @llvm.fmuladd.f64(double %257, double 0xBCA2000000000000, double %440)
  %442 = tail call double @llvm.fmuladd.f64(double %259, double 0xBCAE000000000002, double %441)
  %443 = tail call double @llvm.fmuladd.f64(double %261, double 0x3CB6400000000001, double %442)
  %444 = tail call double @llvm.fmuladd.f64(double %318, double 0x3FD9A613A5CEF639, double %443)
  %445 = tail call double @llvm.fmuladd.f64(double %263, double 0x3CB5000000000000, double %444)
  %446 = tail call double @llvm.fmuladd.f64(double %265, double 0x3C95000000000000, double %445)
  %447 = tail call double @llvm.fmuladd.f64(double %267, double 0xBC9B000000000000, double %446)
  %448 = tail call double @llvm.fmuladd.f64(double %269, double 0x3C88000000000000, double %447)
  %449 = tail call double @llvm.fmuladd.f64(double %271, double 0xBCA4000000000001, double %448)
  %450 = tail call double @llvm.fmuladd.f64(double %273, double 0x3C84000000000000, double %449)
  %451 = tail call double @llvm.fmuladd.f64(double %275, double 0xBC76FFFFFFFFFFFF, double %450)
  %452 = tail call double @llvm.fmuladd.f64(double %277, double 0xBC817FFFFFFFFFFF, double %451)
  %453 = tail call double @llvm.fmuladd.f64(double %279, double 0xBFBD29AD687BB056, double %452)
  %454 = tail call double @llvm.fmuladd.f64(double %281, double 0xBCA1800000000000, double %453)
  %455 = tail call double @llvm.fmuladd.f64(double %283, double 0x3CAC800000000000, double %454)
  %456 = tail call double @llvm.fmuladd.f64(double %285, double 0x3CA23FFFFFFFFFFF, double %455)
  %457 = tail call double @llvm.fmuladd.f64(double %287, double 0x3C60000000000000, double %456)
  %458 = tail call double @llvm.fmuladd.f64(double %289, double 0xBCA0000000000002, double %457)
  %gep8327 = getelementptr double, ptr %invariant.gep8326, i64 %indvars.iv
  %459 = load double, ptr %gep8327, align 8, !tbaa !5
  %460 = fadd double %459, %458
  store double %460, ptr %gep8327, align 8, !tbaa !5
  %461 = fmul double %220, 0xBC92000000000000
  %462 = tail call double @llvm.fmuladd.f64(double %219, double 0x3CA9FFFFFFFFFFFE, double %461)
  %463 = tail call double @llvm.fmuladd.f64(double %223, double 0xBC76000000000001, double %462)
  %464 = tail call double @llvm.fmuladd.f64(double %225, double 0x3CABA00000000001, double %463)
  %465 = tail call double @llvm.fmuladd.f64(double %227, double 0x3C93000000000000, double %464)
  %466 = tail call double @llvm.fmuladd.f64(double %229, double 0x3FF86DB962AC2966, double %465)
  %467 = tail call double @llvm.fmuladd.f64(double %231, double 0xBC84000000000000, double %466)
  %468 = tail call double @llvm.fmuladd.f64(double %233, double 0xBC64000000000000, double %467)
  %469 = tail call double @llvm.fmuladd.f64(double %235, double 0xBCAB000000000001, double %468)
  %470 = tail call double @llvm.fmuladd.f64(double %237, double 0x3C96000000000000, double %469)
  %471 = tail call double @llvm.fmuladd.f64(double %239, double 0x3C7FFFFFFFFFFFFF, double %470)
  %472 = tail call double @llvm.fmuladd.f64(double %241, double 0x3C94000000000000, double %471)
  %473 = tail call double @llvm.fmuladd.f64(double %243, double 0xBC7C000000000000, double %472)
  %474 = tail call double @llvm.fmuladd.f64(double %245, double 0x3C89FFFFFFFFFFFF, double %473)
  %475 = tail call double @llvm.fmuladd.f64(double %247, double 0xBFEA0946EB3057DD, double %474)
  %476 = tail call double @llvm.fmuladd.f64(double %249, double 0x3CA2FFFFFFFFFFFE, double %475)
  %477 = tail call double @llvm.fmuladd.f64(double %251, double 0x3C78000000000002, double %476)
  %478 = tail call double @llvm.fmuladd.f64(double %311, double 0x3C7FFFFFFFFFFFFF, double %477)
  %479 = tail call double @llvm.fmuladd.f64(double %253, double 0xBC94000000000000, double %478)
  %480 = tail call double @llvm.fmuladd.f64(double %255, double 0x3C7FFFFFFFFFFFFF, double %479)
  %481 = tail call double @llvm.fmuladd.f64(double %257, double 0x3C88000000000000, double %480)
  %482 = tail call double @llvm.fmuladd.f64(double %259, double 0x3C92000000000000, double %481)
  %483 = tail call double @llvm.fmuladd.f64(double %261, double 0xBCA27FFFFFFFFFFF, double %482)
  %484 = tail call double @llvm.fmuladd.f64(double %263, double 0x3FD9A613A5CEF639, double %483)
  %485 = tail call double @llvm.fmuladd.f64(double %265, double 0xBCA7800000000001, double %484)
  %486 = tail call double @llvm.fmuladd.f64(double %267, double 0xBC86000000000001, double %485)
  %487 = tail call double @llvm.fmuladd.f64(double %269, double 0xBC88000000000000, double %486)
  %488 = tail call double @llvm.fmuladd.f64(double %324, double 0x3C98000000000000, double %487)
  %489 = tail call double @llvm.fmuladd.f64(double %271, double 0xBCAC000000000000, double %488)
  %490 = tail call double @llvm.fmuladd.f64(double %273, double 0xBC98000000000000, double %489)
  %491 = tail call double @llvm.fmuladd.f64(double %275, double 0xBC97C00000000000, double %490)
  %492 = tail call double @llvm.fmuladd.f64(double %277, double 0xBC66000000000000, double %491)
  %493 = tail call double @llvm.fmuladd.f64(double %279, double 0x3C9A000000000000, double %492)
  %494 = tail call double @llvm.fmuladd.f64(double %281, double 0xBFBD29AD687BB04F, double %493)
  %495 = tail call double @llvm.fmuladd.f64(double %283, double 0x3C70000000000001, double %494)
  %496 = tail call double @llvm.fmuladd.f64(double %285, double 0xBC64000000000000, double %495)
  %497 = tail call double @llvm.fmuladd.f64(double %287, double 0x3CA4000000000001, double %496)
  %498 = tail call double @llvm.fmuladd.f64(double %289, double 0xBC8C000000000000, double %497)
  %gep8329 = getelementptr double, ptr %invariant.gep8328, i64 %indvars.iv
  %499 = load double, ptr %gep8329, align 8, !tbaa !5
  %500 = fadd double %499, %498
  store double %500, ptr %gep8329, align 8, !tbaa !5
  %501 = fmul double %220, 0x3CA0C00000000001
  %502 = tail call double @llvm.fmuladd.f64(double %219, double 0xBC9C000000000000, double %501)
  %503 = tail call double @llvm.fmuladd.f64(double %223, double 0xBCA0700000000001, double %502)
  %504 = tail call double @llvm.fmuladd.f64(double %225, double 0x3C8FC00000000001, double %503)
  %505 = tail call double @llvm.fmuladd.f64(double %227, double 0x3C71FFFFFFFFFFFF, double %504)
  %506 = tail call double @llvm.fmuladd.f64(double %229, double 0x3C79FFFFFFFFFFFF, double %505)
  %507 = tail call double @llvm.fmuladd.f64(double %231, double 0x3FF86DB962AC2966, double %506)
  %508 = tail call double @llvm.fmuladd.f64(double %233, double 0x3C91400000000000, double %507)
  %509 = tail call double @llvm.fmuladd.f64(double %237, double 0xBC84000000000000, double %508)
  %510 = tail call double @llvm.fmuladd.f64(double %239, double 0x3CB3FFFFFFFFFFFF, double %509)
  %511 = tail call double @llvm.fmuladd.f64(double %241, double 0xBC98000000000000, double %510)
  %512 = tail call double @llvm.fmuladd.f64(double %243, double 0xBC8B000000000000, double %511)
  %513 = tail call double @llvm.fmuladd.f64(double %245, double 0x3CA6DFFFFFFFFFFE, double %512)
  %514 = tail call double @llvm.fmuladd.f64(double %307, double 0x3CA4800000000001, double %513)
  %515 = tail call double @llvm.fmuladd.f64(double %247, double 0xBC50000000000000, double %514)
  %516 = tail call double @llvm.fmuladd.f64(double %249, double 0xBFEA0946EB3057DA, double %515)
  %517 = tail call double @llvm.fmuladd.f64(double %251, double 0xBC8E000000000000, double %516)
  %518 = tail call double @llvm.fmuladd.f64(double %311, double 0xBC7FFFFFFFFFFFFF, double %517)
  %519 = tail call double @llvm.fmuladd.f64(double %253, double 0x3C78000000000002, double %518)
  %520 = tail call double @llvm.fmuladd.f64(double %255, double 0xBCA0000000000002, double %519)
  %521 = tail call double @llvm.fmuladd.f64(double %257, double 0x3C60000000000000, double %520)
  %522 = tail call double @llvm.fmuladd.f64(double %259, double 0x3C8D000000000001, double %521)
  %523 = tail call double @llvm.fmuladd.f64(double %261, double 0xBC98400000000000, double %522)
  %524 = tail call double @llvm.fmuladd.f64(double %318, double 0xBC99000000000000, double %523)
  %525 = tail call double @llvm.fmuladd.f64(double %263, double 0xBC9B000000000000, double %524)
  %526 = tail call double @llvm.fmuladd.f64(double %265, double 0x3FD9A613A5CEF63B, double %525)
  %527 = tail call double @llvm.fmuladd.f64(double %267, double 0xBC64000000000000, double %526)
  %528 = tail call double @llvm.fmuladd.f64(double %269, double 0x3C92000000000000, double %527)
  %529 = tail call double @llvm.fmuladd.f64(double %324, double 0x3C78000000000002, double %528)
  %530 = tail call double @llvm.fmuladd.f64(double %271, double 0x3C7FFFFFFFFFFFFF, double %529)
  %531 = tail call double @llvm.fmuladd.f64(double %273, double 0x3C40000000000000, double %530)
  %532 = tail call double @llvm.fmuladd.f64(double %275, double 0x3C50000000000000, double %531)
  %533 = tail call double @llvm.fmuladd.f64(double %277, double 0xBC97600000000000, double %532)
  %534 = tail call double @llvm.fmuladd.f64(double %279, double 0xBC85000000000000, double %533)
  %535 = tail call double @llvm.fmuladd.f64(double %281, double 0x3C6C000000000000, double %534)
  %536 = tail call double @llvm.fmuladd.f64(double %283, double 0xBFBD29AD687BB05D, double %535)
  %537 = tail call double @llvm.fmuladd.f64(double %285, double 0x3C71FFFFFFFFFFFF, double %536)
  %538 = tail call double @llvm.fmuladd.f64(double %287, double 0x3C50000000000000, double %537)
  %539 = tail call double @llvm.fmuladd.f64(double %289, double 0x3C78000000000002, double %538)
  %gep8331 = getelementptr double, ptr %invariant.gep8330, i64 %indvars.iv
  %540 = load double, ptr %gep8331, align 8, !tbaa !5
  %541 = fadd double %540, %539
  store double %541, ptr %gep8331, align 8, !tbaa !5
  %542 = fmul double %220, 0x3C74000000000000
  %543 = tail call double @llvm.fmuladd.f64(double %219, double 0x3CA1000000000001, double %542)
  %544 = tail call double @llvm.fmuladd.f64(double %223, double 0xBCA6CFFFFFFFFFFE, double %543)
  %545 = tail call double @llvm.fmuladd.f64(double %225, double 0x3CAAF00000000001, double %544)
  %546 = tail call double @llvm.fmuladd.f64(double %227, double 0xBC7E000000000001, double %545)
  %547 = tail call double @llvm.fmuladd.f64(double %229, double 0x3C90800000000000, double %546)
  %548 = tail call double @llvm.fmuladd.f64(double %231, double 0xBCBB900000000001, double %547)
  %549 = tail call double @llvm.fmuladd.f64(double %233, double 0x3FF86DB962AC2966, double %548)
  %550 = tail call double @llvm.fmuladd.f64(double %235, double 0x3C78000000000002, double %549)
  %551 = tail call double @llvm.fmuladd.f64(double %237, double 0xBC70000000000001, double %550)
  %552 = tail call double @llvm.fmuladd.f64(double %239, double 0xBCA0000000000002, double %551)
  %553 = tail call double @llvm.fmuladd.f64(double %241, double 0xBCA7000000000002, double %552)
  %554 = tail call double @llvm.fmuladd.f64(double %243, double 0xBC82FFFFFFFFFFFF, double %553)
  %555 = tail call double @llvm.fmuladd.f64(double %245, double 0x3CA21FFFFFFFFFFF, double %554)
  %556 = tail call double @llvm.fmuladd.f64(double %307, double 0x3CB8400000000000, double %555)
  %557 = tail call double @llvm.fmuladd.f64(double %247, double 0xBC89FFFFFFFFFFFF, double %556)
  %558 = tail call double @llvm.fmuladd.f64(double %249, double 0x3C9E7FFFFFFFFFFD, double %557)
  %559 = tail call double @llvm.fmuladd.f64(double %251, double 0xBFEA0946EB3057DB, double %558)
  %560 = tail call double @llvm.fmuladd.f64(double %311, double 0x3C88000000000000, double %559)
  %561 = tail call double @llvm.fmuladd.f64(double %253, double 0x3C9DFFFFFFFFFFFE, double %560)
  %562 = tail call double @llvm.fmuladd.f64(double %255, double 0x3CB8000000000001, double %561)
  %563 = tail call double @llvm.fmuladd.f64(double %257, double 0xBC88000000000000, double %562)
  %564 = tail call double @llvm.fmuladd.f64(double %259, double 0x3C7C000000000000, double %563)
  %565 = tail call double @llvm.fmuladd.f64(double %261, double 0x3C76FFFFFFFFFFFF, double %564)
  %566 = tail call double @llvm.fmuladd.f64(double %318, double 0xBCA4800000000001, double %565)
  %567 = tail call double @llvm.fmuladd.f64(double %263, double 0xBC8E000000000000, double %566)
  %568 = tail call double @llvm.fmuladd.f64(double %267, double 0x3FD9A613A5CEF635, double %567)
  %569 = tail call double @llvm.fmuladd.f64(double %269, double 0x3C88000000000000, double %568)
  %570 = tail call double @llvm.fmuladd.f64(double %324, double 0xBC92000000000000, double %569)
  %571 = tail call double @llvm.fmuladd.f64(double %271, double 0xBCA2000000000000, double %570)
  %572 = tail call double @llvm.fmuladd.f64(double %273, double 0x3CA8C00000000000, double %571)
  %573 = tail call double @llvm.fmuladd.f64(double %275, double 0xBC86FFFFFFFFFFFF, double %572)
  %574 = tail call double @llvm.fmuladd.f64(double %277, double 0xBC9F9FFFFFFFFFFC, double %573)
  %575 = tail call double @llvm.fmuladd.f64(double %279, double 0xBC89000000000000, double %574)
  %576 = tail call double @llvm.fmuladd.f64(double %281, double 0xBCA1400000000000, double %575)
  %577 = tail call double @llvm.fmuladd.f64(double %283, double 0xBCA4A00000000001, double %576)
  %578 = tail call double @llvm.fmuladd.f64(double %285, double 0xBFBD29AD687BB056, double %577)
  %579 = tail call double @llvm.fmuladd.f64(double %287, double 0xBC67FFFFFFFFFFFE, double %578)
  %580 = tail call double @llvm.fmuladd.f64(double %289, double 0x3C67FFFFFFFFFFFE, double %579)
  %gep8333 = getelementptr double, ptr %invariant.gep8332, i64 %indvars.iv
  %581 = load double, ptr %gep8333, align 8, !tbaa !5
  %582 = fadd double %581, %580
  store double %582, ptr %gep8333, align 8, !tbaa !5
  %583 = fmul double %220, 0xBCA5000000000000
  %584 = tail call double @llvm.fmuladd.f64(double %219, double 0x3CC5000000000000, double %583)
  %585 = tail call double @llvm.fmuladd.f64(double %223, double 0x3C6C000000000000, double %584)
  %586 = tail call double @llvm.fmuladd.f64(double %225, double 0xBC89000000000000, double %585)
  %587 = tail call double @llvm.fmuladd.f64(double %227, double 0xBC90000000000000, double %586)
  %588 = tail call double @llvm.fmuladd.f64(double %229, double 0x3C60000000000000, double %587)
  %589 = tail call double @llvm.fmuladd.f64(double %231, double 0xBC8C000000000000, double %588)
  %590 = tail call double @llvm.fmuladd.f64(double %233, double 0x3C99000000000000, double %589)
  %591 = tail call double @llvm.fmuladd.f64(double %235, double 0x3FF86DB962AC2966, double %590)
  %592 = tail call double @llvm.fmuladd.f64(double %237, double 0x3C94000000000000, double %591)
  %593 = tail call double @llvm.fmuladd.f64(double %239, double 0xBCA4000000000001, double %592)
  %594 = tail call double @llvm.fmuladd.f64(double %241, double 0x3CAC000000000000, double %593)
  %595 = tail call double @llvm.fmuladd.f64(double %243, double 0xBC84000000000000, double %594)
  %596 = tail call double @llvm.fmuladd.f64(double %245, double 0xBCA0000000000002, double %595)
  %597 = tail call double @llvm.fmuladd.f64(double %307, double 0xBCA9FFFFFFFFFFFE, double %596)
  %598 = tail call double @llvm.fmuladd.f64(double %249, double 0x3CA1000000000001, double %597)
  %599 = tail call double @llvm.fmuladd.f64(double %251, double 0xBC60000000000000, double %598)
  %600 = tail call double @llvm.fmuladd.f64(double %311, double 0xBFEA0946EB3057DB, double %599)
  %601 = tail call double @llvm.fmuladd.f64(double %253, double 0x3C7FFFFFFFFFFFFF, double %600)
  %602 = tail call double @llvm.fmuladd.f64(double %255, double 0xBCA4000000000001, double %601)
  %603 = tail call double @llvm.fmuladd.f64(double %257, double 0xBCA4000000000001, double %602)
  %604 = tail call double @llvm.fmuladd.f64(double %259, double 0x3CA5000000000000, double %603)
  %605 = tail call double @llvm.fmuladd.f64(double %261, double 0x3C91000000000000, double %604)
  %606 = tail call double @llvm.fmuladd.f64(double %318, double 0xBC98000000000000, double %605)
  %607 = tail call double @llvm.fmuladd.f64(double %263, double 0xBCB0000000000000, double %606)
  %608 = tail call double @llvm.fmuladd.f64(double %265, double 0xBC92000000000000, double %607)
  %609 = tail call double @llvm.fmuladd.f64(double %267, double 0xBC70000000000001, double %608)
  %610 = tail call double @llvm.fmuladd.f64(double %269, double 0x3FD9A613A5CEF63C, double %609)
  %611 = tail call double @llvm.fmuladd.f64(double %324, double 0x3CA4000000000001, double %610)
  %612 = tail call double @llvm.fmuladd.f64(double %271, double 0x3CB2000000000000, double %611)
  %613 = tail call double @llvm.fmuladd.f64(double %273, double 0x3CA4000000000001, double %612)
  %614 = tail call double @llvm.fmuladd.f64(double %275, double 0xBC95800000000000, double %613)
  %615 = tail call double @llvm.fmuladd.f64(double %277, double 0xBC58000000000000, double %614)
  %616 = tail call double @llvm.fmuladd.f64(double %279, double 0xBC9C000000000000, double %615)
  %617 = tail call double @llvm.fmuladd.f64(double %281, double 0xBC9A000000000000, double %616)
  %618 = tail call double @llvm.fmuladd.f64(double %283, double 0x3C78000000000002, double %617)
  %619 = tail call double @llvm.fmuladd.f64(double %285, double 0xBC70000000000001, double %618)
  %620 = tail call double @llvm.fmuladd.f64(double %287, double 0xBFBD29AD687BB05D, double %619)
  %621 = tail call double @llvm.fmuladd.f64(double %289, double 0xBC70000000000001, double %620)
  %gep8335 = getelementptr double, ptr %invariant.gep8334, i64 %indvars.iv
  %622 = load double, ptr %gep8335, align 8, !tbaa !5
  %623 = fadd double %622, %621
  store double %623, ptr %gep8335, align 8, !tbaa !5
  %624 = fmul double %220, 0xBC84000000000000
  %625 = tail call double @llvm.fmuladd.f64(double %219, double 0x3CAC000000000000, double %624)
  %626 = tail call double @llvm.fmuladd.f64(double %223, double 0x3CB21FFFFFFFFFFF, double %625)
  %627 = tail call double @llvm.fmuladd.f64(double %225, double 0xBCB9C00000000001, double %626)
  %628 = tail call double @llvm.fmuladd.f64(double %227, double 0x3CA7000000000002, double %627)
  %629 = tail call double @llvm.fmuladd.f64(double %229, double 0xBC96000000000000, double %628)
  %630 = tail call double @llvm.fmuladd.f64(double %231, double 0x3CAA800000000002, double %629)
  %631 = tail call double @llvm.fmuladd.f64(double %233, double 0xBCA5000000000000, double %630)
  %632 = tail call double @llvm.fmuladd.f64(double %235, double 0x3CA8000000000001, double %631)
  %633 = tail call double @llvm.fmuladd.f64(double %237, double 0x3FF86DB962AC2966, double %632)
  %634 = tail call double @llvm.fmuladd.f64(double %239, double 0x3CAC000000000000, double %633)
  %635 = tail call double @llvm.fmuladd.f64(double %241, double 0x3CA0000000000002, double %634)
  %636 = tail call double @llvm.fmuladd.f64(double %243, double 0x3C96000000000000, double %635)
  %637 = tail call double @llvm.fmuladd.f64(double %245, double 0xBC96000000000000, double %636)
  %638 = tail call double @llvm.fmuladd.f64(double %307, double 0xBCA5FFFFFFFFFFFF, double %637)
  %639 = tail call double @llvm.fmuladd.f64(double %247, double 0x3C94000000000000, double %638)
  %640 = tail call double @llvm.fmuladd.f64(double %249, double 0xBC9DFFFFFFFFFFFE, double %639)
  %641 = tail call double @llvm.fmuladd.f64(double %251, double 0xBC88000000000000, double %640)
  %642 = tail call double @llvm.fmuladd.f64(double %311, double 0x3C98000000000000, double %641)
  %643 = tail call double @llvm.fmuladd.f64(double %253, double 0xBFEA0946EB3057DC, double %642)
  %644 = tail call double @llvm.fmuladd.f64(double %255, double 0xBCB2000000000000, double %643)
  %645 = tail call double @llvm.fmuladd.f64(double %257, double 0xBCAC000000000000, double %644)
  %646 = tail call double @llvm.fmuladd.f64(double %259, double 0xBCA9000000000000, double %645)
  %647 = tail call double @llvm.fmuladd.f64(double %261, double 0x3CB2C00000000001, double %646)
  %648 = tail call double @llvm.fmuladd.f64(double %318, double 0xBC70000000000001, double %647)
  %649 = tail call double @llvm.fmuladd.f64(double %263, double 0x3CB0000000000000, double %648)
  %650 = tail call double @llvm.fmuladd.f64(double %265, double 0x3C60000000000000, double %649)
  %651 = tail call double @llvm.fmuladd.f64(double %267, double 0x3C9DFFFFFFFFFFFE, double %650)
  %652 = tail call double @llvm.fmuladd.f64(double %269, double 0xBCB5FFFFFFFFFFFF, double %651)
  %653 = tail call double @llvm.fmuladd.f64(double %324, double 0x3FD9A613A5CEF63B, double %652)
  %654 = tail call double @llvm.fmuladd.f64(double %271, double 0xBCBA000000000000, double %653)
  %655 = tail call double @llvm.fmuladd.f64(double %273, double 0x3C90000000000000, double %654)
  %656 = tail call double @llvm.fmuladd.f64(double %275, double 0x3C74000000000000, double %655)
  %657 = tail call double @llvm.fmuladd.f64(double %277, double 0xBC91800000000000, double %656)
  %658 = tail call double @llvm.fmuladd.f64(double %279, double 0x3C78000000000002, double %657)
  %659 = tail call double @llvm.fmuladd.f64(double %281, double 0x3C9A000000000000, double %658)
  %660 = tail call double @llvm.fmuladd.f64(double %283, double 0x3C60000000000000, double %659)
  %661 = tail call double @llvm.fmuladd.f64(double %285, double 0xBC93000000000000, double %660)
  %662 = tail call double @llvm.fmuladd.f64(double %287, double 0xBC94000000000000, double %661)
  %663 = tail call double @llvm.fmuladd.f64(double %289, double 0xBFBD29AD687BB05D, double %662)
  %gep8337 = getelementptr double, ptr %invariant.gep8336, i64 %indvars.iv
  %664 = load double, ptr %gep8337, align 8, !tbaa !5
  %665 = fadd double %664, %663
  store double %665, ptr %gep8337, align 8, !tbaa !5
  %666 = fmul double %220, 0x3C7C000000000000
  %667 = tail call double @llvm.fmuladd.f64(double %219, double 0xBFBD29AD687BB04F, double %666)
  %668 = tail call double @llvm.fmuladd.f64(double %223, double 0x3C66000000000000, double %667)
  %669 = tail call double @llvm.fmuladd.f64(double %225, double 0x3C71000000000000, double %668)
  %670 = tail call double @llvm.fmuladd.f64(double %227, double 0xBC8E000000000000, double %669)
  %671 = tail call double @llvm.fmuladd.f64(double %229, double 0x3C7C000000000000, double %670)
  %672 = tail call double @llvm.fmuladd.f64(double %231, double 0xBC58000000000000, double %671)
  %673 = tail call double @llvm.fmuladd.f64(double %233, double 0xBC76000000000001, double %672)
  %674 = tail call double @llvm.fmuladd.f64(double %235, double 0x3C7FFFFFFFFFFFFF, double %673)
  %675 = tail call double @llvm.fmuladd.f64(double %237, double 0xBC84000000000000, double %674)
  %676 = tail call double @llvm.fmuladd.f64(double %239, double 0x3FD9A613A5CEF639, double %675)
  %677 = tail call double @llvm.fmuladd.f64(double %243, double 0x3C40000000000000, double %676)
  %678 = tail call double @llvm.fmuladd.f64(double %245, double 0x3C85000000000000, double %677)
  %679 = tail call double @llvm.fmuladd.f64(double %307, double 0xBC90000000000000, double %678)
  %680 = tail call double @llvm.fmuladd.f64(double %247, double 0xBC88000000000000, double %679)
  %681 = tail call double @llvm.fmuladd.f64(double %249, double 0x3C50000000000000, double %680)
  %682 = tail call double @llvm.fmuladd.f64(double %251, double 0xBC92000000000000, double %681)
  %683 = tail call double @llvm.fmuladd.f64(double %311, double 0x3C7FFFFFFFFFFFFF, double %682)
  %684 = tail call double @llvm.fmuladd.f64(double %253, double 0x3C88000000000000, double %683)
  %685 = tail call double @llvm.fmuladd.f64(double %255, double 0xBFEA0946EB3057DB, double %684)
  %686 = tail call double @llvm.fmuladd.f64(double %257, double 0xBC70000000000001, double %685)
  %687 = tail call double @llvm.fmuladd.f64(double %259, double 0xBC64000000000000, double %686)
  %688 = tail call double @llvm.fmuladd.f64(double %261, double 0xBC70000000000001, double %687)
  %689 = tail call double @llvm.fmuladd.f64(double %318, double 0x3C7FFFFFFFFFFFFF, double %688)
  %690 = tail call double @llvm.fmuladd.f64(double %263, double 0x3C70000000000001, double %689)
  %691 = tail call double @llvm.fmuladd.f64(double %265, double 0x3C70000000000001, double %690)
  %692 = tail call double @llvm.fmuladd.f64(double %267, double 0x3C93000000000000, double %691)
  %693 = tail call double @llvm.fmuladd.f64(double %269, double 0xBC70000000000001, double %692)
  %694 = tail call double @llvm.fmuladd.f64(double %324, double 0xBC88000000000000, double %693)
  %695 = tail call double @llvm.fmuladd.f64(double %271, double 0x3FF86DB962AC2966, double %694)
  %696 = tail call double @llvm.fmuladd.f64(double %273, double 0xBC7C000000000000, double %695)
  %697 = tail call double @llvm.fmuladd.f64(double %275, double 0xBC6A000000000003, double %696)
  %698 = tail call double @llvm.fmuladd.f64(double %277, double 0x3C7F000000000000, double %697)
  %699 = tail call double @llvm.fmuladd.f64(double %279, double 0x3C88000000000000, double %698)
  %700 = tail call double @llvm.fmuladd.f64(double %281, double 0xBC50000000000000, double %699)
  %701 = tail call double @llvm.fmuladd.f64(double %283, double 0xBC81000000000000, double %700)
  %702 = tail call double @llvm.fmuladd.f64(double %285, double 0xBC40000000000000, double %701)
  %703 = tail call double @llvm.fmuladd.f64(double %287, double 0xBC60000000000000, double %702)
  %704 = tail call double @llvm.fmuladd.f64(double %289, double 0xBC78000000000002, double %703)
  %gep8339 = getelementptr double, ptr %invariant.gep8338, i64 %indvars.iv
  %705 = load double, ptr %gep8339, align 8, !tbaa !5
  %706 = fadd double %705, %704
  store double %706, ptr %gep8339, align 8, !tbaa !5
  %707 = fmul double %220, 0xBFBD29AD687BB05D
  %708 = tail call double @llvm.fmuladd.f64(double %219, double 0x3CBC000000000000, double %707)
  %709 = tail call double @llvm.fmuladd.f64(double %223, double 0x3CACFFFFFFFFFFFF, double %708)
  %710 = tail call double @llvm.fmuladd.f64(double %225, double 0xBCAC800000000000, double %709)
  %711 = tail call double @llvm.fmuladd.f64(double %227, double 0x3C7FFFFFFFFFFFFF, double %710)
  %712 = tail call double @llvm.fmuladd.f64(double %229, double 0x3C88000000000000, double %711)
  %713 = tail call double @llvm.fmuladd.f64(double %231, double 0xBC8C000000000000, double %712)
  %714 = tail call double @llvm.fmuladd.f64(double %233, double 0x3C88000000000000, double %713)
  %715 = tail call double @llvm.fmuladd.f64(double %235, double 0xBC90000000000000, double %714)
  %716 = tail call double @llvm.fmuladd.f64(double %237, double 0xBCA4000000000001, double %715)
  %717 = tail call double @llvm.fmuladd.f64(double %239, double 0xBCB8000000000001, double %716)
  %718 = tail call double @llvm.fmuladd.f64(double %241, double 0x3FD9A613A5CEF63B, double %717)
  %719 = tail call double @llvm.fmuladd.f64(double %243, double 0xBC60000000000000, double %718)
  %720 = tail call double @llvm.fmuladd.f64(double %245, double 0xBC9C000000000000, double %719)
  %721 = tail call double @llvm.fmuladd.f64(double %307, double 0xBCAC000000000000, double %720)
  %722 = tail call double @llvm.fmuladd.f64(double %249, double 0x3CA9FFFFFFFFFFFE, double %721)
  %723 = tail call double @llvm.fmuladd.f64(double %251, double 0xBC90000000000000, double %722)
  %724 = tail call double @llvm.fmuladd.f64(double %253, double 0x3CA0000000000002, double %723)
  %725 = tail call double @llvm.fmuladd.f64(double %257, double 0xBFEA0946EB3057DA, double %724)
  %726 = tail call double @llvm.fmuladd.f64(double %259, double 0x3C8C000000000000, double %725)
  %727 = tail call double @llvm.fmuladd.f64(double %261, double 0xBC78000000000002, double %726)
  %728 = tail call double @llvm.fmuladd.f64(double %318, double 0x3C7FFFFFFFFFFFFF, double %727)
  %729 = tail call double @llvm.fmuladd.f64(double %263, double 0x3C90000000000000, double %728)
  %730 = tail call double @llvm.fmuladd.f64(double %265, double 0xBCA8000000000001, double %729)
  %731 = tail call double @llvm.fmuladd.f64(double %267, double 0x3CAE000000000002, double %730)
  %732 = tail call double @llvm.fmuladd.f64(double %269, double 0xBCA0000000000002, double %731)
  %733 = tail call double @llvm.fmuladd.f64(double %324, double 0x3C90000000000000, double %732)
  %734 = tail call double @llvm.fmuladd.f64(double %271, double 0x3CB2000000000000, double %733)
  %735 = tail call double @llvm.fmuladd.f64(double %273, double 0x3FF86DB962AC2966, double %734)
  %736 = tail call double @llvm.fmuladd.f64(double %275, double 0xBC74000000000000, double %735)
  %737 = tail call double @llvm.fmuladd.f64(double %277, double 0x3C7C000000000000, double %736)
  %738 = tail call double @llvm.fmuladd.f64(double %281, double 0xBCA0000000000002, double %737)
  %739 = tail call double @llvm.fmuladd.f64(double %283, double 0xBC78000000000002, double %738)
  %740 = tail call double @llvm.fmuladd.f64(double %285, double 0xBCAE000000000002, double %739)
  %741 = tail call double @llvm.fmuladd.f64(double %287, double 0x3CA8000000000001, double %740)
  %742 = tail call double @llvm.fmuladd.f64(double %289, double 0x3C7FFFFFFFFFFFFF, double %741)
  %gep8341 = getelementptr double, ptr %invariant.gep8340, i64 %indvars.iv
  %743 = load double, ptr %gep8341, align 8, !tbaa !5
  %744 = fadd double %742, %743
  store double %744, ptr %gep8341, align 8, !tbaa !5
  %745 = fmul double %220, 0x3C70000000000001
  %746 = tail call double @llvm.fmuladd.f64(double %219, double 0xBCC9600000000000, double %745)
  %747 = tail call double @llvm.fmuladd.f64(double %223, double 0xBFBD29AD687BB05D, double %746)
  %748 = tail call double @llvm.fmuladd.f64(double %225, double 0xBCBB2FFFFFFFFFFF, double %747)
  %749 = tail call double @llvm.fmuladd.f64(double %227, double 0xBCB3FFFFFFFFFFFF, double %748)
  %750 = tail call double @llvm.fmuladd.f64(double %229, double 0x3CA5000000000000, double %749)
  %751 = tail call double @llvm.fmuladd.f64(double %231, double 0x3C95000000000000, double %750)
  %752 = tail call double @llvm.fmuladd.f64(double %233, double 0x3C97800000000000, double %751)
  %753 = tail call double @llvm.fmuladd.f64(double %235, double 0x3CB3800000000000, double %752)
  %754 = tail call double @llvm.fmuladd.f64(double %237, double 0xBC84000000000000, double %753)
  %755 = tail call double @llvm.fmuladd.f64(double %239, double 0x3CCE000000000000, double %754)
  %756 = tail call double @llvm.fmuladd.f64(double %241, double 0x3C88000000000000, double %755)
  %757 = tail call double @llvm.fmuladd.f64(double %243, double 0x3FD9A613A5CEF639, double %756)
  %758 = tail call double @llvm.fmuladd.f64(double %245, double 0xBC95800000000000, double %757)
  %759 = tail call double @llvm.fmuladd.f64(double %307, double 0xBCC1000000000000, double %758)
  %760 = tail call double @llvm.fmuladd.f64(double %247, double 0xBCB6800000000000, double %759)
  %761 = tail call double @llvm.fmuladd.f64(double %249, double 0x3C9DFFFFFFFFFFFE, double %760)
  %762 = tail call double @llvm.fmuladd.f64(double %251, double 0x3CB9C00000000001, double %761)
  %763 = tail call double @llvm.fmuladd.f64(double %311, double 0x3C70000000000001, double %762)
  %764 = tail call double @llvm.fmuladd.f64(double %253, double 0x3C7FFFFFFFFFFFFF, double %763)
  %765 = tail call double @llvm.fmuladd.f64(double %255, double 0xBCC8000000000000, double %764)
  %766 = tail call double @llvm.fmuladd.f64(double %257, double 0xBCB1000000000001, double %765)
  %767 = tail call double @llvm.fmuladd.f64(double %259, double 0xBFEA0946EB3057DC, double %766)
  %768 = tail call double @llvm.fmuladd.f64(double %261, double 0x3CBA400000000000, double %767)
  %769 = tail call double @llvm.fmuladd.f64(double %318, double 0x3CB2000000000000, double %768)
  %770 = tail call double @llvm.fmuladd.f64(double %263, double 0x3C8C000000000000, double %769)
  %771 = tail call double @llvm.fmuladd.f64(double %265, double 0xBCA4800000000001, double %770)
  %772 = tail call double @llvm.fmuladd.f64(double %267, double 0xBCA7000000000002, double %771)
  %773 = tail call double @llvm.fmuladd.f64(double %269, double 0x3C94000000000000, double %772)
  %774 = tail call double @llvm.fmuladd.f64(double %324, double 0xBC98000000000000, double %773)
  %775 = tail call double @llvm.fmuladd.f64(double %271, double 0xBCBBC00000000001, double %774)
  %776 = tail call double @llvm.fmuladd.f64(double %273, double 0xBC94000000000000, double %775)
  %777 = tail call double @llvm.fmuladd.f64(double %275, double 0x3FF86DB962AC2966, double %776)
  %778 = tail call double @llvm.fmuladd.f64(double %277, double 0x3C95000000000000, double %777)
  %779 = tail call double @llvm.fmuladd.f64(double %279, double 0x3CAD7FFFFFFFFFFE, double %778)
  %780 = tail call double @llvm.fmuladd.f64(double %281, double 0x3CA4000000000001, double %779)
  %781 = tail call double @llvm.fmuladd.f64(double %283, double 0xBCAB800000000001, double %780)
  %782 = tail call double @llvm.fmuladd.f64(double %285, double 0xBC78000000000002, double %781)
  %783 = tail call double @llvm.fmuladd.f64(double %287, double 0xBCA9FFFFFFFFFFFE, double %782)
  %784 = tail call double @llvm.fmuladd.f64(double %289, double 0xBC84000000000000, double %783)
  %gep8343 = getelementptr double, ptr %invariant.gep8342, i64 %indvars.iv
  %785 = load double, ptr %gep8343, align 8, !tbaa !5
  %786 = fadd double %785, %784
  store double %786, ptr %gep8343, align 8, !tbaa !5
  %787 = tail call double @llvm.fmuladd.f64(double %219, double 0x3C8E000000000000, double %420)
  %788 = tail call double @llvm.fmuladd.f64(double %223, double 0xBC62000000000000, double %787)
  %789 = tail call double @llvm.fmuladd.f64(double %225, double 0xBFBD29AD687BB04F, double %788)
  %790 = tail call double @llvm.fmuladd.f64(double %227, double 0x3C96000000000000, double %789)
  %791 = tail call double @llvm.fmuladd.f64(double %229, double 0x3CA8000000000001, double %790)
  %792 = tail call double @llvm.fmuladd.f64(double %231, double 0xBCA1000000000001, double %791)
  %793 = tail call double @llvm.fmuladd.f64(double %233, double 0xBC64000000000000, double %792)
  %794 = tail call double @llvm.fmuladd.f64(double %235, double 0xBC98000000000000, double %793)
  %795 = tail call double @llvm.fmuladd.f64(double %237, double 0xBCA7000000000002, double %794)
  %796 = tail call double @llvm.fmuladd.f64(double %239, double 0xBC7FFFFFFFFFFFFF, double %795)
  %797 = tail call double @llvm.fmuladd.f64(double %241, double 0xBC7FFFFFFFFFFFFF, double %796)
  %798 = tail call double @llvm.fmuladd.f64(double %243, double 0xBC7E000000000001, double %797)
  %799 = tail call double @llvm.fmuladd.f64(double %245, double 0x3FD9A613A5CEF637, double %798)
  %800 = tail call double @llvm.fmuladd.f64(double %247, double 0xBC96000000000000, double %799)
  %801 = tail call double @llvm.fmuladd.f64(double %249, double 0x3CA1800000000000, double %800)
  %802 = tail call double @llvm.fmuladd.f64(double %251, double 0xBCB5BFFFFFFFFFFF, double %801)
  %803 = tail call double @llvm.fmuladd.f64(double %311, double 0xBC88000000000000, double %802)
  %804 = tail call double @llvm.fmuladd.f64(double %253, double 0x3C90000000000000, double %803)
  %805 = tail call double @llvm.fmuladd.f64(double %255, double 0x3CA4000000000001, double %804)
  %806 = tail call double @llvm.fmuladd.f64(double %257, double 0x3C88000000000000, double %805)
  %807 = tail call double @llvm.fmuladd.f64(double %259, double 0xBC86000000000001, double %806)
  %808 = tail call double @llvm.fmuladd.f64(double %261, double 0xBFEA0946EB3057DA, double %807)
  %809 = tail call double @llvm.fmuladd.f64(double %318, double 0x3C7FFFFFFFFFFFFF, double %808)
  %810 = tail call double @llvm.fmuladd.f64(double %263, double 0xBC60000000000000, double %809)
  %811 = tail call double @llvm.fmuladd.f64(double %265, double 0x3C9CFFFFFFFFFFFF, double %810)
  %812 = tail call double @llvm.fmuladd.f64(double %267, double 0xBC74000000000000, double %811)
  %813 = tail call double @llvm.fmuladd.f64(double %269, double 0x3CA4000000000001, double %812)
  %814 = tail call double @llvm.fmuladd.f64(double %324, double 0x3C70000000000001, double %813)
  %815 = tail call double @llvm.fmuladd.f64(double %271, double 0x3CAE800000000001, double %814)
  %816 = tail call double @llvm.fmuladd.f64(double %273, double 0xBC8E000000000000, double %815)
  %817 = tail call double @llvm.fmuladd.f64(double %275, double 0xBC70000000000001, double %816)
  %818 = tail call double @llvm.fmuladd.f64(double %277, double 0x3FF86DB962AC2966, double %817)
  %819 = tail call double @llvm.fmuladd.f64(double %279, double 0x3C93000000000000, double %818)
  %820 = tail call double @llvm.fmuladd.f64(double %281, double 0xBC98000000000000, double %819)
  %821 = tail call double @llvm.fmuladd.f64(double %283, double 0x3C94000000000000, double %820)
  %822 = tail call double @llvm.fmuladd.f64(double %285, double 0x3C95000000000000, double %821)
  %823 = tail call double @llvm.fmuladd.f64(double %287, double 0xBCA2000000000000, double %822)
  %824 = tail call double @llvm.fmuladd.f64(double %289, double 0x3C78000000000002, double %823)
  %gep8345 = getelementptr double, ptr %invariant.gep8344, i64 %indvars.iv
  %825 = load double, ptr %gep8345, align 8, !tbaa !5
  %826 = fadd double %824, %825
  store double %826, ptr %gep8345, align 8, !tbaa !5
  %827 = fmul double %220, 0xBCB77FFFFFFFFFFF
  %828 = tail call double @llvm.fmuladd.f64(double %219, double 0xBCC9000000000000, double %827)
  %829 = tail call double @llvm.fmuladd.f64(double %223, double 0xBCA33FFFFFFFFFFE, double %828)
  %830 = tail call double @llvm.fmuladd.f64(double %225, double 0xBCB7D00000000001, double %829)
  %831 = tail call double @llvm.fmuladd.f64(double %227, double 0xBFBD29AD687BB04F, double %830)
  %832 = tail call double @llvm.fmuladd.f64(double %229, double 0x3CAE800000000001, double %831)
  %833 = tail call double @llvm.fmuladd.f64(double %231, double 0x3C99000000000000, double %832)
  %834 = tail call double @llvm.fmuladd.f64(double %233, double 0xBCB5600000000000, double %833)
  %835 = tail call double @llvm.fmuladd.f64(double %235, double 0x3C60000000000000, double %834)
  %836 = tail call double @llvm.fmuladd.f64(double %237, double 0xBC78000000000002, double %835)
  %837 = tail call double @llvm.fmuladd.f64(double %239, double 0xBC7FFFFFFFFFFFFF, double %836)
  %838 = tail call double @llvm.fmuladd.f64(double %241, double 0xBC90000000000000, double %837)
  %839 = tail call double @llvm.fmuladd.f64(double %243, double 0x3C91000000000000, double %838)
  %840 = tail call double @llvm.fmuladd.f64(double %245, double 0x3CA27FFFFFFFFFFF, double %839)
  %841 = tail call double @llvm.fmuladd.f64(double %307, double 0x3FD9A613A5CEF63B, double %840)
  %842 = tail call double @llvm.fmuladd.f64(double %247, double 0x3C88000000000000, double %841)
  %843 = tail call double @llvm.fmuladd.f64(double %249, double 0x3CACFFFFFFFFFFFF, double %842)
  %844 = tail call double @llvm.fmuladd.f64(double %251, double 0xBCB6800000000000, double %843)
  %845 = tail call double @llvm.fmuladd.f64(double %253, double 0xBC98000000000000, double %844)
  %846 = tail call double @llvm.fmuladd.f64(double %255, double 0xBCA4000000000001, double %845)
  %847 = tail call double @llvm.fmuladd.f64(double %257, double 0x3C7FFFFFFFFFFFFF, double %846)
  %848 = tail call double @llvm.fmuladd.f64(double %259, double 0xBCB1000000000001, double %847)
  %849 = tail call double @llvm.fmuladd.f64(double %261, double 0x3CA3800000000002, double %848)
  %850 = tail call double @llvm.fmuladd.f64(double %318, double 0xBFEA0946EB3057E0, double %849)
  %851 = tail call double @llvm.fmuladd.f64(double %263, double 0x3C9C000000000000, double %850)
  %852 = tail call double @llvm.fmuladd.f64(double %265, double 0x3C86000000000001, double %851)
  %853 = tail call double @llvm.fmuladd.f64(double %267, double 0x3CC3600000000000, double %852)
  %854 = tail call double @llvm.fmuladd.f64(double %269, double 0xBC9C000000000000, double %853)
  %855 = tail call double @llvm.fmuladd.f64(double %324, double 0xBCA0000000000002, double %854)
  %856 = tail call double @llvm.fmuladd.f64(double %271, double 0xBCB2000000000000, double %855)
  %857 = tail call double @llvm.fmuladd.f64(double %273, double 0x3CB4800000000001, double %856)
  %858 = tail call double @llvm.fmuladd.f64(double %275, double 0x3CA0E00000000001, double %857)
  %859 = tail call double @llvm.fmuladd.f64(double %277, double 0xBCB2D00000000001, double %858)
  %860 = tail call double @llvm.fmuladd.f64(double %279, double 0x3FF86DB962AC2961, double %859)
  %861 = tail call double @llvm.fmuladd.f64(double %281, double 0x3C97000000000000, double %860)
  %862 = tail call double @llvm.fmuladd.f64(double %283, double 0x3C9EFFFFFFFFFFFD, double %861)
  %863 = tail call double @llvm.fmuladd.f64(double %285, double 0x3CB8E00000000000, double %862)
  %864 = tail call double @llvm.fmuladd.f64(double %287, double 0x3CA1000000000001, double %863)
  %865 = tail call double @llvm.fmuladd.f64(double %289, double 0xBC90000000000000, double %864)
  %gep8347 = getelementptr double, ptr %invariant.gep8346, i64 %indvars.iv
  %866 = load double, ptr %gep8347, align 8, !tbaa !5
  %867 = fadd double %865, %866
  store double %867, ptr %gep8347, align 8, !tbaa !5
  %868 = fmul double %220, 0xBC98000000000000
  %869 = tail call double @llvm.fmuladd.f64(double %219, double 0x3C88000000000000, double %868)
  %870 = tail call double @llvm.fmuladd.f64(double %223, double 0x3C90800000000000, double %869)
  %871 = tail call double @llvm.fmuladd.f64(double %225, double 0x3CB8300000000001, double %870)
  %872 = tail call double @llvm.fmuladd.f64(double %227, double 0x3C99000000000000, double %871)
  %873 = tail call double @llvm.fmuladd.f64(double %229, double 0xBFBD29AD687BB056, double %872)
  %874 = tail call double @llvm.fmuladd.f64(double %231, double 0xBC78000000000002, double %873)
  %875 = tail call double @llvm.fmuladd.f64(double %233, double 0x3C64000000000000, double %874)
  %876 = tail call double @llvm.fmuladd.f64(double %235, double 0x3CA7000000000002, double %875)
  %877 = tail call double @llvm.fmuladd.f64(double %237, double 0xBCA2FFFFFFFFFFFE, double %876)
  %878 = tail call double @llvm.fmuladd.f64(double %239, double 0xBC98000000000000, double %877)
  %879 = tail call double @llvm.fmuladd.f64(double %241, double 0xBC7FFFFFFFFFFFFF, double %878)
  %880 = tail call double @llvm.fmuladd.f64(double %243, double 0x3C7C000000000000, double %879)
  %881 = tail call double @llvm.fmuladd.f64(double %245, double 0xBC9CFFFFFFFFFFFF, double %880)
  %882 = tail call double @llvm.fmuladd.f64(double %307, double 0xBC90000000000000, double %881)
  %883 = tail call double @llvm.fmuladd.f64(double %247, double 0x3FD9A613A5CEF63C, double %882)
  %884 = tail call double @llvm.fmuladd.f64(double %249, double 0xBCA2FFFFFFFFFFFE, double %883)
  %885 = tail call double @llvm.fmuladd.f64(double %251, double 0xBCA2FFFFFFFFFFFE, double %884)
  %886 = tail call double @llvm.fmuladd.f64(double %311, double 0x3C98000000000000, double %885)
  %887 = tail call double @llvm.fmuladd.f64(double %253, double 0x3CA2000000000000, double %886)
  %888 = tail call double @llvm.fmuladd.f64(double %255, double 0x3CB0000000000000, double %887)
  %889 = tail call double @llvm.fmuladd.f64(double %257, double 0x3C88000000000000, double %888)
  %890 = tail call double @llvm.fmuladd.f64(double %259, double 0xBC60000000000000, double %889)
  %891 = tail call double @llvm.fmuladd.f64(double %261, double 0xBCAD7FFFFFFFFFFE, double %890)
  %892 = tail call double @llvm.fmuladd.f64(double %318, double 0x3CB3FFFFFFFFFFFF, double %891)
  %893 = tail call double @llvm.fmuladd.f64(double %263, double 0xBFEA0946EB3057DC, double %892)
  %894 = tail call double @llvm.fmuladd.f64(double %265, double 0x3C9EFFFFFFFFFFFD, double %893)
  %895 = tail call double @llvm.fmuladd.f64(double %267, double 0x3C67FFFFFFFFFFFE, double %894)
  %896 = tail call double @llvm.fmuladd.f64(double %269, double 0x3C88000000000000, double %895)
  %897 = tail call double @llvm.fmuladd.f64(double %324, double 0xBC90000000000000, double %896)
  %898 = tail call double @llvm.fmuladd.f64(double %271, double 0x3CB8000000000001, double %897)
  %899 = tail call double @llvm.fmuladd.f64(double %273, double 0xBC7FFFFFFFFFFFFF, double %898)
  %900 = tail call double @llvm.fmuladd.f64(double %275, double 0x3C6DFFFFFFFFFFFE, double %899)
  %901 = tail call double @llvm.fmuladd.f64(double %277, double 0x3C9AC00000000000, double %900)
  %902 = tail call double @llvm.fmuladd.f64(double %279, double 0x3C8C000000000000, double %901)
  %903 = tail call double @llvm.fmuladd.f64(double %281, double 0x3FF86DB962AC2966, double %902)
  %904 = tail call double @llvm.fmuladd.f64(double %283, double 0xBC94000000000000, double %903)
  %905 = tail call double @llvm.fmuladd.f64(double %285, double 0xBC76000000000001, double %904)
  %906 = tail call double @llvm.fmuladd.f64(double %287, double 0xBCB2000000000000, double %905)
  %907 = tail call double @llvm.fmuladd.f64(double %289, double 0x3CA7000000000002, double %906)
  %gep8349 = getelementptr double, ptr %invariant.gep8348, i64 %indvars.iv
  %908 = load double, ptr %gep8349, align 8, !tbaa !5
  %909 = fadd double %907, %908
  store double %909, ptr %gep8349, align 8, !tbaa !5
  %910 = fmul double %220, 0xBC76000000000001
  %911 = tail call double @llvm.fmuladd.f64(double %219, double 0x3CB3000000000000, double %910)
  %912 = tail call double @llvm.fmuladd.f64(double %223, double 0xBC99200000000000, double %911)
  %913 = tail call double @llvm.fmuladd.f64(double %225, double 0x3CAE100000000002, double %912)
  %914 = tail call double @llvm.fmuladd.f64(double %227, double 0x3C86FFFFFFFFFFFF, double %913)
  %915 = tail call double @llvm.fmuladd.f64(double %229, double 0x3C99800000000000, double %914)
  %916 = tail call double @llvm.fmuladd.f64(double %231, double 0xBFBD29AD687BB06B, double %915)
  %917 = tail call double @llvm.fmuladd.f64(double %233, double 0x3C8D800000000000, double %916)
  %918 = tail call double @llvm.fmuladd.f64(double %235, double 0x3C90000000000000, double %917)
  %919 = tail call double @llvm.fmuladd.f64(double %237, double 0xBC60000000000000, double %918)
  %920 = tail call double @llvm.fmuladd.f64(double %239, double 0xBCB0000000000000, double %919)
  %921 = tail call double @llvm.fmuladd.f64(double %243, double 0xBC85000000000000, double %920)
  %922 = tail call double @llvm.fmuladd.f64(double %245, double 0xBC8B800000000001, double %921)
  %923 = tail call double @llvm.fmuladd.f64(double %307, double 0x3C8E000000000000, double %922)
  %924 = tail call double @llvm.fmuladd.f64(double %247, double 0xBCAB800000000001, double %923)
  %925 = tail call double @llvm.fmuladd.f64(double %249, double 0x3FD9A613A5CEF639, double %924)
  %926 = tail call double @llvm.fmuladd.f64(double %251, double 0xBC91000000000000, double %925)
  %927 = tail call double @llvm.fmuladd.f64(double %311, double 0xBC90000000000000, double %926)
  %928 = tail call double @llvm.fmuladd.f64(double %253, double 0x3C84000000000000, double %927)
  %929 = tail call double @llvm.fmuladd.f64(double %255, double 0x3CC0000000000000, double %928)
  %930 = tail call double @llvm.fmuladd.f64(double %257, double 0xBC92000000000000, double %929)
  %931 = tail call double @llvm.fmuladd.f64(double %259, double 0x3C91800000000000, double %930)
  %932 = tail call double @llvm.fmuladd.f64(double %261, double 0x3C30000000000000, double %931)
  %933 = tail call double @llvm.fmuladd.f64(double %318, double 0x3C82000000000000, double %932)
  %934 = tail call double @llvm.fmuladd.f64(double %263, double 0xBC95000000000000, double %933)
  %935 = tail call double @llvm.fmuladd.f64(double %265, double 0xBFEA0946EB3057DA, double %934)
  %936 = tail call double @llvm.fmuladd.f64(double %267, double 0xBCA6BFFFFFFFFFFE, double %935)
  %937 = tail call double @llvm.fmuladd.f64(double %269, double 0x3C8C000000000000, double %936)
  %938 = tail call double @llvm.fmuladd.f64(double %324, double 0xBC8C000000000000, double %937)
  %939 = tail call double @llvm.fmuladd.f64(double %271, double 0x3CAC000000000000, double %938)
  %940 = tail call double @llvm.fmuladd.f64(double %273, double 0x3C91800000000000, double %939)
  %941 = tail call double @llvm.fmuladd.f64(double %275, double 0xBC74000000000000, double %940)
  %942 = tail call double @llvm.fmuladd.f64(double %277, double 0xBC72800000000001, double %941)
  %943 = tail call double @llvm.fmuladd.f64(double %279, double 0xBC76000000000001, double %942)
  %944 = tail call double @llvm.fmuladd.f64(double %281, double 0xBC6C000000000000, double %943)
  %945 = tail call double @llvm.fmuladd.f64(double %283, double 0x3FF86DB962AC2966, double %944)
  %946 = tail call double @llvm.fmuladd.f64(double %285, double 0xBC9C800000000000, double %945)
  %947 = tail call double @llvm.fmuladd.f64(double %287, double 0xBC99000000000000, double %946)
  %948 = tail call double @llvm.fmuladd.f64(double %289, double 0xBC78000000000002, double %947)
  %gep8351 = getelementptr double, ptr %invariant.gep8350, i64 %indvars.iv
  %949 = load double, ptr %gep8351, align 8, !tbaa !5
  %950 = fadd double %948, %949
  store double %950, ptr %gep8351, align 8, !tbaa !5
  %951 = fmul double %220, 0x3C9EFFFFFFFFFFFD
  %952 = tail call double @llvm.fmuladd.f64(double %219, double 0xBCB8800000000000, double %951)
  %953 = tail call double @llvm.fmuladd.f64(double %223, double 0xBC9E5FFFFFFFFFFD, double %952)
  %954 = tail call double @llvm.fmuladd.f64(double %225, double 0x3C92200000000000, double %953)
  %955 = tail call double @llvm.fmuladd.f64(double %227, double 0xBCA4400000000001, double %954)
  %956 = tail call double @llvm.fmuladd.f64(double %229, double 0xBC71FFFFFFFFFFFF, double %955)
  %957 = tail call double @llvm.fmuladd.f64(double %231, double 0x3C96400000000000, double %956)
  %958 = tail call double @llvm.fmuladd.f64(double %233, double 0xBFBD29AD687BB056, double %957)
  %959 = tail call double @llvm.fmuladd.f64(double %235, double 0x3CB07FFFFFFFFFFF, double %958)
  %960 = tail call double @llvm.fmuladd.f64(double %239, double 0x3CB8000000000001, double %959)
  %961 = tail call double @llvm.fmuladd.f64(double %241, double 0xBC9A000000000000, double %960)
  %962 = tail call double @llvm.fmuladd.f64(double %243, double 0x3C82FFFFFFFFFFFF, double %961)
  %963 = tail call double @llvm.fmuladd.f64(double %245, double 0x3C6DFFFFFFFFFFFE, double %962)
  %964 = tail call double @llvm.fmuladd.f64(double %307, double 0xBCA0800000000001, double %963)
  %965 = tail call double @llvm.fmuladd.f64(double %247, double 0xBCB1C00000000000, double %964)
  %966 = tail call double @llvm.fmuladd.f64(double %249, double 0xBC9E7FFFFFFFFFFD, double %965)
  %967 = tail call double @llvm.fmuladd.f64(double %251, double 0x3FD9A613A5CEF63B, double %966)
  %968 = tail call double @llvm.fmuladd.f64(double %311, double 0x3C88000000000000, double %967)
  %969 = tail call double @llvm.fmuladd.f64(double %253, double 0x3C84000000000000, double %968)
  %970 = tail call double @llvm.fmuladd.f64(double %257, double 0xBC9C000000000000, double %969)
  %971 = tail call double @llvm.fmuladd.f64(double %259, double 0xBC97000000000000, double %970)
  %972 = tail call double @llvm.fmuladd.f64(double %261, double 0x3CA5200000000000, double %971)
  %973 = tail call double @llvm.fmuladd.f64(double %318, double 0x3C99000000000000, double %972)
  %974 = tail call double @llvm.fmuladd.f64(double %263, double 0x3C8E000000000000, double %973)
  %975 = tail call double @llvm.fmuladd.f64(double %267, double 0xBFEA0946EB3057DC, double %974)
  %976 = tail call double @llvm.fmuladd.f64(double %269, double 0xBC88000000000000, double %975)
  %977 = tail call double @llvm.fmuladd.f64(double %324, double 0xBC8C000000000000, double %976)
  %978 = tail call double @llvm.fmuladd.f64(double %271, double 0x3CC1800000000000, double %977)
  %979 = tail call double @llvm.fmuladd.f64(double %273, double 0xBCA8C00000000000, double %978)
  %980 = tail call double @llvm.fmuladd.f64(double %275, double 0xBCAE400000000002, double %979)
  %981 = tail call double @llvm.fmuladd.f64(double %277, double 0xBC94600000000000, double %980)
  %982 = tail call double @llvm.fmuladd.f64(double %279, double 0x3C94800000000000, double %981)
  %983 = tail call double @llvm.fmuladd.f64(double %281, double 0x3CAF400000000001, double %982)
  %984 = tail call double @llvm.fmuladd.f64(double %283, double 0xBCB7AFFFFFFFFFFF, double %983)
  %985 = tail call double @llvm.fmuladd.f64(double %285, double 0x3FF86DB962AC2966, double %984)
  %986 = tail call double @llvm.fmuladd.f64(double %287, double 0xBCA67FFFFFFFFFFE, double %985)
  %987 = tail call double @llvm.fmuladd.f64(double %289, double 0xBC86000000000001, double %986)
  %gep8353 = getelementptr double, ptr %invariant.gep8352, i64 %indvars.iv
  %988 = load double, ptr %gep8353, align 8, !tbaa !5
  %989 = fadd double %987, %988
  store double %989, ptr %gep8353, align 8, !tbaa !5
  %990 = fmul double %220, 0xBCB5800000000000
  %991 = tail call double @llvm.fmuladd.f64(double %219, double 0x3CA4000000000001, double %990)
  %992 = tail call double @llvm.fmuladd.f64(double %223, double 0x3CA33FFFFFFFFFFE, double %991)
  %993 = tail call double @llvm.fmuladd.f64(double %225, double 0xBCA1C00000000000, double %992)
  %994 = tail call double @llvm.fmuladd.f64(double %227, double 0xBCB8000000000001, double %993)
  %995 = tail call double @llvm.fmuladd.f64(double %229, double 0xBCACFFFFFFFFFFFF, double %994)
  %996 = tail call double @llvm.fmuladd.f64(double %231, double 0xBC92000000000000, double %995)
  %997 = tail call double @llvm.fmuladd.f64(double %233, double 0x3C9B000000000000, double %996)
  %998 = tail call double @llvm.fmuladd.f64(double %235, double 0xBFBD29AD687BB04F, double %997)
  %999 = tail call double @llvm.fmuladd.f64(double %237, double 0x3CA2000000000000, double %998)
  %1000 = tail call double @llvm.fmuladd.f64(double %239, double 0xBCC4000000000000, double %999)
  %1001 = tail call double @llvm.fmuladd.f64(double %241, double 0xBCAC000000000000, double %1000)
  %1002 = tail call double @llvm.fmuladd.f64(double %243, double 0xBC9DFFFFFFFFFFFE, double %1001)
  %1003 = tail call double @llvm.fmuladd.f64(double %247, double 0x3CA0000000000002, double %1002)
  %1004 = tail call double @llvm.fmuladd.f64(double %249, double 0x3CA7000000000002, double %1003)
  %1005 = tail call double @llvm.fmuladd.f64(double %251, double 0xBC9DFFFFFFFFFFFE, double %1004)
  %1006 = tail call double @llvm.fmuladd.f64(double %311, double 0x3FD9A613A5CEF63E, double %1005)
  %1007 = tail call double @llvm.fmuladd.f64(double %253, double 0x3CB0000000000000, double %1006)
  %1008 = tail call double @llvm.fmuladd.f64(double %255, double 0x3CBA000000000000, double %1007)
  %1009 = tail call double @llvm.fmuladd.f64(double %257, double 0x3CC1000000000000, double %1008)
  %1010 = tail call double @llvm.fmuladd.f64(double %259, double 0x3C9DFFFFFFFFFFFE, double %1009)
  %1011 = tail call double @llvm.fmuladd.f64(double %261, double 0xBCBC400000000000, double %1010)
  %1012 = tail call double @llvm.fmuladd.f64(double %318, double 0x3C7FFFFFFFFFFFFF, double %1011)
  %1013 = tail call double @llvm.fmuladd.f64(double %263, double 0x3C90000000000000, double %1012)
  %1014 = tail call double @llvm.fmuladd.f64(double %265, double 0xBCAF000000000001, double %1013)
  %1015 = tail call double @llvm.fmuladd.f64(double %267, double 0x3C88000000000000, double %1014)
  %1016 = tail call double @llvm.fmuladd.f64(double %269, double 0xBFEA0946EB3057DD, double %1015)
  %1017 = tail call double @llvm.fmuladd.f64(double %324, double 0xBCA4000000000001, double %1016)
  %1018 = tail call double @llvm.fmuladd.f64(double %271, double 0x3CC0000000000000, double %1017)
  %1019 = tail call double @llvm.fmuladd.f64(double %273, double 0xBC90000000000000, double %1018)
  %1020 = tail call double @llvm.fmuladd.f64(double %275, double 0xBCA0400000000002, double %1019)
  %1021 = tail call double @llvm.fmuladd.f64(double %277, double 0x3CB4600000000001, double %1020)
  %1022 = tail call double @llvm.fmuladd.f64(double %279, double 0x3CB1000000000001, double %1021)
  %1023 = tail call double @llvm.fmuladd.f64(double %281, double 0xBCA7000000000002, double %1022)
  %1024 = tail call double @llvm.fmuladd.f64(double %283, double 0x3C84000000000000, double %1023)
  %1025 = tail call double @llvm.fmuladd.f64(double %285, double 0xBC88000000000000, double %1024)
  %1026 = tail call double @llvm.fmuladd.f64(double %287, double 0x3FF86DB962AC2966, double %1025)
  %1027 = tail call double @llvm.fmuladd.f64(double %289, double 0x3CA2000000000000, double %1026)
  %gep8355 = getelementptr double, ptr %invariant.gep8354, i64 %indvars.iv
  %1028 = load double, ptr %gep8355, align 8, !tbaa !5
  %1029 = fadd double %1027, %1028
  store double %1029, ptr %gep8355, align 8, !tbaa !5
  %1030 = fmul double %220, 0x3CAB000000000001
  %1031 = tail call double @llvm.fmuladd.f64(double %219, double 0x3CC1000000000000, double %1030)
  %1032 = tail call double @llvm.fmuladd.f64(double %223, double 0x3CA1C00000000000, double %1031)
  %1033 = tail call double @llvm.fmuladd.f64(double %225, double 0xBCC2A00000000000, double %1032)
  %1034 = tail call double @llvm.fmuladd.f64(double %227, double 0x3CBC800000000000, double %1033)
  %1035 = tail call double @llvm.fmuladd.f64(double %229, double 0x3C96000000000000, double %1034)
  %1036 = tail call double @llvm.fmuladd.f64(double %231, double 0xBC95000000000000, double %1035)
  %1037 = tail call double @llvm.fmuladd.f64(double %233, double 0xBCB07FFFFFFFFFFF, double %1036)
  %1038 = tail call double @llvm.fmuladd.f64(double %235, double 0xBCA0000000000002, double %1037)
  %1039 = tail call double @llvm.fmuladd.f64(double %237, double 0xBFBD29AD687BB05D, double %1038)
  %1040 = tail call double @llvm.fmuladd.f64(double %239, double 0x3CC3000000000000, double %1039)
  %1041 = tail call double @llvm.fmuladd.f64(double %241, double 0x3CA4000000000001, double %1040)
  %1042 = tail call double @llvm.fmuladd.f64(double %243, double 0x3CAF000000000001, double %1041)
  %1043 = tail call double @llvm.fmuladd.f64(double %245, double 0x3CAB000000000001, double %1042)
  %1044 = tail call double @llvm.fmuladd.f64(double %307, double 0xBCB9000000000000, double %1043)
  %1045 = tail call double @llvm.fmuladd.f64(double %247, double 0xBCA2000000000000, double %1044)
  %1046 = tail call double @llvm.fmuladd.f64(double %249, double 0x3CA7000000000002, double %1045)
  %1047 = tail call double @llvm.fmuladd.f64(double %251, double 0xBCA5FFFFFFFFFFFF, double %1046)
  %1048 = tail call double @llvm.fmuladd.f64(double %311, double 0xBCB5FFFFFFFFFFFF, double %1047)
  %1049 = tail call double @llvm.fmuladd.f64(double %253, double 0x3FD9A613A5CEF63B, double %1048)
  %1050 = tail call double @llvm.fmuladd.f64(double %255, double 0xBCCB000000000000, double %1049)
  %1051 = tail call double @llvm.fmuladd.f64(double %257, double 0xBC90000000000000, double %1050)
  %1052 = tail call double @llvm.fmuladd.f64(double %259, double 0xBCA7000000000002, double %1051)
  %1053 = tail call double @llvm.fmuladd.f64(double %261, double 0x3C89FFFFFFFFFFFF, double %1052)
  %1054 = tail call double @llvm.fmuladd.f64(double %318, double 0x3CA2000000000000, double %1053)
  %1055 = tail call double @llvm.fmuladd.f64(double %263, double 0x3CB0000000000000, double %1054)
  %1056 = tail call double @llvm.fmuladd.f64(double %265, double 0xBC84000000000000, double %1055)
  %1057 = tail call double @llvm.fmuladd.f64(double %267, double 0x3CB27FFFFFFFFFFF, double %1056)
  %1058 = tail call double @llvm.fmuladd.f64(double %269, double 0x3CA4000000000001, double %1057)
  %1059 = tail call double @llvm.fmuladd.f64(double %324, double 0xBFEA0946EB3057DB, double %1058)
  %1060 = tail call double @llvm.fmuladd.f64(double %271, double 0xBCA8000000000001, double %1059)
  %1061 = tail call double @llvm.fmuladd.f64(double %273, double 0xBCAE000000000002, double %1060)
  %1062 = tail call double @llvm.fmuladd.f64(double %275, double 0x3C50000000000000, double %1061)
  %1063 = tail call double @llvm.fmuladd.f64(double %277, double 0xBC96800000000000, double %1062)
  %1064 = tail call double @llvm.fmuladd.f64(double %279, double 0xBC78000000000002, double %1063)
  %1065 = tail call double @llvm.fmuladd.f64(double %281, double 0x3CA2FFFFFFFFFFFE, double %1064)
  %1066 = tail call double @llvm.fmuladd.f64(double %283, double 0x3C9A000000000000, double %1065)
  %1067 = tail call double @llvm.fmuladd.f64(double %285, double 0x3CA3800000000002, double %1066)
  %1068 = tail call double @llvm.fmuladd.f64(double %287, double 0x3CBCFFFFFFFFFFFF, double %1067)
  %1069 = tail call double @llvm.fmuladd.f64(double %289, double 0x3FF86DB962AC2966, double %1068)
  %gep8357 = getelementptr double, ptr %invariant.gep8356, i64 %indvars.iv
  %1070 = load double, ptr %gep8357, align 8, !tbaa !5
  %1071 = fadd double %1069, %1070
  store double %1071, ptr %gep8357, align 8, !tbaa !5
  %1072 = fmul double %220, 0xBFB5B58B4F03B1A2
  %1073 = tail call double @llvm.fmuladd.f64(double %219, double 0xBF83152016E0ECA0, double %1072)
  %1074 = tail call double @llvm.fmuladd.f64(double %223, double 0x3F938CE4890DB307, double %1073)
  %1075 = tail call double @llvm.fmuladd.f64(double %225, double 0x3FF4EC1BB3FDC612, double %1074)
  %1076 = tail call double @llvm.fmuladd.f64(double %227, double 0x3F85E50BB681A41A, double %1075)
  %1077 = tail call double @llvm.fmuladd.f64(double %229, double 0xBFE5679E70A60657, double %1076)
  %1078 = tail call double @llvm.fmuladd.f64(double %231, double 0x3FCA50C41AB7A334, double %1077)
  %1079 = tail call double @llvm.fmuladd.f64(double %233, double 0xBFB49217631F5953, double %1078)
  %1080 = tail call double @llvm.fmuladd.f64(double %235, double 0x3FD417DEBFC17B18, double %1079)
  %1081 = tail call double @llvm.fmuladd.f64(double %237, double 0xBF8BDAF699AECF20, double %1080)
  %1082 = tail call double @llvm.fmuladd.f64(double %239, double 0x3CA4000000000001, double %1081)
  %1083 = tail call double @llvm.fmuladd.f64(double %241, double 0x3C88000000000000, double %1082)
  %1084 = tail call double @llvm.fmuladd.f64(double %243, double 0xBC74000000000000, double %1083)
  %1085 = tail call double @llvm.fmuladd.f64(double %245, double 0x3CB4E00000000000, double %1084)
  %1086 = tail call double @llvm.fmuladd.f64(double %307, double 0x3C70000000000001, double %1085)
  %1087 = tail call double @llvm.fmuladd.f64(double %247, double 0xBCAB000000000001, double %1086)
  %1088 = tail call double @llvm.fmuladd.f64(double %249, double 0xBC91000000000000, double %1087)
  %1089 = tail call double @llvm.fmuladd.f64(double %251, double 0xBC86000000000001, double %1088)
  %1090 = tail call double @llvm.fmuladd.f64(double %253, double 0x3C94000000000000, double %1089)
  %1091 = tail call double @llvm.fmuladd.f64(double %255, double 0xBCA0000000000002, double %1090)
  %1092 = tail call double @llvm.fmuladd.f64(double %259, double 0x3C8C000000000000, double %1091)
  %1093 = tail call double @llvm.fmuladd.f64(double %261, double 0xBC74000000000000, double %1092)
  %1094 = tail call double @llvm.fmuladd.f64(double %318, double 0xBC70000000000001, double %1093)
  %1095 = tail call double @llvm.fmuladd.f64(double %263, double 0xBCB07FFFFFFFFFFF, double %1094)
  %1096 = tail call double @llvm.fmuladd.f64(double %265, double 0x3CA0800000000001, double %1095)
  %1097 = tail call double @llvm.fmuladd.f64(double %267, double 0xBC82000000000000, double %1096)
  %1098 = tail call double @llvm.fmuladd.f64(double %269, double 0x3CA5FFFFFFFFFFFF, double %1097)
  %1099 = tail call double @llvm.fmuladd.f64(double %324, double 0xBC9C000000000000, double %1098)
  %1100 = tail call double @llvm.fmuladd.f64(double %271, double 0x3C82000000000000, double %1099)
  %1101 = tail call double @llvm.fmuladd.f64(double %273, double 0x3C74000000000000, double %1100)
  %1102 = tail call double @llvm.fmuladd.f64(double %275, double 0xBC6C000000000000, double %1101)
  %1103 = tail call double @llvm.fmuladd.f64(double %277, double 0x3C96C00000000000, double %1102)
  %1104 = tail call double @llvm.fmuladd.f64(double %279, double 0xBC99000000000000, double %1103)
  %1105 = tail call double @llvm.fmuladd.f64(double %281, double 0xBC89FFFFFFFFFFFF, double %1104)
  %1106 = tail call double @llvm.fmuladd.f64(double %283, double 0xBC8B000000000000, double %1105)
  %1107 = tail call double @llvm.fmuladd.f64(double %285, double 0x3C85000000000000, double %1106)
  %1108 = tail call double @llvm.fmuladd.f64(double %287, double 0x3C90000000000000, double %1107)
  %1109 = tail call double @llvm.fmuladd.f64(double %289, double 0xBC92000000000000, double %1108)
  %gep8359 = getelementptr double, ptr %invariant.gep8358, i64 %indvars.iv
  %1110 = load double, ptr %gep8359, align 8, !tbaa !5
  %1111 = fadd double %1109, %1110
  store double %1111, ptr %gep8359, align 8, !tbaa !5
  %1112 = fmul double %220, 0xBFBEED13A9F0D8FA
  %1113 = tail call double @llvm.fmuladd.f64(double %219, double 0xBFE333710B32A29B, double %1112)
  %1114 = tail call double @llvm.fmuladd.f64(double %223, double 0xBFA352D4DB969C1C, double %1113)
  %1115 = tail call double @llvm.fmuladd.f64(double %225, double 0x3FA87D764354853D, double %1114)
  %1116 = tail call double @llvm.fmuladd.f64(double %227, double 0x3F9854E0ADA34BB8, double %1115)
  %1117 = tail call double @llvm.fmuladd.f64(double %229, double 0xBFD41C0D131D4295, double %1116)
  %1118 = tail call double @llvm.fmuladd.f64(double %231, double 0x3FF670C5F1F4C929, double %1117)
  %1119 = tail call double @llvm.fmuladd.f64(double %233, double 0x3FC36A9134CD3C5F, double %1118)
  %1120 = tail call double @llvm.fmuladd.f64(double %235, double 0x3FD35DAE88CBA648, double %1119)
  %1121 = tail call double @llvm.fmuladd.f64(double %237, double 0x3FC27B05E24EC5FB, double %1120)
  %1122 = tail call double @llvm.fmuladd.f64(double %239, double 0x3C70000000000001, double %1121)
  %1123 = tail call double @llvm.fmuladd.f64(double %241, double 0x3C7FFFFFFFFFFFFF, double %1122)
  %1124 = tail call double @llvm.fmuladd.f64(double %243, double 0xBC95000000000000, double %1123)
  %1125 = tail call double @llvm.fmuladd.f64(double %245, double 0x3CA3C00000000002, double %1124)
  %1126 = tail call double @llvm.fmuladd.f64(double %307, double 0x3C7FFFFFFFFFFFFF, double %1125)
  %1127 = tail call double @llvm.fmuladd.f64(double %247, double 0xBC92000000000000, double %1126)
  %1128 = tail call double @llvm.fmuladd.f64(double %249, double 0x3CB1000000000001, double %1127)
  %1129 = tail call double @llvm.fmuladd.f64(double %251, double 0x3CA3800000000002, double %1128)
  %1130 = tail call double @llvm.fmuladd.f64(double %311, double 0xBC98000000000000, double %1129)
  %1131 = tail call double @llvm.fmuladd.f64(double %255, double 0x3CAE000000000002, double %1130)
  %1132 = tail call double @llvm.fmuladd.f64(double %257, double 0xBCA2000000000000, double %1131)
  %1133 = tail call double @llvm.fmuladd.f64(double %259, double 0x3C94000000000000, double %1132)
  %1134 = tail call double @llvm.fmuladd.f64(double %261, double 0xBCA1800000000000, double %1133)
  %1135 = tail call double @llvm.fmuladd.f64(double %318, double 0xBC7FFFFFFFFFFFFF, double %1134)
  %1136 = tail call double @llvm.fmuladd.f64(double %263, double 0xBC70000000000001, double %1135)
  %1137 = tail call double @llvm.fmuladd.f64(double %265, double 0x3CA4800000000001, double %1136)
  %1138 = tail call double @llvm.fmuladd.f64(double %267, double 0xBC97000000000000, double %1137)
  %1139 = tail call double @llvm.fmuladd.f64(double %269, double 0x3CA5FFFFFFFFFFFF, double %1138)
  %1140 = tail call double @llvm.fmuladd.f64(double %271, double 0x3C8E000000000000, double %1139)
  %1141 = tail call double @llvm.fmuladd.f64(double %273, double 0x3C97000000000000, double %1140)
  %1142 = tail call double @llvm.fmuladd.f64(double %275, double 0x3C7C000000000000, double %1141)
  %1143 = tail call double @llvm.fmuladd.f64(double %277, double 0xBC8C000000000000, double %1142)
  %1144 = tail call double @llvm.fmuladd.f64(double %279, double 0xBC92000000000000, double %1143)
  %1145 = tail call double @llvm.fmuladd.f64(double %281, double 0xBC88000000000000, double %1144)
  %1146 = tail call double @llvm.fmuladd.f64(double %283, double 0xBC82000000000000, double %1145)
  %1147 = tail call double @llvm.fmuladd.f64(double %285, double 0x3C6C000000000000, double %1146)
  %1148 = tail call double @llvm.fmuladd.f64(double %287, double 0x3C8C000000000000, double %1147)
  %1149 = tail call double @llvm.fmuladd.f64(double %289, double 0x3C78000000000002, double %1148)
  %gep8361 = getelementptr double, ptr %invariant.gep8360, i64 %indvars.iv
  %1150 = load double, ptr %gep8361, align 8, !tbaa !5
  %1151 = fadd double %1149, %1150
  store double %1151, ptr %gep8361, align 8, !tbaa !5
  %1152 = fmul double %220, 0xBFBEED13A9F0D902
  %1153 = tail call double @llvm.fmuladd.f64(double %219, double 0xBFE333710B32A29D, double %1152)
  %1154 = tail call double @llvm.fmuladd.f64(double %223, double 0x3FA87D76435484EB, double %1153)
  %1155 = tail call double @llvm.fmuladd.f64(double %225, double 0xBFA352D4DB969BE2, double %1154)
  %1156 = tail call double @llvm.fmuladd.f64(double %227, double 0xBFD41C0D131D4288, double %1155)
  %1157 = tail call double @llvm.fmuladd.f64(double %229, double 0x3F9854E0ADA34B36, double %1156)
  %1158 = tail call double @llvm.fmuladd.f64(double %231, double 0x3FC36A9134CD3C4D, double %1157)
  %1159 = tail call double @llvm.fmuladd.f64(double %233, double 0x3FF670C5F1F4C92E, double %1158)
  %1160 = tail call double @llvm.fmuladd.f64(double %235, double 0x3FC27B05E24EC5FF, double %1159)
  %1161 = tail call double @llvm.fmuladd.f64(double %237, double 0x3FD35DAE88CBA64A, double %1160)
  %1162 = tail call double @llvm.fmuladd.f64(double %239, double 0x3C94000000000000, double %1161)
  %1163 = tail call double @llvm.fmuladd.f64(double %241, double 0xBC9C000000000000, double %1162)
  %1164 = tail call double @llvm.fmuladd.f64(double %243, double 0x3C82000000000000, double %1163)
  %1165 = tail call double @llvm.fmuladd.f64(double %245, double 0x3C95800000000000, double %1164)
  %1166 = tail call double @llvm.fmuladd.f64(double %307, double 0x3CA8000000000001, double %1165)
  %1167 = tail call double @llvm.fmuladd.f64(double %247, double 0xBC90000000000000, double %1166)
  %1168 = tail call double @llvm.fmuladd.f64(double %249, double 0xBC78000000000002, double %1167)
  %1169 = tail call double @llvm.fmuladd.f64(double %251, double 0x3C7C000000000000, double %1168)
  %1170 = tail call double @llvm.fmuladd.f64(double %311, double 0x3C90000000000000, double %1169)
  %1171 = tail call double @llvm.fmuladd.f64(double %253, double 0xBC7FFFFFFFFFFFFF, double %1170)
  %1172 = tail call double @llvm.fmuladd.f64(double %255, double 0x3C9C000000000000, double %1171)
  %1173 = tail call double @llvm.fmuladd.f64(double %257, double 0xBCA4000000000001, double %1172)
  %1174 = tail call double @llvm.fmuladd.f64(double %259, double 0xBC8C000000000000, double %1173)
  %1175 = tail call double @llvm.fmuladd.f64(double %261, double 0x3C95000000000000, double %1174)
  %1176 = tail call double @llvm.fmuladd.f64(double %318, double 0xBC90000000000000, double %1175)
  %1177 = tail call double @llvm.fmuladd.f64(double %263, double 0xBC98000000000000, double %1176)
  %1178 = tail call double @llvm.fmuladd.f64(double %265, double 0x3C9B000000000000, double %1177)
  %1179 = tail call double @llvm.fmuladd.f64(double %267, double 0xBCA27FFFFFFFFFFF, double %1178)
  %1180 = tail call double @llvm.fmuladd.f64(double %269, double 0xBC7FFFFFFFFFFFFF, double %1179)
  %1181 = tail call double @llvm.fmuladd.f64(double %324, double 0xBC88000000000000, double %1180)
  %1182 = tail call double @llvm.fmuladd.f64(double %271, double 0x3C9EFFFFFFFFFFFD, double %1181)
  %1183 = tail call double @llvm.fmuladd.f64(double %273, double 0x3C7C000000000000, double %1182)
  %1184 = tail call double @llvm.fmuladd.f64(double %275, double 0xBC9C000000000000, double %1183)
  %1185 = tail call double @llvm.fmuladd.f64(double %277, double 0xBC95800000000000, double %1184)
  %1186 = tail call double @llvm.fmuladd.f64(double %279, double 0xBC99000000000000, double %1185)
  %1187 = tail call double @llvm.fmuladd.f64(double %281, double 0xBC92000000000000, double %1186)
  %1188 = tail call double @llvm.fmuladd.f64(double %283, double 0xBCA5FFFFFFFFFFFF, double %1187)
  %1189 = tail call double @llvm.fmuladd.f64(double %285, double 0xBC8B000000000000, double %1188)
  %1190 = tail call double @llvm.fmuladd.f64(double %287, double 0xBC94000000000000, double %1189)
  %1191 = tail call double @llvm.fmuladd.f64(double %289, double 0xBC78000000000002, double %1190)
  %gep8363 = getelementptr double, ptr %invariant.gep8362, i64 %indvars.iv
  %1192 = load double, ptr %gep8363, align 8, !tbaa !5
  %1193 = fadd double %1191, %1192
  store double %1193, ptr %gep8363, align 8, !tbaa !5
  %1194 = tail call double @llvm.fmuladd.f64(double %219, double 0xBF83152016E0ED34, double %1072)
  %1195 = tail call double @llvm.fmuladd.f64(double %223, double 0x3FF4EC1BB3FDC61B, double %1194)
  %1196 = tail call double @llvm.fmuladd.f64(double %225, double 0x3F938CE4890DB2BF, double %1195)
  %1197 = tail call double @llvm.fmuladd.f64(double %227, double 0xBFE5679E70A60656, double %1196)
  %1198 = tail call double @llvm.fmuladd.f64(double %229, double 0x3F85E50BB681A43D, double %1197)
  %1199 = tail call double @llvm.fmuladd.f64(double %231, double 0xBFB49217631F5912, double %1198)
  %1200 = tail call double @llvm.fmuladd.f64(double %233, double 0x3FCA50C41AB7A2EC, double %1199)
  %1201 = tail call double @llvm.fmuladd.f64(double %235, double 0xBF8BDAF699AECEFD, double %1200)
  %1202 = tail call double @llvm.fmuladd.f64(double %237, double 0x3FD417DEBFC17B15, double %1201)
  %1203 = tail call double @llvm.fmuladd.f64(double %239, double 0x3CA4000000000001, double %1202)
  %1204 = tail call double @llvm.fmuladd.f64(double %241, double 0xBCA2000000000000, double %1203)
  %1205 = tail call double @llvm.fmuladd.f64(double %243, double 0x3CA0800000000001, double %1204)
  %1206 = tail call double @llvm.fmuladd.f64(double %245, double 0xBCA0C00000000001, double %1205)
  %1207 = tail call double @llvm.fmuladd.f64(double %307, double 0x3C9C000000000000, double %1206)
  %1208 = tail call double @llvm.fmuladd.f64(double %247, double 0xBCAF000000000001, double %1207)
  %1209 = tail call double @llvm.fmuladd.f64(double %249, double 0x3C97000000000000, double %1208)
  %1210 = tail call double @llvm.fmuladd.f64(double %251, double 0x3CA0800000000001, double %1209)
  %1211 = tail call double @llvm.fmuladd.f64(double %311, double 0x3CA5FFFFFFFFFFFF, double %1210)
  %1212 = tail call double @llvm.fmuladd.f64(double %253, double 0xBCA4000000000001, double %1211)
  %1213 = tail call double @llvm.fmuladd.f64(double %255, double 0x3CA0000000000002, double %1212)
  %1214 = tail call double @llvm.fmuladd.f64(double %259, double 0xBCA8000000000001, double %1213)
  %1215 = tail call double @llvm.fmuladd.f64(double %261, double 0x3CBA000000000000, double %1214)
  %1216 = tail call double @llvm.fmuladd.f64(double %318, double 0xBC9C000000000000, double %1215)
  %1217 = tail call double @llvm.fmuladd.f64(double %263, double 0xBC60000000000000, double %1216)
  %1218 = tail call double @llvm.fmuladd.f64(double %265, double 0x3C8E000000000000, double %1217)
  %1219 = tail call double @llvm.fmuladd.f64(double %267, double 0xBCAF800000000000, double %1218)
  %1220 = tail call double @llvm.fmuladd.f64(double %269, double 0xBC7FFFFFFFFFFFFF, double %1219)
  %1221 = tail call double @llvm.fmuladd.f64(double %324, double 0xBC90000000000000, double %1220)
  %1222 = tail call double @llvm.fmuladd.f64(double %271, double 0x3C99000000000000, double %1221)
  %1223 = tail call double @llvm.fmuladd.f64(double %273, double 0x3C9A000000000000, double %1222)
  %1224 = tail call double @llvm.fmuladd.f64(double %275, double 0x3C70000000000001, double %1223)
  %1225 = tail call double @llvm.fmuladd.f64(double %277, double 0x3C9BC00000000000, double %1224)
  %1226 = tail call double @llvm.fmuladd.f64(double %279, double 0x3CA4000000000001, double %1225)
  %1227 = tail call double @llvm.fmuladd.f64(double %281, double 0x3C92000000000000, double %1226)
  %1228 = tail call double @llvm.fmuladd.f64(double %283, double 0xBCA8C00000000000, double %1227)
  %1229 = tail call double @llvm.fmuladd.f64(double %285, double 0xBC71FFFFFFFFFFFF, double %1228)
  %1230 = tail call double @llvm.fmuladd.f64(double %287, double 0xBCA1000000000001, double %1229)
  %1231 = tail call double @llvm.fmuladd.f64(double %289, double 0xBC94000000000000, double %1230)
  %gep8365 = getelementptr double, ptr %invariant.gep8364, i64 %indvars.iv
  %1232 = load double, ptr %gep8365, align 8, !tbaa !5
  %1233 = fadd double %1231, %1232
  store double %1233, ptr %gep8365, align 8, !tbaa !5
  %1234 = fmul double %220, 0x3C7FFFFFFFFFFFFF
  %1235 = tail call double @llvm.fmuladd.f64(double %219, double 0xBCAB000000000001, double %1234)
  %1236 = tail call double @llvm.fmuladd.f64(double %223, double 0xBC91400000000000, double %1235)
  %1237 = tail call double @llvm.fmuladd.f64(double %225, double 0xBC84800000000001, double %1236)
  %1238 = tail call double @llvm.fmuladd.f64(double %227, double 0xBCA5FFFFFFFFFFFF, double %1237)
  %1239 = tail call double @llvm.fmuladd.f64(double %229, double 0x3CAC000000000000, double %1238)
  %1240 = tail call double @llvm.fmuladd.f64(double %231, double 0xBC9A800000000000, double %1239)
  %1241 = tail call double @llvm.fmuladd.f64(double %233, double 0xBC50000000000000, double %1240)
  %1242 = tail call double @llvm.fmuladd.f64(double %235, double 0xBC70000000000001, double %1241)
  %1243 = tail call double @llvm.fmuladd.f64(double %237, double 0x3C9A000000000000, double %1242)
  %1244 = tail call double @llvm.fmuladd.f64(double %239, double 0xBF83152016E0EC80, double %1243)
  %1245 = tail call double @llvm.fmuladd.f64(double %241, double 0xBFB5B58B4F03B19E, double %1244)
  %1246 = tail call double @llvm.fmuladd.f64(double %243, double 0x3F938CE4890DB313, double %1245)
  %1247 = tail call double @llvm.fmuladd.f64(double %245, double 0x3FF4EC1BB3FDC612, double %1246)
  %1248 = tail call double @llvm.fmuladd.f64(double %307, double 0x3F85E50BB681A431, double %1247)
  %1249 = tail call double @llvm.fmuladd.f64(double %247, double 0xBFE5679E70A60658, double %1248)
  %1250 = tail call double @llvm.fmuladd.f64(double %249, double 0x3FCA50C41AB7A337, double %1249)
  %1251 = tail call double @llvm.fmuladd.f64(double %251, double 0xBFB49217631F5956, double %1250)
  %1252 = tail call double @llvm.fmuladd.f64(double %311, double 0x3FD417DEBFC17B18, double %1251)
  %1253 = tail call double @llvm.fmuladd.f64(double %253, double 0xBF8BDAF699AECFC1, double %1252)
  %1254 = tail call double @llvm.fmuladd.f64(double %255, double 0x3CA8000000000001, double %1253)
  %1255 = tail call double @llvm.fmuladd.f64(double %257, double 0xBC70000000000001, double %1254)
  %1256 = tail call double @llvm.fmuladd.f64(double %259, double 0x3C86000000000001, double %1255)
  %1257 = tail call double @llvm.fmuladd.f64(double %261, double 0xBCB1800000000000, double %1256)
  %1258 = tail call double @llvm.fmuladd.f64(double %318, double 0x3CA5FFFFFFFFFFFF, double %1257)
  %1259 = tail call double @llvm.fmuladd.f64(double %263, double 0xBC70000000000001, double %1258)
  %1260 = tail call double @llvm.fmuladd.f64(double %265, double 0xBCA8000000000001, double %1259)
  %1261 = tail call double @llvm.fmuladd.f64(double %267, double 0xBC78000000000002, double %1260)
  %1262 = tail call double @llvm.fmuladd.f64(double %269, double 0x3CAC000000000000, double %1261)
  %1263 = tail call double @llvm.fmuladd.f64(double %324, double 0x3C90000000000000, double %1262)
  %1264 = tail call double @llvm.fmuladd.f64(double %271, double 0xBCA1000000000001, double %1263)
  %1265 = tail call double @llvm.fmuladd.f64(double %273, double 0xBC70000000000001, double %1264)
  %1266 = tail call double @llvm.fmuladd.f64(double %275, double 0xBC67FFFFFFFFFFFE, double %1265)
  %1267 = tail call double @llvm.fmuladd.f64(double %277, double 0x3CAFC00000000000, double %1266)
  %1268 = tail call double @llvm.fmuladd.f64(double %279, double 0xBC92000000000000, double %1267)
  %1269 = tail call double @llvm.fmuladd.f64(double %283, double 0x3C89FFFFFFFFFFFF, double %1268)
  %1270 = tail call double @llvm.fmuladd.f64(double %285, double 0xBCAE000000000002, double %1269)
  %1271 = tail call double @llvm.fmuladd.f64(double %289, double 0xBC84000000000000, double %1270)
  %gep8367 = getelementptr double, ptr %invariant.gep8366, i64 %indvars.iv
  %1272 = load double, ptr %gep8367, align 8, !tbaa !5
  %1273 = fadd double %1271, %1272
  store double %1273, ptr %gep8367, align 8, !tbaa !5
  %1274 = fmul double %220, 0xBC60000000000000
  %1275 = tail call double @llvm.fmuladd.f64(double %219, double 0x3CC2400000000000, double %1274)
  %1276 = tail call double @llvm.fmuladd.f64(double %223, double 0xBC9E3FFFFFFFFFFE, double %1275)
  %1277 = tail call double @llvm.fmuladd.f64(double %225, double 0x3CA65FFFFFFFFFFF, double %1276)
  %1278 = tail call double @llvm.fmuladd.f64(double %227, double 0x3C8E000000000000, double %1277)
  %1279 = tail call double @llvm.fmuladd.f64(double %229, double 0x3C91000000000000, double %1278)
  %1280 = tail call double @llvm.fmuladd.f64(double %231, double 0xBCC6700000000000, double %1279)
  %1281 = tail call double @llvm.fmuladd.f64(double %233, double 0xBCB23FFFFFFFFFFF, double %1280)
  %1282 = tail call double @llvm.fmuladd.f64(double %235, double 0xBC60000000000000, double %1281)
  %1283 = tail call double @llvm.fmuladd.f64(double %237, double 0x3C90000000000000, double %1282)
  %1284 = tail call double @llvm.fmuladd.f64(double %239, double 0xBFE333710B32A29F, double %1283)
  %1285 = tail call double @llvm.fmuladd.f64(double %241, double 0xBFBEED13A9F0D8EC, double %1284)
  %1286 = tail call double @llvm.fmuladd.f64(double %243, double 0xBFA352D4DB969C1F, double %1285)
  %1287 = tail call double @llvm.fmuladd.f64(double %245, double 0x3FA87D7643548540, double %1286)
  %1288 = tail call double @llvm.fmuladd.f64(double %307, double 0x3F9854E0ADA34B70, double %1287)
  %1289 = tail call double @llvm.fmuladd.f64(double %247, double 0xBFD41C0D131D4297, double %1288)
  %1290 = tail call double @llvm.fmuladd.f64(double %249, double 0x3FF670C5F1F4C92E, double %1289)
  %1291 = tail call double @llvm.fmuladd.f64(double %251, double 0x3FC36A9134CD3C66, double %1290)
  %1292 = tail call double @llvm.fmuladd.f64(double %311, double 0x3FD35DAE88CBA648, double %1291)
  %1293 = tail call double @llvm.fmuladd.f64(double %253, double 0x3FC27B05E24EC5F4, double %1292)
  %1294 = tail call double @llvm.fmuladd.f64(double %255, double 0x3CC1000000000000, double %1293)
  %1295 = tail call double @llvm.fmuladd.f64(double %257, double 0xBCA2000000000000, double %1294)
  %1296 = tail call double @llvm.fmuladd.f64(double %259, double 0x3C7C000000000000, double %1295)
  %1297 = tail call double @llvm.fmuladd.f64(double %261, double 0xBCAF800000000000, double %1296)
  %1298 = tail call double @llvm.fmuladd.f64(double %318, double 0x3CA0000000000002, double %1297)
  %1299 = tail call double @llvm.fmuladd.f64(double %263, double 0xBC88000000000000, double %1298)
  %1300 = tail call double @llvm.fmuladd.f64(double %265, double 0x3C95000000000000, double %1299)
  %1301 = tail call double @llvm.fmuladd.f64(double %267, double 0xBCA0800000000001, double %1300)
  %1302 = tail call double @llvm.fmuladd.f64(double %269, double 0x3C98000000000000, double %1301)
  %1303 = tail call double @llvm.fmuladd.f64(double %271, double 0xBCA7000000000002, double %1302)
  %1304 = tail call double @llvm.fmuladd.f64(double %273, double 0xBC8C000000000000, double %1303)
  %1305 = tail call double @llvm.fmuladd.f64(double %275, double 0x3C94800000000000, double %1304)
  %1306 = tail call double @llvm.fmuladd.f64(double %277, double 0x3C99000000000000, double %1305)
  %1307 = tail call double @llvm.fmuladd.f64(double %279, double 0xBC92000000000000, double %1306)
  %1308 = tail call double @llvm.fmuladd.f64(double %281, double 0xBC8E000000000000, double %1307)
  %1309 = tail call double @llvm.fmuladd.f64(double %283, double 0x3CA0000000000002, double %1308)
  %1310 = tail call double @llvm.fmuladd.f64(double %285, double 0xBCA23FFFFFFFFFFF, double %1309)
  %1311 = tail call double @llvm.fmuladd.f64(double %289, double 0xBC84000000000000, double %1310)
  %gep8369 = getelementptr double, ptr %invariant.gep8368, i64 %indvars.iv
  %1312 = load double, ptr %gep8369, align 8, !tbaa !5
  %1313 = fadd double %1311, %1312
  store double %1313, ptr %gep8369, align 8, !tbaa !5
  %1314 = tail call double @llvm.fmuladd.f64(double %219, double 0x3CC1400000000000, double %461)
  %1315 = tail call double @llvm.fmuladd.f64(double %223, double 0xBCAAA00000000002, double %1314)
  %1316 = tail call double @llvm.fmuladd.f64(double %225, double 0x3C9EBFFFFFFFFFFD, double %1315)
  %1317 = tail call double @llvm.fmuladd.f64(double %227, double 0x3C88000000000000, double %1316)
  %1318 = tail call double @llvm.fmuladd.f64(double %229, double 0xBCAC000000000000, double %1317)
  %1319 = tail call double @llvm.fmuladd.f64(double %231, double 0xBCB3200000000000, double %1318)
  %1320 = tail call double @llvm.fmuladd.f64(double %233, double 0xBC74000000000000, double %1319)
  %1321 = tail call double @llvm.fmuladd.f64(double %235, double 0x3C8C000000000000, double %1320)
  %1322 = tail call double @llvm.fmuladd.f64(double %237, double 0xBC98000000000000, double %1321)
  %1323 = tail call double @llvm.fmuladd.f64(double %239, double 0xBFE333710B32A29B, double %1322)
  %1324 = tail call double @llvm.fmuladd.f64(double %241, double 0xBFBEED13A9F0D8FA, double %1323)
  %1325 = tail call double @llvm.fmuladd.f64(double %243, double 0x3FA87D764354851E, double %1324)
  %1326 = tail call double @llvm.fmuladd.f64(double %245, double 0xBFA352D4DB969BFC, double %1325)
  %1327 = tail call double @llvm.fmuladd.f64(double %307, double 0xBFD41C0D131D428E, double %1326)
  %1328 = tail call double @llvm.fmuladd.f64(double %247, double 0x3F9854E0ADA34B53, double %1327)
  %1329 = tail call double @llvm.fmuladd.f64(double %249, double 0x3FC36A9134CD3C4D, double %1328)
  %1330 = tail call double @llvm.fmuladd.f64(double %251, double 0x3FF670C5F1F4C92E, double %1329)
  %1331 = tail call double @llvm.fmuladd.f64(double %311, double 0x3FC27B05E24EC5F8, double %1330)
  %1332 = tail call double @llvm.fmuladd.f64(double %253, double 0x3FD35DAE88CBA64A, double %1331)
  %1333 = tail call double @llvm.fmuladd.f64(double %255, double 0xBCB3FFFFFFFFFFFF, double %1332)
  %1334 = tail call double @llvm.fmuladd.f64(double %259, double 0xBCB3C00000000000, double %1333)
  %1335 = tail call double @llvm.fmuladd.f64(double %261, double 0x3CAB800000000001, double %1334)
  %1336 = tail call double @llvm.fmuladd.f64(double %318, double 0x3CA8000000000001, double %1335)
  %1337 = tail call double @llvm.fmuladd.f64(double %263, double 0xBCA5FFFFFFFFFFFF, double %1336)
  %1338 = tail call double @llvm.fmuladd.f64(double %265, double 0x3CA3800000000002, double %1337)
  %1339 = tail call double @llvm.fmuladd.f64(double %267, double 0xBC8E000000000000, double %1338)
  %1340 = tail call double @llvm.fmuladd.f64(double %269, double 0x3C88000000000000, double %1339)
  %1341 = tail call double @llvm.fmuladd.f64(double %324, double 0xBC70000000000001, double %1340)
  %1342 = tail call double @llvm.fmuladd.f64(double %271, double 0x3CC0400000000000, double %1341)
  %1343 = tail call double @llvm.fmuladd.f64(double %273, double 0xBCB27FFFFFFFFFFF, double %1342)
  %1344 = tail call double @llvm.fmuladd.f64(double %275, double 0xBCA7C00000000001, double %1343)
  %1345 = tail call double @llvm.fmuladd.f64(double %277, double 0x3C94000000000000, double %1344)
  %1346 = tail call double @llvm.fmuladd.f64(double %279, double 0xBC91000000000000, double %1345)
  %1347 = tail call double @llvm.fmuladd.f64(double %281, double 0xBC88000000000000, double %1346)
  %1348 = tail call double @llvm.fmuladd.f64(double %283, double 0x3CA9FFFFFFFFFFFE, double %1347)
  %1349 = tail call double @llvm.fmuladd.f64(double %285, double 0xBC8B000000000000, double %1348)
  %1350 = tail call double @llvm.fmuladd.f64(double %287, double 0xBC94000000000000, double %1349)
  %1351 = tail call double @llvm.fmuladd.f64(double %289, double 0xBC92000000000000, double %1350)
  %gep8371 = getelementptr double, ptr %invariant.gep8370, i64 %indvars.iv
  %1352 = load double, ptr %gep8371, align 8, !tbaa !5
  %1353 = fadd double %1351, %1352
  store double %1353, ptr %gep8371, align 8, !tbaa !5
  %1354 = fmul double %220, 0xBCA8000000000001
  %1355 = tail call double @llvm.fmuladd.f64(double %219, double 0xBCC3C00000000000, double %1354)
  %1356 = tail call double @llvm.fmuladd.f64(double %223, double 0x3CB7D00000000001, double %1355)
  %1357 = tail call double @llvm.fmuladd.f64(double %225, double 0xBC8B800000000001, double %1356)
  %1358 = tail call double @llvm.fmuladd.f64(double %227, double 0x3CB8800000000000, double %1357)
  %1359 = tail call double @llvm.fmuladd.f64(double %229, double 0xBC88000000000000, double %1358)
  %1360 = tail call double @llvm.fmuladd.f64(double %231, double 0xBC94800000000000, double %1359)
  %1361 = tail call double @llvm.fmuladd.f64(double %233, double 0x3C90000000000000, double %1360)
  %1362 = tail call double @llvm.fmuladd.f64(double %235, double 0x3C7FFFFFFFFFFFFF, double %1361)
  %1363 = tail call double @llvm.fmuladd.f64(double %237, double 0xBC90000000000000, double %1362)
  %1364 = tail call double @llvm.fmuladd.f64(double %239, double 0xBF83152016E0EAD0, double %1363)
  %1365 = tail call double @llvm.fmuladd.f64(double %241, double 0xBFB5B58B4F03B192, double %1364)
  %1366 = tail call double @llvm.fmuladd.f64(double %243, double 0x3FF4EC1BB3FDC61B, double %1365)
  %1367 = tail call double @llvm.fmuladd.f64(double %245, double 0x3F938CE4890DB29A, double %1366)
  %1368 = tail call double @llvm.fmuladd.f64(double %307, double 0xBFE5679E70A6065C, double %1367)
  %1369 = tail call double @llvm.fmuladd.f64(double %247, double 0x3F85E50BB681A3CA, double %1368)
  %1370 = tail call double @llvm.fmuladd.f64(double %249, double 0xBFB49217631F5913, double %1369)
  %1371 = tail call double @llvm.fmuladd.f64(double %251, double 0x3FCA50C41AB7A2F3, double %1370)
  %1372 = tail call double @llvm.fmuladd.f64(double %311, double 0xBF8BDAF699AECF4E, double %1371)
  %1373 = tail call double @llvm.fmuladd.f64(double %253, double 0x3FD417DEBFC17B11, double %1372)
  %1374 = tail call double @llvm.fmuladd.f64(double %255, double 0xBCC2000000000000, double %1373)
  %1375 = tail call double @llvm.fmuladd.f64(double %257, double 0xBC9C000000000000, double %1374)
  %1376 = tail call double @llvm.fmuladd.f64(double %259, double 0xBCB7400000000000, double %1375)
  %1377 = tail call double @llvm.fmuladd.f64(double %261, double 0x3CBC000000000000, double %1376)
  %1378 = tail call double @llvm.fmuladd.f64(double %318, double 0x3CBF000000000001, double %1377)
  %1379 = tail call double @llvm.fmuladd.f64(double %263, double 0xBCA5FFFFFFFFFFFF, double %1378)
  %1380 = tail call double @llvm.fmuladd.f64(double %265, double 0x3C70000000000001, double %1379)
  %1381 = tail call double @llvm.fmuladd.f64(double %267, double 0xBCBE7FFFFFFFFFFF, double %1380)
  %1382 = tail call double @llvm.fmuladd.f64(double %269, double 0x3CA0000000000002, double %1381)
  %1383 = tail call double @llvm.fmuladd.f64(double %324, double 0xBC7FFFFFFFFFFFFF, double %1382)
  %1384 = tail call double @llvm.fmuladd.f64(double %271, double 0x3CBC800000000000, double %1383)
  %1385 = tail call double @llvm.fmuladd.f64(double %273, double 0xBC9A000000000000, double %1384)
  %1386 = tail call double @llvm.fmuladd.f64(double %275, double 0xBCA4400000000001, double %1385)
  %1387 = tail call double @llvm.fmuladd.f64(double %277, double 0xBC78000000000002, double %1386)
  %1388 = tail call double @llvm.fmuladd.f64(double %279, double 0xBC70000000000001, double %1387)
  %1389 = tail call double @llvm.fmuladd.f64(double %281, double 0x3CA2000000000000, double %1388)
  %1390 = tail call double @llvm.fmuladd.f64(double %283, double 0x3CA8000000000001, double %1389)
  %1391 = tail call double @llvm.fmuladd.f64(double %285, double 0x3CA97FFFFFFFFFFF, double %1390)
  %1392 = tail call double @llvm.fmuladd.f64(double %287, double 0xBCA2FFFFFFFFFFFE, double %1391)
  %1393 = tail call double @llvm.fmuladd.f64(double %289, double 0xBC96000000000000, double %1392)
  %gep8373 = getelementptr double, ptr %invariant.gep8372, i64 %indvars.iv
  %1394 = load double, ptr %gep8373, align 8, !tbaa !5
  %1395 = fadd double %1393, %1394
  store double %1395, ptr %gep8373, align 8, !tbaa !5
  %1396 = fmul double %220, 0x3C88000000000000
  %1397 = tail call double @llvm.fmuladd.f64(double %219, double 0xBCB4800000000001, double %1396)
  %1398 = tail call double @llvm.fmuladd.f64(double %223, double 0xBC76FFFFFFFFFFFF, double %1397)
  %1399 = tail call double @llvm.fmuladd.f64(double %225, double 0x3C92400000000000, double %1398)
  %1400 = tail call double @llvm.fmuladd.f64(double %227, double 0xBC98000000000000, double %1399)
  %1401 = tail call double @llvm.fmuladd.f64(double %229, double 0x3CAC000000000000, double %1400)
  %1402 = tail call double @llvm.fmuladd.f64(double %231, double 0x3C9A800000000000, double %1401)
  %1403 = tail call double @llvm.fmuladd.f64(double %233, double 0x3C9CFFFFFFFFFFFF, double %1402)
  %1404 = tail call double @llvm.fmuladd.f64(double %235, double 0x3C70000000000001, double %1403)
  %1405 = tail call double @llvm.fmuladd.f64(double %237, double 0x3C78000000000002, double %1404)
  %1406 = tail call double @llvm.fmuladd.f64(double %239, double 0x3CB3FFFFFFFFFFFF, double %1405)
  %1407 = tail call double @llvm.fmuladd.f64(double %241, double 0x3C9C000000000000, double %1406)
  %1408 = tail call double @llvm.fmuladd.f64(double %243, double 0x3C60000000000000, double %1407)
  %1409 = tail call double @llvm.fmuladd.f64(double %245, double 0x3CAF800000000000, double %1408)
  %1410 = tail call double @llvm.fmuladd.f64(double %247, double 0x3CA2000000000000, double %1409)
  %1411 = tail call double @llvm.fmuladd.f64(double %249, double 0x3C90000000000000, double %1410)
  %1412 = tail call double @llvm.fmuladd.f64(double %251, double 0xBCA7000000000002, double %1411)
  %1413 = tail call double @llvm.fmuladd.f64(double %311, double 0x3CAC000000000000, double %1412)
  %1414 = tail call double @llvm.fmuladd.f64(double %253, double 0xBCB5FFFFFFFFFFFF, double %1413)
  %1415 = tail call double @llvm.fmuladd.f64(double %255, double 0xBF83152016E0ECA0, double %1414)
  %1416 = tail call double @llvm.fmuladd.f64(double %257, double 0xBFB5B58B4F03B1A6, double %1415)
  %1417 = tail call double @llvm.fmuladd.f64(double %259, double 0x3F938CE4890DB313, double %1416)
  %1418 = tail call double @llvm.fmuladd.f64(double %261, double 0x3FF4EC1BB3FDC612, double %1417)
  %1419 = tail call double @llvm.fmuladd.f64(double %318, double 0x3F85E50BB681A45A, double %1418)
  %1420 = tail call double @llvm.fmuladd.f64(double %263, double 0xBFE5679E70A60659, double %1419)
  %1421 = tail call double @llvm.fmuladd.f64(double %265, double 0x3FCA50C41AB7A337, double %1420)
  %1422 = tail call double @llvm.fmuladd.f64(double %267, double 0xBFB49217631F594F, double %1421)
  %1423 = tail call double @llvm.fmuladd.f64(double %269, double 0x3FD417DEBFC17B18, double %1422)
  %1424 = tail call double @llvm.fmuladd.f64(double %324, double 0xBF8BDAF699AECEE1, double %1423)
  %1425 = tail call double @llvm.fmuladd.f64(double %271, double 0x3CA9000000000000, double %1424)
  %1426 = tail call double @llvm.fmuladd.f64(double %273, double 0x3C78000000000002, double %1425)
  %1427 = tail call double @llvm.fmuladd.f64(double %275, double 0xBC9CFFFFFFFFFFFF, double %1426)
  %1428 = tail call double @llvm.fmuladd.f64(double %277, double 0x3CB0200000000000, double %1427)
  %1429 = tail call double @llvm.fmuladd.f64(double %279, double 0xBC90000000000000, double %1428)
  %1430 = tail call double @llvm.fmuladd.f64(double %283, double 0xBC95000000000000, double %1429)
  %1431 = tail call double @llvm.fmuladd.f64(double %285, double 0xBCB1800000000000, double %1430)
  %1432 = tail call double @llvm.fmuladd.f64(double %287, double 0xBC7FFFFFFFFFFFFF, double %1431)
  %1433 = tail call double @llvm.fmuladd.f64(double %289, double 0x3C92000000000000, double %1432)
  %gep8375 = getelementptr double, ptr %invariant.gep8374, i64 %indvars.iv
  %1434 = load double, ptr %gep8375, align 8, !tbaa !5
  %1435 = fadd double %1433, %1434
  store double %1435, ptr %gep8375, align 8, !tbaa !5
  %1436 = tail call double @llvm.fmuladd.f64(double %219, double 0x3CB97FFFFFFFFFFF, double %420)
  %1437 = tail call double @llvm.fmuladd.f64(double %223, double 0xBCA0E00000000001, double %1436)
  %1438 = tail call double @llvm.fmuladd.f64(double %225, double 0x3CA0A00000000001, double %1437)
  %1439 = tail call double @llvm.fmuladd.f64(double %227, double 0x3CA27FFFFFFFFFFF, double %1438)
  %1440 = tail call double @llvm.fmuladd.f64(double %229, double 0x3CA5800000000000, double %1439)
  %1441 = tail call double @llvm.fmuladd.f64(double %231, double 0xBCBB1FFFFFFFFFFF, double %1440)
  %1442 = tail call double @llvm.fmuladd.f64(double %233, double 0xBC9B000000000000, double %1441)
  %1443 = tail call double @llvm.fmuladd.f64(double %235, double 0xBC78000000000002, double %1442)
  %1444 = tail call double @llvm.fmuladd.f64(double %237, double 0xBC70000000000001, double %1443)
  %1445 = tail call double @llvm.fmuladd.f64(double %239, double 0x3CA4000000000001, double %1444)
  %1446 = tail call double @llvm.fmuladd.f64(double %241, double 0x3CB1000000000001, double %1445)
  %1447 = tail call double @llvm.fmuladd.f64(double %243, double 0xBC95000000000000, double %1446)
  %1448 = tail call double @llvm.fmuladd.f64(double %245, double 0x3C91000000000000, double %1447)
  %1449 = tail call double @llvm.fmuladd.f64(double %307, double 0xBCAC000000000000, double %1448)
  %1450 = tail call double @llvm.fmuladd.f64(double %247, double 0xBC9C000000000000, double %1449)
  %1451 = tail call double @llvm.fmuladd.f64(double %249, double 0x3CB07FFFFFFFFFFF, double %1450)
  %1452 = tail call double @llvm.fmuladd.f64(double %251, double 0x3CA7000000000002, double %1451)
  %1453 = tail call double @llvm.fmuladd.f64(double %253, double 0xBCAE000000000002, double %1452)
  %1454 = tail call double @llvm.fmuladd.f64(double %255, double 0xBFE333710B32A29C, double %1453)
  %1455 = tail call double @llvm.fmuladd.f64(double %257, double 0xBFBEED13A9F0D909, double %1454)
  %1456 = tail call double @llvm.fmuladd.f64(double %259, double 0xBFA352D4DB969C0E, double %1455)
  %1457 = tail call double @llvm.fmuladd.f64(double %261, double 0x3FA87D764354851C, double %1456)
  %1458 = tail call double @llvm.fmuladd.f64(double %318, double 0x3F9854E0ADA34BC3, double %1457)
  %1459 = tail call double @llvm.fmuladd.f64(double %263, double 0xBFD41C0D131D4295, double %1458)
  %1460 = tail call double @llvm.fmuladd.f64(double %265, double 0x3FF670C5F1F4C92E, double %1459)
  %1461 = tail call double @llvm.fmuladd.f64(double %267, double 0x3FC36A9134CD3C5C, double %1460)
  %1462 = tail call double @llvm.fmuladd.f64(double %269, double 0x3FD35DAE88CBA64B, double %1461)
  %1463 = tail call double @llvm.fmuladd.f64(double %324, double 0x3FC27B05E24EC5FB, double %1462)
  %1464 = tail call double @llvm.fmuladd.f64(double %271, double 0xBC9A000000000000, double %1463)
  %1465 = tail call double @llvm.fmuladd.f64(double %273, double 0xBC96000000000000, double %1464)
  %1466 = tail call double @llvm.fmuladd.f64(double %275, double 0x3C82FFFFFFFFFFFF, double %1465)
  %1467 = tail call double @llvm.fmuladd.f64(double %277, double 0x3C7C000000000000, double %1466)
  %1468 = tail call double @llvm.fmuladd.f64(double %279, double 0xBC92000000000000, double %1467)
  %1469 = tail call double @llvm.fmuladd.f64(double %281, double 0xBC99000000000000, double %1468)
  %1470 = tail call double @llvm.fmuladd.f64(double %283, double 0x3CA4000000000001, double %1469)
  %1471 = tail call double @llvm.fmuladd.f64(double %285, double 0xBCB8E00000000000, double %1470)
  %1472 = tail call double @llvm.fmuladd.f64(double %287, double 0xBC90000000000000, double %1471)
  %1473 = tail call double @llvm.fmuladd.f64(double %289, double 0x3C84000000000000, double %1472)
  %gep8377 = getelementptr double, ptr %invariant.gep8376, i64 %indvars.iv
  %1474 = load double, ptr %gep8377, align 8, !tbaa !5
  %1475 = fadd double %1473, %1474
  store double %1475, ptr %gep8377, align 8, !tbaa !5
  %1476 = fmul double %220, 0xBCA9000000000000
  %1477 = tail call double @llvm.fmuladd.f64(double %219, double 0x3CBD800000000001, double %1476)
  %1478 = tail call double @llvm.fmuladd.f64(double %223, double 0xBCADDFFFFFFFFFFE, double %1477)
  %1479 = tail call double @llvm.fmuladd.f64(double %225, double 0x3C91400000000000, double %1478)
  %1480 = tail call double @llvm.fmuladd.f64(double %227, double 0x3C9C000000000000, double %1479)
  %1481 = tail call double @llvm.fmuladd.f64(double %229, double 0xBCA0000000000002, double %1480)
  %1482 = tail call double @llvm.fmuladd.f64(double %231, double 0xBCBADFFFFFFFFFFF, double %1481)
  %1483 = tail call double @llvm.fmuladd.f64(double %233, double 0x3C95000000000000, double %1482)
  %1484 = tail call double @llvm.fmuladd.f64(double %235, double 0x3C9DFFFFFFFFFFFE, double %1483)
  %1485 = tail call double @llvm.fmuladd.f64(double %237, double 0xBC7FFFFFFFFFFFFF, double %1484)
  %1486 = tail call double @llvm.fmuladd.f64(double %239, double 0xBCB3FFFFFFFFFFFF, double %1485)
  %1487 = tail call double @llvm.fmuladd.f64(double %243, double 0x3C9CFFFFFFFFFFFF, double %1486)
  %1488 = tail call double @llvm.fmuladd.f64(double %245, double 0x3CAF800000000000, double %1487)
  %1489 = tail call double @llvm.fmuladd.f64(double %307, double 0x3CB0000000000000, double %1488)
  %1490 = tail call double @llvm.fmuladd.f64(double %247, double 0x3CB8000000000001, double %1489)
  %1491 = tail call double @llvm.fmuladd.f64(double %249, double 0xBCC1C00000000000, double %1490)
  %1492 = tail call double @llvm.fmuladd.f64(double %251, double 0x3C96000000000000, double %1491)
  %1493 = tail call double @llvm.fmuladd.f64(double %311, double 0x3C9C000000000000, double %1492)
  %1494 = tail call double @llvm.fmuladd.f64(double %253, double 0xBC90000000000000, double %1493)
  %1495 = tail call double @llvm.fmuladd.f64(double %255, double 0xBFE333710B32A29A, double %1494)
  %1496 = tail call double @llvm.fmuladd.f64(double %257, double 0xBFBEED13A9F0D8FA, double %1495)
  %1497 = tail call double @llvm.fmuladd.f64(double %259, double 0x3FA87D76435484F4, double %1496)
  %1498 = tail call double @llvm.fmuladd.f64(double %261, double 0xBFA352D4DB969BF2, double %1497)
  %1499 = tail call double @llvm.fmuladd.f64(double %318, double 0xBFD41C0D131D428E, double %1498)
  %1500 = tail call double @llvm.fmuladd.f64(double %263, double 0x3F9854E0ADA34ACB, double %1499)
  %1501 = tail call double @llvm.fmuladd.f64(double %265, double 0x3FC36A9134CD3C5F, double %1500)
  %1502 = tail call double @llvm.fmuladd.f64(double %267, double 0x3FF670C5F1F4C92E, double %1501)
  %1503 = tail call double @llvm.fmuladd.f64(double %269, double 0x3FC27B05E24EC5F8, double %1502)
  %1504 = tail call double @llvm.fmuladd.f64(double %324, double 0x3FD35DAE88CBA648, double %1503)
  %1505 = tail call double @llvm.fmuladd.f64(double %271, double 0xBCA9000000000000, double %1504)
  %1506 = tail call double @llvm.fmuladd.f64(double %273, double 0xBCA1000000000001, double %1505)
  %1507 = tail call double @llvm.fmuladd.f64(double %275, double 0xBCA1400000000000, double %1506)
  %1508 = tail call double @llvm.fmuladd.f64(double %277, double 0xBC94000000000000, double %1507)
  %1509 = tail call double @llvm.fmuladd.f64(double %279, double 0xBCA7800000000001, double %1508)
  %1510 = tail call double @llvm.fmuladd.f64(double %281, double 0xBC9C000000000000, double %1509)
  %1511 = tail call double @llvm.fmuladd.f64(double %283, double 0x3CB6800000000000, double %1510)
  %1512 = tail call double @llvm.fmuladd.f64(double %285, double 0xBCB8A00000000000, double %1511)
  %1513 = tail call double @llvm.fmuladd.f64(double %287, double 0xBCA4000000000001, double %1512)
  %1514 = tail call double @llvm.fmuladd.f64(double %289, double 0x3C8C000000000000, double %1513)
  %gep8379 = getelementptr double, ptr %invariant.gep8378, i64 %indvars.iv
  %1515 = load double, ptr %gep8379, align 8, !tbaa !5
  %1516 = fadd double %1514, %1515
  store double %1516, ptr %gep8379, align 8, !tbaa !5
  %1517 = fmul double %220, 0xBCB0000000000000
  %1518 = tail call double @llvm.fmuladd.f64(double %219, double 0xBCC8400000000000, double %1517)
  %1519 = tail call double @llvm.fmuladd.f64(double %223, double 0x3CB42FFFFFFFFFFF, double %1518)
  %1520 = tail call double @llvm.fmuladd.f64(double %225, double 0xBC91400000000000, double %1519)
  %1521 = tail call double @llvm.fmuladd.f64(double %227, double 0x3C8C000000000000, double %1520)
  %1522 = tail call double @llvm.fmuladd.f64(double %229, double 0xBCAE000000000002, double %1521)
  %1523 = tail call double @llvm.fmuladd.f64(double %231, double 0xBC93800000000000, double %1522)
  %1524 = tail call double @llvm.fmuladd.f64(double %233, double 0x3CAE000000000002, double %1523)
  %1525 = tail call double @llvm.fmuladd.f64(double %235, double 0x3C98000000000000, double %1524)
  %1526 = tail call double @llvm.fmuladd.f64(double %237, double 0xBCA0000000000002, double %1525)
  %1527 = tail call double @llvm.fmuladd.f64(double %241, double 0xBC88000000000000, double %1526)
  %1528 = tail call double @llvm.fmuladd.f64(double %243, double 0x3CB1000000000001, double %1527)
  %1529 = tail call double @llvm.fmuladd.f64(double %245, double 0x3CA4800000000001, double %1528)
  %1530 = tail call double @llvm.fmuladd.f64(double %307, double 0xBC70000000000001, double %1529)
  %1531 = tail call double @llvm.fmuladd.f64(double %247, double 0x3CB1000000000001, double %1530)
  %1532 = tail call double @llvm.fmuladd.f64(double %249, double 0xBCC3800000000000, double %1531)
  %1533 = tail call double @llvm.fmuladd.f64(double %251, double 0x3CB5800000000000, double %1532)
  %1534 = tail call double @llvm.fmuladd.f64(double %311, double 0x3CA4000000000001, double %1533)
  %1535 = tail call double @llvm.fmuladd.f64(double %253, double 0xBC98000000000000, double %1534)
  %1536 = tail call double @llvm.fmuladd.f64(double %255, double 0xBF83152016E0EBD0, double %1535)
  %1537 = tail call double @llvm.fmuladd.f64(double %257, double 0xBFB5B58B4F03B198, double %1536)
  %1538 = tail call double @llvm.fmuladd.f64(double %259, double 0x3FF4EC1BB3FDC617, double %1537)
  %1539 = tail call double @llvm.fmuladd.f64(double %261, double 0x3F938CE4890DB2F0, double %1538)
  %1540 = tail call double @llvm.fmuladd.f64(double %318, double 0xBFE5679E70A60656, double %1539)
  %1541 = tail call double @llvm.fmuladd.f64(double %263, double 0x3F85E50BB681A339, double %1540)
  %1542 = tail call double @llvm.fmuladd.f64(double %265, double 0xBFB49217631F58F9, double %1541)
  %1543 = tail call double @llvm.fmuladd.f64(double %267, double 0x3FCA50C41AB7A2DD, double %1542)
  %1544 = tail call double @llvm.fmuladd.f64(double %269, double 0xBF8BDAF699AECF43, double %1543)
  %1545 = tail call double @llvm.fmuladd.f64(double %324, double 0x3FD417DEBFC17B15, double %1544)
  %1546 = tail call double @llvm.fmuladd.f64(double %271, double 0x3CBB800000000001, double %1545)
  %1547 = tail call double @llvm.fmuladd.f64(double %273, double 0xBC60000000000000, double %1546)
  %1548 = tail call double @llvm.fmuladd.f64(double %275, double 0xBC7E000000000001, double %1547)
  %1549 = tail call double @llvm.fmuladd.f64(double %277, double 0xBCA2FFFFFFFFFFFE, double %1548)
  %1550 = tail call double @llvm.fmuladd.f64(double %279, double 0xBC9C000000000000, double %1549)
  %1551 = tail call double @llvm.fmuladd.f64(double %281, double 0x3CAE000000000002, double %1550)
  %1552 = tail call double @llvm.fmuladd.f64(double %283, double 0x3CAC000000000000, double %1551)
  %1553 = tail call double @llvm.fmuladd.f64(double %285, double 0x3C95000000000000, double %1552)
  %1554 = tail call double @llvm.fmuladd.f64(double %287, double 0xBCAB000000000001, double %1553)
  %1555 = tail call double @llvm.fmuladd.f64(double %289, double 0x3CA1000000000001, double %1554)
  %gep8381 = getelementptr double, ptr %invariant.gep8380, i64 %indvars.iv
  %1556 = load double, ptr %gep8381, align 8, !tbaa !5
  %1557 = fadd double %1555, %1556
  store double %1557, ptr %gep8381, align 8, !tbaa !5
  %1558 = tail call double @llvm.fmuladd.f64(double %219, double 0x3C90000000000000, double %461)
  %1559 = tail call double @llvm.fmuladd.f64(double %223, double 0xBC8B800000000001, double %1558)
  %1560 = tail call double @llvm.fmuladd.f64(double %225, double 0x3C95C00000000000, double %1559)
  %1561 = tail call double @llvm.fmuladd.f64(double %227, double 0xBC90000000000000, double %1560)
  %1562 = tail call double @llvm.fmuladd.f64(double %229, double 0x3CA1800000000000, double %1561)
  %1563 = tail call double @llvm.fmuladd.f64(double %231, double 0xBC7E000000000001, double %1562)
  %1564 = tail call double @llvm.fmuladd.f64(double %233, double 0x3C74000000000000, double %1563)
  %1565 = tail call double @llvm.fmuladd.f64(double %235, double 0x3C7FFFFFFFFFFFFF, double %1564)
  %1566 = tail call double @llvm.fmuladd.f64(double %237, double 0xBC94000000000000, double %1565)
  %1567 = tail call double @llvm.fmuladd.f64(double %239, double 0xBC98000000000000, double %1566)
  %1568 = tail call double @llvm.fmuladd.f64(double %241, double 0x3C70000000000001, double %1567)
  %1569 = tail call double @llvm.fmuladd.f64(double %243, double 0xBC97000000000000, double %1568)
  %1570 = tail call double @llvm.fmuladd.f64(double %245, double 0x3CAE400000000002, double %1569)
  %1571 = tail call double @llvm.fmuladd.f64(double %307, double 0x3C94000000000000, double %1570)
  %1572 = tail call double @llvm.fmuladd.f64(double %247, double 0xBC84000000000000, double %1571)
  %1573 = tail call double @llvm.fmuladd.f64(double %249, double 0x3CA0800000000001, double %1572)
  %1574 = tail call double @llvm.fmuladd.f64(double %251, double 0xBCAA800000000002, double %1573)
  %1575 = tail call double @llvm.fmuladd.f64(double %311, double 0x3C98000000000000, double %1574)
  %1576 = tail call double @llvm.fmuladd.f64(double %253, double 0xBCA5FFFFFFFFFFFF, double %1575)
  %1577 = tail call double @llvm.fmuladd.f64(double %255, double 0x3CA4000000000001, double %1576)
  %1578 = tail call double @llvm.fmuladd.f64(double %257, double 0x3C7FFFFFFFFFFFFF, double %1577)
  %1579 = tail call double @llvm.fmuladd.f64(double %259, double 0x3C84000000000000, double %1578)
  %1580 = tail call double @llvm.fmuladd.f64(double %261, double 0xBC86000000000001, double %1579)
  %1581 = tail call double @llvm.fmuladd.f64(double %318, double 0xBC94000000000000, double %1580)
  %1582 = tail call double @llvm.fmuladd.f64(double %263, double 0x3C60000000000000, double %1581)
  %1583 = tail call double @llvm.fmuladd.f64(double %265, double 0x3C7C000000000000, double %1582)
  %1584 = tail call double @llvm.fmuladd.f64(double %267, double 0xBC97000000000000, double %1583)
  %1585 = tail call double @llvm.fmuladd.f64(double %269, double 0x3CA2000000000000, double %1584)
  %1586 = tail call double @llvm.fmuladd.f64(double %324, double 0x3CA2000000000000, double %1585)
  %1587 = tail call double @llvm.fmuladd.f64(double %271, double 0xBF83152016E0EC4E, double %1586)
  %1588 = tail call double @llvm.fmuladd.f64(double %273, double 0xBFB5B58B4F03B19E, double %1587)
  %1589 = tail call double @llvm.fmuladd.f64(double %275, double 0x3F938CE4890DB2FC, double %1588)
  %1590 = tail call double @llvm.fmuladd.f64(double %277, double 0x3FF4EC1BB3FDC612, double %1589)
  %1591 = tail call double @llvm.fmuladd.f64(double %279, double 0x3F85E50BB681A437, double %1590)
  %1592 = tail call double @llvm.fmuladd.f64(double %281, double 0xBFE5679E70A60657, double %1591)
  %1593 = tail call double @llvm.fmuladd.f64(double %283, double 0x3FCA50C41AB7A337, double %1592)
  %1594 = tail call double @llvm.fmuladd.f64(double %285, double 0xBFB49217631F5952, double %1593)
  %1595 = tail call double @llvm.fmuladd.f64(double %287, double 0x3FD417DEBFC17B15, double %1594)
  %1596 = tail call double @llvm.fmuladd.f64(double %289, double 0xBF8BDAF699AECF15, double %1595)
  %gep8383 = getelementptr double, ptr %invariant.gep8382, i64 %indvars.iv
  %1597 = load double, ptr %gep8383, align 8, !tbaa !5
  %1598 = fadd double %1596, %1597
  store double %1598, ptr %gep8383, align 8, !tbaa !5
  %1599 = tail call double @llvm.fmuladd.f64(double %219, double 0x3CAF800000000000, double %420)
  %1600 = tail call double @llvm.fmuladd.f64(double %223, double 0xBCA5200000000000, double %1599)
  %1601 = tail call double @llvm.fmuladd.f64(double %225, double 0x3CA21FFFFFFFFFFF, double %1600)
  %1602 = tail call double @llvm.fmuladd.f64(double %227, double 0x3C70000000000001, double %1601)
  %1603 = tail call double @llvm.fmuladd.f64(double %229, double 0x3C90000000000000, double %1602)
  %1604 = tail call double @llvm.fmuladd.f64(double %231, double 0xBCB1A00000000000, double %1603)
  %1605 = tail call double @llvm.fmuladd.f64(double %233, double 0xBC64000000000000, double %1604)
  %1606 = tail call double @llvm.fmuladd.f64(double %235, double 0x3CA2000000000000, double %1605)
  %1607 = tail call double @llvm.fmuladd.f64(double %237, double 0x3C88000000000000, double %1606)
  %1608 = tail call double @llvm.fmuladd.f64(double %239, double 0xBCA2000000000000, double %1607)
  %1609 = tail call double @llvm.fmuladd.f64(double %241, double 0x3C7FFFFFFFFFFFFF, double %1608)
  %1610 = tail call double @llvm.fmuladd.f64(double %243, double 0xBC67FFFFFFFFFFFE, double %1609)
  %1611 = tail call double @llvm.fmuladd.f64(double %245, double 0xBC6C000000000000, double %1610)
  %1612 = tail call double @llvm.fmuladd.f64(double %307, double 0x3C70000000000001, double %1611)
  %1613 = tail call double @llvm.fmuladd.f64(double %247, double 0xBCA2FFFFFFFFFFFE, double %1612)
  %1614 = tail call double @llvm.fmuladd.f64(double %249, double 0xBC94000000000000, double %1613)
  %1615 = tail call double @llvm.fmuladd.f64(double %251, double 0xBC7C000000000000, double %1614)
  %1616 = tail call double @llvm.fmuladd.f64(double %311, double 0xBC7FFFFFFFFFFFFF, double %1615)
  %1617 = tail call double @llvm.fmuladd.f64(double %255, double 0x3CB9000000000000, double %1616)
  %1618 = tail call double @llvm.fmuladd.f64(double %259, double 0x3C90000000000000, double %1617)
  %1619 = tail call double @llvm.fmuladd.f64(double %261, double 0xBC82000000000000, double %1618)
  %1620 = tail call double @llvm.fmuladd.f64(double %318, double 0xBC70000000000001, double %1619)
  %1621 = tail call double @llvm.fmuladd.f64(double %263, double 0xBC70000000000001, double %1620)
  %1622 = tail call double @llvm.fmuladd.f64(double %265, double 0x3CBDC00000000000, double %1621)
  %1623 = tail call double @llvm.fmuladd.f64(double %267, double 0xBCA8800000000000, double %1622)
  %1624 = tail call double @llvm.fmuladd.f64(double %269, double 0x3C88000000000000, double %1623)
  %1625 = tail call double @llvm.fmuladd.f64(double %324, double 0xBC70000000000001, double %1624)
  %1626 = tail call double @llvm.fmuladd.f64(double %271, double 0xBFE333710B32A29A, double %1625)
  %1627 = tail call double @llvm.fmuladd.f64(double %273, double 0xBFBEED13A9F0D8FA, double %1626)
  %1628 = tail call double @llvm.fmuladd.f64(double %275, double 0xBFA352D4DB969C0E, double %1627)
  %1629 = tail call double @llvm.fmuladd.f64(double %277, double 0x3FA87D7643548531, double %1628)
  %1630 = tail call double @llvm.fmuladd.f64(double %279, double 0x3F9854E0ADA34BB5, double %1629)
  %1631 = tail call double @llvm.fmuladd.f64(double %281, double 0xBFD41C0D131D4295, double %1630)
  %1632 = tail call double @llvm.fmuladd.f64(double %283, double 0x3FF670C5F1F4C92E, double %1631)
  %1633 = tail call double @llvm.fmuladd.f64(double %285, double 0x3FC36A9134CD3C58, double %1632)
  %1634 = tail call double @llvm.fmuladd.f64(double %287, double 0x3FD35DAE88CBA648, double %1633)
  %1635 = tail call double @llvm.fmuladd.f64(double %289, double 0x3FC27B05E24EC5F8, double %1634)
  %gep8385 = getelementptr double, ptr %invariant.gep8384, i64 %indvars.iv
  %1636 = load double, ptr %gep8385, align 8, !tbaa !5
  %1637 = fadd double %1635, %1636
  store double %1637, ptr %gep8385, align 8, !tbaa !5
  %1638 = fmul double %220, 0x3CA0000000000002
  %1639 = tail call double @llvm.fmuladd.f64(double %219, double 0xBC89FFFFFFFFFFFF, double %1638)
  %1640 = tail call double @llvm.fmuladd.f64(double %223, double 0xBCA4A00000000001, double %1639)
  %1641 = tail call double @llvm.fmuladd.f64(double %225, double 0x3C8B800000000001, double %1640)
  %1642 = tail call double @llvm.fmuladd.f64(double %227, double 0xBC94000000000000, double %1641)
  %1643 = tail call double @llvm.fmuladd.f64(double %229, double 0xBC96000000000000, double %1642)
  %1644 = tail call double @llvm.fmuladd.f64(double %231, double 0xBCA33FFFFFFFFFFE, double %1643)
  %1645 = tail call double @llvm.fmuladd.f64(double %233, double 0x3C6C000000000000, double %1644)
  %1646 = tail call double @llvm.fmuladd.f64(double %235, double 0x3CB3000000000000, double %1645)
  %1647 = tail call double @llvm.fmuladd.f64(double %237, double 0xBC7FFFFFFFFFFFFF, double %1646)
  %1648 = tail call double @llvm.fmuladd.f64(double %239, double 0x3CA5FFFFFFFFFFFF, double %1647)
  %1649 = tail call double @llvm.fmuladd.f64(double %241, double 0xBC98000000000000, double %1648)
  %1650 = tail call double @llvm.fmuladd.f64(double %243, double 0x3C93000000000000, double %1649)
  %1651 = tail call double @llvm.fmuladd.f64(double %245, double 0x3C9A800000000000, double %1650)
  %1652 = tail call double @llvm.fmuladd.f64(double %307, double 0xBC90000000000000, double %1651)
  %1653 = tail call double @llvm.fmuladd.f64(double %247, double 0xBCA2000000000000, double %1652)
  %1654 = tail call double @llvm.fmuladd.f64(double %249, double 0xBCBA800000000000, double %1653)
  %1655 = tail call double @llvm.fmuladd.f64(double %251, double 0x3C99000000000000, double %1654)
  %1656 = tail call double @llvm.fmuladd.f64(double %253, double 0x3C7FFFFFFFFFFFFF, double %1655)
  %1657 = tail call double @llvm.fmuladd.f64(double %255, double 0x3CB1000000000001, double %1656)
  %1658 = tail call double @llvm.fmuladd.f64(double %257, double 0xBC88000000000000, double %1657)
  %1659 = tail call double @llvm.fmuladd.f64(double %259, double 0xBCA1000000000001, double %1658)
  %1660 = tail call double @llvm.fmuladd.f64(double %261, double 0x3CA3800000000002, double %1659)
  %1661 = tail call double @llvm.fmuladd.f64(double %318, double 0x3CA0000000000002, double %1660)
  %1662 = tail call double @llvm.fmuladd.f64(double %263, double 0xBCA0000000000002, double %1661)
  %1663 = tail call double @llvm.fmuladd.f64(double %265, double 0xBC86000000000001, double %1662)
  %1664 = tail call double @llvm.fmuladd.f64(double %267, double 0xBCAD7FFFFFFFFFFE, double %1663)
  %1665 = tail call double @llvm.fmuladd.f64(double %324, double 0xBC70000000000001, double %1664)
  %1666 = tail call double @llvm.fmuladd.f64(double %271, double 0xBFE333710B32A29C, double %1665)
  %1667 = tail call double @llvm.fmuladd.f64(double %273, double 0xBFBEED13A9F0D910, double %1666)
  %1668 = tail call double @llvm.fmuladd.f64(double %275, double 0x3FA87D76435484EB, double %1667)
  %1669 = tail call double @llvm.fmuladd.f64(double %277, double 0xBFA352D4DB969C03, double %1668)
  %1670 = tail call double @llvm.fmuladd.f64(double %279, double 0xBFD41C0D131D428A, double %1669)
  %1671 = tail call double @llvm.fmuladd.f64(double %281, double 0x3F9854E0ADA34B70, double %1670)
  %1672 = tail call double @llvm.fmuladd.f64(double %283, double 0x3FC36A9134CD3C54, double %1671)
  %1673 = tail call double @llvm.fmuladd.f64(double %285, double 0x3FF670C5F1F4C92E, double %1672)
  %1674 = tail call double @llvm.fmuladd.f64(double %287, double 0x3FC27B05E24EC5F4, double %1673)
  %1675 = tail call double @llvm.fmuladd.f64(double %289, double 0x3FD35DAE88CBA64A, double %1674)
  %gep8387 = getelementptr double, ptr %invariant.gep8386, i64 %indvars.iv
  %1676 = load double, ptr %gep8387, align 8, !tbaa !5
  %1677 = fadd double %1675, %1676
  store double %1677, ptr %gep8387, align 8, !tbaa !5
  %1678 = fmul double %220, 0x3CA5000000000000
  %1679 = tail call double @llvm.fmuladd.f64(double %219, double 0xBCC1400000000000, double %1678)
  %1680 = tail call double @llvm.fmuladd.f64(double %223, double 0x3CA8600000000000, double %1679)
  %1681 = tail call double @llvm.fmuladd.f64(double %225, double 0xBCB5100000000000, double %1680)
  %1682 = tail call double @llvm.fmuladd.f64(double %227, double 0xBCA9FFFFFFFFFFFE, double %1681)
  %1683 = tail call double @llvm.fmuladd.f64(double %229, double 0xBC88000000000000, double %1682)
  %1684 = tail call double @llvm.fmuladd.f64(double %231, double 0x3C8D000000000001, double %1683)
  %1685 = tail call double @llvm.fmuladd.f64(double %233, double 0x3CB0400000000000, double %1684)
  %1686 = tail call double @llvm.fmuladd.f64(double %235, double 0x3CB1000000000001, double %1685)
  %1687 = tail call double @llvm.fmuladd.f64(double %237, double 0xBC78000000000002, double %1686)
  %1688 = tail call double @llvm.fmuladd.f64(double %239, double 0x3CC7000000000000, double %1687)
  %1689 = tail call double @llvm.fmuladd.f64(double %241, double 0xBC70000000000001, double %1688)
  %1690 = tail call double @llvm.fmuladd.f64(double %243, double 0x3C9EFFFFFFFFFFFD, double %1689)
  %1691 = tail call double @llvm.fmuladd.f64(double %245, double 0x3C8B000000000000, double %1690)
  %1692 = tail call double @llvm.fmuladd.f64(double %307, double 0xBCBF000000000001, double %1691)
  %1693 = tail call double @llvm.fmuladd.f64(double %247, double 0xBCACFFFFFFFFFFFF, double %1692)
  %1694 = tail call double @llvm.fmuladd.f64(double %249, double 0xBCA3800000000002, double %1693)
  %1695 = tail call double @llvm.fmuladd.f64(double %251, double 0x3CB9C00000000001, double %1694)
  %1696 = tail call double @llvm.fmuladd.f64(double %311, double 0xBC94000000000000, double %1695)
  %1697 = tail call double @llvm.fmuladd.f64(double %255, double 0xBCB2000000000000, double %1696)
  %1698 = tail call double @llvm.fmuladd.f64(double %257, double 0xBCA8000000000001, double %1697)
  %1699 = tail call double @llvm.fmuladd.f64(double %259, double 0xBCB3FFFFFFFFFFFF, double %1698)
  %1700 = tail call double @llvm.fmuladd.f64(double %261, double 0x3CB7000000000000, double %1699)
  %1701 = tail call double @llvm.fmuladd.f64(double %318, double 0x3CB7000000000000, double %1700)
  %1702 = tail call double @llvm.fmuladd.f64(double %263, double 0xBC8C000000000000, double %1701)
  %1703 = tail call double @llvm.fmuladd.f64(double %265, double 0x3C95000000000000, double %1702)
  %1704 = tail call double @llvm.fmuladd.f64(double %267, double 0xBCBE400000000000, double %1703)
  %1705 = tail call double @llvm.fmuladd.f64(double %269, double 0x3C90000000000000, double %1704)
  %1706 = tail call double @llvm.fmuladd.f64(double %324, double 0xBCA0000000000002, double %1705)
  %1707 = tail call double @llvm.fmuladd.f64(double %271, double 0xBF83152016E0ED26, double %1706)
  %1708 = tail call double @llvm.fmuladd.f64(double %273, double 0xBFB5B58B4F03B1AC, double %1707)
  %1709 = tail call double @llvm.fmuladd.f64(double %275, double 0x3FF4EC1BB3FDC617, double %1708)
  %1710 = tail call double @llvm.fmuladd.f64(double %277, double 0x3F938CE4890DB2CB, double %1709)
  %1711 = tail call double @llvm.fmuladd.f64(double %279, double 0xBFE5679E70A60654, double %1710)
  %1712 = tail call double @llvm.fmuladd.f64(double %281, double 0x3F85E50BB681A4BC, double %1711)
  %1713 = tail call double @llvm.fmuladd.f64(double %283, double 0xBFB49217631F591C, double %1712)
  %1714 = tail call double @llvm.fmuladd.f64(double %285, double 0x3FCA50C41AB7A2E4, double %1713)
  %1715 = tail call double @llvm.fmuladd.f64(double %287, double 0xBF8BDAF699AECF71, double %1714)
  %1716 = tail call double @llvm.fmuladd.f64(double %289, double 0x3FD417DEBFC17B15, double %1715)
  %gep8389 = getelementptr double, ptr %invariant.gep8388, i64 %indvars.iv
  %1717 = load double, ptr %gep8389, align 8, !tbaa !5
  %1718 = fadd double %1716, %1717
  store double %1718, ptr %gep8389, align 8, !tbaa !5
  %1719 = fmul double %220, 0x3F938CE4890DB2D9
  %1720 = tail call double @llvm.fmuladd.f64(double %219, double 0xBF83152016E0ECAB, double %1719)
  %1721 = tail call double @llvm.fmuladd.f64(double %223, double 0xBFB5B58B4F03B1A3, double %1720)
  %1722 = tail call double @llvm.fmuladd.f64(double %225, double 0x3FF4EC1BB3FDC612, double %1721)
  %1723 = tail call double @llvm.fmuladd.f64(double %227, double 0xBF8BDAF699AECF88, double %1722)
  %1724 = tail call double @llvm.fmuladd.f64(double %229, double 0x3FCA50C41AB7A325, double %1723)
  %1725 = tail call double @llvm.fmuladd.f64(double %231, double 0xBFE5679E70A60653, double %1724)
  %1726 = tail call double @llvm.fmuladd.f64(double %233, double 0x3FD417DEBFC17B18, double %1725)
  %1727 = tail call double @llvm.fmuladd.f64(double %235, double 0xBFB49217631F5944, double %1726)
  %1728 = tail call double @llvm.fmuladd.f64(double %237, double 0x3F85E50BB681A448, double %1727)
  %1729 = tail call double @llvm.fmuladd.f64(double %239, double 0x3C9C800000000000, double %1728)
  %1730 = tail call double @llvm.fmuladd.f64(double %241, double 0xBC60000000000000, double %1729)
  %1731 = tail call double @llvm.fmuladd.f64(double %243, double 0xBC80800000000000, double %1730)
  %1732 = tail call double @llvm.fmuladd.f64(double %245, double 0x3CA5CFFFFFFFFFFF, double %1731)
  %1733 = tail call double @llvm.fmuladd.f64(double %307, double 0x3C94000000000000, double %1732)
  %1734 = tail call double @llvm.fmuladd.f64(double %247, double 0xBC82FFFFFFFFFFFF, double %1733)
  %1735 = tail call double @llvm.fmuladd.f64(double %249, double 0xBC97E00000000000, double %1734)
  %1736 = tail call double @llvm.fmuladd.f64(double %251, double 0xBC8B800000000001, double %1735)
  %1737 = tail call double @llvm.fmuladd.f64(double %311, double 0x3C7FFFFFFFFFFFFF, double %1736)
  %1738 = tail call double @llvm.fmuladd.f64(double %253, double 0x3C74000000000000, double %1737)
  %1739 = tail call double @llvm.fmuladd.f64(double %255, double 0x3C93800000000000, double %1738)
  %1740 = tail call double @llvm.fmuladd.f64(double %257, double 0x3C86FFFFFFFFFFFF, double %1739)
  %1741 = tail call double @llvm.fmuladd.f64(double %259, double 0xBC7FFFFFFFFFFFFF, double %1740)
  %1742 = tail call double @llvm.fmuladd.f64(double %261, double 0xBC68FFFFFFFFFFFD, double %1741)
  %1743 = tail call double @llvm.fmuladd.f64(double %318, double 0x3C78000000000002, double %1742)
  %1744 = tail call double @llvm.fmuladd.f64(double %263, double 0x3CA7C00000000001, double %1743)
  %1745 = tail call double @llvm.fmuladd.f64(double %265, double 0x3CA4100000000001, double %1744)
  %1746 = tail call double @llvm.fmuladd.f64(double %267, double 0xBCA1A00000000000, double %1745)
  %1747 = tail call double @llvm.fmuladd.f64(double %269, double 0x3C89000000000000, double %1746)
  %1748 = tail call double @llvm.fmuladd.f64(double %324, double 0xBC90000000000000, double %1747)
  %1749 = tail call double @llvm.fmuladd.f64(double %271, double 0xBC92400000000000, double %1748)
  %1750 = tail call double @llvm.fmuladd.f64(double %273, double 0xBC90000000000000, double %1749)
  %1751 = tail call double @llvm.fmuladd.f64(double %275, double 0xBCA0780000000001, double %1750)
  %1752 = tail call double @llvm.fmuladd.f64(double %277, double 0x3C69800000000003, double %1751)
  %1753 = tail call double @llvm.fmuladd.f64(double %279, double 0xBC70000000000001, double %1752)
  %1754 = tail call double @llvm.fmuladd.f64(double %281, double 0x3CA27FFFFFFFFFFF, double %1753)
  %1755 = tail call double @llvm.fmuladd.f64(double %283, double 0xBC90F00000000000, double %1754)
  %1756 = tail call double @llvm.fmuladd.f64(double %285, double 0xBC82A00000000000, double %1755)
  %1757 = tail call double @llvm.fmuladd.f64(double %287, double 0x3C6C000000000000, double %1756)
  %1758 = tail call double @llvm.fmuladd.f64(double %289, double 0xBC66000000000000, double %1757)
  %gep8391 = getelementptr double, ptr %invariant.gep8390, i64 %indvars.iv
  %1759 = load double, ptr %gep8391, align 8, !tbaa !5
  %1760 = fadd double %1758, %1759
  store double %1760, ptr %gep8391, align 8, !tbaa !5
  %1761 = fmul double %220, 0xBFA352D4DB969C0E
  %1762 = tail call double @llvm.fmuladd.f64(double %219, double 0xBFE333710B32A29A, double %1761)
  %1763 = tail call double @llvm.fmuladd.f64(double %223, double 0xBFBEED13A9F0D910, double %1762)
  %1764 = tail call double @llvm.fmuladd.f64(double %225, double 0x3FA87D764354855F, double %1763)
  %1765 = tail call double @llvm.fmuladd.f64(double %227, double 0x3FC27B05E24EC5F8, double %1764)
  %1766 = tail call double @llvm.fmuladd.f64(double %229, double 0x3FF670C5F1F4C92E, double %1765)
  %1767 = tail call double @llvm.fmuladd.f64(double %231, double 0xBFD41C0D131D4295, double %1766)
  %1768 = tail call double @llvm.fmuladd.f64(double %233, double 0x3FD35DAE88CBA64D, double %1767)
  %1769 = tail call double @llvm.fmuladd.f64(double %235, double 0x3FC36A9134CD3C5F, double %1768)
  %1770 = tail call double @llvm.fmuladd.f64(double %237, double 0x3F9854E0ADA34BA1, double %1769)
  %1771 = tail call double @llvm.fmuladd.f64(double %239, double 0xBC9DFFFFFFFFFFFE, double %1770)
  %1772 = tail call double @llvm.fmuladd.f64(double %243, double 0x3C7B000000000001, double %1771)
  %1773 = tail call double @llvm.fmuladd.f64(double %245, double 0xBC89000000000000, double %1772)
  %1774 = tail call double @llvm.fmuladd.f64(double %307, double 0xBC7FFFFFFFFFFFFF, double %1773)
  %1775 = tail call double @llvm.fmuladd.f64(double %247, double 0x3CA67FFFFFFFFFFE, double %1774)
  %1776 = tail call double @llvm.fmuladd.f64(double %249, double 0xBC7FFFFFFFFFFFFF, double %1775)
  %1777 = tail call double @llvm.fmuladd.f64(double %251, double 0xBCA33FFFFFFFFFFE, double %1776)
  %1778 = tail call double @llvm.fmuladd.f64(double %311, double 0x3C8E000000000000, double %1777)
  %1779 = tail call double @llvm.fmuladd.f64(double %253, double 0x3C78000000000002, double %1778)
  %1780 = tail call double @llvm.fmuladd.f64(double %255, double 0x3C8C000000000000, double %1779)
  %1781 = tail call double @llvm.fmuladd.f64(double %257, double 0x3C92000000000000, double %1780)
  %1782 = tail call double @llvm.fmuladd.f64(double %259, double 0x3C8F000000000000, double %1781)
  %1783 = tail call double @llvm.fmuladd.f64(double %261, double 0xBCA61FFFFFFFFFFF, double %1782)
  %1784 = tail call double @llvm.fmuladd.f64(double %318, double 0x3C94000000000000, double %1783)
  %1785 = tail call double @llvm.fmuladd.f64(double %263, double 0xBC99000000000000, double %1784)
  %1786 = tail call double @llvm.fmuladd.f64(double %265, double 0xBC9F7FFFFFFFFFFC, double %1785)
  %1787 = tail call double @llvm.fmuladd.f64(double %267, double 0xBC8D800000000000, double %1786)
  %1788 = tail call double @llvm.fmuladd.f64(double %269, double 0xBC9C000000000000, double %1787)
  %1789 = tail call double @llvm.fmuladd.f64(double %324, double 0x3C78000000000002, double %1788)
  %1790 = tail call double @llvm.fmuladd.f64(double %271, double 0x3C85000000000000, double %1789)
  %1791 = tail call double @llvm.fmuladd.f64(double %273, double 0xBC91000000000000, double %1790)
  %1792 = tail call double @llvm.fmuladd.f64(double %275, double 0xBC96E00000000000, double %1791)
  %1793 = tail call double @llvm.fmuladd.f64(double %277, double 0xBC6EFFFFFFFFFFFD, double %1792)
  %1794 = tail call double @llvm.fmuladd.f64(double %279, double 0x3C93800000000000, double %1793)
  %1795 = tail call double @llvm.fmuladd.f64(double %281, double 0xBC8F000000000000, double %1794)
  %1796 = tail call double @llvm.fmuladd.f64(double %283, double 0x3C7F000000000000, double %1795)
  %1797 = tail call double @llvm.fmuladd.f64(double %285, double 0x3C66000000000000, double %1796)
  %1798 = tail call double @llvm.fmuladd.f64(double %287, double 0x3C89FFFFFFFFFFFF, double %1797)
  %1799 = tail call double @llvm.fmuladd.f64(double %289, double 0x3C8B000000000000, double %1798)
  %gep8393 = getelementptr double, ptr %invariant.gep8392, i64 %indvars.iv
  %1800 = load double, ptr %gep8393, align 8, !tbaa !5
  %1801 = fadd double %1799, %1800
  store double %1801, ptr %gep8393, align 8, !tbaa !5
  %1802 = fmul double %220, 0x3FA87D7643548500
  %1803 = tail call double @llvm.fmuladd.f64(double %219, double 0xBFE333710B32A297, double %1802)
  %1804 = tail call double @llvm.fmuladd.f64(double %223, double 0xBFBEED13A9F0D910, double %1803)
  %1805 = tail call double @llvm.fmuladd.f64(double %225, double 0xBFA352D4DB969BEA, double %1804)
  %1806 = tail call double @llvm.fmuladd.f64(double %227, double 0x3FD35DAE88CBA641, double %1805)
  %1807 = tail call double @llvm.fmuladd.f64(double %229, double 0x3FC36A9134CD3C54, double %1806)
  %1808 = tail call double @llvm.fmuladd.f64(double %231, double 0x3F9854E0ADA34AF1, double %1807)
  %1809 = tail call double @llvm.fmuladd.f64(double %233, double 0x3FC27B05E24EC602, double %1808)
  %1810 = tail call double @llvm.fmuladd.f64(double %235, double 0x3FF670C5F1F4C92E, double %1809)
  %1811 = tail call double @llvm.fmuladd.f64(double %237, double 0xBFD41C0D131D4288, double %1810)
  %1812 = tail call double @llvm.fmuladd.f64(double %239, double 0xBCAB000000000001, double %1811)
  %1813 = tail call double @llvm.fmuladd.f64(double %241, double 0x3C92000000000000, double %1812)
  %1814 = tail call double @llvm.fmuladd.f64(double %243, double 0xBC96800000000000, double %1813)
  %1815 = tail call double @llvm.fmuladd.f64(double %245, double 0xBC9CFFFFFFFFFFFF, double %1814)
  %1816 = tail call double @llvm.fmuladd.f64(double %307, double 0xBCAB000000000001, double %1815)
  %1817 = tail call double @llvm.fmuladd.f64(double %247, double 0x3C90000000000000, double %1816)
  %1818 = tail call double @llvm.fmuladd.f64(double %249, double 0x3CA2FFFFFFFFFFFE, double %1817)
  %1819 = tail call double @llvm.fmuladd.f64(double %251, double 0xBC9DFFFFFFFFFFFE, double %1818)
  %1820 = tail call double @llvm.fmuladd.f64(double %311, double 0x3CB9000000000000, double %1819)
  %1821 = tail call double @llvm.fmuladd.f64(double %253, double 0x3CA1000000000001, double %1820)
  %1822 = tail call double @llvm.fmuladd.f64(double %255, double 0xBCA9000000000000, double %1821)
  %1823 = tail call double @llvm.fmuladd.f64(double %257, double 0x3CA5000000000000, double %1822)
  %1824 = tail call double @llvm.fmuladd.f64(double %259, double 0x3CAB800000000001, double %1823)
  %1825 = tail call double @llvm.fmuladd.f64(double %261, double 0xBCA9BFFFFFFFFFFF, double %1824)
  %1826 = tail call double @llvm.fmuladd.f64(double %318, double 0xBC84000000000000, double %1825)
  %1827 = tail call double @llvm.fmuladd.f64(double %263, double 0xBCA4000000000001, double %1826)
  %1828 = tail call double @llvm.fmuladd.f64(double %265, double 0xBCA7400000000002, double %1827)
  %1829 = tail call double @llvm.fmuladd.f64(double %267, double 0x3CA0000000000002, double %1828)
  %1830 = tail call double @llvm.fmuladd.f64(double %269, double 0x3CB5000000000000, double %1829)
  %1831 = tail call double @llvm.fmuladd.f64(double %324, double 0x3C9A000000000000, double %1830)
  %1832 = tail call double @llvm.fmuladd.f64(double %271, double 0x3CA0000000000002, double %1831)
  %1833 = tail call double @llvm.fmuladd.f64(double %273, double 0x3C98000000000000, double %1832)
  %1834 = tail call double @llvm.fmuladd.f64(double %275, double 0xBC86800000000000, double %1833)
  %1835 = tail call double @llvm.fmuladd.f64(double %277, double 0x3C96200000000000, double %1834)
  %1836 = tail call double @llvm.fmuladd.f64(double %279, double 0xBCA33FFFFFFFFFFE, double %1835)
  %1837 = tail call double @llvm.fmuladd.f64(double %281, double 0x3C82FFFFFFFFFFFF, double %1836)
  %1838 = tail call double @llvm.fmuladd.f64(double %283, double 0x3C9FC00000000004, double %1837)
  %1839 = tail call double @llvm.fmuladd.f64(double %285, double 0xBC82800000000000, double %1838)
  %1840 = tail call double @llvm.fmuladd.f64(double %287, double 0x3C9A000000000000, double %1839)
  %1841 = tail call double @llvm.fmuladd.f64(double %289, double 0x3C91000000000000, double %1840)
  %gep8395 = getelementptr double, ptr %invariant.gep8394, i64 %indvars.iv
  %1842 = load double, ptr %gep8395, align 8, !tbaa !5
  %1843 = fadd double %1841, %1842
  store double %1843, ptr %gep8395, align 8, !tbaa !5
  %1844 = fmul double %220, 0x3FF4EC1BB3FDC612
  %1845 = tail call double @llvm.fmuladd.f64(double %219, double 0xBF83152016E0EAA8, double %1844)
  %1846 = tail call double @llvm.fmuladd.f64(double %223, double 0xBFB5B58B4F03B19F, double %1845)
  %1847 = tail call double @llvm.fmuladd.f64(double %225, double 0x3F938CE4890DB2C2, double %1846)
  %1848 = tail call double @llvm.fmuladd.f64(double %227, double 0x3FD417DEBFC17B11, double %1847)
  %1849 = tail call double @llvm.fmuladd.f64(double %229, double 0xBFB49217631F5929, double %1848)
  %1850 = tail call double @llvm.fmuladd.f64(double %231, double 0x3F85E50BB681A350, double %1849)
  %1851 = tail call double @llvm.fmuladd.f64(double %233, double 0xBF8BDAF699AECF48, double %1850)
  %1852 = tail call double @llvm.fmuladd.f64(double %235, double 0x3FCA50C41AB7A310, double %1851)
  %1853 = tail call double @llvm.fmuladd.f64(double %237, double 0xBFE5679E70A60656, double %1852)
  %1854 = tail call double @llvm.fmuladd.f64(double %239, double 0xBCB8000000000001, double %1853)
  %1855 = tail call double @llvm.fmuladd.f64(double %241, double 0x3CA0000000000002, double %1854)
  %1856 = tail call double @llvm.fmuladd.f64(double %243, double 0xBC8C000000000000, double %1855)
  %1857 = tail call double @llvm.fmuladd.f64(double %245, double 0xBCA4000000000001, double %1856)
  %1858 = tail call double @llvm.fmuladd.f64(double %307, double 0xBCAC000000000000, double %1857)
  %1859 = tail call double @llvm.fmuladd.f64(double %247, double 0x3C90000000000000, double %1858)
  %1860 = tail call double @llvm.fmuladd.f64(double %249, double 0x3CB2000000000000, double %1859)
  %1861 = tail call double @llvm.fmuladd.f64(double %251, double 0xBC8C000000000000, double %1860)
  %1862 = tail call double @llvm.fmuladd.f64(double %253, double 0x3C7FFFFFFFFFFFFF, double %1861)
  %1863 = tail call double @llvm.fmuladd.f64(double %255, double 0xBCB5FFFFFFFFFFFF, double %1862)
  %1864 = tail call double @llvm.fmuladd.f64(double %257, double 0x3CA8000000000001, double %1863)
  %1865 = tail call double @llvm.fmuladd.f64(double %259, double 0x3CA97FFFFFFFFFFF, double %1864)
  %1866 = tail call double @llvm.fmuladd.f64(double %261, double 0xBCA0000000000002, double %1865)
  %1867 = tail call double @llvm.fmuladd.f64(double %318, double 0xBCB0000000000000, double %1866)
  %1868 = tail call double @llvm.fmuladd.f64(double %263, double 0xBCA8000000000001, double %1867)
  %1869 = tail call double @llvm.fmuladd.f64(double %265, double 0xBC92000000000000, double %1868)
  %1870 = tail call double @llvm.fmuladd.f64(double %267, double 0x3CB6800000000000, double %1869)
  %1871 = tail call double @llvm.fmuladd.f64(double %269, double 0x3C7FFFFFFFFFFFFF, double %1870)
  %1872 = tail call double @llvm.fmuladd.f64(double %271, double 0xBC88000000000000, double %1871)
  %1873 = tail call double @llvm.fmuladd.f64(double %273, double 0xBC90000000000000, double %1872)
  %1874 = tail call double @llvm.fmuladd.f64(double %275, double 0x3C70000000000001, double %1873)
  %1875 = tail call double @llvm.fmuladd.f64(double %277, double 0x3CA67FFFFFFFFFFE, double %1874)
  %1876 = tail call double @llvm.fmuladd.f64(double %279, double 0xBCAE000000000002, double %1875)
  %1877 = tail call double @llvm.fmuladd.f64(double %281, double 0xBC7FFFFFFFFFFFFF, double %1876)
  %1878 = tail call double @llvm.fmuladd.f64(double %283, double 0x3C97000000000000, double %1877)
  %1879 = tail call double @llvm.fmuladd.f64(double %285, double 0xBC78000000000002, double %1878)
  %1880 = tail call double @llvm.fmuladd.f64(double %287, double 0xBC98000000000000, double %1879)
  %1881 = tail call double @llvm.fmuladd.f64(double %289, double 0x3C70000000000001, double %1880)
  %gep8397 = getelementptr double, ptr %invariant.gep8396, i64 %indvars.iv
  %1882 = load double, ptr %gep8397, align 8, !tbaa !5
  %1883 = fadd double %1881, %1882
  store double %1883, ptr %gep8397, align 8, !tbaa !5
  %1884 = fmul double %220, 0x3C7CFFFFFFFFFFFF
  %1885 = tail call double @llvm.fmuladd.f64(double %219, double 0xBCB05FFFFFFFFFFF, double %1884)
  %1886 = tail call double @llvm.fmuladd.f64(double %223, double 0xBC91400000000000, double %1885)
  %1887 = tail call double @llvm.fmuladd.f64(double %225, double 0x3C95000000000000, double %1886)
  %1888 = tail call double @llvm.fmuladd.f64(double %227, double 0xBC9BC00000000000, double %1887)
  %1889 = tail call double @llvm.fmuladd.f64(double %229, double 0x3CA9FFFFFFFFFFFE, double %1888)
  %1890 = tail call double @llvm.fmuladd.f64(double %231, double 0x3CB92BFFFFFFFFFF, double %1889)
  %1891 = tail call double @llvm.fmuladd.f64(double %233, double 0x3C98900000000000, double %1890)
  %1892 = tail call double @llvm.fmuladd.f64(double %235, double 0x3C8B000000000000, double %1891)
  %1893 = tail call double @llvm.fmuladd.f64(double %237, double 0xBC67FFFFFFFFFFFE, double %1892)
  %1894 = tail call double @llvm.fmuladd.f64(double %239, double 0xBF83152016E0EC5E, double %1893)
  %1895 = tail call double @llvm.fmuladd.f64(double %241, double 0x3F938CE4890DB2BA, double %1894)
  %1896 = tail call double @llvm.fmuladd.f64(double %243, double 0xBFB5B58B4F03B19E, double %1895)
  %1897 = tail call double @llvm.fmuladd.f64(double %245, double 0x3FF4EC1BB3FDC612, double %1896)
  %1898 = tail call double @llvm.fmuladd.f64(double %307, double 0xBF8BDAF699AECEEC, double %1897)
  %1899 = tail call double @llvm.fmuladd.f64(double %247, double 0x3FCA50C41AB7A329, double %1898)
  %1900 = tail call double @llvm.fmuladd.f64(double %249, double 0xBFE5679E70A60656, double %1899)
  %1901 = tail call double @llvm.fmuladd.f64(double %251, double 0x3FD417DEBFC17B11, double %1900)
  %1902 = tail call double @llvm.fmuladd.f64(double %311, double 0xBFB49217631F593C, double %1901)
  %1903 = tail call double @llvm.fmuladd.f64(double %253, double 0x3F85E50BB681A42C, double %1902)
  %1904 = tail call double @llvm.fmuladd.f64(double %255, double 0x3C97000000000000, double %1903)
  %1905 = tail call double @llvm.fmuladd.f64(double %257, double 0x3C8F000000000000, double %1904)
  %1906 = tail call double @llvm.fmuladd.f64(double %259, double 0xBC94C00000000000, double %1905)
  %1907 = tail call double @llvm.fmuladd.f64(double %261, double 0xBC97E00000000000, double %1906)
  %1908 = tail call double @llvm.fmuladd.f64(double %318, double 0x3CA27FFFFFFFFFFF, double %1907)
  %1909 = tail call double @llvm.fmuladd.f64(double %263, double 0xBC7E000000000001, double %1908)
  %1910 = tail call double @llvm.fmuladd.f64(double %265, double 0xBC94000000000000, double %1909)
  %1911 = tail call double @llvm.fmuladd.f64(double %267, double 0x3CAD5FFFFFFFFFFF, double %1910)
  %1912 = tail call double @llvm.fmuladd.f64(double %269, double 0x3C9CFFFFFFFFFFFF, double %1911)
  %1913 = tail call double @llvm.fmuladd.f64(double %324, double 0xBC7FFFFFFFFFFFFF, double %1912)
  %1914 = tail call double @llvm.fmuladd.f64(double %271, double 0x3CA8600000000000, double %1913)
  %1915 = tail call double @llvm.fmuladd.f64(double %273, double 0xBC87800000000001, double %1914)
  %1916 = tail call double @llvm.fmuladd.f64(double %275, double 0xBC97000000000000, double %1915)
  %1917 = tail call double @llvm.fmuladd.f64(double %277, double 0x3CA63FFFFFFFFFFF, double %1916)
  %1918 = tail call double @llvm.fmuladd.f64(double %279, double 0xBC99C00000000000, double %1917)
  %1919 = tail call double @llvm.fmuladd.f64(double %281, double 0xBC70000000000001, double %1918)
  %1920 = tail call double @llvm.fmuladd.f64(double %283, double 0xBC88200000000000, double %1919)
  %1921 = tail call double @llvm.fmuladd.f64(double %285, double 0xBC9A500000000000, double %1920)
  %1922 = tail call double @llvm.fmuladd.f64(double %287, double 0xBC81000000000000, double %1921)
  %1923 = tail call double @llvm.fmuladd.f64(double %289, double 0xBC7FFFFFFFFFFFFF, double %1922)
  %gep8399 = getelementptr double, ptr %invariant.gep8398, i64 %indvars.iv
  %1924 = load double, ptr %gep8399, align 8, !tbaa !5
  %1925 = fadd double %1923, %1924
  store double %1925, ptr %gep8399, align 8, !tbaa !5
  %1926 = fmul double %220, 0xBCA3C00000000002
  %1927 = tail call double @llvm.fmuladd.f64(double %219, double 0x3CC1100000000000, double %1926)
  %1928 = tail call double @llvm.fmuladd.f64(double %223, double 0xBC8BC00000000001, double %1927)
  %1929 = tail call double @llvm.fmuladd.f64(double %225, double 0x3CAE400000000002, double %1928)
  %1930 = tail call double @llvm.fmuladd.f64(double %227, double 0xBC9F7FFFFFFFFFFC, double %1929)
  %1931 = tail call double @llvm.fmuladd.f64(double %229, double 0x3C96800000000000, double %1930)
  %1932 = tail call double @llvm.fmuladd.f64(double %231, double 0x3C95800000000000, double %1931)
  %1933 = tail call double @llvm.fmuladd.f64(double %233, double 0x3C73000000000001, double %1932)
  %1934 = tail call double @llvm.fmuladd.f64(double %235, double 0x3CA23FFFFFFFFFFF, double %1933)
  %1935 = tail call double @llvm.fmuladd.f64(double %237, double 0xBCA1400000000000, double %1934)
  %1936 = tail call double @llvm.fmuladd.f64(double %239, double 0xBFE333710B32A29E, double %1935)
  %1937 = tail call double @llvm.fmuladd.f64(double %241, double 0xBFA352D4DB969C18, double %1936)
  %1938 = tail call double @llvm.fmuladd.f64(double %243, double 0xBFBEED13A9F0D909, double %1937)
  %1939 = tail call double @llvm.fmuladd.f64(double %245, double 0x3FA87D7643548522, double %1938)
  %1940 = tail call double @llvm.fmuladd.f64(double %307, double 0x3FC27B05E24EC5F8, double %1939)
  %1941 = tail call double @llvm.fmuladd.f64(double %247, double 0x3FF670C5F1F4C929, double %1940)
  %1942 = tail call double @llvm.fmuladd.f64(double %249, double 0xBFD41C0D131D4297, double %1941)
  %1943 = tail call double @llvm.fmuladd.f64(double %251, double 0x3FD35DAE88CBA648, double %1942)
  %1944 = tail call double @llvm.fmuladd.f64(double %311, double 0x3FC36A9134CD3C63, double %1943)
  %1945 = tail call double @llvm.fmuladd.f64(double %253, double 0x3F9854E0ADA34BC6, double %1944)
  %1946 = tail call double @llvm.fmuladd.f64(double %255, double 0x3CA1000000000001, double %1945)
  %1947 = tail call double @llvm.fmuladd.f64(double %257, double 0x3CA27FFFFFFFFFFF, double %1946)
  %1948 = tail call double @llvm.fmuladd.f64(double %259, double 0xBC82800000000000, double %1947)
  %1949 = tail call double @llvm.fmuladd.f64(double %261, double 0xBCB1D00000000000, double %1948)
  %1950 = tail call double @llvm.fmuladd.f64(double %318, double 0x3CA8800000000000, double %1949)
  %1951 = tail call double @llvm.fmuladd.f64(double %263, double 0x3C92000000000000, double %1950)
  %1952 = tail call double @llvm.fmuladd.f64(double %265, double 0x3CA63FFFFFFFFFFF, double %1951)
  %1953 = tail call double @llvm.fmuladd.f64(double %267, double 0x3CA4000000000001, double %1952)
  %1954 = tail call double @llvm.fmuladd.f64(double %269, double 0x3C92000000000000, double %1953)
  %1955 = tail call double @llvm.fmuladd.f64(double %324, double 0xBC9C000000000000, double %1954)
  %1956 = tail call double @llvm.fmuladd.f64(double %271, double 0x3CA8800000000000, double %1955)
  %1957 = tail call double @llvm.fmuladd.f64(double %273, double 0xBC8E000000000000, double %1956)
  %1958 = tail call double @llvm.fmuladd.f64(double %275, double 0x3C90E00000000000, double %1957)
  %1959 = tail call double @llvm.fmuladd.f64(double %277, double 0x3C97200000000000, double %1958)
  %1960 = tail call double @llvm.fmuladd.f64(double %279, double 0xBC89FFFFFFFFFFFF, double %1959)
  %1961 = tail call double @llvm.fmuladd.f64(double %281, double 0xBC9A800000000000, double %1960)
  %1962 = tail call double @llvm.fmuladd.f64(double %283, double 0xBC94400000000000, double %1961)
  %1963 = tail call double @llvm.fmuladd.f64(double %285, double 0xBC91400000000000, double %1962)
  %1964 = tail call double @llvm.fmuladd.f64(double %287, double 0xBC9EFFFFFFFFFFFD, double %1963)
  %1965 = tail call double @llvm.fmuladd.f64(double %289, double 0x3C79FFFFFFFFFFFF, double %1964)
  %gep8401 = getelementptr double, ptr %invariant.gep8400, i64 %indvars.iv
  %1966 = load double, ptr %gep8401, align 8, !tbaa !5
  %1967 = fadd double %1965, %1966
  store double %1967, ptr %gep8401, align 8, !tbaa !5
  %1968 = fmul double %220, 0xBCB6C00000000000
  %1969 = tail call double @llvm.fmuladd.f64(double %219, double 0x3CC4E00000000000, double %1968)
  %1970 = tail call double @llvm.fmuladd.f64(double %223, double 0xBC8E800000000001, double %1969)
  %1971 = tail call double @llvm.fmuladd.f64(double %225, double 0x3C67FFFFFFFFFFFE, double %1970)
  %1972 = tail call double @llvm.fmuladd.f64(double %227, double 0xBCC2C00000000000, double %1971)
  %1973 = tail call double @llvm.fmuladd.f64(double %229, double 0xBC50000000000000, double %1972)
  %1974 = tail call double @llvm.fmuladd.f64(double %231, double 0x3C8E800000000001, double %1973)
  %1975 = tail call double @llvm.fmuladd.f64(double %233, double 0x3C9BC00000000000, double %1974)
  %1976 = tail call double @llvm.fmuladd.f64(double %235, double 0x3CA0800000000001, double %1975)
  %1977 = tail call double @llvm.fmuladd.f64(double %237, double 0x3CAB800000000001, double %1976)
  %1978 = tail call double @llvm.fmuladd.f64(double %239, double 0xBFE333710B32A29E, double %1977)
  %1979 = tail call double @llvm.fmuladd.f64(double %241, double 0x3FA87D764354850E, double %1978)
  %1980 = tail call double @llvm.fmuladd.f64(double %243, double 0xBFBEED13A9F0D910, double %1979)
  %1981 = tail call double @llvm.fmuladd.f64(double %245, double 0xBFA352D4DB969BFC, double %1980)
  %1982 = tail call double @llvm.fmuladd.f64(double %307, double 0x3FD35DAE88CBA644, double %1981)
  %1983 = tail call double @llvm.fmuladd.f64(double %247, double 0x3FC36A9134CD3C4D, double %1982)
  %1984 = tail call double @llvm.fmuladd.f64(double %249, double 0x3F9854E0ADA34B16, double %1983)
  %1985 = tail call double @llvm.fmuladd.f64(double %251, double 0x3FC27B05E24EC5F8, double %1984)
  %1986 = tail call double @llvm.fmuladd.f64(double %311, double 0x3FF670C5F1F4C932, double %1985)
  %1987 = tail call double @llvm.fmuladd.f64(double %253, double 0xBFD41C0D131D4291, double %1986)
  %1988 = tail call double @llvm.fmuladd.f64(double %255, double 0xBCAE000000000002, double %1987)
  %1989 = tail call double @llvm.fmuladd.f64(double %257, double 0x3CBA000000000000, double %1988)
  %1990 = tail call double @llvm.fmuladd.f64(double %259, double 0x3CA4C00000000000, double %1989)
  %1991 = tail call double @llvm.fmuladd.f64(double %261, double 0xBCB93FFFFFFFFFFF, double %1990)
  %1992 = tail call double @llvm.fmuladd.f64(double %318, double 0xBC94000000000000, double %1991)
  %1993 = tail call double @llvm.fmuladd.f64(double %263, double 0x3CA2000000000000, double %1992)
  %1994 = tail call double @llvm.fmuladd.f64(double %265, double 0xBCA9000000000000, double %1993)
  %1995 = tail call double @llvm.fmuladd.f64(double %267, double 0x3CB77FFFFFFFFFFF, double %1994)
  %1996 = tail call double @llvm.fmuladd.f64(double %269, double 0x3CB2000000000000, double %1995)
  %1997 = tail call double @llvm.fmuladd.f64(double %324, double 0x3C9C000000000000, double %1996)
  %1998 = tail call double @llvm.fmuladd.f64(double %271, double 0xBCBAFFFFFFFFFFFF, double %1997)
  %1999 = tail call double @llvm.fmuladd.f64(double %273, double 0xBC98000000000000, double %1998)
  %2000 = tail call double @llvm.fmuladd.f64(double %275, double 0x3C8C800000000000, double %1999)
  %2001 = tail call double @llvm.fmuladd.f64(double %277, double 0x3CB4700000000001, double %2000)
  %2002 = tail call double @llvm.fmuladd.f64(double %279, double 0xBCA1000000000001, double %2001)
  %2003 = tail call double @llvm.fmuladd.f64(double %281, double 0x3CAC800000000000, double %2002)
  %2004 = tail call double @llvm.fmuladd.f64(double %283, double 0x3C9A400000000000, double %2003)
  %2005 = tail call double @llvm.fmuladd.f64(double %285, double 0xBCB1700000000000, double %2004)
  %2006 = tail call double @llvm.fmuladd.f64(double %287, double 0xBC9DFFFFFFFFFFFE, double %2005)
  %2007 = tail call double @llvm.fmuladd.f64(double %289, double 0xBC7FFFFFFFFFFFFF, double %2006)
  %gep8403 = getelementptr double, ptr %invariant.gep8402, i64 %indvars.iv
  %2008 = load double, ptr %gep8403, align 8, !tbaa !5
  %2009 = fadd double %2007, %2008
  store double %2009, ptr %gep8403, align 8, !tbaa !5
  %2010 = fmul double %220, 0xBCB5000000000000
  %2011 = tail call double @llvm.fmuladd.f64(double %219, double 0x3CBC000000000000, double %2010)
  %2012 = tail call double @llvm.fmuladd.f64(double %223, double 0x3C9CFFFFFFFFFFFF, double %2011)
  %2013 = tail call double @llvm.fmuladd.f64(double %225, double 0x3C84000000000000, double %2012)
  %2014 = tail call double @llvm.fmuladd.f64(double %227, double 0xBCB7000000000000, double %2013)
  %2015 = tail call double @llvm.fmuladd.f64(double %229, double 0x3C98000000000000, double %2014)
  %2016 = tail call double @llvm.fmuladd.f64(double %231, double 0x3C95000000000000, double %2015)
  %2017 = tail call double @llvm.fmuladd.f64(double %233, double 0x3CA2000000000000, double %2016)
  %2018 = tail call double @llvm.fmuladd.f64(double %235, double 0xBC94000000000000, double %2017)
  %2019 = tail call double @llvm.fmuladd.f64(double %237, double 0xBC7FFFFFFFFFFFFF, double %2018)
  %2020 = tail call double @llvm.fmuladd.f64(double %239, double 0xBF83152016E0EC50, double %2019)
  %2021 = tail call double @llvm.fmuladd.f64(double %241, double 0x3FF4EC1BB3FDC612, double %2020)
  %2022 = tail call double @llvm.fmuladd.f64(double %243, double 0xBFB5B58B4F03B1AE, double %2021)
  %2023 = tail call double @llvm.fmuladd.f64(double %245, double 0x3F938CE4890DB2A0, double %2022)
  %2024 = tail call double @llvm.fmuladd.f64(double %307, double 0x3FD417DEBFC17B15, double %2023)
  %2025 = tail call double @llvm.fmuladd.f64(double %247, double 0xBFB49217631F5930, double %2024)
  %2026 = tail call double @llvm.fmuladd.f64(double %249, double 0x3F85E50BB681A426, double %2025)
  %2027 = tail call double @llvm.fmuladd.f64(double %251, double 0xBF8BDAF699AED00C, double %2026)
  %2028 = tail call double @llvm.fmuladd.f64(double %311, double 0x3FCA50C41AB7A31A, double %2027)
  %2029 = tail call double @llvm.fmuladd.f64(double %253, double 0xBFE5679E70A6065A, double %2028)
  %2030 = tail call double @llvm.fmuladd.f64(double %255, double 0xBCC1000000000000, double %2029)
  %2031 = tail call double @llvm.fmuladd.f64(double %257, double 0x3CA8000000000001, double %2030)
  %2032 = tail call double @llvm.fmuladd.f64(double %259, double 0x3CB0000000000000, double %2031)
  %2033 = tail call double @llvm.fmuladd.f64(double %261, double 0xBC9C000000000000, double %2032)
  %2034 = tail call double @llvm.fmuladd.f64(double %318, double 0xBCB8000000000001, double %2033)
  %2035 = tail call double @llvm.fmuladd.f64(double %263, double 0x3CA0000000000002, double %2034)
  %2036 = tail call double @llvm.fmuladd.f64(double %265, double 0xBCA2000000000000, double %2035)
  %2037 = tail call double @llvm.fmuladd.f64(double %267, double 0x3CC4000000000000, double %2036)
  %2038 = tail call double @llvm.fmuladd.f64(double %269, double 0xBC90000000000000, double %2037)
  %2039 = tail call double @llvm.fmuladd.f64(double %324, double 0x3C90000000000000, double %2038)
  %2040 = tail call double @llvm.fmuladd.f64(double %271, double 0xBCBE000000000000, double %2039)
  %2041 = tail call double @llvm.fmuladd.f64(double %273, double 0x3CAC000000000000, double %2040)
  %2042 = tail call double @llvm.fmuladd.f64(double %275, double 0x3C91000000000000, double %2041)
  %2043 = tail call double @llvm.fmuladd.f64(double %277, double 0x3C9B000000000000, double %2042)
  %2044 = tail call double @llvm.fmuladd.f64(double %279, double 0xBCA9FFFFFFFFFFFE, double %2043)
  %2045 = tail call double @llvm.fmuladd.f64(double %281, double 0x3CA5FFFFFFFFFFFF, double %2044)
  %2046 = tail call double @llvm.fmuladd.f64(double %283, double 0x3C67FFFFFFFFFFFE, double %2045)
  %2047 = tail call double @llvm.fmuladd.f64(double %285, double 0xBCB0C00000000001, double %2046)
  %2048 = tail call double @llvm.fmuladd.f64(double %287, double 0x3CA0000000000002, double %2047)
  %2049 = tail call double @llvm.fmuladd.f64(double %289, double 0x3C88000000000000, double %2048)
  %gep8405 = getelementptr double, ptr %invariant.gep8404, i64 %indvars.iv
  %2050 = load double, ptr %gep8405, align 8, !tbaa !5
  %2051 = fadd double %2049, %2050
  store double %2051, ptr %gep8405, align 8, !tbaa !5
  %2052 = fmul double %220, 0xBC30000000000000
  %2053 = tail call double @llvm.fmuladd.f64(double %219, double 0xBC8D000000000001, double %2052)
  %2054 = tail call double @llvm.fmuladd.f64(double %223, double 0xBC92C00000000000, double %2053)
  %2055 = tail call double @llvm.fmuladd.f64(double %225, double 0x3CAD7FFFFFFFFFFE, double %2054)
  %2056 = tail call double @llvm.fmuladd.f64(double %227, double 0xBC80800000000000, double %2055)
  %2057 = tail call double @llvm.fmuladd.f64(double %229, double 0x3C98000000000000, double %2056)
  %2058 = tail call double @llvm.fmuladd.f64(double %231, double 0x3CADA7FFFFFFFFFE, double %2057)
  %2059 = tail call double @llvm.fmuladd.f64(double %233, double 0x3C7DC00000000001, double %2058)
  %2060 = tail call double @llvm.fmuladd.f64(double %235, double 0x3C79FFFFFFFFFFFF, double %2059)
  %2061 = tail call double @llvm.fmuladd.f64(double %237, double 0xBC9A000000000000, double %2060)
  %2062 = tail call double @llvm.fmuladd.f64(double %239, double 0x3C7C000000000000, double %2061)
  %2063 = tail call double @llvm.fmuladd.f64(double %241, double 0xBC96000000000000, double %2062)
  %2064 = tail call double @llvm.fmuladd.f64(double %243, double 0x3C73800000000000, double %2063)
  %2065 = tail call double @llvm.fmuladd.f64(double %245, double 0x3C9E9FFFFFFFFFFD, double %2064)
  %2066 = tail call double @llvm.fmuladd.f64(double %307, double 0x3CB1400000000000, double %2065)
  %2067 = tail call double @llvm.fmuladd.f64(double %247, double 0x3CA63FFFFFFFFFFF, double %2066)
  %2068 = tail call double @llvm.fmuladd.f64(double %249, double 0xBCA95FFFFFFFFFFF, double %2067)
  %2069 = tail call double @llvm.fmuladd.f64(double %251, double 0xBCB9C00000000001, double %2068)
  %2070 = tail call double @llvm.fmuladd.f64(double %311, double 0x3CA1800000000000, double %2069)
  %2071 = tail call double @llvm.fmuladd.f64(double %253, double 0xBC8C000000000000, double %2070)
  %2072 = tail call double @llvm.fmuladd.f64(double %255, double 0xBF83152016E0EC4E, double %2071)
  %2073 = tail call double @llvm.fmuladd.f64(double %257, double 0x3F938CE4890DB2EE, double %2072)
  %2074 = tail call double @llvm.fmuladd.f64(double %259, double 0xBFB5B58B4F03B1AA, double %2073)
  %2075 = tail call double @llvm.fmuladd.f64(double %261, double 0x3FF4EC1BB3FDC60E, double %2074)
  %2076 = tail call double @llvm.fmuladd.f64(double %318, double 0xBF8BDAF699AECF54, double %2075)
  %2077 = tail call double @llvm.fmuladd.f64(double %263, double 0x3FCA50C41AB7A325, double %2076)
  %2078 = tail call double @llvm.fmuladd.f64(double %265, double 0xBFE5679E70A60654, double %2077)
  %2079 = tail call double @llvm.fmuladd.f64(double %267, double 0x3FD417DEBFC17B18, double %2078)
  %2080 = tail call double @llvm.fmuladd.f64(double %269, double 0xBFB49217631F593D, double %2079)
  %2081 = tail call double @llvm.fmuladd.f64(double %324, double 0x3F85E50BB681A431, double %2080)
  %2082 = tail call double @llvm.fmuladd.f64(double %271, double 0x3C9F3FFFFFFFFFFC, double %2081)
  %2083 = tail call double @llvm.fmuladd.f64(double %273, double 0xBC54000000000000, double %2082)
  %2084 = tail call double @llvm.fmuladd.f64(double %275, double 0xBCA27FFFFFFFFFFF, double %2083)
  %2085 = tail call double @llvm.fmuladd.f64(double %277, double 0x3CA9BFFFFFFFFFFF, double %2084)
  %2086 = tail call double @llvm.fmuladd.f64(double %279, double 0xBC9A400000000000, double %2085)
  %2087 = tail call double @llvm.fmuladd.f64(double %281, double 0xBC70000000000001, double %2086)
  %2088 = tail call double @llvm.fmuladd.f64(double %283, double 0xBCA5F7FFFFFFFFFF, double %2087)
  %2089 = tail call double @llvm.fmuladd.f64(double %285, double 0xBC9DAFFFFFFFFFFE, double %2088)
  %2090 = tail call double @llvm.fmuladd.f64(double %287, double 0x3C71FFFFFFFFFFFF, double %2089)
  %2091 = tail call double @llvm.fmuladd.f64(double %289, double 0x3C60000000000000, double %2090)
  %gep8407 = getelementptr double, ptr %invariant.gep8406, i64 %indvars.iv
  %2092 = load double, ptr %gep8407, align 8, !tbaa !5
  %2093 = fadd double %2091, %2092
  store double %2093, ptr %gep8407, align 8, !tbaa !5
  %2094 = fmul double %220, 0xBCA5400000000000
  %2095 = tail call double @llvm.fmuladd.f64(double %219, double 0x3CCCF00000000000, double %2094)
  %2096 = tail call double @llvm.fmuladd.f64(double %223, double 0xBCA30FFFFFFFFFFE, double %2095)
  %2097 = tail call double @llvm.fmuladd.f64(double %225, double 0x3CBC600000000000, double %2096)
  %2098 = tail call double @llvm.fmuladd.f64(double %227, double 0x3C86FFFFFFFFFFFF, double %2097)
  %2099 = tail call double @llvm.fmuladd.f64(double %229, double 0xBC96800000000000, double %2098)
  %2100 = tail call double @llvm.fmuladd.f64(double %231, double 0x3C9A800000000000, double %2099)
  %2101 = tail call double @llvm.fmuladd.f64(double %233, double 0xBC73000000000001, double %2100)
  %2102 = tail call double @llvm.fmuladd.f64(double %235, double 0x3C93800000000000, double %2101)
  %2103 = tail call double @llvm.fmuladd.f64(double %237, double 0x3C40000000000000, double %2102)
  %2104 = tail call double @llvm.fmuladd.f64(double %239, double 0x3C60000000000000, double %2103)
  %2105 = tail call double @llvm.fmuladd.f64(double %241, double 0xBC9A000000000000, double %2104)
  %2106 = tail call double @llvm.fmuladd.f64(double %243, double 0xBC73000000000001, double %2105)
  %2107 = tail call double @llvm.fmuladd.f64(double %245, double 0xBC94400000000000, double %2106)
  %2108 = tail call double @llvm.fmuladd.f64(double %307, double 0x3CA0800000000001, double %2107)
  %2109 = tail call double @llvm.fmuladd.f64(double %247, double 0x3CA1000000000001, double %2108)
  %2110 = tail call double @llvm.fmuladd.f64(double %249, double 0x3C90800000000000, double %2109)
  %2111 = tail call double @llvm.fmuladd.f64(double %251, double 0xBCB5200000000000, double %2110)
  %2112 = tail call double @llvm.fmuladd.f64(double %311, double 0x3CA0000000000002, double %2111)
  %2113 = tail call double @llvm.fmuladd.f64(double %253, double 0x3C84000000000000, double %2112)
  %2114 = tail call double @llvm.fmuladd.f64(double %255, double 0xBFE333710B32A29C, double %2113)
  %2115 = tail call double @llvm.fmuladd.f64(double %257, double 0xBFA352D4DB969BF9, double %2114)
  %2116 = tail call double @llvm.fmuladd.f64(double %259, double 0xBFBEED13A9F0D910, double %2115)
  %2117 = tail call double @llvm.fmuladd.f64(double %261, double 0x3FA87D764354850A, double %2116)
  %2118 = tail call double @llvm.fmuladd.f64(double %318, double 0x3FC27B05E24EC5FB, double %2117)
  %2119 = tail call double @llvm.fmuladd.f64(double %263, double 0x3FF670C5F1F4C929, double %2118)
  %2120 = tail call double @llvm.fmuladd.f64(double %265, double 0xBFD41C0D131D4293, double %2119)
  %2121 = tail call double @llvm.fmuladd.f64(double %267, double 0x3FD35DAE88CBA64F, double %2120)
  %2122 = tail call double @llvm.fmuladd.f64(double %269, double 0x3FC36A9134CD3C5C, double %2121)
  %2123 = tail call double @llvm.fmuladd.f64(double %324, double 0x3F9854E0ADA34BA1, double %2122)
  %2124 = tail call double @llvm.fmuladd.f64(double %271, double 0xBC82000000000000, double %2123)
  %2125 = tail call double @llvm.fmuladd.f64(double %273, double 0xBC67FFFFFFFFFFFE, double %2124)
  %2126 = tail call double @llvm.fmuladd.f64(double %275, double 0x3C9B200000000000, double %2125)
  %2127 = tail call double @llvm.fmuladd.f64(double %277, double 0x3C81C00000000001, double %2126)
  %2128 = tail call double @llvm.fmuladd.f64(double %279, double 0xBC9B000000000000, double %2127)
  %2129 = tail call double @llvm.fmuladd.f64(double %281, double 0xBC95800000000000, double %2128)
  %2130 = tail call double @llvm.fmuladd.f64(double %283, double 0xBCA1E00000000000, double %2129)
  %2131 = tail call double @llvm.fmuladd.f64(double %285, double 0xBC9EBFFFFFFFFFFD, double %2130)
  %2132 = tail call double @llvm.fmuladd.f64(double %287, double 0xBC82000000000000, double %2131)
  %2133 = tail call double @llvm.fmuladd.f64(double %289, double 0xBC9C800000000000, double %2132)
  %gep8409 = getelementptr double, ptr %invariant.gep8408, i64 %indvars.iv
  %2134 = load double, ptr %gep8409, align 8, !tbaa !5
  %2135 = fadd double %2133, %2134
  store double %2135, ptr %gep8409, align 8, !tbaa !5
  %2136 = fmul double %220, 0xBCB5400000000000
  %2137 = tail call double @llvm.fmuladd.f64(double %219, double 0x3CCA200000000000, double %2136)
  %2138 = tail call double @llvm.fmuladd.f64(double %223, double 0xBCA0600000000001, double %2137)
  %2139 = tail call double @llvm.fmuladd.f64(double %225, double 0x3CB23FFFFFFFFFFF, double %2138)
  %2140 = tail call double @llvm.fmuladd.f64(double %227, double 0xBCBE7FFFFFFFFFFF, double %2139)
  %2141 = tail call double @llvm.fmuladd.f64(double %229, double 0x3C95000000000000, double %2140)
  %2142 = tail call double @llvm.fmuladd.f64(double %231, double 0x3C9CC00000000000, double %2141)
  %2143 = tail call double @llvm.fmuladd.f64(double %233, double 0x3CA8200000000001, double %2142)
  %2144 = tail call double @llvm.fmuladd.f64(double %235, double 0x3C9EFFFFFFFFFFFD, double %2143)
  %2145 = tail call double @llvm.fmuladd.f64(double %237, double 0x3CBD400000000001, double %2144)
  %2146 = tail call double @llvm.fmuladd.f64(double %239, double 0x3C70000000000001, double %2145)
  %2147 = tail call double @llvm.fmuladd.f64(double %241, double 0xBC70000000000001, double %2146)
  %2148 = tail call double @llvm.fmuladd.f64(double %243, double 0xBCA5400000000000, double %2147)
  %2149 = tail call double @llvm.fmuladd.f64(double %245, double 0xBCAEC00000000001, double %2148)
  %2150 = tail call double @llvm.fmuladd.f64(double %307, double 0xBC94000000000000, double %2149)
  %2151 = tail call double @llvm.fmuladd.f64(double %247, double 0xBCB7000000000000, double %2150)
  %2152 = tail call double @llvm.fmuladd.f64(double %249, double 0x3CB3800000000000, double %2151)
  %2153 = tail call double @llvm.fmuladd.f64(double %251, double 0xBCB23FFFFFFFFFFF, double %2152)
  %2154 = tail call double @llvm.fmuladd.f64(double %311, double 0x3CC4800000000000, double %2153)
  %2155 = tail call double @llvm.fmuladd.f64(double %253, double 0xBCC6000000000000, double %2154)
  %2156 = tail call double @llvm.fmuladd.f64(double %255, double 0xBFE333710B32A2A0, double %2155)
  %2157 = tail call double @llvm.fmuladd.f64(double %257, double 0x3FA87D7643548526, double %2156)
  %2158 = tail call double @llvm.fmuladd.f64(double %259, double 0xBFBEED13A9F0D8FA, double %2157)
  %2159 = tail call double @llvm.fmuladd.f64(double %261, double 0xBFA352D4DB969C02, double %2158)
  %2160 = tail call double @llvm.fmuladd.f64(double %318, double 0x3FD35DAE88CBA644, double %2159)
  %2161 = tail call double @llvm.fmuladd.f64(double %263, double 0x3FC36A9134CD3C51, double %2160)
  %2162 = tail call double @llvm.fmuladd.f64(double %265, double 0x3F9854E0ADA34AA6, double %2161)
  %2163 = tail call double @llvm.fmuladd.f64(double %267, double 0x3FC27B05E24EC606, double %2162)
  %2164 = tail call double @llvm.fmuladd.f64(double %269, double 0x3FF670C5F1F4C932, double %2163)
  %2165 = tail call double @llvm.fmuladd.f64(double %324, double 0xBFD41C0D131D4281, double %2164)
  %2166 = tail call double @llvm.fmuladd.f64(double %271, double 0x3CB5FFFFFFFFFFFF, double %2165)
  %2167 = tail call double @llvm.fmuladd.f64(double %273, double 0x3CAC000000000000, double %2166)
  %2168 = tail call double @llvm.fmuladd.f64(double %275, double 0x3C91C00000000000, double %2167)
  %2169 = tail call double @llvm.fmuladd.f64(double %277, double 0x3CB0100000000000, double %2168)
  %2170 = tail call double @llvm.fmuladd.f64(double %279, double 0xBCAF000000000001, double %2169)
  %2171 = tail call double @llvm.fmuladd.f64(double %281, double 0x3C9EFFFFFFFFFFFD, double %2170)
  %2172 = tail call double @llvm.fmuladd.f64(double %283, double 0xBC79000000000000, double %2171)
  %2173 = tail call double @llvm.fmuladd.f64(double %285, double 0xBCB4900000000001, double %2172)
  %2174 = tail call double @llvm.fmuladd.f64(double %287, double 0xBCB07FFFFFFFFFFF, double %2173)
  %2175 = tail call double @llvm.fmuladd.f64(double %289, double 0xBCB1000000000001, double %2174)
  %gep8411 = getelementptr double, ptr %invariant.gep8410, i64 %indvars.iv
  %2176 = load double, ptr %gep8411, align 8, !tbaa !5
  %2177 = fadd double %2175, %2176
  store double %2177, ptr %gep8411, align 8, !tbaa !5
  %2178 = tail call double @llvm.fmuladd.f64(double %219, double 0x3CAC000000000000, double %745)
  %2179 = tail call double @llvm.fmuladd.f64(double %223, double 0x3C99000000000000, double %2178)
  %2180 = tail call double @llvm.fmuladd.f64(double %225, double 0xBC92000000000000, double %2179)
  %2181 = tail call double @llvm.fmuladd.f64(double %227, double 0xBCB2000000000000, double %2180)
  %2182 = tail call double @llvm.fmuladd.f64(double %229, double 0x3CB4800000000001, double %2181)
  %2183 = tail call double @llvm.fmuladd.f64(double %231, double 0x3C67FFFFFFFFFFFE, double %2182)
  %2184 = tail call double @llvm.fmuladd.f64(double %233, double 0x3C9C000000000000, double %2183)
  %2185 = tail call double @llvm.fmuladd.f64(double %235, double 0xBCA0000000000002, double %2184)
  %2186 = tail call double @llvm.fmuladd.f64(double %237, double 0x3C98000000000000, double %2185)
  %2187 = tail call double @llvm.fmuladd.f64(double %239, double 0xBCBE000000000000, double %2186)
  %2188 = tail call double @llvm.fmuladd.f64(double %241, double 0x3C7FFFFFFFFFFFFF, double %2187)
  %2189 = tail call double @llvm.fmuladd.f64(double %243, double 0xBCA5000000000000, double %2188)
  %2190 = tail call double @llvm.fmuladd.f64(double %245, double 0xBCAE000000000002, double %2189)
  %2191 = tail call double @llvm.fmuladd.f64(double %247, double 0xBCA8000000000001, double %2190)
  %2192 = tail call double @llvm.fmuladd.f64(double %249, double 0x3CBF000000000001, double %2191)
  %2193 = tail call double @llvm.fmuladd.f64(double %251, double 0xBCB3000000000000, double %2192)
  %2194 = tail call double @llvm.fmuladd.f64(double %311, double 0x3CB3FFFFFFFFFFFF, double %2193)
  %2195 = tail call double @llvm.fmuladd.f64(double %253, double 0xBCA8000000000001, double %2194)
  %2196 = tail call double @llvm.fmuladd.f64(double %255, double 0xBF83152016E0EC70, double %2195)
  %2197 = tail call double @llvm.fmuladd.f64(double %257, double 0x3FF4EC1BB3FDC612, double %2196)
  %2198 = tail call double @llvm.fmuladd.f64(double %259, double 0xBFB5B58B4F03B194, double %2197)
  %2199 = tail call double @llvm.fmuladd.f64(double %261, double 0x3F938CE4890DB2C2, double %2198)
  %2200 = tail call double @llvm.fmuladd.f64(double %318, double 0x3FD417DEBFC17B11, double %2199)
  %2201 = tail call double @llvm.fmuladd.f64(double %263, double 0xBFB49217631F592C, double %2200)
  %2202 = tail call double @llvm.fmuladd.f64(double %265, double 0x3F85E50BB681A317, double %2201)
  %2203 = tail call double @llvm.fmuladd.f64(double %267, double 0xBF8BDAF699AECE56, double %2202)
  %2204 = tail call double @llvm.fmuladd.f64(double %269, double 0x3FCA50C41AB7A31A, double %2203)
  %2205 = tail call double @llvm.fmuladd.f64(double %324, double 0xBFE5679E70A60656, double %2204)
  %2206 = tail call double @llvm.fmuladd.f64(double %271, double 0x3C7FFFFFFFFFFFFF, double %2205)
  %2207 = tail call double @llvm.fmuladd.f64(double %273, double 0x3CAC000000000000, double %2206)
  %2208 = tail call double @llvm.fmuladd.f64(double %275, double 0x3C95000000000000, double %2207)
  %2209 = tail call double @llvm.fmuladd.f64(double %277, double 0x3CB8800000000000, double %2208)
  %2210 = tail call double @llvm.fmuladd.f64(double %279, double 0xBC98000000000000, double %2209)
  %2211 = tail call double @llvm.fmuladd.f64(double %281, double 0xBCA2000000000000, double %2210)
  %2212 = tail call double @llvm.fmuladd.f64(double %283, double 0x3C7C000000000000, double %2211)
  %2213 = tail call double @llvm.fmuladd.f64(double %285, double 0xBCB0400000000000, double %2212)
  %2214 = tail call double @llvm.fmuladd.f64(double %287, double 0x3C98000000000000, double %2213)
  %2215 = tail call double @llvm.fmuladd.f64(double %289, double 0xBC9C000000000000, double %2214)
  %gep8413 = getelementptr double, ptr %invariant.gep8412, i64 %indvars.iv
  %2216 = load double, ptr %gep8413, align 8, !tbaa !5
  %2217 = fadd double %2215, %2216
  store double %2217, ptr %gep8413, align 8, !tbaa !5
  %2218 = fmul double %220, 0x3C6C000000000000
  %2219 = tail call double @llvm.fmuladd.f64(double %219, double 0xBC81000000000000, double %2218)
  %2220 = tail call double @llvm.fmuladd.f64(double %223, double 0xBC68BFFFFFFFFFFD, double %2219)
  %2221 = tail call double @llvm.fmuladd.f64(double %225, double 0x3CB72A0000000001, double %2220)
  %2222 = tail call double @llvm.fmuladd.f64(double %227, double 0x3C90400000000000, double %2221)
  %2223 = tail call double @llvm.fmuladd.f64(double %229, double 0x3C91000000000000, double %2222)
  %2224 = tail call double @llvm.fmuladd.f64(double %231, double 0x3CA9B7FFFFFFFFFF, double %2223)
  %2225 = tail call double @llvm.fmuladd.f64(double %233, double 0x3C73400000000001, double %2224)
  %2226 = tail call double @llvm.fmuladd.f64(double %235, double 0x3C74000000000000, double %2225)
  %2227 = tail call double @llvm.fmuladd.f64(double %237, double 0xBCA5800000000000, double %2226)
  %2228 = tail call double @llvm.fmuladd.f64(double %239, double 0x3C93800000000000, double %2227)
  %2229 = tail call double @llvm.fmuladd.f64(double %241, double 0xBC70000000000001, double %2228)
  %2230 = tail call double @llvm.fmuladd.f64(double %243, double 0xBC93C00000000000, double %2229)
  %2231 = tail call double @llvm.fmuladd.f64(double %245, double 0x3C717FFFFFFFFFFF, double %2230)
  %2232 = tail call double @llvm.fmuladd.f64(double %307, double 0x3C94000000000000, double %2231)
  %2233 = tail call double @llvm.fmuladd.f64(double %247, double 0x3C91800000000000, double %2232)
  %2234 = tail call double @llvm.fmuladd.f64(double %249, double 0x3CABF00000000000, double %2233)
  %2235 = tail call double @llvm.fmuladd.f64(double %251, double 0xBCB08FFFFFFFFFFF, double %2234)
  %2236 = tail call double @llvm.fmuladd.f64(double %311, double 0x3CA0000000000002, double %2235)
  %2237 = tail call double @llvm.fmuladd.f64(double %253, double 0xBC50000000000000, double %2236)
  %2238 = tail call double @llvm.fmuladd.f64(double %255, double 0x3CA63FFFFFFFFFFF, double %2237)
  %2239 = tail call double @llvm.fmuladd.f64(double %257, double 0xBC6C000000000000, double %2238)
  %2240 = tail call double @llvm.fmuladd.f64(double %259, double 0xBC7FFFFFFFFFFFFF, double %2239)
  %2241 = tail call double @llvm.fmuladd.f64(double %261, double 0xBC9CDFFFFFFFFFFF, double %2240)
  %2242 = tail call double @llvm.fmuladd.f64(double %318, double 0x3CA9000000000000, double %2241)
  %2243 = tail call double @llvm.fmuladd.f64(double %263, double 0xBCA3C00000000002, double %2242)
  %2244 = tail call double @llvm.fmuladd.f64(double %265, double 0xBC98200000000000, double %2243)
  %2245 = tail call double @llvm.fmuladd.f64(double %267, double 0xBCA65FFFFFFFFFFF, double %2244)
  %2246 = tail call double @llvm.fmuladd.f64(double %269, double 0x3C93800000000000, double %2245)
  %2247 = tail call double @llvm.fmuladd.f64(double %324, double 0x3C7FFFFFFFFFFFFF, double %2246)
  %2248 = tail call double @llvm.fmuladd.f64(double %271, double 0xBF83152016E0EC5C, double %2247)
  %2249 = tail call double @llvm.fmuladd.f64(double %273, double 0x3F938CE4890DB2DC, double %2248)
  %2250 = tail call double @llvm.fmuladd.f64(double %275, double 0xBFB5B58B4F03B1AA, double %2249)
  %2251 = tail call double @llvm.fmuladd.f64(double %277, double 0x3FF4EC1BB3FDC612, double %2250)
  %2252 = tail call double @llvm.fmuladd.f64(double %279, double 0xBF8BDAF699AECF71, double %2251)
  %2253 = tail call double @llvm.fmuladd.f64(double %281, double 0x3FCA50C41AB7A329, double %2252)
  %2254 = tail call double @llvm.fmuladd.f64(double %283, double 0xBFE5679E70A60655, double %2253)
  %2255 = tail call double @llvm.fmuladd.f64(double %285, double 0x3FD417DEBFC17B1A, double %2254)
  %2256 = tail call double @llvm.fmuladd.f64(double %287, double 0xBFB49217631F5947, double %2255)
  %2257 = tail call double @llvm.fmuladd.f64(double %289, double 0x3F85E50BB681A448, double %2256)
  %gep8415 = getelementptr double, ptr %invariant.gep8414, i64 %indvars.iv
  %2258 = load double, ptr %gep8415, align 8, !tbaa !5
  %2259 = fadd double %2257, %2258
  store double %2259, ptr %gep8415, align 8, !tbaa !5
  %2260 = fmul double %220, 0xBCA5FFFFFFFFFFFF
  %2261 = tail call double @llvm.fmuladd.f64(double %219, double 0x3CB0000000000000, double %2260)
  %2262 = tail call double @llvm.fmuladd.f64(double %223, double 0x3C86C00000000000, double %2261)
  %2263 = tail call double @llvm.fmuladd.f64(double %225, double 0x3CBCAFFFFFFFFFFF, double %2262)
  %2264 = tail call double @llvm.fmuladd.f64(double %227, double 0x3C94400000000000, double %2263)
  %2265 = tail call double @llvm.fmuladd.f64(double %229, double 0xBC9B800000000000, double %2264)
  %2266 = tail call double @llvm.fmuladd.f64(double %231, double 0x3C91800000000000, double %2265)
  %2267 = tail call double @llvm.fmuladd.f64(double %233, double 0xBC71FFFFFFFFFFFF, double %2266)
  %2268 = tail call double @llvm.fmuladd.f64(double %235, double 0x3CA1800000000000, double %2267)
  %2269 = tail call double @llvm.fmuladd.f64(double %237, double 0xBC9C000000000000, double %2268)
  %2270 = tail call double @llvm.fmuladd.f64(double %239, double 0xBC60000000000000, double %2269)
  %2271 = tail call double @llvm.fmuladd.f64(double %241, double 0xBC90000000000000, double %2270)
  %2272 = tail call double @llvm.fmuladd.f64(double %243, double 0xBC7B000000000001, double %2271)
  %2273 = tail call double @llvm.fmuladd.f64(double %245, double 0xBC97800000000000, double %2272)
  %2274 = tail call double @llvm.fmuladd.f64(double %307, double 0xBC7FFFFFFFFFFFFF, double %2273)
  %2275 = tail call double @llvm.fmuladd.f64(double %247, double 0x3C93000000000000, double %2274)
  %2276 = tail call double @llvm.fmuladd.f64(double %249, double 0xBC90000000000000, double %2275)
  %2277 = tail call double @llvm.fmuladd.f64(double %251, double 0xBCB4600000000001, double %2276)
  %2278 = tail call double @llvm.fmuladd.f64(double %311, double 0x3C99000000000000, double %2277)
  %2279 = tail call double @llvm.fmuladd.f64(double %253, double 0x3C9DFFFFFFFFFFFE, double %2278)
  %2280 = tail call double @llvm.fmuladd.f64(double %255, double 0x3CB07FFFFFFFFFFF, double %2279)
  %2281 = tail call double @llvm.fmuladd.f64(double %257, double 0x3C96000000000000, double %2280)
  %2282 = tail call double @llvm.fmuladd.f64(double %259, double 0xBC7E000000000001, double %2281)
  %2283 = tail call double @llvm.fmuladd.f64(double %261, double 0xBCB4F00000000000, double %2282)
  %2284 = tail call double @llvm.fmuladd.f64(double %318, double 0x3CA9FFFFFFFFFFFE, double %2283)
  %2285 = tail call double @llvm.fmuladd.f64(double %263, double 0xBCB9C00000000001, double %2284)
  %2286 = tail call double @llvm.fmuladd.f64(double %265, double 0xBC90800000000000, double %2285)
  %2287 = tail call double @llvm.fmuladd.f64(double %267, double 0x3C8D800000000000, double %2286)
  %2288 = tail call double @llvm.fmuladd.f64(double %269, double 0x3C70000000000001, double %2287)
  %2289 = tail call double @llvm.fmuladd.f64(double %324, double 0xBC78000000000002, double %2288)
  %2290 = tail call double @llvm.fmuladd.f64(double %271, double 0xBFE333710B32A29C, double %2289)
  %2291 = tail call double @llvm.fmuladd.f64(double %273, double 0xBFA352D4DB969C02, double %2290)
  %2292 = tail call double @llvm.fmuladd.f64(double %275, double 0xBFBEED13A9F0D910, double %2291)
  %2293 = tail call double @llvm.fmuladd.f64(double %277, double 0x3FA87D7643548543, double %2292)
  %2294 = tail call double @llvm.fmuladd.f64(double %279, double 0x3FC27B05E24EC5F8, double %2293)
  %2295 = tail call double @llvm.fmuladd.f64(double %281, double 0x3FF670C5F1F4C92E, double %2294)
  %2296 = tail call double @llvm.fmuladd.f64(double %283, double 0xBFD41C0D131D4297, double %2295)
  %2297 = tail call double @llvm.fmuladd.f64(double %285, double 0x3FD35DAE88CBA64D, double %2296)
  %2298 = tail call double @llvm.fmuladd.f64(double %287, double 0x3FC36A9134CD3C5C, double %2297)
  %2299 = tail call double @llvm.fmuladd.f64(double %289, double 0x3F9854E0ADA34BAF, double %2298)
  %gep8417 = getelementptr double, ptr %invariant.gep8416, i64 %indvars.iv
  %2300 = load double, ptr %gep8417, align 8, !tbaa !5
  %2301 = fadd double %2299, %2300
  store double %2301, ptr %gep8417, align 8, !tbaa !5
  %2302 = fmul double %220, 0xBCC0200000000000
  %2303 = tail call double @llvm.fmuladd.f64(double %219, double 0x3CB07FFFFFFFFFFF, double %2302)
  %2304 = tail call double @llvm.fmuladd.f64(double %223, double 0x3C94400000000000, double %2303)
  %2305 = tail call double @llvm.fmuladd.f64(double %225, double 0x3CA0E00000000001, double %2304)
  %2306 = tail call double @llvm.fmuladd.f64(double %227, double 0xBCC0700000000000, double %2305)
  %2307 = tail call double @llvm.fmuladd.f64(double %229, double 0xBC89000000000000, double %2306)
  %2308 = tail call double @llvm.fmuladd.f64(double %231, double 0xBC66000000000000, double %2307)
  %2309 = tail call double @llvm.fmuladd.f64(double %233, double 0x3CA4A00000000001, double %2308)
  %2310 = tail call double @llvm.fmuladd.f64(double %235, double 0x3CB1C00000000000, double %2309)
  %2311 = tail call double @llvm.fmuladd.f64(double %237, double 0x3CBBC00000000001, double %2310)
  %2312 = tail call double @llvm.fmuladd.f64(double %239, double 0xBCC9400000000000, double %2311)
  %2313 = tail call double @llvm.fmuladd.f64(double %241, double 0xBCA5000000000000, double %2312)
  %2314 = tail call double @llvm.fmuladd.f64(double %243, double 0xBCACBFFFFFFFFFFF, double %2313)
  %2315 = tail call double @llvm.fmuladd.f64(double %245, double 0xBC9EFFFFFFFFFFFD, double %2314)
  %2316 = tail call double @llvm.fmuladd.f64(double %307, double 0x3CA2FFFFFFFFFFFE, double %2315)
  %2317 = tail call double @llvm.fmuladd.f64(double %247, double 0xBC7FFFFFFFFFFFFF, double %2316)
  %2318 = tail call double @llvm.fmuladd.f64(double %249, double 0x3CA9000000000000, double %2317)
  %2319 = tail call double @llvm.fmuladd.f64(double %251, double 0xBCAB000000000001, double %2318)
  %2320 = tail call double @llvm.fmuladd.f64(double %311, double 0x3CC5800000000000, double %2319)
  %2321 = tail call double @llvm.fmuladd.f64(double %253, double 0xBCA1000000000001, double %2320)
  %2322 = tail call double @llvm.fmuladd.f64(double %255, double 0x3CBC800000000000, double %2321)
  %2323 = tail call double @llvm.fmuladd.f64(double %257, double 0x3CBA800000000000, double %2322)
  %2324 = tail call double @llvm.fmuladd.f64(double %259, double 0x3CAE800000000001, double %2323)
  %2325 = tail call double @llvm.fmuladd.f64(double %261, double 0xBCBB1FFFFFFFFFFF, double %2324)
  %2326 = tail call double @llvm.fmuladd.f64(double %318, double 0xBCAB000000000001, double %2325)
  %2327 = tail call double @llvm.fmuladd.f64(double %263, double 0xBCA0000000000002, double %2326)
  %2328 = tail call double @llvm.fmuladd.f64(double %265, double 0xBCB4600000000001, double %2327)
  %2329 = tail call double @llvm.fmuladd.f64(double %267, double 0x3CA0000000000002, double %2328)
  %2330 = tail call double @llvm.fmuladd.f64(double %269, double 0x3CA5FFFFFFFFFFFF, double %2329)
  %2331 = tail call double @llvm.fmuladd.f64(double %324, double 0x3CA7000000000002, double %2330)
  %2332 = tail call double @llvm.fmuladd.f64(double %271, double 0xBFE333710B32A296, double %2331)
  %2333 = tail call double @llvm.fmuladd.f64(double %273, double 0x3FA87D764354853C, double %2332)
  %2334 = tail call double @llvm.fmuladd.f64(double %275, double 0xBFBEED13A9F0D910, double %2333)
  %2335 = tail call double @llvm.fmuladd.f64(double %277, double 0xBFA352D4DB969BC4, double %2334)
  %2336 = tail call double @llvm.fmuladd.f64(double %279, double 0x3FD35DAE88CBA648, double %2335)
  %2337 = tail call double @llvm.fmuladd.f64(double %281, double 0x3FC36A9134CD3C4A, double %2336)
  %2338 = tail call double @llvm.fmuladd.f64(double %283, double 0x3F9854E0ADA34B08, double %2337)
  %2339 = tail call double @llvm.fmuladd.f64(double %285, double 0x3FC27B05E24EC5FF, double %2338)
  %2340 = tail call double @llvm.fmuladd.f64(double %287, double 0x3FF670C5F1F4C92E, double %2339)
  %2341 = tail call double @llvm.fmuladd.f64(double %289, double 0xBFD41C0D131D428A, double %2340)
  %gep8419 = getelementptr double, ptr %invariant.gep8418, i64 %indvars.iv
  %2342 = load double, ptr %gep8419, align 8, !tbaa !5
  %2343 = fadd double %2341, %2342
  store double %2343, ptr %gep8419, align 8, !tbaa !5
  %2344 = fmul double %220, 0xBCB07FFFFFFFFFFF
  %2345 = tail call double @llvm.fmuladd.f64(double %219, double 0x3C94000000000000, double %2344)
  %2346 = tail call double @llvm.fmuladd.f64(double %223, double 0x3C92000000000000, double %2345)
  %2347 = tail call double @llvm.fmuladd.f64(double %225, double 0xBC91000000000000, double %2346)
  %2348 = tail call double @llvm.fmuladd.f64(double %227, double 0xBCA4000000000001, double %2347)
  %2349 = tail call double @llvm.fmuladd.f64(double %229, double 0x3C9C000000000000, double %2348)
  %2350 = tail call double @llvm.fmuladd.f64(double %233, double 0x3C91000000000000, double %2349)
  %2351 = tail call double @llvm.fmuladd.f64(double %235, double 0xBCAC000000000000, double %2350)
  %2352 = tail call double @llvm.fmuladd.f64(double %237, double 0x3C88000000000000, double %2351)
  %2353 = tail call double @llvm.fmuladd.f64(double %239, double 0xBCCE000000000000, double %2352)
  %2354 = tail call double @llvm.fmuladd.f64(double %243, double 0xBC9DFFFFFFFFFFFE, double %2353)
  %2355 = tail call double @llvm.fmuladd.f64(double %245, double 0xBCA4000000000001, double %2354)
  %2356 = tail call double @llvm.fmuladd.f64(double %307, double 0xBC90000000000000, double %2355)
  %2357 = tail call double @llvm.fmuladd.f64(double %249, double 0x3CBA000000000000, double %2356)
  %2358 = tail call double @llvm.fmuladd.f64(double %251, double 0xBCA1000000000001, double %2357)
  %2359 = tail call double @llvm.fmuladd.f64(double %311, double 0x3CB0000000000000, double %2358)
  %2360 = tail call double @llvm.fmuladd.f64(double %253, double 0xBCA4000000000001, double %2359)
  %2361 = tail call double @llvm.fmuladd.f64(double %255, double 0x3CB5FFFFFFFFFFFF, double %2360)
  %2362 = tail call double @llvm.fmuladd.f64(double %257, double 0x3CB3FFFFFFFFFFFF, double %2361)
  %2363 = tail call double @llvm.fmuladd.f64(double %259, double 0x3CA67FFFFFFFFFFE, double %2362)
  %2364 = tail call double @llvm.fmuladd.f64(double %261, double 0xBCAB000000000001, double %2363)
  %2365 = tail call double @llvm.fmuladd.f64(double %318, double 0xBC90000000000000, double %2364)
  %2366 = tail call double @llvm.fmuladd.f64(double %263, double 0xBC7FFFFFFFFFFFFF, double %2365)
  %2367 = tail call double @llvm.fmuladd.f64(double %265, double 0xBCB3800000000000, double %2366)
  %2368 = tail call double @llvm.fmuladd.f64(double %267, double 0x3CB1800000000000, double %2367)
  %2369 = tail call double @llvm.fmuladd.f64(double %269, double 0xBCAC000000000000, double %2368)
  %2370 = tail call double @llvm.fmuladd.f64(double %324, double 0x3CA0000000000002, double %2369)
  %2371 = tail call double @llvm.fmuladd.f64(double %271, double 0xBF83152016E0EAC8, double %2370)
  %2372 = tail call double @llvm.fmuladd.f64(double %273, double 0x3FF4EC1BB3FDC612, double %2371)
  %2373 = tail call double @llvm.fmuladd.f64(double %275, double 0xBFB5B58B4F03B1A3, double %2372)
  %2374 = tail call double @llvm.fmuladd.f64(double %277, double 0x3F938CE4890DB32D, double %2373)
  %2375 = tail call double @llvm.fmuladd.f64(double %279, double 0x3FD417DEBFC17B11, double %2374)
  %2376 = tail call double @llvm.fmuladd.f64(double %281, double 0xBFB49217631F593D, double %2375)
  %2377 = tail call double @llvm.fmuladd.f64(double %283, double 0x3F85E50BB681A3B8, double %2376)
  %2378 = tail call double @llvm.fmuladd.f64(double %285, double 0xBF8BDAF699AECFBC, double %2377)
  %2379 = tail call double @llvm.fmuladd.f64(double %287, double 0x3FCA50C41AB7A310, double %2378)
  %2380 = tail call double @llvm.fmuladd.f64(double %289, double 0xBFE5679E70A60657, double %2379)
  %gep8421 = getelementptr double, ptr %invariant.gep8420, i64 %indvars.iv
  %2381 = load double, ptr %gep8421, align 8, !tbaa !5
  %2382 = fadd double %2380, %2381
  store double %2382, ptr %gep8421, align 8, !tbaa !5
  %2383 = fmul double %220, 0x3F938CE4890DB2E5
  %2384 = tail call double @llvm.fmuladd.f64(double %219, double 0xBF83152016E0EC7C, double %2383)
  %2385 = tail call double @llvm.fmuladd.f64(double %223, double 0x3FF4EC1BB3FDC61B, double %2384)
  %2386 = tail call double @llvm.fmuladd.f64(double %225, double 0xBFB5B58B4F03B1AE, double %2385)
  %2387 = tail call double @llvm.fmuladd.f64(double %227, double 0x3FCA50C41AB7A329, double %2386)
  %2388 = tail call double @llvm.fmuladd.f64(double %229, double 0xBF8BDAF699AECFB0, double %2387)
  %2389 = tail call double @llvm.fmuladd.f64(double %231, double 0x3FD417DEBFC17B27, double %2388)
  %2390 = tail call double @llvm.fmuladd.f64(double %233, double 0xBFE5679E70A6066B, double %2389)
  %2391 = tail call double @llvm.fmuladd.f64(double %235, double 0x3F85E50BB681A41A, double %2390)
  %2392 = tail call double @llvm.fmuladd.f64(double %237, double 0xBFB49217631F5949, double %2391)
  %2393 = tail call double @llvm.fmuladd.f64(double %239, double 0x3CB8200000000001, double %2392)
  %2394 = tail call double @llvm.fmuladd.f64(double %241, double 0xBC9C000000000000, double %2393)
  %2395 = tail call double @llvm.fmuladd.f64(double %243, double 0xBC887FFFFFFFFFFF, double %2394)
  %2396 = tail call double @llvm.fmuladd.f64(double %245, double 0xBCA22FFFFFFFFFFF, double %2395)
  %2397 = tail call double @llvm.fmuladd.f64(double %307, double 0xBC84000000000000, double %2396)
  %2398 = tail call double @llvm.fmuladd.f64(double %247, double 0xBCB7E00000000001, double %2397)
  %2399 = tail call double @llvm.fmuladd.f64(double %249, double 0x3CA28FFFFFFFFFFF, double %2398)
  %2400 = tail call double @llvm.fmuladd.f64(double %251, double 0xBC8E800000000001, double %2399)
  %2401 = tail call double @llvm.fmuladd.f64(double %311, double 0x3CA1000000000001, double %2400)
  %2402 = tail call double @llvm.fmuladd.f64(double %253, double 0xBC50000000000000, double %2401)
  %2403 = tail call double @llvm.fmuladd.f64(double %255, double 0xBCA0400000000002, double %2402)
  %2404 = tail call double @llvm.fmuladd.f64(double %257, double 0x3C92800000000000, double %2403)
  %2405 = tail call double @llvm.fmuladd.f64(double %259, double 0xBCAB000000000001, double %2404)
  %2406 = tail call double @llvm.fmuladd.f64(double %261, double 0x3CBB37FFFFFFFFFF, double %2405)
  %2407 = tail call double @llvm.fmuladd.f64(double %318, double 0x3C84000000000000, double %2406)
  %2408 = tail call double @llvm.fmuladd.f64(double %263, double 0x3CA1C00000000000, double %2407)
  %2409 = tail call double @llvm.fmuladd.f64(double %265, double 0x3CA8D00000000000, double %2408)
  %2410 = tail call double @llvm.fmuladd.f64(double %267, double 0xBC9F3FFFFFFFFFFC, double %2409)
  %2411 = tail call double @llvm.fmuladd.f64(double %269, double 0x3C98800000000000, double %2410)
  %2412 = tail call double @llvm.fmuladd.f64(double %324, double 0xBC91000000000000, double %2411)
  %2413 = tail call double @llvm.fmuladd.f64(double %271, double 0xBCB1F00000000000, double %2412)
  %2414 = tail call double @llvm.fmuladd.f64(double %273, double 0x3CA1400000000000, double %2413)
  %2415 = tail call double @llvm.fmuladd.f64(double %275, double 0x3C64800000000000, double %2414)
  %2416 = tail call double @llvm.fmuladd.f64(double %277, double 0x3C9FAFFFFFFFFFFC, double %2415)
  %2417 = tail call double @llvm.fmuladd.f64(double %279, double 0x3CAD7FFFFFFFFFFE, double %2416)
  %2418 = tail call double @llvm.fmuladd.f64(double %281, double 0x3C82000000000000, double %2417)
  %2419 = tail call double @llvm.fmuladd.f64(double %283, double 0x3C96100000000000, double %2418)
  %2420 = tail call double @llvm.fmuladd.f64(double %285, double 0x3C9A700000000000, double %2419)
  %2421 = tail call double @llvm.fmuladd.f64(double %287, double 0xBC7E000000000001, double %2420)
  %2422 = tail call double @llvm.fmuladd.f64(double %289, double 0xBC9BC00000000000, double %2421)
  %gep8423 = getelementptr double, ptr %invariant.gep8422, i64 %indvars.iv
  %2423 = load double, ptr %gep8423, align 8, !tbaa !5
  %2424 = fadd double %2422, %2423
  store double %2424, ptr %gep8423, align 8, !tbaa !5
  %2425 = fmul double %220, 0xBFA352D4DB969C02
  %2426 = tail call double @llvm.fmuladd.f64(double %219, double 0xBFE333710B32A298, double %2425)
  %2427 = tail call double @llvm.fmuladd.f64(double %223, double 0x3FA87D7643548552, double %2426)
  %2428 = tail call double @llvm.fmuladd.f64(double %225, double 0xBFBEED13A9F0D902, double %2427)
  %2429 = tail call double @llvm.fmuladd.f64(double %227, double 0x3FF670C5F1F4C92E, double %2428)
  %2430 = tail call double @llvm.fmuladd.f64(double %229, double 0x3FC27B05E24EC5DB, double %2429)
  %2431 = tail call double @llvm.fmuladd.f64(double %231, double 0x3FD35DAE88CBA644, double %2430)
  %2432 = tail call double @llvm.fmuladd.f64(double %233, double 0xBFD41C0D131D428E, double %2431)
  %2433 = tail call double @llvm.fmuladd.f64(double %235, double 0x3F9854E0ADA34B70, double %2432)
  %2434 = tail call double @llvm.fmuladd.f64(double %237, double 0x3FC36A9134CD3C5F, double %2433)
  %2435 = tail call double @llvm.fmuladd.f64(double %239, double 0x3CBE000000000000, double %2434)
  %2436 = tail call double @llvm.fmuladd.f64(double %241, double 0xBC94000000000000, double %2435)
  %2437 = tail call double @llvm.fmuladd.f64(double %243, double 0x3C9EBFFFFFFFFFFD, double %2436)
  %2438 = tail call double @llvm.fmuladd.f64(double %245, double 0x3C95800000000000, double %2437)
  %2439 = tail call double @llvm.fmuladd.f64(double %307, double 0xBC92000000000000, double %2438)
  %2440 = tail call double @llvm.fmuladd.f64(double %247, double 0xBC74000000000000, double %2439)
  %2441 = tail call double @llvm.fmuladd.f64(double %249, double 0xBCA1800000000000, double %2440)
  %2442 = tail call double @llvm.fmuladd.f64(double %251, double 0xBC93800000000000, double %2441)
  %2443 = tail call double @llvm.fmuladd.f64(double %311, double 0xBC89FFFFFFFFFFFF, double %2442)
  %2444 = tail call double @llvm.fmuladd.f64(double %253, double 0xBC60000000000000, double %2443)
  %2445 = tail call double @llvm.fmuladd.f64(double %255, double 0xBCB5FFFFFFFFFFFF, double %2444)
  %2446 = tail call double @llvm.fmuladd.f64(double %257, double 0xBC94000000000000, double %2445)
  %2447 = tail call double @llvm.fmuladd.f64(double %259, double 0xBCB1200000000001, double %2446)
  %2448 = tail call double @llvm.fmuladd.f64(double %261, double 0x3CB5700000000000, double %2447)
  %2449 = tail call double @llvm.fmuladd.f64(double %318, double 0x3CA9000000000000, double %2448)
  %2450 = tail call double @llvm.fmuladd.f64(double %263, double 0x3CBB3FFFFFFFFFFF, double %2449)
  %2451 = tail call double @llvm.fmuladd.f64(double %265, double 0x3CB1200000000001, double %2450)
  %2452 = tail call double @llvm.fmuladd.f64(double %267, double 0xBC8F7FFFFFFFFFFF, double %2451)
  %2453 = tail call double @llvm.fmuladd.f64(double %269, double 0x3C90000000000000, double %2452)
  %2454 = tail call double @llvm.fmuladd.f64(double %324, double 0x3C60000000000000, double %2453)
  %2455 = tail call double @llvm.fmuladd.f64(double %271, double 0xBCC5D00000000000, double %2454)
  %2456 = tail call double @llvm.fmuladd.f64(double %273, double 0x3C96000000000000, double %2455)
  %2457 = tail call double @llvm.fmuladd.f64(double %275, double 0xBC7F7FFFFFFFFFFF, double %2456)
  %2458 = tail call double @llvm.fmuladd.f64(double %277, double 0xBC7B800000000001, double %2457)
  %2459 = tail call double @llvm.fmuladd.f64(double %279, double 0x3C9A800000000000, double %2458)
  %2460 = tail call double @llvm.fmuladd.f64(double %281, double 0xBC8B000000000000, double %2459)
  %2461 = tail call double @llvm.fmuladd.f64(double %283, double 0x3CAC200000000000, double %2460)
  %2462 = tail call double @llvm.fmuladd.f64(double %285, double 0x3CB0100000000000, double %2461)
  %2463 = tail call double @llvm.fmuladd.f64(double %287, double 0x3C7C000000000000, double %2462)
  %2464 = tail call double @llvm.fmuladd.f64(double %289, double 0xBC64000000000000, double %2463)
  %gep8425 = getelementptr double, ptr %invariant.gep8424, i64 %indvars.iv
  %2465 = load double, ptr %gep8425, align 8, !tbaa !5
  %2466 = fadd double %2464, %2465
  store double %2466, ptr %gep8425, align 8, !tbaa !5
  %2467 = fmul double %220, 0x3FA87D764354852C
  %2468 = tail call double @llvm.fmuladd.f64(double %219, double 0xBFE333710B32A29C, double %2467)
  %2469 = tail call double @llvm.fmuladd.f64(double %223, double 0xBFA352D4DB969BDD, double %2468)
  %2470 = tail call double @llvm.fmuladd.f64(double %225, double 0xBFBEED13A9F0D917, double %2469)
  %2471 = tail call double @llvm.fmuladd.f64(double %227, double 0x3FC36A9134CD3C6E, double %2470)
  %2472 = tail call double @llvm.fmuladd.f64(double %229, double 0x3FD35DAE88CBA63D, double %2471)
  %2473 = tail call double @llvm.fmuladd.f64(double %231, double 0x3FC27B05E24EC5ED, double %2472)
  %2474 = tail call double @llvm.fmuladd.f64(double %233, double 0x3F9854E0ADA34B6D, double %2473)
  %2475 = tail call double @llvm.fmuladd.f64(double %235, double 0xBFD41C0D131D428A, double %2474)
  %2476 = tail call double @llvm.fmuladd.f64(double %237, double 0x3FF670C5F1F4C92E, double %2475)
  %2477 = tail call double @llvm.fmuladd.f64(double %239, double 0x3CB07FFFFFFFFFFF, double %2476)
  %2478 = tail call double @llvm.fmuladd.f64(double %241, double 0x3C84000000000000, double %2477)
  %2479 = tail call double @llvm.fmuladd.f64(double %243, double 0x3CA1C00000000000, double %2478)
  %2480 = tail call double @llvm.fmuladd.f64(double %245, double 0x3C8E000000000000, double %2479)
  %2481 = tail call double @llvm.fmuladd.f64(double %307, double 0xBCA5000000000000, double %2480)
  %2482 = tail call double @llvm.fmuladd.f64(double %247, double 0x3C88000000000000, double %2481)
  %2483 = tail call double @llvm.fmuladd.f64(double %249, double 0xBC91000000000000, double %2482)
  %2484 = tail call double @llvm.fmuladd.f64(double %251, double 0xBC9DFFFFFFFFFFFE, double %2483)
  %2485 = tail call double @llvm.fmuladd.f64(double %311, double 0xBCA9FFFFFFFFFFFE, double %2484)
  %2486 = tail call double @llvm.fmuladd.f64(double %253, double 0x3C92000000000000, double %2485)
  %2487 = tail call double @llvm.fmuladd.f64(double %255, double 0x3C96000000000000, double %2486)
  %2488 = tail call double @llvm.fmuladd.f64(double %257, double 0xBCA5000000000000, double %2487)
  %2489 = tail call double @llvm.fmuladd.f64(double %259, double 0xBCAB800000000001, double %2488)
  %2490 = tail call double @llvm.fmuladd.f64(double %261, double 0x3CB09FFFFFFFFFFF, double %2489)
  %2491 = tail call double @llvm.fmuladd.f64(double %318, double 0xBC78000000000002, double %2490)
  %2492 = tail call double @llvm.fmuladd.f64(double %263, double 0x3CB0000000000000, double %2491)
  %2493 = tail call double @llvm.fmuladd.f64(double %265, double 0x3C8D000000000001, double %2492)
  %2494 = tail call double @llvm.fmuladd.f64(double %267, double 0x3C60000000000000, double %2493)
  %2495 = tail call double @llvm.fmuladd.f64(double %269, double 0xBC9C000000000000, double %2494)
  %2496 = tail call double @llvm.fmuladd.f64(double %324, double 0x3C9DFFFFFFFFFFFE, double %2495)
  %2497 = tail call double @llvm.fmuladd.f64(double %271, double 0xBCBA800000000000, double %2496)
  %2498 = tail call double @llvm.fmuladd.f64(double %273, double 0xBC84000000000000, double %2497)
  %2499 = tail call double @llvm.fmuladd.f64(double %275, double 0x3C62000000000000, double %2498)
  %2500 = tail call double @llvm.fmuladd.f64(double %277, double 0x3C7E800000000001, double %2499)
  %2501 = tail call double @llvm.fmuladd.f64(double %279, double 0x3CA0C00000000001, double %2500)
  %2502 = tail call double @llvm.fmuladd.f64(double %281, double 0x3C6C000000000000, double %2501)
  %2503 = tail call double @llvm.fmuladd.f64(double %283, double 0x3C71000000000000, double %2502)
  %2504 = tail call double @llvm.fmuladd.f64(double %285, double 0x3C91C00000000000, double %2503)
  %2505 = tail call double @llvm.fmuladd.f64(double %289, double 0x3C9A000000000000, double %2504)
  %gep8427 = getelementptr double, ptr %invariant.gep8426, i64 %indvars.iv
  %2506 = load double, ptr %gep8427, align 8, !tbaa !5
  %2507 = fadd double %2505, %2506
  store double %2507, ptr %gep8427, align 8, !tbaa !5
  %2508 = tail call double @llvm.fmuladd.f64(double %219, double 0xBF83152016E0EB78, double %1844)
  %2509 = tail call double @llvm.fmuladd.f64(double %223, double 0x3F938CE4890DB341, double %2508)
  %2510 = tail call double @llvm.fmuladd.f64(double %225, double 0xBFB5B58B4F03B1B9, double %2509)
  %2511 = tail call double @llvm.fmuladd.f64(double %227, double 0xBFB49217631F592E, double %2510)
  %2512 = tail call double @llvm.fmuladd.f64(double %229, double 0x3FD417DEBFC17B18, double %2511)
  %2513 = tail call double @llvm.fmuladd.f64(double %231, double 0xBF8BDAF699AECFD9, double %2512)
  %2514 = tail call double @llvm.fmuladd.f64(double %233, double 0x3F85E50BB681A3A1, double %2513)
  %2515 = tail call double @llvm.fmuladd.f64(double %235, double 0xBFE5679E70A6065C, double %2514)
  %2516 = tail call double @llvm.fmuladd.f64(double %237, double 0x3FCA50C41AB7A32C, double %2515)
  %2517 = tail call double @llvm.fmuladd.f64(double %239, double 0xBCAC000000000000, double %2516)
  %2518 = tail call double @llvm.fmuladd.f64(double %241, double 0x3C90000000000000, double %2517)
  %2519 = tail call double @llvm.fmuladd.f64(double %243, double 0x3C70000000000001, double %2518)
  %2520 = tail call double @llvm.fmuladd.f64(double %245, double 0xBC86000000000001, double %2519)
  %2521 = tail call double @llvm.fmuladd.f64(double %307, double 0xBCAC000000000000, double %2520)
  %2522 = tail call double @llvm.fmuladd.f64(double %249, double 0x3CAC000000000000, double %2521)
  %2523 = tail call double @llvm.fmuladd.f64(double %251, double 0xBC60000000000000, double %2522)
  %2524 = tail call double @llvm.fmuladd.f64(double %311, double 0xBC90000000000000, double %2523)
  %2525 = tail call double @llvm.fmuladd.f64(double %253, double 0xBC98000000000000, double %2524)
  %2526 = tail call double @llvm.fmuladd.f64(double %255, double 0xBC98000000000000, double %2525)
  %2527 = tail call double @llvm.fmuladd.f64(double %257, double 0x3CA0000000000002, double %2526)
  %2528 = tail call double @llvm.fmuladd.f64(double %259, double 0x3C7FFFFFFFFFFFFF, double %2527)
  %2529 = tail call double @llvm.fmuladd.f64(double %261, double 0x3C74000000000000, double %2528)
  %2530 = tail call double @llvm.fmuladd.f64(double %318, double 0xBCA5FFFFFFFFFFFF, double %2529)
  %2531 = tail call double @llvm.fmuladd.f64(double %263, double 0x3C94000000000000, double %2530)
  %2532 = tail call double @llvm.fmuladd.f64(double %265, double 0xBC84000000000000, double %2531)
  %2533 = tail call double @llvm.fmuladd.f64(double %267, double 0x3CB4800000000001, double %2532)
  %2534 = tail call double @llvm.fmuladd.f64(double %269, double 0xBCA0000000000002, double %2533)
  %2535 = tail call double @llvm.fmuladd.f64(double %324, double 0x3C90000000000000, double %2534)
  %2536 = tail call double @llvm.fmuladd.f64(double %271, double 0xBC94000000000000, double %2535)
  %2537 = tail call double @llvm.fmuladd.f64(double %273, double 0xBC94000000000000, double %2536)
  %2538 = tail call double @llvm.fmuladd.f64(double %275, double 0x3C92000000000000, double %2537)
  %2539 = tail call double @llvm.fmuladd.f64(double %277, double 0x3CA2000000000000, double %2538)
  %2540 = tail call double @llvm.fmuladd.f64(double %279, double 0xBC98000000000000, double %2539)
  %2541 = tail call double @llvm.fmuladd.f64(double %281, double 0xBC7FFFFFFFFFFFFF, double %2540)
  %2542 = tail call double @llvm.fmuladd.f64(double %283, double 0x3C74000000000000, double %2541)
  %2543 = tail call double @llvm.fmuladd.f64(double %285, double 0xBC84000000000000, double %2542)
  %2544 = tail call double @llvm.fmuladd.f64(double %287, double 0x3C7FFFFFFFFFFFFF, double %2543)
  %2545 = tail call double @llvm.fmuladd.f64(double %289, double 0xBC88000000000000, double %2544)
  %gep8429 = getelementptr double, ptr %invariant.gep8428, i64 %indvars.iv
  %2546 = load double, ptr %gep8429, align 8, !tbaa !5
  %2547 = fadd double %2545, %2546
  store double %2547, ptr %gep8429, align 8, !tbaa !5
  %2548 = fmul double %220, 0xBCAD3FFFFFFFFFFF
  %2549 = tail call double @llvm.fmuladd.f64(double %219, double 0xBCCAC00000000000, double %2548)
  %2550 = tail call double @llvm.fmuladd.f64(double %223, double 0x3CC4880000000000, double %2549)
  %2551 = tail call double @llvm.fmuladd.f64(double %225, double 0xBC9C000000000000, double %2550)
  %2552 = tail call double @llvm.fmuladd.f64(double %227, double 0x3CA7200000000002, double %2551)
  %2553 = tail call double @llvm.fmuladd.f64(double %229, double 0xBC89FFFFFFFFFFFF, double %2552)
  %2554 = tail call double @llvm.fmuladd.f64(double %231, double 0xBC9A500000000000, double %2553)
  %2555 = tail call double @llvm.fmuladd.f64(double %233, double 0x3C8BA00000000001, double %2554)
  %2556 = tail call double @llvm.fmuladd.f64(double %235, double 0xBC9C800000000000, double %2555)
  %2557 = tail call double @llvm.fmuladd.f64(double %237, double 0xBC70000000000001, double %2556)
  %2558 = tail call double @llvm.fmuladd.f64(double %239, double 0xBF83152016E0EA5E, double %2557)
  %2559 = tail call double @llvm.fmuladd.f64(double %241, double 0x3F938CE4890DB33B, double %2558)
  %2560 = tail call double @llvm.fmuladd.f64(double %243, double 0x3FF4EC1BB3FDC61B, double %2559)
  %2561 = tail call double @llvm.fmuladd.f64(double %245, double 0xBFB5B58B4F03B1B6, double %2560)
  %2562 = tail call double @llvm.fmuladd.f64(double %307, double 0x3FCA50C41AB7A310, double %2561)
  %2563 = tail call double @llvm.fmuladd.f64(double %247, double 0xBF8BDAF699AED080, double %2562)
  %2564 = tail call double @llvm.fmuladd.f64(double %249, double 0x3FD417DEBFC17B27, double %2563)
  %2565 = tail call double @llvm.fmuladd.f64(double %251, double 0xBFE5679E70A60666, double %2564)
  %2566 = tail call double @llvm.fmuladd.f64(double %311, double 0x3F85E50BB681A420, double %2565)
  %2567 = tail call double @llvm.fmuladd.f64(double %253, double 0xBFB49217631F5956, double %2566)
  %2568 = tail call double @llvm.fmuladd.f64(double %255, double 0xBCBE400000000000, double %2567)
  %2569 = tail call double @llvm.fmuladd.f64(double %257, double 0xBCA63FFFFFFFFFFF, double %2568)
  %2570 = tail call double @llvm.fmuladd.f64(double %259, double 0xBC98C00000000000, double %2569)
  %2571 = tail call double @llvm.fmuladd.f64(double %261, double 0x3CBF080000000001, double %2570)
  %2572 = tail call double @llvm.fmuladd.f64(double %318, double 0x3CC1A00000000000, double %2571)
  %2573 = tail call double @llvm.fmuladd.f64(double %263, double 0x3C96800000000000, double %2572)
  %2574 = tail call double @llvm.fmuladd.f64(double %265, double 0x3C8C000000000000, double %2573)
  %2575 = tail call double @llvm.fmuladd.f64(double %267, double 0xBCC6880000000000, double %2574)
  %2576 = tail call double @llvm.fmuladd.f64(double %269, double 0x3C9EFFFFFFFFFFFD, double %2575)
  %2577 = tail call double @llvm.fmuladd.f64(double %324, double 0xBC70000000000001, double %2576)
  %2578 = tail call double @llvm.fmuladd.f64(double %271, double 0xBCBEF00000000001, double %2577)
  %2579 = tail call double @llvm.fmuladd.f64(double %273, double 0x3C96C00000000000, double %2578)
  %2580 = tail call double @llvm.fmuladd.f64(double %275, double 0xBC82000000000000, double %2579)
  %2581 = tail call double @llvm.fmuladd.f64(double %277, double 0xBCABC00000000001, double %2580)
  %2582 = tail call double @llvm.fmuladd.f64(double %279, double 0xBC76FFFFFFFFFFFF, double %2581)
  %2583 = tail call double @llvm.fmuladd.f64(double %281, double 0x3CA8000000000001, double %2582)
  %2584 = tail call double @llvm.fmuladd.f64(double %283, double 0x3C91B00000000000, double %2583)
  %2585 = tail call double @llvm.fmuladd.f64(double %285, double 0x3CB1FC0000000000, double %2584)
  %2586 = tail call double @llvm.fmuladd.f64(double %287, double 0xBC99800000000000, double %2585)
  %2587 = tail call double @llvm.fmuladd.f64(double %289, double 0xBC93000000000000, double %2586)
  %gep8431 = getelementptr double, ptr %invariant.gep8430, i64 %indvars.iv
  %2588 = load double, ptr %gep8431, align 8, !tbaa !5
  %2589 = fadd double %2587, %2588
  store double %2589, ptr %gep8431, align 8, !tbaa !5
  %2590 = fmul double %220, 0xBC96800000000000
  %2591 = tail call double @llvm.fmuladd.f64(double %219, double 0xBCB1200000000001, double %2590)
  %2592 = tail call double @llvm.fmuladd.f64(double %223, double 0x3CB7080000000000, double %2591)
  %2593 = tail call double @llvm.fmuladd.f64(double %225, double 0xBCBE9FFFFFFFFFFF, double %2592)
  %2594 = tail call double @llvm.fmuladd.f64(double %227, double 0xBCB2A00000000001, double %2593)
  %2595 = tail call double @llvm.fmuladd.f64(double %229, double 0xBCADBFFFFFFFFFFE, double %2594)
  %2596 = tail call double @llvm.fmuladd.f64(double %231, double 0x3CA9BFFFFFFFFFFF, double %2595)
  %2597 = tail call double @llvm.fmuladd.f64(double %233, double 0x3C8C800000000000, double %2596)
  %2598 = tail call double @llvm.fmuladd.f64(double %235, double 0xBCA8C00000000000, double %2597)
  %2599 = tail call double @llvm.fmuladd.f64(double %237, double 0xBC85000000000000, double %2598)
  %2600 = tail call double @llvm.fmuladd.f64(double %239, double 0xBFE333710B32A298, double %2599)
  %2601 = tail call double @llvm.fmuladd.f64(double %241, double 0xBFA352D4DB969BFB, double %2600)
  %2602 = tail call double @llvm.fmuladd.f64(double %243, double 0x3FA87D7643548531, double %2601)
  %2603 = tail call double @llvm.fmuladd.f64(double %245, double 0xBFBEED13A9F0D8FA, double %2602)
  %2604 = tail call double @llvm.fmuladd.f64(double %307, double 0x3FF670C5F1F4C92E, double %2603)
  %2605 = tail call double @llvm.fmuladd.f64(double %247, double 0x3FC27B05E24EC5DE, double %2604)
  %2606 = tail call double @llvm.fmuladd.f64(double %249, double 0x3FD35DAE88CBA641, double %2605)
  %2607 = tail call double @llvm.fmuladd.f64(double %251, double 0xBFD41C0D131D4286, double %2606)
  %2608 = tail call double @llvm.fmuladd.f64(double %311, double 0x3F9854E0ADA34B73, double %2607)
  %2609 = tail call double @llvm.fmuladd.f64(double %253, double 0x3FC36A9134CD3C63, double %2608)
  %2610 = tail call double @llvm.fmuladd.f64(double %255, double 0x3CA8000000000001, double %2609)
  %2611 = tail call double @llvm.fmuladd.f64(double %257, double 0xBC93000000000000, double %2610)
  %2612 = tail call double @llvm.fmuladd.f64(double %259, double 0x3C66000000000000, double %2611)
  %2613 = tail call double @llvm.fmuladd.f64(double %261, double 0x3CBAB00000000000, double %2612)
  %2614 = tail call double @llvm.fmuladd.f64(double %318, double 0x3CA4800000000001, double %2613)
  %2615 = tail call double @llvm.fmuladd.f64(double %263, double 0x3CBC800000000000, double %2614)
  %2616 = tail call double @llvm.fmuladd.f64(double %265, double 0x3CAB400000000001, double %2615)
  %2617 = tail call double @llvm.fmuladd.f64(double %267, double 0xBCC0400000000000, double %2616)
  %2618 = tail call double @llvm.fmuladd.f64(double %269, double 0x3C9DFFFFFFFFFFFE, double %2617)
  %2619 = tail call double @llvm.fmuladd.f64(double %324, double 0xBCAE000000000002, double %2618)
  %2620 = tail call double @llvm.fmuladd.f64(double %271, double 0xBCD4500000000002, double %2619)
  %2621 = tail call double @llvm.fmuladd.f64(double %273, double 0x3C9A000000000000, double %2620)
  %2622 = tail call double @llvm.fmuladd.f64(double %275, double 0x3C777FFFFFFFFFFF, double %2621)
  %2623 = tail call double @llvm.fmuladd.f64(double %277, double 0xBCA66FFFFFFFFFFF, double %2622)
  %2624 = tail call double @llvm.fmuladd.f64(double %279, double 0xBC89FFFFFFFFFFFF, double %2623)
  %2625 = tail call double @llvm.fmuladd.f64(double %281, double 0x3C9F7FFFFFFFFFFC, double %2624)
  %2626 = tail call double @llvm.fmuladd.f64(double %283, double 0xBC9EBFFFFFFFFFFD, double %2625)
  %2627 = tail call double @llvm.fmuladd.f64(double %285, double 0x3CB6900000000000, double %2626)
  %2628 = tail call double @llvm.fmuladd.f64(double %287, double 0x3C8C000000000000, double %2627)
  %2629 = tail call double @llvm.fmuladd.f64(double %289, double 0x3C64000000000000, double %2628)
  %gep8433 = getelementptr double, ptr %invariant.gep8432, i64 %indvars.iv
  %2630 = load double, ptr %gep8433, align 8, !tbaa !5
  %2631 = fadd double %2629, %2630
  store double %2631, ptr %gep8433, align 8, !tbaa !5
  %2632 = fmul double %220, 0x3C86000000000001
  %2633 = tail call double @llvm.fmuladd.f64(double %219, double 0x3C93000000000000, double %2632)
  %2634 = tail call double @llvm.fmuladd.f64(double %223, double 0x3CB92FFFFFFFFFFF, double %2633)
  %2635 = tail call double @llvm.fmuladd.f64(double %225, double 0xBCCAE00000000001, double %2634)
  %2636 = tail call double @llvm.fmuladd.f64(double %227, double 0x3CB5000000000000, double %2635)
  %2637 = tail call double @llvm.fmuladd.f64(double %229, double 0x3C50000000000000, double %2636)
  %2638 = tail call double @llvm.fmuladd.f64(double %231, double 0x3CAF200000000001, double %2637)
  %2639 = tail call double @llvm.fmuladd.f64(double %233, double 0xBCA1200000000001, double %2638)
  %2640 = tail call double @llvm.fmuladd.f64(double %235, double 0xBC89FFFFFFFFFFFF, double %2639)
  %2641 = tail call double @llvm.fmuladd.f64(double %237, double 0xBCB0400000000000, double %2640)
  %2642 = tail call double @llvm.fmuladd.f64(double %239, double 0xBFE333710B32A29D, double %2641)
  %2643 = tail call double @llvm.fmuladd.f64(double %241, double 0x3FA87D7643548512, double %2642)
  %2644 = tail call double @llvm.fmuladd.f64(double %243, double 0xBFA352D4DB969C06, double %2643)
  %2645 = tail call double @llvm.fmuladd.f64(double %245, double 0xBFBEED13A9F0D8F3, double %2644)
  %2646 = tail call double @llvm.fmuladd.f64(double %307, double 0x3FC36A9134CD3C66, double %2645)
  %2647 = tail call double @llvm.fmuladd.f64(double %247, double 0x3FD35DAE88CBA63D, double %2646)
  %2648 = tail call double @llvm.fmuladd.f64(double %249, double 0x3FC27B05E24EC5ED, double %2647)
  %2649 = tail call double @llvm.fmuladd.f64(double %251, double 0x3F9854E0ADA34B73, double %2648)
  %2650 = tail call double @llvm.fmuladd.f64(double %311, double 0xBFD41C0D131D4293, double %2649)
  %2651 = tail call double @llvm.fmuladd.f64(double %253, double 0x3FF670C5F1F4C932, double %2650)
  %2652 = tail call double @llvm.fmuladd.f64(double %255, double 0x3CC9800000000000, double %2651)
  %2653 = tail call double @llvm.fmuladd.f64(double %257, double 0x3C90000000000000, double %2652)
  %2654 = tail call double @llvm.fmuladd.f64(double %259, double 0xBC64000000000000, double %2653)
  %2655 = tail call double @llvm.fmuladd.f64(double %261, double 0x3CA0800000000001, double %2654)
  %2656 = tail call double @llvm.fmuladd.f64(double %318, double 0xBCA0000000000002, double %2655)
  %2657 = tail call double @llvm.fmuladd.f64(double %263, double 0x3CA8000000000001, double %2656)
  %2658 = tail call double @llvm.fmuladd.f64(double %265, double 0xBC7FFFFFFFFFFFFF, double %2657)
  %2659 = tail call double @llvm.fmuladd.f64(double %267, double 0xBCAB000000000001, double %2658)
  %2660 = tail call double @llvm.fmuladd.f64(double %269, double 0x3CB9000000000000, double %2659)
  %2661 = tail call double @llvm.fmuladd.f64(double %324, double 0xBCB9000000000000, double %2660)
  %2662 = tail call double @llvm.fmuladd.f64(double %271, double 0xBC92000000000000, double %2661)
  %2663 = tail call double @llvm.fmuladd.f64(double %275, double 0x3C9F3FFFFFFFFFFC, double %2662)
  %2664 = tail call double @llvm.fmuladd.f64(double %277, double 0x3C9AC00000000000, double %2663)
  %2665 = tail call double @llvm.fmuladd.f64(double %279, double 0xBC8C000000000000, double %2664)
  %2666 = tail call double @llvm.fmuladd.f64(double %281, double 0xBC89FFFFFFFFFFFF, double %2665)
  %2667 = tail call double @llvm.fmuladd.f64(double %283, double 0xBCA65FFFFFFFFFFF, double %2666)
  %2668 = tail call double @llvm.fmuladd.f64(double %285, double 0x3CB9100000000000, double %2667)
  %2669 = tail call double @llvm.fmuladd.f64(double %287, double 0x3C7FFFFFFFFFFFFF, double %2668)
  %2670 = tail call double @llvm.fmuladd.f64(double %289, double 0x3C8C000000000000, double %2669)
  %gep8435 = getelementptr double, ptr %invariant.gep8434, i64 %indvars.iv
  %2671 = load double, ptr %gep8435, align 8, !tbaa !5
  %2672 = fadd double %2670, %2671
  store double %2672, ptr %gep8435, align 8, !tbaa !5
  %2673 = fmul double %220, 0xBC94000000000000
  %2674 = tail call double @llvm.fmuladd.f64(double %219, double 0x3CAE000000000002, double %2673)
  %2675 = tail call double @llvm.fmuladd.f64(double %223, double 0x3CB3000000000000, double %2674)
  %2676 = tail call double @llvm.fmuladd.f64(double %225, double 0xBCB0400000000000, double %2675)
  %2677 = tail call double @llvm.fmuladd.f64(double %227, double 0x3CA8000000000001, double %2676)
  %2678 = tail call double @llvm.fmuladd.f64(double %229, double 0x3CACFFFFFFFFFFFF, double %2677)
  %2679 = tail call double @llvm.fmuladd.f64(double %231, double 0x3C9CFFFFFFFFFFFF, double %2678)
  %2680 = tail call double @llvm.fmuladd.f64(double %233, double 0xBC70000000000001, double %2679)
  %2681 = tail call double @llvm.fmuladd.f64(double %235, double 0xBC98000000000000, double %2680)
  %2682 = tail call double @llvm.fmuladd.f64(double %237, double 0xBCB3FFFFFFFFFFFF, double %2681)
  %2683 = tail call double @llvm.fmuladd.f64(double %239, double 0xBF83152016E0EC70, double %2682)
  %2684 = tail call double @llvm.fmuladd.f64(double %241, double 0x3FF4EC1BB3FDC612, double %2683)
  %2685 = tail call double @llvm.fmuladd.f64(double %243, double 0x3F938CE4890DB2E5, double %2684)
  %2686 = tail call double @llvm.fmuladd.f64(double %245, double 0xBFB5B58B4F03B1B0, double %2685)
  %2687 = tail call double @llvm.fmuladd.f64(double %307, double 0xBFB49217631F5930, double %2686)
  %2688 = tail call double @llvm.fmuladd.f64(double %247, double 0x3FD417DEBFC17B18, double %2687)
  %2689 = tail call double @llvm.fmuladd.f64(double %249, double 0xBF8BDAF699AECF31, double %2688)
  %2690 = tail call double @llvm.fmuladd.f64(double %251, double 0x3F85E50BB681A306, double %2689)
  %2691 = tail call double @llvm.fmuladd.f64(double %311, double 0xBFE5679E70A6065E, double %2690)
  %2692 = tail call double @llvm.fmuladd.f64(double %253, double 0x3FCA50C41AB7A334, double %2691)
  %2693 = tail call double @llvm.fmuladd.f64(double %259, double 0x3C9DFFFFFFFFFFFE, double %2692)
  %2694 = tail call double @llvm.fmuladd.f64(double %318, double 0xBCBC000000000000, double %2693)
  %2695 = tail call double @llvm.fmuladd.f64(double %263, double 0x3CB2000000000000, double %2694)
  %2696 = tail call double @llvm.fmuladd.f64(double %265, double 0xBC88000000000000, double %2695)
  %2697 = tail call double @llvm.fmuladd.f64(double %267, double 0x3CBC000000000000, double %2696)
  %2698 = tail call double @llvm.fmuladd.f64(double %269, double 0x3CB3FFFFFFFFFFFF, double %2697)
  %2699 = tail call double @llvm.fmuladd.f64(double %324, double 0xBC90000000000000, double %2698)
  %2700 = tail call double @llvm.fmuladd.f64(double %271, double 0x3C88000000000000, double %2699)
  %2701 = tail call double @llvm.fmuladd.f64(double %273, double 0x3CB3FFFFFFFFFFFF, double %2700)
  %2702 = tail call double @llvm.fmuladd.f64(double %275, double 0x3CA1800000000000, double %2701)
  %2703 = tail call double @llvm.fmuladd.f64(double %277, double 0x3C84000000000000, double %2702)
  %2704 = tail call double @llvm.fmuladd.f64(double %279, double 0xBCA5000000000000, double %2703)
  %2705 = tail call double @llvm.fmuladd.f64(double %281, double 0xBC84000000000000, double %2704)
  %2706 = tail call double @llvm.fmuladd.f64(double %283, double 0xBC9B000000000000, double %2705)
  %2707 = tail call double @llvm.fmuladd.f64(double %285, double 0xBC67FFFFFFFFFFFE, double %2706)
  %2708 = tail call double @llvm.fmuladd.f64(double %287, double 0x3CB1000000000001, double %2707)
  %2709 = tail call double @llvm.fmuladd.f64(double %289, double 0x3C9C000000000000, double %2708)
  %gep8437 = getelementptr double, ptr %invariant.gep8436, i64 %indvars.iv
  %2710 = load double, ptr %gep8437, align 8, !tbaa !5
  %2711 = fadd double %2709, %2710
  store double %2711, ptr %gep8437, align 8, !tbaa !5
  %2712 = fmul double %220, 0xBCA1800000000000
  %2713 = tail call double @llvm.fmuladd.f64(double %219, double 0xBCCEC00000000000, double %2712)
  %2714 = tail call double @llvm.fmuladd.f64(double %223, double 0x3CBEF00000000001, double %2713)
  %2715 = tail call double @llvm.fmuladd.f64(double %225, double 0xBCA4000000000001, double %2714)
  %2716 = tail call double @llvm.fmuladd.f64(double %227, double 0xBC8C800000000000, double %2715)
  %2717 = tail call double @llvm.fmuladd.f64(double %229, double 0xBCA1800000000000, double %2716)
  %2718 = tail call double @llvm.fmuladd.f64(double %231, double 0x3C8CA00000000000, double %2717)
  %2719 = tail call double @llvm.fmuladd.f64(double %233, double 0x3C61800000000000, double %2718)
  %2720 = tail call double @llvm.fmuladd.f64(double %235, double 0xBCA1C00000000000, double %2719)
  %2721 = tail call double @llvm.fmuladd.f64(double %237, double 0xBC70000000000001, double %2720)
  %2722 = tail call double @llvm.fmuladd.f64(double %239, double 0x3CC3E00000000000, double %2721)
  %2723 = tail call double @llvm.fmuladd.f64(double %241, double 0x3CA0000000000002, double %2722)
  %2724 = tail call double @llvm.fmuladd.f64(double %243, double 0x3CB937FFFFFFFFFF, double %2723)
  %2725 = tail call double @llvm.fmuladd.f64(double %245, double 0xBCA4B00000000001, double %2724)
  %2726 = tail call double @llvm.fmuladd.f64(double %307, double 0xBCBAC00000000000, double %2725)
  %2727 = tail call double @llvm.fmuladd.f64(double %247, double 0xBCA3C00000000002, double %2726)
  %2728 = tail call double @llvm.fmuladd.f64(double %249, double 0x3C9C400000000000, double %2727)
  %2729 = tail call double @llvm.fmuladd.f64(double %251, double 0x3CBB800000000001, double %2728)
  %2730 = tail call double @llvm.fmuladd.f64(double %311, double 0xBC74000000000000, double %2729)
  %2731 = tail call double @llvm.fmuladd.f64(double %253, double 0xBC9A000000000000, double %2730)
  %2732 = tail call double @llvm.fmuladd.f64(double %255, double 0xBF83152016E0EC8E, double %2731)
  %2733 = tail call double @llvm.fmuladd.f64(double %257, double 0x3F938CE4890DB2EB, double %2732)
  %2734 = tail call double @llvm.fmuladd.f64(double %259, double 0x3FF4EC1BB3FDC61B, double %2733)
  %2735 = tail call double @llvm.fmuladd.f64(double %261, double 0xBFB5B58B4F03B184, double %2734)
  %2736 = tail call double @llvm.fmuladd.f64(double %318, double 0x3FCA50C41AB7A334, double %2735)
  %2737 = tail call double @llvm.fmuladd.f64(double %263, double 0xBF8BDAF699AECF9F, double %2736)
  %2738 = tail call double @llvm.fmuladd.f64(double %265, double 0x3FD417DEBFC17B27, double %2737)
  %2739 = tail call double @llvm.fmuladd.f64(double %267, double 0xBFE5679E70A6066E, double %2738)
  %2740 = tail call double @llvm.fmuladd.f64(double %269, double 0x3F85E50BB681A443, double %2739)
  %2741 = tail call double @llvm.fmuladd.f64(double %324, double 0xBFB49217631F5948, double %2740)
  %2742 = tail call double @llvm.fmuladd.f64(double %271, double 0x3CB1F00000000000, double %2741)
  %2743 = tail call double @llvm.fmuladd.f64(double %273, double 0x3C8B800000000001, double %2742)
  %2744 = tail call double @llvm.fmuladd.f64(double %275, double 0xBC9EFFFFFFFFFFFD, double %2743)
  %2745 = tail call double @llvm.fmuladd.f64(double %277, double 0xBCB5200000000000, double %2744)
  %2746 = tail call double @llvm.fmuladd.f64(double %279, double 0x3C76FFFFFFFFFFFF, double %2745)
  %2747 = tail call double @llvm.fmuladd.f64(double %281, double 0x3CA9FFFFFFFFFFFE, double %2746)
  %2748 = tail call double @llvm.fmuladd.f64(double %283, double 0xBC91B00000000000, double %2747)
  %2749 = tail call double @llvm.fmuladd.f64(double %285, double 0x3CBA040000000000, double %2748)
  %2750 = tail call double @llvm.fmuladd.f64(double %287, double 0xBC7E000000000001, double %2749)
  %2751 = tail call double @llvm.fmuladd.f64(double %289, double 0x3C86000000000001, double %2750)
  %gep8439 = getelementptr double, ptr %invariant.gep8438, i64 %indvars.iv
  %2752 = load double, ptr %gep8439, align 8, !tbaa !5
  %2753 = fadd double %2751, %2752
  store double %2753, ptr %gep8439, align 8, !tbaa !5
  %2754 = fmul double %220, 0x3C81000000000000
  %2755 = tail call double @llvm.fmuladd.f64(double %219, double 0xBCBCDFFFFFFFFFFF, double %2754)
  %2756 = tail call double @llvm.fmuladd.f64(double %223, double 0x3CB7F80000000001, double %2755)
  %2757 = tail call double @llvm.fmuladd.f64(double %225, double 0xBCBF600000000000, double %2756)
  %2758 = tail call double @llvm.fmuladd.f64(double %227, double 0xBCA2BFFFFFFFFFFF, double %2757)
  %2759 = tail call double @llvm.fmuladd.f64(double %229, double 0xBCA4400000000001, double %2758)
  %2760 = tail call double @llvm.fmuladd.f64(double %231, double 0x3CAE400000000002, double %2759)
  %2761 = tail call double @llvm.fmuladd.f64(double %233, double 0xBCA91FFFFFFFFFFF, double %2760)
  %2762 = tail call double @llvm.fmuladd.f64(double %235, double 0xBCB0200000000000, double %2761)
  %2763 = tail call double @llvm.fmuladd.f64(double %237, double 0xBC91800000000000, double %2762)
  %2764 = tail call double @llvm.fmuladd.f64(double %239, double 0x3CD1000000000000, double %2763)
  %2765 = tail call double @llvm.fmuladd.f64(double %241, double 0x3CA4000000000001, double %2764)
  %2766 = tail call double @llvm.fmuladd.f64(double %243, double 0x3C9F3FFFFFFFFFFC, double %2765)
  %2767 = tail call double @llvm.fmuladd.f64(double %245, double 0xBCC2C80000000000, double %2766)
  %2768 = tail call double @llvm.fmuladd.f64(double %307, double 0xBCB9C00000000001, double %2767)
  %2769 = tail call double @llvm.fmuladd.f64(double %247, double 0xBCB97FFFFFFFFFFF, double %2768)
  %2770 = tail call double @llvm.fmuladd.f64(double %249, double 0x3CBE200000000000, double %2769)
  %2771 = tail call double @llvm.fmuladd.f64(double %251, double 0x3CA4C00000000000, double %2770)
  %2772 = tail call double @llvm.fmuladd.f64(double %311, double 0xBCA4000000000001, double %2771)
  %2773 = tail call double @llvm.fmuladd.f64(double %253, double 0x3CA4000000000001, double %2772)
  %2774 = tail call double @llvm.fmuladd.f64(double %255, double 0xBFE333710B32A2A0, double %2773)
  %2775 = tail call double @llvm.fmuladd.f64(double %257, double 0xBFA352D4DB969C25, double %2774)
  %2776 = tail call double @llvm.fmuladd.f64(double %259, double 0x3FA87D7643548526, double %2775)
  %2777 = tail call double @llvm.fmuladd.f64(double %261, double 0xBFBEED13A9F0D8B2, double %2776)
  %2778 = tail call double @llvm.fmuladd.f64(double %318, double 0x3FF670C5F1F4C92E, double %2777)
  %2779 = tail call double @llvm.fmuladd.f64(double %263, double 0x3FC27B05E24EC5F4, double %2778)
  %2780 = tail call double @llvm.fmuladd.f64(double %265, double 0x3FD35DAE88CBA63B, double %2779)
  %2781 = tail call double @llvm.fmuladd.f64(double %267, double 0xBFD41C0D131D428F, double %2780)
  %2782 = tail call double @llvm.fmuladd.f64(double %269, double 0x3F9854E0ADA34B9E, double %2781)
  %2783 = tail call double @llvm.fmuladd.f64(double %324, double 0x3FC36A9134CD3C5F, double %2782)
  %2784 = tail call double @llvm.fmuladd.f64(double %271, double 0xBCC2E00000000000, double %2783)
  %2785 = tail call double @llvm.fmuladd.f64(double %273, double 0x3C98000000000000, double %2784)
  %2786 = tail call double @llvm.fmuladd.f64(double %275, double 0x3C96200000000000, double %2785)
  %2787 = tail call double @llvm.fmuladd.f64(double %277, double 0xBCC0A40000000000, double %2786)
  %2788 = tail call double @llvm.fmuladd.f64(double %279, double 0xBC93000000000000, double %2787)
  %2789 = tail call double @llvm.fmuladd.f64(double %281, double 0x3C81000000000000, double %2788)
  %2790 = tail call double @llvm.fmuladd.f64(double %283, double 0xBCBA500000000000, double %2789)
  %2791 = tail call double @llvm.fmuladd.f64(double %285, double 0x3CC2B80000000000, double %2790)
  %2792 = tail call double @llvm.fmuladd.f64(double %287, double 0x3C9A000000000000, double %2791)
  %2793 = tail call double @llvm.fmuladd.f64(double %289, double 0xBCA93FFFFFFFFFFF, double %2792)
  %gep8441 = getelementptr double, ptr %invariant.gep8440, i64 %indvars.iv
  %2794 = load double, ptr %gep8441, align 8, !tbaa !5
  %2795 = fadd double %2793, %2794
  store double %2795, ptr %gep8441, align 8, !tbaa !5
  %2796 = tail call double @llvm.fmuladd.f64(double %219, double 0xBCB6C00000000000, double %666)
  %2797 = tail call double @llvm.fmuladd.f64(double %223, double 0x3CBB500000000001, double %2796)
  %2798 = tail call double @llvm.fmuladd.f64(double %225, double 0xBCCB200000000000, double %2797)
  %2799 = tail call double @llvm.fmuladd.f64(double %227, double 0x3CA8000000000001, double %2798)
  %2800 = tail call double @llvm.fmuladd.f64(double %229, double 0xBCB3400000000000, double %2799)
  %2801 = tail call double @llvm.fmuladd.f64(double %231, double 0x3CB1700000000000, double %2800)
  %2802 = tail call double @llvm.fmuladd.f64(double %233, double 0xBCA2DFFFFFFFFFFF, double %2801)
  %2803 = tail call double @llvm.fmuladd.f64(double %235, double 0xBC86000000000001, double %2802)
  %2804 = tail call double @llvm.fmuladd.f64(double %237, double 0xBCBBC00000000001, double %2803)
  %2805 = tail call double @llvm.fmuladd.f64(double %239, double 0x3CA5FFFFFFFFFFFF, double %2804)
  %2806 = tail call double @llvm.fmuladd.f64(double %241, double 0xBCA2000000000000, double %2805)
  %2807 = tail call double @llvm.fmuladd.f64(double %243, double 0x3C95800000000000, double %2806)
  %2808 = tail call double @llvm.fmuladd.f64(double %245, double 0xBCA9BFFFFFFFFFFF, double %2807)
  %2809 = tail call double @llvm.fmuladd.f64(double %307, double 0x3CA0000000000002, double %2808)
  %2810 = tail call double @llvm.fmuladd.f64(double %247, double 0xBCA9FFFFFFFFFFFE, double %2809)
  %2811 = tail call double @llvm.fmuladd.f64(double %249, double 0x3CB07FFFFFFFFFFF, double %2810)
  %2812 = tail call double @llvm.fmuladd.f64(double %251, double 0xBCA1800000000000, double %2811)
  %2813 = tail call double @llvm.fmuladd.f64(double %253, double 0x3CA5FFFFFFFFFFFF, double %2812)
  %2814 = tail call double @llvm.fmuladd.f64(double %255, double 0xBFE333710B32A298, double %2813)
  %2815 = tail call double @llvm.fmuladd.f64(double %257, double 0x3FA87D7643548514, double %2814)
  %2816 = tail call double @llvm.fmuladd.f64(double %259, double 0xBFA352D4DB969C25, double %2815)
  %2817 = tail call double @llvm.fmuladd.f64(double %261, double 0xBFBEED13A9F0D8DE, double %2816)
  %2818 = tail call double @llvm.fmuladd.f64(double %318, double 0x3FC36A9134CD3C5F, double %2817)
  %2819 = tail call double @llvm.fmuladd.f64(double %263, double 0x3FD35DAE88CBA644, double %2818)
  %2820 = tail call double @llvm.fmuladd.f64(double %265, double 0x3FC27B05E24EC5E2, double %2819)
  %2821 = tail call double @llvm.fmuladd.f64(double %267, double 0x3F9854E0ADA34BA9, double %2820)
  %2822 = tail call double @llvm.fmuladd.f64(double %269, double 0xBFD41C0D131D428F, double %2821)
  %2823 = tail call double @llvm.fmuladd.f64(double %324, double 0x3FF670C5F1F4C932, double %2822)
  %2824 = tail call double @llvm.fmuladd.f64(double %271, double 0xBCC1400000000000, double %2823)
  %2825 = tail call double @llvm.fmuladd.f64(double %273, double 0x3CA9000000000000, double %2824)
  %2826 = tail call double @llvm.fmuladd.f64(double %275, double 0x3CB1B00000000000, double %2825)
  %2827 = tail call double @llvm.fmuladd.f64(double %277, double 0xBCB2B00000000001, double %2826)
  %2828 = tail call double @llvm.fmuladd.f64(double %279, double 0xBCA1000000000001, double %2827)
  %2829 = tail call double @llvm.fmuladd.f64(double %281, double 0x3CB1400000000000, double %2828)
  %2830 = tail call double @llvm.fmuladd.f64(double %283, double 0xBCBAD00000000000, double %2829)
  %2831 = tail call double @llvm.fmuladd.f64(double %285, double 0x3CB6F00000000000, double %2830)
  %2832 = tail call double @llvm.fmuladd.f64(double %287, double 0xBC7FFFFFFFFFFFFF, double %2831)
  %2833 = tail call double @llvm.fmuladd.f64(double %289, double 0xBCB1800000000000, double %2832)
  %gep8443 = getelementptr double, ptr %invariant.gep8442, i64 %indvars.iv
  %2834 = load double, ptr %gep8443, align 8, !tbaa !5
  %2835 = fadd double %2833, %2834
  store double %2835, ptr %gep8443, align 8, !tbaa !5
  %2836 = fmul double %220, 0x3CA9FFFFFFFFFFFE
  %2837 = tail call double @llvm.fmuladd.f64(double %219, double 0xBCA4000000000001, double %2836)
  %2838 = tail call double @llvm.fmuladd.f64(double %223, double 0x3CB3000000000000, double %2837)
  %2839 = tail call double @llvm.fmuladd.f64(double %225, double 0xBCBAC00000000000, double %2838)
  %2840 = tail call double @llvm.fmuladd.f64(double %227, double 0x3CA2FFFFFFFFFFFE, double %2839)
  %2841 = tail call double @llvm.fmuladd.f64(double %229, double 0x3C9DFFFFFFFFFFFE, double %2840)
  %2842 = tail call double @llvm.fmuladd.f64(double %231, double 0x3C93000000000000, double %2841)
  %2843 = tail call double @llvm.fmuladd.f64(double %233, double 0xBC88000000000000, double %2842)
  %2844 = tail call double @llvm.fmuladd.f64(double %235, double 0xBC90000000000000, double %2843)
  %2845 = tail call double @llvm.fmuladd.f64(double %237, double 0xBCB5FFFFFFFFFFFF, double %2844)
  %2846 = tail call double @llvm.fmuladd.f64(double %239, double 0xBCC3000000000000, double %2845)
  %2847 = tail call double @llvm.fmuladd.f64(double %241, double 0xBC7FFFFFFFFFFFFF, double %2846)
  %2848 = tail call double @llvm.fmuladd.f64(double %243, double 0xBC88000000000000, double %2847)
  %2849 = tail call double @llvm.fmuladd.f64(double %245, double 0xBCA0000000000002, double %2848)
  %2850 = tail call double @llvm.fmuladd.f64(double %307, double 0x3CA0000000000002, double %2849)
  %2851 = tail call double @llvm.fmuladd.f64(double %247, double 0x3C90000000000000, double %2850)
  %2852 = tail call double @llvm.fmuladd.f64(double %249, double 0x3CB5FFFFFFFFFFFF, double %2851)
  %2853 = tail call double @llvm.fmuladd.f64(double %251, double 0xBCB1000000000001, double %2852)
  %2854 = tail call double @llvm.fmuladd.f64(double %253, double 0x3CB3FFFFFFFFFFFF, double %2853)
  %2855 = tail call double @llvm.fmuladd.f64(double %255, double 0xBF83152016E0EB50, double %2854)
  %2856 = tail call double @llvm.fmuladd.f64(double %257, double 0x3FF4EC1BB3FDC612, double %2855)
  %2857 = tail call double @llvm.fmuladd.f64(double %259, double 0x3F938CE4890DB2F9, double %2856)
  %2858 = tail call double @llvm.fmuladd.f64(double %261, double 0xBFB5B58B4F03B1AE, double %2857)
  %2859 = tail call double @llvm.fmuladd.f64(double %318, double 0xBFB49217631F5954, double %2858)
  %2860 = tail call double @llvm.fmuladd.f64(double %263, double 0x3FD417DEBFC17B1A, double %2859)
  %2861 = tail call double @llvm.fmuladd.f64(double %265, double 0xBF8BDAF699AECFF5, double %2860)
  %2862 = tail call double @llvm.fmuladd.f64(double %267, double 0x3F85E50BB681A4B0, double %2861)
  %2863 = tail call double @llvm.fmuladd.f64(double %269, double 0xBFE5679E70A60660, double %2862)
  %2864 = tail call double @llvm.fmuladd.f64(double %324, double 0x3FCA50C41AB7A32C, double %2863)
  %2865 = tail call double @llvm.fmuladd.f64(double %271, double 0xBCB3000000000000, double %2864)
  %2866 = tail call double @llvm.fmuladd.f64(double %273, double 0x3C98000000000000, double %2865)
  %2867 = tail call double @llvm.fmuladd.f64(double %275, double 0x3CAA800000000002, double %2866)
  %2868 = tail call double @llvm.fmuladd.f64(double %277, double 0x3CA9000000000000, double %2867)
  %2869 = tail call double @llvm.fmuladd.f64(double %279, double 0xBC92000000000000, double %2868)
  %2870 = tail call double @llvm.fmuladd.f64(double %281, double 0xBC60000000000000, double %2869)
  %2871 = tail call double @llvm.fmuladd.f64(double %283, double 0xBC95000000000000, double %2870)
  %2872 = tail call double @llvm.fmuladd.f64(double %285, double 0xBC74000000000000, double %2871)
  %2873 = tail call double @llvm.fmuladd.f64(double %287, double 0x3CB1000000000001, double %2872)
  %2874 = tail call double @llvm.fmuladd.f64(double %289, double 0xBC88000000000000, double %2873)
  %gep8445 = getelementptr double, ptr %invariant.gep8444, i64 %indvars.iv
  %2875 = load double, ptr %gep8445, align 8, !tbaa !5
  %2876 = fadd double %2874, %2875
  store double %2876, ptr %gep8445, align 8, !tbaa !5
  %2877 = fmul double %220, 0xBC9DFFFFFFFFFFFE
  %2878 = tail call double @llvm.fmuladd.f64(double %219, double 0xBCCE000000000000, double %2877)
  %2879 = tail call double @llvm.fmuladd.f64(double %223, double 0x3CA173FFFFFFFFFE, double %2878)
  %2880 = tail call double @llvm.fmuladd.f64(double %225, double 0xBCBAD60000000001, double %2879)
  %2881 = tail call double @llvm.fmuladd.f64(double %227, double 0xBCB1F00000000000, double %2880)
  %2882 = tail call double @llvm.fmuladd.f64(double %229, double 0x3CA1000000000001, double %2881)
  %2883 = tail call double @llvm.fmuladd.f64(double %231, double 0x3C83600000000000, double %2882)
  %2884 = tail call double @llvm.fmuladd.f64(double %233, double 0x3C90500000000000, double %2883)
  %2885 = tail call double @llvm.fmuladd.f64(double %235, double 0x3CA27FFFFFFFFFFF, double %2884)
  %2886 = tail call double @llvm.fmuladd.f64(double %237, double 0xBC88000000000000, double %2885)
  %2887 = tail call double @llvm.fmuladd.f64(double %239, double 0x3CC3F00000000000, double %2886)
  %2888 = tail call double @llvm.fmuladd.f64(double %241, double 0x3C92000000000000, double %2887)
  %2889 = tail call double @llvm.fmuladd.f64(double %243, double 0x3CA61FFFFFFFFFFF, double %2888)
  %2890 = tail call double @llvm.fmuladd.f64(double %245, double 0xBC97A00000000000, double %2889)
  %2891 = tail call double @llvm.fmuladd.f64(double %307, double 0xBCB5800000000000, double %2890)
  %2892 = tail call double @llvm.fmuladd.f64(double %247, double 0xBCB0200000000000, double %2891)
  %2893 = tail call double @llvm.fmuladd.f64(double %249, double 0x3CAD6FFFFFFFFFFF, double %2892)
  %2894 = tail call double @llvm.fmuladd.f64(double %251, double 0x3CB3D00000000000, double %2893)
  %2895 = tail call double @llvm.fmuladd.f64(double %311, double 0xBC84000000000000, double %2894)
  %2896 = tail call double @llvm.fmuladd.f64(double %253, double 0x3C50000000000000, double %2895)
  %2897 = tail call double @llvm.fmuladd.f64(double %255, double 0xBCBFE00000000000, double %2896)
  %2898 = tail call double @llvm.fmuladd.f64(double %257, double 0xBCA7400000000002, double %2897)
  %2899 = tail call double @llvm.fmuladd.f64(double %259, double 0xBCA5000000000000, double %2898)
  %2900 = tail call double @llvm.fmuladd.f64(double %261, double 0x3CBBC80000000000, double %2899)
  %2901 = tail call double @llvm.fmuladd.f64(double %318, double 0x3C96000000000000, double %2900)
  %2902 = tail call double @llvm.fmuladd.f64(double %263, double 0x3C89000000000000, double %2901)
  %2903 = tail call double @llvm.fmuladd.f64(double %265, double 0x3C9E5FFFFFFFFFFD, double %2902)
  %2904 = tail call double @llvm.fmuladd.f64(double %267, double 0xBCA0600000000001, double %2903)
  %2905 = tail call double @llvm.fmuladd.f64(double %269, double 0x3C97800000000000, double %2904)
  %2906 = tail call double @llvm.fmuladd.f64(double %324, double 0xBC8E000000000000, double %2905)
  %2907 = tail call double @llvm.fmuladd.f64(double %271, double 0xBF83152016E0EC60, double %2906)
  %2908 = tail call double @llvm.fmuladd.f64(double %273, double 0x3F938CE4890DB316, double %2907)
  %2909 = tail call double @llvm.fmuladd.f64(double %275, double 0x3FF4EC1BB3FDC61B, double %2908)
  %2910 = tail call double @llvm.fmuladd.f64(double %277, double 0xBFB5B58B4F03B1AC, double %2909)
  %2911 = tail call double @llvm.fmuladd.f64(double %279, double 0x3FCA50C41AB7A329, double %2910)
  %2912 = tail call double @llvm.fmuladd.f64(double %281, double 0xBF8BDAF699AECF88, double %2911)
  %2913 = tail call double @llvm.fmuladd.f64(double %283, double 0x3FD417DEBFC17B21, double %2912)
  %2914 = tail call double @llvm.fmuladd.f64(double %285, double 0xBFE5679E70A60669, double %2913)
  %2915 = tail call double @llvm.fmuladd.f64(double %287, double 0x3F85E50BB681A3E1, double %2914)
  %2916 = tail call double @llvm.fmuladd.f64(double %289, double 0xBFB49217631F5945, double %2915)
  %gep8447 = getelementptr double, ptr %invariant.gep8446, i64 %indvars.iv
  %2917 = load double, ptr %gep8447, align 8, !tbaa !5
  %2918 = fadd double %2916, %2917
  store double %2918, ptr %gep8447, align 8, !tbaa !5
  %2919 = fmul double %220, 0xBCB3000000000000
  %2920 = tail call double @llvm.fmuladd.f64(double %219, double 0xBCC7800000000000, double %2919)
  %2921 = tail call double @llvm.fmuladd.f64(double %223, double 0x3C7B800000000001, double %2920)
  %2922 = tail call double @llvm.fmuladd.f64(double %225, double 0xBCC1080000000000, double %2921)
  %2923 = tail call double @llvm.fmuladd.f64(double %227, double 0x3CB0100000000000, double %2922)
  %2924 = tail call double @llvm.fmuladd.f64(double %229, double 0x3CAA3FFFFFFFFFFE, double %2923)
  %2925 = tail call double @llvm.fmuladd.f64(double %231, double 0x3C92800000000000, double %2924)
  %2926 = tail call double @llvm.fmuladd.f64(double %233, double 0xBCBE200000000000, double %2925)
  %2927 = tail call double @llvm.fmuladd.f64(double %235, double 0xBC94000000000000, double %2926)
  %2928 = tail call double @llvm.fmuladd.f64(double %237, double 0xBC70000000000001, double %2927)
  %2929 = tail call double @llvm.fmuladd.f64(double %239, double 0x3CBE000000000000, double %2928)
  %2930 = tail call double @llvm.fmuladd.f64(double %241, double 0x3C90000000000000, double %2929)
  %2931 = tail call double @llvm.fmuladd.f64(double %243, double 0x3CA4A00000000001, double %2930)
  %2932 = tail call double @llvm.fmuladd.f64(double %245, double 0xBC9D7FFFFFFFFFFE, double %2931)
  %2933 = tail call double @llvm.fmuladd.f64(double %307, double 0x3CB4800000000001, double %2932)
  %2934 = tail call double @llvm.fmuladd.f64(double %247, double 0xBC86000000000001, double %2933)
  %2935 = tail call double @llvm.fmuladd.f64(double %249, double 0x3CBEBFFFFFFFFFFF, double %2934)
  %2936 = tail call double @llvm.fmuladd.f64(double %251, double 0xBCB3200000000000, double %2935)
  %2937 = tail call double @llvm.fmuladd.f64(double %311, double 0xBC97000000000000, double %2936)
  %2938 = tail call double @llvm.fmuladd.f64(double %253, double 0x3C92000000000000, double %2937)
  %2939 = tail call double @llvm.fmuladd.f64(double %255, double 0xBCCB000000000000, double %2938)
  %2940 = tail call double @llvm.fmuladd.f64(double %257, double 0xBCA2000000000000, double %2939)
  %2941 = tail call double @llvm.fmuladd.f64(double %259, double 0xBCA5BFFFFFFFFFFF, double %2940)
  %2942 = tail call double @llvm.fmuladd.f64(double %261, double 0x3CC2480000000000, double %2941)
  %2943 = tail call double @llvm.fmuladd.f64(double %318, double 0xBC92000000000000, double %2942)
  %2944 = tail call double @llvm.fmuladd.f64(double %263, double 0x3CB4C00000000000, double %2943)
  %2945 = tail call double @llvm.fmuladd.f64(double %265, double 0xBC89000000000000, double %2944)
  %2946 = tail call double @llvm.fmuladd.f64(double %267, double 0x3CB7F00000000001, double %2945)
  %2947 = tail call double @llvm.fmuladd.f64(double %269, double 0xBC70000000000001, double %2946)
  %2948 = tail call double @llvm.fmuladd.f64(double %324, double 0xBCA7000000000002, double %2947)
  %2949 = tail call double @llvm.fmuladd.f64(double %271, double 0xBFE333710B32A29A, double %2948)
  %2950 = tail call double @llvm.fmuladd.f64(double %273, double 0xBFA352D4DB969BCE, double %2949)
  %2951 = tail call double @llvm.fmuladd.f64(double %275, double 0x3FA87D7643548540, double %2950)
  %2952 = tail call double @llvm.fmuladd.f64(double %277, double 0xBFBEED13A9F0D910, double %2951)
  %2953 = tail call double @llvm.fmuladd.f64(double %279, double 0x3FF670C5F1F4C92E, double %2952)
  %2954 = tail call double @llvm.fmuladd.f64(double %281, double 0x3FC27B05E24EC5E2, double %2953)
  %2955 = tail call double @llvm.fmuladd.f64(double %283, double 0x3FD35DAE88CBA63F, double %2954)
  %2956 = tail call double @llvm.fmuladd.f64(double %285, double 0xBFD41C0D131D427F, double %2955)
  %2957 = tail call double @llvm.fmuladd.f64(double %287, double 0x3F9854E0ADA34BA6, double %2956)
  %2958 = tail call double @llvm.fmuladd.f64(double %289, double 0x3FC36A9134CD3C63, double %2957)
  %gep8449 = getelementptr double, ptr %invariant.gep8448, i64 %indvars.iv
  %2959 = load double, ptr %gep8449, align 8, !tbaa !5
  %2960 = fadd double %2958, %2959
  store double %2960, ptr %gep8449, align 8, !tbaa !5
  %2961 = fmul double %220, 0x3CAB800000000001
  %2962 = tail call double @llvm.fmuladd.f64(double %219, double 0x3CAF000000000001, double %2961)
  %2963 = tail call double @llvm.fmuladd.f64(double %223, double 0x3CADDFFFFFFFFFFE, double %2962)
  %2964 = tail call double @llvm.fmuladd.f64(double %225, double 0xBCC7780000000000, double %2963)
  %2965 = tail call double @llvm.fmuladd.f64(double %227, double 0x3CC2900000000000, double %2964)
  %2966 = tail call double @llvm.fmuladd.f64(double %229, double 0xBC94800000000000, double %2965)
  %2967 = tail call double @llvm.fmuladd.f64(double %231, double 0x3C66000000000000, double %2966)
  %2968 = tail call double @llvm.fmuladd.f64(double %233, double 0xBCB42FFFFFFFFFFF, double %2967)
  %2969 = tail call double @llvm.fmuladd.f64(double %235, double 0xBCAA800000000002, double %2968)
  %2970 = tail call double @llvm.fmuladd.f64(double %237, double 0xBCB3C00000000000, double %2969)
  %2971 = tail call double @llvm.fmuladd.f64(double %239, double 0x3CC6C00000000000, double %2970)
  %2972 = tail call double @llvm.fmuladd.f64(double %241, double 0x3C9DFFFFFFFFFFFE, double %2971)
  %2973 = tail call double @llvm.fmuladd.f64(double %243, double 0x3CB6200000000001, double %2972)
  %2974 = tail call double @llvm.fmuladd.f64(double %245, double 0x3C89FFFFFFFFFFFF, double %2973)
  %2975 = tail call double @llvm.fmuladd.f64(double %307, double 0xBCB5800000000000, double %2974)
  %2976 = tail call double @llvm.fmuladd.f64(double %247, double 0xBCA5FFFFFFFFFFFF, double %2975)
  %2977 = tail call double @llvm.fmuladd.f64(double %249, double 0x3CA4800000000001, double %2976)
  %2978 = tail call double @llvm.fmuladd.f64(double %251, double 0xBCB27FFFFFFFFFFF, double %2977)
  %2979 = tail call double @llvm.fmuladd.f64(double %311, double 0xBCB1000000000001, double %2978)
  %2980 = tail call double @llvm.fmuladd.f64(double %253, double 0x3CB3800000000000, double %2979)
  %2981 = tail call double @llvm.fmuladd.f64(double %255, double 0xBCC6C00000000000, double %2980)
  %2982 = tail call double @llvm.fmuladd.f64(double %257, double 0xBCAF000000000001, double %2981)
  %2983 = tail call double @llvm.fmuladd.f64(double %259, double 0xBCB5400000000000, double %2982)
  %2984 = tail call double @llvm.fmuladd.f64(double %261, double 0x3CB5600000000000, double %2983)
  %2985 = tail call double @llvm.fmuladd.f64(double %318, double 0x3C96000000000000, double %2984)
  %2986 = tail call double @llvm.fmuladd.f64(double %263, double 0x3CB8000000000001, double %2985)
  %2987 = tail call double @llvm.fmuladd.f64(double %265, double 0xBC79FFFFFFFFFFFF, double %2986)
  %2988 = tail call double @llvm.fmuladd.f64(double %267, double 0x3CB77FFFFFFFFFFF, double %2987)
  %2989 = tail call double @llvm.fmuladd.f64(double %269, double 0xBCA2000000000000, double %2988)
  %2990 = tail call double @llvm.fmuladd.f64(double %324, double 0x3CA1000000000001, double %2989)
  %2991 = tail call double @llvm.fmuladd.f64(double %271, double 0xBFE333710B32A2A1, double %2990)
  %2992 = tail call double @llvm.fmuladd.f64(double %273, double 0x3FA87D764354851C, double %2991)
  %2993 = tail call double @llvm.fmuladd.f64(double %275, double 0xBFA352D4DB969BF9, double %2992)
  %2994 = tail call double @llvm.fmuladd.f64(double %277, double 0xBFBEED13A9F0D909, double %2993)
  %2995 = tail call double @llvm.fmuladd.f64(double %279, double 0x3FC36A9134CD3C5F, double %2994)
  %2996 = tail call double @llvm.fmuladd.f64(double %281, double 0x3FD35DAE88CBA642, double %2995)
  %2997 = tail call double @llvm.fmuladd.f64(double %283, double 0x3FC27B05E24EC5E9, double %2996)
  %2998 = tail call double @llvm.fmuladd.f64(double %285, double 0x3F9854E0ADA34BFA, double %2997)
  %2999 = tail call double @llvm.fmuladd.f64(double %287, double 0xBFD41C0D131D4285, double %2998)
  %3000 = tail call double @llvm.fmuladd.f64(double %289, double 0x3FF670C5F1F4C92E, double %2999)
  %gep8451 = getelementptr double, ptr %invariant.gep8450, i64 %indvars.iv
  %3001 = load double, ptr %gep8451, align 8, !tbaa !5
  %3002 = fadd double %3000, %3001
  store double %3002, ptr %gep8451, align 8, !tbaa !5
  %3003 = fmul double %220, 0x3CA1000000000001
  %3004 = tail call double @llvm.fmuladd.f64(double %219, double 0x3CB3FFFFFFFFFFFF, double %3003)
  %3005 = tail call double @llvm.fmuladd.f64(double %223, double 0x3CAF000000000001, double %3004)
  %3006 = tail call double @llvm.fmuladd.f64(double %225, double 0xBCB4C00000000000, double %3005)
  %3007 = tail call double @llvm.fmuladd.f64(double %227, double 0x3CB5000000000000, double %3006)
  %3008 = tail call double @llvm.fmuladd.f64(double %229, double 0x3C7FFFFFFFFFFFFF, double %3007)
  %3009 = tail call double @llvm.fmuladd.f64(double %233, double 0xBC94000000000000, double %3008)
  %3010 = tail call double @llvm.fmuladd.f64(double %235, double 0xBCB5FFFFFFFFFFFF, double %3009)
  %3011 = tail call double @llvm.fmuladd.f64(double %237, double 0xBCB7000000000000, double %3010)
  %3012 = tail call double @llvm.fmuladd.f64(double %239, double 0xBCAC000000000000, double %3011)
  %3013 = tail call double @llvm.fmuladd.f64(double %241, double 0x3CA8000000000001, double %3012)
  %3014 = tail call double @llvm.fmuladd.f64(double %243, double 0x3CA4000000000001, double %3013)
  %3015 = tail call double @llvm.fmuladd.f64(double %245, double 0xBC99000000000000, double %3014)
  %3016 = tail call double @llvm.fmuladd.f64(double %307, double 0xBCB8000000000001, double %3015)
  %3017 = tail call double @llvm.fmuladd.f64(double %249, double 0x3CB0000000000000, double %3016)
  %3018 = tail call double @llvm.fmuladd.f64(double %251, double 0xBC96000000000000, double %3017)
  %3019 = tail call double @llvm.fmuladd.f64(double %311, double 0xBC90000000000000, double %3018)
  %3020 = tail call double @llvm.fmuladd.f64(double %253, double 0x3CA0000000000002, double %3019)
  %3021 = tail call double @llvm.fmuladd.f64(double %255, double 0xBCA4000000000001, double %3020)
  %3022 = tail call double @llvm.fmuladd.f64(double %257, double 0x3CB0000000000000, double %3021)
  %3023 = tail call double @llvm.fmuladd.f64(double %259, double 0xBC9A000000000000, double %3022)
  %3024 = tail call double @llvm.fmuladd.f64(double %261, double 0x3C82000000000000, double %3023)
  %3025 = tail call double @llvm.fmuladd.f64(double %318, double 0x3C98000000000000, double %3024)
  %3026 = tail call double @llvm.fmuladd.f64(double %263, double 0x3CA2000000000000, double %3025)
  %3027 = tail call double @llvm.fmuladd.f64(double %265, double 0xBCA1000000000001, double %3026)
  %3028 = tail call double @llvm.fmuladd.f64(double %267, double 0x3CB3800000000000, double %3027)
  %3029 = tail call double @llvm.fmuladd.f64(double %269, double 0x3C90000000000000, double %3028)
  %3030 = tail call double @llvm.fmuladd.f64(double %324, double 0x3C98000000000000, double %3029)
  %3031 = tail call double @llvm.fmuladd.f64(double %271, double 0xBF83152016E0EC28, double %3030)
  %3032 = tail call double @llvm.fmuladd.f64(double %273, double 0x3FF4EC1BB3FDC612, double %3031)
  %3033 = tail call double @llvm.fmuladd.f64(double %275, double 0x3F938CE4890DB31F, double %3032)
  %3034 = tail call double @llvm.fmuladd.f64(double %277, double 0xBFB5B58B4F03B1A3, double %3033)
  %3035 = tail call double @llvm.fmuladd.f64(double %279, double 0xBFB49217631F5946, double %3034)
  %3036 = tail call double @llvm.fmuladd.f64(double %281, double 0x3FD417DEBFC17B1A, double %3035)
  %3037 = tail call double @llvm.fmuladd.f64(double %283, double 0xBF8BDAF699AECFB6, double %3036)
  %3038 = tail call double @llvm.fmuladd.f64(double %285, double 0x3F85E50BB681A390, double %3037)
  %3039 = tail call double @llvm.fmuladd.f64(double %287, double 0xBFE5679E70A6065B, double %3038)
  %3040 = tail call double @llvm.fmuladd.f64(double %289, double 0x3FCA50C41AB7A329, double %3039)
  %gep8453 = getelementptr double, ptr %invariant.gep8452, i64 %indvars.iv
  %3041 = load double, ptr %gep8453, align 8, !tbaa !5
  %3042 = fadd double %3040, %3041
  store double %3042, ptr %gep8453, align 8, !tbaa !5
  %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1
  %exitcond.not = icmp eq i64 %indvars.iv.next, %wide.trip.count
  br i1 %exitcond.not, label %._crit_edge, label %217, !llvm.loop !9
}

attributes #0 = { mustprogress nocallback nofree nosync nounwind speculatable willreturn memory(none) }
attributes #1 = { nofree norecurse nosync nounwind memory(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" }

!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 = !{!"double", !7, i64 0}
!7 = !{!"omnipotent char", !8, i64 0}
!8 = !{!"Simple C/C++ TBAA"}
!9 = distinct !{!9, !10}
!10 = !{!"llvm.loop.mustprogress"}


; Effective O3 passes: EarlyCSEPass,GlobalOptPass,IndVarSimplifyPass,InferFunctionAttrsPass,InstCombinePass,JumpThreadingPass,LICMPass,LoopRotatePass,LoopSimplifyPass,LoopUnrollPass,PostOrderFunctionAttrsPass,ReassociatePass,SROAPass,SimplifyCFGPass,TailCallElimPass