; 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_13759219372093695623_b1(i32 noundef %0, ptr noalias noundef %1, i32 noundef %2, ptr noalias noundef %3, i32 noundef %4) #2 {
  %6 = alloca i32, align 4
  %7 = alloca ptr, align 8
  %8 = alloca i32, align 4
  %9 = alloca ptr, align 8
  %10 = alloca i32, align 4
  %11 = alloca double, align 8
  %12 = alloca i32, align 4
  store i32 %0, ptr %6, align 4, !tbaa !5
  store ptr %1, ptr %7, align 8, !tbaa !9
  store i32 %2, ptr %8, align 4, !tbaa !5
  store ptr %3, ptr %9, align 8, !tbaa !9
  store i32 %4, ptr %10, align 4, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 8, ptr %11) #3
  call void @llvm.lifetime.start.p0(i64 4, ptr %12) #3
  store i32 0, ptr %12, align 4, !tbaa !5
  br label %13

13:                                               ; preds = %8947, %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 %8950

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 0xBF7DFA2300BBB380, %34
  %36 = call double @llvm.fmuladd.f64(double 0x3FF44E3F94172F46, 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 0x3FB9ECDD98127880, 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 0xBF83952FC55A7054, 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 0xBFE4FBED5D8A9668, 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 0x3FD50884576D0BB0, 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 0xBC928E0E59CA2667, 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 0xBC94747CFD612BCE, 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 0x3CA061EEC0843748, 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 0x3C88AE5D9980C8A2, 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 0xBCBBF3FEED1E8544, 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 0x3CB80DDFB4F4FB59, 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 0xBC974C72B9C7B6B3, 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 0x3C9A3DCEE704C7E6, 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 14, %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 0x3C801C657D225E7F, 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 15, %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 0x3CA10B458BF1192C, 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 16, %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 0x3CAFD6935AE0DBC3, 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 17, %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 0x3CB9FC9AB14C2802, 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 18, %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 0xBFE8AC73392375CC, 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 19, %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 0x3FE4EDE8EE256114, 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 20, %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 0x3FEA5488770B26BE, 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 21, %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 0x3FF44CD742FC94E8, 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 22, %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 0xBFFEF1F8514C97DD, 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 23, %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 0xBFF01B2FE70C1193, 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 24, %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 0x3CA4DBB49723188B, 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 25, %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 0xBCA07423258E8785, 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 26, %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 0xBC8CF1A7605B6ED6, 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 27, %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 0xBC87A5CD2646DADD, 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 28, %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 0x3C756728FD5B044F, 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 29, %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 0xBC8B1A3C6A1C6E73, 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 30, %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 0xBCB366C66C9C20EC, 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 31, %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 0xBC7758351226A631, 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 32, %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 0xBCB6C6F6878DD3A7, 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 33, %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 0x3CA4C6639E24044F, 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 34, %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 0x3CB88B2192416394, 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 35, %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 0xBC4417177B9D447F, double %341, double %333)
  %343 = load ptr, ptr %7, align 8, !tbaa !9
  %344 = load i32, ptr %12, align 4, !tbaa !5
  %345 = load i32, ptr %8, align 4, !tbaa !5
  %346 = mul nsw i32 36, %345
  %347 = add nsw i32 %344, %346
  %348 = sext i32 %347 to i64
  %349 = getelementptr inbounds double, ptr %343, i64 %348
  %350 = load double, ptr %349, align 8, !tbaa !11
  %351 = call double @llvm.fmuladd.f64(double 0x3FFEFBDEB14F4DAA, double %350, double %342)
  %352 = load ptr, ptr %7, align 8, !tbaa !9
  %353 = load i32, ptr %12, align 4, !tbaa !5
  %354 = load i32, ptr %8, align 4, !tbaa !5
  %355 = mul nsw i32 37, %354
  %356 = add nsw i32 %353, %355
  %357 = sext i32 %356 to i64
  %358 = getelementptr inbounds double, ptr %352, i64 %357
  %359 = load double, ptr %358, align 8, !tbaa !11
  %360 = call double @llvm.fmuladd.f64(double 0xBD09D98BFF4CB0E5, double %359, double %351)
  %361 = load ptr, ptr %7, align 8, !tbaa !9
  %362 = load i32, ptr %12, align 4, !tbaa !5
  %363 = load i32, ptr %8, align 4, !tbaa !5
  %364 = mul nsw i32 38, %363
  %365 = add nsw i32 %362, %364
  %366 = sext i32 %365 to i64
  %367 = getelementptr inbounds double, ptr %361, i64 %366
  %368 = load double, ptr %367, align 8, !tbaa !11
  %369 = call double @llvm.fmuladd.f64(double 0xBD08F6EC581E880F, double %368, double %360)
  %370 = load ptr, ptr %7, align 8, !tbaa !9
  %371 = load i32, ptr %12, align 4, !tbaa !5
  %372 = load i32, ptr %8, align 4, !tbaa !5
  %373 = mul nsw i32 39, %372
  %374 = add nsw i32 %371, %373
  %375 = sext i32 %374 to i64
  %376 = getelementptr inbounds double, ptr %370, i64 %375
  %377 = load double, ptr %376, align 8, !tbaa !11
  %378 = call double @llvm.fmuladd.f64(double 0xBCFDF4EDB2DE7F56, double %377, double %369)
  %379 = load ptr, ptr %7, align 8, !tbaa !9
  %380 = load i32, ptr %12, align 4, !tbaa !5
  %381 = load i32, ptr %8, align 4, !tbaa !5
  %382 = mul nsw i32 40, %381
  %383 = add nsw i32 %380, %382
  %384 = sext i32 %383 to i64
  %385 = getelementptr inbounds double, ptr %379, i64 %384
  %386 = load double, ptr %385, align 8, !tbaa !11
  %387 = call double @llvm.fmuladd.f64(double 0x3D19E21ADBE67F1B, double %386, double %378)
  %388 = load ptr, ptr %7, align 8, !tbaa !9
  %389 = load i32, ptr %12, align 4, !tbaa !5
  %390 = load i32, ptr %8, align 4, !tbaa !5
  %391 = mul nsw i32 41, %390
  %392 = add nsw i32 %389, %391
  %393 = sext i32 %392 to i64
  %394 = getelementptr inbounds double, ptr %388, i64 %393
  %395 = load double, ptr %394, align 8, !tbaa !11
  %396 = call double @llvm.fmuladd.f64(double 0x3D193EE154A2063B, double %395, double %387)
  %397 = load ptr, ptr %7, align 8, !tbaa !9
  %398 = load i32, ptr %12, align 4, !tbaa !5
  %399 = load i32, ptr %8, align 4, !tbaa !5
  %400 = mul nsw i32 42, %399
  %401 = add nsw i32 %398, %400
  %402 = sext i32 %401 to i64
  %403 = getelementptr inbounds double, ptr %397, i64 %402
  %404 = load double, ptr %403, align 8, !tbaa !11
  %405 = call double @llvm.fmuladd.f64(double 0x3FF08654A2D4F756, double %404, double %396)
  %406 = load ptr, ptr %7, align 8, !tbaa !9
  %407 = load i32, ptr %12, align 4, !tbaa !5
  %408 = load i32, ptr %8, align 4, !tbaa !5
  %409 = mul nsw i32 43, %408
  %410 = add nsw i32 %407, %409
  %411 = sext i32 %410 to i64
  %412 = getelementptr inbounds double, ptr %406, i64 %411
  %413 = load double, ptr %412, align 8, !tbaa !11
  %414 = call double @llvm.fmuladd.f64(double 0x3CF4E04E2DCDEC57, double %413, double %405)
  %415 = load ptr, ptr %7, align 8, !tbaa !9
  %416 = load i32, ptr %12, align 4, !tbaa !5
  %417 = load i32, ptr %8, align 4, !tbaa !5
  %418 = mul nsw i32 44, %417
  %419 = add nsw i32 %416, %418
  %420 = sext i32 %419 to i64
  %421 = getelementptr inbounds double, ptr %415, i64 %420
  %422 = load double, ptr %421, align 8, !tbaa !11
  %423 = call double @llvm.fmuladd.f64(double 0x3CF3AAAAAAAAAAAB, double %422, double %414)
  %424 = load ptr, ptr %7, align 8, !tbaa !9
  %425 = load i32, ptr %12, align 4, !tbaa !5
  %426 = load i32, ptr %8, align 4, !tbaa !5
  %427 = mul nsw i32 45, %426
  %428 = add nsw i32 %425, %427
  %429 = sext i32 %428 to i64
  %430 = getelementptr inbounds double, ptr %424, i64 %429
  %431 = load double, ptr %430, align 8, !tbaa !11
  %432 = call double @llvm.fmuladd.f64(double 0x3CE72AAAAAAAAAA8, double %431, double %423)
  %433 = load ptr, ptr %7, align 8, !tbaa !9
  %434 = load i32, ptr %12, align 4, !tbaa !5
  %435 = load i32, ptr %8, align 4, !tbaa !5
  %436 = mul nsw i32 46, %435
  %437 = add nsw i32 %434, %436
  %438 = sext i32 %437 to i64
  %439 = getelementptr inbounds double, ptr %433, i64 %438
  %440 = load double, ptr %439, align 8, !tbaa !11
  %441 = call double @llvm.fmuladd.f64(double 0xBD043F63A4642756, double %440, double %432)
  %442 = load ptr, ptr %7, align 8, !tbaa !9
  %443 = load i32, ptr %12, align 4, !tbaa !5
  %444 = load i32, ptr %8, align 4, !tbaa !5
  %445 = mul nsw i32 47, %444
  %446 = add nsw i32 %443, %445
  %447 = sext i32 %446 to i64
  %448 = getelementptr inbounds double, ptr %442, i64 %447
  %449 = load double, ptr %448, align 8, !tbaa !11
  %450 = call double @llvm.fmuladd.f64(double 0xBD0394B8F9B97CA9, double %449, double %441)
  %451 = load ptr, ptr %7, align 8, !tbaa !9
  %452 = load i32, ptr %12, align 4, !tbaa !5
  %453 = load i32, ptr %8, align 4, !tbaa !5
  %454 = mul nsw i32 48, %453
  %455 = add nsw i32 %452, %454
  %456 = sext i32 %455 to i64
  %457 = getelementptr inbounds double, ptr %451, i64 %456
  %458 = load double, ptr %457, align 8, !tbaa !11
  %459 = call double @llvm.fmuladd.f64(double 0xBFE4A7E9CB8A3493, double %458, double %450)
  %460 = load ptr, ptr %7, align 8, !tbaa !9
  %461 = load i32, ptr %12, align 4, !tbaa !5
  %462 = load i32, ptr %8, align 4, !tbaa !5
  %463 = mul nsw i32 49, %462
  %464 = add nsw i32 %461, %463
  %465 = sext i32 %464 to i64
  %466 = getelementptr inbounds double, ptr %460, i64 %465
  %467 = load double, ptr %466, align 8, !tbaa !11
  %468 = call double @llvm.fmuladd.f64(double 0xBC8BC95608A46E63, double %467, double %459)
  %469 = load ptr, ptr %7, align 8, !tbaa !9
  %470 = load i32, ptr %12, align 4, !tbaa !5
  %471 = load i32, ptr %8, align 4, !tbaa !5
  %472 = mul nsw i32 50, %471
  %473 = add nsw i32 %470, %472
  %474 = sext i32 %473 to i64
  %475 = getelementptr inbounds double, ptr %469, i64 %474
  %476 = load double, ptr %475, align 8, !tbaa !11
  %477 = call double @llvm.fmuladd.f64(double 0x3CA865C0B24CAFB5, double %476, double %468)
  %478 = load ptr, ptr %7, align 8, !tbaa !9
  %479 = load i32, ptr %12, align 4, !tbaa !5
  %480 = load i32, ptr %8, align 4, !tbaa !5
  %481 = mul nsw i32 51, %480
  %482 = add nsw i32 %479, %481
  %483 = sext i32 %482 to i64
  %484 = getelementptr inbounds double, ptr %478, i64 %483
  %485 = load double, ptr %484, align 8, !tbaa !11
  %486 = call double @llvm.fmuladd.f64(double 0x3CB09F4DA65E855E, double %485, double %477)
  %487 = load ptr, ptr %7, align 8, !tbaa !9
  %488 = load i32, ptr %12, align 4, !tbaa !5
  %489 = load i32, ptr %8, align 4, !tbaa !5
  %490 = mul nsw i32 52, %489
  %491 = add nsw i32 %488, %490
  %492 = sext i32 %491 to i64
  %493 = getelementptr inbounds double, ptr %487, i64 %492
  %494 = load double, ptr %493, align 8, !tbaa !11
  %495 = call double @llvm.fmuladd.f64(double 0xBCA3E8F53E9DEC6B, double %494, double %486)
  %496 = load ptr, ptr %7, align 8, !tbaa !9
  %497 = load i32, ptr %12, align 4, !tbaa !5
  %498 = load i32, ptr %8, align 4, !tbaa !5
  %499 = mul nsw i32 53, %498
  %500 = add nsw i32 %497, %499
  %501 = sext i32 %500 to i64
  %502 = getelementptr inbounds double, ptr %496, i64 %501
  %503 = load double, ptr %502, align 8, !tbaa !11
  %504 = call double @llvm.fmuladd.f64(double 0xBCB32135F151F960, double %503, double %495)
  store double %504, ptr %11, align 8, !tbaa !11
  %505 = load double, ptr %11, align 8, !tbaa !11
  %506 = load ptr, ptr %9, align 8, !tbaa !9
  %507 = load i32, ptr %12, align 4, !tbaa !5
  %508 = load i32, ptr %10, align 4, !tbaa !5
  %509 = mul nsw i32 0, %508
  %510 = add nsw i32 %507, %509
  %511 = sext i32 %510 to i64
  %512 = getelementptr inbounds double, ptr %506, i64 %511
  %513 = load double, ptr %512, align 8, !tbaa !11
  %514 = fadd double %513, %505
  store double %514, ptr %512, align 8, !tbaa !11
  %515 = load ptr, ptr %7, align 8, !tbaa !9
  %516 = load i32, ptr %12, align 4, !tbaa !5
  %517 = load i32, ptr %8, align 4, !tbaa !5
  %518 = mul nsw i32 0, %517
  %519 = add nsw i32 %516, %518
  %520 = sext i32 %519 to i64
  %521 = getelementptr inbounds double, ptr %515, i64 %520
  %522 = load double, ptr %521, align 8, !tbaa !11
  %523 = load ptr, ptr %7, align 8, !tbaa !9
  %524 = load i32, ptr %12, align 4, !tbaa !5
  %525 = load i32, ptr %8, align 4, !tbaa !5
  %526 = mul nsw i32 1, %525
  %527 = add nsw i32 %524, %526
  %528 = sext i32 %527 to i64
  %529 = getelementptr inbounds double, ptr %523, i64 %528
  %530 = load double, ptr %529, align 8, !tbaa !11
  %531 = fmul double 0xBFE8AC73392375C8, %530
  %532 = call double @llvm.fmuladd.f64(double 0x3FE4EDE8EE25610B, double %522, double %531)
  %533 = load ptr, ptr %7, align 8, !tbaa !9
  %534 = load i32, ptr %12, align 4, !tbaa !5
  %535 = load i32, ptr %8, align 4, !tbaa !5
  %536 = mul nsw i32 2, %535
  %537 = add nsw i32 %534, %536
  %538 = sext i32 %537 to i64
  %539 = getelementptr inbounds double, ptr %533, i64 %538
  %540 = load double, ptr %539, align 8, !tbaa !11
  %541 = call double @llvm.fmuladd.f64(double 0x3FEA5488770B26AC, double %540, double %532)
  %542 = load ptr, ptr %7, align 8, !tbaa !9
  %543 = load i32, ptr %12, align 4, !tbaa !5
  %544 = load i32, ptr %8, align 4, !tbaa !5
  %545 = mul nsw i32 3, %544
  %546 = add nsw i32 %543, %545
  %547 = sext i32 %546 to i64
  %548 = getelementptr inbounds double, ptr %542, i64 %547
  %549 = load double, ptr %548, align 8, !tbaa !11
  %550 = call double @llvm.fmuladd.f64(double 0xBFFEF1F8514C97D0, double %549, double %541)
  %551 = load ptr, ptr %7, align 8, !tbaa !9
  %552 = load i32, ptr %12, align 4, !tbaa !5
  %553 = load i32, ptr %8, align 4, !tbaa !5
  %554 = mul nsw i32 4, %553
  %555 = add nsw i32 %552, %554
  %556 = sext i32 %555 to i64
  %557 = getelementptr inbounds double, ptr %551, i64 %556
  %558 = load double, ptr %557, align 8, !tbaa !11
  %559 = call double @llvm.fmuladd.f64(double 0x3FF44CD742FC94DA, double %558, double %550)
  %560 = load ptr, ptr %7, align 8, !tbaa !9
  %561 = load i32, ptr %12, align 4, !tbaa !5
  %562 = load i32, ptr %8, align 4, !tbaa !5
  %563 = mul nsw i32 5, %562
  %564 = add nsw i32 %561, %563
  %565 = sext i32 %564 to i64
  %566 = getelementptr inbounds double, ptr %560, i64 %565
  %567 = load double, ptr %566, align 8, !tbaa !11
  %568 = call double @llvm.fmuladd.f64(double 0xBFF01B2FE70C118E, double %567, double %559)
  %569 = load ptr, ptr %7, align 8, !tbaa !9
  %570 = load i32, ptr %12, align 4, !tbaa !5
  %571 = load i32, ptr %8, align 4, !tbaa !5
  %572 = mul nsw i32 6, %571
  %573 = add nsw i32 %570, %572
  %574 = sext i32 %573 to i64
  %575 = getelementptr inbounds double, ptr %569, i64 %574
  %576 = load double, ptr %575, align 8, !tbaa !11
  %577 = call double @llvm.fmuladd.f64(double 0xBC5AD58CA8FD5A00, double %576, double %568)
  %578 = load ptr, ptr %7, align 8, !tbaa !9
  %579 = load i32, ptr %12, align 4, !tbaa !5
  %580 = load i32, ptr %8, align 4, !tbaa !5
  %581 = mul nsw i32 7, %580
  %582 = add nsw i32 %579, %581
  %583 = sext i32 %582 to i64
  %584 = getelementptr inbounds double, ptr %578, i64 %583
  %585 = load double, ptr %584, align 8, !tbaa !11
  %586 = call double @llvm.fmuladd.f64(double 0x3CBEB0BE4F96FAE3, double %585, double %577)
  %587 = load ptr, ptr %7, align 8, !tbaa !9
  %588 = load i32, ptr %12, align 4, !tbaa !5
  %589 = load i32, ptr %8, align 4, !tbaa !5
  %590 = mul nsw i32 8, %589
  %591 = add nsw i32 %588, %590
  %592 = sext i32 %591 to i64
  %593 = getelementptr inbounds double, ptr %587, i64 %592
  %594 = load double, ptr %593, align 8, !tbaa !11
  %595 = call double @llvm.fmuladd.f64(double 0x3C84693BAEDA743C, double %594, double %586)
  %596 = load ptr, ptr %7, align 8, !tbaa !9
  %597 = load i32, ptr %12, align 4, !tbaa !5
  %598 = load i32, ptr %8, align 4, !tbaa !5
  %599 = mul nsw i32 9, %598
  %600 = add nsw i32 %597, %599
  %601 = sext i32 %600 to i64
  %602 = getelementptr inbounds double, ptr %596, i64 %601
  %603 = load double, ptr %602, align 8, !tbaa !11
  %604 = call double @llvm.fmuladd.f64(double 0xBCB3ACD3D4ADCCB0, double %603, double %595)
  %605 = load ptr, ptr %7, align 8, !tbaa !9
  %606 = load i32, ptr %12, align 4, !tbaa !5
  %607 = load i32, ptr %8, align 4, !tbaa !5
  %608 = mul nsw i32 10, %607
  %609 = add nsw i32 %606, %608
  %610 = sext i32 %609 to i64
  %611 = getelementptr inbounds double, ptr %605, i64 %610
  %612 = load double, ptr %611, align 8, !tbaa !11
  %613 = call double @llvm.fmuladd.f64(double 0x3CBD77D82F675FE0, double %612, double %604)
  %614 = load ptr, ptr %7, align 8, !tbaa !9
  %615 = load i32, ptr %12, align 4, !tbaa !5
  %616 = load i32, ptr %8, align 4, !tbaa !5
  %617 = mul nsw i32 11, %616
  %618 = add nsw i32 %615, %617
  %619 = sext i32 %618 to i64
  %620 = getelementptr inbounds double, ptr %614, i64 %619
  %621 = load double, ptr %620, align 8, !tbaa !11
  %622 = call double @llvm.fmuladd.f64(double 0xBC765C5FD7E7C60F, double %621, double %613)
  %623 = load ptr, ptr %7, align 8, !tbaa !9
  %624 = load i32, ptr %12, align 4, !tbaa !5
  %625 = load i32, ptr %8, align 4, !tbaa !5
  %626 = mul nsw i32 12, %625
  %627 = add nsw i32 %624, %626
  %628 = sext i32 %627 to i64
  %629 = getelementptr inbounds double, ptr %623, i64 %628
  %630 = load double, ptr %629, align 8, !tbaa !11
  %631 = call double @llvm.fmuladd.f64(double 0x3C9FA9BEC7B2612F, double %630, double %622)
  %632 = load ptr, ptr %7, align 8, !tbaa !9
  %633 = load i32, ptr %12, align 4, !tbaa !5
  %634 = load i32, ptr %8, align 4, !tbaa !5
  %635 = mul nsw i32 13, %634
  %636 = add nsw i32 %633, %635
  %637 = sext i32 %636 to i64
  %638 = getelementptr inbounds double, ptr %632, i64 %637
  %639 = load double, ptr %638, align 8, !tbaa !11
  %640 = call double @llvm.fmuladd.f64(double 0xBCBC8E2E7B422DD7, double %639, double %631)
  %641 = load ptr, ptr %7, align 8, !tbaa !9
  %642 = load i32, ptr %12, align 4, !tbaa !5
  %643 = load i32, ptr %8, align 4, !tbaa !5
  %644 = mul nsw i32 14, %643
  %645 = add nsw i32 %642, %644
  %646 = sext i32 %645 to i64
  %647 = getelementptr inbounds double, ptr %641, i64 %646
  %648 = load double, ptr %647, align 8, !tbaa !11
  %649 = call double @llvm.fmuladd.f64(double 0xBCC878EC8B1B786A, double %648, double %640)
  %650 = load ptr, ptr %7, align 8, !tbaa !9
  %651 = load i32, ptr %12, align 4, !tbaa !5
  %652 = load i32, ptr %8, align 4, !tbaa !5
  %653 = mul nsw i32 15, %652
  %654 = add nsw i32 %651, %653
  %655 = sext i32 %654 to i64
  %656 = getelementptr inbounds double, ptr %650, i64 %655
  %657 = load double, ptr %656, align 8, !tbaa !11
  %658 = call double @llvm.fmuladd.f64(double 0x3CC0FC9E0739BB76, double %657, double %649)
  %659 = load ptr, ptr %7, align 8, !tbaa !9
  %660 = load i32, ptr %12, align 4, !tbaa !5
  %661 = load i32, ptr %8, align 4, !tbaa !5
  %662 = mul nsw i32 16, %661
  %663 = add nsw i32 %660, %662
  %664 = sext i32 %663 to i64
  %665 = getelementptr inbounds double, ptr %659, i64 %664
  %666 = load double, ptr %665, align 8, !tbaa !11
  %667 = call double @llvm.fmuladd.f64(double 0x3CA31E7AC172ACDB, double %666, double %658)
  %668 = load ptr, ptr %7, align 8, !tbaa !9
  %669 = load i32, ptr %12, align 4, !tbaa !5
  %670 = load i32, ptr %8, align 4, !tbaa !5
  %671 = mul nsw i32 17, %670
  %672 = add nsw i32 %669, %671
  %673 = sext i32 %672 to i64
  %674 = getelementptr inbounds double, ptr %668, i64 %673
  %675 = load double, ptr %674, align 8, !tbaa !11
  %676 = call double @llvm.fmuladd.f64(double 0x3C51BA2977E19A60, double %675, double %667)
  %677 = load ptr, ptr %7, align 8, !tbaa !9
  %678 = load i32, ptr %12, align 4, !tbaa !5
  %679 = load i32, ptr %8, align 4, !tbaa !5
  %680 = mul nsw i32 18, %679
  %681 = add nsw i32 %678, %680
  %682 = sext i32 %681 to i64
  %683 = getelementptr inbounds double, ptr %677, i64 %682
  %684 = load double, ptr %683, align 8, !tbaa !11
  %685 = call double @llvm.fmuladd.f64(double 0xBF7DFA2300BBB280, double %684, double %676)
  %686 = load ptr, ptr %7, align 8, !tbaa !9
  %687 = load i32, ptr %12, align 4, !tbaa !5
  %688 = load i32, ptr %8, align 4, !tbaa !5
  %689 = mul nsw i32 19, %688
  %690 = add nsw i32 %687, %689
  %691 = sext i32 %690 to i64
  %692 = getelementptr inbounds double, ptr %686, i64 %691
  %693 = load double, ptr %692, align 8, !tbaa !11
  %694 = call double @llvm.fmuladd.f64(double 0x3FF44E3F94172F4B, double %693, double %685)
  %695 = load ptr, ptr %7, align 8, !tbaa !9
  %696 = load i32, ptr %12, align 4, !tbaa !5
  %697 = load i32, ptr %8, align 4, !tbaa !5
  %698 = mul nsw i32 20, %697
  %699 = add nsw i32 %696, %698
  %700 = sext i32 %699 to i64
  %701 = getelementptr inbounds double, ptr %695, i64 %700
  %702 = load double, ptr %701, align 8, !tbaa !11
  %703 = call double @llvm.fmuladd.f64(double 0x3FB9ECDD981278F3, double %702, double %694)
  %704 = load ptr, ptr %7, align 8, !tbaa !9
  %705 = load i32, ptr %12, align 4, !tbaa !5
  %706 = load i32, ptr %8, align 4, !tbaa !5
  %707 = mul nsw i32 21, %706
  %708 = add nsw i32 %705, %707
  %709 = sext i32 %708 to i64
  %710 = getelementptr inbounds double, ptr %704, i64 %709
  %711 = load double, ptr %710, align 8, !tbaa !11
  %712 = call double @llvm.fmuladd.f64(double 0xBFE4FBED5D8A9650, double %711, double %703)
  %713 = load ptr, ptr %7, align 8, !tbaa !9
  %714 = load i32, ptr %12, align 4, !tbaa !5
  %715 = load i32, ptr %8, align 4, !tbaa !5
  %716 = mul nsw i32 22, %715
  %717 = add nsw i32 %714, %716
  %718 = sext i32 %717 to i64
  %719 = getelementptr inbounds double, ptr %713, i64 %718
  %720 = load double, ptr %719, align 8, !tbaa !11
  %721 = call double @llvm.fmuladd.f64(double 0xBF83952FC55A730C, double %720, double %712)
  %722 = load ptr, ptr %7, align 8, !tbaa !9
  %723 = load i32, ptr %12, align 4, !tbaa !5
  %724 = load i32, ptr %8, align 4, !tbaa !5
  %725 = mul nsw i32 23, %724
  %726 = add nsw i32 %723, %725
  %727 = sext i32 %726 to i64
  %728 = getelementptr inbounds double, ptr %722, i64 %727
  %729 = load double, ptr %728, align 8, !tbaa !11
  %730 = call double @llvm.fmuladd.f64(double 0x3FD50884576D0BB8, double %729, double %721)
  %731 = load ptr, ptr %7, align 8, !tbaa !9
  %732 = load i32, ptr %12, align 4, !tbaa !5
  %733 = load i32, ptr %8, align 4, !tbaa !5
  %734 = mul nsw i32 24, %733
  %735 = add nsw i32 %732, %734
  %736 = sext i32 %735 to i64
  %737 = getelementptr inbounds double, ptr %731, i64 %736
  %738 = load double, ptr %737, align 8, !tbaa !11
  %739 = call double @llvm.fmuladd.f64(double 0xBC62256990361260, double %738, double %730)
  %740 = load ptr, ptr %7, align 8, !tbaa !9
  %741 = load i32, ptr %12, align 4, !tbaa !5
  %742 = load i32, ptr %8, align 4, !tbaa !5
  %743 = mul nsw i32 25, %742
  %744 = add nsw i32 %741, %743
  %745 = sext i32 %744 to i64
  %746 = getelementptr inbounds double, ptr %740, i64 %745
  %747 = load double, ptr %746, align 8, !tbaa !11
  %748 = call double @llvm.fmuladd.f64(double 0x3CC20413F90F2948, double %747, double %739)
  %749 = load ptr, ptr %7, align 8, !tbaa !9
  %750 = load i32, ptr %12, align 4, !tbaa !5
  %751 = load i32, ptr %8, align 4, !tbaa !5
  %752 = mul nsw i32 26, %751
  %753 = add nsw i32 %750, %752
  %754 = sext i32 %753 to i64
  %755 = getelementptr inbounds double, ptr %749, i64 %754
  %756 = load double, ptr %755, align 8, !tbaa !11
  %757 = call double @llvm.fmuladd.f64(double 0x3CA8FA36F9E410BC, double %756, double %748)
  %758 = load ptr, ptr %7, align 8, !tbaa !9
  %759 = load i32, ptr %12, align 4, !tbaa !5
  %760 = load i32, ptr %8, align 4, !tbaa !5
  %761 = mul nsw i32 27, %760
  %762 = add nsw i32 %759, %761
  %763 = sext i32 %762 to i64
  %764 = getelementptr inbounds double, ptr %758, i64 %763
  %765 = load double, ptr %764, align 8, !tbaa !11
  %766 = call double @llvm.fmuladd.f64(double 0x3C9F209CBEE6547E, double %765, double %757)
  %767 = load ptr, ptr %7, align 8, !tbaa !9
  %768 = load i32, ptr %12, align 4, !tbaa !5
  %769 = load i32, ptr %8, align 4, !tbaa !5
  %770 = mul nsw i32 28, %769
  %771 = add nsw i32 %768, %770
  %772 = sext i32 %771 to i64
  %773 = getelementptr inbounds double, ptr %767, i64 %772
  %774 = load double, ptr %773, align 8, !tbaa !11
  %775 = call double @llvm.fmuladd.f64(double 0x3CA97C0FDD5CC331, double %774, double %766)
  %776 = load ptr, ptr %7, align 8, !tbaa !9
  %777 = load i32, ptr %12, align 4, !tbaa !5
  %778 = load i32, ptr %8, align 4, !tbaa !5
  %779 = mul nsw i32 29, %778
  %780 = add nsw i32 %777, %779
  %781 = sext i32 %780 to i64
  %782 = getelementptr inbounds double, ptr %776, i64 %781
  %783 = load double, ptr %782, align 8, !tbaa !11
  %784 = call double @llvm.fmuladd.f64(double 0x3C839062B03D9625, double %783, double %775)
  %785 = load ptr, ptr %7, align 8, !tbaa !9
  %786 = load i32, ptr %12, align 4, !tbaa !5
  %787 = load i32, ptr %8, align 4, !tbaa !5
  %788 = mul nsw i32 30, %787
  %789 = add nsw i32 %786, %788
  %790 = sext i32 %789 to i64
  %791 = getelementptr inbounds double, ptr %785, i64 %790
  %792 = load double, ptr %791, align 8, !tbaa !11
  %793 = call double @llvm.fmuladd.f64(double 0x3C8F162AB3E24558, double %792, double %784)
  %794 = load ptr, ptr %7, align 8, !tbaa !9
  %795 = load i32, ptr %12, align 4, !tbaa !5
  %796 = load i32, ptr %8, align 4, !tbaa !5
  %797 = mul nsw i32 31, %796
  %798 = add nsw i32 %795, %797
  %799 = sext i32 %798 to i64
  %800 = getelementptr inbounds double, ptr %794, i64 %799
  %801 = load double, ptr %800, align 8, !tbaa !11
  %802 = call double @llvm.fmuladd.f64(double 0x3CC24822224DBC7A, double %801, double %793)
  %803 = load ptr, ptr %7, align 8, !tbaa !9
  %804 = load i32, ptr %12, align 4, !tbaa !5
  %805 = load i32, ptr %8, align 4, !tbaa !5
  %806 = mul nsw i32 32, %805
  %807 = add nsw i32 %804, %806
  %808 = sext i32 %807 to i64
  %809 = getelementptr inbounds double, ptr %803, i64 %808
  %810 = load double, ptr %809, align 8, !tbaa !11
  %811 = call double @llvm.fmuladd.f64(double 0xBCB88407823ABCF7, double %810, double %802)
  %812 = load ptr, ptr %7, align 8, !tbaa !9
  %813 = load i32, ptr %12, align 4, !tbaa !5
  %814 = load i32, ptr %8, align 4, !tbaa !5
  %815 = mul nsw i32 33, %814
  %816 = add nsw i32 %813, %815
  %817 = sext i32 %816 to i64
  %818 = getelementptr inbounds double, ptr %812, i64 %817
  %819 = load double, ptr %818, align 8, !tbaa !11
  %820 = call double @llvm.fmuladd.f64(double 0x3CB067CE2C74889D, double %819, double %811)
  %821 = load ptr, ptr %7, align 8, !tbaa !9
  %822 = load i32, ptr %12, align 4, !tbaa !5
  %823 = load i32, ptr %8, align 4, !tbaa !5
  %824 = mul nsw i32 34, %823
  %825 = add nsw i32 %822, %824
  %826 = sext i32 %825 to i64
  %827 = getelementptr inbounds double, ptr %821, i64 %826
  %828 = load double, ptr %827, align 8, !tbaa !11
  %829 = call double @llvm.fmuladd.f64(double 0x3CA71D150152D3DA, double %828, double %820)
  %830 = load ptr, ptr %7, align 8, !tbaa !9
  %831 = load i32, ptr %12, align 4, !tbaa !5
  %832 = load i32, ptr %8, align 4, !tbaa !5
  %833 = mul nsw i32 35, %832
  %834 = add nsw i32 %831, %833
  %835 = sext i32 %834 to i64
  %836 = getelementptr inbounds double, ptr %830, i64 %835
  %837 = load double, ptr %836, align 8, !tbaa !11
  %838 = call double @llvm.fmuladd.f64(double 0xBCC8C466774B0520, double %837, double %829)
  %839 = load ptr, ptr %7, align 8, !tbaa !9
  %840 = load i32, ptr %12, align 4, !tbaa !5
  %841 = load i32, ptr %8, align 4, !tbaa !5
  %842 = mul nsw i32 36, %841
  %843 = add nsw i32 %840, %842
  %844 = sext i32 %843 to i64
  %845 = getelementptr inbounds double, ptr %839, i64 %844
  %846 = load double, ptr %845, align 8, !tbaa !11
  %847 = call double @llvm.fmuladd.f64(double 0xBD07B67C0A74B6D2, double %846, double %838)
  %848 = load ptr, ptr %7, align 8, !tbaa !9
  %849 = load i32, ptr %12, align 4, !tbaa !5
  %850 = load i32, ptr %8, align 4, !tbaa !5
  %851 = mul nsw i32 37, %850
  %852 = add nsw i32 %849, %851
  %853 = sext i32 %852 to i64
  %854 = getelementptr inbounds double, ptr %848, i64 %853
  %855 = load double, ptr %854, align 8, !tbaa !11
  %856 = call double @llvm.fmuladd.f64(double 0x3FFEFBDEB14F4D9C, double %855, double %847)
  %857 = load ptr, ptr %7, align 8, !tbaa !9
  %858 = load i32, ptr %12, align 4, !tbaa !5
  %859 = load i32, ptr %8, align 4, !tbaa !5
  %860 = mul nsw i32 38, %859
  %861 = add nsw i32 %858, %860
  %862 = sext i32 %861 to i64
  %863 = getelementptr inbounds double, ptr %857, i64 %862
  %864 = load double, ptr %863, align 8, !tbaa !11
  %865 = call double @llvm.fmuladd.f64(double 0xBD08B86D08565032, double %864, double %856)
  %866 = load ptr, ptr %7, align 8, !tbaa !9
  %867 = load i32, ptr %12, align 4, !tbaa !5
  %868 = load i32, ptr %8, align 4, !tbaa !5
  %869 = mul nsw i32 39, %868
  %870 = add nsw i32 %867, %869
  %871 = sext i32 %870 to i64
  %872 = getelementptr inbounds double, ptr %866, i64 %871
  %873 = load double, ptr %872, align 8, !tbaa !11
  %874 = call double @llvm.fmuladd.f64(double 0x3D1BE5E867FB3CCC, double %873, double %865)
  %875 = load ptr, ptr %7, align 8, !tbaa !9
  %876 = load i32, ptr %12, align 4, !tbaa !5
  %877 = load i32, ptr %8, align 4, !tbaa !5
  %878 = mul nsw i32 40, %877
  %879 = add nsw i32 %876, %878
  %880 = sext i32 %879 to i64
  %881 = getelementptr inbounds double, ptr %875, i64 %880
  %882 = load double, ptr %881, align 8, !tbaa !11
  %883 = call double @llvm.fmuladd.f64(double 0xBCFD7E2C7687A148, double %882, double %874)
  %884 = load ptr, ptr %7, align 8, !tbaa !9
  %885 = load i32, ptr %12, align 4, !tbaa !5
  %886 = load i32, ptr %8, align 4, !tbaa !5
  %887 = mul nsw i32 41, %886
  %888 = add nsw i32 %885, %887
  %889 = sext i32 %888 to i64
  %890 = getelementptr inbounds double, ptr %884, i64 %889
  %891 = load double, ptr %890, align 8, !tbaa !11
  %892 = call double @llvm.fmuladd.f64(double 0x3D19AB84FA7213D2, double %891, double %883)
  %893 = load ptr, ptr %7, align 8, !tbaa !9
  %894 = load i32, ptr %12, align 4, !tbaa !5
  %895 = load i32, ptr %8, align 4, !tbaa !5
  %896 = mul nsw i32 42, %895
  %897 = add nsw i32 %894, %896
  %898 = sext i32 %897 to i64
  %899 = getelementptr inbounds double, ptr %893, i64 %898
  %900 = load double, ptr %899, align 8, !tbaa !11
  %901 = call double @llvm.fmuladd.f64(double 0x3CF414B8F9B97CAA, double %900, double %892)
  %902 = load ptr, ptr %7, align 8, !tbaa !9
  %903 = load i32, ptr %12, align 4, !tbaa !5
  %904 = load i32, ptr %8, align 4, !tbaa !5
  %905 = mul nsw i32 43, %904
  %906 = add nsw i32 %903, %905
  %907 = sext i32 %906 to i64
  %908 = getelementptr inbounds double, ptr %902, i64 %907
  %909 = load double, ptr %908, align 8, !tbaa !11
  %910 = call double @llvm.fmuladd.f64(double 0x3FF08654A2D4F75B, double %909, double %901)
  %911 = load ptr, ptr %7, align 8, !tbaa !9
  %912 = load i32, ptr %12, align 4, !tbaa !5
  %913 = load i32, ptr %8, align 4, !tbaa !5
  %914 = mul nsw i32 44, %913
  %915 = add nsw i32 %912, %914
  %916 = sext i32 %915 to i64
  %917 = getelementptr inbounds double, ptr %911, i64 %916
  %918 = load double, ptr %917, align 8, !tbaa !11
  %919 = call double @llvm.fmuladd.f64(double 0x3CF39AF8D87896FD, double %918, double %910)
  %920 = load ptr, ptr %7, align 8, !tbaa !9
  %921 = load i32, ptr %12, align 4, !tbaa !5
  %922 = load i32, ptr %8, align 4, !tbaa !5
  %923 = mul nsw i32 45, %922
  %924 = add nsw i32 %921, %923
  %925 = sext i32 %924 to i64
  %926 = getelementptr inbounds double, ptr %920, i64 %925
  %927 = load double, ptr %926, align 8, !tbaa !11
  %928 = call double @llvm.fmuladd.f64(double 0xBD05A83AA25A713E, double %927, double %919)
  %929 = load ptr, ptr %7, align 8, !tbaa !9
  %930 = load i32, ptr %12, align 4, !tbaa !5
  %931 = load i32, ptr %8, align 4, !tbaa !5
  %932 = mul nsw i32 46, %931
  %933 = add nsw i32 %930, %932
  %934 = sext i32 %933 to i64
  %935 = getelementptr inbounds double, ptr %929, i64 %934
  %936 = load double, ptr %935, align 8, !tbaa !11
  %937 = call double @llvm.fmuladd.f64(double 0x3CE7EC7FBD7E34A3, double %936, double %928)
  %938 = load ptr, ptr %7, align 8, !tbaa !9
  %939 = load i32, ptr %12, align 4, !tbaa !5
  %940 = load i32, ptr %8, align 4, !tbaa !5
  %941 = mul nsw i32 47, %940
  %942 = add nsw i32 %939, %941
  %943 = sext i32 %942 to i64
  %944 = getelementptr inbounds double, ptr %938, i64 %943
  %945 = load double, ptr %944, align 8, !tbaa !11
  %946 = call double @llvm.fmuladd.f64(double 0xBD055F1576963AFE, double %945, double %937)
  %947 = load ptr, ptr %7, align 8, !tbaa !9
  %948 = load i32, ptr %12, align 4, !tbaa !5
  %949 = load i32, ptr %8, align 4, !tbaa !5
  %950 = mul nsw i32 48, %949
  %951 = add nsw i32 %948, %950
  %952 = sext i32 %951 to i64
  %953 = getelementptr inbounds double, ptr %947, i64 %952
  %954 = load double, ptr %953, align 8, !tbaa !11
  %955 = call double @llvm.fmuladd.f64(double 0x3C970362DFEA2854, double %954, double %946)
  %956 = load ptr, ptr %7, align 8, !tbaa !9
  %957 = load i32, ptr %12, align 4, !tbaa !5
  %958 = load i32, ptr %8, align 4, !tbaa !5
  %959 = mul nsw i32 49, %958
  %960 = add nsw i32 %957, %959
  %961 = sext i32 %960 to i64
  %962 = getelementptr inbounds double, ptr %956, i64 %961
  %963 = load double, ptr %962, align 8, !tbaa !11
  %964 = call double @llvm.fmuladd.f64(double 0xBFE4A7E9CB8A349A, double %963, double %955)
  %965 = load ptr, ptr %7, align 8, !tbaa !9
  %966 = load i32, ptr %12, align 4, !tbaa !5
  %967 = load i32, ptr %8, align 4, !tbaa !5
  %968 = mul nsw i32 50, %967
  %969 = add nsw i32 %966, %968
  %970 = sext i32 %969 to i64
  %971 = getelementptr inbounds double, ptr %965, i64 %970
  %972 = load double, ptr %971, align 8, !tbaa !11
  %973 = call double @llvm.fmuladd.f64(double 0xBC7565CE1279E84F, double %972, double %964)
  %974 = load ptr, ptr %7, align 8, !tbaa !9
  %975 = load i32, ptr %12, align 4, !tbaa !5
  %976 = load i32, ptr %8, align 4, !tbaa !5
  %977 = mul nsw i32 51, %976
  %978 = add nsw i32 %975, %977
  %979 = sext i32 %978 to i64
  %980 = getelementptr inbounds double, ptr %974, i64 %979
  %981 = load double, ptr %980, align 8, !tbaa !11
  %982 = call double @llvm.fmuladd.f64(double 0xBCB0188D814CF0C8, double %981, double %973)
  %983 = load ptr, ptr %7, align 8, !tbaa !9
  %984 = load i32, ptr %12, align 4, !tbaa !5
  %985 = load i32, ptr %8, align 4, !tbaa !5
  %986 = mul nsw i32 52, %985
  %987 = add nsw i32 %984, %986
  %988 = sext i32 %987 to i64
  %989 = getelementptr inbounds double, ptr %983, i64 %988
  %990 = load double, ptr %989, align 8, !tbaa !11
  %991 = call double @llvm.fmuladd.f64(double 0x3CAC57CB2B44F947, double %990, double %982)
  %992 = load ptr, ptr %7, align 8, !tbaa !9
  %993 = load i32, ptr %12, align 4, !tbaa !5
  %994 = load i32, ptr %8, align 4, !tbaa !5
  %995 = mul nsw i32 53, %994
  %996 = add nsw i32 %993, %995
  %997 = sext i32 %996 to i64
  %998 = getelementptr inbounds double, ptr %992, i64 %997
  %999 = load double, ptr %998, align 8, !tbaa !11
  %1000 = call double @llvm.fmuladd.f64(double 0x3C98231206424F20, double %999, double %991)
  store double %1000, ptr %11, align 8, !tbaa !11
  %1001 = load double, ptr %11, align 8, !tbaa !11
  %1002 = load ptr, ptr %9, align 8, !tbaa !9
  %1003 = load i32, ptr %12, align 4, !tbaa !5
  %1004 = load i32, ptr %10, align 4, !tbaa !5
  %1005 = mul nsw i32 1, %1004
  %1006 = add nsw i32 %1003, %1005
  %1007 = sext i32 %1006 to i64
  %1008 = getelementptr inbounds double, ptr %1002, i64 %1007
  %1009 = load double, ptr %1008, align 8, !tbaa !11
  %1010 = fadd double %1009, %1001
  store double %1010, ptr %1008, align 8, !tbaa !11
  %1011 = load ptr, ptr %7, align 8, !tbaa !9
  %1012 = load i32, ptr %12, align 4, !tbaa !5
  %1013 = load i32, ptr %8, align 4, !tbaa !5
  %1014 = mul nsw i32 0, %1013
  %1015 = add nsw i32 %1012, %1014
  %1016 = sext i32 %1015 to i64
  %1017 = getelementptr inbounds double, ptr %1011, i64 %1016
  %1018 = load double, ptr %1017, align 8, !tbaa !11
  %1019 = load ptr, ptr %7, align 8, !tbaa !9
  %1020 = load i32, ptr %12, align 4, !tbaa !5
  %1021 = load i32, ptr %8, align 4, !tbaa !5
  %1022 = mul nsw i32 1, %1021
  %1023 = add nsw i32 %1020, %1022
  %1024 = sext i32 %1023 to i64
  %1025 = getelementptr inbounds double, ptr %1019, i64 %1024
  %1026 = load double, ptr %1025, align 8, !tbaa !11
  %1027 = fmul double 0xBFDFFE63E2851783, %1026
  %1028 = call double @llvm.fmuladd.f64(double 0xBFE1EC4181248AE2, double %1018, double %1027)
  %1029 = load ptr, ptr %7, align 8, !tbaa !9
  %1030 = load i32, ptr %12, align 4, !tbaa !5
  %1031 = load i32, ptr %8, align 4, !tbaa !5
  %1032 = mul nsw i32 2, %1031
  %1033 = add nsw i32 %1030, %1032
  %1034 = sext i32 %1033 to i64
  %1035 = getelementptr inbounds double, ptr %1029, i64 %1034
  %1036 = load double, ptr %1035, align 8, !tbaa !11
  %1037 = call double @llvm.fmuladd.f64(double 0x4000E9CE75C2FBF8, double %1036, double %1028)
  %1038 = load ptr, ptr %7, align 8, !tbaa !9
  %1039 = load i32, ptr %12, align 4, !tbaa !5
  %1040 = load i32, ptr %8, align 4, !tbaa !5
  %1041 = mul nsw i32 3, %1040
  %1042 = add nsw i32 %1039, %1041
  %1043 = sext i32 %1042 to i64
  %1044 = getelementptr inbounds double, ptr %1038, i64 %1043
  %1045 = load double, ptr %1044, align 8, !tbaa !11
  %1046 = call double @llvm.fmuladd.f64(double 0x3FF31D88B253B07F, double %1045, double %1037)
  %1047 = load ptr, ptr %7, align 8, !tbaa !9
  %1048 = load i32, ptr %12, align 4, !tbaa !5
  %1049 = load i32, ptr %8, align 4, !tbaa !5
  %1050 = mul nsw i32 4, %1049
  %1051 = add nsw i32 %1048, %1050
  %1052 = sext i32 %1051 to i64
  %1053 = getelementptr inbounds double, ptr %1047, i64 %1052
  %1054 = load double, ptr %1053, align 8, !tbaa !11
  %1055 = call double @llvm.fmuladd.f64(double 0x3FF2343957F3A8A6, double %1054, double %1046)
  %1056 = load ptr, ptr %7, align 8, !tbaa !9
  %1057 = load i32, ptr %12, align 4, !tbaa !5
  %1058 = load i32, ptr %8, align 4, !tbaa !5
  %1059 = mul nsw i32 5, %1058
  %1060 = add nsw i32 %1057, %1059
  %1061 = sext i32 %1060 to i64
  %1062 = getelementptr inbounds double, ptr %1056, i64 %1061
  %1063 = load double, ptr %1062, align 8, !tbaa !11
  %1064 = call double @llvm.fmuladd.f64(double 0xBFEE712F1EF7D892, double %1063, double %1055)
  %1065 = load ptr, ptr %7, align 8, !tbaa !9
  %1066 = load i32, ptr %12, align 4, !tbaa !5
  %1067 = load i32, ptr %8, align 4, !tbaa !5
  %1068 = mul nsw i32 6, %1067
  %1069 = add nsw i32 %1066, %1068
  %1070 = sext i32 %1069 to i64
  %1071 = getelementptr inbounds double, ptr %1065, i64 %1070
  %1072 = load double, ptr %1071, align 8, !tbaa !11
  %1073 = call double @llvm.fmuladd.f64(double 0x3C7BE455D72E2687, double %1072, double %1064)
  %1074 = load ptr, ptr %7, align 8, !tbaa !9
  %1075 = load i32, ptr %12, align 4, !tbaa !5
  %1076 = load i32, ptr %8, align 4, !tbaa !5
  %1077 = mul nsw i32 7, %1076
  %1078 = add nsw i32 %1075, %1077
  %1079 = sext i32 %1078 to i64
  %1080 = getelementptr inbounds double, ptr %1074, i64 %1079
  %1081 = load double, ptr %1080, align 8, !tbaa !11
  %1082 = call double @llvm.fmuladd.f64(double 0xBCA88EEBBA111342, double %1081, double %1073)
  %1083 = load ptr, ptr %7, align 8, !tbaa !9
  %1084 = load i32, ptr %12, align 4, !tbaa !5
  %1085 = load i32, ptr %8, align 4, !tbaa !5
  %1086 = mul nsw i32 8, %1085
  %1087 = add nsw i32 %1084, %1086
  %1088 = sext i32 %1087 to i64
  %1089 = getelementptr inbounds double, ptr %1083, i64 %1088
  %1090 = load double, ptr %1089, align 8, !tbaa !11
  %1091 = call double @llvm.fmuladd.f64(double 0xBCAAA314368C77EA, double %1090, double %1082)
  %1092 = load ptr, ptr %7, align 8, !tbaa !9
  %1093 = load i32, ptr %12, align 4, !tbaa !5
  %1094 = load i32, ptr %8, align 4, !tbaa !5
  %1095 = mul nsw i32 9, %1094
  %1096 = add nsw i32 %1093, %1095
  %1097 = sext i32 %1096 to i64
  %1098 = getelementptr inbounds double, ptr %1092, i64 %1097
  %1099 = load double, ptr %1098, align 8, !tbaa !11
  %1100 = call double @llvm.fmuladd.f64(double 0xBC89A9C06842F0D3, double %1099, double %1091)
  %1101 = load ptr, ptr %7, align 8, !tbaa !9
  %1102 = load i32, ptr %12, align 4, !tbaa !5
  %1103 = load i32, ptr %8, align 4, !tbaa !5
  %1104 = mul nsw i32 10, %1103
  %1105 = add nsw i32 %1102, %1104
  %1106 = sext i32 %1105 to i64
  %1107 = getelementptr inbounds double, ptr %1101, i64 %1106
  %1108 = load double, ptr %1107, align 8, !tbaa !11
  %1109 = call double @llvm.fmuladd.f64(double 0x3CC01B0CEED92744, double %1108, double %1100)
  %1110 = load ptr, ptr %7, align 8, !tbaa !9
  %1111 = load i32, ptr %12, align 4, !tbaa !5
  %1112 = load i32, ptr %8, align 4, !tbaa !5
  %1113 = mul nsw i32 11, %1112
  %1114 = add nsw i32 %1111, %1113
  %1115 = sext i32 %1114 to i64
  %1116 = getelementptr inbounds double, ptr %1110, i64 %1115
  %1117 = load double, ptr %1116, align 8, !tbaa !11
  %1118 = call double @llvm.fmuladd.f64(double 0xBCB179EA74C658F9, double %1117, double %1109)
  %1119 = load ptr, ptr %7, align 8, !tbaa !9
  %1120 = load i32, ptr %12, align 4, !tbaa !5
  %1121 = load i32, ptr %8, align 4, !tbaa !5
  %1122 = mul nsw i32 12, %1121
  %1123 = add nsw i32 %1120, %1122
  %1124 = sext i32 %1123 to i64
  %1125 = getelementptr inbounds double, ptr %1119, i64 %1124
  %1126 = load double, ptr %1125, align 8, !tbaa !11
  %1127 = call double @llvm.fmuladd.f64(double 0xBCA45DF77990844E, double %1126, double %1118)
  %1128 = load ptr, ptr %7, align 8, !tbaa !9
  %1129 = load i32, ptr %12, align 4, !tbaa !5
  %1130 = load i32, ptr %8, align 4, !tbaa !5
  %1131 = mul nsw i32 13, %1130
  %1132 = add nsw i32 %1129, %1131
  %1133 = sext i32 %1132 to i64
  %1134 = getelementptr inbounds double, ptr %1128, i64 %1133
  %1135 = load double, ptr %1134, align 8, !tbaa !11
  %1136 = call double @llvm.fmuladd.f64(double 0x3CAB464CCF9E9E2D, double %1135, double %1127)
  %1137 = load ptr, ptr %7, align 8, !tbaa !9
  %1138 = load i32, ptr %12, align 4, !tbaa !5
  %1139 = load i32, ptr %8, align 4, !tbaa !5
  %1140 = mul nsw i32 14, %1139
  %1141 = add nsw i32 %1138, %1140
  %1142 = sext i32 %1141 to i64
  %1143 = getelementptr inbounds double, ptr %1137, i64 %1142
  %1144 = load double, ptr %1143, align 8, !tbaa !11
  %1145 = call double @llvm.fmuladd.f64(double 0x3CCC9AD4A6D08D95, double %1144, double %1136)
  %1146 = load ptr, ptr %7, align 8, !tbaa !9
  %1147 = load i32, ptr %12, align 4, !tbaa !5
  %1148 = load i32, ptr %8, align 4, !tbaa !5
  %1149 = mul nsw i32 15, %1148
  %1150 = add nsw i32 %1147, %1149
  %1151 = sext i32 %1150 to i64
  %1152 = getelementptr inbounds double, ptr %1146, i64 %1151
  %1153 = load double, ptr %1152, align 8, !tbaa !11
  %1154 = call double @llvm.fmuladd.f64(double 0x3CB10C6838C95A72, double %1153, double %1145)
  %1155 = load ptr, ptr %7, align 8, !tbaa !9
  %1156 = load i32, ptr %12, align 4, !tbaa !5
  %1157 = load i32, ptr %8, align 4, !tbaa !5
  %1158 = mul nsw i32 16, %1157
  %1159 = add nsw i32 %1156, %1158
  %1160 = sext i32 %1159 to i64
  %1161 = getelementptr inbounds double, ptr %1155, i64 %1160
  %1162 = load double, ptr %1161, align 8, !tbaa !11
  %1163 = call double @llvm.fmuladd.f64(double 0x3CD07012D87C038A, double %1162, double %1154)
  %1164 = load ptr, ptr %7, align 8, !tbaa !9
  %1165 = load i32, ptr %12, align 4, !tbaa !5
  %1166 = load i32, ptr %8, align 4, !tbaa !5
  %1167 = mul nsw i32 17, %1166
  %1168 = add nsw i32 %1165, %1167
  %1169 = sext i32 %1168 to i64
  %1170 = getelementptr inbounds double, ptr %1164, i64 %1169
  %1171 = load double, ptr %1170, align 8, !tbaa !11
  %1172 = call double @llvm.fmuladd.f64(double 0x3CCBC273E408F766, double %1171, double %1163)
  %1173 = load ptr, ptr %7, align 8, !tbaa !9
  %1174 = load i32, ptr %12, align 4, !tbaa !5
  %1175 = load i32, ptr %8, align 4, !tbaa !5
  %1176 = mul nsw i32 18, %1175
  %1177 = add nsw i32 %1174, %1176
  %1178 = sext i32 %1177 to i64
  %1179 = getelementptr inbounds double, ptr %1173, i64 %1178
  %1180 = load double, ptr %1179, align 8, !tbaa !11
  %1181 = call double @llvm.fmuladd.f64(double 0xBFDFFE63E285175F, double %1180, double %1172)
  %1182 = load ptr, ptr %7, align 8, !tbaa !9
  %1183 = load i32, ptr %12, align 4, !tbaa !5
  %1184 = load i32, ptr %8, align 4, !tbaa !5
  %1185 = mul nsw i32 19, %1184
  %1186 = add nsw i32 %1183, %1185
  %1187 = sext i32 %1186 to i64
  %1188 = getelementptr inbounds double, ptr %1182, i64 %1187
  %1189 = load double, ptr %1188, align 8, !tbaa !11
  %1190 = call double @llvm.fmuladd.f64(double 0xBFE1EC4181248AE2, double %1189, double %1181)
  %1191 = load ptr, ptr %7, align 8, !tbaa !9
  %1192 = load i32, ptr %12, align 4, !tbaa !5
  %1193 = load i32, ptr %8, align 4, !tbaa !5
  %1194 = mul nsw i32 20, %1193
  %1195 = add nsw i32 %1192, %1194
  %1196 = sext i32 %1195 to i64
  %1197 = getelementptr inbounds double, ptr %1191, i64 %1196
  %1198 = load double, ptr %1197, align 8, !tbaa !11
  %1199 = call double @llvm.fmuladd.f64(double 0x4000E9CE75C2FBF8, double %1198, double %1190)
  %1200 = load ptr, ptr %7, align 8, !tbaa !9
  %1201 = load i32, ptr %12, align 4, !tbaa !5
  %1202 = load i32, ptr %8, align 4, !tbaa !5
  %1203 = mul nsw i32 21, %1202
  %1204 = add nsw i32 %1201, %1203
  %1205 = sext i32 %1204 to i64
  %1206 = getelementptr inbounds double, ptr %1200, i64 %1205
  %1207 = load double, ptr %1206, align 8, !tbaa !11
  %1208 = call double @llvm.fmuladd.f64(double 0x3FF2343957F3A8AF, double %1207, double %1199)
  %1209 = load ptr, ptr %7, align 8, !tbaa !9
  %1210 = load i32, ptr %12, align 4, !tbaa !5
  %1211 = load i32, ptr %8, align 4, !tbaa !5
  %1212 = mul nsw i32 22, %1211
  %1213 = add nsw i32 %1210, %1212
  %1214 = sext i32 %1213 to i64
  %1215 = getelementptr inbounds double, ptr %1209, i64 %1214
  %1216 = load double, ptr %1215, align 8, !tbaa !11
  %1217 = call double @llvm.fmuladd.f64(double 0x3FF31D88B253B07B, double %1216, double %1208)
  %1218 = load ptr, ptr %7, align 8, !tbaa !9
  %1219 = load i32, ptr %12, align 4, !tbaa !5
  %1220 = load i32, ptr %8, align 4, !tbaa !5
  %1221 = mul nsw i32 23, %1220
  %1222 = add nsw i32 %1219, %1221
  %1223 = sext i32 %1222 to i64
  %1224 = getelementptr inbounds double, ptr %1218, i64 %1223
  %1225 = load double, ptr %1224, align 8, !tbaa !11
  %1226 = call double @llvm.fmuladd.f64(double 0xBFEE712F1EF7D89C, double %1225, double %1217)
  %1227 = load ptr, ptr %7, align 8, !tbaa !9
  %1228 = load i32, ptr %12, align 4, !tbaa !5
  %1229 = load i32, ptr %8, align 4, !tbaa !5
  %1230 = mul nsw i32 24, %1229
  %1231 = add nsw i32 %1228, %1230
  %1232 = sext i32 %1231 to i64
  %1233 = getelementptr inbounds double, ptr %1227, i64 %1232
  %1234 = load double, ptr %1233, align 8, !tbaa !11
  %1235 = call double @llvm.fmuladd.f64(double 0x3C850293B3FCA0E3, double %1234, double %1226)
  %1236 = load ptr, ptr %7, align 8, !tbaa !9
  %1237 = load i32, ptr %12, align 4, !tbaa !5
  %1238 = load i32, ptr %8, align 4, !tbaa !5
  %1239 = mul nsw i32 25, %1238
  %1240 = add nsw i32 %1237, %1239
  %1241 = sext i32 %1240 to i64
  %1242 = getelementptr inbounds double, ptr %1236, i64 %1241
  %1243 = load double, ptr %1242, align 8, !tbaa !11
  %1244 = call double @llvm.fmuladd.f64(double 0xBC70D2CDDD720E22, double %1243, double %1235)
  %1245 = load ptr, ptr %7, align 8, !tbaa !9
  %1246 = load i32, ptr %12, align 4, !tbaa !5
  %1247 = load i32, ptr %8, align 4, !tbaa !5
  %1248 = mul nsw i32 26, %1247
  %1249 = add nsw i32 %1246, %1248
  %1250 = sext i32 %1249 to i64
  %1251 = getelementptr inbounds double, ptr %1245, i64 %1250
  %1252 = load double, ptr %1251, align 8, !tbaa !11
  %1253 = call double @llvm.fmuladd.f64(double 0xBCA9795185F3DCEB, double %1252, double %1244)
  %1254 = load ptr, ptr %7, align 8, !tbaa !9
  %1255 = load i32, ptr %12, align 4, !tbaa !5
  %1256 = load i32, ptr %8, align 4, !tbaa !5
  %1257 = mul nsw i32 27, %1256
  %1258 = add nsw i32 %1255, %1257
  %1259 = sext i32 %1258 to i64
  %1260 = getelementptr inbounds double, ptr %1254, i64 %1259
  %1261 = load double, ptr %1260, align 8, !tbaa !11
  %1262 = call double @llvm.fmuladd.f64(double 0x3C9FEBD8FA5C50DD, double %1261, double %1253)
  %1263 = load ptr, ptr %7, align 8, !tbaa !9
  %1264 = load i32, ptr %12, align 4, !tbaa !5
  %1265 = load i32, ptr %8, align 4, !tbaa !5
  %1266 = mul nsw i32 28, %1265
  %1267 = add nsw i32 %1264, %1266
  %1268 = sext i32 %1267 to i64
  %1269 = getelementptr inbounds double, ptr %1263, i64 %1268
  %1270 = load double, ptr %1269, align 8, !tbaa !11
  %1271 = call double @llvm.fmuladd.f64(double 0x3CCE35BEEAC7EA45, double %1270, double %1262)
  %1272 = load ptr, ptr %7, align 8, !tbaa !9
  %1273 = load i32, ptr %12, align 4, !tbaa !5
  %1274 = load i32, ptr %8, align 4, !tbaa !5
  %1275 = mul nsw i32 29, %1274
  %1276 = add nsw i32 %1273, %1275
  %1277 = sext i32 %1276 to i64
  %1278 = getelementptr inbounds double, ptr %1272, i64 %1277
  %1279 = load double, ptr %1278, align 8, !tbaa !11
  %1280 = call double @llvm.fmuladd.f64(double 0xBCBC38460D0EF925, double %1279, double %1271)
  %1281 = load ptr, ptr %7, align 8, !tbaa !9
  %1282 = load i32, ptr %12, align 4, !tbaa !5
  %1283 = load i32, ptr %8, align 4, !tbaa !5
  %1284 = mul nsw i32 30, %1283
  %1285 = add nsw i32 %1282, %1284
  %1286 = sext i32 %1285 to i64
  %1287 = getelementptr inbounds double, ptr %1281, i64 %1286
  %1288 = load double, ptr %1287, align 8, !tbaa !11
  %1289 = call double @llvm.fmuladd.f64(double 0xBCB4A05EBC88835E, double %1288, double %1280)
  %1290 = load ptr, ptr %7, align 8, !tbaa !9
  %1291 = load i32, ptr %12, align 4, !tbaa !5
  %1292 = load i32, ptr %8, align 4, !tbaa !5
  %1293 = mul nsw i32 31, %1292
  %1294 = add nsw i32 %1291, %1293
  %1295 = sext i32 %1294 to i64
  %1296 = getelementptr inbounds double, ptr %1290, i64 %1295
  %1297 = load double, ptr %1296, align 8, !tbaa !11
  %1298 = call double @llvm.fmuladd.f64(double 0xBCB8D3AFF5676101, double %1297, double %1289)
  %1299 = load ptr, ptr %7, align 8, !tbaa !9
  %1300 = load i32, ptr %12, align 4, !tbaa !5
  %1301 = load i32, ptr %8, align 4, !tbaa !5
  %1302 = mul nsw i32 32, %1301
  %1303 = add nsw i32 %1300, %1302
  %1304 = sext i32 %1303 to i64
  %1305 = getelementptr inbounds double, ptr %1299, i64 %1304
  %1306 = load double, ptr %1305, align 8, !tbaa !11
  %1307 = call double @llvm.fmuladd.f64(double 0x3CBDC6E1E1019EC2, double %1306, double %1298)
  %1308 = load ptr, ptr %7, align 8, !tbaa !9
  %1309 = load i32, ptr %12, align 4, !tbaa !5
  %1310 = load i32, ptr %8, align 4, !tbaa !5
  %1311 = mul nsw i32 33, %1310
  %1312 = add nsw i32 %1309, %1311
  %1313 = sext i32 %1312 to i64
  %1314 = getelementptr inbounds double, ptr %1308, i64 %1313
  %1315 = load double, ptr %1314, align 8, !tbaa !11
  %1316 = call double @llvm.fmuladd.f64(double 0xBC82BE6C478E3228, double %1315, double %1307)
  %1317 = load ptr, ptr %7, align 8, !tbaa !9
  %1318 = load i32, ptr %12, align 4, !tbaa !5
  %1319 = load i32, ptr %8, align 4, !tbaa !5
  %1320 = mul nsw i32 34, %1319
  %1321 = add nsw i32 %1318, %1320
  %1322 = sext i32 %1321 to i64
  %1323 = getelementptr inbounds double, ptr %1317, i64 %1322
  %1324 = load double, ptr %1323, align 8, !tbaa !11
  %1325 = call double @llvm.fmuladd.f64(double 0x3C86CA03EF7109C0, double %1324, double %1316)
  %1326 = load ptr, ptr %7, align 8, !tbaa !9
  %1327 = load i32, ptr %12, align 4, !tbaa !5
  %1328 = load i32, ptr %8, align 4, !tbaa !5
  %1329 = mul nsw i32 35, %1328
  %1330 = add nsw i32 %1327, %1329
  %1331 = sext i32 %1330 to i64
  %1332 = getelementptr inbounds double, ptr %1326, i64 %1331
  %1333 = load double, ptr %1332, align 8, !tbaa !11
  %1334 = call double @llvm.fmuladd.f64(double 0x3CD3FC268C3751F5, double %1333, double %1325)
  %1335 = load ptr, ptr %7, align 8, !tbaa !9
  %1336 = load i32, ptr %12, align 4, !tbaa !5
  %1337 = load i32, ptr %8, align 4, !tbaa !5
  %1338 = mul nsw i32 36, %1337
  %1339 = add nsw i32 %1336, %1338
  %1340 = sext i32 %1339 to i64
  %1341 = getelementptr inbounds double, ptr %1335, i64 %1340
  %1342 = load double, ptr %1341, align 8, !tbaa !11
  %1343 = call double @llvm.fmuladd.f64(double 0xBD08E7AFCAA156E7, double %1342, double %1334)
  %1344 = load ptr, ptr %7, align 8, !tbaa !9
  %1345 = load i32, ptr %12, align 4, !tbaa !5
  %1346 = load i32, ptr %8, align 4, !tbaa !5
  %1347 = mul nsw i32 37, %1346
  %1348 = add nsw i32 %1345, %1347
  %1349 = sext i32 %1348 to i64
  %1350 = getelementptr inbounds double, ptr %1344, i64 %1349
  %1351 = load double, ptr %1350, align 8, !tbaa !11
  %1352 = call double @llvm.fmuladd.f64(double 0xBD080EA3215BACFB, double %1351, double %1343)
  %1353 = load ptr, ptr %7, align 8, !tbaa !9
  %1354 = load i32, ptr %12, align 4, !tbaa !5
  %1355 = load i32, ptr %8, align 4, !tbaa !5
  %1356 = mul nsw i32 38, %1355
  %1357 = add nsw i32 %1354, %1356
  %1358 = sext i32 %1357 to i64
  %1359 = getelementptr inbounds double, ptr %1353, i64 %1358
  %1360 = load double, ptr %1359, align 8, !tbaa !11
  %1361 = call double @llvm.fmuladd.f64(double 0x3FFEFBDEB14F4D9C, double %1360, double %1352)
  %1362 = load ptr, ptr %7, align 8, !tbaa !9
  %1363 = load i32, ptr %12, align 4, !tbaa !5
  %1364 = load i32, ptr %8, align 4, !tbaa !5
  %1365 = mul nsw i32 39, %1364
  %1366 = add nsw i32 %1363, %1365
  %1367 = sext i32 %1366 to i64
  %1368 = getelementptr inbounds double, ptr %1362, i64 %1367
  %1369 = load double, ptr %1368, align 8, !tbaa !11
  %1370 = call double @llvm.fmuladd.f64(double 0x3D1B6A9B554348D9, double %1369, double %1361)
  %1371 = load ptr, ptr %7, align 8, !tbaa !9
  %1372 = load i32, ptr %12, align 4, !tbaa !5
  %1373 = load i32, ptr %8, align 4, !tbaa !5
  %1374 = mul nsw i32 40, %1373
  %1375 = add nsw i32 %1372, %1374
  %1376 = sext i32 %1375 to i64
  %1377 = getelementptr inbounds double, ptr %1371, i64 %1376
  %1378 = load double, ptr %1377, align 8, !tbaa !11
  %1379 = call double @llvm.fmuladd.f64(double 0x3D1A602CE43D9E05, double %1378, double %1370)
  %1380 = load ptr, ptr %7, align 8, !tbaa !9
  %1381 = load i32, ptr %12, align 4, !tbaa !5
  %1382 = load i32, ptr %8, align 4, !tbaa !5
  %1383 = mul nsw i32 41, %1382
  %1384 = add nsw i32 %1381, %1383
  %1385 = sext i32 %1384 to i64
  %1386 = getelementptr inbounds double, ptr %1380, i64 %1385
  %1387 = load double, ptr %1386, align 8, !tbaa !11
  %1388 = call double @llvm.fmuladd.f64(double 0xBCFB4D0EBD5404E2, double %1387, double %1379)
  %1389 = load ptr, ptr %7, align 8, !tbaa !9
  %1390 = load i32, ptr %12, align 4, !tbaa !5
  %1391 = load i32, ptr %8, align 4, !tbaa !5
  %1392 = mul nsw i32 42, %1391
  %1393 = add nsw i32 %1390, %1392
  %1394 = sext i32 %1393 to i64
  %1395 = getelementptr inbounds double, ptr %1389, i64 %1394
  %1396 = load double, ptr %1395, align 8, !tbaa !11
  %1397 = call double @llvm.fmuladd.f64(double 0x3CF4EA8393C3B47E, double %1396, double %1388)
  %1398 = load ptr, ptr %7, align 8, !tbaa !9
  %1399 = load i32, ptr %12, align 4, !tbaa !5
  %1400 = load i32, ptr %8, align 4, !tbaa !5
  %1401 = mul nsw i32 43, %1400
  %1402 = add nsw i32 %1399, %1401
  %1403 = sext i32 %1402 to i64
  %1404 = getelementptr inbounds double, ptr %1398, i64 %1403
  %1405 = load double, ptr %1404, align 8, !tbaa !11
  %1406 = call double @llvm.fmuladd.f64(double 0x3CF2549348F1AFBD, double %1405, double %1397)
  %1407 = load ptr, ptr %7, align 8, !tbaa !9
  %1408 = load i32, ptr %12, align 4, !tbaa !5
  %1409 = load i32, ptr %8, align 4, !tbaa !5
  %1410 = mul nsw i32 44, %1409
  %1411 = add nsw i32 %1408, %1410
  %1412 = sext i32 %1411 to i64
  %1413 = getelementptr inbounds double, ptr %1407, i64 %1412
  %1414 = load double, ptr %1413, align 8, !tbaa !11
  %1415 = call double @llvm.fmuladd.f64(double 0x3FF08654A2D4F75B, double %1414, double %1406)
  %1416 = load ptr, ptr %7, align 8, !tbaa !9
  %1417 = load i32, ptr %12, align 4, !tbaa !5
  %1418 = load i32, ptr %8, align 4, !tbaa !5
  %1419 = mul nsw i32 45, %1418
  %1420 = add nsw i32 %1417, %1419
  %1421 = sext i32 %1420 to i64
  %1422 = getelementptr inbounds double, ptr %1416, i64 %1421
  %1423 = load double, ptr %1422, align 8, !tbaa !11
  %1424 = call double @llvm.fmuladd.f64(double 0xBD0538138B737B14, double %1423, double %1415)
  %1425 = load ptr, ptr %7, align 8, !tbaa !9
  %1426 = load i32, ptr %12, align 4, !tbaa !5
  %1427 = load i32, ptr %8, align 4, !tbaa !5
  %1428 = mul nsw i32 46, %1427
  %1429 = add nsw i32 %1426, %1428
  %1430 = sext i32 %1429 to i64
  %1431 = getelementptr inbounds double, ptr %1425, i64 %1430
  %1432 = load double, ptr %1431, align 8, !tbaa !11
  %1433 = call double @llvm.fmuladd.f64(double 0xBD05852E3E6E5F29, double %1432, double %1424)
  %1434 = load ptr, ptr %7, align 8, !tbaa !9
  %1435 = load i32, ptr %12, align 4, !tbaa !5
  %1436 = load i32, ptr %8, align 4, !tbaa !5
  %1437 = mul nsw i32 47, %1436
  %1438 = add nsw i32 %1435, %1437
  %1439 = sext i32 %1438 to i64
  %1440 = getelementptr inbounds double, ptr %1434, i64 %1439
  %1441 = load double, ptr %1440, align 8, !tbaa !11
  %1442 = call double @llvm.fmuladd.f64(double 0x3CE317C6C3C4B7FB, double %1441, double %1433)
  %1443 = load ptr, ptr %7, align 8, !tbaa !9
  %1444 = load i32, ptr %12, align 4, !tbaa !5
  %1445 = load i32, ptr %8, align 4, !tbaa !5
  %1446 = mul nsw i32 48, %1445
  %1447 = add nsw i32 %1444, %1446
  %1448 = sext i32 %1447 to i64
  %1449 = getelementptr inbounds double, ptr %1443, i64 %1448
  %1450 = load double, ptr %1449, align 8, !tbaa !11
  %1451 = call double @llvm.fmuladd.f64(double 0xBCA7907993F5C565, double %1450, double %1442)
  %1452 = load ptr, ptr %7, align 8, !tbaa !9
  %1453 = load i32, ptr %12, align 4, !tbaa !5
  %1454 = load i32, ptr %8, align 4, !tbaa !5
  %1455 = mul nsw i32 49, %1454
  %1456 = add nsw i32 %1453, %1455
  %1457 = sext i32 %1456 to i64
  %1458 = getelementptr inbounds double, ptr %1452, i64 %1457
  %1459 = load double, ptr %1458, align 8, !tbaa !11
  %1460 = call double @llvm.fmuladd.f64(double 0xBCB4627DA761F89E, double %1459, double %1451)
  %1461 = load ptr, ptr %7, align 8, !tbaa !9
  %1462 = load i32, ptr %12, align 4, !tbaa !5
  %1463 = load i32, ptr %8, align 4, !tbaa !5
  %1464 = mul nsw i32 50, %1463
  %1465 = add nsw i32 %1462, %1464
  %1466 = sext i32 %1465 to i64
  %1467 = getelementptr inbounds double, ptr %1461, i64 %1466
  %1468 = load double, ptr %1467, align 8, !tbaa !11
  %1469 = call double @llvm.fmuladd.f64(double 0xBFE4A7E9CB8A349B, double %1468, double %1460)
  %1470 = load ptr, ptr %7, align 8, !tbaa !9
  %1471 = load i32, ptr %12, align 4, !tbaa !5
  %1472 = load i32, ptr %8, align 4, !tbaa !5
  %1473 = mul nsw i32 51, %1472
  %1474 = add nsw i32 %1471, %1473
  %1475 = sext i32 %1474 to i64
  %1476 = getelementptr inbounds double, ptr %1470, i64 %1475
  %1477 = load double, ptr %1476, align 8, !tbaa !11
  %1478 = call double @llvm.fmuladd.f64(double 0xBC9EAEE0B6C3EF3F, double %1477, double %1469)
  %1479 = load ptr, ptr %7, align 8, !tbaa !9
  %1480 = load i32, ptr %12, align 4, !tbaa !5
  %1481 = load i32, ptr %8, align 4, !tbaa !5
  %1482 = mul nsw i32 52, %1481
  %1483 = add nsw i32 %1480, %1482
  %1484 = sext i32 %1483 to i64
  %1485 = getelementptr inbounds double, ptr %1479, i64 %1484
  %1486 = load double, ptr %1485, align 8, !tbaa !11
  %1487 = call double @llvm.fmuladd.f64(double 0x3CCD152CD522E8B4, double %1486, double %1478)
  %1488 = load ptr, ptr %7, align 8, !tbaa !9
  %1489 = load i32, ptr %12, align 4, !tbaa !5
  %1490 = load i32, ptr %8, align 4, !tbaa !5
  %1491 = mul nsw i32 53, %1490
  %1492 = add nsw i32 %1489, %1491
  %1493 = sext i32 %1492 to i64
  %1494 = getelementptr inbounds double, ptr %1488, i64 %1493
  %1495 = load double, ptr %1494, align 8, !tbaa !11
  %1496 = call double @llvm.fmuladd.f64(double 0x3CC9AF22A9592C7A, double %1495, double %1487)
  store double %1496, ptr %11, align 8, !tbaa !11
  %1497 = load double, ptr %11, align 8, !tbaa !11
  %1498 = load ptr, ptr %9, align 8, !tbaa !9
  %1499 = load i32, ptr %12, align 4, !tbaa !5
  %1500 = load i32, ptr %10, align 4, !tbaa !5
  %1501 = mul nsw i32 2, %1500
  %1502 = add nsw i32 %1499, %1501
  %1503 = sext i32 %1502 to i64
  %1504 = getelementptr inbounds double, ptr %1498, i64 %1503
  %1505 = load double, ptr %1504, align 8, !tbaa !11
  %1506 = fadd double %1505, %1497
  store double %1506, ptr %1504, align 8, !tbaa !11
  %1507 = load ptr, ptr %7, align 8, !tbaa !9
  %1508 = load i32, ptr %12, align 4, !tbaa !5
  %1509 = load i32, ptr %8, align 4, !tbaa !5
  %1510 = mul nsw i32 0, %1509
  %1511 = add nsw i32 %1508, %1510
  %1512 = sext i32 %1511 to i64
  %1513 = getelementptr inbounds double, ptr %1507, i64 %1512
  %1514 = load double, ptr %1513, align 8, !tbaa !11
  %1515 = load ptr, ptr %7, align 8, !tbaa !9
  %1516 = load i32, ptr %12, align 4, !tbaa !5
  %1517 = load i32, ptr %8, align 4, !tbaa !5
  %1518 = mul nsw i32 1, %1517
  %1519 = add nsw i32 %1516, %1518
  %1520 = sext i32 %1519 to i64
  %1521 = getelementptr inbounds double, ptr %1515, i64 %1520
  %1522 = load double, ptr %1521, align 8, !tbaa !11
  %1523 = fmul double 0x3FF21EFA862DF3DA, %1522
  %1524 = call double @llvm.fmuladd.f64(double 0xBF734721512AF304, double %1514, double %1523)
  %1525 = load ptr, ptr %7, align 8, !tbaa !9
  %1526 = load i32, ptr %12, align 4, !tbaa !5
  %1527 = load i32, ptr %8, align 4, !tbaa !5
  %1528 = mul nsw i32 2, %1527
  %1529 = add nsw i32 %1526, %1528
  %1530 = sext i32 %1529 to i64
  %1531 = getelementptr inbounds double, ptr %1525, i64 %1530
  %1532 = load double, ptr %1531, align 8, !tbaa !11
  %1533 = call double @llvm.fmuladd.f64(double 0xBFF7F19EB1BA88FC, double %1532, double %1524)
  %1534 = load ptr, ptr %7, align 8, !tbaa !9
  %1535 = load i32, ptr %12, align 4, !tbaa !5
  %1536 = load i32, ptr %8, align 4, !tbaa !5
  %1537 = mul nsw i32 3, %1536
  %1538 = add nsw i32 %1535, %1537
  %1539 = sext i32 %1538 to i64
  %1540 = getelementptr inbounds double, ptr %1534, i64 %1539
  %1541 = load double, ptr %1540, align 8, !tbaa !11
  %1542 = call double @llvm.fmuladd.f64(double 0x3FC901A35D55DB4C, double %1541, double %1533)
  %1543 = load ptr, ptr %7, align 8, !tbaa !9
  %1544 = load i32, ptr %12, align 4, !tbaa !5
  %1545 = load i32, ptr %8, align 4, !tbaa !5
  %1546 = mul nsw i32 4, %1545
  %1547 = add nsw i32 %1544, %1546
  %1548 = sext i32 %1547 to i64
  %1549 = getelementptr inbounds double, ptr %1543, i64 %1548
  %1550 = load double, ptr %1549, align 8, !tbaa !11
  %1551 = call double @llvm.fmuladd.f64(double 0xBFF48831FA6C7037, double %1550, double %1542)
  %1552 = load ptr, ptr %7, align 8, !tbaa !9
  %1553 = load i32, ptr %12, align 4, !tbaa !5
  %1554 = load i32, ptr %8, align 4, !tbaa !5
  %1555 = mul nsw i32 5, %1554
  %1556 = add nsw i32 %1553, %1555
  %1557 = sext i32 %1556 to i64
  %1558 = getelementptr inbounds double, ptr %1552, i64 %1557
  %1559 = load double, ptr %1558, align 8, !tbaa !11
  %1560 = call double @llvm.fmuladd.f64(double 0x3FF0AF85DD8BD41B, double %1559, double %1551)
  %1561 = load ptr, ptr %7, align 8, !tbaa !9
  %1562 = load i32, ptr %12, align 4, !tbaa !5
  %1563 = load i32, ptr %8, align 4, !tbaa !5
  %1564 = mul nsw i32 6, %1563
  %1565 = add nsw i32 %1562, %1564
  %1566 = sext i32 %1565 to i64
  %1567 = getelementptr inbounds double, ptr %1561, i64 %1566
  %1568 = load double, ptr %1567, align 8, !tbaa !11
  %1569 = call double @llvm.fmuladd.f64(double 0xBC96DF8829202392, double %1568, double %1560)
  %1570 = load ptr, ptr %7, align 8, !tbaa !9
  %1571 = load i32, ptr %12, align 4, !tbaa !5
  %1572 = load i32, ptr %8, align 4, !tbaa !5
  %1573 = mul nsw i32 7, %1572
  %1574 = add nsw i32 %1571, %1573
  %1575 = sext i32 %1574 to i64
  %1576 = getelementptr inbounds double, ptr %1570, i64 %1575
  %1577 = load double, ptr %1576, align 8, !tbaa !11
  %1578 = call double @llvm.fmuladd.f64(double 0x3C92F08ACDCBF794, double %1577, double %1569)
  %1579 = load ptr, ptr %7, align 8, !tbaa !9
  %1580 = load i32, ptr %12, align 4, !tbaa !5
  %1581 = load i32, ptr %8, align 4, !tbaa !5
  %1582 = mul nsw i32 8, %1581
  %1583 = add nsw i32 %1580, %1582
  %1584 = sext i32 %1583 to i64
  %1585 = getelementptr inbounds double, ptr %1579, i64 %1584
  %1586 = load double, ptr %1585, align 8, !tbaa !11
  %1587 = call double @llvm.fmuladd.f64(double 0x3CA6B48868965AE6, double %1586, double %1578)
  %1588 = load ptr, ptr %7, align 8, !tbaa !9
  %1589 = load i32, ptr %12, align 4, !tbaa !5
  %1590 = load i32, ptr %8, align 4, !tbaa !5
  %1591 = mul nsw i32 9, %1590
  %1592 = add nsw i32 %1589, %1591
  %1593 = sext i32 %1592 to i64
  %1594 = getelementptr inbounds double, ptr %1588, i64 %1593
  %1595 = load double, ptr %1594, align 8, !tbaa !11
  %1596 = call double @llvm.fmuladd.f64(double 0x3CAB6CB918309F4B, double %1595, double %1587)
  %1597 = load ptr, ptr %7, align 8, !tbaa !9
  %1598 = load i32, ptr %12, align 4, !tbaa !5
  %1599 = load i32, ptr %8, align 4, !tbaa !5
  %1600 = mul nsw i32 10, %1599
  %1601 = add nsw i32 %1598, %1600
  %1602 = sext i32 %1601 to i64
  %1603 = getelementptr inbounds double, ptr %1597, i64 %1602
  %1604 = load double, ptr %1603, align 8, !tbaa !11
  %1605 = call double @llvm.fmuladd.f64(double 0xBCB24490C3AF2293, double %1604, double %1596)
  %1606 = load ptr, ptr %7, align 8, !tbaa !9
  %1607 = load i32, ptr %12, align 4, !tbaa !5
  %1608 = load i32, ptr %8, align 4, !tbaa !5
  %1609 = mul nsw i32 11, %1608
  %1610 = add nsw i32 %1607, %1609
  %1611 = sext i32 %1610 to i64
  %1612 = getelementptr inbounds double, ptr %1606, i64 %1611
  %1613 = load double, ptr %1612, align 8, !tbaa !11
  %1614 = call double @llvm.fmuladd.f64(double 0x3C823EC0CF8B6DEB, double %1613, double %1605)
  %1615 = load ptr, ptr %7, align 8, !tbaa !9
  %1616 = load i32, ptr %12, align 4, !tbaa !5
  %1617 = load i32, ptr %8, align 4, !tbaa !5
  %1618 = mul nsw i32 12, %1617
  %1619 = add nsw i32 %1616, %1618
  %1620 = sext i32 %1619 to i64
  %1621 = getelementptr inbounds double, ptr %1615, i64 %1620
  %1622 = load double, ptr %1621, align 8, !tbaa !11
  %1623 = call double @llvm.fmuladd.f64(double 0x3CA72B617C3AF637, double %1622, double %1614)
  %1624 = load ptr, ptr %7, align 8, !tbaa !9
  %1625 = load i32, ptr %12, align 4, !tbaa !5
  %1626 = load i32, ptr %8, align 4, !tbaa !5
  %1627 = mul nsw i32 13, %1626
  %1628 = add nsw i32 %1625, %1627
  %1629 = sext i32 %1628 to i64
  %1630 = getelementptr inbounds double, ptr %1624, i64 %1629
  %1631 = load double, ptr %1630, align 8, !tbaa !11
  %1632 = call double @llvm.fmuladd.f64(double 0x3C9A9EB31390F5C1, double %1631, double %1623)
  %1633 = load ptr, ptr %7, align 8, !tbaa !9
  %1634 = load i32, ptr %12, align 4, !tbaa !5
  %1635 = load i32, ptr %8, align 4, !tbaa !5
  %1636 = mul nsw i32 14, %1635
  %1637 = add nsw i32 %1634, %1636
  %1638 = sext i32 %1637 to i64
  %1639 = getelementptr inbounds double, ptr %1633, i64 %1638
  %1640 = load double, ptr %1639, align 8, !tbaa !11
  %1641 = call double @llvm.fmuladd.f64(double 0x3C9AA22A1570E612, double %1640, double %1632)
  %1642 = load ptr, ptr %7, align 8, !tbaa !9
  %1643 = load i32, ptr %12, align 4, !tbaa !5
  %1644 = load i32, ptr %8, align 4, !tbaa !5
  %1645 = mul nsw i32 15, %1644
  %1646 = add nsw i32 %1643, %1645
  %1647 = sext i32 %1646 to i64
  %1648 = getelementptr inbounds double, ptr %1642, i64 %1647
  %1649 = load double, ptr %1648, align 8, !tbaa !11
  %1650 = call double @llvm.fmuladd.f64(double 0xBCAB65BA103D3215, double %1649, double %1641)
  %1651 = load ptr, ptr %7, align 8, !tbaa !9
  %1652 = load i32, ptr %12, align 4, !tbaa !5
  %1653 = load i32, ptr %8, align 4, !tbaa !5
  %1654 = mul nsw i32 16, %1653
  %1655 = add nsw i32 %1652, %1654
  %1656 = sext i32 %1655 to i64
  %1657 = getelementptr inbounds double, ptr %1651, i64 %1656
  %1658 = load double, ptr %1657, align 8, !tbaa !11
  %1659 = call double @llvm.fmuladd.f64(double 0xBCC22813B0173A2F, double %1658, double %1650)
  %1660 = load ptr, ptr %7, align 8, !tbaa !9
  %1661 = load i32, ptr %12, align 4, !tbaa !5
  %1662 = load i32, ptr %8, align 4, !tbaa !5
  %1663 = mul nsw i32 17, %1662
  %1664 = add nsw i32 %1661, %1663
  %1665 = sext i32 %1664 to i64
  %1666 = getelementptr inbounds double, ptr %1660, i64 %1665
  %1667 = load double, ptr %1666, align 8, !tbaa !11
  %1668 = call double @llvm.fmuladd.f64(double 0xBCB32BFD271CB8D7, double %1667, double %1659)
  %1669 = load ptr, ptr %7, align 8, !tbaa !9
  %1670 = load i32, ptr %12, align 4, !tbaa !5
  %1671 = load i32, ptr %8, align 4, !tbaa !5
  %1672 = mul nsw i32 18, %1671
  %1673 = add nsw i32 %1670, %1672
  %1674 = sext i32 %1673 to i64
  %1675 = getelementptr inbounds double, ptr %1669, i64 %1674
  %1676 = load double, ptr %1675, align 8, !tbaa !11
  %1677 = call double @llvm.fmuladd.f64(double 0xBFB17C71DD2D5170, double %1676, double %1668)
  %1678 = load ptr, ptr %7, align 8, !tbaa !9
  %1679 = load i32, ptr %12, align 4, !tbaa !5
  %1680 = load i32, ptr %8, align 4, !tbaa !5
  %1681 = mul nsw i32 19, %1680
  %1682 = add nsw i32 %1679, %1681
  %1683 = sext i32 %1682 to i64
  %1684 = getelementptr inbounds double, ptr %1678, i64 %1683
  %1685 = load double, ptr %1684, align 8, !tbaa !11
  %1686 = call double @llvm.fmuladd.f64(double 0x3FF3237A82AF9ED0, double %1685, double %1677)
  %1687 = load ptr, ptr %7, align 8, !tbaa !9
  %1688 = load i32, ptr %12, align 4, !tbaa !5
  %1689 = load i32, ptr %8, align 4, !tbaa !5
  %1690 = mul nsw i32 20, %1689
  %1691 = add nsw i32 %1688, %1690
  %1692 = sext i32 %1691 to i64
  %1693 = getelementptr inbounds double, ptr %1687, i64 %1692
  %1694 = load double, ptr %1693, align 8, !tbaa !11
  %1695 = call double @llvm.fmuladd.f64(double 0xBF76E8A1969E6C80, double %1694, double %1686)
  %1696 = load ptr, ptr %7, align 8, !tbaa !9
  %1697 = load i32, ptr %12, align 4, !tbaa !5
  %1698 = load i32, ptr %8, align 4, !tbaa !5
  %1699 = mul nsw i32 21, %1698
  %1700 = add nsw i32 %1697, %1699
  %1701 = sext i32 %1700 to i64
  %1702 = getelementptr inbounds double, ptr %1696, i64 %1701
  %1703 = load double, ptr %1702, align 8, !tbaa !11
  %1704 = call double @llvm.fmuladd.f64(double 0x3FFBC4AD9C53A55A, double %1703, double %1695)
  %1705 = load ptr, ptr %7, align 8, !tbaa !9
  %1706 = load i32, ptr %12, align 4, !tbaa !5
  %1707 = load i32, ptr %8, align 4, !tbaa !5
  %1708 = mul nsw i32 22, %1707
  %1709 = add nsw i32 %1706, %1708
  %1710 = sext i32 %1709 to i64
  %1711 = getelementptr inbounds double, ptr %1705, i64 %1710
  %1712 = load double, ptr %1711, align 8, !tbaa !11
  %1713 = call double @llvm.fmuladd.f64(double 0x3FC179BD32D3DC61, double %1712, double %1704)
  %1714 = load ptr, ptr %7, align 8, !tbaa !9
  %1715 = load i32, ptr %12, align 4, !tbaa !5
  %1716 = load i32, ptr %8, align 4, !tbaa !5
  %1717 = mul nsw i32 23, %1716
  %1718 = add nsw i32 %1715, %1717
  %1719 = sext i32 %1718 to i64
  %1720 = getelementptr inbounds double, ptr %1714, i64 %1719
  %1721 = load double, ptr %1720, align 8, !tbaa !11
  %1722 = call double @llvm.fmuladd.f64(double 0x3FF1CA3B98F4942B, double %1721, double %1713)
  %1723 = load ptr, ptr %7, align 8, !tbaa !9
  %1724 = load i32, ptr %12, align 4, !tbaa !5
  %1725 = load i32, ptr %8, align 4, !tbaa !5
  %1726 = mul nsw i32 24, %1725
  %1727 = add nsw i32 %1724, %1726
  %1728 = sext i32 %1727 to i64
  %1729 = getelementptr inbounds double, ptr %1723, i64 %1728
  %1730 = load double, ptr %1729, align 8, !tbaa !11
  %1731 = call double @llvm.fmuladd.f64(double 0xBC9E515AA144063C, double %1730, double %1722)
  %1732 = load ptr, ptr %7, align 8, !tbaa !9
  %1733 = load i32, ptr %12, align 4, !tbaa !5
  %1734 = load i32, ptr %8, align 4, !tbaa !5
  %1735 = mul nsw i32 25, %1734
  %1736 = add nsw i32 %1733, %1735
  %1737 = sext i32 %1736 to i64
  %1738 = getelementptr inbounds double, ptr %1732, i64 %1737
  %1739 = load double, ptr %1738, align 8, !tbaa !11
  %1740 = call double @llvm.fmuladd.f64(double 0x3C8A4389306A2E0D, double %1739, double %1731)
  %1741 = load ptr, ptr %7, align 8, !tbaa !9
  %1742 = load i32, ptr %12, align 4, !tbaa !5
  %1743 = load i32, ptr %8, align 4, !tbaa !5
  %1744 = mul nsw i32 26, %1743
  %1745 = add nsw i32 %1742, %1744
  %1746 = sext i32 %1745 to i64
  %1747 = getelementptr inbounds double, ptr %1741, i64 %1746
  %1748 = load double, ptr %1747, align 8, !tbaa !11
  %1749 = call double @llvm.fmuladd.f64(double 0xBC9F8C0C369EC038, double %1748, double %1740)
  %1750 = load ptr, ptr %7, align 8, !tbaa !9
  %1751 = load i32, ptr %12, align 4, !tbaa !5
  %1752 = load i32, ptr %8, align 4, !tbaa !5
  %1753 = mul nsw i32 27, %1752
  %1754 = add nsw i32 %1751, %1753
  %1755 = sext i32 %1754 to i64
  %1756 = getelementptr inbounds double, ptr %1750, i64 %1755
  %1757 = load double, ptr %1756, align 8, !tbaa !11
  %1758 = call double @llvm.fmuladd.f64(double 0x3CA068AD707D034A, double %1757, double %1749)
  %1759 = load ptr, ptr %7, align 8, !tbaa !9
  %1760 = load i32, ptr %12, align 4, !tbaa !5
  %1761 = load i32, ptr %8, align 4, !tbaa !5
  %1762 = mul nsw i32 28, %1761
  %1763 = add nsw i32 %1760, %1762
  %1764 = sext i32 %1763 to i64
  %1765 = getelementptr inbounds double, ptr %1759, i64 %1764
  %1766 = load double, ptr %1765, align 8, !tbaa !11
  %1767 = call double @llvm.fmuladd.f64(double 0xBC9CD786A1AD8F1F, double %1766, double %1758)
  %1768 = load ptr, ptr %7, align 8, !tbaa !9
  %1769 = load i32, ptr %12, align 4, !tbaa !5
  %1770 = load i32, ptr %8, align 4, !tbaa !5
  %1771 = mul nsw i32 29, %1770
  %1772 = add nsw i32 %1769, %1771
  %1773 = sext i32 %1772 to i64
  %1774 = getelementptr inbounds double, ptr %1768, i64 %1773
  %1775 = load double, ptr %1774, align 8, !tbaa !11
  %1776 = call double @llvm.fmuladd.f64(double 0xBC7C542BFA7534C1, double %1775, double %1767)
  %1777 = load ptr, ptr %7, align 8, !tbaa !9
  %1778 = load i32, ptr %12, align 4, !tbaa !5
  %1779 = load i32, ptr %8, align 4, !tbaa !5
  %1780 = mul nsw i32 30, %1779
  %1781 = add nsw i32 %1778, %1780
  %1782 = sext i32 %1781 to i64
  %1783 = getelementptr inbounds double, ptr %1777, i64 %1782
  %1784 = load double, ptr %1783, align 8, !tbaa !11
  %1785 = call double @llvm.fmuladd.f64(double 0xBCA291E4DC85F746, double %1784, double %1776)
  %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 31, %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 = call double @llvm.fmuladd.f64(double 0xBC318568500D29B4, double %1793, double %1785)
  %1795 = load ptr, ptr %7, align 8, !tbaa !9
  %1796 = load i32, ptr %12, align 4, !tbaa !5
  %1797 = load i32, ptr %8, align 4, !tbaa !5
  %1798 = mul nsw i32 32, %1797
  %1799 = add nsw i32 %1796, %1798
  %1800 = sext i32 %1799 to i64
  %1801 = getelementptr inbounds double, ptr %1795, i64 %1800
  %1802 = load double, ptr %1801, align 8, !tbaa !11
  %1803 = call double @llvm.fmuladd.f64(double 0x3CB8B7EF57E025B8, double %1802, double %1794)
  %1804 = load ptr, ptr %7, align 8, !tbaa !9
  %1805 = load i32, ptr %12, align 4, !tbaa !5
  %1806 = load i32, ptr %8, align 4, !tbaa !5
  %1807 = mul nsw i32 33, %1806
  %1808 = add nsw i32 %1805, %1807
  %1809 = sext i32 %1808 to i64
  %1810 = getelementptr inbounds double, ptr %1804, i64 %1809
  %1811 = load double, ptr %1810, align 8, !tbaa !11
  %1812 = call double @llvm.fmuladd.f64(double 0x3CC368C8E05648F6, double %1811, double %1803)
  %1813 = load ptr, ptr %7, align 8, !tbaa !9
  %1814 = load i32, ptr %12, align 4, !tbaa !5
  %1815 = load i32, ptr %8, align 4, !tbaa !5
  %1816 = mul nsw i32 34, %1815
  %1817 = add nsw i32 %1814, %1816
  %1818 = sext i32 %1817 to i64
  %1819 = getelementptr inbounds double, ptr %1813, i64 %1818
  %1820 = load double, ptr %1819, align 8, !tbaa !11
  %1821 = call double @llvm.fmuladd.f64(double 0x3C93BF528ACED504, double %1820, double %1812)
  %1822 = load ptr, ptr %7, align 8, !tbaa !9
  %1823 = load i32, ptr %12, align 4, !tbaa !5
  %1824 = load i32, ptr %8, align 4, !tbaa !5
  %1825 = mul nsw i32 35, %1824
  %1826 = add nsw i32 %1823, %1825
  %1827 = sext i32 %1826 to i64
  %1828 = getelementptr inbounds double, ptr %1822, i64 %1827
  %1829 = load double, ptr %1828, align 8, !tbaa !11
  %1830 = call double @llvm.fmuladd.f64(double 0x3C99794FD5FFFA7C, double %1829, double %1821)
  %1831 = load ptr, ptr %7, align 8, !tbaa !9
  %1832 = load i32, ptr %12, align 4, !tbaa !5
  %1833 = load i32, ptr %8, align 4, !tbaa !5
  %1834 = mul nsw i32 36, %1833
  %1835 = add nsw i32 %1832, %1834
  %1836 = sext i32 %1835 to i64
  %1837 = getelementptr inbounds double, ptr %1831, i64 %1836
  %1838 = load double, ptr %1837, align 8, !tbaa !11
  %1839 = call double @llvm.fmuladd.f64(double 0xBCEB61ECA327B8E3, double %1838, double %1830)
  %1840 = load ptr, ptr %7, align 8, !tbaa !9
  %1841 = load i32, ptr %12, align 4, !tbaa !5
  %1842 = load i32, ptr %8, align 4, !tbaa !5
  %1843 = mul nsw i32 37, %1842
  %1844 = add nsw i32 %1841, %1843
  %1845 = sext i32 %1844 to i64
  %1846 = getelementptr inbounds double, ptr %1840, i64 %1845
  %1847 = load double, ptr %1846, align 8, !tbaa !11
  %1848 = call double @llvm.fmuladd.f64(double 0x3D0A84FAA72D5A19, double %1847, double %1839)
  %1849 = load ptr, ptr %7, align 8, !tbaa !9
  %1850 = load i32, ptr %12, align 4, !tbaa !5
  %1851 = load i32, ptr %8, align 4, !tbaa !5
  %1852 = mul nsw i32 38, %1851
  %1853 = add nsw i32 %1850, %1852
  %1854 = sext i32 %1853 to i64
  %1855 = getelementptr inbounds double, ptr %1849, i64 %1854
  %1856 = load double, ptr %1855, align 8, !tbaa !11
  %1857 = call double @llvm.fmuladd.f64(double 0x3D0A7D9F313861AC, double %1856, double %1848)
  %1858 = load ptr, ptr %7, align 8, !tbaa !9
  %1859 = load i32, ptr %12, align 4, !tbaa !5
  %1860 = load i32, ptr %8, align 4, !tbaa !5
  %1861 = mul nsw i32 39, %1860
  %1862 = add nsw i32 %1859, %1861
  %1863 = sext i32 %1862 to i64
  %1864 = getelementptr inbounds double, ptr %1858, i64 %1863
  %1865 = load double, ptr %1864, align 8, !tbaa !11
  %1866 = call double @llvm.fmuladd.f64(double 0x3FFEFBDEB14F4E48, double %1865, double %1857)
  %1867 = load ptr, ptr %7, align 8, !tbaa !9
  %1868 = load i32, ptr %12, align 4, !tbaa !5
  %1869 = load i32, ptr %8, align 4, !tbaa !5
  %1870 = mul nsw i32 40, %1869
  %1871 = add nsw i32 %1868, %1870
  %1872 = sext i32 %1871 to i64
  %1873 = getelementptr inbounds double, ptr %1867, i64 %1872
  %1874 = load double, ptr %1873, align 8, !tbaa !11
  %1875 = call double @llvm.fmuladd.f64(double 0x3D036D617FD6379E, double %1874, double %1866)
  %1876 = load ptr, ptr %7, align 8, !tbaa !9
  %1877 = load i32, ptr %12, align 4, !tbaa !5
  %1878 = load i32, ptr %8, align 4, !tbaa !5
  %1879 = mul nsw i32 41, %1878
  %1880 = add nsw i32 %1877, %1879
  %1881 = sext i32 %1880 to i64
  %1882 = getelementptr inbounds double, ptr %1876, i64 %1881
  %1883 = load double, ptr %1882, align 8, !tbaa !11
  %1884 = call double @llvm.fmuladd.f64(double 0x3D027FF2929BF693, double %1883, double %1875)
  %1885 = load ptr, ptr %7, align 8, !tbaa !9
  %1886 = load i32, ptr %12, align 4, !tbaa !5
  %1887 = load i32, ptr %8, align 4, !tbaa !5
  %1888 = mul nsw i32 42, %1887
  %1889 = add nsw i32 %1886, %1888
  %1890 = sext i32 %1889 to i64
  %1891 = getelementptr inbounds double, ptr %1885, i64 %1890
  %1892 = load double, ptr %1891, align 8, !tbaa !11
  %1893 = call double @llvm.fmuladd.f64(double 0x3CD83F1576963B00, double %1892, double %1884)
  %1894 = load ptr, ptr %7, align 8, !tbaa !9
  %1895 = load i32, ptr %12, align 4, !tbaa !5
  %1896 = load i32, ptr %8, align 4, !tbaa !5
  %1897 = mul nsw i32 43, %1896
  %1898 = add nsw i32 %1895, %1897
  %1899 = sext i32 %1898 to i64
  %1900 = getelementptr inbounds double, ptr %1894, i64 %1899
  %1901 = load double, ptr %1900, align 8, !tbaa !11
  %1902 = call double @llvm.fmuladd.f64(double 0xBCF5B52E3E6E5F2B, double %1901, double %1893)
  %1903 = load ptr, ptr %7, align 8, !tbaa !9
  %1904 = load i32, ptr %12, align 4, !tbaa !5
  %1905 = load i32, ptr %8, align 4, !tbaa !5
  %1906 = mul nsw i32 44, %1905
  %1907 = add nsw i32 %1904, %1906
  %1908 = sext i32 %1907 to i64
  %1909 = getelementptr inbounds double, ptr %1903, i64 %1908
  %1910 = load double, ptr %1909, align 8, !tbaa !11
  %1911 = call double @llvm.fmuladd.f64(double 0xBCF61B6CB70E5044, double %1910, double %1902)
  %1912 = load ptr, ptr %7, align 8, !tbaa !9
  %1913 = load i32, ptr %12, align 4, !tbaa !5
  %1914 = load i32, ptr %8, align 4, !tbaa !5
  %1915 = mul nsw i32 45, %1914
  %1916 = add nsw i32 %1913, %1915
  %1917 = sext i32 %1916 to i64
  %1918 = getelementptr inbounds double, ptr %1912, i64 %1917
  %1919 = load double, ptr %1918, align 8, !tbaa !11
  %1920 = call double @llvm.fmuladd.f64(double 0x3FF08654A2D4F717, double %1919, double %1911)
  %1921 = load ptr, ptr %7, align 8, !tbaa !9
  %1922 = load i32, ptr %12, align 4, !tbaa !5
  %1923 = load i32, ptr %8, align 4, !tbaa !5
  %1924 = mul nsw i32 46, %1923
  %1925 = add nsw i32 %1922, %1924
  %1926 = sext i32 %1925 to i64
  %1927 = getelementptr inbounds double, ptr %1921, i64 %1926
  %1928 = load double, ptr %1927, align 8, !tbaa !11
  %1929 = call double @llvm.fmuladd.f64(double 0xBCEFF3CE704FB7B1, double %1928, double %1920)
  %1930 = load ptr, ptr %7, align 8, !tbaa !9
  %1931 = load i32, ptr %12, align 4, !tbaa !5
  %1932 = load i32, ptr %8, align 4, !tbaa !5
  %1933 = mul nsw i32 47, %1932
  %1934 = add nsw i32 %1931, %1933
  %1935 = sext i32 %1934 to i64
  %1936 = getelementptr inbounds double, ptr %1930, i64 %1935
  %1937 = load double, ptr %1936, align 8, !tbaa !11
  %1938 = call double @llvm.fmuladd.f64(double 0xBCEE546ACBEB905B, double %1937, double %1929)
  %1939 = load ptr, ptr %7, align 8, !tbaa !9
  %1940 = load i32, ptr %12, align 4, !tbaa !5
  %1941 = load i32, ptr %8, align 4, !tbaa !5
  %1942 = mul nsw i32 48, %1941
  %1943 = add nsw i32 %1940, %1942
  %1944 = sext i32 %1943 to i64
  %1945 = getelementptr inbounds double, ptr %1939, i64 %1944
  %1946 = load double, ptr %1945, align 8, !tbaa !11
  %1947 = call double @llvm.fmuladd.f64(double 0xBCA0F732AF6EE969, double %1946, double %1938)
  %1948 = load ptr, ptr %7, align 8, !tbaa !9
  %1949 = load i32, ptr %12, align 4, !tbaa !5
  %1950 = load i32, ptr %8, align 4, !tbaa !5
  %1951 = mul nsw i32 49, %1950
  %1952 = add nsw i32 %1949, %1951
  %1953 = sext i32 %1952 to i64
  %1954 = getelementptr inbounds double, ptr %1948, i64 %1953
  %1955 = load double, ptr %1954, align 8, !tbaa !11
  %1956 = call double @llvm.fmuladd.f64(double 0x3CB2FCB85F5C617B, double %1955, double %1947)
  %1957 = load ptr, ptr %7, align 8, !tbaa !9
  %1958 = load i32, ptr %12, align 4, !tbaa !5
  %1959 = load i32, ptr %8, align 4, !tbaa !5
  %1960 = mul nsw i32 50, %1959
  %1961 = add nsw i32 %1958, %1960
  %1962 = sext i32 %1961 to i64
  %1963 = getelementptr inbounds double, ptr %1957, i64 %1962
  %1964 = load double, ptr %1963, align 8, !tbaa !11
  %1965 = call double @llvm.fmuladd.f64(double 0x3CC17DC87F455351, double %1964, double %1956)
  %1966 = load ptr, ptr %7, align 8, !tbaa !9
  %1967 = load i32, ptr %12, align 4, !tbaa !5
  %1968 = load i32, ptr %8, align 4, !tbaa !5
  %1969 = mul nsw i32 51, %1968
  %1970 = add nsw i32 %1967, %1969
  %1971 = sext i32 %1970 to i64
  %1972 = getelementptr inbounds double, ptr %1966, i64 %1971
  %1973 = load double, ptr %1972, align 8, !tbaa !11
  %1974 = call double @llvm.fmuladd.f64(double 0xBFE4A7E9CB8A3496, double %1973, double %1965)
  %1975 = load ptr, ptr %7, align 8, !tbaa !9
  %1976 = load i32, ptr %12, align 4, !tbaa !5
  %1977 = load i32, ptr %8, align 4, !tbaa !5
  %1978 = mul nsw i32 52, %1977
  %1979 = add nsw i32 %1976, %1978
  %1980 = sext i32 %1979 to i64
  %1981 = getelementptr inbounds double, ptr %1975, i64 %1980
  %1982 = load double, ptr %1981, align 8, !tbaa !11
  %1983 = call double @llvm.fmuladd.f64(double 0x3CA791A32887A121, double %1982, double %1974)
  %1984 = load ptr, ptr %7, align 8, !tbaa !9
  %1985 = load i32, ptr %12, align 4, !tbaa !5
  %1986 = load i32, ptr %8, align 4, !tbaa !5
  %1987 = mul nsw i32 53, %1986
  %1988 = add nsw i32 %1985, %1987
  %1989 = sext i32 %1988 to i64
  %1990 = getelementptr inbounds double, ptr %1984, i64 %1989
  %1991 = load double, ptr %1990, align 8, !tbaa !11
  %1992 = call double @llvm.fmuladd.f64(double 0x3CB12159E6369CA7, double %1991, double %1983)
  store double %1992, ptr %11, align 8, !tbaa !11
  %1993 = load double, ptr %11, align 8, !tbaa !11
  %1994 = load ptr, ptr %9, align 8, !tbaa !9
  %1995 = load i32, ptr %12, align 4, !tbaa !5
  %1996 = load i32, ptr %10, align 4, !tbaa !5
  %1997 = mul nsw i32 3, %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 = fadd double %2001, %1993
  store double %2002, ptr %2000, align 8, !tbaa !11
  %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 0, %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 = load ptr, ptr %7, align 8, !tbaa !9
  %2012 = load i32, ptr %12, align 4, !tbaa !5
  %2013 = load i32, ptr %8, align 4, !tbaa !5
  %2014 = mul nsw i32 1, %2013
  %2015 = add nsw i32 %2012, %2014
  %2016 = sext i32 %2015 to i64
  %2017 = getelementptr inbounds double, ptr %2011, i64 %2016
  %2018 = load double, ptr %2017, align 8, !tbaa !11
  %2019 = fmul double 0xBFB17C71DD2D5188, %2018
  %2020 = call double @llvm.fmuladd.f64(double 0x3FF3237A82AF9EC7, double %2010, double %2019)
  %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 2, %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 0xBF76E8A1969E7200, 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 3, %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 0x3FC179BD32D3DC6F, 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 4, %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 0x3FFBC4AD9C53A55A, 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 5, %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 0x3FF1CA3B98F49426, 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 6, %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 0x3C915D0C18F46952, 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 7, %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 0x3C94D6A0DAC57C7E, 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 8, %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 0xBC84E1D5E41DCEB7, 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 9, %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 0xBC92763F594C57BA, 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 10, %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 0x3CB1F86B771BE422, 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 11, %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 0xBCA498ED43D15DB5, 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 12, %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 0x3C9E56370E4AEF9E, double %2118, double %2110)
  %2120 = load ptr, ptr %7, align 8, !tbaa !9
  %2121 = load i32, ptr %12, align 4, !tbaa !5
  %2122 = load i32, ptr %8, align 4, !tbaa !5
  %2123 = mul nsw i32 13, %2122
  %2124 = add nsw i32 %2121, %2123
  %2125 = sext i32 %2124 to i64
  %2126 = getelementptr inbounds double, ptr %2120, i64 %2125
  %2127 = load double, ptr %2126, align 8, !tbaa !11
  %2128 = call double @llvm.fmuladd.f64(double 0x3C805596DD69B812, double %2127, double %2119)
  %2129 = load ptr, ptr %7, align 8, !tbaa !9
  %2130 = load i32, ptr %12, align 4, !tbaa !5
  %2131 = load i32, ptr %8, align 4, !tbaa !5
  %2132 = mul nsw i32 14, %2131
  %2133 = add nsw i32 %2130, %2132
  %2134 = sext i32 %2133 to i64
  %2135 = getelementptr inbounds double, ptr %2129, i64 %2134
  %2136 = load double, ptr %2135, align 8, !tbaa !11
  %2137 = call double @llvm.fmuladd.f64(double 0x3CA8CCCC07FB5ADE, double %2136, double %2128)
  %2138 = load ptr, ptr %7, align 8, !tbaa !9
  %2139 = load i32, ptr %12, align 4, !tbaa !5
  %2140 = load i32, ptr %8, align 4, !tbaa !5
  %2141 = mul nsw i32 15, %2140
  %2142 = add nsw i32 %2139, %2141
  %2143 = sext i32 %2142 to i64
  %2144 = getelementptr inbounds double, ptr %2138, i64 %2143
  %2145 = load double, ptr %2144, align 8, !tbaa !11
  %2146 = call double @llvm.fmuladd.f64(double 0x3C83675E5BCF4774, double %2145, double %2137)
  %2147 = load ptr, ptr %7, align 8, !tbaa !9
  %2148 = load i32, ptr %12, align 4, !tbaa !5
  %2149 = load i32, ptr %8, align 4, !tbaa !5
  %2150 = mul nsw i32 16, %2149
  %2151 = add nsw i32 %2148, %2150
  %2152 = sext i32 %2151 to i64
  %2153 = getelementptr inbounds double, ptr %2147, i64 %2152
  %2154 = load double, ptr %2153, align 8, !tbaa !11
  %2155 = call double @llvm.fmuladd.f64(double 0x3CC9E7942DEDC84B, double %2154, double %2146)
  %2156 = load ptr, ptr %7, align 8, !tbaa !9
  %2157 = load i32, ptr %12, align 4, !tbaa !5
  %2158 = load i32, ptr %8, align 4, !tbaa !5
  %2159 = mul nsw i32 17, %2158
  %2160 = add nsw i32 %2157, %2159
  %2161 = sext i32 %2160 to i64
  %2162 = getelementptr inbounds double, ptr %2156, i64 %2161
  %2163 = load double, ptr %2162, align 8, !tbaa !11
  %2164 = call double @llvm.fmuladd.f64(double 0x3CA46BAC5B65E036, double %2163, double %2155)
  %2165 = load ptr, ptr %7, align 8, !tbaa !9
  %2166 = load i32, ptr %12, align 4, !tbaa !5
  %2167 = load i32, ptr %8, align 4, !tbaa !5
  %2168 = mul nsw i32 18, %2167
  %2169 = add nsw i32 %2166, %2168
  %2170 = sext i32 %2169 to i64
  %2171 = getelementptr inbounds double, ptr %2165, i64 %2170
  %2172 = load double, ptr %2171, align 8, !tbaa !11
  %2173 = call double @llvm.fmuladd.f64(double 0x3FF21EFA862DF3D5, double %2172, double %2164)
  %2174 = load ptr, ptr %7, align 8, !tbaa !9
  %2175 = load i32, ptr %12, align 4, !tbaa !5
  %2176 = load i32, ptr %8, align 4, !tbaa !5
  %2177 = mul nsw i32 19, %2176
  %2178 = add nsw i32 %2175, %2177
  %2179 = sext i32 %2178 to i64
  %2180 = getelementptr inbounds double, ptr %2174, i64 %2179
  %2181 = load double, ptr %2180, align 8, !tbaa !11
  %2182 = call double @llvm.fmuladd.f64(double 0xBF734721512AF544, double %2181, double %2173)
  %2183 = load ptr, ptr %7, align 8, !tbaa !9
  %2184 = load i32, ptr %12, align 4, !tbaa !5
  %2185 = load i32, ptr %8, align 4, !tbaa !5
  %2186 = mul nsw i32 20, %2185
  %2187 = add nsw i32 %2184, %2186
  %2188 = sext i32 %2187 to i64
  %2189 = getelementptr inbounds double, ptr %2183, i64 %2188
  %2190 = load double, ptr %2189, align 8, !tbaa !11
  %2191 = call double @llvm.fmuladd.f64(double 0xBFF7F19EB1BA88FC, double %2190, double %2182)
  %2192 = load ptr, ptr %7, align 8, !tbaa !9
  %2193 = load i32, ptr %12, align 4, !tbaa !5
  %2194 = load i32, ptr %8, align 4, !tbaa !5
  %2195 = mul nsw i32 21, %2194
  %2196 = add nsw i32 %2193, %2195
  %2197 = sext i32 %2196 to i64
  %2198 = getelementptr inbounds double, ptr %2192, i64 %2197
  %2199 = load double, ptr %2198, align 8, !tbaa !11
  %2200 = call double @llvm.fmuladd.f64(double 0xBFF48831FA6C7040, double %2199, double %2191)
  %2201 = load ptr, ptr %7, align 8, !tbaa !9
  %2202 = load i32, ptr %12, align 4, !tbaa !5
  %2203 = load i32, ptr %8, align 4, !tbaa !5
  %2204 = mul nsw i32 22, %2203
  %2205 = add nsw i32 %2202, %2204
  %2206 = sext i32 %2205 to i64
  %2207 = getelementptr inbounds double, ptr %2201, i64 %2206
  %2208 = load double, ptr %2207, align 8, !tbaa !11
  %2209 = call double @llvm.fmuladd.f64(double 0x3FC901A35D55DB9B, double %2208, double %2200)
  %2210 = load ptr, ptr %7, align 8, !tbaa !9
  %2211 = load i32, ptr %12, align 4, !tbaa !5
  %2212 = load i32, ptr %8, align 4, !tbaa !5
  %2213 = mul nsw i32 23, %2212
  %2214 = add nsw i32 %2211, %2213
  %2215 = sext i32 %2214 to i64
  %2216 = getelementptr inbounds double, ptr %2210, i64 %2215
  %2217 = load double, ptr %2216, align 8, !tbaa !11
  %2218 = call double @llvm.fmuladd.f64(double 0x3FF0AF85DD8BD416, double %2217, double %2209)
  %2219 = load ptr, ptr %7, align 8, !tbaa !9
  %2220 = load i32, ptr %12, align 4, !tbaa !5
  %2221 = load i32, ptr %8, align 4, !tbaa !5
  %2222 = mul nsw i32 24, %2221
  %2223 = add nsw i32 %2220, %2222
  %2224 = sext i32 %2223 to i64
  %2225 = getelementptr inbounds double, ptr %2219, i64 %2224
  %2226 = load double, ptr %2225, align 8, !tbaa !11
  %2227 = call double @llvm.fmuladd.f64(double 0x3C8212A222BDF02D, double %2226, double %2218)
  %2228 = load ptr, ptr %7, align 8, !tbaa !9
  %2229 = load i32, ptr %12, align 4, !tbaa !5
  %2230 = load i32, ptr %8, align 4, !tbaa !5
  %2231 = mul nsw i32 25, %2230
  %2232 = add nsw i32 %2229, %2231
  %2233 = sext i32 %2232 to i64
  %2234 = getelementptr inbounds double, ptr %2228, i64 %2233
  %2235 = load double, ptr %2234, align 8, !tbaa !11
  %2236 = call double @llvm.fmuladd.f64(double 0x3C9C3612467E6F25, double %2235, double %2227)
  %2237 = load ptr, ptr %7, align 8, !tbaa !9
  %2238 = load i32, ptr %12, align 4, !tbaa !5
  %2239 = load i32, ptr %8, align 4, !tbaa !5
  %2240 = mul nsw i32 26, %2239
  %2241 = add nsw i32 %2238, %2240
  %2242 = sext i32 %2241 to i64
  %2243 = getelementptr inbounds double, ptr %2237, i64 %2242
  %2244 = load double, ptr %2243, align 8, !tbaa !11
  %2245 = call double @llvm.fmuladd.f64(double 0x3C60D44D9CE30D34, double %2244, double %2236)
  %2246 = load ptr, ptr %7, align 8, !tbaa !9
  %2247 = load i32, ptr %12, align 4, !tbaa !5
  %2248 = load i32, ptr %8, align 4, !tbaa !5
  %2249 = mul nsw i32 27, %2248
  %2250 = add nsw i32 %2247, %2249
  %2251 = sext i32 %2250 to i64
  %2252 = getelementptr inbounds double, ptr %2246, i64 %2251
  %2253 = load double, ptr %2252, align 8, !tbaa !11
  %2254 = call double @llvm.fmuladd.f64(double 0x3CB4286CB40F2925, double %2253, double %2245)
  %2255 = load ptr, ptr %7, align 8, !tbaa !9
  %2256 = load i32, ptr %12, align 4, !tbaa !5
  %2257 = load i32, ptr %8, align 4, !tbaa !5
  %2258 = mul nsw i32 28, %2257
  %2259 = add nsw i32 %2256, %2258
  %2260 = sext i32 %2259 to i64
  %2261 = getelementptr inbounds double, ptr %2255, i64 %2260
  %2262 = load double, ptr %2261, align 8, !tbaa !11
  %2263 = call double @llvm.fmuladd.f64(double 0xBCA8159E3B5248DD, double %2262, double %2254)
  %2264 = load ptr, ptr %7, align 8, !tbaa !9
  %2265 = load i32, ptr %12, align 4, !tbaa !5
  %2266 = load i32, ptr %8, align 4, !tbaa !5
  %2267 = mul nsw i32 29, %2266
  %2268 = add nsw i32 %2265, %2267
  %2269 = sext i32 %2268 to i64
  %2270 = getelementptr inbounds double, ptr %2264, i64 %2269
  %2271 = load double, ptr %2270, align 8, !tbaa !11
  %2272 = call double @llvm.fmuladd.f64(double 0xBC8CCF58EB146D39, double %2271, double %2263)
  %2273 = load ptr, ptr %7, align 8, !tbaa !9
  %2274 = load i32, ptr %12, align 4, !tbaa !5
  %2275 = load i32, ptr %8, align 4, !tbaa !5
  %2276 = mul nsw i32 30, %2275
  %2277 = add nsw i32 %2274, %2276
  %2278 = sext i32 %2277 to i64
  %2279 = getelementptr inbounds double, ptr %2273, i64 %2278
  %2280 = load double, ptr %2279, align 8, !tbaa !11
  %2281 = call double @llvm.fmuladd.f64(double 0x3C8CDC3A40C0C286, double %2280, double %2272)
  %2282 = load ptr, ptr %7, align 8, !tbaa !9
  %2283 = load i32, ptr %12, align 4, !tbaa !5
  %2284 = load i32, ptr %8, align 4, !tbaa !5
  %2285 = mul nsw i32 31, %2284
  %2286 = add nsw i32 %2283, %2285
  %2287 = sext i32 %2286 to i64
  %2288 = getelementptr inbounds double, ptr %2282, i64 %2287
  %2289 = load double, ptr %2288, align 8, !tbaa !11
  %2290 = call double @llvm.fmuladd.f64(double 0x3C9145618281F160, double %2289, double %2281)
  %2291 = load ptr, ptr %7, align 8, !tbaa !9
  %2292 = load i32, ptr %12, align 4, !tbaa !5
  %2293 = load i32, ptr %8, align 4, !tbaa !5
  %2294 = mul nsw i32 32, %2293
  %2295 = add nsw i32 %2292, %2294
  %2296 = sext i32 %2295 to i64
  %2297 = getelementptr inbounds double, ptr %2291, i64 %2296
  %2298 = load double, ptr %2297, align 8, !tbaa !11
  %2299 = call double @llvm.fmuladd.f64(double 0x3C9DA0ED86977DDB, double %2298, double %2290)
  %2300 = load ptr, ptr %7, align 8, !tbaa !9
  %2301 = load i32, ptr %12, align 4, !tbaa !5
  %2302 = load i32, ptr %8, align 4, !tbaa !5
  %2303 = mul nsw i32 33, %2302
  %2304 = add nsw i32 %2301, %2303
  %2305 = sext i32 %2304 to i64
  %2306 = getelementptr inbounds double, ptr %2300, i64 %2305
  %2307 = load double, ptr %2306, align 8, !tbaa !11
  %2308 = call double @llvm.fmuladd.f64(double 0xBCB96CB68C8806CB, double %2307, double %2299)
  %2309 = load ptr, ptr %7, align 8, !tbaa !9
  %2310 = load i32, ptr %12, align 4, !tbaa !5
  %2311 = load i32, ptr %8, align 4, !tbaa !5
  %2312 = mul nsw i32 34, %2311
  %2313 = add nsw i32 %2310, %2312
  %2314 = sext i32 %2313 to i64
  %2315 = getelementptr inbounds double, ptr %2309, i64 %2314
  %2316 = load double, ptr %2315, align 8, !tbaa !11
  %2317 = call double @llvm.fmuladd.f64(double 0xBCA627EA67753954, double %2316, double %2308)
  %2318 = load ptr, ptr %7, align 8, !tbaa !9
  %2319 = load i32, ptr %12, align 4, !tbaa !5
  %2320 = load i32, ptr %8, align 4, !tbaa !5
  %2321 = mul nsw i32 35, %2320
  %2322 = add nsw i32 %2319, %2321
  %2323 = sext i32 %2322 to i64
  %2324 = getelementptr inbounds double, ptr %2318, i64 %2323
  %2325 = load double, ptr %2324, align 8, !tbaa !11
  %2326 = call double @llvm.fmuladd.f64(double 0xBCB38E4A7495701A, double %2325, double %2317)
  %2327 = load ptr, ptr %7, align 8, !tbaa !9
  %2328 = load i32, ptr %12, align 4, !tbaa !5
  %2329 = load i32, ptr %8, align 4, !tbaa !5
  %2330 = mul nsw i32 36, %2329
  %2331 = add nsw i32 %2328, %2330
  %2332 = sext i32 %2331 to i64
  %2333 = getelementptr inbounds double, ptr %2327, i64 %2332
  %2334 = load double, ptr %2333, align 8, !tbaa !11
  %2335 = call double @llvm.fmuladd.f64(double 0x3D0962BFBF7950FE, double %2334, double %2326)
  %2336 = load ptr, ptr %7, align 8, !tbaa !9
  %2337 = load i32, ptr %12, align 4, !tbaa !5
  %2338 = load i32, ptr %8, align 4, !tbaa !5
  %2339 = mul nsw i32 37, %2338
  %2340 = add nsw i32 %2337, %2339
  %2341 = sext i32 %2340 to i64
  %2342 = getelementptr inbounds double, ptr %2336, i64 %2341
  %2343 = load double, ptr %2342, align 8, !tbaa !11
  %2344 = call double @llvm.fmuladd.f64(double 0xBCF04E8D6B1B7312, double %2343, double %2335)
  %2345 = load ptr, ptr %7, align 8, !tbaa !9
  %2346 = load i32, ptr %12, align 4, !tbaa !5
  %2347 = load i32, ptr %8, align 4, !tbaa !5
  %2348 = mul nsw i32 38, %2347
  %2349 = add nsw i32 %2346, %2348
  %2350 = sext i32 %2349 to i64
  %2351 = getelementptr inbounds double, ptr %2345, i64 %2350
  %2352 = load double, ptr %2351, align 8, !tbaa !11
  %2353 = call double @llvm.fmuladd.f64(double 0x3D094FA68F9AC90D, double %2352, double %2344)
  %2354 = load ptr, ptr %7, align 8, !tbaa !9
  %2355 = load i32, ptr %12, align 4, !tbaa !5
  %2356 = load i32, ptr %8, align 4, !tbaa !5
  %2357 = mul nsw i32 39, %2356
  %2358 = add nsw i32 %2355, %2357
  %2359 = sext i32 %2358 to i64
  %2360 = getelementptr inbounds double, ptr %2354, i64 %2359
  %2361 = load double, ptr %2360, align 8, !tbaa !11
  %2362 = call double @llvm.fmuladd.f64(double 0x3D0245B3F19FA08F, double %2361, double %2353)
  %2363 = load ptr, ptr %7, align 8, !tbaa !9
  %2364 = load i32, ptr %12, align 4, !tbaa !5
  %2365 = load i32, ptr %8, align 4, !tbaa !5
  %2366 = mul nsw i32 40, %2365
  %2367 = add nsw i32 %2364, %2366
  %2368 = sext i32 %2367 to i64
  %2369 = getelementptr inbounds double, ptr %2363, i64 %2368
  %2370 = load double, ptr %2369, align 8, !tbaa !11
  %2371 = call double @llvm.fmuladd.f64(double 0x3FFEFBDEB14F4E48, double %2370, double %2362)
  %2372 = load ptr, ptr %7, align 8, !tbaa !9
  %2373 = load i32, ptr %12, align 4, !tbaa !5
  %2374 = load i32, ptr %8, align 4, !tbaa !5
  %2375 = mul nsw i32 41, %2374
  %2376 = add nsw i32 %2373, %2375
  %2377 = sext i32 %2376 to i64
  %2378 = getelementptr inbounds double, ptr %2372, i64 %2377
  %2379 = load double, ptr %2378, align 8, !tbaa !11
  %2380 = call double @llvm.fmuladd.f64(double 0x3D056D8568281090, double %2379, double %2371)
  %2381 = load ptr, ptr %7, align 8, !tbaa !9
  %2382 = load i32, ptr %12, align 4, !tbaa !5
  %2383 = load i32, ptr %8, align 4, !tbaa !5
  %2384 = mul nsw i32 42, %2383
  %2385 = add nsw i32 %2382, %2384
  %2386 = sext i32 %2385 to i64
  %2387 = getelementptr inbounds double, ptr %2381, i64 %2386
  %2388 = load double, ptr %2387, align 8, !tbaa !11
  %2389 = call double @llvm.fmuladd.f64(double 0xBCF473CE704FB7B1, double %2388, double %2380)
  %2390 = load ptr, ptr %7, align 8, !tbaa !9
  %2391 = load i32, ptr %12, align 4, !tbaa !5
  %2392 = load i32, ptr %8, align 4, !tbaa !5
  %2393 = mul nsw i32 43, %2392
  %2394 = add nsw i32 %2391, %2393
  %2395 = sext i32 %2394 to i64
  %2396 = getelementptr inbounds double, ptr %2390, i64 %2395
  %2397 = load double, ptr %2396, align 8, !tbaa !11
  %2398 = call double @llvm.fmuladd.f64(double 0x3CDC972A6828DF4A, double %2397, double %2389)
  %2399 = load ptr, ptr %7, align 8, !tbaa !9
  %2400 = load i32, ptr %12, align 4, !tbaa !5
  %2401 = load i32, ptr %8, align 4, !tbaa !5
  %2402 = mul nsw i32 44, %2401
  %2403 = add nsw i32 %2400, %2402
  %2404 = sext i32 %2403 to i64
  %2405 = getelementptr inbounds double, ptr %2399, i64 %2404
  %2406 = load double, ptr %2405, align 8, !tbaa !11
  %2407 = call double @llvm.fmuladd.f64(double 0xBCF52443B5049A2F, double %2406, double %2398)
  %2408 = load ptr, ptr %7, align 8, !tbaa !9
  %2409 = load i32, ptr %12, align 4, !tbaa !5
  %2410 = load i32, ptr %8, align 4, !tbaa !5
  %2411 = mul nsw i32 45, %2410
  %2412 = add nsw i32 %2409, %2411
  %2413 = sext i32 %2412 to i64
  %2414 = getelementptr inbounds double, ptr %2408, i64 %2413
  %2415 = load double, ptr %2414, align 8, !tbaa !11
  %2416 = call double @llvm.fmuladd.f64(double 0xBCEB3EC748C84EAF, double %2415, double %2407)
  %2417 = load ptr, ptr %7, align 8, !tbaa !9
  %2418 = load i32, ptr %12, align 4, !tbaa !5
  %2419 = load i32, ptr %8, align 4, !tbaa !5
  %2420 = mul nsw i32 46, %2419
  %2421 = add nsw i32 %2418, %2420
  %2422 = sext i32 %2421 to i64
  %2423 = getelementptr inbounds double, ptr %2417, i64 %2422
  %2424 = load double, ptr %2423, align 8, !tbaa !11
  %2425 = call double @llvm.fmuladd.f64(double 0x3FF08654A2D4F71C, double %2424, double %2416)
  %2426 = load ptr, ptr %7, align 8, !tbaa !9
  %2427 = load i32, ptr %12, align 4, !tbaa !5
  %2428 = load i32, ptr %8, align 4, !tbaa !5
  %2429 = mul nsw i32 47, %2428
  %2430 = add nsw i32 %2427, %2429
  %2431 = sext i32 %2430 to i64
  %2432 = getelementptr inbounds double, ptr %2426, i64 %2431
  %2433 = load double, ptr %2432, align 8, !tbaa !11
  %2434 = call double @llvm.fmuladd.f64(double 0xBCF0EA0E4F0ED202, double %2433, double %2425)
  %2435 = load ptr, ptr %7, align 8, !tbaa !9
  %2436 = load i32, ptr %12, align 4, !tbaa !5
  %2437 = load i32, ptr %8, align 4, !tbaa !5
  %2438 = mul nsw i32 48, %2437
  %2439 = add nsw i32 %2436, %2438
  %2440 = sext i32 %2439 to i64
  %2441 = getelementptr inbounds double, ptr %2435, i64 %2440
  %2442 = load double, ptr %2441, align 8, !tbaa !11
  %2443 = call double @llvm.fmuladd.f64(double 0xBC957D30E9E11EAA, double %2442, double %2434)
  %2444 = load ptr, ptr %7, align 8, !tbaa !9
  %2445 = load i32, ptr %12, align 4, !tbaa !5
  %2446 = load i32, ptr %8, align 4, !tbaa !5
  %2447 = mul nsw i32 49, %2446
  %2448 = add nsw i32 %2445, %2447
  %2449 = sext i32 %2448 to i64
  %2450 = getelementptr inbounds double, ptr %2444, i64 %2449
  %2451 = load double, ptr %2450, align 8, !tbaa !11
  %2452 = call double @llvm.fmuladd.f64(double 0xBCB020EF0806595A, double %2451, double %2443)
  %2453 = load ptr, ptr %7, align 8, !tbaa !9
  %2454 = load i32, ptr %12, align 4, !tbaa !5
  %2455 = load i32, ptr %8, align 4, !tbaa !5
  %2456 = mul nsw i32 50, %2455
  %2457 = add nsw i32 %2454, %2456
  %2458 = sext i32 %2457 to i64
  %2459 = getelementptr inbounds double, ptr %2453, i64 %2458
  %2460 = load double, ptr %2459, align 8, !tbaa !11
  %2461 = call double @llvm.fmuladd.f64(double 0x3C995AF6A0FAA3BA, double %2460, double %2452)
  %2462 = load ptr, ptr %7, align 8, !tbaa !9
  %2463 = load i32, ptr %12, align 4, !tbaa !5
  %2464 = load i32, ptr %8, align 4, !tbaa !5
  %2465 = mul nsw i32 51, %2464
  %2466 = add nsw i32 %2463, %2465
  %2467 = sext i32 %2466 to i64
  %2468 = getelementptr inbounds double, ptr %2462, i64 %2467
  %2469 = load double, ptr %2468, align 8, !tbaa !11
  %2470 = call double @llvm.fmuladd.f64(double 0xBC7660BBB7D81C3F, double %2469, double %2461)
  %2471 = load ptr, ptr %7, align 8, !tbaa !9
  %2472 = load i32, ptr %12, align 4, !tbaa !5
  %2473 = load i32, ptr %8, align 4, !tbaa !5
  %2474 = mul nsw i32 52, %2473
  %2475 = add nsw i32 %2472, %2474
  %2476 = sext i32 %2475 to i64
  %2477 = getelementptr inbounds double, ptr %2471, i64 %2476
  %2478 = load double, ptr %2477, align 8, !tbaa !11
  %2479 = call double @llvm.fmuladd.f64(double 0xBFE4A7E9CB8A3494, double %2478, double %2470)
  %2480 = load ptr, ptr %7, align 8, !tbaa !9
  %2481 = load i32, ptr %12, align 4, !tbaa !5
  %2482 = load i32, ptr %8, align 4, !tbaa !5
  %2483 = mul nsw i32 53, %2482
  %2484 = add nsw i32 %2481, %2483
  %2485 = sext i32 %2484 to i64
  %2486 = getelementptr inbounds double, ptr %2480, i64 %2485
  %2487 = load double, ptr %2486, align 8, !tbaa !11
  %2488 = call double @llvm.fmuladd.f64(double 0x3CC2ED1D85004B30, double %2487, double %2479)
  store double %2488, ptr %11, align 8, !tbaa !11
  %2489 = load double, ptr %11, align 8, !tbaa !11
  %2490 = load ptr, ptr %9, align 8, !tbaa !9
  %2491 = load i32, ptr %12, align 4, !tbaa !5
  %2492 = load i32, ptr %10, align 4, !tbaa !5
  %2493 = mul nsw i32 4, %2492
  %2494 = add nsw i32 %2491, %2493
  %2495 = sext i32 %2494 to i64
  %2496 = getelementptr inbounds double, ptr %2490, i64 %2495
  %2497 = load double, ptr %2496, align 8, !tbaa !11
  %2498 = fadd double %2497, %2489
  store double %2498, ptr %2496, align 8, !tbaa !11
  %2499 = load ptr, ptr %7, align 8, !tbaa !9
  %2500 = load i32, ptr %12, align 4, !tbaa !5
  %2501 = load i32, ptr %8, align 4, !tbaa !5
  %2502 = mul nsw i32 0, %2501
  %2503 = add nsw i32 %2500, %2502
  %2504 = sext i32 %2503 to i64
  %2505 = getelementptr inbounds double, ptr %2499, i64 %2504
  %2506 = load double, ptr %2505, align 8, !tbaa !11
  %2507 = load ptr, ptr %7, align 8, !tbaa !9
  %2508 = load i32, ptr %12, align 4, !tbaa !5
  %2509 = load i32, ptr %8, align 4, !tbaa !5
  %2510 = mul nsw i32 1, %2509
  %2511 = add nsw i32 %2508, %2510
  %2512 = sext i32 %2511 to i64
  %2513 = getelementptr inbounds double, ptr %2507, i64 %2512
  %2514 = load double, ptr %2513, align 8, !tbaa !11
  %2515 = fmul double 0x3FB1F3F0B024DC88, %2514
  %2516 = call double @llvm.fmuladd.f64(double 0xBFF5B6F7089FF1D1, double %2506, double %2515)
  %2517 = load ptr, ptr %7, align 8, !tbaa !9
  %2518 = load i32, ptr %12, align 4, !tbaa !5
  %2519 = load i32, ptr %8, align 4, !tbaa !5
  %2520 = mul nsw i32 2, %2519
  %2521 = add nsw i32 %2518, %2520
  %2522 = sext i32 %2521 to i64
  %2523 = getelementptr inbounds double, ptr %2517, i64 %2522
  %2524 = load double, ptr %2523, align 8, !tbaa !11
  %2525 = call double @llvm.fmuladd.f64(double 0x3FCCBE3CAE6B6284, double %2524, double %2516)
  %2526 = load ptr, ptr %7, align 8, !tbaa !9
  %2527 = load i32, ptr %12, align 4, !tbaa !5
  %2528 = load i32, ptr %8, align 4, !tbaa !5
  %2529 = mul nsw i32 3, %2528
  %2530 = add nsw i32 %2527, %2529
  %2531 = sext i32 %2530 to i64
  %2532 = getelementptr inbounds double, ptr %2526, i64 %2531
  %2533 = load double, ptr %2532, align 8, !tbaa !11
  %2534 = call double @llvm.fmuladd.f64(double 0xBFD81F8F0CEC60FF, double %2533, double %2525)
  %2535 = load ptr, ptr %7, align 8, !tbaa !9
  %2536 = load i32, ptr %12, align 4, !tbaa !5
  %2537 = load i32, ptr %8, align 4, !tbaa !5
  %2538 = mul nsw i32 4, %2537
  %2539 = add nsw i32 %2536, %2538
  %2540 = sext i32 %2539 to i64
  %2541 = getelementptr inbounds double, ptr %2535, i64 %2540
  %2542 = load double, ptr %2541, align 8, !tbaa !11
  %2543 = call double @llvm.fmuladd.f64(double 0xBFFBA497A89943F3, double %2542, double %2534)
  %2544 = load ptr, ptr %7, align 8, !tbaa !9
  %2545 = load i32, ptr %12, align 4, !tbaa !5
  %2546 = load i32, ptr %8, align 4, !tbaa !5
  %2547 = mul nsw i32 5, %2546
  %2548 = add nsw i32 %2545, %2547
  %2549 = sext i32 %2548 to i64
  %2550 = getelementptr inbounds double, ptr %2544, i64 %2549
  %2551 = load double, ptr %2550, align 8, !tbaa !11
  %2552 = call double @llvm.fmuladd.f64(double 0xBFDC5366E211BE90, double %2551, double %2543)
  %2553 = load ptr, ptr %7, align 8, !tbaa !9
  %2554 = load i32, ptr %12, align 4, !tbaa !5
  %2555 = load i32, ptr %8, align 4, !tbaa !5
  %2556 = mul nsw i32 6, %2555
  %2557 = add nsw i32 %2554, %2556
  %2558 = sext i32 %2557 to i64
  %2559 = getelementptr inbounds double, ptr %2553, i64 %2558
  %2560 = load double, ptr %2559, align 8, !tbaa !11
  %2561 = call double @llvm.fmuladd.f64(double 0xBC96C7DC8DD1684A, double %2560, double %2552)
  %2562 = load ptr, ptr %7, align 8, !tbaa !9
  %2563 = load i32, ptr %12, align 4, !tbaa !5
  %2564 = load i32, ptr %8, align 4, !tbaa !5
  %2565 = mul nsw i32 7, %2564
  %2566 = add nsw i32 %2563, %2565
  %2567 = sext i32 %2566 to i64
  %2568 = getelementptr inbounds double, ptr %2562, i64 %2567
  %2569 = load double, ptr %2568, align 8, !tbaa !11
  %2570 = call double @llvm.fmuladd.f64(double 0x3C950AD45332D6FE, double %2569, double %2561)
  %2571 = load ptr, ptr %7, align 8, !tbaa !9
  %2572 = load i32, ptr %12, align 4, !tbaa !5
  %2573 = load i32, ptr %8, align 4, !tbaa !5
  %2574 = mul nsw i32 8, %2573
  %2575 = add nsw i32 %2572, %2574
  %2576 = sext i32 %2575 to i64
  %2577 = getelementptr inbounds double, ptr %2571, i64 %2576
  %2578 = load double, ptr %2577, align 8, !tbaa !11
  %2579 = call double @llvm.fmuladd.f64(double 0x3C9EB6F29C749A96, double %2578, double %2570)
  %2580 = load ptr, ptr %7, align 8, !tbaa !9
  %2581 = load i32, ptr %12, align 4, !tbaa !5
  %2582 = load i32, ptr %8, align 4, !tbaa !5
  %2583 = mul nsw i32 9, %2582
  %2584 = add nsw i32 %2581, %2583
  %2585 = sext i32 %2584 to i64
  %2586 = getelementptr inbounds double, ptr %2580, i64 %2585
  %2587 = load double, ptr %2586, align 8, !tbaa !11
  %2588 = call double @llvm.fmuladd.f64(double 0xBC6D62BACB4768BA, double %2587, double %2579)
  %2589 = load ptr, ptr %7, align 8, !tbaa !9
  %2590 = load i32, ptr %12, align 4, !tbaa !5
  %2591 = load i32, ptr %8, align 4, !tbaa !5
  %2592 = mul nsw i32 10, %2591
  %2593 = add nsw i32 %2590, %2592
  %2594 = sext i32 %2593 to i64
  %2595 = getelementptr inbounds double, ptr %2589, i64 %2594
  %2596 = load double, ptr %2595, align 8, !tbaa !11
  %2597 = call double @llvm.fmuladd.f64(double 0x3CB80BBA9C9EA48A, double %2596, double %2588)
  %2598 = load ptr, ptr %7, align 8, !tbaa !9
  %2599 = load i32, ptr %12, align 4, !tbaa !5
  %2600 = load i32, ptr %8, align 4, !tbaa !5
  %2601 = mul nsw i32 11, %2600
  %2602 = add nsw i32 %2599, %2601
  %2603 = sext i32 %2602 to i64
  %2604 = getelementptr inbounds double, ptr %2598, i64 %2603
  %2605 = load double, ptr %2604, align 8, !tbaa !11
  %2606 = call double @llvm.fmuladd.f64(double 0xBCAB001FD1461890, double %2605, double %2597)
  %2607 = load ptr, ptr %7, align 8, !tbaa !9
  %2608 = load i32, ptr %12, align 4, !tbaa !5
  %2609 = load i32, ptr %8, align 4, !tbaa !5
  %2610 = mul nsw i32 12, %2609
  %2611 = add nsw i32 %2608, %2610
  %2612 = sext i32 %2611 to i64
  %2613 = getelementptr inbounds double, ptr %2607, i64 %2612
  %2614 = load double, ptr %2613, align 8, !tbaa !11
  %2615 = call double @llvm.fmuladd.f64(double 0xBC9681DA589F9E71, double %2614, double %2606)
  %2616 = load ptr, ptr %7, align 8, !tbaa !9
  %2617 = load i32, ptr %12, align 4, !tbaa !5
  %2618 = load i32, ptr %8, align 4, !tbaa !5
  %2619 = mul nsw i32 13, %2618
  %2620 = add nsw i32 %2617, %2619
  %2621 = sext i32 %2620 to i64
  %2622 = getelementptr inbounds double, ptr %2616, i64 %2621
  %2623 = load double, ptr %2622, align 8, !tbaa !11
  %2624 = call double @llvm.fmuladd.f64(double 0xBC827123784CF600, double %2623, double %2615)
  %2625 = load ptr, ptr %7, align 8, !tbaa !9
  %2626 = load i32, ptr %12, align 4, !tbaa !5
  %2627 = load i32, ptr %8, align 4, !tbaa !5
  %2628 = mul nsw i32 14, %2627
  %2629 = add nsw i32 %2626, %2628
  %2630 = sext i32 %2629 to i64
  %2631 = getelementptr inbounds double, ptr %2625, i64 %2630
  %2632 = load double, ptr %2631, align 8, !tbaa !11
  %2633 = call double @llvm.fmuladd.f64(double 0xBCAE4BA60AE12278, double %2632, double %2624)
  %2634 = load ptr, ptr %7, align 8, !tbaa !9
  %2635 = load i32, ptr %12, align 4, !tbaa !5
  %2636 = load i32, ptr %8, align 4, !tbaa !5
  %2637 = mul nsw i32 15, %2636
  %2638 = add nsw i32 %2635, %2637
  %2639 = sext i32 %2638 to i64
  %2640 = getelementptr inbounds double, ptr %2634, i64 %2639
  %2641 = load double, ptr %2640, align 8, !tbaa !11
  %2642 = call double @llvm.fmuladd.f64(double 0xBC78B38170BB85CD, double %2641, double %2633)
  %2643 = load ptr, ptr %7, align 8, !tbaa !9
  %2644 = load i32, ptr %12, align 4, !tbaa !5
  %2645 = load i32, ptr %8, align 4, !tbaa !5
  %2646 = mul nsw i32 16, %2645
  %2647 = add nsw i32 %2644, %2646
  %2648 = sext i32 %2647 to i64
  %2649 = getelementptr inbounds double, ptr %2643, i64 %2648
  %2650 = load double, ptr %2649, align 8, !tbaa !11
  %2651 = call double @llvm.fmuladd.f64(double 0xBCB30DECEA2D8A5E, double %2650, double %2642)
  %2652 = load ptr, ptr %7, align 8, !tbaa !9
  %2653 = load i32, ptr %12, align 4, !tbaa !5
  %2654 = load i32, ptr %8, align 4, !tbaa !5
  %2655 = mul nsw i32 17, %2654
  %2656 = add nsw i32 %2653, %2655
  %2657 = sext i32 %2656 to i64
  %2658 = getelementptr inbounds double, ptr %2652, i64 %2657
  %2659 = load double, ptr %2658, align 8, !tbaa !11
  %2660 = call double @llvm.fmuladd.f64(double 0xBCB4601E7CBDEFB1, double %2659, double %2651)
  %2661 = load ptr, ptr %7, align 8, !tbaa !9
  %2662 = load i32, ptr %12, align 4, !tbaa !5
  %2663 = load i32, ptr %8, align 4, !tbaa !5
  %2664 = mul nsw i32 18, %2663
  %2665 = add nsw i32 %2662, %2664
  %2666 = sext i32 %2665 to i64
  %2667 = getelementptr inbounds double, ptr %2661, i64 %2666
  %2668 = load double, ptr %2667, align 8, !tbaa !11
  %2669 = call double @llvm.fmuladd.f64(double 0x3FB1F3F0B024DC78, double %2668, double %2660)
  %2670 = load ptr, ptr %7, align 8, !tbaa !9
  %2671 = load i32, ptr %12, align 4, !tbaa !5
  %2672 = load i32, ptr %8, align 4, !tbaa !5
  %2673 = mul nsw i32 19, %2672
  %2674 = add nsw i32 %2671, %2673
  %2675 = sext i32 %2674 to i64
  %2676 = getelementptr inbounds double, ptr %2670, i64 %2675
  %2677 = load double, ptr %2676, align 8, !tbaa !11
  %2678 = call double @llvm.fmuladd.f64(double 0xBFF5B6F7089FF1D6, double %2677, double %2669)
  %2679 = load ptr, ptr %7, align 8, !tbaa !9
  %2680 = load i32, ptr %12, align 4, !tbaa !5
  %2681 = load i32, ptr %8, align 4, !tbaa !5
  %2682 = mul nsw i32 20, %2681
  %2683 = add nsw i32 %2680, %2682
  %2684 = sext i32 %2683 to i64
  %2685 = getelementptr inbounds double, ptr %2679, i64 %2684
  %2686 = load double, ptr %2685, align 8, !tbaa !11
  %2687 = call double @llvm.fmuladd.f64(double 0x3FCCBE3CAE6B6264, double %2686, double %2678)
  %2688 = load ptr, ptr %7, align 8, !tbaa !9
  %2689 = load i32, ptr %12, align 4, !tbaa !5
  %2690 = load i32, ptr %8, align 4, !tbaa !5
  %2691 = mul nsw i32 21, %2690
  %2692 = add nsw i32 %2689, %2691
  %2693 = sext i32 %2692 to i64
  %2694 = getelementptr inbounds double, ptr %2688, i64 %2693
  %2695 = load double, ptr %2694, align 8, !tbaa !11
  %2696 = call double @llvm.fmuladd.f64(double 0xBFFBA497A89943F8, double %2695, double %2687)
  %2697 = load ptr, ptr %7, align 8, !tbaa !9
  %2698 = load i32, ptr %12, align 4, !tbaa !5
  %2699 = load i32, ptr %8, align 4, !tbaa !5
  %2700 = mul nsw i32 22, %2699
  %2701 = add nsw i32 %2698, %2700
  %2702 = sext i32 %2701 to i64
  %2703 = getelementptr inbounds double, ptr %2697, i64 %2702
  %2704 = load double, ptr %2703, align 8, !tbaa !11
  %2705 = call double @llvm.fmuladd.f64(double 0xBFD81F8F0CEC6106, double %2704, double %2696)
  %2706 = load ptr, ptr %7, align 8, !tbaa !9
  %2707 = load i32, ptr %12, align 4, !tbaa !5
  %2708 = load i32, ptr %8, align 4, !tbaa !5
  %2709 = mul nsw i32 23, %2708
  %2710 = add nsw i32 %2707, %2709
  %2711 = sext i32 %2710 to i64
  %2712 = getelementptr inbounds double, ptr %2706, i64 %2711
  %2713 = load double, ptr %2712, align 8, !tbaa !11
  %2714 = call double @llvm.fmuladd.f64(double 0xBFDC5366E211BE88, double %2713, double %2705)
  %2715 = load ptr, ptr %7, align 8, !tbaa !9
  %2716 = load i32, ptr %12, align 4, !tbaa !5
  %2717 = load i32, ptr %8, align 4, !tbaa !5
  %2718 = mul nsw i32 24, %2717
  %2719 = add nsw i32 %2716, %2718
  %2720 = sext i32 %2719 to i64
  %2721 = getelementptr inbounds double, ptr %2715, i64 %2720
  %2722 = load double, ptr %2721, align 8, !tbaa !11
  %2723 = call double @llvm.fmuladd.f64(double 0x3C3B48F2BDFBC980, double %2722, double %2714)
  %2724 = load ptr, ptr %7, align 8, !tbaa !9
  %2725 = load i32, ptr %12, align 4, !tbaa !5
  %2726 = load i32, ptr %8, align 4, !tbaa !5
  %2727 = mul nsw i32 25, %2726
  %2728 = add nsw i32 %2725, %2727
  %2729 = sext i32 %2728 to i64
  %2730 = getelementptr inbounds double, ptr %2724, i64 %2729
  %2731 = load double, ptr %2730, align 8, !tbaa !11
  %2732 = call double @llvm.fmuladd.f64(double 0xBCABF8CFD447EB3A, double %2731, double %2723)
  %2733 = load ptr, ptr %7, align 8, !tbaa !9
  %2734 = load i32, ptr %12, align 4, !tbaa !5
  %2735 = load i32, ptr %8, align 4, !tbaa !5
  %2736 = mul nsw i32 26, %2735
  %2737 = add nsw i32 %2734, %2736
  %2738 = sext i32 %2737 to i64
  %2739 = getelementptr inbounds double, ptr %2733, i64 %2738
  %2740 = load double, ptr %2739, align 8, !tbaa !11
  %2741 = call double @llvm.fmuladd.f64(double 0x3CAAFAB790AFF8A1, double %2740, double %2732)
  %2742 = load ptr, ptr %7, align 8, !tbaa !9
  %2743 = load i32, ptr %12, align 4, !tbaa !5
  %2744 = load i32, ptr %8, align 4, !tbaa !5
  %2745 = mul nsw i32 27, %2744
  %2746 = add nsw i32 %2743, %2745
  %2747 = sext i32 %2746 to i64
  %2748 = getelementptr inbounds double, ptr %2742, i64 %2747
  %2749 = load double, ptr %2748, align 8, !tbaa !11
  %2750 = call double @llvm.fmuladd.f64(double 0x3C95C63DC7475F74, double %2749, double %2741)
  %2751 = load ptr, ptr %7, align 8, !tbaa !9
  %2752 = load i32, ptr %12, align 4, !tbaa !5
  %2753 = load i32, ptr %8, align 4, !tbaa !5
  %2754 = mul nsw i32 28, %2753
  %2755 = add nsw i32 %2752, %2754
  %2756 = sext i32 %2755 to i64
  %2757 = getelementptr inbounds double, ptr %2751, i64 %2756
  %2758 = load double, ptr %2757, align 8, !tbaa !11
  %2759 = call double @llvm.fmuladd.f64(double 0x3CB246F6B715BA99, double %2758, double %2750)
  %2760 = load ptr, ptr %7, align 8, !tbaa !9
  %2761 = load i32, ptr %12, align 4, !tbaa !5
  %2762 = load i32, ptr %8, align 4, !tbaa !5
  %2763 = mul nsw i32 29, %2762
  %2764 = add nsw i32 %2761, %2763
  %2765 = sext i32 %2764 to i64
  %2766 = getelementptr inbounds double, ptr %2760, i64 %2765
  %2767 = load double, ptr %2766, align 8, !tbaa !11
  %2768 = call double @llvm.fmuladd.f64(double 0xBCAFEB692A4A65D9, double %2767, double %2759)
  %2769 = load ptr, ptr %7, align 8, !tbaa !9
  %2770 = load i32, ptr %12, align 4, !tbaa !5
  %2771 = load i32, ptr %8, align 4, !tbaa !5
  %2772 = mul nsw i32 30, %2771
  %2773 = add nsw i32 %2770, %2772
  %2774 = sext i32 %2773 to i64
  %2775 = getelementptr inbounds double, ptr %2769, i64 %2774
  %2776 = load double, ptr %2775, align 8, !tbaa !11
  %2777 = call double @llvm.fmuladd.f64(double 0xBCB0527DE73323C6, double %2776, double %2768)
  %2778 = load ptr, ptr %7, align 8, !tbaa !9
  %2779 = load i32, ptr %12, align 4, !tbaa !5
  %2780 = load i32, ptr %8, align 4, !tbaa !5
  %2781 = mul nsw i32 31, %2780
  %2782 = add nsw i32 %2779, %2781
  %2783 = sext i32 %2782 to i64
  %2784 = getelementptr inbounds double, ptr %2778, i64 %2783
  %2785 = load double, ptr %2784, align 8, !tbaa !11
  %2786 = call double @llvm.fmuladd.f64(double 0xBC851E1EB70E35B4, double %2785, double %2777)
  %2787 = load ptr, ptr %7, align 8, !tbaa !9
  %2788 = load i32, ptr %12, align 4, !tbaa !5
  %2789 = load i32, ptr %8, align 4, !tbaa !5
  %2790 = mul nsw i32 32, %2789
  %2791 = add nsw i32 %2788, %2790
  %2792 = sext i32 %2791 to i64
  %2793 = getelementptr inbounds double, ptr %2787, i64 %2792
  %2794 = load double, ptr %2793, align 8, !tbaa !11
  %2795 = call double @llvm.fmuladd.f64(double 0xBCB91F7B4DA061BB, double %2794, double %2786)
  %2796 = load ptr, ptr %7, align 8, !tbaa !9
  %2797 = load i32, ptr %12, align 4, !tbaa !5
  %2798 = load i32, ptr %8, align 4, !tbaa !5
  %2799 = mul nsw i32 33, %2798
  %2800 = add nsw i32 %2797, %2799
  %2801 = sext i32 %2800 to i64
  %2802 = getelementptr inbounds double, ptr %2796, i64 %2801
  %2803 = load double, ptr %2802, align 8, !tbaa !11
  %2804 = call double @llvm.fmuladd.f64(double 0xBCA20AB4BF61ADD9, double %2803, double %2795)
  %2805 = load ptr, ptr %7, align 8, !tbaa !9
  %2806 = load i32, ptr %12, align 4, !tbaa !5
  %2807 = load i32, ptr %8, align 4, !tbaa !5
  %2808 = mul nsw i32 34, %2807
  %2809 = add nsw i32 %2806, %2808
  %2810 = sext i32 %2809 to i64
  %2811 = getelementptr inbounds double, ptr %2805, i64 %2810
  %2812 = load double, ptr %2811, align 8, !tbaa !11
  %2813 = call double @llvm.fmuladd.f64(double 0xBC92F85550CD85E6, double %2812, double %2804)
  %2814 = load ptr, ptr %7, align 8, !tbaa !9
  %2815 = load i32, ptr %12, align 4, !tbaa !5
  %2816 = load i32, ptr %8, align 4, !tbaa !5
  %2817 = mul nsw i32 35, %2816
  %2818 = add nsw i32 %2815, %2817
  %2819 = sext i32 %2818 to i64
  %2820 = getelementptr inbounds double, ptr %2814, i64 %2819
  %2821 = load double, ptr %2820, align 8, !tbaa !11
  %2822 = call double @llvm.fmuladd.f64(double 0xBCB0508DC7392C71, double %2821, double %2813)
  %2823 = load ptr, ptr %7, align 8, !tbaa !9
  %2824 = load i32, ptr %12, align 4, !tbaa !5
  %2825 = load i32, ptr %8, align 4, !tbaa !5
  %2826 = mul nsw i32 36, %2825
  %2827 = add nsw i32 %2824, %2826
  %2828 = sext i32 %2827 to i64
  %2829 = getelementptr inbounds double, ptr %2823, i64 %2828
  %2830 = load double, ptr %2829, align 8, !tbaa !11
  %2831 = call double @llvm.fmuladd.f64(double 0x3D09F39F45669420, double %2830, double %2822)
  %2832 = load ptr, ptr %7, align 8, !tbaa !9
  %2833 = load i32, ptr %12, align 4, !tbaa !5
  %2834 = load i32, ptr %8, align 4, !tbaa !5
  %2835 = mul nsw i32 37, %2834
  %2836 = add nsw i32 %2833, %2835
  %2837 = sext i32 %2836 to i64
  %2838 = getelementptr inbounds double, ptr %2832, i64 %2837
  %2839 = load double, ptr %2838, align 8, !tbaa !11
  %2840 = call double @llvm.fmuladd.f64(double 0x3D094FBC9693CCC3, double %2839, double %2831)
  %2841 = load ptr, ptr %7, align 8, !tbaa !9
  %2842 = load i32, ptr %12, align 4, !tbaa !5
  %2843 = load i32, ptr %8, align 4, !tbaa !5
  %2844 = mul nsw i32 38, %2843
  %2845 = add nsw i32 %2842, %2844
  %2846 = sext i32 %2845 to i64
  %2847 = getelementptr inbounds double, ptr %2841, i64 %2846
  %2848 = load double, ptr %2847, align 8, !tbaa !11
  %2849 = call double @llvm.fmuladd.f64(double 0xBCF0CC0D6843A692, double %2848, double %2840)
  %2850 = load ptr, ptr %7, align 8, !tbaa !9
  %2851 = load i32, ptr %12, align 4, !tbaa !5
  %2852 = load i32, ptr %8, align 4, !tbaa !5
  %2853 = mul nsw i32 39, %2852
  %2854 = add nsw i32 %2851, %2853
  %2855 = sext i32 %2854 to i64
  %2856 = getelementptr inbounds double, ptr %2850, i64 %2855
  %2857 = load double, ptr %2856, align 8, !tbaa !11
  %2858 = call double @llvm.fmuladd.f64(double 0x3D02CCBAD3CD71B6, double %2857, double %2849)
  %2859 = load ptr, ptr %7, align 8, !tbaa !9
  %2860 = load i32, ptr %12, align 4, !tbaa !5
  %2861 = load i32, ptr %8, align 4, !tbaa !5
  %2862 = mul nsw i32 40, %2861
  %2863 = add nsw i32 %2860, %2862
  %2864 = sext i32 %2863 to i64
  %2865 = getelementptr inbounds double, ptr %2859, i64 %2864
  %2866 = load double, ptr %2865, align 8, !tbaa !11
  %2867 = call double @llvm.fmuladd.f64(double 0x3D0684AE6A31C6A8, double %2866, double %2858)
  %2868 = load ptr, ptr %7, align 8, !tbaa !9
  %2869 = load i32, ptr %12, align 4, !tbaa !5
  %2870 = load i32, ptr %8, align 4, !tbaa !5
  %2871 = mul nsw i32 41, %2870
  %2872 = add nsw i32 %2869, %2871
  %2873 = sext i32 %2872 to i64
  %2874 = getelementptr inbounds double, ptr %2868, i64 %2873
  %2875 = load double, ptr %2874, align 8, !tbaa !11
  %2876 = call double @llvm.fmuladd.f64(double 0x3FFEFBDEB14F4E48, double %2875, double %2867)
  %2877 = load ptr, ptr %7, align 8, !tbaa !9
  %2878 = load i32, ptr %12, align 4, !tbaa !5
  %2879 = load i32, ptr %8, align 4, !tbaa !5
  %2880 = mul nsw i32 42, %2879
  %2881 = add nsw i32 %2878, %2880
  %2882 = sext i32 %2881 to i64
  %2883 = getelementptr inbounds double, ptr %2877, i64 %2882
  %2884 = load double, ptr %2883, align 8, !tbaa !11
  %2885 = call double @llvm.fmuladd.f64(double 0xBCF4BE5204136C30, double %2884, double %2876)
  %2886 = load ptr, ptr %7, align 8, !tbaa !9
  %2887 = load i32, ptr %12, align 4, !tbaa !5
  %2888 = load i32, ptr %8, align 4, !tbaa !5
  %2889 = mul nsw i32 43, %2888
  %2890 = add nsw i32 %2887, %2889
  %2891 = sext i32 %2890 to i64
  %2892 = getelementptr inbounds double, ptr %2886, i64 %2891
  %2893 = load double, ptr %2892, align 8, !tbaa !11
  %2894 = call double @llvm.fmuladd.f64(double 0xBCF3302716E6F62B, double %2893, double %2885)
  %2895 = load ptr, ptr %7, align 8, !tbaa !9
  %2896 = load i32, ptr %12, align 4, !tbaa !5
  %2897 = load i32, ptr %8, align 4, !tbaa !5
  %2898 = mul nsw i32 44, %2897
  %2899 = add nsw i32 %2896, %2898
  %2900 = sext i32 %2899 to i64
  %2901 = getelementptr inbounds double, ptr %2895, i64 %2900
  %2902 = load double, ptr %2901, align 8, !tbaa !11
  %2903 = call double @llvm.fmuladd.f64(double 0x3CD8A971F372F94D, double %2902, double %2894)
  %2904 = load ptr, ptr %7, align 8, !tbaa !9
  %2905 = load i32, ptr %12, align 4, !tbaa !5
  %2906 = load i32, ptr %8, align 4, !tbaa !5
  %2907 = mul nsw i32 45, %2906
  %2908 = add nsw i32 %2905, %2907
  %2909 = sext i32 %2908 to i64
  %2910 = getelementptr inbounds double, ptr %2904, i64 %2909
  %2911 = load double, ptr %2910, align 8, !tbaa !11
  %2912 = call double @llvm.fmuladd.f64(double 0xBCEE0138B737B153, double %2911, double %2903)
  %2913 = load ptr, ptr %7, align 8, !tbaa !9
  %2914 = load i32, ptr %12, align 4, !tbaa !5
  %2915 = load i32, ptr %8, align 4, !tbaa !5
  %2916 = mul nsw i32 46, %2915
  %2917 = add nsw i32 %2914, %2916
  %2918 = sext i32 %2917 to i64
  %2919 = getelementptr inbounds double, ptr %2913, i64 %2918
  %2920 = load double, ptr %2919, align 8, !tbaa !11
  %2921 = call double @llvm.fmuladd.f64(double 0xBCF1BE2AED2C7606, double %2920, double %2912)
  %2922 = load ptr, ptr %7, align 8, !tbaa !9
  %2923 = load i32, ptr %12, align 4, !tbaa !5
  %2924 = load i32, ptr %8, align 4, !tbaa !5
  %2925 = mul nsw i32 47, %2924
  %2926 = add nsw i32 %2923, %2925
  %2927 = sext i32 %2926 to i64
  %2928 = getelementptr inbounds double, ptr %2922, i64 %2927
  %2929 = load double, ptr %2928, align 8, !tbaa !11
  %2930 = call double @llvm.fmuladd.f64(double 0x3FF08654A2D4F717, double %2929, double %2921)
  %2931 = load ptr, ptr %7, align 8, !tbaa !9
  %2932 = load i32, ptr %12, align 4, !tbaa !5
  %2933 = load i32, ptr %8, align 4, !tbaa !5
  %2934 = mul nsw i32 48, %2933
  %2935 = add nsw i32 %2932, %2934
  %2936 = sext i32 %2935 to i64
  %2937 = getelementptr inbounds double, ptr %2931, i64 %2936
  %2938 = load double, ptr %2937, align 8, !tbaa !11
  %2939 = call double @llvm.fmuladd.f64(double 0x3C89DD26D5B75F58, double %2938, double %2930)
  %2940 = load ptr, ptr %7, align 8, !tbaa !9
  %2941 = load i32, ptr %12, align 4, !tbaa !5
  %2942 = load i32, ptr %8, align 4, !tbaa !5
  %2943 = mul nsw i32 49, %2942
  %2944 = add nsw i32 %2941, %2943
  %2945 = sext i32 %2944 to i64
  %2946 = getelementptr inbounds double, ptr %2940, i64 %2945
  %2947 = load double, ptr %2946, align 8, !tbaa !11
  %2948 = call double @llvm.fmuladd.f64(double 0xBCAB2729CD0FE620, double %2947, double %2939)
  %2949 = load ptr, ptr %7, align 8, !tbaa !9
  %2950 = load i32, ptr %12, align 4, !tbaa !5
  %2951 = load i32, ptr %8, align 4, !tbaa !5
  %2952 = mul nsw i32 50, %2951
  %2953 = add nsw i32 %2950, %2952
  %2954 = sext i32 %2953 to i64
  %2955 = getelementptr inbounds double, ptr %2949, i64 %2954
  %2956 = load double, ptr %2955, align 8, !tbaa !11
  %2957 = call double @llvm.fmuladd.f64(double 0x3CB60C661FD23425, double %2956, double %2948)
  %2958 = load ptr, ptr %7, align 8, !tbaa !9
  %2959 = load i32, ptr %12, align 4, !tbaa !5
  %2960 = load i32, ptr %8, align 4, !tbaa !5
  %2961 = mul nsw i32 51, %2960
  %2962 = add nsw i32 %2959, %2961
  %2963 = sext i32 %2962 to i64
  %2964 = getelementptr inbounds double, ptr %2958, i64 %2963
  %2965 = load double, ptr %2964, align 8, !tbaa !11
  %2966 = call double @llvm.fmuladd.f64(double 0x3CA4E4D6801EA791, double %2965, double %2957)
  %2967 = load ptr, ptr %7, align 8, !tbaa !9
  %2968 = load i32, ptr %12, align 4, !tbaa !5
  %2969 = load i32, ptr %8, align 4, !tbaa !5
  %2970 = mul nsw i32 52, %2969
  %2971 = add nsw i32 %2968, %2970
  %2972 = sext i32 %2971 to i64
  %2973 = getelementptr inbounds double, ptr %2967, i64 %2972
  %2974 = load double, ptr %2973, align 8, !tbaa !11
  %2975 = call double @llvm.fmuladd.f64(double 0xBC7BA72BEBF9CA81, double %2974, double %2966)
  %2976 = load ptr, ptr %7, align 8, !tbaa !9
  %2977 = load i32, ptr %12, align 4, !tbaa !5
  %2978 = load i32, ptr %8, align 4, !tbaa !5
  %2979 = mul nsw i32 53, %2978
  %2980 = add nsw i32 %2977, %2979
  %2981 = sext i32 %2980 to i64
  %2982 = getelementptr inbounds double, ptr %2976, i64 %2981
  %2983 = load double, ptr %2982, align 8, !tbaa !11
  %2984 = call double @llvm.fmuladd.f64(double 0xBFE4A7E9CB8A349A, double %2983, double %2975)
  store double %2984, ptr %11, align 8, !tbaa !11
  %2985 = load double, ptr %11, align 8, !tbaa !11
  %2986 = load ptr, ptr %9, align 8, !tbaa !9
  %2987 = load i32, ptr %12, align 4, !tbaa !5
  %2988 = load i32, ptr %10, align 4, !tbaa !5
  %2989 = mul nsw i32 5, %2988
  %2990 = add nsw i32 %2987, %2989
  %2991 = sext i32 %2990 to i64
  %2992 = getelementptr inbounds double, ptr %2986, i64 %2991
  %2993 = load double, ptr %2992, align 8, !tbaa !11
  %2994 = fadd double %2993, %2985
  store double %2994, ptr %2992, align 8, !tbaa !11
  %2995 = load ptr, ptr %7, align 8, !tbaa !9
  %2996 = load i32, ptr %12, align 4, !tbaa !5
  %2997 = load i32, ptr %8, align 4, !tbaa !5
  %2998 = mul nsw i32 0, %2997
  %2999 = add nsw i32 %2996, %2998
  %3000 = sext i32 %2999 to i64
  %3001 = getelementptr inbounds double, ptr %2995, i64 %3000
  %3002 = load double, ptr %3001, align 8, !tbaa !11
  %3003 = load ptr, ptr %7, align 8, !tbaa !9
  %3004 = load i32, ptr %12, align 4, !tbaa !5
  %3005 = load i32, ptr %8, align 4, !tbaa !5
  %3006 = mul nsw i32 1, %3005
  %3007 = add nsw i32 %3004, %3006
  %3008 = sext i32 %3007 to i64
  %3009 = getelementptr inbounds double, ptr %3003, i64 %3008
  %3010 = load double, ptr %3009, align 8, !tbaa !11
  %3011 = fmul double 0xBC8AF16F6DD6B178, %3010
  %3012 = call double @llvm.fmuladd.f64(double 0xBCAFA91475A2DE60, double %3002, double %3011)
  %3013 = load ptr, ptr %7, align 8, !tbaa !9
  %3014 = load i32, ptr %12, align 4, !tbaa !5
  %3015 = load i32, ptr %8, align 4, !tbaa !5
  %3016 = mul nsw i32 2, %3015
  %3017 = add nsw i32 %3014, %3016
  %3018 = sext i32 %3017 to i64
  %3019 = getelementptr inbounds double, ptr %3013, i64 %3018
  %3020 = load double, ptr %3019, align 8, !tbaa !11
  %3021 = call double @llvm.fmuladd.f64(double 0xBC97CD2320F06FBE, double %3020, double %3012)
  %3022 = load ptr, ptr %7, align 8, !tbaa !9
  %3023 = load i32, ptr %12, align 4, !tbaa !5
  %3024 = load i32, ptr %8, align 4, !tbaa !5
  %3025 = mul nsw i32 3, %3024
  %3026 = add nsw i32 %3023, %3025
  %3027 = sext i32 %3026 to i64
  %3028 = getelementptr inbounds double, ptr %3022, i64 %3027
  %3029 = load double, ptr %3028, align 8, !tbaa !11
  %3030 = call double @llvm.fmuladd.f64(double 0x3C912517F7A39052, double %3029, double %3021)
  %3031 = load ptr, ptr %7, align 8, !tbaa !9
  %3032 = load i32, ptr %12, align 4, !tbaa !5
  %3033 = load i32, ptr %8, align 4, !tbaa !5
  %3034 = mul nsw i32 4, %3033
  %3035 = add nsw i32 %3032, %3034
  %3036 = sext i32 %3035 to i64
  %3037 = getelementptr inbounds double, ptr %3031, i64 %3036
  %3038 = load double, ptr %3037, align 8, !tbaa !11
  %3039 = call double @llvm.fmuladd.f64(double 0x3CA26D18C495E068, double %3038, double %3030)
  %3040 = load ptr, ptr %7, align 8, !tbaa !9
  %3041 = load i32, ptr %12, align 4, !tbaa !5
  %3042 = load i32, ptr %8, align 4, !tbaa !5
  %3043 = mul nsw i32 5, %3042
  %3044 = add nsw i32 %3041, %3043
  %3045 = sext i32 %3044 to i64
  %3046 = getelementptr inbounds double, ptr %3040, i64 %3045
  %3047 = load double, ptr %3046, align 8, !tbaa !11
  %3048 = call double @llvm.fmuladd.f64(double 0x3C5FA39DC354EAFF, double %3047, double %3039)
  %3049 = load ptr, ptr %7, align 8, !tbaa !9
  %3050 = load i32, ptr %12, align 4, !tbaa !5
  %3051 = load i32, ptr %8, align 4, !tbaa !5
  %3052 = mul nsw i32 6, %3051
  %3053 = add nsw i32 %3050, %3052
  %3054 = sext i32 %3053 to i64
  %3055 = getelementptr inbounds double, ptr %3049, i64 %3054
  %3056 = load double, ptr %3055, align 8, !tbaa !11
  %3057 = call double @llvm.fmuladd.f64(double 0x3FF44E3F94172F46, double %3056, double %3048)
  %3058 = load ptr, ptr %7, align 8, !tbaa !9
  %3059 = load i32, ptr %12, align 4, !tbaa !5
  %3060 = load i32, ptr %8, align 4, !tbaa !5
  %3061 = mul nsw i32 7, %3060
  %3062 = add nsw i32 %3059, %3061
  %3063 = sext i32 %3062 to i64
  %3064 = getelementptr inbounds double, ptr %3058, i64 %3063
  %3065 = load double, ptr %3064, align 8, !tbaa !11
  %3066 = call double @llvm.fmuladd.f64(double 0xBF7DFA2300BBB500, double %3065, double %3057)
  %3067 = load ptr, ptr %7, align 8, !tbaa !9
  %3068 = load i32, ptr %12, align 4, !tbaa !5
  %3069 = load i32, ptr %8, align 4, !tbaa !5
  %3070 = mul nsw i32 8, %3069
  %3071 = add nsw i32 %3068, %3070
  %3072 = sext i32 %3071 to i64
  %3073 = getelementptr inbounds double, ptr %3067, i64 %3072
  %3074 = load double, ptr %3073, align 8, !tbaa !11
  %3075 = call double @llvm.fmuladd.f64(double 0x3FB9ECDD9812789D, double %3074, double %3066)
  %3076 = load ptr, ptr %7, align 8, !tbaa !9
  %3077 = load i32, ptr %12, align 4, !tbaa !5
  %3078 = load i32, ptr %8, align 4, !tbaa !5
  %3079 = mul nsw i32 9, %3078
  %3080 = add nsw i32 %3077, %3079
  %3081 = sext i32 %3080 to i64
  %3082 = getelementptr inbounds double, ptr %3076, i64 %3081
  %3083 = load double, ptr %3082, align 8, !tbaa !11
  %3084 = call double @llvm.fmuladd.f64(double 0xBF83952FC55A7034, double %3083, double %3075)
  %3085 = load ptr, ptr %7, align 8, !tbaa !9
  %3086 = load i32, ptr %12, align 4, !tbaa !5
  %3087 = load i32, ptr %8, align 4, !tbaa !5
  %3088 = mul nsw i32 10, %3087
  %3089 = add nsw i32 %3086, %3088
  %3090 = sext i32 %3089 to i64
  %3091 = getelementptr inbounds double, ptr %3085, i64 %3090
  %3092 = load double, ptr %3091, align 8, !tbaa !11
  %3093 = call double @llvm.fmuladd.f64(double 0xBFE4FBED5D8A9668, double %3092, double %3084)
  %3094 = load ptr, ptr %7, align 8, !tbaa !9
  %3095 = load i32, ptr %12, align 4, !tbaa !5
  %3096 = load i32, ptr %8, align 4, !tbaa !5
  %3097 = mul nsw i32 11, %3096
  %3098 = add nsw i32 %3095, %3097
  %3099 = sext i32 %3098 to i64
  %3100 = getelementptr inbounds double, ptr %3094, i64 %3099
  %3101 = load double, ptr %3100, align 8, !tbaa !11
  %3102 = call double @llvm.fmuladd.f64(double 0x3FD50884576D0BC1, double %3101, double %3093)
  %3103 = load ptr, ptr %7, align 8, !tbaa !9
  %3104 = load i32, ptr %12, align 4, !tbaa !5
  %3105 = load i32, ptr %8, align 4, !tbaa !5
  %3106 = mul nsw i32 12, %3105
  %3107 = add nsw i32 %3104, %3106
  %3108 = sext i32 %3107 to i64
  %3109 = getelementptr inbounds double, ptr %3103, i64 %3108
  %3110 = load double, ptr %3109, align 8, !tbaa !11
  %3111 = call double @llvm.fmuladd.f64(double 0x3CA5CAE36F1C5AB0, double %3110, double %3102)
  %3112 = load ptr, ptr %7, align 8, !tbaa !9
  %3113 = load i32, ptr %12, align 4, !tbaa !5
  %3114 = load i32, ptr %8, align 4, !tbaa !5
  %3115 = mul nsw i32 13, %3114
  %3116 = add nsw i32 %3113, %3115
  %3117 = sext i32 %3116 to i64
  %3118 = getelementptr inbounds double, ptr %3112, i64 %3117
  %3119 = load double, ptr %3118, align 8, !tbaa !11
  %3120 = call double @llvm.fmuladd.f64(double 0x3C7C91DEC9976F2B, double %3119, double %3111)
  %3121 = load ptr, ptr %7, align 8, !tbaa !9
  %3122 = load i32, ptr %12, align 4, !tbaa !5
  %3123 = load i32, ptr %8, align 4, !tbaa !5
  %3124 = mul nsw i32 14, %3123
  %3125 = add nsw i32 %3122, %3124
  %3126 = sext i32 %3125 to i64
  %3127 = getelementptr inbounds double, ptr %3121, i64 %3126
  %3128 = load double, ptr %3127, align 8, !tbaa !11
  %3129 = call double @llvm.fmuladd.f64(double 0x3C9CA3E3D7BB8328, double %3128, double %3120)
  %3130 = load ptr, ptr %7, align 8, !tbaa !9
  %3131 = load i32, ptr %12, align 4, !tbaa !5
  %3132 = load i32, ptr %8, align 4, !tbaa !5
  %3133 = mul nsw i32 15, %3132
  %3134 = add nsw i32 %3131, %3133
  %3135 = sext i32 %3134 to i64
  %3136 = getelementptr inbounds double, ptr %3130, i64 %3135
  %3137 = load double, ptr %3136, align 8, !tbaa !11
  %3138 = call double @llvm.fmuladd.f64(double 0xBC6B4399CAA6ADB0, double %3137, double %3129)
  %3139 = load ptr, ptr %7, align 8, !tbaa !9
  %3140 = load i32, ptr %12, align 4, !tbaa !5
  %3141 = load i32, ptr %8, align 4, !tbaa !5
  %3142 = mul nsw i32 16, %3141
  %3143 = add nsw i32 %3140, %3142
  %3144 = sext i32 %3143 to i64
  %3145 = getelementptr inbounds double, ptr %3139, i64 %3144
  %3146 = load double, ptr %3145, align 8, !tbaa !11
  %3147 = call double @llvm.fmuladd.f64(double 0x3C6E67AB5FEF02FF, double %3146, double %3138)
  %3148 = load ptr, ptr %7, align 8, !tbaa !9
  %3149 = load i32, ptr %12, align 4, !tbaa !5
  %3150 = load i32, ptr %8, align 4, !tbaa !5
  %3151 = mul nsw i32 17, %3150
  %3152 = add nsw i32 %3149, %3151
  %3153 = sext i32 %3152 to i64
  %3154 = getelementptr inbounds double, ptr %3148, i64 %3153
  %3155 = load double, ptr %3154, align 8, !tbaa !11
  %3156 = call double @llvm.fmuladd.f64(double 0x3C9BAD7EA815E448, double %3155, double %3147)
  %3157 = load ptr, ptr %7, align 8, !tbaa !9
  %3158 = load i32, ptr %12, align 4, !tbaa !5
  %3159 = load i32, ptr %8, align 4, !tbaa !5
  %3160 = mul nsw i32 18, %3159
  %3161 = add nsw i32 %3158, %3160
  %3162 = sext i32 %3161 to i64
  %3163 = getelementptr inbounds double, ptr %3157, i64 %3162
  %3164 = load double, ptr %3163, align 8, !tbaa !11
  %3165 = call double @llvm.fmuladd.f64(double 0x3CC6C71214C31C21, double %3164, double %3156)
  %3166 = load ptr, ptr %7, align 8, !tbaa !9
  %3167 = load i32, ptr %12, align 4, !tbaa !5
  %3168 = load i32, ptr %8, align 4, !tbaa !5
  %3169 = mul nsw i32 19, %3168
  %3170 = add nsw i32 %3167, %3169
  %3171 = sext i32 %3170 to i64
  %3172 = getelementptr inbounds double, ptr %3166, i64 %3171
  %3173 = load double, ptr %3172, align 8, !tbaa !11
  %3174 = call double @llvm.fmuladd.f64(double 0xBCB1B63B8880A915, double %3173, double %3165)
  %3175 = load ptr, ptr %7, align 8, !tbaa !9
  %3176 = load i32, ptr %12, align 4, !tbaa !5
  %3177 = load i32, ptr %8, align 4, !tbaa !5
  %3178 = mul nsw i32 20, %3177
  %3179 = add nsw i32 %3176, %3178
  %3180 = sext i32 %3179 to i64
  %3181 = getelementptr inbounds double, ptr %3175, i64 %3180
  %3182 = load double, ptr %3181, align 8, !tbaa !11
  %3183 = call double @llvm.fmuladd.f64(double 0xBCB4FEFC467C74C1, double %3182, double %3174)
  %3184 = load ptr, ptr %7, align 8, !tbaa !9
  %3185 = load i32, ptr %12, align 4, !tbaa !5
  %3186 = load i32, ptr %8, align 4, !tbaa !5
  %3187 = mul nsw i32 21, %3186
  %3188 = add nsw i32 %3185, %3187
  %3189 = sext i32 %3188 to i64
  %3190 = getelementptr inbounds double, ptr %3184, i64 %3189
  %3191 = load double, ptr %3190, align 8, !tbaa !11
  %3192 = call double @llvm.fmuladd.f64(double 0x3CA5EC7F118106ED, double %3191, double %3183)
  %3193 = load ptr, ptr %7, align 8, !tbaa !9
  %3194 = load i32, ptr %12, align 4, !tbaa !5
  %3195 = load i32, ptr %8, align 4, !tbaa !5
  %3196 = mul nsw i32 22, %3195
  %3197 = add nsw i32 %3194, %3196
  %3198 = sext i32 %3197 to i64
  %3199 = getelementptr inbounds double, ptr %3193, i64 %3198
  %3200 = load double, ptr %3199, align 8, !tbaa !11
  %3201 = call double @llvm.fmuladd.f64(double 0x3C97A76C7821BE84, double %3200, double %3192)
  %3202 = load ptr, ptr %7, align 8, !tbaa !9
  %3203 = load i32, ptr %12, align 4, !tbaa !5
  %3204 = load i32, ptr %8, align 4, !tbaa !5
  %3205 = mul nsw i32 23, %3204
  %3206 = add nsw i32 %3203, %3205
  %3207 = sext i32 %3206 to i64
  %3208 = getelementptr inbounds double, ptr %3202, i64 %3207
  %3209 = load double, ptr %3208, align 8, !tbaa !11
  %3210 = call double @llvm.fmuladd.f64(double 0x3CAB7AA05D79C461, double %3209, double %3201)
  %3211 = load ptr, ptr %7, align 8, !tbaa !9
  %3212 = load i32, ptr %12, align 4, !tbaa !5
  %3213 = load i32, ptr %8, align 4, !tbaa !5
  %3214 = mul nsw i32 24, %3213
  %3215 = add nsw i32 %3212, %3214
  %3216 = sext i32 %3215 to i64
  %3217 = getelementptr inbounds double, ptr %3211, i64 %3216
  %3218 = load double, ptr %3217, align 8, !tbaa !11
  %3219 = call double @llvm.fmuladd.f64(double 0xBFE8AC73392375D0, double %3218, double %3210)
  %3220 = load ptr, ptr %7, align 8, !tbaa !9
  %3221 = load i32, ptr %12, align 4, !tbaa !5
  %3222 = load i32, ptr %8, align 4, !tbaa !5
  %3223 = mul nsw i32 25, %3222
  %3224 = add nsw i32 %3221, %3223
  %3225 = sext i32 %3224 to i64
  %3226 = getelementptr inbounds double, ptr %3220, i64 %3225
  %3227 = load double, ptr %3226, align 8, !tbaa !11
  %3228 = call double @llvm.fmuladd.f64(double 0x3FE4EDE8EE256116, double %3227, double %3219)
  %3229 = load ptr, ptr %7, align 8, !tbaa !9
  %3230 = load i32, ptr %12, align 4, !tbaa !5
  %3231 = load i32, ptr %8, align 4, !tbaa !5
  %3232 = mul nsw i32 26, %3231
  %3233 = add nsw i32 %3230, %3232
  %3234 = sext i32 %3233 to i64
  %3235 = getelementptr inbounds double, ptr %3229, i64 %3234
  %3236 = load double, ptr %3235, align 8, !tbaa !11
  %3237 = call double @llvm.fmuladd.f64(double 0x3FEA5488770B26C2, double %3236, double %3228)
  %3238 = load ptr, ptr %7, align 8, !tbaa !9
  %3239 = load i32, ptr %12, align 4, !tbaa !5
  %3240 = load i32, ptr %8, align 4, !tbaa !5
  %3241 = mul nsw i32 27, %3240
  %3242 = add nsw i32 %3239, %3241
  %3243 = sext i32 %3242 to i64
  %3244 = getelementptr inbounds double, ptr %3238, i64 %3243
  %3245 = load double, ptr %3244, align 8, !tbaa !11
  %3246 = call double @llvm.fmuladd.f64(double 0x3FF44CD742FC94EC, double %3245, double %3237)
  %3247 = load ptr, ptr %7, align 8, !tbaa !9
  %3248 = load i32, ptr %12, align 4, !tbaa !5
  %3249 = load i32, ptr %8, align 4, !tbaa !5
  %3250 = mul nsw i32 28, %3249
  %3251 = add nsw i32 %3248, %3250
  %3252 = sext i32 %3251 to i64
  %3253 = getelementptr inbounds double, ptr %3247, i64 %3252
  %3254 = load double, ptr %3253, align 8, !tbaa !11
  %3255 = call double @llvm.fmuladd.f64(double 0xBFFEF1F8514C97E2, double %3254, double %3246)
  %3256 = load ptr, ptr %7, align 8, !tbaa !9
  %3257 = load i32, ptr %12, align 4, !tbaa !5
  %3258 = load i32, ptr %8, align 4, !tbaa !5
  %3259 = mul nsw i32 29, %3258
  %3260 = add nsw i32 %3257, %3259
  %3261 = sext i32 %3260 to i64
  %3262 = getelementptr inbounds double, ptr %3256, i64 %3261
  %3263 = load double, ptr %3262, align 8, !tbaa !11
  %3264 = call double @llvm.fmuladd.f64(double 0xBFF01B2FE70C1193, double %3263, double %3255)
  %3265 = load ptr, ptr %7, align 8, !tbaa !9
  %3266 = load i32, ptr %12, align 4, !tbaa !5
  %3267 = load i32, ptr %8, align 4, !tbaa !5
  %3268 = mul nsw i32 30, %3267
  %3269 = add nsw i32 %3266, %3268
  %3270 = sext i32 %3269 to i64
  %3271 = getelementptr inbounds double, ptr %3265, i64 %3270
  %3272 = load double, ptr %3271, align 8, !tbaa !11
  %3273 = call double @llvm.fmuladd.f64(double 0x3CC10619A0D49B2C, double %3272, double %3264)
  %3274 = load ptr, ptr %7, align 8, !tbaa !9
  %3275 = load i32, ptr %12, align 4, !tbaa !5
  %3276 = load i32, ptr %8, align 4, !tbaa !5
  %3277 = mul nsw i32 31, %3276
  %3278 = add nsw i32 %3275, %3277
  %3279 = sext i32 %3278 to i64
  %3280 = getelementptr inbounds double, ptr %3274, i64 %3279
  %3281 = load double, ptr %3280, align 8, !tbaa !11
  %3282 = call double @llvm.fmuladd.f64(double 0xBCB2BE959D8DCC83, double %3281, double %3273)
  %3283 = load ptr, ptr %7, align 8, !tbaa !9
  %3284 = load i32, ptr %12, align 4, !tbaa !5
  %3285 = load i32, ptr %8, align 4, !tbaa !5
  %3286 = mul nsw i32 32, %3285
  %3287 = add nsw i32 %3284, %3286
  %3288 = sext i32 %3287 to i64
  %3289 = getelementptr inbounds double, ptr %3283, i64 %3288
  %3290 = load double, ptr %3289, align 8, !tbaa !11
  %3291 = call double @llvm.fmuladd.f64(double 0xBCB6827D4F596C3D, double %3290, double %3282)
  %3292 = load ptr, ptr %7, align 8, !tbaa !9
  %3293 = load i32, ptr %12, align 4, !tbaa !5
  %3294 = load i32, ptr %8, align 4, !tbaa !5
  %3295 = mul nsw i32 33, %3294
  %3296 = add nsw i32 %3293, %3295
  %3297 = sext i32 %3296 to i64
  %3298 = getelementptr inbounds double, ptr %3292, i64 %3297
  %3299 = load double, ptr %3298, align 8, !tbaa !11
  %3300 = call double @llvm.fmuladd.f64(double 0xBC79847A24C5FC38, double %3299, double %3291)
  %3301 = load ptr, ptr %7, align 8, !tbaa !9
  %3302 = load i32, ptr %12, align 4, !tbaa !5
  %3303 = load i32, ptr %8, align 4, !tbaa !5
  %3304 = mul nsw i32 34, %3303
  %3305 = add nsw i32 %3302, %3304
  %3306 = sext i32 %3305 to i64
  %3307 = getelementptr inbounds double, ptr %3301, i64 %3306
  %3308 = load double, ptr %3307, align 8, !tbaa !11
  %3309 = call double @llvm.fmuladd.f64(double 0x3CA5781E7AFEC464, double %3308, double %3300)
  %3310 = load ptr, ptr %7, align 8, !tbaa !9
  %3311 = load i32, ptr %12, align 4, !tbaa !5
  %3312 = load i32, ptr %8, align 4, !tbaa !5
  %3313 = mul nsw i32 35, %3312
  %3314 = add nsw i32 %3311, %3313
  %3315 = sext i32 %3314 to i64
  %3316 = getelementptr inbounds double, ptr %3310, i64 %3315
  %3317 = load double, ptr %3316, align 8, !tbaa !11
  %3318 = call double @llvm.fmuladd.f64(double 0xBC69B640D81F5A20, double %3317, double %3309)
  %3319 = load ptr, ptr %7, align 8, !tbaa !9
  %3320 = load i32, ptr %12, align 4, !tbaa !5
  %3321 = load i32, ptr %8, align 4, !tbaa !5
  %3322 = mul nsw i32 36, %3321
  %3323 = add nsw i32 %3320, %3322
  %3324 = sext i32 %3323 to i64
  %3325 = getelementptr inbounds double, ptr %3319, i64 %3324
  %3326 = load double, ptr %3325, align 8, !tbaa !11
  %3327 = call double @llvm.fmuladd.f64(double 0xBFF9D1E43E6CC16D, double %3326, double %3318)
  %3328 = load ptr, ptr %7, align 8, !tbaa !9
  %3329 = load i32, ptr %12, align 4, !tbaa !5
  %3330 = load i32, ptr %8, align 4, !tbaa !5
  %3331 = mul nsw i32 37, %3330
  %3332 = add nsw i32 %3329, %3331
  %3333 = sext i32 %3332 to i64
  %3334 = getelementptr inbounds double, ptr %3328, i64 %3333
  %3335 = load double, ptr %3334, align 8, !tbaa !11
  %3336 = call double @llvm.fmuladd.f64(double 0x3CE92F44973E98E2, double %3335, double %3327)
  %3337 = load ptr, ptr %7, align 8, !tbaa !9
  %3338 = load i32, ptr %12, align 4, !tbaa !5
  %3339 = load i32, ptr %8, align 4, !tbaa !5
  %3340 = mul nsw i32 38, %3339
  %3341 = add nsw i32 %3338, %3340
  %3342 = sext i32 %3341 to i64
  %3343 = getelementptr inbounds double, ptr %3337, i64 %3342
  %3344 = load double, ptr %3343, align 8, !tbaa !11
  %3345 = call double @llvm.fmuladd.f64(double 0x3CE8D765A1B41E69, double %3344, double %3336)
  %3346 = load ptr, ptr %7, align 8, !tbaa !9
  %3347 = load i32, ptr %12, align 4, !tbaa !5
  %3348 = load i32, ptr %8, align 4, !tbaa !5
  %3349 = mul nsw i32 39, %3348
  %3350 = add nsw i32 %3347, %3349
  %3351 = sext i32 %3350 to i64
  %3352 = getelementptr inbounds double, ptr %3346, i64 %3351
  %3353 = load double, ptr %3352, align 8, !tbaa !11
  %3354 = call double @llvm.fmuladd.f64(double 0x3CE01DEF58A7A769, double %3353, double %3345)
  %3355 = load ptr, ptr %7, align 8, !tbaa !9
  %3356 = load i32, ptr %12, align 4, !tbaa !5
  %3357 = load i32, ptr %8, align 4, !tbaa !5
  %3358 = mul nsw i32 40, %3357
  %3359 = add nsw i32 %3356, %3358
  %3360 = sext i32 %3359 to i64
  %3361 = getelementptr inbounds double, ptr %3355, i64 %3360
  %3362 = load double, ptr %3361, align 8, !tbaa !11
  %3363 = call double @llvm.fmuladd.f64(double 0xBCF92CA4F0107010, double %3362, double %3354)
  %3364 = load ptr, ptr %7, align 8, !tbaa !9
  %3365 = load i32, ptr %12, align 4, !tbaa !5
  %3366 = load i32, ptr %8, align 4, !tbaa !5
  %3367 = mul nsw i32 41, %3366
  %3368 = add nsw i32 %3365, %3367
  %3369 = sext i32 %3368 to i64
  %3370 = getelementptr inbounds double, ptr %3364, i64 %3369
  %3371 = load double, ptr %3370, align 8, !tbaa !11
  %3372 = call double @llvm.fmuladd.f64(double 0xBCFA01E43E6CC1B4, double %3371, double %3363)
  %3373 = load ptr, ptr %7, align 8, !tbaa !9
  %3374 = load i32, ptr %12, align 4, !tbaa !5
  %3375 = load i32, ptr %8, align 4, !tbaa !5
  %3376 = mul nsw i32 42, %3375
  %3377 = add nsw i32 %3374, %3376
  %3378 = sext i32 %3377 to i64
  %3379 = getelementptr inbounds double, ptr %3373, i64 %3378
  %3380 = load double, ptr %3379, align 8, !tbaa !11
  %3381 = call double @llvm.fmuladd.f64(double 0xB9BED7FFFFFFFFFE, double %3380, double %3372)
  %3382 = load ptr, ptr %7, align 8, !tbaa !9
  %3383 = load i32, ptr %12, align 4, !tbaa !5
  %3384 = load i32, ptr %8, align 4, !tbaa !5
  %3385 = mul nsw i32 43, %3384
  %3386 = add nsw i32 %3383, %3385
  %3387 = sext i32 %3386 to i64
  %3388 = getelementptr inbounds double, ptr %3382, i64 %3387
  %3389 = load double, ptr %3388, align 8, !tbaa !11
  %3390 = call double @llvm.fmuladd.f64(double 0xB997600000000000, double %3389, double %3381)
  %3391 = load ptr, ptr %7, align 8, !tbaa !9
  %3392 = load i32, ptr %12, align 4, !tbaa !5
  %3393 = load i32, ptr %8, align 4, !tbaa !5
  %3394 = mul nsw i32 44, %3393
  %3395 = add nsw i32 %3392, %3394
  %3396 = sext i32 %3395 to i64
  %3397 = getelementptr inbounds double, ptr %3391, i64 %3396
  %3398 = load double, ptr %3397, align 8, !tbaa !11
  %3399 = call double @llvm.fmuladd.f64(double 0xB980BFFFFFFFFFFE, double %3398, double %3390)
  %3400 = load ptr, ptr %7, align 8, !tbaa !9
  %3401 = load i32, ptr %12, align 4, !tbaa !5
  %3402 = load i32, ptr %8, align 4, !tbaa !5
  %3403 = mul nsw i32 45, %3402
  %3404 = add nsw i32 %3401, %3403
  %3405 = sext i32 %3404 to i64
  %3406 = getelementptr inbounds double, ptr %3400, i64 %3405
  %3407 = load double, ptr %3406, align 8, !tbaa !11
  %3408 = call double @llvm.fmuladd.f64(double 0xB9914C0000000000, double %3407, double %3399)
  %3409 = load ptr, ptr %7, align 8, !tbaa !9
  %3410 = load i32, ptr %12, align 4, !tbaa !5
  %3411 = load i32, ptr %8, align 4, !tbaa !5
  %3412 = mul nsw i32 46, %3411
  %3413 = add nsw i32 %3410, %3412
  %3414 = sext i32 %3413 to i64
  %3415 = getelementptr inbounds double, ptr %3409, i64 %3414
  %3416 = load double, ptr %3415, align 8, !tbaa !11
  %3417 = call double @llvm.fmuladd.f64(double 0x3970000000000000, double %3416, double %3408)
  %3418 = load ptr, ptr %7, align 8, !tbaa !9
  %3419 = load i32, ptr %12, align 4, !tbaa !5
  %3420 = load i32, ptr %8, align 4, !tbaa !5
  %3421 = mul nsw i32 47, %3420
  %3422 = add nsw i32 %3419, %3421
  %3423 = sext i32 %3422 to i64
  %3424 = getelementptr inbounds double, ptr %3418, i64 %3423
  %3425 = load double, ptr %3424, align 8, !tbaa !11
  %3426 = call double @llvm.fmuladd.f64(double 0x39A0000000000000, double %3425, double %3417)
  %3427 = load ptr, ptr %7, align 8, !tbaa !9
  %3428 = load i32, ptr %12, align 4, !tbaa !5
  %3429 = load i32, ptr %8, align 4, !tbaa !5
  %3430 = mul nsw i32 48, %3429
  %3431 = add nsw i32 %3428, %3430
  %3432 = sext i32 %3431 to i64
  %3433 = getelementptr inbounds double, ptr %3427, i64 %3432
  %3434 = load double, ptr %3433, align 8, !tbaa !11
  %3435 = call double @llvm.fmuladd.f64(double 0x3FF9D1E43E6CC16D, double %3434, double %3426)
  %3436 = load ptr, ptr %7, align 8, !tbaa !9
  %3437 = load i32, ptr %12, align 4, !tbaa !5
  %3438 = load i32, ptr %8, align 4, !tbaa !5
  %3439 = mul nsw i32 49, %3438
  %3440 = add nsw i32 %3437, %3439
  %3441 = sext i32 %3440 to i64
  %3442 = getelementptr inbounds double, ptr %3436, i64 %3441
  %3443 = load double, ptr %3442, align 8, !tbaa !11
  %3444 = call double @llvm.fmuladd.f64(double 0xBCE92F44973E98E2, double %3443, double %3435)
  %3445 = load ptr, ptr %7, align 8, !tbaa !9
  %3446 = load i32, ptr %12, align 4, !tbaa !5
  %3447 = load i32, ptr %8, align 4, !tbaa !5
  %3448 = mul nsw i32 50, %3447
  %3449 = add nsw i32 %3446, %3448
  %3450 = sext i32 %3449 to i64
  %3451 = getelementptr inbounds double, ptr %3445, i64 %3450
  %3452 = load double, ptr %3451, align 8, !tbaa !11
  %3453 = call double @llvm.fmuladd.f64(double 0xBCE8D765A1B41E69, double %3452, double %3444)
  %3454 = load ptr, ptr %7, align 8, !tbaa !9
  %3455 = load i32, ptr %12, align 4, !tbaa !5
  %3456 = load i32, ptr %8, align 4, !tbaa !5
  %3457 = mul nsw i32 51, %3456
  %3458 = add nsw i32 %3455, %3457
  %3459 = sext i32 %3458 to i64
  %3460 = getelementptr inbounds double, ptr %3454, i64 %3459
  %3461 = load double, ptr %3460, align 8, !tbaa !11
  %3462 = call double @llvm.fmuladd.f64(double 0xBCE01DEF58A7A769, double %3461, double %3453)
  %3463 = load ptr, ptr %7, align 8, !tbaa !9
  %3464 = load i32, ptr %12, align 4, !tbaa !5
  %3465 = load i32, ptr %8, align 4, !tbaa !5
  %3466 = mul nsw i32 52, %3465
  %3467 = add nsw i32 %3464, %3466
  %3468 = sext i32 %3467 to i64
  %3469 = getelementptr inbounds double, ptr %3463, i64 %3468
  %3470 = load double, ptr %3469, align 8, !tbaa !11
  %3471 = call double @llvm.fmuladd.f64(double 0x3CF95CA4F0107011, double %3470, double %3462)
  %3472 = load ptr, ptr %7, align 8, !tbaa !9
  %3473 = load i32, ptr %12, align 4, !tbaa !5
  %3474 = load i32, ptr %8, align 4, !tbaa !5
  %3475 = mul nsw i32 53, %3474
  %3476 = add nsw i32 %3473, %3475
  %3477 = sext i32 %3476 to i64
  %3478 = getelementptr inbounds double, ptr %3472, i64 %3477
  %3479 = load double, ptr %3478, align 8, !tbaa !11
  %3480 = call double @llvm.fmuladd.f64(double 0x3CFA31E43E6CC1B5, double %3479, double %3471)
  store double %3480, ptr %11, align 8, !tbaa !11
  %3481 = load double, ptr %11, align 8, !tbaa !11
  %3482 = load ptr, ptr %9, align 8, !tbaa !9
  %3483 = load i32, ptr %12, align 4, !tbaa !5
  %3484 = load i32, ptr %10, align 4, !tbaa !5
  %3485 = mul nsw i32 6, %3484
  %3486 = add nsw i32 %3483, %3485
  %3487 = sext i32 %3486 to i64
  %3488 = getelementptr inbounds double, ptr %3482, i64 %3487
  %3489 = load double, ptr %3488, align 8, !tbaa !11
  %3490 = fadd double %3489, %3481
  store double %3490, ptr %3488, align 8, !tbaa !11
  %3491 = load ptr, ptr %7, align 8, !tbaa !9
  %3492 = load i32, ptr %12, align 4, !tbaa !5
  %3493 = load i32, ptr %8, align 4, !tbaa !5
  %3494 = mul nsw i32 0, %3493
  %3495 = add nsw i32 %3492, %3494
  %3496 = sext i32 %3495 to i64
  %3497 = getelementptr inbounds double, ptr %3491, i64 %3496
  %3498 = load double, ptr %3497, align 8, !tbaa !11
  %3499 = load ptr, ptr %7, align 8, !tbaa !9
  %3500 = load i32, ptr %12, align 4, !tbaa !5
  %3501 = load i32, ptr %8, align 4, !tbaa !5
  %3502 = mul nsw i32 1, %3501
  %3503 = add nsw i32 %3500, %3502
  %3504 = sext i32 %3503 to i64
  %3505 = getelementptr inbounds double, ptr %3499, i64 %3504
  %3506 = load double, ptr %3505, align 8, !tbaa !11
  %3507 = fmul double 0x3CB24802BB25DFAC, %3506
  %3508 = call double @llvm.fmuladd.f64(double 0x3CA733637AD25B8E, double %3498, double %3507)
  %3509 = load ptr, ptr %7, align 8, !tbaa !9
  %3510 = load i32, ptr %12, align 4, !tbaa !5
  %3511 = load i32, ptr %8, align 4, !tbaa !5
  %3512 = mul nsw i32 2, %3511
  %3513 = add nsw i32 %3510, %3512
  %3514 = sext i32 %3513 to i64
  %3515 = getelementptr inbounds double, ptr %3509, i64 %3514
  %3516 = load double, ptr %3515, align 8, !tbaa !11
  %3517 = call double @llvm.fmuladd.f64(double 0xBC9FC7EA1CC30EE8, double %3516, double %3508)
  %3518 = load ptr, ptr %7, align 8, !tbaa !9
  %3519 = load i32, ptr %12, align 4, !tbaa !5
  %3520 = load i32, ptr %8, align 4, !tbaa !5
  %3521 = mul nsw i32 3, %3520
  %3522 = add nsw i32 %3519, %3521
  %3523 = sext i32 %3522 to i64
  %3524 = getelementptr inbounds double, ptr %3518, i64 %3523
  %3525 = load double, ptr %3524, align 8, !tbaa !11
  %3526 = call double @llvm.fmuladd.f64(double 0xBCB44A60DE6828AB, double %3525, double %3517)
  %3527 = load ptr, ptr %7, align 8, !tbaa !9
  %3528 = load i32, ptr %12, align 4, !tbaa !5
  %3529 = load i32, ptr %8, align 4, !tbaa !5
  %3530 = mul nsw i32 4, %3529
  %3531 = add nsw i32 %3528, %3530
  %3532 = sext i32 %3531 to i64
  %3533 = getelementptr inbounds double, ptr %3527, i64 %3532
  %3534 = load double, ptr %3533, align 8, !tbaa !11
  %3535 = call double @llvm.fmuladd.f64(double 0xBCB000D696902285, double %3534, double %3526)
  %3536 = load ptr, ptr %7, align 8, !tbaa !9
  %3537 = load i32, ptr %12, align 4, !tbaa !5
  %3538 = load i32, ptr %8, align 4, !tbaa !5
  %3539 = mul nsw i32 5, %3538
  %3540 = add nsw i32 %3537, %3539
  %3541 = sext i32 %3540 to i64
  %3542 = getelementptr inbounds double, ptr %3536, i64 %3541
  %3543 = load double, ptr %3542, align 8, !tbaa !11
  %3544 = call double @llvm.fmuladd.f64(double 0xBCA826233EF25B10, double %3543, double %3535)
  %3545 = load ptr, ptr %7, align 8, !tbaa !9
  %3546 = load i32, ptr %12, align 4, !tbaa !5
  %3547 = load i32, ptr %8, align 4, !tbaa !5
  %3548 = mul nsw i32 6, %3547
  %3549 = add nsw i32 %3546, %3548
  %3550 = sext i32 %3549 to i64
  %3551 = getelementptr inbounds double, ptr %3545, i64 %3550
  %3552 = load double, ptr %3551, align 8, !tbaa !11
  %3553 = call double @llvm.fmuladd.f64(double 0x3FE4EDE8EE25610A, double %3552, double %3544)
  %3554 = load ptr, ptr %7, align 8, !tbaa !9
  %3555 = load i32, ptr %12, align 4, !tbaa !5
  %3556 = load i32, ptr %8, align 4, !tbaa !5
  %3557 = mul nsw i32 7, %3556
  %3558 = add nsw i32 %3555, %3557
  %3559 = sext i32 %3558 to i64
  %3560 = getelementptr inbounds double, ptr %3554, i64 %3559
  %3561 = load double, ptr %3560, align 8, !tbaa !11
  %3562 = call double @llvm.fmuladd.f64(double 0xBFE8AC73392375BC, double %3561, double %3553)
  %3563 = load ptr, ptr %7, align 8, !tbaa !9
  %3564 = load i32, ptr %12, align 4, !tbaa !5
  %3565 = load i32, ptr %8, align 4, !tbaa !5
  %3566 = mul nsw i32 8, %3565
  %3567 = add nsw i32 %3564, %3566
  %3568 = sext i32 %3567 to i64
  %3569 = getelementptr inbounds double, ptr %3563, i64 %3568
  %3570 = load double, ptr %3569, align 8, !tbaa !11
  %3571 = call double @llvm.fmuladd.f64(double 0x3FEA5488770B26AA, double %3570, double %3562)
  %3572 = load ptr, ptr %7, align 8, !tbaa !9
  %3573 = load i32, ptr %12, align 4, !tbaa !5
  %3574 = load i32, ptr %8, align 4, !tbaa !5
  %3575 = mul nsw i32 9, %3574
  %3576 = add nsw i32 %3573, %3575
  %3577 = sext i32 %3576 to i64
  %3578 = getelementptr inbounds double, ptr %3572, i64 %3577
  %3579 = load double, ptr %3578, align 8, !tbaa !11
  %3580 = call double @llvm.fmuladd.f64(double 0xBFFEF1F8514C97D0, double %3579, double %3571)
  %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 10, %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 = call double @llvm.fmuladd.f64(double 0x3FF44CD742FC94DF, double %3588, double %3580)
  %3590 = load ptr, ptr %7, align 8, !tbaa !9
  %3591 = load i32, ptr %12, align 4, !tbaa !5
  %3592 = load i32, ptr %8, align 4, !tbaa !5
  %3593 = mul nsw i32 11, %3592
  %3594 = add nsw i32 %3591, %3593
  %3595 = sext i32 %3594 to i64
  %3596 = getelementptr inbounds double, ptr %3590, i64 %3595
  %3597 = load double, ptr %3596, align 8, !tbaa !11
  %3598 = call double @llvm.fmuladd.f64(double 0xBFF01B2FE70C118E, double %3597, double %3589)
  %3599 = load ptr, ptr %7, align 8, !tbaa !9
  %3600 = load i32, ptr %12, align 4, !tbaa !5
  %3601 = load i32, ptr %8, align 4, !tbaa !5
  %3602 = mul nsw i32 12, %3601
  %3603 = add nsw i32 %3600, %3602
  %3604 = sext i32 %3603 to i64
  %3605 = getelementptr inbounds double, ptr %3599, i64 %3604
  %3606 = load double, ptr %3605, align 8, !tbaa !11
  %3607 = call double @llvm.fmuladd.f64(double 0xBCBA0032ABCB100C, double %3606, double %3598)
  %3608 = load ptr, ptr %7, align 8, !tbaa !9
  %3609 = load i32, ptr %12, align 4, !tbaa !5
  %3610 = load i32, ptr %8, align 4, !tbaa !5
  %3611 = mul nsw i32 13, %3610
  %3612 = add nsw i32 %3609, %3611
  %3613 = sext i32 %3612 to i64
  %3614 = getelementptr inbounds double, ptr %3608, i64 %3613
  %3615 = load double, ptr %3614, align 8, !tbaa !11
  %3616 = call double @llvm.fmuladd.f64(double 0x3CBC200ECF3E06E7, double %3615, double %3607)
  %3617 = load ptr, ptr %7, align 8, !tbaa !9
  %3618 = load i32, ptr %12, align 4, !tbaa !5
  %3619 = load i32, ptr %8, align 4, !tbaa !5
  %3620 = mul nsw i32 14, %3619
  %3621 = add nsw i32 %3618, %3620
  %3622 = sext i32 %3621 to i64
  %3623 = getelementptr inbounds double, ptr %3617, i64 %3622
  %3624 = load double, ptr %3623, align 8, !tbaa !11
  %3625 = call double @llvm.fmuladd.f64(double 0xBCBDCFF9DD802CEF, double %3624, double %3616)
  %3626 = load ptr, ptr %7, align 8, !tbaa !9
  %3627 = load i32, ptr %12, align 4, !tbaa !5
  %3628 = load i32, ptr %8, align 4, !tbaa !5
  %3629 = mul nsw i32 15, %3628
  %3630 = add nsw i32 %3627, %3629
  %3631 = sext i32 %3630 to i64
  %3632 = getelementptr inbounds double, ptr %3626, i64 %3631
  %3633 = load double, ptr %3632, align 8, !tbaa !11
  %3634 = call double @llvm.fmuladd.f64(double 0xBC68F31986A4E76E, double %3633, double %3625)
  %3635 = load ptr, ptr %7, align 8, !tbaa !9
  %3636 = load i32, ptr %12, align 4, !tbaa !5
  %3637 = load i32, ptr %8, align 4, !tbaa !5
  %3638 = mul nsw i32 16, %3637
  %3639 = add nsw i32 %3636, %3638
  %3640 = sext i32 %3639 to i64
  %3641 = getelementptr inbounds double, ptr %3635, i64 %3640
  %3642 = load double, ptr %3641, align 8, !tbaa !11
  %3643 = call double @llvm.fmuladd.f64(double 0x3CBB2800A30A8EA4, double %3642, double %3634)
  %3644 = load ptr, ptr %7, align 8, !tbaa !9
  %3645 = load i32, ptr %12, align 4, !tbaa !5
  %3646 = load i32, ptr %8, align 4, !tbaa !5
  %3647 = mul nsw i32 17, %3646
  %3648 = add nsw i32 %3645, %3647
  %3649 = sext i32 %3648 to i64
  %3650 = getelementptr inbounds double, ptr %3644, i64 %3649
  %3651 = load double, ptr %3650, align 8, !tbaa !11
  %3652 = call double @llvm.fmuladd.f64(double 0x3CC423B95478E8B3, double %3651, double %3643)
  %3653 = load ptr, ptr %7, align 8, !tbaa !9
  %3654 = load i32, ptr %12, align 4, !tbaa !5
  %3655 = load i32, ptr %8, align 4, !tbaa !5
  %3656 = mul nsw i32 18, %3655
  %3657 = add nsw i32 %3654, %3656
  %3658 = sext i32 %3657 to i64
  %3659 = getelementptr inbounds double, ptr %3653, i64 %3658
  %3660 = load double, ptr %3659, align 8, !tbaa !11
  %3661 = call double @llvm.fmuladd.f64(double 0x3CA347C4C70D6B05, double %3660, double %3652)
  %3662 = load ptr, ptr %7, align 8, !tbaa !9
  %3663 = load i32, ptr %12, align 4, !tbaa !5
  %3664 = load i32, ptr %8, align 4, !tbaa !5
  %3665 = mul nsw i32 19, %3664
  %3666 = add nsw i32 %3663, %3665
  %3667 = sext i32 %3666 to i64
  %3668 = getelementptr inbounds double, ptr %3662, i64 %3667
  %3669 = load double, ptr %3668, align 8, !tbaa !11
  %3670 = call double @llvm.fmuladd.f64(double 0x3CB1CF7DDE1AEFDC, double %3669, double %3661)
  %3671 = load ptr, ptr %7, align 8, !tbaa !9
  %3672 = load i32, ptr %12, align 4, !tbaa !5
  %3673 = load i32, ptr %8, align 4, !tbaa !5
  %3674 = mul nsw i32 20, %3673
  %3675 = add nsw i32 %3672, %3674
  %3676 = sext i32 %3675 to i64
  %3677 = getelementptr inbounds double, ptr %3671, i64 %3676
  %3678 = load double, ptr %3677, align 8, !tbaa !11
  %3679 = call double @llvm.fmuladd.f64(double 0x3C97D656A637D540, double %3678, double %3670)
  %3680 = load ptr, ptr %7, align 8, !tbaa !9
  %3681 = load i32, ptr %12, align 4, !tbaa !5
  %3682 = load i32, ptr %8, align 4, !tbaa !5
  %3683 = mul nsw i32 21, %3682
  %3684 = add nsw i32 %3681, %3683
  %3685 = sext i32 %3684 to i64
  %3686 = getelementptr inbounds double, ptr %3680, i64 %3685
  %3687 = load double, ptr %3686, align 8, !tbaa !11
  %3688 = call double @llvm.fmuladd.f64(double 0xBCAA48CC66C79E07, double %3687, double %3679)
  %3689 = load ptr, ptr %7, align 8, !tbaa !9
  %3690 = load i32, ptr %12, align 4, !tbaa !5
  %3691 = load i32, ptr %8, align 4, !tbaa !5
  %3692 = mul nsw i32 22, %3691
  %3693 = add nsw i32 %3690, %3692
  %3694 = sext i32 %3693 to i64
  %3695 = getelementptr inbounds double, ptr %3689, i64 %3694
  %3696 = load double, ptr %3695, align 8, !tbaa !11
  %3697 = call double @llvm.fmuladd.f64(double 0x3C9D261528C7077F, double %3696, double %3688)
  %3698 = load ptr, ptr %7, align 8, !tbaa !9
  %3699 = load i32, ptr %12, align 4, !tbaa !5
  %3700 = load i32, ptr %8, align 4, !tbaa !5
  %3701 = mul nsw i32 23, %3700
  %3702 = add nsw i32 %3699, %3701
  %3703 = sext i32 %3702 to i64
  %3704 = getelementptr inbounds double, ptr %3698, i64 %3703
  %3705 = load double, ptr %3704, align 8, !tbaa !11
  %3706 = call double @llvm.fmuladd.f64(double 0x3CA99E4A7A608F94, double %3705, double %3697)
  %3707 = load ptr, ptr %7, align 8, !tbaa !9
  %3708 = load i32, ptr %12, align 4, !tbaa !5
  %3709 = load i32, ptr %8, align 4, !tbaa !5
  %3710 = mul nsw i32 24, %3709
  %3711 = add nsw i32 %3708, %3710
  %3712 = sext i32 %3711 to i64
  %3713 = getelementptr inbounds double, ptr %3707, i64 %3712
  %3714 = load double, ptr %3713, align 8, !tbaa !11
  %3715 = call double @llvm.fmuladd.f64(double 0xBF7DFA2300BBB500, double %3714, double %3706)
  %3716 = load ptr, ptr %7, align 8, !tbaa !9
  %3717 = load i32, ptr %12, align 4, !tbaa !5
  %3718 = load i32, ptr %8, align 4, !tbaa !5
  %3719 = mul nsw i32 25, %3718
  %3720 = add nsw i32 %3717, %3719
  %3721 = sext i32 %3720 to i64
  %3722 = getelementptr inbounds double, ptr %3716, i64 %3721
  %3723 = load double, ptr %3722, align 8, !tbaa !11
  %3724 = call double @llvm.fmuladd.f64(double 0x3FF44E3F94172F4F, double %3723, double %3715)
  %3725 = load ptr, ptr %7, align 8, !tbaa !9
  %3726 = load i32, ptr %12, align 4, !tbaa !5
  %3727 = load i32, ptr %8, align 4, !tbaa !5
  %3728 = mul nsw i32 26, %3727
  %3729 = add nsw i32 %3726, %3728
  %3730 = sext i32 %3729 to i64
  %3731 = getelementptr inbounds double, ptr %3725, i64 %3730
  %3732 = load double, ptr %3731, align 8, !tbaa !11
  %3733 = call double @llvm.fmuladd.f64(double 0x3FB9ECDD981278CF, double %3732, double %3724)
  %3734 = load ptr, ptr %7, align 8, !tbaa !9
  %3735 = load i32, ptr %12, align 4, !tbaa !5
  %3736 = load i32, ptr %8, align 4, !tbaa !5
  %3737 = mul nsw i32 27, %3736
  %3738 = add nsw i32 %3735, %3737
  %3739 = sext i32 %3738 to i64
  %3740 = getelementptr inbounds double, ptr %3734, i64 %3739
  %3741 = load double, ptr %3740, align 8, !tbaa !11
  %3742 = call double @llvm.fmuladd.f64(double 0xBFE4FBED5D8A9650, double %3741, double %3733)
  %3743 = load ptr, ptr %7, align 8, !tbaa !9
  %3744 = load i32, ptr %12, align 4, !tbaa !5
  %3745 = load i32, ptr %8, align 4, !tbaa !5
  %3746 = mul nsw i32 28, %3745
  %3747 = add nsw i32 %3744, %3746
  %3748 = sext i32 %3747 to i64
  %3749 = getelementptr inbounds double, ptr %3743, i64 %3748
  %3750 = load double, ptr %3749, align 8, !tbaa !11
  %3751 = call double @llvm.fmuladd.f64(double 0xBF83952FC55A72BC, double %3750, double %3742)
  %3752 = load ptr, ptr %7, align 8, !tbaa !9
  %3753 = load i32, ptr %12, align 4, !tbaa !5
  %3754 = load i32, ptr %8, align 4, !tbaa !5
  %3755 = mul nsw i32 29, %3754
  %3756 = add nsw i32 %3753, %3755
  %3757 = sext i32 %3756 to i64
  %3758 = getelementptr inbounds double, ptr %3752, i64 %3757
  %3759 = load double, ptr %3758, align 8, !tbaa !11
  %3760 = call double @llvm.fmuladd.f64(double 0x3FD50884576D0BC1, double %3759, double %3751)
  %3761 = load ptr, ptr %7, align 8, !tbaa !9
  %3762 = load i32, ptr %12, align 4, !tbaa !5
  %3763 = load i32, ptr %8, align 4, !tbaa !5
  %3764 = mul nsw i32 30, %3763
  %3765 = add nsw i32 %3762, %3764
  %3766 = sext i32 %3765 to i64
  %3767 = getelementptr inbounds double, ptr %3761, i64 %3766
  %3768 = load double, ptr %3767, align 8, !tbaa !11
  %3769 = call double @llvm.fmuladd.f64(double 0x3CB6140A413681D4, double %3768, double %3760)
  %3770 = load ptr, ptr %7, align 8, !tbaa !9
  %3771 = load i32, ptr %12, align 4, !tbaa !5
  %3772 = load i32, ptr %8, align 4, !tbaa !5
  %3773 = mul nsw i32 31, %3772
  %3774 = add nsw i32 %3771, %3773
  %3775 = sext i32 %3774 to i64
  %3776 = getelementptr inbounds double, ptr %3770, i64 %3775
  %3777 = load double, ptr %3776, align 8, !tbaa !11
  %3778 = call double @llvm.fmuladd.f64(double 0x3CA8FA1231330DC7, double %3777, double %3769)
  %3779 = load ptr, ptr %7, align 8, !tbaa !9
  %3780 = load i32, ptr %12, align 4, !tbaa !5
  %3781 = load i32, ptr %8, align 4, !tbaa !5
  %3782 = mul nsw i32 32, %3781
  %3783 = add nsw i32 %3780, %3782
  %3784 = sext i32 %3783 to i64
  %3785 = getelementptr inbounds double, ptr %3779, i64 %3784
  %3786 = load double, ptr %3785, align 8, !tbaa !11
  %3787 = call double @llvm.fmuladd.f64(double 0x3CBBE2C07F50FCE2, double %3786, double %3778)
  %3788 = load ptr, ptr %7, align 8, !tbaa !9
  %3789 = load i32, ptr %12, align 4, !tbaa !5
  %3790 = load i32, ptr %8, align 4, !tbaa !5
  %3791 = mul nsw i32 33, %3790
  %3792 = add nsw i32 %3789, %3791
  %3793 = sext i32 %3792 to i64
  %3794 = getelementptr inbounds double, ptr %3788, i64 %3793
  %3795 = load double, ptr %3794, align 8, !tbaa !11
  %3796 = call double @llvm.fmuladd.f64(double 0xBCB7024A69B57E27, double %3795, double %3787)
  %3797 = load ptr, ptr %7, align 8, !tbaa !9
  %3798 = load i32, ptr %12, align 4, !tbaa !5
  %3799 = load i32, ptr %8, align 4, !tbaa !5
  %3800 = mul nsw i32 34, %3799
  %3801 = add nsw i32 %3798, %3800
  %3802 = sext i32 %3801 to i64
  %3803 = getelementptr inbounds double, ptr %3797, i64 %3802
  %3804 = load double, ptr %3803, align 8, !tbaa !11
  %3805 = call double @llvm.fmuladd.f64(double 0xBC87FD97AF08C2A0, double %3804, double %3796)
  %3806 = load ptr, ptr %7, align 8, !tbaa !9
  %3807 = load i32, ptr %12, align 4, !tbaa !5
  %3808 = load i32, ptr %8, align 4, !tbaa !5
  %3809 = mul nsw i32 35, %3808
  %3810 = add nsw i32 %3807, %3809
  %3811 = sext i32 %3810 to i64
  %3812 = getelementptr inbounds double, ptr %3806, i64 %3811
  %3813 = load double, ptr %3812, align 8, !tbaa !11
  %3814 = call double @llvm.fmuladd.f64(double 0xBCB0527F7EB21B3D, double %3813, double %3805)
  %3815 = load ptr, ptr %7, align 8, !tbaa !9
  %3816 = load i32, ptr %12, align 4, !tbaa !5
  %3817 = load i32, ptr %8, align 4, !tbaa !5
  %3818 = mul nsw i32 36, %3817
  %3819 = add nsw i32 %3816, %3818
  %3820 = sext i32 %3819 to i64
  %3821 = getelementptr inbounds double, ptr %3815, i64 %3820
  %3822 = load double, ptr %3821, align 8, !tbaa !11
  %3823 = call double @llvm.fmuladd.f64(double 0x3CE5FF86AC29A3F8, double %3822, double %3814)
  %3824 = load ptr, ptr %7, align 8, !tbaa !9
  %3825 = load i32, ptr %12, align 4, !tbaa !5
  %3826 = load i32, ptr %8, align 4, !tbaa !5
  %3827 = mul nsw i32 37, %3826
  %3828 = add nsw i32 %3825, %3827
  %3829 = sext i32 %3828 to i64
  %3830 = getelementptr inbounds double, ptr %3824, i64 %3829
  %3831 = load double, ptr %3830, align 8, !tbaa !11
  %3832 = call double @llvm.fmuladd.f64(double 0xBFF9D1E43E6CC169, double %3831, double %3823)
  %3833 = load ptr, ptr %7, align 8, !tbaa !9
  %3834 = load i32, ptr %12, align 4, !tbaa !5
  %3835 = load i32, ptr %8, align 4, !tbaa !5
  %3836 = mul nsw i32 38, %3835
  %3837 = add nsw i32 %3834, %3836
  %3838 = sext i32 %3837 to i64
  %3839 = getelementptr inbounds double, ptr %3833, i64 %3838
  %3840 = load double, ptr %3839, align 8, !tbaa !11
  %3841 = call double @llvm.fmuladd.f64(double 0x3CE5698EEEC7055C, double %3840, double %3832)
  %3842 = load ptr, ptr %7, align 8, !tbaa !9
  %3843 = load i32, ptr %12, align 4, !tbaa !5
  %3844 = load i32, ptr %8, align 4, !tbaa !5
  %3845 = mul nsw i32 39, %3844
  %3846 = add nsw i32 %3843, %3845
  %3847 = sext i32 %3846 to i64
  %3848 = getelementptr inbounds double, ptr %3842, i64 %3847
  %3849 = load double, ptr %3848, align 8, !tbaa !11
  %3850 = call double @llvm.fmuladd.f64(double 0xBCFC52AFE82DBFFD, double %3849, double %3841)
  %3851 = load ptr, ptr %7, align 8, !tbaa !9
  %3852 = load i32, ptr %12, align 4, !tbaa !5
  %3853 = load i32, ptr %8, align 4, !tbaa !5
  %3854 = mul nsw i32 40, %3853
  %3855 = add nsw i32 %3852, %3854
  %3856 = sext i32 %3855 to i64
  %3857 = getelementptr inbounds double, ptr %3851, i64 %3856
  %3858 = load double, ptr %3857, align 8, !tbaa !11
  %3859 = call double @llvm.fmuladd.f64(double 0x3CE075CE4E3221E7, double %3858, double %3850)
  %3860 = load ptr, ptr %7, align 8, !tbaa !9
  %3861 = load i32, ptr %12, align 4, !tbaa !5
  %3862 = load i32, ptr %8, align 4, !tbaa !5
  %3863 = mul nsw i32 41, %3862
  %3864 = add nsw i32 %3861, %3863
  %3865 = sext i32 %3864 to i64
  %3866 = getelementptr inbounds double, ptr %3860, i64 %3865
  %3867 = load double, ptr %3866, align 8, !tbaa !11
  %3868 = call double @llvm.fmuladd.f64(double 0xBCF9A8946AD5AD4C, double %3867, double %3859)
  %3869 = load ptr, ptr %7, align 8, !tbaa !9
  %3870 = load i32, ptr %12, align 4, !tbaa !5
  %3871 = load i32, ptr %8, align 4, !tbaa !5
  %3872 = mul nsw i32 42, %3871
  %3873 = add nsw i32 %3870, %3872
  %3874 = sext i32 %3873 to i64
  %3875 = getelementptr inbounds double, ptr %3869, i64 %3874
  %3876 = load double, ptr %3875, align 8, !tbaa !11
  %3877 = call double @llvm.fmuladd.f64(double 0x3C7227B423504AEF, double %3876, double %3868)
  %3878 = load ptr, ptr %7, align 8, !tbaa !9
  %3879 = load i32, ptr %12, align 4, !tbaa !5
  %3880 = load i32, ptr %8, align 4, !tbaa !5
  %3881 = mul nsw i32 43, %3880
  %3882 = add nsw i32 %3879, %3881
  %3883 = sext i32 %3882 to i64
  %3884 = getelementptr inbounds double, ptr %3878, i64 %3883
  %3885 = load double, ptr %3884, align 8, !tbaa !11
  %3886 = call double @llvm.fmuladd.f64(double 0xBC3E23F1C2D296A5, double %3885, double %3877)
  %3887 = load ptr, ptr %7, align 8, !tbaa !9
  %3888 = load i32, ptr %12, align 4, !tbaa !5
  %3889 = load i32, ptr %8, align 4, !tbaa !5
  %3890 = mul nsw i32 44, %3889
  %3891 = add nsw i32 %3888, %3890
  %3892 = sext i32 %3891 to i64
  %3893 = getelementptr inbounds double, ptr %3887, i64 %3892
  %3894 = load double, ptr %3893, align 8, !tbaa !11
  %3895 = call double @llvm.fmuladd.f64(double 0xBC3E23F1C2D29CF9, double %3894, double %3886)
  %3896 = load ptr, ptr %7, align 8, !tbaa !9
  %3897 = load i32, ptr %12, align 4, !tbaa !5
  %3898 = load i32, ptr %8, align 4, !tbaa !5
  %3899 = mul nsw i32 45, %3898
  %3900 = add nsw i32 %3897, %3899
  %3901 = sext i32 %3900 to i64
  %3902 = getelementptr inbounds double, ptr %3896, i64 %3901
  %3903 = load double, ptr %3902, align 8, !tbaa !11
  %3904 = call double @llvm.fmuladd.f64(double 0xBC530A5432687980, double %3903, double %3895)
  %3905 = load ptr, ptr %7, align 8, !tbaa !9
  %3906 = load i32, ptr %12, align 4, !tbaa !5
  %3907 = load i32, ptr %8, align 4, !tbaa !5
  %3908 = mul nsw i32 46, %3907
  %3909 = add nsw i32 %3906, %3908
  %3910 = sext i32 %3909 to i64
  %3911 = getelementptr inbounds double, ptr %3905, i64 %3910
  %3912 = load double, ptr %3911, align 8, !tbaa !11
  %3913 = call double @llvm.fmuladd.f64(double 0xBC534141BCB7B1E0, double %3912, double %3904)
  %3914 = load ptr, ptr %7, align 8, !tbaa !9
  %3915 = load i32, ptr %12, align 4, !tbaa !5
  %3916 = load i32, ptr %8, align 4, !tbaa !5
  %3917 = mul nsw i32 47, %3916
  %3918 = add nsw i32 %3915, %3917
  %3919 = sext i32 %3918 to i64
  %3920 = getelementptr inbounds double, ptr %3914, i64 %3919
  %3921 = load double, ptr %3920, align 8, !tbaa !11
  %3922 = call double @llvm.fmuladd.f64(double 0xBC534141BCB7AF1E, double %3921, double %3913)
  %3923 = load ptr, ptr %7, align 8, !tbaa !9
  %3924 = load i32, ptr %12, align 4, !tbaa !5
  %3925 = load i32, ptr %8, align 4, !tbaa !5
  %3926 = mul nsw i32 48, %3925
  %3927 = add nsw i32 %3924, %3926
  %3928 = sext i32 %3927 to i64
  %3929 = getelementptr inbounds double, ptr %3923, i64 %3928
  %3930 = load double, ptr %3929, align 8, !tbaa !11
  %3931 = call double @llvm.fmuladd.f64(double 0xBCE5AF86AC29A3F8, double %3930, double %3922)
  %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 49, %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 = call double @llvm.fmuladd.f64(double 0x3FF9D1E43E6CC169, double %3939, double %3931)
  %3941 = load ptr, ptr %7, align 8, !tbaa !9
  %3942 = load i32, ptr %12, align 4, !tbaa !5
  %3943 = load i32, ptr %8, align 4, !tbaa !5
  %3944 = mul nsw i32 50, %3943
  %3945 = add nsw i32 %3942, %3944
  %3946 = sext i32 %3945 to i64
  %3947 = getelementptr inbounds double, ptr %3941, i64 %3946
  %3948 = load double, ptr %3947, align 8, !tbaa !11
  %3949 = call double @llvm.fmuladd.f64(double 0xBCE5698EEEC70559, double %3948, double %3940)
  %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 51, %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 0x3CFC52AFE82DBFFF, 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 52, %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 0xBCE075CE4E3221E7, 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 53, %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 0x3CFA38946AD5AD4B, double %3975, double %3967)
  store double %3976, ptr %11, align 8, !tbaa !11
  %3977 = load double, ptr %11, align 8, !tbaa !11
  %3978 = load ptr, ptr %9, align 8, !tbaa !9
  %3979 = load i32, ptr %12, align 4, !tbaa !5
  %3980 = load i32, ptr %10, align 4, !tbaa !5
  %3981 = mul nsw i32 7, %3980
  %3982 = add nsw i32 %3979, %3981
  %3983 = sext i32 %3982 to i64
  %3984 = getelementptr inbounds double, ptr %3978, i64 %3983
  %3985 = load double, ptr %3984, align 8, !tbaa !11
  %3986 = fadd double %3985, %3977
  store double %3986, ptr %3984, align 8, !tbaa !11
  %3987 = load ptr, ptr %7, align 8, !tbaa !9
  %3988 = load i32, ptr %12, align 4, !tbaa !5
  %3989 = load i32, ptr %8, align 4, !tbaa !5
  %3990 = mul nsw i32 0, %3989
  %3991 = add nsw i32 %3988, %3990
  %3992 = sext i32 %3991 to i64
  %3993 = getelementptr inbounds double, ptr %3987, i64 %3992
  %3994 = load double, ptr %3993, align 8, !tbaa !11
  %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 1, %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 = fmul double 0xBCA303E7E9D23CFA, %4002
  %4004 = call double @llvm.fmuladd.f64(double 0x3C8FBBBF8479477C, double %3994, double %4003)
  %4005 = load ptr, ptr %7, align 8, !tbaa !9
  %4006 = load i32, ptr %12, align 4, !tbaa !5
  %4007 = load i32, ptr %8, align 4, !tbaa !5
  %4008 = mul nsw i32 2, %4007
  %4009 = add nsw i32 %4006, %4008
  %4010 = sext i32 %4009 to i64
  %4011 = getelementptr inbounds double, ptr %4005, i64 %4010
  %4012 = load double, ptr %4011, align 8, !tbaa !11
  %4013 = call double @llvm.fmuladd.f64(double 0x3C7502E6070E6BC0, double %4012, double %4004)
  %4014 = load ptr, ptr %7, align 8, !tbaa !9
  %4015 = load i32, ptr %12, align 4, !tbaa !5
  %4016 = load i32, ptr %8, align 4, !tbaa !5
  %4017 = mul nsw i32 3, %4016
  %4018 = add nsw i32 %4015, %4017
  %4019 = sext i32 %4018 to i64
  %4020 = getelementptr inbounds double, ptr %4014, i64 %4019
  %4021 = load double, ptr %4020, align 8, !tbaa !11
  %4022 = call double @llvm.fmuladd.f64(double 0x3CBF2499CB50E496, double %4021, double %4013)
  %4023 = load ptr, ptr %7, align 8, !tbaa !9
  %4024 = load i32, ptr %12, align 4, !tbaa !5
  %4025 = load i32, ptr %8, align 4, !tbaa !5
  %4026 = mul nsw i32 4, %4025
  %4027 = add nsw i32 %4024, %4026
  %4028 = sext i32 %4027 to i64
  %4029 = getelementptr inbounds double, ptr %4023, i64 %4028
  %4030 = load double, ptr %4029, align 8, !tbaa !11
  %4031 = call double @llvm.fmuladd.f64(double 0xBCB18E75707CAEC2, double %4030, double %4022)
  %4032 = load ptr, ptr %7, align 8, !tbaa !9
  %4033 = load i32, ptr %12, align 4, !tbaa !5
  %4034 = load i32, ptr %8, align 4, !tbaa !5
  %4035 = mul nsw i32 5, %4034
  %4036 = add nsw i32 %4033, %4035
  %4037 = sext i32 %4036 to i64
  %4038 = getelementptr inbounds double, ptr %4032, i64 %4037
  %4039 = load double, ptr %4038, align 8, !tbaa !11
  %4040 = call double @llvm.fmuladd.f64(double 0xBC957EB0C0D32A92, double %4039, double %4031)
  %4041 = load ptr, ptr %7, align 8, !tbaa !9
  %4042 = load i32, ptr %12, align 4, !tbaa !5
  %4043 = load i32, ptr %8, align 4, !tbaa !5
  %4044 = mul nsw i32 6, %4043
  %4045 = add nsw i32 %4042, %4044
  %4046 = sext i32 %4045 to i64
  %4047 = getelementptr inbounds double, ptr %4041, i64 %4046
  %4048 = load double, ptr %4047, align 8, !tbaa !11
  %4049 = call double @llvm.fmuladd.f64(double 0xBFE1EC4181248ADF, double %4048, double %4040)
  %4050 = load ptr, ptr %7, align 8, !tbaa !9
  %4051 = load i32, ptr %12, align 4, !tbaa !5
  %4052 = load i32, ptr %8, align 4, !tbaa !5
  %4053 = mul nsw i32 7, %4052
  %4054 = add nsw i32 %4051, %4053
  %4055 = sext i32 %4054 to i64
  %4056 = getelementptr inbounds double, ptr %4050, i64 %4055
  %4057 = load double, ptr %4056, align 8, !tbaa !11
  %4058 = call double @llvm.fmuladd.f64(double 0xBFDFFE63E285177B, double %4057, double %4049)
  %4059 = load ptr, ptr %7, align 8, !tbaa !9
  %4060 = load i32, ptr %12, align 4, !tbaa !5
  %4061 = load i32, ptr %8, align 4, !tbaa !5
  %4062 = mul nsw i32 8, %4061
  %4063 = add nsw i32 %4060, %4062
  %4064 = sext i32 %4063 to i64
  %4065 = getelementptr inbounds double, ptr %4059, i64 %4064
  %4066 = load double, ptr %4065, align 8, !tbaa !11
  %4067 = call double @llvm.fmuladd.f64(double 0x4000E9CE75C2FBF6, double %4066, double %4058)
  %4068 = load ptr, ptr %7, align 8, !tbaa !9
  %4069 = load i32, ptr %12, align 4, !tbaa !5
  %4070 = load i32, ptr %8, align 4, !tbaa !5
  %4071 = mul nsw i32 9, %4070
  %4072 = add nsw i32 %4069, %4071
  %4073 = sext i32 %4072 to i64
  %4074 = getelementptr inbounds double, ptr %4068, i64 %4073
  %4075 = load double, ptr %4074, align 8, !tbaa !11
  %4076 = call double @llvm.fmuladd.f64(double 0x3FF31D88B253B084, double %4075, double %4067)
  %4077 = load ptr, ptr %7, align 8, !tbaa !9
  %4078 = load i32, ptr %12, align 4, !tbaa !5
  %4079 = load i32, ptr %8, align 4, !tbaa !5
  %4080 = mul nsw i32 10, %4079
  %4081 = add nsw i32 %4078, %4080
  %4082 = sext i32 %4081 to i64
  %4083 = getelementptr inbounds double, ptr %4077, i64 %4082
  %4084 = load double, ptr %4083, align 8, !tbaa !11
  %4085 = call double @llvm.fmuladd.f64(double 0x3FF2343957F3A8AA, double %4084, double %4076)
  %4086 = load ptr, ptr %7, align 8, !tbaa !9
  %4087 = load i32, ptr %12, align 4, !tbaa !5
  %4088 = load i32, ptr %8, align 4, !tbaa !5
  %4089 = mul nsw i32 11, %4088
  %4090 = add nsw i32 %4087, %4089
  %4091 = sext i32 %4090 to i64
  %4092 = getelementptr inbounds double, ptr %4086, i64 %4091
  %4093 = load double, ptr %4092, align 8, !tbaa !11
  %4094 = call double @llvm.fmuladd.f64(double 0xBFEE712F1EF7D896, double %4093, double %4085)
  %4095 = load ptr, ptr %7, align 8, !tbaa !9
  %4096 = load i32, ptr %12, align 4, !tbaa !5
  %4097 = load i32, ptr %8, align 4, !tbaa !5
  %4098 = mul nsw i32 12, %4097
  %4099 = add nsw i32 %4096, %4098
  %4100 = sext i32 %4099 to i64
  %4101 = getelementptr inbounds double, ptr %4095, i64 %4100
  %4102 = load double, ptr %4101, align 8, !tbaa !11
  %4103 = call double @llvm.fmuladd.f64(double 0xBCC00C78C6295034, double %4102, double %4094)
  %4104 = load ptr, ptr %7, align 8, !tbaa !9
  %4105 = load i32, ptr %12, align 4, !tbaa !5
  %4106 = load i32, ptr %8, align 4, !tbaa !5
  %4107 = mul nsw i32 13, %4106
  %4108 = add nsw i32 %4105, %4107
  %4109 = sext i32 %4108 to i64
  %4110 = getelementptr inbounds double, ptr %4104, i64 %4109
  %4111 = load double, ptr %4110, align 8, !tbaa !11
  %4112 = call double @llvm.fmuladd.f64(double 0xBCA515E72A62BD71, double %4111, double %4103)
  %4113 = load ptr, ptr %7, align 8, !tbaa !9
  %4114 = load i32, ptr %12, align 4, !tbaa !5
  %4115 = load i32, ptr %8, align 4, !tbaa !5
  %4116 = mul nsw i32 14, %4115
  %4117 = add nsw i32 %4114, %4116
  %4118 = sext i32 %4117 to i64
  %4119 = getelementptr inbounds double, ptr %4113, i64 %4118
  %4120 = load double, ptr %4119, align 8, !tbaa !11
  %4121 = call double @llvm.fmuladd.f64(double 0xBCC440052B0B6591, double %4120, double %4112)
  %4122 = load ptr, ptr %7, align 8, !tbaa !9
  %4123 = load i32, ptr %12, align 4, !tbaa !5
  %4124 = load i32, ptr %8, align 4, !tbaa !5
  %4125 = mul nsw i32 15, %4124
  %4126 = add nsw i32 %4123, %4125
  %4127 = sext i32 %4126 to i64
  %4128 = getelementptr inbounds double, ptr %4122, i64 %4127
  %4129 = load double, ptr %4128, align 8, !tbaa !11
  %4130 = call double @llvm.fmuladd.f64(double 0x3CB5037F708D2B40, double %4129, double %4121)
  %4131 = load ptr, ptr %7, align 8, !tbaa !9
  %4132 = load i32, ptr %12, align 4, !tbaa !5
  %4133 = load i32, ptr %8, align 4, !tbaa !5
  %4134 = mul nsw i32 16, %4133
  %4135 = add nsw i32 %4132, %4134
  %4136 = sext i32 %4135 to i64
  %4137 = getelementptr inbounds double, ptr %4131, i64 %4136
  %4138 = load double, ptr %4137, align 8, !tbaa !11
  %4139 = call double @llvm.fmuladd.f64(double 0x3CC9C5D37CDA2F2D, double %4138, double %4130)
  %4140 = load ptr, ptr %7, align 8, !tbaa !9
  %4141 = load i32, ptr %12, align 4, !tbaa !5
  %4142 = load i32, ptr %8, align 4, !tbaa !5
  %4143 = mul nsw i32 17, %4142
  %4144 = add nsw i32 %4141, %4143
  %4145 = sext i32 %4144 to i64
  %4146 = getelementptr inbounds double, ptr %4140, i64 %4145
  %4147 = load double, ptr %4146, align 8, !tbaa !11
  %4148 = call double @llvm.fmuladd.f64(double 0x3CCF6C49D3A9D98C, double %4147, double %4139)
  %4149 = load ptr, ptr %7, align 8, !tbaa !9
  %4150 = load i32, ptr %12, align 4, !tbaa !5
  %4151 = load i32, ptr %8, align 4, !tbaa !5
  %4152 = mul nsw i32 18, %4151
  %4153 = add nsw i32 %4150, %4152
  %4154 = sext i32 %4153 to i64
  %4155 = getelementptr inbounds double, ptr %4149, i64 %4154
  %4156 = load double, ptr %4155, align 8, !tbaa !11
  %4157 = call double @llvm.fmuladd.f64(double 0x3CAC37DE4880EADE, double %4156, double %4148)
  %4158 = load ptr, ptr %7, align 8, !tbaa !9
  %4159 = load i32, ptr %12, align 4, !tbaa !5
  %4160 = load i32, ptr %8, align 4, !tbaa !5
  %4161 = mul nsw i32 19, %4160
  %4162 = add nsw i32 %4159, %4161
  %4163 = sext i32 %4162 to i64
  %4164 = getelementptr inbounds double, ptr %4158, i64 %4163
  %4165 = load double, ptr %4164, align 8, !tbaa !11
  %4166 = call double @llvm.fmuladd.f64(double 0x3C8A879ECD0AD1E9, double %4165, double %4157)
  %4167 = load ptr, ptr %7, align 8, !tbaa !9
  %4168 = load i32, ptr %12, align 4, !tbaa !5
  %4169 = load i32, ptr %8, align 4, !tbaa !5
  %4170 = mul nsw i32 20, %4169
  %4171 = add nsw i32 %4168, %4170
  %4172 = sext i32 %4171 to i64
  %4173 = getelementptr inbounds double, ptr %4167, i64 %4172
  %4174 = load double, ptr %4173, align 8, !tbaa !11
  %4175 = call double @llvm.fmuladd.f64(double 0xBC59ACE05CE0B300, double %4174, double %4166)
  %4176 = load ptr, ptr %7, align 8, !tbaa !9
  %4177 = load i32, ptr %12, align 4, !tbaa !5
  %4178 = load i32, ptr %8, align 4, !tbaa !5
  %4179 = mul nsw i32 21, %4178
  %4180 = add nsw i32 %4177, %4179
  %4181 = sext i32 %4180 to i64
  %4182 = getelementptr inbounds double, ptr %4176, i64 %4181
  %4183 = load double, ptr %4182, align 8, !tbaa !11
  %4184 = call double @llvm.fmuladd.f64(double 0x3CB3FD64226E0B00, double %4183, double %4175)
  %4185 = load ptr, ptr %7, align 8, !tbaa !9
  %4186 = load i32, ptr %12, align 4, !tbaa !5
  %4187 = load i32, ptr %8, align 4, !tbaa !5
  %4188 = mul nsw i32 22, %4187
  %4189 = add nsw i32 %4186, %4188
  %4190 = sext i32 %4189 to i64
  %4191 = getelementptr inbounds double, ptr %4185, i64 %4190
  %4192 = load double, ptr %4191, align 8, !tbaa !11
  %4193 = call double @llvm.fmuladd.f64(double 0xBCA6BB73EC8236F2, double %4192, double %4184)
  %4194 = load ptr, ptr %7, align 8, !tbaa !9
  %4195 = load i32, ptr %12, align 4, !tbaa !5
  %4196 = load i32, ptr %8, align 4, !tbaa !5
  %4197 = mul nsw i32 23, %4196
  %4198 = add nsw i32 %4195, %4197
  %4199 = sext i32 %4198 to i64
  %4200 = getelementptr inbounds double, ptr %4194, i64 %4199
  %4201 = load double, ptr %4200, align 8, !tbaa !11
  %4202 = call double @llvm.fmuladd.f64(double 0xBCA83336C71F9743, double %4201, double %4193)
  %4203 = load ptr, ptr %7, align 8, !tbaa !9
  %4204 = load i32, ptr %12, align 4, !tbaa !5
  %4205 = load i32, ptr %8, align 4, !tbaa !5
  %4206 = mul nsw i32 24, %4205
  %4207 = add nsw i32 %4204, %4206
  %4208 = sext i32 %4207 to i64
  %4209 = getelementptr inbounds double, ptr %4203, i64 %4208
  %4210 = load double, ptr %4209, align 8, !tbaa !11
  %4211 = call double @llvm.fmuladd.f64(double 0xBFDFFE63E2851764, double %4210, double %4202)
  %4212 = load ptr, ptr %7, align 8, !tbaa !9
  %4213 = load i32, ptr %12, align 4, !tbaa !5
  %4214 = load i32, ptr %8, align 4, !tbaa !5
  %4215 = mul nsw i32 25, %4214
  %4216 = add nsw i32 %4213, %4215
  %4217 = sext i32 %4216 to i64
  %4218 = getelementptr inbounds double, ptr %4212, i64 %4217
  %4219 = load double, ptr %4218, align 8, !tbaa !11
  %4220 = call double @llvm.fmuladd.f64(double 0xBFE1EC4181248AE3, double %4219, double %4211)
  %4221 = load ptr, ptr %7, align 8, !tbaa !9
  %4222 = load i32, ptr %12, align 4, !tbaa !5
  %4223 = load i32, ptr %8, align 4, !tbaa !5
  %4224 = mul nsw i32 26, %4223
  %4225 = add nsw i32 %4222, %4224
  %4226 = sext i32 %4225 to i64
  %4227 = getelementptr inbounds double, ptr %4221, i64 %4226
  %4228 = load double, ptr %4227, align 8, !tbaa !11
  %4229 = call double @llvm.fmuladd.f64(double 0x4000E9CE75C2FBF6, double %4228, double %4220)
  %4230 = load ptr, ptr %7, align 8, !tbaa !9
  %4231 = load i32, ptr %12, align 4, !tbaa !5
  %4232 = load i32, ptr %8, align 4, !tbaa !5
  %4233 = mul nsw i32 27, %4232
  %4234 = add nsw i32 %4231, %4233
  %4235 = sext i32 %4234 to i64
  %4236 = getelementptr inbounds double, ptr %4230, i64 %4235
  %4237 = load double, ptr %4236, align 8, !tbaa !11
  %4238 = call double @llvm.fmuladd.f64(double 0x3FF2343957F3A8AF, double %4237, double %4229)
  %4239 = load ptr, ptr %7, align 8, !tbaa !9
  %4240 = load i32, ptr %12, align 4, !tbaa !5
  %4241 = load i32, ptr %8, align 4, !tbaa !5
  %4242 = mul nsw i32 28, %4241
  %4243 = add nsw i32 %4240, %4242
  %4244 = sext i32 %4243 to i64
  %4245 = getelementptr inbounds double, ptr %4239, i64 %4244
  %4246 = load double, ptr %4245, align 8, !tbaa !11
  %4247 = call double @llvm.fmuladd.f64(double 0x3FF31D88B253B07F, double %4246, double %4238)
  %4248 = load ptr, ptr %7, align 8, !tbaa !9
  %4249 = load i32, ptr %12, align 4, !tbaa !5
  %4250 = load i32, ptr %8, align 4, !tbaa !5
  %4251 = mul nsw i32 29, %4250
  %4252 = add nsw i32 %4249, %4251
  %4253 = sext i32 %4252 to i64
  %4254 = getelementptr inbounds double, ptr %4248, i64 %4253
  %4255 = load double, ptr %4254, align 8, !tbaa !11
  %4256 = call double @llvm.fmuladd.f64(double 0xBFEE712F1EF7D8A1, double %4255, double %4247)
  %4257 = load ptr, ptr %7, align 8, !tbaa !9
  %4258 = load i32, ptr %12, align 4, !tbaa !5
  %4259 = load i32, ptr %8, align 4, !tbaa !5
  %4260 = mul nsw i32 30, %4259
  %4261 = add nsw i32 %4258, %4260
  %4262 = sext i32 %4261 to i64
  %4263 = getelementptr inbounds double, ptr %4257, i64 %4262
  %4264 = load double, ptr %4263, align 8, !tbaa !11
  %4265 = call double @llvm.fmuladd.f64(double 0xBCC19561BA4C976A, double %4264, double %4256)
  %4266 = load ptr, ptr %7, align 8, !tbaa !9
  %4267 = load i32, ptr %12, align 4, !tbaa !5
  %4268 = load i32, ptr %8, align 4, !tbaa !5
  %4269 = mul nsw i32 31, %4268
  %4270 = add nsw i32 %4267, %4269
  %4271 = sext i32 %4270 to i64
  %4272 = getelementptr inbounds double, ptr %4266, i64 %4271
  %4273 = load double, ptr %4272, align 8, !tbaa !11
  %4274 = call double @llvm.fmuladd.f64(double 0x3C8561CA2243E962, double %4273, double %4265)
  %4275 = load ptr, ptr %7, align 8, !tbaa !9
  %4276 = load i32, ptr %12, align 4, !tbaa !5
  %4277 = load i32, ptr %8, align 4, !tbaa !5
  %4278 = mul nsw i32 32, %4277
  %4279 = add nsw i32 %4276, %4278
  %4280 = sext i32 %4279 to i64
  %4281 = getelementptr inbounds double, ptr %4275, i64 %4280
  %4282 = load double, ptr %4281, align 8, !tbaa !11
  %4283 = call double @llvm.fmuladd.f64(double 0xBCCBC809825B5E43, double %4282, double %4274)
  %4284 = load ptr, ptr %7, align 8, !tbaa !9
  %4285 = load i32, ptr %12, align 4, !tbaa !5
  %4286 = load i32, ptr %8, align 4, !tbaa !5
  %4287 = mul nsw i32 33, %4286
  %4288 = add nsw i32 %4285, %4287
  %4289 = sext i32 %4288 to i64
  %4290 = getelementptr inbounds double, ptr %4284, i64 %4289
  %4291 = load double, ptr %4290, align 8, !tbaa !11
  %4292 = call double @llvm.fmuladd.f64(double 0xBC98B3084FB90D1C, double %4291, double %4283)
  %4293 = load ptr, ptr %7, align 8, !tbaa !9
  %4294 = load i32, ptr %12, align 4, !tbaa !5
  %4295 = load i32, ptr %8, align 4, !tbaa !5
  %4296 = mul nsw i32 34, %4295
  %4297 = add nsw i32 %4294, %4296
  %4298 = sext i32 %4297 to i64
  %4299 = getelementptr inbounds double, ptr %4293, i64 %4298
  %4300 = load double, ptr %4299, align 8, !tbaa !11
  %4301 = call double @llvm.fmuladd.f64(double 0x3CD0052A8CC0F683, double %4300, double %4292)
  %4302 = load ptr, ptr %7, align 8, !tbaa !9
  %4303 = load i32, ptr %12, align 4, !tbaa !5
  %4304 = load i32, ptr %8, align 4, !tbaa !5
  %4305 = mul nsw i32 35, %4304
  %4306 = add nsw i32 %4303, %4305
  %4307 = sext i32 %4306 to i64
  %4308 = getelementptr inbounds double, ptr %4302, i64 %4307
  %4309 = load double, ptr %4308, align 8, !tbaa !11
  %4310 = call double @llvm.fmuladd.f64(double 0x3CD01543965B219E, double %4309, double %4301)
  %4311 = load ptr, ptr %7, align 8, !tbaa !9
  %4312 = load i32, ptr %12, align 4, !tbaa !5
  %4313 = load i32, ptr %8, align 4, !tbaa !5
  %4314 = mul nsw i32 36, %4313
  %4315 = add nsw i32 %4312, %4314
  %4316 = sext i32 %4315 to i64
  %4317 = getelementptr inbounds double, ptr %4311, i64 %4316
  %4318 = load double, ptr %4317, align 8, !tbaa !11
  %4319 = call double @llvm.fmuladd.f64(double 0x3CE8DCA4F0107014, double %4318, double %4310)
  %4320 = load ptr, ptr %7, align 8, !tbaa !9
  %4321 = load i32, ptr %12, align 4, !tbaa !5
  %4322 = load i32, ptr %8, align 4, !tbaa !5
  %4323 = mul nsw i32 37, %4322
  %4324 = add nsw i32 %4321, %4323
  %4325 = sext i32 %4324 to i64
  %4326 = getelementptr inbounds double, ptr %4320, i64 %4325
  %4327 = load double, ptr %4326, align 8, !tbaa !11
  %4328 = call double @llvm.fmuladd.f64(double 0x3CE800B5754B32D9, double %4327, double %4319)
  %4329 = load ptr, ptr %7, align 8, !tbaa !9
  %4330 = load i32, ptr %12, align 4, !tbaa !5
  %4331 = load i32, ptr %8, align 4, !tbaa !5
  %4332 = mul nsw i32 38, %4331
  %4333 = add nsw i32 %4330, %4332
  %4334 = sext i32 %4333 to i64
  %4335 = getelementptr inbounds double, ptr %4329, i64 %4334
  %4336 = load double, ptr %4335, align 8, !tbaa !11
  %4337 = call double @llvm.fmuladd.f64(double 0xBFF9D1E43E6CC164, double %4336, double %4328)
  %4338 = load ptr, ptr %7, align 8, !tbaa !9
  %4339 = load i32, ptr %12, align 4, !tbaa !5
  %4340 = load i32, ptr %8, align 4, !tbaa !5
  %4341 = mul nsw i32 39, %4340
  %4342 = add nsw i32 %4339, %4341
  %4343 = sext i32 %4342 to i64
  %4344 = getelementptr inbounds double, ptr %4338, i64 %4343
  %4345 = load double, ptr %4344, align 8, !tbaa !11
  %4346 = call double @llvm.fmuladd.f64(double 0xBCFBFD7099D16E59, double %4345, double %4337)
  %4347 = load ptr, ptr %7, align 8, !tbaa !9
  %4348 = load i32, ptr %12, align 4, !tbaa !5
  %4349 = load i32, ptr %8, align 4, !tbaa !5
  %4350 = mul nsw i32 40, %4349
  %4351 = add nsw i32 %4348, %4350
  %4352 = sext i32 %4351 to i64
  %4353 = getelementptr inbounds double, ptr %4347, i64 %4352
  %4354 = load double, ptr %4353, align 8, !tbaa !11
  %4355 = call double @llvm.fmuladd.f64(double 0xBCFA23551C795BA5, double %4354, double %4346)
  %4356 = load ptr, ptr %7, align 8, !tbaa !9
  %4357 = load i32, ptr %12, align 4, !tbaa !5
  %4358 = load i32, ptr %8, align 4, !tbaa !5
  %4359 = mul nsw i32 41, %4358
  %4360 = add nsw i32 %4357, %4359
  %4361 = sext i32 %4360 to i64
  %4362 = getelementptr inbounds double, ptr %4356, i64 %4361
  %4363 = load double, ptr %4362, align 8, !tbaa !11
  %4364 = call double @llvm.fmuladd.f64(double 0x3CD86765A1B41E6D, double %4363, double %4355)
  %4365 = load ptr, ptr %7, align 8, !tbaa !9
  %4366 = load i32, ptr %12, align 4, !tbaa !5
  %4367 = load i32, ptr %8, align 4, !tbaa !5
  %4368 = mul nsw i32 42, %4367
  %4369 = add nsw i32 %4366, %4368
  %4370 = sext i32 %4369 to i64
  %4371 = getelementptr inbounds double, ptr %4365, i64 %4370
  %4372 = load double, ptr %4371, align 8, !tbaa !11
  %4373 = call double @llvm.fmuladd.f64(double 0xBC785D904A774BD5, double %4372, double %4364)
  %4374 = load ptr, ptr %7, align 8, !tbaa !9
  %4375 = load i32, ptr %12, align 4, !tbaa !5
  %4376 = load i32, ptr %8, align 4, !tbaa !5
  %4377 = mul nsw i32 43, %4376
  %4378 = add nsw i32 %4375, %4377
  %4379 = sext i32 %4378 to i64
  %4380 = getelementptr inbounds double, ptr %4374, i64 %4379
  %4381 = load double, ptr %4380, align 8, !tbaa !11
  %4382 = call double @llvm.fmuladd.f64(double 0x3C5D818C6ADA883D, double %4381, double %4373)
  %4383 = load ptr, ptr %7, align 8, !tbaa !9
  %4384 = load i32, ptr %12, align 4, !tbaa !5
  %4385 = load i32, ptr %8, align 4, !tbaa !5
  %4386 = mul nsw i32 44, %4385
  %4387 = add nsw i32 %4384, %4386
  %4388 = sext i32 %4387 to i64
  %4389 = getelementptr inbounds double, ptr %4383, i64 %4388
  %4390 = load double, ptr %4389, align 8, !tbaa !11
  %4391 = call double @llvm.fmuladd.f64(double 0x3C5D818C6ADA811C, double %4390, double %4382)
  %4392 = load ptr, ptr %7, align 8, !tbaa !9
  %4393 = load i32, ptr %12, align 4, !tbaa !5
  %4394 = load i32, ptr %8, align 4, !tbaa !5
  %4395 = mul nsw i32 45, %4394
  %4396 = add nsw i32 %4393, %4395
  %4397 = sext i32 %4396 to i64
  %4398 = getelementptr inbounds double, ptr %4392, i64 %4397
  %4399 = load double, ptr %4398, align 8, !tbaa !11
  %4400 = call double @llvm.fmuladd.f64(double 0x3C6988DC43D64BED, double %4399, double %4391)
  %4401 = load ptr, ptr %7, align 8, !tbaa !9
  %4402 = load i32, ptr %12, align 4, !tbaa !5
  %4403 = load i32, ptr %8, align 4, !tbaa !5
  %4404 = mul nsw i32 46, %4403
  %4405 = add nsw i32 %4402, %4404
  %4406 = sext i32 %4405 to i64
  %4407 = getelementptr inbounds double, ptr %4401, i64 %4406
  %4408 = load double, ptr %4407, align 8, !tbaa !11
  %4409 = call double @llvm.fmuladd.f64(double 0xBC6B27A40CE11C6E, double %4408, double %4400)
  %4410 = load ptr, ptr %7, align 8, !tbaa !9
  %4411 = load i32, ptr %12, align 4, !tbaa !5
  %4412 = load i32, ptr %8, align 4, !tbaa !5
  %4413 = mul nsw i32 47, %4412
  %4414 = add nsw i32 %4411, %4413
  %4415 = sext i32 %4414 to i64
  %4416 = getelementptr inbounds double, ptr %4410, i64 %4415
  %4417 = load double, ptr %4416, align 8, !tbaa !11
  %4418 = call double @llvm.fmuladd.f64(double 0xBC8EC9E9033846C9, double %4417, double %4409)
  %4419 = load ptr, ptr %7, align 8, !tbaa !9
  %4420 = load i32, ptr %12, align 4, !tbaa !5
  %4421 = load i32, ptr %8, align 4, !tbaa !5
  %4422 = mul nsw i32 48, %4421
  %4423 = add nsw i32 %4420, %4422
  %4424 = sext i32 %4423 to i64
  %4425 = getelementptr inbounds double, ptr %4419, i64 %4424
  %4426 = load double, ptr %4425, align 8, !tbaa !11
  %4427 = call double @llvm.fmuladd.f64(double 0xBCE8DCA4F0107014, double %4426, double %4418)
  %4428 = load ptr, ptr %7, align 8, !tbaa !9
  %4429 = load i32, ptr %12, align 4, !tbaa !5
  %4430 = load i32, ptr %8, align 4, !tbaa !5
  %4431 = mul nsw i32 49, %4430
  %4432 = add nsw i32 %4429, %4431
  %4433 = sext i32 %4432 to i64
  %4434 = getelementptr inbounds double, ptr %4428, i64 %4433
  %4435 = load double, ptr %4434, align 8, !tbaa !11
  %4436 = call double @llvm.fmuladd.f64(double 0xBCE800B5754B32D7, double %4435, double %4427)
  %4437 = load ptr, ptr %7, align 8, !tbaa !9
  %4438 = load i32, ptr %12, align 4, !tbaa !5
  %4439 = load i32, ptr %8, align 4, !tbaa !5
  %4440 = mul nsw i32 50, %4439
  %4441 = add nsw i32 %4438, %4440
  %4442 = sext i32 %4441 to i64
  %4443 = getelementptr inbounds double, ptr %4437, i64 %4442
  %4444 = load double, ptr %4443, align 8, !tbaa !11
  %4445 = call double @llvm.fmuladd.f64(double 0x3FF9D1E43E6CC164, double %4444, double %4436)
  %4446 = load ptr, ptr %7, align 8, !tbaa !9
  %4447 = load i32, ptr %12, align 4, !tbaa !5
  %4448 = load i32, ptr %8, align 4, !tbaa !5
  %4449 = mul nsw i32 51, %4448
  %4450 = add nsw i32 %4447, %4449
  %4451 = sext i32 %4450 to i64
  %4452 = getelementptr inbounds double, ptr %4446, i64 %4451
  %4453 = load double, ptr %4452, align 8, !tbaa !11
  %4454 = call double @llvm.fmuladd.f64(double 0x3CFBFD7099D16E5A, double %4453, double %4445)
  %4455 = load ptr, ptr %7, align 8, !tbaa !9
  %4456 = load i32, ptr %12, align 4, !tbaa !5
  %4457 = load i32, ptr %8, align 4, !tbaa !5
  %4458 = mul nsw i32 52, %4457
  %4459 = add nsw i32 %4456, %4458
  %4460 = sext i32 %4459 to i64
  %4461 = getelementptr inbounds double, ptr %4455, i64 %4460
  %4462 = load double, ptr %4461, align 8, !tbaa !11
  %4463 = call double @llvm.fmuladd.f64(double 0x3CF9F3551C795BA8, double %4462, double %4454)
  %4464 = load ptr, ptr %7, align 8, !tbaa !9
  %4465 = load i32, ptr %12, align 4, !tbaa !5
  %4466 = load i32, ptr %8, align 4, !tbaa !5
  %4467 = mul nsw i32 53, %4466
  %4468 = add nsw i32 %4465, %4467
  %4469 = sext i32 %4468 to i64
  %4470 = getelementptr inbounds double, ptr %4464, i64 %4469
  %4471 = load double, ptr %4470, align 8, !tbaa !11
  %4472 = call double @llvm.fmuladd.f64(double 0xBCD92765A1B41E6B, double %4471, double %4463)
  store double %4472, ptr %11, align 8, !tbaa !11
  %4473 = load double, ptr %11, align 8, !tbaa !11
  %4474 = load ptr, ptr %9, align 8, !tbaa !9
  %4475 = load i32, ptr %12, align 4, !tbaa !5
  %4476 = load i32, ptr %10, align 4, !tbaa !5
  %4477 = mul nsw i32 8, %4476
  %4478 = add nsw i32 %4475, %4477
  %4479 = sext i32 %4478 to i64
  %4480 = getelementptr inbounds double, ptr %4474, i64 %4479
  %4481 = load double, ptr %4480, align 8, !tbaa !11
  %4482 = fadd double %4481, %4473
  store double %4482, ptr %4480, align 8, !tbaa !11
  %4483 = load ptr, ptr %7, align 8, !tbaa !9
  %4484 = load i32, ptr %12, align 4, !tbaa !5
  %4485 = load i32, ptr %8, align 4, !tbaa !5
  %4486 = mul nsw i32 0, %4485
  %4487 = add nsw i32 %4484, %4486
  %4488 = sext i32 %4487 to i64
  %4489 = getelementptr inbounds double, ptr %4483, i64 %4488
  %4490 = load double, ptr %4489, align 8, !tbaa !11
  %4491 = load ptr, ptr %7, align 8, !tbaa !9
  %4492 = load i32, ptr %12, align 4, !tbaa !5
  %4493 = load i32, ptr %8, align 4, !tbaa !5
  %4494 = mul nsw i32 1, %4493
  %4495 = add nsw i32 %4492, %4494
  %4496 = sext i32 %4495 to i64
  %4497 = getelementptr inbounds double, ptr %4491, i64 %4496
  %4498 = load double, ptr %4497, align 8, !tbaa !11
  %4499 = fmul double 0xBC83FC569180EE5E, %4498
  %4500 = call double @llvm.fmuladd.f64(double 0xBC8EA5ADFAA929A7, double %4490, double %4499)
  %4501 = load ptr, ptr %7, align 8, !tbaa !9
  %4502 = load i32, ptr %12, align 4, !tbaa !5
  %4503 = load i32, ptr %8, align 4, !tbaa !5
  %4504 = mul nsw i32 2, %4503
  %4505 = add nsw i32 %4502, %4504
  %4506 = sext i32 %4505 to i64
  %4507 = getelementptr inbounds double, ptr %4501, i64 %4506
  %4508 = load double, ptr %4507, align 8, !tbaa !11
  %4509 = call double @llvm.fmuladd.f64(double 0xBC6E3A78632E1596, double %4508, double %4500)
  %4510 = load ptr, ptr %7, align 8, !tbaa !9
  %4511 = load i32, ptr %12, align 4, !tbaa !5
  %4512 = load i32, ptr %8, align 4, !tbaa !5
  %4513 = mul nsw i32 3, %4512
  %4514 = add nsw i32 %4511, %4513
  %4515 = sext i32 %4514 to i64
  %4516 = getelementptr inbounds double, ptr %4510, i64 %4515
  %4517 = load double, ptr %4516, align 8, !tbaa !11
  %4518 = call double @llvm.fmuladd.f64(double 0xBC83A74A36148518, double %4517, double %4509)
  %4519 = load ptr, ptr %7, align 8, !tbaa !9
  %4520 = load i32, ptr %12, align 4, !tbaa !5
  %4521 = load i32, ptr %8, align 4, !tbaa !5
  %4522 = mul nsw i32 4, %4521
  %4523 = add nsw i32 %4520, %4522
  %4524 = sext i32 %4523 to i64
  %4525 = getelementptr inbounds double, ptr %4519, i64 %4524
  %4526 = load double, ptr %4525, align 8, !tbaa !11
  %4527 = call double @llvm.fmuladd.f64(double 0x3CB564D90EDE042E, double %4526, double %4518)
  %4528 = load ptr, ptr %7, align 8, !tbaa !9
  %4529 = load i32, ptr %12, align 4, !tbaa !5
  %4530 = load i32, ptr %8, align 4, !tbaa !5
  %4531 = mul nsw i32 5, %4530
  %4532 = add nsw i32 %4529, %4531
  %4533 = sext i32 %4532 to i64
  %4534 = getelementptr inbounds double, ptr %4528, i64 %4533
  %4535 = load double, ptr %4534, align 8, !tbaa !11
  %4536 = call double @llvm.fmuladd.f64(double 0x3C989B6B8C34D144, double %4535, double %4527)
  %4537 = load ptr, ptr %7, align 8, !tbaa !9
  %4538 = load i32, ptr %12, align 4, !tbaa !5
  %4539 = load i32, ptr %8, align 4, !tbaa !5
  %4540 = mul nsw i32 6, %4539
  %4541 = add nsw i32 %4538, %4540
  %4542 = sext i32 %4541 to i64
  %4543 = getelementptr inbounds double, ptr %4537, i64 %4542
  %4544 = load double, ptr %4543, align 8, !tbaa !11
  %4545 = call double @llvm.fmuladd.f64(double 0xBF734721512AF399, double %4544, double %4536)
  %4546 = load ptr, ptr %7, align 8, !tbaa !9
  %4547 = load i32, ptr %12, align 4, !tbaa !5
  %4548 = load i32, ptr %8, align 4, !tbaa !5
  %4549 = mul nsw i32 7, %4548
  %4550 = add nsw i32 %4547, %4549
  %4551 = sext i32 %4550 to i64
  %4552 = getelementptr inbounds double, ptr %4546, i64 %4551
  %4553 = load double, ptr %4552, align 8, !tbaa !11
  %4554 = call double @llvm.fmuladd.f64(double 0x3FF21EFA862DF3DE, double %4553, double %4545)
  %4555 = load ptr, ptr %7, align 8, !tbaa !9
  %4556 = load i32, ptr %12, align 4, !tbaa !5
  %4557 = load i32, ptr %8, align 4, !tbaa !5
  %4558 = mul nsw i32 8, %4557
  %4559 = add nsw i32 %4556, %4558
  %4560 = sext i32 %4559 to i64
  %4561 = getelementptr inbounds double, ptr %4555, i64 %4560
  %4562 = load double, ptr %4561, align 8, !tbaa !11
  %4563 = call double @llvm.fmuladd.f64(double 0xBFF7F19EB1BA88FC, double %4562, double %4554)
  %4564 = load ptr, ptr %7, align 8, !tbaa !9
  %4565 = load i32, ptr %12, align 4, !tbaa !5
  %4566 = load i32, ptr %8, align 4, !tbaa !5
  %4567 = mul nsw i32 9, %4566
  %4568 = add nsw i32 %4565, %4567
  %4569 = sext i32 %4568 to i64
  %4570 = getelementptr inbounds double, ptr %4564, i64 %4569
  %4571 = load double, ptr %4570, align 8, !tbaa !11
  %4572 = call double @llvm.fmuladd.f64(double 0x3FC901A35D55DB50, double %4571, double %4563)
  %4573 = load ptr, ptr %7, align 8, !tbaa !9
  %4574 = load i32, ptr %12, align 4, !tbaa !5
  %4575 = load i32, ptr %8, align 4, !tbaa !5
  %4576 = mul nsw i32 10, %4575
  %4577 = add nsw i32 %4574, %4576
  %4578 = sext i32 %4577 to i64
  %4579 = getelementptr inbounds double, ptr %4573, i64 %4578
  %4580 = load double, ptr %4579, align 8, !tbaa !11
  %4581 = call double @llvm.fmuladd.f64(double 0xBFF48831FA6C703B, double %4580, double %4572)
  %4582 = load ptr, ptr %7, align 8, !tbaa !9
  %4583 = load i32, ptr %12, align 4, !tbaa !5
  %4584 = load i32, ptr %8, align 4, !tbaa !5
  %4585 = mul nsw i32 11, %4584
  %4586 = add nsw i32 %4583, %4585
  %4587 = sext i32 %4586 to i64
  %4588 = getelementptr inbounds double, ptr %4582, i64 %4587
  %4589 = load double, ptr %4588, align 8, !tbaa !11
  %4590 = call double @llvm.fmuladd.f64(double 0x3FF0AF85DD8BD41B, double %4589, double %4581)
  %4591 = load ptr, ptr %7, align 8, !tbaa !9
  %4592 = load i32, ptr %12, align 4, !tbaa !5
  %4593 = load i32, ptr %8, align 4, !tbaa !5
  %4594 = mul nsw i32 12, %4593
  %4595 = add nsw i32 %4592, %4594
  %4596 = sext i32 %4595 to i64
  %4597 = getelementptr inbounds double, ptr %4591, i64 %4596
  %4598 = load double, ptr %4597, align 8, !tbaa !11
  %4599 = call double @llvm.fmuladd.f64(double 0x3CC3E8D573A56FAD, double %4598, double %4590)
  %4600 = load ptr, ptr %7, align 8, !tbaa !9
  %4601 = load i32, ptr %12, align 4, !tbaa !5
  %4602 = load i32, ptr %8, align 4, !tbaa !5
  %4603 = mul nsw i32 13, %4602
  %4604 = add nsw i32 %4601, %4603
  %4605 = sext i32 %4604 to i64
  %4606 = getelementptr inbounds double, ptr %4600, i64 %4605
  %4607 = load double, ptr %4606, align 8, !tbaa !11
  %4608 = call double @llvm.fmuladd.f64(double 0x3C8C4729A9EC58BE, double %4607, double %4599)
  %4609 = load ptr, ptr %7, align 8, !tbaa !9
  %4610 = load i32, ptr %12, align 4, !tbaa !5
  %4611 = load i32, ptr %8, align 4, !tbaa !5
  %4612 = mul nsw i32 14, %4611
  %4613 = add nsw i32 %4610, %4612
  %4614 = sext i32 %4613 to i64
  %4615 = getelementptr inbounds double, ptr %4609, i64 %4614
  %4616 = load double, ptr %4615, align 8, !tbaa !11
  %4617 = call double @llvm.fmuladd.f64(double 0x3CC336335C2A4C90, double %4616, double %4608)
  %4618 = load ptr, ptr %7, align 8, !tbaa !9
  %4619 = load i32, ptr %12, align 4, !tbaa !5
  %4620 = load i32, ptr %8, align 4, !tbaa !5
  %4621 = mul nsw i32 15, %4620
  %4622 = add nsw i32 %4619, %4621
  %4623 = sext i32 %4622 to i64
  %4624 = getelementptr inbounds double, ptr %4618, i64 %4623
  %4625 = load double, ptr %4624, align 8, !tbaa !11
  %4626 = call double @llvm.fmuladd.f64(double 0xBC914F26788AF5CD, double %4625, double %4617)
  %4627 = load ptr, ptr %7, align 8, !tbaa !9
  %4628 = load i32, ptr %12, align 4, !tbaa !5
  %4629 = load i32, ptr %8, align 4, !tbaa !5
  %4630 = mul nsw i32 16, %4629
  %4631 = add nsw i32 %4628, %4630
  %4632 = sext i32 %4631 to i64
  %4633 = getelementptr inbounds double, ptr %4627, i64 %4632
  %4634 = load double, ptr %4633, align 8, !tbaa !11
  %4635 = call double @llvm.fmuladd.f64(double 0xBCC3337EE9A65CF0, double %4634, double %4626)
  %4636 = load ptr, ptr %7, align 8, !tbaa !9
  %4637 = load i32, ptr %12, align 4, !tbaa !5
  %4638 = load i32, ptr %8, align 4, !tbaa !5
  %4639 = mul nsw i32 17, %4638
  %4640 = add nsw i32 %4637, %4639
  %4641 = sext i32 %4640 to i64
  %4642 = getelementptr inbounds double, ptr %4636, i64 %4641
  %4643 = load double, ptr %4642, align 8, !tbaa !11
  %4644 = call double @llvm.fmuladd.f64(double 0xBCCB8879EF13718A, double %4643, double %4635)
  %4645 = load ptr, ptr %7, align 8, !tbaa !9
  %4646 = load i32, ptr %12, align 4, !tbaa !5
  %4647 = load i32, ptr %8, align 4, !tbaa !5
  %4648 = mul nsw i32 18, %4647
  %4649 = add nsw i32 %4646, %4648
  %4650 = sext i32 %4649 to i64
  %4651 = getelementptr inbounds double, ptr %4645, i64 %4650
  %4652 = load double, ptr %4651, align 8, !tbaa !11
  %4653 = call double @llvm.fmuladd.f64(double 0xBCB17D0146688F6C, double %4652, double %4644)
  %4654 = load ptr, ptr %7, align 8, !tbaa !9
  %4655 = load i32, ptr %12, align 4, !tbaa !5
  %4656 = load i32, ptr %8, align 4, !tbaa !5
  %4657 = mul nsw i32 19, %4656
  %4658 = add nsw i32 %4655, %4657
  %4659 = sext i32 %4658 to i64
  %4660 = getelementptr inbounds double, ptr %4654, i64 %4659
  %4661 = load double, ptr %4660, align 8, !tbaa !11
  %4662 = call double @llvm.fmuladd.f64(double 0x3C5F5BA8ADFE37AC, double %4661, double %4653)
  %4663 = load ptr, ptr %7, align 8, !tbaa !9
  %4664 = load i32, ptr %12, align 4, !tbaa !5
  %4665 = load i32, ptr %8, align 4, !tbaa !5
  %4666 = mul nsw i32 20, %4665
  %4667 = add nsw i32 %4664, %4666
  %4668 = sext i32 %4667 to i64
  %4669 = getelementptr inbounds double, ptr %4663, i64 %4668
  %4670 = load double, ptr %4669, align 8, !tbaa !11
  %4671 = call double @llvm.fmuladd.f64(double 0xBC95A97F00B4BD20, double %4670, double %4662)
  %4672 = load ptr, ptr %7, align 8, !tbaa !9
  %4673 = load i32, ptr %12, align 4, !tbaa !5
  %4674 = load i32, ptr %8, align 4, !tbaa !5
  %4675 = mul nsw i32 21, %4674
  %4676 = add nsw i32 %4673, %4675
  %4677 = sext i32 %4676 to i64
  %4678 = getelementptr inbounds double, ptr %4672, i64 %4677
  %4679 = load double, ptr %4678, align 8, !tbaa !11
  %4680 = call double @llvm.fmuladd.f64(double 0x3CB310B8F73ED9E1, double %4679, double %4671)
  %4681 = load ptr, ptr %7, align 8, !tbaa !9
  %4682 = load i32, ptr %12, align 4, !tbaa !5
  %4683 = load i32, ptr %8, align 4, !tbaa !5
  %4684 = mul nsw i32 22, %4683
  %4685 = add nsw i32 %4682, %4684
  %4686 = sext i32 %4685 to i64
  %4687 = getelementptr inbounds double, ptr %4681, i64 %4686
  %4688 = load double, ptr %4687, align 8, !tbaa !11
  %4689 = call double @llvm.fmuladd.f64(double 0x3CB8D84083674869, double %4688, double %4680)
  %4690 = load ptr, ptr %7, align 8, !tbaa !9
  %4691 = load i32, ptr %12, align 4, !tbaa !5
  %4692 = load i32, ptr %8, align 4, !tbaa !5
  %4693 = mul nsw i32 23, %4692
  %4694 = add nsw i32 %4691, %4693
  %4695 = sext i32 %4694 to i64
  %4696 = getelementptr inbounds double, ptr %4690, i64 %4695
  %4697 = load double, ptr %4696, align 8, !tbaa !11
  %4698 = call double @llvm.fmuladd.f64(double 0x3C908864603A2D22, double %4697, double %4689)
  %4699 = load ptr, ptr %7, align 8, !tbaa !9
  %4700 = load i32, ptr %12, align 4, !tbaa !5
  %4701 = load i32, ptr %8, align 4, !tbaa !5
  %4702 = mul nsw i32 24, %4701
  %4703 = add nsw i32 %4700, %4702
  %4704 = sext i32 %4703 to i64
  %4705 = getelementptr inbounds double, ptr %4699, i64 %4704
  %4706 = load double, ptr %4705, align 8, !tbaa !11
  %4707 = call double @llvm.fmuladd.f64(double 0xBFB17C71DD2D5188, double %4706, double %4698)
  %4708 = load ptr, ptr %7, align 8, !tbaa !9
  %4709 = load i32, ptr %12, align 4, !tbaa !5
  %4710 = load i32, ptr %8, align 4, !tbaa !5
  %4711 = mul nsw i32 25, %4710
  %4712 = add nsw i32 %4709, %4711
  %4713 = sext i32 %4712 to i64
  %4714 = getelementptr inbounds double, ptr %4708, i64 %4713
  %4715 = load double, ptr %4714, align 8, !tbaa !11
  %4716 = call double @llvm.fmuladd.f64(double 0x3FF3237A82AF9ED0, double %4715, double %4707)
  %4717 = load ptr, ptr %7, align 8, !tbaa !9
  %4718 = load i32, ptr %12, align 4, !tbaa !5
  %4719 = load i32, ptr %8, align 4, !tbaa !5
  %4720 = mul nsw i32 26, %4719
  %4721 = add nsw i32 %4718, %4720
  %4722 = sext i32 %4721 to i64
  %4723 = getelementptr inbounds double, ptr %4717, i64 %4722
  %4724 = load double, ptr %4723, align 8, !tbaa !11
  %4725 = call double @llvm.fmuladd.f64(double 0xBF76E8A1969E6E00, double %4724, double %4716)
  %4726 = load ptr, ptr %7, align 8, !tbaa !9
  %4727 = load i32, ptr %12, align 4, !tbaa !5
  %4728 = load i32, ptr %8, align 4, !tbaa !5
  %4729 = mul nsw i32 27, %4728
  %4730 = add nsw i32 %4727, %4729
  %4731 = sext i32 %4730 to i64
  %4732 = getelementptr inbounds double, ptr %4726, i64 %4731
  %4733 = load double, ptr %4732, align 8, !tbaa !11
  %4734 = call double @llvm.fmuladd.f64(double 0x3FFBC4AD9C53A55A, double %4733, double %4725)
  %4735 = load ptr, ptr %7, align 8, !tbaa !9
  %4736 = load i32, ptr %12, align 4, !tbaa !5
  %4737 = load i32, ptr %8, align 4, !tbaa !5
  %4738 = mul nsw i32 28, %4737
  %4739 = add nsw i32 %4736, %4738
  %4740 = sext i32 %4739 to i64
  %4741 = getelementptr inbounds double, ptr %4735, i64 %4740
  %4742 = load double, ptr %4741, align 8, !tbaa !11
  %4743 = call double @llvm.fmuladd.f64(double 0x3FC179BD32D3DC59, double %4742, double %4734)
  %4744 = load ptr, ptr %7, align 8, !tbaa !9
  %4745 = load i32, ptr %12, align 4, !tbaa !5
  %4746 = load i32, ptr %8, align 4, !tbaa !5
  %4747 = mul nsw i32 29, %4746
  %4748 = add nsw i32 %4745, %4747
  %4749 = sext i32 %4748 to i64
  %4750 = getelementptr inbounds double, ptr %4744, i64 %4749
  %4751 = load double, ptr %4750, align 8, !tbaa !11
  %4752 = call double @llvm.fmuladd.f64(double 0x3FF1CA3B98F4942B, double %4751, double %4743)
  %4753 = load ptr, ptr %7, align 8, !tbaa !9
  %4754 = load i32, ptr %12, align 4, !tbaa !5
  %4755 = load i32, ptr %8, align 4, !tbaa !5
  %4756 = mul nsw i32 30, %4755
  %4757 = add nsw i32 %4754, %4756
  %4758 = sext i32 %4757 to i64
  %4759 = getelementptr inbounds double, ptr %4753, i64 %4758
  %4760 = load double, ptr %4759, align 8, !tbaa !11
  %4761 = call double @llvm.fmuladd.f64(double 0x3CB0F5FB97E3D132, double %4760, double %4752)
  %4762 = load ptr, ptr %7, align 8, !tbaa !9
  %4763 = load i32, ptr %12, align 4, !tbaa !5
  %4764 = load i32, ptr %8, align 4, !tbaa !5
  %4765 = mul nsw i32 31, %4764
  %4766 = add nsw i32 %4763, %4765
  %4767 = sext i32 %4766 to i64
  %4768 = getelementptr inbounds double, ptr %4762, i64 %4767
  %4769 = load double, ptr %4768, align 8, !tbaa !11
  %4770 = call double @llvm.fmuladd.f64(double 0xBCAEF548FD7930BA, double %4769, double %4761)
  %4771 = load ptr, ptr %7, align 8, !tbaa !9
  %4772 = load i32, ptr %12, align 4, !tbaa !5
  %4773 = load i32, ptr %8, align 4, !tbaa !5
  %4774 = mul nsw i32 32, %4773
  %4775 = add nsw i32 %4772, %4774
  %4776 = sext i32 %4775 to i64
  %4777 = getelementptr inbounds double, ptr %4771, i64 %4776
  %4778 = load double, ptr %4777, align 8, !tbaa !11
  %4779 = call double @llvm.fmuladd.f64(double 0x3CB0EB672BAF686A, double %4778, double %4770)
  %4780 = load ptr, ptr %7, align 8, !tbaa !9
  %4781 = load i32, ptr %12, align 4, !tbaa !5
  %4782 = load i32, ptr %8, align 4, !tbaa !5
  %4783 = mul nsw i32 33, %4782
  %4784 = add nsw i32 %4781, %4783
  %4785 = sext i32 %4784 to i64
  %4786 = getelementptr inbounds double, ptr %4780, i64 %4785
  %4787 = load double, ptr %4786, align 8, !tbaa !11
  %4788 = call double @llvm.fmuladd.f64(double 0xBC978105A5E561C0, double %4787, double %4779)
  %4789 = load ptr, ptr %7, align 8, !tbaa !9
  %4790 = load i32, ptr %12, align 4, !tbaa !5
  %4791 = load i32, ptr %8, align 4, !tbaa !5
  %4792 = mul nsw i32 34, %4791
  %4793 = add nsw i32 %4790, %4792
  %4794 = sext i32 %4793 to i64
  %4795 = getelementptr inbounds double, ptr %4789, i64 %4794
  %4796 = load double, ptr %4795, align 8, !tbaa !11
  %4797 = call double @llvm.fmuladd.f64(double 0x3CA3390DEFF9A3C5, double %4796, double %4788)
  %4798 = load ptr, ptr %7, align 8, !tbaa !9
  %4799 = load i32, ptr %12, align 4, !tbaa !5
  %4800 = load i32, ptr %8, align 4, !tbaa !5
  %4801 = mul nsw i32 35, %4800
  %4802 = add nsw i32 %4799, %4801
  %4803 = sext i32 %4802 to i64
  %4804 = getelementptr inbounds double, ptr %4798, i64 %4803
  %4805 = load double, ptr %4804, align 8, !tbaa !11
  %4806 = call double @llvm.fmuladd.f64(double 0xBCA5931C5A970C57, double %4805, double %4797)
  %4807 = load ptr, ptr %7, align 8, !tbaa !9
  %4808 = load i32, ptr %12, align 4, !tbaa !5
  %4809 = load i32, ptr %8, align 4, !tbaa !5
  %4810 = mul nsw i32 36, %4809
  %4811 = add nsw i32 %4808, %4810
  %4812 = sext i32 %4811 to i64
  %4813 = getelementptr inbounds double, ptr %4807, i64 %4812
  %4814 = load double, ptr %4813, align 8, !tbaa !11
  %4815 = call double @llvm.fmuladd.f64(double 0x3CD010D114C0DB4A, double %4814, double %4806)
  %4816 = load ptr, ptr %7, align 8, !tbaa !9
  %4817 = load i32, ptr %12, align 4, !tbaa !5
  %4818 = load i32, ptr %8, align 4, !tbaa !5
  %4819 = mul nsw i32 37, %4818
  %4820 = add nsw i32 %4817, %4819
  %4821 = sext i32 %4820 to i64
  %4822 = getelementptr inbounds double, ptr %4816, i64 %4821
  %4823 = load double, ptr %4822, align 8, !tbaa !11
  %4824 = call double @llvm.fmuladd.f64(double 0xBCE9BF0282538DD5, double %4823, double %4815)
  %4825 = load ptr, ptr %7, align 8, !tbaa !9
  %4826 = load i32, ptr %12, align 4, !tbaa !5
  %4827 = load i32, ptr %8, align 4, !tbaa !5
  %4828 = mul nsw i32 38, %4827
  %4829 = add nsw i32 %4826, %4828
  %4830 = sext i32 %4829 to i64
  %4831 = getelementptr inbounds double, ptr %4825, i64 %4830
  %4832 = load double, ptr %4831, align 8, !tbaa !11
  %4833 = call double @llvm.fmuladd.f64(double 0xBCE87BEC810A2317, double %4832, double %4824)
  %4834 = load ptr, ptr %7, align 8, !tbaa !9
  %4835 = load i32, ptr %12, align 4, !tbaa !5
  %4836 = load i32, ptr %8, align 4, !tbaa !5
  %4837 = mul nsw i32 39, %4836
  %4838 = add nsw i32 %4835, %4837
  %4839 = sext i32 %4838 to i64
  %4840 = getelementptr inbounds double, ptr %4834, i64 %4839
  %4841 = load double, ptr %4840, align 8, !tbaa !11
  %4842 = call double @llvm.fmuladd.f64(double 0xBFF9D1E43E6CC191, double %4841, double %4833)
  %4843 = load ptr, ptr %7, align 8, !tbaa !9
  %4844 = load i32, ptr %12, align 4, !tbaa !5
  %4845 = load i32, ptr %8, align 4, !tbaa !5
  %4846 = mul nsw i32 40, %4845
  %4847 = add nsw i32 %4844, %4846
  %4848 = sext i32 %4847 to i64
  %4849 = getelementptr inbounds double, ptr %4843, i64 %4848
  %4850 = load double, ptr %4849, align 8, !tbaa !11
  %4851 = call double @llvm.fmuladd.f64(double 0xBCE4241B5B3A7CDD, double %4850, double %4842)
  %4852 = load ptr, ptr %7, align 8, !tbaa !9
  %4853 = load i32, ptr %12, align 4, !tbaa !5
  %4854 = load i32, ptr %8, align 4, !tbaa !5
  %4855 = mul nsw i32 41, %4854
  %4856 = add nsw i32 %4853, %4855
  %4857 = sext i32 %4856 to i64
  %4858 = getelementptr inbounds double, ptr %4852, i64 %4857
  %4859 = load double, ptr %4858, align 8, !tbaa !11
  %4860 = call double @llvm.fmuladd.f64(double 0xBCE4741B5B3A7CDD, double %4859, double %4851)
  %4861 = load ptr, ptr %7, align 8, !tbaa !9
  %4862 = load i32, ptr %12, align 4, !tbaa !5
  %4863 = load i32, ptr %8, align 4, !tbaa !5
  %4864 = mul nsw i32 42, %4863
  %4865 = add nsw i32 %4862, %4864
  %4866 = sext i32 %4865 to i64
  %4867 = getelementptr inbounds double, ptr %4861, i64 %4866
  %4868 = load double, ptr %4867, align 8, !tbaa !11
  %4869 = call double @llvm.fmuladd.f64(double 0x3C8AC8C86FCC44A0, double %4868, double %4860)
  %4870 = load ptr, ptr %7, align 8, !tbaa !9
  %4871 = load i32, ptr %12, align 4, !tbaa !5
  %4872 = load i32, ptr %8, align 4, !tbaa !5
  %4873 = mul nsw i32 43, %4872
  %4874 = add nsw i32 %4871, %4873
  %4875 = sext i32 %4874 to i64
  %4876 = getelementptr inbounds double, ptr %4870, i64 %4875
  %4877 = load double, ptr %4876, align 8, !tbaa !11
  %4878 = call double @llvm.fmuladd.f64(double 0x3C8DA397D166657F, double %4877, double %4869)
  %4879 = load ptr, ptr %7, align 8, !tbaa !9
  %4880 = load i32, ptr %12, align 4, !tbaa !5
  %4881 = load i32, ptr %8, align 4, !tbaa !5
  %4882 = mul nsw i32 44, %4881
  %4883 = add nsw i32 %4880, %4882
  %4884 = sext i32 %4883 to i64
  %4885 = getelementptr inbounds double, ptr %4879, i64 %4884
  %4886 = load double, ptr %4885, align 8, !tbaa !11
  %4887 = call double @llvm.fmuladd.f64(double 0x3C8DA397D1666583, double %4886, double %4878)
  %4888 = load ptr, ptr %7, align 8, !tbaa !9
  %4889 = load i32, ptr %12, align 4, !tbaa !5
  %4890 = load i32, ptr %8, align 4, !tbaa !5
  %4891 = mul nsw i32 45, %4890
  %4892 = add nsw i32 %4889, %4891
  %4893 = sext i32 %4892 to i64
  %4894 = getelementptr inbounds double, ptr %4888, i64 %4893
  %4895 = load double, ptr %4894, align 8, !tbaa !11
  %4896 = call double @llvm.fmuladd.f64(double 0xBC8081F6B934226E, double %4895, double %4887)
  %4897 = load ptr, ptr %7, align 8, !tbaa !9
  %4898 = load i32, ptr %12, align 4, !tbaa !5
  %4899 = load i32, ptr %8, align 4, !tbaa !5
  %4900 = mul nsw i32 46, %4899
  %4901 = add nsw i32 %4898, %4900
  %4902 = sext i32 %4901 to i64
  %4903 = getelementptr inbounds double, ptr %4897, i64 %4902
  %4904 = load double, ptr %4903, align 8, !tbaa !11
  %4905 = call double @llvm.fmuladd.f64(double 0xBC4C700ACB277023, double %4904, double %4896)
  %4906 = load ptr, ptr %7, align 8, !tbaa !9
  %4907 = load i32, ptr %12, align 4, !tbaa !5
  %4908 = load i32, ptr %8, align 4, !tbaa !5
  %4909 = mul nsw i32 47, %4908
  %4910 = add nsw i32 %4907, %4909
  %4911 = sext i32 %4910 to i64
  %4912 = getelementptr inbounds double, ptr %4906, i64 %4911
  %4913 = load double, ptr %4912, align 8, !tbaa !11
  %4914 = call double @llvm.fmuladd.f64(double 0xBC7B8E015964EDEB, double %4913, double %4905)
  %4915 = load ptr, ptr %7, align 8, !tbaa !9
  %4916 = load i32, ptr %12, align 4, !tbaa !5
  %4917 = load i32, ptr %8, align 4, !tbaa !5
  %4918 = mul nsw i32 48, %4917
  %4919 = add nsw i32 %4916, %4918
  %4920 = sext i32 %4919 to i64
  %4921 = getelementptr inbounds double, ptr %4915, i64 %4920
  %4922 = load double, ptr %4921, align 8, !tbaa !11
  %4923 = call double @llvm.fmuladd.f64(double 0xBCD010D114C0DB49, double %4922, double %4914)
  %4924 = load ptr, ptr %7, align 8, !tbaa !9
  %4925 = load i32, ptr %12, align 4, !tbaa !5
  %4926 = load i32, ptr %8, align 4, !tbaa !5
  %4927 = mul nsw i32 49, %4926
  %4928 = add nsw i32 %4925, %4927
  %4929 = sext i32 %4928 to i64
  %4930 = getelementptr inbounds double, ptr %4924, i64 %4929
  %4931 = load double, ptr %4930, align 8, !tbaa !11
  %4932 = call double @llvm.fmuladd.f64(double 0x3CE9BF0282538DD0, double %4931, double %4923)
  %4933 = load ptr, ptr %7, align 8, !tbaa !9
  %4934 = load i32, ptr %12, align 4, !tbaa !5
  %4935 = load i32, ptr %8, align 4, !tbaa !5
  %4936 = mul nsw i32 50, %4935
  %4937 = add nsw i32 %4934, %4936
  %4938 = sext i32 %4937 to i64
  %4939 = getelementptr inbounds double, ptr %4933, i64 %4938
  %4940 = load double, ptr %4939, align 8, !tbaa !11
  %4941 = call double @llvm.fmuladd.f64(double 0x3CE87BEC810A2317, double %4940, double %4932)
  %4942 = load ptr, ptr %7, align 8, !tbaa !9
  %4943 = load i32, ptr %12, align 4, !tbaa !5
  %4944 = load i32, ptr %8, align 4, !tbaa !5
  %4945 = mul nsw i32 51, %4944
  %4946 = add nsw i32 %4943, %4945
  %4947 = sext i32 %4946 to i64
  %4948 = getelementptr inbounds double, ptr %4942, i64 %4947
  %4949 = load double, ptr %4948, align 8, !tbaa !11
  %4950 = call double @llvm.fmuladd.f64(double 0x3FF9D1E43E6CC191, double %4949, double %4941)
  %4951 = load ptr, ptr %7, align 8, !tbaa !9
  %4952 = load i32, ptr %12, align 4, !tbaa !5
  %4953 = load i32, ptr %8, align 4, !tbaa !5
  %4954 = mul nsw i32 52, %4953
  %4955 = add nsw i32 %4952, %4954
  %4956 = sext i32 %4955 to i64
  %4957 = getelementptr inbounds double, ptr %4951, i64 %4956
  %4958 = load double, ptr %4957, align 8, !tbaa !11
  %4959 = call double @llvm.fmuladd.f64(double 0x3CE3D41B5B3A7CE0, double %4958, double %4950)
  %4960 = load ptr, ptr %7, align 8, !tbaa !9
  %4961 = load i32, ptr %12, align 4, !tbaa !5
  %4962 = load i32, ptr %8, align 4, !tbaa !5
  %4963 = mul nsw i32 53, %4962
  %4964 = add nsw i32 %4961, %4963
  %4965 = sext i32 %4964 to i64
  %4966 = getelementptr inbounds double, ptr %4960, i64 %4965
  %4967 = load double, ptr %4966, align 8, !tbaa !11
  %4968 = call double @llvm.fmuladd.f64(double 0x3CE4741B5B3A7CDD, double %4967, double %4959)
  store double %4968, ptr %11, align 8, !tbaa !11
  %4969 = load double, ptr %11, align 8, !tbaa !11
  %4970 = load ptr, ptr %9, align 8, !tbaa !9
  %4971 = load i32, ptr %12, align 4, !tbaa !5
  %4972 = load i32, ptr %10, align 4, !tbaa !5
  %4973 = mul nsw i32 9, %4972
  %4974 = add nsw i32 %4971, %4973
  %4975 = sext i32 %4974 to i64
  %4976 = getelementptr inbounds double, ptr %4970, i64 %4975
  %4977 = load double, ptr %4976, align 8, !tbaa !11
  %4978 = fadd double %4977, %4969
  store double %4978, ptr %4976, align 8, !tbaa !11
  %4979 = load ptr, ptr %7, align 8, !tbaa !9
  %4980 = load i32, ptr %12, align 4, !tbaa !5
  %4981 = load i32, ptr %8, align 4, !tbaa !5
  %4982 = mul nsw i32 0, %4981
  %4983 = add nsw i32 %4980, %4982
  %4984 = sext i32 %4983 to i64
  %4985 = getelementptr inbounds double, ptr %4979, i64 %4984
  %4986 = load double, ptr %4985, align 8, !tbaa !11
  %4987 = load ptr, ptr %7, align 8, !tbaa !9
  %4988 = load i32, ptr %12, align 4, !tbaa !5
  %4989 = load i32, ptr %8, align 4, !tbaa !5
  %4990 = mul nsw i32 1, %4989
  %4991 = add nsw i32 %4988, %4990
  %4992 = sext i32 %4991 to i64
  %4993 = getelementptr inbounds double, ptr %4987, i64 %4992
  %4994 = load double, ptr %4993, align 8, !tbaa !11
  %4995 = fmul double 0x3C97B483C42BAB7C, %4994
  %4996 = call double @llvm.fmuladd.f64(double 0xBCC3A93C9AD8BA3A, double %4986, double %4995)
  %4997 = load ptr, ptr %7, align 8, !tbaa !9
  %4998 = load i32, ptr %12, align 4, !tbaa !5
  %4999 = load i32, ptr %8, align 4, !tbaa !5
  %5000 = mul nsw i32 2, %4999
  %5001 = add nsw i32 %4998, %5000
  %5002 = sext i32 %5001 to i64
  %5003 = getelementptr inbounds double, ptr %4997, i64 %5002
  %5004 = load double, ptr %5003, align 8, !tbaa !11
  %5005 = call double @llvm.fmuladd.f64(double 0x3C71B9B8F47F3248, double %5004, double %4996)
  %5006 = load ptr, ptr %7, align 8, !tbaa !9
  %5007 = load i32, ptr %12, align 4, !tbaa !5
  %5008 = load i32, ptr %8, align 4, !tbaa !5
  %5009 = mul nsw i32 3, %5008
  %5010 = add nsw i32 %5007, %5009
  %5011 = sext i32 %5010 to i64
  %5012 = getelementptr inbounds double, ptr %5006, i64 %5011
  %5013 = load double, ptr %5012, align 8, !tbaa !11
  %5014 = call double @llvm.fmuladd.f64(double 0xBC80C8CA734909F4, double %5013, double %5005)
  %5015 = load ptr, ptr %7, align 8, !tbaa !9
  %5016 = load i32, ptr %12, align 4, !tbaa !5
  %5017 = load i32, ptr %8, align 4, !tbaa !5
  %5018 = mul nsw i32 4, %5017
  %5019 = add nsw i32 %5016, %5018
  %5020 = sext i32 %5019 to i64
  %5021 = getelementptr inbounds double, ptr %5015, i64 %5020
  %5022 = load double, ptr %5021, align 8, !tbaa !11
  %5023 = call double @llvm.fmuladd.f64(double 0x3C9558F6282D8B0C, double %5022, double %5014)
  %5024 = load ptr, ptr %7, align 8, !tbaa !9
  %5025 = load i32, ptr %12, align 4, !tbaa !5
  %5026 = load i32, ptr %8, align 4, !tbaa !5
  %5027 = mul nsw i32 5, %5026
  %5028 = add nsw i32 %5025, %5027
  %5029 = sext i32 %5028 to i64
  %5030 = getelementptr inbounds double, ptr %5024, i64 %5029
  %5031 = load double, ptr %5030, align 8, !tbaa !11
  %5032 = call double @llvm.fmuladd.f64(double 0xBCA238E1A865FF56, double %5031, double %5023)
  %5033 = load ptr, ptr %7, align 8, !tbaa !9
  %5034 = load i32, ptr %12, align 4, !tbaa !5
  %5035 = load i32, ptr %8, align 4, !tbaa !5
  %5036 = mul nsw i32 6, %5035
  %5037 = add nsw i32 %5034, %5036
  %5038 = sext i32 %5037 to i64
  %5039 = getelementptr inbounds double, ptr %5033, i64 %5038
  %5040 = load double, ptr %5039, align 8, !tbaa !11
  %5041 = call double @llvm.fmuladd.f64(double 0x3FF3237A82AF9ECC, double %5040, double %5032)
  %5042 = load ptr, ptr %7, align 8, !tbaa !9
  %5043 = load i32, ptr %12, align 4, !tbaa !5
  %5044 = load i32, ptr %8, align 4, !tbaa !5
  %5045 = mul nsw i32 7, %5044
  %5046 = add nsw i32 %5043, %5045
  %5047 = sext i32 %5046 to i64
  %5048 = getelementptr inbounds double, ptr %5042, i64 %5047
  %5049 = load double, ptr %5048, align 8, !tbaa !11
  %5050 = call double @llvm.fmuladd.f64(double 0xBFB17C71DD2D5180, double %5049, double %5041)
  %5051 = load ptr, ptr %7, align 8, !tbaa !9
  %5052 = load i32, ptr %12, align 4, !tbaa !5
  %5053 = load i32, ptr %8, align 4, !tbaa !5
  %5054 = mul nsw i32 8, %5053
  %5055 = add nsw i32 %5052, %5054
  %5056 = sext i32 %5055 to i64
  %5057 = getelementptr inbounds double, ptr %5051, i64 %5056
  %5058 = load double, ptr %5057, align 8, !tbaa !11
  %5059 = call double @llvm.fmuladd.f64(double 0xBF76E8A1969E7200, double %5058, double %5050)
  %5060 = load ptr, ptr %7, align 8, !tbaa !9
  %5061 = load i32, ptr %12, align 4, !tbaa !5
  %5062 = load i32, ptr %8, align 4, !tbaa !5
  %5063 = mul nsw i32 9, %5062
  %5064 = add nsw i32 %5061, %5063
  %5065 = sext i32 %5064 to i64
  %5066 = getelementptr inbounds double, ptr %5060, i64 %5065
  %5067 = load double, ptr %5066, align 8, !tbaa !11
  %5068 = call double @llvm.fmuladd.f64(double 0x3FC179BD32D3DC6F, double %5067, double %5059)
  %5069 = load ptr, ptr %7, align 8, !tbaa !9
  %5070 = load i32, ptr %12, align 4, !tbaa !5
  %5071 = load i32, ptr %8, align 4, !tbaa !5
  %5072 = mul nsw i32 10, %5071
  %5073 = add nsw i32 %5070, %5072
  %5074 = sext i32 %5073 to i64
  %5075 = getelementptr inbounds double, ptr %5069, i64 %5074
  %5076 = load double, ptr %5075, align 8, !tbaa !11
  %5077 = call double @llvm.fmuladd.f64(double 0x3FFBC4AD9C53A563, double %5076, double %5068)
  %5078 = load ptr, ptr %7, align 8, !tbaa !9
  %5079 = load i32, ptr %12, align 4, !tbaa !5
  %5080 = load i32, ptr %8, align 4, !tbaa !5
  %5081 = mul nsw i32 11, %5080
  %5082 = add nsw i32 %5079, %5081
  %5083 = sext i32 %5082 to i64
  %5084 = getelementptr inbounds double, ptr %5078, i64 %5083
  %5085 = load double, ptr %5084, align 8, !tbaa !11
  %5086 = call double @llvm.fmuladd.f64(double 0x3FF1CA3B98F4942B, double %5085, double %5077)
  %5087 = load ptr, ptr %7, align 8, !tbaa !9
  %5088 = load i32, ptr %12, align 4, !tbaa !5
  %5089 = load i32, ptr %8, align 4, !tbaa !5
  %5090 = mul nsw i32 12, %5089
  %5091 = add nsw i32 %5088, %5090
  %5092 = sext i32 %5091 to i64
  %5093 = getelementptr inbounds double, ptr %5087, i64 %5092
  %5094 = load double, ptr %5093, align 8, !tbaa !11
  %5095 = call double @llvm.fmuladd.f64(double 0xBCA6FBE336F71405, double %5094, double %5086)
  %5096 = load ptr, ptr %7, align 8, !tbaa !9
  %5097 = load i32, ptr %12, align 4, !tbaa !5
  %5098 = load i32, ptr %8, align 4, !tbaa !5
  %5099 = mul nsw i32 13, %5098
  %5100 = add nsw i32 %5097, %5099
  %5101 = sext i32 %5100 to i64
  %5102 = getelementptr inbounds double, ptr %5096, i64 %5101
  %5103 = load double, ptr %5102, align 8, !tbaa !11
  %5104 = call double @llvm.fmuladd.f64(double 0x3C80984B1B374A75, double %5103, double %5095)
  %5105 = load ptr, ptr %7, align 8, !tbaa !9
  %5106 = load i32, ptr %12, align 4, !tbaa !5
  %5107 = load i32, ptr %8, align 4, !tbaa !5
  %5108 = mul nsw i32 14, %5107
  %5109 = add nsw i32 %5106, %5108
  %5110 = sext i32 %5109 to i64
  %5111 = getelementptr inbounds double, ptr %5105, i64 %5110
  %5112 = load double, ptr %5111, align 8, !tbaa !11
  %5113 = call double @llvm.fmuladd.f64(double 0x3C4729477968333F, double %5112, double %5104)
  %5114 = load ptr, ptr %7, align 8, !tbaa !9
  %5115 = load i32, ptr %12, align 4, !tbaa !5
  %5116 = load i32, ptr %8, align 4, !tbaa !5
  %5117 = mul nsw i32 15, %5116
  %5118 = add nsw i32 %5115, %5117
  %5119 = sext i32 %5118 to i64
  %5120 = getelementptr inbounds double, ptr %5114, i64 %5119
  %5121 = load double, ptr %5120, align 8, !tbaa !11
  %5122 = call double @llvm.fmuladd.f64(double 0xBC918F2EE7553E84, double %5121, double %5113)
  %5123 = load ptr, ptr %7, align 8, !tbaa !9
  %5124 = load i32, ptr %12, align 4, !tbaa !5
  %5125 = load i32, ptr %8, align 4, !tbaa !5
  %5126 = mul nsw i32 16, %5125
  %5127 = add nsw i32 %5124, %5126
  %5128 = sext i32 %5127 to i64
  %5129 = getelementptr inbounds double, ptr %5123, i64 %5128
  %5130 = load double, ptr %5129, align 8, !tbaa !11
  %5131 = call double @llvm.fmuladd.f64(double 0xBC63BFDB1A7A0940, double %5130, double %5122)
  %5132 = load ptr, ptr %7, align 8, !tbaa !9
  %5133 = load i32, ptr %12, align 4, !tbaa !5
  %5134 = load i32, ptr %8, align 4, !tbaa !5
  %5135 = mul nsw i32 17, %5134
  %5136 = add nsw i32 %5133, %5135
  %5137 = sext i32 %5136 to i64
  %5138 = getelementptr inbounds double, ptr %5132, i64 %5137
  %5139 = load double, ptr %5138, align 8, !tbaa !11
  %5140 = call double @llvm.fmuladd.f64(double 0x3CAA455C00B239E4, double %5139, double %5131)
  %5141 = load ptr, ptr %7, align 8, !tbaa !9
  %5142 = load i32, ptr %12, align 4, !tbaa !5
  %5143 = load i32, ptr %8, align 4, !tbaa !5
  %5144 = mul nsw i32 18, %5143
  %5145 = add nsw i32 %5142, %5144
  %5146 = sext i32 %5145 to i64
  %5147 = getelementptr inbounds double, ptr %5141, i64 %5146
  %5148 = load double, ptr %5147, align 8, !tbaa !11
  %5149 = call double @llvm.fmuladd.f64(double 0xBCB979BA7B87021B, double %5148, double %5140)
  %5150 = load ptr, ptr %7, align 8, !tbaa !9
  %5151 = load i32, ptr %12, align 4, !tbaa !5
  %5152 = load i32, ptr %8, align 4, !tbaa !5
  %5153 = mul nsw i32 19, %5152
  %5154 = add nsw i32 %5151, %5153
  %5155 = sext i32 %5154 to i64
  %5156 = getelementptr inbounds double, ptr %5150, i64 %5155
  %5157 = load double, ptr %5156, align 8, !tbaa !11
  %5158 = call double @llvm.fmuladd.f64(double 0xBC8C55566D867E4D, double %5157, double %5149)
  %5159 = load ptr, ptr %7, align 8, !tbaa !9
  %5160 = load i32, ptr %12, align 4, !tbaa !5
  %5161 = load i32, ptr %8, align 4, !tbaa !5
  %5162 = mul nsw i32 20, %5161
  %5163 = add nsw i32 %5160, %5162
  %5164 = sext i32 %5163 to i64
  %5165 = getelementptr inbounds double, ptr %5159, i64 %5164
  %5166 = load double, ptr %5165, align 8, !tbaa !11
  %5167 = call double @llvm.fmuladd.f64(double 0x3CAD8296DD370BB5, double %5166, double %5158)
  %5168 = load ptr, ptr %7, align 8, !tbaa !9
  %5169 = load i32, ptr %12, align 4, !tbaa !5
  %5170 = load i32, ptr %8, align 4, !tbaa !5
  %5171 = mul nsw i32 21, %5170
  %5172 = add nsw i32 %5169, %5171
  %5173 = sext i32 %5172 to i64
  %5174 = getelementptr inbounds double, ptr %5168, i64 %5173
  %5175 = load double, ptr %5174, align 8, !tbaa !11
  %5176 = call double @llvm.fmuladd.f64(double 0xBCB6E42765918C02, double %5175, double %5167)
  %5177 = load ptr, ptr %7, align 8, !tbaa !9
  %5178 = load i32, ptr %12, align 4, !tbaa !5
  %5179 = load i32, ptr %8, align 4, !tbaa !5
  %5180 = mul nsw i32 22, %5179
  %5181 = add nsw i32 %5178, %5180
  %5182 = sext i32 %5181 to i64
  %5183 = getelementptr inbounds double, ptr %5177, i64 %5182
  %5184 = load double, ptr %5183, align 8, !tbaa !11
  %5185 = call double @llvm.fmuladd.f64(double 0x3CA25C9DE1FA7E55, double %5184, double %5176)
  %5186 = load ptr, ptr %7, align 8, !tbaa !9
  %5187 = load i32, ptr %12, align 4, !tbaa !5
  %5188 = load i32, ptr %8, align 4, !tbaa !5
  %5189 = mul nsw i32 23, %5188
  %5190 = add nsw i32 %5187, %5189
  %5191 = sext i32 %5190 to i64
  %5192 = getelementptr inbounds double, ptr %5186, i64 %5191
  %5193 = load double, ptr %5192, align 8, !tbaa !11
  %5194 = call double @llvm.fmuladd.f64(double 0x3CA501A6E8F3273C, double %5193, double %5185)
  %5195 = load ptr, ptr %7, align 8, !tbaa !9
  %5196 = load i32, ptr %12, align 4, !tbaa !5
  %5197 = load i32, ptr %8, align 4, !tbaa !5
  %5198 = mul nsw i32 24, %5197
  %5199 = add nsw i32 %5196, %5198
  %5200 = sext i32 %5199 to i64
  %5201 = getelementptr inbounds double, ptr %5195, i64 %5200
  %5202 = load double, ptr %5201, align 8, !tbaa !11
  %5203 = call double @llvm.fmuladd.f64(double 0x3FF21EFA862DF3DA, double %5202, double %5194)
  %5204 = load ptr, ptr %7, align 8, !tbaa !9
  %5205 = load i32, ptr %12, align 4, !tbaa !5
  %5206 = load i32, ptr %8, align 4, !tbaa !5
  %5207 = mul nsw i32 25, %5206
  %5208 = add nsw i32 %5205, %5207
  %5209 = sext i32 %5208 to i64
  %5210 = getelementptr inbounds double, ptr %5204, i64 %5209
  %5211 = load double, ptr %5210, align 8, !tbaa !11
  %5212 = call double @llvm.fmuladd.f64(double 0xBF734721512AF5C1, double %5211, double %5203)
  %5213 = load ptr, ptr %7, align 8, !tbaa !9
  %5214 = load i32, ptr %12, align 4, !tbaa !5
  %5215 = load i32, ptr %8, align 4, !tbaa !5
  %5216 = mul nsw i32 26, %5215
  %5217 = add nsw i32 %5214, %5216
  %5218 = sext i32 %5217 to i64
  %5219 = getelementptr inbounds double, ptr %5213, i64 %5218
  %5220 = load double, ptr %5219, align 8, !tbaa !11
  %5221 = call double @llvm.fmuladd.f64(double 0xBFF7F19EB1BA88FC, double %5220, double %5212)
  %5222 = load ptr, ptr %7, align 8, !tbaa !9
  %5223 = load i32, ptr %12, align 4, !tbaa !5
  %5224 = load i32, ptr %8, align 4, !tbaa !5
  %5225 = mul nsw i32 27, %5224
  %5226 = add nsw i32 %5223, %5225
  %5227 = sext i32 %5226 to i64
  %5228 = getelementptr inbounds double, ptr %5222, i64 %5227
  %5229 = load double, ptr %5228, align 8, !tbaa !11
  %5230 = call double @llvm.fmuladd.f64(double 0xBFF48831FA6C7040, double %5229, double %5221)
  %5231 = load ptr, ptr %7, align 8, !tbaa !9
  %5232 = load i32, ptr %12, align 4, !tbaa !5
  %5233 = load i32, ptr %8, align 4, !tbaa !5
  %5234 = mul nsw i32 28, %5233
  %5235 = add nsw i32 %5232, %5234
  %5236 = sext i32 %5235 to i64
  %5237 = getelementptr inbounds double, ptr %5231, i64 %5236
  %5238 = load double, ptr %5237, align 8, !tbaa !11
  %5239 = call double @llvm.fmuladd.f64(double 0x3FC901A35D55DB91, double %5238, double %5230)
  %5240 = load ptr, ptr %7, align 8, !tbaa !9
  %5241 = load i32, ptr %12, align 4, !tbaa !5
  %5242 = load i32, ptr %8, align 4, !tbaa !5
  %5243 = mul nsw i32 29, %5242
  %5244 = add nsw i32 %5241, %5243
  %5245 = sext i32 %5244 to i64
  %5246 = getelementptr inbounds double, ptr %5240, i64 %5245
  %5247 = load double, ptr %5246, align 8, !tbaa !11
  %5248 = call double @llvm.fmuladd.f64(double 0x3FF0AF85DD8BD41B, double %5247, double %5239)
  %5249 = load ptr, ptr %7, align 8, !tbaa !9
  %5250 = load i32, ptr %12, align 4, !tbaa !5
  %5251 = load i32, ptr %8, align 4, !tbaa !5
  %5252 = mul nsw i32 30, %5251
  %5253 = add nsw i32 %5250, %5252
  %5254 = sext i32 %5253 to i64
  %5255 = getelementptr inbounds double, ptr %5249, i64 %5254
  %5256 = load double, ptr %5255, align 8, !tbaa !11
  %5257 = call double @llvm.fmuladd.f64(double 0x3C818885A14EAAEF, double %5256, double %5248)
  %5258 = load ptr, ptr %7, align 8, !tbaa !9
  %5259 = load i32, ptr %12, align 4, !tbaa !5
  %5260 = load i32, ptr %8, align 4, !tbaa !5
  %5261 = mul nsw i32 31, %5260
  %5262 = add nsw i32 %5259, %5261
  %5263 = sext i32 %5262 to i64
  %5264 = getelementptr inbounds double, ptr %5258, i64 %5263
  %5265 = load double, ptr %5264, align 8, !tbaa !11
  %5266 = call double @llvm.fmuladd.f64(double 0x3CA1FE8D3E4F0FDA, double %5265, double %5257)
  %5267 = load ptr, ptr %7, align 8, !tbaa !9
  %5268 = load i32, ptr %12, align 4, !tbaa !5
  %5269 = load i32, ptr %8, align 4, !tbaa !5
  %5270 = mul nsw i32 32, %5269
  %5271 = add nsw i32 %5268, %5270
  %5272 = sext i32 %5271 to i64
  %5273 = getelementptr inbounds double, ptr %5267, i64 %5272
  %5274 = load double, ptr %5273, align 8, !tbaa !11
  %5275 = call double @llvm.fmuladd.f64(double 0x3CC2430B423E38F7, double %5274, double %5266)
  %5276 = load ptr, ptr %7, align 8, !tbaa !9
  %5277 = load i32, ptr %12, align 4, !tbaa !5
  %5278 = load i32, ptr %8, align 4, !tbaa !5
  %5279 = mul nsw i32 33, %5278
  %5280 = add nsw i32 %5277, %5279
  %5281 = sext i32 %5280 to i64
  %5282 = getelementptr inbounds double, ptr %5276, i64 %5281
  %5283 = load double, ptr %5282, align 8, !tbaa !11
  %5284 = call double @llvm.fmuladd.f64(double 0xBCA2669FC3A56863, double %5283, double %5275)
  %5285 = load ptr, ptr %7, align 8, !tbaa !9
  %5286 = load i32, ptr %12, align 4, !tbaa !5
  %5287 = load i32, ptr %8, align 4, !tbaa !5
  %5288 = mul nsw i32 34, %5287
  %5289 = add nsw i32 %5286, %5288
  %5290 = sext i32 %5289 to i64
  %5291 = getelementptr inbounds double, ptr %5285, i64 %5290
  %5292 = load double, ptr %5291, align 8, !tbaa !11
  %5293 = call double @llvm.fmuladd.f64(double 0xBCBED2A4B49E79D0, double %5292, double %5284)
  %5294 = load ptr, ptr %7, align 8, !tbaa !9
  %5295 = load i32, ptr %12, align 4, !tbaa !5
  %5296 = load i32, ptr %8, align 4, !tbaa !5
  %5297 = mul nsw i32 35, %5296
  %5298 = add nsw i32 %5295, %5297
  %5299 = sext i32 %5298 to i64
  %5300 = getelementptr inbounds double, ptr %5294, i64 %5299
  %5301 = load double, ptr %5300, align 8, !tbaa !11
  %5302 = call double @llvm.fmuladd.f64(double 0xBCB8150AF40905ED, double %5301, double %5293)
  %5303 = load ptr, ptr %7, align 8, !tbaa !9
  %5304 = load i32, ptr %12, align 4, !tbaa !5
  %5305 = load i32, ptr %8, align 4, !tbaa !5
  %5306 = mul nsw i32 36, %5305
  %5307 = add nsw i32 %5304, %5306
  %5308 = sext i32 %5307 to i64
  %5309 = getelementptr inbounds double, ptr %5303, i64 %5308
  %5310 = load double, ptr %5309, align 8, !tbaa !11
  %5311 = call double @llvm.fmuladd.f64(double 0xBCE88765A1B41E6C, double %5310, double %5302)
  %5312 = load ptr, ptr %7, align 8, !tbaa !9
  %5313 = load i32, ptr %12, align 4, !tbaa !5
  %5314 = load i32, ptr %8, align 4, !tbaa !5
  %5315 = mul nsw i32 37, %5314
  %5316 = add nsw i32 %5313, %5315
  %5317 = sext i32 %5316 to i64
  %5318 = getelementptr inbounds double, ptr %5312, i64 %5317
  %5319 = load double, ptr %5318, align 8, !tbaa !11
  %5320 = call double @llvm.fmuladd.f64(double 0x3CC9C6E177DE0848, double %5319, double %5311)
  %5321 = load ptr, ptr %7, align 8, !tbaa !9
  %5322 = load i32, ptr %12, align 4, !tbaa !5
  %5323 = load i32, ptr %8, align 4, !tbaa !5
  %5324 = mul nsw i32 38, %5323
  %5325 = add nsw i32 %5322, %5324
  %5326 = sext i32 %5325 to i64
  %5327 = getelementptr inbounds double, ptr %5321, i64 %5326
  %5328 = load double, ptr %5327, align 8, !tbaa !11
  %5329 = call double @llvm.fmuladd.f64(double 0xBCE7A765A1B41E6C, double %5328, double %5320)
  %5330 = load ptr, ptr %7, align 8, !tbaa !9
  %5331 = load i32, ptr %12, align 4, !tbaa !5
  %5332 = load i32, ptr %8, align 4, !tbaa !5
  %5333 = mul nsw i32 39, %5332
  %5334 = add nsw i32 %5331, %5333
  %5335 = sext i32 %5334 to i64
  %5336 = getelementptr inbounds double, ptr %5330, i64 %5335
  %5337 = load double, ptr %5336, align 8, !tbaa !11
  %5338 = call double @llvm.fmuladd.f64(double 0xBCE0F6FD1753B0C4, double %5337, double %5329)
  %5339 = load ptr, ptr %7, align 8, !tbaa !9
  %5340 = load i32, ptr %12, align 4, !tbaa !5
  %5341 = load i32, ptr %8, align 4, !tbaa !5
  %5342 = mul nsw i32 40, %5341
  %5343 = add nsw i32 %5340, %5342
  %5344 = sext i32 %5343 to i64
  %5345 = getelementptr inbounds double, ptr %5339, i64 %5344
  %5346 = load double, ptr %5345, align 8, !tbaa !11
  %5347 = call double @llvm.fmuladd.f64(double 0xBFF9D1E43E6CC191, double %5346, double %5338)
  %5348 = load ptr, ptr %7, align 8, !tbaa !9
  %5349 = load i32, ptr %12, align 4, !tbaa !5
  %5350 = load i32, ptr %8, align 4, !tbaa !5
  %5351 = mul nsw i32 41, %5350
  %5352 = add nsw i32 %5349, %5351
  %5353 = sext i32 %5352 to i64
  %5354 = getelementptr inbounds double, ptr %5348, i64 %5353
  %5355 = load double, ptr %5354, align 8, !tbaa !11
  %5356 = call double @llvm.fmuladd.f64(double 0xBCE5F2686842D7DB, double %5355, double %5347)
  %5357 = load ptr, ptr %7, align 8, !tbaa !9
  %5358 = load i32, ptr %12, align 4, !tbaa !5
  %5359 = load i32, ptr %8, align 4, !tbaa !5
  %5360 = mul nsw i32 42, %5359
  %5361 = add nsw i32 %5358, %5360
  %5362 = sext i32 %5361 to i64
  %5363 = getelementptr inbounds double, ptr %5357, i64 %5362
  %5364 = load double, ptr %5363, align 8, !tbaa !11
  %5365 = call double @llvm.fmuladd.f64(double 0xBC51BD5908653595, double %5364, double %5356)
  %5366 = load ptr, ptr %7, align 8, !tbaa !9
  %5367 = load i32, ptr %12, align 4, !tbaa !5
  %5368 = load i32, ptr %8, align 4, !tbaa !5
  %5369 = mul nsw i32 43, %5368
  %5370 = add nsw i32 %5367, %5369
  %5371 = sext i32 %5370 to i64
  %5372 = getelementptr inbounds double, ptr %5366, i64 %5371
  %5373 = load double, ptr %5372, align 8, !tbaa !11
  %5374 = call double @llvm.fmuladd.f64(double 0xBC3A014D32C335D8, double %5373, double %5365)
  %5375 = load ptr, ptr %7, align 8, !tbaa !9
  %5376 = load i32, ptr %12, align 4, !tbaa !5
  %5377 = load i32, ptr %8, align 4, !tbaa !5
  %5378 = mul nsw i32 44, %5377
  %5379 = add nsw i32 %5376, %5378
  %5380 = sext i32 %5379 to i64
  %5381 = getelementptr inbounds double, ptr %5375, i64 %5380
  %5382 = load double, ptr %5381, align 8, !tbaa !11
  %5383 = call double @llvm.fmuladd.f64(double 0xBC3A014D32C32FB8, double %5382, double %5374)
  %5384 = load ptr, ptr %7, align 8, !tbaa !9
  %5385 = load i32, ptr %12, align 4, !tbaa !5
  %5386 = load i32, ptr %8, align 4, !tbaa !5
  %5387 = mul nsw i32 45, %5386
  %5388 = add nsw i32 %5385, %5387
  %5389 = sext i32 %5388 to i64
  %5390 = getelementptr inbounds double, ptr %5384, i64 %5389
  %5391 = load double, ptr %5390, align 8, !tbaa !11
  %5392 = call double @llvm.fmuladd.f64(double 0xBC893816E5BE808E, double %5391, double %5383)
  %5393 = load ptr, ptr %7, align 8, !tbaa !9
  %5394 = load i32, ptr %12, align 4, !tbaa !5
  %5395 = load i32, ptr %8, align 4, !tbaa !5
  %5396 = mul nsw i32 46, %5395
  %5397 = add nsw i32 %5394, %5396
  %5398 = sext i32 %5397 to i64
  %5399 = getelementptr inbounds double, ptr %5393, i64 %5398
  %5400 = load double, ptr %5399, align 8, !tbaa !11
  %5401 = call double @llvm.fmuladd.f64(double 0x3C543F5B67DD6915, double %5400, double %5392)
  %5402 = load ptr, ptr %7, align 8, !tbaa !9
  %5403 = load i32, ptr %12, align 4, !tbaa !5
  %5404 = load i32, ptr %8, align 4, !tbaa !5
  %5405 = mul nsw i32 47, %5404
  %5406 = add nsw i32 %5403, %5405
  %5407 = sext i32 %5406 to i64
  %5408 = getelementptr inbounds double, ptr %5402, i64 %5407
  %5409 = load double, ptr %5408, align 8, !tbaa !11
  %5410 = call double @llvm.fmuladd.f64(double 0x3C543F5B67DD6BB1, double %5409, double %5401)
  %5411 = load ptr, ptr %7, align 8, !tbaa !9
  %5412 = load i32, ptr %12, align 4, !tbaa !5
  %5413 = load i32, ptr %8, align 4, !tbaa !5
  %5414 = mul nsw i32 48, %5413
  %5415 = add nsw i32 %5412, %5414
  %5416 = sext i32 %5415 to i64
  %5417 = getelementptr inbounds double, ptr %5411, i64 %5416
  %5418 = load double, ptr %5417, align 8, !tbaa !11
  %5419 = call double @llvm.fmuladd.f64(double 0x3CE88765A1B41E6E, double %5418, double %5410)
  %5420 = load ptr, ptr %7, align 8, !tbaa !9
  %5421 = load i32, ptr %12, align 4, !tbaa !5
  %5422 = load i32, ptr %8, align 4, !tbaa !5
  %5423 = mul nsw i32 49, %5422
  %5424 = add nsw i32 %5421, %5423
  %5425 = sext i32 %5424 to i64
  %5426 = getelementptr inbounds double, ptr %5420, i64 %5425
  %5427 = load double, ptr %5426, align 8, !tbaa !11
  %5428 = call double @llvm.fmuladd.f64(double 0xBCC9C6E177DE0849, double %5427, double %5419)
  %5429 = load ptr, ptr %7, align 8, !tbaa !9
  %5430 = load i32, ptr %12, align 4, !tbaa !5
  %5431 = load i32, ptr %8, align 4, !tbaa !5
  %5432 = mul nsw i32 50, %5431
  %5433 = add nsw i32 %5430, %5432
  %5434 = sext i32 %5433 to i64
  %5435 = getelementptr inbounds double, ptr %5429, i64 %5434
  %5436 = load double, ptr %5435, align 8, !tbaa !11
  %5437 = call double @llvm.fmuladd.f64(double 0x3CE7D765A1B41E6B, double %5436, double %5428)
  %5438 = load ptr, ptr %7, align 8, !tbaa !9
  %5439 = load i32, ptr %12, align 4, !tbaa !5
  %5440 = load i32, ptr %8, align 4, !tbaa !5
  %5441 = mul nsw i32 51, %5440
  %5442 = add nsw i32 %5439, %5441
  %5443 = sext i32 %5442 to i64
  %5444 = getelementptr inbounds double, ptr %5438, i64 %5443
  %5445 = load double, ptr %5444, align 8, !tbaa !11
  %5446 = call double @llvm.fmuladd.f64(double 0x3CE0F6FD1753B0C4, double %5445, double %5437)
  %5447 = load ptr, ptr %7, align 8, !tbaa !9
  %5448 = load i32, ptr %12, align 4, !tbaa !5
  %5449 = load i32, ptr %8, align 4, !tbaa !5
  %5450 = mul nsw i32 52, %5449
  %5451 = add nsw i32 %5448, %5450
  %5452 = sext i32 %5451 to i64
  %5453 = getelementptr inbounds double, ptr %5447, i64 %5452
  %5454 = load double, ptr %5453, align 8, !tbaa !11
  %5455 = call double @llvm.fmuladd.f64(double 0x3FF9D1E43E6CC191, double %5454, double %5446)
  %5456 = load ptr, ptr %7, align 8, !tbaa !9
  %5457 = load i32, ptr %12, align 4, !tbaa !5
  %5458 = load i32, ptr %8, align 4, !tbaa !5
  %5459 = mul nsw i32 53, %5458
  %5460 = add nsw i32 %5457, %5459
  %5461 = sext i32 %5460 to i64
  %5462 = getelementptr inbounds double, ptr %5456, i64 %5461
  %5463 = load double, ptr %5462, align 8, !tbaa !11
  %5464 = call double @llvm.fmuladd.f64(double 0x3CE5F2686842D7DB, double %5463, double %5455)
  store double %5464, ptr %11, align 8, !tbaa !11
  %5465 = load double, ptr %11, align 8, !tbaa !11
  %5466 = load ptr, ptr %9, align 8, !tbaa !9
  %5467 = load i32, ptr %12, align 4, !tbaa !5
  %5468 = load i32, ptr %10, align 4, !tbaa !5
  %5469 = mul nsw i32 10, %5468
  %5470 = add nsw i32 %5467, %5469
  %5471 = sext i32 %5470 to i64
  %5472 = getelementptr inbounds double, ptr %5466, i64 %5471
  %5473 = load double, ptr %5472, align 8, !tbaa !11
  %5474 = fadd double %5473, %5465
  store double %5474, ptr %5472, align 8, !tbaa !11
  %5475 = load ptr, ptr %7, align 8, !tbaa !9
  %5476 = load i32, ptr %12, align 4, !tbaa !5
  %5477 = load i32, ptr %8, align 4, !tbaa !5
  %5478 = mul nsw i32 0, %5477
  %5479 = add nsw i32 %5476, %5478
  %5480 = sext i32 %5479 to i64
  %5481 = getelementptr inbounds double, ptr %5475, i64 %5480
  %5482 = load double, ptr %5481, align 8, !tbaa !11
  %5483 = load ptr, ptr %7, align 8, !tbaa !9
  %5484 = load i32, ptr %12, align 4, !tbaa !5
  %5485 = load i32, ptr %8, align 4, !tbaa !5
  %5486 = mul nsw i32 1, %5485
  %5487 = add nsw i32 %5484, %5486
  %5488 = sext i32 %5487 to i64
  %5489 = getelementptr inbounds double, ptr %5483, i64 %5488
  %5490 = load double, ptr %5489, align 8, !tbaa !11
  %5491 = fmul double 0xBC96A2CCF69409BE, %5490
  %5492 = call double @llvm.fmuladd.f64(double 0x3CC142F4E7497170, double %5482, double %5491)
  %5493 = load ptr, ptr %7, align 8, !tbaa !9
  %5494 = load i32, ptr %12, align 4, !tbaa !5
  %5495 = load i32, ptr %8, align 4, !tbaa !5
  %5496 = mul nsw i32 2, %5495
  %5497 = add nsw i32 %5494, %5496
  %5498 = sext i32 %5497 to i64
  %5499 = getelementptr inbounds double, ptr %5493, i64 %5498
  %5500 = load double, ptr %5499, align 8, !tbaa !11
  %5501 = call double @llvm.fmuladd.f64(double 0xBC9AEA168BAD2F82, double %5500, double %5492)
  %5502 = load ptr, ptr %7, align 8, !tbaa !9
  %5503 = load i32, ptr %12, align 4, !tbaa !5
  %5504 = load i32, ptr %8, align 4, !tbaa !5
  %5505 = mul nsw i32 3, %5504
  %5506 = add nsw i32 %5503, %5505
  %5507 = sext i32 %5506 to i64
  %5508 = getelementptr inbounds double, ptr %5502, i64 %5507
  %5509 = load double, ptr %5508, align 8, !tbaa !11
  %5510 = call double @llvm.fmuladd.f64(double 0xBC9B499410BBCC84, double %5509, double %5501)
  %5511 = load ptr, ptr %7, align 8, !tbaa !9
  %5512 = load i32, ptr %12, align 4, !tbaa !5
  %5513 = load i32, ptr %8, align 4, !tbaa !5
  %5514 = mul nsw i32 4, %5513
  %5515 = add nsw i32 %5512, %5514
  %5516 = sext i32 %5515 to i64
  %5517 = getelementptr inbounds double, ptr %5511, i64 %5516
  %5518 = load double, ptr %5517, align 8, !tbaa !11
  %5519 = call double @llvm.fmuladd.f64(double 0xBC9361418ADB00D8, double %5518, double %5510)
  %5520 = load ptr, ptr %7, align 8, !tbaa !9
  %5521 = load i32, ptr %12, align 4, !tbaa !5
  %5522 = load i32, ptr %8, align 4, !tbaa !5
  %5523 = mul nsw i32 5, %5522
  %5524 = add nsw i32 %5521, %5523
  %5525 = sext i32 %5524 to i64
  %5526 = getelementptr inbounds double, ptr %5520, i64 %5525
  %5527 = load double, ptr %5526, align 8, !tbaa !11
  %5528 = call double @llvm.fmuladd.f64(double 0x3CB01F9D52D3749E, double %5527, double %5519)
  %5529 = load ptr, ptr %7, align 8, !tbaa !9
  %5530 = load i32, ptr %12, align 4, !tbaa !5
  %5531 = load i32, ptr %8, align 4, !tbaa !5
  %5532 = mul nsw i32 6, %5531
  %5533 = add nsw i32 %5530, %5532
  %5534 = sext i32 %5533 to i64
  %5535 = getelementptr inbounds double, ptr %5529, i64 %5534
  %5536 = load double, ptr %5535, align 8, !tbaa !11
  %5537 = call double @llvm.fmuladd.f64(double 0xBFF5B6F7089FF1D1, double %5536, double %5528)
  %5538 = load ptr, ptr %7, align 8, !tbaa !9
  %5539 = load i32, ptr %12, align 4, !tbaa !5
  %5540 = load i32, ptr %8, align 4, !tbaa !5
  %5541 = mul nsw i32 7, %5540
  %5542 = add nsw i32 %5539, %5541
  %5543 = sext i32 %5542 to i64
  %5544 = getelementptr inbounds double, ptr %5538, i64 %5543
  %5545 = load double, ptr %5544, align 8, !tbaa !11
  %5546 = call double @llvm.fmuladd.f64(double 0x3FB1F3F0B024DC88, double %5545, double %5537)
  %5547 = load ptr, ptr %7, align 8, !tbaa !9
  %5548 = load i32, ptr %12, align 4, !tbaa !5
  %5549 = load i32, ptr %8, align 4, !tbaa !5
  %5550 = mul nsw i32 8, %5549
  %5551 = add nsw i32 %5548, %5550
  %5552 = sext i32 %5551 to i64
  %5553 = getelementptr inbounds double, ptr %5547, i64 %5552
  %5554 = load double, ptr %5553, align 8, !tbaa !11
  %5555 = call double @llvm.fmuladd.f64(double 0x3FCCBE3CAE6B6280, double %5554, double %5546)
  %5556 = load ptr, ptr %7, align 8, !tbaa !9
  %5557 = load i32, ptr %12, align 4, !tbaa !5
  %5558 = load i32, ptr %8, align 4, !tbaa !5
  %5559 = mul nsw i32 9, %5558
  %5560 = add nsw i32 %5557, %5559
  %5561 = sext i32 %5560 to i64
  %5562 = getelementptr inbounds double, ptr %5556, i64 %5561
  %5563 = load double, ptr %5562, align 8, !tbaa !11
  %5564 = call double @llvm.fmuladd.f64(double 0xBFD81F8F0CEC6101, double %5563, double %5555)
  %5565 = load ptr, ptr %7, align 8, !tbaa !9
  %5566 = load i32, ptr %12, align 4, !tbaa !5
  %5567 = load i32, ptr %8, align 4, !tbaa !5
  %5568 = mul nsw i32 10, %5567
  %5569 = add nsw i32 %5566, %5568
  %5570 = sext i32 %5569 to i64
  %5571 = getelementptr inbounds double, ptr %5565, i64 %5570
  %5572 = load double, ptr %5571, align 8, !tbaa !11
  %5573 = call double @llvm.fmuladd.f64(double 0xBFFBA497A89943F3, double %5572, double %5564)
  %5574 = load ptr, ptr %7, align 8, !tbaa !9
  %5575 = load i32, ptr %12, align 4, !tbaa !5
  %5576 = load i32, ptr %8, align 4, !tbaa !5
  %5577 = mul nsw i32 11, %5576
  %5578 = add nsw i32 %5575, %5577
  %5579 = sext i32 %5578 to i64
  %5580 = getelementptr inbounds double, ptr %5574, i64 %5579
  %5581 = load double, ptr %5580, align 8, !tbaa !11
  %5582 = call double @llvm.fmuladd.f64(double 0xBFDC5366E211BEB0, double %5581, double %5573)
  %5583 = load ptr, ptr %7, align 8, !tbaa !9
  %5584 = load i32, ptr %12, align 4, !tbaa !5
  %5585 = load i32, ptr %8, align 4, !tbaa !5
  %5586 = mul nsw i32 12, %5585
  %5587 = add nsw i32 %5584, %5586
  %5588 = sext i32 %5587 to i64
  %5589 = getelementptr inbounds double, ptr %5583, i64 %5588
  %5590 = load double, ptr %5589, align 8, !tbaa !11
  %5591 = call double @llvm.fmuladd.f64(double 0x3CB1A32FABA58A76, double %5590, double %5582)
  %5592 = load ptr, ptr %7, align 8, !tbaa !9
  %5593 = load i32, ptr %12, align 4, !tbaa !5
  %5594 = load i32, ptr %8, align 4, !tbaa !5
  %5595 = mul nsw i32 13, %5594
  %5596 = add nsw i32 %5593, %5595
  %5597 = sext i32 %5596 to i64
  %5598 = getelementptr inbounds double, ptr %5592, i64 %5597
  %5599 = load double, ptr %5598, align 8, !tbaa !11
  %5600 = call double @llvm.fmuladd.f64(double 0x3C6B240942E84E45, double %5599, double %5591)
  %5601 = load ptr, ptr %7, align 8, !tbaa !9
  %5602 = load i32, ptr %12, align 4, !tbaa !5
  %5603 = load i32, ptr %8, align 4, !tbaa !5
  %5604 = mul nsw i32 14, %5603
  %5605 = add nsw i32 %5602, %5604
  %5606 = sext i32 %5605 to i64
  %5607 = getelementptr inbounds double, ptr %5601, i64 %5606
  %5608 = load double, ptr %5607, align 8, !tbaa !11
  %5609 = call double @llvm.fmuladd.f64(double 0xBC8360FD77DF0E50, double %5608, double %5600)
  %5610 = load ptr, ptr %7, align 8, !tbaa !9
  %5611 = load i32, ptr %12, align 4, !tbaa !5
  %5612 = load i32, ptr %8, align 4, !tbaa !5
  %5613 = mul nsw i32 15, %5612
  %5614 = add nsw i32 %5611, %5613
  %5615 = sext i32 %5614 to i64
  %5616 = getelementptr inbounds double, ptr %5610, i64 %5615
  %5617 = load double, ptr %5616, align 8, !tbaa !11
  %5618 = call double @llvm.fmuladd.f64(double 0x3C78F6BBF1F42F79, double %5617, double %5609)
  %5619 = load ptr, ptr %7, align 8, !tbaa !9
  %5620 = load i32, ptr %12, align 4, !tbaa !5
  %5621 = load i32, ptr %8, align 4, !tbaa !5
  %5622 = mul nsw i32 16, %5621
  %5623 = add nsw i32 %5620, %5622
  %5624 = sext i32 %5623 to i64
  %5625 = getelementptr inbounds double, ptr %5619, i64 %5624
  %5626 = load double, ptr %5625, align 8, !tbaa !11
  %5627 = call double @llvm.fmuladd.f64(double 0xBCBB0F3A92259EB9, double %5626, double %5618)
  %5628 = load ptr, ptr %7, align 8, !tbaa !9
  %5629 = load i32, ptr %12, align 4, !tbaa !5
  %5630 = load i32, ptr %8, align 4, !tbaa !5
  %5631 = mul nsw i32 17, %5630
  %5632 = add nsw i32 %5629, %5631
  %5633 = sext i32 %5632 to i64
  %5634 = getelementptr inbounds double, ptr %5628, i64 %5633
  %5635 = load double, ptr %5634, align 8, !tbaa !11
  %5636 = call double @llvm.fmuladd.f64(double 0xBCB8BFEEB1A15858, double %5635, double %5627)
  %5637 = load ptr, ptr %7, align 8, !tbaa !9
  %5638 = load i32, ptr %12, align 4, !tbaa !5
  %5639 = load i32, ptr %8, align 4, !tbaa !5
  %5640 = mul nsw i32 18, %5639
  %5641 = add nsw i32 %5638, %5640
  %5642 = sext i32 %5641 to i64
  %5643 = getelementptr inbounds double, ptr %5637, i64 %5642
  %5644 = load double, ptr %5643, align 8, !tbaa !11
  %5645 = call double @llvm.fmuladd.f64(double 0x3CA01AC45D3C9868, double %5644, double %5636)
  %5646 = load ptr, ptr %7, align 8, !tbaa !9
  %5647 = load i32, ptr %12, align 4, !tbaa !5
  %5648 = load i32, ptr %8, align 4, !tbaa !5
  %5649 = mul nsw i32 19, %5648
  %5650 = add nsw i32 %5647, %5649
  %5651 = sext i32 %5650 to i64
  %5652 = getelementptr inbounds double, ptr %5646, i64 %5651
  %5653 = load double, ptr %5652, align 8, !tbaa !11
  %5654 = call double @llvm.fmuladd.f64(double 0xBC6ACDF6528B4733, double %5653, double %5645)
  %5655 = load ptr, ptr %7, align 8, !tbaa !9
  %5656 = load i32, ptr %12, align 4, !tbaa !5
  %5657 = load i32, ptr %8, align 4, !tbaa !5
  %5658 = mul nsw i32 20, %5657
  %5659 = add nsw i32 %5656, %5658
  %5660 = sext i32 %5659 to i64
  %5661 = getelementptr inbounds double, ptr %5655, i64 %5660
  %5662 = load double, ptr %5661, align 8, !tbaa !11
  %5663 = call double @llvm.fmuladd.f64(double 0xBC7F9F89179EC45D, double %5662, double %5654)
  %5664 = load ptr, ptr %7, align 8, !tbaa !9
  %5665 = load i32, ptr %12, align 4, !tbaa !5
  %5666 = load i32, ptr %8, align 4, !tbaa !5
  %5667 = mul nsw i32 21, %5666
  %5668 = add nsw i32 %5665, %5667
  %5669 = sext i32 %5668 to i64
  %5670 = getelementptr inbounds double, ptr %5664, i64 %5669
  %5671 = load double, ptr %5670, align 8, !tbaa !11
  %5672 = call double @llvm.fmuladd.f64(double 0xBCB6B022413F9937, double %5671, double %5663)
  %5673 = load ptr, ptr %7, align 8, !tbaa !9
  %5674 = load i32, ptr %12, align 4, !tbaa !5
  %5675 = load i32, ptr %8, align 4, !tbaa !5
  %5676 = mul nsw i32 22, %5675
  %5677 = add nsw i32 %5674, %5676
  %5678 = sext i32 %5677 to i64
  %5679 = getelementptr inbounds double, ptr %5673, i64 %5678
  %5680 = load double, ptr %5679, align 8, !tbaa !11
  %5681 = call double @llvm.fmuladd.f64(double 0xBCB0BCDE936FEEC4, double %5680, double %5672)
  %5682 = load ptr, ptr %7, align 8, !tbaa !9
  %5683 = load i32, ptr %12, align 4, !tbaa !5
  %5684 = load i32, ptr %8, align 4, !tbaa !5
  %5685 = mul nsw i32 23, %5684
  %5686 = add nsw i32 %5683, %5685
  %5687 = sext i32 %5686 to i64
  %5688 = getelementptr inbounds double, ptr %5682, i64 %5687
  %5689 = load double, ptr %5688, align 8, !tbaa !11
  %5690 = call double @llvm.fmuladd.f64(double 0x3CB1A9F3F895A70E, double %5689, double %5681)
  %5691 = load ptr, ptr %7, align 8, !tbaa !9
  %5692 = load i32, ptr %12, align 4, !tbaa !5
  %5693 = load i32, ptr %8, align 4, !tbaa !5
  %5694 = mul nsw i32 24, %5693
  %5695 = add nsw i32 %5692, %5694
  %5696 = sext i32 %5695 to i64
  %5697 = getelementptr inbounds double, ptr %5691, i64 %5696
  %5698 = load double, ptr %5697, align 8, !tbaa !11
  %5699 = call double @llvm.fmuladd.f64(double 0x3FB1F3F0B024DC70, double %5698, double %5690)
  %5700 = load ptr, ptr %7, align 8, !tbaa !9
  %5701 = load i32, ptr %12, align 4, !tbaa !5
  %5702 = load i32, ptr %8, align 4, !tbaa !5
  %5703 = mul nsw i32 25, %5702
  %5704 = add nsw i32 %5701, %5703
  %5705 = sext i32 %5704 to i64
  %5706 = getelementptr inbounds double, ptr %5700, i64 %5705
  %5707 = load double, ptr %5706, align 8, !tbaa !11
  %5708 = call double @llvm.fmuladd.f64(double 0xBFF5B6F7089FF1D6, double %5707, double %5699)
  %5709 = load ptr, ptr %7, align 8, !tbaa !9
  %5710 = load i32, ptr %12, align 4, !tbaa !5
  %5711 = load i32, ptr %8, align 4, !tbaa !5
  %5712 = mul nsw i32 26, %5711
  %5713 = add nsw i32 %5710, %5712
  %5714 = sext i32 %5713 to i64
  %5715 = getelementptr inbounds double, ptr %5709, i64 %5714
  %5716 = load double, ptr %5715, align 8, !tbaa !11
  %5717 = call double @llvm.fmuladd.f64(double 0x3FCCBE3CAE6B6264, double %5716, double %5708)
  %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 27, %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 = call double @llvm.fmuladd.f64(double 0xBFFBA497A89943F8, double %5725, double %5717)
  %5727 = load ptr, ptr %7, align 8, !tbaa !9
  %5728 = load i32, ptr %12, align 4, !tbaa !5
  %5729 = load i32, ptr %8, align 4, !tbaa !5
  %5730 = mul nsw i32 28, %5729
  %5731 = add nsw i32 %5728, %5730
  %5732 = sext i32 %5731 to i64
  %5733 = getelementptr inbounds double, ptr %5727, i64 %5732
  %5734 = load double, ptr %5733, align 8, !tbaa !11
  %5735 = call double @llvm.fmuladd.f64(double 0xBFD81F8F0CEC60FB, double %5734, double %5726)
  %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 29, %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 0xBFDC5366E211BEA9, 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 30, %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 0xBCB87AF4AD8F6C4F, 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 31, %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 0x3CB12455A0EA2ADF, 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 32, %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 0xBCB257D19C776B7D, 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 33, %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 0x3C87C5793620E509, 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 34, %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 0xBCAEB022802087A0, 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 35, %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 0x3CB19E5F3488CFDF, 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 36, %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 0xBCEC1765A1B41E67, 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 37, %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 0xBCEA1F44973E98E1, 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 38, %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 0x3CCD2B9C9C6443CA, 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 39, %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 0xBCE3341B5B3A7CDC, 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 40, %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 0xBCE21D6B2ED19149, 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 41, %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 0xBFF9D1E43E6CC191, 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 42, %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 0xBC82AD66CB5FD83B, 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 43, %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 0xBC89EF0795AEA22C, 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 44, %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 0xBC4EF0795AEA232E, 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 45, %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 0xBC5646AD27501978, 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 46, %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 0x3C6AA897374E4045, 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 47, %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 0x3C6AA897374E4018, 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 48, %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 0x3CEC4765A1B41E6A, 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 49, %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 0x3CEA7F44973E98E0, 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 50, %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 0xBCCD2B9C9C6443C9, 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 51, %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 0x3CE3341B5B3A7CDE, 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 52, %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 0x3CE21D6B2ED1914C, 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 53, %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 0x3FF9D1E43E6CC191, double %5959, double %5951)
  store double %5960, ptr %11, align 8, !tbaa !11
  %5961 = load double, ptr %11, align 8, !tbaa !11
  %5962 = load ptr, ptr %9, align 8, !tbaa !9
  %5963 = load i32, ptr %12, align 4, !tbaa !5
  %5964 = load i32, ptr %10, align 4, !tbaa !5
  %5965 = mul nsw i32 11, %5964
  %5966 = add nsw i32 %5963, %5965
  %5967 = sext i32 %5966 to i64
  %5968 = getelementptr inbounds double, ptr %5962, i64 %5967
  %5969 = load double, ptr %5968, align 8, !tbaa !11
  %5970 = fadd double %5969, %5961
  store double %5970, ptr %5968, align 8, !tbaa !11
  %5971 = load ptr, ptr %7, align 8, !tbaa !9
  %5972 = load i32, ptr %12, align 4, !tbaa !5
  %5973 = load i32, ptr %8, align 4, !tbaa !5
  %5974 = mul nsw i32 0, %5973
  %5975 = add nsw i32 %5972, %5974
  %5976 = sext i32 %5975 to i64
  %5977 = getelementptr inbounds double, ptr %5971, i64 %5976
  %5978 = load double, ptr %5977, align 8, !tbaa !11
  %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 1, %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 = fmul double 0xBC7F9D13F6DD91DF, %5986
  %5988 = call double @llvm.fmuladd.f64(double 0xBCB03C43C4268C9B, double %5978, double %5987)
  %5989 = load ptr, ptr %7, align 8, !tbaa !9
  %5990 = load i32, ptr %12, align 4, !tbaa !5
  %5991 = load i32, ptr %8, align 4, !tbaa !5
  %5992 = mul nsw i32 2, %5991
  %5993 = add nsw i32 %5990, %5992
  %5994 = sext i32 %5993 to i64
  %5995 = getelementptr inbounds double, ptr %5989, i64 %5994
  %5996 = load double, ptr %5995, align 8, !tbaa !11
  %5997 = call double @llvm.fmuladd.f64(double 0xBCAE0044D82B3E00, double %5996, double %5988)
  %5998 = load ptr, ptr %7, align 8, !tbaa !9
  %5999 = load i32, ptr %12, align 4, !tbaa !5
  %6000 = load i32, ptr %8, align 4, !tbaa !5
  %6001 = mul nsw i32 3, %6000
  %6002 = add nsw i32 %5999, %6001
  %6003 = sext i32 %6002 to i64
  %6004 = getelementptr inbounds double, ptr %5998, i64 %6003
  %6005 = load double, ptr %6004, align 8, !tbaa !11
  %6006 = call double @llvm.fmuladd.f64(double 0x3C9CFE906EE8F2E9, double %6005, double %5997)
  %6007 = load ptr, ptr %7, align 8, !tbaa !9
  %6008 = load i32, ptr %12, align 4, !tbaa !5
  %6009 = load i32, ptr %8, align 4, !tbaa !5
  %6010 = mul nsw i32 4, %6009
  %6011 = add nsw i32 %6008, %6010
  %6012 = sext i32 %6011 to i64
  %6013 = getelementptr inbounds double, ptr %6007, i64 %6012
  %6014 = load double, ptr %6013, align 8, !tbaa !11
  %6015 = call double @llvm.fmuladd.f64(double 0x3CC1A93DAC5952FC, double %6014, double %6006)
  %6016 = load ptr, ptr %7, align 8, !tbaa !9
  %6017 = load i32, ptr %12, align 4, !tbaa !5
  %6018 = load i32, ptr %8, align 4, !tbaa !5
  %6019 = mul nsw i32 5, %6018
  %6020 = add nsw i32 %6017, %6019
  %6021 = sext i32 %6020 to i64
  %6022 = getelementptr inbounds double, ptr %6016, i64 %6021
  %6023 = load double, ptr %6022, align 8, !tbaa !11
  %6024 = call double @llvm.fmuladd.f64(double 0x3CB1B04DFFDDEE40, double %6023, double %6015)
  %6025 = load ptr, ptr %7, align 8, !tbaa !9
  %6026 = load i32, ptr %12, align 4, !tbaa !5
  %6027 = load i32, ptr %8, align 4, !tbaa !5
  %6028 = mul nsw i32 6, %6027
  %6029 = add nsw i32 %6026, %6028
  %6030 = sext i32 %6029 to i64
  %6031 = getelementptr inbounds double, ptr %6025, i64 %6030
  %6032 = load double, ptr %6031, align 8, !tbaa !11
  %6033 = call double @llvm.fmuladd.f64(double 0xBCA11EF521EB7066, double %6032, double %6024)
  %6034 = load ptr, ptr %7, align 8, !tbaa !9
  %6035 = load i32, ptr %12, align 4, !tbaa !5
  %6036 = load i32, ptr %8, align 4, !tbaa !5
  %6037 = mul nsw i32 7, %6036
  %6038 = add nsw i32 %6035, %6037
  %6039 = sext i32 %6038 to i64
  %6040 = getelementptr inbounds double, ptr %6034, i64 %6039
  %6041 = load double, ptr %6040, align 8, !tbaa !11
  %6042 = call double @llvm.fmuladd.f64(double 0xBC94747CFD612BD0, double %6041, double %6033)
  %6043 = load ptr, ptr %7, align 8, !tbaa !9
  %6044 = load i32, ptr %12, align 4, !tbaa !5
  %6045 = load i32, ptr %8, align 4, !tbaa !5
  %6046 = mul nsw i32 8, %6045
  %6047 = add nsw i32 %6044, %6046
  %6048 = sext i32 %6047 to i64
  %6049 = getelementptr inbounds double, ptr %6043, i64 %6048
  %6050 = load double, ptr %6049, align 8, !tbaa !11
  %6051 = call double @llvm.fmuladd.f64(double 0x3CA061EEC0843748, double %6050, double %6042)
  %6052 = load ptr, ptr %7, align 8, !tbaa !9
  %6053 = load i32, ptr %12, align 4, !tbaa !5
  %6054 = load i32, ptr %8, align 4, !tbaa !5
  %6055 = mul nsw i32 9, %6054
  %6056 = add nsw i32 %6053, %6055
  %6057 = sext i32 %6056 to i64
  %6058 = getelementptr inbounds double, ptr %6052, i64 %6057
  %6059 = load double, ptr %6058, align 8, !tbaa !11
  %6060 = call double @llvm.fmuladd.f64(double 0x3C8B21BA101B7AB2, double %6059, double %6051)
  %6061 = load ptr, ptr %7, align 8, !tbaa !9
  %6062 = load i32, ptr %12, align 4, !tbaa !5
  %6063 = load i32, ptr %8, align 4, !tbaa !5
  %6064 = mul nsw i32 10, %6063
  %6065 = add nsw i32 %6062, %6064
  %6066 = sext i32 %6065 to i64
  %6067 = getelementptr inbounds double, ptr %6061, i64 %6066
  %6068 = load double, ptr %6067, align 8, !tbaa !11
  %6069 = call double @llvm.fmuladd.f64(double 0xBCBBF3FEED1E8544, double %6068, double %6060)
  %6070 = load ptr, ptr %7, align 8, !tbaa !9
  %6071 = load i32, ptr %12, align 4, !tbaa !5
  %6072 = load i32, ptr %8, align 4, !tbaa !5
  %6073 = mul nsw i32 11, %6072
  %6074 = add nsw i32 %6071, %6073
  %6075 = sext i32 %6074 to i64
  %6076 = getelementptr inbounds double, ptr %6070, i64 %6075
  %6077 = load double, ptr %6076, align 8, !tbaa !11
  %6078 = call double @llvm.fmuladd.f64(double 0x3CB871266AD31A71, double %6077, double %6069)
  %6079 = load ptr, ptr %7, align 8, !tbaa !9
  %6080 = load i32, ptr %12, align 4, !tbaa !5
  %6081 = load i32, ptr %8, align 4, !tbaa !5
  %6082 = mul nsw i32 12, %6081
  %6083 = add nsw i32 %6080, %6082
  %6084 = sext i32 %6083 to i64
  %6085 = getelementptr inbounds double, ptr %6079, i64 %6084
  %6086 = load double, ptr %6085, align 8, !tbaa !11
  %6087 = call double @llvm.fmuladd.f64(double 0x3FF44E3F94172F46, double %6086, double %6078)
  %6088 = load ptr, ptr %7, align 8, !tbaa !9
  %6089 = load i32, ptr %12, align 4, !tbaa !5
  %6090 = load i32, ptr %8, align 4, !tbaa !5
  %6091 = mul nsw i32 13, %6090
  %6092 = add nsw i32 %6089, %6091
  %6093 = sext i32 %6092 to i64
  %6094 = getelementptr inbounds double, ptr %6088, i64 %6093
  %6095 = load double, ptr %6094, align 8, !tbaa !11
  %6096 = call double @llvm.fmuladd.f64(double 0xBF7DFA2300BBB400, double %6095, double %6087)
  %6097 = load ptr, ptr %7, align 8, !tbaa !9
  %6098 = load i32, ptr %12, align 4, !tbaa !5
  %6099 = load i32, ptr %8, align 4, !tbaa !5
  %6100 = mul nsw i32 14, %6099
  %6101 = add nsw i32 %6098, %6100
  %6102 = sext i32 %6101 to i64
  %6103 = getelementptr inbounds double, ptr %6097, i64 %6102
  %6104 = load double, ptr %6103, align 8, !tbaa !11
  %6105 = call double @llvm.fmuladd.f64(double 0x3FB9ECDD9812788E, double %6104, double %6096)
  %6106 = load ptr, ptr %7, align 8, !tbaa !9
  %6107 = load i32, ptr %12, align 4, !tbaa !5
  %6108 = load i32, ptr %8, align 4, !tbaa !5
  %6109 = mul nsw i32 15, %6108
  %6110 = add nsw i32 %6107, %6109
  %6111 = sext i32 %6110 to i64
  %6112 = getelementptr inbounds double, ptr %6106, i64 %6111
  %6113 = load double, ptr %6112, align 8, !tbaa !11
  %6114 = call double @llvm.fmuladd.f64(double 0xBF83952FC55A702F, double %6113, double %6105)
  %6115 = load ptr, ptr %7, align 8, !tbaa !9
  %6116 = load i32, ptr %12, align 4, !tbaa !5
  %6117 = load i32, ptr %8, align 4, !tbaa !5
  %6118 = mul nsw i32 16, %6117
  %6119 = add nsw i32 %6116, %6118
  %6120 = sext i32 %6119 to i64
  %6121 = getelementptr inbounds double, ptr %6115, i64 %6120
  %6122 = load double, ptr %6121, align 8, !tbaa !11
  %6123 = call double @llvm.fmuladd.f64(double 0xBFE4FBED5D8A9668, double %6122, double %6114)
  %6124 = load ptr, ptr %7, align 8, !tbaa !9
  %6125 = load i32, ptr %12, align 4, !tbaa !5
  %6126 = load i32, ptr %8, align 4, !tbaa !5
  %6127 = mul nsw i32 17, %6126
  %6128 = add nsw i32 %6125, %6127
  %6129 = sext i32 %6128 to i64
  %6130 = getelementptr inbounds double, ptr %6124, i64 %6129
  %6131 = load double, ptr %6130, align 8, !tbaa !11
  %6132 = call double @llvm.fmuladd.f64(double 0x3FD50884576D0BB8, double %6131, double %6123)
  %6133 = load ptr, ptr %7, align 8, !tbaa !9
  %6134 = load i32, ptr %12, align 4, !tbaa !5
  %6135 = load i32, ptr %8, align 4, !tbaa !5
  %6136 = mul nsw i32 18, %6135
  %6137 = add nsw i32 %6134, %6136
  %6138 = sext i32 %6137 to i64
  %6139 = getelementptr inbounds double, ptr %6133, i64 %6138
  %6140 = load double, ptr %6139, align 8, !tbaa !11
  %6141 = call double @llvm.fmuladd.f64(double 0x3CA77C1E26AD07FB, double %6140, double %6132)
  %6142 = load ptr, ptr %7, align 8, !tbaa !9
  %6143 = load i32, ptr %12, align 4, !tbaa !5
  %6144 = load i32, ptr %8, align 4, !tbaa !5
  %6145 = mul nsw i32 19, %6144
  %6146 = add nsw i32 %6143, %6145
  %6147 = sext i32 %6146 to i64
  %6148 = getelementptr inbounds double, ptr %6142, i64 %6147
  %6149 = load double, ptr %6148, align 8, !tbaa !11
  %6150 = call double @llvm.fmuladd.f64(double 0x3C93A7C0E4AC7A5E, double %6149, double %6141)
  %6151 = load ptr, ptr %7, align 8, !tbaa !9
  %6152 = load i32, ptr %12, align 4, !tbaa !5
  %6153 = load i32, ptr %8, align 4, !tbaa !5
  %6154 = mul nsw i32 20, %6153
  %6155 = add nsw i32 %6152, %6154
  %6156 = sext i32 %6155 to i64
  %6157 = getelementptr inbounds double, ptr %6151, i64 %6156
  %6158 = load double, ptr %6157, align 8, !tbaa !11
  %6159 = call double @llvm.fmuladd.f64(double 0xBCB48923F82EA691, double %6158, double %6150)
  %6160 = load ptr, ptr %7, align 8, !tbaa !9
  %6161 = load i32, ptr %12, align 4, !tbaa !5
  %6162 = load i32, ptr %8, align 4, !tbaa !5
  %6163 = mul nsw i32 21, %6162
  %6164 = add nsw i32 %6161, %6163
  %6165 = sext i32 %6164 to i64
  %6166 = getelementptr inbounds double, ptr %6160, i64 %6165
  %6167 = load double, ptr %6166, align 8, !tbaa !11
  %6168 = call double @llvm.fmuladd.f64(double 0x3CB2EF2E61697A4B, double %6167, double %6159)
  %6169 = load ptr, ptr %7, align 8, !tbaa !9
  %6170 = load i32, ptr %12, align 4, !tbaa !5
  %6171 = load i32, ptr %8, align 4, !tbaa !5
  %6172 = mul nsw i32 22, %6171
  %6173 = add nsw i32 %6170, %6172
  %6174 = sext i32 %6173 to i64
  %6175 = getelementptr inbounds double, ptr %6169, i64 %6174
  %6176 = load double, ptr %6175, align 8, !tbaa !11
  %6177 = call double @llvm.fmuladd.f64(double 0xBC799BC4C2A33F77, double %6176, double %6168)
  %6178 = load ptr, ptr %7, align 8, !tbaa !9
  %6179 = load i32, ptr %12, align 4, !tbaa !5
  %6180 = load i32, ptr %8, align 4, !tbaa !5
  %6181 = mul nsw i32 23, %6180
  %6182 = add nsw i32 %6179, %6181
  %6183 = sext i32 %6182 to i64
  %6184 = getelementptr inbounds double, ptr %6178, i64 %6183
  %6185 = load double, ptr %6184, align 8, !tbaa !11
  %6186 = call double @llvm.fmuladd.f64(double 0xBC7C5EE298468650, double %6185, double %6177)
  %6187 = load ptr, ptr %7, align 8, !tbaa !9
  %6188 = load i32, ptr %12, align 4, !tbaa !5
  %6189 = load i32, ptr %8, align 4, !tbaa !5
  %6190 = mul nsw i32 24, %6189
  %6191 = add nsw i32 %6188, %6190
  %6192 = sext i32 %6191 to i64
  %6193 = getelementptr inbounds double, ptr %6187, i64 %6192
  %6194 = load double, ptr %6193, align 8, !tbaa !11
  %6195 = call double @llvm.fmuladd.f64(double 0x3CB0F9118CF9AD5E, double %6194, double %6186)
  %6196 = load ptr, ptr %7, align 8, !tbaa !9
  %6197 = load i32, ptr %12, align 4, !tbaa !5
  %6198 = load i32, ptr %8, align 4, !tbaa !5
  %6199 = mul nsw i32 25, %6198
  %6200 = add nsw i32 %6197, %6199
  %6201 = sext i32 %6200 to i64
  %6202 = getelementptr inbounds double, ptr %6196, i64 %6201
  %6203 = load double, ptr %6202, align 8, !tbaa !11
  %6204 = call double @llvm.fmuladd.f64(double 0xBC9C6D9C52EC041A, double %6203, double %6195)
  %6205 = load ptr, ptr %7, align 8, !tbaa !9
  %6206 = load i32, ptr %12, align 4, !tbaa !5
  %6207 = load i32, ptr %8, align 4, !tbaa !5
  %6208 = mul nsw i32 26, %6207
  %6209 = add nsw i32 %6206, %6208
  %6210 = sext i32 %6209 to i64
  %6211 = getelementptr inbounds double, ptr %6205, i64 %6210
  %6212 = load double, ptr %6211, align 8, !tbaa !11
  %6213 = call double @llvm.fmuladd.f64(double 0xBC814C8EF8381536, double %6212, double %6204)
  %6214 = load ptr, ptr %7, align 8, !tbaa !9
  %6215 = load i32, ptr %12, align 4, !tbaa !5
  %6216 = load i32, ptr %8, align 4, !tbaa !5
  %6217 = mul nsw i32 27, %6216
  %6218 = add nsw i32 %6215, %6217
  %6219 = sext i32 %6218 to i64
  %6220 = getelementptr inbounds double, ptr %6214, i64 %6219
  %6221 = load double, ptr %6220, align 8, !tbaa !11
  %6222 = call double @llvm.fmuladd.f64(double 0xBC76355C6A0A6D53, double %6221, double %6213)
  %6223 = load ptr, ptr %7, align 8, !tbaa !9
  %6224 = load i32, ptr %12, align 4, !tbaa !5
  %6225 = load i32, ptr %8, align 4, !tbaa !5
  %6226 = mul nsw i32 28, %6225
  %6227 = add nsw i32 %6224, %6226
  %6228 = sext i32 %6227 to i64
  %6229 = getelementptr inbounds double, ptr %6223, i64 %6228
  %6230 = load double, ptr %6229, align 8, !tbaa !11
  %6231 = call double @llvm.fmuladd.f64(double 0x3C61B8141832C040, double %6230, double %6222)
  %6232 = load ptr, ptr %7, align 8, !tbaa !9
  %6233 = load i32, ptr %12, align 4, !tbaa !5
  %6234 = load i32, ptr %8, align 4, !tbaa !5
  %6235 = mul nsw i32 29, %6234
  %6236 = add nsw i32 %6233, %6235
  %6237 = sext i32 %6236 to i64
  %6238 = getelementptr inbounds double, ptr %6232, i64 %6237
  %6239 = load double, ptr %6238, align 8, !tbaa !11
  %6240 = call double @llvm.fmuladd.f64(double 0xBC8B1A3C6A1C6E73, double %6239, double %6231)
  %6241 = load ptr, ptr %7, align 8, !tbaa !9
  %6242 = load i32, ptr %12, align 4, !tbaa !5
  %6243 = load i32, ptr %8, align 4, !tbaa !5
  %6244 = mul nsw i32 30, %6243
  %6245 = add nsw i32 %6242, %6244
  %6246 = sext i32 %6245 to i64
  %6247 = getelementptr inbounds double, ptr %6241, i64 %6246
  %6248 = load double, ptr %6247, align 8, !tbaa !11
  %6249 = call double @llvm.fmuladd.f64(double 0xBFE8AC73392375D0, double %6248, double %6240)
  %6250 = load ptr, ptr %7, align 8, !tbaa !9
  %6251 = load i32, ptr %12, align 4, !tbaa !5
  %6252 = load i32, ptr %8, align 4, !tbaa !5
  %6253 = mul nsw i32 31, %6252
  %6254 = add nsw i32 %6251, %6253
  %6255 = sext i32 %6254 to i64
  %6256 = getelementptr inbounds double, ptr %6250, i64 %6255
  %6257 = load double, ptr %6256, align 8, !tbaa !11
  %6258 = call double @llvm.fmuladd.f64(double 0x3FE4EDE8EE256113, double %6257, double %6249)
  %6259 = load ptr, ptr %7, align 8, !tbaa !9
  %6260 = load i32, ptr %12, align 4, !tbaa !5
  %6261 = load i32, ptr %8, align 4, !tbaa !5
  %6262 = mul nsw i32 32, %6261
  %6263 = add nsw i32 %6260, %6262
  %6264 = sext i32 %6263 to i64
  %6265 = getelementptr inbounds double, ptr %6259, i64 %6264
  %6266 = load double, ptr %6265, align 8, !tbaa !11
  %6267 = call double @llvm.fmuladd.f64(double 0x3FEA5488770B26BF, double %6266, double %6258)
  %6268 = load ptr, ptr %7, align 8, !tbaa !9
  %6269 = load i32, ptr %12, align 4, !tbaa !5
  %6270 = load i32, ptr %8, align 4, !tbaa !5
  %6271 = mul nsw i32 33, %6270
  %6272 = add nsw i32 %6269, %6271
  %6273 = sext i32 %6272 to i64
  %6274 = getelementptr inbounds double, ptr %6268, i64 %6273
  %6275 = load double, ptr %6274, align 8, !tbaa !11
  %6276 = call double @llvm.fmuladd.f64(double 0x3FF44CD742FC94E8, double %6275, double %6267)
  %6277 = load ptr, ptr %7, align 8, !tbaa !9
  %6278 = load i32, ptr %12, align 4, !tbaa !5
  %6279 = load i32, ptr %8, align 4, !tbaa !5
  %6280 = mul nsw i32 34, %6279
  %6281 = add nsw i32 %6278, %6280
  %6282 = sext i32 %6281 to i64
  %6283 = getelementptr inbounds double, ptr %6277, i64 %6282
  %6284 = load double, ptr %6283, align 8, !tbaa !11
  %6285 = call double @llvm.fmuladd.f64(double 0xBFFEF1F8514C97DD, double %6284, double %6276)
  %6286 = load ptr, ptr %7, align 8, !tbaa !9
  %6287 = load i32, ptr %12, align 4, !tbaa !5
  %6288 = load i32, ptr %8, align 4, !tbaa !5
  %6289 = mul nsw i32 35, %6288
  %6290 = add nsw i32 %6287, %6289
  %6291 = sext i32 %6290 to i64
  %6292 = getelementptr inbounds double, ptr %6286, i64 %6291
  %6293 = load double, ptr %6292, align 8, !tbaa !11
  %6294 = call double @llvm.fmuladd.f64(double 0xBFF01B2FE70C1193, double %6293, double %6285)
  %6295 = load ptr, ptr %7, align 8, !tbaa !9
  %6296 = load i32, ptr %12, align 4, !tbaa !5
  %6297 = load i32, ptr %8, align 4, !tbaa !5
  %6298 = mul nsw i32 36, %6297
  %6299 = add nsw i32 %6296, %6298
  %6300 = sext i32 %6299 to i64
  %6301 = getelementptr inbounds double, ptr %6295, i64 %6300
  %6302 = load double, ptr %6301, align 8, !tbaa !11
  %6303 = call double @llvm.fmuladd.f64(double 0x3FE4A7E9CB8A3494, double %6302, double %6294)
  %6304 = load ptr, ptr %7, align 8, !tbaa !9
  %6305 = load i32, ptr %12, align 4, !tbaa !5
  %6306 = load i32, ptr %8, align 4, !tbaa !5
  %6307 = mul nsw i32 37, %6306
  %6308 = add nsw i32 %6305, %6307
  %6309 = sext i32 %6308 to i64
  %6310 = getelementptr inbounds double, ptr %6304, i64 %6309
  %6311 = load double, ptr %6310, align 8, !tbaa !11
  %6312 = call double @llvm.fmuladd.f64(double 0x3CA83DE51DC0E6B1, double %6311, double %6303)
  %6313 = load ptr, ptr %7, align 8, !tbaa !9
  %6314 = load i32, ptr %12, align 4, !tbaa !5
  %6315 = load i32, ptr %8, align 4, !tbaa !5
  %6316 = mul nsw i32 38, %6315
  %6317 = add nsw i32 %6314, %6316
  %6318 = sext i32 %6317 to i64
  %6319 = getelementptr inbounds double, ptr %6313, i64 %6318
  %6320 = load double, ptr %6319, align 8, !tbaa !11
  %6321 = call double @llvm.fmuladd.f64(double 0xBC9E34622D69C982, double %6320, double %6312)
  %6322 = load ptr, ptr %7, align 8, !tbaa !9
  %6323 = load i32, ptr %12, align 4, !tbaa !5
  %6324 = load i32, ptr %8, align 4, !tbaa !5
  %6325 = mul nsw i32 39, %6324
  %6326 = add nsw i32 %6323, %6325
  %6327 = sext i32 %6326 to i64
  %6328 = getelementptr inbounds double, ptr %6322, i64 %6327
  %6329 = load double, ptr %6328, align 8, !tbaa !11
  %6330 = call double @llvm.fmuladd.f64(double 0xBCAE8A2AE854D513, double %6329, double %6321)
  %6331 = load ptr, ptr %7, align 8, !tbaa !9
  %6332 = load i32, ptr %12, align 4, !tbaa !5
  %6333 = load i32, ptr %8, align 4, !tbaa !5
  %6334 = mul nsw i32 40, %6333
  %6335 = add nsw i32 %6332, %6334
  %6336 = sext i32 %6335 to i64
  %6337 = getelementptr inbounds double, ptr %6331, i64 %6336
  %6338 = load double, ptr %6337, align 8, !tbaa !11
  %6339 = call double @llvm.fmuladd.f64(double 0x3CB09A426D1ADB3A, double %6338, double %6330)
  %6340 = load ptr, ptr %7, align 8, !tbaa !9
  %6341 = load i32, ptr %12, align 4, !tbaa !5
  %6342 = load i32, ptr %8, align 4, !tbaa !5
  %6343 = mul nsw i32 41, %6342
  %6344 = add nsw i32 %6341, %6343
  %6345 = sext i32 %6344 to i64
  %6346 = getelementptr inbounds double, ptr %6340, i64 %6345
  %6347 = load double, ptr %6346, align 8, !tbaa !11
  %6348 = call double @llvm.fmuladd.f64(double 0x3CC33662C674E1E4, double %6347, double %6339)
  %6349 = load ptr, ptr %7, align 8, !tbaa !9
  %6350 = load i32, ptr %12, align 4, !tbaa !5
  %6351 = load i32, ptr %8, align 4, !tbaa !5
  %6352 = mul nsw i32 42, %6351
  %6353 = add nsw i32 %6350, %6352
  %6354 = sext i32 %6353 to i64
  %6355 = getelementptr inbounds double, ptr %6349, i64 %6354
  %6356 = load double, ptr %6355, align 8, !tbaa !11
  %6357 = call double @llvm.fmuladd.f64(double 0xBFF08654A2D4F756, double %6356, double %6348)
  %6358 = load ptr, ptr %7, align 8, !tbaa !9
  %6359 = load i32, ptr %12, align 4, !tbaa !5
  %6360 = load i32, ptr %8, align 4, !tbaa !5
  %6361 = mul nsw i32 43, %6360
  %6362 = add nsw i32 %6359, %6361
  %6363 = sext i32 %6362 to i64
  %6364 = getelementptr inbounds double, ptr %6358, i64 %6363
  %6365 = load double, ptr %6364, align 8, !tbaa !11
  %6366 = call double @llvm.fmuladd.f64(double 0xBCF4E04E2DCDEC57, double %6365, double %6357)
  %6367 = load ptr, ptr %7, align 8, !tbaa !9
  %6368 = load i32, ptr %12, align 4, !tbaa !5
  %6369 = load i32, ptr %8, align 4, !tbaa !5
  %6370 = mul nsw i32 44, %6369
  %6371 = add nsw i32 %6368, %6370
  %6372 = sext i32 %6371 to i64
  %6373 = getelementptr inbounds double, ptr %6367, i64 %6372
  %6374 = load double, ptr %6373, align 8, !tbaa !11
  %6375 = call double @llvm.fmuladd.f64(double 0xBCF3AAAAAAAAAAAB, double %6374, double %6366)
  %6376 = load ptr, ptr %7, align 8, !tbaa !9
  %6377 = load i32, ptr %12, align 4, !tbaa !5
  %6378 = load i32, ptr %8, align 4, !tbaa !5
  %6379 = mul nsw i32 45, %6378
  %6380 = add nsw i32 %6377, %6379
  %6381 = sext i32 %6380 to i64
  %6382 = getelementptr inbounds double, ptr %6376, i64 %6381
  %6383 = load double, ptr %6382, align 8, !tbaa !11
  %6384 = call double @llvm.fmuladd.f64(double 0xBCE72AAAAAAAAAA8, double %6383, double %6375)
  %6385 = load ptr, ptr %7, align 8, !tbaa !9
  %6386 = load i32, ptr %12, align 4, !tbaa !5
  %6387 = load i32, ptr %8, align 4, !tbaa !5
  %6388 = mul nsw i32 46, %6387
  %6389 = add nsw i32 %6386, %6388
  %6390 = sext i32 %6389 to i64
  %6391 = getelementptr inbounds double, ptr %6385, i64 %6390
  %6392 = load double, ptr %6391, align 8, !tbaa !11
  %6393 = call double @llvm.fmuladd.f64(double 0x3D043F63A4642756, double %6392, double %6384)
  %6394 = load ptr, ptr %7, align 8, !tbaa !9
  %6395 = load i32, ptr %12, align 4, !tbaa !5
  %6396 = load i32, ptr %8, align 4, !tbaa !5
  %6397 = mul nsw i32 47, %6396
  %6398 = add nsw i32 %6395, %6397
  %6399 = sext i32 %6398 to i64
  %6400 = getelementptr inbounds double, ptr %6394, i64 %6399
  %6401 = load double, ptr %6400, align 8, !tbaa !11
  %6402 = call double @llvm.fmuladd.f64(double 0x3D0394B8F9B97CA9, double %6401, double %6393)
  %6403 = load ptr, ptr %7, align 8, !tbaa !9
  %6404 = load i32, ptr %12, align 4, !tbaa !5
  %6405 = load i32, ptr %8, align 4, !tbaa !5
  %6406 = mul nsw i32 48, %6405
  %6407 = add nsw i32 %6404, %6406
  %6408 = sext i32 %6407 to i64
  %6409 = getelementptr inbounds double, ptr %6403, i64 %6408
  %6410 = load double, ptr %6409, align 8, !tbaa !11
  %6411 = call double @llvm.fmuladd.f64(double 0xBFFEFBDEB14F4DAA, double %6410, double %6402)
  %6412 = load ptr, ptr %7, align 8, !tbaa !9
  %6413 = load i32, ptr %12, align 4, !tbaa !5
  %6414 = load i32, ptr %8, align 4, !tbaa !5
  %6415 = mul nsw i32 49, %6414
  %6416 = add nsw i32 %6413, %6415
  %6417 = sext i32 %6416 to i64
  %6418 = getelementptr inbounds double, ptr %6412, i64 %6417
  %6419 = load double, ptr %6418, align 8, !tbaa !11
  %6420 = call double @llvm.fmuladd.f64(double 0x3D09B45DC0DE51B8, double %6419, double %6411)
  %6421 = load ptr, ptr %7, align 8, !tbaa !9
  %6422 = load i32, ptr %12, align 4, !tbaa !5
  %6423 = load i32, ptr %8, align 4, !tbaa !5
  %6424 = mul nsw i32 50, %6423
  %6425 = add nsw i32 %6422, %6424
  %6426 = sext i32 %6425 to i64
  %6427 = getelementptr inbounds double, ptr %6421, i64 %6426
  %6428 = load double, ptr %6427, align 8, !tbaa !11
  %6429 = call double @llvm.fmuladd.f64(double 0x3D08D1BE19B028E3, double %6428, double %6420)
  %6430 = load ptr, ptr %7, align 8, !tbaa !9
  %6431 = load i32, ptr %12, align 4, !tbaa !5
  %6432 = load i32, ptr %8, align 4, !tbaa !5
  %6433 = mul nsw i32 51, %6432
  %6434 = add nsw i32 %6431, %6433
  %6435 = sext i32 %6434 to i64
  %6436 = getelementptr inbounds double, ptr %6430, i64 %6435
  %6437 = load double, ptr %6436, align 8, !tbaa !11
  %6438 = call double @llvm.fmuladd.f64(double 0x3CFE5F4A2FBB3DAA, double %6437, double %6429)
  %6439 = load ptr, ptr %7, align 8, !tbaa !9
  %6440 = load i32, ptr %12, align 4, !tbaa !5
  %6441 = load i32, ptr %8, align 4, !tbaa !5
  %6442 = mul nsw i32 52, %6441
  %6443 = add nsw i32 %6440, %6442
  %6444 = sext i32 %6443 to i64
  %6445 = getelementptr inbounds double, ptr %6439, i64 %6444
  %6446 = load double, ptr %6445, align 8, !tbaa !11
  %6447 = call double @llvm.fmuladd.f64(double 0xBD1A2CB1FB1DAEB0, double %6446, double %6438)
  %6448 = load ptr, ptr %7, align 8, !tbaa !9
  %6449 = load i32, ptr %12, align 4, !tbaa !5
  %6450 = load i32, ptr %8, align 4, !tbaa !5
  %6451 = mul nsw i32 53, %6450
  %6452 = add nsw i32 %6449, %6451
  %6453 = sext i32 %6452 to i64
  %6454 = getelementptr inbounds double, ptr %6448, i64 %6453
  %6455 = load double, ptr %6454, align 8, !tbaa !11
  %6456 = call double @llvm.fmuladd.f64(double 0xBD19BC0F93106564, double %6455, double %6447)
  store double %6456, ptr %11, align 8, !tbaa !11
  %6457 = load double, ptr %11, align 8, !tbaa !11
  %6458 = load ptr, ptr %9, align 8, !tbaa !9
  %6459 = load i32, ptr %12, align 4, !tbaa !5
  %6460 = load i32, ptr %10, align 4, !tbaa !5
  %6461 = mul nsw i32 12, %6460
  %6462 = add nsw i32 %6459, %6461
  %6463 = sext i32 %6462 to i64
  %6464 = getelementptr inbounds double, ptr %6458, i64 %6463
  %6465 = load double, ptr %6464, align 8, !tbaa !11
  %6466 = fadd double %6465, %6457
  store double %6466, ptr %6464, align 8, !tbaa !11
  %6467 = load ptr, ptr %7, align 8, !tbaa !9
  %6468 = load i32, ptr %12, align 4, !tbaa !5
  %6469 = load i32, ptr %8, align 4, !tbaa !5
  %6470 = mul nsw i32 0, %6469
  %6471 = add nsw i32 %6468, %6470
  %6472 = sext i32 %6471 to i64
  %6473 = getelementptr inbounds double, ptr %6467, i64 %6472
  %6474 = load double, ptr %6473, align 8, !tbaa !11
  %6475 = load ptr, ptr %7, align 8, !tbaa !9
  %6476 = load i32, ptr %12, align 4, !tbaa !5
  %6477 = load i32, ptr %8, align 4, !tbaa !5
  %6478 = mul nsw i32 1, %6477
  %6479 = add nsw i32 %6476, %6478
  %6480 = sext i32 %6479 to i64
  %6481 = getelementptr inbounds double, ptr %6475, i64 %6480
  %6482 = load double, ptr %6481, align 8, !tbaa !11
  %6483 = fmul double 0xBCADA2825B7E90BA, %6482
  %6484 = call double @llvm.fmuladd.f64(double 0x3CBF38A0435C33EF, double %6474, double %6483)
  %6485 = load ptr, ptr %7, align 8, !tbaa !9
  %6486 = load i32, ptr %12, align 4, !tbaa !5
  %6487 = load i32, ptr %8, align 4, !tbaa !5
  %6488 = mul nsw i32 2, %6487
  %6489 = add nsw i32 %6486, %6488
  %6490 = sext i32 %6489 to i64
  %6491 = getelementptr inbounds double, ptr %6485, i64 %6490
  %6492 = load double, ptr %6491, align 8, !tbaa !11
  %6493 = call double @llvm.fmuladd.f64(double 0xBCBCECD5C475FFF5, double %6492, double %6484)
  %6494 = load ptr, ptr %7, align 8, !tbaa !9
  %6495 = load i32, ptr %12, align 4, !tbaa !5
  %6496 = load i32, ptr %8, align 4, !tbaa !5
  %6497 = mul nsw i32 3, %6496
  %6498 = add nsw i32 %6495, %6497
  %6499 = sext i32 %6498 to i64
  %6500 = getelementptr inbounds double, ptr %6494, i64 %6499
  %6501 = load double, ptr %6500, align 8, !tbaa !11
  %6502 = call double @llvm.fmuladd.f64(double 0x3C7C7B20A14EC091, double %6501, double %6493)
  %6503 = load ptr, ptr %7, align 8, !tbaa !9
  %6504 = load i32, ptr %12, align 4, !tbaa !5
  %6505 = load i32, ptr %8, align 4, !tbaa !5
  %6506 = mul nsw i32 4, %6505
  %6507 = add nsw i32 %6504, %6506
  %6508 = sext i32 %6507 to i64
  %6509 = getelementptr inbounds double, ptr %6503, i64 %6508
  %6510 = load double, ptr %6509, align 8, !tbaa !11
  %6511 = call double @llvm.fmuladd.f64(double 0xBCAC7CF2FBE4989E, double %6510, double %6502)
  %6512 = load ptr, ptr %7, align 8, !tbaa !9
  %6513 = load i32, ptr %12, align 4, !tbaa !5
  %6514 = load i32, ptr %8, align 4, !tbaa !5
  %6515 = mul nsw i32 5, %6514
  %6516 = add nsw i32 %6513, %6515
  %6517 = sext i32 %6516 to i64
  %6518 = getelementptr inbounds double, ptr %6512, i64 %6517
  %6519 = load double, ptr %6518, align 8, !tbaa !11
  %6520 = call double @llvm.fmuladd.f64(double 0xBCBCA248A7C7FDDE, double %6519, double %6511)
  %6521 = load ptr, ptr %7, align 8, !tbaa !9
  %6522 = load i32, ptr %12, align 4, !tbaa !5
  %6523 = load i32, ptr %8, align 4, !tbaa !5
  %6524 = mul nsw i32 6, %6523
  %6525 = add nsw i32 %6522, %6524
  %6526 = sext i32 %6525 to i64
  %6527 = getelementptr inbounds double, ptr %6521, i64 %6526
  %6528 = load double, ptr %6527, align 8, !tbaa !11
  %6529 = call double @llvm.fmuladd.f64(double 0xBC96AF31F1A1F8A3, double %6528, double %6520)
  %6530 = load ptr, ptr %7, align 8, !tbaa !9
  %6531 = load i32, ptr %12, align 4, !tbaa !5
  %6532 = load i32, ptr %8, align 4, !tbaa !5
  %6533 = mul nsw i32 7, %6532
  %6534 = add nsw i32 %6531, %6533
  %6535 = sext i32 %6534 to i64
  %6536 = getelementptr inbounds double, ptr %6530, i64 %6535
  %6537 = load double, ptr %6536, align 8, !tbaa !11
  %6538 = call double @llvm.fmuladd.f64(double 0x3CBEB0BE4F96FAE5, double %6537, double %6529)
  %6539 = load ptr, ptr %7, align 8, !tbaa !9
  %6540 = load i32, ptr %12, align 4, !tbaa !5
  %6541 = load i32, ptr %8, align 4, !tbaa !5
  %6542 = mul nsw i32 8, %6541
  %6543 = add nsw i32 %6540, %6542
  %6544 = sext i32 %6543 to i64
  %6545 = getelementptr inbounds double, ptr %6539, i64 %6544
  %6546 = load double, ptr %6545, align 8, !tbaa !11
  %6547 = call double @llvm.fmuladd.f64(double 0x3C84693BAEDA743C, double %6546, double %6538)
  %6548 = load ptr, ptr %7, align 8, !tbaa !9
  %6549 = load i32, ptr %12, align 4, !tbaa !5
  %6550 = load i32, ptr %8, align 4, !tbaa !5
  %6551 = mul nsw i32 9, %6550
  %6552 = add nsw i32 %6549, %6551
  %6553 = sext i32 %6552 to i64
  %6554 = getelementptr inbounds double, ptr %6548, i64 %6553
  %6555 = load double, ptr %6554, align 8, !tbaa !11
  %6556 = call double @llvm.fmuladd.f64(double 0xBCB3ACD3D4ADCCB0, double %6555, double %6547)
  %6557 = load ptr, ptr %7, align 8, !tbaa !9
  %6558 = load i32, ptr %12, align 4, !tbaa !5
  %6559 = load i32, ptr %8, align 4, !tbaa !5
  %6560 = mul nsw i32 10, %6559
  %6561 = add nsw i32 %6558, %6560
  %6562 = sext i32 %6561 to i64
  %6563 = getelementptr inbounds double, ptr %6557, i64 %6562
  %6564 = load double, ptr %6563, align 8, !tbaa !11
  %6565 = call double @llvm.fmuladd.f64(double 0x3CBD77D82F675FE2, double %6564, double %6556)
  %6566 = load ptr, ptr %7, align 8, !tbaa !9
  %6567 = load i32, ptr %12, align 4, !tbaa !5
  %6568 = load i32, ptr %8, align 4, !tbaa !5
  %6569 = mul nsw i32 11, %6568
  %6570 = add nsw i32 %6567, %6569
  %6571 = sext i32 %6570 to i64
  %6572 = getelementptr inbounds double, ptr %6566, i64 %6571
  %6573 = load double, ptr %6572, align 8, !tbaa !11
  %6574 = call double @llvm.fmuladd.f64(double 0xBC87B94EDD358738, double %6573, double %6565)
  %6575 = load ptr, ptr %7, align 8, !tbaa !9
  %6576 = load i32, ptr %12, align 4, !tbaa !5
  %6577 = load i32, ptr %8, align 4, !tbaa !5
  %6578 = mul nsw i32 12, %6577
  %6579 = add nsw i32 %6576, %6578
  %6580 = sext i32 %6579 to i64
  %6581 = getelementptr inbounds double, ptr %6575, i64 %6580
  %6582 = load double, ptr %6581, align 8, !tbaa !11
  %6583 = call double @llvm.fmuladd.f64(double 0x3FE4EDE8EE256108, double %6582, double %6574)
  %6584 = load ptr, ptr %7, align 8, !tbaa !9
  %6585 = load i32, ptr %12, align 4, !tbaa !5
  %6586 = load i32, ptr %8, align 4, !tbaa !5
  %6587 = mul nsw i32 13, %6586
  %6588 = add nsw i32 %6585, %6587
  %6589 = sext i32 %6588 to i64
  %6590 = getelementptr inbounds double, ptr %6584, i64 %6589
  %6591 = load double, ptr %6590, align 8, !tbaa !11
  %6592 = call double @llvm.fmuladd.f64(double 0xBFE8AC73392375C8, double %6591, double %6583)
  %6593 = load ptr, ptr %7, align 8, !tbaa !9
  %6594 = load i32, ptr %12, align 4, !tbaa !5
  %6595 = load i32, ptr %8, align 4, !tbaa !5
  %6596 = mul nsw i32 14, %6595
  %6597 = add nsw i32 %6594, %6596
  %6598 = sext i32 %6597 to i64
  %6599 = getelementptr inbounds double, ptr %6593, i64 %6598
  %6600 = load double, ptr %6599, align 8, !tbaa !11
  %6601 = call double @llvm.fmuladd.f64(double 0x3FEA5488770B26A9, double %6600, double %6592)
  %6602 = load ptr, ptr %7, align 8, !tbaa !9
  %6603 = load i32, ptr %12, align 4, !tbaa !5
  %6604 = load i32, ptr %8, align 4, !tbaa !5
  %6605 = mul nsw i32 15, %6604
  %6606 = add nsw i32 %6603, %6605
  %6607 = sext i32 %6606 to i64
  %6608 = getelementptr inbounds double, ptr %6602, i64 %6607
  %6609 = load double, ptr %6608, align 8, !tbaa !11
  %6610 = call double @llvm.fmuladd.f64(double 0xBFFEF1F8514C97D0, double %6609, double %6601)
  %6611 = load ptr, ptr %7, align 8, !tbaa !9
  %6612 = load i32, ptr %12, align 4, !tbaa !5
  %6613 = load i32, ptr %8, align 4, !tbaa !5
  %6614 = mul nsw i32 16, %6613
  %6615 = add nsw i32 %6612, %6614
  %6616 = sext i32 %6615 to i64
  %6617 = getelementptr inbounds double, ptr %6611, i64 %6616
  %6618 = load double, ptr %6617, align 8, !tbaa !11
  %6619 = call double @llvm.fmuladd.f64(double 0x3FF44CD742FC94DA, double %6618, double %6610)
  %6620 = load ptr, ptr %7, align 8, !tbaa !9
  %6621 = load i32, ptr %12, align 4, !tbaa !5
  %6622 = load i32, ptr %8, align 4, !tbaa !5
  %6623 = mul nsw i32 17, %6622
  %6624 = add nsw i32 %6621, %6623
  %6625 = sext i32 %6624 to i64
  %6626 = getelementptr inbounds double, ptr %6620, i64 %6625
  %6627 = load double, ptr %6626, align 8, !tbaa !11
  %6628 = call double @llvm.fmuladd.f64(double 0xBFF01B2FE70C118E, double %6627, double %6619)
  %6629 = load ptr, ptr %7, align 8, !tbaa !9
  %6630 = load i32, ptr %12, align 4, !tbaa !5
  %6631 = load i32, ptr %8, align 4, !tbaa !5
  %6632 = mul nsw i32 18, %6631
  %6633 = add nsw i32 %6630, %6632
  %6634 = sext i32 %6633 to i64
  %6635 = getelementptr inbounds double, ptr %6629, i64 %6634
  %6636 = load double, ptr %6635, align 8, !tbaa !11
  %6637 = call double @llvm.fmuladd.f64(double 0x3C8C175CC3AC3DA0, double %6636, double %6628)
  %6638 = load ptr, ptr %7, align 8, !tbaa !9
  %6639 = load i32, ptr %12, align 4, !tbaa !5
  %6640 = load i32, ptr %8, align 4, !tbaa !5
  %6641 = mul nsw i32 19, %6640
  %6642 = add nsw i32 %6639, %6641
  %6643 = sext i32 %6642 to i64
  %6644 = getelementptr inbounds double, ptr %6638, i64 %6643
  %6645 = load double, ptr %6644, align 8, !tbaa !11
  %6646 = call double @llvm.fmuladd.f64(double 0x3CC7A90CBDB122D2, double %6645, double %6637)
  %6647 = load ptr, ptr %7, align 8, !tbaa !9
  %6648 = load i32, ptr %12, align 4, !tbaa !5
  %6649 = load i32, ptr %8, align 4, !tbaa !5
  %6650 = mul nsw i32 20, %6649
  %6651 = add nsw i32 %6648, %6650
  %6652 = sext i32 %6651 to i64
  %6653 = getelementptr inbounds double, ptr %6647, i64 %6652
  %6654 = load double, ptr %6653, align 8, !tbaa !11
  %6655 = call double @llvm.fmuladd.f64(double 0xBCC511D8384A1A55, double %6654, double %6646)
  %6656 = load ptr, ptr %7, align 8, !tbaa !9
  %6657 = load i32, ptr %12, align 4, !tbaa !5
  %6658 = load i32, ptr %8, align 4, !tbaa !5
  %6659 = mul nsw i32 21, %6658
  %6660 = add nsw i32 %6657, %6659
  %6661 = sext i32 %6660 to i64
  %6662 = getelementptr inbounds double, ptr %6656, i64 %6661
  %6663 = load double, ptr %6662, align 8, !tbaa !11
  %6664 = call double @llvm.fmuladd.f64(double 0x3CAADBF51C371479, double %6663, double %6655)
  %6665 = load ptr, ptr %7, align 8, !tbaa !9
  %6666 = load i32, ptr %12, align 4, !tbaa !5
  %6667 = load i32, ptr %8, align 4, !tbaa !5
  %6668 = mul nsw i32 22, %6667
  %6669 = add nsw i32 %6666, %6668
  %6670 = sext i32 %6669 to i64
  %6671 = getelementptr inbounds double, ptr %6665, i64 %6670
  %6672 = load double, ptr %6671, align 8, !tbaa !11
  %6673 = call double @llvm.fmuladd.f64(double 0x3CA4D75F1529F75A, double %6672, double %6664)
  %6674 = load ptr, ptr %7, align 8, !tbaa !9
  %6675 = load i32, ptr %12, align 4, !tbaa !5
  %6676 = load i32, ptr %8, align 4, !tbaa !5
  %6677 = mul nsw i32 23, %6676
  %6678 = add nsw i32 %6675, %6677
  %6679 = sext i32 %6678 to i64
  %6680 = getelementptr inbounds double, ptr %6674, i64 %6679
  %6681 = load double, ptr %6680, align 8, !tbaa !11
  %6682 = call double @llvm.fmuladd.f64(double 0xBCB8F2F00581C5B3, double %6681, double %6673)
  %6683 = load ptr, ptr %7, align 8, !tbaa !9
  %6684 = load i32, ptr %12, align 4, !tbaa !5
  %6685 = load i32, ptr %8, align 4, !tbaa !5
  %6686 = mul nsw i32 24, %6685
  %6687 = add nsw i32 %6684, %6686
  %6688 = sext i32 %6687 to i64
  %6689 = getelementptr inbounds double, ptr %6683, i64 %6688
  %6690 = load double, ptr %6689, align 8, !tbaa !11
  %6691 = call double @llvm.fmuladd.f64(double 0x3CB256380966451A, double %6690, double %6682)
  %6692 = load ptr, ptr %7, align 8, !tbaa !9
  %6693 = load i32, ptr %12, align 4, !tbaa !5
  %6694 = load i32, ptr %8, align 4, !tbaa !5
  %6695 = mul nsw i32 25, %6694
  %6696 = add nsw i32 %6693, %6695
  %6697 = sext i32 %6696 to i64
  %6698 = getelementptr inbounds double, ptr %6692, i64 %6697
  %6699 = load double, ptr %6698, align 8, !tbaa !11
  %6700 = call double @llvm.fmuladd.f64(double 0x3CC01E6C16082D55, double %6699, double %6691)
  %6701 = load ptr, ptr %7, align 8, !tbaa !9
  %6702 = load i32, ptr %12, align 4, !tbaa !5
  %6703 = load i32, ptr %8, align 4, !tbaa !5
  %6704 = mul nsw i32 26, %6703
  %6705 = add nsw i32 %6702, %6704
  %6706 = sext i32 %6705 to i64
  %6707 = getelementptr inbounds double, ptr %6701, i64 %6706
  %6708 = load double, ptr %6707, align 8, !tbaa !11
  %6709 = call double @llvm.fmuladd.f64(double 0x3CAA303E978A5038, double %6708, double %6700)
  %6710 = load ptr, ptr %7, align 8, !tbaa !9
  %6711 = load i32, ptr %12, align 4, !tbaa !5
  %6712 = load i32, ptr %8, align 4, !tbaa !5
  %6713 = mul nsw i32 27, %6712
  %6714 = add nsw i32 %6711, %6713
  %6715 = sext i32 %6714 to i64
  %6716 = getelementptr inbounds double, ptr %6710, i64 %6715
  %6717 = load double, ptr %6716, align 8, !tbaa !11
  %6718 = call double @llvm.fmuladd.f64(double 0x3CAC5EADE484449F, double %6717, double %6709)
  %6719 = load ptr, ptr %7, align 8, !tbaa !9
  %6720 = load i32, ptr %12, align 4, !tbaa !5
  %6721 = load i32, ptr %8, align 4, !tbaa !5
  %6722 = mul nsw i32 28, %6721
  %6723 = add nsw i32 %6720, %6722
  %6724 = sext i32 %6723 to i64
  %6725 = getelementptr inbounds double, ptr %6719, i64 %6724
  %6726 = load double, ptr %6725, align 8, !tbaa !11
  %6727 = call double @llvm.fmuladd.f64(double 0x3CAC4A69A26D89C3, double %6726, double %6718)
  %6728 = load ptr, ptr %7, align 8, !tbaa !9
  %6729 = load i32, ptr %12, align 4, !tbaa !5
  %6730 = load i32, ptr %8, align 4, !tbaa !5
  %6731 = mul nsw i32 29, %6730
  %6732 = add nsw i32 %6729, %6731
  %6733 = sext i32 %6732 to i64
  %6734 = getelementptr inbounds double, ptr %6728, i64 %6733
  %6735 = load double, ptr %6734, align 8, !tbaa !11
  %6736 = call double @llvm.fmuladd.f64(double 0x3C839062B03D962B, double %6735, double %6727)
  %6737 = load ptr, ptr %7, align 8, !tbaa !9
  %6738 = load i32, ptr %12, align 4, !tbaa !5
  %6739 = load i32, ptr %8, align 4, !tbaa !5
  %6740 = mul nsw i32 30, %6739
  %6741 = add nsw i32 %6738, %6740
  %6742 = sext i32 %6741 to i64
  %6743 = getelementptr inbounds double, ptr %6737, i64 %6742
  %6744 = load double, ptr %6743, align 8, !tbaa !11
  %6745 = call double @llvm.fmuladd.f64(double 0xBF7DFA2300BBB200, double %6744, double %6736)
  %6746 = load ptr, ptr %7, align 8, !tbaa !9
  %6747 = load i32, ptr %12, align 4, !tbaa !5
  %6748 = load i32, ptr %8, align 4, !tbaa !5
  %6749 = mul nsw i32 31, %6748
  %6750 = add nsw i32 %6747, %6749
  %6751 = sext i32 %6750 to i64
  %6752 = getelementptr inbounds double, ptr %6746, i64 %6751
  %6753 = load double, ptr %6752, align 8, !tbaa !11
  %6754 = call double @llvm.fmuladd.f64(double 0x3FF44E3F94172F46, double %6753, double %6745)
  %6755 = load ptr, ptr %7, align 8, !tbaa !9
  %6756 = load i32, ptr %12, align 4, !tbaa !5
  %6757 = load i32, ptr %8, align 4, !tbaa !5
  %6758 = mul nsw i32 32, %6757
  %6759 = add nsw i32 %6756, %6758
  %6760 = sext i32 %6759 to i64
  %6761 = getelementptr inbounds double, ptr %6755, i64 %6760
  %6762 = load double, ptr %6761, align 8, !tbaa !11
  %6763 = call double @llvm.fmuladd.f64(double 0x3FB9ECDD981278FA, double %6762, double %6754)
  %6764 = load ptr, ptr %7, align 8, !tbaa !9
  %6765 = load i32, ptr %12, align 4, !tbaa !5
  %6766 = load i32, ptr %8, align 4, !tbaa !5
  %6767 = mul nsw i32 33, %6766
  %6768 = add nsw i32 %6765, %6767
  %6769 = sext i32 %6768 to i64
  %6770 = getelementptr inbounds double, ptr %6764, i64 %6769
  %6771 = load double, ptr %6770, align 8, !tbaa !11
  %6772 = call double @llvm.fmuladd.f64(double 0xBFE4FBED5D8A9650, double %6771, double %6763)
  %6773 = load ptr, ptr %7, align 8, !tbaa !9
  %6774 = load i32, ptr %12, align 4, !tbaa !5
  %6775 = load i32, ptr %8, align 4, !tbaa !5
  %6776 = mul nsw i32 34, %6775
  %6777 = add nsw i32 %6774, %6776
  %6778 = sext i32 %6777 to i64
  %6779 = getelementptr inbounds double, ptr %6773, i64 %6778
  %6780 = load double, ptr %6779, align 8, !tbaa !11
  %6781 = call double @llvm.fmuladd.f64(double 0xBF83952FC55A7390, double %6780, double %6772)
  %6782 = load ptr, ptr %7, align 8, !tbaa !9
  %6783 = load i32, ptr %12, align 4, !tbaa !5
  %6784 = load i32, ptr %8, align 4, !tbaa !5
  %6785 = mul nsw i32 35, %6784
  %6786 = add nsw i32 %6783, %6785
  %6787 = sext i32 %6786 to i64
  %6788 = getelementptr inbounds double, ptr %6782, i64 %6787
  %6789 = load double, ptr %6788, align 8, !tbaa !11
  %6790 = call double @llvm.fmuladd.f64(double 0x3FD50884576D0BB0, double %6789, double %6781)
  %6791 = load ptr, ptr %7, align 8, !tbaa !9
  %6792 = load i32, ptr %12, align 4, !tbaa !5
  %6793 = load i32, ptr %8, align 4, !tbaa !5
  %6794 = mul nsw i32 36, %6793
  %6795 = add nsw i32 %6792, %6794
  %6796 = sext i32 %6795 to i64
  %6797 = getelementptr inbounds double, ptr %6791, i64 %6796
  %6798 = load double, ptr %6797, align 8, !tbaa !11
  %6799 = call double @llvm.fmuladd.f64(double 0x3CA9156DC73A81A0, double %6798, double %6790)
  %6800 = load ptr, ptr %7, align 8, !tbaa !9
  %6801 = load i32, ptr %12, align 4, !tbaa !5
  %6802 = load i32, ptr %8, align 4, !tbaa !5
  %6803 = mul nsw i32 37, %6802
  %6804 = add nsw i32 %6801, %6803
  %6805 = sext i32 %6804 to i64
  %6806 = getelementptr inbounds double, ptr %6800, i64 %6805
  %6807 = load double, ptr %6806, align 8, !tbaa !11
  %6808 = call double @llvm.fmuladd.f64(double 0x3FE4A7E9CB8A349B, double %6807, double %6799)
  %6809 = load ptr, ptr %7, align 8, !tbaa !9
  %6810 = load i32, ptr %12, align 4, !tbaa !5
  %6811 = load i32, ptr %8, align 4, !tbaa !5
  %6812 = mul nsw i32 38, %6811
  %6813 = add nsw i32 %6810, %6812
  %6814 = sext i32 %6813 to i64
  %6815 = getelementptr inbounds double, ptr %6809, i64 %6814
  %6816 = load double, ptr %6815, align 8, !tbaa !11
  %6817 = call double @llvm.fmuladd.f64(double 0x3CB3ED7C18573421, double %6816, double %6808)
  %6818 = load ptr, ptr %7, align 8, !tbaa !9
  %6819 = load i32, ptr %12, align 4, !tbaa !5
  %6820 = load i32, ptr %8, align 4, !tbaa !5
  %6821 = mul nsw i32 39, %6820
  %6822 = add nsw i32 %6819, %6821
  %6823 = sext i32 %6822 to i64
  %6824 = getelementptr inbounds double, ptr %6818, i64 %6823
  %6825 = load double, ptr %6824, align 8, !tbaa !11
  %6826 = call double @llvm.fmuladd.f64(double 0x3C7273617E940A5F, double %6825, double %6817)
  %6827 = load ptr, ptr %7, align 8, !tbaa !9
  %6828 = load i32, ptr %12, align 4, !tbaa !5
  %6829 = load i32, ptr %8, align 4, !tbaa !5
  %6830 = mul nsw i32 40, %6829
  %6831 = add nsw i32 %6828, %6830
  %6832 = sext i32 %6831 to i64
  %6833 = getelementptr inbounds double, ptr %6827, i64 %6832
  %6834 = load double, ptr %6833, align 8, !tbaa !11
  %6835 = call double @llvm.fmuladd.f64(double 0xBC8999CF078525B6, double %6834, double %6826)
  %6836 = load ptr, ptr %7, align 8, !tbaa !9
  %6837 = load i32, ptr %12, align 4, !tbaa !5
  %6838 = load i32, ptr %8, align 4, !tbaa !5
  %6839 = mul nsw i32 41, %6838
  %6840 = add nsw i32 %6837, %6839
  %6841 = sext i32 %6840 to i64
  %6842 = getelementptr inbounds double, ptr %6836, i64 %6841
  %6843 = load double, ptr %6842, align 8, !tbaa !11
  %6844 = call double @llvm.fmuladd.f64(double 0xBCB71018CCDEBB81, double %6843, double %6835)
  %6845 = load ptr, ptr %7, align 8, !tbaa !9
  %6846 = load i32, ptr %12, align 4, !tbaa !5
  %6847 = load i32, ptr %8, align 4, !tbaa !5
  %6848 = mul nsw i32 42, %6847
  %6849 = add nsw i32 %6846, %6848
  %6850 = sext i32 %6849 to i64
  %6851 = getelementptr inbounds double, ptr %6845, i64 %6850
  %6852 = load double, ptr %6851, align 8, !tbaa !11
  %6853 = call double @llvm.fmuladd.f64(double 0xBCF414B8F9B97CAA, double %6852, double %6844)
  %6854 = load ptr, ptr %7, align 8, !tbaa !9
  %6855 = load i32, ptr %12, align 4, !tbaa !5
  %6856 = load i32, ptr %8, align 4, !tbaa !5
  %6857 = mul nsw i32 43, %6856
  %6858 = add nsw i32 %6855, %6857
  %6859 = sext i32 %6858 to i64
  %6860 = getelementptr inbounds double, ptr %6854, i64 %6859
  %6861 = load double, ptr %6860, align 8, !tbaa !11
  %6862 = call double @llvm.fmuladd.f64(double 0xBFF08654A2D4F75B, double %6861, double %6853)
  %6863 = load ptr, ptr %7, align 8, !tbaa !9
  %6864 = load i32, ptr %12, align 4, !tbaa !5
  %6865 = load i32, ptr %8, align 4, !tbaa !5
  %6866 = mul nsw i32 44, %6865
  %6867 = add nsw i32 %6864, %6866
  %6868 = sext i32 %6867 to i64
  %6869 = getelementptr inbounds double, ptr %6863, i64 %6868
  %6870 = load double, ptr %6869, align 8, !tbaa !11
  %6871 = call double @llvm.fmuladd.f64(double 0xBCF39AF8D8789700, double %6870, double %6862)
  %6872 = load ptr, ptr %7, align 8, !tbaa !9
  %6873 = load i32, ptr %12, align 4, !tbaa !5
  %6874 = load i32, ptr %8, align 4, !tbaa !5
  %6875 = mul nsw i32 45, %6874
  %6876 = add nsw i32 %6873, %6875
  %6877 = sext i32 %6876 to i64
  %6878 = getelementptr inbounds double, ptr %6872, i64 %6877
  %6879 = load double, ptr %6878, align 8, !tbaa !11
  %6880 = call double @llvm.fmuladd.f64(double 0x3D05A83AA25A713E, double %6879, double %6871)
  %6881 = load ptr, ptr %7, align 8, !tbaa !9
  %6882 = load i32, ptr %12, align 4, !tbaa !5
  %6883 = load i32, ptr %8, align 4, !tbaa !5
  %6884 = mul nsw i32 46, %6883
  %6885 = add nsw i32 %6882, %6884
  %6886 = sext i32 %6885 to i64
  %6887 = getelementptr inbounds double, ptr %6881, i64 %6886
  %6888 = load double, ptr %6887, align 8, !tbaa !11
  %6889 = call double @llvm.fmuladd.f64(double 0xBCE7EC7FBD7E34A3, double %6888, double %6880)
  %6890 = load ptr, ptr %7, align 8, !tbaa !9
  %6891 = load i32, ptr %12, align 4, !tbaa !5
  %6892 = load i32, ptr %8, align 4, !tbaa !5
  %6893 = mul nsw i32 47, %6892
  %6894 = add nsw i32 %6891, %6893
  %6895 = sext i32 %6894 to i64
  %6896 = getelementptr inbounds double, ptr %6890, i64 %6895
  %6897 = load double, ptr %6896, align 8, !tbaa !11
  %6898 = call double @llvm.fmuladd.f64(double 0x3D055F1576963AFE, double %6897, double %6889)
  %6899 = load ptr, ptr %7, align 8, !tbaa !9
  %6900 = load i32, ptr %12, align 4, !tbaa !5
  %6901 = load i32, ptr %8, align 4, !tbaa !5
  %6902 = mul nsw i32 48, %6901
  %6903 = add nsw i32 %6900, %6902
  %6904 = sext i32 %6903 to i64
  %6905 = getelementptr inbounds double, ptr %6899, i64 %6904
  %6906 = load double, ptr %6905, align 8, !tbaa !11
  %6907 = call double @llvm.fmuladd.f64(double 0x3D06F41F8D97F877, double %6906, double %6898)
  %6908 = load ptr, ptr %7, align 8, !tbaa !9
  %6909 = load i32, ptr %12, align 4, !tbaa !5
  %6910 = load i32, ptr %8, align 4, !tbaa !5
  %6911 = mul nsw i32 49, %6910
  %6912 = add nsw i32 %6909, %6911
  %6913 = sext i32 %6912 to i64
  %6914 = getelementptr inbounds double, ptr %6908, i64 %6913
  %6915 = load double, ptr %6914, align 8, !tbaa !11
  %6916 = call double @llvm.fmuladd.f64(double 0xBFFEFBDEB14F4D98, double %6915, double %6907)
  %6917 = load ptr, ptr %7, align 8, !tbaa !9
  %6918 = load i32, ptr %12, align 4, !tbaa !5
  %6919 = load i32, ptr %8, align 4, !tbaa !5
  %6920 = mul nsw i32 50, %6919
  %6921 = add nsw i32 %6918, %6920
  %6922 = sext i32 %6921 to i64
  %6923 = getelementptr inbounds double, ptr %6917, i64 %6922
  %6924 = load double, ptr %6923, align 8, !tbaa !11
  %6925 = call double @llvm.fmuladd.f64(double 0x3D0823B40E9CD388, double %6924, double %6916)
  %6926 = load ptr, ptr %7, align 8, !tbaa !9
  %6927 = load i32, ptr %12, align 4, !tbaa !5
  %6928 = load i32, ptr %8, align 4, !tbaa !5
  %6929 = mul nsw i32 51, %6928
  %6930 = add nsw i32 %6927, %6929
  %6931 = sext i32 %6930 to i64
  %6932 = getelementptr inbounds double, ptr %6926, i64 %6931
  %6933 = load double, ptr %6932, align 8, !tbaa !11
  %6934 = call double @llvm.fmuladd.f64(double 0xBD1BAA230A55AE0F, double %6933, double %6925)
  %6935 = load ptr, ptr %7, align 8, !tbaa !9
  %6936 = load i32, ptr %12, align 4, !tbaa !5
  %6937 = load i32, ptr %8, align 4, !tbaa !5
  %6938 = mul nsw i32 52, %6937
  %6939 = add nsw i32 %6936, %6938
  %6940 = sext i32 %6939 to i64
  %6941 = getelementptr inbounds double, ptr %6935, i64 %6940
  %6942 = load double, ptr %6941, align 8, !tbaa !11
  %6943 = call double @llvm.fmuladd.f64(double 0x3CFCCEA1BB3C83CA, double %6942, double %6934)
  %6944 = load ptr, ptr %7, align 8, !tbaa !9
  %6945 = load i32, ptr %12, align 4, !tbaa !5
  %6946 = load i32, ptr %8, align 4, !tbaa !5
  %6947 = mul nsw i32 53, %6946
  %6948 = add nsw i32 %6945, %6947
  %6949 = sext i32 %6948 to i64
  %6950 = getelementptr inbounds double, ptr %6944, i64 %6949
  %6951 = load double, ptr %6950, align 8, !tbaa !11
  %6952 = call double @llvm.fmuladd.f64(double 0xBD19F767A944DB32, double %6951, double %6943)
  store double %6952, ptr %11, align 8, !tbaa !11
  %6953 = load double, ptr %11, align 8, !tbaa !11
  %6954 = load ptr, ptr %9, align 8, !tbaa !9
  %6955 = load i32, ptr %12, align 4, !tbaa !5
  %6956 = load i32, ptr %10, align 4, !tbaa !5
  %6957 = mul nsw i32 13, %6956
  %6958 = add nsw i32 %6955, %6957
  %6959 = sext i32 %6958 to i64
  %6960 = getelementptr inbounds double, ptr %6954, i64 %6959
  %6961 = load double, ptr %6960, align 8, !tbaa !11
  %6962 = fadd double %6961, %6953
  store double %6962, ptr %6960, align 8, !tbaa !11
  %6963 = load ptr, ptr %7, align 8, !tbaa !9
  %6964 = load i32, ptr %12, align 4, !tbaa !5
  %6965 = load i32, ptr %8, align 4, !tbaa !5
  %6966 = mul nsw i32 0, %6965
  %6967 = add nsw i32 %6964, %6966
  %6968 = sext i32 %6967 to i64
  %6969 = getelementptr inbounds double, ptr %6963, i64 %6968
  %6970 = load double, ptr %6969, align 8, !tbaa !11
  %6971 = load ptr, ptr %7, align 8, !tbaa !9
  %6972 = load i32, ptr %12, align 4, !tbaa !5
  %6973 = load i32, ptr %8, align 4, !tbaa !5
  %6974 = mul nsw i32 1, %6973
  %6975 = add nsw i32 %6972, %6974
  %6976 = sext i32 %6975 to i64
  %6977 = getelementptr inbounds double, ptr %6971, i64 %6976
  %6978 = load double, ptr %6977, align 8, !tbaa !11
  %6979 = fmul double 0x3CC0A43BB8778AD2, %6978
  %6980 = call double @llvm.fmuladd.f64(double 0x3CC1A7951F32AFEF, double %6970, double %6979)
  %6981 = load ptr, ptr %7, align 8, !tbaa !9
  %6982 = load i32, ptr %12, align 4, !tbaa !5
  %6983 = load i32, ptr %8, align 4, !tbaa !5
  %6984 = mul nsw i32 2, %6983
  %6985 = add nsw i32 %6982, %6984
  %6986 = sext i32 %6985 to i64
  %6987 = getelementptr inbounds double, ptr %6981, i64 %6986
  %6988 = load double, ptr %6987, align 8, !tbaa !11
  %6989 = call double @llvm.fmuladd.f64(double 0x3CD8A0EBF8B34D44, double %6988, double %6980)
  %6990 = load ptr, ptr %7, align 8, !tbaa !9
  %6991 = load i32, ptr %12, align 4, !tbaa !5
  %6992 = load i32, ptr %8, align 4, !tbaa !5
  %6993 = mul nsw i32 3, %6992
  %6994 = add nsw i32 %6991, %6993
  %6995 = sext i32 %6994 to i64
  %6996 = getelementptr inbounds double, ptr %6990, i64 %6995
  %6997 = load double, ptr %6996, align 8, !tbaa !11
  %6998 = call double @llvm.fmuladd.f64(double 0x3CBA5323016547EC, double %6997, double %6989)
  %6999 = load ptr, ptr %7, align 8, !tbaa !9
  %7000 = load i32, ptr %12, align 4, !tbaa !5
  %7001 = load i32, ptr %8, align 4, !tbaa !5
  %7002 = mul nsw i32 4, %7001
  %7003 = add nsw i32 %7000, %7002
  %7004 = sext i32 %7003 to i64
  %7005 = getelementptr inbounds double, ptr %6999, i64 %7004
  %7006 = load double, ptr %7005, align 8, !tbaa !11
  %7007 = call double @llvm.fmuladd.f64(double 0x3CA05AC5DCA571DC, double %7006, double %6998)
  %7008 = load ptr, ptr %7, align 8, !tbaa !9
  %7009 = load i32, ptr %12, align 4, !tbaa !5
  %7010 = load i32, ptr %8, align 4, !tbaa !5
  %7011 = mul nsw i32 5, %7010
  %7012 = add nsw i32 %7009, %7011
  %7013 = sext i32 %7012 to i64
  %7014 = getelementptr inbounds double, ptr %7008, i64 %7013
  %7015 = load double, ptr %7014, align 8, !tbaa !11
  %7016 = call double @llvm.fmuladd.f64(double 0xBCB0EC52293F1982, double %7015, double %7007)
  %7017 = load ptr, ptr %7, align 8, !tbaa !9
  %7018 = load i32, ptr %12, align 4, !tbaa !5
  %7019 = load i32, ptr %8, align 4, !tbaa !5
  %7020 = mul nsw i32 6, %7019
  %7021 = add nsw i32 %7018, %7020
  %7022 = sext i32 %7021 to i64
  %7023 = getelementptr inbounds double, ptr %7017, i64 %7022
  %7024 = load double, ptr %7023, align 8, !tbaa !11
  %7025 = call double @llvm.fmuladd.f64(double 0x3C88BB0D274B4D20, double %7024, double %7016)
  %7026 = load ptr, ptr %7, align 8, !tbaa !9
  %7027 = load i32, ptr %12, align 4, !tbaa !5
  %7028 = load i32, ptr %8, align 4, !tbaa !5
  %7029 = mul nsw i32 7, %7028
  %7030 = add nsw i32 %7027, %7029
  %7031 = sext i32 %7030 to i64
  %7032 = getelementptr inbounds double, ptr %7026, i64 %7031
  %7033 = load double, ptr %7032, align 8, !tbaa !11
  %7034 = call double @llvm.fmuladd.f64(double 0xBCA88EEBBA111342, double %7033, double %7025)
  %7035 = load ptr, ptr %7, align 8, !tbaa !9
  %7036 = load i32, ptr %12, align 4, !tbaa !5
  %7037 = load i32, ptr %8, align 4, !tbaa !5
  %7038 = mul nsw i32 8, %7037
  %7039 = add nsw i32 %7036, %7038
  %7040 = sext i32 %7039 to i64
  %7041 = getelementptr inbounds double, ptr %7035, i64 %7040
  %7042 = load double, ptr %7041, align 8, !tbaa !11
  %7043 = call double @llvm.fmuladd.f64(double 0xBCAAA314368C77EA, double %7042, double %7034)
  %7044 = load ptr, ptr %7, align 8, !tbaa !9
  %7045 = load i32, ptr %12, align 4, !tbaa !5
  %7046 = load i32, ptr %8, align 4, !tbaa !5
  %7047 = mul nsw i32 9, %7046
  %7048 = add nsw i32 %7045, %7047
  %7049 = sext i32 %7048 to i64
  %7050 = getelementptr inbounds double, ptr %7044, i64 %7049
  %7051 = load double, ptr %7050, align 8, !tbaa !11
  %7052 = call double @llvm.fmuladd.f64(double 0xBC89A9C06842F0CE, double %7051, double %7043)
  %7053 = load ptr, ptr %7, align 8, !tbaa !9
  %7054 = load i32, ptr %12, align 4, !tbaa !5
  %7055 = load i32, ptr %8, align 4, !tbaa !5
  %7056 = mul nsw i32 10, %7055
  %7057 = add nsw i32 %7054, %7056
  %7058 = sext i32 %7057 to i64
  %7059 = getelementptr inbounds double, ptr %7053, i64 %7058
  %7060 = load double, ptr %7059, align 8, !tbaa !11
  %7061 = call double @llvm.fmuladd.f64(double 0x3CC01B0CEED92744, double %7060, double %7052)
  %7062 = load ptr, ptr %7, align 8, !tbaa !9
  %7063 = load i32, ptr %12, align 4, !tbaa !5
  %7064 = load i32, ptr %8, align 4, !tbaa !5
  %7065 = mul nsw i32 11, %7064
  %7066 = add nsw i32 %7063, %7065
  %7067 = sext i32 %7066 to i64
  %7068 = getelementptr inbounds double, ptr %7062, i64 %7067
  %7069 = load double, ptr %7068, align 8, !tbaa !11
  %7070 = call double @llvm.fmuladd.f64(double 0xBCBAAB90AFB5926F, double %7069, double %7061)
  %7071 = load ptr, ptr %7, align 8, !tbaa !9
  %7072 = load i32, ptr %12, align 4, !tbaa !5
  %7073 = load i32, ptr %8, align 4, !tbaa !5
  %7074 = mul nsw i32 12, %7073
  %7075 = add nsw i32 %7072, %7074
  %7076 = sext i32 %7075 to i64
  %7077 = getelementptr inbounds double, ptr %7071, i64 %7076
  %7078 = load double, ptr %7077, align 8, !tbaa !11
  %7079 = call double @llvm.fmuladd.f64(double 0xBFE1EC4181248AE8, double %7078, double %7070)
  %7080 = load ptr, ptr %7, align 8, !tbaa !9
  %7081 = load i32, ptr %12, align 4, !tbaa !5
  %7082 = load i32, ptr %8, align 4, !tbaa !5
  %7083 = mul nsw i32 13, %7082
  %7084 = add nsw i32 %7081, %7083
  %7085 = sext i32 %7084 to i64
  %7086 = getelementptr inbounds double, ptr %7080, i64 %7085
  %7087 = load double, ptr %7086, align 8, !tbaa !11
  %7088 = call double @llvm.fmuladd.f64(double 0xBFDFFE63E2851784, double %7087, double %7079)
  %7089 = load ptr, ptr %7, align 8, !tbaa !9
  %7090 = load i32, ptr %12, align 4, !tbaa !5
  %7091 = load i32, ptr %8, align 4, !tbaa !5
  %7092 = mul nsw i32 14, %7091
  %7093 = add nsw i32 %7090, %7092
  %7094 = sext i32 %7093 to i64
  %7095 = getelementptr inbounds double, ptr %7089, i64 %7094
  %7096 = load double, ptr %7095, align 8, !tbaa !11
  %7097 = call double @llvm.fmuladd.f64(double 0x4000E9CE75C2FBF8, double %7096, double %7088)
  %7098 = load ptr, ptr %7, align 8, !tbaa !9
  %7099 = load i32, ptr %12, align 4, !tbaa !5
  %7100 = load i32, ptr %8, align 4, !tbaa !5
  %7101 = mul nsw i32 15, %7100
  %7102 = add nsw i32 %7099, %7101
  %7103 = sext i32 %7102 to i64
  %7104 = getelementptr inbounds double, ptr %7098, i64 %7103
  %7105 = load double, ptr %7104, align 8, !tbaa !11
  %7106 = call double @llvm.fmuladd.f64(double 0x3FF31D88B253B07F, double %7105, double %7097)
  %7107 = load ptr, ptr %7, align 8, !tbaa !9
  %7108 = load i32, ptr %12, align 4, !tbaa !5
  %7109 = load i32, ptr %8, align 4, !tbaa !5
  %7110 = mul nsw i32 16, %7109
  %7111 = add nsw i32 %7108, %7110
  %7112 = sext i32 %7111 to i64
  %7113 = getelementptr inbounds double, ptr %7107, i64 %7112
  %7114 = load double, ptr %7113, align 8, !tbaa !11
  %7115 = call double @llvm.fmuladd.f64(double 0x3FF2343957F3A8AA, double %7114, double %7106)
  %7116 = load ptr, ptr %7, align 8, !tbaa !9
  %7117 = load i32, ptr %12, align 4, !tbaa !5
  %7118 = load i32, ptr %8, align 4, !tbaa !5
  %7119 = mul nsw i32 17, %7118
  %7120 = add nsw i32 %7117, %7119
  %7121 = sext i32 %7120 to i64
  %7122 = getelementptr inbounds double, ptr %7116, i64 %7121
  %7123 = load double, ptr %7122, align 8, !tbaa !11
  %7124 = call double @llvm.fmuladd.f64(double 0xBFEE712F1EF7D88A, double %7123, double %7115)
  %7125 = load ptr, ptr %7, align 8, !tbaa !9
  %7126 = load i32, ptr %12, align 4, !tbaa !5
  %7127 = load i32, ptr %8, align 4, !tbaa !5
  %7128 = mul nsw i32 18, %7127
  %7129 = add nsw i32 %7126, %7128
  %7130 = sext i32 %7129 to i64
  %7131 = getelementptr inbounds double, ptr %7125, i64 %7130
  %7132 = load double, ptr %7131, align 8, !tbaa !11
  %7133 = call double @llvm.fmuladd.f64(double 0x3CC3A3AFB95FF4E5, double %7132, double %7124)
  %7134 = load ptr, ptr %7, align 8, !tbaa !9
  %7135 = load i32, ptr %12, align 4, !tbaa !5
  %7136 = load i32, ptr %8, align 4, !tbaa !5
  %7137 = mul nsw i32 19, %7136
  %7138 = add nsw i32 %7135, %7137
  %7139 = sext i32 %7138 to i64
  %7140 = getelementptr inbounds double, ptr %7134, i64 %7139
  %7141 = load double, ptr %7140, align 8, !tbaa !11
  %7142 = call double @llvm.fmuladd.f64(double 0xBCA27EC01785587C, double %7141, double %7133)
  %7143 = load ptr, ptr %7, align 8, !tbaa !9
  %7144 = load i32, ptr %12, align 4, !tbaa !5
  %7145 = load i32, ptr %8, align 4, !tbaa !5
  %7146 = mul nsw i32 20, %7145
  %7147 = add nsw i32 %7144, %7146
  %7148 = sext i32 %7147 to i64
  %7149 = getelementptr inbounds double, ptr %7143, i64 %7148
  %7150 = load double, ptr %7149, align 8, !tbaa !11
  %7151 = call double @llvm.fmuladd.f64(double 0x3CD54F70D2EB9A18, double %7150, double %7142)
  %7152 = load ptr, ptr %7, align 8, !tbaa !9
  %7153 = load i32, ptr %12, align 4, !tbaa !5
  %7154 = load i32, ptr %8, align 4, !tbaa !5
  %7155 = mul nsw i32 21, %7154
  %7156 = add nsw i32 %7153, %7155
  %7157 = sext i32 %7156 to i64
  %7158 = getelementptr inbounds double, ptr %7152, i64 %7157
  %7159 = load double, ptr %7158, align 8, !tbaa !11
  %7160 = call double @llvm.fmuladd.f64(double 0x3CABF738548B48D5, double %7159, double %7151)
  %7161 = load ptr, ptr %7, align 8, !tbaa !9
  %7162 = load i32, ptr %12, align 4, !tbaa !5
  %7163 = load i32, ptr %8, align 4, !tbaa !5
  %7164 = mul nsw i32 22, %7163
  %7165 = add nsw i32 %7162, %7164
  %7166 = sext i32 %7165 to i64
  %7167 = getelementptr inbounds double, ptr %7161, i64 %7166
  %7168 = load double, ptr %7167, align 8, !tbaa !11
  %7169 = call double @llvm.fmuladd.f64(double 0xBCCFEC3A2A4C4C78, double %7168, double %7160)
  %7170 = load ptr, ptr %7, align 8, !tbaa !9
  %7171 = load i32, ptr %12, align 4, !tbaa !5
  %7172 = load i32, ptr %8, align 4, !tbaa !5
  %7173 = mul nsw i32 23, %7172
  %7174 = add nsw i32 %7171, %7173
  %7175 = sext i32 %7174 to i64
  %7176 = getelementptr inbounds double, ptr %7170, i64 %7175
  %7177 = load double, ptr %7176, align 8, !tbaa !11
  %7178 = call double @llvm.fmuladd.f64(double 0x3C932E31FBD492C0, double %7177, double %7169)
  %7179 = load ptr, ptr %7, align 8, !tbaa !9
  %7180 = load i32, ptr %12, align 4, !tbaa !5
  %7181 = load i32, ptr %8, align 4, !tbaa !5
  %7182 = mul nsw i32 24, %7181
  %7183 = add nsw i32 %7180, %7182
  %7184 = sext i32 %7183 to i64
  %7185 = getelementptr inbounds double, ptr %7179, i64 %7184
  %7186 = load double, ptr %7185, align 8, !tbaa !11
  %7187 = call double @llvm.fmuladd.f64(double 0x3CA535998BAB6E00, double %7186, double %7178)
  %7188 = load ptr, ptr %7, align 8, !tbaa !9
  %7189 = load i32, ptr %12, align 4, !tbaa !5
  %7190 = load i32, ptr %8, align 4, !tbaa !5
  %7191 = mul nsw i32 25, %7190
  %7192 = add nsw i32 %7189, %7191
  %7193 = sext i32 %7192 to i64
  %7194 = getelementptr inbounds double, ptr %7188, i64 %7193
  %7195 = load double, ptr %7194, align 8, !tbaa !11
  %7196 = call double @llvm.fmuladd.f64(double 0x3C6197D309C7AB36, double %7195, double %7187)
  %7197 = load ptr, ptr %7, align 8, !tbaa !9
  %7198 = load i32, ptr %12, align 4, !tbaa !5
  %7199 = load i32, ptr %8, align 4, !tbaa !5
  %7200 = mul nsw i32 26, %7199
  %7201 = add nsw i32 %7198, %7200
  %7202 = sext i32 %7201 to i64
  %7203 = getelementptr inbounds double, ptr %7197, i64 %7202
  %7204 = load double, ptr %7203, align 8, !tbaa !11
  %7205 = call double @llvm.fmuladd.f64(double 0xBCA84349E84D9D73, double %7204, double %7196)
  %7206 = load ptr, ptr %7, align 8, !tbaa !9
  %7207 = load i32, ptr %12, align 4, !tbaa !5
  %7208 = load i32, ptr %8, align 4, !tbaa !5
  %7209 = mul nsw i32 27, %7208
  %7210 = add nsw i32 %7207, %7209
  %7211 = sext i32 %7210 to i64
  %7212 = getelementptr inbounds double, ptr %7206, i64 %7211
  %7213 = load double, ptr %7212, align 8, !tbaa !11
  %7214 = call double @llvm.fmuladd.f64(double 0x3CA4C44C023F42CC, double %7213, double %7205)
  %7215 = load ptr, ptr %7, align 8, !tbaa !9
  %7216 = load i32, ptr %12, align 4, !tbaa !5
  %7217 = load i32, ptr %8, align 4, !tbaa !5
  %7218 = mul nsw i32 28, %7217
  %7219 = add nsw i32 %7216, %7218
  %7220 = sext i32 %7219 to i64
  %7221 = getelementptr inbounds double, ptr %7215, i64 %7220
  %7222 = load double, ptr %7221, align 8, !tbaa !11
  %7223 = call double @llvm.fmuladd.f64(double 0x3CCE4E90983F720B, double %7222, double %7214)
  %7224 = load ptr, ptr %7, align 8, !tbaa !9
  %7225 = load i32, ptr %12, align 4, !tbaa !5
  %7226 = load i32, ptr %8, align 4, !tbaa !5
  %7227 = mul nsw i32 29, %7226
  %7228 = add nsw i32 %7225, %7227
  %7229 = sext i32 %7228 to i64
  %7230 = getelementptr inbounds double, ptr %7224, i64 %7229
  %7231 = load double, ptr %7230, align 8, !tbaa !11
  %7232 = call double @llvm.fmuladd.f64(double 0xBCBC38460D0EF925, double %7231, double %7223)
  %7233 = load ptr, ptr %7, align 8, !tbaa !9
  %7234 = load i32, ptr %12, align 4, !tbaa !5
  %7235 = load i32, ptr %8, align 4, !tbaa !5
  %7236 = mul nsw i32 30, %7235
  %7237 = add nsw i32 %7234, %7236
  %7238 = sext i32 %7237 to i64
  %7239 = getelementptr inbounds double, ptr %7233, i64 %7238
  %7240 = load double, ptr %7239, align 8, !tbaa !11
  %7241 = call double @llvm.fmuladd.f64(double 0xBFDFFE63E285176B, double %7240, double %7232)
  %7242 = load ptr, ptr %7, align 8, !tbaa !9
  %7243 = load i32, ptr %12, align 4, !tbaa !5
  %7244 = load i32, ptr %8, align 4, !tbaa !5
  %7245 = mul nsw i32 31, %7244
  %7246 = add nsw i32 %7243, %7245
  %7247 = sext i32 %7246 to i64
  %7248 = getelementptr inbounds double, ptr %7242, i64 %7247
  %7249 = load double, ptr %7248, align 8, !tbaa !11
  %7250 = call double @llvm.fmuladd.f64(double 0xBFE1EC4181248AE3, double %7249, double %7241)
  %7251 = load ptr, ptr %7, align 8, !tbaa !9
  %7252 = load i32, ptr %12, align 4, !tbaa !5
  %7253 = load i32, ptr %8, align 4, !tbaa !5
  %7254 = mul nsw i32 32, %7253
  %7255 = add nsw i32 %7252, %7254
  %7256 = sext i32 %7255 to i64
  %7257 = getelementptr inbounds double, ptr %7251, i64 %7256
  %7258 = load double, ptr %7257, align 8, !tbaa !11
  %7259 = call double @llvm.fmuladd.f64(double 0x4000E9CE75C2FBF6, double %7258, double %7250)
  %7260 = load ptr, ptr %7, align 8, !tbaa !9
  %7261 = load i32, ptr %12, align 4, !tbaa !5
  %7262 = load i32, ptr %8, align 4, !tbaa !5
  %7263 = mul nsw i32 33, %7262
  %7264 = add nsw i32 %7261, %7263
  %7265 = sext i32 %7264 to i64
  %7266 = getelementptr inbounds double, ptr %7260, i64 %7265
  %7267 = load double, ptr %7266, align 8, !tbaa !11
  %7268 = call double @llvm.fmuladd.f64(double 0x3FF2343957F3A8AF, double %7267, double %7259)
  %7269 = load ptr, ptr %7, align 8, !tbaa !9
  %7270 = load i32, ptr %12, align 4, !tbaa !5
  %7271 = load i32, ptr %8, align 4, !tbaa !5
  %7272 = mul nsw i32 34, %7271
  %7273 = add nsw i32 %7270, %7272
  %7274 = sext i32 %7273 to i64
  %7275 = getelementptr inbounds double, ptr %7269, i64 %7274
  %7276 = load double, ptr %7275, align 8, !tbaa !11
  %7277 = call double @llvm.fmuladd.f64(double 0x3FF31D88B253B07F, double %7276, double %7268)
  %7278 = load ptr, ptr %7, align 8, !tbaa !9
  %7279 = load i32, ptr %12, align 4, !tbaa !5
  %7280 = load i32, ptr %8, align 4, !tbaa !5
  %7281 = mul nsw i32 35, %7280
  %7282 = add nsw i32 %7279, %7281
  %7283 = sext i32 %7282 to i64
  %7284 = getelementptr inbounds double, ptr %7278, i64 %7283
  %7285 = load double, ptr %7284, align 8, !tbaa !11
  %7286 = call double @llvm.fmuladd.f64(double 0xBFEE712F1EF7D894, double %7285, double %7277)
  %7287 = load ptr, ptr %7, align 8, !tbaa !9
  %7288 = load i32, ptr %12, align 4, !tbaa !5
  %7289 = load i32, ptr %8, align 4, !tbaa !5
  %7290 = mul nsw i32 36, %7289
  %7291 = add nsw i32 %7288, %7290
  %7292 = sext i32 %7291 to i64
  %7293 = getelementptr inbounds double, ptr %7287, i64 %7292
  %7294 = load double, ptr %7293, align 8, !tbaa !11
  %7295 = call double @llvm.fmuladd.f64(double 0xBC774AA3B009835F, double %7294, double %7286)
  %7296 = load ptr, ptr %7, align 8, !tbaa !9
  %7297 = load i32, ptr %12, align 4, !tbaa !5
  %7298 = load i32, ptr %8, align 4, !tbaa !5
  %7299 = mul nsw i32 37, %7298
  %7300 = add nsw i32 %7297, %7299
  %7301 = sext i32 %7300 to i64
  %7302 = getelementptr inbounds double, ptr %7296, i64 %7301
  %7303 = load double, ptr %7302, align 8, !tbaa !11
  %7304 = call double @llvm.fmuladd.f64(double 0x3CB18F99C07C05C8, double %7303, double %7295)
  %7305 = load ptr, ptr %7, align 8, !tbaa !9
  %7306 = load i32, ptr %12, align 4, !tbaa !5
  %7307 = load i32, ptr %8, align 4, !tbaa !5
  %7308 = mul nsw i32 38, %7307
  %7309 = add nsw i32 %7306, %7308
  %7310 = sext i32 %7309 to i64
  %7311 = getelementptr inbounds double, ptr %7305, i64 %7310
  %7312 = load double, ptr %7311, align 8, !tbaa !11
  %7313 = call double @llvm.fmuladd.f64(double 0x3FE4A7E9CB8A3498, double %7312, double %7304)
  %7314 = load ptr, ptr %7, align 8, !tbaa !9
  %7315 = load i32, ptr %12, align 4, !tbaa !5
  %7316 = load i32, ptr %8, align 4, !tbaa !5
  %7317 = mul nsw i32 39, %7316
  %7318 = add nsw i32 %7315, %7317
  %7319 = sext i32 %7318 to i64
  %7320 = getelementptr inbounds double, ptr %7314, i64 %7319
  %7321 = load double, ptr %7320, align 8, !tbaa !11
  %7322 = call double @llvm.fmuladd.f64(double 0x3CA9FD38292DDC9B, double %7321, double %7313)
  %7323 = load ptr, ptr %7, align 8, !tbaa !9
  %7324 = load i32, ptr %12, align 4, !tbaa !5
  %7325 = load i32, ptr %8, align 4, !tbaa !5
  %7326 = mul nsw i32 40, %7325
  %7327 = add nsw i32 %7324, %7326
  %7328 = sext i32 %7327 to i64
  %7329 = getelementptr inbounds double, ptr %7323, i64 %7328
  %7330 = load double, ptr %7329, align 8, !tbaa !11
  %7331 = call double @llvm.fmuladd.f64(double 0xBCB9E61E59FC2E99, double %7330, double %7322)
  %7332 = load ptr, ptr %7, align 8, !tbaa !9
  %7333 = load i32, ptr %12, align 4, !tbaa !5
  %7334 = load i32, ptr %8, align 4, !tbaa !5
  %7335 = mul nsw i32 41, %7334
  %7336 = add nsw i32 %7333, %7335
  %7337 = sext i32 %7336 to i64
  %7338 = getelementptr inbounds double, ptr %7332, i64 %7337
  %7339 = load double, ptr %7338, align 8, !tbaa !11
  %7340 = call double @llvm.fmuladd.f64(double 0xBCB0C7261B82C350, double %7339, double %7331)
  %7341 = load ptr, ptr %7, align 8, !tbaa !9
  %7342 = load i32, ptr %12, align 4, !tbaa !5
  %7343 = load i32, ptr %8, align 4, !tbaa !5
  %7344 = mul nsw i32 42, %7343
  %7345 = add nsw i32 %7342, %7344
  %7346 = sext i32 %7345 to i64
  %7347 = getelementptr inbounds double, ptr %7341, i64 %7346
  %7348 = load double, ptr %7347, align 8, !tbaa !11
  %7349 = call double @llvm.fmuladd.f64(double 0xBCF48A8393C3B480, double %7348, double %7340)
  %7350 = load ptr, ptr %7, align 8, !tbaa !9
  %7351 = load i32, ptr %12, align 4, !tbaa !5
  %7352 = load i32, ptr %8, align 4, !tbaa !5
  %7353 = mul nsw i32 43, %7352
  %7354 = add nsw i32 %7351, %7353
  %7355 = sext i32 %7354 to i64
  %7356 = getelementptr inbounds double, ptr %7350, i64 %7355
  %7357 = load double, ptr %7356, align 8, !tbaa !11
  %7358 = call double @llvm.fmuladd.f64(double 0xBCF2549348F1AFC0, double %7357, double %7349)
  %7359 = load ptr, ptr %7, align 8, !tbaa !9
  %7360 = load i32, ptr %12, align 4, !tbaa !5
  %7361 = load i32, ptr %8, align 4, !tbaa !5
  %7362 = mul nsw i32 44, %7361
  %7363 = add nsw i32 %7360, %7362
  %7364 = sext i32 %7363 to i64
  %7365 = getelementptr inbounds double, ptr %7359, i64 %7364
  %7366 = load double, ptr %7365, align 8, !tbaa !11
  %7367 = call double @llvm.fmuladd.f64(double 0xBFF08654A2D4F75B, double %7366, double %7358)
  %7368 = load ptr, ptr %7, align 8, !tbaa !9
  %7369 = load i32, ptr %12, align 4, !tbaa !5
  %7370 = load i32, ptr %8, align 4, !tbaa !5
  %7371 = mul nsw i32 45, %7370
  %7372 = add nsw i32 %7369, %7371
  %7373 = sext i32 %7372 to i64
  %7374 = getelementptr inbounds double, ptr %7368, i64 %7373
  %7375 = load double, ptr %7374, align 8, !tbaa !11
  %7376 = call double @llvm.fmuladd.f64(double 0x3D0538138B737B15, double %7375, double %7367)
  %7377 = load ptr, ptr %7, align 8, !tbaa !9
  %7378 = load i32, ptr %12, align 4, !tbaa !5
  %7379 = load i32, ptr %8, align 4, !tbaa !5
  %7380 = mul nsw i32 46, %7379
  %7381 = add nsw i32 %7378, %7380
  %7382 = sext i32 %7381 to i64
  %7383 = getelementptr inbounds double, ptr %7377, i64 %7382
  %7384 = load double, ptr %7383, align 8, !tbaa !11
  %7385 = call double @llvm.fmuladd.f64(double 0x3D05852E3E6E5F29, double %7384, double %7376)
  %7386 = load ptr, ptr %7, align 8, !tbaa !9
  %7387 = load i32, ptr %12, align 4, !tbaa !5
  %7388 = load i32, ptr %8, align 4, !tbaa !5
  %7389 = mul nsw i32 47, %7388
  %7390 = add nsw i32 %7387, %7389
  %7391 = sext i32 %7390 to i64
  %7392 = getelementptr inbounds double, ptr %7386, i64 %7391
  %7393 = load double, ptr %7392, align 8, !tbaa !11
  %7394 = call double @llvm.fmuladd.f64(double 0xBCE197C6C3C4B802, double %7393, double %7385)
  %7395 = load ptr, ptr %7, align 8, !tbaa !9
  %7396 = load i32, ptr %12, align 4, !tbaa !5
  %7397 = load i32, ptr %8, align 4, !tbaa !5
  %7398 = mul nsw i32 48, %7397
  %7399 = add nsw i32 %7396, %7398
  %7400 = sext i32 %7399 to i64
  %7401 = getelementptr inbounds double, ptr %7395, i64 %7400
  %7402 = load double, ptr %7401, align 8, !tbaa !11
  %7403 = call double @llvm.fmuladd.f64(double 0x3D09319702C932C5, double %7402, double %7394)
  %7404 = load ptr, ptr %7, align 8, !tbaa !9
  %7405 = load i32, ptr %12, align 4, !tbaa !5
  %7406 = load i32, ptr %8, align 4, !tbaa !5
  %7407 = mul nsw i32 49, %7406
  %7408 = add nsw i32 %7405, %7407
  %7409 = sext i32 %7408 to i64
  %7410 = getelementptr inbounds double, ptr %7404, i64 %7409
  %7411 = load double, ptr %7410, align 8, !tbaa !11
  %7412 = call double @llvm.fmuladd.f64(double 0x3D08453A4092DC8E, double %7411, double %7403)
  %7413 = load ptr, ptr %7, align 8, !tbaa !9
  %7414 = load i32, ptr %12, align 4, !tbaa !5
  %7415 = load i32, ptr %8, align 4, !tbaa !5
  %7416 = mul nsw i32 50, %7415
  %7417 = add nsw i32 %7414, %7416
  %7418 = sext i32 %7417 to i64
  %7419 = getelementptr inbounds double, ptr %7413, i64 %7418
  %7420 = load double, ptr %7419, align 8, !tbaa !11
  %7421 = call double @llvm.fmuladd.f64(double 0xBFFEFBDEB14F4D98, double %7420, double %7412)
  %7422 = load ptr, ptr %7, align 8, !tbaa !9
  %7423 = load i32, ptr %12, align 4, !tbaa !5
  %7424 = load i32, ptr %8, align 4, !tbaa !5
  %7425 = mul nsw i32 51, %7424
  %7426 = add nsw i32 %7423, %7425
  %7427 = sext i32 %7426 to i64
  %7428 = getelementptr inbounds double, ptr %7422, i64 %7427
  %7429 = load double, ptr %7428, align 8, !tbaa !11
  %7430 = call double @llvm.fmuladd.f64(double 0xBD1B7FE6E4DEE0A3, double %7429, double %7421)
  %7431 = load ptr, ptr %7, align 8, !tbaa !9
  %7432 = load i32, ptr %12, align 4, !tbaa !5
  %7433 = load i32, ptr %8, align 4, !tbaa !5
  %7434 = mul nsw i32 52, %7433
  %7435 = add nsw i32 %7432, %7434
  %7436 = sext i32 %7435 to i64
  %7437 = getelementptr inbounds double, ptr %7431, i64 %7436
  %7438 = load double, ptr %7437, align 8, !tbaa !11
  %7439 = call double @llvm.fmuladd.f64(double 0xBD1AB13DD17EC493, double %7438, double %7430)
  %7440 = load ptr, ptr %7, align 8, !tbaa !9
  %7441 = load i32, ptr %12, align 4, !tbaa !5
  %7442 = load i32, ptr %8, align 4, !tbaa !5
  %7443 = mul nsw i32 53, %7442
  %7444 = add nsw i32 %7441, %7443
  %7445 = sext i32 %7444 to i64
  %7446 = getelementptr inbounds double, ptr %7440, i64 %7445
  %7447 = load double, ptr %7446, align 8, !tbaa !11
  %7448 = call double @llvm.fmuladd.f64(double 0x3CF9E39CC9E10B88, double %7447, double %7439)
  store double %7448, ptr %11, align 8, !tbaa !11
  %7449 = load double, ptr %11, align 8, !tbaa !11
  %7450 = load ptr, ptr %9, align 8, !tbaa !9
  %7451 = load i32, ptr %12, align 4, !tbaa !5
  %7452 = load i32, ptr %10, align 4, !tbaa !5
  %7453 = mul nsw i32 14, %7452
  %7454 = add nsw i32 %7451, %7453
  %7455 = sext i32 %7454 to i64
  %7456 = getelementptr inbounds double, ptr %7450, i64 %7455
  %7457 = load double, ptr %7456, align 8, !tbaa !11
  %7458 = fadd double %7457, %7449
  store double %7458, ptr %7456, align 8, !tbaa !11
  %7459 = load ptr, ptr %7, align 8, !tbaa !9
  %7460 = load i32, ptr %12, align 4, !tbaa !5
  %7461 = load i32, ptr %8, align 4, !tbaa !5
  %7462 = mul nsw i32 0, %7461
  %7463 = add nsw i32 %7460, %7462
  %7464 = sext i32 %7463 to i64
  %7465 = getelementptr inbounds double, ptr %7459, i64 %7464
  %7466 = load double, ptr %7465, align 8, !tbaa !11
  %7467 = load ptr, ptr %7, align 8, !tbaa !9
  %7468 = load i32, ptr %12, align 4, !tbaa !5
  %7469 = load i32, ptr %8, align 4, !tbaa !5
  %7470 = mul nsw i32 1, %7469
  %7471 = add nsw i32 %7468, %7470
  %7472 = sext i32 %7471 to i64
  %7473 = getelementptr inbounds double, ptr %7467, i64 %7472
  %7474 = load double, ptr %7473, align 8, !tbaa !11
  %7475 = fmul double 0xBC9A042DA3AAA0F4, %7474
  %7476 = call double @llvm.fmuladd.f64(double 0xBCBAF68F816ED6D4, double %7466, double %7475)
  %7477 = load ptr, ptr %7, align 8, !tbaa !9
  %7478 = load i32, ptr %12, align 4, !tbaa !5
  %7479 = load i32, ptr %8, align 4, !tbaa !5
  %7480 = mul nsw i32 2, %7479
  %7481 = add nsw i32 %7478, %7480
  %7482 = sext i32 %7481 to i64
  %7483 = getelementptr inbounds double, ptr %7477, i64 %7482
  %7484 = load double, ptr %7483, align 8, !tbaa !11
  %7485 = call double @llvm.fmuladd.f64(double 0xBCBD577C538DDA63, double %7484, double %7476)
  %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 3, %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 = call double @llvm.fmuladd.f64(double 0xBC9E271992FB8E50, double %7493, double %7485)
  %7495 = load ptr, ptr %7, align 8, !tbaa !9
  %7496 = load i32, ptr %12, align 4, !tbaa !5
  %7497 = load i32, ptr %8, align 4, !tbaa !5
  %7498 = mul nsw i32 4, %7497
  %7499 = add nsw i32 %7496, %7498
  %7500 = sext i32 %7499 to i64
  %7501 = getelementptr inbounds double, ptr %7495, i64 %7500
  %7502 = load double, ptr %7501, align 8, !tbaa !11
  %7503 = call double @llvm.fmuladd.f64(double 0x3C93D6FC900E3496, double %7502, double %7494)
  %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 5, %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 0x3CC029CF9720BC60, 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 6, %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 0xBC8797292B4C1941, 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 7, %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 0x3C92F08ACDCBF794, 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 8, %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 0x3CA6B48868965AE6, 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 9, %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 0x3CA926ECE93029A9, 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 10, %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 0xBCB24490C3AF2293, 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 11, %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 0x3C94D23BA9623EA9, 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 12, %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 0xBF734721512AF07C, 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 13, %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 0x3FF21EFA862DF3DE, 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 14, %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 0xBFF7F19EB1BA88F8, 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 15, %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 0x3FC901A35D55DB53, 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 16, %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 0xBFF48831FA6C703B, 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 17, %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 0x3FF0AF85DD8BD416, 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 18, %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 0xBCB2A04E51D66FCE, 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 19, %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 0xBC7865999DB92F51, 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 20, %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 0x3C88B903F6BC17E8, 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 21, %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 0x3CC55C346E604B2A, 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 22, %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 0xBC997FE57E87E294, 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 23, %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 0xBC892C4067E5CCE7, 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 24, %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 0x3C9195CCC6FDDC34, 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 25, %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 0x3C90C2BEA1BFB3F8, 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 26, %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 0xBC83C8973FFE3109, 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 27, %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 0x3CA202E0ECF2957E, 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 28, %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 0xBC9E71BA1E232157, 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 29, %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 0xBC7C542BFA7534B8, 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 30, %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 0xBFB17C71DD2D5160, 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 31, %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 0x3FF3237A82AF9ED0, 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 32, %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 0xBF76E8A1969E6B00, 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 33, %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 0x3FFBC4AD9C53A55A, 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 34, %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 0x3FC179BD32D3DC68, 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 35, %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 0x3FF1CA3B98F4942B, 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 36, %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 0x3C80AA02FA4803A4, 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 37, %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 0xBCC12CAB67834A70, 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 38, %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 0xBCC3D0AC662B45FE, 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 39, %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 0x3FE4A7E9CB8A3492, 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 40, %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 0x3CA52C6631B8F77F, double %7826, double %7818)
  %7828 = load ptr, ptr %7, align 8, !tbaa !9
  %7829 = load i32, ptr %12, align 4, !tbaa !5
  %7830 = load i32, ptr %8, align 4, !tbaa !5
  %7831 = mul nsw i32 41, %7830
  %7832 = add nsw i32 %7829, %7831
  %7833 = sext i32 %7832 to i64
  %7834 = getelementptr inbounds double, ptr %7828, i64 %7833
  %7835 = load double, ptr %7834, align 8, !tbaa !11
  %7836 = call double @llvm.fmuladd.f64(double 0x3C9E24E98A05E9A1, double %7835, double %7827)
  %7837 = load ptr, ptr %7, align 8, !tbaa !9
  %7838 = load i32, ptr %12, align 4, !tbaa !5
  %7839 = load i32, ptr %8, align 4, !tbaa !5
  %7840 = mul nsw i32 42, %7839
  %7841 = add nsw i32 %7838, %7840
  %7842 = sext i32 %7841 to i64
  %7843 = getelementptr inbounds double, ptr %7837, i64 %7842
  %7844 = load double, ptr %7843, align 8, !tbaa !11
  %7845 = call double @llvm.fmuladd.f64(double 0xBCDA7F1576963AFB, double %7844, double %7836)
  %7846 = load ptr, ptr %7, align 8, !tbaa !9
  %7847 = load i32, ptr %12, align 4, !tbaa !5
  %7848 = load i32, ptr %8, align 4, !tbaa !5
  %7849 = mul nsw i32 43, %7848
  %7850 = add nsw i32 %7847, %7849
  %7851 = sext i32 %7850 to i64
  %7852 = getelementptr inbounds double, ptr %7846, i64 %7851
  %7853 = load double, ptr %7852, align 8, !tbaa !11
  %7854 = call double @llvm.fmuladd.f64(double 0x3CF4F52E3E6E5F2F, double %7853, double %7845)
  %7855 = load ptr, ptr %7, align 8, !tbaa !9
  %7856 = load i32, ptr %12, align 4, !tbaa !5
  %7857 = load i32, ptr %8, align 4, !tbaa !5
  %7858 = mul nsw i32 44, %7857
  %7859 = add nsw i32 %7856, %7858
  %7860 = sext i32 %7859 to i64
  %7861 = getelementptr inbounds double, ptr %7855, i64 %7860
  %7862 = load double, ptr %7861, align 8, !tbaa !11
  %7863 = call double @llvm.fmuladd.f64(double 0x3CF55B6CB70E5048, double %7862, double %7854)
  %7864 = load ptr, ptr %7, align 8, !tbaa !9
  %7865 = load i32, ptr %12, align 4, !tbaa !5
  %7866 = load i32, ptr %8, align 4, !tbaa !5
  %7867 = mul nsw i32 45, %7866
  %7868 = add nsw i32 %7865, %7867
  %7869 = sext i32 %7868 to i64
  %7870 = getelementptr inbounds double, ptr %7864, i64 %7869
  %7871 = load double, ptr %7870, align 8, !tbaa !11
  %7872 = call double @llvm.fmuladd.f64(double 0xBFF08654A2D4F717, double %7871, double %7863)
  %7873 = load ptr, ptr %7, align 8, !tbaa !9
  %7874 = load i32, ptr %12, align 4, !tbaa !5
  %7875 = load i32, ptr %8, align 4, !tbaa !5
  %7876 = mul nsw i32 46, %7875
  %7877 = add nsw i32 %7874, %7876
  %7878 = sext i32 %7877 to i64
  %7879 = getelementptr inbounds double, ptr %7873, i64 %7878
  %7880 = load double, ptr %7879, align 8, !tbaa !11
  %7881 = call double @llvm.fmuladd.f64(double 0x3CEFF3CE704FB7B1, double %7880, double %7872)
  %7882 = load ptr, ptr %7, align 8, !tbaa !9
  %7883 = load i32, ptr %12, align 4, !tbaa !5
  %7884 = load i32, ptr %8, align 4, !tbaa !5
  %7885 = mul nsw i32 47, %7884
  %7886 = add nsw i32 %7883, %7885
  %7887 = sext i32 %7886 to i64
  %7888 = getelementptr inbounds double, ptr %7882, i64 %7887
  %7889 = load double, ptr %7888, align 8, !tbaa !11
  %7890 = call double @llvm.fmuladd.f64(double 0x3CEF146ACBEB905B, double %7889, double %7881)
  %7891 = load ptr, ptr %7, align 8, !tbaa !9
  %7892 = load i32, ptr %12, align 4, !tbaa !5
  %7893 = load i32, ptr %8, align 4, !tbaa !5
  %7894 = mul nsw i32 48, %7893
  %7895 = add nsw i32 %7892, %7894
  %7896 = sext i32 %7895 to i64
  %7897 = getelementptr inbounds double, ptr %7891, i64 %7896
  %7898 = load double, ptr %7897, align 8, !tbaa !11
  %7899 = call double @llvm.fmuladd.f64(double 0x3CEC2EB7C235876B, double %7898, double %7890)
  %7900 = load ptr, ptr %7, align 8, !tbaa !9
  %7901 = load i32, ptr %12, align 4, !tbaa !5
  %7902 = load i32, ptr %8, align 4, !tbaa !5
  %7903 = mul nsw i32 49, %7902
  %7904 = add nsw i32 %7901, %7903
  %7905 = sext i32 %7904 to i64
  %7906 = getelementptr inbounds double, ptr %7900, i64 %7905
  %7907 = load double, ptr %7906, align 8, !tbaa !11
  %7908 = call double @llvm.fmuladd.f64(double 0xBD09EA15B3B00878, double %7907, double %7899)
  %7909 = load ptr, ptr %7, align 8, !tbaa !9
  %7910 = load i32, ptr %12, align 4, !tbaa !5
  %7911 = load i32, ptr %8, align 4, !tbaa !5
  %7912 = mul nsw i32 50, %7911
  %7913 = add nsw i32 %7910, %7912
  %7914 = sext i32 %7913 to i64
  %7915 = getelementptr inbounds double, ptr %7909, i64 %7914
  %7916 = load double, ptr %7915, align 8, !tbaa !11
  %7917 = call double @llvm.fmuladd.f64(double 0xBD0A5870F2CA0280, double %7916, double %7908)
  %7918 = load ptr, ptr %7, align 8, !tbaa !9
  %7919 = load i32, ptr %12, align 4, !tbaa !5
  %7920 = load i32, ptr %8, align 4, !tbaa !5
  %7921 = mul nsw i32 51, %7920
  %7922 = add nsw i32 %7919, %7921
  %7923 = sext i32 %7922 to i64
  %7924 = getelementptr inbounds double, ptr %7918, i64 %7923
  %7925 = load double, ptr %7924, align 8, !tbaa !11
  %7926 = call double @llvm.fmuladd.f64(double 0xBFFEFBDEB14F4E48, double %7925, double %7917)
  %7927 = load ptr, ptr %7, align 8, !tbaa !9
  %7928 = load i32, ptr %12, align 4, !tbaa !5
  %7929 = load i32, ptr %8, align 4, !tbaa !5
  %7930 = mul nsw i32 52, %7929
  %7931 = add nsw i32 %7928, %7930
  %7932 = sext i32 %7931 to i64
  %7933 = getelementptr inbounds double, ptr %7927, i64 %7932
  %7934 = load double, ptr %7933, align 8, !tbaa !11
  %7935 = call double @llvm.fmuladd.f64(double 0xBD043059A53F3A02, double %7934, double %7926)
  %7936 = load ptr, ptr %7, align 8, !tbaa !9
  %7937 = load i32, ptr %12, align 4, !tbaa !5
  %7938 = load i32, ptr %8, align 4, !tbaa !5
  %7939 = mul nsw i32 53, %7938
  %7940 = add nsw i32 %7937, %7939
  %7941 = sext i32 %7940 to i64
  %7942 = getelementptr inbounds double, ptr %7936, i64 %7941
  %7943 = load double, ptr %7942, align 8, !tbaa !11
  %7944 = call double @llvm.fmuladd.f64(double 0xBD03454734E1B74C, double %7943, double %7935)
  store double %7944, ptr %11, align 8, !tbaa !11
  %7945 = load double, ptr %11, align 8, !tbaa !11
  %7946 = load ptr, ptr %9, align 8, !tbaa !9
  %7947 = load i32, ptr %12, align 4, !tbaa !5
  %7948 = load i32, ptr %10, align 4, !tbaa !5
  %7949 = mul nsw i32 15, %7948
  %7950 = add nsw i32 %7947, %7949
  %7951 = sext i32 %7950 to i64
  %7952 = getelementptr inbounds double, ptr %7946, i64 %7951
  %7953 = load double, ptr %7952, align 8, !tbaa !11
  %7954 = fadd double %7953, %7945
  store double %7954, ptr %7952, align 8, !tbaa !11
  %7955 = load ptr, ptr %7, align 8, !tbaa !9
  %7956 = load i32, ptr %12, align 4, !tbaa !5
  %7957 = load i32, ptr %8, align 4, !tbaa !5
  %7958 = mul nsw i32 0, %7957
  %7959 = add nsw i32 %7956, %7958
  %7960 = sext i32 %7959 to i64
  %7961 = getelementptr inbounds double, ptr %7955, i64 %7960
  %7962 = load double, ptr %7961, align 8, !tbaa !11
  %7963 = load ptr, ptr %7, align 8, !tbaa !9
  %7964 = load i32, ptr %12, align 4, !tbaa !5
  %7965 = load i32, ptr %8, align 4, !tbaa !5
  %7966 = mul nsw i32 1, %7965
  %7967 = add nsw i32 %7964, %7966
  %7968 = sext i32 %7967 to i64
  %7969 = getelementptr inbounds double, ptr %7963, i64 %7968
  %7970 = load double, ptr %7969, align 8, !tbaa !11
  %7971 = fmul double 0xBC958B3DCEB03946, %7970
  %7972 = call double @llvm.fmuladd.f64(double 0xBCADB22B9651CF46, double %7962, double %7971)
  %7973 = load ptr, ptr %7, align 8, !tbaa !9
  %7974 = load i32, ptr %12, align 4, !tbaa !5
  %7975 = load i32, ptr %8, align 4, !tbaa !5
  %7976 = mul nsw i32 2, %7975
  %7977 = add nsw i32 %7974, %7976
  %7978 = sext i32 %7977 to i64
  %7979 = getelementptr inbounds double, ptr %7973, i64 %7978
  %7980 = load double, ptr %7979, align 8, !tbaa !11
  %7981 = call double @llvm.fmuladd.f64(double 0x3C9ED9E1BC70CFE6, double %7980, double %7972)
  %7982 = load ptr, ptr %7, align 8, !tbaa !9
  %7983 = load i32, ptr %12, align 4, !tbaa !5
  %7984 = load i32, ptr %8, align 4, !tbaa !5
  %7985 = mul nsw i32 3, %7984
  %7986 = add nsw i32 %7983, %7985
  %7987 = sext i32 %7986 to i64
  %7988 = getelementptr inbounds double, ptr %7982, i64 %7987
  %7989 = load double, ptr %7988, align 8, !tbaa !11
  %7990 = call double @llvm.fmuladd.f64(double 0xBC8826BEE25DF5B0, double %7989, double %7981)
  %7991 = load ptr, ptr %7, align 8, !tbaa !9
  %7992 = load i32, ptr %12, align 4, !tbaa !5
  %7993 = load i32, ptr %8, align 4, !tbaa !5
  %7994 = mul nsw i32 4, %7993
  %7995 = add nsw i32 %7992, %7994
  %7996 = sext i32 %7995 to i64
  %7997 = getelementptr inbounds double, ptr %7991, i64 %7996
  %7998 = load double, ptr %7997, align 8, !tbaa !11
  %7999 = call double @llvm.fmuladd.f64(double 0x3CCBB1D94C3EA191, double %7998, double %7990)
  %8000 = load ptr, ptr %7, align 8, !tbaa !9
  %8001 = load i32, ptr %12, align 4, !tbaa !5
  %8002 = load i32, ptr %8, align 4, !tbaa !5
  %8003 = mul nsw i32 5, %8002
  %8004 = add nsw i32 %8001, %8003
  %8005 = sext i32 %8004 to i64
  %8006 = getelementptr inbounds double, ptr %8000, i64 %8005
  %8007 = load double, ptr %8006, align 8, !tbaa !11
  %8008 = call double @llvm.fmuladd.f64(double 0xBC99F98308323544, double %8007, double %7999)
  %8009 = load ptr, ptr %7, align 8, !tbaa !9
  %8010 = load i32, ptr %12, align 4, !tbaa !5
  %8011 = load i32, ptr %8, align 4, !tbaa !5
  %8012 = mul nsw i32 6, %8011
  %8013 = add nsw i32 %8010, %8012
  %8014 = sext i32 %8013 to i64
  %8015 = getelementptr inbounds double, ptr %8009, i64 %8014
  %8016 = load double, ptr %8015, align 8, !tbaa !11
  %8017 = call double @llvm.fmuladd.f64(double 0xBC81FCE005D2224B, double %8016, double %8008)
  %8018 = load ptr, ptr %7, align 8, !tbaa !9
  %8019 = load i32, ptr %12, align 4, !tbaa !5
  %8020 = load i32, ptr %8, align 4, !tbaa !5
  %8021 = mul nsw i32 7, %8020
  %8022 = add nsw i32 %8019, %8021
  %8023 = sext i32 %8022 to i64
  %8024 = getelementptr inbounds double, ptr %8018, i64 %8023
  %8025 = load double, ptr %8024, align 8, !tbaa !11
  %8026 = call double @llvm.fmuladd.f64(double 0x3C94D6A0DAC57C7D, double %8025, double %8017)
  %8027 = load ptr, ptr %7, align 8, !tbaa !9
  %8028 = load i32, ptr %12, align 4, !tbaa !5
  %8029 = load i32, ptr %8, align 4, !tbaa !5
  %8030 = mul nsw i32 8, %8029
  %8031 = add nsw i32 %8028, %8030
  %8032 = sext i32 %8031 to i64
  %8033 = getelementptr inbounds double, ptr %8027, i64 %8032
  %8034 = load double, ptr %8033, align 8, !tbaa !11
  %8035 = call double @llvm.fmuladd.f64(double 0xBC84E1D5E41DCEB7, double %8034, double %8026)
  %8036 = load ptr, ptr %7, align 8, !tbaa !9
  %8037 = load i32, ptr %12, align 4, !tbaa !5
  %8038 = load i32, ptr %8, align 4, !tbaa !5
  %8039 = mul nsw i32 9, %8038
  %8040 = add nsw i32 %8037, %8039
  %8041 = sext i32 %8040 to i64
  %8042 = getelementptr inbounds double, ptr %8036, i64 %8041
  %8043 = load double, ptr %8042, align 8, !tbaa !11
  %8044 = call double @llvm.fmuladd.f64(double 0xBC92763F594C57B8, double %8043, double %8035)
  %8045 = load ptr, ptr %7, align 8, !tbaa !9
  %8046 = load i32, ptr %12, align 4, !tbaa !5
  %8047 = load i32, ptr %8, align 4, !tbaa !5
  %8048 = mul nsw i32 10, %8047
  %8049 = add nsw i32 %8046, %8048
  %8050 = sext i32 %8049 to i64
  %8051 = getelementptr inbounds double, ptr %8045, i64 %8050
  %8052 = load double, ptr %8051, align 8, !tbaa !11
  %8053 = call double @llvm.fmuladd.f64(double 0x3CB1F86B771BE422, double %8052, double %8044)
  %8054 = load ptr, ptr %7, align 8, !tbaa !9
  %8055 = load i32, ptr %12, align 4, !tbaa !5
  %8056 = load i32, ptr %8, align 4, !tbaa !5
  %8057 = mul nsw i32 11, %8056
  %8058 = add nsw i32 %8055, %8057
  %8059 = sext i32 %8058 to i64
  %8060 = getelementptr inbounds double, ptr %8054, i64 %8059
  %8061 = load double, ptr %8060, align 8, !tbaa !11
  %8062 = call double @llvm.fmuladd.f64(double 0xBCA63320C046EFE5, double %8061, double %8053)
  %8063 = load ptr, ptr %7, align 8, !tbaa !9
  %8064 = load i32, ptr %12, align 4, !tbaa !5
  %8065 = load i32, ptr %8, align 4, !tbaa !5
  %8066 = mul nsw i32 12, %8065
  %8067 = add nsw i32 %8064, %8066
  %8068 = sext i32 %8067 to i64
  %8069 = getelementptr inbounds double, ptr %8063, i64 %8068
  %8070 = load double, ptr %8069, align 8, !tbaa !11
  %8071 = call double @llvm.fmuladd.f64(double 0x3FF3237A82AF9ECC, double %8070, double %8062)
  %8072 = load ptr, ptr %7, align 8, !tbaa !9
  %8073 = load i32, ptr %12, align 4, !tbaa !5
  %8074 = load i32, ptr %8, align 4, !tbaa !5
  %8075 = mul nsw i32 13, %8074
  %8076 = add nsw i32 %8073, %8075
  %8077 = sext i32 %8076 to i64
  %8078 = getelementptr inbounds double, ptr %8072, i64 %8077
  %8079 = load double, ptr %8078, align 8, !tbaa !11
  %8080 = call double @llvm.fmuladd.f64(double 0xBFB17C71DD2D5180, double %8079, double %8071)
  %8081 = load ptr, ptr %7, align 8, !tbaa !9
  %8082 = load i32, ptr %12, align 4, !tbaa !5
  %8083 = load i32, ptr %8, align 4, !tbaa !5
  %8084 = mul nsw i32 14, %8083
  %8085 = add nsw i32 %8082, %8084
  %8086 = sext i32 %8085 to i64
  %8087 = getelementptr inbounds double, ptr %8081, i64 %8086
  %8088 = load double, ptr %8087, align 8, !tbaa !11
  %8089 = call double @llvm.fmuladd.f64(double 0xBF76E8A1969E7200, double %8088, double %8080)
  %8090 = load ptr, ptr %7, align 8, !tbaa !9
  %8091 = load i32, ptr %12, align 4, !tbaa !5
  %8092 = load i32, ptr %8, align 4, !tbaa !5
  %8093 = mul nsw i32 15, %8092
  %8094 = add nsw i32 %8091, %8093
  %8095 = sext i32 %8094 to i64
  %8096 = getelementptr inbounds double, ptr %8090, i64 %8095
  %8097 = load double, ptr %8096, align 8, !tbaa !11
  %8098 = call double @llvm.fmuladd.f64(double 0x3FC179BD32D3DC6F, double %8097, double %8089)
  %8099 = load ptr, ptr %7, align 8, !tbaa !9
  %8100 = load i32, ptr %12, align 4, !tbaa !5
  %8101 = load i32, ptr %8, align 4, !tbaa !5
  %8102 = mul nsw i32 16, %8101
  %8103 = add nsw i32 %8100, %8102
  %8104 = sext i32 %8103 to i64
  %8105 = getelementptr inbounds double, ptr %8099, i64 %8104
  %8106 = load double, ptr %8105, align 8, !tbaa !11
  %8107 = call double @llvm.fmuladd.f64(double 0x3FFBC4AD9C53A55A, double %8106, double %8098)
  %8108 = load ptr, ptr %7, align 8, !tbaa !9
  %8109 = load i32, ptr %12, align 4, !tbaa !5
  %8110 = load i32, ptr %8, align 4, !tbaa !5
  %8111 = mul nsw i32 17, %8110
  %8112 = add nsw i32 %8109, %8111
  %8113 = sext i32 %8112 to i64
  %8114 = getelementptr inbounds double, ptr %8108, i64 %8113
  %8115 = load double, ptr %8114, align 8, !tbaa !11
  %8116 = call double @llvm.fmuladd.f64(double 0x3FF1CA3B98F4942B, double %8115, double %8107)
  %8117 = load ptr, ptr %7, align 8, !tbaa !9
  %8118 = load i32, ptr %12, align 4, !tbaa !5
  %8119 = load i32, ptr %8, align 4, !tbaa !5
  %8120 = mul nsw i32 18, %8119
  %8121 = add nsw i32 %8118, %8120
  %8122 = sext i32 %8121 to i64
  %8123 = getelementptr inbounds double, ptr %8117, i64 %8122
  %8124 = load double, ptr %8123, align 8, !tbaa !11
  %8125 = call double @llvm.fmuladd.f64(double 0xBCC1297A2A184282, double %8124, double %8116)
  %8126 = load ptr, ptr %7, align 8, !tbaa !9
  %8127 = load i32, ptr %12, align 4, !tbaa !5
  %8128 = load i32, ptr %8, align 4, !tbaa !5
  %8129 = mul nsw i32 19, %8128
  %8130 = add nsw i32 %8127, %8129
  %8131 = sext i32 %8130 to i64
  %8132 = getelementptr inbounds double, ptr %8126, i64 %8131
  %8133 = load double, ptr %8132, align 8, !tbaa !11
  %8134 = call double @llvm.fmuladd.f64(double 0xBCA57F1A1B03E36B, double %8133, double %8125)
  %8135 = load ptr, ptr %7, align 8, !tbaa !9
  %8136 = load i32, ptr %12, align 4, !tbaa !5
  %8137 = load i32, ptr %8, align 4, !tbaa !5
  %8138 = mul nsw i32 20, %8137
  %8139 = add nsw i32 %8136, %8138
  %8140 = sext i32 %8139 to i64
  %8141 = getelementptr inbounds double, ptr %8135, i64 %8140
  %8142 = load double, ptr %8141, align 8, !tbaa !11
  %8143 = call double @llvm.fmuladd.f64(double 0xBCB10C6112FA5C6E, double %8142, double %8134)
  %8144 = load ptr, ptr %7, align 8, !tbaa !9
  %8145 = load i32, ptr %12, align 4, !tbaa !5
  %8146 = load i32, ptr %8, align 4, !tbaa !5
  %8147 = mul nsw i32 21, %8146
  %8148 = add nsw i32 %8145, %8147
  %8149 = sext i32 %8148 to i64
  %8150 = getelementptr inbounds double, ptr %8144, i64 %8149
  %8151 = load double, ptr %8150, align 8, !tbaa !11
  %8152 = call double @llvm.fmuladd.f64(double 0xBCBF0D117BE35C9F, double %8151, double %8143)
  %8153 = load ptr, ptr %7, align 8, !tbaa !9
  %8154 = load i32, ptr %12, align 4, !tbaa !5
  %8155 = load i32, ptr %8, align 4, !tbaa !5
  %8156 = mul nsw i32 22, %8155
  %8157 = add nsw i32 %8154, %8156
  %8158 = sext i32 %8157 to i64
  %8159 = getelementptr inbounds double, ptr %8153, i64 %8158
  %8160 = load double, ptr %8159, align 8, !tbaa !11
  %8161 = call double @llvm.fmuladd.f64(double 0x3CBC248A09C9692D, double %8160, double %8152)
  %8162 = load ptr, ptr %7, align 8, !tbaa !9
  %8163 = load i32, ptr %12, align 4, !tbaa !5
  %8164 = load i32, ptr %8, align 4, !tbaa !5
  %8165 = mul nsw i32 23, %8164
  %8166 = add nsw i32 %8163, %8165
  %8167 = sext i32 %8166 to i64
  %8168 = getelementptr inbounds double, ptr %8162, i64 %8167
  %8169 = load double, ptr %8168, align 8, !tbaa !11
  %8170 = call double @llvm.fmuladd.f64(double 0x3CBF98C60EE20B58, double %8169, double %8161)
  %8171 = load ptr, ptr %7, align 8, !tbaa !9
  %8172 = load i32, ptr %12, align 4, !tbaa !5
  %8173 = load i32, ptr %8, align 4, !tbaa !5
  %8174 = mul nsw i32 24, %8173
  %8175 = add nsw i32 %8172, %8174
  %8176 = sext i32 %8175 to i64
  %8177 = getelementptr inbounds double, ptr %8171, i64 %8176
  %8178 = load double, ptr %8177, align 8, !tbaa !11
  %8179 = call double @llvm.fmuladd.f64(double 0xBC8722D375CED18B, double %8178, double %8170)
  %8180 = load ptr, ptr %7, align 8, !tbaa !9
  %8181 = load i32, ptr %12, align 4, !tbaa !5
  %8182 = load i32, ptr %8, align 4, !tbaa !5
  %8183 = mul nsw i32 25, %8182
  %8184 = add nsw i32 %8181, %8183
  %8185 = sext i32 %8184 to i64
  %8186 = getelementptr inbounds double, ptr %8180, i64 %8185
  %8187 = load double, ptr %8186, align 8, !tbaa !11
  %8188 = call double @llvm.fmuladd.f64(double 0x3C928A15FB1A0DF3, double %8187, double %8179)
  %8189 = load ptr, ptr %7, align 8, !tbaa !9
  %8190 = load i32, ptr %12, align 4, !tbaa !5
  %8191 = load i32, ptr %8, align 4, !tbaa !5
  %8192 = mul nsw i32 26, %8191
  %8193 = add nsw i32 %8190, %8192
  %8194 = sext i32 %8193 to i64
  %8195 = getelementptr inbounds double, ptr %8189, i64 %8194
  %8196 = load double, ptr %8195, align 8, !tbaa !11
  %8197 = call double @llvm.fmuladd.f64(double 0xBC6B200A12F0E6FE, double %8196, double %8188)
  %8198 = load ptr, ptr %7, align 8, !tbaa !9
  %8199 = load i32, ptr %12, align 4, !tbaa !5
  %8200 = load i32, ptr %8, align 4, !tbaa !5
  %8201 = mul nsw i32 27, %8200
  %8202 = add nsw i32 %8199, %8201
  %8203 = sext i32 %8202 to i64
  %8204 = getelementptr inbounds double, ptr %8198, i64 %8203
  %8205 = load double, ptr %8204, align 8, !tbaa !11
  %8206 = call double @llvm.fmuladd.f64(double 0x3CB0B4EF81D0EBA9, double %8205, double %8197)
  %8207 = load ptr, ptr %7, align 8, !tbaa !9
  %8208 = load i32, ptr %12, align 4, !tbaa !5
  %8209 = load i32, ptr %8, align 4, !tbaa !5
  %8210 = mul nsw i32 28, %8209
  %8211 = add nsw i32 %8208, %8210
  %8212 = sext i32 %8211 to i64
  %8213 = getelementptr inbounds double, ptr %8207, i64 %8212
  %8214 = load double, ptr %8213, align 8, !tbaa !11
  %8215 = call double @llvm.fmuladd.f64(double 0xBCA81B5AA73CEFCF, double %8214, double %8206)
  %8216 = load ptr, ptr %7, align 8, !tbaa !9
  %8217 = load i32, ptr %12, align 4, !tbaa !5
  %8218 = load i32, ptr %8, align 4, !tbaa !5
  %8219 = mul nsw i32 29, %8218
  %8220 = add nsw i32 %8217, %8219
  %8221 = sext i32 %8220 to i64
  %8222 = getelementptr inbounds double, ptr %8216, i64 %8221
  %8223 = load double, ptr %8222, align 8, !tbaa !11
  %8224 = call double @llvm.fmuladd.f64(double 0xBC8CCF58EB146D39, double %8223, double %8215)
  %8225 = load ptr, ptr %7, align 8, !tbaa !9
  %8226 = load i32, ptr %12, align 4, !tbaa !5
  %8227 = load i32, ptr %8, align 4, !tbaa !5
  %8228 = mul nsw i32 30, %8227
  %8229 = add nsw i32 %8226, %8228
  %8230 = sext i32 %8229 to i64
  %8231 = getelementptr inbounds double, ptr %8225, i64 %8230
  %8232 = load double, ptr %8231, align 8, !tbaa !11
  %8233 = call double @llvm.fmuladd.f64(double 0x3FF21EFA862DF3DA, double %8232, double %8224)
  %8234 = load ptr, ptr %7, align 8, !tbaa !9
  %8235 = load i32, ptr %12, align 4, !tbaa !5
  %8236 = load i32, ptr %8, align 4, !tbaa !5
  %8237 = mul nsw i32 31, %8236
  %8238 = add nsw i32 %8235, %8237
  %8239 = sext i32 %8238 to i64
  %8240 = getelementptr inbounds double, ptr %8234, i64 %8239
  %8241 = load double, ptr %8240, align 8, !tbaa !11
  %8242 = call double @llvm.fmuladd.f64(double 0xBF734721512AF472, double %8241, double %8233)
  %8243 = load ptr, ptr %7, align 8, !tbaa !9
  %8244 = load i32, ptr %12, align 4, !tbaa !5
  %8245 = load i32, ptr %8, align 4, !tbaa !5
  %8246 = mul nsw i32 32, %8245
  %8247 = add nsw i32 %8244, %8246
  %8248 = sext i32 %8247 to i64
  %8249 = getelementptr inbounds double, ptr %8243, i64 %8248
  %8250 = load double, ptr %8249, align 8, !tbaa !11
  %8251 = call double @llvm.fmuladd.f64(double 0xBFF7F19EB1BA88FC, double %8250, double %8242)
  %8252 = load ptr, ptr %7, align 8, !tbaa !9
  %8253 = load i32, ptr %12, align 4, !tbaa !5
  %8254 = load i32, ptr %8, align 4, !tbaa !5
  %8255 = mul nsw i32 33, %8254
  %8256 = add nsw i32 %8253, %8255
  %8257 = sext i32 %8256 to i64
  %8258 = getelementptr inbounds double, ptr %8252, i64 %8257
  %8259 = load double, ptr %8258, align 8, !tbaa !11
  %8260 = call double @llvm.fmuladd.f64(double 0xBFF48831FA6C7040, double %8259, double %8251)
  %8261 = load ptr, ptr %7, align 8, !tbaa !9
  %8262 = load i32, ptr %12, align 4, !tbaa !5
  %8263 = load i32, ptr %8, align 4, !tbaa !5
  %8264 = mul nsw i32 34, %8263
  %8265 = add nsw i32 %8262, %8264
  %8266 = sext i32 %8265 to i64
  %8267 = getelementptr inbounds double, ptr %8261, i64 %8266
  %8268 = load double, ptr %8267, align 8, !tbaa !11
  %8269 = call double @llvm.fmuladd.f64(double 0x3FC901A35D55DB89, double %8268, double %8260)
  %8270 = load ptr, ptr %7, align 8, !tbaa !9
  %8271 = load i32, ptr %12, align 4, !tbaa !5
  %8272 = load i32, ptr %8, align 4, !tbaa !5
  %8273 = mul nsw i32 35, %8272
  %8274 = add nsw i32 %8271, %8273
  %8275 = sext i32 %8274 to i64
  %8276 = getelementptr inbounds double, ptr %8270, i64 %8275
  %8277 = load double, ptr %8276, align 8, !tbaa !11
  %8278 = call double @llvm.fmuladd.f64(double 0x3FF0AF85DD8BD416, double %8277, double %8269)
  %8279 = load ptr, ptr %7, align 8, !tbaa !9
  %8280 = load i32, ptr %12, align 4, !tbaa !5
  %8281 = load i32, ptr %8, align 4, !tbaa !5
  %8282 = mul nsw i32 36, %8281
  %8283 = add nsw i32 %8280, %8282
  %8284 = sext i32 %8283 to i64
  %8285 = getelementptr inbounds double, ptr %8279, i64 %8284
  %8286 = load double, ptr %8285, align 8, !tbaa !11
  %8287 = call double @llvm.fmuladd.f64(double 0xBC7995F7A399077F, double %8286, double %8278)
  %8288 = load ptr, ptr %7, align 8, !tbaa !9
  %8289 = load i32, ptr %12, align 4, !tbaa !5
  %8290 = load i32, ptr %8, align 4, !tbaa !5
  %8291 = mul nsw i32 37, %8290
  %8292 = add nsw i32 %8289, %8291
  %8293 = sext i32 %8292 to i64
  %8294 = getelementptr inbounds double, ptr %8288, i64 %8293
  %8295 = load double, ptr %8294, align 8, !tbaa !11
  %8296 = call double @llvm.fmuladd.f64(double 0x3CA641DE100CB2D1, double %8295, double %8287)
  %8297 = load ptr, ptr %7, align 8, !tbaa !9
  %8298 = load i32, ptr %12, align 4, !tbaa !5
  %8299 = load i32, ptr %8, align 4, !tbaa !5
  %8300 = mul nsw i32 38, %8299
  %8301 = add nsw i32 %8298, %8300
  %8302 = sext i32 %8301 to i64
  %8303 = getelementptr inbounds double, ptr %8297, i64 %8302
  %8304 = load double, ptr %8303, align 8, !tbaa !11
  %8305 = call double @llvm.fmuladd.f64(double 0xBCB4F5312ABC6654, double %8304, double %8296)
  %8306 = load ptr, ptr %7, align 8, !tbaa !9
  %8307 = load i32, ptr %12, align 4, !tbaa !5
  %8308 = load i32, ptr %8, align 4, !tbaa !5
  %8309 = mul nsw i32 39, %8308
  %8310 = add nsw i32 %8307, %8309
  %8311 = sext i32 %8310 to i64
  %8312 = getelementptr inbounds double, ptr %8306, i64 %8311
  %8313 = load double, ptr %8312, align 8, !tbaa !11
  %8314 = call double @llvm.fmuladd.f64(double 0xBC84CFA22413F23C, double %8313, double %8305)
  %8315 = load ptr, ptr %7, align 8, !tbaa !9
  %8316 = load i32, ptr %12, align 4, !tbaa !5
  %8317 = load i32, ptr %8, align 4, !tbaa !5
  %8318 = mul nsw i32 40, %8317
  %8319 = add nsw i32 %8316, %8318
  %8320 = sext i32 %8319 to i64
  %8321 = getelementptr inbounds double, ptr %8315, i64 %8320
  %8322 = load double, ptr %8321, align 8, !tbaa !11
  %8323 = call double @llvm.fmuladd.f64(double 0x3FE4A7E9CB8A3497, double %8322, double %8314)
  %8324 = load ptr, ptr %7, align 8, !tbaa !9
  %8325 = load i32, ptr %12, align 4, !tbaa !5
  %8326 = load i32, ptr %8, align 4, !tbaa !5
  %8327 = mul nsw i32 41, %8326
  %8328 = add nsw i32 %8325, %8327
  %8329 = sext i32 %8328 to i64
  %8330 = getelementptr inbounds double, ptr %8324, i64 %8329
  %8331 = load double, ptr %8330, align 8, !tbaa !11
  %8332 = call double @llvm.fmuladd.f64(double 0x3C71E70AAB141C80, double %8331, double %8323)
  %8333 = load ptr, ptr %7, align 8, !tbaa !9
  %8334 = load i32, ptr %12, align 4, !tbaa !5
  %8335 = load i32, ptr %8, align 4, !tbaa !5
  %8336 = mul nsw i32 42, %8335
  %8337 = add nsw i32 %8334, %8336
  %8338 = sext i32 %8337 to i64
  %8339 = getelementptr inbounds double, ptr %8333, i64 %8338
  %8340 = load double, ptr %8339, align 8, !tbaa !11
  %8341 = call double @llvm.fmuladd.f64(double 0x3CF473CE704FB7AF, double %8340, double %8332)
  %8342 = load ptr, ptr %7, align 8, !tbaa !9
  %8343 = load i32, ptr %12, align 4, !tbaa !5
  %8344 = load i32, ptr %8, align 4, !tbaa !5
  %8345 = mul nsw i32 43, %8344
  %8346 = add nsw i32 %8343, %8345
  %8347 = sext i32 %8346 to i64
  %8348 = getelementptr inbounds double, ptr %8342, i64 %8347
  %8349 = load double, ptr %8348, align 8, !tbaa !11
  %8350 = call double @llvm.fmuladd.f64(double 0xBCDC972A6828DF4A, double %8349, double %8341)
  %8351 = load ptr, ptr %7, align 8, !tbaa !9
  %8352 = load i32, ptr %12, align 4, !tbaa !5
  %8353 = load i32, ptr %8, align 4, !tbaa !5
  %8354 = mul nsw i32 44, %8353
  %8355 = add nsw i32 %8352, %8354
  %8356 = sext i32 %8355 to i64
  %8357 = getelementptr inbounds double, ptr %8351, i64 %8356
  %8358 = load double, ptr %8357, align 8, !tbaa !11
  %8359 = call double @llvm.fmuladd.f64(double 0x3CF52443B5049A2F, double %8358, double %8350)
  %8360 = load ptr, ptr %7, align 8, !tbaa !9
  %8361 = load i32, ptr %12, align 4, !tbaa !5
  %8362 = load i32, ptr %8, align 4, !tbaa !5
  %8363 = mul nsw i32 45, %8362
  %8364 = add nsw i32 %8361, %8363
  %8365 = sext i32 %8364 to i64
  %8366 = getelementptr inbounds double, ptr %8360, i64 %8365
  %8367 = load double, ptr %8366, align 8, !tbaa !11
  %8368 = call double @llvm.fmuladd.f64(double 0x3CECBEC748C84EAB, double %8367, double %8359)
  %8369 = load ptr, ptr %7, align 8, !tbaa !9
  %8370 = load i32, ptr %12, align 4, !tbaa !5
  %8371 = load i32, ptr %8, align 4, !tbaa !5
  %8372 = mul nsw i32 46, %8371
  %8373 = add nsw i32 %8370, %8372
  %8374 = sext i32 %8373 to i64
  %8375 = getelementptr inbounds double, ptr %8369, i64 %8374
  %8376 = load double, ptr %8375, align 8, !tbaa !11
  %8377 = call double @llvm.fmuladd.f64(double 0xBFF08654A2D4F71C, double %8376, double %8368)
  %8378 = load ptr, ptr %7, align 8, !tbaa !9
  %8379 = load i32, ptr %12, align 4, !tbaa !5
  %8380 = load i32, ptr %8, align 4, !tbaa !5
  %8381 = mul nsw i32 47, %8380
  %8382 = add nsw i32 %8379, %8381
  %8383 = sext i32 %8382 to i64
  %8384 = getelementptr inbounds double, ptr %8378, i64 %8383
  %8385 = load double, ptr %8384, align 8, !tbaa !11
  %8386 = call double @llvm.fmuladd.f64(double 0x3CF0EA0E4F0ED202, double %8385, double %8377)
  %8387 = load ptr, ptr %7, align 8, !tbaa !9
  %8388 = load i32, ptr %12, align 4, !tbaa !5
  %8389 = load i32, ptr %8, align 4, !tbaa !5
  %8390 = mul nsw i32 48, %8389
  %8391 = add nsw i32 %8388, %8390
  %8392 = sext i32 %8391 to i64
  %8393 = getelementptr inbounds double, ptr %8387, i64 %8392
  %8394 = load double, ptr %8393, align 8, !tbaa !11
  %8395 = call double @llvm.fmuladd.f64(double 0xBD092AFA61D3C23C, double %8394, double %8386)
  %8396 = load ptr, ptr %7, align 8, !tbaa !9
  %8397 = load i32, ptr %12, align 4, !tbaa !5
  %8398 = load i32, ptr %8, align 4, !tbaa !5
  %8399 = mul nsw i32 49, %8398
  %8400 = add nsw i32 %8397, %8399
  %8401 = sext i32 %8400 to i64
  %8402 = getelementptr inbounds double, ptr %8396, i64 %8401
  %8403 = load double, ptr %8402, align 8, !tbaa !11
  %8404 = call double @llvm.fmuladd.f64(double 0x3CF09E8D6B1B7310, double %8403, double %8395)
  %8405 = load ptr, ptr %7, align 8, !tbaa !9
  %8406 = load i32, ptr %12, align 4, !tbaa !5
  %8407 = load i32, ptr %8, align 4, !tbaa !5
  %8408 = mul nsw i32 50, %8407
  %8409 = add nsw i32 %8406, %8408
  %8410 = sext i32 %8409 to i64
  %8411 = getelementptr inbounds double, ptr %8405, i64 %8410
  %8412 = load double, ptr %8411, align 8, !tbaa !11
  %8413 = call double @llvm.fmuladd.f64(double 0xBD090AB2F386DB23, double %8412, double %8404)
  %8414 = load ptr, ptr %7, align 8, !tbaa !9
  %8415 = load i32, ptr %12, align 4, !tbaa !5
  %8416 = load i32, ptr %8, align 4, !tbaa !5
  %8417 = mul nsw i32 51, %8416
  %8418 = add nsw i32 %8415, %8417
  %8419 = sext i32 %8418 to i64
  %8420 = getelementptr inbounds double, ptr %8414, i64 %8419
  %8421 = load double, ptr %8420, align 8, !tbaa !11
  %8422 = call double @llvm.fmuladd.f64(double 0xBD01E5B3F19FA08F, double %8421, double %8413)
  %8423 = load ptr, ptr %7, align 8, !tbaa !9
  %8424 = load i32, ptr %12, align 4, !tbaa !5
  %8425 = load i32, ptr %8, align 4, !tbaa !5
  %8426 = mul nsw i32 52, %8425
  %8427 = add nsw i32 %8424, %8426
  %8428 = sext i32 %8427 to i64
  %8429 = getelementptr inbounds double, ptr %8423, i64 %8428
  %8430 = load double, ptr %8429, align 8, !tbaa !11
  %8431 = call double @llvm.fmuladd.f64(double 0xBFFEFBDEB14F4E48, double %8430, double %8422)
  %8432 = load ptr, ptr %7, align 8, !tbaa !9
  %8433 = load i32, ptr %12, align 4, !tbaa !5
  %8434 = load i32, ptr %8, align 4, !tbaa !5
  %8435 = mul nsw i32 53, %8434
  %8436 = add nsw i32 %8433, %8435
  %8437 = sext i32 %8436 to i64
  %8438 = getelementptr inbounds double, ptr %8432, i64 %8437
  %8439 = load double, ptr %8438, align 8, !tbaa !11
  %8440 = call double @llvm.fmuladd.f64(double 0xBD06A54AC5CD9F53, double %8439, double %8431)
  store double %8440, ptr %11, align 8, !tbaa !11
  %8441 = load double, ptr %11, align 8, !tbaa !11
  %8442 = load ptr, ptr %9, align 8, !tbaa !9
  %8443 = load i32, ptr %12, align 4, !tbaa !5
  %8444 = load i32, ptr %10, align 4, !tbaa !5
  %8445 = mul nsw i32 16, %8444
  %8446 = add nsw i32 %8443, %8445
  %8447 = sext i32 %8446 to i64
  %8448 = getelementptr inbounds double, ptr %8442, i64 %8447
  %8449 = load double, ptr %8448, align 8, !tbaa !11
  %8450 = fadd double %8449, %8441
  store double %8450, ptr %8448, align 8, !tbaa !11
  %8451 = load ptr, ptr %7, align 8, !tbaa !9
  %8452 = load i32, ptr %12, align 4, !tbaa !5
  %8453 = load i32, ptr %8, align 4, !tbaa !5
  %8454 = mul nsw i32 0, %8453
  %8455 = add nsw i32 %8452, %8454
  %8456 = sext i32 %8455 to i64
  %8457 = getelementptr inbounds double, ptr %8451, i64 %8456
  %8458 = load double, ptr %8457, align 8, !tbaa !11
  %8459 = load ptr, ptr %7, align 8, !tbaa !9
  %8460 = load i32, ptr %12, align 4, !tbaa !5
  %8461 = load i32, ptr %8, align 4, !tbaa !5
  %8462 = mul nsw i32 1, %8461
  %8463 = add nsw i32 %8460, %8462
  %8464 = sext i32 %8463 to i64
  %8465 = getelementptr inbounds double, ptr %8459, i64 %8464
  %8466 = load double, ptr %8465, align 8, !tbaa !11
  %8467 = fmul double 0xBC90195309BD1B6C, %8466
  %8468 = call double @llvm.fmuladd.f64(double 0x3C91420C4C2992C8, double %8458, double %8467)
  %8469 = load ptr, ptr %7, align 8, !tbaa !9
  %8470 = load i32, ptr %12, align 4, !tbaa !5
  %8471 = load i32, ptr %8, align 4, !tbaa !5
  %8472 = mul nsw i32 2, %8471
  %8473 = add nsw i32 %8470, %8472
  %8474 = sext i32 %8473 to i64
  %8475 = getelementptr inbounds double, ptr %8469, i64 %8474
  %8476 = load double, ptr %8475, align 8, !tbaa !11
  %8477 = call double @llvm.fmuladd.f64(double 0xBCB1596887C79338, double %8476, double %8468)
  %8478 = load ptr, ptr %7, align 8, !tbaa !9
  %8479 = load i32, ptr %12, align 4, !tbaa !5
  %8480 = load i32, ptr %8, align 4, !tbaa !5
  %8481 = mul nsw i32 3, %8480
  %8482 = add nsw i32 %8479, %8481
  %8483 = sext i32 %8482 to i64
  %8484 = getelementptr inbounds double, ptr %8478, i64 %8483
  %8485 = load double, ptr %8484, align 8, !tbaa !11
  %8486 = call double @llvm.fmuladd.f64(double 0xBC95A4C76FC77AC0, double %8485, double %8477)
  %8487 = load ptr, ptr %7, align 8, !tbaa !9
  %8488 = load i32, ptr %12, align 4, !tbaa !5
  %8489 = load i32, ptr %8, align 4, !tbaa !5
  %8490 = mul nsw i32 4, %8489
  %8491 = add nsw i32 %8488, %8490
  %8492 = sext i32 %8491 to i64
  %8493 = getelementptr inbounds double, ptr %8487, i64 %8492
  %8494 = load double, ptr %8493, align 8, !tbaa !11
  %8495 = call double @llvm.fmuladd.f64(double 0xBCA0A9E2E329FCA7, double %8494, double %8486)
  %8496 = load ptr, ptr %7, align 8, !tbaa !9
  %8497 = load i32, ptr %12, align 4, !tbaa !5
  %8498 = load i32, ptr %8, align 4, !tbaa !5
  %8499 = mul nsw i32 5, %8498
  %8500 = add nsw i32 %8497, %8499
  %8501 = sext i32 %8500 to i64
  %8502 = getelementptr inbounds double, ptr %8496, i64 %8501
  %8503 = load double, ptr %8502, align 8, !tbaa !11
  %8504 = call double @llvm.fmuladd.f64(double 0xBC80C6561C6CD610, double %8503, double %8495)
  %8505 = load ptr, ptr %7, align 8, !tbaa !9
  %8506 = load i32, ptr %12, align 4, !tbaa !5
  %8507 = load i32, ptr %8, align 4, !tbaa !5
  %8508 = mul nsw i32 6, %8507
  %8509 = add nsw i32 %8506, %8508
  %8510 = sext i32 %8509 to i64
  %8511 = getelementptr inbounds double, ptr %8505, i64 %8510
  %8512 = load double, ptr %8511, align 8, !tbaa !11
  %8513 = call double @llvm.fmuladd.f64(double 0xBC89201DA4BD28B6, double %8512, double %8504)
  %8514 = load ptr, ptr %7, align 8, !tbaa !9
  %8515 = load i32, ptr %12, align 4, !tbaa !5
  %8516 = load i32, ptr %8, align 4, !tbaa !5
  %8517 = mul nsw i32 7, %8516
  %8518 = add nsw i32 %8515, %8517
  %8519 = sext i32 %8518 to i64
  %8520 = getelementptr inbounds double, ptr %8514, i64 %8519
  %8521 = load double, ptr %8520, align 8, !tbaa !11
  %8522 = call double @llvm.fmuladd.f64(double 0x3C950AD45332D6FF, double %8521, double %8513)
  %8523 = load ptr, ptr %7, align 8, !tbaa !9
  %8524 = load i32, ptr %12, align 4, !tbaa !5
  %8525 = load i32, ptr %8, align 4, !tbaa !5
  %8526 = mul nsw i32 8, %8525
  %8527 = add nsw i32 %8524, %8526
  %8528 = sext i32 %8527 to i64
  %8529 = getelementptr inbounds double, ptr %8523, i64 %8528
  %8530 = load double, ptr %8529, align 8, !tbaa !11
  %8531 = call double @llvm.fmuladd.f64(double 0x3C9EB6F29C749A8E, double %8530, double %8522)
  %8532 = load ptr, ptr %7, align 8, !tbaa !9
  %8533 = load i32, ptr %12, align 4, !tbaa !5
  %8534 = load i32, ptr %8, align 4, !tbaa !5
  %8535 = mul nsw i32 9, %8534
  %8536 = add nsw i32 %8533, %8535
  %8537 = sext i32 %8536 to i64
  %8538 = getelementptr inbounds double, ptr %8532, i64 %8537
  %8539 = load double, ptr %8538, align 8, !tbaa !11
  %8540 = call double @llvm.fmuladd.f64(double 0xBC6D62BACB4768AD, double %8539, double %8531)
  %8541 = load ptr, ptr %7, align 8, !tbaa !9
  %8542 = load i32, ptr %12, align 4, !tbaa !5
  %8543 = load i32, ptr %8, align 4, !tbaa !5
  %8544 = mul nsw i32 10, %8543
  %8545 = add nsw i32 %8542, %8544
  %8546 = sext i32 %8545 to i64
  %8547 = getelementptr inbounds double, ptr %8541, i64 %8546
  %8548 = load double, ptr %8547, align 8, !tbaa !11
  %8549 = call double @llvm.fmuladd.f64(double 0x3CB80BBA9C9EA48C, double %8548, double %8540)
  %8550 = load ptr, ptr %7, align 8, !tbaa !9
  %8551 = load i32, ptr %12, align 4, !tbaa !5
  %8552 = load i32, ptr %8, align 4, !tbaa !5
  %8553 = mul nsw i32 11, %8552
  %8554 = add nsw i32 %8551, %8553
  %8555 = sext i32 %8554 to i64
  %8556 = getelementptr inbounds double, ptr %8550, i64 %8555
  %8557 = load double, ptr %8556, align 8, !tbaa !11
  %8558 = call double @llvm.fmuladd.f64(double 0xBCAB0B98A91B667C, double %8557, double %8549)
  %8559 = load ptr, ptr %7, align 8, !tbaa !9
  %8560 = load i32, ptr %12, align 4, !tbaa !5
  %8561 = load i32, ptr %8, align 4, !tbaa !5
  %8562 = mul nsw i32 12, %8561
  %8563 = add nsw i32 %8560, %8562
  %8564 = sext i32 %8563 to i64
  %8565 = getelementptr inbounds double, ptr %8559, i64 %8564
  %8566 = load double, ptr %8565, align 8, !tbaa !11
  %8567 = call double @llvm.fmuladd.f64(double 0xBFF5B6F7089FF1D1, double %8566, double %8558)
  %8568 = load ptr, ptr %7, align 8, !tbaa !9
  %8569 = load i32, ptr %12, align 4, !tbaa !5
  %8570 = load i32, ptr %8, align 4, !tbaa !5
  %8571 = mul nsw i32 13, %8570
  %8572 = add nsw i32 %8569, %8571
  %8573 = sext i32 %8572 to i64
  %8574 = getelementptr inbounds double, ptr %8568, i64 %8573
  %8575 = load double, ptr %8574, align 8, !tbaa !11
  %8576 = call double @llvm.fmuladd.f64(double 0x3FB1F3F0B024DC80, double %8575, double %8567)
  %8577 = load ptr, ptr %7, align 8, !tbaa !9
  %8578 = load i32, ptr %12, align 4, !tbaa !5
  %8579 = load i32, ptr %8, align 4, !tbaa !5
  %8580 = mul nsw i32 14, %8579
  %8581 = add nsw i32 %8578, %8580
  %8582 = sext i32 %8581 to i64
  %8583 = getelementptr inbounds double, ptr %8577, i64 %8582
  %8584 = load double, ptr %8583, align 8, !tbaa !11
  %8585 = call double @llvm.fmuladd.f64(double 0x3FCCBE3CAE6B6284, double %8584, double %8576)
  %8586 = load ptr, ptr %7, align 8, !tbaa !9
  %8587 = load i32, ptr %12, align 4, !tbaa !5
  %8588 = load i32, ptr %8, align 4, !tbaa !5
  %8589 = mul nsw i32 15, %8588
  %8590 = add nsw i32 %8587, %8589
  %8591 = sext i32 %8590 to i64
  %8592 = getelementptr inbounds double, ptr %8586, i64 %8591
  %8593 = load double, ptr %8592, align 8, !tbaa !11
  %8594 = call double @llvm.fmuladd.f64(double 0xBFD81F8F0CEC6102, double %8593, double %8585)
  %8595 = load ptr, ptr %7, align 8, !tbaa !9
  %8596 = load i32, ptr %12, align 4, !tbaa !5
  %8597 = load i32, ptr %8, align 4, !tbaa !5
  %8598 = mul nsw i32 16, %8597
  %8599 = add nsw i32 %8596, %8598
  %8600 = sext i32 %8599 to i64
  %8601 = getelementptr inbounds double, ptr %8595, i64 %8600
  %8602 = load double, ptr %8601, align 8, !tbaa !11
  %8603 = call double @llvm.fmuladd.f64(double 0xBFFBA497A89943F3, double %8602, double %8594)
  %8604 = load ptr, ptr %7, align 8, !tbaa !9
  %8605 = load i32, ptr %12, align 4, !tbaa !5
  %8606 = load i32, ptr %8, align 4, !tbaa !5
  %8607 = mul nsw i32 17, %8606
  %8608 = add nsw i32 %8605, %8607
  %8609 = sext i32 %8608 to i64
  %8610 = getelementptr inbounds double, ptr %8604, i64 %8609
  %8611 = load double, ptr %8610, align 8, !tbaa !11
  %8612 = call double @llvm.fmuladd.f64(double 0xBFDC5366E211BEA3, double %8611, double %8603)
  %8613 = load ptr, ptr %7, align 8, !tbaa !9
  %8614 = load i32, ptr %12, align 4, !tbaa !5
  %8615 = load i32, ptr %8, align 4, !tbaa !5
  %8616 = mul nsw i32 18, %8615
  %8617 = add nsw i32 %8614, %8616
  %8618 = sext i32 %8617 to i64
  %8619 = getelementptr inbounds double, ptr %8613, i64 %8618
  %8620 = load double, ptr %8619, align 8, !tbaa !11
  %8621 = call double @llvm.fmuladd.f64(double 0xBC8E7761343A95A0, double %8620, double %8612)
  %8622 = load ptr, ptr %7, align 8, !tbaa !9
  %8623 = load i32, ptr %12, align 4, !tbaa !5
  %8624 = load i32, ptr %8, align 4, !tbaa !5
  %8625 = mul nsw i32 19, %8624
  %8626 = add nsw i32 %8623, %8625
  %8627 = sext i32 %8626 to i64
  %8628 = getelementptr inbounds double, ptr %8622, i64 %8627
  %8629 = load double, ptr %8628, align 8, !tbaa !11
  %8630 = call double @llvm.fmuladd.f64(double 0xBCA44D48F8869957, double %8629, double %8621)
  %8631 = load ptr, ptr %7, align 8, !tbaa !9
  %8632 = load i32, ptr %12, align 4, !tbaa !5
  %8633 = load i32, ptr %8, align 4, !tbaa !5
  %8634 = mul nsw i32 20, %8633
  %8635 = add nsw i32 %8632, %8634
  %8636 = sext i32 %8635 to i64
  %8637 = getelementptr inbounds double, ptr %8631, i64 %8636
  %8638 = load double, ptr %8637, align 8, !tbaa !11
  %8639 = call double @llvm.fmuladd.f64(double 0xBC95C5CE8588C948, double %8638, double %8630)
  %8640 = load ptr, ptr %7, align 8, !tbaa !9
  %8641 = load i32, ptr %12, align 4, !tbaa !5
  %8642 = load i32, ptr %8, align 4, !tbaa !5
  %8643 = mul nsw i32 21, %8642
  %8644 = add nsw i32 %8641, %8643
  %8645 = sext i32 %8644 to i64
  %8646 = getelementptr inbounds double, ptr %8640, i64 %8645
  %8647 = load double, ptr %8646, align 8, !tbaa !11
  %8648 = call double @llvm.fmuladd.f64(double 0xBCB82536F63F33EE, double %8647, double %8639)
  %8649 = load ptr, ptr %7, align 8, !tbaa !9
  %8650 = load i32, ptr %12, align 4, !tbaa !5
  %8651 = load i32, ptr %8, align 4, !tbaa !5
  %8652 = mul nsw i32 22, %8651
  %8653 = add nsw i32 %8650, %8652
  %8654 = sext i32 %8653 to i64
  %8655 = getelementptr inbounds double, ptr %8649, i64 %8654
  %8656 = load double, ptr %8655, align 8, !tbaa !11
  %8657 = call double @llvm.fmuladd.f64(double 0x3CA6D94B54150D6E, double %8656, double %8648)
  %8658 = load ptr, ptr %7, align 8, !tbaa !9
  %8659 = load i32, ptr %12, align 4, !tbaa !5
  %8660 = load i32, ptr %8, align 4, !tbaa !5
  %8661 = mul nsw i32 23, %8660
  %8662 = add nsw i32 %8659, %8661
  %8663 = sext i32 %8662 to i64
  %8664 = getelementptr inbounds double, ptr %8658, i64 %8663
  %8665 = load double, ptr %8664, align 8, !tbaa !11
  %8666 = call double @llvm.fmuladd.f64(double 0xBC86CA5E2A13EA01, double %8665, double %8657)
  %8667 = load ptr, ptr %7, align 8, !tbaa !9
  %8668 = load i32, ptr %12, align 4, !tbaa !5
  %8669 = load i32, ptr %8, align 4, !tbaa !5
  %8670 = mul nsw i32 24, %8669
  %8671 = add nsw i32 %8668, %8670
  %8672 = sext i32 %8671 to i64
  %8673 = getelementptr inbounds double, ptr %8667, i64 %8672
  %8674 = load double, ptr %8673, align 8, !tbaa !11
  %8675 = call double @llvm.fmuladd.f64(double 0xBC8AA385F45F1E57, double %8674, double %8666)
  %8676 = load ptr, ptr %7, align 8, !tbaa !9
  %8677 = load i32, ptr %12, align 4, !tbaa !5
  %8678 = load i32, ptr %8, align 4, !tbaa !5
  %8679 = mul nsw i32 25, %8678
  %8680 = add nsw i32 %8677, %8679
  %8681 = sext i32 %8680 to i64
  %8682 = getelementptr inbounds double, ptr %8676, i64 %8681
  %8683 = load double, ptr %8682, align 8, !tbaa !11
  %8684 = call double @llvm.fmuladd.f64(double 0xBCB2AACA2DE89BB0, double %8683, double %8675)
  %8685 = load ptr, ptr %7, align 8, !tbaa !9
  %8686 = load i32, ptr %12, align 4, !tbaa !5
  %8687 = load i32, ptr %8, align 4, !tbaa !5
  %8688 = mul nsw i32 26, %8687
  %8689 = add nsw i32 %8686, %8688
  %8690 = sext i32 %8689 to i64
  %8691 = getelementptr inbounds double, ptr %8685, i64 %8690
  %8692 = load double, ptr %8691, align 8, !tbaa !11
  %8693 = call double @llvm.fmuladd.f64(double 0x3CA83B7215B2B95C, double %8692, double %8684)
  %8694 = load ptr, ptr %7, align 8, !tbaa !9
  %8695 = load i32, ptr %12, align 4, !tbaa !5
  %8696 = load i32, ptr %8, align 4, !tbaa !5
  %8697 = mul nsw i32 27, %8696
  %8698 = add nsw i32 %8695, %8697
  %8699 = sext i32 %8698 to i64
  %8700 = getelementptr inbounds double, ptr %8694, i64 %8699
  %8701 = load double, ptr %8700, align 8, !tbaa !11
  %8702 = call double @llvm.fmuladd.f64(double 0x3C8FF091FC9CD2FD, double %8701, double %8693)
  %8703 = load ptr, ptr %7, align 8, !tbaa !9
  %8704 = load i32, ptr %12, align 4, !tbaa !5
  %8705 = load i32, ptr %8, align 4, !tbaa !5
  %8706 = mul nsw i32 28, %8705
  %8707 = add nsw i32 %8704, %8706
  %8708 = sext i32 %8707 to i64
  %8709 = getelementptr inbounds double, ptr %8703, i64 %8708
  %8710 = load double, ptr %8709, align 8, !tbaa !11
  %8711 = call double @llvm.fmuladd.f64(double 0x3CB3BD521F494B8F, double %8710, double %8702)
  %8712 = load ptr, ptr %7, align 8, !tbaa !9
  %8713 = load i32, ptr %12, align 4, !tbaa !5
  %8714 = load i32, ptr %8, align 4, !tbaa !5
  %8715 = mul nsw i32 29, %8714
  %8716 = add nsw i32 %8713, %8715
  %8717 = sext i32 %8716 to i64
  %8718 = getelementptr inbounds double, ptr %8712, i64 %8717
  %8719 = load double, ptr %8718, align 8, !tbaa !11
  %8720 = call double @llvm.fmuladd.f64(double 0xBCAFEB692A4A65D9, double %8719, double %8711)
  %8721 = load ptr, ptr %7, align 8, !tbaa !9
  %8722 = load i32, ptr %12, align 4, !tbaa !5
  %8723 = load i32, ptr %8, align 4, !tbaa !5
  %8724 = mul nsw i32 30, %8723
  %8725 = add nsw i32 %8722, %8724
  %8726 = sext i32 %8725 to i64
  %8727 = getelementptr inbounds double, ptr %8721, i64 %8726
  %8728 = load double, ptr %8727, align 8, !tbaa !11
  %8729 = call double @llvm.fmuladd.f64(double 0x3FB1F3F0B024DC70, double %8728, double %8720)
  %8730 = load ptr, ptr %7, align 8, !tbaa !9
  %8731 = load i32, ptr %12, align 4, !tbaa !5
  %8732 = load i32, ptr %8, align 4, !tbaa !5
  %8733 = mul nsw i32 31, %8732
  %8734 = add nsw i32 %8731, %8733
  %8735 = sext i32 %8734 to i64
  %8736 = getelementptr inbounds double, ptr %8730, i64 %8735
  %8737 = load double, ptr %8736, align 8, !tbaa !11
  %8738 = call double @llvm.fmuladd.f64(double 0xBFF5B6F7089FF1D6, double %8737, double %8729)
  %8739 = load ptr, ptr %7, align 8, !tbaa !9
  %8740 = load i32, ptr %12, align 4, !tbaa !5
  %8741 = load i32, ptr %8, align 4, !tbaa !5
  %8742 = mul nsw i32 32, %8741
  %8743 = add nsw i32 %8740, %8742
  %8744 = sext i32 %8743 to i64
  %8745 = getelementptr inbounds double, ptr %8739, i64 %8744
  %8746 = load double, ptr %8745, align 8, !tbaa !11
  %8747 = call double @llvm.fmuladd.f64(double 0x3FCCBE3CAE6B6255, double %8746, double %8738)
  %8748 = load ptr, ptr %7, align 8, !tbaa !9
  %8749 = load i32, ptr %12, align 4, !tbaa !5
  %8750 = load i32, ptr %8, align 4, !tbaa !5
  %8751 = mul nsw i32 33, %8750
  %8752 = add nsw i32 %8749, %8751
  %8753 = sext i32 %8752 to i64
  %8754 = getelementptr inbounds double, ptr %8748, i64 %8753
  %8755 = load double, ptr %8754, align 8, !tbaa !11
  %8756 = call double @llvm.fmuladd.f64(double 0xBFFBA497A89943F8, double %8755, double %8747)
  %8757 = load ptr, ptr %7, align 8, !tbaa !9
  %8758 = load i32, ptr %12, align 4, !tbaa !5
  %8759 = load i32, ptr %8, align 4, !tbaa !5
  %8760 = mul nsw i32 34, %8759
  %8761 = add nsw i32 %8758, %8760
  %8762 = sext i32 %8761 to i64
  %8763 = getelementptr inbounds double, ptr %8757, i64 %8762
  %8764 = load double, ptr %8763, align 8, !tbaa !11
  %8765 = call double @llvm.fmuladd.f64(double 0xBFD81F8F0CEC610A, double %8764, double %8756)
  %8766 = load ptr, ptr %7, align 8, !tbaa !9
  %8767 = load i32, ptr %12, align 4, !tbaa !5
  %8768 = load i32, ptr %8, align 4, !tbaa !5
  %8769 = mul nsw i32 35, %8768
  %8770 = add nsw i32 %8767, %8769
  %8771 = sext i32 %8770 to i64
  %8772 = getelementptr inbounds double, ptr %8766, i64 %8771
  %8773 = load double, ptr %8772, align 8, !tbaa !11
  %8774 = call double @llvm.fmuladd.f64(double 0xBFDC5366E211BE88, double %8773, double %8765)
  %8775 = load ptr, ptr %7, align 8, !tbaa !9
  %8776 = load i32, ptr %12, align 4, !tbaa !5
  %8777 = load i32, ptr %8, align 4, !tbaa !5
  %8778 = mul nsw i32 36, %8777
  %8779 = add nsw i32 %8776, %8778
  %8780 = sext i32 %8779 to i64
  %8781 = getelementptr inbounds double, ptr %8775, i64 %8780
  %8782 = load double, ptr %8781, align 8, !tbaa !11
  %8783 = call double @llvm.fmuladd.f64(double 0x3CC5794CC9D41F8E, double %8782, double %8774)
  %8784 = load ptr, ptr %7, align 8, !tbaa !9
  %8785 = load i32, ptr %12, align 4, !tbaa !5
  %8786 = load i32, ptr %8, align 4, !tbaa !5
  %8787 = mul nsw i32 37, %8786
  %8788 = add nsw i32 %8785, %8787
  %8789 = sext i32 %8788 to i64
  %8790 = getelementptr inbounds double, ptr %8784, i64 %8789
  %8791 = load double, ptr %8790, align 8, !tbaa !11
  %8792 = call double @llvm.fmuladd.f64(double 0x3CB96EEF6E012B83, double %8791, double %8783)
  %8793 = load ptr, ptr %7, align 8, !tbaa !9
  %8794 = load i32, ptr %12, align 4, !tbaa !5
  %8795 = load i32, ptr %8, align 4, !tbaa !5
  %8796 = mul nsw i32 38, %8795
  %8797 = add nsw i32 %8794, %8796
  %8798 = sext i32 %8797 to i64
  %8799 = getelementptr inbounds double, ptr %8793, i64 %8798
  %8800 = load double, ptr %8799, align 8, !tbaa !11
  %8801 = call double @llvm.fmuladd.f64(double 0x3CA99DE8CF4E0887, double %8800, double %8792)
  %8802 = load ptr, ptr %7, align 8, !tbaa !9
  %8803 = load i32, ptr %12, align 4, !tbaa !5
  %8804 = load i32, ptr %8, align 4, !tbaa !5
  %8805 = mul nsw i32 39, %8804
  %8806 = add nsw i32 %8803, %8805
  %8807 = sext i32 %8806 to i64
  %8808 = getelementptr inbounds double, ptr %8802, i64 %8807
  %8809 = load double, ptr %8808, align 8, !tbaa !11
  %8810 = call double @llvm.fmuladd.f64(double 0xBC949B6E91DE24A6, double %8809, double %8801)
  %8811 = load ptr, ptr %7, align 8, !tbaa !9
  %8812 = load i32, ptr %12, align 4, !tbaa !5
  %8813 = load i32, ptr %8, align 4, !tbaa !5
  %8814 = mul nsw i32 40, %8813
  %8815 = add nsw i32 %8812, %8814
  %8816 = sext i32 %8815 to i64
  %8817 = getelementptr inbounds double, ptr %8811, i64 %8816
  %8818 = load double, ptr %8817, align 8, !tbaa !11
  %8819 = call double @llvm.fmuladd.f64(double 0xBCC8E357CB42C088, double %8818, double %8810)
  %8820 = load ptr, ptr %7, align 8, !tbaa !9
  %8821 = load i32, ptr %12, align 4, !tbaa !5
  %8822 = load i32, ptr %8, align 4, !tbaa !5
  %8823 = mul nsw i32 41, %8822
  %8824 = add nsw i32 %8821, %8823
  %8825 = sext i32 %8824 to i64
  %8826 = getelementptr inbounds double, ptr %8820, i64 %8825
  %8827 = load double, ptr %8826, align 8, !tbaa !11
  %8828 = call double @llvm.fmuladd.f64(double 0x3FE4A7E9CB8A3494, double %8827, double %8819)
  %8829 = load ptr, ptr %7, align 8, !tbaa !9
  %8830 = load i32, ptr %12, align 4, !tbaa !5
  %8831 = load i32, ptr %8, align 4, !tbaa !5
  %8832 = mul nsw i32 42, %8831
  %8833 = add nsw i32 %8830, %8832
  %8834 = sext i32 %8833 to i64
  %8835 = getelementptr inbounds double, ptr %8829, i64 %8834
  %8836 = load double, ptr %8835, align 8, !tbaa !11
  %8837 = call double @llvm.fmuladd.f64(double 0x3CF51E5204136C2F, double %8836, double %8828)
  %8838 = load ptr, ptr %7, align 8, !tbaa !9
  %8839 = load i32, ptr %12, align 4, !tbaa !5
  %8840 = load i32, ptr %8, align 4, !tbaa !5
  %8841 = mul nsw i32 43, %8840
  %8842 = add nsw i32 %8839, %8841
  %8843 = sext i32 %8842 to i64
  %8844 = getelementptr inbounds double, ptr %8838, i64 %8843
  %8845 = load double, ptr %8844, align 8, !tbaa !11
  %8846 = call double @llvm.fmuladd.f64(double 0x3CF3F02716E6F629, double %8845, double %8837)
  %8847 = load ptr, ptr %7, align 8, !tbaa !9
  %8848 = load i32, ptr %12, align 4, !tbaa !5
  %8849 = load i32, ptr %8, align 4, !tbaa !5
  %8850 = mul nsw i32 44, %8849
  %8851 = add nsw i32 %8848, %8850
  %8852 = sext i32 %8851 to i64
  %8853 = getelementptr inbounds double, ptr %8847, i64 %8852
  %8854 = load double, ptr %8853, align 8, !tbaa !11
  %8855 = call double @llvm.fmuladd.f64(double 0xBCD8A971F372F952, double %8854, double %8846)
  %8856 = load ptr, ptr %7, align 8, !tbaa !9
  %8857 = load i32, ptr %12, align 4, !tbaa !5
  %8858 = load i32, ptr %8, align 4, !tbaa !5
  %8859 = mul nsw i32 45, %8858
  %8860 = add nsw i32 %8857, %8859
  %8861 = sext i32 %8860 to i64
  %8862 = getelementptr inbounds double, ptr %8856, i64 %8861
  %8863 = load double, ptr %8862, align 8, !tbaa !11
  %8864 = call double @llvm.fmuladd.f64(double 0x3CEE0138B737B153, double %8863, double %8855)
  %8865 = load ptr, ptr %7, align 8, !tbaa !9
  %8866 = load i32, ptr %12, align 4, !tbaa !5
  %8867 = load i32, ptr %8, align 4, !tbaa !5
  %8868 = mul nsw i32 46, %8867
  %8869 = add nsw i32 %8866, %8868
  %8870 = sext i32 %8869 to i64
  %8871 = getelementptr inbounds double, ptr %8865, i64 %8870
  %8872 = load double, ptr %8871, align 8, !tbaa !11
  %8873 = call double @llvm.fmuladd.f64(double 0x3CF1BE2AED2C7606, double %8872, double %8864)
  %8874 = load ptr, ptr %7, align 8, !tbaa !9
  %8875 = load i32, ptr %12, align 4, !tbaa !5
  %8876 = load i32, ptr %8, align 4, !tbaa !5
  %8877 = mul nsw i32 47, %8876
  %8878 = add nsw i32 %8875, %8877
  %8879 = sext i32 %8878 to i64
  %8880 = getelementptr inbounds double, ptr %8874, i64 %8879
  %8881 = load double, ptr %8880, align 8, !tbaa !11
  %8882 = call double @llvm.fmuladd.f64(double 0xBFF08654A2D4F717, double %8881, double %8873)
  %8883 = load ptr, ptr %7, align 8, !tbaa !9
  %8884 = load i32, ptr %12, align 4, !tbaa !5
  %8885 = load i32, ptr %8, align 4, !tbaa !5
  %8886 = mul nsw i32 48, %8885
  %8887 = add nsw i32 %8884, %8886
  %8888 = sext i32 %8887 to i64
  %8889 = getelementptr inbounds double, ptr %8883, i64 %8888
  %8890 = load double, ptr %8889, align 8, !tbaa !11
  %8891 = call double @llvm.fmuladd.f64(double 0xBD0B951138D98D7D, double %8890, double %8882)
  %8892 = load ptr, ptr %7, align 8, !tbaa !9
  %8893 = load i32, ptr %12, align 4, !tbaa !5
  %8894 = load i32, ptr %8, align 4, !tbaa !5
  %8895 = mul nsw i32 49, %8894
  %8896 = add nsw i32 %8893, %8895
  %8897 = sext i32 %8896 to i64
  %8898 = getelementptr inbounds double, ptr %8892, i64 %8897
  %8899 = load double, ptr %8898, align 8, !tbaa !11
  %8900 = call double @llvm.fmuladd.f64(double 0xBD0A2E976ACF9682, double %8899, double %8891)
  %8901 = load ptr, ptr %7, align 8, !tbaa !9
  %8902 = load i32, ptr %12, align 4, !tbaa !5
  %8903 = load i32, ptr %8, align 4, !tbaa !5
  %8904 = mul nsw i32 50, %8903
  %8905 = add nsw i32 %8902, %8904
  %8906 = sext i32 %8905 to i64
  %8907 = getelementptr inbounds double, ptr %8901, i64 %8906
  %8908 = load double, ptr %8907, align 8, !tbaa !11
  %8909 = call double @llvm.fmuladd.f64(double 0x3CED3CAF7F982616, double %8908, double %8900)
  %8910 = load ptr, ptr %7, align 8, !tbaa !9
  %8911 = load i32, ptr %12, align 4, !tbaa !5
  %8912 = load i32, ptr %8, align 4, !tbaa !5
  %8913 = mul nsw i32 51, %8912
  %8914 = add nsw i32 %8911, %8913
  %8915 = sext i32 %8914 to i64
  %8916 = getelementptr inbounds double, ptr %8910, i64 %8915
  %8917 = load double, ptr %8916, align 8, !tbaa !11
  %8918 = call double @llvm.fmuladd.f64(double 0xBD02F71750AA300C, double %8917, double %8909)
  %8919 = load ptr, ptr %7, align 8, !tbaa !9
  %8920 = load i32, ptr %12, align 4, !tbaa !5
  %8921 = load i32, ptr %8, align 4, !tbaa !5
  %8922 = mul nsw i32 52, %8921
  %8923 = add nsw i32 %8920, %8922
  %8924 = sext i32 %8923 to i64
  %8925 = getelementptr inbounds double, ptr %8919, i64 %8924
  %8926 = load double, ptr %8925, align 8, !tbaa !11
  %8927 = call double @llvm.fmuladd.f64(double 0xBD04E8A557879DBD, double %8926, double %8918)
  %8928 = load ptr, ptr %7, align 8, !tbaa !9
  %8929 = load i32, ptr %12, align 4, !tbaa !5
  %8930 = load i32, ptr %8, align 4, !tbaa !5
  %8931 = mul nsw i32 53, %8930
  %8932 = add nsw i32 %8929, %8931
  %8933 = sext i32 %8932 to i64
  %8934 = getelementptr inbounds double, ptr %8928, i64 %8933
  %8935 = load double, ptr %8934, align 8, !tbaa !11
  %8936 = call double @llvm.fmuladd.f64(double 0xBFFEFBDEB14F4E48, double %8935, double %8927)
  store double %8936, ptr %11, align 8, !tbaa !11
  %8937 = load double, ptr %11, align 8, !tbaa !11
  %8938 = load ptr, ptr %9, align 8, !tbaa !9
  %8939 = load i32, ptr %12, align 4, !tbaa !5
  %8940 = load i32, ptr %10, align 4, !tbaa !5
  %8941 = mul nsw i32 17, %8940
  %8942 = add nsw i32 %8939, %8941
  %8943 = sext i32 %8942 to i64
  %8944 = getelementptr inbounds double, ptr %8938, i64 %8943
  %8945 = load double, ptr %8944, align 8, !tbaa !11
  %8946 = fadd double %8945, %8937
  store double %8946, ptr %8944, align 8, !tbaa !11
  br label %8947

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

8950:                                             ; 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_13759219372093695623_b1(i32 noundef %0, ptr noalias noundef readonly %1, i32 noundef %2, ptr noalias nocapture noundef %3, i32 noundef %4) local_unnamed_addr #1 {
  %6 = icmp sgt i32 %0, 0
  br i1 %6, label %.lr.ph, label %._crit_edge

.lr.ph:                                           ; preds = %5
  %7 = shl nsw i32 %2, 1
  %8 = mul nsw i32 %2, 3
  %9 = shl nsw i32 %2, 2
  %10 = mul nsw i32 %2, 5
  %11 = mul nsw i32 %2, 6
  %12 = mul nsw i32 %2, 7
  %13 = shl nsw i32 %2, 3
  %14 = mul nsw i32 %2, 9
  %15 = mul nsw i32 %2, 10
  %16 = mul nsw i32 %2, 11
  %17 = mul nsw i32 %2, 12
  %18 = mul nsw i32 %2, 13
  %19 = mul nsw i32 %2, 14
  %20 = mul nsw i32 %2, 15
  %21 = shl nsw i32 %2, 4
  %22 = mul nsw i32 %2, 17
  %23 = mul nsw i32 %2, 18
  %24 = mul nsw i32 %2, 19
  %25 = mul nsw i32 %2, 20
  %26 = mul nsw i32 %2, 21
  %27 = mul nsw i32 %2, 22
  %28 = mul nsw i32 %2, 23
  %29 = mul nsw i32 %2, 24
  %30 = mul nsw i32 %2, 25
  %31 = mul nsw i32 %2, 26
  %32 = mul nsw i32 %2, 27
  %33 = mul nsw i32 %2, 28
  %34 = mul nsw i32 %2, 29
  %35 = mul nsw i32 %2, 30
  %36 = mul nsw i32 %2, 31
  %37 = shl nsw i32 %2, 5
  %38 = mul nsw i32 %2, 33
  %39 = mul nsw i32 %2, 34
  %40 = mul nsw i32 %2, 35
  %41 = mul nsw i32 %2, 36
  %42 = mul nsw i32 %2, 37
  %43 = mul nsw i32 %2, 38
  %44 = mul nsw i32 %2, 39
  %45 = mul nsw i32 %2, 40
  %46 = mul nsw i32 %2, 41
  %47 = mul nsw i32 %2, 42
  %48 = mul nsw i32 %2, 43
  %49 = mul nsw i32 %2, 44
  %50 = mul nsw i32 %2, 45
  %51 = mul nsw i32 %2, 46
  %52 = mul nsw i32 %2, 47
  %53 = mul nsw i32 %2, 48
  %54 = mul nsw i32 %2, 49
  %55 = mul nsw i32 %2, 50
  %56 = mul nsw i32 %2, 51
  %57 = mul nsw i32 %2, 52
  %58 = mul nsw i32 %2, 53
  %59 = shl nsw i32 %4, 1
  %60 = mul nsw i32 %4, 3
  %61 = shl nsw i32 %4, 2
  %62 = mul nsw i32 %4, 5
  %63 = mul nsw i32 %4, 6
  %64 = mul nsw i32 %4, 7
  %65 = shl nsw i32 %4, 3
  %66 = mul nsw i32 %4, 9
  %67 = mul nsw i32 %4, 10
  %68 = mul nsw i32 %4, 11
  %69 = mul nsw i32 %4, 12
  %70 = mul nsw i32 %4, 13
  %71 = mul nsw i32 %4, 14
  %72 = mul nsw i32 %4, 15
  %73 = shl nsw i32 %4, 4
  %74 = mul nsw i32 %4, 17
  %75 = sext i32 %2 to i64
  %76 = sext i32 %7 to i64
  %77 = sext i32 %8 to i64
  %78 = sext i32 %9 to i64
  %79 = sext i32 %10 to i64
  %80 = sext i32 %11 to i64
  %81 = sext i32 %12 to i64
  %82 = sext i32 %13 to i64
  %83 = sext i32 %14 to i64
  %84 = sext i32 %15 to i64
  %85 = sext i32 %16 to i64
  %86 = sext i32 %17 to i64
  %87 = sext i32 %18 to i64
  %88 = sext i32 %19 to i64
  %89 = sext i32 %20 to i64
  %90 = sext i32 %21 to i64
  %91 = sext i32 %22 to i64
  %92 = sext i32 %23 to i64
  %93 = sext i32 %24 to i64
  %94 = sext i32 %25 to i64
  %95 = sext i32 %26 to i64
  %96 = sext i32 %27 to i64
  %97 = sext i32 %28 to i64
  %98 = sext i32 %29 to i64
  %99 = sext i32 %30 to i64
  %100 = sext i32 %31 to i64
  %101 = sext i32 %32 to i64
  %102 = sext i32 %33 to i64
  %103 = sext i32 %34 to i64
  %104 = sext i32 %35 to i64
  %105 = sext i32 %36 to i64
  %106 = sext i32 %37 to i64
  %107 = sext i32 %38 to i64
  %108 = sext i32 %39 to i64
  %109 = sext i32 %40 to i64
  %110 = sext i32 %41 to i64
  %111 = sext i32 %42 to i64
  %112 = sext i32 %43 to i64
  %113 = sext i32 %44 to i64
  %114 = sext i32 %45 to i64
  %115 = sext i32 %46 to i64
  %116 = sext i32 %47 to i64
  %117 = sext i32 %48 to i64
  %118 = sext i32 %49 to i64
  %119 = sext i32 %50 to i64
  %120 = sext i32 %51 to i64
  %121 = sext i32 %52 to i64
  %122 = sext i32 %53 to i64
  %123 = sext i32 %54 to i64
  %124 = sext i32 %55 to i64
  %125 = sext i32 %56 to i64
  %126 = sext i32 %57 to i64
  %127 = sext i32 %58 to i64
  %128 = sext i32 %4 to i64
  %129 = sext i32 %59 to i64
  %130 = sext i32 %60 to i64
  %131 = sext i32 %61 to i64
  %132 = sext i32 %62 to i64
  %133 = sext i32 %63 to i64
  %134 = sext i32 %64 to i64
  %135 = sext i32 %65 to i64
  %136 = sext i32 %66 to i64
  %137 = sext i32 %67 to i64
  %138 = sext i32 %68 to i64
  %139 = sext i32 %69 to i64
  %140 = sext i32 %70 to i64
  %141 = sext i32 %71 to i64
  %142 = sext i32 %72 to i64
  %143 = sext i32 %73 to i64
  %144 = sext i32 %74 to i64
  %wide.trip.count = zext nneg i32 %0 to i64
  %invariant.gep = getelementptr double, ptr %1, i64 %75
  %invariant.gep2992 = getelementptr double, ptr %1, i64 %76
  %invariant.gep2994 = getelementptr double, ptr %1, i64 %77
  %invariant.gep2996 = getelementptr double, ptr %1, i64 %78
  %invariant.gep2998 = getelementptr double, ptr %1, i64 %79
  %invariant.gep3000 = getelementptr double, ptr %1, i64 %80
  %invariant.gep3002 = getelementptr double, ptr %1, i64 %81
  %invariant.gep3004 = getelementptr double, ptr %1, i64 %82
  %invariant.gep3006 = getelementptr double, ptr %1, i64 %83
  %invariant.gep3008 = getelementptr double, ptr %1, i64 %84
  %invariant.gep3010 = getelementptr double, ptr %1, i64 %85
  %invariant.gep3012 = getelementptr double, ptr %1, i64 %86
  %invariant.gep3014 = getelementptr double, ptr %1, i64 %87
  %invariant.gep3016 = getelementptr double, ptr %1, i64 %88
  %invariant.gep3018 = getelementptr double, ptr %1, i64 %89
  %invariant.gep3020 = getelementptr double, ptr %1, i64 %90
  %invariant.gep3022 = getelementptr double, ptr %1, i64 %91
  %invariant.gep3024 = getelementptr double, ptr %1, i64 %92
  %invariant.gep3026 = getelementptr double, ptr %1, i64 %93
  %invariant.gep3028 = getelementptr double, ptr %1, i64 %94
  %invariant.gep3030 = getelementptr double, ptr %1, i64 %95
  %invariant.gep3032 = getelementptr double, ptr %1, i64 %96
  %invariant.gep3034 = getelementptr double, ptr %1, i64 %97
  %invariant.gep3036 = getelementptr double, ptr %1, i64 %98
  %invariant.gep3038 = getelementptr double, ptr %1, i64 %99
  %invariant.gep3040 = getelementptr double, ptr %1, i64 %100
  %invariant.gep3042 = getelementptr double, ptr %1, i64 %101
  %invariant.gep3044 = getelementptr double, ptr %1, i64 %102
  %invariant.gep3046 = getelementptr double, ptr %1, i64 %103
  %invariant.gep3048 = getelementptr double, ptr %1, i64 %104
  %invariant.gep3050 = getelementptr double, ptr %1, i64 %105
  %invariant.gep3052 = getelementptr double, ptr %1, i64 %106
  %invariant.gep3054 = getelementptr double, ptr %1, i64 %107
  %invariant.gep3056 = getelementptr double, ptr %1, i64 %108
  %invariant.gep3058 = getelementptr double, ptr %1, i64 %109
  %invariant.gep3060 = getelementptr double, ptr %1, i64 %110
  %invariant.gep3062 = getelementptr double, ptr %1, i64 %111
  %invariant.gep3064 = getelementptr double, ptr %1, i64 %112
  %invariant.gep3066 = getelementptr double, ptr %1, i64 %113
  %invariant.gep3068 = getelementptr double, ptr %1, i64 %114
  %invariant.gep3070 = getelementptr double, ptr %1, i64 %115
  %invariant.gep3072 = getelementptr double, ptr %1, i64 %116
  %invariant.gep3074 = getelementptr double, ptr %1, i64 %117
  %invariant.gep3076 = getelementptr double, ptr %1, i64 %118
  %invariant.gep3078 = getelementptr double, ptr %1, i64 %119
  %invariant.gep3080 = getelementptr double, ptr %1, i64 %120
  %invariant.gep3082 = getelementptr double, ptr %1, i64 %121
  %invariant.gep3084 = getelementptr double, ptr %1, i64 %122
  %invariant.gep3086 = getelementptr double, ptr %1, i64 %123
  %invariant.gep3088 = getelementptr double, ptr %1, i64 %124
  %invariant.gep3090 = getelementptr double, ptr %1, i64 %125
  %invariant.gep3092 = getelementptr double, ptr %1, i64 %126
  %invariant.gep3094 = getelementptr double, ptr %1, i64 %127
  %invariant.gep3096 = getelementptr double, ptr %3, i64 %128
  %invariant.gep3098 = getelementptr double, ptr %3, i64 %129
  %invariant.gep3100 = getelementptr double, ptr %3, i64 %130
  %invariant.gep3102 = getelementptr double, ptr %3, i64 %131
  %invariant.gep3104 = getelementptr double, ptr %3, i64 %132
  %invariant.gep3106 = getelementptr double, ptr %3, i64 %133
  %invariant.gep3108 = getelementptr double, ptr %3, i64 %134
  %invariant.gep3110 = getelementptr double, ptr %3, i64 %135
  %invariant.gep3112 = getelementptr double, ptr %3, i64 %136
  %invariant.gep3114 = getelementptr double, ptr %3, i64 %137
  %invariant.gep3116 = getelementptr double, ptr %3, i64 %138
  %invariant.gep3118 = getelementptr double, ptr %3, i64 %139
  %invariant.gep3120 = getelementptr double, ptr %3, i64 %140
  %invariant.gep3122 = getelementptr double, ptr %3, i64 %141
  %invariant.gep3124 = getelementptr double, ptr %3, i64 %142
  %invariant.gep3126 = getelementptr double, ptr %3, i64 %143
  %invariant.gep3128 = getelementptr double, ptr %3, i64 %144
  br label %145

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

145:                                              ; preds = %.lr.ph, %145
  %indvars.iv = phi i64 [ 0, %.lr.ph ], [ %indvars.iv.next, %145 ]
  %146 = getelementptr inbounds double, ptr %1, i64 %indvars.iv
  %147 = load double, ptr %146, align 8, !tbaa !5
  %gep = getelementptr double, ptr %invariant.gep, i64 %indvars.iv
  %148 = load double, ptr %gep, align 8, !tbaa !5
  %149 = fmul double %148, 0xBF7DFA2300BBB380
  %150 = tail call double @llvm.fmuladd.f64(double %147, double 0x3FF44E3F94172F46, double %149)
  %gep2993 = getelementptr double, ptr %invariant.gep2992, i64 %indvars.iv
  %151 = load double, ptr %gep2993, align 8, !tbaa !5
  %152 = tail call double @llvm.fmuladd.f64(double %151, double 0x3FB9ECDD98127880, double %150)
  %gep2995 = getelementptr double, ptr %invariant.gep2994, i64 %indvars.iv
  %153 = load double, ptr %gep2995, align 8, !tbaa !5
  %154 = tail call double @llvm.fmuladd.f64(double %153, double 0xBF83952FC55A7054, double %152)
  %gep2997 = getelementptr double, ptr %invariant.gep2996, i64 %indvars.iv
  %155 = load double, ptr %gep2997, align 8, !tbaa !5
  %156 = tail call double @llvm.fmuladd.f64(double %155, double 0xBFE4FBED5D8A9668, double %154)
  %gep2999 = getelementptr double, ptr %invariant.gep2998, i64 %indvars.iv
  %157 = load double, ptr %gep2999, align 8, !tbaa !5
  %158 = tail call double @llvm.fmuladd.f64(double %157, double 0x3FD50884576D0BB0, double %156)
  %gep3001 = getelementptr double, ptr %invariant.gep3000, i64 %indvars.iv
  %159 = load double, ptr %gep3001, align 8, !tbaa !5
  %160 = tail call double @llvm.fmuladd.f64(double %159, double 0xBC928E0E59CA2667, double %158)
  %gep3003 = getelementptr double, ptr %invariant.gep3002, i64 %indvars.iv
  %161 = load double, ptr %gep3003, align 8, !tbaa !5
  %162 = tail call double @llvm.fmuladd.f64(double %161, double 0xBC94747CFD612BCE, double %160)
  %gep3005 = getelementptr double, ptr %invariant.gep3004, i64 %indvars.iv
  %163 = load double, ptr %gep3005, align 8, !tbaa !5
  %164 = tail call double @llvm.fmuladd.f64(double %163, double 0x3CA061EEC0843748, double %162)
  %gep3007 = getelementptr double, ptr %invariant.gep3006, i64 %indvars.iv
  %165 = load double, ptr %gep3007, align 8, !tbaa !5
  %166 = tail call double @llvm.fmuladd.f64(double %165, double 0x3C88AE5D9980C8A2, double %164)
  %gep3009 = getelementptr double, ptr %invariant.gep3008, i64 %indvars.iv
  %167 = load double, ptr %gep3009, align 8, !tbaa !5
  %168 = tail call double @llvm.fmuladd.f64(double %167, double 0xBCBBF3FEED1E8544, double %166)
  %gep3011 = getelementptr double, ptr %invariant.gep3010, i64 %indvars.iv
  %169 = load double, ptr %gep3011, align 8, !tbaa !5
  %170 = tail call double @llvm.fmuladd.f64(double %169, double 0x3CB80DDFB4F4FB59, double %168)
  %gep3013 = getelementptr double, ptr %invariant.gep3012, i64 %indvars.iv
  %171 = load double, ptr %gep3013, align 8, !tbaa !5
  %172 = tail call double @llvm.fmuladd.f64(double %171, double 0xBC974C72B9C7B6B3, double %170)
  %gep3015 = getelementptr double, ptr %invariant.gep3014, i64 %indvars.iv
  %173 = load double, ptr %gep3015, align 8, !tbaa !5
  %174 = tail call double @llvm.fmuladd.f64(double %173, double 0x3C9A3DCEE704C7E6, double %172)
  %gep3017 = getelementptr double, ptr %invariant.gep3016, i64 %indvars.iv
  %175 = load double, ptr %gep3017, align 8, !tbaa !5
  %176 = tail call double @llvm.fmuladd.f64(double %175, double 0x3C801C657D225E7F, double %174)
  %gep3019 = getelementptr double, ptr %invariant.gep3018, i64 %indvars.iv
  %177 = load double, ptr %gep3019, align 8, !tbaa !5
  %178 = tail call double @llvm.fmuladd.f64(double %177, double 0x3CA10B458BF1192C, double %176)
  %gep3021 = getelementptr double, ptr %invariant.gep3020, i64 %indvars.iv
  %179 = load double, ptr %gep3021, align 8, !tbaa !5
  %180 = tail call double @llvm.fmuladd.f64(double %179, double 0x3CAFD6935AE0DBC3, double %178)
  %gep3023 = getelementptr double, ptr %invariant.gep3022, i64 %indvars.iv
  %181 = load double, ptr %gep3023, align 8, !tbaa !5
  %182 = tail call double @llvm.fmuladd.f64(double %181, double 0x3CB9FC9AB14C2802, double %180)
  %gep3025 = getelementptr double, ptr %invariant.gep3024, i64 %indvars.iv
  %183 = load double, ptr %gep3025, align 8, !tbaa !5
  %184 = tail call double @llvm.fmuladd.f64(double %183, double 0xBFE8AC73392375CC, double %182)
  %gep3027 = getelementptr double, ptr %invariant.gep3026, i64 %indvars.iv
  %185 = load double, ptr %gep3027, align 8, !tbaa !5
  %186 = tail call double @llvm.fmuladd.f64(double %185, double 0x3FE4EDE8EE256114, double %184)
  %gep3029 = getelementptr double, ptr %invariant.gep3028, i64 %indvars.iv
  %187 = load double, ptr %gep3029, align 8, !tbaa !5
  %188 = tail call double @llvm.fmuladd.f64(double %187, double 0x3FEA5488770B26BE, double %186)
  %gep3031 = getelementptr double, ptr %invariant.gep3030, i64 %indvars.iv
  %189 = load double, ptr %gep3031, align 8, !tbaa !5
  %190 = tail call double @llvm.fmuladd.f64(double %189, double 0x3FF44CD742FC94E8, double %188)
  %gep3033 = getelementptr double, ptr %invariant.gep3032, i64 %indvars.iv
  %191 = load double, ptr %gep3033, align 8, !tbaa !5
  %192 = tail call double @llvm.fmuladd.f64(double %191, double 0xBFFEF1F8514C97DD, double %190)
  %gep3035 = getelementptr double, ptr %invariant.gep3034, i64 %indvars.iv
  %193 = load double, ptr %gep3035, align 8, !tbaa !5
  %194 = tail call double @llvm.fmuladd.f64(double %193, double 0xBFF01B2FE70C1193, double %192)
  %gep3037 = getelementptr double, ptr %invariant.gep3036, i64 %indvars.iv
  %195 = load double, ptr %gep3037, align 8, !tbaa !5
  %196 = tail call double @llvm.fmuladd.f64(double %195, double 0x3CA4DBB49723188B, double %194)
  %gep3039 = getelementptr double, ptr %invariant.gep3038, i64 %indvars.iv
  %197 = load double, ptr %gep3039, align 8, !tbaa !5
  %198 = tail call double @llvm.fmuladd.f64(double %197, double 0xBCA07423258E8785, double %196)
  %gep3041 = getelementptr double, ptr %invariant.gep3040, i64 %indvars.iv
  %199 = load double, ptr %gep3041, align 8, !tbaa !5
  %200 = tail call double @llvm.fmuladd.f64(double %199, double 0xBC8CF1A7605B6ED6, double %198)
  %gep3043 = getelementptr double, ptr %invariant.gep3042, i64 %indvars.iv
  %201 = load double, ptr %gep3043, align 8, !tbaa !5
  %202 = tail call double @llvm.fmuladd.f64(double %201, double 0xBC87A5CD2646DADD, double %200)
  %gep3045 = getelementptr double, ptr %invariant.gep3044, i64 %indvars.iv
  %203 = load double, ptr %gep3045, align 8, !tbaa !5
  %204 = tail call double @llvm.fmuladd.f64(double %203, double 0x3C756728FD5B044F, double %202)
  %gep3047 = getelementptr double, ptr %invariant.gep3046, i64 %indvars.iv
  %205 = load double, ptr %gep3047, align 8, !tbaa !5
  %206 = tail call double @llvm.fmuladd.f64(double %205, double 0xBC8B1A3C6A1C6E73, double %204)
  %gep3049 = getelementptr double, ptr %invariant.gep3048, i64 %indvars.iv
  %207 = load double, ptr %gep3049, align 8, !tbaa !5
  %208 = tail call double @llvm.fmuladd.f64(double %207, double 0xBCB366C66C9C20EC, double %206)
  %gep3051 = getelementptr double, ptr %invariant.gep3050, i64 %indvars.iv
  %209 = load double, ptr %gep3051, align 8, !tbaa !5
  %210 = tail call double @llvm.fmuladd.f64(double %209, double 0xBC7758351226A631, double %208)
  %gep3053 = getelementptr double, ptr %invariant.gep3052, i64 %indvars.iv
  %211 = load double, ptr %gep3053, align 8, !tbaa !5
  %212 = tail call double @llvm.fmuladd.f64(double %211, double 0xBCB6C6F6878DD3A7, double %210)
  %gep3055 = getelementptr double, ptr %invariant.gep3054, i64 %indvars.iv
  %213 = load double, ptr %gep3055, align 8, !tbaa !5
  %214 = tail call double @llvm.fmuladd.f64(double %213, double 0x3CA4C6639E24044F, double %212)
  %gep3057 = getelementptr double, ptr %invariant.gep3056, i64 %indvars.iv
  %215 = load double, ptr %gep3057, align 8, !tbaa !5
  %216 = tail call double @llvm.fmuladd.f64(double %215, double 0x3CB88B2192416394, double %214)
  %gep3059 = getelementptr double, ptr %invariant.gep3058, i64 %indvars.iv
  %217 = load double, ptr %gep3059, align 8, !tbaa !5
  %218 = tail call double @llvm.fmuladd.f64(double %217, double 0xBC4417177B9D447F, double %216)
  %gep3061 = getelementptr double, ptr %invariant.gep3060, i64 %indvars.iv
  %219 = load double, ptr %gep3061, align 8, !tbaa !5
  %220 = tail call double @llvm.fmuladd.f64(double %219, double 0x3FFEFBDEB14F4DAA, double %218)
  %gep3063 = getelementptr double, ptr %invariant.gep3062, i64 %indvars.iv
  %221 = load double, ptr %gep3063, align 8, !tbaa !5
  %222 = tail call double @llvm.fmuladd.f64(double %221, double 0xBD09D98BFF4CB0E5, double %220)
  %gep3065 = getelementptr double, ptr %invariant.gep3064, i64 %indvars.iv
  %223 = load double, ptr %gep3065, align 8, !tbaa !5
  %224 = tail call double @llvm.fmuladd.f64(double %223, double 0xBD08F6EC581E880F, double %222)
  %gep3067 = getelementptr double, ptr %invariant.gep3066, i64 %indvars.iv
  %225 = load double, ptr %gep3067, align 8, !tbaa !5
  %226 = tail call double @llvm.fmuladd.f64(double %225, double 0xBCFDF4EDB2DE7F56, double %224)
  %gep3069 = getelementptr double, ptr %invariant.gep3068, i64 %indvars.iv
  %227 = load double, ptr %gep3069, align 8, !tbaa !5
  %228 = tail call double @llvm.fmuladd.f64(double %227, double 0x3D19E21ADBE67F1B, double %226)
  %gep3071 = getelementptr double, ptr %invariant.gep3070, i64 %indvars.iv
  %229 = load double, ptr %gep3071, align 8, !tbaa !5
  %230 = tail call double @llvm.fmuladd.f64(double %229, double 0x3D193EE154A2063B, double %228)
  %gep3073 = getelementptr double, ptr %invariant.gep3072, i64 %indvars.iv
  %231 = load double, ptr %gep3073, align 8, !tbaa !5
  %232 = tail call double @llvm.fmuladd.f64(double %231, double 0x3FF08654A2D4F756, double %230)
  %gep3075 = getelementptr double, ptr %invariant.gep3074, i64 %indvars.iv
  %233 = load double, ptr %gep3075, align 8, !tbaa !5
  %234 = tail call double @llvm.fmuladd.f64(double %233, double 0x3CF4E04E2DCDEC57, double %232)
  %gep3077 = getelementptr double, ptr %invariant.gep3076, i64 %indvars.iv
  %235 = load double, ptr %gep3077, align 8, !tbaa !5
  %236 = tail call double @llvm.fmuladd.f64(double %235, double 0x3CF3AAAAAAAAAAAB, double %234)
  %gep3079 = getelementptr double, ptr %invariant.gep3078, i64 %indvars.iv
  %237 = load double, ptr %gep3079, align 8, !tbaa !5
  %238 = tail call double @llvm.fmuladd.f64(double %237, double 0x3CE72AAAAAAAAAA8, double %236)
  %gep3081 = getelementptr double, ptr %invariant.gep3080, i64 %indvars.iv
  %239 = load double, ptr %gep3081, align 8, !tbaa !5
  %240 = tail call double @llvm.fmuladd.f64(double %239, double 0xBD043F63A4642756, double %238)
  %gep3083 = getelementptr double, ptr %invariant.gep3082, i64 %indvars.iv
  %241 = load double, ptr %gep3083, align 8, !tbaa !5
  %242 = tail call double @llvm.fmuladd.f64(double %241, double 0xBD0394B8F9B97CA9, double %240)
  %gep3085 = getelementptr double, ptr %invariant.gep3084, i64 %indvars.iv
  %243 = load double, ptr %gep3085, align 8, !tbaa !5
  %244 = tail call double @llvm.fmuladd.f64(double %243, double 0xBFE4A7E9CB8A3493, double %242)
  %gep3087 = getelementptr double, ptr %invariant.gep3086, i64 %indvars.iv
  %245 = load double, ptr %gep3087, align 8, !tbaa !5
  %246 = tail call double @llvm.fmuladd.f64(double %245, double 0xBC8BC95608A46E63, double %244)
  %gep3089 = getelementptr double, ptr %invariant.gep3088, i64 %indvars.iv
  %247 = load double, ptr %gep3089, align 8, !tbaa !5
  %248 = tail call double @llvm.fmuladd.f64(double %247, double 0x3CA865C0B24CAFB5, double %246)
  %gep3091 = getelementptr double, ptr %invariant.gep3090, i64 %indvars.iv
  %249 = load double, ptr %gep3091, align 8, !tbaa !5
  %250 = tail call double @llvm.fmuladd.f64(double %249, double 0x3CB09F4DA65E855E, double %248)
  %gep3093 = getelementptr double, ptr %invariant.gep3092, i64 %indvars.iv
  %251 = load double, ptr %gep3093, align 8, !tbaa !5
  %252 = tail call double @llvm.fmuladd.f64(double %251, double 0xBCA3E8F53E9DEC6B, double %250)
  %gep3095 = getelementptr double, ptr %invariant.gep3094, i64 %indvars.iv
  %253 = load double, ptr %gep3095, align 8, !tbaa !5
  %254 = tail call double @llvm.fmuladd.f64(double %253, double 0xBCB32135F151F960, double %252)
  %255 = getelementptr inbounds double, ptr %3, i64 %indvars.iv
  %256 = load double, ptr %255, align 8, !tbaa !5
  %257 = fadd double %256, %254
  store double %257, ptr %255, align 8, !tbaa !5
  %258 = fmul double %148, 0xBFE8AC73392375C8
  %259 = tail call double @llvm.fmuladd.f64(double %147, double 0x3FE4EDE8EE25610B, double %258)
  %260 = tail call double @llvm.fmuladd.f64(double %151, double 0x3FEA5488770B26AC, double %259)
  %261 = tail call double @llvm.fmuladd.f64(double %153, double 0xBFFEF1F8514C97D0, double %260)
  %262 = tail call double @llvm.fmuladd.f64(double %155, double 0x3FF44CD742FC94DA, double %261)
  %263 = tail call double @llvm.fmuladd.f64(double %157, double 0xBFF01B2FE70C118E, double %262)
  %264 = tail call double @llvm.fmuladd.f64(double %159, double 0xBC5AD58CA8FD5A00, double %263)
  %265 = tail call double @llvm.fmuladd.f64(double %161, double 0x3CBEB0BE4F96FAE3, double %264)
  %266 = tail call double @llvm.fmuladd.f64(double %163, double 0x3C84693BAEDA743C, double %265)
  %267 = tail call double @llvm.fmuladd.f64(double %165, double 0xBCB3ACD3D4ADCCB0, double %266)
  %268 = tail call double @llvm.fmuladd.f64(double %167, double 0x3CBD77D82F675FE0, double %267)
  %269 = tail call double @llvm.fmuladd.f64(double %169, double 0xBC765C5FD7E7C60F, double %268)
  %270 = tail call double @llvm.fmuladd.f64(double %171, double 0x3C9FA9BEC7B2612F, double %269)
  %271 = tail call double @llvm.fmuladd.f64(double %173, double 0xBCBC8E2E7B422DD7, double %270)
  %272 = tail call double @llvm.fmuladd.f64(double %175, double 0xBCC878EC8B1B786A, double %271)
  %273 = tail call double @llvm.fmuladd.f64(double %177, double 0x3CC0FC9E0739BB76, double %272)
  %274 = tail call double @llvm.fmuladd.f64(double %179, double 0x3CA31E7AC172ACDB, double %273)
  %275 = tail call double @llvm.fmuladd.f64(double %181, double 0x3C51BA2977E19A60, double %274)
  %276 = tail call double @llvm.fmuladd.f64(double %183, double 0xBF7DFA2300BBB280, double %275)
  %277 = tail call double @llvm.fmuladd.f64(double %185, double 0x3FF44E3F94172F4B, double %276)
  %278 = tail call double @llvm.fmuladd.f64(double %187, double 0x3FB9ECDD981278F3, double %277)
  %279 = tail call double @llvm.fmuladd.f64(double %189, double 0xBFE4FBED5D8A9650, double %278)
  %280 = tail call double @llvm.fmuladd.f64(double %191, double 0xBF83952FC55A730C, double %279)
  %281 = tail call double @llvm.fmuladd.f64(double %193, double 0x3FD50884576D0BB8, double %280)
  %282 = tail call double @llvm.fmuladd.f64(double %195, double 0xBC62256990361260, double %281)
  %283 = tail call double @llvm.fmuladd.f64(double %197, double 0x3CC20413F90F2948, double %282)
  %284 = tail call double @llvm.fmuladd.f64(double %199, double 0x3CA8FA36F9E410BC, double %283)
  %285 = tail call double @llvm.fmuladd.f64(double %201, double 0x3C9F209CBEE6547E, double %284)
  %286 = tail call double @llvm.fmuladd.f64(double %203, double 0x3CA97C0FDD5CC331, double %285)
  %287 = tail call double @llvm.fmuladd.f64(double %205, double 0x3C839062B03D9625, double %286)
  %288 = tail call double @llvm.fmuladd.f64(double %207, double 0x3C8F162AB3E24558, double %287)
  %289 = tail call double @llvm.fmuladd.f64(double %209, double 0x3CC24822224DBC7A, double %288)
  %290 = tail call double @llvm.fmuladd.f64(double %211, double 0xBCB88407823ABCF7, double %289)
  %291 = tail call double @llvm.fmuladd.f64(double %213, double 0x3CB067CE2C74889D, double %290)
  %292 = tail call double @llvm.fmuladd.f64(double %215, double 0x3CA71D150152D3DA, double %291)
  %293 = tail call double @llvm.fmuladd.f64(double %217, double 0xBCC8C466774B0520, double %292)
  %294 = tail call double @llvm.fmuladd.f64(double %219, double 0xBD07B67C0A74B6D2, double %293)
  %295 = tail call double @llvm.fmuladd.f64(double %221, double 0x3FFEFBDEB14F4D9C, double %294)
  %296 = tail call double @llvm.fmuladd.f64(double %223, double 0xBD08B86D08565032, double %295)
  %297 = tail call double @llvm.fmuladd.f64(double %225, double 0x3D1BE5E867FB3CCC, double %296)
  %298 = tail call double @llvm.fmuladd.f64(double %227, double 0xBCFD7E2C7687A148, double %297)
  %299 = tail call double @llvm.fmuladd.f64(double %229, double 0x3D19AB84FA7213D2, double %298)
  %300 = tail call double @llvm.fmuladd.f64(double %231, double 0x3CF414B8F9B97CAA, double %299)
  %301 = tail call double @llvm.fmuladd.f64(double %233, double 0x3FF08654A2D4F75B, double %300)
  %302 = tail call double @llvm.fmuladd.f64(double %235, double 0x3CF39AF8D87896FD, double %301)
  %303 = tail call double @llvm.fmuladd.f64(double %237, double 0xBD05A83AA25A713E, double %302)
  %304 = tail call double @llvm.fmuladd.f64(double %239, double 0x3CE7EC7FBD7E34A3, double %303)
  %305 = tail call double @llvm.fmuladd.f64(double %241, double 0xBD055F1576963AFE, double %304)
  %306 = tail call double @llvm.fmuladd.f64(double %243, double 0x3C970362DFEA2854, double %305)
  %307 = tail call double @llvm.fmuladd.f64(double %245, double 0xBFE4A7E9CB8A349A, double %306)
  %308 = tail call double @llvm.fmuladd.f64(double %247, double 0xBC7565CE1279E84F, double %307)
  %309 = tail call double @llvm.fmuladd.f64(double %249, double 0xBCB0188D814CF0C8, double %308)
  %310 = tail call double @llvm.fmuladd.f64(double %251, double 0x3CAC57CB2B44F947, double %309)
  %311 = tail call double @llvm.fmuladd.f64(double %253, double 0x3C98231206424F20, double %310)
  %gep3097 = getelementptr double, ptr %invariant.gep3096, i64 %indvars.iv
  %312 = load double, ptr %gep3097, align 8, !tbaa !5
  %313 = fadd double %311, %312
  store double %313, ptr %gep3097, align 8, !tbaa !5
  %314 = fmul double %148, 0xBFDFFE63E2851783
  %315 = tail call double @llvm.fmuladd.f64(double %147, double 0xBFE1EC4181248AE2, double %314)
  %316 = tail call double @llvm.fmuladd.f64(double %151, double 0x4000E9CE75C2FBF8, double %315)
  %317 = tail call double @llvm.fmuladd.f64(double %153, double 0x3FF31D88B253B07F, double %316)
  %318 = tail call double @llvm.fmuladd.f64(double %155, double 0x3FF2343957F3A8A6, double %317)
  %319 = tail call double @llvm.fmuladd.f64(double %157, double 0xBFEE712F1EF7D892, double %318)
  %320 = tail call double @llvm.fmuladd.f64(double %159, double 0x3C7BE455D72E2687, double %319)
  %321 = tail call double @llvm.fmuladd.f64(double %161, double 0xBCA88EEBBA111342, double %320)
  %322 = tail call double @llvm.fmuladd.f64(double %163, double 0xBCAAA314368C77EA, double %321)
  %323 = tail call double @llvm.fmuladd.f64(double %165, double 0xBC89A9C06842F0D3, double %322)
  %324 = tail call double @llvm.fmuladd.f64(double %167, double 0x3CC01B0CEED92744, double %323)
  %325 = tail call double @llvm.fmuladd.f64(double %169, double 0xBCB179EA74C658F9, double %324)
  %326 = tail call double @llvm.fmuladd.f64(double %171, double 0xBCA45DF77990844E, double %325)
  %327 = tail call double @llvm.fmuladd.f64(double %173, double 0x3CAB464CCF9E9E2D, double %326)
  %328 = tail call double @llvm.fmuladd.f64(double %175, double 0x3CCC9AD4A6D08D95, double %327)
  %329 = tail call double @llvm.fmuladd.f64(double %177, double 0x3CB10C6838C95A72, double %328)
  %330 = tail call double @llvm.fmuladd.f64(double %179, double 0x3CD07012D87C038A, double %329)
  %331 = tail call double @llvm.fmuladd.f64(double %181, double 0x3CCBC273E408F766, double %330)
  %332 = tail call double @llvm.fmuladd.f64(double %183, double 0xBFDFFE63E285175F, double %331)
  %333 = tail call double @llvm.fmuladd.f64(double %185, double 0xBFE1EC4181248AE2, double %332)
  %334 = tail call double @llvm.fmuladd.f64(double %187, double 0x4000E9CE75C2FBF8, double %333)
  %335 = tail call double @llvm.fmuladd.f64(double %189, double 0x3FF2343957F3A8AF, double %334)
  %336 = tail call double @llvm.fmuladd.f64(double %191, double 0x3FF31D88B253B07B, double %335)
  %337 = tail call double @llvm.fmuladd.f64(double %193, double 0xBFEE712F1EF7D89C, double %336)
  %338 = tail call double @llvm.fmuladd.f64(double %195, double 0x3C850293B3FCA0E3, double %337)
  %339 = tail call double @llvm.fmuladd.f64(double %197, double 0xBC70D2CDDD720E22, double %338)
  %340 = tail call double @llvm.fmuladd.f64(double %199, double 0xBCA9795185F3DCEB, double %339)
  %341 = tail call double @llvm.fmuladd.f64(double %201, double 0x3C9FEBD8FA5C50DD, double %340)
  %342 = tail call double @llvm.fmuladd.f64(double %203, double 0x3CCE35BEEAC7EA45, double %341)
  %343 = tail call double @llvm.fmuladd.f64(double %205, double 0xBCBC38460D0EF925, double %342)
  %344 = tail call double @llvm.fmuladd.f64(double %207, double 0xBCB4A05EBC88835E, double %343)
  %345 = tail call double @llvm.fmuladd.f64(double %209, double 0xBCB8D3AFF5676101, double %344)
  %346 = tail call double @llvm.fmuladd.f64(double %211, double 0x3CBDC6E1E1019EC2, double %345)
  %347 = tail call double @llvm.fmuladd.f64(double %213, double 0xBC82BE6C478E3228, double %346)
  %348 = tail call double @llvm.fmuladd.f64(double %215, double 0x3C86CA03EF7109C0, double %347)
  %349 = tail call double @llvm.fmuladd.f64(double %217, double 0x3CD3FC268C3751F5, double %348)
  %350 = tail call double @llvm.fmuladd.f64(double %219, double 0xBD08E7AFCAA156E7, double %349)
  %351 = tail call double @llvm.fmuladd.f64(double %221, double 0xBD080EA3215BACFB, double %350)
  %352 = tail call double @llvm.fmuladd.f64(double %223, double 0x3FFEFBDEB14F4D9C, double %351)
  %353 = tail call double @llvm.fmuladd.f64(double %225, double 0x3D1B6A9B554348D9, double %352)
  %354 = tail call double @llvm.fmuladd.f64(double %227, double 0x3D1A602CE43D9E05, double %353)
  %355 = tail call double @llvm.fmuladd.f64(double %229, double 0xBCFB4D0EBD5404E2, double %354)
  %356 = tail call double @llvm.fmuladd.f64(double %231, double 0x3CF4EA8393C3B47E, double %355)
  %357 = tail call double @llvm.fmuladd.f64(double %233, double 0x3CF2549348F1AFBD, double %356)
  %358 = tail call double @llvm.fmuladd.f64(double %235, double 0x3FF08654A2D4F75B, double %357)
  %359 = tail call double @llvm.fmuladd.f64(double %237, double 0xBD0538138B737B14, double %358)
  %360 = tail call double @llvm.fmuladd.f64(double %239, double 0xBD05852E3E6E5F29, double %359)
  %361 = tail call double @llvm.fmuladd.f64(double %241, double 0x3CE317C6C3C4B7FB, double %360)
  %362 = tail call double @llvm.fmuladd.f64(double %243, double 0xBCA7907993F5C565, double %361)
  %363 = tail call double @llvm.fmuladd.f64(double %245, double 0xBCB4627DA761F89E, double %362)
  %364 = tail call double @llvm.fmuladd.f64(double %247, double 0xBFE4A7E9CB8A349B, double %363)
  %365 = tail call double @llvm.fmuladd.f64(double %249, double 0xBC9EAEE0B6C3EF3F, double %364)
  %366 = tail call double @llvm.fmuladd.f64(double %251, double 0x3CCD152CD522E8B4, double %365)
  %367 = tail call double @llvm.fmuladd.f64(double %253, double 0x3CC9AF22A9592C7A, double %366)
  %gep3099 = getelementptr double, ptr %invariant.gep3098, i64 %indvars.iv
  %368 = load double, ptr %gep3099, align 8, !tbaa !5
  %369 = fadd double %367, %368
  store double %369, ptr %gep3099, align 8, !tbaa !5
  %370 = fmul double %148, 0x3FF21EFA862DF3DA
  %371 = tail call double @llvm.fmuladd.f64(double %147, double 0xBF734721512AF304, double %370)
  %372 = tail call double @llvm.fmuladd.f64(double %151, double 0xBFF7F19EB1BA88FC, double %371)
  %373 = tail call double @llvm.fmuladd.f64(double %153, double 0x3FC901A35D55DB4C, double %372)
  %374 = tail call double @llvm.fmuladd.f64(double %155, double 0xBFF48831FA6C7037, double %373)
  %375 = tail call double @llvm.fmuladd.f64(double %157, double 0x3FF0AF85DD8BD41B, double %374)
  %376 = tail call double @llvm.fmuladd.f64(double %159, double 0xBC96DF8829202392, double %375)
  %377 = tail call double @llvm.fmuladd.f64(double %161, double 0x3C92F08ACDCBF794, double %376)
  %378 = tail call double @llvm.fmuladd.f64(double %163, double 0x3CA6B48868965AE6, double %377)
  %379 = tail call double @llvm.fmuladd.f64(double %165, double 0x3CAB6CB918309F4B, double %378)
  %380 = tail call double @llvm.fmuladd.f64(double %167, double 0xBCB24490C3AF2293, double %379)
  %381 = tail call double @llvm.fmuladd.f64(double %169, double 0x3C823EC0CF8B6DEB, double %380)
  %382 = tail call double @llvm.fmuladd.f64(double %171, double 0x3CA72B617C3AF637, double %381)
  %383 = tail call double @llvm.fmuladd.f64(double %173, double 0x3C9A9EB31390F5C1, double %382)
  %384 = tail call double @llvm.fmuladd.f64(double %175, double 0x3C9AA22A1570E612, double %383)
  %385 = tail call double @llvm.fmuladd.f64(double %177, double 0xBCAB65BA103D3215, double %384)
  %386 = tail call double @llvm.fmuladd.f64(double %179, double 0xBCC22813B0173A2F, double %385)
  %387 = tail call double @llvm.fmuladd.f64(double %181, double 0xBCB32BFD271CB8D7, double %386)
  %388 = tail call double @llvm.fmuladd.f64(double %183, double 0xBFB17C71DD2D5170, double %387)
  %389 = tail call double @llvm.fmuladd.f64(double %185, double 0x3FF3237A82AF9ED0, double %388)
  %390 = tail call double @llvm.fmuladd.f64(double %187, double 0xBF76E8A1969E6C80, double %389)
  %391 = tail call double @llvm.fmuladd.f64(double %189, double 0x3FFBC4AD9C53A55A, double %390)
  %392 = tail call double @llvm.fmuladd.f64(double %191, double 0x3FC179BD32D3DC61, double %391)
  %393 = tail call double @llvm.fmuladd.f64(double %193, double 0x3FF1CA3B98F4942B, double %392)
  %394 = tail call double @llvm.fmuladd.f64(double %195, double 0xBC9E515AA144063C, double %393)
  %395 = tail call double @llvm.fmuladd.f64(double %197, double 0x3C8A4389306A2E0D, double %394)
  %396 = tail call double @llvm.fmuladd.f64(double %199, double 0xBC9F8C0C369EC038, double %395)
  %397 = tail call double @llvm.fmuladd.f64(double %201, double 0x3CA068AD707D034A, double %396)
  %398 = tail call double @llvm.fmuladd.f64(double %203, double 0xBC9CD786A1AD8F1F, double %397)
  %399 = tail call double @llvm.fmuladd.f64(double %205, double 0xBC7C542BFA7534C1, double %398)
  %400 = tail call double @llvm.fmuladd.f64(double %207, double 0xBCA291E4DC85F746, double %399)
  %401 = tail call double @llvm.fmuladd.f64(double %209, double 0xBC318568500D29B4, double %400)
  %402 = tail call double @llvm.fmuladd.f64(double %211, double 0x3CB8B7EF57E025B8, double %401)
  %403 = tail call double @llvm.fmuladd.f64(double %213, double 0x3CC368C8E05648F6, double %402)
  %404 = tail call double @llvm.fmuladd.f64(double %215, double 0x3C93BF528ACED504, double %403)
  %405 = tail call double @llvm.fmuladd.f64(double %217, double 0x3C99794FD5FFFA7C, double %404)
  %406 = tail call double @llvm.fmuladd.f64(double %219, double 0xBCEB61ECA327B8E3, double %405)
  %407 = tail call double @llvm.fmuladd.f64(double %221, double 0x3D0A84FAA72D5A19, double %406)
  %408 = tail call double @llvm.fmuladd.f64(double %223, double 0x3D0A7D9F313861AC, double %407)
  %409 = tail call double @llvm.fmuladd.f64(double %225, double 0x3FFEFBDEB14F4E48, double %408)
  %410 = tail call double @llvm.fmuladd.f64(double %227, double 0x3D036D617FD6379E, double %409)
  %411 = tail call double @llvm.fmuladd.f64(double %229, double 0x3D027FF2929BF693, double %410)
  %412 = tail call double @llvm.fmuladd.f64(double %231, double 0x3CD83F1576963B00, double %411)
  %413 = tail call double @llvm.fmuladd.f64(double %233, double 0xBCF5B52E3E6E5F2B, double %412)
  %414 = tail call double @llvm.fmuladd.f64(double %235, double 0xBCF61B6CB70E5044, double %413)
  %415 = tail call double @llvm.fmuladd.f64(double %237, double 0x3FF08654A2D4F717, double %414)
  %416 = tail call double @llvm.fmuladd.f64(double %239, double 0xBCEFF3CE704FB7B1, double %415)
  %417 = tail call double @llvm.fmuladd.f64(double %241, double 0xBCEE546ACBEB905B, double %416)
  %418 = tail call double @llvm.fmuladd.f64(double %243, double 0xBCA0F732AF6EE969, double %417)
  %419 = tail call double @llvm.fmuladd.f64(double %245, double 0x3CB2FCB85F5C617B, double %418)
  %420 = tail call double @llvm.fmuladd.f64(double %247, double 0x3CC17DC87F455351, double %419)
  %421 = tail call double @llvm.fmuladd.f64(double %249, double 0xBFE4A7E9CB8A3496, double %420)
  %422 = tail call double @llvm.fmuladd.f64(double %251, double 0x3CA791A32887A121, double %421)
  %423 = tail call double @llvm.fmuladd.f64(double %253, double 0x3CB12159E6369CA7, double %422)
  %gep3101 = getelementptr double, ptr %invariant.gep3100, i64 %indvars.iv
  %424 = load double, ptr %gep3101, align 8, !tbaa !5
  %425 = fadd double %423, %424
  store double %425, ptr %gep3101, align 8, !tbaa !5
  %426 = fmul double %148, 0xBFB17C71DD2D5188
  %427 = tail call double @llvm.fmuladd.f64(double %147, double 0x3FF3237A82AF9EC7, double %426)
  %428 = tail call double @llvm.fmuladd.f64(double %151, double 0xBF76E8A1969E7200, double %427)
  %429 = tail call double @llvm.fmuladd.f64(double %153, double 0x3FC179BD32D3DC6F, double %428)
  %430 = tail call double @llvm.fmuladd.f64(double %155, double 0x3FFBC4AD9C53A55A, double %429)
  %431 = tail call double @llvm.fmuladd.f64(double %157, double 0x3FF1CA3B98F49426, double %430)
  %432 = tail call double @llvm.fmuladd.f64(double %159, double 0x3C915D0C18F46952, double %431)
  %433 = tail call double @llvm.fmuladd.f64(double %161, double 0x3C94D6A0DAC57C7E, double %432)
  %434 = tail call double @llvm.fmuladd.f64(double %163, double 0xBC84E1D5E41DCEB7, double %433)
  %435 = tail call double @llvm.fmuladd.f64(double %165, double 0xBC92763F594C57BA, double %434)
  %436 = tail call double @llvm.fmuladd.f64(double %167, double 0x3CB1F86B771BE422, double %435)
  %437 = tail call double @llvm.fmuladd.f64(double %169, double 0xBCA498ED43D15DB5, double %436)
  %438 = tail call double @llvm.fmuladd.f64(double %171, double 0x3C9E56370E4AEF9E, double %437)
  %439 = tail call double @llvm.fmuladd.f64(double %173, double 0x3C805596DD69B812, double %438)
  %440 = tail call double @llvm.fmuladd.f64(double %175, double 0x3CA8CCCC07FB5ADE, double %439)
  %441 = tail call double @llvm.fmuladd.f64(double %177, double 0x3C83675E5BCF4774, double %440)
  %442 = tail call double @llvm.fmuladd.f64(double %179, double 0x3CC9E7942DEDC84B, double %441)
  %443 = tail call double @llvm.fmuladd.f64(double %181, double 0x3CA46BAC5B65E036, double %442)
  %444 = tail call double @llvm.fmuladd.f64(double %183, double 0x3FF21EFA862DF3D5, double %443)
  %445 = tail call double @llvm.fmuladd.f64(double %185, double 0xBF734721512AF544, double %444)
  %446 = tail call double @llvm.fmuladd.f64(double %187, double 0xBFF7F19EB1BA88FC, double %445)
  %447 = tail call double @llvm.fmuladd.f64(double %189, double 0xBFF48831FA6C7040, double %446)
  %448 = tail call double @llvm.fmuladd.f64(double %191, double 0x3FC901A35D55DB9B, double %447)
  %449 = tail call double @llvm.fmuladd.f64(double %193, double 0x3FF0AF85DD8BD416, double %448)
  %450 = tail call double @llvm.fmuladd.f64(double %195, double 0x3C8212A222BDF02D, double %449)
  %451 = tail call double @llvm.fmuladd.f64(double %197, double 0x3C9C3612467E6F25, double %450)
  %452 = tail call double @llvm.fmuladd.f64(double %199, double 0x3C60D44D9CE30D34, double %451)
  %453 = tail call double @llvm.fmuladd.f64(double %201, double 0x3CB4286CB40F2925, double %452)
  %454 = tail call double @llvm.fmuladd.f64(double %203, double 0xBCA8159E3B5248DD, double %453)
  %455 = tail call double @llvm.fmuladd.f64(double %205, double 0xBC8CCF58EB146D39, double %454)
  %456 = tail call double @llvm.fmuladd.f64(double %207, double 0x3C8CDC3A40C0C286, double %455)
  %457 = tail call double @llvm.fmuladd.f64(double %209, double 0x3C9145618281F160, double %456)
  %458 = tail call double @llvm.fmuladd.f64(double %211, double 0x3C9DA0ED86977DDB, double %457)
  %459 = tail call double @llvm.fmuladd.f64(double %213, double 0xBCB96CB68C8806CB, double %458)
  %460 = tail call double @llvm.fmuladd.f64(double %215, double 0xBCA627EA67753954, double %459)
  %461 = tail call double @llvm.fmuladd.f64(double %217, double 0xBCB38E4A7495701A, double %460)
  %462 = tail call double @llvm.fmuladd.f64(double %219, double 0x3D0962BFBF7950FE, double %461)
  %463 = tail call double @llvm.fmuladd.f64(double %221, double 0xBCF04E8D6B1B7312, double %462)
  %464 = tail call double @llvm.fmuladd.f64(double %223, double 0x3D094FA68F9AC90D, double %463)
  %465 = tail call double @llvm.fmuladd.f64(double %225, double 0x3D0245B3F19FA08F, double %464)
  %466 = tail call double @llvm.fmuladd.f64(double %227, double 0x3FFEFBDEB14F4E48, double %465)
  %467 = tail call double @llvm.fmuladd.f64(double %229, double 0x3D056D8568281090, double %466)
  %468 = tail call double @llvm.fmuladd.f64(double %231, double 0xBCF473CE704FB7B1, double %467)
  %469 = tail call double @llvm.fmuladd.f64(double %233, double 0x3CDC972A6828DF4A, double %468)
  %470 = tail call double @llvm.fmuladd.f64(double %235, double 0xBCF52443B5049A2F, double %469)
  %471 = tail call double @llvm.fmuladd.f64(double %237, double 0xBCEB3EC748C84EAF, double %470)
  %472 = tail call double @llvm.fmuladd.f64(double %239, double 0x3FF08654A2D4F71C, double %471)
  %473 = tail call double @llvm.fmuladd.f64(double %241, double 0xBCF0EA0E4F0ED202, double %472)
  %474 = tail call double @llvm.fmuladd.f64(double %243, double 0xBC957D30E9E11EAA, double %473)
  %475 = tail call double @llvm.fmuladd.f64(double %245, double 0xBCB020EF0806595A, double %474)
  %476 = tail call double @llvm.fmuladd.f64(double %247, double 0x3C995AF6A0FAA3BA, double %475)
  %477 = tail call double @llvm.fmuladd.f64(double %249, double 0xBC7660BBB7D81C3F, double %476)
  %478 = tail call double @llvm.fmuladd.f64(double %251, double 0xBFE4A7E9CB8A3494, double %477)
  %479 = tail call double @llvm.fmuladd.f64(double %253, double 0x3CC2ED1D85004B30, double %478)
  %gep3103 = getelementptr double, ptr %invariant.gep3102, i64 %indvars.iv
  %480 = load double, ptr %gep3103, align 8, !tbaa !5
  %481 = fadd double %479, %480
  store double %481, ptr %gep3103, align 8, !tbaa !5
  %482 = fmul double %148, 0x3FB1F3F0B024DC88
  %483 = tail call double @llvm.fmuladd.f64(double %147, double 0xBFF5B6F7089FF1D1, double %482)
  %484 = tail call double @llvm.fmuladd.f64(double %151, double 0x3FCCBE3CAE6B6284, double %483)
  %485 = tail call double @llvm.fmuladd.f64(double %153, double 0xBFD81F8F0CEC60FF, double %484)
  %486 = tail call double @llvm.fmuladd.f64(double %155, double 0xBFFBA497A89943F3, double %485)
  %487 = tail call double @llvm.fmuladd.f64(double %157, double 0xBFDC5366E211BE90, double %486)
  %488 = tail call double @llvm.fmuladd.f64(double %159, double 0xBC96C7DC8DD1684A, double %487)
  %489 = tail call double @llvm.fmuladd.f64(double %161, double 0x3C950AD45332D6FE, double %488)
  %490 = tail call double @llvm.fmuladd.f64(double %163, double 0x3C9EB6F29C749A96, double %489)
  %491 = tail call double @llvm.fmuladd.f64(double %165, double 0xBC6D62BACB4768BA, double %490)
  %492 = tail call double @llvm.fmuladd.f64(double %167, double 0x3CB80BBA9C9EA48A, double %491)
  %493 = tail call double @llvm.fmuladd.f64(double %169, double 0xBCAB001FD1461890, double %492)
  %494 = tail call double @llvm.fmuladd.f64(double %171, double 0xBC9681DA589F9E71, double %493)
  %495 = tail call double @llvm.fmuladd.f64(double %173, double 0xBC827123784CF600, double %494)
  %496 = tail call double @llvm.fmuladd.f64(double %175, double 0xBCAE4BA60AE12278, double %495)
  %497 = tail call double @llvm.fmuladd.f64(double %177, double 0xBC78B38170BB85CD, double %496)
  %498 = tail call double @llvm.fmuladd.f64(double %179, double 0xBCB30DECEA2D8A5E, double %497)
  %499 = tail call double @llvm.fmuladd.f64(double %181, double 0xBCB4601E7CBDEFB1, double %498)
  %500 = tail call double @llvm.fmuladd.f64(double %183, double 0x3FB1F3F0B024DC78, double %499)
  %501 = tail call double @llvm.fmuladd.f64(double %185, double 0xBFF5B6F7089FF1D6, double %500)
  %502 = tail call double @llvm.fmuladd.f64(double %187, double 0x3FCCBE3CAE6B6264, double %501)
  %503 = tail call double @llvm.fmuladd.f64(double %189, double 0xBFFBA497A89943F8, double %502)
  %504 = tail call double @llvm.fmuladd.f64(double %191, double 0xBFD81F8F0CEC6106, double %503)
  %505 = tail call double @llvm.fmuladd.f64(double %193, double 0xBFDC5366E211BE88, double %504)
  %506 = tail call double @llvm.fmuladd.f64(double %195, double 0x3C3B48F2BDFBC980, double %505)
  %507 = tail call double @llvm.fmuladd.f64(double %197, double 0xBCABF8CFD447EB3A, double %506)
  %508 = tail call double @llvm.fmuladd.f64(double %199, double 0x3CAAFAB790AFF8A1, double %507)
  %509 = tail call double @llvm.fmuladd.f64(double %201, double 0x3C95C63DC7475F74, double %508)
  %510 = tail call double @llvm.fmuladd.f64(double %203, double 0x3CB246F6B715BA99, double %509)
  %511 = tail call double @llvm.fmuladd.f64(double %205, double 0xBCAFEB692A4A65D9, double %510)
  %512 = tail call double @llvm.fmuladd.f64(double %207, double 0xBCB0527DE73323C6, double %511)
  %513 = tail call double @llvm.fmuladd.f64(double %209, double 0xBC851E1EB70E35B4, double %512)
  %514 = tail call double @llvm.fmuladd.f64(double %211, double 0xBCB91F7B4DA061BB, double %513)
  %515 = tail call double @llvm.fmuladd.f64(double %213, double 0xBCA20AB4BF61ADD9, double %514)
  %516 = tail call double @llvm.fmuladd.f64(double %215, double 0xBC92F85550CD85E6, double %515)
  %517 = tail call double @llvm.fmuladd.f64(double %217, double 0xBCB0508DC7392C71, double %516)
  %518 = tail call double @llvm.fmuladd.f64(double %219, double 0x3D09F39F45669420, double %517)
  %519 = tail call double @llvm.fmuladd.f64(double %221, double 0x3D094FBC9693CCC3, double %518)
  %520 = tail call double @llvm.fmuladd.f64(double %223, double 0xBCF0CC0D6843A692, double %519)
  %521 = tail call double @llvm.fmuladd.f64(double %225, double 0x3D02CCBAD3CD71B6, double %520)
  %522 = tail call double @llvm.fmuladd.f64(double %227, double 0x3D0684AE6A31C6A8, double %521)
  %523 = tail call double @llvm.fmuladd.f64(double %229, double 0x3FFEFBDEB14F4E48, double %522)
  %524 = tail call double @llvm.fmuladd.f64(double %231, double 0xBCF4BE5204136C30, double %523)
  %525 = tail call double @llvm.fmuladd.f64(double %233, double 0xBCF3302716E6F62B, double %524)
  %526 = tail call double @llvm.fmuladd.f64(double %235, double 0x3CD8A971F372F94D, double %525)
  %527 = tail call double @llvm.fmuladd.f64(double %237, double 0xBCEE0138B737B153, double %526)
  %528 = tail call double @llvm.fmuladd.f64(double %239, double 0xBCF1BE2AED2C7606, double %527)
  %529 = tail call double @llvm.fmuladd.f64(double %241, double 0x3FF08654A2D4F717, double %528)
  %530 = tail call double @llvm.fmuladd.f64(double %243, double 0x3C89DD26D5B75F58, double %529)
  %531 = tail call double @llvm.fmuladd.f64(double %245, double 0xBCAB2729CD0FE620, double %530)
  %532 = tail call double @llvm.fmuladd.f64(double %247, double 0x3CB60C661FD23425, double %531)
  %533 = tail call double @llvm.fmuladd.f64(double %249, double 0x3CA4E4D6801EA791, double %532)
  %534 = tail call double @llvm.fmuladd.f64(double %251, double 0xBC7BA72BEBF9CA81, double %533)
  %535 = tail call double @llvm.fmuladd.f64(double %253, double 0xBFE4A7E9CB8A349A, double %534)
  %gep3105 = getelementptr double, ptr %invariant.gep3104, i64 %indvars.iv
  %536 = load double, ptr %gep3105, align 8, !tbaa !5
  %537 = fadd double %535, %536
  store double %537, ptr %gep3105, align 8, !tbaa !5
  %538 = fmul double %148, 0xBC8AF16F6DD6B178
  %539 = tail call double @llvm.fmuladd.f64(double %147, double 0xBCAFA91475A2DE60, double %538)
  %540 = tail call double @llvm.fmuladd.f64(double %151, double 0xBC97CD2320F06FBE, double %539)
  %541 = tail call double @llvm.fmuladd.f64(double %153, double 0x3C912517F7A39052, double %540)
  %542 = tail call double @llvm.fmuladd.f64(double %155, double 0x3CA26D18C495E068, double %541)
  %543 = tail call double @llvm.fmuladd.f64(double %157, double 0x3C5FA39DC354EAFF, double %542)
  %544 = tail call double @llvm.fmuladd.f64(double %159, double 0x3FF44E3F94172F46, double %543)
  %545 = tail call double @llvm.fmuladd.f64(double %161, double 0xBF7DFA2300BBB500, double %544)
  %546 = tail call double @llvm.fmuladd.f64(double %163, double 0x3FB9ECDD9812789D, double %545)
  %547 = tail call double @llvm.fmuladd.f64(double %165, double 0xBF83952FC55A7034, double %546)
  %548 = tail call double @llvm.fmuladd.f64(double %167, double 0xBFE4FBED5D8A9668, double %547)
  %549 = tail call double @llvm.fmuladd.f64(double %169, double 0x3FD50884576D0BC1, double %548)
  %550 = tail call double @llvm.fmuladd.f64(double %171, double 0x3CA5CAE36F1C5AB0, double %549)
  %551 = tail call double @llvm.fmuladd.f64(double %173, double 0x3C7C91DEC9976F2B, double %550)
  %552 = tail call double @llvm.fmuladd.f64(double %175, double 0x3C9CA3E3D7BB8328, double %551)
  %553 = tail call double @llvm.fmuladd.f64(double %177, double 0xBC6B4399CAA6ADB0, double %552)
  %554 = tail call double @llvm.fmuladd.f64(double %179, double 0x3C6E67AB5FEF02FF, double %553)
  %555 = tail call double @llvm.fmuladd.f64(double %181, double 0x3C9BAD7EA815E448, double %554)
  %556 = tail call double @llvm.fmuladd.f64(double %183, double 0x3CC6C71214C31C21, double %555)
  %557 = tail call double @llvm.fmuladd.f64(double %185, double 0xBCB1B63B8880A915, double %556)
  %558 = tail call double @llvm.fmuladd.f64(double %187, double 0xBCB4FEFC467C74C1, double %557)
  %559 = tail call double @llvm.fmuladd.f64(double %189, double 0x3CA5EC7F118106ED, double %558)
  %560 = tail call double @llvm.fmuladd.f64(double %191, double 0x3C97A76C7821BE84, double %559)
  %561 = tail call double @llvm.fmuladd.f64(double %193, double 0x3CAB7AA05D79C461, double %560)
  %562 = tail call double @llvm.fmuladd.f64(double %195, double 0xBFE8AC73392375D0, double %561)
  %563 = tail call double @llvm.fmuladd.f64(double %197, double 0x3FE4EDE8EE256116, double %562)
  %564 = tail call double @llvm.fmuladd.f64(double %199, double 0x3FEA5488770B26C2, double %563)
  %565 = tail call double @llvm.fmuladd.f64(double %201, double 0x3FF44CD742FC94EC, double %564)
  %566 = tail call double @llvm.fmuladd.f64(double %203, double 0xBFFEF1F8514C97E2, double %565)
  %567 = tail call double @llvm.fmuladd.f64(double %205, double 0xBFF01B2FE70C1193, double %566)
  %568 = tail call double @llvm.fmuladd.f64(double %207, double 0x3CC10619A0D49B2C, double %567)
  %569 = tail call double @llvm.fmuladd.f64(double %209, double 0xBCB2BE959D8DCC83, double %568)
  %570 = tail call double @llvm.fmuladd.f64(double %211, double 0xBCB6827D4F596C3D, double %569)
  %571 = tail call double @llvm.fmuladd.f64(double %213, double 0xBC79847A24C5FC38, double %570)
  %572 = tail call double @llvm.fmuladd.f64(double %215, double 0x3CA5781E7AFEC464, double %571)
  %573 = tail call double @llvm.fmuladd.f64(double %217, double 0xBC69B640D81F5A20, double %572)
  %574 = tail call double @llvm.fmuladd.f64(double %219, double 0xBFF9D1E43E6CC16D, double %573)
  %575 = tail call double @llvm.fmuladd.f64(double %221, double 0x3CE92F44973E98E2, double %574)
  %576 = tail call double @llvm.fmuladd.f64(double %223, double 0x3CE8D765A1B41E69, double %575)
  %577 = tail call double @llvm.fmuladd.f64(double %225, double 0x3CE01DEF58A7A769, double %576)
  %578 = tail call double @llvm.fmuladd.f64(double %227, double 0xBCF92CA4F0107010, double %577)
  %579 = tail call double @llvm.fmuladd.f64(double %229, double 0xBCFA01E43E6CC1B4, double %578)
  %580 = tail call double @llvm.fmuladd.f64(double %231, double 0xB9BED7FFFFFFFFFE, double %579)
  %581 = tail call double @llvm.fmuladd.f64(double %233, double 0xB997600000000000, double %580)
  %582 = tail call double @llvm.fmuladd.f64(double %235, double 0xB980BFFFFFFFFFFE, double %581)
  %583 = tail call double @llvm.fmuladd.f64(double %237, double 0xB9914C0000000000, double %582)
  %584 = tail call double @llvm.fmuladd.f64(double %239, double 0x3970000000000000, double %583)
  %585 = tail call double @llvm.fmuladd.f64(double %241, double 0x39A0000000000000, double %584)
  %586 = tail call double @llvm.fmuladd.f64(double %243, double 0x3FF9D1E43E6CC16D, double %585)
  %587 = tail call double @llvm.fmuladd.f64(double %245, double 0xBCE92F44973E98E2, double %586)
  %588 = tail call double @llvm.fmuladd.f64(double %247, double 0xBCE8D765A1B41E69, double %587)
  %589 = tail call double @llvm.fmuladd.f64(double %249, double 0xBCE01DEF58A7A769, double %588)
  %590 = tail call double @llvm.fmuladd.f64(double %251, double 0x3CF95CA4F0107011, double %589)
  %591 = tail call double @llvm.fmuladd.f64(double %253, double 0x3CFA31E43E6CC1B5, double %590)
  %gep3107 = getelementptr double, ptr %invariant.gep3106, i64 %indvars.iv
  %592 = load double, ptr %gep3107, align 8, !tbaa !5
  %593 = fadd double %591, %592
  store double %593, ptr %gep3107, align 8, !tbaa !5
  %594 = fmul double %148, 0x3CB24802BB25DFAC
  %595 = tail call double @llvm.fmuladd.f64(double %147, double 0x3CA733637AD25B8E, double %594)
  %596 = tail call double @llvm.fmuladd.f64(double %151, double 0xBC9FC7EA1CC30EE8, double %595)
  %597 = tail call double @llvm.fmuladd.f64(double %153, double 0xBCB44A60DE6828AB, double %596)
  %598 = tail call double @llvm.fmuladd.f64(double %155, double 0xBCB000D696902285, double %597)
  %599 = tail call double @llvm.fmuladd.f64(double %157, double 0xBCA826233EF25B10, double %598)
  %600 = tail call double @llvm.fmuladd.f64(double %159, double 0x3FE4EDE8EE25610A, double %599)
  %601 = tail call double @llvm.fmuladd.f64(double %161, double 0xBFE8AC73392375BC, double %600)
  %602 = tail call double @llvm.fmuladd.f64(double %163, double 0x3FEA5488770B26AA, double %601)
  %603 = tail call double @llvm.fmuladd.f64(double %165, double 0xBFFEF1F8514C97D0, double %602)
  %604 = tail call double @llvm.fmuladd.f64(double %167, double 0x3FF44CD742FC94DF, double %603)
  %605 = tail call double @llvm.fmuladd.f64(double %169, double 0xBFF01B2FE70C118E, double %604)
  %606 = tail call double @llvm.fmuladd.f64(double %171, double 0xBCBA0032ABCB100C, double %605)
  %607 = tail call double @llvm.fmuladd.f64(double %173, double 0x3CBC200ECF3E06E7, double %606)
  %608 = tail call double @llvm.fmuladd.f64(double %175, double 0xBCBDCFF9DD802CEF, double %607)
  %609 = tail call double @llvm.fmuladd.f64(double %177, double 0xBC68F31986A4E76E, double %608)
  %610 = tail call double @llvm.fmuladd.f64(double %179, double 0x3CBB2800A30A8EA4, double %609)
  %611 = tail call double @llvm.fmuladd.f64(double %181, double 0x3CC423B95478E8B3, double %610)
  %612 = tail call double @llvm.fmuladd.f64(double %183, double 0x3CA347C4C70D6B05, double %611)
  %613 = tail call double @llvm.fmuladd.f64(double %185, double 0x3CB1CF7DDE1AEFDC, double %612)
  %614 = tail call double @llvm.fmuladd.f64(double %187, double 0x3C97D656A637D540, double %613)
  %615 = tail call double @llvm.fmuladd.f64(double %189, double 0xBCAA48CC66C79E07, double %614)
  %616 = tail call double @llvm.fmuladd.f64(double %191, double 0x3C9D261528C7077F, double %615)
  %617 = tail call double @llvm.fmuladd.f64(double %193, double 0x3CA99E4A7A608F94, double %616)
  %618 = tail call double @llvm.fmuladd.f64(double %195, double 0xBF7DFA2300BBB500, double %617)
  %619 = tail call double @llvm.fmuladd.f64(double %197, double 0x3FF44E3F94172F4F, double %618)
  %620 = tail call double @llvm.fmuladd.f64(double %199, double 0x3FB9ECDD981278CF, double %619)
  %621 = tail call double @llvm.fmuladd.f64(double %201, double 0xBFE4FBED5D8A9650, double %620)
  %622 = tail call double @llvm.fmuladd.f64(double %203, double 0xBF83952FC55A72BC, double %621)
  %623 = tail call double @llvm.fmuladd.f64(double %205, double 0x3FD50884576D0BC1, double %622)
  %624 = tail call double @llvm.fmuladd.f64(double %207, double 0x3CB6140A413681D4, double %623)
  %625 = tail call double @llvm.fmuladd.f64(double %209, double 0x3CA8FA1231330DC7, double %624)
  %626 = tail call double @llvm.fmuladd.f64(double %211, double 0x3CBBE2C07F50FCE2, double %625)
  %627 = tail call double @llvm.fmuladd.f64(double %213, double 0xBCB7024A69B57E27, double %626)
  %628 = tail call double @llvm.fmuladd.f64(double %215, double 0xBC87FD97AF08C2A0, double %627)
  %629 = tail call double @llvm.fmuladd.f64(double %217, double 0xBCB0527F7EB21B3D, double %628)
  %630 = tail call double @llvm.fmuladd.f64(double %219, double 0x3CE5FF86AC29A3F8, double %629)
  %631 = tail call double @llvm.fmuladd.f64(double %221, double 0xBFF9D1E43E6CC169, double %630)
  %632 = tail call double @llvm.fmuladd.f64(double %223, double 0x3CE5698EEEC7055C, double %631)
  %633 = tail call double @llvm.fmuladd.f64(double %225, double 0xBCFC52AFE82DBFFD, double %632)
  %634 = tail call double @llvm.fmuladd.f64(double %227, double 0x3CE075CE4E3221E7, double %633)
  %635 = tail call double @llvm.fmuladd.f64(double %229, double 0xBCF9A8946AD5AD4C, double %634)
  %636 = tail call double @llvm.fmuladd.f64(double %231, double 0x3C7227B423504AEF, double %635)
  %637 = tail call double @llvm.fmuladd.f64(double %233, double 0xBC3E23F1C2D296A5, double %636)
  %638 = tail call double @llvm.fmuladd.f64(double %235, double 0xBC3E23F1C2D29CF9, double %637)
  %639 = tail call double @llvm.fmuladd.f64(double %237, double 0xBC530A5432687980, double %638)
  %640 = tail call double @llvm.fmuladd.f64(double %239, double 0xBC534141BCB7B1E0, double %639)
  %641 = tail call double @llvm.fmuladd.f64(double %241, double 0xBC534141BCB7AF1E, double %640)
  %642 = tail call double @llvm.fmuladd.f64(double %243, double 0xBCE5AF86AC29A3F8, double %641)
  %643 = tail call double @llvm.fmuladd.f64(double %245, double 0x3FF9D1E43E6CC169, double %642)
  %644 = tail call double @llvm.fmuladd.f64(double %247, double 0xBCE5698EEEC70559, double %643)
  %645 = tail call double @llvm.fmuladd.f64(double %249, double 0x3CFC52AFE82DBFFF, double %644)
  %646 = tail call double @llvm.fmuladd.f64(double %251, double 0xBCE075CE4E3221E7, double %645)
  %647 = tail call double @llvm.fmuladd.f64(double %253, double 0x3CFA38946AD5AD4B, double %646)
  %gep3109 = getelementptr double, ptr %invariant.gep3108, i64 %indvars.iv
  %648 = load double, ptr %gep3109, align 8, !tbaa !5
  %649 = fadd double %647, %648
  store double %649, ptr %gep3109, align 8, !tbaa !5
  %650 = fmul double %148, 0xBCA303E7E9D23CFA
  %651 = tail call double @llvm.fmuladd.f64(double %147, double 0x3C8FBBBF8479477C, double %650)
  %652 = tail call double @llvm.fmuladd.f64(double %151, double 0x3C7502E6070E6BC0, double %651)
  %653 = tail call double @llvm.fmuladd.f64(double %153, double 0x3CBF2499CB50E496, double %652)
  %654 = tail call double @llvm.fmuladd.f64(double %155, double 0xBCB18E75707CAEC2, double %653)
  %655 = tail call double @llvm.fmuladd.f64(double %157, double 0xBC957EB0C0D32A92, double %654)
  %656 = tail call double @llvm.fmuladd.f64(double %159, double 0xBFE1EC4181248ADF, double %655)
  %657 = tail call double @llvm.fmuladd.f64(double %161, double 0xBFDFFE63E285177B, double %656)
  %658 = tail call double @llvm.fmuladd.f64(double %163, double 0x4000E9CE75C2FBF6, double %657)
  %659 = tail call double @llvm.fmuladd.f64(double %165, double 0x3FF31D88B253B084, double %658)
  %660 = tail call double @llvm.fmuladd.f64(double %167, double 0x3FF2343957F3A8AA, double %659)
  %661 = tail call double @llvm.fmuladd.f64(double %169, double 0xBFEE712F1EF7D896, double %660)
  %662 = tail call double @llvm.fmuladd.f64(double %171, double 0xBCC00C78C6295034, double %661)
  %663 = tail call double @llvm.fmuladd.f64(double %173, double 0xBCA515E72A62BD71, double %662)
  %664 = tail call double @llvm.fmuladd.f64(double %175, double 0xBCC440052B0B6591, double %663)
  %665 = tail call double @llvm.fmuladd.f64(double %177, double 0x3CB5037F708D2B40, double %664)
  %666 = tail call double @llvm.fmuladd.f64(double %179, double 0x3CC9C5D37CDA2F2D, double %665)
  %667 = tail call double @llvm.fmuladd.f64(double %181, double 0x3CCF6C49D3A9D98C, double %666)
  %668 = tail call double @llvm.fmuladd.f64(double %183, double 0x3CAC37DE4880EADE, double %667)
  %669 = tail call double @llvm.fmuladd.f64(double %185, double 0x3C8A879ECD0AD1E9, double %668)
  %670 = tail call double @llvm.fmuladd.f64(double %187, double 0xBC59ACE05CE0B300, double %669)
  %671 = tail call double @llvm.fmuladd.f64(double %189, double 0x3CB3FD64226E0B00, double %670)
  %672 = tail call double @llvm.fmuladd.f64(double %191, double 0xBCA6BB73EC8236F2, double %671)
  %673 = tail call double @llvm.fmuladd.f64(double %193, double 0xBCA83336C71F9743, double %672)
  %674 = tail call double @llvm.fmuladd.f64(double %195, double 0xBFDFFE63E2851764, double %673)
  %675 = tail call double @llvm.fmuladd.f64(double %197, double 0xBFE1EC4181248AE3, double %674)
  %676 = tail call double @llvm.fmuladd.f64(double %199, double 0x4000E9CE75C2FBF6, double %675)
  %677 = tail call double @llvm.fmuladd.f64(double %201, double 0x3FF2343957F3A8AF, double %676)
  %678 = tail call double @llvm.fmuladd.f64(double %203, double 0x3FF31D88B253B07F, double %677)
  %679 = tail call double @llvm.fmuladd.f64(double %205, double 0xBFEE712F1EF7D8A1, double %678)
  %680 = tail call double @llvm.fmuladd.f64(double %207, double 0xBCC19561BA4C976A, double %679)
  %681 = tail call double @llvm.fmuladd.f64(double %209, double 0x3C8561CA2243E962, double %680)
  %682 = tail call double @llvm.fmuladd.f64(double %211, double 0xBCCBC809825B5E43, double %681)
  %683 = tail call double @llvm.fmuladd.f64(double %213, double 0xBC98B3084FB90D1C, double %682)
  %684 = tail call double @llvm.fmuladd.f64(double %215, double 0x3CD0052A8CC0F683, double %683)
  %685 = tail call double @llvm.fmuladd.f64(double %217, double 0x3CD01543965B219E, double %684)
  %686 = tail call double @llvm.fmuladd.f64(double %219, double 0x3CE8DCA4F0107014, double %685)
  %687 = tail call double @llvm.fmuladd.f64(double %221, double 0x3CE800B5754B32D9, double %686)
  %688 = tail call double @llvm.fmuladd.f64(double %223, double 0xBFF9D1E43E6CC164, double %687)
  %689 = tail call double @llvm.fmuladd.f64(double %225, double 0xBCFBFD7099D16E59, double %688)
  %690 = tail call double @llvm.fmuladd.f64(double %227, double 0xBCFA23551C795BA5, double %689)
  %691 = tail call double @llvm.fmuladd.f64(double %229, double 0x3CD86765A1B41E6D, double %690)
  %692 = tail call double @llvm.fmuladd.f64(double %231, double 0xBC785D904A774BD5, double %691)
  %693 = tail call double @llvm.fmuladd.f64(double %233, double 0x3C5D818C6ADA883D, double %692)
  %694 = tail call double @llvm.fmuladd.f64(double %235, double 0x3C5D818C6ADA811C, double %693)
  %695 = tail call double @llvm.fmuladd.f64(double %237, double 0x3C6988DC43D64BED, double %694)
  %696 = tail call double @llvm.fmuladd.f64(double %239, double 0xBC6B27A40CE11C6E, double %695)
  %697 = tail call double @llvm.fmuladd.f64(double %241, double 0xBC8EC9E9033846C9, double %696)
  %698 = tail call double @llvm.fmuladd.f64(double %243, double 0xBCE8DCA4F0107014, double %697)
  %699 = tail call double @llvm.fmuladd.f64(double %245, double 0xBCE800B5754B32D7, double %698)
  %700 = tail call double @llvm.fmuladd.f64(double %247, double 0x3FF9D1E43E6CC164, double %699)
  %701 = tail call double @llvm.fmuladd.f64(double %249, double 0x3CFBFD7099D16E5A, double %700)
  %702 = tail call double @llvm.fmuladd.f64(double %251, double 0x3CF9F3551C795BA8, double %701)
  %703 = tail call double @llvm.fmuladd.f64(double %253, double 0xBCD92765A1B41E6B, double %702)
  %gep3111 = getelementptr double, ptr %invariant.gep3110, i64 %indvars.iv
  %704 = load double, ptr %gep3111, align 8, !tbaa !5
  %705 = fadd double %703, %704
  store double %705, ptr %gep3111, align 8, !tbaa !5
  %706 = fmul double %148, 0xBC83FC569180EE5E
  %707 = tail call double @llvm.fmuladd.f64(double %147, double 0xBC8EA5ADFAA929A7, double %706)
  %708 = tail call double @llvm.fmuladd.f64(double %151, double 0xBC6E3A78632E1596, double %707)
  %709 = tail call double @llvm.fmuladd.f64(double %153, double 0xBC83A74A36148518, double %708)
  %710 = tail call double @llvm.fmuladd.f64(double %155, double 0x3CB564D90EDE042E, double %709)
  %711 = tail call double @llvm.fmuladd.f64(double %157, double 0x3C989B6B8C34D144, double %710)
  %712 = tail call double @llvm.fmuladd.f64(double %159, double 0xBF734721512AF399, double %711)
  %713 = tail call double @llvm.fmuladd.f64(double %161, double 0x3FF21EFA862DF3DE, double %712)
  %714 = tail call double @llvm.fmuladd.f64(double %163, double 0xBFF7F19EB1BA88FC, double %713)
  %715 = tail call double @llvm.fmuladd.f64(double %165, double 0x3FC901A35D55DB50, double %714)
  %716 = tail call double @llvm.fmuladd.f64(double %167, double 0xBFF48831FA6C703B, double %715)
  %717 = tail call double @llvm.fmuladd.f64(double %169, double 0x3FF0AF85DD8BD41B, double %716)
  %718 = tail call double @llvm.fmuladd.f64(double %171, double 0x3CC3E8D573A56FAD, double %717)
  %719 = tail call double @llvm.fmuladd.f64(double %173, double 0x3C8C4729A9EC58BE, double %718)
  %720 = tail call double @llvm.fmuladd.f64(double %175, double 0x3CC336335C2A4C90, double %719)
  %721 = tail call double @llvm.fmuladd.f64(double %177, double 0xBC914F26788AF5CD, double %720)
  %722 = tail call double @llvm.fmuladd.f64(double %179, double 0xBCC3337EE9A65CF0, double %721)
  %723 = tail call double @llvm.fmuladd.f64(double %181, double 0xBCCB8879EF13718A, double %722)
  %724 = tail call double @llvm.fmuladd.f64(double %183, double 0xBCB17D0146688F6C, double %723)
  %725 = tail call double @llvm.fmuladd.f64(double %185, double 0x3C5F5BA8ADFE37AC, double %724)
  %726 = tail call double @llvm.fmuladd.f64(double %187, double 0xBC95A97F00B4BD20, double %725)
  %727 = tail call double @llvm.fmuladd.f64(double %189, double 0x3CB310B8F73ED9E1, double %726)
  %728 = tail call double @llvm.fmuladd.f64(double %191, double 0x3CB8D84083674869, double %727)
  %729 = tail call double @llvm.fmuladd.f64(double %193, double 0x3C908864603A2D22, double %728)
  %730 = tail call double @llvm.fmuladd.f64(double %195, double 0xBFB17C71DD2D5188, double %729)
  %731 = tail call double @llvm.fmuladd.f64(double %197, double 0x3FF3237A82AF9ED0, double %730)
  %732 = tail call double @llvm.fmuladd.f64(double %199, double 0xBF76E8A1969E6E00, double %731)
  %733 = tail call double @llvm.fmuladd.f64(double %201, double 0x3FFBC4AD9C53A55A, double %732)
  %734 = tail call double @llvm.fmuladd.f64(double %203, double 0x3FC179BD32D3DC59, double %733)
  %735 = tail call double @llvm.fmuladd.f64(double %205, double 0x3FF1CA3B98F4942B, double %734)
  %736 = tail call double @llvm.fmuladd.f64(double %207, double 0x3CB0F5FB97E3D132, double %735)
  %737 = tail call double @llvm.fmuladd.f64(double %209, double 0xBCAEF548FD7930BA, double %736)
  %738 = tail call double @llvm.fmuladd.f64(double %211, double 0x3CB0EB672BAF686A, double %737)
  %739 = tail call double @llvm.fmuladd.f64(double %213, double 0xBC978105A5E561C0, double %738)
  %740 = tail call double @llvm.fmuladd.f64(double %215, double 0x3CA3390DEFF9A3C5, double %739)
  %741 = tail call double @llvm.fmuladd.f64(double %217, double 0xBCA5931C5A970C57, double %740)
  %742 = tail call double @llvm.fmuladd.f64(double %219, double 0x3CD010D114C0DB4A, double %741)
  %743 = tail call double @llvm.fmuladd.f64(double %221, double 0xBCE9BF0282538DD5, double %742)
  %744 = tail call double @llvm.fmuladd.f64(double %223, double 0xBCE87BEC810A2317, double %743)
  %745 = tail call double @llvm.fmuladd.f64(double %225, double 0xBFF9D1E43E6CC191, double %744)
  %746 = tail call double @llvm.fmuladd.f64(double %227, double 0xBCE4241B5B3A7CDD, double %745)
  %747 = tail call double @llvm.fmuladd.f64(double %229, double 0xBCE4741B5B3A7CDD, double %746)
  %748 = tail call double @llvm.fmuladd.f64(double %231, double 0x3C8AC8C86FCC44A0, double %747)
  %749 = tail call double @llvm.fmuladd.f64(double %233, double 0x3C8DA397D166657F, double %748)
  %750 = tail call double @llvm.fmuladd.f64(double %235, double 0x3C8DA397D1666583, double %749)
  %751 = tail call double @llvm.fmuladd.f64(double %237, double 0xBC8081F6B934226E, double %750)
  %752 = tail call double @llvm.fmuladd.f64(double %239, double 0xBC4C700ACB277023, double %751)
  %753 = tail call double @llvm.fmuladd.f64(double %241, double 0xBC7B8E015964EDEB, double %752)
  %754 = tail call double @llvm.fmuladd.f64(double %243, double 0xBCD010D114C0DB49, double %753)
  %755 = tail call double @llvm.fmuladd.f64(double %245, double 0x3CE9BF0282538DD0, double %754)
  %756 = tail call double @llvm.fmuladd.f64(double %247, double 0x3CE87BEC810A2317, double %755)
  %757 = tail call double @llvm.fmuladd.f64(double %249, double 0x3FF9D1E43E6CC191, double %756)
  %758 = tail call double @llvm.fmuladd.f64(double %251, double 0x3CE3D41B5B3A7CE0, double %757)
  %759 = tail call double @llvm.fmuladd.f64(double %253, double 0x3CE4741B5B3A7CDD, double %758)
  %gep3113 = getelementptr double, ptr %invariant.gep3112, i64 %indvars.iv
  %760 = load double, ptr %gep3113, align 8, !tbaa !5
  %761 = fadd double %759, %760
  store double %761, ptr %gep3113, align 8, !tbaa !5
  %762 = fmul double %148, 0x3C97B483C42BAB7C
  %763 = tail call double @llvm.fmuladd.f64(double %147, double 0xBCC3A93C9AD8BA3A, double %762)
  %764 = tail call double @llvm.fmuladd.f64(double %151, double 0x3C71B9B8F47F3248, double %763)
  %765 = tail call double @llvm.fmuladd.f64(double %153, double 0xBC80C8CA734909F4, double %764)
  %766 = tail call double @llvm.fmuladd.f64(double %155, double 0x3C9558F6282D8B0C, double %765)
  %767 = tail call double @llvm.fmuladd.f64(double %157, double 0xBCA238E1A865FF56, double %766)
  %768 = tail call double @llvm.fmuladd.f64(double %159, double 0x3FF3237A82AF9ECC, double %767)
  %769 = tail call double @llvm.fmuladd.f64(double %161, double 0xBFB17C71DD2D5180, double %768)
  %770 = tail call double @llvm.fmuladd.f64(double %163, double 0xBF76E8A1969E7200, double %769)
  %771 = tail call double @llvm.fmuladd.f64(double %165, double 0x3FC179BD32D3DC6F, double %770)
  %772 = tail call double @llvm.fmuladd.f64(double %167, double 0x3FFBC4AD9C53A563, double %771)
  %773 = tail call double @llvm.fmuladd.f64(double %169, double 0x3FF1CA3B98F4942B, double %772)
  %774 = tail call double @llvm.fmuladd.f64(double %171, double 0xBCA6FBE336F71405, double %773)
  %775 = tail call double @llvm.fmuladd.f64(double %173, double 0x3C80984B1B374A75, double %774)
  %776 = tail call double @llvm.fmuladd.f64(double %175, double 0x3C4729477968333F, double %775)
  %777 = tail call double @llvm.fmuladd.f64(double %177, double 0xBC918F2EE7553E84, double %776)
  %778 = tail call double @llvm.fmuladd.f64(double %179, double 0xBC63BFDB1A7A0940, double %777)
  %779 = tail call double @llvm.fmuladd.f64(double %181, double 0x3CAA455C00B239E4, double %778)
  %780 = tail call double @llvm.fmuladd.f64(double %183, double 0xBCB979BA7B87021B, double %779)
  %781 = tail call double @llvm.fmuladd.f64(double %185, double 0xBC8C55566D867E4D, double %780)
  %782 = tail call double @llvm.fmuladd.f64(double %187, double 0x3CAD8296DD370BB5, double %781)
  %783 = tail call double @llvm.fmuladd.f64(double %189, double 0xBCB6E42765918C02, double %782)
  %784 = tail call double @llvm.fmuladd.f64(double %191, double 0x3CA25C9DE1FA7E55, double %783)
  %785 = tail call double @llvm.fmuladd.f64(double %193, double 0x3CA501A6E8F3273C, double %784)
  %786 = tail call double @llvm.fmuladd.f64(double %195, double 0x3FF21EFA862DF3DA, double %785)
  %787 = tail call double @llvm.fmuladd.f64(double %197, double 0xBF734721512AF5C1, double %786)
  %788 = tail call double @llvm.fmuladd.f64(double %199, double 0xBFF7F19EB1BA88FC, double %787)
  %789 = tail call double @llvm.fmuladd.f64(double %201, double 0xBFF48831FA6C7040, double %788)
  %790 = tail call double @llvm.fmuladd.f64(double %203, double 0x3FC901A35D55DB91, double %789)
  %791 = tail call double @llvm.fmuladd.f64(double %205, double 0x3FF0AF85DD8BD41B, double %790)
  %792 = tail call double @llvm.fmuladd.f64(double %207, double 0x3C818885A14EAAEF, double %791)
  %793 = tail call double @llvm.fmuladd.f64(double %209, double 0x3CA1FE8D3E4F0FDA, double %792)
  %794 = tail call double @llvm.fmuladd.f64(double %211, double 0x3CC2430B423E38F7, double %793)
  %795 = tail call double @llvm.fmuladd.f64(double %213, double 0xBCA2669FC3A56863, double %794)
  %796 = tail call double @llvm.fmuladd.f64(double %215, double 0xBCBED2A4B49E79D0, double %795)
  %797 = tail call double @llvm.fmuladd.f64(double %217, double 0xBCB8150AF40905ED, double %796)
  %798 = tail call double @llvm.fmuladd.f64(double %219, double 0xBCE88765A1B41E6C, double %797)
  %799 = tail call double @llvm.fmuladd.f64(double %221, double 0x3CC9C6E177DE0848, double %798)
  %800 = tail call double @llvm.fmuladd.f64(double %223, double 0xBCE7A765A1B41E6C, double %799)
  %801 = tail call double @llvm.fmuladd.f64(double %225, double 0xBCE0F6FD1753B0C4, double %800)
  %802 = tail call double @llvm.fmuladd.f64(double %227, double 0xBFF9D1E43E6CC191, double %801)
  %803 = tail call double @llvm.fmuladd.f64(double %229, double 0xBCE5F2686842D7DB, double %802)
  %804 = tail call double @llvm.fmuladd.f64(double %231, double 0xBC51BD5908653595, double %803)
  %805 = tail call double @llvm.fmuladd.f64(double %233, double 0xBC3A014D32C335D8, double %804)
  %806 = tail call double @llvm.fmuladd.f64(double %235, double 0xBC3A014D32C32FB8, double %805)
  %807 = tail call double @llvm.fmuladd.f64(double %237, double 0xBC893816E5BE808E, double %806)
  %808 = tail call double @llvm.fmuladd.f64(double %239, double 0x3C543F5B67DD6915, double %807)
  %809 = tail call double @llvm.fmuladd.f64(double %241, double 0x3C543F5B67DD6BB1, double %808)
  %810 = tail call double @llvm.fmuladd.f64(double %243, double 0x3CE88765A1B41E6E, double %809)
  %811 = tail call double @llvm.fmuladd.f64(double %245, double 0xBCC9C6E177DE0849, double %810)
  %812 = tail call double @llvm.fmuladd.f64(double %247, double 0x3CE7D765A1B41E6B, double %811)
  %813 = tail call double @llvm.fmuladd.f64(double %249, double 0x3CE0F6FD1753B0C4, double %812)
  %814 = tail call double @llvm.fmuladd.f64(double %251, double 0x3FF9D1E43E6CC191, double %813)
  %815 = tail call double @llvm.fmuladd.f64(double %253, double 0x3CE5F2686842D7DB, double %814)
  %gep3115 = getelementptr double, ptr %invariant.gep3114, i64 %indvars.iv
  %816 = load double, ptr %gep3115, align 8, !tbaa !5
  %817 = fadd double %815, %816
  store double %817, ptr %gep3115, align 8, !tbaa !5
  %818 = fmul double %148, 0xBC96A2CCF69409BE
  %819 = tail call double @llvm.fmuladd.f64(double %147, double 0x3CC142F4E7497170, double %818)
  %820 = tail call double @llvm.fmuladd.f64(double %151, double 0xBC9AEA168BAD2F82, double %819)
  %821 = tail call double @llvm.fmuladd.f64(double %153, double 0xBC9B499410BBCC84, double %820)
  %822 = tail call double @llvm.fmuladd.f64(double %155, double 0xBC9361418ADB00D8, double %821)
  %823 = tail call double @llvm.fmuladd.f64(double %157, double 0x3CB01F9D52D3749E, double %822)
  %824 = tail call double @llvm.fmuladd.f64(double %159, double 0xBFF5B6F7089FF1D1, double %823)
  %825 = tail call double @llvm.fmuladd.f64(double %161, double 0x3FB1F3F0B024DC88, double %824)
  %826 = tail call double @llvm.fmuladd.f64(double %163, double 0x3FCCBE3CAE6B6280, double %825)
  %827 = tail call double @llvm.fmuladd.f64(double %165, double 0xBFD81F8F0CEC6101, double %826)
  %828 = tail call double @llvm.fmuladd.f64(double %167, double 0xBFFBA497A89943F3, double %827)
  %829 = tail call double @llvm.fmuladd.f64(double %169, double 0xBFDC5366E211BEB0, double %828)
  %830 = tail call double @llvm.fmuladd.f64(double %171, double 0x3CB1A32FABA58A76, double %829)
  %831 = tail call double @llvm.fmuladd.f64(double %173, double 0x3C6B240942E84E45, double %830)
  %832 = tail call double @llvm.fmuladd.f64(double %175, double 0xBC8360FD77DF0E50, double %831)
  %833 = tail call double @llvm.fmuladd.f64(double %177, double 0x3C78F6BBF1F42F79, double %832)
  %834 = tail call double @llvm.fmuladd.f64(double %179, double 0xBCBB0F3A92259EB9, double %833)
  %835 = tail call double @llvm.fmuladd.f64(double %181, double 0xBCB8BFEEB1A15858, double %834)
  %836 = tail call double @llvm.fmuladd.f64(double %183, double 0x3CA01AC45D3C9868, double %835)
  %837 = tail call double @llvm.fmuladd.f64(double %185, double 0xBC6ACDF6528B4733, double %836)
  %838 = tail call double @llvm.fmuladd.f64(double %187, double 0xBC7F9F89179EC45D, double %837)
  %839 = tail call double @llvm.fmuladd.f64(double %189, double 0xBCB6B022413F9937, double %838)
  %840 = tail call double @llvm.fmuladd.f64(double %191, double 0xBCB0BCDE936FEEC4, double %839)
  %841 = tail call double @llvm.fmuladd.f64(double %193, double 0x3CB1A9F3F895A70E, double %840)
  %842 = tail call double @llvm.fmuladd.f64(double %195, double 0x3FB1F3F0B024DC70, double %841)
  %843 = tail call double @llvm.fmuladd.f64(double %197, double 0xBFF5B6F7089FF1D6, double %842)
  %844 = tail call double @llvm.fmuladd.f64(double %199, double 0x3FCCBE3CAE6B6264, double %843)
  %845 = tail call double @llvm.fmuladd.f64(double %201, double 0xBFFBA497A89943F8, double %844)
  %846 = tail call double @llvm.fmuladd.f64(double %203, double 0xBFD81F8F0CEC60FB, double %845)
  %847 = tail call double @llvm.fmuladd.f64(double %205, double 0xBFDC5366E211BEA9, double %846)
  %848 = tail call double @llvm.fmuladd.f64(double %207, double 0xBCB87AF4AD8F6C4F, double %847)
  %849 = tail call double @llvm.fmuladd.f64(double %209, double 0x3CB12455A0EA2ADF, double %848)
  %850 = tail call double @llvm.fmuladd.f64(double %211, double 0xBCB257D19C776B7D, double %849)
  %851 = tail call double @llvm.fmuladd.f64(double %213, double 0x3C87C5793620E509, double %850)
  %852 = tail call double @llvm.fmuladd.f64(double %215, double 0xBCAEB022802087A0, double %851)
  %853 = tail call double @llvm.fmuladd.f64(double %217, double 0x3CB19E5F3488CFDF, double %852)
  %854 = tail call double @llvm.fmuladd.f64(double %219, double 0xBCEC1765A1B41E67, double %853)
  %855 = tail call double @llvm.fmuladd.f64(double %221, double 0xBCEA1F44973E98E1, double %854)
  %856 = tail call double @llvm.fmuladd.f64(double %223, double 0x3CCD2B9C9C6443CA, double %855)
  %857 = tail call double @llvm.fmuladd.f64(double %225, double 0xBCE3341B5B3A7CDC, double %856)
  %858 = tail call double @llvm.fmuladd.f64(double %227, double 0xBCE21D6B2ED19149, double %857)
  %859 = tail call double @llvm.fmuladd.f64(double %229, double 0xBFF9D1E43E6CC191, double %858)
  %860 = tail call double @llvm.fmuladd.f64(double %231, double 0xBC82AD66CB5FD83B, double %859)
  %861 = tail call double @llvm.fmuladd.f64(double %233, double 0xBC89EF0795AEA22C, double %860)
  %862 = tail call double @llvm.fmuladd.f64(double %235, double 0xBC4EF0795AEA232E, double %861)
  %863 = tail call double @llvm.fmuladd.f64(double %237, double 0xBC5646AD27501978, double %862)
  %864 = tail call double @llvm.fmuladd.f64(double %239, double 0x3C6AA897374E4045, double %863)
  %865 = tail call double @llvm.fmuladd.f64(double %241, double 0x3C6AA897374E4018, double %864)
  %866 = tail call double @llvm.fmuladd.f64(double %243, double 0x3CEC4765A1B41E6A, double %865)
  %867 = tail call double @llvm.fmuladd.f64(double %245, double 0x3CEA7F44973E98E0, double %866)
  %868 = tail call double @llvm.fmuladd.f64(double %247, double 0xBCCD2B9C9C6443C9, double %867)
  %869 = tail call double @llvm.fmuladd.f64(double %249, double 0x3CE3341B5B3A7CDE, double %868)
  %870 = tail call double @llvm.fmuladd.f64(double %251, double 0x3CE21D6B2ED1914C, double %869)
  %871 = tail call double @llvm.fmuladd.f64(double %253, double 0x3FF9D1E43E6CC191, double %870)
  %gep3117 = getelementptr double, ptr %invariant.gep3116, i64 %indvars.iv
  %872 = load double, ptr %gep3117, align 8, !tbaa !5
  %873 = fadd double %871, %872
  store double %873, ptr %gep3117, align 8, !tbaa !5
  %874 = fmul double %148, 0xBC7F9D13F6DD91DF
  %875 = tail call double @llvm.fmuladd.f64(double %147, double 0xBCB03C43C4268C9B, double %874)
  %876 = tail call double @llvm.fmuladd.f64(double %151, double 0xBCAE0044D82B3E00, double %875)
  %877 = tail call double @llvm.fmuladd.f64(double %153, double 0x3C9CFE906EE8F2E9, double %876)
  %878 = tail call double @llvm.fmuladd.f64(double %155, double 0x3CC1A93DAC5952FC, double %877)
  %879 = tail call double @llvm.fmuladd.f64(double %157, double 0x3CB1B04DFFDDEE40, double %878)
  %880 = tail call double @llvm.fmuladd.f64(double %159, double 0xBCA11EF521EB7066, double %879)
  %881 = tail call double @llvm.fmuladd.f64(double %161, double 0xBC94747CFD612BD0, double %880)
  %882 = tail call double @llvm.fmuladd.f64(double %163, double 0x3CA061EEC0843748, double %881)
  %883 = tail call double @llvm.fmuladd.f64(double %165, double 0x3C8B21BA101B7AB2, double %882)
  %884 = tail call double @llvm.fmuladd.f64(double %167, double 0xBCBBF3FEED1E8544, double %883)
  %885 = tail call double @llvm.fmuladd.f64(double %169, double 0x3CB871266AD31A71, double %884)
  %886 = tail call double @llvm.fmuladd.f64(double %171, double 0x3FF44E3F94172F46, double %885)
  %887 = tail call double @llvm.fmuladd.f64(double %173, double 0xBF7DFA2300BBB400, double %886)
  %888 = tail call double @llvm.fmuladd.f64(double %175, double 0x3FB9ECDD9812788E, double %887)
  %889 = tail call double @llvm.fmuladd.f64(double %177, double 0xBF83952FC55A702F, double %888)
  %890 = tail call double @llvm.fmuladd.f64(double %179, double 0xBFE4FBED5D8A9668, double %889)
  %891 = tail call double @llvm.fmuladd.f64(double %181, double 0x3FD50884576D0BB8, double %890)
  %892 = tail call double @llvm.fmuladd.f64(double %183, double 0x3CA77C1E26AD07FB, double %891)
  %893 = tail call double @llvm.fmuladd.f64(double %185, double 0x3C93A7C0E4AC7A5E, double %892)
  %894 = tail call double @llvm.fmuladd.f64(double %187, double 0xBCB48923F82EA691, double %893)
  %895 = tail call double @llvm.fmuladd.f64(double %189, double 0x3CB2EF2E61697A4B, double %894)
  %896 = tail call double @llvm.fmuladd.f64(double %191, double 0xBC799BC4C2A33F77, double %895)
  %897 = tail call double @llvm.fmuladd.f64(double %193, double 0xBC7C5EE298468650, double %896)
  %898 = tail call double @llvm.fmuladd.f64(double %195, double 0x3CB0F9118CF9AD5E, double %897)
  %899 = tail call double @llvm.fmuladd.f64(double %197, double 0xBC9C6D9C52EC041A, double %898)
  %900 = tail call double @llvm.fmuladd.f64(double %199, double 0xBC814C8EF8381536, double %899)
  %901 = tail call double @llvm.fmuladd.f64(double %201, double 0xBC76355C6A0A6D53, double %900)
  %902 = tail call double @llvm.fmuladd.f64(double %203, double 0x3C61B8141832C040, double %901)
  %903 = tail call double @llvm.fmuladd.f64(double %205, double 0xBC8B1A3C6A1C6E73, double %902)
  %904 = tail call double @llvm.fmuladd.f64(double %207, double 0xBFE8AC73392375D0, double %903)
  %905 = tail call double @llvm.fmuladd.f64(double %209, double 0x3FE4EDE8EE256113, double %904)
  %906 = tail call double @llvm.fmuladd.f64(double %211, double 0x3FEA5488770B26BF, double %905)
  %907 = tail call double @llvm.fmuladd.f64(double %213, double 0x3FF44CD742FC94E8, double %906)
  %908 = tail call double @llvm.fmuladd.f64(double %215, double 0xBFFEF1F8514C97DD, double %907)
  %909 = tail call double @llvm.fmuladd.f64(double %217, double 0xBFF01B2FE70C1193, double %908)
  %910 = tail call double @llvm.fmuladd.f64(double %219, double 0x3FE4A7E9CB8A3494, double %909)
  %911 = tail call double @llvm.fmuladd.f64(double %221, double 0x3CA83DE51DC0E6B1, double %910)
  %912 = tail call double @llvm.fmuladd.f64(double %223, double 0xBC9E34622D69C982, double %911)
  %913 = tail call double @llvm.fmuladd.f64(double %225, double 0xBCAE8A2AE854D513, double %912)
  %914 = tail call double @llvm.fmuladd.f64(double %227, double 0x3CB09A426D1ADB3A, double %913)
  %915 = tail call double @llvm.fmuladd.f64(double %229, double 0x3CC33662C674E1E4, double %914)
  %916 = tail call double @llvm.fmuladd.f64(double %231, double 0xBFF08654A2D4F756, double %915)
  %917 = tail call double @llvm.fmuladd.f64(double %233, double 0xBCF4E04E2DCDEC57, double %916)
  %918 = tail call double @llvm.fmuladd.f64(double %235, double 0xBCF3AAAAAAAAAAAB, double %917)
  %919 = tail call double @llvm.fmuladd.f64(double %237, double 0xBCE72AAAAAAAAAA8, double %918)
  %920 = tail call double @llvm.fmuladd.f64(double %239, double 0x3D043F63A4642756, double %919)
  %921 = tail call double @llvm.fmuladd.f64(double %241, double 0x3D0394B8F9B97CA9, double %920)
  %922 = tail call double @llvm.fmuladd.f64(double %243, double 0xBFFEFBDEB14F4DAA, double %921)
  %923 = tail call double @llvm.fmuladd.f64(double %245, double 0x3D09B45DC0DE51B8, double %922)
  %924 = tail call double @llvm.fmuladd.f64(double %247, double 0x3D08D1BE19B028E3, double %923)
  %925 = tail call double @llvm.fmuladd.f64(double %249, double 0x3CFE5F4A2FBB3DAA, double %924)
  %926 = tail call double @llvm.fmuladd.f64(double %251, double 0xBD1A2CB1FB1DAEB0, double %925)
  %927 = tail call double @llvm.fmuladd.f64(double %253, double 0xBD19BC0F93106564, double %926)
  %gep3119 = getelementptr double, ptr %invariant.gep3118, i64 %indvars.iv
  %928 = load double, ptr %gep3119, align 8, !tbaa !5
  %929 = fadd double %927, %928
  store double %929, ptr %gep3119, align 8, !tbaa !5
  %930 = fmul double %148, 0xBCADA2825B7E90BA
  %931 = tail call double @llvm.fmuladd.f64(double %147, double 0x3CBF38A0435C33EF, double %930)
  %932 = tail call double @llvm.fmuladd.f64(double %151, double 0xBCBCECD5C475FFF5, double %931)
  %933 = tail call double @llvm.fmuladd.f64(double %153, double 0x3C7C7B20A14EC091, double %932)
  %934 = tail call double @llvm.fmuladd.f64(double %155, double 0xBCAC7CF2FBE4989E, double %933)
  %935 = tail call double @llvm.fmuladd.f64(double %157, double 0xBCBCA248A7C7FDDE, double %934)
  %936 = tail call double @llvm.fmuladd.f64(double %159, double 0xBC96AF31F1A1F8A3, double %935)
  %937 = tail call double @llvm.fmuladd.f64(double %161, double 0x3CBEB0BE4F96FAE5, double %936)
  %938 = tail call double @llvm.fmuladd.f64(double %163, double 0x3C84693BAEDA743C, double %937)
  %939 = tail call double @llvm.fmuladd.f64(double %165, double 0xBCB3ACD3D4ADCCB0, double %938)
  %940 = tail call double @llvm.fmuladd.f64(double %167, double 0x3CBD77D82F675FE2, double %939)
  %941 = tail call double @llvm.fmuladd.f64(double %169, double 0xBC87B94EDD358738, double %940)
  %942 = tail call double @llvm.fmuladd.f64(double %171, double 0x3FE4EDE8EE256108, double %941)
  %943 = tail call double @llvm.fmuladd.f64(double %173, double 0xBFE8AC73392375C8, double %942)
  %944 = tail call double @llvm.fmuladd.f64(double %175, double 0x3FEA5488770B26A9, double %943)
  %945 = tail call double @llvm.fmuladd.f64(double %177, double 0xBFFEF1F8514C97D0, double %944)
  %946 = tail call double @llvm.fmuladd.f64(double %179, double 0x3FF44CD742FC94DA, double %945)
  %947 = tail call double @llvm.fmuladd.f64(double %181, double 0xBFF01B2FE70C118E, double %946)
  %948 = tail call double @llvm.fmuladd.f64(double %183, double 0x3C8C175CC3AC3DA0, double %947)
  %949 = tail call double @llvm.fmuladd.f64(double %185, double 0x3CC7A90CBDB122D2, double %948)
  %950 = tail call double @llvm.fmuladd.f64(double %187, double 0xBCC511D8384A1A55, double %949)
  %951 = tail call double @llvm.fmuladd.f64(double %189, double 0x3CAADBF51C371479, double %950)
  %952 = tail call double @llvm.fmuladd.f64(double %191, double 0x3CA4D75F1529F75A, double %951)
  %953 = tail call double @llvm.fmuladd.f64(double %193, double 0xBCB8F2F00581C5B3, double %952)
  %954 = tail call double @llvm.fmuladd.f64(double %195, double 0x3CB256380966451A, double %953)
  %955 = tail call double @llvm.fmuladd.f64(double %197, double 0x3CC01E6C16082D55, double %954)
  %956 = tail call double @llvm.fmuladd.f64(double %199, double 0x3CAA303E978A5038, double %955)
  %957 = tail call double @llvm.fmuladd.f64(double %201, double 0x3CAC5EADE484449F, double %956)
  %958 = tail call double @llvm.fmuladd.f64(double %203, double 0x3CAC4A69A26D89C3, double %957)
  %959 = tail call double @llvm.fmuladd.f64(double %205, double 0x3C839062B03D962B, double %958)
  %960 = tail call double @llvm.fmuladd.f64(double %207, double 0xBF7DFA2300BBB200, double %959)
  %961 = tail call double @llvm.fmuladd.f64(double %209, double 0x3FF44E3F94172F46, double %960)
  %962 = tail call double @llvm.fmuladd.f64(double %211, double 0x3FB9ECDD981278FA, double %961)
  %963 = tail call double @llvm.fmuladd.f64(double %213, double 0xBFE4FBED5D8A9650, double %962)
  %964 = tail call double @llvm.fmuladd.f64(double %215, double 0xBF83952FC55A7390, double %963)
  %965 = tail call double @llvm.fmuladd.f64(double %217, double 0x3FD50884576D0BB0, double %964)
  %966 = tail call double @llvm.fmuladd.f64(double %219, double 0x3CA9156DC73A81A0, double %965)
  %967 = tail call double @llvm.fmuladd.f64(double %221, double 0x3FE4A7E9CB8A349B, double %966)
  %968 = tail call double @llvm.fmuladd.f64(double %223, double 0x3CB3ED7C18573421, double %967)
  %969 = tail call double @llvm.fmuladd.f64(double %225, double 0x3C7273617E940A5F, double %968)
  %970 = tail call double @llvm.fmuladd.f64(double %227, double 0xBC8999CF078525B6, double %969)
  %971 = tail call double @llvm.fmuladd.f64(double %229, double 0xBCB71018CCDEBB81, double %970)
  %972 = tail call double @llvm.fmuladd.f64(double %231, double 0xBCF414B8F9B97CAA, double %971)
  %973 = tail call double @llvm.fmuladd.f64(double %233, double 0xBFF08654A2D4F75B, double %972)
  %974 = tail call double @llvm.fmuladd.f64(double %235, double 0xBCF39AF8D8789700, double %973)
  %975 = tail call double @llvm.fmuladd.f64(double %237, double 0x3D05A83AA25A713E, double %974)
  %976 = tail call double @llvm.fmuladd.f64(double %239, double 0xBCE7EC7FBD7E34A3, double %975)
  %977 = tail call double @llvm.fmuladd.f64(double %241, double 0x3D055F1576963AFE, double %976)
  %978 = tail call double @llvm.fmuladd.f64(double %243, double 0x3D06F41F8D97F877, double %977)
  %979 = tail call double @llvm.fmuladd.f64(double %245, double 0xBFFEFBDEB14F4D98, double %978)
  %980 = tail call double @llvm.fmuladd.f64(double %247, double 0x3D0823B40E9CD388, double %979)
  %981 = tail call double @llvm.fmuladd.f64(double %249, double 0xBD1BAA230A55AE0F, double %980)
  %982 = tail call double @llvm.fmuladd.f64(double %251, double 0x3CFCCEA1BB3C83CA, double %981)
  %983 = tail call double @llvm.fmuladd.f64(double %253, double 0xBD19F767A944DB32, double %982)
  %gep3121 = getelementptr double, ptr %invariant.gep3120, i64 %indvars.iv
  %984 = load double, ptr %gep3121, align 8, !tbaa !5
  %985 = fadd double %983, %984
  store double %985, ptr %gep3121, align 8, !tbaa !5
  %986 = fmul double %148, 0x3CC0A43BB8778AD2
  %987 = tail call double @llvm.fmuladd.f64(double %147, double 0x3CC1A7951F32AFEF, double %986)
  %988 = tail call double @llvm.fmuladd.f64(double %151, double 0x3CD8A0EBF8B34D44, double %987)
  %989 = tail call double @llvm.fmuladd.f64(double %153, double 0x3CBA5323016547EC, double %988)
  %990 = tail call double @llvm.fmuladd.f64(double %155, double 0x3CA05AC5DCA571DC, double %989)
  %991 = tail call double @llvm.fmuladd.f64(double %157, double 0xBCB0EC52293F1982, double %990)
  %992 = tail call double @llvm.fmuladd.f64(double %159, double 0x3C88BB0D274B4D20, double %991)
  %993 = tail call double @llvm.fmuladd.f64(double %161, double 0xBCA88EEBBA111342, double %992)
  %994 = tail call double @llvm.fmuladd.f64(double %163, double 0xBCAAA314368C77EA, double %993)
  %995 = tail call double @llvm.fmuladd.f64(double %165, double 0xBC89A9C06842F0CE, double %994)
  %996 = tail call double @llvm.fmuladd.f64(double %167, double 0x3CC01B0CEED92744, double %995)
  %997 = tail call double @llvm.fmuladd.f64(double %169, double 0xBCBAAB90AFB5926F, double %996)
  %998 = tail call double @llvm.fmuladd.f64(double %171, double 0xBFE1EC4181248AE8, double %997)
  %999 = tail call double @llvm.fmuladd.f64(double %173, double 0xBFDFFE63E2851784, double %998)
  %1000 = tail call double @llvm.fmuladd.f64(double %175, double 0x4000E9CE75C2FBF8, double %999)
  %1001 = tail call double @llvm.fmuladd.f64(double %177, double 0x3FF31D88B253B07F, double %1000)
  %1002 = tail call double @llvm.fmuladd.f64(double %179, double 0x3FF2343957F3A8AA, double %1001)
  %1003 = tail call double @llvm.fmuladd.f64(double %181, double 0xBFEE712F1EF7D88A, double %1002)
  %1004 = tail call double @llvm.fmuladd.f64(double %183, double 0x3CC3A3AFB95FF4E5, double %1003)
  %1005 = tail call double @llvm.fmuladd.f64(double %185, double 0xBCA27EC01785587C, double %1004)
  %1006 = tail call double @llvm.fmuladd.f64(double %187, double 0x3CD54F70D2EB9A18, double %1005)
  %1007 = tail call double @llvm.fmuladd.f64(double %189, double 0x3CABF738548B48D5, double %1006)
  %1008 = tail call double @llvm.fmuladd.f64(double %191, double 0xBCCFEC3A2A4C4C78, double %1007)
  %1009 = tail call double @llvm.fmuladd.f64(double %193, double 0x3C932E31FBD492C0, double %1008)
  %1010 = tail call double @llvm.fmuladd.f64(double %195, double 0x3CA535998BAB6E00, double %1009)
  %1011 = tail call double @llvm.fmuladd.f64(double %197, double 0x3C6197D309C7AB36, double %1010)
  %1012 = tail call double @llvm.fmuladd.f64(double %199, double 0xBCA84349E84D9D73, double %1011)
  %1013 = tail call double @llvm.fmuladd.f64(double %201, double 0x3CA4C44C023F42CC, double %1012)
  %1014 = tail call double @llvm.fmuladd.f64(double %203, double 0x3CCE4E90983F720B, double %1013)
  %1015 = tail call double @llvm.fmuladd.f64(double %205, double 0xBCBC38460D0EF925, double %1014)
  %1016 = tail call double @llvm.fmuladd.f64(double %207, double 0xBFDFFE63E285176B, double %1015)
  %1017 = tail call double @llvm.fmuladd.f64(double %209, double 0xBFE1EC4181248AE3, double %1016)
  %1018 = tail call double @llvm.fmuladd.f64(double %211, double 0x4000E9CE75C2FBF6, double %1017)
  %1019 = tail call double @llvm.fmuladd.f64(double %213, double 0x3FF2343957F3A8AF, double %1018)
  %1020 = tail call double @llvm.fmuladd.f64(double %215, double 0x3FF31D88B253B07F, double %1019)
  %1021 = tail call double @llvm.fmuladd.f64(double %217, double 0xBFEE712F1EF7D894, double %1020)
  %1022 = tail call double @llvm.fmuladd.f64(double %219, double 0xBC774AA3B009835F, double %1021)
  %1023 = tail call double @llvm.fmuladd.f64(double %221, double 0x3CB18F99C07C05C8, double %1022)
  %1024 = tail call double @llvm.fmuladd.f64(double %223, double 0x3FE4A7E9CB8A3498, double %1023)
  %1025 = tail call double @llvm.fmuladd.f64(double %225, double 0x3CA9FD38292DDC9B, double %1024)
  %1026 = tail call double @llvm.fmuladd.f64(double %227, double 0xBCB9E61E59FC2E99, double %1025)
  %1027 = tail call double @llvm.fmuladd.f64(double %229, double 0xBCB0C7261B82C350, double %1026)
  %1028 = tail call double @llvm.fmuladd.f64(double %231, double 0xBCF48A8393C3B480, double %1027)
  %1029 = tail call double @llvm.fmuladd.f64(double %233, double 0xBCF2549348F1AFC0, double %1028)
  %1030 = tail call double @llvm.fmuladd.f64(double %235, double 0xBFF08654A2D4F75B, double %1029)
  %1031 = tail call double @llvm.fmuladd.f64(double %237, double 0x3D0538138B737B15, double %1030)
  %1032 = tail call double @llvm.fmuladd.f64(double %239, double 0x3D05852E3E6E5F29, double %1031)
  %1033 = tail call double @llvm.fmuladd.f64(double %241, double 0xBCE197C6C3C4B802, double %1032)
  %1034 = tail call double @llvm.fmuladd.f64(double %243, double 0x3D09319702C932C5, double %1033)
  %1035 = tail call double @llvm.fmuladd.f64(double %245, double 0x3D08453A4092DC8E, double %1034)
  %1036 = tail call double @llvm.fmuladd.f64(double %247, double 0xBFFEFBDEB14F4D98, double %1035)
  %1037 = tail call double @llvm.fmuladd.f64(double %249, double 0xBD1B7FE6E4DEE0A3, double %1036)
  %1038 = tail call double @llvm.fmuladd.f64(double %251, double 0xBD1AB13DD17EC493, double %1037)
  %1039 = tail call double @llvm.fmuladd.f64(double %253, double 0x3CF9E39CC9E10B88, double %1038)
  %gep3123 = getelementptr double, ptr %invariant.gep3122, i64 %indvars.iv
  %1040 = load double, ptr %gep3123, align 8, !tbaa !5
  %1041 = fadd double %1039, %1040
  store double %1041, ptr %gep3123, align 8, !tbaa !5
  %1042 = fmul double %148, 0xBC9A042DA3AAA0F4
  %1043 = tail call double @llvm.fmuladd.f64(double %147, double 0xBCBAF68F816ED6D4, double %1042)
  %1044 = tail call double @llvm.fmuladd.f64(double %151, double 0xBCBD577C538DDA63, double %1043)
  %1045 = tail call double @llvm.fmuladd.f64(double %153, double 0xBC9E271992FB8E50, double %1044)
  %1046 = tail call double @llvm.fmuladd.f64(double %155, double 0x3C93D6FC900E3496, double %1045)
  %1047 = tail call double @llvm.fmuladd.f64(double %157, double 0x3CC029CF9720BC60, double %1046)
  %1048 = tail call double @llvm.fmuladd.f64(double %159, double 0xBC8797292B4C1941, double %1047)
  %1049 = tail call double @llvm.fmuladd.f64(double %161, double 0x3C92F08ACDCBF794, double %1048)
  %1050 = tail call double @llvm.fmuladd.f64(double %163, double 0x3CA6B48868965AE6, double %1049)
  %1051 = tail call double @llvm.fmuladd.f64(double %165, double 0x3CA926ECE93029A9, double %1050)
  %1052 = tail call double @llvm.fmuladd.f64(double %167, double 0xBCB24490C3AF2293, double %1051)
  %1053 = tail call double @llvm.fmuladd.f64(double %169, double 0x3C94D23BA9623EA9, double %1052)
  %1054 = tail call double @llvm.fmuladd.f64(double %171, double 0xBF734721512AF07C, double %1053)
  %1055 = tail call double @llvm.fmuladd.f64(double %173, double 0x3FF21EFA862DF3DE, double %1054)
  %1056 = tail call double @llvm.fmuladd.f64(double %175, double 0xBFF7F19EB1BA88F8, double %1055)
  %1057 = tail call double @llvm.fmuladd.f64(double %177, double 0x3FC901A35D55DB53, double %1056)
  %1058 = tail call double @llvm.fmuladd.f64(double %179, double 0xBFF48831FA6C703B, double %1057)
  %1059 = tail call double @llvm.fmuladd.f64(double %181, double 0x3FF0AF85DD8BD416, double %1058)
  %1060 = tail call double @llvm.fmuladd.f64(double %183, double 0xBCB2A04E51D66FCE, double %1059)
  %1061 = tail call double @llvm.fmuladd.f64(double %185, double 0xBC7865999DB92F51, double %1060)
  %1062 = tail call double @llvm.fmuladd.f64(double %187, double 0x3C88B903F6BC17E8, double %1061)
  %1063 = tail call double @llvm.fmuladd.f64(double %189, double 0x3CC55C346E604B2A, double %1062)
  %1064 = tail call double @llvm.fmuladd.f64(double %191, double 0xBC997FE57E87E294, double %1063)
  %1065 = tail call double @llvm.fmuladd.f64(double %193, double 0xBC892C4067E5CCE7, double %1064)
  %1066 = tail call double @llvm.fmuladd.f64(double %195, double 0x3C9195CCC6FDDC34, double %1065)
  %1067 = tail call double @llvm.fmuladd.f64(double %197, double 0x3C90C2BEA1BFB3F8, double %1066)
  %1068 = tail call double @llvm.fmuladd.f64(double %199, double 0xBC83C8973FFE3109, double %1067)
  %1069 = tail call double @llvm.fmuladd.f64(double %201, double 0x3CA202E0ECF2957E, double %1068)
  %1070 = tail call double @llvm.fmuladd.f64(double %203, double 0xBC9E71BA1E232157, double %1069)
  %1071 = tail call double @llvm.fmuladd.f64(double %205, double 0xBC7C542BFA7534B8, double %1070)
  %1072 = tail call double @llvm.fmuladd.f64(double %207, double 0xBFB17C71DD2D5160, double %1071)
  %1073 = tail call double @llvm.fmuladd.f64(double %209, double 0x3FF3237A82AF9ED0, double %1072)
  %1074 = tail call double @llvm.fmuladd.f64(double %211, double 0xBF76E8A1969E6B00, double %1073)
  %1075 = tail call double @llvm.fmuladd.f64(double %213, double 0x3FFBC4AD9C53A55A, double %1074)
  %1076 = tail call double @llvm.fmuladd.f64(double %215, double 0x3FC179BD32D3DC68, double %1075)
  %1077 = tail call double @llvm.fmuladd.f64(double %217, double 0x3FF1CA3B98F4942B, double %1076)
  %1078 = tail call double @llvm.fmuladd.f64(double %219, double 0x3C80AA02FA4803A4, double %1077)
  %1079 = tail call double @llvm.fmuladd.f64(double %221, double 0xBCC12CAB67834A70, double %1078)
  %1080 = tail call double @llvm.fmuladd.f64(double %223, double 0xBCC3D0AC662B45FE, double %1079)
  %1081 = tail call double @llvm.fmuladd.f64(double %225, double 0x3FE4A7E9CB8A3492, double %1080)
  %1082 = tail call double @llvm.fmuladd.f64(double %227, double 0x3CA52C6631B8F77F, double %1081)
  %1083 = tail call double @llvm.fmuladd.f64(double %229, double 0x3C9E24E98A05E9A1, double %1082)
  %1084 = tail call double @llvm.fmuladd.f64(double %231, double 0xBCDA7F1576963AFB, double %1083)
  %1085 = tail call double @llvm.fmuladd.f64(double %233, double 0x3CF4F52E3E6E5F2F, double %1084)
  %1086 = tail call double @llvm.fmuladd.f64(double %235, double 0x3CF55B6CB70E5048, double %1085)
  %1087 = tail call double @llvm.fmuladd.f64(double %237, double 0xBFF08654A2D4F717, double %1086)
  %1088 = tail call double @llvm.fmuladd.f64(double %239, double 0x3CEFF3CE704FB7B1, double %1087)
  %1089 = tail call double @llvm.fmuladd.f64(double %241, double 0x3CEF146ACBEB905B, double %1088)
  %1090 = tail call double @llvm.fmuladd.f64(double %243, double 0x3CEC2EB7C235876B, double %1089)
  %1091 = tail call double @llvm.fmuladd.f64(double %245, double 0xBD09EA15B3B00878, double %1090)
  %1092 = tail call double @llvm.fmuladd.f64(double %247, double 0xBD0A5870F2CA0280, double %1091)
  %1093 = tail call double @llvm.fmuladd.f64(double %249, double 0xBFFEFBDEB14F4E48, double %1092)
  %1094 = tail call double @llvm.fmuladd.f64(double %251, double 0xBD043059A53F3A02, double %1093)
  %1095 = tail call double @llvm.fmuladd.f64(double %253, double 0xBD03454734E1B74C, double %1094)
  %gep3125 = getelementptr double, ptr %invariant.gep3124, i64 %indvars.iv
  %1096 = load double, ptr %gep3125, align 8, !tbaa !5
  %1097 = fadd double %1095, %1096
  store double %1097, ptr %gep3125, align 8, !tbaa !5
  %1098 = fmul double %148, 0xBC958B3DCEB03946
  %1099 = tail call double @llvm.fmuladd.f64(double %147, double 0xBCADB22B9651CF46, double %1098)
  %1100 = tail call double @llvm.fmuladd.f64(double %151, double 0x3C9ED9E1BC70CFE6, double %1099)
  %1101 = tail call double @llvm.fmuladd.f64(double %153, double 0xBC8826BEE25DF5B0, double %1100)
  %1102 = tail call double @llvm.fmuladd.f64(double %155, double 0x3CCBB1D94C3EA191, double %1101)
  %1103 = tail call double @llvm.fmuladd.f64(double %157, double 0xBC99F98308323544, double %1102)
  %1104 = tail call double @llvm.fmuladd.f64(double %159, double 0xBC81FCE005D2224B, double %1103)
  %1105 = tail call double @llvm.fmuladd.f64(double %161, double 0x3C94D6A0DAC57C7D, double %1104)
  %1106 = tail call double @llvm.fmuladd.f64(double %163, double 0xBC84E1D5E41DCEB7, double %1105)
  %1107 = tail call double @llvm.fmuladd.f64(double %165, double 0xBC92763F594C57B8, double %1106)
  %1108 = tail call double @llvm.fmuladd.f64(double %167, double 0x3CB1F86B771BE422, double %1107)
  %1109 = tail call double @llvm.fmuladd.f64(double %169, double 0xBCA63320C046EFE5, double %1108)
  %1110 = tail call double @llvm.fmuladd.f64(double %171, double 0x3FF3237A82AF9ECC, double %1109)
  %1111 = tail call double @llvm.fmuladd.f64(double %173, double 0xBFB17C71DD2D5180, double %1110)
  %1112 = tail call double @llvm.fmuladd.f64(double %175, double 0xBF76E8A1969E7200, double %1111)
  %1113 = tail call double @llvm.fmuladd.f64(double %177, double 0x3FC179BD32D3DC6F, double %1112)
  %1114 = tail call double @llvm.fmuladd.f64(double %179, double 0x3FFBC4AD9C53A55A, double %1113)
  %1115 = tail call double @llvm.fmuladd.f64(double %181, double 0x3FF1CA3B98F4942B, double %1114)
  %1116 = tail call double @llvm.fmuladd.f64(double %183, double 0xBCC1297A2A184282, double %1115)
  %1117 = tail call double @llvm.fmuladd.f64(double %185, double 0xBCA57F1A1B03E36B, double %1116)
  %1118 = tail call double @llvm.fmuladd.f64(double %187, double 0xBCB10C6112FA5C6E, double %1117)
  %1119 = tail call double @llvm.fmuladd.f64(double %189, double 0xBCBF0D117BE35C9F, double %1118)
  %1120 = tail call double @llvm.fmuladd.f64(double %191, double 0x3CBC248A09C9692D, double %1119)
  %1121 = tail call double @llvm.fmuladd.f64(double %193, double 0x3CBF98C60EE20B58, double %1120)
  %1122 = tail call double @llvm.fmuladd.f64(double %195, double 0xBC8722D375CED18B, double %1121)
  %1123 = tail call double @llvm.fmuladd.f64(double %197, double 0x3C928A15FB1A0DF3, double %1122)
  %1124 = tail call double @llvm.fmuladd.f64(double %199, double 0xBC6B200A12F0E6FE, double %1123)
  %1125 = tail call double @llvm.fmuladd.f64(double %201, double 0x3CB0B4EF81D0EBA9, double %1124)
  %1126 = tail call double @llvm.fmuladd.f64(double %203, double 0xBCA81B5AA73CEFCF, double %1125)
  %1127 = tail call double @llvm.fmuladd.f64(double %205, double 0xBC8CCF58EB146D39, double %1126)
  %1128 = tail call double @llvm.fmuladd.f64(double %207, double 0x3FF21EFA862DF3DA, double %1127)
  %1129 = tail call double @llvm.fmuladd.f64(double %209, double 0xBF734721512AF472, double %1128)
  %1130 = tail call double @llvm.fmuladd.f64(double %211, double 0xBFF7F19EB1BA88FC, double %1129)
  %1131 = tail call double @llvm.fmuladd.f64(double %213, double 0xBFF48831FA6C7040, double %1130)
  %1132 = tail call double @llvm.fmuladd.f64(double %215, double 0x3FC901A35D55DB89, double %1131)
  %1133 = tail call double @llvm.fmuladd.f64(double %217, double 0x3FF0AF85DD8BD416, double %1132)
  %1134 = tail call double @llvm.fmuladd.f64(double %219, double 0xBC7995F7A399077F, double %1133)
  %1135 = tail call double @llvm.fmuladd.f64(double %221, double 0x3CA641DE100CB2D1, double %1134)
  %1136 = tail call double @llvm.fmuladd.f64(double %223, double 0xBCB4F5312ABC6654, double %1135)
  %1137 = tail call double @llvm.fmuladd.f64(double %225, double 0xBC84CFA22413F23C, double %1136)
  %1138 = tail call double @llvm.fmuladd.f64(double %227, double 0x3FE4A7E9CB8A3497, double %1137)
  %1139 = tail call double @llvm.fmuladd.f64(double %229, double 0x3C71E70AAB141C80, double %1138)
  %1140 = tail call double @llvm.fmuladd.f64(double %231, double 0x3CF473CE704FB7AF, double %1139)
  %1141 = tail call double @llvm.fmuladd.f64(double %233, double 0xBCDC972A6828DF4A, double %1140)
  %1142 = tail call double @llvm.fmuladd.f64(double %235, double 0x3CF52443B5049A2F, double %1141)
  %1143 = tail call double @llvm.fmuladd.f64(double %237, double 0x3CECBEC748C84EAB, double %1142)
  %1144 = tail call double @llvm.fmuladd.f64(double %239, double 0xBFF08654A2D4F71C, double %1143)
  %1145 = tail call double @llvm.fmuladd.f64(double %241, double 0x3CF0EA0E4F0ED202, double %1144)
  %1146 = tail call double @llvm.fmuladd.f64(double %243, double 0xBD092AFA61D3C23C, double %1145)
  %1147 = tail call double @llvm.fmuladd.f64(double %245, double 0x3CF09E8D6B1B7310, double %1146)
  %1148 = tail call double @llvm.fmuladd.f64(double %247, double 0xBD090AB2F386DB23, double %1147)
  %1149 = tail call double @llvm.fmuladd.f64(double %249, double 0xBD01E5B3F19FA08F, double %1148)
  %1150 = tail call double @llvm.fmuladd.f64(double %251, double 0xBFFEFBDEB14F4E48, double %1149)
  %1151 = tail call double @llvm.fmuladd.f64(double %253, double 0xBD06A54AC5CD9F53, double %1150)
  %gep3127 = getelementptr double, ptr %invariant.gep3126, i64 %indvars.iv
  %1152 = load double, ptr %gep3127, align 8, !tbaa !5
  %1153 = fadd double %1151, %1152
  store double %1153, ptr %gep3127, align 8, !tbaa !5
  %1154 = fmul double %148, 0xBC90195309BD1B6C
  %1155 = tail call double @llvm.fmuladd.f64(double %147, double 0x3C91420C4C2992C8, double %1154)
  %1156 = tail call double @llvm.fmuladd.f64(double %151, double 0xBCB1596887C79338, double %1155)
  %1157 = tail call double @llvm.fmuladd.f64(double %153, double 0xBC95A4C76FC77AC0, double %1156)
  %1158 = tail call double @llvm.fmuladd.f64(double %155, double 0xBCA0A9E2E329FCA7, double %1157)
  %1159 = tail call double @llvm.fmuladd.f64(double %157, double 0xBC80C6561C6CD610, double %1158)
  %1160 = tail call double @llvm.fmuladd.f64(double %159, double 0xBC89201DA4BD28B6, double %1159)
  %1161 = tail call double @llvm.fmuladd.f64(double %161, double 0x3C950AD45332D6FF, double %1160)
  %1162 = tail call double @llvm.fmuladd.f64(double %163, double 0x3C9EB6F29C749A8E, double %1161)
  %1163 = tail call double @llvm.fmuladd.f64(double %165, double 0xBC6D62BACB4768AD, double %1162)
  %1164 = tail call double @llvm.fmuladd.f64(double %167, double 0x3CB80BBA9C9EA48C, double %1163)
  %1165 = tail call double @llvm.fmuladd.f64(double %169, double 0xBCAB0B98A91B667C, double %1164)
  %1166 = tail call double @llvm.fmuladd.f64(double %171, double 0xBFF5B6F7089FF1D1, double %1165)
  %1167 = tail call double @llvm.fmuladd.f64(double %173, double 0x3FB1F3F0B024DC80, double %1166)
  %1168 = tail call double @llvm.fmuladd.f64(double %175, double 0x3FCCBE3CAE6B6284, double %1167)
  %1169 = tail call double @llvm.fmuladd.f64(double %177, double 0xBFD81F8F0CEC6102, double %1168)
  %1170 = tail call double @llvm.fmuladd.f64(double %179, double 0xBFFBA497A89943F3, double %1169)
  %1171 = tail call double @llvm.fmuladd.f64(double %181, double 0xBFDC5366E211BEA3, double %1170)
  %1172 = tail call double @llvm.fmuladd.f64(double %183, double 0xBC8E7761343A95A0, double %1171)
  %1173 = tail call double @llvm.fmuladd.f64(double %185, double 0xBCA44D48F8869957, double %1172)
  %1174 = tail call double @llvm.fmuladd.f64(double %187, double 0xBC95C5CE8588C948, double %1173)
  %1175 = tail call double @llvm.fmuladd.f64(double %189, double 0xBCB82536F63F33EE, double %1174)
  %1176 = tail call double @llvm.fmuladd.f64(double %191, double 0x3CA6D94B54150D6E, double %1175)
  %1177 = tail call double @llvm.fmuladd.f64(double %193, double 0xBC86CA5E2A13EA01, double %1176)
  %1178 = tail call double @llvm.fmuladd.f64(double %195, double 0xBC8AA385F45F1E57, double %1177)
  %1179 = tail call double @llvm.fmuladd.f64(double %197, double 0xBCB2AACA2DE89BB0, double %1178)
  %1180 = tail call double @llvm.fmuladd.f64(double %199, double 0x3CA83B7215B2B95C, double %1179)
  %1181 = tail call double @llvm.fmuladd.f64(double %201, double 0x3C8FF091FC9CD2FD, double %1180)
  %1182 = tail call double @llvm.fmuladd.f64(double %203, double 0x3CB3BD521F494B8F, double %1181)
  %1183 = tail call double @llvm.fmuladd.f64(double %205, double 0xBCAFEB692A4A65D9, double %1182)
  %1184 = tail call double @llvm.fmuladd.f64(double %207, double 0x3FB1F3F0B024DC70, double %1183)
  %1185 = tail call double @llvm.fmuladd.f64(double %209, double 0xBFF5B6F7089FF1D6, double %1184)
  %1186 = tail call double @llvm.fmuladd.f64(double %211, double 0x3FCCBE3CAE6B6255, double %1185)
  %1187 = tail call double @llvm.fmuladd.f64(double %213, double 0xBFFBA497A89943F8, double %1186)
  %1188 = tail call double @llvm.fmuladd.f64(double %215, double 0xBFD81F8F0CEC610A, double %1187)
  %1189 = tail call double @llvm.fmuladd.f64(double %217, double 0xBFDC5366E211BE88, double %1188)
  %1190 = tail call double @llvm.fmuladd.f64(double %219, double 0x3CC5794CC9D41F8E, double %1189)
  %1191 = tail call double @llvm.fmuladd.f64(double %221, double 0x3CB96EEF6E012B83, double %1190)
  %1192 = tail call double @llvm.fmuladd.f64(double %223, double 0x3CA99DE8CF4E0887, double %1191)
  %1193 = tail call double @llvm.fmuladd.f64(double %225, double 0xBC949B6E91DE24A6, double %1192)
  %1194 = tail call double @llvm.fmuladd.f64(double %227, double 0xBCC8E357CB42C088, double %1193)
  %1195 = tail call double @llvm.fmuladd.f64(double %229, double 0x3FE4A7E9CB8A3494, double %1194)
  %1196 = tail call double @llvm.fmuladd.f64(double %231, double 0x3CF51E5204136C2F, double %1195)
  %1197 = tail call double @llvm.fmuladd.f64(double %233, double 0x3CF3F02716E6F629, double %1196)
  %1198 = tail call double @llvm.fmuladd.f64(double %235, double 0xBCD8A971F372F952, double %1197)
  %1199 = tail call double @llvm.fmuladd.f64(double %237, double 0x3CEE0138B737B153, double %1198)
  %1200 = tail call double @llvm.fmuladd.f64(double %239, double 0x3CF1BE2AED2C7606, double %1199)
  %1201 = tail call double @llvm.fmuladd.f64(double %241, double 0xBFF08654A2D4F717, double %1200)
  %1202 = tail call double @llvm.fmuladd.f64(double %243, double 0xBD0B951138D98D7D, double %1201)
  %1203 = tail call double @llvm.fmuladd.f64(double %245, double 0xBD0A2E976ACF9682, double %1202)
  %1204 = tail call double @llvm.fmuladd.f64(double %247, double 0x3CED3CAF7F982616, double %1203)
  %1205 = tail call double @llvm.fmuladd.f64(double %249, double 0xBD02F71750AA300C, double %1204)
  %1206 = tail call double @llvm.fmuladd.f64(double %251, double 0xBD04E8A557879DBD, double %1205)
  %1207 = tail call double @llvm.fmuladd.f64(double %253, double 0xBFFEFBDEB14F4E48, double %1206)
  %gep3129 = getelementptr double, ptr %invariant.gep3128, i64 %indvars.iv
  %1208 = load double, ptr %gep3129, align 8, !tbaa !5
  %1209 = fadd double %1207, %1208
  store double %1209, ptr %gep3129, 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 %145, !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