; 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_b0(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 = %24467, %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 %24470

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
  store double %343, ptr %350, align 8, !tbaa !11
  %351 = load ptr, ptr %7, align 8, !tbaa !9
  %352 = load i32, ptr %12, align 4, !tbaa !5
  %353 = load i32, ptr %8, align 4, !tbaa !5
  %354 = mul nsw i32 0, %353
  %355 = add nsw i32 %352, %354
  %356 = sext i32 %355 to i64
  %357 = getelementptr inbounds double, ptr %351, i64 %356
  %358 = load double, ptr %357, align 8, !tbaa !11
  %359 = load ptr, ptr %7, align 8, !tbaa !9
  %360 = load i32, ptr %12, align 4, !tbaa !5
  %361 = load i32, ptr %8, align 4, !tbaa !5
  %362 = mul nsw i32 1, %361
  %363 = add nsw i32 %360, %362
  %364 = sext i32 %363 to i64
  %365 = getelementptr inbounds double, ptr %359, i64 %364
  %366 = load double, ptr %365, align 8, !tbaa !11
  %367 = fmul double 0x3FF86DB962AC2966, %366
  %368 = call double @llvm.fmuladd.f64(double 0x3CBC000000000000, double %358, double %367)
  %369 = load ptr, ptr %7, align 8, !tbaa !9
  %370 = load i32, ptr %12, align 4, !tbaa !5
  %371 = load i32, ptr %8, align 4, !tbaa !5
  %372 = mul nsw i32 2, %371
  %373 = add nsw i32 %370, %372
  %374 = sext i32 %373 to i64
  %375 = getelementptr inbounds double, ptr %369, i64 %374
  %376 = load double, ptr %375, align 8, !tbaa !11
  %377 = call double @llvm.fmuladd.f64(double 0x3C98000000000000, double %376, double %368)
  %378 = load ptr, ptr %7, align 8, !tbaa !9
  %379 = load i32, ptr %12, align 4, !tbaa !5
  %380 = load i32, ptr %8, align 4, !tbaa !5
  %381 = mul nsw i32 3, %380
  %382 = add nsw i32 %379, %381
  %383 = sext i32 %382 to i64
  %384 = getelementptr inbounds double, ptr %378, i64 %383
  %385 = load double, ptr %384, align 8, !tbaa !11
  %386 = call double @llvm.fmuladd.f64(double 0xBCBB3FFFFFFFFFFF, double %385, double %377)
  %387 = load ptr, ptr %7, align 8, !tbaa !9
  %388 = load i32, ptr %12, align 4, !tbaa !5
  %389 = load i32, ptr %8, align 4, !tbaa !5
  %390 = mul nsw i32 4, %389
  %391 = add nsw i32 %388, %390
  %392 = sext i32 %391 to i64
  %393 = getelementptr inbounds double, ptr %387, i64 %392
  %394 = load double, ptr %393, align 8, !tbaa !11
  %395 = call double @llvm.fmuladd.f64(double 0x3CAC000000000000, double %394, double %386)
  %396 = load ptr, ptr %7, align 8, !tbaa !9
  %397 = load i32, ptr %12, align 4, !tbaa !5
  %398 = load i32, ptr %8, align 4, !tbaa !5
  %399 = mul nsw i32 5, %398
  %400 = add nsw i32 %397, %399
  %401 = sext i32 %400 to i64
  %402 = getelementptr inbounds double, ptr %396, i64 %401
  %403 = load double, ptr %402, align 8, !tbaa !11
  %404 = call double @llvm.fmuladd.f64(double 0x3C94000000000000, double %403, double %395)
  %405 = load ptr, ptr %7, align 8, !tbaa !9
  %406 = load i32, ptr %12, align 4, !tbaa !5
  %407 = load i32, ptr %8, align 4, !tbaa !5
  %408 = mul nsw i32 6, %407
  %409 = add nsw i32 %406, %408
  %410 = sext i32 %409 to i64
  %411 = getelementptr inbounds double, ptr %405, i64 %410
  %412 = load double, ptr %411, align 8, !tbaa !11
  %413 = call double @llvm.fmuladd.f64(double 0xBCA2FFFFFFFFFFFE, double %412, double %404)
  %414 = load ptr, ptr %7, align 8, !tbaa !9
  %415 = load i32, ptr %12, align 4, !tbaa !5
  %416 = load i32, ptr %8, align 4, !tbaa !5
  %417 = mul nsw i32 7, %416
  %418 = add nsw i32 %415, %417
  %419 = sext i32 %418 to i64
  %420 = getelementptr inbounds double, ptr %414, i64 %419
  %421 = load double, ptr %420, align 8, !tbaa !11
  %422 = call double @llvm.fmuladd.f64(double 0xBC9C000000000000, double %421, double %413)
  %423 = load ptr, ptr %7, align 8, !tbaa !9
  %424 = load i32, ptr %12, align 4, !tbaa !5
  %425 = load i32, ptr %8, align 4, !tbaa !5
  %426 = mul nsw i32 9, %425
  %427 = add nsw i32 %424, %426
  %428 = sext i32 %427 to i64
  %429 = getelementptr inbounds double, ptr %423, i64 %428
  %430 = load double, ptr %429, align 8, !tbaa !11
  %431 = call double @llvm.fmuladd.f64(double 0x3CA0000000000002, double %430, double %422)
  %432 = load ptr, ptr %7, align 8, !tbaa !9
  %433 = load i32, ptr %12, align 4, !tbaa !5
  %434 = load i32, ptr %8, align 4, !tbaa !5
  %435 = mul nsw i32 10, %434
  %436 = add nsw i32 %433, %435
  %437 = sext i32 %436 to i64
  %438 = getelementptr inbounds double, ptr %432, i64 %437
  %439 = load double, ptr %438, align 8, !tbaa !11
  %440 = call double @llvm.fmuladd.f64(double 0xBCB0000000000000, double %439, double %431)
  %441 = load ptr, ptr %7, align 8, !tbaa !9
  %442 = load i32, ptr %12, align 4, !tbaa !5
  %443 = load i32, ptr %8, align 4, !tbaa !5
  %444 = mul nsw i32 11, %443
  %445 = add nsw i32 %442, %444
  %446 = sext i32 %445 to i64
  %447 = getelementptr inbounds double, ptr %441, i64 %446
  %448 = load double, ptr %447, align 8, !tbaa !11
  %449 = call double @llvm.fmuladd.f64(double 0xBFEA0946EB3057DA, double %448, double %440)
  %450 = load ptr, ptr %7, align 8, !tbaa !9
  %451 = load i32, ptr %12, align 4, !tbaa !5
  %452 = load i32, ptr %8, align 4, !tbaa !5
  %453 = mul nsw i32 12, %452
  %454 = add nsw i32 %451, %453
  %455 = sext i32 %454 to i64
  %456 = getelementptr inbounds double, ptr %450, i64 %455
  %457 = load double, ptr %456, align 8, !tbaa !11
  %458 = call double @llvm.fmuladd.f64(double 0x3C92000000000000, double %457, double %449)
  %459 = load ptr, ptr %7, align 8, !tbaa !9
  %460 = load i32, ptr %12, align 4, !tbaa !5
  %461 = load i32, ptr %8, align 4, !tbaa !5
  %462 = mul nsw i32 13, %461
  %463 = add nsw i32 %460, %462
  %464 = sext i32 %463 to i64
  %465 = getelementptr inbounds double, ptr %459, i64 %464
  %466 = load double, ptr %465, align 8, !tbaa !11
  %467 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %466, double %458)
  %468 = load ptr, ptr %7, align 8, !tbaa !9
  %469 = load i32, ptr %12, align 4, !tbaa !5
  %470 = load i32, ptr %8, align 4, !tbaa !5
  %471 = mul nsw i32 14, %470
  %472 = add nsw i32 %469, %471
  %473 = sext i32 %472 to i64
  %474 = getelementptr inbounds double, ptr %468, i64 %473
  %475 = load double, ptr %474, align 8, !tbaa !11
  %476 = call double @llvm.fmuladd.f64(double 0xBCBE000000000000, double %475, double %467)
  %477 = load ptr, ptr %7, align 8, !tbaa !9
  %478 = load i32, ptr %12, align 4, !tbaa !5
  %479 = load i32, ptr %8, align 4, !tbaa !5
  %480 = mul nsw i32 16, %479
  %481 = add nsw i32 %478, %480
  %482 = sext i32 %481 to i64
  %483 = getelementptr inbounds double, ptr %477, i64 %482
  %484 = load double, ptr %483, align 8, !tbaa !11
  %485 = call double @llvm.fmuladd.f64(double 0x3CAE000000000002, double %484, double %476)
  %486 = load ptr, ptr %7, align 8, !tbaa !9
  %487 = load i32, ptr %12, align 4, !tbaa !5
  %488 = load i32, ptr %8, align 4, !tbaa !5
  %489 = mul nsw i32 17, %488
  %490 = add nsw i32 %487, %489
  %491 = sext i32 %490 to i64
  %492 = getelementptr inbounds double, ptr %486, i64 %491
  %493 = load double, ptr %492, align 8, !tbaa !11
  %494 = call double @llvm.fmuladd.f64(double 0x3CA0000000000002, double %493, double %485)
  %495 = load ptr, ptr %7, align 8, !tbaa !9
  %496 = load i32, ptr %12, align 4, !tbaa !5
  %497 = load i32, ptr %8, align 4, !tbaa !5
  %498 = mul nsw i32 18, %497
  %499 = add nsw i32 %496, %498
  %500 = sext i32 %499 to i64
  %501 = getelementptr inbounds double, ptr %495, i64 %500
  %502 = load double, ptr %501, align 8, !tbaa !11
  %503 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %502, double %494)
  %504 = load ptr, ptr %7, align 8, !tbaa !9
  %505 = load i32, ptr %12, align 4, !tbaa !5
  %506 = load i32, ptr %8, align 4, !tbaa !5
  %507 = mul nsw i32 19, %506
  %508 = add nsw i32 %505, %507
  %509 = sext i32 %508 to i64
  %510 = getelementptr inbounds double, ptr %504, i64 %509
  %511 = load double, ptr %510, align 8, !tbaa !11
  %512 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %511, double %503)
  %513 = load ptr, ptr %7, align 8, !tbaa !9
  %514 = load i32, ptr %12, align 4, !tbaa !5
  %515 = load i32, ptr %8, align 4, !tbaa !5
  %516 = mul nsw i32 20, %515
  %517 = add nsw i32 %514, %516
  %518 = sext i32 %517 to i64
  %519 = getelementptr inbounds double, ptr %513, i64 %518
  %520 = load double, ptr %519, align 8, !tbaa !11
  %521 = call double @llvm.fmuladd.f64(double 0xBCA0000000000002, double %520, double %512)
  %522 = load ptr, ptr %7, align 8, !tbaa !9
  %523 = load i32, ptr %12, align 4, !tbaa !5
  %524 = load i32, ptr %8, align 4, !tbaa !5
  %525 = mul nsw i32 21, %524
  %526 = add nsw i32 %523, %525
  %527 = sext i32 %526 to i64
  %528 = getelementptr inbounds double, ptr %522, i64 %527
  %529 = load double, ptr %528, align 8, !tbaa !11
  %530 = call double @llvm.fmuladd.f64(double 0x3FD9A613A5CEF63B, double %529, double %521)
  %531 = load ptr, ptr %7, align 8, !tbaa !9
  %532 = load i32, ptr %12, align 4, !tbaa !5
  %533 = load i32, ptr %8, align 4, !tbaa !5
  %534 = mul nsw i32 22, %533
  %535 = add nsw i32 %532, %534
  %536 = sext i32 %535 to i64
  %537 = getelementptr inbounds double, ptr %531, i64 %536
  %538 = load double, ptr %537, align 8, !tbaa !11
  %539 = call double @llvm.fmuladd.f64(double 0x3C92000000000000, double %538, double %530)
  %540 = load ptr, ptr %7, align 8, !tbaa !9
  %541 = load i32, ptr %12, align 4, !tbaa !5
  %542 = load i32, ptr %8, align 4, !tbaa !5
  %543 = mul nsw i32 23, %542
  %544 = add nsw i32 %541, %543
  %545 = sext i32 %544 to i64
  %546 = getelementptr inbounds double, ptr %540, i64 %545
  %547 = load double, ptr %546, align 8, !tbaa !11
  %548 = call double @llvm.fmuladd.f64(double 0xBC92000000000000, double %547, double %539)
  %549 = load ptr, ptr %7, align 8, !tbaa !9
  %550 = load i32, ptr %12, align 4, !tbaa !5
  %551 = load i32, ptr %8, align 4, !tbaa !5
  %552 = mul nsw i32 24, %551
  %553 = add nsw i32 %550, %552
  %554 = sext i32 %553 to i64
  %555 = getelementptr inbounds double, ptr %549, i64 %554
  %556 = load double, ptr %555, align 8, !tbaa !11
  %557 = call double @llvm.fmuladd.f64(double 0x3C7FFFFFFFFFFFFF, double %556, double %548)
  %558 = load ptr, ptr %7, align 8, !tbaa !9
  %559 = load i32, ptr %12, align 4, !tbaa !5
  %560 = load i32, ptr %8, align 4, !tbaa !5
  %561 = mul nsw i32 25, %560
  %562 = add nsw i32 %559, %561
  %563 = sext i32 %562 to i64
  %564 = getelementptr inbounds double, ptr %558, i64 %563
  %565 = load double, ptr %564, align 8, !tbaa !11
  %566 = call double @llvm.fmuladd.f64(double 0xBCA8000000000001, double %565, double %557)
  %567 = load ptr, ptr %7, align 8, !tbaa !9
  %568 = load i32, ptr %12, align 4, !tbaa !5
  %569 = load i32, ptr %8, align 4, !tbaa !5
  %570 = mul nsw i32 26, %569
  %571 = add nsw i32 %568, %570
  %572 = sext i32 %571 to i64
  %573 = getelementptr inbounds double, ptr %567, i64 %572
  %574 = load double, ptr %573, align 8, !tbaa !11
  %575 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %574, double %566)
  %576 = load ptr, ptr %7, align 8, !tbaa !9
  %577 = load i32, ptr %12, align 4, !tbaa !5
  %578 = load i32, ptr %8, align 4, !tbaa !5
  %579 = mul nsw i32 27, %578
  %580 = add nsw i32 %577, %579
  %581 = sext i32 %580 to i64
  %582 = getelementptr inbounds double, ptr %576, i64 %581
  %583 = load double, ptr %582, align 8, !tbaa !11
  %584 = call double @llvm.fmuladd.f64(double 0x3CA2000000000000, double %583, double %575)
  %585 = load ptr, ptr %7, align 8, !tbaa !9
  %586 = load i32, ptr %12, align 4, !tbaa !5
  %587 = load i32, ptr %8, align 4, !tbaa !5
  %588 = mul nsw i32 28, %587
  %589 = add nsw i32 %586, %588
  %590 = sext i32 %589 to i64
  %591 = getelementptr inbounds double, ptr %585, i64 %590
  %592 = load double, ptr %591, align 8, !tbaa !11
  %593 = call double @llvm.fmuladd.f64(double 0xBCB0000000000000, double %592, double %584)
  %594 = load ptr, ptr %7, align 8, !tbaa !9
  %595 = load i32, ptr %12, align 4, !tbaa !5
  %596 = load i32, ptr %8, align 4, !tbaa !5
  %597 = mul nsw i32 29, %596
  %598 = add nsw i32 %595, %597
  %599 = sext i32 %598 to i64
  %600 = getelementptr inbounds double, ptr %594, i64 %599
  %601 = load double, ptr %600, align 8, !tbaa !11
  %602 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %601, double %593)
  %603 = load ptr, ptr %7, align 8, !tbaa !9
  %604 = load i32, ptr %12, align 4, !tbaa !5
  %605 = load i32, ptr %8, align 4, !tbaa !5
  %606 = mul nsw i32 30, %605
  %607 = add nsw i32 %604, %606
  %608 = sext i32 %607 to i64
  %609 = getelementptr inbounds double, ptr %603, i64 %608
  %610 = load double, ptr %609, align 8, !tbaa !11
  %611 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %610, double %602)
  %612 = load ptr, ptr %7, align 8, !tbaa !9
  %613 = load i32, ptr %12, align 4, !tbaa !5
  %614 = load i32, ptr %8, align 4, !tbaa !5
  %615 = mul nsw i32 31, %614
  %616 = add nsw i32 %613, %615
  %617 = sext i32 %616 to i64
  %618 = getelementptr inbounds double, ptr %612, i64 %617
  %619 = load double, ptr %618, align 8, !tbaa !11
  %620 = call double @llvm.fmuladd.f64(double 0xBFBD29AD687BB05D, double %619, double %611)
  %621 = load ptr, ptr %7, align 8, !tbaa !9
  %622 = load i32, ptr %12, align 4, !tbaa !5
  %623 = load i32, ptr %8, align 4, !tbaa !5
  %624 = mul nsw i32 32, %623
  %625 = add nsw i32 %622, %624
  %626 = sext i32 %625 to i64
  %627 = getelementptr inbounds double, ptr %621, i64 %626
  %628 = load double, ptr %627, align 8, !tbaa !11
  %629 = call double @llvm.fmuladd.f64(double 0x3C50000000000000, double %628, double %620)
  %630 = load ptr, ptr %7, align 8, !tbaa !9
  %631 = load i32, ptr %12, align 4, !tbaa !5
  %632 = load i32, ptr %8, align 4, !tbaa !5
  %633 = mul nsw i32 33, %632
  %634 = add nsw i32 %631, %633
  %635 = sext i32 %634 to i64
  %636 = getelementptr inbounds double, ptr %630, i64 %635
  %637 = load double, ptr %636, align 8, !tbaa !11
  %638 = call double @llvm.fmuladd.f64(double 0x3CAB800000000001, double %637, double %629)
  %639 = load ptr, ptr %7, align 8, !tbaa !9
  %640 = load i32, ptr %12, align 4, !tbaa !5
  %641 = load i32, ptr %8, align 4, !tbaa !5
  %642 = mul nsw i32 34, %641
  %643 = add nsw i32 %640, %642
  %644 = sext i32 %643 to i64
  %645 = getelementptr inbounds double, ptr %639, i64 %644
  %646 = load double, ptr %645, align 8, !tbaa !11
  %647 = call double @llvm.fmuladd.f64(double 0xBCA0000000000002, double %646, double %638)
  %648 = load ptr, ptr %7, align 8, !tbaa !9
  %649 = load i32, ptr %12, align 4, !tbaa !5
  %650 = load i32, ptr %8, align 4, !tbaa !5
  %651 = mul nsw i32 35, %650
  %652 = add nsw i32 %649, %651
  %653 = sext i32 %652 to i64
  %654 = getelementptr inbounds double, ptr %648, i64 %653
  %655 = load double, ptr %654, align 8, !tbaa !11
  %656 = call double @llvm.fmuladd.f64(double 0x3C7FFFFFFFFFFFFF, double %655, double %647)
  %657 = load ptr, ptr %7, align 8, !tbaa !9
  %658 = load i32, ptr %12, align 4, !tbaa !5
  %659 = load i32, ptr %8, align 4, !tbaa !5
  %660 = mul nsw i32 36, %659
  %661 = add nsw i32 %658, %660
  %662 = sext i32 %661 to i64
  %663 = getelementptr inbounds double, ptr %657, i64 %662
  %664 = load double, ptr %663, align 8, !tbaa !11
  %665 = call double @llvm.fmuladd.f64(double 0x3C78000000000002, double %664, double %656)
  %666 = load ptr, ptr %7, align 8, !tbaa !9
  %667 = load i32, ptr %12, align 4, !tbaa !5
  %668 = load i32, ptr %8, align 4, !tbaa !5
  %669 = mul nsw i32 37, %668
  %670 = add nsw i32 %667, %669
  %671 = sext i32 %670 to i64
  %672 = getelementptr inbounds double, ptr %666, i64 %671
  %673 = load double, ptr %672, align 8, !tbaa !11
  %674 = call double @llvm.fmuladd.f64(double 0xBC94000000000000, double %673, double %665)
  %675 = load ptr, ptr %7, align 8, !tbaa !9
  %676 = load i32, ptr %12, align 4, !tbaa !5
  %677 = load i32, ptr %8, align 4, !tbaa !5
  %678 = mul nsw i32 38, %677
  %679 = add nsw i32 %676, %678
  %680 = sext i32 %679 to i64
  %681 = getelementptr inbounds double, ptr %675, i64 %680
  %682 = load double, ptr %681, align 8, !tbaa !11
  %683 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %682, double %674)
  %684 = load ptr, ptr %7, align 8, !tbaa !9
  %685 = load i32, ptr %12, align 4, !tbaa !5
  %686 = load i32, ptr %8, align 4, !tbaa !5
  %687 = mul nsw i32 39, %686
  %688 = add nsw i32 %685, %687
  %689 = sext i32 %688 to i64
  %690 = getelementptr inbounds double, ptr %684, i64 %689
  %691 = load double, ptr %690, align 8, !tbaa !11
  %692 = call double @llvm.fmuladd.f64(double 0xBC98000000000000, double %691, double %683)
  store double %692, ptr %11, align 8, !tbaa !11
  %693 = load double, ptr %11, align 8, !tbaa !11
  %694 = load ptr, ptr %9, align 8, !tbaa !9
  %695 = load i32, ptr %12, align 4, !tbaa !5
  %696 = load i32, ptr %10, align 4, !tbaa !5
  %697 = mul nsw i32 1, %696
  %698 = add nsw i32 %695, %697
  %699 = sext i32 %698 to i64
  %700 = getelementptr inbounds double, ptr %694, i64 %699
  store double %693, ptr %700, align 8, !tbaa !11
  %701 = load ptr, ptr %7, align 8, !tbaa !9
  %702 = load i32, ptr %12, align 4, !tbaa !5
  %703 = load i32, ptr %8, align 4, !tbaa !5
  %704 = mul nsw i32 0, %703
  %705 = add nsw i32 %702, %704
  %706 = sext i32 %705 to i64
  %707 = getelementptr inbounds double, ptr %701, i64 %706
  %708 = load double, ptr %707, align 8, !tbaa !11
  %709 = load ptr, ptr %7, align 8, !tbaa !9
  %710 = load i32, ptr %12, align 4, !tbaa !5
  %711 = load i32, ptr %8, align 4, !tbaa !5
  %712 = mul nsw i32 1, %711
  %713 = add nsw i32 %710, %712
  %714 = sext i32 %713 to i64
  %715 = getelementptr inbounds double, ptr %709, i64 %714
  %716 = load double, ptr %715, align 8, !tbaa !11
  %717 = fmul double 0xBC90000000000000, %716
  %718 = call double @llvm.fmuladd.f64(double 0x3C9B000000000000, double %708, double %717)
  %719 = load ptr, ptr %7, align 8, !tbaa !9
  %720 = load i32, ptr %12, align 4, !tbaa !5
  %721 = load i32, ptr %8, align 4, !tbaa !5
  %722 = mul nsw i32 2, %721
  %723 = add nsw i32 %720, %722
  %724 = sext i32 %723 to i64
  %725 = getelementptr inbounds double, ptr %719, i64 %724
  %726 = load double, ptr %725, align 8, !tbaa !11
  %727 = call double @llvm.fmuladd.f64(double 0x3FF86DB962AC2966, double %726, double %718)
  %728 = load ptr, ptr %7, align 8, !tbaa !9
  %729 = load i32, ptr %12, align 4, !tbaa !5
  %730 = load i32, ptr %8, align 4, !tbaa !5
  %731 = mul nsw i32 3, %730
  %732 = add nsw i32 %729, %731
  %733 = sext i32 %732 to i64
  %734 = getelementptr inbounds double, ptr %728, i64 %733
  %735 = load double, ptr %734, align 8, !tbaa !11
  %736 = call double @llvm.fmuladd.f64(double 0x3C92C00000000000, double %735, double %727)
  %737 = load ptr, ptr %7, align 8, !tbaa !9
  %738 = load i32, ptr %12, align 4, !tbaa !5
  %739 = load i32, ptr %8, align 4, !tbaa !5
  %740 = mul nsw i32 4, %739
  %741 = add nsw i32 %738, %740
  %742 = sext i32 %741 to i64
  %743 = getelementptr inbounds double, ptr %737, i64 %742
  %744 = load double, ptr %743, align 8, !tbaa !11
  %745 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %744, double %736)
  %746 = load ptr, ptr %7, align 8, !tbaa !9
  %747 = load i32, ptr %12, align 4, !tbaa !5
  %748 = load i32, ptr %8, align 4, !tbaa !5
  %749 = mul nsw i32 5, %748
  %750 = add nsw i32 %747, %749
  %751 = sext i32 %750 to i64
  %752 = getelementptr inbounds double, ptr %746, i64 %751
  %753 = load double, ptr %752, align 8, !tbaa !11
  %754 = call double @llvm.fmuladd.f64(double 0xBC60000000000000, double %753, double %745)
  %755 = load ptr, ptr %7, align 8, !tbaa !9
  %756 = load i32, ptr %12, align 4, !tbaa !5
  %757 = load i32, ptr %8, align 4, !tbaa !5
  %758 = mul nsw i32 6, %757
  %759 = add nsw i32 %756, %758
  %760 = sext i32 %759 to i64
  %761 = getelementptr inbounds double, ptr %755, i64 %760
  %762 = load double, ptr %761, align 8, !tbaa !11
  %763 = call double @llvm.fmuladd.f64(double 0x3C9B000000000000, double %762, double %754)
  %764 = load ptr, ptr %7, align 8, !tbaa !9
  %765 = load i32, ptr %12, align 4, !tbaa !5
  %766 = load i32, ptr %8, align 4, !tbaa !5
  %767 = mul nsw i32 7, %766
  %768 = add nsw i32 %765, %767
  %769 = sext i32 %768 to i64
  %770 = getelementptr inbounds double, ptr %764, i64 %769
  %771 = load double, ptr %770, align 8, !tbaa !11
  %772 = call double @llvm.fmuladd.f64(double 0xBC8F000000000000, double %771, double %763)
  %773 = load ptr, ptr %7, align 8, !tbaa !9
  %774 = load i32, ptr %12, align 4, !tbaa !5
  %775 = load i32, ptr %8, align 4, !tbaa !5
  %776 = mul nsw i32 8, %775
  %777 = add nsw i32 %774, %776
  %778 = sext i32 %777 to i64
  %779 = getelementptr inbounds double, ptr %773, i64 %778
  %780 = load double, ptr %779, align 8, !tbaa !11
  %781 = call double @llvm.fmuladd.f64(double 0x3C92000000000000, double %780, double %772)
  %782 = load ptr, ptr %7, align 8, !tbaa !9
  %783 = load i32, ptr %12, align 4, !tbaa !5
  %784 = load i32, ptr %8, align 4, !tbaa !5
  %785 = mul nsw i32 9, %784
  %786 = add nsw i32 %783, %785
  %787 = sext i32 %786 to i64
  %788 = getelementptr inbounds double, ptr %782, i64 %787
  %789 = load double, ptr %788, align 8, !tbaa !11
  %790 = call double @llvm.fmuladd.f64(double 0xBC96000000000000, double %789, double %781)
  %791 = load ptr, ptr %7, align 8, !tbaa !9
  %792 = load i32, ptr %12, align 4, !tbaa !5
  %793 = load i32, ptr %8, align 4, !tbaa !5
  %794 = mul nsw i32 10, %793
  %795 = add nsw i32 %792, %794
  %796 = sext i32 %795 to i64
  %797 = getelementptr inbounds double, ptr %791, i64 %796
  %798 = load double, ptr %797, align 8, !tbaa !11
  %799 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %798, double %790)
  %800 = load ptr, ptr %7, align 8, !tbaa !9
  %801 = load i32, ptr %12, align 4, !tbaa !5
  %802 = load i32, ptr %8, align 4, !tbaa !5
  %803 = mul nsw i32 11, %802
  %804 = add nsw i32 %801, %803
  %805 = sext i32 %804 to i64
  %806 = getelementptr inbounds double, ptr %800, i64 %805
  %807 = load double, ptr %806, align 8, !tbaa !11
  %808 = call double @llvm.fmuladd.f64(double 0xBCB5000000000000, double %807, double %799)
  %809 = load ptr, ptr %7, align 8, !tbaa !9
  %810 = load i32, ptr %12, align 4, !tbaa !5
  %811 = load i32, ptr %8, align 4, !tbaa !5
  %812 = mul nsw i32 12, %811
  %813 = add nsw i32 %810, %812
  %814 = sext i32 %813 to i64
  %815 = getelementptr inbounds double, ptr %809, i64 %814
  %816 = load double, ptr %815, align 8, !tbaa !11
  %817 = call double @llvm.fmuladd.f64(double 0xBFEA0946EB3057DC, double %816, double %808)
  %818 = load ptr, ptr %7, align 8, !tbaa !9
  %819 = load i32, ptr %12, align 4, !tbaa !5
  %820 = load i32, ptr %8, align 4, !tbaa !5
  %821 = mul nsw i32 13, %820
  %822 = add nsw i32 %819, %821
  %823 = sext i32 %822 to i64
  %824 = getelementptr inbounds double, ptr %818, i64 %823
  %825 = load double, ptr %824, align 8, !tbaa !11
  %826 = call double @llvm.fmuladd.f64(double 0xBC85000000000000, double %825, double %817)
  %827 = load ptr, ptr %7, align 8, !tbaa !9
  %828 = load i32, ptr %12, align 4, !tbaa !5
  %829 = load i32, ptr %8, align 4, !tbaa !5
  %830 = mul nsw i32 14, %829
  %831 = add nsw i32 %828, %830
  %832 = sext i32 %831 to i64
  %833 = getelementptr inbounds double, ptr %827, i64 %832
  %834 = load double, ptr %833, align 8, !tbaa !11
  %835 = call double @llvm.fmuladd.f64(double 0x3CC1000000000000, double %834, double %826)
  %836 = load ptr, ptr %7, align 8, !tbaa !9
  %837 = load i32, ptr %12, align 4, !tbaa !5
  %838 = load i32, ptr %8, align 4, !tbaa !5
  %839 = mul nsw i32 15, %838
  %840 = add nsw i32 %837, %839
  %841 = sext i32 %840 to i64
  %842 = getelementptr inbounds double, ptr %836, i64 %841
  %843 = load double, ptr %842, align 8, !tbaa !11
  %844 = call double @llvm.fmuladd.f64(double 0xBCB1800000000000, double %843, double %835)
  %845 = load ptr, ptr %7, align 8, !tbaa !9
  %846 = load i32, ptr %12, align 4, !tbaa !5
  %847 = load i32, ptr %8, align 4, !tbaa !5
  %848 = mul nsw i32 16, %847
  %849 = add nsw i32 %846, %848
  %850 = sext i32 %849 to i64
  %851 = getelementptr inbounds double, ptr %845, i64 %850
  %852 = load double, ptr %851, align 8, !tbaa !11
  %853 = call double @llvm.fmuladd.f64(double 0x3CA1000000000001, double %852, double %844)
  %854 = load ptr, ptr %7, align 8, !tbaa !9
  %855 = load i32, ptr %12, align 4, !tbaa !5
  %856 = load i32, ptr %8, align 4, !tbaa !5
  %857 = mul nsw i32 17, %856
  %858 = add nsw i32 %855, %857
  %859 = sext i32 %858 to i64
  %860 = getelementptr inbounds double, ptr %854, i64 %859
  %861 = load double, ptr %860, align 8, !tbaa !11
  %862 = call double @llvm.fmuladd.f64(double 0xBC7C000000000000, double %861, double %853)
  %863 = load ptr, ptr %7, align 8, !tbaa !9
  %864 = load i32, ptr %12, align 4, !tbaa !5
  %865 = load i32, ptr %8, align 4, !tbaa !5
  %866 = mul nsw i32 18, %865
  %867 = add nsw i32 %864, %866
  %868 = sext i32 %867 to i64
  %869 = getelementptr inbounds double, ptr %863, i64 %868
  %870 = load double, ptr %869, align 8, !tbaa !11
  %871 = call double @llvm.fmuladd.f64(double 0x3C9C000000000000, double %870, double %862)
  %872 = load ptr, ptr %7, align 8, !tbaa !9
  %873 = load i32, ptr %12, align 4, !tbaa !5
  %874 = load i32, ptr %8, align 4, !tbaa !5
  %875 = mul nsw i32 19, %874
  %876 = add nsw i32 %873, %875
  %877 = sext i32 %876 to i64
  %878 = getelementptr inbounds double, ptr %872, i64 %877
  %879 = load double, ptr %878, align 8, !tbaa !11
  %880 = call double @llvm.fmuladd.f64(double 0x3C98000000000000, double %879, double %871)
  %881 = load ptr, ptr %7, align 8, !tbaa !9
  %882 = load i32, ptr %12, align 4, !tbaa !5
  %883 = load i32, ptr %8, align 4, !tbaa !5
  %884 = mul nsw i32 20, %883
  %885 = add nsw i32 %882, %884
  %886 = sext i32 %885 to i64
  %887 = getelementptr inbounds double, ptr %881, i64 %886
  %888 = load double, ptr %887, align 8, !tbaa !11
  %889 = call double @llvm.fmuladd.f64(double 0x3CB0000000000000, double %888, double %880)
  %890 = load ptr, ptr %7, align 8, !tbaa !9
  %891 = load i32, ptr %12, align 4, !tbaa !5
  %892 = load i32, ptr %8, align 4, !tbaa !5
  %893 = mul nsw i32 21, %892
  %894 = add nsw i32 %891, %893
  %895 = sext i32 %894 to i64
  %896 = getelementptr inbounds double, ptr %890, i64 %895
  %897 = load double, ptr %896, align 8, !tbaa !11
  %898 = call double @llvm.fmuladd.f64(double 0x3C9C000000000000, double %897, double %889)
  %899 = load ptr, ptr %7, align 8, !tbaa !9
  %900 = load i32, ptr %12, align 4, !tbaa !5
  %901 = load i32, ptr %8, align 4, !tbaa !5
  %902 = mul nsw i32 22, %901
  %903 = add nsw i32 %900, %902
  %904 = sext i32 %903 to i64
  %905 = getelementptr inbounds double, ptr %899, i64 %904
  %906 = load double, ptr %905, align 8, !tbaa !11
  %907 = call double @llvm.fmuladd.f64(double 0x3FD9A613A5CEF635, double %906, double %898)
  %908 = load ptr, ptr %7, align 8, !tbaa !9
  %909 = load i32, ptr %12, align 4, !tbaa !5
  %910 = load i32, ptr %8, align 4, !tbaa !5
  %911 = mul nsw i32 23, %910
  %912 = add nsw i32 %909, %911
  %913 = sext i32 %912 to i64
  %914 = getelementptr inbounds double, ptr %908, i64 %913
  %915 = load double, ptr %914, align 8, !tbaa !11
  %916 = call double @llvm.fmuladd.f64(double 0x3CB3C00000000000, double %915, double %907)
  %917 = load ptr, ptr %7, align 8, !tbaa !9
  %918 = load i32, ptr %12, align 4, !tbaa !5
  %919 = load i32, ptr %8, align 4, !tbaa !5
  %920 = mul nsw i32 24, %919
  %921 = add nsw i32 %918, %920
  %922 = sext i32 %921 to i64
  %923 = getelementptr inbounds double, ptr %917, i64 %922
  %924 = load double, ptr %923, align 8, !tbaa !11
  %925 = call double @llvm.fmuladd.f64(double 0xBCBA000000000000, double %924, double %916)
  %926 = load ptr, ptr %7, align 8, !tbaa !9
  %927 = load i32, ptr %12, align 4, !tbaa !5
  %928 = load i32, ptr %8, align 4, !tbaa !5
  %929 = mul nsw i32 25, %928
  %930 = add nsw i32 %927, %929
  %931 = sext i32 %930 to i64
  %932 = getelementptr inbounds double, ptr %926, i64 %931
  %933 = load double, ptr %932, align 8, !tbaa !11
  %934 = call double @llvm.fmuladd.f64(double 0x3CA1000000000001, double %933, double %925)
  %935 = load ptr, ptr %7, align 8, !tbaa !9
  %936 = load i32, ptr %12, align 4, !tbaa !5
  %937 = load i32, ptr %8, align 4, !tbaa !5
  %938 = mul nsw i32 26, %937
  %939 = add nsw i32 %936, %938
  %940 = sext i32 %939 to i64
  %941 = getelementptr inbounds double, ptr %935, i64 %940
  %942 = load double, ptr %941, align 8, !tbaa !11
  %943 = call double @llvm.fmuladd.f64(double 0x3CAC800000000000, double %942, double %934)
  %944 = load ptr, ptr %7, align 8, !tbaa !9
  %945 = load i32, ptr %12, align 4, !tbaa !5
  %946 = load i32, ptr %8, align 4, !tbaa !5
  %947 = mul nsw i32 27, %946
  %948 = add nsw i32 %945, %947
  %949 = sext i32 %948 to i64
  %950 = getelementptr inbounds double, ptr %944, i64 %949
  %951 = load double, ptr %950, align 8, !tbaa !11
  %952 = call double @llvm.fmuladd.f64(double 0x3C8C000000000000, double %951, double %943)
  %953 = load ptr, ptr %7, align 8, !tbaa !9
  %954 = load i32, ptr %12, align 4, !tbaa !5
  %955 = load i32, ptr %8, align 4, !tbaa !5
  %956 = mul nsw i32 28, %955
  %957 = add nsw i32 %954, %956
  %958 = sext i32 %957 to i64
  %959 = getelementptr inbounds double, ptr %953, i64 %958
  %960 = load double, ptr %959, align 8, !tbaa !11
  %961 = call double @llvm.fmuladd.f64(double 0x3C70000000000001, double %960, double %952)
  %962 = load ptr, ptr %7, align 8, !tbaa !9
  %963 = load i32, ptr %12, align 4, !tbaa !5
  %964 = load i32, ptr %8, align 4, !tbaa !5
  %965 = mul nsw i32 29, %964
  %966 = add nsw i32 %963, %965
  %967 = sext i32 %966 to i64
  %968 = getelementptr inbounds double, ptr %962, i64 %967
  %969 = load double, ptr %968, align 8, !tbaa !11
  %970 = call double @llvm.fmuladd.f64(double 0xBC98000000000000, double %969, double %961)
  %971 = load ptr, ptr %7, align 8, !tbaa !9
  %972 = load i32, ptr %12, align 4, !tbaa !5
  %973 = load i32, ptr %8, align 4, !tbaa !5
  %974 = mul nsw i32 30, %973
  %975 = add nsw i32 %972, %974
  %976 = sext i32 %975 to i64
  %977 = getelementptr inbounds double, ptr %971, i64 %976
  %978 = load double, ptr %977, align 8, !tbaa !11
  %979 = call double @llvm.fmuladd.f64(double 0x3C7C000000000000, double %978, double %970)
  %980 = load ptr, ptr %7, align 8, !tbaa !9
  %981 = load i32, ptr %12, align 4, !tbaa !5
  %982 = load i32, ptr %8, align 4, !tbaa !5
  %983 = mul nsw i32 31, %982
  %984 = add nsw i32 %981, %983
  %985 = sext i32 %984 to i64
  %986 = getelementptr inbounds double, ptr %980, i64 %985
  %987 = load double, ptr %986, align 8, !tbaa !11
  %988 = call double @llvm.fmuladd.f64(double 0x3CA8000000000001, double %987, double %979)
  %989 = load ptr, ptr %7, align 8, !tbaa !9
  %990 = load i32, ptr %12, align 4, !tbaa !5
  %991 = load i32, ptr %8, align 4, !tbaa !5
  %992 = mul nsw i32 32, %991
  %993 = add nsw i32 %990, %992
  %994 = sext i32 %993 to i64
  %995 = getelementptr inbounds double, ptr %989, i64 %994
  %996 = load double, ptr %995, align 8, !tbaa !11
  %997 = call double @llvm.fmuladd.f64(double 0xBFBD29AD687BB056, double %996, double %988)
  %998 = load ptr, ptr %7, align 8, !tbaa !9
  %999 = load i32, ptr %12, align 4, !tbaa !5
  %1000 = load i32, ptr %8, align 4, !tbaa !5
  %1001 = mul nsw i32 33, %1000
  %1002 = add nsw i32 %999, %1001
  %1003 = sext i32 %1002 to i64
  %1004 = getelementptr inbounds double, ptr %998, i64 %1003
  %1005 = load double, ptr %1004, align 8, !tbaa !11
  %1006 = call double @llvm.fmuladd.f64(double 0x3C9B000000000000, double %1005, double %997)
  %1007 = load ptr, ptr %7, align 8, !tbaa !9
  %1008 = load i32, ptr %12, align 4, !tbaa !5
  %1009 = load i32, ptr %8, align 4, !tbaa !5
  %1010 = mul nsw i32 34, %1009
  %1011 = add nsw i32 %1008, %1010
  %1012 = sext i32 %1011 to i64
  %1013 = getelementptr inbounds double, ptr %1007, i64 %1012
  %1014 = load double, ptr %1013, align 8, !tbaa !11
  %1015 = call double @llvm.fmuladd.f64(double 0x3CB1400000000000, double %1014, double %1006)
  %1016 = load ptr, ptr %7, align 8, !tbaa !9
  %1017 = load i32, ptr %12, align 4, !tbaa !5
  %1018 = load i32, ptr %8, align 4, !tbaa !5
  %1019 = mul nsw i32 35, %1018
  %1020 = add nsw i32 %1017, %1019
  %1021 = sext i32 %1020 to i64
  %1022 = getelementptr inbounds double, ptr %1016, i64 %1021
  %1023 = load double, ptr %1022, align 8, !tbaa !11
  %1024 = call double @llvm.fmuladd.f64(double 0xBC94000000000000, double %1023, double %1015)
  %1025 = load ptr, ptr %7, align 8, !tbaa !9
  %1026 = load i32, ptr %12, align 4, !tbaa !5
  %1027 = load i32, ptr %8, align 4, !tbaa !5
  %1028 = mul nsw i32 36, %1027
  %1029 = add nsw i32 %1026, %1028
  %1030 = sext i32 %1029 to i64
  %1031 = getelementptr inbounds double, ptr %1025, i64 %1030
  %1032 = load double, ptr %1031, align 8, !tbaa !11
  %1033 = call double @llvm.fmuladd.f64(double 0xBC82000000000000, double %1032, double %1024)
  %1034 = load ptr, ptr %7, align 8, !tbaa !9
  %1035 = load i32, ptr %12, align 4, !tbaa !5
  %1036 = load i32, ptr %8, align 4, !tbaa !5
  %1037 = mul nsw i32 37, %1036
  %1038 = add nsw i32 %1035, %1037
  %1039 = sext i32 %1038 to i64
  %1040 = getelementptr inbounds double, ptr %1034, i64 %1039
  %1041 = load double, ptr %1040, align 8, !tbaa !11
  %1042 = call double @llvm.fmuladd.f64(double 0xBC84000000000000, double %1041, double %1033)
  %1043 = load ptr, ptr %7, align 8, !tbaa !9
  %1044 = load i32, ptr %12, align 4, !tbaa !5
  %1045 = load i32, ptr %8, align 4, !tbaa !5
  %1046 = mul nsw i32 38, %1045
  %1047 = add nsw i32 %1044, %1046
  %1048 = sext i32 %1047 to i64
  %1049 = getelementptr inbounds double, ptr %1043, i64 %1048
  %1050 = load double, ptr %1049, align 8, !tbaa !11
  %1051 = call double @llvm.fmuladd.f64(double 0x3C70000000000001, double %1050, double %1042)
  %1052 = load ptr, ptr %7, align 8, !tbaa !9
  %1053 = load i32, ptr %12, align 4, !tbaa !5
  %1054 = load i32, ptr %8, align 4, !tbaa !5
  %1055 = mul nsw i32 39, %1054
  %1056 = add nsw i32 %1053, %1055
  %1057 = sext i32 %1056 to i64
  %1058 = getelementptr inbounds double, ptr %1052, i64 %1057
  %1059 = load double, ptr %1058, align 8, !tbaa !11
  %1060 = call double @llvm.fmuladd.f64(double 0xBC8C000000000000, double %1059, double %1051)
  store double %1060, ptr %11, align 8, !tbaa !11
  %1061 = load double, ptr %11, align 8, !tbaa !11
  %1062 = load ptr, ptr %9, align 8, !tbaa !9
  %1063 = load i32, ptr %12, align 4, !tbaa !5
  %1064 = load i32, ptr %10, align 4, !tbaa !5
  %1065 = mul nsw i32 2, %1064
  %1066 = add nsw i32 %1063, %1065
  %1067 = sext i32 %1066 to i64
  %1068 = getelementptr inbounds double, ptr %1062, i64 %1067
  store double %1061, ptr %1068, align 8, !tbaa !11
  %1069 = load ptr, ptr %7, align 8, !tbaa !9
  %1070 = load i32, ptr %12, align 4, !tbaa !5
  %1071 = load i32, ptr %8, align 4, !tbaa !5
  %1072 = mul nsw i32 0, %1071
  %1073 = add nsw i32 %1070, %1072
  %1074 = sext i32 %1073 to i64
  %1075 = getelementptr inbounds double, ptr %1069, i64 %1074
  %1076 = load double, ptr %1075, align 8, !tbaa !11
  %1077 = load ptr, ptr %7, align 8, !tbaa !9
  %1078 = load i32, ptr %12, align 4, !tbaa !5
  %1079 = load i32, ptr %8, align 4, !tbaa !5
  %1080 = mul nsw i32 1, %1079
  %1081 = add nsw i32 %1078, %1080
  %1082 = sext i32 %1081 to i64
  %1083 = getelementptr inbounds double, ptr %1077, i64 %1082
  %1084 = load double, ptr %1083, align 8, !tbaa !11
  %1085 = fmul double 0xBC96000000000000, %1084
  %1086 = call double @llvm.fmuladd.f64(double 0x3CA0800000000001, double %1076, double %1085)
  %1087 = load ptr, ptr %7, align 8, !tbaa !9
  %1088 = load i32, ptr %12, align 4, !tbaa !5
  %1089 = load i32, ptr %8, align 4, !tbaa !5
  %1090 = mul nsw i32 2, %1089
  %1091 = add nsw i32 %1088, %1090
  %1092 = sext i32 %1091 to i64
  %1093 = getelementptr inbounds double, ptr %1087, i64 %1092
  %1094 = load double, ptr %1093, align 8, !tbaa !11
  %1095 = call double @llvm.fmuladd.f64(double 0xBC8B800000000001, double %1094, double %1086)
  %1096 = load ptr, ptr %7, align 8, !tbaa !9
  %1097 = load i32, ptr %12, align 4, !tbaa !5
  %1098 = load i32, ptr %8, align 4, !tbaa !5
  %1099 = mul nsw i32 3, %1098
  %1100 = add nsw i32 %1097, %1099
  %1101 = sext i32 %1100 to i64
  %1102 = getelementptr inbounds double, ptr %1096, i64 %1101
  %1103 = load double, ptr %1102, align 8, !tbaa !11
  %1104 = call double @llvm.fmuladd.f64(double 0x3FF86DB962AC2966, double %1103, double %1095)
  %1105 = load ptr, ptr %7, align 8, !tbaa !9
  %1106 = load i32, ptr %12, align 4, !tbaa !5
  %1107 = load i32, ptr %8, align 4, !tbaa !5
  %1108 = mul nsw i32 4, %1107
  %1109 = add nsw i32 %1106, %1108
  %1110 = sext i32 %1109 to i64
  %1111 = getelementptr inbounds double, ptr %1105, i64 %1110
  %1112 = load double, ptr %1111, align 8, !tbaa !11
  %1113 = call double @llvm.fmuladd.f64(double 0x3C60000000000000, double %1112, double %1104)
  %1114 = load ptr, ptr %7, align 8, !tbaa !9
  %1115 = load i32, ptr %12, align 4, !tbaa !5
  %1116 = load i32, ptr %8, align 4, !tbaa !5
  %1117 = mul nsw i32 5, %1116
  %1118 = add nsw i32 %1115, %1117
  %1119 = sext i32 %1118 to i64
  %1120 = getelementptr inbounds double, ptr %1114, i64 %1119
  %1121 = load double, ptr %1120, align 8, !tbaa !11
  %1122 = call double @llvm.fmuladd.f64(double 0xBCA8000000000001, double %1121, double %1113)
  %1123 = load ptr, ptr %7, align 8, !tbaa !9
  %1124 = load i32, ptr %12, align 4, !tbaa !5
  %1125 = load i32, ptr %8, align 4, !tbaa !5
  %1126 = mul nsw i32 6, %1125
  %1127 = add nsw i32 %1124, %1126
  %1128 = sext i32 %1127 to i64
  %1129 = getelementptr inbounds double, ptr %1123, i64 %1128
  %1130 = load double, ptr %1129, align 8, !tbaa !11
  %1131 = call double @llvm.fmuladd.f64(double 0x3C9A000000000000, double %1130, double %1122)
  %1132 = load ptr, ptr %7, align 8, !tbaa !9
  %1133 = load i32, ptr %12, align 4, !tbaa !5
  %1134 = load i32, ptr %8, align 4, !tbaa !5
  %1135 = mul nsw i32 7, %1134
  %1136 = add nsw i32 %1133, %1135
  %1137 = sext i32 %1136 to i64
  %1138 = getelementptr inbounds double, ptr %1132, i64 %1137
  %1139 = load double, ptr %1138, align 8, !tbaa !11
  %1140 = call double @llvm.fmuladd.f64(double 0xBC9D7FFFFFFFFFFE, double %1139, double %1131)
  %1141 = load ptr, ptr %7, align 8, !tbaa !9
  %1142 = load i32, ptr %12, align 4, !tbaa !5
  %1143 = load i32, ptr %8, align 4, !tbaa !5
  %1144 = mul nsw i32 8, %1143
  %1145 = add nsw i32 %1142, %1144
  %1146 = sext i32 %1145 to i64
  %1147 = getelementptr inbounds double, ptr %1141, i64 %1146
  %1148 = load double, ptr %1147, align 8, !tbaa !11
  %1149 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %1148, double %1140)
  %1150 = load ptr, ptr %7, align 8, !tbaa !9
  %1151 = load i32, ptr %12, align 4, !tbaa !5
  %1152 = load i32, ptr %8, align 4, !tbaa !5
  %1153 = mul nsw i32 9, %1152
  %1154 = add nsw i32 %1151, %1153
  %1155 = sext i32 %1154 to i64
  %1156 = getelementptr inbounds double, ptr %1150, i64 %1155
  %1157 = load double, ptr %1156, align 8, !tbaa !11
  %1158 = call double @llvm.fmuladd.f64(double 0x3C60000000000000, double %1157, double %1149)
  %1159 = load ptr, ptr %7, align 8, !tbaa !9
  %1160 = load i32, ptr %12, align 4, !tbaa !5
  %1161 = load i32, ptr %8, align 4, !tbaa !5
  %1162 = mul nsw i32 10, %1161
  %1163 = add nsw i32 %1160, %1162
  %1164 = sext i32 %1163 to i64
  %1165 = getelementptr inbounds double, ptr %1159, i64 %1164
  %1166 = load double, ptr %1165, align 8, !tbaa !11
  %1167 = call double @llvm.fmuladd.f64(double 0x3C98000000000000, double %1166, double %1158)
  %1168 = load ptr, ptr %7, align 8, !tbaa !9
  %1169 = load i32, ptr %12, align 4, !tbaa !5
  %1170 = load i32, ptr %8, align 4, !tbaa !5
  %1171 = mul nsw i32 11, %1170
  %1172 = add nsw i32 %1169, %1171
  %1173 = sext i32 %1172 to i64
  %1174 = getelementptr inbounds double, ptr %1168, i64 %1173
  %1175 = load double, ptr %1174, align 8, !tbaa !11
  %1176 = call double @llvm.fmuladd.f64(double 0x3C98000000000000, double %1175, double %1167)
  %1177 = load ptr, ptr %7, align 8, !tbaa !9
  %1178 = load i32, ptr %12, align 4, !tbaa !5
  %1179 = load i32, ptr %8, align 4, !tbaa !5
  %1180 = mul nsw i32 12, %1179
  %1181 = add nsw i32 %1178, %1180
  %1182 = sext i32 %1181 to i64
  %1183 = getelementptr inbounds double, ptr %1177, i64 %1182
  %1184 = load double, ptr %1183, align 8, !tbaa !11
  %1185 = call double @llvm.fmuladd.f64(double 0xBC98800000000000, double %1184, double %1176)
  %1186 = load ptr, ptr %7, align 8, !tbaa !9
  %1187 = load i32, ptr %12, align 4, !tbaa !5
  %1188 = load i32, ptr %8, align 4, !tbaa !5
  %1189 = mul nsw i32 13, %1188
  %1190 = add nsw i32 %1187, %1189
  %1191 = sext i32 %1190 to i64
  %1192 = getelementptr inbounds double, ptr %1186, i64 %1191
  %1193 = load double, ptr %1192, align 8, !tbaa !11
  %1194 = call double @llvm.fmuladd.f64(double 0xBFEA0946EB3057D9, double %1193, double %1185)
  %1195 = load ptr, ptr %7, align 8, !tbaa !9
  %1196 = load i32, ptr %12, align 4, !tbaa !5
  %1197 = load i32, ptr %8, align 4, !tbaa !5
  %1198 = mul nsw i32 15, %1197
  %1199 = add nsw i32 %1196, %1198
  %1200 = sext i32 %1199 to i64
  %1201 = getelementptr inbounds double, ptr %1195, i64 %1200
  %1202 = load double, ptr %1201, align 8, !tbaa !11
  %1203 = call double @llvm.fmuladd.f64(double 0x3C96000000000000, double %1202, double %1194)
  %1204 = load ptr, ptr %7, align 8, !tbaa !9
  %1205 = load i32, ptr %12, align 4, !tbaa !5
  %1206 = load i32, ptr %8, align 4, !tbaa !5
  %1207 = mul nsw i32 16, %1206
  %1208 = add nsw i32 %1205, %1207
  %1209 = sext i32 %1208 to i64
  %1210 = getelementptr inbounds double, ptr %1204, i64 %1209
  %1211 = load double, ptr %1210, align 8, !tbaa !11
  %1212 = call double @llvm.fmuladd.f64(double 0xBCA1800000000000, double %1211, double %1203)
  %1213 = load ptr, ptr %7, align 8, !tbaa !9
  %1214 = load i32, ptr %12, align 4, !tbaa !5
  %1215 = load i32, ptr %8, align 4, !tbaa !5
  %1216 = mul nsw i32 17, %1215
  %1217 = add nsw i32 %1214, %1216
  %1218 = sext i32 %1217 to i64
  %1219 = getelementptr inbounds double, ptr %1213, i64 %1218
  %1220 = load double, ptr %1219, align 8, !tbaa !11
  %1221 = call double @llvm.fmuladd.f64(double 0x3C97000000000000, double %1220, double %1212)
  %1222 = load ptr, ptr %7, align 8, !tbaa !9
  %1223 = load i32, ptr %12, align 4, !tbaa !5
  %1224 = load i32, ptr %8, align 4, !tbaa !5
  %1225 = mul nsw i32 18, %1224
  %1226 = add nsw i32 %1223, %1225
  %1227 = sext i32 %1226 to i64
  %1228 = getelementptr inbounds double, ptr %1222, i64 %1227
  %1229 = load double, ptr %1228, align 8, !tbaa !11
  %1230 = call double @llvm.fmuladd.f64(double 0x3C88000000000000, double %1229, double %1221)
  %1231 = load ptr, ptr %7, align 8, !tbaa !9
  %1232 = load i32, ptr %12, align 4, !tbaa !5
  %1233 = load i32, ptr %8, align 4, !tbaa !5
  %1234 = mul nsw i32 20, %1233
  %1235 = add nsw i32 %1232, %1234
  %1236 = sext i32 %1235 to i64
  %1237 = getelementptr inbounds double, ptr %1231, i64 %1236
  %1238 = load double, ptr %1237, align 8, !tbaa !11
  %1239 = call double @llvm.fmuladd.f64(double 0xBC98000000000000, double %1238, double %1230)
  %1240 = load ptr, ptr %7, align 8, !tbaa !9
  %1241 = load i32, ptr %12, align 4, !tbaa !5
  %1242 = load i32, ptr %8, align 4, !tbaa !5
  %1243 = mul nsw i32 21, %1242
  %1244 = add nsw i32 %1241, %1243
  %1245 = sext i32 %1244 to i64
  %1246 = getelementptr inbounds double, ptr %1240, i64 %1245
  %1247 = load double, ptr %1246, align 8, !tbaa !11
  %1248 = call double @llvm.fmuladd.f64(double 0xBC70000000000001, double %1247, double %1239)
  %1249 = load ptr, ptr %7, align 8, !tbaa !9
  %1250 = load i32, ptr %12, align 4, !tbaa !5
  %1251 = load i32, ptr %8, align 4, !tbaa !5
  %1252 = mul nsw i32 22, %1251
  %1253 = add nsw i32 %1250, %1252
  %1254 = sext i32 %1253 to i64
  %1255 = getelementptr inbounds double, ptr %1249, i64 %1254
  %1256 = load double, ptr %1255, align 8, !tbaa !11
  %1257 = call double @llvm.fmuladd.f64(double 0x3C93000000000000, double %1256, double %1248)
  %1258 = load ptr, ptr %7, align 8, !tbaa !9
  %1259 = load i32, ptr %12, align 4, !tbaa !5
  %1260 = load i32, ptr %8, align 4, !tbaa !5
  %1261 = mul nsw i32 23, %1260
  %1262 = add nsw i32 %1259, %1261
  %1263 = sext i32 %1262 to i64
  %1264 = getelementptr inbounds double, ptr %1258, i64 %1263
  %1265 = load double, ptr %1264, align 8, !tbaa !11
  %1266 = call double @llvm.fmuladd.f64(double 0x3FD9A613A5CEF635, double %1265, double %1257)
  %1267 = load ptr, ptr %7, align 8, !tbaa !9
  %1268 = load i32, ptr %12, align 4, !tbaa !5
  %1269 = load i32, ptr %8, align 4, !tbaa !5
  %1270 = mul nsw i32 24, %1269
  %1271 = add nsw i32 %1268, %1270
  %1272 = sext i32 %1271 to i64
  %1273 = getelementptr inbounds double, ptr %1267, i64 %1272
  %1274 = load double, ptr %1273, align 8, !tbaa !11
  %1275 = call double @llvm.fmuladd.f64(double 0xBCAC000000000000, double %1274, double %1266)
  %1276 = load ptr, ptr %7, align 8, !tbaa !9
  %1277 = load i32, ptr %12, align 4, !tbaa !5
  %1278 = load i32, ptr %8, align 4, !tbaa !5
  %1279 = mul nsw i32 25, %1278
  %1280 = add nsw i32 %1277, %1279
  %1281 = sext i32 %1280 to i64
  %1282 = getelementptr inbounds double, ptr %1276, i64 %1281
  %1283 = load double, ptr %1282, align 8, !tbaa !11
  %1284 = call double @llvm.fmuladd.f64(double 0x3C60000000000000, double %1283, double %1275)
  %1285 = load ptr, ptr %7, align 8, !tbaa !9
  %1286 = load i32, ptr %12, align 4, !tbaa !5
  %1287 = load i32, ptr %8, align 4, !tbaa !5
  %1288 = mul nsw i32 26, %1287
  %1289 = add nsw i32 %1286, %1288
  %1290 = sext i32 %1289 to i64
  %1291 = getelementptr inbounds double, ptr %1285, i64 %1290
  %1292 = load double, ptr %1291, align 8, !tbaa !11
  %1293 = call double @llvm.fmuladd.f64(double 0x3CA1800000000000, double %1292, double %1284)
  %1294 = load ptr, ptr %7, align 8, !tbaa !9
  %1295 = load i32, ptr %12, align 4, !tbaa !5
  %1296 = load i32, ptr %8, align 4, !tbaa !5
  %1297 = mul nsw i32 27, %1296
  %1298 = add nsw i32 %1295, %1297
  %1299 = sext i32 %1298 to i64
  %1300 = getelementptr inbounds double, ptr %1294, i64 %1299
  %1301 = load double, ptr %1300, align 8, !tbaa !11
  %1302 = call double @llvm.fmuladd.f64(double 0xBCA5800000000000, double %1301, double %1293)
  %1303 = load ptr, ptr %7, align 8, !tbaa !9
  %1304 = load i32, ptr %12, align 4, !tbaa !5
  %1305 = load i32, ptr %8, align 4, !tbaa !5
  %1306 = mul nsw i32 28, %1305
  %1307 = add nsw i32 %1304, %1306
  %1308 = sext i32 %1307 to i64
  %1309 = getelementptr inbounds double, ptr %1303, i64 %1308
  %1310 = load double, ptr %1309, align 8, !tbaa !11
  %1311 = call double @llvm.fmuladd.f64(double 0x3C98000000000000, double %1310, double %1302)
  %1312 = load ptr, ptr %7, align 8, !tbaa !9
  %1313 = load i32, ptr %12, align 4, !tbaa !5
  %1314 = load i32, ptr %8, align 4, !tbaa !5
  %1315 = mul nsw i32 29, %1314
  %1316 = add nsw i32 %1313, %1315
  %1317 = sext i32 %1316 to i64
  %1318 = getelementptr inbounds double, ptr %1312, i64 %1317
  %1319 = load double, ptr %1318, align 8, !tbaa !11
  %1320 = call double @llvm.fmuladd.f64(double 0xBC70000000000001, double %1319, double %1311)
  %1321 = load ptr, ptr %7, align 8, !tbaa !9
  %1322 = load i32, ptr %12, align 4, !tbaa !5
  %1323 = load i32, ptr %8, align 4, !tbaa !5
  %1324 = mul nsw i32 30, %1323
  %1325 = add nsw i32 %1322, %1324
  %1326 = sext i32 %1325 to i64
  %1327 = getelementptr inbounds double, ptr %1321, i64 %1326
  %1328 = load double, ptr %1327, align 8, !tbaa !11
  %1329 = call double @llvm.fmuladd.f64(double 0xBC9CFFFFFFFFFFFF, double %1328, double %1320)
  %1330 = load ptr, ptr %7, align 8, !tbaa !9
  %1331 = load i32, ptr %12, align 4, !tbaa !5
  %1332 = load i32, ptr %8, align 4, !tbaa !5
  %1333 = mul nsw i32 31, %1332
  %1334 = add nsw i32 %1331, %1333
  %1335 = sext i32 %1334 to i64
  %1336 = getelementptr inbounds double, ptr %1330, i64 %1335
  %1337 = load double, ptr %1336, align 8, !tbaa !11
  %1338 = call double @llvm.fmuladd.f64(double 0xBC89FFFFFFFFFFFF, double %1337, double %1329)
  %1339 = load ptr, ptr %7, align 8, !tbaa !9
  %1340 = load i32, ptr %12, align 4, !tbaa !5
  %1341 = load i32, ptr %8, align 4, !tbaa !5
  %1342 = mul nsw i32 32, %1341
  %1343 = add nsw i32 %1340, %1342
  %1344 = sext i32 %1343 to i64
  %1345 = getelementptr inbounds double, ptr %1339, i64 %1344
  %1346 = load double, ptr %1345, align 8, !tbaa !11
  %1347 = call double @llvm.fmuladd.f64(double 0xBC94000000000000, double %1346, double %1338)
  %1348 = load ptr, ptr %7, align 8, !tbaa !9
  %1349 = load i32, ptr %12, align 4, !tbaa !5
  %1350 = load i32, ptr %8, align 4, !tbaa !5
  %1351 = mul nsw i32 33, %1350
  %1352 = add nsw i32 %1349, %1351
  %1353 = sext i32 %1352 to i64
  %1354 = getelementptr inbounds double, ptr %1348, i64 %1353
  %1355 = load double, ptr %1354, align 8, !tbaa !11
  %1356 = call double @llvm.fmuladd.f64(double 0xBFBD29AD687BB056, double %1355, double %1347)
  %1357 = load ptr, ptr %7, align 8, !tbaa !9
  %1358 = load i32, ptr %12, align 4, !tbaa !5
  %1359 = load i32, ptr %8, align 4, !tbaa !5
  %1360 = mul nsw i32 34, %1359
  %1361 = add nsw i32 %1358, %1360
  %1362 = sext i32 %1361 to i64
  %1363 = getelementptr inbounds double, ptr %1357, i64 %1362
  %1364 = load double, ptr %1363, align 8, !tbaa !11
  %1365 = call double @llvm.fmuladd.f64(double 0xBC93000000000000, double %1364, double %1356)
  %1366 = load ptr, ptr %7, align 8, !tbaa !9
  %1367 = load i32, ptr %12, align 4, !tbaa !5
  %1368 = load i32, ptr %8, align 4, !tbaa !5
  %1369 = mul nsw i32 35, %1368
  %1370 = add nsw i32 %1367, %1369
  %1371 = sext i32 %1370 to i64
  %1372 = getelementptr inbounds double, ptr %1366, i64 %1371
  %1373 = load double, ptr %1372, align 8, !tbaa !11
  %1374 = call double @llvm.fmuladd.f64(double 0x3C98000000000000, double %1373, double %1365)
  %1375 = load ptr, ptr %7, align 8, !tbaa !9
  %1376 = load i32, ptr %12, align 4, !tbaa !5
  %1377 = load i32, ptr %8, align 4, !tbaa !5
  %1378 = mul nsw i32 36, %1377
  %1379 = add nsw i32 %1376, %1378
  %1380 = sext i32 %1379 to i64
  %1381 = getelementptr inbounds double, ptr %1375, i64 %1380
  %1382 = load double, ptr %1381, align 8, !tbaa !11
  %1383 = call double @llvm.fmuladd.f64(double 0xBCA2000000000000, double %1382, double %1374)
  %1384 = load ptr, ptr %7, align 8, !tbaa !9
  %1385 = load i32, ptr %12, align 4, !tbaa !5
  %1386 = load i32, ptr %8, align 4, !tbaa !5
  %1387 = mul nsw i32 37, %1386
  %1388 = add nsw i32 %1385, %1387
  %1389 = sext i32 %1388 to i64
  %1390 = getelementptr inbounds double, ptr %1384, i64 %1389
  %1391 = load double, ptr %1390, align 8, !tbaa !11
  %1392 = call double @llvm.fmuladd.f64(double 0x3C86000000000001, double %1391, double %1383)
  %1393 = load ptr, ptr %7, align 8, !tbaa !9
  %1394 = load i32, ptr %12, align 4, !tbaa !5
  %1395 = load i32, ptr %8, align 4, !tbaa !5
  %1396 = mul nsw i32 38, %1395
  %1397 = add nsw i32 %1394, %1396
  %1398 = sext i32 %1397 to i64
  %1399 = getelementptr inbounds double, ptr %1393, i64 %1398
  %1400 = load double, ptr %1399, align 8, !tbaa !11
  %1401 = call double @llvm.fmuladd.f64(double 0x3C88000000000000, double %1400, double %1392)
  %1402 = load ptr, ptr %7, align 8, !tbaa !9
  %1403 = load i32, ptr %12, align 4, !tbaa !5
  %1404 = load i32, ptr %8, align 4, !tbaa !5
  %1405 = mul nsw i32 39, %1404
  %1406 = add nsw i32 %1403, %1405
  %1407 = sext i32 %1406 to i64
  %1408 = getelementptr inbounds double, ptr %1402, i64 %1407
  %1409 = load double, ptr %1408, align 8, !tbaa !11
  %1410 = call double @llvm.fmuladd.f64(double 0xBC78000000000002, double %1409, double %1401)
  store double %1410, ptr %11, align 8, !tbaa !11
  %1411 = load double, ptr %11, align 8, !tbaa !11
  %1412 = load ptr, ptr %9, align 8, !tbaa !9
  %1413 = load i32, ptr %12, align 4, !tbaa !5
  %1414 = load i32, ptr %10, align 4, !tbaa !5
  %1415 = mul nsw i32 3, %1414
  %1416 = add nsw i32 %1413, %1415
  %1417 = sext i32 %1416 to i64
  %1418 = getelementptr inbounds double, ptr %1412, i64 %1417
  store double %1411, ptr %1418, align 8, !tbaa !11
  %1419 = load ptr, ptr %7, align 8, !tbaa !9
  %1420 = load i32, ptr %12, align 4, !tbaa !5
  %1421 = load i32, ptr %8, align 4, !tbaa !5
  %1422 = mul nsw i32 0, %1421
  %1423 = add nsw i32 %1420, %1422
  %1424 = sext i32 %1423 to i64
  %1425 = getelementptr inbounds double, ptr %1419, i64 %1424
  %1426 = load double, ptr %1425, 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 1, %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 = fmul double 0xBC78000000000002, %1434
  %1436 = call double @llvm.fmuladd.f64(double 0x3CAC000000000000, double %1426, double %1435)
  %1437 = load ptr, ptr %7, align 8, !tbaa !9
  %1438 = load i32, ptr %12, align 4, !tbaa !5
  %1439 = load i32, ptr %8, align 4, !tbaa !5
  %1440 = mul nsw i32 2, %1439
  %1441 = add nsw i32 %1438, %1440
  %1442 = sext i32 %1441 to i64
  %1443 = getelementptr inbounds double, ptr %1437, i64 %1442
  %1444 = load double, ptr %1443, align 8, !tbaa !11
  %1445 = call double @llvm.fmuladd.f64(double 0x3CAF400000000001, double %1444, double %1436)
  %1446 = load ptr, ptr %7, align 8, !tbaa !9
  %1447 = load i32, ptr %12, align 4, !tbaa !5
  %1448 = load i32, ptr %8, align 4, !tbaa !5
  %1449 = mul nsw i32 3, %1448
  %1450 = add nsw i32 %1447, %1449
  %1451 = sext i32 %1450 to i64
  %1452 = getelementptr inbounds double, ptr %1446, i64 %1451
  %1453 = load double, ptr %1452, align 8, !tbaa !11
  %1454 = call double @llvm.fmuladd.f64(double 0xBC9AC00000000000, double %1453, double %1445)
  %1455 = load ptr, ptr %7, align 8, !tbaa !9
  %1456 = load i32, ptr %12, align 4, !tbaa !5
  %1457 = load i32, ptr %8, align 4, !tbaa !5
  %1458 = mul nsw i32 4, %1457
  %1459 = add nsw i32 %1456, %1458
  %1460 = sext i32 %1459 to i64
  %1461 = getelementptr inbounds double, ptr %1455, i64 %1460
  %1462 = load double, ptr %1461, align 8, !tbaa !11
  %1463 = call double @llvm.fmuladd.f64(double 0x3FF86DB962AC2966, double %1462, double %1454)
  %1464 = load ptr, ptr %7, align 8, !tbaa !9
  %1465 = load i32, ptr %12, align 4, !tbaa !5
  %1466 = load i32, ptr %8, align 4, !tbaa !5
  %1467 = mul nsw i32 5, %1466
  %1468 = add nsw i32 %1465, %1467
  %1469 = sext i32 %1468 to i64
  %1470 = getelementptr inbounds double, ptr %1464, i64 %1469
  %1471 = load double, ptr %1470, align 8, !tbaa !11
  %1472 = call double @llvm.fmuladd.f64(double 0xBC99000000000000, double %1471, double %1463)
  %1473 = load ptr, ptr %7, align 8, !tbaa !9
  %1474 = load i32, ptr %12, align 4, !tbaa !5
  %1475 = load i32, ptr %8, align 4, !tbaa !5
  %1476 = mul nsw i32 6, %1475
  %1477 = add nsw i32 %1474, %1476
  %1478 = sext i32 %1477 to i64
  %1479 = getelementptr inbounds double, ptr %1473, i64 %1478
  %1480 = load double, ptr %1479, align 8, !tbaa !11
  %1481 = call double @llvm.fmuladd.f64(double 0x3CAD7FFFFFFFFFFE, double %1480, double %1472)
  %1482 = load ptr, ptr %7, align 8, !tbaa !9
  %1483 = load i32, ptr %12, align 4, !tbaa !5
  %1484 = load i32, ptr %8, align 4, !tbaa !5
  %1485 = mul nsw i32 7, %1484
  %1486 = add nsw i32 %1483, %1485
  %1487 = sext i32 %1486 to i64
  %1488 = getelementptr inbounds double, ptr %1482, i64 %1487
  %1489 = load double, ptr %1488, align 8, !tbaa !11
  %1490 = call double @llvm.fmuladd.f64(double 0xBCB8A00000000000, double %1489, double %1481)
  %1491 = load ptr, ptr %7, align 8, !tbaa !9
  %1492 = load i32, ptr %12, align 4, !tbaa !5
  %1493 = load i32, ptr %8, align 4, !tbaa !5
  %1494 = mul nsw i32 8, %1493
  %1495 = add nsw i32 %1492, %1494
  %1496 = sext i32 %1495 to i64
  %1497 = getelementptr inbounds double, ptr %1491, i64 %1496
  %1498 = load double, ptr %1497, align 8, !tbaa !11
  %1499 = call double @llvm.fmuladd.f64(double 0x3C96000000000000, double %1498, double %1490)
  %1500 = load ptr, ptr %7, align 8, !tbaa !9
  %1501 = load i32, ptr %12, align 4, !tbaa !5
  %1502 = load i32, ptr %8, align 4, !tbaa !5
  %1503 = mul nsw i32 9, %1502
  %1504 = add nsw i32 %1501, %1503
  %1505 = sext i32 %1504 to i64
  %1506 = getelementptr inbounds double, ptr %1500, i64 %1505
  %1507 = load double, ptr %1506, align 8, !tbaa !11
  %1508 = call double @llvm.fmuladd.f64(double 0xBC9A000000000000, double %1507, double %1499)
  %1509 = load ptr, ptr %7, align 8, !tbaa !9
  %1510 = load i32, ptr %12, align 4, !tbaa !5
  %1511 = load i32, ptr %8, align 4, !tbaa !5
  %1512 = mul nsw i32 10, %1511
  %1513 = add nsw i32 %1510, %1512
  %1514 = sext i32 %1513 to i64
  %1515 = getelementptr inbounds double, ptr %1509, i64 %1514
  %1516 = load double, ptr %1515, align 8, !tbaa !11
  %1517 = call double @llvm.fmuladd.f64(double 0x3CC2000000000000, double %1516, double %1508)
  %1518 = load ptr, ptr %7, align 8, !tbaa !9
  %1519 = load i32, ptr %12, align 4, !tbaa !5
  %1520 = load i32, ptr %8, align 4, !tbaa !5
  %1521 = mul nsw i32 11, %1520
  %1522 = add nsw i32 %1519, %1521
  %1523 = sext i32 %1522 to i64
  %1524 = getelementptr inbounds double, ptr %1518, i64 %1523
  %1525 = load double, ptr %1524, align 8, !tbaa !11
  %1526 = call double @llvm.fmuladd.f64(double 0xBC88000000000000, double %1525, double %1517)
  %1527 = load ptr, ptr %7, align 8, !tbaa !9
  %1528 = load i32, ptr %12, align 4, !tbaa !5
  %1529 = load i32, ptr %8, align 4, !tbaa !5
  %1530 = mul nsw i32 12, %1529
  %1531 = add nsw i32 %1528, %1530
  %1532 = sext i32 %1531 to i64
  %1533 = getelementptr inbounds double, ptr %1527, i64 %1532
  %1534 = load double, ptr %1533, align 8, !tbaa !11
  %1535 = call double @llvm.fmuladd.f64(double 0x3C9EFFFFFFFFFFFD, double %1534, double %1526)
  %1536 = load ptr, ptr %7, align 8, !tbaa !9
  %1537 = load i32, ptr %12, align 4, !tbaa !5
  %1538 = load i32, ptr %8, align 4, !tbaa !5
  %1539 = mul nsw i32 13, %1538
  %1540 = add nsw i32 %1537, %1539
  %1541 = sext i32 %1540 to i64
  %1542 = getelementptr inbounds double, ptr %1536, i64 %1541
  %1543 = load double, ptr %1542, align 8, !tbaa !11
  %1544 = call double @llvm.fmuladd.f64(double 0xBC50000000000000, double %1543, double %1535)
  %1545 = load ptr, ptr %7, align 8, !tbaa !9
  %1546 = load i32, ptr %12, align 4, !tbaa !5
  %1547 = load i32, ptr %8, align 4, !tbaa !5
  %1548 = mul nsw i32 14, %1547
  %1549 = add nsw i32 %1546, %1548
  %1550 = sext i32 %1549 to i64
  %1551 = getelementptr inbounds double, ptr %1545, i64 %1550
  %1552 = load double, ptr %1551, align 8, !tbaa !11
  %1553 = call double @llvm.fmuladd.f64(double 0xBFEA0946EB3057DA, double %1552, double %1544)
  %1554 = load ptr, ptr %7, align 8, !tbaa !9
  %1555 = load i32, ptr %12, align 4, !tbaa !5
  %1556 = load i32, ptr %8, align 4, !tbaa !5
  %1557 = mul nsw i32 15, %1556
  %1558 = add nsw i32 %1555, %1557
  %1559 = sext i32 %1558 to i64
  %1560 = getelementptr inbounds double, ptr %1554, i64 %1559
  %1561 = load double, ptr %1560, align 8, !tbaa !11
  %1562 = call double @llvm.fmuladd.f64(double 0xBC70000000000001, double %1561, double %1553)
  %1563 = load ptr, ptr %7, align 8, !tbaa !9
  %1564 = load i32, ptr %12, align 4, !tbaa !5
  %1565 = load i32, ptr %8, align 4, !tbaa !5
  %1566 = mul nsw i32 16, %1565
  %1567 = add nsw i32 %1564, %1566
  %1568 = sext i32 %1567 to i64
  %1569 = getelementptr inbounds double, ptr %1563, i64 %1568
  %1570 = load double, ptr %1569, align 8, !tbaa !11
  %1571 = call double @llvm.fmuladd.f64(double 0x3C8C000000000000, double %1570, double %1562)
  %1572 = load ptr, ptr %7, align 8, !tbaa !9
  %1573 = load i32, ptr %12, align 4, !tbaa !5
  %1574 = load i32, ptr %8, align 4, !tbaa !5
  %1575 = mul nsw i32 17, %1574
  %1576 = add nsw i32 %1573, %1575
  %1577 = sext i32 %1576 to i64
  %1578 = getelementptr inbounds double, ptr %1572, i64 %1577
  %1579 = load double, ptr %1578, align 8, !tbaa !11
  %1580 = call double @llvm.fmuladd.f64(double 0xBC78000000000002, double %1579, double %1571)
  %1581 = load ptr, ptr %7, align 8, !tbaa !9
  %1582 = load i32, ptr %12, align 4, !tbaa !5
  %1583 = load i32, ptr %8, align 4, !tbaa !5
  %1584 = mul nsw i32 18, %1583
  %1585 = add nsw i32 %1582, %1584
  %1586 = sext i32 %1585 to i64
  %1587 = getelementptr inbounds double, ptr %1581, i64 %1586
  %1588 = load double, ptr %1587, align 8, !tbaa !11
  %1589 = call double @llvm.fmuladd.f64(double 0xBC98000000000000, double %1588, double %1580)
  %1590 = load ptr, ptr %7, align 8, !tbaa !9
  %1591 = load i32, ptr %12, align 4, !tbaa !5
  %1592 = load i32, ptr %8, align 4, !tbaa !5
  %1593 = mul nsw i32 19, %1592
  %1594 = add nsw i32 %1591, %1593
  %1595 = sext i32 %1594 to i64
  %1596 = getelementptr inbounds double, ptr %1590, i64 %1595
  %1597 = load double, ptr %1596, align 8, !tbaa !11
  %1598 = call double @llvm.fmuladd.f64(double 0x3C98000000000000, double %1597, double %1589)
  %1599 = load ptr, ptr %7, align 8, !tbaa !9
  %1600 = load i32, ptr %12, align 4, !tbaa !5
  %1601 = load i32, ptr %8, align 4, !tbaa !5
  %1602 = mul nsw i32 20, %1601
  %1603 = add nsw i32 %1600, %1602
  %1604 = sext i32 %1603 to i64
  %1605 = getelementptr inbounds double, ptr %1599, i64 %1604
  %1606 = load double, ptr %1605, align 8, !tbaa !11
  %1607 = call double @llvm.fmuladd.f64(double 0xBCC1000000000000, double %1606, double %1598)
  %1608 = load ptr, ptr %7, align 8, !tbaa !9
  %1609 = load i32, ptr %12, align 4, !tbaa !5
  %1610 = load i32, ptr %8, align 4, !tbaa !5
  %1611 = mul nsw i32 21, %1610
  %1612 = add nsw i32 %1609, %1611
  %1613 = sext i32 %1612 to i64
  %1614 = getelementptr inbounds double, ptr %1608, i64 %1613
  %1615 = load double, ptr %1614, align 8, !tbaa !11
  %1616 = call double @llvm.fmuladd.f64(double 0xBCA2000000000000, double %1615, double %1607)
  %1617 = load ptr, ptr %7, align 8, !tbaa !9
  %1618 = load i32, ptr %12, align 4, !tbaa !5
  %1619 = load i32, ptr %8, align 4, !tbaa !5
  %1620 = mul nsw i32 22, %1619
  %1621 = add nsw i32 %1618, %1620
  %1622 = sext i32 %1621 to i64
  %1623 = getelementptr inbounds double, ptr %1617, i64 %1622
  %1624 = load double, ptr %1623, align 8, !tbaa !11
  %1625 = call double @llvm.fmuladd.f64(double 0xBCAE000000000002, double %1624, double %1616)
  %1626 = load ptr, ptr %7, align 8, !tbaa !9
  %1627 = load i32, ptr %12, align 4, !tbaa !5
  %1628 = load i32, ptr %8, align 4, !tbaa !5
  %1629 = mul nsw i32 23, %1628
  %1630 = add nsw i32 %1627, %1629
  %1631 = sext i32 %1630 to i64
  %1632 = getelementptr inbounds double, ptr %1626, i64 %1631
  %1633 = load double, ptr %1632, align 8, !tbaa !11
  %1634 = call double @llvm.fmuladd.f64(double 0x3CB6400000000001, double %1633, double %1625)
  %1635 = load ptr, ptr %7, align 8, !tbaa !9
  %1636 = load i32, ptr %12, align 4, !tbaa !5
  %1637 = load i32, ptr %8, align 4, !tbaa !5
  %1638 = mul nsw i32 24, %1637
  %1639 = add nsw i32 %1636, %1638
  %1640 = sext i32 %1639 to i64
  %1641 = getelementptr inbounds double, ptr %1635, i64 %1640
  %1642 = load double, ptr %1641, align 8, !tbaa !11
  %1643 = call double @llvm.fmuladd.f64(double 0x3FD9A613A5CEF639, double %1642, double %1634)
  %1644 = load ptr, ptr %7, align 8, !tbaa !9
  %1645 = load i32, ptr %12, align 4, !tbaa !5
  %1646 = load i32, ptr %8, align 4, !tbaa !5
  %1647 = mul nsw i32 25, %1646
  %1648 = add nsw i32 %1645, %1647
  %1649 = sext i32 %1648 to i64
  %1650 = getelementptr inbounds double, ptr %1644, i64 %1649
  %1651 = load double, ptr %1650, align 8, !tbaa !11
  %1652 = call double @llvm.fmuladd.f64(double 0x3CB5000000000000, double %1651, double %1643)
  %1653 = load ptr, ptr %7, align 8, !tbaa !9
  %1654 = load i32, ptr %12, align 4, !tbaa !5
  %1655 = load i32, ptr %8, align 4, !tbaa !5
  %1656 = mul nsw i32 26, %1655
  %1657 = add nsw i32 %1654, %1656
  %1658 = sext i32 %1657 to i64
  %1659 = getelementptr inbounds double, ptr %1653, i64 %1658
  %1660 = load double, ptr %1659, align 8, !tbaa !11
  %1661 = call double @llvm.fmuladd.f64(double 0x3C95000000000000, double %1660, double %1652)
  %1662 = load ptr, ptr %7, align 8, !tbaa !9
  %1663 = load i32, ptr %12, align 4, !tbaa !5
  %1664 = load i32, ptr %8, align 4, !tbaa !5
  %1665 = mul nsw i32 27, %1664
  %1666 = add nsw i32 %1663, %1665
  %1667 = sext i32 %1666 to i64
  %1668 = getelementptr inbounds double, ptr %1662, i64 %1667
  %1669 = load double, ptr %1668, align 8, !tbaa !11
  %1670 = call double @llvm.fmuladd.f64(double 0xBC9B000000000000, double %1669, double %1661)
  %1671 = load ptr, ptr %7, align 8, !tbaa !9
  %1672 = load i32, ptr %12, align 4, !tbaa !5
  %1673 = load i32, ptr %8, align 4, !tbaa !5
  %1674 = mul nsw i32 28, %1673
  %1675 = add nsw i32 %1672, %1674
  %1676 = sext i32 %1675 to i64
  %1677 = getelementptr inbounds double, ptr %1671, i64 %1676
  %1678 = load double, ptr %1677, align 8, !tbaa !11
  %1679 = call double @llvm.fmuladd.f64(double 0x3C88000000000000, double %1678, double %1670)
  %1680 = load ptr, ptr %7, align 8, !tbaa !9
  %1681 = load i32, ptr %12, align 4, !tbaa !5
  %1682 = load i32, ptr %8, align 4, !tbaa !5
  %1683 = mul nsw i32 30, %1682
  %1684 = add nsw i32 %1681, %1683
  %1685 = sext i32 %1684 to i64
  %1686 = getelementptr inbounds double, ptr %1680, i64 %1685
  %1687 = load double, ptr %1686, align 8, !tbaa !11
  %1688 = call double @llvm.fmuladd.f64(double 0xBCA4000000000001, double %1687, double %1679)
  %1689 = load ptr, ptr %7, align 8, !tbaa !9
  %1690 = load i32, ptr %12, align 4, !tbaa !5
  %1691 = load i32, ptr %8, align 4, !tbaa !5
  %1692 = mul nsw i32 31, %1691
  %1693 = add nsw i32 %1690, %1692
  %1694 = sext i32 %1693 to i64
  %1695 = getelementptr inbounds double, ptr %1689, i64 %1694
  %1696 = load double, ptr %1695, align 8, !tbaa !11
  %1697 = call double @llvm.fmuladd.f64(double 0x3C84000000000000, double %1696, double %1688)
  %1698 = load ptr, ptr %7, align 8, !tbaa !9
  %1699 = load i32, ptr %12, align 4, !tbaa !5
  %1700 = load i32, ptr %8, align 4, !tbaa !5
  %1701 = mul nsw i32 32, %1700
  %1702 = add nsw i32 %1699, %1701
  %1703 = sext i32 %1702 to i64
  %1704 = getelementptr inbounds double, ptr %1698, i64 %1703
  %1705 = load double, ptr %1704, align 8, !tbaa !11
  %1706 = call double @llvm.fmuladd.f64(double 0xBC76FFFFFFFFFFFF, double %1705, double %1697)
  %1707 = load ptr, ptr %7, align 8, !tbaa !9
  %1708 = load i32, ptr %12, align 4, !tbaa !5
  %1709 = load i32, ptr %8, align 4, !tbaa !5
  %1710 = mul nsw i32 33, %1709
  %1711 = add nsw i32 %1708, %1710
  %1712 = sext i32 %1711 to i64
  %1713 = getelementptr inbounds double, ptr %1707, i64 %1712
  %1714 = load double, ptr %1713, align 8, !tbaa !11
  %1715 = call double @llvm.fmuladd.f64(double 0xBC817FFFFFFFFFFF, double %1714, double %1706)
  %1716 = load ptr, ptr %7, align 8, !tbaa !9
  %1717 = load i32, ptr %12, align 4, !tbaa !5
  %1718 = load i32, ptr %8, align 4, !tbaa !5
  %1719 = mul nsw i32 34, %1718
  %1720 = add nsw i32 %1717, %1719
  %1721 = sext i32 %1720 to i64
  %1722 = getelementptr inbounds double, ptr %1716, i64 %1721
  %1723 = load double, ptr %1722, align 8, !tbaa !11
  %1724 = call double @llvm.fmuladd.f64(double 0xBFBD29AD687BB056, double %1723, double %1715)
  %1725 = load ptr, ptr %7, align 8, !tbaa !9
  %1726 = load i32, ptr %12, align 4, !tbaa !5
  %1727 = load i32, ptr %8, align 4, !tbaa !5
  %1728 = mul nsw i32 35, %1727
  %1729 = add nsw i32 %1726, %1728
  %1730 = sext i32 %1729 to i64
  %1731 = getelementptr inbounds double, ptr %1725, i64 %1730
  %1732 = load double, ptr %1731, align 8, !tbaa !11
  %1733 = call double @llvm.fmuladd.f64(double 0xBCA1800000000000, double %1732, double %1724)
  %1734 = load ptr, ptr %7, align 8, !tbaa !9
  %1735 = load i32, ptr %12, align 4, !tbaa !5
  %1736 = load i32, ptr %8, align 4, !tbaa !5
  %1737 = mul nsw i32 36, %1736
  %1738 = add nsw i32 %1735, %1737
  %1739 = sext i32 %1738 to i64
  %1740 = getelementptr inbounds double, ptr %1734, i64 %1739
  %1741 = load double, ptr %1740, align 8, !tbaa !11
  %1742 = call double @llvm.fmuladd.f64(double 0x3CAC800000000000, double %1741, double %1733)
  %1743 = load ptr, ptr %7, align 8, !tbaa !9
  %1744 = load i32, ptr %12, align 4, !tbaa !5
  %1745 = load i32, ptr %8, align 4, !tbaa !5
  %1746 = mul nsw i32 37, %1745
  %1747 = add nsw i32 %1744, %1746
  %1748 = sext i32 %1747 to i64
  %1749 = getelementptr inbounds double, ptr %1743, i64 %1748
  %1750 = load double, ptr %1749, align 8, !tbaa !11
  %1751 = call double @llvm.fmuladd.f64(double 0x3CA23FFFFFFFFFFF, double %1750, double %1742)
  %1752 = load ptr, ptr %7, align 8, !tbaa !9
  %1753 = load i32, ptr %12, align 4, !tbaa !5
  %1754 = load i32, ptr %8, align 4, !tbaa !5
  %1755 = mul nsw i32 38, %1754
  %1756 = add nsw i32 %1753, %1755
  %1757 = sext i32 %1756 to i64
  %1758 = getelementptr inbounds double, ptr %1752, i64 %1757
  %1759 = load double, ptr %1758, align 8, !tbaa !11
  %1760 = call double @llvm.fmuladd.f64(double 0x3C60000000000000, double %1759, double %1751)
  %1761 = load ptr, ptr %7, align 8, !tbaa !9
  %1762 = load i32, ptr %12, align 4, !tbaa !5
  %1763 = load i32, ptr %8, align 4, !tbaa !5
  %1764 = mul nsw i32 39, %1763
  %1765 = add nsw i32 %1762, %1764
  %1766 = sext i32 %1765 to i64
  %1767 = getelementptr inbounds double, ptr %1761, i64 %1766
  %1768 = load double, ptr %1767, align 8, !tbaa !11
  %1769 = call double @llvm.fmuladd.f64(double 0xBCA0000000000002, double %1768, double %1760)
  store double %1769, ptr %11, align 8, !tbaa !11
  %1770 = load double, ptr %11, align 8, !tbaa !11
  %1771 = load ptr, ptr %9, align 8, !tbaa !9
  %1772 = load i32, ptr %12, align 4, !tbaa !5
  %1773 = load i32, ptr %10, align 4, !tbaa !5
  %1774 = mul nsw i32 4, %1773
  %1775 = add nsw i32 %1772, %1774
  %1776 = sext i32 %1775 to i64
  %1777 = getelementptr inbounds double, ptr %1771, i64 %1776
  store double %1770, ptr %1777, align 8, !tbaa !11
  %1778 = load ptr, ptr %7, align 8, !tbaa !9
  %1779 = load i32, ptr %12, align 4, !tbaa !5
  %1780 = load i32, ptr %8, align 4, !tbaa !5
  %1781 = mul nsw i32 0, %1780
  %1782 = add nsw i32 %1779, %1781
  %1783 = sext i32 %1782 to i64
  %1784 = getelementptr inbounds double, ptr %1778, i64 %1783
  %1785 = load double, ptr %1784, align 8, !tbaa !11
  %1786 = load ptr, ptr %7, align 8, !tbaa !9
  %1787 = load i32, ptr %12, align 4, !tbaa !5
  %1788 = load i32, ptr %8, align 4, !tbaa !5
  %1789 = mul nsw i32 1, %1788
  %1790 = add nsw i32 %1787, %1789
  %1791 = sext i32 %1790 to i64
  %1792 = getelementptr inbounds double, ptr %1786, i64 %1791
  %1793 = load double, ptr %1792, align 8, !tbaa !11
  %1794 = fmul double 0xBC92000000000000, %1793
  %1795 = call double @llvm.fmuladd.f64(double 0x3CA9FFFFFFFFFFFE, double %1785, double %1794)
  %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 2, %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 = call double @llvm.fmuladd.f64(double 0xBC76000000000001, double %1803, double %1795)
  %1805 = load ptr, ptr %7, align 8, !tbaa !9
  %1806 = load i32, ptr %12, align 4, !tbaa !5
  %1807 = load i32, ptr %8, align 4, !tbaa !5
  %1808 = mul nsw i32 3, %1807
  %1809 = add nsw i32 %1806, %1808
  %1810 = sext i32 %1809 to i64
  %1811 = getelementptr inbounds double, ptr %1805, i64 %1810
  %1812 = load double, ptr %1811, align 8, !tbaa !11
  %1813 = call double @llvm.fmuladd.f64(double 0x3CABA00000000001, double %1812, double %1804)
  %1814 = load ptr, ptr %7, align 8, !tbaa !9
  %1815 = load i32, ptr %12, align 4, !tbaa !5
  %1816 = load i32, ptr %8, align 4, !tbaa !5
  %1817 = mul nsw i32 4, %1816
  %1818 = add nsw i32 %1815, %1817
  %1819 = sext i32 %1818 to i64
  %1820 = getelementptr inbounds double, ptr %1814, i64 %1819
  %1821 = load double, ptr %1820, align 8, !tbaa !11
  %1822 = call double @llvm.fmuladd.f64(double 0x3C93000000000000, double %1821, double %1813)
  %1823 = load ptr, ptr %7, align 8, !tbaa !9
  %1824 = load i32, ptr %12, align 4, !tbaa !5
  %1825 = load i32, ptr %8, align 4, !tbaa !5
  %1826 = mul nsw i32 5, %1825
  %1827 = add nsw i32 %1824, %1826
  %1828 = sext i32 %1827 to i64
  %1829 = getelementptr inbounds double, ptr %1823, i64 %1828
  %1830 = load double, ptr %1829, align 8, !tbaa !11
  %1831 = call double @llvm.fmuladd.f64(double 0x3FF86DB962AC2966, double %1830, double %1822)
  %1832 = load ptr, ptr %7, align 8, !tbaa !9
  %1833 = load i32, ptr %12, align 4, !tbaa !5
  %1834 = load i32, ptr %8, align 4, !tbaa !5
  %1835 = mul nsw i32 6, %1834
  %1836 = add nsw i32 %1833, %1835
  %1837 = sext i32 %1836 to i64
  %1838 = getelementptr inbounds double, ptr %1832, i64 %1837
  %1839 = load double, ptr %1838, align 8, !tbaa !11
  %1840 = call double @llvm.fmuladd.f64(double 0xBC84000000000000, double %1839, double %1831)
  %1841 = load ptr, ptr %7, align 8, !tbaa !9
  %1842 = load i32, ptr %12, align 4, !tbaa !5
  %1843 = load i32, ptr %8, align 4, !tbaa !5
  %1844 = mul nsw i32 7, %1843
  %1845 = add nsw i32 %1842, %1844
  %1846 = sext i32 %1845 to i64
  %1847 = getelementptr inbounds double, ptr %1841, i64 %1846
  %1848 = load double, ptr %1847, align 8, !tbaa !11
  %1849 = call double @llvm.fmuladd.f64(double 0xBC64000000000000, double %1848, double %1840)
  %1850 = load ptr, ptr %7, align 8, !tbaa !9
  %1851 = load i32, ptr %12, align 4, !tbaa !5
  %1852 = load i32, ptr %8, align 4, !tbaa !5
  %1853 = mul nsw i32 8, %1852
  %1854 = add nsw i32 %1851, %1853
  %1855 = sext i32 %1854 to i64
  %1856 = getelementptr inbounds double, ptr %1850, i64 %1855
  %1857 = load double, ptr %1856, align 8, !tbaa !11
  %1858 = call double @llvm.fmuladd.f64(double 0xBCAB000000000001, double %1857, double %1849)
  %1859 = load ptr, ptr %7, align 8, !tbaa !9
  %1860 = load i32, ptr %12, align 4, !tbaa !5
  %1861 = load i32, ptr %8, align 4, !tbaa !5
  %1862 = mul nsw i32 9, %1861
  %1863 = add nsw i32 %1860, %1862
  %1864 = sext i32 %1863 to i64
  %1865 = getelementptr inbounds double, ptr %1859, i64 %1864
  %1866 = load double, ptr %1865, align 8, !tbaa !11
  %1867 = call double @llvm.fmuladd.f64(double 0x3C96000000000000, double %1866, double %1858)
  %1868 = load ptr, ptr %7, align 8, !tbaa !9
  %1869 = load i32, ptr %12, align 4, !tbaa !5
  %1870 = load i32, ptr %8, align 4, !tbaa !5
  %1871 = mul nsw i32 10, %1870
  %1872 = add nsw i32 %1869, %1871
  %1873 = sext i32 %1872 to i64
  %1874 = getelementptr inbounds double, ptr %1868, i64 %1873
  %1875 = load double, ptr %1874, align 8, !tbaa !11
  %1876 = call double @llvm.fmuladd.f64(double 0x3C7FFFFFFFFFFFFF, double %1875, double %1867)
  %1877 = load ptr, ptr %7, align 8, !tbaa !9
  %1878 = load i32, ptr %12, align 4, !tbaa !5
  %1879 = load i32, ptr %8, align 4, !tbaa !5
  %1880 = mul nsw i32 11, %1879
  %1881 = add nsw i32 %1878, %1880
  %1882 = sext i32 %1881 to i64
  %1883 = getelementptr inbounds double, ptr %1877, i64 %1882
  %1884 = load double, ptr %1883, align 8, !tbaa !11
  %1885 = call double @llvm.fmuladd.f64(double 0x3C94000000000000, double %1884, double %1876)
  %1886 = load ptr, ptr %7, align 8, !tbaa !9
  %1887 = load i32, ptr %12, align 4, !tbaa !5
  %1888 = load i32, ptr %8, align 4, !tbaa !5
  %1889 = mul nsw i32 12, %1888
  %1890 = add nsw i32 %1887, %1889
  %1891 = sext i32 %1890 to i64
  %1892 = getelementptr inbounds double, ptr %1886, i64 %1891
  %1893 = load double, ptr %1892, align 8, !tbaa !11
  %1894 = call double @llvm.fmuladd.f64(double 0xBC7C000000000000, double %1893, double %1885)
  %1895 = load ptr, ptr %7, align 8, !tbaa !9
  %1896 = load i32, ptr %12, align 4, !tbaa !5
  %1897 = load i32, ptr %8, align 4, !tbaa !5
  %1898 = mul nsw i32 13, %1897
  %1899 = add nsw i32 %1896, %1898
  %1900 = sext i32 %1899 to i64
  %1901 = getelementptr inbounds double, ptr %1895, i64 %1900
  %1902 = load double, ptr %1901, align 8, !tbaa !11
  %1903 = call double @llvm.fmuladd.f64(double 0x3C89FFFFFFFFFFFF, double %1902, double %1894)
  %1904 = load ptr, ptr %7, align 8, !tbaa !9
  %1905 = load i32, ptr %12, align 4, !tbaa !5
  %1906 = load i32, ptr %8, align 4, !tbaa !5
  %1907 = mul nsw i32 15, %1906
  %1908 = add nsw i32 %1905, %1907
  %1909 = sext i32 %1908 to i64
  %1910 = getelementptr inbounds double, ptr %1904, i64 %1909
  %1911 = load double, ptr %1910, align 8, !tbaa !11
  %1912 = call double @llvm.fmuladd.f64(double 0xBFEA0946EB3057DD, double %1911, double %1903)
  %1913 = load ptr, ptr %7, align 8, !tbaa !9
  %1914 = load i32, ptr %12, align 4, !tbaa !5
  %1915 = load i32, ptr %8, align 4, !tbaa !5
  %1916 = mul nsw i32 16, %1915
  %1917 = add nsw i32 %1914, %1916
  %1918 = sext i32 %1917 to i64
  %1919 = getelementptr inbounds double, ptr %1913, i64 %1918
  %1920 = load double, ptr %1919, align 8, !tbaa !11
  %1921 = call double @llvm.fmuladd.f64(double 0x3CA2FFFFFFFFFFFE, double %1920, double %1912)
  %1922 = load ptr, ptr %7, align 8, !tbaa !9
  %1923 = load i32, ptr %12, align 4, !tbaa !5
  %1924 = load i32, ptr %8, align 4, !tbaa !5
  %1925 = mul nsw i32 17, %1924
  %1926 = add nsw i32 %1923, %1925
  %1927 = sext i32 %1926 to i64
  %1928 = getelementptr inbounds double, ptr %1922, i64 %1927
  %1929 = load double, ptr %1928, align 8, !tbaa !11
  %1930 = call double @llvm.fmuladd.f64(double 0x3C78000000000002, double %1929, double %1921)
  %1931 = load ptr, ptr %7, align 8, !tbaa !9
  %1932 = load i32, ptr %12, align 4, !tbaa !5
  %1933 = load i32, ptr %8, align 4, !tbaa !5
  %1934 = mul nsw i32 18, %1933
  %1935 = add nsw i32 %1932, %1934
  %1936 = sext i32 %1935 to i64
  %1937 = getelementptr inbounds double, ptr %1931, i64 %1936
  %1938 = load double, ptr %1937, align 8, !tbaa !11
  %1939 = call double @llvm.fmuladd.f64(double 0x3C7FFFFFFFFFFFFF, double %1938, double %1930)
  %1940 = load ptr, ptr %7, align 8, !tbaa !9
  %1941 = load i32, ptr %12, align 4, !tbaa !5
  %1942 = load i32, ptr %8, align 4, !tbaa !5
  %1943 = mul nsw i32 19, %1942
  %1944 = add nsw i32 %1941, %1943
  %1945 = sext i32 %1944 to i64
  %1946 = getelementptr inbounds double, ptr %1940, i64 %1945
  %1947 = load double, ptr %1946, align 8, !tbaa !11
  %1948 = call double @llvm.fmuladd.f64(double 0xBC94000000000000, double %1947, double %1939)
  %1949 = load ptr, ptr %7, align 8, !tbaa !9
  %1950 = load i32, ptr %12, align 4, !tbaa !5
  %1951 = load i32, ptr %8, align 4, !tbaa !5
  %1952 = mul nsw i32 20, %1951
  %1953 = add nsw i32 %1950, %1952
  %1954 = sext i32 %1953 to i64
  %1955 = getelementptr inbounds double, ptr %1949, i64 %1954
  %1956 = load double, ptr %1955, align 8, !tbaa !11
  %1957 = call double @llvm.fmuladd.f64(double 0x3C7FFFFFFFFFFFFF, double %1956, double %1948)
  %1958 = load ptr, ptr %7, align 8, !tbaa !9
  %1959 = load i32, ptr %12, align 4, !tbaa !5
  %1960 = load i32, ptr %8, align 4, !tbaa !5
  %1961 = mul nsw i32 21, %1960
  %1962 = add nsw i32 %1959, %1961
  %1963 = sext i32 %1962 to i64
  %1964 = getelementptr inbounds double, ptr %1958, i64 %1963
  %1965 = load double, ptr %1964, align 8, !tbaa !11
  %1966 = call double @llvm.fmuladd.f64(double 0x3C88000000000000, double %1965, double %1957)
  %1967 = load ptr, ptr %7, align 8, !tbaa !9
  %1968 = load i32, ptr %12, align 4, !tbaa !5
  %1969 = load i32, ptr %8, align 4, !tbaa !5
  %1970 = mul nsw i32 22, %1969
  %1971 = add nsw i32 %1968, %1970
  %1972 = sext i32 %1971 to i64
  %1973 = getelementptr inbounds double, ptr %1967, i64 %1972
  %1974 = load double, ptr %1973, align 8, !tbaa !11
  %1975 = call double @llvm.fmuladd.f64(double 0x3C92000000000000, double %1974, double %1966)
  %1976 = load ptr, ptr %7, align 8, !tbaa !9
  %1977 = load i32, ptr %12, align 4, !tbaa !5
  %1978 = load i32, ptr %8, align 4, !tbaa !5
  %1979 = mul nsw i32 23, %1978
  %1980 = add nsw i32 %1977, %1979
  %1981 = sext i32 %1980 to i64
  %1982 = getelementptr inbounds double, ptr %1976, i64 %1981
  %1983 = load double, ptr %1982, align 8, !tbaa !11
  %1984 = call double @llvm.fmuladd.f64(double 0xBCA27FFFFFFFFFFF, double %1983, double %1975)
  %1985 = load ptr, ptr %7, align 8, !tbaa !9
  %1986 = load i32, ptr %12, align 4, !tbaa !5
  %1987 = load i32, ptr %8, align 4, !tbaa !5
  %1988 = mul nsw i32 25, %1987
  %1989 = add nsw i32 %1986, %1988
  %1990 = sext i32 %1989 to i64
  %1991 = getelementptr inbounds double, ptr %1985, i64 %1990
  %1992 = load double, ptr %1991, align 8, !tbaa !11
  %1993 = call double @llvm.fmuladd.f64(double 0x3FD9A613A5CEF639, double %1992, double %1984)
  %1994 = load ptr, ptr %7, align 8, !tbaa !9
  %1995 = load i32, ptr %12, align 4, !tbaa !5
  %1996 = load i32, ptr %8, align 4, !tbaa !5
  %1997 = mul nsw i32 26, %1996
  %1998 = add nsw i32 %1995, %1997
  %1999 = sext i32 %1998 to i64
  %2000 = getelementptr inbounds double, ptr %1994, i64 %1999
  %2001 = load double, ptr %2000, align 8, !tbaa !11
  %2002 = call double @llvm.fmuladd.f64(double 0xBCA7800000000001, double %2001, double %1993)
  %2003 = load ptr, ptr %7, align 8, !tbaa !9
  %2004 = load i32, ptr %12, align 4, !tbaa !5
  %2005 = load i32, ptr %8, align 4, !tbaa !5
  %2006 = mul nsw i32 27, %2005
  %2007 = add nsw i32 %2004, %2006
  %2008 = sext i32 %2007 to i64
  %2009 = getelementptr inbounds double, ptr %2003, i64 %2008
  %2010 = load double, ptr %2009, align 8, !tbaa !11
  %2011 = call double @llvm.fmuladd.f64(double 0xBC86000000000001, double %2010, double %2002)
  %2012 = load ptr, ptr %7, align 8, !tbaa !9
  %2013 = load i32, ptr %12, align 4, !tbaa !5
  %2014 = load i32, ptr %8, align 4, !tbaa !5
  %2015 = mul nsw i32 28, %2014
  %2016 = add nsw i32 %2013, %2015
  %2017 = sext i32 %2016 to i64
  %2018 = getelementptr inbounds double, ptr %2012, i64 %2017
  %2019 = load double, ptr %2018, align 8, !tbaa !11
  %2020 = call double @llvm.fmuladd.f64(double 0xBC88000000000000, double %2019, double %2011)
  %2021 = load ptr, ptr %7, align 8, !tbaa !9
  %2022 = load i32, ptr %12, align 4, !tbaa !5
  %2023 = load i32, ptr %8, align 4, !tbaa !5
  %2024 = mul nsw i32 29, %2023
  %2025 = add nsw i32 %2022, %2024
  %2026 = sext i32 %2025 to i64
  %2027 = getelementptr inbounds double, ptr %2021, i64 %2026
  %2028 = load double, ptr %2027, align 8, !tbaa !11
  %2029 = call double @llvm.fmuladd.f64(double 0x3C98000000000000, double %2028, double %2020)
  %2030 = load ptr, ptr %7, align 8, !tbaa !9
  %2031 = load i32, ptr %12, align 4, !tbaa !5
  %2032 = load i32, ptr %8, align 4, !tbaa !5
  %2033 = mul nsw i32 30, %2032
  %2034 = add nsw i32 %2031, %2033
  %2035 = sext i32 %2034 to i64
  %2036 = getelementptr inbounds double, ptr %2030, i64 %2035
  %2037 = load double, ptr %2036, align 8, !tbaa !11
  %2038 = call double @llvm.fmuladd.f64(double 0xBCAC000000000000, double %2037, double %2029)
  %2039 = load ptr, ptr %7, align 8, !tbaa !9
  %2040 = load i32, ptr %12, align 4, !tbaa !5
  %2041 = load i32, ptr %8, align 4, !tbaa !5
  %2042 = mul nsw i32 31, %2041
  %2043 = add nsw i32 %2040, %2042
  %2044 = sext i32 %2043 to i64
  %2045 = getelementptr inbounds double, ptr %2039, i64 %2044
  %2046 = load double, ptr %2045, align 8, !tbaa !11
  %2047 = call double @llvm.fmuladd.f64(double 0xBC98000000000000, double %2046, double %2038)
  %2048 = load ptr, ptr %7, align 8, !tbaa !9
  %2049 = load i32, ptr %12, align 4, !tbaa !5
  %2050 = load i32, ptr %8, align 4, !tbaa !5
  %2051 = mul nsw i32 32, %2050
  %2052 = add nsw i32 %2049, %2051
  %2053 = sext i32 %2052 to i64
  %2054 = getelementptr inbounds double, ptr %2048, i64 %2053
  %2055 = load double, ptr %2054, align 8, !tbaa !11
  %2056 = call double @llvm.fmuladd.f64(double 0xBC97C00000000000, double %2055, double %2047)
  %2057 = load ptr, ptr %7, align 8, !tbaa !9
  %2058 = load i32, ptr %12, align 4, !tbaa !5
  %2059 = load i32, ptr %8, align 4, !tbaa !5
  %2060 = mul nsw i32 33, %2059
  %2061 = add nsw i32 %2058, %2060
  %2062 = sext i32 %2061 to i64
  %2063 = getelementptr inbounds double, ptr %2057, i64 %2062
  %2064 = load double, ptr %2063, align 8, !tbaa !11
  %2065 = call double @llvm.fmuladd.f64(double 0xBC66000000000000, double %2064, double %2056)
  %2066 = load ptr, ptr %7, align 8, !tbaa !9
  %2067 = load i32, ptr %12, align 4, !tbaa !5
  %2068 = load i32, ptr %8, align 4, !tbaa !5
  %2069 = mul nsw i32 34, %2068
  %2070 = add nsw i32 %2067, %2069
  %2071 = sext i32 %2070 to i64
  %2072 = getelementptr inbounds double, ptr %2066, i64 %2071
  %2073 = load double, ptr %2072, align 8, !tbaa !11
  %2074 = call double @llvm.fmuladd.f64(double 0x3C9A000000000000, double %2073, double %2065)
  %2075 = load ptr, ptr %7, align 8, !tbaa !9
  %2076 = load i32, ptr %12, align 4, !tbaa !5
  %2077 = load i32, ptr %8, align 4, !tbaa !5
  %2078 = mul nsw i32 35, %2077
  %2079 = add nsw i32 %2076, %2078
  %2080 = sext i32 %2079 to i64
  %2081 = getelementptr inbounds double, ptr %2075, i64 %2080
  %2082 = load double, ptr %2081, align 8, !tbaa !11
  %2083 = call double @llvm.fmuladd.f64(double 0xBFBD29AD687BB04F, double %2082, double %2074)
  %2084 = load ptr, ptr %7, align 8, !tbaa !9
  %2085 = load i32, ptr %12, align 4, !tbaa !5
  %2086 = load i32, ptr %8, align 4, !tbaa !5
  %2087 = mul nsw i32 36, %2086
  %2088 = add nsw i32 %2085, %2087
  %2089 = sext i32 %2088 to i64
  %2090 = getelementptr inbounds double, ptr %2084, i64 %2089
  %2091 = load double, ptr %2090, align 8, !tbaa !11
  %2092 = call double @llvm.fmuladd.f64(double 0x3C70000000000001, double %2091, double %2083)
  %2093 = load ptr, ptr %7, align 8, !tbaa !9
  %2094 = load i32, ptr %12, align 4, !tbaa !5
  %2095 = load i32, ptr %8, align 4, !tbaa !5
  %2096 = mul nsw i32 37, %2095
  %2097 = add nsw i32 %2094, %2096
  %2098 = sext i32 %2097 to i64
  %2099 = getelementptr inbounds double, ptr %2093, i64 %2098
  %2100 = load double, ptr %2099, align 8, !tbaa !11
  %2101 = call double @llvm.fmuladd.f64(double 0xBC64000000000000, double %2100, double %2092)
  %2102 = load ptr, ptr %7, align 8, !tbaa !9
  %2103 = load i32, ptr %12, align 4, !tbaa !5
  %2104 = load i32, ptr %8, align 4, !tbaa !5
  %2105 = mul nsw i32 38, %2104
  %2106 = add nsw i32 %2103, %2105
  %2107 = sext i32 %2106 to i64
  %2108 = getelementptr inbounds double, ptr %2102, i64 %2107
  %2109 = load double, ptr %2108, align 8, !tbaa !11
  %2110 = call double @llvm.fmuladd.f64(double 0x3CA4000000000001, double %2109, double %2101)
  %2111 = load ptr, ptr %7, align 8, !tbaa !9
  %2112 = load i32, ptr %12, align 4, !tbaa !5
  %2113 = load i32, ptr %8, align 4, !tbaa !5
  %2114 = mul nsw i32 39, %2113
  %2115 = add nsw i32 %2112, %2114
  %2116 = sext i32 %2115 to i64
  %2117 = getelementptr inbounds double, ptr %2111, i64 %2116
  %2118 = load double, ptr %2117, align 8, !tbaa !11
  %2119 = call double @llvm.fmuladd.f64(double 0xBC8C000000000000, double %2118, double %2110)
  store double %2119, ptr %11, align 8, !tbaa !11
  %2120 = load double, ptr %11, align 8, !tbaa !11
  %2121 = load ptr, ptr %9, align 8, !tbaa !9
  %2122 = load i32, ptr %12, align 4, !tbaa !5
  %2123 = load i32, ptr %10, align 4, !tbaa !5
  %2124 = mul nsw i32 5, %2123
  %2125 = add nsw i32 %2122, %2124
  %2126 = sext i32 %2125 to i64
  %2127 = getelementptr inbounds double, ptr %2121, i64 %2126
  store double %2120, ptr %2127, align 8, !tbaa !11
  %2128 = load ptr, ptr %7, align 8, !tbaa !9
  %2129 = load i32, ptr %12, align 4, !tbaa !5
  %2130 = load i32, ptr %8, align 4, !tbaa !5
  %2131 = mul nsw i32 0, %2130
  %2132 = add nsw i32 %2129, %2131
  %2133 = sext i32 %2132 to i64
  %2134 = getelementptr inbounds double, ptr %2128, i64 %2133
  %2135 = load double, ptr %2134, align 8, !tbaa !11
  %2136 = load ptr, ptr %7, align 8, !tbaa !9
  %2137 = load i32, ptr %12, align 4, !tbaa !5
  %2138 = load i32, ptr %8, align 4, !tbaa !5
  %2139 = mul nsw i32 1, %2138
  %2140 = add nsw i32 %2137, %2139
  %2141 = sext i32 %2140 to i64
  %2142 = getelementptr inbounds double, ptr %2136, i64 %2141
  %2143 = load double, ptr %2142, align 8, !tbaa !11
  %2144 = fmul double 0x3CA0C00000000001, %2143
  %2145 = call double @llvm.fmuladd.f64(double 0xBC9C000000000000, double %2135, double %2144)
  %2146 = load ptr, ptr %7, align 8, !tbaa !9
  %2147 = load i32, ptr %12, align 4, !tbaa !5
  %2148 = load i32, ptr %8, align 4, !tbaa !5
  %2149 = mul nsw i32 2, %2148
  %2150 = add nsw i32 %2147, %2149
  %2151 = sext i32 %2150 to i64
  %2152 = getelementptr inbounds double, ptr %2146, i64 %2151
  %2153 = load double, ptr %2152, align 8, !tbaa !11
  %2154 = call double @llvm.fmuladd.f64(double 0xBCA0700000000001, double %2153, double %2145)
  %2155 = load ptr, ptr %7, align 8, !tbaa !9
  %2156 = load i32, ptr %12, align 4, !tbaa !5
  %2157 = load i32, ptr %8, align 4, !tbaa !5
  %2158 = mul nsw i32 3, %2157
  %2159 = add nsw i32 %2156, %2158
  %2160 = sext i32 %2159 to i64
  %2161 = getelementptr inbounds double, ptr %2155, i64 %2160
  %2162 = load double, ptr %2161, align 8, !tbaa !11
  %2163 = call double @llvm.fmuladd.f64(double 0x3C8FC00000000001, double %2162, double %2154)
  %2164 = load ptr, ptr %7, align 8, !tbaa !9
  %2165 = load i32, ptr %12, align 4, !tbaa !5
  %2166 = load i32, ptr %8, align 4, !tbaa !5
  %2167 = mul nsw i32 4, %2166
  %2168 = add nsw i32 %2165, %2167
  %2169 = sext i32 %2168 to i64
  %2170 = getelementptr inbounds double, ptr %2164, i64 %2169
  %2171 = load double, ptr %2170, align 8, !tbaa !11
  %2172 = call double @llvm.fmuladd.f64(double 0x3C71FFFFFFFFFFFF, double %2171, double %2163)
  %2173 = load ptr, ptr %7, align 8, !tbaa !9
  %2174 = load i32, ptr %12, align 4, !tbaa !5
  %2175 = load i32, ptr %8, align 4, !tbaa !5
  %2176 = mul nsw i32 5, %2175
  %2177 = add nsw i32 %2174, %2176
  %2178 = sext i32 %2177 to i64
  %2179 = getelementptr inbounds double, ptr %2173, i64 %2178
  %2180 = load double, ptr %2179, align 8, !tbaa !11
  %2181 = call double @llvm.fmuladd.f64(double 0x3C79FFFFFFFFFFFF, double %2180, double %2172)
  %2182 = load ptr, ptr %7, align 8, !tbaa !9
  %2183 = load i32, ptr %12, align 4, !tbaa !5
  %2184 = load i32, ptr %8, align 4, !tbaa !5
  %2185 = mul nsw i32 6, %2184
  %2186 = add nsw i32 %2183, %2185
  %2187 = sext i32 %2186 to i64
  %2188 = getelementptr inbounds double, ptr %2182, i64 %2187
  %2189 = load double, ptr %2188, align 8, !tbaa !11
  %2190 = call double @llvm.fmuladd.f64(double 0x3FF86DB962AC2966, double %2189, double %2181)
  %2191 = load ptr, ptr %7, align 8, !tbaa !9
  %2192 = load i32, ptr %12, align 4, !tbaa !5
  %2193 = load i32, ptr %8, align 4, !tbaa !5
  %2194 = mul nsw i32 7, %2193
  %2195 = add nsw i32 %2192, %2194
  %2196 = sext i32 %2195 to i64
  %2197 = getelementptr inbounds double, ptr %2191, i64 %2196
  %2198 = load double, ptr %2197, align 8, !tbaa !11
  %2199 = call double @llvm.fmuladd.f64(double 0x3C91400000000000, double %2198, double %2190)
  %2200 = load ptr, ptr %7, align 8, !tbaa !9
  %2201 = load i32, ptr %12, align 4, !tbaa !5
  %2202 = load i32, ptr %8, align 4, !tbaa !5
  %2203 = mul nsw i32 9, %2202
  %2204 = add nsw i32 %2201, %2203
  %2205 = sext i32 %2204 to i64
  %2206 = getelementptr inbounds double, ptr %2200, i64 %2205
  %2207 = load double, ptr %2206, align 8, !tbaa !11
  %2208 = call double @llvm.fmuladd.f64(double 0xBC84000000000000, double %2207, double %2199)
  %2209 = load ptr, ptr %7, align 8, !tbaa !9
  %2210 = load i32, ptr %12, align 4, !tbaa !5
  %2211 = load i32, ptr %8, align 4, !tbaa !5
  %2212 = mul nsw i32 10, %2211
  %2213 = add nsw i32 %2210, %2212
  %2214 = sext i32 %2213 to i64
  %2215 = getelementptr inbounds double, ptr %2209, i64 %2214
  %2216 = load double, ptr %2215, align 8, !tbaa !11
  %2217 = call double @llvm.fmuladd.f64(double 0x3CB3FFFFFFFFFFFF, double %2216, double %2208)
  %2218 = load ptr, ptr %7, align 8, !tbaa !9
  %2219 = load i32, ptr %12, align 4, !tbaa !5
  %2220 = load i32, ptr %8, align 4, !tbaa !5
  %2221 = mul nsw i32 11, %2220
  %2222 = add nsw i32 %2219, %2221
  %2223 = sext i32 %2222 to i64
  %2224 = getelementptr inbounds double, ptr %2218, i64 %2223
  %2225 = load double, ptr %2224, align 8, !tbaa !11
  %2226 = call double @llvm.fmuladd.f64(double 0xBC98000000000000, double %2225, double %2217)
  %2227 = load ptr, ptr %7, align 8, !tbaa !9
  %2228 = load i32, ptr %12, align 4, !tbaa !5
  %2229 = load i32, ptr %8, align 4, !tbaa !5
  %2230 = mul nsw i32 12, %2229
  %2231 = add nsw i32 %2228, %2230
  %2232 = sext i32 %2231 to i64
  %2233 = getelementptr inbounds double, ptr %2227, i64 %2232
  %2234 = load double, ptr %2233, align 8, !tbaa !11
  %2235 = call double @llvm.fmuladd.f64(double 0xBC8B000000000000, double %2234, double %2226)
  %2236 = load ptr, ptr %7, align 8, !tbaa !9
  %2237 = load i32, ptr %12, align 4, !tbaa !5
  %2238 = load i32, ptr %8, align 4, !tbaa !5
  %2239 = mul nsw i32 13, %2238
  %2240 = add nsw i32 %2237, %2239
  %2241 = sext i32 %2240 to i64
  %2242 = getelementptr inbounds double, ptr %2236, i64 %2241
  %2243 = load double, ptr %2242, align 8, !tbaa !11
  %2244 = call double @llvm.fmuladd.f64(double 0x3CA6DFFFFFFFFFFE, double %2243, double %2235)
  %2245 = load ptr, ptr %7, align 8, !tbaa !9
  %2246 = load i32, ptr %12, align 4, !tbaa !5
  %2247 = load i32, ptr %8, align 4, !tbaa !5
  %2248 = mul nsw i32 14, %2247
  %2249 = add nsw i32 %2246, %2248
  %2250 = sext i32 %2249 to i64
  %2251 = getelementptr inbounds double, ptr %2245, i64 %2250
  %2252 = load double, ptr %2251, align 8, !tbaa !11
  %2253 = call double @llvm.fmuladd.f64(double 0x3CA4800000000001, double %2252, double %2244)
  %2254 = load ptr, ptr %7, align 8, !tbaa !9
  %2255 = load i32, ptr %12, align 4, !tbaa !5
  %2256 = load i32, ptr %8, align 4, !tbaa !5
  %2257 = mul nsw i32 15, %2256
  %2258 = add nsw i32 %2255, %2257
  %2259 = sext i32 %2258 to i64
  %2260 = getelementptr inbounds double, ptr %2254, i64 %2259
  %2261 = load double, ptr %2260, align 8, !tbaa !11
  %2262 = call double @llvm.fmuladd.f64(double 0xBC50000000000000, double %2261, double %2253)
  %2263 = load ptr, ptr %7, align 8, !tbaa !9
  %2264 = load i32, ptr %12, align 4, !tbaa !5
  %2265 = load i32, ptr %8, align 4, !tbaa !5
  %2266 = mul nsw i32 16, %2265
  %2267 = add nsw i32 %2264, %2266
  %2268 = sext i32 %2267 to i64
  %2269 = getelementptr inbounds double, ptr %2263, i64 %2268
  %2270 = load double, ptr %2269, align 8, !tbaa !11
  %2271 = call double @llvm.fmuladd.f64(double 0xBFEA0946EB3057DA, double %2270, double %2262)
  %2272 = load ptr, ptr %7, align 8, !tbaa !9
  %2273 = load i32, ptr %12, align 4, !tbaa !5
  %2274 = load i32, ptr %8, align 4, !tbaa !5
  %2275 = mul nsw i32 17, %2274
  %2276 = add nsw i32 %2273, %2275
  %2277 = sext i32 %2276 to i64
  %2278 = getelementptr inbounds double, ptr %2272, i64 %2277
  %2279 = load double, ptr %2278, align 8, !tbaa !11
  %2280 = call double @llvm.fmuladd.f64(double 0xBC8E000000000000, double %2279, double %2271)
  %2281 = load ptr, ptr %7, align 8, !tbaa !9
  %2282 = load i32, ptr %12, align 4, !tbaa !5
  %2283 = load i32, ptr %8, align 4, !tbaa !5
  %2284 = mul nsw i32 18, %2283
  %2285 = add nsw i32 %2282, %2284
  %2286 = sext i32 %2285 to i64
  %2287 = getelementptr inbounds double, ptr %2281, i64 %2286
  %2288 = load double, ptr %2287, align 8, !tbaa !11
  %2289 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %2288, double %2280)
  %2290 = load ptr, ptr %7, align 8, !tbaa !9
  %2291 = load i32, ptr %12, align 4, !tbaa !5
  %2292 = load i32, ptr %8, align 4, !tbaa !5
  %2293 = mul nsw i32 19, %2292
  %2294 = add nsw i32 %2291, %2293
  %2295 = sext i32 %2294 to i64
  %2296 = getelementptr inbounds double, ptr %2290, i64 %2295
  %2297 = load double, ptr %2296, align 8, !tbaa !11
  %2298 = call double @llvm.fmuladd.f64(double 0x3C78000000000002, double %2297, double %2289)
  %2299 = load ptr, ptr %7, align 8, !tbaa !9
  %2300 = load i32, ptr %12, align 4, !tbaa !5
  %2301 = load i32, ptr %8, align 4, !tbaa !5
  %2302 = mul nsw i32 20, %2301
  %2303 = add nsw i32 %2300, %2302
  %2304 = sext i32 %2303 to i64
  %2305 = getelementptr inbounds double, ptr %2299, i64 %2304
  %2306 = load double, ptr %2305, align 8, !tbaa !11
  %2307 = call double @llvm.fmuladd.f64(double 0xBCA0000000000002, double %2306, double %2298)
  %2308 = load ptr, ptr %7, align 8, !tbaa !9
  %2309 = load i32, ptr %12, align 4, !tbaa !5
  %2310 = load i32, ptr %8, align 4, !tbaa !5
  %2311 = mul nsw i32 21, %2310
  %2312 = add nsw i32 %2309, %2311
  %2313 = sext i32 %2312 to i64
  %2314 = getelementptr inbounds double, ptr %2308, i64 %2313
  %2315 = load double, ptr %2314, align 8, !tbaa !11
  %2316 = call double @llvm.fmuladd.f64(double 0x3C60000000000000, double %2315, double %2307)
  %2317 = load ptr, ptr %7, align 8, !tbaa !9
  %2318 = load i32, ptr %12, align 4, !tbaa !5
  %2319 = load i32, ptr %8, align 4, !tbaa !5
  %2320 = mul nsw i32 22, %2319
  %2321 = add nsw i32 %2318, %2320
  %2322 = sext i32 %2321 to i64
  %2323 = getelementptr inbounds double, ptr %2317, i64 %2322
  %2324 = load double, ptr %2323, align 8, !tbaa !11
  %2325 = call double @llvm.fmuladd.f64(double 0x3C8D000000000001, double %2324, double %2316)
  %2326 = load ptr, ptr %7, align 8, !tbaa !9
  %2327 = load i32, ptr %12, align 4, !tbaa !5
  %2328 = load i32, ptr %8, align 4, !tbaa !5
  %2329 = mul nsw i32 23, %2328
  %2330 = add nsw i32 %2327, %2329
  %2331 = sext i32 %2330 to i64
  %2332 = getelementptr inbounds double, ptr %2326, i64 %2331
  %2333 = load double, ptr %2332, align 8, !tbaa !11
  %2334 = call double @llvm.fmuladd.f64(double 0xBC98400000000000, double %2333, double %2325)
  %2335 = load ptr, ptr %7, align 8, !tbaa !9
  %2336 = load i32, ptr %12, align 4, !tbaa !5
  %2337 = load i32, ptr %8, align 4, !tbaa !5
  %2338 = mul nsw i32 24, %2337
  %2339 = add nsw i32 %2336, %2338
  %2340 = sext i32 %2339 to i64
  %2341 = getelementptr inbounds double, ptr %2335, i64 %2340
  %2342 = load double, ptr %2341, align 8, !tbaa !11
  %2343 = call double @llvm.fmuladd.f64(double 0xBC99000000000000, double %2342, double %2334)
  %2344 = load ptr, ptr %7, align 8, !tbaa !9
  %2345 = load i32, ptr %12, align 4, !tbaa !5
  %2346 = load i32, ptr %8, align 4, !tbaa !5
  %2347 = mul nsw i32 25, %2346
  %2348 = add nsw i32 %2345, %2347
  %2349 = sext i32 %2348 to i64
  %2350 = getelementptr inbounds double, ptr %2344, i64 %2349
  %2351 = load double, ptr %2350, align 8, !tbaa !11
  %2352 = call double @llvm.fmuladd.f64(double 0xBC9B000000000000, double %2351, double %2343)
  %2353 = load ptr, ptr %7, align 8, !tbaa !9
  %2354 = load i32, ptr %12, align 4, !tbaa !5
  %2355 = load i32, ptr %8, align 4, !tbaa !5
  %2356 = mul nsw i32 26, %2355
  %2357 = add nsw i32 %2354, %2356
  %2358 = sext i32 %2357 to i64
  %2359 = getelementptr inbounds double, ptr %2353, i64 %2358
  %2360 = load double, ptr %2359, align 8, !tbaa !11
  %2361 = call double @llvm.fmuladd.f64(double 0x3FD9A613A5CEF63B, double %2360, double %2352)
  %2362 = load ptr, ptr %7, align 8, !tbaa !9
  %2363 = load i32, ptr %12, align 4, !tbaa !5
  %2364 = load i32, ptr %8, align 4, !tbaa !5
  %2365 = mul nsw i32 27, %2364
  %2366 = add nsw i32 %2363, %2365
  %2367 = sext i32 %2366 to i64
  %2368 = getelementptr inbounds double, ptr %2362, i64 %2367
  %2369 = load double, ptr %2368, align 8, !tbaa !11
  %2370 = call double @llvm.fmuladd.f64(double 0xBC64000000000000, double %2369, double %2361)
  %2371 = load ptr, ptr %7, align 8, !tbaa !9
  %2372 = load i32, ptr %12, align 4, !tbaa !5
  %2373 = load i32, ptr %8, align 4, !tbaa !5
  %2374 = mul nsw i32 28, %2373
  %2375 = add nsw i32 %2372, %2374
  %2376 = sext i32 %2375 to i64
  %2377 = getelementptr inbounds double, ptr %2371, i64 %2376
  %2378 = load double, ptr %2377, align 8, !tbaa !11
  %2379 = call double @llvm.fmuladd.f64(double 0x3C92000000000000, double %2378, double %2370)
  %2380 = load ptr, ptr %7, align 8, !tbaa !9
  %2381 = load i32, ptr %12, align 4, !tbaa !5
  %2382 = load i32, ptr %8, align 4, !tbaa !5
  %2383 = mul nsw i32 29, %2382
  %2384 = add nsw i32 %2381, %2383
  %2385 = sext i32 %2384 to i64
  %2386 = getelementptr inbounds double, ptr %2380, i64 %2385
  %2387 = load double, ptr %2386, align 8, !tbaa !11
  %2388 = call double @llvm.fmuladd.f64(double 0x3C78000000000002, double %2387, double %2379)
  %2389 = load ptr, ptr %7, align 8, !tbaa !9
  %2390 = load i32, ptr %12, align 4, !tbaa !5
  %2391 = load i32, ptr %8, align 4, !tbaa !5
  %2392 = mul nsw i32 30, %2391
  %2393 = add nsw i32 %2390, %2392
  %2394 = sext i32 %2393 to i64
  %2395 = getelementptr inbounds double, ptr %2389, i64 %2394
  %2396 = load double, ptr %2395, align 8, !tbaa !11
  %2397 = call double @llvm.fmuladd.f64(double 0x3C7FFFFFFFFFFFFF, double %2396, double %2388)
  %2398 = load ptr, ptr %7, align 8, !tbaa !9
  %2399 = load i32, ptr %12, align 4, !tbaa !5
  %2400 = load i32, ptr %8, align 4, !tbaa !5
  %2401 = mul nsw i32 31, %2400
  %2402 = add nsw i32 %2399, %2401
  %2403 = sext i32 %2402 to i64
  %2404 = getelementptr inbounds double, ptr %2398, i64 %2403
  %2405 = load double, ptr %2404, align 8, !tbaa !11
  %2406 = call double @llvm.fmuladd.f64(double 0x3C40000000000000, double %2405, double %2397)
  %2407 = load ptr, ptr %7, align 8, !tbaa !9
  %2408 = load i32, ptr %12, align 4, !tbaa !5
  %2409 = load i32, ptr %8, align 4, !tbaa !5
  %2410 = mul nsw i32 32, %2409
  %2411 = add nsw i32 %2408, %2410
  %2412 = sext i32 %2411 to i64
  %2413 = getelementptr inbounds double, ptr %2407, i64 %2412
  %2414 = load double, ptr %2413, align 8, !tbaa !11
  %2415 = call double @llvm.fmuladd.f64(double 0x3C50000000000000, double %2414, double %2406)
  %2416 = load ptr, ptr %7, align 8, !tbaa !9
  %2417 = load i32, ptr %12, align 4, !tbaa !5
  %2418 = load i32, ptr %8, align 4, !tbaa !5
  %2419 = mul nsw i32 33, %2418
  %2420 = add nsw i32 %2417, %2419
  %2421 = sext i32 %2420 to i64
  %2422 = getelementptr inbounds double, ptr %2416, i64 %2421
  %2423 = load double, ptr %2422, align 8, !tbaa !11
  %2424 = call double @llvm.fmuladd.f64(double 0xBC97600000000000, double %2423, double %2415)
  %2425 = load ptr, ptr %7, align 8, !tbaa !9
  %2426 = load i32, ptr %12, align 4, !tbaa !5
  %2427 = load i32, ptr %8, align 4, !tbaa !5
  %2428 = mul nsw i32 34, %2427
  %2429 = add nsw i32 %2426, %2428
  %2430 = sext i32 %2429 to i64
  %2431 = getelementptr inbounds double, ptr %2425, i64 %2430
  %2432 = load double, ptr %2431, align 8, !tbaa !11
  %2433 = call double @llvm.fmuladd.f64(double 0xBC85000000000000, double %2432, double %2424)
  %2434 = load ptr, ptr %7, align 8, !tbaa !9
  %2435 = load i32, ptr %12, align 4, !tbaa !5
  %2436 = load i32, ptr %8, align 4, !tbaa !5
  %2437 = mul nsw i32 35, %2436
  %2438 = add nsw i32 %2435, %2437
  %2439 = sext i32 %2438 to i64
  %2440 = getelementptr inbounds double, ptr %2434, i64 %2439
  %2441 = load double, ptr %2440, align 8, !tbaa !11
  %2442 = call double @llvm.fmuladd.f64(double 0x3C6C000000000000, double %2441, double %2433)
  %2443 = load ptr, ptr %7, align 8, !tbaa !9
  %2444 = load i32, ptr %12, align 4, !tbaa !5
  %2445 = load i32, ptr %8, align 4, !tbaa !5
  %2446 = mul nsw i32 36, %2445
  %2447 = add nsw i32 %2444, %2446
  %2448 = sext i32 %2447 to i64
  %2449 = getelementptr inbounds double, ptr %2443, i64 %2448
  %2450 = load double, ptr %2449, align 8, !tbaa !11
  %2451 = call double @llvm.fmuladd.f64(double 0xBFBD29AD687BB05D, double %2450, double %2442)
  %2452 = load ptr, ptr %7, align 8, !tbaa !9
  %2453 = load i32, ptr %12, align 4, !tbaa !5
  %2454 = load i32, ptr %8, align 4, !tbaa !5
  %2455 = mul nsw i32 37, %2454
  %2456 = add nsw i32 %2453, %2455
  %2457 = sext i32 %2456 to i64
  %2458 = getelementptr inbounds double, ptr %2452, i64 %2457
  %2459 = load double, ptr %2458, align 8, !tbaa !11
  %2460 = call double @llvm.fmuladd.f64(double 0x3C71FFFFFFFFFFFF, double %2459, double %2451)
  %2461 = load ptr, ptr %7, align 8, !tbaa !9
  %2462 = load i32, ptr %12, align 4, !tbaa !5
  %2463 = load i32, ptr %8, align 4, !tbaa !5
  %2464 = mul nsw i32 38, %2463
  %2465 = add nsw i32 %2462, %2464
  %2466 = sext i32 %2465 to i64
  %2467 = getelementptr inbounds double, ptr %2461, i64 %2466
  %2468 = load double, ptr %2467, align 8, !tbaa !11
  %2469 = call double @llvm.fmuladd.f64(double 0x3C50000000000000, double %2468, double %2460)
  %2470 = load ptr, ptr %7, align 8, !tbaa !9
  %2471 = load i32, ptr %12, align 4, !tbaa !5
  %2472 = load i32, ptr %8, align 4, !tbaa !5
  %2473 = mul nsw i32 39, %2472
  %2474 = add nsw i32 %2471, %2473
  %2475 = sext i32 %2474 to i64
  %2476 = getelementptr inbounds double, ptr %2470, i64 %2475
  %2477 = load double, ptr %2476, align 8, !tbaa !11
  %2478 = call double @llvm.fmuladd.f64(double 0x3C78000000000002, double %2477, double %2469)
  store double %2478, ptr %11, align 8, !tbaa !11
  %2479 = load double, ptr %11, align 8, !tbaa !11
  %2480 = load ptr, ptr %9, align 8, !tbaa !9
  %2481 = load i32, ptr %12, align 4, !tbaa !5
  %2482 = load i32, ptr %10, align 4, !tbaa !5
  %2483 = mul nsw i32 6, %2482
  %2484 = add nsw i32 %2481, %2483
  %2485 = sext i32 %2484 to i64
  %2486 = getelementptr inbounds double, ptr %2480, i64 %2485
  store double %2479, ptr %2486, align 8, !tbaa !11
  %2487 = load ptr, ptr %7, align 8, !tbaa !9
  %2488 = load i32, ptr %12, align 4, !tbaa !5
  %2489 = load i32, ptr %8, align 4, !tbaa !5
  %2490 = mul nsw i32 0, %2489
  %2491 = add nsw i32 %2488, %2490
  %2492 = sext i32 %2491 to i64
  %2493 = getelementptr inbounds double, ptr %2487, i64 %2492
  %2494 = load double, ptr %2493, align 8, !tbaa !11
  %2495 = load ptr, ptr %7, align 8, !tbaa !9
  %2496 = load i32, ptr %12, align 4, !tbaa !5
  %2497 = load i32, ptr %8, align 4, !tbaa !5
  %2498 = mul nsw i32 1, %2497
  %2499 = add nsw i32 %2496, %2498
  %2500 = sext i32 %2499 to i64
  %2501 = getelementptr inbounds double, ptr %2495, i64 %2500
  %2502 = load double, ptr %2501, align 8, !tbaa !11
  %2503 = fmul double 0x3C74000000000000, %2502
  %2504 = call double @llvm.fmuladd.f64(double 0x3CA1000000000001, double %2494, double %2503)
  %2505 = load ptr, ptr %7, align 8, !tbaa !9
  %2506 = load i32, ptr %12, align 4, !tbaa !5
  %2507 = load i32, ptr %8, align 4, !tbaa !5
  %2508 = mul nsw i32 2, %2507
  %2509 = add nsw i32 %2506, %2508
  %2510 = sext i32 %2509 to i64
  %2511 = getelementptr inbounds double, ptr %2505, i64 %2510
  %2512 = load double, ptr %2511, align 8, !tbaa !11
  %2513 = call double @llvm.fmuladd.f64(double 0xBCA6CFFFFFFFFFFE, double %2512, double %2504)
  %2514 = load ptr, ptr %7, align 8, !tbaa !9
  %2515 = load i32, ptr %12, align 4, !tbaa !5
  %2516 = load i32, ptr %8, align 4, !tbaa !5
  %2517 = mul nsw i32 3, %2516
  %2518 = add nsw i32 %2515, %2517
  %2519 = sext i32 %2518 to i64
  %2520 = getelementptr inbounds double, ptr %2514, i64 %2519
  %2521 = load double, ptr %2520, align 8, !tbaa !11
  %2522 = call double @llvm.fmuladd.f64(double 0x3CAAF00000000001, double %2521, double %2513)
  %2523 = load ptr, ptr %7, align 8, !tbaa !9
  %2524 = load i32, ptr %12, align 4, !tbaa !5
  %2525 = load i32, ptr %8, align 4, !tbaa !5
  %2526 = mul nsw i32 4, %2525
  %2527 = add nsw i32 %2524, %2526
  %2528 = sext i32 %2527 to i64
  %2529 = getelementptr inbounds double, ptr %2523, i64 %2528
  %2530 = load double, ptr %2529, align 8, !tbaa !11
  %2531 = call double @llvm.fmuladd.f64(double 0xBC7E000000000001, double %2530, double %2522)
  %2532 = load ptr, ptr %7, align 8, !tbaa !9
  %2533 = load i32, ptr %12, align 4, !tbaa !5
  %2534 = load i32, ptr %8, align 4, !tbaa !5
  %2535 = mul nsw i32 5, %2534
  %2536 = add nsw i32 %2533, %2535
  %2537 = sext i32 %2536 to i64
  %2538 = getelementptr inbounds double, ptr %2532, i64 %2537
  %2539 = load double, ptr %2538, align 8, !tbaa !11
  %2540 = call double @llvm.fmuladd.f64(double 0x3C90800000000000, double %2539, double %2531)
  %2541 = load ptr, ptr %7, align 8, !tbaa !9
  %2542 = load i32, ptr %12, align 4, !tbaa !5
  %2543 = load i32, ptr %8, align 4, !tbaa !5
  %2544 = mul nsw i32 6, %2543
  %2545 = add nsw i32 %2542, %2544
  %2546 = sext i32 %2545 to i64
  %2547 = getelementptr inbounds double, ptr %2541, i64 %2546
  %2548 = load double, ptr %2547, align 8, !tbaa !11
  %2549 = call double @llvm.fmuladd.f64(double 0xBCBB900000000001, double %2548, double %2540)
  %2550 = load ptr, ptr %7, align 8, !tbaa !9
  %2551 = load i32, ptr %12, align 4, !tbaa !5
  %2552 = load i32, ptr %8, align 4, !tbaa !5
  %2553 = mul nsw i32 7, %2552
  %2554 = add nsw i32 %2551, %2553
  %2555 = sext i32 %2554 to i64
  %2556 = getelementptr inbounds double, ptr %2550, i64 %2555
  %2557 = load double, ptr %2556, align 8, !tbaa !11
  %2558 = call double @llvm.fmuladd.f64(double 0x3FF86DB962AC2966, double %2557, double %2549)
  %2559 = load ptr, ptr %7, align 8, !tbaa !9
  %2560 = load i32, ptr %12, align 4, !tbaa !5
  %2561 = load i32, ptr %8, align 4, !tbaa !5
  %2562 = mul nsw i32 8, %2561
  %2563 = add nsw i32 %2560, %2562
  %2564 = sext i32 %2563 to i64
  %2565 = getelementptr inbounds double, ptr %2559, i64 %2564
  %2566 = load double, ptr %2565, align 8, !tbaa !11
  %2567 = call double @llvm.fmuladd.f64(double 0x3C78000000000002, double %2566, double %2558)
  %2568 = load ptr, ptr %7, align 8, !tbaa !9
  %2569 = load i32, ptr %12, align 4, !tbaa !5
  %2570 = load i32, ptr %8, align 4, !tbaa !5
  %2571 = mul nsw i32 9, %2570
  %2572 = add nsw i32 %2569, %2571
  %2573 = sext i32 %2572 to i64
  %2574 = getelementptr inbounds double, ptr %2568, i64 %2573
  %2575 = load double, ptr %2574, align 8, !tbaa !11
  %2576 = call double @llvm.fmuladd.f64(double 0xBC70000000000001, double %2575, double %2567)
  %2577 = load ptr, ptr %7, align 8, !tbaa !9
  %2578 = load i32, ptr %12, align 4, !tbaa !5
  %2579 = load i32, ptr %8, align 4, !tbaa !5
  %2580 = mul nsw i32 10, %2579
  %2581 = add nsw i32 %2578, %2580
  %2582 = sext i32 %2581 to i64
  %2583 = getelementptr inbounds double, ptr %2577, i64 %2582
  %2584 = load double, ptr %2583, align 8, !tbaa !11
  %2585 = call double @llvm.fmuladd.f64(double 0xBCA0000000000002, double %2584, double %2576)
  %2586 = load ptr, ptr %7, align 8, !tbaa !9
  %2587 = load i32, ptr %12, align 4, !tbaa !5
  %2588 = load i32, ptr %8, align 4, !tbaa !5
  %2589 = mul nsw i32 11, %2588
  %2590 = add nsw i32 %2587, %2589
  %2591 = sext i32 %2590 to i64
  %2592 = getelementptr inbounds double, ptr %2586, i64 %2591
  %2593 = load double, ptr %2592, align 8, !tbaa !11
  %2594 = call double @llvm.fmuladd.f64(double 0xBCA7000000000002, double %2593, double %2585)
  %2595 = load ptr, ptr %7, align 8, !tbaa !9
  %2596 = load i32, ptr %12, align 4, !tbaa !5
  %2597 = load i32, ptr %8, align 4, !tbaa !5
  %2598 = mul nsw i32 12, %2597
  %2599 = add nsw i32 %2596, %2598
  %2600 = sext i32 %2599 to i64
  %2601 = getelementptr inbounds double, ptr %2595, i64 %2600
  %2602 = load double, ptr %2601, align 8, !tbaa !11
  %2603 = call double @llvm.fmuladd.f64(double 0xBC82FFFFFFFFFFFF, double %2602, double %2594)
  %2604 = load ptr, ptr %7, align 8, !tbaa !9
  %2605 = load i32, ptr %12, align 4, !tbaa !5
  %2606 = load i32, ptr %8, align 4, !tbaa !5
  %2607 = mul nsw i32 13, %2606
  %2608 = add nsw i32 %2605, %2607
  %2609 = sext i32 %2608 to i64
  %2610 = getelementptr inbounds double, ptr %2604, i64 %2609
  %2611 = load double, ptr %2610, align 8, !tbaa !11
  %2612 = call double @llvm.fmuladd.f64(double 0x3CA21FFFFFFFFFFF, double %2611, double %2603)
  %2613 = load ptr, ptr %7, align 8, !tbaa !9
  %2614 = load i32, ptr %12, align 4, !tbaa !5
  %2615 = load i32, ptr %8, align 4, !tbaa !5
  %2616 = mul nsw i32 14, %2615
  %2617 = add nsw i32 %2614, %2616
  %2618 = sext i32 %2617 to i64
  %2619 = getelementptr inbounds double, ptr %2613, i64 %2618
  %2620 = load double, ptr %2619, align 8, !tbaa !11
  %2621 = call double @llvm.fmuladd.f64(double 0x3CB8400000000000, double %2620, double %2612)
  %2622 = load ptr, ptr %7, align 8, !tbaa !9
  %2623 = load i32, ptr %12, align 4, !tbaa !5
  %2624 = load i32, ptr %8, align 4, !tbaa !5
  %2625 = mul nsw i32 15, %2624
  %2626 = add nsw i32 %2623, %2625
  %2627 = sext i32 %2626 to i64
  %2628 = getelementptr inbounds double, ptr %2622, i64 %2627
  %2629 = load double, ptr %2628, align 8, !tbaa !11
  %2630 = call double @llvm.fmuladd.f64(double 0xBC89FFFFFFFFFFFF, double %2629, double %2621)
  %2631 = load ptr, ptr %7, align 8, !tbaa !9
  %2632 = load i32, ptr %12, align 4, !tbaa !5
  %2633 = load i32, ptr %8, align 4, !tbaa !5
  %2634 = mul nsw i32 16, %2633
  %2635 = add nsw i32 %2632, %2634
  %2636 = sext i32 %2635 to i64
  %2637 = getelementptr inbounds double, ptr %2631, i64 %2636
  %2638 = load double, ptr %2637, align 8, !tbaa !11
  %2639 = call double @llvm.fmuladd.f64(double 0x3C9E7FFFFFFFFFFD, double %2638, double %2630)
  %2640 = load ptr, ptr %7, align 8, !tbaa !9
  %2641 = load i32, ptr %12, align 4, !tbaa !5
  %2642 = load i32, ptr %8, align 4, !tbaa !5
  %2643 = mul nsw i32 17, %2642
  %2644 = add nsw i32 %2641, %2643
  %2645 = sext i32 %2644 to i64
  %2646 = getelementptr inbounds double, ptr %2640, i64 %2645
  %2647 = load double, ptr %2646, align 8, !tbaa !11
  %2648 = call double @llvm.fmuladd.f64(double 0xBFEA0946EB3057DB, double %2647, double %2639)
  %2649 = load ptr, ptr %7, align 8, !tbaa !9
  %2650 = load i32, ptr %12, align 4, !tbaa !5
  %2651 = load i32, ptr %8, align 4, !tbaa !5
  %2652 = mul nsw i32 18, %2651
  %2653 = add nsw i32 %2650, %2652
  %2654 = sext i32 %2653 to i64
  %2655 = getelementptr inbounds double, ptr %2649, i64 %2654
  %2656 = load double, ptr %2655, align 8, !tbaa !11
  %2657 = call double @llvm.fmuladd.f64(double 0x3C88000000000000, double %2656, double %2648)
  %2658 = load ptr, ptr %7, align 8, !tbaa !9
  %2659 = load i32, ptr %12, align 4, !tbaa !5
  %2660 = load i32, ptr %8, align 4, !tbaa !5
  %2661 = mul nsw i32 19, %2660
  %2662 = add nsw i32 %2659, %2661
  %2663 = sext i32 %2662 to i64
  %2664 = getelementptr inbounds double, ptr %2658, i64 %2663
  %2665 = load double, ptr %2664, align 8, !tbaa !11
  %2666 = call double @llvm.fmuladd.f64(double 0x3C9DFFFFFFFFFFFE, double %2665, double %2657)
  %2667 = load ptr, ptr %7, align 8, !tbaa !9
  %2668 = load i32, ptr %12, align 4, !tbaa !5
  %2669 = load i32, ptr %8, align 4, !tbaa !5
  %2670 = mul nsw i32 20, %2669
  %2671 = add nsw i32 %2668, %2670
  %2672 = sext i32 %2671 to i64
  %2673 = getelementptr inbounds double, ptr %2667, i64 %2672
  %2674 = load double, ptr %2673, align 8, !tbaa !11
  %2675 = call double @llvm.fmuladd.f64(double 0x3CB8000000000001, double %2674, double %2666)
  %2676 = load ptr, ptr %7, align 8, !tbaa !9
  %2677 = load i32, ptr %12, align 4, !tbaa !5
  %2678 = load i32, ptr %8, align 4, !tbaa !5
  %2679 = mul nsw i32 21, %2678
  %2680 = add nsw i32 %2677, %2679
  %2681 = sext i32 %2680 to i64
  %2682 = getelementptr inbounds double, ptr %2676, i64 %2681
  %2683 = load double, ptr %2682, align 8, !tbaa !11
  %2684 = call double @llvm.fmuladd.f64(double 0xBC88000000000000, double %2683, double %2675)
  %2685 = load ptr, ptr %7, align 8, !tbaa !9
  %2686 = load i32, ptr %12, align 4, !tbaa !5
  %2687 = load i32, ptr %8, align 4, !tbaa !5
  %2688 = mul nsw i32 22, %2687
  %2689 = add nsw i32 %2686, %2688
  %2690 = sext i32 %2689 to i64
  %2691 = getelementptr inbounds double, ptr %2685, i64 %2690
  %2692 = load double, ptr %2691, align 8, !tbaa !11
  %2693 = call double @llvm.fmuladd.f64(double 0x3C7C000000000000, double %2692, double %2684)
  %2694 = load ptr, ptr %7, align 8, !tbaa !9
  %2695 = load i32, ptr %12, align 4, !tbaa !5
  %2696 = load i32, ptr %8, align 4, !tbaa !5
  %2697 = mul nsw i32 23, %2696
  %2698 = add nsw i32 %2695, %2697
  %2699 = sext i32 %2698 to i64
  %2700 = getelementptr inbounds double, ptr %2694, i64 %2699
  %2701 = load double, ptr %2700, align 8, !tbaa !11
  %2702 = call double @llvm.fmuladd.f64(double 0x3C76FFFFFFFFFFFF, double %2701, double %2693)
  %2703 = load ptr, ptr %7, align 8, !tbaa !9
  %2704 = load i32, ptr %12, align 4, !tbaa !5
  %2705 = load i32, ptr %8, align 4, !tbaa !5
  %2706 = mul nsw i32 24, %2705
  %2707 = add nsw i32 %2704, %2706
  %2708 = sext i32 %2707 to i64
  %2709 = getelementptr inbounds double, ptr %2703, i64 %2708
  %2710 = load double, ptr %2709, align 8, !tbaa !11
  %2711 = call double @llvm.fmuladd.f64(double 0xBCA4800000000001, double %2710, double %2702)
  %2712 = load ptr, ptr %7, align 8, !tbaa !9
  %2713 = load i32, ptr %12, align 4, !tbaa !5
  %2714 = load i32, ptr %8, align 4, !tbaa !5
  %2715 = mul nsw i32 25, %2714
  %2716 = add nsw i32 %2713, %2715
  %2717 = sext i32 %2716 to i64
  %2718 = getelementptr inbounds double, ptr %2712, i64 %2717
  %2719 = load double, ptr %2718, align 8, !tbaa !11
  %2720 = call double @llvm.fmuladd.f64(double 0xBC8E000000000000, double %2719, double %2711)
  %2721 = load ptr, ptr %7, align 8, !tbaa !9
  %2722 = load i32, ptr %12, align 4, !tbaa !5
  %2723 = load i32, ptr %8, align 4, !tbaa !5
  %2724 = mul nsw i32 27, %2723
  %2725 = add nsw i32 %2722, %2724
  %2726 = sext i32 %2725 to i64
  %2727 = getelementptr inbounds double, ptr %2721, i64 %2726
  %2728 = load double, ptr %2727, align 8, !tbaa !11
  %2729 = call double @llvm.fmuladd.f64(double 0x3FD9A613A5CEF635, double %2728, double %2720)
  %2730 = load ptr, ptr %7, align 8, !tbaa !9
  %2731 = load i32, ptr %12, align 4, !tbaa !5
  %2732 = load i32, ptr %8, align 4, !tbaa !5
  %2733 = mul nsw i32 28, %2732
  %2734 = add nsw i32 %2731, %2733
  %2735 = sext i32 %2734 to i64
  %2736 = getelementptr inbounds double, ptr %2730, i64 %2735
  %2737 = load double, ptr %2736, align 8, !tbaa !11
  %2738 = call double @llvm.fmuladd.f64(double 0x3C88000000000000, double %2737, double %2729)
  %2739 = load ptr, ptr %7, align 8, !tbaa !9
  %2740 = load i32, ptr %12, align 4, !tbaa !5
  %2741 = load i32, ptr %8, align 4, !tbaa !5
  %2742 = mul nsw i32 29, %2741
  %2743 = add nsw i32 %2740, %2742
  %2744 = sext i32 %2743 to i64
  %2745 = getelementptr inbounds double, ptr %2739, i64 %2744
  %2746 = load double, ptr %2745, align 8, !tbaa !11
  %2747 = call double @llvm.fmuladd.f64(double 0xBC92000000000000, double %2746, double %2738)
  %2748 = load ptr, ptr %7, align 8, !tbaa !9
  %2749 = load i32, ptr %12, align 4, !tbaa !5
  %2750 = load i32, ptr %8, align 4, !tbaa !5
  %2751 = mul nsw i32 30, %2750
  %2752 = add nsw i32 %2749, %2751
  %2753 = sext i32 %2752 to i64
  %2754 = getelementptr inbounds double, ptr %2748, i64 %2753
  %2755 = load double, ptr %2754, align 8, !tbaa !11
  %2756 = call double @llvm.fmuladd.f64(double 0xBCA2000000000000, double %2755, double %2747)
  %2757 = load ptr, ptr %7, align 8, !tbaa !9
  %2758 = load i32, ptr %12, align 4, !tbaa !5
  %2759 = load i32, ptr %8, align 4, !tbaa !5
  %2760 = mul nsw i32 31, %2759
  %2761 = add nsw i32 %2758, %2760
  %2762 = sext i32 %2761 to i64
  %2763 = getelementptr inbounds double, ptr %2757, i64 %2762
  %2764 = load double, ptr %2763, align 8, !tbaa !11
  %2765 = call double @llvm.fmuladd.f64(double 0x3CA8C00000000000, double %2764, double %2756)
  %2766 = load ptr, ptr %7, align 8, !tbaa !9
  %2767 = load i32, ptr %12, align 4, !tbaa !5
  %2768 = load i32, ptr %8, align 4, !tbaa !5
  %2769 = mul nsw i32 32, %2768
  %2770 = add nsw i32 %2767, %2769
  %2771 = sext i32 %2770 to i64
  %2772 = getelementptr inbounds double, ptr %2766, i64 %2771
  %2773 = load double, ptr %2772, align 8, !tbaa !11
  %2774 = call double @llvm.fmuladd.f64(double 0xBC86FFFFFFFFFFFF, double %2773, double %2765)
  %2775 = load ptr, ptr %7, align 8, !tbaa !9
  %2776 = load i32, ptr %12, align 4, !tbaa !5
  %2777 = load i32, ptr %8, align 4, !tbaa !5
  %2778 = mul nsw i32 33, %2777
  %2779 = add nsw i32 %2776, %2778
  %2780 = sext i32 %2779 to i64
  %2781 = getelementptr inbounds double, ptr %2775, i64 %2780
  %2782 = load double, ptr %2781, align 8, !tbaa !11
  %2783 = call double @llvm.fmuladd.f64(double 0xBC9F9FFFFFFFFFFC, double %2782, double %2774)
  %2784 = load ptr, ptr %7, align 8, !tbaa !9
  %2785 = load i32, ptr %12, align 4, !tbaa !5
  %2786 = load i32, ptr %8, align 4, !tbaa !5
  %2787 = mul nsw i32 34, %2786
  %2788 = add nsw i32 %2785, %2787
  %2789 = sext i32 %2788 to i64
  %2790 = getelementptr inbounds double, ptr %2784, i64 %2789
  %2791 = load double, ptr %2790, align 8, !tbaa !11
  %2792 = call double @llvm.fmuladd.f64(double 0xBC89000000000000, double %2791, double %2783)
  %2793 = load ptr, ptr %7, align 8, !tbaa !9
  %2794 = load i32, ptr %12, align 4, !tbaa !5
  %2795 = load i32, ptr %8, align 4, !tbaa !5
  %2796 = mul nsw i32 35, %2795
  %2797 = add nsw i32 %2794, %2796
  %2798 = sext i32 %2797 to i64
  %2799 = getelementptr inbounds double, ptr %2793, i64 %2798
  %2800 = load double, ptr %2799, align 8, !tbaa !11
  %2801 = call double @llvm.fmuladd.f64(double 0xBCA1400000000000, double %2800, double %2792)
  %2802 = load ptr, ptr %7, align 8, !tbaa !9
  %2803 = load i32, ptr %12, align 4, !tbaa !5
  %2804 = load i32, ptr %8, align 4, !tbaa !5
  %2805 = mul nsw i32 36, %2804
  %2806 = add nsw i32 %2803, %2805
  %2807 = sext i32 %2806 to i64
  %2808 = getelementptr inbounds double, ptr %2802, i64 %2807
  %2809 = load double, ptr %2808, align 8, !tbaa !11
  %2810 = call double @llvm.fmuladd.f64(double 0xBCA4A00000000001, double %2809, double %2801)
  %2811 = load ptr, ptr %7, align 8, !tbaa !9
  %2812 = load i32, ptr %12, align 4, !tbaa !5
  %2813 = load i32, ptr %8, align 4, !tbaa !5
  %2814 = mul nsw i32 37, %2813
  %2815 = add nsw i32 %2812, %2814
  %2816 = sext i32 %2815 to i64
  %2817 = getelementptr inbounds double, ptr %2811, i64 %2816
  %2818 = load double, ptr %2817, align 8, !tbaa !11
  %2819 = call double @llvm.fmuladd.f64(double 0xBFBD29AD687BB056, double %2818, double %2810)
  %2820 = load ptr, ptr %7, align 8, !tbaa !9
  %2821 = load i32, ptr %12, align 4, !tbaa !5
  %2822 = load i32, ptr %8, align 4, !tbaa !5
  %2823 = mul nsw i32 38, %2822
  %2824 = add nsw i32 %2821, %2823
  %2825 = sext i32 %2824 to i64
  %2826 = getelementptr inbounds double, ptr %2820, i64 %2825
  %2827 = load double, ptr %2826, align 8, !tbaa !11
  %2828 = call double @llvm.fmuladd.f64(double 0xBC67FFFFFFFFFFFE, double %2827, double %2819)
  %2829 = load ptr, ptr %7, align 8, !tbaa !9
  %2830 = load i32, ptr %12, align 4, !tbaa !5
  %2831 = load i32, ptr %8, align 4, !tbaa !5
  %2832 = mul nsw i32 39, %2831
  %2833 = add nsw i32 %2830, %2832
  %2834 = sext i32 %2833 to i64
  %2835 = getelementptr inbounds double, ptr %2829, i64 %2834
  %2836 = load double, ptr %2835, align 8, !tbaa !11
  %2837 = call double @llvm.fmuladd.f64(double 0x3C67FFFFFFFFFFFE, double %2836, double %2828)
  store double %2837, ptr %11, align 8, !tbaa !11
  %2838 = load double, ptr %11, align 8, !tbaa !11
  %2839 = load ptr, ptr %9, align 8, !tbaa !9
  %2840 = load i32, ptr %12, align 4, !tbaa !5
  %2841 = load i32, ptr %10, align 4, !tbaa !5
  %2842 = mul nsw i32 7, %2841
  %2843 = add nsw i32 %2840, %2842
  %2844 = sext i32 %2843 to i64
  %2845 = getelementptr inbounds double, ptr %2839, i64 %2844
  store double %2838, ptr %2845, align 8, !tbaa !11
  %2846 = load ptr, ptr %7, align 8, !tbaa !9
  %2847 = load i32, ptr %12, align 4, !tbaa !5
  %2848 = load i32, ptr %8, align 4, !tbaa !5
  %2849 = mul nsw i32 0, %2848
  %2850 = add nsw i32 %2847, %2849
  %2851 = sext i32 %2850 to i64
  %2852 = getelementptr inbounds double, ptr %2846, i64 %2851
  %2853 = load double, ptr %2852, align 8, !tbaa !11
  %2854 = load ptr, ptr %7, align 8, !tbaa !9
  %2855 = load i32, ptr %12, align 4, !tbaa !5
  %2856 = load i32, ptr %8, align 4, !tbaa !5
  %2857 = mul nsw i32 1, %2856
  %2858 = add nsw i32 %2855, %2857
  %2859 = sext i32 %2858 to i64
  %2860 = getelementptr inbounds double, ptr %2854, i64 %2859
  %2861 = load double, ptr %2860, align 8, !tbaa !11
  %2862 = fmul double 0xBCA5000000000000, %2861
  %2863 = call double @llvm.fmuladd.f64(double 0x3CC5000000000000, double %2853, double %2862)
  %2864 = load ptr, ptr %7, align 8, !tbaa !9
  %2865 = load i32, ptr %12, align 4, !tbaa !5
  %2866 = load i32, ptr %8, align 4, !tbaa !5
  %2867 = mul nsw i32 2, %2866
  %2868 = add nsw i32 %2865, %2867
  %2869 = sext i32 %2868 to i64
  %2870 = getelementptr inbounds double, ptr %2864, i64 %2869
  %2871 = load double, ptr %2870, align 8, !tbaa !11
  %2872 = call double @llvm.fmuladd.f64(double 0x3C6C000000000000, double %2871, double %2863)
  %2873 = load ptr, ptr %7, align 8, !tbaa !9
  %2874 = load i32, ptr %12, align 4, !tbaa !5
  %2875 = load i32, ptr %8, align 4, !tbaa !5
  %2876 = mul nsw i32 3, %2875
  %2877 = add nsw i32 %2874, %2876
  %2878 = sext i32 %2877 to i64
  %2879 = getelementptr inbounds double, ptr %2873, i64 %2878
  %2880 = load double, ptr %2879, align 8, !tbaa !11
  %2881 = call double @llvm.fmuladd.f64(double 0xBC89000000000000, double %2880, double %2872)
  %2882 = load ptr, ptr %7, align 8, !tbaa !9
  %2883 = load i32, ptr %12, align 4, !tbaa !5
  %2884 = load i32, ptr %8, align 4, !tbaa !5
  %2885 = mul nsw i32 4, %2884
  %2886 = add nsw i32 %2883, %2885
  %2887 = sext i32 %2886 to i64
  %2888 = getelementptr inbounds double, ptr %2882, i64 %2887
  %2889 = load double, ptr %2888, align 8, !tbaa !11
  %2890 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %2889, double %2881)
  %2891 = load ptr, ptr %7, align 8, !tbaa !9
  %2892 = load i32, ptr %12, align 4, !tbaa !5
  %2893 = load i32, ptr %8, align 4, !tbaa !5
  %2894 = mul nsw i32 5, %2893
  %2895 = add nsw i32 %2892, %2894
  %2896 = sext i32 %2895 to i64
  %2897 = getelementptr inbounds double, ptr %2891, i64 %2896
  %2898 = load double, ptr %2897, align 8, !tbaa !11
  %2899 = call double @llvm.fmuladd.f64(double 0x3C60000000000000, double %2898, double %2890)
  %2900 = load ptr, ptr %7, align 8, !tbaa !9
  %2901 = load i32, ptr %12, align 4, !tbaa !5
  %2902 = load i32, ptr %8, align 4, !tbaa !5
  %2903 = mul nsw i32 6, %2902
  %2904 = add nsw i32 %2901, %2903
  %2905 = sext i32 %2904 to i64
  %2906 = getelementptr inbounds double, ptr %2900, i64 %2905
  %2907 = load double, ptr %2906, align 8, !tbaa !11
  %2908 = call double @llvm.fmuladd.f64(double 0xBC8C000000000000, double %2907, double %2899)
  %2909 = load ptr, ptr %7, align 8, !tbaa !9
  %2910 = load i32, ptr %12, align 4, !tbaa !5
  %2911 = load i32, ptr %8, align 4, !tbaa !5
  %2912 = mul nsw i32 7, %2911
  %2913 = add nsw i32 %2910, %2912
  %2914 = sext i32 %2913 to i64
  %2915 = getelementptr inbounds double, ptr %2909, i64 %2914
  %2916 = load double, ptr %2915, align 8, !tbaa !11
  %2917 = call double @llvm.fmuladd.f64(double 0x3C99000000000000, double %2916, double %2908)
  %2918 = load ptr, ptr %7, align 8, !tbaa !9
  %2919 = load i32, ptr %12, align 4, !tbaa !5
  %2920 = load i32, ptr %8, align 4, !tbaa !5
  %2921 = mul nsw i32 8, %2920
  %2922 = add nsw i32 %2919, %2921
  %2923 = sext i32 %2922 to i64
  %2924 = getelementptr inbounds double, ptr %2918, i64 %2923
  %2925 = load double, ptr %2924, align 8, !tbaa !11
  %2926 = call double @llvm.fmuladd.f64(double 0x3FF86DB962AC2966, double %2925, double %2917)
  %2927 = load ptr, ptr %7, align 8, !tbaa !9
  %2928 = load i32, ptr %12, align 4, !tbaa !5
  %2929 = load i32, ptr %8, align 4, !tbaa !5
  %2930 = mul nsw i32 9, %2929
  %2931 = add nsw i32 %2928, %2930
  %2932 = sext i32 %2931 to i64
  %2933 = getelementptr inbounds double, ptr %2927, i64 %2932
  %2934 = load double, ptr %2933, align 8, !tbaa !11
  %2935 = call double @llvm.fmuladd.f64(double 0x3C94000000000000, double %2934, double %2926)
  %2936 = load ptr, ptr %7, align 8, !tbaa !9
  %2937 = load i32, ptr %12, align 4, !tbaa !5
  %2938 = load i32, ptr %8, align 4, !tbaa !5
  %2939 = mul nsw i32 10, %2938
  %2940 = add nsw i32 %2937, %2939
  %2941 = sext i32 %2940 to i64
  %2942 = getelementptr inbounds double, ptr %2936, i64 %2941
  %2943 = load double, ptr %2942, align 8, !tbaa !11
  %2944 = call double @llvm.fmuladd.f64(double 0xBCA4000000000001, double %2943, double %2935)
  %2945 = load ptr, ptr %7, align 8, !tbaa !9
  %2946 = load i32, ptr %12, align 4, !tbaa !5
  %2947 = load i32, ptr %8, align 4, !tbaa !5
  %2948 = mul nsw i32 11, %2947
  %2949 = add nsw i32 %2946, %2948
  %2950 = sext i32 %2949 to i64
  %2951 = getelementptr inbounds double, ptr %2945, i64 %2950
  %2952 = load double, ptr %2951, align 8, !tbaa !11
  %2953 = call double @llvm.fmuladd.f64(double 0x3CAC000000000000, double %2952, double %2944)
  %2954 = load ptr, ptr %7, align 8, !tbaa !9
  %2955 = load i32, ptr %12, align 4, !tbaa !5
  %2956 = load i32, ptr %8, align 4, !tbaa !5
  %2957 = mul nsw i32 12, %2956
  %2958 = add nsw i32 %2955, %2957
  %2959 = sext i32 %2958 to i64
  %2960 = getelementptr inbounds double, ptr %2954, i64 %2959
  %2961 = load double, ptr %2960, align 8, !tbaa !11
  %2962 = call double @llvm.fmuladd.f64(double 0xBC84000000000000, double %2961, double %2953)
  %2963 = load ptr, ptr %7, align 8, !tbaa !9
  %2964 = load i32, ptr %12, align 4, !tbaa !5
  %2965 = load i32, ptr %8, align 4, !tbaa !5
  %2966 = mul nsw i32 13, %2965
  %2967 = add nsw i32 %2964, %2966
  %2968 = sext i32 %2967 to i64
  %2969 = getelementptr inbounds double, ptr %2963, i64 %2968
  %2970 = load double, ptr %2969, align 8, !tbaa !11
  %2971 = call double @llvm.fmuladd.f64(double 0xBCA0000000000002, double %2970, double %2962)
  %2972 = load ptr, ptr %7, align 8, !tbaa !9
  %2973 = load i32, ptr %12, align 4, !tbaa !5
  %2974 = load i32, ptr %8, align 4, !tbaa !5
  %2975 = mul nsw i32 14, %2974
  %2976 = add nsw i32 %2973, %2975
  %2977 = sext i32 %2976 to i64
  %2978 = getelementptr inbounds double, ptr %2972, i64 %2977
  %2979 = load double, ptr %2978, align 8, !tbaa !11
  %2980 = call double @llvm.fmuladd.f64(double 0xBCA9FFFFFFFFFFFE, double %2979, double %2971)
  %2981 = load ptr, ptr %7, align 8, !tbaa !9
  %2982 = load i32, ptr %12, align 4, !tbaa !5
  %2983 = load i32, ptr %8, align 4, !tbaa !5
  %2984 = mul nsw i32 16, %2983
  %2985 = add nsw i32 %2982, %2984
  %2986 = sext i32 %2985 to i64
  %2987 = getelementptr inbounds double, ptr %2981, i64 %2986
  %2988 = load double, ptr %2987, align 8, !tbaa !11
  %2989 = call double @llvm.fmuladd.f64(double 0x3CA1000000000001, double %2988, double %2980)
  %2990 = load ptr, ptr %7, align 8, !tbaa !9
  %2991 = load i32, ptr %12, align 4, !tbaa !5
  %2992 = load i32, ptr %8, align 4, !tbaa !5
  %2993 = mul nsw i32 17, %2992
  %2994 = add nsw i32 %2991, %2993
  %2995 = sext i32 %2994 to i64
  %2996 = getelementptr inbounds double, ptr %2990, i64 %2995
  %2997 = load double, ptr %2996, align 8, !tbaa !11
  %2998 = call double @llvm.fmuladd.f64(double 0xBC60000000000000, double %2997, double %2989)
  %2999 = load ptr, ptr %7, align 8, !tbaa !9
  %3000 = load i32, ptr %12, align 4, !tbaa !5
  %3001 = load i32, ptr %8, align 4, !tbaa !5
  %3002 = mul nsw i32 18, %3001
  %3003 = add nsw i32 %3000, %3002
  %3004 = sext i32 %3003 to i64
  %3005 = getelementptr inbounds double, ptr %2999, i64 %3004
  %3006 = load double, ptr %3005, align 8, !tbaa !11
  %3007 = call double @llvm.fmuladd.f64(double 0xBFEA0946EB3057DB, double %3006, double %2998)
  %3008 = load ptr, ptr %7, align 8, !tbaa !9
  %3009 = load i32, ptr %12, align 4, !tbaa !5
  %3010 = load i32, ptr %8, align 4, !tbaa !5
  %3011 = mul nsw i32 19, %3010
  %3012 = add nsw i32 %3009, %3011
  %3013 = sext i32 %3012 to i64
  %3014 = getelementptr inbounds double, ptr %3008, i64 %3013
  %3015 = load double, ptr %3014, align 8, !tbaa !11
  %3016 = call double @llvm.fmuladd.f64(double 0x3C7FFFFFFFFFFFFF, double %3015, double %3007)
  %3017 = load ptr, ptr %7, align 8, !tbaa !9
  %3018 = load i32, ptr %12, align 4, !tbaa !5
  %3019 = load i32, ptr %8, align 4, !tbaa !5
  %3020 = mul nsw i32 20, %3019
  %3021 = add nsw i32 %3018, %3020
  %3022 = sext i32 %3021 to i64
  %3023 = getelementptr inbounds double, ptr %3017, i64 %3022
  %3024 = load double, ptr %3023, align 8, !tbaa !11
  %3025 = call double @llvm.fmuladd.f64(double 0xBCA4000000000001, double %3024, double %3016)
  %3026 = load ptr, ptr %7, align 8, !tbaa !9
  %3027 = load i32, ptr %12, align 4, !tbaa !5
  %3028 = load i32, ptr %8, align 4, !tbaa !5
  %3029 = mul nsw i32 21, %3028
  %3030 = add nsw i32 %3027, %3029
  %3031 = sext i32 %3030 to i64
  %3032 = getelementptr inbounds double, ptr %3026, i64 %3031
  %3033 = load double, ptr %3032, align 8, !tbaa !11
  %3034 = call double @llvm.fmuladd.f64(double 0xBCA4000000000001, double %3033, double %3025)
  %3035 = load ptr, ptr %7, align 8, !tbaa !9
  %3036 = load i32, ptr %12, align 4, !tbaa !5
  %3037 = load i32, ptr %8, align 4, !tbaa !5
  %3038 = mul nsw i32 22, %3037
  %3039 = add nsw i32 %3036, %3038
  %3040 = sext i32 %3039 to i64
  %3041 = getelementptr inbounds double, ptr %3035, i64 %3040
  %3042 = load double, ptr %3041, align 8, !tbaa !11
  %3043 = call double @llvm.fmuladd.f64(double 0x3CA5000000000000, double %3042, double %3034)
  %3044 = load ptr, ptr %7, align 8, !tbaa !9
  %3045 = load i32, ptr %12, align 4, !tbaa !5
  %3046 = load i32, ptr %8, align 4, !tbaa !5
  %3047 = mul nsw i32 23, %3046
  %3048 = add nsw i32 %3045, %3047
  %3049 = sext i32 %3048 to i64
  %3050 = getelementptr inbounds double, ptr %3044, i64 %3049
  %3051 = load double, ptr %3050, align 8, !tbaa !11
  %3052 = call double @llvm.fmuladd.f64(double 0x3C91000000000000, double %3051, double %3043)
  %3053 = load ptr, ptr %7, align 8, !tbaa !9
  %3054 = load i32, ptr %12, align 4, !tbaa !5
  %3055 = load i32, ptr %8, align 4, !tbaa !5
  %3056 = mul nsw i32 24, %3055
  %3057 = add nsw i32 %3054, %3056
  %3058 = sext i32 %3057 to i64
  %3059 = getelementptr inbounds double, ptr %3053, i64 %3058
  %3060 = load double, ptr %3059, align 8, !tbaa !11
  %3061 = call double @llvm.fmuladd.f64(double 0xBC98000000000000, double %3060, double %3052)
  %3062 = load ptr, ptr %7, align 8, !tbaa !9
  %3063 = load i32, ptr %12, align 4, !tbaa !5
  %3064 = load i32, ptr %8, align 4, !tbaa !5
  %3065 = mul nsw i32 25, %3064
  %3066 = add nsw i32 %3063, %3065
  %3067 = sext i32 %3066 to i64
  %3068 = getelementptr inbounds double, ptr %3062, i64 %3067
  %3069 = load double, ptr %3068, align 8, !tbaa !11
  %3070 = call double @llvm.fmuladd.f64(double 0xBCB0000000000000, double %3069, double %3061)
  %3071 = load ptr, ptr %7, align 8, !tbaa !9
  %3072 = load i32, ptr %12, align 4, !tbaa !5
  %3073 = load i32, ptr %8, align 4, !tbaa !5
  %3074 = mul nsw i32 26, %3073
  %3075 = add nsw i32 %3072, %3074
  %3076 = sext i32 %3075 to i64
  %3077 = getelementptr inbounds double, ptr %3071, i64 %3076
  %3078 = load double, ptr %3077, align 8, !tbaa !11
  %3079 = call double @llvm.fmuladd.f64(double 0xBC92000000000000, double %3078, double %3070)
  %3080 = load ptr, ptr %7, align 8, !tbaa !9
  %3081 = load i32, ptr %12, align 4, !tbaa !5
  %3082 = load i32, ptr %8, align 4, !tbaa !5
  %3083 = mul nsw i32 27, %3082
  %3084 = add nsw i32 %3081, %3083
  %3085 = sext i32 %3084 to i64
  %3086 = getelementptr inbounds double, ptr %3080, i64 %3085
  %3087 = load double, ptr %3086, align 8, !tbaa !11
  %3088 = call double @llvm.fmuladd.f64(double 0xBC70000000000001, double %3087, double %3079)
  %3089 = load ptr, ptr %7, align 8, !tbaa !9
  %3090 = load i32, ptr %12, align 4, !tbaa !5
  %3091 = load i32, ptr %8, align 4, !tbaa !5
  %3092 = mul nsw i32 28, %3091
  %3093 = add nsw i32 %3090, %3092
  %3094 = sext i32 %3093 to i64
  %3095 = getelementptr inbounds double, ptr %3089, i64 %3094
  %3096 = load double, ptr %3095, align 8, !tbaa !11
  %3097 = call double @llvm.fmuladd.f64(double 0x3FD9A613A5CEF63C, double %3096, double %3088)
  %3098 = load ptr, ptr %7, align 8, !tbaa !9
  %3099 = load i32, ptr %12, align 4, !tbaa !5
  %3100 = load i32, ptr %8, align 4, !tbaa !5
  %3101 = mul nsw i32 29, %3100
  %3102 = add nsw i32 %3099, %3101
  %3103 = sext i32 %3102 to i64
  %3104 = getelementptr inbounds double, ptr %3098, i64 %3103
  %3105 = load double, ptr %3104, align 8, !tbaa !11
  %3106 = call double @llvm.fmuladd.f64(double 0x3CA4000000000001, double %3105, double %3097)
  %3107 = load ptr, ptr %7, align 8, !tbaa !9
  %3108 = load i32, ptr %12, align 4, !tbaa !5
  %3109 = load i32, ptr %8, align 4, !tbaa !5
  %3110 = mul nsw i32 30, %3109
  %3111 = add nsw i32 %3108, %3110
  %3112 = sext i32 %3111 to i64
  %3113 = getelementptr inbounds double, ptr %3107, i64 %3112
  %3114 = load double, ptr %3113, align 8, !tbaa !11
  %3115 = call double @llvm.fmuladd.f64(double 0x3CB2000000000000, double %3114, double %3106)
  %3116 = load ptr, ptr %7, align 8, !tbaa !9
  %3117 = load i32, ptr %12, align 4, !tbaa !5
  %3118 = load i32, ptr %8, align 4, !tbaa !5
  %3119 = mul nsw i32 31, %3118
  %3120 = add nsw i32 %3117, %3119
  %3121 = sext i32 %3120 to i64
  %3122 = getelementptr inbounds double, ptr %3116, i64 %3121
  %3123 = load double, ptr %3122, align 8, !tbaa !11
  %3124 = call double @llvm.fmuladd.f64(double 0x3CA4000000000001, double %3123, double %3115)
  %3125 = load ptr, ptr %7, align 8, !tbaa !9
  %3126 = load i32, ptr %12, align 4, !tbaa !5
  %3127 = load i32, ptr %8, align 4, !tbaa !5
  %3128 = mul nsw i32 32, %3127
  %3129 = add nsw i32 %3126, %3128
  %3130 = sext i32 %3129 to i64
  %3131 = getelementptr inbounds double, ptr %3125, i64 %3130
  %3132 = load double, ptr %3131, align 8, !tbaa !11
  %3133 = call double @llvm.fmuladd.f64(double 0xBC95800000000000, double %3132, double %3124)
  %3134 = load ptr, ptr %7, align 8, !tbaa !9
  %3135 = load i32, ptr %12, align 4, !tbaa !5
  %3136 = load i32, ptr %8, align 4, !tbaa !5
  %3137 = mul nsw i32 33, %3136
  %3138 = add nsw i32 %3135, %3137
  %3139 = sext i32 %3138 to i64
  %3140 = getelementptr inbounds double, ptr %3134, i64 %3139
  %3141 = load double, ptr %3140, align 8, !tbaa !11
  %3142 = call double @llvm.fmuladd.f64(double 0xBC58000000000000, double %3141, double %3133)
  %3143 = load ptr, ptr %7, align 8, !tbaa !9
  %3144 = load i32, ptr %12, align 4, !tbaa !5
  %3145 = load i32, ptr %8, align 4, !tbaa !5
  %3146 = mul nsw i32 34, %3145
  %3147 = add nsw i32 %3144, %3146
  %3148 = sext i32 %3147 to i64
  %3149 = getelementptr inbounds double, ptr %3143, i64 %3148
  %3150 = load double, ptr %3149, align 8, !tbaa !11
  %3151 = call double @llvm.fmuladd.f64(double 0xBC9C000000000000, double %3150, double %3142)
  %3152 = load ptr, ptr %7, align 8, !tbaa !9
  %3153 = load i32, ptr %12, align 4, !tbaa !5
  %3154 = load i32, ptr %8, align 4, !tbaa !5
  %3155 = mul nsw i32 35, %3154
  %3156 = add nsw i32 %3153, %3155
  %3157 = sext i32 %3156 to i64
  %3158 = getelementptr inbounds double, ptr %3152, i64 %3157
  %3159 = load double, ptr %3158, align 8, !tbaa !11
  %3160 = call double @llvm.fmuladd.f64(double 0xBC9A000000000000, double %3159, double %3151)
  %3161 = load ptr, ptr %7, align 8, !tbaa !9
  %3162 = load i32, ptr %12, align 4, !tbaa !5
  %3163 = load i32, ptr %8, align 4, !tbaa !5
  %3164 = mul nsw i32 36, %3163
  %3165 = add nsw i32 %3162, %3164
  %3166 = sext i32 %3165 to i64
  %3167 = getelementptr inbounds double, ptr %3161, i64 %3166
  %3168 = load double, ptr %3167, align 8, !tbaa !11
  %3169 = call double @llvm.fmuladd.f64(double 0x3C78000000000002, double %3168, double %3160)
  %3170 = load ptr, ptr %7, align 8, !tbaa !9
  %3171 = load i32, ptr %12, align 4, !tbaa !5
  %3172 = load i32, ptr %8, align 4, !tbaa !5
  %3173 = mul nsw i32 37, %3172
  %3174 = add nsw i32 %3171, %3173
  %3175 = sext i32 %3174 to i64
  %3176 = getelementptr inbounds double, ptr %3170, i64 %3175
  %3177 = load double, ptr %3176, align 8, !tbaa !11
  %3178 = call double @llvm.fmuladd.f64(double 0xBC70000000000001, double %3177, double %3169)
  %3179 = load ptr, ptr %7, align 8, !tbaa !9
  %3180 = load i32, ptr %12, align 4, !tbaa !5
  %3181 = load i32, ptr %8, align 4, !tbaa !5
  %3182 = mul nsw i32 38, %3181
  %3183 = add nsw i32 %3180, %3182
  %3184 = sext i32 %3183 to i64
  %3185 = getelementptr inbounds double, ptr %3179, i64 %3184
  %3186 = load double, ptr %3185, align 8, !tbaa !11
  %3187 = call double @llvm.fmuladd.f64(double 0xBFBD29AD687BB05D, double %3186, double %3178)
  %3188 = load ptr, ptr %7, align 8, !tbaa !9
  %3189 = load i32, ptr %12, align 4, !tbaa !5
  %3190 = load i32, ptr %8, align 4, !tbaa !5
  %3191 = mul nsw i32 39, %3190
  %3192 = add nsw i32 %3189, %3191
  %3193 = sext i32 %3192 to i64
  %3194 = getelementptr inbounds double, ptr %3188, i64 %3193
  %3195 = load double, ptr %3194, align 8, !tbaa !11
  %3196 = call double @llvm.fmuladd.f64(double 0xBC70000000000001, double %3195, double %3187)
  store double %3196, ptr %11, align 8, !tbaa !11
  %3197 = load double, ptr %11, align 8, !tbaa !11
  %3198 = load ptr, ptr %9, align 8, !tbaa !9
  %3199 = load i32, ptr %12, align 4, !tbaa !5
  %3200 = load i32, ptr %10, align 4, !tbaa !5
  %3201 = mul nsw i32 8, %3200
  %3202 = add nsw i32 %3199, %3201
  %3203 = sext i32 %3202 to i64
  %3204 = getelementptr inbounds double, ptr %3198, i64 %3203
  store double %3197, ptr %3204, align 8, !tbaa !11
  %3205 = load ptr, ptr %7, align 8, !tbaa !9
  %3206 = load i32, ptr %12, align 4, !tbaa !5
  %3207 = load i32, ptr %8, align 4, !tbaa !5
  %3208 = mul nsw i32 0, %3207
  %3209 = add nsw i32 %3206, %3208
  %3210 = sext i32 %3209 to i64
  %3211 = getelementptr inbounds double, ptr %3205, i64 %3210
  %3212 = load double, ptr %3211, align 8, !tbaa !11
  %3213 = load ptr, ptr %7, align 8, !tbaa !9
  %3214 = load i32, ptr %12, align 4, !tbaa !5
  %3215 = load i32, ptr %8, align 4, !tbaa !5
  %3216 = mul nsw i32 1, %3215
  %3217 = add nsw i32 %3214, %3216
  %3218 = sext i32 %3217 to i64
  %3219 = getelementptr inbounds double, ptr %3213, i64 %3218
  %3220 = load double, ptr %3219, align 8, !tbaa !11
  %3221 = fmul double 0xBC84000000000000, %3220
  %3222 = call double @llvm.fmuladd.f64(double 0x3CAC000000000000, double %3212, double %3221)
  %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 2, %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 = call double @llvm.fmuladd.f64(double 0x3CB21FFFFFFFFFFF, double %3230, double %3222)
  %3232 = load ptr, ptr %7, align 8, !tbaa !9
  %3233 = load i32, ptr %12, align 4, !tbaa !5
  %3234 = load i32, ptr %8, align 4, !tbaa !5
  %3235 = mul nsw i32 3, %3234
  %3236 = add nsw i32 %3233, %3235
  %3237 = sext i32 %3236 to i64
  %3238 = getelementptr inbounds double, ptr %3232, i64 %3237
  %3239 = load double, ptr %3238, align 8, !tbaa !11
  %3240 = call double @llvm.fmuladd.f64(double 0xBCB9C00000000001, double %3239, double %3231)
  %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 4, %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 0x3CA7000000000002, 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 5, %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 0xBC96000000000000, 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 6, %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 0x3CAA800000000002, 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 7, %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 0xBCA5000000000000, 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 8, %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 0x3CA8000000000001, 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 9, %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 0x3FF86DB962AC2966, 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 10, %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 0x3CAC000000000000, 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 11, %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 0x3CA0000000000002, 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 12, %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 0x3C96000000000000, 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 13, %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 0xBC96000000000000, 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 14, %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 0xBCA5FFFFFFFFFFFF, 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 15, %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 0x3C94000000000000, 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 16, %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 0xBC9DFFFFFFFFFFFE, 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 17, %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 0xBC88000000000000, 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 18, %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 0x3C98000000000000, 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 19, %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 0xBFEA0946EB3057DC, 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 20, %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 0xBCB2000000000000, 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 21, %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 0xBCAC000000000000, 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 22, %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 0xBCA9000000000000, 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 23, %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 0x3CB2C00000000001, 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 24, %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 0xBC70000000000001, 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 25, %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 0x3CB0000000000000, 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 26, %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 0x3C60000000000000, 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 27, %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 0x3C9DFFFFFFFFFFFE, 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 28, %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 0xBCB5FFFFFFFFFFFF, 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 29, %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 0x3FD9A613A5CEF63B, 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 30, %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 0xBCBA000000000000, 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 31, %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 0x3C90000000000000, 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 32, %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 0x3C74000000000000, 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 33, %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 0xBC91800000000000, 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 34, %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 0x3C78000000000002, 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 35, %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 0x3C9A000000000000, 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 36, %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 0x3C60000000000000, 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 37, %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 0xBC93000000000000, 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 38, %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 0xBC94000000000000, 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 39, %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 0xBFBD29AD687BB05D, double %3563, double %3555)
  store double %3564, ptr %11, align 8, !tbaa !11
  %3565 = load double, ptr %11, align 8, !tbaa !11
  %3566 = load ptr, ptr %9, align 8, !tbaa !9
  %3567 = load i32, ptr %12, align 4, !tbaa !5
  %3568 = load i32, ptr %10, align 4, !tbaa !5
  %3569 = mul nsw i32 9, %3568
  %3570 = add nsw i32 %3567, %3569
  %3571 = sext i32 %3570 to i64
  %3572 = getelementptr inbounds double, ptr %3566, i64 %3571
  store double %3565, ptr %3572, align 8, !tbaa !11
  %3573 = load ptr, ptr %7, align 8, !tbaa !9
  %3574 = load i32, ptr %12, align 4, !tbaa !5
  %3575 = load i32, ptr %8, align 4, !tbaa !5
  %3576 = mul nsw i32 0, %3575
  %3577 = add nsw i32 %3574, %3576
  %3578 = sext i32 %3577 to i64
  %3579 = getelementptr inbounds double, ptr %3573, i64 %3578
  %3580 = load double, ptr %3579, align 8, !tbaa !11
  %3581 = load ptr, ptr %7, align 8, !tbaa !9
  %3582 = load i32, ptr %12, align 4, !tbaa !5
  %3583 = load i32, ptr %8, align 4, !tbaa !5
  %3584 = mul nsw i32 1, %3583
  %3585 = add nsw i32 %3582, %3584
  %3586 = sext i32 %3585 to i64
  %3587 = getelementptr inbounds double, ptr %3581, i64 %3586
  %3588 = load double, ptr %3587, align 8, !tbaa !11
  %3589 = fmul double 0x3C7C000000000000, %3588
  %3590 = call double @llvm.fmuladd.f64(double 0xBFBD29AD687BB04F, double %3580, double %3589)
  %3591 = load ptr, ptr %7, align 8, !tbaa !9
  %3592 = load i32, ptr %12, align 4, !tbaa !5
  %3593 = load i32, ptr %8, align 4, !tbaa !5
  %3594 = mul nsw i32 2, %3593
  %3595 = add nsw i32 %3592, %3594
  %3596 = sext i32 %3595 to i64
  %3597 = getelementptr inbounds double, ptr %3591, i64 %3596
  %3598 = load double, ptr %3597, align 8, !tbaa !11
  %3599 = call double @llvm.fmuladd.f64(double 0x3C66000000000000, double %3598, double %3590)
  %3600 = load ptr, ptr %7, align 8, !tbaa !9
  %3601 = load i32, ptr %12, align 4, !tbaa !5
  %3602 = load i32, ptr %8, align 4, !tbaa !5
  %3603 = mul nsw i32 3, %3602
  %3604 = add nsw i32 %3601, %3603
  %3605 = sext i32 %3604 to i64
  %3606 = getelementptr inbounds double, ptr %3600, i64 %3605
  %3607 = load double, ptr %3606, align 8, !tbaa !11
  %3608 = call double @llvm.fmuladd.f64(double 0x3C71000000000000, double %3607, double %3599)
  %3609 = load ptr, ptr %7, align 8, !tbaa !9
  %3610 = load i32, ptr %12, align 4, !tbaa !5
  %3611 = load i32, ptr %8, align 4, !tbaa !5
  %3612 = mul nsw i32 4, %3611
  %3613 = add nsw i32 %3610, %3612
  %3614 = sext i32 %3613 to i64
  %3615 = getelementptr inbounds double, ptr %3609, i64 %3614
  %3616 = load double, ptr %3615, align 8, !tbaa !11
  %3617 = call double @llvm.fmuladd.f64(double 0xBC8E000000000000, double %3616, double %3608)
  %3618 = load ptr, ptr %7, align 8, !tbaa !9
  %3619 = load i32, ptr %12, align 4, !tbaa !5
  %3620 = load i32, ptr %8, align 4, !tbaa !5
  %3621 = mul nsw i32 5, %3620
  %3622 = add nsw i32 %3619, %3621
  %3623 = sext i32 %3622 to i64
  %3624 = getelementptr inbounds double, ptr %3618, i64 %3623
  %3625 = load double, ptr %3624, align 8, !tbaa !11
  %3626 = call double @llvm.fmuladd.f64(double 0x3C7C000000000000, double %3625, double %3617)
  %3627 = load ptr, ptr %7, align 8, !tbaa !9
  %3628 = load i32, ptr %12, align 4, !tbaa !5
  %3629 = load i32, ptr %8, align 4, !tbaa !5
  %3630 = mul nsw i32 6, %3629
  %3631 = add nsw i32 %3628, %3630
  %3632 = sext i32 %3631 to i64
  %3633 = getelementptr inbounds double, ptr %3627, i64 %3632
  %3634 = load double, ptr %3633, align 8, !tbaa !11
  %3635 = call double @llvm.fmuladd.f64(double 0xBC58000000000000, double %3634, double %3626)
  %3636 = load ptr, ptr %7, align 8, !tbaa !9
  %3637 = load i32, ptr %12, align 4, !tbaa !5
  %3638 = load i32, ptr %8, align 4, !tbaa !5
  %3639 = mul nsw i32 7, %3638
  %3640 = add nsw i32 %3637, %3639
  %3641 = sext i32 %3640 to i64
  %3642 = getelementptr inbounds double, ptr %3636, i64 %3641
  %3643 = load double, ptr %3642, align 8, !tbaa !11
  %3644 = call double @llvm.fmuladd.f64(double 0xBC76000000000001, double %3643, double %3635)
  %3645 = load ptr, ptr %7, align 8, !tbaa !9
  %3646 = load i32, ptr %12, align 4, !tbaa !5
  %3647 = load i32, ptr %8, align 4, !tbaa !5
  %3648 = mul nsw i32 8, %3647
  %3649 = add nsw i32 %3646, %3648
  %3650 = sext i32 %3649 to i64
  %3651 = getelementptr inbounds double, ptr %3645, i64 %3650
  %3652 = load double, ptr %3651, align 8, !tbaa !11
  %3653 = call double @llvm.fmuladd.f64(double 0x3C7FFFFFFFFFFFFF, double %3652, double %3644)
  %3654 = load ptr, ptr %7, align 8, !tbaa !9
  %3655 = load i32, ptr %12, align 4, !tbaa !5
  %3656 = load i32, ptr %8, align 4, !tbaa !5
  %3657 = mul nsw i32 9, %3656
  %3658 = add nsw i32 %3655, %3657
  %3659 = sext i32 %3658 to i64
  %3660 = getelementptr inbounds double, ptr %3654, i64 %3659
  %3661 = load double, ptr %3660, align 8, !tbaa !11
  %3662 = call double @llvm.fmuladd.f64(double 0xBC84000000000000, double %3661, double %3653)
  %3663 = load ptr, ptr %7, align 8, !tbaa !9
  %3664 = load i32, ptr %12, align 4, !tbaa !5
  %3665 = load i32, ptr %8, align 4, !tbaa !5
  %3666 = mul nsw i32 10, %3665
  %3667 = add nsw i32 %3664, %3666
  %3668 = sext i32 %3667 to i64
  %3669 = getelementptr inbounds double, ptr %3663, i64 %3668
  %3670 = load double, ptr %3669, align 8, !tbaa !11
  %3671 = call double @llvm.fmuladd.f64(double 0x3FD9A613A5CEF639, double %3670, double %3662)
  %3672 = load ptr, ptr %7, align 8, !tbaa !9
  %3673 = load i32, ptr %12, align 4, !tbaa !5
  %3674 = load i32, ptr %8, align 4, !tbaa !5
  %3675 = mul nsw i32 12, %3674
  %3676 = add nsw i32 %3673, %3675
  %3677 = sext i32 %3676 to i64
  %3678 = getelementptr inbounds double, ptr %3672, i64 %3677
  %3679 = load double, ptr %3678, align 8, !tbaa !11
  %3680 = call double @llvm.fmuladd.f64(double 0x3C40000000000000, double %3679, double %3671)
  %3681 = load ptr, ptr %7, align 8, !tbaa !9
  %3682 = load i32, ptr %12, align 4, !tbaa !5
  %3683 = load i32, ptr %8, align 4, !tbaa !5
  %3684 = mul nsw i32 13, %3683
  %3685 = add nsw i32 %3682, %3684
  %3686 = sext i32 %3685 to i64
  %3687 = getelementptr inbounds double, ptr %3681, i64 %3686
  %3688 = load double, ptr %3687, align 8, !tbaa !11
  %3689 = call double @llvm.fmuladd.f64(double 0x3C85000000000000, double %3688, double %3680)
  %3690 = load ptr, ptr %7, align 8, !tbaa !9
  %3691 = load i32, ptr %12, align 4, !tbaa !5
  %3692 = load i32, ptr %8, align 4, !tbaa !5
  %3693 = mul nsw i32 14, %3692
  %3694 = add nsw i32 %3691, %3693
  %3695 = sext i32 %3694 to i64
  %3696 = getelementptr inbounds double, ptr %3690, i64 %3695
  %3697 = load double, ptr %3696, align 8, !tbaa !11
  %3698 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %3697, double %3689)
  %3699 = load ptr, ptr %7, align 8, !tbaa !9
  %3700 = load i32, ptr %12, align 4, !tbaa !5
  %3701 = load i32, ptr %8, align 4, !tbaa !5
  %3702 = mul nsw i32 15, %3701
  %3703 = add nsw i32 %3700, %3702
  %3704 = sext i32 %3703 to i64
  %3705 = getelementptr inbounds double, ptr %3699, i64 %3704
  %3706 = load double, ptr %3705, align 8, !tbaa !11
  %3707 = call double @llvm.fmuladd.f64(double 0xBC88000000000000, double %3706, double %3698)
  %3708 = load ptr, ptr %7, align 8, !tbaa !9
  %3709 = load i32, ptr %12, align 4, !tbaa !5
  %3710 = load i32, ptr %8, align 4, !tbaa !5
  %3711 = mul nsw i32 16, %3710
  %3712 = add nsw i32 %3709, %3711
  %3713 = sext i32 %3712 to i64
  %3714 = getelementptr inbounds double, ptr %3708, i64 %3713
  %3715 = load double, ptr %3714, align 8, !tbaa !11
  %3716 = call double @llvm.fmuladd.f64(double 0x3C50000000000000, double %3715, double %3707)
  %3717 = load ptr, ptr %7, align 8, !tbaa !9
  %3718 = load i32, ptr %12, align 4, !tbaa !5
  %3719 = load i32, ptr %8, align 4, !tbaa !5
  %3720 = mul nsw i32 17, %3719
  %3721 = add nsw i32 %3718, %3720
  %3722 = sext i32 %3721 to i64
  %3723 = getelementptr inbounds double, ptr %3717, i64 %3722
  %3724 = load double, ptr %3723, align 8, !tbaa !11
  %3725 = call double @llvm.fmuladd.f64(double 0xBC92000000000000, double %3724, double %3716)
  %3726 = load ptr, ptr %7, align 8, !tbaa !9
  %3727 = load i32, ptr %12, align 4, !tbaa !5
  %3728 = load i32, ptr %8, align 4, !tbaa !5
  %3729 = mul nsw i32 18, %3728
  %3730 = add nsw i32 %3727, %3729
  %3731 = sext i32 %3730 to i64
  %3732 = getelementptr inbounds double, ptr %3726, i64 %3731
  %3733 = load double, ptr %3732, align 8, !tbaa !11
  %3734 = call double @llvm.fmuladd.f64(double 0x3C7FFFFFFFFFFFFF, double %3733, double %3725)
  %3735 = load ptr, ptr %7, align 8, !tbaa !9
  %3736 = load i32, ptr %12, align 4, !tbaa !5
  %3737 = load i32, ptr %8, align 4, !tbaa !5
  %3738 = mul nsw i32 19, %3737
  %3739 = add nsw i32 %3736, %3738
  %3740 = sext i32 %3739 to i64
  %3741 = getelementptr inbounds double, ptr %3735, i64 %3740
  %3742 = load double, ptr %3741, align 8, !tbaa !11
  %3743 = call double @llvm.fmuladd.f64(double 0x3C88000000000000, double %3742, double %3734)
  %3744 = load ptr, ptr %7, align 8, !tbaa !9
  %3745 = load i32, ptr %12, align 4, !tbaa !5
  %3746 = load i32, ptr %8, align 4, !tbaa !5
  %3747 = mul nsw i32 20, %3746
  %3748 = add nsw i32 %3745, %3747
  %3749 = sext i32 %3748 to i64
  %3750 = getelementptr inbounds double, ptr %3744, i64 %3749
  %3751 = load double, ptr %3750, align 8, !tbaa !11
  %3752 = call double @llvm.fmuladd.f64(double 0xBFEA0946EB3057DB, double %3751, double %3743)
  %3753 = load ptr, ptr %7, align 8, !tbaa !9
  %3754 = load i32, ptr %12, align 4, !tbaa !5
  %3755 = load i32, ptr %8, align 4, !tbaa !5
  %3756 = mul nsw i32 21, %3755
  %3757 = add nsw i32 %3754, %3756
  %3758 = sext i32 %3757 to i64
  %3759 = getelementptr inbounds double, ptr %3753, i64 %3758
  %3760 = load double, ptr %3759, align 8, !tbaa !11
  %3761 = call double @llvm.fmuladd.f64(double 0xBC70000000000001, double %3760, double %3752)
  %3762 = load ptr, ptr %7, align 8, !tbaa !9
  %3763 = load i32, ptr %12, align 4, !tbaa !5
  %3764 = load i32, ptr %8, align 4, !tbaa !5
  %3765 = mul nsw i32 22, %3764
  %3766 = add nsw i32 %3763, %3765
  %3767 = sext i32 %3766 to i64
  %3768 = getelementptr inbounds double, ptr %3762, i64 %3767
  %3769 = load double, ptr %3768, align 8, !tbaa !11
  %3770 = call double @llvm.fmuladd.f64(double 0xBC64000000000000, double %3769, double %3761)
  %3771 = load ptr, ptr %7, align 8, !tbaa !9
  %3772 = load i32, ptr %12, align 4, !tbaa !5
  %3773 = load i32, ptr %8, align 4, !tbaa !5
  %3774 = mul nsw i32 23, %3773
  %3775 = add nsw i32 %3772, %3774
  %3776 = sext i32 %3775 to i64
  %3777 = getelementptr inbounds double, ptr %3771, i64 %3776
  %3778 = load double, ptr %3777, align 8, !tbaa !11
  %3779 = call double @llvm.fmuladd.f64(double 0xBC70000000000001, double %3778, double %3770)
  %3780 = load ptr, ptr %7, align 8, !tbaa !9
  %3781 = load i32, ptr %12, align 4, !tbaa !5
  %3782 = load i32, ptr %8, align 4, !tbaa !5
  %3783 = mul nsw i32 24, %3782
  %3784 = add nsw i32 %3781, %3783
  %3785 = sext i32 %3784 to i64
  %3786 = getelementptr inbounds double, ptr %3780, i64 %3785
  %3787 = load double, ptr %3786, align 8, !tbaa !11
  %3788 = call double @llvm.fmuladd.f64(double 0x3C7FFFFFFFFFFFFF, double %3787, double %3779)
  %3789 = load ptr, ptr %7, align 8, !tbaa !9
  %3790 = load i32, ptr %12, align 4, !tbaa !5
  %3791 = load i32, ptr %8, align 4, !tbaa !5
  %3792 = mul nsw i32 25, %3791
  %3793 = add nsw i32 %3790, %3792
  %3794 = sext i32 %3793 to i64
  %3795 = getelementptr inbounds double, ptr %3789, i64 %3794
  %3796 = load double, ptr %3795, align 8, !tbaa !11
  %3797 = call double @llvm.fmuladd.f64(double 0x3C70000000000001, double %3796, double %3788)
  %3798 = load ptr, ptr %7, align 8, !tbaa !9
  %3799 = load i32, ptr %12, align 4, !tbaa !5
  %3800 = load i32, ptr %8, align 4, !tbaa !5
  %3801 = mul nsw i32 26, %3800
  %3802 = add nsw i32 %3799, %3801
  %3803 = sext i32 %3802 to i64
  %3804 = getelementptr inbounds double, ptr %3798, i64 %3803
  %3805 = load double, ptr %3804, align 8, !tbaa !11
  %3806 = call double @llvm.fmuladd.f64(double 0x3C70000000000001, double %3805, double %3797)
  %3807 = load ptr, ptr %7, align 8, !tbaa !9
  %3808 = load i32, ptr %12, align 4, !tbaa !5
  %3809 = load i32, ptr %8, align 4, !tbaa !5
  %3810 = mul nsw i32 27, %3809
  %3811 = add nsw i32 %3808, %3810
  %3812 = sext i32 %3811 to i64
  %3813 = getelementptr inbounds double, ptr %3807, i64 %3812
  %3814 = load double, ptr %3813, align 8, !tbaa !11
  %3815 = call double @llvm.fmuladd.f64(double 0x3C93000000000000, double %3814, double %3806)
  %3816 = load ptr, ptr %7, align 8, !tbaa !9
  %3817 = load i32, ptr %12, align 4, !tbaa !5
  %3818 = load i32, ptr %8, align 4, !tbaa !5
  %3819 = mul nsw i32 28, %3818
  %3820 = add nsw i32 %3817, %3819
  %3821 = sext i32 %3820 to i64
  %3822 = getelementptr inbounds double, ptr %3816, i64 %3821
  %3823 = load double, ptr %3822, align 8, !tbaa !11
  %3824 = call double @llvm.fmuladd.f64(double 0xBC70000000000001, double %3823, double %3815)
  %3825 = load ptr, ptr %7, align 8, !tbaa !9
  %3826 = load i32, ptr %12, align 4, !tbaa !5
  %3827 = load i32, ptr %8, align 4, !tbaa !5
  %3828 = mul nsw i32 29, %3827
  %3829 = add nsw i32 %3826, %3828
  %3830 = sext i32 %3829 to i64
  %3831 = getelementptr inbounds double, ptr %3825, i64 %3830
  %3832 = load double, ptr %3831, align 8, !tbaa !11
  %3833 = call double @llvm.fmuladd.f64(double 0xBC88000000000000, double %3832, double %3824)
  %3834 = load ptr, ptr %7, align 8, !tbaa !9
  %3835 = load i32, ptr %12, align 4, !tbaa !5
  %3836 = load i32, ptr %8, align 4, !tbaa !5
  %3837 = mul nsw i32 30, %3836
  %3838 = add nsw i32 %3835, %3837
  %3839 = sext i32 %3838 to i64
  %3840 = getelementptr inbounds double, ptr %3834, i64 %3839
  %3841 = load double, ptr %3840, align 8, !tbaa !11
  %3842 = call double @llvm.fmuladd.f64(double 0x3FF86DB962AC2966, double %3841, double %3833)
  %3843 = load ptr, ptr %7, align 8, !tbaa !9
  %3844 = load i32, ptr %12, align 4, !tbaa !5
  %3845 = load i32, ptr %8, align 4, !tbaa !5
  %3846 = mul nsw i32 31, %3845
  %3847 = add nsw i32 %3844, %3846
  %3848 = sext i32 %3847 to i64
  %3849 = getelementptr inbounds double, ptr %3843, i64 %3848
  %3850 = load double, ptr %3849, align 8, !tbaa !11
  %3851 = call double @llvm.fmuladd.f64(double 0xBC7C000000000000, double %3850, double %3842)
  %3852 = load ptr, ptr %7, align 8, !tbaa !9
  %3853 = load i32, ptr %12, align 4, !tbaa !5
  %3854 = load i32, ptr %8, align 4, !tbaa !5
  %3855 = mul nsw i32 32, %3854
  %3856 = add nsw i32 %3853, %3855
  %3857 = sext i32 %3856 to i64
  %3858 = getelementptr inbounds double, ptr %3852, i64 %3857
  %3859 = load double, ptr %3858, align 8, !tbaa !11
  %3860 = call double @llvm.fmuladd.f64(double 0xBC6A000000000003, double %3859, double %3851)
  %3861 = load ptr, ptr %7, align 8, !tbaa !9
  %3862 = load i32, ptr %12, align 4, !tbaa !5
  %3863 = load i32, ptr %8, align 4, !tbaa !5
  %3864 = mul nsw i32 33, %3863
  %3865 = add nsw i32 %3862, %3864
  %3866 = sext i32 %3865 to i64
  %3867 = getelementptr inbounds double, ptr %3861, i64 %3866
  %3868 = load double, ptr %3867, align 8, !tbaa !11
  %3869 = call double @llvm.fmuladd.f64(double 0x3C7F000000000000, double %3868, double %3860)
  %3870 = load ptr, ptr %7, align 8, !tbaa !9
  %3871 = load i32, ptr %12, align 4, !tbaa !5
  %3872 = load i32, ptr %8, align 4, !tbaa !5
  %3873 = mul nsw i32 34, %3872
  %3874 = add nsw i32 %3871, %3873
  %3875 = sext i32 %3874 to i64
  %3876 = getelementptr inbounds double, ptr %3870, i64 %3875
  %3877 = load double, ptr %3876, align 8, !tbaa !11
  %3878 = call double @llvm.fmuladd.f64(double 0x3C88000000000000, double %3877, double %3869)
  %3879 = load ptr, ptr %7, align 8, !tbaa !9
  %3880 = load i32, ptr %12, align 4, !tbaa !5
  %3881 = load i32, ptr %8, align 4, !tbaa !5
  %3882 = mul nsw i32 35, %3881
  %3883 = add nsw i32 %3880, %3882
  %3884 = sext i32 %3883 to i64
  %3885 = getelementptr inbounds double, ptr %3879, i64 %3884
  %3886 = load double, ptr %3885, align 8, !tbaa !11
  %3887 = call double @llvm.fmuladd.f64(double 0xBC50000000000000, double %3886, double %3878)
  %3888 = load ptr, ptr %7, align 8, !tbaa !9
  %3889 = load i32, ptr %12, align 4, !tbaa !5
  %3890 = load i32, ptr %8, align 4, !tbaa !5
  %3891 = mul nsw i32 36, %3890
  %3892 = add nsw i32 %3889, %3891
  %3893 = sext i32 %3892 to i64
  %3894 = getelementptr inbounds double, ptr %3888, i64 %3893
  %3895 = load double, ptr %3894, align 8, !tbaa !11
  %3896 = call double @llvm.fmuladd.f64(double 0xBC81000000000000, double %3895, double %3887)
  %3897 = load ptr, ptr %7, align 8, !tbaa !9
  %3898 = load i32, ptr %12, align 4, !tbaa !5
  %3899 = load i32, ptr %8, align 4, !tbaa !5
  %3900 = mul nsw i32 37, %3899
  %3901 = add nsw i32 %3898, %3900
  %3902 = sext i32 %3901 to i64
  %3903 = getelementptr inbounds double, ptr %3897, i64 %3902
  %3904 = load double, ptr %3903, align 8, !tbaa !11
  %3905 = call double @llvm.fmuladd.f64(double 0xBC40000000000000, double %3904, double %3896)
  %3906 = load ptr, ptr %7, align 8, !tbaa !9
  %3907 = load i32, ptr %12, align 4, !tbaa !5
  %3908 = load i32, ptr %8, align 4, !tbaa !5
  %3909 = mul nsw i32 38, %3908
  %3910 = add nsw i32 %3907, %3909
  %3911 = sext i32 %3910 to i64
  %3912 = getelementptr inbounds double, ptr %3906, i64 %3911
  %3913 = load double, ptr %3912, align 8, !tbaa !11
  %3914 = call double @llvm.fmuladd.f64(double 0xBC60000000000000, double %3913, double %3905)
  %3915 = load ptr, ptr %7, align 8, !tbaa !9
  %3916 = load i32, ptr %12, align 4, !tbaa !5
  %3917 = load i32, ptr %8, align 4, !tbaa !5
  %3918 = mul nsw i32 39, %3917
  %3919 = add nsw i32 %3916, %3918
  %3920 = sext i32 %3919 to i64
  %3921 = getelementptr inbounds double, ptr %3915, i64 %3920
  %3922 = load double, ptr %3921, align 8, !tbaa !11
  %3923 = call double @llvm.fmuladd.f64(double 0xBC78000000000002, double %3922, double %3914)
  store double %3923, ptr %11, align 8, !tbaa !11
  %3924 = load double, ptr %11, align 8, !tbaa !11
  %3925 = load ptr, ptr %9, align 8, !tbaa !9
  %3926 = load i32, ptr %12, align 4, !tbaa !5
  %3927 = load i32, ptr %10, align 4, !tbaa !5
  %3928 = mul nsw i32 10, %3927
  %3929 = add nsw i32 %3926, %3928
  %3930 = sext i32 %3929 to i64
  %3931 = getelementptr inbounds double, ptr %3925, i64 %3930
  store double %3924, ptr %3931, align 8, !tbaa !11
  %3932 = load ptr, ptr %7, align 8, !tbaa !9
  %3933 = load i32, ptr %12, align 4, !tbaa !5
  %3934 = load i32, ptr %8, align 4, !tbaa !5
  %3935 = mul nsw i32 0, %3934
  %3936 = add nsw i32 %3933, %3935
  %3937 = sext i32 %3936 to i64
  %3938 = getelementptr inbounds double, ptr %3932, i64 %3937
  %3939 = load double, ptr %3938, align 8, !tbaa !11
  %3940 = load ptr, ptr %7, align 8, !tbaa !9
  %3941 = load i32, ptr %12, align 4, !tbaa !5
  %3942 = load i32, ptr %8, align 4, !tbaa !5
  %3943 = mul nsw i32 1, %3942
  %3944 = add nsw i32 %3941, %3943
  %3945 = sext i32 %3944 to i64
  %3946 = getelementptr inbounds double, ptr %3940, i64 %3945
  %3947 = load double, ptr %3946, align 8, !tbaa !11
  %3948 = fmul double 0xBFBD29AD687BB05D, %3947
  %3949 = call double @llvm.fmuladd.f64(double 0x3CBC000000000000, double %3939, double %3948)
  %3950 = load ptr, ptr %7, align 8, !tbaa !9
  %3951 = load i32, ptr %12, align 4, !tbaa !5
  %3952 = load i32, ptr %8, align 4, !tbaa !5
  %3953 = mul nsw i32 2, %3952
  %3954 = add nsw i32 %3951, %3953
  %3955 = sext i32 %3954 to i64
  %3956 = getelementptr inbounds double, ptr %3950, i64 %3955
  %3957 = load double, ptr %3956, align 8, !tbaa !11
  %3958 = call double @llvm.fmuladd.f64(double 0x3CACFFFFFFFFFFFF, double %3957, double %3949)
  %3959 = load ptr, ptr %7, align 8, !tbaa !9
  %3960 = load i32, ptr %12, align 4, !tbaa !5
  %3961 = load i32, ptr %8, align 4, !tbaa !5
  %3962 = mul nsw i32 3, %3961
  %3963 = add nsw i32 %3960, %3962
  %3964 = sext i32 %3963 to i64
  %3965 = getelementptr inbounds double, ptr %3959, i64 %3964
  %3966 = load double, ptr %3965, align 8, !tbaa !11
  %3967 = call double @llvm.fmuladd.f64(double 0xBCAC800000000000, double %3966, double %3958)
  %3968 = load ptr, ptr %7, align 8, !tbaa !9
  %3969 = load i32, ptr %12, align 4, !tbaa !5
  %3970 = load i32, ptr %8, align 4, !tbaa !5
  %3971 = mul nsw i32 4, %3970
  %3972 = add nsw i32 %3969, %3971
  %3973 = sext i32 %3972 to i64
  %3974 = getelementptr inbounds double, ptr %3968, i64 %3973
  %3975 = load double, ptr %3974, align 8, !tbaa !11
  %3976 = call double @llvm.fmuladd.f64(double 0x3C7FFFFFFFFFFFFF, double %3975, double %3967)
  %3977 = load ptr, ptr %7, align 8, !tbaa !9
  %3978 = load i32, ptr %12, align 4, !tbaa !5
  %3979 = load i32, ptr %8, align 4, !tbaa !5
  %3980 = mul nsw i32 5, %3979
  %3981 = add nsw i32 %3978, %3980
  %3982 = sext i32 %3981 to i64
  %3983 = getelementptr inbounds double, ptr %3977, i64 %3982
  %3984 = load double, ptr %3983, align 8, !tbaa !11
  %3985 = call double @llvm.fmuladd.f64(double 0x3C88000000000000, double %3984, double %3976)
  %3986 = load ptr, ptr %7, align 8, !tbaa !9
  %3987 = load i32, ptr %12, align 4, !tbaa !5
  %3988 = load i32, ptr %8, align 4, !tbaa !5
  %3989 = mul nsw i32 6, %3988
  %3990 = add nsw i32 %3987, %3989
  %3991 = sext i32 %3990 to i64
  %3992 = getelementptr inbounds double, ptr %3986, i64 %3991
  %3993 = load double, ptr %3992, align 8, !tbaa !11
  %3994 = call double @llvm.fmuladd.f64(double 0xBC8C000000000000, double %3993, double %3985)
  %3995 = load ptr, ptr %7, align 8, !tbaa !9
  %3996 = load i32, ptr %12, align 4, !tbaa !5
  %3997 = load i32, ptr %8, align 4, !tbaa !5
  %3998 = mul nsw i32 7, %3997
  %3999 = add nsw i32 %3996, %3998
  %4000 = sext i32 %3999 to i64
  %4001 = getelementptr inbounds double, ptr %3995, i64 %4000
  %4002 = load double, ptr %4001, align 8, !tbaa !11
  %4003 = call double @llvm.fmuladd.f64(double 0x3C88000000000000, double %4002, double %3994)
  %4004 = load ptr, ptr %7, align 8, !tbaa !9
  %4005 = load i32, ptr %12, align 4, !tbaa !5
  %4006 = load i32, ptr %8, align 4, !tbaa !5
  %4007 = mul nsw i32 8, %4006
  %4008 = add nsw i32 %4005, %4007
  %4009 = sext i32 %4008 to i64
  %4010 = getelementptr inbounds double, ptr %4004, i64 %4009
  %4011 = load double, ptr %4010, align 8, !tbaa !11
  %4012 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %4011, double %4003)
  %4013 = load ptr, ptr %7, align 8, !tbaa !9
  %4014 = load i32, ptr %12, align 4, !tbaa !5
  %4015 = load i32, ptr %8, align 4, !tbaa !5
  %4016 = mul nsw i32 9, %4015
  %4017 = add nsw i32 %4014, %4016
  %4018 = sext i32 %4017 to i64
  %4019 = getelementptr inbounds double, ptr %4013, i64 %4018
  %4020 = load double, ptr %4019, align 8, !tbaa !11
  %4021 = call double @llvm.fmuladd.f64(double 0xBCA4000000000001, double %4020, double %4012)
  %4022 = load ptr, ptr %7, align 8, !tbaa !9
  %4023 = load i32, ptr %12, align 4, !tbaa !5
  %4024 = load i32, ptr %8, align 4, !tbaa !5
  %4025 = mul nsw i32 10, %4024
  %4026 = add nsw i32 %4023, %4025
  %4027 = sext i32 %4026 to i64
  %4028 = getelementptr inbounds double, ptr %4022, i64 %4027
  %4029 = load double, ptr %4028, align 8, !tbaa !11
  %4030 = call double @llvm.fmuladd.f64(double 0xBCB8000000000001, double %4029, double %4021)
  %4031 = load ptr, ptr %7, align 8, !tbaa !9
  %4032 = load i32, ptr %12, align 4, !tbaa !5
  %4033 = load i32, ptr %8, align 4, !tbaa !5
  %4034 = mul nsw i32 11, %4033
  %4035 = add nsw i32 %4032, %4034
  %4036 = sext i32 %4035 to i64
  %4037 = getelementptr inbounds double, ptr %4031, i64 %4036
  %4038 = load double, ptr %4037, align 8, !tbaa !11
  %4039 = call double @llvm.fmuladd.f64(double 0x3FD9A613A5CEF63B, double %4038, double %4030)
  %4040 = load ptr, ptr %7, align 8, !tbaa !9
  %4041 = load i32, ptr %12, align 4, !tbaa !5
  %4042 = load i32, ptr %8, align 4, !tbaa !5
  %4043 = mul nsw i32 12, %4042
  %4044 = add nsw i32 %4041, %4043
  %4045 = sext i32 %4044 to i64
  %4046 = getelementptr inbounds double, ptr %4040, i64 %4045
  %4047 = load double, ptr %4046, align 8, !tbaa !11
  %4048 = call double @llvm.fmuladd.f64(double 0xBC60000000000000, double %4047, double %4039)
  %4049 = load ptr, ptr %7, align 8, !tbaa !9
  %4050 = load i32, ptr %12, align 4, !tbaa !5
  %4051 = load i32, ptr %8, align 4, !tbaa !5
  %4052 = mul nsw i32 13, %4051
  %4053 = add nsw i32 %4050, %4052
  %4054 = sext i32 %4053 to i64
  %4055 = getelementptr inbounds double, ptr %4049, i64 %4054
  %4056 = load double, ptr %4055, align 8, !tbaa !11
  %4057 = call double @llvm.fmuladd.f64(double 0xBC9C000000000000, double %4056, double %4048)
  %4058 = load ptr, ptr %7, align 8, !tbaa !9
  %4059 = load i32, ptr %12, align 4, !tbaa !5
  %4060 = load i32, ptr %8, align 4, !tbaa !5
  %4061 = mul nsw i32 14, %4060
  %4062 = add nsw i32 %4059, %4061
  %4063 = sext i32 %4062 to i64
  %4064 = getelementptr inbounds double, ptr %4058, i64 %4063
  %4065 = load double, ptr %4064, align 8, !tbaa !11
  %4066 = call double @llvm.fmuladd.f64(double 0xBCAC000000000000, double %4065, double %4057)
  %4067 = load ptr, ptr %7, align 8, !tbaa !9
  %4068 = load i32, ptr %12, align 4, !tbaa !5
  %4069 = load i32, ptr %8, align 4, !tbaa !5
  %4070 = mul nsw i32 16, %4069
  %4071 = add nsw i32 %4068, %4070
  %4072 = sext i32 %4071 to i64
  %4073 = getelementptr inbounds double, ptr %4067, i64 %4072
  %4074 = load double, ptr %4073, align 8, !tbaa !11
  %4075 = call double @llvm.fmuladd.f64(double 0x3CA9FFFFFFFFFFFE, double %4074, double %4066)
  %4076 = load ptr, ptr %7, align 8, !tbaa !9
  %4077 = load i32, ptr %12, align 4, !tbaa !5
  %4078 = load i32, ptr %8, align 4, !tbaa !5
  %4079 = mul nsw i32 17, %4078
  %4080 = add nsw i32 %4077, %4079
  %4081 = sext i32 %4080 to i64
  %4082 = getelementptr inbounds double, ptr %4076, i64 %4081
  %4083 = load double, ptr %4082, align 8, !tbaa !11
  %4084 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %4083, double %4075)
  %4085 = load ptr, ptr %7, align 8, !tbaa !9
  %4086 = load i32, ptr %12, align 4, !tbaa !5
  %4087 = load i32, ptr %8, align 4, !tbaa !5
  %4088 = mul nsw i32 19, %4087
  %4089 = add nsw i32 %4086, %4088
  %4090 = sext i32 %4089 to i64
  %4091 = getelementptr inbounds double, ptr %4085, i64 %4090
  %4092 = load double, ptr %4091, align 8, !tbaa !11
  %4093 = call double @llvm.fmuladd.f64(double 0x3CA0000000000002, double %4092, double %4084)
  %4094 = load ptr, ptr %7, align 8, !tbaa !9
  %4095 = load i32, ptr %12, align 4, !tbaa !5
  %4096 = load i32, ptr %8, align 4, !tbaa !5
  %4097 = mul nsw i32 21, %4096
  %4098 = add nsw i32 %4095, %4097
  %4099 = sext i32 %4098 to i64
  %4100 = getelementptr inbounds double, ptr %4094, i64 %4099
  %4101 = load double, ptr %4100, align 8, !tbaa !11
  %4102 = call double @llvm.fmuladd.f64(double 0xBFEA0946EB3057DA, double %4101, double %4093)
  %4103 = load ptr, ptr %7, align 8, !tbaa !9
  %4104 = load i32, ptr %12, align 4, !tbaa !5
  %4105 = load i32, ptr %8, align 4, !tbaa !5
  %4106 = mul nsw i32 22, %4105
  %4107 = add nsw i32 %4104, %4106
  %4108 = sext i32 %4107 to i64
  %4109 = getelementptr inbounds double, ptr %4103, i64 %4108
  %4110 = load double, ptr %4109, align 8, !tbaa !11
  %4111 = call double @llvm.fmuladd.f64(double 0x3C8C000000000000, double %4110, double %4102)
  %4112 = load ptr, ptr %7, align 8, !tbaa !9
  %4113 = load i32, ptr %12, align 4, !tbaa !5
  %4114 = load i32, ptr %8, align 4, !tbaa !5
  %4115 = mul nsw i32 23, %4114
  %4116 = add nsw i32 %4113, %4115
  %4117 = sext i32 %4116 to i64
  %4118 = getelementptr inbounds double, ptr %4112, i64 %4117
  %4119 = load double, ptr %4118, align 8, !tbaa !11
  %4120 = call double @llvm.fmuladd.f64(double 0xBC78000000000002, double %4119, double %4111)
  %4121 = load ptr, ptr %7, align 8, !tbaa !9
  %4122 = load i32, ptr %12, align 4, !tbaa !5
  %4123 = load i32, ptr %8, align 4, !tbaa !5
  %4124 = mul nsw i32 24, %4123
  %4125 = add nsw i32 %4122, %4124
  %4126 = sext i32 %4125 to i64
  %4127 = getelementptr inbounds double, ptr %4121, i64 %4126
  %4128 = load double, ptr %4127, align 8, !tbaa !11
  %4129 = call double @llvm.fmuladd.f64(double 0x3C7FFFFFFFFFFFFF, double %4128, double %4120)
  %4130 = load ptr, ptr %7, align 8, !tbaa !9
  %4131 = load i32, ptr %12, align 4, !tbaa !5
  %4132 = load i32, ptr %8, align 4, !tbaa !5
  %4133 = mul nsw i32 25, %4132
  %4134 = add nsw i32 %4131, %4133
  %4135 = sext i32 %4134 to i64
  %4136 = getelementptr inbounds double, ptr %4130, i64 %4135
  %4137 = load double, ptr %4136, align 8, !tbaa !11
  %4138 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %4137, double %4129)
  %4139 = load ptr, ptr %7, align 8, !tbaa !9
  %4140 = load i32, ptr %12, align 4, !tbaa !5
  %4141 = load i32, ptr %8, align 4, !tbaa !5
  %4142 = mul nsw i32 26, %4141
  %4143 = add nsw i32 %4140, %4142
  %4144 = sext i32 %4143 to i64
  %4145 = getelementptr inbounds double, ptr %4139, i64 %4144
  %4146 = load double, ptr %4145, align 8, !tbaa !11
  %4147 = call double @llvm.fmuladd.f64(double 0xBCA8000000000001, double %4146, double %4138)
  %4148 = load ptr, ptr %7, align 8, !tbaa !9
  %4149 = load i32, ptr %12, align 4, !tbaa !5
  %4150 = load i32, ptr %8, align 4, !tbaa !5
  %4151 = mul nsw i32 27, %4150
  %4152 = add nsw i32 %4149, %4151
  %4153 = sext i32 %4152 to i64
  %4154 = getelementptr inbounds double, ptr %4148, i64 %4153
  %4155 = load double, ptr %4154, align 8, !tbaa !11
  %4156 = call double @llvm.fmuladd.f64(double 0x3CAE000000000002, double %4155, double %4147)
  %4157 = load ptr, ptr %7, align 8, !tbaa !9
  %4158 = load i32, ptr %12, align 4, !tbaa !5
  %4159 = load i32, ptr %8, align 4, !tbaa !5
  %4160 = mul nsw i32 28, %4159
  %4161 = add nsw i32 %4158, %4160
  %4162 = sext i32 %4161 to i64
  %4163 = getelementptr inbounds double, ptr %4157, i64 %4162
  %4164 = load double, ptr %4163, align 8, !tbaa !11
  %4165 = call double @llvm.fmuladd.f64(double 0xBCA0000000000002, double %4164, double %4156)
  %4166 = load ptr, ptr %7, align 8, !tbaa !9
  %4167 = load i32, ptr %12, align 4, !tbaa !5
  %4168 = load i32, ptr %8, align 4, !tbaa !5
  %4169 = mul nsw i32 29, %4168
  %4170 = add nsw i32 %4167, %4169
  %4171 = sext i32 %4170 to i64
  %4172 = getelementptr inbounds double, ptr %4166, i64 %4171
  %4173 = load double, ptr %4172, align 8, !tbaa !11
  %4174 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %4173, double %4165)
  %4175 = load ptr, ptr %7, align 8, !tbaa !9
  %4176 = load i32, ptr %12, align 4, !tbaa !5
  %4177 = load i32, ptr %8, align 4, !tbaa !5
  %4178 = mul nsw i32 30, %4177
  %4179 = add nsw i32 %4176, %4178
  %4180 = sext i32 %4179 to i64
  %4181 = getelementptr inbounds double, ptr %4175, i64 %4180
  %4182 = load double, ptr %4181, align 8, !tbaa !11
  %4183 = call double @llvm.fmuladd.f64(double 0x3CB2000000000000, double %4182, double %4174)
  %4184 = load ptr, ptr %7, align 8, !tbaa !9
  %4185 = load i32, ptr %12, align 4, !tbaa !5
  %4186 = load i32, ptr %8, align 4, !tbaa !5
  %4187 = mul nsw i32 31, %4186
  %4188 = add nsw i32 %4185, %4187
  %4189 = sext i32 %4188 to i64
  %4190 = getelementptr inbounds double, ptr %4184, i64 %4189
  %4191 = load double, ptr %4190, align 8, !tbaa !11
  %4192 = call double @llvm.fmuladd.f64(double 0x3FF86DB962AC2966, double %4191, double %4183)
  %4193 = load ptr, ptr %7, align 8, !tbaa !9
  %4194 = load i32, ptr %12, align 4, !tbaa !5
  %4195 = load i32, ptr %8, align 4, !tbaa !5
  %4196 = mul nsw i32 32, %4195
  %4197 = add nsw i32 %4194, %4196
  %4198 = sext i32 %4197 to i64
  %4199 = getelementptr inbounds double, ptr %4193, i64 %4198
  %4200 = load double, ptr %4199, align 8, !tbaa !11
  %4201 = call double @llvm.fmuladd.f64(double 0xBC74000000000000, double %4200, double %4192)
  %4202 = load ptr, ptr %7, align 8, !tbaa !9
  %4203 = load i32, ptr %12, align 4, !tbaa !5
  %4204 = load i32, ptr %8, align 4, !tbaa !5
  %4205 = mul nsw i32 33, %4204
  %4206 = add nsw i32 %4203, %4205
  %4207 = sext i32 %4206 to i64
  %4208 = getelementptr inbounds double, ptr %4202, i64 %4207
  %4209 = load double, ptr %4208, align 8, !tbaa !11
  %4210 = call double @llvm.fmuladd.f64(double 0x3C7C000000000000, double %4209, double %4201)
  %4211 = load ptr, ptr %7, align 8, !tbaa !9
  %4212 = load i32, ptr %12, align 4, !tbaa !5
  %4213 = load i32, ptr %8, align 4, !tbaa !5
  %4214 = mul nsw i32 35, %4213
  %4215 = add nsw i32 %4212, %4214
  %4216 = sext i32 %4215 to i64
  %4217 = getelementptr inbounds double, ptr %4211, i64 %4216
  %4218 = load double, ptr %4217, align 8, !tbaa !11
  %4219 = call double @llvm.fmuladd.f64(double 0xBCA0000000000002, double %4218, double %4210)
  %4220 = load ptr, ptr %7, align 8, !tbaa !9
  %4221 = load i32, ptr %12, align 4, !tbaa !5
  %4222 = load i32, ptr %8, align 4, !tbaa !5
  %4223 = mul nsw i32 36, %4222
  %4224 = add nsw i32 %4221, %4223
  %4225 = sext i32 %4224 to i64
  %4226 = getelementptr inbounds double, ptr %4220, i64 %4225
  %4227 = load double, ptr %4226, align 8, !tbaa !11
  %4228 = call double @llvm.fmuladd.f64(double 0xBC78000000000002, double %4227, double %4219)
  %4229 = load ptr, ptr %7, align 8, !tbaa !9
  %4230 = load i32, ptr %12, align 4, !tbaa !5
  %4231 = load i32, ptr %8, align 4, !tbaa !5
  %4232 = mul nsw i32 37, %4231
  %4233 = add nsw i32 %4230, %4232
  %4234 = sext i32 %4233 to i64
  %4235 = getelementptr inbounds double, ptr %4229, i64 %4234
  %4236 = load double, ptr %4235, align 8, !tbaa !11
  %4237 = call double @llvm.fmuladd.f64(double 0xBCAE000000000002, double %4236, double %4228)
  %4238 = load ptr, ptr %7, align 8, !tbaa !9
  %4239 = load i32, ptr %12, align 4, !tbaa !5
  %4240 = load i32, ptr %8, align 4, !tbaa !5
  %4241 = mul nsw i32 38, %4240
  %4242 = add nsw i32 %4239, %4241
  %4243 = sext i32 %4242 to i64
  %4244 = getelementptr inbounds double, ptr %4238, i64 %4243
  %4245 = load double, ptr %4244, align 8, !tbaa !11
  %4246 = call double @llvm.fmuladd.f64(double 0x3CA8000000000001, double %4245, double %4237)
  %4247 = load ptr, ptr %7, align 8, !tbaa !9
  %4248 = load i32, ptr %12, align 4, !tbaa !5
  %4249 = load i32, ptr %8, align 4, !tbaa !5
  %4250 = mul nsw i32 39, %4249
  %4251 = add nsw i32 %4248, %4250
  %4252 = sext i32 %4251 to i64
  %4253 = getelementptr inbounds double, ptr %4247, i64 %4252
  %4254 = load double, ptr %4253, align 8, !tbaa !11
  %4255 = call double @llvm.fmuladd.f64(double 0x3C7FFFFFFFFFFFFF, double %4254, double %4246)
  store double %4255, ptr %11, align 8, !tbaa !11
  %4256 = load double, ptr %11, align 8, !tbaa !11
  %4257 = load ptr, ptr %9, align 8, !tbaa !9
  %4258 = load i32, ptr %12, align 4, !tbaa !5
  %4259 = load i32, ptr %10, align 4, !tbaa !5
  %4260 = mul nsw i32 11, %4259
  %4261 = add nsw i32 %4258, %4260
  %4262 = sext i32 %4261 to i64
  %4263 = getelementptr inbounds double, ptr %4257, i64 %4262
  store double %4256, ptr %4263, align 8, !tbaa !11
  %4264 = load ptr, ptr %7, align 8, !tbaa !9
  %4265 = load i32, ptr %12, align 4, !tbaa !5
  %4266 = load i32, ptr %8, align 4, !tbaa !5
  %4267 = mul nsw i32 0, %4266
  %4268 = add nsw i32 %4265, %4267
  %4269 = sext i32 %4268 to i64
  %4270 = getelementptr inbounds double, ptr %4264, i64 %4269
  %4271 = load double, ptr %4270, align 8, !tbaa !11
  %4272 = load ptr, ptr %7, align 8, !tbaa !9
  %4273 = load i32, ptr %12, align 4, !tbaa !5
  %4274 = load i32, ptr %8, align 4, !tbaa !5
  %4275 = mul nsw i32 1, %4274
  %4276 = add nsw i32 %4273, %4275
  %4277 = sext i32 %4276 to i64
  %4278 = getelementptr inbounds double, ptr %4272, i64 %4277
  %4279 = load double, ptr %4278, align 8, !tbaa !11
  %4280 = fmul double 0x3C70000000000001, %4279
  %4281 = call double @llvm.fmuladd.f64(double 0xBCC9600000000000, double %4271, double %4280)
  %4282 = load ptr, ptr %7, align 8, !tbaa !9
  %4283 = load i32, ptr %12, align 4, !tbaa !5
  %4284 = load i32, ptr %8, align 4, !tbaa !5
  %4285 = mul nsw i32 2, %4284
  %4286 = add nsw i32 %4283, %4285
  %4287 = sext i32 %4286 to i64
  %4288 = getelementptr inbounds double, ptr %4282, i64 %4287
  %4289 = load double, ptr %4288, align 8, !tbaa !11
  %4290 = call double @llvm.fmuladd.f64(double 0xBFBD29AD687BB05D, double %4289, double %4281)
  %4291 = load ptr, ptr %7, align 8, !tbaa !9
  %4292 = load i32, ptr %12, align 4, !tbaa !5
  %4293 = load i32, ptr %8, align 4, !tbaa !5
  %4294 = mul nsw i32 3, %4293
  %4295 = add nsw i32 %4292, %4294
  %4296 = sext i32 %4295 to i64
  %4297 = getelementptr inbounds double, ptr %4291, i64 %4296
  %4298 = load double, ptr %4297, align 8, !tbaa !11
  %4299 = call double @llvm.fmuladd.f64(double 0xBCBB2FFFFFFFFFFF, double %4298, double %4290)
  %4300 = load ptr, ptr %7, align 8, !tbaa !9
  %4301 = load i32, ptr %12, align 4, !tbaa !5
  %4302 = load i32, ptr %8, align 4, !tbaa !5
  %4303 = mul nsw i32 4, %4302
  %4304 = add nsw i32 %4301, %4303
  %4305 = sext i32 %4304 to i64
  %4306 = getelementptr inbounds double, ptr %4300, i64 %4305
  %4307 = load double, ptr %4306, align 8, !tbaa !11
  %4308 = call double @llvm.fmuladd.f64(double 0xBCB3FFFFFFFFFFFF, double %4307, double %4299)
  %4309 = load ptr, ptr %7, align 8, !tbaa !9
  %4310 = load i32, ptr %12, align 4, !tbaa !5
  %4311 = load i32, ptr %8, align 4, !tbaa !5
  %4312 = mul nsw i32 5, %4311
  %4313 = add nsw i32 %4310, %4312
  %4314 = sext i32 %4313 to i64
  %4315 = getelementptr inbounds double, ptr %4309, i64 %4314
  %4316 = load double, ptr %4315, align 8, !tbaa !11
  %4317 = call double @llvm.fmuladd.f64(double 0x3CA5000000000000, double %4316, double %4308)
  %4318 = load ptr, ptr %7, align 8, !tbaa !9
  %4319 = load i32, ptr %12, align 4, !tbaa !5
  %4320 = load i32, ptr %8, align 4, !tbaa !5
  %4321 = mul nsw i32 6, %4320
  %4322 = add nsw i32 %4319, %4321
  %4323 = sext i32 %4322 to i64
  %4324 = getelementptr inbounds double, ptr %4318, i64 %4323
  %4325 = load double, ptr %4324, align 8, !tbaa !11
  %4326 = call double @llvm.fmuladd.f64(double 0x3C95000000000000, double %4325, double %4317)
  %4327 = load ptr, ptr %7, align 8, !tbaa !9
  %4328 = load i32, ptr %12, align 4, !tbaa !5
  %4329 = load i32, ptr %8, align 4, !tbaa !5
  %4330 = mul nsw i32 7, %4329
  %4331 = add nsw i32 %4328, %4330
  %4332 = sext i32 %4331 to i64
  %4333 = getelementptr inbounds double, ptr %4327, i64 %4332
  %4334 = load double, ptr %4333, align 8, !tbaa !11
  %4335 = call double @llvm.fmuladd.f64(double 0x3C97800000000000, double %4334, double %4326)
  %4336 = load ptr, ptr %7, align 8, !tbaa !9
  %4337 = load i32, ptr %12, align 4, !tbaa !5
  %4338 = load i32, ptr %8, align 4, !tbaa !5
  %4339 = mul nsw i32 8, %4338
  %4340 = add nsw i32 %4337, %4339
  %4341 = sext i32 %4340 to i64
  %4342 = getelementptr inbounds double, ptr %4336, i64 %4341
  %4343 = load double, ptr %4342, align 8, !tbaa !11
  %4344 = call double @llvm.fmuladd.f64(double 0x3CB3800000000000, double %4343, double %4335)
  %4345 = load ptr, ptr %7, align 8, !tbaa !9
  %4346 = load i32, ptr %12, align 4, !tbaa !5
  %4347 = load i32, ptr %8, align 4, !tbaa !5
  %4348 = mul nsw i32 9, %4347
  %4349 = add nsw i32 %4346, %4348
  %4350 = sext i32 %4349 to i64
  %4351 = getelementptr inbounds double, ptr %4345, i64 %4350
  %4352 = load double, ptr %4351, align 8, !tbaa !11
  %4353 = call double @llvm.fmuladd.f64(double 0xBC84000000000000, double %4352, double %4344)
  %4354 = load ptr, ptr %7, align 8, !tbaa !9
  %4355 = load i32, ptr %12, align 4, !tbaa !5
  %4356 = load i32, ptr %8, align 4, !tbaa !5
  %4357 = mul nsw i32 10, %4356
  %4358 = add nsw i32 %4355, %4357
  %4359 = sext i32 %4358 to i64
  %4360 = getelementptr inbounds double, ptr %4354, i64 %4359
  %4361 = load double, ptr %4360, align 8, !tbaa !11
  %4362 = call double @llvm.fmuladd.f64(double 0x3CCE000000000000, double %4361, double %4353)
  %4363 = load ptr, ptr %7, align 8, !tbaa !9
  %4364 = load i32, ptr %12, align 4, !tbaa !5
  %4365 = load i32, ptr %8, align 4, !tbaa !5
  %4366 = mul nsw i32 11, %4365
  %4367 = add nsw i32 %4364, %4366
  %4368 = sext i32 %4367 to i64
  %4369 = getelementptr inbounds double, ptr %4363, i64 %4368
  %4370 = load double, ptr %4369, align 8, !tbaa !11
  %4371 = call double @llvm.fmuladd.f64(double 0x3C88000000000000, double %4370, double %4362)
  %4372 = load ptr, ptr %7, align 8, !tbaa !9
  %4373 = load i32, ptr %12, align 4, !tbaa !5
  %4374 = load i32, ptr %8, align 4, !tbaa !5
  %4375 = mul nsw i32 12, %4374
  %4376 = add nsw i32 %4373, %4375
  %4377 = sext i32 %4376 to i64
  %4378 = getelementptr inbounds double, ptr %4372, i64 %4377
  %4379 = load double, ptr %4378, align 8, !tbaa !11
  %4380 = call double @llvm.fmuladd.f64(double 0x3FD9A613A5CEF639, double %4379, double %4371)
  %4381 = load ptr, ptr %7, align 8, !tbaa !9
  %4382 = load i32, ptr %12, align 4, !tbaa !5
  %4383 = load i32, ptr %8, align 4, !tbaa !5
  %4384 = mul nsw i32 13, %4383
  %4385 = add nsw i32 %4382, %4384
  %4386 = sext i32 %4385 to i64
  %4387 = getelementptr inbounds double, ptr %4381, i64 %4386
  %4388 = load double, ptr %4387, align 8, !tbaa !11
  %4389 = call double @llvm.fmuladd.f64(double 0xBC95800000000000, double %4388, double %4380)
  %4390 = load ptr, ptr %7, align 8, !tbaa !9
  %4391 = load i32, ptr %12, align 4, !tbaa !5
  %4392 = load i32, ptr %8, align 4, !tbaa !5
  %4393 = mul nsw i32 14, %4392
  %4394 = add nsw i32 %4391, %4393
  %4395 = sext i32 %4394 to i64
  %4396 = getelementptr inbounds double, ptr %4390, i64 %4395
  %4397 = load double, ptr %4396, align 8, !tbaa !11
  %4398 = call double @llvm.fmuladd.f64(double 0xBCC1000000000000, double %4397, double %4389)
  %4399 = load ptr, ptr %7, align 8, !tbaa !9
  %4400 = load i32, ptr %12, align 4, !tbaa !5
  %4401 = load i32, ptr %8, align 4, !tbaa !5
  %4402 = mul nsw i32 15, %4401
  %4403 = add nsw i32 %4400, %4402
  %4404 = sext i32 %4403 to i64
  %4405 = getelementptr inbounds double, ptr %4399, i64 %4404
  %4406 = load double, ptr %4405, align 8, !tbaa !11
  %4407 = call double @llvm.fmuladd.f64(double 0xBCB6800000000000, double %4406, double %4398)
  %4408 = load ptr, ptr %7, align 8, !tbaa !9
  %4409 = load i32, ptr %12, align 4, !tbaa !5
  %4410 = load i32, ptr %8, align 4, !tbaa !5
  %4411 = mul nsw i32 16, %4410
  %4412 = add nsw i32 %4409, %4411
  %4413 = sext i32 %4412 to i64
  %4414 = getelementptr inbounds double, ptr %4408, i64 %4413
  %4415 = load double, ptr %4414, align 8, !tbaa !11
  %4416 = call double @llvm.fmuladd.f64(double 0x3C9DFFFFFFFFFFFE, double %4415, double %4407)
  %4417 = load ptr, ptr %7, align 8, !tbaa !9
  %4418 = load i32, ptr %12, align 4, !tbaa !5
  %4419 = load i32, ptr %8, align 4, !tbaa !5
  %4420 = mul nsw i32 17, %4419
  %4421 = add nsw i32 %4418, %4420
  %4422 = sext i32 %4421 to i64
  %4423 = getelementptr inbounds double, ptr %4417, i64 %4422
  %4424 = load double, ptr %4423, align 8, !tbaa !11
  %4425 = call double @llvm.fmuladd.f64(double 0x3CB9C00000000001, double %4424, double %4416)
  %4426 = load ptr, ptr %7, align 8, !tbaa !9
  %4427 = load i32, ptr %12, align 4, !tbaa !5
  %4428 = load i32, ptr %8, align 4, !tbaa !5
  %4429 = mul nsw i32 18, %4428
  %4430 = add nsw i32 %4427, %4429
  %4431 = sext i32 %4430 to i64
  %4432 = getelementptr inbounds double, ptr %4426, i64 %4431
  %4433 = load double, ptr %4432, align 8, !tbaa !11
  %4434 = call double @llvm.fmuladd.f64(double 0x3C70000000000001, double %4433, double %4425)
  %4435 = load ptr, ptr %7, align 8, !tbaa !9
  %4436 = load i32, ptr %12, align 4, !tbaa !5
  %4437 = load i32, ptr %8, align 4, !tbaa !5
  %4438 = mul nsw i32 19, %4437
  %4439 = add nsw i32 %4436, %4438
  %4440 = sext i32 %4439 to i64
  %4441 = getelementptr inbounds double, ptr %4435, i64 %4440
  %4442 = load double, ptr %4441, align 8, !tbaa !11
  %4443 = call double @llvm.fmuladd.f64(double 0x3C7FFFFFFFFFFFFF, double %4442, double %4434)
  %4444 = load ptr, ptr %7, align 8, !tbaa !9
  %4445 = load i32, ptr %12, align 4, !tbaa !5
  %4446 = load i32, ptr %8, align 4, !tbaa !5
  %4447 = mul nsw i32 20, %4446
  %4448 = add nsw i32 %4445, %4447
  %4449 = sext i32 %4448 to i64
  %4450 = getelementptr inbounds double, ptr %4444, i64 %4449
  %4451 = load double, ptr %4450, align 8, !tbaa !11
  %4452 = call double @llvm.fmuladd.f64(double 0xBCC8000000000000, double %4451, double %4443)
  %4453 = load ptr, ptr %7, align 8, !tbaa !9
  %4454 = load i32, ptr %12, align 4, !tbaa !5
  %4455 = load i32, ptr %8, align 4, !tbaa !5
  %4456 = mul nsw i32 21, %4455
  %4457 = add nsw i32 %4454, %4456
  %4458 = sext i32 %4457 to i64
  %4459 = getelementptr inbounds double, ptr %4453, i64 %4458
  %4460 = load double, ptr %4459, align 8, !tbaa !11
  %4461 = call double @llvm.fmuladd.f64(double 0xBCB1000000000001, double %4460, double %4452)
  %4462 = load ptr, ptr %7, align 8, !tbaa !9
  %4463 = load i32, ptr %12, align 4, !tbaa !5
  %4464 = load i32, ptr %8, align 4, !tbaa !5
  %4465 = mul nsw i32 22, %4464
  %4466 = add nsw i32 %4463, %4465
  %4467 = sext i32 %4466 to i64
  %4468 = getelementptr inbounds double, ptr %4462, i64 %4467
  %4469 = load double, ptr %4468, align 8, !tbaa !11
  %4470 = call double @llvm.fmuladd.f64(double 0xBFEA0946EB3057DC, double %4469, double %4461)
  %4471 = load ptr, ptr %7, align 8, !tbaa !9
  %4472 = load i32, ptr %12, align 4, !tbaa !5
  %4473 = load i32, ptr %8, align 4, !tbaa !5
  %4474 = mul nsw i32 23, %4473
  %4475 = add nsw i32 %4472, %4474
  %4476 = sext i32 %4475 to i64
  %4477 = getelementptr inbounds double, ptr %4471, i64 %4476
  %4478 = load double, ptr %4477, align 8, !tbaa !11
  %4479 = call double @llvm.fmuladd.f64(double 0x3CBA400000000000, double %4478, double %4470)
  %4480 = load ptr, ptr %7, align 8, !tbaa !9
  %4481 = load i32, ptr %12, align 4, !tbaa !5
  %4482 = load i32, ptr %8, align 4, !tbaa !5
  %4483 = mul nsw i32 24, %4482
  %4484 = add nsw i32 %4481, %4483
  %4485 = sext i32 %4484 to i64
  %4486 = getelementptr inbounds double, ptr %4480, i64 %4485
  %4487 = load double, ptr %4486, align 8, !tbaa !11
  %4488 = call double @llvm.fmuladd.f64(double 0x3CB2000000000000, double %4487, double %4479)
  %4489 = load ptr, ptr %7, align 8, !tbaa !9
  %4490 = load i32, ptr %12, align 4, !tbaa !5
  %4491 = load i32, ptr %8, align 4, !tbaa !5
  %4492 = mul nsw i32 25, %4491
  %4493 = add nsw i32 %4490, %4492
  %4494 = sext i32 %4493 to i64
  %4495 = getelementptr inbounds double, ptr %4489, i64 %4494
  %4496 = load double, ptr %4495, align 8, !tbaa !11
  %4497 = call double @llvm.fmuladd.f64(double 0x3C8C000000000000, double %4496, double %4488)
  %4498 = load ptr, ptr %7, align 8, !tbaa !9
  %4499 = load i32, ptr %12, align 4, !tbaa !5
  %4500 = load i32, ptr %8, align 4, !tbaa !5
  %4501 = mul nsw i32 26, %4500
  %4502 = add nsw i32 %4499, %4501
  %4503 = sext i32 %4502 to i64
  %4504 = getelementptr inbounds double, ptr %4498, i64 %4503
  %4505 = load double, ptr %4504, align 8, !tbaa !11
  %4506 = call double @llvm.fmuladd.f64(double 0xBCA4800000000001, double %4505, double %4497)
  %4507 = load ptr, ptr %7, align 8, !tbaa !9
  %4508 = load i32, ptr %12, align 4, !tbaa !5
  %4509 = load i32, ptr %8, align 4, !tbaa !5
  %4510 = mul nsw i32 27, %4509
  %4511 = add nsw i32 %4508, %4510
  %4512 = sext i32 %4511 to i64
  %4513 = getelementptr inbounds double, ptr %4507, i64 %4512
  %4514 = load double, ptr %4513, align 8, !tbaa !11
  %4515 = call double @llvm.fmuladd.f64(double 0xBCA7000000000002, double %4514, double %4506)
  %4516 = load ptr, ptr %7, align 8, !tbaa !9
  %4517 = load i32, ptr %12, align 4, !tbaa !5
  %4518 = load i32, ptr %8, align 4, !tbaa !5
  %4519 = mul nsw i32 28, %4518
  %4520 = add nsw i32 %4517, %4519
  %4521 = sext i32 %4520 to i64
  %4522 = getelementptr inbounds double, ptr %4516, i64 %4521
  %4523 = load double, ptr %4522, align 8, !tbaa !11
  %4524 = call double @llvm.fmuladd.f64(double 0x3C94000000000000, double %4523, double %4515)
  %4525 = load ptr, ptr %7, align 8, !tbaa !9
  %4526 = load i32, ptr %12, align 4, !tbaa !5
  %4527 = load i32, ptr %8, align 4, !tbaa !5
  %4528 = mul nsw i32 29, %4527
  %4529 = add nsw i32 %4526, %4528
  %4530 = sext i32 %4529 to i64
  %4531 = getelementptr inbounds double, ptr %4525, i64 %4530
  %4532 = load double, ptr %4531, align 8, !tbaa !11
  %4533 = call double @llvm.fmuladd.f64(double 0xBC98000000000000, double %4532, double %4524)
  %4534 = load ptr, ptr %7, align 8, !tbaa !9
  %4535 = load i32, ptr %12, align 4, !tbaa !5
  %4536 = load i32, ptr %8, align 4, !tbaa !5
  %4537 = mul nsw i32 30, %4536
  %4538 = add nsw i32 %4535, %4537
  %4539 = sext i32 %4538 to i64
  %4540 = getelementptr inbounds double, ptr %4534, i64 %4539
  %4541 = load double, ptr %4540, align 8, !tbaa !11
  %4542 = call double @llvm.fmuladd.f64(double 0xBCBBC00000000001, double %4541, double %4533)
  %4543 = load ptr, ptr %7, align 8, !tbaa !9
  %4544 = load i32, ptr %12, align 4, !tbaa !5
  %4545 = load i32, ptr %8, align 4, !tbaa !5
  %4546 = mul nsw i32 31, %4545
  %4547 = add nsw i32 %4544, %4546
  %4548 = sext i32 %4547 to i64
  %4549 = getelementptr inbounds double, ptr %4543, i64 %4548
  %4550 = load double, ptr %4549, align 8, !tbaa !11
  %4551 = call double @llvm.fmuladd.f64(double 0xBC94000000000000, double %4550, double %4542)
  %4552 = load ptr, ptr %7, align 8, !tbaa !9
  %4553 = load i32, ptr %12, align 4, !tbaa !5
  %4554 = load i32, ptr %8, align 4, !tbaa !5
  %4555 = mul nsw i32 32, %4554
  %4556 = add nsw i32 %4553, %4555
  %4557 = sext i32 %4556 to i64
  %4558 = getelementptr inbounds double, ptr %4552, i64 %4557
  %4559 = load double, ptr %4558, align 8, !tbaa !11
  %4560 = call double @llvm.fmuladd.f64(double 0x3FF86DB962AC2966, double %4559, double %4551)
  %4561 = load ptr, ptr %7, align 8, !tbaa !9
  %4562 = load i32, ptr %12, align 4, !tbaa !5
  %4563 = load i32, ptr %8, align 4, !tbaa !5
  %4564 = mul nsw i32 33, %4563
  %4565 = add nsw i32 %4562, %4564
  %4566 = sext i32 %4565 to i64
  %4567 = getelementptr inbounds double, ptr %4561, i64 %4566
  %4568 = load double, ptr %4567, align 8, !tbaa !11
  %4569 = call double @llvm.fmuladd.f64(double 0x3C95000000000000, double %4568, double %4560)
  %4570 = load ptr, ptr %7, align 8, !tbaa !9
  %4571 = load i32, ptr %12, align 4, !tbaa !5
  %4572 = load i32, ptr %8, align 4, !tbaa !5
  %4573 = mul nsw i32 34, %4572
  %4574 = add nsw i32 %4571, %4573
  %4575 = sext i32 %4574 to i64
  %4576 = getelementptr inbounds double, ptr %4570, i64 %4575
  %4577 = load double, ptr %4576, align 8, !tbaa !11
  %4578 = call double @llvm.fmuladd.f64(double 0x3CAD7FFFFFFFFFFE, double %4577, double %4569)
  %4579 = load ptr, ptr %7, align 8, !tbaa !9
  %4580 = load i32, ptr %12, align 4, !tbaa !5
  %4581 = load i32, ptr %8, align 4, !tbaa !5
  %4582 = mul nsw i32 35, %4581
  %4583 = add nsw i32 %4580, %4582
  %4584 = sext i32 %4583 to i64
  %4585 = getelementptr inbounds double, ptr %4579, i64 %4584
  %4586 = load double, ptr %4585, align 8, !tbaa !11
  %4587 = call double @llvm.fmuladd.f64(double 0x3CA4000000000001, double %4586, double %4578)
  %4588 = load ptr, ptr %7, align 8, !tbaa !9
  %4589 = load i32, ptr %12, align 4, !tbaa !5
  %4590 = load i32, ptr %8, align 4, !tbaa !5
  %4591 = mul nsw i32 36, %4590
  %4592 = add nsw i32 %4589, %4591
  %4593 = sext i32 %4592 to i64
  %4594 = getelementptr inbounds double, ptr %4588, i64 %4593
  %4595 = load double, ptr %4594, align 8, !tbaa !11
  %4596 = call double @llvm.fmuladd.f64(double 0xBCAB800000000001, double %4595, double %4587)
  %4597 = load ptr, ptr %7, align 8, !tbaa !9
  %4598 = load i32, ptr %12, align 4, !tbaa !5
  %4599 = load i32, ptr %8, align 4, !tbaa !5
  %4600 = mul nsw i32 37, %4599
  %4601 = add nsw i32 %4598, %4600
  %4602 = sext i32 %4601 to i64
  %4603 = getelementptr inbounds double, ptr %4597, i64 %4602
  %4604 = load double, ptr %4603, align 8, !tbaa !11
  %4605 = call double @llvm.fmuladd.f64(double 0xBC78000000000002, double %4604, double %4596)
  %4606 = load ptr, ptr %7, align 8, !tbaa !9
  %4607 = load i32, ptr %12, align 4, !tbaa !5
  %4608 = load i32, ptr %8, align 4, !tbaa !5
  %4609 = mul nsw i32 38, %4608
  %4610 = add nsw i32 %4607, %4609
  %4611 = sext i32 %4610 to i64
  %4612 = getelementptr inbounds double, ptr %4606, i64 %4611
  %4613 = load double, ptr %4612, align 8, !tbaa !11
  %4614 = call double @llvm.fmuladd.f64(double 0xBCA9FFFFFFFFFFFE, double %4613, double %4605)
  %4615 = load ptr, ptr %7, align 8, !tbaa !9
  %4616 = load i32, ptr %12, align 4, !tbaa !5
  %4617 = load i32, ptr %8, align 4, !tbaa !5
  %4618 = mul nsw i32 39, %4617
  %4619 = add nsw i32 %4616, %4618
  %4620 = sext i32 %4619 to i64
  %4621 = getelementptr inbounds double, ptr %4615, i64 %4620
  %4622 = load double, ptr %4621, align 8, !tbaa !11
  %4623 = call double @llvm.fmuladd.f64(double 0xBC84000000000000, double %4622, double %4614)
  store double %4623, ptr %11, align 8, !tbaa !11
  %4624 = load double, ptr %11, align 8, !tbaa !11
  %4625 = load ptr, ptr %9, align 8, !tbaa !9
  %4626 = load i32, ptr %12, align 4, !tbaa !5
  %4627 = load i32, ptr %10, align 4, !tbaa !5
  %4628 = mul nsw i32 12, %4627
  %4629 = add nsw i32 %4626, %4628
  %4630 = sext i32 %4629 to i64
  %4631 = getelementptr inbounds double, ptr %4625, i64 %4630
  store double %4624, ptr %4631, align 8, !tbaa !11
  %4632 = load ptr, ptr %7, align 8, !tbaa !9
  %4633 = load i32, ptr %12, align 4, !tbaa !5
  %4634 = load i32, ptr %8, align 4, !tbaa !5
  %4635 = mul nsw i32 0, %4634
  %4636 = add nsw i32 %4633, %4635
  %4637 = sext i32 %4636 to i64
  %4638 = getelementptr inbounds double, ptr %4632, i64 %4637
  %4639 = load double, ptr %4638, align 8, !tbaa !11
  %4640 = load ptr, ptr %7, align 8, !tbaa !9
  %4641 = load i32, ptr %12, align 4, !tbaa !5
  %4642 = load i32, ptr %8, align 4, !tbaa !5
  %4643 = mul nsw i32 1, %4642
  %4644 = add nsw i32 %4641, %4643
  %4645 = sext i32 %4644 to i64
  %4646 = getelementptr inbounds double, ptr %4640, i64 %4645
  %4647 = load double, ptr %4646, align 8, !tbaa !11
  %4648 = fmul double 0xBC78000000000002, %4647
  %4649 = call double @llvm.fmuladd.f64(double 0x3C8E000000000000, double %4639, double %4648)
  %4650 = load ptr, ptr %7, align 8, !tbaa !9
  %4651 = load i32, ptr %12, align 4, !tbaa !5
  %4652 = load i32, ptr %8, align 4, !tbaa !5
  %4653 = mul nsw i32 2, %4652
  %4654 = add nsw i32 %4651, %4653
  %4655 = sext i32 %4654 to i64
  %4656 = getelementptr inbounds double, ptr %4650, i64 %4655
  %4657 = load double, ptr %4656, align 8, !tbaa !11
  %4658 = call double @llvm.fmuladd.f64(double 0xBC62000000000000, double %4657, double %4649)
  %4659 = load ptr, ptr %7, align 8, !tbaa !9
  %4660 = load i32, ptr %12, align 4, !tbaa !5
  %4661 = load i32, ptr %8, align 4, !tbaa !5
  %4662 = mul nsw i32 3, %4661
  %4663 = add nsw i32 %4660, %4662
  %4664 = sext i32 %4663 to i64
  %4665 = getelementptr inbounds double, ptr %4659, i64 %4664
  %4666 = load double, ptr %4665, align 8, !tbaa !11
  %4667 = call double @llvm.fmuladd.f64(double 0xBFBD29AD687BB04F, double %4666, double %4658)
  %4668 = load ptr, ptr %7, align 8, !tbaa !9
  %4669 = load i32, ptr %12, align 4, !tbaa !5
  %4670 = load i32, ptr %8, align 4, !tbaa !5
  %4671 = mul nsw i32 4, %4670
  %4672 = add nsw i32 %4669, %4671
  %4673 = sext i32 %4672 to i64
  %4674 = getelementptr inbounds double, ptr %4668, i64 %4673
  %4675 = load double, ptr %4674, align 8, !tbaa !11
  %4676 = call double @llvm.fmuladd.f64(double 0x3C96000000000000, double %4675, double %4667)
  %4677 = load ptr, ptr %7, align 8, !tbaa !9
  %4678 = load i32, ptr %12, align 4, !tbaa !5
  %4679 = load i32, ptr %8, align 4, !tbaa !5
  %4680 = mul nsw i32 5, %4679
  %4681 = add nsw i32 %4678, %4680
  %4682 = sext i32 %4681 to i64
  %4683 = getelementptr inbounds double, ptr %4677, i64 %4682
  %4684 = load double, ptr %4683, align 8, !tbaa !11
  %4685 = call double @llvm.fmuladd.f64(double 0x3CA8000000000001, double %4684, double %4676)
  %4686 = load ptr, ptr %7, align 8, !tbaa !9
  %4687 = load i32, ptr %12, align 4, !tbaa !5
  %4688 = load i32, ptr %8, align 4, !tbaa !5
  %4689 = mul nsw i32 6, %4688
  %4690 = add nsw i32 %4687, %4689
  %4691 = sext i32 %4690 to i64
  %4692 = getelementptr inbounds double, ptr %4686, i64 %4691
  %4693 = load double, ptr %4692, align 8, !tbaa !11
  %4694 = call double @llvm.fmuladd.f64(double 0xBCA1000000000001, double %4693, double %4685)
  %4695 = load ptr, ptr %7, align 8, !tbaa !9
  %4696 = load i32, ptr %12, align 4, !tbaa !5
  %4697 = load i32, ptr %8, align 4, !tbaa !5
  %4698 = mul nsw i32 7, %4697
  %4699 = add nsw i32 %4696, %4698
  %4700 = sext i32 %4699 to i64
  %4701 = getelementptr inbounds double, ptr %4695, i64 %4700
  %4702 = load double, ptr %4701, align 8, !tbaa !11
  %4703 = call double @llvm.fmuladd.f64(double 0xBC64000000000000, double %4702, double %4694)
  %4704 = load ptr, ptr %7, align 8, !tbaa !9
  %4705 = load i32, ptr %12, align 4, !tbaa !5
  %4706 = load i32, ptr %8, align 4, !tbaa !5
  %4707 = mul nsw i32 8, %4706
  %4708 = add nsw i32 %4705, %4707
  %4709 = sext i32 %4708 to i64
  %4710 = getelementptr inbounds double, ptr %4704, i64 %4709
  %4711 = load double, ptr %4710, align 8, !tbaa !11
  %4712 = call double @llvm.fmuladd.f64(double 0xBC98000000000000, double %4711, double %4703)
  %4713 = load ptr, ptr %7, align 8, !tbaa !9
  %4714 = load i32, ptr %12, align 4, !tbaa !5
  %4715 = load i32, ptr %8, align 4, !tbaa !5
  %4716 = mul nsw i32 9, %4715
  %4717 = add nsw i32 %4714, %4716
  %4718 = sext i32 %4717 to i64
  %4719 = getelementptr inbounds double, ptr %4713, i64 %4718
  %4720 = load double, ptr %4719, align 8, !tbaa !11
  %4721 = call double @llvm.fmuladd.f64(double 0xBCA7000000000002, double %4720, double %4712)
  %4722 = load ptr, ptr %7, align 8, !tbaa !9
  %4723 = load i32, ptr %12, align 4, !tbaa !5
  %4724 = load i32, ptr %8, align 4, !tbaa !5
  %4725 = mul nsw i32 10, %4724
  %4726 = add nsw i32 %4723, %4725
  %4727 = sext i32 %4726 to i64
  %4728 = getelementptr inbounds double, ptr %4722, i64 %4727
  %4729 = load double, ptr %4728, align 8, !tbaa !11
  %4730 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %4729, double %4721)
  %4731 = load ptr, ptr %7, align 8, !tbaa !9
  %4732 = load i32, ptr %12, align 4, !tbaa !5
  %4733 = load i32, ptr %8, align 4, !tbaa !5
  %4734 = mul nsw i32 11, %4733
  %4735 = add nsw i32 %4732, %4734
  %4736 = sext i32 %4735 to i64
  %4737 = getelementptr inbounds double, ptr %4731, i64 %4736
  %4738 = load double, ptr %4737, align 8, !tbaa !11
  %4739 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %4738, double %4730)
  %4740 = load ptr, ptr %7, align 8, !tbaa !9
  %4741 = load i32, ptr %12, align 4, !tbaa !5
  %4742 = load i32, ptr %8, align 4, !tbaa !5
  %4743 = mul nsw i32 12, %4742
  %4744 = add nsw i32 %4741, %4743
  %4745 = sext i32 %4744 to i64
  %4746 = getelementptr inbounds double, ptr %4740, i64 %4745
  %4747 = load double, ptr %4746, align 8, !tbaa !11
  %4748 = call double @llvm.fmuladd.f64(double 0xBC7E000000000001, double %4747, double %4739)
  %4749 = load ptr, ptr %7, align 8, !tbaa !9
  %4750 = load i32, ptr %12, align 4, !tbaa !5
  %4751 = load i32, ptr %8, align 4, !tbaa !5
  %4752 = mul nsw i32 13, %4751
  %4753 = add nsw i32 %4750, %4752
  %4754 = sext i32 %4753 to i64
  %4755 = getelementptr inbounds double, ptr %4749, i64 %4754
  %4756 = load double, ptr %4755, align 8, !tbaa !11
  %4757 = call double @llvm.fmuladd.f64(double 0x3FD9A613A5CEF637, double %4756, double %4748)
  %4758 = load ptr, ptr %7, align 8, !tbaa !9
  %4759 = load i32, ptr %12, align 4, !tbaa !5
  %4760 = load i32, ptr %8, align 4, !tbaa !5
  %4761 = mul nsw i32 15, %4760
  %4762 = add nsw i32 %4759, %4761
  %4763 = sext i32 %4762 to i64
  %4764 = getelementptr inbounds double, ptr %4758, i64 %4763
  %4765 = load double, ptr %4764, align 8, !tbaa !11
  %4766 = call double @llvm.fmuladd.f64(double 0xBC96000000000000, double %4765, double %4757)
  %4767 = load ptr, ptr %7, align 8, !tbaa !9
  %4768 = load i32, ptr %12, align 4, !tbaa !5
  %4769 = load i32, ptr %8, align 4, !tbaa !5
  %4770 = mul nsw i32 16, %4769
  %4771 = add nsw i32 %4768, %4770
  %4772 = sext i32 %4771 to i64
  %4773 = getelementptr inbounds double, ptr %4767, i64 %4772
  %4774 = load double, ptr %4773, align 8, !tbaa !11
  %4775 = call double @llvm.fmuladd.f64(double 0x3CA1800000000000, double %4774, double %4766)
  %4776 = load ptr, ptr %7, align 8, !tbaa !9
  %4777 = load i32, ptr %12, align 4, !tbaa !5
  %4778 = load i32, ptr %8, align 4, !tbaa !5
  %4779 = mul nsw i32 17, %4778
  %4780 = add nsw i32 %4777, %4779
  %4781 = sext i32 %4780 to i64
  %4782 = getelementptr inbounds double, ptr %4776, i64 %4781
  %4783 = load double, ptr %4782, align 8, !tbaa !11
  %4784 = call double @llvm.fmuladd.f64(double 0xBCB5BFFFFFFFFFFF, double %4783, double %4775)
  %4785 = load ptr, ptr %7, align 8, !tbaa !9
  %4786 = load i32, ptr %12, align 4, !tbaa !5
  %4787 = load i32, ptr %8, align 4, !tbaa !5
  %4788 = mul nsw i32 18, %4787
  %4789 = add nsw i32 %4786, %4788
  %4790 = sext i32 %4789 to i64
  %4791 = getelementptr inbounds double, ptr %4785, i64 %4790
  %4792 = load double, ptr %4791, align 8, !tbaa !11
  %4793 = call double @llvm.fmuladd.f64(double 0xBC88000000000000, double %4792, double %4784)
  %4794 = load ptr, ptr %7, align 8, !tbaa !9
  %4795 = load i32, ptr %12, align 4, !tbaa !5
  %4796 = load i32, ptr %8, align 4, !tbaa !5
  %4797 = mul nsw i32 19, %4796
  %4798 = add nsw i32 %4795, %4797
  %4799 = sext i32 %4798 to i64
  %4800 = getelementptr inbounds double, ptr %4794, i64 %4799
  %4801 = load double, ptr %4800, align 8, !tbaa !11
  %4802 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %4801, double %4793)
  %4803 = load ptr, ptr %7, align 8, !tbaa !9
  %4804 = load i32, ptr %12, align 4, !tbaa !5
  %4805 = load i32, ptr %8, align 4, !tbaa !5
  %4806 = mul nsw i32 20, %4805
  %4807 = add nsw i32 %4804, %4806
  %4808 = sext i32 %4807 to i64
  %4809 = getelementptr inbounds double, ptr %4803, i64 %4808
  %4810 = load double, ptr %4809, align 8, !tbaa !11
  %4811 = call double @llvm.fmuladd.f64(double 0x3CA4000000000001, double %4810, double %4802)
  %4812 = load ptr, ptr %7, align 8, !tbaa !9
  %4813 = load i32, ptr %12, align 4, !tbaa !5
  %4814 = load i32, ptr %8, align 4, !tbaa !5
  %4815 = mul nsw i32 21, %4814
  %4816 = add nsw i32 %4813, %4815
  %4817 = sext i32 %4816 to i64
  %4818 = getelementptr inbounds double, ptr %4812, i64 %4817
  %4819 = load double, ptr %4818, align 8, !tbaa !11
  %4820 = call double @llvm.fmuladd.f64(double 0x3C88000000000000, double %4819, double %4811)
  %4821 = load ptr, ptr %7, align 8, !tbaa !9
  %4822 = load i32, ptr %12, align 4, !tbaa !5
  %4823 = load i32, ptr %8, align 4, !tbaa !5
  %4824 = mul nsw i32 22, %4823
  %4825 = add nsw i32 %4822, %4824
  %4826 = sext i32 %4825 to i64
  %4827 = getelementptr inbounds double, ptr %4821, i64 %4826
  %4828 = load double, ptr %4827, align 8, !tbaa !11
  %4829 = call double @llvm.fmuladd.f64(double 0xBC86000000000001, double %4828, double %4820)
  %4830 = load ptr, ptr %7, align 8, !tbaa !9
  %4831 = load i32, ptr %12, align 4, !tbaa !5
  %4832 = load i32, ptr %8, align 4, !tbaa !5
  %4833 = mul nsw i32 23, %4832
  %4834 = add nsw i32 %4831, %4833
  %4835 = sext i32 %4834 to i64
  %4836 = getelementptr inbounds double, ptr %4830, i64 %4835
  %4837 = load double, ptr %4836, align 8, !tbaa !11
  %4838 = call double @llvm.fmuladd.f64(double 0xBFEA0946EB3057DA, double %4837, double %4829)
  %4839 = load ptr, ptr %7, align 8, !tbaa !9
  %4840 = load i32, ptr %12, align 4, !tbaa !5
  %4841 = load i32, ptr %8, align 4, !tbaa !5
  %4842 = mul nsw i32 24, %4841
  %4843 = add nsw i32 %4840, %4842
  %4844 = sext i32 %4843 to i64
  %4845 = getelementptr inbounds double, ptr %4839, i64 %4844
  %4846 = load double, ptr %4845, align 8, !tbaa !11
  %4847 = call double @llvm.fmuladd.f64(double 0x3C7FFFFFFFFFFFFF, double %4846, double %4838)
  %4848 = load ptr, ptr %7, align 8, !tbaa !9
  %4849 = load i32, ptr %12, align 4, !tbaa !5
  %4850 = load i32, ptr %8, align 4, !tbaa !5
  %4851 = mul nsw i32 25, %4850
  %4852 = add nsw i32 %4849, %4851
  %4853 = sext i32 %4852 to i64
  %4854 = getelementptr inbounds double, ptr %4848, i64 %4853
  %4855 = load double, ptr %4854, align 8, !tbaa !11
  %4856 = call double @llvm.fmuladd.f64(double 0xBC60000000000000, double %4855, double %4847)
  %4857 = load ptr, ptr %7, align 8, !tbaa !9
  %4858 = load i32, ptr %12, align 4, !tbaa !5
  %4859 = load i32, ptr %8, align 4, !tbaa !5
  %4860 = mul nsw i32 26, %4859
  %4861 = add nsw i32 %4858, %4860
  %4862 = sext i32 %4861 to i64
  %4863 = getelementptr inbounds double, ptr %4857, i64 %4862
  %4864 = load double, ptr %4863, align 8, !tbaa !11
  %4865 = call double @llvm.fmuladd.f64(double 0x3C9CFFFFFFFFFFFF, double %4864, double %4856)
  %4866 = load ptr, ptr %7, align 8, !tbaa !9
  %4867 = load i32, ptr %12, align 4, !tbaa !5
  %4868 = load i32, ptr %8, align 4, !tbaa !5
  %4869 = mul nsw i32 27, %4868
  %4870 = add nsw i32 %4867, %4869
  %4871 = sext i32 %4870 to i64
  %4872 = getelementptr inbounds double, ptr %4866, i64 %4871
  %4873 = load double, ptr %4872, align 8, !tbaa !11
  %4874 = call double @llvm.fmuladd.f64(double 0xBC74000000000000, double %4873, double %4865)
  %4875 = load ptr, ptr %7, align 8, !tbaa !9
  %4876 = load i32, ptr %12, align 4, !tbaa !5
  %4877 = load i32, ptr %8, align 4, !tbaa !5
  %4878 = mul nsw i32 28, %4877
  %4879 = add nsw i32 %4876, %4878
  %4880 = sext i32 %4879 to i64
  %4881 = getelementptr inbounds double, ptr %4875, i64 %4880
  %4882 = load double, ptr %4881, align 8, !tbaa !11
  %4883 = call double @llvm.fmuladd.f64(double 0x3CA4000000000001, double %4882, double %4874)
  %4884 = load ptr, ptr %7, align 8, !tbaa !9
  %4885 = load i32, ptr %12, align 4, !tbaa !5
  %4886 = load i32, ptr %8, align 4, !tbaa !5
  %4887 = mul nsw i32 29, %4886
  %4888 = add nsw i32 %4885, %4887
  %4889 = sext i32 %4888 to i64
  %4890 = getelementptr inbounds double, ptr %4884, i64 %4889
  %4891 = load double, ptr %4890, align 8, !tbaa !11
  %4892 = call double @llvm.fmuladd.f64(double 0x3C70000000000001, double %4891, double %4883)
  %4893 = load ptr, ptr %7, align 8, !tbaa !9
  %4894 = load i32, ptr %12, align 4, !tbaa !5
  %4895 = load i32, ptr %8, align 4, !tbaa !5
  %4896 = mul nsw i32 30, %4895
  %4897 = add nsw i32 %4894, %4896
  %4898 = sext i32 %4897 to i64
  %4899 = getelementptr inbounds double, ptr %4893, i64 %4898
  %4900 = load double, ptr %4899, align 8, !tbaa !11
  %4901 = call double @llvm.fmuladd.f64(double 0x3CAE800000000001, double %4900, double %4892)
  %4902 = load ptr, ptr %7, align 8, !tbaa !9
  %4903 = load i32, ptr %12, align 4, !tbaa !5
  %4904 = load i32, ptr %8, align 4, !tbaa !5
  %4905 = mul nsw i32 31, %4904
  %4906 = add nsw i32 %4903, %4905
  %4907 = sext i32 %4906 to i64
  %4908 = getelementptr inbounds double, ptr %4902, i64 %4907
  %4909 = load double, ptr %4908, align 8, !tbaa !11
  %4910 = call double @llvm.fmuladd.f64(double 0xBC8E000000000000, double %4909, double %4901)
  %4911 = load ptr, ptr %7, align 8, !tbaa !9
  %4912 = load i32, ptr %12, align 4, !tbaa !5
  %4913 = load i32, ptr %8, align 4, !tbaa !5
  %4914 = mul nsw i32 32, %4913
  %4915 = add nsw i32 %4912, %4914
  %4916 = sext i32 %4915 to i64
  %4917 = getelementptr inbounds double, ptr %4911, i64 %4916
  %4918 = load double, ptr %4917, align 8, !tbaa !11
  %4919 = call double @llvm.fmuladd.f64(double 0xBC70000000000001, double %4918, double %4910)
  %4920 = load ptr, ptr %7, align 8, !tbaa !9
  %4921 = load i32, ptr %12, align 4, !tbaa !5
  %4922 = load i32, ptr %8, align 4, !tbaa !5
  %4923 = mul nsw i32 33, %4922
  %4924 = add nsw i32 %4921, %4923
  %4925 = sext i32 %4924 to i64
  %4926 = getelementptr inbounds double, ptr %4920, i64 %4925
  %4927 = load double, ptr %4926, align 8, !tbaa !11
  %4928 = call double @llvm.fmuladd.f64(double 0x3FF86DB962AC2966, double %4927, double %4919)
  %4929 = load ptr, ptr %7, align 8, !tbaa !9
  %4930 = load i32, ptr %12, align 4, !tbaa !5
  %4931 = load i32, ptr %8, align 4, !tbaa !5
  %4932 = mul nsw i32 34, %4931
  %4933 = add nsw i32 %4930, %4932
  %4934 = sext i32 %4933 to i64
  %4935 = getelementptr inbounds double, ptr %4929, i64 %4934
  %4936 = load double, ptr %4935, align 8, !tbaa !11
  %4937 = call double @llvm.fmuladd.f64(double 0x3C93000000000000, double %4936, double %4928)
  %4938 = load ptr, ptr %7, align 8, !tbaa !9
  %4939 = load i32, ptr %12, align 4, !tbaa !5
  %4940 = load i32, ptr %8, align 4, !tbaa !5
  %4941 = mul nsw i32 35, %4940
  %4942 = add nsw i32 %4939, %4941
  %4943 = sext i32 %4942 to i64
  %4944 = getelementptr inbounds double, ptr %4938, i64 %4943
  %4945 = load double, ptr %4944, align 8, !tbaa !11
  %4946 = call double @llvm.fmuladd.f64(double 0xBC98000000000000, double %4945, double %4937)
  %4947 = load ptr, ptr %7, align 8, !tbaa !9
  %4948 = load i32, ptr %12, align 4, !tbaa !5
  %4949 = load i32, ptr %8, align 4, !tbaa !5
  %4950 = mul nsw i32 36, %4949
  %4951 = add nsw i32 %4948, %4950
  %4952 = sext i32 %4951 to i64
  %4953 = getelementptr inbounds double, ptr %4947, i64 %4952
  %4954 = load double, ptr %4953, align 8, !tbaa !11
  %4955 = call double @llvm.fmuladd.f64(double 0x3C94000000000000, double %4954, double %4946)
  %4956 = load ptr, ptr %7, align 8, !tbaa !9
  %4957 = load i32, ptr %12, align 4, !tbaa !5
  %4958 = load i32, ptr %8, align 4, !tbaa !5
  %4959 = mul nsw i32 37, %4958
  %4960 = add nsw i32 %4957, %4959
  %4961 = sext i32 %4960 to i64
  %4962 = getelementptr inbounds double, ptr %4956, i64 %4961
  %4963 = load double, ptr %4962, align 8, !tbaa !11
  %4964 = call double @llvm.fmuladd.f64(double 0x3C95000000000000, double %4963, double %4955)
  %4965 = load ptr, ptr %7, align 8, !tbaa !9
  %4966 = load i32, ptr %12, align 4, !tbaa !5
  %4967 = load i32, ptr %8, align 4, !tbaa !5
  %4968 = mul nsw i32 38, %4967
  %4969 = add nsw i32 %4966, %4968
  %4970 = sext i32 %4969 to i64
  %4971 = getelementptr inbounds double, ptr %4965, i64 %4970
  %4972 = load double, ptr %4971, align 8, !tbaa !11
  %4973 = call double @llvm.fmuladd.f64(double 0xBCA2000000000000, double %4972, double %4964)
  %4974 = load ptr, ptr %7, align 8, !tbaa !9
  %4975 = load i32, ptr %12, align 4, !tbaa !5
  %4976 = load i32, ptr %8, align 4, !tbaa !5
  %4977 = mul nsw i32 39, %4976
  %4978 = add nsw i32 %4975, %4977
  %4979 = sext i32 %4978 to i64
  %4980 = getelementptr inbounds double, ptr %4974, i64 %4979
  %4981 = load double, ptr %4980, align 8, !tbaa !11
  %4982 = call double @llvm.fmuladd.f64(double 0x3C78000000000002, double %4981, double %4973)
  store double %4982, ptr %11, align 8, !tbaa !11
  %4983 = load double, ptr %11, align 8, !tbaa !11
  %4984 = load ptr, ptr %9, align 8, !tbaa !9
  %4985 = load i32, ptr %12, align 4, !tbaa !5
  %4986 = load i32, ptr %10, align 4, !tbaa !5
  %4987 = mul nsw i32 13, %4986
  %4988 = add nsw i32 %4985, %4987
  %4989 = sext i32 %4988 to i64
  %4990 = getelementptr inbounds double, ptr %4984, i64 %4989
  store double %4983, ptr %4990, align 8, !tbaa !11
  %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 0, %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 = load ptr, ptr %7, align 8, !tbaa !9
  %5000 = load i32, ptr %12, align 4, !tbaa !5
  %5001 = load i32, ptr %8, align 4, !tbaa !5
  %5002 = mul nsw i32 1, %5001
  %5003 = add nsw i32 %5000, %5002
  %5004 = sext i32 %5003 to i64
  %5005 = getelementptr inbounds double, ptr %4999, i64 %5004
  %5006 = load double, ptr %5005, align 8, !tbaa !11
  %5007 = fmul double 0xBCB77FFFFFFFFFFF, %5006
  %5008 = call double @llvm.fmuladd.f64(double 0xBCC9000000000000, double %4998, double %5007)
  %5009 = load ptr, ptr %7, align 8, !tbaa !9
  %5010 = load i32, ptr %12, align 4, !tbaa !5
  %5011 = load i32, ptr %8, align 4, !tbaa !5
  %5012 = mul nsw i32 2, %5011
  %5013 = add nsw i32 %5010, %5012
  %5014 = sext i32 %5013 to i64
  %5015 = getelementptr inbounds double, ptr %5009, i64 %5014
  %5016 = load double, ptr %5015, align 8, !tbaa !11
  %5017 = call double @llvm.fmuladd.f64(double 0xBCA33FFFFFFFFFFE, double %5016, double %5008)
  %5018 = load ptr, ptr %7, align 8, !tbaa !9
  %5019 = load i32, ptr %12, align 4, !tbaa !5
  %5020 = load i32, ptr %8, align 4, !tbaa !5
  %5021 = mul nsw i32 3, %5020
  %5022 = add nsw i32 %5019, %5021
  %5023 = sext i32 %5022 to i64
  %5024 = getelementptr inbounds double, ptr %5018, i64 %5023
  %5025 = load double, ptr %5024, align 8, !tbaa !11
  %5026 = call double @llvm.fmuladd.f64(double 0xBCB7D00000000001, double %5025, double %5017)
  %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 4, %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 = call double @llvm.fmuladd.f64(double 0xBFBD29AD687BB04F, double %5034, double %5026)
  %5036 = load ptr, ptr %7, align 8, !tbaa !9
  %5037 = load i32, ptr %12, align 4, !tbaa !5
  %5038 = load i32, ptr %8, align 4, !tbaa !5
  %5039 = mul nsw i32 5, %5038
  %5040 = add nsw i32 %5037, %5039
  %5041 = sext i32 %5040 to i64
  %5042 = getelementptr inbounds double, ptr %5036, i64 %5041
  %5043 = load double, ptr %5042, align 8, !tbaa !11
  %5044 = call double @llvm.fmuladd.f64(double 0x3CAE800000000001, double %5043, double %5035)
  %5045 = load ptr, ptr %7, align 8, !tbaa !9
  %5046 = load i32, ptr %12, align 4, !tbaa !5
  %5047 = load i32, ptr %8, align 4, !tbaa !5
  %5048 = mul nsw i32 6, %5047
  %5049 = add nsw i32 %5046, %5048
  %5050 = sext i32 %5049 to i64
  %5051 = getelementptr inbounds double, ptr %5045, i64 %5050
  %5052 = load double, ptr %5051, align 8, !tbaa !11
  %5053 = call double @llvm.fmuladd.f64(double 0x3C99000000000000, double %5052, double %5044)
  %5054 = load ptr, ptr %7, align 8, !tbaa !9
  %5055 = load i32, ptr %12, align 4, !tbaa !5
  %5056 = load i32, ptr %8, align 4, !tbaa !5
  %5057 = mul nsw i32 7, %5056
  %5058 = add nsw i32 %5055, %5057
  %5059 = sext i32 %5058 to i64
  %5060 = getelementptr inbounds double, ptr %5054, i64 %5059
  %5061 = load double, ptr %5060, align 8, !tbaa !11
  %5062 = call double @llvm.fmuladd.f64(double 0xBCB5600000000000, double %5061, double %5053)
  %5063 = load ptr, ptr %7, align 8, !tbaa !9
  %5064 = load i32, ptr %12, align 4, !tbaa !5
  %5065 = load i32, ptr %8, align 4, !tbaa !5
  %5066 = mul nsw i32 8, %5065
  %5067 = add nsw i32 %5064, %5066
  %5068 = sext i32 %5067 to i64
  %5069 = getelementptr inbounds double, ptr %5063, i64 %5068
  %5070 = load double, ptr %5069, align 8, !tbaa !11
  %5071 = call double @llvm.fmuladd.f64(double 0x3C60000000000000, double %5070, double %5062)
  %5072 = load ptr, ptr %7, align 8, !tbaa !9
  %5073 = load i32, ptr %12, align 4, !tbaa !5
  %5074 = load i32, ptr %8, align 4, !tbaa !5
  %5075 = mul nsw i32 9, %5074
  %5076 = add nsw i32 %5073, %5075
  %5077 = sext i32 %5076 to i64
  %5078 = getelementptr inbounds double, ptr %5072, i64 %5077
  %5079 = load double, ptr %5078, align 8, !tbaa !11
  %5080 = call double @llvm.fmuladd.f64(double 0xBC78000000000002, double %5079, double %5071)
  %5081 = load ptr, ptr %7, align 8, !tbaa !9
  %5082 = load i32, ptr %12, align 4, !tbaa !5
  %5083 = load i32, ptr %8, align 4, !tbaa !5
  %5084 = mul nsw i32 10, %5083
  %5085 = add nsw i32 %5082, %5084
  %5086 = sext i32 %5085 to i64
  %5087 = getelementptr inbounds double, ptr %5081, i64 %5086
  %5088 = load double, ptr %5087, align 8, !tbaa !11
  %5089 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %5088, double %5080)
  %5090 = load ptr, ptr %7, align 8, !tbaa !9
  %5091 = load i32, ptr %12, align 4, !tbaa !5
  %5092 = load i32, ptr %8, align 4, !tbaa !5
  %5093 = mul nsw i32 11, %5092
  %5094 = add nsw i32 %5091, %5093
  %5095 = sext i32 %5094 to i64
  %5096 = getelementptr inbounds double, ptr %5090, i64 %5095
  %5097 = load double, ptr %5096, align 8, !tbaa !11
  %5098 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %5097, double %5089)
  %5099 = load ptr, ptr %7, align 8, !tbaa !9
  %5100 = load i32, ptr %12, align 4, !tbaa !5
  %5101 = load i32, ptr %8, align 4, !tbaa !5
  %5102 = mul nsw i32 12, %5101
  %5103 = add nsw i32 %5100, %5102
  %5104 = sext i32 %5103 to i64
  %5105 = getelementptr inbounds double, ptr %5099, i64 %5104
  %5106 = load double, ptr %5105, align 8, !tbaa !11
  %5107 = call double @llvm.fmuladd.f64(double 0x3C91000000000000, double %5106, double %5098)
  %5108 = load ptr, ptr %7, align 8, !tbaa !9
  %5109 = load i32, ptr %12, align 4, !tbaa !5
  %5110 = load i32, ptr %8, align 4, !tbaa !5
  %5111 = mul nsw i32 13, %5110
  %5112 = add nsw i32 %5109, %5111
  %5113 = sext i32 %5112 to i64
  %5114 = getelementptr inbounds double, ptr %5108, i64 %5113
  %5115 = load double, ptr %5114, align 8, !tbaa !11
  %5116 = call double @llvm.fmuladd.f64(double 0x3CA27FFFFFFFFFFF, double %5115, double %5107)
  %5117 = load ptr, ptr %7, align 8, !tbaa !9
  %5118 = load i32, ptr %12, align 4, !tbaa !5
  %5119 = load i32, ptr %8, align 4, !tbaa !5
  %5120 = mul nsw i32 14, %5119
  %5121 = add nsw i32 %5118, %5120
  %5122 = sext i32 %5121 to i64
  %5123 = getelementptr inbounds double, ptr %5117, i64 %5122
  %5124 = load double, ptr %5123, align 8, !tbaa !11
  %5125 = call double @llvm.fmuladd.f64(double 0x3FD9A613A5CEF63B, double %5124, double %5116)
  %5126 = load ptr, ptr %7, align 8, !tbaa !9
  %5127 = load i32, ptr %12, align 4, !tbaa !5
  %5128 = load i32, ptr %8, align 4, !tbaa !5
  %5129 = mul nsw i32 15, %5128
  %5130 = add nsw i32 %5127, %5129
  %5131 = sext i32 %5130 to i64
  %5132 = getelementptr inbounds double, ptr %5126, i64 %5131
  %5133 = load double, ptr %5132, align 8, !tbaa !11
  %5134 = call double @llvm.fmuladd.f64(double 0x3C88000000000000, double %5133, double %5125)
  %5135 = load ptr, ptr %7, align 8, !tbaa !9
  %5136 = load i32, ptr %12, align 4, !tbaa !5
  %5137 = load i32, ptr %8, align 4, !tbaa !5
  %5138 = mul nsw i32 16, %5137
  %5139 = add nsw i32 %5136, %5138
  %5140 = sext i32 %5139 to i64
  %5141 = getelementptr inbounds double, ptr %5135, i64 %5140
  %5142 = load double, ptr %5141, align 8, !tbaa !11
  %5143 = call double @llvm.fmuladd.f64(double 0x3CACFFFFFFFFFFFF, double %5142, double %5134)
  %5144 = load ptr, ptr %7, align 8, !tbaa !9
  %5145 = load i32, ptr %12, align 4, !tbaa !5
  %5146 = load i32, ptr %8, align 4, !tbaa !5
  %5147 = mul nsw i32 17, %5146
  %5148 = add nsw i32 %5145, %5147
  %5149 = sext i32 %5148 to i64
  %5150 = getelementptr inbounds double, ptr %5144, i64 %5149
  %5151 = load double, ptr %5150, align 8, !tbaa !11
  %5152 = call double @llvm.fmuladd.f64(double 0xBCB6800000000000, double %5151, double %5143)
  %5153 = load ptr, ptr %7, align 8, !tbaa !9
  %5154 = load i32, ptr %12, align 4, !tbaa !5
  %5155 = load i32, ptr %8, align 4, !tbaa !5
  %5156 = mul nsw i32 19, %5155
  %5157 = add nsw i32 %5154, %5156
  %5158 = sext i32 %5157 to i64
  %5159 = getelementptr inbounds double, ptr %5153, i64 %5158
  %5160 = load double, ptr %5159, align 8, !tbaa !11
  %5161 = call double @llvm.fmuladd.f64(double 0xBC98000000000000, double %5160, double %5152)
  %5162 = load ptr, ptr %7, align 8, !tbaa !9
  %5163 = load i32, ptr %12, align 4, !tbaa !5
  %5164 = load i32, ptr %8, align 4, !tbaa !5
  %5165 = mul nsw i32 20, %5164
  %5166 = add nsw i32 %5163, %5165
  %5167 = sext i32 %5166 to i64
  %5168 = getelementptr inbounds double, ptr %5162, i64 %5167
  %5169 = load double, ptr %5168, align 8, !tbaa !11
  %5170 = call double @llvm.fmuladd.f64(double 0xBCA4000000000001, double %5169, double %5161)
  %5171 = load ptr, ptr %7, align 8, !tbaa !9
  %5172 = load i32, ptr %12, align 4, !tbaa !5
  %5173 = load i32, ptr %8, align 4, !tbaa !5
  %5174 = mul nsw i32 21, %5173
  %5175 = add nsw i32 %5172, %5174
  %5176 = sext i32 %5175 to i64
  %5177 = getelementptr inbounds double, ptr %5171, i64 %5176
  %5178 = load double, ptr %5177, align 8, !tbaa !11
  %5179 = call double @llvm.fmuladd.f64(double 0x3C7FFFFFFFFFFFFF, double %5178, double %5170)
  %5180 = load ptr, ptr %7, align 8, !tbaa !9
  %5181 = load i32, ptr %12, align 4, !tbaa !5
  %5182 = load i32, ptr %8, align 4, !tbaa !5
  %5183 = mul nsw i32 22, %5182
  %5184 = add nsw i32 %5181, %5183
  %5185 = sext i32 %5184 to i64
  %5186 = getelementptr inbounds double, ptr %5180, i64 %5185
  %5187 = load double, ptr %5186, align 8, !tbaa !11
  %5188 = call double @llvm.fmuladd.f64(double 0xBCB1000000000001, double %5187, double %5179)
  %5189 = load ptr, ptr %7, align 8, !tbaa !9
  %5190 = load i32, ptr %12, align 4, !tbaa !5
  %5191 = load i32, ptr %8, align 4, !tbaa !5
  %5192 = mul nsw i32 23, %5191
  %5193 = add nsw i32 %5190, %5192
  %5194 = sext i32 %5193 to i64
  %5195 = getelementptr inbounds double, ptr %5189, i64 %5194
  %5196 = load double, ptr %5195, align 8, !tbaa !11
  %5197 = call double @llvm.fmuladd.f64(double 0x3CA3800000000002, double %5196, double %5188)
  %5198 = load ptr, ptr %7, align 8, !tbaa !9
  %5199 = load i32, ptr %12, align 4, !tbaa !5
  %5200 = load i32, ptr %8, align 4, !tbaa !5
  %5201 = mul nsw i32 24, %5200
  %5202 = add nsw i32 %5199, %5201
  %5203 = sext i32 %5202 to i64
  %5204 = getelementptr inbounds double, ptr %5198, i64 %5203
  %5205 = load double, ptr %5204, align 8, !tbaa !11
  %5206 = call double @llvm.fmuladd.f64(double 0xBFEA0946EB3057E0, double %5205, double %5197)
  %5207 = load ptr, ptr %7, align 8, !tbaa !9
  %5208 = load i32, ptr %12, align 4, !tbaa !5
  %5209 = load i32, ptr %8, align 4, !tbaa !5
  %5210 = mul nsw i32 25, %5209
  %5211 = add nsw i32 %5208, %5210
  %5212 = sext i32 %5211 to i64
  %5213 = getelementptr inbounds double, ptr %5207, i64 %5212
  %5214 = load double, ptr %5213, align 8, !tbaa !11
  %5215 = call double @llvm.fmuladd.f64(double 0x3C9C000000000000, double %5214, double %5206)
  %5216 = load ptr, ptr %7, align 8, !tbaa !9
  %5217 = load i32, ptr %12, align 4, !tbaa !5
  %5218 = load i32, ptr %8, align 4, !tbaa !5
  %5219 = mul nsw i32 26, %5218
  %5220 = add nsw i32 %5217, %5219
  %5221 = sext i32 %5220 to i64
  %5222 = getelementptr inbounds double, ptr %5216, i64 %5221
  %5223 = load double, ptr %5222, align 8, !tbaa !11
  %5224 = call double @llvm.fmuladd.f64(double 0x3C86000000000001, double %5223, double %5215)
  %5225 = load ptr, ptr %7, align 8, !tbaa !9
  %5226 = load i32, ptr %12, align 4, !tbaa !5
  %5227 = load i32, ptr %8, align 4, !tbaa !5
  %5228 = mul nsw i32 27, %5227
  %5229 = add nsw i32 %5226, %5228
  %5230 = sext i32 %5229 to i64
  %5231 = getelementptr inbounds double, ptr %5225, i64 %5230
  %5232 = load double, ptr %5231, align 8, !tbaa !11
  %5233 = call double @llvm.fmuladd.f64(double 0x3CC3600000000000, double %5232, double %5224)
  %5234 = load ptr, ptr %7, align 8, !tbaa !9
  %5235 = load i32, ptr %12, align 4, !tbaa !5
  %5236 = load i32, ptr %8, align 4, !tbaa !5
  %5237 = mul nsw i32 28, %5236
  %5238 = add nsw i32 %5235, %5237
  %5239 = sext i32 %5238 to i64
  %5240 = getelementptr inbounds double, ptr %5234, i64 %5239
  %5241 = load double, ptr %5240, align 8, !tbaa !11
  %5242 = call double @llvm.fmuladd.f64(double 0xBC9C000000000000, double %5241, double %5233)
  %5243 = load ptr, ptr %7, align 8, !tbaa !9
  %5244 = load i32, ptr %12, align 4, !tbaa !5
  %5245 = load i32, ptr %8, align 4, !tbaa !5
  %5246 = mul nsw i32 29, %5245
  %5247 = add nsw i32 %5244, %5246
  %5248 = sext i32 %5247 to i64
  %5249 = getelementptr inbounds double, ptr %5243, i64 %5248
  %5250 = load double, ptr %5249, align 8, !tbaa !11
  %5251 = call double @llvm.fmuladd.f64(double 0xBCA0000000000002, double %5250, double %5242)
  %5252 = load ptr, ptr %7, align 8, !tbaa !9
  %5253 = load i32, ptr %12, align 4, !tbaa !5
  %5254 = load i32, ptr %8, align 4, !tbaa !5
  %5255 = mul nsw i32 30, %5254
  %5256 = add nsw i32 %5253, %5255
  %5257 = sext i32 %5256 to i64
  %5258 = getelementptr inbounds double, ptr %5252, i64 %5257
  %5259 = load double, ptr %5258, align 8, !tbaa !11
  %5260 = call double @llvm.fmuladd.f64(double 0xBCB2000000000000, double %5259, double %5251)
  %5261 = load ptr, ptr %7, align 8, !tbaa !9
  %5262 = load i32, ptr %12, align 4, !tbaa !5
  %5263 = load i32, ptr %8, align 4, !tbaa !5
  %5264 = mul nsw i32 31, %5263
  %5265 = add nsw i32 %5262, %5264
  %5266 = sext i32 %5265 to i64
  %5267 = getelementptr inbounds double, ptr %5261, i64 %5266
  %5268 = load double, ptr %5267, align 8, !tbaa !11
  %5269 = call double @llvm.fmuladd.f64(double 0x3CB4800000000001, double %5268, double %5260)
  %5270 = load ptr, ptr %7, align 8, !tbaa !9
  %5271 = load i32, ptr %12, align 4, !tbaa !5
  %5272 = load i32, ptr %8, align 4, !tbaa !5
  %5273 = mul nsw i32 32, %5272
  %5274 = add nsw i32 %5271, %5273
  %5275 = sext i32 %5274 to i64
  %5276 = getelementptr inbounds double, ptr %5270, i64 %5275
  %5277 = load double, ptr %5276, align 8, !tbaa !11
  %5278 = call double @llvm.fmuladd.f64(double 0x3CA0E00000000001, double %5277, double %5269)
  %5279 = load ptr, ptr %7, align 8, !tbaa !9
  %5280 = load i32, ptr %12, align 4, !tbaa !5
  %5281 = load i32, ptr %8, align 4, !tbaa !5
  %5282 = mul nsw i32 33, %5281
  %5283 = add nsw i32 %5280, %5282
  %5284 = sext i32 %5283 to i64
  %5285 = getelementptr inbounds double, ptr %5279, i64 %5284
  %5286 = load double, ptr %5285, align 8, !tbaa !11
  %5287 = call double @llvm.fmuladd.f64(double 0xBCB2D00000000001, double %5286, double %5278)
  %5288 = load ptr, ptr %7, align 8, !tbaa !9
  %5289 = load i32, ptr %12, align 4, !tbaa !5
  %5290 = load i32, ptr %8, align 4, !tbaa !5
  %5291 = mul nsw i32 34, %5290
  %5292 = add nsw i32 %5289, %5291
  %5293 = sext i32 %5292 to i64
  %5294 = getelementptr inbounds double, ptr %5288, i64 %5293
  %5295 = load double, ptr %5294, align 8, !tbaa !11
  %5296 = call double @llvm.fmuladd.f64(double 0x3FF86DB962AC2961, double %5295, double %5287)
  %5297 = load ptr, ptr %7, align 8, !tbaa !9
  %5298 = load i32, ptr %12, align 4, !tbaa !5
  %5299 = load i32, ptr %8, align 4, !tbaa !5
  %5300 = mul nsw i32 35, %5299
  %5301 = add nsw i32 %5298, %5300
  %5302 = sext i32 %5301 to i64
  %5303 = getelementptr inbounds double, ptr %5297, i64 %5302
  %5304 = load double, ptr %5303, align 8, !tbaa !11
  %5305 = call double @llvm.fmuladd.f64(double 0x3C97000000000000, double %5304, double %5296)
  %5306 = load ptr, ptr %7, align 8, !tbaa !9
  %5307 = load i32, ptr %12, align 4, !tbaa !5
  %5308 = load i32, ptr %8, align 4, !tbaa !5
  %5309 = mul nsw i32 36, %5308
  %5310 = add nsw i32 %5307, %5309
  %5311 = sext i32 %5310 to i64
  %5312 = getelementptr inbounds double, ptr %5306, i64 %5311
  %5313 = load double, ptr %5312, align 8, !tbaa !11
  %5314 = call double @llvm.fmuladd.f64(double 0x3C9EFFFFFFFFFFFD, double %5313, double %5305)
  %5315 = load ptr, ptr %7, align 8, !tbaa !9
  %5316 = load i32, ptr %12, align 4, !tbaa !5
  %5317 = load i32, ptr %8, align 4, !tbaa !5
  %5318 = mul nsw i32 37, %5317
  %5319 = add nsw i32 %5316, %5318
  %5320 = sext i32 %5319 to i64
  %5321 = getelementptr inbounds double, ptr %5315, i64 %5320
  %5322 = load double, ptr %5321, align 8, !tbaa !11
  %5323 = call double @llvm.fmuladd.f64(double 0x3CB8E00000000000, double %5322, double %5314)
  %5324 = load ptr, ptr %7, align 8, !tbaa !9
  %5325 = load i32, ptr %12, align 4, !tbaa !5
  %5326 = load i32, ptr %8, align 4, !tbaa !5
  %5327 = mul nsw i32 38, %5326
  %5328 = add nsw i32 %5325, %5327
  %5329 = sext i32 %5328 to i64
  %5330 = getelementptr inbounds double, ptr %5324, i64 %5329
  %5331 = load double, ptr %5330, align 8, !tbaa !11
  %5332 = call double @llvm.fmuladd.f64(double 0x3CA1000000000001, double %5331, double %5323)
  %5333 = load ptr, ptr %7, align 8, !tbaa !9
  %5334 = load i32, ptr %12, align 4, !tbaa !5
  %5335 = load i32, ptr %8, align 4, !tbaa !5
  %5336 = mul nsw i32 39, %5335
  %5337 = add nsw i32 %5334, %5336
  %5338 = sext i32 %5337 to i64
  %5339 = getelementptr inbounds double, ptr %5333, i64 %5338
  %5340 = load double, ptr %5339, align 8, !tbaa !11
  %5341 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %5340, double %5332)
  store double %5341, ptr %11, align 8, !tbaa !11
  %5342 = load double, ptr %11, align 8, !tbaa !11
  %5343 = load ptr, ptr %9, align 8, !tbaa !9
  %5344 = load i32, ptr %12, align 4, !tbaa !5
  %5345 = load i32, ptr %10, align 4, !tbaa !5
  %5346 = mul nsw i32 14, %5345
  %5347 = add nsw i32 %5344, %5346
  %5348 = sext i32 %5347 to i64
  %5349 = getelementptr inbounds double, ptr %5343, i64 %5348
  store double %5342, ptr %5349, align 8, !tbaa !11
  %5350 = load ptr, ptr %7, align 8, !tbaa !9
  %5351 = load i32, ptr %12, align 4, !tbaa !5
  %5352 = load i32, ptr %8, align 4, !tbaa !5
  %5353 = mul nsw i32 0, %5352
  %5354 = add nsw i32 %5351, %5353
  %5355 = sext i32 %5354 to i64
  %5356 = getelementptr inbounds double, ptr %5350, i64 %5355
  %5357 = load double, ptr %5356, align 8, !tbaa !11
  %5358 = load ptr, ptr %7, align 8, !tbaa !9
  %5359 = load i32, ptr %12, align 4, !tbaa !5
  %5360 = load i32, ptr %8, align 4, !tbaa !5
  %5361 = mul nsw i32 1, %5360
  %5362 = add nsw i32 %5359, %5361
  %5363 = sext i32 %5362 to i64
  %5364 = getelementptr inbounds double, ptr %5358, i64 %5363
  %5365 = load double, ptr %5364, align 8, !tbaa !11
  %5366 = fmul double 0xBC98000000000000, %5365
  %5367 = call double @llvm.fmuladd.f64(double 0x3C88000000000000, double %5357, double %5366)
  %5368 = load ptr, ptr %7, align 8, !tbaa !9
  %5369 = load i32, ptr %12, align 4, !tbaa !5
  %5370 = load i32, ptr %8, align 4, !tbaa !5
  %5371 = mul nsw i32 2, %5370
  %5372 = add nsw i32 %5369, %5371
  %5373 = sext i32 %5372 to i64
  %5374 = getelementptr inbounds double, ptr %5368, i64 %5373
  %5375 = load double, ptr %5374, align 8, !tbaa !11
  %5376 = call double @llvm.fmuladd.f64(double 0x3C90800000000000, double %5375, double %5367)
  %5377 = load ptr, ptr %7, align 8, !tbaa !9
  %5378 = load i32, ptr %12, align 4, !tbaa !5
  %5379 = load i32, ptr %8, align 4, !tbaa !5
  %5380 = mul nsw i32 3, %5379
  %5381 = add nsw i32 %5378, %5380
  %5382 = sext i32 %5381 to i64
  %5383 = getelementptr inbounds double, ptr %5377, i64 %5382
  %5384 = load double, ptr %5383, align 8, !tbaa !11
  %5385 = call double @llvm.fmuladd.f64(double 0x3CB8300000000001, double %5384, double %5376)
  %5386 = load ptr, ptr %7, align 8, !tbaa !9
  %5387 = load i32, ptr %12, align 4, !tbaa !5
  %5388 = load i32, ptr %8, align 4, !tbaa !5
  %5389 = mul nsw i32 4, %5388
  %5390 = add nsw i32 %5387, %5389
  %5391 = sext i32 %5390 to i64
  %5392 = getelementptr inbounds double, ptr %5386, i64 %5391
  %5393 = load double, ptr %5392, align 8, !tbaa !11
  %5394 = call double @llvm.fmuladd.f64(double 0x3C99000000000000, double %5393, double %5385)
  %5395 = load ptr, ptr %7, align 8, !tbaa !9
  %5396 = load i32, ptr %12, align 4, !tbaa !5
  %5397 = load i32, ptr %8, align 4, !tbaa !5
  %5398 = mul nsw i32 5, %5397
  %5399 = add nsw i32 %5396, %5398
  %5400 = sext i32 %5399 to i64
  %5401 = getelementptr inbounds double, ptr %5395, i64 %5400
  %5402 = load double, ptr %5401, align 8, !tbaa !11
  %5403 = call double @llvm.fmuladd.f64(double 0xBFBD29AD687BB056, double %5402, double %5394)
  %5404 = load ptr, ptr %7, align 8, !tbaa !9
  %5405 = load i32, ptr %12, align 4, !tbaa !5
  %5406 = load i32, ptr %8, align 4, !tbaa !5
  %5407 = mul nsw i32 6, %5406
  %5408 = add nsw i32 %5405, %5407
  %5409 = sext i32 %5408 to i64
  %5410 = getelementptr inbounds double, ptr %5404, i64 %5409
  %5411 = load double, ptr %5410, align 8, !tbaa !11
  %5412 = call double @llvm.fmuladd.f64(double 0xBC78000000000002, double %5411, double %5403)
  %5413 = load ptr, ptr %7, align 8, !tbaa !9
  %5414 = load i32, ptr %12, align 4, !tbaa !5
  %5415 = load i32, ptr %8, align 4, !tbaa !5
  %5416 = mul nsw i32 7, %5415
  %5417 = add nsw i32 %5414, %5416
  %5418 = sext i32 %5417 to i64
  %5419 = getelementptr inbounds double, ptr %5413, i64 %5418
  %5420 = load double, ptr %5419, align 8, !tbaa !11
  %5421 = call double @llvm.fmuladd.f64(double 0x3C64000000000000, double %5420, double %5412)
  %5422 = load ptr, ptr %7, align 8, !tbaa !9
  %5423 = load i32, ptr %12, align 4, !tbaa !5
  %5424 = load i32, ptr %8, align 4, !tbaa !5
  %5425 = mul nsw i32 8, %5424
  %5426 = add nsw i32 %5423, %5425
  %5427 = sext i32 %5426 to i64
  %5428 = getelementptr inbounds double, ptr %5422, i64 %5427
  %5429 = load double, ptr %5428, align 8, !tbaa !11
  %5430 = call double @llvm.fmuladd.f64(double 0x3CA7000000000002, double %5429, double %5421)
  %5431 = load ptr, ptr %7, align 8, !tbaa !9
  %5432 = load i32, ptr %12, align 4, !tbaa !5
  %5433 = load i32, ptr %8, align 4, !tbaa !5
  %5434 = mul nsw i32 9, %5433
  %5435 = add nsw i32 %5432, %5434
  %5436 = sext i32 %5435 to i64
  %5437 = getelementptr inbounds double, ptr %5431, i64 %5436
  %5438 = load double, ptr %5437, align 8, !tbaa !11
  %5439 = call double @llvm.fmuladd.f64(double 0xBCA2FFFFFFFFFFFE, double %5438, double %5430)
  %5440 = load ptr, ptr %7, align 8, !tbaa !9
  %5441 = load i32, ptr %12, align 4, !tbaa !5
  %5442 = load i32, ptr %8, align 4, !tbaa !5
  %5443 = mul nsw i32 10, %5442
  %5444 = add nsw i32 %5441, %5443
  %5445 = sext i32 %5444 to i64
  %5446 = getelementptr inbounds double, ptr %5440, i64 %5445
  %5447 = load double, ptr %5446, align 8, !tbaa !11
  %5448 = call double @llvm.fmuladd.f64(double 0xBC98000000000000, double %5447, double %5439)
  %5449 = load ptr, ptr %7, align 8, !tbaa !9
  %5450 = load i32, ptr %12, align 4, !tbaa !5
  %5451 = load i32, ptr %8, align 4, !tbaa !5
  %5452 = mul nsw i32 11, %5451
  %5453 = add nsw i32 %5450, %5452
  %5454 = sext i32 %5453 to i64
  %5455 = getelementptr inbounds double, ptr %5449, i64 %5454
  %5456 = load double, ptr %5455, align 8, !tbaa !11
  %5457 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %5456, double %5448)
  %5458 = load ptr, ptr %7, align 8, !tbaa !9
  %5459 = load i32, ptr %12, align 4, !tbaa !5
  %5460 = load i32, ptr %8, align 4, !tbaa !5
  %5461 = mul nsw i32 12, %5460
  %5462 = add nsw i32 %5459, %5461
  %5463 = sext i32 %5462 to i64
  %5464 = getelementptr inbounds double, ptr %5458, i64 %5463
  %5465 = load double, ptr %5464, align 8, !tbaa !11
  %5466 = call double @llvm.fmuladd.f64(double 0x3C7C000000000000, double %5465, double %5457)
  %5467 = load ptr, ptr %7, align 8, !tbaa !9
  %5468 = load i32, ptr %12, align 4, !tbaa !5
  %5469 = load i32, ptr %8, align 4, !tbaa !5
  %5470 = mul nsw i32 13, %5469
  %5471 = add nsw i32 %5468, %5470
  %5472 = sext i32 %5471 to i64
  %5473 = getelementptr inbounds double, ptr %5467, i64 %5472
  %5474 = load double, ptr %5473, align 8, !tbaa !11
  %5475 = call double @llvm.fmuladd.f64(double 0xBC9CFFFFFFFFFFFF, double %5474, double %5466)
  %5476 = load ptr, ptr %7, align 8, !tbaa !9
  %5477 = load i32, ptr %12, align 4, !tbaa !5
  %5478 = load i32, ptr %8, align 4, !tbaa !5
  %5479 = mul nsw i32 14, %5478
  %5480 = add nsw i32 %5477, %5479
  %5481 = sext i32 %5480 to i64
  %5482 = getelementptr inbounds double, ptr %5476, i64 %5481
  %5483 = load double, ptr %5482, align 8, !tbaa !11
  %5484 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %5483, double %5475)
  %5485 = load ptr, ptr %7, align 8, !tbaa !9
  %5486 = load i32, ptr %12, align 4, !tbaa !5
  %5487 = load i32, ptr %8, align 4, !tbaa !5
  %5488 = mul nsw i32 15, %5487
  %5489 = add nsw i32 %5486, %5488
  %5490 = sext i32 %5489 to i64
  %5491 = getelementptr inbounds double, ptr %5485, i64 %5490
  %5492 = load double, ptr %5491, align 8, !tbaa !11
  %5493 = call double @llvm.fmuladd.f64(double 0x3FD9A613A5CEF63C, double %5492, double %5484)
  %5494 = load ptr, ptr %7, align 8, !tbaa !9
  %5495 = load i32, ptr %12, align 4, !tbaa !5
  %5496 = load i32, ptr %8, align 4, !tbaa !5
  %5497 = mul nsw i32 16, %5496
  %5498 = add nsw i32 %5495, %5497
  %5499 = sext i32 %5498 to i64
  %5500 = getelementptr inbounds double, ptr %5494, i64 %5499
  %5501 = load double, ptr %5500, align 8, !tbaa !11
  %5502 = call double @llvm.fmuladd.f64(double 0xBCA2FFFFFFFFFFFE, double %5501, double %5493)
  %5503 = load ptr, ptr %7, align 8, !tbaa !9
  %5504 = load i32, ptr %12, align 4, !tbaa !5
  %5505 = load i32, ptr %8, align 4, !tbaa !5
  %5506 = mul nsw i32 17, %5505
  %5507 = add nsw i32 %5504, %5506
  %5508 = sext i32 %5507 to i64
  %5509 = getelementptr inbounds double, ptr %5503, i64 %5508
  %5510 = load double, ptr %5509, align 8, !tbaa !11
  %5511 = call double @llvm.fmuladd.f64(double 0xBCA2FFFFFFFFFFFE, double %5510, double %5502)
  %5512 = load ptr, ptr %7, align 8, !tbaa !9
  %5513 = load i32, ptr %12, align 4, !tbaa !5
  %5514 = load i32, ptr %8, align 4, !tbaa !5
  %5515 = mul nsw i32 18, %5514
  %5516 = add nsw i32 %5513, %5515
  %5517 = sext i32 %5516 to i64
  %5518 = getelementptr inbounds double, ptr %5512, i64 %5517
  %5519 = load double, ptr %5518, align 8, !tbaa !11
  %5520 = call double @llvm.fmuladd.f64(double 0x3C98000000000000, double %5519, double %5511)
  %5521 = load ptr, ptr %7, align 8, !tbaa !9
  %5522 = load i32, ptr %12, align 4, !tbaa !5
  %5523 = load i32, ptr %8, align 4, !tbaa !5
  %5524 = mul nsw i32 19, %5523
  %5525 = add nsw i32 %5522, %5524
  %5526 = sext i32 %5525 to i64
  %5527 = getelementptr inbounds double, ptr %5521, i64 %5526
  %5528 = load double, ptr %5527, align 8, !tbaa !11
  %5529 = call double @llvm.fmuladd.f64(double 0x3CA2000000000000, double %5528, double %5520)
  %5530 = load ptr, ptr %7, align 8, !tbaa !9
  %5531 = load i32, ptr %12, align 4, !tbaa !5
  %5532 = load i32, ptr %8, align 4, !tbaa !5
  %5533 = mul nsw i32 20, %5532
  %5534 = add nsw i32 %5531, %5533
  %5535 = sext i32 %5534 to i64
  %5536 = getelementptr inbounds double, ptr %5530, i64 %5535
  %5537 = load double, ptr %5536, align 8, !tbaa !11
  %5538 = call double @llvm.fmuladd.f64(double 0x3CB0000000000000, double %5537, double %5529)
  %5539 = load ptr, ptr %7, align 8, !tbaa !9
  %5540 = load i32, ptr %12, align 4, !tbaa !5
  %5541 = load i32, ptr %8, align 4, !tbaa !5
  %5542 = mul nsw i32 21, %5541
  %5543 = add nsw i32 %5540, %5542
  %5544 = sext i32 %5543 to i64
  %5545 = getelementptr inbounds double, ptr %5539, i64 %5544
  %5546 = load double, ptr %5545, align 8, !tbaa !11
  %5547 = call double @llvm.fmuladd.f64(double 0x3C88000000000000, double %5546, double %5538)
  %5548 = load ptr, ptr %7, align 8, !tbaa !9
  %5549 = load i32, ptr %12, align 4, !tbaa !5
  %5550 = load i32, ptr %8, align 4, !tbaa !5
  %5551 = mul nsw i32 22, %5550
  %5552 = add nsw i32 %5549, %5551
  %5553 = sext i32 %5552 to i64
  %5554 = getelementptr inbounds double, ptr %5548, i64 %5553
  %5555 = load double, ptr %5554, align 8, !tbaa !11
  %5556 = call double @llvm.fmuladd.f64(double 0xBC60000000000000, double %5555, double %5547)
  %5557 = load ptr, ptr %7, align 8, !tbaa !9
  %5558 = load i32, ptr %12, align 4, !tbaa !5
  %5559 = load i32, ptr %8, align 4, !tbaa !5
  %5560 = mul nsw i32 23, %5559
  %5561 = add nsw i32 %5558, %5560
  %5562 = sext i32 %5561 to i64
  %5563 = getelementptr inbounds double, ptr %5557, i64 %5562
  %5564 = load double, ptr %5563, align 8, !tbaa !11
  %5565 = call double @llvm.fmuladd.f64(double 0xBCAD7FFFFFFFFFFE, double %5564, double %5556)
  %5566 = load ptr, ptr %7, align 8, !tbaa !9
  %5567 = load i32, ptr %12, align 4, !tbaa !5
  %5568 = load i32, ptr %8, align 4, !tbaa !5
  %5569 = mul nsw i32 24, %5568
  %5570 = add nsw i32 %5567, %5569
  %5571 = sext i32 %5570 to i64
  %5572 = getelementptr inbounds double, ptr %5566, i64 %5571
  %5573 = load double, ptr %5572, align 8, !tbaa !11
  %5574 = call double @llvm.fmuladd.f64(double 0x3CB3FFFFFFFFFFFF, double %5573, double %5565)
  %5575 = load ptr, ptr %7, align 8, !tbaa !9
  %5576 = load i32, ptr %12, align 4, !tbaa !5
  %5577 = load i32, ptr %8, align 4, !tbaa !5
  %5578 = mul nsw i32 25, %5577
  %5579 = add nsw i32 %5576, %5578
  %5580 = sext i32 %5579 to i64
  %5581 = getelementptr inbounds double, ptr %5575, i64 %5580
  %5582 = load double, ptr %5581, align 8, !tbaa !11
  %5583 = call double @llvm.fmuladd.f64(double 0xBFEA0946EB3057DC, double %5582, double %5574)
  %5584 = load ptr, ptr %7, align 8, !tbaa !9
  %5585 = load i32, ptr %12, align 4, !tbaa !5
  %5586 = load i32, ptr %8, align 4, !tbaa !5
  %5587 = mul nsw i32 26, %5586
  %5588 = add nsw i32 %5585, %5587
  %5589 = sext i32 %5588 to i64
  %5590 = getelementptr inbounds double, ptr %5584, i64 %5589
  %5591 = load double, ptr %5590, align 8, !tbaa !11
  %5592 = call double @llvm.fmuladd.f64(double 0x3C9EFFFFFFFFFFFD, double %5591, double %5583)
  %5593 = load ptr, ptr %7, align 8, !tbaa !9
  %5594 = load i32, ptr %12, align 4, !tbaa !5
  %5595 = load i32, ptr %8, align 4, !tbaa !5
  %5596 = mul nsw i32 27, %5595
  %5597 = add nsw i32 %5594, %5596
  %5598 = sext i32 %5597 to i64
  %5599 = getelementptr inbounds double, ptr %5593, i64 %5598
  %5600 = load double, ptr %5599, align 8, !tbaa !11
  %5601 = call double @llvm.fmuladd.f64(double 0x3C67FFFFFFFFFFFE, double %5600, double %5592)
  %5602 = load ptr, ptr %7, align 8, !tbaa !9
  %5603 = load i32, ptr %12, align 4, !tbaa !5
  %5604 = load i32, ptr %8, align 4, !tbaa !5
  %5605 = mul nsw i32 28, %5604
  %5606 = add nsw i32 %5603, %5605
  %5607 = sext i32 %5606 to i64
  %5608 = getelementptr inbounds double, ptr %5602, i64 %5607
  %5609 = load double, ptr %5608, align 8, !tbaa !11
  %5610 = call double @llvm.fmuladd.f64(double 0x3C88000000000000, double %5609, double %5601)
  %5611 = load ptr, ptr %7, align 8, !tbaa !9
  %5612 = load i32, ptr %12, align 4, !tbaa !5
  %5613 = load i32, ptr %8, align 4, !tbaa !5
  %5614 = mul nsw i32 29, %5613
  %5615 = add nsw i32 %5612, %5614
  %5616 = sext i32 %5615 to i64
  %5617 = getelementptr inbounds double, ptr %5611, i64 %5616
  %5618 = load double, ptr %5617, align 8, !tbaa !11
  %5619 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %5618, double %5610)
  %5620 = load ptr, ptr %7, align 8, !tbaa !9
  %5621 = load i32, ptr %12, align 4, !tbaa !5
  %5622 = load i32, ptr %8, align 4, !tbaa !5
  %5623 = mul nsw i32 30, %5622
  %5624 = add nsw i32 %5621, %5623
  %5625 = sext i32 %5624 to i64
  %5626 = getelementptr inbounds double, ptr %5620, i64 %5625
  %5627 = load double, ptr %5626, align 8, !tbaa !11
  %5628 = call double @llvm.fmuladd.f64(double 0x3CB8000000000001, double %5627, double %5619)
  %5629 = load ptr, ptr %7, align 8, !tbaa !9
  %5630 = load i32, ptr %12, align 4, !tbaa !5
  %5631 = load i32, ptr %8, align 4, !tbaa !5
  %5632 = mul nsw i32 31, %5631
  %5633 = add nsw i32 %5630, %5632
  %5634 = sext i32 %5633 to i64
  %5635 = getelementptr inbounds double, ptr %5629, i64 %5634
  %5636 = load double, ptr %5635, align 8, !tbaa !11
  %5637 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %5636, double %5628)
  %5638 = load ptr, ptr %7, align 8, !tbaa !9
  %5639 = load i32, ptr %12, align 4, !tbaa !5
  %5640 = load i32, ptr %8, align 4, !tbaa !5
  %5641 = mul nsw i32 32, %5640
  %5642 = add nsw i32 %5639, %5641
  %5643 = sext i32 %5642 to i64
  %5644 = getelementptr inbounds double, ptr %5638, i64 %5643
  %5645 = load double, ptr %5644, align 8, !tbaa !11
  %5646 = call double @llvm.fmuladd.f64(double 0x3C6DFFFFFFFFFFFE, double %5645, double %5637)
  %5647 = load ptr, ptr %7, align 8, !tbaa !9
  %5648 = load i32, ptr %12, align 4, !tbaa !5
  %5649 = load i32, ptr %8, align 4, !tbaa !5
  %5650 = mul nsw i32 33, %5649
  %5651 = add nsw i32 %5648, %5650
  %5652 = sext i32 %5651 to i64
  %5653 = getelementptr inbounds double, ptr %5647, i64 %5652
  %5654 = load double, ptr %5653, align 8, !tbaa !11
  %5655 = call double @llvm.fmuladd.f64(double 0x3C9AC00000000000, double %5654, double %5646)
  %5656 = load ptr, ptr %7, align 8, !tbaa !9
  %5657 = load i32, ptr %12, align 4, !tbaa !5
  %5658 = load i32, ptr %8, align 4, !tbaa !5
  %5659 = mul nsw i32 34, %5658
  %5660 = add nsw i32 %5657, %5659
  %5661 = sext i32 %5660 to i64
  %5662 = getelementptr inbounds double, ptr %5656, i64 %5661
  %5663 = load double, ptr %5662, align 8, !tbaa !11
  %5664 = call double @llvm.fmuladd.f64(double 0x3C8C000000000000, double %5663, double %5655)
  %5665 = load ptr, ptr %7, align 8, !tbaa !9
  %5666 = load i32, ptr %12, align 4, !tbaa !5
  %5667 = load i32, ptr %8, align 4, !tbaa !5
  %5668 = mul nsw i32 35, %5667
  %5669 = add nsw i32 %5666, %5668
  %5670 = sext i32 %5669 to i64
  %5671 = getelementptr inbounds double, ptr %5665, i64 %5670
  %5672 = load double, ptr %5671, align 8, !tbaa !11
  %5673 = call double @llvm.fmuladd.f64(double 0x3FF86DB962AC2966, double %5672, double %5664)
  %5674 = load ptr, ptr %7, align 8, !tbaa !9
  %5675 = load i32, ptr %12, align 4, !tbaa !5
  %5676 = load i32, ptr %8, align 4, !tbaa !5
  %5677 = mul nsw i32 36, %5676
  %5678 = add nsw i32 %5675, %5677
  %5679 = sext i32 %5678 to i64
  %5680 = getelementptr inbounds double, ptr %5674, i64 %5679
  %5681 = load double, ptr %5680, align 8, !tbaa !11
  %5682 = call double @llvm.fmuladd.f64(double 0xBC94000000000000, double %5681, double %5673)
  %5683 = load ptr, ptr %7, align 8, !tbaa !9
  %5684 = load i32, ptr %12, align 4, !tbaa !5
  %5685 = load i32, ptr %8, align 4, !tbaa !5
  %5686 = mul nsw i32 37, %5685
  %5687 = add nsw i32 %5684, %5686
  %5688 = sext i32 %5687 to i64
  %5689 = getelementptr inbounds double, ptr %5683, i64 %5688
  %5690 = load double, ptr %5689, align 8, !tbaa !11
  %5691 = call double @llvm.fmuladd.f64(double 0xBC76000000000001, double %5690, double %5682)
  %5692 = load ptr, ptr %7, align 8, !tbaa !9
  %5693 = load i32, ptr %12, align 4, !tbaa !5
  %5694 = load i32, ptr %8, align 4, !tbaa !5
  %5695 = mul nsw i32 38, %5694
  %5696 = add nsw i32 %5693, %5695
  %5697 = sext i32 %5696 to i64
  %5698 = getelementptr inbounds double, ptr %5692, i64 %5697
  %5699 = load double, ptr %5698, align 8, !tbaa !11
  %5700 = call double @llvm.fmuladd.f64(double 0xBCB2000000000000, double %5699, double %5691)
  %5701 = load ptr, ptr %7, align 8, !tbaa !9
  %5702 = load i32, ptr %12, align 4, !tbaa !5
  %5703 = load i32, ptr %8, align 4, !tbaa !5
  %5704 = mul nsw i32 39, %5703
  %5705 = add nsw i32 %5702, %5704
  %5706 = sext i32 %5705 to i64
  %5707 = getelementptr inbounds double, ptr %5701, i64 %5706
  %5708 = load double, ptr %5707, align 8, !tbaa !11
  %5709 = call double @llvm.fmuladd.f64(double 0x3CA7000000000002, double %5708, double %5700)
  store double %5709, ptr %11, align 8, !tbaa !11
  %5710 = load double, ptr %11, align 8, !tbaa !11
  %5711 = load ptr, ptr %9, align 8, !tbaa !9
  %5712 = load i32, ptr %12, align 4, !tbaa !5
  %5713 = load i32, ptr %10, align 4, !tbaa !5
  %5714 = mul nsw i32 15, %5713
  %5715 = add nsw i32 %5712, %5714
  %5716 = sext i32 %5715 to i64
  %5717 = getelementptr inbounds double, ptr %5711, i64 %5716
  store double %5710, ptr %5717, align 8, !tbaa !11
  %5718 = load ptr, ptr %7, align 8, !tbaa !9
  %5719 = load i32, ptr %12, align 4, !tbaa !5
  %5720 = load i32, ptr %8, align 4, !tbaa !5
  %5721 = mul nsw i32 0, %5720
  %5722 = add nsw i32 %5719, %5721
  %5723 = sext i32 %5722 to i64
  %5724 = getelementptr inbounds double, ptr %5718, i64 %5723
  %5725 = load double, ptr %5724, align 8, !tbaa !11
  %5726 = load ptr, ptr %7, align 8, !tbaa !9
  %5727 = load i32, ptr %12, align 4, !tbaa !5
  %5728 = load i32, ptr %8, align 4, !tbaa !5
  %5729 = mul nsw i32 1, %5728
  %5730 = add nsw i32 %5727, %5729
  %5731 = sext i32 %5730 to i64
  %5732 = getelementptr inbounds double, ptr %5726, i64 %5731
  %5733 = load double, ptr %5732, align 8, !tbaa !11
  %5734 = fmul double 0xBC76000000000001, %5733
  %5735 = call double @llvm.fmuladd.f64(double 0x3CB3000000000000, double %5725, double %5734)
  %5736 = load ptr, ptr %7, align 8, !tbaa !9
  %5737 = load i32, ptr %12, align 4, !tbaa !5
  %5738 = load i32, ptr %8, align 4, !tbaa !5
  %5739 = mul nsw i32 2, %5738
  %5740 = add nsw i32 %5737, %5739
  %5741 = sext i32 %5740 to i64
  %5742 = getelementptr inbounds double, ptr %5736, i64 %5741
  %5743 = load double, ptr %5742, align 8, !tbaa !11
  %5744 = call double @llvm.fmuladd.f64(double 0xBC99200000000000, double %5743, double %5735)
  %5745 = load ptr, ptr %7, align 8, !tbaa !9
  %5746 = load i32, ptr %12, align 4, !tbaa !5
  %5747 = load i32, ptr %8, align 4, !tbaa !5
  %5748 = mul nsw i32 3, %5747
  %5749 = add nsw i32 %5746, %5748
  %5750 = sext i32 %5749 to i64
  %5751 = getelementptr inbounds double, ptr %5745, i64 %5750
  %5752 = load double, ptr %5751, align 8, !tbaa !11
  %5753 = call double @llvm.fmuladd.f64(double 0x3CAE100000000002, double %5752, double %5744)
  %5754 = load ptr, ptr %7, align 8, !tbaa !9
  %5755 = load i32, ptr %12, align 4, !tbaa !5
  %5756 = load i32, ptr %8, align 4, !tbaa !5
  %5757 = mul nsw i32 4, %5756
  %5758 = add nsw i32 %5755, %5757
  %5759 = sext i32 %5758 to i64
  %5760 = getelementptr inbounds double, ptr %5754, i64 %5759
  %5761 = load double, ptr %5760, align 8, !tbaa !11
  %5762 = call double @llvm.fmuladd.f64(double 0x3C86FFFFFFFFFFFF, double %5761, double %5753)
  %5763 = load ptr, ptr %7, align 8, !tbaa !9
  %5764 = load i32, ptr %12, align 4, !tbaa !5
  %5765 = load i32, ptr %8, align 4, !tbaa !5
  %5766 = mul nsw i32 5, %5765
  %5767 = add nsw i32 %5764, %5766
  %5768 = sext i32 %5767 to i64
  %5769 = getelementptr inbounds double, ptr %5763, i64 %5768
  %5770 = load double, ptr %5769, align 8, !tbaa !11
  %5771 = call double @llvm.fmuladd.f64(double 0x3C99800000000000, double %5770, double %5762)
  %5772 = load ptr, ptr %7, align 8, !tbaa !9
  %5773 = load i32, ptr %12, align 4, !tbaa !5
  %5774 = load i32, ptr %8, align 4, !tbaa !5
  %5775 = mul nsw i32 6, %5774
  %5776 = add nsw i32 %5773, %5775
  %5777 = sext i32 %5776 to i64
  %5778 = getelementptr inbounds double, ptr %5772, i64 %5777
  %5779 = load double, ptr %5778, align 8, !tbaa !11
  %5780 = call double @llvm.fmuladd.f64(double 0xBFBD29AD687BB06B, double %5779, double %5771)
  %5781 = load ptr, ptr %7, align 8, !tbaa !9
  %5782 = load i32, ptr %12, align 4, !tbaa !5
  %5783 = load i32, ptr %8, align 4, !tbaa !5
  %5784 = mul nsw i32 7, %5783
  %5785 = add nsw i32 %5782, %5784
  %5786 = sext i32 %5785 to i64
  %5787 = getelementptr inbounds double, ptr %5781, i64 %5786
  %5788 = load double, ptr %5787, align 8, !tbaa !11
  %5789 = call double @llvm.fmuladd.f64(double 0x3C8D800000000000, double %5788, double %5780)
  %5790 = load ptr, ptr %7, align 8, !tbaa !9
  %5791 = load i32, ptr %12, align 4, !tbaa !5
  %5792 = load i32, ptr %8, align 4, !tbaa !5
  %5793 = mul nsw i32 8, %5792
  %5794 = add nsw i32 %5791, %5793
  %5795 = sext i32 %5794 to i64
  %5796 = getelementptr inbounds double, ptr %5790, i64 %5795
  %5797 = load double, ptr %5796, align 8, !tbaa !11
  %5798 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %5797, double %5789)
  %5799 = load ptr, ptr %7, align 8, !tbaa !9
  %5800 = load i32, ptr %12, align 4, !tbaa !5
  %5801 = load i32, ptr %8, align 4, !tbaa !5
  %5802 = mul nsw i32 9, %5801
  %5803 = add nsw i32 %5800, %5802
  %5804 = sext i32 %5803 to i64
  %5805 = getelementptr inbounds double, ptr %5799, i64 %5804
  %5806 = load double, ptr %5805, align 8, !tbaa !11
  %5807 = call double @llvm.fmuladd.f64(double 0xBC60000000000000, double %5806, double %5798)
  %5808 = load ptr, ptr %7, align 8, !tbaa !9
  %5809 = load i32, ptr %12, align 4, !tbaa !5
  %5810 = load i32, ptr %8, align 4, !tbaa !5
  %5811 = mul nsw i32 10, %5810
  %5812 = add nsw i32 %5809, %5811
  %5813 = sext i32 %5812 to i64
  %5814 = getelementptr inbounds double, ptr %5808, i64 %5813
  %5815 = load double, ptr %5814, align 8, !tbaa !11
  %5816 = call double @llvm.fmuladd.f64(double 0xBCB0000000000000, double %5815, double %5807)
  %5817 = load ptr, ptr %7, align 8, !tbaa !9
  %5818 = load i32, ptr %12, align 4, !tbaa !5
  %5819 = load i32, ptr %8, align 4, !tbaa !5
  %5820 = mul nsw i32 12, %5819
  %5821 = add nsw i32 %5818, %5820
  %5822 = sext i32 %5821 to i64
  %5823 = getelementptr inbounds double, ptr %5817, i64 %5822
  %5824 = load double, ptr %5823, align 8, !tbaa !11
  %5825 = call double @llvm.fmuladd.f64(double 0xBC85000000000000, double %5824, double %5816)
  %5826 = load ptr, ptr %7, align 8, !tbaa !9
  %5827 = load i32, ptr %12, align 4, !tbaa !5
  %5828 = load i32, ptr %8, align 4, !tbaa !5
  %5829 = mul nsw i32 13, %5828
  %5830 = add nsw i32 %5827, %5829
  %5831 = sext i32 %5830 to i64
  %5832 = getelementptr inbounds double, ptr %5826, i64 %5831
  %5833 = load double, ptr %5832, align 8, !tbaa !11
  %5834 = call double @llvm.fmuladd.f64(double 0xBC8B800000000001, double %5833, double %5825)
  %5835 = load ptr, ptr %7, align 8, !tbaa !9
  %5836 = load i32, ptr %12, align 4, !tbaa !5
  %5837 = load i32, ptr %8, align 4, !tbaa !5
  %5838 = mul nsw i32 14, %5837
  %5839 = add nsw i32 %5836, %5838
  %5840 = sext i32 %5839 to i64
  %5841 = getelementptr inbounds double, ptr %5835, i64 %5840
  %5842 = load double, ptr %5841, align 8, !tbaa !11
  %5843 = call double @llvm.fmuladd.f64(double 0x3C8E000000000000, double %5842, double %5834)
  %5844 = load ptr, ptr %7, align 8, !tbaa !9
  %5845 = load i32, ptr %12, align 4, !tbaa !5
  %5846 = load i32, ptr %8, align 4, !tbaa !5
  %5847 = mul nsw i32 15, %5846
  %5848 = add nsw i32 %5845, %5847
  %5849 = sext i32 %5848 to i64
  %5850 = getelementptr inbounds double, ptr %5844, i64 %5849
  %5851 = load double, ptr %5850, align 8, !tbaa !11
  %5852 = call double @llvm.fmuladd.f64(double 0xBCAB800000000001, double %5851, double %5843)
  %5853 = load ptr, ptr %7, align 8, !tbaa !9
  %5854 = load i32, ptr %12, align 4, !tbaa !5
  %5855 = load i32, ptr %8, align 4, !tbaa !5
  %5856 = mul nsw i32 16, %5855
  %5857 = add nsw i32 %5854, %5856
  %5858 = sext i32 %5857 to i64
  %5859 = getelementptr inbounds double, ptr %5853, i64 %5858
  %5860 = load double, ptr %5859, align 8, !tbaa !11
  %5861 = call double @llvm.fmuladd.f64(double 0x3FD9A613A5CEF639, double %5860, double %5852)
  %5862 = load ptr, ptr %7, align 8, !tbaa !9
  %5863 = load i32, ptr %12, align 4, !tbaa !5
  %5864 = load i32, ptr %8, align 4, !tbaa !5
  %5865 = mul nsw i32 17, %5864
  %5866 = add nsw i32 %5863, %5865
  %5867 = sext i32 %5866 to i64
  %5868 = getelementptr inbounds double, ptr %5862, i64 %5867
  %5869 = load double, ptr %5868, align 8, !tbaa !11
  %5870 = call double @llvm.fmuladd.f64(double 0xBC91000000000000, double %5869, double %5861)
  %5871 = load ptr, ptr %7, align 8, !tbaa !9
  %5872 = load i32, ptr %12, align 4, !tbaa !5
  %5873 = load i32, ptr %8, align 4, !tbaa !5
  %5874 = mul nsw i32 18, %5873
  %5875 = add nsw i32 %5872, %5874
  %5876 = sext i32 %5875 to i64
  %5877 = getelementptr inbounds double, ptr %5871, i64 %5876
  %5878 = load double, ptr %5877, align 8, !tbaa !11
  %5879 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %5878, double %5870)
  %5880 = load ptr, ptr %7, align 8, !tbaa !9
  %5881 = load i32, ptr %12, align 4, !tbaa !5
  %5882 = load i32, ptr %8, align 4, !tbaa !5
  %5883 = mul nsw i32 19, %5882
  %5884 = add nsw i32 %5881, %5883
  %5885 = sext i32 %5884 to i64
  %5886 = getelementptr inbounds double, ptr %5880, i64 %5885
  %5887 = load double, ptr %5886, align 8, !tbaa !11
  %5888 = call double @llvm.fmuladd.f64(double 0x3C84000000000000, double %5887, double %5879)
  %5889 = load ptr, ptr %7, align 8, !tbaa !9
  %5890 = load i32, ptr %12, align 4, !tbaa !5
  %5891 = load i32, ptr %8, align 4, !tbaa !5
  %5892 = mul nsw i32 20, %5891
  %5893 = add nsw i32 %5890, %5892
  %5894 = sext i32 %5893 to i64
  %5895 = getelementptr inbounds double, ptr %5889, i64 %5894
  %5896 = load double, ptr %5895, align 8, !tbaa !11
  %5897 = call double @llvm.fmuladd.f64(double 0x3CC0000000000000, double %5896, double %5888)
  %5898 = load ptr, ptr %7, align 8, !tbaa !9
  %5899 = load i32, ptr %12, align 4, !tbaa !5
  %5900 = load i32, ptr %8, align 4, !tbaa !5
  %5901 = mul nsw i32 21, %5900
  %5902 = add nsw i32 %5899, %5901
  %5903 = sext i32 %5902 to i64
  %5904 = getelementptr inbounds double, ptr %5898, i64 %5903
  %5905 = load double, ptr %5904, align 8, !tbaa !11
  %5906 = call double @llvm.fmuladd.f64(double 0xBC92000000000000, double %5905, double %5897)
  %5907 = load ptr, ptr %7, align 8, !tbaa !9
  %5908 = load i32, ptr %12, align 4, !tbaa !5
  %5909 = load i32, ptr %8, align 4, !tbaa !5
  %5910 = mul nsw i32 22, %5909
  %5911 = add nsw i32 %5908, %5910
  %5912 = sext i32 %5911 to i64
  %5913 = getelementptr inbounds double, ptr %5907, i64 %5912
  %5914 = load double, ptr %5913, align 8, !tbaa !11
  %5915 = call double @llvm.fmuladd.f64(double 0x3C91800000000000, double %5914, double %5906)
  %5916 = load ptr, ptr %7, align 8, !tbaa !9
  %5917 = load i32, ptr %12, align 4, !tbaa !5
  %5918 = load i32, ptr %8, align 4, !tbaa !5
  %5919 = mul nsw i32 23, %5918
  %5920 = add nsw i32 %5917, %5919
  %5921 = sext i32 %5920 to i64
  %5922 = getelementptr inbounds double, ptr %5916, i64 %5921
  %5923 = load double, ptr %5922, align 8, !tbaa !11
  %5924 = call double @llvm.fmuladd.f64(double 0x3C30000000000000, double %5923, double %5915)
  %5925 = load ptr, ptr %7, align 8, !tbaa !9
  %5926 = load i32, ptr %12, align 4, !tbaa !5
  %5927 = load i32, ptr %8, align 4, !tbaa !5
  %5928 = mul nsw i32 24, %5927
  %5929 = add nsw i32 %5926, %5928
  %5930 = sext i32 %5929 to i64
  %5931 = getelementptr inbounds double, ptr %5925, i64 %5930
  %5932 = load double, ptr %5931, align 8, !tbaa !11
  %5933 = call double @llvm.fmuladd.f64(double 0x3C82000000000000, double %5932, double %5924)
  %5934 = load ptr, ptr %7, align 8, !tbaa !9
  %5935 = load i32, ptr %12, align 4, !tbaa !5
  %5936 = load i32, ptr %8, align 4, !tbaa !5
  %5937 = mul nsw i32 25, %5936
  %5938 = add nsw i32 %5935, %5937
  %5939 = sext i32 %5938 to i64
  %5940 = getelementptr inbounds double, ptr %5934, i64 %5939
  %5941 = load double, ptr %5940, align 8, !tbaa !11
  %5942 = call double @llvm.fmuladd.f64(double 0xBC95000000000000, double %5941, double %5933)
  %5943 = load ptr, ptr %7, align 8, !tbaa !9
  %5944 = load i32, ptr %12, align 4, !tbaa !5
  %5945 = load i32, ptr %8, align 4, !tbaa !5
  %5946 = mul nsw i32 26, %5945
  %5947 = add nsw i32 %5944, %5946
  %5948 = sext i32 %5947 to i64
  %5949 = getelementptr inbounds double, ptr %5943, i64 %5948
  %5950 = load double, ptr %5949, align 8, !tbaa !11
  %5951 = call double @llvm.fmuladd.f64(double 0xBFEA0946EB3057DA, double %5950, double %5942)
  %5952 = load ptr, ptr %7, align 8, !tbaa !9
  %5953 = load i32, ptr %12, align 4, !tbaa !5
  %5954 = load i32, ptr %8, align 4, !tbaa !5
  %5955 = mul nsw i32 27, %5954
  %5956 = add nsw i32 %5953, %5955
  %5957 = sext i32 %5956 to i64
  %5958 = getelementptr inbounds double, ptr %5952, i64 %5957
  %5959 = load double, ptr %5958, align 8, !tbaa !11
  %5960 = call double @llvm.fmuladd.f64(double 0xBCA6BFFFFFFFFFFE, double %5959, double %5951)
  %5961 = load ptr, ptr %7, align 8, !tbaa !9
  %5962 = load i32, ptr %12, align 4, !tbaa !5
  %5963 = load i32, ptr %8, align 4, !tbaa !5
  %5964 = mul nsw i32 28, %5963
  %5965 = add nsw i32 %5962, %5964
  %5966 = sext i32 %5965 to i64
  %5967 = getelementptr inbounds double, ptr %5961, i64 %5966
  %5968 = load double, ptr %5967, align 8, !tbaa !11
  %5969 = call double @llvm.fmuladd.f64(double 0x3C8C000000000000, double %5968, double %5960)
  %5970 = load ptr, ptr %7, align 8, !tbaa !9
  %5971 = load i32, ptr %12, align 4, !tbaa !5
  %5972 = load i32, ptr %8, align 4, !tbaa !5
  %5973 = mul nsw i32 29, %5972
  %5974 = add nsw i32 %5971, %5973
  %5975 = sext i32 %5974 to i64
  %5976 = getelementptr inbounds double, ptr %5970, i64 %5975
  %5977 = load double, ptr %5976, align 8, !tbaa !11
  %5978 = call double @llvm.fmuladd.f64(double 0xBC8C000000000000, double %5977, double %5969)
  %5979 = load ptr, ptr %7, align 8, !tbaa !9
  %5980 = load i32, ptr %12, align 4, !tbaa !5
  %5981 = load i32, ptr %8, align 4, !tbaa !5
  %5982 = mul nsw i32 30, %5981
  %5983 = add nsw i32 %5980, %5982
  %5984 = sext i32 %5983 to i64
  %5985 = getelementptr inbounds double, ptr %5979, i64 %5984
  %5986 = load double, ptr %5985, align 8, !tbaa !11
  %5987 = call double @llvm.fmuladd.f64(double 0x3CAC000000000000, double %5986, double %5978)
  %5988 = load ptr, ptr %7, align 8, !tbaa !9
  %5989 = load i32, ptr %12, align 4, !tbaa !5
  %5990 = load i32, ptr %8, align 4, !tbaa !5
  %5991 = mul nsw i32 31, %5990
  %5992 = add nsw i32 %5989, %5991
  %5993 = sext i32 %5992 to i64
  %5994 = getelementptr inbounds double, ptr %5988, i64 %5993
  %5995 = load double, ptr %5994, align 8, !tbaa !11
  %5996 = call double @llvm.fmuladd.f64(double 0x3C91800000000000, double %5995, double %5987)
  %5997 = load ptr, ptr %7, align 8, !tbaa !9
  %5998 = load i32, ptr %12, align 4, !tbaa !5
  %5999 = load i32, ptr %8, align 4, !tbaa !5
  %6000 = mul nsw i32 32, %5999
  %6001 = add nsw i32 %5998, %6000
  %6002 = sext i32 %6001 to i64
  %6003 = getelementptr inbounds double, ptr %5997, i64 %6002
  %6004 = load double, ptr %6003, align 8, !tbaa !11
  %6005 = call double @llvm.fmuladd.f64(double 0xBC74000000000000, double %6004, double %5996)
  %6006 = load ptr, ptr %7, align 8, !tbaa !9
  %6007 = load i32, ptr %12, align 4, !tbaa !5
  %6008 = load i32, ptr %8, align 4, !tbaa !5
  %6009 = mul nsw i32 33, %6008
  %6010 = add nsw i32 %6007, %6009
  %6011 = sext i32 %6010 to i64
  %6012 = getelementptr inbounds double, ptr %6006, i64 %6011
  %6013 = load double, ptr %6012, align 8, !tbaa !11
  %6014 = call double @llvm.fmuladd.f64(double 0xBC72800000000001, double %6013, double %6005)
  %6015 = load ptr, ptr %7, align 8, !tbaa !9
  %6016 = load i32, ptr %12, align 4, !tbaa !5
  %6017 = load i32, ptr %8, align 4, !tbaa !5
  %6018 = mul nsw i32 34, %6017
  %6019 = add nsw i32 %6016, %6018
  %6020 = sext i32 %6019 to i64
  %6021 = getelementptr inbounds double, ptr %6015, i64 %6020
  %6022 = load double, ptr %6021, align 8, !tbaa !11
  %6023 = call double @llvm.fmuladd.f64(double 0xBC76000000000001, double %6022, double %6014)
  %6024 = load ptr, ptr %7, align 8, !tbaa !9
  %6025 = load i32, ptr %12, align 4, !tbaa !5
  %6026 = load i32, ptr %8, align 4, !tbaa !5
  %6027 = mul nsw i32 35, %6026
  %6028 = add nsw i32 %6025, %6027
  %6029 = sext i32 %6028 to i64
  %6030 = getelementptr inbounds double, ptr %6024, i64 %6029
  %6031 = load double, ptr %6030, align 8, !tbaa !11
  %6032 = call double @llvm.fmuladd.f64(double 0xBC6C000000000000, double %6031, double %6023)
  %6033 = load ptr, ptr %7, align 8, !tbaa !9
  %6034 = load i32, ptr %12, align 4, !tbaa !5
  %6035 = load i32, ptr %8, align 4, !tbaa !5
  %6036 = mul nsw i32 36, %6035
  %6037 = add nsw i32 %6034, %6036
  %6038 = sext i32 %6037 to i64
  %6039 = getelementptr inbounds double, ptr %6033, i64 %6038
  %6040 = load double, ptr %6039, align 8, !tbaa !11
  %6041 = call double @llvm.fmuladd.f64(double 0x3FF86DB962AC2966, double %6040, double %6032)
  %6042 = load ptr, ptr %7, align 8, !tbaa !9
  %6043 = load i32, ptr %12, align 4, !tbaa !5
  %6044 = load i32, ptr %8, align 4, !tbaa !5
  %6045 = mul nsw i32 37, %6044
  %6046 = add nsw i32 %6043, %6045
  %6047 = sext i32 %6046 to i64
  %6048 = getelementptr inbounds double, ptr %6042, i64 %6047
  %6049 = load double, ptr %6048, align 8, !tbaa !11
  %6050 = call double @llvm.fmuladd.f64(double 0xBC9C800000000000, double %6049, double %6041)
  %6051 = load ptr, ptr %7, align 8, !tbaa !9
  %6052 = load i32, ptr %12, align 4, !tbaa !5
  %6053 = load i32, ptr %8, align 4, !tbaa !5
  %6054 = mul nsw i32 38, %6053
  %6055 = add nsw i32 %6052, %6054
  %6056 = sext i32 %6055 to i64
  %6057 = getelementptr inbounds double, ptr %6051, i64 %6056
  %6058 = load double, ptr %6057, align 8, !tbaa !11
  %6059 = call double @llvm.fmuladd.f64(double 0xBC99000000000000, double %6058, double %6050)
  %6060 = load ptr, ptr %7, align 8, !tbaa !9
  %6061 = load i32, ptr %12, align 4, !tbaa !5
  %6062 = load i32, ptr %8, align 4, !tbaa !5
  %6063 = mul nsw i32 39, %6062
  %6064 = add nsw i32 %6061, %6063
  %6065 = sext i32 %6064 to i64
  %6066 = getelementptr inbounds double, ptr %6060, i64 %6065
  %6067 = load double, ptr %6066, align 8, !tbaa !11
  %6068 = call double @llvm.fmuladd.f64(double 0xBC78000000000002, double %6067, double %6059)
  store double %6068, ptr %11, align 8, !tbaa !11
  %6069 = load double, ptr %11, align 8, !tbaa !11
  %6070 = load ptr, ptr %9, align 8, !tbaa !9
  %6071 = load i32, ptr %12, align 4, !tbaa !5
  %6072 = load i32, ptr %10, align 4, !tbaa !5
  %6073 = mul nsw i32 16, %6072
  %6074 = add nsw i32 %6071, %6073
  %6075 = sext i32 %6074 to i64
  %6076 = getelementptr inbounds double, ptr %6070, i64 %6075
  store double %6069, ptr %6076, align 8, !tbaa !11
  %6077 = load ptr, ptr %7, align 8, !tbaa !9
  %6078 = load i32, ptr %12, align 4, !tbaa !5
  %6079 = load i32, ptr %8, align 4, !tbaa !5
  %6080 = mul nsw i32 0, %6079
  %6081 = add nsw i32 %6078, %6080
  %6082 = sext i32 %6081 to i64
  %6083 = getelementptr inbounds double, ptr %6077, i64 %6082
  %6084 = load double, ptr %6083, align 8, !tbaa !11
  %6085 = load ptr, ptr %7, align 8, !tbaa !9
  %6086 = load i32, ptr %12, align 4, !tbaa !5
  %6087 = load i32, ptr %8, align 4, !tbaa !5
  %6088 = mul nsw i32 1, %6087
  %6089 = add nsw i32 %6086, %6088
  %6090 = sext i32 %6089 to i64
  %6091 = getelementptr inbounds double, ptr %6085, i64 %6090
  %6092 = load double, ptr %6091, align 8, !tbaa !11
  %6093 = fmul double 0x3C9EFFFFFFFFFFFD, %6092
  %6094 = call double @llvm.fmuladd.f64(double 0xBCB8800000000000, double %6084, double %6093)
  %6095 = load ptr, ptr %7, align 8, !tbaa !9
  %6096 = load i32, ptr %12, align 4, !tbaa !5
  %6097 = load i32, ptr %8, align 4, !tbaa !5
  %6098 = mul nsw i32 2, %6097
  %6099 = add nsw i32 %6096, %6098
  %6100 = sext i32 %6099 to i64
  %6101 = getelementptr inbounds double, ptr %6095, i64 %6100
  %6102 = load double, ptr %6101, align 8, !tbaa !11
  %6103 = call double @llvm.fmuladd.f64(double 0xBC9E5FFFFFFFFFFD, double %6102, double %6094)
  %6104 = load ptr, ptr %7, align 8, !tbaa !9
  %6105 = load i32, ptr %12, align 4, !tbaa !5
  %6106 = load i32, ptr %8, align 4, !tbaa !5
  %6107 = mul nsw i32 3, %6106
  %6108 = add nsw i32 %6105, %6107
  %6109 = sext i32 %6108 to i64
  %6110 = getelementptr inbounds double, ptr %6104, i64 %6109
  %6111 = load double, ptr %6110, align 8, !tbaa !11
  %6112 = call double @llvm.fmuladd.f64(double 0x3C92200000000000, double %6111, double %6103)
  %6113 = load ptr, ptr %7, align 8, !tbaa !9
  %6114 = load i32, ptr %12, align 4, !tbaa !5
  %6115 = load i32, ptr %8, align 4, !tbaa !5
  %6116 = mul nsw i32 4, %6115
  %6117 = add nsw i32 %6114, %6116
  %6118 = sext i32 %6117 to i64
  %6119 = getelementptr inbounds double, ptr %6113, i64 %6118
  %6120 = load double, ptr %6119, align 8, !tbaa !11
  %6121 = call double @llvm.fmuladd.f64(double 0xBCA4400000000001, double %6120, double %6112)
  %6122 = load ptr, ptr %7, align 8, !tbaa !9
  %6123 = load i32, ptr %12, align 4, !tbaa !5
  %6124 = load i32, ptr %8, align 4, !tbaa !5
  %6125 = mul nsw i32 5, %6124
  %6126 = add nsw i32 %6123, %6125
  %6127 = sext i32 %6126 to i64
  %6128 = getelementptr inbounds double, ptr %6122, i64 %6127
  %6129 = load double, ptr %6128, align 8, !tbaa !11
  %6130 = call double @llvm.fmuladd.f64(double 0xBC71FFFFFFFFFFFF, double %6129, double %6121)
  %6131 = load ptr, ptr %7, align 8, !tbaa !9
  %6132 = load i32, ptr %12, align 4, !tbaa !5
  %6133 = load i32, ptr %8, align 4, !tbaa !5
  %6134 = mul nsw i32 6, %6133
  %6135 = add nsw i32 %6132, %6134
  %6136 = sext i32 %6135 to i64
  %6137 = getelementptr inbounds double, ptr %6131, i64 %6136
  %6138 = load double, ptr %6137, align 8, !tbaa !11
  %6139 = call double @llvm.fmuladd.f64(double 0x3C96400000000000, double %6138, double %6130)
  %6140 = load ptr, ptr %7, align 8, !tbaa !9
  %6141 = load i32, ptr %12, align 4, !tbaa !5
  %6142 = load i32, ptr %8, align 4, !tbaa !5
  %6143 = mul nsw i32 7, %6142
  %6144 = add nsw i32 %6141, %6143
  %6145 = sext i32 %6144 to i64
  %6146 = getelementptr inbounds double, ptr %6140, i64 %6145
  %6147 = load double, ptr %6146, align 8, !tbaa !11
  %6148 = call double @llvm.fmuladd.f64(double 0xBFBD29AD687BB056, double %6147, double %6139)
  %6149 = load ptr, ptr %7, align 8, !tbaa !9
  %6150 = load i32, ptr %12, align 4, !tbaa !5
  %6151 = load i32, ptr %8, align 4, !tbaa !5
  %6152 = mul nsw i32 8, %6151
  %6153 = add nsw i32 %6150, %6152
  %6154 = sext i32 %6153 to i64
  %6155 = getelementptr inbounds double, ptr %6149, i64 %6154
  %6156 = load double, ptr %6155, align 8, !tbaa !11
  %6157 = call double @llvm.fmuladd.f64(double 0x3CB07FFFFFFFFFFF, double %6156, double %6148)
  %6158 = load ptr, ptr %7, align 8, !tbaa !9
  %6159 = load i32, ptr %12, align 4, !tbaa !5
  %6160 = load i32, ptr %8, align 4, !tbaa !5
  %6161 = mul nsw i32 10, %6160
  %6162 = add nsw i32 %6159, %6161
  %6163 = sext i32 %6162 to i64
  %6164 = getelementptr inbounds double, ptr %6158, i64 %6163
  %6165 = load double, ptr %6164, align 8, !tbaa !11
  %6166 = call double @llvm.fmuladd.f64(double 0x3CB8000000000001, double %6165, double %6157)
  %6167 = load ptr, ptr %7, align 8, !tbaa !9
  %6168 = load i32, ptr %12, align 4, !tbaa !5
  %6169 = load i32, ptr %8, align 4, !tbaa !5
  %6170 = mul nsw i32 11, %6169
  %6171 = add nsw i32 %6168, %6170
  %6172 = sext i32 %6171 to i64
  %6173 = getelementptr inbounds double, ptr %6167, i64 %6172
  %6174 = load double, ptr %6173, align 8, !tbaa !11
  %6175 = call double @llvm.fmuladd.f64(double 0xBC9A000000000000, double %6174, double %6166)
  %6176 = load ptr, ptr %7, align 8, !tbaa !9
  %6177 = load i32, ptr %12, align 4, !tbaa !5
  %6178 = load i32, ptr %8, align 4, !tbaa !5
  %6179 = mul nsw i32 12, %6178
  %6180 = add nsw i32 %6177, %6179
  %6181 = sext i32 %6180 to i64
  %6182 = getelementptr inbounds double, ptr %6176, i64 %6181
  %6183 = load double, ptr %6182, align 8, !tbaa !11
  %6184 = call double @llvm.fmuladd.f64(double 0x3C82FFFFFFFFFFFF, double %6183, double %6175)
  %6185 = load ptr, ptr %7, align 8, !tbaa !9
  %6186 = load i32, ptr %12, align 4, !tbaa !5
  %6187 = load i32, ptr %8, align 4, !tbaa !5
  %6188 = mul nsw i32 13, %6187
  %6189 = add nsw i32 %6186, %6188
  %6190 = sext i32 %6189 to i64
  %6191 = getelementptr inbounds double, ptr %6185, i64 %6190
  %6192 = load double, ptr %6191, align 8, !tbaa !11
  %6193 = call double @llvm.fmuladd.f64(double 0x3C6DFFFFFFFFFFFE, double %6192, double %6184)
  %6194 = load ptr, ptr %7, align 8, !tbaa !9
  %6195 = load i32, ptr %12, align 4, !tbaa !5
  %6196 = load i32, ptr %8, align 4, !tbaa !5
  %6197 = mul nsw i32 14, %6196
  %6198 = add nsw i32 %6195, %6197
  %6199 = sext i32 %6198 to i64
  %6200 = getelementptr inbounds double, ptr %6194, i64 %6199
  %6201 = load double, ptr %6200, align 8, !tbaa !11
  %6202 = call double @llvm.fmuladd.f64(double 0xBCA0800000000001, double %6201, double %6193)
  %6203 = load ptr, ptr %7, align 8, !tbaa !9
  %6204 = load i32, ptr %12, align 4, !tbaa !5
  %6205 = load i32, ptr %8, align 4, !tbaa !5
  %6206 = mul nsw i32 15, %6205
  %6207 = add nsw i32 %6204, %6206
  %6208 = sext i32 %6207 to i64
  %6209 = getelementptr inbounds double, ptr %6203, i64 %6208
  %6210 = load double, ptr %6209, align 8, !tbaa !11
  %6211 = call double @llvm.fmuladd.f64(double 0xBCB1C00000000000, double %6210, double %6202)
  %6212 = load ptr, ptr %7, align 8, !tbaa !9
  %6213 = load i32, ptr %12, align 4, !tbaa !5
  %6214 = load i32, ptr %8, align 4, !tbaa !5
  %6215 = mul nsw i32 16, %6214
  %6216 = add nsw i32 %6213, %6215
  %6217 = sext i32 %6216 to i64
  %6218 = getelementptr inbounds double, ptr %6212, i64 %6217
  %6219 = load double, ptr %6218, align 8, !tbaa !11
  %6220 = call double @llvm.fmuladd.f64(double 0xBC9E7FFFFFFFFFFD, double %6219, double %6211)
  %6221 = load ptr, ptr %7, align 8, !tbaa !9
  %6222 = load i32, ptr %12, align 4, !tbaa !5
  %6223 = load i32, ptr %8, align 4, !tbaa !5
  %6224 = mul nsw i32 17, %6223
  %6225 = add nsw i32 %6222, %6224
  %6226 = sext i32 %6225 to i64
  %6227 = getelementptr inbounds double, ptr %6221, i64 %6226
  %6228 = load double, ptr %6227, align 8, !tbaa !11
  %6229 = call double @llvm.fmuladd.f64(double 0x3FD9A613A5CEF63B, double %6228, double %6220)
  %6230 = load ptr, ptr %7, align 8, !tbaa !9
  %6231 = load i32, ptr %12, align 4, !tbaa !5
  %6232 = load i32, ptr %8, align 4, !tbaa !5
  %6233 = mul nsw i32 18, %6232
  %6234 = add nsw i32 %6231, %6233
  %6235 = sext i32 %6234 to i64
  %6236 = getelementptr inbounds double, ptr %6230, i64 %6235
  %6237 = load double, ptr %6236, align 8, !tbaa !11
  %6238 = call double @llvm.fmuladd.f64(double 0x3C88000000000000, double %6237, double %6229)
  %6239 = load ptr, ptr %7, align 8, !tbaa !9
  %6240 = load i32, ptr %12, align 4, !tbaa !5
  %6241 = load i32, ptr %8, align 4, !tbaa !5
  %6242 = mul nsw i32 19, %6241
  %6243 = add nsw i32 %6240, %6242
  %6244 = sext i32 %6243 to i64
  %6245 = getelementptr inbounds double, ptr %6239, i64 %6244
  %6246 = load double, ptr %6245, align 8, !tbaa !11
  %6247 = call double @llvm.fmuladd.f64(double 0x3C84000000000000, double %6246, double %6238)
  %6248 = load ptr, ptr %7, align 8, !tbaa !9
  %6249 = load i32, ptr %12, align 4, !tbaa !5
  %6250 = load i32, ptr %8, align 4, !tbaa !5
  %6251 = mul nsw i32 21, %6250
  %6252 = add nsw i32 %6249, %6251
  %6253 = sext i32 %6252 to i64
  %6254 = getelementptr inbounds double, ptr %6248, i64 %6253
  %6255 = load double, ptr %6254, align 8, !tbaa !11
  %6256 = call double @llvm.fmuladd.f64(double 0xBC9C000000000000, double %6255, double %6247)
  %6257 = load ptr, ptr %7, align 8, !tbaa !9
  %6258 = load i32, ptr %12, align 4, !tbaa !5
  %6259 = load i32, ptr %8, align 4, !tbaa !5
  %6260 = mul nsw i32 22, %6259
  %6261 = add nsw i32 %6258, %6260
  %6262 = sext i32 %6261 to i64
  %6263 = getelementptr inbounds double, ptr %6257, i64 %6262
  %6264 = load double, ptr %6263, align 8, !tbaa !11
  %6265 = call double @llvm.fmuladd.f64(double 0xBC97000000000000, double %6264, double %6256)
  %6266 = load ptr, ptr %7, align 8, !tbaa !9
  %6267 = load i32, ptr %12, align 4, !tbaa !5
  %6268 = load i32, ptr %8, align 4, !tbaa !5
  %6269 = mul nsw i32 23, %6268
  %6270 = add nsw i32 %6267, %6269
  %6271 = sext i32 %6270 to i64
  %6272 = getelementptr inbounds double, ptr %6266, i64 %6271
  %6273 = load double, ptr %6272, align 8, !tbaa !11
  %6274 = call double @llvm.fmuladd.f64(double 0x3CA5200000000000, double %6273, double %6265)
  %6275 = load ptr, ptr %7, align 8, !tbaa !9
  %6276 = load i32, ptr %12, align 4, !tbaa !5
  %6277 = load i32, ptr %8, align 4, !tbaa !5
  %6278 = mul nsw i32 24, %6277
  %6279 = add nsw i32 %6276, %6278
  %6280 = sext i32 %6279 to i64
  %6281 = getelementptr inbounds double, ptr %6275, i64 %6280
  %6282 = load double, ptr %6281, align 8, !tbaa !11
  %6283 = call double @llvm.fmuladd.f64(double 0x3C99000000000000, double %6282, double %6274)
  %6284 = load ptr, ptr %7, align 8, !tbaa !9
  %6285 = load i32, ptr %12, align 4, !tbaa !5
  %6286 = load i32, ptr %8, align 4, !tbaa !5
  %6287 = mul nsw i32 25, %6286
  %6288 = add nsw i32 %6285, %6287
  %6289 = sext i32 %6288 to i64
  %6290 = getelementptr inbounds double, ptr %6284, i64 %6289
  %6291 = load double, ptr %6290, align 8, !tbaa !11
  %6292 = call double @llvm.fmuladd.f64(double 0x3C8E000000000000, double %6291, double %6283)
  %6293 = load ptr, ptr %7, align 8, !tbaa !9
  %6294 = load i32, ptr %12, align 4, !tbaa !5
  %6295 = load i32, ptr %8, align 4, !tbaa !5
  %6296 = mul nsw i32 27, %6295
  %6297 = add nsw i32 %6294, %6296
  %6298 = sext i32 %6297 to i64
  %6299 = getelementptr inbounds double, ptr %6293, i64 %6298
  %6300 = load double, ptr %6299, align 8, !tbaa !11
  %6301 = call double @llvm.fmuladd.f64(double 0xBFEA0946EB3057DC, double %6300, double %6292)
  %6302 = load ptr, ptr %7, align 8, !tbaa !9
  %6303 = load i32, ptr %12, align 4, !tbaa !5
  %6304 = load i32, ptr %8, align 4, !tbaa !5
  %6305 = mul nsw i32 28, %6304
  %6306 = add nsw i32 %6303, %6305
  %6307 = sext i32 %6306 to i64
  %6308 = getelementptr inbounds double, ptr %6302, i64 %6307
  %6309 = load double, ptr %6308, align 8, !tbaa !11
  %6310 = call double @llvm.fmuladd.f64(double 0xBC88000000000000, double %6309, double %6301)
  %6311 = load ptr, ptr %7, align 8, !tbaa !9
  %6312 = load i32, ptr %12, align 4, !tbaa !5
  %6313 = load i32, ptr %8, align 4, !tbaa !5
  %6314 = mul nsw i32 29, %6313
  %6315 = add nsw i32 %6312, %6314
  %6316 = sext i32 %6315 to i64
  %6317 = getelementptr inbounds double, ptr %6311, i64 %6316
  %6318 = load double, ptr %6317, align 8, !tbaa !11
  %6319 = call double @llvm.fmuladd.f64(double 0xBC8C000000000000, double %6318, double %6310)
  %6320 = load ptr, ptr %7, align 8, !tbaa !9
  %6321 = load i32, ptr %12, align 4, !tbaa !5
  %6322 = load i32, ptr %8, align 4, !tbaa !5
  %6323 = mul nsw i32 30, %6322
  %6324 = add nsw i32 %6321, %6323
  %6325 = sext i32 %6324 to i64
  %6326 = getelementptr inbounds double, ptr %6320, i64 %6325
  %6327 = load double, ptr %6326, align 8, !tbaa !11
  %6328 = call double @llvm.fmuladd.f64(double 0x3CC1800000000000, double %6327, double %6319)
  %6329 = load ptr, ptr %7, align 8, !tbaa !9
  %6330 = load i32, ptr %12, align 4, !tbaa !5
  %6331 = load i32, ptr %8, align 4, !tbaa !5
  %6332 = mul nsw i32 31, %6331
  %6333 = add nsw i32 %6330, %6332
  %6334 = sext i32 %6333 to i64
  %6335 = getelementptr inbounds double, ptr %6329, i64 %6334
  %6336 = load double, ptr %6335, align 8, !tbaa !11
  %6337 = call double @llvm.fmuladd.f64(double 0xBCA8C00000000000, double %6336, double %6328)
  %6338 = load ptr, ptr %7, align 8, !tbaa !9
  %6339 = load i32, ptr %12, align 4, !tbaa !5
  %6340 = load i32, ptr %8, align 4, !tbaa !5
  %6341 = mul nsw i32 32, %6340
  %6342 = add nsw i32 %6339, %6341
  %6343 = sext i32 %6342 to i64
  %6344 = getelementptr inbounds double, ptr %6338, i64 %6343
  %6345 = load double, ptr %6344, align 8, !tbaa !11
  %6346 = call double @llvm.fmuladd.f64(double 0xBCAE400000000002, double %6345, double %6337)
  %6347 = load ptr, ptr %7, align 8, !tbaa !9
  %6348 = load i32, ptr %12, align 4, !tbaa !5
  %6349 = load i32, ptr %8, align 4, !tbaa !5
  %6350 = mul nsw i32 33, %6349
  %6351 = add nsw i32 %6348, %6350
  %6352 = sext i32 %6351 to i64
  %6353 = getelementptr inbounds double, ptr %6347, i64 %6352
  %6354 = load double, ptr %6353, align 8, !tbaa !11
  %6355 = call double @llvm.fmuladd.f64(double 0xBC94600000000000, double %6354, double %6346)
  %6356 = load ptr, ptr %7, align 8, !tbaa !9
  %6357 = load i32, ptr %12, align 4, !tbaa !5
  %6358 = load i32, ptr %8, align 4, !tbaa !5
  %6359 = mul nsw i32 34, %6358
  %6360 = add nsw i32 %6357, %6359
  %6361 = sext i32 %6360 to i64
  %6362 = getelementptr inbounds double, ptr %6356, i64 %6361
  %6363 = load double, ptr %6362, align 8, !tbaa !11
  %6364 = call double @llvm.fmuladd.f64(double 0x3C94800000000000, double %6363, double %6355)
  %6365 = load ptr, ptr %7, align 8, !tbaa !9
  %6366 = load i32, ptr %12, align 4, !tbaa !5
  %6367 = load i32, ptr %8, align 4, !tbaa !5
  %6368 = mul nsw i32 35, %6367
  %6369 = add nsw i32 %6366, %6368
  %6370 = sext i32 %6369 to i64
  %6371 = getelementptr inbounds double, ptr %6365, i64 %6370
  %6372 = load double, ptr %6371, align 8, !tbaa !11
  %6373 = call double @llvm.fmuladd.f64(double 0x3CAF400000000001, double %6372, double %6364)
  %6374 = load ptr, ptr %7, align 8, !tbaa !9
  %6375 = load i32, ptr %12, align 4, !tbaa !5
  %6376 = load i32, ptr %8, align 4, !tbaa !5
  %6377 = mul nsw i32 36, %6376
  %6378 = add nsw i32 %6375, %6377
  %6379 = sext i32 %6378 to i64
  %6380 = getelementptr inbounds double, ptr %6374, i64 %6379
  %6381 = load double, ptr %6380, align 8, !tbaa !11
  %6382 = call double @llvm.fmuladd.f64(double 0xBCB7AFFFFFFFFFFF, double %6381, double %6373)
  %6383 = load ptr, ptr %7, align 8, !tbaa !9
  %6384 = load i32, ptr %12, align 4, !tbaa !5
  %6385 = load i32, ptr %8, align 4, !tbaa !5
  %6386 = mul nsw i32 37, %6385
  %6387 = add nsw i32 %6384, %6386
  %6388 = sext i32 %6387 to i64
  %6389 = getelementptr inbounds double, ptr %6383, i64 %6388
  %6390 = load double, ptr %6389, align 8, !tbaa !11
  %6391 = call double @llvm.fmuladd.f64(double 0x3FF86DB962AC2966, double %6390, double %6382)
  %6392 = load ptr, ptr %7, align 8, !tbaa !9
  %6393 = load i32, ptr %12, align 4, !tbaa !5
  %6394 = load i32, ptr %8, align 4, !tbaa !5
  %6395 = mul nsw i32 38, %6394
  %6396 = add nsw i32 %6393, %6395
  %6397 = sext i32 %6396 to i64
  %6398 = getelementptr inbounds double, ptr %6392, i64 %6397
  %6399 = load double, ptr %6398, align 8, !tbaa !11
  %6400 = call double @llvm.fmuladd.f64(double 0xBCA67FFFFFFFFFFE, double %6399, double %6391)
  %6401 = load ptr, ptr %7, align 8, !tbaa !9
  %6402 = load i32, ptr %12, align 4, !tbaa !5
  %6403 = load i32, ptr %8, align 4, !tbaa !5
  %6404 = mul nsw i32 39, %6403
  %6405 = add nsw i32 %6402, %6404
  %6406 = sext i32 %6405 to i64
  %6407 = getelementptr inbounds double, ptr %6401, i64 %6406
  %6408 = load double, ptr %6407, align 8, !tbaa !11
  %6409 = call double @llvm.fmuladd.f64(double 0xBC86000000000001, double %6408, double %6400)
  store double %6409, ptr %11, align 8, !tbaa !11
  %6410 = load double, ptr %11, align 8, !tbaa !11
  %6411 = load ptr, ptr %9, align 8, !tbaa !9
  %6412 = load i32, ptr %12, align 4, !tbaa !5
  %6413 = load i32, ptr %10, align 4, !tbaa !5
  %6414 = mul nsw i32 17, %6413
  %6415 = add nsw i32 %6412, %6414
  %6416 = sext i32 %6415 to i64
  %6417 = getelementptr inbounds double, ptr %6411, i64 %6416
  store double %6410, ptr %6417, align 8, !tbaa !11
  %6418 = load ptr, ptr %7, align 8, !tbaa !9
  %6419 = load i32, ptr %12, align 4, !tbaa !5
  %6420 = load i32, ptr %8, align 4, !tbaa !5
  %6421 = mul nsw i32 0, %6420
  %6422 = add nsw i32 %6419, %6421
  %6423 = sext i32 %6422 to i64
  %6424 = getelementptr inbounds double, ptr %6418, i64 %6423
  %6425 = load double, ptr %6424, align 8, !tbaa !11
  %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 1, %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 = fmul double 0xBCB5800000000000, %6433
  %6435 = call double @llvm.fmuladd.f64(double 0x3CA4000000000001, double %6425, double %6434)
  %6436 = load ptr, ptr %7, align 8, !tbaa !9
  %6437 = load i32, ptr %12, align 4, !tbaa !5
  %6438 = load i32, ptr %8, align 4, !tbaa !5
  %6439 = mul nsw i32 2, %6438
  %6440 = add nsw i32 %6437, %6439
  %6441 = sext i32 %6440 to i64
  %6442 = getelementptr inbounds double, ptr %6436, i64 %6441
  %6443 = load double, ptr %6442, align 8, !tbaa !11
  %6444 = call double @llvm.fmuladd.f64(double 0x3CA33FFFFFFFFFFE, double %6443, double %6435)
  %6445 = load ptr, ptr %7, align 8, !tbaa !9
  %6446 = load i32, ptr %12, align 4, !tbaa !5
  %6447 = load i32, ptr %8, align 4, !tbaa !5
  %6448 = mul nsw i32 3, %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 = call double @llvm.fmuladd.f64(double 0xBCA1C00000000000, double %6452, double %6444)
  %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 4, %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 = call double @llvm.fmuladd.f64(double 0xBCB8000000000001, double %6461, double %6453)
  %6463 = load ptr, ptr %7, align 8, !tbaa !9
  %6464 = load i32, ptr %12, align 4, !tbaa !5
  %6465 = load i32, ptr %8, align 4, !tbaa !5
  %6466 = mul nsw i32 5, %6465
  %6467 = add nsw i32 %6464, %6466
  %6468 = sext i32 %6467 to i64
  %6469 = getelementptr inbounds double, ptr %6463, i64 %6468
  %6470 = load double, ptr %6469, align 8, !tbaa !11
  %6471 = call double @llvm.fmuladd.f64(double 0xBCACFFFFFFFFFFFF, double %6470, double %6462)
  %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 6, %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 0xBC92000000000000, 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 7, %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 0x3C9B000000000000, 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 8, %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 0xBFBD29AD687BB04F, 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 9, %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 0x3CA2000000000000, 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 10, %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 0xBCC4000000000000, 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 11, %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 0xBCAC000000000000, 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 12, %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 0xBC9DFFFFFFFFFFFE, 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 15, %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 0x3CA0000000000002, 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 16, %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 0x3CA7000000000002, 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 17, %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 0xBC9DFFFFFFFFFFFE, 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 18, %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 0x3FD9A613A5CEF63E, 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 19, %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 0x3CB0000000000000, 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 20, %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 0x3CBA000000000000, 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 21, %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 0x3CC1000000000000, 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 22, %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 0x3C9DFFFFFFFFFFFE, 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 23, %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 0xBCBC400000000000, 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 24, %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 0x3C7FFFFFFFFFFFFF, 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 25, %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 0x3C90000000000000, 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 26, %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 0xBCAF000000000001, 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 27, %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 0x3C88000000000000, 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 28, %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 0xBFEA0946EB3057DD, 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 29, %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 0xBCA4000000000001, 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 30, %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 0x3CC0000000000000, 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 31, %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 0xBC90000000000000, 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 32, %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 0xBCA0400000000002, 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 33, %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 0x3CB4600000000001, 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 34, %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 0x3CB1000000000001, 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 35, %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 0xBCA7000000000002, 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 36, %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 0x3C84000000000000, 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 37, %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 0xBC88000000000000, 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 38, %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 0x3FF86DB962AC2966, 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 39, %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 0x3CA2000000000000, double %6758, double %6750)
  store double %6759, ptr %11, align 8, !tbaa !11
  %6760 = load double, ptr %11, align 8, !tbaa !11
  %6761 = load ptr, ptr %9, align 8, !tbaa !9
  %6762 = load i32, ptr %12, align 4, !tbaa !5
  %6763 = load i32, ptr %10, align 4, !tbaa !5
  %6764 = mul nsw i32 18, %6763
  %6765 = add nsw i32 %6762, %6764
  %6766 = sext i32 %6765 to i64
  %6767 = getelementptr inbounds double, ptr %6761, i64 %6766
  store double %6760, ptr %6767, align 8, !tbaa !11
  %6768 = load ptr, ptr %7, align 8, !tbaa !9
  %6769 = load i32, ptr %12, align 4, !tbaa !5
  %6770 = load i32, ptr %8, align 4, !tbaa !5
  %6771 = mul nsw i32 0, %6770
  %6772 = add nsw i32 %6769, %6771
  %6773 = sext i32 %6772 to i64
  %6774 = getelementptr inbounds double, ptr %6768, i64 %6773
  %6775 = load double, ptr %6774, align 8, !tbaa !11
  %6776 = load ptr, ptr %7, align 8, !tbaa !9
  %6777 = load i32, ptr %12, align 4, !tbaa !5
  %6778 = load i32, ptr %8, align 4, !tbaa !5
  %6779 = mul nsw i32 1, %6778
  %6780 = add nsw i32 %6777, %6779
  %6781 = sext i32 %6780 to i64
  %6782 = getelementptr inbounds double, ptr %6776, i64 %6781
  %6783 = load double, ptr %6782, align 8, !tbaa !11
  %6784 = fmul double 0x3CAB000000000001, %6783
  %6785 = call double @llvm.fmuladd.f64(double 0x3CC1000000000000, double %6775, double %6784)
  %6786 = load ptr, ptr %7, align 8, !tbaa !9
  %6787 = load i32, ptr %12, align 4, !tbaa !5
  %6788 = load i32, ptr %8, align 4, !tbaa !5
  %6789 = mul nsw i32 2, %6788
  %6790 = add nsw i32 %6787, %6789
  %6791 = sext i32 %6790 to i64
  %6792 = getelementptr inbounds double, ptr %6786, i64 %6791
  %6793 = load double, ptr %6792, align 8, !tbaa !11
  %6794 = call double @llvm.fmuladd.f64(double 0x3CA1C00000000000, double %6793, double %6785)
  %6795 = load ptr, ptr %7, align 8, !tbaa !9
  %6796 = load i32, ptr %12, align 4, !tbaa !5
  %6797 = load i32, ptr %8, align 4, !tbaa !5
  %6798 = mul nsw i32 3, %6797
  %6799 = add nsw i32 %6796, %6798
  %6800 = sext i32 %6799 to i64
  %6801 = getelementptr inbounds double, ptr %6795, i64 %6800
  %6802 = load double, ptr %6801, align 8, !tbaa !11
  %6803 = call double @llvm.fmuladd.f64(double 0xBCC2A00000000000, double %6802, double %6794)
  %6804 = load ptr, ptr %7, align 8, !tbaa !9
  %6805 = load i32, ptr %12, align 4, !tbaa !5
  %6806 = load i32, ptr %8, align 4, !tbaa !5
  %6807 = mul nsw i32 4, %6806
  %6808 = add nsw i32 %6805, %6807
  %6809 = sext i32 %6808 to i64
  %6810 = getelementptr inbounds double, ptr %6804, i64 %6809
  %6811 = load double, ptr %6810, align 8, !tbaa !11
  %6812 = call double @llvm.fmuladd.f64(double 0x3CBC800000000000, double %6811, double %6803)
  %6813 = load ptr, ptr %7, align 8, !tbaa !9
  %6814 = load i32, ptr %12, align 4, !tbaa !5
  %6815 = load i32, ptr %8, align 4, !tbaa !5
  %6816 = mul nsw i32 5, %6815
  %6817 = add nsw i32 %6814, %6816
  %6818 = sext i32 %6817 to i64
  %6819 = getelementptr inbounds double, ptr %6813, i64 %6818
  %6820 = load double, ptr %6819, align 8, !tbaa !11
  %6821 = call double @llvm.fmuladd.f64(double 0x3C96000000000000, double %6820, double %6812)
  %6822 = load ptr, ptr %7, align 8, !tbaa !9
  %6823 = load i32, ptr %12, align 4, !tbaa !5
  %6824 = load i32, ptr %8, align 4, !tbaa !5
  %6825 = mul nsw i32 6, %6824
  %6826 = add nsw i32 %6823, %6825
  %6827 = sext i32 %6826 to i64
  %6828 = getelementptr inbounds double, ptr %6822, i64 %6827
  %6829 = load double, ptr %6828, align 8, !tbaa !11
  %6830 = call double @llvm.fmuladd.f64(double 0xBC95000000000000, double %6829, double %6821)
  %6831 = load ptr, ptr %7, align 8, !tbaa !9
  %6832 = load i32, ptr %12, align 4, !tbaa !5
  %6833 = load i32, ptr %8, align 4, !tbaa !5
  %6834 = mul nsw i32 7, %6833
  %6835 = add nsw i32 %6832, %6834
  %6836 = sext i32 %6835 to i64
  %6837 = getelementptr inbounds double, ptr %6831, i64 %6836
  %6838 = load double, ptr %6837, align 8, !tbaa !11
  %6839 = call double @llvm.fmuladd.f64(double 0xBCB07FFFFFFFFFFF, double %6838, double %6830)
  %6840 = load ptr, ptr %7, align 8, !tbaa !9
  %6841 = load i32, ptr %12, align 4, !tbaa !5
  %6842 = load i32, ptr %8, align 4, !tbaa !5
  %6843 = mul nsw i32 8, %6842
  %6844 = add nsw i32 %6841, %6843
  %6845 = sext i32 %6844 to i64
  %6846 = getelementptr inbounds double, ptr %6840, i64 %6845
  %6847 = load double, ptr %6846, align 8, !tbaa !11
  %6848 = call double @llvm.fmuladd.f64(double 0xBCA0000000000002, double %6847, double %6839)
  %6849 = load ptr, ptr %7, align 8, !tbaa !9
  %6850 = load i32, ptr %12, align 4, !tbaa !5
  %6851 = load i32, ptr %8, align 4, !tbaa !5
  %6852 = mul nsw i32 9, %6851
  %6853 = add nsw i32 %6850, %6852
  %6854 = sext i32 %6853 to i64
  %6855 = getelementptr inbounds double, ptr %6849, i64 %6854
  %6856 = load double, ptr %6855, align 8, !tbaa !11
  %6857 = call double @llvm.fmuladd.f64(double 0xBFBD29AD687BB05D, double %6856, double %6848)
  %6858 = load ptr, ptr %7, align 8, !tbaa !9
  %6859 = load i32, ptr %12, align 4, !tbaa !5
  %6860 = load i32, ptr %8, align 4, !tbaa !5
  %6861 = mul nsw i32 10, %6860
  %6862 = add nsw i32 %6859, %6861
  %6863 = sext i32 %6862 to i64
  %6864 = getelementptr inbounds double, ptr %6858, i64 %6863
  %6865 = load double, ptr %6864, align 8, !tbaa !11
  %6866 = call double @llvm.fmuladd.f64(double 0x3CC3000000000000, double %6865, double %6857)
  %6867 = load ptr, ptr %7, align 8, !tbaa !9
  %6868 = load i32, ptr %12, align 4, !tbaa !5
  %6869 = load i32, ptr %8, align 4, !tbaa !5
  %6870 = mul nsw i32 11, %6869
  %6871 = add nsw i32 %6868, %6870
  %6872 = sext i32 %6871 to i64
  %6873 = getelementptr inbounds double, ptr %6867, i64 %6872
  %6874 = load double, ptr %6873, align 8, !tbaa !11
  %6875 = call double @llvm.fmuladd.f64(double 0x3CA4000000000001, double %6874, double %6866)
  %6876 = load ptr, ptr %7, align 8, !tbaa !9
  %6877 = load i32, ptr %12, align 4, !tbaa !5
  %6878 = load i32, ptr %8, align 4, !tbaa !5
  %6879 = mul nsw i32 12, %6878
  %6880 = add nsw i32 %6877, %6879
  %6881 = sext i32 %6880 to i64
  %6882 = getelementptr inbounds double, ptr %6876, i64 %6881
  %6883 = load double, ptr %6882, align 8, !tbaa !11
  %6884 = call double @llvm.fmuladd.f64(double 0x3CAF000000000001, double %6883, double %6875)
  %6885 = load ptr, ptr %7, align 8, !tbaa !9
  %6886 = load i32, ptr %12, align 4, !tbaa !5
  %6887 = load i32, ptr %8, align 4, !tbaa !5
  %6888 = mul nsw i32 13, %6887
  %6889 = add nsw i32 %6886, %6888
  %6890 = sext i32 %6889 to i64
  %6891 = getelementptr inbounds double, ptr %6885, i64 %6890
  %6892 = load double, ptr %6891, align 8, !tbaa !11
  %6893 = call double @llvm.fmuladd.f64(double 0x3CAB000000000001, double %6892, double %6884)
  %6894 = load ptr, ptr %7, align 8, !tbaa !9
  %6895 = load i32, ptr %12, align 4, !tbaa !5
  %6896 = load i32, ptr %8, align 4, !tbaa !5
  %6897 = mul nsw i32 14, %6896
  %6898 = add nsw i32 %6895, %6897
  %6899 = sext i32 %6898 to i64
  %6900 = getelementptr inbounds double, ptr %6894, i64 %6899
  %6901 = load double, ptr %6900, align 8, !tbaa !11
  %6902 = call double @llvm.fmuladd.f64(double 0xBCB9000000000000, double %6901, double %6893)
  %6903 = load ptr, ptr %7, align 8, !tbaa !9
  %6904 = load i32, ptr %12, align 4, !tbaa !5
  %6905 = load i32, ptr %8, align 4, !tbaa !5
  %6906 = mul nsw i32 15, %6905
  %6907 = add nsw i32 %6904, %6906
  %6908 = sext i32 %6907 to i64
  %6909 = getelementptr inbounds double, ptr %6903, i64 %6908
  %6910 = load double, ptr %6909, align 8, !tbaa !11
  %6911 = call double @llvm.fmuladd.f64(double 0xBCA2000000000000, double %6910, double %6902)
  %6912 = load ptr, ptr %7, align 8, !tbaa !9
  %6913 = load i32, ptr %12, align 4, !tbaa !5
  %6914 = load i32, ptr %8, align 4, !tbaa !5
  %6915 = mul nsw i32 16, %6914
  %6916 = add nsw i32 %6913, %6915
  %6917 = sext i32 %6916 to i64
  %6918 = getelementptr inbounds double, ptr %6912, i64 %6917
  %6919 = load double, ptr %6918, align 8, !tbaa !11
  %6920 = call double @llvm.fmuladd.f64(double 0x3CA7000000000002, double %6919, double %6911)
  %6921 = load ptr, ptr %7, align 8, !tbaa !9
  %6922 = load i32, ptr %12, align 4, !tbaa !5
  %6923 = load i32, ptr %8, align 4, !tbaa !5
  %6924 = mul nsw i32 17, %6923
  %6925 = add nsw i32 %6922, %6924
  %6926 = sext i32 %6925 to i64
  %6927 = getelementptr inbounds double, ptr %6921, i64 %6926
  %6928 = load double, ptr %6927, align 8, !tbaa !11
  %6929 = call double @llvm.fmuladd.f64(double 0xBCA5FFFFFFFFFFFF, double %6928, double %6920)
  %6930 = load ptr, ptr %7, align 8, !tbaa !9
  %6931 = load i32, ptr %12, align 4, !tbaa !5
  %6932 = load i32, ptr %8, align 4, !tbaa !5
  %6933 = mul nsw i32 18, %6932
  %6934 = add nsw i32 %6931, %6933
  %6935 = sext i32 %6934 to i64
  %6936 = getelementptr inbounds double, ptr %6930, i64 %6935
  %6937 = load double, ptr %6936, align 8, !tbaa !11
  %6938 = call double @llvm.fmuladd.f64(double 0xBCB5FFFFFFFFFFFF, double %6937, double %6929)
  %6939 = load ptr, ptr %7, align 8, !tbaa !9
  %6940 = load i32, ptr %12, align 4, !tbaa !5
  %6941 = load i32, ptr %8, align 4, !tbaa !5
  %6942 = mul nsw i32 19, %6941
  %6943 = add nsw i32 %6940, %6942
  %6944 = sext i32 %6943 to i64
  %6945 = getelementptr inbounds double, ptr %6939, i64 %6944
  %6946 = load double, ptr %6945, align 8, !tbaa !11
  %6947 = call double @llvm.fmuladd.f64(double 0x3FD9A613A5CEF63B, double %6946, double %6938)
  %6948 = load ptr, ptr %7, align 8, !tbaa !9
  %6949 = load i32, ptr %12, align 4, !tbaa !5
  %6950 = load i32, ptr %8, align 4, !tbaa !5
  %6951 = mul nsw i32 20, %6950
  %6952 = add nsw i32 %6949, %6951
  %6953 = sext i32 %6952 to i64
  %6954 = getelementptr inbounds double, ptr %6948, i64 %6953
  %6955 = load double, ptr %6954, align 8, !tbaa !11
  %6956 = call double @llvm.fmuladd.f64(double 0xBCCB000000000000, double %6955, double %6947)
  %6957 = load ptr, ptr %7, align 8, !tbaa !9
  %6958 = load i32, ptr %12, align 4, !tbaa !5
  %6959 = load i32, ptr %8, align 4, !tbaa !5
  %6960 = mul nsw i32 21, %6959
  %6961 = add nsw i32 %6958, %6960
  %6962 = sext i32 %6961 to i64
  %6963 = getelementptr inbounds double, ptr %6957, i64 %6962
  %6964 = load double, ptr %6963, align 8, !tbaa !11
  %6965 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %6964, double %6956)
  %6966 = load ptr, ptr %7, align 8, !tbaa !9
  %6967 = load i32, ptr %12, align 4, !tbaa !5
  %6968 = load i32, ptr %8, align 4, !tbaa !5
  %6969 = mul nsw i32 22, %6968
  %6970 = add nsw i32 %6967, %6969
  %6971 = sext i32 %6970 to i64
  %6972 = getelementptr inbounds double, ptr %6966, i64 %6971
  %6973 = load double, ptr %6972, align 8, !tbaa !11
  %6974 = call double @llvm.fmuladd.f64(double 0xBCA7000000000002, double %6973, double %6965)
  %6975 = load ptr, ptr %7, align 8, !tbaa !9
  %6976 = load i32, ptr %12, align 4, !tbaa !5
  %6977 = load i32, ptr %8, align 4, !tbaa !5
  %6978 = mul nsw i32 23, %6977
  %6979 = add nsw i32 %6976, %6978
  %6980 = sext i32 %6979 to i64
  %6981 = getelementptr inbounds double, ptr %6975, i64 %6980
  %6982 = load double, ptr %6981, align 8, !tbaa !11
  %6983 = call double @llvm.fmuladd.f64(double 0x3C89FFFFFFFFFFFF, double %6982, double %6974)
  %6984 = load ptr, ptr %7, align 8, !tbaa !9
  %6985 = load i32, ptr %12, align 4, !tbaa !5
  %6986 = load i32, ptr %8, align 4, !tbaa !5
  %6987 = mul nsw i32 24, %6986
  %6988 = add nsw i32 %6985, %6987
  %6989 = sext i32 %6988 to i64
  %6990 = getelementptr inbounds double, ptr %6984, i64 %6989
  %6991 = load double, ptr %6990, align 8, !tbaa !11
  %6992 = call double @llvm.fmuladd.f64(double 0x3CA2000000000000, double %6991, double %6983)
  %6993 = load ptr, ptr %7, align 8, !tbaa !9
  %6994 = load i32, ptr %12, align 4, !tbaa !5
  %6995 = load i32, ptr %8, align 4, !tbaa !5
  %6996 = mul nsw i32 25, %6995
  %6997 = add nsw i32 %6994, %6996
  %6998 = sext i32 %6997 to i64
  %6999 = getelementptr inbounds double, ptr %6993, i64 %6998
  %7000 = load double, ptr %6999, align 8, !tbaa !11
  %7001 = call double @llvm.fmuladd.f64(double 0x3CB0000000000000, double %7000, double %6992)
  %7002 = load ptr, ptr %7, align 8, !tbaa !9
  %7003 = load i32, ptr %12, align 4, !tbaa !5
  %7004 = load i32, ptr %8, align 4, !tbaa !5
  %7005 = mul nsw i32 26, %7004
  %7006 = add nsw i32 %7003, %7005
  %7007 = sext i32 %7006 to i64
  %7008 = getelementptr inbounds double, ptr %7002, i64 %7007
  %7009 = load double, ptr %7008, align 8, !tbaa !11
  %7010 = call double @llvm.fmuladd.f64(double 0xBC84000000000000, double %7009, double %7001)
  %7011 = load ptr, ptr %7, align 8, !tbaa !9
  %7012 = load i32, ptr %12, align 4, !tbaa !5
  %7013 = load i32, ptr %8, align 4, !tbaa !5
  %7014 = mul nsw i32 27, %7013
  %7015 = add nsw i32 %7012, %7014
  %7016 = sext i32 %7015 to i64
  %7017 = getelementptr inbounds double, ptr %7011, i64 %7016
  %7018 = load double, ptr %7017, align 8, !tbaa !11
  %7019 = call double @llvm.fmuladd.f64(double 0x3CB27FFFFFFFFFFF, double %7018, double %7010)
  %7020 = load ptr, ptr %7, align 8, !tbaa !9
  %7021 = load i32, ptr %12, align 4, !tbaa !5
  %7022 = load i32, ptr %8, align 4, !tbaa !5
  %7023 = mul nsw i32 28, %7022
  %7024 = add nsw i32 %7021, %7023
  %7025 = sext i32 %7024 to i64
  %7026 = getelementptr inbounds double, ptr %7020, i64 %7025
  %7027 = load double, ptr %7026, align 8, !tbaa !11
  %7028 = call double @llvm.fmuladd.f64(double 0x3CA4000000000001, double %7027, double %7019)
  %7029 = load ptr, ptr %7, align 8, !tbaa !9
  %7030 = load i32, ptr %12, align 4, !tbaa !5
  %7031 = load i32, ptr %8, align 4, !tbaa !5
  %7032 = mul nsw i32 29, %7031
  %7033 = add nsw i32 %7030, %7032
  %7034 = sext i32 %7033 to i64
  %7035 = getelementptr inbounds double, ptr %7029, i64 %7034
  %7036 = load double, ptr %7035, align 8, !tbaa !11
  %7037 = call double @llvm.fmuladd.f64(double 0xBFEA0946EB3057DB, double %7036, double %7028)
  %7038 = load ptr, ptr %7, align 8, !tbaa !9
  %7039 = load i32, ptr %12, align 4, !tbaa !5
  %7040 = load i32, ptr %8, align 4, !tbaa !5
  %7041 = mul nsw i32 30, %7040
  %7042 = add nsw i32 %7039, %7041
  %7043 = sext i32 %7042 to i64
  %7044 = getelementptr inbounds double, ptr %7038, i64 %7043
  %7045 = load double, ptr %7044, align 8, !tbaa !11
  %7046 = call double @llvm.fmuladd.f64(double 0xBCA8000000000001, double %7045, double %7037)
  %7047 = load ptr, ptr %7, align 8, !tbaa !9
  %7048 = load i32, ptr %12, align 4, !tbaa !5
  %7049 = load i32, ptr %8, align 4, !tbaa !5
  %7050 = mul nsw i32 31, %7049
  %7051 = add nsw i32 %7048, %7050
  %7052 = sext i32 %7051 to i64
  %7053 = getelementptr inbounds double, ptr %7047, i64 %7052
  %7054 = load double, ptr %7053, align 8, !tbaa !11
  %7055 = call double @llvm.fmuladd.f64(double 0xBCAE000000000002, double %7054, double %7046)
  %7056 = load ptr, ptr %7, align 8, !tbaa !9
  %7057 = load i32, ptr %12, align 4, !tbaa !5
  %7058 = load i32, ptr %8, align 4, !tbaa !5
  %7059 = mul nsw i32 32, %7058
  %7060 = add nsw i32 %7057, %7059
  %7061 = sext i32 %7060 to i64
  %7062 = getelementptr inbounds double, ptr %7056, i64 %7061
  %7063 = load double, ptr %7062, align 8, !tbaa !11
  %7064 = call double @llvm.fmuladd.f64(double 0x3C50000000000000, double %7063, double %7055)
  %7065 = load ptr, ptr %7, align 8, !tbaa !9
  %7066 = load i32, ptr %12, align 4, !tbaa !5
  %7067 = load i32, ptr %8, align 4, !tbaa !5
  %7068 = mul nsw i32 33, %7067
  %7069 = add nsw i32 %7066, %7068
  %7070 = sext i32 %7069 to i64
  %7071 = getelementptr inbounds double, ptr %7065, i64 %7070
  %7072 = load double, ptr %7071, align 8, !tbaa !11
  %7073 = call double @llvm.fmuladd.f64(double 0xBC96800000000000, double %7072, double %7064)
  %7074 = load ptr, ptr %7, align 8, !tbaa !9
  %7075 = load i32, ptr %12, align 4, !tbaa !5
  %7076 = load i32, ptr %8, align 4, !tbaa !5
  %7077 = mul nsw i32 34, %7076
  %7078 = add nsw i32 %7075, %7077
  %7079 = sext i32 %7078 to i64
  %7080 = getelementptr inbounds double, ptr %7074, i64 %7079
  %7081 = load double, ptr %7080, align 8, !tbaa !11
  %7082 = call double @llvm.fmuladd.f64(double 0xBC78000000000002, double %7081, double %7073)
  %7083 = load ptr, ptr %7, align 8, !tbaa !9
  %7084 = load i32, ptr %12, align 4, !tbaa !5
  %7085 = load i32, ptr %8, align 4, !tbaa !5
  %7086 = mul nsw i32 35, %7085
  %7087 = add nsw i32 %7084, %7086
  %7088 = sext i32 %7087 to i64
  %7089 = getelementptr inbounds double, ptr %7083, i64 %7088
  %7090 = load double, ptr %7089, align 8, !tbaa !11
  %7091 = call double @llvm.fmuladd.f64(double 0x3CA2FFFFFFFFFFFE, double %7090, double %7082)
  %7092 = load ptr, ptr %7, align 8, !tbaa !9
  %7093 = load i32, ptr %12, align 4, !tbaa !5
  %7094 = load i32, ptr %8, align 4, !tbaa !5
  %7095 = mul nsw i32 36, %7094
  %7096 = add nsw i32 %7093, %7095
  %7097 = sext i32 %7096 to i64
  %7098 = getelementptr inbounds double, ptr %7092, i64 %7097
  %7099 = load double, ptr %7098, align 8, !tbaa !11
  %7100 = call double @llvm.fmuladd.f64(double 0x3C9A000000000000, double %7099, double %7091)
  %7101 = load ptr, ptr %7, align 8, !tbaa !9
  %7102 = load i32, ptr %12, align 4, !tbaa !5
  %7103 = load i32, ptr %8, align 4, !tbaa !5
  %7104 = mul nsw i32 37, %7103
  %7105 = add nsw i32 %7102, %7104
  %7106 = sext i32 %7105 to i64
  %7107 = getelementptr inbounds double, ptr %7101, i64 %7106
  %7108 = load double, ptr %7107, align 8, !tbaa !11
  %7109 = call double @llvm.fmuladd.f64(double 0x3CA3800000000002, double %7108, double %7100)
  %7110 = load ptr, ptr %7, align 8, !tbaa !9
  %7111 = load i32, ptr %12, align 4, !tbaa !5
  %7112 = load i32, ptr %8, align 4, !tbaa !5
  %7113 = mul nsw i32 38, %7112
  %7114 = add nsw i32 %7111, %7113
  %7115 = sext i32 %7114 to i64
  %7116 = getelementptr inbounds double, ptr %7110, i64 %7115
  %7117 = load double, ptr %7116, align 8, !tbaa !11
  %7118 = call double @llvm.fmuladd.f64(double 0x3CBCFFFFFFFFFFFF, double %7117, double %7109)
  %7119 = load ptr, ptr %7, align 8, !tbaa !9
  %7120 = load i32, ptr %12, align 4, !tbaa !5
  %7121 = load i32, ptr %8, align 4, !tbaa !5
  %7122 = mul nsw i32 39, %7121
  %7123 = add nsw i32 %7120, %7122
  %7124 = sext i32 %7123 to i64
  %7125 = getelementptr inbounds double, ptr %7119, i64 %7124
  %7126 = load double, ptr %7125, align 8, !tbaa !11
  %7127 = call double @llvm.fmuladd.f64(double 0x3FF86DB962AC2966, double %7126, double %7118)
  store double %7127, ptr %11, align 8, !tbaa !11
  %7128 = load double, ptr %11, align 8, !tbaa !11
  %7129 = load ptr, ptr %9, align 8, !tbaa !9
  %7130 = load i32, ptr %12, align 4, !tbaa !5
  %7131 = load i32, ptr %10, align 4, !tbaa !5
  %7132 = mul nsw i32 19, %7131
  %7133 = add nsw i32 %7130, %7132
  %7134 = sext i32 %7133 to i64
  %7135 = getelementptr inbounds double, ptr %7129, i64 %7134
  store double %7128, ptr %7135, align 8, !tbaa !11
  %7136 = load ptr, ptr %7, align 8, !tbaa !9
  %7137 = load i32, ptr %12, align 4, !tbaa !5
  %7138 = load i32, ptr %8, align 4, !tbaa !5
  %7139 = mul nsw i32 0, %7138
  %7140 = add nsw i32 %7137, %7139
  %7141 = sext i32 %7140 to i64
  %7142 = getelementptr inbounds double, ptr %7136, i64 %7141
  %7143 = load double, ptr %7142, align 8, !tbaa !11
  %7144 = load ptr, ptr %7, align 8, !tbaa !9
  %7145 = load i32, ptr %12, align 4, !tbaa !5
  %7146 = load i32, ptr %8, align 4, !tbaa !5
  %7147 = mul nsw i32 1, %7146
  %7148 = add nsw i32 %7145, %7147
  %7149 = sext i32 %7148 to i64
  %7150 = getelementptr inbounds double, ptr %7144, i64 %7149
  %7151 = load double, ptr %7150, align 8, !tbaa !11
  %7152 = fmul double 0xBFB5B58B4F03B1A2, %7151
  %7153 = call double @llvm.fmuladd.f64(double 0xBF83152016E0ECA0, double %7143, double %7152)
  %7154 = load ptr, ptr %7, align 8, !tbaa !9
  %7155 = load i32, ptr %12, align 4, !tbaa !5
  %7156 = load i32, ptr %8, align 4, !tbaa !5
  %7157 = mul nsw i32 2, %7156
  %7158 = add nsw i32 %7155, %7157
  %7159 = sext i32 %7158 to i64
  %7160 = getelementptr inbounds double, ptr %7154, i64 %7159
  %7161 = load double, ptr %7160, align 8, !tbaa !11
  %7162 = call double @llvm.fmuladd.f64(double 0x3F938CE4890DB307, double %7161, double %7153)
  %7163 = load ptr, ptr %7, align 8, !tbaa !9
  %7164 = load i32, ptr %12, align 4, !tbaa !5
  %7165 = load i32, ptr %8, align 4, !tbaa !5
  %7166 = mul nsw i32 3, %7165
  %7167 = add nsw i32 %7164, %7166
  %7168 = sext i32 %7167 to i64
  %7169 = getelementptr inbounds double, ptr %7163, i64 %7168
  %7170 = load double, ptr %7169, align 8, !tbaa !11
  %7171 = call double @llvm.fmuladd.f64(double 0x3FF4EC1BB3FDC612, double %7170, double %7162)
  %7172 = load ptr, ptr %7, align 8, !tbaa !9
  %7173 = load i32, ptr %12, align 4, !tbaa !5
  %7174 = load i32, ptr %8, align 4, !tbaa !5
  %7175 = mul nsw i32 4, %7174
  %7176 = add nsw i32 %7173, %7175
  %7177 = sext i32 %7176 to i64
  %7178 = getelementptr inbounds double, ptr %7172, i64 %7177
  %7179 = load double, ptr %7178, align 8, !tbaa !11
  %7180 = call double @llvm.fmuladd.f64(double 0x3F85E50BB681A41A, double %7179, double %7171)
  %7181 = load ptr, ptr %7, align 8, !tbaa !9
  %7182 = load i32, ptr %12, align 4, !tbaa !5
  %7183 = load i32, ptr %8, align 4, !tbaa !5
  %7184 = mul nsw i32 5, %7183
  %7185 = add nsw i32 %7182, %7184
  %7186 = sext i32 %7185 to i64
  %7187 = getelementptr inbounds double, ptr %7181, i64 %7186
  %7188 = load double, ptr %7187, align 8, !tbaa !11
  %7189 = call double @llvm.fmuladd.f64(double 0xBFE5679E70A60657, double %7188, double %7180)
  %7190 = load ptr, ptr %7, align 8, !tbaa !9
  %7191 = load i32, ptr %12, align 4, !tbaa !5
  %7192 = load i32, ptr %8, align 4, !tbaa !5
  %7193 = mul nsw i32 6, %7192
  %7194 = add nsw i32 %7191, %7193
  %7195 = sext i32 %7194 to i64
  %7196 = getelementptr inbounds double, ptr %7190, i64 %7195
  %7197 = load double, ptr %7196, align 8, !tbaa !11
  %7198 = call double @llvm.fmuladd.f64(double 0x3FCA50C41AB7A334, double %7197, double %7189)
  %7199 = load ptr, ptr %7, align 8, !tbaa !9
  %7200 = load i32, ptr %12, align 4, !tbaa !5
  %7201 = load i32, ptr %8, align 4, !tbaa !5
  %7202 = mul nsw i32 7, %7201
  %7203 = add nsw i32 %7200, %7202
  %7204 = sext i32 %7203 to i64
  %7205 = getelementptr inbounds double, ptr %7199, i64 %7204
  %7206 = load double, ptr %7205, align 8, !tbaa !11
  %7207 = call double @llvm.fmuladd.f64(double 0xBFB49217631F5953, double %7206, double %7198)
  %7208 = load ptr, ptr %7, align 8, !tbaa !9
  %7209 = load i32, ptr %12, align 4, !tbaa !5
  %7210 = load i32, ptr %8, align 4, !tbaa !5
  %7211 = mul nsw i32 8, %7210
  %7212 = add nsw i32 %7209, %7211
  %7213 = sext i32 %7212 to i64
  %7214 = getelementptr inbounds double, ptr %7208, i64 %7213
  %7215 = load double, ptr %7214, align 8, !tbaa !11
  %7216 = call double @llvm.fmuladd.f64(double 0x3FD417DEBFC17B18, double %7215, double %7207)
  %7217 = load ptr, ptr %7, align 8, !tbaa !9
  %7218 = load i32, ptr %12, align 4, !tbaa !5
  %7219 = load i32, ptr %8, align 4, !tbaa !5
  %7220 = mul nsw i32 9, %7219
  %7221 = add nsw i32 %7218, %7220
  %7222 = sext i32 %7221 to i64
  %7223 = getelementptr inbounds double, ptr %7217, i64 %7222
  %7224 = load double, ptr %7223, align 8, !tbaa !11
  %7225 = call double @llvm.fmuladd.f64(double 0xBF8BDAF699AECF20, double %7224, double %7216)
  %7226 = load ptr, ptr %7, align 8, !tbaa !9
  %7227 = load i32, ptr %12, align 4, !tbaa !5
  %7228 = load i32, ptr %8, align 4, !tbaa !5
  %7229 = mul nsw i32 10, %7228
  %7230 = add nsw i32 %7227, %7229
  %7231 = sext i32 %7230 to i64
  %7232 = getelementptr inbounds double, ptr %7226, i64 %7231
  %7233 = load double, ptr %7232, align 8, !tbaa !11
  %7234 = call double @llvm.fmuladd.f64(double 0x3CA4000000000001, double %7233, double %7225)
  %7235 = load ptr, ptr %7, align 8, !tbaa !9
  %7236 = load i32, ptr %12, align 4, !tbaa !5
  %7237 = load i32, ptr %8, align 4, !tbaa !5
  %7238 = mul nsw i32 11, %7237
  %7239 = add nsw i32 %7236, %7238
  %7240 = sext i32 %7239 to i64
  %7241 = getelementptr inbounds double, ptr %7235, i64 %7240
  %7242 = load double, ptr %7241, align 8, !tbaa !11
  %7243 = call double @llvm.fmuladd.f64(double 0x3C88000000000000, double %7242, double %7234)
  %7244 = load ptr, ptr %7, align 8, !tbaa !9
  %7245 = load i32, ptr %12, align 4, !tbaa !5
  %7246 = load i32, ptr %8, align 4, !tbaa !5
  %7247 = mul nsw i32 12, %7246
  %7248 = add nsw i32 %7245, %7247
  %7249 = sext i32 %7248 to i64
  %7250 = getelementptr inbounds double, ptr %7244, i64 %7249
  %7251 = load double, ptr %7250, align 8, !tbaa !11
  %7252 = call double @llvm.fmuladd.f64(double 0xBC74000000000000, double %7251, double %7243)
  %7253 = load ptr, ptr %7, align 8, !tbaa !9
  %7254 = load i32, ptr %12, align 4, !tbaa !5
  %7255 = load i32, ptr %8, align 4, !tbaa !5
  %7256 = mul nsw i32 13, %7255
  %7257 = add nsw i32 %7254, %7256
  %7258 = sext i32 %7257 to i64
  %7259 = getelementptr inbounds double, ptr %7253, i64 %7258
  %7260 = load double, ptr %7259, align 8, !tbaa !11
  %7261 = call double @llvm.fmuladd.f64(double 0x3CB4E00000000000, double %7260, double %7252)
  %7262 = load ptr, ptr %7, align 8, !tbaa !9
  %7263 = load i32, ptr %12, align 4, !tbaa !5
  %7264 = load i32, ptr %8, align 4, !tbaa !5
  %7265 = mul nsw i32 14, %7264
  %7266 = add nsw i32 %7263, %7265
  %7267 = sext i32 %7266 to i64
  %7268 = getelementptr inbounds double, ptr %7262, i64 %7267
  %7269 = load double, ptr %7268, align 8, !tbaa !11
  %7270 = call double @llvm.fmuladd.f64(double 0x3C70000000000001, double %7269, double %7261)
  %7271 = load ptr, ptr %7, align 8, !tbaa !9
  %7272 = load i32, ptr %12, align 4, !tbaa !5
  %7273 = load i32, ptr %8, align 4, !tbaa !5
  %7274 = mul nsw i32 15, %7273
  %7275 = add nsw i32 %7272, %7274
  %7276 = sext i32 %7275 to i64
  %7277 = getelementptr inbounds double, ptr %7271, i64 %7276
  %7278 = load double, ptr %7277, align 8, !tbaa !11
  %7279 = call double @llvm.fmuladd.f64(double 0xBCAB000000000001, double %7278, double %7270)
  %7280 = load ptr, ptr %7, align 8, !tbaa !9
  %7281 = load i32, ptr %12, align 4, !tbaa !5
  %7282 = load i32, ptr %8, align 4, !tbaa !5
  %7283 = mul nsw i32 16, %7282
  %7284 = add nsw i32 %7281, %7283
  %7285 = sext i32 %7284 to i64
  %7286 = getelementptr inbounds double, ptr %7280, i64 %7285
  %7287 = load double, ptr %7286, align 8, !tbaa !11
  %7288 = call double @llvm.fmuladd.f64(double 0xBC91000000000000, double %7287, double %7279)
  %7289 = load ptr, ptr %7, align 8, !tbaa !9
  %7290 = load i32, ptr %12, align 4, !tbaa !5
  %7291 = load i32, ptr %8, align 4, !tbaa !5
  %7292 = mul nsw i32 17, %7291
  %7293 = add nsw i32 %7290, %7292
  %7294 = sext i32 %7293 to i64
  %7295 = getelementptr inbounds double, ptr %7289, i64 %7294
  %7296 = load double, ptr %7295, align 8, !tbaa !11
  %7297 = call double @llvm.fmuladd.f64(double 0xBC86000000000001, double %7296, double %7288)
  %7298 = load ptr, ptr %7, align 8, !tbaa !9
  %7299 = load i32, ptr %12, align 4, !tbaa !5
  %7300 = load i32, ptr %8, align 4, !tbaa !5
  %7301 = mul nsw i32 19, %7300
  %7302 = add nsw i32 %7299, %7301
  %7303 = sext i32 %7302 to i64
  %7304 = getelementptr inbounds double, ptr %7298, i64 %7303
  %7305 = load double, ptr %7304, align 8, !tbaa !11
  %7306 = call double @llvm.fmuladd.f64(double 0x3C94000000000000, double %7305, double %7297)
  %7307 = load ptr, ptr %7, align 8, !tbaa !9
  %7308 = load i32, ptr %12, align 4, !tbaa !5
  %7309 = load i32, ptr %8, align 4, !tbaa !5
  %7310 = mul nsw i32 20, %7309
  %7311 = add nsw i32 %7308, %7310
  %7312 = sext i32 %7311 to i64
  %7313 = getelementptr inbounds double, ptr %7307, i64 %7312
  %7314 = load double, ptr %7313, align 8, !tbaa !11
  %7315 = call double @llvm.fmuladd.f64(double 0xBCA0000000000002, double %7314, double %7306)
  %7316 = load ptr, ptr %7, align 8, !tbaa !9
  %7317 = load i32, ptr %12, align 4, !tbaa !5
  %7318 = load i32, ptr %8, align 4, !tbaa !5
  %7319 = mul nsw i32 22, %7318
  %7320 = add nsw i32 %7317, %7319
  %7321 = sext i32 %7320 to i64
  %7322 = getelementptr inbounds double, ptr %7316, i64 %7321
  %7323 = load double, ptr %7322, align 8, !tbaa !11
  %7324 = call double @llvm.fmuladd.f64(double 0x3C8C000000000000, double %7323, double %7315)
  %7325 = load ptr, ptr %7, align 8, !tbaa !9
  %7326 = load i32, ptr %12, align 4, !tbaa !5
  %7327 = load i32, ptr %8, align 4, !tbaa !5
  %7328 = mul nsw i32 23, %7327
  %7329 = add nsw i32 %7326, %7328
  %7330 = sext i32 %7329 to i64
  %7331 = getelementptr inbounds double, ptr %7325, i64 %7330
  %7332 = load double, ptr %7331, align 8, !tbaa !11
  %7333 = call double @llvm.fmuladd.f64(double 0xBC74000000000000, double %7332, double %7324)
  %7334 = load ptr, ptr %7, align 8, !tbaa !9
  %7335 = load i32, ptr %12, align 4, !tbaa !5
  %7336 = load i32, ptr %8, align 4, !tbaa !5
  %7337 = mul nsw i32 24, %7336
  %7338 = add nsw i32 %7335, %7337
  %7339 = sext i32 %7338 to i64
  %7340 = getelementptr inbounds double, ptr %7334, i64 %7339
  %7341 = load double, ptr %7340, align 8, !tbaa !11
  %7342 = call double @llvm.fmuladd.f64(double 0xBC70000000000001, double %7341, double %7333)
  %7343 = load ptr, ptr %7, align 8, !tbaa !9
  %7344 = load i32, ptr %12, align 4, !tbaa !5
  %7345 = load i32, ptr %8, align 4, !tbaa !5
  %7346 = mul nsw i32 25, %7345
  %7347 = add nsw i32 %7344, %7346
  %7348 = sext i32 %7347 to i64
  %7349 = getelementptr inbounds double, ptr %7343, i64 %7348
  %7350 = load double, ptr %7349, align 8, !tbaa !11
  %7351 = call double @llvm.fmuladd.f64(double 0xBCB07FFFFFFFFFFF, double %7350, double %7342)
  %7352 = load ptr, ptr %7, align 8, !tbaa !9
  %7353 = load i32, ptr %12, align 4, !tbaa !5
  %7354 = load i32, ptr %8, align 4, !tbaa !5
  %7355 = mul nsw i32 26, %7354
  %7356 = add nsw i32 %7353, %7355
  %7357 = sext i32 %7356 to i64
  %7358 = getelementptr inbounds double, ptr %7352, i64 %7357
  %7359 = load double, ptr %7358, align 8, !tbaa !11
  %7360 = call double @llvm.fmuladd.f64(double 0x3CA0800000000001, double %7359, double %7351)
  %7361 = load ptr, ptr %7, align 8, !tbaa !9
  %7362 = load i32, ptr %12, align 4, !tbaa !5
  %7363 = load i32, ptr %8, align 4, !tbaa !5
  %7364 = mul nsw i32 27, %7363
  %7365 = add nsw i32 %7362, %7364
  %7366 = sext i32 %7365 to i64
  %7367 = getelementptr inbounds double, ptr %7361, i64 %7366
  %7368 = load double, ptr %7367, align 8, !tbaa !11
  %7369 = call double @llvm.fmuladd.f64(double 0xBC82000000000000, double %7368, double %7360)
  %7370 = load ptr, ptr %7, align 8, !tbaa !9
  %7371 = load i32, ptr %12, align 4, !tbaa !5
  %7372 = load i32, ptr %8, align 4, !tbaa !5
  %7373 = mul nsw i32 28, %7372
  %7374 = add nsw i32 %7371, %7373
  %7375 = sext i32 %7374 to i64
  %7376 = getelementptr inbounds double, ptr %7370, i64 %7375
  %7377 = load double, ptr %7376, align 8, !tbaa !11
  %7378 = call double @llvm.fmuladd.f64(double 0x3CA5FFFFFFFFFFFF, double %7377, double %7369)
  %7379 = load ptr, ptr %7, align 8, !tbaa !9
  %7380 = load i32, ptr %12, align 4, !tbaa !5
  %7381 = load i32, ptr %8, align 4, !tbaa !5
  %7382 = mul nsw i32 29, %7381
  %7383 = add nsw i32 %7380, %7382
  %7384 = sext i32 %7383 to i64
  %7385 = getelementptr inbounds double, ptr %7379, i64 %7384
  %7386 = load double, ptr %7385, align 8, !tbaa !11
  %7387 = call double @llvm.fmuladd.f64(double 0xBC9C000000000000, double %7386, double %7378)
  %7388 = load ptr, ptr %7, align 8, !tbaa !9
  %7389 = load i32, ptr %12, align 4, !tbaa !5
  %7390 = load i32, ptr %8, align 4, !tbaa !5
  %7391 = mul nsw i32 30, %7390
  %7392 = add nsw i32 %7389, %7391
  %7393 = sext i32 %7392 to i64
  %7394 = getelementptr inbounds double, ptr %7388, i64 %7393
  %7395 = load double, ptr %7394, align 8, !tbaa !11
  %7396 = call double @llvm.fmuladd.f64(double 0x3C82000000000000, double %7395, double %7387)
  %7397 = load ptr, ptr %7, align 8, !tbaa !9
  %7398 = load i32, ptr %12, align 4, !tbaa !5
  %7399 = load i32, ptr %8, align 4, !tbaa !5
  %7400 = mul nsw i32 31, %7399
  %7401 = add nsw i32 %7398, %7400
  %7402 = sext i32 %7401 to i64
  %7403 = getelementptr inbounds double, ptr %7397, i64 %7402
  %7404 = load double, ptr %7403, align 8, !tbaa !11
  %7405 = call double @llvm.fmuladd.f64(double 0x3C74000000000000, double %7404, double %7396)
  %7406 = load ptr, ptr %7, align 8, !tbaa !9
  %7407 = load i32, ptr %12, align 4, !tbaa !5
  %7408 = load i32, ptr %8, align 4, !tbaa !5
  %7409 = mul nsw i32 32, %7408
  %7410 = add nsw i32 %7407, %7409
  %7411 = sext i32 %7410 to i64
  %7412 = getelementptr inbounds double, ptr %7406, i64 %7411
  %7413 = load double, ptr %7412, align 8, !tbaa !11
  %7414 = call double @llvm.fmuladd.f64(double 0xBC6C000000000000, double %7413, double %7405)
  %7415 = load ptr, ptr %7, align 8, !tbaa !9
  %7416 = load i32, ptr %12, align 4, !tbaa !5
  %7417 = load i32, ptr %8, align 4, !tbaa !5
  %7418 = mul nsw i32 33, %7417
  %7419 = add nsw i32 %7416, %7418
  %7420 = sext i32 %7419 to i64
  %7421 = getelementptr inbounds double, ptr %7415, i64 %7420
  %7422 = load double, ptr %7421, align 8, !tbaa !11
  %7423 = call double @llvm.fmuladd.f64(double 0x3C96C00000000000, double %7422, double %7414)
  %7424 = load ptr, ptr %7, align 8, !tbaa !9
  %7425 = load i32, ptr %12, align 4, !tbaa !5
  %7426 = load i32, ptr %8, align 4, !tbaa !5
  %7427 = mul nsw i32 34, %7426
  %7428 = add nsw i32 %7425, %7427
  %7429 = sext i32 %7428 to i64
  %7430 = getelementptr inbounds double, ptr %7424, i64 %7429
  %7431 = load double, ptr %7430, align 8, !tbaa !11
  %7432 = call double @llvm.fmuladd.f64(double 0xBC99000000000000, double %7431, double %7423)
  %7433 = load ptr, ptr %7, align 8, !tbaa !9
  %7434 = load i32, ptr %12, align 4, !tbaa !5
  %7435 = load i32, ptr %8, align 4, !tbaa !5
  %7436 = mul nsw i32 35, %7435
  %7437 = add nsw i32 %7434, %7436
  %7438 = sext i32 %7437 to i64
  %7439 = getelementptr inbounds double, ptr %7433, i64 %7438
  %7440 = load double, ptr %7439, align 8, !tbaa !11
  %7441 = call double @llvm.fmuladd.f64(double 0xBC89FFFFFFFFFFFF, double %7440, double %7432)
  %7442 = load ptr, ptr %7, align 8, !tbaa !9
  %7443 = load i32, ptr %12, align 4, !tbaa !5
  %7444 = load i32, ptr %8, align 4, !tbaa !5
  %7445 = mul nsw i32 36, %7444
  %7446 = add nsw i32 %7443, %7445
  %7447 = sext i32 %7446 to i64
  %7448 = getelementptr inbounds double, ptr %7442, i64 %7447
  %7449 = load double, ptr %7448, align 8, !tbaa !11
  %7450 = call double @llvm.fmuladd.f64(double 0xBC8B000000000000, double %7449, double %7441)
  %7451 = load ptr, ptr %7, align 8, !tbaa !9
  %7452 = load i32, ptr %12, align 4, !tbaa !5
  %7453 = load i32, ptr %8, align 4, !tbaa !5
  %7454 = mul nsw i32 37, %7453
  %7455 = add nsw i32 %7452, %7454
  %7456 = sext i32 %7455 to i64
  %7457 = getelementptr inbounds double, ptr %7451, i64 %7456
  %7458 = load double, ptr %7457, align 8, !tbaa !11
  %7459 = call double @llvm.fmuladd.f64(double 0x3C85000000000000, double %7458, double %7450)
  %7460 = load ptr, ptr %7, align 8, !tbaa !9
  %7461 = load i32, ptr %12, align 4, !tbaa !5
  %7462 = load i32, ptr %8, align 4, !tbaa !5
  %7463 = mul nsw i32 38, %7462
  %7464 = add nsw i32 %7461, %7463
  %7465 = sext i32 %7464 to i64
  %7466 = getelementptr inbounds double, ptr %7460, i64 %7465
  %7467 = load double, ptr %7466, align 8, !tbaa !11
  %7468 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %7467, double %7459)
  %7469 = load ptr, ptr %7, align 8, !tbaa !9
  %7470 = load i32, ptr %12, align 4, !tbaa !5
  %7471 = load i32, ptr %8, align 4, !tbaa !5
  %7472 = mul nsw i32 39, %7471
  %7473 = add nsw i32 %7470, %7472
  %7474 = sext i32 %7473 to i64
  %7475 = getelementptr inbounds double, ptr %7469, i64 %7474
  %7476 = load double, ptr %7475, align 8, !tbaa !11
  %7477 = call double @llvm.fmuladd.f64(double 0xBC92000000000000, double %7476, double %7468)
  store double %7477, ptr %11, align 8, !tbaa !11
  %7478 = load double, ptr %11, align 8, !tbaa !11
  %7479 = load ptr, ptr %9, align 8, !tbaa !9
  %7480 = load i32, ptr %12, align 4, !tbaa !5
  %7481 = load i32, ptr %10, align 4, !tbaa !5
  %7482 = mul nsw i32 20, %7481
  %7483 = add nsw i32 %7480, %7482
  %7484 = sext i32 %7483 to i64
  %7485 = getelementptr inbounds double, ptr %7479, i64 %7484
  store double %7478, ptr %7485, align 8, !tbaa !11
  %7486 = load ptr, ptr %7, align 8, !tbaa !9
  %7487 = load i32, ptr %12, align 4, !tbaa !5
  %7488 = load i32, ptr %8, align 4, !tbaa !5
  %7489 = mul nsw i32 0, %7488
  %7490 = add nsw i32 %7487, %7489
  %7491 = sext i32 %7490 to i64
  %7492 = getelementptr inbounds double, ptr %7486, i64 %7491
  %7493 = load double, ptr %7492, align 8, !tbaa !11
  %7494 = load ptr, ptr %7, align 8, !tbaa !9
  %7495 = load i32, ptr %12, align 4, !tbaa !5
  %7496 = load i32, ptr %8, align 4, !tbaa !5
  %7497 = mul nsw i32 1, %7496
  %7498 = add nsw i32 %7495, %7497
  %7499 = sext i32 %7498 to i64
  %7500 = getelementptr inbounds double, ptr %7494, i64 %7499
  %7501 = load double, ptr %7500, align 8, !tbaa !11
  %7502 = fmul double 0xBFBEED13A9F0D8FA, %7501
  %7503 = call double @llvm.fmuladd.f64(double 0xBFE333710B32A29B, double %7493, double %7502)
  %7504 = load ptr, ptr %7, align 8, !tbaa !9
  %7505 = load i32, ptr %12, align 4, !tbaa !5
  %7506 = load i32, ptr %8, align 4, !tbaa !5
  %7507 = mul nsw i32 2, %7506
  %7508 = add nsw i32 %7505, %7507
  %7509 = sext i32 %7508 to i64
  %7510 = getelementptr inbounds double, ptr %7504, i64 %7509
  %7511 = load double, ptr %7510, align 8, !tbaa !11
  %7512 = call double @llvm.fmuladd.f64(double 0xBFA352D4DB969C1C, double %7511, double %7503)
  %7513 = load ptr, ptr %7, align 8, !tbaa !9
  %7514 = load i32, ptr %12, align 4, !tbaa !5
  %7515 = load i32, ptr %8, align 4, !tbaa !5
  %7516 = mul nsw i32 3, %7515
  %7517 = add nsw i32 %7514, %7516
  %7518 = sext i32 %7517 to i64
  %7519 = getelementptr inbounds double, ptr %7513, i64 %7518
  %7520 = load double, ptr %7519, align 8, !tbaa !11
  %7521 = call double @llvm.fmuladd.f64(double 0x3FA87D764354853D, double %7520, double %7512)
  %7522 = load ptr, ptr %7, align 8, !tbaa !9
  %7523 = load i32, ptr %12, align 4, !tbaa !5
  %7524 = load i32, ptr %8, align 4, !tbaa !5
  %7525 = mul nsw i32 4, %7524
  %7526 = add nsw i32 %7523, %7525
  %7527 = sext i32 %7526 to i64
  %7528 = getelementptr inbounds double, ptr %7522, i64 %7527
  %7529 = load double, ptr %7528, align 8, !tbaa !11
  %7530 = call double @llvm.fmuladd.f64(double 0x3F9854E0ADA34BB8, double %7529, double %7521)
  %7531 = load ptr, ptr %7, align 8, !tbaa !9
  %7532 = load i32, ptr %12, align 4, !tbaa !5
  %7533 = load i32, ptr %8, align 4, !tbaa !5
  %7534 = mul nsw i32 5, %7533
  %7535 = add nsw i32 %7532, %7534
  %7536 = sext i32 %7535 to i64
  %7537 = getelementptr inbounds double, ptr %7531, i64 %7536
  %7538 = load double, ptr %7537, align 8, !tbaa !11
  %7539 = call double @llvm.fmuladd.f64(double 0xBFD41C0D131D4295, double %7538, double %7530)
  %7540 = load ptr, ptr %7, align 8, !tbaa !9
  %7541 = load i32, ptr %12, align 4, !tbaa !5
  %7542 = load i32, ptr %8, align 4, !tbaa !5
  %7543 = mul nsw i32 6, %7542
  %7544 = add nsw i32 %7541, %7543
  %7545 = sext i32 %7544 to i64
  %7546 = getelementptr inbounds double, ptr %7540, i64 %7545
  %7547 = load double, ptr %7546, align 8, !tbaa !11
  %7548 = call double @llvm.fmuladd.f64(double 0x3FF670C5F1F4C929, double %7547, double %7539)
  %7549 = load ptr, ptr %7, align 8, !tbaa !9
  %7550 = load i32, ptr %12, align 4, !tbaa !5
  %7551 = load i32, ptr %8, align 4, !tbaa !5
  %7552 = mul nsw i32 7, %7551
  %7553 = add nsw i32 %7550, %7552
  %7554 = sext i32 %7553 to i64
  %7555 = getelementptr inbounds double, ptr %7549, i64 %7554
  %7556 = load double, ptr %7555, align 8, !tbaa !11
  %7557 = call double @llvm.fmuladd.f64(double 0x3FC36A9134CD3C5F, double %7556, double %7548)
  %7558 = load ptr, ptr %7, align 8, !tbaa !9
  %7559 = load i32, ptr %12, align 4, !tbaa !5
  %7560 = load i32, ptr %8, align 4, !tbaa !5
  %7561 = mul nsw i32 8, %7560
  %7562 = add nsw i32 %7559, %7561
  %7563 = sext i32 %7562 to i64
  %7564 = getelementptr inbounds double, ptr %7558, i64 %7563
  %7565 = load double, ptr %7564, align 8, !tbaa !11
  %7566 = call double @llvm.fmuladd.f64(double 0x3FD35DAE88CBA648, double %7565, double %7557)
  %7567 = load ptr, ptr %7, align 8, !tbaa !9
  %7568 = load i32, ptr %12, align 4, !tbaa !5
  %7569 = load i32, ptr %8, align 4, !tbaa !5
  %7570 = mul nsw i32 9, %7569
  %7571 = add nsw i32 %7568, %7570
  %7572 = sext i32 %7571 to i64
  %7573 = getelementptr inbounds double, ptr %7567, i64 %7572
  %7574 = load double, ptr %7573, align 8, !tbaa !11
  %7575 = call double @llvm.fmuladd.f64(double 0x3FC27B05E24EC5FB, double %7574, double %7566)
  %7576 = load ptr, ptr %7, align 8, !tbaa !9
  %7577 = load i32, ptr %12, align 4, !tbaa !5
  %7578 = load i32, ptr %8, align 4, !tbaa !5
  %7579 = mul nsw i32 10, %7578
  %7580 = add nsw i32 %7577, %7579
  %7581 = sext i32 %7580 to i64
  %7582 = getelementptr inbounds double, ptr %7576, i64 %7581
  %7583 = load double, ptr %7582, align 8, !tbaa !11
  %7584 = call double @llvm.fmuladd.f64(double 0x3C70000000000001, double %7583, double %7575)
  %7585 = load ptr, ptr %7, align 8, !tbaa !9
  %7586 = load i32, ptr %12, align 4, !tbaa !5
  %7587 = load i32, ptr %8, align 4, !tbaa !5
  %7588 = mul nsw i32 11, %7587
  %7589 = add nsw i32 %7586, %7588
  %7590 = sext i32 %7589 to i64
  %7591 = getelementptr inbounds double, ptr %7585, i64 %7590
  %7592 = load double, ptr %7591, align 8, !tbaa !11
  %7593 = call double @llvm.fmuladd.f64(double 0x3C7FFFFFFFFFFFFF, double %7592, double %7584)
  %7594 = load ptr, ptr %7, align 8, !tbaa !9
  %7595 = load i32, ptr %12, align 4, !tbaa !5
  %7596 = load i32, ptr %8, align 4, !tbaa !5
  %7597 = mul nsw i32 12, %7596
  %7598 = add nsw i32 %7595, %7597
  %7599 = sext i32 %7598 to i64
  %7600 = getelementptr inbounds double, ptr %7594, i64 %7599
  %7601 = load double, ptr %7600, align 8, !tbaa !11
  %7602 = call double @llvm.fmuladd.f64(double 0xBC95000000000000, double %7601, double %7593)
  %7603 = load ptr, ptr %7, align 8, !tbaa !9
  %7604 = load i32, ptr %12, align 4, !tbaa !5
  %7605 = load i32, ptr %8, align 4, !tbaa !5
  %7606 = mul nsw i32 13, %7605
  %7607 = add nsw i32 %7604, %7606
  %7608 = sext i32 %7607 to i64
  %7609 = getelementptr inbounds double, ptr %7603, i64 %7608
  %7610 = load double, ptr %7609, align 8, !tbaa !11
  %7611 = call double @llvm.fmuladd.f64(double 0x3CA3C00000000002, double %7610, double %7602)
  %7612 = load ptr, ptr %7, align 8, !tbaa !9
  %7613 = load i32, ptr %12, align 4, !tbaa !5
  %7614 = load i32, ptr %8, align 4, !tbaa !5
  %7615 = mul nsw i32 14, %7614
  %7616 = add nsw i32 %7613, %7615
  %7617 = sext i32 %7616 to i64
  %7618 = getelementptr inbounds double, ptr %7612, i64 %7617
  %7619 = load double, ptr %7618, align 8, !tbaa !11
  %7620 = call double @llvm.fmuladd.f64(double 0x3C7FFFFFFFFFFFFF, double %7619, double %7611)
  %7621 = load ptr, ptr %7, align 8, !tbaa !9
  %7622 = load i32, ptr %12, align 4, !tbaa !5
  %7623 = load i32, ptr %8, align 4, !tbaa !5
  %7624 = mul nsw i32 15, %7623
  %7625 = add nsw i32 %7622, %7624
  %7626 = sext i32 %7625 to i64
  %7627 = getelementptr inbounds double, ptr %7621, i64 %7626
  %7628 = load double, ptr %7627, align 8, !tbaa !11
  %7629 = call double @llvm.fmuladd.f64(double 0xBC92000000000000, double %7628, double %7620)
  %7630 = load ptr, ptr %7, align 8, !tbaa !9
  %7631 = load i32, ptr %12, align 4, !tbaa !5
  %7632 = load i32, ptr %8, align 4, !tbaa !5
  %7633 = mul nsw i32 16, %7632
  %7634 = add nsw i32 %7631, %7633
  %7635 = sext i32 %7634 to i64
  %7636 = getelementptr inbounds double, ptr %7630, i64 %7635
  %7637 = load double, ptr %7636, align 8, !tbaa !11
  %7638 = call double @llvm.fmuladd.f64(double 0x3CB1000000000001, double %7637, double %7629)
  %7639 = load ptr, ptr %7, align 8, !tbaa !9
  %7640 = load i32, ptr %12, align 4, !tbaa !5
  %7641 = load i32, ptr %8, align 4, !tbaa !5
  %7642 = mul nsw i32 17, %7641
  %7643 = add nsw i32 %7640, %7642
  %7644 = sext i32 %7643 to i64
  %7645 = getelementptr inbounds double, ptr %7639, i64 %7644
  %7646 = load double, ptr %7645, align 8, !tbaa !11
  %7647 = call double @llvm.fmuladd.f64(double 0x3CA3800000000002, double %7646, double %7638)
  %7648 = load ptr, ptr %7, align 8, !tbaa !9
  %7649 = load i32, ptr %12, align 4, !tbaa !5
  %7650 = load i32, ptr %8, align 4, !tbaa !5
  %7651 = mul nsw i32 18, %7650
  %7652 = add nsw i32 %7649, %7651
  %7653 = sext i32 %7652 to i64
  %7654 = getelementptr inbounds double, ptr %7648, i64 %7653
  %7655 = load double, ptr %7654, align 8, !tbaa !11
  %7656 = call double @llvm.fmuladd.f64(double 0xBC98000000000000, double %7655, double %7647)
  %7657 = load ptr, ptr %7, align 8, !tbaa !9
  %7658 = load i32, ptr %12, align 4, !tbaa !5
  %7659 = load i32, ptr %8, align 4, !tbaa !5
  %7660 = mul nsw i32 20, %7659
  %7661 = add nsw i32 %7658, %7660
  %7662 = sext i32 %7661 to i64
  %7663 = getelementptr inbounds double, ptr %7657, i64 %7662
  %7664 = load double, ptr %7663, align 8, !tbaa !11
  %7665 = call double @llvm.fmuladd.f64(double 0x3CAE000000000002, double %7664, double %7656)
  %7666 = load ptr, ptr %7, align 8, !tbaa !9
  %7667 = load i32, ptr %12, align 4, !tbaa !5
  %7668 = load i32, ptr %8, align 4, !tbaa !5
  %7669 = mul nsw i32 21, %7668
  %7670 = add nsw i32 %7667, %7669
  %7671 = sext i32 %7670 to i64
  %7672 = getelementptr inbounds double, ptr %7666, i64 %7671
  %7673 = load double, ptr %7672, align 8, !tbaa !11
  %7674 = call double @llvm.fmuladd.f64(double 0xBCA2000000000000, double %7673, double %7665)
  %7675 = load ptr, ptr %7, align 8, !tbaa !9
  %7676 = load i32, ptr %12, align 4, !tbaa !5
  %7677 = load i32, ptr %8, align 4, !tbaa !5
  %7678 = mul nsw i32 22, %7677
  %7679 = add nsw i32 %7676, %7678
  %7680 = sext i32 %7679 to i64
  %7681 = getelementptr inbounds double, ptr %7675, i64 %7680
  %7682 = load double, ptr %7681, align 8, !tbaa !11
  %7683 = call double @llvm.fmuladd.f64(double 0x3C94000000000000, double %7682, double %7674)
  %7684 = load ptr, ptr %7, align 8, !tbaa !9
  %7685 = load i32, ptr %12, align 4, !tbaa !5
  %7686 = load i32, ptr %8, align 4, !tbaa !5
  %7687 = mul nsw i32 23, %7686
  %7688 = add nsw i32 %7685, %7687
  %7689 = sext i32 %7688 to i64
  %7690 = getelementptr inbounds double, ptr %7684, i64 %7689
  %7691 = load double, ptr %7690, align 8, !tbaa !11
  %7692 = call double @llvm.fmuladd.f64(double 0xBCA1800000000000, double %7691, double %7683)
  %7693 = load ptr, ptr %7, align 8, !tbaa !9
  %7694 = load i32, ptr %12, align 4, !tbaa !5
  %7695 = load i32, ptr %8, align 4, !tbaa !5
  %7696 = mul nsw i32 24, %7695
  %7697 = add nsw i32 %7694, %7696
  %7698 = sext i32 %7697 to i64
  %7699 = getelementptr inbounds double, ptr %7693, i64 %7698
  %7700 = load double, ptr %7699, align 8, !tbaa !11
  %7701 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %7700, double %7692)
  %7702 = load ptr, ptr %7, align 8, !tbaa !9
  %7703 = load i32, ptr %12, align 4, !tbaa !5
  %7704 = load i32, ptr %8, align 4, !tbaa !5
  %7705 = mul nsw i32 25, %7704
  %7706 = add nsw i32 %7703, %7705
  %7707 = sext i32 %7706 to i64
  %7708 = getelementptr inbounds double, ptr %7702, i64 %7707
  %7709 = load double, ptr %7708, align 8, !tbaa !11
  %7710 = call double @llvm.fmuladd.f64(double 0xBC70000000000001, double %7709, double %7701)
  %7711 = load ptr, ptr %7, align 8, !tbaa !9
  %7712 = load i32, ptr %12, align 4, !tbaa !5
  %7713 = load i32, ptr %8, align 4, !tbaa !5
  %7714 = mul nsw i32 26, %7713
  %7715 = add nsw i32 %7712, %7714
  %7716 = sext i32 %7715 to i64
  %7717 = getelementptr inbounds double, ptr %7711, i64 %7716
  %7718 = load double, ptr %7717, align 8, !tbaa !11
  %7719 = call double @llvm.fmuladd.f64(double 0x3CA4800000000001, double %7718, double %7710)
  %7720 = load ptr, ptr %7, align 8, !tbaa !9
  %7721 = load i32, ptr %12, align 4, !tbaa !5
  %7722 = load i32, ptr %8, align 4, !tbaa !5
  %7723 = mul nsw i32 27, %7722
  %7724 = add nsw i32 %7721, %7723
  %7725 = sext i32 %7724 to i64
  %7726 = getelementptr inbounds double, ptr %7720, i64 %7725
  %7727 = load double, ptr %7726, align 8, !tbaa !11
  %7728 = call double @llvm.fmuladd.f64(double 0xBC97000000000000, double %7727, double %7719)
  %7729 = load ptr, ptr %7, align 8, !tbaa !9
  %7730 = load i32, ptr %12, align 4, !tbaa !5
  %7731 = load i32, ptr %8, align 4, !tbaa !5
  %7732 = mul nsw i32 28, %7731
  %7733 = add nsw i32 %7730, %7732
  %7734 = sext i32 %7733 to i64
  %7735 = getelementptr inbounds double, ptr %7729, i64 %7734
  %7736 = load double, ptr %7735, align 8, !tbaa !11
  %7737 = call double @llvm.fmuladd.f64(double 0x3CA5FFFFFFFFFFFF, double %7736, double %7728)
  %7738 = load ptr, ptr %7, align 8, !tbaa !9
  %7739 = load i32, ptr %12, align 4, !tbaa !5
  %7740 = load i32, ptr %8, align 4, !tbaa !5
  %7741 = mul nsw i32 30, %7740
  %7742 = add nsw i32 %7739, %7741
  %7743 = sext i32 %7742 to i64
  %7744 = getelementptr inbounds double, ptr %7738, i64 %7743
  %7745 = load double, ptr %7744, align 8, !tbaa !11
  %7746 = call double @llvm.fmuladd.f64(double 0x3C8E000000000000, double %7745, double %7737)
  %7747 = load ptr, ptr %7, align 8, !tbaa !9
  %7748 = load i32, ptr %12, align 4, !tbaa !5
  %7749 = load i32, ptr %8, align 4, !tbaa !5
  %7750 = mul nsw i32 31, %7749
  %7751 = add nsw i32 %7748, %7750
  %7752 = sext i32 %7751 to i64
  %7753 = getelementptr inbounds double, ptr %7747, i64 %7752
  %7754 = load double, ptr %7753, align 8, !tbaa !11
  %7755 = call double @llvm.fmuladd.f64(double 0x3C97000000000000, double %7754, double %7746)
  %7756 = load ptr, ptr %7, align 8, !tbaa !9
  %7757 = load i32, ptr %12, align 4, !tbaa !5
  %7758 = load i32, ptr %8, align 4, !tbaa !5
  %7759 = mul nsw i32 32, %7758
  %7760 = add nsw i32 %7757, %7759
  %7761 = sext i32 %7760 to i64
  %7762 = getelementptr inbounds double, ptr %7756, i64 %7761
  %7763 = load double, ptr %7762, align 8, !tbaa !11
  %7764 = call double @llvm.fmuladd.f64(double 0x3C7C000000000000, double %7763, double %7755)
  %7765 = load ptr, ptr %7, align 8, !tbaa !9
  %7766 = load i32, ptr %12, align 4, !tbaa !5
  %7767 = load i32, ptr %8, align 4, !tbaa !5
  %7768 = mul nsw i32 33, %7767
  %7769 = add nsw i32 %7766, %7768
  %7770 = sext i32 %7769 to i64
  %7771 = getelementptr inbounds double, ptr %7765, i64 %7770
  %7772 = load double, ptr %7771, align 8, !tbaa !11
  %7773 = call double @llvm.fmuladd.f64(double 0xBC8C000000000000, double %7772, double %7764)
  %7774 = load ptr, ptr %7, align 8, !tbaa !9
  %7775 = load i32, ptr %12, align 4, !tbaa !5
  %7776 = load i32, ptr %8, align 4, !tbaa !5
  %7777 = mul nsw i32 34, %7776
  %7778 = add nsw i32 %7775, %7777
  %7779 = sext i32 %7778 to i64
  %7780 = getelementptr inbounds double, ptr %7774, i64 %7779
  %7781 = load double, ptr %7780, align 8, !tbaa !11
  %7782 = call double @llvm.fmuladd.f64(double 0xBC92000000000000, double %7781, double %7773)
  %7783 = load ptr, ptr %7, align 8, !tbaa !9
  %7784 = load i32, ptr %12, align 4, !tbaa !5
  %7785 = load i32, ptr %8, align 4, !tbaa !5
  %7786 = mul nsw i32 35, %7785
  %7787 = add nsw i32 %7784, %7786
  %7788 = sext i32 %7787 to i64
  %7789 = getelementptr inbounds double, ptr %7783, i64 %7788
  %7790 = load double, ptr %7789, align 8, !tbaa !11
  %7791 = call double @llvm.fmuladd.f64(double 0xBC88000000000000, double %7790, double %7782)
  %7792 = load ptr, ptr %7, align 8, !tbaa !9
  %7793 = load i32, ptr %12, align 4, !tbaa !5
  %7794 = load i32, ptr %8, align 4, !tbaa !5
  %7795 = mul nsw i32 36, %7794
  %7796 = add nsw i32 %7793, %7795
  %7797 = sext i32 %7796 to i64
  %7798 = getelementptr inbounds double, ptr %7792, i64 %7797
  %7799 = load double, ptr %7798, align 8, !tbaa !11
  %7800 = call double @llvm.fmuladd.f64(double 0xBC82000000000000, double %7799, double %7791)
  %7801 = load ptr, ptr %7, align 8, !tbaa !9
  %7802 = load i32, ptr %12, align 4, !tbaa !5
  %7803 = load i32, ptr %8, align 4, !tbaa !5
  %7804 = mul nsw i32 37, %7803
  %7805 = add nsw i32 %7802, %7804
  %7806 = sext i32 %7805 to i64
  %7807 = getelementptr inbounds double, ptr %7801, i64 %7806
  %7808 = load double, ptr %7807, align 8, !tbaa !11
  %7809 = call double @llvm.fmuladd.f64(double 0x3C6C000000000000, double %7808, double %7800)
  %7810 = load ptr, ptr %7, align 8, !tbaa !9
  %7811 = load i32, ptr %12, align 4, !tbaa !5
  %7812 = load i32, ptr %8, align 4, !tbaa !5
  %7813 = mul nsw i32 38, %7812
  %7814 = add nsw i32 %7811, %7813
  %7815 = sext i32 %7814 to i64
  %7816 = getelementptr inbounds double, ptr %7810, i64 %7815
  %7817 = load double, ptr %7816, align 8, !tbaa !11
  %7818 = call double @llvm.fmuladd.f64(double 0x3C8C000000000000, double %7817, double %7809)
  %7819 = load ptr, ptr %7, align 8, !tbaa !9
  %7820 = load i32, ptr %12, align 4, !tbaa !5
  %7821 = load i32, ptr %8, align 4, !tbaa !5
  %7822 = mul nsw i32 39, %7821
  %7823 = add nsw i32 %7820, %7822
  %7824 = sext i32 %7823 to i64
  %7825 = getelementptr inbounds double, ptr %7819, i64 %7824
  %7826 = load double, ptr %7825, align 8, !tbaa !11
  %7827 = call double @llvm.fmuladd.f64(double 0x3C78000000000002, double %7826, double %7818)
  store double %7827, ptr %11, align 8, !tbaa !11
  %7828 = load double, ptr %11, align 8, !tbaa !11
  %7829 = load ptr, ptr %9, align 8, !tbaa !9
  %7830 = load i32, ptr %12, align 4, !tbaa !5
  %7831 = load i32, ptr %10, align 4, !tbaa !5
  %7832 = mul nsw i32 21, %7831
  %7833 = add nsw i32 %7830, %7832
  %7834 = sext i32 %7833 to i64
  %7835 = getelementptr inbounds double, ptr %7829, i64 %7834
  store double %7828, ptr %7835, align 8, !tbaa !11
  %7836 = load ptr, ptr %7, align 8, !tbaa !9
  %7837 = load i32, ptr %12, align 4, !tbaa !5
  %7838 = load i32, ptr %8, align 4, !tbaa !5
  %7839 = mul nsw i32 0, %7838
  %7840 = add nsw i32 %7837, %7839
  %7841 = sext i32 %7840 to i64
  %7842 = getelementptr inbounds double, ptr %7836, i64 %7841
  %7843 = load double, ptr %7842, align 8, !tbaa !11
  %7844 = load ptr, ptr %7, align 8, !tbaa !9
  %7845 = load i32, ptr %12, align 4, !tbaa !5
  %7846 = load i32, ptr %8, align 4, !tbaa !5
  %7847 = mul nsw i32 1, %7846
  %7848 = add nsw i32 %7845, %7847
  %7849 = sext i32 %7848 to i64
  %7850 = getelementptr inbounds double, ptr %7844, i64 %7849
  %7851 = load double, ptr %7850, align 8, !tbaa !11
  %7852 = fmul double 0xBFBEED13A9F0D902, %7851
  %7853 = call double @llvm.fmuladd.f64(double 0xBFE333710B32A29D, double %7843, double %7852)
  %7854 = load ptr, ptr %7, align 8, !tbaa !9
  %7855 = load i32, ptr %12, align 4, !tbaa !5
  %7856 = load i32, ptr %8, align 4, !tbaa !5
  %7857 = mul nsw i32 2, %7856
  %7858 = add nsw i32 %7855, %7857
  %7859 = sext i32 %7858 to i64
  %7860 = getelementptr inbounds double, ptr %7854, i64 %7859
  %7861 = load double, ptr %7860, align 8, !tbaa !11
  %7862 = call double @llvm.fmuladd.f64(double 0x3FA87D76435484EB, double %7861, double %7853)
  %7863 = load ptr, ptr %7, align 8, !tbaa !9
  %7864 = load i32, ptr %12, align 4, !tbaa !5
  %7865 = load i32, ptr %8, align 4, !tbaa !5
  %7866 = mul nsw i32 3, %7865
  %7867 = add nsw i32 %7864, %7866
  %7868 = sext i32 %7867 to i64
  %7869 = getelementptr inbounds double, ptr %7863, i64 %7868
  %7870 = load double, ptr %7869, align 8, !tbaa !11
  %7871 = call double @llvm.fmuladd.f64(double 0xBFA352D4DB969BE2, double %7870, double %7862)
  %7872 = load ptr, ptr %7, align 8, !tbaa !9
  %7873 = load i32, ptr %12, align 4, !tbaa !5
  %7874 = load i32, ptr %8, align 4, !tbaa !5
  %7875 = mul nsw i32 4, %7874
  %7876 = add nsw i32 %7873, %7875
  %7877 = sext i32 %7876 to i64
  %7878 = getelementptr inbounds double, ptr %7872, i64 %7877
  %7879 = load double, ptr %7878, align 8, !tbaa !11
  %7880 = call double @llvm.fmuladd.f64(double 0xBFD41C0D131D4288, double %7879, double %7871)
  %7881 = load ptr, ptr %7, align 8, !tbaa !9
  %7882 = load i32, ptr %12, align 4, !tbaa !5
  %7883 = load i32, ptr %8, align 4, !tbaa !5
  %7884 = mul nsw i32 5, %7883
  %7885 = add nsw i32 %7882, %7884
  %7886 = sext i32 %7885 to i64
  %7887 = getelementptr inbounds double, ptr %7881, i64 %7886
  %7888 = load double, ptr %7887, align 8, !tbaa !11
  %7889 = call double @llvm.fmuladd.f64(double 0x3F9854E0ADA34B36, double %7888, double %7880)
  %7890 = load ptr, ptr %7, align 8, !tbaa !9
  %7891 = load i32, ptr %12, align 4, !tbaa !5
  %7892 = load i32, ptr %8, align 4, !tbaa !5
  %7893 = mul nsw i32 6, %7892
  %7894 = add nsw i32 %7891, %7893
  %7895 = sext i32 %7894 to i64
  %7896 = getelementptr inbounds double, ptr %7890, i64 %7895
  %7897 = load double, ptr %7896, align 8, !tbaa !11
  %7898 = call double @llvm.fmuladd.f64(double 0x3FC36A9134CD3C4D, double %7897, double %7889)
  %7899 = load ptr, ptr %7, align 8, !tbaa !9
  %7900 = load i32, ptr %12, align 4, !tbaa !5
  %7901 = load i32, ptr %8, align 4, !tbaa !5
  %7902 = mul nsw i32 7, %7901
  %7903 = add nsw i32 %7900, %7902
  %7904 = sext i32 %7903 to i64
  %7905 = getelementptr inbounds double, ptr %7899, i64 %7904
  %7906 = load double, ptr %7905, align 8, !tbaa !11
  %7907 = call double @llvm.fmuladd.f64(double 0x3FF670C5F1F4C92E, double %7906, double %7898)
  %7908 = load ptr, ptr %7, align 8, !tbaa !9
  %7909 = load i32, ptr %12, align 4, !tbaa !5
  %7910 = load i32, ptr %8, align 4, !tbaa !5
  %7911 = mul nsw i32 8, %7910
  %7912 = add nsw i32 %7909, %7911
  %7913 = sext i32 %7912 to i64
  %7914 = getelementptr inbounds double, ptr %7908, i64 %7913
  %7915 = load double, ptr %7914, align 8, !tbaa !11
  %7916 = call double @llvm.fmuladd.f64(double 0x3FC27B05E24EC5FF, double %7915, double %7907)
  %7917 = load ptr, ptr %7, align 8, !tbaa !9
  %7918 = load i32, ptr %12, align 4, !tbaa !5
  %7919 = load i32, ptr %8, align 4, !tbaa !5
  %7920 = mul nsw i32 9, %7919
  %7921 = add nsw i32 %7918, %7920
  %7922 = sext i32 %7921 to i64
  %7923 = getelementptr inbounds double, ptr %7917, i64 %7922
  %7924 = load double, ptr %7923, align 8, !tbaa !11
  %7925 = call double @llvm.fmuladd.f64(double 0x3FD35DAE88CBA64A, double %7924, double %7916)
  %7926 = load ptr, ptr %7, align 8, !tbaa !9
  %7927 = load i32, ptr %12, align 4, !tbaa !5
  %7928 = load i32, ptr %8, align 4, !tbaa !5
  %7929 = mul nsw i32 10, %7928
  %7930 = add nsw i32 %7927, %7929
  %7931 = sext i32 %7930 to i64
  %7932 = getelementptr inbounds double, ptr %7926, i64 %7931
  %7933 = load double, ptr %7932, align 8, !tbaa !11
  %7934 = call double @llvm.fmuladd.f64(double 0x3C94000000000000, double %7933, double %7925)
  %7935 = load ptr, ptr %7, align 8, !tbaa !9
  %7936 = load i32, ptr %12, align 4, !tbaa !5
  %7937 = load i32, ptr %8, align 4, !tbaa !5
  %7938 = mul nsw i32 11, %7937
  %7939 = add nsw i32 %7936, %7938
  %7940 = sext i32 %7939 to i64
  %7941 = getelementptr inbounds double, ptr %7935, i64 %7940
  %7942 = load double, ptr %7941, align 8, !tbaa !11
  %7943 = call double @llvm.fmuladd.f64(double 0xBC9C000000000000, double %7942, double %7934)
  %7944 = load ptr, ptr %7, align 8, !tbaa !9
  %7945 = load i32, ptr %12, align 4, !tbaa !5
  %7946 = load i32, ptr %8, align 4, !tbaa !5
  %7947 = mul nsw i32 12, %7946
  %7948 = add nsw i32 %7945, %7947
  %7949 = sext i32 %7948 to i64
  %7950 = getelementptr inbounds double, ptr %7944, i64 %7949
  %7951 = load double, ptr %7950, align 8, !tbaa !11
  %7952 = call double @llvm.fmuladd.f64(double 0x3C82000000000000, double %7951, double %7943)
  %7953 = load ptr, ptr %7, align 8, !tbaa !9
  %7954 = load i32, ptr %12, align 4, !tbaa !5
  %7955 = load i32, ptr %8, align 4, !tbaa !5
  %7956 = mul nsw i32 13, %7955
  %7957 = add nsw i32 %7954, %7956
  %7958 = sext i32 %7957 to i64
  %7959 = getelementptr inbounds double, ptr %7953, i64 %7958
  %7960 = load double, ptr %7959, align 8, !tbaa !11
  %7961 = call double @llvm.fmuladd.f64(double 0x3C95800000000000, double %7960, double %7952)
  %7962 = load ptr, ptr %7, align 8, !tbaa !9
  %7963 = load i32, ptr %12, align 4, !tbaa !5
  %7964 = load i32, ptr %8, align 4, !tbaa !5
  %7965 = mul nsw i32 14, %7964
  %7966 = add nsw i32 %7963, %7965
  %7967 = sext i32 %7966 to i64
  %7968 = getelementptr inbounds double, ptr %7962, i64 %7967
  %7969 = load double, ptr %7968, align 8, !tbaa !11
  %7970 = call double @llvm.fmuladd.f64(double 0x3CA8000000000001, double %7969, double %7961)
  %7971 = load ptr, ptr %7, align 8, !tbaa !9
  %7972 = load i32, ptr %12, align 4, !tbaa !5
  %7973 = load i32, ptr %8, align 4, !tbaa !5
  %7974 = mul nsw i32 15, %7973
  %7975 = add nsw i32 %7972, %7974
  %7976 = sext i32 %7975 to i64
  %7977 = getelementptr inbounds double, ptr %7971, i64 %7976
  %7978 = load double, ptr %7977, align 8, !tbaa !11
  %7979 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %7978, double %7970)
  %7980 = load ptr, ptr %7, align 8, !tbaa !9
  %7981 = load i32, ptr %12, align 4, !tbaa !5
  %7982 = load i32, ptr %8, align 4, !tbaa !5
  %7983 = mul nsw i32 16, %7982
  %7984 = add nsw i32 %7981, %7983
  %7985 = sext i32 %7984 to i64
  %7986 = getelementptr inbounds double, ptr %7980, i64 %7985
  %7987 = load double, ptr %7986, align 8, !tbaa !11
  %7988 = call double @llvm.fmuladd.f64(double 0xBC78000000000002, double %7987, double %7979)
  %7989 = load ptr, ptr %7, align 8, !tbaa !9
  %7990 = load i32, ptr %12, align 4, !tbaa !5
  %7991 = load i32, ptr %8, align 4, !tbaa !5
  %7992 = mul nsw i32 17, %7991
  %7993 = add nsw i32 %7990, %7992
  %7994 = sext i32 %7993 to i64
  %7995 = getelementptr inbounds double, ptr %7989, i64 %7994
  %7996 = load double, ptr %7995, align 8, !tbaa !11
  %7997 = call double @llvm.fmuladd.f64(double 0x3C7C000000000000, double %7996, double %7988)
  %7998 = load ptr, ptr %7, align 8, !tbaa !9
  %7999 = load i32, ptr %12, align 4, !tbaa !5
  %8000 = load i32, ptr %8, align 4, !tbaa !5
  %8001 = mul nsw i32 18, %8000
  %8002 = add nsw i32 %7999, %8001
  %8003 = sext i32 %8002 to i64
  %8004 = getelementptr inbounds double, ptr %7998, i64 %8003
  %8005 = load double, ptr %8004, align 8, !tbaa !11
  %8006 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %8005, double %7997)
  %8007 = load ptr, ptr %7, align 8, !tbaa !9
  %8008 = load i32, ptr %12, align 4, !tbaa !5
  %8009 = load i32, ptr %8, align 4, !tbaa !5
  %8010 = mul nsw i32 19, %8009
  %8011 = add nsw i32 %8008, %8010
  %8012 = sext i32 %8011 to i64
  %8013 = getelementptr inbounds double, ptr %8007, i64 %8012
  %8014 = load double, ptr %8013, align 8, !tbaa !11
  %8015 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %8014, double %8006)
  %8016 = load ptr, ptr %7, align 8, !tbaa !9
  %8017 = load i32, ptr %12, align 4, !tbaa !5
  %8018 = load i32, ptr %8, align 4, !tbaa !5
  %8019 = mul nsw i32 20, %8018
  %8020 = add nsw i32 %8017, %8019
  %8021 = sext i32 %8020 to i64
  %8022 = getelementptr inbounds double, ptr %8016, i64 %8021
  %8023 = load double, ptr %8022, align 8, !tbaa !11
  %8024 = call double @llvm.fmuladd.f64(double 0x3C9C000000000000, double %8023, double %8015)
  %8025 = load ptr, ptr %7, align 8, !tbaa !9
  %8026 = load i32, ptr %12, align 4, !tbaa !5
  %8027 = load i32, ptr %8, align 4, !tbaa !5
  %8028 = mul nsw i32 21, %8027
  %8029 = add nsw i32 %8026, %8028
  %8030 = sext i32 %8029 to i64
  %8031 = getelementptr inbounds double, ptr %8025, i64 %8030
  %8032 = load double, ptr %8031, align 8, !tbaa !11
  %8033 = call double @llvm.fmuladd.f64(double 0xBCA4000000000001, double %8032, double %8024)
  %8034 = load ptr, ptr %7, align 8, !tbaa !9
  %8035 = load i32, ptr %12, align 4, !tbaa !5
  %8036 = load i32, ptr %8, align 4, !tbaa !5
  %8037 = mul nsw i32 22, %8036
  %8038 = add nsw i32 %8035, %8037
  %8039 = sext i32 %8038 to i64
  %8040 = getelementptr inbounds double, ptr %8034, i64 %8039
  %8041 = load double, ptr %8040, align 8, !tbaa !11
  %8042 = call double @llvm.fmuladd.f64(double 0xBC8C000000000000, double %8041, double %8033)
  %8043 = load ptr, ptr %7, align 8, !tbaa !9
  %8044 = load i32, ptr %12, align 4, !tbaa !5
  %8045 = load i32, ptr %8, align 4, !tbaa !5
  %8046 = mul nsw i32 23, %8045
  %8047 = add nsw i32 %8044, %8046
  %8048 = sext i32 %8047 to i64
  %8049 = getelementptr inbounds double, ptr %8043, i64 %8048
  %8050 = load double, ptr %8049, align 8, !tbaa !11
  %8051 = call double @llvm.fmuladd.f64(double 0x3C95000000000000, double %8050, double %8042)
  %8052 = load ptr, ptr %7, align 8, !tbaa !9
  %8053 = load i32, ptr %12, align 4, !tbaa !5
  %8054 = load i32, ptr %8, align 4, !tbaa !5
  %8055 = mul nsw i32 24, %8054
  %8056 = add nsw i32 %8053, %8055
  %8057 = sext i32 %8056 to i64
  %8058 = getelementptr inbounds double, ptr %8052, i64 %8057
  %8059 = load double, ptr %8058, align 8, !tbaa !11
  %8060 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %8059, double %8051)
  %8061 = load ptr, ptr %7, align 8, !tbaa !9
  %8062 = load i32, ptr %12, align 4, !tbaa !5
  %8063 = load i32, ptr %8, align 4, !tbaa !5
  %8064 = mul nsw i32 25, %8063
  %8065 = add nsw i32 %8062, %8064
  %8066 = sext i32 %8065 to i64
  %8067 = getelementptr inbounds double, ptr %8061, i64 %8066
  %8068 = load double, ptr %8067, align 8, !tbaa !11
  %8069 = call double @llvm.fmuladd.f64(double 0xBC98000000000000, double %8068, double %8060)
  %8070 = load ptr, ptr %7, align 8, !tbaa !9
  %8071 = load i32, ptr %12, align 4, !tbaa !5
  %8072 = load i32, ptr %8, align 4, !tbaa !5
  %8073 = mul nsw i32 26, %8072
  %8074 = add nsw i32 %8071, %8073
  %8075 = sext i32 %8074 to i64
  %8076 = getelementptr inbounds double, ptr %8070, i64 %8075
  %8077 = load double, ptr %8076, align 8, !tbaa !11
  %8078 = call double @llvm.fmuladd.f64(double 0x3C9B000000000000, double %8077, double %8069)
  %8079 = load ptr, ptr %7, align 8, !tbaa !9
  %8080 = load i32, ptr %12, align 4, !tbaa !5
  %8081 = load i32, ptr %8, align 4, !tbaa !5
  %8082 = mul nsw i32 27, %8081
  %8083 = add nsw i32 %8080, %8082
  %8084 = sext i32 %8083 to i64
  %8085 = getelementptr inbounds double, ptr %8079, i64 %8084
  %8086 = load double, ptr %8085, align 8, !tbaa !11
  %8087 = call double @llvm.fmuladd.f64(double 0xBCA27FFFFFFFFFFF, double %8086, double %8078)
  %8088 = load ptr, ptr %7, align 8, !tbaa !9
  %8089 = load i32, ptr %12, align 4, !tbaa !5
  %8090 = load i32, ptr %8, align 4, !tbaa !5
  %8091 = mul nsw i32 28, %8090
  %8092 = add nsw i32 %8089, %8091
  %8093 = sext i32 %8092 to i64
  %8094 = getelementptr inbounds double, ptr %8088, i64 %8093
  %8095 = load double, ptr %8094, align 8, !tbaa !11
  %8096 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %8095, double %8087)
  %8097 = load ptr, ptr %7, align 8, !tbaa !9
  %8098 = load i32, ptr %12, align 4, !tbaa !5
  %8099 = load i32, ptr %8, align 4, !tbaa !5
  %8100 = mul nsw i32 29, %8099
  %8101 = add nsw i32 %8098, %8100
  %8102 = sext i32 %8101 to i64
  %8103 = getelementptr inbounds double, ptr %8097, i64 %8102
  %8104 = load double, ptr %8103, align 8, !tbaa !11
  %8105 = call double @llvm.fmuladd.f64(double 0xBC88000000000000, double %8104, double %8096)
  %8106 = load ptr, ptr %7, align 8, !tbaa !9
  %8107 = load i32, ptr %12, align 4, !tbaa !5
  %8108 = load i32, ptr %8, align 4, !tbaa !5
  %8109 = mul nsw i32 30, %8108
  %8110 = add nsw i32 %8107, %8109
  %8111 = sext i32 %8110 to i64
  %8112 = getelementptr inbounds double, ptr %8106, i64 %8111
  %8113 = load double, ptr %8112, align 8, !tbaa !11
  %8114 = call double @llvm.fmuladd.f64(double 0x3C9EFFFFFFFFFFFD, double %8113, double %8105)
  %8115 = load ptr, ptr %7, align 8, !tbaa !9
  %8116 = load i32, ptr %12, align 4, !tbaa !5
  %8117 = load i32, ptr %8, align 4, !tbaa !5
  %8118 = mul nsw i32 31, %8117
  %8119 = add nsw i32 %8116, %8118
  %8120 = sext i32 %8119 to i64
  %8121 = getelementptr inbounds double, ptr %8115, i64 %8120
  %8122 = load double, ptr %8121, align 8, !tbaa !11
  %8123 = call double @llvm.fmuladd.f64(double 0x3C7C000000000000, double %8122, double %8114)
  %8124 = load ptr, ptr %7, align 8, !tbaa !9
  %8125 = load i32, ptr %12, align 4, !tbaa !5
  %8126 = load i32, ptr %8, align 4, !tbaa !5
  %8127 = mul nsw i32 32, %8126
  %8128 = add nsw i32 %8125, %8127
  %8129 = sext i32 %8128 to i64
  %8130 = getelementptr inbounds double, ptr %8124, i64 %8129
  %8131 = load double, ptr %8130, align 8, !tbaa !11
  %8132 = call double @llvm.fmuladd.f64(double 0xBC9C000000000000, double %8131, double %8123)
  %8133 = load ptr, ptr %7, align 8, !tbaa !9
  %8134 = load i32, ptr %12, align 4, !tbaa !5
  %8135 = load i32, ptr %8, align 4, !tbaa !5
  %8136 = mul nsw i32 33, %8135
  %8137 = add nsw i32 %8134, %8136
  %8138 = sext i32 %8137 to i64
  %8139 = getelementptr inbounds double, ptr %8133, i64 %8138
  %8140 = load double, ptr %8139, align 8, !tbaa !11
  %8141 = call double @llvm.fmuladd.f64(double 0xBC95800000000000, double %8140, double %8132)
  %8142 = load ptr, ptr %7, align 8, !tbaa !9
  %8143 = load i32, ptr %12, align 4, !tbaa !5
  %8144 = load i32, ptr %8, align 4, !tbaa !5
  %8145 = mul nsw i32 34, %8144
  %8146 = add nsw i32 %8143, %8145
  %8147 = sext i32 %8146 to i64
  %8148 = getelementptr inbounds double, ptr %8142, i64 %8147
  %8149 = load double, ptr %8148, align 8, !tbaa !11
  %8150 = call double @llvm.fmuladd.f64(double 0xBC99000000000000, double %8149, double %8141)
  %8151 = load ptr, ptr %7, align 8, !tbaa !9
  %8152 = load i32, ptr %12, align 4, !tbaa !5
  %8153 = load i32, ptr %8, align 4, !tbaa !5
  %8154 = mul nsw i32 35, %8153
  %8155 = add nsw i32 %8152, %8154
  %8156 = sext i32 %8155 to i64
  %8157 = getelementptr inbounds double, ptr %8151, i64 %8156
  %8158 = load double, ptr %8157, align 8, !tbaa !11
  %8159 = call double @llvm.fmuladd.f64(double 0xBC92000000000000, double %8158, double %8150)
  %8160 = load ptr, ptr %7, align 8, !tbaa !9
  %8161 = load i32, ptr %12, align 4, !tbaa !5
  %8162 = load i32, ptr %8, align 4, !tbaa !5
  %8163 = mul nsw i32 36, %8162
  %8164 = add nsw i32 %8161, %8163
  %8165 = sext i32 %8164 to i64
  %8166 = getelementptr inbounds double, ptr %8160, i64 %8165
  %8167 = load double, ptr %8166, align 8, !tbaa !11
  %8168 = call double @llvm.fmuladd.f64(double 0xBCA5FFFFFFFFFFFF, double %8167, double %8159)
  %8169 = load ptr, ptr %7, align 8, !tbaa !9
  %8170 = load i32, ptr %12, align 4, !tbaa !5
  %8171 = load i32, ptr %8, align 4, !tbaa !5
  %8172 = mul nsw i32 37, %8171
  %8173 = add nsw i32 %8170, %8172
  %8174 = sext i32 %8173 to i64
  %8175 = getelementptr inbounds double, ptr %8169, i64 %8174
  %8176 = load double, ptr %8175, align 8, !tbaa !11
  %8177 = call double @llvm.fmuladd.f64(double 0xBC8B000000000000, double %8176, double %8168)
  %8178 = load ptr, ptr %7, align 8, !tbaa !9
  %8179 = load i32, ptr %12, align 4, !tbaa !5
  %8180 = load i32, ptr %8, align 4, !tbaa !5
  %8181 = mul nsw i32 38, %8180
  %8182 = add nsw i32 %8179, %8181
  %8183 = sext i32 %8182 to i64
  %8184 = getelementptr inbounds double, ptr %8178, i64 %8183
  %8185 = load double, ptr %8184, align 8, !tbaa !11
  %8186 = call double @llvm.fmuladd.f64(double 0xBC94000000000000, double %8185, double %8177)
  %8187 = load ptr, ptr %7, align 8, !tbaa !9
  %8188 = load i32, ptr %12, align 4, !tbaa !5
  %8189 = load i32, ptr %8, align 4, !tbaa !5
  %8190 = mul nsw i32 39, %8189
  %8191 = add nsw i32 %8188, %8190
  %8192 = sext i32 %8191 to i64
  %8193 = getelementptr inbounds double, ptr %8187, i64 %8192
  %8194 = load double, ptr %8193, align 8, !tbaa !11
  %8195 = call double @llvm.fmuladd.f64(double 0xBC78000000000002, double %8194, double %8186)
  store double %8195, ptr %11, align 8, !tbaa !11
  %8196 = load double, ptr %11, align 8, !tbaa !11
  %8197 = load ptr, ptr %9, align 8, !tbaa !9
  %8198 = load i32, ptr %12, align 4, !tbaa !5
  %8199 = load i32, ptr %10, align 4, !tbaa !5
  %8200 = mul nsw i32 22, %8199
  %8201 = add nsw i32 %8198, %8200
  %8202 = sext i32 %8201 to i64
  %8203 = getelementptr inbounds double, ptr %8197, i64 %8202
  store double %8196, ptr %8203, align 8, !tbaa !11
  %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 0, %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 = load ptr, ptr %7, align 8, !tbaa !9
  %8213 = load i32, ptr %12, align 4, !tbaa !5
  %8214 = load i32, ptr %8, align 4, !tbaa !5
  %8215 = mul nsw i32 1, %8214
  %8216 = add nsw i32 %8213, %8215
  %8217 = sext i32 %8216 to i64
  %8218 = getelementptr inbounds double, ptr %8212, i64 %8217
  %8219 = load double, ptr %8218, align 8, !tbaa !11
  %8220 = fmul double 0xBFB5B58B4F03B1A2, %8219
  %8221 = call double @llvm.fmuladd.f64(double 0xBF83152016E0ED34, double %8211, double %8220)
  %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 2, %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 0x3FF4EC1BB3FDC61B, 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 3, %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 0x3F938CE4890DB2BF, double %8238, double %8230)
  %8240 = load ptr, ptr %7, align 8, !tbaa !9
  %8241 = load i32, ptr %12, align 4, !tbaa !5
  %8242 = load i32, ptr %8, align 4, !tbaa !5
  %8243 = mul nsw i32 4, %8242
  %8244 = add nsw i32 %8241, %8243
  %8245 = sext i32 %8244 to i64
  %8246 = getelementptr inbounds double, ptr %8240, i64 %8245
  %8247 = load double, ptr %8246, align 8, !tbaa !11
  %8248 = call double @llvm.fmuladd.f64(double 0xBFE5679E70A60656, double %8247, double %8239)
  %8249 = load ptr, ptr %7, align 8, !tbaa !9
  %8250 = load i32, ptr %12, align 4, !tbaa !5
  %8251 = load i32, ptr %8, align 4, !tbaa !5
  %8252 = mul nsw i32 5, %8251
  %8253 = add nsw i32 %8250, %8252
  %8254 = sext i32 %8253 to i64
  %8255 = getelementptr inbounds double, ptr %8249, i64 %8254
  %8256 = load double, ptr %8255, align 8, !tbaa !11
  %8257 = call double @llvm.fmuladd.f64(double 0x3F85E50BB681A43D, double %8256, double %8248)
  %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 6, %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 = call double @llvm.fmuladd.f64(double 0xBFB49217631F5912, double %8265, double %8257)
  %8267 = load ptr, ptr %7, align 8, !tbaa !9
  %8268 = load i32, ptr %12, align 4, !tbaa !5
  %8269 = load i32, ptr %8, align 4, !tbaa !5
  %8270 = mul nsw i32 7, %8269
  %8271 = add nsw i32 %8268, %8270
  %8272 = sext i32 %8271 to i64
  %8273 = getelementptr inbounds double, ptr %8267, i64 %8272
  %8274 = load double, ptr %8273, align 8, !tbaa !11
  %8275 = call double @llvm.fmuladd.f64(double 0x3FCA50C41AB7A2EC, double %8274, double %8266)
  %8276 = load ptr, ptr %7, align 8, !tbaa !9
  %8277 = load i32, ptr %12, align 4, !tbaa !5
  %8278 = load i32, ptr %8, align 4, !tbaa !5
  %8279 = mul nsw i32 8, %8278
  %8280 = add nsw i32 %8277, %8279
  %8281 = sext i32 %8280 to i64
  %8282 = getelementptr inbounds double, ptr %8276, i64 %8281
  %8283 = load double, ptr %8282, align 8, !tbaa !11
  %8284 = call double @llvm.fmuladd.f64(double 0xBF8BDAF699AECEFD, double %8283, double %8275)
  %8285 = load ptr, ptr %7, align 8, !tbaa !9
  %8286 = load i32, ptr %12, align 4, !tbaa !5
  %8287 = load i32, ptr %8, align 4, !tbaa !5
  %8288 = mul nsw i32 9, %8287
  %8289 = add nsw i32 %8286, %8288
  %8290 = sext i32 %8289 to i64
  %8291 = getelementptr inbounds double, ptr %8285, i64 %8290
  %8292 = load double, ptr %8291, align 8, !tbaa !11
  %8293 = call double @llvm.fmuladd.f64(double 0x3FD417DEBFC17B15, double %8292, double %8284)
  %8294 = load ptr, ptr %7, align 8, !tbaa !9
  %8295 = load i32, ptr %12, align 4, !tbaa !5
  %8296 = load i32, ptr %8, align 4, !tbaa !5
  %8297 = mul nsw i32 10, %8296
  %8298 = add nsw i32 %8295, %8297
  %8299 = sext i32 %8298 to i64
  %8300 = getelementptr inbounds double, ptr %8294, i64 %8299
  %8301 = load double, ptr %8300, align 8, !tbaa !11
  %8302 = call double @llvm.fmuladd.f64(double 0x3CA4000000000001, double %8301, double %8293)
  %8303 = load ptr, ptr %7, align 8, !tbaa !9
  %8304 = load i32, ptr %12, align 4, !tbaa !5
  %8305 = load i32, ptr %8, align 4, !tbaa !5
  %8306 = mul nsw i32 11, %8305
  %8307 = add nsw i32 %8304, %8306
  %8308 = sext i32 %8307 to i64
  %8309 = getelementptr inbounds double, ptr %8303, i64 %8308
  %8310 = load double, ptr %8309, align 8, !tbaa !11
  %8311 = call double @llvm.fmuladd.f64(double 0xBCA2000000000000, double %8310, double %8302)
  %8312 = load ptr, ptr %7, align 8, !tbaa !9
  %8313 = load i32, ptr %12, align 4, !tbaa !5
  %8314 = load i32, ptr %8, align 4, !tbaa !5
  %8315 = mul nsw i32 12, %8314
  %8316 = add nsw i32 %8313, %8315
  %8317 = sext i32 %8316 to i64
  %8318 = getelementptr inbounds double, ptr %8312, i64 %8317
  %8319 = load double, ptr %8318, align 8, !tbaa !11
  %8320 = call double @llvm.fmuladd.f64(double 0x3CA0800000000001, double %8319, double %8311)
  %8321 = load ptr, ptr %7, align 8, !tbaa !9
  %8322 = load i32, ptr %12, align 4, !tbaa !5
  %8323 = load i32, ptr %8, align 4, !tbaa !5
  %8324 = mul nsw i32 13, %8323
  %8325 = add nsw i32 %8322, %8324
  %8326 = sext i32 %8325 to i64
  %8327 = getelementptr inbounds double, ptr %8321, i64 %8326
  %8328 = load double, ptr %8327, align 8, !tbaa !11
  %8329 = call double @llvm.fmuladd.f64(double 0xBCA0C00000000001, double %8328, double %8320)
  %8330 = load ptr, ptr %7, align 8, !tbaa !9
  %8331 = load i32, ptr %12, align 4, !tbaa !5
  %8332 = load i32, ptr %8, align 4, !tbaa !5
  %8333 = mul nsw i32 14, %8332
  %8334 = add nsw i32 %8331, %8333
  %8335 = sext i32 %8334 to i64
  %8336 = getelementptr inbounds double, ptr %8330, i64 %8335
  %8337 = load double, ptr %8336, align 8, !tbaa !11
  %8338 = call double @llvm.fmuladd.f64(double 0x3C9C000000000000, double %8337, double %8329)
  %8339 = load ptr, ptr %7, align 8, !tbaa !9
  %8340 = load i32, ptr %12, align 4, !tbaa !5
  %8341 = load i32, ptr %8, align 4, !tbaa !5
  %8342 = mul nsw i32 15, %8341
  %8343 = add nsw i32 %8340, %8342
  %8344 = sext i32 %8343 to i64
  %8345 = getelementptr inbounds double, ptr %8339, i64 %8344
  %8346 = load double, ptr %8345, align 8, !tbaa !11
  %8347 = call double @llvm.fmuladd.f64(double 0xBCAF000000000001, double %8346, double %8338)
  %8348 = load ptr, ptr %7, align 8, !tbaa !9
  %8349 = load i32, ptr %12, align 4, !tbaa !5
  %8350 = load i32, ptr %8, align 4, !tbaa !5
  %8351 = mul nsw i32 16, %8350
  %8352 = add nsw i32 %8349, %8351
  %8353 = sext i32 %8352 to i64
  %8354 = getelementptr inbounds double, ptr %8348, i64 %8353
  %8355 = load double, ptr %8354, align 8, !tbaa !11
  %8356 = call double @llvm.fmuladd.f64(double 0x3C97000000000000, double %8355, double %8347)
  %8357 = load ptr, ptr %7, align 8, !tbaa !9
  %8358 = load i32, ptr %12, align 4, !tbaa !5
  %8359 = load i32, ptr %8, align 4, !tbaa !5
  %8360 = mul nsw i32 17, %8359
  %8361 = add nsw i32 %8358, %8360
  %8362 = sext i32 %8361 to i64
  %8363 = getelementptr inbounds double, ptr %8357, i64 %8362
  %8364 = load double, ptr %8363, align 8, !tbaa !11
  %8365 = call double @llvm.fmuladd.f64(double 0x3CA0800000000001, double %8364, double %8356)
  %8366 = load ptr, ptr %7, align 8, !tbaa !9
  %8367 = load i32, ptr %12, align 4, !tbaa !5
  %8368 = load i32, ptr %8, align 4, !tbaa !5
  %8369 = mul nsw i32 18, %8368
  %8370 = add nsw i32 %8367, %8369
  %8371 = sext i32 %8370 to i64
  %8372 = getelementptr inbounds double, ptr %8366, i64 %8371
  %8373 = load double, ptr %8372, align 8, !tbaa !11
  %8374 = call double @llvm.fmuladd.f64(double 0x3CA5FFFFFFFFFFFF, double %8373, double %8365)
  %8375 = load ptr, ptr %7, align 8, !tbaa !9
  %8376 = load i32, ptr %12, align 4, !tbaa !5
  %8377 = load i32, ptr %8, align 4, !tbaa !5
  %8378 = mul nsw i32 19, %8377
  %8379 = add nsw i32 %8376, %8378
  %8380 = sext i32 %8379 to i64
  %8381 = getelementptr inbounds double, ptr %8375, i64 %8380
  %8382 = load double, ptr %8381, align 8, !tbaa !11
  %8383 = call double @llvm.fmuladd.f64(double 0xBCA4000000000001, double %8382, double %8374)
  %8384 = load ptr, ptr %7, align 8, !tbaa !9
  %8385 = load i32, ptr %12, align 4, !tbaa !5
  %8386 = load i32, ptr %8, align 4, !tbaa !5
  %8387 = mul nsw i32 20, %8386
  %8388 = add nsw i32 %8385, %8387
  %8389 = sext i32 %8388 to i64
  %8390 = getelementptr inbounds double, ptr %8384, i64 %8389
  %8391 = load double, ptr %8390, align 8, !tbaa !11
  %8392 = call double @llvm.fmuladd.f64(double 0x3CA0000000000002, double %8391, double %8383)
  %8393 = load ptr, ptr %7, align 8, !tbaa !9
  %8394 = load i32, ptr %12, align 4, !tbaa !5
  %8395 = load i32, ptr %8, align 4, !tbaa !5
  %8396 = mul nsw i32 22, %8395
  %8397 = add nsw i32 %8394, %8396
  %8398 = sext i32 %8397 to i64
  %8399 = getelementptr inbounds double, ptr %8393, i64 %8398
  %8400 = load double, ptr %8399, align 8, !tbaa !11
  %8401 = call double @llvm.fmuladd.f64(double 0xBCA8000000000001, double %8400, double %8392)
  %8402 = load ptr, ptr %7, align 8, !tbaa !9
  %8403 = load i32, ptr %12, align 4, !tbaa !5
  %8404 = load i32, ptr %8, align 4, !tbaa !5
  %8405 = mul nsw i32 23, %8404
  %8406 = add nsw i32 %8403, %8405
  %8407 = sext i32 %8406 to i64
  %8408 = getelementptr inbounds double, ptr %8402, i64 %8407
  %8409 = load double, ptr %8408, align 8, !tbaa !11
  %8410 = call double @llvm.fmuladd.f64(double 0x3CBA000000000000, double %8409, double %8401)
  %8411 = load ptr, ptr %7, align 8, !tbaa !9
  %8412 = load i32, ptr %12, align 4, !tbaa !5
  %8413 = load i32, ptr %8, align 4, !tbaa !5
  %8414 = mul nsw i32 24, %8413
  %8415 = add nsw i32 %8412, %8414
  %8416 = sext i32 %8415 to i64
  %8417 = getelementptr inbounds double, ptr %8411, i64 %8416
  %8418 = load double, ptr %8417, align 8, !tbaa !11
  %8419 = call double @llvm.fmuladd.f64(double 0xBC9C000000000000, double %8418, double %8410)
  %8420 = load ptr, ptr %7, align 8, !tbaa !9
  %8421 = load i32, ptr %12, align 4, !tbaa !5
  %8422 = load i32, ptr %8, align 4, !tbaa !5
  %8423 = mul nsw i32 25, %8422
  %8424 = add nsw i32 %8421, %8423
  %8425 = sext i32 %8424 to i64
  %8426 = getelementptr inbounds double, ptr %8420, i64 %8425
  %8427 = load double, ptr %8426, align 8, !tbaa !11
  %8428 = call double @llvm.fmuladd.f64(double 0xBC60000000000000, double %8427, double %8419)
  %8429 = load ptr, ptr %7, align 8, !tbaa !9
  %8430 = load i32, ptr %12, align 4, !tbaa !5
  %8431 = load i32, ptr %8, align 4, !tbaa !5
  %8432 = mul nsw i32 26, %8431
  %8433 = add nsw i32 %8430, %8432
  %8434 = sext i32 %8433 to i64
  %8435 = getelementptr inbounds double, ptr %8429, i64 %8434
  %8436 = load double, ptr %8435, align 8, !tbaa !11
  %8437 = call double @llvm.fmuladd.f64(double 0x3C8E000000000000, double %8436, double %8428)
  %8438 = load ptr, ptr %7, align 8, !tbaa !9
  %8439 = load i32, ptr %12, align 4, !tbaa !5
  %8440 = load i32, ptr %8, align 4, !tbaa !5
  %8441 = mul nsw i32 27, %8440
  %8442 = add nsw i32 %8439, %8441
  %8443 = sext i32 %8442 to i64
  %8444 = getelementptr inbounds double, ptr %8438, i64 %8443
  %8445 = load double, ptr %8444, align 8, !tbaa !11
  %8446 = call double @llvm.fmuladd.f64(double 0xBCAF800000000000, double %8445, double %8437)
  %8447 = load ptr, ptr %7, align 8, !tbaa !9
  %8448 = load i32, ptr %12, align 4, !tbaa !5
  %8449 = load i32, ptr %8, align 4, !tbaa !5
  %8450 = mul nsw i32 28, %8449
  %8451 = add nsw i32 %8448, %8450
  %8452 = sext i32 %8451 to i64
  %8453 = getelementptr inbounds double, ptr %8447, i64 %8452
  %8454 = load double, ptr %8453, align 8, !tbaa !11
  %8455 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %8454, double %8446)
  %8456 = load ptr, ptr %7, align 8, !tbaa !9
  %8457 = load i32, ptr %12, align 4, !tbaa !5
  %8458 = load i32, ptr %8, align 4, !tbaa !5
  %8459 = mul nsw i32 29, %8458
  %8460 = add nsw i32 %8457, %8459
  %8461 = sext i32 %8460 to i64
  %8462 = getelementptr inbounds double, ptr %8456, i64 %8461
  %8463 = load double, ptr %8462, align 8, !tbaa !11
  %8464 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %8463, double %8455)
  %8465 = load ptr, ptr %7, align 8, !tbaa !9
  %8466 = load i32, ptr %12, align 4, !tbaa !5
  %8467 = load i32, ptr %8, align 4, !tbaa !5
  %8468 = mul nsw i32 30, %8467
  %8469 = add nsw i32 %8466, %8468
  %8470 = sext i32 %8469 to i64
  %8471 = getelementptr inbounds double, ptr %8465, i64 %8470
  %8472 = load double, ptr %8471, align 8, !tbaa !11
  %8473 = call double @llvm.fmuladd.f64(double 0x3C99000000000000, double %8472, double %8464)
  %8474 = load ptr, ptr %7, align 8, !tbaa !9
  %8475 = load i32, ptr %12, align 4, !tbaa !5
  %8476 = load i32, ptr %8, align 4, !tbaa !5
  %8477 = mul nsw i32 31, %8476
  %8478 = add nsw i32 %8475, %8477
  %8479 = sext i32 %8478 to i64
  %8480 = getelementptr inbounds double, ptr %8474, i64 %8479
  %8481 = load double, ptr %8480, align 8, !tbaa !11
  %8482 = call double @llvm.fmuladd.f64(double 0x3C9A000000000000, double %8481, double %8473)
  %8483 = load ptr, ptr %7, align 8, !tbaa !9
  %8484 = load i32, ptr %12, align 4, !tbaa !5
  %8485 = load i32, ptr %8, align 4, !tbaa !5
  %8486 = mul nsw i32 32, %8485
  %8487 = add nsw i32 %8484, %8486
  %8488 = sext i32 %8487 to i64
  %8489 = getelementptr inbounds double, ptr %8483, i64 %8488
  %8490 = load double, ptr %8489, align 8, !tbaa !11
  %8491 = call double @llvm.fmuladd.f64(double 0x3C70000000000001, double %8490, double %8482)
  %8492 = load ptr, ptr %7, align 8, !tbaa !9
  %8493 = load i32, ptr %12, align 4, !tbaa !5
  %8494 = load i32, ptr %8, align 4, !tbaa !5
  %8495 = mul nsw i32 33, %8494
  %8496 = add nsw i32 %8493, %8495
  %8497 = sext i32 %8496 to i64
  %8498 = getelementptr inbounds double, ptr %8492, i64 %8497
  %8499 = load double, ptr %8498, align 8, !tbaa !11
  %8500 = call double @llvm.fmuladd.f64(double 0x3C9BC00000000000, double %8499, double %8491)
  %8501 = load ptr, ptr %7, align 8, !tbaa !9
  %8502 = load i32, ptr %12, align 4, !tbaa !5
  %8503 = load i32, ptr %8, align 4, !tbaa !5
  %8504 = mul nsw i32 34, %8503
  %8505 = add nsw i32 %8502, %8504
  %8506 = sext i32 %8505 to i64
  %8507 = getelementptr inbounds double, ptr %8501, i64 %8506
  %8508 = load double, ptr %8507, align 8, !tbaa !11
  %8509 = call double @llvm.fmuladd.f64(double 0x3CA4000000000001, double %8508, double %8500)
  %8510 = load ptr, ptr %7, align 8, !tbaa !9
  %8511 = load i32, ptr %12, align 4, !tbaa !5
  %8512 = load i32, ptr %8, align 4, !tbaa !5
  %8513 = mul nsw i32 35, %8512
  %8514 = add nsw i32 %8511, %8513
  %8515 = sext i32 %8514 to i64
  %8516 = getelementptr inbounds double, ptr %8510, i64 %8515
  %8517 = load double, ptr %8516, align 8, !tbaa !11
  %8518 = call double @llvm.fmuladd.f64(double 0x3C92000000000000, double %8517, double %8509)
  %8519 = load ptr, ptr %7, align 8, !tbaa !9
  %8520 = load i32, ptr %12, align 4, !tbaa !5
  %8521 = load i32, ptr %8, align 4, !tbaa !5
  %8522 = mul nsw i32 36, %8521
  %8523 = add nsw i32 %8520, %8522
  %8524 = sext i32 %8523 to i64
  %8525 = getelementptr inbounds double, ptr %8519, i64 %8524
  %8526 = load double, ptr %8525, align 8, !tbaa !11
  %8527 = call double @llvm.fmuladd.f64(double 0xBCA8C00000000000, double %8526, double %8518)
  %8528 = load ptr, ptr %7, align 8, !tbaa !9
  %8529 = load i32, ptr %12, align 4, !tbaa !5
  %8530 = load i32, ptr %8, align 4, !tbaa !5
  %8531 = mul nsw i32 37, %8530
  %8532 = add nsw i32 %8529, %8531
  %8533 = sext i32 %8532 to i64
  %8534 = getelementptr inbounds double, ptr %8528, i64 %8533
  %8535 = load double, ptr %8534, align 8, !tbaa !11
  %8536 = call double @llvm.fmuladd.f64(double 0xBC71FFFFFFFFFFFF, double %8535, double %8527)
  %8537 = load ptr, ptr %7, align 8, !tbaa !9
  %8538 = load i32, ptr %12, align 4, !tbaa !5
  %8539 = load i32, ptr %8, align 4, !tbaa !5
  %8540 = mul nsw i32 38, %8539
  %8541 = add nsw i32 %8538, %8540
  %8542 = sext i32 %8541 to i64
  %8543 = getelementptr inbounds double, ptr %8537, i64 %8542
  %8544 = load double, ptr %8543, align 8, !tbaa !11
  %8545 = call double @llvm.fmuladd.f64(double 0xBCA1000000000001, double %8544, double %8536)
  %8546 = load ptr, ptr %7, align 8, !tbaa !9
  %8547 = load i32, ptr %12, align 4, !tbaa !5
  %8548 = load i32, ptr %8, align 4, !tbaa !5
  %8549 = mul nsw i32 39, %8548
  %8550 = add nsw i32 %8547, %8549
  %8551 = sext i32 %8550 to i64
  %8552 = getelementptr inbounds double, ptr %8546, i64 %8551
  %8553 = load double, ptr %8552, align 8, !tbaa !11
  %8554 = call double @llvm.fmuladd.f64(double 0xBC94000000000000, double %8553, double %8545)
  store double %8554, ptr %11, align 8, !tbaa !11
  %8555 = load double, ptr %11, align 8, !tbaa !11
  %8556 = load ptr, ptr %9, align 8, !tbaa !9
  %8557 = load i32, ptr %12, align 4, !tbaa !5
  %8558 = load i32, ptr %10, align 4, !tbaa !5
  %8559 = mul nsw i32 23, %8558
  %8560 = add nsw i32 %8557, %8559
  %8561 = sext i32 %8560 to i64
  %8562 = getelementptr inbounds double, ptr %8556, i64 %8561
  store double %8555, ptr %8562, align 8, !tbaa !11
  %8563 = load ptr, ptr %7, align 8, !tbaa !9
  %8564 = load i32, ptr %12, align 4, !tbaa !5
  %8565 = load i32, ptr %8, align 4, !tbaa !5
  %8566 = mul nsw i32 0, %8565
  %8567 = add nsw i32 %8564, %8566
  %8568 = sext i32 %8567 to i64
  %8569 = getelementptr inbounds double, ptr %8563, i64 %8568
  %8570 = load double, ptr %8569, align 8, !tbaa !11
  %8571 = load ptr, ptr %7, align 8, !tbaa !9
  %8572 = load i32, ptr %12, align 4, !tbaa !5
  %8573 = load i32, ptr %8, align 4, !tbaa !5
  %8574 = mul nsw i32 1, %8573
  %8575 = add nsw i32 %8572, %8574
  %8576 = sext i32 %8575 to i64
  %8577 = getelementptr inbounds double, ptr %8571, i64 %8576
  %8578 = load double, ptr %8577, align 8, !tbaa !11
  %8579 = fmul double 0x3C7FFFFFFFFFFFFF, %8578
  %8580 = call double @llvm.fmuladd.f64(double 0xBCAB000000000001, double %8570, double %8579)
  %8581 = load ptr, ptr %7, align 8, !tbaa !9
  %8582 = load i32, ptr %12, align 4, !tbaa !5
  %8583 = load i32, ptr %8, align 4, !tbaa !5
  %8584 = mul nsw i32 2, %8583
  %8585 = add nsw i32 %8582, %8584
  %8586 = sext i32 %8585 to i64
  %8587 = getelementptr inbounds double, ptr %8581, i64 %8586
  %8588 = load double, ptr %8587, align 8, !tbaa !11
  %8589 = call double @llvm.fmuladd.f64(double 0xBC91400000000000, double %8588, double %8580)
  %8590 = load ptr, ptr %7, align 8, !tbaa !9
  %8591 = load i32, ptr %12, align 4, !tbaa !5
  %8592 = load i32, ptr %8, align 4, !tbaa !5
  %8593 = mul nsw i32 3, %8592
  %8594 = add nsw i32 %8591, %8593
  %8595 = sext i32 %8594 to i64
  %8596 = getelementptr inbounds double, ptr %8590, i64 %8595
  %8597 = load double, ptr %8596, align 8, !tbaa !11
  %8598 = call double @llvm.fmuladd.f64(double 0xBC84800000000001, double %8597, double %8589)
  %8599 = load ptr, ptr %7, align 8, !tbaa !9
  %8600 = load i32, ptr %12, align 4, !tbaa !5
  %8601 = load i32, ptr %8, align 4, !tbaa !5
  %8602 = mul nsw i32 4, %8601
  %8603 = add nsw i32 %8600, %8602
  %8604 = sext i32 %8603 to i64
  %8605 = getelementptr inbounds double, ptr %8599, i64 %8604
  %8606 = load double, ptr %8605, align 8, !tbaa !11
  %8607 = call double @llvm.fmuladd.f64(double 0xBCA5FFFFFFFFFFFF, double %8606, double %8598)
  %8608 = load ptr, ptr %7, align 8, !tbaa !9
  %8609 = load i32, ptr %12, align 4, !tbaa !5
  %8610 = load i32, ptr %8, align 4, !tbaa !5
  %8611 = mul nsw i32 5, %8610
  %8612 = add nsw i32 %8609, %8611
  %8613 = sext i32 %8612 to i64
  %8614 = getelementptr inbounds double, ptr %8608, i64 %8613
  %8615 = load double, ptr %8614, align 8, !tbaa !11
  %8616 = call double @llvm.fmuladd.f64(double 0x3CAC000000000000, double %8615, double %8607)
  %8617 = load ptr, ptr %7, align 8, !tbaa !9
  %8618 = load i32, ptr %12, align 4, !tbaa !5
  %8619 = load i32, ptr %8, align 4, !tbaa !5
  %8620 = mul nsw i32 6, %8619
  %8621 = add nsw i32 %8618, %8620
  %8622 = sext i32 %8621 to i64
  %8623 = getelementptr inbounds double, ptr %8617, i64 %8622
  %8624 = load double, ptr %8623, align 8, !tbaa !11
  %8625 = call double @llvm.fmuladd.f64(double 0xBC9A800000000000, double %8624, double %8616)
  %8626 = load ptr, ptr %7, align 8, !tbaa !9
  %8627 = load i32, ptr %12, align 4, !tbaa !5
  %8628 = load i32, ptr %8, align 4, !tbaa !5
  %8629 = mul nsw i32 7, %8628
  %8630 = add nsw i32 %8627, %8629
  %8631 = sext i32 %8630 to i64
  %8632 = getelementptr inbounds double, ptr %8626, i64 %8631
  %8633 = load double, ptr %8632, align 8, !tbaa !11
  %8634 = call double @llvm.fmuladd.f64(double 0xBC50000000000000, double %8633, double %8625)
  %8635 = load ptr, ptr %7, align 8, !tbaa !9
  %8636 = load i32, ptr %12, align 4, !tbaa !5
  %8637 = load i32, ptr %8, align 4, !tbaa !5
  %8638 = mul nsw i32 8, %8637
  %8639 = add nsw i32 %8636, %8638
  %8640 = sext i32 %8639 to i64
  %8641 = getelementptr inbounds double, ptr %8635, i64 %8640
  %8642 = load double, ptr %8641, align 8, !tbaa !11
  %8643 = call double @llvm.fmuladd.f64(double 0xBC70000000000001, double %8642, double %8634)
  %8644 = load ptr, ptr %7, align 8, !tbaa !9
  %8645 = load i32, ptr %12, align 4, !tbaa !5
  %8646 = load i32, ptr %8, align 4, !tbaa !5
  %8647 = mul nsw i32 9, %8646
  %8648 = add nsw i32 %8645, %8647
  %8649 = sext i32 %8648 to i64
  %8650 = getelementptr inbounds double, ptr %8644, i64 %8649
  %8651 = load double, ptr %8650, align 8, !tbaa !11
  %8652 = call double @llvm.fmuladd.f64(double 0x3C9A000000000000, double %8651, double %8643)
  %8653 = load ptr, ptr %7, align 8, !tbaa !9
  %8654 = load i32, ptr %12, align 4, !tbaa !5
  %8655 = load i32, ptr %8, align 4, !tbaa !5
  %8656 = mul nsw i32 10, %8655
  %8657 = add nsw i32 %8654, %8656
  %8658 = sext i32 %8657 to i64
  %8659 = getelementptr inbounds double, ptr %8653, i64 %8658
  %8660 = load double, ptr %8659, align 8, !tbaa !11
  %8661 = call double @llvm.fmuladd.f64(double 0xBF83152016E0EC80, double %8660, double %8652)
  %8662 = load ptr, ptr %7, align 8, !tbaa !9
  %8663 = load i32, ptr %12, align 4, !tbaa !5
  %8664 = load i32, ptr %8, align 4, !tbaa !5
  %8665 = mul nsw i32 11, %8664
  %8666 = add nsw i32 %8663, %8665
  %8667 = sext i32 %8666 to i64
  %8668 = getelementptr inbounds double, ptr %8662, i64 %8667
  %8669 = load double, ptr %8668, align 8, !tbaa !11
  %8670 = call double @llvm.fmuladd.f64(double 0xBFB5B58B4F03B19E, double %8669, double %8661)
  %8671 = load ptr, ptr %7, align 8, !tbaa !9
  %8672 = load i32, ptr %12, align 4, !tbaa !5
  %8673 = load i32, ptr %8, align 4, !tbaa !5
  %8674 = mul nsw i32 12, %8673
  %8675 = add nsw i32 %8672, %8674
  %8676 = sext i32 %8675 to i64
  %8677 = getelementptr inbounds double, ptr %8671, i64 %8676
  %8678 = load double, ptr %8677, align 8, !tbaa !11
  %8679 = call double @llvm.fmuladd.f64(double 0x3F938CE4890DB313, double %8678, double %8670)
  %8680 = load ptr, ptr %7, align 8, !tbaa !9
  %8681 = load i32, ptr %12, align 4, !tbaa !5
  %8682 = load i32, ptr %8, align 4, !tbaa !5
  %8683 = mul nsw i32 13, %8682
  %8684 = add nsw i32 %8681, %8683
  %8685 = sext i32 %8684 to i64
  %8686 = getelementptr inbounds double, ptr %8680, i64 %8685
  %8687 = load double, ptr %8686, align 8, !tbaa !11
  %8688 = call double @llvm.fmuladd.f64(double 0x3FF4EC1BB3FDC612, double %8687, double %8679)
  %8689 = load ptr, ptr %7, align 8, !tbaa !9
  %8690 = load i32, ptr %12, align 4, !tbaa !5
  %8691 = load i32, ptr %8, align 4, !tbaa !5
  %8692 = mul nsw i32 14, %8691
  %8693 = add nsw i32 %8690, %8692
  %8694 = sext i32 %8693 to i64
  %8695 = getelementptr inbounds double, ptr %8689, i64 %8694
  %8696 = load double, ptr %8695, align 8, !tbaa !11
  %8697 = call double @llvm.fmuladd.f64(double 0x3F85E50BB681A431, double %8696, double %8688)
  %8698 = load ptr, ptr %7, align 8, !tbaa !9
  %8699 = load i32, ptr %12, align 4, !tbaa !5
  %8700 = load i32, ptr %8, align 4, !tbaa !5
  %8701 = mul nsw i32 15, %8700
  %8702 = add nsw i32 %8699, %8701
  %8703 = sext i32 %8702 to i64
  %8704 = getelementptr inbounds double, ptr %8698, i64 %8703
  %8705 = load double, ptr %8704, align 8, !tbaa !11
  %8706 = call double @llvm.fmuladd.f64(double 0xBFE5679E70A60658, double %8705, double %8697)
  %8707 = load ptr, ptr %7, align 8, !tbaa !9
  %8708 = load i32, ptr %12, align 4, !tbaa !5
  %8709 = load i32, ptr %8, align 4, !tbaa !5
  %8710 = mul nsw i32 16, %8709
  %8711 = add nsw i32 %8708, %8710
  %8712 = sext i32 %8711 to i64
  %8713 = getelementptr inbounds double, ptr %8707, i64 %8712
  %8714 = load double, ptr %8713, align 8, !tbaa !11
  %8715 = call double @llvm.fmuladd.f64(double 0x3FCA50C41AB7A337, double %8714, double %8706)
  %8716 = load ptr, ptr %7, align 8, !tbaa !9
  %8717 = load i32, ptr %12, align 4, !tbaa !5
  %8718 = load i32, ptr %8, align 4, !tbaa !5
  %8719 = mul nsw i32 17, %8718
  %8720 = add nsw i32 %8717, %8719
  %8721 = sext i32 %8720 to i64
  %8722 = getelementptr inbounds double, ptr %8716, i64 %8721
  %8723 = load double, ptr %8722, align 8, !tbaa !11
  %8724 = call double @llvm.fmuladd.f64(double 0xBFB49217631F5956, double %8723, double %8715)
  %8725 = load ptr, ptr %7, align 8, !tbaa !9
  %8726 = load i32, ptr %12, align 4, !tbaa !5
  %8727 = load i32, ptr %8, align 4, !tbaa !5
  %8728 = mul nsw i32 18, %8727
  %8729 = add nsw i32 %8726, %8728
  %8730 = sext i32 %8729 to i64
  %8731 = getelementptr inbounds double, ptr %8725, i64 %8730
  %8732 = load double, ptr %8731, align 8, !tbaa !11
  %8733 = call double @llvm.fmuladd.f64(double 0x3FD417DEBFC17B18, double %8732, double %8724)
  %8734 = load ptr, ptr %7, align 8, !tbaa !9
  %8735 = load i32, ptr %12, align 4, !tbaa !5
  %8736 = load i32, ptr %8, align 4, !tbaa !5
  %8737 = mul nsw i32 19, %8736
  %8738 = add nsw i32 %8735, %8737
  %8739 = sext i32 %8738 to i64
  %8740 = getelementptr inbounds double, ptr %8734, i64 %8739
  %8741 = load double, ptr %8740, align 8, !tbaa !11
  %8742 = call double @llvm.fmuladd.f64(double 0xBF8BDAF699AECFC1, double %8741, double %8733)
  %8743 = load ptr, ptr %7, align 8, !tbaa !9
  %8744 = load i32, ptr %12, align 4, !tbaa !5
  %8745 = load i32, ptr %8, align 4, !tbaa !5
  %8746 = mul nsw i32 20, %8745
  %8747 = add nsw i32 %8744, %8746
  %8748 = sext i32 %8747 to i64
  %8749 = getelementptr inbounds double, ptr %8743, i64 %8748
  %8750 = load double, ptr %8749, align 8, !tbaa !11
  %8751 = call double @llvm.fmuladd.f64(double 0x3CA8000000000001, double %8750, double %8742)
  %8752 = load ptr, ptr %7, align 8, !tbaa !9
  %8753 = load i32, ptr %12, align 4, !tbaa !5
  %8754 = load i32, ptr %8, align 4, !tbaa !5
  %8755 = mul nsw i32 21, %8754
  %8756 = add nsw i32 %8753, %8755
  %8757 = sext i32 %8756 to i64
  %8758 = getelementptr inbounds double, ptr %8752, i64 %8757
  %8759 = load double, ptr %8758, align 8, !tbaa !11
  %8760 = call double @llvm.fmuladd.f64(double 0xBC70000000000001, double %8759, double %8751)
  %8761 = load ptr, ptr %7, align 8, !tbaa !9
  %8762 = load i32, ptr %12, align 4, !tbaa !5
  %8763 = load i32, ptr %8, align 4, !tbaa !5
  %8764 = mul nsw i32 22, %8763
  %8765 = add nsw i32 %8762, %8764
  %8766 = sext i32 %8765 to i64
  %8767 = getelementptr inbounds double, ptr %8761, i64 %8766
  %8768 = load double, ptr %8767, align 8, !tbaa !11
  %8769 = call double @llvm.fmuladd.f64(double 0x3C86000000000001, double %8768, double %8760)
  %8770 = load ptr, ptr %7, align 8, !tbaa !9
  %8771 = load i32, ptr %12, align 4, !tbaa !5
  %8772 = load i32, ptr %8, align 4, !tbaa !5
  %8773 = mul nsw i32 23, %8772
  %8774 = add nsw i32 %8771, %8773
  %8775 = sext i32 %8774 to i64
  %8776 = getelementptr inbounds double, ptr %8770, i64 %8775
  %8777 = load double, ptr %8776, align 8, !tbaa !11
  %8778 = call double @llvm.fmuladd.f64(double 0xBCB1800000000000, double %8777, double %8769)
  %8779 = load ptr, ptr %7, align 8, !tbaa !9
  %8780 = load i32, ptr %12, align 4, !tbaa !5
  %8781 = load i32, ptr %8, align 4, !tbaa !5
  %8782 = mul nsw i32 24, %8781
  %8783 = add nsw i32 %8780, %8782
  %8784 = sext i32 %8783 to i64
  %8785 = getelementptr inbounds double, ptr %8779, i64 %8784
  %8786 = load double, ptr %8785, align 8, !tbaa !11
  %8787 = call double @llvm.fmuladd.f64(double 0x3CA5FFFFFFFFFFFF, double %8786, double %8778)
  %8788 = load ptr, ptr %7, align 8, !tbaa !9
  %8789 = load i32, ptr %12, align 4, !tbaa !5
  %8790 = load i32, ptr %8, align 4, !tbaa !5
  %8791 = mul nsw i32 25, %8790
  %8792 = add nsw i32 %8789, %8791
  %8793 = sext i32 %8792 to i64
  %8794 = getelementptr inbounds double, ptr %8788, i64 %8793
  %8795 = load double, ptr %8794, align 8, !tbaa !11
  %8796 = call double @llvm.fmuladd.f64(double 0xBC70000000000001, double %8795, double %8787)
  %8797 = load ptr, ptr %7, align 8, !tbaa !9
  %8798 = load i32, ptr %12, align 4, !tbaa !5
  %8799 = load i32, ptr %8, align 4, !tbaa !5
  %8800 = mul nsw i32 26, %8799
  %8801 = add nsw i32 %8798, %8800
  %8802 = sext i32 %8801 to i64
  %8803 = getelementptr inbounds double, ptr %8797, i64 %8802
  %8804 = load double, ptr %8803, align 8, !tbaa !11
  %8805 = call double @llvm.fmuladd.f64(double 0xBCA8000000000001, double %8804, double %8796)
  %8806 = load ptr, ptr %7, align 8, !tbaa !9
  %8807 = load i32, ptr %12, align 4, !tbaa !5
  %8808 = load i32, ptr %8, align 4, !tbaa !5
  %8809 = mul nsw i32 27, %8808
  %8810 = add nsw i32 %8807, %8809
  %8811 = sext i32 %8810 to i64
  %8812 = getelementptr inbounds double, ptr %8806, i64 %8811
  %8813 = load double, ptr %8812, align 8, !tbaa !11
  %8814 = call double @llvm.fmuladd.f64(double 0xBC78000000000002, double %8813, double %8805)
  %8815 = load ptr, ptr %7, align 8, !tbaa !9
  %8816 = load i32, ptr %12, align 4, !tbaa !5
  %8817 = load i32, ptr %8, align 4, !tbaa !5
  %8818 = mul nsw i32 28, %8817
  %8819 = add nsw i32 %8816, %8818
  %8820 = sext i32 %8819 to i64
  %8821 = getelementptr inbounds double, ptr %8815, i64 %8820
  %8822 = load double, ptr %8821, align 8, !tbaa !11
  %8823 = call double @llvm.fmuladd.f64(double 0x3CAC000000000000, double %8822, double %8814)
  %8824 = load ptr, ptr %7, align 8, !tbaa !9
  %8825 = load i32, ptr %12, align 4, !tbaa !5
  %8826 = load i32, ptr %8, align 4, !tbaa !5
  %8827 = mul nsw i32 29, %8826
  %8828 = add nsw i32 %8825, %8827
  %8829 = sext i32 %8828 to i64
  %8830 = getelementptr inbounds double, ptr %8824, i64 %8829
  %8831 = load double, ptr %8830, align 8, !tbaa !11
  %8832 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %8831, double %8823)
  %8833 = load ptr, ptr %7, align 8, !tbaa !9
  %8834 = load i32, ptr %12, align 4, !tbaa !5
  %8835 = load i32, ptr %8, align 4, !tbaa !5
  %8836 = mul nsw i32 30, %8835
  %8837 = add nsw i32 %8834, %8836
  %8838 = sext i32 %8837 to i64
  %8839 = getelementptr inbounds double, ptr %8833, i64 %8838
  %8840 = load double, ptr %8839, align 8, !tbaa !11
  %8841 = call double @llvm.fmuladd.f64(double 0xBCA1000000000001, double %8840, double %8832)
  %8842 = load ptr, ptr %7, align 8, !tbaa !9
  %8843 = load i32, ptr %12, align 4, !tbaa !5
  %8844 = load i32, ptr %8, align 4, !tbaa !5
  %8845 = mul nsw i32 31, %8844
  %8846 = add nsw i32 %8843, %8845
  %8847 = sext i32 %8846 to i64
  %8848 = getelementptr inbounds double, ptr %8842, i64 %8847
  %8849 = load double, ptr %8848, align 8, !tbaa !11
  %8850 = call double @llvm.fmuladd.f64(double 0xBC70000000000001, double %8849, double %8841)
  %8851 = load ptr, ptr %7, align 8, !tbaa !9
  %8852 = load i32, ptr %12, align 4, !tbaa !5
  %8853 = load i32, ptr %8, align 4, !tbaa !5
  %8854 = mul nsw i32 32, %8853
  %8855 = add nsw i32 %8852, %8854
  %8856 = sext i32 %8855 to i64
  %8857 = getelementptr inbounds double, ptr %8851, i64 %8856
  %8858 = load double, ptr %8857, align 8, !tbaa !11
  %8859 = call double @llvm.fmuladd.f64(double 0xBC67FFFFFFFFFFFE, double %8858, double %8850)
  %8860 = load ptr, ptr %7, align 8, !tbaa !9
  %8861 = load i32, ptr %12, align 4, !tbaa !5
  %8862 = load i32, ptr %8, align 4, !tbaa !5
  %8863 = mul nsw i32 33, %8862
  %8864 = add nsw i32 %8861, %8863
  %8865 = sext i32 %8864 to i64
  %8866 = getelementptr inbounds double, ptr %8860, i64 %8865
  %8867 = load double, ptr %8866, align 8, !tbaa !11
  %8868 = call double @llvm.fmuladd.f64(double 0x3CAFC00000000000, double %8867, double %8859)
  %8869 = load ptr, ptr %7, align 8, !tbaa !9
  %8870 = load i32, ptr %12, align 4, !tbaa !5
  %8871 = load i32, ptr %8, align 4, !tbaa !5
  %8872 = mul nsw i32 34, %8871
  %8873 = add nsw i32 %8870, %8872
  %8874 = sext i32 %8873 to i64
  %8875 = getelementptr inbounds double, ptr %8869, i64 %8874
  %8876 = load double, ptr %8875, align 8, !tbaa !11
  %8877 = call double @llvm.fmuladd.f64(double 0xBC92000000000000, double %8876, double %8868)
  %8878 = load ptr, ptr %7, align 8, !tbaa !9
  %8879 = load i32, ptr %12, align 4, !tbaa !5
  %8880 = load i32, ptr %8, align 4, !tbaa !5
  %8881 = mul nsw i32 36, %8880
  %8882 = add nsw i32 %8879, %8881
  %8883 = sext i32 %8882 to i64
  %8884 = getelementptr inbounds double, ptr %8878, i64 %8883
  %8885 = load double, ptr %8884, align 8, !tbaa !11
  %8886 = call double @llvm.fmuladd.f64(double 0x3C89FFFFFFFFFFFF, double %8885, double %8877)
  %8887 = load ptr, ptr %7, align 8, !tbaa !9
  %8888 = load i32, ptr %12, align 4, !tbaa !5
  %8889 = load i32, ptr %8, align 4, !tbaa !5
  %8890 = mul nsw i32 37, %8889
  %8891 = add nsw i32 %8888, %8890
  %8892 = sext i32 %8891 to i64
  %8893 = getelementptr inbounds double, ptr %8887, i64 %8892
  %8894 = load double, ptr %8893, align 8, !tbaa !11
  %8895 = call double @llvm.fmuladd.f64(double 0xBCAE000000000002, double %8894, double %8886)
  %8896 = load ptr, ptr %7, align 8, !tbaa !9
  %8897 = load i32, ptr %12, align 4, !tbaa !5
  %8898 = load i32, ptr %8, align 4, !tbaa !5
  %8899 = mul nsw i32 39, %8898
  %8900 = add nsw i32 %8897, %8899
  %8901 = sext i32 %8900 to i64
  %8902 = getelementptr inbounds double, ptr %8896, i64 %8901
  %8903 = load double, ptr %8902, align 8, !tbaa !11
  %8904 = call double @llvm.fmuladd.f64(double 0xBC84000000000000, double %8903, double %8895)
  store double %8904, ptr %11, align 8, !tbaa !11
  %8905 = load double, ptr %11, align 8, !tbaa !11
  %8906 = load ptr, ptr %9, align 8, !tbaa !9
  %8907 = load i32, ptr %12, align 4, !tbaa !5
  %8908 = load i32, ptr %10, align 4, !tbaa !5
  %8909 = mul nsw i32 24, %8908
  %8910 = add nsw i32 %8907, %8909
  %8911 = sext i32 %8910 to i64
  %8912 = getelementptr inbounds double, ptr %8906, i64 %8911
  store double %8905, ptr %8912, align 8, !tbaa !11
  %8913 = load ptr, ptr %7, align 8, !tbaa !9
  %8914 = load i32, ptr %12, align 4, !tbaa !5
  %8915 = load i32, ptr %8, align 4, !tbaa !5
  %8916 = mul nsw i32 0, %8915
  %8917 = add nsw i32 %8914, %8916
  %8918 = sext i32 %8917 to i64
  %8919 = getelementptr inbounds double, ptr %8913, i64 %8918
  %8920 = load double, ptr %8919, align 8, !tbaa !11
  %8921 = load ptr, ptr %7, align 8, !tbaa !9
  %8922 = load i32, ptr %12, align 4, !tbaa !5
  %8923 = load i32, ptr %8, align 4, !tbaa !5
  %8924 = mul nsw i32 1, %8923
  %8925 = add nsw i32 %8922, %8924
  %8926 = sext i32 %8925 to i64
  %8927 = getelementptr inbounds double, ptr %8921, i64 %8926
  %8928 = load double, ptr %8927, align 8, !tbaa !11
  %8929 = fmul double 0xBC60000000000000, %8928
  %8930 = call double @llvm.fmuladd.f64(double 0x3CC2400000000000, double %8920, double %8929)
  %8931 = load ptr, ptr %7, align 8, !tbaa !9
  %8932 = load i32, ptr %12, align 4, !tbaa !5
  %8933 = load i32, ptr %8, align 4, !tbaa !5
  %8934 = mul nsw i32 2, %8933
  %8935 = add nsw i32 %8932, %8934
  %8936 = sext i32 %8935 to i64
  %8937 = getelementptr inbounds double, ptr %8931, i64 %8936
  %8938 = load double, ptr %8937, align 8, !tbaa !11
  %8939 = call double @llvm.fmuladd.f64(double 0xBC9E3FFFFFFFFFFE, double %8938, double %8930)
  %8940 = load ptr, ptr %7, align 8, !tbaa !9
  %8941 = load i32, ptr %12, align 4, !tbaa !5
  %8942 = load i32, ptr %8, align 4, !tbaa !5
  %8943 = mul nsw i32 3, %8942
  %8944 = add nsw i32 %8941, %8943
  %8945 = sext i32 %8944 to i64
  %8946 = getelementptr inbounds double, ptr %8940, i64 %8945
  %8947 = load double, ptr %8946, align 8, !tbaa !11
  %8948 = call double @llvm.fmuladd.f64(double 0x3CA65FFFFFFFFFFF, double %8947, double %8939)
  %8949 = load ptr, ptr %7, align 8, !tbaa !9
  %8950 = load i32, ptr %12, align 4, !tbaa !5
  %8951 = load i32, ptr %8, align 4, !tbaa !5
  %8952 = mul nsw i32 4, %8951
  %8953 = add nsw i32 %8950, %8952
  %8954 = sext i32 %8953 to i64
  %8955 = getelementptr inbounds double, ptr %8949, i64 %8954
  %8956 = load double, ptr %8955, align 8, !tbaa !11
  %8957 = call double @llvm.fmuladd.f64(double 0x3C8E000000000000, double %8956, double %8948)
  %8958 = load ptr, ptr %7, align 8, !tbaa !9
  %8959 = load i32, ptr %12, align 4, !tbaa !5
  %8960 = load i32, ptr %8, align 4, !tbaa !5
  %8961 = mul nsw i32 5, %8960
  %8962 = add nsw i32 %8959, %8961
  %8963 = sext i32 %8962 to i64
  %8964 = getelementptr inbounds double, ptr %8958, i64 %8963
  %8965 = load double, ptr %8964, align 8, !tbaa !11
  %8966 = call double @llvm.fmuladd.f64(double 0x3C91000000000000, double %8965, double %8957)
  %8967 = load ptr, ptr %7, align 8, !tbaa !9
  %8968 = load i32, ptr %12, align 4, !tbaa !5
  %8969 = load i32, ptr %8, align 4, !tbaa !5
  %8970 = mul nsw i32 6, %8969
  %8971 = add nsw i32 %8968, %8970
  %8972 = sext i32 %8971 to i64
  %8973 = getelementptr inbounds double, ptr %8967, i64 %8972
  %8974 = load double, ptr %8973, align 8, !tbaa !11
  %8975 = call double @llvm.fmuladd.f64(double 0xBCC6700000000000, double %8974, double %8966)
  %8976 = load ptr, ptr %7, align 8, !tbaa !9
  %8977 = load i32, ptr %12, align 4, !tbaa !5
  %8978 = load i32, ptr %8, align 4, !tbaa !5
  %8979 = mul nsw i32 7, %8978
  %8980 = add nsw i32 %8977, %8979
  %8981 = sext i32 %8980 to i64
  %8982 = getelementptr inbounds double, ptr %8976, i64 %8981
  %8983 = load double, ptr %8982, align 8, !tbaa !11
  %8984 = call double @llvm.fmuladd.f64(double 0xBCB23FFFFFFFFFFF, double %8983, double %8975)
  %8985 = load ptr, ptr %7, align 8, !tbaa !9
  %8986 = load i32, ptr %12, align 4, !tbaa !5
  %8987 = load i32, ptr %8, align 4, !tbaa !5
  %8988 = mul nsw i32 8, %8987
  %8989 = add nsw i32 %8986, %8988
  %8990 = sext i32 %8989 to i64
  %8991 = getelementptr inbounds double, ptr %8985, i64 %8990
  %8992 = load double, ptr %8991, align 8, !tbaa !11
  %8993 = call double @llvm.fmuladd.f64(double 0xBC60000000000000, double %8992, double %8984)
  %8994 = load ptr, ptr %7, align 8, !tbaa !9
  %8995 = load i32, ptr %12, align 4, !tbaa !5
  %8996 = load i32, ptr %8, align 4, !tbaa !5
  %8997 = mul nsw i32 9, %8996
  %8998 = add nsw i32 %8995, %8997
  %8999 = sext i32 %8998 to i64
  %9000 = getelementptr inbounds double, ptr %8994, i64 %8999
  %9001 = load double, ptr %9000, align 8, !tbaa !11
  %9002 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %9001, double %8993)
  %9003 = load ptr, ptr %7, align 8, !tbaa !9
  %9004 = load i32, ptr %12, align 4, !tbaa !5
  %9005 = load i32, ptr %8, align 4, !tbaa !5
  %9006 = mul nsw i32 10, %9005
  %9007 = add nsw i32 %9004, %9006
  %9008 = sext i32 %9007 to i64
  %9009 = getelementptr inbounds double, ptr %9003, i64 %9008
  %9010 = load double, ptr %9009, align 8, !tbaa !11
  %9011 = call double @llvm.fmuladd.f64(double 0xBFE333710B32A29F, double %9010, double %9002)
  %9012 = load ptr, ptr %7, align 8, !tbaa !9
  %9013 = load i32, ptr %12, align 4, !tbaa !5
  %9014 = load i32, ptr %8, align 4, !tbaa !5
  %9015 = mul nsw i32 11, %9014
  %9016 = add nsw i32 %9013, %9015
  %9017 = sext i32 %9016 to i64
  %9018 = getelementptr inbounds double, ptr %9012, i64 %9017
  %9019 = load double, ptr %9018, align 8, !tbaa !11
  %9020 = call double @llvm.fmuladd.f64(double 0xBFBEED13A9F0D8EC, double %9019, double %9011)
  %9021 = load ptr, ptr %7, align 8, !tbaa !9
  %9022 = load i32, ptr %12, align 4, !tbaa !5
  %9023 = load i32, ptr %8, align 4, !tbaa !5
  %9024 = mul nsw i32 12, %9023
  %9025 = add nsw i32 %9022, %9024
  %9026 = sext i32 %9025 to i64
  %9027 = getelementptr inbounds double, ptr %9021, i64 %9026
  %9028 = load double, ptr %9027, align 8, !tbaa !11
  %9029 = call double @llvm.fmuladd.f64(double 0xBFA352D4DB969C1F, double %9028, double %9020)
  %9030 = load ptr, ptr %7, align 8, !tbaa !9
  %9031 = load i32, ptr %12, align 4, !tbaa !5
  %9032 = load i32, ptr %8, align 4, !tbaa !5
  %9033 = mul nsw i32 13, %9032
  %9034 = add nsw i32 %9031, %9033
  %9035 = sext i32 %9034 to i64
  %9036 = getelementptr inbounds double, ptr %9030, i64 %9035
  %9037 = load double, ptr %9036, align 8, !tbaa !11
  %9038 = call double @llvm.fmuladd.f64(double 0x3FA87D7643548540, double %9037, double %9029)
  %9039 = load ptr, ptr %7, align 8, !tbaa !9
  %9040 = load i32, ptr %12, align 4, !tbaa !5
  %9041 = load i32, ptr %8, align 4, !tbaa !5
  %9042 = mul nsw i32 14, %9041
  %9043 = add nsw i32 %9040, %9042
  %9044 = sext i32 %9043 to i64
  %9045 = getelementptr inbounds double, ptr %9039, i64 %9044
  %9046 = load double, ptr %9045, align 8, !tbaa !11
  %9047 = call double @llvm.fmuladd.f64(double 0x3F9854E0ADA34B70, double %9046, double %9038)
  %9048 = load ptr, ptr %7, align 8, !tbaa !9
  %9049 = load i32, ptr %12, align 4, !tbaa !5
  %9050 = load i32, ptr %8, align 4, !tbaa !5
  %9051 = mul nsw i32 15, %9050
  %9052 = add nsw i32 %9049, %9051
  %9053 = sext i32 %9052 to i64
  %9054 = getelementptr inbounds double, ptr %9048, i64 %9053
  %9055 = load double, ptr %9054, align 8, !tbaa !11
  %9056 = call double @llvm.fmuladd.f64(double 0xBFD41C0D131D4297, double %9055, double %9047)
  %9057 = load ptr, ptr %7, align 8, !tbaa !9
  %9058 = load i32, ptr %12, align 4, !tbaa !5
  %9059 = load i32, ptr %8, align 4, !tbaa !5
  %9060 = mul nsw i32 16, %9059
  %9061 = add nsw i32 %9058, %9060
  %9062 = sext i32 %9061 to i64
  %9063 = getelementptr inbounds double, ptr %9057, i64 %9062
  %9064 = load double, ptr %9063, align 8, !tbaa !11
  %9065 = call double @llvm.fmuladd.f64(double 0x3FF670C5F1F4C92E, double %9064, double %9056)
  %9066 = load ptr, ptr %7, align 8, !tbaa !9
  %9067 = load i32, ptr %12, align 4, !tbaa !5
  %9068 = load i32, ptr %8, align 4, !tbaa !5
  %9069 = mul nsw i32 17, %9068
  %9070 = add nsw i32 %9067, %9069
  %9071 = sext i32 %9070 to i64
  %9072 = getelementptr inbounds double, ptr %9066, i64 %9071
  %9073 = load double, ptr %9072, align 8, !tbaa !11
  %9074 = call double @llvm.fmuladd.f64(double 0x3FC36A9134CD3C66, double %9073, double %9065)
  %9075 = load ptr, ptr %7, align 8, !tbaa !9
  %9076 = load i32, ptr %12, align 4, !tbaa !5
  %9077 = load i32, ptr %8, align 4, !tbaa !5
  %9078 = mul nsw i32 18, %9077
  %9079 = add nsw i32 %9076, %9078
  %9080 = sext i32 %9079 to i64
  %9081 = getelementptr inbounds double, ptr %9075, i64 %9080
  %9082 = load double, ptr %9081, align 8, !tbaa !11
  %9083 = call double @llvm.fmuladd.f64(double 0x3FD35DAE88CBA648, double %9082, double %9074)
  %9084 = load ptr, ptr %7, align 8, !tbaa !9
  %9085 = load i32, ptr %12, align 4, !tbaa !5
  %9086 = load i32, ptr %8, align 4, !tbaa !5
  %9087 = mul nsw i32 19, %9086
  %9088 = add nsw i32 %9085, %9087
  %9089 = sext i32 %9088 to i64
  %9090 = getelementptr inbounds double, ptr %9084, i64 %9089
  %9091 = load double, ptr %9090, align 8, !tbaa !11
  %9092 = call double @llvm.fmuladd.f64(double 0x3FC27B05E24EC5F4, double %9091, double %9083)
  %9093 = load ptr, ptr %7, align 8, !tbaa !9
  %9094 = load i32, ptr %12, align 4, !tbaa !5
  %9095 = load i32, ptr %8, align 4, !tbaa !5
  %9096 = mul nsw i32 20, %9095
  %9097 = add nsw i32 %9094, %9096
  %9098 = sext i32 %9097 to i64
  %9099 = getelementptr inbounds double, ptr %9093, i64 %9098
  %9100 = load double, ptr %9099, align 8, !tbaa !11
  %9101 = call double @llvm.fmuladd.f64(double 0x3CC1000000000000, double %9100, double %9092)
  %9102 = load ptr, ptr %7, align 8, !tbaa !9
  %9103 = load i32, ptr %12, align 4, !tbaa !5
  %9104 = load i32, ptr %8, align 4, !tbaa !5
  %9105 = mul nsw i32 21, %9104
  %9106 = add nsw i32 %9103, %9105
  %9107 = sext i32 %9106 to i64
  %9108 = getelementptr inbounds double, ptr %9102, i64 %9107
  %9109 = load double, ptr %9108, align 8, !tbaa !11
  %9110 = call double @llvm.fmuladd.f64(double 0xBCA2000000000000, double %9109, double %9101)
  %9111 = load ptr, ptr %7, align 8, !tbaa !9
  %9112 = load i32, ptr %12, align 4, !tbaa !5
  %9113 = load i32, ptr %8, align 4, !tbaa !5
  %9114 = mul nsw i32 22, %9113
  %9115 = add nsw i32 %9112, %9114
  %9116 = sext i32 %9115 to i64
  %9117 = getelementptr inbounds double, ptr %9111, i64 %9116
  %9118 = load double, ptr %9117, align 8, !tbaa !11
  %9119 = call double @llvm.fmuladd.f64(double 0x3C7C000000000000, double %9118, double %9110)
  %9120 = load ptr, ptr %7, align 8, !tbaa !9
  %9121 = load i32, ptr %12, align 4, !tbaa !5
  %9122 = load i32, ptr %8, align 4, !tbaa !5
  %9123 = mul nsw i32 23, %9122
  %9124 = add nsw i32 %9121, %9123
  %9125 = sext i32 %9124 to i64
  %9126 = getelementptr inbounds double, ptr %9120, i64 %9125
  %9127 = load double, ptr %9126, align 8, !tbaa !11
  %9128 = call double @llvm.fmuladd.f64(double 0xBCAF800000000000, double %9127, double %9119)
  %9129 = load ptr, ptr %7, align 8, !tbaa !9
  %9130 = load i32, ptr %12, align 4, !tbaa !5
  %9131 = load i32, ptr %8, align 4, !tbaa !5
  %9132 = mul nsw i32 24, %9131
  %9133 = add nsw i32 %9130, %9132
  %9134 = sext i32 %9133 to i64
  %9135 = getelementptr inbounds double, ptr %9129, i64 %9134
  %9136 = load double, ptr %9135, align 8, !tbaa !11
  %9137 = call double @llvm.fmuladd.f64(double 0x3CA0000000000002, double %9136, double %9128)
  %9138 = load ptr, ptr %7, align 8, !tbaa !9
  %9139 = load i32, ptr %12, align 4, !tbaa !5
  %9140 = load i32, ptr %8, align 4, !tbaa !5
  %9141 = mul nsw i32 25, %9140
  %9142 = add nsw i32 %9139, %9141
  %9143 = sext i32 %9142 to i64
  %9144 = getelementptr inbounds double, ptr %9138, i64 %9143
  %9145 = load double, ptr %9144, align 8, !tbaa !11
  %9146 = call double @llvm.fmuladd.f64(double 0xBC88000000000000, double %9145, double %9137)
  %9147 = load ptr, ptr %7, align 8, !tbaa !9
  %9148 = load i32, ptr %12, align 4, !tbaa !5
  %9149 = load i32, ptr %8, align 4, !tbaa !5
  %9150 = mul nsw i32 26, %9149
  %9151 = add nsw i32 %9148, %9150
  %9152 = sext i32 %9151 to i64
  %9153 = getelementptr inbounds double, ptr %9147, i64 %9152
  %9154 = load double, ptr %9153, align 8, !tbaa !11
  %9155 = call double @llvm.fmuladd.f64(double 0x3C95000000000000, double %9154, double %9146)
  %9156 = load ptr, ptr %7, align 8, !tbaa !9
  %9157 = load i32, ptr %12, align 4, !tbaa !5
  %9158 = load i32, ptr %8, align 4, !tbaa !5
  %9159 = mul nsw i32 27, %9158
  %9160 = add nsw i32 %9157, %9159
  %9161 = sext i32 %9160 to i64
  %9162 = getelementptr inbounds double, ptr %9156, i64 %9161
  %9163 = load double, ptr %9162, align 8, !tbaa !11
  %9164 = call double @llvm.fmuladd.f64(double 0xBCA0800000000001, double %9163, double %9155)
  %9165 = load ptr, ptr %7, align 8, !tbaa !9
  %9166 = load i32, ptr %12, align 4, !tbaa !5
  %9167 = load i32, ptr %8, align 4, !tbaa !5
  %9168 = mul nsw i32 28, %9167
  %9169 = add nsw i32 %9166, %9168
  %9170 = sext i32 %9169 to i64
  %9171 = getelementptr inbounds double, ptr %9165, i64 %9170
  %9172 = load double, ptr %9171, align 8, !tbaa !11
  %9173 = call double @llvm.fmuladd.f64(double 0x3C98000000000000, double %9172, double %9164)
  %9174 = load ptr, ptr %7, align 8, !tbaa !9
  %9175 = load i32, ptr %12, align 4, !tbaa !5
  %9176 = load i32, ptr %8, align 4, !tbaa !5
  %9177 = mul nsw i32 30, %9176
  %9178 = add nsw i32 %9175, %9177
  %9179 = sext i32 %9178 to i64
  %9180 = getelementptr inbounds double, ptr %9174, i64 %9179
  %9181 = load double, ptr %9180, align 8, !tbaa !11
  %9182 = call double @llvm.fmuladd.f64(double 0xBCA7000000000002, double %9181, double %9173)
  %9183 = load ptr, ptr %7, align 8, !tbaa !9
  %9184 = load i32, ptr %12, align 4, !tbaa !5
  %9185 = load i32, ptr %8, align 4, !tbaa !5
  %9186 = mul nsw i32 31, %9185
  %9187 = add nsw i32 %9184, %9186
  %9188 = sext i32 %9187 to i64
  %9189 = getelementptr inbounds double, ptr %9183, i64 %9188
  %9190 = load double, ptr %9189, align 8, !tbaa !11
  %9191 = call double @llvm.fmuladd.f64(double 0xBC8C000000000000, double %9190, double %9182)
  %9192 = load ptr, ptr %7, align 8, !tbaa !9
  %9193 = load i32, ptr %12, align 4, !tbaa !5
  %9194 = load i32, ptr %8, align 4, !tbaa !5
  %9195 = mul nsw i32 32, %9194
  %9196 = add nsw i32 %9193, %9195
  %9197 = sext i32 %9196 to i64
  %9198 = getelementptr inbounds double, ptr %9192, i64 %9197
  %9199 = load double, ptr %9198, align 8, !tbaa !11
  %9200 = call double @llvm.fmuladd.f64(double 0x3C94800000000000, double %9199, double %9191)
  %9201 = load ptr, ptr %7, align 8, !tbaa !9
  %9202 = load i32, ptr %12, align 4, !tbaa !5
  %9203 = load i32, ptr %8, align 4, !tbaa !5
  %9204 = mul nsw i32 33, %9203
  %9205 = add nsw i32 %9202, %9204
  %9206 = sext i32 %9205 to i64
  %9207 = getelementptr inbounds double, ptr %9201, i64 %9206
  %9208 = load double, ptr %9207, align 8, !tbaa !11
  %9209 = call double @llvm.fmuladd.f64(double 0x3C99000000000000, double %9208, double %9200)
  %9210 = load ptr, ptr %7, align 8, !tbaa !9
  %9211 = load i32, ptr %12, align 4, !tbaa !5
  %9212 = load i32, ptr %8, align 4, !tbaa !5
  %9213 = mul nsw i32 34, %9212
  %9214 = add nsw i32 %9211, %9213
  %9215 = sext i32 %9214 to i64
  %9216 = getelementptr inbounds double, ptr %9210, i64 %9215
  %9217 = load double, ptr %9216, align 8, !tbaa !11
  %9218 = call double @llvm.fmuladd.f64(double 0xBC92000000000000, double %9217, double %9209)
  %9219 = load ptr, ptr %7, align 8, !tbaa !9
  %9220 = load i32, ptr %12, align 4, !tbaa !5
  %9221 = load i32, ptr %8, align 4, !tbaa !5
  %9222 = mul nsw i32 35, %9221
  %9223 = add nsw i32 %9220, %9222
  %9224 = sext i32 %9223 to i64
  %9225 = getelementptr inbounds double, ptr %9219, i64 %9224
  %9226 = load double, ptr %9225, align 8, !tbaa !11
  %9227 = call double @llvm.fmuladd.f64(double 0xBC8E000000000000, double %9226, double %9218)
  %9228 = load ptr, ptr %7, align 8, !tbaa !9
  %9229 = load i32, ptr %12, align 4, !tbaa !5
  %9230 = load i32, ptr %8, align 4, !tbaa !5
  %9231 = mul nsw i32 36, %9230
  %9232 = add nsw i32 %9229, %9231
  %9233 = sext i32 %9232 to i64
  %9234 = getelementptr inbounds double, ptr %9228, i64 %9233
  %9235 = load double, ptr %9234, align 8, !tbaa !11
  %9236 = call double @llvm.fmuladd.f64(double 0x3CA0000000000002, double %9235, double %9227)
  %9237 = load ptr, ptr %7, align 8, !tbaa !9
  %9238 = load i32, ptr %12, align 4, !tbaa !5
  %9239 = load i32, ptr %8, align 4, !tbaa !5
  %9240 = mul nsw i32 37, %9239
  %9241 = add nsw i32 %9238, %9240
  %9242 = sext i32 %9241 to i64
  %9243 = getelementptr inbounds double, ptr %9237, i64 %9242
  %9244 = load double, ptr %9243, align 8, !tbaa !11
  %9245 = call double @llvm.fmuladd.f64(double 0xBCA23FFFFFFFFFFF, double %9244, double %9236)
  %9246 = load ptr, ptr %7, align 8, !tbaa !9
  %9247 = load i32, ptr %12, align 4, !tbaa !5
  %9248 = load i32, ptr %8, align 4, !tbaa !5
  %9249 = mul nsw i32 39, %9248
  %9250 = add nsw i32 %9247, %9249
  %9251 = sext i32 %9250 to i64
  %9252 = getelementptr inbounds double, ptr %9246, i64 %9251
  %9253 = load double, ptr %9252, align 8, !tbaa !11
  %9254 = call double @llvm.fmuladd.f64(double 0xBC84000000000000, double %9253, double %9245)
  store double %9254, ptr %11, align 8, !tbaa !11
  %9255 = load double, ptr %11, align 8, !tbaa !11
  %9256 = load ptr, ptr %9, align 8, !tbaa !9
  %9257 = load i32, ptr %12, align 4, !tbaa !5
  %9258 = load i32, ptr %10, align 4, !tbaa !5
  %9259 = mul nsw i32 25, %9258
  %9260 = add nsw i32 %9257, %9259
  %9261 = sext i32 %9260 to i64
  %9262 = getelementptr inbounds double, ptr %9256, i64 %9261
  store double %9255, ptr %9262, align 8, !tbaa !11
  %9263 = load ptr, ptr %7, align 8, !tbaa !9
  %9264 = load i32, ptr %12, align 4, !tbaa !5
  %9265 = load i32, ptr %8, align 4, !tbaa !5
  %9266 = mul nsw i32 0, %9265
  %9267 = add nsw i32 %9264, %9266
  %9268 = sext i32 %9267 to i64
  %9269 = getelementptr inbounds double, ptr %9263, i64 %9268
  %9270 = load double, ptr %9269, align 8, !tbaa !11
  %9271 = load ptr, ptr %7, align 8, !tbaa !9
  %9272 = load i32, ptr %12, align 4, !tbaa !5
  %9273 = load i32, ptr %8, align 4, !tbaa !5
  %9274 = mul nsw i32 1, %9273
  %9275 = add nsw i32 %9272, %9274
  %9276 = sext i32 %9275 to i64
  %9277 = getelementptr inbounds double, ptr %9271, i64 %9276
  %9278 = load double, ptr %9277, align 8, !tbaa !11
  %9279 = fmul double 0xBC92000000000000, %9278
  %9280 = call double @llvm.fmuladd.f64(double 0x3CC1400000000000, double %9270, double %9279)
  %9281 = load ptr, ptr %7, align 8, !tbaa !9
  %9282 = load i32, ptr %12, align 4, !tbaa !5
  %9283 = load i32, ptr %8, align 4, !tbaa !5
  %9284 = mul nsw i32 2, %9283
  %9285 = add nsw i32 %9282, %9284
  %9286 = sext i32 %9285 to i64
  %9287 = getelementptr inbounds double, ptr %9281, i64 %9286
  %9288 = load double, ptr %9287, align 8, !tbaa !11
  %9289 = call double @llvm.fmuladd.f64(double 0xBCAAA00000000002, double %9288, double %9280)
  %9290 = load ptr, ptr %7, align 8, !tbaa !9
  %9291 = load i32, ptr %12, align 4, !tbaa !5
  %9292 = load i32, ptr %8, align 4, !tbaa !5
  %9293 = mul nsw i32 3, %9292
  %9294 = add nsw i32 %9291, %9293
  %9295 = sext i32 %9294 to i64
  %9296 = getelementptr inbounds double, ptr %9290, i64 %9295
  %9297 = load double, ptr %9296, align 8, !tbaa !11
  %9298 = call double @llvm.fmuladd.f64(double 0x3C9EBFFFFFFFFFFD, double %9297, double %9289)
  %9299 = load ptr, ptr %7, align 8, !tbaa !9
  %9300 = load i32, ptr %12, align 4, !tbaa !5
  %9301 = load i32, ptr %8, align 4, !tbaa !5
  %9302 = mul nsw i32 4, %9301
  %9303 = add nsw i32 %9300, %9302
  %9304 = sext i32 %9303 to i64
  %9305 = getelementptr inbounds double, ptr %9299, i64 %9304
  %9306 = load double, ptr %9305, align 8, !tbaa !11
  %9307 = call double @llvm.fmuladd.f64(double 0x3C88000000000000, double %9306, double %9298)
  %9308 = load ptr, ptr %7, align 8, !tbaa !9
  %9309 = load i32, ptr %12, align 4, !tbaa !5
  %9310 = load i32, ptr %8, align 4, !tbaa !5
  %9311 = mul nsw i32 5, %9310
  %9312 = add nsw i32 %9309, %9311
  %9313 = sext i32 %9312 to i64
  %9314 = getelementptr inbounds double, ptr %9308, i64 %9313
  %9315 = load double, ptr %9314, align 8, !tbaa !11
  %9316 = call double @llvm.fmuladd.f64(double 0xBCAC000000000000, double %9315, double %9307)
  %9317 = load ptr, ptr %7, align 8, !tbaa !9
  %9318 = load i32, ptr %12, align 4, !tbaa !5
  %9319 = load i32, ptr %8, align 4, !tbaa !5
  %9320 = mul nsw i32 6, %9319
  %9321 = add nsw i32 %9318, %9320
  %9322 = sext i32 %9321 to i64
  %9323 = getelementptr inbounds double, ptr %9317, i64 %9322
  %9324 = load double, ptr %9323, align 8, !tbaa !11
  %9325 = call double @llvm.fmuladd.f64(double 0xBCB3200000000000, double %9324, double %9316)
  %9326 = load ptr, ptr %7, align 8, !tbaa !9
  %9327 = load i32, ptr %12, align 4, !tbaa !5
  %9328 = load i32, ptr %8, align 4, !tbaa !5
  %9329 = mul nsw i32 7, %9328
  %9330 = add nsw i32 %9327, %9329
  %9331 = sext i32 %9330 to i64
  %9332 = getelementptr inbounds double, ptr %9326, i64 %9331
  %9333 = load double, ptr %9332, align 8, !tbaa !11
  %9334 = call double @llvm.fmuladd.f64(double 0xBC74000000000000, double %9333, double %9325)
  %9335 = load ptr, ptr %7, align 8, !tbaa !9
  %9336 = load i32, ptr %12, align 4, !tbaa !5
  %9337 = load i32, ptr %8, align 4, !tbaa !5
  %9338 = mul nsw i32 8, %9337
  %9339 = add nsw i32 %9336, %9338
  %9340 = sext i32 %9339 to i64
  %9341 = getelementptr inbounds double, ptr %9335, i64 %9340
  %9342 = load double, ptr %9341, align 8, !tbaa !11
  %9343 = call double @llvm.fmuladd.f64(double 0x3C8C000000000000, double %9342, double %9334)
  %9344 = load ptr, ptr %7, align 8, !tbaa !9
  %9345 = load i32, ptr %12, align 4, !tbaa !5
  %9346 = load i32, ptr %8, align 4, !tbaa !5
  %9347 = mul nsw i32 9, %9346
  %9348 = add nsw i32 %9345, %9347
  %9349 = sext i32 %9348 to i64
  %9350 = getelementptr inbounds double, ptr %9344, i64 %9349
  %9351 = load double, ptr %9350, align 8, !tbaa !11
  %9352 = call double @llvm.fmuladd.f64(double 0xBC98000000000000, double %9351, double %9343)
  %9353 = load ptr, ptr %7, align 8, !tbaa !9
  %9354 = load i32, ptr %12, align 4, !tbaa !5
  %9355 = load i32, ptr %8, align 4, !tbaa !5
  %9356 = mul nsw i32 10, %9355
  %9357 = add nsw i32 %9354, %9356
  %9358 = sext i32 %9357 to i64
  %9359 = getelementptr inbounds double, ptr %9353, i64 %9358
  %9360 = load double, ptr %9359, align 8, !tbaa !11
  %9361 = call double @llvm.fmuladd.f64(double 0xBFE333710B32A29B, double %9360, double %9352)
  %9362 = load ptr, ptr %7, align 8, !tbaa !9
  %9363 = load i32, ptr %12, align 4, !tbaa !5
  %9364 = load i32, ptr %8, align 4, !tbaa !5
  %9365 = mul nsw i32 11, %9364
  %9366 = add nsw i32 %9363, %9365
  %9367 = sext i32 %9366 to i64
  %9368 = getelementptr inbounds double, ptr %9362, i64 %9367
  %9369 = load double, ptr %9368, align 8, !tbaa !11
  %9370 = call double @llvm.fmuladd.f64(double 0xBFBEED13A9F0D8FA, double %9369, double %9361)
  %9371 = load ptr, ptr %7, align 8, !tbaa !9
  %9372 = load i32, ptr %12, align 4, !tbaa !5
  %9373 = load i32, ptr %8, align 4, !tbaa !5
  %9374 = mul nsw i32 12, %9373
  %9375 = add nsw i32 %9372, %9374
  %9376 = sext i32 %9375 to i64
  %9377 = getelementptr inbounds double, ptr %9371, i64 %9376
  %9378 = load double, ptr %9377, align 8, !tbaa !11
  %9379 = call double @llvm.fmuladd.f64(double 0x3FA87D764354851E, double %9378, double %9370)
  %9380 = load ptr, ptr %7, align 8, !tbaa !9
  %9381 = load i32, ptr %12, align 4, !tbaa !5
  %9382 = load i32, ptr %8, align 4, !tbaa !5
  %9383 = mul nsw i32 13, %9382
  %9384 = add nsw i32 %9381, %9383
  %9385 = sext i32 %9384 to i64
  %9386 = getelementptr inbounds double, ptr %9380, i64 %9385
  %9387 = load double, ptr %9386, align 8, !tbaa !11
  %9388 = call double @llvm.fmuladd.f64(double 0xBFA352D4DB969BFC, double %9387, double %9379)
  %9389 = load ptr, ptr %7, align 8, !tbaa !9
  %9390 = load i32, ptr %12, align 4, !tbaa !5
  %9391 = load i32, ptr %8, align 4, !tbaa !5
  %9392 = mul nsw i32 14, %9391
  %9393 = add nsw i32 %9390, %9392
  %9394 = sext i32 %9393 to i64
  %9395 = getelementptr inbounds double, ptr %9389, i64 %9394
  %9396 = load double, ptr %9395, align 8, !tbaa !11
  %9397 = call double @llvm.fmuladd.f64(double 0xBFD41C0D131D428E, double %9396, double %9388)
  %9398 = load ptr, ptr %7, align 8, !tbaa !9
  %9399 = load i32, ptr %12, align 4, !tbaa !5
  %9400 = load i32, ptr %8, align 4, !tbaa !5
  %9401 = mul nsw i32 15, %9400
  %9402 = add nsw i32 %9399, %9401
  %9403 = sext i32 %9402 to i64
  %9404 = getelementptr inbounds double, ptr %9398, i64 %9403
  %9405 = load double, ptr %9404, align 8, !tbaa !11
  %9406 = call double @llvm.fmuladd.f64(double 0x3F9854E0ADA34B53, double %9405, double %9397)
  %9407 = load ptr, ptr %7, align 8, !tbaa !9
  %9408 = load i32, ptr %12, align 4, !tbaa !5
  %9409 = load i32, ptr %8, align 4, !tbaa !5
  %9410 = mul nsw i32 16, %9409
  %9411 = add nsw i32 %9408, %9410
  %9412 = sext i32 %9411 to i64
  %9413 = getelementptr inbounds double, ptr %9407, i64 %9412
  %9414 = load double, ptr %9413, align 8, !tbaa !11
  %9415 = call double @llvm.fmuladd.f64(double 0x3FC36A9134CD3C4D, double %9414, double %9406)
  %9416 = load ptr, ptr %7, align 8, !tbaa !9
  %9417 = load i32, ptr %12, align 4, !tbaa !5
  %9418 = load i32, ptr %8, align 4, !tbaa !5
  %9419 = mul nsw i32 17, %9418
  %9420 = add nsw i32 %9417, %9419
  %9421 = sext i32 %9420 to i64
  %9422 = getelementptr inbounds double, ptr %9416, i64 %9421
  %9423 = load double, ptr %9422, align 8, !tbaa !11
  %9424 = call double @llvm.fmuladd.f64(double 0x3FF670C5F1F4C92E, double %9423, double %9415)
  %9425 = load ptr, ptr %7, align 8, !tbaa !9
  %9426 = load i32, ptr %12, align 4, !tbaa !5
  %9427 = load i32, ptr %8, align 4, !tbaa !5
  %9428 = mul nsw i32 18, %9427
  %9429 = add nsw i32 %9426, %9428
  %9430 = sext i32 %9429 to i64
  %9431 = getelementptr inbounds double, ptr %9425, i64 %9430
  %9432 = load double, ptr %9431, align 8, !tbaa !11
  %9433 = call double @llvm.fmuladd.f64(double 0x3FC27B05E24EC5F8, double %9432, double %9424)
  %9434 = load ptr, ptr %7, align 8, !tbaa !9
  %9435 = load i32, ptr %12, align 4, !tbaa !5
  %9436 = load i32, ptr %8, align 4, !tbaa !5
  %9437 = mul nsw i32 19, %9436
  %9438 = add nsw i32 %9435, %9437
  %9439 = sext i32 %9438 to i64
  %9440 = getelementptr inbounds double, ptr %9434, i64 %9439
  %9441 = load double, ptr %9440, align 8, !tbaa !11
  %9442 = call double @llvm.fmuladd.f64(double 0x3FD35DAE88CBA64A, double %9441, double %9433)
  %9443 = load ptr, ptr %7, align 8, !tbaa !9
  %9444 = load i32, ptr %12, align 4, !tbaa !5
  %9445 = load i32, ptr %8, align 4, !tbaa !5
  %9446 = mul nsw i32 20, %9445
  %9447 = add nsw i32 %9444, %9446
  %9448 = sext i32 %9447 to i64
  %9449 = getelementptr inbounds double, ptr %9443, i64 %9448
  %9450 = load double, ptr %9449, align 8, !tbaa !11
  %9451 = call double @llvm.fmuladd.f64(double 0xBCB3FFFFFFFFFFFF, double %9450, double %9442)
  %9452 = load ptr, ptr %7, align 8, !tbaa !9
  %9453 = load i32, ptr %12, align 4, !tbaa !5
  %9454 = load i32, ptr %8, align 4, !tbaa !5
  %9455 = mul nsw i32 22, %9454
  %9456 = add nsw i32 %9453, %9455
  %9457 = sext i32 %9456 to i64
  %9458 = getelementptr inbounds double, ptr %9452, i64 %9457
  %9459 = load double, ptr %9458, align 8, !tbaa !11
  %9460 = call double @llvm.fmuladd.f64(double 0xBCB3C00000000000, double %9459, double %9451)
  %9461 = load ptr, ptr %7, align 8, !tbaa !9
  %9462 = load i32, ptr %12, align 4, !tbaa !5
  %9463 = load i32, ptr %8, align 4, !tbaa !5
  %9464 = mul nsw i32 23, %9463
  %9465 = add nsw i32 %9462, %9464
  %9466 = sext i32 %9465 to i64
  %9467 = getelementptr inbounds double, ptr %9461, i64 %9466
  %9468 = load double, ptr %9467, align 8, !tbaa !11
  %9469 = call double @llvm.fmuladd.f64(double 0x3CAB800000000001, double %9468, double %9460)
  %9470 = load ptr, ptr %7, align 8, !tbaa !9
  %9471 = load i32, ptr %12, align 4, !tbaa !5
  %9472 = load i32, ptr %8, align 4, !tbaa !5
  %9473 = mul nsw i32 24, %9472
  %9474 = add nsw i32 %9471, %9473
  %9475 = sext i32 %9474 to i64
  %9476 = getelementptr inbounds double, ptr %9470, i64 %9475
  %9477 = load double, ptr %9476, align 8, !tbaa !11
  %9478 = call double @llvm.fmuladd.f64(double 0x3CA8000000000001, double %9477, double %9469)
  %9479 = load ptr, ptr %7, align 8, !tbaa !9
  %9480 = load i32, ptr %12, align 4, !tbaa !5
  %9481 = load i32, ptr %8, align 4, !tbaa !5
  %9482 = mul nsw i32 25, %9481
  %9483 = add nsw i32 %9480, %9482
  %9484 = sext i32 %9483 to i64
  %9485 = getelementptr inbounds double, ptr %9479, i64 %9484
  %9486 = load double, ptr %9485, align 8, !tbaa !11
  %9487 = call double @llvm.fmuladd.f64(double 0xBCA5FFFFFFFFFFFF, double %9486, double %9478)
  %9488 = load ptr, ptr %7, align 8, !tbaa !9
  %9489 = load i32, ptr %12, align 4, !tbaa !5
  %9490 = load i32, ptr %8, align 4, !tbaa !5
  %9491 = mul nsw i32 26, %9490
  %9492 = add nsw i32 %9489, %9491
  %9493 = sext i32 %9492 to i64
  %9494 = getelementptr inbounds double, ptr %9488, i64 %9493
  %9495 = load double, ptr %9494, align 8, !tbaa !11
  %9496 = call double @llvm.fmuladd.f64(double 0x3CA3800000000002, double %9495, double %9487)
  %9497 = load ptr, ptr %7, align 8, !tbaa !9
  %9498 = load i32, ptr %12, align 4, !tbaa !5
  %9499 = load i32, ptr %8, align 4, !tbaa !5
  %9500 = mul nsw i32 27, %9499
  %9501 = add nsw i32 %9498, %9500
  %9502 = sext i32 %9501 to i64
  %9503 = getelementptr inbounds double, ptr %9497, i64 %9502
  %9504 = load double, ptr %9503, align 8, !tbaa !11
  %9505 = call double @llvm.fmuladd.f64(double 0xBC8E000000000000, double %9504, double %9496)
  %9506 = load ptr, ptr %7, align 8, !tbaa !9
  %9507 = load i32, ptr %12, align 4, !tbaa !5
  %9508 = load i32, ptr %8, align 4, !tbaa !5
  %9509 = mul nsw i32 28, %9508
  %9510 = add nsw i32 %9507, %9509
  %9511 = sext i32 %9510 to i64
  %9512 = getelementptr inbounds double, ptr %9506, i64 %9511
  %9513 = load double, ptr %9512, align 8, !tbaa !11
  %9514 = call double @llvm.fmuladd.f64(double 0x3C88000000000000, double %9513, double %9505)
  %9515 = load ptr, ptr %7, align 8, !tbaa !9
  %9516 = load i32, ptr %12, align 4, !tbaa !5
  %9517 = load i32, ptr %8, align 4, !tbaa !5
  %9518 = mul nsw i32 29, %9517
  %9519 = add nsw i32 %9516, %9518
  %9520 = sext i32 %9519 to i64
  %9521 = getelementptr inbounds double, ptr %9515, i64 %9520
  %9522 = load double, ptr %9521, align 8, !tbaa !11
  %9523 = call double @llvm.fmuladd.f64(double 0xBC70000000000001, double %9522, double %9514)
  %9524 = load ptr, ptr %7, align 8, !tbaa !9
  %9525 = load i32, ptr %12, align 4, !tbaa !5
  %9526 = load i32, ptr %8, align 4, !tbaa !5
  %9527 = mul nsw i32 30, %9526
  %9528 = add nsw i32 %9525, %9527
  %9529 = sext i32 %9528 to i64
  %9530 = getelementptr inbounds double, ptr %9524, i64 %9529
  %9531 = load double, ptr %9530, align 8, !tbaa !11
  %9532 = call double @llvm.fmuladd.f64(double 0x3CC0400000000000, double %9531, double %9523)
  %9533 = load ptr, ptr %7, align 8, !tbaa !9
  %9534 = load i32, ptr %12, align 4, !tbaa !5
  %9535 = load i32, ptr %8, align 4, !tbaa !5
  %9536 = mul nsw i32 31, %9535
  %9537 = add nsw i32 %9534, %9536
  %9538 = sext i32 %9537 to i64
  %9539 = getelementptr inbounds double, ptr %9533, i64 %9538
  %9540 = load double, ptr %9539, align 8, !tbaa !11
  %9541 = call double @llvm.fmuladd.f64(double 0xBCB27FFFFFFFFFFF, double %9540, double %9532)
  %9542 = load ptr, ptr %7, align 8, !tbaa !9
  %9543 = load i32, ptr %12, align 4, !tbaa !5
  %9544 = load i32, ptr %8, align 4, !tbaa !5
  %9545 = mul nsw i32 32, %9544
  %9546 = add nsw i32 %9543, %9545
  %9547 = sext i32 %9546 to i64
  %9548 = getelementptr inbounds double, ptr %9542, i64 %9547
  %9549 = load double, ptr %9548, align 8, !tbaa !11
  %9550 = call double @llvm.fmuladd.f64(double 0xBCA7C00000000001, double %9549, double %9541)
  %9551 = load ptr, ptr %7, align 8, !tbaa !9
  %9552 = load i32, ptr %12, align 4, !tbaa !5
  %9553 = load i32, ptr %8, align 4, !tbaa !5
  %9554 = mul nsw i32 33, %9553
  %9555 = add nsw i32 %9552, %9554
  %9556 = sext i32 %9555 to i64
  %9557 = getelementptr inbounds double, ptr %9551, i64 %9556
  %9558 = load double, ptr %9557, align 8, !tbaa !11
  %9559 = call double @llvm.fmuladd.f64(double 0x3C94000000000000, double %9558, double %9550)
  %9560 = load ptr, ptr %7, align 8, !tbaa !9
  %9561 = load i32, ptr %12, align 4, !tbaa !5
  %9562 = load i32, ptr %8, align 4, !tbaa !5
  %9563 = mul nsw i32 34, %9562
  %9564 = add nsw i32 %9561, %9563
  %9565 = sext i32 %9564 to i64
  %9566 = getelementptr inbounds double, ptr %9560, i64 %9565
  %9567 = load double, ptr %9566, align 8, !tbaa !11
  %9568 = call double @llvm.fmuladd.f64(double 0xBC91000000000000, double %9567, double %9559)
  %9569 = load ptr, ptr %7, align 8, !tbaa !9
  %9570 = load i32, ptr %12, align 4, !tbaa !5
  %9571 = load i32, ptr %8, align 4, !tbaa !5
  %9572 = mul nsw i32 35, %9571
  %9573 = add nsw i32 %9570, %9572
  %9574 = sext i32 %9573 to i64
  %9575 = getelementptr inbounds double, ptr %9569, i64 %9574
  %9576 = load double, ptr %9575, align 8, !tbaa !11
  %9577 = call double @llvm.fmuladd.f64(double 0xBC88000000000000, double %9576, double %9568)
  %9578 = load ptr, ptr %7, align 8, !tbaa !9
  %9579 = load i32, ptr %12, align 4, !tbaa !5
  %9580 = load i32, ptr %8, align 4, !tbaa !5
  %9581 = mul nsw i32 36, %9580
  %9582 = add nsw i32 %9579, %9581
  %9583 = sext i32 %9582 to i64
  %9584 = getelementptr inbounds double, ptr %9578, i64 %9583
  %9585 = load double, ptr %9584, align 8, !tbaa !11
  %9586 = call double @llvm.fmuladd.f64(double 0x3CA9FFFFFFFFFFFE, double %9585, double %9577)
  %9587 = load ptr, ptr %7, align 8, !tbaa !9
  %9588 = load i32, ptr %12, align 4, !tbaa !5
  %9589 = load i32, ptr %8, align 4, !tbaa !5
  %9590 = mul nsw i32 37, %9589
  %9591 = add nsw i32 %9588, %9590
  %9592 = sext i32 %9591 to i64
  %9593 = getelementptr inbounds double, ptr %9587, i64 %9592
  %9594 = load double, ptr %9593, align 8, !tbaa !11
  %9595 = call double @llvm.fmuladd.f64(double 0xBC8B000000000000, double %9594, double %9586)
  %9596 = load ptr, ptr %7, align 8, !tbaa !9
  %9597 = load i32, ptr %12, align 4, !tbaa !5
  %9598 = load i32, ptr %8, align 4, !tbaa !5
  %9599 = mul nsw i32 38, %9598
  %9600 = add nsw i32 %9597, %9599
  %9601 = sext i32 %9600 to i64
  %9602 = getelementptr inbounds double, ptr %9596, i64 %9601
  %9603 = load double, ptr %9602, align 8, !tbaa !11
  %9604 = call double @llvm.fmuladd.f64(double 0xBC94000000000000, double %9603, double %9595)
  %9605 = load ptr, ptr %7, align 8, !tbaa !9
  %9606 = load i32, ptr %12, align 4, !tbaa !5
  %9607 = load i32, ptr %8, align 4, !tbaa !5
  %9608 = mul nsw i32 39, %9607
  %9609 = add nsw i32 %9606, %9608
  %9610 = sext i32 %9609 to i64
  %9611 = getelementptr inbounds double, ptr %9605, i64 %9610
  %9612 = load double, ptr %9611, align 8, !tbaa !11
  %9613 = call double @llvm.fmuladd.f64(double 0xBC92000000000000, double %9612, double %9604)
  store double %9613, ptr %11, align 8, !tbaa !11
  %9614 = load double, ptr %11, align 8, !tbaa !11
  %9615 = load ptr, ptr %9, align 8, !tbaa !9
  %9616 = load i32, ptr %12, align 4, !tbaa !5
  %9617 = load i32, ptr %10, align 4, !tbaa !5
  %9618 = mul nsw i32 26, %9617
  %9619 = add nsw i32 %9616, %9618
  %9620 = sext i32 %9619 to i64
  %9621 = getelementptr inbounds double, ptr %9615, i64 %9620
  store double %9614, ptr %9621, align 8, !tbaa !11
  %9622 = load ptr, ptr %7, align 8, !tbaa !9
  %9623 = load i32, ptr %12, align 4, !tbaa !5
  %9624 = load i32, ptr %8, align 4, !tbaa !5
  %9625 = mul nsw i32 0, %9624
  %9626 = add nsw i32 %9623, %9625
  %9627 = sext i32 %9626 to i64
  %9628 = getelementptr inbounds double, ptr %9622, i64 %9627
  %9629 = load double, ptr %9628, align 8, !tbaa !11
  %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 1, %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 = fmul double 0xBCA8000000000001, %9637
  %9639 = call double @llvm.fmuladd.f64(double 0xBCC3C00000000000, double %9629, double %9638)
  %9640 = load ptr, ptr %7, align 8, !tbaa !9
  %9641 = load i32, ptr %12, align 4, !tbaa !5
  %9642 = load i32, ptr %8, align 4, !tbaa !5
  %9643 = mul nsw i32 2, %9642
  %9644 = add nsw i32 %9641, %9643
  %9645 = sext i32 %9644 to i64
  %9646 = getelementptr inbounds double, ptr %9640, i64 %9645
  %9647 = load double, ptr %9646, align 8, !tbaa !11
  %9648 = call double @llvm.fmuladd.f64(double 0x3CB7D00000000001, double %9647, double %9639)
  %9649 = load ptr, ptr %7, align 8, !tbaa !9
  %9650 = load i32, ptr %12, align 4, !tbaa !5
  %9651 = load i32, ptr %8, align 4, !tbaa !5
  %9652 = mul nsw i32 3, %9651
  %9653 = add nsw i32 %9650, %9652
  %9654 = sext i32 %9653 to i64
  %9655 = getelementptr inbounds double, ptr %9649, i64 %9654
  %9656 = load double, ptr %9655, align 8, !tbaa !11
  %9657 = call double @llvm.fmuladd.f64(double 0xBC8B800000000001, double %9656, double %9648)
  %9658 = load ptr, ptr %7, align 8, !tbaa !9
  %9659 = load i32, ptr %12, align 4, !tbaa !5
  %9660 = load i32, ptr %8, align 4, !tbaa !5
  %9661 = mul nsw i32 4, %9660
  %9662 = add nsw i32 %9659, %9661
  %9663 = sext i32 %9662 to i64
  %9664 = getelementptr inbounds double, ptr %9658, i64 %9663
  %9665 = load double, ptr %9664, align 8, !tbaa !11
  %9666 = call double @llvm.fmuladd.f64(double 0x3CB8800000000000, double %9665, double %9657)
  %9667 = load ptr, ptr %7, align 8, !tbaa !9
  %9668 = load i32, ptr %12, align 4, !tbaa !5
  %9669 = load i32, ptr %8, align 4, !tbaa !5
  %9670 = mul nsw i32 5, %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 = call double @llvm.fmuladd.f64(double 0xBC88000000000000, double %9674, double %9666)
  %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 6, %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 = call double @llvm.fmuladd.f64(double 0xBC94800000000000, double %9683, double %9675)
  %9685 = load ptr, ptr %7, align 8, !tbaa !9
  %9686 = load i32, ptr %12, align 4, !tbaa !5
  %9687 = load i32, ptr %8, align 4, !tbaa !5
  %9688 = mul nsw i32 7, %9687
  %9689 = add nsw i32 %9686, %9688
  %9690 = sext i32 %9689 to i64
  %9691 = getelementptr inbounds double, ptr %9685, i64 %9690
  %9692 = load double, ptr %9691, align 8, !tbaa !11
  %9693 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %9692, double %9684)
  %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 8, %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 0x3C7FFFFFFFFFFFFF, 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 9, %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 0xBC90000000000000, 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 10, %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 0xBF83152016E0EAD0, 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 11, %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 0xBFB5B58B4F03B192, 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 12, %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 0x3FF4EC1BB3FDC61B, 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 13, %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 0x3F938CE4890DB29A, 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 14, %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 0xBFE5679E70A6065C, 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 15, %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 0x3F85E50BB681A3CA, 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 16, %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 0xBFB49217631F5913, 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 17, %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 0x3FCA50C41AB7A2F3, 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 18, %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 0xBF8BDAF699AECF4E, 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 19, %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 0x3FD417DEBFC17B11, 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 20, %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 0xBCC2000000000000, 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 21, %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 0xBC9C000000000000, 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 22, %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 0xBCB7400000000000, 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 23, %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 0x3CBC000000000000, 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 24, %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 0x3CBF000000000001, 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 25, %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 0xBCA5FFFFFFFFFFFF, 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 26, %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 0x3C70000000000001, 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 27, %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 0xBCBE7FFFFFFFFFFF, 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 28, %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 0x3CA0000000000002, 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 29, %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 0xBC7FFFFFFFFFFFFF, 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 30, %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 0x3CBC800000000000, 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 31, %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 0xBC9A000000000000, 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 32, %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 0xBCA4400000000001, 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 33, %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 0xBC78000000000002, 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 34, %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 0xBC70000000000001, 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 35, %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 0x3CA2000000000000, 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 36, %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 0x3CA8000000000001, 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 37, %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 0x3CA97FFFFFFFFFFF, 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 38, %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 0xBCA2FFFFFFFFFFFE, 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 39, %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 0xBC96000000000000, double %9980, double %9972)
  store double %9981, ptr %11, align 8, !tbaa !11
  %9982 = load double, ptr %11, align 8, !tbaa !11
  %9983 = load ptr, ptr %9, align 8, !tbaa !9
  %9984 = load i32, ptr %12, align 4, !tbaa !5
  %9985 = load i32, ptr %10, align 4, !tbaa !5
  %9986 = mul nsw i32 27, %9985
  %9987 = add nsw i32 %9984, %9986
  %9988 = sext i32 %9987 to i64
  %9989 = getelementptr inbounds double, ptr %9983, i64 %9988
  store double %9982, ptr %9989, align 8, !tbaa !11
  %9990 = load ptr, ptr %7, align 8, !tbaa !9
  %9991 = load i32, ptr %12, align 4, !tbaa !5
  %9992 = load i32, ptr %8, align 4, !tbaa !5
  %9993 = mul nsw i32 0, %9992
  %9994 = add nsw i32 %9991, %9993
  %9995 = sext i32 %9994 to i64
  %9996 = getelementptr inbounds double, ptr %9990, i64 %9995
  %9997 = load double, ptr %9996, align 8, !tbaa !11
  %9998 = load ptr, ptr %7, align 8, !tbaa !9
  %9999 = load i32, ptr %12, align 4, !tbaa !5
  %10000 = load i32, ptr %8, align 4, !tbaa !5
  %10001 = mul nsw i32 1, %10000
  %10002 = add nsw i32 %9999, %10001
  %10003 = sext i32 %10002 to i64
  %10004 = getelementptr inbounds double, ptr %9998, i64 %10003
  %10005 = load double, ptr %10004, align 8, !tbaa !11
  %10006 = fmul double 0x3C88000000000000, %10005
  %10007 = call double @llvm.fmuladd.f64(double 0xBCB4800000000001, double %9997, double %10006)
  %10008 = load ptr, ptr %7, align 8, !tbaa !9
  %10009 = load i32, ptr %12, align 4, !tbaa !5
  %10010 = load i32, ptr %8, align 4, !tbaa !5
  %10011 = mul nsw i32 2, %10010
  %10012 = add nsw i32 %10009, %10011
  %10013 = sext i32 %10012 to i64
  %10014 = getelementptr inbounds double, ptr %10008, i64 %10013
  %10015 = load double, ptr %10014, align 8, !tbaa !11
  %10016 = call double @llvm.fmuladd.f64(double 0xBC76FFFFFFFFFFFF, double %10015, double %10007)
  %10017 = load ptr, ptr %7, align 8, !tbaa !9
  %10018 = load i32, ptr %12, align 4, !tbaa !5
  %10019 = load i32, ptr %8, align 4, !tbaa !5
  %10020 = mul nsw i32 3, %10019
  %10021 = add nsw i32 %10018, %10020
  %10022 = sext i32 %10021 to i64
  %10023 = getelementptr inbounds double, ptr %10017, i64 %10022
  %10024 = load double, ptr %10023, align 8, !tbaa !11
  %10025 = call double @llvm.fmuladd.f64(double 0x3C92400000000000, double %10024, double %10016)
  %10026 = load ptr, ptr %7, align 8, !tbaa !9
  %10027 = load i32, ptr %12, align 4, !tbaa !5
  %10028 = load i32, ptr %8, align 4, !tbaa !5
  %10029 = mul nsw i32 4, %10028
  %10030 = add nsw i32 %10027, %10029
  %10031 = sext i32 %10030 to i64
  %10032 = getelementptr inbounds double, ptr %10026, i64 %10031
  %10033 = load double, ptr %10032, align 8, !tbaa !11
  %10034 = call double @llvm.fmuladd.f64(double 0xBC98000000000000, double %10033, double %10025)
  %10035 = load ptr, ptr %7, align 8, !tbaa !9
  %10036 = load i32, ptr %12, align 4, !tbaa !5
  %10037 = load i32, ptr %8, align 4, !tbaa !5
  %10038 = mul nsw i32 5, %10037
  %10039 = add nsw i32 %10036, %10038
  %10040 = sext i32 %10039 to i64
  %10041 = getelementptr inbounds double, ptr %10035, i64 %10040
  %10042 = load double, ptr %10041, align 8, !tbaa !11
  %10043 = call double @llvm.fmuladd.f64(double 0x3CAC000000000000, double %10042, double %10034)
  %10044 = load ptr, ptr %7, align 8, !tbaa !9
  %10045 = load i32, ptr %12, align 4, !tbaa !5
  %10046 = load i32, ptr %8, align 4, !tbaa !5
  %10047 = mul nsw i32 6, %10046
  %10048 = add nsw i32 %10045, %10047
  %10049 = sext i32 %10048 to i64
  %10050 = getelementptr inbounds double, ptr %10044, i64 %10049
  %10051 = load double, ptr %10050, align 8, !tbaa !11
  %10052 = call double @llvm.fmuladd.f64(double 0x3C9A800000000000, double %10051, double %10043)
  %10053 = load ptr, ptr %7, align 8, !tbaa !9
  %10054 = load i32, ptr %12, align 4, !tbaa !5
  %10055 = load i32, ptr %8, align 4, !tbaa !5
  %10056 = mul nsw i32 7, %10055
  %10057 = add nsw i32 %10054, %10056
  %10058 = sext i32 %10057 to i64
  %10059 = getelementptr inbounds double, ptr %10053, i64 %10058
  %10060 = load double, ptr %10059, align 8, !tbaa !11
  %10061 = call double @llvm.fmuladd.f64(double 0x3C9CFFFFFFFFFFFF, double %10060, double %10052)
  %10062 = load ptr, ptr %7, align 8, !tbaa !9
  %10063 = load i32, ptr %12, align 4, !tbaa !5
  %10064 = load i32, ptr %8, align 4, !tbaa !5
  %10065 = mul nsw i32 8, %10064
  %10066 = add nsw i32 %10063, %10065
  %10067 = sext i32 %10066 to i64
  %10068 = getelementptr inbounds double, ptr %10062, i64 %10067
  %10069 = load double, ptr %10068, align 8, !tbaa !11
  %10070 = call double @llvm.fmuladd.f64(double 0x3C70000000000001, double %10069, double %10061)
  %10071 = load ptr, ptr %7, align 8, !tbaa !9
  %10072 = load i32, ptr %12, align 4, !tbaa !5
  %10073 = load i32, ptr %8, align 4, !tbaa !5
  %10074 = mul nsw i32 9, %10073
  %10075 = add nsw i32 %10072, %10074
  %10076 = sext i32 %10075 to i64
  %10077 = getelementptr inbounds double, ptr %10071, i64 %10076
  %10078 = load double, ptr %10077, align 8, !tbaa !11
  %10079 = call double @llvm.fmuladd.f64(double 0x3C78000000000002, double %10078, double %10070)
  %10080 = load ptr, ptr %7, align 8, !tbaa !9
  %10081 = load i32, ptr %12, align 4, !tbaa !5
  %10082 = load i32, ptr %8, align 4, !tbaa !5
  %10083 = mul nsw i32 10, %10082
  %10084 = add nsw i32 %10081, %10083
  %10085 = sext i32 %10084 to i64
  %10086 = getelementptr inbounds double, ptr %10080, i64 %10085
  %10087 = load double, ptr %10086, align 8, !tbaa !11
  %10088 = call double @llvm.fmuladd.f64(double 0x3CB3FFFFFFFFFFFF, double %10087, double %10079)
  %10089 = load ptr, ptr %7, align 8, !tbaa !9
  %10090 = load i32, ptr %12, align 4, !tbaa !5
  %10091 = load i32, ptr %8, align 4, !tbaa !5
  %10092 = mul nsw i32 11, %10091
  %10093 = add nsw i32 %10090, %10092
  %10094 = sext i32 %10093 to i64
  %10095 = getelementptr inbounds double, ptr %10089, i64 %10094
  %10096 = load double, ptr %10095, align 8, !tbaa !11
  %10097 = call double @llvm.fmuladd.f64(double 0x3C9C000000000000, double %10096, double %10088)
  %10098 = load ptr, ptr %7, align 8, !tbaa !9
  %10099 = load i32, ptr %12, align 4, !tbaa !5
  %10100 = load i32, ptr %8, align 4, !tbaa !5
  %10101 = mul nsw i32 12, %10100
  %10102 = add nsw i32 %10099, %10101
  %10103 = sext i32 %10102 to i64
  %10104 = getelementptr inbounds double, ptr %10098, i64 %10103
  %10105 = load double, ptr %10104, align 8, !tbaa !11
  %10106 = call double @llvm.fmuladd.f64(double 0x3C60000000000000, double %10105, double %10097)
  %10107 = load ptr, ptr %7, align 8, !tbaa !9
  %10108 = load i32, ptr %12, align 4, !tbaa !5
  %10109 = load i32, ptr %8, align 4, !tbaa !5
  %10110 = mul nsw i32 13, %10109
  %10111 = add nsw i32 %10108, %10110
  %10112 = sext i32 %10111 to i64
  %10113 = getelementptr inbounds double, ptr %10107, i64 %10112
  %10114 = load double, ptr %10113, align 8, !tbaa !11
  %10115 = call double @llvm.fmuladd.f64(double 0x3CAF800000000000, double %10114, double %10106)
  %10116 = load ptr, ptr %7, align 8, !tbaa !9
  %10117 = load i32, ptr %12, align 4, !tbaa !5
  %10118 = load i32, ptr %8, align 4, !tbaa !5
  %10119 = mul nsw i32 15, %10118
  %10120 = add nsw i32 %10117, %10119
  %10121 = sext i32 %10120 to i64
  %10122 = getelementptr inbounds double, ptr %10116, i64 %10121
  %10123 = load double, ptr %10122, align 8, !tbaa !11
  %10124 = call double @llvm.fmuladd.f64(double 0x3CA2000000000000, double %10123, double %10115)
  %10125 = load ptr, ptr %7, align 8, !tbaa !9
  %10126 = load i32, ptr %12, align 4, !tbaa !5
  %10127 = load i32, ptr %8, align 4, !tbaa !5
  %10128 = mul nsw i32 16, %10127
  %10129 = add nsw i32 %10126, %10128
  %10130 = sext i32 %10129 to i64
  %10131 = getelementptr inbounds double, ptr %10125, i64 %10130
  %10132 = load double, ptr %10131, align 8, !tbaa !11
  %10133 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %10132, double %10124)
  %10134 = load ptr, ptr %7, align 8, !tbaa !9
  %10135 = load i32, ptr %12, align 4, !tbaa !5
  %10136 = load i32, ptr %8, align 4, !tbaa !5
  %10137 = mul nsw i32 17, %10136
  %10138 = add nsw i32 %10135, %10137
  %10139 = sext i32 %10138 to i64
  %10140 = getelementptr inbounds double, ptr %10134, i64 %10139
  %10141 = load double, ptr %10140, align 8, !tbaa !11
  %10142 = call double @llvm.fmuladd.f64(double 0xBCA7000000000002, double %10141, double %10133)
  %10143 = load ptr, ptr %7, align 8, !tbaa !9
  %10144 = load i32, ptr %12, align 4, !tbaa !5
  %10145 = load i32, ptr %8, align 4, !tbaa !5
  %10146 = mul nsw i32 18, %10145
  %10147 = add nsw i32 %10144, %10146
  %10148 = sext i32 %10147 to i64
  %10149 = getelementptr inbounds double, ptr %10143, i64 %10148
  %10150 = load double, ptr %10149, align 8, !tbaa !11
  %10151 = call double @llvm.fmuladd.f64(double 0x3CAC000000000000, double %10150, double %10142)
  %10152 = load ptr, ptr %7, align 8, !tbaa !9
  %10153 = load i32, ptr %12, align 4, !tbaa !5
  %10154 = load i32, ptr %8, align 4, !tbaa !5
  %10155 = mul nsw i32 19, %10154
  %10156 = add nsw i32 %10153, %10155
  %10157 = sext i32 %10156 to i64
  %10158 = getelementptr inbounds double, ptr %10152, i64 %10157
  %10159 = load double, ptr %10158, align 8, !tbaa !11
  %10160 = call double @llvm.fmuladd.f64(double 0xBCB5FFFFFFFFFFFF, double %10159, double %10151)
  %10161 = load ptr, ptr %7, align 8, !tbaa !9
  %10162 = load i32, ptr %12, align 4, !tbaa !5
  %10163 = load i32, ptr %8, align 4, !tbaa !5
  %10164 = mul nsw i32 20, %10163
  %10165 = add nsw i32 %10162, %10164
  %10166 = sext i32 %10165 to i64
  %10167 = getelementptr inbounds double, ptr %10161, i64 %10166
  %10168 = load double, ptr %10167, align 8, !tbaa !11
  %10169 = call double @llvm.fmuladd.f64(double 0xBF83152016E0ECA0, double %10168, double %10160)
  %10170 = load ptr, ptr %7, align 8, !tbaa !9
  %10171 = load i32, ptr %12, align 4, !tbaa !5
  %10172 = load i32, ptr %8, align 4, !tbaa !5
  %10173 = mul nsw i32 21, %10172
  %10174 = add nsw i32 %10171, %10173
  %10175 = sext i32 %10174 to i64
  %10176 = getelementptr inbounds double, ptr %10170, i64 %10175
  %10177 = load double, ptr %10176, align 8, !tbaa !11
  %10178 = call double @llvm.fmuladd.f64(double 0xBFB5B58B4F03B1A6, double %10177, double %10169)
  %10179 = load ptr, ptr %7, align 8, !tbaa !9
  %10180 = load i32, ptr %12, align 4, !tbaa !5
  %10181 = load i32, ptr %8, align 4, !tbaa !5
  %10182 = mul nsw i32 22, %10181
  %10183 = add nsw i32 %10180, %10182
  %10184 = sext i32 %10183 to i64
  %10185 = getelementptr inbounds double, ptr %10179, i64 %10184
  %10186 = load double, ptr %10185, align 8, !tbaa !11
  %10187 = call double @llvm.fmuladd.f64(double 0x3F938CE4890DB313, double %10186, double %10178)
  %10188 = load ptr, ptr %7, align 8, !tbaa !9
  %10189 = load i32, ptr %12, align 4, !tbaa !5
  %10190 = load i32, ptr %8, align 4, !tbaa !5
  %10191 = mul nsw i32 23, %10190
  %10192 = add nsw i32 %10189, %10191
  %10193 = sext i32 %10192 to i64
  %10194 = getelementptr inbounds double, ptr %10188, i64 %10193
  %10195 = load double, ptr %10194, align 8, !tbaa !11
  %10196 = call double @llvm.fmuladd.f64(double 0x3FF4EC1BB3FDC612, double %10195, double %10187)
  %10197 = load ptr, ptr %7, align 8, !tbaa !9
  %10198 = load i32, ptr %12, align 4, !tbaa !5
  %10199 = load i32, ptr %8, align 4, !tbaa !5
  %10200 = mul nsw i32 24, %10199
  %10201 = add nsw i32 %10198, %10200
  %10202 = sext i32 %10201 to i64
  %10203 = getelementptr inbounds double, ptr %10197, i64 %10202
  %10204 = load double, ptr %10203, align 8, !tbaa !11
  %10205 = call double @llvm.fmuladd.f64(double 0x3F85E50BB681A45A, double %10204, double %10196)
  %10206 = load ptr, ptr %7, align 8, !tbaa !9
  %10207 = load i32, ptr %12, align 4, !tbaa !5
  %10208 = load i32, ptr %8, align 4, !tbaa !5
  %10209 = mul nsw i32 25, %10208
  %10210 = add nsw i32 %10207, %10209
  %10211 = sext i32 %10210 to i64
  %10212 = getelementptr inbounds double, ptr %10206, i64 %10211
  %10213 = load double, ptr %10212, align 8, !tbaa !11
  %10214 = call double @llvm.fmuladd.f64(double 0xBFE5679E70A60659, double %10213, double %10205)
  %10215 = load ptr, ptr %7, align 8, !tbaa !9
  %10216 = load i32, ptr %12, align 4, !tbaa !5
  %10217 = load i32, ptr %8, align 4, !tbaa !5
  %10218 = mul nsw i32 26, %10217
  %10219 = add nsw i32 %10216, %10218
  %10220 = sext i32 %10219 to i64
  %10221 = getelementptr inbounds double, ptr %10215, i64 %10220
  %10222 = load double, ptr %10221, align 8, !tbaa !11
  %10223 = call double @llvm.fmuladd.f64(double 0x3FCA50C41AB7A337, double %10222, double %10214)
  %10224 = load ptr, ptr %7, align 8, !tbaa !9
  %10225 = load i32, ptr %12, align 4, !tbaa !5
  %10226 = load i32, ptr %8, align 4, !tbaa !5
  %10227 = mul nsw i32 27, %10226
  %10228 = add nsw i32 %10225, %10227
  %10229 = sext i32 %10228 to i64
  %10230 = getelementptr inbounds double, ptr %10224, i64 %10229
  %10231 = load double, ptr %10230, align 8, !tbaa !11
  %10232 = call double @llvm.fmuladd.f64(double 0xBFB49217631F594F, double %10231, double %10223)
  %10233 = load ptr, ptr %7, align 8, !tbaa !9
  %10234 = load i32, ptr %12, align 4, !tbaa !5
  %10235 = load i32, ptr %8, align 4, !tbaa !5
  %10236 = mul nsw i32 28, %10235
  %10237 = add nsw i32 %10234, %10236
  %10238 = sext i32 %10237 to i64
  %10239 = getelementptr inbounds double, ptr %10233, i64 %10238
  %10240 = load double, ptr %10239, align 8, !tbaa !11
  %10241 = call double @llvm.fmuladd.f64(double 0x3FD417DEBFC17B18, double %10240, double %10232)
  %10242 = load ptr, ptr %7, align 8, !tbaa !9
  %10243 = load i32, ptr %12, align 4, !tbaa !5
  %10244 = load i32, ptr %8, align 4, !tbaa !5
  %10245 = mul nsw i32 29, %10244
  %10246 = add nsw i32 %10243, %10245
  %10247 = sext i32 %10246 to i64
  %10248 = getelementptr inbounds double, ptr %10242, i64 %10247
  %10249 = load double, ptr %10248, align 8, !tbaa !11
  %10250 = call double @llvm.fmuladd.f64(double 0xBF8BDAF699AECEE1, double %10249, double %10241)
  %10251 = load ptr, ptr %7, align 8, !tbaa !9
  %10252 = load i32, ptr %12, align 4, !tbaa !5
  %10253 = load i32, ptr %8, align 4, !tbaa !5
  %10254 = mul nsw i32 30, %10253
  %10255 = add nsw i32 %10252, %10254
  %10256 = sext i32 %10255 to i64
  %10257 = getelementptr inbounds double, ptr %10251, i64 %10256
  %10258 = load double, ptr %10257, align 8, !tbaa !11
  %10259 = call double @llvm.fmuladd.f64(double 0x3CA9000000000000, double %10258, double %10250)
  %10260 = load ptr, ptr %7, align 8, !tbaa !9
  %10261 = load i32, ptr %12, align 4, !tbaa !5
  %10262 = load i32, ptr %8, align 4, !tbaa !5
  %10263 = mul nsw i32 31, %10262
  %10264 = add nsw i32 %10261, %10263
  %10265 = sext i32 %10264 to i64
  %10266 = getelementptr inbounds double, ptr %10260, i64 %10265
  %10267 = load double, ptr %10266, align 8, !tbaa !11
  %10268 = call double @llvm.fmuladd.f64(double 0x3C78000000000002, double %10267, double %10259)
  %10269 = load ptr, ptr %7, align 8, !tbaa !9
  %10270 = load i32, ptr %12, align 4, !tbaa !5
  %10271 = load i32, ptr %8, align 4, !tbaa !5
  %10272 = mul nsw i32 32, %10271
  %10273 = add nsw i32 %10270, %10272
  %10274 = sext i32 %10273 to i64
  %10275 = getelementptr inbounds double, ptr %10269, i64 %10274
  %10276 = load double, ptr %10275, align 8, !tbaa !11
  %10277 = call double @llvm.fmuladd.f64(double 0xBC9CFFFFFFFFFFFF, double %10276, double %10268)
  %10278 = load ptr, ptr %7, align 8, !tbaa !9
  %10279 = load i32, ptr %12, align 4, !tbaa !5
  %10280 = load i32, ptr %8, align 4, !tbaa !5
  %10281 = mul nsw i32 33, %10280
  %10282 = add nsw i32 %10279, %10281
  %10283 = sext i32 %10282 to i64
  %10284 = getelementptr inbounds double, ptr %10278, i64 %10283
  %10285 = load double, ptr %10284, align 8, !tbaa !11
  %10286 = call double @llvm.fmuladd.f64(double 0x3CB0200000000000, double %10285, double %10277)
  %10287 = load ptr, ptr %7, align 8, !tbaa !9
  %10288 = load i32, ptr %12, align 4, !tbaa !5
  %10289 = load i32, ptr %8, align 4, !tbaa !5
  %10290 = mul nsw i32 34, %10289
  %10291 = add nsw i32 %10288, %10290
  %10292 = sext i32 %10291 to i64
  %10293 = getelementptr inbounds double, ptr %10287, i64 %10292
  %10294 = load double, ptr %10293, align 8, !tbaa !11
  %10295 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %10294, double %10286)
  %10296 = load ptr, ptr %7, align 8, !tbaa !9
  %10297 = load i32, ptr %12, align 4, !tbaa !5
  %10298 = load i32, ptr %8, align 4, !tbaa !5
  %10299 = mul nsw i32 36, %10298
  %10300 = add nsw i32 %10297, %10299
  %10301 = sext i32 %10300 to i64
  %10302 = getelementptr inbounds double, ptr %10296, i64 %10301
  %10303 = load double, ptr %10302, align 8, !tbaa !11
  %10304 = call double @llvm.fmuladd.f64(double 0xBC95000000000000, double %10303, double %10295)
  %10305 = load ptr, ptr %7, align 8, !tbaa !9
  %10306 = load i32, ptr %12, align 4, !tbaa !5
  %10307 = load i32, ptr %8, align 4, !tbaa !5
  %10308 = mul nsw i32 37, %10307
  %10309 = add nsw i32 %10306, %10308
  %10310 = sext i32 %10309 to i64
  %10311 = getelementptr inbounds double, ptr %10305, i64 %10310
  %10312 = load double, ptr %10311, align 8, !tbaa !11
  %10313 = call double @llvm.fmuladd.f64(double 0xBCB1800000000000, double %10312, double %10304)
  %10314 = load ptr, ptr %7, align 8, !tbaa !9
  %10315 = load i32, ptr %12, align 4, !tbaa !5
  %10316 = load i32, ptr %8, align 4, !tbaa !5
  %10317 = mul nsw i32 38, %10316
  %10318 = add nsw i32 %10315, %10317
  %10319 = sext i32 %10318 to i64
  %10320 = getelementptr inbounds double, ptr %10314, i64 %10319
  %10321 = load double, ptr %10320, align 8, !tbaa !11
  %10322 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %10321, double %10313)
  %10323 = load ptr, ptr %7, align 8, !tbaa !9
  %10324 = load i32, ptr %12, align 4, !tbaa !5
  %10325 = load i32, ptr %8, align 4, !tbaa !5
  %10326 = mul nsw i32 39, %10325
  %10327 = add nsw i32 %10324, %10326
  %10328 = sext i32 %10327 to i64
  %10329 = getelementptr inbounds double, ptr %10323, i64 %10328
  %10330 = load double, ptr %10329, align 8, !tbaa !11
  %10331 = call double @llvm.fmuladd.f64(double 0x3C92000000000000, double %10330, double %10322)
  store double %10331, ptr %11, align 8, !tbaa !11
  %10332 = load double, ptr %11, align 8, !tbaa !11
  %10333 = load ptr, ptr %9, align 8, !tbaa !9
  %10334 = load i32, ptr %12, align 4, !tbaa !5
  %10335 = load i32, ptr %10, align 4, !tbaa !5
  %10336 = mul nsw i32 28, %10335
  %10337 = add nsw i32 %10334, %10336
  %10338 = sext i32 %10337 to i64
  %10339 = getelementptr inbounds double, ptr %10333, i64 %10338
  store double %10332, ptr %10339, align 8, !tbaa !11
  %10340 = load ptr, ptr %7, align 8, !tbaa !9
  %10341 = load i32, ptr %12, align 4, !tbaa !5
  %10342 = load i32, ptr %8, align 4, !tbaa !5
  %10343 = mul nsw i32 0, %10342
  %10344 = add nsw i32 %10341, %10343
  %10345 = sext i32 %10344 to i64
  %10346 = getelementptr inbounds double, ptr %10340, i64 %10345
  %10347 = load double, ptr %10346, align 8, !tbaa !11
  %10348 = load ptr, ptr %7, align 8, !tbaa !9
  %10349 = load i32, ptr %12, align 4, !tbaa !5
  %10350 = load i32, ptr %8, align 4, !tbaa !5
  %10351 = mul nsw i32 1, %10350
  %10352 = add nsw i32 %10349, %10351
  %10353 = sext i32 %10352 to i64
  %10354 = getelementptr inbounds double, ptr %10348, i64 %10353
  %10355 = load double, ptr %10354, align 8, !tbaa !11
  %10356 = fmul double 0xBC78000000000002, %10355
  %10357 = call double @llvm.fmuladd.f64(double 0x3CB97FFFFFFFFFFF, double %10347, double %10356)
  %10358 = load ptr, ptr %7, align 8, !tbaa !9
  %10359 = load i32, ptr %12, align 4, !tbaa !5
  %10360 = load i32, ptr %8, align 4, !tbaa !5
  %10361 = mul nsw i32 2, %10360
  %10362 = add nsw i32 %10359, %10361
  %10363 = sext i32 %10362 to i64
  %10364 = getelementptr inbounds double, ptr %10358, i64 %10363
  %10365 = load double, ptr %10364, align 8, !tbaa !11
  %10366 = call double @llvm.fmuladd.f64(double 0xBCA0E00000000001, double %10365, double %10357)
  %10367 = load ptr, ptr %7, align 8, !tbaa !9
  %10368 = load i32, ptr %12, align 4, !tbaa !5
  %10369 = load i32, ptr %8, align 4, !tbaa !5
  %10370 = mul nsw i32 3, %10369
  %10371 = add nsw i32 %10368, %10370
  %10372 = sext i32 %10371 to i64
  %10373 = getelementptr inbounds double, ptr %10367, i64 %10372
  %10374 = load double, ptr %10373, align 8, !tbaa !11
  %10375 = call double @llvm.fmuladd.f64(double 0x3CA0A00000000001, double %10374, double %10366)
  %10376 = load ptr, ptr %7, align 8, !tbaa !9
  %10377 = load i32, ptr %12, align 4, !tbaa !5
  %10378 = load i32, ptr %8, align 4, !tbaa !5
  %10379 = mul nsw i32 4, %10378
  %10380 = add nsw i32 %10377, %10379
  %10381 = sext i32 %10380 to i64
  %10382 = getelementptr inbounds double, ptr %10376, i64 %10381
  %10383 = load double, ptr %10382, align 8, !tbaa !11
  %10384 = call double @llvm.fmuladd.f64(double 0x3CA27FFFFFFFFFFF, double %10383, double %10375)
  %10385 = load ptr, ptr %7, align 8, !tbaa !9
  %10386 = load i32, ptr %12, align 4, !tbaa !5
  %10387 = load i32, ptr %8, align 4, !tbaa !5
  %10388 = mul nsw i32 5, %10387
  %10389 = add nsw i32 %10386, %10388
  %10390 = sext i32 %10389 to i64
  %10391 = getelementptr inbounds double, ptr %10385, i64 %10390
  %10392 = load double, ptr %10391, align 8, !tbaa !11
  %10393 = call double @llvm.fmuladd.f64(double 0x3CA5800000000000, double %10392, double %10384)
  %10394 = load ptr, ptr %7, align 8, !tbaa !9
  %10395 = load i32, ptr %12, align 4, !tbaa !5
  %10396 = load i32, ptr %8, align 4, !tbaa !5
  %10397 = mul nsw i32 6, %10396
  %10398 = add nsw i32 %10395, %10397
  %10399 = sext i32 %10398 to i64
  %10400 = getelementptr inbounds double, ptr %10394, i64 %10399
  %10401 = load double, ptr %10400, align 8, !tbaa !11
  %10402 = call double @llvm.fmuladd.f64(double 0xBCBB1FFFFFFFFFFF, double %10401, double %10393)
  %10403 = load ptr, ptr %7, align 8, !tbaa !9
  %10404 = load i32, ptr %12, align 4, !tbaa !5
  %10405 = load i32, ptr %8, align 4, !tbaa !5
  %10406 = mul nsw i32 7, %10405
  %10407 = add nsw i32 %10404, %10406
  %10408 = sext i32 %10407 to i64
  %10409 = getelementptr inbounds double, ptr %10403, i64 %10408
  %10410 = load double, ptr %10409, align 8, !tbaa !11
  %10411 = call double @llvm.fmuladd.f64(double 0xBC9B000000000000, double %10410, double %10402)
  %10412 = load ptr, ptr %7, align 8, !tbaa !9
  %10413 = load i32, ptr %12, align 4, !tbaa !5
  %10414 = load i32, ptr %8, align 4, !tbaa !5
  %10415 = mul nsw i32 8, %10414
  %10416 = add nsw i32 %10413, %10415
  %10417 = sext i32 %10416 to i64
  %10418 = getelementptr inbounds double, ptr %10412, i64 %10417
  %10419 = load double, ptr %10418, align 8, !tbaa !11
  %10420 = call double @llvm.fmuladd.f64(double 0xBC78000000000002, double %10419, double %10411)
  %10421 = load ptr, ptr %7, align 8, !tbaa !9
  %10422 = load i32, ptr %12, align 4, !tbaa !5
  %10423 = load i32, ptr %8, align 4, !tbaa !5
  %10424 = mul nsw i32 9, %10423
  %10425 = add nsw i32 %10422, %10424
  %10426 = sext i32 %10425 to i64
  %10427 = getelementptr inbounds double, ptr %10421, i64 %10426
  %10428 = load double, ptr %10427, align 8, !tbaa !11
  %10429 = call double @llvm.fmuladd.f64(double 0xBC70000000000001, double %10428, double %10420)
  %10430 = load ptr, ptr %7, align 8, !tbaa !9
  %10431 = load i32, ptr %12, align 4, !tbaa !5
  %10432 = load i32, ptr %8, align 4, !tbaa !5
  %10433 = mul nsw i32 10, %10432
  %10434 = add nsw i32 %10431, %10433
  %10435 = sext i32 %10434 to i64
  %10436 = getelementptr inbounds double, ptr %10430, i64 %10435
  %10437 = load double, ptr %10436, align 8, !tbaa !11
  %10438 = call double @llvm.fmuladd.f64(double 0x3CA4000000000001, double %10437, double %10429)
  %10439 = load ptr, ptr %7, align 8, !tbaa !9
  %10440 = load i32, ptr %12, align 4, !tbaa !5
  %10441 = load i32, ptr %8, align 4, !tbaa !5
  %10442 = mul nsw i32 11, %10441
  %10443 = add nsw i32 %10440, %10442
  %10444 = sext i32 %10443 to i64
  %10445 = getelementptr inbounds double, ptr %10439, i64 %10444
  %10446 = load double, ptr %10445, align 8, !tbaa !11
  %10447 = call double @llvm.fmuladd.f64(double 0x3CB1000000000001, double %10446, double %10438)
  %10448 = load ptr, ptr %7, align 8, !tbaa !9
  %10449 = load i32, ptr %12, align 4, !tbaa !5
  %10450 = load i32, ptr %8, align 4, !tbaa !5
  %10451 = mul nsw i32 12, %10450
  %10452 = add nsw i32 %10449, %10451
  %10453 = sext i32 %10452 to i64
  %10454 = getelementptr inbounds double, ptr %10448, i64 %10453
  %10455 = load double, ptr %10454, align 8, !tbaa !11
  %10456 = call double @llvm.fmuladd.f64(double 0xBC95000000000000, double %10455, double %10447)
  %10457 = load ptr, ptr %7, align 8, !tbaa !9
  %10458 = load i32, ptr %12, align 4, !tbaa !5
  %10459 = load i32, ptr %8, align 4, !tbaa !5
  %10460 = mul nsw i32 13, %10459
  %10461 = add nsw i32 %10458, %10460
  %10462 = sext i32 %10461 to i64
  %10463 = getelementptr inbounds double, ptr %10457, i64 %10462
  %10464 = load double, ptr %10463, align 8, !tbaa !11
  %10465 = call double @llvm.fmuladd.f64(double 0x3C91000000000000, double %10464, double %10456)
  %10466 = load ptr, ptr %7, align 8, !tbaa !9
  %10467 = load i32, ptr %12, align 4, !tbaa !5
  %10468 = load i32, ptr %8, align 4, !tbaa !5
  %10469 = mul nsw i32 14, %10468
  %10470 = add nsw i32 %10467, %10469
  %10471 = sext i32 %10470 to i64
  %10472 = getelementptr inbounds double, ptr %10466, i64 %10471
  %10473 = load double, ptr %10472, align 8, !tbaa !11
  %10474 = call double @llvm.fmuladd.f64(double 0xBCAC000000000000, double %10473, double %10465)
  %10475 = load ptr, ptr %7, align 8, !tbaa !9
  %10476 = load i32, ptr %12, align 4, !tbaa !5
  %10477 = load i32, ptr %8, align 4, !tbaa !5
  %10478 = mul nsw i32 15, %10477
  %10479 = add nsw i32 %10476, %10478
  %10480 = sext i32 %10479 to i64
  %10481 = getelementptr inbounds double, ptr %10475, i64 %10480
  %10482 = load double, ptr %10481, align 8, !tbaa !11
  %10483 = call double @llvm.fmuladd.f64(double 0xBC9C000000000000, double %10482, double %10474)
  %10484 = load ptr, ptr %7, align 8, !tbaa !9
  %10485 = load i32, ptr %12, align 4, !tbaa !5
  %10486 = load i32, ptr %8, align 4, !tbaa !5
  %10487 = mul nsw i32 16, %10486
  %10488 = add nsw i32 %10485, %10487
  %10489 = sext i32 %10488 to i64
  %10490 = getelementptr inbounds double, ptr %10484, i64 %10489
  %10491 = load double, ptr %10490, align 8, !tbaa !11
  %10492 = call double @llvm.fmuladd.f64(double 0x3CB07FFFFFFFFFFF, double %10491, double %10483)
  %10493 = load ptr, ptr %7, align 8, !tbaa !9
  %10494 = load i32, ptr %12, align 4, !tbaa !5
  %10495 = load i32, ptr %8, align 4, !tbaa !5
  %10496 = mul nsw i32 17, %10495
  %10497 = add nsw i32 %10494, %10496
  %10498 = sext i32 %10497 to i64
  %10499 = getelementptr inbounds double, ptr %10493, i64 %10498
  %10500 = load double, ptr %10499, align 8, !tbaa !11
  %10501 = call double @llvm.fmuladd.f64(double 0x3CA7000000000002, double %10500, double %10492)
  %10502 = load ptr, ptr %7, align 8, !tbaa !9
  %10503 = load i32, ptr %12, align 4, !tbaa !5
  %10504 = load i32, ptr %8, align 4, !tbaa !5
  %10505 = mul nsw i32 19, %10504
  %10506 = add nsw i32 %10503, %10505
  %10507 = sext i32 %10506 to i64
  %10508 = getelementptr inbounds double, ptr %10502, i64 %10507
  %10509 = load double, ptr %10508, align 8, !tbaa !11
  %10510 = call double @llvm.fmuladd.f64(double 0xBCAE000000000002, double %10509, double %10501)
  %10511 = load ptr, ptr %7, align 8, !tbaa !9
  %10512 = load i32, ptr %12, align 4, !tbaa !5
  %10513 = load i32, ptr %8, align 4, !tbaa !5
  %10514 = mul nsw i32 20, %10513
  %10515 = add nsw i32 %10512, %10514
  %10516 = sext i32 %10515 to i64
  %10517 = getelementptr inbounds double, ptr %10511, i64 %10516
  %10518 = load double, ptr %10517, align 8, !tbaa !11
  %10519 = call double @llvm.fmuladd.f64(double 0xBFE333710B32A29C, double %10518, double %10510)
  %10520 = load ptr, ptr %7, align 8, !tbaa !9
  %10521 = load i32, ptr %12, align 4, !tbaa !5
  %10522 = load i32, ptr %8, align 4, !tbaa !5
  %10523 = mul nsw i32 21, %10522
  %10524 = add nsw i32 %10521, %10523
  %10525 = sext i32 %10524 to i64
  %10526 = getelementptr inbounds double, ptr %10520, i64 %10525
  %10527 = load double, ptr %10526, align 8, !tbaa !11
  %10528 = call double @llvm.fmuladd.f64(double 0xBFBEED13A9F0D909, double %10527, double %10519)
  %10529 = load ptr, ptr %7, align 8, !tbaa !9
  %10530 = load i32, ptr %12, align 4, !tbaa !5
  %10531 = load i32, ptr %8, align 4, !tbaa !5
  %10532 = mul nsw i32 22, %10531
  %10533 = add nsw i32 %10530, %10532
  %10534 = sext i32 %10533 to i64
  %10535 = getelementptr inbounds double, ptr %10529, i64 %10534
  %10536 = load double, ptr %10535, align 8, !tbaa !11
  %10537 = call double @llvm.fmuladd.f64(double 0xBFA352D4DB969C0E, double %10536, double %10528)
  %10538 = load ptr, ptr %7, align 8, !tbaa !9
  %10539 = load i32, ptr %12, align 4, !tbaa !5
  %10540 = load i32, ptr %8, align 4, !tbaa !5
  %10541 = mul nsw i32 23, %10540
  %10542 = add nsw i32 %10539, %10541
  %10543 = sext i32 %10542 to i64
  %10544 = getelementptr inbounds double, ptr %10538, i64 %10543
  %10545 = load double, ptr %10544, align 8, !tbaa !11
  %10546 = call double @llvm.fmuladd.f64(double 0x3FA87D764354851C, double %10545, double %10537)
  %10547 = load ptr, ptr %7, align 8, !tbaa !9
  %10548 = load i32, ptr %12, align 4, !tbaa !5
  %10549 = load i32, ptr %8, align 4, !tbaa !5
  %10550 = mul nsw i32 24, %10549
  %10551 = add nsw i32 %10548, %10550
  %10552 = sext i32 %10551 to i64
  %10553 = getelementptr inbounds double, ptr %10547, i64 %10552
  %10554 = load double, ptr %10553, align 8, !tbaa !11
  %10555 = call double @llvm.fmuladd.f64(double 0x3F9854E0ADA34BC3, double %10554, double %10546)
  %10556 = load ptr, ptr %7, align 8, !tbaa !9
  %10557 = load i32, ptr %12, align 4, !tbaa !5
  %10558 = load i32, ptr %8, align 4, !tbaa !5
  %10559 = mul nsw i32 25, %10558
  %10560 = add nsw i32 %10557, %10559
  %10561 = sext i32 %10560 to i64
  %10562 = getelementptr inbounds double, ptr %10556, i64 %10561
  %10563 = load double, ptr %10562, align 8, !tbaa !11
  %10564 = call double @llvm.fmuladd.f64(double 0xBFD41C0D131D4295, double %10563, double %10555)
  %10565 = load ptr, ptr %7, align 8, !tbaa !9
  %10566 = load i32, ptr %12, align 4, !tbaa !5
  %10567 = load i32, ptr %8, align 4, !tbaa !5
  %10568 = mul nsw i32 26, %10567
  %10569 = add nsw i32 %10566, %10568
  %10570 = sext i32 %10569 to i64
  %10571 = getelementptr inbounds double, ptr %10565, i64 %10570
  %10572 = load double, ptr %10571, align 8, !tbaa !11
  %10573 = call double @llvm.fmuladd.f64(double 0x3FF670C5F1F4C92E, double %10572, double %10564)
  %10574 = load ptr, ptr %7, align 8, !tbaa !9
  %10575 = load i32, ptr %12, align 4, !tbaa !5
  %10576 = load i32, ptr %8, align 4, !tbaa !5
  %10577 = mul nsw i32 27, %10576
  %10578 = add nsw i32 %10575, %10577
  %10579 = sext i32 %10578 to i64
  %10580 = getelementptr inbounds double, ptr %10574, i64 %10579
  %10581 = load double, ptr %10580, align 8, !tbaa !11
  %10582 = call double @llvm.fmuladd.f64(double 0x3FC36A9134CD3C5C, double %10581, double %10573)
  %10583 = load ptr, ptr %7, align 8, !tbaa !9
  %10584 = load i32, ptr %12, align 4, !tbaa !5
  %10585 = load i32, ptr %8, align 4, !tbaa !5
  %10586 = mul nsw i32 28, %10585
  %10587 = add nsw i32 %10584, %10586
  %10588 = sext i32 %10587 to i64
  %10589 = getelementptr inbounds double, ptr %10583, i64 %10588
  %10590 = load double, ptr %10589, align 8, !tbaa !11
  %10591 = call double @llvm.fmuladd.f64(double 0x3FD35DAE88CBA64B, double %10590, double %10582)
  %10592 = load ptr, ptr %7, align 8, !tbaa !9
  %10593 = load i32, ptr %12, align 4, !tbaa !5
  %10594 = load i32, ptr %8, align 4, !tbaa !5
  %10595 = mul nsw i32 29, %10594
  %10596 = add nsw i32 %10593, %10595
  %10597 = sext i32 %10596 to i64
  %10598 = getelementptr inbounds double, ptr %10592, i64 %10597
  %10599 = load double, ptr %10598, align 8, !tbaa !11
  %10600 = call double @llvm.fmuladd.f64(double 0x3FC27B05E24EC5FB, double %10599, double %10591)
  %10601 = load ptr, ptr %7, align 8, !tbaa !9
  %10602 = load i32, ptr %12, align 4, !tbaa !5
  %10603 = load i32, ptr %8, align 4, !tbaa !5
  %10604 = mul nsw i32 30, %10603
  %10605 = add nsw i32 %10602, %10604
  %10606 = sext i32 %10605 to i64
  %10607 = getelementptr inbounds double, ptr %10601, i64 %10606
  %10608 = load double, ptr %10607, align 8, !tbaa !11
  %10609 = call double @llvm.fmuladd.f64(double 0xBC9A000000000000, double %10608, double %10600)
  %10610 = load ptr, ptr %7, align 8, !tbaa !9
  %10611 = load i32, ptr %12, align 4, !tbaa !5
  %10612 = load i32, ptr %8, align 4, !tbaa !5
  %10613 = mul nsw i32 31, %10612
  %10614 = add nsw i32 %10611, %10613
  %10615 = sext i32 %10614 to i64
  %10616 = getelementptr inbounds double, ptr %10610, i64 %10615
  %10617 = load double, ptr %10616, align 8, !tbaa !11
  %10618 = call double @llvm.fmuladd.f64(double 0xBC96000000000000, double %10617, double %10609)
  %10619 = load ptr, ptr %7, align 8, !tbaa !9
  %10620 = load i32, ptr %12, align 4, !tbaa !5
  %10621 = load i32, ptr %8, align 4, !tbaa !5
  %10622 = mul nsw i32 32, %10621
  %10623 = add nsw i32 %10620, %10622
  %10624 = sext i32 %10623 to i64
  %10625 = getelementptr inbounds double, ptr %10619, i64 %10624
  %10626 = load double, ptr %10625, align 8, !tbaa !11
  %10627 = call double @llvm.fmuladd.f64(double 0x3C82FFFFFFFFFFFF, double %10626, double %10618)
  %10628 = load ptr, ptr %7, align 8, !tbaa !9
  %10629 = load i32, ptr %12, align 4, !tbaa !5
  %10630 = load i32, ptr %8, align 4, !tbaa !5
  %10631 = mul nsw i32 33, %10630
  %10632 = add nsw i32 %10629, %10631
  %10633 = sext i32 %10632 to i64
  %10634 = getelementptr inbounds double, ptr %10628, i64 %10633
  %10635 = load double, ptr %10634, align 8, !tbaa !11
  %10636 = call double @llvm.fmuladd.f64(double 0x3C7C000000000000, double %10635, double %10627)
  %10637 = load ptr, ptr %7, align 8, !tbaa !9
  %10638 = load i32, ptr %12, align 4, !tbaa !5
  %10639 = load i32, ptr %8, align 4, !tbaa !5
  %10640 = mul nsw i32 34, %10639
  %10641 = add nsw i32 %10638, %10640
  %10642 = sext i32 %10641 to i64
  %10643 = getelementptr inbounds double, ptr %10637, i64 %10642
  %10644 = load double, ptr %10643, align 8, !tbaa !11
  %10645 = call double @llvm.fmuladd.f64(double 0xBC92000000000000, double %10644, double %10636)
  %10646 = load ptr, ptr %7, align 8, !tbaa !9
  %10647 = load i32, ptr %12, align 4, !tbaa !5
  %10648 = load i32, ptr %8, align 4, !tbaa !5
  %10649 = mul nsw i32 35, %10648
  %10650 = add nsw i32 %10647, %10649
  %10651 = sext i32 %10650 to i64
  %10652 = getelementptr inbounds double, ptr %10646, i64 %10651
  %10653 = load double, ptr %10652, align 8, !tbaa !11
  %10654 = call double @llvm.fmuladd.f64(double 0xBC99000000000000, double %10653, double %10645)
  %10655 = load ptr, ptr %7, align 8, !tbaa !9
  %10656 = load i32, ptr %12, align 4, !tbaa !5
  %10657 = load i32, ptr %8, align 4, !tbaa !5
  %10658 = mul nsw i32 36, %10657
  %10659 = add nsw i32 %10656, %10658
  %10660 = sext i32 %10659 to i64
  %10661 = getelementptr inbounds double, ptr %10655, i64 %10660
  %10662 = load double, ptr %10661, align 8, !tbaa !11
  %10663 = call double @llvm.fmuladd.f64(double 0x3CA4000000000001, double %10662, double %10654)
  %10664 = load ptr, ptr %7, align 8, !tbaa !9
  %10665 = load i32, ptr %12, align 4, !tbaa !5
  %10666 = load i32, ptr %8, align 4, !tbaa !5
  %10667 = mul nsw i32 37, %10666
  %10668 = add nsw i32 %10665, %10667
  %10669 = sext i32 %10668 to i64
  %10670 = getelementptr inbounds double, ptr %10664, i64 %10669
  %10671 = load double, ptr %10670, align 8, !tbaa !11
  %10672 = call double @llvm.fmuladd.f64(double 0xBCB8E00000000000, double %10671, double %10663)
  %10673 = load ptr, ptr %7, align 8, !tbaa !9
  %10674 = load i32, ptr %12, align 4, !tbaa !5
  %10675 = load i32, ptr %8, align 4, !tbaa !5
  %10676 = mul nsw i32 38, %10675
  %10677 = add nsw i32 %10674, %10676
  %10678 = sext i32 %10677 to i64
  %10679 = getelementptr inbounds double, ptr %10673, i64 %10678
  %10680 = load double, ptr %10679, align 8, !tbaa !11
  %10681 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %10680, double %10672)
  %10682 = load ptr, ptr %7, align 8, !tbaa !9
  %10683 = load i32, ptr %12, align 4, !tbaa !5
  %10684 = load i32, ptr %8, align 4, !tbaa !5
  %10685 = mul nsw i32 39, %10684
  %10686 = add nsw i32 %10683, %10685
  %10687 = sext i32 %10686 to i64
  %10688 = getelementptr inbounds double, ptr %10682, i64 %10687
  %10689 = load double, ptr %10688, align 8, !tbaa !11
  %10690 = call double @llvm.fmuladd.f64(double 0x3C84000000000000, double %10689, double %10681)
  store double %10690, ptr %11, align 8, !tbaa !11
  %10691 = load double, ptr %11, align 8, !tbaa !11
  %10692 = load ptr, ptr %9, align 8, !tbaa !9
  %10693 = load i32, ptr %12, align 4, !tbaa !5
  %10694 = load i32, ptr %10, align 4, !tbaa !5
  %10695 = mul nsw i32 29, %10694
  %10696 = add nsw i32 %10693, %10695
  %10697 = sext i32 %10696 to i64
  %10698 = getelementptr inbounds double, ptr %10692, i64 %10697
  store double %10691, ptr %10698, align 8, !tbaa !11
  %10699 = load ptr, ptr %7, align 8, !tbaa !9
  %10700 = load i32, ptr %12, align 4, !tbaa !5
  %10701 = load i32, ptr %8, align 4, !tbaa !5
  %10702 = mul nsw i32 0, %10701
  %10703 = add nsw i32 %10700, %10702
  %10704 = sext i32 %10703 to i64
  %10705 = getelementptr inbounds double, ptr %10699, i64 %10704
  %10706 = load double, ptr %10705, align 8, !tbaa !11
  %10707 = load ptr, ptr %7, align 8, !tbaa !9
  %10708 = load i32, ptr %12, align 4, !tbaa !5
  %10709 = load i32, ptr %8, align 4, !tbaa !5
  %10710 = mul nsw i32 1, %10709
  %10711 = add nsw i32 %10708, %10710
  %10712 = sext i32 %10711 to i64
  %10713 = getelementptr inbounds double, ptr %10707, i64 %10712
  %10714 = load double, ptr %10713, align 8, !tbaa !11
  %10715 = fmul double 0xBCA9000000000000, %10714
  %10716 = call double @llvm.fmuladd.f64(double 0x3CBD800000000001, double %10706, double %10715)
  %10717 = load ptr, ptr %7, align 8, !tbaa !9
  %10718 = load i32, ptr %12, align 4, !tbaa !5
  %10719 = load i32, ptr %8, align 4, !tbaa !5
  %10720 = mul nsw i32 2, %10719
  %10721 = add nsw i32 %10718, %10720
  %10722 = sext i32 %10721 to i64
  %10723 = getelementptr inbounds double, ptr %10717, i64 %10722
  %10724 = load double, ptr %10723, align 8, !tbaa !11
  %10725 = call double @llvm.fmuladd.f64(double 0xBCADDFFFFFFFFFFE, double %10724, double %10716)
  %10726 = load ptr, ptr %7, align 8, !tbaa !9
  %10727 = load i32, ptr %12, align 4, !tbaa !5
  %10728 = load i32, ptr %8, align 4, !tbaa !5
  %10729 = mul nsw i32 3, %10728
  %10730 = add nsw i32 %10727, %10729
  %10731 = sext i32 %10730 to i64
  %10732 = getelementptr inbounds double, ptr %10726, i64 %10731
  %10733 = load double, ptr %10732, align 8, !tbaa !11
  %10734 = call double @llvm.fmuladd.f64(double 0x3C91400000000000, double %10733, double %10725)
  %10735 = load ptr, ptr %7, align 8, !tbaa !9
  %10736 = load i32, ptr %12, align 4, !tbaa !5
  %10737 = load i32, ptr %8, align 4, !tbaa !5
  %10738 = mul nsw i32 4, %10737
  %10739 = add nsw i32 %10736, %10738
  %10740 = sext i32 %10739 to i64
  %10741 = getelementptr inbounds double, ptr %10735, i64 %10740
  %10742 = load double, ptr %10741, align 8, !tbaa !11
  %10743 = call double @llvm.fmuladd.f64(double 0x3C9C000000000000, double %10742, double %10734)
  %10744 = load ptr, ptr %7, align 8, !tbaa !9
  %10745 = load i32, ptr %12, align 4, !tbaa !5
  %10746 = load i32, ptr %8, align 4, !tbaa !5
  %10747 = mul nsw i32 5, %10746
  %10748 = add nsw i32 %10745, %10747
  %10749 = sext i32 %10748 to i64
  %10750 = getelementptr inbounds double, ptr %10744, i64 %10749
  %10751 = load double, ptr %10750, align 8, !tbaa !11
  %10752 = call double @llvm.fmuladd.f64(double 0xBCA0000000000002, double %10751, double %10743)
  %10753 = load ptr, ptr %7, align 8, !tbaa !9
  %10754 = load i32, ptr %12, align 4, !tbaa !5
  %10755 = load i32, ptr %8, align 4, !tbaa !5
  %10756 = mul nsw i32 6, %10755
  %10757 = add nsw i32 %10754, %10756
  %10758 = sext i32 %10757 to i64
  %10759 = getelementptr inbounds double, ptr %10753, i64 %10758
  %10760 = load double, ptr %10759, align 8, !tbaa !11
  %10761 = call double @llvm.fmuladd.f64(double 0xBCBADFFFFFFFFFFF, double %10760, double %10752)
  %10762 = load ptr, ptr %7, align 8, !tbaa !9
  %10763 = load i32, ptr %12, align 4, !tbaa !5
  %10764 = load i32, ptr %8, align 4, !tbaa !5
  %10765 = mul nsw i32 7, %10764
  %10766 = add nsw i32 %10763, %10765
  %10767 = sext i32 %10766 to i64
  %10768 = getelementptr inbounds double, ptr %10762, i64 %10767
  %10769 = load double, ptr %10768, align 8, !tbaa !11
  %10770 = call double @llvm.fmuladd.f64(double 0x3C95000000000000, double %10769, double %10761)
  %10771 = load ptr, ptr %7, align 8, !tbaa !9
  %10772 = load i32, ptr %12, align 4, !tbaa !5
  %10773 = load i32, ptr %8, align 4, !tbaa !5
  %10774 = mul nsw i32 8, %10773
  %10775 = add nsw i32 %10772, %10774
  %10776 = sext i32 %10775 to i64
  %10777 = getelementptr inbounds double, ptr %10771, i64 %10776
  %10778 = load double, ptr %10777, align 8, !tbaa !11
  %10779 = call double @llvm.fmuladd.f64(double 0x3C9DFFFFFFFFFFFE, double %10778, double %10770)
  %10780 = load ptr, ptr %7, align 8, !tbaa !9
  %10781 = load i32, ptr %12, align 4, !tbaa !5
  %10782 = load i32, ptr %8, align 4, !tbaa !5
  %10783 = mul nsw i32 9, %10782
  %10784 = add nsw i32 %10781, %10783
  %10785 = sext i32 %10784 to i64
  %10786 = getelementptr inbounds double, ptr %10780, i64 %10785
  %10787 = load double, ptr %10786, align 8, !tbaa !11
  %10788 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %10787, double %10779)
  %10789 = load ptr, ptr %7, align 8, !tbaa !9
  %10790 = load i32, ptr %12, align 4, !tbaa !5
  %10791 = load i32, ptr %8, align 4, !tbaa !5
  %10792 = mul nsw i32 10, %10791
  %10793 = add nsw i32 %10790, %10792
  %10794 = sext i32 %10793 to i64
  %10795 = getelementptr inbounds double, ptr %10789, i64 %10794
  %10796 = load double, ptr %10795, align 8, !tbaa !11
  %10797 = call double @llvm.fmuladd.f64(double 0xBCB3FFFFFFFFFFFF, double %10796, double %10788)
  %10798 = load ptr, ptr %7, align 8, !tbaa !9
  %10799 = load i32, ptr %12, align 4, !tbaa !5
  %10800 = load i32, ptr %8, align 4, !tbaa !5
  %10801 = mul nsw i32 12, %10800
  %10802 = add nsw i32 %10799, %10801
  %10803 = sext i32 %10802 to i64
  %10804 = getelementptr inbounds double, ptr %10798, i64 %10803
  %10805 = load double, ptr %10804, align 8, !tbaa !11
  %10806 = call double @llvm.fmuladd.f64(double 0x3C9CFFFFFFFFFFFF, double %10805, double %10797)
  %10807 = load ptr, ptr %7, align 8, !tbaa !9
  %10808 = load i32, ptr %12, align 4, !tbaa !5
  %10809 = load i32, ptr %8, align 4, !tbaa !5
  %10810 = mul nsw i32 13, %10809
  %10811 = add nsw i32 %10808, %10810
  %10812 = sext i32 %10811 to i64
  %10813 = getelementptr inbounds double, ptr %10807, i64 %10812
  %10814 = load double, ptr %10813, align 8, !tbaa !11
  %10815 = call double @llvm.fmuladd.f64(double 0x3CAF800000000000, double %10814, double %10806)
  %10816 = load ptr, ptr %7, align 8, !tbaa !9
  %10817 = load i32, ptr %12, align 4, !tbaa !5
  %10818 = load i32, ptr %8, align 4, !tbaa !5
  %10819 = mul nsw i32 14, %10818
  %10820 = add nsw i32 %10817, %10819
  %10821 = sext i32 %10820 to i64
  %10822 = getelementptr inbounds double, ptr %10816, i64 %10821
  %10823 = load double, ptr %10822, align 8, !tbaa !11
  %10824 = call double @llvm.fmuladd.f64(double 0x3CB0000000000000, double %10823, double %10815)
  %10825 = load ptr, ptr %7, align 8, !tbaa !9
  %10826 = load i32, ptr %12, align 4, !tbaa !5
  %10827 = load i32, ptr %8, align 4, !tbaa !5
  %10828 = mul nsw i32 15, %10827
  %10829 = add nsw i32 %10826, %10828
  %10830 = sext i32 %10829 to i64
  %10831 = getelementptr inbounds double, ptr %10825, i64 %10830
  %10832 = load double, ptr %10831, align 8, !tbaa !11
  %10833 = call double @llvm.fmuladd.f64(double 0x3CB8000000000001, double %10832, double %10824)
  %10834 = load ptr, ptr %7, align 8, !tbaa !9
  %10835 = load i32, ptr %12, align 4, !tbaa !5
  %10836 = load i32, ptr %8, align 4, !tbaa !5
  %10837 = mul nsw i32 16, %10836
  %10838 = add nsw i32 %10835, %10837
  %10839 = sext i32 %10838 to i64
  %10840 = getelementptr inbounds double, ptr %10834, i64 %10839
  %10841 = load double, ptr %10840, align 8, !tbaa !11
  %10842 = call double @llvm.fmuladd.f64(double 0xBCC1C00000000000, double %10841, double %10833)
  %10843 = load ptr, ptr %7, align 8, !tbaa !9
  %10844 = load i32, ptr %12, align 4, !tbaa !5
  %10845 = load i32, ptr %8, align 4, !tbaa !5
  %10846 = mul nsw i32 17, %10845
  %10847 = add nsw i32 %10844, %10846
  %10848 = sext i32 %10847 to i64
  %10849 = getelementptr inbounds double, ptr %10843, i64 %10848
  %10850 = load double, ptr %10849, align 8, !tbaa !11
  %10851 = call double @llvm.fmuladd.f64(double 0x3C96000000000000, double %10850, double %10842)
  %10852 = load ptr, ptr %7, align 8, !tbaa !9
  %10853 = load i32, ptr %12, align 4, !tbaa !5
  %10854 = load i32, ptr %8, align 4, !tbaa !5
  %10855 = mul nsw i32 18, %10854
  %10856 = add nsw i32 %10853, %10855
  %10857 = sext i32 %10856 to i64
  %10858 = getelementptr inbounds double, ptr %10852, i64 %10857
  %10859 = load double, ptr %10858, align 8, !tbaa !11
  %10860 = call double @llvm.fmuladd.f64(double 0x3C9C000000000000, double %10859, double %10851)
  %10861 = load ptr, ptr %7, align 8, !tbaa !9
  %10862 = load i32, ptr %12, align 4, !tbaa !5
  %10863 = load i32, ptr %8, align 4, !tbaa !5
  %10864 = mul nsw i32 19, %10863
  %10865 = add nsw i32 %10862, %10864
  %10866 = sext i32 %10865 to i64
  %10867 = getelementptr inbounds double, ptr %10861, i64 %10866
  %10868 = load double, ptr %10867, align 8, !tbaa !11
  %10869 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %10868, double %10860)
  %10870 = load ptr, ptr %7, align 8, !tbaa !9
  %10871 = load i32, ptr %12, align 4, !tbaa !5
  %10872 = load i32, ptr %8, align 4, !tbaa !5
  %10873 = mul nsw i32 20, %10872
  %10874 = add nsw i32 %10871, %10873
  %10875 = sext i32 %10874 to i64
  %10876 = getelementptr inbounds double, ptr %10870, i64 %10875
  %10877 = load double, ptr %10876, align 8, !tbaa !11
  %10878 = call double @llvm.fmuladd.f64(double 0xBFE333710B32A29A, double %10877, double %10869)
  %10879 = load ptr, ptr %7, align 8, !tbaa !9
  %10880 = load i32, ptr %12, align 4, !tbaa !5
  %10881 = load i32, ptr %8, align 4, !tbaa !5
  %10882 = mul nsw i32 21, %10881
  %10883 = add nsw i32 %10880, %10882
  %10884 = sext i32 %10883 to i64
  %10885 = getelementptr inbounds double, ptr %10879, i64 %10884
  %10886 = load double, ptr %10885, align 8, !tbaa !11
  %10887 = call double @llvm.fmuladd.f64(double 0xBFBEED13A9F0D8FA, double %10886, double %10878)
  %10888 = load ptr, ptr %7, align 8, !tbaa !9
  %10889 = load i32, ptr %12, align 4, !tbaa !5
  %10890 = load i32, ptr %8, align 4, !tbaa !5
  %10891 = mul nsw i32 22, %10890
  %10892 = add nsw i32 %10889, %10891
  %10893 = sext i32 %10892 to i64
  %10894 = getelementptr inbounds double, ptr %10888, i64 %10893
  %10895 = load double, ptr %10894, align 8, !tbaa !11
  %10896 = call double @llvm.fmuladd.f64(double 0x3FA87D76435484F4, double %10895, double %10887)
  %10897 = load ptr, ptr %7, align 8, !tbaa !9
  %10898 = load i32, ptr %12, align 4, !tbaa !5
  %10899 = load i32, ptr %8, align 4, !tbaa !5
  %10900 = mul nsw i32 23, %10899
  %10901 = add nsw i32 %10898, %10900
  %10902 = sext i32 %10901 to i64
  %10903 = getelementptr inbounds double, ptr %10897, i64 %10902
  %10904 = load double, ptr %10903, align 8, !tbaa !11
  %10905 = call double @llvm.fmuladd.f64(double 0xBFA352D4DB969BF2, double %10904, double %10896)
  %10906 = load ptr, ptr %7, align 8, !tbaa !9
  %10907 = load i32, ptr %12, align 4, !tbaa !5
  %10908 = load i32, ptr %8, align 4, !tbaa !5
  %10909 = mul nsw i32 24, %10908
  %10910 = add nsw i32 %10907, %10909
  %10911 = sext i32 %10910 to i64
  %10912 = getelementptr inbounds double, ptr %10906, i64 %10911
  %10913 = load double, ptr %10912, align 8, !tbaa !11
  %10914 = call double @llvm.fmuladd.f64(double 0xBFD41C0D131D428E, double %10913, double %10905)
  %10915 = load ptr, ptr %7, align 8, !tbaa !9
  %10916 = load i32, ptr %12, align 4, !tbaa !5
  %10917 = load i32, ptr %8, align 4, !tbaa !5
  %10918 = mul nsw i32 25, %10917
  %10919 = add nsw i32 %10916, %10918
  %10920 = sext i32 %10919 to i64
  %10921 = getelementptr inbounds double, ptr %10915, i64 %10920
  %10922 = load double, ptr %10921, align 8, !tbaa !11
  %10923 = call double @llvm.fmuladd.f64(double 0x3F9854E0ADA34ACB, double %10922, double %10914)
  %10924 = load ptr, ptr %7, align 8, !tbaa !9
  %10925 = load i32, ptr %12, align 4, !tbaa !5
  %10926 = load i32, ptr %8, align 4, !tbaa !5
  %10927 = mul nsw i32 26, %10926
  %10928 = add nsw i32 %10925, %10927
  %10929 = sext i32 %10928 to i64
  %10930 = getelementptr inbounds double, ptr %10924, i64 %10929
  %10931 = load double, ptr %10930, align 8, !tbaa !11
  %10932 = call double @llvm.fmuladd.f64(double 0x3FC36A9134CD3C5F, double %10931, double %10923)
  %10933 = load ptr, ptr %7, align 8, !tbaa !9
  %10934 = load i32, ptr %12, align 4, !tbaa !5
  %10935 = load i32, ptr %8, align 4, !tbaa !5
  %10936 = mul nsw i32 27, %10935
  %10937 = add nsw i32 %10934, %10936
  %10938 = sext i32 %10937 to i64
  %10939 = getelementptr inbounds double, ptr %10933, i64 %10938
  %10940 = load double, ptr %10939, align 8, !tbaa !11
  %10941 = call double @llvm.fmuladd.f64(double 0x3FF670C5F1F4C92E, double %10940, double %10932)
  %10942 = load ptr, ptr %7, align 8, !tbaa !9
  %10943 = load i32, ptr %12, align 4, !tbaa !5
  %10944 = load i32, ptr %8, align 4, !tbaa !5
  %10945 = mul nsw i32 28, %10944
  %10946 = add nsw i32 %10943, %10945
  %10947 = sext i32 %10946 to i64
  %10948 = getelementptr inbounds double, ptr %10942, i64 %10947
  %10949 = load double, ptr %10948, align 8, !tbaa !11
  %10950 = call double @llvm.fmuladd.f64(double 0x3FC27B05E24EC5F8, double %10949, double %10941)
  %10951 = load ptr, ptr %7, align 8, !tbaa !9
  %10952 = load i32, ptr %12, align 4, !tbaa !5
  %10953 = load i32, ptr %8, align 4, !tbaa !5
  %10954 = mul nsw i32 29, %10953
  %10955 = add nsw i32 %10952, %10954
  %10956 = sext i32 %10955 to i64
  %10957 = getelementptr inbounds double, ptr %10951, i64 %10956
  %10958 = load double, ptr %10957, align 8, !tbaa !11
  %10959 = call double @llvm.fmuladd.f64(double 0x3FD35DAE88CBA648, double %10958, double %10950)
  %10960 = load ptr, ptr %7, align 8, !tbaa !9
  %10961 = load i32, ptr %12, align 4, !tbaa !5
  %10962 = load i32, ptr %8, align 4, !tbaa !5
  %10963 = mul nsw i32 30, %10962
  %10964 = add nsw i32 %10961, %10963
  %10965 = sext i32 %10964 to i64
  %10966 = getelementptr inbounds double, ptr %10960, i64 %10965
  %10967 = load double, ptr %10966, align 8, !tbaa !11
  %10968 = call double @llvm.fmuladd.f64(double 0xBCA9000000000000, double %10967, double %10959)
  %10969 = load ptr, ptr %7, align 8, !tbaa !9
  %10970 = load i32, ptr %12, align 4, !tbaa !5
  %10971 = load i32, ptr %8, align 4, !tbaa !5
  %10972 = mul nsw i32 31, %10971
  %10973 = add nsw i32 %10970, %10972
  %10974 = sext i32 %10973 to i64
  %10975 = getelementptr inbounds double, ptr %10969, i64 %10974
  %10976 = load double, ptr %10975, align 8, !tbaa !11
  %10977 = call double @llvm.fmuladd.f64(double 0xBCA1000000000001, double %10976, double %10968)
  %10978 = load ptr, ptr %7, align 8, !tbaa !9
  %10979 = load i32, ptr %12, align 4, !tbaa !5
  %10980 = load i32, ptr %8, align 4, !tbaa !5
  %10981 = mul nsw i32 32, %10980
  %10982 = add nsw i32 %10979, %10981
  %10983 = sext i32 %10982 to i64
  %10984 = getelementptr inbounds double, ptr %10978, i64 %10983
  %10985 = load double, ptr %10984, align 8, !tbaa !11
  %10986 = call double @llvm.fmuladd.f64(double 0xBCA1400000000000, double %10985, double %10977)
  %10987 = load ptr, ptr %7, align 8, !tbaa !9
  %10988 = load i32, ptr %12, align 4, !tbaa !5
  %10989 = load i32, ptr %8, align 4, !tbaa !5
  %10990 = mul nsw i32 33, %10989
  %10991 = add nsw i32 %10988, %10990
  %10992 = sext i32 %10991 to i64
  %10993 = getelementptr inbounds double, ptr %10987, i64 %10992
  %10994 = load double, ptr %10993, align 8, !tbaa !11
  %10995 = call double @llvm.fmuladd.f64(double 0xBC94000000000000, double %10994, double %10986)
  %10996 = load ptr, ptr %7, align 8, !tbaa !9
  %10997 = load i32, ptr %12, align 4, !tbaa !5
  %10998 = load i32, ptr %8, align 4, !tbaa !5
  %10999 = mul nsw i32 34, %10998
  %11000 = add nsw i32 %10997, %10999
  %11001 = sext i32 %11000 to i64
  %11002 = getelementptr inbounds double, ptr %10996, i64 %11001
  %11003 = load double, ptr %11002, align 8, !tbaa !11
  %11004 = call double @llvm.fmuladd.f64(double 0xBCA7800000000001, double %11003, double %10995)
  %11005 = load ptr, ptr %7, align 8, !tbaa !9
  %11006 = load i32, ptr %12, align 4, !tbaa !5
  %11007 = load i32, ptr %8, align 4, !tbaa !5
  %11008 = mul nsw i32 35, %11007
  %11009 = add nsw i32 %11006, %11008
  %11010 = sext i32 %11009 to i64
  %11011 = getelementptr inbounds double, ptr %11005, i64 %11010
  %11012 = load double, ptr %11011, align 8, !tbaa !11
  %11013 = call double @llvm.fmuladd.f64(double 0xBC9C000000000000, double %11012, double %11004)
  %11014 = load ptr, ptr %7, align 8, !tbaa !9
  %11015 = load i32, ptr %12, align 4, !tbaa !5
  %11016 = load i32, ptr %8, align 4, !tbaa !5
  %11017 = mul nsw i32 36, %11016
  %11018 = add nsw i32 %11015, %11017
  %11019 = sext i32 %11018 to i64
  %11020 = getelementptr inbounds double, ptr %11014, i64 %11019
  %11021 = load double, ptr %11020, align 8, !tbaa !11
  %11022 = call double @llvm.fmuladd.f64(double 0x3CB6800000000000, double %11021, double %11013)
  %11023 = load ptr, ptr %7, align 8, !tbaa !9
  %11024 = load i32, ptr %12, align 4, !tbaa !5
  %11025 = load i32, ptr %8, align 4, !tbaa !5
  %11026 = mul nsw i32 37, %11025
  %11027 = add nsw i32 %11024, %11026
  %11028 = sext i32 %11027 to i64
  %11029 = getelementptr inbounds double, ptr %11023, i64 %11028
  %11030 = load double, ptr %11029, align 8, !tbaa !11
  %11031 = call double @llvm.fmuladd.f64(double 0xBCB8A00000000000, double %11030, double %11022)
  %11032 = load ptr, ptr %7, align 8, !tbaa !9
  %11033 = load i32, ptr %12, align 4, !tbaa !5
  %11034 = load i32, ptr %8, align 4, !tbaa !5
  %11035 = mul nsw i32 38, %11034
  %11036 = add nsw i32 %11033, %11035
  %11037 = sext i32 %11036 to i64
  %11038 = getelementptr inbounds double, ptr %11032, i64 %11037
  %11039 = load double, ptr %11038, align 8, !tbaa !11
  %11040 = call double @llvm.fmuladd.f64(double 0xBCA4000000000001, double %11039, double %11031)
  %11041 = load ptr, ptr %7, align 8, !tbaa !9
  %11042 = load i32, ptr %12, align 4, !tbaa !5
  %11043 = load i32, ptr %8, align 4, !tbaa !5
  %11044 = mul nsw i32 39, %11043
  %11045 = add nsw i32 %11042, %11044
  %11046 = sext i32 %11045 to i64
  %11047 = getelementptr inbounds double, ptr %11041, i64 %11046
  %11048 = load double, ptr %11047, align 8, !tbaa !11
  %11049 = call double @llvm.fmuladd.f64(double 0x3C8C000000000000, double %11048, double %11040)
  store double %11049, ptr %11, align 8, !tbaa !11
  %11050 = load double, ptr %11, align 8, !tbaa !11
  %11051 = load ptr, ptr %9, align 8, !tbaa !9
  %11052 = load i32, ptr %12, align 4, !tbaa !5
  %11053 = load i32, ptr %10, align 4, !tbaa !5
  %11054 = mul nsw i32 30, %11053
  %11055 = add nsw i32 %11052, %11054
  %11056 = sext i32 %11055 to i64
  %11057 = getelementptr inbounds double, ptr %11051, i64 %11056
  store double %11050, ptr %11057, align 8, !tbaa !11
  %11058 = load ptr, ptr %7, align 8, !tbaa !9
  %11059 = load i32, ptr %12, align 4, !tbaa !5
  %11060 = load i32, ptr %8, align 4, !tbaa !5
  %11061 = mul nsw i32 0, %11060
  %11062 = add nsw i32 %11059, %11061
  %11063 = sext i32 %11062 to i64
  %11064 = getelementptr inbounds double, ptr %11058, i64 %11063
  %11065 = load double, ptr %11064, align 8, !tbaa !11
  %11066 = load ptr, ptr %7, align 8, !tbaa !9
  %11067 = load i32, ptr %12, align 4, !tbaa !5
  %11068 = load i32, ptr %8, align 4, !tbaa !5
  %11069 = mul nsw i32 1, %11068
  %11070 = add nsw i32 %11067, %11069
  %11071 = sext i32 %11070 to i64
  %11072 = getelementptr inbounds double, ptr %11066, i64 %11071
  %11073 = load double, ptr %11072, align 8, !tbaa !11
  %11074 = fmul double 0xBCB0000000000000, %11073
  %11075 = call double @llvm.fmuladd.f64(double 0xBCC8400000000000, double %11065, double %11074)
  %11076 = load ptr, ptr %7, align 8, !tbaa !9
  %11077 = load i32, ptr %12, align 4, !tbaa !5
  %11078 = load i32, ptr %8, align 4, !tbaa !5
  %11079 = mul nsw i32 2, %11078
  %11080 = add nsw i32 %11077, %11079
  %11081 = sext i32 %11080 to i64
  %11082 = getelementptr inbounds double, ptr %11076, i64 %11081
  %11083 = load double, ptr %11082, align 8, !tbaa !11
  %11084 = call double @llvm.fmuladd.f64(double 0x3CB42FFFFFFFFFFF, double %11083, double %11075)
  %11085 = load ptr, ptr %7, align 8, !tbaa !9
  %11086 = load i32, ptr %12, align 4, !tbaa !5
  %11087 = load i32, ptr %8, align 4, !tbaa !5
  %11088 = mul nsw i32 3, %11087
  %11089 = add nsw i32 %11086, %11088
  %11090 = sext i32 %11089 to i64
  %11091 = getelementptr inbounds double, ptr %11085, i64 %11090
  %11092 = load double, ptr %11091, align 8, !tbaa !11
  %11093 = call double @llvm.fmuladd.f64(double 0xBC91400000000000, double %11092, double %11084)
  %11094 = load ptr, ptr %7, align 8, !tbaa !9
  %11095 = load i32, ptr %12, align 4, !tbaa !5
  %11096 = load i32, ptr %8, align 4, !tbaa !5
  %11097 = mul nsw i32 4, %11096
  %11098 = add nsw i32 %11095, %11097
  %11099 = sext i32 %11098 to i64
  %11100 = getelementptr inbounds double, ptr %11094, i64 %11099
  %11101 = load double, ptr %11100, align 8, !tbaa !11
  %11102 = call double @llvm.fmuladd.f64(double 0x3C8C000000000000, double %11101, double %11093)
  %11103 = load ptr, ptr %7, align 8, !tbaa !9
  %11104 = load i32, ptr %12, align 4, !tbaa !5
  %11105 = load i32, ptr %8, align 4, !tbaa !5
  %11106 = mul nsw i32 5, %11105
  %11107 = add nsw i32 %11104, %11106
  %11108 = sext i32 %11107 to i64
  %11109 = getelementptr inbounds double, ptr %11103, i64 %11108
  %11110 = load double, ptr %11109, align 8, !tbaa !11
  %11111 = call double @llvm.fmuladd.f64(double 0xBCAE000000000002, double %11110, double %11102)
  %11112 = load ptr, ptr %7, align 8, !tbaa !9
  %11113 = load i32, ptr %12, align 4, !tbaa !5
  %11114 = load i32, ptr %8, align 4, !tbaa !5
  %11115 = mul nsw i32 6, %11114
  %11116 = add nsw i32 %11113, %11115
  %11117 = sext i32 %11116 to i64
  %11118 = getelementptr inbounds double, ptr %11112, i64 %11117
  %11119 = load double, ptr %11118, align 8, !tbaa !11
  %11120 = call double @llvm.fmuladd.f64(double 0xBC93800000000000, double %11119, double %11111)
  %11121 = load ptr, ptr %7, align 8, !tbaa !9
  %11122 = load i32, ptr %12, align 4, !tbaa !5
  %11123 = load i32, ptr %8, align 4, !tbaa !5
  %11124 = mul nsw i32 7, %11123
  %11125 = add nsw i32 %11122, %11124
  %11126 = sext i32 %11125 to i64
  %11127 = getelementptr inbounds double, ptr %11121, i64 %11126
  %11128 = load double, ptr %11127, align 8, !tbaa !11
  %11129 = call double @llvm.fmuladd.f64(double 0x3CAE000000000002, double %11128, double %11120)
  %11130 = load ptr, ptr %7, align 8, !tbaa !9
  %11131 = load i32, ptr %12, align 4, !tbaa !5
  %11132 = load i32, ptr %8, align 4, !tbaa !5
  %11133 = mul nsw i32 8, %11132
  %11134 = add nsw i32 %11131, %11133
  %11135 = sext i32 %11134 to i64
  %11136 = getelementptr inbounds double, ptr %11130, i64 %11135
  %11137 = load double, ptr %11136, align 8, !tbaa !11
  %11138 = call double @llvm.fmuladd.f64(double 0x3C98000000000000, double %11137, double %11129)
  %11139 = load ptr, ptr %7, align 8, !tbaa !9
  %11140 = load i32, ptr %12, align 4, !tbaa !5
  %11141 = load i32, ptr %8, align 4, !tbaa !5
  %11142 = mul nsw i32 9, %11141
  %11143 = add nsw i32 %11140, %11142
  %11144 = sext i32 %11143 to i64
  %11145 = getelementptr inbounds double, ptr %11139, i64 %11144
  %11146 = load double, ptr %11145, align 8, !tbaa !11
  %11147 = call double @llvm.fmuladd.f64(double 0xBCA0000000000002, double %11146, double %11138)
  %11148 = load ptr, ptr %7, align 8, !tbaa !9
  %11149 = load i32, ptr %12, align 4, !tbaa !5
  %11150 = load i32, ptr %8, align 4, !tbaa !5
  %11151 = mul nsw i32 11, %11150
  %11152 = add nsw i32 %11149, %11151
  %11153 = sext i32 %11152 to i64
  %11154 = getelementptr inbounds double, ptr %11148, i64 %11153
  %11155 = load double, ptr %11154, align 8, !tbaa !11
  %11156 = call double @llvm.fmuladd.f64(double 0xBC88000000000000, double %11155, double %11147)
  %11157 = load ptr, ptr %7, align 8, !tbaa !9
  %11158 = load i32, ptr %12, align 4, !tbaa !5
  %11159 = load i32, ptr %8, align 4, !tbaa !5
  %11160 = mul nsw i32 12, %11159
  %11161 = add nsw i32 %11158, %11160
  %11162 = sext i32 %11161 to i64
  %11163 = getelementptr inbounds double, ptr %11157, i64 %11162
  %11164 = load double, ptr %11163, align 8, !tbaa !11
  %11165 = call double @llvm.fmuladd.f64(double 0x3CB1000000000001, double %11164, double %11156)
  %11166 = load ptr, ptr %7, align 8, !tbaa !9
  %11167 = load i32, ptr %12, align 4, !tbaa !5
  %11168 = load i32, ptr %8, align 4, !tbaa !5
  %11169 = mul nsw i32 13, %11168
  %11170 = add nsw i32 %11167, %11169
  %11171 = sext i32 %11170 to i64
  %11172 = getelementptr inbounds double, ptr %11166, i64 %11171
  %11173 = load double, ptr %11172, align 8, !tbaa !11
  %11174 = call double @llvm.fmuladd.f64(double 0x3CA4800000000001, double %11173, double %11165)
  %11175 = load ptr, ptr %7, align 8, !tbaa !9
  %11176 = load i32, ptr %12, align 4, !tbaa !5
  %11177 = load i32, ptr %8, align 4, !tbaa !5
  %11178 = mul nsw i32 14, %11177
  %11179 = add nsw i32 %11176, %11178
  %11180 = sext i32 %11179 to i64
  %11181 = getelementptr inbounds double, ptr %11175, i64 %11180
  %11182 = load double, ptr %11181, align 8, !tbaa !11
  %11183 = call double @llvm.fmuladd.f64(double 0xBC70000000000001, double %11182, double %11174)
  %11184 = load ptr, ptr %7, align 8, !tbaa !9
  %11185 = load i32, ptr %12, align 4, !tbaa !5
  %11186 = load i32, ptr %8, align 4, !tbaa !5
  %11187 = mul nsw i32 15, %11186
  %11188 = add nsw i32 %11185, %11187
  %11189 = sext i32 %11188 to i64
  %11190 = getelementptr inbounds double, ptr %11184, i64 %11189
  %11191 = load double, ptr %11190, align 8, !tbaa !11
  %11192 = call double @llvm.fmuladd.f64(double 0x3CB1000000000001, double %11191, double %11183)
  %11193 = load ptr, ptr %7, align 8, !tbaa !9
  %11194 = load i32, ptr %12, align 4, !tbaa !5
  %11195 = load i32, ptr %8, align 4, !tbaa !5
  %11196 = mul nsw i32 16, %11195
  %11197 = add nsw i32 %11194, %11196
  %11198 = sext i32 %11197 to i64
  %11199 = getelementptr inbounds double, ptr %11193, i64 %11198
  %11200 = load double, ptr %11199, align 8, !tbaa !11
  %11201 = call double @llvm.fmuladd.f64(double 0xBCC3800000000000, double %11200, double %11192)
  %11202 = load ptr, ptr %7, align 8, !tbaa !9
  %11203 = load i32, ptr %12, align 4, !tbaa !5
  %11204 = load i32, ptr %8, align 4, !tbaa !5
  %11205 = mul nsw i32 17, %11204
  %11206 = add nsw i32 %11203, %11205
  %11207 = sext i32 %11206 to i64
  %11208 = getelementptr inbounds double, ptr %11202, i64 %11207
  %11209 = load double, ptr %11208, align 8, !tbaa !11
  %11210 = call double @llvm.fmuladd.f64(double 0x3CB5800000000000, double %11209, double %11201)
  %11211 = load ptr, ptr %7, align 8, !tbaa !9
  %11212 = load i32, ptr %12, align 4, !tbaa !5
  %11213 = load i32, ptr %8, align 4, !tbaa !5
  %11214 = mul nsw i32 18, %11213
  %11215 = add nsw i32 %11212, %11214
  %11216 = sext i32 %11215 to i64
  %11217 = getelementptr inbounds double, ptr %11211, i64 %11216
  %11218 = load double, ptr %11217, align 8, !tbaa !11
  %11219 = call double @llvm.fmuladd.f64(double 0x3CA4000000000001, double %11218, double %11210)
  %11220 = load ptr, ptr %7, align 8, !tbaa !9
  %11221 = load i32, ptr %12, align 4, !tbaa !5
  %11222 = load i32, ptr %8, align 4, !tbaa !5
  %11223 = mul nsw i32 19, %11222
  %11224 = add nsw i32 %11221, %11223
  %11225 = sext i32 %11224 to i64
  %11226 = getelementptr inbounds double, ptr %11220, i64 %11225
  %11227 = load double, ptr %11226, align 8, !tbaa !11
  %11228 = call double @llvm.fmuladd.f64(double 0xBC98000000000000, double %11227, double %11219)
  %11229 = load ptr, ptr %7, align 8, !tbaa !9
  %11230 = load i32, ptr %12, align 4, !tbaa !5
  %11231 = load i32, ptr %8, align 4, !tbaa !5
  %11232 = mul nsw i32 20, %11231
  %11233 = add nsw i32 %11230, %11232
  %11234 = sext i32 %11233 to i64
  %11235 = getelementptr inbounds double, ptr %11229, i64 %11234
  %11236 = load double, ptr %11235, align 8, !tbaa !11
  %11237 = call double @llvm.fmuladd.f64(double 0xBF83152016E0EBD0, double %11236, double %11228)
  %11238 = load ptr, ptr %7, align 8, !tbaa !9
  %11239 = load i32, ptr %12, align 4, !tbaa !5
  %11240 = load i32, ptr %8, align 4, !tbaa !5
  %11241 = mul nsw i32 21, %11240
  %11242 = add nsw i32 %11239, %11241
  %11243 = sext i32 %11242 to i64
  %11244 = getelementptr inbounds double, ptr %11238, i64 %11243
  %11245 = load double, ptr %11244, align 8, !tbaa !11
  %11246 = call double @llvm.fmuladd.f64(double 0xBFB5B58B4F03B198, double %11245, double %11237)
  %11247 = load ptr, ptr %7, align 8, !tbaa !9
  %11248 = load i32, ptr %12, align 4, !tbaa !5
  %11249 = load i32, ptr %8, align 4, !tbaa !5
  %11250 = mul nsw i32 22, %11249
  %11251 = add nsw i32 %11248, %11250
  %11252 = sext i32 %11251 to i64
  %11253 = getelementptr inbounds double, ptr %11247, i64 %11252
  %11254 = load double, ptr %11253, align 8, !tbaa !11
  %11255 = call double @llvm.fmuladd.f64(double 0x3FF4EC1BB3FDC617, double %11254, double %11246)
  %11256 = load ptr, ptr %7, align 8, !tbaa !9
  %11257 = load i32, ptr %12, align 4, !tbaa !5
  %11258 = load i32, ptr %8, align 4, !tbaa !5
  %11259 = mul nsw i32 23, %11258
  %11260 = add nsw i32 %11257, %11259
  %11261 = sext i32 %11260 to i64
  %11262 = getelementptr inbounds double, ptr %11256, i64 %11261
  %11263 = load double, ptr %11262, align 8, !tbaa !11
  %11264 = call double @llvm.fmuladd.f64(double 0x3F938CE4890DB2F0, double %11263, double %11255)
  %11265 = load ptr, ptr %7, align 8, !tbaa !9
  %11266 = load i32, ptr %12, align 4, !tbaa !5
  %11267 = load i32, ptr %8, align 4, !tbaa !5
  %11268 = mul nsw i32 24, %11267
  %11269 = add nsw i32 %11266, %11268
  %11270 = sext i32 %11269 to i64
  %11271 = getelementptr inbounds double, ptr %11265, i64 %11270
  %11272 = load double, ptr %11271, align 8, !tbaa !11
  %11273 = call double @llvm.fmuladd.f64(double 0xBFE5679E70A60656, double %11272, double %11264)
  %11274 = load ptr, ptr %7, align 8, !tbaa !9
  %11275 = load i32, ptr %12, align 4, !tbaa !5
  %11276 = load i32, ptr %8, align 4, !tbaa !5
  %11277 = mul nsw i32 25, %11276
  %11278 = add nsw i32 %11275, %11277
  %11279 = sext i32 %11278 to i64
  %11280 = getelementptr inbounds double, ptr %11274, i64 %11279
  %11281 = load double, ptr %11280, align 8, !tbaa !11
  %11282 = call double @llvm.fmuladd.f64(double 0x3F85E50BB681A339, double %11281, double %11273)
  %11283 = load ptr, ptr %7, align 8, !tbaa !9
  %11284 = load i32, ptr %12, align 4, !tbaa !5
  %11285 = load i32, ptr %8, align 4, !tbaa !5
  %11286 = mul nsw i32 26, %11285
  %11287 = add nsw i32 %11284, %11286
  %11288 = sext i32 %11287 to i64
  %11289 = getelementptr inbounds double, ptr %11283, i64 %11288
  %11290 = load double, ptr %11289, align 8, !tbaa !11
  %11291 = call double @llvm.fmuladd.f64(double 0xBFB49217631F58F9, double %11290, double %11282)
  %11292 = load ptr, ptr %7, align 8, !tbaa !9
  %11293 = load i32, ptr %12, align 4, !tbaa !5
  %11294 = load i32, ptr %8, align 4, !tbaa !5
  %11295 = mul nsw i32 27, %11294
  %11296 = add nsw i32 %11293, %11295
  %11297 = sext i32 %11296 to i64
  %11298 = getelementptr inbounds double, ptr %11292, i64 %11297
  %11299 = load double, ptr %11298, align 8, !tbaa !11
  %11300 = call double @llvm.fmuladd.f64(double 0x3FCA50C41AB7A2DD, double %11299, double %11291)
  %11301 = load ptr, ptr %7, align 8, !tbaa !9
  %11302 = load i32, ptr %12, align 4, !tbaa !5
  %11303 = load i32, ptr %8, align 4, !tbaa !5
  %11304 = mul nsw i32 28, %11303
  %11305 = add nsw i32 %11302, %11304
  %11306 = sext i32 %11305 to i64
  %11307 = getelementptr inbounds double, ptr %11301, i64 %11306
  %11308 = load double, ptr %11307, align 8, !tbaa !11
  %11309 = call double @llvm.fmuladd.f64(double 0xBF8BDAF699AECF43, double %11308, double %11300)
  %11310 = load ptr, ptr %7, align 8, !tbaa !9
  %11311 = load i32, ptr %12, align 4, !tbaa !5
  %11312 = load i32, ptr %8, align 4, !tbaa !5
  %11313 = mul nsw i32 29, %11312
  %11314 = add nsw i32 %11311, %11313
  %11315 = sext i32 %11314 to i64
  %11316 = getelementptr inbounds double, ptr %11310, i64 %11315
  %11317 = load double, ptr %11316, align 8, !tbaa !11
  %11318 = call double @llvm.fmuladd.f64(double 0x3FD417DEBFC17B15, double %11317, double %11309)
  %11319 = load ptr, ptr %7, align 8, !tbaa !9
  %11320 = load i32, ptr %12, align 4, !tbaa !5
  %11321 = load i32, ptr %8, align 4, !tbaa !5
  %11322 = mul nsw i32 30, %11321
  %11323 = add nsw i32 %11320, %11322
  %11324 = sext i32 %11323 to i64
  %11325 = getelementptr inbounds double, ptr %11319, i64 %11324
  %11326 = load double, ptr %11325, align 8, !tbaa !11
  %11327 = call double @llvm.fmuladd.f64(double 0x3CBB800000000001, double %11326, double %11318)
  %11328 = load ptr, ptr %7, align 8, !tbaa !9
  %11329 = load i32, ptr %12, align 4, !tbaa !5
  %11330 = load i32, ptr %8, align 4, !tbaa !5
  %11331 = mul nsw i32 31, %11330
  %11332 = add nsw i32 %11329, %11331
  %11333 = sext i32 %11332 to i64
  %11334 = getelementptr inbounds double, ptr %11328, i64 %11333
  %11335 = load double, ptr %11334, align 8, !tbaa !11
  %11336 = call double @llvm.fmuladd.f64(double 0xBC60000000000000, double %11335, double %11327)
  %11337 = load ptr, ptr %7, align 8, !tbaa !9
  %11338 = load i32, ptr %12, align 4, !tbaa !5
  %11339 = load i32, ptr %8, align 4, !tbaa !5
  %11340 = mul nsw i32 32, %11339
  %11341 = add nsw i32 %11338, %11340
  %11342 = sext i32 %11341 to i64
  %11343 = getelementptr inbounds double, ptr %11337, i64 %11342
  %11344 = load double, ptr %11343, align 8, !tbaa !11
  %11345 = call double @llvm.fmuladd.f64(double 0xBC7E000000000001, double %11344, double %11336)
  %11346 = load ptr, ptr %7, align 8, !tbaa !9
  %11347 = load i32, ptr %12, align 4, !tbaa !5
  %11348 = load i32, ptr %8, align 4, !tbaa !5
  %11349 = mul nsw i32 33, %11348
  %11350 = add nsw i32 %11347, %11349
  %11351 = sext i32 %11350 to i64
  %11352 = getelementptr inbounds double, ptr %11346, i64 %11351
  %11353 = load double, ptr %11352, align 8, !tbaa !11
  %11354 = call double @llvm.fmuladd.f64(double 0xBCA2FFFFFFFFFFFE, double %11353, double %11345)
  %11355 = load ptr, ptr %7, align 8, !tbaa !9
  %11356 = load i32, ptr %12, align 4, !tbaa !5
  %11357 = load i32, ptr %8, align 4, !tbaa !5
  %11358 = mul nsw i32 34, %11357
  %11359 = add nsw i32 %11356, %11358
  %11360 = sext i32 %11359 to i64
  %11361 = getelementptr inbounds double, ptr %11355, i64 %11360
  %11362 = load double, ptr %11361, align 8, !tbaa !11
  %11363 = call double @llvm.fmuladd.f64(double 0xBC9C000000000000, double %11362, double %11354)
  %11364 = load ptr, ptr %7, align 8, !tbaa !9
  %11365 = load i32, ptr %12, align 4, !tbaa !5
  %11366 = load i32, ptr %8, align 4, !tbaa !5
  %11367 = mul nsw i32 35, %11366
  %11368 = add nsw i32 %11365, %11367
  %11369 = sext i32 %11368 to i64
  %11370 = getelementptr inbounds double, ptr %11364, i64 %11369
  %11371 = load double, ptr %11370, align 8, !tbaa !11
  %11372 = call double @llvm.fmuladd.f64(double 0x3CAE000000000002, double %11371, double %11363)
  %11373 = load ptr, ptr %7, align 8, !tbaa !9
  %11374 = load i32, ptr %12, align 4, !tbaa !5
  %11375 = load i32, ptr %8, align 4, !tbaa !5
  %11376 = mul nsw i32 36, %11375
  %11377 = add nsw i32 %11374, %11376
  %11378 = sext i32 %11377 to i64
  %11379 = getelementptr inbounds double, ptr %11373, i64 %11378
  %11380 = load double, ptr %11379, align 8, !tbaa !11
  %11381 = call double @llvm.fmuladd.f64(double 0x3CAC000000000000, double %11380, double %11372)
  %11382 = load ptr, ptr %7, align 8, !tbaa !9
  %11383 = load i32, ptr %12, align 4, !tbaa !5
  %11384 = load i32, ptr %8, align 4, !tbaa !5
  %11385 = mul nsw i32 37, %11384
  %11386 = add nsw i32 %11383, %11385
  %11387 = sext i32 %11386 to i64
  %11388 = getelementptr inbounds double, ptr %11382, i64 %11387
  %11389 = load double, ptr %11388, align 8, !tbaa !11
  %11390 = call double @llvm.fmuladd.f64(double 0x3C95000000000000, double %11389, double %11381)
  %11391 = load ptr, ptr %7, align 8, !tbaa !9
  %11392 = load i32, ptr %12, align 4, !tbaa !5
  %11393 = load i32, ptr %8, align 4, !tbaa !5
  %11394 = mul nsw i32 38, %11393
  %11395 = add nsw i32 %11392, %11394
  %11396 = sext i32 %11395 to i64
  %11397 = getelementptr inbounds double, ptr %11391, i64 %11396
  %11398 = load double, ptr %11397, align 8, !tbaa !11
  %11399 = call double @llvm.fmuladd.f64(double 0xBCAB000000000001, double %11398, double %11390)
  %11400 = load ptr, ptr %7, align 8, !tbaa !9
  %11401 = load i32, ptr %12, align 4, !tbaa !5
  %11402 = load i32, ptr %8, align 4, !tbaa !5
  %11403 = mul nsw i32 39, %11402
  %11404 = add nsw i32 %11401, %11403
  %11405 = sext i32 %11404 to i64
  %11406 = getelementptr inbounds double, ptr %11400, i64 %11405
  %11407 = load double, ptr %11406, align 8, !tbaa !11
  %11408 = call double @llvm.fmuladd.f64(double 0x3CA1000000000001, double %11407, double %11399)
  store double %11408, ptr %11, align 8, !tbaa !11
  %11409 = load double, ptr %11, align 8, !tbaa !11
  %11410 = load ptr, ptr %9, align 8, !tbaa !9
  %11411 = load i32, ptr %12, align 4, !tbaa !5
  %11412 = load i32, ptr %10, align 4, !tbaa !5
  %11413 = mul nsw i32 31, %11412
  %11414 = add nsw i32 %11411, %11413
  %11415 = sext i32 %11414 to i64
  %11416 = getelementptr inbounds double, ptr %11410, i64 %11415
  store double %11409, ptr %11416, align 8, !tbaa !11
  %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 0, %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 = load ptr, ptr %7, align 8, !tbaa !9
  %11426 = load i32, ptr %12, align 4, !tbaa !5
  %11427 = load i32, ptr %8, align 4, !tbaa !5
  %11428 = mul nsw i32 1, %11427
  %11429 = add nsw i32 %11426, %11428
  %11430 = sext i32 %11429 to i64
  %11431 = getelementptr inbounds double, ptr %11425, i64 %11430
  %11432 = load double, ptr %11431, align 8, !tbaa !11
  %11433 = fmul double 0xBC92000000000000, %11432
  %11434 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %11424, double %11433)
  %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 2, %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 0xBC8B800000000001, 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 3, %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 0x3C95C00000000000, 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 4, %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 0xBC90000000000000, 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 5, %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 0x3CA1800000000000, double %11469, double %11461)
  %11471 = load ptr, ptr %7, align 8, !tbaa !9
  %11472 = load i32, ptr %12, align 4, !tbaa !5
  %11473 = load i32, ptr %8, align 4, !tbaa !5
  %11474 = mul nsw i32 6, %11473
  %11475 = add nsw i32 %11472, %11474
  %11476 = sext i32 %11475 to i64
  %11477 = getelementptr inbounds double, ptr %11471, i64 %11476
  %11478 = load double, ptr %11477, align 8, !tbaa !11
  %11479 = call double @llvm.fmuladd.f64(double 0xBC7E000000000001, double %11478, double %11470)
  %11480 = load ptr, ptr %7, align 8, !tbaa !9
  %11481 = load i32, ptr %12, align 4, !tbaa !5
  %11482 = load i32, ptr %8, align 4, !tbaa !5
  %11483 = mul nsw i32 7, %11482
  %11484 = add nsw i32 %11481, %11483
  %11485 = sext i32 %11484 to i64
  %11486 = getelementptr inbounds double, ptr %11480, i64 %11485
  %11487 = load double, ptr %11486, align 8, !tbaa !11
  %11488 = call double @llvm.fmuladd.f64(double 0x3C74000000000000, double %11487, double %11479)
  %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 8, %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 = call double @llvm.fmuladd.f64(double 0x3C7FFFFFFFFFFFFF, double %11496, double %11488)
  %11498 = load ptr, ptr %7, align 8, !tbaa !9
  %11499 = load i32, ptr %12, align 4, !tbaa !5
  %11500 = load i32, ptr %8, align 4, !tbaa !5
  %11501 = mul nsw i32 9, %11500
  %11502 = add nsw i32 %11499, %11501
  %11503 = sext i32 %11502 to i64
  %11504 = getelementptr inbounds double, ptr %11498, i64 %11503
  %11505 = load double, ptr %11504, align 8, !tbaa !11
  %11506 = call double @llvm.fmuladd.f64(double 0xBC94000000000000, double %11505, double %11497)
  %11507 = load ptr, ptr %7, align 8, !tbaa !9
  %11508 = load i32, ptr %12, align 4, !tbaa !5
  %11509 = load i32, ptr %8, align 4, !tbaa !5
  %11510 = mul nsw i32 10, %11509
  %11511 = add nsw i32 %11508, %11510
  %11512 = sext i32 %11511 to i64
  %11513 = getelementptr inbounds double, ptr %11507, i64 %11512
  %11514 = load double, ptr %11513, align 8, !tbaa !11
  %11515 = call double @llvm.fmuladd.f64(double 0xBC98000000000000, double %11514, double %11506)
  %11516 = load ptr, ptr %7, align 8, !tbaa !9
  %11517 = load i32, ptr %12, align 4, !tbaa !5
  %11518 = load i32, ptr %8, align 4, !tbaa !5
  %11519 = mul nsw i32 11, %11518
  %11520 = add nsw i32 %11517, %11519
  %11521 = sext i32 %11520 to i64
  %11522 = getelementptr inbounds double, ptr %11516, i64 %11521
  %11523 = load double, ptr %11522, align 8, !tbaa !11
  %11524 = call double @llvm.fmuladd.f64(double 0x3C70000000000001, double %11523, double %11515)
  %11525 = load ptr, ptr %7, align 8, !tbaa !9
  %11526 = load i32, ptr %12, align 4, !tbaa !5
  %11527 = load i32, ptr %8, align 4, !tbaa !5
  %11528 = mul nsw i32 12, %11527
  %11529 = add nsw i32 %11526, %11528
  %11530 = sext i32 %11529 to i64
  %11531 = getelementptr inbounds double, ptr %11525, i64 %11530
  %11532 = load double, ptr %11531, align 8, !tbaa !11
  %11533 = call double @llvm.fmuladd.f64(double 0xBC97000000000000, double %11532, double %11524)
  %11534 = load ptr, ptr %7, align 8, !tbaa !9
  %11535 = load i32, ptr %12, align 4, !tbaa !5
  %11536 = load i32, ptr %8, align 4, !tbaa !5
  %11537 = mul nsw i32 13, %11536
  %11538 = add nsw i32 %11535, %11537
  %11539 = sext i32 %11538 to i64
  %11540 = getelementptr inbounds double, ptr %11534, i64 %11539
  %11541 = load double, ptr %11540, align 8, !tbaa !11
  %11542 = call double @llvm.fmuladd.f64(double 0x3CAE400000000002, double %11541, double %11533)
  %11543 = load ptr, ptr %7, align 8, !tbaa !9
  %11544 = load i32, ptr %12, align 4, !tbaa !5
  %11545 = load i32, ptr %8, align 4, !tbaa !5
  %11546 = mul nsw i32 14, %11545
  %11547 = add nsw i32 %11544, %11546
  %11548 = sext i32 %11547 to i64
  %11549 = getelementptr inbounds double, ptr %11543, i64 %11548
  %11550 = load double, ptr %11549, align 8, !tbaa !11
  %11551 = call double @llvm.fmuladd.f64(double 0x3C94000000000000, double %11550, double %11542)
  %11552 = load ptr, ptr %7, align 8, !tbaa !9
  %11553 = load i32, ptr %12, align 4, !tbaa !5
  %11554 = load i32, ptr %8, align 4, !tbaa !5
  %11555 = mul nsw i32 15, %11554
  %11556 = add nsw i32 %11553, %11555
  %11557 = sext i32 %11556 to i64
  %11558 = getelementptr inbounds double, ptr %11552, i64 %11557
  %11559 = load double, ptr %11558, align 8, !tbaa !11
  %11560 = call double @llvm.fmuladd.f64(double 0xBC84000000000000, double %11559, double %11551)
  %11561 = load ptr, ptr %7, align 8, !tbaa !9
  %11562 = load i32, ptr %12, align 4, !tbaa !5
  %11563 = load i32, ptr %8, align 4, !tbaa !5
  %11564 = mul nsw i32 16, %11563
  %11565 = add nsw i32 %11562, %11564
  %11566 = sext i32 %11565 to i64
  %11567 = getelementptr inbounds double, ptr %11561, i64 %11566
  %11568 = load double, ptr %11567, align 8, !tbaa !11
  %11569 = call double @llvm.fmuladd.f64(double 0x3CA0800000000001, double %11568, double %11560)
  %11570 = load ptr, ptr %7, align 8, !tbaa !9
  %11571 = load i32, ptr %12, align 4, !tbaa !5
  %11572 = load i32, ptr %8, align 4, !tbaa !5
  %11573 = mul nsw i32 17, %11572
  %11574 = add nsw i32 %11571, %11573
  %11575 = sext i32 %11574 to i64
  %11576 = getelementptr inbounds double, ptr %11570, i64 %11575
  %11577 = load double, ptr %11576, align 8, !tbaa !11
  %11578 = call double @llvm.fmuladd.f64(double 0xBCAA800000000002, double %11577, double %11569)
  %11579 = load ptr, ptr %7, align 8, !tbaa !9
  %11580 = load i32, ptr %12, align 4, !tbaa !5
  %11581 = load i32, ptr %8, align 4, !tbaa !5
  %11582 = mul nsw i32 18, %11581
  %11583 = add nsw i32 %11580, %11582
  %11584 = sext i32 %11583 to i64
  %11585 = getelementptr inbounds double, ptr %11579, i64 %11584
  %11586 = load double, ptr %11585, align 8, !tbaa !11
  %11587 = call double @llvm.fmuladd.f64(double 0x3C98000000000000, double %11586, double %11578)
  %11588 = load ptr, ptr %7, align 8, !tbaa !9
  %11589 = load i32, ptr %12, align 4, !tbaa !5
  %11590 = load i32, ptr %8, align 4, !tbaa !5
  %11591 = mul nsw i32 19, %11590
  %11592 = add nsw i32 %11589, %11591
  %11593 = sext i32 %11592 to i64
  %11594 = getelementptr inbounds double, ptr %11588, i64 %11593
  %11595 = load double, ptr %11594, align 8, !tbaa !11
  %11596 = call double @llvm.fmuladd.f64(double 0xBCA5FFFFFFFFFFFF, double %11595, double %11587)
  %11597 = load ptr, ptr %7, align 8, !tbaa !9
  %11598 = load i32, ptr %12, align 4, !tbaa !5
  %11599 = load i32, ptr %8, align 4, !tbaa !5
  %11600 = mul nsw i32 20, %11599
  %11601 = add nsw i32 %11598, %11600
  %11602 = sext i32 %11601 to i64
  %11603 = getelementptr inbounds double, ptr %11597, i64 %11602
  %11604 = load double, ptr %11603, align 8, !tbaa !11
  %11605 = call double @llvm.fmuladd.f64(double 0x3CA4000000000001, double %11604, double %11596)
  %11606 = load ptr, ptr %7, align 8, !tbaa !9
  %11607 = load i32, ptr %12, align 4, !tbaa !5
  %11608 = load i32, ptr %8, align 4, !tbaa !5
  %11609 = mul nsw i32 21, %11608
  %11610 = add nsw i32 %11607, %11609
  %11611 = sext i32 %11610 to i64
  %11612 = getelementptr inbounds double, ptr %11606, i64 %11611
  %11613 = load double, ptr %11612, align 8, !tbaa !11
  %11614 = call double @llvm.fmuladd.f64(double 0x3C7FFFFFFFFFFFFF, double %11613, double %11605)
  %11615 = load ptr, ptr %7, align 8, !tbaa !9
  %11616 = load i32, ptr %12, align 4, !tbaa !5
  %11617 = load i32, ptr %8, align 4, !tbaa !5
  %11618 = mul nsw i32 22, %11617
  %11619 = add nsw i32 %11616, %11618
  %11620 = sext i32 %11619 to i64
  %11621 = getelementptr inbounds double, ptr %11615, i64 %11620
  %11622 = load double, ptr %11621, align 8, !tbaa !11
  %11623 = call double @llvm.fmuladd.f64(double 0x3C84000000000000, double %11622, double %11614)
  %11624 = load ptr, ptr %7, align 8, !tbaa !9
  %11625 = load i32, ptr %12, align 4, !tbaa !5
  %11626 = load i32, ptr %8, align 4, !tbaa !5
  %11627 = mul nsw i32 23, %11626
  %11628 = add nsw i32 %11625, %11627
  %11629 = sext i32 %11628 to i64
  %11630 = getelementptr inbounds double, ptr %11624, i64 %11629
  %11631 = load double, ptr %11630, align 8, !tbaa !11
  %11632 = call double @llvm.fmuladd.f64(double 0xBC86000000000001, double %11631, double %11623)
  %11633 = load ptr, ptr %7, align 8, !tbaa !9
  %11634 = load i32, ptr %12, align 4, !tbaa !5
  %11635 = load i32, ptr %8, align 4, !tbaa !5
  %11636 = mul nsw i32 24, %11635
  %11637 = add nsw i32 %11634, %11636
  %11638 = sext i32 %11637 to i64
  %11639 = getelementptr inbounds double, ptr %11633, i64 %11638
  %11640 = load double, ptr %11639, align 8, !tbaa !11
  %11641 = call double @llvm.fmuladd.f64(double 0xBC94000000000000, double %11640, double %11632)
  %11642 = load ptr, ptr %7, align 8, !tbaa !9
  %11643 = load i32, ptr %12, align 4, !tbaa !5
  %11644 = load i32, ptr %8, align 4, !tbaa !5
  %11645 = mul nsw i32 25, %11644
  %11646 = add nsw i32 %11643, %11645
  %11647 = sext i32 %11646 to i64
  %11648 = getelementptr inbounds double, ptr %11642, i64 %11647
  %11649 = load double, ptr %11648, align 8, !tbaa !11
  %11650 = call double @llvm.fmuladd.f64(double 0x3C60000000000000, double %11649, double %11641)
  %11651 = load ptr, ptr %7, align 8, !tbaa !9
  %11652 = load i32, ptr %12, align 4, !tbaa !5
  %11653 = load i32, ptr %8, align 4, !tbaa !5
  %11654 = mul nsw i32 26, %11653
  %11655 = add nsw i32 %11652, %11654
  %11656 = sext i32 %11655 to i64
  %11657 = getelementptr inbounds double, ptr %11651, i64 %11656
  %11658 = load double, ptr %11657, align 8, !tbaa !11
  %11659 = call double @llvm.fmuladd.f64(double 0x3C7C000000000000, double %11658, double %11650)
  %11660 = load ptr, ptr %7, align 8, !tbaa !9
  %11661 = load i32, ptr %12, align 4, !tbaa !5
  %11662 = load i32, ptr %8, align 4, !tbaa !5
  %11663 = mul nsw i32 27, %11662
  %11664 = add nsw i32 %11661, %11663
  %11665 = sext i32 %11664 to i64
  %11666 = getelementptr inbounds double, ptr %11660, i64 %11665
  %11667 = load double, ptr %11666, align 8, !tbaa !11
  %11668 = call double @llvm.fmuladd.f64(double 0xBC97000000000000, double %11667, double %11659)
  %11669 = load ptr, ptr %7, align 8, !tbaa !9
  %11670 = load i32, ptr %12, align 4, !tbaa !5
  %11671 = load i32, ptr %8, align 4, !tbaa !5
  %11672 = mul nsw i32 28, %11671
  %11673 = add nsw i32 %11670, %11672
  %11674 = sext i32 %11673 to i64
  %11675 = getelementptr inbounds double, ptr %11669, i64 %11674
  %11676 = load double, ptr %11675, align 8, !tbaa !11
  %11677 = call double @llvm.fmuladd.f64(double 0x3CA2000000000000, double %11676, double %11668)
  %11678 = load ptr, ptr %7, align 8, !tbaa !9
  %11679 = load i32, ptr %12, align 4, !tbaa !5
  %11680 = load i32, ptr %8, align 4, !tbaa !5
  %11681 = mul nsw i32 29, %11680
  %11682 = add nsw i32 %11679, %11681
  %11683 = sext i32 %11682 to i64
  %11684 = getelementptr inbounds double, ptr %11678, i64 %11683
  %11685 = load double, ptr %11684, align 8, !tbaa !11
  %11686 = call double @llvm.fmuladd.f64(double 0x3CA2000000000000, double %11685, double %11677)
  %11687 = load ptr, ptr %7, align 8, !tbaa !9
  %11688 = load i32, ptr %12, align 4, !tbaa !5
  %11689 = load i32, ptr %8, align 4, !tbaa !5
  %11690 = mul nsw i32 30, %11689
  %11691 = add nsw i32 %11688, %11690
  %11692 = sext i32 %11691 to i64
  %11693 = getelementptr inbounds double, ptr %11687, i64 %11692
  %11694 = load double, ptr %11693, align 8, !tbaa !11
  %11695 = call double @llvm.fmuladd.f64(double 0xBF83152016E0EC4E, double %11694, double %11686)
  %11696 = load ptr, ptr %7, align 8, !tbaa !9
  %11697 = load i32, ptr %12, align 4, !tbaa !5
  %11698 = load i32, ptr %8, align 4, !tbaa !5
  %11699 = mul nsw i32 31, %11698
  %11700 = add nsw i32 %11697, %11699
  %11701 = sext i32 %11700 to i64
  %11702 = getelementptr inbounds double, ptr %11696, i64 %11701
  %11703 = load double, ptr %11702, align 8, !tbaa !11
  %11704 = call double @llvm.fmuladd.f64(double 0xBFB5B58B4F03B19E, double %11703, double %11695)
  %11705 = load ptr, ptr %7, align 8, !tbaa !9
  %11706 = load i32, ptr %12, align 4, !tbaa !5
  %11707 = load i32, ptr %8, align 4, !tbaa !5
  %11708 = mul nsw i32 32, %11707
  %11709 = add nsw i32 %11706, %11708
  %11710 = sext i32 %11709 to i64
  %11711 = getelementptr inbounds double, ptr %11705, i64 %11710
  %11712 = load double, ptr %11711, align 8, !tbaa !11
  %11713 = call double @llvm.fmuladd.f64(double 0x3F938CE4890DB2FC, double %11712, double %11704)
  %11714 = load ptr, ptr %7, align 8, !tbaa !9
  %11715 = load i32, ptr %12, align 4, !tbaa !5
  %11716 = load i32, ptr %8, align 4, !tbaa !5
  %11717 = mul nsw i32 33, %11716
  %11718 = add nsw i32 %11715, %11717
  %11719 = sext i32 %11718 to i64
  %11720 = getelementptr inbounds double, ptr %11714, i64 %11719
  %11721 = load double, ptr %11720, align 8, !tbaa !11
  %11722 = call double @llvm.fmuladd.f64(double 0x3FF4EC1BB3FDC612, double %11721, double %11713)
  %11723 = load ptr, ptr %7, align 8, !tbaa !9
  %11724 = load i32, ptr %12, align 4, !tbaa !5
  %11725 = load i32, ptr %8, align 4, !tbaa !5
  %11726 = mul nsw i32 34, %11725
  %11727 = add nsw i32 %11724, %11726
  %11728 = sext i32 %11727 to i64
  %11729 = getelementptr inbounds double, ptr %11723, i64 %11728
  %11730 = load double, ptr %11729, align 8, !tbaa !11
  %11731 = call double @llvm.fmuladd.f64(double 0x3F85E50BB681A437, double %11730, double %11722)
  %11732 = load ptr, ptr %7, align 8, !tbaa !9
  %11733 = load i32, ptr %12, align 4, !tbaa !5
  %11734 = load i32, ptr %8, align 4, !tbaa !5
  %11735 = mul nsw i32 35, %11734
  %11736 = add nsw i32 %11733, %11735
  %11737 = sext i32 %11736 to i64
  %11738 = getelementptr inbounds double, ptr %11732, i64 %11737
  %11739 = load double, ptr %11738, align 8, !tbaa !11
  %11740 = call double @llvm.fmuladd.f64(double 0xBFE5679E70A60657, double %11739, double %11731)
  %11741 = load ptr, ptr %7, align 8, !tbaa !9
  %11742 = load i32, ptr %12, align 4, !tbaa !5
  %11743 = load i32, ptr %8, align 4, !tbaa !5
  %11744 = mul nsw i32 36, %11743
  %11745 = add nsw i32 %11742, %11744
  %11746 = sext i32 %11745 to i64
  %11747 = getelementptr inbounds double, ptr %11741, i64 %11746
  %11748 = load double, ptr %11747, align 8, !tbaa !11
  %11749 = call double @llvm.fmuladd.f64(double 0x3FCA50C41AB7A337, double %11748, double %11740)
  %11750 = load ptr, ptr %7, align 8, !tbaa !9
  %11751 = load i32, ptr %12, align 4, !tbaa !5
  %11752 = load i32, ptr %8, align 4, !tbaa !5
  %11753 = mul nsw i32 37, %11752
  %11754 = add nsw i32 %11751, %11753
  %11755 = sext i32 %11754 to i64
  %11756 = getelementptr inbounds double, ptr %11750, i64 %11755
  %11757 = load double, ptr %11756, align 8, !tbaa !11
  %11758 = call double @llvm.fmuladd.f64(double 0xBFB49217631F5952, double %11757, double %11749)
  %11759 = load ptr, ptr %7, align 8, !tbaa !9
  %11760 = load i32, ptr %12, align 4, !tbaa !5
  %11761 = load i32, ptr %8, align 4, !tbaa !5
  %11762 = mul nsw i32 38, %11761
  %11763 = add nsw i32 %11760, %11762
  %11764 = sext i32 %11763 to i64
  %11765 = getelementptr inbounds double, ptr %11759, i64 %11764
  %11766 = load double, ptr %11765, align 8, !tbaa !11
  %11767 = call double @llvm.fmuladd.f64(double 0x3FD417DEBFC17B15, double %11766, double %11758)
  %11768 = load ptr, ptr %7, align 8, !tbaa !9
  %11769 = load i32, ptr %12, align 4, !tbaa !5
  %11770 = load i32, ptr %8, align 4, !tbaa !5
  %11771 = mul nsw i32 39, %11770
  %11772 = add nsw i32 %11769, %11771
  %11773 = sext i32 %11772 to i64
  %11774 = getelementptr inbounds double, ptr %11768, i64 %11773
  %11775 = load double, ptr %11774, align 8, !tbaa !11
  %11776 = call double @llvm.fmuladd.f64(double 0xBF8BDAF699AECF15, double %11775, double %11767)
  store double %11776, ptr %11, align 8, !tbaa !11
  %11777 = load double, ptr %11, align 8, !tbaa !11
  %11778 = load ptr, ptr %9, align 8, !tbaa !9
  %11779 = load i32, ptr %12, align 4, !tbaa !5
  %11780 = load i32, ptr %10, align 4, !tbaa !5
  %11781 = mul nsw i32 32, %11780
  %11782 = add nsw i32 %11779, %11781
  %11783 = sext i32 %11782 to i64
  %11784 = getelementptr inbounds double, ptr %11778, i64 %11783
  store double %11777, ptr %11784, align 8, !tbaa !11
  %11785 = load ptr, ptr %7, align 8, !tbaa !9
  %11786 = load i32, ptr %12, align 4, !tbaa !5
  %11787 = load i32, ptr %8, align 4, !tbaa !5
  %11788 = mul nsw i32 0, %11787
  %11789 = add nsw i32 %11786, %11788
  %11790 = sext i32 %11789 to i64
  %11791 = getelementptr inbounds double, ptr %11785, i64 %11790
  %11792 = load double, ptr %11791, align 8, !tbaa !11
  %11793 = load ptr, ptr %7, align 8, !tbaa !9
  %11794 = load i32, ptr %12, align 4, !tbaa !5
  %11795 = load i32, ptr %8, align 4, !tbaa !5
  %11796 = mul nsw i32 1, %11795
  %11797 = add nsw i32 %11794, %11796
  %11798 = sext i32 %11797 to i64
  %11799 = getelementptr inbounds double, ptr %11793, i64 %11798
  %11800 = load double, ptr %11799, align 8, !tbaa !11
  %11801 = fmul double 0xBC78000000000002, %11800
  %11802 = call double @llvm.fmuladd.f64(double 0x3CAF800000000000, double %11792, double %11801)
  %11803 = load ptr, ptr %7, align 8, !tbaa !9
  %11804 = load i32, ptr %12, align 4, !tbaa !5
  %11805 = load i32, ptr %8, align 4, !tbaa !5
  %11806 = mul nsw i32 2, %11805
  %11807 = add nsw i32 %11804, %11806
  %11808 = sext i32 %11807 to i64
  %11809 = getelementptr inbounds double, ptr %11803, i64 %11808
  %11810 = load double, ptr %11809, align 8, !tbaa !11
  %11811 = call double @llvm.fmuladd.f64(double 0xBCA5200000000000, double %11810, double %11802)
  %11812 = load ptr, ptr %7, align 8, !tbaa !9
  %11813 = load i32, ptr %12, align 4, !tbaa !5
  %11814 = load i32, ptr %8, align 4, !tbaa !5
  %11815 = mul nsw i32 3, %11814
  %11816 = add nsw i32 %11813, %11815
  %11817 = sext i32 %11816 to i64
  %11818 = getelementptr inbounds double, ptr %11812, i64 %11817
  %11819 = load double, ptr %11818, align 8, !tbaa !11
  %11820 = call double @llvm.fmuladd.f64(double 0x3CA21FFFFFFFFFFF, double %11819, double %11811)
  %11821 = load ptr, ptr %7, align 8, !tbaa !9
  %11822 = load i32, ptr %12, align 4, !tbaa !5
  %11823 = load i32, ptr %8, align 4, !tbaa !5
  %11824 = mul nsw i32 4, %11823
  %11825 = add nsw i32 %11822, %11824
  %11826 = sext i32 %11825 to i64
  %11827 = getelementptr inbounds double, ptr %11821, i64 %11826
  %11828 = load double, ptr %11827, align 8, !tbaa !11
  %11829 = call double @llvm.fmuladd.f64(double 0x3C70000000000001, double %11828, double %11820)
  %11830 = load ptr, ptr %7, align 8, !tbaa !9
  %11831 = load i32, ptr %12, align 4, !tbaa !5
  %11832 = load i32, ptr %8, align 4, !tbaa !5
  %11833 = mul nsw i32 5, %11832
  %11834 = add nsw i32 %11831, %11833
  %11835 = sext i32 %11834 to i64
  %11836 = getelementptr inbounds double, ptr %11830, i64 %11835
  %11837 = load double, ptr %11836, align 8, !tbaa !11
  %11838 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %11837, double %11829)
  %11839 = load ptr, ptr %7, align 8, !tbaa !9
  %11840 = load i32, ptr %12, align 4, !tbaa !5
  %11841 = load i32, ptr %8, align 4, !tbaa !5
  %11842 = mul nsw i32 6, %11841
  %11843 = add nsw i32 %11840, %11842
  %11844 = sext i32 %11843 to i64
  %11845 = getelementptr inbounds double, ptr %11839, i64 %11844
  %11846 = load double, ptr %11845, align 8, !tbaa !11
  %11847 = call double @llvm.fmuladd.f64(double 0xBCB1A00000000000, double %11846, double %11838)
  %11848 = load ptr, ptr %7, align 8, !tbaa !9
  %11849 = load i32, ptr %12, align 4, !tbaa !5
  %11850 = load i32, ptr %8, align 4, !tbaa !5
  %11851 = mul nsw i32 7, %11850
  %11852 = add nsw i32 %11849, %11851
  %11853 = sext i32 %11852 to i64
  %11854 = getelementptr inbounds double, ptr %11848, i64 %11853
  %11855 = load double, ptr %11854, align 8, !tbaa !11
  %11856 = call double @llvm.fmuladd.f64(double 0xBC64000000000000, double %11855, double %11847)
  %11857 = load ptr, ptr %7, align 8, !tbaa !9
  %11858 = load i32, ptr %12, align 4, !tbaa !5
  %11859 = load i32, ptr %8, align 4, !tbaa !5
  %11860 = mul nsw i32 8, %11859
  %11861 = add nsw i32 %11858, %11860
  %11862 = sext i32 %11861 to i64
  %11863 = getelementptr inbounds double, ptr %11857, i64 %11862
  %11864 = load double, ptr %11863, align 8, !tbaa !11
  %11865 = call double @llvm.fmuladd.f64(double 0x3CA2000000000000, double %11864, double %11856)
  %11866 = load ptr, ptr %7, align 8, !tbaa !9
  %11867 = load i32, ptr %12, align 4, !tbaa !5
  %11868 = load i32, ptr %8, align 4, !tbaa !5
  %11869 = mul nsw i32 9, %11868
  %11870 = add nsw i32 %11867, %11869
  %11871 = sext i32 %11870 to i64
  %11872 = getelementptr inbounds double, ptr %11866, i64 %11871
  %11873 = load double, ptr %11872, align 8, !tbaa !11
  %11874 = call double @llvm.fmuladd.f64(double 0x3C88000000000000, double %11873, double %11865)
  %11875 = load ptr, ptr %7, align 8, !tbaa !9
  %11876 = load i32, ptr %12, align 4, !tbaa !5
  %11877 = load i32, ptr %8, align 4, !tbaa !5
  %11878 = mul nsw i32 10, %11877
  %11879 = add nsw i32 %11876, %11878
  %11880 = sext i32 %11879 to i64
  %11881 = getelementptr inbounds double, ptr %11875, i64 %11880
  %11882 = load double, ptr %11881, align 8, !tbaa !11
  %11883 = call double @llvm.fmuladd.f64(double 0xBCA2000000000000, double %11882, double %11874)
  %11884 = load ptr, ptr %7, align 8, !tbaa !9
  %11885 = load i32, ptr %12, align 4, !tbaa !5
  %11886 = load i32, ptr %8, align 4, !tbaa !5
  %11887 = mul nsw i32 11, %11886
  %11888 = add nsw i32 %11885, %11887
  %11889 = sext i32 %11888 to i64
  %11890 = getelementptr inbounds double, ptr %11884, i64 %11889
  %11891 = load double, ptr %11890, align 8, !tbaa !11
  %11892 = call double @llvm.fmuladd.f64(double 0x3C7FFFFFFFFFFFFF, double %11891, double %11883)
  %11893 = load ptr, ptr %7, align 8, !tbaa !9
  %11894 = load i32, ptr %12, align 4, !tbaa !5
  %11895 = load i32, ptr %8, align 4, !tbaa !5
  %11896 = mul nsw i32 12, %11895
  %11897 = add nsw i32 %11894, %11896
  %11898 = sext i32 %11897 to i64
  %11899 = getelementptr inbounds double, ptr %11893, i64 %11898
  %11900 = load double, ptr %11899, align 8, !tbaa !11
  %11901 = call double @llvm.fmuladd.f64(double 0xBC67FFFFFFFFFFFE, double %11900, double %11892)
  %11902 = load ptr, ptr %7, align 8, !tbaa !9
  %11903 = load i32, ptr %12, align 4, !tbaa !5
  %11904 = load i32, ptr %8, align 4, !tbaa !5
  %11905 = mul nsw i32 13, %11904
  %11906 = add nsw i32 %11903, %11905
  %11907 = sext i32 %11906 to i64
  %11908 = getelementptr inbounds double, ptr %11902, i64 %11907
  %11909 = load double, ptr %11908, align 8, !tbaa !11
  %11910 = call double @llvm.fmuladd.f64(double 0xBC6C000000000000, double %11909, double %11901)
  %11911 = load ptr, ptr %7, align 8, !tbaa !9
  %11912 = load i32, ptr %12, align 4, !tbaa !5
  %11913 = load i32, ptr %8, align 4, !tbaa !5
  %11914 = mul nsw i32 14, %11913
  %11915 = add nsw i32 %11912, %11914
  %11916 = sext i32 %11915 to i64
  %11917 = getelementptr inbounds double, ptr %11911, i64 %11916
  %11918 = load double, ptr %11917, align 8, !tbaa !11
  %11919 = call double @llvm.fmuladd.f64(double 0x3C70000000000001, double %11918, double %11910)
  %11920 = load ptr, ptr %7, align 8, !tbaa !9
  %11921 = load i32, ptr %12, align 4, !tbaa !5
  %11922 = load i32, ptr %8, align 4, !tbaa !5
  %11923 = mul nsw i32 15, %11922
  %11924 = add nsw i32 %11921, %11923
  %11925 = sext i32 %11924 to i64
  %11926 = getelementptr inbounds double, ptr %11920, i64 %11925
  %11927 = load double, ptr %11926, align 8, !tbaa !11
  %11928 = call double @llvm.fmuladd.f64(double 0xBCA2FFFFFFFFFFFE, double %11927, double %11919)
  %11929 = load ptr, ptr %7, align 8, !tbaa !9
  %11930 = load i32, ptr %12, align 4, !tbaa !5
  %11931 = load i32, ptr %8, align 4, !tbaa !5
  %11932 = mul nsw i32 16, %11931
  %11933 = add nsw i32 %11930, %11932
  %11934 = sext i32 %11933 to i64
  %11935 = getelementptr inbounds double, ptr %11929, i64 %11934
  %11936 = load double, ptr %11935, align 8, !tbaa !11
  %11937 = call double @llvm.fmuladd.f64(double 0xBC94000000000000, double %11936, double %11928)
  %11938 = load ptr, ptr %7, align 8, !tbaa !9
  %11939 = load i32, ptr %12, align 4, !tbaa !5
  %11940 = load i32, ptr %8, align 4, !tbaa !5
  %11941 = mul nsw i32 17, %11940
  %11942 = add nsw i32 %11939, %11941
  %11943 = sext i32 %11942 to i64
  %11944 = getelementptr inbounds double, ptr %11938, i64 %11943
  %11945 = load double, ptr %11944, align 8, !tbaa !11
  %11946 = call double @llvm.fmuladd.f64(double 0xBC7C000000000000, double %11945, double %11937)
  %11947 = load ptr, ptr %7, align 8, !tbaa !9
  %11948 = load i32, ptr %12, align 4, !tbaa !5
  %11949 = load i32, ptr %8, align 4, !tbaa !5
  %11950 = mul nsw i32 18, %11949
  %11951 = add nsw i32 %11948, %11950
  %11952 = sext i32 %11951 to i64
  %11953 = getelementptr inbounds double, ptr %11947, i64 %11952
  %11954 = load double, ptr %11953, align 8, !tbaa !11
  %11955 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %11954, double %11946)
  %11956 = load ptr, ptr %7, align 8, !tbaa !9
  %11957 = load i32, ptr %12, align 4, !tbaa !5
  %11958 = load i32, ptr %8, align 4, !tbaa !5
  %11959 = mul nsw i32 20, %11958
  %11960 = add nsw i32 %11957, %11959
  %11961 = sext i32 %11960 to i64
  %11962 = getelementptr inbounds double, ptr %11956, i64 %11961
  %11963 = load double, ptr %11962, align 8, !tbaa !11
  %11964 = call double @llvm.fmuladd.f64(double 0x3CB9000000000000, double %11963, double %11955)
  %11965 = load ptr, ptr %7, align 8, !tbaa !9
  %11966 = load i32, ptr %12, align 4, !tbaa !5
  %11967 = load i32, ptr %8, align 4, !tbaa !5
  %11968 = mul nsw i32 22, %11967
  %11969 = add nsw i32 %11966, %11968
  %11970 = sext i32 %11969 to i64
  %11971 = getelementptr inbounds double, ptr %11965, i64 %11970
  %11972 = load double, ptr %11971, align 8, !tbaa !11
  %11973 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %11972, double %11964)
  %11974 = load ptr, ptr %7, align 8, !tbaa !9
  %11975 = load i32, ptr %12, align 4, !tbaa !5
  %11976 = load i32, ptr %8, align 4, !tbaa !5
  %11977 = mul nsw i32 23, %11976
  %11978 = add nsw i32 %11975, %11977
  %11979 = sext i32 %11978 to i64
  %11980 = getelementptr inbounds double, ptr %11974, i64 %11979
  %11981 = load double, ptr %11980, align 8, !tbaa !11
  %11982 = call double @llvm.fmuladd.f64(double 0xBC82000000000000, double %11981, double %11973)
  %11983 = load ptr, ptr %7, align 8, !tbaa !9
  %11984 = load i32, ptr %12, align 4, !tbaa !5
  %11985 = load i32, ptr %8, align 4, !tbaa !5
  %11986 = mul nsw i32 24, %11985
  %11987 = add nsw i32 %11984, %11986
  %11988 = sext i32 %11987 to i64
  %11989 = getelementptr inbounds double, ptr %11983, i64 %11988
  %11990 = load double, ptr %11989, align 8, !tbaa !11
  %11991 = call double @llvm.fmuladd.f64(double 0xBC70000000000001, double %11990, double %11982)
  %11992 = load ptr, ptr %7, align 8, !tbaa !9
  %11993 = load i32, ptr %12, align 4, !tbaa !5
  %11994 = load i32, ptr %8, align 4, !tbaa !5
  %11995 = mul nsw i32 25, %11994
  %11996 = add nsw i32 %11993, %11995
  %11997 = sext i32 %11996 to i64
  %11998 = getelementptr inbounds double, ptr %11992, i64 %11997
  %11999 = load double, ptr %11998, align 8, !tbaa !11
  %12000 = call double @llvm.fmuladd.f64(double 0xBC70000000000001, double %11999, double %11991)
  %12001 = load ptr, ptr %7, align 8, !tbaa !9
  %12002 = load i32, ptr %12, align 4, !tbaa !5
  %12003 = load i32, ptr %8, align 4, !tbaa !5
  %12004 = mul nsw i32 26, %12003
  %12005 = add nsw i32 %12002, %12004
  %12006 = sext i32 %12005 to i64
  %12007 = getelementptr inbounds double, ptr %12001, i64 %12006
  %12008 = load double, ptr %12007, align 8, !tbaa !11
  %12009 = call double @llvm.fmuladd.f64(double 0x3CBDC00000000000, double %12008, double %12000)
  %12010 = load ptr, ptr %7, align 8, !tbaa !9
  %12011 = load i32, ptr %12, align 4, !tbaa !5
  %12012 = load i32, ptr %8, align 4, !tbaa !5
  %12013 = mul nsw i32 27, %12012
  %12014 = add nsw i32 %12011, %12013
  %12015 = sext i32 %12014 to i64
  %12016 = getelementptr inbounds double, ptr %12010, i64 %12015
  %12017 = load double, ptr %12016, align 8, !tbaa !11
  %12018 = call double @llvm.fmuladd.f64(double 0xBCA8800000000000, double %12017, double %12009)
  %12019 = load ptr, ptr %7, align 8, !tbaa !9
  %12020 = load i32, ptr %12, align 4, !tbaa !5
  %12021 = load i32, ptr %8, align 4, !tbaa !5
  %12022 = mul nsw i32 28, %12021
  %12023 = add nsw i32 %12020, %12022
  %12024 = sext i32 %12023 to i64
  %12025 = getelementptr inbounds double, ptr %12019, i64 %12024
  %12026 = load double, ptr %12025, align 8, !tbaa !11
  %12027 = call double @llvm.fmuladd.f64(double 0x3C88000000000000, double %12026, double %12018)
  %12028 = load ptr, ptr %7, align 8, !tbaa !9
  %12029 = load i32, ptr %12, align 4, !tbaa !5
  %12030 = load i32, ptr %8, align 4, !tbaa !5
  %12031 = mul nsw i32 29, %12030
  %12032 = add nsw i32 %12029, %12031
  %12033 = sext i32 %12032 to i64
  %12034 = getelementptr inbounds double, ptr %12028, i64 %12033
  %12035 = load double, ptr %12034, align 8, !tbaa !11
  %12036 = call double @llvm.fmuladd.f64(double 0xBC70000000000001, double %12035, double %12027)
  %12037 = load ptr, ptr %7, align 8, !tbaa !9
  %12038 = load i32, ptr %12, align 4, !tbaa !5
  %12039 = load i32, ptr %8, align 4, !tbaa !5
  %12040 = mul nsw i32 30, %12039
  %12041 = add nsw i32 %12038, %12040
  %12042 = sext i32 %12041 to i64
  %12043 = getelementptr inbounds double, ptr %12037, i64 %12042
  %12044 = load double, ptr %12043, align 8, !tbaa !11
  %12045 = call double @llvm.fmuladd.f64(double 0xBFE333710B32A29A, double %12044, double %12036)
  %12046 = load ptr, ptr %7, align 8, !tbaa !9
  %12047 = load i32, ptr %12, align 4, !tbaa !5
  %12048 = load i32, ptr %8, align 4, !tbaa !5
  %12049 = mul nsw i32 31, %12048
  %12050 = add nsw i32 %12047, %12049
  %12051 = sext i32 %12050 to i64
  %12052 = getelementptr inbounds double, ptr %12046, i64 %12051
  %12053 = load double, ptr %12052, align 8, !tbaa !11
  %12054 = call double @llvm.fmuladd.f64(double 0xBFBEED13A9F0D8FA, double %12053, double %12045)
  %12055 = load ptr, ptr %7, align 8, !tbaa !9
  %12056 = load i32, ptr %12, align 4, !tbaa !5
  %12057 = load i32, ptr %8, align 4, !tbaa !5
  %12058 = mul nsw i32 32, %12057
  %12059 = add nsw i32 %12056, %12058
  %12060 = sext i32 %12059 to i64
  %12061 = getelementptr inbounds double, ptr %12055, i64 %12060
  %12062 = load double, ptr %12061, align 8, !tbaa !11
  %12063 = call double @llvm.fmuladd.f64(double 0xBFA352D4DB969C0E, double %12062, double %12054)
  %12064 = load ptr, ptr %7, align 8, !tbaa !9
  %12065 = load i32, ptr %12, align 4, !tbaa !5
  %12066 = load i32, ptr %8, align 4, !tbaa !5
  %12067 = mul nsw i32 33, %12066
  %12068 = add nsw i32 %12065, %12067
  %12069 = sext i32 %12068 to i64
  %12070 = getelementptr inbounds double, ptr %12064, i64 %12069
  %12071 = load double, ptr %12070, align 8, !tbaa !11
  %12072 = call double @llvm.fmuladd.f64(double 0x3FA87D7643548531, double %12071, double %12063)
  %12073 = load ptr, ptr %7, align 8, !tbaa !9
  %12074 = load i32, ptr %12, align 4, !tbaa !5
  %12075 = load i32, ptr %8, align 4, !tbaa !5
  %12076 = mul nsw i32 34, %12075
  %12077 = add nsw i32 %12074, %12076
  %12078 = sext i32 %12077 to i64
  %12079 = getelementptr inbounds double, ptr %12073, i64 %12078
  %12080 = load double, ptr %12079, align 8, !tbaa !11
  %12081 = call double @llvm.fmuladd.f64(double 0x3F9854E0ADA34BB5, double %12080, double %12072)
  %12082 = load ptr, ptr %7, align 8, !tbaa !9
  %12083 = load i32, ptr %12, align 4, !tbaa !5
  %12084 = load i32, ptr %8, align 4, !tbaa !5
  %12085 = mul nsw i32 35, %12084
  %12086 = add nsw i32 %12083, %12085
  %12087 = sext i32 %12086 to i64
  %12088 = getelementptr inbounds double, ptr %12082, i64 %12087
  %12089 = load double, ptr %12088, align 8, !tbaa !11
  %12090 = call double @llvm.fmuladd.f64(double 0xBFD41C0D131D4295, double %12089, double %12081)
  %12091 = load ptr, ptr %7, align 8, !tbaa !9
  %12092 = load i32, ptr %12, align 4, !tbaa !5
  %12093 = load i32, ptr %8, align 4, !tbaa !5
  %12094 = mul nsw i32 36, %12093
  %12095 = add nsw i32 %12092, %12094
  %12096 = sext i32 %12095 to i64
  %12097 = getelementptr inbounds double, ptr %12091, i64 %12096
  %12098 = load double, ptr %12097, align 8, !tbaa !11
  %12099 = call double @llvm.fmuladd.f64(double 0x3FF670C5F1F4C92E, double %12098, double %12090)
  %12100 = load ptr, ptr %7, align 8, !tbaa !9
  %12101 = load i32, ptr %12, align 4, !tbaa !5
  %12102 = load i32, ptr %8, align 4, !tbaa !5
  %12103 = mul nsw i32 37, %12102
  %12104 = add nsw i32 %12101, %12103
  %12105 = sext i32 %12104 to i64
  %12106 = getelementptr inbounds double, ptr %12100, i64 %12105
  %12107 = load double, ptr %12106, align 8, !tbaa !11
  %12108 = call double @llvm.fmuladd.f64(double 0x3FC36A9134CD3C58, double %12107, double %12099)
  %12109 = load ptr, ptr %7, align 8, !tbaa !9
  %12110 = load i32, ptr %12, align 4, !tbaa !5
  %12111 = load i32, ptr %8, align 4, !tbaa !5
  %12112 = mul nsw i32 38, %12111
  %12113 = add nsw i32 %12110, %12112
  %12114 = sext i32 %12113 to i64
  %12115 = getelementptr inbounds double, ptr %12109, i64 %12114
  %12116 = load double, ptr %12115, align 8, !tbaa !11
  %12117 = call double @llvm.fmuladd.f64(double 0x3FD35DAE88CBA648, double %12116, double %12108)
  %12118 = load ptr, ptr %7, align 8, !tbaa !9
  %12119 = load i32, ptr %12, align 4, !tbaa !5
  %12120 = load i32, ptr %8, align 4, !tbaa !5
  %12121 = mul nsw i32 39, %12120
  %12122 = add nsw i32 %12119, %12121
  %12123 = sext i32 %12122 to i64
  %12124 = getelementptr inbounds double, ptr %12118, i64 %12123
  %12125 = load double, ptr %12124, align 8, !tbaa !11
  %12126 = call double @llvm.fmuladd.f64(double 0x3FC27B05E24EC5F8, double %12125, double %12117)
  store double %12126, ptr %11, align 8, !tbaa !11
  %12127 = load double, ptr %11, align 8, !tbaa !11
  %12128 = load ptr, ptr %9, align 8, !tbaa !9
  %12129 = load i32, ptr %12, align 4, !tbaa !5
  %12130 = load i32, ptr %10, align 4, !tbaa !5
  %12131 = mul nsw i32 33, %12130
  %12132 = add nsw i32 %12129, %12131
  %12133 = sext i32 %12132 to i64
  %12134 = getelementptr inbounds double, ptr %12128, i64 %12133
  store double %12127, ptr %12134, align 8, !tbaa !11
  %12135 = load ptr, ptr %7, align 8, !tbaa !9
  %12136 = load i32, ptr %12, align 4, !tbaa !5
  %12137 = load i32, ptr %8, align 4, !tbaa !5
  %12138 = mul nsw i32 0, %12137
  %12139 = add nsw i32 %12136, %12138
  %12140 = sext i32 %12139 to i64
  %12141 = getelementptr inbounds double, ptr %12135, i64 %12140
  %12142 = load double, ptr %12141, align 8, !tbaa !11
  %12143 = load ptr, ptr %7, align 8, !tbaa !9
  %12144 = load i32, ptr %12, align 4, !tbaa !5
  %12145 = load i32, ptr %8, align 4, !tbaa !5
  %12146 = mul nsw i32 1, %12145
  %12147 = add nsw i32 %12144, %12146
  %12148 = sext i32 %12147 to i64
  %12149 = getelementptr inbounds double, ptr %12143, i64 %12148
  %12150 = load double, ptr %12149, align 8, !tbaa !11
  %12151 = fmul double 0x3CA0000000000002, %12150
  %12152 = call double @llvm.fmuladd.f64(double 0xBC89FFFFFFFFFFFF, double %12142, double %12151)
  %12153 = load ptr, ptr %7, align 8, !tbaa !9
  %12154 = load i32, ptr %12, align 4, !tbaa !5
  %12155 = load i32, ptr %8, align 4, !tbaa !5
  %12156 = mul nsw i32 2, %12155
  %12157 = add nsw i32 %12154, %12156
  %12158 = sext i32 %12157 to i64
  %12159 = getelementptr inbounds double, ptr %12153, i64 %12158
  %12160 = load double, ptr %12159, align 8, !tbaa !11
  %12161 = call double @llvm.fmuladd.f64(double 0xBCA4A00000000001, double %12160, double %12152)
  %12162 = load ptr, ptr %7, align 8, !tbaa !9
  %12163 = load i32, ptr %12, align 4, !tbaa !5
  %12164 = load i32, ptr %8, align 4, !tbaa !5
  %12165 = mul nsw i32 3, %12164
  %12166 = add nsw i32 %12163, %12165
  %12167 = sext i32 %12166 to i64
  %12168 = getelementptr inbounds double, ptr %12162, i64 %12167
  %12169 = load double, ptr %12168, align 8, !tbaa !11
  %12170 = call double @llvm.fmuladd.f64(double 0x3C8B800000000001, double %12169, double %12161)
  %12171 = load ptr, ptr %7, align 8, !tbaa !9
  %12172 = load i32, ptr %12, align 4, !tbaa !5
  %12173 = load i32, ptr %8, align 4, !tbaa !5
  %12174 = mul nsw i32 4, %12173
  %12175 = add nsw i32 %12172, %12174
  %12176 = sext i32 %12175 to i64
  %12177 = getelementptr inbounds double, ptr %12171, i64 %12176
  %12178 = load double, ptr %12177, align 8, !tbaa !11
  %12179 = call double @llvm.fmuladd.f64(double 0xBC94000000000000, double %12178, double %12170)
  %12180 = load ptr, ptr %7, align 8, !tbaa !9
  %12181 = load i32, ptr %12, align 4, !tbaa !5
  %12182 = load i32, ptr %8, align 4, !tbaa !5
  %12183 = mul nsw i32 5, %12182
  %12184 = add nsw i32 %12181, %12183
  %12185 = sext i32 %12184 to i64
  %12186 = getelementptr inbounds double, ptr %12180, i64 %12185
  %12187 = load double, ptr %12186, align 8, !tbaa !11
  %12188 = call double @llvm.fmuladd.f64(double 0xBC96000000000000, double %12187, double %12179)
  %12189 = load ptr, ptr %7, align 8, !tbaa !9
  %12190 = load i32, ptr %12, align 4, !tbaa !5
  %12191 = load i32, ptr %8, align 4, !tbaa !5
  %12192 = mul nsw i32 6, %12191
  %12193 = add nsw i32 %12190, %12192
  %12194 = sext i32 %12193 to i64
  %12195 = getelementptr inbounds double, ptr %12189, i64 %12194
  %12196 = load double, ptr %12195, align 8, !tbaa !11
  %12197 = call double @llvm.fmuladd.f64(double 0xBCA33FFFFFFFFFFE, double %12196, double %12188)
  %12198 = load ptr, ptr %7, align 8, !tbaa !9
  %12199 = load i32, ptr %12, align 4, !tbaa !5
  %12200 = load i32, ptr %8, align 4, !tbaa !5
  %12201 = mul nsw i32 7, %12200
  %12202 = add nsw i32 %12199, %12201
  %12203 = sext i32 %12202 to i64
  %12204 = getelementptr inbounds double, ptr %12198, i64 %12203
  %12205 = load double, ptr %12204, align 8, !tbaa !11
  %12206 = call double @llvm.fmuladd.f64(double 0x3C6C000000000000, double %12205, double %12197)
  %12207 = load ptr, ptr %7, align 8, !tbaa !9
  %12208 = load i32, ptr %12, align 4, !tbaa !5
  %12209 = load i32, ptr %8, align 4, !tbaa !5
  %12210 = mul nsw i32 8, %12209
  %12211 = add nsw i32 %12208, %12210
  %12212 = sext i32 %12211 to i64
  %12213 = getelementptr inbounds double, ptr %12207, i64 %12212
  %12214 = load double, ptr %12213, align 8, !tbaa !11
  %12215 = call double @llvm.fmuladd.f64(double 0x3CB3000000000000, double %12214, double %12206)
  %12216 = load ptr, ptr %7, align 8, !tbaa !9
  %12217 = load i32, ptr %12, align 4, !tbaa !5
  %12218 = load i32, ptr %8, align 4, !tbaa !5
  %12219 = mul nsw i32 9, %12218
  %12220 = add nsw i32 %12217, %12219
  %12221 = sext i32 %12220 to i64
  %12222 = getelementptr inbounds double, ptr %12216, i64 %12221
  %12223 = load double, ptr %12222, align 8, !tbaa !11
  %12224 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %12223, double %12215)
  %12225 = load ptr, ptr %7, align 8, !tbaa !9
  %12226 = load i32, ptr %12, align 4, !tbaa !5
  %12227 = load i32, ptr %8, align 4, !tbaa !5
  %12228 = mul nsw i32 10, %12227
  %12229 = add nsw i32 %12226, %12228
  %12230 = sext i32 %12229 to i64
  %12231 = getelementptr inbounds double, ptr %12225, i64 %12230
  %12232 = load double, ptr %12231, align 8, !tbaa !11
  %12233 = call double @llvm.fmuladd.f64(double 0x3CA5FFFFFFFFFFFF, double %12232, double %12224)
  %12234 = load ptr, ptr %7, align 8, !tbaa !9
  %12235 = load i32, ptr %12, align 4, !tbaa !5
  %12236 = load i32, ptr %8, align 4, !tbaa !5
  %12237 = mul nsw i32 11, %12236
  %12238 = add nsw i32 %12235, %12237
  %12239 = sext i32 %12238 to i64
  %12240 = getelementptr inbounds double, ptr %12234, i64 %12239
  %12241 = load double, ptr %12240, align 8, !tbaa !11
  %12242 = call double @llvm.fmuladd.f64(double 0xBC98000000000000, double %12241, double %12233)
  %12243 = load ptr, ptr %7, align 8, !tbaa !9
  %12244 = load i32, ptr %12, align 4, !tbaa !5
  %12245 = load i32, ptr %8, align 4, !tbaa !5
  %12246 = mul nsw i32 12, %12245
  %12247 = add nsw i32 %12244, %12246
  %12248 = sext i32 %12247 to i64
  %12249 = getelementptr inbounds double, ptr %12243, i64 %12248
  %12250 = load double, ptr %12249, align 8, !tbaa !11
  %12251 = call double @llvm.fmuladd.f64(double 0x3C93000000000000, double %12250, double %12242)
  %12252 = load ptr, ptr %7, align 8, !tbaa !9
  %12253 = load i32, ptr %12, align 4, !tbaa !5
  %12254 = load i32, ptr %8, align 4, !tbaa !5
  %12255 = mul nsw i32 13, %12254
  %12256 = add nsw i32 %12253, %12255
  %12257 = sext i32 %12256 to i64
  %12258 = getelementptr inbounds double, ptr %12252, i64 %12257
  %12259 = load double, ptr %12258, align 8, !tbaa !11
  %12260 = call double @llvm.fmuladd.f64(double 0x3C9A800000000000, double %12259, double %12251)
  %12261 = load ptr, ptr %7, align 8, !tbaa !9
  %12262 = load i32, ptr %12, align 4, !tbaa !5
  %12263 = load i32, ptr %8, align 4, !tbaa !5
  %12264 = mul nsw i32 14, %12263
  %12265 = add nsw i32 %12262, %12264
  %12266 = sext i32 %12265 to i64
  %12267 = getelementptr inbounds double, ptr %12261, i64 %12266
  %12268 = load double, ptr %12267, align 8, !tbaa !11
  %12269 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %12268, double %12260)
  %12270 = load ptr, ptr %7, align 8, !tbaa !9
  %12271 = load i32, ptr %12, align 4, !tbaa !5
  %12272 = load i32, ptr %8, align 4, !tbaa !5
  %12273 = mul nsw i32 15, %12272
  %12274 = add nsw i32 %12271, %12273
  %12275 = sext i32 %12274 to i64
  %12276 = getelementptr inbounds double, ptr %12270, i64 %12275
  %12277 = load double, ptr %12276, align 8, !tbaa !11
  %12278 = call double @llvm.fmuladd.f64(double 0xBCA2000000000000, double %12277, double %12269)
  %12279 = load ptr, ptr %7, align 8, !tbaa !9
  %12280 = load i32, ptr %12, align 4, !tbaa !5
  %12281 = load i32, ptr %8, align 4, !tbaa !5
  %12282 = mul nsw i32 16, %12281
  %12283 = add nsw i32 %12280, %12282
  %12284 = sext i32 %12283 to i64
  %12285 = getelementptr inbounds double, ptr %12279, i64 %12284
  %12286 = load double, ptr %12285, align 8, !tbaa !11
  %12287 = call double @llvm.fmuladd.f64(double 0xBCBA800000000000, double %12286, double %12278)
  %12288 = load ptr, ptr %7, align 8, !tbaa !9
  %12289 = load i32, ptr %12, align 4, !tbaa !5
  %12290 = load i32, ptr %8, align 4, !tbaa !5
  %12291 = mul nsw i32 17, %12290
  %12292 = add nsw i32 %12289, %12291
  %12293 = sext i32 %12292 to i64
  %12294 = getelementptr inbounds double, ptr %12288, i64 %12293
  %12295 = load double, ptr %12294, align 8, !tbaa !11
  %12296 = call double @llvm.fmuladd.f64(double 0x3C99000000000000, double %12295, double %12287)
  %12297 = load ptr, ptr %7, align 8, !tbaa !9
  %12298 = load i32, ptr %12, align 4, !tbaa !5
  %12299 = load i32, ptr %8, align 4, !tbaa !5
  %12300 = mul nsw i32 19, %12299
  %12301 = add nsw i32 %12298, %12300
  %12302 = sext i32 %12301 to i64
  %12303 = getelementptr inbounds double, ptr %12297, i64 %12302
  %12304 = load double, ptr %12303, align 8, !tbaa !11
  %12305 = call double @llvm.fmuladd.f64(double 0x3C7FFFFFFFFFFFFF, double %12304, double %12296)
  %12306 = load ptr, ptr %7, align 8, !tbaa !9
  %12307 = load i32, ptr %12, align 4, !tbaa !5
  %12308 = load i32, ptr %8, align 4, !tbaa !5
  %12309 = mul nsw i32 20, %12308
  %12310 = add nsw i32 %12307, %12309
  %12311 = sext i32 %12310 to i64
  %12312 = getelementptr inbounds double, ptr %12306, i64 %12311
  %12313 = load double, ptr %12312, align 8, !tbaa !11
  %12314 = call double @llvm.fmuladd.f64(double 0x3CB1000000000001, double %12313, double %12305)
  %12315 = load ptr, ptr %7, align 8, !tbaa !9
  %12316 = load i32, ptr %12, align 4, !tbaa !5
  %12317 = load i32, ptr %8, align 4, !tbaa !5
  %12318 = mul nsw i32 21, %12317
  %12319 = add nsw i32 %12316, %12318
  %12320 = sext i32 %12319 to i64
  %12321 = getelementptr inbounds double, ptr %12315, i64 %12320
  %12322 = load double, ptr %12321, align 8, !tbaa !11
  %12323 = call double @llvm.fmuladd.f64(double 0xBC88000000000000, double %12322, double %12314)
  %12324 = load ptr, ptr %7, align 8, !tbaa !9
  %12325 = load i32, ptr %12, align 4, !tbaa !5
  %12326 = load i32, ptr %8, align 4, !tbaa !5
  %12327 = mul nsw i32 22, %12326
  %12328 = add nsw i32 %12325, %12327
  %12329 = sext i32 %12328 to i64
  %12330 = getelementptr inbounds double, ptr %12324, i64 %12329
  %12331 = load double, ptr %12330, align 8, !tbaa !11
  %12332 = call double @llvm.fmuladd.f64(double 0xBCA1000000000001, double %12331, double %12323)
  %12333 = load ptr, ptr %7, align 8, !tbaa !9
  %12334 = load i32, ptr %12, align 4, !tbaa !5
  %12335 = load i32, ptr %8, align 4, !tbaa !5
  %12336 = mul nsw i32 23, %12335
  %12337 = add nsw i32 %12334, %12336
  %12338 = sext i32 %12337 to i64
  %12339 = getelementptr inbounds double, ptr %12333, i64 %12338
  %12340 = load double, ptr %12339, align 8, !tbaa !11
  %12341 = call double @llvm.fmuladd.f64(double 0x3CA3800000000002, double %12340, double %12332)
  %12342 = load ptr, ptr %7, align 8, !tbaa !9
  %12343 = load i32, ptr %12, align 4, !tbaa !5
  %12344 = load i32, ptr %8, align 4, !tbaa !5
  %12345 = mul nsw i32 24, %12344
  %12346 = add nsw i32 %12343, %12345
  %12347 = sext i32 %12346 to i64
  %12348 = getelementptr inbounds double, ptr %12342, i64 %12347
  %12349 = load double, ptr %12348, align 8, !tbaa !11
  %12350 = call double @llvm.fmuladd.f64(double 0x3CA0000000000002, double %12349, double %12341)
  %12351 = load ptr, ptr %7, align 8, !tbaa !9
  %12352 = load i32, ptr %12, align 4, !tbaa !5
  %12353 = load i32, ptr %8, align 4, !tbaa !5
  %12354 = mul nsw i32 25, %12353
  %12355 = add nsw i32 %12352, %12354
  %12356 = sext i32 %12355 to i64
  %12357 = getelementptr inbounds double, ptr %12351, i64 %12356
  %12358 = load double, ptr %12357, align 8, !tbaa !11
  %12359 = call double @llvm.fmuladd.f64(double 0xBCA0000000000002, double %12358, double %12350)
  %12360 = load ptr, ptr %7, align 8, !tbaa !9
  %12361 = load i32, ptr %12, align 4, !tbaa !5
  %12362 = load i32, ptr %8, align 4, !tbaa !5
  %12363 = mul nsw i32 26, %12362
  %12364 = add nsw i32 %12361, %12363
  %12365 = sext i32 %12364 to i64
  %12366 = getelementptr inbounds double, ptr %12360, i64 %12365
  %12367 = load double, ptr %12366, align 8, !tbaa !11
  %12368 = call double @llvm.fmuladd.f64(double 0xBC86000000000001, double %12367, double %12359)
  %12369 = load ptr, ptr %7, align 8, !tbaa !9
  %12370 = load i32, ptr %12, align 4, !tbaa !5
  %12371 = load i32, ptr %8, align 4, !tbaa !5
  %12372 = mul nsw i32 27, %12371
  %12373 = add nsw i32 %12370, %12372
  %12374 = sext i32 %12373 to i64
  %12375 = getelementptr inbounds double, ptr %12369, i64 %12374
  %12376 = load double, ptr %12375, align 8, !tbaa !11
  %12377 = call double @llvm.fmuladd.f64(double 0xBCAD7FFFFFFFFFFE, double %12376, double %12368)
  %12378 = load ptr, ptr %7, align 8, !tbaa !9
  %12379 = load i32, ptr %12, align 4, !tbaa !5
  %12380 = load i32, ptr %8, align 4, !tbaa !5
  %12381 = mul nsw i32 29, %12380
  %12382 = add nsw i32 %12379, %12381
  %12383 = sext i32 %12382 to i64
  %12384 = getelementptr inbounds double, ptr %12378, i64 %12383
  %12385 = load double, ptr %12384, align 8, !tbaa !11
  %12386 = call double @llvm.fmuladd.f64(double 0xBC70000000000001, double %12385, double %12377)
  %12387 = load ptr, ptr %7, align 8, !tbaa !9
  %12388 = load i32, ptr %12, align 4, !tbaa !5
  %12389 = load i32, ptr %8, align 4, !tbaa !5
  %12390 = mul nsw i32 30, %12389
  %12391 = add nsw i32 %12388, %12390
  %12392 = sext i32 %12391 to i64
  %12393 = getelementptr inbounds double, ptr %12387, i64 %12392
  %12394 = load double, ptr %12393, align 8, !tbaa !11
  %12395 = call double @llvm.fmuladd.f64(double 0xBFE333710B32A29C, double %12394, double %12386)
  %12396 = load ptr, ptr %7, align 8, !tbaa !9
  %12397 = load i32, ptr %12, align 4, !tbaa !5
  %12398 = load i32, ptr %8, align 4, !tbaa !5
  %12399 = mul nsw i32 31, %12398
  %12400 = add nsw i32 %12397, %12399
  %12401 = sext i32 %12400 to i64
  %12402 = getelementptr inbounds double, ptr %12396, i64 %12401
  %12403 = load double, ptr %12402, align 8, !tbaa !11
  %12404 = call double @llvm.fmuladd.f64(double 0xBFBEED13A9F0D910, double %12403, double %12395)
  %12405 = load ptr, ptr %7, align 8, !tbaa !9
  %12406 = load i32, ptr %12, align 4, !tbaa !5
  %12407 = load i32, ptr %8, align 4, !tbaa !5
  %12408 = mul nsw i32 32, %12407
  %12409 = add nsw i32 %12406, %12408
  %12410 = sext i32 %12409 to i64
  %12411 = getelementptr inbounds double, ptr %12405, i64 %12410
  %12412 = load double, ptr %12411, align 8, !tbaa !11
  %12413 = call double @llvm.fmuladd.f64(double 0x3FA87D76435484EB, double %12412, double %12404)
  %12414 = load ptr, ptr %7, align 8, !tbaa !9
  %12415 = load i32, ptr %12, align 4, !tbaa !5
  %12416 = load i32, ptr %8, align 4, !tbaa !5
  %12417 = mul nsw i32 33, %12416
  %12418 = add nsw i32 %12415, %12417
  %12419 = sext i32 %12418 to i64
  %12420 = getelementptr inbounds double, ptr %12414, i64 %12419
  %12421 = load double, ptr %12420, align 8, !tbaa !11
  %12422 = call double @llvm.fmuladd.f64(double 0xBFA352D4DB969C03, double %12421, double %12413)
  %12423 = load ptr, ptr %7, align 8, !tbaa !9
  %12424 = load i32, ptr %12, align 4, !tbaa !5
  %12425 = load i32, ptr %8, align 4, !tbaa !5
  %12426 = mul nsw i32 34, %12425
  %12427 = add nsw i32 %12424, %12426
  %12428 = sext i32 %12427 to i64
  %12429 = getelementptr inbounds double, ptr %12423, i64 %12428
  %12430 = load double, ptr %12429, align 8, !tbaa !11
  %12431 = call double @llvm.fmuladd.f64(double 0xBFD41C0D131D428A, double %12430, double %12422)
  %12432 = load ptr, ptr %7, align 8, !tbaa !9
  %12433 = load i32, ptr %12, align 4, !tbaa !5
  %12434 = load i32, ptr %8, align 4, !tbaa !5
  %12435 = mul nsw i32 35, %12434
  %12436 = add nsw i32 %12433, %12435
  %12437 = sext i32 %12436 to i64
  %12438 = getelementptr inbounds double, ptr %12432, i64 %12437
  %12439 = load double, ptr %12438, align 8, !tbaa !11
  %12440 = call double @llvm.fmuladd.f64(double 0x3F9854E0ADA34B70, double %12439, double %12431)
  %12441 = load ptr, ptr %7, align 8, !tbaa !9
  %12442 = load i32, ptr %12, align 4, !tbaa !5
  %12443 = load i32, ptr %8, align 4, !tbaa !5
  %12444 = mul nsw i32 36, %12443
  %12445 = add nsw i32 %12442, %12444
  %12446 = sext i32 %12445 to i64
  %12447 = getelementptr inbounds double, ptr %12441, i64 %12446
  %12448 = load double, ptr %12447, align 8, !tbaa !11
  %12449 = call double @llvm.fmuladd.f64(double 0x3FC36A9134CD3C54, double %12448, double %12440)
  %12450 = load ptr, ptr %7, align 8, !tbaa !9
  %12451 = load i32, ptr %12, align 4, !tbaa !5
  %12452 = load i32, ptr %8, align 4, !tbaa !5
  %12453 = mul nsw i32 37, %12452
  %12454 = add nsw i32 %12451, %12453
  %12455 = sext i32 %12454 to i64
  %12456 = getelementptr inbounds double, ptr %12450, i64 %12455
  %12457 = load double, ptr %12456, align 8, !tbaa !11
  %12458 = call double @llvm.fmuladd.f64(double 0x3FF670C5F1F4C92E, double %12457, double %12449)
  %12459 = load ptr, ptr %7, align 8, !tbaa !9
  %12460 = load i32, ptr %12, align 4, !tbaa !5
  %12461 = load i32, ptr %8, align 4, !tbaa !5
  %12462 = mul nsw i32 38, %12461
  %12463 = add nsw i32 %12460, %12462
  %12464 = sext i32 %12463 to i64
  %12465 = getelementptr inbounds double, ptr %12459, i64 %12464
  %12466 = load double, ptr %12465, align 8, !tbaa !11
  %12467 = call double @llvm.fmuladd.f64(double 0x3FC27B05E24EC5F4, double %12466, double %12458)
  %12468 = load ptr, ptr %7, align 8, !tbaa !9
  %12469 = load i32, ptr %12, align 4, !tbaa !5
  %12470 = load i32, ptr %8, align 4, !tbaa !5
  %12471 = mul nsw i32 39, %12470
  %12472 = add nsw i32 %12469, %12471
  %12473 = sext i32 %12472 to i64
  %12474 = getelementptr inbounds double, ptr %12468, i64 %12473
  %12475 = load double, ptr %12474, align 8, !tbaa !11
  %12476 = call double @llvm.fmuladd.f64(double 0x3FD35DAE88CBA64A, double %12475, double %12467)
  store double %12476, ptr %11, align 8, !tbaa !11
  %12477 = load double, ptr %11, align 8, !tbaa !11
  %12478 = load ptr, ptr %9, align 8, !tbaa !9
  %12479 = load i32, ptr %12, align 4, !tbaa !5
  %12480 = load i32, ptr %10, align 4, !tbaa !5
  %12481 = mul nsw i32 34, %12480
  %12482 = add nsw i32 %12479, %12481
  %12483 = sext i32 %12482 to i64
  %12484 = getelementptr inbounds double, ptr %12478, i64 %12483
  store double %12477, ptr %12484, align 8, !tbaa !11
  %12485 = load ptr, ptr %7, align 8, !tbaa !9
  %12486 = load i32, ptr %12, align 4, !tbaa !5
  %12487 = load i32, ptr %8, align 4, !tbaa !5
  %12488 = mul nsw i32 0, %12487
  %12489 = add nsw i32 %12486, %12488
  %12490 = sext i32 %12489 to i64
  %12491 = getelementptr inbounds double, ptr %12485, i64 %12490
  %12492 = load double, ptr %12491, align 8, !tbaa !11
  %12493 = load ptr, ptr %7, align 8, !tbaa !9
  %12494 = load i32, ptr %12, align 4, !tbaa !5
  %12495 = load i32, ptr %8, align 4, !tbaa !5
  %12496 = mul nsw i32 1, %12495
  %12497 = add nsw i32 %12494, %12496
  %12498 = sext i32 %12497 to i64
  %12499 = getelementptr inbounds double, ptr %12493, i64 %12498
  %12500 = load double, ptr %12499, align 8, !tbaa !11
  %12501 = fmul double 0x3CA5000000000000, %12500
  %12502 = call double @llvm.fmuladd.f64(double 0xBCC1400000000000, double %12492, double %12501)
  %12503 = load ptr, ptr %7, align 8, !tbaa !9
  %12504 = load i32, ptr %12, align 4, !tbaa !5
  %12505 = load i32, ptr %8, align 4, !tbaa !5
  %12506 = mul nsw i32 2, %12505
  %12507 = add nsw i32 %12504, %12506
  %12508 = sext i32 %12507 to i64
  %12509 = getelementptr inbounds double, ptr %12503, i64 %12508
  %12510 = load double, ptr %12509, align 8, !tbaa !11
  %12511 = call double @llvm.fmuladd.f64(double 0x3CA8600000000000, double %12510, double %12502)
  %12512 = load ptr, ptr %7, align 8, !tbaa !9
  %12513 = load i32, ptr %12, align 4, !tbaa !5
  %12514 = load i32, ptr %8, align 4, !tbaa !5
  %12515 = mul nsw i32 3, %12514
  %12516 = add nsw i32 %12513, %12515
  %12517 = sext i32 %12516 to i64
  %12518 = getelementptr inbounds double, ptr %12512, i64 %12517
  %12519 = load double, ptr %12518, align 8, !tbaa !11
  %12520 = call double @llvm.fmuladd.f64(double 0xBCB5100000000000, double %12519, double %12511)
  %12521 = load ptr, ptr %7, align 8, !tbaa !9
  %12522 = load i32, ptr %12, align 4, !tbaa !5
  %12523 = load i32, ptr %8, align 4, !tbaa !5
  %12524 = mul nsw i32 4, %12523
  %12525 = add nsw i32 %12522, %12524
  %12526 = sext i32 %12525 to i64
  %12527 = getelementptr inbounds double, ptr %12521, i64 %12526
  %12528 = load double, ptr %12527, align 8, !tbaa !11
  %12529 = call double @llvm.fmuladd.f64(double 0xBCA9FFFFFFFFFFFE, double %12528, double %12520)
  %12530 = load ptr, ptr %7, align 8, !tbaa !9
  %12531 = load i32, ptr %12, align 4, !tbaa !5
  %12532 = load i32, ptr %8, align 4, !tbaa !5
  %12533 = mul nsw i32 5, %12532
  %12534 = add nsw i32 %12531, %12533
  %12535 = sext i32 %12534 to i64
  %12536 = getelementptr inbounds double, ptr %12530, i64 %12535
  %12537 = load double, ptr %12536, align 8, !tbaa !11
  %12538 = call double @llvm.fmuladd.f64(double 0xBC88000000000000, double %12537, double %12529)
  %12539 = load ptr, ptr %7, align 8, !tbaa !9
  %12540 = load i32, ptr %12, align 4, !tbaa !5
  %12541 = load i32, ptr %8, align 4, !tbaa !5
  %12542 = mul nsw i32 6, %12541
  %12543 = add nsw i32 %12540, %12542
  %12544 = sext i32 %12543 to i64
  %12545 = getelementptr inbounds double, ptr %12539, i64 %12544
  %12546 = load double, ptr %12545, align 8, !tbaa !11
  %12547 = call double @llvm.fmuladd.f64(double 0x3C8D000000000001, double %12546, double %12538)
  %12548 = load ptr, ptr %7, align 8, !tbaa !9
  %12549 = load i32, ptr %12, align 4, !tbaa !5
  %12550 = load i32, ptr %8, align 4, !tbaa !5
  %12551 = mul nsw i32 7, %12550
  %12552 = add nsw i32 %12549, %12551
  %12553 = sext i32 %12552 to i64
  %12554 = getelementptr inbounds double, ptr %12548, i64 %12553
  %12555 = load double, ptr %12554, align 8, !tbaa !11
  %12556 = call double @llvm.fmuladd.f64(double 0x3CB0400000000000, double %12555, double %12547)
  %12557 = load ptr, ptr %7, align 8, !tbaa !9
  %12558 = load i32, ptr %12, align 4, !tbaa !5
  %12559 = load i32, ptr %8, align 4, !tbaa !5
  %12560 = mul nsw i32 8, %12559
  %12561 = add nsw i32 %12558, %12560
  %12562 = sext i32 %12561 to i64
  %12563 = getelementptr inbounds double, ptr %12557, i64 %12562
  %12564 = load double, ptr %12563, align 8, !tbaa !11
  %12565 = call double @llvm.fmuladd.f64(double 0x3CB1000000000001, double %12564, double %12556)
  %12566 = load ptr, ptr %7, align 8, !tbaa !9
  %12567 = load i32, ptr %12, align 4, !tbaa !5
  %12568 = load i32, ptr %8, align 4, !tbaa !5
  %12569 = mul nsw i32 9, %12568
  %12570 = add nsw i32 %12567, %12569
  %12571 = sext i32 %12570 to i64
  %12572 = getelementptr inbounds double, ptr %12566, i64 %12571
  %12573 = load double, ptr %12572, align 8, !tbaa !11
  %12574 = call double @llvm.fmuladd.f64(double 0xBC78000000000002, double %12573, double %12565)
  %12575 = load ptr, ptr %7, align 8, !tbaa !9
  %12576 = load i32, ptr %12, align 4, !tbaa !5
  %12577 = load i32, ptr %8, align 4, !tbaa !5
  %12578 = mul nsw i32 10, %12577
  %12579 = add nsw i32 %12576, %12578
  %12580 = sext i32 %12579 to i64
  %12581 = getelementptr inbounds double, ptr %12575, i64 %12580
  %12582 = load double, ptr %12581, align 8, !tbaa !11
  %12583 = call double @llvm.fmuladd.f64(double 0x3CC7000000000000, double %12582, double %12574)
  %12584 = load ptr, ptr %7, align 8, !tbaa !9
  %12585 = load i32, ptr %12, align 4, !tbaa !5
  %12586 = load i32, ptr %8, align 4, !tbaa !5
  %12587 = mul nsw i32 11, %12586
  %12588 = add nsw i32 %12585, %12587
  %12589 = sext i32 %12588 to i64
  %12590 = getelementptr inbounds double, ptr %12584, i64 %12589
  %12591 = load double, ptr %12590, align 8, !tbaa !11
  %12592 = call double @llvm.fmuladd.f64(double 0xBC70000000000001, double %12591, double %12583)
  %12593 = load ptr, ptr %7, align 8, !tbaa !9
  %12594 = load i32, ptr %12, align 4, !tbaa !5
  %12595 = load i32, ptr %8, align 4, !tbaa !5
  %12596 = mul nsw i32 12, %12595
  %12597 = add nsw i32 %12594, %12596
  %12598 = sext i32 %12597 to i64
  %12599 = getelementptr inbounds double, ptr %12593, i64 %12598
  %12600 = load double, ptr %12599, align 8, !tbaa !11
  %12601 = call double @llvm.fmuladd.f64(double 0x3C9EFFFFFFFFFFFD, double %12600, double %12592)
  %12602 = load ptr, ptr %7, align 8, !tbaa !9
  %12603 = load i32, ptr %12, align 4, !tbaa !5
  %12604 = load i32, ptr %8, align 4, !tbaa !5
  %12605 = mul nsw i32 13, %12604
  %12606 = add nsw i32 %12603, %12605
  %12607 = sext i32 %12606 to i64
  %12608 = getelementptr inbounds double, ptr %12602, i64 %12607
  %12609 = load double, ptr %12608, align 8, !tbaa !11
  %12610 = call double @llvm.fmuladd.f64(double 0x3C8B000000000000, double %12609, double %12601)
  %12611 = load ptr, ptr %7, align 8, !tbaa !9
  %12612 = load i32, ptr %12, align 4, !tbaa !5
  %12613 = load i32, ptr %8, align 4, !tbaa !5
  %12614 = mul nsw i32 14, %12613
  %12615 = add nsw i32 %12612, %12614
  %12616 = sext i32 %12615 to i64
  %12617 = getelementptr inbounds double, ptr %12611, i64 %12616
  %12618 = load double, ptr %12617, align 8, !tbaa !11
  %12619 = call double @llvm.fmuladd.f64(double 0xBCBF000000000001, double %12618, double %12610)
  %12620 = load ptr, ptr %7, align 8, !tbaa !9
  %12621 = load i32, ptr %12, align 4, !tbaa !5
  %12622 = load i32, ptr %8, align 4, !tbaa !5
  %12623 = mul nsw i32 15, %12622
  %12624 = add nsw i32 %12621, %12623
  %12625 = sext i32 %12624 to i64
  %12626 = getelementptr inbounds double, ptr %12620, i64 %12625
  %12627 = load double, ptr %12626, align 8, !tbaa !11
  %12628 = call double @llvm.fmuladd.f64(double 0xBCACFFFFFFFFFFFF, double %12627, double %12619)
  %12629 = load ptr, ptr %7, align 8, !tbaa !9
  %12630 = load i32, ptr %12, align 4, !tbaa !5
  %12631 = load i32, ptr %8, align 4, !tbaa !5
  %12632 = mul nsw i32 16, %12631
  %12633 = add nsw i32 %12630, %12632
  %12634 = sext i32 %12633 to i64
  %12635 = getelementptr inbounds double, ptr %12629, i64 %12634
  %12636 = load double, ptr %12635, align 8, !tbaa !11
  %12637 = call double @llvm.fmuladd.f64(double 0xBCA3800000000002, double %12636, double %12628)
  %12638 = load ptr, ptr %7, align 8, !tbaa !9
  %12639 = load i32, ptr %12, align 4, !tbaa !5
  %12640 = load i32, ptr %8, align 4, !tbaa !5
  %12641 = mul nsw i32 17, %12640
  %12642 = add nsw i32 %12639, %12641
  %12643 = sext i32 %12642 to i64
  %12644 = getelementptr inbounds double, ptr %12638, i64 %12643
  %12645 = load double, ptr %12644, align 8, !tbaa !11
  %12646 = call double @llvm.fmuladd.f64(double 0x3CB9C00000000001, double %12645, double %12637)
  %12647 = load ptr, ptr %7, align 8, !tbaa !9
  %12648 = load i32, ptr %12, align 4, !tbaa !5
  %12649 = load i32, ptr %8, align 4, !tbaa !5
  %12650 = mul nsw i32 18, %12649
  %12651 = add nsw i32 %12648, %12650
  %12652 = sext i32 %12651 to i64
  %12653 = getelementptr inbounds double, ptr %12647, i64 %12652
  %12654 = load double, ptr %12653, align 8, !tbaa !11
  %12655 = call double @llvm.fmuladd.f64(double 0xBC94000000000000, double %12654, double %12646)
  %12656 = load ptr, ptr %7, align 8, !tbaa !9
  %12657 = load i32, ptr %12, align 4, !tbaa !5
  %12658 = load i32, ptr %8, align 4, !tbaa !5
  %12659 = mul nsw i32 20, %12658
  %12660 = add nsw i32 %12657, %12659
  %12661 = sext i32 %12660 to i64
  %12662 = getelementptr inbounds double, ptr %12656, i64 %12661
  %12663 = load double, ptr %12662, align 8, !tbaa !11
  %12664 = call double @llvm.fmuladd.f64(double 0xBCB2000000000000, double %12663, double %12655)
  %12665 = load ptr, ptr %7, align 8, !tbaa !9
  %12666 = load i32, ptr %12, align 4, !tbaa !5
  %12667 = load i32, ptr %8, align 4, !tbaa !5
  %12668 = mul nsw i32 21, %12667
  %12669 = add nsw i32 %12666, %12668
  %12670 = sext i32 %12669 to i64
  %12671 = getelementptr inbounds double, ptr %12665, i64 %12670
  %12672 = load double, ptr %12671, align 8, !tbaa !11
  %12673 = call double @llvm.fmuladd.f64(double 0xBCA8000000000001, double %12672, double %12664)
  %12674 = load ptr, ptr %7, align 8, !tbaa !9
  %12675 = load i32, ptr %12, align 4, !tbaa !5
  %12676 = load i32, ptr %8, align 4, !tbaa !5
  %12677 = mul nsw i32 22, %12676
  %12678 = add nsw i32 %12675, %12677
  %12679 = sext i32 %12678 to i64
  %12680 = getelementptr inbounds double, ptr %12674, i64 %12679
  %12681 = load double, ptr %12680, align 8, !tbaa !11
  %12682 = call double @llvm.fmuladd.f64(double 0xBCB3FFFFFFFFFFFF, double %12681, double %12673)
  %12683 = load ptr, ptr %7, align 8, !tbaa !9
  %12684 = load i32, ptr %12, align 4, !tbaa !5
  %12685 = load i32, ptr %8, align 4, !tbaa !5
  %12686 = mul nsw i32 23, %12685
  %12687 = add nsw i32 %12684, %12686
  %12688 = sext i32 %12687 to i64
  %12689 = getelementptr inbounds double, ptr %12683, i64 %12688
  %12690 = load double, ptr %12689, align 8, !tbaa !11
  %12691 = call double @llvm.fmuladd.f64(double 0x3CB7000000000000, double %12690, double %12682)
  %12692 = load ptr, ptr %7, align 8, !tbaa !9
  %12693 = load i32, ptr %12, align 4, !tbaa !5
  %12694 = load i32, ptr %8, align 4, !tbaa !5
  %12695 = mul nsw i32 24, %12694
  %12696 = add nsw i32 %12693, %12695
  %12697 = sext i32 %12696 to i64
  %12698 = getelementptr inbounds double, ptr %12692, i64 %12697
  %12699 = load double, ptr %12698, align 8, !tbaa !11
  %12700 = call double @llvm.fmuladd.f64(double 0x3CB7000000000000, double %12699, double %12691)
  %12701 = load ptr, ptr %7, align 8, !tbaa !9
  %12702 = load i32, ptr %12, align 4, !tbaa !5
  %12703 = load i32, ptr %8, align 4, !tbaa !5
  %12704 = mul nsw i32 25, %12703
  %12705 = add nsw i32 %12702, %12704
  %12706 = sext i32 %12705 to i64
  %12707 = getelementptr inbounds double, ptr %12701, i64 %12706
  %12708 = load double, ptr %12707, align 8, !tbaa !11
  %12709 = call double @llvm.fmuladd.f64(double 0xBC8C000000000000, double %12708, double %12700)
  %12710 = load ptr, ptr %7, align 8, !tbaa !9
  %12711 = load i32, ptr %12, align 4, !tbaa !5
  %12712 = load i32, ptr %8, align 4, !tbaa !5
  %12713 = mul nsw i32 26, %12712
  %12714 = add nsw i32 %12711, %12713
  %12715 = sext i32 %12714 to i64
  %12716 = getelementptr inbounds double, ptr %12710, i64 %12715
  %12717 = load double, ptr %12716, align 8, !tbaa !11
  %12718 = call double @llvm.fmuladd.f64(double 0x3C95000000000000, double %12717, double %12709)
  %12719 = load ptr, ptr %7, align 8, !tbaa !9
  %12720 = load i32, ptr %12, align 4, !tbaa !5
  %12721 = load i32, ptr %8, align 4, !tbaa !5
  %12722 = mul nsw i32 27, %12721
  %12723 = add nsw i32 %12720, %12722
  %12724 = sext i32 %12723 to i64
  %12725 = getelementptr inbounds double, ptr %12719, i64 %12724
  %12726 = load double, ptr %12725, align 8, !tbaa !11
  %12727 = call double @llvm.fmuladd.f64(double 0xBCBE400000000000, double %12726, double %12718)
  %12728 = load ptr, ptr %7, align 8, !tbaa !9
  %12729 = load i32, ptr %12, align 4, !tbaa !5
  %12730 = load i32, ptr %8, align 4, !tbaa !5
  %12731 = mul nsw i32 28, %12730
  %12732 = add nsw i32 %12729, %12731
  %12733 = sext i32 %12732 to i64
  %12734 = getelementptr inbounds double, ptr %12728, i64 %12733
  %12735 = load double, ptr %12734, align 8, !tbaa !11
  %12736 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %12735, double %12727)
  %12737 = load ptr, ptr %7, align 8, !tbaa !9
  %12738 = load i32, ptr %12, align 4, !tbaa !5
  %12739 = load i32, ptr %8, align 4, !tbaa !5
  %12740 = mul nsw i32 29, %12739
  %12741 = add nsw i32 %12738, %12740
  %12742 = sext i32 %12741 to i64
  %12743 = getelementptr inbounds double, ptr %12737, i64 %12742
  %12744 = load double, ptr %12743, align 8, !tbaa !11
  %12745 = call double @llvm.fmuladd.f64(double 0xBCA0000000000002, double %12744, double %12736)
  %12746 = load ptr, ptr %7, align 8, !tbaa !9
  %12747 = load i32, ptr %12, align 4, !tbaa !5
  %12748 = load i32, ptr %8, align 4, !tbaa !5
  %12749 = mul nsw i32 30, %12748
  %12750 = add nsw i32 %12747, %12749
  %12751 = sext i32 %12750 to i64
  %12752 = getelementptr inbounds double, ptr %12746, i64 %12751
  %12753 = load double, ptr %12752, align 8, !tbaa !11
  %12754 = call double @llvm.fmuladd.f64(double 0xBF83152016E0ED26, double %12753, double %12745)
  %12755 = load ptr, ptr %7, align 8, !tbaa !9
  %12756 = load i32, ptr %12, align 4, !tbaa !5
  %12757 = load i32, ptr %8, align 4, !tbaa !5
  %12758 = mul nsw i32 31, %12757
  %12759 = add nsw i32 %12756, %12758
  %12760 = sext i32 %12759 to i64
  %12761 = getelementptr inbounds double, ptr %12755, i64 %12760
  %12762 = load double, ptr %12761, align 8, !tbaa !11
  %12763 = call double @llvm.fmuladd.f64(double 0xBFB5B58B4F03B1AC, double %12762, double %12754)
  %12764 = load ptr, ptr %7, align 8, !tbaa !9
  %12765 = load i32, ptr %12, align 4, !tbaa !5
  %12766 = load i32, ptr %8, align 4, !tbaa !5
  %12767 = mul nsw i32 32, %12766
  %12768 = add nsw i32 %12765, %12767
  %12769 = sext i32 %12768 to i64
  %12770 = getelementptr inbounds double, ptr %12764, i64 %12769
  %12771 = load double, ptr %12770, align 8, !tbaa !11
  %12772 = call double @llvm.fmuladd.f64(double 0x3FF4EC1BB3FDC617, double %12771, double %12763)
  %12773 = load ptr, ptr %7, align 8, !tbaa !9
  %12774 = load i32, ptr %12, align 4, !tbaa !5
  %12775 = load i32, ptr %8, align 4, !tbaa !5
  %12776 = mul nsw i32 33, %12775
  %12777 = add nsw i32 %12774, %12776
  %12778 = sext i32 %12777 to i64
  %12779 = getelementptr inbounds double, ptr %12773, i64 %12778
  %12780 = load double, ptr %12779, align 8, !tbaa !11
  %12781 = call double @llvm.fmuladd.f64(double 0x3F938CE4890DB2CB, double %12780, double %12772)
  %12782 = load ptr, ptr %7, align 8, !tbaa !9
  %12783 = load i32, ptr %12, align 4, !tbaa !5
  %12784 = load i32, ptr %8, align 4, !tbaa !5
  %12785 = mul nsw i32 34, %12784
  %12786 = add nsw i32 %12783, %12785
  %12787 = sext i32 %12786 to i64
  %12788 = getelementptr inbounds double, ptr %12782, i64 %12787
  %12789 = load double, ptr %12788, align 8, !tbaa !11
  %12790 = call double @llvm.fmuladd.f64(double 0xBFE5679E70A60654, double %12789, double %12781)
  %12791 = load ptr, ptr %7, align 8, !tbaa !9
  %12792 = load i32, ptr %12, align 4, !tbaa !5
  %12793 = load i32, ptr %8, align 4, !tbaa !5
  %12794 = mul nsw i32 35, %12793
  %12795 = add nsw i32 %12792, %12794
  %12796 = sext i32 %12795 to i64
  %12797 = getelementptr inbounds double, ptr %12791, i64 %12796
  %12798 = load double, ptr %12797, align 8, !tbaa !11
  %12799 = call double @llvm.fmuladd.f64(double 0x3F85E50BB681A4BC, double %12798, double %12790)
  %12800 = load ptr, ptr %7, align 8, !tbaa !9
  %12801 = load i32, ptr %12, align 4, !tbaa !5
  %12802 = load i32, ptr %8, align 4, !tbaa !5
  %12803 = mul nsw i32 36, %12802
  %12804 = add nsw i32 %12801, %12803
  %12805 = sext i32 %12804 to i64
  %12806 = getelementptr inbounds double, ptr %12800, i64 %12805
  %12807 = load double, ptr %12806, align 8, !tbaa !11
  %12808 = call double @llvm.fmuladd.f64(double 0xBFB49217631F591C, double %12807, double %12799)
  %12809 = load ptr, ptr %7, align 8, !tbaa !9
  %12810 = load i32, ptr %12, align 4, !tbaa !5
  %12811 = load i32, ptr %8, align 4, !tbaa !5
  %12812 = mul nsw i32 37, %12811
  %12813 = add nsw i32 %12810, %12812
  %12814 = sext i32 %12813 to i64
  %12815 = getelementptr inbounds double, ptr %12809, i64 %12814
  %12816 = load double, ptr %12815, align 8, !tbaa !11
  %12817 = call double @llvm.fmuladd.f64(double 0x3FCA50C41AB7A2E4, double %12816, double %12808)
  %12818 = load ptr, ptr %7, align 8, !tbaa !9
  %12819 = load i32, ptr %12, align 4, !tbaa !5
  %12820 = load i32, ptr %8, align 4, !tbaa !5
  %12821 = mul nsw i32 38, %12820
  %12822 = add nsw i32 %12819, %12821
  %12823 = sext i32 %12822 to i64
  %12824 = getelementptr inbounds double, ptr %12818, i64 %12823
  %12825 = load double, ptr %12824, align 8, !tbaa !11
  %12826 = call double @llvm.fmuladd.f64(double 0xBF8BDAF699AECF71, double %12825, double %12817)
  %12827 = load ptr, ptr %7, align 8, !tbaa !9
  %12828 = load i32, ptr %12, align 4, !tbaa !5
  %12829 = load i32, ptr %8, align 4, !tbaa !5
  %12830 = mul nsw i32 39, %12829
  %12831 = add nsw i32 %12828, %12830
  %12832 = sext i32 %12831 to i64
  %12833 = getelementptr inbounds double, ptr %12827, i64 %12832
  %12834 = load double, ptr %12833, align 8, !tbaa !11
  %12835 = call double @llvm.fmuladd.f64(double 0x3FD417DEBFC17B15, double %12834, double %12826)
  store double %12835, ptr %11, align 8, !tbaa !11
  %12836 = load double, ptr %11, align 8, !tbaa !11
  %12837 = load ptr, ptr %9, align 8, !tbaa !9
  %12838 = load i32, ptr %12, align 4, !tbaa !5
  %12839 = load i32, ptr %10, align 4, !tbaa !5
  %12840 = mul nsw i32 35, %12839
  %12841 = add nsw i32 %12838, %12840
  %12842 = sext i32 %12841 to i64
  %12843 = getelementptr inbounds double, ptr %12837, i64 %12842
  store double %12836, ptr %12843, align 8, !tbaa !11
  %12844 = load ptr, ptr %7, align 8, !tbaa !9
  %12845 = load i32, ptr %12, align 4, !tbaa !5
  %12846 = load i32, ptr %8, align 4, !tbaa !5
  %12847 = mul nsw i32 0, %12846
  %12848 = add nsw i32 %12845, %12847
  %12849 = sext i32 %12848 to i64
  %12850 = getelementptr inbounds double, ptr %12844, i64 %12849
  %12851 = load double, ptr %12850, align 8, !tbaa !11
  %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 1, %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 = fmul double 0x3F938CE4890DB2D9, %12859
  %12861 = call double @llvm.fmuladd.f64(double 0xBF83152016E0ECAB, double %12851, double %12860)
  %12862 = load ptr, ptr %7, align 8, !tbaa !9
  %12863 = load i32, ptr %12, align 4, !tbaa !5
  %12864 = load i32, ptr %8, align 4, !tbaa !5
  %12865 = mul nsw i32 2, %12864
  %12866 = add nsw i32 %12863, %12865
  %12867 = sext i32 %12866 to i64
  %12868 = getelementptr inbounds double, ptr %12862, i64 %12867
  %12869 = load double, ptr %12868, align 8, !tbaa !11
  %12870 = call double @llvm.fmuladd.f64(double 0xBFB5B58B4F03B1A3, double %12869, double %12861)
  %12871 = load ptr, ptr %7, align 8, !tbaa !9
  %12872 = load i32, ptr %12, align 4, !tbaa !5
  %12873 = load i32, ptr %8, align 4, !tbaa !5
  %12874 = mul nsw i32 3, %12873
  %12875 = add nsw i32 %12872, %12874
  %12876 = sext i32 %12875 to i64
  %12877 = getelementptr inbounds double, ptr %12871, i64 %12876
  %12878 = load double, ptr %12877, align 8, !tbaa !11
  %12879 = call double @llvm.fmuladd.f64(double 0x3FF4EC1BB3FDC612, double %12878, double %12870)
  %12880 = load ptr, ptr %7, align 8, !tbaa !9
  %12881 = load i32, ptr %12, align 4, !tbaa !5
  %12882 = load i32, ptr %8, align 4, !tbaa !5
  %12883 = mul nsw i32 4, %12882
  %12884 = add nsw i32 %12881, %12883
  %12885 = sext i32 %12884 to i64
  %12886 = getelementptr inbounds double, ptr %12880, i64 %12885
  %12887 = load double, ptr %12886, align 8, !tbaa !11
  %12888 = call double @llvm.fmuladd.f64(double 0xBF8BDAF699AECF88, double %12887, double %12879)
  %12889 = load ptr, ptr %7, align 8, !tbaa !9
  %12890 = load i32, ptr %12, align 4, !tbaa !5
  %12891 = load i32, ptr %8, align 4, !tbaa !5
  %12892 = mul nsw i32 5, %12891
  %12893 = add nsw i32 %12890, %12892
  %12894 = sext i32 %12893 to i64
  %12895 = getelementptr inbounds double, ptr %12889, i64 %12894
  %12896 = load double, ptr %12895, align 8, !tbaa !11
  %12897 = call double @llvm.fmuladd.f64(double 0x3FCA50C41AB7A325, double %12896, double %12888)
  %12898 = load ptr, ptr %7, align 8, !tbaa !9
  %12899 = load i32, ptr %12, align 4, !tbaa !5
  %12900 = load i32, ptr %8, align 4, !tbaa !5
  %12901 = mul nsw i32 6, %12900
  %12902 = add nsw i32 %12899, %12901
  %12903 = sext i32 %12902 to i64
  %12904 = getelementptr inbounds double, ptr %12898, i64 %12903
  %12905 = load double, ptr %12904, align 8, !tbaa !11
  %12906 = call double @llvm.fmuladd.f64(double 0xBFE5679E70A60653, double %12905, double %12897)
  %12907 = load ptr, ptr %7, align 8, !tbaa !9
  %12908 = load i32, ptr %12, align 4, !tbaa !5
  %12909 = load i32, ptr %8, align 4, !tbaa !5
  %12910 = mul nsw i32 7, %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 = call double @llvm.fmuladd.f64(double 0x3FD417DEBFC17B18, double %12914, double %12906)
  %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 8, %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 = call double @llvm.fmuladd.f64(double 0xBFB49217631F5944, double %12923, double %12915)
  %12925 = load ptr, ptr %7, align 8, !tbaa !9
  %12926 = load i32, ptr %12, align 4, !tbaa !5
  %12927 = load i32, ptr %8, align 4, !tbaa !5
  %12928 = mul nsw i32 9, %12927
  %12929 = add nsw i32 %12926, %12928
  %12930 = sext i32 %12929 to i64
  %12931 = getelementptr inbounds double, ptr %12925, i64 %12930
  %12932 = load double, ptr %12931, align 8, !tbaa !11
  %12933 = call double @llvm.fmuladd.f64(double 0x3F85E50BB681A448, double %12932, double %12924)
  %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 10, %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 0x3C9C800000000000, 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 11, %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 0xBC60000000000000, 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 12, %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 0xBC80800000000000, 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 13, %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 0x3CA5CFFFFFFFFFFF, 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 14, %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 0x3C94000000000000, 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 15, %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 0xBC82FFFFFFFFFFFF, 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 16, %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 0xBC97E00000000000, 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 17, %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 0xBC8B800000000001, 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 18, %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 0x3C7FFFFFFFFFFFFF, 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 19, %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 0x3C74000000000000, 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 20, %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 0x3C93800000000000, 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 21, %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 0x3C86FFFFFFFFFFFF, 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 22, %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 0xBC7FFFFFFFFFFFFF, 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 23, %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 0xBC68FFFFFFFFFFFD, 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 24, %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 0x3C78000000000002, 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 25, %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 0x3CA7C00000000001, 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 26, %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 0x3CA4100000000001, 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 27, %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 0xBCA1A00000000000, 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 28, %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 0x3C89000000000000, 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 29, %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 0xBC90000000000000, 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 30, %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 0xBC92400000000000, 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 31, %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 0xBC90000000000000, 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 32, %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 0xBCA0780000000001, 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 33, %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 0x3C69800000000003, 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 34, %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 0xBC70000000000001, 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 35, %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 0x3CA27FFFFFFFFFFF, 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 36, %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 0xBC90F00000000000, 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 37, %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 0xBC82A00000000000, 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 38, %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 0x3C6C000000000000, 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 39, %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 0xBC66000000000000, double %13202, double %13194)
  store double %13203, ptr %11, align 8, !tbaa !11
  %13204 = load double, ptr %11, align 8, !tbaa !11
  %13205 = load ptr, ptr %9, align 8, !tbaa !9
  %13206 = load i32, ptr %12, align 4, !tbaa !5
  %13207 = load i32, ptr %10, align 4, !tbaa !5
  %13208 = mul nsw i32 36, %13207
  %13209 = add nsw i32 %13206, %13208
  %13210 = sext i32 %13209 to i64
  %13211 = getelementptr inbounds double, ptr %13205, i64 %13210
  store double %13204, ptr %13211, align 8, !tbaa !11
  %13212 = load ptr, ptr %7, align 8, !tbaa !9
  %13213 = load i32, ptr %12, align 4, !tbaa !5
  %13214 = load i32, ptr %8, align 4, !tbaa !5
  %13215 = mul nsw i32 0, %13214
  %13216 = add nsw i32 %13213, %13215
  %13217 = sext i32 %13216 to i64
  %13218 = getelementptr inbounds double, ptr %13212, i64 %13217
  %13219 = load double, ptr %13218, align 8, !tbaa !11
  %13220 = load ptr, ptr %7, align 8, !tbaa !9
  %13221 = load i32, ptr %12, align 4, !tbaa !5
  %13222 = load i32, ptr %8, align 4, !tbaa !5
  %13223 = mul nsw i32 1, %13222
  %13224 = add nsw i32 %13221, %13223
  %13225 = sext i32 %13224 to i64
  %13226 = getelementptr inbounds double, ptr %13220, i64 %13225
  %13227 = load double, ptr %13226, align 8, !tbaa !11
  %13228 = fmul double 0xBFA352D4DB969C0E, %13227
  %13229 = call double @llvm.fmuladd.f64(double 0xBFE333710B32A29A, double %13219, double %13228)
  %13230 = load ptr, ptr %7, align 8, !tbaa !9
  %13231 = load i32, ptr %12, align 4, !tbaa !5
  %13232 = load i32, ptr %8, align 4, !tbaa !5
  %13233 = mul nsw i32 2, %13232
  %13234 = add nsw i32 %13231, %13233
  %13235 = sext i32 %13234 to i64
  %13236 = getelementptr inbounds double, ptr %13230, i64 %13235
  %13237 = load double, ptr %13236, align 8, !tbaa !11
  %13238 = call double @llvm.fmuladd.f64(double 0xBFBEED13A9F0D910, double %13237, double %13229)
  %13239 = load ptr, ptr %7, align 8, !tbaa !9
  %13240 = load i32, ptr %12, align 4, !tbaa !5
  %13241 = load i32, ptr %8, align 4, !tbaa !5
  %13242 = mul nsw i32 3, %13241
  %13243 = add nsw i32 %13240, %13242
  %13244 = sext i32 %13243 to i64
  %13245 = getelementptr inbounds double, ptr %13239, i64 %13244
  %13246 = load double, ptr %13245, align 8, !tbaa !11
  %13247 = call double @llvm.fmuladd.f64(double 0x3FA87D764354855F, double %13246, double %13238)
  %13248 = load ptr, ptr %7, align 8, !tbaa !9
  %13249 = load i32, ptr %12, align 4, !tbaa !5
  %13250 = load i32, ptr %8, align 4, !tbaa !5
  %13251 = mul nsw i32 4, %13250
  %13252 = add nsw i32 %13249, %13251
  %13253 = sext i32 %13252 to i64
  %13254 = getelementptr inbounds double, ptr %13248, i64 %13253
  %13255 = load double, ptr %13254, align 8, !tbaa !11
  %13256 = call double @llvm.fmuladd.f64(double 0x3FC27B05E24EC5F8, double %13255, double %13247)
  %13257 = load ptr, ptr %7, align 8, !tbaa !9
  %13258 = load i32, ptr %12, align 4, !tbaa !5
  %13259 = load i32, ptr %8, align 4, !tbaa !5
  %13260 = mul nsw i32 5, %13259
  %13261 = add nsw i32 %13258, %13260
  %13262 = sext i32 %13261 to i64
  %13263 = getelementptr inbounds double, ptr %13257, i64 %13262
  %13264 = load double, ptr %13263, align 8, !tbaa !11
  %13265 = call double @llvm.fmuladd.f64(double 0x3FF670C5F1F4C92E, double %13264, double %13256)
  %13266 = load ptr, ptr %7, align 8, !tbaa !9
  %13267 = load i32, ptr %12, align 4, !tbaa !5
  %13268 = load i32, ptr %8, align 4, !tbaa !5
  %13269 = mul nsw i32 6, %13268
  %13270 = add nsw i32 %13267, %13269
  %13271 = sext i32 %13270 to i64
  %13272 = getelementptr inbounds double, ptr %13266, i64 %13271
  %13273 = load double, ptr %13272, align 8, !tbaa !11
  %13274 = call double @llvm.fmuladd.f64(double 0xBFD41C0D131D4295, double %13273, double %13265)
  %13275 = load ptr, ptr %7, align 8, !tbaa !9
  %13276 = load i32, ptr %12, align 4, !tbaa !5
  %13277 = load i32, ptr %8, align 4, !tbaa !5
  %13278 = mul nsw i32 7, %13277
  %13279 = add nsw i32 %13276, %13278
  %13280 = sext i32 %13279 to i64
  %13281 = getelementptr inbounds double, ptr %13275, i64 %13280
  %13282 = load double, ptr %13281, align 8, !tbaa !11
  %13283 = call double @llvm.fmuladd.f64(double 0x3FD35DAE88CBA64D, double %13282, double %13274)
  %13284 = load ptr, ptr %7, align 8, !tbaa !9
  %13285 = load i32, ptr %12, align 4, !tbaa !5
  %13286 = load i32, ptr %8, align 4, !tbaa !5
  %13287 = mul nsw i32 8, %13286
  %13288 = add nsw i32 %13285, %13287
  %13289 = sext i32 %13288 to i64
  %13290 = getelementptr inbounds double, ptr %13284, i64 %13289
  %13291 = load double, ptr %13290, align 8, !tbaa !11
  %13292 = call double @llvm.fmuladd.f64(double 0x3FC36A9134CD3C5F, double %13291, double %13283)
  %13293 = load ptr, ptr %7, align 8, !tbaa !9
  %13294 = load i32, ptr %12, align 4, !tbaa !5
  %13295 = load i32, ptr %8, align 4, !tbaa !5
  %13296 = mul nsw i32 9, %13295
  %13297 = add nsw i32 %13294, %13296
  %13298 = sext i32 %13297 to i64
  %13299 = getelementptr inbounds double, ptr %13293, i64 %13298
  %13300 = load double, ptr %13299, align 8, !tbaa !11
  %13301 = call double @llvm.fmuladd.f64(double 0x3F9854E0ADA34BA1, double %13300, double %13292)
  %13302 = load ptr, ptr %7, align 8, !tbaa !9
  %13303 = load i32, ptr %12, align 4, !tbaa !5
  %13304 = load i32, ptr %8, align 4, !tbaa !5
  %13305 = mul nsw i32 10, %13304
  %13306 = add nsw i32 %13303, %13305
  %13307 = sext i32 %13306 to i64
  %13308 = getelementptr inbounds double, ptr %13302, i64 %13307
  %13309 = load double, ptr %13308, align 8, !tbaa !11
  %13310 = call double @llvm.fmuladd.f64(double 0xBC9DFFFFFFFFFFFE, double %13309, double %13301)
  %13311 = load ptr, ptr %7, align 8, !tbaa !9
  %13312 = load i32, ptr %12, align 4, !tbaa !5
  %13313 = load i32, ptr %8, align 4, !tbaa !5
  %13314 = mul nsw i32 12, %13313
  %13315 = add nsw i32 %13312, %13314
  %13316 = sext i32 %13315 to i64
  %13317 = getelementptr inbounds double, ptr %13311, i64 %13316
  %13318 = load double, ptr %13317, align 8, !tbaa !11
  %13319 = call double @llvm.fmuladd.f64(double 0x3C7B000000000001, double %13318, double %13310)
  %13320 = load ptr, ptr %7, align 8, !tbaa !9
  %13321 = load i32, ptr %12, align 4, !tbaa !5
  %13322 = load i32, ptr %8, align 4, !tbaa !5
  %13323 = mul nsw i32 13, %13322
  %13324 = add nsw i32 %13321, %13323
  %13325 = sext i32 %13324 to i64
  %13326 = getelementptr inbounds double, ptr %13320, i64 %13325
  %13327 = load double, ptr %13326, align 8, !tbaa !11
  %13328 = call double @llvm.fmuladd.f64(double 0xBC89000000000000, double %13327, double %13319)
  %13329 = load ptr, ptr %7, align 8, !tbaa !9
  %13330 = load i32, ptr %12, align 4, !tbaa !5
  %13331 = load i32, ptr %8, align 4, !tbaa !5
  %13332 = mul nsw i32 14, %13331
  %13333 = add nsw i32 %13330, %13332
  %13334 = sext i32 %13333 to i64
  %13335 = getelementptr inbounds double, ptr %13329, i64 %13334
  %13336 = load double, ptr %13335, align 8, !tbaa !11
  %13337 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %13336, double %13328)
  %13338 = load ptr, ptr %7, align 8, !tbaa !9
  %13339 = load i32, ptr %12, align 4, !tbaa !5
  %13340 = load i32, ptr %8, align 4, !tbaa !5
  %13341 = mul nsw i32 15, %13340
  %13342 = add nsw i32 %13339, %13341
  %13343 = sext i32 %13342 to i64
  %13344 = getelementptr inbounds double, ptr %13338, i64 %13343
  %13345 = load double, ptr %13344, align 8, !tbaa !11
  %13346 = call double @llvm.fmuladd.f64(double 0x3CA67FFFFFFFFFFE, double %13345, double %13337)
  %13347 = load ptr, ptr %7, align 8, !tbaa !9
  %13348 = load i32, ptr %12, align 4, !tbaa !5
  %13349 = load i32, ptr %8, align 4, !tbaa !5
  %13350 = mul nsw i32 16, %13349
  %13351 = add nsw i32 %13348, %13350
  %13352 = sext i32 %13351 to i64
  %13353 = getelementptr inbounds double, ptr %13347, i64 %13352
  %13354 = load double, ptr %13353, align 8, !tbaa !11
  %13355 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %13354, double %13346)
  %13356 = load ptr, ptr %7, align 8, !tbaa !9
  %13357 = load i32, ptr %12, align 4, !tbaa !5
  %13358 = load i32, ptr %8, align 4, !tbaa !5
  %13359 = mul nsw i32 17, %13358
  %13360 = add nsw i32 %13357, %13359
  %13361 = sext i32 %13360 to i64
  %13362 = getelementptr inbounds double, ptr %13356, i64 %13361
  %13363 = load double, ptr %13362, align 8, !tbaa !11
  %13364 = call double @llvm.fmuladd.f64(double 0xBCA33FFFFFFFFFFE, double %13363, double %13355)
  %13365 = load ptr, ptr %7, align 8, !tbaa !9
  %13366 = load i32, ptr %12, align 4, !tbaa !5
  %13367 = load i32, ptr %8, align 4, !tbaa !5
  %13368 = mul nsw i32 18, %13367
  %13369 = add nsw i32 %13366, %13368
  %13370 = sext i32 %13369 to i64
  %13371 = getelementptr inbounds double, ptr %13365, i64 %13370
  %13372 = load double, ptr %13371, align 8, !tbaa !11
  %13373 = call double @llvm.fmuladd.f64(double 0x3C8E000000000000, double %13372, double %13364)
  %13374 = load ptr, ptr %7, align 8, !tbaa !9
  %13375 = load i32, ptr %12, align 4, !tbaa !5
  %13376 = load i32, ptr %8, align 4, !tbaa !5
  %13377 = mul nsw i32 19, %13376
  %13378 = add nsw i32 %13375, %13377
  %13379 = sext i32 %13378 to i64
  %13380 = getelementptr inbounds double, ptr %13374, i64 %13379
  %13381 = load double, ptr %13380, align 8, !tbaa !11
  %13382 = call double @llvm.fmuladd.f64(double 0x3C78000000000002, double %13381, double %13373)
  %13383 = load ptr, ptr %7, align 8, !tbaa !9
  %13384 = load i32, ptr %12, align 4, !tbaa !5
  %13385 = load i32, ptr %8, align 4, !tbaa !5
  %13386 = mul nsw i32 20, %13385
  %13387 = add nsw i32 %13384, %13386
  %13388 = sext i32 %13387 to i64
  %13389 = getelementptr inbounds double, ptr %13383, i64 %13388
  %13390 = load double, ptr %13389, align 8, !tbaa !11
  %13391 = call double @llvm.fmuladd.f64(double 0x3C8C000000000000, double %13390, double %13382)
  %13392 = load ptr, ptr %7, align 8, !tbaa !9
  %13393 = load i32, ptr %12, align 4, !tbaa !5
  %13394 = load i32, ptr %8, align 4, !tbaa !5
  %13395 = mul nsw i32 21, %13394
  %13396 = add nsw i32 %13393, %13395
  %13397 = sext i32 %13396 to i64
  %13398 = getelementptr inbounds double, ptr %13392, i64 %13397
  %13399 = load double, ptr %13398, align 8, !tbaa !11
  %13400 = call double @llvm.fmuladd.f64(double 0x3C92000000000000, double %13399, double %13391)
  %13401 = load ptr, ptr %7, align 8, !tbaa !9
  %13402 = load i32, ptr %12, align 4, !tbaa !5
  %13403 = load i32, ptr %8, align 4, !tbaa !5
  %13404 = mul nsw i32 22, %13403
  %13405 = add nsw i32 %13402, %13404
  %13406 = sext i32 %13405 to i64
  %13407 = getelementptr inbounds double, ptr %13401, i64 %13406
  %13408 = load double, ptr %13407, align 8, !tbaa !11
  %13409 = call double @llvm.fmuladd.f64(double 0x3C8F000000000000, double %13408, double %13400)
  %13410 = load ptr, ptr %7, align 8, !tbaa !9
  %13411 = load i32, ptr %12, align 4, !tbaa !5
  %13412 = load i32, ptr %8, align 4, !tbaa !5
  %13413 = mul nsw i32 23, %13412
  %13414 = add nsw i32 %13411, %13413
  %13415 = sext i32 %13414 to i64
  %13416 = getelementptr inbounds double, ptr %13410, i64 %13415
  %13417 = load double, ptr %13416, align 8, !tbaa !11
  %13418 = call double @llvm.fmuladd.f64(double 0xBCA61FFFFFFFFFFF, double %13417, double %13409)
  %13419 = load ptr, ptr %7, align 8, !tbaa !9
  %13420 = load i32, ptr %12, align 4, !tbaa !5
  %13421 = load i32, ptr %8, align 4, !tbaa !5
  %13422 = mul nsw i32 24, %13421
  %13423 = add nsw i32 %13420, %13422
  %13424 = sext i32 %13423 to i64
  %13425 = getelementptr inbounds double, ptr %13419, i64 %13424
  %13426 = load double, ptr %13425, align 8, !tbaa !11
  %13427 = call double @llvm.fmuladd.f64(double 0x3C94000000000000, double %13426, double %13418)
  %13428 = load ptr, ptr %7, align 8, !tbaa !9
  %13429 = load i32, ptr %12, align 4, !tbaa !5
  %13430 = load i32, ptr %8, align 4, !tbaa !5
  %13431 = mul nsw i32 25, %13430
  %13432 = add nsw i32 %13429, %13431
  %13433 = sext i32 %13432 to i64
  %13434 = getelementptr inbounds double, ptr %13428, i64 %13433
  %13435 = load double, ptr %13434, align 8, !tbaa !11
  %13436 = call double @llvm.fmuladd.f64(double 0xBC99000000000000, double %13435, double %13427)
  %13437 = load ptr, ptr %7, align 8, !tbaa !9
  %13438 = load i32, ptr %12, align 4, !tbaa !5
  %13439 = load i32, ptr %8, align 4, !tbaa !5
  %13440 = mul nsw i32 26, %13439
  %13441 = add nsw i32 %13438, %13440
  %13442 = sext i32 %13441 to i64
  %13443 = getelementptr inbounds double, ptr %13437, i64 %13442
  %13444 = load double, ptr %13443, align 8, !tbaa !11
  %13445 = call double @llvm.fmuladd.f64(double 0xBC9F7FFFFFFFFFFC, double %13444, double %13436)
  %13446 = load ptr, ptr %7, align 8, !tbaa !9
  %13447 = load i32, ptr %12, align 4, !tbaa !5
  %13448 = load i32, ptr %8, align 4, !tbaa !5
  %13449 = mul nsw i32 27, %13448
  %13450 = add nsw i32 %13447, %13449
  %13451 = sext i32 %13450 to i64
  %13452 = getelementptr inbounds double, ptr %13446, i64 %13451
  %13453 = load double, ptr %13452, align 8, !tbaa !11
  %13454 = call double @llvm.fmuladd.f64(double 0xBC8D800000000000, double %13453, double %13445)
  %13455 = load ptr, ptr %7, align 8, !tbaa !9
  %13456 = load i32, ptr %12, align 4, !tbaa !5
  %13457 = load i32, ptr %8, align 4, !tbaa !5
  %13458 = mul nsw i32 28, %13457
  %13459 = add nsw i32 %13456, %13458
  %13460 = sext i32 %13459 to i64
  %13461 = getelementptr inbounds double, ptr %13455, i64 %13460
  %13462 = load double, ptr %13461, align 8, !tbaa !11
  %13463 = call double @llvm.fmuladd.f64(double 0xBC9C000000000000, double %13462, double %13454)
  %13464 = load ptr, ptr %7, align 8, !tbaa !9
  %13465 = load i32, ptr %12, align 4, !tbaa !5
  %13466 = load i32, ptr %8, align 4, !tbaa !5
  %13467 = mul nsw i32 29, %13466
  %13468 = add nsw i32 %13465, %13467
  %13469 = sext i32 %13468 to i64
  %13470 = getelementptr inbounds double, ptr %13464, i64 %13469
  %13471 = load double, ptr %13470, align 8, !tbaa !11
  %13472 = call double @llvm.fmuladd.f64(double 0x3C78000000000002, double %13471, double %13463)
  %13473 = load ptr, ptr %7, align 8, !tbaa !9
  %13474 = load i32, ptr %12, align 4, !tbaa !5
  %13475 = load i32, ptr %8, align 4, !tbaa !5
  %13476 = mul nsw i32 30, %13475
  %13477 = add nsw i32 %13474, %13476
  %13478 = sext i32 %13477 to i64
  %13479 = getelementptr inbounds double, ptr %13473, i64 %13478
  %13480 = load double, ptr %13479, align 8, !tbaa !11
  %13481 = call double @llvm.fmuladd.f64(double 0x3C85000000000000, double %13480, double %13472)
  %13482 = load ptr, ptr %7, align 8, !tbaa !9
  %13483 = load i32, ptr %12, align 4, !tbaa !5
  %13484 = load i32, ptr %8, align 4, !tbaa !5
  %13485 = mul nsw i32 31, %13484
  %13486 = add nsw i32 %13483, %13485
  %13487 = sext i32 %13486 to i64
  %13488 = getelementptr inbounds double, ptr %13482, i64 %13487
  %13489 = load double, ptr %13488, align 8, !tbaa !11
  %13490 = call double @llvm.fmuladd.f64(double 0xBC91000000000000, double %13489, double %13481)
  %13491 = load ptr, ptr %7, align 8, !tbaa !9
  %13492 = load i32, ptr %12, align 4, !tbaa !5
  %13493 = load i32, ptr %8, align 4, !tbaa !5
  %13494 = mul nsw i32 32, %13493
  %13495 = add nsw i32 %13492, %13494
  %13496 = sext i32 %13495 to i64
  %13497 = getelementptr inbounds double, ptr %13491, i64 %13496
  %13498 = load double, ptr %13497, align 8, !tbaa !11
  %13499 = call double @llvm.fmuladd.f64(double 0xBC96E00000000000, double %13498, double %13490)
  %13500 = load ptr, ptr %7, align 8, !tbaa !9
  %13501 = load i32, ptr %12, align 4, !tbaa !5
  %13502 = load i32, ptr %8, align 4, !tbaa !5
  %13503 = mul nsw i32 33, %13502
  %13504 = add nsw i32 %13501, %13503
  %13505 = sext i32 %13504 to i64
  %13506 = getelementptr inbounds double, ptr %13500, i64 %13505
  %13507 = load double, ptr %13506, align 8, !tbaa !11
  %13508 = call double @llvm.fmuladd.f64(double 0xBC6EFFFFFFFFFFFD, double %13507, double %13499)
  %13509 = load ptr, ptr %7, align 8, !tbaa !9
  %13510 = load i32, ptr %12, align 4, !tbaa !5
  %13511 = load i32, ptr %8, align 4, !tbaa !5
  %13512 = mul nsw i32 34, %13511
  %13513 = add nsw i32 %13510, %13512
  %13514 = sext i32 %13513 to i64
  %13515 = getelementptr inbounds double, ptr %13509, i64 %13514
  %13516 = load double, ptr %13515, align 8, !tbaa !11
  %13517 = call double @llvm.fmuladd.f64(double 0x3C93800000000000, double %13516, double %13508)
  %13518 = load ptr, ptr %7, align 8, !tbaa !9
  %13519 = load i32, ptr %12, align 4, !tbaa !5
  %13520 = load i32, ptr %8, align 4, !tbaa !5
  %13521 = mul nsw i32 35, %13520
  %13522 = add nsw i32 %13519, %13521
  %13523 = sext i32 %13522 to i64
  %13524 = getelementptr inbounds double, ptr %13518, i64 %13523
  %13525 = load double, ptr %13524, align 8, !tbaa !11
  %13526 = call double @llvm.fmuladd.f64(double 0xBC8F000000000000, double %13525, double %13517)
  %13527 = load ptr, ptr %7, align 8, !tbaa !9
  %13528 = load i32, ptr %12, align 4, !tbaa !5
  %13529 = load i32, ptr %8, align 4, !tbaa !5
  %13530 = mul nsw i32 36, %13529
  %13531 = add nsw i32 %13528, %13530
  %13532 = sext i32 %13531 to i64
  %13533 = getelementptr inbounds double, ptr %13527, i64 %13532
  %13534 = load double, ptr %13533, align 8, !tbaa !11
  %13535 = call double @llvm.fmuladd.f64(double 0x3C7F000000000000, double %13534, double %13526)
  %13536 = load ptr, ptr %7, align 8, !tbaa !9
  %13537 = load i32, ptr %12, align 4, !tbaa !5
  %13538 = load i32, ptr %8, align 4, !tbaa !5
  %13539 = mul nsw i32 37, %13538
  %13540 = add nsw i32 %13537, %13539
  %13541 = sext i32 %13540 to i64
  %13542 = getelementptr inbounds double, ptr %13536, i64 %13541
  %13543 = load double, ptr %13542, align 8, !tbaa !11
  %13544 = call double @llvm.fmuladd.f64(double 0x3C66000000000000, double %13543, double %13535)
  %13545 = load ptr, ptr %7, align 8, !tbaa !9
  %13546 = load i32, ptr %12, align 4, !tbaa !5
  %13547 = load i32, ptr %8, align 4, !tbaa !5
  %13548 = mul nsw i32 38, %13547
  %13549 = add nsw i32 %13546, %13548
  %13550 = sext i32 %13549 to i64
  %13551 = getelementptr inbounds double, ptr %13545, i64 %13550
  %13552 = load double, ptr %13551, align 8, !tbaa !11
  %13553 = call double @llvm.fmuladd.f64(double 0x3C89FFFFFFFFFFFF, double %13552, double %13544)
  %13554 = load ptr, ptr %7, align 8, !tbaa !9
  %13555 = load i32, ptr %12, align 4, !tbaa !5
  %13556 = load i32, ptr %8, align 4, !tbaa !5
  %13557 = mul nsw i32 39, %13556
  %13558 = add nsw i32 %13555, %13557
  %13559 = sext i32 %13558 to i64
  %13560 = getelementptr inbounds double, ptr %13554, i64 %13559
  %13561 = load double, ptr %13560, align 8, !tbaa !11
  %13562 = call double @llvm.fmuladd.f64(double 0x3C8B000000000000, double %13561, double %13553)
  store double %13562, ptr %11, align 8, !tbaa !11
  %13563 = load double, ptr %11, align 8, !tbaa !11
  %13564 = load ptr, ptr %9, align 8, !tbaa !9
  %13565 = load i32, ptr %12, align 4, !tbaa !5
  %13566 = load i32, ptr %10, align 4, !tbaa !5
  %13567 = mul nsw i32 37, %13566
  %13568 = add nsw i32 %13565, %13567
  %13569 = sext i32 %13568 to i64
  %13570 = getelementptr inbounds double, ptr %13564, i64 %13569
  store double %13563, ptr %13570, align 8, !tbaa !11
  %13571 = load ptr, ptr %7, align 8, !tbaa !9
  %13572 = load i32, ptr %12, align 4, !tbaa !5
  %13573 = load i32, ptr %8, align 4, !tbaa !5
  %13574 = mul nsw i32 0, %13573
  %13575 = add nsw i32 %13572, %13574
  %13576 = sext i32 %13575 to i64
  %13577 = getelementptr inbounds double, ptr %13571, i64 %13576
  %13578 = load double, ptr %13577, align 8, !tbaa !11
  %13579 = load ptr, ptr %7, align 8, !tbaa !9
  %13580 = load i32, ptr %12, align 4, !tbaa !5
  %13581 = load i32, ptr %8, align 4, !tbaa !5
  %13582 = mul nsw i32 1, %13581
  %13583 = add nsw i32 %13580, %13582
  %13584 = sext i32 %13583 to i64
  %13585 = getelementptr inbounds double, ptr %13579, i64 %13584
  %13586 = load double, ptr %13585, align 8, !tbaa !11
  %13587 = fmul double 0x3FA87D7643548500, %13586
  %13588 = call double @llvm.fmuladd.f64(double 0xBFE333710B32A297, double %13578, double %13587)
  %13589 = load ptr, ptr %7, align 8, !tbaa !9
  %13590 = load i32, ptr %12, align 4, !tbaa !5
  %13591 = load i32, ptr %8, align 4, !tbaa !5
  %13592 = mul nsw i32 2, %13591
  %13593 = add nsw i32 %13590, %13592
  %13594 = sext i32 %13593 to i64
  %13595 = getelementptr inbounds double, ptr %13589, i64 %13594
  %13596 = load double, ptr %13595, align 8, !tbaa !11
  %13597 = call double @llvm.fmuladd.f64(double 0xBFBEED13A9F0D910, double %13596, double %13588)
  %13598 = load ptr, ptr %7, align 8, !tbaa !9
  %13599 = load i32, ptr %12, align 4, !tbaa !5
  %13600 = load i32, ptr %8, align 4, !tbaa !5
  %13601 = mul nsw i32 3, %13600
  %13602 = add nsw i32 %13599, %13601
  %13603 = sext i32 %13602 to i64
  %13604 = getelementptr inbounds double, ptr %13598, i64 %13603
  %13605 = load double, ptr %13604, align 8, !tbaa !11
  %13606 = call double @llvm.fmuladd.f64(double 0xBFA352D4DB969BEA, double %13605, double %13597)
  %13607 = load ptr, ptr %7, align 8, !tbaa !9
  %13608 = load i32, ptr %12, align 4, !tbaa !5
  %13609 = load i32, ptr %8, align 4, !tbaa !5
  %13610 = mul nsw i32 4, %13609
  %13611 = add nsw i32 %13608, %13610
  %13612 = sext i32 %13611 to i64
  %13613 = getelementptr inbounds double, ptr %13607, i64 %13612
  %13614 = load double, ptr %13613, align 8, !tbaa !11
  %13615 = call double @llvm.fmuladd.f64(double 0x3FD35DAE88CBA641, double %13614, double %13606)
  %13616 = load ptr, ptr %7, align 8, !tbaa !9
  %13617 = load i32, ptr %12, align 4, !tbaa !5
  %13618 = load i32, ptr %8, align 4, !tbaa !5
  %13619 = mul nsw i32 5, %13618
  %13620 = add nsw i32 %13617, %13619
  %13621 = sext i32 %13620 to i64
  %13622 = getelementptr inbounds double, ptr %13616, i64 %13621
  %13623 = load double, ptr %13622, align 8, !tbaa !11
  %13624 = call double @llvm.fmuladd.f64(double 0x3FC36A9134CD3C54, double %13623, double %13615)
  %13625 = load ptr, ptr %7, align 8, !tbaa !9
  %13626 = load i32, ptr %12, align 4, !tbaa !5
  %13627 = load i32, ptr %8, align 4, !tbaa !5
  %13628 = mul nsw i32 6, %13627
  %13629 = add nsw i32 %13626, %13628
  %13630 = sext i32 %13629 to i64
  %13631 = getelementptr inbounds double, ptr %13625, i64 %13630
  %13632 = load double, ptr %13631, align 8, !tbaa !11
  %13633 = call double @llvm.fmuladd.f64(double 0x3F9854E0ADA34AF1, double %13632, double %13624)
  %13634 = load ptr, ptr %7, align 8, !tbaa !9
  %13635 = load i32, ptr %12, align 4, !tbaa !5
  %13636 = load i32, ptr %8, align 4, !tbaa !5
  %13637 = mul nsw i32 7, %13636
  %13638 = add nsw i32 %13635, %13637
  %13639 = sext i32 %13638 to i64
  %13640 = getelementptr inbounds double, ptr %13634, i64 %13639
  %13641 = load double, ptr %13640, align 8, !tbaa !11
  %13642 = call double @llvm.fmuladd.f64(double 0x3FC27B05E24EC602, double %13641, double %13633)
  %13643 = load ptr, ptr %7, align 8, !tbaa !9
  %13644 = load i32, ptr %12, align 4, !tbaa !5
  %13645 = load i32, ptr %8, align 4, !tbaa !5
  %13646 = mul nsw i32 8, %13645
  %13647 = add nsw i32 %13644, %13646
  %13648 = sext i32 %13647 to i64
  %13649 = getelementptr inbounds double, ptr %13643, i64 %13648
  %13650 = load double, ptr %13649, align 8, !tbaa !11
  %13651 = call double @llvm.fmuladd.f64(double 0x3FF670C5F1F4C92E, double %13650, double %13642)
  %13652 = load ptr, ptr %7, align 8, !tbaa !9
  %13653 = load i32, ptr %12, align 4, !tbaa !5
  %13654 = load i32, ptr %8, align 4, !tbaa !5
  %13655 = mul nsw i32 9, %13654
  %13656 = add nsw i32 %13653, %13655
  %13657 = sext i32 %13656 to i64
  %13658 = getelementptr inbounds double, ptr %13652, i64 %13657
  %13659 = load double, ptr %13658, align 8, !tbaa !11
  %13660 = call double @llvm.fmuladd.f64(double 0xBFD41C0D131D4288, double %13659, double %13651)
  %13661 = load ptr, ptr %7, align 8, !tbaa !9
  %13662 = load i32, ptr %12, align 4, !tbaa !5
  %13663 = load i32, ptr %8, align 4, !tbaa !5
  %13664 = mul nsw i32 10, %13663
  %13665 = add nsw i32 %13662, %13664
  %13666 = sext i32 %13665 to i64
  %13667 = getelementptr inbounds double, ptr %13661, i64 %13666
  %13668 = load double, ptr %13667, align 8, !tbaa !11
  %13669 = call double @llvm.fmuladd.f64(double 0xBCAB000000000001, double %13668, double %13660)
  %13670 = load ptr, ptr %7, align 8, !tbaa !9
  %13671 = load i32, ptr %12, align 4, !tbaa !5
  %13672 = load i32, ptr %8, align 4, !tbaa !5
  %13673 = mul nsw i32 11, %13672
  %13674 = add nsw i32 %13671, %13673
  %13675 = sext i32 %13674 to i64
  %13676 = getelementptr inbounds double, ptr %13670, i64 %13675
  %13677 = load double, ptr %13676, align 8, !tbaa !11
  %13678 = call double @llvm.fmuladd.f64(double 0x3C92000000000000, double %13677, double %13669)
  %13679 = load ptr, ptr %7, align 8, !tbaa !9
  %13680 = load i32, ptr %12, align 4, !tbaa !5
  %13681 = load i32, ptr %8, align 4, !tbaa !5
  %13682 = mul nsw i32 12, %13681
  %13683 = add nsw i32 %13680, %13682
  %13684 = sext i32 %13683 to i64
  %13685 = getelementptr inbounds double, ptr %13679, i64 %13684
  %13686 = load double, ptr %13685, align 8, !tbaa !11
  %13687 = call double @llvm.fmuladd.f64(double 0xBC96800000000000, double %13686, double %13678)
  %13688 = load ptr, ptr %7, align 8, !tbaa !9
  %13689 = load i32, ptr %12, align 4, !tbaa !5
  %13690 = load i32, ptr %8, align 4, !tbaa !5
  %13691 = mul nsw i32 13, %13690
  %13692 = add nsw i32 %13689, %13691
  %13693 = sext i32 %13692 to i64
  %13694 = getelementptr inbounds double, ptr %13688, i64 %13693
  %13695 = load double, ptr %13694, align 8, !tbaa !11
  %13696 = call double @llvm.fmuladd.f64(double 0xBC9CFFFFFFFFFFFF, double %13695, double %13687)
  %13697 = load ptr, ptr %7, align 8, !tbaa !9
  %13698 = load i32, ptr %12, align 4, !tbaa !5
  %13699 = load i32, ptr %8, align 4, !tbaa !5
  %13700 = mul nsw i32 14, %13699
  %13701 = add nsw i32 %13698, %13700
  %13702 = sext i32 %13701 to i64
  %13703 = getelementptr inbounds double, ptr %13697, i64 %13702
  %13704 = load double, ptr %13703, align 8, !tbaa !11
  %13705 = call double @llvm.fmuladd.f64(double 0xBCAB000000000001, double %13704, double %13696)
  %13706 = load ptr, ptr %7, align 8, !tbaa !9
  %13707 = load i32, ptr %12, align 4, !tbaa !5
  %13708 = load i32, ptr %8, align 4, !tbaa !5
  %13709 = mul nsw i32 15, %13708
  %13710 = add nsw i32 %13707, %13709
  %13711 = sext i32 %13710 to i64
  %13712 = getelementptr inbounds double, ptr %13706, i64 %13711
  %13713 = load double, ptr %13712, align 8, !tbaa !11
  %13714 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %13713, double %13705)
  %13715 = load ptr, ptr %7, align 8, !tbaa !9
  %13716 = load i32, ptr %12, align 4, !tbaa !5
  %13717 = load i32, ptr %8, align 4, !tbaa !5
  %13718 = mul nsw i32 16, %13717
  %13719 = add nsw i32 %13716, %13718
  %13720 = sext i32 %13719 to i64
  %13721 = getelementptr inbounds double, ptr %13715, i64 %13720
  %13722 = load double, ptr %13721, align 8, !tbaa !11
  %13723 = call double @llvm.fmuladd.f64(double 0x3CA2FFFFFFFFFFFE, double %13722, double %13714)
  %13724 = load ptr, ptr %7, align 8, !tbaa !9
  %13725 = load i32, ptr %12, align 4, !tbaa !5
  %13726 = load i32, ptr %8, align 4, !tbaa !5
  %13727 = mul nsw i32 17, %13726
  %13728 = add nsw i32 %13725, %13727
  %13729 = sext i32 %13728 to i64
  %13730 = getelementptr inbounds double, ptr %13724, i64 %13729
  %13731 = load double, ptr %13730, align 8, !tbaa !11
  %13732 = call double @llvm.fmuladd.f64(double 0xBC9DFFFFFFFFFFFE, double %13731, double %13723)
  %13733 = load ptr, ptr %7, align 8, !tbaa !9
  %13734 = load i32, ptr %12, align 4, !tbaa !5
  %13735 = load i32, ptr %8, align 4, !tbaa !5
  %13736 = mul nsw i32 18, %13735
  %13737 = add nsw i32 %13734, %13736
  %13738 = sext i32 %13737 to i64
  %13739 = getelementptr inbounds double, ptr %13733, i64 %13738
  %13740 = load double, ptr %13739, align 8, !tbaa !11
  %13741 = call double @llvm.fmuladd.f64(double 0x3CB9000000000000, double %13740, double %13732)
  %13742 = load ptr, ptr %7, align 8, !tbaa !9
  %13743 = load i32, ptr %12, align 4, !tbaa !5
  %13744 = load i32, ptr %8, align 4, !tbaa !5
  %13745 = mul nsw i32 19, %13744
  %13746 = add nsw i32 %13743, %13745
  %13747 = sext i32 %13746 to i64
  %13748 = getelementptr inbounds double, ptr %13742, i64 %13747
  %13749 = load double, ptr %13748, align 8, !tbaa !11
  %13750 = call double @llvm.fmuladd.f64(double 0x3CA1000000000001, double %13749, double %13741)
  %13751 = load ptr, ptr %7, align 8, !tbaa !9
  %13752 = load i32, ptr %12, align 4, !tbaa !5
  %13753 = load i32, ptr %8, align 4, !tbaa !5
  %13754 = mul nsw i32 20, %13753
  %13755 = add nsw i32 %13752, %13754
  %13756 = sext i32 %13755 to i64
  %13757 = getelementptr inbounds double, ptr %13751, i64 %13756
  %13758 = load double, ptr %13757, align 8, !tbaa !11
  %13759 = call double @llvm.fmuladd.f64(double 0xBCA9000000000000, double %13758, double %13750)
  %13760 = load ptr, ptr %7, align 8, !tbaa !9
  %13761 = load i32, ptr %12, align 4, !tbaa !5
  %13762 = load i32, ptr %8, align 4, !tbaa !5
  %13763 = mul nsw i32 21, %13762
  %13764 = add nsw i32 %13761, %13763
  %13765 = sext i32 %13764 to i64
  %13766 = getelementptr inbounds double, ptr %13760, i64 %13765
  %13767 = load double, ptr %13766, align 8, !tbaa !11
  %13768 = call double @llvm.fmuladd.f64(double 0x3CA5000000000000, double %13767, double %13759)
  %13769 = load ptr, ptr %7, align 8, !tbaa !9
  %13770 = load i32, ptr %12, align 4, !tbaa !5
  %13771 = load i32, ptr %8, align 4, !tbaa !5
  %13772 = mul nsw i32 22, %13771
  %13773 = add nsw i32 %13770, %13772
  %13774 = sext i32 %13773 to i64
  %13775 = getelementptr inbounds double, ptr %13769, i64 %13774
  %13776 = load double, ptr %13775, align 8, !tbaa !11
  %13777 = call double @llvm.fmuladd.f64(double 0x3CAB800000000001, double %13776, double %13768)
  %13778 = load ptr, ptr %7, align 8, !tbaa !9
  %13779 = load i32, ptr %12, align 4, !tbaa !5
  %13780 = load i32, ptr %8, align 4, !tbaa !5
  %13781 = mul nsw i32 23, %13780
  %13782 = add nsw i32 %13779, %13781
  %13783 = sext i32 %13782 to i64
  %13784 = getelementptr inbounds double, ptr %13778, i64 %13783
  %13785 = load double, ptr %13784, align 8, !tbaa !11
  %13786 = call double @llvm.fmuladd.f64(double 0xBCA9BFFFFFFFFFFF, double %13785, double %13777)
  %13787 = load ptr, ptr %7, align 8, !tbaa !9
  %13788 = load i32, ptr %12, align 4, !tbaa !5
  %13789 = load i32, ptr %8, align 4, !tbaa !5
  %13790 = mul nsw i32 24, %13789
  %13791 = add nsw i32 %13788, %13790
  %13792 = sext i32 %13791 to i64
  %13793 = getelementptr inbounds double, ptr %13787, i64 %13792
  %13794 = load double, ptr %13793, align 8, !tbaa !11
  %13795 = call double @llvm.fmuladd.f64(double 0xBC84000000000000, double %13794, double %13786)
  %13796 = load ptr, ptr %7, align 8, !tbaa !9
  %13797 = load i32, ptr %12, align 4, !tbaa !5
  %13798 = load i32, ptr %8, align 4, !tbaa !5
  %13799 = mul nsw i32 25, %13798
  %13800 = add nsw i32 %13797, %13799
  %13801 = sext i32 %13800 to i64
  %13802 = getelementptr inbounds double, ptr %13796, i64 %13801
  %13803 = load double, ptr %13802, align 8, !tbaa !11
  %13804 = call double @llvm.fmuladd.f64(double 0xBCA4000000000001, double %13803, double %13795)
  %13805 = load ptr, ptr %7, align 8, !tbaa !9
  %13806 = load i32, ptr %12, align 4, !tbaa !5
  %13807 = load i32, ptr %8, align 4, !tbaa !5
  %13808 = mul nsw i32 26, %13807
  %13809 = add nsw i32 %13806, %13808
  %13810 = sext i32 %13809 to i64
  %13811 = getelementptr inbounds double, ptr %13805, i64 %13810
  %13812 = load double, ptr %13811, align 8, !tbaa !11
  %13813 = call double @llvm.fmuladd.f64(double 0xBCA7400000000002, double %13812, double %13804)
  %13814 = load ptr, ptr %7, align 8, !tbaa !9
  %13815 = load i32, ptr %12, align 4, !tbaa !5
  %13816 = load i32, ptr %8, align 4, !tbaa !5
  %13817 = mul nsw i32 27, %13816
  %13818 = add nsw i32 %13815, %13817
  %13819 = sext i32 %13818 to i64
  %13820 = getelementptr inbounds double, ptr %13814, i64 %13819
  %13821 = load double, ptr %13820, align 8, !tbaa !11
  %13822 = call double @llvm.fmuladd.f64(double 0x3CA0000000000002, double %13821, double %13813)
  %13823 = load ptr, ptr %7, align 8, !tbaa !9
  %13824 = load i32, ptr %12, align 4, !tbaa !5
  %13825 = load i32, ptr %8, align 4, !tbaa !5
  %13826 = mul nsw i32 28, %13825
  %13827 = add nsw i32 %13824, %13826
  %13828 = sext i32 %13827 to i64
  %13829 = getelementptr inbounds double, ptr %13823, i64 %13828
  %13830 = load double, ptr %13829, align 8, !tbaa !11
  %13831 = call double @llvm.fmuladd.f64(double 0x3CB5000000000000, double %13830, double %13822)
  %13832 = load ptr, ptr %7, align 8, !tbaa !9
  %13833 = load i32, ptr %12, align 4, !tbaa !5
  %13834 = load i32, ptr %8, align 4, !tbaa !5
  %13835 = mul nsw i32 29, %13834
  %13836 = add nsw i32 %13833, %13835
  %13837 = sext i32 %13836 to i64
  %13838 = getelementptr inbounds double, ptr %13832, i64 %13837
  %13839 = load double, ptr %13838, align 8, !tbaa !11
  %13840 = call double @llvm.fmuladd.f64(double 0x3C9A000000000000, double %13839, double %13831)
  %13841 = load ptr, ptr %7, align 8, !tbaa !9
  %13842 = load i32, ptr %12, align 4, !tbaa !5
  %13843 = load i32, ptr %8, align 4, !tbaa !5
  %13844 = mul nsw i32 30, %13843
  %13845 = add nsw i32 %13842, %13844
  %13846 = sext i32 %13845 to i64
  %13847 = getelementptr inbounds double, ptr %13841, i64 %13846
  %13848 = load double, ptr %13847, align 8, !tbaa !11
  %13849 = call double @llvm.fmuladd.f64(double 0x3CA0000000000002, double %13848, double %13840)
  %13850 = load ptr, ptr %7, align 8, !tbaa !9
  %13851 = load i32, ptr %12, align 4, !tbaa !5
  %13852 = load i32, ptr %8, align 4, !tbaa !5
  %13853 = mul nsw i32 31, %13852
  %13854 = add nsw i32 %13851, %13853
  %13855 = sext i32 %13854 to i64
  %13856 = getelementptr inbounds double, ptr %13850, i64 %13855
  %13857 = load double, ptr %13856, align 8, !tbaa !11
  %13858 = call double @llvm.fmuladd.f64(double 0x3C98000000000000, double %13857, double %13849)
  %13859 = load ptr, ptr %7, align 8, !tbaa !9
  %13860 = load i32, ptr %12, align 4, !tbaa !5
  %13861 = load i32, ptr %8, align 4, !tbaa !5
  %13862 = mul nsw i32 32, %13861
  %13863 = add nsw i32 %13860, %13862
  %13864 = sext i32 %13863 to i64
  %13865 = getelementptr inbounds double, ptr %13859, i64 %13864
  %13866 = load double, ptr %13865, align 8, !tbaa !11
  %13867 = call double @llvm.fmuladd.f64(double 0xBC86800000000000, double %13866, double %13858)
  %13868 = load ptr, ptr %7, align 8, !tbaa !9
  %13869 = load i32, ptr %12, align 4, !tbaa !5
  %13870 = load i32, ptr %8, align 4, !tbaa !5
  %13871 = mul nsw i32 33, %13870
  %13872 = add nsw i32 %13869, %13871
  %13873 = sext i32 %13872 to i64
  %13874 = getelementptr inbounds double, ptr %13868, i64 %13873
  %13875 = load double, ptr %13874, align 8, !tbaa !11
  %13876 = call double @llvm.fmuladd.f64(double 0x3C96200000000000, double %13875, double %13867)
  %13877 = load ptr, ptr %7, align 8, !tbaa !9
  %13878 = load i32, ptr %12, align 4, !tbaa !5
  %13879 = load i32, ptr %8, align 4, !tbaa !5
  %13880 = mul nsw i32 34, %13879
  %13881 = add nsw i32 %13878, %13880
  %13882 = sext i32 %13881 to i64
  %13883 = getelementptr inbounds double, ptr %13877, i64 %13882
  %13884 = load double, ptr %13883, align 8, !tbaa !11
  %13885 = call double @llvm.fmuladd.f64(double 0xBCA33FFFFFFFFFFE, double %13884, double %13876)
  %13886 = load ptr, ptr %7, align 8, !tbaa !9
  %13887 = load i32, ptr %12, align 4, !tbaa !5
  %13888 = load i32, ptr %8, align 4, !tbaa !5
  %13889 = mul nsw i32 35, %13888
  %13890 = add nsw i32 %13887, %13889
  %13891 = sext i32 %13890 to i64
  %13892 = getelementptr inbounds double, ptr %13886, i64 %13891
  %13893 = load double, ptr %13892, align 8, !tbaa !11
  %13894 = call double @llvm.fmuladd.f64(double 0x3C82FFFFFFFFFFFF, double %13893, double %13885)
  %13895 = load ptr, ptr %7, align 8, !tbaa !9
  %13896 = load i32, ptr %12, align 4, !tbaa !5
  %13897 = load i32, ptr %8, align 4, !tbaa !5
  %13898 = mul nsw i32 36, %13897
  %13899 = add nsw i32 %13896, %13898
  %13900 = sext i32 %13899 to i64
  %13901 = getelementptr inbounds double, ptr %13895, i64 %13900
  %13902 = load double, ptr %13901, align 8, !tbaa !11
  %13903 = call double @llvm.fmuladd.f64(double 0x3C9FC00000000004, double %13902, double %13894)
  %13904 = load ptr, ptr %7, align 8, !tbaa !9
  %13905 = load i32, ptr %12, align 4, !tbaa !5
  %13906 = load i32, ptr %8, align 4, !tbaa !5
  %13907 = mul nsw i32 37, %13906
  %13908 = add nsw i32 %13905, %13907
  %13909 = sext i32 %13908 to i64
  %13910 = getelementptr inbounds double, ptr %13904, i64 %13909
  %13911 = load double, ptr %13910, align 8, !tbaa !11
  %13912 = call double @llvm.fmuladd.f64(double 0xBC82800000000000, double %13911, double %13903)
  %13913 = load ptr, ptr %7, align 8, !tbaa !9
  %13914 = load i32, ptr %12, align 4, !tbaa !5
  %13915 = load i32, ptr %8, align 4, !tbaa !5
  %13916 = mul nsw i32 38, %13915
  %13917 = add nsw i32 %13914, %13916
  %13918 = sext i32 %13917 to i64
  %13919 = getelementptr inbounds double, ptr %13913, i64 %13918
  %13920 = load double, ptr %13919, align 8, !tbaa !11
  %13921 = call double @llvm.fmuladd.f64(double 0x3C9A000000000000, double %13920, double %13912)
  %13922 = load ptr, ptr %7, align 8, !tbaa !9
  %13923 = load i32, ptr %12, align 4, !tbaa !5
  %13924 = load i32, ptr %8, align 4, !tbaa !5
  %13925 = mul nsw i32 39, %13924
  %13926 = add nsw i32 %13923, %13925
  %13927 = sext i32 %13926 to i64
  %13928 = getelementptr inbounds double, ptr %13922, i64 %13927
  %13929 = load double, ptr %13928, align 8, !tbaa !11
  %13930 = call double @llvm.fmuladd.f64(double 0x3C91000000000000, double %13929, double %13921)
  store double %13930, ptr %11, align 8, !tbaa !11
  %13931 = load double, ptr %11, align 8, !tbaa !11
  %13932 = load ptr, ptr %9, align 8, !tbaa !9
  %13933 = load i32, ptr %12, align 4, !tbaa !5
  %13934 = load i32, ptr %10, align 4, !tbaa !5
  %13935 = mul nsw i32 38, %13934
  %13936 = add nsw i32 %13933, %13935
  %13937 = sext i32 %13936 to i64
  %13938 = getelementptr inbounds double, ptr %13932, i64 %13937
  store double %13931, ptr %13938, align 8, !tbaa !11
  %13939 = load ptr, ptr %7, align 8, !tbaa !9
  %13940 = load i32, ptr %12, align 4, !tbaa !5
  %13941 = load i32, ptr %8, align 4, !tbaa !5
  %13942 = mul nsw i32 0, %13941
  %13943 = add nsw i32 %13940, %13942
  %13944 = sext i32 %13943 to i64
  %13945 = getelementptr inbounds double, ptr %13939, i64 %13944
  %13946 = load double, ptr %13945, align 8, !tbaa !11
  %13947 = load ptr, ptr %7, align 8, !tbaa !9
  %13948 = load i32, ptr %12, align 4, !tbaa !5
  %13949 = load i32, ptr %8, align 4, !tbaa !5
  %13950 = mul nsw i32 1, %13949
  %13951 = add nsw i32 %13948, %13950
  %13952 = sext i32 %13951 to i64
  %13953 = getelementptr inbounds double, ptr %13947, i64 %13952
  %13954 = load double, ptr %13953, align 8, !tbaa !11
  %13955 = fmul double 0x3FF4EC1BB3FDC612, %13954
  %13956 = call double @llvm.fmuladd.f64(double 0xBF83152016E0EAA8, double %13946, double %13955)
  %13957 = load ptr, ptr %7, align 8, !tbaa !9
  %13958 = load i32, ptr %12, align 4, !tbaa !5
  %13959 = load i32, ptr %8, align 4, !tbaa !5
  %13960 = mul nsw i32 2, %13959
  %13961 = add nsw i32 %13958, %13960
  %13962 = sext i32 %13961 to i64
  %13963 = getelementptr inbounds double, ptr %13957, i64 %13962
  %13964 = load double, ptr %13963, align 8, !tbaa !11
  %13965 = call double @llvm.fmuladd.f64(double 0xBFB5B58B4F03B19F, double %13964, double %13956)
  %13966 = load ptr, ptr %7, align 8, !tbaa !9
  %13967 = load i32, ptr %12, align 4, !tbaa !5
  %13968 = load i32, ptr %8, align 4, !tbaa !5
  %13969 = mul nsw i32 3, %13968
  %13970 = add nsw i32 %13967, %13969
  %13971 = sext i32 %13970 to i64
  %13972 = getelementptr inbounds double, ptr %13966, i64 %13971
  %13973 = load double, ptr %13972, align 8, !tbaa !11
  %13974 = call double @llvm.fmuladd.f64(double 0x3F938CE4890DB2C2, double %13973, double %13965)
  %13975 = load ptr, ptr %7, align 8, !tbaa !9
  %13976 = load i32, ptr %12, align 4, !tbaa !5
  %13977 = load i32, ptr %8, align 4, !tbaa !5
  %13978 = mul nsw i32 4, %13977
  %13979 = add nsw i32 %13976, %13978
  %13980 = sext i32 %13979 to i64
  %13981 = getelementptr inbounds double, ptr %13975, i64 %13980
  %13982 = load double, ptr %13981, align 8, !tbaa !11
  %13983 = call double @llvm.fmuladd.f64(double 0x3FD417DEBFC17B11, double %13982, double %13974)
  %13984 = load ptr, ptr %7, align 8, !tbaa !9
  %13985 = load i32, ptr %12, align 4, !tbaa !5
  %13986 = load i32, ptr %8, align 4, !tbaa !5
  %13987 = mul nsw i32 5, %13986
  %13988 = add nsw i32 %13985, %13987
  %13989 = sext i32 %13988 to i64
  %13990 = getelementptr inbounds double, ptr %13984, i64 %13989
  %13991 = load double, ptr %13990, align 8, !tbaa !11
  %13992 = call double @llvm.fmuladd.f64(double 0xBFB49217631F5929, double %13991, double %13983)
  %13993 = load ptr, ptr %7, align 8, !tbaa !9
  %13994 = load i32, ptr %12, align 4, !tbaa !5
  %13995 = load i32, ptr %8, align 4, !tbaa !5
  %13996 = mul nsw i32 6, %13995
  %13997 = add nsw i32 %13994, %13996
  %13998 = sext i32 %13997 to i64
  %13999 = getelementptr inbounds double, ptr %13993, i64 %13998
  %14000 = load double, ptr %13999, align 8, !tbaa !11
  %14001 = call double @llvm.fmuladd.f64(double 0x3F85E50BB681A350, double %14000, double %13992)
  %14002 = load ptr, ptr %7, align 8, !tbaa !9
  %14003 = load i32, ptr %12, align 4, !tbaa !5
  %14004 = load i32, ptr %8, align 4, !tbaa !5
  %14005 = mul nsw i32 7, %14004
  %14006 = add nsw i32 %14003, %14005
  %14007 = sext i32 %14006 to i64
  %14008 = getelementptr inbounds double, ptr %14002, i64 %14007
  %14009 = load double, ptr %14008, align 8, !tbaa !11
  %14010 = call double @llvm.fmuladd.f64(double 0xBF8BDAF699AECF48, double %14009, double %14001)
  %14011 = load ptr, ptr %7, align 8, !tbaa !9
  %14012 = load i32, ptr %12, align 4, !tbaa !5
  %14013 = load i32, ptr %8, align 4, !tbaa !5
  %14014 = mul nsw i32 8, %14013
  %14015 = add nsw i32 %14012, %14014
  %14016 = sext i32 %14015 to i64
  %14017 = getelementptr inbounds double, ptr %14011, i64 %14016
  %14018 = load double, ptr %14017, align 8, !tbaa !11
  %14019 = call double @llvm.fmuladd.f64(double 0x3FCA50C41AB7A310, double %14018, double %14010)
  %14020 = load ptr, ptr %7, align 8, !tbaa !9
  %14021 = load i32, ptr %12, align 4, !tbaa !5
  %14022 = load i32, ptr %8, align 4, !tbaa !5
  %14023 = mul nsw i32 9, %14022
  %14024 = add nsw i32 %14021, %14023
  %14025 = sext i32 %14024 to i64
  %14026 = getelementptr inbounds double, ptr %14020, i64 %14025
  %14027 = load double, ptr %14026, align 8, !tbaa !11
  %14028 = call double @llvm.fmuladd.f64(double 0xBFE5679E70A60656, double %14027, double %14019)
  %14029 = load ptr, ptr %7, align 8, !tbaa !9
  %14030 = load i32, ptr %12, align 4, !tbaa !5
  %14031 = load i32, ptr %8, align 4, !tbaa !5
  %14032 = mul nsw i32 10, %14031
  %14033 = add nsw i32 %14030, %14032
  %14034 = sext i32 %14033 to i64
  %14035 = getelementptr inbounds double, ptr %14029, i64 %14034
  %14036 = load double, ptr %14035, align 8, !tbaa !11
  %14037 = call double @llvm.fmuladd.f64(double 0xBCB8000000000001, double %14036, double %14028)
  %14038 = load ptr, ptr %7, align 8, !tbaa !9
  %14039 = load i32, ptr %12, align 4, !tbaa !5
  %14040 = load i32, ptr %8, align 4, !tbaa !5
  %14041 = mul nsw i32 11, %14040
  %14042 = add nsw i32 %14039, %14041
  %14043 = sext i32 %14042 to i64
  %14044 = getelementptr inbounds double, ptr %14038, i64 %14043
  %14045 = load double, ptr %14044, align 8, !tbaa !11
  %14046 = call double @llvm.fmuladd.f64(double 0x3CA0000000000002, double %14045, double %14037)
  %14047 = load ptr, ptr %7, align 8, !tbaa !9
  %14048 = load i32, ptr %12, align 4, !tbaa !5
  %14049 = load i32, ptr %8, align 4, !tbaa !5
  %14050 = mul nsw i32 12, %14049
  %14051 = add nsw i32 %14048, %14050
  %14052 = sext i32 %14051 to i64
  %14053 = getelementptr inbounds double, ptr %14047, i64 %14052
  %14054 = load double, ptr %14053, align 8, !tbaa !11
  %14055 = call double @llvm.fmuladd.f64(double 0xBC8C000000000000, double %14054, double %14046)
  %14056 = load ptr, ptr %7, align 8, !tbaa !9
  %14057 = load i32, ptr %12, align 4, !tbaa !5
  %14058 = load i32, ptr %8, align 4, !tbaa !5
  %14059 = mul nsw i32 13, %14058
  %14060 = add nsw i32 %14057, %14059
  %14061 = sext i32 %14060 to i64
  %14062 = getelementptr inbounds double, ptr %14056, i64 %14061
  %14063 = load double, ptr %14062, align 8, !tbaa !11
  %14064 = call double @llvm.fmuladd.f64(double 0xBCA4000000000001, double %14063, double %14055)
  %14065 = load ptr, ptr %7, align 8, !tbaa !9
  %14066 = load i32, ptr %12, align 4, !tbaa !5
  %14067 = load i32, ptr %8, align 4, !tbaa !5
  %14068 = mul nsw i32 14, %14067
  %14069 = add nsw i32 %14066, %14068
  %14070 = sext i32 %14069 to i64
  %14071 = getelementptr inbounds double, ptr %14065, i64 %14070
  %14072 = load double, ptr %14071, align 8, !tbaa !11
  %14073 = call double @llvm.fmuladd.f64(double 0xBCAC000000000000, double %14072, double %14064)
  %14074 = load ptr, ptr %7, align 8, !tbaa !9
  %14075 = load i32, ptr %12, align 4, !tbaa !5
  %14076 = load i32, ptr %8, align 4, !tbaa !5
  %14077 = mul nsw i32 15, %14076
  %14078 = add nsw i32 %14075, %14077
  %14079 = sext i32 %14078 to i64
  %14080 = getelementptr inbounds double, ptr %14074, i64 %14079
  %14081 = load double, ptr %14080, align 8, !tbaa !11
  %14082 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %14081, double %14073)
  %14083 = load ptr, ptr %7, align 8, !tbaa !9
  %14084 = load i32, ptr %12, align 4, !tbaa !5
  %14085 = load i32, ptr %8, align 4, !tbaa !5
  %14086 = mul nsw i32 16, %14085
  %14087 = add nsw i32 %14084, %14086
  %14088 = sext i32 %14087 to i64
  %14089 = getelementptr inbounds double, ptr %14083, i64 %14088
  %14090 = load double, ptr %14089, align 8, !tbaa !11
  %14091 = call double @llvm.fmuladd.f64(double 0x3CB2000000000000, double %14090, double %14082)
  %14092 = load ptr, ptr %7, align 8, !tbaa !9
  %14093 = load i32, ptr %12, align 4, !tbaa !5
  %14094 = load i32, ptr %8, align 4, !tbaa !5
  %14095 = mul nsw i32 17, %14094
  %14096 = add nsw i32 %14093, %14095
  %14097 = sext i32 %14096 to i64
  %14098 = getelementptr inbounds double, ptr %14092, i64 %14097
  %14099 = load double, ptr %14098, align 8, !tbaa !11
  %14100 = call double @llvm.fmuladd.f64(double 0xBC8C000000000000, double %14099, double %14091)
  %14101 = load ptr, ptr %7, align 8, !tbaa !9
  %14102 = load i32, ptr %12, align 4, !tbaa !5
  %14103 = load i32, ptr %8, align 4, !tbaa !5
  %14104 = mul nsw i32 19, %14103
  %14105 = add nsw i32 %14102, %14104
  %14106 = sext i32 %14105 to i64
  %14107 = getelementptr inbounds double, ptr %14101, i64 %14106
  %14108 = load double, ptr %14107, align 8, !tbaa !11
  %14109 = call double @llvm.fmuladd.f64(double 0x3C7FFFFFFFFFFFFF, double %14108, double %14100)
  %14110 = load ptr, ptr %7, align 8, !tbaa !9
  %14111 = load i32, ptr %12, align 4, !tbaa !5
  %14112 = load i32, ptr %8, align 4, !tbaa !5
  %14113 = mul nsw i32 20, %14112
  %14114 = add nsw i32 %14111, %14113
  %14115 = sext i32 %14114 to i64
  %14116 = getelementptr inbounds double, ptr %14110, i64 %14115
  %14117 = load double, ptr %14116, align 8, !tbaa !11
  %14118 = call double @llvm.fmuladd.f64(double 0xBCB5FFFFFFFFFFFF, double %14117, double %14109)
  %14119 = load ptr, ptr %7, align 8, !tbaa !9
  %14120 = load i32, ptr %12, align 4, !tbaa !5
  %14121 = load i32, ptr %8, align 4, !tbaa !5
  %14122 = mul nsw i32 21, %14121
  %14123 = add nsw i32 %14120, %14122
  %14124 = sext i32 %14123 to i64
  %14125 = getelementptr inbounds double, ptr %14119, i64 %14124
  %14126 = load double, ptr %14125, align 8, !tbaa !11
  %14127 = call double @llvm.fmuladd.f64(double 0x3CA8000000000001, double %14126, double %14118)
  %14128 = load ptr, ptr %7, align 8, !tbaa !9
  %14129 = load i32, ptr %12, align 4, !tbaa !5
  %14130 = load i32, ptr %8, align 4, !tbaa !5
  %14131 = mul nsw i32 22, %14130
  %14132 = add nsw i32 %14129, %14131
  %14133 = sext i32 %14132 to i64
  %14134 = getelementptr inbounds double, ptr %14128, i64 %14133
  %14135 = load double, ptr %14134, align 8, !tbaa !11
  %14136 = call double @llvm.fmuladd.f64(double 0x3CA97FFFFFFFFFFF, double %14135, double %14127)
  %14137 = load ptr, ptr %7, align 8, !tbaa !9
  %14138 = load i32, ptr %12, align 4, !tbaa !5
  %14139 = load i32, ptr %8, align 4, !tbaa !5
  %14140 = mul nsw i32 23, %14139
  %14141 = add nsw i32 %14138, %14140
  %14142 = sext i32 %14141 to i64
  %14143 = getelementptr inbounds double, ptr %14137, i64 %14142
  %14144 = load double, ptr %14143, align 8, !tbaa !11
  %14145 = call double @llvm.fmuladd.f64(double 0xBCA0000000000002, double %14144, double %14136)
  %14146 = load ptr, ptr %7, align 8, !tbaa !9
  %14147 = load i32, ptr %12, align 4, !tbaa !5
  %14148 = load i32, ptr %8, align 4, !tbaa !5
  %14149 = mul nsw i32 24, %14148
  %14150 = add nsw i32 %14147, %14149
  %14151 = sext i32 %14150 to i64
  %14152 = getelementptr inbounds double, ptr %14146, i64 %14151
  %14153 = load double, ptr %14152, align 8, !tbaa !11
  %14154 = call double @llvm.fmuladd.f64(double 0xBCB0000000000000, double %14153, double %14145)
  %14155 = load ptr, ptr %7, align 8, !tbaa !9
  %14156 = load i32, ptr %12, align 4, !tbaa !5
  %14157 = load i32, ptr %8, align 4, !tbaa !5
  %14158 = mul nsw i32 25, %14157
  %14159 = add nsw i32 %14156, %14158
  %14160 = sext i32 %14159 to i64
  %14161 = getelementptr inbounds double, ptr %14155, i64 %14160
  %14162 = load double, ptr %14161, align 8, !tbaa !11
  %14163 = call double @llvm.fmuladd.f64(double 0xBCA8000000000001, double %14162, double %14154)
  %14164 = load ptr, ptr %7, align 8, !tbaa !9
  %14165 = load i32, ptr %12, align 4, !tbaa !5
  %14166 = load i32, ptr %8, align 4, !tbaa !5
  %14167 = mul nsw i32 26, %14166
  %14168 = add nsw i32 %14165, %14167
  %14169 = sext i32 %14168 to i64
  %14170 = getelementptr inbounds double, ptr %14164, i64 %14169
  %14171 = load double, ptr %14170, align 8, !tbaa !11
  %14172 = call double @llvm.fmuladd.f64(double 0xBC92000000000000, double %14171, double %14163)
  %14173 = load ptr, ptr %7, align 8, !tbaa !9
  %14174 = load i32, ptr %12, align 4, !tbaa !5
  %14175 = load i32, ptr %8, align 4, !tbaa !5
  %14176 = mul nsw i32 27, %14175
  %14177 = add nsw i32 %14174, %14176
  %14178 = sext i32 %14177 to i64
  %14179 = getelementptr inbounds double, ptr %14173, i64 %14178
  %14180 = load double, ptr %14179, align 8, !tbaa !11
  %14181 = call double @llvm.fmuladd.f64(double 0x3CB6800000000000, double %14180, double %14172)
  %14182 = load ptr, ptr %7, align 8, !tbaa !9
  %14183 = load i32, ptr %12, align 4, !tbaa !5
  %14184 = load i32, ptr %8, align 4, !tbaa !5
  %14185 = mul nsw i32 28, %14184
  %14186 = add nsw i32 %14183, %14185
  %14187 = sext i32 %14186 to i64
  %14188 = getelementptr inbounds double, ptr %14182, i64 %14187
  %14189 = load double, ptr %14188, align 8, !tbaa !11
  %14190 = call double @llvm.fmuladd.f64(double 0x3C7FFFFFFFFFFFFF, double %14189, double %14181)
  %14191 = load ptr, ptr %7, align 8, !tbaa !9
  %14192 = load i32, ptr %12, align 4, !tbaa !5
  %14193 = load i32, ptr %8, align 4, !tbaa !5
  %14194 = mul nsw i32 30, %14193
  %14195 = add nsw i32 %14192, %14194
  %14196 = sext i32 %14195 to i64
  %14197 = getelementptr inbounds double, ptr %14191, i64 %14196
  %14198 = load double, ptr %14197, align 8, !tbaa !11
  %14199 = call double @llvm.fmuladd.f64(double 0xBC88000000000000, double %14198, double %14190)
  %14200 = load ptr, ptr %7, align 8, !tbaa !9
  %14201 = load i32, ptr %12, align 4, !tbaa !5
  %14202 = load i32, ptr %8, align 4, !tbaa !5
  %14203 = mul nsw i32 31, %14202
  %14204 = add nsw i32 %14201, %14203
  %14205 = sext i32 %14204 to i64
  %14206 = getelementptr inbounds double, ptr %14200, i64 %14205
  %14207 = load double, ptr %14206, align 8, !tbaa !11
  %14208 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %14207, double %14199)
  %14209 = load ptr, ptr %7, align 8, !tbaa !9
  %14210 = load i32, ptr %12, align 4, !tbaa !5
  %14211 = load i32, ptr %8, align 4, !tbaa !5
  %14212 = mul nsw i32 32, %14211
  %14213 = add nsw i32 %14210, %14212
  %14214 = sext i32 %14213 to i64
  %14215 = getelementptr inbounds double, ptr %14209, i64 %14214
  %14216 = load double, ptr %14215, align 8, !tbaa !11
  %14217 = call double @llvm.fmuladd.f64(double 0x3C70000000000001, double %14216, double %14208)
  %14218 = load ptr, ptr %7, align 8, !tbaa !9
  %14219 = load i32, ptr %12, align 4, !tbaa !5
  %14220 = load i32, ptr %8, align 4, !tbaa !5
  %14221 = mul nsw i32 33, %14220
  %14222 = add nsw i32 %14219, %14221
  %14223 = sext i32 %14222 to i64
  %14224 = getelementptr inbounds double, ptr %14218, i64 %14223
  %14225 = load double, ptr %14224, align 8, !tbaa !11
  %14226 = call double @llvm.fmuladd.f64(double 0x3CA67FFFFFFFFFFE, double %14225, double %14217)
  %14227 = load ptr, ptr %7, align 8, !tbaa !9
  %14228 = load i32, ptr %12, align 4, !tbaa !5
  %14229 = load i32, ptr %8, align 4, !tbaa !5
  %14230 = mul nsw i32 34, %14229
  %14231 = add nsw i32 %14228, %14230
  %14232 = sext i32 %14231 to i64
  %14233 = getelementptr inbounds double, ptr %14227, i64 %14232
  %14234 = load double, ptr %14233, align 8, !tbaa !11
  %14235 = call double @llvm.fmuladd.f64(double 0xBCAE000000000002, double %14234, double %14226)
  %14236 = load ptr, ptr %7, align 8, !tbaa !9
  %14237 = load i32, ptr %12, align 4, !tbaa !5
  %14238 = load i32, ptr %8, align 4, !tbaa !5
  %14239 = mul nsw i32 35, %14238
  %14240 = add nsw i32 %14237, %14239
  %14241 = sext i32 %14240 to i64
  %14242 = getelementptr inbounds double, ptr %14236, i64 %14241
  %14243 = load double, ptr %14242, align 8, !tbaa !11
  %14244 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %14243, double %14235)
  %14245 = load ptr, ptr %7, align 8, !tbaa !9
  %14246 = load i32, ptr %12, align 4, !tbaa !5
  %14247 = load i32, ptr %8, align 4, !tbaa !5
  %14248 = mul nsw i32 36, %14247
  %14249 = add nsw i32 %14246, %14248
  %14250 = sext i32 %14249 to i64
  %14251 = getelementptr inbounds double, ptr %14245, i64 %14250
  %14252 = load double, ptr %14251, align 8, !tbaa !11
  %14253 = call double @llvm.fmuladd.f64(double 0x3C97000000000000, double %14252, double %14244)
  %14254 = load ptr, ptr %7, align 8, !tbaa !9
  %14255 = load i32, ptr %12, align 4, !tbaa !5
  %14256 = load i32, ptr %8, align 4, !tbaa !5
  %14257 = mul nsw i32 37, %14256
  %14258 = add nsw i32 %14255, %14257
  %14259 = sext i32 %14258 to i64
  %14260 = getelementptr inbounds double, ptr %14254, i64 %14259
  %14261 = load double, ptr %14260, align 8, !tbaa !11
  %14262 = call double @llvm.fmuladd.f64(double 0xBC78000000000002, double %14261, double %14253)
  %14263 = load ptr, ptr %7, align 8, !tbaa !9
  %14264 = load i32, ptr %12, align 4, !tbaa !5
  %14265 = load i32, ptr %8, align 4, !tbaa !5
  %14266 = mul nsw i32 38, %14265
  %14267 = add nsw i32 %14264, %14266
  %14268 = sext i32 %14267 to i64
  %14269 = getelementptr inbounds double, ptr %14263, i64 %14268
  %14270 = load double, ptr %14269, align 8, !tbaa !11
  %14271 = call double @llvm.fmuladd.f64(double 0xBC98000000000000, double %14270, double %14262)
  %14272 = load ptr, ptr %7, align 8, !tbaa !9
  %14273 = load i32, ptr %12, align 4, !tbaa !5
  %14274 = load i32, ptr %8, align 4, !tbaa !5
  %14275 = mul nsw i32 39, %14274
  %14276 = add nsw i32 %14273, %14275
  %14277 = sext i32 %14276 to i64
  %14278 = getelementptr inbounds double, ptr %14272, i64 %14277
  %14279 = load double, ptr %14278, align 8, !tbaa !11
  %14280 = call double @llvm.fmuladd.f64(double 0x3C70000000000001, double %14279, double %14271)
  store double %14280, ptr %11, align 8, !tbaa !11
  %14281 = load double, ptr %11, align 8, !tbaa !11
  %14282 = load ptr, ptr %9, align 8, !tbaa !9
  %14283 = load i32, ptr %12, align 4, !tbaa !5
  %14284 = load i32, ptr %10, align 4, !tbaa !5
  %14285 = mul nsw i32 39, %14284
  %14286 = add nsw i32 %14283, %14285
  %14287 = sext i32 %14286 to i64
  %14288 = getelementptr inbounds double, ptr %14282, i64 %14287
  store double %14281, ptr %14288, align 8, !tbaa !11
  %14289 = load ptr, ptr %7, align 8, !tbaa !9
  %14290 = load i32, ptr %12, align 4, !tbaa !5
  %14291 = load i32, ptr %8, align 4, !tbaa !5
  %14292 = mul nsw i32 0, %14291
  %14293 = add nsw i32 %14290, %14292
  %14294 = sext i32 %14293 to i64
  %14295 = getelementptr inbounds double, ptr %14289, i64 %14294
  %14296 = load double, ptr %14295, align 8, !tbaa !11
  %14297 = load ptr, ptr %7, align 8, !tbaa !9
  %14298 = load i32, ptr %12, align 4, !tbaa !5
  %14299 = load i32, ptr %8, align 4, !tbaa !5
  %14300 = mul nsw i32 1, %14299
  %14301 = add nsw i32 %14298, %14300
  %14302 = sext i32 %14301 to i64
  %14303 = getelementptr inbounds double, ptr %14297, i64 %14302
  %14304 = load double, ptr %14303, align 8, !tbaa !11
  %14305 = fmul double 0x3C7CFFFFFFFFFFFF, %14304
  %14306 = call double @llvm.fmuladd.f64(double 0xBCB05FFFFFFFFFFF, double %14296, double %14305)
  %14307 = load ptr, ptr %7, align 8, !tbaa !9
  %14308 = load i32, ptr %12, align 4, !tbaa !5
  %14309 = load i32, ptr %8, align 4, !tbaa !5
  %14310 = mul nsw i32 2, %14309
  %14311 = add nsw i32 %14308, %14310
  %14312 = sext i32 %14311 to i64
  %14313 = getelementptr inbounds double, ptr %14307, i64 %14312
  %14314 = load double, ptr %14313, align 8, !tbaa !11
  %14315 = call double @llvm.fmuladd.f64(double 0xBC91400000000000, double %14314, double %14306)
  %14316 = load ptr, ptr %7, align 8, !tbaa !9
  %14317 = load i32, ptr %12, align 4, !tbaa !5
  %14318 = load i32, ptr %8, align 4, !tbaa !5
  %14319 = mul nsw i32 3, %14318
  %14320 = add nsw i32 %14317, %14319
  %14321 = sext i32 %14320 to i64
  %14322 = getelementptr inbounds double, ptr %14316, i64 %14321
  %14323 = load double, ptr %14322, align 8, !tbaa !11
  %14324 = call double @llvm.fmuladd.f64(double 0x3C95000000000000, double %14323, double %14315)
  %14325 = load ptr, ptr %7, align 8, !tbaa !9
  %14326 = load i32, ptr %12, align 4, !tbaa !5
  %14327 = load i32, ptr %8, align 4, !tbaa !5
  %14328 = mul nsw i32 4, %14327
  %14329 = add nsw i32 %14326, %14328
  %14330 = sext i32 %14329 to i64
  %14331 = getelementptr inbounds double, ptr %14325, i64 %14330
  %14332 = load double, ptr %14331, align 8, !tbaa !11
  %14333 = call double @llvm.fmuladd.f64(double 0xBC9BC00000000000, double %14332, double %14324)
  %14334 = load ptr, ptr %7, align 8, !tbaa !9
  %14335 = load i32, ptr %12, align 4, !tbaa !5
  %14336 = load i32, ptr %8, align 4, !tbaa !5
  %14337 = mul nsw i32 5, %14336
  %14338 = add nsw i32 %14335, %14337
  %14339 = sext i32 %14338 to i64
  %14340 = getelementptr inbounds double, ptr %14334, i64 %14339
  %14341 = load double, ptr %14340, align 8, !tbaa !11
  %14342 = call double @llvm.fmuladd.f64(double 0x3CA9FFFFFFFFFFFE, double %14341, double %14333)
  %14343 = load ptr, ptr %7, align 8, !tbaa !9
  %14344 = load i32, ptr %12, align 4, !tbaa !5
  %14345 = load i32, ptr %8, align 4, !tbaa !5
  %14346 = mul nsw i32 6, %14345
  %14347 = add nsw i32 %14344, %14346
  %14348 = sext i32 %14347 to i64
  %14349 = getelementptr inbounds double, ptr %14343, i64 %14348
  %14350 = load double, ptr %14349, align 8, !tbaa !11
  %14351 = call double @llvm.fmuladd.f64(double 0x3CB92BFFFFFFFFFF, double %14350, double %14342)
  %14352 = load ptr, ptr %7, align 8, !tbaa !9
  %14353 = load i32, ptr %12, align 4, !tbaa !5
  %14354 = load i32, ptr %8, align 4, !tbaa !5
  %14355 = mul nsw i32 7, %14354
  %14356 = add nsw i32 %14353, %14355
  %14357 = sext i32 %14356 to i64
  %14358 = getelementptr inbounds double, ptr %14352, i64 %14357
  %14359 = load double, ptr %14358, align 8, !tbaa !11
  %14360 = call double @llvm.fmuladd.f64(double 0x3C98900000000000, double %14359, double %14351)
  %14361 = load ptr, ptr %7, align 8, !tbaa !9
  %14362 = load i32, ptr %12, align 4, !tbaa !5
  %14363 = load i32, ptr %8, align 4, !tbaa !5
  %14364 = mul nsw i32 8, %14363
  %14365 = add nsw i32 %14362, %14364
  %14366 = sext i32 %14365 to i64
  %14367 = getelementptr inbounds double, ptr %14361, i64 %14366
  %14368 = load double, ptr %14367, align 8, !tbaa !11
  %14369 = call double @llvm.fmuladd.f64(double 0x3C8B000000000000, double %14368, double %14360)
  %14370 = load ptr, ptr %7, align 8, !tbaa !9
  %14371 = load i32, ptr %12, align 4, !tbaa !5
  %14372 = load i32, ptr %8, align 4, !tbaa !5
  %14373 = mul nsw i32 9, %14372
  %14374 = add nsw i32 %14371, %14373
  %14375 = sext i32 %14374 to i64
  %14376 = getelementptr inbounds double, ptr %14370, i64 %14375
  %14377 = load double, ptr %14376, align 8, !tbaa !11
  %14378 = call double @llvm.fmuladd.f64(double 0xBC67FFFFFFFFFFFE, double %14377, double %14369)
  %14379 = load ptr, ptr %7, align 8, !tbaa !9
  %14380 = load i32, ptr %12, align 4, !tbaa !5
  %14381 = load i32, ptr %8, align 4, !tbaa !5
  %14382 = mul nsw i32 10, %14381
  %14383 = add nsw i32 %14380, %14382
  %14384 = sext i32 %14383 to i64
  %14385 = getelementptr inbounds double, ptr %14379, i64 %14384
  %14386 = load double, ptr %14385, align 8, !tbaa !11
  %14387 = call double @llvm.fmuladd.f64(double 0xBF83152016E0EC5E, double %14386, double %14378)
  %14388 = load ptr, ptr %7, align 8, !tbaa !9
  %14389 = load i32, ptr %12, align 4, !tbaa !5
  %14390 = load i32, ptr %8, align 4, !tbaa !5
  %14391 = mul nsw i32 11, %14390
  %14392 = add nsw i32 %14389, %14391
  %14393 = sext i32 %14392 to i64
  %14394 = getelementptr inbounds double, ptr %14388, i64 %14393
  %14395 = load double, ptr %14394, align 8, !tbaa !11
  %14396 = call double @llvm.fmuladd.f64(double 0x3F938CE4890DB2BA, double %14395, double %14387)
  %14397 = load ptr, ptr %7, align 8, !tbaa !9
  %14398 = load i32, ptr %12, align 4, !tbaa !5
  %14399 = load i32, ptr %8, align 4, !tbaa !5
  %14400 = mul nsw i32 12, %14399
  %14401 = add nsw i32 %14398, %14400
  %14402 = sext i32 %14401 to i64
  %14403 = getelementptr inbounds double, ptr %14397, i64 %14402
  %14404 = load double, ptr %14403, align 8, !tbaa !11
  %14405 = call double @llvm.fmuladd.f64(double 0xBFB5B58B4F03B19E, double %14404, double %14396)
  %14406 = load ptr, ptr %7, align 8, !tbaa !9
  %14407 = load i32, ptr %12, align 4, !tbaa !5
  %14408 = load i32, ptr %8, align 4, !tbaa !5
  %14409 = mul nsw i32 13, %14408
  %14410 = add nsw i32 %14407, %14409
  %14411 = sext i32 %14410 to i64
  %14412 = getelementptr inbounds double, ptr %14406, i64 %14411
  %14413 = load double, ptr %14412, align 8, !tbaa !11
  %14414 = call double @llvm.fmuladd.f64(double 0x3FF4EC1BB3FDC612, double %14413, double %14405)
  %14415 = load ptr, ptr %7, align 8, !tbaa !9
  %14416 = load i32, ptr %12, align 4, !tbaa !5
  %14417 = load i32, ptr %8, align 4, !tbaa !5
  %14418 = mul nsw i32 14, %14417
  %14419 = add nsw i32 %14416, %14418
  %14420 = sext i32 %14419 to i64
  %14421 = getelementptr inbounds double, ptr %14415, i64 %14420
  %14422 = load double, ptr %14421, align 8, !tbaa !11
  %14423 = call double @llvm.fmuladd.f64(double 0xBF8BDAF699AECEEC, double %14422, double %14414)
  %14424 = load ptr, ptr %7, align 8, !tbaa !9
  %14425 = load i32, ptr %12, align 4, !tbaa !5
  %14426 = load i32, ptr %8, align 4, !tbaa !5
  %14427 = mul nsw i32 15, %14426
  %14428 = add nsw i32 %14425, %14427
  %14429 = sext i32 %14428 to i64
  %14430 = getelementptr inbounds double, ptr %14424, i64 %14429
  %14431 = load double, ptr %14430, align 8, !tbaa !11
  %14432 = call double @llvm.fmuladd.f64(double 0x3FCA50C41AB7A329, double %14431, double %14423)
  %14433 = load ptr, ptr %7, align 8, !tbaa !9
  %14434 = load i32, ptr %12, align 4, !tbaa !5
  %14435 = load i32, ptr %8, align 4, !tbaa !5
  %14436 = mul nsw i32 16, %14435
  %14437 = add nsw i32 %14434, %14436
  %14438 = sext i32 %14437 to i64
  %14439 = getelementptr inbounds double, ptr %14433, i64 %14438
  %14440 = load double, ptr %14439, align 8, !tbaa !11
  %14441 = call double @llvm.fmuladd.f64(double 0xBFE5679E70A60656, double %14440, double %14432)
  %14442 = load ptr, ptr %7, align 8, !tbaa !9
  %14443 = load i32, ptr %12, align 4, !tbaa !5
  %14444 = load i32, ptr %8, align 4, !tbaa !5
  %14445 = mul nsw i32 17, %14444
  %14446 = add nsw i32 %14443, %14445
  %14447 = sext i32 %14446 to i64
  %14448 = getelementptr inbounds double, ptr %14442, i64 %14447
  %14449 = load double, ptr %14448, align 8, !tbaa !11
  %14450 = call double @llvm.fmuladd.f64(double 0x3FD417DEBFC17B11, double %14449, double %14441)
  %14451 = load ptr, ptr %7, align 8, !tbaa !9
  %14452 = load i32, ptr %12, align 4, !tbaa !5
  %14453 = load i32, ptr %8, align 4, !tbaa !5
  %14454 = mul nsw i32 18, %14453
  %14455 = add nsw i32 %14452, %14454
  %14456 = sext i32 %14455 to i64
  %14457 = getelementptr inbounds double, ptr %14451, i64 %14456
  %14458 = load double, ptr %14457, align 8, !tbaa !11
  %14459 = call double @llvm.fmuladd.f64(double 0xBFB49217631F593C, double %14458, double %14450)
  %14460 = load ptr, ptr %7, align 8, !tbaa !9
  %14461 = load i32, ptr %12, align 4, !tbaa !5
  %14462 = load i32, ptr %8, align 4, !tbaa !5
  %14463 = mul nsw i32 19, %14462
  %14464 = add nsw i32 %14461, %14463
  %14465 = sext i32 %14464 to i64
  %14466 = getelementptr inbounds double, ptr %14460, i64 %14465
  %14467 = load double, ptr %14466, align 8, !tbaa !11
  %14468 = call double @llvm.fmuladd.f64(double 0x3F85E50BB681A42C, double %14467, double %14459)
  %14469 = load ptr, ptr %7, align 8, !tbaa !9
  %14470 = load i32, ptr %12, align 4, !tbaa !5
  %14471 = load i32, ptr %8, align 4, !tbaa !5
  %14472 = mul nsw i32 20, %14471
  %14473 = add nsw i32 %14470, %14472
  %14474 = sext i32 %14473 to i64
  %14475 = getelementptr inbounds double, ptr %14469, i64 %14474
  %14476 = load double, ptr %14475, align 8, !tbaa !11
  %14477 = call double @llvm.fmuladd.f64(double 0x3C97000000000000, double %14476, double %14468)
  %14478 = load ptr, ptr %7, align 8, !tbaa !9
  %14479 = load i32, ptr %12, align 4, !tbaa !5
  %14480 = load i32, ptr %8, align 4, !tbaa !5
  %14481 = mul nsw i32 21, %14480
  %14482 = add nsw i32 %14479, %14481
  %14483 = sext i32 %14482 to i64
  %14484 = getelementptr inbounds double, ptr %14478, i64 %14483
  %14485 = load double, ptr %14484, align 8, !tbaa !11
  %14486 = call double @llvm.fmuladd.f64(double 0x3C8F000000000000, double %14485, double %14477)
  %14487 = load ptr, ptr %7, align 8, !tbaa !9
  %14488 = load i32, ptr %12, align 4, !tbaa !5
  %14489 = load i32, ptr %8, align 4, !tbaa !5
  %14490 = mul nsw i32 22, %14489
  %14491 = add nsw i32 %14488, %14490
  %14492 = sext i32 %14491 to i64
  %14493 = getelementptr inbounds double, ptr %14487, i64 %14492
  %14494 = load double, ptr %14493, align 8, !tbaa !11
  %14495 = call double @llvm.fmuladd.f64(double 0xBC94C00000000000, double %14494, double %14486)
  %14496 = load ptr, ptr %7, align 8, !tbaa !9
  %14497 = load i32, ptr %12, align 4, !tbaa !5
  %14498 = load i32, ptr %8, align 4, !tbaa !5
  %14499 = mul nsw i32 23, %14498
  %14500 = add nsw i32 %14497, %14499
  %14501 = sext i32 %14500 to i64
  %14502 = getelementptr inbounds double, ptr %14496, i64 %14501
  %14503 = load double, ptr %14502, align 8, !tbaa !11
  %14504 = call double @llvm.fmuladd.f64(double 0xBC97E00000000000, double %14503, double %14495)
  %14505 = load ptr, ptr %7, align 8, !tbaa !9
  %14506 = load i32, ptr %12, align 4, !tbaa !5
  %14507 = load i32, ptr %8, align 4, !tbaa !5
  %14508 = mul nsw i32 24, %14507
  %14509 = add nsw i32 %14506, %14508
  %14510 = sext i32 %14509 to i64
  %14511 = getelementptr inbounds double, ptr %14505, i64 %14510
  %14512 = load double, ptr %14511, align 8, !tbaa !11
  %14513 = call double @llvm.fmuladd.f64(double 0x3CA27FFFFFFFFFFF, double %14512, double %14504)
  %14514 = load ptr, ptr %7, align 8, !tbaa !9
  %14515 = load i32, ptr %12, align 4, !tbaa !5
  %14516 = load i32, ptr %8, align 4, !tbaa !5
  %14517 = mul nsw i32 25, %14516
  %14518 = add nsw i32 %14515, %14517
  %14519 = sext i32 %14518 to i64
  %14520 = getelementptr inbounds double, ptr %14514, i64 %14519
  %14521 = load double, ptr %14520, align 8, !tbaa !11
  %14522 = call double @llvm.fmuladd.f64(double 0xBC7E000000000001, double %14521, double %14513)
  %14523 = load ptr, ptr %7, align 8, !tbaa !9
  %14524 = load i32, ptr %12, align 4, !tbaa !5
  %14525 = load i32, ptr %8, align 4, !tbaa !5
  %14526 = mul nsw i32 26, %14525
  %14527 = add nsw i32 %14524, %14526
  %14528 = sext i32 %14527 to i64
  %14529 = getelementptr inbounds double, ptr %14523, i64 %14528
  %14530 = load double, ptr %14529, align 8, !tbaa !11
  %14531 = call double @llvm.fmuladd.f64(double 0xBC94000000000000, double %14530, double %14522)
  %14532 = load ptr, ptr %7, align 8, !tbaa !9
  %14533 = load i32, ptr %12, align 4, !tbaa !5
  %14534 = load i32, ptr %8, align 4, !tbaa !5
  %14535 = mul nsw i32 27, %14534
  %14536 = add nsw i32 %14533, %14535
  %14537 = sext i32 %14536 to i64
  %14538 = getelementptr inbounds double, ptr %14532, i64 %14537
  %14539 = load double, ptr %14538, align 8, !tbaa !11
  %14540 = call double @llvm.fmuladd.f64(double 0x3CAD5FFFFFFFFFFF, double %14539, double %14531)
  %14541 = load ptr, ptr %7, align 8, !tbaa !9
  %14542 = load i32, ptr %12, align 4, !tbaa !5
  %14543 = load i32, ptr %8, align 4, !tbaa !5
  %14544 = mul nsw i32 28, %14543
  %14545 = add nsw i32 %14542, %14544
  %14546 = sext i32 %14545 to i64
  %14547 = getelementptr inbounds double, ptr %14541, i64 %14546
  %14548 = load double, ptr %14547, align 8, !tbaa !11
  %14549 = call double @llvm.fmuladd.f64(double 0x3C9CFFFFFFFFFFFF, double %14548, double %14540)
  %14550 = load ptr, ptr %7, align 8, !tbaa !9
  %14551 = load i32, ptr %12, align 4, !tbaa !5
  %14552 = load i32, ptr %8, align 4, !tbaa !5
  %14553 = mul nsw i32 29, %14552
  %14554 = add nsw i32 %14551, %14553
  %14555 = sext i32 %14554 to i64
  %14556 = getelementptr inbounds double, ptr %14550, i64 %14555
  %14557 = load double, ptr %14556, align 8, !tbaa !11
  %14558 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %14557, double %14549)
  %14559 = load ptr, ptr %7, align 8, !tbaa !9
  %14560 = load i32, ptr %12, align 4, !tbaa !5
  %14561 = load i32, ptr %8, align 4, !tbaa !5
  %14562 = mul nsw i32 30, %14561
  %14563 = add nsw i32 %14560, %14562
  %14564 = sext i32 %14563 to i64
  %14565 = getelementptr inbounds double, ptr %14559, i64 %14564
  %14566 = load double, ptr %14565, align 8, !tbaa !11
  %14567 = call double @llvm.fmuladd.f64(double 0x3CA8600000000000, double %14566, double %14558)
  %14568 = load ptr, ptr %7, align 8, !tbaa !9
  %14569 = load i32, ptr %12, align 4, !tbaa !5
  %14570 = load i32, ptr %8, align 4, !tbaa !5
  %14571 = mul nsw i32 31, %14570
  %14572 = add nsw i32 %14569, %14571
  %14573 = sext i32 %14572 to i64
  %14574 = getelementptr inbounds double, ptr %14568, i64 %14573
  %14575 = load double, ptr %14574, align 8, !tbaa !11
  %14576 = call double @llvm.fmuladd.f64(double 0xBC87800000000001, double %14575, double %14567)
  %14577 = load ptr, ptr %7, align 8, !tbaa !9
  %14578 = load i32, ptr %12, align 4, !tbaa !5
  %14579 = load i32, ptr %8, align 4, !tbaa !5
  %14580 = mul nsw i32 32, %14579
  %14581 = add nsw i32 %14578, %14580
  %14582 = sext i32 %14581 to i64
  %14583 = getelementptr inbounds double, ptr %14577, i64 %14582
  %14584 = load double, ptr %14583, align 8, !tbaa !11
  %14585 = call double @llvm.fmuladd.f64(double 0xBC97000000000000, double %14584, double %14576)
  %14586 = load ptr, ptr %7, align 8, !tbaa !9
  %14587 = load i32, ptr %12, align 4, !tbaa !5
  %14588 = load i32, ptr %8, align 4, !tbaa !5
  %14589 = mul nsw i32 33, %14588
  %14590 = add nsw i32 %14587, %14589
  %14591 = sext i32 %14590 to i64
  %14592 = getelementptr inbounds double, ptr %14586, i64 %14591
  %14593 = load double, ptr %14592, align 8, !tbaa !11
  %14594 = call double @llvm.fmuladd.f64(double 0x3CA63FFFFFFFFFFF, double %14593, double %14585)
  %14595 = load ptr, ptr %7, align 8, !tbaa !9
  %14596 = load i32, ptr %12, align 4, !tbaa !5
  %14597 = load i32, ptr %8, align 4, !tbaa !5
  %14598 = mul nsw i32 34, %14597
  %14599 = add nsw i32 %14596, %14598
  %14600 = sext i32 %14599 to i64
  %14601 = getelementptr inbounds double, ptr %14595, i64 %14600
  %14602 = load double, ptr %14601, align 8, !tbaa !11
  %14603 = call double @llvm.fmuladd.f64(double 0xBC99C00000000000, double %14602, double %14594)
  %14604 = load ptr, ptr %7, align 8, !tbaa !9
  %14605 = load i32, ptr %12, align 4, !tbaa !5
  %14606 = load i32, ptr %8, align 4, !tbaa !5
  %14607 = mul nsw i32 35, %14606
  %14608 = add nsw i32 %14605, %14607
  %14609 = sext i32 %14608 to i64
  %14610 = getelementptr inbounds double, ptr %14604, i64 %14609
  %14611 = load double, ptr %14610, align 8, !tbaa !11
  %14612 = call double @llvm.fmuladd.f64(double 0xBC70000000000001, double %14611, double %14603)
  %14613 = load ptr, ptr %7, align 8, !tbaa !9
  %14614 = load i32, ptr %12, align 4, !tbaa !5
  %14615 = load i32, ptr %8, align 4, !tbaa !5
  %14616 = mul nsw i32 36, %14615
  %14617 = add nsw i32 %14614, %14616
  %14618 = sext i32 %14617 to i64
  %14619 = getelementptr inbounds double, ptr %14613, i64 %14618
  %14620 = load double, ptr %14619, align 8, !tbaa !11
  %14621 = call double @llvm.fmuladd.f64(double 0xBC88200000000000, double %14620, double %14612)
  %14622 = load ptr, ptr %7, align 8, !tbaa !9
  %14623 = load i32, ptr %12, align 4, !tbaa !5
  %14624 = load i32, ptr %8, align 4, !tbaa !5
  %14625 = mul nsw i32 37, %14624
  %14626 = add nsw i32 %14623, %14625
  %14627 = sext i32 %14626 to i64
  %14628 = getelementptr inbounds double, ptr %14622, i64 %14627
  %14629 = load double, ptr %14628, align 8, !tbaa !11
  %14630 = call double @llvm.fmuladd.f64(double 0xBC9A500000000000, double %14629, double %14621)
  %14631 = load ptr, ptr %7, align 8, !tbaa !9
  %14632 = load i32, ptr %12, align 4, !tbaa !5
  %14633 = load i32, ptr %8, align 4, !tbaa !5
  %14634 = mul nsw i32 38, %14633
  %14635 = add nsw i32 %14632, %14634
  %14636 = sext i32 %14635 to i64
  %14637 = getelementptr inbounds double, ptr %14631, i64 %14636
  %14638 = load double, ptr %14637, align 8, !tbaa !11
  %14639 = call double @llvm.fmuladd.f64(double 0xBC81000000000000, double %14638, double %14630)
  %14640 = load ptr, ptr %7, align 8, !tbaa !9
  %14641 = load i32, ptr %12, align 4, !tbaa !5
  %14642 = load i32, ptr %8, align 4, !tbaa !5
  %14643 = mul nsw i32 39, %14642
  %14644 = add nsw i32 %14641, %14643
  %14645 = sext i32 %14644 to i64
  %14646 = getelementptr inbounds double, ptr %14640, i64 %14645
  %14647 = load double, ptr %14646, align 8, !tbaa !11
  %14648 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %14647, double %14639)
  store double %14648, ptr %11, align 8, !tbaa !11
  %14649 = load double, ptr %11, align 8, !tbaa !11
  %14650 = load ptr, ptr %9, align 8, !tbaa !9
  %14651 = load i32, ptr %12, align 4, !tbaa !5
  %14652 = load i32, ptr %10, align 4, !tbaa !5
  %14653 = mul nsw i32 40, %14652
  %14654 = add nsw i32 %14651, %14653
  %14655 = sext i32 %14654 to i64
  %14656 = getelementptr inbounds double, ptr %14650, i64 %14655
  store double %14649, ptr %14656, align 8, !tbaa !11
  %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 0, %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 = load ptr, ptr %7, align 8, !tbaa !9
  %14666 = load i32, ptr %12, align 4, !tbaa !5
  %14667 = load i32, ptr %8, align 4, !tbaa !5
  %14668 = mul nsw i32 1, %14667
  %14669 = add nsw i32 %14666, %14668
  %14670 = sext i32 %14669 to i64
  %14671 = getelementptr inbounds double, ptr %14665, i64 %14670
  %14672 = load double, ptr %14671, align 8, !tbaa !11
  %14673 = fmul double 0xBCA3C00000000002, %14672
  %14674 = call double @llvm.fmuladd.f64(double 0x3CC1100000000000, double %14664, double %14673)
  %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 2, %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 0xBC8BC00000000001, 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 3, %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 0x3CAE400000000002, 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 4, %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 0xBC9F7FFFFFFFFFFC, 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 5, %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 0x3C96800000000000, 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 6, %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 0x3C95800000000000, 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 7, %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 0x3C73000000000001, double %14727, double %14719)
  %14729 = load ptr, ptr %7, align 8, !tbaa !9
  %14730 = load i32, ptr %12, align 4, !tbaa !5
  %14731 = load i32, ptr %8, align 4, !tbaa !5
  %14732 = mul nsw i32 8, %14731
  %14733 = add nsw i32 %14730, %14732
  %14734 = sext i32 %14733 to i64
  %14735 = getelementptr inbounds double, ptr %14729, i64 %14734
  %14736 = load double, ptr %14735, align 8, !tbaa !11
  %14737 = call double @llvm.fmuladd.f64(double 0x3CA23FFFFFFFFFFF, double %14736, double %14728)
  %14738 = load ptr, ptr %7, align 8, !tbaa !9
  %14739 = load i32, ptr %12, align 4, !tbaa !5
  %14740 = load i32, ptr %8, align 4, !tbaa !5
  %14741 = mul nsw i32 9, %14740
  %14742 = add nsw i32 %14739, %14741
  %14743 = sext i32 %14742 to i64
  %14744 = getelementptr inbounds double, ptr %14738, i64 %14743
  %14745 = load double, ptr %14744, align 8, !tbaa !11
  %14746 = call double @llvm.fmuladd.f64(double 0xBCA1400000000000, double %14745, double %14737)
  %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 10, %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 = call double @llvm.fmuladd.f64(double 0xBFE333710B32A29E, double %14754, double %14746)
  %14756 = load ptr, ptr %7, align 8, !tbaa !9
  %14757 = load i32, ptr %12, align 4, !tbaa !5
  %14758 = load i32, ptr %8, align 4, !tbaa !5
  %14759 = mul nsw i32 11, %14758
  %14760 = add nsw i32 %14757, %14759
  %14761 = sext i32 %14760 to i64
  %14762 = getelementptr inbounds double, ptr %14756, i64 %14761
  %14763 = load double, ptr %14762, align 8, !tbaa !11
  %14764 = call double @llvm.fmuladd.f64(double 0xBFA352D4DB969C18, double %14763, double %14755)
  %14765 = load ptr, ptr %7, align 8, !tbaa !9
  %14766 = load i32, ptr %12, align 4, !tbaa !5
  %14767 = load i32, ptr %8, align 4, !tbaa !5
  %14768 = mul nsw i32 12, %14767
  %14769 = add nsw i32 %14766, %14768
  %14770 = sext i32 %14769 to i64
  %14771 = getelementptr inbounds double, ptr %14765, i64 %14770
  %14772 = load double, ptr %14771, align 8, !tbaa !11
  %14773 = call double @llvm.fmuladd.f64(double 0xBFBEED13A9F0D909, double %14772, double %14764)
  %14774 = load ptr, ptr %7, align 8, !tbaa !9
  %14775 = load i32, ptr %12, align 4, !tbaa !5
  %14776 = load i32, ptr %8, align 4, !tbaa !5
  %14777 = mul nsw i32 13, %14776
  %14778 = add nsw i32 %14775, %14777
  %14779 = sext i32 %14778 to i64
  %14780 = getelementptr inbounds double, ptr %14774, i64 %14779
  %14781 = load double, ptr %14780, align 8, !tbaa !11
  %14782 = call double @llvm.fmuladd.f64(double 0x3FA87D7643548522, double %14781, double %14773)
  %14783 = load ptr, ptr %7, align 8, !tbaa !9
  %14784 = load i32, ptr %12, align 4, !tbaa !5
  %14785 = load i32, ptr %8, align 4, !tbaa !5
  %14786 = mul nsw i32 14, %14785
  %14787 = add nsw i32 %14784, %14786
  %14788 = sext i32 %14787 to i64
  %14789 = getelementptr inbounds double, ptr %14783, i64 %14788
  %14790 = load double, ptr %14789, align 8, !tbaa !11
  %14791 = call double @llvm.fmuladd.f64(double 0x3FC27B05E24EC5F8, double %14790, double %14782)
  %14792 = load ptr, ptr %7, align 8, !tbaa !9
  %14793 = load i32, ptr %12, align 4, !tbaa !5
  %14794 = load i32, ptr %8, align 4, !tbaa !5
  %14795 = mul nsw i32 15, %14794
  %14796 = add nsw i32 %14793, %14795
  %14797 = sext i32 %14796 to i64
  %14798 = getelementptr inbounds double, ptr %14792, i64 %14797
  %14799 = load double, ptr %14798, align 8, !tbaa !11
  %14800 = call double @llvm.fmuladd.f64(double 0x3FF670C5F1F4C929, double %14799, double %14791)
  %14801 = load ptr, ptr %7, align 8, !tbaa !9
  %14802 = load i32, ptr %12, align 4, !tbaa !5
  %14803 = load i32, ptr %8, align 4, !tbaa !5
  %14804 = mul nsw i32 16, %14803
  %14805 = add nsw i32 %14802, %14804
  %14806 = sext i32 %14805 to i64
  %14807 = getelementptr inbounds double, ptr %14801, i64 %14806
  %14808 = load double, ptr %14807, align 8, !tbaa !11
  %14809 = call double @llvm.fmuladd.f64(double 0xBFD41C0D131D4297, double %14808, double %14800)
  %14810 = load ptr, ptr %7, align 8, !tbaa !9
  %14811 = load i32, ptr %12, align 4, !tbaa !5
  %14812 = load i32, ptr %8, align 4, !tbaa !5
  %14813 = mul nsw i32 17, %14812
  %14814 = add nsw i32 %14811, %14813
  %14815 = sext i32 %14814 to i64
  %14816 = getelementptr inbounds double, ptr %14810, i64 %14815
  %14817 = load double, ptr %14816, align 8, !tbaa !11
  %14818 = call double @llvm.fmuladd.f64(double 0x3FD35DAE88CBA648, double %14817, double %14809)
  %14819 = load ptr, ptr %7, align 8, !tbaa !9
  %14820 = load i32, ptr %12, align 4, !tbaa !5
  %14821 = load i32, ptr %8, align 4, !tbaa !5
  %14822 = mul nsw i32 18, %14821
  %14823 = add nsw i32 %14820, %14822
  %14824 = sext i32 %14823 to i64
  %14825 = getelementptr inbounds double, ptr %14819, i64 %14824
  %14826 = load double, ptr %14825, align 8, !tbaa !11
  %14827 = call double @llvm.fmuladd.f64(double 0x3FC36A9134CD3C63, double %14826, double %14818)
  %14828 = load ptr, ptr %7, align 8, !tbaa !9
  %14829 = load i32, ptr %12, align 4, !tbaa !5
  %14830 = load i32, ptr %8, align 4, !tbaa !5
  %14831 = mul nsw i32 19, %14830
  %14832 = add nsw i32 %14829, %14831
  %14833 = sext i32 %14832 to i64
  %14834 = getelementptr inbounds double, ptr %14828, i64 %14833
  %14835 = load double, ptr %14834, align 8, !tbaa !11
  %14836 = call double @llvm.fmuladd.f64(double 0x3F9854E0ADA34BC6, double %14835, double %14827)
  %14837 = load ptr, ptr %7, align 8, !tbaa !9
  %14838 = load i32, ptr %12, align 4, !tbaa !5
  %14839 = load i32, ptr %8, align 4, !tbaa !5
  %14840 = mul nsw i32 20, %14839
  %14841 = add nsw i32 %14838, %14840
  %14842 = sext i32 %14841 to i64
  %14843 = getelementptr inbounds double, ptr %14837, i64 %14842
  %14844 = load double, ptr %14843, align 8, !tbaa !11
  %14845 = call double @llvm.fmuladd.f64(double 0x3CA1000000000001, double %14844, double %14836)
  %14846 = load ptr, ptr %7, align 8, !tbaa !9
  %14847 = load i32, ptr %12, align 4, !tbaa !5
  %14848 = load i32, ptr %8, align 4, !tbaa !5
  %14849 = mul nsw i32 21, %14848
  %14850 = add nsw i32 %14847, %14849
  %14851 = sext i32 %14850 to i64
  %14852 = getelementptr inbounds double, ptr %14846, i64 %14851
  %14853 = load double, ptr %14852, align 8, !tbaa !11
  %14854 = call double @llvm.fmuladd.f64(double 0x3CA27FFFFFFFFFFF, double %14853, double %14845)
  %14855 = load ptr, ptr %7, align 8, !tbaa !9
  %14856 = load i32, ptr %12, align 4, !tbaa !5
  %14857 = load i32, ptr %8, align 4, !tbaa !5
  %14858 = mul nsw i32 22, %14857
  %14859 = add nsw i32 %14856, %14858
  %14860 = sext i32 %14859 to i64
  %14861 = getelementptr inbounds double, ptr %14855, i64 %14860
  %14862 = load double, ptr %14861, align 8, !tbaa !11
  %14863 = call double @llvm.fmuladd.f64(double 0xBC82800000000000, double %14862, double %14854)
  %14864 = load ptr, ptr %7, align 8, !tbaa !9
  %14865 = load i32, ptr %12, align 4, !tbaa !5
  %14866 = load i32, ptr %8, align 4, !tbaa !5
  %14867 = mul nsw i32 23, %14866
  %14868 = add nsw i32 %14865, %14867
  %14869 = sext i32 %14868 to i64
  %14870 = getelementptr inbounds double, ptr %14864, i64 %14869
  %14871 = load double, ptr %14870, align 8, !tbaa !11
  %14872 = call double @llvm.fmuladd.f64(double 0xBCB1D00000000000, double %14871, double %14863)
  %14873 = load ptr, ptr %7, align 8, !tbaa !9
  %14874 = load i32, ptr %12, align 4, !tbaa !5
  %14875 = load i32, ptr %8, align 4, !tbaa !5
  %14876 = mul nsw i32 24, %14875
  %14877 = add nsw i32 %14874, %14876
  %14878 = sext i32 %14877 to i64
  %14879 = getelementptr inbounds double, ptr %14873, i64 %14878
  %14880 = load double, ptr %14879, align 8, !tbaa !11
  %14881 = call double @llvm.fmuladd.f64(double 0x3CA8800000000000, double %14880, double %14872)
  %14882 = load ptr, ptr %7, align 8, !tbaa !9
  %14883 = load i32, ptr %12, align 4, !tbaa !5
  %14884 = load i32, ptr %8, align 4, !tbaa !5
  %14885 = mul nsw i32 25, %14884
  %14886 = add nsw i32 %14883, %14885
  %14887 = sext i32 %14886 to i64
  %14888 = getelementptr inbounds double, ptr %14882, i64 %14887
  %14889 = load double, ptr %14888, align 8, !tbaa !11
  %14890 = call double @llvm.fmuladd.f64(double 0x3C92000000000000, double %14889, double %14881)
  %14891 = load ptr, ptr %7, align 8, !tbaa !9
  %14892 = load i32, ptr %12, align 4, !tbaa !5
  %14893 = load i32, ptr %8, align 4, !tbaa !5
  %14894 = mul nsw i32 26, %14893
  %14895 = add nsw i32 %14892, %14894
  %14896 = sext i32 %14895 to i64
  %14897 = getelementptr inbounds double, ptr %14891, i64 %14896
  %14898 = load double, ptr %14897, align 8, !tbaa !11
  %14899 = call double @llvm.fmuladd.f64(double 0x3CA63FFFFFFFFFFF, double %14898, double %14890)
  %14900 = load ptr, ptr %7, align 8, !tbaa !9
  %14901 = load i32, ptr %12, align 4, !tbaa !5
  %14902 = load i32, ptr %8, align 4, !tbaa !5
  %14903 = mul nsw i32 27, %14902
  %14904 = add nsw i32 %14901, %14903
  %14905 = sext i32 %14904 to i64
  %14906 = getelementptr inbounds double, ptr %14900, i64 %14905
  %14907 = load double, ptr %14906, align 8, !tbaa !11
  %14908 = call double @llvm.fmuladd.f64(double 0x3CA4000000000001, double %14907, double %14899)
  %14909 = load ptr, ptr %7, align 8, !tbaa !9
  %14910 = load i32, ptr %12, align 4, !tbaa !5
  %14911 = load i32, ptr %8, align 4, !tbaa !5
  %14912 = mul nsw i32 28, %14911
  %14913 = add nsw i32 %14910, %14912
  %14914 = sext i32 %14913 to i64
  %14915 = getelementptr inbounds double, ptr %14909, i64 %14914
  %14916 = load double, ptr %14915, align 8, !tbaa !11
  %14917 = call double @llvm.fmuladd.f64(double 0x3C92000000000000, double %14916, double %14908)
  %14918 = load ptr, ptr %7, align 8, !tbaa !9
  %14919 = load i32, ptr %12, align 4, !tbaa !5
  %14920 = load i32, ptr %8, align 4, !tbaa !5
  %14921 = mul nsw i32 29, %14920
  %14922 = add nsw i32 %14919, %14921
  %14923 = sext i32 %14922 to i64
  %14924 = getelementptr inbounds double, ptr %14918, i64 %14923
  %14925 = load double, ptr %14924, align 8, !tbaa !11
  %14926 = call double @llvm.fmuladd.f64(double 0xBC9C000000000000, double %14925, double %14917)
  %14927 = load ptr, ptr %7, align 8, !tbaa !9
  %14928 = load i32, ptr %12, align 4, !tbaa !5
  %14929 = load i32, ptr %8, align 4, !tbaa !5
  %14930 = mul nsw i32 30, %14929
  %14931 = add nsw i32 %14928, %14930
  %14932 = sext i32 %14931 to i64
  %14933 = getelementptr inbounds double, ptr %14927, i64 %14932
  %14934 = load double, ptr %14933, align 8, !tbaa !11
  %14935 = call double @llvm.fmuladd.f64(double 0x3CA8800000000000, double %14934, double %14926)
  %14936 = load ptr, ptr %7, align 8, !tbaa !9
  %14937 = load i32, ptr %12, align 4, !tbaa !5
  %14938 = load i32, ptr %8, align 4, !tbaa !5
  %14939 = mul nsw i32 31, %14938
  %14940 = add nsw i32 %14937, %14939
  %14941 = sext i32 %14940 to i64
  %14942 = getelementptr inbounds double, ptr %14936, i64 %14941
  %14943 = load double, ptr %14942, align 8, !tbaa !11
  %14944 = call double @llvm.fmuladd.f64(double 0xBC8E000000000000, double %14943, double %14935)
  %14945 = load ptr, ptr %7, align 8, !tbaa !9
  %14946 = load i32, ptr %12, align 4, !tbaa !5
  %14947 = load i32, ptr %8, align 4, !tbaa !5
  %14948 = mul nsw i32 32, %14947
  %14949 = add nsw i32 %14946, %14948
  %14950 = sext i32 %14949 to i64
  %14951 = getelementptr inbounds double, ptr %14945, i64 %14950
  %14952 = load double, ptr %14951, align 8, !tbaa !11
  %14953 = call double @llvm.fmuladd.f64(double 0x3C90E00000000000, double %14952, double %14944)
  %14954 = load ptr, ptr %7, align 8, !tbaa !9
  %14955 = load i32, ptr %12, align 4, !tbaa !5
  %14956 = load i32, ptr %8, align 4, !tbaa !5
  %14957 = mul nsw i32 33, %14956
  %14958 = add nsw i32 %14955, %14957
  %14959 = sext i32 %14958 to i64
  %14960 = getelementptr inbounds double, ptr %14954, i64 %14959
  %14961 = load double, ptr %14960, align 8, !tbaa !11
  %14962 = call double @llvm.fmuladd.f64(double 0x3C97200000000000, double %14961, double %14953)
  %14963 = load ptr, ptr %7, align 8, !tbaa !9
  %14964 = load i32, ptr %12, align 4, !tbaa !5
  %14965 = load i32, ptr %8, align 4, !tbaa !5
  %14966 = mul nsw i32 34, %14965
  %14967 = add nsw i32 %14964, %14966
  %14968 = sext i32 %14967 to i64
  %14969 = getelementptr inbounds double, ptr %14963, i64 %14968
  %14970 = load double, ptr %14969, align 8, !tbaa !11
  %14971 = call double @llvm.fmuladd.f64(double 0xBC89FFFFFFFFFFFF, double %14970, double %14962)
  %14972 = load ptr, ptr %7, align 8, !tbaa !9
  %14973 = load i32, ptr %12, align 4, !tbaa !5
  %14974 = load i32, ptr %8, align 4, !tbaa !5
  %14975 = mul nsw i32 35, %14974
  %14976 = add nsw i32 %14973, %14975
  %14977 = sext i32 %14976 to i64
  %14978 = getelementptr inbounds double, ptr %14972, i64 %14977
  %14979 = load double, ptr %14978, align 8, !tbaa !11
  %14980 = call double @llvm.fmuladd.f64(double 0xBC9A800000000000, double %14979, double %14971)
  %14981 = load ptr, ptr %7, align 8, !tbaa !9
  %14982 = load i32, ptr %12, align 4, !tbaa !5
  %14983 = load i32, ptr %8, align 4, !tbaa !5
  %14984 = mul nsw i32 36, %14983
  %14985 = add nsw i32 %14982, %14984
  %14986 = sext i32 %14985 to i64
  %14987 = getelementptr inbounds double, ptr %14981, i64 %14986
  %14988 = load double, ptr %14987, align 8, !tbaa !11
  %14989 = call double @llvm.fmuladd.f64(double 0xBC94400000000000, double %14988, double %14980)
  %14990 = load ptr, ptr %7, align 8, !tbaa !9
  %14991 = load i32, ptr %12, align 4, !tbaa !5
  %14992 = load i32, ptr %8, align 4, !tbaa !5
  %14993 = mul nsw i32 37, %14992
  %14994 = add nsw i32 %14991, %14993
  %14995 = sext i32 %14994 to i64
  %14996 = getelementptr inbounds double, ptr %14990, i64 %14995
  %14997 = load double, ptr %14996, align 8, !tbaa !11
  %14998 = call double @llvm.fmuladd.f64(double 0xBC91400000000000, double %14997, double %14989)
  %14999 = load ptr, ptr %7, align 8, !tbaa !9
  %15000 = load i32, ptr %12, align 4, !tbaa !5
  %15001 = load i32, ptr %8, align 4, !tbaa !5
  %15002 = mul nsw i32 38, %15001
  %15003 = add nsw i32 %15000, %15002
  %15004 = sext i32 %15003 to i64
  %15005 = getelementptr inbounds double, ptr %14999, i64 %15004
  %15006 = load double, ptr %15005, align 8, !tbaa !11
  %15007 = call double @llvm.fmuladd.f64(double 0xBC9EFFFFFFFFFFFD, double %15006, double %14998)
  %15008 = load ptr, ptr %7, align 8, !tbaa !9
  %15009 = load i32, ptr %12, align 4, !tbaa !5
  %15010 = load i32, ptr %8, align 4, !tbaa !5
  %15011 = mul nsw i32 39, %15010
  %15012 = add nsw i32 %15009, %15011
  %15013 = sext i32 %15012 to i64
  %15014 = getelementptr inbounds double, ptr %15008, i64 %15013
  %15015 = load double, ptr %15014, align 8, !tbaa !11
  %15016 = call double @llvm.fmuladd.f64(double 0x3C79FFFFFFFFFFFF, double %15015, double %15007)
  store double %15016, ptr %11, align 8, !tbaa !11
  %15017 = load double, ptr %11, align 8, !tbaa !11
  %15018 = load ptr, ptr %9, align 8, !tbaa !9
  %15019 = load i32, ptr %12, align 4, !tbaa !5
  %15020 = load i32, ptr %10, align 4, !tbaa !5
  %15021 = mul nsw i32 41, %15020
  %15022 = add nsw i32 %15019, %15021
  %15023 = sext i32 %15022 to i64
  %15024 = getelementptr inbounds double, ptr %15018, i64 %15023
  store double %15017, ptr %15024, align 8, !tbaa !11
  %15025 = load ptr, ptr %7, align 8, !tbaa !9
  %15026 = load i32, ptr %12, align 4, !tbaa !5
  %15027 = load i32, ptr %8, align 4, !tbaa !5
  %15028 = mul nsw i32 0, %15027
  %15029 = add nsw i32 %15026, %15028
  %15030 = sext i32 %15029 to i64
  %15031 = getelementptr inbounds double, ptr %15025, i64 %15030
  %15032 = load double, ptr %15031, align 8, !tbaa !11
  %15033 = load ptr, ptr %7, align 8, !tbaa !9
  %15034 = load i32, ptr %12, align 4, !tbaa !5
  %15035 = load i32, ptr %8, align 4, !tbaa !5
  %15036 = mul nsw i32 1, %15035
  %15037 = add nsw i32 %15034, %15036
  %15038 = sext i32 %15037 to i64
  %15039 = getelementptr inbounds double, ptr %15033, i64 %15038
  %15040 = load double, ptr %15039, align 8, !tbaa !11
  %15041 = fmul double 0xBCB6C00000000000, %15040
  %15042 = call double @llvm.fmuladd.f64(double 0x3CC4E00000000000, double %15032, double %15041)
  %15043 = load ptr, ptr %7, align 8, !tbaa !9
  %15044 = load i32, ptr %12, align 4, !tbaa !5
  %15045 = load i32, ptr %8, align 4, !tbaa !5
  %15046 = mul nsw i32 2, %15045
  %15047 = add nsw i32 %15044, %15046
  %15048 = sext i32 %15047 to i64
  %15049 = getelementptr inbounds double, ptr %15043, i64 %15048
  %15050 = load double, ptr %15049, align 8, !tbaa !11
  %15051 = call double @llvm.fmuladd.f64(double 0xBC8E800000000001, double %15050, double %15042)
  %15052 = load ptr, ptr %7, align 8, !tbaa !9
  %15053 = load i32, ptr %12, align 4, !tbaa !5
  %15054 = load i32, ptr %8, align 4, !tbaa !5
  %15055 = mul nsw i32 3, %15054
  %15056 = add nsw i32 %15053, %15055
  %15057 = sext i32 %15056 to i64
  %15058 = getelementptr inbounds double, ptr %15052, i64 %15057
  %15059 = load double, ptr %15058, align 8, !tbaa !11
  %15060 = call double @llvm.fmuladd.f64(double 0x3C67FFFFFFFFFFFE, double %15059, double %15051)
  %15061 = load ptr, ptr %7, align 8, !tbaa !9
  %15062 = load i32, ptr %12, align 4, !tbaa !5
  %15063 = load i32, ptr %8, align 4, !tbaa !5
  %15064 = mul nsw i32 4, %15063
  %15065 = add nsw i32 %15062, %15064
  %15066 = sext i32 %15065 to i64
  %15067 = getelementptr inbounds double, ptr %15061, i64 %15066
  %15068 = load double, ptr %15067, align 8, !tbaa !11
  %15069 = call double @llvm.fmuladd.f64(double 0xBCC2C00000000000, double %15068, double %15060)
  %15070 = load ptr, ptr %7, align 8, !tbaa !9
  %15071 = load i32, ptr %12, align 4, !tbaa !5
  %15072 = load i32, ptr %8, align 4, !tbaa !5
  %15073 = mul nsw i32 5, %15072
  %15074 = add nsw i32 %15071, %15073
  %15075 = sext i32 %15074 to i64
  %15076 = getelementptr inbounds double, ptr %15070, i64 %15075
  %15077 = load double, ptr %15076, align 8, !tbaa !11
  %15078 = call double @llvm.fmuladd.f64(double 0xBC50000000000000, double %15077, double %15069)
  %15079 = load ptr, ptr %7, align 8, !tbaa !9
  %15080 = load i32, ptr %12, align 4, !tbaa !5
  %15081 = load i32, ptr %8, align 4, !tbaa !5
  %15082 = mul nsw i32 6, %15081
  %15083 = add nsw i32 %15080, %15082
  %15084 = sext i32 %15083 to i64
  %15085 = getelementptr inbounds double, ptr %15079, i64 %15084
  %15086 = load double, ptr %15085, align 8, !tbaa !11
  %15087 = call double @llvm.fmuladd.f64(double 0x3C8E800000000001, double %15086, double %15078)
  %15088 = load ptr, ptr %7, align 8, !tbaa !9
  %15089 = load i32, ptr %12, align 4, !tbaa !5
  %15090 = load i32, ptr %8, align 4, !tbaa !5
  %15091 = mul nsw i32 7, %15090
  %15092 = add nsw i32 %15089, %15091
  %15093 = sext i32 %15092 to i64
  %15094 = getelementptr inbounds double, ptr %15088, i64 %15093
  %15095 = load double, ptr %15094, align 8, !tbaa !11
  %15096 = call double @llvm.fmuladd.f64(double 0x3C9BC00000000000, double %15095, double %15087)
  %15097 = load ptr, ptr %7, align 8, !tbaa !9
  %15098 = load i32, ptr %12, align 4, !tbaa !5
  %15099 = load i32, ptr %8, align 4, !tbaa !5
  %15100 = mul nsw i32 8, %15099
  %15101 = add nsw i32 %15098, %15100
  %15102 = sext i32 %15101 to i64
  %15103 = getelementptr inbounds double, ptr %15097, i64 %15102
  %15104 = load double, ptr %15103, align 8, !tbaa !11
  %15105 = call double @llvm.fmuladd.f64(double 0x3CA0800000000001, double %15104, double %15096)
  %15106 = load ptr, ptr %7, align 8, !tbaa !9
  %15107 = load i32, ptr %12, align 4, !tbaa !5
  %15108 = load i32, ptr %8, align 4, !tbaa !5
  %15109 = mul nsw i32 9, %15108
  %15110 = add nsw i32 %15107, %15109
  %15111 = sext i32 %15110 to i64
  %15112 = getelementptr inbounds double, ptr %15106, i64 %15111
  %15113 = load double, ptr %15112, align 8, !tbaa !11
  %15114 = call double @llvm.fmuladd.f64(double 0x3CAB800000000001, double %15113, double %15105)
  %15115 = load ptr, ptr %7, align 8, !tbaa !9
  %15116 = load i32, ptr %12, align 4, !tbaa !5
  %15117 = load i32, ptr %8, align 4, !tbaa !5
  %15118 = mul nsw i32 10, %15117
  %15119 = add nsw i32 %15116, %15118
  %15120 = sext i32 %15119 to i64
  %15121 = getelementptr inbounds double, ptr %15115, i64 %15120
  %15122 = load double, ptr %15121, align 8, !tbaa !11
  %15123 = call double @llvm.fmuladd.f64(double 0xBFE333710B32A29E, double %15122, double %15114)
  %15124 = load ptr, ptr %7, align 8, !tbaa !9
  %15125 = load i32, ptr %12, align 4, !tbaa !5
  %15126 = load i32, ptr %8, align 4, !tbaa !5
  %15127 = mul nsw i32 11, %15126
  %15128 = add nsw i32 %15125, %15127
  %15129 = sext i32 %15128 to i64
  %15130 = getelementptr inbounds double, ptr %15124, i64 %15129
  %15131 = load double, ptr %15130, align 8, !tbaa !11
  %15132 = call double @llvm.fmuladd.f64(double 0x3FA87D764354850E, double %15131, double %15123)
  %15133 = load ptr, ptr %7, align 8, !tbaa !9
  %15134 = load i32, ptr %12, align 4, !tbaa !5
  %15135 = load i32, ptr %8, align 4, !tbaa !5
  %15136 = mul nsw i32 12, %15135
  %15137 = add nsw i32 %15134, %15136
  %15138 = sext i32 %15137 to i64
  %15139 = getelementptr inbounds double, ptr %15133, i64 %15138
  %15140 = load double, ptr %15139, align 8, !tbaa !11
  %15141 = call double @llvm.fmuladd.f64(double 0xBFBEED13A9F0D910, double %15140, double %15132)
  %15142 = load ptr, ptr %7, align 8, !tbaa !9
  %15143 = load i32, ptr %12, align 4, !tbaa !5
  %15144 = load i32, ptr %8, align 4, !tbaa !5
  %15145 = mul nsw i32 13, %15144
  %15146 = add nsw i32 %15143, %15145
  %15147 = sext i32 %15146 to i64
  %15148 = getelementptr inbounds double, ptr %15142, i64 %15147
  %15149 = load double, ptr %15148, align 8, !tbaa !11
  %15150 = call double @llvm.fmuladd.f64(double 0xBFA352D4DB969BFC, double %15149, double %15141)
  %15151 = load ptr, ptr %7, align 8, !tbaa !9
  %15152 = load i32, ptr %12, align 4, !tbaa !5
  %15153 = load i32, ptr %8, align 4, !tbaa !5
  %15154 = mul nsw i32 14, %15153
  %15155 = add nsw i32 %15152, %15154
  %15156 = sext i32 %15155 to i64
  %15157 = getelementptr inbounds double, ptr %15151, i64 %15156
  %15158 = load double, ptr %15157, align 8, !tbaa !11
  %15159 = call double @llvm.fmuladd.f64(double 0x3FD35DAE88CBA644, double %15158, double %15150)
  %15160 = load ptr, ptr %7, align 8, !tbaa !9
  %15161 = load i32, ptr %12, align 4, !tbaa !5
  %15162 = load i32, ptr %8, align 4, !tbaa !5
  %15163 = mul nsw i32 15, %15162
  %15164 = add nsw i32 %15161, %15163
  %15165 = sext i32 %15164 to i64
  %15166 = getelementptr inbounds double, ptr %15160, i64 %15165
  %15167 = load double, ptr %15166, align 8, !tbaa !11
  %15168 = call double @llvm.fmuladd.f64(double 0x3FC36A9134CD3C4D, double %15167, double %15159)
  %15169 = load ptr, ptr %7, align 8, !tbaa !9
  %15170 = load i32, ptr %12, align 4, !tbaa !5
  %15171 = load i32, ptr %8, align 4, !tbaa !5
  %15172 = mul nsw i32 16, %15171
  %15173 = add nsw i32 %15170, %15172
  %15174 = sext i32 %15173 to i64
  %15175 = getelementptr inbounds double, ptr %15169, i64 %15174
  %15176 = load double, ptr %15175, align 8, !tbaa !11
  %15177 = call double @llvm.fmuladd.f64(double 0x3F9854E0ADA34B16, double %15176, double %15168)
  %15178 = load ptr, ptr %7, align 8, !tbaa !9
  %15179 = load i32, ptr %12, align 4, !tbaa !5
  %15180 = load i32, ptr %8, align 4, !tbaa !5
  %15181 = mul nsw i32 17, %15180
  %15182 = add nsw i32 %15179, %15181
  %15183 = sext i32 %15182 to i64
  %15184 = getelementptr inbounds double, ptr %15178, i64 %15183
  %15185 = load double, ptr %15184, align 8, !tbaa !11
  %15186 = call double @llvm.fmuladd.f64(double 0x3FC27B05E24EC5F8, double %15185, double %15177)
  %15187 = load ptr, ptr %7, align 8, !tbaa !9
  %15188 = load i32, ptr %12, align 4, !tbaa !5
  %15189 = load i32, ptr %8, align 4, !tbaa !5
  %15190 = mul nsw i32 18, %15189
  %15191 = add nsw i32 %15188, %15190
  %15192 = sext i32 %15191 to i64
  %15193 = getelementptr inbounds double, ptr %15187, i64 %15192
  %15194 = load double, ptr %15193, align 8, !tbaa !11
  %15195 = call double @llvm.fmuladd.f64(double 0x3FF670C5F1F4C932, double %15194, double %15186)
  %15196 = load ptr, ptr %7, align 8, !tbaa !9
  %15197 = load i32, ptr %12, align 4, !tbaa !5
  %15198 = load i32, ptr %8, align 4, !tbaa !5
  %15199 = mul nsw i32 19, %15198
  %15200 = add nsw i32 %15197, %15199
  %15201 = sext i32 %15200 to i64
  %15202 = getelementptr inbounds double, ptr %15196, i64 %15201
  %15203 = load double, ptr %15202, align 8, !tbaa !11
  %15204 = call double @llvm.fmuladd.f64(double 0xBFD41C0D131D4291, double %15203, double %15195)
  %15205 = load ptr, ptr %7, align 8, !tbaa !9
  %15206 = load i32, ptr %12, align 4, !tbaa !5
  %15207 = load i32, ptr %8, align 4, !tbaa !5
  %15208 = mul nsw i32 20, %15207
  %15209 = add nsw i32 %15206, %15208
  %15210 = sext i32 %15209 to i64
  %15211 = getelementptr inbounds double, ptr %15205, i64 %15210
  %15212 = load double, ptr %15211, align 8, !tbaa !11
  %15213 = call double @llvm.fmuladd.f64(double 0xBCAE000000000002, double %15212, double %15204)
  %15214 = load ptr, ptr %7, align 8, !tbaa !9
  %15215 = load i32, ptr %12, align 4, !tbaa !5
  %15216 = load i32, ptr %8, align 4, !tbaa !5
  %15217 = mul nsw i32 21, %15216
  %15218 = add nsw i32 %15215, %15217
  %15219 = sext i32 %15218 to i64
  %15220 = getelementptr inbounds double, ptr %15214, i64 %15219
  %15221 = load double, ptr %15220, align 8, !tbaa !11
  %15222 = call double @llvm.fmuladd.f64(double 0x3CBA000000000000, double %15221, double %15213)
  %15223 = load ptr, ptr %7, align 8, !tbaa !9
  %15224 = load i32, ptr %12, align 4, !tbaa !5
  %15225 = load i32, ptr %8, align 4, !tbaa !5
  %15226 = mul nsw i32 22, %15225
  %15227 = add nsw i32 %15224, %15226
  %15228 = sext i32 %15227 to i64
  %15229 = getelementptr inbounds double, ptr %15223, i64 %15228
  %15230 = load double, ptr %15229, align 8, !tbaa !11
  %15231 = call double @llvm.fmuladd.f64(double 0x3CA4C00000000000, double %15230, double %15222)
  %15232 = load ptr, ptr %7, align 8, !tbaa !9
  %15233 = load i32, ptr %12, align 4, !tbaa !5
  %15234 = load i32, ptr %8, align 4, !tbaa !5
  %15235 = mul nsw i32 23, %15234
  %15236 = add nsw i32 %15233, %15235
  %15237 = sext i32 %15236 to i64
  %15238 = getelementptr inbounds double, ptr %15232, i64 %15237
  %15239 = load double, ptr %15238, align 8, !tbaa !11
  %15240 = call double @llvm.fmuladd.f64(double 0xBCB93FFFFFFFFFFF, double %15239, double %15231)
  %15241 = load ptr, ptr %7, align 8, !tbaa !9
  %15242 = load i32, ptr %12, align 4, !tbaa !5
  %15243 = load i32, ptr %8, align 4, !tbaa !5
  %15244 = mul nsw i32 24, %15243
  %15245 = add nsw i32 %15242, %15244
  %15246 = sext i32 %15245 to i64
  %15247 = getelementptr inbounds double, ptr %15241, i64 %15246
  %15248 = load double, ptr %15247, align 8, !tbaa !11
  %15249 = call double @llvm.fmuladd.f64(double 0xBC94000000000000, double %15248, double %15240)
  %15250 = load ptr, ptr %7, align 8, !tbaa !9
  %15251 = load i32, ptr %12, align 4, !tbaa !5
  %15252 = load i32, ptr %8, align 4, !tbaa !5
  %15253 = mul nsw i32 25, %15252
  %15254 = add nsw i32 %15251, %15253
  %15255 = sext i32 %15254 to i64
  %15256 = getelementptr inbounds double, ptr %15250, i64 %15255
  %15257 = load double, ptr %15256, align 8, !tbaa !11
  %15258 = call double @llvm.fmuladd.f64(double 0x3CA2000000000000, double %15257, double %15249)
  %15259 = load ptr, ptr %7, align 8, !tbaa !9
  %15260 = load i32, ptr %12, align 4, !tbaa !5
  %15261 = load i32, ptr %8, align 4, !tbaa !5
  %15262 = mul nsw i32 26, %15261
  %15263 = add nsw i32 %15260, %15262
  %15264 = sext i32 %15263 to i64
  %15265 = getelementptr inbounds double, ptr %15259, i64 %15264
  %15266 = load double, ptr %15265, align 8, !tbaa !11
  %15267 = call double @llvm.fmuladd.f64(double 0xBCA9000000000000, double %15266, double %15258)
  %15268 = load ptr, ptr %7, align 8, !tbaa !9
  %15269 = load i32, ptr %12, align 4, !tbaa !5
  %15270 = load i32, ptr %8, align 4, !tbaa !5
  %15271 = mul nsw i32 27, %15270
  %15272 = add nsw i32 %15269, %15271
  %15273 = sext i32 %15272 to i64
  %15274 = getelementptr inbounds double, ptr %15268, i64 %15273
  %15275 = load double, ptr %15274, align 8, !tbaa !11
  %15276 = call double @llvm.fmuladd.f64(double 0x3CB77FFFFFFFFFFF, double %15275, double %15267)
  %15277 = load ptr, ptr %7, align 8, !tbaa !9
  %15278 = load i32, ptr %12, align 4, !tbaa !5
  %15279 = load i32, ptr %8, align 4, !tbaa !5
  %15280 = mul nsw i32 28, %15279
  %15281 = add nsw i32 %15278, %15280
  %15282 = sext i32 %15281 to i64
  %15283 = getelementptr inbounds double, ptr %15277, i64 %15282
  %15284 = load double, ptr %15283, align 8, !tbaa !11
  %15285 = call double @llvm.fmuladd.f64(double 0x3CB2000000000000, double %15284, double %15276)
  %15286 = load ptr, ptr %7, align 8, !tbaa !9
  %15287 = load i32, ptr %12, align 4, !tbaa !5
  %15288 = load i32, ptr %8, align 4, !tbaa !5
  %15289 = mul nsw i32 29, %15288
  %15290 = add nsw i32 %15287, %15289
  %15291 = sext i32 %15290 to i64
  %15292 = getelementptr inbounds double, ptr %15286, i64 %15291
  %15293 = load double, ptr %15292, align 8, !tbaa !11
  %15294 = call double @llvm.fmuladd.f64(double 0x3C9C000000000000, double %15293, double %15285)
  %15295 = load ptr, ptr %7, align 8, !tbaa !9
  %15296 = load i32, ptr %12, align 4, !tbaa !5
  %15297 = load i32, ptr %8, align 4, !tbaa !5
  %15298 = mul nsw i32 30, %15297
  %15299 = add nsw i32 %15296, %15298
  %15300 = sext i32 %15299 to i64
  %15301 = getelementptr inbounds double, ptr %15295, i64 %15300
  %15302 = load double, ptr %15301, align 8, !tbaa !11
  %15303 = call double @llvm.fmuladd.f64(double 0xBCBAFFFFFFFFFFFF, double %15302, double %15294)
  %15304 = load ptr, ptr %7, align 8, !tbaa !9
  %15305 = load i32, ptr %12, align 4, !tbaa !5
  %15306 = load i32, ptr %8, align 4, !tbaa !5
  %15307 = mul nsw i32 31, %15306
  %15308 = add nsw i32 %15305, %15307
  %15309 = sext i32 %15308 to i64
  %15310 = getelementptr inbounds double, ptr %15304, i64 %15309
  %15311 = load double, ptr %15310, align 8, !tbaa !11
  %15312 = call double @llvm.fmuladd.f64(double 0xBC98000000000000, double %15311, double %15303)
  %15313 = load ptr, ptr %7, align 8, !tbaa !9
  %15314 = load i32, ptr %12, align 4, !tbaa !5
  %15315 = load i32, ptr %8, align 4, !tbaa !5
  %15316 = mul nsw i32 32, %15315
  %15317 = add nsw i32 %15314, %15316
  %15318 = sext i32 %15317 to i64
  %15319 = getelementptr inbounds double, ptr %15313, i64 %15318
  %15320 = load double, ptr %15319, align 8, !tbaa !11
  %15321 = call double @llvm.fmuladd.f64(double 0x3C8C800000000000, double %15320, double %15312)
  %15322 = load ptr, ptr %7, align 8, !tbaa !9
  %15323 = load i32, ptr %12, align 4, !tbaa !5
  %15324 = load i32, ptr %8, align 4, !tbaa !5
  %15325 = mul nsw i32 33, %15324
  %15326 = add nsw i32 %15323, %15325
  %15327 = sext i32 %15326 to i64
  %15328 = getelementptr inbounds double, ptr %15322, i64 %15327
  %15329 = load double, ptr %15328, align 8, !tbaa !11
  %15330 = call double @llvm.fmuladd.f64(double 0x3CB4700000000001, double %15329, double %15321)
  %15331 = load ptr, ptr %7, align 8, !tbaa !9
  %15332 = load i32, ptr %12, align 4, !tbaa !5
  %15333 = load i32, ptr %8, align 4, !tbaa !5
  %15334 = mul nsw i32 34, %15333
  %15335 = add nsw i32 %15332, %15334
  %15336 = sext i32 %15335 to i64
  %15337 = getelementptr inbounds double, ptr %15331, i64 %15336
  %15338 = load double, ptr %15337, align 8, !tbaa !11
  %15339 = call double @llvm.fmuladd.f64(double 0xBCA1000000000001, double %15338, double %15330)
  %15340 = load ptr, ptr %7, align 8, !tbaa !9
  %15341 = load i32, ptr %12, align 4, !tbaa !5
  %15342 = load i32, ptr %8, align 4, !tbaa !5
  %15343 = mul nsw i32 35, %15342
  %15344 = add nsw i32 %15341, %15343
  %15345 = sext i32 %15344 to i64
  %15346 = getelementptr inbounds double, ptr %15340, i64 %15345
  %15347 = load double, ptr %15346, align 8, !tbaa !11
  %15348 = call double @llvm.fmuladd.f64(double 0x3CAC800000000000, double %15347, double %15339)
  %15349 = load ptr, ptr %7, align 8, !tbaa !9
  %15350 = load i32, ptr %12, align 4, !tbaa !5
  %15351 = load i32, ptr %8, align 4, !tbaa !5
  %15352 = mul nsw i32 36, %15351
  %15353 = add nsw i32 %15350, %15352
  %15354 = sext i32 %15353 to i64
  %15355 = getelementptr inbounds double, ptr %15349, i64 %15354
  %15356 = load double, ptr %15355, align 8, !tbaa !11
  %15357 = call double @llvm.fmuladd.f64(double 0x3C9A400000000000, double %15356, double %15348)
  %15358 = load ptr, ptr %7, align 8, !tbaa !9
  %15359 = load i32, ptr %12, align 4, !tbaa !5
  %15360 = load i32, ptr %8, align 4, !tbaa !5
  %15361 = mul nsw i32 37, %15360
  %15362 = add nsw i32 %15359, %15361
  %15363 = sext i32 %15362 to i64
  %15364 = getelementptr inbounds double, ptr %15358, i64 %15363
  %15365 = load double, ptr %15364, align 8, !tbaa !11
  %15366 = call double @llvm.fmuladd.f64(double 0xBCB1700000000000, double %15365, double %15357)
  %15367 = load ptr, ptr %7, align 8, !tbaa !9
  %15368 = load i32, ptr %12, align 4, !tbaa !5
  %15369 = load i32, ptr %8, align 4, !tbaa !5
  %15370 = mul nsw i32 38, %15369
  %15371 = add nsw i32 %15368, %15370
  %15372 = sext i32 %15371 to i64
  %15373 = getelementptr inbounds double, ptr %15367, i64 %15372
  %15374 = load double, ptr %15373, align 8, !tbaa !11
  %15375 = call double @llvm.fmuladd.f64(double 0xBC9DFFFFFFFFFFFE, double %15374, double %15366)
  %15376 = load ptr, ptr %7, align 8, !tbaa !9
  %15377 = load i32, ptr %12, align 4, !tbaa !5
  %15378 = load i32, ptr %8, align 4, !tbaa !5
  %15379 = mul nsw i32 39, %15378
  %15380 = add nsw i32 %15377, %15379
  %15381 = sext i32 %15380 to i64
  %15382 = getelementptr inbounds double, ptr %15376, i64 %15381
  %15383 = load double, ptr %15382, align 8, !tbaa !11
  %15384 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %15383, double %15375)
  store double %15384, ptr %11, align 8, !tbaa !11
  %15385 = load double, ptr %11, align 8, !tbaa !11
  %15386 = load ptr, ptr %9, align 8, !tbaa !9
  %15387 = load i32, ptr %12, align 4, !tbaa !5
  %15388 = load i32, ptr %10, align 4, !tbaa !5
  %15389 = mul nsw i32 42, %15388
  %15390 = add nsw i32 %15387, %15389
  %15391 = sext i32 %15390 to i64
  %15392 = getelementptr inbounds double, ptr %15386, i64 %15391
  store double %15385, ptr %15392, align 8, !tbaa !11
  %15393 = load ptr, ptr %7, align 8, !tbaa !9
  %15394 = load i32, ptr %12, align 4, !tbaa !5
  %15395 = load i32, ptr %8, align 4, !tbaa !5
  %15396 = mul nsw i32 0, %15395
  %15397 = add nsw i32 %15394, %15396
  %15398 = sext i32 %15397 to i64
  %15399 = getelementptr inbounds double, ptr %15393, i64 %15398
  %15400 = load double, ptr %15399, align 8, !tbaa !11
  %15401 = load ptr, ptr %7, align 8, !tbaa !9
  %15402 = load i32, ptr %12, align 4, !tbaa !5
  %15403 = load i32, ptr %8, align 4, !tbaa !5
  %15404 = mul nsw i32 1, %15403
  %15405 = add nsw i32 %15402, %15404
  %15406 = sext i32 %15405 to i64
  %15407 = getelementptr inbounds double, ptr %15401, i64 %15406
  %15408 = load double, ptr %15407, align 8, !tbaa !11
  %15409 = fmul double 0xBCB5000000000000, %15408
  %15410 = call double @llvm.fmuladd.f64(double 0x3CBC000000000000, double %15400, double %15409)
  %15411 = load ptr, ptr %7, align 8, !tbaa !9
  %15412 = load i32, ptr %12, align 4, !tbaa !5
  %15413 = load i32, ptr %8, align 4, !tbaa !5
  %15414 = mul nsw i32 2, %15413
  %15415 = add nsw i32 %15412, %15414
  %15416 = sext i32 %15415 to i64
  %15417 = getelementptr inbounds double, ptr %15411, i64 %15416
  %15418 = load double, ptr %15417, align 8, !tbaa !11
  %15419 = call double @llvm.fmuladd.f64(double 0x3C9CFFFFFFFFFFFF, double %15418, double %15410)
  %15420 = load ptr, ptr %7, align 8, !tbaa !9
  %15421 = load i32, ptr %12, align 4, !tbaa !5
  %15422 = load i32, ptr %8, align 4, !tbaa !5
  %15423 = mul nsw i32 3, %15422
  %15424 = add nsw i32 %15421, %15423
  %15425 = sext i32 %15424 to i64
  %15426 = getelementptr inbounds double, ptr %15420, i64 %15425
  %15427 = load double, ptr %15426, align 8, !tbaa !11
  %15428 = call double @llvm.fmuladd.f64(double 0x3C84000000000000, double %15427, double %15419)
  %15429 = load ptr, ptr %7, align 8, !tbaa !9
  %15430 = load i32, ptr %12, align 4, !tbaa !5
  %15431 = load i32, ptr %8, align 4, !tbaa !5
  %15432 = mul nsw i32 4, %15431
  %15433 = add nsw i32 %15430, %15432
  %15434 = sext i32 %15433 to i64
  %15435 = getelementptr inbounds double, ptr %15429, i64 %15434
  %15436 = load double, ptr %15435, align 8, !tbaa !11
  %15437 = call double @llvm.fmuladd.f64(double 0xBCB7000000000000, double %15436, double %15428)
  %15438 = load ptr, ptr %7, align 8, !tbaa !9
  %15439 = load i32, ptr %12, align 4, !tbaa !5
  %15440 = load i32, ptr %8, align 4, !tbaa !5
  %15441 = mul nsw i32 5, %15440
  %15442 = add nsw i32 %15439, %15441
  %15443 = sext i32 %15442 to i64
  %15444 = getelementptr inbounds double, ptr %15438, i64 %15443
  %15445 = load double, ptr %15444, align 8, !tbaa !11
  %15446 = call double @llvm.fmuladd.f64(double 0x3C98000000000000, double %15445, double %15437)
  %15447 = load ptr, ptr %7, align 8, !tbaa !9
  %15448 = load i32, ptr %12, align 4, !tbaa !5
  %15449 = load i32, ptr %8, align 4, !tbaa !5
  %15450 = mul nsw i32 6, %15449
  %15451 = add nsw i32 %15448, %15450
  %15452 = sext i32 %15451 to i64
  %15453 = getelementptr inbounds double, ptr %15447, i64 %15452
  %15454 = load double, ptr %15453, align 8, !tbaa !11
  %15455 = call double @llvm.fmuladd.f64(double 0x3C95000000000000, double %15454, double %15446)
  %15456 = load ptr, ptr %7, align 8, !tbaa !9
  %15457 = load i32, ptr %12, align 4, !tbaa !5
  %15458 = load i32, ptr %8, align 4, !tbaa !5
  %15459 = mul nsw i32 7, %15458
  %15460 = add nsw i32 %15457, %15459
  %15461 = sext i32 %15460 to i64
  %15462 = getelementptr inbounds double, ptr %15456, i64 %15461
  %15463 = load double, ptr %15462, align 8, !tbaa !11
  %15464 = call double @llvm.fmuladd.f64(double 0x3CA2000000000000, double %15463, double %15455)
  %15465 = load ptr, ptr %7, align 8, !tbaa !9
  %15466 = load i32, ptr %12, align 4, !tbaa !5
  %15467 = load i32, ptr %8, align 4, !tbaa !5
  %15468 = mul nsw i32 8, %15467
  %15469 = add nsw i32 %15466, %15468
  %15470 = sext i32 %15469 to i64
  %15471 = getelementptr inbounds double, ptr %15465, i64 %15470
  %15472 = load double, ptr %15471, align 8, !tbaa !11
  %15473 = call double @llvm.fmuladd.f64(double 0xBC94000000000000, double %15472, double %15464)
  %15474 = load ptr, ptr %7, align 8, !tbaa !9
  %15475 = load i32, ptr %12, align 4, !tbaa !5
  %15476 = load i32, ptr %8, align 4, !tbaa !5
  %15477 = mul nsw i32 9, %15476
  %15478 = add nsw i32 %15475, %15477
  %15479 = sext i32 %15478 to i64
  %15480 = getelementptr inbounds double, ptr %15474, i64 %15479
  %15481 = load double, ptr %15480, align 8, !tbaa !11
  %15482 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %15481, double %15473)
  %15483 = load ptr, ptr %7, align 8, !tbaa !9
  %15484 = load i32, ptr %12, align 4, !tbaa !5
  %15485 = load i32, ptr %8, align 4, !tbaa !5
  %15486 = mul nsw i32 10, %15485
  %15487 = add nsw i32 %15484, %15486
  %15488 = sext i32 %15487 to i64
  %15489 = getelementptr inbounds double, ptr %15483, i64 %15488
  %15490 = load double, ptr %15489, align 8, !tbaa !11
  %15491 = call double @llvm.fmuladd.f64(double 0xBF83152016E0EC50, double %15490, double %15482)
  %15492 = load ptr, ptr %7, align 8, !tbaa !9
  %15493 = load i32, ptr %12, align 4, !tbaa !5
  %15494 = load i32, ptr %8, align 4, !tbaa !5
  %15495 = mul nsw i32 11, %15494
  %15496 = add nsw i32 %15493, %15495
  %15497 = sext i32 %15496 to i64
  %15498 = getelementptr inbounds double, ptr %15492, i64 %15497
  %15499 = load double, ptr %15498, align 8, !tbaa !11
  %15500 = call double @llvm.fmuladd.f64(double 0x3FF4EC1BB3FDC612, double %15499, double %15491)
  %15501 = load ptr, ptr %7, align 8, !tbaa !9
  %15502 = load i32, ptr %12, align 4, !tbaa !5
  %15503 = load i32, ptr %8, align 4, !tbaa !5
  %15504 = mul nsw i32 12, %15503
  %15505 = add nsw i32 %15502, %15504
  %15506 = sext i32 %15505 to i64
  %15507 = getelementptr inbounds double, ptr %15501, i64 %15506
  %15508 = load double, ptr %15507, align 8, !tbaa !11
  %15509 = call double @llvm.fmuladd.f64(double 0xBFB5B58B4F03B1AE, double %15508, double %15500)
  %15510 = load ptr, ptr %7, align 8, !tbaa !9
  %15511 = load i32, ptr %12, align 4, !tbaa !5
  %15512 = load i32, ptr %8, align 4, !tbaa !5
  %15513 = mul nsw i32 13, %15512
  %15514 = add nsw i32 %15511, %15513
  %15515 = sext i32 %15514 to i64
  %15516 = getelementptr inbounds double, ptr %15510, i64 %15515
  %15517 = load double, ptr %15516, align 8, !tbaa !11
  %15518 = call double @llvm.fmuladd.f64(double 0x3F938CE4890DB2A0, double %15517, double %15509)
  %15519 = load ptr, ptr %7, align 8, !tbaa !9
  %15520 = load i32, ptr %12, align 4, !tbaa !5
  %15521 = load i32, ptr %8, align 4, !tbaa !5
  %15522 = mul nsw i32 14, %15521
  %15523 = add nsw i32 %15520, %15522
  %15524 = sext i32 %15523 to i64
  %15525 = getelementptr inbounds double, ptr %15519, i64 %15524
  %15526 = load double, ptr %15525, align 8, !tbaa !11
  %15527 = call double @llvm.fmuladd.f64(double 0x3FD417DEBFC17B15, double %15526, double %15518)
  %15528 = load ptr, ptr %7, align 8, !tbaa !9
  %15529 = load i32, ptr %12, align 4, !tbaa !5
  %15530 = load i32, ptr %8, align 4, !tbaa !5
  %15531 = mul nsw i32 15, %15530
  %15532 = add nsw i32 %15529, %15531
  %15533 = sext i32 %15532 to i64
  %15534 = getelementptr inbounds double, ptr %15528, i64 %15533
  %15535 = load double, ptr %15534, align 8, !tbaa !11
  %15536 = call double @llvm.fmuladd.f64(double 0xBFB49217631F5930, double %15535, double %15527)
  %15537 = load ptr, ptr %7, align 8, !tbaa !9
  %15538 = load i32, ptr %12, align 4, !tbaa !5
  %15539 = load i32, ptr %8, align 4, !tbaa !5
  %15540 = mul nsw i32 16, %15539
  %15541 = add nsw i32 %15538, %15540
  %15542 = sext i32 %15541 to i64
  %15543 = getelementptr inbounds double, ptr %15537, i64 %15542
  %15544 = load double, ptr %15543, align 8, !tbaa !11
  %15545 = call double @llvm.fmuladd.f64(double 0x3F85E50BB681A426, double %15544, double %15536)
  %15546 = load ptr, ptr %7, align 8, !tbaa !9
  %15547 = load i32, ptr %12, align 4, !tbaa !5
  %15548 = load i32, ptr %8, align 4, !tbaa !5
  %15549 = mul nsw i32 17, %15548
  %15550 = add nsw i32 %15547, %15549
  %15551 = sext i32 %15550 to i64
  %15552 = getelementptr inbounds double, ptr %15546, i64 %15551
  %15553 = load double, ptr %15552, align 8, !tbaa !11
  %15554 = call double @llvm.fmuladd.f64(double 0xBF8BDAF699AED00C, double %15553, double %15545)
  %15555 = load ptr, ptr %7, align 8, !tbaa !9
  %15556 = load i32, ptr %12, align 4, !tbaa !5
  %15557 = load i32, ptr %8, align 4, !tbaa !5
  %15558 = mul nsw i32 18, %15557
  %15559 = add nsw i32 %15556, %15558
  %15560 = sext i32 %15559 to i64
  %15561 = getelementptr inbounds double, ptr %15555, i64 %15560
  %15562 = load double, ptr %15561, align 8, !tbaa !11
  %15563 = call double @llvm.fmuladd.f64(double 0x3FCA50C41AB7A31A, double %15562, double %15554)
  %15564 = load ptr, ptr %7, align 8, !tbaa !9
  %15565 = load i32, ptr %12, align 4, !tbaa !5
  %15566 = load i32, ptr %8, align 4, !tbaa !5
  %15567 = mul nsw i32 19, %15566
  %15568 = add nsw i32 %15565, %15567
  %15569 = sext i32 %15568 to i64
  %15570 = getelementptr inbounds double, ptr %15564, i64 %15569
  %15571 = load double, ptr %15570, align 8, !tbaa !11
  %15572 = call double @llvm.fmuladd.f64(double 0xBFE5679E70A6065A, double %15571, double %15563)
  %15573 = load ptr, ptr %7, align 8, !tbaa !9
  %15574 = load i32, ptr %12, align 4, !tbaa !5
  %15575 = load i32, ptr %8, align 4, !tbaa !5
  %15576 = mul nsw i32 20, %15575
  %15577 = add nsw i32 %15574, %15576
  %15578 = sext i32 %15577 to i64
  %15579 = getelementptr inbounds double, ptr %15573, i64 %15578
  %15580 = load double, ptr %15579, align 8, !tbaa !11
  %15581 = call double @llvm.fmuladd.f64(double 0xBCC1000000000000, double %15580, double %15572)
  %15582 = load ptr, ptr %7, align 8, !tbaa !9
  %15583 = load i32, ptr %12, align 4, !tbaa !5
  %15584 = load i32, ptr %8, align 4, !tbaa !5
  %15585 = mul nsw i32 21, %15584
  %15586 = add nsw i32 %15583, %15585
  %15587 = sext i32 %15586 to i64
  %15588 = getelementptr inbounds double, ptr %15582, i64 %15587
  %15589 = load double, ptr %15588, align 8, !tbaa !11
  %15590 = call double @llvm.fmuladd.f64(double 0x3CA8000000000001, double %15589, double %15581)
  %15591 = load ptr, ptr %7, align 8, !tbaa !9
  %15592 = load i32, ptr %12, align 4, !tbaa !5
  %15593 = load i32, ptr %8, align 4, !tbaa !5
  %15594 = mul nsw i32 22, %15593
  %15595 = add nsw i32 %15592, %15594
  %15596 = sext i32 %15595 to i64
  %15597 = getelementptr inbounds double, ptr %15591, i64 %15596
  %15598 = load double, ptr %15597, align 8, !tbaa !11
  %15599 = call double @llvm.fmuladd.f64(double 0x3CB0000000000000, double %15598, double %15590)
  %15600 = load ptr, ptr %7, align 8, !tbaa !9
  %15601 = load i32, ptr %12, align 4, !tbaa !5
  %15602 = load i32, ptr %8, align 4, !tbaa !5
  %15603 = mul nsw i32 23, %15602
  %15604 = add nsw i32 %15601, %15603
  %15605 = sext i32 %15604 to i64
  %15606 = getelementptr inbounds double, ptr %15600, i64 %15605
  %15607 = load double, ptr %15606, align 8, !tbaa !11
  %15608 = call double @llvm.fmuladd.f64(double 0xBC9C000000000000, double %15607, double %15599)
  %15609 = load ptr, ptr %7, align 8, !tbaa !9
  %15610 = load i32, ptr %12, align 4, !tbaa !5
  %15611 = load i32, ptr %8, align 4, !tbaa !5
  %15612 = mul nsw i32 24, %15611
  %15613 = add nsw i32 %15610, %15612
  %15614 = sext i32 %15613 to i64
  %15615 = getelementptr inbounds double, ptr %15609, i64 %15614
  %15616 = load double, ptr %15615, align 8, !tbaa !11
  %15617 = call double @llvm.fmuladd.f64(double 0xBCB8000000000001, double %15616, double %15608)
  %15618 = load ptr, ptr %7, align 8, !tbaa !9
  %15619 = load i32, ptr %12, align 4, !tbaa !5
  %15620 = load i32, ptr %8, align 4, !tbaa !5
  %15621 = mul nsw i32 25, %15620
  %15622 = add nsw i32 %15619, %15621
  %15623 = sext i32 %15622 to i64
  %15624 = getelementptr inbounds double, ptr %15618, i64 %15623
  %15625 = load double, ptr %15624, align 8, !tbaa !11
  %15626 = call double @llvm.fmuladd.f64(double 0x3CA0000000000002, double %15625, double %15617)
  %15627 = load ptr, ptr %7, align 8, !tbaa !9
  %15628 = load i32, ptr %12, align 4, !tbaa !5
  %15629 = load i32, ptr %8, align 4, !tbaa !5
  %15630 = mul nsw i32 26, %15629
  %15631 = add nsw i32 %15628, %15630
  %15632 = sext i32 %15631 to i64
  %15633 = getelementptr inbounds double, ptr %15627, i64 %15632
  %15634 = load double, ptr %15633, align 8, !tbaa !11
  %15635 = call double @llvm.fmuladd.f64(double 0xBCA2000000000000, double %15634, double %15626)
  %15636 = load ptr, ptr %7, align 8, !tbaa !9
  %15637 = load i32, ptr %12, align 4, !tbaa !5
  %15638 = load i32, ptr %8, align 4, !tbaa !5
  %15639 = mul nsw i32 27, %15638
  %15640 = add nsw i32 %15637, %15639
  %15641 = sext i32 %15640 to i64
  %15642 = getelementptr inbounds double, ptr %15636, i64 %15641
  %15643 = load double, ptr %15642, align 8, !tbaa !11
  %15644 = call double @llvm.fmuladd.f64(double 0x3CC4000000000000, double %15643, double %15635)
  %15645 = load ptr, ptr %7, align 8, !tbaa !9
  %15646 = load i32, ptr %12, align 4, !tbaa !5
  %15647 = load i32, ptr %8, align 4, !tbaa !5
  %15648 = mul nsw i32 28, %15647
  %15649 = add nsw i32 %15646, %15648
  %15650 = sext i32 %15649 to i64
  %15651 = getelementptr inbounds double, ptr %15645, i64 %15650
  %15652 = load double, ptr %15651, align 8, !tbaa !11
  %15653 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %15652, double %15644)
  %15654 = load ptr, ptr %7, align 8, !tbaa !9
  %15655 = load i32, ptr %12, align 4, !tbaa !5
  %15656 = load i32, ptr %8, align 4, !tbaa !5
  %15657 = mul nsw i32 29, %15656
  %15658 = add nsw i32 %15655, %15657
  %15659 = sext i32 %15658 to i64
  %15660 = getelementptr inbounds double, ptr %15654, i64 %15659
  %15661 = load double, ptr %15660, align 8, !tbaa !11
  %15662 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %15661, double %15653)
  %15663 = load ptr, ptr %7, align 8, !tbaa !9
  %15664 = load i32, ptr %12, align 4, !tbaa !5
  %15665 = load i32, ptr %8, align 4, !tbaa !5
  %15666 = mul nsw i32 30, %15665
  %15667 = add nsw i32 %15664, %15666
  %15668 = sext i32 %15667 to i64
  %15669 = getelementptr inbounds double, ptr %15663, i64 %15668
  %15670 = load double, ptr %15669, align 8, !tbaa !11
  %15671 = call double @llvm.fmuladd.f64(double 0xBCBE000000000000, double %15670, double %15662)
  %15672 = load ptr, ptr %7, align 8, !tbaa !9
  %15673 = load i32, ptr %12, align 4, !tbaa !5
  %15674 = load i32, ptr %8, align 4, !tbaa !5
  %15675 = mul nsw i32 31, %15674
  %15676 = add nsw i32 %15673, %15675
  %15677 = sext i32 %15676 to i64
  %15678 = getelementptr inbounds double, ptr %15672, i64 %15677
  %15679 = load double, ptr %15678, align 8, !tbaa !11
  %15680 = call double @llvm.fmuladd.f64(double 0x3CAC000000000000, double %15679, double %15671)
  %15681 = load ptr, ptr %7, align 8, !tbaa !9
  %15682 = load i32, ptr %12, align 4, !tbaa !5
  %15683 = load i32, ptr %8, align 4, !tbaa !5
  %15684 = mul nsw i32 32, %15683
  %15685 = add nsw i32 %15682, %15684
  %15686 = sext i32 %15685 to i64
  %15687 = getelementptr inbounds double, ptr %15681, i64 %15686
  %15688 = load double, ptr %15687, align 8, !tbaa !11
  %15689 = call double @llvm.fmuladd.f64(double 0x3C91000000000000, double %15688, double %15680)
  %15690 = load ptr, ptr %7, align 8, !tbaa !9
  %15691 = load i32, ptr %12, align 4, !tbaa !5
  %15692 = load i32, ptr %8, align 4, !tbaa !5
  %15693 = mul nsw i32 33, %15692
  %15694 = add nsw i32 %15691, %15693
  %15695 = sext i32 %15694 to i64
  %15696 = getelementptr inbounds double, ptr %15690, i64 %15695
  %15697 = load double, ptr %15696, align 8, !tbaa !11
  %15698 = call double @llvm.fmuladd.f64(double 0x3C9B000000000000, double %15697, double %15689)
  %15699 = load ptr, ptr %7, align 8, !tbaa !9
  %15700 = load i32, ptr %12, align 4, !tbaa !5
  %15701 = load i32, ptr %8, align 4, !tbaa !5
  %15702 = mul nsw i32 34, %15701
  %15703 = add nsw i32 %15700, %15702
  %15704 = sext i32 %15703 to i64
  %15705 = getelementptr inbounds double, ptr %15699, i64 %15704
  %15706 = load double, ptr %15705, align 8, !tbaa !11
  %15707 = call double @llvm.fmuladd.f64(double 0xBCA9FFFFFFFFFFFE, double %15706, double %15698)
  %15708 = load ptr, ptr %7, align 8, !tbaa !9
  %15709 = load i32, ptr %12, align 4, !tbaa !5
  %15710 = load i32, ptr %8, align 4, !tbaa !5
  %15711 = mul nsw i32 35, %15710
  %15712 = add nsw i32 %15709, %15711
  %15713 = sext i32 %15712 to i64
  %15714 = getelementptr inbounds double, ptr %15708, i64 %15713
  %15715 = load double, ptr %15714, align 8, !tbaa !11
  %15716 = call double @llvm.fmuladd.f64(double 0x3CA5FFFFFFFFFFFF, double %15715, double %15707)
  %15717 = load ptr, ptr %7, align 8, !tbaa !9
  %15718 = load i32, ptr %12, align 4, !tbaa !5
  %15719 = load i32, ptr %8, align 4, !tbaa !5
  %15720 = mul nsw i32 36, %15719
  %15721 = add nsw i32 %15718, %15720
  %15722 = sext i32 %15721 to i64
  %15723 = getelementptr inbounds double, ptr %15717, i64 %15722
  %15724 = load double, ptr %15723, align 8, !tbaa !11
  %15725 = call double @llvm.fmuladd.f64(double 0x3C67FFFFFFFFFFFE, double %15724, double %15716)
  %15726 = load ptr, ptr %7, align 8, !tbaa !9
  %15727 = load i32, ptr %12, align 4, !tbaa !5
  %15728 = load i32, ptr %8, align 4, !tbaa !5
  %15729 = mul nsw i32 37, %15728
  %15730 = add nsw i32 %15727, %15729
  %15731 = sext i32 %15730 to i64
  %15732 = getelementptr inbounds double, ptr %15726, i64 %15731
  %15733 = load double, ptr %15732, align 8, !tbaa !11
  %15734 = call double @llvm.fmuladd.f64(double 0xBCB0C00000000001, double %15733, double %15725)
  %15735 = load ptr, ptr %7, align 8, !tbaa !9
  %15736 = load i32, ptr %12, align 4, !tbaa !5
  %15737 = load i32, ptr %8, align 4, !tbaa !5
  %15738 = mul nsw i32 38, %15737
  %15739 = add nsw i32 %15736, %15738
  %15740 = sext i32 %15739 to i64
  %15741 = getelementptr inbounds double, ptr %15735, i64 %15740
  %15742 = load double, ptr %15741, align 8, !tbaa !11
  %15743 = call double @llvm.fmuladd.f64(double 0x3CA0000000000002, double %15742, double %15734)
  %15744 = load ptr, ptr %7, align 8, !tbaa !9
  %15745 = load i32, ptr %12, align 4, !tbaa !5
  %15746 = load i32, ptr %8, align 4, !tbaa !5
  %15747 = mul nsw i32 39, %15746
  %15748 = add nsw i32 %15745, %15747
  %15749 = sext i32 %15748 to i64
  %15750 = getelementptr inbounds double, ptr %15744, i64 %15749
  %15751 = load double, ptr %15750, align 8, !tbaa !11
  %15752 = call double @llvm.fmuladd.f64(double 0x3C88000000000000, double %15751, double %15743)
  store double %15752, ptr %11, align 8, !tbaa !11
  %15753 = load double, ptr %11, align 8, !tbaa !11
  %15754 = load ptr, ptr %9, align 8, !tbaa !9
  %15755 = load i32, ptr %12, align 4, !tbaa !5
  %15756 = load i32, ptr %10, align 4, !tbaa !5
  %15757 = mul nsw i32 43, %15756
  %15758 = add nsw i32 %15755, %15757
  %15759 = sext i32 %15758 to i64
  %15760 = getelementptr inbounds double, ptr %15754, i64 %15759
  store double %15753, ptr %15760, align 8, !tbaa !11
  %15761 = load ptr, ptr %7, align 8, !tbaa !9
  %15762 = load i32, ptr %12, align 4, !tbaa !5
  %15763 = load i32, ptr %8, align 4, !tbaa !5
  %15764 = mul nsw i32 0, %15763
  %15765 = add nsw i32 %15762, %15764
  %15766 = sext i32 %15765 to i64
  %15767 = getelementptr inbounds double, ptr %15761, i64 %15766
  %15768 = load double, ptr %15767, align 8, !tbaa !11
  %15769 = load ptr, ptr %7, align 8, !tbaa !9
  %15770 = load i32, ptr %12, align 4, !tbaa !5
  %15771 = load i32, ptr %8, align 4, !tbaa !5
  %15772 = mul nsw i32 1, %15771
  %15773 = add nsw i32 %15770, %15772
  %15774 = sext i32 %15773 to i64
  %15775 = getelementptr inbounds double, ptr %15769, i64 %15774
  %15776 = load double, ptr %15775, align 8, !tbaa !11
  %15777 = fmul double 0xBC30000000000000, %15776
  %15778 = call double @llvm.fmuladd.f64(double 0xBC8D000000000001, double %15768, double %15777)
  %15779 = load ptr, ptr %7, align 8, !tbaa !9
  %15780 = load i32, ptr %12, align 4, !tbaa !5
  %15781 = load i32, ptr %8, align 4, !tbaa !5
  %15782 = mul nsw i32 2, %15781
  %15783 = add nsw i32 %15780, %15782
  %15784 = sext i32 %15783 to i64
  %15785 = getelementptr inbounds double, ptr %15779, i64 %15784
  %15786 = load double, ptr %15785, align 8, !tbaa !11
  %15787 = call double @llvm.fmuladd.f64(double 0xBC92C00000000000, double %15786, double %15778)
  %15788 = load ptr, ptr %7, align 8, !tbaa !9
  %15789 = load i32, ptr %12, align 4, !tbaa !5
  %15790 = load i32, ptr %8, align 4, !tbaa !5
  %15791 = mul nsw i32 3, %15790
  %15792 = add nsw i32 %15789, %15791
  %15793 = sext i32 %15792 to i64
  %15794 = getelementptr inbounds double, ptr %15788, i64 %15793
  %15795 = load double, ptr %15794, align 8, !tbaa !11
  %15796 = call double @llvm.fmuladd.f64(double 0x3CAD7FFFFFFFFFFE, double %15795, double %15787)
  %15797 = load ptr, ptr %7, align 8, !tbaa !9
  %15798 = load i32, ptr %12, align 4, !tbaa !5
  %15799 = load i32, ptr %8, align 4, !tbaa !5
  %15800 = mul nsw i32 4, %15799
  %15801 = add nsw i32 %15798, %15800
  %15802 = sext i32 %15801 to i64
  %15803 = getelementptr inbounds double, ptr %15797, i64 %15802
  %15804 = load double, ptr %15803, align 8, !tbaa !11
  %15805 = call double @llvm.fmuladd.f64(double 0xBC80800000000000, double %15804, double %15796)
  %15806 = load ptr, ptr %7, align 8, !tbaa !9
  %15807 = load i32, ptr %12, align 4, !tbaa !5
  %15808 = load i32, ptr %8, align 4, !tbaa !5
  %15809 = mul nsw i32 5, %15808
  %15810 = add nsw i32 %15807, %15809
  %15811 = sext i32 %15810 to i64
  %15812 = getelementptr inbounds double, ptr %15806, i64 %15811
  %15813 = load double, ptr %15812, align 8, !tbaa !11
  %15814 = call double @llvm.fmuladd.f64(double 0x3C98000000000000, double %15813, double %15805)
  %15815 = load ptr, ptr %7, align 8, !tbaa !9
  %15816 = load i32, ptr %12, align 4, !tbaa !5
  %15817 = load i32, ptr %8, align 4, !tbaa !5
  %15818 = mul nsw i32 6, %15817
  %15819 = add nsw i32 %15816, %15818
  %15820 = sext i32 %15819 to i64
  %15821 = getelementptr inbounds double, ptr %15815, i64 %15820
  %15822 = load double, ptr %15821, align 8, !tbaa !11
  %15823 = call double @llvm.fmuladd.f64(double 0x3CADA7FFFFFFFFFE, double %15822, double %15814)
  %15824 = load ptr, ptr %7, align 8, !tbaa !9
  %15825 = load i32, ptr %12, align 4, !tbaa !5
  %15826 = load i32, ptr %8, align 4, !tbaa !5
  %15827 = mul nsw i32 7, %15826
  %15828 = add nsw i32 %15825, %15827
  %15829 = sext i32 %15828 to i64
  %15830 = getelementptr inbounds double, ptr %15824, i64 %15829
  %15831 = load double, ptr %15830, align 8, !tbaa !11
  %15832 = call double @llvm.fmuladd.f64(double 0x3C7DC00000000001, double %15831, double %15823)
  %15833 = load ptr, ptr %7, align 8, !tbaa !9
  %15834 = load i32, ptr %12, align 4, !tbaa !5
  %15835 = load i32, ptr %8, align 4, !tbaa !5
  %15836 = mul nsw i32 8, %15835
  %15837 = add nsw i32 %15834, %15836
  %15838 = sext i32 %15837 to i64
  %15839 = getelementptr inbounds double, ptr %15833, i64 %15838
  %15840 = load double, ptr %15839, align 8, !tbaa !11
  %15841 = call double @llvm.fmuladd.f64(double 0x3C79FFFFFFFFFFFF, double %15840, double %15832)
  %15842 = load ptr, ptr %7, align 8, !tbaa !9
  %15843 = load i32, ptr %12, align 4, !tbaa !5
  %15844 = load i32, ptr %8, align 4, !tbaa !5
  %15845 = mul nsw i32 9, %15844
  %15846 = add nsw i32 %15843, %15845
  %15847 = sext i32 %15846 to i64
  %15848 = getelementptr inbounds double, ptr %15842, i64 %15847
  %15849 = load double, ptr %15848, align 8, !tbaa !11
  %15850 = call double @llvm.fmuladd.f64(double 0xBC9A000000000000, double %15849, double %15841)
  %15851 = load ptr, ptr %7, align 8, !tbaa !9
  %15852 = load i32, ptr %12, align 4, !tbaa !5
  %15853 = load i32, ptr %8, align 4, !tbaa !5
  %15854 = mul nsw i32 10, %15853
  %15855 = add nsw i32 %15852, %15854
  %15856 = sext i32 %15855 to i64
  %15857 = getelementptr inbounds double, ptr %15851, i64 %15856
  %15858 = load double, ptr %15857, align 8, !tbaa !11
  %15859 = call double @llvm.fmuladd.f64(double 0x3C7C000000000000, double %15858, double %15850)
  %15860 = load ptr, ptr %7, align 8, !tbaa !9
  %15861 = load i32, ptr %12, align 4, !tbaa !5
  %15862 = load i32, ptr %8, align 4, !tbaa !5
  %15863 = mul nsw i32 11, %15862
  %15864 = add nsw i32 %15861, %15863
  %15865 = sext i32 %15864 to i64
  %15866 = getelementptr inbounds double, ptr %15860, i64 %15865
  %15867 = load double, ptr %15866, align 8, !tbaa !11
  %15868 = call double @llvm.fmuladd.f64(double 0xBC96000000000000, double %15867, double %15859)
  %15869 = load ptr, ptr %7, align 8, !tbaa !9
  %15870 = load i32, ptr %12, align 4, !tbaa !5
  %15871 = load i32, ptr %8, align 4, !tbaa !5
  %15872 = mul nsw i32 12, %15871
  %15873 = add nsw i32 %15870, %15872
  %15874 = sext i32 %15873 to i64
  %15875 = getelementptr inbounds double, ptr %15869, i64 %15874
  %15876 = load double, ptr %15875, align 8, !tbaa !11
  %15877 = call double @llvm.fmuladd.f64(double 0x3C73800000000000, double %15876, double %15868)
  %15878 = load ptr, ptr %7, align 8, !tbaa !9
  %15879 = load i32, ptr %12, align 4, !tbaa !5
  %15880 = load i32, ptr %8, align 4, !tbaa !5
  %15881 = mul nsw i32 13, %15880
  %15882 = add nsw i32 %15879, %15881
  %15883 = sext i32 %15882 to i64
  %15884 = getelementptr inbounds double, ptr %15878, i64 %15883
  %15885 = load double, ptr %15884, align 8, !tbaa !11
  %15886 = call double @llvm.fmuladd.f64(double 0x3C9E9FFFFFFFFFFD, double %15885, double %15877)
  %15887 = load ptr, ptr %7, align 8, !tbaa !9
  %15888 = load i32, ptr %12, align 4, !tbaa !5
  %15889 = load i32, ptr %8, align 4, !tbaa !5
  %15890 = mul nsw i32 14, %15889
  %15891 = add nsw i32 %15888, %15890
  %15892 = sext i32 %15891 to i64
  %15893 = getelementptr inbounds double, ptr %15887, i64 %15892
  %15894 = load double, ptr %15893, align 8, !tbaa !11
  %15895 = call double @llvm.fmuladd.f64(double 0x3CB1400000000000, double %15894, double %15886)
  %15896 = load ptr, ptr %7, align 8, !tbaa !9
  %15897 = load i32, ptr %12, align 4, !tbaa !5
  %15898 = load i32, ptr %8, align 4, !tbaa !5
  %15899 = mul nsw i32 15, %15898
  %15900 = add nsw i32 %15897, %15899
  %15901 = sext i32 %15900 to i64
  %15902 = getelementptr inbounds double, ptr %15896, i64 %15901
  %15903 = load double, ptr %15902, align 8, !tbaa !11
  %15904 = call double @llvm.fmuladd.f64(double 0x3CA63FFFFFFFFFFF, double %15903, double %15895)
  %15905 = load ptr, ptr %7, align 8, !tbaa !9
  %15906 = load i32, ptr %12, align 4, !tbaa !5
  %15907 = load i32, ptr %8, align 4, !tbaa !5
  %15908 = mul nsw i32 16, %15907
  %15909 = add nsw i32 %15906, %15908
  %15910 = sext i32 %15909 to i64
  %15911 = getelementptr inbounds double, ptr %15905, i64 %15910
  %15912 = load double, ptr %15911, align 8, !tbaa !11
  %15913 = call double @llvm.fmuladd.f64(double 0xBCA95FFFFFFFFFFF, double %15912, double %15904)
  %15914 = load ptr, ptr %7, align 8, !tbaa !9
  %15915 = load i32, ptr %12, align 4, !tbaa !5
  %15916 = load i32, ptr %8, align 4, !tbaa !5
  %15917 = mul nsw i32 17, %15916
  %15918 = add nsw i32 %15915, %15917
  %15919 = sext i32 %15918 to i64
  %15920 = getelementptr inbounds double, ptr %15914, i64 %15919
  %15921 = load double, ptr %15920, align 8, !tbaa !11
  %15922 = call double @llvm.fmuladd.f64(double 0xBCB9C00000000001, double %15921, double %15913)
  %15923 = load ptr, ptr %7, align 8, !tbaa !9
  %15924 = load i32, ptr %12, align 4, !tbaa !5
  %15925 = load i32, ptr %8, align 4, !tbaa !5
  %15926 = mul nsw i32 18, %15925
  %15927 = add nsw i32 %15924, %15926
  %15928 = sext i32 %15927 to i64
  %15929 = getelementptr inbounds double, ptr %15923, i64 %15928
  %15930 = load double, ptr %15929, align 8, !tbaa !11
  %15931 = call double @llvm.fmuladd.f64(double 0x3CA1800000000000, double %15930, double %15922)
  %15932 = load ptr, ptr %7, align 8, !tbaa !9
  %15933 = load i32, ptr %12, align 4, !tbaa !5
  %15934 = load i32, ptr %8, align 4, !tbaa !5
  %15935 = mul nsw i32 19, %15934
  %15936 = add nsw i32 %15933, %15935
  %15937 = sext i32 %15936 to i64
  %15938 = getelementptr inbounds double, ptr %15932, i64 %15937
  %15939 = load double, ptr %15938, align 8, !tbaa !11
  %15940 = call double @llvm.fmuladd.f64(double 0xBC8C000000000000, double %15939, double %15931)
  %15941 = load ptr, ptr %7, align 8, !tbaa !9
  %15942 = load i32, ptr %12, align 4, !tbaa !5
  %15943 = load i32, ptr %8, align 4, !tbaa !5
  %15944 = mul nsw i32 20, %15943
  %15945 = add nsw i32 %15942, %15944
  %15946 = sext i32 %15945 to i64
  %15947 = getelementptr inbounds double, ptr %15941, i64 %15946
  %15948 = load double, ptr %15947, align 8, !tbaa !11
  %15949 = call double @llvm.fmuladd.f64(double 0xBF83152016E0EC4E, double %15948, double %15940)
  %15950 = load ptr, ptr %7, align 8, !tbaa !9
  %15951 = load i32, ptr %12, align 4, !tbaa !5
  %15952 = load i32, ptr %8, align 4, !tbaa !5
  %15953 = mul nsw i32 21, %15952
  %15954 = add nsw i32 %15951, %15953
  %15955 = sext i32 %15954 to i64
  %15956 = getelementptr inbounds double, ptr %15950, i64 %15955
  %15957 = load double, ptr %15956, align 8, !tbaa !11
  %15958 = call double @llvm.fmuladd.f64(double 0x3F938CE4890DB2EE, double %15957, double %15949)
  %15959 = load ptr, ptr %7, align 8, !tbaa !9
  %15960 = load i32, ptr %12, align 4, !tbaa !5
  %15961 = load i32, ptr %8, align 4, !tbaa !5
  %15962 = mul nsw i32 22, %15961
  %15963 = add nsw i32 %15960, %15962
  %15964 = sext i32 %15963 to i64
  %15965 = getelementptr inbounds double, ptr %15959, i64 %15964
  %15966 = load double, ptr %15965, align 8, !tbaa !11
  %15967 = call double @llvm.fmuladd.f64(double 0xBFB5B58B4F03B1AA, double %15966, double %15958)
  %15968 = load ptr, ptr %7, align 8, !tbaa !9
  %15969 = load i32, ptr %12, align 4, !tbaa !5
  %15970 = load i32, ptr %8, align 4, !tbaa !5
  %15971 = mul nsw i32 23, %15970
  %15972 = add nsw i32 %15969, %15971
  %15973 = sext i32 %15972 to i64
  %15974 = getelementptr inbounds double, ptr %15968, i64 %15973
  %15975 = load double, ptr %15974, align 8, !tbaa !11
  %15976 = call double @llvm.fmuladd.f64(double 0x3FF4EC1BB3FDC60E, double %15975, double %15967)
  %15977 = load ptr, ptr %7, align 8, !tbaa !9
  %15978 = load i32, ptr %12, align 4, !tbaa !5
  %15979 = load i32, ptr %8, align 4, !tbaa !5
  %15980 = mul nsw i32 24, %15979
  %15981 = add nsw i32 %15978, %15980
  %15982 = sext i32 %15981 to i64
  %15983 = getelementptr inbounds double, ptr %15977, i64 %15982
  %15984 = load double, ptr %15983, align 8, !tbaa !11
  %15985 = call double @llvm.fmuladd.f64(double 0xBF8BDAF699AECF54, double %15984, double %15976)
  %15986 = load ptr, ptr %7, align 8, !tbaa !9
  %15987 = load i32, ptr %12, align 4, !tbaa !5
  %15988 = load i32, ptr %8, align 4, !tbaa !5
  %15989 = mul nsw i32 25, %15988
  %15990 = add nsw i32 %15987, %15989
  %15991 = sext i32 %15990 to i64
  %15992 = getelementptr inbounds double, ptr %15986, i64 %15991
  %15993 = load double, ptr %15992, align 8, !tbaa !11
  %15994 = call double @llvm.fmuladd.f64(double 0x3FCA50C41AB7A325, double %15993, double %15985)
  %15995 = load ptr, ptr %7, align 8, !tbaa !9
  %15996 = load i32, ptr %12, align 4, !tbaa !5
  %15997 = load i32, ptr %8, align 4, !tbaa !5
  %15998 = mul nsw i32 26, %15997
  %15999 = add nsw i32 %15996, %15998
  %16000 = sext i32 %15999 to i64
  %16001 = getelementptr inbounds double, ptr %15995, i64 %16000
  %16002 = load double, ptr %16001, align 8, !tbaa !11
  %16003 = call double @llvm.fmuladd.f64(double 0xBFE5679E70A60654, double %16002, double %15994)
  %16004 = load ptr, ptr %7, align 8, !tbaa !9
  %16005 = load i32, ptr %12, align 4, !tbaa !5
  %16006 = load i32, ptr %8, align 4, !tbaa !5
  %16007 = mul nsw i32 27, %16006
  %16008 = add nsw i32 %16005, %16007
  %16009 = sext i32 %16008 to i64
  %16010 = getelementptr inbounds double, ptr %16004, i64 %16009
  %16011 = load double, ptr %16010, align 8, !tbaa !11
  %16012 = call double @llvm.fmuladd.f64(double 0x3FD417DEBFC17B18, double %16011, double %16003)
  %16013 = load ptr, ptr %7, align 8, !tbaa !9
  %16014 = load i32, ptr %12, align 4, !tbaa !5
  %16015 = load i32, ptr %8, align 4, !tbaa !5
  %16016 = mul nsw i32 28, %16015
  %16017 = add nsw i32 %16014, %16016
  %16018 = sext i32 %16017 to i64
  %16019 = getelementptr inbounds double, ptr %16013, i64 %16018
  %16020 = load double, ptr %16019, align 8, !tbaa !11
  %16021 = call double @llvm.fmuladd.f64(double 0xBFB49217631F593D, double %16020, double %16012)
  %16022 = load ptr, ptr %7, align 8, !tbaa !9
  %16023 = load i32, ptr %12, align 4, !tbaa !5
  %16024 = load i32, ptr %8, align 4, !tbaa !5
  %16025 = mul nsw i32 29, %16024
  %16026 = add nsw i32 %16023, %16025
  %16027 = sext i32 %16026 to i64
  %16028 = getelementptr inbounds double, ptr %16022, i64 %16027
  %16029 = load double, ptr %16028, align 8, !tbaa !11
  %16030 = call double @llvm.fmuladd.f64(double 0x3F85E50BB681A431, double %16029, double %16021)
  %16031 = load ptr, ptr %7, align 8, !tbaa !9
  %16032 = load i32, ptr %12, align 4, !tbaa !5
  %16033 = load i32, ptr %8, align 4, !tbaa !5
  %16034 = mul nsw i32 30, %16033
  %16035 = add nsw i32 %16032, %16034
  %16036 = sext i32 %16035 to i64
  %16037 = getelementptr inbounds double, ptr %16031, i64 %16036
  %16038 = load double, ptr %16037, align 8, !tbaa !11
  %16039 = call double @llvm.fmuladd.f64(double 0x3C9F3FFFFFFFFFFC, double %16038, double %16030)
  %16040 = load ptr, ptr %7, align 8, !tbaa !9
  %16041 = load i32, ptr %12, align 4, !tbaa !5
  %16042 = load i32, ptr %8, align 4, !tbaa !5
  %16043 = mul nsw i32 31, %16042
  %16044 = add nsw i32 %16041, %16043
  %16045 = sext i32 %16044 to i64
  %16046 = getelementptr inbounds double, ptr %16040, i64 %16045
  %16047 = load double, ptr %16046, align 8, !tbaa !11
  %16048 = call double @llvm.fmuladd.f64(double 0xBC54000000000000, double %16047, double %16039)
  %16049 = load ptr, ptr %7, align 8, !tbaa !9
  %16050 = load i32, ptr %12, align 4, !tbaa !5
  %16051 = load i32, ptr %8, align 4, !tbaa !5
  %16052 = mul nsw i32 32, %16051
  %16053 = add nsw i32 %16050, %16052
  %16054 = sext i32 %16053 to i64
  %16055 = getelementptr inbounds double, ptr %16049, i64 %16054
  %16056 = load double, ptr %16055, align 8, !tbaa !11
  %16057 = call double @llvm.fmuladd.f64(double 0xBCA27FFFFFFFFFFF, double %16056, double %16048)
  %16058 = load ptr, ptr %7, align 8, !tbaa !9
  %16059 = load i32, ptr %12, align 4, !tbaa !5
  %16060 = load i32, ptr %8, align 4, !tbaa !5
  %16061 = mul nsw i32 33, %16060
  %16062 = add nsw i32 %16059, %16061
  %16063 = sext i32 %16062 to i64
  %16064 = getelementptr inbounds double, ptr %16058, i64 %16063
  %16065 = load double, ptr %16064, align 8, !tbaa !11
  %16066 = call double @llvm.fmuladd.f64(double 0x3CA9BFFFFFFFFFFF, double %16065, double %16057)
  %16067 = load ptr, ptr %7, align 8, !tbaa !9
  %16068 = load i32, ptr %12, align 4, !tbaa !5
  %16069 = load i32, ptr %8, align 4, !tbaa !5
  %16070 = mul nsw i32 34, %16069
  %16071 = add nsw i32 %16068, %16070
  %16072 = sext i32 %16071 to i64
  %16073 = getelementptr inbounds double, ptr %16067, i64 %16072
  %16074 = load double, ptr %16073, align 8, !tbaa !11
  %16075 = call double @llvm.fmuladd.f64(double 0xBC9A400000000000, double %16074, double %16066)
  %16076 = load ptr, ptr %7, align 8, !tbaa !9
  %16077 = load i32, ptr %12, align 4, !tbaa !5
  %16078 = load i32, ptr %8, align 4, !tbaa !5
  %16079 = mul nsw i32 35, %16078
  %16080 = add nsw i32 %16077, %16079
  %16081 = sext i32 %16080 to i64
  %16082 = getelementptr inbounds double, ptr %16076, i64 %16081
  %16083 = load double, ptr %16082, align 8, !tbaa !11
  %16084 = call double @llvm.fmuladd.f64(double 0xBC70000000000001, double %16083, double %16075)
  %16085 = load ptr, ptr %7, align 8, !tbaa !9
  %16086 = load i32, ptr %12, align 4, !tbaa !5
  %16087 = load i32, ptr %8, align 4, !tbaa !5
  %16088 = mul nsw i32 36, %16087
  %16089 = add nsw i32 %16086, %16088
  %16090 = sext i32 %16089 to i64
  %16091 = getelementptr inbounds double, ptr %16085, i64 %16090
  %16092 = load double, ptr %16091, align 8, !tbaa !11
  %16093 = call double @llvm.fmuladd.f64(double 0xBCA5F7FFFFFFFFFF, double %16092, double %16084)
  %16094 = load ptr, ptr %7, align 8, !tbaa !9
  %16095 = load i32, ptr %12, align 4, !tbaa !5
  %16096 = load i32, ptr %8, align 4, !tbaa !5
  %16097 = mul nsw i32 37, %16096
  %16098 = add nsw i32 %16095, %16097
  %16099 = sext i32 %16098 to i64
  %16100 = getelementptr inbounds double, ptr %16094, i64 %16099
  %16101 = load double, ptr %16100, align 8, !tbaa !11
  %16102 = call double @llvm.fmuladd.f64(double 0xBC9DAFFFFFFFFFFE, double %16101, double %16093)
  %16103 = load ptr, ptr %7, align 8, !tbaa !9
  %16104 = load i32, ptr %12, align 4, !tbaa !5
  %16105 = load i32, ptr %8, align 4, !tbaa !5
  %16106 = mul nsw i32 38, %16105
  %16107 = add nsw i32 %16104, %16106
  %16108 = sext i32 %16107 to i64
  %16109 = getelementptr inbounds double, ptr %16103, i64 %16108
  %16110 = load double, ptr %16109, align 8, !tbaa !11
  %16111 = call double @llvm.fmuladd.f64(double 0x3C71FFFFFFFFFFFF, double %16110, double %16102)
  %16112 = load ptr, ptr %7, align 8, !tbaa !9
  %16113 = load i32, ptr %12, align 4, !tbaa !5
  %16114 = load i32, ptr %8, align 4, !tbaa !5
  %16115 = mul nsw i32 39, %16114
  %16116 = add nsw i32 %16113, %16115
  %16117 = sext i32 %16116 to i64
  %16118 = getelementptr inbounds double, ptr %16112, i64 %16117
  %16119 = load double, ptr %16118, align 8, !tbaa !11
  %16120 = call double @llvm.fmuladd.f64(double 0x3C60000000000000, double %16119, double %16111)
  store double %16120, ptr %11, align 8, !tbaa !11
  %16121 = load double, ptr %11, align 8, !tbaa !11
  %16122 = load ptr, ptr %9, align 8, !tbaa !9
  %16123 = load i32, ptr %12, align 4, !tbaa !5
  %16124 = load i32, ptr %10, align 4, !tbaa !5
  %16125 = mul nsw i32 44, %16124
  %16126 = add nsw i32 %16123, %16125
  %16127 = sext i32 %16126 to i64
  %16128 = getelementptr inbounds double, ptr %16122, i64 %16127
  store double %16121, ptr %16128, align 8, !tbaa !11
  %16129 = load ptr, ptr %7, align 8, !tbaa !9
  %16130 = load i32, ptr %12, align 4, !tbaa !5
  %16131 = load i32, ptr %8, align 4, !tbaa !5
  %16132 = mul nsw i32 0, %16131
  %16133 = add nsw i32 %16130, %16132
  %16134 = sext i32 %16133 to i64
  %16135 = getelementptr inbounds double, ptr %16129, i64 %16134
  %16136 = load double, ptr %16135, align 8, !tbaa !11
  %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 1, %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 = fmul double 0xBCA5400000000000, %16144
  %16146 = call double @llvm.fmuladd.f64(double 0x3CCCF00000000000, double %16136, double %16145)
  %16147 = load ptr, ptr %7, align 8, !tbaa !9
  %16148 = load i32, ptr %12, align 4, !tbaa !5
  %16149 = load i32, ptr %8, align 4, !tbaa !5
  %16150 = mul nsw i32 2, %16149
  %16151 = add nsw i32 %16148, %16150
  %16152 = sext i32 %16151 to i64
  %16153 = getelementptr inbounds double, ptr %16147, i64 %16152
  %16154 = load double, ptr %16153, align 8, !tbaa !11
  %16155 = call double @llvm.fmuladd.f64(double 0xBCA30FFFFFFFFFFE, double %16154, double %16146)
  %16156 = load ptr, ptr %7, align 8, !tbaa !9
  %16157 = load i32, ptr %12, align 4, !tbaa !5
  %16158 = load i32, ptr %8, align 4, !tbaa !5
  %16159 = mul nsw i32 3, %16158
  %16160 = add nsw i32 %16157, %16159
  %16161 = sext i32 %16160 to i64
  %16162 = getelementptr inbounds double, ptr %16156, i64 %16161
  %16163 = load double, ptr %16162, align 8, !tbaa !11
  %16164 = call double @llvm.fmuladd.f64(double 0x3CBC600000000000, double %16163, double %16155)
  %16165 = load ptr, ptr %7, align 8, !tbaa !9
  %16166 = load i32, ptr %12, align 4, !tbaa !5
  %16167 = load i32, ptr %8, align 4, !tbaa !5
  %16168 = mul nsw i32 4, %16167
  %16169 = add nsw i32 %16166, %16168
  %16170 = sext i32 %16169 to i64
  %16171 = getelementptr inbounds double, ptr %16165, i64 %16170
  %16172 = load double, ptr %16171, align 8, !tbaa !11
  %16173 = call double @llvm.fmuladd.f64(double 0x3C86FFFFFFFFFFFF, double %16172, double %16164)
  %16174 = load ptr, ptr %7, align 8, !tbaa !9
  %16175 = load i32, ptr %12, align 4, !tbaa !5
  %16176 = load i32, ptr %8, align 4, !tbaa !5
  %16177 = mul nsw i32 5, %16176
  %16178 = add nsw i32 %16175, %16177
  %16179 = sext i32 %16178 to i64
  %16180 = getelementptr inbounds double, ptr %16174, i64 %16179
  %16181 = load double, ptr %16180, align 8, !tbaa !11
  %16182 = call double @llvm.fmuladd.f64(double 0xBC96800000000000, double %16181, double %16173)
  %16183 = load ptr, ptr %7, align 8, !tbaa !9
  %16184 = load i32, ptr %12, align 4, !tbaa !5
  %16185 = load i32, ptr %8, align 4, !tbaa !5
  %16186 = mul nsw i32 6, %16185
  %16187 = add nsw i32 %16184, %16186
  %16188 = sext i32 %16187 to i64
  %16189 = getelementptr inbounds double, ptr %16183, i64 %16188
  %16190 = load double, ptr %16189, align 8, !tbaa !11
  %16191 = call double @llvm.fmuladd.f64(double 0x3C9A800000000000, double %16190, double %16182)
  %16192 = load ptr, ptr %7, align 8, !tbaa !9
  %16193 = load i32, ptr %12, align 4, !tbaa !5
  %16194 = load i32, ptr %8, align 4, !tbaa !5
  %16195 = mul nsw i32 7, %16194
  %16196 = add nsw i32 %16193, %16195
  %16197 = sext i32 %16196 to i64
  %16198 = getelementptr inbounds double, ptr %16192, i64 %16197
  %16199 = load double, ptr %16198, align 8, !tbaa !11
  %16200 = call double @llvm.fmuladd.f64(double 0xBC73000000000001, double %16199, double %16191)
  %16201 = load ptr, ptr %7, align 8, !tbaa !9
  %16202 = load i32, ptr %12, align 4, !tbaa !5
  %16203 = load i32, ptr %8, align 4, !tbaa !5
  %16204 = mul nsw i32 8, %16203
  %16205 = add nsw i32 %16202, %16204
  %16206 = sext i32 %16205 to i64
  %16207 = getelementptr inbounds double, ptr %16201, i64 %16206
  %16208 = load double, ptr %16207, align 8, !tbaa !11
  %16209 = call double @llvm.fmuladd.f64(double 0x3C93800000000000, double %16208, double %16200)
  %16210 = load ptr, ptr %7, align 8, !tbaa !9
  %16211 = load i32, ptr %12, align 4, !tbaa !5
  %16212 = load i32, ptr %8, align 4, !tbaa !5
  %16213 = mul nsw i32 9, %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 = call double @llvm.fmuladd.f64(double 0x3C40000000000000, double %16217, double %16209)
  %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 10, %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 = call double @llvm.fmuladd.f64(double 0x3C60000000000000, double %16226, double %16218)
  %16228 = load ptr, ptr %7, align 8, !tbaa !9
  %16229 = load i32, ptr %12, align 4, !tbaa !5
  %16230 = load i32, ptr %8, align 4, !tbaa !5
  %16231 = mul nsw i32 11, %16230
  %16232 = add nsw i32 %16229, %16231
  %16233 = sext i32 %16232 to i64
  %16234 = getelementptr inbounds double, ptr %16228, i64 %16233
  %16235 = load double, ptr %16234, align 8, !tbaa !11
  %16236 = call double @llvm.fmuladd.f64(double 0xBC9A000000000000, double %16235, double %16227)
  %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 12, %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 0xBC73000000000001, 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 13, %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 0xBC94400000000000, 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 14, %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 0x3CA0800000000001, 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 15, %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 0x3CA1000000000001, 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 16, %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 0x3C90800000000000, 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 17, %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 0xBCB5200000000000, 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 18, %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 0x3CA0000000000002, 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 19, %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 0x3C84000000000000, 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 20, %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 0xBFE333710B32A29C, 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 21, %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 0xBFA352D4DB969BF9, 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 22, %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 0xBFBEED13A9F0D910, 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 23, %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 0x3FA87D764354850A, 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 24, %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 0x3FC27B05E24EC5FB, 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 25, %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 0x3FF670C5F1F4C929, 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 26, %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 0xBFD41C0D131D4293, 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 27, %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 0x3FD35DAE88CBA64F, 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 28, %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 0x3FC36A9134CD3C5C, 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 29, %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 0x3F9854E0ADA34BA1, 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 30, %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 0xBC82000000000000, 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 31, %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 0xBC67FFFFFFFFFFFE, 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 32, %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 0x3C9B200000000000, 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 33, %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 0x3C81C00000000001, 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 34, %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 0xBC9B000000000000, 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 35, %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 0xBC95800000000000, 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 36, %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 0xBCA1E00000000000, 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 37, %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 0xBC9EBFFFFFFFFFFD, 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 38, %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 0xBC82000000000000, 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 39, %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 0xBC9C800000000000, double %16487, double %16479)
  store double %16488, ptr %11, align 8, !tbaa !11
  %16489 = load double, ptr %11, align 8, !tbaa !11
  %16490 = load ptr, ptr %9, align 8, !tbaa !9
  %16491 = load i32, ptr %12, align 4, !tbaa !5
  %16492 = load i32, ptr %10, align 4, !tbaa !5
  %16493 = mul nsw i32 45, %16492
  %16494 = add nsw i32 %16491, %16493
  %16495 = sext i32 %16494 to i64
  %16496 = getelementptr inbounds double, ptr %16490, i64 %16495
  store double %16489, ptr %16496, align 8, !tbaa !11
  %16497 = load ptr, ptr %7, align 8, !tbaa !9
  %16498 = load i32, ptr %12, align 4, !tbaa !5
  %16499 = load i32, ptr %8, align 4, !tbaa !5
  %16500 = mul nsw i32 0, %16499
  %16501 = add nsw i32 %16498, %16500
  %16502 = sext i32 %16501 to i64
  %16503 = getelementptr inbounds double, ptr %16497, i64 %16502
  %16504 = load double, ptr %16503, align 8, !tbaa !11
  %16505 = load ptr, ptr %7, align 8, !tbaa !9
  %16506 = load i32, ptr %12, align 4, !tbaa !5
  %16507 = load i32, ptr %8, align 4, !tbaa !5
  %16508 = mul nsw i32 1, %16507
  %16509 = add nsw i32 %16506, %16508
  %16510 = sext i32 %16509 to i64
  %16511 = getelementptr inbounds double, ptr %16505, i64 %16510
  %16512 = load double, ptr %16511, align 8, !tbaa !11
  %16513 = fmul double 0xBCB5400000000000, %16512
  %16514 = call double @llvm.fmuladd.f64(double 0x3CCA200000000000, double %16504, double %16513)
  %16515 = load ptr, ptr %7, align 8, !tbaa !9
  %16516 = load i32, ptr %12, align 4, !tbaa !5
  %16517 = load i32, ptr %8, align 4, !tbaa !5
  %16518 = mul nsw i32 2, %16517
  %16519 = add nsw i32 %16516, %16518
  %16520 = sext i32 %16519 to i64
  %16521 = getelementptr inbounds double, ptr %16515, i64 %16520
  %16522 = load double, ptr %16521, align 8, !tbaa !11
  %16523 = call double @llvm.fmuladd.f64(double 0xBCA0600000000001, double %16522, double %16514)
  %16524 = load ptr, ptr %7, align 8, !tbaa !9
  %16525 = load i32, ptr %12, align 4, !tbaa !5
  %16526 = load i32, ptr %8, align 4, !tbaa !5
  %16527 = mul nsw i32 3, %16526
  %16528 = add nsw i32 %16525, %16527
  %16529 = sext i32 %16528 to i64
  %16530 = getelementptr inbounds double, ptr %16524, i64 %16529
  %16531 = load double, ptr %16530, align 8, !tbaa !11
  %16532 = call double @llvm.fmuladd.f64(double 0x3CB23FFFFFFFFFFF, double %16531, double %16523)
  %16533 = load ptr, ptr %7, align 8, !tbaa !9
  %16534 = load i32, ptr %12, align 4, !tbaa !5
  %16535 = load i32, ptr %8, align 4, !tbaa !5
  %16536 = mul nsw i32 4, %16535
  %16537 = add nsw i32 %16534, %16536
  %16538 = sext i32 %16537 to i64
  %16539 = getelementptr inbounds double, ptr %16533, i64 %16538
  %16540 = load double, ptr %16539, align 8, !tbaa !11
  %16541 = call double @llvm.fmuladd.f64(double 0xBCBE7FFFFFFFFFFF, double %16540, double %16532)
  %16542 = load ptr, ptr %7, align 8, !tbaa !9
  %16543 = load i32, ptr %12, align 4, !tbaa !5
  %16544 = load i32, ptr %8, align 4, !tbaa !5
  %16545 = mul nsw i32 5, %16544
  %16546 = add nsw i32 %16543, %16545
  %16547 = sext i32 %16546 to i64
  %16548 = getelementptr inbounds double, ptr %16542, i64 %16547
  %16549 = load double, ptr %16548, align 8, !tbaa !11
  %16550 = call double @llvm.fmuladd.f64(double 0x3C95000000000000, double %16549, double %16541)
  %16551 = load ptr, ptr %7, align 8, !tbaa !9
  %16552 = load i32, ptr %12, align 4, !tbaa !5
  %16553 = load i32, ptr %8, align 4, !tbaa !5
  %16554 = mul nsw i32 6, %16553
  %16555 = add nsw i32 %16552, %16554
  %16556 = sext i32 %16555 to i64
  %16557 = getelementptr inbounds double, ptr %16551, i64 %16556
  %16558 = load double, ptr %16557, align 8, !tbaa !11
  %16559 = call double @llvm.fmuladd.f64(double 0x3C9CC00000000000, double %16558, double %16550)
  %16560 = load ptr, ptr %7, align 8, !tbaa !9
  %16561 = load i32, ptr %12, align 4, !tbaa !5
  %16562 = load i32, ptr %8, align 4, !tbaa !5
  %16563 = mul nsw i32 7, %16562
  %16564 = add nsw i32 %16561, %16563
  %16565 = sext i32 %16564 to i64
  %16566 = getelementptr inbounds double, ptr %16560, i64 %16565
  %16567 = load double, ptr %16566, align 8, !tbaa !11
  %16568 = call double @llvm.fmuladd.f64(double 0x3CA8200000000001, double %16567, double %16559)
  %16569 = load ptr, ptr %7, align 8, !tbaa !9
  %16570 = load i32, ptr %12, align 4, !tbaa !5
  %16571 = load i32, ptr %8, align 4, !tbaa !5
  %16572 = mul nsw i32 8, %16571
  %16573 = add nsw i32 %16570, %16572
  %16574 = sext i32 %16573 to i64
  %16575 = getelementptr inbounds double, ptr %16569, i64 %16574
  %16576 = load double, ptr %16575, align 8, !tbaa !11
  %16577 = call double @llvm.fmuladd.f64(double 0x3C9EFFFFFFFFFFFD, double %16576, double %16568)
  %16578 = load ptr, ptr %7, align 8, !tbaa !9
  %16579 = load i32, ptr %12, align 4, !tbaa !5
  %16580 = load i32, ptr %8, align 4, !tbaa !5
  %16581 = mul nsw i32 9, %16580
  %16582 = add nsw i32 %16579, %16581
  %16583 = sext i32 %16582 to i64
  %16584 = getelementptr inbounds double, ptr %16578, i64 %16583
  %16585 = load double, ptr %16584, align 8, !tbaa !11
  %16586 = call double @llvm.fmuladd.f64(double 0x3CBD400000000001, double %16585, double %16577)
  %16587 = load ptr, ptr %7, align 8, !tbaa !9
  %16588 = load i32, ptr %12, align 4, !tbaa !5
  %16589 = load i32, ptr %8, align 4, !tbaa !5
  %16590 = mul nsw i32 10, %16589
  %16591 = add nsw i32 %16588, %16590
  %16592 = sext i32 %16591 to i64
  %16593 = getelementptr inbounds double, ptr %16587, i64 %16592
  %16594 = load double, ptr %16593, align 8, !tbaa !11
  %16595 = call double @llvm.fmuladd.f64(double 0x3C70000000000001, double %16594, double %16586)
  %16596 = load ptr, ptr %7, align 8, !tbaa !9
  %16597 = load i32, ptr %12, align 4, !tbaa !5
  %16598 = load i32, ptr %8, align 4, !tbaa !5
  %16599 = mul nsw i32 11, %16598
  %16600 = add nsw i32 %16597, %16599
  %16601 = sext i32 %16600 to i64
  %16602 = getelementptr inbounds double, ptr %16596, i64 %16601
  %16603 = load double, ptr %16602, align 8, !tbaa !11
  %16604 = call double @llvm.fmuladd.f64(double 0xBC70000000000001, double %16603, double %16595)
  %16605 = load ptr, ptr %7, align 8, !tbaa !9
  %16606 = load i32, ptr %12, align 4, !tbaa !5
  %16607 = load i32, ptr %8, align 4, !tbaa !5
  %16608 = mul nsw i32 12, %16607
  %16609 = add nsw i32 %16606, %16608
  %16610 = sext i32 %16609 to i64
  %16611 = getelementptr inbounds double, ptr %16605, i64 %16610
  %16612 = load double, ptr %16611, align 8, !tbaa !11
  %16613 = call double @llvm.fmuladd.f64(double 0xBCA5400000000000, double %16612, double %16604)
  %16614 = load ptr, ptr %7, align 8, !tbaa !9
  %16615 = load i32, ptr %12, align 4, !tbaa !5
  %16616 = load i32, ptr %8, align 4, !tbaa !5
  %16617 = mul nsw i32 13, %16616
  %16618 = add nsw i32 %16615, %16617
  %16619 = sext i32 %16618 to i64
  %16620 = getelementptr inbounds double, ptr %16614, i64 %16619
  %16621 = load double, ptr %16620, align 8, !tbaa !11
  %16622 = call double @llvm.fmuladd.f64(double 0xBCAEC00000000001, double %16621, double %16613)
  %16623 = load ptr, ptr %7, align 8, !tbaa !9
  %16624 = load i32, ptr %12, align 4, !tbaa !5
  %16625 = load i32, ptr %8, align 4, !tbaa !5
  %16626 = mul nsw i32 14, %16625
  %16627 = add nsw i32 %16624, %16626
  %16628 = sext i32 %16627 to i64
  %16629 = getelementptr inbounds double, ptr %16623, i64 %16628
  %16630 = load double, ptr %16629, align 8, !tbaa !11
  %16631 = call double @llvm.fmuladd.f64(double 0xBC94000000000000, double %16630, double %16622)
  %16632 = load ptr, ptr %7, align 8, !tbaa !9
  %16633 = load i32, ptr %12, align 4, !tbaa !5
  %16634 = load i32, ptr %8, align 4, !tbaa !5
  %16635 = mul nsw i32 15, %16634
  %16636 = add nsw i32 %16633, %16635
  %16637 = sext i32 %16636 to i64
  %16638 = getelementptr inbounds double, ptr %16632, i64 %16637
  %16639 = load double, ptr %16638, align 8, !tbaa !11
  %16640 = call double @llvm.fmuladd.f64(double 0xBCB7000000000000, double %16639, double %16631)
  %16641 = load ptr, ptr %7, align 8, !tbaa !9
  %16642 = load i32, ptr %12, align 4, !tbaa !5
  %16643 = load i32, ptr %8, align 4, !tbaa !5
  %16644 = mul nsw i32 16, %16643
  %16645 = add nsw i32 %16642, %16644
  %16646 = sext i32 %16645 to i64
  %16647 = getelementptr inbounds double, ptr %16641, i64 %16646
  %16648 = load double, ptr %16647, align 8, !tbaa !11
  %16649 = call double @llvm.fmuladd.f64(double 0x3CB3800000000000, double %16648, double %16640)
  %16650 = load ptr, ptr %7, align 8, !tbaa !9
  %16651 = load i32, ptr %12, align 4, !tbaa !5
  %16652 = load i32, ptr %8, align 4, !tbaa !5
  %16653 = mul nsw i32 17, %16652
  %16654 = add nsw i32 %16651, %16653
  %16655 = sext i32 %16654 to i64
  %16656 = getelementptr inbounds double, ptr %16650, i64 %16655
  %16657 = load double, ptr %16656, align 8, !tbaa !11
  %16658 = call double @llvm.fmuladd.f64(double 0xBCB23FFFFFFFFFFF, double %16657, double %16649)
  %16659 = load ptr, ptr %7, align 8, !tbaa !9
  %16660 = load i32, ptr %12, align 4, !tbaa !5
  %16661 = load i32, ptr %8, align 4, !tbaa !5
  %16662 = mul nsw i32 18, %16661
  %16663 = add nsw i32 %16660, %16662
  %16664 = sext i32 %16663 to i64
  %16665 = getelementptr inbounds double, ptr %16659, i64 %16664
  %16666 = load double, ptr %16665, align 8, !tbaa !11
  %16667 = call double @llvm.fmuladd.f64(double 0x3CC4800000000000, double %16666, double %16658)
  %16668 = load ptr, ptr %7, align 8, !tbaa !9
  %16669 = load i32, ptr %12, align 4, !tbaa !5
  %16670 = load i32, ptr %8, align 4, !tbaa !5
  %16671 = mul nsw i32 19, %16670
  %16672 = add nsw i32 %16669, %16671
  %16673 = sext i32 %16672 to i64
  %16674 = getelementptr inbounds double, ptr %16668, i64 %16673
  %16675 = load double, ptr %16674, align 8, !tbaa !11
  %16676 = call double @llvm.fmuladd.f64(double 0xBCC6000000000000, double %16675, double %16667)
  %16677 = load ptr, ptr %7, align 8, !tbaa !9
  %16678 = load i32, ptr %12, align 4, !tbaa !5
  %16679 = load i32, ptr %8, align 4, !tbaa !5
  %16680 = mul nsw i32 20, %16679
  %16681 = add nsw i32 %16678, %16680
  %16682 = sext i32 %16681 to i64
  %16683 = getelementptr inbounds double, ptr %16677, i64 %16682
  %16684 = load double, ptr %16683, align 8, !tbaa !11
  %16685 = call double @llvm.fmuladd.f64(double 0xBFE333710B32A2A0, double %16684, double %16676)
  %16686 = load ptr, ptr %7, align 8, !tbaa !9
  %16687 = load i32, ptr %12, align 4, !tbaa !5
  %16688 = load i32, ptr %8, align 4, !tbaa !5
  %16689 = mul nsw i32 21, %16688
  %16690 = add nsw i32 %16687, %16689
  %16691 = sext i32 %16690 to i64
  %16692 = getelementptr inbounds double, ptr %16686, i64 %16691
  %16693 = load double, ptr %16692, align 8, !tbaa !11
  %16694 = call double @llvm.fmuladd.f64(double 0x3FA87D7643548526, double %16693, double %16685)
  %16695 = load ptr, ptr %7, align 8, !tbaa !9
  %16696 = load i32, ptr %12, align 4, !tbaa !5
  %16697 = load i32, ptr %8, align 4, !tbaa !5
  %16698 = mul nsw i32 22, %16697
  %16699 = add nsw i32 %16696, %16698
  %16700 = sext i32 %16699 to i64
  %16701 = getelementptr inbounds double, ptr %16695, i64 %16700
  %16702 = load double, ptr %16701, align 8, !tbaa !11
  %16703 = call double @llvm.fmuladd.f64(double 0xBFBEED13A9F0D8FA, double %16702, double %16694)
  %16704 = load ptr, ptr %7, align 8, !tbaa !9
  %16705 = load i32, ptr %12, align 4, !tbaa !5
  %16706 = load i32, ptr %8, align 4, !tbaa !5
  %16707 = mul nsw i32 23, %16706
  %16708 = add nsw i32 %16705, %16707
  %16709 = sext i32 %16708 to i64
  %16710 = getelementptr inbounds double, ptr %16704, i64 %16709
  %16711 = load double, ptr %16710, align 8, !tbaa !11
  %16712 = call double @llvm.fmuladd.f64(double 0xBFA352D4DB969C02, double %16711, double %16703)
  %16713 = load ptr, ptr %7, align 8, !tbaa !9
  %16714 = load i32, ptr %12, align 4, !tbaa !5
  %16715 = load i32, ptr %8, align 4, !tbaa !5
  %16716 = mul nsw i32 24, %16715
  %16717 = add nsw i32 %16714, %16716
  %16718 = sext i32 %16717 to i64
  %16719 = getelementptr inbounds double, ptr %16713, i64 %16718
  %16720 = load double, ptr %16719, align 8, !tbaa !11
  %16721 = call double @llvm.fmuladd.f64(double 0x3FD35DAE88CBA644, double %16720, double %16712)
  %16722 = load ptr, ptr %7, align 8, !tbaa !9
  %16723 = load i32, ptr %12, align 4, !tbaa !5
  %16724 = load i32, ptr %8, align 4, !tbaa !5
  %16725 = mul nsw i32 25, %16724
  %16726 = add nsw i32 %16723, %16725
  %16727 = sext i32 %16726 to i64
  %16728 = getelementptr inbounds double, ptr %16722, i64 %16727
  %16729 = load double, ptr %16728, align 8, !tbaa !11
  %16730 = call double @llvm.fmuladd.f64(double 0x3FC36A9134CD3C51, double %16729, double %16721)
  %16731 = load ptr, ptr %7, align 8, !tbaa !9
  %16732 = load i32, ptr %12, align 4, !tbaa !5
  %16733 = load i32, ptr %8, align 4, !tbaa !5
  %16734 = mul nsw i32 26, %16733
  %16735 = add nsw i32 %16732, %16734
  %16736 = sext i32 %16735 to i64
  %16737 = getelementptr inbounds double, ptr %16731, i64 %16736
  %16738 = load double, ptr %16737, align 8, !tbaa !11
  %16739 = call double @llvm.fmuladd.f64(double 0x3F9854E0ADA34AA6, double %16738, double %16730)
  %16740 = load ptr, ptr %7, align 8, !tbaa !9
  %16741 = load i32, ptr %12, align 4, !tbaa !5
  %16742 = load i32, ptr %8, align 4, !tbaa !5
  %16743 = mul nsw i32 27, %16742
  %16744 = add nsw i32 %16741, %16743
  %16745 = sext i32 %16744 to i64
  %16746 = getelementptr inbounds double, ptr %16740, i64 %16745
  %16747 = load double, ptr %16746, align 8, !tbaa !11
  %16748 = call double @llvm.fmuladd.f64(double 0x3FC27B05E24EC606, double %16747, double %16739)
  %16749 = load ptr, ptr %7, align 8, !tbaa !9
  %16750 = load i32, ptr %12, align 4, !tbaa !5
  %16751 = load i32, ptr %8, align 4, !tbaa !5
  %16752 = mul nsw i32 28, %16751
  %16753 = add nsw i32 %16750, %16752
  %16754 = sext i32 %16753 to i64
  %16755 = getelementptr inbounds double, ptr %16749, i64 %16754
  %16756 = load double, ptr %16755, align 8, !tbaa !11
  %16757 = call double @llvm.fmuladd.f64(double 0x3FF670C5F1F4C932, double %16756, double %16748)
  %16758 = load ptr, ptr %7, align 8, !tbaa !9
  %16759 = load i32, ptr %12, align 4, !tbaa !5
  %16760 = load i32, ptr %8, align 4, !tbaa !5
  %16761 = mul nsw i32 29, %16760
  %16762 = add nsw i32 %16759, %16761
  %16763 = sext i32 %16762 to i64
  %16764 = getelementptr inbounds double, ptr %16758, i64 %16763
  %16765 = load double, ptr %16764, align 8, !tbaa !11
  %16766 = call double @llvm.fmuladd.f64(double 0xBFD41C0D131D4281, double %16765, double %16757)
  %16767 = load ptr, ptr %7, align 8, !tbaa !9
  %16768 = load i32, ptr %12, align 4, !tbaa !5
  %16769 = load i32, ptr %8, align 4, !tbaa !5
  %16770 = mul nsw i32 30, %16769
  %16771 = add nsw i32 %16768, %16770
  %16772 = sext i32 %16771 to i64
  %16773 = getelementptr inbounds double, ptr %16767, i64 %16772
  %16774 = load double, ptr %16773, align 8, !tbaa !11
  %16775 = call double @llvm.fmuladd.f64(double 0x3CB5FFFFFFFFFFFF, double %16774, double %16766)
  %16776 = load ptr, ptr %7, align 8, !tbaa !9
  %16777 = load i32, ptr %12, align 4, !tbaa !5
  %16778 = load i32, ptr %8, align 4, !tbaa !5
  %16779 = mul nsw i32 31, %16778
  %16780 = add nsw i32 %16777, %16779
  %16781 = sext i32 %16780 to i64
  %16782 = getelementptr inbounds double, ptr %16776, i64 %16781
  %16783 = load double, ptr %16782, align 8, !tbaa !11
  %16784 = call double @llvm.fmuladd.f64(double 0x3CAC000000000000, double %16783, double %16775)
  %16785 = load ptr, ptr %7, align 8, !tbaa !9
  %16786 = load i32, ptr %12, align 4, !tbaa !5
  %16787 = load i32, ptr %8, align 4, !tbaa !5
  %16788 = mul nsw i32 32, %16787
  %16789 = add nsw i32 %16786, %16788
  %16790 = sext i32 %16789 to i64
  %16791 = getelementptr inbounds double, ptr %16785, i64 %16790
  %16792 = load double, ptr %16791, align 8, !tbaa !11
  %16793 = call double @llvm.fmuladd.f64(double 0x3C91C00000000000, double %16792, double %16784)
  %16794 = load ptr, ptr %7, align 8, !tbaa !9
  %16795 = load i32, ptr %12, align 4, !tbaa !5
  %16796 = load i32, ptr %8, align 4, !tbaa !5
  %16797 = mul nsw i32 33, %16796
  %16798 = add nsw i32 %16795, %16797
  %16799 = sext i32 %16798 to i64
  %16800 = getelementptr inbounds double, ptr %16794, i64 %16799
  %16801 = load double, ptr %16800, align 8, !tbaa !11
  %16802 = call double @llvm.fmuladd.f64(double 0x3CB0100000000000, double %16801, double %16793)
  %16803 = load ptr, ptr %7, align 8, !tbaa !9
  %16804 = load i32, ptr %12, align 4, !tbaa !5
  %16805 = load i32, ptr %8, align 4, !tbaa !5
  %16806 = mul nsw i32 34, %16805
  %16807 = add nsw i32 %16804, %16806
  %16808 = sext i32 %16807 to i64
  %16809 = getelementptr inbounds double, ptr %16803, i64 %16808
  %16810 = load double, ptr %16809, align 8, !tbaa !11
  %16811 = call double @llvm.fmuladd.f64(double 0xBCAF000000000001, double %16810, double %16802)
  %16812 = load ptr, ptr %7, align 8, !tbaa !9
  %16813 = load i32, ptr %12, align 4, !tbaa !5
  %16814 = load i32, ptr %8, align 4, !tbaa !5
  %16815 = mul nsw i32 35, %16814
  %16816 = add nsw i32 %16813, %16815
  %16817 = sext i32 %16816 to i64
  %16818 = getelementptr inbounds double, ptr %16812, i64 %16817
  %16819 = load double, ptr %16818, align 8, !tbaa !11
  %16820 = call double @llvm.fmuladd.f64(double 0x3C9EFFFFFFFFFFFD, double %16819, double %16811)
  %16821 = load ptr, ptr %7, align 8, !tbaa !9
  %16822 = load i32, ptr %12, align 4, !tbaa !5
  %16823 = load i32, ptr %8, align 4, !tbaa !5
  %16824 = mul nsw i32 36, %16823
  %16825 = add nsw i32 %16822, %16824
  %16826 = sext i32 %16825 to i64
  %16827 = getelementptr inbounds double, ptr %16821, i64 %16826
  %16828 = load double, ptr %16827, align 8, !tbaa !11
  %16829 = call double @llvm.fmuladd.f64(double 0xBC79000000000000, double %16828, double %16820)
  %16830 = load ptr, ptr %7, align 8, !tbaa !9
  %16831 = load i32, ptr %12, align 4, !tbaa !5
  %16832 = load i32, ptr %8, align 4, !tbaa !5
  %16833 = mul nsw i32 37, %16832
  %16834 = add nsw i32 %16831, %16833
  %16835 = sext i32 %16834 to i64
  %16836 = getelementptr inbounds double, ptr %16830, i64 %16835
  %16837 = load double, ptr %16836, align 8, !tbaa !11
  %16838 = call double @llvm.fmuladd.f64(double 0xBCB4900000000001, double %16837, double %16829)
  %16839 = load ptr, ptr %7, align 8, !tbaa !9
  %16840 = load i32, ptr %12, align 4, !tbaa !5
  %16841 = load i32, ptr %8, align 4, !tbaa !5
  %16842 = mul nsw i32 38, %16841
  %16843 = add nsw i32 %16840, %16842
  %16844 = sext i32 %16843 to i64
  %16845 = getelementptr inbounds double, ptr %16839, i64 %16844
  %16846 = load double, ptr %16845, align 8, !tbaa !11
  %16847 = call double @llvm.fmuladd.f64(double 0xBCB07FFFFFFFFFFF, double %16846, double %16838)
  %16848 = load ptr, ptr %7, align 8, !tbaa !9
  %16849 = load i32, ptr %12, align 4, !tbaa !5
  %16850 = load i32, ptr %8, align 4, !tbaa !5
  %16851 = mul nsw i32 39, %16850
  %16852 = add nsw i32 %16849, %16851
  %16853 = sext i32 %16852 to i64
  %16854 = getelementptr inbounds double, ptr %16848, i64 %16853
  %16855 = load double, ptr %16854, align 8, !tbaa !11
  %16856 = call double @llvm.fmuladd.f64(double 0xBCB1000000000001, double %16855, double %16847)
  store double %16856, ptr %11, align 8, !tbaa !11
  %16857 = load double, ptr %11, align 8, !tbaa !11
  %16858 = load ptr, ptr %9, align 8, !tbaa !9
  %16859 = load i32, ptr %12, align 4, !tbaa !5
  %16860 = load i32, ptr %10, align 4, !tbaa !5
  %16861 = mul nsw i32 46, %16860
  %16862 = add nsw i32 %16859, %16861
  %16863 = sext i32 %16862 to i64
  %16864 = getelementptr inbounds double, ptr %16858, i64 %16863
  store double %16857, ptr %16864, align 8, !tbaa !11
  %16865 = load ptr, ptr %7, align 8, !tbaa !9
  %16866 = load i32, ptr %12, align 4, !tbaa !5
  %16867 = load i32, ptr %8, align 4, !tbaa !5
  %16868 = mul nsw i32 0, %16867
  %16869 = add nsw i32 %16866, %16868
  %16870 = sext i32 %16869 to i64
  %16871 = getelementptr inbounds double, ptr %16865, i64 %16870
  %16872 = load double, ptr %16871, align 8, !tbaa !11
  %16873 = load ptr, ptr %7, align 8, !tbaa !9
  %16874 = load i32, ptr %12, align 4, !tbaa !5
  %16875 = load i32, ptr %8, align 4, !tbaa !5
  %16876 = mul nsw i32 1, %16875
  %16877 = add nsw i32 %16874, %16876
  %16878 = sext i32 %16877 to i64
  %16879 = getelementptr inbounds double, ptr %16873, i64 %16878
  %16880 = load double, ptr %16879, align 8, !tbaa !11
  %16881 = fmul double 0x3C70000000000001, %16880
  %16882 = call double @llvm.fmuladd.f64(double 0x3CAC000000000000, double %16872, double %16881)
  %16883 = load ptr, ptr %7, align 8, !tbaa !9
  %16884 = load i32, ptr %12, align 4, !tbaa !5
  %16885 = load i32, ptr %8, align 4, !tbaa !5
  %16886 = mul nsw i32 2, %16885
  %16887 = add nsw i32 %16884, %16886
  %16888 = sext i32 %16887 to i64
  %16889 = getelementptr inbounds double, ptr %16883, i64 %16888
  %16890 = load double, ptr %16889, align 8, !tbaa !11
  %16891 = call double @llvm.fmuladd.f64(double 0x3C99000000000000, double %16890, double %16882)
  %16892 = load ptr, ptr %7, align 8, !tbaa !9
  %16893 = load i32, ptr %12, align 4, !tbaa !5
  %16894 = load i32, ptr %8, align 4, !tbaa !5
  %16895 = mul nsw i32 3, %16894
  %16896 = add nsw i32 %16893, %16895
  %16897 = sext i32 %16896 to i64
  %16898 = getelementptr inbounds double, ptr %16892, i64 %16897
  %16899 = load double, ptr %16898, align 8, !tbaa !11
  %16900 = call double @llvm.fmuladd.f64(double 0xBC92000000000000, double %16899, double %16891)
  %16901 = load ptr, ptr %7, align 8, !tbaa !9
  %16902 = load i32, ptr %12, align 4, !tbaa !5
  %16903 = load i32, ptr %8, align 4, !tbaa !5
  %16904 = mul nsw i32 4, %16903
  %16905 = add nsw i32 %16902, %16904
  %16906 = sext i32 %16905 to i64
  %16907 = getelementptr inbounds double, ptr %16901, i64 %16906
  %16908 = load double, ptr %16907, align 8, !tbaa !11
  %16909 = call double @llvm.fmuladd.f64(double 0xBCB2000000000000, double %16908, double %16900)
  %16910 = load ptr, ptr %7, align 8, !tbaa !9
  %16911 = load i32, ptr %12, align 4, !tbaa !5
  %16912 = load i32, ptr %8, align 4, !tbaa !5
  %16913 = mul nsw i32 5, %16912
  %16914 = add nsw i32 %16911, %16913
  %16915 = sext i32 %16914 to i64
  %16916 = getelementptr inbounds double, ptr %16910, i64 %16915
  %16917 = load double, ptr %16916, align 8, !tbaa !11
  %16918 = call double @llvm.fmuladd.f64(double 0x3CB4800000000001, double %16917, double %16909)
  %16919 = load ptr, ptr %7, align 8, !tbaa !9
  %16920 = load i32, ptr %12, align 4, !tbaa !5
  %16921 = load i32, ptr %8, align 4, !tbaa !5
  %16922 = mul nsw i32 6, %16921
  %16923 = add nsw i32 %16920, %16922
  %16924 = sext i32 %16923 to i64
  %16925 = getelementptr inbounds double, ptr %16919, i64 %16924
  %16926 = load double, ptr %16925, align 8, !tbaa !11
  %16927 = call double @llvm.fmuladd.f64(double 0x3C67FFFFFFFFFFFE, double %16926, double %16918)
  %16928 = load ptr, ptr %7, align 8, !tbaa !9
  %16929 = load i32, ptr %12, align 4, !tbaa !5
  %16930 = load i32, ptr %8, align 4, !tbaa !5
  %16931 = mul nsw i32 7, %16930
  %16932 = add nsw i32 %16929, %16931
  %16933 = sext i32 %16932 to i64
  %16934 = getelementptr inbounds double, ptr %16928, i64 %16933
  %16935 = load double, ptr %16934, align 8, !tbaa !11
  %16936 = call double @llvm.fmuladd.f64(double 0x3C9C000000000000, double %16935, double %16927)
  %16937 = load ptr, ptr %7, align 8, !tbaa !9
  %16938 = load i32, ptr %12, align 4, !tbaa !5
  %16939 = load i32, ptr %8, align 4, !tbaa !5
  %16940 = mul nsw i32 8, %16939
  %16941 = add nsw i32 %16938, %16940
  %16942 = sext i32 %16941 to i64
  %16943 = getelementptr inbounds double, ptr %16937, i64 %16942
  %16944 = load double, ptr %16943, align 8, !tbaa !11
  %16945 = call double @llvm.fmuladd.f64(double 0xBCA0000000000002, double %16944, double %16936)
  %16946 = load ptr, ptr %7, align 8, !tbaa !9
  %16947 = load i32, ptr %12, align 4, !tbaa !5
  %16948 = load i32, ptr %8, align 4, !tbaa !5
  %16949 = mul nsw i32 9, %16948
  %16950 = add nsw i32 %16947, %16949
  %16951 = sext i32 %16950 to i64
  %16952 = getelementptr inbounds double, ptr %16946, i64 %16951
  %16953 = load double, ptr %16952, align 8, !tbaa !11
  %16954 = call double @llvm.fmuladd.f64(double 0x3C98000000000000, double %16953, double %16945)
  %16955 = load ptr, ptr %7, align 8, !tbaa !9
  %16956 = load i32, ptr %12, align 4, !tbaa !5
  %16957 = load i32, ptr %8, align 4, !tbaa !5
  %16958 = mul nsw i32 10, %16957
  %16959 = add nsw i32 %16956, %16958
  %16960 = sext i32 %16959 to i64
  %16961 = getelementptr inbounds double, ptr %16955, i64 %16960
  %16962 = load double, ptr %16961, align 8, !tbaa !11
  %16963 = call double @llvm.fmuladd.f64(double 0xBCBE000000000000, double %16962, double %16954)
  %16964 = load ptr, ptr %7, align 8, !tbaa !9
  %16965 = load i32, ptr %12, align 4, !tbaa !5
  %16966 = load i32, ptr %8, align 4, !tbaa !5
  %16967 = mul nsw i32 11, %16966
  %16968 = add nsw i32 %16965, %16967
  %16969 = sext i32 %16968 to i64
  %16970 = getelementptr inbounds double, ptr %16964, i64 %16969
  %16971 = load double, ptr %16970, align 8, !tbaa !11
  %16972 = call double @llvm.fmuladd.f64(double 0x3C7FFFFFFFFFFFFF, double %16971, double %16963)
  %16973 = load ptr, ptr %7, align 8, !tbaa !9
  %16974 = load i32, ptr %12, align 4, !tbaa !5
  %16975 = load i32, ptr %8, align 4, !tbaa !5
  %16976 = mul nsw i32 12, %16975
  %16977 = add nsw i32 %16974, %16976
  %16978 = sext i32 %16977 to i64
  %16979 = getelementptr inbounds double, ptr %16973, i64 %16978
  %16980 = load double, ptr %16979, align 8, !tbaa !11
  %16981 = call double @llvm.fmuladd.f64(double 0xBCA5000000000000, double %16980, double %16972)
  %16982 = load ptr, ptr %7, align 8, !tbaa !9
  %16983 = load i32, ptr %12, align 4, !tbaa !5
  %16984 = load i32, ptr %8, align 4, !tbaa !5
  %16985 = mul nsw i32 13, %16984
  %16986 = add nsw i32 %16983, %16985
  %16987 = sext i32 %16986 to i64
  %16988 = getelementptr inbounds double, ptr %16982, i64 %16987
  %16989 = load double, ptr %16988, align 8, !tbaa !11
  %16990 = call double @llvm.fmuladd.f64(double 0xBCAE000000000002, double %16989, double %16981)
  %16991 = load ptr, ptr %7, align 8, !tbaa !9
  %16992 = load i32, ptr %12, align 4, !tbaa !5
  %16993 = load i32, ptr %8, align 4, !tbaa !5
  %16994 = mul nsw i32 15, %16993
  %16995 = add nsw i32 %16992, %16994
  %16996 = sext i32 %16995 to i64
  %16997 = getelementptr inbounds double, ptr %16991, i64 %16996
  %16998 = load double, ptr %16997, align 8, !tbaa !11
  %16999 = call double @llvm.fmuladd.f64(double 0xBCA8000000000001, double %16998, double %16990)
  %17000 = load ptr, ptr %7, align 8, !tbaa !9
  %17001 = load i32, ptr %12, align 4, !tbaa !5
  %17002 = load i32, ptr %8, align 4, !tbaa !5
  %17003 = mul nsw i32 16, %17002
  %17004 = add nsw i32 %17001, %17003
  %17005 = sext i32 %17004 to i64
  %17006 = getelementptr inbounds double, ptr %17000, i64 %17005
  %17007 = load double, ptr %17006, align 8, !tbaa !11
  %17008 = call double @llvm.fmuladd.f64(double 0x3CBF000000000001, double %17007, double %16999)
  %17009 = load ptr, ptr %7, align 8, !tbaa !9
  %17010 = load i32, ptr %12, align 4, !tbaa !5
  %17011 = load i32, ptr %8, align 4, !tbaa !5
  %17012 = mul nsw i32 17, %17011
  %17013 = add nsw i32 %17010, %17012
  %17014 = sext i32 %17013 to i64
  %17015 = getelementptr inbounds double, ptr %17009, i64 %17014
  %17016 = load double, ptr %17015, align 8, !tbaa !11
  %17017 = call double @llvm.fmuladd.f64(double 0xBCB3000000000000, double %17016, double %17008)
  %17018 = load ptr, ptr %7, align 8, !tbaa !9
  %17019 = load i32, ptr %12, align 4, !tbaa !5
  %17020 = load i32, ptr %8, align 4, !tbaa !5
  %17021 = mul nsw i32 18, %17020
  %17022 = add nsw i32 %17019, %17021
  %17023 = sext i32 %17022 to i64
  %17024 = getelementptr inbounds double, ptr %17018, i64 %17023
  %17025 = load double, ptr %17024, align 8, !tbaa !11
  %17026 = call double @llvm.fmuladd.f64(double 0x3CB3FFFFFFFFFFFF, double %17025, double %17017)
  %17027 = load ptr, ptr %7, align 8, !tbaa !9
  %17028 = load i32, ptr %12, align 4, !tbaa !5
  %17029 = load i32, ptr %8, align 4, !tbaa !5
  %17030 = mul nsw i32 19, %17029
  %17031 = add nsw i32 %17028, %17030
  %17032 = sext i32 %17031 to i64
  %17033 = getelementptr inbounds double, ptr %17027, i64 %17032
  %17034 = load double, ptr %17033, align 8, !tbaa !11
  %17035 = call double @llvm.fmuladd.f64(double 0xBCA8000000000001, double %17034, double %17026)
  %17036 = load ptr, ptr %7, align 8, !tbaa !9
  %17037 = load i32, ptr %12, align 4, !tbaa !5
  %17038 = load i32, ptr %8, align 4, !tbaa !5
  %17039 = mul nsw i32 20, %17038
  %17040 = add nsw i32 %17037, %17039
  %17041 = sext i32 %17040 to i64
  %17042 = getelementptr inbounds double, ptr %17036, i64 %17041
  %17043 = load double, ptr %17042, align 8, !tbaa !11
  %17044 = call double @llvm.fmuladd.f64(double 0xBF83152016E0EC70, double %17043, double %17035)
  %17045 = load ptr, ptr %7, align 8, !tbaa !9
  %17046 = load i32, ptr %12, align 4, !tbaa !5
  %17047 = load i32, ptr %8, align 4, !tbaa !5
  %17048 = mul nsw i32 21, %17047
  %17049 = add nsw i32 %17046, %17048
  %17050 = sext i32 %17049 to i64
  %17051 = getelementptr inbounds double, ptr %17045, i64 %17050
  %17052 = load double, ptr %17051, align 8, !tbaa !11
  %17053 = call double @llvm.fmuladd.f64(double 0x3FF4EC1BB3FDC612, double %17052, double %17044)
  %17054 = load ptr, ptr %7, align 8, !tbaa !9
  %17055 = load i32, ptr %12, align 4, !tbaa !5
  %17056 = load i32, ptr %8, align 4, !tbaa !5
  %17057 = mul nsw i32 22, %17056
  %17058 = add nsw i32 %17055, %17057
  %17059 = sext i32 %17058 to i64
  %17060 = getelementptr inbounds double, ptr %17054, i64 %17059
  %17061 = load double, ptr %17060, align 8, !tbaa !11
  %17062 = call double @llvm.fmuladd.f64(double 0xBFB5B58B4F03B194, double %17061, double %17053)
  %17063 = load ptr, ptr %7, align 8, !tbaa !9
  %17064 = load i32, ptr %12, align 4, !tbaa !5
  %17065 = load i32, ptr %8, align 4, !tbaa !5
  %17066 = mul nsw i32 23, %17065
  %17067 = add nsw i32 %17064, %17066
  %17068 = sext i32 %17067 to i64
  %17069 = getelementptr inbounds double, ptr %17063, i64 %17068
  %17070 = load double, ptr %17069, align 8, !tbaa !11
  %17071 = call double @llvm.fmuladd.f64(double 0x3F938CE4890DB2C2, double %17070, double %17062)
  %17072 = load ptr, ptr %7, align 8, !tbaa !9
  %17073 = load i32, ptr %12, align 4, !tbaa !5
  %17074 = load i32, ptr %8, align 4, !tbaa !5
  %17075 = mul nsw i32 24, %17074
  %17076 = add nsw i32 %17073, %17075
  %17077 = sext i32 %17076 to i64
  %17078 = getelementptr inbounds double, ptr %17072, i64 %17077
  %17079 = load double, ptr %17078, align 8, !tbaa !11
  %17080 = call double @llvm.fmuladd.f64(double 0x3FD417DEBFC17B11, double %17079, double %17071)
  %17081 = load ptr, ptr %7, align 8, !tbaa !9
  %17082 = load i32, ptr %12, align 4, !tbaa !5
  %17083 = load i32, ptr %8, align 4, !tbaa !5
  %17084 = mul nsw i32 25, %17083
  %17085 = add nsw i32 %17082, %17084
  %17086 = sext i32 %17085 to i64
  %17087 = getelementptr inbounds double, ptr %17081, i64 %17086
  %17088 = load double, ptr %17087, align 8, !tbaa !11
  %17089 = call double @llvm.fmuladd.f64(double 0xBFB49217631F592C, double %17088, double %17080)
  %17090 = load ptr, ptr %7, align 8, !tbaa !9
  %17091 = load i32, ptr %12, align 4, !tbaa !5
  %17092 = load i32, ptr %8, align 4, !tbaa !5
  %17093 = mul nsw i32 26, %17092
  %17094 = add nsw i32 %17091, %17093
  %17095 = sext i32 %17094 to i64
  %17096 = getelementptr inbounds double, ptr %17090, i64 %17095
  %17097 = load double, ptr %17096, align 8, !tbaa !11
  %17098 = call double @llvm.fmuladd.f64(double 0x3F85E50BB681A317, double %17097, double %17089)
  %17099 = load ptr, ptr %7, align 8, !tbaa !9
  %17100 = load i32, ptr %12, align 4, !tbaa !5
  %17101 = load i32, ptr %8, align 4, !tbaa !5
  %17102 = mul nsw i32 27, %17101
  %17103 = add nsw i32 %17100, %17102
  %17104 = sext i32 %17103 to i64
  %17105 = getelementptr inbounds double, ptr %17099, i64 %17104
  %17106 = load double, ptr %17105, align 8, !tbaa !11
  %17107 = call double @llvm.fmuladd.f64(double 0xBF8BDAF699AECE56, double %17106, double %17098)
  %17108 = load ptr, ptr %7, align 8, !tbaa !9
  %17109 = load i32, ptr %12, align 4, !tbaa !5
  %17110 = load i32, ptr %8, align 4, !tbaa !5
  %17111 = mul nsw i32 28, %17110
  %17112 = add nsw i32 %17109, %17111
  %17113 = sext i32 %17112 to i64
  %17114 = getelementptr inbounds double, ptr %17108, i64 %17113
  %17115 = load double, ptr %17114, align 8, !tbaa !11
  %17116 = call double @llvm.fmuladd.f64(double 0x3FCA50C41AB7A31A, double %17115, double %17107)
  %17117 = load ptr, ptr %7, align 8, !tbaa !9
  %17118 = load i32, ptr %12, align 4, !tbaa !5
  %17119 = load i32, ptr %8, align 4, !tbaa !5
  %17120 = mul nsw i32 29, %17119
  %17121 = add nsw i32 %17118, %17120
  %17122 = sext i32 %17121 to i64
  %17123 = getelementptr inbounds double, ptr %17117, i64 %17122
  %17124 = load double, ptr %17123, align 8, !tbaa !11
  %17125 = call double @llvm.fmuladd.f64(double 0xBFE5679E70A60656, double %17124, double %17116)
  %17126 = load ptr, ptr %7, align 8, !tbaa !9
  %17127 = load i32, ptr %12, align 4, !tbaa !5
  %17128 = load i32, ptr %8, align 4, !tbaa !5
  %17129 = mul nsw i32 30, %17128
  %17130 = add nsw i32 %17127, %17129
  %17131 = sext i32 %17130 to i64
  %17132 = getelementptr inbounds double, ptr %17126, i64 %17131
  %17133 = load double, ptr %17132, align 8, !tbaa !11
  %17134 = call double @llvm.fmuladd.f64(double 0x3C7FFFFFFFFFFFFF, double %17133, double %17125)
  %17135 = load ptr, ptr %7, align 8, !tbaa !9
  %17136 = load i32, ptr %12, align 4, !tbaa !5
  %17137 = load i32, ptr %8, align 4, !tbaa !5
  %17138 = mul nsw i32 31, %17137
  %17139 = add nsw i32 %17136, %17138
  %17140 = sext i32 %17139 to i64
  %17141 = getelementptr inbounds double, ptr %17135, i64 %17140
  %17142 = load double, ptr %17141, align 8, !tbaa !11
  %17143 = call double @llvm.fmuladd.f64(double 0x3CAC000000000000, double %17142, double %17134)
  %17144 = load ptr, ptr %7, align 8, !tbaa !9
  %17145 = load i32, ptr %12, align 4, !tbaa !5
  %17146 = load i32, ptr %8, align 4, !tbaa !5
  %17147 = mul nsw i32 32, %17146
  %17148 = add nsw i32 %17145, %17147
  %17149 = sext i32 %17148 to i64
  %17150 = getelementptr inbounds double, ptr %17144, i64 %17149
  %17151 = load double, ptr %17150, align 8, !tbaa !11
  %17152 = call double @llvm.fmuladd.f64(double 0x3C95000000000000, double %17151, double %17143)
  %17153 = load ptr, ptr %7, align 8, !tbaa !9
  %17154 = load i32, ptr %12, align 4, !tbaa !5
  %17155 = load i32, ptr %8, align 4, !tbaa !5
  %17156 = mul nsw i32 33, %17155
  %17157 = add nsw i32 %17154, %17156
  %17158 = sext i32 %17157 to i64
  %17159 = getelementptr inbounds double, ptr %17153, i64 %17158
  %17160 = load double, ptr %17159, align 8, !tbaa !11
  %17161 = call double @llvm.fmuladd.f64(double 0x3CB8800000000000, double %17160, double %17152)
  %17162 = load ptr, ptr %7, align 8, !tbaa !9
  %17163 = load i32, ptr %12, align 4, !tbaa !5
  %17164 = load i32, ptr %8, align 4, !tbaa !5
  %17165 = mul nsw i32 34, %17164
  %17166 = add nsw i32 %17163, %17165
  %17167 = sext i32 %17166 to i64
  %17168 = getelementptr inbounds double, ptr %17162, i64 %17167
  %17169 = load double, ptr %17168, align 8, !tbaa !11
  %17170 = call double @llvm.fmuladd.f64(double 0xBC98000000000000, double %17169, double %17161)
  %17171 = load ptr, ptr %7, align 8, !tbaa !9
  %17172 = load i32, ptr %12, align 4, !tbaa !5
  %17173 = load i32, ptr %8, align 4, !tbaa !5
  %17174 = mul nsw i32 35, %17173
  %17175 = add nsw i32 %17172, %17174
  %17176 = sext i32 %17175 to i64
  %17177 = getelementptr inbounds double, ptr %17171, i64 %17176
  %17178 = load double, ptr %17177, align 8, !tbaa !11
  %17179 = call double @llvm.fmuladd.f64(double 0xBCA2000000000000, double %17178, double %17170)
  %17180 = load ptr, ptr %7, align 8, !tbaa !9
  %17181 = load i32, ptr %12, align 4, !tbaa !5
  %17182 = load i32, ptr %8, align 4, !tbaa !5
  %17183 = mul nsw i32 36, %17182
  %17184 = add nsw i32 %17181, %17183
  %17185 = sext i32 %17184 to i64
  %17186 = getelementptr inbounds double, ptr %17180, i64 %17185
  %17187 = load double, ptr %17186, align 8, !tbaa !11
  %17188 = call double @llvm.fmuladd.f64(double 0x3C7C000000000000, double %17187, double %17179)
  %17189 = load ptr, ptr %7, align 8, !tbaa !9
  %17190 = load i32, ptr %12, align 4, !tbaa !5
  %17191 = load i32, ptr %8, align 4, !tbaa !5
  %17192 = mul nsw i32 37, %17191
  %17193 = add nsw i32 %17190, %17192
  %17194 = sext i32 %17193 to i64
  %17195 = getelementptr inbounds double, ptr %17189, i64 %17194
  %17196 = load double, ptr %17195, align 8, !tbaa !11
  %17197 = call double @llvm.fmuladd.f64(double 0xBCB0400000000000, double %17196, double %17188)
  %17198 = load ptr, ptr %7, align 8, !tbaa !9
  %17199 = load i32, ptr %12, align 4, !tbaa !5
  %17200 = load i32, ptr %8, align 4, !tbaa !5
  %17201 = mul nsw i32 38, %17200
  %17202 = add nsw i32 %17199, %17201
  %17203 = sext i32 %17202 to i64
  %17204 = getelementptr inbounds double, ptr %17198, i64 %17203
  %17205 = load double, ptr %17204, align 8, !tbaa !11
  %17206 = call double @llvm.fmuladd.f64(double 0x3C98000000000000, double %17205, double %17197)
  %17207 = load ptr, ptr %7, align 8, !tbaa !9
  %17208 = load i32, ptr %12, align 4, !tbaa !5
  %17209 = load i32, ptr %8, align 4, !tbaa !5
  %17210 = mul nsw i32 39, %17209
  %17211 = add nsw i32 %17208, %17210
  %17212 = sext i32 %17211 to i64
  %17213 = getelementptr inbounds double, ptr %17207, i64 %17212
  %17214 = load double, ptr %17213, align 8, !tbaa !11
  %17215 = call double @llvm.fmuladd.f64(double 0xBC9C000000000000, double %17214, double %17206)
  store double %17215, ptr %11, align 8, !tbaa !11
  %17216 = load double, ptr %11, align 8, !tbaa !11
  %17217 = load ptr, ptr %9, align 8, !tbaa !9
  %17218 = load i32, ptr %12, align 4, !tbaa !5
  %17219 = load i32, ptr %10, align 4, !tbaa !5
  %17220 = mul nsw i32 47, %17219
  %17221 = add nsw i32 %17218, %17220
  %17222 = sext i32 %17221 to i64
  %17223 = getelementptr inbounds double, ptr %17217, i64 %17222
  store double %17216, ptr %17223, align 8, !tbaa !11
  %17224 = load ptr, ptr %7, align 8, !tbaa !9
  %17225 = load i32, ptr %12, align 4, !tbaa !5
  %17226 = load i32, ptr %8, align 4, !tbaa !5
  %17227 = mul nsw i32 0, %17226
  %17228 = add nsw i32 %17225, %17227
  %17229 = sext i32 %17228 to i64
  %17230 = getelementptr inbounds double, ptr %17224, i64 %17229
  %17231 = load double, ptr %17230, align 8, !tbaa !11
  %17232 = load ptr, ptr %7, align 8, !tbaa !9
  %17233 = load i32, ptr %12, align 4, !tbaa !5
  %17234 = load i32, ptr %8, align 4, !tbaa !5
  %17235 = mul nsw i32 1, %17234
  %17236 = add nsw i32 %17233, %17235
  %17237 = sext i32 %17236 to i64
  %17238 = getelementptr inbounds double, ptr %17232, i64 %17237
  %17239 = load double, ptr %17238, align 8, !tbaa !11
  %17240 = fmul double 0x3C6C000000000000, %17239
  %17241 = call double @llvm.fmuladd.f64(double 0xBC81000000000000, double %17231, double %17240)
  %17242 = load ptr, ptr %7, align 8, !tbaa !9
  %17243 = load i32, ptr %12, align 4, !tbaa !5
  %17244 = load i32, ptr %8, align 4, !tbaa !5
  %17245 = mul nsw i32 2, %17244
  %17246 = add nsw i32 %17243, %17245
  %17247 = sext i32 %17246 to i64
  %17248 = getelementptr inbounds double, ptr %17242, i64 %17247
  %17249 = load double, ptr %17248, align 8, !tbaa !11
  %17250 = call double @llvm.fmuladd.f64(double 0xBC68BFFFFFFFFFFD, double %17249, double %17241)
  %17251 = load ptr, ptr %7, align 8, !tbaa !9
  %17252 = load i32, ptr %12, align 4, !tbaa !5
  %17253 = load i32, ptr %8, align 4, !tbaa !5
  %17254 = mul nsw i32 3, %17253
  %17255 = add nsw i32 %17252, %17254
  %17256 = sext i32 %17255 to i64
  %17257 = getelementptr inbounds double, ptr %17251, i64 %17256
  %17258 = load double, ptr %17257, align 8, !tbaa !11
  %17259 = call double @llvm.fmuladd.f64(double 0x3CB72A0000000001, double %17258, double %17250)
  %17260 = load ptr, ptr %7, align 8, !tbaa !9
  %17261 = load i32, ptr %12, align 4, !tbaa !5
  %17262 = load i32, ptr %8, align 4, !tbaa !5
  %17263 = mul nsw i32 4, %17262
  %17264 = add nsw i32 %17261, %17263
  %17265 = sext i32 %17264 to i64
  %17266 = getelementptr inbounds double, ptr %17260, i64 %17265
  %17267 = load double, ptr %17266, align 8, !tbaa !11
  %17268 = call double @llvm.fmuladd.f64(double 0x3C90400000000000, double %17267, double %17259)
  %17269 = load ptr, ptr %7, align 8, !tbaa !9
  %17270 = load i32, ptr %12, align 4, !tbaa !5
  %17271 = load i32, ptr %8, align 4, !tbaa !5
  %17272 = mul nsw i32 5, %17271
  %17273 = add nsw i32 %17270, %17272
  %17274 = sext i32 %17273 to i64
  %17275 = getelementptr inbounds double, ptr %17269, i64 %17274
  %17276 = load double, ptr %17275, align 8, !tbaa !11
  %17277 = call double @llvm.fmuladd.f64(double 0x3C91000000000000, double %17276, double %17268)
  %17278 = load ptr, ptr %7, align 8, !tbaa !9
  %17279 = load i32, ptr %12, align 4, !tbaa !5
  %17280 = load i32, ptr %8, align 4, !tbaa !5
  %17281 = mul nsw i32 6, %17280
  %17282 = add nsw i32 %17279, %17281
  %17283 = sext i32 %17282 to i64
  %17284 = getelementptr inbounds double, ptr %17278, i64 %17283
  %17285 = load double, ptr %17284, align 8, !tbaa !11
  %17286 = call double @llvm.fmuladd.f64(double 0x3CA9B7FFFFFFFFFF, double %17285, double %17277)
  %17287 = load ptr, ptr %7, align 8, !tbaa !9
  %17288 = load i32, ptr %12, align 4, !tbaa !5
  %17289 = load i32, ptr %8, align 4, !tbaa !5
  %17290 = mul nsw i32 7, %17289
  %17291 = add nsw i32 %17288, %17290
  %17292 = sext i32 %17291 to i64
  %17293 = getelementptr inbounds double, ptr %17287, i64 %17292
  %17294 = load double, ptr %17293, align 8, !tbaa !11
  %17295 = call double @llvm.fmuladd.f64(double 0x3C73400000000001, double %17294, double %17286)
  %17296 = load ptr, ptr %7, align 8, !tbaa !9
  %17297 = load i32, ptr %12, align 4, !tbaa !5
  %17298 = load i32, ptr %8, align 4, !tbaa !5
  %17299 = mul nsw i32 8, %17298
  %17300 = add nsw i32 %17297, %17299
  %17301 = sext i32 %17300 to i64
  %17302 = getelementptr inbounds double, ptr %17296, i64 %17301
  %17303 = load double, ptr %17302, align 8, !tbaa !11
  %17304 = call double @llvm.fmuladd.f64(double 0x3C74000000000000, double %17303, double %17295)
  %17305 = load ptr, ptr %7, align 8, !tbaa !9
  %17306 = load i32, ptr %12, align 4, !tbaa !5
  %17307 = load i32, ptr %8, align 4, !tbaa !5
  %17308 = mul nsw i32 9, %17307
  %17309 = add nsw i32 %17306, %17308
  %17310 = sext i32 %17309 to i64
  %17311 = getelementptr inbounds double, ptr %17305, i64 %17310
  %17312 = load double, ptr %17311, align 8, !tbaa !11
  %17313 = call double @llvm.fmuladd.f64(double 0xBCA5800000000000, double %17312, double %17304)
  %17314 = load ptr, ptr %7, align 8, !tbaa !9
  %17315 = load i32, ptr %12, align 4, !tbaa !5
  %17316 = load i32, ptr %8, align 4, !tbaa !5
  %17317 = mul nsw i32 10, %17316
  %17318 = add nsw i32 %17315, %17317
  %17319 = sext i32 %17318 to i64
  %17320 = getelementptr inbounds double, ptr %17314, i64 %17319
  %17321 = load double, ptr %17320, align 8, !tbaa !11
  %17322 = call double @llvm.fmuladd.f64(double 0x3C93800000000000, double %17321, double %17313)
  %17323 = load ptr, ptr %7, align 8, !tbaa !9
  %17324 = load i32, ptr %12, align 4, !tbaa !5
  %17325 = load i32, ptr %8, align 4, !tbaa !5
  %17326 = mul nsw i32 11, %17325
  %17327 = add nsw i32 %17324, %17326
  %17328 = sext i32 %17327 to i64
  %17329 = getelementptr inbounds double, ptr %17323, i64 %17328
  %17330 = load double, ptr %17329, align 8, !tbaa !11
  %17331 = call double @llvm.fmuladd.f64(double 0xBC70000000000001, double %17330, double %17322)
  %17332 = load ptr, ptr %7, align 8, !tbaa !9
  %17333 = load i32, ptr %12, align 4, !tbaa !5
  %17334 = load i32, ptr %8, align 4, !tbaa !5
  %17335 = mul nsw i32 12, %17334
  %17336 = add nsw i32 %17333, %17335
  %17337 = sext i32 %17336 to i64
  %17338 = getelementptr inbounds double, ptr %17332, i64 %17337
  %17339 = load double, ptr %17338, align 8, !tbaa !11
  %17340 = call double @llvm.fmuladd.f64(double 0xBC93C00000000000, double %17339, double %17331)
  %17341 = load ptr, ptr %7, align 8, !tbaa !9
  %17342 = load i32, ptr %12, align 4, !tbaa !5
  %17343 = load i32, ptr %8, align 4, !tbaa !5
  %17344 = mul nsw i32 13, %17343
  %17345 = add nsw i32 %17342, %17344
  %17346 = sext i32 %17345 to i64
  %17347 = getelementptr inbounds double, ptr %17341, i64 %17346
  %17348 = load double, ptr %17347, align 8, !tbaa !11
  %17349 = call double @llvm.fmuladd.f64(double 0x3C717FFFFFFFFFFF, double %17348, double %17340)
  %17350 = load ptr, ptr %7, align 8, !tbaa !9
  %17351 = load i32, ptr %12, align 4, !tbaa !5
  %17352 = load i32, ptr %8, align 4, !tbaa !5
  %17353 = mul nsw i32 14, %17352
  %17354 = add nsw i32 %17351, %17353
  %17355 = sext i32 %17354 to i64
  %17356 = getelementptr inbounds double, ptr %17350, i64 %17355
  %17357 = load double, ptr %17356, align 8, !tbaa !11
  %17358 = call double @llvm.fmuladd.f64(double 0x3C94000000000000, double %17357, double %17349)
  %17359 = load ptr, ptr %7, align 8, !tbaa !9
  %17360 = load i32, ptr %12, align 4, !tbaa !5
  %17361 = load i32, ptr %8, align 4, !tbaa !5
  %17362 = mul nsw i32 15, %17361
  %17363 = add nsw i32 %17360, %17362
  %17364 = sext i32 %17363 to i64
  %17365 = getelementptr inbounds double, ptr %17359, i64 %17364
  %17366 = load double, ptr %17365, align 8, !tbaa !11
  %17367 = call double @llvm.fmuladd.f64(double 0x3C91800000000000, double %17366, double %17358)
  %17368 = load ptr, ptr %7, align 8, !tbaa !9
  %17369 = load i32, ptr %12, align 4, !tbaa !5
  %17370 = load i32, ptr %8, align 4, !tbaa !5
  %17371 = mul nsw i32 16, %17370
  %17372 = add nsw i32 %17369, %17371
  %17373 = sext i32 %17372 to i64
  %17374 = getelementptr inbounds double, ptr %17368, i64 %17373
  %17375 = load double, ptr %17374, align 8, !tbaa !11
  %17376 = call double @llvm.fmuladd.f64(double 0x3CABF00000000000, double %17375, double %17367)
  %17377 = load ptr, ptr %7, align 8, !tbaa !9
  %17378 = load i32, ptr %12, align 4, !tbaa !5
  %17379 = load i32, ptr %8, align 4, !tbaa !5
  %17380 = mul nsw i32 17, %17379
  %17381 = add nsw i32 %17378, %17380
  %17382 = sext i32 %17381 to i64
  %17383 = getelementptr inbounds double, ptr %17377, i64 %17382
  %17384 = load double, ptr %17383, align 8, !tbaa !11
  %17385 = call double @llvm.fmuladd.f64(double 0xBCB08FFFFFFFFFFF, double %17384, double %17376)
  %17386 = load ptr, ptr %7, align 8, !tbaa !9
  %17387 = load i32, ptr %12, align 4, !tbaa !5
  %17388 = load i32, ptr %8, align 4, !tbaa !5
  %17389 = mul nsw i32 18, %17388
  %17390 = add nsw i32 %17387, %17389
  %17391 = sext i32 %17390 to i64
  %17392 = getelementptr inbounds double, ptr %17386, i64 %17391
  %17393 = load double, ptr %17392, align 8, !tbaa !11
  %17394 = call double @llvm.fmuladd.f64(double 0x3CA0000000000002, double %17393, double %17385)
  %17395 = load ptr, ptr %7, align 8, !tbaa !9
  %17396 = load i32, ptr %12, align 4, !tbaa !5
  %17397 = load i32, ptr %8, align 4, !tbaa !5
  %17398 = mul nsw i32 19, %17397
  %17399 = add nsw i32 %17396, %17398
  %17400 = sext i32 %17399 to i64
  %17401 = getelementptr inbounds double, ptr %17395, i64 %17400
  %17402 = load double, ptr %17401, align 8, !tbaa !11
  %17403 = call double @llvm.fmuladd.f64(double 0xBC50000000000000, double %17402, double %17394)
  %17404 = load ptr, ptr %7, align 8, !tbaa !9
  %17405 = load i32, ptr %12, align 4, !tbaa !5
  %17406 = load i32, ptr %8, align 4, !tbaa !5
  %17407 = mul nsw i32 20, %17406
  %17408 = add nsw i32 %17405, %17407
  %17409 = sext i32 %17408 to i64
  %17410 = getelementptr inbounds double, ptr %17404, i64 %17409
  %17411 = load double, ptr %17410, align 8, !tbaa !11
  %17412 = call double @llvm.fmuladd.f64(double 0x3CA63FFFFFFFFFFF, double %17411, double %17403)
  %17413 = load ptr, ptr %7, align 8, !tbaa !9
  %17414 = load i32, ptr %12, align 4, !tbaa !5
  %17415 = load i32, ptr %8, align 4, !tbaa !5
  %17416 = mul nsw i32 21, %17415
  %17417 = add nsw i32 %17414, %17416
  %17418 = sext i32 %17417 to i64
  %17419 = getelementptr inbounds double, ptr %17413, i64 %17418
  %17420 = load double, ptr %17419, align 8, !tbaa !11
  %17421 = call double @llvm.fmuladd.f64(double 0xBC6C000000000000, double %17420, double %17412)
  %17422 = load ptr, ptr %7, align 8, !tbaa !9
  %17423 = load i32, ptr %12, align 4, !tbaa !5
  %17424 = load i32, ptr %8, align 4, !tbaa !5
  %17425 = mul nsw i32 22, %17424
  %17426 = add nsw i32 %17423, %17425
  %17427 = sext i32 %17426 to i64
  %17428 = getelementptr inbounds double, ptr %17422, i64 %17427
  %17429 = load double, ptr %17428, align 8, !tbaa !11
  %17430 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %17429, double %17421)
  %17431 = load ptr, ptr %7, align 8, !tbaa !9
  %17432 = load i32, ptr %12, align 4, !tbaa !5
  %17433 = load i32, ptr %8, align 4, !tbaa !5
  %17434 = mul nsw i32 23, %17433
  %17435 = add nsw i32 %17432, %17434
  %17436 = sext i32 %17435 to i64
  %17437 = getelementptr inbounds double, ptr %17431, i64 %17436
  %17438 = load double, ptr %17437, align 8, !tbaa !11
  %17439 = call double @llvm.fmuladd.f64(double 0xBC9CDFFFFFFFFFFF, double %17438, double %17430)
  %17440 = load ptr, ptr %7, align 8, !tbaa !9
  %17441 = load i32, ptr %12, align 4, !tbaa !5
  %17442 = load i32, ptr %8, align 4, !tbaa !5
  %17443 = mul nsw i32 24, %17442
  %17444 = add nsw i32 %17441, %17443
  %17445 = sext i32 %17444 to i64
  %17446 = getelementptr inbounds double, ptr %17440, i64 %17445
  %17447 = load double, ptr %17446, align 8, !tbaa !11
  %17448 = call double @llvm.fmuladd.f64(double 0x3CA9000000000000, double %17447, double %17439)
  %17449 = load ptr, ptr %7, align 8, !tbaa !9
  %17450 = load i32, ptr %12, align 4, !tbaa !5
  %17451 = load i32, ptr %8, align 4, !tbaa !5
  %17452 = mul nsw i32 25, %17451
  %17453 = add nsw i32 %17450, %17452
  %17454 = sext i32 %17453 to i64
  %17455 = getelementptr inbounds double, ptr %17449, i64 %17454
  %17456 = load double, ptr %17455, align 8, !tbaa !11
  %17457 = call double @llvm.fmuladd.f64(double 0xBCA3C00000000002, double %17456, double %17448)
  %17458 = load ptr, ptr %7, align 8, !tbaa !9
  %17459 = load i32, ptr %12, align 4, !tbaa !5
  %17460 = load i32, ptr %8, align 4, !tbaa !5
  %17461 = mul nsw i32 26, %17460
  %17462 = add nsw i32 %17459, %17461
  %17463 = sext i32 %17462 to i64
  %17464 = getelementptr inbounds double, ptr %17458, i64 %17463
  %17465 = load double, ptr %17464, align 8, !tbaa !11
  %17466 = call double @llvm.fmuladd.f64(double 0xBC98200000000000, double %17465, double %17457)
  %17467 = load ptr, ptr %7, align 8, !tbaa !9
  %17468 = load i32, ptr %12, align 4, !tbaa !5
  %17469 = load i32, ptr %8, align 4, !tbaa !5
  %17470 = mul nsw i32 27, %17469
  %17471 = add nsw i32 %17468, %17470
  %17472 = sext i32 %17471 to i64
  %17473 = getelementptr inbounds double, ptr %17467, i64 %17472
  %17474 = load double, ptr %17473, align 8, !tbaa !11
  %17475 = call double @llvm.fmuladd.f64(double 0xBCA65FFFFFFFFFFF, double %17474, double %17466)
  %17476 = load ptr, ptr %7, align 8, !tbaa !9
  %17477 = load i32, ptr %12, align 4, !tbaa !5
  %17478 = load i32, ptr %8, align 4, !tbaa !5
  %17479 = mul nsw i32 28, %17478
  %17480 = add nsw i32 %17477, %17479
  %17481 = sext i32 %17480 to i64
  %17482 = getelementptr inbounds double, ptr %17476, i64 %17481
  %17483 = load double, ptr %17482, align 8, !tbaa !11
  %17484 = call double @llvm.fmuladd.f64(double 0x3C93800000000000, double %17483, double %17475)
  %17485 = load ptr, ptr %7, align 8, !tbaa !9
  %17486 = load i32, ptr %12, align 4, !tbaa !5
  %17487 = load i32, ptr %8, align 4, !tbaa !5
  %17488 = mul nsw i32 29, %17487
  %17489 = add nsw i32 %17486, %17488
  %17490 = sext i32 %17489 to i64
  %17491 = getelementptr inbounds double, ptr %17485, i64 %17490
  %17492 = load double, ptr %17491, align 8, !tbaa !11
  %17493 = call double @llvm.fmuladd.f64(double 0x3C7FFFFFFFFFFFFF, double %17492, double %17484)
  %17494 = load ptr, ptr %7, align 8, !tbaa !9
  %17495 = load i32, ptr %12, align 4, !tbaa !5
  %17496 = load i32, ptr %8, align 4, !tbaa !5
  %17497 = mul nsw i32 30, %17496
  %17498 = add nsw i32 %17495, %17497
  %17499 = sext i32 %17498 to i64
  %17500 = getelementptr inbounds double, ptr %17494, i64 %17499
  %17501 = load double, ptr %17500, align 8, !tbaa !11
  %17502 = call double @llvm.fmuladd.f64(double 0xBF83152016E0EC5C, double %17501, double %17493)
  %17503 = load ptr, ptr %7, align 8, !tbaa !9
  %17504 = load i32, ptr %12, align 4, !tbaa !5
  %17505 = load i32, ptr %8, align 4, !tbaa !5
  %17506 = mul nsw i32 31, %17505
  %17507 = add nsw i32 %17504, %17506
  %17508 = sext i32 %17507 to i64
  %17509 = getelementptr inbounds double, ptr %17503, i64 %17508
  %17510 = load double, ptr %17509, align 8, !tbaa !11
  %17511 = call double @llvm.fmuladd.f64(double 0x3F938CE4890DB2DC, double %17510, double %17502)
  %17512 = load ptr, ptr %7, align 8, !tbaa !9
  %17513 = load i32, ptr %12, align 4, !tbaa !5
  %17514 = load i32, ptr %8, align 4, !tbaa !5
  %17515 = mul nsw i32 32, %17514
  %17516 = add nsw i32 %17513, %17515
  %17517 = sext i32 %17516 to i64
  %17518 = getelementptr inbounds double, ptr %17512, i64 %17517
  %17519 = load double, ptr %17518, align 8, !tbaa !11
  %17520 = call double @llvm.fmuladd.f64(double 0xBFB5B58B4F03B1AA, double %17519, double %17511)
  %17521 = load ptr, ptr %7, align 8, !tbaa !9
  %17522 = load i32, ptr %12, align 4, !tbaa !5
  %17523 = load i32, ptr %8, align 4, !tbaa !5
  %17524 = mul nsw i32 33, %17523
  %17525 = add nsw i32 %17522, %17524
  %17526 = sext i32 %17525 to i64
  %17527 = getelementptr inbounds double, ptr %17521, i64 %17526
  %17528 = load double, ptr %17527, align 8, !tbaa !11
  %17529 = call double @llvm.fmuladd.f64(double 0x3FF4EC1BB3FDC612, double %17528, double %17520)
  %17530 = load ptr, ptr %7, align 8, !tbaa !9
  %17531 = load i32, ptr %12, align 4, !tbaa !5
  %17532 = load i32, ptr %8, align 4, !tbaa !5
  %17533 = mul nsw i32 34, %17532
  %17534 = add nsw i32 %17531, %17533
  %17535 = sext i32 %17534 to i64
  %17536 = getelementptr inbounds double, ptr %17530, i64 %17535
  %17537 = load double, ptr %17536, align 8, !tbaa !11
  %17538 = call double @llvm.fmuladd.f64(double 0xBF8BDAF699AECF71, double %17537, double %17529)
  %17539 = load ptr, ptr %7, align 8, !tbaa !9
  %17540 = load i32, ptr %12, align 4, !tbaa !5
  %17541 = load i32, ptr %8, align 4, !tbaa !5
  %17542 = mul nsw i32 35, %17541
  %17543 = add nsw i32 %17540, %17542
  %17544 = sext i32 %17543 to i64
  %17545 = getelementptr inbounds double, ptr %17539, i64 %17544
  %17546 = load double, ptr %17545, align 8, !tbaa !11
  %17547 = call double @llvm.fmuladd.f64(double 0x3FCA50C41AB7A329, double %17546, double %17538)
  %17548 = load ptr, ptr %7, align 8, !tbaa !9
  %17549 = load i32, ptr %12, align 4, !tbaa !5
  %17550 = load i32, ptr %8, align 4, !tbaa !5
  %17551 = mul nsw i32 36, %17550
  %17552 = add nsw i32 %17549, %17551
  %17553 = sext i32 %17552 to i64
  %17554 = getelementptr inbounds double, ptr %17548, i64 %17553
  %17555 = load double, ptr %17554, align 8, !tbaa !11
  %17556 = call double @llvm.fmuladd.f64(double 0xBFE5679E70A60655, double %17555, double %17547)
  %17557 = load ptr, ptr %7, align 8, !tbaa !9
  %17558 = load i32, ptr %12, align 4, !tbaa !5
  %17559 = load i32, ptr %8, align 4, !tbaa !5
  %17560 = mul nsw i32 37, %17559
  %17561 = add nsw i32 %17558, %17560
  %17562 = sext i32 %17561 to i64
  %17563 = getelementptr inbounds double, ptr %17557, i64 %17562
  %17564 = load double, ptr %17563, align 8, !tbaa !11
  %17565 = call double @llvm.fmuladd.f64(double 0x3FD417DEBFC17B1A, double %17564, double %17556)
  %17566 = load ptr, ptr %7, align 8, !tbaa !9
  %17567 = load i32, ptr %12, align 4, !tbaa !5
  %17568 = load i32, ptr %8, align 4, !tbaa !5
  %17569 = mul nsw i32 38, %17568
  %17570 = add nsw i32 %17567, %17569
  %17571 = sext i32 %17570 to i64
  %17572 = getelementptr inbounds double, ptr %17566, i64 %17571
  %17573 = load double, ptr %17572, align 8, !tbaa !11
  %17574 = call double @llvm.fmuladd.f64(double 0xBFB49217631F5947, double %17573, double %17565)
  %17575 = load ptr, ptr %7, align 8, !tbaa !9
  %17576 = load i32, ptr %12, align 4, !tbaa !5
  %17577 = load i32, ptr %8, align 4, !tbaa !5
  %17578 = mul nsw i32 39, %17577
  %17579 = add nsw i32 %17576, %17578
  %17580 = sext i32 %17579 to i64
  %17581 = getelementptr inbounds double, ptr %17575, i64 %17580
  %17582 = load double, ptr %17581, align 8, !tbaa !11
  %17583 = call double @llvm.fmuladd.f64(double 0x3F85E50BB681A448, double %17582, double %17574)
  store double %17583, ptr %11, align 8, !tbaa !11
  %17584 = load double, ptr %11, align 8, !tbaa !11
  %17585 = load ptr, ptr %9, align 8, !tbaa !9
  %17586 = load i32, ptr %12, align 4, !tbaa !5
  %17587 = load i32, ptr %10, align 4, !tbaa !5
  %17588 = mul nsw i32 48, %17587
  %17589 = add nsw i32 %17586, %17588
  %17590 = sext i32 %17589 to i64
  %17591 = getelementptr inbounds double, ptr %17585, i64 %17590
  store double %17584, ptr %17591, align 8, !tbaa !11
  %17592 = load ptr, ptr %7, align 8, !tbaa !9
  %17593 = load i32, ptr %12, align 4, !tbaa !5
  %17594 = load i32, ptr %8, align 4, !tbaa !5
  %17595 = mul nsw i32 0, %17594
  %17596 = add nsw i32 %17593, %17595
  %17597 = sext i32 %17596 to i64
  %17598 = getelementptr inbounds double, ptr %17592, i64 %17597
  %17599 = load double, ptr %17598, align 8, !tbaa !11
  %17600 = load ptr, ptr %7, align 8, !tbaa !9
  %17601 = load i32, ptr %12, align 4, !tbaa !5
  %17602 = load i32, ptr %8, align 4, !tbaa !5
  %17603 = mul nsw i32 1, %17602
  %17604 = add nsw i32 %17601, %17603
  %17605 = sext i32 %17604 to i64
  %17606 = getelementptr inbounds double, ptr %17600, i64 %17605
  %17607 = load double, ptr %17606, align 8, !tbaa !11
  %17608 = fmul double 0xBCA5FFFFFFFFFFFF, %17607
  %17609 = call double @llvm.fmuladd.f64(double 0x3CB0000000000000, double %17599, double %17608)
  %17610 = load ptr, ptr %7, align 8, !tbaa !9
  %17611 = load i32, ptr %12, align 4, !tbaa !5
  %17612 = load i32, ptr %8, align 4, !tbaa !5
  %17613 = mul nsw i32 2, %17612
  %17614 = add nsw i32 %17611, %17613
  %17615 = sext i32 %17614 to i64
  %17616 = getelementptr inbounds double, ptr %17610, i64 %17615
  %17617 = load double, ptr %17616, align 8, !tbaa !11
  %17618 = call double @llvm.fmuladd.f64(double 0x3C86C00000000000, double %17617, double %17609)
  %17619 = load ptr, ptr %7, align 8, !tbaa !9
  %17620 = load i32, ptr %12, align 4, !tbaa !5
  %17621 = load i32, ptr %8, align 4, !tbaa !5
  %17622 = mul nsw i32 3, %17621
  %17623 = add nsw i32 %17620, %17622
  %17624 = sext i32 %17623 to i64
  %17625 = getelementptr inbounds double, ptr %17619, i64 %17624
  %17626 = load double, ptr %17625, align 8, !tbaa !11
  %17627 = call double @llvm.fmuladd.f64(double 0x3CBCAFFFFFFFFFFF, double %17626, double %17618)
  %17628 = load ptr, ptr %7, align 8, !tbaa !9
  %17629 = load i32, ptr %12, align 4, !tbaa !5
  %17630 = load i32, ptr %8, align 4, !tbaa !5
  %17631 = mul nsw i32 4, %17630
  %17632 = add nsw i32 %17629, %17631
  %17633 = sext i32 %17632 to i64
  %17634 = getelementptr inbounds double, ptr %17628, i64 %17633
  %17635 = load double, ptr %17634, align 8, !tbaa !11
  %17636 = call double @llvm.fmuladd.f64(double 0x3C94400000000000, double %17635, double %17627)
  %17637 = load ptr, ptr %7, align 8, !tbaa !9
  %17638 = load i32, ptr %12, align 4, !tbaa !5
  %17639 = load i32, ptr %8, align 4, !tbaa !5
  %17640 = mul nsw i32 5, %17639
  %17641 = add nsw i32 %17638, %17640
  %17642 = sext i32 %17641 to i64
  %17643 = getelementptr inbounds double, ptr %17637, i64 %17642
  %17644 = load double, ptr %17643, align 8, !tbaa !11
  %17645 = call double @llvm.fmuladd.f64(double 0xBC9B800000000000, double %17644, double %17636)
  %17646 = load ptr, ptr %7, align 8, !tbaa !9
  %17647 = load i32, ptr %12, align 4, !tbaa !5
  %17648 = load i32, ptr %8, align 4, !tbaa !5
  %17649 = mul nsw i32 6, %17648
  %17650 = add nsw i32 %17647, %17649
  %17651 = sext i32 %17650 to i64
  %17652 = getelementptr inbounds double, ptr %17646, i64 %17651
  %17653 = load double, ptr %17652, align 8, !tbaa !11
  %17654 = call double @llvm.fmuladd.f64(double 0x3C91800000000000, double %17653, double %17645)
  %17655 = load ptr, ptr %7, align 8, !tbaa !9
  %17656 = load i32, ptr %12, align 4, !tbaa !5
  %17657 = load i32, ptr %8, align 4, !tbaa !5
  %17658 = mul nsw i32 7, %17657
  %17659 = add nsw i32 %17656, %17658
  %17660 = sext i32 %17659 to i64
  %17661 = getelementptr inbounds double, ptr %17655, i64 %17660
  %17662 = load double, ptr %17661, align 8, !tbaa !11
  %17663 = call double @llvm.fmuladd.f64(double 0xBC71FFFFFFFFFFFF, double %17662, double %17654)
  %17664 = load ptr, ptr %7, align 8, !tbaa !9
  %17665 = load i32, ptr %12, align 4, !tbaa !5
  %17666 = load i32, ptr %8, align 4, !tbaa !5
  %17667 = mul nsw i32 8, %17666
  %17668 = add nsw i32 %17665, %17667
  %17669 = sext i32 %17668 to i64
  %17670 = getelementptr inbounds double, ptr %17664, i64 %17669
  %17671 = load double, ptr %17670, align 8, !tbaa !11
  %17672 = call double @llvm.fmuladd.f64(double 0x3CA1800000000000, double %17671, double %17663)
  %17673 = load ptr, ptr %7, align 8, !tbaa !9
  %17674 = load i32, ptr %12, align 4, !tbaa !5
  %17675 = load i32, ptr %8, align 4, !tbaa !5
  %17676 = mul nsw i32 9, %17675
  %17677 = add nsw i32 %17674, %17676
  %17678 = sext i32 %17677 to i64
  %17679 = getelementptr inbounds double, ptr %17673, i64 %17678
  %17680 = load double, ptr %17679, align 8, !tbaa !11
  %17681 = call double @llvm.fmuladd.f64(double 0xBC9C000000000000, double %17680, double %17672)
  %17682 = load ptr, ptr %7, align 8, !tbaa !9
  %17683 = load i32, ptr %12, align 4, !tbaa !5
  %17684 = load i32, ptr %8, align 4, !tbaa !5
  %17685 = mul nsw i32 10, %17684
  %17686 = add nsw i32 %17683, %17685
  %17687 = sext i32 %17686 to i64
  %17688 = getelementptr inbounds double, ptr %17682, i64 %17687
  %17689 = load double, ptr %17688, align 8, !tbaa !11
  %17690 = call double @llvm.fmuladd.f64(double 0xBC60000000000000, double %17689, double %17681)
  %17691 = load ptr, ptr %7, align 8, !tbaa !9
  %17692 = load i32, ptr %12, align 4, !tbaa !5
  %17693 = load i32, ptr %8, align 4, !tbaa !5
  %17694 = mul nsw i32 11, %17693
  %17695 = add nsw i32 %17692, %17694
  %17696 = sext i32 %17695 to i64
  %17697 = getelementptr inbounds double, ptr %17691, i64 %17696
  %17698 = load double, ptr %17697, align 8, !tbaa !11
  %17699 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %17698, double %17690)
  %17700 = load ptr, ptr %7, align 8, !tbaa !9
  %17701 = load i32, ptr %12, align 4, !tbaa !5
  %17702 = load i32, ptr %8, align 4, !tbaa !5
  %17703 = mul nsw i32 12, %17702
  %17704 = add nsw i32 %17701, %17703
  %17705 = sext i32 %17704 to i64
  %17706 = getelementptr inbounds double, ptr %17700, i64 %17705
  %17707 = load double, ptr %17706, align 8, !tbaa !11
  %17708 = call double @llvm.fmuladd.f64(double 0xBC7B000000000001, double %17707, double %17699)
  %17709 = load ptr, ptr %7, align 8, !tbaa !9
  %17710 = load i32, ptr %12, align 4, !tbaa !5
  %17711 = load i32, ptr %8, align 4, !tbaa !5
  %17712 = mul nsw i32 13, %17711
  %17713 = add nsw i32 %17710, %17712
  %17714 = sext i32 %17713 to i64
  %17715 = getelementptr inbounds double, ptr %17709, i64 %17714
  %17716 = load double, ptr %17715, align 8, !tbaa !11
  %17717 = call double @llvm.fmuladd.f64(double 0xBC97800000000000, double %17716, double %17708)
  %17718 = load ptr, ptr %7, align 8, !tbaa !9
  %17719 = load i32, ptr %12, align 4, !tbaa !5
  %17720 = load i32, ptr %8, align 4, !tbaa !5
  %17721 = mul nsw i32 14, %17720
  %17722 = add nsw i32 %17719, %17721
  %17723 = sext i32 %17722 to i64
  %17724 = getelementptr inbounds double, ptr %17718, i64 %17723
  %17725 = load double, ptr %17724, align 8, !tbaa !11
  %17726 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %17725, double %17717)
  %17727 = load ptr, ptr %7, align 8, !tbaa !9
  %17728 = load i32, ptr %12, align 4, !tbaa !5
  %17729 = load i32, ptr %8, align 4, !tbaa !5
  %17730 = mul nsw i32 15, %17729
  %17731 = add nsw i32 %17728, %17730
  %17732 = sext i32 %17731 to i64
  %17733 = getelementptr inbounds double, ptr %17727, i64 %17732
  %17734 = load double, ptr %17733, align 8, !tbaa !11
  %17735 = call double @llvm.fmuladd.f64(double 0x3C93000000000000, double %17734, double %17726)
  %17736 = load ptr, ptr %7, align 8, !tbaa !9
  %17737 = load i32, ptr %12, align 4, !tbaa !5
  %17738 = load i32, ptr %8, align 4, !tbaa !5
  %17739 = mul nsw i32 16, %17738
  %17740 = add nsw i32 %17737, %17739
  %17741 = sext i32 %17740 to i64
  %17742 = getelementptr inbounds double, ptr %17736, i64 %17741
  %17743 = load double, ptr %17742, align 8, !tbaa !11
  %17744 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %17743, double %17735)
  %17745 = load ptr, ptr %7, align 8, !tbaa !9
  %17746 = load i32, ptr %12, align 4, !tbaa !5
  %17747 = load i32, ptr %8, align 4, !tbaa !5
  %17748 = mul nsw i32 17, %17747
  %17749 = add nsw i32 %17746, %17748
  %17750 = sext i32 %17749 to i64
  %17751 = getelementptr inbounds double, ptr %17745, i64 %17750
  %17752 = load double, ptr %17751, align 8, !tbaa !11
  %17753 = call double @llvm.fmuladd.f64(double 0xBCB4600000000001, double %17752, double %17744)
  %17754 = load ptr, ptr %7, align 8, !tbaa !9
  %17755 = load i32, ptr %12, align 4, !tbaa !5
  %17756 = load i32, ptr %8, align 4, !tbaa !5
  %17757 = mul nsw i32 18, %17756
  %17758 = add nsw i32 %17755, %17757
  %17759 = sext i32 %17758 to i64
  %17760 = getelementptr inbounds double, ptr %17754, i64 %17759
  %17761 = load double, ptr %17760, align 8, !tbaa !11
  %17762 = call double @llvm.fmuladd.f64(double 0x3C99000000000000, double %17761, double %17753)
  %17763 = load ptr, ptr %7, align 8, !tbaa !9
  %17764 = load i32, ptr %12, align 4, !tbaa !5
  %17765 = load i32, ptr %8, align 4, !tbaa !5
  %17766 = mul nsw i32 19, %17765
  %17767 = add nsw i32 %17764, %17766
  %17768 = sext i32 %17767 to i64
  %17769 = getelementptr inbounds double, ptr %17763, i64 %17768
  %17770 = load double, ptr %17769, align 8, !tbaa !11
  %17771 = call double @llvm.fmuladd.f64(double 0x3C9DFFFFFFFFFFFE, double %17770, double %17762)
  %17772 = load ptr, ptr %7, align 8, !tbaa !9
  %17773 = load i32, ptr %12, align 4, !tbaa !5
  %17774 = load i32, ptr %8, align 4, !tbaa !5
  %17775 = mul nsw i32 20, %17774
  %17776 = add nsw i32 %17773, %17775
  %17777 = sext i32 %17776 to i64
  %17778 = getelementptr inbounds double, ptr %17772, i64 %17777
  %17779 = load double, ptr %17778, align 8, !tbaa !11
  %17780 = call double @llvm.fmuladd.f64(double 0x3CB07FFFFFFFFFFF, double %17779, double %17771)
  %17781 = load ptr, ptr %7, align 8, !tbaa !9
  %17782 = load i32, ptr %12, align 4, !tbaa !5
  %17783 = load i32, ptr %8, align 4, !tbaa !5
  %17784 = mul nsw i32 21, %17783
  %17785 = add nsw i32 %17782, %17784
  %17786 = sext i32 %17785 to i64
  %17787 = getelementptr inbounds double, ptr %17781, i64 %17786
  %17788 = load double, ptr %17787, align 8, !tbaa !11
  %17789 = call double @llvm.fmuladd.f64(double 0x3C96000000000000, double %17788, double %17780)
  %17790 = load ptr, ptr %7, align 8, !tbaa !9
  %17791 = load i32, ptr %12, align 4, !tbaa !5
  %17792 = load i32, ptr %8, align 4, !tbaa !5
  %17793 = mul nsw i32 22, %17792
  %17794 = add nsw i32 %17791, %17793
  %17795 = sext i32 %17794 to i64
  %17796 = getelementptr inbounds double, ptr %17790, i64 %17795
  %17797 = load double, ptr %17796, align 8, !tbaa !11
  %17798 = call double @llvm.fmuladd.f64(double 0xBC7E000000000001, double %17797, double %17789)
  %17799 = load ptr, ptr %7, align 8, !tbaa !9
  %17800 = load i32, ptr %12, align 4, !tbaa !5
  %17801 = load i32, ptr %8, align 4, !tbaa !5
  %17802 = mul nsw i32 23, %17801
  %17803 = add nsw i32 %17800, %17802
  %17804 = sext i32 %17803 to i64
  %17805 = getelementptr inbounds double, ptr %17799, i64 %17804
  %17806 = load double, ptr %17805, align 8, !tbaa !11
  %17807 = call double @llvm.fmuladd.f64(double 0xBCB4F00000000000, double %17806, double %17798)
  %17808 = load ptr, ptr %7, align 8, !tbaa !9
  %17809 = load i32, ptr %12, align 4, !tbaa !5
  %17810 = load i32, ptr %8, align 4, !tbaa !5
  %17811 = mul nsw i32 24, %17810
  %17812 = add nsw i32 %17809, %17811
  %17813 = sext i32 %17812 to i64
  %17814 = getelementptr inbounds double, ptr %17808, i64 %17813
  %17815 = load double, ptr %17814, align 8, !tbaa !11
  %17816 = call double @llvm.fmuladd.f64(double 0x3CA9FFFFFFFFFFFE, double %17815, double %17807)
  %17817 = load ptr, ptr %7, align 8, !tbaa !9
  %17818 = load i32, ptr %12, align 4, !tbaa !5
  %17819 = load i32, ptr %8, align 4, !tbaa !5
  %17820 = mul nsw i32 25, %17819
  %17821 = add nsw i32 %17818, %17820
  %17822 = sext i32 %17821 to i64
  %17823 = getelementptr inbounds double, ptr %17817, i64 %17822
  %17824 = load double, ptr %17823, align 8, !tbaa !11
  %17825 = call double @llvm.fmuladd.f64(double 0xBCB9C00000000001, double %17824, double %17816)
  %17826 = load ptr, ptr %7, align 8, !tbaa !9
  %17827 = load i32, ptr %12, align 4, !tbaa !5
  %17828 = load i32, ptr %8, align 4, !tbaa !5
  %17829 = mul nsw i32 26, %17828
  %17830 = add nsw i32 %17827, %17829
  %17831 = sext i32 %17830 to i64
  %17832 = getelementptr inbounds double, ptr %17826, i64 %17831
  %17833 = load double, ptr %17832, align 8, !tbaa !11
  %17834 = call double @llvm.fmuladd.f64(double 0xBC90800000000000, double %17833, double %17825)
  %17835 = load ptr, ptr %7, align 8, !tbaa !9
  %17836 = load i32, ptr %12, align 4, !tbaa !5
  %17837 = load i32, ptr %8, align 4, !tbaa !5
  %17838 = mul nsw i32 27, %17837
  %17839 = add nsw i32 %17836, %17838
  %17840 = sext i32 %17839 to i64
  %17841 = getelementptr inbounds double, ptr %17835, i64 %17840
  %17842 = load double, ptr %17841, align 8, !tbaa !11
  %17843 = call double @llvm.fmuladd.f64(double 0x3C8D800000000000, double %17842, double %17834)
  %17844 = load ptr, ptr %7, align 8, !tbaa !9
  %17845 = load i32, ptr %12, align 4, !tbaa !5
  %17846 = load i32, ptr %8, align 4, !tbaa !5
  %17847 = mul nsw i32 28, %17846
  %17848 = add nsw i32 %17845, %17847
  %17849 = sext i32 %17848 to i64
  %17850 = getelementptr inbounds double, ptr %17844, i64 %17849
  %17851 = load double, ptr %17850, align 8, !tbaa !11
  %17852 = call double @llvm.fmuladd.f64(double 0x3C70000000000001, double %17851, double %17843)
  %17853 = load ptr, ptr %7, align 8, !tbaa !9
  %17854 = load i32, ptr %12, align 4, !tbaa !5
  %17855 = load i32, ptr %8, align 4, !tbaa !5
  %17856 = mul nsw i32 29, %17855
  %17857 = add nsw i32 %17854, %17856
  %17858 = sext i32 %17857 to i64
  %17859 = getelementptr inbounds double, ptr %17853, i64 %17858
  %17860 = load double, ptr %17859, align 8, !tbaa !11
  %17861 = call double @llvm.fmuladd.f64(double 0xBC78000000000002, double %17860, double %17852)
  %17862 = load ptr, ptr %7, align 8, !tbaa !9
  %17863 = load i32, ptr %12, align 4, !tbaa !5
  %17864 = load i32, ptr %8, align 4, !tbaa !5
  %17865 = mul nsw i32 30, %17864
  %17866 = add nsw i32 %17863, %17865
  %17867 = sext i32 %17866 to i64
  %17868 = getelementptr inbounds double, ptr %17862, i64 %17867
  %17869 = load double, ptr %17868, align 8, !tbaa !11
  %17870 = call double @llvm.fmuladd.f64(double 0xBFE333710B32A29C, double %17869, double %17861)
  %17871 = load ptr, ptr %7, align 8, !tbaa !9
  %17872 = load i32, ptr %12, align 4, !tbaa !5
  %17873 = load i32, ptr %8, align 4, !tbaa !5
  %17874 = mul nsw i32 31, %17873
  %17875 = add nsw i32 %17872, %17874
  %17876 = sext i32 %17875 to i64
  %17877 = getelementptr inbounds double, ptr %17871, i64 %17876
  %17878 = load double, ptr %17877, align 8, !tbaa !11
  %17879 = call double @llvm.fmuladd.f64(double 0xBFA352D4DB969C02, double %17878, double %17870)
  %17880 = load ptr, ptr %7, align 8, !tbaa !9
  %17881 = load i32, ptr %12, align 4, !tbaa !5
  %17882 = load i32, ptr %8, align 4, !tbaa !5
  %17883 = mul nsw i32 32, %17882
  %17884 = add nsw i32 %17881, %17883
  %17885 = sext i32 %17884 to i64
  %17886 = getelementptr inbounds double, ptr %17880, i64 %17885
  %17887 = load double, ptr %17886, align 8, !tbaa !11
  %17888 = call double @llvm.fmuladd.f64(double 0xBFBEED13A9F0D910, double %17887, double %17879)
  %17889 = load ptr, ptr %7, align 8, !tbaa !9
  %17890 = load i32, ptr %12, align 4, !tbaa !5
  %17891 = load i32, ptr %8, align 4, !tbaa !5
  %17892 = mul nsw i32 33, %17891
  %17893 = add nsw i32 %17890, %17892
  %17894 = sext i32 %17893 to i64
  %17895 = getelementptr inbounds double, ptr %17889, i64 %17894
  %17896 = load double, ptr %17895, align 8, !tbaa !11
  %17897 = call double @llvm.fmuladd.f64(double 0x3FA87D7643548543, double %17896, double %17888)
  %17898 = load ptr, ptr %7, align 8, !tbaa !9
  %17899 = load i32, ptr %12, align 4, !tbaa !5
  %17900 = load i32, ptr %8, align 4, !tbaa !5
  %17901 = mul nsw i32 34, %17900
  %17902 = add nsw i32 %17899, %17901
  %17903 = sext i32 %17902 to i64
  %17904 = getelementptr inbounds double, ptr %17898, i64 %17903
  %17905 = load double, ptr %17904, align 8, !tbaa !11
  %17906 = call double @llvm.fmuladd.f64(double 0x3FC27B05E24EC5F8, double %17905, double %17897)
  %17907 = load ptr, ptr %7, align 8, !tbaa !9
  %17908 = load i32, ptr %12, align 4, !tbaa !5
  %17909 = load i32, ptr %8, align 4, !tbaa !5
  %17910 = mul nsw i32 35, %17909
  %17911 = add nsw i32 %17908, %17910
  %17912 = sext i32 %17911 to i64
  %17913 = getelementptr inbounds double, ptr %17907, i64 %17912
  %17914 = load double, ptr %17913, align 8, !tbaa !11
  %17915 = call double @llvm.fmuladd.f64(double 0x3FF670C5F1F4C92E, double %17914, double %17906)
  %17916 = load ptr, ptr %7, align 8, !tbaa !9
  %17917 = load i32, ptr %12, align 4, !tbaa !5
  %17918 = load i32, ptr %8, align 4, !tbaa !5
  %17919 = mul nsw i32 36, %17918
  %17920 = add nsw i32 %17917, %17919
  %17921 = sext i32 %17920 to i64
  %17922 = getelementptr inbounds double, ptr %17916, i64 %17921
  %17923 = load double, ptr %17922, align 8, !tbaa !11
  %17924 = call double @llvm.fmuladd.f64(double 0xBFD41C0D131D4297, double %17923, double %17915)
  %17925 = load ptr, ptr %7, align 8, !tbaa !9
  %17926 = load i32, ptr %12, align 4, !tbaa !5
  %17927 = load i32, ptr %8, align 4, !tbaa !5
  %17928 = mul nsw i32 37, %17927
  %17929 = add nsw i32 %17926, %17928
  %17930 = sext i32 %17929 to i64
  %17931 = getelementptr inbounds double, ptr %17925, i64 %17930
  %17932 = load double, ptr %17931, align 8, !tbaa !11
  %17933 = call double @llvm.fmuladd.f64(double 0x3FD35DAE88CBA64D, double %17932, double %17924)
  %17934 = load ptr, ptr %7, align 8, !tbaa !9
  %17935 = load i32, ptr %12, align 4, !tbaa !5
  %17936 = load i32, ptr %8, align 4, !tbaa !5
  %17937 = mul nsw i32 38, %17936
  %17938 = add nsw i32 %17935, %17937
  %17939 = sext i32 %17938 to i64
  %17940 = getelementptr inbounds double, ptr %17934, i64 %17939
  %17941 = load double, ptr %17940, align 8, !tbaa !11
  %17942 = call double @llvm.fmuladd.f64(double 0x3FC36A9134CD3C5C, double %17941, double %17933)
  %17943 = load ptr, ptr %7, align 8, !tbaa !9
  %17944 = load i32, ptr %12, align 4, !tbaa !5
  %17945 = load i32, ptr %8, align 4, !tbaa !5
  %17946 = mul nsw i32 39, %17945
  %17947 = add nsw i32 %17944, %17946
  %17948 = sext i32 %17947 to i64
  %17949 = getelementptr inbounds double, ptr %17943, i64 %17948
  %17950 = load double, ptr %17949, align 8, !tbaa !11
  %17951 = call double @llvm.fmuladd.f64(double 0x3F9854E0ADA34BAF, double %17950, double %17942)
  store double %17951, ptr %11, align 8, !tbaa !11
  %17952 = load double, ptr %11, align 8, !tbaa !11
  %17953 = load ptr, ptr %9, align 8, !tbaa !9
  %17954 = load i32, ptr %12, align 4, !tbaa !5
  %17955 = load i32, ptr %10, align 4, !tbaa !5
  %17956 = mul nsw i32 49, %17955
  %17957 = add nsw i32 %17954, %17956
  %17958 = sext i32 %17957 to i64
  %17959 = getelementptr inbounds double, ptr %17953, i64 %17958
  store double %17952, ptr %17959, align 8, !tbaa !11
  %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 0, %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 = load ptr, ptr %7, align 8, !tbaa !9
  %17969 = load i32, ptr %12, align 4, !tbaa !5
  %17970 = load i32, ptr %8, align 4, !tbaa !5
  %17971 = mul nsw i32 1, %17970
  %17972 = add nsw i32 %17969, %17971
  %17973 = sext i32 %17972 to i64
  %17974 = getelementptr inbounds double, ptr %17968, i64 %17973
  %17975 = load double, ptr %17974, align 8, !tbaa !11
  %17976 = fmul double 0xBCC0200000000000, %17975
  %17977 = call double @llvm.fmuladd.f64(double 0x3CB07FFFFFFFFFFF, double %17967, double %17976)
  %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 2, %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 0x3C94400000000000, 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 3, %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 0x3CA0E00000000001, 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 4, %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 0xBCC0700000000000, 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 5, %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 0xBC89000000000000, 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 6, %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 0xBC66000000000000, 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 7, %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 0x3CA4A00000000001, 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 8, %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 0x3CB1C00000000000, 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 9, %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 0x3CBBC00000000001, double %18048, double %18040)
  %18050 = load ptr, ptr %7, align 8, !tbaa !9
  %18051 = load i32, ptr %12, align 4, !tbaa !5
  %18052 = load i32, ptr %8, align 4, !tbaa !5
  %18053 = mul nsw i32 10, %18052
  %18054 = add nsw i32 %18051, %18053
  %18055 = sext i32 %18054 to i64
  %18056 = getelementptr inbounds double, ptr %18050, i64 %18055
  %18057 = load double, ptr %18056, align 8, !tbaa !11
  %18058 = call double @llvm.fmuladd.f64(double 0xBCC9400000000000, double %18057, double %18049)
  %18059 = load ptr, ptr %7, align 8, !tbaa !9
  %18060 = load i32, ptr %12, align 4, !tbaa !5
  %18061 = load i32, ptr %8, align 4, !tbaa !5
  %18062 = mul nsw i32 11, %18061
  %18063 = add nsw i32 %18060, %18062
  %18064 = sext i32 %18063 to i64
  %18065 = getelementptr inbounds double, ptr %18059, i64 %18064
  %18066 = load double, ptr %18065, align 8, !tbaa !11
  %18067 = call double @llvm.fmuladd.f64(double 0xBCA5000000000000, double %18066, double %18058)
  %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 12, %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 = call double @llvm.fmuladd.f64(double 0xBCACBFFFFFFFFFFF, double %18075, double %18067)
  %18077 = load ptr, ptr %7, align 8, !tbaa !9
  %18078 = load i32, ptr %12, align 4, !tbaa !5
  %18079 = load i32, ptr %8, align 4, !tbaa !5
  %18080 = mul nsw i32 13, %18079
  %18081 = add nsw i32 %18078, %18080
  %18082 = sext i32 %18081 to i64
  %18083 = getelementptr inbounds double, ptr %18077, i64 %18082
  %18084 = load double, ptr %18083, align 8, !tbaa !11
  %18085 = call double @llvm.fmuladd.f64(double 0xBC9EFFFFFFFFFFFD, double %18084, double %18076)
  %18086 = load ptr, ptr %7, align 8, !tbaa !9
  %18087 = load i32, ptr %12, align 4, !tbaa !5
  %18088 = load i32, ptr %8, align 4, !tbaa !5
  %18089 = mul nsw i32 14, %18088
  %18090 = add nsw i32 %18087, %18089
  %18091 = sext i32 %18090 to i64
  %18092 = getelementptr inbounds double, ptr %18086, i64 %18091
  %18093 = load double, ptr %18092, align 8, !tbaa !11
  %18094 = call double @llvm.fmuladd.f64(double 0x3CA2FFFFFFFFFFFE, double %18093, double %18085)
  %18095 = load ptr, ptr %7, align 8, !tbaa !9
  %18096 = load i32, ptr %12, align 4, !tbaa !5
  %18097 = load i32, ptr %8, align 4, !tbaa !5
  %18098 = mul nsw i32 15, %18097
  %18099 = add nsw i32 %18096, %18098
  %18100 = sext i32 %18099 to i64
  %18101 = getelementptr inbounds double, ptr %18095, i64 %18100
  %18102 = load double, ptr %18101, align 8, !tbaa !11
  %18103 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %18102, double %18094)
  %18104 = load ptr, ptr %7, align 8, !tbaa !9
  %18105 = load i32, ptr %12, align 4, !tbaa !5
  %18106 = load i32, ptr %8, align 4, !tbaa !5
  %18107 = mul nsw i32 16, %18106
  %18108 = add nsw i32 %18105, %18107
  %18109 = sext i32 %18108 to i64
  %18110 = getelementptr inbounds double, ptr %18104, i64 %18109
  %18111 = load double, ptr %18110, align 8, !tbaa !11
  %18112 = call double @llvm.fmuladd.f64(double 0x3CA9000000000000, double %18111, double %18103)
  %18113 = load ptr, ptr %7, align 8, !tbaa !9
  %18114 = load i32, ptr %12, align 4, !tbaa !5
  %18115 = load i32, ptr %8, align 4, !tbaa !5
  %18116 = mul nsw i32 17, %18115
  %18117 = add nsw i32 %18114, %18116
  %18118 = sext i32 %18117 to i64
  %18119 = getelementptr inbounds double, ptr %18113, i64 %18118
  %18120 = load double, ptr %18119, align 8, !tbaa !11
  %18121 = call double @llvm.fmuladd.f64(double 0xBCAB000000000001, double %18120, double %18112)
  %18122 = load ptr, ptr %7, align 8, !tbaa !9
  %18123 = load i32, ptr %12, align 4, !tbaa !5
  %18124 = load i32, ptr %8, align 4, !tbaa !5
  %18125 = mul nsw i32 18, %18124
  %18126 = add nsw i32 %18123, %18125
  %18127 = sext i32 %18126 to i64
  %18128 = getelementptr inbounds double, ptr %18122, i64 %18127
  %18129 = load double, ptr %18128, align 8, !tbaa !11
  %18130 = call double @llvm.fmuladd.f64(double 0x3CC5800000000000, double %18129, double %18121)
  %18131 = load ptr, ptr %7, align 8, !tbaa !9
  %18132 = load i32, ptr %12, align 4, !tbaa !5
  %18133 = load i32, ptr %8, align 4, !tbaa !5
  %18134 = mul nsw i32 19, %18133
  %18135 = add nsw i32 %18132, %18134
  %18136 = sext i32 %18135 to i64
  %18137 = getelementptr inbounds double, ptr %18131, i64 %18136
  %18138 = load double, ptr %18137, align 8, !tbaa !11
  %18139 = call double @llvm.fmuladd.f64(double 0xBCA1000000000001, double %18138, double %18130)
  %18140 = load ptr, ptr %7, align 8, !tbaa !9
  %18141 = load i32, ptr %12, align 4, !tbaa !5
  %18142 = load i32, ptr %8, align 4, !tbaa !5
  %18143 = mul nsw i32 20, %18142
  %18144 = add nsw i32 %18141, %18143
  %18145 = sext i32 %18144 to i64
  %18146 = getelementptr inbounds double, ptr %18140, i64 %18145
  %18147 = load double, ptr %18146, align 8, !tbaa !11
  %18148 = call double @llvm.fmuladd.f64(double 0x3CBC800000000000, double %18147, double %18139)
  %18149 = load ptr, ptr %7, align 8, !tbaa !9
  %18150 = load i32, ptr %12, align 4, !tbaa !5
  %18151 = load i32, ptr %8, align 4, !tbaa !5
  %18152 = mul nsw i32 21, %18151
  %18153 = add nsw i32 %18150, %18152
  %18154 = sext i32 %18153 to i64
  %18155 = getelementptr inbounds double, ptr %18149, i64 %18154
  %18156 = load double, ptr %18155, align 8, !tbaa !11
  %18157 = call double @llvm.fmuladd.f64(double 0x3CBA800000000000, double %18156, double %18148)
  %18158 = load ptr, ptr %7, align 8, !tbaa !9
  %18159 = load i32, ptr %12, align 4, !tbaa !5
  %18160 = load i32, ptr %8, align 4, !tbaa !5
  %18161 = mul nsw i32 22, %18160
  %18162 = add nsw i32 %18159, %18161
  %18163 = sext i32 %18162 to i64
  %18164 = getelementptr inbounds double, ptr %18158, i64 %18163
  %18165 = load double, ptr %18164, align 8, !tbaa !11
  %18166 = call double @llvm.fmuladd.f64(double 0x3CAE800000000001, double %18165, double %18157)
  %18167 = load ptr, ptr %7, align 8, !tbaa !9
  %18168 = load i32, ptr %12, align 4, !tbaa !5
  %18169 = load i32, ptr %8, align 4, !tbaa !5
  %18170 = mul nsw i32 23, %18169
  %18171 = add nsw i32 %18168, %18170
  %18172 = sext i32 %18171 to i64
  %18173 = getelementptr inbounds double, ptr %18167, i64 %18172
  %18174 = load double, ptr %18173, align 8, !tbaa !11
  %18175 = call double @llvm.fmuladd.f64(double 0xBCBB1FFFFFFFFFFF, double %18174, double %18166)
  %18176 = load ptr, ptr %7, align 8, !tbaa !9
  %18177 = load i32, ptr %12, align 4, !tbaa !5
  %18178 = load i32, ptr %8, align 4, !tbaa !5
  %18179 = mul nsw i32 24, %18178
  %18180 = add nsw i32 %18177, %18179
  %18181 = sext i32 %18180 to i64
  %18182 = getelementptr inbounds double, ptr %18176, i64 %18181
  %18183 = load double, ptr %18182, align 8, !tbaa !11
  %18184 = call double @llvm.fmuladd.f64(double 0xBCAB000000000001, double %18183, double %18175)
  %18185 = load ptr, ptr %7, align 8, !tbaa !9
  %18186 = load i32, ptr %12, align 4, !tbaa !5
  %18187 = load i32, ptr %8, align 4, !tbaa !5
  %18188 = mul nsw i32 25, %18187
  %18189 = add nsw i32 %18186, %18188
  %18190 = sext i32 %18189 to i64
  %18191 = getelementptr inbounds double, ptr %18185, i64 %18190
  %18192 = load double, ptr %18191, align 8, !tbaa !11
  %18193 = call double @llvm.fmuladd.f64(double 0xBCA0000000000002, double %18192, double %18184)
  %18194 = load ptr, ptr %7, align 8, !tbaa !9
  %18195 = load i32, ptr %12, align 4, !tbaa !5
  %18196 = load i32, ptr %8, align 4, !tbaa !5
  %18197 = mul nsw i32 26, %18196
  %18198 = add nsw i32 %18195, %18197
  %18199 = sext i32 %18198 to i64
  %18200 = getelementptr inbounds double, ptr %18194, i64 %18199
  %18201 = load double, ptr %18200, align 8, !tbaa !11
  %18202 = call double @llvm.fmuladd.f64(double 0xBCB4600000000001, double %18201, double %18193)
  %18203 = load ptr, ptr %7, align 8, !tbaa !9
  %18204 = load i32, ptr %12, align 4, !tbaa !5
  %18205 = load i32, ptr %8, align 4, !tbaa !5
  %18206 = mul nsw i32 27, %18205
  %18207 = add nsw i32 %18204, %18206
  %18208 = sext i32 %18207 to i64
  %18209 = getelementptr inbounds double, ptr %18203, i64 %18208
  %18210 = load double, ptr %18209, align 8, !tbaa !11
  %18211 = call double @llvm.fmuladd.f64(double 0x3CA0000000000002, double %18210, double %18202)
  %18212 = load ptr, ptr %7, align 8, !tbaa !9
  %18213 = load i32, ptr %12, align 4, !tbaa !5
  %18214 = load i32, ptr %8, align 4, !tbaa !5
  %18215 = mul nsw i32 28, %18214
  %18216 = add nsw i32 %18213, %18215
  %18217 = sext i32 %18216 to i64
  %18218 = getelementptr inbounds double, ptr %18212, i64 %18217
  %18219 = load double, ptr %18218, align 8, !tbaa !11
  %18220 = call double @llvm.fmuladd.f64(double 0x3CA5FFFFFFFFFFFF, double %18219, double %18211)
  %18221 = load ptr, ptr %7, align 8, !tbaa !9
  %18222 = load i32, ptr %12, align 4, !tbaa !5
  %18223 = load i32, ptr %8, align 4, !tbaa !5
  %18224 = mul nsw i32 29, %18223
  %18225 = add nsw i32 %18222, %18224
  %18226 = sext i32 %18225 to i64
  %18227 = getelementptr inbounds double, ptr %18221, i64 %18226
  %18228 = load double, ptr %18227, align 8, !tbaa !11
  %18229 = call double @llvm.fmuladd.f64(double 0x3CA7000000000002, double %18228, double %18220)
  %18230 = load ptr, ptr %7, align 8, !tbaa !9
  %18231 = load i32, ptr %12, align 4, !tbaa !5
  %18232 = load i32, ptr %8, align 4, !tbaa !5
  %18233 = mul nsw i32 30, %18232
  %18234 = add nsw i32 %18231, %18233
  %18235 = sext i32 %18234 to i64
  %18236 = getelementptr inbounds double, ptr %18230, i64 %18235
  %18237 = load double, ptr %18236, align 8, !tbaa !11
  %18238 = call double @llvm.fmuladd.f64(double 0xBFE333710B32A296, double %18237, double %18229)
  %18239 = load ptr, ptr %7, align 8, !tbaa !9
  %18240 = load i32, ptr %12, align 4, !tbaa !5
  %18241 = load i32, ptr %8, align 4, !tbaa !5
  %18242 = mul nsw i32 31, %18241
  %18243 = add nsw i32 %18240, %18242
  %18244 = sext i32 %18243 to i64
  %18245 = getelementptr inbounds double, ptr %18239, i64 %18244
  %18246 = load double, ptr %18245, align 8, !tbaa !11
  %18247 = call double @llvm.fmuladd.f64(double 0x3FA87D764354853C, double %18246, double %18238)
  %18248 = load ptr, ptr %7, align 8, !tbaa !9
  %18249 = load i32, ptr %12, align 4, !tbaa !5
  %18250 = load i32, ptr %8, align 4, !tbaa !5
  %18251 = mul nsw i32 32, %18250
  %18252 = add nsw i32 %18249, %18251
  %18253 = sext i32 %18252 to i64
  %18254 = getelementptr inbounds double, ptr %18248, i64 %18253
  %18255 = load double, ptr %18254, align 8, !tbaa !11
  %18256 = call double @llvm.fmuladd.f64(double 0xBFBEED13A9F0D910, double %18255, double %18247)
  %18257 = load ptr, ptr %7, align 8, !tbaa !9
  %18258 = load i32, ptr %12, align 4, !tbaa !5
  %18259 = load i32, ptr %8, align 4, !tbaa !5
  %18260 = mul nsw i32 33, %18259
  %18261 = add nsw i32 %18258, %18260
  %18262 = sext i32 %18261 to i64
  %18263 = getelementptr inbounds double, ptr %18257, i64 %18262
  %18264 = load double, ptr %18263, align 8, !tbaa !11
  %18265 = call double @llvm.fmuladd.f64(double 0xBFA352D4DB969BC4, double %18264, double %18256)
  %18266 = load ptr, ptr %7, align 8, !tbaa !9
  %18267 = load i32, ptr %12, align 4, !tbaa !5
  %18268 = load i32, ptr %8, align 4, !tbaa !5
  %18269 = mul nsw i32 34, %18268
  %18270 = add nsw i32 %18267, %18269
  %18271 = sext i32 %18270 to i64
  %18272 = getelementptr inbounds double, ptr %18266, i64 %18271
  %18273 = load double, ptr %18272, align 8, !tbaa !11
  %18274 = call double @llvm.fmuladd.f64(double 0x3FD35DAE88CBA648, double %18273, double %18265)
  %18275 = load ptr, ptr %7, align 8, !tbaa !9
  %18276 = load i32, ptr %12, align 4, !tbaa !5
  %18277 = load i32, ptr %8, align 4, !tbaa !5
  %18278 = mul nsw i32 35, %18277
  %18279 = add nsw i32 %18276, %18278
  %18280 = sext i32 %18279 to i64
  %18281 = getelementptr inbounds double, ptr %18275, i64 %18280
  %18282 = load double, ptr %18281, align 8, !tbaa !11
  %18283 = call double @llvm.fmuladd.f64(double 0x3FC36A9134CD3C4A, double %18282, double %18274)
  %18284 = load ptr, ptr %7, align 8, !tbaa !9
  %18285 = load i32, ptr %12, align 4, !tbaa !5
  %18286 = load i32, ptr %8, align 4, !tbaa !5
  %18287 = mul nsw i32 36, %18286
  %18288 = add nsw i32 %18285, %18287
  %18289 = sext i32 %18288 to i64
  %18290 = getelementptr inbounds double, ptr %18284, i64 %18289
  %18291 = load double, ptr %18290, align 8, !tbaa !11
  %18292 = call double @llvm.fmuladd.f64(double 0x3F9854E0ADA34B08, double %18291, double %18283)
  %18293 = load ptr, ptr %7, align 8, !tbaa !9
  %18294 = load i32, ptr %12, align 4, !tbaa !5
  %18295 = load i32, ptr %8, align 4, !tbaa !5
  %18296 = mul nsw i32 37, %18295
  %18297 = add nsw i32 %18294, %18296
  %18298 = sext i32 %18297 to i64
  %18299 = getelementptr inbounds double, ptr %18293, i64 %18298
  %18300 = load double, ptr %18299, align 8, !tbaa !11
  %18301 = call double @llvm.fmuladd.f64(double 0x3FC27B05E24EC5FF, double %18300, double %18292)
  %18302 = load ptr, ptr %7, align 8, !tbaa !9
  %18303 = load i32, ptr %12, align 4, !tbaa !5
  %18304 = load i32, ptr %8, align 4, !tbaa !5
  %18305 = mul nsw i32 38, %18304
  %18306 = add nsw i32 %18303, %18305
  %18307 = sext i32 %18306 to i64
  %18308 = getelementptr inbounds double, ptr %18302, i64 %18307
  %18309 = load double, ptr %18308, align 8, !tbaa !11
  %18310 = call double @llvm.fmuladd.f64(double 0x3FF670C5F1F4C92E, double %18309, double %18301)
  %18311 = load ptr, ptr %7, align 8, !tbaa !9
  %18312 = load i32, ptr %12, align 4, !tbaa !5
  %18313 = load i32, ptr %8, align 4, !tbaa !5
  %18314 = mul nsw i32 39, %18313
  %18315 = add nsw i32 %18312, %18314
  %18316 = sext i32 %18315 to i64
  %18317 = getelementptr inbounds double, ptr %18311, i64 %18316
  %18318 = load double, ptr %18317, align 8, !tbaa !11
  %18319 = call double @llvm.fmuladd.f64(double 0xBFD41C0D131D428A, double %18318, double %18310)
  store double %18319, ptr %11, align 8, !tbaa !11
  %18320 = load double, ptr %11, align 8, !tbaa !11
  %18321 = load ptr, ptr %9, align 8, !tbaa !9
  %18322 = load i32, ptr %12, align 4, !tbaa !5
  %18323 = load i32, ptr %10, align 4, !tbaa !5
  %18324 = mul nsw i32 50, %18323
  %18325 = add nsw i32 %18322, %18324
  %18326 = sext i32 %18325 to i64
  %18327 = getelementptr inbounds double, ptr %18321, i64 %18326
  store double %18320, ptr %18327, align 8, !tbaa !11
  %18328 = load ptr, ptr %7, align 8, !tbaa !9
  %18329 = load i32, ptr %12, align 4, !tbaa !5
  %18330 = load i32, ptr %8, align 4, !tbaa !5
  %18331 = mul nsw i32 0, %18330
  %18332 = add nsw i32 %18329, %18331
  %18333 = sext i32 %18332 to i64
  %18334 = getelementptr inbounds double, ptr %18328, i64 %18333
  %18335 = load double, ptr %18334, align 8, !tbaa !11
  %18336 = load ptr, ptr %7, align 8, !tbaa !9
  %18337 = load i32, ptr %12, align 4, !tbaa !5
  %18338 = load i32, ptr %8, align 4, !tbaa !5
  %18339 = mul nsw i32 1, %18338
  %18340 = add nsw i32 %18337, %18339
  %18341 = sext i32 %18340 to i64
  %18342 = getelementptr inbounds double, ptr %18336, i64 %18341
  %18343 = load double, ptr %18342, align 8, !tbaa !11
  %18344 = fmul double 0xBCB07FFFFFFFFFFF, %18343
  %18345 = call double @llvm.fmuladd.f64(double 0x3C94000000000000, double %18335, double %18344)
  %18346 = load ptr, ptr %7, align 8, !tbaa !9
  %18347 = load i32, ptr %12, align 4, !tbaa !5
  %18348 = load i32, ptr %8, align 4, !tbaa !5
  %18349 = mul nsw i32 2, %18348
  %18350 = add nsw i32 %18347, %18349
  %18351 = sext i32 %18350 to i64
  %18352 = getelementptr inbounds double, ptr %18346, i64 %18351
  %18353 = load double, ptr %18352, align 8, !tbaa !11
  %18354 = call double @llvm.fmuladd.f64(double 0x3C92000000000000, double %18353, double %18345)
  %18355 = load ptr, ptr %7, align 8, !tbaa !9
  %18356 = load i32, ptr %12, align 4, !tbaa !5
  %18357 = load i32, ptr %8, align 4, !tbaa !5
  %18358 = mul nsw i32 3, %18357
  %18359 = add nsw i32 %18356, %18358
  %18360 = sext i32 %18359 to i64
  %18361 = getelementptr inbounds double, ptr %18355, i64 %18360
  %18362 = load double, ptr %18361, align 8, !tbaa !11
  %18363 = call double @llvm.fmuladd.f64(double 0xBC91000000000000, double %18362, double %18354)
  %18364 = load ptr, ptr %7, align 8, !tbaa !9
  %18365 = load i32, ptr %12, align 4, !tbaa !5
  %18366 = load i32, ptr %8, align 4, !tbaa !5
  %18367 = mul nsw i32 4, %18366
  %18368 = add nsw i32 %18365, %18367
  %18369 = sext i32 %18368 to i64
  %18370 = getelementptr inbounds double, ptr %18364, i64 %18369
  %18371 = load double, ptr %18370, align 8, !tbaa !11
  %18372 = call double @llvm.fmuladd.f64(double 0xBCA4000000000001, double %18371, double %18363)
  %18373 = load ptr, ptr %7, align 8, !tbaa !9
  %18374 = load i32, ptr %12, align 4, !tbaa !5
  %18375 = load i32, ptr %8, align 4, !tbaa !5
  %18376 = mul nsw i32 5, %18375
  %18377 = add nsw i32 %18374, %18376
  %18378 = sext i32 %18377 to i64
  %18379 = getelementptr inbounds double, ptr %18373, i64 %18378
  %18380 = load double, ptr %18379, align 8, !tbaa !11
  %18381 = call double @llvm.fmuladd.f64(double 0x3C9C000000000000, double %18380, double %18372)
  %18382 = load ptr, ptr %7, align 8, !tbaa !9
  %18383 = load i32, ptr %12, align 4, !tbaa !5
  %18384 = load i32, ptr %8, align 4, !tbaa !5
  %18385 = mul nsw i32 7, %18384
  %18386 = add nsw i32 %18383, %18385
  %18387 = sext i32 %18386 to i64
  %18388 = getelementptr inbounds double, ptr %18382, i64 %18387
  %18389 = load double, ptr %18388, align 8, !tbaa !11
  %18390 = call double @llvm.fmuladd.f64(double 0x3C91000000000000, double %18389, double %18381)
  %18391 = load ptr, ptr %7, align 8, !tbaa !9
  %18392 = load i32, ptr %12, align 4, !tbaa !5
  %18393 = load i32, ptr %8, align 4, !tbaa !5
  %18394 = mul nsw i32 8, %18393
  %18395 = add nsw i32 %18392, %18394
  %18396 = sext i32 %18395 to i64
  %18397 = getelementptr inbounds double, ptr %18391, i64 %18396
  %18398 = load double, ptr %18397, align 8, !tbaa !11
  %18399 = call double @llvm.fmuladd.f64(double 0xBCAC000000000000, double %18398, double %18390)
  %18400 = load ptr, ptr %7, align 8, !tbaa !9
  %18401 = load i32, ptr %12, align 4, !tbaa !5
  %18402 = load i32, ptr %8, align 4, !tbaa !5
  %18403 = mul nsw i32 9, %18402
  %18404 = add nsw i32 %18401, %18403
  %18405 = sext i32 %18404 to i64
  %18406 = getelementptr inbounds double, ptr %18400, i64 %18405
  %18407 = load double, ptr %18406, align 8, !tbaa !11
  %18408 = call double @llvm.fmuladd.f64(double 0x3C88000000000000, double %18407, double %18399)
  %18409 = load ptr, ptr %7, align 8, !tbaa !9
  %18410 = load i32, ptr %12, align 4, !tbaa !5
  %18411 = load i32, ptr %8, align 4, !tbaa !5
  %18412 = mul nsw i32 10, %18411
  %18413 = add nsw i32 %18410, %18412
  %18414 = sext i32 %18413 to i64
  %18415 = getelementptr inbounds double, ptr %18409, i64 %18414
  %18416 = load double, ptr %18415, align 8, !tbaa !11
  %18417 = call double @llvm.fmuladd.f64(double 0xBCCE000000000000, double %18416, double %18408)
  %18418 = load ptr, ptr %7, align 8, !tbaa !9
  %18419 = load i32, ptr %12, align 4, !tbaa !5
  %18420 = load i32, ptr %8, align 4, !tbaa !5
  %18421 = mul nsw i32 12, %18420
  %18422 = add nsw i32 %18419, %18421
  %18423 = sext i32 %18422 to i64
  %18424 = getelementptr inbounds double, ptr %18418, i64 %18423
  %18425 = load double, ptr %18424, align 8, !tbaa !11
  %18426 = call double @llvm.fmuladd.f64(double 0xBC9DFFFFFFFFFFFE, double %18425, double %18417)
  %18427 = load ptr, ptr %7, align 8, !tbaa !9
  %18428 = load i32, ptr %12, align 4, !tbaa !5
  %18429 = load i32, ptr %8, align 4, !tbaa !5
  %18430 = mul nsw i32 13, %18429
  %18431 = add nsw i32 %18428, %18430
  %18432 = sext i32 %18431 to i64
  %18433 = getelementptr inbounds double, ptr %18427, i64 %18432
  %18434 = load double, ptr %18433, align 8, !tbaa !11
  %18435 = call double @llvm.fmuladd.f64(double 0xBCA4000000000001, double %18434, double %18426)
  %18436 = load ptr, ptr %7, align 8, !tbaa !9
  %18437 = load i32, ptr %12, align 4, !tbaa !5
  %18438 = load i32, ptr %8, align 4, !tbaa !5
  %18439 = mul nsw i32 14, %18438
  %18440 = add nsw i32 %18437, %18439
  %18441 = sext i32 %18440 to i64
  %18442 = getelementptr inbounds double, ptr %18436, i64 %18441
  %18443 = load double, ptr %18442, align 8, !tbaa !11
  %18444 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %18443, double %18435)
  %18445 = load ptr, ptr %7, align 8, !tbaa !9
  %18446 = load i32, ptr %12, align 4, !tbaa !5
  %18447 = load i32, ptr %8, align 4, !tbaa !5
  %18448 = mul nsw i32 16, %18447
  %18449 = add nsw i32 %18446, %18448
  %18450 = sext i32 %18449 to i64
  %18451 = getelementptr inbounds double, ptr %18445, i64 %18450
  %18452 = load double, ptr %18451, align 8, !tbaa !11
  %18453 = call double @llvm.fmuladd.f64(double 0x3CBA000000000000, double %18452, double %18444)
  %18454 = load ptr, ptr %7, align 8, !tbaa !9
  %18455 = load i32, ptr %12, align 4, !tbaa !5
  %18456 = load i32, ptr %8, align 4, !tbaa !5
  %18457 = mul nsw i32 17, %18456
  %18458 = add nsw i32 %18455, %18457
  %18459 = sext i32 %18458 to i64
  %18460 = getelementptr inbounds double, ptr %18454, i64 %18459
  %18461 = load double, ptr %18460, align 8, !tbaa !11
  %18462 = call double @llvm.fmuladd.f64(double 0xBCA1000000000001, double %18461, double %18453)
  %18463 = load ptr, ptr %7, align 8, !tbaa !9
  %18464 = load i32, ptr %12, align 4, !tbaa !5
  %18465 = load i32, ptr %8, align 4, !tbaa !5
  %18466 = mul nsw i32 18, %18465
  %18467 = add nsw i32 %18464, %18466
  %18468 = sext i32 %18467 to i64
  %18469 = getelementptr inbounds double, ptr %18463, i64 %18468
  %18470 = load double, ptr %18469, align 8, !tbaa !11
  %18471 = call double @llvm.fmuladd.f64(double 0x3CB0000000000000, double %18470, double %18462)
  %18472 = load ptr, ptr %7, align 8, !tbaa !9
  %18473 = load i32, ptr %12, align 4, !tbaa !5
  %18474 = load i32, ptr %8, align 4, !tbaa !5
  %18475 = mul nsw i32 19, %18474
  %18476 = add nsw i32 %18473, %18475
  %18477 = sext i32 %18476 to i64
  %18478 = getelementptr inbounds double, ptr %18472, i64 %18477
  %18479 = load double, ptr %18478, align 8, !tbaa !11
  %18480 = call double @llvm.fmuladd.f64(double 0xBCA4000000000001, double %18479, double %18471)
  %18481 = load ptr, ptr %7, align 8, !tbaa !9
  %18482 = load i32, ptr %12, align 4, !tbaa !5
  %18483 = load i32, ptr %8, align 4, !tbaa !5
  %18484 = mul nsw i32 20, %18483
  %18485 = add nsw i32 %18482, %18484
  %18486 = sext i32 %18485 to i64
  %18487 = getelementptr inbounds double, ptr %18481, i64 %18486
  %18488 = load double, ptr %18487, align 8, !tbaa !11
  %18489 = call double @llvm.fmuladd.f64(double 0x3CB5FFFFFFFFFFFF, double %18488, double %18480)
  %18490 = load ptr, ptr %7, align 8, !tbaa !9
  %18491 = load i32, ptr %12, align 4, !tbaa !5
  %18492 = load i32, ptr %8, align 4, !tbaa !5
  %18493 = mul nsw i32 21, %18492
  %18494 = add nsw i32 %18491, %18493
  %18495 = sext i32 %18494 to i64
  %18496 = getelementptr inbounds double, ptr %18490, i64 %18495
  %18497 = load double, ptr %18496, align 8, !tbaa !11
  %18498 = call double @llvm.fmuladd.f64(double 0x3CB3FFFFFFFFFFFF, double %18497, double %18489)
  %18499 = load ptr, ptr %7, align 8, !tbaa !9
  %18500 = load i32, ptr %12, align 4, !tbaa !5
  %18501 = load i32, ptr %8, align 4, !tbaa !5
  %18502 = mul nsw i32 22, %18501
  %18503 = add nsw i32 %18500, %18502
  %18504 = sext i32 %18503 to i64
  %18505 = getelementptr inbounds double, ptr %18499, i64 %18504
  %18506 = load double, ptr %18505, align 8, !tbaa !11
  %18507 = call double @llvm.fmuladd.f64(double 0x3CA67FFFFFFFFFFE, double %18506, double %18498)
  %18508 = load ptr, ptr %7, align 8, !tbaa !9
  %18509 = load i32, ptr %12, align 4, !tbaa !5
  %18510 = load i32, ptr %8, align 4, !tbaa !5
  %18511 = mul nsw i32 23, %18510
  %18512 = add nsw i32 %18509, %18511
  %18513 = sext i32 %18512 to i64
  %18514 = getelementptr inbounds double, ptr %18508, i64 %18513
  %18515 = load double, ptr %18514, align 8, !tbaa !11
  %18516 = call double @llvm.fmuladd.f64(double 0xBCAB000000000001, double %18515, double %18507)
  %18517 = load ptr, ptr %7, align 8, !tbaa !9
  %18518 = load i32, ptr %12, align 4, !tbaa !5
  %18519 = load i32, ptr %8, align 4, !tbaa !5
  %18520 = mul nsw i32 24, %18519
  %18521 = add nsw i32 %18518, %18520
  %18522 = sext i32 %18521 to i64
  %18523 = getelementptr inbounds double, ptr %18517, i64 %18522
  %18524 = load double, ptr %18523, align 8, !tbaa !11
  %18525 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %18524, double %18516)
  %18526 = load ptr, ptr %7, align 8, !tbaa !9
  %18527 = load i32, ptr %12, align 4, !tbaa !5
  %18528 = load i32, ptr %8, align 4, !tbaa !5
  %18529 = mul nsw i32 25, %18528
  %18530 = add nsw i32 %18527, %18529
  %18531 = sext i32 %18530 to i64
  %18532 = getelementptr inbounds double, ptr %18526, i64 %18531
  %18533 = load double, ptr %18532, align 8, !tbaa !11
  %18534 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %18533, double %18525)
  %18535 = load ptr, ptr %7, align 8, !tbaa !9
  %18536 = load i32, ptr %12, align 4, !tbaa !5
  %18537 = load i32, ptr %8, align 4, !tbaa !5
  %18538 = mul nsw i32 26, %18537
  %18539 = add nsw i32 %18536, %18538
  %18540 = sext i32 %18539 to i64
  %18541 = getelementptr inbounds double, ptr %18535, i64 %18540
  %18542 = load double, ptr %18541, align 8, !tbaa !11
  %18543 = call double @llvm.fmuladd.f64(double 0xBCB3800000000000, double %18542, double %18534)
  %18544 = load ptr, ptr %7, align 8, !tbaa !9
  %18545 = load i32, ptr %12, align 4, !tbaa !5
  %18546 = load i32, ptr %8, align 4, !tbaa !5
  %18547 = mul nsw i32 27, %18546
  %18548 = add nsw i32 %18545, %18547
  %18549 = sext i32 %18548 to i64
  %18550 = getelementptr inbounds double, ptr %18544, i64 %18549
  %18551 = load double, ptr %18550, align 8, !tbaa !11
  %18552 = call double @llvm.fmuladd.f64(double 0x3CB1800000000000, double %18551, double %18543)
  %18553 = load ptr, ptr %7, align 8, !tbaa !9
  %18554 = load i32, ptr %12, align 4, !tbaa !5
  %18555 = load i32, ptr %8, align 4, !tbaa !5
  %18556 = mul nsw i32 28, %18555
  %18557 = add nsw i32 %18554, %18556
  %18558 = sext i32 %18557 to i64
  %18559 = getelementptr inbounds double, ptr %18553, i64 %18558
  %18560 = load double, ptr %18559, align 8, !tbaa !11
  %18561 = call double @llvm.fmuladd.f64(double 0xBCAC000000000000, double %18560, double %18552)
  %18562 = load ptr, ptr %7, align 8, !tbaa !9
  %18563 = load i32, ptr %12, align 4, !tbaa !5
  %18564 = load i32, ptr %8, align 4, !tbaa !5
  %18565 = mul nsw i32 29, %18564
  %18566 = add nsw i32 %18563, %18565
  %18567 = sext i32 %18566 to i64
  %18568 = getelementptr inbounds double, ptr %18562, i64 %18567
  %18569 = load double, ptr %18568, align 8, !tbaa !11
  %18570 = call double @llvm.fmuladd.f64(double 0x3CA0000000000002, double %18569, double %18561)
  %18571 = load ptr, ptr %7, align 8, !tbaa !9
  %18572 = load i32, ptr %12, align 4, !tbaa !5
  %18573 = load i32, ptr %8, align 4, !tbaa !5
  %18574 = mul nsw i32 30, %18573
  %18575 = add nsw i32 %18572, %18574
  %18576 = sext i32 %18575 to i64
  %18577 = getelementptr inbounds double, ptr %18571, i64 %18576
  %18578 = load double, ptr %18577, align 8, !tbaa !11
  %18579 = call double @llvm.fmuladd.f64(double 0xBF83152016E0EAC8, double %18578, double %18570)
  %18580 = load ptr, ptr %7, align 8, !tbaa !9
  %18581 = load i32, ptr %12, align 4, !tbaa !5
  %18582 = load i32, ptr %8, align 4, !tbaa !5
  %18583 = mul nsw i32 31, %18582
  %18584 = add nsw i32 %18581, %18583
  %18585 = sext i32 %18584 to i64
  %18586 = getelementptr inbounds double, ptr %18580, i64 %18585
  %18587 = load double, ptr %18586, align 8, !tbaa !11
  %18588 = call double @llvm.fmuladd.f64(double 0x3FF4EC1BB3FDC612, double %18587, double %18579)
  %18589 = load ptr, ptr %7, align 8, !tbaa !9
  %18590 = load i32, ptr %12, align 4, !tbaa !5
  %18591 = load i32, ptr %8, align 4, !tbaa !5
  %18592 = mul nsw i32 32, %18591
  %18593 = add nsw i32 %18590, %18592
  %18594 = sext i32 %18593 to i64
  %18595 = getelementptr inbounds double, ptr %18589, i64 %18594
  %18596 = load double, ptr %18595, align 8, !tbaa !11
  %18597 = call double @llvm.fmuladd.f64(double 0xBFB5B58B4F03B1A3, double %18596, double %18588)
  %18598 = load ptr, ptr %7, align 8, !tbaa !9
  %18599 = load i32, ptr %12, align 4, !tbaa !5
  %18600 = load i32, ptr %8, align 4, !tbaa !5
  %18601 = mul nsw i32 33, %18600
  %18602 = add nsw i32 %18599, %18601
  %18603 = sext i32 %18602 to i64
  %18604 = getelementptr inbounds double, ptr %18598, i64 %18603
  %18605 = load double, ptr %18604, align 8, !tbaa !11
  %18606 = call double @llvm.fmuladd.f64(double 0x3F938CE4890DB32D, double %18605, double %18597)
  %18607 = load ptr, ptr %7, align 8, !tbaa !9
  %18608 = load i32, ptr %12, align 4, !tbaa !5
  %18609 = load i32, ptr %8, align 4, !tbaa !5
  %18610 = mul nsw i32 34, %18609
  %18611 = add nsw i32 %18608, %18610
  %18612 = sext i32 %18611 to i64
  %18613 = getelementptr inbounds double, ptr %18607, i64 %18612
  %18614 = load double, ptr %18613, align 8, !tbaa !11
  %18615 = call double @llvm.fmuladd.f64(double 0x3FD417DEBFC17B11, double %18614, double %18606)
  %18616 = load ptr, ptr %7, align 8, !tbaa !9
  %18617 = load i32, ptr %12, align 4, !tbaa !5
  %18618 = load i32, ptr %8, align 4, !tbaa !5
  %18619 = mul nsw i32 35, %18618
  %18620 = add nsw i32 %18617, %18619
  %18621 = sext i32 %18620 to i64
  %18622 = getelementptr inbounds double, ptr %18616, i64 %18621
  %18623 = load double, ptr %18622, align 8, !tbaa !11
  %18624 = call double @llvm.fmuladd.f64(double 0xBFB49217631F593D, double %18623, double %18615)
  %18625 = load ptr, ptr %7, align 8, !tbaa !9
  %18626 = load i32, ptr %12, align 4, !tbaa !5
  %18627 = load i32, ptr %8, align 4, !tbaa !5
  %18628 = mul nsw i32 36, %18627
  %18629 = add nsw i32 %18626, %18628
  %18630 = sext i32 %18629 to i64
  %18631 = getelementptr inbounds double, ptr %18625, i64 %18630
  %18632 = load double, ptr %18631, align 8, !tbaa !11
  %18633 = call double @llvm.fmuladd.f64(double 0x3F85E50BB681A3B8, double %18632, double %18624)
  %18634 = load ptr, ptr %7, align 8, !tbaa !9
  %18635 = load i32, ptr %12, align 4, !tbaa !5
  %18636 = load i32, ptr %8, align 4, !tbaa !5
  %18637 = mul nsw i32 37, %18636
  %18638 = add nsw i32 %18635, %18637
  %18639 = sext i32 %18638 to i64
  %18640 = getelementptr inbounds double, ptr %18634, i64 %18639
  %18641 = load double, ptr %18640, align 8, !tbaa !11
  %18642 = call double @llvm.fmuladd.f64(double 0xBF8BDAF699AECFBC, double %18641, double %18633)
  %18643 = load ptr, ptr %7, align 8, !tbaa !9
  %18644 = load i32, ptr %12, align 4, !tbaa !5
  %18645 = load i32, ptr %8, align 4, !tbaa !5
  %18646 = mul nsw i32 38, %18645
  %18647 = add nsw i32 %18644, %18646
  %18648 = sext i32 %18647 to i64
  %18649 = getelementptr inbounds double, ptr %18643, i64 %18648
  %18650 = load double, ptr %18649, align 8, !tbaa !11
  %18651 = call double @llvm.fmuladd.f64(double 0x3FCA50C41AB7A310, double %18650, double %18642)
  %18652 = load ptr, ptr %7, align 8, !tbaa !9
  %18653 = load i32, ptr %12, align 4, !tbaa !5
  %18654 = load i32, ptr %8, align 4, !tbaa !5
  %18655 = mul nsw i32 39, %18654
  %18656 = add nsw i32 %18653, %18655
  %18657 = sext i32 %18656 to i64
  %18658 = getelementptr inbounds double, ptr %18652, i64 %18657
  %18659 = load double, ptr %18658, align 8, !tbaa !11
  %18660 = call double @llvm.fmuladd.f64(double 0xBFE5679E70A60657, double %18659, double %18651)
  store double %18660, ptr %11, align 8, !tbaa !11
  %18661 = load double, ptr %11, align 8, !tbaa !11
  %18662 = load ptr, ptr %9, align 8, !tbaa !9
  %18663 = load i32, ptr %12, align 4, !tbaa !5
  %18664 = load i32, ptr %10, align 4, !tbaa !5
  %18665 = mul nsw i32 51, %18664
  %18666 = add nsw i32 %18663, %18665
  %18667 = sext i32 %18666 to i64
  %18668 = getelementptr inbounds double, ptr %18662, i64 %18667
  store double %18661, ptr %18668, align 8, !tbaa !11
  %18669 = load ptr, ptr %7, align 8, !tbaa !9
  %18670 = load i32, ptr %12, align 4, !tbaa !5
  %18671 = load i32, ptr %8, align 4, !tbaa !5
  %18672 = mul nsw i32 0, %18671
  %18673 = add nsw i32 %18670, %18672
  %18674 = sext i32 %18673 to i64
  %18675 = getelementptr inbounds double, ptr %18669, i64 %18674
  %18676 = load double, ptr %18675, align 8, !tbaa !11
  %18677 = load ptr, ptr %7, align 8, !tbaa !9
  %18678 = load i32, ptr %12, align 4, !tbaa !5
  %18679 = load i32, ptr %8, align 4, !tbaa !5
  %18680 = mul nsw i32 1, %18679
  %18681 = add nsw i32 %18678, %18680
  %18682 = sext i32 %18681 to i64
  %18683 = getelementptr inbounds double, ptr %18677, i64 %18682
  %18684 = load double, ptr %18683, align 8, !tbaa !11
  %18685 = fmul double 0x3F938CE4890DB2E5, %18684
  %18686 = call double @llvm.fmuladd.f64(double 0xBF83152016E0EC7C, double %18676, double %18685)
  %18687 = load ptr, ptr %7, align 8, !tbaa !9
  %18688 = load i32, ptr %12, align 4, !tbaa !5
  %18689 = load i32, ptr %8, align 4, !tbaa !5
  %18690 = mul nsw i32 2, %18689
  %18691 = add nsw i32 %18688, %18690
  %18692 = sext i32 %18691 to i64
  %18693 = getelementptr inbounds double, ptr %18687, i64 %18692
  %18694 = load double, ptr %18693, align 8, !tbaa !11
  %18695 = call double @llvm.fmuladd.f64(double 0x3FF4EC1BB3FDC61B, double %18694, double %18686)
  %18696 = load ptr, ptr %7, align 8, !tbaa !9
  %18697 = load i32, ptr %12, align 4, !tbaa !5
  %18698 = load i32, ptr %8, align 4, !tbaa !5
  %18699 = mul nsw i32 3, %18698
  %18700 = add nsw i32 %18697, %18699
  %18701 = sext i32 %18700 to i64
  %18702 = getelementptr inbounds double, ptr %18696, i64 %18701
  %18703 = load double, ptr %18702, align 8, !tbaa !11
  %18704 = call double @llvm.fmuladd.f64(double 0xBFB5B58B4F03B1AE, double %18703, double %18695)
  %18705 = load ptr, ptr %7, align 8, !tbaa !9
  %18706 = load i32, ptr %12, align 4, !tbaa !5
  %18707 = load i32, ptr %8, align 4, !tbaa !5
  %18708 = mul nsw i32 4, %18707
  %18709 = add nsw i32 %18706, %18708
  %18710 = sext i32 %18709 to i64
  %18711 = getelementptr inbounds double, ptr %18705, i64 %18710
  %18712 = load double, ptr %18711, align 8, !tbaa !11
  %18713 = call double @llvm.fmuladd.f64(double 0x3FCA50C41AB7A329, double %18712, double %18704)
  %18714 = load ptr, ptr %7, align 8, !tbaa !9
  %18715 = load i32, ptr %12, align 4, !tbaa !5
  %18716 = load i32, ptr %8, align 4, !tbaa !5
  %18717 = mul nsw i32 5, %18716
  %18718 = add nsw i32 %18715, %18717
  %18719 = sext i32 %18718 to i64
  %18720 = getelementptr inbounds double, ptr %18714, i64 %18719
  %18721 = load double, ptr %18720, align 8, !tbaa !11
  %18722 = call double @llvm.fmuladd.f64(double 0xBF8BDAF699AECFB0, double %18721, double %18713)
  %18723 = load ptr, ptr %7, align 8, !tbaa !9
  %18724 = load i32, ptr %12, align 4, !tbaa !5
  %18725 = load i32, ptr %8, align 4, !tbaa !5
  %18726 = mul nsw i32 6, %18725
  %18727 = add nsw i32 %18724, %18726
  %18728 = sext i32 %18727 to i64
  %18729 = getelementptr inbounds double, ptr %18723, i64 %18728
  %18730 = load double, ptr %18729, align 8, !tbaa !11
  %18731 = call double @llvm.fmuladd.f64(double 0x3FD417DEBFC17B27, double %18730, double %18722)
  %18732 = load ptr, ptr %7, align 8, !tbaa !9
  %18733 = load i32, ptr %12, align 4, !tbaa !5
  %18734 = load i32, ptr %8, align 4, !tbaa !5
  %18735 = mul nsw i32 7, %18734
  %18736 = add nsw i32 %18733, %18735
  %18737 = sext i32 %18736 to i64
  %18738 = getelementptr inbounds double, ptr %18732, i64 %18737
  %18739 = load double, ptr %18738, align 8, !tbaa !11
  %18740 = call double @llvm.fmuladd.f64(double 0xBFE5679E70A6066B, double %18739, double %18731)
  %18741 = load ptr, ptr %7, align 8, !tbaa !9
  %18742 = load i32, ptr %12, align 4, !tbaa !5
  %18743 = load i32, ptr %8, align 4, !tbaa !5
  %18744 = mul nsw i32 8, %18743
  %18745 = add nsw i32 %18742, %18744
  %18746 = sext i32 %18745 to i64
  %18747 = getelementptr inbounds double, ptr %18741, i64 %18746
  %18748 = load double, ptr %18747, align 8, !tbaa !11
  %18749 = call double @llvm.fmuladd.f64(double 0x3F85E50BB681A41A, double %18748, double %18740)
  %18750 = load ptr, ptr %7, align 8, !tbaa !9
  %18751 = load i32, ptr %12, align 4, !tbaa !5
  %18752 = load i32, ptr %8, align 4, !tbaa !5
  %18753 = mul nsw i32 9, %18752
  %18754 = add nsw i32 %18751, %18753
  %18755 = sext i32 %18754 to i64
  %18756 = getelementptr inbounds double, ptr %18750, i64 %18755
  %18757 = load double, ptr %18756, align 8, !tbaa !11
  %18758 = call double @llvm.fmuladd.f64(double 0xBFB49217631F5949, double %18757, double %18749)
  %18759 = load ptr, ptr %7, align 8, !tbaa !9
  %18760 = load i32, ptr %12, align 4, !tbaa !5
  %18761 = load i32, ptr %8, align 4, !tbaa !5
  %18762 = mul nsw i32 10, %18761
  %18763 = add nsw i32 %18760, %18762
  %18764 = sext i32 %18763 to i64
  %18765 = getelementptr inbounds double, ptr %18759, i64 %18764
  %18766 = load double, ptr %18765, align 8, !tbaa !11
  %18767 = call double @llvm.fmuladd.f64(double 0x3CB8200000000001, double %18766, double %18758)
  %18768 = load ptr, ptr %7, align 8, !tbaa !9
  %18769 = load i32, ptr %12, align 4, !tbaa !5
  %18770 = load i32, ptr %8, align 4, !tbaa !5
  %18771 = mul nsw i32 11, %18770
  %18772 = add nsw i32 %18769, %18771
  %18773 = sext i32 %18772 to i64
  %18774 = getelementptr inbounds double, ptr %18768, i64 %18773
  %18775 = load double, ptr %18774, align 8, !tbaa !11
  %18776 = call double @llvm.fmuladd.f64(double 0xBC9C000000000000, double %18775, double %18767)
  %18777 = load ptr, ptr %7, align 8, !tbaa !9
  %18778 = load i32, ptr %12, align 4, !tbaa !5
  %18779 = load i32, ptr %8, align 4, !tbaa !5
  %18780 = mul nsw i32 12, %18779
  %18781 = add nsw i32 %18778, %18780
  %18782 = sext i32 %18781 to i64
  %18783 = getelementptr inbounds double, ptr %18777, i64 %18782
  %18784 = load double, ptr %18783, align 8, !tbaa !11
  %18785 = call double @llvm.fmuladd.f64(double 0xBC887FFFFFFFFFFF, double %18784, double %18776)
  %18786 = load ptr, ptr %7, align 8, !tbaa !9
  %18787 = load i32, ptr %12, align 4, !tbaa !5
  %18788 = load i32, ptr %8, align 4, !tbaa !5
  %18789 = mul nsw i32 13, %18788
  %18790 = add nsw i32 %18787, %18789
  %18791 = sext i32 %18790 to i64
  %18792 = getelementptr inbounds double, ptr %18786, i64 %18791
  %18793 = load double, ptr %18792, align 8, !tbaa !11
  %18794 = call double @llvm.fmuladd.f64(double 0xBCA22FFFFFFFFFFF, double %18793, double %18785)
  %18795 = load ptr, ptr %7, align 8, !tbaa !9
  %18796 = load i32, ptr %12, align 4, !tbaa !5
  %18797 = load i32, ptr %8, align 4, !tbaa !5
  %18798 = mul nsw i32 14, %18797
  %18799 = add nsw i32 %18796, %18798
  %18800 = sext i32 %18799 to i64
  %18801 = getelementptr inbounds double, ptr %18795, i64 %18800
  %18802 = load double, ptr %18801, align 8, !tbaa !11
  %18803 = call double @llvm.fmuladd.f64(double 0xBC84000000000000, double %18802, double %18794)
  %18804 = load ptr, ptr %7, align 8, !tbaa !9
  %18805 = load i32, ptr %12, align 4, !tbaa !5
  %18806 = load i32, ptr %8, align 4, !tbaa !5
  %18807 = mul nsw i32 15, %18806
  %18808 = add nsw i32 %18805, %18807
  %18809 = sext i32 %18808 to i64
  %18810 = getelementptr inbounds double, ptr %18804, i64 %18809
  %18811 = load double, ptr %18810, align 8, !tbaa !11
  %18812 = call double @llvm.fmuladd.f64(double 0xBCB7E00000000001, double %18811, double %18803)
  %18813 = load ptr, ptr %7, align 8, !tbaa !9
  %18814 = load i32, ptr %12, align 4, !tbaa !5
  %18815 = load i32, ptr %8, align 4, !tbaa !5
  %18816 = mul nsw i32 16, %18815
  %18817 = add nsw i32 %18814, %18816
  %18818 = sext i32 %18817 to i64
  %18819 = getelementptr inbounds double, ptr %18813, i64 %18818
  %18820 = load double, ptr %18819, align 8, !tbaa !11
  %18821 = call double @llvm.fmuladd.f64(double 0x3CA28FFFFFFFFFFF, double %18820, double %18812)
  %18822 = load ptr, ptr %7, align 8, !tbaa !9
  %18823 = load i32, ptr %12, align 4, !tbaa !5
  %18824 = load i32, ptr %8, align 4, !tbaa !5
  %18825 = mul nsw i32 17, %18824
  %18826 = add nsw i32 %18823, %18825
  %18827 = sext i32 %18826 to i64
  %18828 = getelementptr inbounds double, ptr %18822, i64 %18827
  %18829 = load double, ptr %18828, align 8, !tbaa !11
  %18830 = call double @llvm.fmuladd.f64(double 0xBC8E800000000001, double %18829, double %18821)
  %18831 = load ptr, ptr %7, align 8, !tbaa !9
  %18832 = load i32, ptr %12, align 4, !tbaa !5
  %18833 = load i32, ptr %8, align 4, !tbaa !5
  %18834 = mul nsw i32 18, %18833
  %18835 = add nsw i32 %18832, %18834
  %18836 = sext i32 %18835 to i64
  %18837 = getelementptr inbounds double, ptr %18831, i64 %18836
  %18838 = load double, ptr %18837, align 8, !tbaa !11
  %18839 = call double @llvm.fmuladd.f64(double 0x3CA1000000000001, double %18838, double %18830)
  %18840 = load ptr, ptr %7, align 8, !tbaa !9
  %18841 = load i32, ptr %12, align 4, !tbaa !5
  %18842 = load i32, ptr %8, align 4, !tbaa !5
  %18843 = mul nsw i32 19, %18842
  %18844 = add nsw i32 %18841, %18843
  %18845 = sext i32 %18844 to i64
  %18846 = getelementptr inbounds double, ptr %18840, i64 %18845
  %18847 = load double, ptr %18846, align 8, !tbaa !11
  %18848 = call double @llvm.fmuladd.f64(double 0xBC50000000000000, double %18847, double %18839)
  %18849 = load ptr, ptr %7, align 8, !tbaa !9
  %18850 = load i32, ptr %12, align 4, !tbaa !5
  %18851 = load i32, ptr %8, align 4, !tbaa !5
  %18852 = mul nsw i32 20, %18851
  %18853 = add nsw i32 %18850, %18852
  %18854 = sext i32 %18853 to i64
  %18855 = getelementptr inbounds double, ptr %18849, i64 %18854
  %18856 = load double, ptr %18855, align 8, !tbaa !11
  %18857 = call double @llvm.fmuladd.f64(double 0xBCA0400000000002, double %18856, double %18848)
  %18858 = load ptr, ptr %7, align 8, !tbaa !9
  %18859 = load i32, ptr %12, align 4, !tbaa !5
  %18860 = load i32, ptr %8, align 4, !tbaa !5
  %18861 = mul nsw i32 21, %18860
  %18862 = add nsw i32 %18859, %18861
  %18863 = sext i32 %18862 to i64
  %18864 = getelementptr inbounds double, ptr %18858, i64 %18863
  %18865 = load double, ptr %18864, align 8, !tbaa !11
  %18866 = call double @llvm.fmuladd.f64(double 0x3C92800000000000, double %18865, double %18857)
  %18867 = load ptr, ptr %7, align 8, !tbaa !9
  %18868 = load i32, ptr %12, align 4, !tbaa !5
  %18869 = load i32, ptr %8, align 4, !tbaa !5
  %18870 = mul nsw i32 22, %18869
  %18871 = add nsw i32 %18868, %18870
  %18872 = sext i32 %18871 to i64
  %18873 = getelementptr inbounds double, ptr %18867, i64 %18872
  %18874 = load double, ptr %18873, align 8, !tbaa !11
  %18875 = call double @llvm.fmuladd.f64(double 0xBCAB000000000001, double %18874, double %18866)
  %18876 = load ptr, ptr %7, align 8, !tbaa !9
  %18877 = load i32, ptr %12, align 4, !tbaa !5
  %18878 = load i32, ptr %8, align 4, !tbaa !5
  %18879 = mul nsw i32 23, %18878
  %18880 = add nsw i32 %18877, %18879
  %18881 = sext i32 %18880 to i64
  %18882 = getelementptr inbounds double, ptr %18876, i64 %18881
  %18883 = load double, ptr %18882, align 8, !tbaa !11
  %18884 = call double @llvm.fmuladd.f64(double 0x3CBB37FFFFFFFFFF, double %18883, double %18875)
  %18885 = load ptr, ptr %7, align 8, !tbaa !9
  %18886 = load i32, ptr %12, align 4, !tbaa !5
  %18887 = load i32, ptr %8, align 4, !tbaa !5
  %18888 = mul nsw i32 24, %18887
  %18889 = add nsw i32 %18886, %18888
  %18890 = sext i32 %18889 to i64
  %18891 = getelementptr inbounds double, ptr %18885, i64 %18890
  %18892 = load double, ptr %18891, align 8, !tbaa !11
  %18893 = call double @llvm.fmuladd.f64(double 0x3C84000000000000, double %18892, double %18884)
  %18894 = load ptr, ptr %7, align 8, !tbaa !9
  %18895 = load i32, ptr %12, align 4, !tbaa !5
  %18896 = load i32, ptr %8, align 4, !tbaa !5
  %18897 = mul nsw i32 25, %18896
  %18898 = add nsw i32 %18895, %18897
  %18899 = sext i32 %18898 to i64
  %18900 = getelementptr inbounds double, ptr %18894, i64 %18899
  %18901 = load double, ptr %18900, align 8, !tbaa !11
  %18902 = call double @llvm.fmuladd.f64(double 0x3CA1C00000000000, double %18901, double %18893)
  %18903 = load ptr, ptr %7, align 8, !tbaa !9
  %18904 = load i32, ptr %12, align 4, !tbaa !5
  %18905 = load i32, ptr %8, align 4, !tbaa !5
  %18906 = mul nsw i32 26, %18905
  %18907 = add nsw i32 %18904, %18906
  %18908 = sext i32 %18907 to i64
  %18909 = getelementptr inbounds double, ptr %18903, i64 %18908
  %18910 = load double, ptr %18909, align 8, !tbaa !11
  %18911 = call double @llvm.fmuladd.f64(double 0x3CA8D00000000000, double %18910, double %18902)
  %18912 = load ptr, ptr %7, align 8, !tbaa !9
  %18913 = load i32, ptr %12, align 4, !tbaa !5
  %18914 = load i32, ptr %8, align 4, !tbaa !5
  %18915 = mul nsw i32 27, %18914
  %18916 = add nsw i32 %18913, %18915
  %18917 = sext i32 %18916 to i64
  %18918 = getelementptr inbounds double, ptr %18912, i64 %18917
  %18919 = load double, ptr %18918, align 8, !tbaa !11
  %18920 = call double @llvm.fmuladd.f64(double 0xBC9F3FFFFFFFFFFC, double %18919, double %18911)
  %18921 = load ptr, ptr %7, align 8, !tbaa !9
  %18922 = load i32, ptr %12, align 4, !tbaa !5
  %18923 = load i32, ptr %8, align 4, !tbaa !5
  %18924 = mul nsw i32 28, %18923
  %18925 = add nsw i32 %18922, %18924
  %18926 = sext i32 %18925 to i64
  %18927 = getelementptr inbounds double, ptr %18921, i64 %18926
  %18928 = load double, ptr %18927, align 8, !tbaa !11
  %18929 = call double @llvm.fmuladd.f64(double 0x3C98800000000000, double %18928, double %18920)
  %18930 = load ptr, ptr %7, align 8, !tbaa !9
  %18931 = load i32, ptr %12, align 4, !tbaa !5
  %18932 = load i32, ptr %8, align 4, !tbaa !5
  %18933 = mul nsw i32 29, %18932
  %18934 = add nsw i32 %18931, %18933
  %18935 = sext i32 %18934 to i64
  %18936 = getelementptr inbounds double, ptr %18930, i64 %18935
  %18937 = load double, ptr %18936, align 8, !tbaa !11
  %18938 = call double @llvm.fmuladd.f64(double 0xBC91000000000000, double %18937, double %18929)
  %18939 = load ptr, ptr %7, align 8, !tbaa !9
  %18940 = load i32, ptr %12, align 4, !tbaa !5
  %18941 = load i32, ptr %8, align 4, !tbaa !5
  %18942 = mul nsw i32 30, %18941
  %18943 = add nsw i32 %18940, %18942
  %18944 = sext i32 %18943 to i64
  %18945 = getelementptr inbounds double, ptr %18939, i64 %18944
  %18946 = load double, ptr %18945, align 8, !tbaa !11
  %18947 = call double @llvm.fmuladd.f64(double 0xBCB1F00000000000, double %18946, double %18938)
  %18948 = load ptr, ptr %7, align 8, !tbaa !9
  %18949 = load i32, ptr %12, align 4, !tbaa !5
  %18950 = load i32, ptr %8, align 4, !tbaa !5
  %18951 = mul nsw i32 31, %18950
  %18952 = add nsw i32 %18949, %18951
  %18953 = sext i32 %18952 to i64
  %18954 = getelementptr inbounds double, ptr %18948, i64 %18953
  %18955 = load double, ptr %18954, align 8, !tbaa !11
  %18956 = call double @llvm.fmuladd.f64(double 0x3CA1400000000000, double %18955, double %18947)
  %18957 = load ptr, ptr %7, align 8, !tbaa !9
  %18958 = load i32, ptr %12, align 4, !tbaa !5
  %18959 = load i32, ptr %8, align 4, !tbaa !5
  %18960 = mul nsw i32 32, %18959
  %18961 = add nsw i32 %18958, %18960
  %18962 = sext i32 %18961 to i64
  %18963 = getelementptr inbounds double, ptr %18957, i64 %18962
  %18964 = load double, ptr %18963, align 8, !tbaa !11
  %18965 = call double @llvm.fmuladd.f64(double 0x3C64800000000000, double %18964, double %18956)
  %18966 = load ptr, ptr %7, align 8, !tbaa !9
  %18967 = load i32, ptr %12, align 4, !tbaa !5
  %18968 = load i32, ptr %8, align 4, !tbaa !5
  %18969 = mul nsw i32 33, %18968
  %18970 = add nsw i32 %18967, %18969
  %18971 = sext i32 %18970 to i64
  %18972 = getelementptr inbounds double, ptr %18966, i64 %18971
  %18973 = load double, ptr %18972, align 8, !tbaa !11
  %18974 = call double @llvm.fmuladd.f64(double 0x3C9FAFFFFFFFFFFC, double %18973, double %18965)
  %18975 = load ptr, ptr %7, align 8, !tbaa !9
  %18976 = load i32, ptr %12, align 4, !tbaa !5
  %18977 = load i32, ptr %8, align 4, !tbaa !5
  %18978 = mul nsw i32 34, %18977
  %18979 = add nsw i32 %18976, %18978
  %18980 = sext i32 %18979 to i64
  %18981 = getelementptr inbounds double, ptr %18975, i64 %18980
  %18982 = load double, ptr %18981, align 8, !tbaa !11
  %18983 = call double @llvm.fmuladd.f64(double 0x3CAD7FFFFFFFFFFE, double %18982, double %18974)
  %18984 = load ptr, ptr %7, align 8, !tbaa !9
  %18985 = load i32, ptr %12, align 4, !tbaa !5
  %18986 = load i32, ptr %8, align 4, !tbaa !5
  %18987 = mul nsw i32 35, %18986
  %18988 = add nsw i32 %18985, %18987
  %18989 = sext i32 %18988 to i64
  %18990 = getelementptr inbounds double, ptr %18984, i64 %18989
  %18991 = load double, ptr %18990, align 8, !tbaa !11
  %18992 = call double @llvm.fmuladd.f64(double 0x3C82000000000000, double %18991, double %18983)
  %18993 = load ptr, ptr %7, align 8, !tbaa !9
  %18994 = load i32, ptr %12, align 4, !tbaa !5
  %18995 = load i32, ptr %8, align 4, !tbaa !5
  %18996 = mul nsw i32 36, %18995
  %18997 = add nsw i32 %18994, %18996
  %18998 = sext i32 %18997 to i64
  %18999 = getelementptr inbounds double, ptr %18993, i64 %18998
  %19000 = load double, ptr %18999, align 8, !tbaa !11
  %19001 = call double @llvm.fmuladd.f64(double 0x3C96100000000000, double %19000, double %18992)
  %19002 = load ptr, ptr %7, align 8, !tbaa !9
  %19003 = load i32, ptr %12, align 4, !tbaa !5
  %19004 = load i32, ptr %8, align 4, !tbaa !5
  %19005 = mul nsw i32 37, %19004
  %19006 = add nsw i32 %19003, %19005
  %19007 = sext i32 %19006 to i64
  %19008 = getelementptr inbounds double, ptr %19002, i64 %19007
  %19009 = load double, ptr %19008, align 8, !tbaa !11
  %19010 = call double @llvm.fmuladd.f64(double 0x3C9A700000000000, double %19009, double %19001)
  %19011 = load ptr, ptr %7, align 8, !tbaa !9
  %19012 = load i32, ptr %12, align 4, !tbaa !5
  %19013 = load i32, ptr %8, align 4, !tbaa !5
  %19014 = mul nsw i32 38, %19013
  %19015 = add nsw i32 %19012, %19014
  %19016 = sext i32 %19015 to i64
  %19017 = getelementptr inbounds double, ptr %19011, i64 %19016
  %19018 = load double, ptr %19017, align 8, !tbaa !11
  %19019 = call double @llvm.fmuladd.f64(double 0xBC7E000000000001, double %19018, double %19010)
  %19020 = load ptr, ptr %7, align 8, !tbaa !9
  %19021 = load i32, ptr %12, align 4, !tbaa !5
  %19022 = load i32, ptr %8, align 4, !tbaa !5
  %19023 = mul nsw i32 39, %19022
  %19024 = add nsw i32 %19021, %19023
  %19025 = sext i32 %19024 to i64
  %19026 = getelementptr inbounds double, ptr %19020, i64 %19025
  %19027 = load double, ptr %19026, align 8, !tbaa !11
  %19028 = call double @llvm.fmuladd.f64(double 0xBC9BC00000000000, double %19027, double %19019)
  store double %19028, ptr %11, align 8, !tbaa !11
  %19029 = load double, ptr %11, align 8, !tbaa !11
  %19030 = load ptr, ptr %9, align 8, !tbaa !9
  %19031 = load i32, ptr %12, align 4, !tbaa !5
  %19032 = load i32, ptr %10, align 4, !tbaa !5
  %19033 = mul nsw i32 52, %19032
  %19034 = add nsw i32 %19031, %19033
  %19035 = sext i32 %19034 to i64
  %19036 = getelementptr inbounds double, ptr %19030, i64 %19035
  store double %19029, ptr %19036, align 8, !tbaa !11
  %19037 = load ptr, ptr %7, align 8, !tbaa !9
  %19038 = load i32, ptr %12, align 4, !tbaa !5
  %19039 = load i32, ptr %8, align 4, !tbaa !5
  %19040 = mul nsw i32 0, %19039
  %19041 = add nsw i32 %19038, %19040
  %19042 = sext i32 %19041 to i64
  %19043 = getelementptr inbounds double, ptr %19037, i64 %19042
  %19044 = load double, ptr %19043, align 8, !tbaa !11
  %19045 = load ptr, ptr %7, align 8, !tbaa !9
  %19046 = load i32, ptr %12, align 4, !tbaa !5
  %19047 = load i32, ptr %8, align 4, !tbaa !5
  %19048 = mul nsw i32 1, %19047
  %19049 = add nsw i32 %19046, %19048
  %19050 = sext i32 %19049 to i64
  %19051 = getelementptr inbounds double, ptr %19045, i64 %19050
  %19052 = load double, ptr %19051, align 8, !tbaa !11
  %19053 = fmul double 0xBFA352D4DB969C02, %19052
  %19054 = call double @llvm.fmuladd.f64(double 0xBFE333710B32A298, double %19044, double %19053)
  %19055 = load ptr, ptr %7, align 8, !tbaa !9
  %19056 = load i32, ptr %12, align 4, !tbaa !5
  %19057 = load i32, ptr %8, align 4, !tbaa !5
  %19058 = mul nsw i32 2, %19057
  %19059 = add nsw i32 %19056, %19058
  %19060 = sext i32 %19059 to i64
  %19061 = getelementptr inbounds double, ptr %19055, i64 %19060
  %19062 = load double, ptr %19061, align 8, !tbaa !11
  %19063 = call double @llvm.fmuladd.f64(double 0x3FA87D7643548552, double %19062, double %19054)
  %19064 = load ptr, ptr %7, align 8, !tbaa !9
  %19065 = load i32, ptr %12, align 4, !tbaa !5
  %19066 = load i32, ptr %8, align 4, !tbaa !5
  %19067 = mul nsw i32 3, %19066
  %19068 = add nsw i32 %19065, %19067
  %19069 = sext i32 %19068 to i64
  %19070 = getelementptr inbounds double, ptr %19064, i64 %19069
  %19071 = load double, ptr %19070, align 8, !tbaa !11
  %19072 = call double @llvm.fmuladd.f64(double 0xBFBEED13A9F0D902, double %19071, double %19063)
  %19073 = load ptr, ptr %7, align 8, !tbaa !9
  %19074 = load i32, ptr %12, align 4, !tbaa !5
  %19075 = load i32, ptr %8, align 4, !tbaa !5
  %19076 = mul nsw i32 4, %19075
  %19077 = add nsw i32 %19074, %19076
  %19078 = sext i32 %19077 to i64
  %19079 = getelementptr inbounds double, ptr %19073, i64 %19078
  %19080 = load double, ptr %19079, align 8, !tbaa !11
  %19081 = call double @llvm.fmuladd.f64(double 0x3FF670C5F1F4C92E, double %19080, double %19072)
  %19082 = load ptr, ptr %7, align 8, !tbaa !9
  %19083 = load i32, ptr %12, align 4, !tbaa !5
  %19084 = load i32, ptr %8, align 4, !tbaa !5
  %19085 = mul nsw i32 5, %19084
  %19086 = add nsw i32 %19083, %19085
  %19087 = sext i32 %19086 to i64
  %19088 = getelementptr inbounds double, ptr %19082, i64 %19087
  %19089 = load double, ptr %19088, align 8, !tbaa !11
  %19090 = call double @llvm.fmuladd.f64(double 0x3FC27B05E24EC5DB, double %19089, double %19081)
  %19091 = load ptr, ptr %7, align 8, !tbaa !9
  %19092 = load i32, ptr %12, align 4, !tbaa !5
  %19093 = load i32, ptr %8, align 4, !tbaa !5
  %19094 = mul nsw i32 6, %19093
  %19095 = add nsw i32 %19092, %19094
  %19096 = sext i32 %19095 to i64
  %19097 = getelementptr inbounds double, ptr %19091, i64 %19096
  %19098 = load double, ptr %19097, align 8, !tbaa !11
  %19099 = call double @llvm.fmuladd.f64(double 0x3FD35DAE88CBA644, double %19098, double %19090)
  %19100 = load ptr, ptr %7, align 8, !tbaa !9
  %19101 = load i32, ptr %12, align 4, !tbaa !5
  %19102 = load i32, ptr %8, align 4, !tbaa !5
  %19103 = mul nsw i32 7, %19102
  %19104 = add nsw i32 %19101, %19103
  %19105 = sext i32 %19104 to i64
  %19106 = getelementptr inbounds double, ptr %19100, i64 %19105
  %19107 = load double, ptr %19106, align 8, !tbaa !11
  %19108 = call double @llvm.fmuladd.f64(double 0xBFD41C0D131D428E, double %19107, double %19099)
  %19109 = load ptr, ptr %7, align 8, !tbaa !9
  %19110 = load i32, ptr %12, align 4, !tbaa !5
  %19111 = load i32, ptr %8, align 4, !tbaa !5
  %19112 = mul nsw i32 8, %19111
  %19113 = add nsw i32 %19110, %19112
  %19114 = sext i32 %19113 to i64
  %19115 = getelementptr inbounds double, ptr %19109, i64 %19114
  %19116 = load double, ptr %19115, align 8, !tbaa !11
  %19117 = call double @llvm.fmuladd.f64(double 0x3F9854E0ADA34B70, double %19116, double %19108)
  %19118 = load ptr, ptr %7, align 8, !tbaa !9
  %19119 = load i32, ptr %12, align 4, !tbaa !5
  %19120 = load i32, ptr %8, align 4, !tbaa !5
  %19121 = mul nsw i32 9, %19120
  %19122 = add nsw i32 %19119, %19121
  %19123 = sext i32 %19122 to i64
  %19124 = getelementptr inbounds double, ptr %19118, i64 %19123
  %19125 = load double, ptr %19124, align 8, !tbaa !11
  %19126 = call double @llvm.fmuladd.f64(double 0x3FC36A9134CD3C5F, double %19125, double %19117)
  %19127 = load ptr, ptr %7, align 8, !tbaa !9
  %19128 = load i32, ptr %12, align 4, !tbaa !5
  %19129 = load i32, ptr %8, align 4, !tbaa !5
  %19130 = mul nsw i32 10, %19129
  %19131 = add nsw i32 %19128, %19130
  %19132 = sext i32 %19131 to i64
  %19133 = getelementptr inbounds double, ptr %19127, i64 %19132
  %19134 = load double, ptr %19133, align 8, !tbaa !11
  %19135 = call double @llvm.fmuladd.f64(double 0x3CBE000000000000, double %19134, double %19126)
  %19136 = load ptr, ptr %7, align 8, !tbaa !9
  %19137 = load i32, ptr %12, align 4, !tbaa !5
  %19138 = load i32, ptr %8, align 4, !tbaa !5
  %19139 = mul nsw i32 11, %19138
  %19140 = add nsw i32 %19137, %19139
  %19141 = sext i32 %19140 to i64
  %19142 = getelementptr inbounds double, ptr %19136, i64 %19141
  %19143 = load double, ptr %19142, align 8, !tbaa !11
  %19144 = call double @llvm.fmuladd.f64(double 0xBC94000000000000, double %19143, double %19135)
  %19145 = load ptr, ptr %7, align 8, !tbaa !9
  %19146 = load i32, ptr %12, align 4, !tbaa !5
  %19147 = load i32, ptr %8, align 4, !tbaa !5
  %19148 = mul nsw i32 12, %19147
  %19149 = add nsw i32 %19146, %19148
  %19150 = sext i32 %19149 to i64
  %19151 = getelementptr inbounds double, ptr %19145, i64 %19150
  %19152 = load double, ptr %19151, align 8, !tbaa !11
  %19153 = call double @llvm.fmuladd.f64(double 0x3C9EBFFFFFFFFFFD, double %19152, double %19144)
  %19154 = load ptr, ptr %7, align 8, !tbaa !9
  %19155 = load i32, ptr %12, align 4, !tbaa !5
  %19156 = load i32, ptr %8, align 4, !tbaa !5
  %19157 = mul nsw i32 13, %19156
  %19158 = add nsw i32 %19155, %19157
  %19159 = sext i32 %19158 to i64
  %19160 = getelementptr inbounds double, ptr %19154, i64 %19159
  %19161 = load double, ptr %19160, align 8, !tbaa !11
  %19162 = call double @llvm.fmuladd.f64(double 0x3C95800000000000, double %19161, double %19153)
  %19163 = load ptr, ptr %7, align 8, !tbaa !9
  %19164 = load i32, ptr %12, align 4, !tbaa !5
  %19165 = load i32, ptr %8, align 4, !tbaa !5
  %19166 = mul nsw i32 14, %19165
  %19167 = add nsw i32 %19164, %19166
  %19168 = sext i32 %19167 to i64
  %19169 = getelementptr inbounds double, ptr %19163, i64 %19168
  %19170 = load double, ptr %19169, align 8, !tbaa !11
  %19171 = call double @llvm.fmuladd.f64(double 0xBC92000000000000, double %19170, double %19162)
  %19172 = load ptr, ptr %7, align 8, !tbaa !9
  %19173 = load i32, ptr %12, align 4, !tbaa !5
  %19174 = load i32, ptr %8, align 4, !tbaa !5
  %19175 = mul nsw i32 15, %19174
  %19176 = add nsw i32 %19173, %19175
  %19177 = sext i32 %19176 to i64
  %19178 = getelementptr inbounds double, ptr %19172, i64 %19177
  %19179 = load double, ptr %19178, align 8, !tbaa !11
  %19180 = call double @llvm.fmuladd.f64(double 0xBC74000000000000, double %19179, double %19171)
  %19181 = load ptr, ptr %7, align 8, !tbaa !9
  %19182 = load i32, ptr %12, align 4, !tbaa !5
  %19183 = load i32, ptr %8, align 4, !tbaa !5
  %19184 = mul nsw i32 16, %19183
  %19185 = add nsw i32 %19182, %19184
  %19186 = sext i32 %19185 to i64
  %19187 = getelementptr inbounds double, ptr %19181, i64 %19186
  %19188 = load double, ptr %19187, align 8, !tbaa !11
  %19189 = call double @llvm.fmuladd.f64(double 0xBCA1800000000000, double %19188, double %19180)
  %19190 = load ptr, ptr %7, align 8, !tbaa !9
  %19191 = load i32, ptr %12, align 4, !tbaa !5
  %19192 = load i32, ptr %8, align 4, !tbaa !5
  %19193 = mul nsw i32 17, %19192
  %19194 = add nsw i32 %19191, %19193
  %19195 = sext i32 %19194 to i64
  %19196 = getelementptr inbounds double, ptr %19190, i64 %19195
  %19197 = load double, ptr %19196, align 8, !tbaa !11
  %19198 = call double @llvm.fmuladd.f64(double 0xBC93800000000000, double %19197, double %19189)
  %19199 = load ptr, ptr %7, align 8, !tbaa !9
  %19200 = load i32, ptr %12, align 4, !tbaa !5
  %19201 = load i32, ptr %8, align 4, !tbaa !5
  %19202 = mul nsw i32 18, %19201
  %19203 = add nsw i32 %19200, %19202
  %19204 = sext i32 %19203 to i64
  %19205 = getelementptr inbounds double, ptr %19199, i64 %19204
  %19206 = load double, ptr %19205, align 8, !tbaa !11
  %19207 = call double @llvm.fmuladd.f64(double 0xBC89FFFFFFFFFFFF, double %19206, double %19198)
  %19208 = load ptr, ptr %7, align 8, !tbaa !9
  %19209 = load i32, ptr %12, align 4, !tbaa !5
  %19210 = load i32, ptr %8, align 4, !tbaa !5
  %19211 = mul nsw i32 19, %19210
  %19212 = add nsw i32 %19209, %19211
  %19213 = sext i32 %19212 to i64
  %19214 = getelementptr inbounds double, ptr %19208, i64 %19213
  %19215 = load double, ptr %19214, align 8, !tbaa !11
  %19216 = call double @llvm.fmuladd.f64(double 0xBC60000000000000, double %19215, double %19207)
  %19217 = load ptr, ptr %7, align 8, !tbaa !9
  %19218 = load i32, ptr %12, align 4, !tbaa !5
  %19219 = load i32, ptr %8, align 4, !tbaa !5
  %19220 = mul nsw i32 20, %19219
  %19221 = add nsw i32 %19218, %19220
  %19222 = sext i32 %19221 to i64
  %19223 = getelementptr inbounds double, ptr %19217, i64 %19222
  %19224 = load double, ptr %19223, align 8, !tbaa !11
  %19225 = call double @llvm.fmuladd.f64(double 0xBCB5FFFFFFFFFFFF, double %19224, double %19216)
  %19226 = load ptr, ptr %7, align 8, !tbaa !9
  %19227 = load i32, ptr %12, align 4, !tbaa !5
  %19228 = load i32, ptr %8, align 4, !tbaa !5
  %19229 = mul nsw i32 21, %19228
  %19230 = add nsw i32 %19227, %19229
  %19231 = sext i32 %19230 to i64
  %19232 = getelementptr inbounds double, ptr %19226, i64 %19231
  %19233 = load double, ptr %19232, align 8, !tbaa !11
  %19234 = call double @llvm.fmuladd.f64(double 0xBC94000000000000, double %19233, double %19225)
  %19235 = load ptr, ptr %7, align 8, !tbaa !9
  %19236 = load i32, ptr %12, align 4, !tbaa !5
  %19237 = load i32, ptr %8, align 4, !tbaa !5
  %19238 = mul nsw i32 22, %19237
  %19239 = add nsw i32 %19236, %19238
  %19240 = sext i32 %19239 to i64
  %19241 = getelementptr inbounds double, ptr %19235, i64 %19240
  %19242 = load double, ptr %19241, align 8, !tbaa !11
  %19243 = call double @llvm.fmuladd.f64(double 0xBCB1200000000001, double %19242, double %19234)
  %19244 = load ptr, ptr %7, align 8, !tbaa !9
  %19245 = load i32, ptr %12, align 4, !tbaa !5
  %19246 = load i32, ptr %8, align 4, !tbaa !5
  %19247 = mul nsw i32 23, %19246
  %19248 = add nsw i32 %19245, %19247
  %19249 = sext i32 %19248 to i64
  %19250 = getelementptr inbounds double, ptr %19244, i64 %19249
  %19251 = load double, ptr %19250, align 8, !tbaa !11
  %19252 = call double @llvm.fmuladd.f64(double 0x3CB5700000000000, double %19251, double %19243)
  %19253 = load ptr, ptr %7, align 8, !tbaa !9
  %19254 = load i32, ptr %12, align 4, !tbaa !5
  %19255 = load i32, ptr %8, align 4, !tbaa !5
  %19256 = mul nsw i32 24, %19255
  %19257 = add nsw i32 %19254, %19256
  %19258 = sext i32 %19257 to i64
  %19259 = getelementptr inbounds double, ptr %19253, i64 %19258
  %19260 = load double, ptr %19259, align 8, !tbaa !11
  %19261 = call double @llvm.fmuladd.f64(double 0x3CA9000000000000, double %19260, double %19252)
  %19262 = load ptr, ptr %7, align 8, !tbaa !9
  %19263 = load i32, ptr %12, align 4, !tbaa !5
  %19264 = load i32, ptr %8, align 4, !tbaa !5
  %19265 = mul nsw i32 25, %19264
  %19266 = add nsw i32 %19263, %19265
  %19267 = sext i32 %19266 to i64
  %19268 = getelementptr inbounds double, ptr %19262, i64 %19267
  %19269 = load double, ptr %19268, align 8, !tbaa !11
  %19270 = call double @llvm.fmuladd.f64(double 0x3CBB3FFFFFFFFFFF, double %19269, double %19261)
  %19271 = load ptr, ptr %7, align 8, !tbaa !9
  %19272 = load i32, ptr %12, align 4, !tbaa !5
  %19273 = load i32, ptr %8, align 4, !tbaa !5
  %19274 = mul nsw i32 26, %19273
  %19275 = add nsw i32 %19272, %19274
  %19276 = sext i32 %19275 to i64
  %19277 = getelementptr inbounds double, ptr %19271, i64 %19276
  %19278 = load double, ptr %19277, align 8, !tbaa !11
  %19279 = call double @llvm.fmuladd.f64(double 0x3CB1200000000001, double %19278, double %19270)
  %19280 = load ptr, ptr %7, align 8, !tbaa !9
  %19281 = load i32, ptr %12, align 4, !tbaa !5
  %19282 = load i32, ptr %8, align 4, !tbaa !5
  %19283 = mul nsw i32 27, %19282
  %19284 = add nsw i32 %19281, %19283
  %19285 = sext i32 %19284 to i64
  %19286 = getelementptr inbounds double, ptr %19280, i64 %19285
  %19287 = load double, ptr %19286, align 8, !tbaa !11
  %19288 = call double @llvm.fmuladd.f64(double 0xBC8F7FFFFFFFFFFF, double %19287, double %19279)
  %19289 = load ptr, ptr %7, align 8, !tbaa !9
  %19290 = load i32, ptr %12, align 4, !tbaa !5
  %19291 = load i32, ptr %8, align 4, !tbaa !5
  %19292 = mul nsw i32 28, %19291
  %19293 = add nsw i32 %19290, %19292
  %19294 = sext i32 %19293 to i64
  %19295 = getelementptr inbounds double, ptr %19289, i64 %19294
  %19296 = load double, ptr %19295, align 8, !tbaa !11
  %19297 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %19296, double %19288)
  %19298 = load ptr, ptr %7, align 8, !tbaa !9
  %19299 = load i32, ptr %12, align 4, !tbaa !5
  %19300 = load i32, ptr %8, align 4, !tbaa !5
  %19301 = mul nsw i32 29, %19300
  %19302 = add nsw i32 %19299, %19301
  %19303 = sext i32 %19302 to i64
  %19304 = getelementptr inbounds double, ptr %19298, i64 %19303
  %19305 = load double, ptr %19304, align 8, !tbaa !11
  %19306 = call double @llvm.fmuladd.f64(double 0x3C60000000000000, double %19305, double %19297)
  %19307 = load ptr, ptr %7, align 8, !tbaa !9
  %19308 = load i32, ptr %12, align 4, !tbaa !5
  %19309 = load i32, ptr %8, align 4, !tbaa !5
  %19310 = mul nsw i32 30, %19309
  %19311 = add nsw i32 %19308, %19310
  %19312 = sext i32 %19311 to i64
  %19313 = getelementptr inbounds double, ptr %19307, i64 %19312
  %19314 = load double, ptr %19313, align 8, !tbaa !11
  %19315 = call double @llvm.fmuladd.f64(double 0xBCC5D00000000000, double %19314, double %19306)
  %19316 = load ptr, ptr %7, align 8, !tbaa !9
  %19317 = load i32, ptr %12, align 4, !tbaa !5
  %19318 = load i32, ptr %8, align 4, !tbaa !5
  %19319 = mul nsw i32 31, %19318
  %19320 = add nsw i32 %19317, %19319
  %19321 = sext i32 %19320 to i64
  %19322 = getelementptr inbounds double, ptr %19316, i64 %19321
  %19323 = load double, ptr %19322, align 8, !tbaa !11
  %19324 = call double @llvm.fmuladd.f64(double 0x3C96000000000000, double %19323, double %19315)
  %19325 = load ptr, ptr %7, align 8, !tbaa !9
  %19326 = load i32, ptr %12, align 4, !tbaa !5
  %19327 = load i32, ptr %8, align 4, !tbaa !5
  %19328 = mul nsw i32 32, %19327
  %19329 = add nsw i32 %19326, %19328
  %19330 = sext i32 %19329 to i64
  %19331 = getelementptr inbounds double, ptr %19325, i64 %19330
  %19332 = load double, ptr %19331, align 8, !tbaa !11
  %19333 = call double @llvm.fmuladd.f64(double 0xBC7F7FFFFFFFFFFF, double %19332, double %19324)
  %19334 = load ptr, ptr %7, align 8, !tbaa !9
  %19335 = load i32, ptr %12, align 4, !tbaa !5
  %19336 = load i32, ptr %8, align 4, !tbaa !5
  %19337 = mul nsw i32 33, %19336
  %19338 = add nsw i32 %19335, %19337
  %19339 = sext i32 %19338 to i64
  %19340 = getelementptr inbounds double, ptr %19334, i64 %19339
  %19341 = load double, ptr %19340, align 8, !tbaa !11
  %19342 = call double @llvm.fmuladd.f64(double 0xBC7B800000000001, double %19341, double %19333)
  %19343 = load ptr, ptr %7, align 8, !tbaa !9
  %19344 = load i32, ptr %12, align 4, !tbaa !5
  %19345 = load i32, ptr %8, align 4, !tbaa !5
  %19346 = mul nsw i32 34, %19345
  %19347 = add nsw i32 %19344, %19346
  %19348 = sext i32 %19347 to i64
  %19349 = getelementptr inbounds double, ptr %19343, i64 %19348
  %19350 = load double, ptr %19349, align 8, !tbaa !11
  %19351 = call double @llvm.fmuladd.f64(double 0x3C9A800000000000, double %19350, double %19342)
  %19352 = load ptr, ptr %7, align 8, !tbaa !9
  %19353 = load i32, ptr %12, align 4, !tbaa !5
  %19354 = load i32, ptr %8, align 4, !tbaa !5
  %19355 = mul nsw i32 35, %19354
  %19356 = add nsw i32 %19353, %19355
  %19357 = sext i32 %19356 to i64
  %19358 = getelementptr inbounds double, ptr %19352, i64 %19357
  %19359 = load double, ptr %19358, align 8, !tbaa !11
  %19360 = call double @llvm.fmuladd.f64(double 0xBC8B000000000000, double %19359, double %19351)
  %19361 = load ptr, ptr %7, align 8, !tbaa !9
  %19362 = load i32, ptr %12, align 4, !tbaa !5
  %19363 = load i32, ptr %8, align 4, !tbaa !5
  %19364 = mul nsw i32 36, %19363
  %19365 = add nsw i32 %19362, %19364
  %19366 = sext i32 %19365 to i64
  %19367 = getelementptr inbounds double, ptr %19361, i64 %19366
  %19368 = load double, ptr %19367, align 8, !tbaa !11
  %19369 = call double @llvm.fmuladd.f64(double 0x3CAC200000000000, double %19368, double %19360)
  %19370 = load ptr, ptr %7, align 8, !tbaa !9
  %19371 = load i32, ptr %12, align 4, !tbaa !5
  %19372 = load i32, ptr %8, align 4, !tbaa !5
  %19373 = mul nsw i32 37, %19372
  %19374 = add nsw i32 %19371, %19373
  %19375 = sext i32 %19374 to i64
  %19376 = getelementptr inbounds double, ptr %19370, i64 %19375
  %19377 = load double, ptr %19376, align 8, !tbaa !11
  %19378 = call double @llvm.fmuladd.f64(double 0x3CB0100000000000, double %19377, double %19369)
  %19379 = load ptr, ptr %7, align 8, !tbaa !9
  %19380 = load i32, ptr %12, align 4, !tbaa !5
  %19381 = load i32, ptr %8, align 4, !tbaa !5
  %19382 = mul nsw i32 38, %19381
  %19383 = add nsw i32 %19380, %19382
  %19384 = sext i32 %19383 to i64
  %19385 = getelementptr inbounds double, ptr %19379, i64 %19384
  %19386 = load double, ptr %19385, align 8, !tbaa !11
  %19387 = call double @llvm.fmuladd.f64(double 0x3C7C000000000000, double %19386, double %19378)
  %19388 = load ptr, ptr %7, align 8, !tbaa !9
  %19389 = load i32, ptr %12, align 4, !tbaa !5
  %19390 = load i32, ptr %8, align 4, !tbaa !5
  %19391 = mul nsw i32 39, %19390
  %19392 = add nsw i32 %19389, %19391
  %19393 = sext i32 %19392 to i64
  %19394 = getelementptr inbounds double, ptr %19388, i64 %19393
  %19395 = load double, ptr %19394, align 8, !tbaa !11
  %19396 = call double @llvm.fmuladd.f64(double 0xBC64000000000000, double %19395, double %19387)
  store double %19396, ptr %11, align 8, !tbaa !11
  %19397 = load double, ptr %11, align 8, !tbaa !11
  %19398 = load ptr, ptr %9, align 8, !tbaa !9
  %19399 = load i32, ptr %12, align 4, !tbaa !5
  %19400 = load i32, ptr %10, align 4, !tbaa !5
  %19401 = mul nsw i32 53, %19400
  %19402 = add nsw i32 %19399, %19401
  %19403 = sext i32 %19402 to i64
  %19404 = getelementptr inbounds double, ptr %19398, i64 %19403
  store double %19397, ptr %19404, align 8, !tbaa !11
  %19405 = load ptr, ptr %7, align 8, !tbaa !9
  %19406 = load i32, ptr %12, align 4, !tbaa !5
  %19407 = load i32, ptr %8, align 4, !tbaa !5
  %19408 = mul nsw i32 0, %19407
  %19409 = add nsw i32 %19406, %19408
  %19410 = sext i32 %19409 to i64
  %19411 = getelementptr inbounds double, ptr %19405, i64 %19410
  %19412 = load double, ptr %19411, align 8, !tbaa !11
  %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 1, %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 = fmul double 0x3FA87D764354852C, %19420
  %19422 = call double @llvm.fmuladd.f64(double 0xBFE333710B32A29C, double %19412, double %19421)
  %19423 = load ptr, ptr %7, align 8, !tbaa !9
  %19424 = load i32, ptr %12, align 4, !tbaa !5
  %19425 = load i32, ptr %8, align 4, !tbaa !5
  %19426 = mul nsw i32 2, %19425
  %19427 = add nsw i32 %19424, %19426
  %19428 = sext i32 %19427 to i64
  %19429 = getelementptr inbounds double, ptr %19423, i64 %19428
  %19430 = load double, ptr %19429, align 8, !tbaa !11
  %19431 = call double @llvm.fmuladd.f64(double 0xBFA352D4DB969BDD, double %19430, double %19422)
  %19432 = load ptr, ptr %7, align 8, !tbaa !9
  %19433 = load i32, ptr %12, align 4, !tbaa !5
  %19434 = load i32, ptr %8, align 4, !tbaa !5
  %19435 = mul nsw i32 3, %19434
  %19436 = add nsw i32 %19433, %19435
  %19437 = sext i32 %19436 to i64
  %19438 = getelementptr inbounds double, ptr %19432, i64 %19437
  %19439 = load double, ptr %19438, align 8, !tbaa !11
  %19440 = call double @llvm.fmuladd.f64(double 0xBFBEED13A9F0D917, double %19439, double %19431)
  %19441 = load ptr, ptr %7, align 8, !tbaa !9
  %19442 = load i32, ptr %12, align 4, !tbaa !5
  %19443 = load i32, ptr %8, align 4, !tbaa !5
  %19444 = mul nsw i32 4, %19443
  %19445 = add nsw i32 %19442, %19444
  %19446 = sext i32 %19445 to i64
  %19447 = getelementptr inbounds double, ptr %19441, i64 %19446
  %19448 = load double, ptr %19447, align 8, !tbaa !11
  %19449 = call double @llvm.fmuladd.f64(double 0x3FC36A9134CD3C6E, double %19448, double %19440)
  %19450 = load ptr, ptr %7, align 8, !tbaa !9
  %19451 = load i32, ptr %12, align 4, !tbaa !5
  %19452 = load i32, ptr %8, align 4, !tbaa !5
  %19453 = mul nsw i32 5, %19452
  %19454 = add nsw i32 %19451, %19453
  %19455 = sext i32 %19454 to i64
  %19456 = getelementptr inbounds double, ptr %19450, i64 %19455
  %19457 = load double, ptr %19456, align 8, !tbaa !11
  %19458 = call double @llvm.fmuladd.f64(double 0x3FD35DAE88CBA63D, double %19457, double %19449)
  %19459 = load ptr, ptr %7, align 8, !tbaa !9
  %19460 = load i32, ptr %12, align 4, !tbaa !5
  %19461 = load i32, ptr %8, align 4, !tbaa !5
  %19462 = mul nsw i32 6, %19461
  %19463 = add nsw i32 %19460, %19462
  %19464 = sext i32 %19463 to i64
  %19465 = getelementptr inbounds double, ptr %19459, i64 %19464
  %19466 = load double, ptr %19465, align 8, !tbaa !11
  %19467 = call double @llvm.fmuladd.f64(double 0x3FC27B05E24EC5ED, double %19466, double %19458)
  %19468 = load ptr, ptr %7, align 8, !tbaa !9
  %19469 = load i32, ptr %12, align 4, !tbaa !5
  %19470 = load i32, ptr %8, align 4, !tbaa !5
  %19471 = mul nsw i32 7, %19470
  %19472 = add nsw i32 %19469, %19471
  %19473 = sext i32 %19472 to i64
  %19474 = getelementptr inbounds double, ptr %19468, i64 %19473
  %19475 = load double, ptr %19474, align 8, !tbaa !11
  %19476 = call double @llvm.fmuladd.f64(double 0x3F9854E0ADA34B6D, double %19475, double %19467)
  %19477 = load ptr, ptr %7, align 8, !tbaa !9
  %19478 = load i32, ptr %12, align 4, !tbaa !5
  %19479 = load i32, ptr %8, align 4, !tbaa !5
  %19480 = mul nsw i32 8, %19479
  %19481 = add nsw i32 %19478, %19480
  %19482 = sext i32 %19481 to i64
  %19483 = getelementptr inbounds double, ptr %19477, i64 %19482
  %19484 = load double, ptr %19483, align 8, !tbaa !11
  %19485 = call double @llvm.fmuladd.f64(double 0xBFD41C0D131D428A, double %19484, double %19476)
  %19486 = load ptr, ptr %7, align 8, !tbaa !9
  %19487 = load i32, ptr %12, align 4, !tbaa !5
  %19488 = load i32, ptr %8, align 4, !tbaa !5
  %19489 = mul nsw i32 9, %19488
  %19490 = add nsw i32 %19487, %19489
  %19491 = sext i32 %19490 to i64
  %19492 = getelementptr inbounds double, ptr %19486, i64 %19491
  %19493 = load double, ptr %19492, align 8, !tbaa !11
  %19494 = call double @llvm.fmuladd.f64(double 0x3FF670C5F1F4C92E, double %19493, double %19485)
  %19495 = load ptr, ptr %7, align 8, !tbaa !9
  %19496 = load i32, ptr %12, align 4, !tbaa !5
  %19497 = load i32, ptr %8, align 4, !tbaa !5
  %19498 = mul nsw i32 10, %19497
  %19499 = add nsw i32 %19496, %19498
  %19500 = sext i32 %19499 to i64
  %19501 = getelementptr inbounds double, ptr %19495, i64 %19500
  %19502 = load double, ptr %19501, align 8, !tbaa !11
  %19503 = call double @llvm.fmuladd.f64(double 0x3CB07FFFFFFFFFFF, double %19502, double %19494)
  %19504 = load ptr, ptr %7, align 8, !tbaa !9
  %19505 = load i32, ptr %12, align 4, !tbaa !5
  %19506 = load i32, ptr %8, align 4, !tbaa !5
  %19507 = mul nsw i32 11, %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 = call double @llvm.fmuladd.f64(double 0x3C84000000000000, double %19511, double %19503)
  %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 12, %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 = call double @llvm.fmuladd.f64(double 0x3CA1C00000000000, double %19520, double %19512)
  %19522 = load ptr, ptr %7, align 8, !tbaa !9
  %19523 = load i32, ptr %12, align 4, !tbaa !5
  %19524 = load i32, ptr %8, align 4, !tbaa !5
  %19525 = mul nsw i32 13, %19524
  %19526 = add nsw i32 %19523, %19525
  %19527 = sext i32 %19526 to i64
  %19528 = getelementptr inbounds double, ptr %19522, i64 %19527
  %19529 = load double, ptr %19528, align 8, !tbaa !11
  %19530 = call double @llvm.fmuladd.f64(double 0x3C8E000000000000, double %19529, double %19521)
  %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 14, %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 0xBCA5000000000000, 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 15, %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 0x3C88000000000000, 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 16, %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 0xBC91000000000000, 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 17, %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 0xBC9DFFFFFFFFFFFE, 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 18, %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 0xBCA9FFFFFFFFFFFE, 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 19, %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 0x3C92000000000000, 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 20, %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 0x3C96000000000000, 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 21, %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 0xBCA5000000000000, 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 22, %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 0xBCAB800000000001, 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 23, %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 0x3CB09FFFFFFFFFFF, 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 24, %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 0xBC78000000000002, 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 25, %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 0x3CB0000000000000, 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 26, %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 0x3C8D000000000001, 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 27, %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 0x3C60000000000000, 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 28, %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 0xBC9C000000000000, 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 29, %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 0x3C9DFFFFFFFFFFFE, 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 30, %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 0xBCBA800000000000, 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 31, %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 0xBC84000000000000, 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 32, %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 0x3C62000000000000, 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 33, %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 0x3C7E800000000001, 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 34, %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 0x3CA0C00000000001, 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 35, %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 0x3C6C000000000000, 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 36, %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 0x3C71000000000000, 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 37, %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 0x3C91C00000000000, 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 39, %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 0x3C9A000000000000, double %19754, double %19746)
  store double %19755, ptr %11, align 8, !tbaa !11
  %19756 = load double, ptr %11, align 8, !tbaa !11
  %19757 = load ptr, ptr %9, align 8, !tbaa !9
  %19758 = load i32, ptr %12, align 4, !tbaa !5
  %19759 = load i32, ptr %10, align 4, !tbaa !5
  %19760 = mul nsw i32 54, %19759
  %19761 = add nsw i32 %19758, %19760
  %19762 = sext i32 %19761 to i64
  %19763 = getelementptr inbounds double, ptr %19757, i64 %19762
  store double %19756, ptr %19763, align 8, !tbaa !11
  %19764 = load ptr, ptr %7, align 8, !tbaa !9
  %19765 = load i32, ptr %12, align 4, !tbaa !5
  %19766 = load i32, ptr %8, align 4, !tbaa !5
  %19767 = mul nsw i32 0, %19766
  %19768 = add nsw i32 %19765, %19767
  %19769 = sext i32 %19768 to i64
  %19770 = getelementptr inbounds double, ptr %19764, i64 %19769
  %19771 = load double, ptr %19770, align 8, !tbaa !11
  %19772 = load ptr, ptr %7, align 8, !tbaa !9
  %19773 = load i32, ptr %12, align 4, !tbaa !5
  %19774 = load i32, ptr %8, align 4, !tbaa !5
  %19775 = mul nsw i32 1, %19774
  %19776 = add nsw i32 %19773, %19775
  %19777 = sext i32 %19776 to i64
  %19778 = getelementptr inbounds double, ptr %19772, i64 %19777
  %19779 = load double, ptr %19778, align 8, !tbaa !11
  %19780 = fmul double 0x3FF4EC1BB3FDC612, %19779
  %19781 = call double @llvm.fmuladd.f64(double 0xBF83152016E0EB78, double %19771, double %19780)
  %19782 = load ptr, ptr %7, align 8, !tbaa !9
  %19783 = load i32, ptr %12, align 4, !tbaa !5
  %19784 = load i32, ptr %8, align 4, !tbaa !5
  %19785 = mul nsw i32 2, %19784
  %19786 = add nsw i32 %19783, %19785
  %19787 = sext i32 %19786 to i64
  %19788 = getelementptr inbounds double, ptr %19782, i64 %19787
  %19789 = load double, ptr %19788, align 8, !tbaa !11
  %19790 = call double @llvm.fmuladd.f64(double 0x3F938CE4890DB341, double %19789, double %19781)
  %19791 = load ptr, ptr %7, align 8, !tbaa !9
  %19792 = load i32, ptr %12, align 4, !tbaa !5
  %19793 = load i32, ptr %8, align 4, !tbaa !5
  %19794 = mul nsw i32 3, %19793
  %19795 = add nsw i32 %19792, %19794
  %19796 = sext i32 %19795 to i64
  %19797 = getelementptr inbounds double, ptr %19791, i64 %19796
  %19798 = load double, ptr %19797, align 8, !tbaa !11
  %19799 = call double @llvm.fmuladd.f64(double 0xBFB5B58B4F03B1B9, double %19798, double %19790)
  %19800 = load ptr, ptr %7, align 8, !tbaa !9
  %19801 = load i32, ptr %12, align 4, !tbaa !5
  %19802 = load i32, ptr %8, align 4, !tbaa !5
  %19803 = mul nsw i32 4, %19802
  %19804 = add nsw i32 %19801, %19803
  %19805 = sext i32 %19804 to i64
  %19806 = getelementptr inbounds double, ptr %19800, i64 %19805
  %19807 = load double, ptr %19806, align 8, !tbaa !11
  %19808 = call double @llvm.fmuladd.f64(double 0xBFB49217631F592E, double %19807, double %19799)
  %19809 = load ptr, ptr %7, align 8, !tbaa !9
  %19810 = load i32, ptr %12, align 4, !tbaa !5
  %19811 = load i32, ptr %8, align 4, !tbaa !5
  %19812 = mul nsw i32 5, %19811
  %19813 = add nsw i32 %19810, %19812
  %19814 = sext i32 %19813 to i64
  %19815 = getelementptr inbounds double, ptr %19809, i64 %19814
  %19816 = load double, ptr %19815, align 8, !tbaa !11
  %19817 = call double @llvm.fmuladd.f64(double 0x3FD417DEBFC17B18, double %19816, double %19808)
  %19818 = load ptr, ptr %7, align 8, !tbaa !9
  %19819 = load i32, ptr %12, align 4, !tbaa !5
  %19820 = load i32, ptr %8, align 4, !tbaa !5
  %19821 = mul nsw i32 6, %19820
  %19822 = add nsw i32 %19819, %19821
  %19823 = sext i32 %19822 to i64
  %19824 = getelementptr inbounds double, ptr %19818, i64 %19823
  %19825 = load double, ptr %19824, align 8, !tbaa !11
  %19826 = call double @llvm.fmuladd.f64(double 0xBF8BDAF699AECFD9, double %19825, double %19817)
  %19827 = load ptr, ptr %7, align 8, !tbaa !9
  %19828 = load i32, ptr %12, align 4, !tbaa !5
  %19829 = load i32, ptr %8, align 4, !tbaa !5
  %19830 = mul nsw i32 7, %19829
  %19831 = add nsw i32 %19828, %19830
  %19832 = sext i32 %19831 to i64
  %19833 = getelementptr inbounds double, ptr %19827, i64 %19832
  %19834 = load double, ptr %19833, align 8, !tbaa !11
  %19835 = call double @llvm.fmuladd.f64(double 0x3F85E50BB681A3A1, double %19834, double %19826)
  %19836 = load ptr, ptr %7, align 8, !tbaa !9
  %19837 = load i32, ptr %12, align 4, !tbaa !5
  %19838 = load i32, ptr %8, align 4, !tbaa !5
  %19839 = mul nsw i32 8, %19838
  %19840 = add nsw i32 %19837, %19839
  %19841 = sext i32 %19840 to i64
  %19842 = getelementptr inbounds double, ptr %19836, i64 %19841
  %19843 = load double, ptr %19842, align 8, !tbaa !11
  %19844 = call double @llvm.fmuladd.f64(double 0xBFE5679E70A6065C, double %19843, double %19835)
  %19845 = load ptr, ptr %7, align 8, !tbaa !9
  %19846 = load i32, ptr %12, align 4, !tbaa !5
  %19847 = load i32, ptr %8, align 4, !tbaa !5
  %19848 = mul nsw i32 9, %19847
  %19849 = add nsw i32 %19846, %19848
  %19850 = sext i32 %19849 to i64
  %19851 = getelementptr inbounds double, ptr %19845, i64 %19850
  %19852 = load double, ptr %19851, align 8, !tbaa !11
  %19853 = call double @llvm.fmuladd.f64(double 0x3FCA50C41AB7A32C, double %19852, double %19844)
  %19854 = load ptr, ptr %7, align 8, !tbaa !9
  %19855 = load i32, ptr %12, align 4, !tbaa !5
  %19856 = load i32, ptr %8, align 4, !tbaa !5
  %19857 = mul nsw i32 10, %19856
  %19858 = add nsw i32 %19855, %19857
  %19859 = sext i32 %19858 to i64
  %19860 = getelementptr inbounds double, ptr %19854, i64 %19859
  %19861 = load double, ptr %19860, align 8, !tbaa !11
  %19862 = call double @llvm.fmuladd.f64(double 0xBCAC000000000000, double %19861, double %19853)
  %19863 = load ptr, ptr %7, align 8, !tbaa !9
  %19864 = load i32, ptr %12, align 4, !tbaa !5
  %19865 = load i32, ptr %8, align 4, !tbaa !5
  %19866 = mul nsw i32 11, %19865
  %19867 = add nsw i32 %19864, %19866
  %19868 = sext i32 %19867 to i64
  %19869 = getelementptr inbounds double, ptr %19863, i64 %19868
  %19870 = load double, ptr %19869, align 8, !tbaa !11
  %19871 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %19870, double %19862)
  %19872 = load ptr, ptr %7, align 8, !tbaa !9
  %19873 = load i32, ptr %12, align 4, !tbaa !5
  %19874 = load i32, ptr %8, align 4, !tbaa !5
  %19875 = mul nsw i32 12, %19874
  %19876 = add nsw i32 %19873, %19875
  %19877 = sext i32 %19876 to i64
  %19878 = getelementptr inbounds double, ptr %19872, i64 %19877
  %19879 = load double, ptr %19878, align 8, !tbaa !11
  %19880 = call double @llvm.fmuladd.f64(double 0x3C70000000000001, double %19879, double %19871)
  %19881 = load ptr, ptr %7, align 8, !tbaa !9
  %19882 = load i32, ptr %12, align 4, !tbaa !5
  %19883 = load i32, ptr %8, align 4, !tbaa !5
  %19884 = mul nsw i32 13, %19883
  %19885 = add nsw i32 %19882, %19884
  %19886 = sext i32 %19885 to i64
  %19887 = getelementptr inbounds double, ptr %19881, i64 %19886
  %19888 = load double, ptr %19887, align 8, !tbaa !11
  %19889 = call double @llvm.fmuladd.f64(double 0xBC86000000000001, double %19888, double %19880)
  %19890 = load ptr, ptr %7, align 8, !tbaa !9
  %19891 = load i32, ptr %12, align 4, !tbaa !5
  %19892 = load i32, ptr %8, align 4, !tbaa !5
  %19893 = mul nsw i32 14, %19892
  %19894 = add nsw i32 %19891, %19893
  %19895 = sext i32 %19894 to i64
  %19896 = getelementptr inbounds double, ptr %19890, i64 %19895
  %19897 = load double, ptr %19896, align 8, !tbaa !11
  %19898 = call double @llvm.fmuladd.f64(double 0xBCAC000000000000, double %19897, double %19889)
  %19899 = load ptr, ptr %7, align 8, !tbaa !9
  %19900 = load i32, ptr %12, align 4, !tbaa !5
  %19901 = load i32, ptr %8, align 4, !tbaa !5
  %19902 = mul nsw i32 16, %19901
  %19903 = add nsw i32 %19900, %19902
  %19904 = sext i32 %19903 to i64
  %19905 = getelementptr inbounds double, ptr %19899, i64 %19904
  %19906 = load double, ptr %19905, align 8, !tbaa !11
  %19907 = call double @llvm.fmuladd.f64(double 0x3CAC000000000000, double %19906, double %19898)
  %19908 = load ptr, ptr %7, align 8, !tbaa !9
  %19909 = load i32, ptr %12, align 4, !tbaa !5
  %19910 = load i32, ptr %8, align 4, !tbaa !5
  %19911 = mul nsw i32 17, %19910
  %19912 = add nsw i32 %19909, %19911
  %19913 = sext i32 %19912 to i64
  %19914 = getelementptr inbounds double, ptr %19908, i64 %19913
  %19915 = load double, ptr %19914, align 8, !tbaa !11
  %19916 = call double @llvm.fmuladd.f64(double 0xBC60000000000000, double %19915, double %19907)
  %19917 = load ptr, ptr %7, align 8, !tbaa !9
  %19918 = load i32, ptr %12, align 4, !tbaa !5
  %19919 = load i32, ptr %8, align 4, !tbaa !5
  %19920 = mul nsw i32 18, %19919
  %19921 = add nsw i32 %19918, %19920
  %19922 = sext i32 %19921 to i64
  %19923 = getelementptr inbounds double, ptr %19917, i64 %19922
  %19924 = load double, ptr %19923, align 8, !tbaa !11
  %19925 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %19924, double %19916)
  %19926 = load ptr, ptr %7, align 8, !tbaa !9
  %19927 = load i32, ptr %12, align 4, !tbaa !5
  %19928 = load i32, ptr %8, align 4, !tbaa !5
  %19929 = mul nsw i32 19, %19928
  %19930 = add nsw i32 %19927, %19929
  %19931 = sext i32 %19930 to i64
  %19932 = getelementptr inbounds double, ptr %19926, i64 %19931
  %19933 = load double, ptr %19932, align 8, !tbaa !11
  %19934 = call double @llvm.fmuladd.f64(double 0xBC98000000000000, double %19933, double %19925)
  %19935 = load ptr, ptr %7, align 8, !tbaa !9
  %19936 = load i32, ptr %12, align 4, !tbaa !5
  %19937 = load i32, ptr %8, align 4, !tbaa !5
  %19938 = mul nsw i32 20, %19937
  %19939 = add nsw i32 %19936, %19938
  %19940 = sext i32 %19939 to i64
  %19941 = getelementptr inbounds double, ptr %19935, i64 %19940
  %19942 = load double, ptr %19941, align 8, !tbaa !11
  %19943 = call double @llvm.fmuladd.f64(double 0xBC98000000000000, double %19942, double %19934)
  %19944 = load ptr, ptr %7, align 8, !tbaa !9
  %19945 = load i32, ptr %12, align 4, !tbaa !5
  %19946 = load i32, ptr %8, align 4, !tbaa !5
  %19947 = mul nsw i32 21, %19946
  %19948 = add nsw i32 %19945, %19947
  %19949 = sext i32 %19948 to i64
  %19950 = getelementptr inbounds double, ptr %19944, i64 %19949
  %19951 = load double, ptr %19950, align 8, !tbaa !11
  %19952 = call double @llvm.fmuladd.f64(double 0x3CA0000000000002, double %19951, double %19943)
  %19953 = load ptr, ptr %7, align 8, !tbaa !9
  %19954 = load i32, ptr %12, align 4, !tbaa !5
  %19955 = load i32, ptr %8, align 4, !tbaa !5
  %19956 = mul nsw i32 22, %19955
  %19957 = add nsw i32 %19954, %19956
  %19958 = sext i32 %19957 to i64
  %19959 = getelementptr inbounds double, ptr %19953, i64 %19958
  %19960 = load double, ptr %19959, align 8, !tbaa !11
  %19961 = call double @llvm.fmuladd.f64(double 0x3C7FFFFFFFFFFFFF, double %19960, double %19952)
  %19962 = load ptr, ptr %7, align 8, !tbaa !9
  %19963 = load i32, ptr %12, align 4, !tbaa !5
  %19964 = load i32, ptr %8, align 4, !tbaa !5
  %19965 = mul nsw i32 23, %19964
  %19966 = add nsw i32 %19963, %19965
  %19967 = sext i32 %19966 to i64
  %19968 = getelementptr inbounds double, ptr %19962, i64 %19967
  %19969 = load double, ptr %19968, align 8, !tbaa !11
  %19970 = call double @llvm.fmuladd.f64(double 0x3C74000000000000, double %19969, double %19961)
  %19971 = load ptr, ptr %7, align 8, !tbaa !9
  %19972 = load i32, ptr %12, align 4, !tbaa !5
  %19973 = load i32, ptr %8, align 4, !tbaa !5
  %19974 = mul nsw i32 24, %19973
  %19975 = add nsw i32 %19972, %19974
  %19976 = sext i32 %19975 to i64
  %19977 = getelementptr inbounds double, ptr %19971, i64 %19976
  %19978 = load double, ptr %19977, align 8, !tbaa !11
  %19979 = call double @llvm.fmuladd.f64(double 0xBCA5FFFFFFFFFFFF, double %19978, double %19970)
  %19980 = load ptr, ptr %7, align 8, !tbaa !9
  %19981 = load i32, ptr %12, align 4, !tbaa !5
  %19982 = load i32, ptr %8, align 4, !tbaa !5
  %19983 = mul nsw i32 25, %19982
  %19984 = add nsw i32 %19981, %19983
  %19985 = sext i32 %19984 to i64
  %19986 = getelementptr inbounds double, ptr %19980, i64 %19985
  %19987 = load double, ptr %19986, align 8, !tbaa !11
  %19988 = call double @llvm.fmuladd.f64(double 0x3C94000000000000, double %19987, double %19979)
  %19989 = load ptr, ptr %7, align 8, !tbaa !9
  %19990 = load i32, ptr %12, align 4, !tbaa !5
  %19991 = load i32, ptr %8, align 4, !tbaa !5
  %19992 = mul nsw i32 26, %19991
  %19993 = add nsw i32 %19990, %19992
  %19994 = sext i32 %19993 to i64
  %19995 = getelementptr inbounds double, ptr %19989, i64 %19994
  %19996 = load double, ptr %19995, align 8, !tbaa !11
  %19997 = call double @llvm.fmuladd.f64(double 0xBC84000000000000, double %19996, double %19988)
  %19998 = load ptr, ptr %7, align 8, !tbaa !9
  %19999 = load i32, ptr %12, align 4, !tbaa !5
  %20000 = load i32, ptr %8, align 4, !tbaa !5
  %20001 = mul nsw i32 27, %20000
  %20002 = add nsw i32 %19999, %20001
  %20003 = sext i32 %20002 to i64
  %20004 = getelementptr inbounds double, ptr %19998, i64 %20003
  %20005 = load double, ptr %20004, align 8, !tbaa !11
  %20006 = call double @llvm.fmuladd.f64(double 0x3CB4800000000001, double %20005, double %19997)
  %20007 = load ptr, ptr %7, align 8, !tbaa !9
  %20008 = load i32, ptr %12, align 4, !tbaa !5
  %20009 = load i32, ptr %8, align 4, !tbaa !5
  %20010 = mul nsw i32 28, %20009
  %20011 = add nsw i32 %20008, %20010
  %20012 = sext i32 %20011 to i64
  %20013 = getelementptr inbounds double, ptr %20007, i64 %20012
  %20014 = load double, ptr %20013, align 8, !tbaa !11
  %20015 = call double @llvm.fmuladd.f64(double 0xBCA0000000000002, double %20014, double %20006)
  %20016 = load ptr, ptr %7, align 8, !tbaa !9
  %20017 = load i32, ptr %12, align 4, !tbaa !5
  %20018 = load i32, ptr %8, align 4, !tbaa !5
  %20019 = mul nsw i32 29, %20018
  %20020 = add nsw i32 %20017, %20019
  %20021 = sext i32 %20020 to i64
  %20022 = getelementptr inbounds double, ptr %20016, i64 %20021
  %20023 = load double, ptr %20022, align 8, !tbaa !11
  %20024 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %20023, double %20015)
  %20025 = load ptr, ptr %7, align 8, !tbaa !9
  %20026 = load i32, ptr %12, align 4, !tbaa !5
  %20027 = load i32, ptr %8, align 4, !tbaa !5
  %20028 = mul nsw i32 30, %20027
  %20029 = add nsw i32 %20026, %20028
  %20030 = sext i32 %20029 to i64
  %20031 = getelementptr inbounds double, ptr %20025, i64 %20030
  %20032 = load double, ptr %20031, align 8, !tbaa !11
  %20033 = call double @llvm.fmuladd.f64(double 0xBC94000000000000, double %20032, double %20024)
  %20034 = load ptr, ptr %7, align 8, !tbaa !9
  %20035 = load i32, ptr %12, align 4, !tbaa !5
  %20036 = load i32, ptr %8, align 4, !tbaa !5
  %20037 = mul nsw i32 31, %20036
  %20038 = add nsw i32 %20035, %20037
  %20039 = sext i32 %20038 to i64
  %20040 = getelementptr inbounds double, ptr %20034, i64 %20039
  %20041 = load double, ptr %20040, align 8, !tbaa !11
  %20042 = call double @llvm.fmuladd.f64(double 0xBC94000000000000, double %20041, double %20033)
  %20043 = load ptr, ptr %7, align 8, !tbaa !9
  %20044 = load i32, ptr %12, align 4, !tbaa !5
  %20045 = load i32, ptr %8, align 4, !tbaa !5
  %20046 = mul nsw i32 32, %20045
  %20047 = add nsw i32 %20044, %20046
  %20048 = sext i32 %20047 to i64
  %20049 = getelementptr inbounds double, ptr %20043, i64 %20048
  %20050 = load double, ptr %20049, align 8, !tbaa !11
  %20051 = call double @llvm.fmuladd.f64(double 0x3C92000000000000, double %20050, double %20042)
  %20052 = load ptr, ptr %7, align 8, !tbaa !9
  %20053 = load i32, ptr %12, align 4, !tbaa !5
  %20054 = load i32, ptr %8, align 4, !tbaa !5
  %20055 = mul nsw i32 33, %20054
  %20056 = add nsw i32 %20053, %20055
  %20057 = sext i32 %20056 to i64
  %20058 = getelementptr inbounds double, ptr %20052, i64 %20057
  %20059 = load double, ptr %20058, align 8, !tbaa !11
  %20060 = call double @llvm.fmuladd.f64(double 0x3CA2000000000000, double %20059, double %20051)
  %20061 = load ptr, ptr %7, align 8, !tbaa !9
  %20062 = load i32, ptr %12, align 4, !tbaa !5
  %20063 = load i32, ptr %8, align 4, !tbaa !5
  %20064 = mul nsw i32 34, %20063
  %20065 = add nsw i32 %20062, %20064
  %20066 = sext i32 %20065 to i64
  %20067 = getelementptr inbounds double, ptr %20061, i64 %20066
  %20068 = load double, ptr %20067, align 8, !tbaa !11
  %20069 = call double @llvm.fmuladd.f64(double 0xBC98000000000000, double %20068, double %20060)
  %20070 = load ptr, ptr %7, align 8, !tbaa !9
  %20071 = load i32, ptr %12, align 4, !tbaa !5
  %20072 = load i32, ptr %8, align 4, !tbaa !5
  %20073 = mul nsw i32 35, %20072
  %20074 = add nsw i32 %20071, %20073
  %20075 = sext i32 %20074 to i64
  %20076 = getelementptr inbounds double, ptr %20070, i64 %20075
  %20077 = load double, ptr %20076, align 8, !tbaa !11
  %20078 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %20077, double %20069)
  %20079 = load ptr, ptr %7, align 8, !tbaa !9
  %20080 = load i32, ptr %12, align 4, !tbaa !5
  %20081 = load i32, ptr %8, align 4, !tbaa !5
  %20082 = mul nsw i32 36, %20081
  %20083 = add nsw i32 %20080, %20082
  %20084 = sext i32 %20083 to i64
  %20085 = getelementptr inbounds double, ptr %20079, i64 %20084
  %20086 = load double, ptr %20085, align 8, !tbaa !11
  %20087 = call double @llvm.fmuladd.f64(double 0x3C74000000000000, double %20086, double %20078)
  %20088 = load ptr, ptr %7, align 8, !tbaa !9
  %20089 = load i32, ptr %12, align 4, !tbaa !5
  %20090 = load i32, ptr %8, align 4, !tbaa !5
  %20091 = mul nsw i32 37, %20090
  %20092 = add nsw i32 %20089, %20091
  %20093 = sext i32 %20092 to i64
  %20094 = getelementptr inbounds double, ptr %20088, i64 %20093
  %20095 = load double, ptr %20094, align 8, !tbaa !11
  %20096 = call double @llvm.fmuladd.f64(double 0xBC84000000000000, double %20095, double %20087)
  %20097 = load ptr, ptr %7, align 8, !tbaa !9
  %20098 = load i32, ptr %12, align 4, !tbaa !5
  %20099 = load i32, ptr %8, align 4, !tbaa !5
  %20100 = mul nsw i32 38, %20099
  %20101 = add nsw i32 %20098, %20100
  %20102 = sext i32 %20101 to i64
  %20103 = getelementptr inbounds double, ptr %20097, i64 %20102
  %20104 = load double, ptr %20103, align 8, !tbaa !11
  %20105 = call double @llvm.fmuladd.f64(double 0x3C7FFFFFFFFFFFFF, double %20104, double %20096)
  %20106 = load ptr, ptr %7, align 8, !tbaa !9
  %20107 = load i32, ptr %12, align 4, !tbaa !5
  %20108 = load i32, ptr %8, align 4, !tbaa !5
  %20109 = mul nsw i32 39, %20108
  %20110 = add nsw i32 %20107, %20109
  %20111 = sext i32 %20110 to i64
  %20112 = getelementptr inbounds double, ptr %20106, i64 %20111
  %20113 = load double, ptr %20112, align 8, !tbaa !11
  %20114 = call double @llvm.fmuladd.f64(double 0xBC88000000000000, double %20113, double %20105)
  store double %20114, ptr %11, align 8, !tbaa !11
  %20115 = load double, ptr %11, align 8, !tbaa !11
  %20116 = load ptr, ptr %9, align 8, !tbaa !9
  %20117 = load i32, ptr %12, align 4, !tbaa !5
  %20118 = load i32, ptr %10, align 4, !tbaa !5
  %20119 = mul nsw i32 55, %20118
  %20120 = add nsw i32 %20117, %20119
  %20121 = sext i32 %20120 to i64
  %20122 = getelementptr inbounds double, ptr %20116, i64 %20121
  store double %20115, ptr %20122, align 8, !tbaa !11
  %20123 = load ptr, ptr %7, align 8, !tbaa !9
  %20124 = load i32, ptr %12, align 4, !tbaa !5
  %20125 = load i32, ptr %8, align 4, !tbaa !5
  %20126 = mul nsw i32 0, %20125
  %20127 = add nsw i32 %20124, %20126
  %20128 = sext i32 %20127 to i64
  %20129 = getelementptr inbounds double, ptr %20123, i64 %20128
  %20130 = load double, ptr %20129, align 8, !tbaa !11
  %20131 = load ptr, ptr %7, align 8, !tbaa !9
  %20132 = load i32, ptr %12, align 4, !tbaa !5
  %20133 = load i32, ptr %8, align 4, !tbaa !5
  %20134 = mul nsw i32 1, %20133
  %20135 = add nsw i32 %20132, %20134
  %20136 = sext i32 %20135 to i64
  %20137 = getelementptr inbounds double, ptr %20131, i64 %20136
  %20138 = load double, ptr %20137, align 8, !tbaa !11
  %20139 = fmul double 0xBCAD3FFFFFFFFFFF, %20138
  %20140 = call double @llvm.fmuladd.f64(double 0xBCCAC00000000000, double %20130, double %20139)
  %20141 = load ptr, ptr %7, align 8, !tbaa !9
  %20142 = load i32, ptr %12, align 4, !tbaa !5
  %20143 = load i32, ptr %8, align 4, !tbaa !5
  %20144 = mul nsw i32 2, %20143
  %20145 = add nsw i32 %20142, %20144
  %20146 = sext i32 %20145 to i64
  %20147 = getelementptr inbounds double, ptr %20141, i64 %20146
  %20148 = load double, ptr %20147, align 8, !tbaa !11
  %20149 = call double @llvm.fmuladd.f64(double 0x3CC4880000000000, double %20148, double %20140)
  %20150 = load ptr, ptr %7, align 8, !tbaa !9
  %20151 = load i32, ptr %12, align 4, !tbaa !5
  %20152 = load i32, ptr %8, align 4, !tbaa !5
  %20153 = mul nsw i32 3, %20152
  %20154 = add nsw i32 %20151, %20153
  %20155 = sext i32 %20154 to i64
  %20156 = getelementptr inbounds double, ptr %20150, i64 %20155
  %20157 = load double, ptr %20156, align 8, !tbaa !11
  %20158 = call double @llvm.fmuladd.f64(double 0xBC9C000000000000, double %20157, double %20149)
  %20159 = load ptr, ptr %7, align 8, !tbaa !9
  %20160 = load i32, ptr %12, align 4, !tbaa !5
  %20161 = load i32, ptr %8, align 4, !tbaa !5
  %20162 = mul nsw i32 4, %20161
  %20163 = add nsw i32 %20160, %20162
  %20164 = sext i32 %20163 to i64
  %20165 = getelementptr inbounds double, ptr %20159, i64 %20164
  %20166 = load double, ptr %20165, align 8, !tbaa !11
  %20167 = call double @llvm.fmuladd.f64(double 0x3CA7200000000002, double %20166, double %20158)
  %20168 = load ptr, ptr %7, align 8, !tbaa !9
  %20169 = load i32, ptr %12, align 4, !tbaa !5
  %20170 = load i32, ptr %8, align 4, !tbaa !5
  %20171 = mul nsw i32 5, %20170
  %20172 = add nsw i32 %20169, %20171
  %20173 = sext i32 %20172 to i64
  %20174 = getelementptr inbounds double, ptr %20168, i64 %20173
  %20175 = load double, ptr %20174, align 8, !tbaa !11
  %20176 = call double @llvm.fmuladd.f64(double 0xBC89FFFFFFFFFFFF, double %20175, double %20167)
  %20177 = load ptr, ptr %7, align 8, !tbaa !9
  %20178 = load i32, ptr %12, align 4, !tbaa !5
  %20179 = load i32, ptr %8, align 4, !tbaa !5
  %20180 = mul nsw i32 6, %20179
  %20181 = add nsw i32 %20178, %20180
  %20182 = sext i32 %20181 to i64
  %20183 = getelementptr inbounds double, ptr %20177, i64 %20182
  %20184 = load double, ptr %20183, align 8, !tbaa !11
  %20185 = call double @llvm.fmuladd.f64(double 0xBC9A500000000000, double %20184, double %20176)
  %20186 = load ptr, ptr %7, align 8, !tbaa !9
  %20187 = load i32, ptr %12, align 4, !tbaa !5
  %20188 = load i32, ptr %8, align 4, !tbaa !5
  %20189 = mul nsw i32 7, %20188
  %20190 = add nsw i32 %20187, %20189
  %20191 = sext i32 %20190 to i64
  %20192 = getelementptr inbounds double, ptr %20186, i64 %20191
  %20193 = load double, ptr %20192, align 8, !tbaa !11
  %20194 = call double @llvm.fmuladd.f64(double 0x3C8BA00000000001, double %20193, double %20185)
  %20195 = load ptr, ptr %7, align 8, !tbaa !9
  %20196 = load i32, ptr %12, align 4, !tbaa !5
  %20197 = load i32, ptr %8, align 4, !tbaa !5
  %20198 = mul nsw i32 8, %20197
  %20199 = add nsw i32 %20196, %20198
  %20200 = sext i32 %20199 to i64
  %20201 = getelementptr inbounds double, ptr %20195, i64 %20200
  %20202 = load double, ptr %20201, align 8, !tbaa !11
  %20203 = call double @llvm.fmuladd.f64(double 0xBC9C800000000000, double %20202, double %20194)
  %20204 = load ptr, ptr %7, align 8, !tbaa !9
  %20205 = load i32, ptr %12, align 4, !tbaa !5
  %20206 = load i32, ptr %8, align 4, !tbaa !5
  %20207 = mul nsw i32 9, %20206
  %20208 = add nsw i32 %20205, %20207
  %20209 = sext i32 %20208 to i64
  %20210 = getelementptr inbounds double, ptr %20204, i64 %20209
  %20211 = load double, ptr %20210, align 8, !tbaa !11
  %20212 = call double @llvm.fmuladd.f64(double 0xBC70000000000001, double %20211, double %20203)
  %20213 = load ptr, ptr %7, align 8, !tbaa !9
  %20214 = load i32, ptr %12, align 4, !tbaa !5
  %20215 = load i32, ptr %8, align 4, !tbaa !5
  %20216 = mul nsw i32 10, %20215
  %20217 = add nsw i32 %20214, %20216
  %20218 = sext i32 %20217 to i64
  %20219 = getelementptr inbounds double, ptr %20213, i64 %20218
  %20220 = load double, ptr %20219, align 8, !tbaa !11
  %20221 = call double @llvm.fmuladd.f64(double 0xBF83152016E0EA5E, double %20220, double %20212)
  %20222 = load ptr, ptr %7, align 8, !tbaa !9
  %20223 = load i32, ptr %12, align 4, !tbaa !5
  %20224 = load i32, ptr %8, align 4, !tbaa !5
  %20225 = mul nsw i32 11, %20224
  %20226 = add nsw i32 %20223, %20225
  %20227 = sext i32 %20226 to i64
  %20228 = getelementptr inbounds double, ptr %20222, i64 %20227
  %20229 = load double, ptr %20228, align 8, !tbaa !11
  %20230 = call double @llvm.fmuladd.f64(double 0x3F938CE4890DB33B, double %20229, double %20221)
  %20231 = load ptr, ptr %7, align 8, !tbaa !9
  %20232 = load i32, ptr %12, align 4, !tbaa !5
  %20233 = load i32, ptr %8, align 4, !tbaa !5
  %20234 = mul nsw i32 12, %20233
  %20235 = add nsw i32 %20232, %20234
  %20236 = sext i32 %20235 to i64
  %20237 = getelementptr inbounds double, ptr %20231, i64 %20236
  %20238 = load double, ptr %20237, align 8, !tbaa !11
  %20239 = call double @llvm.fmuladd.f64(double 0x3FF4EC1BB3FDC61B, double %20238, double %20230)
  %20240 = load ptr, ptr %7, align 8, !tbaa !9
  %20241 = load i32, ptr %12, align 4, !tbaa !5
  %20242 = load i32, ptr %8, align 4, !tbaa !5
  %20243 = mul nsw i32 13, %20242
  %20244 = add nsw i32 %20241, %20243
  %20245 = sext i32 %20244 to i64
  %20246 = getelementptr inbounds double, ptr %20240, i64 %20245
  %20247 = load double, ptr %20246, align 8, !tbaa !11
  %20248 = call double @llvm.fmuladd.f64(double 0xBFB5B58B4F03B1B6, double %20247, double %20239)
  %20249 = load ptr, ptr %7, align 8, !tbaa !9
  %20250 = load i32, ptr %12, align 4, !tbaa !5
  %20251 = load i32, ptr %8, align 4, !tbaa !5
  %20252 = mul nsw i32 14, %20251
  %20253 = add nsw i32 %20250, %20252
  %20254 = sext i32 %20253 to i64
  %20255 = getelementptr inbounds double, ptr %20249, i64 %20254
  %20256 = load double, ptr %20255, align 8, !tbaa !11
  %20257 = call double @llvm.fmuladd.f64(double 0x3FCA50C41AB7A310, double %20256, double %20248)
  %20258 = load ptr, ptr %7, align 8, !tbaa !9
  %20259 = load i32, ptr %12, align 4, !tbaa !5
  %20260 = load i32, ptr %8, align 4, !tbaa !5
  %20261 = mul nsw i32 15, %20260
  %20262 = add nsw i32 %20259, %20261
  %20263 = sext i32 %20262 to i64
  %20264 = getelementptr inbounds double, ptr %20258, i64 %20263
  %20265 = load double, ptr %20264, align 8, !tbaa !11
  %20266 = call double @llvm.fmuladd.f64(double 0xBF8BDAF699AED080, double %20265, double %20257)
  %20267 = load ptr, ptr %7, align 8, !tbaa !9
  %20268 = load i32, ptr %12, align 4, !tbaa !5
  %20269 = load i32, ptr %8, align 4, !tbaa !5
  %20270 = mul nsw i32 16, %20269
  %20271 = add nsw i32 %20268, %20270
  %20272 = sext i32 %20271 to i64
  %20273 = getelementptr inbounds double, ptr %20267, i64 %20272
  %20274 = load double, ptr %20273, align 8, !tbaa !11
  %20275 = call double @llvm.fmuladd.f64(double 0x3FD417DEBFC17B27, double %20274, double %20266)
  %20276 = load ptr, ptr %7, align 8, !tbaa !9
  %20277 = load i32, ptr %12, align 4, !tbaa !5
  %20278 = load i32, ptr %8, align 4, !tbaa !5
  %20279 = mul nsw i32 17, %20278
  %20280 = add nsw i32 %20277, %20279
  %20281 = sext i32 %20280 to i64
  %20282 = getelementptr inbounds double, ptr %20276, i64 %20281
  %20283 = load double, ptr %20282, align 8, !tbaa !11
  %20284 = call double @llvm.fmuladd.f64(double 0xBFE5679E70A60666, double %20283, double %20275)
  %20285 = load ptr, ptr %7, align 8, !tbaa !9
  %20286 = load i32, ptr %12, align 4, !tbaa !5
  %20287 = load i32, ptr %8, align 4, !tbaa !5
  %20288 = mul nsw i32 18, %20287
  %20289 = add nsw i32 %20286, %20288
  %20290 = sext i32 %20289 to i64
  %20291 = getelementptr inbounds double, ptr %20285, i64 %20290
  %20292 = load double, ptr %20291, align 8, !tbaa !11
  %20293 = call double @llvm.fmuladd.f64(double 0x3F85E50BB681A420, double %20292, double %20284)
  %20294 = load ptr, ptr %7, align 8, !tbaa !9
  %20295 = load i32, ptr %12, align 4, !tbaa !5
  %20296 = load i32, ptr %8, align 4, !tbaa !5
  %20297 = mul nsw i32 19, %20296
  %20298 = add nsw i32 %20295, %20297
  %20299 = sext i32 %20298 to i64
  %20300 = getelementptr inbounds double, ptr %20294, i64 %20299
  %20301 = load double, ptr %20300, align 8, !tbaa !11
  %20302 = call double @llvm.fmuladd.f64(double 0xBFB49217631F5956, double %20301, double %20293)
  %20303 = load ptr, ptr %7, align 8, !tbaa !9
  %20304 = load i32, ptr %12, align 4, !tbaa !5
  %20305 = load i32, ptr %8, align 4, !tbaa !5
  %20306 = mul nsw i32 20, %20305
  %20307 = add nsw i32 %20304, %20306
  %20308 = sext i32 %20307 to i64
  %20309 = getelementptr inbounds double, ptr %20303, i64 %20308
  %20310 = load double, ptr %20309, align 8, !tbaa !11
  %20311 = call double @llvm.fmuladd.f64(double 0xBCBE400000000000, double %20310, double %20302)
  %20312 = load ptr, ptr %7, align 8, !tbaa !9
  %20313 = load i32, ptr %12, align 4, !tbaa !5
  %20314 = load i32, ptr %8, align 4, !tbaa !5
  %20315 = mul nsw i32 21, %20314
  %20316 = add nsw i32 %20313, %20315
  %20317 = sext i32 %20316 to i64
  %20318 = getelementptr inbounds double, ptr %20312, i64 %20317
  %20319 = load double, ptr %20318, align 8, !tbaa !11
  %20320 = call double @llvm.fmuladd.f64(double 0xBCA63FFFFFFFFFFF, double %20319, double %20311)
  %20321 = load ptr, ptr %7, align 8, !tbaa !9
  %20322 = load i32, ptr %12, align 4, !tbaa !5
  %20323 = load i32, ptr %8, align 4, !tbaa !5
  %20324 = mul nsw i32 22, %20323
  %20325 = add nsw i32 %20322, %20324
  %20326 = sext i32 %20325 to i64
  %20327 = getelementptr inbounds double, ptr %20321, i64 %20326
  %20328 = load double, ptr %20327, align 8, !tbaa !11
  %20329 = call double @llvm.fmuladd.f64(double 0xBC98C00000000000, double %20328, double %20320)
  %20330 = load ptr, ptr %7, align 8, !tbaa !9
  %20331 = load i32, ptr %12, align 4, !tbaa !5
  %20332 = load i32, ptr %8, align 4, !tbaa !5
  %20333 = mul nsw i32 23, %20332
  %20334 = add nsw i32 %20331, %20333
  %20335 = sext i32 %20334 to i64
  %20336 = getelementptr inbounds double, ptr %20330, i64 %20335
  %20337 = load double, ptr %20336, align 8, !tbaa !11
  %20338 = call double @llvm.fmuladd.f64(double 0x3CBF080000000001, double %20337, double %20329)
  %20339 = load ptr, ptr %7, align 8, !tbaa !9
  %20340 = load i32, ptr %12, align 4, !tbaa !5
  %20341 = load i32, ptr %8, align 4, !tbaa !5
  %20342 = mul nsw i32 24, %20341
  %20343 = add nsw i32 %20340, %20342
  %20344 = sext i32 %20343 to i64
  %20345 = getelementptr inbounds double, ptr %20339, i64 %20344
  %20346 = load double, ptr %20345, align 8, !tbaa !11
  %20347 = call double @llvm.fmuladd.f64(double 0x3CC1A00000000000, double %20346, double %20338)
  %20348 = load ptr, ptr %7, align 8, !tbaa !9
  %20349 = load i32, ptr %12, align 4, !tbaa !5
  %20350 = load i32, ptr %8, align 4, !tbaa !5
  %20351 = mul nsw i32 25, %20350
  %20352 = add nsw i32 %20349, %20351
  %20353 = sext i32 %20352 to i64
  %20354 = getelementptr inbounds double, ptr %20348, i64 %20353
  %20355 = load double, ptr %20354, align 8, !tbaa !11
  %20356 = call double @llvm.fmuladd.f64(double 0x3C96800000000000, double %20355, double %20347)
  %20357 = load ptr, ptr %7, align 8, !tbaa !9
  %20358 = load i32, ptr %12, align 4, !tbaa !5
  %20359 = load i32, ptr %8, align 4, !tbaa !5
  %20360 = mul nsw i32 26, %20359
  %20361 = add nsw i32 %20358, %20360
  %20362 = sext i32 %20361 to i64
  %20363 = getelementptr inbounds double, ptr %20357, i64 %20362
  %20364 = load double, ptr %20363, align 8, !tbaa !11
  %20365 = call double @llvm.fmuladd.f64(double 0x3C8C000000000000, double %20364, double %20356)
  %20366 = load ptr, ptr %7, align 8, !tbaa !9
  %20367 = load i32, ptr %12, align 4, !tbaa !5
  %20368 = load i32, ptr %8, align 4, !tbaa !5
  %20369 = mul nsw i32 27, %20368
  %20370 = add nsw i32 %20367, %20369
  %20371 = sext i32 %20370 to i64
  %20372 = getelementptr inbounds double, ptr %20366, i64 %20371
  %20373 = load double, ptr %20372, align 8, !tbaa !11
  %20374 = call double @llvm.fmuladd.f64(double 0xBCC6880000000000, double %20373, double %20365)
  %20375 = load ptr, ptr %7, align 8, !tbaa !9
  %20376 = load i32, ptr %12, align 4, !tbaa !5
  %20377 = load i32, ptr %8, align 4, !tbaa !5
  %20378 = mul nsw i32 28, %20377
  %20379 = add nsw i32 %20376, %20378
  %20380 = sext i32 %20379 to i64
  %20381 = getelementptr inbounds double, ptr %20375, i64 %20380
  %20382 = load double, ptr %20381, align 8, !tbaa !11
  %20383 = call double @llvm.fmuladd.f64(double 0x3C9EFFFFFFFFFFFD, double %20382, double %20374)
  %20384 = load ptr, ptr %7, align 8, !tbaa !9
  %20385 = load i32, ptr %12, align 4, !tbaa !5
  %20386 = load i32, ptr %8, align 4, !tbaa !5
  %20387 = mul nsw i32 29, %20386
  %20388 = add nsw i32 %20385, %20387
  %20389 = sext i32 %20388 to i64
  %20390 = getelementptr inbounds double, ptr %20384, i64 %20389
  %20391 = load double, ptr %20390, align 8, !tbaa !11
  %20392 = call double @llvm.fmuladd.f64(double 0xBC70000000000001, double %20391, double %20383)
  %20393 = load ptr, ptr %7, align 8, !tbaa !9
  %20394 = load i32, ptr %12, align 4, !tbaa !5
  %20395 = load i32, ptr %8, align 4, !tbaa !5
  %20396 = mul nsw i32 30, %20395
  %20397 = add nsw i32 %20394, %20396
  %20398 = sext i32 %20397 to i64
  %20399 = getelementptr inbounds double, ptr %20393, i64 %20398
  %20400 = load double, ptr %20399, align 8, !tbaa !11
  %20401 = call double @llvm.fmuladd.f64(double 0xBCBEF00000000001, double %20400, double %20392)
  %20402 = load ptr, ptr %7, align 8, !tbaa !9
  %20403 = load i32, ptr %12, align 4, !tbaa !5
  %20404 = load i32, ptr %8, align 4, !tbaa !5
  %20405 = mul nsw i32 31, %20404
  %20406 = add nsw i32 %20403, %20405
  %20407 = sext i32 %20406 to i64
  %20408 = getelementptr inbounds double, ptr %20402, i64 %20407
  %20409 = load double, ptr %20408, align 8, !tbaa !11
  %20410 = call double @llvm.fmuladd.f64(double 0x3C96C00000000000, double %20409, double %20401)
  %20411 = load ptr, ptr %7, align 8, !tbaa !9
  %20412 = load i32, ptr %12, align 4, !tbaa !5
  %20413 = load i32, ptr %8, align 4, !tbaa !5
  %20414 = mul nsw i32 32, %20413
  %20415 = add nsw i32 %20412, %20414
  %20416 = sext i32 %20415 to i64
  %20417 = getelementptr inbounds double, ptr %20411, i64 %20416
  %20418 = load double, ptr %20417, align 8, !tbaa !11
  %20419 = call double @llvm.fmuladd.f64(double 0xBC82000000000000, double %20418, double %20410)
  %20420 = load ptr, ptr %7, align 8, !tbaa !9
  %20421 = load i32, ptr %12, align 4, !tbaa !5
  %20422 = load i32, ptr %8, align 4, !tbaa !5
  %20423 = mul nsw i32 33, %20422
  %20424 = add nsw i32 %20421, %20423
  %20425 = sext i32 %20424 to i64
  %20426 = getelementptr inbounds double, ptr %20420, i64 %20425
  %20427 = load double, ptr %20426, align 8, !tbaa !11
  %20428 = call double @llvm.fmuladd.f64(double 0xBCABC00000000001, double %20427, double %20419)
  %20429 = load ptr, ptr %7, align 8, !tbaa !9
  %20430 = load i32, ptr %12, align 4, !tbaa !5
  %20431 = load i32, ptr %8, align 4, !tbaa !5
  %20432 = mul nsw i32 34, %20431
  %20433 = add nsw i32 %20430, %20432
  %20434 = sext i32 %20433 to i64
  %20435 = getelementptr inbounds double, ptr %20429, i64 %20434
  %20436 = load double, ptr %20435, align 8, !tbaa !11
  %20437 = call double @llvm.fmuladd.f64(double 0xBC76FFFFFFFFFFFF, double %20436, double %20428)
  %20438 = load ptr, ptr %7, align 8, !tbaa !9
  %20439 = load i32, ptr %12, align 4, !tbaa !5
  %20440 = load i32, ptr %8, align 4, !tbaa !5
  %20441 = mul nsw i32 35, %20440
  %20442 = add nsw i32 %20439, %20441
  %20443 = sext i32 %20442 to i64
  %20444 = getelementptr inbounds double, ptr %20438, i64 %20443
  %20445 = load double, ptr %20444, align 8, !tbaa !11
  %20446 = call double @llvm.fmuladd.f64(double 0x3CA8000000000001, double %20445, double %20437)
  %20447 = load ptr, ptr %7, align 8, !tbaa !9
  %20448 = load i32, ptr %12, align 4, !tbaa !5
  %20449 = load i32, ptr %8, align 4, !tbaa !5
  %20450 = mul nsw i32 36, %20449
  %20451 = add nsw i32 %20448, %20450
  %20452 = sext i32 %20451 to i64
  %20453 = getelementptr inbounds double, ptr %20447, i64 %20452
  %20454 = load double, ptr %20453, align 8, !tbaa !11
  %20455 = call double @llvm.fmuladd.f64(double 0x3C91B00000000000, double %20454, double %20446)
  %20456 = load ptr, ptr %7, align 8, !tbaa !9
  %20457 = load i32, ptr %12, align 4, !tbaa !5
  %20458 = load i32, ptr %8, align 4, !tbaa !5
  %20459 = mul nsw i32 37, %20458
  %20460 = add nsw i32 %20457, %20459
  %20461 = sext i32 %20460 to i64
  %20462 = getelementptr inbounds double, ptr %20456, i64 %20461
  %20463 = load double, ptr %20462, align 8, !tbaa !11
  %20464 = call double @llvm.fmuladd.f64(double 0x3CB1FC0000000000, double %20463, double %20455)
  %20465 = load ptr, ptr %7, align 8, !tbaa !9
  %20466 = load i32, ptr %12, align 4, !tbaa !5
  %20467 = load i32, ptr %8, align 4, !tbaa !5
  %20468 = mul nsw i32 38, %20467
  %20469 = add nsw i32 %20466, %20468
  %20470 = sext i32 %20469 to i64
  %20471 = getelementptr inbounds double, ptr %20465, i64 %20470
  %20472 = load double, ptr %20471, align 8, !tbaa !11
  %20473 = call double @llvm.fmuladd.f64(double 0xBC99800000000000, double %20472, double %20464)
  %20474 = load ptr, ptr %7, align 8, !tbaa !9
  %20475 = load i32, ptr %12, align 4, !tbaa !5
  %20476 = load i32, ptr %8, align 4, !tbaa !5
  %20477 = mul nsw i32 39, %20476
  %20478 = add nsw i32 %20475, %20477
  %20479 = sext i32 %20478 to i64
  %20480 = getelementptr inbounds double, ptr %20474, i64 %20479
  %20481 = load double, ptr %20480, align 8, !tbaa !11
  %20482 = call double @llvm.fmuladd.f64(double 0xBC93000000000000, double %20481, double %20473)
  store double %20482, ptr %11, align 8, !tbaa !11
  %20483 = load double, ptr %11, align 8, !tbaa !11
  %20484 = load ptr, ptr %9, align 8, !tbaa !9
  %20485 = load i32, ptr %12, align 4, !tbaa !5
  %20486 = load i32, ptr %10, align 4, !tbaa !5
  %20487 = mul nsw i32 56, %20486
  %20488 = add nsw i32 %20485, %20487
  %20489 = sext i32 %20488 to i64
  %20490 = getelementptr inbounds double, ptr %20484, i64 %20489
  store double %20483, ptr %20490, align 8, !tbaa !11
  %20491 = load ptr, ptr %7, align 8, !tbaa !9
  %20492 = load i32, ptr %12, align 4, !tbaa !5
  %20493 = load i32, ptr %8, align 4, !tbaa !5
  %20494 = mul nsw i32 0, %20493
  %20495 = add nsw i32 %20492, %20494
  %20496 = sext i32 %20495 to i64
  %20497 = getelementptr inbounds double, ptr %20491, i64 %20496
  %20498 = load double, ptr %20497, align 8, !tbaa !11
  %20499 = load ptr, ptr %7, align 8, !tbaa !9
  %20500 = load i32, ptr %12, align 4, !tbaa !5
  %20501 = load i32, ptr %8, align 4, !tbaa !5
  %20502 = mul nsw i32 1, %20501
  %20503 = add nsw i32 %20500, %20502
  %20504 = sext i32 %20503 to i64
  %20505 = getelementptr inbounds double, ptr %20499, i64 %20504
  %20506 = load double, ptr %20505, align 8, !tbaa !11
  %20507 = fmul double 0xBC96800000000000, %20506
  %20508 = call double @llvm.fmuladd.f64(double 0xBCB1200000000001, double %20498, double %20507)
  %20509 = load ptr, ptr %7, align 8, !tbaa !9
  %20510 = load i32, ptr %12, align 4, !tbaa !5
  %20511 = load i32, ptr %8, align 4, !tbaa !5
  %20512 = mul nsw i32 2, %20511
  %20513 = add nsw i32 %20510, %20512
  %20514 = sext i32 %20513 to i64
  %20515 = getelementptr inbounds double, ptr %20509, i64 %20514
  %20516 = load double, ptr %20515, align 8, !tbaa !11
  %20517 = call double @llvm.fmuladd.f64(double 0x3CB7080000000000, double %20516, double %20508)
  %20518 = load ptr, ptr %7, align 8, !tbaa !9
  %20519 = load i32, ptr %12, align 4, !tbaa !5
  %20520 = load i32, ptr %8, align 4, !tbaa !5
  %20521 = mul nsw i32 3, %20520
  %20522 = add nsw i32 %20519, %20521
  %20523 = sext i32 %20522 to i64
  %20524 = getelementptr inbounds double, ptr %20518, i64 %20523
  %20525 = load double, ptr %20524, align 8, !tbaa !11
  %20526 = call double @llvm.fmuladd.f64(double 0xBCBE9FFFFFFFFFFF, double %20525, double %20517)
  %20527 = load ptr, ptr %7, align 8, !tbaa !9
  %20528 = load i32, ptr %12, align 4, !tbaa !5
  %20529 = load i32, ptr %8, align 4, !tbaa !5
  %20530 = mul nsw i32 4, %20529
  %20531 = add nsw i32 %20528, %20530
  %20532 = sext i32 %20531 to i64
  %20533 = getelementptr inbounds double, ptr %20527, i64 %20532
  %20534 = load double, ptr %20533, align 8, !tbaa !11
  %20535 = call double @llvm.fmuladd.f64(double 0xBCB2A00000000001, double %20534, double %20526)
  %20536 = load ptr, ptr %7, align 8, !tbaa !9
  %20537 = load i32, ptr %12, align 4, !tbaa !5
  %20538 = load i32, ptr %8, align 4, !tbaa !5
  %20539 = mul nsw i32 5, %20538
  %20540 = add nsw i32 %20537, %20539
  %20541 = sext i32 %20540 to i64
  %20542 = getelementptr inbounds double, ptr %20536, i64 %20541
  %20543 = load double, ptr %20542, align 8, !tbaa !11
  %20544 = call double @llvm.fmuladd.f64(double 0xBCADBFFFFFFFFFFE, double %20543, double %20535)
  %20545 = load ptr, ptr %7, align 8, !tbaa !9
  %20546 = load i32, ptr %12, align 4, !tbaa !5
  %20547 = load i32, ptr %8, align 4, !tbaa !5
  %20548 = mul nsw i32 6, %20547
  %20549 = add nsw i32 %20546, %20548
  %20550 = sext i32 %20549 to i64
  %20551 = getelementptr inbounds double, ptr %20545, i64 %20550
  %20552 = load double, ptr %20551, align 8, !tbaa !11
  %20553 = call double @llvm.fmuladd.f64(double 0x3CA9BFFFFFFFFFFF, double %20552, double %20544)
  %20554 = load ptr, ptr %7, align 8, !tbaa !9
  %20555 = load i32, ptr %12, align 4, !tbaa !5
  %20556 = load i32, ptr %8, align 4, !tbaa !5
  %20557 = mul nsw i32 7, %20556
  %20558 = add nsw i32 %20555, %20557
  %20559 = sext i32 %20558 to i64
  %20560 = getelementptr inbounds double, ptr %20554, i64 %20559
  %20561 = load double, ptr %20560, align 8, !tbaa !11
  %20562 = call double @llvm.fmuladd.f64(double 0x3C8C800000000000, double %20561, double %20553)
  %20563 = load ptr, ptr %7, align 8, !tbaa !9
  %20564 = load i32, ptr %12, align 4, !tbaa !5
  %20565 = load i32, ptr %8, align 4, !tbaa !5
  %20566 = mul nsw i32 8, %20565
  %20567 = add nsw i32 %20564, %20566
  %20568 = sext i32 %20567 to i64
  %20569 = getelementptr inbounds double, ptr %20563, i64 %20568
  %20570 = load double, ptr %20569, align 8, !tbaa !11
  %20571 = call double @llvm.fmuladd.f64(double 0xBCA8C00000000000, double %20570, double %20562)
  %20572 = load ptr, ptr %7, align 8, !tbaa !9
  %20573 = load i32, ptr %12, align 4, !tbaa !5
  %20574 = load i32, ptr %8, align 4, !tbaa !5
  %20575 = mul nsw i32 9, %20574
  %20576 = add nsw i32 %20573, %20575
  %20577 = sext i32 %20576 to i64
  %20578 = getelementptr inbounds double, ptr %20572, i64 %20577
  %20579 = load double, ptr %20578, align 8, !tbaa !11
  %20580 = call double @llvm.fmuladd.f64(double 0xBC85000000000000, double %20579, double %20571)
  %20581 = load ptr, ptr %7, align 8, !tbaa !9
  %20582 = load i32, ptr %12, align 4, !tbaa !5
  %20583 = load i32, ptr %8, align 4, !tbaa !5
  %20584 = mul nsw i32 10, %20583
  %20585 = add nsw i32 %20582, %20584
  %20586 = sext i32 %20585 to i64
  %20587 = getelementptr inbounds double, ptr %20581, i64 %20586
  %20588 = load double, ptr %20587, align 8, !tbaa !11
  %20589 = call double @llvm.fmuladd.f64(double 0xBFE333710B32A298, double %20588, double %20580)
  %20590 = load ptr, ptr %7, align 8, !tbaa !9
  %20591 = load i32, ptr %12, align 4, !tbaa !5
  %20592 = load i32, ptr %8, align 4, !tbaa !5
  %20593 = mul nsw i32 11, %20592
  %20594 = add nsw i32 %20591, %20593
  %20595 = sext i32 %20594 to i64
  %20596 = getelementptr inbounds double, ptr %20590, i64 %20595
  %20597 = load double, ptr %20596, align 8, !tbaa !11
  %20598 = call double @llvm.fmuladd.f64(double 0xBFA352D4DB969BFB, double %20597, double %20589)
  %20599 = load ptr, ptr %7, align 8, !tbaa !9
  %20600 = load i32, ptr %12, align 4, !tbaa !5
  %20601 = load i32, ptr %8, align 4, !tbaa !5
  %20602 = mul nsw i32 12, %20601
  %20603 = add nsw i32 %20600, %20602
  %20604 = sext i32 %20603 to i64
  %20605 = getelementptr inbounds double, ptr %20599, i64 %20604
  %20606 = load double, ptr %20605, align 8, !tbaa !11
  %20607 = call double @llvm.fmuladd.f64(double 0x3FA87D7643548531, double %20606, double %20598)
  %20608 = load ptr, ptr %7, align 8, !tbaa !9
  %20609 = load i32, ptr %12, align 4, !tbaa !5
  %20610 = load i32, ptr %8, align 4, !tbaa !5
  %20611 = mul nsw i32 13, %20610
  %20612 = add nsw i32 %20609, %20611
  %20613 = sext i32 %20612 to i64
  %20614 = getelementptr inbounds double, ptr %20608, i64 %20613
  %20615 = load double, ptr %20614, align 8, !tbaa !11
  %20616 = call double @llvm.fmuladd.f64(double 0xBFBEED13A9F0D8FA, double %20615, double %20607)
  %20617 = load ptr, ptr %7, align 8, !tbaa !9
  %20618 = load i32, ptr %12, align 4, !tbaa !5
  %20619 = load i32, ptr %8, align 4, !tbaa !5
  %20620 = mul nsw i32 14, %20619
  %20621 = add nsw i32 %20618, %20620
  %20622 = sext i32 %20621 to i64
  %20623 = getelementptr inbounds double, ptr %20617, i64 %20622
  %20624 = load double, ptr %20623, align 8, !tbaa !11
  %20625 = call double @llvm.fmuladd.f64(double 0x3FF670C5F1F4C92E, double %20624, double %20616)
  %20626 = load ptr, ptr %7, align 8, !tbaa !9
  %20627 = load i32, ptr %12, align 4, !tbaa !5
  %20628 = load i32, ptr %8, align 4, !tbaa !5
  %20629 = mul nsw i32 15, %20628
  %20630 = add nsw i32 %20627, %20629
  %20631 = sext i32 %20630 to i64
  %20632 = getelementptr inbounds double, ptr %20626, i64 %20631
  %20633 = load double, ptr %20632, align 8, !tbaa !11
  %20634 = call double @llvm.fmuladd.f64(double 0x3FC27B05E24EC5DE, double %20633, double %20625)
  %20635 = load ptr, ptr %7, align 8, !tbaa !9
  %20636 = load i32, ptr %12, align 4, !tbaa !5
  %20637 = load i32, ptr %8, align 4, !tbaa !5
  %20638 = mul nsw i32 16, %20637
  %20639 = add nsw i32 %20636, %20638
  %20640 = sext i32 %20639 to i64
  %20641 = getelementptr inbounds double, ptr %20635, i64 %20640
  %20642 = load double, ptr %20641, align 8, !tbaa !11
  %20643 = call double @llvm.fmuladd.f64(double 0x3FD35DAE88CBA641, double %20642, double %20634)
  %20644 = load ptr, ptr %7, align 8, !tbaa !9
  %20645 = load i32, ptr %12, align 4, !tbaa !5
  %20646 = load i32, ptr %8, align 4, !tbaa !5
  %20647 = mul nsw i32 17, %20646
  %20648 = add nsw i32 %20645, %20647
  %20649 = sext i32 %20648 to i64
  %20650 = getelementptr inbounds double, ptr %20644, i64 %20649
  %20651 = load double, ptr %20650, align 8, !tbaa !11
  %20652 = call double @llvm.fmuladd.f64(double 0xBFD41C0D131D4286, double %20651, double %20643)
  %20653 = load ptr, ptr %7, align 8, !tbaa !9
  %20654 = load i32, ptr %12, align 4, !tbaa !5
  %20655 = load i32, ptr %8, align 4, !tbaa !5
  %20656 = mul nsw i32 18, %20655
  %20657 = add nsw i32 %20654, %20656
  %20658 = sext i32 %20657 to i64
  %20659 = getelementptr inbounds double, ptr %20653, i64 %20658
  %20660 = load double, ptr %20659, align 8, !tbaa !11
  %20661 = call double @llvm.fmuladd.f64(double 0x3F9854E0ADA34B73, double %20660, double %20652)
  %20662 = load ptr, ptr %7, align 8, !tbaa !9
  %20663 = load i32, ptr %12, align 4, !tbaa !5
  %20664 = load i32, ptr %8, align 4, !tbaa !5
  %20665 = mul nsw i32 19, %20664
  %20666 = add nsw i32 %20663, %20665
  %20667 = sext i32 %20666 to i64
  %20668 = getelementptr inbounds double, ptr %20662, i64 %20667
  %20669 = load double, ptr %20668, align 8, !tbaa !11
  %20670 = call double @llvm.fmuladd.f64(double 0x3FC36A9134CD3C63, double %20669, double %20661)
  %20671 = load ptr, ptr %7, align 8, !tbaa !9
  %20672 = load i32, ptr %12, align 4, !tbaa !5
  %20673 = load i32, ptr %8, align 4, !tbaa !5
  %20674 = mul nsw i32 20, %20673
  %20675 = add nsw i32 %20672, %20674
  %20676 = sext i32 %20675 to i64
  %20677 = getelementptr inbounds double, ptr %20671, i64 %20676
  %20678 = load double, ptr %20677, align 8, !tbaa !11
  %20679 = call double @llvm.fmuladd.f64(double 0x3CA8000000000001, double %20678, double %20670)
  %20680 = load ptr, ptr %7, align 8, !tbaa !9
  %20681 = load i32, ptr %12, align 4, !tbaa !5
  %20682 = load i32, ptr %8, align 4, !tbaa !5
  %20683 = mul nsw i32 21, %20682
  %20684 = add nsw i32 %20681, %20683
  %20685 = sext i32 %20684 to i64
  %20686 = getelementptr inbounds double, ptr %20680, i64 %20685
  %20687 = load double, ptr %20686, align 8, !tbaa !11
  %20688 = call double @llvm.fmuladd.f64(double 0xBC93000000000000, double %20687, double %20679)
  %20689 = load ptr, ptr %7, align 8, !tbaa !9
  %20690 = load i32, ptr %12, align 4, !tbaa !5
  %20691 = load i32, ptr %8, align 4, !tbaa !5
  %20692 = mul nsw i32 22, %20691
  %20693 = add nsw i32 %20690, %20692
  %20694 = sext i32 %20693 to i64
  %20695 = getelementptr inbounds double, ptr %20689, i64 %20694
  %20696 = load double, ptr %20695, align 8, !tbaa !11
  %20697 = call double @llvm.fmuladd.f64(double 0x3C66000000000000, double %20696, double %20688)
  %20698 = load ptr, ptr %7, align 8, !tbaa !9
  %20699 = load i32, ptr %12, align 4, !tbaa !5
  %20700 = load i32, ptr %8, align 4, !tbaa !5
  %20701 = mul nsw i32 23, %20700
  %20702 = add nsw i32 %20699, %20701
  %20703 = sext i32 %20702 to i64
  %20704 = getelementptr inbounds double, ptr %20698, i64 %20703
  %20705 = load double, ptr %20704, align 8, !tbaa !11
  %20706 = call double @llvm.fmuladd.f64(double 0x3CBAB00000000000, double %20705, double %20697)
  %20707 = load ptr, ptr %7, align 8, !tbaa !9
  %20708 = load i32, ptr %12, align 4, !tbaa !5
  %20709 = load i32, ptr %8, align 4, !tbaa !5
  %20710 = mul nsw i32 24, %20709
  %20711 = add nsw i32 %20708, %20710
  %20712 = sext i32 %20711 to i64
  %20713 = getelementptr inbounds double, ptr %20707, i64 %20712
  %20714 = load double, ptr %20713, align 8, !tbaa !11
  %20715 = call double @llvm.fmuladd.f64(double 0x3CA4800000000001, double %20714, double %20706)
  %20716 = load ptr, ptr %7, align 8, !tbaa !9
  %20717 = load i32, ptr %12, align 4, !tbaa !5
  %20718 = load i32, ptr %8, align 4, !tbaa !5
  %20719 = mul nsw i32 25, %20718
  %20720 = add nsw i32 %20717, %20719
  %20721 = sext i32 %20720 to i64
  %20722 = getelementptr inbounds double, ptr %20716, i64 %20721
  %20723 = load double, ptr %20722, align 8, !tbaa !11
  %20724 = call double @llvm.fmuladd.f64(double 0x3CBC800000000000, double %20723, double %20715)
  %20725 = load ptr, ptr %7, align 8, !tbaa !9
  %20726 = load i32, ptr %12, align 4, !tbaa !5
  %20727 = load i32, ptr %8, align 4, !tbaa !5
  %20728 = mul nsw i32 26, %20727
  %20729 = add nsw i32 %20726, %20728
  %20730 = sext i32 %20729 to i64
  %20731 = getelementptr inbounds double, ptr %20725, i64 %20730
  %20732 = load double, ptr %20731, align 8, !tbaa !11
  %20733 = call double @llvm.fmuladd.f64(double 0x3CAB400000000001, double %20732, double %20724)
  %20734 = load ptr, ptr %7, align 8, !tbaa !9
  %20735 = load i32, ptr %12, align 4, !tbaa !5
  %20736 = load i32, ptr %8, align 4, !tbaa !5
  %20737 = mul nsw i32 27, %20736
  %20738 = add nsw i32 %20735, %20737
  %20739 = sext i32 %20738 to i64
  %20740 = getelementptr inbounds double, ptr %20734, i64 %20739
  %20741 = load double, ptr %20740, align 8, !tbaa !11
  %20742 = call double @llvm.fmuladd.f64(double 0xBCC0400000000000, double %20741, double %20733)
  %20743 = load ptr, ptr %7, align 8, !tbaa !9
  %20744 = load i32, ptr %12, align 4, !tbaa !5
  %20745 = load i32, ptr %8, align 4, !tbaa !5
  %20746 = mul nsw i32 28, %20745
  %20747 = add nsw i32 %20744, %20746
  %20748 = sext i32 %20747 to i64
  %20749 = getelementptr inbounds double, ptr %20743, i64 %20748
  %20750 = load double, ptr %20749, align 8, !tbaa !11
  %20751 = call double @llvm.fmuladd.f64(double 0x3C9DFFFFFFFFFFFE, double %20750, double %20742)
  %20752 = load ptr, ptr %7, align 8, !tbaa !9
  %20753 = load i32, ptr %12, align 4, !tbaa !5
  %20754 = load i32, ptr %8, align 4, !tbaa !5
  %20755 = mul nsw i32 29, %20754
  %20756 = add nsw i32 %20753, %20755
  %20757 = sext i32 %20756 to i64
  %20758 = getelementptr inbounds double, ptr %20752, i64 %20757
  %20759 = load double, ptr %20758, align 8, !tbaa !11
  %20760 = call double @llvm.fmuladd.f64(double 0xBCAE000000000002, double %20759, double %20751)
  %20761 = load ptr, ptr %7, align 8, !tbaa !9
  %20762 = load i32, ptr %12, align 4, !tbaa !5
  %20763 = load i32, ptr %8, align 4, !tbaa !5
  %20764 = mul nsw i32 30, %20763
  %20765 = add nsw i32 %20762, %20764
  %20766 = sext i32 %20765 to i64
  %20767 = getelementptr inbounds double, ptr %20761, i64 %20766
  %20768 = load double, ptr %20767, align 8, !tbaa !11
  %20769 = call double @llvm.fmuladd.f64(double 0xBCD4500000000002, double %20768, double %20760)
  %20770 = load ptr, ptr %7, align 8, !tbaa !9
  %20771 = load i32, ptr %12, align 4, !tbaa !5
  %20772 = load i32, ptr %8, align 4, !tbaa !5
  %20773 = mul nsw i32 31, %20772
  %20774 = add nsw i32 %20771, %20773
  %20775 = sext i32 %20774 to i64
  %20776 = getelementptr inbounds double, ptr %20770, i64 %20775
  %20777 = load double, ptr %20776, align 8, !tbaa !11
  %20778 = call double @llvm.fmuladd.f64(double 0x3C9A000000000000, double %20777, double %20769)
  %20779 = load ptr, ptr %7, align 8, !tbaa !9
  %20780 = load i32, ptr %12, align 4, !tbaa !5
  %20781 = load i32, ptr %8, align 4, !tbaa !5
  %20782 = mul nsw i32 32, %20781
  %20783 = add nsw i32 %20780, %20782
  %20784 = sext i32 %20783 to i64
  %20785 = getelementptr inbounds double, ptr %20779, i64 %20784
  %20786 = load double, ptr %20785, align 8, !tbaa !11
  %20787 = call double @llvm.fmuladd.f64(double 0x3C777FFFFFFFFFFF, double %20786, double %20778)
  %20788 = load ptr, ptr %7, align 8, !tbaa !9
  %20789 = load i32, ptr %12, align 4, !tbaa !5
  %20790 = load i32, ptr %8, align 4, !tbaa !5
  %20791 = mul nsw i32 33, %20790
  %20792 = add nsw i32 %20789, %20791
  %20793 = sext i32 %20792 to i64
  %20794 = getelementptr inbounds double, ptr %20788, i64 %20793
  %20795 = load double, ptr %20794, align 8, !tbaa !11
  %20796 = call double @llvm.fmuladd.f64(double 0xBCA66FFFFFFFFFFF, double %20795, double %20787)
  %20797 = load ptr, ptr %7, align 8, !tbaa !9
  %20798 = load i32, ptr %12, align 4, !tbaa !5
  %20799 = load i32, ptr %8, align 4, !tbaa !5
  %20800 = mul nsw i32 34, %20799
  %20801 = add nsw i32 %20798, %20800
  %20802 = sext i32 %20801 to i64
  %20803 = getelementptr inbounds double, ptr %20797, i64 %20802
  %20804 = load double, ptr %20803, align 8, !tbaa !11
  %20805 = call double @llvm.fmuladd.f64(double 0xBC89FFFFFFFFFFFF, double %20804, double %20796)
  %20806 = load ptr, ptr %7, align 8, !tbaa !9
  %20807 = load i32, ptr %12, align 4, !tbaa !5
  %20808 = load i32, ptr %8, align 4, !tbaa !5
  %20809 = mul nsw i32 35, %20808
  %20810 = add nsw i32 %20807, %20809
  %20811 = sext i32 %20810 to i64
  %20812 = getelementptr inbounds double, ptr %20806, i64 %20811
  %20813 = load double, ptr %20812, align 8, !tbaa !11
  %20814 = call double @llvm.fmuladd.f64(double 0x3C9F7FFFFFFFFFFC, double %20813, double %20805)
  %20815 = load ptr, ptr %7, align 8, !tbaa !9
  %20816 = load i32, ptr %12, align 4, !tbaa !5
  %20817 = load i32, ptr %8, align 4, !tbaa !5
  %20818 = mul nsw i32 36, %20817
  %20819 = add nsw i32 %20816, %20818
  %20820 = sext i32 %20819 to i64
  %20821 = getelementptr inbounds double, ptr %20815, i64 %20820
  %20822 = load double, ptr %20821, align 8, !tbaa !11
  %20823 = call double @llvm.fmuladd.f64(double 0xBC9EBFFFFFFFFFFD, double %20822, double %20814)
  %20824 = load ptr, ptr %7, align 8, !tbaa !9
  %20825 = load i32, ptr %12, align 4, !tbaa !5
  %20826 = load i32, ptr %8, align 4, !tbaa !5
  %20827 = mul nsw i32 37, %20826
  %20828 = add nsw i32 %20825, %20827
  %20829 = sext i32 %20828 to i64
  %20830 = getelementptr inbounds double, ptr %20824, i64 %20829
  %20831 = load double, ptr %20830, align 8, !tbaa !11
  %20832 = call double @llvm.fmuladd.f64(double 0x3CB6900000000000, double %20831, double %20823)
  %20833 = load ptr, ptr %7, align 8, !tbaa !9
  %20834 = load i32, ptr %12, align 4, !tbaa !5
  %20835 = load i32, ptr %8, align 4, !tbaa !5
  %20836 = mul nsw i32 38, %20835
  %20837 = add nsw i32 %20834, %20836
  %20838 = sext i32 %20837 to i64
  %20839 = getelementptr inbounds double, ptr %20833, i64 %20838
  %20840 = load double, ptr %20839, align 8, !tbaa !11
  %20841 = call double @llvm.fmuladd.f64(double 0x3C8C000000000000, double %20840, double %20832)
  %20842 = load ptr, ptr %7, align 8, !tbaa !9
  %20843 = load i32, ptr %12, align 4, !tbaa !5
  %20844 = load i32, ptr %8, align 4, !tbaa !5
  %20845 = mul nsw i32 39, %20844
  %20846 = add nsw i32 %20843, %20845
  %20847 = sext i32 %20846 to i64
  %20848 = getelementptr inbounds double, ptr %20842, i64 %20847
  %20849 = load double, ptr %20848, align 8, !tbaa !11
  %20850 = call double @llvm.fmuladd.f64(double 0x3C64000000000000, double %20849, double %20841)
  store double %20850, ptr %11, align 8, !tbaa !11
  %20851 = load double, ptr %11, align 8, !tbaa !11
  %20852 = load ptr, ptr %9, align 8, !tbaa !9
  %20853 = load i32, ptr %12, align 4, !tbaa !5
  %20854 = load i32, ptr %10, align 4, !tbaa !5
  %20855 = mul nsw i32 57, %20854
  %20856 = add nsw i32 %20853, %20855
  %20857 = sext i32 %20856 to i64
  %20858 = getelementptr inbounds double, ptr %20852, i64 %20857
  store double %20851, ptr %20858, align 8, !tbaa !11
  %20859 = load ptr, ptr %7, align 8, !tbaa !9
  %20860 = load i32, ptr %12, align 4, !tbaa !5
  %20861 = load i32, ptr %8, align 4, !tbaa !5
  %20862 = mul nsw i32 0, %20861
  %20863 = add nsw i32 %20860, %20862
  %20864 = sext i32 %20863 to i64
  %20865 = getelementptr inbounds double, ptr %20859, i64 %20864
  %20866 = load double, ptr %20865, align 8, !tbaa !11
  %20867 = load ptr, ptr %7, align 8, !tbaa !9
  %20868 = load i32, ptr %12, align 4, !tbaa !5
  %20869 = load i32, ptr %8, align 4, !tbaa !5
  %20870 = mul nsw i32 1, %20869
  %20871 = add nsw i32 %20868, %20870
  %20872 = sext i32 %20871 to i64
  %20873 = getelementptr inbounds double, ptr %20867, i64 %20872
  %20874 = load double, ptr %20873, align 8, !tbaa !11
  %20875 = fmul double 0x3C86000000000001, %20874
  %20876 = call double @llvm.fmuladd.f64(double 0x3C93000000000000, double %20866, double %20875)
  %20877 = load ptr, ptr %7, align 8, !tbaa !9
  %20878 = load i32, ptr %12, align 4, !tbaa !5
  %20879 = load i32, ptr %8, align 4, !tbaa !5
  %20880 = mul nsw i32 2, %20879
  %20881 = add nsw i32 %20878, %20880
  %20882 = sext i32 %20881 to i64
  %20883 = getelementptr inbounds double, ptr %20877, i64 %20882
  %20884 = load double, ptr %20883, align 8, !tbaa !11
  %20885 = call double @llvm.fmuladd.f64(double 0x3CB92FFFFFFFFFFF, double %20884, double %20876)
  %20886 = load ptr, ptr %7, align 8, !tbaa !9
  %20887 = load i32, ptr %12, align 4, !tbaa !5
  %20888 = load i32, ptr %8, align 4, !tbaa !5
  %20889 = mul nsw i32 3, %20888
  %20890 = add nsw i32 %20887, %20889
  %20891 = sext i32 %20890 to i64
  %20892 = getelementptr inbounds double, ptr %20886, i64 %20891
  %20893 = load double, ptr %20892, align 8, !tbaa !11
  %20894 = call double @llvm.fmuladd.f64(double 0xBCCAE00000000001, double %20893, double %20885)
  %20895 = load ptr, ptr %7, align 8, !tbaa !9
  %20896 = load i32, ptr %12, align 4, !tbaa !5
  %20897 = load i32, ptr %8, align 4, !tbaa !5
  %20898 = mul nsw i32 4, %20897
  %20899 = add nsw i32 %20896, %20898
  %20900 = sext i32 %20899 to i64
  %20901 = getelementptr inbounds double, ptr %20895, i64 %20900
  %20902 = load double, ptr %20901, align 8, !tbaa !11
  %20903 = call double @llvm.fmuladd.f64(double 0x3CB5000000000000, double %20902, double %20894)
  %20904 = load ptr, ptr %7, align 8, !tbaa !9
  %20905 = load i32, ptr %12, align 4, !tbaa !5
  %20906 = load i32, ptr %8, align 4, !tbaa !5
  %20907 = mul nsw i32 5, %20906
  %20908 = add nsw i32 %20905, %20907
  %20909 = sext i32 %20908 to i64
  %20910 = getelementptr inbounds double, ptr %20904, i64 %20909
  %20911 = load double, ptr %20910, align 8, !tbaa !11
  %20912 = call double @llvm.fmuladd.f64(double 0x3C50000000000000, double %20911, double %20903)
  %20913 = load ptr, ptr %7, align 8, !tbaa !9
  %20914 = load i32, ptr %12, align 4, !tbaa !5
  %20915 = load i32, ptr %8, align 4, !tbaa !5
  %20916 = mul nsw i32 6, %20915
  %20917 = add nsw i32 %20914, %20916
  %20918 = sext i32 %20917 to i64
  %20919 = getelementptr inbounds double, ptr %20913, i64 %20918
  %20920 = load double, ptr %20919, align 8, !tbaa !11
  %20921 = call double @llvm.fmuladd.f64(double 0x3CAF200000000001, double %20920, double %20912)
  %20922 = load ptr, ptr %7, align 8, !tbaa !9
  %20923 = load i32, ptr %12, align 4, !tbaa !5
  %20924 = load i32, ptr %8, align 4, !tbaa !5
  %20925 = mul nsw i32 7, %20924
  %20926 = add nsw i32 %20923, %20925
  %20927 = sext i32 %20926 to i64
  %20928 = getelementptr inbounds double, ptr %20922, i64 %20927
  %20929 = load double, ptr %20928, align 8, !tbaa !11
  %20930 = call double @llvm.fmuladd.f64(double 0xBCA1200000000001, double %20929, double %20921)
  %20931 = load ptr, ptr %7, align 8, !tbaa !9
  %20932 = load i32, ptr %12, align 4, !tbaa !5
  %20933 = load i32, ptr %8, align 4, !tbaa !5
  %20934 = mul nsw i32 8, %20933
  %20935 = add nsw i32 %20932, %20934
  %20936 = sext i32 %20935 to i64
  %20937 = getelementptr inbounds double, ptr %20931, i64 %20936
  %20938 = load double, ptr %20937, align 8, !tbaa !11
  %20939 = call double @llvm.fmuladd.f64(double 0xBC89FFFFFFFFFFFF, double %20938, double %20930)
  %20940 = load ptr, ptr %7, align 8, !tbaa !9
  %20941 = load i32, ptr %12, align 4, !tbaa !5
  %20942 = load i32, ptr %8, align 4, !tbaa !5
  %20943 = mul nsw i32 9, %20942
  %20944 = add nsw i32 %20941, %20943
  %20945 = sext i32 %20944 to i64
  %20946 = getelementptr inbounds double, ptr %20940, i64 %20945
  %20947 = load double, ptr %20946, align 8, !tbaa !11
  %20948 = call double @llvm.fmuladd.f64(double 0xBCB0400000000000, double %20947, double %20939)
  %20949 = load ptr, ptr %7, align 8, !tbaa !9
  %20950 = load i32, ptr %12, align 4, !tbaa !5
  %20951 = load i32, ptr %8, align 4, !tbaa !5
  %20952 = mul nsw i32 10, %20951
  %20953 = add nsw i32 %20950, %20952
  %20954 = sext i32 %20953 to i64
  %20955 = getelementptr inbounds double, ptr %20949, i64 %20954
  %20956 = load double, ptr %20955, align 8, !tbaa !11
  %20957 = call double @llvm.fmuladd.f64(double 0xBFE333710B32A29D, double %20956, double %20948)
  %20958 = load ptr, ptr %7, align 8, !tbaa !9
  %20959 = load i32, ptr %12, align 4, !tbaa !5
  %20960 = load i32, ptr %8, align 4, !tbaa !5
  %20961 = mul nsw i32 11, %20960
  %20962 = add nsw i32 %20959, %20961
  %20963 = sext i32 %20962 to i64
  %20964 = getelementptr inbounds double, ptr %20958, i64 %20963
  %20965 = load double, ptr %20964, align 8, !tbaa !11
  %20966 = call double @llvm.fmuladd.f64(double 0x3FA87D7643548512, double %20965, double %20957)
  %20967 = load ptr, ptr %7, align 8, !tbaa !9
  %20968 = load i32, ptr %12, align 4, !tbaa !5
  %20969 = load i32, ptr %8, align 4, !tbaa !5
  %20970 = mul nsw i32 12, %20969
  %20971 = add nsw i32 %20968, %20970
  %20972 = sext i32 %20971 to i64
  %20973 = getelementptr inbounds double, ptr %20967, i64 %20972
  %20974 = load double, ptr %20973, align 8, !tbaa !11
  %20975 = call double @llvm.fmuladd.f64(double 0xBFA352D4DB969C06, double %20974, double %20966)
  %20976 = load ptr, ptr %7, align 8, !tbaa !9
  %20977 = load i32, ptr %12, align 4, !tbaa !5
  %20978 = load i32, ptr %8, align 4, !tbaa !5
  %20979 = mul nsw i32 13, %20978
  %20980 = add nsw i32 %20977, %20979
  %20981 = sext i32 %20980 to i64
  %20982 = getelementptr inbounds double, ptr %20976, i64 %20981
  %20983 = load double, ptr %20982, align 8, !tbaa !11
  %20984 = call double @llvm.fmuladd.f64(double 0xBFBEED13A9F0D8F3, double %20983, double %20975)
  %20985 = load ptr, ptr %7, align 8, !tbaa !9
  %20986 = load i32, ptr %12, align 4, !tbaa !5
  %20987 = load i32, ptr %8, align 4, !tbaa !5
  %20988 = mul nsw i32 14, %20987
  %20989 = add nsw i32 %20986, %20988
  %20990 = sext i32 %20989 to i64
  %20991 = getelementptr inbounds double, ptr %20985, i64 %20990
  %20992 = load double, ptr %20991, align 8, !tbaa !11
  %20993 = call double @llvm.fmuladd.f64(double 0x3FC36A9134CD3C66, double %20992, double %20984)
  %20994 = load ptr, ptr %7, align 8, !tbaa !9
  %20995 = load i32, ptr %12, align 4, !tbaa !5
  %20996 = load i32, ptr %8, align 4, !tbaa !5
  %20997 = mul nsw i32 15, %20996
  %20998 = add nsw i32 %20995, %20997
  %20999 = sext i32 %20998 to i64
  %21000 = getelementptr inbounds double, ptr %20994, i64 %20999
  %21001 = load double, ptr %21000, align 8, !tbaa !11
  %21002 = call double @llvm.fmuladd.f64(double 0x3FD35DAE88CBA63D, double %21001, double %20993)
  %21003 = load ptr, ptr %7, align 8, !tbaa !9
  %21004 = load i32, ptr %12, align 4, !tbaa !5
  %21005 = load i32, ptr %8, align 4, !tbaa !5
  %21006 = mul nsw i32 16, %21005
  %21007 = add nsw i32 %21004, %21006
  %21008 = sext i32 %21007 to i64
  %21009 = getelementptr inbounds double, ptr %21003, i64 %21008
  %21010 = load double, ptr %21009, align 8, !tbaa !11
  %21011 = call double @llvm.fmuladd.f64(double 0x3FC27B05E24EC5ED, double %21010, double %21002)
  %21012 = load ptr, ptr %7, align 8, !tbaa !9
  %21013 = load i32, ptr %12, align 4, !tbaa !5
  %21014 = load i32, ptr %8, align 4, !tbaa !5
  %21015 = mul nsw i32 17, %21014
  %21016 = add nsw i32 %21013, %21015
  %21017 = sext i32 %21016 to i64
  %21018 = getelementptr inbounds double, ptr %21012, i64 %21017
  %21019 = load double, ptr %21018, align 8, !tbaa !11
  %21020 = call double @llvm.fmuladd.f64(double 0x3F9854E0ADA34B73, double %21019, double %21011)
  %21021 = load ptr, ptr %7, align 8, !tbaa !9
  %21022 = load i32, ptr %12, align 4, !tbaa !5
  %21023 = load i32, ptr %8, align 4, !tbaa !5
  %21024 = mul nsw i32 18, %21023
  %21025 = add nsw i32 %21022, %21024
  %21026 = sext i32 %21025 to i64
  %21027 = getelementptr inbounds double, ptr %21021, i64 %21026
  %21028 = load double, ptr %21027, align 8, !tbaa !11
  %21029 = call double @llvm.fmuladd.f64(double 0xBFD41C0D131D4293, double %21028, double %21020)
  %21030 = load ptr, ptr %7, align 8, !tbaa !9
  %21031 = load i32, ptr %12, align 4, !tbaa !5
  %21032 = load i32, ptr %8, align 4, !tbaa !5
  %21033 = mul nsw i32 19, %21032
  %21034 = add nsw i32 %21031, %21033
  %21035 = sext i32 %21034 to i64
  %21036 = getelementptr inbounds double, ptr %21030, i64 %21035
  %21037 = load double, ptr %21036, align 8, !tbaa !11
  %21038 = call double @llvm.fmuladd.f64(double 0x3FF670C5F1F4C932, double %21037, double %21029)
  %21039 = load ptr, ptr %7, align 8, !tbaa !9
  %21040 = load i32, ptr %12, align 4, !tbaa !5
  %21041 = load i32, ptr %8, align 4, !tbaa !5
  %21042 = mul nsw i32 20, %21041
  %21043 = add nsw i32 %21040, %21042
  %21044 = sext i32 %21043 to i64
  %21045 = getelementptr inbounds double, ptr %21039, i64 %21044
  %21046 = load double, ptr %21045, align 8, !tbaa !11
  %21047 = call double @llvm.fmuladd.f64(double 0x3CC9800000000000, double %21046, double %21038)
  %21048 = load ptr, ptr %7, align 8, !tbaa !9
  %21049 = load i32, ptr %12, align 4, !tbaa !5
  %21050 = load i32, ptr %8, align 4, !tbaa !5
  %21051 = mul nsw i32 21, %21050
  %21052 = add nsw i32 %21049, %21051
  %21053 = sext i32 %21052 to i64
  %21054 = getelementptr inbounds double, ptr %21048, i64 %21053
  %21055 = load double, ptr %21054, align 8, !tbaa !11
  %21056 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %21055, double %21047)
  %21057 = load ptr, ptr %7, align 8, !tbaa !9
  %21058 = load i32, ptr %12, align 4, !tbaa !5
  %21059 = load i32, ptr %8, align 4, !tbaa !5
  %21060 = mul nsw i32 22, %21059
  %21061 = add nsw i32 %21058, %21060
  %21062 = sext i32 %21061 to i64
  %21063 = getelementptr inbounds double, ptr %21057, i64 %21062
  %21064 = load double, ptr %21063, align 8, !tbaa !11
  %21065 = call double @llvm.fmuladd.f64(double 0xBC64000000000000, double %21064, double %21056)
  %21066 = load ptr, ptr %7, align 8, !tbaa !9
  %21067 = load i32, ptr %12, align 4, !tbaa !5
  %21068 = load i32, ptr %8, align 4, !tbaa !5
  %21069 = mul nsw i32 23, %21068
  %21070 = add nsw i32 %21067, %21069
  %21071 = sext i32 %21070 to i64
  %21072 = getelementptr inbounds double, ptr %21066, i64 %21071
  %21073 = load double, ptr %21072, align 8, !tbaa !11
  %21074 = call double @llvm.fmuladd.f64(double 0x3CA0800000000001, double %21073, double %21065)
  %21075 = load ptr, ptr %7, align 8, !tbaa !9
  %21076 = load i32, ptr %12, align 4, !tbaa !5
  %21077 = load i32, ptr %8, align 4, !tbaa !5
  %21078 = mul nsw i32 24, %21077
  %21079 = add nsw i32 %21076, %21078
  %21080 = sext i32 %21079 to i64
  %21081 = getelementptr inbounds double, ptr %21075, i64 %21080
  %21082 = load double, ptr %21081, align 8, !tbaa !11
  %21083 = call double @llvm.fmuladd.f64(double 0xBCA0000000000002, double %21082, double %21074)
  %21084 = load ptr, ptr %7, align 8, !tbaa !9
  %21085 = load i32, ptr %12, align 4, !tbaa !5
  %21086 = load i32, ptr %8, align 4, !tbaa !5
  %21087 = mul nsw i32 25, %21086
  %21088 = add nsw i32 %21085, %21087
  %21089 = sext i32 %21088 to i64
  %21090 = getelementptr inbounds double, ptr %21084, i64 %21089
  %21091 = load double, ptr %21090, align 8, !tbaa !11
  %21092 = call double @llvm.fmuladd.f64(double 0x3CA8000000000001, double %21091, double %21083)
  %21093 = load ptr, ptr %7, align 8, !tbaa !9
  %21094 = load i32, ptr %12, align 4, !tbaa !5
  %21095 = load i32, ptr %8, align 4, !tbaa !5
  %21096 = mul nsw i32 26, %21095
  %21097 = add nsw i32 %21094, %21096
  %21098 = sext i32 %21097 to i64
  %21099 = getelementptr inbounds double, ptr %21093, i64 %21098
  %21100 = load double, ptr %21099, align 8, !tbaa !11
  %21101 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %21100, double %21092)
  %21102 = load ptr, ptr %7, align 8, !tbaa !9
  %21103 = load i32, ptr %12, align 4, !tbaa !5
  %21104 = load i32, ptr %8, align 4, !tbaa !5
  %21105 = mul nsw i32 27, %21104
  %21106 = add nsw i32 %21103, %21105
  %21107 = sext i32 %21106 to i64
  %21108 = getelementptr inbounds double, ptr %21102, i64 %21107
  %21109 = load double, ptr %21108, align 8, !tbaa !11
  %21110 = call double @llvm.fmuladd.f64(double 0xBCAB000000000001, double %21109, double %21101)
  %21111 = load ptr, ptr %7, align 8, !tbaa !9
  %21112 = load i32, ptr %12, align 4, !tbaa !5
  %21113 = load i32, ptr %8, align 4, !tbaa !5
  %21114 = mul nsw i32 28, %21113
  %21115 = add nsw i32 %21112, %21114
  %21116 = sext i32 %21115 to i64
  %21117 = getelementptr inbounds double, ptr %21111, i64 %21116
  %21118 = load double, ptr %21117, align 8, !tbaa !11
  %21119 = call double @llvm.fmuladd.f64(double 0x3CB9000000000000, double %21118, double %21110)
  %21120 = load ptr, ptr %7, align 8, !tbaa !9
  %21121 = load i32, ptr %12, align 4, !tbaa !5
  %21122 = load i32, ptr %8, align 4, !tbaa !5
  %21123 = mul nsw i32 29, %21122
  %21124 = add nsw i32 %21121, %21123
  %21125 = sext i32 %21124 to i64
  %21126 = getelementptr inbounds double, ptr %21120, i64 %21125
  %21127 = load double, ptr %21126, align 8, !tbaa !11
  %21128 = call double @llvm.fmuladd.f64(double 0xBCB9000000000000, double %21127, double %21119)
  %21129 = load ptr, ptr %7, align 8, !tbaa !9
  %21130 = load i32, ptr %12, align 4, !tbaa !5
  %21131 = load i32, ptr %8, align 4, !tbaa !5
  %21132 = mul nsw i32 30, %21131
  %21133 = add nsw i32 %21130, %21132
  %21134 = sext i32 %21133 to i64
  %21135 = getelementptr inbounds double, ptr %21129, i64 %21134
  %21136 = load double, ptr %21135, align 8, !tbaa !11
  %21137 = call double @llvm.fmuladd.f64(double 0xBC92000000000000, double %21136, double %21128)
  %21138 = load ptr, ptr %7, align 8, !tbaa !9
  %21139 = load i32, ptr %12, align 4, !tbaa !5
  %21140 = load i32, ptr %8, align 4, !tbaa !5
  %21141 = mul nsw i32 32, %21140
  %21142 = add nsw i32 %21139, %21141
  %21143 = sext i32 %21142 to i64
  %21144 = getelementptr inbounds double, ptr %21138, i64 %21143
  %21145 = load double, ptr %21144, align 8, !tbaa !11
  %21146 = call double @llvm.fmuladd.f64(double 0x3C9F3FFFFFFFFFFC, double %21145, double %21137)
  %21147 = load ptr, ptr %7, align 8, !tbaa !9
  %21148 = load i32, ptr %12, align 4, !tbaa !5
  %21149 = load i32, ptr %8, align 4, !tbaa !5
  %21150 = mul nsw i32 33, %21149
  %21151 = add nsw i32 %21148, %21150
  %21152 = sext i32 %21151 to i64
  %21153 = getelementptr inbounds double, ptr %21147, i64 %21152
  %21154 = load double, ptr %21153, align 8, !tbaa !11
  %21155 = call double @llvm.fmuladd.f64(double 0x3C9AC00000000000, double %21154, double %21146)
  %21156 = load ptr, ptr %7, align 8, !tbaa !9
  %21157 = load i32, ptr %12, align 4, !tbaa !5
  %21158 = load i32, ptr %8, align 4, !tbaa !5
  %21159 = mul nsw i32 34, %21158
  %21160 = add nsw i32 %21157, %21159
  %21161 = sext i32 %21160 to i64
  %21162 = getelementptr inbounds double, ptr %21156, i64 %21161
  %21163 = load double, ptr %21162, align 8, !tbaa !11
  %21164 = call double @llvm.fmuladd.f64(double 0xBC8C000000000000, double %21163, double %21155)
  %21165 = load ptr, ptr %7, align 8, !tbaa !9
  %21166 = load i32, ptr %12, align 4, !tbaa !5
  %21167 = load i32, ptr %8, align 4, !tbaa !5
  %21168 = mul nsw i32 35, %21167
  %21169 = add nsw i32 %21166, %21168
  %21170 = sext i32 %21169 to i64
  %21171 = getelementptr inbounds double, ptr %21165, i64 %21170
  %21172 = load double, ptr %21171, align 8, !tbaa !11
  %21173 = call double @llvm.fmuladd.f64(double 0xBC89FFFFFFFFFFFF, double %21172, double %21164)
  %21174 = load ptr, ptr %7, align 8, !tbaa !9
  %21175 = load i32, ptr %12, align 4, !tbaa !5
  %21176 = load i32, ptr %8, align 4, !tbaa !5
  %21177 = mul nsw i32 36, %21176
  %21178 = add nsw i32 %21175, %21177
  %21179 = sext i32 %21178 to i64
  %21180 = getelementptr inbounds double, ptr %21174, i64 %21179
  %21181 = load double, ptr %21180, align 8, !tbaa !11
  %21182 = call double @llvm.fmuladd.f64(double 0xBCA65FFFFFFFFFFF, double %21181, double %21173)
  %21183 = load ptr, ptr %7, align 8, !tbaa !9
  %21184 = load i32, ptr %12, align 4, !tbaa !5
  %21185 = load i32, ptr %8, align 4, !tbaa !5
  %21186 = mul nsw i32 37, %21185
  %21187 = add nsw i32 %21184, %21186
  %21188 = sext i32 %21187 to i64
  %21189 = getelementptr inbounds double, ptr %21183, i64 %21188
  %21190 = load double, ptr %21189, align 8, !tbaa !11
  %21191 = call double @llvm.fmuladd.f64(double 0x3CB9100000000000, double %21190, double %21182)
  %21192 = load ptr, ptr %7, align 8, !tbaa !9
  %21193 = load i32, ptr %12, align 4, !tbaa !5
  %21194 = load i32, ptr %8, align 4, !tbaa !5
  %21195 = mul nsw i32 38, %21194
  %21196 = add nsw i32 %21193, %21195
  %21197 = sext i32 %21196 to i64
  %21198 = getelementptr inbounds double, ptr %21192, i64 %21197
  %21199 = load double, ptr %21198, align 8, !tbaa !11
  %21200 = call double @llvm.fmuladd.f64(double 0x3C7FFFFFFFFFFFFF, double %21199, double %21191)
  %21201 = load ptr, ptr %7, align 8, !tbaa !9
  %21202 = load i32, ptr %12, align 4, !tbaa !5
  %21203 = load i32, ptr %8, align 4, !tbaa !5
  %21204 = mul nsw i32 39, %21203
  %21205 = add nsw i32 %21202, %21204
  %21206 = sext i32 %21205 to i64
  %21207 = getelementptr inbounds double, ptr %21201, i64 %21206
  %21208 = load double, ptr %21207, align 8, !tbaa !11
  %21209 = call double @llvm.fmuladd.f64(double 0x3C8C000000000000, double %21208, double %21200)
  store double %21209, ptr %11, align 8, !tbaa !11
  %21210 = load double, ptr %11, align 8, !tbaa !11
  %21211 = load ptr, ptr %9, align 8, !tbaa !9
  %21212 = load i32, ptr %12, align 4, !tbaa !5
  %21213 = load i32, ptr %10, align 4, !tbaa !5
  %21214 = mul nsw i32 58, %21213
  %21215 = add nsw i32 %21212, %21214
  %21216 = sext i32 %21215 to i64
  %21217 = getelementptr inbounds double, ptr %21211, i64 %21216
  store double %21210, ptr %21217, align 8, !tbaa !11
  %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 0, %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 = load ptr, ptr %7, align 8, !tbaa !9
  %21227 = load i32, ptr %12, align 4, !tbaa !5
  %21228 = load i32, ptr %8, align 4, !tbaa !5
  %21229 = mul nsw i32 1, %21228
  %21230 = add nsw i32 %21227, %21229
  %21231 = sext i32 %21230 to i64
  %21232 = getelementptr inbounds double, ptr %21226, i64 %21231
  %21233 = load double, ptr %21232, align 8, !tbaa !11
  %21234 = fmul double 0xBC94000000000000, %21233
  %21235 = call double @llvm.fmuladd.f64(double 0x3CAE000000000002, double %21225, double %21234)
  %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 2, %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 0x3CB3000000000000, 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 3, %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 0xBCB0400000000000, 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 4, %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 0x3CA8000000000001, 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 5, %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 0x3CACFFFFFFFFFFFF, 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 6, %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 0x3C9CFFFFFFFFFFFF, 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 7, %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 0xBC70000000000001, 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 8, %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 0xBC98000000000000, 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 9, %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 0xBCB3FFFFFFFFFFFF, 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 10, %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 0xBF83152016E0EC70, 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 11, %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 0x3FF4EC1BB3FDC612, double %21324, double %21316)
  %21326 = load ptr, ptr %7, align 8, !tbaa !9
  %21327 = load i32, ptr %12, align 4, !tbaa !5
  %21328 = load i32, ptr %8, align 4, !tbaa !5
  %21329 = mul nsw i32 12, %21328
  %21330 = add nsw i32 %21327, %21329
  %21331 = sext i32 %21330 to i64
  %21332 = getelementptr inbounds double, ptr %21326, i64 %21331
  %21333 = load double, ptr %21332, align 8, !tbaa !11
  %21334 = call double @llvm.fmuladd.f64(double 0x3F938CE4890DB2E5, double %21333, double %21325)
  %21335 = load ptr, ptr %7, align 8, !tbaa !9
  %21336 = load i32, ptr %12, align 4, !tbaa !5
  %21337 = load i32, ptr %8, align 4, !tbaa !5
  %21338 = mul nsw i32 13, %21337
  %21339 = add nsw i32 %21336, %21338
  %21340 = sext i32 %21339 to i64
  %21341 = getelementptr inbounds double, ptr %21335, i64 %21340
  %21342 = load double, ptr %21341, align 8, !tbaa !11
  %21343 = call double @llvm.fmuladd.f64(double 0xBFB5B58B4F03B1B0, double %21342, double %21334)
  %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 14, %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 = call double @llvm.fmuladd.f64(double 0xBFB49217631F5930, double %21351, double %21343)
  %21353 = load ptr, ptr %7, align 8, !tbaa !9
  %21354 = load i32, ptr %12, align 4, !tbaa !5
  %21355 = load i32, ptr %8, align 4, !tbaa !5
  %21356 = mul nsw i32 15, %21355
  %21357 = add nsw i32 %21354, %21356
  %21358 = sext i32 %21357 to i64
  %21359 = getelementptr inbounds double, ptr %21353, i64 %21358
  %21360 = load double, ptr %21359, align 8, !tbaa !11
  %21361 = call double @llvm.fmuladd.f64(double 0x3FD417DEBFC17B18, double %21360, double %21352)
  %21362 = load ptr, ptr %7, align 8, !tbaa !9
  %21363 = load i32, ptr %12, align 4, !tbaa !5
  %21364 = load i32, ptr %8, align 4, !tbaa !5
  %21365 = mul nsw i32 16, %21364
  %21366 = add nsw i32 %21363, %21365
  %21367 = sext i32 %21366 to i64
  %21368 = getelementptr inbounds double, ptr %21362, i64 %21367
  %21369 = load double, ptr %21368, align 8, !tbaa !11
  %21370 = call double @llvm.fmuladd.f64(double 0xBF8BDAF699AECF31, double %21369, double %21361)
  %21371 = load ptr, ptr %7, align 8, !tbaa !9
  %21372 = load i32, ptr %12, align 4, !tbaa !5
  %21373 = load i32, ptr %8, align 4, !tbaa !5
  %21374 = mul nsw i32 17, %21373
  %21375 = add nsw i32 %21372, %21374
  %21376 = sext i32 %21375 to i64
  %21377 = getelementptr inbounds double, ptr %21371, i64 %21376
  %21378 = load double, ptr %21377, align 8, !tbaa !11
  %21379 = call double @llvm.fmuladd.f64(double 0x3F85E50BB681A306, double %21378, double %21370)
  %21380 = load ptr, ptr %7, align 8, !tbaa !9
  %21381 = load i32, ptr %12, align 4, !tbaa !5
  %21382 = load i32, ptr %8, align 4, !tbaa !5
  %21383 = mul nsw i32 18, %21382
  %21384 = add nsw i32 %21381, %21383
  %21385 = sext i32 %21384 to i64
  %21386 = getelementptr inbounds double, ptr %21380, i64 %21385
  %21387 = load double, ptr %21386, align 8, !tbaa !11
  %21388 = call double @llvm.fmuladd.f64(double 0xBFE5679E70A6065E, double %21387, double %21379)
  %21389 = load ptr, ptr %7, align 8, !tbaa !9
  %21390 = load i32, ptr %12, align 4, !tbaa !5
  %21391 = load i32, ptr %8, align 4, !tbaa !5
  %21392 = mul nsw i32 19, %21391
  %21393 = add nsw i32 %21390, %21392
  %21394 = sext i32 %21393 to i64
  %21395 = getelementptr inbounds double, ptr %21389, i64 %21394
  %21396 = load double, ptr %21395, align 8, !tbaa !11
  %21397 = call double @llvm.fmuladd.f64(double 0x3FCA50C41AB7A334, double %21396, double %21388)
  %21398 = load ptr, ptr %7, align 8, !tbaa !9
  %21399 = load i32, ptr %12, align 4, !tbaa !5
  %21400 = load i32, ptr %8, align 4, !tbaa !5
  %21401 = mul nsw i32 22, %21400
  %21402 = add nsw i32 %21399, %21401
  %21403 = sext i32 %21402 to i64
  %21404 = getelementptr inbounds double, ptr %21398, i64 %21403
  %21405 = load double, ptr %21404, align 8, !tbaa !11
  %21406 = call double @llvm.fmuladd.f64(double 0x3C9DFFFFFFFFFFFE, double %21405, double %21397)
  %21407 = load ptr, ptr %7, align 8, !tbaa !9
  %21408 = load i32, ptr %12, align 4, !tbaa !5
  %21409 = load i32, ptr %8, align 4, !tbaa !5
  %21410 = mul nsw i32 24, %21409
  %21411 = add nsw i32 %21408, %21410
  %21412 = sext i32 %21411 to i64
  %21413 = getelementptr inbounds double, ptr %21407, i64 %21412
  %21414 = load double, ptr %21413, align 8, !tbaa !11
  %21415 = call double @llvm.fmuladd.f64(double 0xBCBC000000000000, double %21414, double %21406)
  %21416 = load ptr, ptr %7, align 8, !tbaa !9
  %21417 = load i32, ptr %12, align 4, !tbaa !5
  %21418 = load i32, ptr %8, align 4, !tbaa !5
  %21419 = mul nsw i32 25, %21418
  %21420 = add nsw i32 %21417, %21419
  %21421 = sext i32 %21420 to i64
  %21422 = getelementptr inbounds double, ptr %21416, i64 %21421
  %21423 = load double, ptr %21422, align 8, !tbaa !11
  %21424 = call double @llvm.fmuladd.f64(double 0x3CB2000000000000, double %21423, double %21415)
  %21425 = load ptr, ptr %7, align 8, !tbaa !9
  %21426 = load i32, ptr %12, align 4, !tbaa !5
  %21427 = load i32, ptr %8, align 4, !tbaa !5
  %21428 = mul nsw i32 26, %21427
  %21429 = add nsw i32 %21426, %21428
  %21430 = sext i32 %21429 to i64
  %21431 = getelementptr inbounds double, ptr %21425, i64 %21430
  %21432 = load double, ptr %21431, align 8, !tbaa !11
  %21433 = call double @llvm.fmuladd.f64(double 0xBC88000000000000, double %21432, double %21424)
  %21434 = load ptr, ptr %7, align 8, !tbaa !9
  %21435 = load i32, ptr %12, align 4, !tbaa !5
  %21436 = load i32, ptr %8, align 4, !tbaa !5
  %21437 = mul nsw i32 27, %21436
  %21438 = add nsw i32 %21435, %21437
  %21439 = sext i32 %21438 to i64
  %21440 = getelementptr inbounds double, ptr %21434, i64 %21439
  %21441 = load double, ptr %21440, align 8, !tbaa !11
  %21442 = call double @llvm.fmuladd.f64(double 0x3CBC000000000000, double %21441, double %21433)
  %21443 = load ptr, ptr %7, align 8, !tbaa !9
  %21444 = load i32, ptr %12, align 4, !tbaa !5
  %21445 = load i32, ptr %8, align 4, !tbaa !5
  %21446 = mul nsw i32 28, %21445
  %21447 = add nsw i32 %21444, %21446
  %21448 = sext i32 %21447 to i64
  %21449 = getelementptr inbounds double, ptr %21443, i64 %21448
  %21450 = load double, ptr %21449, align 8, !tbaa !11
  %21451 = call double @llvm.fmuladd.f64(double 0x3CB3FFFFFFFFFFFF, double %21450, double %21442)
  %21452 = load ptr, ptr %7, align 8, !tbaa !9
  %21453 = load i32, ptr %12, align 4, !tbaa !5
  %21454 = load i32, ptr %8, align 4, !tbaa !5
  %21455 = mul nsw i32 29, %21454
  %21456 = add nsw i32 %21453, %21455
  %21457 = sext i32 %21456 to i64
  %21458 = getelementptr inbounds double, ptr %21452, i64 %21457
  %21459 = load double, ptr %21458, align 8, !tbaa !11
  %21460 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %21459, double %21451)
  %21461 = load ptr, ptr %7, align 8, !tbaa !9
  %21462 = load i32, ptr %12, align 4, !tbaa !5
  %21463 = load i32, ptr %8, align 4, !tbaa !5
  %21464 = mul nsw i32 30, %21463
  %21465 = add nsw i32 %21462, %21464
  %21466 = sext i32 %21465 to i64
  %21467 = getelementptr inbounds double, ptr %21461, i64 %21466
  %21468 = load double, ptr %21467, align 8, !tbaa !11
  %21469 = call double @llvm.fmuladd.f64(double 0x3C88000000000000, double %21468, double %21460)
  %21470 = load ptr, ptr %7, align 8, !tbaa !9
  %21471 = load i32, ptr %12, align 4, !tbaa !5
  %21472 = load i32, ptr %8, align 4, !tbaa !5
  %21473 = mul nsw i32 31, %21472
  %21474 = add nsw i32 %21471, %21473
  %21475 = sext i32 %21474 to i64
  %21476 = getelementptr inbounds double, ptr %21470, i64 %21475
  %21477 = load double, ptr %21476, align 8, !tbaa !11
  %21478 = call double @llvm.fmuladd.f64(double 0x3CB3FFFFFFFFFFFF, double %21477, double %21469)
  %21479 = load ptr, ptr %7, align 8, !tbaa !9
  %21480 = load i32, ptr %12, align 4, !tbaa !5
  %21481 = load i32, ptr %8, align 4, !tbaa !5
  %21482 = mul nsw i32 32, %21481
  %21483 = add nsw i32 %21480, %21482
  %21484 = sext i32 %21483 to i64
  %21485 = getelementptr inbounds double, ptr %21479, i64 %21484
  %21486 = load double, ptr %21485, align 8, !tbaa !11
  %21487 = call double @llvm.fmuladd.f64(double 0x3CA1800000000000, double %21486, double %21478)
  %21488 = load ptr, ptr %7, align 8, !tbaa !9
  %21489 = load i32, ptr %12, align 4, !tbaa !5
  %21490 = load i32, ptr %8, align 4, !tbaa !5
  %21491 = mul nsw i32 33, %21490
  %21492 = add nsw i32 %21489, %21491
  %21493 = sext i32 %21492 to i64
  %21494 = getelementptr inbounds double, ptr %21488, i64 %21493
  %21495 = load double, ptr %21494, align 8, !tbaa !11
  %21496 = call double @llvm.fmuladd.f64(double 0x3C84000000000000, double %21495, double %21487)
  %21497 = load ptr, ptr %7, align 8, !tbaa !9
  %21498 = load i32, ptr %12, align 4, !tbaa !5
  %21499 = load i32, ptr %8, align 4, !tbaa !5
  %21500 = mul nsw i32 34, %21499
  %21501 = add nsw i32 %21498, %21500
  %21502 = sext i32 %21501 to i64
  %21503 = getelementptr inbounds double, ptr %21497, i64 %21502
  %21504 = load double, ptr %21503, align 8, !tbaa !11
  %21505 = call double @llvm.fmuladd.f64(double 0xBCA5000000000000, double %21504, double %21496)
  %21506 = load ptr, ptr %7, align 8, !tbaa !9
  %21507 = load i32, ptr %12, align 4, !tbaa !5
  %21508 = load i32, ptr %8, align 4, !tbaa !5
  %21509 = mul nsw i32 35, %21508
  %21510 = add nsw i32 %21507, %21509
  %21511 = sext i32 %21510 to i64
  %21512 = getelementptr inbounds double, ptr %21506, i64 %21511
  %21513 = load double, ptr %21512, align 8, !tbaa !11
  %21514 = call double @llvm.fmuladd.f64(double 0xBC84000000000000, double %21513, double %21505)
  %21515 = load ptr, ptr %7, align 8, !tbaa !9
  %21516 = load i32, ptr %12, align 4, !tbaa !5
  %21517 = load i32, ptr %8, align 4, !tbaa !5
  %21518 = mul nsw i32 36, %21517
  %21519 = add nsw i32 %21516, %21518
  %21520 = sext i32 %21519 to i64
  %21521 = getelementptr inbounds double, ptr %21515, i64 %21520
  %21522 = load double, ptr %21521, align 8, !tbaa !11
  %21523 = call double @llvm.fmuladd.f64(double 0xBC9B000000000000, double %21522, double %21514)
  %21524 = load ptr, ptr %7, align 8, !tbaa !9
  %21525 = load i32, ptr %12, align 4, !tbaa !5
  %21526 = load i32, ptr %8, align 4, !tbaa !5
  %21527 = mul nsw i32 37, %21526
  %21528 = add nsw i32 %21525, %21527
  %21529 = sext i32 %21528 to i64
  %21530 = getelementptr inbounds double, ptr %21524, i64 %21529
  %21531 = load double, ptr %21530, align 8, !tbaa !11
  %21532 = call double @llvm.fmuladd.f64(double 0xBC67FFFFFFFFFFFE, double %21531, double %21523)
  %21533 = load ptr, ptr %7, align 8, !tbaa !9
  %21534 = load i32, ptr %12, align 4, !tbaa !5
  %21535 = load i32, ptr %8, align 4, !tbaa !5
  %21536 = mul nsw i32 38, %21535
  %21537 = add nsw i32 %21534, %21536
  %21538 = sext i32 %21537 to i64
  %21539 = getelementptr inbounds double, ptr %21533, i64 %21538
  %21540 = load double, ptr %21539, align 8, !tbaa !11
  %21541 = call double @llvm.fmuladd.f64(double 0x3CB1000000000001, double %21540, double %21532)
  %21542 = load ptr, ptr %7, align 8, !tbaa !9
  %21543 = load i32, ptr %12, align 4, !tbaa !5
  %21544 = load i32, ptr %8, align 4, !tbaa !5
  %21545 = mul nsw i32 39, %21544
  %21546 = add nsw i32 %21543, %21545
  %21547 = sext i32 %21546 to i64
  %21548 = getelementptr inbounds double, ptr %21542, i64 %21547
  %21549 = load double, ptr %21548, align 8, !tbaa !11
  %21550 = call double @llvm.fmuladd.f64(double 0x3C9C000000000000, double %21549, double %21541)
  store double %21550, ptr %11, align 8, !tbaa !11
  %21551 = load double, ptr %11, align 8, !tbaa !11
  %21552 = load ptr, ptr %9, align 8, !tbaa !9
  %21553 = load i32, ptr %12, align 4, !tbaa !5
  %21554 = load i32, ptr %10, align 4, !tbaa !5
  %21555 = mul nsw i32 59, %21554
  %21556 = add nsw i32 %21553, %21555
  %21557 = sext i32 %21556 to i64
  %21558 = getelementptr inbounds double, ptr %21552, i64 %21557
  store double %21551, ptr %21558, align 8, !tbaa !11
  %21559 = load ptr, ptr %7, align 8, !tbaa !9
  %21560 = load i32, ptr %12, align 4, !tbaa !5
  %21561 = load i32, ptr %8, align 4, !tbaa !5
  %21562 = mul nsw i32 0, %21561
  %21563 = add nsw i32 %21560, %21562
  %21564 = sext i32 %21563 to i64
  %21565 = getelementptr inbounds double, ptr %21559, i64 %21564
  %21566 = load double, ptr %21565, align 8, !tbaa !11
  %21567 = load ptr, ptr %7, align 8, !tbaa !9
  %21568 = load i32, ptr %12, align 4, !tbaa !5
  %21569 = load i32, ptr %8, align 4, !tbaa !5
  %21570 = mul nsw i32 1, %21569
  %21571 = add nsw i32 %21568, %21570
  %21572 = sext i32 %21571 to i64
  %21573 = getelementptr inbounds double, ptr %21567, i64 %21572
  %21574 = load double, ptr %21573, align 8, !tbaa !11
  %21575 = fmul double 0xBCA1800000000000, %21574
  %21576 = call double @llvm.fmuladd.f64(double 0xBCCEC00000000000, double %21566, double %21575)
  %21577 = load ptr, ptr %7, align 8, !tbaa !9
  %21578 = load i32, ptr %12, align 4, !tbaa !5
  %21579 = load i32, ptr %8, align 4, !tbaa !5
  %21580 = mul nsw i32 2, %21579
  %21581 = add nsw i32 %21578, %21580
  %21582 = sext i32 %21581 to i64
  %21583 = getelementptr inbounds double, ptr %21577, i64 %21582
  %21584 = load double, ptr %21583, align 8, !tbaa !11
  %21585 = call double @llvm.fmuladd.f64(double 0x3CBEF00000000001, double %21584, double %21576)
  %21586 = load ptr, ptr %7, align 8, !tbaa !9
  %21587 = load i32, ptr %12, align 4, !tbaa !5
  %21588 = load i32, ptr %8, align 4, !tbaa !5
  %21589 = mul nsw i32 3, %21588
  %21590 = add nsw i32 %21587, %21589
  %21591 = sext i32 %21590 to i64
  %21592 = getelementptr inbounds double, ptr %21586, i64 %21591
  %21593 = load double, ptr %21592, align 8, !tbaa !11
  %21594 = call double @llvm.fmuladd.f64(double 0xBCA4000000000001, double %21593, double %21585)
  %21595 = load ptr, ptr %7, align 8, !tbaa !9
  %21596 = load i32, ptr %12, align 4, !tbaa !5
  %21597 = load i32, ptr %8, align 4, !tbaa !5
  %21598 = mul nsw i32 4, %21597
  %21599 = add nsw i32 %21596, %21598
  %21600 = sext i32 %21599 to i64
  %21601 = getelementptr inbounds double, ptr %21595, i64 %21600
  %21602 = load double, ptr %21601, align 8, !tbaa !11
  %21603 = call double @llvm.fmuladd.f64(double 0xBC8C800000000000, double %21602, double %21594)
  %21604 = load ptr, ptr %7, align 8, !tbaa !9
  %21605 = load i32, ptr %12, align 4, !tbaa !5
  %21606 = load i32, ptr %8, align 4, !tbaa !5
  %21607 = mul nsw i32 5, %21606
  %21608 = add nsw i32 %21605, %21607
  %21609 = sext i32 %21608 to i64
  %21610 = getelementptr inbounds double, ptr %21604, i64 %21609
  %21611 = load double, ptr %21610, align 8, !tbaa !11
  %21612 = call double @llvm.fmuladd.f64(double 0xBCA1800000000000, double %21611, double %21603)
  %21613 = load ptr, ptr %7, align 8, !tbaa !9
  %21614 = load i32, ptr %12, align 4, !tbaa !5
  %21615 = load i32, ptr %8, align 4, !tbaa !5
  %21616 = mul nsw i32 6, %21615
  %21617 = add nsw i32 %21614, %21616
  %21618 = sext i32 %21617 to i64
  %21619 = getelementptr inbounds double, ptr %21613, i64 %21618
  %21620 = load double, ptr %21619, align 8, !tbaa !11
  %21621 = call double @llvm.fmuladd.f64(double 0x3C8CA00000000000, double %21620, double %21612)
  %21622 = load ptr, ptr %7, align 8, !tbaa !9
  %21623 = load i32, ptr %12, align 4, !tbaa !5
  %21624 = load i32, ptr %8, align 4, !tbaa !5
  %21625 = mul nsw i32 7, %21624
  %21626 = add nsw i32 %21623, %21625
  %21627 = sext i32 %21626 to i64
  %21628 = getelementptr inbounds double, ptr %21622, i64 %21627
  %21629 = load double, ptr %21628, align 8, !tbaa !11
  %21630 = call double @llvm.fmuladd.f64(double 0x3C61800000000000, double %21629, double %21621)
  %21631 = load ptr, ptr %7, align 8, !tbaa !9
  %21632 = load i32, ptr %12, align 4, !tbaa !5
  %21633 = load i32, ptr %8, align 4, !tbaa !5
  %21634 = mul nsw i32 8, %21633
  %21635 = add nsw i32 %21632, %21634
  %21636 = sext i32 %21635 to i64
  %21637 = getelementptr inbounds double, ptr %21631, i64 %21636
  %21638 = load double, ptr %21637, align 8, !tbaa !11
  %21639 = call double @llvm.fmuladd.f64(double 0xBCA1C00000000000, double %21638, double %21630)
  %21640 = load ptr, ptr %7, align 8, !tbaa !9
  %21641 = load i32, ptr %12, align 4, !tbaa !5
  %21642 = load i32, ptr %8, align 4, !tbaa !5
  %21643 = mul nsw i32 9, %21642
  %21644 = add nsw i32 %21641, %21643
  %21645 = sext i32 %21644 to i64
  %21646 = getelementptr inbounds double, ptr %21640, i64 %21645
  %21647 = load double, ptr %21646, align 8, !tbaa !11
  %21648 = call double @llvm.fmuladd.f64(double 0xBC70000000000001, double %21647, double %21639)
  %21649 = load ptr, ptr %7, align 8, !tbaa !9
  %21650 = load i32, ptr %12, align 4, !tbaa !5
  %21651 = load i32, ptr %8, align 4, !tbaa !5
  %21652 = mul nsw i32 10, %21651
  %21653 = add nsw i32 %21650, %21652
  %21654 = sext i32 %21653 to i64
  %21655 = getelementptr inbounds double, ptr %21649, i64 %21654
  %21656 = load double, ptr %21655, align 8, !tbaa !11
  %21657 = call double @llvm.fmuladd.f64(double 0x3CC3E00000000000, double %21656, double %21648)
  %21658 = load ptr, ptr %7, align 8, !tbaa !9
  %21659 = load i32, ptr %12, align 4, !tbaa !5
  %21660 = load i32, ptr %8, align 4, !tbaa !5
  %21661 = mul nsw i32 11, %21660
  %21662 = add nsw i32 %21659, %21661
  %21663 = sext i32 %21662 to i64
  %21664 = getelementptr inbounds double, ptr %21658, i64 %21663
  %21665 = load double, ptr %21664, align 8, !tbaa !11
  %21666 = call double @llvm.fmuladd.f64(double 0x3CA0000000000002, double %21665, double %21657)
  %21667 = load ptr, ptr %7, align 8, !tbaa !9
  %21668 = load i32, ptr %12, align 4, !tbaa !5
  %21669 = load i32, ptr %8, align 4, !tbaa !5
  %21670 = mul nsw i32 12, %21669
  %21671 = add nsw i32 %21668, %21670
  %21672 = sext i32 %21671 to i64
  %21673 = getelementptr inbounds double, ptr %21667, i64 %21672
  %21674 = load double, ptr %21673, align 8, !tbaa !11
  %21675 = call double @llvm.fmuladd.f64(double 0x3CB937FFFFFFFFFF, double %21674, double %21666)
  %21676 = load ptr, ptr %7, align 8, !tbaa !9
  %21677 = load i32, ptr %12, align 4, !tbaa !5
  %21678 = load i32, ptr %8, align 4, !tbaa !5
  %21679 = mul nsw i32 13, %21678
  %21680 = add nsw i32 %21677, %21679
  %21681 = sext i32 %21680 to i64
  %21682 = getelementptr inbounds double, ptr %21676, i64 %21681
  %21683 = load double, ptr %21682, align 8, !tbaa !11
  %21684 = call double @llvm.fmuladd.f64(double 0xBCA4B00000000001, double %21683, double %21675)
  %21685 = load ptr, ptr %7, align 8, !tbaa !9
  %21686 = load i32, ptr %12, align 4, !tbaa !5
  %21687 = load i32, ptr %8, align 4, !tbaa !5
  %21688 = mul nsw i32 14, %21687
  %21689 = add nsw i32 %21686, %21688
  %21690 = sext i32 %21689 to i64
  %21691 = getelementptr inbounds double, ptr %21685, i64 %21690
  %21692 = load double, ptr %21691, align 8, !tbaa !11
  %21693 = call double @llvm.fmuladd.f64(double 0xBCBAC00000000000, double %21692, double %21684)
  %21694 = load ptr, ptr %7, align 8, !tbaa !9
  %21695 = load i32, ptr %12, align 4, !tbaa !5
  %21696 = load i32, ptr %8, align 4, !tbaa !5
  %21697 = mul nsw i32 15, %21696
  %21698 = add nsw i32 %21695, %21697
  %21699 = sext i32 %21698 to i64
  %21700 = getelementptr inbounds double, ptr %21694, i64 %21699
  %21701 = load double, ptr %21700, align 8, !tbaa !11
  %21702 = call double @llvm.fmuladd.f64(double 0xBCA3C00000000002, double %21701, double %21693)
  %21703 = load ptr, ptr %7, align 8, !tbaa !9
  %21704 = load i32, ptr %12, align 4, !tbaa !5
  %21705 = load i32, ptr %8, align 4, !tbaa !5
  %21706 = mul nsw i32 16, %21705
  %21707 = add nsw i32 %21704, %21706
  %21708 = sext i32 %21707 to i64
  %21709 = getelementptr inbounds double, ptr %21703, i64 %21708
  %21710 = load double, ptr %21709, align 8, !tbaa !11
  %21711 = call double @llvm.fmuladd.f64(double 0x3C9C400000000000, double %21710, double %21702)
  %21712 = load ptr, ptr %7, align 8, !tbaa !9
  %21713 = load i32, ptr %12, align 4, !tbaa !5
  %21714 = load i32, ptr %8, align 4, !tbaa !5
  %21715 = mul nsw i32 17, %21714
  %21716 = add nsw i32 %21713, %21715
  %21717 = sext i32 %21716 to i64
  %21718 = getelementptr inbounds double, ptr %21712, i64 %21717
  %21719 = load double, ptr %21718, align 8, !tbaa !11
  %21720 = call double @llvm.fmuladd.f64(double 0x3CBB800000000001, double %21719, double %21711)
  %21721 = load ptr, ptr %7, align 8, !tbaa !9
  %21722 = load i32, ptr %12, align 4, !tbaa !5
  %21723 = load i32, ptr %8, align 4, !tbaa !5
  %21724 = mul nsw i32 18, %21723
  %21725 = add nsw i32 %21722, %21724
  %21726 = sext i32 %21725 to i64
  %21727 = getelementptr inbounds double, ptr %21721, i64 %21726
  %21728 = load double, ptr %21727, align 8, !tbaa !11
  %21729 = call double @llvm.fmuladd.f64(double 0xBC74000000000000, double %21728, double %21720)
  %21730 = load ptr, ptr %7, align 8, !tbaa !9
  %21731 = load i32, ptr %12, align 4, !tbaa !5
  %21732 = load i32, ptr %8, align 4, !tbaa !5
  %21733 = mul nsw i32 19, %21732
  %21734 = add nsw i32 %21731, %21733
  %21735 = sext i32 %21734 to i64
  %21736 = getelementptr inbounds double, ptr %21730, i64 %21735
  %21737 = load double, ptr %21736, align 8, !tbaa !11
  %21738 = call double @llvm.fmuladd.f64(double 0xBC9A000000000000, double %21737, double %21729)
  %21739 = load ptr, ptr %7, align 8, !tbaa !9
  %21740 = load i32, ptr %12, align 4, !tbaa !5
  %21741 = load i32, ptr %8, align 4, !tbaa !5
  %21742 = mul nsw i32 20, %21741
  %21743 = add nsw i32 %21740, %21742
  %21744 = sext i32 %21743 to i64
  %21745 = getelementptr inbounds double, ptr %21739, i64 %21744
  %21746 = load double, ptr %21745, align 8, !tbaa !11
  %21747 = call double @llvm.fmuladd.f64(double 0xBF83152016E0EC8E, double %21746, double %21738)
  %21748 = load ptr, ptr %7, align 8, !tbaa !9
  %21749 = load i32, ptr %12, align 4, !tbaa !5
  %21750 = load i32, ptr %8, align 4, !tbaa !5
  %21751 = mul nsw i32 21, %21750
  %21752 = add nsw i32 %21749, %21751
  %21753 = sext i32 %21752 to i64
  %21754 = getelementptr inbounds double, ptr %21748, i64 %21753
  %21755 = load double, ptr %21754, align 8, !tbaa !11
  %21756 = call double @llvm.fmuladd.f64(double 0x3F938CE4890DB2EB, double %21755, double %21747)
  %21757 = load ptr, ptr %7, align 8, !tbaa !9
  %21758 = load i32, ptr %12, align 4, !tbaa !5
  %21759 = load i32, ptr %8, align 4, !tbaa !5
  %21760 = mul nsw i32 22, %21759
  %21761 = add nsw i32 %21758, %21760
  %21762 = sext i32 %21761 to i64
  %21763 = getelementptr inbounds double, ptr %21757, i64 %21762
  %21764 = load double, ptr %21763, align 8, !tbaa !11
  %21765 = call double @llvm.fmuladd.f64(double 0x3FF4EC1BB3FDC61B, double %21764, double %21756)
  %21766 = load ptr, ptr %7, align 8, !tbaa !9
  %21767 = load i32, ptr %12, align 4, !tbaa !5
  %21768 = load i32, ptr %8, align 4, !tbaa !5
  %21769 = mul nsw i32 23, %21768
  %21770 = add nsw i32 %21767, %21769
  %21771 = sext i32 %21770 to i64
  %21772 = getelementptr inbounds double, ptr %21766, i64 %21771
  %21773 = load double, ptr %21772, align 8, !tbaa !11
  %21774 = call double @llvm.fmuladd.f64(double 0xBFB5B58B4F03B184, double %21773, double %21765)
  %21775 = load ptr, ptr %7, align 8, !tbaa !9
  %21776 = load i32, ptr %12, align 4, !tbaa !5
  %21777 = load i32, ptr %8, align 4, !tbaa !5
  %21778 = mul nsw i32 24, %21777
  %21779 = add nsw i32 %21776, %21778
  %21780 = sext i32 %21779 to i64
  %21781 = getelementptr inbounds double, ptr %21775, i64 %21780
  %21782 = load double, ptr %21781, align 8, !tbaa !11
  %21783 = call double @llvm.fmuladd.f64(double 0x3FCA50C41AB7A334, double %21782, double %21774)
  %21784 = load ptr, ptr %7, align 8, !tbaa !9
  %21785 = load i32, ptr %12, align 4, !tbaa !5
  %21786 = load i32, ptr %8, align 4, !tbaa !5
  %21787 = mul nsw i32 25, %21786
  %21788 = add nsw i32 %21785, %21787
  %21789 = sext i32 %21788 to i64
  %21790 = getelementptr inbounds double, ptr %21784, i64 %21789
  %21791 = load double, ptr %21790, align 8, !tbaa !11
  %21792 = call double @llvm.fmuladd.f64(double 0xBF8BDAF699AECF9F, double %21791, double %21783)
  %21793 = load ptr, ptr %7, align 8, !tbaa !9
  %21794 = load i32, ptr %12, align 4, !tbaa !5
  %21795 = load i32, ptr %8, align 4, !tbaa !5
  %21796 = mul nsw i32 26, %21795
  %21797 = add nsw i32 %21794, %21796
  %21798 = sext i32 %21797 to i64
  %21799 = getelementptr inbounds double, ptr %21793, i64 %21798
  %21800 = load double, ptr %21799, align 8, !tbaa !11
  %21801 = call double @llvm.fmuladd.f64(double 0x3FD417DEBFC17B27, double %21800, double %21792)
  %21802 = load ptr, ptr %7, align 8, !tbaa !9
  %21803 = load i32, ptr %12, align 4, !tbaa !5
  %21804 = load i32, ptr %8, align 4, !tbaa !5
  %21805 = mul nsw i32 27, %21804
  %21806 = add nsw i32 %21803, %21805
  %21807 = sext i32 %21806 to i64
  %21808 = getelementptr inbounds double, ptr %21802, i64 %21807
  %21809 = load double, ptr %21808, align 8, !tbaa !11
  %21810 = call double @llvm.fmuladd.f64(double 0xBFE5679E70A6066E, double %21809, double %21801)
  %21811 = load ptr, ptr %7, align 8, !tbaa !9
  %21812 = load i32, ptr %12, align 4, !tbaa !5
  %21813 = load i32, ptr %8, align 4, !tbaa !5
  %21814 = mul nsw i32 28, %21813
  %21815 = add nsw i32 %21812, %21814
  %21816 = sext i32 %21815 to i64
  %21817 = getelementptr inbounds double, ptr %21811, i64 %21816
  %21818 = load double, ptr %21817, align 8, !tbaa !11
  %21819 = call double @llvm.fmuladd.f64(double 0x3F85E50BB681A443, double %21818, double %21810)
  %21820 = load ptr, ptr %7, align 8, !tbaa !9
  %21821 = load i32, ptr %12, align 4, !tbaa !5
  %21822 = load i32, ptr %8, align 4, !tbaa !5
  %21823 = mul nsw i32 29, %21822
  %21824 = add nsw i32 %21821, %21823
  %21825 = sext i32 %21824 to i64
  %21826 = getelementptr inbounds double, ptr %21820, i64 %21825
  %21827 = load double, ptr %21826, align 8, !tbaa !11
  %21828 = call double @llvm.fmuladd.f64(double 0xBFB49217631F5948, double %21827, double %21819)
  %21829 = load ptr, ptr %7, align 8, !tbaa !9
  %21830 = load i32, ptr %12, align 4, !tbaa !5
  %21831 = load i32, ptr %8, align 4, !tbaa !5
  %21832 = mul nsw i32 30, %21831
  %21833 = add nsw i32 %21830, %21832
  %21834 = sext i32 %21833 to i64
  %21835 = getelementptr inbounds double, ptr %21829, i64 %21834
  %21836 = load double, ptr %21835, align 8, !tbaa !11
  %21837 = call double @llvm.fmuladd.f64(double 0x3CB1F00000000000, double %21836, double %21828)
  %21838 = load ptr, ptr %7, align 8, !tbaa !9
  %21839 = load i32, ptr %12, align 4, !tbaa !5
  %21840 = load i32, ptr %8, align 4, !tbaa !5
  %21841 = mul nsw i32 31, %21840
  %21842 = add nsw i32 %21839, %21841
  %21843 = sext i32 %21842 to i64
  %21844 = getelementptr inbounds double, ptr %21838, i64 %21843
  %21845 = load double, ptr %21844, align 8, !tbaa !11
  %21846 = call double @llvm.fmuladd.f64(double 0x3C8B800000000001, double %21845, double %21837)
  %21847 = load ptr, ptr %7, align 8, !tbaa !9
  %21848 = load i32, ptr %12, align 4, !tbaa !5
  %21849 = load i32, ptr %8, align 4, !tbaa !5
  %21850 = mul nsw i32 32, %21849
  %21851 = add nsw i32 %21848, %21850
  %21852 = sext i32 %21851 to i64
  %21853 = getelementptr inbounds double, ptr %21847, i64 %21852
  %21854 = load double, ptr %21853, align 8, !tbaa !11
  %21855 = call double @llvm.fmuladd.f64(double 0xBC9EFFFFFFFFFFFD, double %21854, double %21846)
  %21856 = load ptr, ptr %7, align 8, !tbaa !9
  %21857 = load i32, ptr %12, align 4, !tbaa !5
  %21858 = load i32, ptr %8, align 4, !tbaa !5
  %21859 = mul nsw i32 33, %21858
  %21860 = add nsw i32 %21857, %21859
  %21861 = sext i32 %21860 to i64
  %21862 = getelementptr inbounds double, ptr %21856, i64 %21861
  %21863 = load double, ptr %21862, align 8, !tbaa !11
  %21864 = call double @llvm.fmuladd.f64(double 0xBCB5200000000000, double %21863, double %21855)
  %21865 = load ptr, ptr %7, align 8, !tbaa !9
  %21866 = load i32, ptr %12, align 4, !tbaa !5
  %21867 = load i32, ptr %8, align 4, !tbaa !5
  %21868 = mul nsw i32 34, %21867
  %21869 = add nsw i32 %21866, %21868
  %21870 = sext i32 %21869 to i64
  %21871 = getelementptr inbounds double, ptr %21865, i64 %21870
  %21872 = load double, ptr %21871, align 8, !tbaa !11
  %21873 = call double @llvm.fmuladd.f64(double 0x3C76FFFFFFFFFFFF, double %21872, double %21864)
  %21874 = load ptr, ptr %7, align 8, !tbaa !9
  %21875 = load i32, ptr %12, align 4, !tbaa !5
  %21876 = load i32, ptr %8, align 4, !tbaa !5
  %21877 = mul nsw i32 35, %21876
  %21878 = add nsw i32 %21875, %21877
  %21879 = sext i32 %21878 to i64
  %21880 = getelementptr inbounds double, ptr %21874, i64 %21879
  %21881 = load double, ptr %21880, align 8, !tbaa !11
  %21882 = call double @llvm.fmuladd.f64(double 0x3CA9FFFFFFFFFFFE, double %21881, double %21873)
  %21883 = load ptr, ptr %7, align 8, !tbaa !9
  %21884 = load i32, ptr %12, align 4, !tbaa !5
  %21885 = load i32, ptr %8, align 4, !tbaa !5
  %21886 = mul nsw i32 36, %21885
  %21887 = add nsw i32 %21884, %21886
  %21888 = sext i32 %21887 to i64
  %21889 = getelementptr inbounds double, ptr %21883, i64 %21888
  %21890 = load double, ptr %21889, align 8, !tbaa !11
  %21891 = call double @llvm.fmuladd.f64(double 0xBC91B00000000000, double %21890, double %21882)
  %21892 = load ptr, ptr %7, align 8, !tbaa !9
  %21893 = load i32, ptr %12, align 4, !tbaa !5
  %21894 = load i32, ptr %8, align 4, !tbaa !5
  %21895 = mul nsw i32 37, %21894
  %21896 = add nsw i32 %21893, %21895
  %21897 = sext i32 %21896 to i64
  %21898 = getelementptr inbounds double, ptr %21892, i64 %21897
  %21899 = load double, ptr %21898, align 8, !tbaa !11
  %21900 = call double @llvm.fmuladd.f64(double 0x3CBA040000000000, double %21899, double %21891)
  %21901 = load ptr, ptr %7, align 8, !tbaa !9
  %21902 = load i32, ptr %12, align 4, !tbaa !5
  %21903 = load i32, ptr %8, align 4, !tbaa !5
  %21904 = mul nsw i32 38, %21903
  %21905 = add nsw i32 %21902, %21904
  %21906 = sext i32 %21905 to i64
  %21907 = getelementptr inbounds double, ptr %21901, i64 %21906
  %21908 = load double, ptr %21907, align 8, !tbaa !11
  %21909 = call double @llvm.fmuladd.f64(double 0xBC7E000000000001, double %21908, double %21900)
  %21910 = load ptr, ptr %7, align 8, !tbaa !9
  %21911 = load i32, ptr %12, align 4, !tbaa !5
  %21912 = load i32, ptr %8, align 4, !tbaa !5
  %21913 = mul nsw i32 39, %21912
  %21914 = add nsw i32 %21911, %21913
  %21915 = sext i32 %21914 to i64
  %21916 = getelementptr inbounds double, ptr %21910, i64 %21915
  %21917 = load double, ptr %21916, align 8, !tbaa !11
  %21918 = call double @llvm.fmuladd.f64(double 0x3C86000000000001, double %21917, double %21909)
  store double %21918, ptr %11, align 8, !tbaa !11
  %21919 = load double, ptr %11, align 8, !tbaa !11
  %21920 = load ptr, ptr %9, align 8, !tbaa !9
  %21921 = load i32, ptr %12, align 4, !tbaa !5
  %21922 = load i32, ptr %10, align 4, !tbaa !5
  %21923 = mul nsw i32 60, %21922
  %21924 = add nsw i32 %21921, %21923
  %21925 = sext i32 %21924 to i64
  %21926 = getelementptr inbounds double, ptr %21920, i64 %21925
  store double %21919, ptr %21926, align 8, !tbaa !11
  %21927 = load ptr, ptr %7, align 8, !tbaa !9
  %21928 = load i32, ptr %12, align 4, !tbaa !5
  %21929 = load i32, ptr %8, align 4, !tbaa !5
  %21930 = mul nsw i32 0, %21929
  %21931 = add nsw i32 %21928, %21930
  %21932 = sext i32 %21931 to i64
  %21933 = getelementptr inbounds double, ptr %21927, i64 %21932
  %21934 = load double, ptr %21933, align 8, !tbaa !11
  %21935 = load ptr, ptr %7, align 8, !tbaa !9
  %21936 = load i32, ptr %12, align 4, !tbaa !5
  %21937 = load i32, ptr %8, align 4, !tbaa !5
  %21938 = mul nsw i32 1, %21937
  %21939 = add nsw i32 %21936, %21938
  %21940 = sext i32 %21939 to i64
  %21941 = getelementptr inbounds double, ptr %21935, i64 %21940
  %21942 = load double, ptr %21941, align 8, !tbaa !11
  %21943 = fmul double 0x3C81000000000000, %21942
  %21944 = call double @llvm.fmuladd.f64(double 0xBCBCDFFFFFFFFFFF, double %21934, double %21943)
  %21945 = load ptr, ptr %7, align 8, !tbaa !9
  %21946 = load i32, ptr %12, align 4, !tbaa !5
  %21947 = load i32, ptr %8, align 4, !tbaa !5
  %21948 = mul nsw i32 2, %21947
  %21949 = add nsw i32 %21946, %21948
  %21950 = sext i32 %21949 to i64
  %21951 = getelementptr inbounds double, ptr %21945, i64 %21950
  %21952 = load double, ptr %21951, align 8, !tbaa !11
  %21953 = call double @llvm.fmuladd.f64(double 0x3CB7F80000000001, double %21952, double %21944)
  %21954 = load ptr, ptr %7, align 8, !tbaa !9
  %21955 = load i32, ptr %12, align 4, !tbaa !5
  %21956 = load i32, ptr %8, align 4, !tbaa !5
  %21957 = mul nsw i32 3, %21956
  %21958 = add nsw i32 %21955, %21957
  %21959 = sext i32 %21958 to i64
  %21960 = getelementptr inbounds double, ptr %21954, i64 %21959
  %21961 = load double, ptr %21960, align 8, !tbaa !11
  %21962 = call double @llvm.fmuladd.f64(double 0xBCBF600000000000, double %21961, double %21953)
  %21963 = load ptr, ptr %7, align 8, !tbaa !9
  %21964 = load i32, ptr %12, align 4, !tbaa !5
  %21965 = load i32, ptr %8, align 4, !tbaa !5
  %21966 = mul nsw i32 4, %21965
  %21967 = add nsw i32 %21964, %21966
  %21968 = sext i32 %21967 to i64
  %21969 = getelementptr inbounds double, ptr %21963, i64 %21968
  %21970 = load double, ptr %21969, align 8, !tbaa !11
  %21971 = call double @llvm.fmuladd.f64(double 0xBCA2BFFFFFFFFFFF, double %21970, double %21962)
  %21972 = load ptr, ptr %7, align 8, !tbaa !9
  %21973 = load i32, ptr %12, align 4, !tbaa !5
  %21974 = load i32, ptr %8, align 4, !tbaa !5
  %21975 = mul nsw i32 5, %21974
  %21976 = add nsw i32 %21973, %21975
  %21977 = sext i32 %21976 to i64
  %21978 = getelementptr inbounds double, ptr %21972, i64 %21977
  %21979 = load double, ptr %21978, align 8, !tbaa !11
  %21980 = call double @llvm.fmuladd.f64(double 0xBCA4400000000001, double %21979, double %21971)
  %21981 = load ptr, ptr %7, align 8, !tbaa !9
  %21982 = load i32, ptr %12, align 4, !tbaa !5
  %21983 = load i32, ptr %8, align 4, !tbaa !5
  %21984 = mul nsw i32 6, %21983
  %21985 = add nsw i32 %21982, %21984
  %21986 = sext i32 %21985 to i64
  %21987 = getelementptr inbounds double, ptr %21981, i64 %21986
  %21988 = load double, ptr %21987, align 8, !tbaa !11
  %21989 = call double @llvm.fmuladd.f64(double 0x3CAE400000000002, double %21988, double %21980)
  %21990 = load ptr, ptr %7, align 8, !tbaa !9
  %21991 = load i32, ptr %12, align 4, !tbaa !5
  %21992 = load i32, ptr %8, align 4, !tbaa !5
  %21993 = mul nsw i32 7, %21992
  %21994 = add nsw i32 %21991, %21993
  %21995 = sext i32 %21994 to i64
  %21996 = getelementptr inbounds double, ptr %21990, i64 %21995
  %21997 = load double, ptr %21996, align 8, !tbaa !11
  %21998 = call double @llvm.fmuladd.f64(double 0xBCA91FFFFFFFFFFF, double %21997, double %21989)
  %21999 = load ptr, ptr %7, align 8, !tbaa !9
  %22000 = load i32, ptr %12, align 4, !tbaa !5
  %22001 = load i32, ptr %8, align 4, !tbaa !5
  %22002 = mul nsw i32 8, %22001
  %22003 = add nsw i32 %22000, %22002
  %22004 = sext i32 %22003 to i64
  %22005 = getelementptr inbounds double, ptr %21999, i64 %22004
  %22006 = load double, ptr %22005, align 8, !tbaa !11
  %22007 = call double @llvm.fmuladd.f64(double 0xBCB0200000000000, double %22006, double %21998)
  %22008 = load ptr, ptr %7, align 8, !tbaa !9
  %22009 = load i32, ptr %12, align 4, !tbaa !5
  %22010 = load i32, ptr %8, align 4, !tbaa !5
  %22011 = mul nsw i32 9, %22010
  %22012 = add nsw i32 %22009, %22011
  %22013 = sext i32 %22012 to i64
  %22014 = getelementptr inbounds double, ptr %22008, i64 %22013
  %22015 = load double, ptr %22014, align 8, !tbaa !11
  %22016 = call double @llvm.fmuladd.f64(double 0xBC91800000000000, double %22015, double %22007)
  %22017 = load ptr, ptr %7, align 8, !tbaa !9
  %22018 = load i32, ptr %12, align 4, !tbaa !5
  %22019 = load i32, ptr %8, align 4, !tbaa !5
  %22020 = mul nsw i32 10, %22019
  %22021 = add nsw i32 %22018, %22020
  %22022 = sext i32 %22021 to i64
  %22023 = getelementptr inbounds double, ptr %22017, i64 %22022
  %22024 = load double, ptr %22023, align 8, !tbaa !11
  %22025 = call double @llvm.fmuladd.f64(double 0x3CD1000000000000, double %22024, double %22016)
  %22026 = load ptr, ptr %7, align 8, !tbaa !9
  %22027 = load i32, ptr %12, align 4, !tbaa !5
  %22028 = load i32, ptr %8, align 4, !tbaa !5
  %22029 = mul nsw i32 11, %22028
  %22030 = add nsw i32 %22027, %22029
  %22031 = sext i32 %22030 to i64
  %22032 = getelementptr inbounds double, ptr %22026, i64 %22031
  %22033 = load double, ptr %22032, align 8, !tbaa !11
  %22034 = call double @llvm.fmuladd.f64(double 0x3CA4000000000001, double %22033, double %22025)
  %22035 = load ptr, ptr %7, align 8, !tbaa !9
  %22036 = load i32, ptr %12, align 4, !tbaa !5
  %22037 = load i32, ptr %8, align 4, !tbaa !5
  %22038 = mul nsw i32 12, %22037
  %22039 = add nsw i32 %22036, %22038
  %22040 = sext i32 %22039 to i64
  %22041 = getelementptr inbounds double, ptr %22035, i64 %22040
  %22042 = load double, ptr %22041, align 8, !tbaa !11
  %22043 = call double @llvm.fmuladd.f64(double 0x3C9F3FFFFFFFFFFC, double %22042, double %22034)
  %22044 = load ptr, ptr %7, align 8, !tbaa !9
  %22045 = load i32, ptr %12, align 4, !tbaa !5
  %22046 = load i32, ptr %8, align 4, !tbaa !5
  %22047 = mul nsw i32 13, %22046
  %22048 = add nsw i32 %22045, %22047
  %22049 = sext i32 %22048 to i64
  %22050 = getelementptr inbounds double, ptr %22044, i64 %22049
  %22051 = load double, ptr %22050, align 8, !tbaa !11
  %22052 = call double @llvm.fmuladd.f64(double 0xBCC2C80000000000, double %22051, double %22043)
  %22053 = load ptr, ptr %7, align 8, !tbaa !9
  %22054 = load i32, ptr %12, align 4, !tbaa !5
  %22055 = load i32, ptr %8, align 4, !tbaa !5
  %22056 = mul nsw i32 14, %22055
  %22057 = add nsw i32 %22054, %22056
  %22058 = sext i32 %22057 to i64
  %22059 = getelementptr inbounds double, ptr %22053, i64 %22058
  %22060 = load double, ptr %22059, align 8, !tbaa !11
  %22061 = call double @llvm.fmuladd.f64(double 0xBCB9C00000000001, double %22060, double %22052)
  %22062 = load ptr, ptr %7, align 8, !tbaa !9
  %22063 = load i32, ptr %12, align 4, !tbaa !5
  %22064 = load i32, ptr %8, align 4, !tbaa !5
  %22065 = mul nsw i32 15, %22064
  %22066 = add nsw i32 %22063, %22065
  %22067 = sext i32 %22066 to i64
  %22068 = getelementptr inbounds double, ptr %22062, i64 %22067
  %22069 = load double, ptr %22068, align 8, !tbaa !11
  %22070 = call double @llvm.fmuladd.f64(double 0xBCB97FFFFFFFFFFF, double %22069, double %22061)
  %22071 = load ptr, ptr %7, align 8, !tbaa !9
  %22072 = load i32, ptr %12, align 4, !tbaa !5
  %22073 = load i32, ptr %8, align 4, !tbaa !5
  %22074 = mul nsw i32 16, %22073
  %22075 = add nsw i32 %22072, %22074
  %22076 = sext i32 %22075 to i64
  %22077 = getelementptr inbounds double, ptr %22071, i64 %22076
  %22078 = load double, ptr %22077, align 8, !tbaa !11
  %22079 = call double @llvm.fmuladd.f64(double 0x3CBE200000000000, double %22078, double %22070)
  %22080 = load ptr, ptr %7, align 8, !tbaa !9
  %22081 = load i32, ptr %12, align 4, !tbaa !5
  %22082 = load i32, ptr %8, align 4, !tbaa !5
  %22083 = mul nsw i32 17, %22082
  %22084 = add nsw i32 %22081, %22083
  %22085 = sext i32 %22084 to i64
  %22086 = getelementptr inbounds double, ptr %22080, i64 %22085
  %22087 = load double, ptr %22086, align 8, !tbaa !11
  %22088 = call double @llvm.fmuladd.f64(double 0x3CA4C00000000000, double %22087, double %22079)
  %22089 = load ptr, ptr %7, align 8, !tbaa !9
  %22090 = load i32, ptr %12, align 4, !tbaa !5
  %22091 = load i32, ptr %8, align 4, !tbaa !5
  %22092 = mul nsw i32 18, %22091
  %22093 = add nsw i32 %22090, %22092
  %22094 = sext i32 %22093 to i64
  %22095 = getelementptr inbounds double, ptr %22089, i64 %22094
  %22096 = load double, ptr %22095, align 8, !tbaa !11
  %22097 = call double @llvm.fmuladd.f64(double 0xBCA4000000000001, double %22096, double %22088)
  %22098 = load ptr, ptr %7, align 8, !tbaa !9
  %22099 = load i32, ptr %12, align 4, !tbaa !5
  %22100 = load i32, ptr %8, align 4, !tbaa !5
  %22101 = mul nsw i32 19, %22100
  %22102 = add nsw i32 %22099, %22101
  %22103 = sext i32 %22102 to i64
  %22104 = getelementptr inbounds double, ptr %22098, i64 %22103
  %22105 = load double, ptr %22104, align 8, !tbaa !11
  %22106 = call double @llvm.fmuladd.f64(double 0x3CA4000000000001, double %22105, double %22097)
  %22107 = load ptr, ptr %7, align 8, !tbaa !9
  %22108 = load i32, ptr %12, align 4, !tbaa !5
  %22109 = load i32, ptr %8, align 4, !tbaa !5
  %22110 = mul nsw i32 20, %22109
  %22111 = add nsw i32 %22108, %22110
  %22112 = sext i32 %22111 to i64
  %22113 = getelementptr inbounds double, ptr %22107, i64 %22112
  %22114 = load double, ptr %22113, align 8, !tbaa !11
  %22115 = call double @llvm.fmuladd.f64(double 0xBFE333710B32A2A0, double %22114, double %22106)
  %22116 = load ptr, ptr %7, align 8, !tbaa !9
  %22117 = load i32, ptr %12, align 4, !tbaa !5
  %22118 = load i32, ptr %8, align 4, !tbaa !5
  %22119 = mul nsw i32 21, %22118
  %22120 = add nsw i32 %22117, %22119
  %22121 = sext i32 %22120 to i64
  %22122 = getelementptr inbounds double, ptr %22116, i64 %22121
  %22123 = load double, ptr %22122, align 8, !tbaa !11
  %22124 = call double @llvm.fmuladd.f64(double 0xBFA352D4DB969C25, double %22123, double %22115)
  %22125 = load ptr, ptr %7, align 8, !tbaa !9
  %22126 = load i32, ptr %12, align 4, !tbaa !5
  %22127 = load i32, ptr %8, align 4, !tbaa !5
  %22128 = mul nsw i32 22, %22127
  %22129 = add nsw i32 %22126, %22128
  %22130 = sext i32 %22129 to i64
  %22131 = getelementptr inbounds double, ptr %22125, i64 %22130
  %22132 = load double, ptr %22131, align 8, !tbaa !11
  %22133 = call double @llvm.fmuladd.f64(double 0x3FA87D7643548526, double %22132, double %22124)
  %22134 = load ptr, ptr %7, align 8, !tbaa !9
  %22135 = load i32, ptr %12, align 4, !tbaa !5
  %22136 = load i32, ptr %8, align 4, !tbaa !5
  %22137 = mul nsw i32 23, %22136
  %22138 = add nsw i32 %22135, %22137
  %22139 = sext i32 %22138 to i64
  %22140 = getelementptr inbounds double, ptr %22134, i64 %22139
  %22141 = load double, ptr %22140, align 8, !tbaa !11
  %22142 = call double @llvm.fmuladd.f64(double 0xBFBEED13A9F0D8B2, double %22141, double %22133)
  %22143 = load ptr, ptr %7, align 8, !tbaa !9
  %22144 = load i32, ptr %12, align 4, !tbaa !5
  %22145 = load i32, ptr %8, align 4, !tbaa !5
  %22146 = mul nsw i32 24, %22145
  %22147 = add nsw i32 %22144, %22146
  %22148 = sext i32 %22147 to i64
  %22149 = getelementptr inbounds double, ptr %22143, i64 %22148
  %22150 = load double, ptr %22149, align 8, !tbaa !11
  %22151 = call double @llvm.fmuladd.f64(double 0x3FF670C5F1F4C92E, double %22150, double %22142)
  %22152 = load ptr, ptr %7, align 8, !tbaa !9
  %22153 = load i32, ptr %12, align 4, !tbaa !5
  %22154 = load i32, ptr %8, align 4, !tbaa !5
  %22155 = mul nsw i32 25, %22154
  %22156 = add nsw i32 %22153, %22155
  %22157 = sext i32 %22156 to i64
  %22158 = getelementptr inbounds double, ptr %22152, i64 %22157
  %22159 = load double, ptr %22158, align 8, !tbaa !11
  %22160 = call double @llvm.fmuladd.f64(double 0x3FC27B05E24EC5F4, double %22159, double %22151)
  %22161 = load ptr, ptr %7, align 8, !tbaa !9
  %22162 = load i32, ptr %12, align 4, !tbaa !5
  %22163 = load i32, ptr %8, align 4, !tbaa !5
  %22164 = mul nsw i32 26, %22163
  %22165 = add nsw i32 %22162, %22164
  %22166 = sext i32 %22165 to i64
  %22167 = getelementptr inbounds double, ptr %22161, i64 %22166
  %22168 = load double, ptr %22167, align 8, !tbaa !11
  %22169 = call double @llvm.fmuladd.f64(double 0x3FD35DAE88CBA63B, double %22168, double %22160)
  %22170 = load ptr, ptr %7, align 8, !tbaa !9
  %22171 = load i32, ptr %12, align 4, !tbaa !5
  %22172 = load i32, ptr %8, align 4, !tbaa !5
  %22173 = mul nsw i32 27, %22172
  %22174 = add nsw i32 %22171, %22173
  %22175 = sext i32 %22174 to i64
  %22176 = getelementptr inbounds double, ptr %22170, i64 %22175
  %22177 = load double, ptr %22176, align 8, !tbaa !11
  %22178 = call double @llvm.fmuladd.f64(double 0xBFD41C0D131D428F, double %22177, double %22169)
  %22179 = load ptr, ptr %7, align 8, !tbaa !9
  %22180 = load i32, ptr %12, align 4, !tbaa !5
  %22181 = load i32, ptr %8, align 4, !tbaa !5
  %22182 = mul nsw i32 28, %22181
  %22183 = add nsw i32 %22180, %22182
  %22184 = sext i32 %22183 to i64
  %22185 = getelementptr inbounds double, ptr %22179, i64 %22184
  %22186 = load double, ptr %22185, align 8, !tbaa !11
  %22187 = call double @llvm.fmuladd.f64(double 0x3F9854E0ADA34B9E, double %22186, double %22178)
  %22188 = load ptr, ptr %7, align 8, !tbaa !9
  %22189 = load i32, ptr %12, align 4, !tbaa !5
  %22190 = load i32, ptr %8, align 4, !tbaa !5
  %22191 = mul nsw i32 29, %22190
  %22192 = add nsw i32 %22189, %22191
  %22193 = sext i32 %22192 to i64
  %22194 = getelementptr inbounds double, ptr %22188, i64 %22193
  %22195 = load double, ptr %22194, align 8, !tbaa !11
  %22196 = call double @llvm.fmuladd.f64(double 0x3FC36A9134CD3C5F, double %22195, double %22187)
  %22197 = load ptr, ptr %7, align 8, !tbaa !9
  %22198 = load i32, ptr %12, align 4, !tbaa !5
  %22199 = load i32, ptr %8, align 4, !tbaa !5
  %22200 = mul nsw i32 30, %22199
  %22201 = add nsw i32 %22198, %22200
  %22202 = sext i32 %22201 to i64
  %22203 = getelementptr inbounds double, ptr %22197, i64 %22202
  %22204 = load double, ptr %22203, align 8, !tbaa !11
  %22205 = call double @llvm.fmuladd.f64(double 0xBCC2E00000000000, double %22204, double %22196)
  %22206 = load ptr, ptr %7, align 8, !tbaa !9
  %22207 = load i32, ptr %12, align 4, !tbaa !5
  %22208 = load i32, ptr %8, align 4, !tbaa !5
  %22209 = mul nsw i32 31, %22208
  %22210 = add nsw i32 %22207, %22209
  %22211 = sext i32 %22210 to i64
  %22212 = getelementptr inbounds double, ptr %22206, i64 %22211
  %22213 = load double, ptr %22212, align 8, !tbaa !11
  %22214 = call double @llvm.fmuladd.f64(double 0x3C98000000000000, double %22213, double %22205)
  %22215 = load ptr, ptr %7, align 8, !tbaa !9
  %22216 = load i32, ptr %12, align 4, !tbaa !5
  %22217 = load i32, ptr %8, align 4, !tbaa !5
  %22218 = mul nsw i32 32, %22217
  %22219 = add nsw i32 %22216, %22218
  %22220 = sext i32 %22219 to i64
  %22221 = getelementptr inbounds double, ptr %22215, i64 %22220
  %22222 = load double, ptr %22221, align 8, !tbaa !11
  %22223 = call double @llvm.fmuladd.f64(double 0x3C96200000000000, double %22222, double %22214)
  %22224 = load ptr, ptr %7, align 8, !tbaa !9
  %22225 = load i32, ptr %12, align 4, !tbaa !5
  %22226 = load i32, ptr %8, align 4, !tbaa !5
  %22227 = mul nsw i32 33, %22226
  %22228 = add nsw i32 %22225, %22227
  %22229 = sext i32 %22228 to i64
  %22230 = getelementptr inbounds double, ptr %22224, i64 %22229
  %22231 = load double, ptr %22230, align 8, !tbaa !11
  %22232 = call double @llvm.fmuladd.f64(double 0xBCC0A40000000000, double %22231, double %22223)
  %22233 = load ptr, ptr %7, align 8, !tbaa !9
  %22234 = load i32, ptr %12, align 4, !tbaa !5
  %22235 = load i32, ptr %8, align 4, !tbaa !5
  %22236 = mul nsw i32 34, %22235
  %22237 = add nsw i32 %22234, %22236
  %22238 = sext i32 %22237 to i64
  %22239 = getelementptr inbounds double, ptr %22233, i64 %22238
  %22240 = load double, ptr %22239, align 8, !tbaa !11
  %22241 = call double @llvm.fmuladd.f64(double 0xBC93000000000000, double %22240, double %22232)
  %22242 = load ptr, ptr %7, align 8, !tbaa !9
  %22243 = load i32, ptr %12, align 4, !tbaa !5
  %22244 = load i32, ptr %8, align 4, !tbaa !5
  %22245 = mul nsw i32 35, %22244
  %22246 = add nsw i32 %22243, %22245
  %22247 = sext i32 %22246 to i64
  %22248 = getelementptr inbounds double, ptr %22242, i64 %22247
  %22249 = load double, ptr %22248, align 8, !tbaa !11
  %22250 = call double @llvm.fmuladd.f64(double 0x3C81000000000000, double %22249, double %22241)
  %22251 = load ptr, ptr %7, align 8, !tbaa !9
  %22252 = load i32, ptr %12, align 4, !tbaa !5
  %22253 = load i32, ptr %8, align 4, !tbaa !5
  %22254 = mul nsw i32 36, %22253
  %22255 = add nsw i32 %22252, %22254
  %22256 = sext i32 %22255 to i64
  %22257 = getelementptr inbounds double, ptr %22251, i64 %22256
  %22258 = load double, ptr %22257, align 8, !tbaa !11
  %22259 = call double @llvm.fmuladd.f64(double 0xBCBA500000000000, double %22258, double %22250)
  %22260 = load ptr, ptr %7, align 8, !tbaa !9
  %22261 = load i32, ptr %12, align 4, !tbaa !5
  %22262 = load i32, ptr %8, align 4, !tbaa !5
  %22263 = mul nsw i32 37, %22262
  %22264 = add nsw i32 %22261, %22263
  %22265 = sext i32 %22264 to i64
  %22266 = getelementptr inbounds double, ptr %22260, i64 %22265
  %22267 = load double, ptr %22266, align 8, !tbaa !11
  %22268 = call double @llvm.fmuladd.f64(double 0x3CC2B80000000000, double %22267, double %22259)
  %22269 = load ptr, ptr %7, align 8, !tbaa !9
  %22270 = load i32, ptr %12, align 4, !tbaa !5
  %22271 = load i32, ptr %8, align 4, !tbaa !5
  %22272 = mul nsw i32 38, %22271
  %22273 = add nsw i32 %22270, %22272
  %22274 = sext i32 %22273 to i64
  %22275 = getelementptr inbounds double, ptr %22269, i64 %22274
  %22276 = load double, ptr %22275, align 8, !tbaa !11
  %22277 = call double @llvm.fmuladd.f64(double 0x3C9A000000000000, double %22276, double %22268)
  %22278 = load ptr, ptr %7, align 8, !tbaa !9
  %22279 = load i32, ptr %12, align 4, !tbaa !5
  %22280 = load i32, ptr %8, align 4, !tbaa !5
  %22281 = mul nsw i32 39, %22280
  %22282 = add nsw i32 %22279, %22281
  %22283 = sext i32 %22282 to i64
  %22284 = getelementptr inbounds double, ptr %22278, i64 %22283
  %22285 = load double, ptr %22284, align 8, !tbaa !11
  %22286 = call double @llvm.fmuladd.f64(double 0xBCA93FFFFFFFFFFF, double %22285, double %22277)
  store double %22286, ptr %11, align 8, !tbaa !11
  %22287 = load double, ptr %11, align 8, !tbaa !11
  %22288 = load ptr, ptr %9, align 8, !tbaa !9
  %22289 = load i32, ptr %12, align 4, !tbaa !5
  %22290 = load i32, ptr %10, align 4, !tbaa !5
  %22291 = mul nsw i32 61, %22290
  %22292 = add nsw i32 %22289, %22291
  %22293 = sext i32 %22292 to i64
  %22294 = getelementptr inbounds double, ptr %22288, i64 %22293
  store double %22287, ptr %22294, align 8, !tbaa !11
  %22295 = load ptr, ptr %7, align 8, !tbaa !9
  %22296 = load i32, ptr %12, align 4, !tbaa !5
  %22297 = load i32, ptr %8, align 4, !tbaa !5
  %22298 = mul nsw i32 0, %22297
  %22299 = add nsw i32 %22296, %22298
  %22300 = sext i32 %22299 to i64
  %22301 = getelementptr inbounds double, ptr %22295, i64 %22300
  %22302 = load double, ptr %22301, align 8, !tbaa !11
  %22303 = load ptr, ptr %7, align 8, !tbaa !9
  %22304 = load i32, ptr %12, align 4, !tbaa !5
  %22305 = load i32, ptr %8, align 4, !tbaa !5
  %22306 = mul nsw i32 1, %22305
  %22307 = add nsw i32 %22304, %22306
  %22308 = sext i32 %22307 to i64
  %22309 = getelementptr inbounds double, ptr %22303, i64 %22308
  %22310 = load double, ptr %22309, align 8, !tbaa !11
  %22311 = fmul double 0x3C7C000000000000, %22310
  %22312 = call double @llvm.fmuladd.f64(double 0xBCB6C00000000000, double %22302, double %22311)
  %22313 = load ptr, ptr %7, align 8, !tbaa !9
  %22314 = load i32, ptr %12, align 4, !tbaa !5
  %22315 = load i32, ptr %8, align 4, !tbaa !5
  %22316 = mul nsw i32 2, %22315
  %22317 = add nsw i32 %22314, %22316
  %22318 = sext i32 %22317 to i64
  %22319 = getelementptr inbounds double, ptr %22313, i64 %22318
  %22320 = load double, ptr %22319, align 8, !tbaa !11
  %22321 = call double @llvm.fmuladd.f64(double 0x3CBB500000000001, double %22320, double %22312)
  %22322 = load ptr, ptr %7, align 8, !tbaa !9
  %22323 = load i32, ptr %12, align 4, !tbaa !5
  %22324 = load i32, ptr %8, align 4, !tbaa !5
  %22325 = mul nsw i32 3, %22324
  %22326 = add nsw i32 %22323, %22325
  %22327 = sext i32 %22326 to i64
  %22328 = getelementptr inbounds double, ptr %22322, i64 %22327
  %22329 = load double, ptr %22328, align 8, !tbaa !11
  %22330 = call double @llvm.fmuladd.f64(double 0xBCCB200000000000, double %22329, double %22321)
  %22331 = load ptr, ptr %7, align 8, !tbaa !9
  %22332 = load i32, ptr %12, align 4, !tbaa !5
  %22333 = load i32, ptr %8, align 4, !tbaa !5
  %22334 = mul nsw i32 4, %22333
  %22335 = add nsw i32 %22332, %22334
  %22336 = sext i32 %22335 to i64
  %22337 = getelementptr inbounds double, ptr %22331, i64 %22336
  %22338 = load double, ptr %22337, align 8, !tbaa !11
  %22339 = call double @llvm.fmuladd.f64(double 0x3CA8000000000001, double %22338, double %22330)
  %22340 = load ptr, ptr %7, align 8, !tbaa !9
  %22341 = load i32, ptr %12, align 4, !tbaa !5
  %22342 = load i32, ptr %8, align 4, !tbaa !5
  %22343 = mul nsw i32 5, %22342
  %22344 = add nsw i32 %22341, %22343
  %22345 = sext i32 %22344 to i64
  %22346 = getelementptr inbounds double, ptr %22340, i64 %22345
  %22347 = load double, ptr %22346, align 8, !tbaa !11
  %22348 = call double @llvm.fmuladd.f64(double 0xBCB3400000000000, double %22347, double %22339)
  %22349 = load ptr, ptr %7, align 8, !tbaa !9
  %22350 = load i32, ptr %12, align 4, !tbaa !5
  %22351 = load i32, ptr %8, align 4, !tbaa !5
  %22352 = mul nsw i32 6, %22351
  %22353 = add nsw i32 %22350, %22352
  %22354 = sext i32 %22353 to i64
  %22355 = getelementptr inbounds double, ptr %22349, i64 %22354
  %22356 = load double, ptr %22355, align 8, !tbaa !11
  %22357 = call double @llvm.fmuladd.f64(double 0x3CB1700000000000, double %22356, double %22348)
  %22358 = load ptr, ptr %7, align 8, !tbaa !9
  %22359 = load i32, ptr %12, align 4, !tbaa !5
  %22360 = load i32, ptr %8, align 4, !tbaa !5
  %22361 = mul nsw i32 7, %22360
  %22362 = add nsw i32 %22359, %22361
  %22363 = sext i32 %22362 to i64
  %22364 = getelementptr inbounds double, ptr %22358, i64 %22363
  %22365 = load double, ptr %22364, align 8, !tbaa !11
  %22366 = call double @llvm.fmuladd.f64(double 0xBCA2DFFFFFFFFFFF, double %22365, double %22357)
  %22367 = load ptr, ptr %7, align 8, !tbaa !9
  %22368 = load i32, ptr %12, align 4, !tbaa !5
  %22369 = load i32, ptr %8, align 4, !tbaa !5
  %22370 = mul nsw i32 8, %22369
  %22371 = add nsw i32 %22368, %22370
  %22372 = sext i32 %22371 to i64
  %22373 = getelementptr inbounds double, ptr %22367, i64 %22372
  %22374 = load double, ptr %22373, align 8, !tbaa !11
  %22375 = call double @llvm.fmuladd.f64(double 0xBC86000000000001, double %22374, double %22366)
  %22376 = load ptr, ptr %7, align 8, !tbaa !9
  %22377 = load i32, ptr %12, align 4, !tbaa !5
  %22378 = load i32, ptr %8, align 4, !tbaa !5
  %22379 = mul nsw i32 9, %22378
  %22380 = add nsw i32 %22377, %22379
  %22381 = sext i32 %22380 to i64
  %22382 = getelementptr inbounds double, ptr %22376, i64 %22381
  %22383 = load double, ptr %22382, align 8, !tbaa !11
  %22384 = call double @llvm.fmuladd.f64(double 0xBCBBC00000000001, double %22383, double %22375)
  %22385 = load ptr, ptr %7, align 8, !tbaa !9
  %22386 = load i32, ptr %12, align 4, !tbaa !5
  %22387 = load i32, ptr %8, align 4, !tbaa !5
  %22388 = mul nsw i32 10, %22387
  %22389 = add nsw i32 %22386, %22388
  %22390 = sext i32 %22389 to i64
  %22391 = getelementptr inbounds double, ptr %22385, i64 %22390
  %22392 = load double, ptr %22391, align 8, !tbaa !11
  %22393 = call double @llvm.fmuladd.f64(double 0x3CA5FFFFFFFFFFFF, double %22392, double %22384)
  %22394 = load ptr, ptr %7, align 8, !tbaa !9
  %22395 = load i32, ptr %12, align 4, !tbaa !5
  %22396 = load i32, ptr %8, align 4, !tbaa !5
  %22397 = mul nsw i32 11, %22396
  %22398 = add nsw i32 %22395, %22397
  %22399 = sext i32 %22398 to i64
  %22400 = getelementptr inbounds double, ptr %22394, i64 %22399
  %22401 = load double, ptr %22400, align 8, !tbaa !11
  %22402 = call double @llvm.fmuladd.f64(double 0xBCA2000000000000, double %22401, double %22393)
  %22403 = load ptr, ptr %7, align 8, !tbaa !9
  %22404 = load i32, ptr %12, align 4, !tbaa !5
  %22405 = load i32, ptr %8, align 4, !tbaa !5
  %22406 = mul nsw i32 12, %22405
  %22407 = add nsw i32 %22404, %22406
  %22408 = sext i32 %22407 to i64
  %22409 = getelementptr inbounds double, ptr %22403, i64 %22408
  %22410 = load double, ptr %22409, align 8, !tbaa !11
  %22411 = call double @llvm.fmuladd.f64(double 0x3C95800000000000, double %22410, double %22402)
  %22412 = load ptr, ptr %7, align 8, !tbaa !9
  %22413 = load i32, ptr %12, align 4, !tbaa !5
  %22414 = load i32, ptr %8, align 4, !tbaa !5
  %22415 = mul nsw i32 13, %22414
  %22416 = add nsw i32 %22413, %22415
  %22417 = sext i32 %22416 to i64
  %22418 = getelementptr inbounds double, ptr %22412, i64 %22417
  %22419 = load double, ptr %22418, align 8, !tbaa !11
  %22420 = call double @llvm.fmuladd.f64(double 0xBCA9BFFFFFFFFFFF, double %22419, double %22411)
  %22421 = load ptr, ptr %7, align 8, !tbaa !9
  %22422 = load i32, ptr %12, align 4, !tbaa !5
  %22423 = load i32, ptr %8, align 4, !tbaa !5
  %22424 = mul nsw i32 14, %22423
  %22425 = add nsw i32 %22422, %22424
  %22426 = sext i32 %22425 to i64
  %22427 = getelementptr inbounds double, ptr %22421, i64 %22426
  %22428 = load double, ptr %22427, align 8, !tbaa !11
  %22429 = call double @llvm.fmuladd.f64(double 0x3CA0000000000002, double %22428, double %22420)
  %22430 = load ptr, ptr %7, align 8, !tbaa !9
  %22431 = load i32, ptr %12, align 4, !tbaa !5
  %22432 = load i32, ptr %8, align 4, !tbaa !5
  %22433 = mul nsw i32 15, %22432
  %22434 = add nsw i32 %22431, %22433
  %22435 = sext i32 %22434 to i64
  %22436 = getelementptr inbounds double, ptr %22430, i64 %22435
  %22437 = load double, ptr %22436, align 8, !tbaa !11
  %22438 = call double @llvm.fmuladd.f64(double 0xBCA9FFFFFFFFFFFE, double %22437, double %22429)
  %22439 = load ptr, ptr %7, align 8, !tbaa !9
  %22440 = load i32, ptr %12, align 4, !tbaa !5
  %22441 = load i32, ptr %8, align 4, !tbaa !5
  %22442 = mul nsw i32 16, %22441
  %22443 = add nsw i32 %22440, %22442
  %22444 = sext i32 %22443 to i64
  %22445 = getelementptr inbounds double, ptr %22439, i64 %22444
  %22446 = load double, ptr %22445, align 8, !tbaa !11
  %22447 = call double @llvm.fmuladd.f64(double 0x3CB07FFFFFFFFFFF, double %22446, double %22438)
  %22448 = load ptr, ptr %7, align 8, !tbaa !9
  %22449 = load i32, ptr %12, align 4, !tbaa !5
  %22450 = load i32, ptr %8, align 4, !tbaa !5
  %22451 = mul nsw i32 17, %22450
  %22452 = add nsw i32 %22449, %22451
  %22453 = sext i32 %22452 to i64
  %22454 = getelementptr inbounds double, ptr %22448, i64 %22453
  %22455 = load double, ptr %22454, align 8, !tbaa !11
  %22456 = call double @llvm.fmuladd.f64(double 0xBCA1800000000000, double %22455, double %22447)
  %22457 = load ptr, ptr %7, align 8, !tbaa !9
  %22458 = load i32, ptr %12, align 4, !tbaa !5
  %22459 = load i32, ptr %8, align 4, !tbaa !5
  %22460 = mul nsw i32 19, %22459
  %22461 = add nsw i32 %22458, %22460
  %22462 = sext i32 %22461 to i64
  %22463 = getelementptr inbounds double, ptr %22457, i64 %22462
  %22464 = load double, ptr %22463, align 8, !tbaa !11
  %22465 = call double @llvm.fmuladd.f64(double 0x3CA5FFFFFFFFFFFF, double %22464, double %22456)
  %22466 = load ptr, ptr %7, align 8, !tbaa !9
  %22467 = load i32, ptr %12, align 4, !tbaa !5
  %22468 = load i32, ptr %8, align 4, !tbaa !5
  %22469 = mul nsw i32 20, %22468
  %22470 = add nsw i32 %22467, %22469
  %22471 = sext i32 %22470 to i64
  %22472 = getelementptr inbounds double, ptr %22466, i64 %22471
  %22473 = load double, ptr %22472, align 8, !tbaa !11
  %22474 = call double @llvm.fmuladd.f64(double 0xBFE333710B32A298, double %22473, double %22465)
  %22475 = load ptr, ptr %7, align 8, !tbaa !9
  %22476 = load i32, ptr %12, align 4, !tbaa !5
  %22477 = load i32, ptr %8, align 4, !tbaa !5
  %22478 = mul nsw i32 21, %22477
  %22479 = add nsw i32 %22476, %22478
  %22480 = sext i32 %22479 to i64
  %22481 = getelementptr inbounds double, ptr %22475, i64 %22480
  %22482 = load double, ptr %22481, align 8, !tbaa !11
  %22483 = call double @llvm.fmuladd.f64(double 0x3FA87D7643548514, double %22482, double %22474)
  %22484 = load ptr, ptr %7, align 8, !tbaa !9
  %22485 = load i32, ptr %12, align 4, !tbaa !5
  %22486 = load i32, ptr %8, align 4, !tbaa !5
  %22487 = mul nsw i32 22, %22486
  %22488 = add nsw i32 %22485, %22487
  %22489 = sext i32 %22488 to i64
  %22490 = getelementptr inbounds double, ptr %22484, i64 %22489
  %22491 = load double, ptr %22490, align 8, !tbaa !11
  %22492 = call double @llvm.fmuladd.f64(double 0xBFA352D4DB969C25, double %22491, double %22483)
  %22493 = load ptr, ptr %7, align 8, !tbaa !9
  %22494 = load i32, ptr %12, align 4, !tbaa !5
  %22495 = load i32, ptr %8, align 4, !tbaa !5
  %22496 = mul nsw i32 23, %22495
  %22497 = add nsw i32 %22494, %22496
  %22498 = sext i32 %22497 to i64
  %22499 = getelementptr inbounds double, ptr %22493, i64 %22498
  %22500 = load double, ptr %22499, align 8, !tbaa !11
  %22501 = call double @llvm.fmuladd.f64(double 0xBFBEED13A9F0D8DE, double %22500, double %22492)
  %22502 = load ptr, ptr %7, align 8, !tbaa !9
  %22503 = load i32, ptr %12, align 4, !tbaa !5
  %22504 = load i32, ptr %8, align 4, !tbaa !5
  %22505 = mul nsw i32 24, %22504
  %22506 = add nsw i32 %22503, %22505
  %22507 = sext i32 %22506 to i64
  %22508 = getelementptr inbounds double, ptr %22502, i64 %22507
  %22509 = load double, ptr %22508, align 8, !tbaa !11
  %22510 = call double @llvm.fmuladd.f64(double 0x3FC36A9134CD3C5F, double %22509, double %22501)
  %22511 = load ptr, ptr %7, align 8, !tbaa !9
  %22512 = load i32, ptr %12, align 4, !tbaa !5
  %22513 = load i32, ptr %8, align 4, !tbaa !5
  %22514 = mul nsw i32 25, %22513
  %22515 = add nsw i32 %22512, %22514
  %22516 = sext i32 %22515 to i64
  %22517 = getelementptr inbounds double, ptr %22511, i64 %22516
  %22518 = load double, ptr %22517, align 8, !tbaa !11
  %22519 = call double @llvm.fmuladd.f64(double 0x3FD35DAE88CBA644, double %22518, double %22510)
  %22520 = load ptr, ptr %7, align 8, !tbaa !9
  %22521 = load i32, ptr %12, align 4, !tbaa !5
  %22522 = load i32, ptr %8, align 4, !tbaa !5
  %22523 = mul nsw i32 26, %22522
  %22524 = add nsw i32 %22521, %22523
  %22525 = sext i32 %22524 to i64
  %22526 = getelementptr inbounds double, ptr %22520, i64 %22525
  %22527 = load double, ptr %22526, align 8, !tbaa !11
  %22528 = call double @llvm.fmuladd.f64(double 0x3FC27B05E24EC5E2, double %22527, double %22519)
  %22529 = load ptr, ptr %7, align 8, !tbaa !9
  %22530 = load i32, ptr %12, align 4, !tbaa !5
  %22531 = load i32, ptr %8, align 4, !tbaa !5
  %22532 = mul nsw i32 27, %22531
  %22533 = add nsw i32 %22530, %22532
  %22534 = sext i32 %22533 to i64
  %22535 = getelementptr inbounds double, ptr %22529, i64 %22534
  %22536 = load double, ptr %22535, align 8, !tbaa !11
  %22537 = call double @llvm.fmuladd.f64(double 0x3F9854E0ADA34BA9, double %22536, double %22528)
  %22538 = load ptr, ptr %7, align 8, !tbaa !9
  %22539 = load i32, ptr %12, align 4, !tbaa !5
  %22540 = load i32, ptr %8, align 4, !tbaa !5
  %22541 = mul nsw i32 28, %22540
  %22542 = add nsw i32 %22539, %22541
  %22543 = sext i32 %22542 to i64
  %22544 = getelementptr inbounds double, ptr %22538, i64 %22543
  %22545 = load double, ptr %22544, align 8, !tbaa !11
  %22546 = call double @llvm.fmuladd.f64(double 0xBFD41C0D131D428F, double %22545, double %22537)
  %22547 = load ptr, ptr %7, align 8, !tbaa !9
  %22548 = load i32, ptr %12, align 4, !tbaa !5
  %22549 = load i32, ptr %8, align 4, !tbaa !5
  %22550 = mul nsw i32 29, %22549
  %22551 = add nsw i32 %22548, %22550
  %22552 = sext i32 %22551 to i64
  %22553 = getelementptr inbounds double, ptr %22547, i64 %22552
  %22554 = load double, ptr %22553, align 8, !tbaa !11
  %22555 = call double @llvm.fmuladd.f64(double 0x3FF670C5F1F4C932, double %22554, double %22546)
  %22556 = load ptr, ptr %7, align 8, !tbaa !9
  %22557 = load i32, ptr %12, align 4, !tbaa !5
  %22558 = load i32, ptr %8, align 4, !tbaa !5
  %22559 = mul nsw i32 30, %22558
  %22560 = add nsw i32 %22557, %22559
  %22561 = sext i32 %22560 to i64
  %22562 = getelementptr inbounds double, ptr %22556, i64 %22561
  %22563 = load double, ptr %22562, align 8, !tbaa !11
  %22564 = call double @llvm.fmuladd.f64(double 0xBCC1400000000000, double %22563, double %22555)
  %22565 = load ptr, ptr %7, align 8, !tbaa !9
  %22566 = load i32, ptr %12, align 4, !tbaa !5
  %22567 = load i32, ptr %8, align 4, !tbaa !5
  %22568 = mul nsw i32 31, %22567
  %22569 = add nsw i32 %22566, %22568
  %22570 = sext i32 %22569 to i64
  %22571 = getelementptr inbounds double, ptr %22565, i64 %22570
  %22572 = load double, ptr %22571, align 8, !tbaa !11
  %22573 = call double @llvm.fmuladd.f64(double 0x3CA9000000000000, double %22572, double %22564)
  %22574 = load ptr, ptr %7, align 8, !tbaa !9
  %22575 = load i32, ptr %12, align 4, !tbaa !5
  %22576 = load i32, ptr %8, align 4, !tbaa !5
  %22577 = mul nsw i32 32, %22576
  %22578 = add nsw i32 %22575, %22577
  %22579 = sext i32 %22578 to i64
  %22580 = getelementptr inbounds double, ptr %22574, i64 %22579
  %22581 = load double, ptr %22580, align 8, !tbaa !11
  %22582 = call double @llvm.fmuladd.f64(double 0x3CB1B00000000000, double %22581, double %22573)
  %22583 = load ptr, ptr %7, align 8, !tbaa !9
  %22584 = load i32, ptr %12, align 4, !tbaa !5
  %22585 = load i32, ptr %8, align 4, !tbaa !5
  %22586 = mul nsw i32 33, %22585
  %22587 = add nsw i32 %22584, %22586
  %22588 = sext i32 %22587 to i64
  %22589 = getelementptr inbounds double, ptr %22583, i64 %22588
  %22590 = load double, ptr %22589, align 8, !tbaa !11
  %22591 = call double @llvm.fmuladd.f64(double 0xBCB2B00000000001, double %22590, double %22582)
  %22592 = load ptr, ptr %7, align 8, !tbaa !9
  %22593 = load i32, ptr %12, align 4, !tbaa !5
  %22594 = load i32, ptr %8, align 4, !tbaa !5
  %22595 = mul nsw i32 34, %22594
  %22596 = add nsw i32 %22593, %22595
  %22597 = sext i32 %22596 to i64
  %22598 = getelementptr inbounds double, ptr %22592, i64 %22597
  %22599 = load double, ptr %22598, align 8, !tbaa !11
  %22600 = call double @llvm.fmuladd.f64(double 0xBCA1000000000001, double %22599, double %22591)
  %22601 = load ptr, ptr %7, align 8, !tbaa !9
  %22602 = load i32, ptr %12, align 4, !tbaa !5
  %22603 = load i32, ptr %8, align 4, !tbaa !5
  %22604 = mul nsw i32 35, %22603
  %22605 = add nsw i32 %22602, %22604
  %22606 = sext i32 %22605 to i64
  %22607 = getelementptr inbounds double, ptr %22601, i64 %22606
  %22608 = load double, ptr %22607, align 8, !tbaa !11
  %22609 = call double @llvm.fmuladd.f64(double 0x3CB1400000000000, double %22608, double %22600)
  %22610 = load ptr, ptr %7, align 8, !tbaa !9
  %22611 = load i32, ptr %12, align 4, !tbaa !5
  %22612 = load i32, ptr %8, align 4, !tbaa !5
  %22613 = mul nsw i32 36, %22612
  %22614 = add nsw i32 %22611, %22613
  %22615 = sext i32 %22614 to i64
  %22616 = getelementptr inbounds double, ptr %22610, i64 %22615
  %22617 = load double, ptr %22616, align 8, !tbaa !11
  %22618 = call double @llvm.fmuladd.f64(double 0xBCBAD00000000000, double %22617, double %22609)
  %22619 = load ptr, ptr %7, align 8, !tbaa !9
  %22620 = load i32, ptr %12, align 4, !tbaa !5
  %22621 = load i32, ptr %8, align 4, !tbaa !5
  %22622 = mul nsw i32 37, %22621
  %22623 = add nsw i32 %22620, %22622
  %22624 = sext i32 %22623 to i64
  %22625 = getelementptr inbounds double, ptr %22619, i64 %22624
  %22626 = load double, ptr %22625, align 8, !tbaa !11
  %22627 = call double @llvm.fmuladd.f64(double 0x3CB6F00000000000, double %22626, double %22618)
  %22628 = load ptr, ptr %7, align 8, !tbaa !9
  %22629 = load i32, ptr %12, align 4, !tbaa !5
  %22630 = load i32, ptr %8, align 4, !tbaa !5
  %22631 = mul nsw i32 38, %22630
  %22632 = add nsw i32 %22629, %22631
  %22633 = sext i32 %22632 to i64
  %22634 = getelementptr inbounds double, ptr %22628, i64 %22633
  %22635 = load double, ptr %22634, align 8, !tbaa !11
  %22636 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %22635, double %22627)
  %22637 = load ptr, ptr %7, align 8, !tbaa !9
  %22638 = load i32, ptr %12, align 4, !tbaa !5
  %22639 = load i32, ptr %8, align 4, !tbaa !5
  %22640 = mul nsw i32 39, %22639
  %22641 = add nsw i32 %22638, %22640
  %22642 = sext i32 %22641 to i64
  %22643 = getelementptr inbounds double, ptr %22637, i64 %22642
  %22644 = load double, ptr %22643, align 8, !tbaa !11
  %22645 = call double @llvm.fmuladd.f64(double 0xBCB1800000000000, double %22644, double %22636)
  store double %22645, ptr %11, align 8, !tbaa !11
  %22646 = load double, ptr %11, align 8, !tbaa !11
  %22647 = load ptr, ptr %9, align 8, !tbaa !9
  %22648 = load i32, ptr %12, align 4, !tbaa !5
  %22649 = load i32, ptr %10, align 4, !tbaa !5
  %22650 = mul nsw i32 62, %22649
  %22651 = add nsw i32 %22648, %22650
  %22652 = sext i32 %22651 to i64
  %22653 = getelementptr inbounds double, ptr %22647, i64 %22652
  store double %22646, ptr %22653, align 8, !tbaa !11
  %22654 = load ptr, ptr %7, align 8, !tbaa !9
  %22655 = load i32, ptr %12, align 4, !tbaa !5
  %22656 = load i32, ptr %8, align 4, !tbaa !5
  %22657 = mul nsw i32 0, %22656
  %22658 = add nsw i32 %22655, %22657
  %22659 = sext i32 %22658 to i64
  %22660 = getelementptr inbounds double, ptr %22654, i64 %22659
  %22661 = load double, ptr %22660, align 8, !tbaa !11
  %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 1, %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 = fmul double 0x3CA9FFFFFFFFFFFE, %22669
  %22671 = call double @llvm.fmuladd.f64(double 0xBCA4000000000001, double %22661, double %22670)
  %22672 = load ptr, ptr %7, align 8, !tbaa !9
  %22673 = load i32, ptr %12, align 4, !tbaa !5
  %22674 = load i32, ptr %8, align 4, !tbaa !5
  %22675 = mul nsw i32 2, %22674
  %22676 = add nsw i32 %22673, %22675
  %22677 = sext i32 %22676 to i64
  %22678 = getelementptr inbounds double, ptr %22672, i64 %22677
  %22679 = load double, ptr %22678, align 8, !tbaa !11
  %22680 = call double @llvm.fmuladd.f64(double 0x3CB3000000000000, double %22679, double %22671)
  %22681 = load ptr, ptr %7, align 8, !tbaa !9
  %22682 = load i32, ptr %12, align 4, !tbaa !5
  %22683 = load i32, ptr %8, align 4, !tbaa !5
  %22684 = mul nsw i32 3, %22683
  %22685 = add nsw i32 %22682, %22684
  %22686 = sext i32 %22685 to i64
  %22687 = getelementptr inbounds double, ptr %22681, i64 %22686
  %22688 = load double, ptr %22687, align 8, !tbaa !11
  %22689 = call double @llvm.fmuladd.f64(double 0xBCBAC00000000000, double %22688, double %22680)
  %22690 = load ptr, ptr %7, align 8, !tbaa !9
  %22691 = load i32, ptr %12, align 4, !tbaa !5
  %22692 = load i32, ptr %8, align 4, !tbaa !5
  %22693 = mul nsw i32 4, %22692
  %22694 = add nsw i32 %22691, %22693
  %22695 = sext i32 %22694 to i64
  %22696 = getelementptr inbounds double, ptr %22690, i64 %22695
  %22697 = load double, ptr %22696, align 8, !tbaa !11
  %22698 = call double @llvm.fmuladd.f64(double 0x3CA2FFFFFFFFFFFE, double %22697, double %22689)
  %22699 = load ptr, ptr %7, align 8, !tbaa !9
  %22700 = load i32, ptr %12, align 4, !tbaa !5
  %22701 = load i32, ptr %8, align 4, !tbaa !5
  %22702 = mul nsw i32 5, %22701
  %22703 = add nsw i32 %22700, %22702
  %22704 = sext i32 %22703 to i64
  %22705 = getelementptr inbounds double, ptr %22699, i64 %22704
  %22706 = load double, ptr %22705, align 8, !tbaa !11
  %22707 = call double @llvm.fmuladd.f64(double 0x3C9DFFFFFFFFFFFE, double %22706, double %22698)
  %22708 = load ptr, ptr %7, align 8, !tbaa !9
  %22709 = load i32, ptr %12, align 4, !tbaa !5
  %22710 = load i32, ptr %8, align 4, !tbaa !5
  %22711 = mul nsw i32 6, %22710
  %22712 = add nsw i32 %22709, %22711
  %22713 = sext i32 %22712 to i64
  %22714 = getelementptr inbounds double, ptr %22708, i64 %22713
  %22715 = load double, ptr %22714, align 8, !tbaa !11
  %22716 = call double @llvm.fmuladd.f64(double 0x3C93000000000000, double %22715, double %22707)
  %22717 = load ptr, ptr %7, align 8, !tbaa !9
  %22718 = load i32, ptr %12, align 4, !tbaa !5
  %22719 = load i32, ptr %8, align 4, !tbaa !5
  %22720 = mul nsw i32 7, %22719
  %22721 = add nsw i32 %22718, %22720
  %22722 = sext i32 %22721 to i64
  %22723 = getelementptr inbounds double, ptr %22717, i64 %22722
  %22724 = load double, ptr %22723, align 8, !tbaa !11
  %22725 = call double @llvm.fmuladd.f64(double 0xBC88000000000000, double %22724, double %22716)
  %22726 = load ptr, ptr %7, align 8, !tbaa !9
  %22727 = load i32, ptr %12, align 4, !tbaa !5
  %22728 = load i32, ptr %8, align 4, !tbaa !5
  %22729 = mul nsw i32 8, %22728
  %22730 = add nsw i32 %22727, %22729
  %22731 = sext i32 %22730 to i64
  %22732 = getelementptr inbounds double, ptr %22726, i64 %22731
  %22733 = load double, ptr %22732, align 8, !tbaa !11
  %22734 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %22733, double %22725)
  %22735 = load ptr, ptr %7, align 8, !tbaa !9
  %22736 = load i32, ptr %12, align 4, !tbaa !5
  %22737 = load i32, ptr %8, align 4, !tbaa !5
  %22738 = mul nsw i32 9, %22737
  %22739 = add nsw i32 %22736, %22738
  %22740 = sext i32 %22739 to i64
  %22741 = getelementptr inbounds double, ptr %22735, i64 %22740
  %22742 = load double, ptr %22741, align 8, !tbaa !11
  %22743 = call double @llvm.fmuladd.f64(double 0xBCB5FFFFFFFFFFFF, double %22742, double %22734)
  %22744 = load ptr, ptr %7, align 8, !tbaa !9
  %22745 = load i32, ptr %12, align 4, !tbaa !5
  %22746 = load i32, ptr %8, align 4, !tbaa !5
  %22747 = mul nsw i32 10, %22746
  %22748 = add nsw i32 %22745, %22747
  %22749 = sext i32 %22748 to i64
  %22750 = getelementptr inbounds double, ptr %22744, i64 %22749
  %22751 = load double, ptr %22750, align 8, !tbaa !11
  %22752 = call double @llvm.fmuladd.f64(double 0xBCC3000000000000, double %22751, double %22743)
  %22753 = load ptr, ptr %7, align 8, !tbaa !9
  %22754 = load i32, ptr %12, align 4, !tbaa !5
  %22755 = load i32, ptr %8, align 4, !tbaa !5
  %22756 = mul nsw i32 11, %22755
  %22757 = add nsw i32 %22754, %22756
  %22758 = sext i32 %22757 to i64
  %22759 = getelementptr inbounds double, ptr %22753, i64 %22758
  %22760 = load double, ptr %22759, align 8, !tbaa !11
  %22761 = call double @llvm.fmuladd.f64(double 0xBC7FFFFFFFFFFFFF, double %22760, double %22752)
  %22762 = load ptr, ptr %7, align 8, !tbaa !9
  %22763 = load i32, ptr %12, align 4, !tbaa !5
  %22764 = load i32, ptr %8, align 4, !tbaa !5
  %22765 = mul nsw i32 12, %22764
  %22766 = add nsw i32 %22763, %22765
  %22767 = sext i32 %22766 to i64
  %22768 = getelementptr inbounds double, ptr %22762, i64 %22767
  %22769 = load double, ptr %22768, align 8, !tbaa !11
  %22770 = call double @llvm.fmuladd.f64(double 0xBC88000000000000, double %22769, double %22761)
  %22771 = load ptr, ptr %7, align 8, !tbaa !9
  %22772 = load i32, ptr %12, align 4, !tbaa !5
  %22773 = load i32, ptr %8, align 4, !tbaa !5
  %22774 = mul nsw i32 13, %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 = call double @llvm.fmuladd.f64(double 0xBCA0000000000002, double %22778, double %22770)
  %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 14, %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 = call double @llvm.fmuladd.f64(double 0x3CA0000000000002, double %22787, double %22779)
  %22789 = load ptr, ptr %7, align 8, !tbaa !9
  %22790 = load i32, ptr %12, align 4, !tbaa !5
  %22791 = load i32, ptr %8, align 4, !tbaa !5
  %22792 = mul nsw i32 15, %22791
  %22793 = add nsw i32 %22790, %22792
  %22794 = sext i32 %22793 to i64
  %22795 = getelementptr inbounds double, ptr %22789, i64 %22794
  %22796 = load double, ptr %22795, align 8, !tbaa !11
  %22797 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %22796, double %22788)
  %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 16, %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 0x3CB5FFFFFFFFFFFF, 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 17, %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 0xBCB1000000000001, 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 19, %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 0x3CB3FFFFFFFFFFFF, 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 20, %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 0xBF83152016E0EB50, 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 21, %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 0x3FF4EC1BB3FDC612, 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 22, %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 0x3F938CE4890DB2F9, 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 23, %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 0xBFB5B58B4F03B1AE, 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 24, %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 0xBFB49217631F5954, 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 25, %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 0x3FD417DEBFC17B1A, 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 26, %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 0xBF8BDAF699AECFF5, 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 27, %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 0x3F85E50BB681A4B0, 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 28, %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 0xBFE5679E70A60660, 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 29, %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 0x3FCA50C41AB7A32C, 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 30, %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 0xBCB3000000000000, 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 31, %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 0x3C98000000000000, 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 32, %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 0x3CAA800000000002, 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 33, %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 0x3CA9000000000000, 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 34, %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 0xBC92000000000000, 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 35, %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 0xBC60000000000000, 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 36, %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 0xBC95000000000000, 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 37, %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 0xBC74000000000000, 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 38, %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 0x3CB1000000000001, 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 39, %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 0xBC88000000000000, double %23003, double %22995)
  store double %23004, ptr %11, align 8, !tbaa !11
  %23005 = load double, ptr %11, align 8, !tbaa !11
  %23006 = load ptr, ptr %9, align 8, !tbaa !9
  %23007 = load i32, ptr %12, align 4, !tbaa !5
  %23008 = load i32, ptr %10, align 4, !tbaa !5
  %23009 = mul nsw i32 63, %23008
  %23010 = add nsw i32 %23007, %23009
  %23011 = sext i32 %23010 to i64
  %23012 = getelementptr inbounds double, ptr %23006, i64 %23011
  store double %23005, ptr %23012, align 8, !tbaa !11
  %23013 = load ptr, ptr %7, align 8, !tbaa !9
  %23014 = load i32, ptr %12, align 4, !tbaa !5
  %23015 = load i32, ptr %8, align 4, !tbaa !5
  %23016 = mul nsw i32 0, %23015
  %23017 = add nsw i32 %23014, %23016
  %23018 = sext i32 %23017 to i64
  %23019 = getelementptr inbounds double, ptr %23013, i64 %23018
  %23020 = load double, ptr %23019, align 8, !tbaa !11
  %23021 = load ptr, ptr %7, align 8, !tbaa !9
  %23022 = load i32, ptr %12, align 4, !tbaa !5
  %23023 = load i32, ptr %8, align 4, !tbaa !5
  %23024 = mul nsw i32 1, %23023
  %23025 = add nsw i32 %23022, %23024
  %23026 = sext i32 %23025 to i64
  %23027 = getelementptr inbounds double, ptr %23021, i64 %23026
  %23028 = load double, ptr %23027, align 8, !tbaa !11
  %23029 = fmul double 0xBC9DFFFFFFFFFFFE, %23028
  %23030 = call double @llvm.fmuladd.f64(double 0xBCCE000000000000, double %23020, double %23029)
  %23031 = load ptr, ptr %7, align 8, !tbaa !9
  %23032 = load i32, ptr %12, align 4, !tbaa !5
  %23033 = load i32, ptr %8, align 4, !tbaa !5
  %23034 = mul nsw i32 2, %23033
  %23035 = add nsw i32 %23032, %23034
  %23036 = sext i32 %23035 to i64
  %23037 = getelementptr inbounds double, ptr %23031, i64 %23036
  %23038 = load double, ptr %23037, align 8, !tbaa !11
  %23039 = call double @llvm.fmuladd.f64(double 0x3CA173FFFFFFFFFE, double %23038, double %23030)
  %23040 = load ptr, ptr %7, align 8, !tbaa !9
  %23041 = load i32, ptr %12, align 4, !tbaa !5
  %23042 = load i32, ptr %8, align 4, !tbaa !5
  %23043 = mul nsw i32 3, %23042
  %23044 = add nsw i32 %23041, %23043
  %23045 = sext i32 %23044 to i64
  %23046 = getelementptr inbounds double, ptr %23040, i64 %23045
  %23047 = load double, ptr %23046, align 8, !tbaa !11
  %23048 = call double @llvm.fmuladd.f64(double 0xBCBAD60000000001, double %23047, double %23039)
  %23049 = load ptr, ptr %7, align 8, !tbaa !9
  %23050 = load i32, ptr %12, align 4, !tbaa !5
  %23051 = load i32, ptr %8, align 4, !tbaa !5
  %23052 = mul nsw i32 4, %23051
  %23053 = add nsw i32 %23050, %23052
  %23054 = sext i32 %23053 to i64
  %23055 = getelementptr inbounds double, ptr %23049, i64 %23054
  %23056 = load double, ptr %23055, align 8, !tbaa !11
  %23057 = call double @llvm.fmuladd.f64(double 0xBCB1F00000000000, double %23056, double %23048)
  %23058 = load ptr, ptr %7, align 8, !tbaa !9
  %23059 = load i32, ptr %12, align 4, !tbaa !5
  %23060 = load i32, ptr %8, align 4, !tbaa !5
  %23061 = mul nsw i32 5, %23060
  %23062 = add nsw i32 %23059, %23061
  %23063 = sext i32 %23062 to i64
  %23064 = getelementptr inbounds double, ptr %23058, i64 %23063
  %23065 = load double, ptr %23064, align 8, !tbaa !11
  %23066 = call double @llvm.fmuladd.f64(double 0x3CA1000000000001, double %23065, double %23057)
  %23067 = load ptr, ptr %7, align 8, !tbaa !9
  %23068 = load i32, ptr %12, align 4, !tbaa !5
  %23069 = load i32, ptr %8, align 4, !tbaa !5
  %23070 = mul nsw i32 6, %23069
  %23071 = add nsw i32 %23068, %23070
  %23072 = sext i32 %23071 to i64
  %23073 = getelementptr inbounds double, ptr %23067, i64 %23072
  %23074 = load double, ptr %23073, align 8, !tbaa !11
  %23075 = call double @llvm.fmuladd.f64(double 0x3C83600000000000, double %23074, double %23066)
  %23076 = load ptr, ptr %7, align 8, !tbaa !9
  %23077 = load i32, ptr %12, align 4, !tbaa !5
  %23078 = load i32, ptr %8, align 4, !tbaa !5
  %23079 = mul nsw i32 7, %23078
  %23080 = add nsw i32 %23077, %23079
  %23081 = sext i32 %23080 to i64
  %23082 = getelementptr inbounds double, ptr %23076, i64 %23081
  %23083 = load double, ptr %23082, align 8, !tbaa !11
  %23084 = call double @llvm.fmuladd.f64(double 0x3C90500000000000, double %23083, double %23075)
  %23085 = load ptr, ptr %7, align 8, !tbaa !9
  %23086 = load i32, ptr %12, align 4, !tbaa !5
  %23087 = load i32, ptr %8, align 4, !tbaa !5
  %23088 = mul nsw i32 8, %23087
  %23089 = add nsw i32 %23086, %23088
  %23090 = sext i32 %23089 to i64
  %23091 = getelementptr inbounds double, ptr %23085, i64 %23090
  %23092 = load double, ptr %23091, align 8, !tbaa !11
  %23093 = call double @llvm.fmuladd.f64(double 0x3CA27FFFFFFFFFFF, double %23092, double %23084)
  %23094 = load ptr, ptr %7, align 8, !tbaa !9
  %23095 = load i32, ptr %12, align 4, !tbaa !5
  %23096 = load i32, ptr %8, align 4, !tbaa !5
  %23097 = mul nsw i32 9, %23096
  %23098 = add nsw i32 %23095, %23097
  %23099 = sext i32 %23098 to i64
  %23100 = getelementptr inbounds double, ptr %23094, i64 %23099
  %23101 = load double, ptr %23100, align 8, !tbaa !11
  %23102 = call double @llvm.fmuladd.f64(double 0xBC88000000000000, double %23101, double %23093)
  %23103 = load ptr, ptr %7, align 8, !tbaa !9
  %23104 = load i32, ptr %12, align 4, !tbaa !5
  %23105 = load i32, ptr %8, align 4, !tbaa !5
  %23106 = mul nsw i32 10, %23105
  %23107 = add nsw i32 %23104, %23106
  %23108 = sext i32 %23107 to i64
  %23109 = getelementptr inbounds double, ptr %23103, i64 %23108
  %23110 = load double, ptr %23109, align 8, !tbaa !11
  %23111 = call double @llvm.fmuladd.f64(double 0x3CC3F00000000000, double %23110, double %23102)
  %23112 = load ptr, ptr %7, align 8, !tbaa !9
  %23113 = load i32, ptr %12, align 4, !tbaa !5
  %23114 = load i32, ptr %8, align 4, !tbaa !5
  %23115 = mul nsw i32 11, %23114
  %23116 = add nsw i32 %23113, %23115
  %23117 = sext i32 %23116 to i64
  %23118 = getelementptr inbounds double, ptr %23112, i64 %23117
  %23119 = load double, ptr %23118, align 8, !tbaa !11
  %23120 = call double @llvm.fmuladd.f64(double 0x3C92000000000000, double %23119, double %23111)
  %23121 = load ptr, ptr %7, align 8, !tbaa !9
  %23122 = load i32, ptr %12, align 4, !tbaa !5
  %23123 = load i32, ptr %8, align 4, !tbaa !5
  %23124 = mul nsw i32 12, %23123
  %23125 = add nsw i32 %23122, %23124
  %23126 = sext i32 %23125 to i64
  %23127 = getelementptr inbounds double, ptr %23121, i64 %23126
  %23128 = load double, ptr %23127, align 8, !tbaa !11
  %23129 = call double @llvm.fmuladd.f64(double 0x3CA61FFFFFFFFFFF, double %23128, double %23120)
  %23130 = load ptr, ptr %7, align 8, !tbaa !9
  %23131 = load i32, ptr %12, align 4, !tbaa !5
  %23132 = load i32, ptr %8, align 4, !tbaa !5
  %23133 = mul nsw i32 13, %23132
  %23134 = add nsw i32 %23131, %23133
  %23135 = sext i32 %23134 to i64
  %23136 = getelementptr inbounds double, ptr %23130, i64 %23135
  %23137 = load double, ptr %23136, align 8, !tbaa !11
  %23138 = call double @llvm.fmuladd.f64(double 0xBC97A00000000000, double %23137, double %23129)
  %23139 = load ptr, ptr %7, align 8, !tbaa !9
  %23140 = load i32, ptr %12, align 4, !tbaa !5
  %23141 = load i32, ptr %8, align 4, !tbaa !5
  %23142 = mul nsw i32 14, %23141
  %23143 = add nsw i32 %23140, %23142
  %23144 = sext i32 %23143 to i64
  %23145 = getelementptr inbounds double, ptr %23139, i64 %23144
  %23146 = load double, ptr %23145, align 8, !tbaa !11
  %23147 = call double @llvm.fmuladd.f64(double 0xBCB5800000000000, double %23146, double %23138)
  %23148 = load ptr, ptr %7, align 8, !tbaa !9
  %23149 = load i32, ptr %12, align 4, !tbaa !5
  %23150 = load i32, ptr %8, align 4, !tbaa !5
  %23151 = mul nsw i32 15, %23150
  %23152 = add nsw i32 %23149, %23151
  %23153 = sext i32 %23152 to i64
  %23154 = getelementptr inbounds double, ptr %23148, i64 %23153
  %23155 = load double, ptr %23154, align 8, !tbaa !11
  %23156 = call double @llvm.fmuladd.f64(double 0xBCB0200000000000, double %23155, double %23147)
  %23157 = load ptr, ptr %7, align 8, !tbaa !9
  %23158 = load i32, ptr %12, align 4, !tbaa !5
  %23159 = load i32, ptr %8, align 4, !tbaa !5
  %23160 = mul nsw i32 16, %23159
  %23161 = add nsw i32 %23158, %23160
  %23162 = sext i32 %23161 to i64
  %23163 = getelementptr inbounds double, ptr %23157, i64 %23162
  %23164 = load double, ptr %23163, align 8, !tbaa !11
  %23165 = call double @llvm.fmuladd.f64(double 0x3CAD6FFFFFFFFFFF, double %23164, double %23156)
  %23166 = load ptr, ptr %7, align 8, !tbaa !9
  %23167 = load i32, ptr %12, align 4, !tbaa !5
  %23168 = load i32, ptr %8, align 4, !tbaa !5
  %23169 = mul nsw i32 17, %23168
  %23170 = add nsw i32 %23167, %23169
  %23171 = sext i32 %23170 to i64
  %23172 = getelementptr inbounds double, ptr %23166, i64 %23171
  %23173 = load double, ptr %23172, align 8, !tbaa !11
  %23174 = call double @llvm.fmuladd.f64(double 0x3CB3D00000000000, double %23173, double %23165)
  %23175 = load ptr, ptr %7, align 8, !tbaa !9
  %23176 = load i32, ptr %12, align 4, !tbaa !5
  %23177 = load i32, ptr %8, align 4, !tbaa !5
  %23178 = mul nsw i32 18, %23177
  %23179 = add nsw i32 %23176, %23178
  %23180 = sext i32 %23179 to i64
  %23181 = getelementptr inbounds double, ptr %23175, i64 %23180
  %23182 = load double, ptr %23181, align 8, !tbaa !11
  %23183 = call double @llvm.fmuladd.f64(double 0xBC84000000000000, double %23182, double %23174)
  %23184 = load ptr, ptr %7, align 8, !tbaa !9
  %23185 = load i32, ptr %12, align 4, !tbaa !5
  %23186 = load i32, ptr %8, align 4, !tbaa !5
  %23187 = mul nsw i32 19, %23186
  %23188 = add nsw i32 %23185, %23187
  %23189 = sext i32 %23188 to i64
  %23190 = getelementptr inbounds double, ptr %23184, i64 %23189
  %23191 = load double, ptr %23190, align 8, !tbaa !11
  %23192 = call double @llvm.fmuladd.f64(double 0x3C50000000000000, double %23191, double %23183)
  %23193 = load ptr, ptr %7, align 8, !tbaa !9
  %23194 = load i32, ptr %12, align 4, !tbaa !5
  %23195 = load i32, ptr %8, align 4, !tbaa !5
  %23196 = mul nsw i32 20, %23195
  %23197 = add nsw i32 %23194, %23196
  %23198 = sext i32 %23197 to i64
  %23199 = getelementptr inbounds double, ptr %23193, i64 %23198
  %23200 = load double, ptr %23199, align 8, !tbaa !11
  %23201 = call double @llvm.fmuladd.f64(double 0xBCBFE00000000000, double %23200, double %23192)
  %23202 = load ptr, ptr %7, align 8, !tbaa !9
  %23203 = load i32, ptr %12, align 4, !tbaa !5
  %23204 = load i32, ptr %8, align 4, !tbaa !5
  %23205 = mul nsw i32 21, %23204
  %23206 = add nsw i32 %23203, %23205
  %23207 = sext i32 %23206 to i64
  %23208 = getelementptr inbounds double, ptr %23202, i64 %23207
  %23209 = load double, ptr %23208, align 8, !tbaa !11
  %23210 = call double @llvm.fmuladd.f64(double 0xBCA7400000000002, double %23209, double %23201)
  %23211 = load ptr, ptr %7, align 8, !tbaa !9
  %23212 = load i32, ptr %12, align 4, !tbaa !5
  %23213 = load i32, ptr %8, align 4, !tbaa !5
  %23214 = mul nsw i32 22, %23213
  %23215 = add nsw i32 %23212, %23214
  %23216 = sext i32 %23215 to i64
  %23217 = getelementptr inbounds double, ptr %23211, i64 %23216
  %23218 = load double, ptr %23217, align 8, !tbaa !11
  %23219 = call double @llvm.fmuladd.f64(double 0xBCA5000000000000, double %23218, double %23210)
  %23220 = load ptr, ptr %7, align 8, !tbaa !9
  %23221 = load i32, ptr %12, align 4, !tbaa !5
  %23222 = load i32, ptr %8, align 4, !tbaa !5
  %23223 = mul nsw i32 23, %23222
  %23224 = add nsw i32 %23221, %23223
  %23225 = sext i32 %23224 to i64
  %23226 = getelementptr inbounds double, ptr %23220, i64 %23225
  %23227 = load double, ptr %23226, align 8, !tbaa !11
  %23228 = call double @llvm.fmuladd.f64(double 0x3CBBC80000000000, double %23227, double %23219)
  %23229 = load ptr, ptr %7, align 8, !tbaa !9
  %23230 = load i32, ptr %12, align 4, !tbaa !5
  %23231 = load i32, ptr %8, align 4, !tbaa !5
  %23232 = mul nsw i32 24, %23231
  %23233 = add nsw i32 %23230, %23232
  %23234 = sext i32 %23233 to i64
  %23235 = getelementptr inbounds double, ptr %23229, i64 %23234
  %23236 = load double, ptr %23235, align 8, !tbaa !11
  %23237 = call double @llvm.fmuladd.f64(double 0x3C96000000000000, double %23236, double %23228)
  %23238 = load ptr, ptr %7, align 8, !tbaa !9
  %23239 = load i32, ptr %12, align 4, !tbaa !5
  %23240 = load i32, ptr %8, align 4, !tbaa !5
  %23241 = mul nsw i32 25, %23240
  %23242 = add nsw i32 %23239, %23241
  %23243 = sext i32 %23242 to i64
  %23244 = getelementptr inbounds double, ptr %23238, i64 %23243
  %23245 = load double, ptr %23244, align 8, !tbaa !11
  %23246 = call double @llvm.fmuladd.f64(double 0x3C89000000000000, double %23245, double %23237)
  %23247 = load ptr, ptr %7, align 8, !tbaa !9
  %23248 = load i32, ptr %12, align 4, !tbaa !5
  %23249 = load i32, ptr %8, align 4, !tbaa !5
  %23250 = mul nsw i32 26, %23249
  %23251 = add nsw i32 %23248, %23250
  %23252 = sext i32 %23251 to i64
  %23253 = getelementptr inbounds double, ptr %23247, i64 %23252
  %23254 = load double, ptr %23253, align 8, !tbaa !11
  %23255 = call double @llvm.fmuladd.f64(double 0x3C9E5FFFFFFFFFFD, double %23254, double %23246)
  %23256 = load ptr, ptr %7, align 8, !tbaa !9
  %23257 = load i32, ptr %12, align 4, !tbaa !5
  %23258 = load i32, ptr %8, align 4, !tbaa !5
  %23259 = mul nsw i32 27, %23258
  %23260 = add nsw i32 %23257, %23259
  %23261 = sext i32 %23260 to i64
  %23262 = getelementptr inbounds double, ptr %23256, i64 %23261
  %23263 = load double, ptr %23262, align 8, !tbaa !11
  %23264 = call double @llvm.fmuladd.f64(double 0xBCA0600000000001, double %23263, double %23255)
  %23265 = load ptr, ptr %7, align 8, !tbaa !9
  %23266 = load i32, ptr %12, align 4, !tbaa !5
  %23267 = load i32, ptr %8, align 4, !tbaa !5
  %23268 = mul nsw i32 28, %23267
  %23269 = add nsw i32 %23266, %23268
  %23270 = sext i32 %23269 to i64
  %23271 = getelementptr inbounds double, ptr %23265, i64 %23270
  %23272 = load double, ptr %23271, align 8, !tbaa !11
  %23273 = call double @llvm.fmuladd.f64(double 0x3C97800000000000, double %23272, double %23264)
  %23274 = load ptr, ptr %7, align 8, !tbaa !9
  %23275 = load i32, ptr %12, align 4, !tbaa !5
  %23276 = load i32, ptr %8, align 4, !tbaa !5
  %23277 = mul nsw i32 29, %23276
  %23278 = add nsw i32 %23275, %23277
  %23279 = sext i32 %23278 to i64
  %23280 = getelementptr inbounds double, ptr %23274, i64 %23279
  %23281 = load double, ptr %23280, align 8, !tbaa !11
  %23282 = call double @llvm.fmuladd.f64(double 0xBC8E000000000000, double %23281, double %23273)
  %23283 = load ptr, ptr %7, align 8, !tbaa !9
  %23284 = load i32, ptr %12, align 4, !tbaa !5
  %23285 = load i32, ptr %8, align 4, !tbaa !5
  %23286 = mul nsw i32 30, %23285
  %23287 = add nsw i32 %23284, %23286
  %23288 = sext i32 %23287 to i64
  %23289 = getelementptr inbounds double, ptr %23283, i64 %23288
  %23290 = load double, ptr %23289, align 8, !tbaa !11
  %23291 = call double @llvm.fmuladd.f64(double 0xBF83152016E0EC60, double %23290, double %23282)
  %23292 = load ptr, ptr %7, align 8, !tbaa !9
  %23293 = load i32, ptr %12, align 4, !tbaa !5
  %23294 = load i32, ptr %8, align 4, !tbaa !5
  %23295 = mul nsw i32 31, %23294
  %23296 = add nsw i32 %23293, %23295
  %23297 = sext i32 %23296 to i64
  %23298 = getelementptr inbounds double, ptr %23292, i64 %23297
  %23299 = load double, ptr %23298, align 8, !tbaa !11
  %23300 = call double @llvm.fmuladd.f64(double 0x3F938CE4890DB316, double %23299, double %23291)
  %23301 = load ptr, ptr %7, align 8, !tbaa !9
  %23302 = load i32, ptr %12, align 4, !tbaa !5
  %23303 = load i32, ptr %8, align 4, !tbaa !5
  %23304 = mul nsw i32 32, %23303
  %23305 = add nsw i32 %23302, %23304
  %23306 = sext i32 %23305 to i64
  %23307 = getelementptr inbounds double, ptr %23301, i64 %23306
  %23308 = load double, ptr %23307, align 8, !tbaa !11
  %23309 = call double @llvm.fmuladd.f64(double 0x3FF4EC1BB3FDC61B, double %23308, double %23300)
  %23310 = load ptr, ptr %7, align 8, !tbaa !9
  %23311 = load i32, ptr %12, align 4, !tbaa !5
  %23312 = load i32, ptr %8, align 4, !tbaa !5
  %23313 = mul nsw i32 33, %23312
  %23314 = add nsw i32 %23311, %23313
  %23315 = sext i32 %23314 to i64
  %23316 = getelementptr inbounds double, ptr %23310, i64 %23315
  %23317 = load double, ptr %23316, align 8, !tbaa !11
  %23318 = call double @llvm.fmuladd.f64(double 0xBFB5B58B4F03B1AC, double %23317, double %23309)
  %23319 = load ptr, ptr %7, align 8, !tbaa !9
  %23320 = load i32, ptr %12, align 4, !tbaa !5
  %23321 = load i32, ptr %8, align 4, !tbaa !5
  %23322 = mul nsw i32 34, %23321
  %23323 = add nsw i32 %23320, %23322
  %23324 = sext i32 %23323 to i64
  %23325 = getelementptr inbounds double, ptr %23319, i64 %23324
  %23326 = load double, ptr %23325, align 8, !tbaa !11
  %23327 = call double @llvm.fmuladd.f64(double 0x3FCA50C41AB7A329, double %23326, double %23318)
  %23328 = load ptr, ptr %7, align 8, !tbaa !9
  %23329 = load i32, ptr %12, align 4, !tbaa !5
  %23330 = load i32, ptr %8, align 4, !tbaa !5
  %23331 = mul nsw i32 35, %23330
  %23332 = add nsw i32 %23329, %23331
  %23333 = sext i32 %23332 to i64
  %23334 = getelementptr inbounds double, ptr %23328, i64 %23333
  %23335 = load double, ptr %23334, align 8, !tbaa !11
  %23336 = call double @llvm.fmuladd.f64(double 0xBF8BDAF699AECF88, double %23335, double %23327)
  %23337 = load ptr, ptr %7, align 8, !tbaa !9
  %23338 = load i32, ptr %12, align 4, !tbaa !5
  %23339 = load i32, ptr %8, align 4, !tbaa !5
  %23340 = mul nsw i32 36, %23339
  %23341 = add nsw i32 %23338, %23340
  %23342 = sext i32 %23341 to i64
  %23343 = getelementptr inbounds double, ptr %23337, i64 %23342
  %23344 = load double, ptr %23343, align 8, !tbaa !11
  %23345 = call double @llvm.fmuladd.f64(double 0x3FD417DEBFC17B21, double %23344, double %23336)
  %23346 = load ptr, ptr %7, align 8, !tbaa !9
  %23347 = load i32, ptr %12, align 4, !tbaa !5
  %23348 = load i32, ptr %8, align 4, !tbaa !5
  %23349 = mul nsw i32 37, %23348
  %23350 = add nsw i32 %23347, %23349
  %23351 = sext i32 %23350 to i64
  %23352 = getelementptr inbounds double, ptr %23346, i64 %23351
  %23353 = load double, ptr %23352, align 8, !tbaa !11
  %23354 = call double @llvm.fmuladd.f64(double 0xBFE5679E70A60669, double %23353, double %23345)
  %23355 = load ptr, ptr %7, align 8, !tbaa !9
  %23356 = load i32, ptr %12, align 4, !tbaa !5
  %23357 = load i32, ptr %8, align 4, !tbaa !5
  %23358 = mul nsw i32 38, %23357
  %23359 = add nsw i32 %23356, %23358
  %23360 = sext i32 %23359 to i64
  %23361 = getelementptr inbounds double, ptr %23355, i64 %23360
  %23362 = load double, ptr %23361, align 8, !tbaa !11
  %23363 = call double @llvm.fmuladd.f64(double 0x3F85E50BB681A3E1, double %23362, double %23354)
  %23364 = load ptr, ptr %7, align 8, !tbaa !9
  %23365 = load i32, ptr %12, align 4, !tbaa !5
  %23366 = load i32, ptr %8, align 4, !tbaa !5
  %23367 = mul nsw i32 39, %23366
  %23368 = add nsw i32 %23365, %23367
  %23369 = sext i32 %23368 to i64
  %23370 = getelementptr inbounds double, ptr %23364, i64 %23369
  %23371 = load double, ptr %23370, align 8, !tbaa !11
  %23372 = call double @llvm.fmuladd.f64(double 0xBFB49217631F5945, double %23371, double %23363)
  store double %23372, ptr %11, align 8, !tbaa !11
  %23373 = load double, ptr %11, align 8, !tbaa !11
  %23374 = load ptr, ptr %9, align 8, !tbaa !9
  %23375 = load i32, ptr %12, align 4, !tbaa !5
  %23376 = load i32, ptr %10, align 4, !tbaa !5
  %23377 = mul nsw i32 64, %23376
  %23378 = add nsw i32 %23375, %23377
  %23379 = sext i32 %23378 to i64
  %23380 = getelementptr inbounds double, ptr %23374, i64 %23379
  store double %23373, ptr %23380, align 8, !tbaa !11
  %23381 = load ptr, ptr %7, align 8, !tbaa !9
  %23382 = load i32, ptr %12, align 4, !tbaa !5
  %23383 = load i32, ptr %8, align 4, !tbaa !5
  %23384 = mul nsw i32 0, %23383
  %23385 = add nsw i32 %23382, %23384
  %23386 = sext i32 %23385 to i64
  %23387 = getelementptr inbounds double, ptr %23381, i64 %23386
  %23388 = load double, ptr %23387, align 8, !tbaa !11
  %23389 = load ptr, ptr %7, align 8, !tbaa !9
  %23390 = load i32, ptr %12, align 4, !tbaa !5
  %23391 = load i32, ptr %8, align 4, !tbaa !5
  %23392 = mul nsw i32 1, %23391
  %23393 = add nsw i32 %23390, %23392
  %23394 = sext i32 %23393 to i64
  %23395 = getelementptr inbounds double, ptr %23389, i64 %23394
  %23396 = load double, ptr %23395, align 8, !tbaa !11
  %23397 = fmul double 0xBCB3000000000000, %23396
  %23398 = call double @llvm.fmuladd.f64(double 0xBCC7800000000000, double %23388, double %23397)
  %23399 = load ptr, ptr %7, align 8, !tbaa !9
  %23400 = load i32, ptr %12, align 4, !tbaa !5
  %23401 = load i32, ptr %8, align 4, !tbaa !5
  %23402 = mul nsw i32 2, %23401
  %23403 = add nsw i32 %23400, %23402
  %23404 = sext i32 %23403 to i64
  %23405 = getelementptr inbounds double, ptr %23399, i64 %23404
  %23406 = load double, ptr %23405, align 8, !tbaa !11
  %23407 = call double @llvm.fmuladd.f64(double 0x3C7B800000000001, double %23406, double %23398)
  %23408 = load ptr, ptr %7, align 8, !tbaa !9
  %23409 = load i32, ptr %12, align 4, !tbaa !5
  %23410 = load i32, ptr %8, align 4, !tbaa !5
  %23411 = mul nsw i32 3, %23410
  %23412 = add nsw i32 %23409, %23411
  %23413 = sext i32 %23412 to i64
  %23414 = getelementptr inbounds double, ptr %23408, i64 %23413
  %23415 = load double, ptr %23414, align 8, !tbaa !11
  %23416 = call double @llvm.fmuladd.f64(double 0xBCC1080000000000, double %23415, double %23407)
  %23417 = load ptr, ptr %7, align 8, !tbaa !9
  %23418 = load i32, ptr %12, align 4, !tbaa !5
  %23419 = load i32, ptr %8, align 4, !tbaa !5
  %23420 = mul nsw i32 4, %23419
  %23421 = add nsw i32 %23418, %23420
  %23422 = sext i32 %23421 to i64
  %23423 = getelementptr inbounds double, ptr %23417, i64 %23422
  %23424 = load double, ptr %23423, align 8, !tbaa !11
  %23425 = call double @llvm.fmuladd.f64(double 0x3CB0100000000000, double %23424, double %23416)
  %23426 = load ptr, ptr %7, align 8, !tbaa !9
  %23427 = load i32, ptr %12, align 4, !tbaa !5
  %23428 = load i32, ptr %8, align 4, !tbaa !5
  %23429 = mul nsw i32 5, %23428
  %23430 = add nsw i32 %23427, %23429
  %23431 = sext i32 %23430 to i64
  %23432 = getelementptr inbounds double, ptr %23426, i64 %23431
  %23433 = load double, ptr %23432, align 8, !tbaa !11
  %23434 = call double @llvm.fmuladd.f64(double 0x3CAA3FFFFFFFFFFE, double %23433, double %23425)
  %23435 = load ptr, ptr %7, align 8, !tbaa !9
  %23436 = load i32, ptr %12, align 4, !tbaa !5
  %23437 = load i32, ptr %8, align 4, !tbaa !5
  %23438 = mul nsw i32 6, %23437
  %23439 = add nsw i32 %23436, %23438
  %23440 = sext i32 %23439 to i64
  %23441 = getelementptr inbounds double, ptr %23435, i64 %23440
  %23442 = load double, ptr %23441, align 8, !tbaa !11
  %23443 = call double @llvm.fmuladd.f64(double 0x3C92800000000000, double %23442, double %23434)
  %23444 = load ptr, ptr %7, align 8, !tbaa !9
  %23445 = load i32, ptr %12, align 4, !tbaa !5
  %23446 = load i32, ptr %8, align 4, !tbaa !5
  %23447 = mul nsw i32 7, %23446
  %23448 = add nsw i32 %23445, %23447
  %23449 = sext i32 %23448 to i64
  %23450 = getelementptr inbounds double, ptr %23444, i64 %23449
  %23451 = load double, ptr %23450, align 8, !tbaa !11
  %23452 = call double @llvm.fmuladd.f64(double 0xBCBE200000000000, double %23451, double %23443)
  %23453 = load ptr, ptr %7, align 8, !tbaa !9
  %23454 = load i32, ptr %12, align 4, !tbaa !5
  %23455 = load i32, ptr %8, align 4, !tbaa !5
  %23456 = mul nsw i32 8, %23455
  %23457 = add nsw i32 %23454, %23456
  %23458 = sext i32 %23457 to i64
  %23459 = getelementptr inbounds double, ptr %23453, i64 %23458
  %23460 = load double, ptr %23459, align 8, !tbaa !11
  %23461 = call double @llvm.fmuladd.f64(double 0xBC94000000000000, double %23460, double %23452)
  %23462 = load ptr, ptr %7, align 8, !tbaa !9
  %23463 = load i32, ptr %12, align 4, !tbaa !5
  %23464 = load i32, ptr %8, align 4, !tbaa !5
  %23465 = mul nsw i32 9, %23464
  %23466 = add nsw i32 %23463, %23465
  %23467 = sext i32 %23466 to i64
  %23468 = getelementptr inbounds double, ptr %23462, i64 %23467
  %23469 = load double, ptr %23468, align 8, !tbaa !11
  %23470 = call double @llvm.fmuladd.f64(double 0xBC70000000000001, double %23469, double %23461)
  %23471 = load ptr, ptr %7, align 8, !tbaa !9
  %23472 = load i32, ptr %12, align 4, !tbaa !5
  %23473 = load i32, ptr %8, align 4, !tbaa !5
  %23474 = mul nsw i32 10, %23473
  %23475 = add nsw i32 %23472, %23474
  %23476 = sext i32 %23475 to i64
  %23477 = getelementptr inbounds double, ptr %23471, i64 %23476
  %23478 = load double, ptr %23477, align 8, !tbaa !11
  %23479 = call double @llvm.fmuladd.f64(double 0x3CBE000000000000, double %23478, double %23470)
  %23480 = load ptr, ptr %7, align 8, !tbaa !9
  %23481 = load i32, ptr %12, align 4, !tbaa !5
  %23482 = load i32, ptr %8, align 4, !tbaa !5
  %23483 = mul nsw i32 11, %23482
  %23484 = add nsw i32 %23481, %23483
  %23485 = sext i32 %23484 to i64
  %23486 = getelementptr inbounds double, ptr %23480, i64 %23485
  %23487 = load double, ptr %23486, align 8, !tbaa !11
  %23488 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %23487, double %23479)
  %23489 = load ptr, ptr %7, align 8, !tbaa !9
  %23490 = load i32, ptr %12, align 4, !tbaa !5
  %23491 = load i32, ptr %8, align 4, !tbaa !5
  %23492 = mul nsw i32 12, %23491
  %23493 = add nsw i32 %23490, %23492
  %23494 = sext i32 %23493 to i64
  %23495 = getelementptr inbounds double, ptr %23489, i64 %23494
  %23496 = load double, ptr %23495, align 8, !tbaa !11
  %23497 = call double @llvm.fmuladd.f64(double 0x3CA4A00000000001, double %23496, double %23488)
  %23498 = load ptr, ptr %7, align 8, !tbaa !9
  %23499 = load i32, ptr %12, align 4, !tbaa !5
  %23500 = load i32, ptr %8, align 4, !tbaa !5
  %23501 = mul nsw i32 13, %23500
  %23502 = add nsw i32 %23499, %23501
  %23503 = sext i32 %23502 to i64
  %23504 = getelementptr inbounds double, ptr %23498, i64 %23503
  %23505 = load double, ptr %23504, align 8, !tbaa !11
  %23506 = call double @llvm.fmuladd.f64(double 0xBC9D7FFFFFFFFFFE, double %23505, double %23497)
  %23507 = load ptr, ptr %7, align 8, !tbaa !9
  %23508 = load i32, ptr %12, align 4, !tbaa !5
  %23509 = load i32, ptr %8, align 4, !tbaa !5
  %23510 = mul nsw i32 14, %23509
  %23511 = add nsw i32 %23508, %23510
  %23512 = sext i32 %23511 to i64
  %23513 = getelementptr inbounds double, ptr %23507, i64 %23512
  %23514 = load double, ptr %23513, align 8, !tbaa !11
  %23515 = call double @llvm.fmuladd.f64(double 0x3CB4800000000001, double %23514, double %23506)
  %23516 = load ptr, ptr %7, align 8, !tbaa !9
  %23517 = load i32, ptr %12, align 4, !tbaa !5
  %23518 = load i32, ptr %8, align 4, !tbaa !5
  %23519 = mul nsw i32 15, %23518
  %23520 = add nsw i32 %23517, %23519
  %23521 = sext i32 %23520 to i64
  %23522 = getelementptr inbounds double, ptr %23516, i64 %23521
  %23523 = load double, ptr %23522, align 8, !tbaa !11
  %23524 = call double @llvm.fmuladd.f64(double 0xBC86000000000001, double %23523, double %23515)
  %23525 = load ptr, ptr %7, align 8, !tbaa !9
  %23526 = load i32, ptr %12, align 4, !tbaa !5
  %23527 = load i32, ptr %8, align 4, !tbaa !5
  %23528 = mul nsw i32 16, %23527
  %23529 = add nsw i32 %23526, %23528
  %23530 = sext i32 %23529 to i64
  %23531 = getelementptr inbounds double, ptr %23525, i64 %23530
  %23532 = load double, ptr %23531, align 8, !tbaa !11
  %23533 = call double @llvm.fmuladd.f64(double 0x3CBEBFFFFFFFFFFF, double %23532, double %23524)
  %23534 = load ptr, ptr %7, align 8, !tbaa !9
  %23535 = load i32, ptr %12, align 4, !tbaa !5
  %23536 = load i32, ptr %8, align 4, !tbaa !5
  %23537 = mul nsw i32 17, %23536
  %23538 = add nsw i32 %23535, %23537
  %23539 = sext i32 %23538 to i64
  %23540 = getelementptr inbounds double, ptr %23534, i64 %23539
  %23541 = load double, ptr %23540, align 8, !tbaa !11
  %23542 = call double @llvm.fmuladd.f64(double 0xBCB3200000000000, double %23541, double %23533)
  %23543 = load ptr, ptr %7, align 8, !tbaa !9
  %23544 = load i32, ptr %12, align 4, !tbaa !5
  %23545 = load i32, ptr %8, align 4, !tbaa !5
  %23546 = mul nsw i32 18, %23545
  %23547 = add nsw i32 %23544, %23546
  %23548 = sext i32 %23547 to i64
  %23549 = getelementptr inbounds double, ptr %23543, i64 %23548
  %23550 = load double, ptr %23549, align 8, !tbaa !11
  %23551 = call double @llvm.fmuladd.f64(double 0xBC97000000000000, double %23550, double %23542)
  %23552 = load ptr, ptr %7, align 8, !tbaa !9
  %23553 = load i32, ptr %12, align 4, !tbaa !5
  %23554 = load i32, ptr %8, align 4, !tbaa !5
  %23555 = mul nsw i32 19, %23554
  %23556 = add nsw i32 %23553, %23555
  %23557 = sext i32 %23556 to i64
  %23558 = getelementptr inbounds double, ptr %23552, i64 %23557
  %23559 = load double, ptr %23558, align 8, !tbaa !11
  %23560 = call double @llvm.fmuladd.f64(double 0x3C92000000000000, double %23559, double %23551)
  %23561 = load ptr, ptr %7, align 8, !tbaa !9
  %23562 = load i32, ptr %12, align 4, !tbaa !5
  %23563 = load i32, ptr %8, align 4, !tbaa !5
  %23564 = mul nsw i32 20, %23563
  %23565 = add nsw i32 %23562, %23564
  %23566 = sext i32 %23565 to i64
  %23567 = getelementptr inbounds double, ptr %23561, i64 %23566
  %23568 = load double, ptr %23567, align 8, !tbaa !11
  %23569 = call double @llvm.fmuladd.f64(double 0xBCCB000000000000, double %23568, double %23560)
  %23570 = load ptr, ptr %7, align 8, !tbaa !9
  %23571 = load i32, ptr %12, align 4, !tbaa !5
  %23572 = load i32, ptr %8, align 4, !tbaa !5
  %23573 = mul nsw i32 21, %23572
  %23574 = add nsw i32 %23571, %23573
  %23575 = sext i32 %23574 to i64
  %23576 = getelementptr inbounds double, ptr %23570, i64 %23575
  %23577 = load double, ptr %23576, align 8, !tbaa !11
  %23578 = call double @llvm.fmuladd.f64(double 0xBCA2000000000000, double %23577, double %23569)
  %23579 = load ptr, ptr %7, align 8, !tbaa !9
  %23580 = load i32, ptr %12, align 4, !tbaa !5
  %23581 = load i32, ptr %8, align 4, !tbaa !5
  %23582 = mul nsw i32 22, %23581
  %23583 = add nsw i32 %23580, %23582
  %23584 = sext i32 %23583 to i64
  %23585 = getelementptr inbounds double, ptr %23579, i64 %23584
  %23586 = load double, ptr %23585, align 8, !tbaa !11
  %23587 = call double @llvm.fmuladd.f64(double 0xBCA5BFFFFFFFFFFF, double %23586, double %23578)
  %23588 = load ptr, ptr %7, align 8, !tbaa !9
  %23589 = load i32, ptr %12, align 4, !tbaa !5
  %23590 = load i32, ptr %8, align 4, !tbaa !5
  %23591 = mul nsw i32 23, %23590
  %23592 = add nsw i32 %23589, %23591
  %23593 = sext i32 %23592 to i64
  %23594 = getelementptr inbounds double, ptr %23588, i64 %23593
  %23595 = load double, ptr %23594, align 8, !tbaa !11
  %23596 = call double @llvm.fmuladd.f64(double 0x3CC2480000000000, double %23595, double %23587)
  %23597 = load ptr, ptr %7, align 8, !tbaa !9
  %23598 = load i32, ptr %12, align 4, !tbaa !5
  %23599 = load i32, ptr %8, align 4, !tbaa !5
  %23600 = mul nsw i32 24, %23599
  %23601 = add nsw i32 %23598, %23600
  %23602 = sext i32 %23601 to i64
  %23603 = getelementptr inbounds double, ptr %23597, i64 %23602
  %23604 = load double, ptr %23603, align 8, !tbaa !11
  %23605 = call double @llvm.fmuladd.f64(double 0xBC92000000000000, double %23604, double %23596)
  %23606 = load ptr, ptr %7, align 8, !tbaa !9
  %23607 = load i32, ptr %12, align 4, !tbaa !5
  %23608 = load i32, ptr %8, align 4, !tbaa !5
  %23609 = mul nsw i32 25, %23608
  %23610 = add nsw i32 %23607, %23609
  %23611 = sext i32 %23610 to i64
  %23612 = getelementptr inbounds double, ptr %23606, i64 %23611
  %23613 = load double, ptr %23612, align 8, !tbaa !11
  %23614 = call double @llvm.fmuladd.f64(double 0x3CB4C00000000000, double %23613, double %23605)
  %23615 = load ptr, ptr %7, align 8, !tbaa !9
  %23616 = load i32, ptr %12, align 4, !tbaa !5
  %23617 = load i32, ptr %8, align 4, !tbaa !5
  %23618 = mul nsw i32 26, %23617
  %23619 = add nsw i32 %23616, %23618
  %23620 = sext i32 %23619 to i64
  %23621 = getelementptr inbounds double, ptr %23615, i64 %23620
  %23622 = load double, ptr %23621, align 8, !tbaa !11
  %23623 = call double @llvm.fmuladd.f64(double 0xBC89000000000000, double %23622, double %23614)
  %23624 = load ptr, ptr %7, align 8, !tbaa !9
  %23625 = load i32, ptr %12, align 4, !tbaa !5
  %23626 = load i32, ptr %8, align 4, !tbaa !5
  %23627 = mul nsw i32 27, %23626
  %23628 = add nsw i32 %23625, %23627
  %23629 = sext i32 %23628 to i64
  %23630 = getelementptr inbounds double, ptr %23624, i64 %23629
  %23631 = load double, ptr %23630, align 8, !tbaa !11
  %23632 = call double @llvm.fmuladd.f64(double 0x3CB7F00000000001, double %23631, double %23623)
  %23633 = load ptr, ptr %7, align 8, !tbaa !9
  %23634 = load i32, ptr %12, align 4, !tbaa !5
  %23635 = load i32, ptr %8, align 4, !tbaa !5
  %23636 = mul nsw i32 28, %23635
  %23637 = add nsw i32 %23634, %23636
  %23638 = sext i32 %23637 to i64
  %23639 = getelementptr inbounds double, ptr %23633, i64 %23638
  %23640 = load double, ptr %23639, align 8, !tbaa !11
  %23641 = call double @llvm.fmuladd.f64(double 0xBC70000000000001, double %23640, double %23632)
  %23642 = load ptr, ptr %7, align 8, !tbaa !9
  %23643 = load i32, ptr %12, align 4, !tbaa !5
  %23644 = load i32, ptr %8, align 4, !tbaa !5
  %23645 = mul nsw i32 29, %23644
  %23646 = add nsw i32 %23643, %23645
  %23647 = sext i32 %23646 to i64
  %23648 = getelementptr inbounds double, ptr %23642, i64 %23647
  %23649 = load double, ptr %23648, align 8, !tbaa !11
  %23650 = call double @llvm.fmuladd.f64(double 0xBCA7000000000002, double %23649, double %23641)
  %23651 = load ptr, ptr %7, align 8, !tbaa !9
  %23652 = load i32, ptr %12, align 4, !tbaa !5
  %23653 = load i32, ptr %8, align 4, !tbaa !5
  %23654 = mul nsw i32 30, %23653
  %23655 = add nsw i32 %23652, %23654
  %23656 = sext i32 %23655 to i64
  %23657 = getelementptr inbounds double, ptr %23651, i64 %23656
  %23658 = load double, ptr %23657, align 8, !tbaa !11
  %23659 = call double @llvm.fmuladd.f64(double 0xBFE333710B32A29A, double %23658, double %23650)
  %23660 = load ptr, ptr %7, align 8, !tbaa !9
  %23661 = load i32, ptr %12, align 4, !tbaa !5
  %23662 = load i32, ptr %8, align 4, !tbaa !5
  %23663 = mul nsw i32 31, %23662
  %23664 = add nsw i32 %23661, %23663
  %23665 = sext i32 %23664 to i64
  %23666 = getelementptr inbounds double, ptr %23660, i64 %23665
  %23667 = load double, ptr %23666, align 8, !tbaa !11
  %23668 = call double @llvm.fmuladd.f64(double 0xBFA352D4DB969BCE, double %23667, double %23659)
  %23669 = load ptr, ptr %7, align 8, !tbaa !9
  %23670 = load i32, ptr %12, align 4, !tbaa !5
  %23671 = load i32, ptr %8, align 4, !tbaa !5
  %23672 = mul nsw i32 32, %23671
  %23673 = add nsw i32 %23670, %23672
  %23674 = sext i32 %23673 to i64
  %23675 = getelementptr inbounds double, ptr %23669, i64 %23674
  %23676 = load double, ptr %23675, align 8, !tbaa !11
  %23677 = call double @llvm.fmuladd.f64(double 0x3FA87D7643548540, double %23676, double %23668)
  %23678 = load ptr, ptr %7, align 8, !tbaa !9
  %23679 = load i32, ptr %12, align 4, !tbaa !5
  %23680 = load i32, ptr %8, align 4, !tbaa !5
  %23681 = mul nsw i32 33, %23680
  %23682 = add nsw i32 %23679, %23681
  %23683 = sext i32 %23682 to i64
  %23684 = getelementptr inbounds double, ptr %23678, i64 %23683
  %23685 = load double, ptr %23684, align 8, !tbaa !11
  %23686 = call double @llvm.fmuladd.f64(double 0xBFBEED13A9F0D910, double %23685, double %23677)
  %23687 = load ptr, ptr %7, align 8, !tbaa !9
  %23688 = load i32, ptr %12, align 4, !tbaa !5
  %23689 = load i32, ptr %8, align 4, !tbaa !5
  %23690 = mul nsw i32 34, %23689
  %23691 = add nsw i32 %23688, %23690
  %23692 = sext i32 %23691 to i64
  %23693 = getelementptr inbounds double, ptr %23687, i64 %23692
  %23694 = load double, ptr %23693, align 8, !tbaa !11
  %23695 = call double @llvm.fmuladd.f64(double 0x3FF670C5F1F4C92E, double %23694, double %23686)
  %23696 = load ptr, ptr %7, align 8, !tbaa !9
  %23697 = load i32, ptr %12, align 4, !tbaa !5
  %23698 = load i32, ptr %8, align 4, !tbaa !5
  %23699 = mul nsw i32 35, %23698
  %23700 = add nsw i32 %23697, %23699
  %23701 = sext i32 %23700 to i64
  %23702 = getelementptr inbounds double, ptr %23696, i64 %23701
  %23703 = load double, ptr %23702, align 8, !tbaa !11
  %23704 = call double @llvm.fmuladd.f64(double 0x3FC27B05E24EC5E2, double %23703, double %23695)
  %23705 = load ptr, ptr %7, align 8, !tbaa !9
  %23706 = load i32, ptr %12, align 4, !tbaa !5
  %23707 = load i32, ptr %8, align 4, !tbaa !5
  %23708 = mul nsw i32 36, %23707
  %23709 = add nsw i32 %23706, %23708
  %23710 = sext i32 %23709 to i64
  %23711 = getelementptr inbounds double, ptr %23705, i64 %23710
  %23712 = load double, ptr %23711, align 8, !tbaa !11
  %23713 = call double @llvm.fmuladd.f64(double 0x3FD35DAE88CBA63F, double %23712, double %23704)
  %23714 = load ptr, ptr %7, align 8, !tbaa !9
  %23715 = load i32, ptr %12, align 4, !tbaa !5
  %23716 = load i32, ptr %8, align 4, !tbaa !5
  %23717 = mul nsw i32 37, %23716
  %23718 = add nsw i32 %23715, %23717
  %23719 = sext i32 %23718 to i64
  %23720 = getelementptr inbounds double, ptr %23714, i64 %23719
  %23721 = load double, ptr %23720, align 8, !tbaa !11
  %23722 = call double @llvm.fmuladd.f64(double 0xBFD41C0D131D427F, double %23721, double %23713)
  %23723 = load ptr, ptr %7, align 8, !tbaa !9
  %23724 = load i32, ptr %12, align 4, !tbaa !5
  %23725 = load i32, ptr %8, align 4, !tbaa !5
  %23726 = mul nsw i32 38, %23725
  %23727 = add nsw i32 %23724, %23726
  %23728 = sext i32 %23727 to i64
  %23729 = getelementptr inbounds double, ptr %23723, i64 %23728
  %23730 = load double, ptr %23729, align 8, !tbaa !11
  %23731 = call double @llvm.fmuladd.f64(double 0x3F9854E0ADA34BA6, double %23730, double %23722)
  %23732 = load ptr, ptr %7, align 8, !tbaa !9
  %23733 = load i32, ptr %12, align 4, !tbaa !5
  %23734 = load i32, ptr %8, align 4, !tbaa !5
  %23735 = mul nsw i32 39, %23734
  %23736 = add nsw i32 %23733, %23735
  %23737 = sext i32 %23736 to i64
  %23738 = getelementptr inbounds double, ptr %23732, i64 %23737
  %23739 = load double, ptr %23738, align 8, !tbaa !11
  %23740 = call double @llvm.fmuladd.f64(double 0x3FC36A9134CD3C63, double %23739, double %23731)
  store double %23740, ptr %11, align 8, !tbaa !11
  %23741 = load double, ptr %11, align 8, !tbaa !11
  %23742 = load ptr, ptr %9, align 8, !tbaa !9
  %23743 = load i32, ptr %12, align 4, !tbaa !5
  %23744 = load i32, ptr %10, align 4, !tbaa !5
  %23745 = mul nsw i32 65, %23744
  %23746 = add nsw i32 %23743, %23745
  %23747 = sext i32 %23746 to i64
  %23748 = getelementptr inbounds double, ptr %23742, i64 %23747
  store double %23741, ptr %23748, align 8, !tbaa !11
  %23749 = load ptr, ptr %7, align 8, !tbaa !9
  %23750 = load i32, ptr %12, align 4, !tbaa !5
  %23751 = load i32, ptr %8, align 4, !tbaa !5
  %23752 = mul nsw i32 0, %23751
  %23753 = add nsw i32 %23750, %23752
  %23754 = sext i32 %23753 to i64
  %23755 = getelementptr inbounds double, ptr %23749, i64 %23754
  %23756 = load double, ptr %23755, align 8, !tbaa !11
  %23757 = load ptr, ptr %7, align 8, !tbaa !9
  %23758 = load i32, ptr %12, align 4, !tbaa !5
  %23759 = load i32, ptr %8, align 4, !tbaa !5
  %23760 = mul nsw i32 1, %23759
  %23761 = add nsw i32 %23758, %23760
  %23762 = sext i32 %23761 to i64
  %23763 = getelementptr inbounds double, ptr %23757, i64 %23762
  %23764 = load double, ptr %23763, align 8, !tbaa !11
  %23765 = fmul double 0x3CAB800000000001, %23764
  %23766 = call double @llvm.fmuladd.f64(double 0x3CAF000000000001, double %23756, double %23765)
  %23767 = load ptr, ptr %7, align 8, !tbaa !9
  %23768 = load i32, ptr %12, align 4, !tbaa !5
  %23769 = load i32, ptr %8, align 4, !tbaa !5
  %23770 = mul nsw i32 2, %23769
  %23771 = add nsw i32 %23768, %23770
  %23772 = sext i32 %23771 to i64
  %23773 = getelementptr inbounds double, ptr %23767, i64 %23772
  %23774 = load double, ptr %23773, align 8, !tbaa !11
  %23775 = call double @llvm.fmuladd.f64(double 0x3CADDFFFFFFFFFFE, double %23774, double %23766)
  %23776 = load ptr, ptr %7, align 8, !tbaa !9
  %23777 = load i32, ptr %12, align 4, !tbaa !5
  %23778 = load i32, ptr %8, align 4, !tbaa !5
  %23779 = mul nsw i32 3, %23778
  %23780 = add nsw i32 %23777, %23779
  %23781 = sext i32 %23780 to i64
  %23782 = getelementptr inbounds double, ptr %23776, i64 %23781
  %23783 = load double, ptr %23782, align 8, !tbaa !11
  %23784 = call double @llvm.fmuladd.f64(double 0xBCC7780000000000, double %23783, double %23775)
  %23785 = load ptr, ptr %7, align 8, !tbaa !9
  %23786 = load i32, ptr %12, align 4, !tbaa !5
  %23787 = load i32, ptr %8, align 4, !tbaa !5
  %23788 = mul nsw i32 4, %23787
  %23789 = add nsw i32 %23786, %23788
  %23790 = sext i32 %23789 to i64
  %23791 = getelementptr inbounds double, ptr %23785, i64 %23790
  %23792 = load double, ptr %23791, align 8, !tbaa !11
  %23793 = call double @llvm.fmuladd.f64(double 0x3CC2900000000000, double %23792, double %23784)
  %23794 = load ptr, ptr %7, align 8, !tbaa !9
  %23795 = load i32, ptr %12, align 4, !tbaa !5
  %23796 = load i32, ptr %8, align 4, !tbaa !5
  %23797 = mul nsw i32 5, %23796
  %23798 = add nsw i32 %23795, %23797
  %23799 = sext i32 %23798 to i64
  %23800 = getelementptr inbounds double, ptr %23794, i64 %23799
  %23801 = load double, ptr %23800, align 8, !tbaa !11
  %23802 = call double @llvm.fmuladd.f64(double 0xBC94800000000000, double %23801, double %23793)
  %23803 = load ptr, ptr %7, align 8, !tbaa !9
  %23804 = load i32, ptr %12, align 4, !tbaa !5
  %23805 = load i32, ptr %8, align 4, !tbaa !5
  %23806 = mul nsw i32 6, %23805
  %23807 = add nsw i32 %23804, %23806
  %23808 = sext i32 %23807 to i64
  %23809 = getelementptr inbounds double, ptr %23803, i64 %23808
  %23810 = load double, ptr %23809, align 8, !tbaa !11
  %23811 = call double @llvm.fmuladd.f64(double 0x3C66000000000000, double %23810, double %23802)
  %23812 = load ptr, ptr %7, align 8, !tbaa !9
  %23813 = load i32, ptr %12, align 4, !tbaa !5
  %23814 = load i32, ptr %8, align 4, !tbaa !5
  %23815 = mul nsw i32 7, %23814
  %23816 = add nsw i32 %23813, %23815
  %23817 = sext i32 %23816 to i64
  %23818 = getelementptr inbounds double, ptr %23812, i64 %23817
  %23819 = load double, ptr %23818, align 8, !tbaa !11
  %23820 = call double @llvm.fmuladd.f64(double 0xBCB42FFFFFFFFFFF, double %23819, double %23811)
  %23821 = load ptr, ptr %7, align 8, !tbaa !9
  %23822 = load i32, ptr %12, align 4, !tbaa !5
  %23823 = load i32, ptr %8, align 4, !tbaa !5
  %23824 = mul nsw i32 8, %23823
  %23825 = add nsw i32 %23822, %23824
  %23826 = sext i32 %23825 to i64
  %23827 = getelementptr inbounds double, ptr %23821, i64 %23826
  %23828 = load double, ptr %23827, align 8, !tbaa !11
  %23829 = call double @llvm.fmuladd.f64(double 0xBCAA800000000002, double %23828, double %23820)
  %23830 = load ptr, ptr %7, align 8, !tbaa !9
  %23831 = load i32, ptr %12, align 4, !tbaa !5
  %23832 = load i32, ptr %8, align 4, !tbaa !5
  %23833 = mul nsw i32 9, %23832
  %23834 = add nsw i32 %23831, %23833
  %23835 = sext i32 %23834 to i64
  %23836 = getelementptr inbounds double, ptr %23830, i64 %23835
  %23837 = load double, ptr %23836, align 8, !tbaa !11
  %23838 = call double @llvm.fmuladd.f64(double 0xBCB3C00000000000, double %23837, double %23829)
  %23839 = load ptr, ptr %7, align 8, !tbaa !9
  %23840 = load i32, ptr %12, align 4, !tbaa !5
  %23841 = load i32, ptr %8, align 4, !tbaa !5
  %23842 = mul nsw i32 10, %23841
  %23843 = add nsw i32 %23840, %23842
  %23844 = sext i32 %23843 to i64
  %23845 = getelementptr inbounds double, ptr %23839, i64 %23844
  %23846 = load double, ptr %23845, align 8, !tbaa !11
  %23847 = call double @llvm.fmuladd.f64(double 0x3CC6C00000000000, double %23846, double %23838)
  %23848 = load ptr, ptr %7, align 8, !tbaa !9
  %23849 = load i32, ptr %12, align 4, !tbaa !5
  %23850 = load i32, ptr %8, align 4, !tbaa !5
  %23851 = mul nsw i32 11, %23850
  %23852 = add nsw i32 %23849, %23851
  %23853 = sext i32 %23852 to i64
  %23854 = getelementptr inbounds double, ptr %23848, i64 %23853
  %23855 = load double, ptr %23854, align 8, !tbaa !11
  %23856 = call double @llvm.fmuladd.f64(double 0x3C9DFFFFFFFFFFFE, double %23855, double %23847)
  %23857 = load ptr, ptr %7, align 8, !tbaa !9
  %23858 = load i32, ptr %12, align 4, !tbaa !5
  %23859 = load i32, ptr %8, align 4, !tbaa !5
  %23860 = mul nsw i32 12, %23859
  %23861 = add nsw i32 %23858, %23860
  %23862 = sext i32 %23861 to i64
  %23863 = getelementptr inbounds double, ptr %23857, i64 %23862
  %23864 = load double, ptr %23863, align 8, !tbaa !11
  %23865 = call double @llvm.fmuladd.f64(double 0x3CB6200000000001, double %23864, double %23856)
  %23866 = load ptr, ptr %7, align 8, !tbaa !9
  %23867 = load i32, ptr %12, align 4, !tbaa !5
  %23868 = load i32, ptr %8, align 4, !tbaa !5
  %23869 = mul nsw i32 13, %23868
  %23870 = add nsw i32 %23867, %23869
  %23871 = sext i32 %23870 to i64
  %23872 = getelementptr inbounds double, ptr %23866, i64 %23871
  %23873 = load double, ptr %23872, align 8, !tbaa !11
  %23874 = call double @llvm.fmuladd.f64(double 0x3C89FFFFFFFFFFFF, double %23873, double %23865)
  %23875 = load ptr, ptr %7, align 8, !tbaa !9
  %23876 = load i32, ptr %12, align 4, !tbaa !5
  %23877 = load i32, ptr %8, align 4, !tbaa !5
  %23878 = mul nsw i32 14, %23877
  %23879 = add nsw i32 %23876, %23878
  %23880 = sext i32 %23879 to i64
  %23881 = getelementptr inbounds double, ptr %23875, i64 %23880
  %23882 = load double, ptr %23881, align 8, !tbaa !11
  %23883 = call double @llvm.fmuladd.f64(double 0xBCB5800000000000, double %23882, double %23874)
  %23884 = load ptr, ptr %7, align 8, !tbaa !9
  %23885 = load i32, ptr %12, align 4, !tbaa !5
  %23886 = load i32, ptr %8, align 4, !tbaa !5
  %23887 = mul nsw i32 15, %23886
  %23888 = add nsw i32 %23885, %23887
  %23889 = sext i32 %23888 to i64
  %23890 = getelementptr inbounds double, ptr %23884, i64 %23889
  %23891 = load double, ptr %23890, align 8, !tbaa !11
  %23892 = call double @llvm.fmuladd.f64(double 0xBCA5FFFFFFFFFFFF, double %23891, double %23883)
  %23893 = load ptr, ptr %7, align 8, !tbaa !9
  %23894 = load i32, ptr %12, align 4, !tbaa !5
  %23895 = load i32, ptr %8, align 4, !tbaa !5
  %23896 = mul nsw i32 16, %23895
  %23897 = add nsw i32 %23894, %23896
  %23898 = sext i32 %23897 to i64
  %23899 = getelementptr inbounds double, ptr %23893, i64 %23898
  %23900 = load double, ptr %23899, align 8, !tbaa !11
  %23901 = call double @llvm.fmuladd.f64(double 0x3CA4800000000001, double %23900, double %23892)
  %23902 = load ptr, ptr %7, align 8, !tbaa !9
  %23903 = load i32, ptr %12, align 4, !tbaa !5
  %23904 = load i32, ptr %8, align 4, !tbaa !5
  %23905 = mul nsw i32 17, %23904
  %23906 = add nsw i32 %23903, %23905
  %23907 = sext i32 %23906 to i64
  %23908 = getelementptr inbounds double, ptr %23902, i64 %23907
  %23909 = load double, ptr %23908, align 8, !tbaa !11
  %23910 = call double @llvm.fmuladd.f64(double 0xBCB27FFFFFFFFFFF, double %23909, double %23901)
  %23911 = load ptr, ptr %7, align 8, !tbaa !9
  %23912 = load i32, ptr %12, align 4, !tbaa !5
  %23913 = load i32, ptr %8, align 4, !tbaa !5
  %23914 = mul nsw i32 18, %23913
  %23915 = add nsw i32 %23912, %23914
  %23916 = sext i32 %23915 to i64
  %23917 = getelementptr inbounds double, ptr %23911, i64 %23916
  %23918 = load double, ptr %23917, align 8, !tbaa !11
  %23919 = call double @llvm.fmuladd.f64(double 0xBCB1000000000001, double %23918, double %23910)
  %23920 = load ptr, ptr %7, align 8, !tbaa !9
  %23921 = load i32, ptr %12, align 4, !tbaa !5
  %23922 = load i32, ptr %8, align 4, !tbaa !5
  %23923 = mul nsw i32 19, %23922
  %23924 = add nsw i32 %23921, %23923
  %23925 = sext i32 %23924 to i64
  %23926 = getelementptr inbounds double, ptr %23920, i64 %23925
  %23927 = load double, ptr %23926, align 8, !tbaa !11
  %23928 = call double @llvm.fmuladd.f64(double 0x3CB3800000000000, double %23927, double %23919)
  %23929 = load ptr, ptr %7, align 8, !tbaa !9
  %23930 = load i32, ptr %12, align 4, !tbaa !5
  %23931 = load i32, ptr %8, align 4, !tbaa !5
  %23932 = mul nsw i32 20, %23931
  %23933 = add nsw i32 %23930, %23932
  %23934 = sext i32 %23933 to i64
  %23935 = getelementptr inbounds double, ptr %23929, i64 %23934
  %23936 = load double, ptr %23935, align 8, !tbaa !11
  %23937 = call double @llvm.fmuladd.f64(double 0xBCC6C00000000000, double %23936, double %23928)
  %23938 = load ptr, ptr %7, align 8, !tbaa !9
  %23939 = load i32, ptr %12, align 4, !tbaa !5
  %23940 = load i32, ptr %8, align 4, !tbaa !5
  %23941 = mul nsw i32 21, %23940
  %23942 = add nsw i32 %23939, %23941
  %23943 = sext i32 %23942 to i64
  %23944 = getelementptr inbounds double, ptr %23938, i64 %23943
  %23945 = load double, ptr %23944, align 8, !tbaa !11
  %23946 = call double @llvm.fmuladd.f64(double 0xBCAF000000000001, double %23945, double %23937)
  %23947 = load ptr, ptr %7, align 8, !tbaa !9
  %23948 = load i32, ptr %12, align 4, !tbaa !5
  %23949 = load i32, ptr %8, align 4, !tbaa !5
  %23950 = mul nsw i32 22, %23949
  %23951 = add nsw i32 %23948, %23950
  %23952 = sext i32 %23951 to i64
  %23953 = getelementptr inbounds double, ptr %23947, i64 %23952
  %23954 = load double, ptr %23953, align 8, !tbaa !11
  %23955 = call double @llvm.fmuladd.f64(double 0xBCB5400000000000, double %23954, double %23946)
  %23956 = load ptr, ptr %7, align 8, !tbaa !9
  %23957 = load i32, ptr %12, align 4, !tbaa !5
  %23958 = load i32, ptr %8, align 4, !tbaa !5
  %23959 = mul nsw i32 23, %23958
  %23960 = add nsw i32 %23957, %23959
  %23961 = sext i32 %23960 to i64
  %23962 = getelementptr inbounds double, ptr %23956, i64 %23961
  %23963 = load double, ptr %23962, align 8, !tbaa !11
  %23964 = call double @llvm.fmuladd.f64(double 0x3CB5600000000000, double %23963, double %23955)
  %23965 = load ptr, ptr %7, align 8, !tbaa !9
  %23966 = load i32, ptr %12, align 4, !tbaa !5
  %23967 = load i32, ptr %8, align 4, !tbaa !5
  %23968 = mul nsw i32 24, %23967
  %23969 = add nsw i32 %23966, %23968
  %23970 = sext i32 %23969 to i64
  %23971 = getelementptr inbounds double, ptr %23965, i64 %23970
  %23972 = load double, ptr %23971, align 8, !tbaa !11
  %23973 = call double @llvm.fmuladd.f64(double 0x3C96000000000000, double %23972, double %23964)
  %23974 = load ptr, ptr %7, align 8, !tbaa !9
  %23975 = load i32, ptr %12, align 4, !tbaa !5
  %23976 = load i32, ptr %8, align 4, !tbaa !5
  %23977 = mul nsw i32 25, %23976
  %23978 = add nsw i32 %23975, %23977
  %23979 = sext i32 %23978 to i64
  %23980 = getelementptr inbounds double, ptr %23974, i64 %23979
  %23981 = load double, ptr %23980, align 8, !tbaa !11
  %23982 = call double @llvm.fmuladd.f64(double 0x3CB8000000000001, double %23981, double %23973)
  %23983 = load ptr, ptr %7, align 8, !tbaa !9
  %23984 = load i32, ptr %12, align 4, !tbaa !5
  %23985 = load i32, ptr %8, align 4, !tbaa !5
  %23986 = mul nsw i32 26, %23985
  %23987 = add nsw i32 %23984, %23986
  %23988 = sext i32 %23987 to i64
  %23989 = getelementptr inbounds double, ptr %23983, i64 %23988
  %23990 = load double, ptr %23989, align 8, !tbaa !11
  %23991 = call double @llvm.fmuladd.f64(double 0xBC79FFFFFFFFFFFF, double %23990, double %23982)
  %23992 = load ptr, ptr %7, align 8, !tbaa !9
  %23993 = load i32, ptr %12, align 4, !tbaa !5
  %23994 = load i32, ptr %8, align 4, !tbaa !5
  %23995 = mul nsw i32 27, %23994
  %23996 = add nsw i32 %23993, %23995
  %23997 = sext i32 %23996 to i64
  %23998 = getelementptr inbounds double, ptr %23992, i64 %23997
  %23999 = load double, ptr %23998, align 8, !tbaa !11
  %24000 = call double @llvm.fmuladd.f64(double 0x3CB77FFFFFFFFFFF, double %23999, double %23991)
  %24001 = load ptr, ptr %7, align 8, !tbaa !9
  %24002 = load i32, ptr %12, align 4, !tbaa !5
  %24003 = load i32, ptr %8, align 4, !tbaa !5
  %24004 = mul nsw i32 28, %24003
  %24005 = add nsw i32 %24002, %24004
  %24006 = sext i32 %24005 to i64
  %24007 = getelementptr inbounds double, ptr %24001, i64 %24006
  %24008 = load double, ptr %24007, align 8, !tbaa !11
  %24009 = call double @llvm.fmuladd.f64(double 0xBCA2000000000000, double %24008, double %24000)
  %24010 = load ptr, ptr %7, align 8, !tbaa !9
  %24011 = load i32, ptr %12, align 4, !tbaa !5
  %24012 = load i32, ptr %8, align 4, !tbaa !5
  %24013 = mul nsw i32 29, %24012
  %24014 = add nsw i32 %24011, %24013
  %24015 = sext i32 %24014 to i64
  %24016 = getelementptr inbounds double, ptr %24010, i64 %24015
  %24017 = load double, ptr %24016, align 8, !tbaa !11
  %24018 = call double @llvm.fmuladd.f64(double 0x3CA1000000000001, double %24017, double %24009)
  %24019 = load ptr, ptr %7, align 8, !tbaa !9
  %24020 = load i32, ptr %12, align 4, !tbaa !5
  %24021 = load i32, ptr %8, align 4, !tbaa !5
  %24022 = mul nsw i32 30, %24021
  %24023 = add nsw i32 %24020, %24022
  %24024 = sext i32 %24023 to i64
  %24025 = getelementptr inbounds double, ptr %24019, i64 %24024
  %24026 = load double, ptr %24025, align 8, !tbaa !11
  %24027 = call double @llvm.fmuladd.f64(double 0xBFE333710B32A2A1, double %24026, double %24018)
  %24028 = load ptr, ptr %7, align 8, !tbaa !9
  %24029 = load i32, ptr %12, align 4, !tbaa !5
  %24030 = load i32, ptr %8, align 4, !tbaa !5
  %24031 = mul nsw i32 31, %24030
  %24032 = add nsw i32 %24029, %24031
  %24033 = sext i32 %24032 to i64
  %24034 = getelementptr inbounds double, ptr %24028, i64 %24033
  %24035 = load double, ptr %24034, align 8, !tbaa !11
  %24036 = call double @llvm.fmuladd.f64(double 0x3FA87D764354851C, double %24035, double %24027)
  %24037 = load ptr, ptr %7, align 8, !tbaa !9
  %24038 = load i32, ptr %12, align 4, !tbaa !5
  %24039 = load i32, ptr %8, align 4, !tbaa !5
  %24040 = mul nsw i32 32, %24039
  %24041 = add nsw i32 %24038, %24040
  %24042 = sext i32 %24041 to i64
  %24043 = getelementptr inbounds double, ptr %24037, i64 %24042
  %24044 = load double, ptr %24043, align 8, !tbaa !11
  %24045 = call double @llvm.fmuladd.f64(double 0xBFA352D4DB969BF9, double %24044, double %24036)
  %24046 = load ptr, ptr %7, align 8, !tbaa !9
  %24047 = load i32, ptr %12, align 4, !tbaa !5
  %24048 = load i32, ptr %8, align 4, !tbaa !5
  %24049 = mul nsw i32 33, %24048
  %24050 = add nsw i32 %24047, %24049
  %24051 = sext i32 %24050 to i64
  %24052 = getelementptr inbounds double, ptr %24046, i64 %24051
  %24053 = load double, ptr %24052, align 8, !tbaa !11
  %24054 = call double @llvm.fmuladd.f64(double 0xBFBEED13A9F0D909, double %24053, double %24045)
  %24055 = load ptr, ptr %7, align 8, !tbaa !9
  %24056 = load i32, ptr %12, align 4, !tbaa !5
  %24057 = load i32, ptr %8, align 4, !tbaa !5
  %24058 = mul nsw i32 34, %24057
  %24059 = add nsw i32 %24056, %24058
  %24060 = sext i32 %24059 to i64
  %24061 = getelementptr inbounds double, ptr %24055, i64 %24060
  %24062 = load double, ptr %24061, align 8, !tbaa !11
  %24063 = call double @llvm.fmuladd.f64(double 0x3FC36A9134CD3C5F, double %24062, double %24054)
  %24064 = load ptr, ptr %7, align 8, !tbaa !9
  %24065 = load i32, ptr %12, align 4, !tbaa !5
  %24066 = load i32, ptr %8, align 4, !tbaa !5
  %24067 = mul nsw i32 35, %24066
  %24068 = add nsw i32 %24065, %24067
  %24069 = sext i32 %24068 to i64
  %24070 = getelementptr inbounds double, ptr %24064, i64 %24069
  %24071 = load double, ptr %24070, align 8, !tbaa !11
  %24072 = call double @llvm.fmuladd.f64(double 0x3FD35DAE88CBA642, double %24071, double %24063)
  %24073 = load ptr, ptr %7, align 8, !tbaa !9
  %24074 = load i32, ptr %12, align 4, !tbaa !5
  %24075 = load i32, ptr %8, align 4, !tbaa !5
  %24076 = mul nsw i32 36, %24075
  %24077 = add nsw i32 %24074, %24076
  %24078 = sext i32 %24077 to i64
  %24079 = getelementptr inbounds double, ptr %24073, i64 %24078
  %24080 = load double, ptr %24079, align 8, !tbaa !11
  %24081 = call double @llvm.fmuladd.f64(double 0x3FC27B05E24EC5E9, double %24080, double %24072)
  %24082 = load ptr, ptr %7, align 8, !tbaa !9
  %24083 = load i32, ptr %12, align 4, !tbaa !5
  %24084 = load i32, ptr %8, align 4, !tbaa !5
  %24085 = mul nsw i32 37, %24084
  %24086 = add nsw i32 %24083, %24085
  %24087 = sext i32 %24086 to i64
  %24088 = getelementptr inbounds double, ptr %24082, i64 %24087
  %24089 = load double, ptr %24088, align 8, !tbaa !11
  %24090 = call double @llvm.fmuladd.f64(double 0x3F9854E0ADA34BFA, double %24089, double %24081)
  %24091 = load ptr, ptr %7, align 8, !tbaa !9
  %24092 = load i32, ptr %12, align 4, !tbaa !5
  %24093 = load i32, ptr %8, align 4, !tbaa !5
  %24094 = mul nsw i32 38, %24093
  %24095 = add nsw i32 %24092, %24094
  %24096 = sext i32 %24095 to i64
  %24097 = getelementptr inbounds double, ptr %24091, i64 %24096
  %24098 = load double, ptr %24097, align 8, !tbaa !11
  %24099 = call double @llvm.fmuladd.f64(double 0xBFD41C0D131D4285, double %24098, double %24090)
  %24100 = load ptr, ptr %7, align 8, !tbaa !9
  %24101 = load i32, ptr %12, align 4, !tbaa !5
  %24102 = load i32, ptr %8, align 4, !tbaa !5
  %24103 = mul nsw i32 39, %24102
  %24104 = add nsw i32 %24101, %24103
  %24105 = sext i32 %24104 to i64
  %24106 = getelementptr inbounds double, ptr %24100, i64 %24105
  %24107 = load double, ptr %24106, align 8, !tbaa !11
  %24108 = call double @llvm.fmuladd.f64(double 0x3FF670C5F1F4C92E, double %24107, double %24099)
  store double %24108, ptr %11, align 8, !tbaa !11
  %24109 = load double, ptr %11, align 8, !tbaa !11
  %24110 = load ptr, ptr %9, align 8, !tbaa !9
  %24111 = load i32, ptr %12, align 4, !tbaa !5
  %24112 = load i32, ptr %10, align 4, !tbaa !5
  %24113 = mul nsw i32 66, %24112
  %24114 = add nsw i32 %24111, %24113
  %24115 = sext i32 %24114 to i64
  %24116 = getelementptr inbounds double, ptr %24110, i64 %24115
  store double %24109, ptr %24116, align 8, !tbaa !11
  %24117 = load ptr, ptr %7, align 8, !tbaa !9
  %24118 = load i32, ptr %12, align 4, !tbaa !5
  %24119 = load i32, ptr %8, align 4, !tbaa !5
  %24120 = mul nsw i32 0, %24119
  %24121 = add nsw i32 %24118, %24120
  %24122 = sext i32 %24121 to i64
  %24123 = getelementptr inbounds double, ptr %24117, i64 %24122
  %24124 = load double, ptr %24123, align 8, !tbaa !11
  %24125 = load ptr, ptr %7, align 8, !tbaa !9
  %24126 = load i32, ptr %12, align 4, !tbaa !5
  %24127 = load i32, ptr %8, align 4, !tbaa !5
  %24128 = mul nsw i32 1, %24127
  %24129 = add nsw i32 %24126, %24128
  %24130 = sext i32 %24129 to i64
  %24131 = getelementptr inbounds double, ptr %24125, i64 %24130
  %24132 = load double, ptr %24131, align 8, !tbaa !11
  %24133 = fmul double 0x3CA1000000000001, %24132
  %24134 = call double @llvm.fmuladd.f64(double 0x3CB3FFFFFFFFFFFF, double %24124, double %24133)
  %24135 = load ptr, ptr %7, align 8, !tbaa !9
  %24136 = load i32, ptr %12, align 4, !tbaa !5
  %24137 = load i32, ptr %8, align 4, !tbaa !5
  %24138 = mul nsw i32 2, %24137
  %24139 = add nsw i32 %24136, %24138
  %24140 = sext i32 %24139 to i64
  %24141 = getelementptr inbounds double, ptr %24135, i64 %24140
  %24142 = load double, ptr %24141, align 8, !tbaa !11
  %24143 = call double @llvm.fmuladd.f64(double 0x3CAF000000000001, double %24142, double %24134)
  %24144 = load ptr, ptr %7, align 8, !tbaa !9
  %24145 = load i32, ptr %12, align 4, !tbaa !5
  %24146 = load i32, ptr %8, align 4, !tbaa !5
  %24147 = mul nsw i32 3, %24146
  %24148 = add nsw i32 %24145, %24147
  %24149 = sext i32 %24148 to i64
  %24150 = getelementptr inbounds double, ptr %24144, i64 %24149
  %24151 = load double, ptr %24150, align 8, !tbaa !11
  %24152 = call double @llvm.fmuladd.f64(double 0xBCB4C00000000000, double %24151, double %24143)
  %24153 = load ptr, ptr %7, align 8, !tbaa !9
  %24154 = load i32, ptr %12, align 4, !tbaa !5
  %24155 = load i32, ptr %8, align 4, !tbaa !5
  %24156 = mul nsw i32 4, %24155
  %24157 = add nsw i32 %24154, %24156
  %24158 = sext i32 %24157 to i64
  %24159 = getelementptr inbounds double, ptr %24153, i64 %24158
  %24160 = load double, ptr %24159, align 8, !tbaa !11
  %24161 = call double @llvm.fmuladd.f64(double 0x3CB5000000000000, double %24160, double %24152)
  %24162 = load ptr, ptr %7, align 8, !tbaa !9
  %24163 = load i32, ptr %12, align 4, !tbaa !5
  %24164 = load i32, ptr %8, align 4, !tbaa !5
  %24165 = mul nsw i32 5, %24164
  %24166 = add nsw i32 %24163, %24165
  %24167 = sext i32 %24166 to i64
  %24168 = getelementptr inbounds double, ptr %24162, i64 %24167
  %24169 = load double, ptr %24168, align 8, !tbaa !11
  %24170 = call double @llvm.fmuladd.f64(double 0x3C7FFFFFFFFFFFFF, double %24169, double %24161)
  %24171 = load ptr, ptr %7, align 8, !tbaa !9
  %24172 = load i32, ptr %12, align 4, !tbaa !5
  %24173 = load i32, ptr %8, align 4, !tbaa !5
  %24174 = mul nsw i32 7, %24173
  %24175 = add nsw i32 %24172, %24174
  %24176 = sext i32 %24175 to i64
  %24177 = getelementptr inbounds double, ptr %24171, i64 %24176
  %24178 = load double, ptr %24177, align 8, !tbaa !11
  %24179 = call double @llvm.fmuladd.f64(double 0xBC94000000000000, double %24178, double %24170)
  %24180 = load ptr, ptr %7, align 8, !tbaa !9
  %24181 = load i32, ptr %12, align 4, !tbaa !5
  %24182 = load i32, ptr %8, align 4, !tbaa !5
  %24183 = mul nsw i32 8, %24182
  %24184 = add nsw i32 %24181, %24183
  %24185 = sext i32 %24184 to i64
  %24186 = getelementptr inbounds double, ptr %24180, i64 %24185
  %24187 = load double, ptr %24186, align 8, !tbaa !11
  %24188 = call double @llvm.fmuladd.f64(double 0xBCB5FFFFFFFFFFFF, double %24187, double %24179)
  %24189 = load ptr, ptr %7, align 8, !tbaa !9
  %24190 = load i32, ptr %12, align 4, !tbaa !5
  %24191 = load i32, ptr %8, align 4, !tbaa !5
  %24192 = mul nsw i32 9, %24191
  %24193 = add nsw i32 %24190, %24192
  %24194 = sext i32 %24193 to i64
  %24195 = getelementptr inbounds double, ptr %24189, i64 %24194
  %24196 = load double, ptr %24195, align 8, !tbaa !11
  %24197 = call double @llvm.fmuladd.f64(double 0xBCB7000000000000, double %24196, double %24188)
  %24198 = load ptr, ptr %7, align 8, !tbaa !9
  %24199 = load i32, ptr %12, align 4, !tbaa !5
  %24200 = load i32, ptr %8, align 4, !tbaa !5
  %24201 = mul nsw i32 10, %24200
  %24202 = add nsw i32 %24199, %24201
  %24203 = sext i32 %24202 to i64
  %24204 = getelementptr inbounds double, ptr %24198, i64 %24203
  %24205 = load double, ptr %24204, align 8, !tbaa !11
  %24206 = call double @llvm.fmuladd.f64(double 0xBCAC000000000000, double %24205, double %24197)
  %24207 = load ptr, ptr %7, align 8, !tbaa !9
  %24208 = load i32, ptr %12, align 4, !tbaa !5
  %24209 = load i32, ptr %8, align 4, !tbaa !5
  %24210 = mul nsw i32 11, %24209
  %24211 = add nsw i32 %24208, %24210
  %24212 = sext i32 %24211 to i64
  %24213 = getelementptr inbounds double, ptr %24207, i64 %24212
  %24214 = load double, ptr %24213, align 8, !tbaa !11
  %24215 = call double @llvm.fmuladd.f64(double 0x3CA8000000000001, double %24214, double %24206)
  %24216 = load ptr, ptr %7, align 8, !tbaa !9
  %24217 = load i32, ptr %12, align 4, !tbaa !5
  %24218 = load i32, ptr %8, align 4, !tbaa !5
  %24219 = mul nsw i32 12, %24218
  %24220 = add nsw i32 %24217, %24219
  %24221 = sext i32 %24220 to i64
  %24222 = getelementptr inbounds double, ptr %24216, i64 %24221
  %24223 = load double, ptr %24222, align 8, !tbaa !11
  %24224 = call double @llvm.fmuladd.f64(double 0x3CA4000000000001, double %24223, double %24215)
  %24225 = load ptr, ptr %7, align 8, !tbaa !9
  %24226 = load i32, ptr %12, align 4, !tbaa !5
  %24227 = load i32, ptr %8, align 4, !tbaa !5
  %24228 = mul nsw i32 13, %24227
  %24229 = add nsw i32 %24226, %24228
  %24230 = sext i32 %24229 to i64
  %24231 = getelementptr inbounds double, ptr %24225, i64 %24230
  %24232 = load double, ptr %24231, align 8, !tbaa !11
  %24233 = call double @llvm.fmuladd.f64(double 0xBC99000000000000, double %24232, double %24224)
  %24234 = load ptr, ptr %7, align 8, !tbaa !9
  %24235 = load i32, ptr %12, align 4, !tbaa !5
  %24236 = load i32, ptr %8, align 4, !tbaa !5
  %24237 = mul nsw i32 14, %24236
  %24238 = add nsw i32 %24235, %24237
  %24239 = sext i32 %24238 to i64
  %24240 = getelementptr inbounds double, ptr %24234, i64 %24239
  %24241 = load double, ptr %24240, align 8, !tbaa !11
  %24242 = call double @llvm.fmuladd.f64(double 0xBCB8000000000001, double %24241, double %24233)
  %24243 = load ptr, ptr %7, align 8, !tbaa !9
  %24244 = load i32, ptr %12, align 4, !tbaa !5
  %24245 = load i32, ptr %8, align 4, !tbaa !5
  %24246 = mul nsw i32 16, %24245
  %24247 = add nsw i32 %24244, %24246
  %24248 = sext i32 %24247 to i64
  %24249 = getelementptr inbounds double, ptr %24243, i64 %24248
  %24250 = load double, ptr %24249, align 8, !tbaa !11
  %24251 = call double @llvm.fmuladd.f64(double 0x3CB0000000000000, double %24250, double %24242)
  %24252 = load ptr, ptr %7, align 8, !tbaa !9
  %24253 = load i32, ptr %12, align 4, !tbaa !5
  %24254 = load i32, ptr %8, align 4, !tbaa !5
  %24255 = mul nsw i32 17, %24254
  %24256 = add nsw i32 %24253, %24255
  %24257 = sext i32 %24256 to i64
  %24258 = getelementptr inbounds double, ptr %24252, i64 %24257
  %24259 = load double, ptr %24258, align 8, !tbaa !11
  %24260 = call double @llvm.fmuladd.f64(double 0xBC96000000000000, double %24259, double %24251)
  %24261 = load ptr, ptr %7, align 8, !tbaa !9
  %24262 = load i32, ptr %12, align 4, !tbaa !5
  %24263 = load i32, ptr %8, align 4, !tbaa !5
  %24264 = mul nsw i32 18, %24263
  %24265 = add nsw i32 %24262, %24264
  %24266 = sext i32 %24265 to i64
  %24267 = getelementptr inbounds double, ptr %24261, i64 %24266
  %24268 = load double, ptr %24267, align 8, !tbaa !11
  %24269 = call double @llvm.fmuladd.f64(double 0xBC90000000000000, double %24268, double %24260)
  %24270 = load ptr, ptr %7, align 8, !tbaa !9
  %24271 = load i32, ptr %12, align 4, !tbaa !5
  %24272 = load i32, ptr %8, align 4, !tbaa !5
  %24273 = mul nsw i32 19, %24272
  %24274 = add nsw i32 %24271, %24273
  %24275 = sext i32 %24274 to i64
  %24276 = getelementptr inbounds double, ptr %24270, i64 %24275
  %24277 = load double, ptr %24276, align 8, !tbaa !11
  %24278 = call double @llvm.fmuladd.f64(double 0x3CA0000000000002, double %24277, double %24269)
  %24279 = load ptr, ptr %7, align 8, !tbaa !9
  %24280 = load i32, ptr %12, align 4, !tbaa !5
  %24281 = load i32, ptr %8, align 4, !tbaa !5
  %24282 = mul nsw i32 20, %24281
  %24283 = add nsw i32 %24280, %24282
  %24284 = sext i32 %24283 to i64
  %24285 = getelementptr inbounds double, ptr %24279, i64 %24284
  %24286 = load double, ptr %24285, align 8, !tbaa !11
  %24287 = call double @llvm.fmuladd.f64(double 0xBCA4000000000001, double %24286, double %24278)
  %24288 = load ptr, ptr %7, align 8, !tbaa !9
  %24289 = load i32, ptr %12, align 4, !tbaa !5
  %24290 = load i32, ptr %8, align 4, !tbaa !5
  %24291 = mul nsw i32 21, %24290
  %24292 = add nsw i32 %24289, %24291
  %24293 = sext i32 %24292 to i64
  %24294 = getelementptr inbounds double, ptr %24288, i64 %24293
  %24295 = load double, ptr %24294, align 8, !tbaa !11
  %24296 = call double @llvm.fmuladd.f64(double 0x3CB0000000000000, double %24295, double %24287)
  %24297 = load ptr, ptr %7, align 8, !tbaa !9
  %24298 = load i32, ptr %12, align 4, !tbaa !5
  %24299 = load i32, ptr %8, align 4, !tbaa !5
  %24300 = mul nsw i32 22, %24299
  %24301 = add nsw i32 %24298, %24300
  %24302 = sext i32 %24301 to i64
  %24303 = getelementptr inbounds double, ptr %24297, i64 %24302
  %24304 = load double, ptr %24303, align 8, !tbaa !11
  %24305 = call double @llvm.fmuladd.f64(double 0xBC9A000000000000, double %24304, double %24296)
  %24306 = load ptr, ptr %7, align 8, !tbaa !9
  %24307 = load i32, ptr %12, align 4, !tbaa !5
  %24308 = load i32, ptr %8, align 4, !tbaa !5
  %24309 = mul nsw i32 23, %24308
  %24310 = add nsw i32 %24307, %24309
  %24311 = sext i32 %24310 to i64
  %24312 = getelementptr inbounds double, ptr %24306, i64 %24311
  %24313 = load double, ptr %24312, align 8, !tbaa !11
  %24314 = call double @llvm.fmuladd.f64(double 0x3C82000000000000, double %24313, double %24305)
  %24315 = load ptr, ptr %7, align 8, !tbaa !9
  %24316 = load i32, ptr %12, align 4, !tbaa !5
  %24317 = load i32, ptr %8, align 4, !tbaa !5
  %24318 = mul nsw i32 24, %24317
  %24319 = add nsw i32 %24316, %24318
  %24320 = sext i32 %24319 to i64
  %24321 = getelementptr inbounds double, ptr %24315, i64 %24320
  %24322 = load double, ptr %24321, align 8, !tbaa !11
  %24323 = call double @llvm.fmuladd.f64(double 0x3C98000000000000, double %24322, double %24314)
  %24324 = load ptr, ptr %7, align 8, !tbaa !9
  %24325 = load i32, ptr %12, align 4, !tbaa !5
  %24326 = load i32, ptr %8, align 4, !tbaa !5
  %24327 = mul nsw i32 25, %24326
  %24328 = add nsw i32 %24325, %24327
  %24329 = sext i32 %24328 to i64
  %24330 = getelementptr inbounds double, ptr %24324, i64 %24329
  %24331 = load double, ptr %24330, align 8, !tbaa !11
  %24332 = call double @llvm.fmuladd.f64(double 0x3CA2000000000000, double %24331, double %24323)
  %24333 = load ptr, ptr %7, align 8, !tbaa !9
  %24334 = load i32, ptr %12, align 4, !tbaa !5
  %24335 = load i32, ptr %8, align 4, !tbaa !5
  %24336 = mul nsw i32 26, %24335
  %24337 = add nsw i32 %24334, %24336
  %24338 = sext i32 %24337 to i64
  %24339 = getelementptr inbounds double, ptr %24333, i64 %24338
  %24340 = load double, ptr %24339, align 8, !tbaa !11
  %24341 = call double @llvm.fmuladd.f64(double 0xBCA1000000000001, double %24340, double %24332)
  %24342 = load ptr, ptr %7, align 8, !tbaa !9
  %24343 = load i32, ptr %12, align 4, !tbaa !5
  %24344 = load i32, ptr %8, align 4, !tbaa !5
  %24345 = mul nsw i32 27, %24344
  %24346 = add nsw i32 %24343, %24345
  %24347 = sext i32 %24346 to i64
  %24348 = getelementptr inbounds double, ptr %24342, i64 %24347
  %24349 = load double, ptr %24348, align 8, !tbaa !11
  %24350 = call double @llvm.fmuladd.f64(double 0x3CB3800000000000, double %24349, double %24341)
  %24351 = load ptr, ptr %7, align 8, !tbaa !9
  %24352 = load i32, ptr %12, align 4, !tbaa !5
  %24353 = load i32, ptr %8, align 4, !tbaa !5
  %24354 = mul nsw i32 28, %24353
  %24355 = add nsw i32 %24352, %24354
  %24356 = sext i32 %24355 to i64
  %24357 = getelementptr inbounds double, ptr %24351, i64 %24356
  %24358 = load double, ptr %24357, align 8, !tbaa !11
  %24359 = call double @llvm.fmuladd.f64(double 0x3C90000000000000, double %24358, double %24350)
  %24360 = load ptr, ptr %7, align 8, !tbaa !9
  %24361 = load i32, ptr %12, align 4, !tbaa !5
  %24362 = load i32, ptr %8, align 4, !tbaa !5
  %24363 = mul nsw i32 29, %24362
  %24364 = add nsw i32 %24361, %24363
  %24365 = sext i32 %24364 to i64
  %24366 = getelementptr inbounds double, ptr %24360, i64 %24365
  %24367 = load double, ptr %24366, align 8, !tbaa !11
  %24368 = call double @llvm.fmuladd.f64(double 0x3C98000000000000, double %24367, double %24359)
  %24369 = load ptr, ptr %7, align 8, !tbaa !9
  %24370 = load i32, ptr %12, align 4, !tbaa !5
  %24371 = load i32, ptr %8, align 4, !tbaa !5
  %24372 = mul nsw i32 30, %24371
  %24373 = add nsw i32 %24370, %24372
  %24374 = sext i32 %24373 to i64
  %24375 = getelementptr inbounds double, ptr %24369, i64 %24374
  %24376 = load double, ptr %24375, align 8, !tbaa !11
  %24377 = call double @llvm.fmuladd.f64(double 0xBF83152016E0EC28, double %24376, double %24368)
  %24378 = load ptr, ptr %7, align 8, !tbaa !9
  %24379 = load i32, ptr %12, align 4, !tbaa !5
  %24380 = load i32, ptr %8, align 4, !tbaa !5
  %24381 = mul nsw i32 31, %24380
  %24382 = add nsw i32 %24379, %24381
  %24383 = sext i32 %24382 to i64
  %24384 = getelementptr inbounds double, ptr %24378, i64 %24383
  %24385 = load double, ptr %24384, align 8, !tbaa !11
  %24386 = call double @llvm.fmuladd.f64(double 0x3FF4EC1BB3FDC612, double %24385, double %24377)
  %24387 = load ptr, ptr %7, align 8, !tbaa !9
  %24388 = load i32, ptr %12, align 4, !tbaa !5
  %24389 = load i32, ptr %8, align 4, !tbaa !5
  %24390 = mul nsw i32 32, %24389
  %24391 = add nsw i32 %24388, %24390
  %24392 = sext i32 %24391 to i64
  %24393 = getelementptr inbounds double, ptr %24387, i64 %24392
  %24394 = load double, ptr %24393, align 8, !tbaa !11
  %24395 = call double @llvm.fmuladd.f64(double 0x3F938CE4890DB31F, double %24394, double %24386)
  %24396 = load ptr, ptr %7, align 8, !tbaa !9
  %24397 = load i32, ptr %12, align 4, !tbaa !5
  %24398 = load i32, ptr %8, align 4, !tbaa !5
  %24399 = mul nsw i32 33, %24398
  %24400 = add nsw i32 %24397, %24399
  %24401 = sext i32 %24400 to i64
  %24402 = getelementptr inbounds double, ptr %24396, i64 %24401
  %24403 = load double, ptr %24402, align 8, !tbaa !11
  %24404 = call double @llvm.fmuladd.f64(double 0xBFB5B58B4F03B1A3, double %24403, double %24395)
  %24405 = load ptr, ptr %7, align 8, !tbaa !9
  %24406 = load i32, ptr %12, align 4, !tbaa !5
  %24407 = load i32, ptr %8, align 4, !tbaa !5
  %24408 = mul nsw i32 34, %24407
  %24409 = add nsw i32 %24406, %24408
  %24410 = sext i32 %24409 to i64
  %24411 = getelementptr inbounds double, ptr %24405, i64 %24410
  %24412 = load double, ptr %24411, align 8, !tbaa !11
  %24413 = call double @llvm.fmuladd.f64(double 0xBFB49217631F5946, double %24412, double %24404)
  %24414 = load ptr, ptr %7, align 8, !tbaa !9
  %24415 = load i32, ptr %12, align 4, !tbaa !5
  %24416 = load i32, ptr %8, align 4, !tbaa !5
  %24417 = mul nsw i32 35, %24416
  %24418 = add nsw i32 %24415, %24417
  %24419 = sext i32 %24418 to i64
  %24420 = getelementptr inbounds double, ptr %24414, i64 %24419
  %24421 = load double, ptr %24420, align 8, !tbaa !11
  %24422 = call double @llvm.fmuladd.f64(double 0x3FD417DEBFC17B1A, double %24421, double %24413)
  %24423 = load ptr, ptr %7, align 8, !tbaa !9
  %24424 = load i32, ptr %12, align 4, !tbaa !5
  %24425 = load i32, ptr %8, align 4, !tbaa !5
  %24426 = mul nsw i32 36, %24425
  %24427 = add nsw i32 %24424, %24426
  %24428 = sext i32 %24427 to i64
  %24429 = getelementptr inbounds double, ptr %24423, i64 %24428
  %24430 = load double, ptr %24429, align 8, !tbaa !11
  %24431 = call double @llvm.fmuladd.f64(double 0xBF8BDAF699AECFB6, double %24430, double %24422)
  %24432 = load ptr, ptr %7, align 8, !tbaa !9
  %24433 = load i32, ptr %12, align 4, !tbaa !5
  %24434 = load i32, ptr %8, align 4, !tbaa !5
  %24435 = mul nsw i32 37, %24434
  %24436 = add nsw i32 %24433, %24435
  %24437 = sext i32 %24436 to i64
  %24438 = getelementptr inbounds double, ptr %24432, i64 %24437
  %24439 = load double, ptr %24438, align 8, !tbaa !11
  %24440 = call double @llvm.fmuladd.f64(double 0x3F85E50BB681A390, double %24439, double %24431)
  %24441 = load ptr, ptr %7, align 8, !tbaa !9
  %24442 = load i32, ptr %12, align 4, !tbaa !5
  %24443 = load i32, ptr %8, align 4, !tbaa !5
  %24444 = mul nsw i32 38, %24443
  %24445 = add nsw i32 %24442, %24444
  %24446 = sext i32 %24445 to i64
  %24447 = getelementptr inbounds double, ptr %24441, i64 %24446
  %24448 = load double, ptr %24447, align 8, !tbaa !11
  %24449 = call double @llvm.fmuladd.f64(double 0xBFE5679E70A6065B, double %24448, double %24440)
  %24450 = load ptr, ptr %7, align 8, !tbaa !9
  %24451 = load i32, ptr %12, align 4, !tbaa !5
  %24452 = load i32, ptr %8, align 4, !tbaa !5
  %24453 = mul nsw i32 39, %24452
  %24454 = add nsw i32 %24451, %24453
  %24455 = sext i32 %24454 to i64
  %24456 = getelementptr inbounds double, ptr %24450, i64 %24455
  %24457 = load double, ptr %24456, align 8, !tbaa !11
  %24458 = call double @llvm.fmuladd.f64(double 0x3FCA50C41AB7A329, double %24457, double %24449)
  store double %24458, ptr %11, align 8, !tbaa !11
  %24459 = load double, ptr %11, align 8, !tbaa !11
  %24460 = load ptr, ptr %9, align 8, !tbaa !9
  %24461 = load i32, ptr %12, align 4, !tbaa !5
  %24462 = load i32, ptr %10, align 4, !tbaa !5
  %24463 = mul nsw i32 67, %24462
  %24464 = add nsw i32 %24461, %24463
  %24465 = sext i32 %24464 to i64
  %24466 = getelementptr inbounds double, ptr %24460, i64 %24465
  store double %24459, ptr %24466, align 8, !tbaa !11
  br label %24467

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

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