; 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_16172576605707918248_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 = %9307, %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 %9310

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 0x3FB9ECDD98127879, 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)
  store double %180, ptr %11, align 8, !tbaa !11
  %181 = load double, ptr %11, align 8, !tbaa !11
  %182 = load ptr, ptr %9, align 8, !tbaa !9
  %183 = load i32, ptr %12, align 4, !tbaa !5
  %184 = load i32, ptr %10, align 4, !tbaa !5
  %185 = mul nsw i32 0, %184
  %186 = add nsw i32 %183, %185
  %187 = sext i32 %186 to i64
  %188 = getelementptr inbounds double, ptr %182, i64 %187
  %189 = load double, ptr %188, align 8, !tbaa !11
  %190 = fadd double %189, %181
  store double %190, ptr %188, align 8, !tbaa !11
  %191 = load ptr, ptr %7, align 8, !tbaa !9
  %192 = load i32, ptr %12, align 4, !tbaa !5
  %193 = load i32, ptr %8, align 4, !tbaa !5
  %194 = mul nsw i32 0, %193
  %195 = add nsw i32 %192, %194
  %196 = sext i32 %195 to i64
  %197 = getelementptr inbounds double, ptr %191, i64 %196
  %198 = load double, ptr %197, align 8, !tbaa !11
  %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 1, %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 = fmul double 0xBFE8AC73392375C8, %206
  %208 = call double @llvm.fmuladd.f64(double 0x3FE4EDE8EE25610B, double %198, double %207)
  %209 = load ptr, ptr %7, align 8, !tbaa !9
  %210 = load i32, ptr %12, align 4, !tbaa !5
  %211 = load i32, ptr %8, align 4, !tbaa !5
  %212 = mul nsw i32 2, %211
  %213 = add nsw i32 %210, %212
  %214 = sext i32 %213 to i64
  %215 = getelementptr inbounds double, ptr %209, i64 %214
  %216 = load double, ptr %215, align 8, !tbaa !11
  %217 = call double @llvm.fmuladd.f64(double 0x3FEA5488770B26AC, double %216, double %208)
  %218 = load ptr, ptr %7, align 8, !tbaa !9
  %219 = load i32, ptr %12, align 4, !tbaa !5
  %220 = load i32, ptr %8, align 4, !tbaa !5
  %221 = mul nsw i32 3, %220
  %222 = add nsw i32 %219, %221
  %223 = sext i32 %222 to i64
  %224 = getelementptr inbounds double, ptr %218, i64 %223
  %225 = load double, ptr %224, align 8, !tbaa !11
  %226 = call double @llvm.fmuladd.f64(double 0xBFFEF1F8514C97D0, double %225, double %217)
  %227 = load ptr, ptr %7, align 8, !tbaa !9
  %228 = load i32, ptr %12, align 4, !tbaa !5
  %229 = load i32, ptr %8, align 4, !tbaa !5
  %230 = mul nsw i32 4, %229
  %231 = add nsw i32 %228, %230
  %232 = sext i32 %231 to i64
  %233 = getelementptr inbounds double, ptr %227, i64 %232
  %234 = load double, ptr %233, align 8, !tbaa !11
  %235 = call double @llvm.fmuladd.f64(double 0x3FF44CD742FC94DA, double %234, double %226)
  %236 = load ptr, ptr %7, align 8, !tbaa !9
  %237 = load i32, ptr %12, align 4, !tbaa !5
  %238 = load i32, ptr %8, align 4, !tbaa !5
  %239 = mul nsw i32 5, %238
  %240 = add nsw i32 %237, %239
  %241 = sext i32 %240 to i64
  %242 = getelementptr inbounds double, ptr %236, i64 %241
  %243 = load double, ptr %242, align 8, !tbaa !11
  %244 = call double @llvm.fmuladd.f64(double 0xBFF01B2FE70C118E, double %243, double %235)
  %245 = load ptr, ptr %7, align 8, !tbaa !9
  %246 = load i32, ptr %12, align 4, !tbaa !5
  %247 = load i32, ptr %8, align 4, !tbaa !5
  %248 = mul nsw i32 6, %247
  %249 = add nsw i32 %246, %248
  %250 = sext i32 %249 to i64
  %251 = getelementptr inbounds double, ptr %245, i64 %250
  %252 = load double, ptr %251, align 8, !tbaa !11
  %253 = call double @llvm.fmuladd.f64(double 0xBC5AD58CA8FD5A00, double %252, double %244)
  %254 = load ptr, ptr %7, align 8, !tbaa !9
  %255 = load i32, ptr %12, align 4, !tbaa !5
  %256 = load i32, ptr %8, align 4, !tbaa !5
  %257 = mul nsw i32 7, %256
  %258 = add nsw i32 %255, %257
  %259 = sext i32 %258 to i64
  %260 = getelementptr inbounds double, ptr %254, i64 %259
  %261 = load double, ptr %260, align 8, !tbaa !11
  %262 = call double @llvm.fmuladd.f64(double 0x3CBEB0BE4F96FAE1, double %261, double %253)
  %263 = load ptr, ptr %7, align 8, !tbaa !9
  %264 = load i32, ptr %12, align 4, !tbaa !5
  %265 = load i32, ptr %8, align 4, !tbaa !5
  %266 = mul nsw i32 8, %265
  %267 = add nsw i32 %264, %266
  %268 = sext i32 %267 to i64
  %269 = getelementptr inbounds double, ptr %263, i64 %268
  %270 = load double, ptr %269, align 8, !tbaa !11
  %271 = call double @llvm.fmuladd.f64(double 0x3C84693BAEDA743C, double %270, double %262)
  %272 = load ptr, ptr %7, align 8, !tbaa !9
  %273 = load i32, ptr %12, align 4, !tbaa !5
  %274 = load i32, ptr %8, align 4, !tbaa !5
  %275 = mul nsw i32 9, %274
  %276 = add nsw i32 %273, %275
  %277 = sext i32 %276 to i64
  %278 = getelementptr inbounds double, ptr %272, i64 %277
  %279 = load double, ptr %278, align 8, !tbaa !11
  %280 = call double @llvm.fmuladd.f64(double 0xBCB3ACD3D4ADCCB0, double %279, double %271)
  %281 = load ptr, ptr %7, align 8, !tbaa !9
  %282 = load i32, ptr %12, align 4, !tbaa !5
  %283 = load i32, ptr %8, align 4, !tbaa !5
  %284 = mul nsw i32 10, %283
  %285 = add nsw i32 %282, %284
  %286 = sext i32 %285 to i64
  %287 = getelementptr inbounds double, ptr %281, i64 %286
  %288 = load double, ptr %287, align 8, !tbaa !11
  %289 = call double @llvm.fmuladd.f64(double 0x3CBD77D82F675FE0, double %288, double %280)
  %290 = load ptr, ptr %7, align 8, !tbaa !9
  %291 = load i32, ptr %12, align 4, !tbaa !5
  %292 = load i32, ptr %8, align 4, !tbaa !5
  %293 = mul nsw i32 11, %292
  %294 = add nsw i32 %291, %293
  %295 = sext i32 %294 to i64
  %296 = getelementptr inbounds double, ptr %290, i64 %295
  %297 = load double, ptr %296, align 8, !tbaa !11
  %298 = call double @llvm.fmuladd.f64(double 0xBC765C5FD7E7C60F, double %297, double %289)
  %299 = load ptr, ptr %7, align 8, !tbaa !9
  %300 = load i32, ptr %12, align 4, !tbaa !5
  %301 = load i32, ptr %8, align 4, !tbaa !5
  %302 = mul nsw i32 12, %301
  %303 = add nsw i32 %300, %302
  %304 = sext i32 %303 to i64
  %305 = getelementptr inbounds double, ptr %299, i64 %304
  %306 = load double, ptr %305, align 8, !tbaa !11
  %307 = call double @llvm.fmuladd.f64(double 0x3C9FA9BEC7B2612F, double %306, double %298)
  %308 = load ptr, ptr %7, align 8, !tbaa !9
  %309 = load i32, ptr %12, align 4, !tbaa !5
  %310 = load i32, ptr %8, align 4, !tbaa !5
  %311 = mul nsw i32 13, %310
  %312 = add nsw i32 %309, %311
  %313 = sext i32 %312 to i64
  %314 = getelementptr inbounds double, ptr %308, i64 %313
  %315 = load double, ptr %314, align 8, !tbaa !11
  %316 = call double @llvm.fmuladd.f64(double 0xBCBC8E2E7B422DD9, double %315, double %307)
  %317 = load ptr, ptr %7, align 8, !tbaa !9
  %318 = load i32, ptr %12, align 4, !tbaa !5
  %319 = load i32, ptr %8, align 4, !tbaa !5
  %320 = mul nsw i32 14, %319
  %321 = add nsw i32 %318, %320
  %322 = sext i32 %321 to i64
  %323 = getelementptr inbounds double, ptr %317, i64 %322
  %324 = load double, ptr %323, align 8, !tbaa !11
  %325 = call double @llvm.fmuladd.f64(double 0xBCC878EC8B1B786A, double %324, double %316)
  %326 = load ptr, ptr %7, align 8, !tbaa !9
  %327 = load i32, ptr %12, align 4, !tbaa !5
  %328 = load i32, ptr %8, align 4, !tbaa !5
  %329 = mul nsw i32 15, %328
  %330 = add nsw i32 %327, %329
  %331 = sext i32 %330 to i64
  %332 = getelementptr inbounds double, ptr %326, i64 %331
  %333 = load double, ptr %332, align 8, !tbaa !11
  %334 = call double @llvm.fmuladd.f64(double 0x3CC0FC9E0739BB76, double %333, double %325)
  %335 = load ptr, ptr %7, align 8, !tbaa !9
  %336 = load i32, ptr %12, align 4, !tbaa !5
  %337 = load i32, ptr %8, align 4, !tbaa !5
  %338 = mul nsw i32 16, %337
  %339 = add nsw i32 %336, %338
  %340 = sext i32 %339 to i64
  %341 = getelementptr inbounds double, ptr %335, i64 %340
  %342 = load double, ptr %341, align 8, !tbaa !11
  %343 = call double @llvm.fmuladd.f64(double 0x3CA31E7AC172ACDB, double %342, double %334)
  %344 = load ptr, ptr %7, align 8, !tbaa !9
  %345 = load i32, ptr %12, align 4, !tbaa !5
  %346 = load i32, ptr %8, align 4, !tbaa !5
  %347 = mul nsw i32 17, %346
  %348 = add nsw i32 %345, %347
  %349 = sext i32 %348 to i64
  %350 = getelementptr inbounds double, ptr %344, i64 %349
  %351 = load double, ptr %350, align 8, !tbaa !11
  %352 = call double @llvm.fmuladd.f64(double 0x3C51BA2977E19A60, double %351, double %343)
  store double %352, ptr %11, align 8, !tbaa !11
  %353 = load double, ptr %11, align 8, !tbaa !11
  %354 = load ptr, ptr %9, align 8, !tbaa !9
  %355 = load i32, ptr %12, align 4, !tbaa !5
  %356 = load i32, ptr %10, align 4, !tbaa !5
  %357 = mul nsw i32 1, %356
  %358 = add nsw i32 %355, %357
  %359 = sext i32 %358 to i64
  %360 = getelementptr inbounds double, ptr %354, i64 %359
  %361 = load double, ptr %360, align 8, !tbaa !11
  %362 = fadd double %361, %353
  store double %362, ptr %360, align 8, !tbaa !11
  %363 = load ptr, ptr %7, align 8, !tbaa !9
  %364 = load i32, ptr %12, align 4, !tbaa !5
  %365 = load i32, ptr %8, align 4, !tbaa !5
  %366 = mul nsw i32 0, %365
  %367 = add nsw i32 %364, %366
  %368 = sext i32 %367 to i64
  %369 = getelementptr inbounds double, ptr %363, i64 %368
  %370 = load double, ptr %369, align 8, !tbaa !11
  %371 = load ptr, ptr %7, align 8, !tbaa !9
  %372 = load i32, ptr %12, align 4, !tbaa !5
  %373 = load i32, ptr %8, align 4, !tbaa !5
  %374 = mul nsw i32 1, %373
  %375 = add nsw i32 %372, %374
  %376 = sext i32 %375 to i64
  %377 = getelementptr inbounds double, ptr %371, i64 %376
  %378 = load double, ptr %377, align 8, !tbaa !11
  %379 = fmul double 0xBFDFFE63E2851783, %378
  %380 = call double @llvm.fmuladd.f64(double 0xBFE1EC4181248AE2, double %370, double %379)
  %381 = load ptr, ptr %7, align 8, !tbaa !9
  %382 = load i32, ptr %12, align 4, !tbaa !5
  %383 = load i32, ptr %8, align 4, !tbaa !5
  %384 = mul nsw i32 2, %383
  %385 = add nsw i32 %382, %384
  %386 = sext i32 %385 to i64
  %387 = getelementptr inbounds double, ptr %381, i64 %386
  %388 = load double, ptr %387, align 8, !tbaa !11
  %389 = call double @llvm.fmuladd.f64(double 0x4000E9CE75C2FBF8, double %388, double %380)
  %390 = load ptr, ptr %7, align 8, !tbaa !9
  %391 = load i32, ptr %12, align 4, !tbaa !5
  %392 = load i32, ptr %8, align 4, !tbaa !5
  %393 = mul nsw i32 3, %392
  %394 = add nsw i32 %391, %393
  %395 = sext i32 %394 to i64
  %396 = getelementptr inbounds double, ptr %390, i64 %395
  %397 = load double, ptr %396, align 8, !tbaa !11
  %398 = call double @llvm.fmuladd.f64(double 0x3FF31D88B253B07F, double %397, double %389)
  %399 = load ptr, ptr %7, align 8, !tbaa !9
  %400 = load i32, ptr %12, align 4, !tbaa !5
  %401 = load i32, ptr %8, align 4, !tbaa !5
  %402 = mul nsw i32 4, %401
  %403 = add nsw i32 %400, %402
  %404 = sext i32 %403 to i64
  %405 = getelementptr inbounds double, ptr %399, i64 %404
  %406 = load double, ptr %405, align 8, !tbaa !11
  %407 = call double @llvm.fmuladd.f64(double 0x3FF2343957F3A8A6, double %406, double %398)
  %408 = load ptr, ptr %7, align 8, !tbaa !9
  %409 = load i32, ptr %12, align 4, !tbaa !5
  %410 = load i32, ptr %8, align 4, !tbaa !5
  %411 = mul nsw i32 5, %410
  %412 = add nsw i32 %409, %411
  %413 = sext i32 %412 to i64
  %414 = getelementptr inbounds double, ptr %408, i64 %413
  %415 = load double, ptr %414, align 8, !tbaa !11
  %416 = call double @llvm.fmuladd.f64(double 0xBFEE712F1EF7D892, double %415, double %407)
  %417 = load ptr, ptr %7, align 8, !tbaa !9
  %418 = load i32, ptr %12, align 4, !tbaa !5
  %419 = load i32, ptr %8, align 4, !tbaa !5
  %420 = mul nsw i32 6, %419
  %421 = add nsw i32 %418, %420
  %422 = sext i32 %421 to i64
  %423 = getelementptr inbounds double, ptr %417, i64 %422
  %424 = load double, ptr %423, align 8, !tbaa !11
  %425 = call double @llvm.fmuladd.f64(double 0x3C7BE455D72E2687, double %424, double %416)
  %426 = load ptr, ptr %7, align 8, !tbaa !9
  %427 = load i32, ptr %12, align 4, !tbaa !5
  %428 = load i32, ptr %8, align 4, !tbaa !5
  %429 = mul nsw i32 7, %428
  %430 = add nsw i32 %427, %429
  %431 = sext i32 %430 to i64
  %432 = getelementptr inbounds double, ptr %426, i64 %431
  %433 = load double, ptr %432, align 8, !tbaa !11
  %434 = call double @llvm.fmuladd.f64(double 0xBCA88EEBBA111342, double %433, double %425)
  %435 = load ptr, ptr %7, align 8, !tbaa !9
  %436 = load i32, ptr %12, align 4, !tbaa !5
  %437 = load i32, ptr %8, align 4, !tbaa !5
  %438 = mul nsw i32 8, %437
  %439 = add nsw i32 %436, %438
  %440 = sext i32 %439 to i64
  %441 = getelementptr inbounds double, ptr %435, i64 %440
  %442 = load double, ptr %441, align 8, !tbaa !11
  %443 = call double @llvm.fmuladd.f64(double 0xBCAAA314368C77EA, double %442, double %434)
  %444 = load ptr, ptr %7, align 8, !tbaa !9
  %445 = load i32, ptr %12, align 4, !tbaa !5
  %446 = load i32, ptr %8, align 4, !tbaa !5
  %447 = mul nsw i32 9, %446
  %448 = add nsw i32 %445, %447
  %449 = sext i32 %448 to i64
  %450 = getelementptr inbounds double, ptr %444, i64 %449
  %451 = load double, ptr %450, align 8, !tbaa !11
  %452 = call double @llvm.fmuladd.f64(double 0xBC89A9C06842F0D3, double %451, double %443)
  %453 = load ptr, ptr %7, align 8, !tbaa !9
  %454 = load i32, ptr %12, align 4, !tbaa !5
  %455 = load i32, ptr %8, align 4, !tbaa !5
  %456 = mul nsw i32 10, %455
  %457 = add nsw i32 %454, %456
  %458 = sext i32 %457 to i64
  %459 = getelementptr inbounds double, ptr %453, i64 %458
  %460 = load double, ptr %459, align 8, !tbaa !11
  %461 = call double @llvm.fmuladd.f64(double 0x3CC01B0CEED92744, double %460, double %452)
  %462 = load ptr, ptr %7, align 8, !tbaa !9
  %463 = load i32, ptr %12, align 4, !tbaa !5
  %464 = load i32, ptr %8, align 4, !tbaa !5
  %465 = mul nsw i32 11, %464
  %466 = add nsw i32 %463, %465
  %467 = sext i32 %466 to i64
  %468 = getelementptr inbounds double, ptr %462, i64 %467
  %469 = load double, ptr %468, align 8, !tbaa !11
  %470 = call double @llvm.fmuladd.f64(double 0xBCB179EA74C658F9, double %469, double %461)
  %471 = load ptr, ptr %7, align 8, !tbaa !9
  %472 = load i32, ptr %12, align 4, !tbaa !5
  %473 = load i32, ptr %8, align 4, !tbaa !5
  %474 = mul nsw i32 12, %473
  %475 = add nsw i32 %472, %474
  %476 = sext i32 %475 to i64
  %477 = getelementptr inbounds double, ptr %471, i64 %476
  %478 = load double, ptr %477, align 8, !tbaa !11
  %479 = call double @llvm.fmuladd.f64(double 0xBCA45DF77990844E, double %478, double %470)
  %480 = load ptr, ptr %7, align 8, !tbaa !9
  %481 = load i32, ptr %12, align 4, !tbaa !5
  %482 = load i32, ptr %8, align 4, !tbaa !5
  %483 = mul nsw i32 13, %482
  %484 = add nsw i32 %481, %483
  %485 = sext i32 %484 to i64
  %486 = getelementptr inbounds double, ptr %480, i64 %485
  %487 = load double, ptr %486, align 8, !tbaa !11
  %488 = call double @llvm.fmuladd.f64(double 0x3CAB464CCF9E9E2D, double %487, double %479)
  %489 = load ptr, ptr %7, align 8, !tbaa !9
  %490 = load i32, ptr %12, align 4, !tbaa !5
  %491 = load i32, ptr %8, align 4, !tbaa !5
  %492 = mul nsw i32 14, %491
  %493 = add nsw i32 %490, %492
  %494 = sext i32 %493 to i64
  %495 = getelementptr inbounds double, ptr %489, i64 %494
  %496 = load double, ptr %495, align 8, !tbaa !11
  %497 = call double @llvm.fmuladd.f64(double 0x3CCC9AD4A6D08D95, double %496, double %488)
  %498 = load ptr, ptr %7, align 8, !tbaa !9
  %499 = load i32, ptr %12, align 4, !tbaa !5
  %500 = load i32, ptr %8, align 4, !tbaa !5
  %501 = mul nsw i32 15, %500
  %502 = add nsw i32 %499, %501
  %503 = sext i32 %502 to i64
  %504 = getelementptr inbounds double, ptr %498, i64 %503
  %505 = load double, ptr %504, align 8, !tbaa !11
  %506 = call double @llvm.fmuladd.f64(double 0x3CB10C6838C95A72, double %505, double %497)
  %507 = load ptr, ptr %7, align 8, !tbaa !9
  %508 = load i32, ptr %12, align 4, !tbaa !5
  %509 = load i32, ptr %8, align 4, !tbaa !5
  %510 = mul nsw i32 16, %509
  %511 = add nsw i32 %508, %510
  %512 = sext i32 %511 to i64
  %513 = getelementptr inbounds double, ptr %507, i64 %512
  %514 = load double, ptr %513, align 8, !tbaa !11
  %515 = call double @llvm.fmuladd.f64(double 0x3CD07012D87C038A, double %514, double %506)
  %516 = load ptr, ptr %7, align 8, !tbaa !9
  %517 = load i32, ptr %12, align 4, !tbaa !5
  %518 = load i32, ptr %8, align 4, !tbaa !5
  %519 = mul nsw i32 17, %518
  %520 = add nsw i32 %517, %519
  %521 = sext i32 %520 to i64
  %522 = getelementptr inbounds double, ptr %516, i64 %521
  %523 = load double, ptr %522, align 8, !tbaa !11
  %524 = call double @llvm.fmuladd.f64(double 0x3CCBC273E408F766, double %523, double %515)
  store double %524, ptr %11, align 8, !tbaa !11
  %525 = load double, ptr %11, align 8, !tbaa !11
  %526 = load ptr, ptr %9, align 8, !tbaa !9
  %527 = load i32, ptr %12, align 4, !tbaa !5
  %528 = load i32, ptr %10, align 4, !tbaa !5
  %529 = mul nsw i32 2, %528
  %530 = add nsw i32 %527, %529
  %531 = sext i32 %530 to i64
  %532 = getelementptr inbounds double, ptr %526, i64 %531
  %533 = load double, ptr %532, align 8, !tbaa !11
  %534 = fadd double %533, %525
  store double %534, ptr %532, align 8, !tbaa !11
  %535 = load ptr, ptr %7, align 8, !tbaa !9
  %536 = load i32, ptr %12, align 4, !tbaa !5
  %537 = load i32, ptr %8, align 4, !tbaa !5
  %538 = mul nsw i32 0, %537
  %539 = add nsw i32 %536, %538
  %540 = sext i32 %539 to i64
  %541 = getelementptr inbounds double, ptr %535, i64 %540
  %542 = load double, ptr %541, align 8, !tbaa !11
  %543 = load ptr, ptr %7, align 8, !tbaa !9
  %544 = load i32, ptr %12, align 4, !tbaa !5
  %545 = load i32, ptr %8, align 4, !tbaa !5
  %546 = mul nsw i32 1, %545
  %547 = add nsw i32 %544, %546
  %548 = sext i32 %547 to i64
  %549 = getelementptr inbounds double, ptr %543, i64 %548
  %550 = load double, ptr %549, align 8, !tbaa !11
  %551 = fmul double 0x3FF21EFA862DF3DA, %550
  %552 = call double @llvm.fmuladd.f64(double 0xBF734721512AF2F5, double %542, double %551)
  %553 = load ptr, ptr %7, align 8, !tbaa !9
  %554 = load i32, ptr %12, align 4, !tbaa !5
  %555 = load i32, ptr %8, align 4, !tbaa !5
  %556 = mul nsw i32 2, %555
  %557 = add nsw i32 %554, %556
  %558 = sext i32 %557 to i64
  %559 = getelementptr inbounds double, ptr %553, i64 %558
  %560 = load double, ptr %559, align 8, !tbaa !11
  %561 = call double @llvm.fmuladd.f64(double 0xBFF7F19EB1BA88FC, double %560, double %552)
  %562 = load ptr, ptr %7, align 8, !tbaa !9
  %563 = load i32, ptr %12, align 4, !tbaa !5
  %564 = load i32, ptr %8, align 4, !tbaa !5
  %565 = mul nsw i32 3, %564
  %566 = add nsw i32 %563, %565
  %567 = sext i32 %566 to i64
  %568 = getelementptr inbounds double, ptr %562, i64 %567
  %569 = load double, ptr %568, align 8, !tbaa !11
  %570 = call double @llvm.fmuladd.f64(double 0x3FC901A35D55DB4C, double %569, double %561)
  %571 = load ptr, ptr %7, align 8, !tbaa !9
  %572 = load i32, ptr %12, align 4, !tbaa !5
  %573 = load i32, ptr %8, align 4, !tbaa !5
  %574 = mul nsw i32 4, %573
  %575 = add nsw i32 %572, %574
  %576 = sext i32 %575 to i64
  %577 = getelementptr inbounds double, ptr %571, i64 %576
  %578 = load double, ptr %577, align 8, !tbaa !11
  %579 = call double @llvm.fmuladd.f64(double 0xBFF48831FA6C7037, double %578, double %570)
  %580 = load ptr, ptr %7, align 8, !tbaa !9
  %581 = load i32, ptr %12, align 4, !tbaa !5
  %582 = load i32, ptr %8, align 4, !tbaa !5
  %583 = mul nsw i32 5, %582
  %584 = add nsw i32 %581, %583
  %585 = sext i32 %584 to i64
  %586 = getelementptr inbounds double, ptr %580, i64 %585
  %587 = load double, ptr %586, align 8, !tbaa !11
  %588 = call double @llvm.fmuladd.f64(double 0x3FF0AF85DD8BD41B, double %587, double %579)
  %589 = load ptr, ptr %7, align 8, !tbaa !9
  %590 = load i32, ptr %12, align 4, !tbaa !5
  %591 = load i32, ptr %8, align 4, !tbaa !5
  %592 = mul nsw i32 6, %591
  %593 = add nsw i32 %590, %592
  %594 = sext i32 %593 to i64
  %595 = getelementptr inbounds double, ptr %589, i64 %594
  %596 = load double, ptr %595, align 8, !tbaa !11
  %597 = call double @llvm.fmuladd.f64(double 0xBC96DF8829202392, double %596, double %588)
  %598 = load ptr, ptr %7, align 8, !tbaa !9
  %599 = load i32, ptr %12, align 4, !tbaa !5
  %600 = load i32, ptr %8, align 4, !tbaa !5
  %601 = mul nsw i32 7, %600
  %602 = add nsw i32 %599, %601
  %603 = sext i32 %602 to i64
  %604 = getelementptr inbounds double, ptr %598, i64 %603
  %605 = load double, ptr %604, align 8, !tbaa !11
  %606 = call double @llvm.fmuladd.f64(double 0x3C92F08ACDCBF794, double %605, double %597)
  %607 = load ptr, ptr %7, align 8, !tbaa !9
  %608 = load i32, ptr %12, align 4, !tbaa !5
  %609 = load i32, ptr %8, align 4, !tbaa !5
  %610 = mul nsw i32 8, %609
  %611 = add nsw i32 %608, %610
  %612 = sext i32 %611 to i64
  %613 = getelementptr inbounds double, ptr %607, i64 %612
  %614 = load double, ptr %613, align 8, !tbaa !11
  %615 = call double @llvm.fmuladd.f64(double 0x3CA6B48868965AE6, double %614, double %606)
  %616 = load ptr, ptr %7, align 8, !tbaa !9
  %617 = load i32, ptr %12, align 4, !tbaa !5
  %618 = load i32, ptr %8, align 4, !tbaa !5
  %619 = mul nsw i32 9, %618
  %620 = add nsw i32 %617, %619
  %621 = sext i32 %620 to i64
  %622 = getelementptr inbounds double, ptr %616, i64 %621
  %623 = load double, ptr %622, align 8, !tbaa !11
  %624 = call double @llvm.fmuladd.f64(double 0x3CAB6CB918309F4B, double %623, double %615)
  %625 = load ptr, ptr %7, align 8, !tbaa !9
  %626 = load i32, ptr %12, align 4, !tbaa !5
  %627 = load i32, ptr %8, align 4, !tbaa !5
  %628 = mul nsw i32 10, %627
  %629 = add nsw i32 %626, %628
  %630 = sext i32 %629 to i64
  %631 = getelementptr inbounds double, ptr %625, i64 %630
  %632 = load double, ptr %631, align 8, !tbaa !11
  %633 = call double @llvm.fmuladd.f64(double 0xBCB24490C3AF2293, double %632, double %624)
  %634 = load ptr, ptr %7, align 8, !tbaa !9
  %635 = load i32, ptr %12, align 4, !tbaa !5
  %636 = load i32, ptr %8, align 4, !tbaa !5
  %637 = mul nsw i32 11, %636
  %638 = add nsw i32 %635, %637
  %639 = sext i32 %638 to i64
  %640 = getelementptr inbounds double, ptr %634, i64 %639
  %641 = load double, ptr %640, align 8, !tbaa !11
  %642 = call double @llvm.fmuladd.f64(double 0x3C823EC0CF8B6DEB, double %641, double %633)
  %643 = load ptr, ptr %7, align 8, !tbaa !9
  %644 = load i32, ptr %12, align 4, !tbaa !5
  %645 = load i32, ptr %8, align 4, !tbaa !5
  %646 = mul nsw i32 12, %645
  %647 = add nsw i32 %644, %646
  %648 = sext i32 %647 to i64
  %649 = getelementptr inbounds double, ptr %643, i64 %648
  %650 = load double, ptr %649, align 8, !tbaa !11
  %651 = call double @llvm.fmuladd.f64(double 0x3CA72B617C3AF637, double %650, double %642)
  %652 = load ptr, ptr %7, align 8, !tbaa !9
  %653 = load i32, ptr %12, align 4, !tbaa !5
  %654 = load i32, ptr %8, align 4, !tbaa !5
  %655 = mul nsw i32 13, %654
  %656 = add nsw i32 %653, %655
  %657 = sext i32 %656 to i64
  %658 = getelementptr inbounds double, ptr %652, i64 %657
  %659 = load double, ptr %658, align 8, !tbaa !11
  %660 = call double @llvm.fmuladd.f64(double 0x3C9A9EB31390F5C1, double %659, double %651)
  %661 = load ptr, ptr %7, align 8, !tbaa !9
  %662 = load i32, ptr %12, align 4, !tbaa !5
  %663 = load i32, ptr %8, align 4, !tbaa !5
  %664 = mul nsw i32 14, %663
  %665 = add nsw i32 %662, %664
  %666 = sext i32 %665 to i64
  %667 = getelementptr inbounds double, ptr %661, i64 %666
  %668 = load double, ptr %667, align 8, !tbaa !11
  %669 = call double @llvm.fmuladd.f64(double 0x3C9AA22A1570E612, double %668, double %660)
  %670 = load ptr, ptr %7, align 8, !tbaa !9
  %671 = load i32, ptr %12, align 4, !tbaa !5
  %672 = load i32, ptr %8, align 4, !tbaa !5
  %673 = mul nsw i32 15, %672
  %674 = add nsw i32 %671, %673
  %675 = sext i32 %674 to i64
  %676 = getelementptr inbounds double, ptr %670, i64 %675
  %677 = load double, ptr %676, align 8, !tbaa !11
  %678 = call double @llvm.fmuladd.f64(double 0xBCAB65BA103D3215, double %677, double %669)
  %679 = load ptr, ptr %7, align 8, !tbaa !9
  %680 = load i32, ptr %12, align 4, !tbaa !5
  %681 = load i32, ptr %8, align 4, !tbaa !5
  %682 = mul nsw i32 16, %681
  %683 = add nsw i32 %680, %682
  %684 = sext i32 %683 to i64
  %685 = getelementptr inbounds double, ptr %679, i64 %684
  %686 = load double, ptr %685, align 8, !tbaa !11
  %687 = call double @llvm.fmuladd.f64(double 0xBCC22813B0173A2F, double %686, double %678)
  %688 = load ptr, ptr %7, align 8, !tbaa !9
  %689 = load i32, ptr %12, align 4, !tbaa !5
  %690 = load i32, ptr %8, align 4, !tbaa !5
  %691 = mul nsw i32 17, %690
  %692 = add nsw i32 %689, %691
  %693 = sext i32 %692 to i64
  %694 = getelementptr inbounds double, ptr %688, i64 %693
  %695 = load double, ptr %694, align 8, !tbaa !11
  %696 = call double @llvm.fmuladd.f64(double 0xBCB32BFD271CB8D7, double %695, double %687)
  store double %696, ptr %11, align 8, !tbaa !11
  %697 = load double, ptr %11, align 8, !tbaa !11
  %698 = load ptr, ptr %9, align 8, !tbaa !9
  %699 = load i32, ptr %12, align 4, !tbaa !5
  %700 = load i32, ptr %10, align 4, !tbaa !5
  %701 = mul nsw i32 3, %700
  %702 = add nsw i32 %699, %701
  %703 = sext i32 %702 to i64
  %704 = getelementptr inbounds double, ptr %698, i64 %703
  %705 = load double, ptr %704, align 8, !tbaa !11
  %706 = fadd double %705, %697
  store double %706, ptr %704, align 8, !tbaa !11
  %707 = load ptr, ptr %7, align 8, !tbaa !9
  %708 = load i32, ptr %12, align 4, !tbaa !5
  %709 = load i32, ptr %8, align 4, !tbaa !5
  %710 = mul nsw i32 0, %709
  %711 = add nsw i32 %708, %710
  %712 = sext i32 %711 to i64
  %713 = getelementptr inbounds double, ptr %707, i64 %712
  %714 = load double, ptr %713, align 8, !tbaa !11
  %715 = load ptr, ptr %7, align 8, !tbaa !9
  %716 = load i32, ptr %12, align 4, !tbaa !5
  %717 = load i32, ptr %8, align 4, !tbaa !5
  %718 = mul nsw i32 1, %717
  %719 = add nsw i32 %716, %718
  %720 = sext i32 %719 to i64
  %721 = getelementptr inbounds double, ptr %715, i64 %720
  %722 = load double, ptr %721, align 8, !tbaa !11
  %723 = fmul double 0xBFB17C71DD2D5188, %722
  %724 = call double @llvm.fmuladd.f64(double 0x3FF3237A82AF9EC7, double %714, double %723)
  %725 = load ptr, ptr %7, align 8, !tbaa !9
  %726 = load i32, ptr %12, align 4, !tbaa !5
  %727 = load i32, ptr %8, align 4, !tbaa !5
  %728 = mul nsw i32 2, %727
  %729 = add nsw i32 %726, %728
  %730 = sext i32 %729 to i64
  %731 = getelementptr inbounds double, ptr %725, i64 %730
  %732 = load double, ptr %731, align 8, !tbaa !11
  %733 = call double @llvm.fmuladd.f64(double 0xBF76E8A1969E7200, double %732, double %724)
  %734 = load ptr, ptr %7, align 8, !tbaa !9
  %735 = load i32, ptr %12, align 4, !tbaa !5
  %736 = load i32, ptr %8, align 4, !tbaa !5
  %737 = mul nsw i32 3, %736
  %738 = add nsw i32 %735, %737
  %739 = sext i32 %738 to i64
  %740 = getelementptr inbounds double, ptr %734, i64 %739
  %741 = load double, ptr %740, align 8, !tbaa !11
  %742 = call double @llvm.fmuladd.f64(double 0x3FC179BD32D3DC6F, double %741, double %733)
  %743 = load ptr, ptr %7, align 8, !tbaa !9
  %744 = load i32, ptr %12, align 4, !tbaa !5
  %745 = load i32, ptr %8, align 4, !tbaa !5
  %746 = mul nsw i32 4, %745
  %747 = add nsw i32 %744, %746
  %748 = sext i32 %747 to i64
  %749 = getelementptr inbounds double, ptr %743, i64 %748
  %750 = load double, ptr %749, align 8, !tbaa !11
  %751 = call double @llvm.fmuladd.f64(double 0x3FFBC4AD9C53A55A, double %750, double %742)
  %752 = load ptr, ptr %7, align 8, !tbaa !9
  %753 = load i32, ptr %12, align 4, !tbaa !5
  %754 = load i32, ptr %8, align 4, !tbaa !5
  %755 = mul nsw i32 5, %754
  %756 = add nsw i32 %753, %755
  %757 = sext i32 %756 to i64
  %758 = getelementptr inbounds double, ptr %752, i64 %757
  %759 = load double, ptr %758, align 8, !tbaa !11
  %760 = call double @llvm.fmuladd.f64(double 0x3FF1CA3B98F49426, double %759, double %751)
  %761 = load ptr, ptr %7, align 8, !tbaa !9
  %762 = load i32, ptr %12, align 4, !tbaa !5
  %763 = load i32, ptr %8, align 4, !tbaa !5
  %764 = mul nsw i32 6, %763
  %765 = add nsw i32 %762, %764
  %766 = sext i32 %765 to i64
  %767 = getelementptr inbounds double, ptr %761, i64 %766
  %768 = load double, ptr %767, align 8, !tbaa !11
  %769 = call double @llvm.fmuladd.f64(double 0x3C915D0C18F46953, double %768, double %760)
  %770 = load ptr, ptr %7, align 8, !tbaa !9
  %771 = load i32, ptr %12, align 4, !tbaa !5
  %772 = load i32, ptr %8, align 4, !tbaa !5
  %773 = mul nsw i32 7, %772
  %774 = add nsw i32 %771, %773
  %775 = sext i32 %774 to i64
  %776 = getelementptr inbounds double, ptr %770, i64 %775
  %777 = load double, ptr %776, align 8, !tbaa !11
  %778 = call double @llvm.fmuladd.f64(double 0x3C94D6A0DAC57C7E, double %777, double %769)
  %779 = load ptr, ptr %7, align 8, !tbaa !9
  %780 = load i32, ptr %12, align 4, !tbaa !5
  %781 = load i32, ptr %8, align 4, !tbaa !5
  %782 = mul nsw i32 8, %781
  %783 = add nsw i32 %780, %782
  %784 = sext i32 %783 to i64
  %785 = getelementptr inbounds double, ptr %779, i64 %784
  %786 = load double, ptr %785, align 8, !tbaa !11
  %787 = call double @llvm.fmuladd.f64(double 0xBC84E1D5E41DCEB7, double %786, double %778)
  %788 = load ptr, ptr %7, align 8, !tbaa !9
  %789 = load i32, ptr %12, align 4, !tbaa !5
  %790 = load i32, ptr %8, align 4, !tbaa !5
  %791 = mul nsw i32 9, %790
  %792 = add nsw i32 %789, %791
  %793 = sext i32 %792 to i64
  %794 = getelementptr inbounds double, ptr %788, i64 %793
  %795 = load double, ptr %794, align 8, !tbaa !11
  %796 = call double @llvm.fmuladd.f64(double 0xBC92763F594C57BA, double %795, double %787)
  %797 = load ptr, ptr %7, align 8, !tbaa !9
  %798 = load i32, ptr %12, align 4, !tbaa !5
  %799 = load i32, ptr %8, align 4, !tbaa !5
  %800 = mul nsw i32 10, %799
  %801 = add nsw i32 %798, %800
  %802 = sext i32 %801 to i64
  %803 = getelementptr inbounds double, ptr %797, i64 %802
  %804 = load double, ptr %803, align 8, !tbaa !11
  %805 = call double @llvm.fmuladd.f64(double 0x3CB1F86B771BE422, double %804, double %796)
  %806 = load ptr, ptr %7, align 8, !tbaa !9
  %807 = load i32, ptr %12, align 4, !tbaa !5
  %808 = load i32, ptr %8, align 4, !tbaa !5
  %809 = mul nsw i32 11, %808
  %810 = add nsw i32 %807, %809
  %811 = sext i32 %810 to i64
  %812 = getelementptr inbounds double, ptr %806, i64 %811
  %813 = load double, ptr %812, align 8, !tbaa !11
  %814 = call double @llvm.fmuladd.f64(double 0xBCA498ED43D15DB5, double %813, double %805)
  %815 = load ptr, ptr %7, align 8, !tbaa !9
  %816 = load i32, ptr %12, align 4, !tbaa !5
  %817 = load i32, ptr %8, align 4, !tbaa !5
  %818 = mul nsw i32 12, %817
  %819 = add nsw i32 %816, %818
  %820 = sext i32 %819 to i64
  %821 = getelementptr inbounds double, ptr %815, i64 %820
  %822 = load double, ptr %821, align 8, !tbaa !11
  %823 = call double @llvm.fmuladd.f64(double 0x3C9E56370E4AEF9E, double %822, double %814)
  %824 = load ptr, ptr %7, align 8, !tbaa !9
  %825 = load i32, ptr %12, align 4, !tbaa !5
  %826 = load i32, ptr %8, align 4, !tbaa !5
  %827 = mul nsw i32 13, %826
  %828 = add nsw i32 %825, %827
  %829 = sext i32 %828 to i64
  %830 = getelementptr inbounds double, ptr %824, i64 %829
  %831 = load double, ptr %830, align 8, !tbaa !11
  %832 = call double @llvm.fmuladd.f64(double 0x3C805596DD69B814, double %831, double %823)
  %833 = load ptr, ptr %7, align 8, !tbaa !9
  %834 = load i32, ptr %12, align 4, !tbaa !5
  %835 = load i32, ptr %8, align 4, !tbaa !5
  %836 = mul nsw i32 14, %835
  %837 = add nsw i32 %834, %836
  %838 = sext i32 %837 to i64
  %839 = getelementptr inbounds double, ptr %833, i64 %838
  %840 = load double, ptr %839, align 8, !tbaa !11
  %841 = call double @llvm.fmuladd.f64(double 0x3CA8CCCC07FB5ADE, double %840, double %832)
  %842 = load ptr, ptr %7, align 8, !tbaa !9
  %843 = load i32, ptr %12, align 4, !tbaa !5
  %844 = load i32, ptr %8, align 4, !tbaa !5
  %845 = mul nsw i32 15, %844
  %846 = add nsw i32 %843, %845
  %847 = sext i32 %846 to i64
  %848 = getelementptr inbounds double, ptr %842, i64 %847
  %849 = load double, ptr %848, align 8, !tbaa !11
  %850 = call double @llvm.fmuladd.f64(double 0x3C83675E5BCF4774, double %849, double %841)
  %851 = load ptr, ptr %7, align 8, !tbaa !9
  %852 = load i32, ptr %12, align 4, !tbaa !5
  %853 = load i32, ptr %8, align 4, !tbaa !5
  %854 = mul nsw i32 16, %853
  %855 = add nsw i32 %852, %854
  %856 = sext i32 %855 to i64
  %857 = getelementptr inbounds double, ptr %851, i64 %856
  %858 = load double, ptr %857, align 8, !tbaa !11
  %859 = call double @llvm.fmuladd.f64(double 0x3CC9E7942DEDC84B, double %858, double %850)
  %860 = load ptr, ptr %7, align 8, !tbaa !9
  %861 = load i32, ptr %12, align 4, !tbaa !5
  %862 = load i32, ptr %8, align 4, !tbaa !5
  %863 = mul nsw i32 17, %862
  %864 = add nsw i32 %861, %863
  %865 = sext i32 %864 to i64
  %866 = getelementptr inbounds double, ptr %860, i64 %865
  %867 = load double, ptr %866, align 8, !tbaa !11
  %868 = call double @llvm.fmuladd.f64(double 0x3CA46BAC5B65E036, double %867, double %859)
  store double %868, ptr %11, align 8, !tbaa !11
  %869 = load double, ptr %11, align 8, !tbaa !11
  %870 = load ptr, ptr %9, align 8, !tbaa !9
  %871 = load i32, ptr %12, align 4, !tbaa !5
  %872 = load i32, ptr %10, align 4, !tbaa !5
  %873 = mul nsw i32 4, %872
  %874 = add nsw i32 %871, %873
  %875 = sext i32 %874 to i64
  %876 = getelementptr inbounds double, ptr %870, i64 %875
  %877 = load double, ptr %876, align 8, !tbaa !11
  %878 = fadd double %877, %869
  store double %878, ptr %876, align 8, !tbaa !11
  %879 = load ptr, ptr %7, align 8, !tbaa !9
  %880 = load i32, ptr %12, align 4, !tbaa !5
  %881 = load i32, ptr %8, align 4, !tbaa !5
  %882 = mul nsw i32 0, %881
  %883 = add nsw i32 %880, %882
  %884 = sext i32 %883 to i64
  %885 = getelementptr inbounds double, ptr %879, i64 %884
  %886 = load double, ptr %885, align 8, !tbaa !11
  %887 = load ptr, ptr %7, align 8, !tbaa !9
  %888 = load i32, ptr %12, align 4, !tbaa !5
  %889 = load i32, ptr %8, align 4, !tbaa !5
  %890 = mul nsw i32 1, %889
  %891 = add nsw i32 %888, %890
  %892 = sext i32 %891 to i64
  %893 = getelementptr inbounds double, ptr %887, i64 %892
  %894 = load double, ptr %893, align 8, !tbaa !11
  %895 = fmul double 0x3FB1F3F0B024DC80, %894
  %896 = call double @llvm.fmuladd.f64(double 0xBFF5B6F7089FF1D1, double %886, double %895)
  %897 = load ptr, ptr %7, align 8, !tbaa !9
  %898 = load i32, ptr %12, align 4, !tbaa !5
  %899 = load i32, ptr %8, align 4, !tbaa !5
  %900 = mul nsw i32 2, %899
  %901 = add nsw i32 %898, %900
  %902 = sext i32 %901 to i64
  %903 = getelementptr inbounds double, ptr %897, i64 %902
  %904 = load double, ptr %903, align 8, !tbaa !11
  %905 = call double @llvm.fmuladd.f64(double 0x3FCCBE3CAE6B6284, double %904, double %896)
  %906 = load ptr, ptr %7, align 8, !tbaa !9
  %907 = load i32, ptr %12, align 4, !tbaa !5
  %908 = load i32, ptr %8, align 4, !tbaa !5
  %909 = mul nsw i32 3, %908
  %910 = add nsw i32 %907, %909
  %911 = sext i32 %910 to i64
  %912 = getelementptr inbounds double, ptr %906, i64 %911
  %913 = load double, ptr %912, align 8, !tbaa !11
  %914 = call double @llvm.fmuladd.f64(double 0xBFD81F8F0CEC60FF, double %913, double %905)
  %915 = load ptr, ptr %7, align 8, !tbaa !9
  %916 = load i32, ptr %12, align 4, !tbaa !5
  %917 = load i32, ptr %8, align 4, !tbaa !5
  %918 = mul nsw i32 4, %917
  %919 = add nsw i32 %916, %918
  %920 = sext i32 %919 to i64
  %921 = getelementptr inbounds double, ptr %915, i64 %920
  %922 = load double, ptr %921, align 8, !tbaa !11
  %923 = call double @llvm.fmuladd.f64(double 0xBFFBA497A89943F3, double %922, double %914)
  %924 = load ptr, ptr %7, align 8, !tbaa !9
  %925 = load i32, ptr %12, align 4, !tbaa !5
  %926 = load i32, ptr %8, align 4, !tbaa !5
  %927 = mul nsw i32 5, %926
  %928 = add nsw i32 %925, %927
  %929 = sext i32 %928 to i64
  %930 = getelementptr inbounds double, ptr %924, i64 %929
  %931 = load double, ptr %930, align 8, !tbaa !11
  %932 = call double @llvm.fmuladd.f64(double 0xBFDC5366E211BE90, double %931, double %923)
  %933 = load ptr, ptr %7, align 8, !tbaa !9
  %934 = load i32, ptr %12, align 4, !tbaa !5
  %935 = load i32, ptr %8, align 4, !tbaa !5
  %936 = mul nsw i32 6, %935
  %937 = add nsw i32 %934, %936
  %938 = sext i32 %937 to i64
  %939 = getelementptr inbounds double, ptr %933, i64 %938
  %940 = load double, ptr %939, align 8, !tbaa !11
  %941 = call double @llvm.fmuladd.f64(double 0xBC96C7DC8DD1684E, double %940, double %932)
  %942 = load ptr, ptr %7, align 8, !tbaa !9
  %943 = load i32, ptr %12, align 4, !tbaa !5
  %944 = load i32, ptr %8, align 4, !tbaa !5
  %945 = mul nsw i32 7, %944
  %946 = add nsw i32 %943, %945
  %947 = sext i32 %946 to i64
  %948 = getelementptr inbounds double, ptr %942, i64 %947
  %949 = load double, ptr %948, align 8, !tbaa !11
  %950 = call double @llvm.fmuladd.f64(double 0x3C950AD45332D6FE, double %949, double %941)
  %951 = load ptr, ptr %7, align 8, !tbaa !9
  %952 = load i32, ptr %12, align 4, !tbaa !5
  %953 = load i32, ptr %8, align 4, !tbaa !5
  %954 = mul nsw i32 8, %953
  %955 = add nsw i32 %952, %954
  %956 = sext i32 %955 to i64
  %957 = getelementptr inbounds double, ptr %951, i64 %956
  %958 = load double, ptr %957, align 8, !tbaa !11
  %959 = call double @llvm.fmuladd.f64(double 0x3C9EB6F29C749A96, double %958, double %950)
  %960 = load ptr, ptr %7, align 8, !tbaa !9
  %961 = load i32, ptr %12, align 4, !tbaa !5
  %962 = load i32, ptr %8, align 4, !tbaa !5
  %963 = mul nsw i32 9, %962
  %964 = add nsw i32 %961, %963
  %965 = sext i32 %964 to i64
  %966 = getelementptr inbounds double, ptr %960, i64 %965
  %967 = load double, ptr %966, align 8, !tbaa !11
  %968 = call double @llvm.fmuladd.f64(double 0xBC6D62BACB47689A, double %967, double %959)
  %969 = load ptr, ptr %7, align 8, !tbaa !9
  %970 = load i32, ptr %12, align 4, !tbaa !5
  %971 = load i32, ptr %8, align 4, !tbaa !5
  %972 = mul nsw i32 10, %971
  %973 = add nsw i32 %970, %972
  %974 = sext i32 %973 to i64
  %975 = getelementptr inbounds double, ptr %969, i64 %974
  %976 = load double, ptr %975, align 8, !tbaa !11
  %977 = call double @llvm.fmuladd.f64(double 0x3CB80BBA9C9EA48A, double %976, double %968)
  %978 = load ptr, ptr %7, align 8, !tbaa !9
  %979 = load i32, ptr %12, align 4, !tbaa !5
  %980 = load i32, ptr %8, align 4, !tbaa !5
  %981 = mul nsw i32 11, %980
  %982 = add nsw i32 %979, %981
  %983 = sext i32 %982 to i64
  %984 = getelementptr inbounds double, ptr %978, i64 %983
  %985 = load double, ptr %984, align 8, !tbaa !11
  %986 = call double @llvm.fmuladd.f64(double 0xBCAB001FD1461890, double %985, double %977)
  %987 = load ptr, ptr %7, align 8, !tbaa !9
  %988 = load i32, ptr %12, align 4, !tbaa !5
  %989 = load i32, ptr %8, align 4, !tbaa !5
  %990 = mul nsw i32 12, %989
  %991 = add nsw i32 %988, %990
  %992 = sext i32 %991 to i64
  %993 = getelementptr inbounds double, ptr %987, i64 %992
  %994 = load double, ptr %993, align 8, !tbaa !11
  %995 = call double @llvm.fmuladd.f64(double 0xBC9681DA589F9E72, double %994, double %986)
  %996 = load ptr, ptr %7, align 8, !tbaa !9
  %997 = load i32, ptr %12, align 4, !tbaa !5
  %998 = load i32, ptr %8, align 4, !tbaa !5
  %999 = mul nsw i32 13, %998
  %1000 = add nsw i32 %997, %999
  %1001 = sext i32 %1000 to i64
  %1002 = getelementptr inbounds double, ptr %996, i64 %1001
  %1003 = load double, ptr %1002, align 8, !tbaa !11
  %1004 = call double @llvm.fmuladd.f64(double 0xBC827123784CF602, double %1003, double %995)
  %1005 = load ptr, ptr %7, align 8, !tbaa !9
  %1006 = load i32, ptr %12, align 4, !tbaa !5
  %1007 = load i32, ptr %8, align 4, !tbaa !5
  %1008 = mul nsw i32 14, %1007
  %1009 = add nsw i32 %1006, %1008
  %1010 = sext i32 %1009 to i64
  %1011 = getelementptr inbounds double, ptr %1005, i64 %1010
  %1012 = load double, ptr %1011, align 8, !tbaa !11
  %1013 = call double @llvm.fmuladd.f64(double 0xBCAE4BA60AE12274, double %1012, double %1004)
  %1014 = load ptr, ptr %7, align 8, !tbaa !9
  %1015 = load i32, ptr %12, align 4, !tbaa !5
  %1016 = load i32, ptr %8, align 4, !tbaa !5
  %1017 = mul nsw i32 15, %1016
  %1018 = add nsw i32 %1015, %1017
  %1019 = sext i32 %1018 to i64
  %1020 = getelementptr inbounds double, ptr %1014, i64 %1019
  %1021 = load double, ptr %1020, align 8, !tbaa !11
  %1022 = call double @llvm.fmuladd.f64(double 0xBC78B38170BB85D3, double %1021, double %1013)
  %1023 = load ptr, ptr %7, align 8, !tbaa !9
  %1024 = load i32, ptr %12, align 4, !tbaa !5
  %1025 = load i32, ptr %8, align 4, !tbaa !5
  %1026 = mul nsw i32 16, %1025
  %1027 = add nsw i32 %1024, %1026
  %1028 = sext i32 %1027 to i64
  %1029 = getelementptr inbounds double, ptr %1023, i64 %1028
  %1030 = load double, ptr %1029, align 8, !tbaa !11
  %1031 = call double @llvm.fmuladd.f64(double 0xBCB30DECEA2D8A5E, double %1030, double %1022)
  %1032 = load ptr, ptr %7, align 8, !tbaa !9
  %1033 = load i32, ptr %12, align 4, !tbaa !5
  %1034 = load i32, ptr %8, align 4, !tbaa !5
  %1035 = mul nsw i32 17, %1034
  %1036 = add nsw i32 %1033, %1035
  %1037 = sext i32 %1036 to i64
  %1038 = getelementptr inbounds double, ptr %1032, i64 %1037
  %1039 = load double, ptr %1038, align 8, !tbaa !11
  %1040 = call double @llvm.fmuladd.f64(double 0xBCB4601E7CBDEFAF, double %1039, double %1031)
  store double %1040, ptr %11, align 8, !tbaa !11
  %1041 = load double, ptr %11, align 8, !tbaa !11
  %1042 = load ptr, ptr %9, align 8, !tbaa !9
  %1043 = load i32, ptr %12, align 4, !tbaa !5
  %1044 = load i32, ptr %10, align 4, !tbaa !5
  %1045 = mul nsw i32 5, %1044
  %1046 = add nsw i32 %1043, %1045
  %1047 = sext i32 %1046 to i64
  %1048 = getelementptr inbounds double, ptr %1042, i64 %1047
  %1049 = load double, ptr %1048, align 8, !tbaa !11
  %1050 = fadd double %1049, %1041
  store double %1050, ptr %1048, align 8, !tbaa !11
  %1051 = load ptr, ptr %7, align 8, !tbaa !9
  %1052 = load i32, ptr %12, align 4, !tbaa !5
  %1053 = load i32, ptr %8, align 4, !tbaa !5
  %1054 = mul nsw i32 0, %1053
  %1055 = add nsw i32 %1052, %1054
  %1056 = sext i32 %1055 to i64
  %1057 = getelementptr inbounds double, ptr %1051, i64 %1056
  %1058 = load double, ptr %1057, align 8, !tbaa !11
  %1059 = load ptr, ptr %7, align 8, !tbaa !9
  %1060 = load i32, ptr %12, align 4, !tbaa !5
  %1061 = load i32, ptr %8, align 4, !tbaa !5
  %1062 = mul nsw i32 1, %1061
  %1063 = add nsw i32 %1060, %1062
  %1064 = sext i32 %1063 to i64
  %1065 = getelementptr inbounds double, ptr %1059, i64 %1064
  %1066 = load double, ptr %1065, align 8, !tbaa !11
  %1067 = fmul double 0xBC8AF16F6DD6B170, %1066
  %1068 = call double @llvm.fmuladd.f64(double 0xBCAFA91475A2DE60, double %1058, double %1067)
  %1069 = load ptr, ptr %7, align 8, !tbaa !9
  %1070 = load i32, ptr %12, align 4, !tbaa !5
  %1071 = load i32, ptr %8, align 4, !tbaa !5
  %1072 = mul nsw i32 2, %1071
  %1073 = add nsw i32 %1070, %1072
  %1074 = sext i32 %1073 to i64
  %1075 = getelementptr inbounds double, ptr %1069, i64 %1074
  %1076 = load double, ptr %1075, align 8, !tbaa !11
  %1077 = call double @llvm.fmuladd.f64(double 0xBC97CD2320F06FBC, double %1076, double %1068)
  %1078 = load ptr, ptr %7, align 8, !tbaa !9
  %1079 = load i32, ptr %12, align 4, !tbaa !5
  %1080 = load i32, ptr %8, align 4, !tbaa !5
  %1081 = mul nsw i32 3, %1080
  %1082 = add nsw i32 %1079, %1081
  %1083 = sext i32 %1082 to i64
  %1084 = getelementptr inbounds double, ptr %1078, i64 %1083
  %1085 = load double, ptr %1084, align 8, !tbaa !11
  %1086 = call double @llvm.fmuladd.f64(double 0x3C912517F7A39056, double %1085, double %1077)
  %1087 = load ptr, ptr %7, align 8, !tbaa !9
  %1088 = load i32, ptr %12, align 4, !tbaa !5
  %1089 = load i32, ptr %8, align 4, !tbaa !5
  %1090 = mul nsw i32 4, %1089
  %1091 = add nsw i32 %1088, %1090
  %1092 = sext i32 %1091 to i64
  %1093 = getelementptr inbounds double, ptr %1087, i64 %1092
  %1094 = load double, ptr %1093, align 8, !tbaa !11
  %1095 = call double @llvm.fmuladd.f64(double 0x3CA26D18C495E068, double %1094, double %1086)
  %1096 = load ptr, ptr %7, align 8, !tbaa !9
  %1097 = load i32, ptr %12, align 4, !tbaa !5
  %1098 = load i32, ptr %8, align 4, !tbaa !5
  %1099 = mul nsw i32 5, %1098
  %1100 = add nsw i32 %1097, %1099
  %1101 = sext i32 %1100 to i64
  %1102 = getelementptr inbounds double, ptr %1096, i64 %1101
  %1103 = load double, ptr %1102, align 8, !tbaa !11
  %1104 = call double @llvm.fmuladd.f64(double 0x3C5FA39DC354EAFF, double %1103, double %1095)
  %1105 = load ptr, ptr %7, align 8, !tbaa !9
  %1106 = load i32, ptr %12, align 4, !tbaa !5
  %1107 = load i32, ptr %8, align 4, !tbaa !5
  %1108 = mul nsw i32 6, %1107
  %1109 = add nsw i32 %1106, %1108
  %1110 = sext i32 %1109 to i64
  %1111 = getelementptr inbounds double, ptr %1105, i64 %1110
  %1112 = load double, ptr %1111, align 8, !tbaa !11
  %1113 = call double @llvm.fmuladd.f64(double 0x3FF44E3F94172F46, double %1112, double %1104)
  %1114 = load ptr, ptr %7, align 8, !tbaa !9
  %1115 = load i32, ptr %12, align 4, !tbaa !5
  %1116 = load i32, ptr %8, align 4, !tbaa !5
  %1117 = mul nsw i32 7, %1116
  %1118 = add nsw i32 %1115, %1117
  %1119 = sext i32 %1118 to i64
  %1120 = getelementptr inbounds double, ptr %1114, i64 %1119
  %1121 = load double, ptr %1120, align 8, !tbaa !11
  %1122 = call double @llvm.fmuladd.f64(double 0xBF7DFA2300BBB500, double %1121, double %1113)
  %1123 = load ptr, ptr %7, align 8, !tbaa !9
  %1124 = load i32, ptr %12, align 4, !tbaa !5
  %1125 = load i32, ptr %8, align 4, !tbaa !5
  %1126 = mul nsw i32 8, %1125
  %1127 = add nsw i32 %1124, %1126
  %1128 = sext i32 %1127 to i64
  %1129 = getelementptr inbounds double, ptr %1123, i64 %1128
  %1130 = load double, ptr %1129, align 8, !tbaa !11
  %1131 = call double @llvm.fmuladd.f64(double 0x3FB9ECDD9812789D, double %1130, double %1122)
  %1132 = load ptr, ptr %7, align 8, !tbaa !9
  %1133 = load i32, ptr %12, align 4, !tbaa !5
  %1134 = load i32, ptr %8, align 4, !tbaa !5
  %1135 = mul nsw i32 9, %1134
  %1136 = add nsw i32 %1133, %1135
  %1137 = sext i32 %1136 to i64
  %1138 = getelementptr inbounds double, ptr %1132, i64 %1137
  %1139 = load double, ptr %1138, align 8, !tbaa !11
  %1140 = call double @llvm.fmuladd.f64(double 0xBF83952FC55A7034, double %1139, double %1131)
  %1141 = load ptr, ptr %7, align 8, !tbaa !9
  %1142 = load i32, ptr %12, align 4, !tbaa !5
  %1143 = load i32, ptr %8, align 4, !tbaa !5
  %1144 = mul nsw i32 10, %1143
  %1145 = add nsw i32 %1142, %1144
  %1146 = sext i32 %1145 to i64
  %1147 = getelementptr inbounds double, ptr %1141, i64 %1146
  %1148 = load double, ptr %1147, align 8, !tbaa !11
  %1149 = call double @llvm.fmuladd.f64(double 0xBFE4FBED5D8A9668, double %1148, double %1140)
  %1150 = load ptr, ptr %7, align 8, !tbaa !9
  %1151 = load i32, ptr %12, align 4, !tbaa !5
  %1152 = load i32, ptr %8, align 4, !tbaa !5
  %1153 = mul nsw i32 11, %1152
  %1154 = add nsw i32 %1151, %1153
  %1155 = sext i32 %1154 to i64
  %1156 = getelementptr inbounds double, ptr %1150, i64 %1155
  %1157 = load double, ptr %1156, align 8, !tbaa !11
  %1158 = call double @llvm.fmuladd.f64(double 0x3FD50884576D0BC1, double %1157, double %1149)
  %1159 = load ptr, ptr %7, align 8, !tbaa !9
  %1160 = load i32, ptr %12, align 4, !tbaa !5
  %1161 = load i32, ptr %8, align 4, !tbaa !5
  %1162 = mul nsw i32 12, %1161
  %1163 = add nsw i32 %1160, %1162
  %1164 = sext i32 %1163 to i64
  %1165 = getelementptr inbounds double, ptr %1159, i64 %1164
  %1166 = load double, ptr %1165, align 8, !tbaa !11
  %1167 = call double @llvm.fmuladd.f64(double 0x3CA5CAE36F1C5AB0, double %1166, double %1158)
  %1168 = load ptr, ptr %7, align 8, !tbaa !9
  %1169 = load i32, ptr %12, align 4, !tbaa !5
  %1170 = load i32, ptr %8, align 4, !tbaa !5
  %1171 = mul nsw i32 13, %1170
  %1172 = add nsw i32 %1169, %1171
  %1173 = sext i32 %1172 to i64
  %1174 = getelementptr inbounds double, ptr %1168, i64 %1173
  %1175 = load double, ptr %1174, align 8, !tbaa !11
  %1176 = call double @llvm.fmuladd.f64(double 0x3C7C91DEC9976F2B, double %1175, double %1167)
  %1177 = load ptr, ptr %7, align 8, !tbaa !9
  %1178 = load i32, ptr %12, align 4, !tbaa !5
  %1179 = load i32, ptr %8, align 4, !tbaa !5
  %1180 = mul nsw i32 14, %1179
  %1181 = add nsw i32 %1178, %1180
  %1182 = sext i32 %1181 to i64
  %1183 = getelementptr inbounds double, ptr %1177, i64 %1182
  %1184 = load double, ptr %1183, align 8, !tbaa !11
  %1185 = call double @llvm.fmuladd.f64(double 0x3C9CA3E3D7BB8328, double %1184, double %1176)
  %1186 = load ptr, ptr %7, align 8, !tbaa !9
  %1187 = load i32, ptr %12, align 4, !tbaa !5
  %1188 = load i32, ptr %8, align 4, !tbaa !5
  %1189 = mul nsw i32 15, %1188
  %1190 = add nsw i32 %1187, %1189
  %1191 = sext i32 %1190 to i64
  %1192 = getelementptr inbounds double, ptr %1186, i64 %1191
  %1193 = load double, ptr %1192, align 8, !tbaa !11
  %1194 = call double @llvm.fmuladd.f64(double 0xBC6B4399CAA6ADB0, double %1193, double %1185)
  %1195 = load ptr, ptr %7, align 8, !tbaa !9
  %1196 = load i32, ptr %12, align 4, !tbaa !5
  %1197 = load i32, ptr %8, align 4, !tbaa !5
  %1198 = mul nsw i32 16, %1197
  %1199 = add nsw i32 %1196, %1198
  %1200 = sext i32 %1199 to i64
  %1201 = getelementptr inbounds double, ptr %1195, i64 %1200
  %1202 = load double, ptr %1201, align 8, !tbaa !11
  %1203 = call double @llvm.fmuladd.f64(double 0x3C6E67AB5FEF02FF, double %1202, double %1194)
  %1204 = load ptr, ptr %7, align 8, !tbaa !9
  %1205 = load i32, ptr %12, align 4, !tbaa !5
  %1206 = load i32, ptr %8, align 4, !tbaa !5
  %1207 = mul nsw i32 17, %1206
  %1208 = add nsw i32 %1205, %1207
  %1209 = sext i32 %1208 to i64
  %1210 = getelementptr inbounds double, ptr %1204, i64 %1209
  %1211 = load double, ptr %1210, align 8, !tbaa !11
  %1212 = call double @llvm.fmuladd.f64(double 0x3C9BAD7EA815E448, double %1211, double %1203)
  store double %1212, ptr %11, align 8, !tbaa !11
  %1213 = load double, ptr %11, align 8, !tbaa !11
  %1214 = load ptr, ptr %9, align 8, !tbaa !9
  %1215 = load i32, ptr %12, align 4, !tbaa !5
  %1216 = load i32, ptr %10, align 4, !tbaa !5
  %1217 = mul nsw i32 6, %1216
  %1218 = add nsw i32 %1215, %1217
  %1219 = sext i32 %1218 to i64
  %1220 = getelementptr inbounds double, ptr %1214, i64 %1219
  %1221 = load double, ptr %1220, align 8, !tbaa !11
  %1222 = fadd double %1221, %1213
  store double %1222, ptr %1220, align 8, !tbaa !11
  %1223 = load ptr, ptr %7, align 8, !tbaa !9
  %1224 = load i32, ptr %12, align 4, !tbaa !5
  %1225 = load i32, ptr %8, align 4, !tbaa !5
  %1226 = mul nsw i32 0, %1225
  %1227 = add nsw i32 %1224, %1226
  %1228 = sext i32 %1227 to i64
  %1229 = getelementptr inbounds double, ptr %1223, i64 %1228
  %1230 = load double, ptr %1229, align 8, !tbaa !11
  %1231 = load ptr, ptr %7, align 8, !tbaa !9
  %1232 = load i32, ptr %12, align 4, !tbaa !5
  %1233 = load i32, ptr %8, align 4, !tbaa !5
  %1234 = mul nsw i32 1, %1233
  %1235 = add nsw i32 %1232, %1234
  %1236 = sext i32 %1235 to i64
  %1237 = getelementptr inbounds double, ptr %1231, i64 %1236
  %1238 = load double, ptr %1237, align 8, !tbaa !11
  %1239 = fmul double 0x3CB24802BB25DFAC, %1238
  %1240 = call double @llvm.fmuladd.f64(double 0x3CA733637AD25B8E, double %1230, double %1239)
  %1241 = load ptr, ptr %7, align 8, !tbaa !9
  %1242 = load i32, ptr %12, align 4, !tbaa !5
  %1243 = load i32, ptr %8, align 4, !tbaa !5
  %1244 = mul nsw i32 2, %1243
  %1245 = add nsw i32 %1242, %1244
  %1246 = sext i32 %1245 to i64
  %1247 = getelementptr inbounds double, ptr %1241, i64 %1246
  %1248 = load double, ptr %1247, align 8, !tbaa !11
  %1249 = call double @llvm.fmuladd.f64(double 0xBC9FC7EA1CC30EE8, double %1248, double %1240)
  %1250 = load ptr, ptr %7, align 8, !tbaa !9
  %1251 = load i32, ptr %12, align 4, !tbaa !5
  %1252 = load i32, ptr %8, align 4, !tbaa !5
  %1253 = mul nsw i32 3, %1252
  %1254 = add nsw i32 %1251, %1253
  %1255 = sext i32 %1254 to i64
  %1256 = getelementptr inbounds double, ptr %1250, i64 %1255
  %1257 = load double, ptr %1256, align 8, !tbaa !11
  %1258 = call double @llvm.fmuladd.f64(double 0xBCB44A60DE6828AB, double %1257, double %1249)
  %1259 = load ptr, ptr %7, align 8, !tbaa !9
  %1260 = load i32, ptr %12, align 4, !tbaa !5
  %1261 = load i32, ptr %8, align 4, !tbaa !5
  %1262 = mul nsw i32 4, %1261
  %1263 = add nsw i32 %1260, %1262
  %1264 = sext i32 %1263 to i64
  %1265 = getelementptr inbounds double, ptr %1259, i64 %1264
  %1266 = load double, ptr %1265, align 8, !tbaa !11
  %1267 = call double @llvm.fmuladd.f64(double 0xBCB000D696902285, double %1266, double %1258)
  %1268 = load ptr, ptr %7, align 8, !tbaa !9
  %1269 = load i32, ptr %12, align 4, !tbaa !5
  %1270 = load i32, ptr %8, align 4, !tbaa !5
  %1271 = mul nsw i32 5, %1270
  %1272 = add nsw i32 %1269, %1271
  %1273 = sext i32 %1272 to i64
  %1274 = getelementptr inbounds double, ptr %1268, i64 %1273
  %1275 = load double, ptr %1274, align 8, !tbaa !11
  %1276 = call double @llvm.fmuladd.f64(double 0xBCA826233EF25B10, double %1275, double %1267)
  %1277 = load ptr, ptr %7, align 8, !tbaa !9
  %1278 = load i32, ptr %12, align 4, !tbaa !5
  %1279 = load i32, ptr %8, align 4, !tbaa !5
  %1280 = mul nsw i32 6, %1279
  %1281 = add nsw i32 %1278, %1280
  %1282 = sext i32 %1281 to i64
  %1283 = getelementptr inbounds double, ptr %1277, i64 %1282
  %1284 = load double, ptr %1283, align 8, !tbaa !11
  %1285 = call double @llvm.fmuladd.f64(double 0x3FE4EDE8EE25610A, double %1284, double %1276)
  %1286 = load ptr, ptr %7, align 8, !tbaa !9
  %1287 = load i32, ptr %12, align 4, !tbaa !5
  %1288 = load i32, ptr %8, align 4, !tbaa !5
  %1289 = mul nsw i32 7, %1288
  %1290 = add nsw i32 %1287, %1289
  %1291 = sext i32 %1290 to i64
  %1292 = getelementptr inbounds double, ptr %1286, i64 %1291
  %1293 = load double, ptr %1292, align 8, !tbaa !11
  %1294 = call double @llvm.fmuladd.f64(double 0xBFE8AC73392375C0, double %1293, double %1285)
  %1295 = load ptr, ptr %7, align 8, !tbaa !9
  %1296 = load i32, ptr %12, align 4, !tbaa !5
  %1297 = load i32, ptr %8, align 4, !tbaa !5
  %1298 = mul nsw i32 8, %1297
  %1299 = add nsw i32 %1296, %1298
  %1300 = sext i32 %1299 to i64
  %1301 = getelementptr inbounds double, ptr %1295, i64 %1300
  %1302 = load double, ptr %1301, align 8, !tbaa !11
  %1303 = call double @llvm.fmuladd.f64(double 0x3FEA5488770B26A9, double %1302, double %1294)
  %1304 = load ptr, ptr %7, align 8, !tbaa !9
  %1305 = load i32, ptr %12, align 4, !tbaa !5
  %1306 = load i32, ptr %8, align 4, !tbaa !5
  %1307 = mul nsw i32 9, %1306
  %1308 = add nsw i32 %1305, %1307
  %1309 = sext i32 %1308 to i64
  %1310 = getelementptr inbounds double, ptr %1304, i64 %1309
  %1311 = load double, ptr %1310, align 8, !tbaa !11
  %1312 = call double @llvm.fmuladd.f64(double 0xBFFEF1F8514C97D0, double %1311, double %1303)
  %1313 = load ptr, ptr %7, align 8, !tbaa !9
  %1314 = load i32, ptr %12, align 4, !tbaa !5
  %1315 = load i32, ptr %8, align 4, !tbaa !5
  %1316 = mul nsw i32 10, %1315
  %1317 = add nsw i32 %1314, %1316
  %1318 = sext i32 %1317 to i64
  %1319 = getelementptr inbounds double, ptr %1313, i64 %1318
  %1320 = load double, ptr %1319, align 8, !tbaa !11
  %1321 = call double @llvm.fmuladd.f64(double 0x3FF44CD742FC94DF, double %1320, double %1312)
  %1322 = load ptr, ptr %7, align 8, !tbaa !9
  %1323 = load i32, ptr %12, align 4, !tbaa !5
  %1324 = load i32, ptr %8, align 4, !tbaa !5
  %1325 = mul nsw i32 11, %1324
  %1326 = add nsw i32 %1323, %1325
  %1327 = sext i32 %1326 to i64
  %1328 = getelementptr inbounds double, ptr %1322, i64 %1327
  %1329 = load double, ptr %1328, align 8, !tbaa !11
  %1330 = call double @llvm.fmuladd.f64(double 0xBFF01B2FE70C118E, double %1329, double %1321)
  %1331 = load ptr, ptr %7, align 8, !tbaa !9
  %1332 = load i32, ptr %12, align 4, !tbaa !5
  %1333 = load i32, ptr %8, align 4, !tbaa !5
  %1334 = mul nsw i32 12, %1333
  %1335 = add nsw i32 %1332, %1334
  %1336 = sext i32 %1335 to i64
  %1337 = getelementptr inbounds double, ptr %1331, i64 %1336
  %1338 = load double, ptr %1337, align 8, !tbaa !11
  %1339 = call double @llvm.fmuladd.f64(double 0xBCBA0032ABCB100C, double %1338, double %1330)
  %1340 = load ptr, ptr %7, align 8, !tbaa !9
  %1341 = load i32, ptr %12, align 4, !tbaa !5
  %1342 = load i32, ptr %8, align 4, !tbaa !5
  %1343 = mul nsw i32 13, %1342
  %1344 = add nsw i32 %1341, %1343
  %1345 = sext i32 %1344 to i64
  %1346 = getelementptr inbounds double, ptr %1340, i64 %1345
  %1347 = load double, ptr %1346, align 8, !tbaa !11
  %1348 = call double @llvm.fmuladd.f64(double 0x3CBC200ECF3E06E7, double %1347, double %1339)
  %1349 = load ptr, ptr %7, align 8, !tbaa !9
  %1350 = load i32, ptr %12, align 4, !tbaa !5
  %1351 = load i32, ptr %8, align 4, !tbaa !5
  %1352 = mul nsw i32 14, %1351
  %1353 = add nsw i32 %1350, %1352
  %1354 = sext i32 %1353 to i64
  %1355 = getelementptr inbounds double, ptr %1349, i64 %1354
  %1356 = load double, ptr %1355, align 8, !tbaa !11
  %1357 = call double @llvm.fmuladd.f64(double 0xBCBDCFF9DD802CEF, double %1356, double %1348)
  %1358 = load ptr, ptr %7, align 8, !tbaa !9
  %1359 = load i32, ptr %12, align 4, !tbaa !5
  %1360 = load i32, ptr %8, align 4, !tbaa !5
  %1361 = mul nsw i32 15, %1360
  %1362 = add nsw i32 %1359, %1361
  %1363 = sext i32 %1362 to i64
  %1364 = getelementptr inbounds double, ptr %1358, i64 %1363
  %1365 = load double, ptr %1364, align 8, !tbaa !11
  %1366 = call double @llvm.fmuladd.f64(double 0xBC68F31986A4E76E, double %1365, double %1357)
  %1367 = load ptr, ptr %7, align 8, !tbaa !9
  %1368 = load i32, ptr %12, align 4, !tbaa !5
  %1369 = load i32, ptr %8, align 4, !tbaa !5
  %1370 = mul nsw i32 16, %1369
  %1371 = add nsw i32 %1368, %1370
  %1372 = sext i32 %1371 to i64
  %1373 = getelementptr inbounds double, ptr %1367, i64 %1372
  %1374 = load double, ptr %1373, align 8, !tbaa !11
  %1375 = call double @llvm.fmuladd.f64(double 0x3CBB2800A30A8EA4, double %1374, double %1366)
  %1376 = load ptr, ptr %7, align 8, !tbaa !9
  %1377 = load i32, ptr %12, align 4, !tbaa !5
  %1378 = load i32, ptr %8, align 4, !tbaa !5
  %1379 = mul nsw i32 17, %1378
  %1380 = add nsw i32 %1377, %1379
  %1381 = sext i32 %1380 to i64
  %1382 = getelementptr inbounds double, ptr %1376, i64 %1381
  %1383 = load double, ptr %1382, align 8, !tbaa !11
  %1384 = call double @llvm.fmuladd.f64(double 0x3CC423B95478E8B3, double %1383, double %1375)
  store double %1384, ptr %11, align 8, !tbaa !11
  %1385 = load double, ptr %11, align 8, !tbaa !11
  %1386 = load ptr, ptr %9, align 8, !tbaa !9
  %1387 = load i32, ptr %12, align 4, !tbaa !5
  %1388 = load i32, ptr %10, align 4, !tbaa !5
  %1389 = mul nsw i32 7, %1388
  %1390 = add nsw i32 %1387, %1389
  %1391 = sext i32 %1390 to i64
  %1392 = getelementptr inbounds double, ptr %1386, i64 %1391
  %1393 = load double, ptr %1392, align 8, !tbaa !11
  %1394 = fadd double %1393, %1385
  store double %1394, ptr %1392, align 8, !tbaa !11
  %1395 = load ptr, ptr %7, align 8, !tbaa !9
  %1396 = load i32, ptr %12, align 4, !tbaa !5
  %1397 = load i32, ptr %8, align 4, !tbaa !5
  %1398 = mul nsw i32 0, %1397
  %1399 = add nsw i32 %1396, %1398
  %1400 = sext i32 %1399 to i64
  %1401 = getelementptr inbounds double, ptr %1395, i64 %1400
  %1402 = load double, ptr %1401, align 8, !tbaa !11
  %1403 = load ptr, ptr %7, align 8, !tbaa !9
  %1404 = load i32, ptr %12, align 4, !tbaa !5
  %1405 = load i32, ptr %8, align 4, !tbaa !5
  %1406 = mul nsw i32 1, %1405
  %1407 = add nsw i32 %1404, %1406
  %1408 = sext i32 %1407 to i64
  %1409 = getelementptr inbounds double, ptr %1403, i64 %1408
  %1410 = load double, ptr %1409, align 8, !tbaa !11
  %1411 = fmul double 0xBCA303E7E9D23CFA, %1410
  %1412 = call double @llvm.fmuladd.f64(double 0x3C8FBBBF8479477C, double %1402, double %1411)
  %1413 = load ptr, ptr %7, align 8, !tbaa !9
  %1414 = load i32, ptr %12, align 4, !tbaa !5
  %1415 = load i32, ptr %8, align 4, !tbaa !5
  %1416 = mul nsw i32 2, %1415
  %1417 = add nsw i32 %1414, %1416
  %1418 = sext i32 %1417 to i64
  %1419 = getelementptr inbounds double, ptr %1413, i64 %1418
  %1420 = load double, ptr %1419, align 8, !tbaa !11
  %1421 = call double @llvm.fmuladd.f64(double 0x3C7502E6070E6BC0, double %1420, double %1412)
  %1422 = load ptr, ptr %7, align 8, !tbaa !9
  %1423 = load i32, ptr %12, align 4, !tbaa !5
  %1424 = load i32, ptr %8, align 4, !tbaa !5
  %1425 = mul nsw i32 3, %1424
  %1426 = add nsw i32 %1423, %1425
  %1427 = sext i32 %1426 to i64
  %1428 = getelementptr inbounds double, ptr %1422, i64 %1427
  %1429 = load double, ptr %1428, align 8, !tbaa !11
  %1430 = call double @llvm.fmuladd.f64(double 0x3CBF2499CB50E496, double %1429, double %1421)
  %1431 = load ptr, ptr %7, align 8, !tbaa !9
  %1432 = load i32, ptr %12, align 4, !tbaa !5
  %1433 = load i32, ptr %8, align 4, !tbaa !5
  %1434 = mul nsw i32 4, %1433
  %1435 = add nsw i32 %1432, %1434
  %1436 = sext i32 %1435 to i64
  %1437 = getelementptr inbounds double, ptr %1431, i64 %1436
  %1438 = load double, ptr %1437, align 8, !tbaa !11
  %1439 = call double @llvm.fmuladd.f64(double 0xBCB18E75707CAEC2, double %1438, double %1430)
  %1440 = load ptr, ptr %7, align 8, !tbaa !9
  %1441 = load i32, ptr %12, align 4, !tbaa !5
  %1442 = load i32, ptr %8, align 4, !tbaa !5
  %1443 = mul nsw i32 5, %1442
  %1444 = add nsw i32 %1441, %1443
  %1445 = sext i32 %1444 to i64
  %1446 = getelementptr inbounds double, ptr %1440, i64 %1445
  %1447 = load double, ptr %1446, align 8, !tbaa !11
  %1448 = call double @llvm.fmuladd.f64(double 0xBC957EB0C0D32A92, double %1447, double %1439)
  %1449 = load ptr, ptr %7, align 8, !tbaa !9
  %1450 = load i32, ptr %12, align 4, !tbaa !5
  %1451 = load i32, ptr %8, align 4, !tbaa !5
  %1452 = mul nsw i32 6, %1451
  %1453 = add nsw i32 %1450, %1452
  %1454 = sext i32 %1453 to i64
  %1455 = getelementptr inbounds double, ptr %1449, i64 %1454
  %1456 = load double, ptr %1455, align 8, !tbaa !11
  %1457 = call double @llvm.fmuladd.f64(double 0xBFE1EC4181248ADF, double %1456, double %1448)
  %1458 = load ptr, ptr %7, align 8, !tbaa !9
  %1459 = load i32, ptr %12, align 4, !tbaa !5
  %1460 = load i32, ptr %8, align 4, !tbaa !5
  %1461 = mul nsw i32 7, %1460
  %1462 = add nsw i32 %1459, %1461
  %1463 = sext i32 %1462 to i64
  %1464 = getelementptr inbounds double, ptr %1458, i64 %1463
  %1465 = load double, ptr %1464, align 8, !tbaa !11
  %1466 = call double @llvm.fmuladd.f64(double 0xBFDFFE63E285177B, double %1465, double %1457)
  %1467 = load ptr, ptr %7, align 8, !tbaa !9
  %1468 = load i32, ptr %12, align 4, !tbaa !5
  %1469 = load i32, ptr %8, align 4, !tbaa !5
  %1470 = mul nsw i32 8, %1469
  %1471 = add nsw i32 %1468, %1470
  %1472 = sext i32 %1471 to i64
  %1473 = getelementptr inbounds double, ptr %1467, i64 %1472
  %1474 = load double, ptr %1473, align 8, !tbaa !11
  %1475 = call double @llvm.fmuladd.f64(double 0x4000E9CE75C2FBF6, double %1474, double %1466)
  %1476 = load ptr, ptr %7, align 8, !tbaa !9
  %1477 = load i32, ptr %12, align 4, !tbaa !5
  %1478 = load i32, ptr %8, align 4, !tbaa !5
  %1479 = mul nsw i32 9, %1478
  %1480 = add nsw i32 %1477, %1479
  %1481 = sext i32 %1480 to i64
  %1482 = getelementptr inbounds double, ptr %1476, i64 %1481
  %1483 = load double, ptr %1482, align 8, !tbaa !11
  %1484 = call double @llvm.fmuladd.f64(double 0x3FF31D88B253B084, double %1483, double %1475)
  %1485 = load ptr, ptr %7, align 8, !tbaa !9
  %1486 = load i32, ptr %12, align 4, !tbaa !5
  %1487 = load i32, ptr %8, align 4, !tbaa !5
  %1488 = mul nsw i32 10, %1487
  %1489 = add nsw i32 %1486, %1488
  %1490 = sext i32 %1489 to i64
  %1491 = getelementptr inbounds double, ptr %1485, i64 %1490
  %1492 = load double, ptr %1491, align 8, !tbaa !11
  %1493 = call double @llvm.fmuladd.f64(double 0x3FF2343957F3A8AA, double %1492, double %1484)
  %1494 = load ptr, ptr %7, align 8, !tbaa !9
  %1495 = load i32, ptr %12, align 4, !tbaa !5
  %1496 = load i32, ptr %8, align 4, !tbaa !5
  %1497 = mul nsw i32 11, %1496
  %1498 = add nsw i32 %1495, %1497
  %1499 = sext i32 %1498 to i64
  %1500 = getelementptr inbounds double, ptr %1494, i64 %1499
  %1501 = load double, ptr %1500, align 8, !tbaa !11
  %1502 = call double @llvm.fmuladd.f64(double 0xBFEE712F1EF7D896, double %1501, double %1493)
  %1503 = load ptr, ptr %7, align 8, !tbaa !9
  %1504 = load i32, ptr %12, align 4, !tbaa !5
  %1505 = load i32, ptr %8, align 4, !tbaa !5
  %1506 = mul nsw i32 12, %1505
  %1507 = add nsw i32 %1504, %1506
  %1508 = sext i32 %1507 to i64
  %1509 = getelementptr inbounds double, ptr %1503, i64 %1508
  %1510 = load double, ptr %1509, align 8, !tbaa !11
  %1511 = call double @llvm.fmuladd.f64(double 0xBCC00C78C6295034, double %1510, double %1502)
  %1512 = load ptr, ptr %7, align 8, !tbaa !9
  %1513 = load i32, ptr %12, align 4, !tbaa !5
  %1514 = load i32, ptr %8, align 4, !tbaa !5
  %1515 = mul nsw i32 13, %1514
  %1516 = add nsw i32 %1513, %1515
  %1517 = sext i32 %1516 to i64
  %1518 = getelementptr inbounds double, ptr %1512, i64 %1517
  %1519 = load double, ptr %1518, align 8, !tbaa !11
  %1520 = call double @llvm.fmuladd.f64(double 0xBCA515E72A62BD71, double %1519, double %1511)
  %1521 = load ptr, ptr %7, align 8, !tbaa !9
  %1522 = load i32, ptr %12, align 4, !tbaa !5
  %1523 = load i32, ptr %8, align 4, !tbaa !5
  %1524 = mul nsw i32 14, %1523
  %1525 = add nsw i32 %1522, %1524
  %1526 = sext i32 %1525 to i64
  %1527 = getelementptr inbounds double, ptr %1521, i64 %1526
  %1528 = load double, ptr %1527, align 8, !tbaa !11
  %1529 = call double @llvm.fmuladd.f64(double 0xBCC440052B0B6591, double %1528, double %1520)
  %1530 = load ptr, ptr %7, align 8, !tbaa !9
  %1531 = load i32, ptr %12, align 4, !tbaa !5
  %1532 = load i32, ptr %8, align 4, !tbaa !5
  %1533 = mul nsw i32 15, %1532
  %1534 = add nsw i32 %1531, %1533
  %1535 = sext i32 %1534 to i64
  %1536 = getelementptr inbounds double, ptr %1530, i64 %1535
  %1537 = load double, ptr %1536, align 8, !tbaa !11
  %1538 = call double @llvm.fmuladd.f64(double 0x3CB5037F708D2B40, double %1537, double %1529)
  %1539 = load ptr, ptr %7, align 8, !tbaa !9
  %1540 = load i32, ptr %12, align 4, !tbaa !5
  %1541 = load i32, ptr %8, align 4, !tbaa !5
  %1542 = mul nsw i32 16, %1541
  %1543 = add nsw i32 %1540, %1542
  %1544 = sext i32 %1543 to i64
  %1545 = getelementptr inbounds double, ptr %1539, i64 %1544
  %1546 = load double, ptr %1545, align 8, !tbaa !11
  %1547 = call double @llvm.fmuladd.f64(double 0x3CC9C5D37CDA2F2D, double %1546, double %1538)
  %1548 = load ptr, ptr %7, align 8, !tbaa !9
  %1549 = load i32, ptr %12, align 4, !tbaa !5
  %1550 = load i32, ptr %8, align 4, !tbaa !5
  %1551 = mul nsw i32 17, %1550
  %1552 = add nsw i32 %1549, %1551
  %1553 = sext i32 %1552 to i64
  %1554 = getelementptr inbounds double, ptr %1548, i64 %1553
  %1555 = load double, ptr %1554, align 8, !tbaa !11
  %1556 = call double @llvm.fmuladd.f64(double 0x3CCF6C49D3A9D98C, double %1555, double %1547)
  store double %1556, ptr %11, align 8, !tbaa !11
  %1557 = load double, ptr %11, align 8, !tbaa !11
  %1558 = load ptr, ptr %9, align 8, !tbaa !9
  %1559 = load i32, ptr %12, align 4, !tbaa !5
  %1560 = load i32, ptr %10, align 4, !tbaa !5
  %1561 = mul nsw i32 8, %1560
  %1562 = add nsw i32 %1559, %1561
  %1563 = sext i32 %1562 to i64
  %1564 = getelementptr inbounds double, ptr %1558, i64 %1563
  %1565 = load double, ptr %1564, align 8, !tbaa !11
  %1566 = fadd double %1565, %1557
  store double %1566, ptr %1564, align 8, !tbaa !11
  %1567 = load ptr, ptr %7, align 8, !tbaa !9
  %1568 = load i32, ptr %12, align 4, !tbaa !5
  %1569 = load i32, ptr %8, align 4, !tbaa !5
  %1570 = mul nsw i32 0, %1569
  %1571 = add nsw i32 %1568, %1570
  %1572 = sext i32 %1571 to i64
  %1573 = getelementptr inbounds double, ptr %1567, i64 %1572
  %1574 = load double, ptr %1573, align 8, !tbaa !11
  %1575 = load ptr, ptr %7, align 8, !tbaa !9
  %1576 = load i32, ptr %12, align 4, !tbaa !5
  %1577 = load i32, ptr %8, align 4, !tbaa !5
  %1578 = mul nsw i32 1, %1577
  %1579 = add nsw i32 %1576, %1578
  %1580 = sext i32 %1579 to i64
  %1581 = getelementptr inbounds double, ptr %1575, i64 %1580
  %1582 = load double, ptr %1581, align 8, !tbaa !11
  %1583 = fmul double 0xBC83FC569180EE60, %1582
  %1584 = call double @llvm.fmuladd.f64(double 0xBC8EA5ADFAA929A6, double %1574, double %1583)
  %1585 = load ptr, ptr %7, align 8, !tbaa !9
  %1586 = load i32, ptr %12, align 4, !tbaa !5
  %1587 = load i32, ptr %8, align 4, !tbaa !5
  %1588 = mul nsw i32 2, %1587
  %1589 = add nsw i32 %1586, %1588
  %1590 = sext i32 %1589 to i64
  %1591 = getelementptr inbounds double, ptr %1585, i64 %1590
  %1592 = load double, ptr %1591, align 8, !tbaa !11
  %1593 = call double @llvm.fmuladd.f64(double 0xBC6E3A78632E1596, double %1592, double %1584)
  %1594 = load ptr, ptr %7, align 8, !tbaa !9
  %1595 = load i32, ptr %12, align 4, !tbaa !5
  %1596 = load i32, ptr %8, align 4, !tbaa !5
  %1597 = mul nsw i32 3, %1596
  %1598 = add nsw i32 %1595, %1597
  %1599 = sext i32 %1598 to i64
  %1600 = getelementptr inbounds double, ptr %1594, i64 %1599
  %1601 = load double, ptr %1600, align 8, !tbaa !11
  %1602 = call double @llvm.fmuladd.f64(double 0xBC83A74A36148518, double %1601, double %1593)
  %1603 = load ptr, ptr %7, align 8, !tbaa !9
  %1604 = load i32, ptr %12, align 4, !tbaa !5
  %1605 = load i32, ptr %8, align 4, !tbaa !5
  %1606 = mul nsw i32 4, %1605
  %1607 = add nsw i32 %1604, %1606
  %1608 = sext i32 %1607 to i64
  %1609 = getelementptr inbounds double, ptr %1603, i64 %1608
  %1610 = load double, ptr %1609, align 8, !tbaa !11
  %1611 = call double @llvm.fmuladd.f64(double 0x3CB564D90EDE042E, double %1610, double %1602)
  %1612 = load ptr, ptr %7, align 8, !tbaa !9
  %1613 = load i32, ptr %12, align 4, !tbaa !5
  %1614 = load i32, ptr %8, align 4, !tbaa !5
  %1615 = mul nsw i32 5, %1614
  %1616 = add nsw i32 %1613, %1615
  %1617 = sext i32 %1616 to i64
  %1618 = getelementptr inbounds double, ptr %1612, i64 %1617
  %1619 = load double, ptr %1618, align 8, !tbaa !11
  %1620 = call double @llvm.fmuladd.f64(double 0x3C989B6B8C34D144, double %1619, double %1611)
  %1621 = load ptr, ptr %7, align 8, !tbaa !9
  %1622 = load i32, ptr %12, align 4, !tbaa !5
  %1623 = load i32, ptr %8, align 4, !tbaa !5
  %1624 = mul nsw i32 6, %1623
  %1625 = add nsw i32 %1622, %1624
  %1626 = sext i32 %1625 to i64
  %1627 = getelementptr inbounds double, ptr %1621, i64 %1626
  %1628 = load double, ptr %1627, align 8, !tbaa !11
  %1629 = call double @llvm.fmuladd.f64(double 0xBF734721512AF3A0, double %1628, double %1620)
  %1630 = load ptr, ptr %7, align 8, !tbaa !9
  %1631 = load i32, ptr %12, align 4, !tbaa !5
  %1632 = load i32, ptr %8, align 4, !tbaa !5
  %1633 = mul nsw i32 7, %1632
  %1634 = add nsw i32 %1631, %1633
  %1635 = sext i32 %1634 to i64
  %1636 = getelementptr inbounds double, ptr %1630, i64 %1635
  %1637 = load double, ptr %1636, align 8, !tbaa !11
  %1638 = call double @llvm.fmuladd.f64(double 0x3FF21EFA862DF3DE, double %1637, double %1629)
  %1639 = load ptr, ptr %7, align 8, !tbaa !9
  %1640 = load i32, ptr %12, align 4, !tbaa !5
  %1641 = load i32, ptr %8, align 4, !tbaa !5
  %1642 = mul nsw i32 8, %1641
  %1643 = add nsw i32 %1640, %1642
  %1644 = sext i32 %1643 to i64
  %1645 = getelementptr inbounds double, ptr %1639, i64 %1644
  %1646 = load double, ptr %1645, align 8, !tbaa !11
  %1647 = call double @llvm.fmuladd.f64(double 0xBFF7F19EB1BA88FC, double %1646, double %1638)
  %1648 = load ptr, ptr %7, align 8, !tbaa !9
  %1649 = load i32, ptr %12, align 4, !tbaa !5
  %1650 = load i32, ptr %8, align 4, !tbaa !5
  %1651 = mul nsw i32 9, %1650
  %1652 = add nsw i32 %1649, %1651
  %1653 = sext i32 %1652 to i64
  %1654 = getelementptr inbounds double, ptr %1648, i64 %1653
  %1655 = load double, ptr %1654, align 8, !tbaa !11
  %1656 = call double @llvm.fmuladd.f64(double 0x3FC901A35D55DB50, double %1655, double %1647)
  %1657 = load ptr, ptr %7, align 8, !tbaa !9
  %1658 = load i32, ptr %12, align 4, !tbaa !5
  %1659 = load i32, ptr %8, align 4, !tbaa !5
  %1660 = mul nsw i32 10, %1659
  %1661 = add nsw i32 %1658, %1660
  %1662 = sext i32 %1661 to i64
  %1663 = getelementptr inbounds double, ptr %1657, i64 %1662
  %1664 = load double, ptr %1663, align 8, !tbaa !11
  %1665 = call double @llvm.fmuladd.f64(double 0xBFF48831FA6C703B, double %1664, double %1656)
  %1666 = load ptr, ptr %7, align 8, !tbaa !9
  %1667 = load i32, ptr %12, align 4, !tbaa !5
  %1668 = load i32, ptr %8, align 4, !tbaa !5
  %1669 = mul nsw i32 11, %1668
  %1670 = add nsw i32 %1667, %1669
  %1671 = sext i32 %1670 to i64
  %1672 = getelementptr inbounds double, ptr %1666, i64 %1671
  %1673 = load double, ptr %1672, align 8, !tbaa !11
  %1674 = call double @llvm.fmuladd.f64(double 0x3FF0AF85DD8BD41B, double %1673, double %1665)
  %1675 = load ptr, ptr %7, align 8, !tbaa !9
  %1676 = load i32, ptr %12, align 4, !tbaa !5
  %1677 = load i32, ptr %8, align 4, !tbaa !5
  %1678 = mul nsw i32 12, %1677
  %1679 = add nsw i32 %1676, %1678
  %1680 = sext i32 %1679 to i64
  %1681 = getelementptr inbounds double, ptr %1675, i64 %1680
  %1682 = load double, ptr %1681, align 8, !tbaa !11
  %1683 = call double @llvm.fmuladd.f64(double 0x3CC3E8D573A56FAD, double %1682, double %1674)
  %1684 = load ptr, ptr %7, align 8, !tbaa !9
  %1685 = load i32, ptr %12, align 4, !tbaa !5
  %1686 = load i32, ptr %8, align 4, !tbaa !5
  %1687 = mul nsw i32 13, %1686
  %1688 = add nsw i32 %1685, %1687
  %1689 = sext i32 %1688 to i64
  %1690 = getelementptr inbounds double, ptr %1684, i64 %1689
  %1691 = load double, ptr %1690, align 8, !tbaa !11
  %1692 = call double @llvm.fmuladd.f64(double 0x3C8C4729A9EC58BF, double %1691, double %1683)
  %1693 = load ptr, ptr %7, align 8, !tbaa !9
  %1694 = load i32, ptr %12, align 4, !tbaa !5
  %1695 = load i32, ptr %8, align 4, !tbaa !5
  %1696 = mul nsw i32 14, %1695
  %1697 = add nsw i32 %1694, %1696
  %1698 = sext i32 %1697 to i64
  %1699 = getelementptr inbounds double, ptr %1693, i64 %1698
  %1700 = load double, ptr %1699, align 8, !tbaa !11
  %1701 = call double @llvm.fmuladd.f64(double 0x3CC336335C2A4C90, double %1700, double %1692)
  %1702 = load ptr, ptr %7, align 8, !tbaa !9
  %1703 = load i32, ptr %12, align 4, !tbaa !5
  %1704 = load i32, ptr %8, align 4, !tbaa !5
  %1705 = mul nsw i32 15, %1704
  %1706 = add nsw i32 %1703, %1705
  %1707 = sext i32 %1706 to i64
  %1708 = getelementptr inbounds double, ptr %1702, i64 %1707
  %1709 = load double, ptr %1708, align 8, !tbaa !11
  %1710 = call double @llvm.fmuladd.f64(double 0xBC914F26788AF5CD, double %1709, double %1701)
  %1711 = load ptr, ptr %7, align 8, !tbaa !9
  %1712 = load i32, ptr %12, align 4, !tbaa !5
  %1713 = load i32, ptr %8, align 4, !tbaa !5
  %1714 = mul nsw i32 16, %1713
  %1715 = add nsw i32 %1712, %1714
  %1716 = sext i32 %1715 to i64
  %1717 = getelementptr inbounds double, ptr %1711, i64 %1716
  %1718 = load double, ptr %1717, align 8, !tbaa !11
  %1719 = call double @llvm.fmuladd.f64(double 0xBCC3337EE9A65CF0, double %1718, double %1710)
  %1720 = load ptr, ptr %7, align 8, !tbaa !9
  %1721 = load i32, ptr %12, align 4, !tbaa !5
  %1722 = load i32, ptr %8, align 4, !tbaa !5
  %1723 = mul nsw i32 17, %1722
  %1724 = add nsw i32 %1721, %1723
  %1725 = sext i32 %1724 to i64
  %1726 = getelementptr inbounds double, ptr %1720, i64 %1725
  %1727 = load double, ptr %1726, align 8, !tbaa !11
  %1728 = call double @llvm.fmuladd.f64(double 0xBCCB8879EF13718A, double %1727, double %1719)
  store double %1728, ptr %11, align 8, !tbaa !11
  %1729 = load double, ptr %11, align 8, !tbaa !11
  %1730 = load ptr, ptr %9, align 8, !tbaa !9
  %1731 = load i32, ptr %12, align 4, !tbaa !5
  %1732 = load i32, ptr %10, align 4, !tbaa !5
  %1733 = mul nsw i32 9, %1732
  %1734 = add nsw i32 %1731, %1733
  %1735 = sext i32 %1734 to i64
  %1736 = getelementptr inbounds double, ptr %1730, i64 %1735
  %1737 = load double, ptr %1736, align 8, !tbaa !11
  %1738 = fadd double %1737, %1729
  store double %1738, ptr %1736, align 8, !tbaa !11
  %1739 = load ptr, ptr %7, align 8, !tbaa !9
  %1740 = load i32, ptr %12, align 4, !tbaa !5
  %1741 = load i32, ptr %8, align 4, !tbaa !5
  %1742 = mul nsw i32 0, %1741
  %1743 = add nsw i32 %1740, %1742
  %1744 = sext i32 %1743 to i64
  %1745 = getelementptr inbounds double, ptr %1739, i64 %1744
  %1746 = load double, ptr %1745, align 8, !tbaa !11
  %1747 = load ptr, ptr %7, align 8, !tbaa !9
  %1748 = load i32, ptr %12, align 4, !tbaa !5
  %1749 = load i32, ptr %8, align 4, !tbaa !5
  %1750 = mul nsw i32 1, %1749
  %1751 = add nsw i32 %1748, %1750
  %1752 = sext i32 %1751 to i64
  %1753 = getelementptr inbounds double, ptr %1747, i64 %1752
  %1754 = load double, ptr %1753, align 8, !tbaa !11
  %1755 = fmul double 0x3C97B483C42BAB7C, %1754
  %1756 = call double @llvm.fmuladd.f64(double 0xBCC3A93C9AD8BA3A, double %1746, double %1755)
  %1757 = load ptr, ptr %7, align 8, !tbaa !9
  %1758 = load i32, ptr %12, align 4, !tbaa !5
  %1759 = load i32, ptr %8, align 4, !tbaa !5
  %1760 = mul nsw i32 2, %1759
  %1761 = add nsw i32 %1758, %1760
  %1762 = sext i32 %1761 to i64
  %1763 = getelementptr inbounds double, ptr %1757, i64 %1762
  %1764 = load double, ptr %1763, align 8, !tbaa !11
  %1765 = call double @llvm.fmuladd.f64(double 0x3C71B9B8F47F3248, double %1764, double %1756)
  %1766 = load ptr, ptr %7, align 8, !tbaa !9
  %1767 = load i32, ptr %12, align 4, !tbaa !5
  %1768 = load i32, ptr %8, align 4, !tbaa !5
  %1769 = mul nsw i32 3, %1768
  %1770 = add nsw i32 %1767, %1769
  %1771 = sext i32 %1770 to i64
  %1772 = getelementptr inbounds double, ptr %1766, i64 %1771
  %1773 = load double, ptr %1772, align 8, !tbaa !11
  %1774 = call double @llvm.fmuladd.f64(double 0xBC80C8CA734909F4, double %1773, double %1765)
  %1775 = load ptr, ptr %7, align 8, !tbaa !9
  %1776 = load i32, ptr %12, align 4, !tbaa !5
  %1777 = load i32, ptr %8, align 4, !tbaa !5
  %1778 = mul nsw i32 4, %1777
  %1779 = add nsw i32 %1776, %1778
  %1780 = sext i32 %1779 to i64
  %1781 = getelementptr inbounds double, ptr %1775, i64 %1780
  %1782 = load double, ptr %1781, align 8, !tbaa !11
  %1783 = call double @llvm.fmuladd.f64(double 0x3C9558F6282D8B0C, double %1782, double %1774)
  %1784 = load ptr, ptr %7, align 8, !tbaa !9
  %1785 = load i32, ptr %12, align 4, !tbaa !5
  %1786 = load i32, ptr %8, align 4, !tbaa !5
  %1787 = mul nsw i32 5, %1786
  %1788 = add nsw i32 %1785, %1787
  %1789 = sext i32 %1788 to i64
  %1790 = getelementptr inbounds double, ptr %1784, i64 %1789
  %1791 = load double, ptr %1790, align 8, !tbaa !11
  %1792 = call double @llvm.fmuladd.f64(double 0xBCA238E1A865FF56, double %1791, double %1783)
  %1793 = load ptr, ptr %7, align 8, !tbaa !9
  %1794 = load i32, ptr %12, align 4, !tbaa !5
  %1795 = load i32, ptr %8, align 4, !tbaa !5
  %1796 = mul nsw i32 6, %1795
  %1797 = add nsw i32 %1794, %1796
  %1798 = sext i32 %1797 to i64
  %1799 = getelementptr inbounds double, ptr %1793, i64 %1798
  %1800 = load double, ptr %1799, align 8, !tbaa !11
  %1801 = call double @llvm.fmuladd.f64(double 0x3FF3237A82AF9ECC, double %1800, double %1792)
  %1802 = load ptr, ptr %7, align 8, !tbaa !9
  %1803 = load i32, ptr %12, align 4, !tbaa !5
  %1804 = load i32, ptr %8, align 4, !tbaa !5
  %1805 = mul nsw i32 7, %1804
  %1806 = add nsw i32 %1803, %1805
  %1807 = sext i32 %1806 to i64
  %1808 = getelementptr inbounds double, ptr %1802, i64 %1807
  %1809 = load double, ptr %1808, align 8, !tbaa !11
  %1810 = call double @llvm.fmuladd.f64(double 0xBFB17C71DD2D5180, double %1809, double %1801)
  %1811 = load ptr, ptr %7, align 8, !tbaa !9
  %1812 = load i32, ptr %12, align 4, !tbaa !5
  %1813 = load i32, ptr %8, align 4, !tbaa !5
  %1814 = mul nsw i32 8, %1813
  %1815 = add nsw i32 %1812, %1814
  %1816 = sext i32 %1815 to i64
  %1817 = getelementptr inbounds double, ptr %1811, i64 %1816
  %1818 = load double, ptr %1817, align 8, !tbaa !11
  %1819 = call double @llvm.fmuladd.f64(double 0xBF76E8A1969E7200, double %1818, double %1810)
  %1820 = load ptr, ptr %7, align 8, !tbaa !9
  %1821 = load i32, ptr %12, align 4, !tbaa !5
  %1822 = load i32, ptr %8, align 4, !tbaa !5
  %1823 = mul nsw i32 9, %1822
  %1824 = add nsw i32 %1821, %1823
  %1825 = sext i32 %1824 to i64
  %1826 = getelementptr inbounds double, ptr %1820, i64 %1825
  %1827 = load double, ptr %1826, align 8, !tbaa !11
  %1828 = call double @llvm.fmuladd.f64(double 0x3FC179BD32D3DC6F, double %1827, double %1819)
  %1829 = load ptr, ptr %7, align 8, !tbaa !9
  %1830 = load i32, ptr %12, align 4, !tbaa !5
  %1831 = load i32, ptr %8, align 4, !tbaa !5
  %1832 = mul nsw i32 10, %1831
  %1833 = add nsw i32 %1830, %1832
  %1834 = sext i32 %1833 to i64
  %1835 = getelementptr inbounds double, ptr %1829, i64 %1834
  %1836 = load double, ptr %1835, align 8, !tbaa !11
  %1837 = call double @llvm.fmuladd.f64(double 0x3FFBC4AD9C53A563, double %1836, double %1828)
  %1838 = load ptr, ptr %7, align 8, !tbaa !9
  %1839 = load i32, ptr %12, align 4, !tbaa !5
  %1840 = load i32, ptr %8, align 4, !tbaa !5
  %1841 = mul nsw i32 11, %1840
  %1842 = add nsw i32 %1839, %1841
  %1843 = sext i32 %1842 to i64
  %1844 = getelementptr inbounds double, ptr %1838, i64 %1843
  %1845 = load double, ptr %1844, align 8, !tbaa !11
  %1846 = call double @llvm.fmuladd.f64(double 0x3FF1CA3B98F4942B, double %1845, double %1837)
  %1847 = load ptr, ptr %7, align 8, !tbaa !9
  %1848 = load i32, ptr %12, align 4, !tbaa !5
  %1849 = load i32, ptr %8, align 4, !tbaa !5
  %1850 = mul nsw i32 12, %1849
  %1851 = add nsw i32 %1848, %1850
  %1852 = sext i32 %1851 to i64
  %1853 = getelementptr inbounds double, ptr %1847, i64 %1852
  %1854 = load double, ptr %1853, align 8, !tbaa !11
  %1855 = call double @llvm.fmuladd.f64(double 0xBCA6FBE336F71405, double %1854, double %1846)
  %1856 = load ptr, ptr %7, align 8, !tbaa !9
  %1857 = load i32, ptr %12, align 4, !tbaa !5
  %1858 = load i32, ptr %8, align 4, !tbaa !5
  %1859 = mul nsw i32 13, %1858
  %1860 = add nsw i32 %1857, %1859
  %1861 = sext i32 %1860 to i64
  %1862 = getelementptr inbounds double, ptr %1856, i64 %1861
  %1863 = load double, ptr %1862, align 8, !tbaa !11
  %1864 = call double @llvm.fmuladd.f64(double 0x3C80984B1B374A75, double %1863, double %1855)
  %1865 = load ptr, ptr %7, align 8, !tbaa !9
  %1866 = load i32, ptr %12, align 4, !tbaa !5
  %1867 = load i32, ptr %8, align 4, !tbaa !5
  %1868 = mul nsw i32 14, %1867
  %1869 = add nsw i32 %1866, %1868
  %1870 = sext i32 %1869 to i64
  %1871 = getelementptr inbounds double, ptr %1865, i64 %1870
  %1872 = load double, ptr %1871, align 8, !tbaa !11
  %1873 = call double @llvm.fmuladd.f64(double 0x3C4729477968333F, double %1872, double %1864)
  %1874 = load ptr, ptr %7, align 8, !tbaa !9
  %1875 = load i32, ptr %12, align 4, !tbaa !5
  %1876 = load i32, ptr %8, align 4, !tbaa !5
  %1877 = mul nsw i32 15, %1876
  %1878 = add nsw i32 %1875, %1877
  %1879 = sext i32 %1878 to i64
  %1880 = getelementptr inbounds double, ptr %1874, i64 %1879
  %1881 = load double, ptr %1880, align 8, !tbaa !11
  %1882 = call double @llvm.fmuladd.f64(double 0xBC918F2EE7553E84, double %1881, double %1873)
  %1883 = load ptr, ptr %7, align 8, !tbaa !9
  %1884 = load i32, ptr %12, align 4, !tbaa !5
  %1885 = load i32, ptr %8, align 4, !tbaa !5
  %1886 = mul nsw i32 16, %1885
  %1887 = add nsw i32 %1884, %1886
  %1888 = sext i32 %1887 to i64
  %1889 = getelementptr inbounds double, ptr %1883, i64 %1888
  %1890 = load double, ptr %1889, align 8, !tbaa !11
  %1891 = call double @llvm.fmuladd.f64(double 0xBC63BFDB1A7A0940, double %1890, double %1882)
  %1892 = load ptr, ptr %7, align 8, !tbaa !9
  %1893 = load i32, ptr %12, align 4, !tbaa !5
  %1894 = load i32, ptr %8, align 4, !tbaa !5
  %1895 = mul nsw i32 17, %1894
  %1896 = add nsw i32 %1893, %1895
  %1897 = sext i32 %1896 to i64
  %1898 = getelementptr inbounds double, ptr %1892, i64 %1897
  %1899 = load double, ptr %1898, align 8, !tbaa !11
  %1900 = call double @llvm.fmuladd.f64(double 0x3CAA455C00B239E4, double %1899, double %1891)
  store double %1900, ptr %11, align 8, !tbaa !11
  %1901 = load double, ptr %11, align 8, !tbaa !11
  %1902 = load ptr, ptr %9, align 8, !tbaa !9
  %1903 = load i32, ptr %12, align 4, !tbaa !5
  %1904 = load i32, ptr %10, align 4, !tbaa !5
  %1905 = mul nsw i32 10, %1904
  %1906 = add nsw i32 %1903, %1905
  %1907 = sext i32 %1906 to i64
  %1908 = getelementptr inbounds double, ptr %1902, i64 %1907
  %1909 = load double, ptr %1908, align 8, !tbaa !11
  %1910 = fadd double %1909, %1901
  store double %1910, ptr %1908, align 8, !tbaa !11
  %1911 = load ptr, ptr %7, align 8, !tbaa !9
  %1912 = load i32, ptr %12, align 4, !tbaa !5
  %1913 = load i32, ptr %8, align 4, !tbaa !5
  %1914 = mul nsw i32 0, %1913
  %1915 = add nsw i32 %1912, %1914
  %1916 = sext i32 %1915 to i64
  %1917 = getelementptr inbounds double, ptr %1911, i64 %1916
  %1918 = load double, ptr %1917, align 8, !tbaa !11
  %1919 = load ptr, ptr %7, align 8, !tbaa !9
  %1920 = load i32, ptr %12, align 4, !tbaa !5
  %1921 = load i32, ptr %8, align 4, !tbaa !5
  %1922 = mul nsw i32 1, %1921
  %1923 = add nsw i32 %1920, %1922
  %1924 = sext i32 %1923 to i64
  %1925 = getelementptr inbounds double, ptr %1919, i64 %1924
  %1926 = load double, ptr %1925, align 8, !tbaa !11
  %1927 = fmul double 0xBC96A2CCF69409BE, %1926
  %1928 = call double @llvm.fmuladd.f64(double 0x3CC142F4E7497170, double %1918, double %1927)
  %1929 = load ptr, ptr %7, align 8, !tbaa !9
  %1930 = load i32, ptr %12, align 4, !tbaa !5
  %1931 = load i32, ptr %8, align 4, !tbaa !5
  %1932 = mul nsw i32 2, %1931
  %1933 = add nsw i32 %1930, %1932
  %1934 = sext i32 %1933 to i64
  %1935 = getelementptr inbounds double, ptr %1929, i64 %1934
  %1936 = load double, ptr %1935, align 8, !tbaa !11
  %1937 = call double @llvm.fmuladd.f64(double 0xBC9AEA168BAD2F82, double %1936, double %1928)
  %1938 = load ptr, ptr %7, align 8, !tbaa !9
  %1939 = load i32, ptr %12, align 4, !tbaa !5
  %1940 = load i32, ptr %8, align 4, !tbaa !5
  %1941 = mul nsw i32 3, %1940
  %1942 = add nsw i32 %1939, %1941
  %1943 = sext i32 %1942 to i64
  %1944 = getelementptr inbounds double, ptr %1938, i64 %1943
  %1945 = load double, ptr %1944, align 8, !tbaa !11
  %1946 = call double @llvm.fmuladd.f64(double 0xBC9B499410BBCC84, double %1945, double %1937)
  %1947 = load ptr, ptr %7, align 8, !tbaa !9
  %1948 = load i32, ptr %12, align 4, !tbaa !5
  %1949 = load i32, ptr %8, align 4, !tbaa !5
  %1950 = mul nsw i32 4, %1949
  %1951 = add nsw i32 %1948, %1950
  %1952 = sext i32 %1951 to i64
  %1953 = getelementptr inbounds double, ptr %1947, i64 %1952
  %1954 = load double, ptr %1953, align 8, !tbaa !11
  %1955 = call double @llvm.fmuladd.f64(double 0xBC9361418ADB00D8, double %1954, double %1946)
  %1956 = load ptr, ptr %7, align 8, !tbaa !9
  %1957 = load i32, ptr %12, align 4, !tbaa !5
  %1958 = load i32, ptr %8, align 4, !tbaa !5
  %1959 = mul nsw i32 5, %1958
  %1960 = add nsw i32 %1957, %1959
  %1961 = sext i32 %1960 to i64
  %1962 = getelementptr inbounds double, ptr %1956, i64 %1961
  %1963 = load double, ptr %1962, align 8, !tbaa !11
  %1964 = call double @llvm.fmuladd.f64(double 0x3CB01F9D52D3749E, double %1963, double %1955)
  %1965 = load ptr, ptr %7, align 8, !tbaa !9
  %1966 = load i32, ptr %12, align 4, !tbaa !5
  %1967 = load i32, ptr %8, align 4, !tbaa !5
  %1968 = mul nsw i32 6, %1967
  %1969 = add nsw i32 %1966, %1968
  %1970 = sext i32 %1969 to i64
  %1971 = getelementptr inbounds double, ptr %1965, i64 %1970
  %1972 = load double, ptr %1971, align 8, !tbaa !11
  %1973 = call double @llvm.fmuladd.f64(double 0xBFF5B6F7089FF1D1, double %1972, double %1964)
  %1974 = load ptr, ptr %7, align 8, !tbaa !9
  %1975 = load i32, ptr %12, align 4, !tbaa !5
  %1976 = load i32, ptr %8, align 4, !tbaa !5
  %1977 = mul nsw i32 7, %1976
  %1978 = add nsw i32 %1975, %1977
  %1979 = sext i32 %1978 to i64
  %1980 = getelementptr inbounds double, ptr %1974, i64 %1979
  %1981 = load double, ptr %1980, align 8, !tbaa !11
  %1982 = call double @llvm.fmuladd.f64(double 0x3FB1F3F0B024DC88, double %1981, double %1973)
  %1983 = load ptr, ptr %7, align 8, !tbaa !9
  %1984 = load i32, ptr %12, align 4, !tbaa !5
  %1985 = load i32, ptr %8, align 4, !tbaa !5
  %1986 = mul nsw i32 8, %1985
  %1987 = add nsw i32 %1984, %1986
  %1988 = sext i32 %1987 to i64
  %1989 = getelementptr inbounds double, ptr %1983, i64 %1988
  %1990 = load double, ptr %1989, align 8, !tbaa !11
  %1991 = call double @llvm.fmuladd.f64(double 0x3FCCBE3CAE6B6280, double %1990, double %1982)
  %1992 = load ptr, ptr %7, align 8, !tbaa !9
  %1993 = load i32, ptr %12, align 4, !tbaa !5
  %1994 = load i32, ptr %8, align 4, !tbaa !5
  %1995 = mul nsw i32 9, %1994
  %1996 = add nsw i32 %1993, %1995
  %1997 = sext i32 %1996 to i64
  %1998 = getelementptr inbounds double, ptr %1992, i64 %1997
  %1999 = load double, ptr %1998, align 8, !tbaa !11
  %2000 = call double @llvm.fmuladd.f64(double 0xBFD81F8F0CEC6101, double %1999, double %1991)
  %2001 = load ptr, ptr %7, align 8, !tbaa !9
  %2002 = load i32, ptr %12, align 4, !tbaa !5
  %2003 = load i32, ptr %8, align 4, !tbaa !5
  %2004 = mul nsw i32 10, %2003
  %2005 = add nsw i32 %2002, %2004
  %2006 = sext i32 %2005 to i64
  %2007 = getelementptr inbounds double, ptr %2001, i64 %2006
  %2008 = load double, ptr %2007, align 8, !tbaa !11
  %2009 = call double @llvm.fmuladd.f64(double 0xBFFBA497A89943F3, double %2008, double %2000)
  %2010 = load ptr, ptr %7, align 8, !tbaa !9
  %2011 = load i32, ptr %12, align 4, !tbaa !5
  %2012 = load i32, ptr %8, align 4, !tbaa !5
  %2013 = mul nsw i32 11, %2012
  %2014 = add nsw i32 %2011, %2013
  %2015 = sext i32 %2014 to i64
  %2016 = getelementptr inbounds double, ptr %2010, i64 %2015
  %2017 = load double, ptr %2016, align 8, !tbaa !11
  %2018 = call double @llvm.fmuladd.f64(double 0xBFDC5366E211BEA9, double %2017, double %2009)
  %2019 = load ptr, ptr %7, align 8, !tbaa !9
  %2020 = load i32, ptr %12, align 4, !tbaa !5
  %2021 = load i32, ptr %8, align 4, !tbaa !5
  %2022 = mul nsw i32 12, %2021
  %2023 = add nsw i32 %2020, %2022
  %2024 = sext i32 %2023 to i64
  %2025 = getelementptr inbounds double, ptr %2019, i64 %2024
  %2026 = load double, ptr %2025, align 8, !tbaa !11
  %2027 = call double @llvm.fmuladd.f64(double 0x3CB1A32FABA58A78, double %2026, double %2018)
  %2028 = load ptr, ptr %7, align 8, !tbaa !9
  %2029 = load i32, ptr %12, align 4, !tbaa !5
  %2030 = load i32, ptr %8, align 4, !tbaa !5
  %2031 = mul nsw i32 13, %2030
  %2032 = add nsw i32 %2029, %2031
  %2033 = sext i32 %2032 to i64
  %2034 = getelementptr inbounds double, ptr %2028, i64 %2033
  %2035 = load double, ptr %2034, align 8, !tbaa !11
  %2036 = call double @llvm.fmuladd.f64(double 0x3C6B240942E84E45, double %2035, double %2027)
  %2037 = load ptr, ptr %7, align 8, !tbaa !9
  %2038 = load i32, ptr %12, align 4, !tbaa !5
  %2039 = load i32, ptr %8, align 4, !tbaa !5
  %2040 = mul nsw i32 14, %2039
  %2041 = add nsw i32 %2038, %2040
  %2042 = sext i32 %2041 to i64
  %2043 = getelementptr inbounds double, ptr %2037, i64 %2042
  %2044 = load double, ptr %2043, align 8, !tbaa !11
  %2045 = call double @llvm.fmuladd.f64(double 0xBC8360FD77DF0E50, double %2044, double %2036)
  %2046 = load ptr, ptr %7, align 8, !tbaa !9
  %2047 = load i32, ptr %12, align 4, !tbaa !5
  %2048 = load i32, ptr %8, align 4, !tbaa !5
  %2049 = mul nsw i32 15, %2048
  %2050 = add nsw i32 %2047, %2049
  %2051 = sext i32 %2050 to i64
  %2052 = getelementptr inbounds double, ptr %2046, i64 %2051
  %2053 = load double, ptr %2052, align 8, !tbaa !11
  %2054 = call double @llvm.fmuladd.f64(double 0x3C78F6BBF1F42F79, double %2053, double %2045)
  %2055 = load ptr, ptr %7, align 8, !tbaa !9
  %2056 = load i32, ptr %12, align 4, !tbaa !5
  %2057 = load i32, ptr %8, align 4, !tbaa !5
  %2058 = mul nsw i32 16, %2057
  %2059 = add nsw i32 %2056, %2058
  %2060 = sext i32 %2059 to i64
  %2061 = getelementptr inbounds double, ptr %2055, i64 %2060
  %2062 = load double, ptr %2061, align 8, !tbaa !11
  %2063 = call double @llvm.fmuladd.f64(double 0xBCBB0F3A92259EB9, double %2062, double %2054)
  %2064 = load ptr, ptr %7, align 8, !tbaa !9
  %2065 = load i32, ptr %12, align 4, !tbaa !5
  %2066 = load i32, ptr %8, align 4, !tbaa !5
  %2067 = mul nsw i32 17, %2066
  %2068 = add nsw i32 %2065, %2067
  %2069 = sext i32 %2068 to i64
  %2070 = getelementptr inbounds double, ptr %2064, i64 %2069
  %2071 = load double, ptr %2070, align 8, !tbaa !11
  %2072 = call double @llvm.fmuladd.f64(double 0xBCB8BFEEB1A1585A, double %2071, double %2063)
  store double %2072, ptr %11, align 8, !tbaa !11
  %2073 = load double, ptr %11, align 8, !tbaa !11
  %2074 = load ptr, ptr %9, align 8, !tbaa !9
  %2075 = load i32, ptr %12, align 4, !tbaa !5
  %2076 = load i32, ptr %10, align 4, !tbaa !5
  %2077 = mul nsw i32 11, %2076
  %2078 = add nsw i32 %2075, %2077
  %2079 = sext i32 %2078 to i64
  %2080 = getelementptr inbounds double, ptr %2074, i64 %2079
  %2081 = load double, ptr %2080, align 8, !tbaa !11
  %2082 = fadd double %2081, %2073
  store double %2082, ptr %2080, align 8, !tbaa !11
  %2083 = load ptr, ptr %7, align 8, !tbaa !9
  %2084 = load i32, ptr %12, align 4, !tbaa !5
  %2085 = load i32, ptr %8, align 4, !tbaa !5
  %2086 = mul nsw i32 0, %2085
  %2087 = add nsw i32 %2084, %2086
  %2088 = sext i32 %2087 to i64
  %2089 = getelementptr inbounds double, ptr %2083, i64 %2088
  %2090 = load double, ptr %2089, align 8, !tbaa !11
  %2091 = load ptr, ptr %7, align 8, !tbaa !9
  %2092 = load i32, ptr %12, align 4, !tbaa !5
  %2093 = load i32, ptr %8, align 4, !tbaa !5
  %2094 = mul nsw i32 1, %2093
  %2095 = add nsw i32 %2092, %2094
  %2096 = sext i32 %2095 to i64
  %2097 = getelementptr inbounds double, ptr %2091, i64 %2096
  %2098 = load double, ptr %2097, align 8, !tbaa !11
  %2099 = fmul double 0xBC7F9D13F6DD91D2, %2098
  %2100 = call double @llvm.fmuladd.f64(double 0xBCB03C43C4268C9B, double %2090, double %2099)
  %2101 = load ptr, ptr %7, align 8, !tbaa !9
  %2102 = load i32, ptr %12, align 4, !tbaa !5
  %2103 = load i32, ptr %8, align 4, !tbaa !5
  %2104 = mul nsw i32 2, %2103
  %2105 = add nsw i32 %2102, %2104
  %2106 = sext i32 %2105 to i64
  %2107 = getelementptr inbounds double, ptr %2101, i64 %2106
  %2108 = load double, ptr %2107, align 8, !tbaa !11
  %2109 = call double @llvm.fmuladd.f64(double 0xBCAE0044D82B3E00, double %2108, double %2100)
  %2110 = load ptr, ptr %7, align 8, !tbaa !9
  %2111 = load i32, ptr %12, align 4, !tbaa !5
  %2112 = load i32, ptr %8, align 4, !tbaa !5
  %2113 = mul nsw i32 3, %2112
  %2114 = add nsw i32 %2111, %2113
  %2115 = sext i32 %2114 to i64
  %2116 = getelementptr inbounds double, ptr %2110, i64 %2115
  %2117 = load double, ptr %2116, align 8, !tbaa !11
  %2118 = call double @llvm.fmuladd.f64(double 0x3C9CFE906EE8F2E9, double %2117, double %2109)
  %2119 = load ptr, ptr %7, align 8, !tbaa !9
  %2120 = load i32, ptr %12, align 4, !tbaa !5
  %2121 = load i32, ptr %8, align 4, !tbaa !5
  %2122 = mul nsw i32 4, %2121
  %2123 = add nsw i32 %2120, %2122
  %2124 = sext i32 %2123 to i64
  %2125 = getelementptr inbounds double, ptr %2119, i64 %2124
  %2126 = load double, ptr %2125, align 8, !tbaa !11
  %2127 = call double @llvm.fmuladd.f64(double 0x3CC1A93DAC5952FC, double %2126, double %2118)
  %2128 = load ptr, ptr %7, align 8, !tbaa !9
  %2129 = load i32, ptr %12, align 4, !tbaa !5
  %2130 = load i32, ptr %8, align 4, !tbaa !5
  %2131 = mul nsw i32 5, %2130
  %2132 = add nsw i32 %2129, %2131
  %2133 = sext i32 %2132 to i64
  %2134 = getelementptr inbounds double, ptr %2128, i64 %2133
  %2135 = load double, ptr %2134, align 8, !tbaa !11
  %2136 = call double @llvm.fmuladd.f64(double 0x3CB1B04DFFDDEE42, double %2135, double %2127)
  %2137 = load ptr, ptr %7, align 8, !tbaa !9
  %2138 = load i32, ptr %12, align 4, !tbaa !5
  %2139 = load i32, ptr %8, align 4, !tbaa !5
  %2140 = mul nsw i32 6, %2139
  %2141 = add nsw i32 %2138, %2140
  %2142 = sext i32 %2141 to i64
  %2143 = getelementptr inbounds double, ptr %2137, i64 %2142
  %2144 = load double, ptr %2143, align 8, !tbaa !11
  %2145 = call double @llvm.fmuladd.f64(double 0xBCA11EF521EB7066, double %2144, double %2136)
  %2146 = load ptr, ptr %7, align 8, !tbaa !9
  %2147 = load i32, ptr %12, align 4, !tbaa !5
  %2148 = load i32, ptr %8, align 4, !tbaa !5
  %2149 = mul nsw i32 7, %2148
  %2150 = add nsw i32 %2147, %2149
  %2151 = sext i32 %2150 to i64
  %2152 = getelementptr inbounds double, ptr %2146, i64 %2151
  %2153 = load double, ptr %2152, align 8, !tbaa !11
  %2154 = call double @llvm.fmuladd.f64(double 0xBC94747CFD612BD0, double %2153, double %2145)
  %2155 = load ptr, ptr %7, align 8, !tbaa !9
  %2156 = load i32, ptr %12, align 4, !tbaa !5
  %2157 = load i32, ptr %8, align 4, !tbaa !5
  %2158 = mul nsw i32 8, %2157
  %2159 = add nsw i32 %2156, %2158
  %2160 = sext i32 %2159 to i64
  %2161 = getelementptr inbounds double, ptr %2155, i64 %2160
  %2162 = load double, ptr %2161, align 8, !tbaa !11
  %2163 = call double @llvm.fmuladd.f64(double 0x3CA061EEC0843748, double %2162, double %2154)
  %2164 = load ptr, ptr %7, align 8, !tbaa !9
  %2165 = load i32, ptr %12, align 4, !tbaa !5
  %2166 = load i32, ptr %8, align 4, !tbaa !5
  %2167 = mul nsw i32 9, %2166
  %2168 = add nsw i32 %2165, %2167
  %2169 = sext i32 %2168 to i64
  %2170 = getelementptr inbounds double, ptr %2164, i64 %2169
  %2171 = load double, ptr %2170, align 8, !tbaa !11
  %2172 = call double @llvm.fmuladd.f64(double 0x3C8B21BA101B7AB2, double %2171, double %2163)
  %2173 = load ptr, ptr %7, align 8, !tbaa !9
  %2174 = load i32, ptr %12, align 4, !tbaa !5
  %2175 = load i32, ptr %8, align 4, !tbaa !5
  %2176 = mul nsw i32 10, %2175
  %2177 = add nsw i32 %2174, %2176
  %2178 = sext i32 %2177 to i64
  %2179 = getelementptr inbounds double, ptr %2173, i64 %2178
  %2180 = load double, ptr %2179, align 8, !tbaa !11
  %2181 = call double @llvm.fmuladd.f64(double 0xBCBBF3FEED1E8544, double %2180, double %2172)
  %2182 = load ptr, ptr %7, align 8, !tbaa !9
  %2183 = load i32, ptr %12, align 4, !tbaa !5
  %2184 = load i32, ptr %8, align 4, !tbaa !5
  %2185 = mul nsw i32 11, %2184
  %2186 = add nsw i32 %2183, %2185
  %2187 = sext i32 %2186 to i64
  %2188 = getelementptr inbounds double, ptr %2182, i64 %2187
  %2189 = load double, ptr %2188, align 8, !tbaa !11
  %2190 = call double @llvm.fmuladd.f64(double 0x3CB871266AD31A71, double %2189, double %2181)
  %2191 = load ptr, ptr %7, align 8, !tbaa !9
  %2192 = load i32, ptr %12, align 4, !tbaa !5
  %2193 = load i32, ptr %8, align 4, !tbaa !5
  %2194 = mul nsw i32 12, %2193
  %2195 = add nsw i32 %2192, %2194
  %2196 = sext i32 %2195 to i64
  %2197 = getelementptr inbounds double, ptr %2191, i64 %2196
  %2198 = load double, ptr %2197, align 8, !tbaa !11
  %2199 = call double @llvm.fmuladd.f64(double 0x3FF44E3F94172F46, double %2198, double %2190)
  %2200 = load ptr, ptr %7, align 8, !tbaa !9
  %2201 = load i32, ptr %12, align 4, !tbaa !5
  %2202 = load i32, ptr %8, align 4, !tbaa !5
  %2203 = mul nsw i32 13, %2202
  %2204 = add nsw i32 %2201, %2203
  %2205 = sext i32 %2204 to i64
  %2206 = getelementptr inbounds double, ptr %2200, i64 %2205
  %2207 = load double, ptr %2206, align 8, !tbaa !11
  %2208 = call double @llvm.fmuladd.f64(double 0xBF7DFA2300BBB400, double %2207, double %2199)
  %2209 = load ptr, ptr %7, align 8, !tbaa !9
  %2210 = load i32, ptr %12, align 4, !tbaa !5
  %2211 = load i32, ptr %8, align 4, !tbaa !5
  %2212 = mul nsw i32 14, %2211
  %2213 = add nsw i32 %2210, %2212
  %2214 = sext i32 %2213 to i64
  %2215 = getelementptr inbounds double, ptr %2209, i64 %2214
  %2216 = load double, ptr %2215, align 8, !tbaa !11
  %2217 = call double @llvm.fmuladd.f64(double 0x3FB9ECDD9812788E, double %2216, double %2208)
  %2218 = load ptr, ptr %7, align 8, !tbaa !9
  %2219 = load i32, ptr %12, align 4, !tbaa !5
  %2220 = load i32, ptr %8, align 4, !tbaa !5
  %2221 = mul nsw i32 15, %2220
  %2222 = add nsw i32 %2219, %2221
  %2223 = sext i32 %2222 to i64
  %2224 = getelementptr inbounds double, ptr %2218, i64 %2223
  %2225 = load double, ptr %2224, align 8, !tbaa !11
  %2226 = call double @llvm.fmuladd.f64(double 0xBF83952FC55A702F, double %2225, double %2217)
  %2227 = load ptr, ptr %7, align 8, !tbaa !9
  %2228 = load i32, ptr %12, align 4, !tbaa !5
  %2229 = load i32, ptr %8, align 4, !tbaa !5
  %2230 = mul nsw i32 16, %2229
  %2231 = add nsw i32 %2228, %2230
  %2232 = sext i32 %2231 to i64
  %2233 = getelementptr inbounds double, ptr %2227, i64 %2232
  %2234 = load double, ptr %2233, align 8, !tbaa !11
  %2235 = call double @llvm.fmuladd.f64(double 0xBFE4FBED5D8A9668, double %2234, double %2226)
  %2236 = load ptr, ptr %7, align 8, !tbaa !9
  %2237 = load i32, ptr %12, align 4, !tbaa !5
  %2238 = load i32, ptr %8, align 4, !tbaa !5
  %2239 = mul nsw i32 17, %2238
  %2240 = add nsw i32 %2237, %2239
  %2241 = sext i32 %2240 to i64
  %2242 = getelementptr inbounds double, ptr %2236, i64 %2241
  %2243 = load double, ptr %2242, align 8, !tbaa !11
  %2244 = call double @llvm.fmuladd.f64(double 0x3FD50884576D0BB8, double %2243, double %2235)
  store double %2244, ptr %11, align 8, !tbaa !11
  %2245 = load double, ptr %11, align 8, !tbaa !11
  %2246 = load ptr, ptr %9, align 8, !tbaa !9
  %2247 = load i32, ptr %12, align 4, !tbaa !5
  %2248 = load i32, ptr %10, align 4, !tbaa !5
  %2249 = mul nsw i32 12, %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 = fadd double %2253, %2245
  store double %2254, ptr %2252, align 8, !tbaa !11
  %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 0, %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 = load ptr, ptr %7, align 8, !tbaa !9
  %2264 = load i32, ptr %12, align 4, !tbaa !5
  %2265 = load i32, ptr %8, align 4, !tbaa !5
  %2266 = mul nsw i32 1, %2265
  %2267 = add nsw i32 %2264, %2266
  %2268 = sext i32 %2267 to i64
  %2269 = getelementptr inbounds double, ptr %2263, i64 %2268
  %2270 = load double, ptr %2269, align 8, !tbaa !11
  %2271 = fmul double 0xBCADA2825B7E90BA, %2270
  %2272 = call double @llvm.fmuladd.f64(double 0x3CBF38A0435C33EF, double %2262, double %2271)
  %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 2, %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 0xBCBCECD5C475FFF5, 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 3, %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 0x3C7C7B20A14EC091, 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 4, %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 0xBCAC7CF2FBE4989E, 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 5, %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 0xBCBCA248A7C7FDDC, 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 6, %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 0xBC96AF31F1A1F8A3, 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 7, %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 0x3CBEB0BE4F96FAE3, 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 8, %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 0x3C84693BAEDA743C, 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 9, %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 0xBCB3ACD3D4ADCCB0, 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 10, %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 0x3CBD77D82F675FE2, 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 11, %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 0xBC87B94EDD358738, 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 12, %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 0x3FE4EDE8EE256108, 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 13, %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 0xBFE8AC73392375C8, 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 14, %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 0x3FEA5488770B26A9, 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 15, %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 0xBFFEF1F8514C97D0, 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 16, %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 0x3FF44CD742FC94DA, 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 17, %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 0xBFF01B2FE70C118E, double %2415, double %2407)
  store double %2416, ptr %11, align 8, !tbaa !11
  %2417 = load double, ptr %11, align 8, !tbaa !11
  %2418 = load ptr, ptr %9, align 8, !tbaa !9
  %2419 = load i32, ptr %12, align 4, !tbaa !5
  %2420 = load i32, ptr %10, align 4, !tbaa !5
  %2421 = mul nsw i32 13, %2420
  %2422 = add nsw i32 %2419, %2421
  %2423 = sext i32 %2422 to i64
  %2424 = getelementptr inbounds double, ptr %2418, i64 %2423
  %2425 = load double, ptr %2424, align 8, !tbaa !11
  %2426 = fadd double %2425, %2417
  store double %2426, ptr %2424, align 8, !tbaa !11
  %2427 = load ptr, ptr %7, align 8, !tbaa !9
  %2428 = load i32, ptr %12, align 4, !tbaa !5
  %2429 = load i32, ptr %8, align 4, !tbaa !5
  %2430 = mul nsw i32 0, %2429
  %2431 = add nsw i32 %2428, %2430
  %2432 = sext i32 %2431 to i64
  %2433 = getelementptr inbounds double, ptr %2427, i64 %2432
  %2434 = load double, ptr %2433, align 8, !tbaa !11
  %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 1, %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 = fmul double 0x3CC0A43BB8778AD2, %2442
  %2444 = call double @llvm.fmuladd.f64(double 0x3CC1A7951F32AFEE, double %2434, double %2443)
  %2445 = load ptr, ptr %7, align 8, !tbaa !9
  %2446 = load i32, ptr %12, align 4, !tbaa !5
  %2447 = load i32, ptr %8, align 4, !tbaa !5
  %2448 = mul nsw i32 2, %2447
  %2449 = add nsw i32 %2446, %2448
  %2450 = sext i32 %2449 to i64
  %2451 = getelementptr inbounds double, ptr %2445, i64 %2450
  %2452 = load double, ptr %2451, align 8, !tbaa !11
  %2453 = call double @llvm.fmuladd.f64(double 0x3CD8A0EBF8B34D44, double %2452, double %2444)
  %2454 = load ptr, ptr %7, align 8, !tbaa !9
  %2455 = load i32, ptr %12, align 4, !tbaa !5
  %2456 = load i32, ptr %8, align 4, !tbaa !5
  %2457 = mul nsw i32 3, %2456
  %2458 = add nsw i32 %2455, %2457
  %2459 = sext i32 %2458 to i64
  %2460 = getelementptr inbounds double, ptr %2454, i64 %2459
  %2461 = load double, ptr %2460, align 8, !tbaa !11
  %2462 = call double @llvm.fmuladd.f64(double 0x3CBA5323016547EC, double %2461, double %2453)
  %2463 = load ptr, ptr %7, align 8, !tbaa !9
  %2464 = load i32, ptr %12, align 4, !tbaa !5
  %2465 = load i32, ptr %8, align 4, !tbaa !5
  %2466 = mul nsw i32 4, %2465
  %2467 = add nsw i32 %2464, %2466
  %2468 = sext i32 %2467 to i64
  %2469 = getelementptr inbounds double, ptr %2463, i64 %2468
  %2470 = load double, ptr %2469, align 8, !tbaa !11
  %2471 = call double @llvm.fmuladd.f64(double 0x3CA05AC5DCA571DC, double %2470, double %2462)
  %2472 = load ptr, ptr %7, align 8, !tbaa !9
  %2473 = load i32, ptr %12, align 4, !tbaa !5
  %2474 = load i32, ptr %8, align 4, !tbaa !5
  %2475 = mul nsw i32 5, %2474
  %2476 = add nsw i32 %2473, %2475
  %2477 = sext i32 %2476 to i64
  %2478 = getelementptr inbounds double, ptr %2472, i64 %2477
  %2479 = load double, ptr %2478, align 8, !tbaa !11
  %2480 = call double @llvm.fmuladd.f64(double 0xBCB0EC52293F1982, double %2479, double %2471)
  %2481 = load ptr, ptr %7, align 8, !tbaa !9
  %2482 = load i32, ptr %12, align 4, !tbaa !5
  %2483 = load i32, ptr %8, align 4, !tbaa !5
  %2484 = mul nsw i32 6, %2483
  %2485 = add nsw i32 %2482, %2484
  %2486 = sext i32 %2485 to i64
  %2487 = getelementptr inbounds double, ptr %2481, i64 %2486
  %2488 = load double, ptr %2487, align 8, !tbaa !11
  %2489 = call double @llvm.fmuladd.f64(double 0x3C88BB0D274B4D20, double %2488, double %2480)
  %2490 = load ptr, ptr %7, align 8, !tbaa !9
  %2491 = load i32, ptr %12, align 4, !tbaa !5
  %2492 = load i32, ptr %8, align 4, !tbaa !5
  %2493 = mul nsw i32 7, %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 = call double @llvm.fmuladd.f64(double 0xBCA88EEBBA111342, double %2497, double %2489)
  %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 8, %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 = call double @llvm.fmuladd.f64(double 0xBCAAA314368C77EA, double %2506, double %2498)
  %2508 = load ptr, ptr %7, align 8, !tbaa !9
  %2509 = load i32, ptr %12, align 4, !tbaa !5
  %2510 = load i32, ptr %8, align 4, !tbaa !5
  %2511 = mul nsw i32 9, %2510
  %2512 = add nsw i32 %2509, %2511
  %2513 = sext i32 %2512 to i64
  %2514 = getelementptr inbounds double, ptr %2508, i64 %2513
  %2515 = load double, ptr %2514, align 8, !tbaa !11
  %2516 = call double @llvm.fmuladd.f64(double 0xBC89A9C06842F0CE, double %2515, double %2507)
  %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 10, %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 0x3CC01B0CEED92744, 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 11, %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 0xBCBAAB90AFB5926D, 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 12, %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 0xBFE1EC4181248AE8, 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 13, %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 0xBFDFFE63E2851784, 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 14, %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 0x4000E9CE75C2FBF8, 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 15, %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 0x3FF31D88B253B07F, 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 16, %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 0x3FF2343957F3A8AA, 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 17, %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 0xBFEE712F1EF7D88A, double %2587, double %2579)
  store double %2588, ptr %11, align 8, !tbaa !11
  %2589 = load double, ptr %11, align 8, !tbaa !11
  %2590 = load ptr, ptr %9, align 8, !tbaa !9
  %2591 = load i32, ptr %12, align 4, !tbaa !5
  %2592 = load i32, ptr %10, align 4, !tbaa !5
  %2593 = mul nsw i32 14, %2592
  %2594 = add nsw i32 %2591, %2593
  %2595 = sext i32 %2594 to i64
  %2596 = getelementptr inbounds double, ptr %2590, i64 %2595
  %2597 = load double, ptr %2596, align 8, !tbaa !11
  %2598 = fadd double %2597, %2589
  store double %2598, ptr %2596, align 8, !tbaa !11
  %2599 = load ptr, ptr %7, align 8, !tbaa !9
  %2600 = load i32, ptr %12, align 4, !tbaa !5
  %2601 = load i32, ptr %8, align 4, !tbaa !5
  %2602 = mul nsw i32 0, %2601
  %2603 = add nsw i32 %2600, %2602
  %2604 = sext i32 %2603 to i64
  %2605 = getelementptr inbounds double, ptr %2599, i64 %2604
  %2606 = load double, ptr %2605, align 8, !tbaa !11
  %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 1, %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 = fmul double 0xBC9A042DA3AAA0F5, %2614
  %2616 = call double @llvm.fmuladd.f64(double 0xBCBAF68F816ED6D4, double %2606, double %2615)
  %2617 = load ptr, ptr %7, align 8, !tbaa !9
  %2618 = load i32, ptr %12, align 4, !tbaa !5
  %2619 = load i32, ptr %8, align 4, !tbaa !5
  %2620 = mul nsw i32 2, %2619
  %2621 = add nsw i32 %2618, %2620
  %2622 = sext i32 %2621 to i64
  %2623 = getelementptr inbounds double, ptr %2617, i64 %2622
  %2624 = load double, ptr %2623, align 8, !tbaa !11
  %2625 = call double @llvm.fmuladd.f64(double 0xBCBD577C538DDA63, double %2624, double %2616)
  %2626 = load ptr, ptr %7, align 8, !tbaa !9
  %2627 = load i32, ptr %12, align 4, !tbaa !5
  %2628 = load i32, ptr %8, align 4, !tbaa !5
  %2629 = mul nsw i32 3, %2628
  %2630 = add nsw i32 %2627, %2629
  %2631 = sext i32 %2630 to i64
  %2632 = getelementptr inbounds double, ptr %2626, i64 %2631
  %2633 = load double, ptr %2632, align 8, !tbaa !11
  %2634 = call double @llvm.fmuladd.f64(double 0xBC9E271992FB8E50, double %2633, double %2625)
  %2635 = load ptr, ptr %7, align 8, !tbaa !9
  %2636 = load i32, ptr %12, align 4, !tbaa !5
  %2637 = load i32, ptr %8, align 4, !tbaa !5
  %2638 = mul nsw i32 4, %2637
  %2639 = add nsw i32 %2636, %2638
  %2640 = sext i32 %2639 to i64
  %2641 = getelementptr inbounds double, ptr %2635, i64 %2640
  %2642 = load double, ptr %2641, align 8, !tbaa !11
  %2643 = call double @llvm.fmuladd.f64(double 0x3C93D6FC900E3498, double %2642, double %2634)
  %2644 = load ptr, ptr %7, align 8, !tbaa !9
  %2645 = load i32, ptr %12, align 4, !tbaa !5
  %2646 = load i32, ptr %8, align 4, !tbaa !5
  %2647 = mul nsw i32 5, %2646
  %2648 = add nsw i32 %2645, %2647
  %2649 = sext i32 %2648 to i64
  %2650 = getelementptr inbounds double, ptr %2644, i64 %2649
  %2651 = load double, ptr %2650, align 8, !tbaa !11
  %2652 = call double @llvm.fmuladd.f64(double 0x3CC029CF9720BC60, double %2651, double %2643)
  %2653 = load ptr, ptr %7, align 8, !tbaa !9
  %2654 = load i32, ptr %12, align 4, !tbaa !5
  %2655 = load i32, ptr %8, align 4, !tbaa !5
  %2656 = mul nsw i32 6, %2655
  %2657 = add nsw i32 %2654, %2656
  %2658 = sext i32 %2657 to i64
  %2659 = getelementptr inbounds double, ptr %2653, i64 %2658
  %2660 = load double, ptr %2659, align 8, !tbaa !11
  %2661 = call double @llvm.fmuladd.f64(double 0xBC8797292B4C1941, double %2660, double %2652)
  %2662 = load ptr, ptr %7, align 8, !tbaa !9
  %2663 = load i32, ptr %12, align 4, !tbaa !5
  %2664 = load i32, ptr %8, align 4, !tbaa !5
  %2665 = mul nsw i32 7, %2664
  %2666 = add nsw i32 %2663, %2665
  %2667 = sext i32 %2666 to i64
  %2668 = getelementptr inbounds double, ptr %2662, i64 %2667
  %2669 = load double, ptr %2668, align 8, !tbaa !11
  %2670 = call double @llvm.fmuladd.f64(double 0x3C92F08ACDCBF794, double %2669, double %2661)
  %2671 = load ptr, ptr %7, align 8, !tbaa !9
  %2672 = load i32, ptr %12, align 4, !tbaa !5
  %2673 = load i32, ptr %8, align 4, !tbaa !5
  %2674 = mul nsw i32 8, %2673
  %2675 = add nsw i32 %2672, %2674
  %2676 = sext i32 %2675 to i64
  %2677 = getelementptr inbounds double, ptr %2671, i64 %2676
  %2678 = load double, ptr %2677, align 8, !tbaa !11
  %2679 = call double @llvm.fmuladd.f64(double 0x3CA6B48868965AE6, double %2678, double %2670)
  %2680 = load ptr, ptr %7, align 8, !tbaa !9
  %2681 = load i32, ptr %12, align 4, !tbaa !5
  %2682 = load i32, ptr %8, align 4, !tbaa !5
  %2683 = mul nsw i32 9, %2682
  %2684 = add nsw i32 %2681, %2683
  %2685 = sext i32 %2684 to i64
  %2686 = getelementptr inbounds double, ptr %2680, i64 %2685
  %2687 = load double, ptr %2686, align 8, !tbaa !11
  %2688 = call double @llvm.fmuladd.f64(double 0x3CA926ECE93029A9, double %2687, double %2679)
  %2689 = load ptr, ptr %7, align 8, !tbaa !9
  %2690 = load i32, ptr %12, align 4, !tbaa !5
  %2691 = load i32, ptr %8, align 4, !tbaa !5
  %2692 = mul nsw i32 10, %2691
  %2693 = add nsw i32 %2690, %2692
  %2694 = sext i32 %2693 to i64
  %2695 = getelementptr inbounds double, ptr %2689, i64 %2694
  %2696 = load double, ptr %2695, align 8, !tbaa !11
  %2697 = call double @llvm.fmuladd.f64(double 0xBCB24490C3AF2293, double %2696, double %2688)
  %2698 = load ptr, ptr %7, align 8, !tbaa !9
  %2699 = load i32, ptr %12, align 4, !tbaa !5
  %2700 = load i32, ptr %8, align 4, !tbaa !5
  %2701 = mul nsw i32 11, %2700
  %2702 = add nsw i32 %2699, %2701
  %2703 = sext i32 %2702 to i64
  %2704 = getelementptr inbounds double, ptr %2698, i64 %2703
  %2705 = load double, ptr %2704, align 8, !tbaa !11
  %2706 = call double @llvm.fmuladd.f64(double 0x3C94D23BA9623EA9, double %2705, double %2697)
  %2707 = load ptr, ptr %7, align 8, !tbaa !9
  %2708 = load i32, ptr %12, align 4, !tbaa !5
  %2709 = load i32, ptr %8, align 4, !tbaa !5
  %2710 = mul nsw i32 12, %2709
  %2711 = add nsw i32 %2708, %2710
  %2712 = sext i32 %2711 to i64
  %2713 = getelementptr inbounds double, ptr %2707, i64 %2712
  %2714 = load double, ptr %2713, align 8, !tbaa !11
  %2715 = call double @llvm.fmuladd.f64(double 0xBF734721512AF07C, double %2714, double %2706)
  %2716 = load ptr, ptr %7, align 8, !tbaa !9
  %2717 = load i32, ptr %12, align 4, !tbaa !5
  %2718 = load i32, ptr %8, align 4, !tbaa !5
  %2719 = mul nsw i32 13, %2718
  %2720 = add nsw i32 %2717, %2719
  %2721 = sext i32 %2720 to i64
  %2722 = getelementptr inbounds double, ptr %2716, i64 %2721
  %2723 = load double, ptr %2722, align 8, !tbaa !11
  %2724 = call double @llvm.fmuladd.f64(double 0x3FF21EFA862DF3DE, double %2723, double %2715)
  %2725 = load ptr, ptr %7, align 8, !tbaa !9
  %2726 = load i32, ptr %12, align 4, !tbaa !5
  %2727 = load i32, ptr %8, align 4, !tbaa !5
  %2728 = mul nsw i32 14, %2727
  %2729 = add nsw i32 %2726, %2728
  %2730 = sext i32 %2729 to i64
  %2731 = getelementptr inbounds double, ptr %2725, i64 %2730
  %2732 = load double, ptr %2731, align 8, !tbaa !11
  %2733 = call double @llvm.fmuladd.f64(double 0xBFF7F19EB1BA88F8, double %2732, double %2724)
  %2734 = load ptr, ptr %7, align 8, !tbaa !9
  %2735 = load i32, ptr %12, align 4, !tbaa !5
  %2736 = load i32, ptr %8, align 4, !tbaa !5
  %2737 = mul nsw i32 15, %2736
  %2738 = add nsw i32 %2735, %2737
  %2739 = sext i32 %2738 to i64
  %2740 = getelementptr inbounds double, ptr %2734, i64 %2739
  %2741 = load double, ptr %2740, align 8, !tbaa !11
  %2742 = call double @llvm.fmuladd.f64(double 0x3FC901A35D55DB50, double %2741, double %2733)
  %2743 = load ptr, ptr %7, align 8, !tbaa !9
  %2744 = load i32, ptr %12, align 4, !tbaa !5
  %2745 = load i32, ptr %8, align 4, !tbaa !5
  %2746 = mul nsw i32 16, %2745
  %2747 = add nsw i32 %2744, %2746
  %2748 = sext i32 %2747 to i64
  %2749 = getelementptr inbounds double, ptr %2743, i64 %2748
  %2750 = load double, ptr %2749, align 8, !tbaa !11
  %2751 = call double @llvm.fmuladd.f64(double 0xBFF48831FA6C703B, double %2750, double %2742)
  %2752 = load ptr, ptr %7, align 8, !tbaa !9
  %2753 = load i32, ptr %12, align 4, !tbaa !5
  %2754 = load i32, ptr %8, align 4, !tbaa !5
  %2755 = mul nsw i32 17, %2754
  %2756 = add nsw i32 %2753, %2755
  %2757 = sext i32 %2756 to i64
  %2758 = getelementptr inbounds double, ptr %2752, i64 %2757
  %2759 = load double, ptr %2758, align 8, !tbaa !11
  %2760 = call double @llvm.fmuladd.f64(double 0x3FF0AF85DD8BD416, double %2759, double %2751)
  store double %2760, ptr %11, align 8, !tbaa !11
  %2761 = load double, ptr %11, align 8, !tbaa !11
  %2762 = load ptr, ptr %9, align 8, !tbaa !9
  %2763 = load i32, ptr %12, align 4, !tbaa !5
  %2764 = load i32, ptr %10, align 4, !tbaa !5
  %2765 = mul nsw i32 15, %2764
  %2766 = add nsw i32 %2763, %2765
  %2767 = sext i32 %2766 to i64
  %2768 = getelementptr inbounds double, ptr %2762, i64 %2767
  %2769 = load double, ptr %2768, align 8, !tbaa !11
  %2770 = fadd double %2769, %2761
  store double %2770, ptr %2768, align 8, !tbaa !11
  %2771 = load ptr, ptr %7, align 8, !tbaa !9
  %2772 = load i32, ptr %12, align 4, !tbaa !5
  %2773 = load i32, ptr %8, align 4, !tbaa !5
  %2774 = mul nsw i32 0, %2773
  %2775 = add nsw i32 %2772, %2774
  %2776 = sext i32 %2775 to i64
  %2777 = getelementptr inbounds double, ptr %2771, i64 %2776
  %2778 = load double, ptr %2777, align 8, !tbaa !11
  %2779 = load ptr, ptr %7, align 8, !tbaa !9
  %2780 = load i32, ptr %12, align 4, !tbaa !5
  %2781 = load i32, ptr %8, align 4, !tbaa !5
  %2782 = mul nsw i32 1, %2781
  %2783 = add nsw i32 %2780, %2782
  %2784 = sext i32 %2783 to i64
  %2785 = getelementptr inbounds double, ptr %2779, i64 %2784
  %2786 = load double, ptr %2785, align 8, !tbaa !11
  %2787 = fmul double 0xBC958B3DCEB03946, %2786
  %2788 = call double @llvm.fmuladd.f64(double 0xBCADB22B9651CF46, double %2778, double %2787)
  %2789 = load ptr, ptr %7, align 8, !tbaa !9
  %2790 = load i32, ptr %12, align 4, !tbaa !5
  %2791 = load i32, ptr %8, align 4, !tbaa !5
  %2792 = mul nsw i32 2, %2791
  %2793 = add nsw i32 %2790, %2792
  %2794 = sext i32 %2793 to i64
  %2795 = getelementptr inbounds double, ptr %2789, i64 %2794
  %2796 = load double, ptr %2795, align 8, !tbaa !11
  %2797 = call double @llvm.fmuladd.f64(double 0x3C9ED9E1BC70CFE6, double %2796, double %2788)
  %2798 = load ptr, ptr %7, align 8, !tbaa !9
  %2799 = load i32, ptr %12, align 4, !tbaa !5
  %2800 = load i32, ptr %8, align 4, !tbaa !5
  %2801 = mul nsw i32 3, %2800
  %2802 = add nsw i32 %2799, %2801
  %2803 = sext i32 %2802 to i64
  %2804 = getelementptr inbounds double, ptr %2798, i64 %2803
  %2805 = load double, ptr %2804, align 8, !tbaa !11
  %2806 = call double @llvm.fmuladd.f64(double 0xBC8826BEE25DF5B0, double %2805, double %2797)
  %2807 = load ptr, ptr %7, align 8, !tbaa !9
  %2808 = load i32, ptr %12, align 4, !tbaa !5
  %2809 = load i32, ptr %8, align 4, !tbaa !5
  %2810 = mul nsw i32 4, %2809
  %2811 = add nsw i32 %2808, %2810
  %2812 = sext i32 %2811 to i64
  %2813 = getelementptr inbounds double, ptr %2807, i64 %2812
  %2814 = load double, ptr %2813, align 8, !tbaa !11
  %2815 = call double @llvm.fmuladd.f64(double 0x3CCBB1D94C3EA191, double %2814, double %2806)
  %2816 = load ptr, ptr %7, align 8, !tbaa !9
  %2817 = load i32, ptr %12, align 4, !tbaa !5
  %2818 = load i32, ptr %8, align 4, !tbaa !5
  %2819 = mul nsw i32 5, %2818
  %2820 = add nsw i32 %2817, %2819
  %2821 = sext i32 %2820 to i64
  %2822 = getelementptr inbounds double, ptr %2816, i64 %2821
  %2823 = load double, ptr %2822, align 8, !tbaa !11
  %2824 = call double @llvm.fmuladd.f64(double 0xBC99F98308323540, double %2823, double %2815)
  %2825 = load ptr, ptr %7, align 8, !tbaa !9
  %2826 = load i32, ptr %12, align 4, !tbaa !5
  %2827 = load i32, ptr %8, align 4, !tbaa !5
  %2828 = mul nsw i32 6, %2827
  %2829 = add nsw i32 %2826, %2828
  %2830 = sext i32 %2829 to i64
  %2831 = getelementptr inbounds double, ptr %2825, i64 %2830
  %2832 = load double, ptr %2831, align 8, !tbaa !11
  %2833 = call double @llvm.fmuladd.f64(double 0xBC81FCE005D2224B, double %2832, double %2824)
  %2834 = load ptr, ptr %7, align 8, !tbaa !9
  %2835 = load i32, ptr %12, align 4, !tbaa !5
  %2836 = load i32, ptr %8, align 4, !tbaa !5
  %2837 = mul nsw i32 7, %2836
  %2838 = add nsw i32 %2835, %2837
  %2839 = sext i32 %2838 to i64
  %2840 = getelementptr inbounds double, ptr %2834, i64 %2839
  %2841 = load double, ptr %2840, align 8, !tbaa !11
  %2842 = call double @llvm.fmuladd.f64(double 0x3C94D6A0DAC57C7D, double %2841, double %2833)
  %2843 = load ptr, ptr %7, align 8, !tbaa !9
  %2844 = load i32, ptr %12, align 4, !tbaa !5
  %2845 = load i32, ptr %8, align 4, !tbaa !5
  %2846 = mul nsw i32 8, %2845
  %2847 = add nsw i32 %2844, %2846
  %2848 = sext i32 %2847 to i64
  %2849 = getelementptr inbounds double, ptr %2843, i64 %2848
  %2850 = load double, ptr %2849, align 8, !tbaa !11
  %2851 = call double @llvm.fmuladd.f64(double 0xBC84E1D5E41DCEB7, double %2850, double %2842)
  %2852 = load ptr, ptr %7, align 8, !tbaa !9
  %2853 = load i32, ptr %12, align 4, !tbaa !5
  %2854 = load i32, ptr %8, align 4, !tbaa !5
  %2855 = mul nsw i32 9, %2854
  %2856 = add nsw i32 %2853, %2855
  %2857 = sext i32 %2856 to i64
  %2858 = getelementptr inbounds double, ptr %2852, i64 %2857
  %2859 = load double, ptr %2858, align 8, !tbaa !11
  %2860 = call double @llvm.fmuladd.f64(double 0xBC92763F594C57B8, double %2859, double %2851)
  %2861 = load ptr, ptr %7, align 8, !tbaa !9
  %2862 = load i32, ptr %12, align 4, !tbaa !5
  %2863 = load i32, ptr %8, align 4, !tbaa !5
  %2864 = mul nsw i32 10, %2863
  %2865 = add nsw i32 %2862, %2864
  %2866 = sext i32 %2865 to i64
  %2867 = getelementptr inbounds double, ptr %2861, i64 %2866
  %2868 = load double, ptr %2867, align 8, !tbaa !11
  %2869 = call double @llvm.fmuladd.f64(double 0x3CB1F86B771BE422, double %2868, double %2860)
  %2870 = load ptr, ptr %7, align 8, !tbaa !9
  %2871 = load i32, ptr %12, align 4, !tbaa !5
  %2872 = load i32, ptr %8, align 4, !tbaa !5
  %2873 = mul nsw i32 11, %2872
  %2874 = add nsw i32 %2871, %2873
  %2875 = sext i32 %2874 to i64
  %2876 = getelementptr inbounds double, ptr %2870, i64 %2875
  %2877 = load double, ptr %2876, align 8, !tbaa !11
  %2878 = call double @llvm.fmuladd.f64(double 0xBCA63320C046EFE5, double %2877, double %2869)
  %2879 = load ptr, ptr %7, align 8, !tbaa !9
  %2880 = load i32, ptr %12, align 4, !tbaa !5
  %2881 = load i32, ptr %8, align 4, !tbaa !5
  %2882 = mul nsw i32 12, %2881
  %2883 = add nsw i32 %2880, %2882
  %2884 = sext i32 %2883 to i64
  %2885 = getelementptr inbounds double, ptr %2879, i64 %2884
  %2886 = load double, ptr %2885, align 8, !tbaa !11
  %2887 = call double @llvm.fmuladd.f64(double 0x3FF3237A82AF9ECC, double %2886, double %2878)
  %2888 = load ptr, ptr %7, align 8, !tbaa !9
  %2889 = load i32, ptr %12, align 4, !tbaa !5
  %2890 = load i32, ptr %8, align 4, !tbaa !5
  %2891 = mul nsw i32 13, %2890
  %2892 = add nsw i32 %2889, %2891
  %2893 = sext i32 %2892 to i64
  %2894 = getelementptr inbounds double, ptr %2888, i64 %2893
  %2895 = load double, ptr %2894, align 8, !tbaa !11
  %2896 = call double @llvm.fmuladd.f64(double 0xBFB17C71DD2D5180, double %2895, double %2887)
  %2897 = load ptr, ptr %7, align 8, !tbaa !9
  %2898 = load i32, ptr %12, align 4, !tbaa !5
  %2899 = load i32, ptr %8, align 4, !tbaa !5
  %2900 = mul nsw i32 14, %2899
  %2901 = add nsw i32 %2898, %2900
  %2902 = sext i32 %2901 to i64
  %2903 = getelementptr inbounds double, ptr %2897, i64 %2902
  %2904 = load double, ptr %2903, align 8, !tbaa !11
  %2905 = call double @llvm.fmuladd.f64(double 0xBF76E8A1969E7200, double %2904, double %2896)
  %2906 = load ptr, ptr %7, align 8, !tbaa !9
  %2907 = load i32, ptr %12, align 4, !tbaa !5
  %2908 = load i32, ptr %8, align 4, !tbaa !5
  %2909 = mul nsw i32 15, %2908
  %2910 = add nsw i32 %2907, %2909
  %2911 = sext i32 %2910 to i64
  %2912 = getelementptr inbounds double, ptr %2906, i64 %2911
  %2913 = load double, ptr %2912, align 8, !tbaa !11
  %2914 = call double @llvm.fmuladd.f64(double 0x3FC179BD32D3DC6F, double %2913, double %2905)
  %2915 = load ptr, ptr %7, align 8, !tbaa !9
  %2916 = load i32, ptr %12, align 4, !tbaa !5
  %2917 = load i32, ptr %8, align 4, !tbaa !5
  %2918 = mul nsw i32 16, %2917
  %2919 = add nsw i32 %2916, %2918
  %2920 = sext i32 %2919 to i64
  %2921 = getelementptr inbounds double, ptr %2915, i64 %2920
  %2922 = load double, ptr %2921, align 8, !tbaa !11
  %2923 = call double @llvm.fmuladd.f64(double 0x3FFBC4AD9C53A55A, double %2922, double %2914)
  %2924 = load ptr, ptr %7, align 8, !tbaa !9
  %2925 = load i32, ptr %12, align 4, !tbaa !5
  %2926 = load i32, ptr %8, align 4, !tbaa !5
  %2927 = mul nsw i32 17, %2926
  %2928 = add nsw i32 %2925, %2927
  %2929 = sext i32 %2928 to i64
  %2930 = getelementptr inbounds double, ptr %2924, i64 %2929
  %2931 = load double, ptr %2930, align 8, !tbaa !11
  %2932 = call double @llvm.fmuladd.f64(double 0x3FF1CA3B98F4942B, double %2931, double %2923)
  store double %2932, ptr %11, align 8, !tbaa !11
  %2933 = load double, ptr %11, align 8, !tbaa !11
  %2934 = load ptr, ptr %9, align 8, !tbaa !9
  %2935 = load i32, ptr %12, align 4, !tbaa !5
  %2936 = load i32, ptr %10, align 4, !tbaa !5
  %2937 = mul nsw i32 16, %2936
  %2938 = add nsw i32 %2935, %2937
  %2939 = sext i32 %2938 to i64
  %2940 = getelementptr inbounds double, ptr %2934, i64 %2939
  %2941 = load double, ptr %2940, align 8, !tbaa !11
  %2942 = fadd double %2941, %2933
  store double %2942, ptr %2940, align 8, !tbaa !11
  %2943 = load ptr, ptr %7, align 8, !tbaa !9
  %2944 = load i32, ptr %12, align 4, !tbaa !5
  %2945 = load i32, ptr %8, align 4, !tbaa !5
  %2946 = mul nsw i32 0, %2945
  %2947 = add nsw i32 %2944, %2946
  %2948 = sext i32 %2947 to i64
  %2949 = getelementptr inbounds double, ptr %2943, i64 %2948
  %2950 = load double, ptr %2949, align 8, !tbaa !11
  %2951 = load ptr, ptr %7, align 8, !tbaa !9
  %2952 = load i32, ptr %12, align 4, !tbaa !5
  %2953 = load i32, ptr %8, align 4, !tbaa !5
  %2954 = mul nsw i32 1, %2953
  %2955 = add nsw i32 %2952, %2954
  %2956 = sext i32 %2955 to i64
  %2957 = getelementptr inbounds double, ptr %2951, i64 %2956
  %2958 = load double, ptr %2957, align 8, !tbaa !11
  %2959 = fmul double 0xBC90195309BD1B6C, %2958
  %2960 = call double @llvm.fmuladd.f64(double 0x3C91420C4C2992C8, double %2950, double %2959)
  %2961 = load ptr, ptr %7, align 8, !tbaa !9
  %2962 = load i32, ptr %12, align 4, !tbaa !5
  %2963 = load i32, ptr %8, align 4, !tbaa !5
  %2964 = mul nsw i32 2, %2963
  %2965 = add nsw i32 %2962, %2964
  %2966 = sext i32 %2965 to i64
  %2967 = getelementptr inbounds double, ptr %2961, i64 %2966
  %2968 = load double, ptr %2967, align 8, !tbaa !11
  %2969 = call double @llvm.fmuladd.f64(double 0xBCB1596887C79338, double %2968, double %2960)
  %2970 = load ptr, ptr %7, align 8, !tbaa !9
  %2971 = load i32, ptr %12, align 4, !tbaa !5
  %2972 = load i32, ptr %8, align 4, !tbaa !5
  %2973 = mul nsw i32 3, %2972
  %2974 = add nsw i32 %2971, %2973
  %2975 = sext i32 %2974 to i64
  %2976 = getelementptr inbounds double, ptr %2970, i64 %2975
  %2977 = load double, ptr %2976, align 8, !tbaa !11
  %2978 = call double @llvm.fmuladd.f64(double 0xBC95A4C76FC77AC0, double %2977, double %2969)
  %2979 = load ptr, ptr %7, align 8, !tbaa !9
  %2980 = load i32, ptr %12, align 4, !tbaa !5
  %2981 = load i32, ptr %8, align 4, !tbaa !5
  %2982 = mul nsw i32 4, %2981
  %2983 = add nsw i32 %2980, %2982
  %2984 = sext i32 %2983 to i64
  %2985 = getelementptr inbounds double, ptr %2979, i64 %2984
  %2986 = load double, ptr %2985, align 8, !tbaa !11
  %2987 = call double @llvm.fmuladd.f64(double 0xBCA0A9E2E329FCA7, double %2986, double %2978)
  %2988 = load ptr, ptr %7, align 8, !tbaa !9
  %2989 = load i32, ptr %12, align 4, !tbaa !5
  %2990 = load i32, ptr %8, align 4, !tbaa !5
  %2991 = mul nsw i32 5, %2990
  %2992 = add nsw i32 %2989, %2991
  %2993 = sext i32 %2992 to i64
  %2994 = getelementptr inbounds double, ptr %2988, i64 %2993
  %2995 = load double, ptr %2994, align 8, !tbaa !11
  %2996 = call double @llvm.fmuladd.f64(double 0xBC80C6561C6CD610, double %2995, double %2987)
  %2997 = load ptr, ptr %7, align 8, !tbaa !9
  %2998 = load i32, ptr %12, align 4, !tbaa !5
  %2999 = load i32, ptr %8, align 4, !tbaa !5
  %3000 = mul nsw i32 6, %2999
  %3001 = add nsw i32 %2998, %3000
  %3002 = sext i32 %3001 to i64
  %3003 = getelementptr inbounds double, ptr %2997, i64 %3002
  %3004 = load double, ptr %3003, align 8, !tbaa !11
  %3005 = call double @llvm.fmuladd.f64(double 0xBC89201DA4BD28AE, double %3004, double %2996)
  %3006 = load ptr, ptr %7, align 8, !tbaa !9
  %3007 = load i32, ptr %12, align 4, !tbaa !5
  %3008 = load i32, ptr %8, align 4, !tbaa !5
  %3009 = mul nsw i32 7, %3008
  %3010 = add nsw i32 %3007, %3009
  %3011 = sext i32 %3010 to i64
  %3012 = getelementptr inbounds double, ptr %3006, i64 %3011
  %3013 = load double, ptr %3012, align 8, !tbaa !11
  %3014 = call double @llvm.fmuladd.f64(double 0x3C950AD45332D6FF, double %3013, double %3005)
  %3015 = load ptr, ptr %7, align 8, !tbaa !9
  %3016 = load i32, ptr %12, align 4, !tbaa !5
  %3017 = load i32, ptr %8, align 4, !tbaa !5
  %3018 = mul nsw i32 8, %3017
  %3019 = add nsw i32 %3016, %3018
  %3020 = sext i32 %3019 to i64
  %3021 = getelementptr inbounds double, ptr %3015, i64 %3020
  %3022 = load double, ptr %3021, align 8, !tbaa !11
  %3023 = call double @llvm.fmuladd.f64(double 0x3C9EB6F29C749A8E, double %3022, double %3014)
  %3024 = load ptr, ptr %7, align 8, !tbaa !9
  %3025 = load i32, ptr %12, align 4, !tbaa !5
  %3026 = load i32, ptr %8, align 4, !tbaa !5
  %3027 = mul nsw i32 9, %3026
  %3028 = add nsw i32 %3025, %3027
  %3029 = sext i32 %3028 to i64
  %3030 = getelementptr inbounds double, ptr %3024, i64 %3029
  %3031 = load double, ptr %3030, align 8, !tbaa !11
  %3032 = call double @llvm.fmuladd.f64(double 0xBC6D62BACB4768A0, double %3031, double %3023)
  %3033 = load ptr, ptr %7, align 8, !tbaa !9
  %3034 = load i32, ptr %12, align 4, !tbaa !5
  %3035 = load i32, ptr %8, align 4, !tbaa !5
  %3036 = mul nsw i32 10, %3035
  %3037 = add nsw i32 %3034, %3036
  %3038 = sext i32 %3037 to i64
  %3039 = getelementptr inbounds double, ptr %3033, i64 %3038
  %3040 = load double, ptr %3039, align 8, !tbaa !11
  %3041 = call double @llvm.fmuladd.f64(double 0x3CB80BBA9C9EA48C, double %3040, double %3032)
  %3042 = load ptr, ptr %7, align 8, !tbaa !9
  %3043 = load i32, ptr %12, align 4, !tbaa !5
  %3044 = load i32, ptr %8, align 4, !tbaa !5
  %3045 = mul nsw i32 11, %3044
  %3046 = add nsw i32 %3043, %3045
  %3047 = sext i32 %3046 to i64
  %3048 = getelementptr inbounds double, ptr %3042, i64 %3047
  %3049 = load double, ptr %3048, align 8, !tbaa !11
  %3050 = call double @llvm.fmuladd.f64(double 0xBCAB0B98A91B6678, double %3049, double %3041)
  %3051 = load ptr, ptr %7, align 8, !tbaa !9
  %3052 = load i32, ptr %12, align 4, !tbaa !5
  %3053 = load i32, ptr %8, align 4, !tbaa !5
  %3054 = mul nsw i32 12, %3053
  %3055 = add nsw i32 %3052, %3054
  %3056 = sext i32 %3055 to i64
  %3057 = getelementptr inbounds double, ptr %3051, i64 %3056
  %3058 = load double, ptr %3057, align 8, !tbaa !11
  %3059 = call double @llvm.fmuladd.f64(double 0xBFF5B6F7089FF1D1, double %3058, double %3050)
  %3060 = load ptr, ptr %7, align 8, !tbaa !9
  %3061 = load i32, ptr %12, align 4, !tbaa !5
  %3062 = load i32, ptr %8, align 4, !tbaa !5
  %3063 = mul nsw i32 13, %3062
  %3064 = add nsw i32 %3061, %3063
  %3065 = sext i32 %3064 to i64
  %3066 = getelementptr inbounds double, ptr %3060, i64 %3065
  %3067 = load double, ptr %3066, align 8, !tbaa !11
  %3068 = call double @llvm.fmuladd.f64(double 0x3FB1F3F0B024DC80, double %3067, double %3059)
  %3069 = load ptr, ptr %7, align 8, !tbaa !9
  %3070 = load i32, ptr %12, align 4, !tbaa !5
  %3071 = load i32, ptr %8, align 4, !tbaa !5
  %3072 = mul nsw i32 14, %3071
  %3073 = add nsw i32 %3070, %3072
  %3074 = sext i32 %3073 to i64
  %3075 = getelementptr inbounds double, ptr %3069, i64 %3074
  %3076 = load double, ptr %3075, align 8, !tbaa !11
  %3077 = call double @llvm.fmuladd.f64(double 0x3FCCBE3CAE6B6284, double %3076, double %3068)
  %3078 = load ptr, ptr %7, align 8, !tbaa !9
  %3079 = load i32, ptr %12, align 4, !tbaa !5
  %3080 = load i32, ptr %8, align 4, !tbaa !5
  %3081 = mul nsw i32 15, %3080
  %3082 = add nsw i32 %3079, %3081
  %3083 = sext i32 %3082 to i64
  %3084 = getelementptr inbounds double, ptr %3078, i64 %3083
  %3085 = load double, ptr %3084, align 8, !tbaa !11
  %3086 = call double @llvm.fmuladd.f64(double 0xBFD81F8F0CEC6102, double %3085, double %3077)
  %3087 = load ptr, ptr %7, align 8, !tbaa !9
  %3088 = load i32, ptr %12, align 4, !tbaa !5
  %3089 = load i32, ptr %8, align 4, !tbaa !5
  %3090 = mul nsw i32 16, %3089
  %3091 = add nsw i32 %3088, %3090
  %3092 = sext i32 %3091 to i64
  %3093 = getelementptr inbounds double, ptr %3087, i64 %3092
  %3094 = load double, ptr %3093, align 8, !tbaa !11
  %3095 = call double @llvm.fmuladd.f64(double 0xBFFBA497A89943F3, double %3094, double %3086)
  %3096 = load ptr, ptr %7, align 8, !tbaa !9
  %3097 = load i32, ptr %12, align 4, !tbaa !5
  %3098 = load i32, ptr %8, align 4, !tbaa !5
  %3099 = mul nsw i32 17, %3098
  %3100 = add nsw i32 %3097, %3099
  %3101 = sext i32 %3100 to i64
  %3102 = getelementptr inbounds double, ptr %3096, i64 %3101
  %3103 = load double, ptr %3102, align 8, !tbaa !11
  %3104 = call double @llvm.fmuladd.f64(double 0xBFDC5366E211BEA3, double %3103, double %3095)
  store double %3104, ptr %11, align 8, !tbaa !11
  %3105 = load double, ptr %11, align 8, !tbaa !11
  %3106 = load ptr, ptr %9, align 8, !tbaa !9
  %3107 = load i32, ptr %12, align 4, !tbaa !5
  %3108 = load i32, ptr %10, align 4, !tbaa !5
  %3109 = mul nsw i32 17, %3108
  %3110 = add nsw i32 %3107, %3109
  %3111 = sext i32 %3110 to i64
  %3112 = getelementptr inbounds double, ptr %3106, i64 %3111
  %3113 = load double, ptr %3112, align 8, !tbaa !11
  %3114 = fadd double %3113, %3105
  store double %3114, ptr %3112, align 8, !tbaa !11
  %3115 = load ptr, ptr %7, align 8, !tbaa !9
  %3116 = load i32, ptr %12, align 4, !tbaa !5
  %3117 = load i32, ptr %8, align 4, !tbaa !5
  %3118 = mul nsw i32 0, %3117
  %3119 = add nsw i32 %3116, %3118
  %3120 = sext i32 %3119 to i64
  %3121 = getelementptr inbounds double, ptr %3115, i64 %3120
  %3122 = load double, ptr %3121, align 8, !tbaa !11
  %3123 = load ptr, ptr %7, align 8, !tbaa !9
  %3124 = load i32, ptr %12, align 4, !tbaa !5
  %3125 = load i32, ptr %8, align 4, !tbaa !5
  %3126 = mul nsw i32 1, %3125
  %3127 = add nsw i32 %3124, %3126
  %3128 = sext i32 %3127 to i64
  %3129 = getelementptr inbounds double, ptr %3123, i64 %3128
  %3130 = load double, ptr %3129, align 8, !tbaa !11
  %3131 = fmul double 0x3FE4EDE8EE256114, %3130
  %3132 = call double @llvm.fmuladd.f64(double 0xBFE8AC73392375CC, double %3122, double %3131)
  %3133 = load ptr, ptr %7, align 8, !tbaa !9
  %3134 = load i32, ptr %12, align 4, !tbaa !5
  %3135 = load i32, ptr %8, align 4, !tbaa !5
  %3136 = mul nsw i32 2, %3135
  %3137 = add nsw i32 %3134, %3136
  %3138 = sext i32 %3137 to i64
  %3139 = getelementptr inbounds double, ptr %3133, i64 %3138
  %3140 = load double, ptr %3139, align 8, !tbaa !11
  %3141 = call double @llvm.fmuladd.f64(double 0x3FEA5488770B26BE, double %3140, double %3132)
  %3142 = load ptr, ptr %7, align 8, !tbaa !9
  %3143 = load i32, ptr %12, align 4, !tbaa !5
  %3144 = load i32, ptr %8, align 4, !tbaa !5
  %3145 = mul nsw i32 3, %3144
  %3146 = add nsw i32 %3143, %3145
  %3147 = sext i32 %3146 to i64
  %3148 = getelementptr inbounds double, ptr %3142, i64 %3147
  %3149 = load double, ptr %3148, align 8, !tbaa !11
  %3150 = call double @llvm.fmuladd.f64(double 0x3FF44CD742FC94E8, double %3149, double %3141)
  %3151 = load ptr, ptr %7, align 8, !tbaa !9
  %3152 = load i32, ptr %12, align 4, !tbaa !5
  %3153 = load i32, ptr %8, align 4, !tbaa !5
  %3154 = mul nsw i32 4, %3153
  %3155 = add nsw i32 %3152, %3154
  %3156 = sext i32 %3155 to i64
  %3157 = getelementptr inbounds double, ptr %3151, i64 %3156
  %3158 = load double, ptr %3157, align 8, !tbaa !11
  %3159 = call double @llvm.fmuladd.f64(double 0xBFFEF1F8514C97DD, double %3158, double %3150)
  %3160 = load ptr, ptr %7, align 8, !tbaa !9
  %3161 = load i32, ptr %12, align 4, !tbaa !5
  %3162 = load i32, ptr %8, align 4, !tbaa !5
  %3163 = mul nsw i32 5, %3162
  %3164 = add nsw i32 %3161, %3163
  %3165 = sext i32 %3164 to i64
  %3166 = getelementptr inbounds double, ptr %3160, i64 %3165
  %3167 = load double, ptr %3166, align 8, !tbaa !11
  %3168 = call double @llvm.fmuladd.f64(double 0xBFF01B2FE70C1193, double %3167, double %3159)
  %3169 = load ptr, ptr %7, align 8, !tbaa !9
  %3170 = load i32, ptr %12, align 4, !tbaa !5
  %3171 = load i32, ptr %8, align 4, !tbaa !5
  %3172 = mul nsw i32 6, %3171
  %3173 = add nsw i32 %3170, %3172
  %3174 = sext i32 %3173 to i64
  %3175 = getelementptr inbounds double, ptr %3169, i64 %3174
  %3176 = load double, ptr %3175, align 8, !tbaa !11
  %3177 = call double @llvm.fmuladd.f64(double 0x3CA4DBB49723188B, double %3176, double %3168)
  %3178 = load ptr, ptr %7, align 8, !tbaa !9
  %3179 = load i32, ptr %12, align 4, !tbaa !5
  %3180 = load i32, ptr %8, align 4, !tbaa !5
  %3181 = mul nsw i32 7, %3180
  %3182 = add nsw i32 %3179, %3181
  %3183 = sext i32 %3182 to i64
  %3184 = getelementptr inbounds double, ptr %3178, i64 %3183
  %3185 = load double, ptr %3184, align 8, !tbaa !11
  %3186 = call double @llvm.fmuladd.f64(double 0xBCA07423258E8785, double %3185, double %3177)
  %3187 = load ptr, ptr %7, align 8, !tbaa !9
  %3188 = load i32, ptr %12, align 4, !tbaa !5
  %3189 = load i32, ptr %8, align 4, !tbaa !5
  %3190 = mul nsw i32 8, %3189
  %3191 = add nsw i32 %3188, %3190
  %3192 = sext i32 %3191 to i64
  %3193 = getelementptr inbounds double, ptr %3187, i64 %3192
  %3194 = load double, ptr %3193, align 8, !tbaa !11
  %3195 = call double @llvm.fmuladd.f64(double 0xBC8CF1A7605B6ED6, double %3194, double %3186)
  %3196 = load ptr, ptr %7, align 8, !tbaa !9
  %3197 = load i32, ptr %12, align 4, !tbaa !5
  %3198 = load i32, ptr %8, align 4, !tbaa !5
  %3199 = mul nsw i32 9, %3198
  %3200 = add nsw i32 %3197, %3199
  %3201 = sext i32 %3200 to i64
  %3202 = getelementptr inbounds double, ptr %3196, i64 %3201
  %3203 = load double, ptr %3202, align 8, !tbaa !11
  %3204 = call double @llvm.fmuladd.f64(double 0xBC87A5CD2646DADD, double %3203, double %3195)
  %3205 = load ptr, ptr %7, align 8, !tbaa !9
  %3206 = load i32, ptr %12, align 4, !tbaa !5
  %3207 = load i32, ptr %8, align 4, !tbaa !5
  %3208 = mul nsw i32 10, %3207
  %3209 = add nsw i32 %3206, %3208
  %3210 = sext i32 %3209 to i64
  %3211 = getelementptr inbounds double, ptr %3205, i64 %3210
  %3212 = load double, ptr %3211, align 8, !tbaa !11
  %3213 = call double @llvm.fmuladd.f64(double 0x3C756728FD5B044F, double %3212, double %3204)
  %3214 = load ptr, ptr %7, align 8, !tbaa !9
  %3215 = load i32, ptr %12, align 4, !tbaa !5
  %3216 = load i32, ptr %8, align 4, !tbaa !5
  %3217 = mul nsw i32 11, %3216
  %3218 = add nsw i32 %3215, %3217
  %3219 = sext i32 %3218 to i64
  %3220 = getelementptr inbounds double, ptr %3214, i64 %3219
  %3221 = load double, ptr %3220, align 8, !tbaa !11
  %3222 = call double @llvm.fmuladd.f64(double 0xBC8B1A3C6A1C6E73, double %3221, double %3213)
  %3223 = load ptr, ptr %7, align 8, !tbaa !9
  %3224 = load i32, ptr %12, align 4, !tbaa !5
  %3225 = load i32, ptr %8, align 4, !tbaa !5
  %3226 = mul nsw i32 12, %3225
  %3227 = add nsw i32 %3224, %3226
  %3228 = sext i32 %3227 to i64
  %3229 = getelementptr inbounds double, ptr %3223, i64 %3228
  %3230 = load double, ptr %3229, align 8, !tbaa !11
  %3231 = call double @llvm.fmuladd.f64(double 0xBCB366C66C9C20EC, double %3230, double %3222)
  %3232 = load ptr, ptr %7, align 8, !tbaa !9
  %3233 = load i32, ptr %12, align 4, !tbaa !5
  %3234 = load i32, ptr %8, align 4, !tbaa !5
  %3235 = mul nsw i32 13, %3234
  %3236 = add nsw i32 %3233, %3235
  %3237 = sext i32 %3236 to i64
  %3238 = getelementptr inbounds double, ptr %3232, i64 %3237
  %3239 = load double, ptr %3238, align 8, !tbaa !11
  %3240 = call double @llvm.fmuladd.f64(double 0xBC7758351226A631, double %3239, double %3231)
  %3241 = load ptr, ptr %7, align 8, !tbaa !9
  %3242 = load i32, ptr %12, align 4, !tbaa !5
  %3243 = load i32, ptr %8, align 4, !tbaa !5
  %3244 = mul nsw i32 14, %3243
  %3245 = add nsw i32 %3242, %3244
  %3246 = sext i32 %3245 to i64
  %3247 = getelementptr inbounds double, ptr %3241, i64 %3246
  %3248 = load double, ptr %3247, align 8, !tbaa !11
  %3249 = call double @llvm.fmuladd.f64(double 0xBCB6C6F6878DD3A7, double %3248, double %3240)
  %3250 = load ptr, ptr %7, align 8, !tbaa !9
  %3251 = load i32, ptr %12, align 4, !tbaa !5
  %3252 = load i32, ptr %8, align 4, !tbaa !5
  %3253 = mul nsw i32 15, %3252
  %3254 = add nsw i32 %3251, %3253
  %3255 = sext i32 %3254 to i64
  %3256 = getelementptr inbounds double, ptr %3250, i64 %3255
  %3257 = load double, ptr %3256, align 8, !tbaa !11
  %3258 = call double @llvm.fmuladd.f64(double 0x3CA4C6639E24044F, double %3257, double %3249)
  %3259 = load ptr, ptr %7, align 8, !tbaa !9
  %3260 = load i32, ptr %12, align 4, !tbaa !5
  %3261 = load i32, ptr %8, align 4, !tbaa !5
  %3262 = mul nsw i32 16, %3261
  %3263 = add nsw i32 %3260, %3262
  %3264 = sext i32 %3263 to i64
  %3265 = getelementptr inbounds double, ptr %3259, i64 %3264
  %3266 = load double, ptr %3265, align 8, !tbaa !11
  %3267 = call double @llvm.fmuladd.f64(double 0x3CB88B2192416394, double %3266, double %3258)
  %3268 = load ptr, ptr %7, align 8, !tbaa !9
  %3269 = load i32, ptr %12, align 4, !tbaa !5
  %3270 = load i32, ptr %8, align 4, !tbaa !5
  %3271 = mul nsw i32 17, %3270
  %3272 = add nsw i32 %3269, %3271
  %3273 = sext i32 %3272 to i64
  %3274 = getelementptr inbounds double, ptr %3268, i64 %3273
  %3275 = load double, ptr %3274, align 8, !tbaa !11
  %3276 = call double @llvm.fmuladd.f64(double 0xBC4417177B9D447F, double %3275, double %3267)
  store double %3276, ptr %11, align 8, !tbaa !11
  %3277 = load double, ptr %11, align 8, !tbaa !11
  %3278 = load ptr, ptr %9, align 8, !tbaa !9
  %3279 = load i32, ptr %12, align 4, !tbaa !5
  %3280 = load i32, ptr %10, align 4, !tbaa !5
  %3281 = mul nsw i32 18, %3280
  %3282 = add nsw i32 %3279, %3281
  %3283 = sext i32 %3282 to i64
  %3284 = getelementptr inbounds double, ptr %3278, i64 %3283
  %3285 = load double, ptr %3284, align 8, !tbaa !11
  %3286 = fadd double %3285, %3277
  store double %3286, ptr %3284, align 8, !tbaa !11
  %3287 = load ptr, ptr %7, align 8, !tbaa !9
  %3288 = load i32, ptr %12, align 4, !tbaa !5
  %3289 = load i32, ptr %8, align 4, !tbaa !5
  %3290 = mul nsw i32 0, %3289
  %3291 = add nsw i32 %3288, %3290
  %3292 = sext i32 %3291 to i64
  %3293 = getelementptr inbounds double, ptr %3287, i64 %3292
  %3294 = load double, ptr %3293, align 8, !tbaa !11
  %3295 = load ptr, ptr %7, align 8, !tbaa !9
  %3296 = load i32, ptr %12, align 4, !tbaa !5
  %3297 = load i32, ptr %8, align 4, !tbaa !5
  %3298 = mul nsw i32 1, %3297
  %3299 = add nsw i32 %3296, %3298
  %3300 = sext i32 %3299 to i64
  %3301 = getelementptr inbounds double, ptr %3295, i64 %3300
  %3302 = load double, ptr %3301, align 8, !tbaa !11
  %3303 = fmul double 0x3FF44E3F94172F4B, %3302
  %3304 = call double @llvm.fmuladd.f64(double 0xBF7DFA2300BBB280, double %3294, double %3303)
  %3305 = load ptr, ptr %7, align 8, !tbaa !9
  %3306 = load i32, ptr %12, align 4, !tbaa !5
  %3307 = load i32, ptr %8, align 4, !tbaa !5
  %3308 = mul nsw i32 2, %3307
  %3309 = add nsw i32 %3306, %3308
  %3310 = sext i32 %3309 to i64
  %3311 = getelementptr inbounds double, ptr %3305, i64 %3310
  %3312 = load double, ptr %3311, align 8, !tbaa !11
  %3313 = call double @llvm.fmuladd.f64(double 0x3FB9ECDD981278F3, double %3312, double %3304)
  %3314 = load ptr, ptr %7, align 8, !tbaa !9
  %3315 = load i32, ptr %12, align 4, !tbaa !5
  %3316 = load i32, ptr %8, align 4, !tbaa !5
  %3317 = mul nsw i32 3, %3316
  %3318 = add nsw i32 %3315, %3317
  %3319 = sext i32 %3318 to i64
  %3320 = getelementptr inbounds double, ptr %3314, i64 %3319
  %3321 = load double, ptr %3320, align 8, !tbaa !11
  %3322 = call double @llvm.fmuladd.f64(double 0xBFE4FBED5D8A964C, double %3321, double %3313)
  %3323 = load ptr, ptr %7, align 8, !tbaa !9
  %3324 = load i32, ptr %12, align 4, !tbaa !5
  %3325 = load i32, ptr %8, align 4, !tbaa !5
  %3326 = mul nsw i32 4, %3325
  %3327 = add nsw i32 %3324, %3326
  %3328 = sext i32 %3327 to i64
  %3329 = getelementptr inbounds double, ptr %3323, i64 %3328
  %3330 = load double, ptr %3329, align 8, !tbaa !11
  %3331 = call double @llvm.fmuladd.f64(double 0xBF83952FC55A7310, double %3330, double %3322)
  %3332 = load ptr, ptr %7, align 8, !tbaa !9
  %3333 = load i32, ptr %12, align 4, !tbaa !5
  %3334 = load i32, ptr %8, align 4, !tbaa !5
  %3335 = mul nsw i32 5, %3334
  %3336 = add nsw i32 %3333, %3335
  %3337 = sext i32 %3336 to i64
  %3338 = getelementptr inbounds double, ptr %3332, i64 %3337
  %3339 = load double, ptr %3338, align 8, !tbaa !11
  %3340 = call double @llvm.fmuladd.f64(double 0x3FD50884576D0BB8, double %3339, double %3331)
  %3341 = load ptr, ptr %7, align 8, !tbaa !9
  %3342 = load i32, ptr %12, align 4, !tbaa !5
  %3343 = load i32, ptr %8, align 4, !tbaa !5
  %3344 = mul nsw i32 6, %3343
  %3345 = add nsw i32 %3342, %3344
  %3346 = sext i32 %3345 to i64
  %3347 = getelementptr inbounds double, ptr %3341, i64 %3346
  %3348 = load double, ptr %3347, align 8, !tbaa !11
  %3349 = call double @llvm.fmuladd.f64(double 0xBC62256990361280, double %3348, double %3340)
  %3350 = load ptr, ptr %7, align 8, !tbaa !9
  %3351 = load i32, ptr %12, align 4, !tbaa !5
  %3352 = load i32, ptr %8, align 4, !tbaa !5
  %3353 = mul nsw i32 7, %3352
  %3354 = add nsw i32 %3351, %3353
  %3355 = sext i32 %3354 to i64
  %3356 = getelementptr inbounds double, ptr %3350, i64 %3355
  %3357 = load double, ptr %3356, align 8, !tbaa !11
  %3358 = call double @llvm.fmuladd.f64(double 0x3CC20413F90F2947, double %3357, double %3349)
  %3359 = load ptr, ptr %7, align 8, !tbaa !9
  %3360 = load i32, ptr %12, align 4, !tbaa !5
  %3361 = load i32, ptr %8, align 4, !tbaa !5
  %3362 = mul nsw i32 8, %3361
  %3363 = add nsw i32 %3360, %3362
  %3364 = sext i32 %3363 to i64
  %3365 = getelementptr inbounds double, ptr %3359, i64 %3364
  %3366 = load double, ptr %3365, align 8, !tbaa !11
  %3367 = call double @llvm.fmuladd.f64(double 0x3CA8FA36F9E410BC, double %3366, double %3358)
  %3368 = load ptr, ptr %7, align 8, !tbaa !9
  %3369 = load i32, ptr %12, align 4, !tbaa !5
  %3370 = load i32, ptr %8, align 4, !tbaa !5
  %3371 = mul nsw i32 9, %3370
  %3372 = add nsw i32 %3369, %3371
  %3373 = sext i32 %3372 to i64
  %3374 = getelementptr inbounds double, ptr %3368, i64 %3373
  %3375 = load double, ptr %3374, align 8, !tbaa !11
  %3376 = call double @llvm.fmuladd.f64(double 0x3C9F209CBEE6547E, double %3375, double %3367)
  %3377 = load ptr, ptr %7, align 8, !tbaa !9
  %3378 = load i32, ptr %12, align 4, !tbaa !5
  %3379 = load i32, ptr %8, align 4, !tbaa !5
  %3380 = mul nsw i32 10, %3379
  %3381 = add nsw i32 %3378, %3380
  %3382 = sext i32 %3381 to i64
  %3383 = getelementptr inbounds double, ptr %3377, i64 %3382
  %3384 = load double, ptr %3383, align 8, !tbaa !11
  %3385 = call double @llvm.fmuladd.f64(double 0x3CA97C0FDD5CC331, double %3384, double %3376)
  %3386 = load ptr, ptr %7, align 8, !tbaa !9
  %3387 = load i32, ptr %12, align 4, !tbaa !5
  %3388 = load i32, ptr %8, align 4, !tbaa !5
  %3389 = mul nsw i32 11, %3388
  %3390 = add nsw i32 %3387, %3389
  %3391 = sext i32 %3390 to i64
  %3392 = getelementptr inbounds double, ptr %3386, i64 %3391
  %3393 = load double, ptr %3392, align 8, !tbaa !11
  %3394 = call double @llvm.fmuladd.f64(double 0x3C839062B03D9625, double %3393, double %3385)
  %3395 = load ptr, ptr %7, align 8, !tbaa !9
  %3396 = load i32, ptr %12, align 4, !tbaa !5
  %3397 = load i32, ptr %8, align 4, !tbaa !5
  %3398 = mul nsw i32 12, %3397
  %3399 = add nsw i32 %3396, %3398
  %3400 = sext i32 %3399 to i64
  %3401 = getelementptr inbounds double, ptr %3395, i64 %3400
  %3402 = load double, ptr %3401, align 8, !tbaa !11
  %3403 = call double @llvm.fmuladd.f64(double 0x3C8F162AB3E24558, double %3402, double %3394)
  %3404 = load ptr, ptr %7, align 8, !tbaa !9
  %3405 = load i32, ptr %12, align 4, !tbaa !5
  %3406 = load i32, ptr %8, align 4, !tbaa !5
  %3407 = mul nsw i32 13, %3406
  %3408 = add nsw i32 %3405, %3407
  %3409 = sext i32 %3408 to i64
  %3410 = getelementptr inbounds double, ptr %3404, i64 %3409
  %3411 = load double, ptr %3410, align 8, !tbaa !11
  %3412 = call double @llvm.fmuladd.f64(double 0x3CC24822224DBC78, double %3411, double %3403)
  %3413 = load ptr, ptr %7, align 8, !tbaa !9
  %3414 = load i32, ptr %12, align 4, !tbaa !5
  %3415 = load i32, ptr %8, align 4, !tbaa !5
  %3416 = mul nsw i32 14, %3415
  %3417 = add nsw i32 %3414, %3416
  %3418 = sext i32 %3417 to i64
  %3419 = getelementptr inbounds double, ptr %3413, i64 %3418
  %3420 = load double, ptr %3419, align 8, !tbaa !11
  %3421 = call double @llvm.fmuladd.f64(double 0xBCB88407823ABCF7, double %3420, double %3412)
  %3422 = load ptr, ptr %7, align 8, !tbaa !9
  %3423 = load i32, ptr %12, align 4, !tbaa !5
  %3424 = load i32, ptr %8, align 4, !tbaa !5
  %3425 = mul nsw i32 15, %3424
  %3426 = add nsw i32 %3423, %3425
  %3427 = sext i32 %3426 to i64
  %3428 = getelementptr inbounds double, ptr %3422, i64 %3427
  %3429 = load double, ptr %3428, align 8, !tbaa !11
  %3430 = call double @llvm.fmuladd.f64(double 0x3CB067CE2C74889D, double %3429, double %3421)
  %3431 = load ptr, ptr %7, align 8, !tbaa !9
  %3432 = load i32, ptr %12, align 4, !tbaa !5
  %3433 = load i32, ptr %8, align 4, !tbaa !5
  %3434 = mul nsw i32 16, %3433
  %3435 = add nsw i32 %3432, %3434
  %3436 = sext i32 %3435 to i64
  %3437 = getelementptr inbounds double, ptr %3431, i64 %3436
  %3438 = load double, ptr %3437, align 8, !tbaa !11
  %3439 = call double @llvm.fmuladd.f64(double 0x3CA71D150152D3DA, double %3438, double %3430)
  %3440 = load ptr, ptr %7, align 8, !tbaa !9
  %3441 = load i32, ptr %12, align 4, !tbaa !5
  %3442 = load i32, ptr %8, align 4, !tbaa !5
  %3443 = mul nsw i32 17, %3442
  %3444 = add nsw i32 %3441, %3443
  %3445 = sext i32 %3444 to i64
  %3446 = getelementptr inbounds double, ptr %3440, i64 %3445
  %3447 = load double, ptr %3446, align 8, !tbaa !11
  %3448 = call double @llvm.fmuladd.f64(double 0xBCC8C466774B0520, double %3447, double %3439)
  store double %3448, ptr %11, align 8, !tbaa !11
  %3449 = load double, ptr %11, align 8, !tbaa !11
  %3450 = load ptr, ptr %9, align 8, !tbaa !9
  %3451 = load i32, ptr %12, align 4, !tbaa !5
  %3452 = load i32, ptr %10, align 4, !tbaa !5
  %3453 = mul nsw i32 19, %3452
  %3454 = add nsw i32 %3451, %3453
  %3455 = sext i32 %3454 to i64
  %3456 = getelementptr inbounds double, ptr %3450, i64 %3455
  %3457 = load double, ptr %3456, align 8, !tbaa !11
  %3458 = fadd double %3457, %3449
  store double %3458, ptr %3456, align 8, !tbaa !11
  %3459 = load ptr, ptr %7, align 8, !tbaa !9
  %3460 = load i32, ptr %12, align 4, !tbaa !5
  %3461 = load i32, ptr %8, align 4, !tbaa !5
  %3462 = mul nsw i32 0, %3461
  %3463 = add nsw i32 %3460, %3462
  %3464 = sext i32 %3463 to i64
  %3465 = getelementptr inbounds double, ptr %3459, i64 %3464
  %3466 = load double, ptr %3465, align 8, !tbaa !11
  %3467 = load ptr, ptr %7, align 8, !tbaa !9
  %3468 = load i32, ptr %12, align 4, !tbaa !5
  %3469 = load i32, ptr %8, align 4, !tbaa !5
  %3470 = mul nsw i32 1, %3469
  %3471 = add nsw i32 %3468, %3470
  %3472 = sext i32 %3471 to i64
  %3473 = getelementptr inbounds double, ptr %3467, i64 %3472
  %3474 = load double, ptr %3473, align 8, !tbaa !11
  %3475 = fmul double 0xBFE1EC4181248AE2, %3474
  %3476 = call double @llvm.fmuladd.f64(double 0xBFDFFE63E285175F, double %3466, double %3475)
  %3477 = load ptr, ptr %7, align 8, !tbaa !9
  %3478 = load i32, ptr %12, align 4, !tbaa !5
  %3479 = load i32, ptr %8, align 4, !tbaa !5
  %3480 = mul nsw i32 2, %3479
  %3481 = add nsw i32 %3478, %3480
  %3482 = sext i32 %3481 to i64
  %3483 = getelementptr inbounds double, ptr %3477, i64 %3482
  %3484 = load double, ptr %3483, align 8, !tbaa !11
  %3485 = call double @llvm.fmuladd.f64(double 0x4000E9CE75C2FBF8, double %3484, double %3476)
  %3486 = load ptr, ptr %7, align 8, !tbaa !9
  %3487 = load i32, ptr %12, align 4, !tbaa !5
  %3488 = load i32, ptr %8, align 4, !tbaa !5
  %3489 = mul nsw i32 3, %3488
  %3490 = add nsw i32 %3487, %3489
  %3491 = sext i32 %3490 to i64
  %3492 = getelementptr inbounds double, ptr %3486, i64 %3491
  %3493 = load double, ptr %3492, align 8, !tbaa !11
  %3494 = call double @llvm.fmuladd.f64(double 0x3FF2343957F3A8AF, double %3493, double %3485)
  %3495 = load ptr, ptr %7, align 8, !tbaa !9
  %3496 = load i32, ptr %12, align 4, !tbaa !5
  %3497 = load i32, ptr %8, align 4, !tbaa !5
  %3498 = mul nsw i32 4, %3497
  %3499 = add nsw i32 %3496, %3498
  %3500 = sext i32 %3499 to i64
  %3501 = getelementptr inbounds double, ptr %3495, i64 %3500
  %3502 = load double, ptr %3501, align 8, !tbaa !11
  %3503 = call double @llvm.fmuladd.f64(double 0x3FF31D88B253B07B, double %3502, double %3494)
  %3504 = load ptr, ptr %7, align 8, !tbaa !9
  %3505 = load i32, ptr %12, align 4, !tbaa !5
  %3506 = load i32, ptr %8, align 4, !tbaa !5
  %3507 = mul nsw i32 5, %3506
  %3508 = add nsw i32 %3505, %3507
  %3509 = sext i32 %3508 to i64
  %3510 = getelementptr inbounds double, ptr %3504, i64 %3509
  %3511 = load double, ptr %3510, align 8, !tbaa !11
  %3512 = call double @llvm.fmuladd.f64(double 0xBFEE712F1EF7D89C, double %3511, double %3503)
  %3513 = load ptr, ptr %7, align 8, !tbaa !9
  %3514 = load i32, ptr %12, align 4, !tbaa !5
  %3515 = load i32, ptr %8, align 4, !tbaa !5
  %3516 = mul nsw i32 6, %3515
  %3517 = add nsw i32 %3514, %3516
  %3518 = sext i32 %3517 to i64
  %3519 = getelementptr inbounds double, ptr %3513, i64 %3518
  %3520 = load double, ptr %3519, align 8, !tbaa !11
  %3521 = call double @llvm.fmuladd.f64(double 0x3C850293B3FCA0E3, double %3520, double %3512)
  %3522 = load ptr, ptr %7, align 8, !tbaa !9
  %3523 = load i32, ptr %12, align 4, !tbaa !5
  %3524 = load i32, ptr %8, align 4, !tbaa !5
  %3525 = mul nsw i32 7, %3524
  %3526 = add nsw i32 %3523, %3525
  %3527 = sext i32 %3526 to i64
  %3528 = getelementptr inbounds double, ptr %3522, i64 %3527
  %3529 = load double, ptr %3528, align 8, !tbaa !11
  %3530 = call double @llvm.fmuladd.f64(double 0xBC70D2CDDD720E22, double %3529, double %3521)
  %3531 = load ptr, ptr %7, align 8, !tbaa !9
  %3532 = load i32, ptr %12, align 4, !tbaa !5
  %3533 = load i32, ptr %8, align 4, !tbaa !5
  %3534 = mul nsw i32 8, %3533
  %3535 = add nsw i32 %3532, %3534
  %3536 = sext i32 %3535 to i64
  %3537 = getelementptr inbounds double, ptr %3531, i64 %3536
  %3538 = load double, ptr %3537, align 8, !tbaa !11
  %3539 = call double @llvm.fmuladd.f64(double 0xBCA9795185F3DCEB, double %3538, double %3530)
  %3540 = load ptr, ptr %7, align 8, !tbaa !9
  %3541 = load i32, ptr %12, align 4, !tbaa !5
  %3542 = load i32, ptr %8, align 4, !tbaa !5
  %3543 = mul nsw i32 9, %3542
  %3544 = add nsw i32 %3541, %3543
  %3545 = sext i32 %3544 to i64
  %3546 = getelementptr inbounds double, ptr %3540, i64 %3545
  %3547 = load double, ptr %3546, align 8, !tbaa !11
  %3548 = call double @llvm.fmuladd.f64(double 0x3C9FEBD8FA5C50DD, double %3547, double %3539)
  %3549 = load ptr, ptr %7, align 8, !tbaa !9
  %3550 = load i32, ptr %12, align 4, !tbaa !5
  %3551 = load i32, ptr %8, align 4, !tbaa !5
  %3552 = mul nsw i32 10, %3551
  %3553 = add nsw i32 %3550, %3552
  %3554 = sext i32 %3553 to i64
  %3555 = getelementptr inbounds double, ptr %3549, i64 %3554
  %3556 = load double, ptr %3555, align 8, !tbaa !11
  %3557 = call double @llvm.fmuladd.f64(double 0x3CCE35BEEAC7EA45, double %3556, double %3548)
  %3558 = load ptr, ptr %7, align 8, !tbaa !9
  %3559 = load i32, ptr %12, align 4, !tbaa !5
  %3560 = load i32, ptr %8, align 4, !tbaa !5
  %3561 = mul nsw i32 11, %3560
  %3562 = add nsw i32 %3559, %3561
  %3563 = sext i32 %3562 to i64
  %3564 = getelementptr inbounds double, ptr %3558, i64 %3563
  %3565 = load double, ptr %3564, align 8, !tbaa !11
  %3566 = call double @llvm.fmuladd.f64(double 0xBCBC38460D0EF925, double %3565, double %3557)
  %3567 = load ptr, ptr %7, align 8, !tbaa !9
  %3568 = load i32, ptr %12, align 4, !tbaa !5
  %3569 = load i32, ptr %8, align 4, !tbaa !5
  %3570 = mul nsw i32 12, %3569
  %3571 = add nsw i32 %3568, %3570
  %3572 = sext i32 %3571 to i64
  %3573 = getelementptr inbounds double, ptr %3567, i64 %3572
  %3574 = load double, ptr %3573, align 8, !tbaa !11
  %3575 = call double @llvm.fmuladd.f64(double 0xBCB4A05EBC88835E, double %3574, double %3566)
  %3576 = load ptr, ptr %7, align 8, !tbaa !9
  %3577 = load i32, ptr %12, align 4, !tbaa !5
  %3578 = load i32, ptr %8, align 4, !tbaa !5
  %3579 = mul nsw i32 13, %3578
  %3580 = add nsw i32 %3577, %3579
  %3581 = sext i32 %3580 to i64
  %3582 = getelementptr inbounds double, ptr %3576, i64 %3581
  %3583 = load double, ptr %3582, align 8, !tbaa !11
  %3584 = call double @llvm.fmuladd.f64(double 0xBCB8D3AFF5676101, double %3583, double %3575)
  %3585 = load ptr, ptr %7, align 8, !tbaa !9
  %3586 = load i32, ptr %12, align 4, !tbaa !5
  %3587 = load i32, ptr %8, align 4, !tbaa !5
  %3588 = mul nsw i32 14, %3587
  %3589 = add nsw i32 %3586, %3588
  %3590 = sext i32 %3589 to i64
  %3591 = getelementptr inbounds double, ptr %3585, i64 %3590
  %3592 = load double, ptr %3591, align 8, !tbaa !11
  %3593 = call double @llvm.fmuladd.f64(double 0x3CBDC6E1E1019EC2, double %3592, double %3584)
  %3594 = load ptr, ptr %7, align 8, !tbaa !9
  %3595 = load i32, ptr %12, align 4, !tbaa !5
  %3596 = load i32, ptr %8, align 4, !tbaa !5
  %3597 = mul nsw i32 15, %3596
  %3598 = add nsw i32 %3595, %3597
  %3599 = sext i32 %3598 to i64
  %3600 = getelementptr inbounds double, ptr %3594, i64 %3599
  %3601 = load double, ptr %3600, align 8, !tbaa !11
  %3602 = call double @llvm.fmuladd.f64(double 0xBC82BE6C478E3228, double %3601, double %3593)
  %3603 = load ptr, ptr %7, align 8, !tbaa !9
  %3604 = load i32, ptr %12, align 4, !tbaa !5
  %3605 = load i32, ptr %8, align 4, !tbaa !5
  %3606 = mul nsw i32 16, %3605
  %3607 = add nsw i32 %3604, %3606
  %3608 = sext i32 %3607 to i64
  %3609 = getelementptr inbounds double, ptr %3603, i64 %3608
  %3610 = load double, ptr %3609, align 8, !tbaa !11
  %3611 = call double @llvm.fmuladd.f64(double 0x3C86CA03EF7109C0, double %3610, double %3602)
  %3612 = load ptr, ptr %7, align 8, !tbaa !9
  %3613 = load i32, ptr %12, align 4, !tbaa !5
  %3614 = load i32, ptr %8, align 4, !tbaa !5
  %3615 = mul nsw i32 17, %3614
  %3616 = add nsw i32 %3613, %3615
  %3617 = sext i32 %3616 to i64
  %3618 = getelementptr inbounds double, ptr %3612, i64 %3617
  %3619 = load double, ptr %3618, align 8, !tbaa !11
  %3620 = call double @llvm.fmuladd.f64(double 0x3CD3FC268C3751F5, double %3619, double %3611)
  store double %3620, ptr %11, align 8, !tbaa !11
  %3621 = load double, ptr %11, align 8, !tbaa !11
  %3622 = load ptr, ptr %9, align 8, !tbaa !9
  %3623 = load i32, ptr %12, align 4, !tbaa !5
  %3624 = load i32, ptr %10, align 4, !tbaa !5
  %3625 = mul nsw i32 20, %3624
  %3626 = add nsw i32 %3623, %3625
  %3627 = sext i32 %3626 to i64
  %3628 = getelementptr inbounds double, ptr %3622, i64 %3627
  %3629 = load double, ptr %3628, align 8, !tbaa !11
  %3630 = fadd double %3629, %3621
  store double %3630, ptr %3628, align 8, !tbaa !11
  %3631 = load ptr, ptr %7, align 8, !tbaa !9
  %3632 = load i32, ptr %12, align 4, !tbaa !5
  %3633 = load i32, ptr %8, align 4, !tbaa !5
  %3634 = mul nsw i32 0, %3633
  %3635 = add nsw i32 %3632, %3634
  %3636 = sext i32 %3635 to i64
  %3637 = getelementptr inbounds double, ptr %3631, i64 %3636
  %3638 = load double, ptr %3637, align 8, !tbaa !11
  %3639 = load ptr, ptr %7, align 8, !tbaa !9
  %3640 = load i32, ptr %12, align 4, !tbaa !5
  %3641 = load i32, ptr %8, align 4, !tbaa !5
  %3642 = mul nsw i32 1, %3641
  %3643 = add nsw i32 %3640, %3642
  %3644 = sext i32 %3643 to i64
  %3645 = getelementptr inbounds double, ptr %3639, i64 %3644
  %3646 = load double, ptr %3645, align 8, !tbaa !11
  %3647 = fmul double 0x3FF3237A82AF9ED0, %3646
  %3648 = call double @llvm.fmuladd.f64(double 0xBFB17C71DD2D5170, double %3638, double %3647)
  %3649 = load ptr, ptr %7, align 8, !tbaa !9
  %3650 = load i32, ptr %12, align 4, !tbaa !5
  %3651 = load i32, ptr %8, align 4, !tbaa !5
  %3652 = mul nsw i32 2, %3651
  %3653 = add nsw i32 %3650, %3652
  %3654 = sext i32 %3653 to i64
  %3655 = getelementptr inbounds double, ptr %3649, i64 %3654
  %3656 = load double, ptr %3655, align 8, !tbaa !11
  %3657 = call double @llvm.fmuladd.f64(double 0xBF76E8A1969E6C80, double %3656, double %3648)
  %3658 = load ptr, ptr %7, align 8, !tbaa !9
  %3659 = load i32, ptr %12, align 4, !tbaa !5
  %3660 = load i32, ptr %8, align 4, !tbaa !5
  %3661 = mul nsw i32 3, %3660
  %3662 = add nsw i32 %3659, %3661
  %3663 = sext i32 %3662 to i64
  %3664 = getelementptr inbounds double, ptr %3658, i64 %3663
  %3665 = load double, ptr %3664, align 8, !tbaa !11
  %3666 = call double @llvm.fmuladd.f64(double 0x3FFBC4AD9C53A55A, double %3665, double %3657)
  %3667 = load ptr, ptr %7, align 8, !tbaa !9
  %3668 = load i32, ptr %12, align 4, !tbaa !5
  %3669 = load i32, ptr %8, align 4, !tbaa !5
  %3670 = mul nsw i32 4, %3669
  %3671 = add nsw i32 %3668, %3670
  %3672 = sext i32 %3671 to i64
  %3673 = getelementptr inbounds double, ptr %3667, i64 %3672
  %3674 = load double, ptr %3673, align 8, !tbaa !11
  %3675 = call double @llvm.fmuladd.f64(double 0x3FC179BD32D3DC59, double %3674, double %3666)
  %3676 = load ptr, ptr %7, align 8, !tbaa !9
  %3677 = load i32, ptr %12, align 4, !tbaa !5
  %3678 = load i32, ptr %8, align 4, !tbaa !5
  %3679 = mul nsw i32 5, %3678
  %3680 = add nsw i32 %3677, %3679
  %3681 = sext i32 %3680 to i64
  %3682 = getelementptr inbounds double, ptr %3676, i64 %3681
  %3683 = load double, ptr %3682, align 8, !tbaa !11
  %3684 = call double @llvm.fmuladd.f64(double 0x3FF1CA3B98F4942B, double %3683, double %3675)
  %3685 = load ptr, ptr %7, align 8, !tbaa !9
  %3686 = load i32, ptr %12, align 4, !tbaa !5
  %3687 = load i32, ptr %8, align 4, !tbaa !5
  %3688 = mul nsw i32 6, %3687
  %3689 = add nsw i32 %3686, %3688
  %3690 = sext i32 %3689 to i64
  %3691 = getelementptr inbounds double, ptr %3685, i64 %3690
  %3692 = load double, ptr %3691, align 8, !tbaa !11
  %3693 = call double @llvm.fmuladd.f64(double 0xBC9E515AA144063C, double %3692, double %3684)
  %3694 = load ptr, ptr %7, align 8, !tbaa !9
  %3695 = load i32, ptr %12, align 4, !tbaa !5
  %3696 = load i32, ptr %8, align 4, !tbaa !5
  %3697 = mul nsw i32 7, %3696
  %3698 = add nsw i32 %3695, %3697
  %3699 = sext i32 %3698 to i64
  %3700 = getelementptr inbounds double, ptr %3694, i64 %3699
  %3701 = load double, ptr %3700, align 8, !tbaa !11
  %3702 = call double @llvm.fmuladd.f64(double 0x3C8A4389306A2E0D, double %3701, double %3693)
  %3703 = load ptr, ptr %7, align 8, !tbaa !9
  %3704 = load i32, ptr %12, align 4, !tbaa !5
  %3705 = load i32, ptr %8, align 4, !tbaa !5
  %3706 = mul nsw i32 8, %3705
  %3707 = add nsw i32 %3704, %3706
  %3708 = sext i32 %3707 to i64
  %3709 = getelementptr inbounds double, ptr %3703, i64 %3708
  %3710 = load double, ptr %3709, align 8, !tbaa !11
  %3711 = call double @llvm.fmuladd.f64(double 0xBC9F8C0C369EC038, double %3710, double %3702)
  %3712 = load ptr, ptr %7, align 8, !tbaa !9
  %3713 = load i32, ptr %12, align 4, !tbaa !5
  %3714 = load i32, ptr %8, align 4, !tbaa !5
  %3715 = mul nsw i32 9, %3714
  %3716 = add nsw i32 %3713, %3715
  %3717 = sext i32 %3716 to i64
  %3718 = getelementptr inbounds double, ptr %3712, i64 %3717
  %3719 = load double, ptr %3718, align 8, !tbaa !11
  %3720 = call double @llvm.fmuladd.f64(double 0x3CA068AD707D034A, double %3719, double %3711)
  %3721 = load ptr, ptr %7, align 8, !tbaa !9
  %3722 = load i32, ptr %12, align 4, !tbaa !5
  %3723 = load i32, ptr %8, align 4, !tbaa !5
  %3724 = mul nsw i32 10, %3723
  %3725 = add nsw i32 %3722, %3724
  %3726 = sext i32 %3725 to i64
  %3727 = getelementptr inbounds double, ptr %3721, i64 %3726
  %3728 = load double, ptr %3727, align 8, !tbaa !11
  %3729 = call double @llvm.fmuladd.f64(double 0xBC9CD786A1AD8F1F, double %3728, double %3720)
  %3730 = load ptr, ptr %7, align 8, !tbaa !9
  %3731 = load i32, ptr %12, align 4, !tbaa !5
  %3732 = load i32, ptr %8, align 4, !tbaa !5
  %3733 = mul nsw i32 11, %3732
  %3734 = add nsw i32 %3731, %3733
  %3735 = sext i32 %3734 to i64
  %3736 = getelementptr inbounds double, ptr %3730, i64 %3735
  %3737 = load double, ptr %3736, align 8, !tbaa !11
  %3738 = call double @llvm.fmuladd.f64(double 0xBC7C542BFA7534C1, double %3737, double %3729)
  %3739 = load ptr, ptr %7, align 8, !tbaa !9
  %3740 = load i32, ptr %12, align 4, !tbaa !5
  %3741 = load i32, ptr %8, align 4, !tbaa !5
  %3742 = mul nsw i32 12, %3741
  %3743 = add nsw i32 %3740, %3742
  %3744 = sext i32 %3743 to i64
  %3745 = getelementptr inbounds double, ptr %3739, i64 %3744
  %3746 = load double, ptr %3745, align 8, !tbaa !11
  %3747 = call double @llvm.fmuladd.f64(double 0xBCA291E4DC85F746, double %3746, double %3738)
  %3748 = load ptr, ptr %7, align 8, !tbaa !9
  %3749 = load i32, ptr %12, align 4, !tbaa !5
  %3750 = load i32, ptr %8, align 4, !tbaa !5
  %3751 = mul nsw i32 13, %3750
  %3752 = add nsw i32 %3749, %3751
  %3753 = sext i32 %3752 to i64
  %3754 = getelementptr inbounds double, ptr %3748, i64 %3753
  %3755 = load double, ptr %3754, align 8, !tbaa !11
  %3756 = call double @llvm.fmuladd.f64(double 0xBC318568500D29B4, double %3755, double %3747)
  %3757 = load ptr, ptr %7, align 8, !tbaa !9
  %3758 = load i32, ptr %12, align 4, !tbaa !5
  %3759 = load i32, ptr %8, align 4, !tbaa !5
  %3760 = mul nsw i32 14, %3759
  %3761 = add nsw i32 %3758, %3760
  %3762 = sext i32 %3761 to i64
  %3763 = getelementptr inbounds double, ptr %3757, i64 %3762
  %3764 = load double, ptr %3763, align 8, !tbaa !11
  %3765 = call double @llvm.fmuladd.f64(double 0x3CB8B7EF57E025B8, double %3764, double %3756)
  %3766 = load ptr, ptr %7, align 8, !tbaa !9
  %3767 = load i32, ptr %12, align 4, !tbaa !5
  %3768 = load i32, ptr %8, align 4, !tbaa !5
  %3769 = mul nsw i32 15, %3768
  %3770 = add nsw i32 %3767, %3769
  %3771 = sext i32 %3770 to i64
  %3772 = getelementptr inbounds double, ptr %3766, i64 %3771
  %3773 = load double, ptr %3772, align 8, !tbaa !11
  %3774 = call double @llvm.fmuladd.f64(double 0x3CC368C8E05648F6, double %3773, double %3765)
  %3775 = load ptr, ptr %7, align 8, !tbaa !9
  %3776 = load i32, ptr %12, align 4, !tbaa !5
  %3777 = load i32, ptr %8, align 4, !tbaa !5
  %3778 = mul nsw i32 16, %3777
  %3779 = add nsw i32 %3776, %3778
  %3780 = sext i32 %3779 to i64
  %3781 = getelementptr inbounds double, ptr %3775, i64 %3780
  %3782 = load double, ptr %3781, align 8, !tbaa !11
  %3783 = call double @llvm.fmuladd.f64(double 0x3C93BF528ACED502, double %3782, double %3774)
  %3784 = load ptr, ptr %7, align 8, !tbaa !9
  %3785 = load i32, ptr %12, align 4, !tbaa !5
  %3786 = load i32, ptr %8, align 4, !tbaa !5
  %3787 = mul nsw i32 17, %3786
  %3788 = add nsw i32 %3785, %3787
  %3789 = sext i32 %3788 to i64
  %3790 = getelementptr inbounds double, ptr %3784, i64 %3789
  %3791 = load double, ptr %3790, align 8, !tbaa !11
  %3792 = call double @llvm.fmuladd.f64(double 0x3C99794FD5FFFA78, double %3791, double %3783)
  store double %3792, ptr %11, align 8, !tbaa !11
  %3793 = load double, ptr %11, align 8, !tbaa !11
  %3794 = load ptr, ptr %9, align 8, !tbaa !9
  %3795 = load i32, ptr %12, align 4, !tbaa !5
  %3796 = load i32, ptr %10, align 4, !tbaa !5
  %3797 = mul nsw i32 21, %3796
  %3798 = add nsw i32 %3795, %3797
  %3799 = sext i32 %3798 to i64
  %3800 = getelementptr inbounds double, ptr %3794, i64 %3799
  %3801 = load double, ptr %3800, align 8, !tbaa !11
  %3802 = fadd double %3801, %3793
  store double %3802, ptr %3800, align 8, !tbaa !11
  %3803 = load ptr, ptr %7, align 8, !tbaa !9
  %3804 = load i32, ptr %12, align 4, !tbaa !5
  %3805 = load i32, ptr %8, align 4, !tbaa !5
  %3806 = mul nsw i32 0, %3805
  %3807 = add nsw i32 %3804, %3806
  %3808 = sext i32 %3807 to i64
  %3809 = getelementptr inbounds double, ptr %3803, i64 %3808
  %3810 = load double, ptr %3809, align 8, !tbaa !11
  %3811 = load ptr, ptr %7, align 8, !tbaa !9
  %3812 = load i32, ptr %12, align 4, !tbaa !5
  %3813 = load i32, ptr %8, align 4, !tbaa !5
  %3814 = mul nsw i32 1, %3813
  %3815 = add nsw i32 %3812, %3814
  %3816 = sext i32 %3815 to i64
  %3817 = getelementptr inbounds double, ptr %3811, i64 %3816
  %3818 = load double, ptr %3817, align 8, !tbaa !11
  %3819 = fmul double 0xBF734721512AF544, %3818
  %3820 = call double @llvm.fmuladd.f64(double 0x3FF21EFA862DF3D5, double %3810, double %3819)
  %3821 = load ptr, ptr %7, align 8, !tbaa !9
  %3822 = load i32, ptr %12, align 4, !tbaa !5
  %3823 = load i32, ptr %8, align 4, !tbaa !5
  %3824 = mul nsw i32 2, %3823
  %3825 = add nsw i32 %3822, %3824
  %3826 = sext i32 %3825 to i64
  %3827 = getelementptr inbounds double, ptr %3821, i64 %3826
  %3828 = load double, ptr %3827, align 8, !tbaa !11
  %3829 = call double @llvm.fmuladd.f64(double 0xBFF7F19EB1BA88FC, double %3828, double %3820)
  %3830 = load ptr, ptr %7, align 8, !tbaa !9
  %3831 = load i32, ptr %12, align 4, !tbaa !5
  %3832 = load i32, ptr %8, align 4, !tbaa !5
  %3833 = mul nsw i32 3, %3832
  %3834 = add nsw i32 %3831, %3833
  %3835 = sext i32 %3834 to i64
  %3836 = getelementptr inbounds double, ptr %3830, i64 %3835
  %3837 = load double, ptr %3836, align 8, !tbaa !11
  %3838 = call double @llvm.fmuladd.f64(double 0xBFF48831FA6C7040, double %3837, double %3829)
  %3839 = load ptr, ptr %7, align 8, !tbaa !9
  %3840 = load i32, ptr %12, align 4, !tbaa !5
  %3841 = load i32, ptr %8, align 4, !tbaa !5
  %3842 = mul nsw i32 4, %3841
  %3843 = add nsw i32 %3840, %3842
  %3844 = sext i32 %3843 to i64
  %3845 = getelementptr inbounds double, ptr %3839, i64 %3844
  %3846 = load double, ptr %3845, align 8, !tbaa !11
  %3847 = call double @llvm.fmuladd.f64(double 0x3FC901A35D55DB9B, double %3846, double %3838)
  %3848 = load ptr, ptr %7, align 8, !tbaa !9
  %3849 = load i32, ptr %12, align 4, !tbaa !5
  %3850 = load i32, ptr %8, align 4, !tbaa !5
  %3851 = mul nsw i32 5, %3850
  %3852 = add nsw i32 %3849, %3851
  %3853 = sext i32 %3852 to i64
  %3854 = getelementptr inbounds double, ptr %3848, i64 %3853
  %3855 = load double, ptr %3854, align 8, !tbaa !11
  %3856 = call double @llvm.fmuladd.f64(double 0x3FF0AF85DD8BD416, double %3855, double %3847)
  %3857 = load ptr, ptr %7, align 8, !tbaa !9
  %3858 = load i32, ptr %12, align 4, !tbaa !5
  %3859 = load i32, ptr %8, align 4, !tbaa !5
  %3860 = mul nsw i32 6, %3859
  %3861 = add nsw i32 %3858, %3860
  %3862 = sext i32 %3861 to i64
  %3863 = getelementptr inbounds double, ptr %3857, i64 %3862
  %3864 = load double, ptr %3863, align 8, !tbaa !11
  %3865 = call double @llvm.fmuladd.f64(double 0x3C8212A222BDF02D, double %3864, double %3856)
  %3866 = load ptr, ptr %7, align 8, !tbaa !9
  %3867 = load i32, ptr %12, align 4, !tbaa !5
  %3868 = load i32, ptr %8, align 4, !tbaa !5
  %3869 = mul nsw i32 7, %3868
  %3870 = add nsw i32 %3867, %3869
  %3871 = sext i32 %3870 to i64
  %3872 = getelementptr inbounds double, ptr %3866, i64 %3871
  %3873 = load double, ptr %3872, align 8, !tbaa !11
  %3874 = call double @llvm.fmuladd.f64(double 0x3C9C3612467E6F25, double %3873, double %3865)
  %3875 = load ptr, ptr %7, align 8, !tbaa !9
  %3876 = load i32, ptr %12, align 4, !tbaa !5
  %3877 = load i32, ptr %8, align 4, !tbaa !5
  %3878 = mul nsw i32 8, %3877
  %3879 = add nsw i32 %3876, %3878
  %3880 = sext i32 %3879 to i64
  %3881 = getelementptr inbounds double, ptr %3875, i64 %3880
  %3882 = load double, ptr %3881, align 8, !tbaa !11
  %3883 = call double @llvm.fmuladd.f64(double 0x3C60D44D9CE30D34, double %3882, double %3874)
  %3884 = load ptr, ptr %7, align 8, !tbaa !9
  %3885 = load i32, ptr %12, align 4, !tbaa !5
  %3886 = load i32, ptr %8, align 4, !tbaa !5
  %3887 = mul nsw i32 9, %3886
  %3888 = add nsw i32 %3885, %3887
  %3889 = sext i32 %3888 to i64
  %3890 = getelementptr inbounds double, ptr %3884, i64 %3889
  %3891 = load double, ptr %3890, align 8, !tbaa !11
  %3892 = call double @llvm.fmuladd.f64(double 0x3CB4286CB40F2925, double %3891, double %3883)
  %3893 = load ptr, ptr %7, align 8, !tbaa !9
  %3894 = load i32, ptr %12, align 4, !tbaa !5
  %3895 = load i32, ptr %8, align 4, !tbaa !5
  %3896 = mul nsw i32 10, %3895
  %3897 = add nsw i32 %3894, %3896
  %3898 = sext i32 %3897 to i64
  %3899 = getelementptr inbounds double, ptr %3893, i64 %3898
  %3900 = load double, ptr %3899, align 8, !tbaa !11
  %3901 = call double @llvm.fmuladd.f64(double 0xBCA8159E3B5248DD, double %3900, double %3892)
  %3902 = load ptr, ptr %7, align 8, !tbaa !9
  %3903 = load i32, ptr %12, align 4, !tbaa !5
  %3904 = load i32, ptr %8, align 4, !tbaa !5
  %3905 = mul nsw i32 11, %3904
  %3906 = add nsw i32 %3903, %3905
  %3907 = sext i32 %3906 to i64
  %3908 = getelementptr inbounds double, ptr %3902, i64 %3907
  %3909 = load double, ptr %3908, align 8, !tbaa !11
  %3910 = call double @llvm.fmuladd.f64(double 0xBC8CCF58EB146D34, double %3909, double %3901)
  %3911 = load ptr, ptr %7, align 8, !tbaa !9
  %3912 = load i32, ptr %12, align 4, !tbaa !5
  %3913 = load i32, ptr %8, align 4, !tbaa !5
  %3914 = mul nsw i32 12, %3913
  %3915 = add nsw i32 %3912, %3914
  %3916 = sext i32 %3915 to i64
  %3917 = getelementptr inbounds double, ptr %3911, i64 %3916
  %3918 = load double, ptr %3917, align 8, !tbaa !11
  %3919 = call double @llvm.fmuladd.f64(double 0x3C8CDC3A40C0C286, double %3918, double %3910)
  %3920 = load ptr, ptr %7, align 8, !tbaa !9
  %3921 = load i32, ptr %12, align 4, !tbaa !5
  %3922 = load i32, ptr %8, align 4, !tbaa !5
  %3923 = mul nsw i32 13, %3922
  %3924 = add nsw i32 %3921, %3923
  %3925 = sext i32 %3924 to i64
  %3926 = getelementptr inbounds double, ptr %3920, i64 %3925
  %3927 = load double, ptr %3926, align 8, !tbaa !11
  %3928 = call double @llvm.fmuladd.f64(double 0x3C9145618281F15F, double %3927, double %3919)
  %3929 = load ptr, ptr %7, align 8, !tbaa !9
  %3930 = load i32, ptr %12, align 4, !tbaa !5
  %3931 = load i32, ptr %8, align 4, !tbaa !5
  %3932 = mul nsw i32 14, %3931
  %3933 = add nsw i32 %3930, %3932
  %3934 = sext i32 %3933 to i64
  %3935 = getelementptr inbounds double, ptr %3929, i64 %3934
  %3936 = load double, ptr %3935, align 8, !tbaa !11
  %3937 = call double @llvm.fmuladd.f64(double 0x3C9DA0ED86977DDB, double %3936, double %3928)
  %3938 = load ptr, ptr %7, align 8, !tbaa !9
  %3939 = load i32, ptr %12, align 4, !tbaa !5
  %3940 = load i32, ptr %8, align 4, !tbaa !5
  %3941 = mul nsw i32 15, %3940
  %3942 = add nsw i32 %3939, %3941
  %3943 = sext i32 %3942 to i64
  %3944 = getelementptr inbounds double, ptr %3938, i64 %3943
  %3945 = load double, ptr %3944, align 8, !tbaa !11
  %3946 = call double @llvm.fmuladd.f64(double 0xBCB96CB68C8806CB, double %3945, double %3937)
  %3947 = load ptr, ptr %7, align 8, !tbaa !9
  %3948 = load i32, ptr %12, align 4, !tbaa !5
  %3949 = load i32, ptr %8, align 4, !tbaa !5
  %3950 = mul nsw i32 16, %3949
  %3951 = add nsw i32 %3948, %3950
  %3952 = sext i32 %3951 to i64
  %3953 = getelementptr inbounds double, ptr %3947, i64 %3952
  %3954 = load double, ptr %3953, align 8, !tbaa !11
  %3955 = call double @llvm.fmuladd.f64(double 0xBCA627EA67753954, double %3954, double %3946)
  %3956 = load ptr, ptr %7, align 8, !tbaa !9
  %3957 = load i32, ptr %12, align 4, !tbaa !5
  %3958 = load i32, ptr %8, align 4, !tbaa !5
  %3959 = mul nsw i32 17, %3958
  %3960 = add nsw i32 %3957, %3959
  %3961 = sext i32 %3960 to i64
  %3962 = getelementptr inbounds double, ptr %3956, i64 %3961
  %3963 = load double, ptr %3962, align 8, !tbaa !11
  %3964 = call double @llvm.fmuladd.f64(double 0xBCB38E4A7495701A, double %3963, double %3955)
  store double %3964, ptr %11, align 8, !tbaa !11
  %3965 = load double, ptr %11, align 8, !tbaa !11
  %3966 = load ptr, ptr %9, align 8, !tbaa !9
  %3967 = load i32, ptr %12, align 4, !tbaa !5
  %3968 = load i32, ptr %10, align 4, !tbaa !5
  %3969 = mul nsw i32 22, %3968
  %3970 = add nsw i32 %3967, %3969
  %3971 = sext i32 %3970 to i64
  %3972 = getelementptr inbounds double, ptr %3966, i64 %3971
  %3973 = load double, ptr %3972, align 8, !tbaa !11
  %3974 = fadd double %3973, %3965
  store double %3974, ptr %3972, align 8, !tbaa !11
  %3975 = load ptr, ptr %7, align 8, !tbaa !9
  %3976 = load i32, ptr %12, align 4, !tbaa !5
  %3977 = load i32, ptr %8, align 4, !tbaa !5
  %3978 = mul nsw i32 0, %3977
  %3979 = add nsw i32 %3976, %3978
  %3980 = sext i32 %3979 to i64
  %3981 = getelementptr inbounds double, ptr %3975, i64 %3980
  %3982 = load double, ptr %3981, align 8, !tbaa !11
  %3983 = load ptr, ptr %7, align 8, !tbaa !9
  %3984 = load i32, ptr %12, align 4, !tbaa !5
  %3985 = load i32, ptr %8, align 4, !tbaa !5
  %3986 = mul nsw i32 1, %3985
  %3987 = add nsw i32 %3984, %3986
  %3988 = sext i32 %3987 to i64
  %3989 = getelementptr inbounds double, ptr %3983, i64 %3988
  %3990 = load double, ptr %3989, align 8, !tbaa !11
  %3991 = fmul double 0xBFF5B6F7089FF1D6, %3990
  %3992 = call double @llvm.fmuladd.f64(double 0x3FB1F3F0B024DC78, double %3982, double %3991)
  %3993 = load ptr, ptr %7, align 8, !tbaa !9
  %3994 = load i32, ptr %12, align 4, !tbaa !5
  %3995 = load i32, ptr %8, align 4, !tbaa !5
  %3996 = mul nsw i32 2, %3995
  %3997 = add nsw i32 %3994, %3996
  %3998 = sext i32 %3997 to i64
  %3999 = getelementptr inbounds double, ptr %3993, i64 %3998
  %4000 = load double, ptr %3999, align 8, !tbaa !11
  %4001 = call double @llvm.fmuladd.f64(double 0x3FCCBE3CAE6B6264, double %4000, double %3992)
  %4002 = load ptr, ptr %7, align 8, !tbaa !9
  %4003 = load i32, ptr %12, align 4, !tbaa !5
  %4004 = load i32, ptr %8, align 4, !tbaa !5
  %4005 = mul nsw i32 3, %4004
  %4006 = add nsw i32 %4003, %4005
  %4007 = sext i32 %4006 to i64
  %4008 = getelementptr inbounds double, ptr %4002, i64 %4007
  %4009 = load double, ptr %4008, align 8, !tbaa !11
  %4010 = call double @llvm.fmuladd.f64(double 0xBFFBA497A89943F8, double %4009, double %4001)
  %4011 = load ptr, ptr %7, align 8, !tbaa !9
  %4012 = load i32, ptr %12, align 4, !tbaa !5
  %4013 = load i32, ptr %8, align 4, !tbaa !5
  %4014 = mul nsw i32 4, %4013
  %4015 = add nsw i32 %4012, %4014
  %4016 = sext i32 %4015 to i64
  %4017 = getelementptr inbounds double, ptr %4011, i64 %4016
  %4018 = load double, ptr %4017, align 8, !tbaa !11
  %4019 = call double @llvm.fmuladd.f64(double 0xBFD81F8F0CEC6104, double %4018, double %4010)
  %4020 = load ptr, ptr %7, align 8, !tbaa !9
  %4021 = load i32, ptr %12, align 4, !tbaa !5
  %4022 = load i32, ptr %8, align 4, !tbaa !5
  %4023 = mul nsw i32 5, %4022
  %4024 = add nsw i32 %4021, %4023
  %4025 = sext i32 %4024 to i64
  %4026 = getelementptr inbounds double, ptr %4020, i64 %4025
  %4027 = load double, ptr %4026, align 8, !tbaa !11
  %4028 = call double @llvm.fmuladd.f64(double 0xBFDC5366E211BE88, double %4027, double %4019)
  %4029 = load ptr, ptr %7, align 8, !tbaa !9
  %4030 = load i32, ptr %12, align 4, !tbaa !5
  %4031 = load i32, ptr %8, align 4, !tbaa !5
  %4032 = mul nsw i32 6, %4031
  %4033 = add nsw i32 %4030, %4032
  %4034 = sext i32 %4033 to i64
  %4035 = getelementptr inbounds double, ptr %4029, i64 %4034
  %4036 = load double, ptr %4035, align 8, !tbaa !11
  %4037 = call double @llvm.fmuladd.f64(double 0x3C3B48F2BDFBC8FE, double %4036, double %4028)
  %4038 = load ptr, ptr %7, align 8, !tbaa !9
  %4039 = load i32, ptr %12, align 4, !tbaa !5
  %4040 = load i32, ptr %8, align 4, !tbaa !5
  %4041 = mul nsw i32 7, %4040
  %4042 = add nsw i32 %4039, %4041
  %4043 = sext i32 %4042 to i64
  %4044 = getelementptr inbounds double, ptr %4038, i64 %4043
  %4045 = load double, ptr %4044, align 8, !tbaa !11
  %4046 = call double @llvm.fmuladd.f64(double 0xBCABF8CFD447EB3A, double %4045, double %4037)
  %4047 = load ptr, ptr %7, align 8, !tbaa !9
  %4048 = load i32, ptr %12, align 4, !tbaa !5
  %4049 = load i32, ptr %8, align 4, !tbaa !5
  %4050 = mul nsw i32 8, %4049
  %4051 = add nsw i32 %4048, %4050
  %4052 = sext i32 %4051 to i64
  %4053 = getelementptr inbounds double, ptr %4047, i64 %4052
  %4054 = load double, ptr %4053, align 8, !tbaa !11
  %4055 = call double @llvm.fmuladd.f64(double 0x3CAAFAB790AFF8A1, double %4054, double %4046)
  %4056 = load ptr, ptr %7, align 8, !tbaa !9
  %4057 = load i32, ptr %12, align 4, !tbaa !5
  %4058 = load i32, ptr %8, align 4, !tbaa !5
  %4059 = mul nsw i32 9, %4058
  %4060 = add nsw i32 %4057, %4059
  %4061 = sext i32 %4060 to i64
  %4062 = getelementptr inbounds double, ptr %4056, i64 %4061
  %4063 = load double, ptr %4062, align 8, !tbaa !11
  %4064 = call double @llvm.fmuladd.f64(double 0x3C95C63DC7475F76, double %4063, double %4055)
  %4065 = load ptr, ptr %7, align 8, !tbaa !9
  %4066 = load i32, ptr %12, align 4, !tbaa !5
  %4067 = load i32, ptr %8, align 4, !tbaa !5
  %4068 = mul nsw i32 10, %4067
  %4069 = add nsw i32 %4066, %4068
  %4070 = sext i32 %4069 to i64
  %4071 = getelementptr inbounds double, ptr %4065, i64 %4070
  %4072 = load double, ptr %4071, align 8, !tbaa !11
  %4073 = call double @llvm.fmuladd.f64(double 0x3CB246F6B715BA99, double %4072, double %4064)
  %4074 = load ptr, ptr %7, align 8, !tbaa !9
  %4075 = load i32, ptr %12, align 4, !tbaa !5
  %4076 = load i32, ptr %8, align 4, !tbaa !5
  %4077 = mul nsw i32 11, %4076
  %4078 = add nsw i32 %4075, %4077
  %4079 = sext i32 %4078 to i64
  %4080 = getelementptr inbounds double, ptr %4074, i64 %4079
  %4081 = load double, ptr %4080, align 8, !tbaa !11
  %4082 = call double @llvm.fmuladd.f64(double 0xBCAFEB692A4A65D9, double %4081, double %4073)
  %4083 = load ptr, ptr %7, align 8, !tbaa !9
  %4084 = load i32, ptr %12, align 4, !tbaa !5
  %4085 = load i32, ptr %8, align 4, !tbaa !5
  %4086 = mul nsw i32 12, %4085
  %4087 = add nsw i32 %4084, %4086
  %4088 = sext i32 %4087 to i64
  %4089 = getelementptr inbounds double, ptr %4083, i64 %4088
  %4090 = load double, ptr %4089, align 8, !tbaa !11
  %4091 = call double @llvm.fmuladd.f64(double 0xBCB0527DE73323C6, double %4090, double %4082)
  %4092 = load ptr, ptr %7, align 8, !tbaa !9
  %4093 = load i32, ptr %12, align 4, !tbaa !5
  %4094 = load i32, ptr %8, align 4, !tbaa !5
  %4095 = mul nsw i32 13, %4094
  %4096 = add nsw i32 %4093, %4095
  %4097 = sext i32 %4096 to i64
  %4098 = getelementptr inbounds double, ptr %4092, i64 %4097
  %4099 = load double, ptr %4098, align 8, !tbaa !11
  %4100 = call double @llvm.fmuladd.f64(double 0xBC851E1EB70E35B8, double %4099, double %4091)
  %4101 = load ptr, ptr %7, align 8, !tbaa !9
  %4102 = load i32, ptr %12, align 4, !tbaa !5
  %4103 = load i32, ptr %8, align 4, !tbaa !5
  %4104 = mul nsw i32 14, %4103
  %4105 = add nsw i32 %4102, %4104
  %4106 = sext i32 %4105 to i64
  %4107 = getelementptr inbounds double, ptr %4101, i64 %4106
  %4108 = load double, ptr %4107, align 8, !tbaa !11
  %4109 = call double @llvm.fmuladd.f64(double 0xBCB91F7B4DA061B9, double %4108, double %4100)
  %4110 = load ptr, ptr %7, align 8, !tbaa !9
  %4111 = load i32, ptr %12, align 4, !tbaa !5
  %4112 = load i32, ptr %8, align 4, !tbaa !5
  %4113 = mul nsw i32 15, %4112
  %4114 = add nsw i32 %4111, %4113
  %4115 = sext i32 %4114 to i64
  %4116 = getelementptr inbounds double, ptr %4110, i64 %4115
  %4117 = load double, ptr %4116, align 8, !tbaa !11
  %4118 = call double @llvm.fmuladd.f64(double 0xBCA20AB4BF61ADD9, double %4117, double %4109)
  %4119 = load ptr, ptr %7, align 8, !tbaa !9
  %4120 = load i32, ptr %12, align 4, !tbaa !5
  %4121 = load i32, ptr %8, align 4, !tbaa !5
  %4122 = mul nsw i32 16, %4121
  %4123 = add nsw i32 %4120, %4122
  %4124 = sext i32 %4123 to i64
  %4125 = getelementptr inbounds double, ptr %4119, i64 %4124
  %4126 = load double, ptr %4125, align 8, !tbaa !11
  %4127 = call double @llvm.fmuladd.f64(double 0xBC92F85550CD85E6, double %4126, double %4118)
  %4128 = load ptr, ptr %7, align 8, !tbaa !9
  %4129 = load i32, ptr %12, align 4, !tbaa !5
  %4130 = load i32, ptr %8, align 4, !tbaa !5
  %4131 = mul nsw i32 17, %4130
  %4132 = add nsw i32 %4129, %4131
  %4133 = sext i32 %4132 to i64
  %4134 = getelementptr inbounds double, ptr %4128, i64 %4133
  %4135 = load double, ptr %4134, align 8, !tbaa !11
  %4136 = call double @llvm.fmuladd.f64(double 0xBCB0508DC7392C6F, double %4135, double %4127)
  store double %4136, ptr %11, align 8, !tbaa !11
  %4137 = load double, ptr %11, align 8, !tbaa !11
  %4138 = load ptr, ptr %9, align 8, !tbaa !9
  %4139 = load i32, ptr %12, align 4, !tbaa !5
  %4140 = load i32, ptr %10, align 4, !tbaa !5
  %4141 = mul nsw i32 23, %4140
  %4142 = add nsw i32 %4139, %4141
  %4143 = sext i32 %4142 to i64
  %4144 = getelementptr inbounds double, ptr %4138, i64 %4143
  %4145 = load double, ptr %4144, align 8, !tbaa !11
  %4146 = fadd double %4145, %4137
  store double %4146, ptr %4144, align 8, !tbaa !11
  %4147 = load ptr, ptr %7, align 8, !tbaa !9
  %4148 = load i32, ptr %12, align 4, !tbaa !5
  %4149 = load i32, ptr %8, align 4, !tbaa !5
  %4150 = mul nsw i32 0, %4149
  %4151 = add nsw i32 %4148, %4150
  %4152 = sext i32 %4151 to i64
  %4153 = getelementptr inbounds double, ptr %4147, i64 %4152
  %4154 = load double, ptr %4153, align 8, !tbaa !11
  %4155 = load ptr, ptr %7, align 8, !tbaa !9
  %4156 = load i32, ptr %12, align 4, !tbaa !5
  %4157 = load i32, ptr %8, align 4, !tbaa !5
  %4158 = mul nsw i32 1, %4157
  %4159 = add nsw i32 %4156, %4158
  %4160 = sext i32 %4159 to i64
  %4161 = getelementptr inbounds double, ptr %4155, i64 %4160
  %4162 = load double, ptr %4161, align 8, !tbaa !11
  %4163 = fmul double 0xBCB1B63B8880A915, %4162
  %4164 = call double @llvm.fmuladd.f64(double 0x3CC6C71214C31C21, double %4154, double %4163)
  %4165 = load ptr, ptr %7, align 8, !tbaa !9
  %4166 = load i32, ptr %12, align 4, !tbaa !5
  %4167 = load i32, ptr %8, align 4, !tbaa !5
  %4168 = mul nsw i32 2, %4167
  %4169 = add nsw i32 %4166, %4168
  %4170 = sext i32 %4169 to i64
  %4171 = getelementptr inbounds double, ptr %4165, i64 %4170
  %4172 = load double, ptr %4171, align 8, !tbaa !11
  %4173 = call double @llvm.fmuladd.f64(double 0xBCB4FEFC467C74C1, double %4172, double %4164)
  %4174 = load ptr, ptr %7, align 8, !tbaa !9
  %4175 = load i32, ptr %12, align 4, !tbaa !5
  %4176 = load i32, ptr %8, align 4, !tbaa !5
  %4177 = mul nsw i32 3, %4176
  %4178 = add nsw i32 %4175, %4177
  %4179 = sext i32 %4178 to i64
  %4180 = getelementptr inbounds double, ptr %4174, i64 %4179
  %4181 = load double, ptr %4180, align 8, !tbaa !11
  %4182 = call double @llvm.fmuladd.f64(double 0x3CA5EC7F118106ED, double %4181, double %4173)
  %4183 = load ptr, ptr %7, align 8, !tbaa !9
  %4184 = load i32, ptr %12, align 4, !tbaa !5
  %4185 = load i32, ptr %8, align 4, !tbaa !5
  %4186 = mul nsw i32 4, %4185
  %4187 = add nsw i32 %4184, %4186
  %4188 = sext i32 %4187 to i64
  %4189 = getelementptr inbounds double, ptr %4183, i64 %4188
  %4190 = load double, ptr %4189, align 8, !tbaa !11
  %4191 = call double @llvm.fmuladd.f64(double 0x3C97A76C7821BE84, double %4190, double %4182)
  %4192 = load ptr, ptr %7, align 8, !tbaa !9
  %4193 = load i32, ptr %12, align 4, !tbaa !5
  %4194 = load i32, ptr %8, align 4, !tbaa !5
  %4195 = mul nsw i32 5, %4194
  %4196 = add nsw i32 %4193, %4195
  %4197 = sext i32 %4196 to i64
  %4198 = getelementptr inbounds double, ptr %4192, i64 %4197
  %4199 = load double, ptr %4198, align 8, !tbaa !11
  %4200 = call double @llvm.fmuladd.f64(double 0x3CAB7AA05D79C461, double %4199, double %4191)
  %4201 = load ptr, ptr %7, align 8, !tbaa !9
  %4202 = load i32, ptr %12, align 4, !tbaa !5
  %4203 = load i32, ptr %8, align 4, !tbaa !5
  %4204 = mul nsw i32 6, %4203
  %4205 = add nsw i32 %4202, %4204
  %4206 = sext i32 %4205 to i64
  %4207 = getelementptr inbounds double, ptr %4201, i64 %4206
  %4208 = load double, ptr %4207, align 8, !tbaa !11
  %4209 = call double @llvm.fmuladd.f64(double 0xBFE8AC73392375D0, double %4208, double %4200)
  %4210 = load ptr, ptr %7, align 8, !tbaa !9
  %4211 = load i32, ptr %12, align 4, !tbaa !5
  %4212 = load i32, ptr %8, align 4, !tbaa !5
  %4213 = mul nsw i32 7, %4212
  %4214 = add nsw i32 %4211, %4213
  %4215 = sext i32 %4214 to i64
  %4216 = getelementptr inbounds double, ptr %4210, i64 %4215
  %4217 = load double, ptr %4216, align 8, !tbaa !11
  %4218 = call double @llvm.fmuladd.f64(double 0x3FE4EDE8EE256116, double %4217, double %4209)
  %4219 = load ptr, ptr %7, align 8, !tbaa !9
  %4220 = load i32, ptr %12, align 4, !tbaa !5
  %4221 = load i32, ptr %8, align 4, !tbaa !5
  %4222 = mul nsw i32 8, %4221
  %4223 = add nsw i32 %4220, %4222
  %4224 = sext i32 %4223 to i64
  %4225 = getelementptr inbounds double, ptr %4219, i64 %4224
  %4226 = load double, ptr %4225, align 8, !tbaa !11
  %4227 = call double @llvm.fmuladd.f64(double 0x3FEA5488770B26C2, double %4226, double %4218)
  %4228 = load ptr, ptr %7, align 8, !tbaa !9
  %4229 = load i32, ptr %12, align 4, !tbaa !5
  %4230 = load i32, ptr %8, align 4, !tbaa !5
  %4231 = mul nsw i32 9, %4230
  %4232 = add nsw i32 %4229, %4231
  %4233 = sext i32 %4232 to i64
  %4234 = getelementptr inbounds double, ptr %4228, i64 %4233
  %4235 = load double, ptr %4234, align 8, !tbaa !11
  %4236 = call double @llvm.fmuladd.f64(double 0x3FF44CD742FC94EC, double %4235, double %4227)
  %4237 = load ptr, ptr %7, align 8, !tbaa !9
  %4238 = load i32, ptr %12, align 4, !tbaa !5
  %4239 = load i32, ptr %8, align 4, !tbaa !5
  %4240 = mul nsw i32 10, %4239
  %4241 = add nsw i32 %4238, %4240
  %4242 = sext i32 %4241 to i64
  %4243 = getelementptr inbounds double, ptr %4237, i64 %4242
  %4244 = load double, ptr %4243, align 8, !tbaa !11
  %4245 = call double @llvm.fmuladd.f64(double 0xBFFEF1F8514C97E2, double %4244, double %4236)
  %4246 = load ptr, ptr %7, align 8, !tbaa !9
  %4247 = load i32, ptr %12, align 4, !tbaa !5
  %4248 = load i32, ptr %8, align 4, !tbaa !5
  %4249 = mul nsw i32 11, %4248
  %4250 = add nsw i32 %4247, %4249
  %4251 = sext i32 %4250 to i64
  %4252 = getelementptr inbounds double, ptr %4246, i64 %4251
  %4253 = load double, ptr %4252, align 8, !tbaa !11
  %4254 = call double @llvm.fmuladd.f64(double 0xBFF01B2FE70C1193, double %4253, double %4245)
  %4255 = load ptr, ptr %7, align 8, !tbaa !9
  %4256 = load i32, ptr %12, align 4, !tbaa !5
  %4257 = load i32, ptr %8, align 4, !tbaa !5
  %4258 = mul nsw i32 12, %4257
  %4259 = add nsw i32 %4256, %4258
  %4260 = sext i32 %4259 to i64
  %4261 = getelementptr inbounds double, ptr %4255, i64 %4260
  %4262 = load double, ptr %4261, align 8, !tbaa !11
  %4263 = call double @llvm.fmuladd.f64(double 0x3CC10619A0D49B2C, double %4262, double %4254)
  %4264 = load ptr, ptr %7, align 8, !tbaa !9
  %4265 = load i32, ptr %12, align 4, !tbaa !5
  %4266 = load i32, ptr %8, align 4, !tbaa !5
  %4267 = mul nsw i32 13, %4266
  %4268 = add nsw i32 %4265, %4267
  %4269 = sext i32 %4268 to i64
  %4270 = getelementptr inbounds double, ptr %4264, i64 %4269
  %4271 = load double, ptr %4270, align 8, !tbaa !11
  %4272 = call double @llvm.fmuladd.f64(double 0xBCB2BE959D8DCC83, double %4271, double %4263)
  %4273 = load ptr, ptr %7, align 8, !tbaa !9
  %4274 = load i32, ptr %12, align 4, !tbaa !5
  %4275 = load i32, ptr %8, align 4, !tbaa !5
  %4276 = mul nsw i32 14, %4275
  %4277 = add nsw i32 %4274, %4276
  %4278 = sext i32 %4277 to i64
  %4279 = getelementptr inbounds double, ptr %4273, i64 %4278
  %4280 = load double, ptr %4279, align 8, !tbaa !11
  %4281 = call double @llvm.fmuladd.f64(double 0xBCB6827D4F596C3D, double %4280, double %4272)
  %4282 = load ptr, ptr %7, align 8, !tbaa !9
  %4283 = load i32, ptr %12, align 4, !tbaa !5
  %4284 = load i32, ptr %8, align 4, !tbaa !5
  %4285 = mul nsw i32 15, %4284
  %4286 = add nsw i32 %4283, %4285
  %4287 = sext i32 %4286 to i64
  %4288 = getelementptr inbounds double, ptr %4282, i64 %4287
  %4289 = load double, ptr %4288, align 8, !tbaa !11
  %4290 = call double @llvm.fmuladd.f64(double 0xBC79847A24C5FC38, double %4289, double %4281)
  %4291 = load ptr, ptr %7, align 8, !tbaa !9
  %4292 = load i32, ptr %12, align 4, !tbaa !5
  %4293 = load i32, ptr %8, align 4, !tbaa !5
  %4294 = mul nsw i32 16, %4293
  %4295 = add nsw i32 %4292, %4294
  %4296 = sext i32 %4295 to i64
  %4297 = getelementptr inbounds double, ptr %4291, i64 %4296
  %4298 = load double, ptr %4297, align 8, !tbaa !11
  %4299 = call double @llvm.fmuladd.f64(double 0x3CA5781E7AFEC464, double %4298, double %4290)
  %4300 = load ptr, ptr %7, align 8, !tbaa !9
  %4301 = load i32, ptr %12, align 4, !tbaa !5
  %4302 = load i32, ptr %8, align 4, !tbaa !5
  %4303 = mul nsw i32 17, %4302
  %4304 = add nsw i32 %4301, %4303
  %4305 = sext i32 %4304 to i64
  %4306 = getelementptr inbounds double, ptr %4300, i64 %4305
  %4307 = load double, ptr %4306, align 8, !tbaa !11
  %4308 = call double @llvm.fmuladd.f64(double 0xBC69B640D81F5A20, double %4307, double %4299)
  store double %4308, ptr %11, align 8, !tbaa !11
  %4309 = load double, ptr %11, align 8, !tbaa !11
  %4310 = load ptr, ptr %9, align 8, !tbaa !9
  %4311 = load i32, ptr %12, align 4, !tbaa !5
  %4312 = load i32, ptr %10, align 4, !tbaa !5
  %4313 = mul nsw i32 24, %4312
  %4314 = add nsw i32 %4311, %4313
  %4315 = sext i32 %4314 to i64
  %4316 = getelementptr inbounds double, ptr %4310, i64 %4315
  %4317 = load double, ptr %4316, align 8, !tbaa !11
  %4318 = fadd double %4317, %4309
  store double %4318, ptr %4316, align 8, !tbaa !11
  %4319 = load ptr, ptr %7, align 8, !tbaa !9
  %4320 = load i32, ptr %12, align 4, !tbaa !5
  %4321 = load i32, ptr %8, align 4, !tbaa !5
  %4322 = mul nsw i32 0, %4321
  %4323 = add nsw i32 %4320, %4322
  %4324 = sext i32 %4323 to i64
  %4325 = getelementptr inbounds double, ptr %4319, i64 %4324
  %4326 = load double, ptr %4325, align 8, !tbaa !11
  %4327 = load ptr, ptr %7, align 8, !tbaa !9
  %4328 = load i32, ptr %12, align 4, !tbaa !5
  %4329 = load i32, ptr %8, align 4, !tbaa !5
  %4330 = mul nsw i32 1, %4329
  %4331 = add nsw i32 %4328, %4330
  %4332 = sext i32 %4331 to i64
  %4333 = getelementptr inbounds double, ptr %4327, i64 %4332
  %4334 = load double, ptr %4333, align 8, !tbaa !11
  %4335 = fmul double 0x3CB1CF7DDE1AEFDC, %4334
  %4336 = call double @llvm.fmuladd.f64(double 0x3CA347C4C70D6B05, double %4326, double %4335)
  %4337 = load ptr, ptr %7, align 8, !tbaa !9
  %4338 = load i32, ptr %12, align 4, !tbaa !5
  %4339 = load i32, ptr %8, align 4, !tbaa !5
  %4340 = mul nsw i32 2, %4339
  %4341 = add nsw i32 %4338, %4340
  %4342 = sext i32 %4341 to i64
  %4343 = getelementptr inbounds double, ptr %4337, i64 %4342
  %4344 = load double, ptr %4343, align 8, !tbaa !11
  %4345 = call double @llvm.fmuladd.f64(double 0x3C97D656A637D540, double %4344, double %4336)
  %4346 = load ptr, ptr %7, align 8, !tbaa !9
  %4347 = load i32, ptr %12, align 4, !tbaa !5
  %4348 = load i32, ptr %8, align 4, !tbaa !5
  %4349 = mul nsw i32 3, %4348
  %4350 = add nsw i32 %4347, %4349
  %4351 = sext i32 %4350 to i64
  %4352 = getelementptr inbounds double, ptr %4346, i64 %4351
  %4353 = load double, ptr %4352, align 8, !tbaa !11
  %4354 = call double @llvm.fmuladd.f64(double 0xBCAA48CC66C79E07, double %4353, double %4345)
  %4355 = load ptr, ptr %7, align 8, !tbaa !9
  %4356 = load i32, ptr %12, align 4, !tbaa !5
  %4357 = load i32, ptr %8, align 4, !tbaa !5
  %4358 = mul nsw i32 4, %4357
  %4359 = add nsw i32 %4356, %4358
  %4360 = sext i32 %4359 to i64
  %4361 = getelementptr inbounds double, ptr %4355, i64 %4360
  %4362 = load double, ptr %4361, align 8, !tbaa !11
  %4363 = call double @llvm.fmuladd.f64(double 0x3C9D261528C7077F, double %4362, double %4354)
  %4364 = load ptr, ptr %7, align 8, !tbaa !9
  %4365 = load i32, ptr %12, align 4, !tbaa !5
  %4366 = load i32, ptr %8, align 4, !tbaa !5
  %4367 = mul nsw i32 5, %4366
  %4368 = add nsw i32 %4365, %4367
  %4369 = sext i32 %4368 to i64
  %4370 = getelementptr inbounds double, ptr %4364, i64 %4369
  %4371 = load double, ptr %4370, align 8, !tbaa !11
  %4372 = call double @llvm.fmuladd.f64(double 0x3CA99E4A7A608F94, double %4371, double %4363)
  %4373 = load ptr, ptr %7, align 8, !tbaa !9
  %4374 = load i32, ptr %12, align 4, !tbaa !5
  %4375 = load i32, ptr %8, align 4, !tbaa !5
  %4376 = mul nsw i32 6, %4375
  %4377 = add nsw i32 %4374, %4376
  %4378 = sext i32 %4377 to i64
  %4379 = getelementptr inbounds double, ptr %4373, i64 %4378
  %4380 = load double, ptr %4379, align 8, !tbaa !11
  %4381 = call double @llvm.fmuladd.f64(double 0xBF7DFA2300BBB500, double %4380, double %4372)
  %4382 = load ptr, ptr %7, align 8, !tbaa !9
  %4383 = load i32, ptr %12, align 4, !tbaa !5
  %4384 = load i32, ptr %8, align 4, !tbaa !5
  %4385 = mul nsw i32 7, %4384
  %4386 = add nsw i32 %4383, %4385
  %4387 = sext i32 %4386 to i64
  %4388 = getelementptr inbounds double, ptr %4382, i64 %4387
  %4389 = load double, ptr %4388, align 8, !tbaa !11
  %4390 = call double @llvm.fmuladd.f64(double 0x3FF44E3F94172F4B, double %4389, double %4381)
  %4391 = load ptr, ptr %7, align 8, !tbaa !9
  %4392 = load i32, ptr %12, align 4, !tbaa !5
  %4393 = load i32, ptr %8, align 4, !tbaa !5
  %4394 = mul nsw i32 8, %4393
  %4395 = add nsw i32 %4392, %4394
  %4396 = sext i32 %4395 to i64
  %4397 = getelementptr inbounds double, ptr %4391, i64 %4396
  %4398 = load double, ptr %4397, align 8, !tbaa !11
  %4399 = call double @llvm.fmuladd.f64(double 0x3FB9ECDD981278D6, double %4398, double %4390)
  %4400 = load ptr, ptr %7, align 8, !tbaa !9
  %4401 = load i32, ptr %12, align 4, !tbaa !5
  %4402 = load i32, ptr %8, align 4, !tbaa !5
  %4403 = mul nsw i32 9, %4402
  %4404 = add nsw i32 %4401, %4403
  %4405 = sext i32 %4404 to i64
  %4406 = getelementptr inbounds double, ptr %4400, i64 %4405
  %4407 = load double, ptr %4406, align 8, !tbaa !11
  %4408 = call double @llvm.fmuladd.f64(double 0xBFE4FBED5D8A9650, double %4407, double %4399)
  %4409 = load ptr, ptr %7, align 8, !tbaa !9
  %4410 = load i32, ptr %12, align 4, !tbaa !5
  %4411 = load i32, ptr %8, align 4, !tbaa !5
  %4412 = mul nsw i32 10, %4411
  %4413 = add nsw i32 %4410, %4412
  %4414 = sext i32 %4413 to i64
  %4415 = getelementptr inbounds double, ptr %4409, i64 %4414
  %4416 = load double, ptr %4415, align 8, !tbaa !11
  %4417 = call double @llvm.fmuladd.f64(double 0xBF83952FC55A72B4, double %4416, double %4408)
  %4418 = load ptr, ptr %7, align 8, !tbaa !9
  %4419 = load i32, ptr %12, align 4, !tbaa !5
  %4420 = load i32, ptr %8, align 4, !tbaa !5
  %4421 = mul nsw i32 11, %4420
  %4422 = add nsw i32 %4419, %4421
  %4423 = sext i32 %4422 to i64
  %4424 = getelementptr inbounds double, ptr %4418, i64 %4423
  %4425 = load double, ptr %4424, align 8, !tbaa !11
  %4426 = call double @llvm.fmuladd.f64(double 0x3FD50884576D0BC1, double %4425, double %4417)
  %4427 = load ptr, ptr %7, align 8, !tbaa !9
  %4428 = load i32, ptr %12, align 4, !tbaa !5
  %4429 = load i32, ptr %8, align 4, !tbaa !5
  %4430 = mul nsw i32 12, %4429
  %4431 = add nsw i32 %4428, %4430
  %4432 = sext i32 %4431 to i64
  %4433 = getelementptr inbounds double, ptr %4427, i64 %4432
  %4434 = load double, ptr %4433, align 8, !tbaa !11
  %4435 = call double @llvm.fmuladd.f64(double 0x3CB6140A413681D4, double %4434, double %4426)
  %4436 = load ptr, ptr %7, align 8, !tbaa !9
  %4437 = load i32, ptr %12, align 4, !tbaa !5
  %4438 = load i32, ptr %8, align 4, !tbaa !5
  %4439 = mul nsw i32 13, %4438
  %4440 = add nsw i32 %4437, %4439
  %4441 = sext i32 %4440 to i64
  %4442 = getelementptr inbounds double, ptr %4436, i64 %4441
  %4443 = load double, ptr %4442, align 8, !tbaa !11
  %4444 = call double @llvm.fmuladd.f64(double 0x3CA8FA1231330DC7, double %4443, double %4435)
  %4445 = load ptr, ptr %7, align 8, !tbaa !9
  %4446 = load i32, ptr %12, align 4, !tbaa !5
  %4447 = load i32, ptr %8, align 4, !tbaa !5
  %4448 = mul nsw i32 14, %4447
  %4449 = add nsw i32 %4446, %4448
  %4450 = sext i32 %4449 to i64
  %4451 = getelementptr inbounds double, ptr %4445, i64 %4450
  %4452 = load double, ptr %4451, align 8, !tbaa !11
  %4453 = call double @llvm.fmuladd.f64(double 0x3CBBE2C07F50FCE2, double %4452, double %4444)
  %4454 = load ptr, ptr %7, align 8, !tbaa !9
  %4455 = load i32, ptr %12, align 4, !tbaa !5
  %4456 = load i32, ptr %8, align 4, !tbaa !5
  %4457 = mul nsw i32 15, %4456
  %4458 = add nsw i32 %4455, %4457
  %4459 = sext i32 %4458 to i64
  %4460 = getelementptr inbounds double, ptr %4454, i64 %4459
  %4461 = load double, ptr %4460, align 8, !tbaa !11
  %4462 = call double @llvm.fmuladd.f64(double 0xBCB7024A69B57E27, double %4461, double %4453)
  %4463 = load ptr, ptr %7, align 8, !tbaa !9
  %4464 = load i32, ptr %12, align 4, !tbaa !5
  %4465 = load i32, ptr %8, align 4, !tbaa !5
  %4466 = mul nsw i32 16, %4465
  %4467 = add nsw i32 %4464, %4466
  %4468 = sext i32 %4467 to i64
  %4469 = getelementptr inbounds double, ptr %4463, i64 %4468
  %4470 = load double, ptr %4469, align 8, !tbaa !11
  %4471 = call double @llvm.fmuladd.f64(double 0xBC87FD97AF08C2A0, double %4470, double %4462)
  %4472 = load ptr, ptr %7, align 8, !tbaa !9
  %4473 = load i32, ptr %12, align 4, !tbaa !5
  %4474 = load i32, ptr %8, align 4, !tbaa !5
  %4475 = mul nsw i32 17, %4474
  %4476 = add nsw i32 %4473, %4475
  %4477 = sext i32 %4476 to i64
  %4478 = getelementptr inbounds double, ptr %4472, i64 %4477
  %4479 = load double, ptr %4478, align 8, !tbaa !11
  %4480 = call double @llvm.fmuladd.f64(double 0xBCB0527F7EB21B3D, double %4479, double %4471)
  store double %4480, ptr %11, align 8, !tbaa !11
  %4481 = load double, ptr %11, align 8, !tbaa !11
  %4482 = load ptr, ptr %9, align 8, !tbaa !9
  %4483 = load i32, ptr %12, align 4, !tbaa !5
  %4484 = load i32, ptr %10, align 4, !tbaa !5
  %4485 = mul nsw i32 25, %4484
  %4486 = add nsw i32 %4483, %4485
  %4487 = sext i32 %4486 to i64
  %4488 = getelementptr inbounds double, ptr %4482, i64 %4487
  %4489 = load double, ptr %4488, align 8, !tbaa !11
  %4490 = fadd double %4489, %4481
  store double %4490, ptr %4488, 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 0, %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 = load ptr, ptr %7, align 8, !tbaa !9
  %4500 = load i32, ptr %12, align 4, !tbaa !5
  %4501 = load i32, ptr %8, align 4, !tbaa !5
  %4502 = mul nsw i32 1, %4501
  %4503 = add nsw i32 %4500, %4502
  %4504 = sext i32 %4503 to i64
  %4505 = getelementptr inbounds double, ptr %4499, i64 %4504
  %4506 = load double, ptr %4505, align 8, !tbaa !11
  %4507 = fmul double 0x3C8A879ECD0AD1E9, %4506
  %4508 = call double @llvm.fmuladd.f64(double 0x3CAC37DE4880EADE, double %4498, double %4507)
  %4509 = load ptr, ptr %7, align 8, !tbaa !9
  %4510 = load i32, ptr %12, align 4, !tbaa !5
  %4511 = load i32, ptr %8, align 4, !tbaa !5
  %4512 = mul nsw i32 2, %4511
  %4513 = add nsw i32 %4510, %4512
  %4514 = sext i32 %4513 to i64
  %4515 = getelementptr inbounds double, ptr %4509, i64 %4514
  %4516 = load double, ptr %4515, align 8, !tbaa !11
  %4517 = call double @llvm.fmuladd.f64(double 0xBC59ACE05CE0B300, double %4516, double %4508)
  %4518 = load ptr, ptr %7, align 8, !tbaa !9
  %4519 = load i32, ptr %12, align 4, !tbaa !5
  %4520 = load i32, ptr %8, align 4, !tbaa !5
  %4521 = mul nsw i32 3, %4520
  %4522 = add nsw i32 %4519, %4521
  %4523 = sext i32 %4522 to i64
  %4524 = getelementptr inbounds double, ptr %4518, i64 %4523
  %4525 = load double, ptr %4524, align 8, !tbaa !11
  %4526 = call double @llvm.fmuladd.f64(double 0x3CB3FD64226E0B00, double %4525, double %4517)
  %4527 = load ptr, ptr %7, align 8, !tbaa !9
  %4528 = load i32, ptr %12, align 4, !tbaa !5
  %4529 = load i32, ptr %8, align 4, !tbaa !5
  %4530 = mul nsw i32 4, %4529
  %4531 = add nsw i32 %4528, %4530
  %4532 = sext i32 %4531 to i64
  %4533 = getelementptr inbounds double, ptr %4527, i64 %4532
  %4534 = load double, ptr %4533, align 8, !tbaa !11
  %4535 = call double @llvm.fmuladd.f64(double 0xBCA6BB73EC8236F2, double %4534, double %4526)
  %4536 = load ptr, ptr %7, align 8, !tbaa !9
  %4537 = load i32, ptr %12, align 4, !tbaa !5
  %4538 = load i32, ptr %8, align 4, !tbaa !5
  %4539 = mul nsw i32 5, %4538
  %4540 = add nsw i32 %4537, %4539
  %4541 = sext i32 %4540 to i64
  %4542 = getelementptr inbounds double, ptr %4536, i64 %4541
  %4543 = load double, ptr %4542, align 8, !tbaa !11
  %4544 = call double @llvm.fmuladd.f64(double 0xBCA83336C71F9743, double %4543, double %4535)
  %4545 = load ptr, ptr %7, align 8, !tbaa !9
  %4546 = load i32, ptr %12, align 4, !tbaa !5
  %4547 = load i32, ptr %8, align 4, !tbaa !5
  %4548 = mul nsw i32 6, %4547
  %4549 = add nsw i32 %4546, %4548
  %4550 = sext i32 %4549 to i64
  %4551 = getelementptr inbounds double, ptr %4545, i64 %4550
  %4552 = load double, ptr %4551, align 8, !tbaa !11
  %4553 = call double @llvm.fmuladd.f64(double 0xBFDFFE63E2851764, double %4552, double %4544)
  %4554 = load ptr, ptr %7, align 8, !tbaa !9
  %4555 = load i32, ptr %12, align 4, !tbaa !5
  %4556 = load i32, ptr %8, align 4, !tbaa !5
  %4557 = mul nsw i32 7, %4556
  %4558 = add nsw i32 %4555, %4557
  %4559 = sext i32 %4558 to i64
  %4560 = getelementptr inbounds double, ptr %4554, i64 %4559
  %4561 = load double, ptr %4560, align 8, !tbaa !11
  %4562 = call double @llvm.fmuladd.f64(double 0xBFE1EC4181248AE3, double %4561, double %4553)
  %4563 = load ptr, ptr %7, align 8, !tbaa !9
  %4564 = load i32, ptr %12, align 4, !tbaa !5
  %4565 = load i32, ptr %8, align 4, !tbaa !5
  %4566 = mul nsw i32 8, %4565
  %4567 = add nsw i32 %4564, %4566
  %4568 = sext i32 %4567 to i64
  %4569 = getelementptr inbounds double, ptr %4563, i64 %4568
  %4570 = load double, ptr %4569, align 8, !tbaa !11
  %4571 = call double @llvm.fmuladd.f64(double 0x4000E9CE75C2FBF6, double %4570, double %4562)
  %4572 = load ptr, ptr %7, align 8, !tbaa !9
  %4573 = load i32, ptr %12, align 4, !tbaa !5
  %4574 = load i32, ptr %8, align 4, !tbaa !5
  %4575 = mul nsw i32 9, %4574
  %4576 = add nsw i32 %4573, %4575
  %4577 = sext i32 %4576 to i64
  %4578 = getelementptr inbounds double, ptr %4572, i64 %4577
  %4579 = load double, ptr %4578, align 8, !tbaa !11
  %4580 = call double @llvm.fmuladd.f64(double 0x3FF2343957F3A8AF, double %4579, double %4571)
  %4581 = load ptr, ptr %7, align 8, !tbaa !9
  %4582 = load i32, ptr %12, align 4, !tbaa !5
  %4583 = load i32, ptr %8, align 4, !tbaa !5
  %4584 = mul nsw i32 10, %4583
  %4585 = add nsw i32 %4582, %4584
  %4586 = sext i32 %4585 to i64
  %4587 = getelementptr inbounds double, ptr %4581, i64 %4586
  %4588 = load double, ptr %4587, align 8, !tbaa !11
  %4589 = call double @llvm.fmuladd.f64(double 0x3FF31D88B253B07F, double %4588, double %4580)
  %4590 = load ptr, ptr %7, align 8, !tbaa !9
  %4591 = load i32, ptr %12, align 4, !tbaa !5
  %4592 = load i32, ptr %8, align 4, !tbaa !5
  %4593 = mul nsw i32 11, %4592
  %4594 = add nsw i32 %4591, %4593
  %4595 = sext i32 %4594 to i64
  %4596 = getelementptr inbounds double, ptr %4590, i64 %4595
  %4597 = load double, ptr %4596, align 8, !tbaa !11
  %4598 = call double @llvm.fmuladd.f64(double 0xBFEE712F1EF7D8A1, double %4597, double %4589)
  %4599 = load ptr, ptr %7, align 8, !tbaa !9
  %4600 = load i32, ptr %12, align 4, !tbaa !5
  %4601 = load i32, ptr %8, align 4, !tbaa !5
  %4602 = mul nsw i32 12, %4601
  %4603 = add nsw i32 %4600, %4602
  %4604 = sext i32 %4603 to i64
  %4605 = getelementptr inbounds double, ptr %4599, i64 %4604
  %4606 = load double, ptr %4605, align 8, !tbaa !11
  %4607 = call double @llvm.fmuladd.f64(double 0xBCC19561BA4C976A, double %4606, double %4598)
  %4608 = load ptr, ptr %7, align 8, !tbaa !9
  %4609 = load i32, ptr %12, align 4, !tbaa !5
  %4610 = load i32, ptr %8, align 4, !tbaa !5
  %4611 = mul nsw i32 13, %4610
  %4612 = add nsw i32 %4609, %4611
  %4613 = sext i32 %4612 to i64
  %4614 = getelementptr inbounds double, ptr %4608, i64 %4613
  %4615 = load double, ptr %4614, align 8, !tbaa !11
  %4616 = call double @llvm.fmuladd.f64(double 0x3C8561CA2243E962, double %4615, double %4607)
  %4617 = load ptr, ptr %7, align 8, !tbaa !9
  %4618 = load i32, ptr %12, align 4, !tbaa !5
  %4619 = load i32, ptr %8, align 4, !tbaa !5
  %4620 = mul nsw i32 14, %4619
  %4621 = add nsw i32 %4618, %4620
  %4622 = sext i32 %4621 to i64
  %4623 = getelementptr inbounds double, ptr %4617, i64 %4622
  %4624 = load double, ptr %4623, align 8, !tbaa !11
  %4625 = call double @llvm.fmuladd.f64(double 0xBCCBC809825B5E43, double %4624, double %4616)
  %4626 = load ptr, ptr %7, align 8, !tbaa !9
  %4627 = load i32, ptr %12, align 4, !tbaa !5
  %4628 = load i32, ptr %8, align 4, !tbaa !5
  %4629 = mul nsw i32 15, %4628
  %4630 = add nsw i32 %4627, %4629
  %4631 = sext i32 %4630 to i64
  %4632 = getelementptr inbounds double, ptr %4626, i64 %4631
  %4633 = load double, ptr %4632, align 8, !tbaa !11
  %4634 = call double @llvm.fmuladd.f64(double 0xBC98B3084FB90D1C, double %4633, double %4625)
  %4635 = load ptr, ptr %7, align 8, !tbaa !9
  %4636 = load i32, ptr %12, align 4, !tbaa !5
  %4637 = load i32, ptr %8, align 4, !tbaa !5
  %4638 = mul nsw i32 16, %4637
  %4639 = add nsw i32 %4636, %4638
  %4640 = sext i32 %4639 to i64
  %4641 = getelementptr inbounds double, ptr %4635, i64 %4640
  %4642 = load double, ptr %4641, align 8, !tbaa !11
  %4643 = call double @llvm.fmuladd.f64(double 0x3CD0052A8CC0F683, double %4642, double %4634)
  %4644 = load ptr, ptr %7, align 8, !tbaa !9
  %4645 = load i32, ptr %12, align 4, !tbaa !5
  %4646 = load i32, ptr %8, align 4, !tbaa !5
  %4647 = mul nsw i32 17, %4646
  %4648 = add nsw i32 %4645, %4647
  %4649 = sext i32 %4648 to i64
  %4650 = getelementptr inbounds double, ptr %4644, i64 %4649
  %4651 = load double, ptr %4650, align 8, !tbaa !11
  %4652 = call double @llvm.fmuladd.f64(double 0x3CD01543965B219E, double %4651, double %4643)
  store double %4652, ptr %11, align 8, !tbaa !11
  %4653 = load double, ptr %11, align 8, !tbaa !11
  %4654 = load ptr, ptr %9, align 8, !tbaa !9
  %4655 = load i32, ptr %12, align 4, !tbaa !5
  %4656 = load i32, ptr %10, align 4, !tbaa !5
  %4657 = mul nsw i32 26, %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 = fadd double %4661, %4653
  store double %4662, ptr %4660, align 8, !tbaa !11
  %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 0, %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 = load ptr, ptr %7, align 8, !tbaa !9
  %4672 = load i32, ptr %12, align 4, !tbaa !5
  %4673 = load i32, ptr %8, align 4, !tbaa !5
  %4674 = mul nsw i32 1, %4673
  %4675 = add nsw i32 %4672, %4674
  %4676 = sext i32 %4675 to i64
  %4677 = getelementptr inbounds double, ptr %4671, i64 %4676
  %4678 = load double, ptr %4677, align 8, !tbaa !11
  %4679 = fmul double 0x3C5F5BA8ADFE37A4, %4678
  %4680 = call double @llvm.fmuladd.f64(double 0xBCB17D0146688F6C, double %4670, double %4679)
  %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 2, %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 0xBC95A97F00B4BD20, 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 3, %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 0x3CB310B8F73ED9E1, 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 4, %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 0x3CB8D84083674869, 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 5, %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 0x3C908864603A2D22, 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 6, %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 0xBFB17C71DD2D5188, 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 7, %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 0x3FF3237A82AF9ED0, 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 8, %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 0xBF76E8A1969E6E00, 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 9, %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 0x3FFBC4AD9C53A55A, 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 10, %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 0x3FC179BD32D3DC59, 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 11, %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 0x3FF1CA3B98F4942B, 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 12, %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 0x3CB0F5FB97E3D134, 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 13, %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 0xBCAEF548FD7930BA, 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 14, %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 0x3CB0EB672BAF686C, 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 15, %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 0xBC978105A5E561C1, 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 16, %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 0x3CA3390DEFF9A3C5, 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 17, %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 0xBCA5931C5A970C57, double %4823, double %4815)
  store double %4824, ptr %11, align 8, !tbaa !11
  %4825 = load double, ptr %11, align 8, !tbaa !11
  %4826 = load ptr, ptr %9, align 8, !tbaa !9
  %4827 = load i32, ptr %12, align 4, !tbaa !5
  %4828 = load i32, ptr %10, align 4, !tbaa !5
  %4829 = mul nsw i32 27, %4828
  %4830 = add nsw i32 %4827, %4829
  %4831 = sext i32 %4830 to i64
  %4832 = getelementptr inbounds double, ptr %4826, i64 %4831
  %4833 = load double, ptr %4832, align 8, !tbaa !11
  %4834 = fadd double %4833, %4825
  store double %4834, ptr %4832, align 8, !tbaa !11
  %4835 = load ptr, ptr %7, align 8, !tbaa !9
  %4836 = load i32, ptr %12, align 4, !tbaa !5
  %4837 = load i32, ptr %8, align 4, !tbaa !5
  %4838 = mul nsw i32 0, %4837
  %4839 = add nsw i32 %4836, %4838
  %4840 = sext i32 %4839 to i64
  %4841 = getelementptr inbounds double, ptr %4835, i64 %4840
  %4842 = load double, ptr %4841, align 8, !tbaa !11
  %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 1, %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 = fmul double 0xBC8C55566D867E4D, %4850
  %4852 = call double @llvm.fmuladd.f64(double 0xBCB979BA7B87021B, double %4842, double %4851)
  %4853 = load ptr, ptr %7, align 8, !tbaa !9
  %4854 = load i32, ptr %12, align 4, !tbaa !5
  %4855 = load i32, ptr %8, align 4, !tbaa !5
  %4856 = mul nsw i32 2, %4855
  %4857 = add nsw i32 %4854, %4856
  %4858 = sext i32 %4857 to i64
  %4859 = getelementptr inbounds double, ptr %4853, i64 %4858
  %4860 = load double, ptr %4859, align 8, !tbaa !11
  %4861 = call double @llvm.fmuladd.f64(double 0x3CAD8296DD370BB5, double %4860, double %4852)
  %4862 = load ptr, ptr %7, align 8, !tbaa !9
  %4863 = load i32, ptr %12, align 4, !tbaa !5
  %4864 = load i32, ptr %8, align 4, !tbaa !5
  %4865 = mul nsw i32 3, %4864
  %4866 = add nsw i32 %4863, %4865
  %4867 = sext i32 %4866 to i64
  %4868 = getelementptr inbounds double, ptr %4862, i64 %4867
  %4869 = load double, ptr %4868, align 8, !tbaa !11
  %4870 = call double @llvm.fmuladd.f64(double 0xBCB6E42765918C02, double %4869, double %4861)
  %4871 = load ptr, ptr %7, align 8, !tbaa !9
  %4872 = load i32, ptr %12, align 4, !tbaa !5
  %4873 = load i32, ptr %8, align 4, !tbaa !5
  %4874 = mul nsw i32 4, %4873
  %4875 = add nsw i32 %4872, %4874
  %4876 = sext i32 %4875 to i64
  %4877 = getelementptr inbounds double, ptr %4871, i64 %4876
  %4878 = load double, ptr %4877, align 8, !tbaa !11
  %4879 = call double @llvm.fmuladd.f64(double 0x3CA25C9DE1FA7E55, double %4878, double %4870)
  %4880 = load ptr, ptr %7, align 8, !tbaa !9
  %4881 = load i32, ptr %12, align 4, !tbaa !5
  %4882 = load i32, ptr %8, align 4, !tbaa !5
  %4883 = mul nsw i32 5, %4882
  %4884 = add nsw i32 %4881, %4883
  %4885 = sext i32 %4884 to i64
  %4886 = getelementptr inbounds double, ptr %4880, i64 %4885
  %4887 = load double, ptr %4886, align 8, !tbaa !11
  %4888 = call double @llvm.fmuladd.f64(double 0x3CA501A6E8F3273C, double %4887, double %4879)
  %4889 = load ptr, ptr %7, align 8, !tbaa !9
  %4890 = load i32, ptr %12, align 4, !tbaa !5
  %4891 = load i32, ptr %8, align 4, !tbaa !5
  %4892 = mul nsw i32 6, %4891
  %4893 = add nsw i32 %4890, %4892
  %4894 = sext i32 %4893 to i64
  %4895 = getelementptr inbounds double, ptr %4889, i64 %4894
  %4896 = load double, ptr %4895, align 8, !tbaa !11
  %4897 = call double @llvm.fmuladd.f64(double 0x3FF21EFA862DF3DA, double %4896, double %4888)
  %4898 = load ptr, ptr %7, align 8, !tbaa !9
  %4899 = load i32, ptr %12, align 4, !tbaa !5
  %4900 = load i32, ptr %8, align 4, !tbaa !5
  %4901 = mul nsw i32 7, %4900
  %4902 = add nsw i32 %4899, %4901
  %4903 = sext i32 %4902 to i64
  %4904 = getelementptr inbounds double, ptr %4898, i64 %4903
  %4905 = load double, ptr %4904, align 8, !tbaa !11
  %4906 = call double @llvm.fmuladd.f64(double 0xBF734721512AF5C4, double %4905, double %4897)
  %4907 = load ptr, ptr %7, align 8, !tbaa !9
  %4908 = load i32, ptr %12, align 4, !tbaa !5
  %4909 = load i32, ptr %8, align 4, !tbaa !5
  %4910 = mul nsw i32 8, %4909
  %4911 = add nsw i32 %4908, %4910
  %4912 = sext i32 %4911 to i64
  %4913 = getelementptr inbounds double, ptr %4907, i64 %4912
  %4914 = load double, ptr %4913, align 8, !tbaa !11
  %4915 = call double @llvm.fmuladd.f64(double 0xBFF7F19EB1BA88FC, double %4914, double %4906)
  %4916 = load ptr, ptr %7, align 8, !tbaa !9
  %4917 = load i32, ptr %12, align 4, !tbaa !5
  %4918 = load i32, ptr %8, align 4, !tbaa !5
  %4919 = mul nsw i32 9, %4918
  %4920 = add nsw i32 %4917, %4919
  %4921 = sext i32 %4920 to i64
  %4922 = getelementptr inbounds double, ptr %4916, i64 %4921
  %4923 = load double, ptr %4922, align 8, !tbaa !11
  %4924 = call double @llvm.fmuladd.f64(double 0xBFF48831FA6C7040, double %4923, double %4915)
  %4925 = load ptr, ptr %7, align 8, !tbaa !9
  %4926 = load i32, ptr %12, align 4, !tbaa !5
  %4927 = load i32, ptr %8, align 4, !tbaa !5
  %4928 = mul nsw i32 10, %4927
  %4929 = add nsw i32 %4926, %4928
  %4930 = sext i32 %4929 to i64
  %4931 = getelementptr inbounds double, ptr %4925, i64 %4930
  %4932 = load double, ptr %4931, align 8, !tbaa !11
  %4933 = call double @llvm.fmuladd.f64(double 0x3FC901A35D55DB91, double %4932, double %4924)
  %4934 = load ptr, ptr %7, align 8, !tbaa !9
  %4935 = load i32, ptr %12, align 4, !tbaa !5
  %4936 = load i32, ptr %8, align 4, !tbaa !5
  %4937 = mul nsw i32 11, %4936
  %4938 = add nsw i32 %4935, %4937
  %4939 = sext i32 %4938 to i64
  %4940 = getelementptr inbounds double, ptr %4934, i64 %4939
  %4941 = load double, ptr %4940, align 8, !tbaa !11
  %4942 = call double @llvm.fmuladd.f64(double 0x3FF0AF85DD8BD41B, double %4941, double %4933)
  %4943 = load ptr, ptr %7, align 8, !tbaa !9
  %4944 = load i32, ptr %12, align 4, !tbaa !5
  %4945 = load i32, ptr %8, align 4, !tbaa !5
  %4946 = mul nsw i32 12, %4945
  %4947 = add nsw i32 %4944, %4946
  %4948 = sext i32 %4947 to i64
  %4949 = getelementptr inbounds double, ptr %4943, i64 %4948
  %4950 = load double, ptr %4949, align 8, !tbaa !11
  %4951 = call double @llvm.fmuladd.f64(double 0x3C818885A14EAAF3, double %4950, double %4942)
  %4952 = load ptr, ptr %7, align 8, !tbaa !9
  %4953 = load i32, ptr %12, align 4, !tbaa !5
  %4954 = load i32, ptr %8, align 4, !tbaa !5
  %4955 = mul nsw i32 13, %4954
  %4956 = add nsw i32 %4953, %4955
  %4957 = sext i32 %4956 to i64
  %4958 = getelementptr inbounds double, ptr %4952, i64 %4957
  %4959 = load double, ptr %4958, align 8, !tbaa !11
  %4960 = call double @llvm.fmuladd.f64(double 0x3CA1FE8D3E4F0FDA, double %4959, double %4951)
  %4961 = load ptr, ptr %7, align 8, !tbaa !9
  %4962 = load i32, ptr %12, align 4, !tbaa !5
  %4963 = load i32, ptr %8, align 4, !tbaa !5
  %4964 = mul nsw i32 14, %4963
  %4965 = add nsw i32 %4962, %4964
  %4966 = sext i32 %4965 to i64
  %4967 = getelementptr inbounds double, ptr %4961, i64 %4966
  %4968 = load double, ptr %4967, align 8, !tbaa !11
  %4969 = call double @llvm.fmuladd.f64(double 0x3CC2430B423E38F7, double %4968, double %4960)
  %4970 = load ptr, ptr %7, align 8, !tbaa !9
  %4971 = load i32, ptr %12, align 4, !tbaa !5
  %4972 = load i32, ptr %8, align 4, !tbaa !5
  %4973 = mul nsw i32 15, %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 = call double @llvm.fmuladd.f64(double 0xBCA2669FC3A56863, double %4977, double %4969)
  %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 16, %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 = call double @llvm.fmuladd.f64(double 0xBCBED2A4B49E79D0, double %4986, double %4978)
  %4988 = load ptr, ptr %7, align 8, !tbaa !9
  %4989 = load i32, ptr %12, align 4, !tbaa !5
  %4990 = load i32, ptr %8, align 4, !tbaa !5
  %4991 = mul nsw i32 17, %4990
  %4992 = add nsw i32 %4989, %4991
  %4993 = sext i32 %4992 to i64
  %4994 = getelementptr inbounds double, ptr %4988, i64 %4993
  %4995 = load double, ptr %4994, align 8, !tbaa !11
  %4996 = call double @llvm.fmuladd.f64(double 0xBCB8150AF40905ED, double %4995, double %4987)
  store double %4996, ptr %11, align 8, !tbaa !11
  %4997 = load double, ptr %11, align 8, !tbaa !11
  %4998 = load ptr, ptr %9, align 8, !tbaa !9
  %4999 = load i32, ptr %12, align 4, !tbaa !5
  %5000 = load i32, ptr %10, align 4, !tbaa !5
  %5001 = mul nsw i32 28, %5000
  %5002 = add nsw i32 %4999, %5001
  %5003 = sext i32 %5002 to i64
  %5004 = getelementptr inbounds double, ptr %4998, i64 %5003
  %5005 = load double, ptr %5004, align 8, !tbaa !11
  %5006 = fadd double %5005, %4997
  store double %5006, ptr %5004, align 8, !tbaa !11
  %5007 = load ptr, ptr %7, align 8, !tbaa !9
  %5008 = load i32, ptr %12, align 4, !tbaa !5
  %5009 = load i32, ptr %8, align 4, !tbaa !5
  %5010 = mul nsw i32 0, %5009
  %5011 = add nsw i32 %5008, %5010
  %5012 = sext i32 %5011 to i64
  %5013 = getelementptr inbounds double, ptr %5007, i64 %5012
  %5014 = load double, ptr %5013, align 8, !tbaa !11
  %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 1, %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 = fmul double 0xBC6ACDF6528B4733, %5022
  %5024 = call double @llvm.fmuladd.f64(double 0x3CA01AC45D3C9864, double %5014, double %5023)
  %5025 = load ptr, ptr %7, align 8, !tbaa !9
  %5026 = load i32, ptr %12, align 4, !tbaa !5
  %5027 = load i32, ptr %8, align 4, !tbaa !5
  %5028 = mul nsw i32 2, %5027
  %5029 = add nsw i32 %5026, %5028
  %5030 = sext i32 %5029 to i64
  %5031 = getelementptr inbounds double, ptr %5025, i64 %5030
  %5032 = load double, ptr %5031, align 8, !tbaa !11
  %5033 = call double @llvm.fmuladd.f64(double 0xBC7F9F89179EC460, double %5032, double %5024)
  %5034 = load ptr, ptr %7, align 8, !tbaa !9
  %5035 = load i32, ptr %12, align 4, !tbaa !5
  %5036 = load i32, ptr %8, align 4, !tbaa !5
  %5037 = mul nsw i32 3, %5036
  %5038 = add nsw i32 %5035, %5037
  %5039 = sext i32 %5038 to i64
  %5040 = getelementptr inbounds double, ptr %5034, i64 %5039
  %5041 = load double, ptr %5040, align 8, !tbaa !11
  %5042 = call double @llvm.fmuladd.f64(double 0xBCB6B022413F9937, double %5041, double %5033)
  %5043 = load ptr, ptr %7, align 8, !tbaa !9
  %5044 = load i32, ptr %12, align 4, !tbaa !5
  %5045 = load i32, ptr %8, align 4, !tbaa !5
  %5046 = mul nsw i32 4, %5045
  %5047 = add nsw i32 %5044, %5046
  %5048 = sext i32 %5047 to i64
  %5049 = getelementptr inbounds double, ptr %5043, i64 %5048
  %5050 = load double, ptr %5049, align 8, !tbaa !11
  %5051 = call double @llvm.fmuladd.f64(double 0xBCB0BCDE936FEEC2, double %5050, double %5042)
  %5052 = load ptr, ptr %7, align 8, !tbaa !9
  %5053 = load i32, ptr %12, align 4, !tbaa !5
  %5054 = load i32, ptr %8, align 4, !tbaa !5
  %5055 = mul nsw i32 5, %5054
  %5056 = add nsw i32 %5053, %5055
  %5057 = sext i32 %5056 to i64
  %5058 = getelementptr inbounds double, ptr %5052, i64 %5057
  %5059 = load double, ptr %5058, align 8, !tbaa !11
  %5060 = call double @llvm.fmuladd.f64(double 0x3CB1A9F3F895A70E, double %5059, double %5051)
  %5061 = load ptr, ptr %7, align 8, !tbaa !9
  %5062 = load i32, ptr %12, align 4, !tbaa !5
  %5063 = load i32, ptr %8, align 4, !tbaa !5
  %5064 = mul nsw i32 6, %5063
  %5065 = add nsw i32 %5062, %5064
  %5066 = sext i32 %5065 to i64
  %5067 = getelementptr inbounds double, ptr %5061, i64 %5066
  %5068 = load double, ptr %5067, align 8, !tbaa !11
  %5069 = call double @llvm.fmuladd.f64(double 0x3FB1F3F0B024DC78, double %5068, double %5060)
  %5070 = load ptr, ptr %7, align 8, !tbaa !9
  %5071 = load i32, ptr %12, align 4, !tbaa !5
  %5072 = load i32, ptr %8, align 4, !tbaa !5
  %5073 = mul nsw i32 7, %5072
  %5074 = add nsw i32 %5071, %5073
  %5075 = sext i32 %5074 to i64
  %5076 = getelementptr inbounds double, ptr %5070, i64 %5075
  %5077 = load double, ptr %5076, align 8, !tbaa !11
  %5078 = call double @llvm.fmuladd.f64(double 0xBFF5B6F7089FF1D6, double %5077, double %5069)
  %5079 = load ptr, ptr %7, align 8, !tbaa !9
  %5080 = load i32, ptr %12, align 4, !tbaa !5
  %5081 = load i32, ptr %8, align 4, !tbaa !5
  %5082 = mul nsw i32 8, %5081
  %5083 = add nsw i32 %5080, %5082
  %5084 = sext i32 %5083 to i64
  %5085 = getelementptr inbounds double, ptr %5079, i64 %5084
  %5086 = load double, ptr %5085, align 8, !tbaa !11
  %5087 = call double @llvm.fmuladd.f64(double 0x3FCCBE3CAE6B6264, double %5086, double %5078)
  %5088 = load ptr, ptr %7, align 8, !tbaa !9
  %5089 = load i32, ptr %12, align 4, !tbaa !5
  %5090 = load i32, ptr %8, align 4, !tbaa !5
  %5091 = mul nsw i32 9, %5090
  %5092 = add nsw i32 %5089, %5091
  %5093 = sext i32 %5092 to i64
  %5094 = getelementptr inbounds double, ptr %5088, i64 %5093
  %5095 = load double, ptr %5094, align 8, !tbaa !11
  %5096 = call double @llvm.fmuladd.f64(double 0xBFFBA497A89943F8, double %5095, double %5087)
  %5097 = load ptr, ptr %7, align 8, !tbaa !9
  %5098 = load i32, ptr %12, align 4, !tbaa !5
  %5099 = load i32, ptr %8, align 4, !tbaa !5
  %5100 = mul nsw i32 10, %5099
  %5101 = add nsw i32 %5098, %5100
  %5102 = sext i32 %5101 to i64
  %5103 = getelementptr inbounds double, ptr %5097, i64 %5102
  %5104 = load double, ptr %5103, align 8, !tbaa !11
  %5105 = call double @llvm.fmuladd.f64(double 0xBFD81F8F0CEC6101, double %5104, double %5096)
  %5106 = load ptr, ptr %7, align 8, !tbaa !9
  %5107 = load i32, ptr %12, align 4, !tbaa !5
  %5108 = load i32, ptr %8, align 4, !tbaa !5
  %5109 = mul nsw i32 11, %5108
  %5110 = add nsw i32 %5107, %5109
  %5111 = sext i32 %5110 to i64
  %5112 = getelementptr inbounds double, ptr %5106, i64 %5111
  %5113 = load double, ptr %5112, align 8, !tbaa !11
  %5114 = call double @llvm.fmuladd.f64(double 0xBFDC5366E211BEA0, double %5113, double %5105)
  %5115 = load ptr, ptr %7, align 8, !tbaa !9
  %5116 = load i32, ptr %12, align 4, !tbaa !5
  %5117 = load i32, ptr %8, align 4, !tbaa !5
  %5118 = mul nsw i32 12, %5117
  %5119 = add nsw i32 %5116, %5118
  %5120 = sext i32 %5119 to i64
  %5121 = getelementptr inbounds double, ptr %5115, i64 %5120
  %5122 = load double, ptr %5121, align 8, !tbaa !11
  %5123 = call double @llvm.fmuladd.f64(double 0xBCB87AF4AD8F6C4D, double %5122, double %5114)
  %5124 = load ptr, ptr %7, align 8, !tbaa !9
  %5125 = load i32, ptr %12, align 4, !tbaa !5
  %5126 = load i32, ptr %8, align 4, !tbaa !5
  %5127 = mul nsw i32 13, %5126
  %5128 = add nsw i32 %5125, %5127
  %5129 = sext i32 %5128 to i64
  %5130 = getelementptr inbounds double, ptr %5124, i64 %5129
  %5131 = load double, ptr %5130, align 8, !tbaa !11
  %5132 = call double @llvm.fmuladd.f64(double 0x3CB12455A0EA2ADF, double %5131, double %5123)
  %5133 = load ptr, ptr %7, align 8, !tbaa !9
  %5134 = load i32, ptr %12, align 4, !tbaa !5
  %5135 = load i32, ptr %8, align 4, !tbaa !5
  %5136 = mul nsw i32 14, %5135
  %5137 = add nsw i32 %5134, %5136
  %5138 = sext i32 %5137 to i64
  %5139 = getelementptr inbounds double, ptr %5133, i64 %5138
  %5140 = load double, ptr %5139, align 8, !tbaa !11
  %5141 = call double @llvm.fmuladd.f64(double 0xBCB257D19C776B7D, double %5140, double %5132)
  %5142 = load ptr, ptr %7, align 8, !tbaa !9
  %5143 = load i32, ptr %12, align 4, !tbaa !5
  %5144 = load i32, ptr %8, align 4, !tbaa !5
  %5145 = mul nsw i32 15, %5144
  %5146 = add nsw i32 %5143, %5145
  %5147 = sext i32 %5146 to i64
  %5148 = getelementptr inbounds double, ptr %5142, i64 %5147
  %5149 = load double, ptr %5148, align 8, !tbaa !11
  %5150 = call double @llvm.fmuladd.f64(double 0x3C87C5793620E509, double %5149, double %5141)
  %5151 = load ptr, ptr %7, align 8, !tbaa !9
  %5152 = load i32, ptr %12, align 4, !tbaa !5
  %5153 = load i32, ptr %8, align 4, !tbaa !5
  %5154 = mul nsw i32 16, %5153
  %5155 = add nsw i32 %5152, %5154
  %5156 = sext i32 %5155 to i64
  %5157 = getelementptr inbounds double, ptr %5151, i64 %5156
  %5158 = load double, ptr %5157, align 8, !tbaa !11
  %5159 = call double @llvm.fmuladd.f64(double 0xBCAEB022802087A0, double %5158, double %5150)
  %5160 = load ptr, ptr %7, align 8, !tbaa !9
  %5161 = load i32, ptr %12, align 4, !tbaa !5
  %5162 = load i32, ptr %8, align 4, !tbaa !5
  %5163 = mul nsw i32 17, %5162
  %5164 = add nsw i32 %5161, %5163
  %5165 = sext i32 %5164 to i64
  %5166 = getelementptr inbounds double, ptr %5160, i64 %5165
  %5167 = load double, ptr %5166, align 8, !tbaa !11
  %5168 = call double @llvm.fmuladd.f64(double 0x3CB19E5F3488CFDD, double %5167, double %5159)
  store double %5168, ptr %11, align 8, !tbaa !11
  %5169 = load double, ptr %11, align 8, !tbaa !11
  %5170 = load ptr, ptr %9, align 8, !tbaa !9
  %5171 = load i32, ptr %12, align 4, !tbaa !5
  %5172 = load i32, ptr %10, align 4, !tbaa !5
  %5173 = mul nsw i32 29, %5172
  %5174 = add nsw i32 %5171, %5173
  %5175 = sext i32 %5174 to i64
  %5176 = getelementptr inbounds double, ptr %5170, i64 %5175
  %5177 = load double, ptr %5176, align 8, !tbaa !11
  %5178 = fadd double %5177, %5169
  store double %5178, ptr %5176, align 8, !tbaa !11
  %5179 = load ptr, ptr %7, align 8, !tbaa !9
  %5180 = load i32, ptr %12, align 4, !tbaa !5
  %5181 = load i32, ptr %8, align 4, !tbaa !5
  %5182 = mul nsw i32 0, %5181
  %5183 = add nsw i32 %5180, %5182
  %5184 = sext i32 %5183 to i64
  %5185 = getelementptr inbounds double, ptr %5179, i64 %5184
  %5186 = load double, ptr %5185, align 8, !tbaa !11
  %5187 = load ptr, ptr %7, align 8, !tbaa !9
  %5188 = load i32, ptr %12, align 4, !tbaa !5
  %5189 = load i32, ptr %8, align 4, !tbaa !5
  %5190 = mul nsw i32 1, %5189
  %5191 = add nsw i32 %5188, %5190
  %5192 = sext i32 %5191 to i64
  %5193 = getelementptr inbounds double, ptr %5187, i64 %5192
  %5194 = load double, ptr %5193, align 8, !tbaa !11
  %5195 = fmul double 0x3C93A7C0E4AC7A60, %5194
  %5196 = call double @llvm.fmuladd.f64(double 0x3CA77C1E26AD07FB, double %5186, double %5195)
  %5197 = load ptr, ptr %7, align 8, !tbaa !9
  %5198 = load i32, ptr %12, align 4, !tbaa !5
  %5199 = load i32, ptr %8, align 4, !tbaa !5
  %5200 = mul nsw i32 2, %5199
  %5201 = add nsw i32 %5198, %5200
  %5202 = sext i32 %5201 to i64
  %5203 = getelementptr inbounds double, ptr %5197, i64 %5202
  %5204 = load double, ptr %5203, align 8, !tbaa !11
  %5205 = call double @llvm.fmuladd.f64(double 0xBCB48923F82EA691, double %5204, double %5196)
  %5206 = load ptr, ptr %7, align 8, !tbaa !9
  %5207 = load i32, ptr %12, align 4, !tbaa !5
  %5208 = load i32, ptr %8, align 4, !tbaa !5
  %5209 = mul nsw i32 3, %5208
  %5210 = add nsw i32 %5207, %5209
  %5211 = sext i32 %5210 to i64
  %5212 = getelementptr inbounds double, ptr %5206, i64 %5211
  %5213 = load double, ptr %5212, align 8, !tbaa !11
  %5214 = call double @llvm.fmuladd.f64(double 0x3CB2EF2E61697A4B, double %5213, double %5205)
  %5215 = load ptr, ptr %7, align 8, !tbaa !9
  %5216 = load i32, ptr %12, align 4, !tbaa !5
  %5217 = load i32, ptr %8, align 4, !tbaa !5
  %5218 = mul nsw i32 4, %5217
  %5219 = add nsw i32 %5216, %5218
  %5220 = sext i32 %5219 to i64
  %5221 = getelementptr inbounds double, ptr %5215, i64 %5220
  %5222 = load double, ptr %5221, align 8, !tbaa !11
  %5223 = call double @llvm.fmuladd.f64(double 0xBC799BC4C2A33F70, double %5222, double %5214)
  %5224 = load ptr, ptr %7, align 8, !tbaa !9
  %5225 = load i32, ptr %12, align 4, !tbaa !5
  %5226 = load i32, ptr %8, align 4, !tbaa !5
  %5227 = mul nsw i32 5, %5226
  %5228 = add nsw i32 %5225, %5227
  %5229 = sext i32 %5228 to i64
  %5230 = getelementptr inbounds double, ptr %5224, i64 %5229
  %5231 = load double, ptr %5230, align 8, !tbaa !11
  %5232 = call double @llvm.fmuladd.f64(double 0xBC7C5EE298468647, double %5231, double %5223)
  %5233 = load ptr, ptr %7, align 8, !tbaa !9
  %5234 = load i32, ptr %12, align 4, !tbaa !5
  %5235 = load i32, ptr %8, align 4, !tbaa !5
  %5236 = mul nsw i32 6, %5235
  %5237 = add nsw i32 %5234, %5236
  %5238 = sext i32 %5237 to i64
  %5239 = getelementptr inbounds double, ptr %5233, i64 %5238
  %5240 = load double, ptr %5239, align 8, !tbaa !11
  %5241 = call double @llvm.fmuladd.f64(double 0x3CB0F9118CF9AD5E, double %5240, double %5232)
  %5242 = load ptr, ptr %7, align 8, !tbaa !9
  %5243 = load i32, ptr %12, align 4, !tbaa !5
  %5244 = load i32, ptr %8, align 4, !tbaa !5
  %5245 = mul nsw i32 7, %5244
  %5246 = add nsw i32 %5243, %5245
  %5247 = sext i32 %5246 to i64
  %5248 = getelementptr inbounds double, ptr %5242, i64 %5247
  %5249 = load double, ptr %5248, align 8, !tbaa !11
  %5250 = call double @llvm.fmuladd.f64(double 0xBC9C6D9C52EC041A, double %5249, double %5241)
  %5251 = load ptr, ptr %7, align 8, !tbaa !9
  %5252 = load i32, ptr %12, align 4, !tbaa !5
  %5253 = load i32, ptr %8, align 4, !tbaa !5
  %5254 = mul nsw i32 8, %5253
  %5255 = add nsw i32 %5252, %5254
  %5256 = sext i32 %5255 to i64
  %5257 = getelementptr inbounds double, ptr %5251, i64 %5256
  %5258 = load double, ptr %5257, align 8, !tbaa !11
  %5259 = call double @llvm.fmuladd.f64(double 0xBC814C8EF8381536, double %5258, double %5250)
  %5260 = load ptr, ptr %7, align 8, !tbaa !9
  %5261 = load i32, ptr %12, align 4, !tbaa !5
  %5262 = load i32, ptr %8, align 4, !tbaa !5
  %5263 = mul nsw i32 9, %5262
  %5264 = add nsw i32 %5261, %5263
  %5265 = sext i32 %5264 to i64
  %5266 = getelementptr inbounds double, ptr %5260, i64 %5265
  %5267 = load double, ptr %5266, align 8, !tbaa !11
  %5268 = call double @llvm.fmuladd.f64(double 0xBC76355C6A0A6D53, double %5267, double %5259)
  %5269 = load ptr, ptr %7, align 8, !tbaa !9
  %5270 = load i32, ptr %12, align 4, !tbaa !5
  %5271 = load i32, ptr %8, align 4, !tbaa !5
  %5272 = mul nsw i32 10, %5271
  %5273 = add nsw i32 %5270, %5272
  %5274 = sext i32 %5273 to i64
  %5275 = getelementptr inbounds double, ptr %5269, i64 %5274
  %5276 = load double, ptr %5275, align 8, !tbaa !11
  %5277 = call double @llvm.fmuladd.f64(double 0x3C61B8141832C03E, double %5276, double %5268)
  %5278 = load ptr, ptr %7, align 8, !tbaa !9
  %5279 = load i32, ptr %12, align 4, !tbaa !5
  %5280 = load i32, ptr %8, align 4, !tbaa !5
  %5281 = mul nsw i32 11, %5280
  %5282 = add nsw i32 %5279, %5281
  %5283 = sext i32 %5282 to i64
  %5284 = getelementptr inbounds double, ptr %5278, i64 %5283
  %5285 = load double, ptr %5284, align 8, !tbaa !11
  %5286 = call double @llvm.fmuladd.f64(double 0xBC8B1A3C6A1C6E73, double %5285, double %5277)
  %5287 = load ptr, ptr %7, align 8, !tbaa !9
  %5288 = load i32, ptr %12, align 4, !tbaa !5
  %5289 = load i32, ptr %8, align 4, !tbaa !5
  %5290 = mul nsw i32 12, %5289
  %5291 = add nsw i32 %5288, %5290
  %5292 = sext i32 %5291 to i64
  %5293 = getelementptr inbounds double, ptr %5287, i64 %5292
  %5294 = load double, ptr %5293, align 8, !tbaa !11
  %5295 = call double @llvm.fmuladd.f64(double 0xBFE8AC73392375D0, double %5294, double %5286)
  %5296 = load ptr, ptr %7, align 8, !tbaa !9
  %5297 = load i32, ptr %12, align 4, !tbaa !5
  %5298 = load i32, ptr %8, align 4, !tbaa !5
  %5299 = mul nsw i32 13, %5298
  %5300 = add nsw i32 %5297, %5299
  %5301 = sext i32 %5300 to i64
  %5302 = getelementptr inbounds double, ptr %5296, i64 %5301
  %5303 = load double, ptr %5302, align 8, !tbaa !11
  %5304 = call double @llvm.fmuladd.f64(double 0x3FE4EDE8EE256113, double %5303, double %5295)
  %5305 = load ptr, ptr %7, align 8, !tbaa !9
  %5306 = load i32, ptr %12, align 4, !tbaa !5
  %5307 = load i32, ptr %8, align 4, !tbaa !5
  %5308 = mul nsw i32 14, %5307
  %5309 = add nsw i32 %5306, %5308
  %5310 = sext i32 %5309 to i64
  %5311 = getelementptr inbounds double, ptr %5305, i64 %5310
  %5312 = load double, ptr %5311, align 8, !tbaa !11
  %5313 = call double @llvm.fmuladd.f64(double 0x3FEA5488770B26BE, double %5312, double %5304)
  %5314 = load ptr, ptr %7, align 8, !tbaa !9
  %5315 = load i32, ptr %12, align 4, !tbaa !5
  %5316 = load i32, ptr %8, align 4, !tbaa !5
  %5317 = mul nsw i32 15, %5316
  %5318 = add nsw i32 %5315, %5317
  %5319 = sext i32 %5318 to i64
  %5320 = getelementptr inbounds double, ptr %5314, i64 %5319
  %5321 = load double, ptr %5320, align 8, !tbaa !11
  %5322 = call double @llvm.fmuladd.f64(double 0x3FF44CD742FC94E8, double %5321, double %5313)
  %5323 = load ptr, ptr %7, align 8, !tbaa !9
  %5324 = load i32, ptr %12, align 4, !tbaa !5
  %5325 = load i32, ptr %8, align 4, !tbaa !5
  %5326 = mul nsw i32 16, %5325
  %5327 = add nsw i32 %5324, %5326
  %5328 = sext i32 %5327 to i64
  %5329 = getelementptr inbounds double, ptr %5323, i64 %5328
  %5330 = load double, ptr %5329, align 8, !tbaa !11
  %5331 = call double @llvm.fmuladd.f64(double 0xBFFEF1F8514C97DD, double %5330, double %5322)
  %5332 = load ptr, ptr %7, align 8, !tbaa !9
  %5333 = load i32, ptr %12, align 4, !tbaa !5
  %5334 = load i32, ptr %8, align 4, !tbaa !5
  %5335 = mul nsw i32 17, %5334
  %5336 = add nsw i32 %5333, %5335
  %5337 = sext i32 %5336 to i64
  %5338 = getelementptr inbounds double, ptr %5332, i64 %5337
  %5339 = load double, ptr %5338, align 8, !tbaa !11
  %5340 = call double @llvm.fmuladd.f64(double 0xBFF01B2FE70C1193, double %5339, double %5331)
  store double %5340, ptr %11, align 8, !tbaa !11
  %5341 = load double, ptr %11, align 8, !tbaa !11
  %5342 = load ptr, ptr %9, align 8, !tbaa !9
  %5343 = load i32, ptr %12, align 4, !tbaa !5
  %5344 = load i32, ptr %10, align 4, !tbaa !5
  %5345 = mul nsw i32 30, %5344
  %5346 = add nsw i32 %5343, %5345
  %5347 = sext i32 %5346 to i64
  %5348 = getelementptr inbounds double, ptr %5342, i64 %5347
  %5349 = load double, ptr %5348, align 8, !tbaa !11
  %5350 = fadd double %5349, %5341
  store double %5350, ptr %5348, align 8, !tbaa !11
  %5351 = load ptr, ptr %7, align 8, !tbaa !9
  %5352 = load i32, ptr %12, align 4, !tbaa !5
  %5353 = load i32, ptr %8, align 4, !tbaa !5
  %5354 = mul nsw i32 0, %5353
  %5355 = add nsw i32 %5352, %5354
  %5356 = sext i32 %5355 to i64
  %5357 = getelementptr inbounds double, ptr %5351, i64 %5356
  %5358 = load double, ptr %5357, align 8, !tbaa !11
  %5359 = load ptr, ptr %7, align 8, !tbaa !9
  %5360 = load i32, ptr %12, align 4, !tbaa !5
  %5361 = load i32, ptr %8, align 4, !tbaa !5
  %5362 = mul nsw i32 1, %5361
  %5363 = add nsw i32 %5360, %5362
  %5364 = sext i32 %5363 to i64
  %5365 = getelementptr inbounds double, ptr %5359, i64 %5364
  %5366 = load double, ptr %5365, align 8, !tbaa !11
  %5367 = fmul double 0x3CC7A90CBDB122D2, %5366
  %5368 = call double @llvm.fmuladd.f64(double 0x3C8C175CC3AC3DA0, double %5358, double %5367)
  %5369 = load ptr, ptr %7, align 8, !tbaa !9
  %5370 = load i32, ptr %12, align 4, !tbaa !5
  %5371 = load i32, ptr %8, align 4, !tbaa !5
  %5372 = mul nsw i32 2, %5371
  %5373 = add nsw i32 %5370, %5372
  %5374 = sext i32 %5373 to i64
  %5375 = getelementptr inbounds double, ptr %5369, i64 %5374
  %5376 = load double, ptr %5375, align 8, !tbaa !11
  %5377 = call double @llvm.fmuladd.f64(double 0xBCC511D8384A1A55, double %5376, double %5368)
  %5378 = load ptr, ptr %7, align 8, !tbaa !9
  %5379 = load i32, ptr %12, align 4, !tbaa !5
  %5380 = load i32, ptr %8, align 4, !tbaa !5
  %5381 = mul nsw i32 3, %5380
  %5382 = add nsw i32 %5379, %5381
  %5383 = sext i32 %5382 to i64
  %5384 = getelementptr inbounds double, ptr %5378, i64 %5383
  %5385 = load double, ptr %5384, align 8, !tbaa !11
  %5386 = call double @llvm.fmuladd.f64(double 0x3CAADBF51C371479, double %5385, double %5377)
  %5387 = load ptr, ptr %7, align 8, !tbaa !9
  %5388 = load i32, ptr %12, align 4, !tbaa !5
  %5389 = load i32, ptr %8, align 4, !tbaa !5
  %5390 = mul nsw i32 4, %5389
  %5391 = add nsw i32 %5388, %5390
  %5392 = sext i32 %5391 to i64
  %5393 = getelementptr inbounds double, ptr %5387, i64 %5392
  %5394 = load double, ptr %5393, align 8, !tbaa !11
  %5395 = call double @llvm.fmuladd.f64(double 0x3CA4D75F1529F75A, double %5394, double %5386)
  %5396 = load ptr, ptr %7, align 8, !tbaa !9
  %5397 = load i32, ptr %12, align 4, !tbaa !5
  %5398 = load i32, ptr %8, align 4, !tbaa !5
  %5399 = mul nsw i32 5, %5398
  %5400 = add nsw i32 %5397, %5399
  %5401 = sext i32 %5400 to i64
  %5402 = getelementptr inbounds double, ptr %5396, i64 %5401
  %5403 = load double, ptr %5402, align 8, !tbaa !11
  %5404 = call double @llvm.fmuladd.f64(double 0xBCB8F2F00581C5B3, double %5403, double %5395)
  %5405 = load ptr, ptr %7, align 8, !tbaa !9
  %5406 = load i32, ptr %12, align 4, !tbaa !5
  %5407 = load i32, ptr %8, align 4, !tbaa !5
  %5408 = mul nsw i32 6, %5407
  %5409 = add nsw i32 %5406, %5408
  %5410 = sext i32 %5409 to i64
  %5411 = getelementptr inbounds double, ptr %5405, i64 %5410
  %5412 = load double, ptr %5411, align 8, !tbaa !11
  %5413 = call double @llvm.fmuladd.f64(double 0x3CB256380966451A, double %5412, double %5404)
  %5414 = load ptr, ptr %7, align 8, !tbaa !9
  %5415 = load i32, ptr %12, align 4, !tbaa !5
  %5416 = load i32, ptr %8, align 4, !tbaa !5
  %5417 = mul nsw i32 7, %5416
  %5418 = add nsw i32 %5415, %5417
  %5419 = sext i32 %5418 to i64
  %5420 = getelementptr inbounds double, ptr %5414, i64 %5419
  %5421 = load double, ptr %5420, align 8, !tbaa !11
  %5422 = call double @llvm.fmuladd.f64(double 0x3CC01E6C16082D54, double %5421, double %5413)
  %5423 = load ptr, ptr %7, align 8, !tbaa !9
  %5424 = load i32, ptr %12, align 4, !tbaa !5
  %5425 = load i32, ptr %8, align 4, !tbaa !5
  %5426 = mul nsw i32 8, %5425
  %5427 = add nsw i32 %5424, %5426
  %5428 = sext i32 %5427 to i64
  %5429 = getelementptr inbounds double, ptr %5423, i64 %5428
  %5430 = load double, ptr %5429, align 8, !tbaa !11
  %5431 = call double @llvm.fmuladd.f64(double 0x3CAA303E978A5038, double %5430, double %5422)
  %5432 = load ptr, ptr %7, align 8, !tbaa !9
  %5433 = load i32, ptr %12, align 4, !tbaa !5
  %5434 = load i32, ptr %8, align 4, !tbaa !5
  %5435 = mul nsw i32 9, %5434
  %5436 = add nsw i32 %5433, %5435
  %5437 = sext i32 %5436 to i64
  %5438 = getelementptr inbounds double, ptr %5432, i64 %5437
  %5439 = load double, ptr %5438, align 8, !tbaa !11
  %5440 = call double @llvm.fmuladd.f64(double 0x3CAC5EADE484449F, double %5439, double %5431)
  %5441 = load ptr, ptr %7, align 8, !tbaa !9
  %5442 = load i32, ptr %12, align 4, !tbaa !5
  %5443 = load i32, ptr %8, align 4, !tbaa !5
  %5444 = mul nsw i32 10, %5443
  %5445 = add nsw i32 %5442, %5444
  %5446 = sext i32 %5445 to i64
  %5447 = getelementptr inbounds double, ptr %5441, i64 %5446
  %5448 = load double, ptr %5447, align 8, !tbaa !11
  %5449 = call double @llvm.fmuladd.f64(double 0x3CAC4A69A26D89C3, double %5448, double %5440)
  %5450 = load ptr, ptr %7, align 8, !tbaa !9
  %5451 = load i32, ptr %12, align 4, !tbaa !5
  %5452 = load i32, ptr %8, align 4, !tbaa !5
  %5453 = mul nsw i32 11, %5452
  %5454 = add nsw i32 %5451, %5453
  %5455 = sext i32 %5454 to i64
  %5456 = getelementptr inbounds double, ptr %5450, i64 %5455
  %5457 = load double, ptr %5456, align 8, !tbaa !11
  %5458 = call double @llvm.fmuladd.f64(double 0x3C839062B03D962B, double %5457, double %5449)
  %5459 = load ptr, ptr %7, align 8, !tbaa !9
  %5460 = load i32, ptr %12, align 4, !tbaa !5
  %5461 = load i32, ptr %8, align 4, !tbaa !5
  %5462 = mul nsw i32 12, %5461
  %5463 = add nsw i32 %5460, %5462
  %5464 = sext i32 %5463 to i64
  %5465 = getelementptr inbounds double, ptr %5459, i64 %5464
  %5466 = load double, ptr %5465, align 8, !tbaa !11
  %5467 = call double @llvm.fmuladd.f64(double 0xBF7DFA2300BBB200, double %5466, double %5458)
  %5468 = load ptr, ptr %7, align 8, !tbaa !9
  %5469 = load i32, ptr %12, align 4, !tbaa !5
  %5470 = load i32, ptr %8, align 4, !tbaa !5
  %5471 = mul nsw i32 13, %5470
  %5472 = add nsw i32 %5469, %5471
  %5473 = sext i32 %5472 to i64
  %5474 = getelementptr inbounds double, ptr %5468, i64 %5473
  %5475 = load double, ptr %5474, align 8, !tbaa !11
  %5476 = call double @llvm.fmuladd.f64(double 0x3FF44E3F94172F46, double %5475, double %5467)
  %5477 = load ptr, ptr %7, align 8, !tbaa !9
  %5478 = load i32, ptr %12, align 4, !tbaa !5
  %5479 = load i32, ptr %8, align 4, !tbaa !5
  %5480 = mul nsw i32 14, %5479
  %5481 = add nsw i32 %5478, %5480
  %5482 = sext i32 %5481 to i64
  %5483 = getelementptr inbounds double, ptr %5477, i64 %5482
  %5484 = load double, ptr %5483, align 8, !tbaa !11
  %5485 = call double @llvm.fmuladd.f64(double 0x3FB9ECDD981278FA, double %5484, double %5476)
  %5486 = load ptr, ptr %7, align 8, !tbaa !9
  %5487 = load i32, ptr %12, align 4, !tbaa !5
  %5488 = load i32, ptr %8, align 4, !tbaa !5
  %5489 = mul nsw i32 15, %5488
  %5490 = add nsw i32 %5487, %5489
  %5491 = sext i32 %5490 to i64
  %5492 = getelementptr inbounds double, ptr %5486, i64 %5491
  %5493 = load double, ptr %5492, align 8, !tbaa !11
  %5494 = call double @llvm.fmuladd.f64(double 0xBFE4FBED5D8A964C, double %5493, double %5485)
  %5495 = load ptr, ptr %7, align 8, !tbaa !9
  %5496 = load i32, ptr %12, align 4, !tbaa !5
  %5497 = load i32, ptr %8, align 4, !tbaa !5
  %5498 = mul nsw i32 16, %5497
  %5499 = add nsw i32 %5496, %5498
  %5500 = sext i32 %5499 to i64
  %5501 = getelementptr inbounds double, ptr %5495, i64 %5500
  %5502 = load double, ptr %5501, align 8, !tbaa !11
  %5503 = call double @llvm.fmuladd.f64(double 0xBF83952FC55A7394, double %5502, double %5494)
  %5504 = load ptr, ptr %7, align 8, !tbaa !9
  %5505 = load i32, ptr %12, align 4, !tbaa !5
  %5506 = load i32, ptr %8, align 4, !tbaa !5
  %5507 = mul nsw i32 17, %5506
  %5508 = add nsw i32 %5505, %5507
  %5509 = sext i32 %5508 to i64
  %5510 = getelementptr inbounds double, ptr %5504, i64 %5509
  %5511 = load double, ptr %5510, align 8, !tbaa !11
  %5512 = call double @llvm.fmuladd.f64(double 0x3FD50884576D0BB0, double %5511, double %5503)
  store double %5512, ptr %11, align 8, !tbaa !11
  %5513 = load double, ptr %11, align 8, !tbaa !11
  %5514 = load ptr, ptr %9, align 8, !tbaa !9
  %5515 = load i32, ptr %12, align 4, !tbaa !5
  %5516 = load i32, ptr %10, align 4, !tbaa !5
  %5517 = mul nsw i32 31, %5516
  %5518 = add nsw i32 %5515, %5517
  %5519 = sext i32 %5518 to i64
  %5520 = getelementptr inbounds double, ptr %5514, i64 %5519
  %5521 = load double, ptr %5520, align 8, !tbaa !11
  %5522 = fadd double %5521, %5513
  store double %5522, ptr %5520, align 8, !tbaa !11
  %5523 = load ptr, ptr %7, align 8, !tbaa !9
  %5524 = load i32, ptr %12, align 4, !tbaa !5
  %5525 = load i32, ptr %8, align 4, !tbaa !5
  %5526 = mul nsw i32 0, %5525
  %5527 = add nsw i32 %5524, %5526
  %5528 = sext i32 %5527 to i64
  %5529 = getelementptr inbounds double, ptr %5523, i64 %5528
  %5530 = load double, ptr %5529, align 8, !tbaa !11
  %5531 = load ptr, ptr %7, align 8, !tbaa !9
  %5532 = load i32, ptr %12, align 4, !tbaa !5
  %5533 = load i32, ptr %8, align 4, !tbaa !5
  %5534 = mul nsw i32 1, %5533
  %5535 = add nsw i32 %5532, %5534
  %5536 = sext i32 %5535 to i64
  %5537 = getelementptr inbounds double, ptr %5531, i64 %5536
  %5538 = load double, ptr %5537, align 8, !tbaa !11
  %5539 = fmul double 0xBCA27EC017855878, %5538
  %5540 = call double @llvm.fmuladd.f64(double 0x3CC3A3AFB95FF4E5, double %5530, double %5539)
  %5541 = load ptr, ptr %7, align 8, !tbaa !9
  %5542 = load i32, ptr %12, align 4, !tbaa !5
  %5543 = load i32, ptr %8, align 4, !tbaa !5
  %5544 = mul nsw i32 2, %5543
  %5545 = add nsw i32 %5542, %5544
  %5546 = sext i32 %5545 to i64
  %5547 = getelementptr inbounds double, ptr %5541, i64 %5546
  %5548 = load double, ptr %5547, align 8, !tbaa !11
  %5549 = call double @llvm.fmuladd.f64(double 0x3CD54F70D2EB9A18, double %5548, double %5540)
  %5550 = load ptr, ptr %7, align 8, !tbaa !9
  %5551 = load i32, ptr %12, align 4, !tbaa !5
  %5552 = load i32, ptr %8, align 4, !tbaa !5
  %5553 = mul nsw i32 3, %5552
  %5554 = add nsw i32 %5551, %5553
  %5555 = sext i32 %5554 to i64
  %5556 = getelementptr inbounds double, ptr %5550, i64 %5555
  %5557 = load double, ptr %5556, align 8, !tbaa !11
  %5558 = call double @llvm.fmuladd.f64(double 0x3CABF738548B48D5, double %5557, double %5549)
  %5559 = load ptr, ptr %7, align 8, !tbaa !9
  %5560 = load i32, ptr %12, align 4, !tbaa !5
  %5561 = load i32, ptr %8, align 4, !tbaa !5
  %5562 = mul nsw i32 4, %5561
  %5563 = add nsw i32 %5560, %5562
  %5564 = sext i32 %5563 to i64
  %5565 = getelementptr inbounds double, ptr %5559, i64 %5564
  %5566 = load double, ptr %5565, align 8, !tbaa !11
  %5567 = call double @llvm.fmuladd.f64(double 0xBCCFEC3A2A4C4C78, double %5566, double %5558)
  %5568 = load ptr, ptr %7, align 8, !tbaa !9
  %5569 = load i32, ptr %12, align 4, !tbaa !5
  %5570 = load i32, ptr %8, align 4, !tbaa !5
  %5571 = mul nsw i32 5, %5570
  %5572 = add nsw i32 %5569, %5571
  %5573 = sext i32 %5572 to i64
  %5574 = getelementptr inbounds double, ptr %5568, i64 %5573
  %5575 = load double, ptr %5574, align 8, !tbaa !11
  %5576 = call double @llvm.fmuladd.f64(double 0x3C932E31FBD492BC, double %5575, double %5567)
  %5577 = load ptr, ptr %7, align 8, !tbaa !9
  %5578 = load i32, ptr %12, align 4, !tbaa !5
  %5579 = load i32, ptr %8, align 4, !tbaa !5
  %5580 = mul nsw i32 6, %5579
  %5581 = add nsw i32 %5578, %5580
  %5582 = sext i32 %5581 to i64
  %5583 = getelementptr inbounds double, ptr %5577, i64 %5582
  %5584 = load double, ptr %5583, align 8, !tbaa !11
  %5585 = call double @llvm.fmuladd.f64(double 0x3CA535998BAB6E00, double %5584, double %5576)
  %5586 = load ptr, ptr %7, align 8, !tbaa !9
  %5587 = load i32, ptr %12, align 4, !tbaa !5
  %5588 = load i32, ptr %8, align 4, !tbaa !5
  %5589 = mul nsw i32 7, %5588
  %5590 = add nsw i32 %5587, %5589
  %5591 = sext i32 %5590 to i64
  %5592 = getelementptr inbounds double, ptr %5586, i64 %5591
  %5593 = load double, ptr %5592, align 8, !tbaa !11
  %5594 = call double @llvm.fmuladd.f64(double 0x3C6197D309C7AB34, double %5593, double %5585)
  %5595 = load ptr, ptr %7, align 8, !tbaa !9
  %5596 = load i32, ptr %12, align 4, !tbaa !5
  %5597 = load i32, ptr %8, align 4, !tbaa !5
  %5598 = mul nsw i32 8, %5597
  %5599 = add nsw i32 %5596, %5598
  %5600 = sext i32 %5599 to i64
  %5601 = getelementptr inbounds double, ptr %5595, i64 %5600
  %5602 = load double, ptr %5601, align 8, !tbaa !11
  %5603 = call double @llvm.fmuladd.f64(double 0xBCA84349E84D9D73, double %5602, double %5594)
  %5604 = load ptr, ptr %7, align 8, !tbaa !9
  %5605 = load i32, ptr %12, align 4, !tbaa !5
  %5606 = load i32, ptr %8, align 4, !tbaa !5
  %5607 = mul nsw i32 9, %5606
  %5608 = add nsw i32 %5605, %5607
  %5609 = sext i32 %5608 to i64
  %5610 = getelementptr inbounds double, ptr %5604, i64 %5609
  %5611 = load double, ptr %5610, align 8, !tbaa !11
  %5612 = call double @llvm.fmuladd.f64(double 0x3CA4C44C023F42CC, double %5611, double %5603)
  %5613 = load ptr, ptr %7, align 8, !tbaa !9
  %5614 = load i32, ptr %12, align 4, !tbaa !5
  %5615 = load i32, ptr %8, align 4, !tbaa !5
  %5616 = mul nsw i32 10, %5615
  %5617 = add nsw i32 %5614, %5616
  %5618 = sext i32 %5617 to i64
  %5619 = getelementptr inbounds double, ptr %5613, i64 %5618
  %5620 = load double, ptr %5619, align 8, !tbaa !11
  %5621 = call double @llvm.fmuladd.f64(double 0x3CCE4E90983F720B, double %5620, double %5612)
  %5622 = load ptr, ptr %7, align 8, !tbaa !9
  %5623 = load i32, ptr %12, align 4, !tbaa !5
  %5624 = load i32, ptr %8, align 4, !tbaa !5
  %5625 = mul nsw i32 11, %5624
  %5626 = add nsw i32 %5623, %5625
  %5627 = sext i32 %5626 to i64
  %5628 = getelementptr inbounds double, ptr %5622, i64 %5627
  %5629 = load double, ptr %5628, align 8, !tbaa !11
  %5630 = call double @llvm.fmuladd.f64(double 0xBCBC38460D0EF925, double %5629, double %5621)
  %5631 = load ptr, ptr %7, align 8, !tbaa !9
  %5632 = load i32, ptr %12, align 4, !tbaa !5
  %5633 = load i32, ptr %8, align 4, !tbaa !5
  %5634 = mul nsw i32 12, %5633
  %5635 = add nsw i32 %5632, %5634
  %5636 = sext i32 %5635 to i64
  %5637 = getelementptr inbounds double, ptr %5631, i64 %5636
  %5638 = load double, ptr %5637, align 8, !tbaa !11
  %5639 = call double @llvm.fmuladd.f64(double 0xBFDFFE63E285176B, double %5638, double %5630)
  %5640 = load ptr, ptr %7, align 8, !tbaa !9
  %5641 = load i32, ptr %12, align 4, !tbaa !5
  %5642 = load i32, ptr %8, align 4, !tbaa !5
  %5643 = mul nsw i32 13, %5642
  %5644 = add nsw i32 %5641, %5643
  %5645 = sext i32 %5644 to i64
  %5646 = getelementptr inbounds double, ptr %5640, i64 %5645
  %5647 = load double, ptr %5646, align 8, !tbaa !11
  %5648 = call double @llvm.fmuladd.f64(double 0xBFE1EC4181248AE3, double %5647, double %5639)
  %5649 = load ptr, ptr %7, align 8, !tbaa !9
  %5650 = load i32, ptr %12, align 4, !tbaa !5
  %5651 = load i32, ptr %8, align 4, !tbaa !5
  %5652 = mul nsw i32 14, %5651
  %5653 = add nsw i32 %5650, %5652
  %5654 = sext i32 %5653 to i64
  %5655 = getelementptr inbounds double, ptr %5649, i64 %5654
  %5656 = load double, ptr %5655, align 8, !tbaa !11
  %5657 = call double @llvm.fmuladd.f64(double 0x4000E9CE75C2FBF6, double %5656, double %5648)
  %5658 = load ptr, ptr %7, align 8, !tbaa !9
  %5659 = load i32, ptr %12, align 4, !tbaa !5
  %5660 = load i32, ptr %8, align 4, !tbaa !5
  %5661 = mul nsw i32 15, %5660
  %5662 = add nsw i32 %5659, %5661
  %5663 = sext i32 %5662 to i64
  %5664 = getelementptr inbounds double, ptr %5658, i64 %5663
  %5665 = load double, ptr %5664, align 8, !tbaa !11
  %5666 = call double @llvm.fmuladd.f64(double 0x3FF2343957F3A8AF, double %5665, double %5657)
  %5667 = load ptr, ptr %7, align 8, !tbaa !9
  %5668 = load i32, ptr %12, align 4, !tbaa !5
  %5669 = load i32, ptr %8, align 4, !tbaa !5
  %5670 = mul nsw i32 16, %5669
  %5671 = add nsw i32 %5668, %5670
  %5672 = sext i32 %5671 to i64
  %5673 = getelementptr inbounds double, ptr %5667, i64 %5672
  %5674 = load double, ptr %5673, align 8, !tbaa !11
  %5675 = call double @llvm.fmuladd.f64(double 0x3FF31D88B253B07F, double %5674, double %5666)
  %5676 = load ptr, ptr %7, align 8, !tbaa !9
  %5677 = load i32, ptr %12, align 4, !tbaa !5
  %5678 = load i32, ptr %8, align 4, !tbaa !5
  %5679 = mul nsw i32 17, %5678
  %5680 = add nsw i32 %5677, %5679
  %5681 = sext i32 %5680 to i64
  %5682 = getelementptr inbounds double, ptr %5676, i64 %5681
  %5683 = load double, ptr %5682, align 8, !tbaa !11
  %5684 = call double @llvm.fmuladd.f64(double 0xBFEE712F1EF7D894, double %5683, double %5675)
  store double %5684, ptr %11, align 8, !tbaa !11
  %5685 = load double, ptr %11, align 8, !tbaa !11
  %5686 = load ptr, ptr %9, align 8, !tbaa !9
  %5687 = load i32, ptr %12, align 4, !tbaa !5
  %5688 = load i32, ptr %10, align 4, !tbaa !5
  %5689 = mul nsw i32 32, %5688
  %5690 = add nsw i32 %5687, %5689
  %5691 = sext i32 %5690 to i64
  %5692 = getelementptr inbounds double, ptr %5686, i64 %5691
  %5693 = load double, ptr %5692, align 8, !tbaa !11
  %5694 = fadd double %5693, %5685
  store double %5694, ptr %5692, align 8, !tbaa !11
  %5695 = load ptr, ptr %7, align 8, !tbaa !9
  %5696 = load i32, ptr %12, align 4, !tbaa !5
  %5697 = load i32, ptr %8, align 4, !tbaa !5
  %5698 = mul nsw i32 0, %5697
  %5699 = add nsw i32 %5696, %5698
  %5700 = sext i32 %5699 to i64
  %5701 = getelementptr inbounds double, ptr %5695, i64 %5700
  %5702 = load double, ptr %5701, align 8, !tbaa !11
  %5703 = load ptr, ptr %7, align 8, !tbaa !9
  %5704 = load i32, ptr %12, align 4, !tbaa !5
  %5705 = load i32, ptr %8, align 4, !tbaa !5
  %5706 = mul nsw i32 1, %5705
  %5707 = add nsw i32 %5704, %5706
  %5708 = sext i32 %5707 to i64
  %5709 = getelementptr inbounds double, ptr %5703, i64 %5708
  %5710 = load double, ptr %5709, align 8, !tbaa !11
  %5711 = fmul double 0xBC7865999DB92F51, %5710
  %5712 = call double @llvm.fmuladd.f64(double 0xBCB2A04E51D66FCE, double %5702, double %5711)
  %5713 = load ptr, ptr %7, align 8, !tbaa !9
  %5714 = load i32, ptr %12, align 4, !tbaa !5
  %5715 = load i32, ptr %8, align 4, !tbaa !5
  %5716 = mul nsw i32 2, %5715
  %5717 = add nsw i32 %5714, %5716
  %5718 = sext i32 %5717 to i64
  %5719 = getelementptr inbounds double, ptr %5713, i64 %5718
  %5720 = load double, ptr %5719, align 8, !tbaa !11
  %5721 = call double @llvm.fmuladd.f64(double 0x3C88B903F6BC17F0, double %5720, double %5712)
  %5722 = load ptr, ptr %7, align 8, !tbaa !9
  %5723 = load i32, ptr %12, align 4, !tbaa !5
  %5724 = load i32, ptr %8, align 4, !tbaa !5
  %5725 = mul nsw i32 3, %5724
  %5726 = add nsw i32 %5723, %5725
  %5727 = sext i32 %5726 to i64
  %5728 = getelementptr inbounds double, ptr %5722, i64 %5727
  %5729 = load double, ptr %5728, align 8, !tbaa !11
  %5730 = call double @llvm.fmuladd.f64(double 0x3CC55C346E604B2A, double %5729, double %5721)
  %5731 = load ptr, ptr %7, align 8, !tbaa !9
  %5732 = load i32, ptr %12, align 4, !tbaa !5
  %5733 = load i32, ptr %8, align 4, !tbaa !5
  %5734 = mul nsw i32 4, %5733
  %5735 = add nsw i32 %5732, %5734
  %5736 = sext i32 %5735 to i64
  %5737 = getelementptr inbounds double, ptr %5731, i64 %5736
  %5738 = load double, ptr %5737, align 8, !tbaa !11
  %5739 = call double @llvm.fmuladd.f64(double 0xBC997FE57E87E294, double %5738, double %5730)
  %5740 = load ptr, ptr %7, align 8, !tbaa !9
  %5741 = load i32, ptr %12, align 4, !tbaa !5
  %5742 = load i32, ptr %8, align 4, !tbaa !5
  %5743 = mul nsw i32 5, %5742
  %5744 = add nsw i32 %5741, %5743
  %5745 = sext i32 %5744 to i64
  %5746 = getelementptr inbounds double, ptr %5740, i64 %5745
  %5747 = load double, ptr %5746, align 8, !tbaa !11
  %5748 = call double @llvm.fmuladd.f64(double 0xBC892C4067E5CCE7, double %5747, double %5739)
  %5749 = load ptr, ptr %7, align 8, !tbaa !9
  %5750 = load i32, ptr %12, align 4, !tbaa !5
  %5751 = load i32, ptr %8, align 4, !tbaa !5
  %5752 = mul nsw i32 6, %5751
  %5753 = add nsw i32 %5750, %5752
  %5754 = sext i32 %5753 to i64
  %5755 = getelementptr inbounds double, ptr %5749, i64 %5754
  %5756 = load double, ptr %5755, align 8, !tbaa !11
  %5757 = call double @llvm.fmuladd.f64(double 0x3C9195CCC6FDDC34, double %5756, double %5748)
  %5758 = load ptr, ptr %7, align 8, !tbaa !9
  %5759 = load i32, ptr %12, align 4, !tbaa !5
  %5760 = load i32, ptr %8, align 4, !tbaa !5
  %5761 = mul nsw i32 7, %5760
  %5762 = add nsw i32 %5759, %5761
  %5763 = sext i32 %5762 to i64
  %5764 = getelementptr inbounds double, ptr %5758, i64 %5763
  %5765 = load double, ptr %5764, align 8, !tbaa !11
  %5766 = call double @llvm.fmuladd.f64(double 0x3C90C2BEA1BFB3F8, double %5765, double %5757)
  %5767 = load ptr, ptr %7, align 8, !tbaa !9
  %5768 = load i32, ptr %12, align 4, !tbaa !5
  %5769 = load i32, ptr %8, align 4, !tbaa !5
  %5770 = mul nsw i32 8, %5769
  %5771 = add nsw i32 %5768, %5770
  %5772 = sext i32 %5771 to i64
  %5773 = getelementptr inbounds double, ptr %5767, i64 %5772
  %5774 = load double, ptr %5773, align 8, !tbaa !11
  %5775 = call double @llvm.fmuladd.f64(double 0xBC83C8973FFE3109, double %5774, double %5766)
  %5776 = load ptr, ptr %7, align 8, !tbaa !9
  %5777 = load i32, ptr %12, align 4, !tbaa !5
  %5778 = load i32, ptr %8, align 4, !tbaa !5
  %5779 = mul nsw i32 9, %5778
  %5780 = add nsw i32 %5777, %5779
  %5781 = sext i32 %5780 to i64
  %5782 = getelementptr inbounds double, ptr %5776, i64 %5781
  %5783 = load double, ptr %5782, align 8, !tbaa !11
  %5784 = call double @llvm.fmuladd.f64(double 0x3CA202E0ECF2957E, double %5783, double %5775)
  %5785 = load ptr, ptr %7, align 8, !tbaa !9
  %5786 = load i32, ptr %12, align 4, !tbaa !5
  %5787 = load i32, ptr %8, align 4, !tbaa !5
  %5788 = mul nsw i32 10, %5787
  %5789 = add nsw i32 %5786, %5788
  %5790 = sext i32 %5789 to i64
  %5791 = getelementptr inbounds double, ptr %5785, i64 %5790
  %5792 = load double, ptr %5791, align 8, !tbaa !11
  %5793 = call double @llvm.fmuladd.f64(double 0xBC9E71BA1E232157, double %5792, double %5784)
  %5794 = load ptr, ptr %7, align 8, !tbaa !9
  %5795 = load i32, ptr %12, align 4, !tbaa !5
  %5796 = load i32, ptr %8, align 4, !tbaa !5
  %5797 = mul nsw i32 11, %5796
  %5798 = add nsw i32 %5795, %5797
  %5799 = sext i32 %5798 to i64
  %5800 = getelementptr inbounds double, ptr %5794, i64 %5799
  %5801 = load double, ptr %5800, align 8, !tbaa !11
  %5802 = call double @llvm.fmuladd.f64(double 0xBC7C542BFA7534B8, double %5801, double %5793)
  %5803 = load ptr, ptr %7, align 8, !tbaa !9
  %5804 = load i32, ptr %12, align 4, !tbaa !5
  %5805 = load i32, ptr %8, align 4, !tbaa !5
  %5806 = mul nsw i32 12, %5805
  %5807 = add nsw i32 %5804, %5806
  %5808 = sext i32 %5807 to i64
  %5809 = getelementptr inbounds double, ptr %5803, i64 %5808
  %5810 = load double, ptr %5809, align 8, !tbaa !11
  %5811 = call double @llvm.fmuladd.f64(double 0xBFB17C71DD2D5160, double %5810, double %5802)
  %5812 = load ptr, ptr %7, align 8, !tbaa !9
  %5813 = load i32, ptr %12, align 4, !tbaa !5
  %5814 = load i32, ptr %8, align 4, !tbaa !5
  %5815 = mul nsw i32 13, %5814
  %5816 = add nsw i32 %5813, %5815
  %5817 = sext i32 %5816 to i64
  %5818 = getelementptr inbounds double, ptr %5812, i64 %5817
  %5819 = load double, ptr %5818, align 8, !tbaa !11
  %5820 = call double @llvm.fmuladd.f64(double 0x3FF3237A82AF9ED0, double %5819, double %5811)
  %5821 = load ptr, ptr %7, align 8, !tbaa !9
  %5822 = load i32, ptr %12, align 4, !tbaa !5
  %5823 = load i32, ptr %8, align 4, !tbaa !5
  %5824 = mul nsw i32 14, %5823
  %5825 = add nsw i32 %5822, %5824
  %5826 = sext i32 %5825 to i64
  %5827 = getelementptr inbounds double, ptr %5821, i64 %5826
  %5828 = load double, ptr %5827, align 8, !tbaa !11
  %5829 = call double @llvm.fmuladd.f64(double 0xBF76E8A1969E6B00, double %5828, double %5820)
  %5830 = load ptr, ptr %7, align 8, !tbaa !9
  %5831 = load i32, ptr %12, align 4, !tbaa !5
  %5832 = load i32, ptr %8, align 4, !tbaa !5
  %5833 = mul nsw i32 15, %5832
  %5834 = add nsw i32 %5831, %5833
  %5835 = sext i32 %5834 to i64
  %5836 = getelementptr inbounds double, ptr %5830, i64 %5835
  %5837 = load double, ptr %5836, align 8, !tbaa !11
  %5838 = call double @llvm.fmuladd.f64(double 0x3FFBC4AD9C53A55A, double %5837, double %5829)
  %5839 = load ptr, ptr %7, align 8, !tbaa !9
  %5840 = load i32, ptr %12, align 4, !tbaa !5
  %5841 = load i32, ptr %8, align 4, !tbaa !5
  %5842 = mul nsw i32 16, %5841
  %5843 = add nsw i32 %5840, %5842
  %5844 = sext i32 %5843 to i64
  %5845 = getelementptr inbounds double, ptr %5839, i64 %5844
  %5846 = load double, ptr %5845, align 8, !tbaa !11
  %5847 = call double @llvm.fmuladd.f64(double 0x3FC179BD32D3DC68, double %5846, double %5838)
  %5848 = load ptr, ptr %7, align 8, !tbaa !9
  %5849 = load i32, ptr %12, align 4, !tbaa !5
  %5850 = load i32, ptr %8, align 4, !tbaa !5
  %5851 = mul nsw i32 17, %5850
  %5852 = add nsw i32 %5849, %5851
  %5853 = sext i32 %5852 to i64
  %5854 = getelementptr inbounds double, ptr %5848, i64 %5853
  %5855 = load double, ptr %5854, align 8, !tbaa !11
  %5856 = call double @llvm.fmuladd.f64(double 0x3FF1CA3B98F4942B, double %5855, double %5847)
  store double %5856, ptr %11, align 8, !tbaa !11
  %5857 = load double, ptr %11, align 8, !tbaa !11
  %5858 = load ptr, ptr %9, align 8, !tbaa !9
  %5859 = load i32, ptr %12, align 4, !tbaa !5
  %5860 = load i32, ptr %10, align 4, !tbaa !5
  %5861 = mul nsw i32 33, %5860
  %5862 = add nsw i32 %5859, %5861
  %5863 = sext i32 %5862 to i64
  %5864 = getelementptr inbounds double, ptr %5858, i64 %5863
  %5865 = load double, ptr %5864, align 8, !tbaa !11
  %5866 = fadd double %5865, %5857
  store double %5866, ptr %5864, align 8, !tbaa !11
  %5867 = load ptr, ptr %7, align 8, !tbaa !9
  %5868 = load i32, ptr %12, align 4, !tbaa !5
  %5869 = load i32, ptr %8, align 4, !tbaa !5
  %5870 = mul nsw i32 0, %5869
  %5871 = add nsw i32 %5868, %5870
  %5872 = sext i32 %5871 to i64
  %5873 = getelementptr inbounds double, ptr %5867, i64 %5872
  %5874 = load double, ptr %5873, align 8, !tbaa !11
  %5875 = load ptr, ptr %7, align 8, !tbaa !9
  %5876 = load i32, ptr %12, align 4, !tbaa !5
  %5877 = load i32, ptr %8, align 4, !tbaa !5
  %5878 = mul nsw i32 1, %5877
  %5879 = add nsw i32 %5876, %5878
  %5880 = sext i32 %5879 to i64
  %5881 = getelementptr inbounds double, ptr %5875, i64 %5880
  %5882 = load double, ptr %5881, align 8, !tbaa !11
  %5883 = fmul double 0xBCA57F1A1B03E36B, %5882
  %5884 = call double @llvm.fmuladd.f64(double 0xBCC1297A2A184282, double %5874, double %5883)
  %5885 = load ptr, ptr %7, align 8, !tbaa !9
  %5886 = load i32, ptr %12, align 4, !tbaa !5
  %5887 = load i32, ptr %8, align 4, !tbaa !5
  %5888 = mul nsw i32 2, %5887
  %5889 = add nsw i32 %5886, %5888
  %5890 = sext i32 %5889 to i64
  %5891 = getelementptr inbounds double, ptr %5885, i64 %5890
  %5892 = load double, ptr %5891, align 8, !tbaa !11
  %5893 = call double @llvm.fmuladd.f64(double 0xBCB10C6112FA5C6E, double %5892, double %5884)
  %5894 = load ptr, ptr %7, align 8, !tbaa !9
  %5895 = load i32, ptr %12, align 4, !tbaa !5
  %5896 = load i32, ptr %8, align 4, !tbaa !5
  %5897 = mul nsw i32 3, %5896
  %5898 = add nsw i32 %5895, %5897
  %5899 = sext i32 %5898 to i64
  %5900 = getelementptr inbounds double, ptr %5894, i64 %5899
  %5901 = load double, ptr %5900, align 8, !tbaa !11
  %5902 = call double @llvm.fmuladd.f64(double 0xBCBF0D117BE35C9F, double %5901, double %5893)
  %5903 = load ptr, ptr %7, align 8, !tbaa !9
  %5904 = load i32, ptr %12, align 4, !tbaa !5
  %5905 = load i32, ptr %8, align 4, !tbaa !5
  %5906 = mul nsw i32 4, %5905
  %5907 = add nsw i32 %5904, %5906
  %5908 = sext i32 %5907 to i64
  %5909 = getelementptr inbounds double, ptr %5903, i64 %5908
  %5910 = load double, ptr %5909, align 8, !tbaa !11
  %5911 = call double @llvm.fmuladd.f64(double 0x3CBC248A09C9692D, double %5910, double %5902)
  %5912 = load ptr, ptr %7, align 8, !tbaa !9
  %5913 = load i32, ptr %12, align 4, !tbaa !5
  %5914 = load i32, ptr %8, align 4, !tbaa !5
  %5915 = mul nsw i32 5, %5914
  %5916 = add nsw i32 %5913, %5915
  %5917 = sext i32 %5916 to i64
  %5918 = getelementptr inbounds double, ptr %5912, i64 %5917
  %5919 = load double, ptr %5918, align 8, !tbaa !11
  %5920 = call double @llvm.fmuladd.f64(double 0x3CBF98C60EE20B5A, double %5919, double %5911)
  %5921 = load ptr, ptr %7, align 8, !tbaa !9
  %5922 = load i32, ptr %12, align 4, !tbaa !5
  %5923 = load i32, ptr %8, align 4, !tbaa !5
  %5924 = mul nsw i32 6, %5923
  %5925 = add nsw i32 %5922, %5924
  %5926 = sext i32 %5925 to i64
  %5927 = getelementptr inbounds double, ptr %5921, i64 %5926
  %5928 = load double, ptr %5927, align 8, !tbaa !11
  %5929 = call double @llvm.fmuladd.f64(double 0xBC8722D375CED18B, double %5928, double %5920)
  %5930 = load ptr, ptr %7, align 8, !tbaa !9
  %5931 = load i32, ptr %12, align 4, !tbaa !5
  %5932 = load i32, ptr %8, align 4, !tbaa !5
  %5933 = mul nsw i32 7, %5932
  %5934 = add nsw i32 %5931, %5933
  %5935 = sext i32 %5934 to i64
  %5936 = getelementptr inbounds double, ptr %5930, i64 %5935
  %5937 = load double, ptr %5936, align 8, !tbaa !11
  %5938 = call double @llvm.fmuladd.f64(double 0x3C928A15FB1A0DF3, double %5937, double %5929)
  %5939 = load ptr, ptr %7, align 8, !tbaa !9
  %5940 = load i32, ptr %12, align 4, !tbaa !5
  %5941 = load i32, ptr %8, align 4, !tbaa !5
  %5942 = mul nsw i32 8, %5941
  %5943 = add nsw i32 %5940, %5942
  %5944 = sext i32 %5943 to i64
  %5945 = getelementptr inbounds double, ptr %5939, i64 %5944
  %5946 = load double, ptr %5945, align 8, !tbaa !11
  %5947 = call double @llvm.fmuladd.f64(double 0xBC6B200A12F0E6FE, double %5946, double %5938)
  %5948 = load ptr, ptr %7, align 8, !tbaa !9
  %5949 = load i32, ptr %12, align 4, !tbaa !5
  %5950 = load i32, ptr %8, align 4, !tbaa !5
  %5951 = mul nsw i32 9, %5950
  %5952 = add nsw i32 %5949, %5951
  %5953 = sext i32 %5952 to i64
  %5954 = getelementptr inbounds double, ptr %5948, i64 %5953
  %5955 = load double, ptr %5954, align 8, !tbaa !11
  %5956 = call double @llvm.fmuladd.f64(double 0x3CB0B4EF81D0EBA9, double %5955, double %5947)
  %5957 = load ptr, ptr %7, align 8, !tbaa !9
  %5958 = load i32, ptr %12, align 4, !tbaa !5
  %5959 = load i32, ptr %8, align 4, !tbaa !5
  %5960 = mul nsw i32 10, %5959
  %5961 = add nsw i32 %5958, %5960
  %5962 = sext i32 %5961 to i64
  %5963 = getelementptr inbounds double, ptr %5957, i64 %5962
  %5964 = load double, ptr %5963, align 8, !tbaa !11
  %5965 = call double @llvm.fmuladd.f64(double 0xBCA81B5AA73CEFCF, double %5964, double %5956)
  %5966 = load ptr, ptr %7, align 8, !tbaa !9
  %5967 = load i32, ptr %12, align 4, !tbaa !5
  %5968 = load i32, ptr %8, align 4, !tbaa !5
  %5969 = mul nsw i32 11, %5968
  %5970 = add nsw i32 %5967, %5969
  %5971 = sext i32 %5970 to i64
  %5972 = getelementptr inbounds double, ptr %5966, i64 %5971
  %5973 = load double, ptr %5972, align 8, !tbaa !11
  %5974 = call double @llvm.fmuladd.f64(double 0xBC8CCF58EB146D34, double %5973, double %5965)
  %5975 = load ptr, ptr %7, align 8, !tbaa !9
  %5976 = load i32, ptr %12, align 4, !tbaa !5
  %5977 = load i32, ptr %8, align 4, !tbaa !5
  %5978 = mul nsw i32 12, %5977
  %5979 = add nsw i32 %5976, %5978
  %5980 = sext i32 %5979 to i64
  %5981 = getelementptr inbounds double, ptr %5975, i64 %5980
  %5982 = load double, ptr %5981, align 8, !tbaa !11
  %5983 = call double @llvm.fmuladd.f64(double 0x3FF21EFA862DF3DA, double %5982, double %5974)
  %5984 = load ptr, ptr %7, align 8, !tbaa !9
  %5985 = load i32, ptr %12, align 4, !tbaa !5
  %5986 = load i32, ptr %8, align 4, !tbaa !5
  %5987 = mul nsw i32 13, %5986
  %5988 = add nsw i32 %5985, %5987
  %5989 = sext i32 %5988 to i64
  %5990 = getelementptr inbounds double, ptr %5984, i64 %5989
  %5991 = load double, ptr %5990, align 8, !tbaa !11
  %5992 = call double @llvm.fmuladd.f64(double 0xBF734721512AF472, double %5991, double %5983)
  %5993 = load ptr, ptr %7, align 8, !tbaa !9
  %5994 = load i32, ptr %12, align 4, !tbaa !5
  %5995 = load i32, ptr %8, align 4, !tbaa !5
  %5996 = mul nsw i32 14, %5995
  %5997 = add nsw i32 %5994, %5996
  %5998 = sext i32 %5997 to i64
  %5999 = getelementptr inbounds double, ptr %5993, i64 %5998
  %6000 = load double, ptr %5999, align 8, !tbaa !11
  %6001 = call double @llvm.fmuladd.f64(double 0xBFF7F19EB1BA88FC, double %6000, double %5992)
  %6002 = load ptr, ptr %7, align 8, !tbaa !9
  %6003 = load i32, ptr %12, align 4, !tbaa !5
  %6004 = load i32, ptr %8, align 4, !tbaa !5
  %6005 = mul nsw i32 15, %6004
  %6006 = add nsw i32 %6003, %6005
  %6007 = sext i32 %6006 to i64
  %6008 = getelementptr inbounds double, ptr %6002, i64 %6007
  %6009 = load double, ptr %6008, align 8, !tbaa !11
  %6010 = call double @llvm.fmuladd.f64(double 0xBFF48831FA6C7040, double %6009, double %6001)
  %6011 = load ptr, ptr %7, align 8, !tbaa !9
  %6012 = load i32, ptr %12, align 4, !tbaa !5
  %6013 = load i32, ptr %8, align 4, !tbaa !5
  %6014 = mul nsw i32 16, %6013
  %6015 = add nsw i32 %6012, %6014
  %6016 = sext i32 %6015 to i64
  %6017 = getelementptr inbounds double, ptr %6011, i64 %6016
  %6018 = load double, ptr %6017, align 8, !tbaa !11
  %6019 = call double @llvm.fmuladd.f64(double 0x3FC901A35D55DB89, double %6018, double %6010)
  %6020 = load ptr, ptr %7, align 8, !tbaa !9
  %6021 = load i32, ptr %12, align 4, !tbaa !5
  %6022 = load i32, ptr %8, align 4, !tbaa !5
  %6023 = mul nsw i32 17, %6022
  %6024 = add nsw i32 %6021, %6023
  %6025 = sext i32 %6024 to i64
  %6026 = getelementptr inbounds double, ptr %6020, i64 %6025
  %6027 = load double, ptr %6026, align 8, !tbaa !11
  %6028 = call double @llvm.fmuladd.f64(double 0x3FF0AF85DD8BD416, double %6027, double %6019)
  store double %6028, ptr %11, align 8, !tbaa !11
  %6029 = load double, ptr %11, align 8, !tbaa !11
  %6030 = load ptr, ptr %9, align 8, !tbaa !9
  %6031 = load i32, ptr %12, align 4, !tbaa !5
  %6032 = load i32, ptr %10, align 4, !tbaa !5
  %6033 = mul nsw i32 34, %6032
  %6034 = add nsw i32 %6031, %6033
  %6035 = sext i32 %6034 to i64
  %6036 = getelementptr inbounds double, ptr %6030, i64 %6035
  %6037 = load double, ptr %6036, align 8, !tbaa !11
  %6038 = fadd double %6037, %6029
  store double %6038, ptr %6036, align 8, !tbaa !11
  %6039 = load ptr, ptr %7, align 8, !tbaa !9
  %6040 = load i32, ptr %12, align 4, !tbaa !5
  %6041 = load i32, ptr %8, align 4, !tbaa !5
  %6042 = mul nsw i32 0, %6041
  %6043 = add nsw i32 %6040, %6042
  %6044 = sext i32 %6043 to i64
  %6045 = getelementptr inbounds double, ptr %6039, i64 %6044
  %6046 = load double, ptr %6045, align 8, !tbaa !11
  %6047 = load ptr, ptr %7, align 8, !tbaa !9
  %6048 = load i32, ptr %12, align 4, !tbaa !5
  %6049 = load i32, ptr %8, align 4, !tbaa !5
  %6050 = mul nsw i32 1, %6049
  %6051 = add nsw i32 %6048, %6050
  %6052 = sext i32 %6051 to i64
  %6053 = getelementptr inbounds double, ptr %6047, i64 %6052
  %6054 = load double, ptr %6053, align 8, !tbaa !11
  %6055 = fmul double 0xBCA44D48F8869957, %6054
  %6056 = call double @llvm.fmuladd.f64(double 0xBC8E7761343A95A0, double %6046, double %6055)
  %6057 = load ptr, ptr %7, align 8, !tbaa !9
  %6058 = load i32, ptr %12, align 4, !tbaa !5
  %6059 = load i32, ptr %8, align 4, !tbaa !5
  %6060 = mul nsw i32 2, %6059
  %6061 = add nsw i32 %6058, %6060
  %6062 = sext i32 %6061 to i64
  %6063 = getelementptr inbounds double, ptr %6057, i64 %6062
  %6064 = load double, ptr %6063, align 8, !tbaa !11
  %6065 = call double @llvm.fmuladd.f64(double 0xBC95C5CE8588C948, double %6064, double %6056)
  %6066 = load ptr, ptr %7, align 8, !tbaa !9
  %6067 = load i32, ptr %12, align 4, !tbaa !5
  %6068 = load i32, ptr %8, align 4, !tbaa !5
  %6069 = mul nsw i32 3, %6068
  %6070 = add nsw i32 %6067, %6069
  %6071 = sext i32 %6070 to i64
  %6072 = getelementptr inbounds double, ptr %6066, i64 %6071
  %6073 = load double, ptr %6072, align 8, !tbaa !11
  %6074 = call double @llvm.fmuladd.f64(double 0xBCB82536F63F33EE, double %6073, double %6065)
  %6075 = load ptr, ptr %7, align 8, !tbaa !9
  %6076 = load i32, ptr %12, align 4, !tbaa !5
  %6077 = load i32, ptr %8, align 4, !tbaa !5
  %6078 = mul nsw i32 4, %6077
  %6079 = add nsw i32 %6076, %6078
  %6080 = sext i32 %6079 to i64
  %6081 = getelementptr inbounds double, ptr %6075, i64 %6080
  %6082 = load double, ptr %6081, align 8, !tbaa !11
  %6083 = call double @llvm.fmuladd.f64(double 0x3CA6D94B54150D6E, double %6082, double %6074)
  %6084 = load ptr, ptr %7, align 8, !tbaa !9
  %6085 = load i32, ptr %12, align 4, !tbaa !5
  %6086 = load i32, ptr %8, align 4, !tbaa !5
  %6087 = mul nsw i32 5, %6086
  %6088 = add nsw i32 %6085, %6087
  %6089 = sext i32 %6088 to i64
  %6090 = getelementptr inbounds double, ptr %6084, i64 %6089
  %6091 = load double, ptr %6090, align 8, !tbaa !11
  %6092 = call double @llvm.fmuladd.f64(double 0xBC86CA5E2A13EA01, double %6091, double %6083)
  %6093 = load ptr, ptr %7, align 8, !tbaa !9
  %6094 = load i32, ptr %12, align 4, !tbaa !5
  %6095 = load i32, ptr %8, align 4, !tbaa !5
  %6096 = mul nsw i32 6, %6095
  %6097 = add nsw i32 %6094, %6096
  %6098 = sext i32 %6097 to i64
  %6099 = getelementptr inbounds double, ptr %6093, i64 %6098
  %6100 = load double, ptr %6099, align 8, !tbaa !11
  %6101 = call double @llvm.fmuladd.f64(double 0xBC8AA385F45F1E4E, double %6100, double %6092)
  %6102 = load ptr, ptr %7, align 8, !tbaa !9
  %6103 = load i32, ptr %12, align 4, !tbaa !5
  %6104 = load i32, ptr %8, align 4, !tbaa !5
  %6105 = mul nsw i32 7, %6104
  %6106 = add nsw i32 %6103, %6105
  %6107 = sext i32 %6106 to i64
  %6108 = getelementptr inbounds double, ptr %6102, i64 %6107
  %6109 = load double, ptr %6108, align 8, !tbaa !11
  %6110 = call double @llvm.fmuladd.f64(double 0xBCB2AACA2DE89BB0, double %6109, double %6101)
  %6111 = load ptr, ptr %7, align 8, !tbaa !9
  %6112 = load i32, ptr %12, align 4, !tbaa !5
  %6113 = load i32, ptr %8, align 4, !tbaa !5
  %6114 = mul nsw i32 8, %6113
  %6115 = add nsw i32 %6112, %6114
  %6116 = sext i32 %6115 to i64
  %6117 = getelementptr inbounds double, ptr %6111, i64 %6116
  %6118 = load double, ptr %6117, align 8, !tbaa !11
  %6119 = call double @llvm.fmuladd.f64(double 0x3CA83B7215B2B95C, double %6118, double %6110)
  %6120 = load ptr, ptr %7, align 8, !tbaa !9
  %6121 = load i32, ptr %12, align 4, !tbaa !5
  %6122 = load i32, ptr %8, align 4, !tbaa !5
  %6123 = mul nsw i32 9, %6122
  %6124 = add nsw i32 %6121, %6123
  %6125 = sext i32 %6124 to i64
  %6126 = getelementptr inbounds double, ptr %6120, i64 %6125
  %6127 = load double, ptr %6126, align 8, !tbaa !11
  %6128 = call double @llvm.fmuladd.f64(double 0x3C8FF091FC9CD302, double %6127, double %6119)
  %6129 = load ptr, ptr %7, align 8, !tbaa !9
  %6130 = load i32, ptr %12, align 4, !tbaa !5
  %6131 = load i32, ptr %8, align 4, !tbaa !5
  %6132 = mul nsw i32 10, %6131
  %6133 = add nsw i32 %6130, %6132
  %6134 = sext i32 %6133 to i64
  %6135 = getelementptr inbounds double, ptr %6129, i64 %6134
  %6136 = load double, ptr %6135, align 8, !tbaa !11
  %6137 = call double @llvm.fmuladd.f64(double 0x3CB3BD521F494B8F, double %6136, double %6128)
  %6138 = load ptr, ptr %7, align 8, !tbaa !9
  %6139 = load i32, ptr %12, align 4, !tbaa !5
  %6140 = load i32, ptr %8, align 4, !tbaa !5
  %6141 = mul nsw i32 11, %6140
  %6142 = add nsw i32 %6139, %6141
  %6143 = sext i32 %6142 to i64
  %6144 = getelementptr inbounds double, ptr %6138, i64 %6143
  %6145 = load double, ptr %6144, align 8, !tbaa !11
  %6146 = call double @llvm.fmuladd.f64(double 0xBCAFEB692A4A65D9, double %6145, double %6137)
  %6147 = load ptr, ptr %7, align 8, !tbaa !9
  %6148 = load i32, ptr %12, align 4, !tbaa !5
  %6149 = load i32, ptr %8, align 4, !tbaa !5
  %6150 = mul nsw i32 12, %6149
  %6151 = add nsw i32 %6148, %6150
  %6152 = sext i32 %6151 to i64
  %6153 = getelementptr inbounds double, ptr %6147, i64 %6152
  %6154 = load double, ptr %6153, align 8, !tbaa !11
  %6155 = call double @llvm.fmuladd.f64(double 0x3FB1F3F0B024DC70, double %6154, double %6146)
  %6156 = load ptr, ptr %7, align 8, !tbaa !9
  %6157 = load i32, ptr %12, align 4, !tbaa !5
  %6158 = load i32, ptr %8, align 4, !tbaa !5
  %6159 = mul nsw i32 13, %6158
  %6160 = add nsw i32 %6157, %6159
  %6161 = sext i32 %6160 to i64
  %6162 = getelementptr inbounds double, ptr %6156, i64 %6161
  %6163 = load double, ptr %6162, align 8, !tbaa !11
  %6164 = call double @llvm.fmuladd.f64(double 0xBFF5B6F7089FF1D6, double %6163, double %6155)
  %6165 = load ptr, ptr %7, align 8, !tbaa !9
  %6166 = load i32, ptr %12, align 4, !tbaa !5
  %6167 = load i32, ptr %8, align 4, !tbaa !5
  %6168 = mul nsw i32 14, %6167
  %6169 = add nsw i32 %6166, %6168
  %6170 = sext i32 %6169 to i64
  %6171 = getelementptr inbounds double, ptr %6165, i64 %6170
  %6172 = load double, ptr %6171, align 8, !tbaa !11
  %6173 = call double @llvm.fmuladd.f64(double 0x3FCCBE3CAE6B6255, double %6172, double %6164)
  %6174 = load ptr, ptr %7, align 8, !tbaa !9
  %6175 = load i32, ptr %12, align 4, !tbaa !5
  %6176 = load i32, ptr %8, align 4, !tbaa !5
  %6177 = mul nsw i32 15, %6176
  %6178 = add nsw i32 %6175, %6177
  %6179 = sext i32 %6178 to i64
  %6180 = getelementptr inbounds double, ptr %6174, i64 %6179
  %6181 = load double, ptr %6180, align 8, !tbaa !11
  %6182 = call double @llvm.fmuladd.f64(double 0xBFFBA497A89943F8, double %6181, double %6173)
  %6183 = load ptr, ptr %7, align 8, !tbaa !9
  %6184 = load i32, ptr %12, align 4, !tbaa !5
  %6185 = load i32, ptr %8, align 4, !tbaa !5
  %6186 = mul nsw i32 16, %6185
  %6187 = add nsw i32 %6184, %6186
  %6188 = sext i32 %6187 to i64
  %6189 = getelementptr inbounds double, ptr %6183, i64 %6188
  %6190 = load double, ptr %6189, align 8, !tbaa !11
  %6191 = call double @llvm.fmuladd.f64(double 0xBFD81F8F0CEC6108, double %6190, double %6182)
  %6192 = load ptr, ptr %7, align 8, !tbaa !9
  %6193 = load i32, ptr %12, align 4, !tbaa !5
  %6194 = load i32, ptr %8, align 4, !tbaa !5
  %6195 = mul nsw i32 17, %6194
  %6196 = add nsw i32 %6193, %6195
  %6197 = sext i32 %6196 to i64
  %6198 = getelementptr inbounds double, ptr %6192, i64 %6197
  %6199 = load double, ptr %6198, align 8, !tbaa !11
  %6200 = call double @llvm.fmuladd.f64(double 0xBFDC5366E211BE88, double %6199, double %6191)
  store double %6200, ptr %11, align 8, !tbaa !11
  %6201 = load double, ptr %11, align 8, !tbaa !11
  %6202 = load ptr, ptr %9, align 8, !tbaa !9
  %6203 = load i32, ptr %12, align 4, !tbaa !5
  %6204 = load i32, ptr %10, align 4, !tbaa !5
  %6205 = mul nsw i32 35, %6204
  %6206 = add nsw i32 %6203, %6205
  %6207 = sext i32 %6206 to i64
  %6208 = getelementptr inbounds double, ptr %6202, i64 %6207
  %6209 = load double, ptr %6208, align 8, !tbaa !11
  %6210 = fadd double %6209, %6201
  store double %6210, ptr %6208, align 8, !tbaa !11
  %6211 = load ptr, ptr %7, align 8, !tbaa !9
  %6212 = load i32, ptr %12, align 4, !tbaa !5
  %6213 = load i32, ptr %8, align 4, !tbaa !5
  %6214 = mul nsw i32 0, %6213
  %6215 = add nsw i32 %6212, %6214
  %6216 = sext i32 %6215 to i64
  %6217 = getelementptr inbounds double, ptr %6211, i64 %6216
  %6218 = load double, ptr %6217, align 8, !tbaa !11
  %6219 = load ptr, ptr %7, align 8, !tbaa !9
  %6220 = load i32, ptr %12, align 4, !tbaa !5
  %6221 = load i32, ptr %8, align 4, !tbaa !5
  %6222 = mul nsw i32 1, %6221
  %6223 = add nsw i32 %6220, %6222
  %6224 = sext i32 %6223 to i64
  %6225 = getelementptr inbounds double, ptr %6219, i64 %6224
  %6226 = load double, ptr %6225, align 8, !tbaa !11
  %6227 = fmul double 0xBD09D98BFF4CB0E5, %6226
  %6228 = call double @llvm.fmuladd.f64(double 0x3FFEFBDEB14F4DAA, double %6218, double %6227)
  %6229 = load ptr, ptr %7, align 8, !tbaa !9
  %6230 = load i32, ptr %12, align 4, !tbaa !5
  %6231 = load i32, ptr %8, align 4, !tbaa !5
  %6232 = mul nsw i32 2, %6231
  %6233 = add nsw i32 %6230, %6232
  %6234 = sext i32 %6233 to i64
  %6235 = getelementptr inbounds double, ptr %6229, i64 %6234
  %6236 = load double, ptr %6235, align 8, !tbaa !11
  %6237 = call double @llvm.fmuladd.f64(double 0xBD08F6EC581E880F, double %6236, double %6228)
  %6238 = load ptr, ptr %7, align 8, !tbaa !9
  %6239 = load i32, ptr %12, align 4, !tbaa !5
  %6240 = load i32, ptr %8, align 4, !tbaa !5
  %6241 = mul nsw i32 3, %6240
  %6242 = add nsw i32 %6239, %6241
  %6243 = sext i32 %6242 to i64
  %6244 = getelementptr inbounds double, ptr %6238, i64 %6243
  %6245 = load double, ptr %6244, align 8, !tbaa !11
  %6246 = call double @llvm.fmuladd.f64(double 0xBCFDF4EDB2DE7F56, double %6245, double %6237)
  %6247 = load ptr, ptr %7, align 8, !tbaa !9
  %6248 = load i32, ptr %12, align 4, !tbaa !5
  %6249 = load i32, ptr %8, align 4, !tbaa !5
  %6250 = mul nsw i32 4, %6249
  %6251 = add nsw i32 %6248, %6250
  %6252 = sext i32 %6251 to i64
  %6253 = getelementptr inbounds double, ptr %6247, i64 %6252
  %6254 = load double, ptr %6253, align 8, !tbaa !11
  %6255 = call double @llvm.fmuladd.f64(double 0x3D19E21ADBE67F1B, double %6254, double %6246)
  %6256 = load ptr, ptr %7, align 8, !tbaa !9
  %6257 = load i32, ptr %12, align 4, !tbaa !5
  %6258 = load i32, ptr %8, align 4, !tbaa !5
  %6259 = mul nsw i32 5, %6258
  %6260 = add nsw i32 %6257, %6259
  %6261 = sext i32 %6260 to i64
  %6262 = getelementptr inbounds double, ptr %6256, i64 %6261
  %6263 = load double, ptr %6262, align 8, !tbaa !11
  %6264 = call double @llvm.fmuladd.f64(double 0x3D193EE154A2063B, double %6263, double %6255)
  %6265 = load ptr, ptr %7, align 8, !tbaa !9
  %6266 = load i32, ptr %12, align 4, !tbaa !5
  %6267 = load i32, ptr %8, align 4, !tbaa !5
  %6268 = mul nsw i32 6, %6267
  %6269 = add nsw i32 %6266, %6268
  %6270 = sext i32 %6269 to i64
  %6271 = getelementptr inbounds double, ptr %6265, i64 %6270
  %6272 = load double, ptr %6271, align 8, !tbaa !11
  %6273 = call double @llvm.fmuladd.f64(double 0x3FF08654A2D4F756, double %6272, double %6264)
  %6274 = load ptr, ptr %7, align 8, !tbaa !9
  %6275 = load i32, ptr %12, align 4, !tbaa !5
  %6276 = load i32, ptr %8, align 4, !tbaa !5
  %6277 = mul nsw i32 7, %6276
  %6278 = add nsw i32 %6275, %6277
  %6279 = sext i32 %6278 to i64
  %6280 = getelementptr inbounds double, ptr %6274, i64 %6279
  %6281 = load double, ptr %6280, align 8, !tbaa !11
  %6282 = call double @llvm.fmuladd.f64(double 0x3CF4E04E2DCDEC57, double %6281, double %6273)
  %6283 = load ptr, ptr %7, align 8, !tbaa !9
  %6284 = load i32, ptr %12, align 4, !tbaa !5
  %6285 = load i32, ptr %8, align 4, !tbaa !5
  %6286 = mul nsw i32 8, %6285
  %6287 = add nsw i32 %6284, %6286
  %6288 = sext i32 %6287 to i64
  %6289 = getelementptr inbounds double, ptr %6283, i64 %6288
  %6290 = load double, ptr %6289, align 8, !tbaa !11
  %6291 = call double @llvm.fmuladd.f64(double 0x3CF3AAAAAAAAAAAB, double %6290, double %6282)
  %6292 = load ptr, ptr %7, align 8, !tbaa !9
  %6293 = load i32, ptr %12, align 4, !tbaa !5
  %6294 = load i32, ptr %8, align 4, !tbaa !5
  %6295 = mul nsw i32 9, %6294
  %6296 = add nsw i32 %6293, %6295
  %6297 = sext i32 %6296 to i64
  %6298 = getelementptr inbounds double, ptr %6292, i64 %6297
  %6299 = load double, ptr %6298, align 8, !tbaa !11
  %6300 = call double @llvm.fmuladd.f64(double 0x3CE72AAAAAAAAAA8, double %6299, double %6291)
  %6301 = load ptr, ptr %7, align 8, !tbaa !9
  %6302 = load i32, ptr %12, align 4, !tbaa !5
  %6303 = load i32, ptr %8, align 4, !tbaa !5
  %6304 = mul nsw i32 10, %6303
  %6305 = add nsw i32 %6302, %6304
  %6306 = sext i32 %6305 to i64
  %6307 = getelementptr inbounds double, ptr %6301, i64 %6306
  %6308 = load double, ptr %6307, align 8, !tbaa !11
  %6309 = call double @llvm.fmuladd.f64(double 0xBD043F63A4642756, double %6308, double %6300)
  %6310 = load ptr, ptr %7, align 8, !tbaa !9
  %6311 = load i32, ptr %12, align 4, !tbaa !5
  %6312 = load i32, ptr %8, align 4, !tbaa !5
  %6313 = mul nsw i32 11, %6312
  %6314 = add nsw i32 %6311, %6313
  %6315 = sext i32 %6314 to i64
  %6316 = getelementptr inbounds double, ptr %6310, i64 %6315
  %6317 = load double, ptr %6316, align 8, !tbaa !11
  %6318 = call double @llvm.fmuladd.f64(double 0xBD0394B8F9B97CA9, double %6317, double %6309)
  %6319 = load ptr, ptr %7, align 8, !tbaa !9
  %6320 = load i32, ptr %12, align 4, !tbaa !5
  %6321 = load i32, ptr %8, align 4, !tbaa !5
  %6322 = mul nsw i32 12, %6321
  %6323 = add nsw i32 %6320, %6322
  %6324 = sext i32 %6323 to i64
  %6325 = getelementptr inbounds double, ptr %6319, i64 %6324
  %6326 = load double, ptr %6325, align 8, !tbaa !11
  %6327 = call double @llvm.fmuladd.f64(double 0xBFE4A7E9CB8A3493, double %6326, double %6318)
  %6328 = load ptr, ptr %7, align 8, !tbaa !9
  %6329 = load i32, ptr %12, align 4, !tbaa !5
  %6330 = load i32, ptr %8, align 4, !tbaa !5
  %6331 = mul nsw i32 13, %6330
  %6332 = add nsw i32 %6329, %6331
  %6333 = sext i32 %6332 to i64
  %6334 = getelementptr inbounds double, ptr %6328, i64 %6333
  %6335 = load double, ptr %6334, align 8, !tbaa !11
  %6336 = call double @llvm.fmuladd.f64(double 0xBC8BC95608A46E63, double %6335, double %6327)
  %6337 = load ptr, ptr %7, align 8, !tbaa !9
  %6338 = load i32, ptr %12, align 4, !tbaa !5
  %6339 = load i32, ptr %8, align 4, !tbaa !5
  %6340 = mul nsw i32 14, %6339
  %6341 = add nsw i32 %6338, %6340
  %6342 = sext i32 %6341 to i64
  %6343 = getelementptr inbounds double, ptr %6337, i64 %6342
  %6344 = load double, ptr %6343, align 8, !tbaa !11
  %6345 = call double @llvm.fmuladd.f64(double 0x3CA865C0B24CAFB5, double %6344, double %6336)
  %6346 = load ptr, ptr %7, align 8, !tbaa !9
  %6347 = load i32, ptr %12, align 4, !tbaa !5
  %6348 = load i32, ptr %8, align 4, !tbaa !5
  %6349 = mul nsw i32 15, %6348
  %6350 = add nsw i32 %6347, %6349
  %6351 = sext i32 %6350 to i64
  %6352 = getelementptr inbounds double, ptr %6346, i64 %6351
  %6353 = load double, ptr %6352, align 8, !tbaa !11
  %6354 = call double @llvm.fmuladd.f64(double 0x3CB09F4DA65E855E, double %6353, double %6345)
  %6355 = load ptr, ptr %7, align 8, !tbaa !9
  %6356 = load i32, ptr %12, align 4, !tbaa !5
  %6357 = load i32, ptr %8, align 4, !tbaa !5
  %6358 = mul nsw i32 16, %6357
  %6359 = add nsw i32 %6356, %6358
  %6360 = sext i32 %6359 to i64
  %6361 = getelementptr inbounds double, ptr %6355, i64 %6360
  %6362 = load double, ptr %6361, align 8, !tbaa !11
  %6363 = call double @llvm.fmuladd.f64(double 0xBCA3E8F53E9DEC6B, double %6362, double %6354)
  %6364 = load ptr, ptr %7, align 8, !tbaa !9
  %6365 = load i32, ptr %12, align 4, !tbaa !5
  %6366 = load i32, ptr %8, align 4, !tbaa !5
  %6367 = mul nsw i32 17, %6366
  %6368 = add nsw i32 %6365, %6367
  %6369 = sext i32 %6368 to i64
  %6370 = getelementptr inbounds double, ptr %6364, i64 %6369
  %6371 = load double, ptr %6370, align 8, !tbaa !11
  %6372 = call double @llvm.fmuladd.f64(double 0xBCB32135F151F960, double %6371, double %6363)
  store double %6372, ptr %11, align 8, !tbaa !11
  %6373 = load double, ptr %11, align 8, !tbaa !11
  %6374 = load ptr, ptr %9, align 8, !tbaa !9
  %6375 = load i32, ptr %12, align 4, !tbaa !5
  %6376 = load i32, ptr %10, align 4, !tbaa !5
  %6377 = mul nsw i32 36, %6376
  %6378 = add nsw i32 %6375, %6377
  %6379 = sext i32 %6378 to i64
  %6380 = getelementptr inbounds double, ptr %6374, i64 %6379
  %6381 = load double, ptr %6380, align 8, !tbaa !11
  %6382 = fadd double %6381, %6373
  store double %6382, ptr %6380, align 8, !tbaa !11
  %6383 = load ptr, ptr %7, align 8, !tbaa !9
  %6384 = load i32, ptr %12, align 4, !tbaa !5
  %6385 = load i32, ptr %8, align 4, !tbaa !5
  %6386 = mul nsw i32 0, %6385
  %6387 = add nsw i32 %6384, %6386
  %6388 = sext i32 %6387 to i64
  %6389 = getelementptr inbounds double, ptr %6383, i64 %6388
  %6390 = load double, ptr %6389, align 8, !tbaa !11
  %6391 = load ptr, ptr %7, align 8, !tbaa !9
  %6392 = load i32, ptr %12, align 4, !tbaa !5
  %6393 = load i32, ptr %8, align 4, !tbaa !5
  %6394 = mul nsw i32 1, %6393
  %6395 = add nsw i32 %6392, %6394
  %6396 = sext i32 %6395 to i64
  %6397 = getelementptr inbounds double, ptr %6391, i64 %6396
  %6398 = load double, ptr %6397, align 8, !tbaa !11
  %6399 = fmul double 0x3FFEFBDEB14F4D9C, %6398
  %6400 = call double @llvm.fmuladd.f64(double 0xBD07B67C0A74B6D2, double %6390, double %6399)
  %6401 = load ptr, ptr %7, align 8, !tbaa !9
  %6402 = load i32, ptr %12, align 4, !tbaa !5
  %6403 = load i32, ptr %8, align 4, !tbaa !5
  %6404 = mul nsw i32 2, %6403
  %6405 = add nsw i32 %6402, %6404
  %6406 = sext i32 %6405 to i64
  %6407 = getelementptr inbounds double, ptr %6401, i64 %6406
  %6408 = load double, ptr %6407, align 8, !tbaa !11
  %6409 = call double @llvm.fmuladd.f64(double 0xBD08B86D08565032, double %6408, double %6400)
  %6410 = load ptr, ptr %7, align 8, !tbaa !9
  %6411 = load i32, ptr %12, align 4, !tbaa !5
  %6412 = load i32, ptr %8, align 4, !tbaa !5
  %6413 = mul nsw i32 3, %6412
  %6414 = add nsw i32 %6411, %6413
  %6415 = sext i32 %6414 to i64
  %6416 = getelementptr inbounds double, ptr %6410, i64 %6415
  %6417 = load double, ptr %6416, align 8, !tbaa !11
  %6418 = call double @llvm.fmuladd.f64(double 0x3D1BE5E867FB3CCC, double %6417, double %6409)
  %6419 = load ptr, ptr %7, align 8, !tbaa !9
  %6420 = load i32, ptr %12, align 4, !tbaa !5
  %6421 = load i32, ptr %8, align 4, !tbaa !5
  %6422 = mul nsw i32 4, %6421
  %6423 = add nsw i32 %6420, %6422
  %6424 = sext i32 %6423 to i64
  %6425 = getelementptr inbounds double, ptr %6419, i64 %6424
  %6426 = load double, ptr %6425, align 8, !tbaa !11
  %6427 = call double @llvm.fmuladd.f64(double 0xBCFD7E2C7687A148, double %6426, double %6418)
  %6428 = load ptr, ptr %7, align 8, !tbaa !9
  %6429 = load i32, ptr %12, align 4, !tbaa !5
  %6430 = load i32, ptr %8, align 4, !tbaa !5
  %6431 = mul nsw i32 5, %6430
  %6432 = add nsw i32 %6429, %6431
  %6433 = sext i32 %6432 to i64
  %6434 = getelementptr inbounds double, ptr %6428, i64 %6433
  %6435 = load double, ptr %6434, align 8, !tbaa !11
  %6436 = call double @llvm.fmuladd.f64(double 0x3D19AB84FA7213D2, double %6435, double %6427)
  %6437 = load ptr, ptr %7, align 8, !tbaa !9
  %6438 = load i32, ptr %12, align 4, !tbaa !5
  %6439 = load i32, ptr %8, align 4, !tbaa !5
  %6440 = mul nsw i32 6, %6439
  %6441 = add nsw i32 %6438, %6440
  %6442 = sext i32 %6441 to i64
  %6443 = getelementptr inbounds double, ptr %6437, i64 %6442
  %6444 = load double, ptr %6443, align 8, !tbaa !11
  %6445 = call double @llvm.fmuladd.f64(double 0x3CF414B8F9B97CAA, double %6444, double %6436)
  %6446 = load ptr, ptr %7, align 8, !tbaa !9
  %6447 = load i32, ptr %12, align 4, !tbaa !5
  %6448 = load i32, ptr %8, align 4, !tbaa !5
  %6449 = mul nsw i32 7, %6448
  %6450 = add nsw i32 %6447, %6449
  %6451 = sext i32 %6450 to i64
  %6452 = getelementptr inbounds double, ptr %6446, i64 %6451
  %6453 = load double, ptr %6452, align 8, !tbaa !11
  %6454 = call double @llvm.fmuladd.f64(double 0x3FF08654A2D4F75B, double %6453, double %6445)
  %6455 = load ptr, ptr %7, align 8, !tbaa !9
  %6456 = load i32, ptr %12, align 4, !tbaa !5
  %6457 = load i32, ptr %8, align 4, !tbaa !5
  %6458 = mul nsw i32 8, %6457
  %6459 = add nsw i32 %6456, %6458
  %6460 = sext i32 %6459 to i64
  %6461 = getelementptr inbounds double, ptr %6455, i64 %6460
  %6462 = load double, ptr %6461, align 8, !tbaa !11
  %6463 = call double @llvm.fmuladd.f64(double 0x3CF39AF8D87896FD, double %6462, double %6454)
  %6464 = load ptr, ptr %7, align 8, !tbaa !9
  %6465 = load i32, ptr %12, align 4, !tbaa !5
  %6466 = load i32, ptr %8, align 4, !tbaa !5
  %6467 = mul nsw i32 9, %6466
  %6468 = add nsw i32 %6465, %6467
  %6469 = sext i32 %6468 to i64
  %6470 = getelementptr inbounds double, ptr %6464, i64 %6469
  %6471 = load double, ptr %6470, align 8, !tbaa !11
  %6472 = call double @llvm.fmuladd.f64(double 0xBD05A83AA25A713E, double %6471, double %6463)
  %6473 = load ptr, ptr %7, align 8, !tbaa !9
  %6474 = load i32, ptr %12, align 4, !tbaa !5
  %6475 = load i32, ptr %8, align 4, !tbaa !5
  %6476 = mul nsw i32 10, %6475
  %6477 = add nsw i32 %6474, %6476
  %6478 = sext i32 %6477 to i64
  %6479 = getelementptr inbounds double, ptr %6473, i64 %6478
  %6480 = load double, ptr %6479, align 8, !tbaa !11
  %6481 = call double @llvm.fmuladd.f64(double 0x3CE7EC7FBD7E34A3, double %6480, double %6472)
  %6482 = load ptr, ptr %7, align 8, !tbaa !9
  %6483 = load i32, ptr %12, align 4, !tbaa !5
  %6484 = load i32, ptr %8, align 4, !tbaa !5
  %6485 = mul nsw i32 11, %6484
  %6486 = add nsw i32 %6483, %6485
  %6487 = sext i32 %6486 to i64
  %6488 = getelementptr inbounds double, ptr %6482, i64 %6487
  %6489 = load double, ptr %6488, align 8, !tbaa !11
  %6490 = call double @llvm.fmuladd.f64(double 0xBD055F1576963AFE, double %6489, double %6481)
  %6491 = load ptr, ptr %7, align 8, !tbaa !9
  %6492 = load i32, ptr %12, align 4, !tbaa !5
  %6493 = load i32, ptr %8, align 4, !tbaa !5
  %6494 = mul nsw i32 12, %6493
  %6495 = add nsw i32 %6492, %6494
  %6496 = sext i32 %6495 to i64
  %6497 = getelementptr inbounds double, ptr %6491, i64 %6496
  %6498 = load double, ptr %6497, align 8, !tbaa !11
  %6499 = call double @llvm.fmuladd.f64(double 0x3C970362DFEA2854, double %6498, double %6490)
  %6500 = load ptr, ptr %7, align 8, !tbaa !9
  %6501 = load i32, ptr %12, align 4, !tbaa !5
  %6502 = load i32, ptr %8, align 4, !tbaa !5
  %6503 = mul nsw i32 13, %6502
  %6504 = add nsw i32 %6501, %6503
  %6505 = sext i32 %6504 to i64
  %6506 = getelementptr inbounds double, ptr %6500, i64 %6505
  %6507 = load double, ptr %6506, align 8, !tbaa !11
  %6508 = call double @llvm.fmuladd.f64(double 0xBFE4A7E9CB8A349A, double %6507, double %6499)
  %6509 = load ptr, ptr %7, align 8, !tbaa !9
  %6510 = load i32, ptr %12, align 4, !tbaa !5
  %6511 = load i32, ptr %8, align 4, !tbaa !5
  %6512 = mul nsw i32 14, %6511
  %6513 = add nsw i32 %6510, %6512
  %6514 = sext i32 %6513 to i64
  %6515 = getelementptr inbounds double, ptr %6509, i64 %6514
  %6516 = load double, ptr %6515, align 8, !tbaa !11
  %6517 = call double @llvm.fmuladd.f64(double 0xBC7565CE1279E84F, double %6516, double %6508)
  %6518 = load ptr, ptr %7, align 8, !tbaa !9
  %6519 = load i32, ptr %12, align 4, !tbaa !5
  %6520 = load i32, ptr %8, align 4, !tbaa !5
  %6521 = mul nsw i32 15, %6520
  %6522 = add nsw i32 %6519, %6521
  %6523 = sext i32 %6522 to i64
  %6524 = getelementptr inbounds double, ptr %6518, i64 %6523
  %6525 = load double, ptr %6524, align 8, !tbaa !11
  %6526 = call double @llvm.fmuladd.f64(double 0xBCB0188D814CF0C8, double %6525, double %6517)
  %6527 = load ptr, ptr %7, align 8, !tbaa !9
  %6528 = load i32, ptr %12, align 4, !tbaa !5
  %6529 = load i32, ptr %8, align 4, !tbaa !5
  %6530 = mul nsw i32 16, %6529
  %6531 = add nsw i32 %6528, %6530
  %6532 = sext i32 %6531 to i64
  %6533 = getelementptr inbounds double, ptr %6527, i64 %6532
  %6534 = load double, ptr %6533, align 8, !tbaa !11
  %6535 = call double @llvm.fmuladd.f64(double 0x3CAC57CB2B44F947, double %6534, double %6526)
  %6536 = load ptr, ptr %7, align 8, !tbaa !9
  %6537 = load i32, ptr %12, align 4, !tbaa !5
  %6538 = load i32, ptr %8, align 4, !tbaa !5
  %6539 = mul nsw i32 17, %6538
  %6540 = add nsw i32 %6537, %6539
  %6541 = sext i32 %6540 to i64
  %6542 = getelementptr inbounds double, ptr %6536, i64 %6541
  %6543 = load double, ptr %6542, align 8, !tbaa !11
  %6544 = call double @llvm.fmuladd.f64(double 0x3C98231206424F20, double %6543, double %6535)
  store double %6544, ptr %11, align 8, !tbaa !11
  %6545 = load double, ptr %11, align 8, !tbaa !11
  %6546 = load ptr, ptr %9, align 8, !tbaa !9
  %6547 = load i32, ptr %12, align 4, !tbaa !5
  %6548 = load i32, ptr %10, align 4, !tbaa !5
  %6549 = mul nsw i32 37, %6548
  %6550 = add nsw i32 %6547, %6549
  %6551 = sext i32 %6550 to i64
  %6552 = getelementptr inbounds double, ptr %6546, i64 %6551
  %6553 = load double, ptr %6552, align 8, !tbaa !11
  %6554 = fadd double %6553, %6545
  store double %6554, ptr %6552, align 8, !tbaa !11
  %6555 = load ptr, ptr %7, align 8, !tbaa !9
  %6556 = load i32, ptr %12, align 4, !tbaa !5
  %6557 = load i32, ptr %8, align 4, !tbaa !5
  %6558 = mul nsw i32 0, %6557
  %6559 = add nsw i32 %6556, %6558
  %6560 = sext i32 %6559 to i64
  %6561 = getelementptr inbounds double, ptr %6555, i64 %6560
  %6562 = load double, ptr %6561, align 8, !tbaa !11
  %6563 = load ptr, ptr %7, align 8, !tbaa !9
  %6564 = load i32, ptr %12, align 4, !tbaa !5
  %6565 = load i32, ptr %8, align 4, !tbaa !5
  %6566 = mul nsw i32 1, %6565
  %6567 = add nsw i32 %6564, %6566
  %6568 = sext i32 %6567 to i64
  %6569 = getelementptr inbounds double, ptr %6563, i64 %6568
  %6570 = load double, ptr %6569, align 8, !tbaa !11
  %6571 = fmul double 0xBD080EA3215BACFB, %6570
  %6572 = call double @llvm.fmuladd.f64(double 0xBD08E7AFCAA156E7, double %6562, double %6571)
  %6573 = load ptr, ptr %7, align 8, !tbaa !9
  %6574 = load i32, ptr %12, align 4, !tbaa !5
  %6575 = load i32, ptr %8, align 4, !tbaa !5
  %6576 = mul nsw i32 2, %6575
  %6577 = add nsw i32 %6574, %6576
  %6578 = sext i32 %6577 to i64
  %6579 = getelementptr inbounds double, ptr %6573, i64 %6578
  %6580 = load double, ptr %6579, align 8, !tbaa !11
  %6581 = call double @llvm.fmuladd.f64(double 0x3FFEFBDEB14F4D9C, double %6580, double %6572)
  %6582 = load ptr, ptr %7, align 8, !tbaa !9
  %6583 = load i32, ptr %12, align 4, !tbaa !5
  %6584 = load i32, ptr %8, align 4, !tbaa !5
  %6585 = mul nsw i32 3, %6584
  %6586 = add nsw i32 %6583, %6585
  %6587 = sext i32 %6586 to i64
  %6588 = getelementptr inbounds double, ptr %6582, i64 %6587
  %6589 = load double, ptr %6588, align 8, !tbaa !11
  %6590 = call double @llvm.fmuladd.f64(double 0x3D1B6A9B554348D9, double %6589, double %6581)
  %6591 = load ptr, ptr %7, align 8, !tbaa !9
  %6592 = load i32, ptr %12, align 4, !tbaa !5
  %6593 = load i32, ptr %8, align 4, !tbaa !5
  %6594 = mul nsw i32 4, %6593
  %6595 = add nsw i32 %6592, %6594
  %6596 = sext i32 %6595 to i64
  %6597 = getelementptr inbounds double, ptr %6591, i64 %6596
  %6598 = load double, ptr %6597, align 8, !tbaa !11
  %6599 = call double @llvm.fmuladd.f64(double 0x3D1A602CE43D9E05, double %6598, double %6590)
  %6600 = load ptr, ptr %7, align 8, !tbaa !9
  %6601 = load i32, ptr %12, align 4, !tbaa !5
  %6602 = load i32, ptr %8, align 4, !tbaa !5
  %6603 = mul nsw i32 5, %6602
  %6604 = add nsw i32 %6601, %6603
  %6605 = sext i32 %6604 to i64
  %6606 = getelementptr inbounds double, ptr %6600, i64 %6605
  %6607 = load double, ptr %6606, align 8, !tbaa !11
  %6608 = call double @llvm.fmuladd.f64(double 0xBCFB4D0EBD5404E2, double %6607, double %6599)
  %6609 = load ptr, ptr %7, align 8, !tbaa !9
  %6610 = load i32, ptr %12, align 4, !tbaa !5
  %6611 = load i32, ptr %8, align 4, !tbaa !5
  %6612 = mul nsw i32 6, %6611
  %6613 = add nsw i32 %6610, %6612
  %6614 = sext i32 %6613 to i64
  %6615 = getelementptr inbounds double, ptr %6609, i64 %6614
  %6616 = load double, ptr %6615, align 8, !tbaa !11
  %6617 = call double @llvm.fmuladd.f64(double 0x3CF4EA8393C3B47E, double %6616, double %6608)
  %6618 = load ptr, ptr %7, align 8, !tbaa !9
  %6619 = load i32, ptr %12, align 4, !tbaa !5
  %6620 = load i32, ptr %8, align 4, !tbaa !5
  %6621 = mul nsw i32 7, %6620
  %6622 = add nsw i32 %6619, %6621
  %6623 = sext i32 %6622 to i64
  %6624 = getelementptr inbounds double, ptr %6618, i64 %6623
  %6625 = load double, ptr %6624, align 8, !tbaa !11
  %6626 = call double @llvm.fmuladd.f64(double 0x3CF2549348F1AFBD, double %6625, double %6617)
  %6627 = load ptr, ptr %7, align 8, !tbaa !9
  %6628 = load i32, ptr %12, align 4, !tbaa !5
  %6629 = load i32, ptr %8, align 4, !tbaa !5
  %6630 = mul nsw i32 8, %6629
  %6631 = add nsw i32 %6628, %6630
  %6632 = sext i32 %6631 to i64
  %6633 = getelementptr inbounds double, ptr %6627, i64 %6632
  %6634 = load double, ptr %6633, align 8, !tbaa !11
  %6635 = call double @llvm.fmuladd.f64(double 0x3FF08654A2D4F75B, double %6634, double %6626)
  %6636 = load ptr, ptr %7, align 8, !tbaa !9
  %6637 = load i32, ptr %12, align 4, !tbaa !5
  %6638 = load i32, ptr %8, align 4, !tbaa !5
  %6639 = mul nsw i32 9, %6638
  %6640 = add nsw i32 %6637, %6639
  %6641 = sext i32 %6640 to i64
  %6642 = getelementptr inbounds double, ptr %6636, i64 %6641
  %6643 = load double, ptr %6642, align 8, !tbaa !11
  %6644 = call double @llvm.fmuladd.f64(double 0xBD0538138B737B14, double %6643, double %6635)
  %6645 = load ptr, ptr %7, align 8, !tbaa !9
  %6646 = load i32, ptr %12, align 4, !tbaa !5
  %6647 = load i32, ptr %8, align 4, !tbaa !5
  %6648 = mul nsw i32 10, %6647
  %6649 = add nsw i32 %6646, %6648
  %6650 = sext i32 %6649 to i64
  %6651 = getelementptr inbounds double, ptr %6645, i64 %6650
  %6652 = load double, ptr %6651, align 8, !tbaa !11
  %6653 = call double @llvm.fmuladd.f64(double 0xBD05852E3E6E5F29, double %6652, double %6644)
  %6654 = load ptr, ptr %7, align 8, !tbaa !9
  %6655 = load i32, ptr %12, align 4, !tbaa !5
  %6656 = load i32, ptr %8, align 4, !tbaa !5
  %6657 = mul nsw i32 11, %6656
  %6658 = add nsw i32 %6655, %6657
  %6659 = sext i32 %6658 to i64
  %6660 = getelementptr inbounds double, ptr %6654, i64 %6659
  %6661 = load double, ptr %6660, align 8, !tbaa !11
  %6662 = call double @llvm.fmuladd.f64(double 0x3CE317C6C3C4B7FB, double %6661, double %6653)
  %6663 = load ptr, ptr %7, align 8, !tbaa !9
  %6664 = load i32, ptr %12, align 4, !tbaa !5
  %6665 = load i32, ptr %8, align 4, !tbaa !5
  %6666 = mul nsw i32 12, %6665
  %6667 = add nsw i32 %6664, %6666
  %6668 = sext i32 %6667 to i64
  %6669 = getelementptr inbounds double, ptr %6663, i64 %6668
  %6670 = load double, ptr %6669, align 8, !tbaa !11
  %6671 = call double @llvm.fmuladd.f64(double 0xBCA7907993F5C565, double %6670, double %6662)
  %6672 = load ptr, ptr %7, align 8, !tbaa !9
  %6673 = load i32, ptr %12, align 4, !tbaa !5
  %6674 = load i32, ptr %8, align 4, !tbaa !5
  %6675 = mul nsw i32 13, %6674
  %6676 = add nsw i32 %6673, %6675
  %6677 = sext i32 %6676 to i64
  %6678 = getelementptr inbounds double, ptr %6672, i64 %6677
  %6679 = load double, ptr %6678, align 8, !tbaa !11
  %6680 = call double @llvm.fmuladd.f64(double 0xBCB4627DA761F89E, double %6679, double %6671)
  %6681 = load ptr, ptr %7, align 8, !tbaa !9
  %6682 = load i32, ptr %12, align 4, !tbaa !5
  %6683 = load i32, ptr %8, align 4, !tbaa !5
  %6684 = mul nsw i32 14, %6683
  %6685 = add nsw i32 %6682, %6684
  %6686 = sext i32 %6685 to i64
  %6687 = getelementptr inbounds double, ptr %6681, i64 %6686
  %6688 = load double, ptr %6687, align 8, !tbaa !11
  %6689 = call double @llvm.fmuladd.f64(double 0xBFE4A7E9CB8A349B, double %6688, double %6680)
  %6690 = load ptr, ptr %7, align 8, !tbaa !9
  %6691 = load i32, ptr %12, align 4, !tbaa !5
  %6692 = load i32, ptr %8, align 4, !tbaa !5
  %6693 = mul nsw i32 15, %6692
  %6694 = add nsw i32 %6691, %6693
  %6695 = sext i32 %6694 to i64
  %6696 = getelementptr inbounds double, ptr %6690, i64 %6695
  %6697 = load double, ptr %6696, align 8, !tbaa !11
  %6698 = call double @llvm.fmuladd.f64(double 0xBC9EAEE0B6C3EF3F, double %6697, double %6689)
  %6699 = load ptr, ptr %7, align 8, !tbaa !9
  %6700 = load i32, ptr %12, align 4, !tbaa !5
  %6701 = load i32, ptr %8, align 4, !tbaa !5
  %6702 = mul nsw i32 16, %6701
  %6703 = add nsw i32 %6700, %6702
  %6704 = sext i32 %6703 to i64
  %6705 = getelementptr inbounds double, ptr %6699, i64 %6704
  %6706 = load double, ptr %6705, align 8, !tbaa !11
  %6707 = call double @llvm.fmuladd.f64(double 0x3CCD152CD522E8B4, double %6706, double %6698)
  %6708 = load ptr, ptr %7, align 8, !tbaa !9
  %6709 = load i32, ptr %12, align 4, !tbaa !5
  %6710 = load i32, ptr %8, align 4, !tbaa !5
  %6711 = mul nsw i32 17, %6710
  %6712 = add nsw i32 %6709, %6711
  %6713 = sext i32 %6712 to i64
  %6714 = getelementptr inbounds double, ptr %6708, i64 %6713
  %6715 = load double, ptr %6714, align 8, !tbaa !11
  %6716 = call double @llvm.fmuladd.f64(double 0x3CC9AF22A9592C7A, double %6715, double %6707)
  store double %6716, ptr %11, align 8, !tbaa !11
  %6717 = load double, ptr %11, align 8, !tbaa !11
  %6718 = load ptr, ptr %9, align 8, !tbaa !9
  %6719 = load i32, ptr %12, align 4, !tbaa !5
  %6720 = load i32, ptr %10, align 4, !tbaa !5
  %6721 = mul nsw i32 38, %6720
  %6722 = add nsw i32 %6719, %6721
  %6723 = sext i32 %6722 to i64
  %6724 = getelementptr inbounds double, ptr %6718, i64 %6723
  %6725 = load double, ptr %6724, align 8, !tbaa !11
  %6726 = fadd double %6725, %6717
  store double %6726, ptr %6724, align 8, !tbaa !11
  %6727 = load ptr, ptr %7, align 8, !tbaa !9
  %6728 = load i32, ptr %12, align 4, !tbaa !5
  %6729 = load i32, ptr %8, align 4, !tbaa !5
  %6730 = mul nsw i32 0, %6729
  %6731 = add nsw i32 %6728, %6730
  %6732 = sext i32 %6731 to i64
  %6733 = getelementptr inbounds double, ptr %6727, i64 %6732
  %6734 = load double, ptr %6733, align 8, !tbaa !11
  %6735 = load ptr, ptr %7, align 8, !tbaa !9
  %6736 = load i32, ptr %12, align 4, !tbaa !5
  %6737 = load i32, ptr %8, align 4, !tbaa !5
  %6738 = mul nsw i32 1, %6737
  %6739 = add nsw i32 %6736, %6738
  %6740 = sext i32 %6739 to i64
  %6741 = getelementptr inbounds double, ptr %6735, i64 %6740
  %6742 = load double, ptr %6741, align 8, !tbaa !11
  %6743 = fmul double 0x3D0A84FAA72D5A19, %6742
  %6744 = call double @llvm.fmuladd.f64(double 0xBCEB61ECA327B8E3, double %6734, double %6743)
  %6745 = load ptr, ptr %7, align 8, !tbaa !9
  %6746 = load i32, ptr %12, align 4, !tbaa !5
  %6747 = load i32, ptr %8, align 4, !tbaa !5
  %6748 = mul nsw i32 2, %6747
  %6749 = add nsw i32 %6746, %6748
  %6750 = sext i32 %6749 to i64
  %6751 = getelementptr inbounds double, ptr %6745, i64 %6750
  %6752 = load double, ptr %6751, align 8, !tbaa !11
  %6753 = call double @llvm.fmuladd.f64(double 0x3D0A7D9F313861AC, double %6752, double %6744)
  %6754 = load ptr, ptr %7, align 8, !tbaa !9
  %6755 = load i32, ptr %12, align 4, !tbaa !5
  %6756 = load i32, ptr %8, align 4, !tbaa !5
  %6757 = mul nsw i32 3, %6756
  %6758 = add nsw i32 %6755, %6757
  %6759 = sext i32 %6758 to i64
  %6760 = getelementptr inbounds double, ptr %6754, i64 %6759
  %6761 = load double, ptr %6760, align 8, !tbaa !11
  %6762 = call double @llvm.fmuladd.f64(double 0x3FFEFBDEB14F4E48, double %6761, double %6753)
  %6763 = load ptr, ptr %7, align 8, !tbaa !9
  %6764 = load i32, ptr %12, align 4, !tbaa !5
  %6765 = load i32, ptr %8, align 4, !tbaa !5
  %6766 = mul nsw i32 4, %6765
  %6767 = add nsw i32 %6764, %6766
  %6768 = sext i32 %6767 to i64
  %6769 = getelementptr inbounds double, ptr %6763, i64 %6768
  %6770 = load double, ptr %6769, align 8, !tbaa !11
  %6771 = call double @llvm.fmuladd.f64(double 0x3D036D617FD6379E, double %6770, double %6762)
  %6772 = load ptr, ptr %7, align 8, !tbaa !9
  %6773 = load i32, ptr %12, align 4, !tbaa !5
  %6774 = load i32, ptr %8, align 4, !tbaa !5
  %6775 = mul nsw i32 5, %6774
  %6776 = add nsw i32 %6773, %6775
  %6777 = sext i32 %6776 to i64
  %6778 = getelementptr inbounds double, ptr %6772, i64 %6777
  %6779 = load double, ptr %6778, align 8, !tbaa !11
  %6780 = call double @llvm.fmuladd.f64(double 0x3D027FF2929BF693, double %6779, double %6771)
  %6781 = load ptr, ptr %7, align 8, !tbaa !9
  %6782 = load i32, ptr %12, align 4, !tbaa !5
  %6783 = load i32, ptr %8, align 4, !tbaa !5
  %6784 = mul nsw i32 6, %6783
  %6785 = add nsw i32 %6782, %6784
  %6786 = sext i32 %6785 to i64
  %6787 = getelementptr inbounds double, ptr %6781, i64 %6786
  %6788 = load double, ptr %6787, align 8, !tbaa !11
  %6789 = call double @llvm.fmuladd.f64(double 0x3CD83F1576963B00, double %6788, double %6780)
  %6790 = load ptr, ptr %7, align 8, !tbaa !9
  %6791 = load i32, ptr %12, align 4, !tbaa !5
  %6792 = load i32, ptr %8, align 4, !tbaa !5
  %6793 = mul nsw i32 7, %6792
  %6794 = add nsw i32 %6791, %6793
  %6795 = sext i32 %6794 to i64
  %6796 = getelementptr inbounds double, ptr %6790, i64 %6795
  %6797 = load double, ptr %6796, align 8, !tbaa !11
  %6798 = call double @llvm.fmuladd.f64(double 0xBCF5B52E3E6E5F2B, double %6797, double %6789)
  %6799 = load ptr, ptr %7, align 8, !tbaa !9
  %6800 = load i32, ptr %12, align 4, !tbaa !5
  %6801 = load i32, ptr %8, align 4, !tbaa !5
  %6802 = mul nsw i32 8, %6801
  %6803 = add nsw i32 %6800, %6802
  %6804 = sext i32 %6803 to i64
  %6805 = getelementptr inbounds double, ptr %6799, i64 %6804
  %6806 = load double, ptr %6805, align 8, !tbaa !11
  %6807 = call double @llvm.fmuladd.f64(double 0xBCF61B6CB70E5044, double %6806, double %6798)
  %6808 = load ptr, ptr %7, align 8, !tbaa !9
  %6809 = load i32, ptr %12, align 4, !tbaa !5
  %6810 = load i32, ptr %8, align 4, !tbaa !5
  %6811 = mul nsw i32 9, %6810
  %6812 = add nsw i32 %6809, %6811
  %6813 = sext i32 %6812 to i64
  %6814 = getelementptr inbounds double, ptr %6808, i64 %6813
  %6815 = load double, ptr %6814, align 8, !tbaa !11
  %6816 = call double @llvm.fmuladd.f64(double 0x3FF08654A2D4F717, double %6815, double %6807)
  %6817 = load ptr, ptr %7, align 8, !tbaa !9
  %6818 = load i32, ptr %12, align 4, !tbaa !5
  %6819 = load i32, ptr %8, align 4, !tbaa !5
  %6820 = mul nsw i32 10, %6819
  %6821 = add nsw i32 %6818, %6820
  %6822 = sext i32 %6821 to i64
  %6823 = getelementptr inbounds double, ptr %6817, i64 %6822
  %6824 = load double, ptr %6823, align 8, !tbaa !11
  %6825 = call double @llvm.fmuladd.f64(double 0xBCEFF3CE704FB7B1, double %6824, double %6816)
  %6826 = load ptr, ptr %7, align 8, !tbaa !9
  %6827 = load i32, ptr %12, align 4, !tbaa !5
  %6828 = load i32, ptr %8, align 4, !tbaa !5
  %6829 = mul nsw i32 11, %6828
  %6830 = add nsw i32 %6827, %6829
  %6831 = sext i32 %6830 to i64
  %6832 = getelementptr inbounds double, ptr %6826, i64 %6831
  %6833 = load double, ptr %6832, align 8, !tbaa !11
  %6834 = call double @llvm.fmuladd.f64(double 0xBCEE546ACBEB905B, double %6833, double %6825)
  %6835 = load ptr, ptr %7, align 8, !tbaa !9
  %6836 = load i32, ptr %12, align 4, !tbaa !5
  %6837 = load i32, ptr %8, align 4, !tbaa !5
  %6838 = mul nsw i32 12, %6837
  %6839 = add nsw i32 %6836, %6838
  %6840 = sext i32 %6839 to i64
  %6841 = getelementptr inbounds double, ptr %6835, i64 %6840
  %6842 = load double, ptr %6841, align 8, !tbaa !11
  %6843 = call double @llvm.fmuladd.f64(double 0xBCA0F732AF6EE969, double %6842, double %6834)
  %6844 = load ptr, ptr %7, align 8, !tbaa !9
  %6845 = load i32, ptr %12, align 4, !tbaa !5
  %6846 = load i32, ptr %8, align 4, !tbaa !5
  %6847 = mul nsw i32 13, %6846
  %6848 = add nsw i32 %6845, %6847
  %6849 = sext i32 %6848 to i64
  %6850 = getelementptr inbounds double, ptr %6844, i64 %6849
  %6851 = load double, ptr %6850, align 8, !tbaa !11
  %6852 = call double @llvm.fmuladd.f64(double 0x3CB2FCB85F5C617B, double %6851, double %6843)
  %6853 = load ptr, ptr %7, align 8, !tbaa !9
  %6854 = load i32, ptr %12, align 4, !tbaa !5
  %6855 = load i32, ptr %8, align 4, !tbaa !5
  %6856 = mul nsw i32 14, %6855
  %6857 = add nsw i32 %6854, %6856
  %6858 = sext i32 %6857 to i64
  %6859 = getelementptr inbounds double, ptr %6853, i64 %6858
  %6860 = load double, ptr %6859, align 8, !tbaa !11
  %6861 = call double @llvm.fmuladd.f64(double 0x3CC17DC87F455351, double %6860, double %6852)
  %6862 = load ptr, ptr %7, align 8, !tbaa !9
  %6863 = load i32, ptr %12, align 4, !tbaa !5
  %6864 = load i32, ptr %8, align 4, !tbaa !5
  %6865 = mul nsw i32 15, %6864
  %6866 = add nsw i32 %6863, %6865
  %6867 = sext i32 %6866 to i64
  %6868 = getelementptr inbounds double, ptr %6862, i64 %6867
  %6869 = load double, ptr %6868, align 8, !tbaa !11
  %6870 = call double @llvm.fmuladd.f64(double 0xBFE4A7E9CB8A3496, double %6869, double %6861)
  %6871 = load ptr, ptr %7, align 8, !tbaa !9
  %6872 = load i32, ptr %12, align 4, !tbaa !5
  %6873 = load i32, ptr %8, align 4, !tbaa !5
  %6874 = mul nsw i32 16, %6873
  %6875 = add nsw i32 %6872, %6874
  %6876 = sext i32 %6875 to i64
  %6877 = getelementptr inbounds double, ptr %6871, i64 %6876
  %6878 = load double, ptr %6877, align 8, !tbaa !11
  %6879 = call double @llvm.fmuladd.f64(double 0x3CA791A32887A121, double %6878, double %6870)
  %6880 = load ptr, ptr %7, align 8, !tbaa !9
  %6881 = load i32, ptr %12, align 4, !tbaa !5
  %6882 = load i32, ptr %8, align 4, !tbaa !5
  %6883 = mul nsw i32 17, %6882
  %6884 = add nsw i32 %6881, %6883
  %6885 = sext i32 %6884 to i64
  %6886 = getelementptr inbounds double, ptr %6880, i64 %6885
  %6887 = load double, ptr %6886, align 8, !tbaa !11
  %6888 = call double @llvm.fmuladd.f64(double 0x3CB12159E6369CA7, double %6887, double %6879)
  store double %6888, ptr %11, align 8, !tbaa !11
  %6889 = load double, ptr %11, align 8, !tbaa !11
  %6890 = load ptr, ptr %9, align 8, !tbaa !9
  %6891 = load i32, ptr %12, align 4, !tbaa !5
  %6892 = load i32, ptr %10, align 4, !tbaa !5
  %6893 = mul nsw i32 39, %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 = fadd double %6897, %6889
  store double %6898, ptr %6896, align 8, !tbaa !11
  %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 0, %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 = load ptr, ptr %7, align 8, !tbaa !9
  %6908 = load i32, ptr %12, align 4, !tbaa !5
  %6909 = load i32, ptr %8, align 4, !tbaa !5
  %6910 = mul nsw i32 1, %6909
  %6911 = add nsw i32 %6908, %6910
  %6912 = sext i32 %6911 to i64
  %6913 = getelementptr inbounds double, ptr %6907, i64 %6912
  %6914 = load double, ptr %6913, align 8, !tbaa !11
  %6915 = fmul double 0xBCF04E8D6B1B7312, %6914
  %6916 = call double @llvm.fmuladd.f64(double 0x3D0962BFBF7950FE, double %6906, double %6915)
  %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 2, %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 0x3D094FA68F9AC90D, 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 3, %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 0x3D0245B3F19FA08F, 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 4, %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 0x3FFEFBDEB14F4E48, 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 5, %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 0x3D056D8568281090, double %6951, double %6943)
  %6953 = load ptr, ptr %7, align 8, !tbaa !9
  %6954 = load i32, ptr %12, align 4, !tbaa !5
  %6955 = load i32, ptr %8, align 4, !tbaa !5
  %6956 = mul nsw i32 6, %6955
  %6957 = add nsw i32 %6954, %6956
  %6958 = sext i32 %6957 to i64
  %6959 = getelementptr inbounds double, ptr %6953, i64 %6958
  %6960 = load double, ptr %6959, align 8, !tbaa !11
  %6961 = call double @llvm.fmuladd.f64(double 0xBCF473CE704FB7B1, double %6960, double %6952)
  %6962 = load ptr, ptr %7, align 8, !tbaa !9
  %6963 = load i32, ptr %12, align 4, !tbaa !5
  %6964 = load i32, ptr %8, align 4, !tbaa !5
  %6965 = mul nsw i32 7, %6964
  %6966 = add nsw i32 %6963, %6965
  %6967 = sext i32 %6966 to i64
  %6968 = getelementptr inbounds double, ptr %6962, i64 %6967
  %6969 = load double, ptr %6968, align 8, !tbaa !11
  %6970 = call double @llvm.fmuladd.f64(double 0x3CDC972A6828DF4A, double %6969, double %6961)
  %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 8, %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 = call double @llvm.fmuladd.f64(double 0xBCF52443B5049A2F, double %6978, double %6970)
  %6980 = load ptr, ptr %7, align 8, !tbaa !9
  %6981 = load i32, ptr %12, align 4, !tbaa !5
  %6982 = load i32, ptr %8, align 4, !tbaa !5
  %6983 = mul nsw i32 9, %6982
  %6984 = add nsw i32 %6981, %6983
  %6985 = sext i32 %6984 to i64
  %6986 = getelementptr inbounds double, ptr %6980, i64 %6985
  %6987 = load double, ptr %6986, align 8, !tbaa !11
  %6988 = call double @llvm.fmuladd.f64(double 0xBCEB3EC748C84EAF, double %6987, double %6979)
  %6989 = load ptr, ptr %7, align 8, !tbaa !9
  %6990 = load i32, ptr %12, align 4, !tbaa !5
  %6991 = load i32, ptr %8, align 4, !tbaa !5
  %6992 = mul nsw i32 10, %6991
  %6993 = add nsw i32 %6990, %6992
  %6994 = sext i32 %6993 to i64
  %6995 = getelementptr inbounds double, ptr %6989, i64 %6994
  %6996 = load double, ptr %6995, align 8, !tbaa !11
  %6997 = call double @llvm.fmuladd.f64(double 0x3FF08654A2D4F71C, double %6996, double %6988)
  %6998 = load ptr, ptr %7, align 8, !tbaa !9
  %6999 = load i32, ptr %12, align 4, !tbaa !5
  %7000 = load i32, ptr %8, align 4, !tbaa !5
  %7001 = mul nsw i32 11, %7000
  %7002 = add nsw i32 %6999, %7001
  %7003 = sext i32 %7002 to i64
  %7004 = getelementptr inbounds double, ptr %6998, i64 %7003
  %7005 = load double, ptr %7004, align 8, !tbaa !11
  %7006 = call double @llvm.fmuladd.f64(double 0xBCF0EA0E4F0ED202, double %7005, double %6997)
  %7007 = load ptr, ptr %7, align 8, !tbaa !9
  %7008 = load i32, ptr %12, align 4, !tbaa !5
  %7009 = load i32, ptr %8, align 4, !tbaa !5
  %7010 = mul nsw i32 12, %7009
  %7011 = add nsw i32 %7008, %7010
  %7012 = sext i32 %7011 to i64
  %7013 = getelementptr inbounds double, ptr %7007, i64 %7012
  %7014 = load double, ptr %7013, align 8, !tbaa !11
  %7015 = call double @llvm.fmuladd.f64(double 0xBC957D30E9E11EAA, double %7014, double %7006)
  %7016 = load ptr, ptr %7, align 8, !tbaa !9
  %7017 = load i32, ptr %12, align 4, !tbaa !5
  %7018 = load i32, ptr %8, align 4, !tbaa !5
  %7019 = mul nsw i32 13, %7018
  %7020 = add nsw i32 %7017, %7019
  %7021 = sext i32 %7020 to i64
  %7022 = getelementptr inbounds double, ptr %7016, i64 %7021
  %7023 = load double, ptr %7022, align 8, !tbaa !11
  %7024 = call double @llvm.fmuladd.f64(double 0xBCB020EF0806595A, double %7023, double %7015)
  %7025 = load ptr, ptr %7, align 8, !tbaa !9
  %7026 = load i32, ptr %12, align 4, !tbaa !5
  %7027 = load i32, ptr %8, align 4, !tbaa !5
  %7028 = mul nsw i32 14, %7027
  %7029 = add nsw i32 %7026, %7028
  %7030 = sext i32 %7029 to i64
  %7031 = getelementptr inbounds double, ptr %7025, i64 %7030
  %7032 = load double, ptr %7031, align 8, !tbaa !11
  %7033 = call double @llvm.fmuladd.f64(double 0x3C995AF6A0FAA3BA, double %7032, double %7024)
  %7034 = load ptr, ptr %7, align 8, !tbaa !9
  %7035 = load i32, ptr %12, align 4, !tbaa !5
  %7036 = load i32, ptr %8, align 4, !tbaa !5
  %7037 = mul nsw i32 15, %7036
  %7038 = add nsw i32 %7035, %7037
  %7039 = sext i32 %7038 to i64
  %7040 = getelementptr inbounds double, ptr %7034, i64 %7039
  %7041 = load double, ptr %7040, align 8, !tbaa !11
  %7042 = call double @llvm.fmuladd.f64(double 0xBC7660BBB7D81C3F, double %7041, double %7033)
  %7043 = load ptr, ptr %7, align 8, !tbaa !9
  %7044 = load i32, ptr %12, align 4, !tbaa !5
  %7045 = load i32, ptr %8, align 4, !tbaa !5
  %7046 = mul nsw i32 16, %7045
  %7047 = add nsw i32 %7044, %7046
  %7048 = sext i32 %7047 to i64
  %7049 = getelementptr inbounds double, ptr %7043, i64 %7048
  %7050 = load double, ptr %7049, align 8, !tbaa !11
  %7051 = call double @llvm.fmuladd.f64(double 0xBFE4A7E9CB8A3494, double %7050, double %7042)
  %7052 = load ptr, ptr %7, align 8, !tbaa !9
  %7053 = load i32, ptr %12, align 4, !tbaa !5
  %7054 = load i32, ptr %8, align 4, !tbaa !5
  %7055 = mul nsw i32 17, %7054
  %7056 = add nsw i32 %7053, %7055
  %7057 = sext i32 %7056 to i64
  %7058 = getelementptr inbounds double, ptr %7052, i64 %7057
  %7059 = load double, ptr %7058, align 8, !tbaa !11
  %7060 = call double @llvm.fmuladd.f64(double 0x3CC2ED1D85004B30, double %7059, double %7051)
  store double %7060, ptr %11, align 8, !tbaa !11
  %7061 = load double, ptr %11, align 8, !tbaa !11
  %7062 = load ptr, ptr %9, align 8, !tbaa !9
  %7063 = load i32, ptr %12, align 4, !tbaa !5
  %7064 = load i32, ptr %10, align 4, !tbaa !5
  %7065 = mul nsw i32 40, %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 = fadd double %7069, %7061
  store double %7070, ptr %7068, align 8, !tbaa !11
  %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 0, %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 = load ptr, ptr %7, align 8, !tbaa !9
  %7080 = load i32, ptr %12, align 4, !tbaa !5
  %7081 = load i32, ptr %8, align 4, !tbaa !5
  %7082 = mul nsw i32 1, %7081
  %7083 = add nsw i32 %7080, %7082
  %7084 = sext i32 %7083 to i64
  %7085 = getelementptr inbounds double, ptr %7079, i64 %7084
  %7086 = load double, ptr %7085, align 8, !tbaa !11
  %7087 = fmul double 0x3D094FBC9693CCC3, %7086
  %7088 = call double @llvm.fmuladd.f64(double 0x3D09F39F45669420, double %7078, double %7087)
  %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 2, %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 0xBCF0CC0D6843A692, 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 3, %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 0x3D02CCBAD3CD71B6, 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 4, %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 0x3D0684AE6A31C6A8, 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 5, %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 0x3FFEFBDEB14F4E48, 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 6, %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 0xBCF4BE5204136C30, 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 7, %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 0xBCF3302716E6F62B, 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 8, %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 0x3CD8A971F372F94D, 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 9, %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 0xBCEE0138B737B153, 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 10, %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 0xBCF1BE2AED2C7606, 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 11, %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 0x3FF08654A2D4F717, 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 12, %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 0x3C89DD26D5B75F58, 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 13, %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 0xBCAB2729CD0FE620, 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 14, %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 0x3CB60C661FD23425, 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 15, %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 0x3CA4E4D6801EA791, 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 16, %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 0xBC7BA72BEBF9CA81, 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 17, %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 0xBFE4A7E9CB8A349A, double %7231, double %7223)
  store double %7232, ptr %11, align 8, !tbaa !11
  %7233 = load double, ptr %11, align 8, !tbaa !11
  %7234 = load ptr, ptr %9, align 8, !tbaa !9
  %7235 = load i32, ptr %12, align 4, !tbaa !5
  %7236 = load i32, ptr %10, align 4, !tbaa !5
  %7237 = mul nsw i32 41, %7236
  %7238 = add nsw i32 %7235, %7237
  %7239 = sext i32 %7238 to i64
  %7240 = getelementptr inbounds double, ptr %7234, i64 %7239
  %7241 = load double, ptr %7240, align 8, !tbaa !11
  %7242 = fadd double %7241, %7233
  store double %7242, ptr %7240, align 8, !tbaa !11
  %7243 = load ptr, ptr %7, align 8, !tbaa !9
  %7244 = load i32, ptr %12, align 4, !tbaa !5
  %7245 = load i32, ptr %8, align 4, !tbaa !5
  %7246 = mul nsw i32 0, %7245
  %7247 = add nsw i32 %7244, %7246
  %7248 = sext i32 %7247 to i64
  %7249 = getelementptr inbounds double, ptr %7243, i64 %7248
  %7250 = load double, ptr %7249, align 8, !tbaa !11
  %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 1, %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 = fmul double 0x3CE92F44973E98E2, %7258
  %7260 = call double @llvm.fmuladd.f64(double 0xBFF9D1E43E6CC16D, double %7250, double %7259)
  %7261 = load ptr, ptr %7, align 8, !tbaa !9
  %7262 = load i32, ptr %12, align 4, !tbaa !5
  %7263 = load i32, ptr %8, align 4, !tbaa !5
  %7264 = mul nsw i32 2, %7263
  %7265 = add nsw i32 %7262, %7264
  %7266 = sext i32 %7265 to i64
  %7267 = getelementptr inbounds double, ptr %7261, i64 %7266
  %7268 = load double, ptr %7267, align 8, !tbaa !11
  %7269 = call double @llvm.fmuladd.f64(double 0x3CE8D765A1B41E69, double %7268, double %7260)
  %7270 = load ptr, ptr %7, align 8, !tbaa !9
  %7271 = load i32, ptr %12, align 4, !tbaa !5
  %7272 = load i32, ptr %8, align 4, !tbaa !5
  %7273 = mul nsw i32 3, %7272
  %7274 = add nsw i32 %7271, %7273
  %7275 = sext i32 %7274 to i64
  %7276 = getelementptr inbounds double, ptr %7270, i64 %7275
  %7277 = load double, ptr %7276, align 8, !tbaa !11
  %7278 = call double @llvm.fmuladd.f64(double 0x3CE01DEF58A7A769, double %7277, double %7269)
  %7279 = load ptr, ptr %7, align 8, !tbaa !9
  %7280 = load i32, ptr %12, align 4, !tbaa !5
  %7281 = load i32, ptr %8, align 4, !tbaa !5
  %7282 = mul nsw i32 4, %7281
  %7283 = add nsw i32 %7280, %7282
  %7284 = sext i32 %7283 to i64
  %7285 = getelementptr inbounds double, ptr %7279, i64 %7284
  %7286 = load double, ptr %7285, align 8, !tbaa !11
  %7287 = call double @llvm.fmuladd.f64(double 0xBCF92CA4F0107010, double %7286, double %7278)
  %7288 = load ptr, ptr %7, align 8, !tbaa !9
  %7289 = load i32, ptr %12, align 4, !tbaa !5
  %7290 = load i32, ptr %8, align 4, !tbaa !5
  %7291 = mul nsw i32 5, %7290
  %7292 = add nsw i32 %7289, %7291
  %7293 = sext i32 %7292 to i64
  %7294 = getelementptr inbounds double, ptr %7288, i64 %7293
  %7295 = load double, ptr %7294, align 8, !tbaa !11
  %7296 = call double @llvm.fmuladd.f64(double 0xBCFA01E43E6CC1B4, double %7295, double %7287)
  %7297 = load ptr, ptr %7, align 8, !tbaa !9
  %7298 = load i32, ptr %12, align 4, !tbaa !5
  %7299 = load i32, ptr %8, align 4, !tbaa !5
  %7300 = mul nsw i32 6, %7299
  %7301 = add nsw i32 %7298, %7300
  %7302 = sext i32 %7301 to i64
  %7303 = getelementptr inbounds double, ptr %7297, i64 %7302
  %7304 = load double, ptr %7303, align 8, !tbaa !11
  %7305 = call double @llvm.fmuladd.f64(double 0xB9BED7FFFFFFFFFE, double %7304, double %7296)
  %7306 = load ptr, ptr %7, align 8, !tbaa !9
  %7307 = load i32, ptr %12, align 4, !tbaa !5
  %7308 = load i32, ptr %8, align 4, !tbaa !5
  %7309 = mul nsw i32 7, %7308
  %7310 = add nsw i32 %7307, %7309
  %7311 = sext i32 %7310 to i64
  %7312 = getelementptr inbounds double, ptr %7306, i64 %7311
  %7313 = load double, ptr %7312, align 8, !tbaa !11
  %7314 = call double @llvm.fmuladd.f64(double 0xB997600000000000, double %7313, double %7305)
  %7315 = load ptr, ptr %7, align 8, !tbaa !9
  %7316 = load i32, ptr %12, align 4, !tbaa !5
  %7317 = load i32, ptr %8, align 4, !tbaa !5
  %7318 = mul nsw i32 8, %7317
  %7319 = add nsw i32 %7316, %7318
  %7320 = sext i32 %7319 to i64
  %7321 = getelementptr inbounds double, ptr %7315, i64 %7320
  %7322 = load double, ptr %7321, align 8, !tbaa !11
  %7323 = call double @llvm.fmuladd.f64(double 0xB980BFFFFFFFFFFE, double %7322, double %7314)
  %7324 = load ptr, ptr %7, align 8, !tbaa !9
  %7325 = load i32, ptr %12, align 4, !tbaa !5
  %7326 = load i32, ptr %8, align 4, !tbaa !5
  %7327 = mul nsw i32 9, %7326
  %7328 = add nsw i32 %7325, %7327
  %7329 = sext i32 %7328 to i64
  %7330 = getelementptr inbounds double, ptr %7324, i64 %7329
  %7331 = load double, ptr %7330, align 8, !tbaa !11
  %7332 = call double @llvm.fmuladd.f64(double 0xB9914C0000000000, double %7331, double %7323)
  %7333 = load ptr, ptr %7, align 8, !tbaa !9
  %7334 = load i32, ptr %12, align 4, !tbaa !5
  %7335 = load i32, ptr %8, align 4, !tbaa !5
  %7336 = mul nsw i32 10, %7335
  %7337 = add nsw i32 %7334, %7336
  %7338 = sext i32 %7337 to i64
  %7339 = getelementptr inbounds double, ptr %7333, i64 %7338
  %7340 = load double, ptr %7339, align 8, !tbaa !11
  %7341 = call double @llvm.fmuladd.f64(double 0x3970000000000000, double %7340, double %7332)
  %7342 = load ptr, ptr %7, align 8, !tbaa !9
  %7343 = load i32, ptr %12, align 4, !tbaa !5
  %7344 = load i32, ptr %8, align 4, !tbaa !5
  %7345 = mul nsw i32 11, %7344
  %7346 = add nsw i32 %7343, %7345
  %7347 = sext i32 %7346 to i64
  %7348 = getelementptr inbounds double, ptr %7342, i64 %7347
  %7349 = load double, ptr %7348, align 8, !tbaa !11
  %7350 = call double @llvm.fmuladd.f64(double 0x39A0000000000000, double %7349, double %7341)
  %7351 = load ptr, ptr %7, align 8, !tbaa !9
  %7352 = load i32, ptr %12, align 4, !tbaa !5
  %7353 = load i32, ptr %8, align 4, !tbaa !5
  %7354 = mul nsw i32 12, %7353
  %7355 = add nsw i32 %7352, %7354
  %7356 = sext i32 %7355 to i64
  %7357 = getelementptr inbounds double, ptr %7351, i64 %7356
  %7358 = load double, ptr %7357, align 8, !tbaa !11
  %7359 = call double @llvm.fmuladd.f64(double 0x3FF9D1E43E6CC16D, double %7358, double %7350)
  %7360 = load ptr, ptr %7, align 8, !tbaa !9
  %7361 = load i32, ptr %12, align 4, !tbaa !5
  %7362 = load i32, ptr %8, align 4, !tbaa !5
  %7363 = mul nsw i32 13, %7362
  %7364 = add nsw i32 %7361, %7363
  %7365 = sext i32 %7364 to i64
  %7366 = getelementptr inbounds double, ptr %7360, i64 %7365
  %7367 = load double, ptr %7366, align 8, !tbaa !11
  %7368 = call double @llvm.fmuladd.f64(double 0xBCE92F44973E98E2, double %7367, double %7359)
  %7369 = load ptr, ptr %7, align 8, !tbaa !9
  %7370 = load i32, ptr %12, align 4, !tbaa !5
  %7371 = load i32, ptr %8, align 4, !tbaa !5
  %7372 = mul nsw i32 14, %7371
  %7373 = add nsw i32 %7370, %7372
  %7374 = sext i32 %7373 to i64
  %7375 = getelementptr inbounds double, ptr %7369, i64 %7374
  %7376 = load double, ptr %7375, align 8, !tbaa !11
  %7377 = call double @llvm.fmuladd.f64(double 0xBCE8D765A1B41E69, double %7376, double %7368)
  %7378 = load ptr, ptr %7, align 8, !tbaa !9
  %7379 = load i32, ptr %12, align 4, !tbaa !5
  %7380 = load i32, ptr %8, align 4, !tbaa !5
  %7381 = mul nsw i32 15, %7380
  %7382 = add nsw i32 %7379, %7381
  %7383 = sext i32 %7382 to i64
  %7384 = getelementptr inbounds double, ptr %7378, i64 %7383
  %7385 = load double, ptr %7384, align 8, !tbaa !11
  %7386 = call double @llvm.fmuladd.f64(double 0xBCE01DEF58A7A769, double %7385, double %7377)
  %7387 = load ptr, ptr %7, align 8, !tbaa !9
  %7388 = load i32, ptr %12, align 4, !tbaa !5
  %7389 = load i32, ptr %8, align 4, !tbaa !5
  %7390 = mul nsw i32 16, %7389
  %7391 = add nsw i32 %7388, %7390
  %7392 = sext i32 %7391 to i64
  %7393 = getelementptr inbounds double, ptr %7387, i64 %7392
  %7394 = load double, ptr %7393, align 8, !tbaa !11
  %7395 = call double @llvm.fmuladd.f64(double 0x3CF95CA4F0107011, double %7394, double %7386)
  %7396 = load ptr, ptr %7, align 8, !tbaa !9
  %7397 = load i32, ptr %12, align 4, !tbaa !5
  %7398 = load i32, ptr %8, align 4, !tbaa !5
  %7399 = mul nsw i32 17, %7398
  %7400 = add nsw i32 %7397, %7399
  %7401 = sext i32 %7400 to i64
  %7402 = getelementptr inbounds double, ptr %7396, i64 %7401
  %7403 = load double, ptr %7402, align 8, !tbaa !11
  %7404 = call double @llvm.fmuladd.f64(double 0x3CFA31E43E6CC1B5, double %7403, double %7395)
  store double %7404, ptr %11, align 8, !tbaa !11
  %7405 = load double, ptr %11, align 8, !tbaa !11
  %7406 = load ptr, ptr %9, align 8, !tbaa !9
  %7407 = load i32, ptr %12, align 4, !tbaa !5
  %7408 = load i32, ptr %10, align 4, !tbaa !5
  %7409 = mul nsw i32 42, %7408
  %7410 = add nsw i32 %7407, %7409
  %7411 = sext i32 %7410 to i64
  %7412 = getelementptr inbounds double, ptr %7406, i64 %7411
  %7413 = load double, ptr %7412, align 8, !tbaa !11
  %7414 = fadd double %7413, %7405
  store double %7414, ptr %7412, align 8, !tbaa !11
  %7415 = load ptr, ptr %7, align 8, !tbaa !9
  %7416 = load i32, ptr %12, align 4, !tbaa !5
  %7417 = load i32, ptr %8, align 4, !tbaa !5
  %7418 = mul nsw i32 0, %7417
  %7419 = add nsw i32 %7416, %7418
  %7420 = sext i32 %7419 to i64
  %7421 = getelementptr inbounds double, ptr %7415, i64 %7420
  %7422 = load double, ptr %7421, align 8, !tbaa !11
  %7423 = load ptr, ptr %7, align 8, !tbaa !9
  %7424 = load i32, ptr %12, align 4, !tbaa !5
  %7425 = load i32, ptr %8, align 4, !tbaa !5
  %7426 = mul nsw i32 1, %7425
  %7427 = add nsw i32 %7424, %7426
  %7428 = sext i32 %7427 to i64
  %7429 = getelementptr inbounds double, ptr %7423, i64 %7428
  %7430 = load double, ptr %7429, align 8, !tbaa !11
  %7431 = fmul double 0xBFF9D1E43E6CC169, %7430
  %7432 = call double @llvm.fmuladd.f64(double 0x3CE5FF86AC29A3F8, double %7422, double %7431)
  %7433 = load ptr, ptr %7, align 8, !tbaa !9
  %7434 = load i32, ptr %12, align 4, !tbaa !5
  %7435 = load i32, ptr %8, align 4, !tbaa !5
  %7436 = mul nsw i32 2, %7435
  %7437 = add nsw i32 %7434, %7436
  %7438 = sext i32 %7437 to i64
  %7439 = getelementptr inbounds double, ptr %7433, i64 %7438
  %7440 = load double, ptr %7439, align 8, !tbaa !11
  %7441 = call double @llvm.fmuladd.f64(double 0x3CE5698EEEC7055C, double %7440, double %7432)
  %7442 = load ptr, ptr %7, align 8, !tbaa !9
  %7443 = load i32, ptr %12, align 4, !tbaa !5
  %7444 = load i32, ptr %8, align 4, !tbaa !5
  %7445 = mul nsw i32 3, %7444
  %7446 = add nsw i32 %7443, %7445
  %7447 = sext i32 %7446 to i64
  %7448 = getelementptr inbounds double, ptr %7442, i64 %7447
  %7449 = load double, ptr %7448, align 8, !tbaa !11
  %7450 = call double @llvm.fmuladd.f64(double 0xBCFC52AFE82DBFFD, double %7449, double %7441)
  %7451 = load ptr, ptr %7, align 8, !tbaa !9
  %7452 = load i32, ptr %12, align 4, !tbaa !5
  %7453 = load i32, ptr %8, align 4, !tbaa !5
  %7454 = mul nsw i32 4, %7453
  %7455 = add nsw i32 %7452, %7454
  %7456 = sext i32 %7455 to i64
  %7457 = getelementptr inbounds double, ptr %7451, i64 %7456
  %7458 = load double, ptr %7457, align 8, !tbaa !11
  %7459 = call double @llvm.fmuladd.f64(double 0x3CE075CE4E3221E7, double %7458, double %7450)
  %7460 = load ptr, ptr %7, align 8, !tbaa !9
  %7461 = load i32, ptr %12, align 4, !tbaa !5
  %7462 = load i32, ptr %8, align 4, !tbaa !5
  %7463 = mul nsw i32 5, %7462
  %7464 = add nsw i32 %7461, %7463
  %7465 = sext i32 %7464 to i64
  %7466 = getelementptr inbounds double, ptr %7460, i64 %7465
  %7467 = load double, ptr %7466, align 8, !tbaa !11
  %7468 = call double @llvm.fmuladd.f64(double 0xBCF9A8946AD5AD4C, double %7467, double %7459)
  %7469 = load ptr, ptr %7, align 8, !tbaa !9
  %7470 = load i32, ptr %12, align 4, !tbaa !5
  %7471 = load i32, ptr %8, align 4, !tbaa !5
  %7472 = mul nsw i32 6, %7471
  %7473 = add nsw i32 %7470, %7472
  %7474 = sext i32 %7473 to i64
  %7475 = getelementptr inbounds double, ptr %7469, i64 %7474
  %7476 = load double, ptr %7475, align 8, !tbaa !11
  %7477 = call double @llvm.fmuladd.f64(double 0x3C7227B423504AEF, double %7476, double %7468)
  %7478 = load ptr, ptr %7, align 8, !tbaa !9
  %7479 = load i32, ptr %12, align 4, !tbaa !5
  %7480 = load i32, ptr %8, align 4, !tbaa !5
  %7481 = mul nsw i32 7, %7480
  %7482 = add nsw i32 %7479, %7481
  %7483 = sext i32 %7482 to i64
  %7484 = getelementptr inbounds double, ptr %7478, i64 %7483
  %7485 = load double, ptr %7484, align 8, !tbaa !11
  %7486 = call double @llvm.fmuladd.f64(double 0xBC3E23F1C2D296A5, double %7485, double %7477)
  %7487 = load ptr, ptr %7, align 8, !tbaa !9
  %7488 = load i32, ptr %12, align 4, !tbaa !5
  %7489 = load i32, ptr %8, align 4, !tbaa !5
  %7490 = mul nsw i32 8, %7489
  %7491 = add nsw i32 %7488, %7490
  %7492 = sext i32 %7491 to i64
  %7493 = getelementptr inbounds double, ptr %7487, i64 %7492
  %7494 = load double, ptr %7493, align 8, !tbaa !11
  %7495 = call double @llvm.fmuladd.f64(double 0xBC3E23F1C2D29CF9, double %7494, double %7486)
  %7496 = load ptr, ptr %7, align 8, !tbaa !9
  %7497 = load i32, ptr %12, align 4, !tbaa !5
  %7498 = load i32, ptr %8, align 4, !tbaa !5
  %7499 = mul nsw i32 9, %7498
  %7500 = add nsw i32 %7497, %7499
  %7501 = sext i32 %7500 to i64
  %7502 = getelementptr inbounds double, ptr %7496, i64 %7501
  %7503 = load double, ptr %7502, align 8, !tbaa !11
  %7504 = call double @llvm.fmuladd.f64(double 0xBC530A5432687980, double %7503, double %7495)
  %7505 = load ptr, ptr %7, align 8, !tbaa !9
  %7506 = load i32, ptr %12, align 4, !tbaa !5
  %7507 = load i32, ptr %8, align 4, !tbaa !5
  %7508 = mul nsw i32 10, %7507
  %7509 = add nsw i32 %7506, %7508
  %7510 = sext i32 %7509 to i64
  %7511 = getelementptr inbounds double, ptr %7505, i64 %7510
  %7512 = load double, ptr %7511, align 8, !tbaa !11
  %7513 = call double @llvm.fmuladd.f64(double 0xBC534141BCB7B1E0, double %7512, double %7504)
  %7514 = load ptr, ptr %7, align 8, !tbaa !9
  %7515 = load i32, ptr %12, align 4, !tbaa !5
  %7516 = load i32, ptr %8, align 4, !tbaa !5
  %7517 = mul nsw i32 11, %7516
  %7518 = add nsw i32 %7515, %7517
  %7519 = sext i32 %7518 to i64
  %7520 = getelementptr inbounds double, ptr %7514, i64 %7519
  %7521 = load double, ptr %7520, align 8, !tbaa !11
  %7522 = call double @llvm.fmuladd.f64(double 0xBC534141BCB7AF1E, double %7521, double %7513)
  %7523 = load ptr, ptr %7, align 8, !tbaa !9
  %7524 = load i32, ptr %12, align 4, !tbaa !5
  %7525 = load i32, ptr %8, align 4, !tbaa !5
  %7526 = mul nsw i32 12, %7525
  %7527 = add nsw i32 %7524, %7526
  %7528 = sext i32 %7527 to i64
  %7529 = getelementptr inbounds double, ptr %7523, i64 %7528
  %7530 = load double, ptr %7529, align 8, !tbaa !11
  %7531 = call double @llvm.fmuladd.f64(double 0xBCE5AF86AC29A3F8, double %7530, double %7522)
  %7532 = load ptr, ptr %7, align 8, !tbaa !9
  %7533 = load i32, ptr %12, align 4, !tbaa !5
  %7534 = load i32, ptr %8, align 4, !tbaa !5
  %7535 = mul nsw i32 13, %7534
  %7536 = add nsw i32 %7533, %7535
  %7537 = sext i32 %7536 to i64
  %7538 = getelementptr inbounds double, ptr %7532, i64 %7537
  %7539 = load double, ptr %7538, align 8, !tbaa !11
  %7540 = call double @llvm.fmuladd.f64(double 0x3FF9D1E43E6CC169, double %7539, double %7531)
  %7541 = load ptr, ptr %7, align 8, !tbaa !9
  %7542 = load i32, ptr %12, align 4, !tbaa !5
  %7543 = load i32, ptr %8, align 4, !tbaa !5
  %7544 = mul nsw i32 14, %7543
  %7545 = add nsw i32 %7542, %7544
  %7546 = sext i32 %7545 to i64
  %7547 = getelementptr inbounds double, ptr %7541, i64 %7546
  %7548 = load double, ptr %7547, align 8, !tbaa !11
  %7549 = call double @llvm.fmuladd.f64(double 0xBCE5698EEEC70559, double %7548, double %7540)
  %7550 = load ptr, ptr %7, align 8, !tbaa !9
  %7551 = load i32, ptr %12, align 4, !tbaa !5
  %7552 = load i32, ptr %8, align 4, !tbaa !5
  %7553 = mul nsw i32 15, %7552
  %7554 = add nsw i32 %7551, %7553
  %7555 = sext i32 %7554 to i64
  %7556 = getelementptr inbounds double, ptr %7550, i64 %7555
  %7557 = load double, ptr %7556, align 8, !tbaa !11
  %7558 = call double @llvm.fmuladd.f64(double 0x3CFC52AFE82DBFFF, double %7557, double %7549)
  %7559 = load ptr, ptr %7, align 8, !tbaa !9
  %7560 = load i32, ptr %12, align 4, !tbaa !5
  %7561 = load i32, ptr %8, align 4, !tbaa !5
  %7562 = mul nsw i32 16, %7561
  %7563 = add nsw i32 %7560, %7562
  %7564 = sext i32 %7563 to i64
  %7565 = getelementptr inbounds double, ptr %7559, i64 %7564
  %7566 = load double, ptr %7565, align 8, !tbaa !11
  %7567 = call double @llvm.fmuladd.f64(double 0xBCE075CE4E3221E7, double %7566, double %7558)
  %7568 = load ptr, ptr %7, align 8, !tbaa !9
  %7569 = load i32, ptr %12, align 4, !tbaa !5
  %7570 = load i32, ptr %8, align 4, !tbaa !5
  %7571 = mul nsw i32 17, %7570
  %7572 = add nsw i32 %7569, %7571
  %7573 = sext i32 %7572 to i64
  %7574 = getelementptr inbounds double, ptr %7568, i64 %7573
  %7575 = load double, ptr %7574, align 8, !tbaa !11
  %7576 = call double @llvm.fmuladd.f64(double 0x3CFA38946AD5AD4B, double %7575, double %7567)
  store double %7576, ptr %11, align 8, !tbaa !11
  %7577 = load double, ptr %11, align 8, !tbaa !11
  %7578 = load ptr, ptr %9, align 8, !tbaa !9
  %7579 = load i32, ptr %12, align 4, !tbaa !5
  %7580 = load i32, ptr %10, align 4, !tbaa !5
  %7581 = mul nsw i32 43, %7580
  %7582 = add nsw i32 %7579, %7581
  %7583 = sext i32 %7582 to i64
  %7584 = getelementptr inbounds double, ptr %7578, i64 %7583
  %7585 = load double, ptr %7584, align 8, !tbaa !11
  %7586 = fadd double %7585, %7577
  store double %7586, ptr %7584, align 8, !tbaa !11
  %7587 = load ptr, ptr %7, align 8, !tbaa !9
  %7588 = load i32, ptr %12, align 4, !tbaa !5
  %7589 = load i32, ptr %8, align 4, !tbaa !5
  %7590 = mul nsw i32 0, %7589
  %7591 = add nsw i32 %7588, %7590
  %7592 = sext i32 %7591 to i64
  %7593 = getelementptr inbounds double, ptr %7587, i64 %7592
  %7594 = load double, ptr %7593, align 8, !tbaa !11
  %7595 = load ptr, ptr %7, align 8, !tbaa !9
  %7596 = load i32, ptr %12, align 4, !tbaa !5
  %7597 = load i32, ptr %8, align 4, !tbaa !5
  %7598 = mul nsw i32 1, %7597
  %7599 = add nsw i32 %7596, %7598
  %7600 = sext i32 %7599 to i64
  %7601 = getelementptr inbounds double, ptr %7595, i64 %7600
  %7602 = load double, ptr %7601, align 8, !tbaa !11
  %7603 = fmul double 0x3CE800B5754B32D9, %7602
  %7604 = call double @llvm.fmuladd.f64(double 0x3CE8DCA4F0107014, double %7594, double %7603)
  %7605 = load ptr, ptr %7, align 8, !tbaa !9
  %7606 = load i32, ptr %12, align 4, !tbaa !5
  %7607 = load i32, ptr %8, align 4, !tbaa !5
  %7608 = mul nsw i32 2, %7607
  %7609 = add nsw i32 %7606, %7608
  %7610 = sext i32 %7609 to i64
  %7611 = getelementptr inbounds double, ptr %7605, i64 %7610
  %7612 = load double, ptr %7611, align 8, !tbaa !11
  %7613 = call double @llvm.fmuladd.f64(double 0xBFF9D1E43E6CC164, double %7612, double %7604)
  %7614 = load ptr, ptr %7, align 8, !tbaa !9
  %7615 = load i32, ptr %12, align 4, !tbaa !5
  %7616 = load i32, ptr %8, align 4, !tbaa !5
  %7617 = mul nsw i32 3, %7616
  %7618 = add nsw i32 %7615, %7617
  %7619 = sext i32 %7618 to i64
  %7620 = getelementptr inbounds double, ptr %7614, i64 %7619
  %7621 = load double, ptr %7620, align 8, !tbaa !11
  %7622 = call double @llvm.fmuladd.f64(double 0xBCFBFD7099D16E59, double %7621, double %7613)
  %7623 = load ptr, ptr %7, align 8, !tbaa !9
  %7624 = load i32, ptr %12, align 4, !tbaa !5
  %7625 = load i32, ptr %8, align 4, !tbaa !5
  %7626 = mul nsw i32 4, %7625
  %7627 = add nsw i32 %7624, %7626
  %7628 = sext i32 %7627 to i64
  %7629 = getelementptr inbounds double, ptr %7623, i64 %7628
  %7630 = load double, ptr %7629, align 8, !tbaa !11
  %7631 = call double @llvm.fmuladd.f64(double 0xBCFA23551C795BA5, double %7630, double %7622)
  %7632 = load ptr, ptr %7, align 8, !tbaa !9
  %7633 = load i32, ptr %12, align 4, !tbaa !5
  %7634 = load i32, ptr %8, align 4, !tbaa !5
  %7635 = mul nsw i32 5, %7634
  %7636 = add nsw i32 %7633, %7635
  %7637 = sext i32 %7636 to i64
  %7638 = getelementptr inbounds double, ptr %7632, i64 %7637
  %7639 = load double, ptr %7638, align 8, !tbaa !11
  %7640 = call double @llvm.fmuladd.f64(double 0x3CD86765A1B41E6D, double %7639, double %7631)
  %7641 = load ptr, ptr %7, align 8, !tbaa !9
  %7642 = load i32, ptr %12, align 4, !tbaa !5
  %7643 = load i32, ptr %8, align 4, !tbaa !5
  %7644 = mul nsw i32 6, %7643
  %7645 = add nsw i32 %7642, %7644
  %7646 = sext i32 %7645 to i64
  %7647 = getelementptr inbounds double, ptr %7641, i64 %7646
  %7648 = load double, ptr %7647, align 8, !tbaa !11
  %7649 = call double @llvm.fmuladd.f64(double 0xBC785D904A774BD5, double %7648, double %7640)
  %7650 = load ptr, ptr %7, align 8, !tbaa !9
  %7651 = load i32, ptr %12, align 4, !tbaa !5
  %7652 = load i32, ptr %8, align 4, !tbaa !5
  %7653 = mul nsw i32 7, %7652
  %7654 = add nsw i32 %7651, %7653
  %7655 = sext i32 %7654 to i64
  %7656 = getelementptr inbounds double, ptr %7650, i64 %7655
  %7657 = load double, ptr %7656, align 8, !tbaa !11
  %7658 = call double @llvm.fmuladd.f64(double 0x3C5D818C6ADA883D, double %7657, double %7649)
  %7659 = load ptr, ptr %7, align 8, !tbaa !9
  %7660 = load i32, ptr %12, align 4, !tbaa !5
  %7661 = load i32, ptr %8, align 4, !tbaa !5
  %7662 = mul nsw i32 8, %7661
  %7663 = add nsw i32 %7660, %7662
  %7664 = sext i32 %7663 to i64
  %7665 = getelementptr inbounds double, ptr %7659, i64 %7664
  %7666 = load double, ptr %7665, align 8, !tbaa !11
  %7667 = call double @llvm.fmuladd.f64(double 0x3C5D818C6ADA811C, double %7666, double %7658)
  %7668 = load ptr, ptr %7, align 8, !tbaa !9
  %7669 = load i32, ptr %12, align 4, !tbaa !5
  %7670 = load i32, ptr %8, align 4, !tbaa !5
  %7671 = mul nsw i32 9, %7670
  %7672 = add nsw i32 %7669, %7671
  %7673 = sext i32 %7672 to i64
  %7674 = getelementptr inbounds double, ptr %7668, i64 %7673
  %7675 = load double, ptr %7674, align 8, !tbaa !11
  %7676 = call double @llvm.fmuladd.f64(double 0x3C6988DC43D64BED, double %7675, double %7667)
  %7677 = load ptr, ptr %7, align 8, !tbaa !9
  %7678 = load i32, ptr %12, align 4, !tbaa !5
  %7679 = load i32, ptr %8, align 4, !tbaa !5
  %7680 = mul nsw i32 10, %7679
  %7681 = add nsw i32 %7678, %7680
  %7682 = sext i32 %7681 to i64
  %7683 = getelementptr inbounds double, ptr %7677, i64 %7682
  %7684 = load double, ptr %7683, align 8, !tbaa !11
  %7685 = call double @llvm.fmuladd.f64(double 0xBC6B27A40CE11C6E, double %7684, double %7676)
  %7686 = load ptr, ptr %7, align 8, !tbaa !9
  %7687 = load i32, ptr %12, align 4, !tbaa !5
  %7688 = load i32, ptr %8, align 4, !tbaa !5
  %7689 = mul nsw i32 11, %7688
  %7690 = add nsw i32 %7687, %7689
  %7691 = sext i32 %7690 to i64
  %7692 = getelementptr inbounds double, ptr %7686, i64 %7691
  %7693 = load double, ptr %7692, align 8, !tbaa !11
  %7694 = call double @llvm.fmuladd.f64(double 0xBC8EC9E9033846C9, double %7693, double %7685)
  %7695 = load ptr, ptr %7, align 8, !tbaa !9
  %7696 = load i32, ptr %12, align 4, !tbaa !5
  %7697 = load i32, ptr %8, align 4, !tbaa !5
  %7698 = mul nsw i32 12, %7697
  %7699 = add nsw i32 %7696, %7698
  %7700 = sext i32 %7699 to i64
  %7701 = getelementptr inbounds double, ptr %7695, i64 %7700
  %7702 = load double, ptr %7701, align 8, !tbaa !11
  %7703 = call double @llvm.fmuladd.f64(double 0xBCE8DCA4F0107014, double %7702, double %7694)
  %7704 = load ptr, ptr %7, align 8, !tbaa !9
  %7705 = load i32, ptr %12, align 4, !tbaa !5
  %7706 = load i32, ptr %8, align 4, !tbaa !5
  %7707 = mul nsw i32 13, %7706
  %7708 = add nsw i32 %7705, %7707
  %7709 = sext i32 %7708 to i64
  %7710 = getelementptr inbounds double, ptr %7704, i64 %7709
  %7711 = load double, ptr %7710, align 8, !tbaa !11
  %7712 = call double @llvm.fmuladd.f64(double 0xBCE800B5754B32D7, double %7711, double %7703)
  %7713 = load ptr, ptr %7, align 8, !tbaa !9
  %7714 = load i32, ptr %12, align 4, !tbaa !5
  %7715 = load i32, ptr %8, align 4, !tbaa !5
  %7716 = mul nsw i32 14, %7715
  %7717 = add nsw i32 %7714, %7716
  %7718 = sext i32 %7717 to i64
  %7719 = getelementptr inbounds double, ptr %7713, i64 %7718
  %7720 = load double, ptr %7719, align 8, !tbaa !11
  %7721 = call double @llvm.fmuladd.f64(double 0x3FF9D1E43E6CC164, double %7720, double %7712)
  %7722 = load ptr, ptr %7, align 8, !tbaa !9
  %7723 = load i32, ptr %12, align 4, !tbaa !5
  %7724 = load i32, ptr %8, align 4, !tbaa !5
  %7725 = mul nsw i32 15, %7724
  %7726 = add nsw i32 %7723, %7725
  %7727 = sext i32 %7726 to i64
  %7728 = getelementptr inbounds double, ptr %7722, i64 %7727
  %7729 = load double, ptr %7728, align 8, !tbaa !11
  %7730 = call double @llvm.fmuladd.f64(double 0x3CFBFD7099D16E5A, double %7729, double %7721)
  %7731 = load ptr, ptr %7, align 8, !tbaa !9
  %7732 = load i32, ptr %12, align 4, !tbaa !5
  %7733 = load i32, ptr %8, align 4, !tbaa !5
  %7734 = mul nsw i32 16, %7733
  %7735 = add nsw i32 %7732, %7734
  %7736 = sext i32 %7735 to i64
  %7737 = getelementptr inbounds double, ptr %7731, i64 %7736
  %7738 = load double, ptr %7737, align 8, !tbaa !11
  %7739 = call double @llvm.fmuladd.f64(double 0x3CF9F3551C795BA8, double %7738, double %7730)
  %7740 = load ptr, ptr %7, align 8, !tbaa !9
  %7741 = load i32, ptr %12, align 4, !tbaa !5
  %7742 = load i32, ptr %8, align 4, !tbaa !5
  %7743 = mul nsw i32 17, %7742
  %7744 = add nsw i32 %7741, %7743
  %7745 = sext i32 %7744 to i64
  %7746 = getelementptr inbounds double, ptr %7740, i64 %7745
  %7747 = load double, ptr %7746, align 8, !tbaa !11
  %7748 = call double @llvm.fmuladd.f64(double 0xBCD92765A1B41E6B, double %7747, double %7739)
  store double %7748, ptr %11, align 8, !tbaa !11
  %7749 = load double, ptr %11, align 8, !tbaa !11
  %7750 = load ptr, ptr %9, align 8, !tbaa !9
  %7751 = load i32, ptr %12, align 4, !tbaa !5
  %7752 = load i32, ptr %10, align 4, !tbaa !5
  %7753 = mul nsw i32 44, %7752
  %7754 = add nsw i32 %7751, %7753
  %7755 = sext i32 %7754 to i64
  %7756 = getelementptr inbounds double, ptr %7750, i64 %7755
  %7757 = load double, ptr %7756, align 8, !tbaa !11
  %7758 = fadd double %7757, %7749
  store double %7758, ptr %7756, align 8, !tbaa !11
  %7759 = load ptr, ptr %7, align 8, !tbaa !9
  %7760 = load i32, ptr %12, align 4, !tbaa !5
  %7761 = load i32, ptr %8, align 4, !tbaa !5
  %7762 = mul nsw i32 0, %7761
  %7763 = add nsw i32 %7760, %7762
  %7764 = sext i32 %7763 to i64
  %7765 = getelementptr inbounds double, ptr %7759, i64 %7764
  %7766 = load double, ptr %7765, align 8, !tbaa !11
  %7767 = load ptr, ptr %7, align 8, !tbaa !9
  %7768 = load i32, ptr %12, align 4, !tbaa !5
  %7769 = load i32, ptr %8, align 4, !tbaa !5
  %7770 = mul nsw i32 1, %7769
  %7771 = add nsw i32 %7768, %7770
  %7772 = sext i32 %7771 to i64
  %7773 = getelementptr inbounds double, ptr %7767, i64 %7772
  %7774 = load double, ptr %7773, align 8, !tbaa !11
  %7775 = fmul double 0xBCE9BF0282538DD5, %7774
  %7776 = call double @llvm.fmuladd.f64(double 0x3CD010D114C0DB4A, double %7766, double %7775)
  %7777 = load ptr, ptr %7, align 8, !tbaa !9
  %7778 = load i32, ptr %12, align 4, !tbaa !5
  %7779 = load i32, ptr %8, align 4, !tbaa !5
  %7780 = mul nsw i32 2, %7779
  %7781 = add nsw i32 %7778, %7780
  %7782 = sext i32 %7781 to i64
  %7783 = getelementptr inbounds double, ptr %7777, i64 %7782
  %7784 = load double, ptr %7783, align 8, !tbaa !11
  %7785 = call double @llvm.fmuladd.f64(double 0xBCE87BEC810A2317, double %7784, double %7776)
  %7786 = load ptr, ptr %7, align 8, !tbaa !9
  %7787 = load i32, ptr %12, align 4, !tbaa !5
  %7788 = load i32, ptr %8, align 4, !tbaa !5
  %7789 = mul nsw i32 3, %7788
  %7790 = add nsw i32 %7787, %7789
  %7791 = sext i32 %7790 to i64
  %7792 = getelementptr inbounds double, ptr %7786, i64 %7791
  %7793 = load double, ptr %7792, align 8, !tbaa !11
  %7794 = call double @llvm.fmuladd.f64(double 0xBFF9D1E43E6CC191, double %7793, double %7785)
  %7795 = load ptr, ptr %7, align 8, !tbaa !9
  %7796 = load i32, ptr %12, align 4, !tbaa !5
  %7797 = load i32, ptr %8, align 4, !tbaa !5
  %7798 = mul nsw i32 4, %7797
  %7799 = add nsw i32 %7796, %7798
  %7800 = sext i32 %7799 to i64
  %7801 = getelementptr inbounds double, ptr %7795, i64 %7800
  %7802 = load double, ptr %7801, align 8, !tbaa !11
  %7803 = call double @llvm.fmuladd.f64(double 0xBCE4241B5B3A7CDD, double %7802, double %7794)
  %7804 = load ptr, ptr %7, align 8, !tbaa !9
  %7805 = load i32, ptr %12, align 4, !tbaa !5
  %7806 = load i32, ptr %8, align 4, !tbaa !5
  %7807 = mul nsw i32 5, %7806
  %7808 = add nsw i32 %7805, %7807
  %7809 = sext i32 %7808 to i64
  %7810 = getelementptr inbounds double, ptr %7804, i64 %7809
  %7811 = load double, ptr %7810, align 8, !tbaa !11
  %7812 = call double @llvm.fmuladd.f64(double 0xBCE4741B5B3A7CDD, double %7811, double %7803)
  %7813 = load ptr, ptr %7, align 8, !tbaa !9
  %7814 = load i32, ptr %12, align 4, !tbaa !5
  %7815 = load i32, ptr %8, align 4, !tbaa !5
  %7816 = mul nsw i32 6, %7815
  %7817 = add nsw i32 %7814, %7816
  %7818 = sext i32 %7817 to i64
  %7819 = getelementptr inbounds double, ptr %7813, i64 %7818
  %7820 = load double, ptr %7819, align 8, !tbaa !11
  %7821 = call double @llvm.fmuladd.f64(double 0x3C8AC8C86FCC44A0, double %7820, double %7812)
  %7822 = load ptr, ptr %7, align 8, !tbaa !9
  %7823 = load i32, ptr %12, align 4, !tbaa !5
  %7824 = load i32, ptr %8, align 4, !tbaa !5
  %7825 = mul nsw i32 7, %7824
  %7826 = add nsw i32 %7823, %7825
  %7827 = sext i32 %7826 to i64
  %7828 = getelementptr inbounds double, ptr %7822, i64 %7827
  %7829 = load double, ptr %7828, align 8, !tbaa !11
  %7830 = call double @llvm.fmuladd.f64(double 0x3C8DA397D166657F, double %7829, double %7821)
  %7831 = load ptr, ptr %7, align 8, !tbaa !9
  %7832 = load i32, ptr %12, align 4, !tbaa !5
  %7833 = load i32, ptr %8, align 4, !tbaa !5
  %7834 = mul nsw i32 8, %7833
  %7835 = add nsw i32 %7832, %7834
  %7836 = sext i32 %7835 to i64
  %7837 = getelementptr inbounds double, ptr %7831, i64 %7836
  %7838 = load double, ptr %7837, align 8, !tbaa !11
  %7839 = call double @llvm.fmuladd.f64(double 0x3C8DA397D1666583, double %7838, double %7830)
  %7840 = load ptr, ptr %7, align 8, !tbaa !9
  %7841 = load i32, ptr %12, align 4, !tbaa !5
  %7842 = load i32, ptr %8, align 4, !tbaa !5
  %7843 = mul nsw i32 9, %7842
  %7844 = add nsw i32 %7841, %7843
  %7845 = sext i32 %7844 to i64
  %7846 = getelementptr inbounds double, ptr %7840, i64 %7845
  %7847 = load double, ptr %7846, align 8, !tbaa !11
  %7848 = call double @llvm.fmuladd.f64(double 0xBC8081F6B934226E, double %7847, double %7839)
  %7849 = load ptr, ptr %7, align 8, !tbaa !9
  %7850 = load i32, ptr %12, align 4, !tbaa !5
  %7851 = load i32, ptr %8, align 4, !tbaa !5
  %7852 = mul nsw i32 10, %7851
  %7853 = add nsw i32 %7850, %7852
  %7854 = sext i32 %7853 to i64
  %7855 = getelementptr inbounds double, ptr %7849, i64 %7854
  %7856 = load double, ptr %7855, align 8, !tbaa !11
  %7857 = call double @llvm.fmuladd.f64(double 0xBC4C700ACB277023, double %7856, double %7848)
  %7858 = load ptr, ptr %7, align 8, !tbaa !9
  %7859 = load i32, ptr %12, align 4, !tbaa !5
  %7860 = load i32, ptr %8, align 4, !tbaa !5
  %7861 = mul nsw i32 11, %7860
  %7862 = add nsw i32 %7859, %7861
  %7863 = sext i32 %7862 to i64
  %7864 = getelementptr inbounds double, ptr %7858, i64 %7863
  %7865 = load double, ptr %7864, align 8, !tbaa !11
  %7866 = call double @llvm.fmuladd.f64(double 0xBC7B8E015964EDEB, double %7865, double %7857)
  %7867 = load ptr, ptr %7, align 8, !tbaa !9
  %7868 = load i32, ptr %12, align 4, !tbaa !5
  %7869 = load i32, ptr %8, align 4, !tbaa !5
  %7870 = mul nsw i32 12, %7869
  %7871 = add nsw i32 %7868, %7870
  %7872 = sext i32 %7871 to i64
  %7873 = getelementptr inbounds double, ptr %7867, i64 %7872
  %7874 = load double, ptr %7873, align 8, !tbaa !11
  %7875 = call double @llvm.fmuladd.f64(double 0xBCD010D114C0DB49, double %7874, double %7866)
  %7876 = load ptr, ptr %7, align 8, !tbaa !9
  %7877 = load i32, ptr %12, align 4, !tbaa !5
  %7878 = load i32, ptr %8, align 4, !tbaa !5
  %7879 = mul nsw i32 13, %7878
  %7880 = add nsw i32 %7877, %7879
  %7881 = sext i32 %7880 to i64
  %7882 = getelementptr inbounds double, ptr %7876, i64 %7881
  %7883 = load double, ptr %7882, align 8, !tbaa !11
  %7884 = call double @llvm.fmuladd.f64(double 0x3CE9BF0282538DD0, double %7883, double %7875)
  %7885 = load ptr, ptr %7, align 8, !tbaa !9
  %7886 = load i32, ptr %12, align 4, !tbaa !5
  %7887 = load i32, ptr %8, align 4, !tbaa !5
  %7888 = mul nsw i32 14, %7887
  %7889 = add nsw i32 %7886, %7888
  %7890 = sext i32 %7889 to i64
  %7891 = getelementptr inbounds double, ptr %7885, i64 %7890
  %7892 = load double, ptr %7891, align 8, !tbaa !11
  %7893 = call double @llvm.fmuladd.f64(double 0x3CE87BEC810A2317, double %7892, double %7884)
  %7894 = load ptr, ptr %7, align 8, !tbaa !9
  %7895 = load i32, ptr %12, align 4, !tbaa !5
  %7896 = load i32, ptr %8, align 4, !tbaa !5
  %7897 = mul nsw i32 15, %7896
  %7898 = add nsw i32 %7895, %7897
  %7899 = sext i32 %7898 to i64
  %7900 = getelementptr inbounds double, ptr %7894, i64 %7899
  %7901 = load double, ptr %7900, align 8, !tbaa !11
  %7902 = call double @llvm.fmuladd.f64(double 0x3FF9D1E43E6CC191, double %7901, double %7893)
  %7903 = load ptr, ptr %7, align 8, !tbaa !9
  %7904 = load i32, ptr %12, align 4, !tbaa !5
  %7905 = load i32, ptr %8, align 4, !tbaa !5
  %7906 = mul nsw i32 16, %7905
  %7907 = add nsw i32 %7904, %7906
  %7908 = sext i32 %7907 to i64
  %7909 = getelementptr inbounds double, ptr %7903, i64 %7908
  %7910 = load double, ptr %7909, align 8, !tbaa !11
  %7911 = call double @llvm.fmuladd.f64(double 0x3CE3D41B5B3A7CE0, double %7910, double %7902)
  %7912 = load ptr, ptr %7, align 8, !tbaa !9
  %7913 = load i32, ptr %12, align 4, !tbaa !5
  %7914 = load i32, ptr %8, align 4, !tbaa !5
  %7915 = mul nsw i32 17, %7914
  %7916 = add nsw i32 %7913, %7915
  %7917 = sext i32 %7916 to i64
  %7918 = getelementptr inbounds double, ptr %7912, i64 %7917
  %7919 = load double, ptr %7918, align 8, !tbaa !11
  %7920 = call double @llvm.fmuladd.f64(double 0x3CE4741B5B3A7CDD, double %7919, double %7911)
  store double %7920, ptr %11, align 8, !tbaa !11
  %7921 = load double, ptr %11, align 8, !tbaa !11
  %7922 = load ptr, ptr %9, align 8, !tbaa !9
  %7923 = load i32, ptr %12, align 4, !tbaa !5
  %7924 = load i32, ptr %10, align 4, !tbaa !5
  %7925 = mul nsw i32 45, %7924
  %7926 = add nsw i32 %7923, %7925
  %7927 = sext i32 %7926 to i64
  %7928 = getelementptr inbounds double, ptr %7922, i64 %7927
  %7929 = load double, ptr %7928, align 8, !tbaa !11
  %7930 = fadd double %7929, %7921
  store double %7930, ptr %7928, align 8, !tbaa !11
  %7931 = load ptr, ptr %7, align 8, !tbaa !9
  %7932 = load i32, ptr %12, align 4, !tbaa !5
  %7933 = load i32, ptr %8, align 4, !tbaa !5
  %7934 = mul nsw i32 0, %7933
  %7935 = add nsw i32 %7932, %7934
  %7936 = sext i32 %7935 to i64
  %7937 = getelementptr inbounds double, ptr %7931, i64 %7936
  %7938 = load double, ptr %7937, align 8, !tbaa !11
  %7939 = load ptr, ptr %7, align 8, !tbaa !9
  %7940 = load i32, ptr %12, align 4, !tbaa !5
  %7941 = load i32, ptr %8, align 4, !tbaa !5
  %7942 = mul nsw i32 1, %7941
  %7943 = add nsw i32 %7940, %7942
  %7944 = sext i32 %7943 to i64
  %7945 = getelementptr inbounds double, ptr %7939, i64 %7944
  %7946 = load double, ptr %7945, align 8, !tbaa !11
  %7947 = fmul double 0x3CC9C6E177DE0848, %7946
  %7948 = call double @llvm.fmuladd.f64(double 0xBCE88765A1B41E6C, double %7938, double %7947)
  %7949 = load ptr, ptr %7, align 8, !tbaa !9
  %7950 = load i32, ptr %12, align 4, !tbaa !5
  %7951 = load i32, ptr %8, align 4, !tbaa !5
  %7952 = mul nsw i32 2, %7951
  %7953 = add nsw i32 %7950, %7952
  %7954 = sext i32 %7953 to i64
  %7955 = getelementptr inbounds double, ptr %7949, i64 %7954
  %7956 = load double, ptr %7955, align 8, !tbaa !11
  %7957 = call double @llvm.fmuladd.f64(double 0xBCE7A765A1B41E6C, double %7956, double %7948)
  %7958 = load ptr, ptr %7, align 8, !tbaa !9
  %7959 = load i32, ptr %12, align 4, !tbaa !5
  %7960 = load i32, ptr %8, align 4, !tbaa !5
  %7961 = mul nsw i32 3, %7960
  %7962 = add nsw i32 %7959, %7961
  %7963 = sext i32 %7962 to i64
  %7964 = getelementptr inbounds double, ptr %7958, i64 %7963
  %7965 = load double, ptr %7964, align 8, !tbaa !11
  %7966 = call double @llvm.fmuladd.f64(double 0xBCE0F6FD1753B0C4, double %7965, double %7957)
  %7967 = load ptr, ptr %7, align 8, !tbaa !9
  %7968 = load i32, ptr %12, align 4, !tbaa !5
  %7969 = load i32, ptr %8, align 4, !tbaa !5
  %7970 = mul nsw i32 4, %7969
  %7971 = add nsw i32 %7968, %7970
  %7972 = sext i32 %7971 to i64
  %7973 = getelementptr inbounds double, ptr %7967, i64 %7972
  %7974 = load double, ptr %7973, align 8, !tbaa !11
  %7975 = call double @llvm.fmuladd.f64(double 0xBFF9D1E43E6CC191, double %7974, double %7966)
  %7976 = load ptr, ptr %7, align 8, !tbaa !9
  %7977 = load i32, ptr %12, align 4, !tbaa !5
  %7978 = load i32, ptr %8, align 4, !tbaa !5
  %7979 = mul nsw i32 5, %7978
  %7980 = add nsw i32 %7977, %7979
  %7981 = sext i32 %7980 to i64
  %7982 = getelementptr inbounds double, ptr %7976, i64 %7981
  %7983 = load double, ptr %7982, align 8, !tbaa !11
  %7984 = call double @llvm.fmuladd.f64(double 0xBCE5F2686842D7DB, double %7983, double %7975)
  %7985 = load ptr, ptr %7, align 8, !tbaa !9
  %7986 = load i32, ptr %12, align 4, !tbaa !5
  %7987 = load i32, ptr %8, align 4, !tbaa !5
  %7988 = mul nsw i32 6, %7987
  %7989 = add nsw i32 %7986, %7988
  %7990 = sext i32 %7989 to i64
  %7991 = getelementptr inbounds double, ptr %7985, i64 %7990
  %7992 = load double, ptr %7991, align 8, !tbaa !11
  %7993 = call double @llvm.fmuladd.f64(double 0xBC51BD5908653595, double %7992, double %7984)
  %7994 = load ptr, ptr %7, align 8, !tbaa !9
  %7995 = load i32, ptr %12, align 4, !tbaa !5
  %7996 = load i32, ptr %8, align 4, !tbaa !5
  %7997 = mul nsw i32 7, %7996
  %7998 = add nsw i32 %7995, %7997
  %7999 = sext i32 %7998 to i64
  %8000 = getelementptr inbounds double, ptr %7994, i64 %7999
  %8001 = load double, ptr %8000, align 8, !tbaa !11
  %8002 = call double @llvm.fmuladd.f64(double 0xBC3A014D32C335D8, double %8001, double %7993)
  %8003 = load ptr, ptr %7, align 8, !tbaa !9
  %8004 = load i32, ptr %12, align 4, !tbaa !5
  %8005 = load i32, ptr %8, align 4, !tbaa !5
  %8006 = mul nsw i32 8, %8005
  %8007 = add nsw i32 %8004, %8006
  %8008 = sext i32 %8007 to i64
  %8009 = getelementptr inbounds double, ptr %8003, i64 %8008
  %8010 = load double, ptr %8009, align 8, !tbaa !11
  %8011 = call double @llvm.fmuladd.f64(double 0xBC3A014D32C32FB8, double %8010, double %8002)
  %8012 = load ptr, ptr %7, align 8, !tbaa !9
  %8013 = load i32, ptr %12, align 4, !tbaa !5
  %8014 = load i32, ptr %8, align 4, !tbaa !5
  %8015 = mul nsw i32 9, %8014
  %8016 = add nsw i32 %8013, %8015
  %8017 = sext i32 %8016 to i64
  %8018 = getelementptr inbounds double, ptr %8012, i64 %8017
  %8019 = load double, ptr %8018, align 8, !tbaa !11
  %8020 = call double @llvm.fmuladd.f64(double 0xBC893816E5BE808E, double %8019, double %8011)
  %8021 = load ptr, ptr %7, align 8, !tbaa !9
  %8022 = load i32, ptr %12, align 4, !tbaa !5
  %8023 = load i32, ptr %8, align 4, !tbaa !5
  %8024 = mul nsw i32 10, %8023
  %8025 = add nsw i32 %8022, %8024
  %8026 = sext i32 %8025 to i64
  %8027 = getelementptr inbounds double, ptr %8021, i64 %8026
  %8028 = load double, ptr %8027, align 8, !tbaa !11
  %8029 = call double @llvm.fmuladd.f64(double 0x3C543F5B67DD6915, double %8028, double %8020)
  %8030 = load ptr, ptr %7, align 8, !tbaa !9
  %8031 = load i32, ptr %12, align 4, !tbaa !5
  %8032 = load i32, ptr %8, align 4, !tbaa !5
  %8033 = mul nsw i32 11, %8032
  %8034 = add nsw i32 %8031, %8033
  %8035 = sext i32 %8034 to i64
  %8036 = getelementptr inbounds double, ptr %8030, i64 %8035
  %8037 = load double, ptr %8036, align 8, !tbaa !11
  %8038 = call double @llvm.fmuladd.f64(double 0x3C543F5B67DD6BB1, double %8037, double %8029)
  %8039 = load ptr, ptr %7, align 8, !tbaa !9
  %8040 = load i32, ptr %12, align 4, !tbaa !5
  %8041 = load i32, ptr %8, align 4, !tbaa !5
  %8042 = mul nsw i32 12, %8041
  %8043 = add nsw i32 %8040, %8042
  %8044 = sext i32 %8043 to i64
  %8045 = getelementptr inbounds double, ptr %8039, i64 %8044
  %8046 = load double, ptr %8045, align 8, !tbaa !11
  %8047 = call double @llvm.fmuladd.f64(double 0x3CE88765A1B41E6E, double %8046, double %8038)
  %8048 = load ptr, ptr %7, align 8, !tbaa !9
  %8049 = load i32, ptr %12, align 4, !tbaa !5
  %8050 = load i32, ptr %8, align 4, !tbaa !5
  %8051 = mul nsw i32 13, %8050
  %8052 = add nsw i32 %8049, %8051
  %8053 = sext i32 %8052 to i64
  %8054 = getelementptr inbounds double, ptr %8048, i64 %8053
  %8055 = load double, ptr %8054, align 8, !tbaa !11
  %8056 = call double @llvm.fmuladd.f64(double 0xBCC9C6E177DE0849, double %8055, double %8047)
  %8057 = load ptr, ptr %7, align 8, !tbaa !9
  %8058 = load i32, ptr %12, align 4, !tbaa !5
  %8059 = load i32, ptr %8, align 4, !tbaa !5
  %8060 = mul nsw i32 14, %8059
  %8061 = add nsw i32 %8058, %8060
  %8062 = sext i32 %8061 to i64
  %8063 = getelementptr inbounds double, ptr %8057, i64 %8062
  %8064 = load double, ptr %8063, align 8, !tbaa !11
  %8065 = call double @llvm.fmuladd.f64(double 0x3CE7D765A1B41E6B, double %8064, double %8056)
  %8066 = load ptr, ptr %7, align 8, !tbaa !9
  %8067 = load i32, ptr %12, align 4, !tbaa !5
  %8068 = load i32, ptr %8, align 4, !tbaa !5
  %8069 = mul nsw i32 15, %8068
  %8070 = add nsw i32 %8067, %8069
  %8071 = sext i32 %8070 to i64
  %8072 = getelementptr inbounds double, ptr %8066, i64 %8071
  %8073 = load double, ptr %8072, align 8, !tbaa !11
  %8074 = call double @llvm.fmuladd.f64(double 0x3CE0F6FD1753B0C4, double %8073, double %8065)
  %8075 = load ptr, ptr %7, align 8, !tbaa !9
  %8076 = load i32, ptr %12, align 4, !tbaa !5
  %8077 = load i32, ptr %8, align 4, !tbaa !5
  %8078 = mul nsw i32 16, %8077
  %8079 = add nsw i32 %8076, %8078
  %8080 = sext i32 %8079 to i64
  %8081 = getelementptr inbounds double, ptr %8075, i64 %8080
  %8082 = load double, ptr %8081, align 8, !tbaa !11
  %8083 = call double @llvm.fmuladd.f64(double 0x3FF9D1E43E6CC191, double %8082, double %8074)
  %8084 = load ptr, ptr %7, align 8, !tbaa !9
  %8085 = load i32, ptr %12, align 4, !tbaa !5
  %8086 = load i32, ptr %8, align 4, !tbaa !5
  %8087 = mul nsw i32 17, %8086
  %8088 = add nsw i32 %8085, %8087
  %8089 = sext i32 %8088 to i64
  %8090 = getelementptr inbounds double, ptr %8084, i64 %8089
  %8091 = load double, ptr %8090, align 8, !tbaa !11
  %8092 = call double @llvm.fmuladd.f64(double 0x3CE5F2686842D7DB, double %8091, double %8083)
  store double %8092, ptr %11, align 8, !tbaa !11
  %8093 = load double, ptr %11, align 8, !tbaa !11
  %8094 = load ptr, ptr %9, align 8, !tbaa !9
  %8095 = load i32, ptr %12, align 4, !tbaa !5
  %8096 = load i32, ptr %10, align 4, !tbaa !5
  %8097 = mul nsw i32 46, %8096
  %8098 = add nsw i32 %8095, %8097
  %8099 = sext i32 %8098 to i64
  %8100 = getelementptr inbounds double, ptr %8094, i64 %8099
  %8101 = load double, ptr %8100, align 8, !tbaa !11
  %8102 = fadd double %8101, %8093
  store double %8102, ptr %8100, align 8, !tbaa !11
  %8103 = load ptr, ptr %7, align 8, !tbaa !9
  %8104 = load i32, ptr %12, align 4, !tbaa !5
  %8105 = load i32, ptr %8, align 4, !tbaa !5
  %8106 = mul nsw i32 0, %8105
  %8107 = add nsw i32 %8104, %8106
  %8108 = sext i32 %8107 to i64
  %8109 = getelementptr inbounds double, ptr %8103, i64 %8108
  %8110 = load double, ptr %8109, align 8, !tbaa !11
  %8111 = load ptr, ptr %7, align 8, !tbaa !9
  %8112 = load i32, ptr %12, align 4, !tbaa !5
  %8113 = load i32, ptr %8, align 4, !tbaa !5
  %8114 = mul nsw i32 1, %8113
  %8115 = add nsw i32 %8112, %8114
  %8116 = sext i32 %8115 to i64
  %8117 = getelementptr inbounds double, ptr %8111, i64 %8116
  %8118 = load double, ptr %8117, align 8, !tbaa !11
  %8119 = fmul double 0xBCEA1F44973E98E1, %8118
  %8120 = call double @llvm.fmuladd.f64(double 0xBCEC1765A1B41E67, double %8110, double %8119)
  %8121 = load ptr, ptr %7, align 8, !tbaa !9
  %8122 = load i32, ptr %12, align 4, !tbaa !5
  %8123 = load i32, ptr %8, align 4, !tbaa !5
  %8124 = mul nsw i32 2, %8123
  %8125 = add nsw i32 %8122, %8124
  %8126 = sext i32 %8125 to i64
  %8127 = getelementptr inbounds double, ptr %8121, i64 %8126
  %8128 = load double, ptr %8127, align 8, !tbaa !11
  %8129 = call double @llvm.fmuladd.f64(double 0x3CCD2B9C9C6443CA, double %8128, double %8120)
  %8130 = load ptr, ptr %7, align 8, !tbaa !9
  %8131 = load i32, ptr %12, align 4, !tbaa !5
  %8132 = load i32, ptr %8, align 4, !tbaa !5
  %8133 = mul nsw i32 3, %8132
  %8134 = add nsw i32 %8131, %8133
  %8135 = sext i32 %8134 to i64
  %8136 = getelementptr inbounds double, ptr %8130, i64 %8135
  %8137 = load double, ptr %8136, align 8, !tbaa !11
  %8138 = call double @llvm.fmuladd.f64(double 0xBCE3341B5B3A7CDC, double %8137, double %8129)
  %8139 = load ptr, ptr %7, align 8, !tbaa !9
  %8140 = load i32, ptr %12, align 4, !tbaa !5
  %8141 = load i32, ptr %8, align 4, !tbaa !5
  %8142 = mul nsw i32 4, %8141
  %8143 = add nsw i32 %8140, %8142
  %8144 = sext i32 %8143 to i64
  %8145 = getelementptr inbounds double, ptr %8139, i64 %8144
  %8146 = load double, ptr %8145, align 8, !tbaa !11
  %8147 = call double @llvm.fmuladd.f64(double 0xBCE21D6B2ED19149, double %8146, double %8138)
  %8148 = load ptr, ptr %7, align 8, !tbaa !9
  %8149 = load i32, ptr %12, align 4, !tbaa !5
  %8150 = load i32, ptr %8, align 4, !tbaa !5
  %8151 = mul nsw i32 5, %8150
  %8152 = add nsw i32 %8149, %8151
  %8153 = sext i32 %8152 to i64
  %8154 = getelementptr inbounds double, ptr %8148, i64 %8153
  %8155 = load double, ptr %8154, align 8, !tbaa !11
  %8156 = call double @llvm.fmuladd.f64(double 0xBFF9D1E43E6CC191, double %8155, double %8147)
  %8157 = load ptr, ptr %7, align 8, !tbaa !9
  %8158 = load i32, ptr %12, align 4, !tbaa !5
  %8159 = load i32, ptr %8, align 4, !tbaa !5
  %8160 = mul nsw i32 6, %8159
  %8161 = add nsw i32 %8158, %8160
  %8162 = sext i32 %8161 to i64
  %8163 = getelementptr inbounds double, ptr %8157, i64 %8162
  %8164 = load double, ptr %8163, align 8, !tbaa !11
  %8165 = call double @llvm.fmuladd.f64(double 0xBC82AD66CB5FD83B, double %8164, double %8156)
  %8166 = load ptr, ptr %7, align 8, !tbaa !9
  %8167 = load i32, ptr %12, align 4, !tbaa !5
  %8168 = load i32, ptr %8, align 4, !tbaa !5
  %8169 = mul nsw i32 7, %8168
  %8170 = add nsw i32 %8167, %8169
  %8171 = sext i32 %8170 to i64
  %8172 = getelementptr inbounds double, ptr %8166, i64 %8171
  %8173 = load double, ptr %8172, align 8, !tbaa !11
  %8174 = call double @llvm.fmuladd.f64(double 0xBC89EF0795AEA22C, double %8173, double %8165)
  %8175 = load ptr, ptr %7, align 8, !tbaa !9
  %8176 = load i32, ptr %12, align 4, !tbaa !5
  %8177 = load i32, ptr %8, align 4, !tbaa !5
  %8178 = mul nsw i32 8, %8177
  %8179 = add nsw i32 %8176, %8178
  %8180 = sext i32 %8179 to i64
  %8181 = getelementptr inbounds double, ptr %8175, i64 %8180
  %8182 = load double, ptr %8181, align 8, !tbaa !11
  %8183 = call double @llvm.fmuladd.f64(double 0xBC4EF0795AEA232E, double %8182, double %8174)
  %8184 = load ptr, ptr %7, align 8, !tbaa !9
  %8185 = load i32, ptr %12, align 4, !tbaa !5
  %8186 = load i32, ptr %8, align 4, !tbaa !5
  %8187 = mul nsw i32 9, %8186
  %8188 = add nsw i32 %8185, %8187
  %8189 = sext i32 %8188 to i64
  %8190 = getelementptr inbounds double, ptr %8184, i64 %8189
  %8191 = load double, ptr %8190, align 8, !tbaa !11
  %8192 = call double @llvm.fmuladd.f64(double 0xBC5646AD27501978, double %8191, double %8183)
  %8193 = load ptr, ptr %7, align 8, !tbaa !9
  %8194 = load i32, ptr %12, align 4, !tbaa !5
  %8195 = load i32, ptr %8, align 4, !tbaa !5
  %8196 = mul nsw i32 10, %8195
  %8197 = add nsw i32 %8194, %8196
  %8198 = sext i32 %8197 to i64
  %8199 = getelementptr inbounds double, ptr %8193, i64 %8198
  %8200 = load double, ptr %8199, align 8, !tbaa !11
  %8201 = call double @llvm.fmuladd.f64(double 0x3C6AA897374E4045, double %8200, double %8192)
  %8202 = load ptr, ptr %7, align 8, !tbaa !9
  %8203 = load i32, ptr %12, align 4, !tbaa !5
  %8204 = load i32, ptr %8, align 4, !tbaa !5
  %8205 = mul nsw i32 11, %8204
  %8206 = add nsw i32 %8203, %8205
  %8207 = sext i32 %8206 to i64
  %8208 = getelementptr inbounds double, ptr %8202, i64 %8207
  %8209 = load double, ptr %8208, align 8, !tbaa !11
  %8210 = call double @llvm.fmuladd.f64(double 0x3C6AA897374E4018, double %8209, double %8201)
  %8211 = load ptr, ptr %7, align 8, !tbaa !9
  %8212 = load i32, ptr %12, align 4, !tbaa !5
  %8213 = load i32, ptr %8, align 4, !tbaa !5
  %8214 = mul nsw i32 12, %8213
  %8215 = add nsw i32 %8212, %8214
  %8216 = sext i32 %8215 to i64
  %8217 = getelementptr inbounds double, ptr %8211, i64 %8216
  %8218 = load double, ptr %8217, align 8, !tbaa !11
  %8219 = call double @llvm.fmuladd.f64(double 0x3CEC4765A1B41E6A, double %8218, double %8210)
  %8220 = load ptr, ptr %7, align 8, !tbaa !9
  %8221 = load i32, ptr %12, align 4, !tbaa !5
  %8222 = load i32, ptr %8, align 4, !tbaa !5
  %8223 = mul nsw i32 13, %8222
  %8224 = add nsw i32 %8221, %8223
  %8225 = sext i32 %8224 to i64
  %8226 = getelementptr inbounds double, ptr %8220, i64 %8225
  %8227 = load double, ptr %8226, align 8, !tbaa !11
  %8228 = call double @llvm.fmuladd.f64(double 0x3CEA7F44973E98E0, double %8227, double %8219)
  %8229 = load ptr, ptr %7, align 8, !tbaa !9
  %8230 = load i32, ptr %12, align 4, !tbaa !5
  %8231 = load i32, ptr %8, align 4, !tbaa !5
  %8232 = mul nsw i32 14, %8231
  %8233 = add nsw i32 %8230, %8232
  %8234 = sext i32 %8233 to i64
  %8235 = getelementptr inbounds double, ptr %8229, i64 %8234
  %8236 = load double, ptr %8235, align 8, !tbaa !11
  %8237 = call double @llvm.fmuladd.f64(double 0xBCCD2B9C9C6443C9, double %8236, double %8228)
  %8238 = load ptr, ptr %7, align 8, !tbaa !9
  %8239 = load i32, ptr %12, align 4, !tbaa !5
  %8240 = load i32, ptr %8, align 4, !tbaa !5
  %8241 = mul nsw i32 15, %8240
  %8242 = add nsw i32 %8239, %8241
  %8243 = sext i32 %8242 to i64
  %8244 = getelementptr inbounds double, ptr %8238, i64 %8243
  %8245 = load double, ptr %8244, align 8, !tbaa !11
  %8246 = call double @llvm.fmuladd.f64(double 0x3CE3341B5B3A7CDE, double %8245, double %8237)
  %8247 = load ptr, ptr %7, align 8, !tbaa !9
  %8248 = load i32, ptr %12, align 4, !tbaa !5
  %8249 = load i32, ptr %8, align 4, !tbaa !5
  %8250 = mul nsw i32 16, %8249
  %8251 = add nsw i32 %8248, %8250
  %8252 = sext i32 %8251 to i64
  %8253 = getelementptr inbounds double, ptr %8247, i64 %8252
  %8254 = load double, ptr %8253, align 8, !tbaa !11
  %8255 = call double @llvm.fmuladd.f64(double 0x3CE21D6B2ED1914C, double %8254, double %8246)
  %8256 = load ptr, ptr %7, align 8, !tbaa !9
  %8257 = load i32, ptr %12, align 4, !tbaa !5
  %8258 = load i32, ptr %8, align 4, !tbaa !5
  %8259 = mul nsw i32 17, %8258
  %8260 = add nsw i32 %8257, %8259
  %8261 = sext i32 %8260 to i64
  %8262 = getelementptr inbounds double, ptr %8256, i64 %8261
  %8263 = load double, ptr %8262, align 8, !tbaa !11
  %8264 = call double @llvm.fmuladd.f64(double 0x3FF9D1E43E6CC191, double %8263, double %8255)
  store double %8264, ptr %11, align 8, !tbaa !11
  %8265 = load double, ptr %11, align 8, !tbaa !11
  %8266 = load ptr, ptr %9, align 8, !tbaa !9
  %8267 = load i32, ptr %12, align 4, !tbaa !5
  %8268 = load i32, ptr %10, align 4, !tbaa !5
  %8269 = mul nsw i32 47, %8268
  %8270 = add nsw i32 %8267, %8269
  %8271 = sext i32 %8270 to i64
  %8272 = getelementptr inbounds double, ptr %8266, i64 %8271
  %8273 = load double, ptr %8272, align 8, !tbaa !11
  %8274 = fadd double %8273, %8265
  store double %8274, ptr %8272, align 8, !tbaa !11
  %8275 = load ptr, ptr %7, align 8, !tbaa !9
  %8276 = load i32, ptr %12, align 4, !tbaa !5
  %8277 = load i32, ptr %8, align 4, !tbaa !5
  %8278 = mul nsw i32 0, %8277
  %8279 = add nsw i32 %8276, %8278
  %8280 = sext i32 %8279 to i64
  %8281 = getelementptr inbounds double, ptr %8275, i64 %8280
  %8282 = load double, ptr %8281, align 8, !tbaa !11
  %8283 = load ptr, ptr %7, align 8, !tbaa !9
  %8284 = load i32, ptr %12, align 4, !tbaa !5
  %8285 = load i32, ptr %8, align 4, !tbaa !5
  %8286 = mul nsw i32 1, %8285
  %8287 = add nsw i32 %8284, %8286
  %8288 = sext i32 %8287 to i64
  %8289 = getelementptr inbounds double, ptr %8283, i64 %8288
  %8290 = load double, ptr %8289, align 8, !tbaa !11
  %8291 = fmul double 0x3CA83DE51DC0E6B1, %8290
  %8292 = call double @llvm.fmuladd.f64(double 0x3FE4A7E9CB8A3494, double %8282, double %8291)
  %8293 = load ptr, ptr %7, align 8, !tbaa !9
  %8294 = load i32, ptr %12, align 4, !tbaa !5
  %8295 = load i32, ptr %8, align 4, !tbaa !5
  %8296 = mul nsw i32 2, %8295
  %8297 = add nsw i32 %8294, %8296
  %8298 = sext i32 %8297 to i64
  %8299 = getelementptr inbounds double, ptr %8293, i64 %8298
  %8300 = load double, ptr %8299, align 8, !tbaa !11
  %8301 = call double @llvm.fmuladd.f64(double 0xBC9E34622D69C982, double %8300, double %8292)
  %8302 = load ptr, ptr %7, align 8, !tbaa !9
  %8303 = load i32, ptr %12, align 4, !tbaa !5
  %8304 = load i32, ptr %8, align 4, !tbaa !5
  %8305 = mul nsw i32 3, %8304
  %8306 = add nsw i32 %8303, %8305
  %8307 = sext i32 %8306 to i64
  %8308 = getelementptr inbounds double, ptr %8302, i64 %8307
  %8309 = load double, ptr %8308, align 8, !tbaa !11
  %8310 = call double @llvm.fmuladd.f64(double 0xBCAE8A2AE854D513, double %8309, double %8301)
  %8311 = load ptr, ptr %7, align 8, !tbaa !9
  %8312 = load i32, ptr %12, align 4, !tbaa !5
  %8313 = load i32, ptr %8, align 4, !tbaa !5
  %8314 = mul nsw i32 4, %8313
  %8315 = add nsw i32 %8312, %8314
  %8316 = sext i32 %8315 to i64
  %8317 = getelementptr inbounds double, ptr %8311, i64 %8316
  %8318 = load double, ptr %8317, align 8, !tbaa !11
  %8319 = call double @llvm.fmuladd.f64(double 0x3CB09A426D1ADB3A, double %8318, double %8310)
  %8320 = load ptr, ptr %7, align 8, !tbaa !9
  %8321 = load i32, ptr %12, align 4, !tbaa !5
  %8322 = load i32, ptr %8, align 4, !tbaa !5
  %8323 = mul nsw i32 5, %8322
  %8324 = add nsw i32 %8321, %8323
  %8325 = sext i32 %8324 to i64
  %8326 = getelementptr inbounds double, ptr %8320, i64 %8325
  %8327 = load double, ptr %8326, align 8, !tbaa !11
  %8328 = call double @llvm.fmuladd.f64(double 0x3CC33662C674E1E4, double %8327, double %8319)
  %8329 = load ptr, ptr %7, align 8, !tbaa !9
  %8330 = load i32, ptr %12, align 4, !tbaa !5
  %8331 = load i32, ptr %8, align 4, !tbaa !5
  %8332 = mul nsw i32 6, %8331
  %8333 = add nsw i32 %8330, %8332
  %8334 = sext i32 %8333 to i64
  %8335 = getelementptr inbounds double, ptr %8329, i64 %8334
  %8336 = load double, ptr %8335, align 8, !tbaa !11
  %8337 = call double @llvm.fmuladd.f64(double 0xBFF08654A2D4F756, double %8336, double %8328)
  %8338 = load ptr, ptr %7, align 8, !tbaa !9
  %8339 = load i32, ptr %12, align 4, !tbaa !5
  %8340 = load i32, ptr %8, align 4, !tbaa !5
  %8341 = mul nsw i32 7, %8340
  %8342 = add nsw i32 %8339, %8341
  %8343 = sext i32 %8342 to i64
  %8344 = getelementptr inbounds double, ptr %8338, i64 %8343
  %8345 = load double, ptr %8344, align 8, !tbaa !11
  %8346 = call double @llvm.fmuladd.f64(double 0xBCF4E04E2DCDEC57, double %8345, double %8337)
  %8347 = load ptr, ptr %7, align 8, !tbaa !9
  %8348 = load i32, ptr %12, align 4, !tbaa !5
  %8349 = load i32, ptr %8, align 4, !tbaa !5
  %8350 = mul nsw i32 8, %8349
  %8351 = add nsw i32 %8348, %8350
  %8352 = sext i32 %8351 to i64
  %8353 = getelementptr inbounds double, ptr %8347, i64 %8352
  %8354 = load double, ptr %8353, align 8, !tbaa !11
  %8355 = call double @llvm.fmuladd.f64(double 0xBCF3AAAAAAAAAAAB, double %8354, double %8346)
  %8356 = load ptr, ptr %7, align 8, !tbaa !9
  %8357 = load i32, ptr %12, align 4, !tbaa !5
  %8358 = load i32, ptr %8, align 4, !tbaa !5
  %8359 = mul nsw i32 9, %8358
  %8360 = add nsw i32 %8357, %8359
  %8361 = sext i32 %8360 to i64
  %8362 = getelementptr inbounds double, ptr %8356, i64 %8361
  %8363 = load double, ptr %8362, align 8, !tbaa !11
  %8364 = call double @llvm.fmuladd.f64(double 0xBCE72AAAAAAAAAA8, double %8363, double %8355)
  %8365 = load ptr, ptr %7, align 8, !tbaa !9
  %8366 = load i32, ptr %12, align 4, !tbaa !5
  %8367 = load i32, ptr %8, align 4, !tbaa !5
  %8368 = mul nsw i32 10, %8367
  %8369 = add nsw i32 %8366, %8368
  %8370 = sext i32 %8369 to i64
  %8371 = getelementptr inbounds double, ptr %8365, i64 %8370
  %8372 = load double, ptr %8371, align 8, !tbaa !11
  %8373 = call double @llvm.fmuladd.f64(double 0x3D043F63A4642756, double %8372, double %8364)
  %8374 = load ptr, ptr %7, align 8, !tbaa !9
  %8375 = load i32, ptr %12, align 4, !tbaa !5
  %8376 = load i32, ptr %8, align 4, !tbaa !5
  %8377 = mul nsw i32 11, %8376
  %8378 = add nsw i32 %8375, %8377
  %8379 = sext i32 %8378 to i64
  %8380 = getelementptr inbounds double, ptr %8374, i64 %8379
  %8381 = load double, ptr %8380, align 8, !tbaa !11
  %8382 = call double @llvm.fmuladd.f64(double 0x3D0394B8F9B97CA9, double %8381, double %8373)
  %8383 = load ptr, ptr %7, align 8, !tbaa !9
  %8384 = load i32, ptr %12, align 4, !tbaa !5
  %8385 = load i32, ptr %8, align 4, !tbaa !5
  %8386 = mul nsw i32 12, %8385
  %8387 = add nsw i32 %8384, %8386
  %8388 = sext i32 %8387 to i64
  %8389 = getelementptr inbounds double, ptr %8383, i64 %8388
  %8390 = load double, ptr %8389, align 8, !tbaa !11
  %8391 = call double @llvm.fmuladd.f64(double 0xBFFEFBDEB14F4DAA, double %8390, double %8382)
  %8392 = load ptr, ptr %7, align 8, !tbaa !9
  %8393 = load i32, ptr %12, align 4, !tbaa !5
  %8394 = load i32, ptr %8, align 4, !tbaa !5
  %8395 = mul nsw i32 13, %8394
  %8396 = add nsw i32 %8393, %8395
  %8397 = sext i32 %8396 to i64
  %8398 = getelementptr inbounds double, ptr %8392, i64 %8397
  %8399 = load double, ptr %8398, align 8, !tbaa !11
  %8400 = call double @llvm.fmuladd.f64(double 0x3D09B45DC0DE51B8, double %8399, double %8391)
  %8401 = load ptr, ptr %7, align 8, !tbaa !9
  %8402 = load i32, ptr %12, align 4, !tbaa !5
  %8403 = load i32, ptr %8, align 4, !tbaa !5
  %8404 = mul nsw i32 14, %8403
  %8405 = add nsw i32 %8402, %8404
  %8406 = sext i32 %8405 to i64
  %8407 = getelementptr inbounds double, ptr %8401, i64 %8406
  %8408 = load double, ptr %8407, align 8, !tbaa !11
  %8409 = call double @llvm.fmuladd.f64(double 0x3D08D1BE19B028E3, double %8408, double %8400)
  %8410 = load ptr, ptr %7, align 8, !tbaa !9
  %8411 = load i32, ptr %12, align 4, !tbaa !5
  %8412 = load i32, ptr %8, align 4, !tbaa !5
  %8413 = mul nsw i32 15, %8412
  %8414 = add nsw i32 %8411, %8413
  %8415 = sext i32 %8414 to i64
  %8416 = getelementptr inbounds double, ptr %8410, i64 %8415
  %8417 = load double, ptr %8416, align 8, !tbaa !11
  %8418 = call double @llvm.fmuladd.f64(double 0x3CFE5F4A2FBB3DAA, double %8417, double %8409)
  %8419 = load ptr, ptr %7, align 8, !tbaa !9
  %8420 = load i32, ptr %12, align 4, !tbaa !5
  %8421 = load i32, ptr %8, align 4, !tbaa !5
  %8422 = mul nsw i32 16, %8421
  %8423 = add nsw i32 %8420, %8422
  %8424 = sext i32 %8423 to i64
  %8425 = getelementptr inbounds double, ptr %8419, i64 %8424
  %8426 = load double, ptr %8425, align 8, !tbaa !11
  %8427 = call double @llvm.fmuladd.f64(double 0xBD1A2CB1FB1DAEB0, double %8426, double %8418)
  %8428 = load ptr, ptr %7, align 8, !tbaa !9
  %8429 = load i32, ptr %12, align 4, !tbaa !5
  %8430 = load i32, ptr %8, align 4, !tbaa !5
  %8431 = mul nsw i32 17, %8430
  %8432 = add nsw i32 %8429, %8431
  %8433 = sext i32 %8432 to i64
  %8434 = getelementptr inbounds double, ptr %8428, i64 %8433
  %8435 = load double, ptr %8434, align 8, !tbaa !11
  %8436 = call double @llvm.fmuladd.f64(double 0xBD19BC0F93106564, double %8435, double %8427)
  store double %8436, ptr %11, align 8, !tbaa !11
  %8437 = load double, ptr %11, align 8, !tbaa !11
  %8438 = load ptr, ptr %9, align 8, !tbaa !9
  %8439 = load i32, ptr %12, align 4, !tbaa !5
  %8440 = load i32, ptr %10, align 4, !tbaa !5
  %8441 = mul nsw i32 48, %8440
  %8442 = add nsw i32 %8439, %8441
  %8443 = sext i32 %8442 to i64
  %8444 = getelementptr inbounds double, ptr %8438, i64 %8443
  %8445 = load double, ptr %8444, align 8, !tbaa !11
  %8446 = fadd double %8445, %8437
  store double %8446, ptr %8444, align 8, !tbaa !11
  %8447 = load ptr, ptr %7, align 8, !tbaa !9
  %8448 = load i32, ptr %12, align 4, !tbaa !5
  %8449 = load i32, ptr %8, align 4, !tbaa !5
  %8450 = mul nsw i32 0, %8449
  %8451 = add nsw i32 %8448, %8450
  %8452 = sext i32 %8451 to i64
  %8453 = getelementptr inbounds double, ptr %8447, i64 %8452
  %8454 = load double, ptr %8453, align 8, !tbaa !11
  %8455 = load ptr, ptr %7, align 8, !tbaa !9
  %8456 = load i32, ptr %12, align 4, !tbaa !5
  %8457 = load i32, ptr %8, align 4, !tbaa !5
  %8458 = mul nsw i32 1, %8457
  %8459 = add nsw i32 %8456, %8458
  %8460 = sext i32 %8459 to i64
  %8461 = getelementptr inbounds double, ptr %8455, i64 %8460
  %8462 = load double, ptr %8461, align 8, !tbaa !11
  %8463 = fmul double 0x3FE4A7E9CB8A349B, %8462
  %8464 = call double @llvm.fmuladd.f64(double 0x3CA9156DC73A81A0, double %8454, double %8463)
  %8465 = load ptr, ptr %7, align 8, !tbaa !9
  %8466 = load i32, ptr %12, align 4, !tbaa !5
  %8467 = load i32, ptr %8, align 4, !tbaa !5
  %8468 = mul nsw i32 2, %8467
  %8469 = add nsw i32 %8466, %8468
  %8470 = sext i32 %8469 to i64
  %8471 = getelementptr inbounds double, ptr %8465, i64 %8470
  %8472 = load double, ptr %8471, align 8, !tbaa !11
  %8473 = call double @llvm.fmuladd.f64(double 0x3CB3ED7C18573421, double %8472, double %8464)
  %8474 = load ptr, ptr %7, align 8, !tbaa !9
  %8475 = load i32, ptr %12, align 4, !tbaa !5
  %8476 = load i32, ptr %8, align 4, !tbaa !5
  %8477 = mul nsw i32 3, %8476
  %8478 = add nsw i32 %8475, %8477
  %8479 = sext i32 %8478 to i64
  %8480 = getelementptr inbounds double, ptr %8474, i64 %8479
  %8481 = load double, ptr %8480, align 8, !tbaa !11
  %8482 = call double @llvm.fmuladd.f64(double 0x3C7273617E940A5F, double %8481, double %8473)
  %8483 = load ptr, ptr %7, align 8, !tbaa !9
  %8484 = load i32, ptr %12, align 4, !tbaa !5
  %8485 = load i32, ptr %8, align 4, !tbaa !5
  %8486 = mul nsw i32 4, %8485
  %8487 = add nsw i32 %8484, %8486
  %8488 = sext i32 %8487 to i64
  %8489 = getelementptr inbounds double, ptr %8483, i64 %8488
  %8490 = load double, ptr %8489, align 8, !tbaa !11
  %8491 = call double @llvm.fmuladd.f64(double 0xBC8999CF078525B6, double %8490, double %8482)
  %8492 = load ptr, ptr %7, align 8, !tbaa !9
  %8493 = load i32, ptr %12, align 4, !tbaa !5
  %8494 = load i32, ptr %8, align 4, !tbaa !5
  %8495 = mul nsw i32 5, %8494
  %8496 = add nsw i32 %8493, %8495
  %8497 = sext i32 %8496 to i64
  %8498 = getelementptr inbounds double, ptr %8492, i64 %8497
  %8499 = load double, ptr %8498, align 8, !tbaa !11
  %8500 = call double @llvm.fmuladd.f64(double 0xBCB71018CCDEBB81, double %8499, double %8491)
  %8501 = load ptr, ptr %7, align 8, !tbaa !9
  %8502 = load i32, ptr %12, align 4, !tbaa !5
  %8503 = load i32, ptr %8, align 4, !tbaa !5
  %8504 = mul nsw i32 6, %8503
  %8505 = add nsw i32 %8502, %8504
  %8506 = sext i32 %8505 to i64
  %8507 = getelementptr inbounds double, ptr %8501, i64 %8506
  %8508 = load double, ptr %8507, align 8, !tbaa !11
  %8509 = call double @llvm.fmuladd.f64(double 0xBCF414B8F9B97CAA, double %8508, double %8500)
  %8510 = load ptr, ptr %7, align 8, !tbaa !9
  %8511 = load i32, ptr %12, align 4, !tbaa !5
  %8512 = load i32, ptr %8, align 4, !tbaa !5
  %8513 = mul nsw i32 7, %8512
  %8514 = add nsw i32 %8511, %8513
  %8515 = sext i32 %8514 to i64
  %8516 = getelementptr inbounds double, ptr %8510, i64 %8515
  %8517 = load double, ptr %8516, align 8, !tbaa !11
  %8518 = call double @llvm.fmuladd.f64(double 0xBFF08654A2D4F75B, double %8517, double %8509)
  %8519 = load ptr, ptr %7, align 8, !tbaa !9
  %8520 = load i32, ptr %12, align 4, !tbaa !5
  %8521 = load i32, ptr %8, align 4, !tbaa !5
  %8522 = mul nsw i32 8, %8521
  %8523 = add nsw i32 %8520, %8522
  %8524 = sext i32 %8523 to i64
  %8525 = getelementptr inbounds double, ptr %8519, i64 %8524
  %8526 = load double, ptr %8525, align 8, !tbaa !11
  %8527 = call double @llvm.fmuladd.f64(double 0xBCF39AF8D8789700, double %8526, double %8518)
  %8528 = load ptr, ptr %7, align 8, !tbaa !9
  %8529 = load i32, ptr %12, align 4, !tbaa !5
  %8530 = load i32, ptr %8, align 4, !tbaa !5
  %8531 = mul nsw i32 9, %8530
  %8532 = add nsw i32 %8529, %8531
  %8533 = sext i32 %8532 to i64
  %8534 = getelementptr inbounds double, ptr %8528, i64 %8533
  %8535 = load double, ptr %8534, align 8, !tbaa !11
  %8536 = call double @llvm.fmuladd.f64(double 0x3D05A83AA25A713E, double %8535, double %8527)
  %8537 = load ptr, ptr %7, align 8, !tbaa !9
  %8538 = load i32, ptr %12, align 4, !tbaa !5
  %8539 = load i32, ptr %8, align 4, !tbaa !5
  %8540 = mul nsw i32 10, %8539
  %8541 = add nsw i32 %8538, %8540
  %8542 = sext i32 %8541 to i64
  %8543 = getelementptr inbounds double, ptr %8537, i64 %8542
  %8544 = load double, ptr %8543, align 8, !tbaa !11
  %8545 = call double @llvm.fmuladd.f64(double 0xBCE7EC7FBD7E34A3, double %8544, double %8536)
  %8546 = load ptr, ptr %7, align 8, !tbaa !9
  %8547 = load i32, ptr %12, align 4, !tbaa !5
  %8548 = load i32, ptr %8, align 4, !tbaa !5
  %8549 = mul nsw i32 11, %8548
  %8550 = add nsw i32 %8547, %8549
  %8551 = sext i32 %8550 to i64
  %8552 = getelementptr inbounds double, ptr %8546, i64 %8551
  %8553 = load double, ptr %8552, align 8, !tbaa !11
  %8554 = call double @llvm.fmuladd.f64(double 0x3D055F1576963AFE, double %8553, double %8545)
  %8555 = load ptr, ptr %7, align 8, !tbaa !9
  %8556 = load i32, ptr %12, align 4, !tbaa !5
  %8557 = load i32, ptr %8, align 4, !tbaa !5
  %8558 = mul nsw i32 12, %8557
  %8559 = add nsw i32 %8556, %8558
  %8560 = sext i32 %8559 to i64
  %8561 = getelementptr inbounds double, ptr %8555, i64 %8560
  %8562 = load double, ptr %8561, align 8, !tbaa !11
  %8563 = call double @llvm.fmuladd.f64(double 0x3D06F41F8D97F877, double %8562, double %8554)
  %8564 = load ptr, ptr %7, align 8, !tbaa !9
  %8565 = load i32, ptr %12, align 4, !tbaa !5
  %8566 = load i32, ptr %8, align 4, !tbaa !5
  %8567 = mul nsw i32 13, %8566
  %8568 = add nsw i32 %8565, %8567
  %8569 = sext i32 %8568 to i64
  %8570 = getelementptr inbounds double, ptr %8564, i64 %8569
  %8571 = load double, ptr %8570, align 8, !tbaa !11
  %8572 = call double @llvm.fmuladd.f64(double 0xBFFEFBDEB14F4D98, double %8571, double %8563)
  %8573 = load ptr, ptr %7, align 8, !tbaa !9
  %8574 = load i32, ptr %12, align 4, !tbaa !5
  %8575 = load i32, ptr %8, align 4, !tbaa !5
  %8576 = mul nsw i32 14, %8575
  %8577 = add nsw i32 %8574, %8576
  %8578 = sext i32 %8577 to i64
  %8579 = getelementptr inbounds double, ptr %8573, i64 %8578
  %8580 = load double, ptr %8579, align 8, !tbaa !11
  %8581 = call double @llvm.fmuladd.f64(double 0x3D0823B40E9CD388, double %8580, double %8572)
  %8582 = load ptr, ptr %7, align 8, !tbaa !9
  %8583 = load i32, ptr %12, align 4, !tbaa !5
  %8584 = load i32, ptr %8, align 4, !tbaa !5
  %8585 = mul nsw i32 15, %8584
  %8586 = add nsw i32 %8583, %8585
  %8587 = sext i32 %8586 to i64
  %8588 = getelementptr inbounds double, ptr %8582, i64 %8587
  %8589 = load double, ptr %8588, align 8, !tbaa !11
  %8590 = call double @llvm.fmuladd.f64(double 0xBD1BAA230A55AE0F, double %8589, double %8581)
  %8591 = load ptr, ptr %7, align 8, !tbaa !9
  %8592 = load i32, ptr %12, align 4, !tbaa !5
  %8593 = load i32, ptr %8, align 4, !tbaa !5
  %8594 = mul nsw i32 16, %8593
  %8595 = add nsw i32 %8592, %8594
  %8596 = sext i32 %8595 to i64
  %8597 = getelementptr inbounds double, ptr %8591, i64 %8596
  %8598 = load double, ptr %8597, align 8, !tbaa !11
  %8599 = call double @llvm.fmuladd.f64(double 0x3CFCCEA1BB3C83CA, double %8598, double %8590)
  %8600 = load ptr, ptr %7, align 8, !tbaa !9
  %8601 = load i32, ptr %12, align 4, !tbaa !5
  %8602 = load i32, ptr %8, align 4, !tbaa !5
  %8603 = mul nsw i32 17, %8602
  %8604 = add nsw i32 %8601, %8603
  %8605 = sext i32 %8604 to i64
  %8606 = getelementptr inbounds double, ptr %8600, i64 %8605
  %8607 = load double, ptr %8606, align 8, !tbaa !11
  %8608 = call double @llvm.fmuladd.f64(double 0xBD19F767A944DB32, double %8607, double %8599)
  store double %8608, ptr %11, align 8, !tbaa !11
  %8609 = load double, ptr %11, align 8, !tbaa !11
  %8610 = load ptr, ptr %9, align 8, !tbaa !9
  %8611 = load i32, ptr %12, align 4, !tbaa !5
  %8612 = load i32, ptr %10, align 4, !tbaa !5
  %8613 = mul nsw i32 49, %8612
  %8614 = add nsw i32 %8611, %8613
  %8615 = sext i32 %8614 to i64
  %8616 = getelementptr inbounds double, ptr %8610, i64 %8615
  %8617 = load double, ptr %8616, align 8, !tbaa !11
  %8618 = fadd double %8617, %8609
  store double %8618, ptr %8616, align 8, !tbaa !11
  %8619 = load ptr, ptr %7, align 8, !tbaa !9
  %8620 = load i32, ptr %12, align 4, !tbaa !5
  %8621 = load i32, ptr %8, align 4, !tbaa !5
  %8622 = mul nsw i32 0, %8621
  %8623 = add nsw i32 %8620, %8622
  %8624 = sext i32 %8623 to i64
  %8625 = getelementptr inbounds double, ptr %8619, i64 %8624
  %8626 = load double, ptr %8625, align 8, !tbaa !11
  %8627 = load ptr, ptr %7, align 8, !tbaa !9
  %8628 = load i32, ptr %12, align 4, !tbaa !5
  %8629 = load i32, ptr %8, align 4, !tbaa !5
  %8630 = mul nsw i32 1, %8629
  %8631 = add nsw i32 %8628, %8630
  %8632 = sext i32 %8631 to i64
  %8633 = getelementptr inbounds double, ptr %8627, i64 %8632
  %8634 = load double, ptr %8633, align 8, !tbaa !11
  %8635 = fmul double 0x3CB18F99C07C05C8, %8634
  %8636 = call double @llvm.fmuladd.f64(double 0xBC774AA3B009835F, double %8626, double %8635)
  %8637 = load ptr, ptr %7, align 8, !tbaa !9
  %8638 = load i32, ptr %12, align 4, !tbaa !5
  %8639 = load i32, ptr %8, align 4, !tbaa !5
  %8640 = mul nsw i32 2, %8639
  %8641 = add nsw i32 %8638, %8640
  %8642 = sext i32 %8641 to i64
  %8643 = getelementptr inbounds double, ptr %8637, i64 %8642
  %8644 = load double, ptr %8643, align 8, !tbaa !11
  %8645 = call double @llvm.fmuladd.f64(double 0x3FE4A7E9CB8A3498, double %8644, double %8636)
  %8646 = load ptr, ptr %7, align 8, !tbaa !9
  %8647 = load i32, ptr %12, align 4, !tbaa !5
  %8648 = load i32, ptr %8, align 4, !tbaa !5
  %8649 = mul nsw i32 3, %8648
  %8650 = add nsw i32 %8647, %8649
  %8651 = sext i32 %8650 to i64
  %8652 = getelementptr inbounds double, ptr %8646, i64 %8651
  %8653 = load double, ptr %8652, align 8, !tbaa !11
  %8654 = call double @llvm.fmuladd.f64(double 0x3CA9FD38292DDC9B, double %8653, double %8645)
  %8655 = load ptr, ptr %7, align 8, !tbaa !9
  %8656 = load i32, ptr %12, align 4, !tbaa !5
  %8657 = load i32, ptr %8, align 4, !tbaa !5
  %8658 = mul nsw i32 4, %8657
  %8659 = add nsw i32 %8656, %8658
  %8660 = sext i32 %8659 to i64
  %8661 = getelementptr inbounds double, ptr %8655, i64 %8660
  %8662 = load double, ptr %8661, align 8, !tbaa !11
  %8663 = call double @llvm.fmuladd.f64(double 0xBCB9E61E59FC2E99, double %8662, double %8654)
  %8664 = load ptr, ptr %7, align 8, !tbaa !9
  %8665 = load i32, ptr %12, align 4, !tbaa !5
  %8666 = load i32, ptr %8, align 4, !tbaa !5
  %8667 = mul nsw i32 5, %8666
  %8668 = add nsw i32 %8665, %8667
  %8669 = sext i32 %8668 to i64
  %8670 = getelementptr inbounds double, ptr %8664, i64 %8669
  %8671 = load double, ptr %8670, align 8, !tbaa !11
  %8672 = call double @llvm.fmuladd.f64(double 0xBCB0C7261B82C350, double %8671, double %8663)
  %8673 = load ptr, ptr %7, align 8, !tbaa !9
  %8674 = load i32, ptr %12, align 4, !tbaa !5
  %8675 = load i32, ptr %8, align 4, !tbaa !5
  %8676 = mul nsw i32 6, %8675
  %8677 = add nsw i32 %8674, %8676
  %8678 = sext i32 %8677 to i64
  %8679 = getelementptr inbounds double, ptr %8673, i64 %8678
  %8680 = load double, ptr %8679, align 8, !tbaa !11
  %8681 = call double @llvm.fmuladd.f64(double 0xBCF48A8393C3B480, double %8680, double %8672)
  %8682 = load ptr, ptr %7, align 8, !tbaa !9
  %8683 = load i32, ptr %12, align 4, !tbaa !5
  %8684 = load i32, ptr %8, align 4, !tbaa !5
  %8685 = mul nsw i32 7, %8684
  %8686 = add nsw i32 %8683, %8685
  %8687 = sext i32 %8686 to i64
  %8688 = getelementptr inbounds double, ptr %8682, i64 %8687
  %8689 = load double, ptr %8688, align 8, !tbaa !11
  %8690 = call double @llvm.fmuladd.f64(double 0xBCF2549348F1AFC0, double %8689, double %8681)
  %8691 = load ptr, ptr %7, align 8, !tbaa !9
  %8692 = load i32, ptr %12, align 4, !tbaa !5
  %8693 = load i32, ptr %8, align 4, !tbaa !5
  %8694 = mul nsw i32 8, %8693
  %8695 = add nsw i32 %8692, %8694
  %8696 = sext i32 %8695 to i64
  %8697 = getelementptr inbounds double, ptr %8691, i64 %8696
  %8698 = load double, ptr %8697, align 8, !tbaa !11
  %8699 = call double @llvm.fmuladd.f64(double 0xBFF08654A2D4F75B, double %8698, double %8690)
  %8700 = load ptr, ptr %7, align 8, !tbaa !9
  %8701 = load i32, ptr %12, align 4, !tbaa !5
  %8702 = load i32, ptr %8, align 4, !tbaa !5
  %8703 = mul nsw i32 9, %8702
  %8704 = add nsw i32 %8701, %8703
  %8705 = sext i32 %8704 to i64
  %8706 = getelementptr inbounds double, ptr %8700, i64 %8705
  %8707 = load double, ptr %8706, align 8, !tbaa !11
  %8708 = call double @llvm.fmuladd.f64(double 0x3D0538138B737B15, double %8707, double %8699)
  %8709 = load ptr, ptr %7, align 8, !tbaa !9
  %8710 = load i32, ptr %12, align 4, !tbaa !5
  %8711 = load i32, ptr %8, align 4, !tbaa !5
  %8712 = mul nsw i32 10, %8711
  %8713 = add nsw i32 %8710, %8712
  %8714 = sext i32 %8713 to i64
  %8715 = getelementptr inbounds double, ptr %8709, i64 %8714
  %8716 = load double, ptr %8715, align 8, !tbaa !11
  %8717 = call double @llvm.fmuladd.f64(double 0x3D05852E3E6E5F29, double %8716, double %8708)
  %8718 = load ptr, ptr %7, align 8, !tbaa !9
  %8719 = load i32, ptr %12, align 4, !tbaa !5
  %8720 = load i32, ptr %8, align 4, !tbaa !5
  %8721 = mul nsw i32 11, %8720
  %8722 = add nsw i32 %8719, %8721
  %8723 = sext i32 %8722 to i64
  %8724 = getelementptr inbounds double, ptr %8718, i64 %8723
  %8725 = load double, ptr %8724, align 8, !tbaa !11
  %8726 = call double @llvm.fmuladd.f64(double 0xBCE197C6C3C4B802, double %8725, double %8717)
  %8727 = load ptr, ptr %7, align 8, !tbaa !9
  %8728 = load i32, ptr %12, align 4, !tbaa !5
  %8729 = load i32, ptr %8, align 4, !tbaa !5
  %8730 = mul nsw i32 12, %8729
  %8731 = add nsw i32 %8728, %8730
  %8732 = sext i32 %8731 to i64
  %8733 = getelementptr inbounds double, ptr %8727, i64 %8732
  %8734 = load double, ptr %8733, align 8, !tbaa !11
  %8735 = call double @llvm.fmuladd.f64(double 0x3D09319702C932C5, double %8734, double %8726)
  %8736 = load ptr, ptr %7, align 8, !tbaa !9
  %8737 = load i32, ptr %12, align 4, !tbaa !5
  %8738 = load i32, ptr %8, align 4, !tbaa !5
  %8739 = mul nsw i32 13, %8738
  %8740 = add nsw i32 %8737, %8739
  %8741 = sext i32 %8740 to i64
  %8742 = getelementptr inbounds double, ptr %8736, i64 %8741
  %8743 = load double, ptr %8742, align 8, !tbaa !11
  %8744 = call double @llvm.fmuladd.f64(double 0x3D08453A4092DC8E, double %8743, double %8735)
  %8745 = load ptr, ptr %7, align 8, !tbaa !9
  %8746 = load i32, ptr %12, align 4, !tbaa !5
  %8747 = load i32, ptr %8, align 4, !tbaa !5
  %8748 = mul nsw i32 14, %8747
  %8749 = add nsw i32 %8746, %8748
  %8750 = sext i32 %8749 to i64
  %8751 = getelementptr inbounds double, ptr %8745, i64 %8750
  %8752 = load double, ptr %8751, align 8, !tbaa !11
  %8753 = call double @llvm.fmuladd.f64(double 0xBFFEFBDEB14F4D98, double %8752, double %8744)
  %8754 = load ptr, ptr %7, align 8, !tbaa !9
  %8755 = load i32, ptr %12, align 4, !tbaa !5
  %8756 = load i32, ptr %8, align 4, !tbaa !5
  %8757 = mul nsw i32 15, %8756
  %8758 = add nsw i32 %8755, %8757
  %8759 = sext i32 %8758 to i64
  %8760 = getelementptr inbounds double, ptr %8754, i64 %8759
  %8761 = load double, ptr %8760, align 8, !tbaa !11
  %8762 = call double @llvm.fmuladd.f64(double 0xBD1B7FE6E4DEE0A3, double %8761, double %8753)
  %8763 = load ptr, ptr %7, align 8, !tbaa !9
  %8764 = load i32, ptr %12, align 4, !tbaa !5
  %8765 = load i32, ptr %8, align 4, !tbaa !5
  %8766 = mul nsw i32 16, %8765
  %8767 = add nsw i32 %8764, %8766
  %8768 = sext i32 %8767 to i64
  %8769 = getelementptr inbounds double, ptr %8763, i64 %8768
  %8770 = load double, ptr %8769, align 8, !tbaa !11
  %8771 = call double @llvm.fmuladd.f64(double 0xBD1AB13DD17EC493, double %8770, double %8762)
  %8772 = load ptr, ptr %7, align 8, !tbaa !9
  %8773 = load i32, ptr %12, align 4, !tbaa !5
  %8774 = load i32, ptr %8, align 4, !tbaa !5
  %8775 = mul nsw i32 17, %8774
  %8776 = add nsw i32 %8773, %8775
  %8777 = sext i32 %8776 to i64
  %8778 = getelementptr inbounds double, ptr %8772, i64 %8777
  %8779 = load double, ptr %8778, align 8, !tbaa !11
  %8780 = call double @llvm.fmuladd.f64(double 0x3CF9E39CC9E10B88, double %8779, double %8771)
  store double %8780, ptr %11, align 8, !tbaa !11
  %8781 = load double, ptr %11, align 8, !tbaa !11
  %8782 = load ptr, ptr %9, align 8, !tbaa !9
  %8783 = load i32, ptr %12, align 4, !tbaa !5
  %8784 = load i32, ptr %10, align 4, !tbaa !5
  %8785 = mul nsw i32 50, %8784
  %8786 = add nsw i32 %8783, %8785
  %8787 = sext i32 %8786 to i64
  %8788 = getelementptr inbounds double, ptr %8782, i64 %8787
  %8789 = load double, ptr %8788, align 8, !tbaa !11
  %8790 = fadd double %8789, %8781
  store double %8790, ptr %8788, align 8, !tbaa !11
  %8791 = load ptr, ptr %7, align 8, !tbaa !9
  %8792 = load i32, ptr %12, align 4, !tbaa !5
  %8793 = load i32, ptr %8, align 4, !tbaa !5
  %8794 = mul nsw i32 0, %8793
  %8795 = add nsw i32 %8792, %8794
  %8796 = sext i32 %8795 to i64
  %8797 = getelementptr inbounds double, ptr %8791, i64 %8796
  %8798 = load double, ptr %8797, align 8, !tbaa !11
  %8799 = load ptr, ptr %7, align 8, !tbaa !9
  %8800 = load i32, ptr %12, align 4, !tbaa !5
  %8801 = load i32, ptr %8, align 4, !tbaa !5
  %8802 = mul nsw i32 1, %8801
  %8803 = add nsw i32 %8800, %8802
  %8804 = sext i32 %8803 to i64
  %8805 = getelementptr inbounds double, ptr %8799, i64 %8804
  %8806 = load double, ptr %8805, align 8, !tbaa !11
  %8807 = fmul double 0xBCC12CAB67834A70, %8806
  %8808 = call double @llvm.fmuladd.f64(double 0x3C80AA02FA4803A4, double %8798, double %8807)
  %8809 = load ptr, ptr %7, align 8, !tbaa !9
  %8810 = load i32, ptr %12, align 4, !tbaa !5
  %8811 = load i32, ptr %8, align 4, !tbaa !5
  %8812 = mul nsw i32 2, %8811
  %8813 = add nsw i32 %8810, %8812
  %8814 = sext i32 %8813 to i64
  %8815 = getelementptr inbounds double, ptr %8809, i64 %8814
  %8816 = load double, ptr %8815, align 8, !tbaa !11
  %8817 = call double @llvm.fmuladd.f64(double 0xBCC3D0AC662B45FE, double %8816, double %8808)
  %8818 = load ptr, ptr %7, align 8, !tbaa !9
  %8819 = load i32, ptr %12, align 4, !tbaa !5
  %8820 = load i32, ptr %8, align 4, !tbaa !5
  %8821 = mul nsw i32 3, %8820
  %8822 = add nsw i32 %8819, %8821
  %8823 = sext i32 %8822 to i64
  %8824 = getelementptr inbounds double, ptr %8818, i64 %8823
  %8825 = load double, ptr %8824, align 8, !tbaa !11
  %8826 = call double @llvm.fmuladd.f64(double 0x3FE4A7E9CB8A3492, double %8825, double %8817)
  %8827 = load ptr, ptr %7, align 8, !tbaa !9
  %8828 = load i32, ptr %12, align 4, !tbaa !5
  %8829 = load i32, ptr %8, align 4, !tbaa !5
  %8830 = mul nsw i32 4, %8829
  %8831 = add nsw i32 %8828, %8830
  %8832 = sext i32 %8831 to i64
  %8833 = getelementptr inbounds double, ptr %8827, i64 %8832
  %8834 = load double, ptr %8833, align 8, !tbaa !11
  %8835 = call double @llvm.fmuladd.f64(double 0x3CA52C6631B8F77F, double %8834, double %8826)
  %8836 = load ptr, ptr %7, align 8, !tbaa !9
  %8837 = load i32, ptr %12, align 4, !tbaa !5
  %8838 = load i32, ptr %8, align 4, !tbaa !5
  %8839 = mul nsw i32 5, %8838
  %8840 = add nsw i32 %8837, %8839
  %8841 = sext i32 %8840 to i64
  %8842 = getelementptr inbounds double, ptr %8836, i64 %8841
  %8843 = load double, ptr %8842, align 8, !tbaa !11
  %8844 = call double @llvm.fmuladd.f64(double 0x3C9E24E98A05E9A1, double %8843, double %8835)
  %8845 = load ptr, ptr %7, align 8, !tbaa !9
  %8846 = load i32, ptr %12, align 4, !tbaa !5
  %8847 = load i32, ptr %8, align 4, !tbaa !5
  %8848 = mul nsw i32 6, %8847
  %8849 = add nsw i32 %8846, %8848
  %8850 = sext i32 %8849 to i64
  %8851 = getelementptr inbounds double, ptr %8845, i64 %8850
  %8852 = load double, ptr %8851, align 8, !tbaa !11
  %8853 = call double @llvm.fmuladd.f64(double 0xBCDA7F1576963AFB, double %8852, double %8844)
  %8854 = load ptr, ptr %7, align 8, !tbaa !9
  %8855 = load i32, ptr %12, align 4, !tbaa !5
  %8856 = load i32, ptr %8, align 4, !tbaa !5
  %8857 = mul nsw i32 7, %8856
  %8858 = add nsw i32 %8855, %8857
  %8859 = sext i32 %8858 to i64
  %8860 = getelementptr inbounds double, ptr %8854, i64 %8859
  %8861 = load double, ptr %8860, align 8, !tbaa !11
  %8862 = call double @llvm.fmuladd.f64(double 0x3CF4F52E3E6E5F2F, double %8861, double %8853)
  %8863 = load ptr, ptr %7, align 8, !tbaa !9
  %8864 = load i32, ptr %12, align 4, !tbaa !5
  %8865 = load i32, ptr %8, align 4, !tbaa !5
  %8866 = mul nsw i32 8, %8865
  %8867 = add nsw i32 %8864, %8866
  %8868 = sext i32 %8867 to i64
  %8869 = getelementptr inbounds double, ptr %8863, i64 %8868
  %8870 = load double, ptr %8869, align 8, !tbaa !11
  %8871 = call double @llvm.fmuladd.f64(double 0x3CF55B6CB70E5048, double %8870, double %8862)
  %8872 = load ptr, ptr %7, align 8, !tbaa !9
  %8873 = load i32, ptr %12, align 4, !tbaa !5
  %8874 = load i32, ptr %8, align 4, !tbaa !5
  %8875 = mul nsw i32 9, %8874
  %8876 = add nsw i32 %8873, %8875
  %8877 = sext i32 %8876 to i64
  %8878 = getelementptr inbounds double, ptr %8872, i64 %8877
  %8879 = load double, ptr %8878, align 8, !tbaa !11
  %8880 = call double @llvm.fmuladd.f64(double 0xBFF08654A2D4F717, double %8879, double %8871)
  %8881 = load ptr, ptr %7, align 8, !tbaa !9
  %8882 = load i32, ptr %12, align 4, !tbaa !5
  %8883 = load i32, ptr %8, align 4, !tbaa !5
  %8884 = mul nsw i32 10, %8883
  %8885 = add nsw i32 %8882, %8884
  %8886 = sext i32 %8885 to i64
  %8887 = getelementptr inbounds double, ptr %8881, i64 %8886
  %8888 = load double, ptr %8887, align 8, !tbaa !11
  %8889 = call double @llvm.fmuladd.f64(double 0x3CEFF3CE704FB7B1, double %8888, double %8880)
  %8890 = load ptr, ptr %7, align 8, !tbaa !9
  %8891 = load i32, ptr %12, align 4, !tbaa !5
  %8892 = load i32, ptr %8, align 4, !tbaa !5
  %8893 = mul nsw i32 11, %8892
  %8894 = add nsw i32 %8891, %8893
  %8895 = sext i32 %8894 to i64
  %8896 = getelementptr inbounds double, ptr %8890, i64 %8895
  %8897 = load double, ptr %8896, align 8, !tbaa !11
  %8898 = call double @llvm.fmuladd.f64(double 0x3CEF146ACBEB905B, double %8897, double %8889)
  %8899 = load ptr, ptr %7, align 8, !tbaa !9
  %8900 = load i32, ptr %12, align 4, !tbaa !5
  %8901 = load i32, ptr %8, align 4, !tbaa !5
  %8902 = mul nsw i32 12, %8901
  %8903 = add nsw i32 %8900, %8902
  %8904 = sext i32 %8903 to i64
  %8905 = getelementptr inbounds double, ptr %8899, i64 %8904
  %8906 = load double, ptr %8905, align 8, !tbaa !11
  %8907 = call double @llvm.fmuladd.f64(double 0x3CEC2EB7C235876B, double %8906, double %8898)
  %8908 = load ptr, ptr %7, align 8, !tbaa !9
  %8909 = load i32, ptr %12, align 4, !tbaa !5
  %8910 = load i32, ptr %8, align 4, !tbaa !5
  %8911 = mul nsw i32 13, %8910
  %8912 = add nsw i32 %8909, %8911
  %8913 = sext i32 %8912 to i64
  %8914 = getelementptr inbounds double, ptr %8908, i64 %8913
  %8915 = load double, ptr %8914, align 8, !tbaa !11
  %8916 = call double @llvm.fmuladd.f64(double 0xBD09EA15B3B00878, double %8915, double %8907)
  %8917 = load ptr, ptr %7, align 8, !tbaa !9
  %8918 = load i32, ptr %12, align 4, !tbaa !5
  %8919 = load i32, ptr %8, align 4, !tbaa !5
  %8920 = mul nsw i32 14, %8919
  %8921 = add nsw i32 %8918, %8920
  %8922 = sext i32 %8921 to i64
  %8923 = getelementptr inbounds double, ptr %8917, i64 %8922
  %8924 = load double, ptr %8923, align 8, !tbaa !11
  %8925 = call double @llvm.fmuladd.f64(double 0xBD0A5870F2CA0280, double %8924, double %8916)
  %8926 = load ptr, ptr %7, align 8, !tbaa !9
  %8927 = load i32, ptr %12, align 4, !tbaa !5
  %8928 = load i32, ptr %8, align 4, !tbaa !5
  %8929 = mul nsw i32 15, %8928
  %8930 = add nsw i32 %8927, %8929
  %8931 = sext i32 %8930 to i64
  %8932 = getelementptr inbounds double, ptr %8926, i64 %8931
  %8933 = load double, ptr %8932, align 8, !tbaa !11
  %8934 = call double @llvm.fmuladd.f64(double 0xBFFEFBDEB14F4E48, double %8933, double %8925)
  %8935 = load ptr, ptr %7, align 8, !tbaa !9
  %8936 = load i32, ptr %12, align 4, !tbaa !5
  %8937 = load i32, ptr %8, align 4, !tbaa !5
  %8938 = mul nsw i32 16, %8937
  %8939 = add nsw i32 %8936, %8938
  %8940 = sext i32 %8939 to i64
  %8941 = getelementptr inbounds double, ptr %8935, i64 %8940
  %8942 = load double, ptr %8941, align 8, !tbaa !11
  %8943 = call double @llvm.fmuladd.f64(double 0xBD043059A53F3A02, double %8942, double %8934)
  %8944 = load ptr, ptr %7, align 8, !tbaa !9
  %8945 = load i32, ptr %12, align 4, !tbaa !5
  %8946 = load i32, ptr %8, align 4, !tbaa !5
  %8947 = mul nsw i32 17, %8946
  %8948 = add nsw i32 %8945, %8947
  %8949 = sext i32 %8948 to i64
  %8950 = getelementptr inbounds double, ptr %8944, i64 %8949
  %8951 = load double, ptr %8950, align 8, !tbaa !11
  %8952 = call double @llvm.fmuladd.f64(double 0xBD03454734E1B74C, double %8951, double %8943)
  store double %8952, ptr %11, align 8, !tbaa !11
  %8953 = load double, ptr %11, align 8, !tbaa !11
  %8954 = load ptr, ptr %9, align 8, !tbaa !9
  %8955 = load i32, ptr %12, align 4, !tbaa !5
  %8956 = load i32, ptr %10, align 4, !tbaa !5
  %8957 = mul nsw i32 51, %8956
  %8958 = add nsw i32 %8955, %8957
  %8959 = sext i32 %8958 to i64
  %8960 = getelementptr inbounds double, ptr %8954, i64 %8959
  %8961 = load double, ptr %8960, align 8, !tbaa !11
  %8962 = fadd double %8961, %8953
  store double %8962, ptr %8960, align 8, !tbaa !11
  %8963 = load ptr, ptr %7, align 8, !tbaa !9
  %8964 = load i32, ptr %12, align 4, !tbaa !5
  %8965 = load i32, ptr %8, align 4, !tbaa !5
  %8966 = mul nsw i32 0, %8965
  %8967 = add nsw i32 %8964, %8966
  %8968 = sext i32 %8967 to i64
  %8969 = getelementptr inbounds double, ptr %8963, i64 %8968
  %8970 = load double, ptr %8969, align 8, !tbaa !11
  %8971 = load ptr, ptr %7, align 8, !tbaa !9
  %8972 = load i32, ptr %12, align 4, !tbaa !5
  %8973 = load i32, ptr %8, align 4, !tbaa !5
  %8974 = mul nsw i32 1, %8973
  %8975 = add nsw i32 %8972, %8974
  %8976 = sext i32 %8975 to i64
  %8977 = getelementptr inbounds double, ptr %8971, i64 %8976
  %8978 = load double, ptr %8977, align 8, !tbaa !11
  %8979 = fmul double 0x3CA641DE100CB2D1, %8978
  %8980 = call double @llvm.fmuladd.f64(double 0xBC7995F7A399077F, double %8970, double %8979)
  %8981 = load ptr, ptr %7, align 8, !tbaa !9
  %8982 = load i32, ptr %12, align 4, !tbaa !5
  %8983 = load i32, ptr %8, align 4, !tbaa !5
  %8984 = mul nsw i32 2, %8983
  %8985 = add nsw i32 %8982, %8984
  %8986 = sext i32 %8985 to i64
  %8987 = getelementptr inbounds double, ptr %8981, i64 %8986
  %8988 = load double, ptr %8987, align 8, !tbaa !11
  %8989 = call double @llvm.fmuladd.f64(double 0xBCB4F5312ABC6654, double %8988, double %8980)
  %8990 = load ptr, ptr %7, align 8, !tbaa !9
  %8991 = load i32, ptr %12, align 4, !tbaa !5
  %8992 = load i32, ptr %8, align 4, !tbaa !5
  %8993 = mul nsw i32 3, %8992
  %8994 = add nsw i32 %8991, %8993
  %8995 = sext i32 %8994 to i64
  %8996 = getelementptr inbounds double, ptr %8990, i64 %8995
  %8997 = load double, ptr %8996, align 8, !tbaa !11
  %8998 = call double @llvm.fmuladd.f64(double 0xBC84CFA22413F23C, double %8997, double %8989)
  %8999 = load ptr, ptr %7, align 8, !tbaa !9
  %9000 = load i32, ptr %12, align 4, !tbaa !5
  %9001 = load i32, ptr %8, align 4, !tbaa !5
  %9002 = mul nsw i32 4, %9001
  %9003 = add nsw i32 %9000, %9002
  %9004 = sext i32 %9003 to i64
  %9005 = getelementptr inbounds double, ptr %8999, i64 %9004
  %9006 = load double, ptr %9005, align 8, !tbaa !11
  %9007 = call double @llvm.fmuladd.f64(double 0x3FE4A7E9CB8A3497, double %9006, double %8998)
  %9008 = load ptr, ptr %7, align 8, !tbaa !9
  %9009 = load i32, ptr %12, align 4, !tbaa !5
  %9010 = load i32, ptr %8, align 4, !tbaa !5
  %9011 = mul nsw i32 5, %9010
  %9012 = add nsw i32 %9009, %9011
  %9013 = sext i32 %9012 to i64
  %9014 = getelementptr inbounds double, ptr %9008, i64 %9013
  %9015 = load double, ptr %9014, align 8, !tbaa !11
  %9016 = call double @llvm.fmuladd.f64(double 0x3C71E70AAB141C80, double %9015, double %9007)
  %9017 = load ptr, ptr %7, align 8, !tbaa !9
  %9018 = load i32, ptr %12, align 4, !tbaa !5
  %9019 = load i32, ptr %8, align 4, !tbaa !5
  %9020 = mul nsw i32 6, %9019
  %9021 = add nsw i32 %9018, %9020
  %9022 = sext i32 %9021 to i64
  %9023 = getelementptr inbounds double, ptr %9017, i64 %9022
  %9024 = load double, ptr %9023, align 8, !tbaa !11
  %9025 = call double @llvm.fmuladd.f64(double 0x3CF473CE704FB7AF, double %9024, double %9016)
  %9026 = load ptr, ptr %7, align 8, !tbaa !9
  %9027 = load i32, ptr %12, align 4, !tbaa !5
  %9028 = load i32, ptr %8, align 4, !tbaa !5
  %9029 = mul nsw i32 7, %9028
  %9030 = add nsw i32 %9027, %9029
  %9031 = sext i32 %9030 to i64
  %9032 = getelementptr inbounds double, ptr %9026, i64 %9031
  %9033 = load double, ptr %9032, align 8, !tbaa !11
  %9034 = call double @llvm.fmuladd.f64(double 0xBCDC972A6828DF4A, double %9033, double %9025)
  %9035 = load ptr, ptr %7, align 8, !tbaa !9
  %9036 = load i32, ptr %12, align 4, !tbaa !5
  %9037 = load i32, ptr %8, align 4, !tbaa !5
  %9038 = mul nsw i32 8, %9037
  %9039 = add nsw i32 %9036, %9038
  %9040 = sext i32 %9039 to i64
  %9041 = getelementptr inbounds double, ptr %9035, i64 %9040
  %9042 = load double, ptr %9041, align 8, !tbaa !11
  %9043 = call double @llvm.fmuladd.f64(double 0x3CF52443B5049A2F, double %9042, double %9034)
  %9044 = load ptr, ptr %7, align 8, !tbaa !9
  %9045 = load i32, ptr %12, align 4, !tbaa !5
  %9046 = load i32, ptr %8, align 4, !tbaa !5
  %9047 = mul nsw i32 9, %9046
  %9048 = add nsw i32 %9045, %9047
  %9049 = sext i32 %9048 to i64
  %9050 = getelementptr inbounds double, ptr %9044, i64 %9049
  %9051 = load double, ptr %9050, align 8, !tbaa !11
  %9052 = call double @llvm.fmuladd.f64(double 0x3CECBEC748C84EAB, double %9051, double %9043)
  %9053 = load ptr, ptr %7, align 8, !tbaa !9
  %9054 = load i32, ptr %12, align 4, !tbaa !5
  %9055 = load i32, ptr %8, align 4, !tbaa !5
  %9056 = mul nsw i32 10, %9055
  %9057 = add nsw i32 %9054, %9056
  %9058 = sext i32 %9057 to i64
  %9059 = getelementptr inbounds double, ptr %9053, i64 %9058
  %9060 = load double, ptr %9059, align 8, !tbaa !11
  %9061 = call double @llvm.fmuladd.f64(double 0xBFF08654A2D4F71C, double %9060, double %9052)
  %9062 = load ptr, ptr %7, align 8, !tbaa !9
  %9063 = load i32, ptr %12, align 4, !tbaa !5
  %9064 = load i32, ptr %8, align 4, !tbaa !5
  %9065 = mul nsw i32 11, %9064
  %9066 = add nsw i32 %9063, %9065
  %9067 = sext i32 %9066 to i64
  %9068 = getelementptr inbounds double, ptr %9062, i64 %9067
  %9069 = load double, ptr %9068, align 8, !tbaa !11
  %9070 = call double @llvm.fmuladd.f64(double 0x3CF0EA0E4F0ED202, double %9069, double %9061)
  %9071 = load ptr, ptr %7, align 8, !tbaa !9
  %9072 = load i32, ptr %12, align 4, !tbaa !5
  %9073 = load i32, ptr %8, align 4, !tbaa !5
  %9074 = mul nsw i32 12, %9073
  %9075 = add nsw i32 %9072, %9074
  %9076 = sext i32 %9075 to i64
  %9077 = getelementptr inbounds double, ptr %9071, i64 %9076
  %9078 = load double, ptr %9077, align 8, !tbaa !11
  %9079 = call double @llvm.fmuladd.f64(double 0xBD092AFA61D3C23C, double %9078, double %9070)
  %9080 = load ptr, ptr %7, align 8, !tbaa !9
  %9081 = load i32, ptr %12, align 4, !tbaa !5
  %9082 = load i32, ptr %8, align 4, !tbaa !5
  %9083 = mul nsw i32 13, %9082
  %9084 = add nsw i32 %9081, %9083
  %9085 = sext i32 %9084 to i64
  %9086 = getelementptr inbounds double, ptr %9080, i64 %9085
  %9087 = load double, ptr %9086, align 8, !tbaa !11
  %9088 = call double @llvm.fmuladd.f64(double 0x3CF09E8D6B1B7310, double %9087, double %9079)
  %9089 = load ptr, ptr %7, align 8, !tbaa !9
  %9090 = load i32, ptr %12, align 4, !tbaa !5
  %9091 = load i32, ptr %8, align 4, !tbaa !5
  %9092 = mul nsw i32 14, %9091
  %9093 = add nsw i32 %9090, %9092
  %9094 = sext i32 %9093 to i64
  %9095 = getelementptr inbounds double, ptr %9089, i64 %9094
  %9096 = load double, ptr %9095, align 8, !tbaa !11
  %9097 = call double @llvm.fmuladd.f64(double 0xBD090AB2F386DB23, double %9096, double %9088)
  %9098 = load ptr, ptr %7, align 8, !tbaa !9
  %9099 = load i32, ptr %12, align 4, !tbaa !5
  %9100 = load i32, ptr %8, align 4, !tbaa !5
  %9101 = mul nsw i32 15, %9100
  %9102 = add nsw i32 %9099, %9101
  %9103 = sext i32 %9102 to i64
  %9104 = getelementptr inbounds double, ptr %9098, i64 %9103
  %9105 = load double, ptr %9104, align 8, !tbaa !11
  %9106 = call double @llvm.fmuladd.f64(double 0xBD01E5B3F19FA08F, double %9105, double %9097)
  %9107 = load ptr, ptr %7, align 8, !tbaa !9
  %9108 = load i32, ptr %12, align 4, !tbaa !5
  %9109 = load i32, ptr %8, align 4, !tbaa !5
  %9110 = mul nsw i32 16, %9109
  %9111 = add nsw i32 %9108, %9110
  %9112 = sext i32 %9111 to i64
  %9113 = getelementptr inbounds double, ptr %9107, i64 %9112
  %9114 = load double, ptr %9113, align 8, !tbaa !11
  %9115 = call double @llvm.fmuladd.f64(double 0xBFFEFBDEB14F4E48, double %9114, double %9106)
  %9116 = load ptr, ptr %7, align 8, !tbaa !9
  %9117 = load i32, ptr %12, align 4, !tbaa !5
  %9118 = load i32, ptr %8, align 4, !tbaa !5
  %9119 = mul nsw i32 17, %9118
  %9120 = add nsw i32 %9117, %9119
  %9121 = sext i32 %9120 to i64
  %9122 = getelementptr inbounds double, ptr %9116, i64 %9121
  %9123 = load double, ptr %9122, align 8, !tbaa !11
  %9124 = call double @llvm.fmuladd.f64(double 0xBD06A54AC5CD9F53, double %9123, double %9115)
  store double %9124, ptr %11, align 8, !tbaa !11
  %9125 = load double, ptr %11, align 8, !tbaa !11
  %9126 = load ptr, ptr %9, align 8, !tbaa !9
  %9127 = load i32, ptr %12, align 4, !tbaa !5
  %9128 = load i32, ptr %10, align 4, !tbaa !5
  %9129 = mul nsw i32 52, %9128
  %9130 = add nsw i32 %9127, %9129
  %9131 = sext i32 %9130 to i64
  %9132 = getelementptr inbounds double, ptr %9126, i64 %9131
  %9133 = load double, ptr %9132, align 8, !tbaa !11
  %9134 = fadd double %9133, %9125
  store double %9134, ptr %9132, align 8, !tbaa !11
  %9135 = load ptr, ptr %7, align 8, !tbaa !9
  %9136 = load i32, ptr %12, align 4, !tbaa !5
  %9137 = load i32, ptr %8, align 4, !tbaa !5
  %9138 = mul nsw i32 0, %9137
  %9139 = add nsw i32 %9136, %9138
  %9140 = sext i32 %9139 to i64
  %9141 = getelementptr inbounds double, ptr %9135, i64 %9140
  %9142 = load double, ptr %9141, align 8, !tbaa !11
  %9143 = load ptr, ptr %7, align 8, !tbaa !9
  %9144 = load i32, ptr %12, align 4, !tbaa !5
  %9145 = load i32, ptr %8, align 4, !tbaa !5
  %9146 = mul nsw i32 1, %9145
  %9147 = add nsw i32 %9144, %9146
  %9148 = sext i32 %9147 to i64
  %9149 = getelementptr inbounds double, ptr %9143, i64 %9148
  %9150 = load double, ptr %9149, align 8, !tbaa !11
  %9151 = fmul double 0x3CB96EEF6E012B83, %9150
  %9152 = call double @llvm.fmuladd.f64(double 0x3CC5794CC9D41F8E, double %9142, double %9151)
  %9153 = load ptr, ptr %7, align 8, !tbaa !9
  %9154 = load i32, ptr %12, align 4, !tbaa !5
  %9155 = load i32, ptr %8, align 4, !tbaa !5
  %9156 = mul nsw i32 2, %9155
  %9157 = add nsw i32 %9154, %9156
  %9158 = sext i32 %9157 to i64
  %9159 = getelementptr inbounds double, ptr %9153, i64 %9158
  %9160 = load double, ptr %9159, align 8, !tbaa !11
  %9161 = call double @llvm.fmuladd.f64(double 0x3CA99DE8CF4E0887, double %9160, double %9152)
  %9162 = load ptr, ptr %7, align 8, !tbaa !9
  %9163 = load i32, ptr %12, align 4, !tbaa !5
  %9164 = load i32, ptr %8, align 4, !tbaa !5
  %9165 = mul nsw i32 3, %9164
  %9166 = add nsw i32 %9163, %9165
  %9167 = sext i32 %9166 to i64
  %9168 = getelementptr inbounds double, ptr %9162, i64 %9167
  %9169 = load double, ptr %9168, align 8, !tbaa !11
  %9170 = call double @llvm.fmuladd.f64(double 0xBC949B6E91DE24A6, double %9169, double %9161)
  %9171 = load ptr, ptr %7, align 8, !tbaa !9
  %9172 = load i32, ptr %12, align 4, !tbaa !5
  %9173 = load i32, ptr %8, align 4, !tbaa !5
  %9174 = mul nsw i32 4, %9173
  %9175 = add nsw i32 %9172, %9174
  %9176 = sext i32 %9175 to i64
  %9177 = getelementptr inbounds double, ptr %9171, i64 %9176
  %9178 = load double, ptr %9177, align 8, !tbaa !11
  %9179 = call double @llvm.fmuladd.f64(double 0xBCC8E357CB42C088, double %9178, double %9170)
  %9180 = load ptr, ptr %7, align 8, !tbaa !9
  %9181 = load i32, ptr %12, align 4, !tbaa !5
  %9182 = load i32, ptr %8, align 4, !tbaa !5
  %9183 = mul nsw i32 5, %9182
  %9184 = add nsw i32 %9181, %9183
  %9185 = sext i32 %9184 to i64
  %9186 = getelementptr inbounds double, ptr %9180, i64 %9185
  %9187 = load double, ptr %9186, align 8, !tbaa !11
  %9188 = call double @llvm.fmuladd.f64(double 0x3FE4A7E9CB8A3494, double %9187, double %9179)
  %9189 = load ptr, ptr %7, align 8, !tbaa !9
  %9190 = load i32, ptr %12, align 4, !tbaa !5
  %9191 = load i32, ptr %8, align 4, !tbaa !5
  %9192 = mul nsw i32 6, %9191
  %9193 = add nsw i32 %9190, %9192
  %9194 = sext i32 %9193 to i64
  %9195 = getelementptr inbounds double, ptr %9189, i64 %9194
  %9196 = load double, ptr %9195, align 8, !tbaa !11
  %9197 = call double @llvm.fmuladd.f64(double 0x3CF51E5204136C2F, double %9196, double %9188)
  %9198 = load ptr, ptr %7, align 8, !tbaa !9
  %9199 = load i32, ptr %12, align 4, !tbaa !5
  %9200 = load i32, ptr %8, align 4, !tbaa !5
  %9201 = mul nsw i32 7, %9200
  %9202 = add nsw i32 %9199, %9201
  %9203 = sext i32 %9202 to i64
  %9204 = getelementptr inbounds double, ptr %9198, i64 %9203
  %9205 = load double, ptr %9204, align 8, !tbaa !11
  %9206 = call double @llvm.fmuladd.f64(double 0x3CF3F02716E6F629, double %9205, double %9197)
  %9207 = load ptr, ptr %7, align 8, !tbaa !9
  %9208 = load i32, ptr %12, align 4, !tbaa !5
  %9209 = load i32, ptr %8, align 4, !tbaa !5
  %9210 = mul nsw i32 8, %9209
  %9211 = add nsw i32 %9208, %9210
  %9212 = sext i32 %9211 to i64
  %9213 = getelementptr inbounds double, ptr %9207, i64 %9212
  %9214 = load double, ptr %9213, align 8, !tbaa !11
  %9215 = call double @llvm.fmuladd.f64(double 0xBCD8A971F372F952, double %9214, double %9206)
  %9216 = load ptr, ptr %7, align 8, !tbaa !9
  %9217 = load i32, ptr %12, align 4, !tbaa !5
  %9218 = load i32, ptr %8, align 4, !tbaa !5
  %9219 = mul nsw i32 9, %9218
  %9220 = add nsw i32 %9217, %9219
  %9221 = sext i32 %9220 to i64
  %9222 = getelementptr inbounds double, ptr %9216, i64 %9221
  %9223 = load double, ptr %9222, align 8, !tbaa !11
  %9224 = call double @llvm.fmuladd.f64(double 0x3CEE0138B737B153, double %9223, double %9215)
  %9225 = load ptr, ptr %7, align 8, !tbaa !9
  %9226 = load i32, ptr %12, align 4, !tbaa !5
  %9227 = load i32, ptr %8, align 4, !tbaa !5
  %9228 = mul nsw i32 10, %9227
  %9229 = add nsw i32 %9226, %9228
  %9230 = sext i32 %9229 to i64
  %9231 = getelementptr inbounds double, ptr %9225, i64 %9230
  %9232 = load double, ptr %9231, align 8, !tbaa !11
  %9233 = call double @llvm.fmuladd.f64(double 0x3CF1BE2AED2C7606, double %9232, double %9224)
  %9234 = load ptr, ptr %7, align 8, !tbaa !9
  %9235 = load i32, ptr %12, align 4, !tbaa !5
  %9236 = load i32, ptr %8, align 4, !tbaa !5
  %9237 = mul nsw i32 11, %9236
  %9238 = add nsw i32 %9235, %9237
  %9239 = sext i32 %9238 to i64
  %9240 = getelementptr inbounds double, ptr %9234, i64 %9239
  %9241 = load double, ptr %9240, align 8, !tbaa !11
  %9242 = call double @llvm.fmuladd.f64(double 0xBFF08654A2D4F717, double %9241, double %9233)
  %9243 = load ptr, ptr %7, align 8, !tbaa !9
  %9244 = load i32, ptr %12, align 4, !tbaa !5
  %9245 = load i32, ptr %8, align 4, !tbaa !5
  %9246 = mul nsw i32 12, %9245
  %9247 = add nsw i32 %9244, %9246
  %9248 = sext i32 %9247 to i64
  %9249 = getelementptr inbounds double, ptr %9243, i64 %9248
  %9250 = load double, ptr %9249, align 8, !tbaa !11
  %9251 = call double @llvm.fmuladd.f64(double 0xBD0B951138D98D7D, double %9250, double %9242)
  %9252 = load ptr, ptr %7, align 8, !tbaa !9
  %9253 = load i32, ptr %12, align 4, !tbaa !5
  %9254 = load i32, ptr %8, align 4, !tbaa !5
  %9255 = mul nsw i32 13, %9254
  %9256 = add nsw i32 %9253, %9255
  %9257 = sext i32 %9256 to i64
  %9258 = getelementptr inbounds double, ptr %9252, i64 %9257
  %9259 = load double, ptr %9258, align 8, !tbaa !11
  %9260 = call double @llvm.fmuladd.f64(double 0xBD0A2E976ACF9682, double %9259, double %9251)
  %9261 = load ptr, ptr %7, align 8, !tbaa !9
  %9262 = load i32, ptr %12, align 4, !tbaa !5
  %9263 = load i32, ptr %8, align 4, !tbaa !5
  %9264 = mul nsw i32 14, %9263
  %9265 = add nsw i32 %9262, %9264
  %9266 = sext i32 %9265 to i64
  %9267 = getelementptr inbounds double, ptr %9261, i64 %9266
  %9268 = load double, ptr %9267, align 8, !tbaa !11
  %9269 = call double @llvm.fmuladd.f64(double 0x3CED3CAF7F982616, double %9268, double %9260)
  %9270 = load ptr, ptr %7, align 8, !tbaa !9
  %9271 = load i32, ptr %12, align 4, !tbaa !5
  %9272 = load i32, ptr %8, align 4, !tbaa !5
  %9273 = mul nsw i32 15, %9272
  %9274 = add nsw i32 %9271, %9273
  %9275 = sext i32 %9274 to i64
  %9276 = getelementptr inbounds double, ptr %9270, i64 %9275
  %9277 = load double, ptr %9276, align 8, !tbaa !11
  %9278 = call double @llvm.fmuladd.f64(double 0xBD02F71750AA300C, double %9277, double %9269)
  %9279 = load ptr, ptr %7, align 8, !tbaa !9
  %9280 = load i32, ptr %12, align 4, !tbaa !5
  %9281 = load i32, ptr %8, align 4, !tbaa !5
  %9282 = mul nsw i32 16, %9281
  %9283 = add nsw i32 %9280, %9282
  %9284 = sext i32 %9283 to i64
  %9285 = getelementptr inbounds double, ptr %9279, i64 %9284
  %9286 = load double, ptr %9285, align 8, !tbaa !11
  %9287 = call double @llvm.fmuladd.f64(double 0xBD04E8A557879DBD, double %9286, double %9278)
  %9288 = load ptr, ptr %7, align 8, !tbaa !9
  %9289 = load i32, ptr %12, align 4, !tbaa !5
  %9290 = load i32, ptr %8, align 4, !tbaa !5
  %9291 = mul nsw i32 17, %9290
  %9292 = add nsw i32 %9289, %9291
  %9293 = sext i32 %9292 to i64
  %9294 = getelementptr inbounds double, ptr %9288, i64 %9293
  %9295 = load double, ptr %9294, align 8, !tbaa !11
  %9296 = call double @llvm.fmuladd.f64(double 0xBFFEFBDEB14F4E48, double %9295, double %9287)
  store double %9296, ptr %11, align 8, !tbaa !11
  %9297 = load double, ptr %11, align 8, !tbaa !11
  %9298 = load ptr, ptr %9, align 8, !tbaa !9
  %9299 = load i32, ptr %12, align 4, !tbaa !5
  %9300 = load i32, ptr %10, align 4, !tbaa !5
  %9301 = mul nsw i32 53, %9300
  %9302 = add nsw i32 %9299, %9301
  %9303 = sext i32 %9302 to i64
  %9304 = getelementptr inbounds double, ptr %9298, i64 %9303
  %9305 = load double, ptr %9304, align 8, !tbaa !11
  %9306 = fadd double %9305, %9297
  store double %9306, ptr %9304, align 8, !tbaa !11
  br label %9307

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

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

.lr.ph:                                           ; preds = %5
  %7 = shl nsw i32 %2, 1
  %8 = mul nsw i32 %2, 3
  %9 = shl nsw i32 %2, 2
  %10 = mul nsw i32 %2, 5
  %11 = mul nsw i32 %2, 6
  %12 = mul nsw i32 %2, 7
  %13 = shl nsw i32 %2, 3
  %14 = mul nsw i32 %2, 9
  %15 = mul nsw i32 %2, 10
  %16 = mul nsw i32 %2, 11
  %17 = mul nsw i32 %2, 12
  %18 = mul nsw i32 %2, 13
  %19 = mul nsw i32 %2, 14
  %20 = mul nsw i32 %2, 15
  %21 = shl nsw i32 %2, 4
  %22 = mul nsw i32 %2, 17
  %23 = shl nsw i32 %4, 1
  %24 = mul nsw i32 %4, 3
  %25 = shl nsw i32 %4, 2
  %26 = mul nsw i32 %4, 5
  %27 = mul nsw i32 %4, 6
  %28 = mul nsw i32 %4, 7
  %29 = shl nsw i32 %4, 3
  %30 = mul nsw i32 %4, 9
  %31 = mul nsw i32 %4, 10
  %32 = mul nsw i32 %4, 11
  %33 = mul nsw i32 %4, 12
  %34 = mul nsw i32 %4, 13
  %35 = mul nsw i32 %4, 14
  %36 = mul nsw i32 %4, 15
  %37 = shl nsw i32 %4, 4
  %38 = mul nsw i32 %4, 17
  %39 = mul nsw i32 %4, 18
  %40 = mul nsw i32 %4, 19
  %41 = mul nsw i32 %4, 20
  %42 = mul nsw i32 %4, 21
  %43 = mul nsw i32 %4, 22
  %44 = mul nsw i32 %4, 23
  %45 = mul nsw i32 %4, 24
  %46 = mul nsw i32 %4, 25
  %47 = mul nsw i32 %4, 26
  %48 = mul nsw i32 %4, 27
  %49 = mul nsw i32 %4, 28
  %50 = mul nsw i32 %4, 29
  %51 = mul nsw i32 %4, 30
  %52 = mul nsw i32 %4, 31
  %53 = shl nsw i32 %4, 5
  %54 = mul nsw i32 %4, 33
  %55 = mul nsw i32 %4, 34
  %56 = mul nsw i32 %4, 35
  %57 = mul nsw i32 %4, 36
  %58 = mul nsw i32 %4, 37
  %59 = mul nsw i32 %4, 38
  %60 = mul nsw i32 %4, 39
  %61 = mul nsw i32 %4, 40
  %62 = mul nsw i32 %4, 41
  %63 = mul nsw i32 %4, 42
  %64 = mul nsw i32 %4, 43
  %65 = mul nsw i32 %4, 44
  %66 = mul nsw i32 %4, 45
  %67 = mul nsw i32 %4, 46
  %68 = mul nsw i32 %4, 47
  %69 = mul nsw i32 %4, 48
  %70 = mul nsw i32 %4, 49
  %71 = mul nsw i32 %4, 50
  %72 = mul nsw i32 %4, 51
  %73 = mul nsw i32 %4, 52
  %74 = mul nsw i32 %4, 53
  %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 %4 to i64
  %93 = sext i32 %23 to i64
  %94 = sext i32 %24 to i64
  %95 = sext i32 %25 to i64
  %96 = sext i32 %26 to i64
  %97 = sext i32 %27 to i64
  %98 = sext i32 %28 to i64
  %99 = sext i32 %29 to i64
  %100 = sext i32 %30 to i64
  %101 = sext i32 %31 to i64
  %102 = sext i32 %32 to i64
  %103 = sext i32 %33 to i64
  %104 = sext i32 %34 to i64
  %105 = sext i32 %35 to i64
  %106 = sext i32 %36 to i64
  %107 = sext i32 %37 to i64
  %108 = sext i32 %38 to i64
  %109 = sext i32 %39 to i64
  %110 = sext i32 %40 to i64
  %111 = sext i32 %41 to i64
  %112 = sext i32 %42 to i64
  %113 = sext i32 %43 to i64
  %114 = sext i32 %44 to i64
  %115 = sext i32 %45 to i64
  %116 = sext i32 %46 to i64
  %117 = sext i32 %47 to i64
  %118 = sext i32 %48 to i64
  %119 = sext i32 %49 to i64
  %120 = sext i32 %50 to i64
  %121 = sext i32 %51 to i64
  %122 = sext i32 %52 to i64
  %123 = sext i32 %53 to i64
  %124 = sext i32 %54 to i64
  %125 = sext i32 %55 to i64
  %126 = sext i32 %56 to i64
  %127 = sext i32 %57 to i64
  %128 = sext i32 %58 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.gep3136 = getelementptr double, ptr %1, i64 %76
  %invariant.gep3138 = getelementptr double, ptr %1, i64 %77
  %invariant.gep3140 = getelementptr double, ptr %1, i64 %78
  %invariant.gep3142 = getelementptr double, ptr %1, i64 %79
  %invariant.gep3144 = getelementptr double, ptr %1, i64 %80
  %invariant.gep3146 = getelementptr double, ptr %1, i64 %81
  %invariant.gep3148 = getelementptr double, ptr %1, i64 %82
  %invariant.gep3150 = getelementptr double, ptr %1, i64 %83
  %invariant.gep3152 = getelementptr double, ptr %1, i64 %84
  %invariant.gep3154 = getelementptr double, ptr %1, i64 %85
  %invariant.gep3156 = getelementptr double, ptr %1, i64 %86
  %invariant.gep3158 = getelementptr double, ptr %1, i64 %87
  %invariant.gep3160 = getelementptr double, ptr %1, i64 %88
  %invariant.gep3162 = getelementptr double, ptr %1, i64 %89
  %invariant.gep3164 = getelementptr double, ptr %1, i64 %90
  %invariant.gep3166 = getelementptr double, ptr %1, i64 %91
  %invariant.gep3168 = getelementptr double, ptr %3, i64 %92
  %invariant.gep3170 = getelementptr double, ptr %3, i64 %93
  %invariant.gep3172 = getelementptr double, ptr %3, i64 %94
  %invariant.gep3174 = getelementptr double, ptr %3, i64 %95
  %invariant.gep3176 = getelementptr double, ptr %3, i64 %96
  %invariant.gep3178 = getelementptr double, ptr %3, i64 %97
  %invariant.gep3180 = getelementptr double, ptr %3, i64 %98
  %invariant.gep3182 = getelementptr double, ptr %3, i64 %99
  %invariant.gep3184 = getelementptr double, ptr %3, i64 %100
  %invariant.gep3186 = getelementptr double, ptr %3, i64 %101
  %invariant.gep3188 = getelementptr double, ptr %3, i64 %102
  %invariant.gep3190 = getelementptr double, ptr %3, i64 %103
  %invariant.gep3192 = getelementptr double, ptr %3, i64 %104
  %invariant.gep3194 = getelementptr double, ptr %3, i64 %105
  %invariant.gep3196 = getelementptr double, ptr %3, i64 %106
  %invariant.gep3198 = getelementptr double, ptr %3, i64 %107
  %invariant.gep3200 = getelementptr double, ptr %3, i64 %108
  %invariant.gep3202 = getelementptr double, ptr %3, i64 %109
  %invariant.gep3204 = getelementptr double, ptr %3, i64 %110
  %invariant.gep3206 = getelementptr double, ptr %3, i64 %111
  %invariant.gep3208 = getelementptr double, ptr %3, i64 %112
  %invariant.gep3210 = getelementptr double, ptr %3, i64 %113
  %invariant.gep3212 = getelementptr double, ptr %3, i64 %114
  %invariant.gep3214 = getelementptr double, ptr %3, i64 %115
  %invariant.gep3216 = getelementptr double, ptr %3, i64 %116
  %invariant.gep3218 = getelementptr double, ptr %3, i64 %117
  %invariant.gep3220 = getelementptr double, ptr %3, i64 %118
  %invariant.gep3222 = getelementptr double, ptr %3, i64 %119
  %invariant.gep3224 = getelementptr double, ptr %3, i64 %120
  %invariant.gep3226 = getelementptr double, ptr %3, i64 %121
  %invariant.gep3228 = getelementptr double, ptr %3, i64 %122
  %invariant.gep3230 = getelementptr double, ptr %3, i64 %123
  %invariant.gep3232 = getelementptr double, ptr %3, i64 %124
  %invariant.gep3234 = getelementptr double, ptr %3, i64 %125
  %invariant.gep3236 = getelementptr double, ptr %3, i64 %126
  %invariant.gep3238 = getelementptr double, ptr %3, i64 %127
  %invariant.gep3240 = getelementptr double, ptr %3, i64 %128
  %invariant.gep3242 = getelementptr double, ptr %3, i64 %129
  %invariant.gep3244 = getelementptr double, ptr %3, i64 %130
  %invariant.gep3246 = getelementptr double, ptr %3, i64 %131
  %invariant.gep3248 = getelementptr double, ptr %3, i64 %132
  %invariant.gep3250 = getelementptr double, ptr %3, i64 %133
  %invariant.gep3252 = getelementptr double, ptr %3, i64 %134
  %invariant.gep3254 = getelementptr double, ptr %3, i64 %135
  %invariant.gep3256 = getelementptr double, ptr %3, i64 %136
  %invariant.gep3258 = getelementptr double, ptr %3, i64 %137
  %invariant.gep3260 = getelementptr double, ptr %3, i64 %138
  %invariant.gep3262 = getelementptr double, ptr %3, i64 %139
  %invariant.gep3264 = getelementptr double, ptr %3, i64 %140
  %invariant.gep3266 = getelementptr double, ptr %3, i64 %141
  %invariant.gep3268 = getelementptr double, ptr %3, i64 %142
  %invariant.gep3270 = getelementptr double, ptr %3, i64 %143
  %invariant.gep3272 = 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)
  %gep3137 = getelementptr double, ptr %invariant.gep3136, i64 %indvars.iv
  %151 = load double, ptr %gep3137, align 8, !tbaa !5
  %152 = tail call double @llvm.fmuladd.f64(double %151, double 0x3FB9ECDD98127879, double %150)
  %gep3139 = getelementptr double, ptr %invariant.gep3138, i64 %indvars.iv
  %153 = load double, ptr %gep3139, align 8, !tbaa !5
  %154 = tail call double @llvm.fmuladd.f64(double %153, double 0xBF83952FC55A7054, double %152)
  %gep3141 = getelementptr double, ptr %invariant.gep3140, i64 %indvars.iv
  %155 = load double, ptr %gep3141, align 8, !tbaa !5
  %156 = tail call double @llvm.fmuladd.f64(double %155, double 0xBFE4FBED5D8A9668, double %154)
  %gep3143 = getelementptr double, ptr %invariant.gep3142, i64 %indvars.iv
  %157 = load double, ptr %gep3143, align 8, !tbaa !5
  %158 = tail call double @llvm.fmuladd.f64(double %157, double 0x3FD50884576D0BB0, double %156)
  %gep3145 = getelementptr double, ptr %invariant.gep3144, i64 %indvars.iv
  %159 = load double, ptr %gep3145, align 8, !tbaa !5
  %160 = tail call double @llvm.fmuladd.f64(double %159, double 0xBC928E0E59CA2667, double %158)
  %gep3147 = getelementptr double, ptr %invariant.gep3146, i64 %indvars.iv
  %161 = load double, ptr %gep3147, align 8, !tbaa !5
  %162 = tail call double @llvm.fmuladd.f64(double %161, double 0xBC94747CFD612BCE, double %160)
  %gep3149 = getelementptr double, ptr %invariant.gep3148, i64 %indvars.iv
  %163 = load double, ptr %gep3149, align 8, !tbaa !5
  %164 = tail call double @llvm.fmuladd.f64(double %163, double 0x3CA061EEC0843748, double %162)
  %gep3151 = getelementptr double, ptr %invariant.gep3150, i64 %indvars.iv
  %165 = load double, ptr %gep3151, align 8, !tbaa !5
  %166 = tail call double @llvm.fmuladd.f64(double %165, double 0x3C88AE5D9980C8A2, double %164)
  %gep3153 = getelementptr double, ptr %invariant.gep3152, i64 %indvars.iv
  %167 = load double, ptr %gep3153, align 8, !tbaa !5
  %168 = tail call double @llvm.fmuladd.f64(double %167, double 0xBCBBF3FEED1E8544, double %166)
  %gep3155 = getelementptr double, ptr %invariant.gep3154, i64 %indvars.iv
  %169 = load double, ptr %gep3155, align 8, !tbaa !5
  %170 = tail call double @llvm.fmuladd.f64(double %169, double 0x3CB80DDFB4F4FB59, double %168)
  %gep3157 = getelementptr double, ptr %invariant.gep3156, i64 %indvars.iv
  %171 = load double, ptr %gep3157, align 8, !tbaa !5
  %172 = tail call double @llvm.fmuladd.f64(double %171, double 0xBC974C72B9C7B6B3, double %170)
  %gep3159 = getelementptr double, ptr %invariant.gep3158, i64 %indvars.iv
  %173 = load double, ptr %gep3159, align 8, !tbaa !5
  %174 = tail call double @llvm.fmuladd.f64(double %173, double 0x3C9A3DCEE704C7E6, double %172)
  %gep3161 = getelementptr double, ptr %invariant.gep3160, i64 %indvars.iv
  %175 = load double, ptr %gep3161, align 8, !tbaa !5
  %176 = tail call double @llvm.fmuladd.f64(double %175, double 0x3C801C657D225E7F, double %174)
  %gep3163 = getelementptr double, ptr %invariant.gep3162, i64 %indvars.iv
  %177 = load double, ptr %gep3163, align 8, !tbaa !5
  %178 = tail call double @llvm.fmuladd.f64(double %177, double 0x3CA10B458BF1192C, double %176)
  %gep3165 = getelementptr double, ptr %invariant.gep3164, i64 %indvars.iv
  %179 = load double, ptr %gep3165, align 8, !tbaa !5
  %180 = tail call double @llvm.fmuladd.f64(double %179, double 0x3CAFD6935AE0DBC3, double %178)
  %gep3167 = getelementptr double, ptr %invariant.gep3166, i64 %indvars.iv
  %181 = load double, ptr %gep3167, align 8, !tbaa !5
  %182 = tail call double @llvm.fmuladd.f64(double %181, double 0x3CB9FC9AB14C2802, double %180)
  %183 = getelementptr inbounds double, ptr %3, i64 %indvars.iv
  %184 = load double, ptr %183, align 8, !tbaa !5
  %185 = fadd double %184, %182
  store double %185, ptr %183, align 8, !tbaa !5
  %186 = fmul double %148, 0xBFE8AC73392375C8
  %187 = tail call double @llvm.fmuladd.f64(double %147, double 0x3FE4EDE8EE25610B, double %186)
  %188 = tail call double @llvm.fmuladd.f64(double %151, double 0x3FEA5488770B26AC, double %187)
  %189 = tail call double @llvm.fmuladd.f64(double %153, double 0xBFFEF1F8514C97D0, double %188)
  %190 = tail call double @llvm.fmuladd.f64(double %155, double 0x3FF44CD742FC94DA, double %189)
  %191 = tail call double @llvm.fmuladd.f64(double %157, double 0xBFF01B2FE70C118E, double %190)
  %192 = tail call double @llvm.fmuladd.f64(double %159, double 0xBC5AD58CA8FD5A00, double %191)
  %193 = tail call double @llvm.fmuladd.f64(double %161, double 0x3CBEB0BE4F96FAE1, double %192)
  %194 = tail call double @llvm.fmuladd.f64(double %163, double 0x3C84693BAEDA743C, double %193)
  %195 = tail call double @llvm.fmuladd.f64(double %165, double 0xBCB3ACD3D4ADCCB0, double %194)
  %196 = tail call double @llvm.fmuladd.f64(double %167, double 0x3CBD77D82F675FE0, double %195)
  %197 = tail call double @llvm.fmuladd.f64(double %169, double 0xBC765C5FD7E7C60F, double %196)
  %198 = tail call double @llvm.fmuladd.f64(double %171, double 0x3C9FA9BEC7B2612F, double %197)
  %199 = tail call double @llvm.fmuladd.f64(double %173, double 0xBCBC8E2E7B422DD9, double %198)
  %200 = tail call double @llvm.fmuladd.f64(double %175, double 0xBCC878EC8B1B786A, double %199)
  %201 = tail call double @llvm.fmuladd.f64(double %177, double 0x3CC0FC9E0739BB76, double %200)
  %202 = tail call double @llvm.fmuladd.f64(double %179, double 0x3CA31E7AC172ACDB, double %201)
  %203 = tail call double @llvm.fmuladd.f64(double %181, double 0x3C51BA2977E19A60, double %202)
  %gep3169 = getelementptr double, ptr %invariant.gep3168, i64 %indvars.iv
  %204 = load double, ptr %gep3169, align 8, !tbaa !5
  %205 = fadd double %203, %204
  store double %205, ptr %gep3169, align 8, !tbaa !5
  %206 = fmul double %148, 0xBFDFFE63E2851783
  %207 = tail call double @llvm.fmuladd.f64(double %147, double 0xBFE1EC4181248AE2, double %206)
  %208 = tail call double @llvm.fmuladd.f64(double %151, double 0x4000E9CE75C2FBF8, double %207)
  %209 = tail call double @llvm.fmuladd.f64(double %153, double 0x3FF31D88B253B07F, double %208)
  %210 = tail call double @llvm.fmuladd.f64(double %155, double 0x3FF2343957F3A8A6, double %209)
  %211 = tail call double @llvm.fmuladd.f64(double %157, double 0xBFEE712F1EF7D892, double %210)
  %212 = tail call double @llvm.fmuladd.f64(double %159, double 0x3C7BE455D72E2687, double %211)
  %213 = tail call double @llvm.fmuladd.f64(double %161, double 0xBCA88EEBBA111342, double %212)
  %214 = tail call double @llvm.fmuladd.f64(double %163, double 0xBCAAA314368C77EA, double %213)
  %215 = tail call double @llvm.fmuladd.f64(double %165, double 0xBC89A9C06842F0D3, double %214)
  %216 = tail call double @llvm.fmuladd.f64(double %167, double 0x3CC01B0CEED92744, double %215)
  %217 = tail call double @llvm.fmuladd.f64(double %169, double 0xBCB179EA74C658F9, double %216)
  %218 = tail call double @llvm.fmuladd.f64(double %171, double 0xBCA45DF77990844E, double %217)
  %219 = tail call double @llvm.fmuladd.f64(double %173, double 0x3CAB464CCF9E9E2D, double %218)
  %220 = tail call double @llvm.fmuladd.f64(double %175, double 0x3CCC9AD4A6D08D95, double %219)
  %221 = tail call double @llvm.fmuladd.f64(double %177, double 0x3CB10C6838C95A72, double %220)
  %222 = tail call double @llvm.fmuladd.f64(double %179, double 0x3CD07012D87C038A, double %221)
  %223 = tail call double @llvm.fmuladd.f64(double %181, double 0x3CCBC273E408F766, double %222)
  %gep3171 = getelementptr double, ptr %invariant.gep3170, i64 %indvars.iv
  %224 = load double, ptr %gep3171, align 8, !tbaa !5
  %225 = fadd double %223, %224
  store double %225, ptr %gep3171, align 8, !tbaa !5
  %226 = fmul double %148, 0x3FF21EFA862DF3DA
  %227 = tail call double @llvm.fmuladd.f64(double %147, double 0xBF734721512AF2F5, double %226)
  %228 = tail call double @llvm.fmuladd.f64(double %151, double 0xBFF7F19EB1BA88FC, double %227)
  %229 = tail call double @llvm.fmuladd.f64(double %153, double 0x3FC901A35D55DB4C, double %228)
  %230 = tail call double @llvm.fmuladd.f64(double %155, double 0xBFF48831FA6C7037, double %229)
  %231 = tail call double @llvm.fmuladd.f64(double %157, double 0x3FF0AF85DD8BD41B, double %230)
  %232 = tail call double @llvm.fmuladd.f64(double %159, double 0xBC96DF8829202392, double %231)
  %233 = tail call double @llvm.fmuladd.f64(double %161, double 0x3C92F08ACDCBF794, double %232)
  %234 = tail call double @llvm.fmuladd.f64(double %163, double 0x3CA6B48868965AE6, double %233)
  %235 = tail call double @llvm.fmuladd.f64(double %165, double 0x3CAB6CB918309F4B, double %234)
  %236 = tail call double @llvm.fmuladd.f64(double %167, double 0xBCB24490C3AF2293, double %235)
  %237 = tail call double @llvm.fmuladd.f64(double %169, double 0x3C823EC0CF8B6DEB, double %236)
  %238 = tail call double @llvm.fmuladd.f64(double %171, double 0x3CA72B617C3AF637, double %237)
  %239 = tail call double @llvm.fmuladd.f64(double %173, double 0x3C9A9EB31390F5C1, double %238)
  %240 = tail call double @llvm.fmuladd.f64(double %175, double 0x3C9AA22A1570E612, double %239)
  %241 = tail call double @llvm.fmuladd.f64(double %177, double 0xBCAB65BA103D3215, double %240)
  %242 = tail call double @llvm.fmuladd.f64(double %179, double 0xBCC22813B0173A2F, double %241)
  %243 = tail call double @llvm.fmuladd.f64(double %181, double 0xBCB32BFD271CB8D7, double %242)
  %gep3173 = getelementptr double, ptr %invariant.gep3172, i64 %indvars.iv
  %244 = load double, ptr %gep3173, align 8, !tbaa !5
  %245 = fadd double %243, %244
  store double %245, ptr %gep3173, align 8, !tbaa !5
  %246 = fmul double %148, 0xBFB17C71DD2D5188
  %247 = tail call double @llvm.fmuladd.f64(double %147, double 0x3FF3237A82AF9EC7, double %246)
  %248 = tail call double @llvm.fmuladd.f64(double %151, double 0xBF76E8A1969E7200, double %247)
  %249 = tail call double @llvm.fmuladd.f64(double %153, double 0x3FC179BD32D3DC6F, double %248)
  %250 = tail call double @llvm.fmuladd.f64(double %155, double 0x3FFBC4AD9C53A55A, double %249)
  %251 = tail call double @llvm.fmuladd.f64(double %157, double 0x3FF1CA3B98F49426, double %250)
  %252 = tail call double @llvm.fmuladd.f64(double %159, double 0x3C915D0C18F46953, double %251)
  %253 = tail call double @llvm.fmuladd.f64(double %161, double 0x3C94D6A0DAC57C7E, double %252)
  %254 = tail call double @llvm.fmuladd.f64(double %163, double 0xBC84E1D5E41DCEB7, double %253)
  %255 = tail call double @llvm.fmuladd.f64(double %165, double 0xBC92763F594C57BA, double %254)
  %256 = tail call double @llvm.fmuladd.f64(double %167, double 0x3CB1F86B771BE422, double %255)
  %257 = tail call double @llvm.fmuladd.f64(double %169, double 0xBCA498ED43D15DB5, double %256)
  %258 = tail call double @llvm.fmuladd.f64(double %171, double 0x3C9E56370E4AEF9E, double %257)
  %259 = tail call double @llvm.fmuladd.f64(double %173, double 0x3C805596DD69B814, double %258)
  %260 = tail call double @llvm.fmuladd.f64(double %175, double 0x3CA8CCCC07FB5ADE, double %259)
  %261 = tail call double @llvm.fmuladd.f64(double %177, double 0x3C83675E5BCF4774, double %260)
  %262 = tail call double @llvm.fmuladd.f64(double %179, double 0x3CC9E7942DEDC84B, double %261)
  %263 = tail call double @llvm.fmuladd.f64(double %181, double 0x3CA46BAC5B65E036, double %262)
  %gep3175 = getelementptr double, ptr %invariant.gep3174, i64 %indvars.iv
  %264 = load double, ptr %gep3175, align 8, !tbaa !5
  %265 = fadd double %263, %264
  store double %265, ptr %gep3175, align 8, !tbaa !5
  %266 = fmul double %148, 0x3FB1F3F0B024DC80
  %267 = tail call double @llvm.fmuladd.f64(double %147, double 0xBFF5B6F7089FF1D1, double %266)
  %268 = tail call double @llvm.fmuladd.f64(double %151, double 0x3FCCBE3CAE6B6284, double %267)
  %269 = tail call double @llvm.fmuladd.f64(double %153, double 0xBFD81F8F0CEC60FF, double %268)
  %270 = tail call double @llvm.fmuladd.f64(double %155, double 0xBFFBA497A89943F3, double %269)
  %271 = tail call double @llvm.fmuladd.f64(double %157, double 0xBFDC5366E211BE90, double %270)
  %272 = tail call double @llvm.fmuladd.f64(double %159, double 0xBC96C7DC8DD1684E, double %271)
  %273 = tail call double @llvm.fmuladd.f64(double %161, double 0x3C950AD45332D6FE, double %272)
  %274 = tail call double @llvm.fmuladd.f64(double %163, double 0x3C9EB6F29C749A96, double %273)
  %275 = tail call double @llvm.fmuladd.f64(double %165, double 0xBC6D62BACB47689A, double %274)
  %276 = tail call double @llvm.fmuladd.f64(double %167, double 0x3CB80BBA9C9EA48A, double %275)
  %277 = tail call double @llvm.fmuladd.f64(double %169, double 0xBCAB001FD1461890, double %276)
  %278 = tail call double @llvm.fmuladd.f64(double %171, double 0xBC9681DA589F9E72, double %277)
  %279 = tail call double @llvm.fmuladd.f64(double %173, double 0xBC827123784CF602, double %278)
  %280 = tail call double @llvm.fmuladd.f64(double %175, double 0xBCAE4BA60AE12274, double %279)
  %281 = tail call double @llvm.fmuladd.f64(double %177, double 0xBC78B38170BB85D3, double %280)
  %282 = tail call double @llvm.fmuladd.f64(double %179, double 0xBCB30DECEA2D8A5E, double %281)
  %283 = tail call double @llvm.fmuladd.f64(double %181, double 0xBCB4601E7CBDEFAF, double %282)
  %gep3177 = getelementptr double, ptr %invariant.gep3176, i64 %indvars.iv
  %284 = load double, ptr %gep3177, align 8, !tbaa !5
  %285 = fadd double %283, %284
  store double %285, ptr %gep3177, align 8, !tbaa !5
  %286 = fmul double %148, 0xBC8AF16F6DD6B170
  %287 = tail call double @llvm.fmuladd.f64(double %147, double 0xBCAFA91475A2DE60, double %286)
  %288 = tail call double @llvm.fmuladd.f64(double %151, double 0xBC97CD2320F06FBC, double %287)
  %289 = tail call double @llvm.fmuladd.f64(double %153, double 0x3C912517F7A39056, double %288)
  %290 = tail call double @llvm.fmuladd.f64(double %155, double 0x3CA26D18C495E068, double %289)
  %291 = tail call double @llvm.fmuladd.f64(double %157, double 0x3C5FA39DC354EAFF, double %290)
  %292 = tail call double @llvm.fmuladd.f64(double %159, double 0x3FF44E3F94172F46, double %291)
  %293 = tail call double @llvm.fmuladd.f64(double %161, double 0xBF7DFA2300BBB500, double %292)
  %294 = tail call double @llvm.fmuladd.f64(double %163, double 0x3FB9ECDD9812789D, double %293)
  %295 = tail call double @llvm.fmuladd.f64(double %165, double 0xBF83952FC55A7034, double %294)
  %296 = tail call double @llvm.fmuladd.f64(double %167, double 0xBFE4FBED5D8A9668, double %295)
  %297 = tail call double @llvm.fmuladd.f64(double %169, double 0x3FD50884576D0BC1, double %296)
  %298 = tail call double @llvm.fmuladd.f64(double %171, double 0x3CA5CAE36F1C5AB0, double %297)
  %299 = tail call double @llvm.fmuladd.f64(double %173, double 0x3C7C91DEC9976F2B, double %298)
  %300 = tail call double @llvm.fmuladd.f64(double %175, double 0x3C9CA3E3D7BB8328, double %299)
  %301 = tail call double @llvm.fmuladd.f64(double %177, double 0xBC6B4399CAA6ADB0, double %300)
  %302 = tail call double @llvm.fmuladd.f64(double %179, double 0x3C6E67AB5FEF02FF, double %301)
  %303 = tail call double @llvm.fmuladd.f64(double %181, double 0x3C9BAD7EA815E448, double %302)
  %gep3179 = getelementptr double, ptr %invariant.gep3178, i64 %indvars.iv
  %304 = load double, ptr %gep3179, align 8, !tbaa !5
  %305 = fadd double %303, %304
  store double %305, ptr %gep3179, align 8, !tbaa !5
  %306 = fmul double %148, 0x3CB24802BB25DFAC
  %307 = tail call double @llvm.fmuladd.f64(double %147, double 0x3CA733637AD25B8E, double %306)
  %308 = tail call double @llvm.fmuladd.f64(double %151, double 0xBC9FC7EA1CC30EE8, double %307)
  %309 = tail call double @llvm.fmuladd.f64(double %153, double 0xBCB44A60DE6828AB, double %308)
  %310 = tail call double @llvm.fmuladd.f64(double %155, double 0xBCB000D696902285, double %309)
  %311 = tail call double @llvm.fmuladd.f64(double %157, double 0xBCA826233EF25B10, double %310)
  %312 = tail call double @llvm.fmuladd.f64(double %159, double 0x3FE4EDE8EE25610A, double %311)
  %313 = tail call double @llvm.fmuladd.f64(double %161, double 0xBFE8AC73392375C0, double %312)
  %314 = tail call double @llvm.fmuladd.f64(double %163, double 0x3FEA5488770B26A9, double %313)
  %315 = tail call double @llvm.fmuladd.f64(double %165, double 0xBFFEF1F8514C97D0, double %314)
  %316 = tail call double @llvm.fmuladd.f64(double %167, double 0x3FF44CD742FC94DF, double %315)
  %317 = tail call double @llvm.fmuladd.f64(double %169, double 0xBFF01B2FE70C118E, double %316)
  %318 = tail call double @llvm.fmuladd.f64(double %171, double 0xBCBA0032ABCB100C, double %317)
  %319 = tail call double @llvm.fmuladd.f64(double %173, double 0x3CBC200ECF3E06E7, double %318)
  %320 = tail call double @llvm.fmuladd.f64(double %175, double 0xBCBDCFF9DD802CEF, double %319)
  %321 = tail call double @llvm.fmuladd.f64(double %177, double 0xBC68F31986A4E76E, double %320)
  %322 = tail call double @llvm.fmuladd.f64(double %179, double 0x3CBB2800A30A8EA4, double %321)
  %323 = tail call double @llvm.fmuladd.f64(double %181, double 0x3CC423B95478E8B3, double %322)
  %gep3181 = getelementptr double, ptr %invariant.gep3180, i64 %indvars.iv
  %324 = load double, ptr %gep3181, align 8, !tbaa !5
  %325 = fadd double %323, %324
  store double %325, ptr %gep3181, align 8, !tbaa !5
  %326 = fmul double %148, 0xBCA303E7E9D23CFA
  %327 = tail call double @llvm.fmuladd.f64(double %147, double 0x3C8FBBBF8479477C, double %326)
  %328 = tail call double @llvm.fmuladd.f64(double %151, double 0x3C7502E6070E6BC0, double %327)
  %329 = tail call double @llvm.fmuladd.f64(double %153, double 0x3CBF2499CB50E496, double %328)
  %330 = tail call double @llvm.fmuladd.f64(double %155, double 0xBCB18E75707CAEC2, double %329)
  %331 = tail call double @llvm.fmuladd.f64(double %157, double 0xBC957EB0C0D32A92, double %330)
  %332 = tail call double @llvm.fmuladd.f64(double %159, double 0xBFE1EC4181248ADF, double %331)
  %333 = tail call double @llvm.fmuladd.f64(double %161, double 0xBFDFFE63E285177B, double %332)
  %334 = tail call double @llvm.fmuladd.f64(double %163, double 0x4000E9CE75C2FBF6, double %333)
  %335 = tail call double @llvm.fmuladd.f64(double %165, double 0x3FF31D88B253B084, double %334)
  %336 = tail call double @llvm.fmuladd.f64(double %167, double 0x3FF2343957F3A8AA, double %335)
  %337 = tail call double @llvm.fmuladd.f64(double %169, double 0xBFEE712F1EF7D896, double %336)
  %338 = tail call double @llvm.fmuladd.f64(double %171, double 0xBCC00C78C6295034, double %337)
  %339 = tail call double @llvm.fmuladd.f64(double %173, double 0xBCA515E72A62BD71, double %338)
  %340 = tail call double @llvm.fmuladd.f64(double %175, double 0xBCC440052B0B6591, double %339)
  %341 = tail call double @llvm.fmuladd.f64(double %177, double 0x3CB5037F708D2B40, double %340)
  %342 = tail call double @llvm.fmuladd.f64(double %179, double 0x3CC9C5D37CDA2F2D, double %341)
  %343 = tail call double @llvm.fmuladd.f64(double %181, double 0x3CCF6C49D3A9D98C, double %342)
  %gep3183 = getelementptr double, ptr %invariant.gep3182, i64 %indvars.iv
  %344 = load double, ptr %gep3183, align 8, !tbaa !5
  %345 = fadd double %343, %344
  store double %345, ptr %gep3183, align 8, !tbaa !5
  %346 = fmul double %148, 0xBC83FC569180EE60
  %347 = tail call double @llvm.fmuladd.f64(double %147, double 0xBC8EA5ADFAA929A6, double %346)
  %348 = tail call double @llvm.fmuladd.f64(double %151, double 0xBC6E3A78632E1596, double %347)
  %349 = tail call double @llvm.fmuladd.f64(double %153, double 0xBC83A74A36148518, double %348)
  %350 = tail call double @llvm.fmuladd.f64(double %155, double 0x3CB564D90EDE042E, double %349)
  %351 = tail call double @llvm.fmuladd.f64(double %157, double 0x3C989B6B8C34D144, double %350)
  %352 = tail call double @llvm.fmuladd.f64(double %159, double 0xBF734721512AF3A0, double %351)
  %353 = tail call double @llvm.fmuladd.f64(double %161, double 0x3FF21EFA862DF3DE, double %352)
  %354 = tail call double @llvm.fmuladd.f64(double %163, double 0xBFF7F19EB1BA88FC, double %353)
  %355 = tail call double @llvm.fmuladd.f64(double %165, double 0x3FC901A35D55DB50, double %354)
  %356 = tail call double @llvm.fmuladd.f64(double %167, double 0xBFF48831FA6C703B, double %355)
  %357 = tail call double @llvm.fmuladd.f64(double %169, double 0x3FF0AF85DD8BD41B, double %356)
  %358 = tail call double @llvm.fmuladd.f64(double %171, double 0x3CC3E8D573A56FAD, double %357)
  %359 = tail call double @llvm.fmuladd.f64(double %173, double 0x3C8C4729A9EC58BF, double %358)
  %360 = tail call double @llvm.fmuladd.f64(double %175, double 0x3CC336335C2A4C90, double %359)
  %361 = tail call double @llvm.fmuladd.f64(double %177, double 0xBC914F26788AF5CD, double %360)
  %362 = tail call double @llvm.fmuladd.f64(double %179, double 0xBCC3337EE9A65CF0, double %361)
  %363 = tail call double @llvm.fmuladd.f64(double %181, double 0xBCCB8879EF13718A, double %362)
  %gep3185 = getelementptr double, ptr %invariant.gep3184, i64 %indvars.iv
  %364 = load double, ptr %gep3185, align 8, !tbaa !5
  %365 = fadd double %363, %364
  store double %365, ptr %gep3185, align 8, !tbaa !5
  %366 = fmul double %148, 0x3C97B483C42BAB7C
  %367 = tail call double @llvm.fmuladd.f64(double %147, double 0xBCC3A93C9AD8BA3A, double %366)
  %368 = tail call double @llvm.fmuladd.f64(double %151, double 0x3C71B9B8F47F3248, double %367)
  %369 = tail call double @llvm.fmuladd.f64(double %153, double 0xBC80C8CA734909F4, double %368)
  %370 = tail call double @llvm.fmuladd.f64(double %155, double 0x3C9558F6282D8B0C, double %369)
  %371 = tail call double @llvm.fmuladd.f64(double %157, double 0xBCA238E1A865FF56, double %370)
  %372 = tail call double @llvm.fmuladd.f64(double %159, double 0x3FF3237A82AF9ECC, double %371)
  %373 = tail call double @llvm.fmuladd.f64(double %161, double 0xBFB17C71DD2D5180, double %372)
  %374 = tail call double @llvm.fmuladd.f64(double %163, double 0xBF76E8A1969E7200, double %373)
  %375 = tail call double @llvm.fmuladd.f64(double %165, double 0x3FC179BD32D3DC6F, double %374)
  %376 = tail call double @llvm.fmuladd.f64(double %167, double 0x3FFBC4AD9C53A563, double %375)
  %377 = tail call double @llvm.fmuladd.f64(double %169, double 0x3FF1CA3B98F4942B, double %376)
  %378 = tail call double @llvm.fmuladd.f64(double %171, double 0xBCA6FBE336F71405, double %377)
  %379 = tail call double @llvm.fmuladd.f64(double %173, double 0x3C80984B1B374A75, double %378)
  %380 = tail call double @llvm.fmuladd.f64(double %175, double 0x3C4729477968333F, double %379)
  %381 = tail call double @llvm.fmuladd.f64(double %177, double 0xBC918F2EE7553E84, double %380)
  %382 = tail call double @llvm.fmuladd.f64(double %179, double 0xBC63BFDB1A7A0940, double %381)
  %383 = tail call double @llvm.fmuladd.f64(double %181, double 0x3CAA455C00B239E4, double %382)
  %gep3187 = getelementptr double, ptr %invariant.gep3186, i64 %indvars.iv
  %384 = load double, ptr %gep3187, align 8, !tbaa !5
  %385 = fadd double %383, %384
  store double %385, ptr %gep3187, align 8, !tbaa !5
  %386 = fmul double %148, 0xBC96A2CCF69409BE
  %387 = tail call double @llvm.fmuladd.f64(double %147, double 0x3CC142F4E7497170, double %386)
  %388 = tail call double @llvm.fmuladd.f64(double %151, double 0xBC9AEA168BAD2F82, double %387)
  %389 = tail call double @llvm.fmuladd.f64(double %153, double 0xBC9B499410BBCC84, double %388)
  %390 = tail call double @llvm.fmuladd.f64(double %155, double 0xBC9361418ADB00D8, double %389)
  %391 = tail call double @llvm.fmuladd.f64(double %157, double 0x3CB01F9D52D3749E, double %390)
  %392 = tail call double @llvm.fmuladd.f64(double %159, double 0xBFF5B6F7089FF1D1, double %391)
  %393 = tail call double @llvm.fmuladd.f64(double %161, double 0x3FB1F3F0B024DC88, double %392)
  %394 = tail call double @llvm.fmuladd.f64(double %163, double 0x3FCCBE3CAE6B6280, double %393)
  %395 = tail call double @llvm.fmuladd.f64(double %165, double 0xBFD81F8F0CEC6101, double %394)
  %396 = tail call double @llvm.fmuladd.f64(double %167, double 0xBFFBA497A89943F3, double %395)
  %397 = tail call double @llvm.fmuladd.f64(double %169, double 0xBFDC5366E211BEA9, double %396)
  %398 = tail call double @llvm.fmuladd.f64(double %171, double 0x3CB1A32FABA58A78, double %397)
  %399 = tail call double @llvm.fmuladd.f64(double %173, double 0x3C6B240942E84E45, double %398)
  %400 = tail call double @llvm.fmuladd.f64(double %175, double 0xBC8360FD77DF0E50, double %399)
  %401 = tail call double @llvm.fmuladd.f64(double %177, double 0x3C78F6BBF1F42F79, double %400)
  %402 = tail call double @llvm.fmuladd.f64(double %179, double 0xBCBB0F3A92259EB9, double %401)
  %403 = tail call double @llvm.fmuladd.f64(double %181, double 0xBCB8BFEEB1A1585A, double %402)
  %gep3189 = getelementptr double, ptr %invariant.gep3188, i64 %indvars.iv
  %404 = load double, ptr %gep3189, align 8, !tbaa !5
  %405 = fadd double %403, %404
  store double %405, ptr %gep3189, align 8, !tbaa !5
  %406 = fmul double %148, 0xBC7F9D13F6DD91D2
  %407 = tail call double @llvm.fmuladd.f64(double %147, double 0xBCB03C43C4268C9B, double %406)
  %408 = tail call double @llvm.fmuladd.f64(double %151, double 0xBCAE0044D82B3E00, double %407)
  %409 = tail call double @llvm.fmuladd.f64(double %153, double 0x3C9CFE906EE8F2E9, double %408)
  %410 = tail call double @llvm.fmuladd.f64(double %155, double 0x3CC1A93DAC5952FC, double %409)
  %411 = tail call double @llvm.fmuladd.f64(double %157, double 0x3CB1B04DFFDDEE42, double %410)
  %412 = tail call double @llvm.fmuladd.f64(double %159, double 0xBCA11EF521EB7066, double %411)
  %413 = tail call double @llvm.fmuladd.f64(double %161, double 0xBC94747CFD612BD0, double %412)
  %414 = tail call double @llvm.fmuladd.f64(double %163, double 0x3CA061EEC0843748, double %413)
  %415 = tail call double @llvm.fmuladd.f64(double %165, double 0x3C8B21BA101B7AB2, double %414)
  %416 = tail call double @llvm.fmuladd.f64(double %167, double 0xBCBBF3FEED1E8544, double %415)
  %417 = tail call double @llvm.fmuladd.f64(double %169, double 0x3CB871266AD31A71, double %416)
  %418 = tail call double @llvm.fmuladd.f64(double %171, double 0x3FF44E3F94172F46, double %417)
  %419 = tail call double @llvm.fmuladd.f64(double %173, double 0xBF7DFA2300BBB400, double %418)
  %420 = tail call double @llvm.fmuladd.f64(double %175, double 0x3FB9ECDD9812788E, double %419)
  %421 = tail call double @llvm.fmuladd.f64(double %177, double 0xBF83952FC55A702F, double %420)
  %422 = tail call double @llvm.fmuladd.f64(double %179, double 0xBFE4FBED5D8A9668, double %421)
  %423 = tail call double @llvm.fmuladd.f64(double %181, double 0x3FD50884576D0BB8, double %422)
  %gep3191 = getelementptr double, ptr %invariant.gep3190, i64 %indvars.iv
  %424 = load double, ptr %gep3191, align 8, !tbaa !5
  %425 = fadd double %423, %424
  store double %425, ptr %gep3191, align 8, !tbaa !5
  %426 = fmul double %148, 0xBCADA2825B7E90BA
  %427 = tail call double @llvm.fmuladd.f64(double %147, double 0x3CBF38A0435C33EF, double %426)
  %428 = tail call double @llvm.fmuladd.f64(double %151, double 0xBCBCECD5C475FFF5, double %427)
  %429 = tail call double @llvm.fmuladd.f64(double %153, double 0x3C7C7B20A14EC091, double %428)
  %430 = tail call double @llvm.fmuladd.f64(double %155, double 0xBCAC7CF2FBE4989E, double %429)
  %431 = tail call double @llvm.fmuladd.f64(double %157, double 0xBCBCA248A7C7FDDC, double %430)
  %432 = tail call double @llvm.fmuladd.f64(double %159, double 0xBC96AF31F1A1F8A3, double %431)
  %433 = tail call double @llvm.fmuladd.f64(double %161, double 0x3CBEB0BE4F96FAE3, double %432)
  %434 = tail call double @llvm.fmuladd.f64(double %163, double 0x3C84693BAEDA743C, double %433)
  %435 = tail call double @llvm.fmuladd.f64(double %165, double 0xBCB3ACD3D4ADCCB0, double %434)
  %436 = tail call double @llvm.fmuladd.f64(double %167, double 0x3CBD77D82F675FE2, double %435)
  %437 = tail call double @llvm.fmuladd.f64(double %169, double 0xBC87B94EDD358738, double %436)
  %438 = tail call double @llvm.fmuladd.f64(double %171, double 0x3FE4EDE8EE256108, double %437)
  %439 = tail call double @llvm.fmuladd.f64(double %173, double 0xBFE8AC73392375C8, double %438)
  %440 = tail call double @llvm.fmuladd.f64(double %175, double 0x3FEA5488770B26A9, double %439)
  %441 = tail call double @llvm.fmuladd.f64(double %177, double 0xBFFEF1F8514C97D0, double %440)
  %442 = tail call double @llvm.fmuladd.f64(double %179, double 0x3FF44CD742FC94DA, double %441)
  %443 = tail call double @llvm.fmuladd.f64(double %181, double 0xBFF01B2FE70C118E, double %442)
  %gep3193 = getelementptr double, ptr %invariant.gep3192, i64 %indvars.iv
  %444 = load double, ptr %gep3193, align 8, !tbaa !5
  %445 = fadd double %443, %444
  store double %445, ptr %gep3193, align 8, !tbaa !5
  %446 = fmul double %148, 0x3CC0A43BB8778AD2
  %447 = tail call double @llvm.fmuladd.f64(double %147, double 0x3CC1A7951F32AFEE, double %446)
  %448 = tail call double @llvm.fmuladd.f64(double %151, double 0x3CD8A0EBF8B34D44, double %447)
  %449 = tail call double @llvm.fmuladd.f64(double %153, double 0x3CBA5323016547EC, double %448)
  %450 = tail call double @llvm.fmuladd.f64(double %155, double 0x3CA05AC5DCA571DC, double %449)
  %451 = tail call double @llvm.fmuladd.f64(double %157, double 0xBCB0EC52293F1982, double %450)
  %452 = tail call double @llvm.fmuladd.f64(double %159, double 0x3C88BB0D274B4D20, double %451)
  %453 = tail call double @llvm.fmuladd.f64(double %161, double 0xBCA88EEBBA111342, double %452)
  %454 = tail call double @llvm.fmuladd.f64(double %163, double 0xBCAAA314368C77EA, double %453)
  %455 = tail call double @llvm.fmuladd.f64(double %165, double 0xBC89A9C06842F0CE, double %454)
  %456 = tail call double @llvm.fmuladd.f64(double %167, double 0x3CC01B0CEED92744, double %455)
  %457 = tail call double @llvm.fmuladd.f64(double %169, double 0xBCBAAB90AFB5926D, double %456)
  %458 = tail call double @llvm.fmuladd.f64(double %171, double 0xBFE1EC4181248AE8, double %457)
  %459 = tail call double @llvm.fmuladd.f64(double %173, double 0xBFDFFE63E2851784, double %458)
  %460 = tail call double @llvm.fmuladd.f64(double %175, double 0x4000E9CE75C2FBF8, double %459)
  %461 = tail call double @llvm.fmuladd.f64(double %177, double 0x3FF31D88B253B07F, double %460)
  %462 = tail call double @llvm.fmuladd.f64(double %179, double 0x3FF2343957F3A8AA, double %461)
  %463 = tail call double @llvm.fmuladd.f64(double %181, double 0xBFEE712F1EF7D88A, double %462)
  %gep3195 = getelementptr double, ptr %invariant.gep3194, i64 %indvars.iv
  %464 = load double, ptr %gep3195, align 8, !tbaa !5
  %465 = fadd double %463, %464
  store double %465, ptr %gep3195, align 8, !tbaa !5
  %466 = fmul double %148, 0xBC9A042DA3AAA0F5
  %467 = tail call double @llvm.fmuladd.f64(double %147, double 0xBCBAF68F816ED6D4, double %466)
  %468 = tail call double @llvm.fmuladd.f64(double %151, double 0xBCBD577C538DDA63, double %467)
  %469 = tail call double @llvm.fmuladd.f64(double %153, double 0xBC9E271992FB8E50, double %468)
  %470 = tail call double @llvm.fmuladd.f64(double %155, double 0x3C93D6FC900E3498, double %469)
  %471 = tail call double @llvm.fmuladd.f64(double %157, double 0x3CC029CF9720BC60, double %470)
  %472 = tail call double @llvm.fmuladd.f64(double %159, double 0xBC8797292B4C1941, double %471)
  %473 = tail call double @llvm.fmuladd.f64(double %161, double 0x3C92F08ACDCBF794, double %472)
  %474 = tail call double @llvm.fmuladd.f64(double %163, double 0x3CA6B48868965AE6, double %473)
  %475 = tail call double @llvm.fmuladd.f64(double %165, double 0x3CA926ECE93029A9, double %474)
  %476 = tail call double @llvm.fmuladd.f64(double %167, double 0xBCB24490C3AF2293, double %475)
  %477 = tail call double @llvm.fmuladd.f64(double %169, double 0x3C94D23BA9623EA9, double %476)
  %478 = tail call double @llvm.fmuladd.f64(double %171, double 0xBF734721512AF07C, double %477)
  %479 = tail call double @llvm.fmuladd.f64(double %173, double 0x3FF21EFA862DF3DE, double %478)
  %480 = tail call double @llvm.fmuladd.f64(double %175, double 0xBFF7F19EB1BA88F8, double %479)
  %481 = tail call double @llvm.fmuladd.f64(double %177, double 0x3FC901A35D55DB50, double %480)
  %482 = tail call double @llvm.fmuladd.f64(double %179, double 0xBFF48831FA6C703B, double %481)
  %483 = tail call double @llvm.fmuladd.f64(double %181, double 0x3FF0AF85DD8BD416, double %482)
  %gep3197 = getelementptr double, ptr %invariant.gep3196, i64 %indvars.iv
  %484 = load double, ptr %gep3197, align 8, !tbaa !5
  %485 = fadd double %483, %484
  store double %485, ptr %gep3197, align 8, !tbaa !5
  %486 = fmul double %148, 0xBC958B3DCEB03946
  %487 = tail call double @llvm.fmuladd.f64(double %147, double 0xBCADB22B9651CF46, double %486)
  %488 = tail call double @llvm.fmuladd.f64(double %151, double 0x3C9ED9E1BC70CFE6, double %487)
  %489 = tail call double @llvm.fmuladd.f64(double %153, double 0xBC8826BEE25DF5B0, double %488)
  %490 = tail call double @llvm.fmuladd.f64(double %155, double 0x3CCBB1D94C3EA191, double %489)
  %491 = tail call double @llvm.fmuladd.f64(double %157, double 0xBC99F98308323540, double %490)
  %492 = tail call double @llvm.fmuladd.f64(double %159, double 0xBC81FCE005D2224B, double %491)
  %493 = tail call double @llvm.fmuladd.f64(double %161, double 0x3C94D6A0DAC57C7D, double %492)
  %494 = tail call double @llvm.fmuladd.f64(double %163, double 0xBC84E1D5E41DCEB7, double %493)
  %495 = tail call double @llvm.fmuladd.f64(double %165, double 0xBC92763F594C57B8, double %494)
  %496 = tail call double @llvm.fmuladd.f64(double %167, double 0x3CB1F86B771BE422, double %495)
  %497 = tail call double @llvm.fmuladd.f64(double %169, double 0xBCA63320C046EFE5, double %496)
  %498 = tail call double @llvm.fmuladd.f64(double %171, double 0x3FF3237A82AF9ECC, double %497)
  %499 = tail call double @llvm.fmuladd.f64(double %173, double 0xBFB17C71DD2D5180, double %498)
  %500 = tail call double @llvm.fmuladd.f64(double %175, double 0xBF76E8A1969E7200, double %499)
  %501 = tail call double @llvm.fmuladd.f64(double %177, double 0x3FC179BD32D3DC6F, double %500)
  %502 = tail call double @llvm.fmuladd.f64(double %179, double 0x3FFBC4AD9C53A55A, double %501)
  %503 = tail call double @llvm.fmuladd.f64(double %181, double 0x3FF1CA3B98F4942B, double %502)
  %gep3199 = getelementptr double, ptr %invariant.gep3198, i64 %indvars.iv
  %504 = load double, ptr %gep3199, align 8, !tbaa !5
  %505 = fadd double %503, %504
  store double %505, ptr %gep3199, align 8, !tbaa !5
  %506 = fmul double %148, 0xBC90195309BD1B6C
  %507 = tail call double @llvm.fmuladd.f64(double %147, double 0x3C91420C4C2992C8, double %506)
  %508 = tail call double @llvm.fmuladd.f64(double %151, double 0xBCB1596887C79338, double %507)
  %509 = tail call double @llvm.fmuladd.f64(double %153, double 0xBC95A4C76FC77AC0, double %508)
  %510 = tail call double @llvm.fmuladd.f64(double %155, double 0xBCA0A9E2E329FCA7, double %509)
  %511 = tail call double @llvm.fmuladd.f64(double %157, double 0xBC80C6561C6CD610, double %510)
  %512 = tail call double @llvm.fmuladd.f64(double %159, double 0xBC89201DA4BD28AE, double %511)
  %513 = tail call double @llvm.fmuladd.f64(double %161, double 0x3C950AD45332D6FF, double %512)
  %514 = tail call double @llvm.fmuladd.f64(double %163, double 0x3C9EB6F29C749A8E, double %513)
  %515 = tail call double @llvm.fmuladd.f64(double %165, double 0xBC6D62BACB4768A0, double %514)
  %516 = tail call double @llvm.fmuladd.f64(double %167, double 0x3CB80BBA9C9EA48C, double %515)
  %517 = tail call double @llvm.fmuladd.f64(double %169, double 0xBCAB0B98A91B6678, double %516)
  %518 = tail call double @llvm.fmuladd.f64(double %171, double 0xBFF5B6F7089FF1D1, double %517)
  %519 = tail call double @llvm.fmuladd.f64(double %173, double 0x3FB1F3F0B024DC80, double %518)
  %520 = tail call double @llvm.fmuladd.f64(double %175, double 0x3FCCBE3CAE6B6284, double %519)
  %521 = tail call double @llvm.fmuladd.f64(double %177, double 0xBFD81F8F0CEC6102, double %520)
  %522 = tail call double @llvm.fmuladd.f64(double %179, double 0xBFFBA497A89943F3, double %521)
  %523 = tail call double @llvm.fmuladd.f64(double %181, double 0xBFDC5366E211BEA3, double %522)
  %gep3201 = getelementptr double, ptr %invariant.gep3200, i64 %indvars.iv
  %524 = load double, ptr %gep3201, align 8, !tbaa !5
  %525 = fadd double %523, %524
  store double %525, ptr %gep3201, align 8, !tbaa !5
  %526 = fmul double %148, 0x3FE4EDE8EE256114
  %527 = tail call double @llvm.fmuladd.f64(double %147, double 0xBFE8AC73392375CC, double %526)
  %528 = tail call double @llvm.fmuladd.f64(double %151, double 0x3FEA5488770B26BE, double %527)
  %529 = tail call double @llvm.fmuladd.f64(double %153, double 0x3FF44CD742FC94E8, double %528)
  %530 = tail call double @llvm.fmuladd.f64(double %155, double 0xBFFEF1F8514C97DD, double %529)
  %531 = tail call double @llvm.fmuladd.f64(double %157, double 0xBFF01B2FE70C1193, double %530)
  %532 = tail call double @llvm.fmuladd.f64(double %159, double 0x3CA4DBB49723188B, double %531)
  %533 = tail call double @llvm.fmuladd.f64(double %161, double 0xBCA07423258E8785, double %532)
  %534 = tail call double @llvm.fmuladd.f64(double %163, double 0xBC8CF1A7605B6ED6, double %533)
  %535 = tail call double @llvm.fmuladd.f64(double %165, double 0xBC87A5CD2646DADD, double %534)
  %536 = tail call double @llvm.fmuladd.f64(double %167, double 0x3C756728FD5B044F, double %535)
  %537 = tail call double @llvm.fmuladd.f64(double %169, double 0xBC8B1A3C6A1C6E73, double %536)
  %538 = tail call double @llvm.fmuladd.f64(double %171, double 0xBCB366C66C9C20EC, double %537)
  %539 = tail call double @llvm.fmuladd.f64(double %173, double 0xBC7758351226A631, double %538)
  %540 = tail call double @llvm.fmuladd.f64(double %175, double 0xBCB6C6F6878DD3A7, double %539)
  %541 = tail call double @llvm.fmuladd.f64(double %177, double 0x3CA4C6639E24044F, double %540)
  %542 = tail call double @llvm.fmuladd.f64(double %179, double 0x3CB88B2192416394, double %541)
  %543 = tail call double @llvm.fmuladd.f64(double %181, double 0xBC4417177B9D447F, double %542)
  %gep3203 = getelementptr double, ptr %invariant.gep3202, i64 %indvars.iv
  %544 = load double, ptr %gep3203, align 8, !tbaa !5
  %545 = fadd double %543, %544
  store double %545, ptr %gep3203, align 8, !tbaa !5
  %546 = fmul double %148, 0x3FF44E3F94172F4B
  %547 = tail call double @llvm.fmuladd.f64(double %147, double 0xBF7DFA2300BBB280, double %546)
  %548 = tail call double @llvm.fmuladd.f64(double %151, double 0x3FB9ECDD981278F3, double %547)
  %549 = tail call double @llvm.fmuladd.f64(double %153, double 0xBFE4FBED5D8A964C, double %548)
  %550 = tail call double @llvm.fmuladd.f64(double %155, double 0xBF83952FC55A7310, double %549)
  %551 = tail call double @llvm.fmuladd.f64(double %157, double 0x3FD50884576D0BB8, double %550)
  %552 = tail call double @llvm.fmuladd.f64(double %159, double 0xBC62256990361280, double %551)
  %553 = tail call double @llvm.fmuladd.f64(double %161, double 0x3CC20413F90F2947, double %552)
  %554 = tail call double @llvm.fmuladd.f64(double %163, double 0x3CA8FA36F9E410BC, double %553)
  %555 = tail call double @llvm.fmuladd.f64(double %165, double 0x3C9F209CBEE6547E, double %554)
  %556 = tail call double @llvm.fmuladd.f64(double %167, double 0x3CA97C0FDD5CC331, double %555)
  %557 = tail call double @llvm.fmuladd.f64(double %169, double 0x3C839062B03D9625, double %556)
  %558 = tail call double @llvm.fmuladd.f64(double %171, double 0x3C8F162AB3E24558, double %557)
  %559 = tail call double @llvm.fmuladd.f64(double %173, double 0x3CC24822224DBC78, double %558)
  %560 = tail call double @llvm.fmuladd.f64(double %175, double 0xBCB88407823ABCF7, double %559)
  %561 = tail call double @llvm.fmuladd.f64(double %177, double 0x3CB067CE2C74889D, double %560)
  %562 = tail call double @llvm.fmuladd.f64(double %179, double 0x3CA71D150152D3DA, double %561)
  %563 = tail call double @llvm.fmuladd.f64(double %181, double 0xBCC8C466774B0520, double %562)
  %gep3205 = getelementptr double, ptr %invariant.gep3204, i64 %indvars.iv
  %564 = load double, ptr %gep3205, align 8, !tbaa !5
  %565 = fadd double %563, %564
  store double %565, ptr %gep3205, align 8, !tbaa !5
  %566 = fmul double %148, 0xBFE1EC4181248AE2
  %567 = tail call double @llvm.fmuladd.f64(double %147, double 0xBFDFFE63E285175F, double %566)
  %568 = tail call double @llvm.fmuladd.f64(double %151, double 0x4000E9CE75C2FBF8, double %567)
  %569 = tail call double @llvm.fmuladd.f64(double %153, double 0x3FF2343957F3A8AF, double %568)
  %570 = tail call double @llvm.fmuladd.f64(double %155, double 0x3FF31D88B253B07B, double %569)
  %571 = tail call double @llvm.fmuladd.f64(double %157, double 0xBFEE712F1EF7D89C, double %570)
  %572 = tail call double @llvm.fmuladd.f64(double %159, double 0x3C850293B3FCA0E3, double %571)
  %573 = tail call double @llvm.fmuladd.f64(double %161, double 0xBC70D2CDDD720E22, double %572)
  %574 = tail call double @llvm.fmuladd.f64(double %163, double 0xBCA9795185F3DCEB, double %573)
  %575 = tail call double @llvm.fmuladd.f64(double %165, double 0x3C9FEBD8FA5C50DD, double %574)
  %576 = tail call double @llvm.fmuladd.f64(double %167, double 0x3CCE35BEEAC7EA45, double %575)
  %577 = tail call double @llvm.fmuladd.f64(double %169, double 0xBCBC38460D0EF925, double %576)
  %578 = tail call double @llvm.fmuladd.f64(double %171, double 0xBCB4A05EBC88835E, double %577)
  %579 = tail call double @llvm.fmuladd.f64(double %173, double 0xBCB8D3AFF5676101, double %578)
  %580 = tail call double @llvm.fmuladd.f64(double %175, double 0x3CBDC6E1E1019EC2, double %579)
  %581 = tail call double @llvm.fmuladd.f64(double %177, double 0xBC82BE6C478E3228, double %580)
  %582 = tail call double @llvm.fmuladd.f64(double %179, double 0x3C86CA03EF7109C0, double %581)
  %583 = tail call double @llvm.fmuladd.f64(double %181, double 0x3CD3FC268C3751F5, double %582)
  %gep3207 = getelementptr double, ptr %invariant.gep3206, i64 %indvars.iv
  %584 = load double, ptr %gep3207, align 8, !tbaa !5
  %585 = fadd double %583, %584
  store double %585, ptr %gep3207, align 8, !tbaa !5
  %586 = fmul double %148, 0x3FF3237A82AF9ED0
  %587 = tail call double @llvm.fmuladd.f64(double %147, double 0xBFB17C71DD2D5170, double %586)
  %588 = tail call double @llvm.fmuladd.f64(double %151, double 0xBF76E8A1969E6C80, double %587)
  %589 = tail call double @llvm.fmuladd.f64(double %153, double 0x3FFBC4AD9C53A55A, double %588)
  %590 = tail call double @llvm.fmuladd.f64(double %155, double 0x3FC179BD32D3DC59, double %589)
  %591 = tail call double @llvm.fmuladd.f64(double %157, double 0x3FF1CA3B98F4942B, double %590)
  %592 = tail call double @llvm.fmuladd.f64(double %159, double 0xBC9E515AA144063C, double %591)
  %593 = tail call double @llvm.fmuladd.f64(double %161, double 0x3C8A4389306A2E0D, double %592)
  %594 = tail call double @llvm.fmuladd.f64(double %163, double 0xBC9F8C0C369EC038, double %593)
  %595 = tail call double @llvm.fmuladd.f64(double %165, double 0x3CA068AD707D034A, double %594)
  %596 = tail call double @llvm.fmuladd.f64(double %167, double 0xBC9CD786A1AD8F1F, double %595)
  %597 = tail call double @llvm.fmuladd.f64(double %169, double 0xBC7C542BFA7534C1, double %596)
  %598 = tail call double @llvm.fmuladd.f64(double %171, double 0xBCA291E4DC85F746, double %597)
  %599 = tail call double @llvm.fmuladd.f64(double %173, double 0xBC318568500D29B4, double %598)
  %600 = tail call double @llvm.fmuladd.f64(double %175, double 0x3CB8B7EF57E025B8, double %599)
  %601 = tail call double @llvm.fmuladd.f64(double %177, double 0x3CC368C8E05648F6, double %600)
  %602 = tail call double @llvm.fmuladd.f64(double %179, double 0x3C93BF528ACED502, double %601)
  %603 = tail call double @llvm.fmuladd.f64(double %181, double 0x3C99794FD5FFFA78, double %602)
  %gep3209 = getelementptr double, ptr %invariant.gep3208, i64 %indvars.iv
  %604 = load double, ptr %gep3209, align 8, !tbaa !5
  %605 = fadd double %603, %604
  store double %605, ptr %gep3209, align 8, !tbaa !5
  %606 = fmul double %148, 0xBF734721512AF544
  %607 = tail call double @llvm.fmuladd.f64(double %147, double 0x3FF21EFA862DF3D5, double %606)
  %608 = tail call double @llvm.fmuladd.f64(double %151, double 0xBFF7F19EB1BA88FC, double %607)
  %609 = tail call double @llvm.fmuladd.f64(double %153, double 0xBFF48831FA6C7040, double %608)
  %610 = tail call double @llvm.fmuladd.f64(double %155, double 0x3FC901A35D55DB9B, double %609)
  %611 = tail call double @llvm.fmuladd.f64(double %157, double 0x3FF0AF85DD8BD416, double %610)
  %612 = tail call double @llvm.fmuladd.f64(double %159, double 0x3C8212A222BDF02D, double %611)
  %613 = tail call double @llvm.fmuladd.f64(double %161, double 0x3C9C3612467E6F25, double %612)
  %614 = tail call double @llvm.fmuladd.f64(double %163, double 0x3C60D44D9CE30D34, double %613)
  %615 = tail call double @llvm.fmuladd.f64(double %165, double 0x3CB4286CB40F2925, double %614)
  %616 = tail call double @llvm.fmuladd.f64(double %167, double 0xBCA8159E3B5248DD, double %615)
  %617 = tail call double @llvm.fmuladd.f64(double %169, double 0xBC8CCF58EB146D34, double %616)
  %618 = tail call double @llvm.fmuladd.f64(double %171, double 0x3C8CDC3A40C0C286, double %617)
  %619 = tail call double @llvm.fmuladd.f64(double %173, double 0x3C9145618281F15F, double %618)
  %620 = tail call double @llvm.fmuladd.f64(double %175, double 0x3C9DA0ED86977DDB, double %619)
  %621 = tail call double @llvm.fmuladd.f64(double %177, double 0xBCB96CB68C8806CB, double %620)
  %622 = tail call double @llvm.fmuladd.f64(double %179, double 0xBCA627EA67753954, double %621)
  %623 = tail call double @llvm.fmuladd.f64(double %181, double 0xBCB38E4A7495701A, double %622)
  %gep3211 = getelementptr double, ptr %invariant.gep3210, i64 %indvars.iv
  %624 = load double, ptr %gep3211, align 8, !tbaa !5
  %625 = fadd double %623, %624
  store double %625, ptr %gep3211, align 8, !tbaa !5
  %626 = fmul double %148, 0xBFF5B6F7089FF1D6
  %627 = tail call double @llvm.fmuladd.f64(double %147, double 0x3FB1F3F0B024DC78, double %626)
  %628 = tail call double @llvm.fmuladd.f64(double %151, double 0x3FCCBE3CAE6B6264, double %627)
  %629 = tail call double @llvm.fmuladd.f64(double %153, double 0xBFFBA497A89943F8, double %628)
  %630 = tail call double @llvm.fmuladd.f64(double %155, double 0xBFD81F8F0CEC6104, double %629)
  %631 = tail call double @llvm.fmuladd.f64(double %157, double 0xBFDC5366E211BE88, double %630)
  %632 = tail call double @llvm.fmuladd.f64(double %159, double 0x3C3B48F2BDFBC8FE, double %631)
  %633 = tail call double @llvm.fmuladd.f64(double %161, double 0xBCABF8CFD447EB3A, double %632)
  %634 = tail call double @llvm.fmuladd.f64(double %163, double 0x3CAAFAB790AFF8A1, double %633)
  %635 = tail call double @llvm.fmuladd.f64(double %165, double 0x3C95C63DC7475F76, double %634)
  %636 = tail call double @llvm.fmuladd.f64(double %167, double 0x3CB246F6B715BA99, double %635)
  %637 = tail call double @llvm.fmuladd.f64(double %169, double 0xBCAFEB692A4A65D9, double %636)
  %638 = tail call double @llvm.fmuladd.f64(double %171, double 0xBCB0527DE73323C6, double %637)
  %639 = tail call double @llvm.fmuladd.f64(double %173, double 0xBC851E1EB70E35B8, double %638)
  %640 = tail call double @llvm.fmuladd.f64(double %175, double 0xBCB91F7B4DA061B9, double %639)
  %641 = tail call double @llvm.fmuladd.f64(double %177, double 0xBCA20AB4BF61ADD9, double %640)
  %642 = tail call double @llvm.fmuladd.f64(double %179, double 0xBC92F85550CD85E6, double %641)
  %643 = tail call double @llvm.fmuladd.f64(double %181, double 0xBCB0508DC7392C6F, double %642)
  %gep3213 = getelementptr double, ptr %invariant.gep3212, i64 %indvars.iv
  %644 = load double, ptr %gep3213, align 8, !tbaa !5
  %645 = fadd double %643, %644
  store double %645, ptr %gep3213, align 8, !tbaa !5
  %646 = fmul double %148, 0xBCB1B63B8880A915
  %647 = tail call double @llvm.fmuladd.f64(double %147, double 0x3CC6C71214C31C21, double %646)
  %648 = tail call double @llvm.fmuladd.f64(double %151, double 0xBCB4FEFC467C74C1, double %647)
  %649 = tail call double @llvm.fmuladd.f64(double %153, double 0x3CA5EC7F118106ED, double %648)
  %650 = tail call double @llvm.fmuladd.f64(double %155, double 0x3C97A76C7821BE84, double %649)
  %651 = tail call double @llvm.fmuladd.f64(double %157, double 0x3CAB7AA05D79C461, double %650)
  %652 = tail call double @llvm.fmuladd.f64(double %159, double 0xBFE8AC73392375D0, double %651)
  %653 = tail call double @llvm.fmuladd.f64(double %161, double 0x3FE4EDE8EE256116, double %652)
  %654 = tail call double @llvm.fmuladd.f64(double %163, double 0x3FEA5488770B26C2, double %653)
  %655 = tail call double @llvm.fmuladd.f64(double %165, double 0x3FF44CD742FC94EC, double %654)
  %656 = tail call double @llvm.fmuladd.f64(double %167, double 0xBFFEF1F8514C97E2, double %655)
  %657 = tail call double @llvm.fmuladd.f64(double %169, double 0xBFF01B2FE70C1193, double %656)
  %658 = tail call double @llvm.fmuladd.f64(double %171, double 0x3CC10619A0D49B2C, double %657)
  %659 = tail call double @llvm.fmuladd.f64(double %173, double 0xBCB2BE959D8DCC83, double %658)
  %660 = tail call double @llvm.fmuladd.f64(double %175, double 0xBCB6827D4F596C3D, double %659)
  %661 = tail call double @llvm.fmuladd.f64(double %177, double 0xBC79847A24C5FC38, double %660)
  %662 = tail call double @llvm.fmuladd.f64(double %179, double 0x3CA5781E7AFEC464, double %661)
  %663 = tail call double @llvm.fmuladd.f64(double %181, double 0xBC69B640D81F5A20, double %662)
  %gep3215 = getelementptr double, ptr %invariant.gep3214, i64 %indvars.iv
  %664 = load double, ptr %gep3215, align 8, !tbaa !5
  %665 = fadd double %663, %664
  store double %665, ptr %gep3215, align 8, !tbaa !5
  %666 = fmul double %148, 0x3CB1CF7DDE1AEFDC
  %667 = tail call double @llvm.fmuladd.f64(double %147, double 0x3CA347C4C70D6B05, double %666)
  %668 = tail call double @llvm.fmuladd.f64(double %151, double 0x3C97D656A637D540, double %667)
  %669 = tail call double @llvm.fmuladd.f64(double %153, double 0xBCAA48CC66C79E07, double %668)
  %670 = tail call double @llvm.fmuladd.f64(double %155, double 0x3C9D261528C7077F, double %669)
  %671 = tail call double @llvm.fmuladd.f64(double %157, double 0x3CA99E4A7A608F94, double %670)
  %672 = tail call double @llvm.fmuladd.f64(double %159, double 0xBF7DFA2300BBB500, double %671)
  %673 = tail call double @llvm.fmuladd.f64(double %161, double 0x3FF44E3F94172F4B, double %672)
  %674 = tail call double @llvm.fmuladd.f64(double %163, double 0x3FB9ECDD981278D6, double %673)
  %675 = tail call double @llvm.fmuladd.f64(double %165, double 0xBFE4FBED5D8A9650, double %674)
  %676 = tail call double @llvm.fmuladd.f64(double %167, double 0xBF83952FC55A72B4, double %675)
  %677 = tail call double @llvm.fmuladd.f64(double %169, double 0x3FD50884576D0BC1, double %676)
  %678 = tail call double @llvm.fmuladd.f64(double %171, double 0x3CB6140A413681D4, double %677)
  %679 = tail call double @llvm.fmuladd.f64(double %173, double 0x3CA8FA1231330DC7, double %678)
  %680 = tail call double @llvm.fmuladd.f64(double %175, double 0x3CBBE2C07F50FCE2, double %679)
  %681 = tail call double @llvm.fmuladd.f64(double %177, double 0xBCB7024A69B57E27, double %680)
  %682 = tail call double @llvm.fmuladd.f64(double %179, double 0xBC87FD97AF08C2A0, double %681)
  %683 = tail call double @llvm.fmuladd.f64(double %181, double 0xBCB0527F7EB21B3D, double %682)
  %gep3217 = getelementptr double, ptr %invariant.gep3216, i64 %indvars.iv
  %684 = load double, ptr %gep3217, align 8, !tbaa !5
  %685 = fadd double %683, %684
  store double %685, ptr %gep3217, align 8, !tbaa !5
  %686 = fmul double %148, 0x3C8A879ECD0AD1E9
  %687 = tail call double @llvm.fmuladd.f64(double %147, double 0x3CAC37DE4880EADE, double %686)
  %688 = tail call double @llvm.fmuladd.f64(double %151, double 0xBC59ACE05CE0B300, double %687)
  %689 = tail call double @llvm.fmuladd.f64(double %153, double 0x3CB3FD64226E0B00, double %688)
  %690 = tail call double @llvm.fmuladd.f64(double %155, double 0xBCA6BB73EC8236F2, double %689)
  %691 = tail call double @llvm.fmuladd.f64(double %157, double 0xBCA83336C71F9743, double %690)
  %692 = tail call double @llvm.fmuladd.f64(double %159, double 0xBFDFFE63E2851764, double %691)
  %693 = tail call double @llvm.fmuladd.f64(double %161, double 0xBFE1EC4181248AE3, double %692)
  %694 = tail call double @llvm.fmuladd.f64(double %163, double 0x4000E9CE75C2FBF6, double %693)
  %695 = tail call double @llvm.fmuladd.f64(double %165, double 0x3FF2343957F3A8AF, double %694)
  %696 = tail call double @llvm.fmuladd.f64(double %167, double 0x3FF31D88B253B07F, double %695)
  %697 = tail call double @llvm.fmuladd.f64(double %169, double 0xBFEE712F1EF7D8A1, double %696)
  %698 = tail call double @llvm.fmuladd.f64(double %171, double 0xBCC19561BA4C976A, double %697)
  %699 = tail call double @llvm.fmuladd.f64(double %173, double 0x3C8561CA2243E962, double %698)
  %700 = tail call double @llvm.fmuladd.f64(double %175, double 0xBCCBC809825B5E43, double %699)
  %701 = tail call double @llvm.fmuladd.f64(double %177, double 0xBC98B3084FB90D1C, double %700)
  %702 = tail call double @llvm.fmuladd.f64(double %179, double 0x3CD0052A8CC0F683, double %701)
  %703 = tail call double @llvm.fmuladd.f64(double %181, double 0x3CD01543965B219E, double %702)
  %gep3219 = getelementptr double, ptr %invariant.gep3218, i64 %indvars.iv
  %704 = load double, ptr %gep3219, align 8, !tbaa !5
  %705 = fadd double %703, %704
  store double %705, ptr %gep3219, align 8, !tbaa !5
  %706 = fmul double %148, 0x3C5F5BA8ADFE37A4
  %707 = tail call double @llvm.fmuladd.f64(double %147, double 0xBCB17D0146688F6C, double %706)
  %708 = tail call double @llvm.fmuladd.f64(double %151, double 0xBC95A97F00B4BD20, double %707)
  %709 = tail call double @llvm.fmuladd.f64(double %153, double 0x3CB310B8F73ED9E1, double %708)
  %710 = tail call double @llvm.fmuladd.f64(double %155, double 0x3CB8D84083674869, double %709)
  %711 = tail call double @llvm.fmuladd.f64(double %157, double 0x3C908864603A2D22, double %710)
  %712 = tail call double @llvm.fmuladd.f64(double %159, double 0xBFB17C71DD2D5188, double %711)
  %713 = tail call double @llvm.fmuladd.f64(double %161, double 0x3FF3237A82AF9ED0, double %712)
  %714 = tail call double @llvm.fmuladd.f64(double %163, double 0xBF76E8A1969E6E00, double %713)
  %715 = tail call double @llvm.fmuladd.f64(double %165, double 0x3FFBC4AD9C53A55A, double %714)
  %716 = tail call double @llvm.fmuladd.f64(double %167, double 0x3FC179BD32D3DC59, double %715)
  %717 = tail call double @llvm.fmuladd.f64(double %169, double 0x3FF1CA3B98F4942B, double %716)
  %718 = tail call double @llvm.fmuladd.f64(double %171, double 0x3CB0F5FB97E3D134, double %717)
  %719 = tail call double @llvm.fmuladd.f64(double %173, double 0xBCAEF548FD7930BA, double %718)
  %720 = tail call double @llvm.fmuladd.f64(double %175, double 0x3CB0EB672BAF686C, double %719)
  %721 = tail call double @llvm.fmuladd.f64(double %177, double 0xBC978105A5E561C1, double %720)
  %722 = tail call double @llvm.fmuladd.f64(double %179, double 0x3CA3390DEFF9A3C5, double %721)
  %723 = tail call double @llvm.fmuladd.f64(double %181, double 0xBCA5931C5A970C57, double %722)
  %gep3221 = getelementptr double, ptr %invariant.gep3220, i64 %indvars.iv
  %724 = load double, ptr %gep3221, align 8, !tbaa !5
  %725 = fadd double %723, %724
  store double %725, ptr %gep3221, align 8, !tbaa !5
  %726 = fmul double %148, 0xBC8C55566D867E4D
  %727 = tail call double @llvm.fmuladd.f64(double %147, double 0xBCB979BA7B87021B, double %726)
  %728 = tail call double @llvm.fmuladd.f64(double %151, double 0x3CAD8296DD370BB5, double %727)
  %729 = tail call double @llvm.fmuladd.f64(double %153, double 0xBCB6E42765918C02, double %728)
  %730 = tail call double @llvm.fmuladd.f64(double %155, double 0x3CA25C9DE1FA7E55, double %729)
  %731 = tail call double @llvm.fmuladd.f64(double %157, double 0x3CA501A6E8F3273C, double %730)
  %732 = tail call double @llvm.fmuladd.f64(double %159, double 0x3FF21EFA862DF3DA, double %731)
  %733 = tail call double @llvm.fmuladd.f64(double %161, double 0xBF734721512AF5C4, double %732)
  %734 = tail call double @llvm.fmuladd.f64(double %163, double 0xBFF7F19EB1BA88FC, double %733)
  %735 = tail call double @llvm.fmuladd.f64(double %165, double 0xBFF48831FA6C7040, double %734)
  %736 = tail call double @llvm.fmuladd.f64(double %167, double 0x3FC901A35D55DB91, double %735)
  %737 = tail call double @llvm.fmuladd.f64(double %169, double 0x3FF0AF85DD8BD41B, double %736)
  %738 = tail call double @llvm.fmuladd.f64(double %171, double 0x3C818885A14EAAF3, double %737)
  %739 = tail call double @llvm.fmuladd.f64(double %173, double 0x3CA1FE8D3E4F0FDA, double %738)
  %740 = tail call double @llvm.fmuladd.f64(double %175, double 0x3CC2430B423E38F7, double %739)
  %741 = tail call double @llvm.fmuladd.f64(double %177, double 0xBCA2669FC3A56863, double %740)
  %742 = tail call double @llvm.fmuladd.f64(double %179, double 0xBCBED2A4B49E79D0, double %741)
  %743 = tail call double @llvm.fmuladd.f64(double %181, double 0xBCB8150AF40905ED, double %742)
  %gep3223 = getelementptr double, ptr %invariant.gep3222, i64 %indvars.iv
  %744 = load double, ptr %gep3223, align 8, !tbaa !5
  %745 = fadd double %743, %744
  store double %745, ptr %gep3223, align 8, !tbaa !5
  %746 = fmul double %148, 0xBC6ACDF6528B4733
  %747 = tail call double @llvm.fmuladd.f64(double %147, double 0x3CA01AC45D3C9864, double %746)
  %748 = tail call double @llvm.fmuladd.f64(double %151, double 0xBC7F9F89179EC460, double %747)
  %749 = tail call double @llvm.fmuladd.f64(double %153, double 0xBCB6B022413F9937, double %748)
  %750 = tail call double @llvm.fmuladd.f64(double %155, double 0xBCB0BCDE936FEEC2, double %749)
  %751 = tail call double @llvm.fmuladd.f64(double %157, double 0x3CB1A9F3F895A70E, double %750)
  %752 = tail call double @llvm.fmuladd.f64(double %159, double 0x3FB1F3F0B024DC78, double %751)
  %753 = tail call double @llvm.fmuladd.f64(double %161, double 0xBFF5B6F7089FF1D6, double %752)
  %754 = tail call double @llvm.fmuladd.f64(double %163, double 0x3FCCBE3CAE6B6264, double %753)
  %755 = tail call double @llvm.fmuladd.f64(double %165, double 0xBFFBA497A89943F8, double %754)
  %756 = tail call double @llvm.fmuladd.f64(double %167, double 0xBFD81F8F0CEC6101, double %755)
  %757 = tail call double @llvm.fmuladd.f64(double %169, double 0xBFDC5366E211BEA0, double %756)
  %758 = tail call double @llvm.fmuladd.f64(double %171, double 0xBCB87AF4AD8F6C4D, double %757)
  %759 = tail call double @llvm.fmuladd.f64(double %173, double 0x3CB12455A0EA2ADF, double %758)
  %760 = tail call double @llvm.fmuladd.f64(double %175, double 0xBCB257D19C776B7D, double %759)
  %761 = tail call double @llvm.fmuladd.f64(double %177, double 0x3C87C5793620E509, double %760)
  %762 = tail call double @llvm.fmuladd.f64(double %179, double 0xBCAEB022802087A0, double %761)
  %763 = tail call double @llvm.fmuladd.f64(double %181, double 0x3CB19E5F3488CFDD, double %762)
  %gep3225 = getelementptr double, ptr %invariant.gep3224, i64 %indvars.iv
  %764 = load double, ptr %gep3225, align 8, !tbaa !5
  %765 = fadd double %763, %764
  store double %765, ptr %gep3225, align 8, !tbaa !5
  %766 = fmul double %148, 0x3C93A7C0E4AC7A60
  %767 = tail call double @llvm.fmuladd.f64(double %147, double 0x3CA77C1E26AD07FB, double %766)
  %768 = tail call double @llvm.fmuladd.f64(double %151, double 0xBCB48923F82EA691, double %767)
  %769 = tail call double @llvm.fmuladd.f64(double %153, double 0x3CB2EF2E61697A4B, double %768)
  %770 = tail call double @llvm.fmuladd.f64(double %155, double 0xBC799BC4C2A33F70, double %769)
  %771 = tail call double @llvm.fmuladd.f64(double %157, double 0xBC7C5EE298468647, double %770)
  %772 = tail call double @llvm.fmuladd.f64(double %159, double 0x3CB0F9118CF9AD5E, double %771)
  %773 = tail call double @llvm.fmuladd.f64(double %161, double 0xBC9C6D9C52EC041A, double %772)
  %774 = tail call double @llvm.fmuladd.f64(double %163, double 0xBC814C8EF8381536, double %773)
  %775 = tail call double @llvm.fmuladd.f64(double %165, double 0xBC76355C6A0A6D53, double %774)
  %776 = tail call double @llvm.fmuladd.f64(double %167, double 0x3C61B8141832C03E, double %775)
  %777 = tail call double @llvm.fmuladd.f64(double %169, double 0xBC8B1A3C6A1C6E73, double %776)
  %778 = tail call double @llvm.fmuladd.f64(double %171, double 0xBFE8AC73392375D0, double %777)
  %779 = tail call double @llvm.fmuladd.f64(double %173, double 0x3FE4EDE8EE256113, double %778)
  %780 = tail call double @llvm.fmuladd.f64(double %175, double 0x3FEA5488770B26BE, double %779)
  %781 = tail call double @llvm.fmuladd.f64(double %177, double 0x3FF44CD742FC94E8, double %780)
  %782 = tail call double @llvm.fmuladd.f64(double %179, double 0xBFFEF1F8514C97DD, double %781)
  %783 = tail call double @llvm.fmuladd.f64(double %181, double 0xBFF01B2FE70C1193, double %782)
  %gep3227 = getelementptr double, ptr %invariant.gep3226, i64 %indvars.iv
  %784 = load double, ptr %gep3227, align 8, !tbaa !5
  %785 = fadd double %783, %784
  store double %785, ptr %gep3227, align 8, !tbaa !5
  %786 = fmul double %148, 0x3CC7A90CBDB122D2
  %787 = tail call double @llvm.fmuladd.f64(double %147, double 0x3C8C175CC3AC3DA0, double %786)
  %788 = tail call double @llvm.fmuladd.f64(double %151, double 0xBCC511D8384A1A55, double %787)
  %789 = tail call double @llvm.fmuladd.f64(double %153, double 0x3CAADBF51C371479, double %788)
  %790 = tail call double @llvm.fmuladd.f64(double %155, double 0x3CA4D75F1529F75A, double %789)
  %791 = tail call double @llvm.fmuladd.f64(double %157, double 0xBCB8F2F00581C5B3, double %790)
  %792 = tail call double @llvm.fmuladd.f64(double %159, double 0x3CB256380966451A, double %791)
  %793 = tail call double @llvm.fmuladd.f64(double %161, double 0x3CC01E6C16082D54, double %792)
  %794 = tail call double @llvm.fmuladd.f64(double %163, double 0x3CAA303E978A5038, double %793)
  %795 = tail call double @llvm.fmuladd.f64(double %165, double 0x3CAC5EADE484449F, double %794)
  %796 = tail call double @llvm.fmuladd.f64(double %167, double 0x3CAC4A69A26D89C3, double %795)
  %797 = tail call double @llvm.fmuladd.f64(double %169, double 0x3C839062B03D962B, double %796)
  %798 = tail call double @llvm.fmuladd.f64(double %171, double 0xBF7DFA2300BBB200, double %797)
  %799 = tail call double @llvm.fmuladd.f64(double %173, double 0x3FF44E3F94172F46, double %798)
  %800 = tail call double @llvm.fmuladd.f64(double %175, double 0x3FB9ECDD981278FA, double %799)
  %801 = tail call double @llvm.fmuladd.f64(double %177, double 0xBFE4FBED5D8A964C, double %800)
  %802 = tail call double @llvm.fmuladd.f64(double %179, double 0xBF83952FC55A7394, double %801)
  %803 = tail call double @llvm.fmuladd.f64(double %181, double 0x3FD50884576D0BB0, double %802)
  %gep3229 = getelementptr double, ptr %invariant.gep3228, i64 %indvars.iv
  %804 = load double, ptr %gep3229, align 8, !tbaa !5
  %805 = fadd double %803, %804
  store double %805, ptr %gep3229, align 8, !tbaa !5
  %806 = fmul double %148, 0xBCA27EC017855878
  %807 = tail call double @llvm.fmuladd.f64(double %147, double 0x3CC3A3AFB95FF4E5, double %806)
  %808 = tail call double @llvm.fmuladd.f64(double %151, double 0x3CD54F70D2EB9A18, double %807)
  %809 = tail call double @llvm.fmuladd.f64(double %153, double 0x3CABF738548B48D5, double %808)
  %810 = tail call double @llvm.fmuladd.f64(double %155, double 0xBCCFEC3A2A4C4C78, double %809)
  %811 = tail call double @llvm.fmuladd.f64(double %157, double 0x3C932E31FBD492BC, double %810)
  %812 = tail call double @llvm.fmuladd.f64(double %159, double 0x3CA535998BAB6E00, double %811)
  %813 = tail call double @llvm.fmuladd.f64(double %161, double 0x3C6197D309C7AB34, double %812)
  %814 = tail call double @llvm.fmuladd.f64(double %163, double 0xBCA84349E84D9D73, double %813)
  %815 = tail call double @llvm.fmuladd.f64(double %165, double 0x3CA4C44C023F42CC, double %814)
  %816 = tail call double @llvm.fmuladd.f64(double %167, double 0x3CCE4E90983F720B, double %815)
  %817 = tail call double @llvm.fmuladd.f64(double %169, double 0xBCBC38460D0EF925, double %816)
  %818 = tail call double @llvm.fmuladd.f64(double %171, double 0xBFDFFE63E285176B, double %817)
  %819 = tail call double @llvm.fmuladd.f64(double %173, double 0xBFE1EC4181248AE3, double %818)
  %820 = tail call double @llvm.fmuladd.f64(double %175, double 0x4000E9CE75C2FBF6, double %819)
  %821 = tail call double @llvm.fmuladd.f64(double %177, double 0x3FF2343957F3A8AF, double %820)
  %822 = tail call double @llvm.fmuladd.f64(double %179, double 0x3FF31D88B253B07F, double %821)
  %823 = tail call double @llvm.fmuladd.f64(double %181, double 0xBFEE712F1EF7D894, double %822)
  %gep3231 = getelementptr double, ptr %invariant.gep3230, i64 %indvars.iv
  %824 = load double, ptr %gep3231, align 8, !tbaa !5
  %825 = fadd double %823, %824
  store double %825, ptr %gep3231, align 8, !tbaa !5
  %826 = fmul double %148, 0xBC7865999DB92F51
  %827 = tail call double @llvm.fmuladd.f64(double %147, double 0xBCB2A04E51D66FCE, double %826)
  %828 = tail call double @llvm.fmuladd.f64(double %151, double 0x3C88B903F6BC17F0, double %827)
  %829 = tail call double @llvm.fmuladd.f64(double %153, double 0x3CC55C346E604B2A, double %828)
  %830 = tail call double @llvm.fmuladd.f64(double %155, double 0xBC997FE57E87E294, double %829)
  %831 = tail call double @llvm.fmuladd.f64(double %157, double 0xBC892C4067E5CCE7, double %830)
  %832 = tail call double @llvm.fmuladd.f64(double %159, double 0x3C9195CCC6FDDC34, double %831)
  %833 = tail call double @llvm.fmuladd.f64(double %161, double 0x3C90C2BEA1BFB3F8, double %832)
  %834 = tail call double @llvm.fmuladd.f64(double %163, double 0xBC83C8973FFE3109, double %833)
  %835 = tail call double @llvm.fmuladd.f64(double %165, double 0x3CA202E0ECF2957E, double %834)
  %836 = tail call double @llvm.fmuladd.f64(double %167, double 0xBC9E71BA1E232157, double %835)
  %837 = tail call double @llvm.fmuladd.f64(double %169, double 0xBC7C542BFA7534B8, double %836)
  %838 = tail call double @llvm.fmuladd.f64(double %171, double 0xBFB17C71DD2D5160, double %837)
  %839 = tail call double @llvm.fmuladd.f64(double %173, double 0x3FF3237A82AF9ED0, double %838)
  %840 = tail call double @llvm.fmuladd.f64(double %175, double 0xBF76E8A1969E6B00, double %839)
  %841 = tail call double @llvm.fmuladd.f64(double %177, double 0x3FFBC4AD9C53A55A, double %840)
  %842 = tail call double @llvm.fmuladd.f64(double %179, double 0x3FC179BD32D3DC68, double %841)
  %843 = tail call double @llvm.fmuladd.f64(double %181, double 0x3FF1CA3B98F4942B, double %842)
  %gep3233 = getelementptr double, ptr %invariant.gep3232, i64 %indvars.iv
  %844 = load double, ptr %gep3233, align 8, !tbaa !5
  %845 = fadd double %843, %844
  store double %845, ptr %gep3233, align 8, !tbaa !5
  %846 = fmul double %148, 0xBCA57F1A1B03E36B
  %847 = tail call double @llvm.fmuladd.f64(double %147, double 0xBCC1297A2A184282, double %846)
  %848 = tail call double @llvm.fmuladd.f64(double %151, double 0xBCB10C6112FA5C6E, double %847)
  %849 = tail call double @llvm.fmuladd.f64(double %153, double 0xBCBF0D117BE35C9F, double %848)
  %850 = tail call double @llvm.fmuladd.f64(double %155, double 0x3CBC248A09C9692D, double %849)
  %851 = tail call double @llvm.fmuladd.f64(double %157, double 0x3CBF98C60EE20B5A, double %850)
  %852 = tail call double @llvm.fmuladd.f64(double %159, double 0xBC8722D375CED18B, double %851)
  %853 = tail call double @llvm.fmuladd.f64(double %161, double 0x3C928A15FB1A0DF3, double %852)
  %854 = tail call double @llvm.fmuladd.f64(double %163, double 0xBC6B200A12F0E6FE, double %853)
  %855 = tail call double @llvm.fmuladd.f64(double %165, double 0x3CB0B4EF81D0EBA9, double %854)
  %856 = tail call double @llvm.fmuladd.f64(double %167, double 0xBCA81B5AA73CEFCF, double %855)
  %857 = tail call double @llvm.fmuladd.f64(double %169, double 0xBC8CCF58EB146D34, double %856)
  %858 = tail call double @llvm.fmuladd.f64(double %171, double 0x3FF21EFA862DF3DA, double %857)
  %859 = tail call double @llvm.fmuladd.f64(double %173, double 0xBF734721512AF472, double %858)
  %860 = tail call double @llvm.fmuladd.f64(double %175, double 0xBFF7F19EB1BA88FC, double %859)
  %861 = tail call double @llvm.fmuladd.f64(double %177, double 0xBFF48831FA6C7040, double %860)
  %862 = tail call double @llvm.fmuladd.f64(double %179, double 0x3FC901A35D55DB89, double %861)
  %863 = tail call double @llvm.fmuladd.f64(double %181, double 0x3FF0AF85DD8BD416, double %862)
  %gep3235 = getelementptr double, ptr %invariant.gep3234, i64 %indvars.iv
  %864 = load double, ptr %gep3235, align 8, !tbaa !5
  %865 = fadd double %863, %864
  store double %865, ptr %gep3235, align 8, !tbaa !5
  %866 = fmul double %148, 0xBCA44D48F8869957
  %867 = tail call double @llvm.fmuladd.f64(double %147, double 0xBC8E7761343A95A0, double %866)
  %868 = tail call double @llvm.fmuladd.f64(double %151, double 0xBC95C5CE8588C948, double %867)
  %869 = tail call double @llvm.fmuladd.f64(double %153, double 0xBCB82536F63F33EE, double %868)
  %870 = tail call double @llvm.fmuladd.f64(double %155, double 0x3CA6D94B54150D6E, double %869)
  %871 = tail call double @llvm.fmuladd.f64(double %157, double 0xBC86CA5E2A13EA01, double %870)
  %872 = tail call double @llvm.fmuladd.f64(double %159, double 0xBC8AA385F45F1E4E, double %871)
  %873 = tail call double @llvm.fmuladd.f64(double %161, double 0xBCB2AACA2DE89BB0, double %872)
  %874 = tail call double @llvm.fmuladd.f64(double %163, double 0x3CA83B7215B2B95C, double %873)
  %875 = tail call double @llvm.fmuladd.f64(double %165, double 0x3C8FF091FC9CD302, double %874)
  %876 = tail call double @llvm.fmuladd.f64(double %167, double 0x3CB3BD521F494B8F, double %875)
  %877 = tail call double @llvm.fmuladd.f64(double %169, double 0xBCAFEB692A4A65D9, double %876)
  %878 = tail call double @llvm.fmuladd.f64(double %171, double 0x3FB1F3F0B024DC70, double %877)
  %879 = tail call double @llvm.fmuladd.f64(double %173, double 0xBFF5B6F7089FF1D6, double %878)
  %880 = tail call double @llvm.fmuladd.f64(double %175, double 0x3FCCBE3CAE6B6255, double %879)
  %881 = tail call double @llvm.fmuladd.f64(double %177, double 0xBFFBA497A89943F8, double %880)
  %882 = tail call double @llvm.fmuladd.f64(double %179, double 0xBFD81F8F0CEC6108, double %881)
  %883 = tail call double @llvm.fmuladd.f64(double %181, double 0xBFDC5366E211BE88, double %882)
  %gep3237 = getelementptr double, ptr %invariant.gep3236, i64 %indvars.iv
  %884 = load double, ptr %gep3237, align 8, !tbaa !5
  %885 = fadd double %883, %884
  store double %885, ptr %gep3237, align 8, !tbaa !5
  %886 = fmul double %148, 0xBD09D98BFF4CB0E5
  %887 = tail call double @llvm.fmuladd.f64(double %147, double 0x3FFEFBDEB14F4DAA, double %886)
  %888 = tail call double @llvm.fmuladd.f64(double %151, double 0xBD08F6EC581E880F, double %887)
  %889 = tail call double @llvm.fmuladd.f64(double %153, double 0xBCFDF4EDB2DE7F56, double %888)
  %890 = tail call double @llvm.fmuladd.f64(double %155, double 0x3D19E21ADBE67F1B, double %889)
  %891 = tail call double @llvm.fmuladd.f64(double %157, double 0x3D193EE154A2063B, double %890)
  %892 = tail call double @llvm.fmuladd.f64(double %159, double 0x3FF08654A2D4F756, double %891)
  %893 = tail call double @llvm.fmuladd.f64(double %161, double 0x3CF4E04E2DCDEC57, double %892)
  %894 = tail call double @llvm.fmuladd.f64(double %163, double 0x3CF3AAAAAAAAAAAB, double %893)
  %895 = tail call double @llvm.fmuladd.f64(double %165, double 0x3CE72AAAAAAAAAA8, double %894)
  %896 = tail call double @llvm.fmuladd.f64(double %167, double 0xBD043F63A4642756, double %895)
  %897 = tail call double @llvm.fmuladd.f64(double %169, double 0xBD0394B8F9B97CA9, double %896)
  %898 = tail call double @llvm.fmuladd.f64(double %171, double 0xBFE4A7E9CB8A3493, double %897)
  %899 = tail call double @llvm.fmuladd.f64(double %173, double 0xBC8BC95608A46E63, double %898)
  %900 = tail call double @llvm.fmuladd.f64(double %175, double 0x3CA865C0B24CAFB5, double %899)
  %901 = tail call double @llvm.fmuladd.f64(double %177, double 0x3CB09F4DA65E855E, double %900)
  %902 = tail call double @llvm.fmuladd.f64(double %179, double 0xBCA3E8F53E9DEC6B, double %901)
  %903 = tail call double @llvm.fmuladd.f64(double %181, double 0xBCB32135F151F960, double %902)
  %gep3239 = getelementptr double, ptr %invariant.gep3238, i64 %indvars.iv
  %904 = load double, ptr %gep3239, align 8, !tbaa !5
  %905 = fadd double %903, %904
  store double %905, ptr %gep3239, align 8, !tbaa !5
  %906 = fmul double %148, 0x3FFEFBDEB14F4D9C
  %907 = tail call double @llvm.fmuladd.f64(double %147, double 0xBD07B67C0A74B6D2, double %906)
  %908 = tail call double @llvm.fmuladd.f64(double %151, double 0xBD08B86D08565032, double %907)
  %909 = tail call double @llvm.fmuladd.f64(double %153, double 0x3D1BE5E867FB3CCC, double %908)
  %910 = tail call double @llvm.fmuladd.f64(double %155, double 0xBCFD7E2C7687A148, double %909)
  %911 = tail call double @llvm.fmuladd.f64(double %157, double 0x3D19AB84FA7213D2, double %910)
  %912 = tail call double @llvm.fmuladd.f64(double %159, double 0x3CF414B8F9B97CAA, double %911)
  %913 = tail call double @llvm.fmuladd.f64(double %161, double 0x3FF08654A2D4F75B, double %912)
  %914 = tail call double @llvm.fmuladd.f64(double %163, double 0x3CF39AF8D87896FD, double %913)
  %915 = tail call double @llvm.fmuladd.f64(double %165, double 0xBD05A83AA25A713E, double %914)
  %916 = tail call double @llvm.fmuladd.f64(double %167, double 0x3CE7EC7FBD7E34A3, double %915)
  %917 = tail call double @llvm.fmuladd.f64(double %169, double 0xBD055F1576963AFE, double %916)
  %918 = tail call double @llvm.fmuladd.f64(double %171, double 0x3C970362DFEA2854, double %917)
  %919 = tail call double @llvm.fmuladd.f64(double %173, double 0xBFE4A7E9CB8A349A, double %918)
  %920 = tail call double @llvm.fmuladd.f64(double %175, double 0xBC7565CE1279E84F, double %919)
  %921 = tail call double @llvm.fmuladd.f64(double %177, double 0xBCB0188D814CF0C8, double %920)
  %922 = tail call double @llvm.fmuladd.f64(double %179, double 0x3CAC57CB2B44F947, double %921)
  %923 = tail call double @llvm.fmuladd.f64(double %181, double 0x3C98231206424F20, double %922)
  %gep3241 = getelementptr double, ptr %invariant.gep3240, i64 %indvars.iv
  %924 = load double, ptr %gep3241, align 8, !tbaa !5
  %925 = fadd double %923, %924
  store double %925, ptr %gep3241, align 8, !tbaa !5
  %926 = fmul double %148, 0xBD080EA3215BACFB
  %927 = tail call double @llvm.fmuladd.f64(double %147, double 0xBD08E7AFCAA156E7, double %926)
  %928 = tail call double @llvm.fmuladd.f64(double %151, double 0x3FFEFBDEB14F4D9C, double %927)
  %929 = tail call double @llvm.fmuladd.f64(double %153, double 0x3D1B6A9B554348D9, double %928)
  %930 = tail call double @llvm.fmuladd.f64(double %155, double 0x3D1A602CE43D9E05, double %929)
  %931 = tail call double @llvm.fmuladd.f64(double %157, double 0xBCFB4D0EBD5404E2, double %930)
  %932 = tail call double @llvm.fmuladd.f64(double %159, double 0x3CF4EA8393C3B47E, double %931)
  %933 = tail call double @llvm.fmuladd.f64(double %161, double 0x3CF2549348F1AFBD, double %932)
  %934 = tail call double @llvm.fmuladd.f64(double %163, double 0x3FF08654A2D4F75B, double %933)
  %935 = tail call double @llvm.fmuladd.f64(double %165, double 0xBD0538138B737B14, double %934)
  %936 = tail call double @llvm.fmuladd.f64(double %167, double 0xBD05852E3E6E5F29, double %935)
  %937 = tail call double @llvm.fmuladd.f64(double %169, double 0x3CE317C6C3C4B7FB, double %936)
  %938 = tail call double @llvm.fmuladd.f64(double %171, double 0xBCA7907993F5C565, double %937)
  %939 = tail call double @llvm.fmuladd.f64(double %173, double 0xBCB4627DA761F89E, double %938)
  %940 = tail call double @llvm.fmuladd.f64(double %175, double 0xBFE4A7E9CB8A349B, double %939)
  %941 = tail call double @llvm.fmuladd.f64(double %177, double 0xBC9EAEE0B6C3EF3F, double %940)
  %942 = tail call double @llvm.fmuladd.f64(double %179, double 0x3CCD152CD522E8B4, double %941)
  %943 = tail call double @llvm.fmuladd.f64(double %181, double 0x3CC9AF22A9592C7A, double %942)
  %gep3243 = getelementptr double, ptr %invariant.gep3242, i64 %indvars.iv
  %944 = load double, ptr %gep3243, align 8, !tbaa !5
  %945 = fadd double %943, %944
  store double %945, ptr %gep3243, align 8, !tbaa !5
  %946 = fmul double %148, 0x3D0A84FAA72D5A19
  %947 = tail call double @llvm.fmuladd.f64(double %147, double 0xBCEB61ECA327B8E3, double %946)
  %948 = tail call double @llvm.fmuladd.f64(double %151, double 0x3D0A7D9F313861AC, double %947)
  %949 = tail call double @llvm.fmuladd.f64(double %153, double 0x3FFEFBDEB14F4E48, double %948)
  %950 = tail call double @llvm.fmuladd.f64(double %155, double 0x3D036D617FD6379E, double %949)
  %951 = tail call double @llvm.fmuladd.f64(double %157, double 0x3D027FF2929BF693, double %950)
  %952 = tail call double @llvm.fmuladd.f64(double %159, double 0x3CD83F1576963B00, double %951)
  %953 = tail call double @llvm.fmuladd.f64(double %161, double 0xBCF5B52E3E6E5F2B, double %952)
  %954 = tail call double @llvm.fmuladd.f64(double %163, double 0xBCF61B6CB70E5044, double %953)
  %955 = tail call double @llvm.fmuladd.f64(double %165, double 0x3FF08654A2D4F717, double %954)
  %956 = tail call double @llvm.fmuladd.f64(double %167, double 0xBCEFF3CE704FB7B1, double %955)
  %957 = tail call double @llvm.fmuladd.f64(double %169, double 0xBCEE546ACBEB905B, double %956)
  %958 = tail call double @llvm.fmuladd.f64(double %171, double 0xBCA0F732AF6EE969, double %957)
  %959 = tail call double @llvm.fmuladd.f64(double %173, double 0x3CB2FCB85F5C617B, double %958)
  %960 = tail call double @llvm.fmuladd.f64(double %175, double 0x3CC17DC87F455351, double %959)
  %961 = tail call double @llvm.fmuladd.f64(double %177, double 0xBFE4A7E9CB8A3496, double %960)
  %962 = tail call double @llvm.fmuladd.f64(double %179, double 0x3CA791A32887A121, double %961)
  %963 = tail call double @llvm.fmuladd.f64(double %181, double 0x3CB12159E6369CA7, double %962)
  %gep3245 = getelementptr double, ptr %invariant.gep3244, i64 %indvars.iv
  %964 = load double, ptr %gep3245, align 8, !tbaa !5
  %965 = fadd double %963, %964
  store double %965, ptr %gep3245, align 8, !tbaa !5
  %966 = fmul double %148, 0xBCF04E8D6B1B7312
  %967 = tail call double @llvm.fmuladd.f64(double %147, double 0x3D0962BFBF7950FE, double %966)
  %968 = tail call double @llvm.fmuladd.f64(double %151, double 0x3D094FA68F9AC90D, double %967)
  %969 = tail call double @llvm.fmuladd.f64(double %153, double 0x3D0245B3F19FA08F, double %968)
  %970 = tail call double @llvm.fmuladd.f64(double %155, double 0x3FFEFBDEB14F4E48, double %969)
  %971 = tail call double @llvm.fmuladd.f64(double %157, double 0x3D056D8568281090, double %970)
  %972 = tail call double @llvm.fmuladd.f64(double %159, double 0xBCF473CE704FB7B1, double %971)
  %973 = tail call double @llvm.fmuladd.f64(double %161, double 0x3CDC972A6828DF4A, double %972)
  %974 = tail call double @llvm.fmuladd.f64(double %163, double 0xBCF52443B5049A2F, double %973)
  %975 = tail call double @llvm.fmuladd.f64(double %165, double 0xBCEB3EC748C84EAF, double %974)
  %976 = tail call double @llvm.fmuladd.f64(double %167, double 0x3FF08654A2D4F71C, double %975)
  %977 = tail call double @llvm.fmuladd.f64(double %169, double 0xBCF0EA0E4F0ED202, double %976)
  %978 = tail call double @llvm.fmuladd.f64(double %171, double 0xBC957D30E9E11EAA, double %977)
  %979 = tail call double @llvm.fmuladd.f64(double %173, double 0xBCB020EF0806595A, double %978)
  %980 = tail call double @llvm.fmuladd.f64(double %175, double 0x3C995AF6A0FAA3BA, double %979)
  %981 = tail call double @llvm.fmuladd.f64(double %177, double 0xBC7660BBB7D81C3F, double %980)
  %982 = tail call double @llvm.fmuladd.f64(double %179, double 0xBFE4A7E9CB8A3494, double %981)
  %983 = tail call double @llvm.fmuladd.f64(double %181, double 0x3CC2ED1D85004B30, double %982)
  %gep3247 = getelementptr double, ptr %invariant.gep3246, i64 %indvars.iv
  %984 = load double, ptr %gep3247, align 8, !tbaa !5
  %985 = fadd double %983, %984
  store double %985, ptr %gep3247, align 8, !tbaa !5
  %986 = fmul double %148, 0x3D094FBC9693CCC3
  %987 = tail call double @llvm.fmuladd.f64(double %147, double 0x3D09F39F45669420, double %986)
  %988 = tail call double @llvm.fmuladd.f64(double %151, double 0xBCF0CC0D6843A692, double %987)
  %989 = tail call double @llvm.fmuladd.f64(double %153, double 0x3D02CCBAD3CD71B6, double %988)
  %990 = tail call double @llvm.fmuladd.f64(double %155, double 0x3D0684AE6A31C6A8, double %989)
  %991 = tail call double @llvm.fmuladd.f64(double %157, double 0x3FFEFBDEB14F4E48, double %990)
  %992 = tail call double @llvm.fmuladd.f64(double %159, double 0xBCF4BE5204136C30, double %991)
  %993 = tail call double @llvm.fmuladd.f64(double %161, double 0xBCF3302716E6F62B, double %992)
  %994 = tail call double @llvm.fmuladd.f64(double %163, double 0x3CD8A971F372F94D, double %993)
  %995 = tail call double @llvm.fmuladd.f64(double %165, double 0xBCEE0138B737B153, double %994)
  %996 = tail call double @llvm.fmuladd.f64(double %167, double 0xBCF1BE2AED2C7606, double %995)
  %997 = tail call double @llvm.fmuladd.f64(double %169, double 0x3FF08654A2D4F717, double %996)
  %998 = tail call double @llvm.fmuladd.f64(double %171, double 0x3C89DD26D5B75F58, double %997)
  %999 = tail call double @llvm.fmuladd.f64(double %173, double 0xBCAB2729CD0FE620, double %998)
  %1000 = tail call double @llvm.fmuladd.f64(double %175, double 0x3CB60C661FD23425, double %999)
  %1001 = tail call double @llvm.fmuladd.f64(double %177, double 0x3CA4E4D6801EA791, double %1000)
  %1002 = tail call double @llvm.fmuladd.f64(double %179, double 0xBC7BA72BEBF9CA81, double %1001)
  %1003 = tail call double @llvm.fmuladd.f64(double %181, double 0xBFE4A7E9CB8A349A, double %1002)
  %gep3249 = getelementptr double, ptr %invariant.gep3248, i64 %indvars.iv
  %1004 = load double, ptr %gep3249, align 8, !tbaa !5
  %1005 = fadd double %1003, %1004
  store double %1005, ptr %gep3249, align 8, !tbaa !5
  %1006 = fmul double %148, 0x3CE92F44973E98E2
  %1007 = tail call double @llvm.fmuladd.f64(double %147, double 0xBFF9D1E43E6CC16D, double %1006)
  %1008 = tail call double @llvm.fmuladd.f64(double %151, double 0x3CE8D765A1B41E69, double %1007)
  %1009 = tail call double @llvm.fmuladd.f64(double %153, double 0x3CE01DEF58A7A769, double %1008)
  %1010 = tail call double @llvm.fmuladd.f64(double %155, double 0xBCF92CA4F0107010, double %1009)
  %1011 = tail call double @llvm.fmuladd.f64(double %157, double 0xBCFA01E43E6CC1B4, double %1010)
  %1012 = tail call double @llvm.fmuladd.f64(double %159, double 0xB9BED7FFFFFFFFFE, double %1011)
  %1013 = tail call double @llvm.fmuladd.f64(double %161, double 0xB997600000000000, double %1012)
  %1014 = tail call double @llvm.fmuladd.f64(double %163, double 0xB980BFFFFFFFFFFE, double %1013)
  %1015 = tail call double @llvm.fmuladd.f64(double %165, double 0xB9914C0000000000, double %1014)
  %1016 = tail call double @llvm.fmuladd.f64(double %167, double 0x3970000000000000, double %1015)
  %1017 = tail call double @llvm.fmuladd.f64(double %169, double 0x39A0000000000000, double %1016)
  %1018 = tail call double @llvm.fmuladd.f64(double %171, double 0x3FF9D1E43E6CC16D, double %1017)
  %1019 = tail call double @llvm.fmuladd.f64(double %173, double 0xBCE92F44973E98E2, double %1018)
  %1020 = tail call double @llvm.fmuladd.f64(double %175, double 0xBCE8D765A1B41E69, double %1019)
  %1021 = tail call double @llvm.fmuladd.f64(double %177, double 0xBCE01DEF58A7A769, double %1020)
  %1022 = tail call double @llvm.fmuladd.f64(double %179, double 0x3CF95CA4F0107011, double %1021)
  %1023 = tail call double @llvm.fmuladd.f64(double %181, double 0x3CFA31E43E6CC1B5, double %1022)
  %gep3251 = getelementptr double, ptr %invariant.gep3250, i64 %indvars.iv
  %1024 = load double, ptr %gep3251, align 8, !tbaa !5
  %1025 = fadd double %1023, %1024
  store double %1025, ptr %gep3251, align 8, !tbaa !5
  %1026 = fmul double %148, 0xBFF9D1E43E6CC169
  %1027 = tail call double @llvm.fmuladd.f64(double %147, double 0x3CE5FF86AC29A3F8, double %1026)
  %1028 = tail call double @llvm.fmuladd.f64(double %151, double 0x3CE5698EEEC7055C, double %1027)
  %1029 = tail call double @llvm.fmuladd.f64(double %153, double 0xBCFC52AFE82DBFFD, double %1028)
  %1030 = tail call double @llvm.fmuladd.f64(double %155, double 0x3CE075CE4E3221E7, double %1029)
  %1031 = tail call double @llvm.fmuladd.f64(double %157, double 0xBCF9A8946AD5AD4C, double %1030)
  %1032 = tail call double @llvm.fmuladd.f64(double %159, double 0x3C7227B423504AEF, double %1031)
  %1033 = tail call double @llvm.fmuladd.f64(double %161, double 0xBC3E23F1C2D296A5, double %1032)
  %1034 = tail call double @llvm.fmuladd.f64(double %163, double 0xBC3E23F1C2D29CF9, double %1033)
  %1035 = tail call double @llvm.fmuladd.f64(double %165, double 0xBC530A5432687980, double %1034)
  %1036 = tail call double @llvm.fmuladd.f64(double %167, double 0xBC534141BCB7B1E0, double %1035)
  %1037 = tail call double @llvm.fmuladd.f64(double %169, double 0xBC534141BCB7AF1E, double %1036)
  %1038 = tail call double @llvm.fmuladd.f64(double %171, double 0xBCE5AF86AC29A3F8, double %1037)
  %1039 = tail call double @llvm.fmuladd.f64(double %173, double 0x3FF9D1E43E6CC169, double %1038)
  %1040 = tail call double @llvm.fmuladd.f64(double %175, double 0xBCE5698EEEC70559, double %1039)
  %1041 = tail call double @llvm.fmuladd.f64(double %177, double 0x3CFC52AFE82DBFFF, double %1040)
  %1042 = tail call double @llvm.fmuladd.f64(double %179, double 0xBCE075CE4E3221E7, double %1041)
  %1043 = tail call double @llvm.fmuladd.f64(double %181, double 0x3CFA38946AD5AD4B, double %1042)
  %gep3253 = getelementptr double, ptr %invariant.gep3252, i64 %indvars.iv
  %1044 = load double, ptr %gep3253, align 8, !tbaa !5
  %1045 = fadd double %1043, %1044
  store double %1045, ptr %gep3253, align 8, !tbaa !5
  %1046 = fmul double %148, 0x3CE800B5754B32D9
  %1047 = tail call double @llvm.fmuladd.f64(double %147, double 0x3CE8DCA4F0107014, double %1046)
  %1048 = tail call double @llvm.fmuladd.f64(double %151, double 0xBFF9D1E43E6CC164, double %1047)
  %1049 = tail call double @llvm.fmuladd.f64(double %153, double 0xBCFBFD7099D16E59, double %1048)
  %1050 = tail call double @llvm.fmuladd.f64(double %155, double 0xBCFA23551C795BA5, double %1049)
  %1051 = tail call double @llvm.fmuladd.f64(double %157, double 0x3CD86765A1B41E6D, double %1050)
  %1052 = tail call double @llvm.fmuladd.f64(double %159, double 0xBC785D904A774BD5, double %1051)
  %1053 = tail call double @llvm.fmuladd.f64(double %161, double 0x3C5D818C6ADA883D, double %1052)
  %1054 = tail call double @llvm.fmuladd.f64(double %163, double 0x3C5D818C6ADA811C, double %1053)
  %1055 = tail call double @llvm.fmuladd.f64(double %165, double 0x3C6988DC43D64BED, double %1054)
  %1056 = tail call double @llvm.fmuladd.f64(double %167, double 0xBC6B27A40CE11C6E, double %1055)
  %1057 = tail call double @llvm.fmuladd.f64(double %169, double 0xBC8EC9E9033846C9, double %1056)
  %1058 = tail call double @llvm.fmuladd.f64(double %171, double 0xBCE8DCA4F0107014, double %1057)
  %1059 = tail call double @llvm.fmuladd.f64(double %173, double 0xBCE800B5754B32D7, double %1058)
  %1060 = tail call double @llvm.fmuladd.f64(double %175, double 0x3FF9D1E43E6CC164, double %1059)
  %1061 = tail call double @llvm.fmuladd.f64(double %177, double 0x3CFBFD7099D16E5A, double %1060)
  %1062 = tail call double @llvm.fmuladd.f64(double %179, double 0x3CF9F3551C795BA8, double %1061)
  %1063 = tail call double @llvm.fmuladd.f64(double %181, double 0xBCD92765A1B41E6B, double %1062)
  %gep3255 = getelementptr double, ptr %invariant.gep3254, i64 %indvars.iv
  %1064 = load double, ptr %gep3255, align 8, !tbaa !5
  %1065 = fadd double %1063, %1064
  store double %1065, ptr %gep3255, align 8, !tbaa !5
  %1066 = fmul double %148, 0xBCE9BF0282538DD5
  %1067 = tail call double @llvm.fmuladd.f64(double %147, double 0x3CD010D114C0DB4A, double %1066)
  %1068 = tail call double @llvm.fmuladd.f64(double %151, double 0xBCE87BEC810A2317, double %1067)
  %1069 = tail call double @llvm.fmuladd.f64(double %153, double 0xBFF9D1E43E6CC191, double %1068)
  %1070 = tail call double @llvm.fmuladd.f64(double %155, double 0xBCE4241B5B3A7CDD, double %1069)
  %1071 = tail call double @llvm.fmuladd.f64(double %157, double 0xBCE4741B5B3A7CDD, double %1070)
  %1072 = tail call double @llvm.fmuladd.f64(double %159, double 0x3C8AC8C86FCC44A0, double %1071)
  %1073 = tail call double @llvm.fmuladd.f64(double %161, double 0x3C8DA397D166657F, double %1072)
  %1074 = tail call double @llvm.fmuladd.f64(double %163, double 0x3C8DA397D1666583, double %1073)
  %1075 = tail call double @llvm.fmuladd.f64(double %165, double 0xBC8081F6B934226E, double %1074)
  %1076 = tail call double @llvm.fmuladd.f64(double %167, double 0xBC4C700ACB277023, double %1075)
  %1077 = tail call double @llvm.fmuladd.f64(double %169, double 0xBC7B8E015964EDEB, double %1076)
  %1078 = tail call double @llvm.fmuladd.f64(double %171, double 0xBCD010D114C0DB49, double %1077)
  %1079 = tail call double @llvm.fmuladd.f64(double %173, double 0x3CE9BF0282538DD0, double %1078)
  %1080 = tail call double @llvm.fmuladd.f64(double %175, double 0x3CE87BEC810A2317, double %1079)
  %1081 = tail call double @llvm.fmuladd.f64(double %177, double 0x3FF9D1E43E6CC191, double %1080)
  %1082 = tail call double @llvm.fmuladd.f64(double %179, double 0x3CE3D41B5B3A7CE0, double %1081)
  %1083 = tail call double @llvm.fmuladd.f64(double %181, double 0x3CE4741B5B3A7CDD, double %1082)
  %gep3257 = getelementptr double, ptr %invariant.gep3256, i64 %indvars.iv
  %1084 = load double, ptr %gep3257, align 8, !tbaa !5
  %1085 = fadd double %1083, %1084
  store double %1085, ptr %gep3257, align 8, !tbaa !5
  %1086 = fmul double %148, 0x3CC9C6E177DE0848
  %1087 = tail call double @llvm.fmuladd.f64(double %147, double 0xBCE88765A1B41E6C, double %1086)
  %1088 = tail call double @llvm.fmuladd.f64(double %151, double 0xBCE7A765A1B41E6C, double %1087)
  %1089 = tail call double @llvm.fmuladd.f64(double %153, double 0xBCE0F6FD1753B0C4, double %1088)
  %1090 = tail call double @llvm.fmuladd.f64(double %155, double 0xBFF9D1E43E6CC191, double %1089)
  %1091 = tail call double @llvm.fmuladd.f64(double %157, double 0xBCE5F2686842D7DB, double %1090)
  %1092 = tail call double @llvm.fmuladd.f64(double %159, double 0xBC51BD5908653595, double %1091)
  %1093 = tail call double @llvm.fmuladd.f64(double %161, double 0xBC3A014D32C335D8, double %1092)
  %1094 = tail call double @llvm.fmuladd.f64(double %163, double 0xBC3A014D32C32FB8, double %1093)
  %1095 = tail call double @llvm.fmuladd.f64(double %165, double 0xBC893816E5BE808E, double %1094)
  %1096 = tail call double @llvm.fmuladd.f64(double %167, double 0x3C543F5B67DD6915, double %1095)
  %1097 = tail call double @llvm.fmuladd.f64(double %169, double 0x3C543F5B67DD6BB1, double %1096)
  %1098 = tail call double @llvm.fmuladd.f64(double %171, double 0x3CE88765A1B41E6E, double %1097)
  %1099 = tail call double @llvm.fmuladd.f64(double %173, double 0xBCC9C6E177DE0849, double %1098)
  %1100 = tail call double @llvm.fmuladd.f64(double %175, double 0x3CE7D765A1B41E6B, double %1099)
  %1101 = tail call double @llvm.fmuladd.f64(double %177, double 0x3CE0F6FD1753B0C4, double %1100)
  %1102 = tail call double @llvm.fmuladd.f64(double %179, double 0x3FF9D1E43E6CC191, double %1101)
  %1103 = tail call double @llvm.fmuladd.f64(double %181, double 0x3CE5F2686842D7DB, double %1102)
  %gep3259 = getelementptr double, ptr %invariant.gep3258, i64 %indvars.iv
  %1104 = load double, ptr %gep3259, align 8, !tbaa !5
  %1105 = fadd double %1103, %1104
  store double %1105, ptr %gep3259, align 8, !tbaa !5
  %1106 = fmul double %148, 0xBCEA1F44973E98E1
  %1107 = tail call double @llvm.fmuladd.f64(double %147, double 0xBCEC1765A1B41E67, double %1106)
  %1108 = tail call double @llvm.fmuladd.f64(double %151, double 0x3CCD2B9C9C6443CA, double %1107)
  %1109 = tail call double @llvm.fmuladd.f64(double %153, double 0xBCE3341B5B3A7CDC, double %1108)
  %1110 = tail call double @llvm.fmuladd.f64(double %155, double 0xBCE21D6B2ED19149, double %1109)
  %1111 = tail call double @llvm.fmuladd.f64(double %157, double 0xBFF9D1E43E6CC191, double %1110)
  %1112 = tail call double @llvm.fmuladd.f64(double %159, double 0xBC82AD66CB5FD83B, double %1111)
  %1113 = tail call double @llvm.fmuladd.f64(double %161, double 0xBC89EF0795AEA22C, double %1112)
  %1114 = tail call double @llvm.fmuladd.f64(double %163, double 0xBC4EF0795AEA232E, double %1113)
  %1115 = tail call double @llvm.fmuladd.f64(double %165, double 0xBC5646AD27501978, double %1114)
  %1116 = tail call double @llvm.fmuladd.f64(double %167, double 0x3C6AA897374E4045, double %1115)
  %1117 = tail call double @llvm.fmuladd.f64(double %169, double 0x3C6AA897374E4018, double %1116)
  %1118 = tail call double @llvm.fmuladd.f64(double %171, double 0x3CEC4765A1B41E6A, double %1117)
  %1119 = tail call double @llvm.fmuladd.f64(double %173, double 0x3CEA7F44973E98E0, double %1118)
  %1120 = tail call double @llvm.fmuladd.f64(double %175, double 0xBCCD2B9C9C6443C9, double %1119)
  %1121 = tail call double @llvm.fmuladd.f64(double %177, double 0x3CE3341B5B3A7CDE, double %1120)
  %1122 = tail call double @llvm.fmuladd.f64(double %179, double 0x3CE21D6B2ED1914C, double %1121)
  %1123 = tail call double @llvm.fmuladd.f64(double %181, double 0x3FF9D1E43E6CC191, double %1122)
  %gep3261 = getelementptr double, ptr %invariant.gep3260, i64 %indvars.iv
  %1124 = load double, ptr %gep3261, align 8, !tbaa !5
  %1125 = fadd double %1123, %1124
  store double %1125, ptr %gep3261, align 8, !tbaa !5
  %1126 = fmul double %148, 0x3CA83DE51DC0E6B1
  %1127 = tail call double @llvm.fmuladd.f64(double %147, double 0x3FE4A7E9CB8A3494, double %1126)
  %1128 = tail call double @llvm.fmuladd.f64(double %151, double 0xBC9E34622D69C982, double %1127)
  %1129 = tail call double @llvm.fmuladd.f64(double %153, double 0xBCAE8A2AE854D513, double %1128)
  %1130 = tail call double @llvm.fmuladd.f64(double %155, double 0x3CB09A426D1ADB3A, double %1129)
  %1131 = tail call double @llvm.fmuladd.f64(double %157, double 0x3CC33662C674E1E4, double %1130)
  %1132 = tail call double @llvm.fmuladd.f64(double %159, double 0xBFF08654A2D4F756, double %1131)
  %1133 = tail call double @llvm.fmuladd.f64(double %161, double 0xBCF4E04E2DCDEC57, double %1132)
  %1134 = tail call double @llvm.fmuladd.f64(double %163, double 0xBCF3AAAAAAAAAAAB, double %1133)
  %1135 = tail call double @llvm.fmuladd.f64(double %165, double 0xBCE72AAAAAAAAAA8, double %1134)
  %1136 = tail call double @llvm.fmuladd.f64(double %167, double 0x3D043F63A4642756, double %1135)
  %1137 = tail call double @llvm.fmuladd.f64(double %169, double 0x3D0394B8F9B97CA9, double %1136)
  %1138 = tail call double @llvm.fmuladd.f64(double %171, double 0xBFFEFBDEB14F4DAA, double %1137)
  %1139 = tail call double @llvm.fmuladd.f64(double %173, double 0x3D09B45DC0DE51B8, double %1138)
  %1140 = tail call double @llvm.fmuladd.f64(double %175, double 0x3D08D1BE19B028E3, double %1139)
  %1141 = tail call double @llvm.fmuladd.f64(double %177, double 0x3CFE5F4A2FBB3DAA, double %1140)
  %1142 = tail call double @llvm.fmuladd.f64(double %179, double 0xBD1A2CB1FB1DAEB0, double %1141)
  %1143 = tail call double @llvm.fmuladd.f64(double %181, double 0xBD19BC0F93106564, double %1142)
  %gep3263 = getelementptr double, ptr %invariant.gep3262, i64 %indvars.iv
  %1144 = load double, ptr %gep3263, align 8, !tbaa !5
  %1145 = fadd double %1143, %1144
  store double %1145, ptr %gep3263, align 8, !tbaa !5
  %1146 = fmul double %148, 0x3FE4A7E9CB8A349B
  %1147 = tail call double @llvm.fmuladd.f64(double %147, double 0x3CA9156DC73A81A0, double %1146)
  %1148 = tail call double @llvm.fmuladd.f64(double %151, double 0x3CB3ED7C18573421, double %1147)
  %1149 = tail call double @llvm.fmuladd.f64(double %153, double 0x3C7273617E940A5F, double %1148)
  %1150 = tail call double @llvm.fmuladd.f64(double %155, double 0xBC8999CF078525B6, double %1149)
  %1151 = tail call double @llvm.fmuladd.f64(double %157, double 0xBCB71018CCDEBB81, double %1150)
  %1152 = tail call double @llvm.fmuladd.f64(double %159, double 0xBCF414B8F9B97CAA, double %1151)
  %1153 = tail call double @llvm.fmuladd.f64(double %161, double 0xBFF08654A2D4F75B, double %1152)
  %1154 = tail call double @llvm.fmuladd.f64(double %163, double 0xBCF39AF8D8789700, double %1153)
  %1155 = tail call double @llvm.fmuladd.f64(double %165, double 0x3D05A83AA25A713E, double %1154)
  %1156 = tail call double @llvm.fmuladd.f64(double %167, double 0xBCE7EC7FBD7E34A3, double %1155)
  %1157 = tail call double @llvm.fmuladd.f64(double %169, double 0x3D055F1576963AFE, double %1156)
  %1158 = tail call double @llvm.fmuladd.f64(double %171, double 0x3D06F41F8D97F877, double %1157)
  %1159 = tail call double @llvm.fmuladd.f64(double %173, double 0xBFFEFBDEB14F4D98, double %1158)
  %1160 = tail call double @llvm.fmuladd.f64(double %175, double 0x3D0823B40E9CD388, double %1159)
  %1161 = tail call double @llvm.fmuladd.f64(double %177, double 0xBD1BAA230A55AE0F, double %1160)
  %1162 = tail call double @llvm.fmuladd.f64(double %179, double 0x3CFCCEA1BB3C83CA, double %1161)
  %1163 = tail call double @llvm.fmuladd.f64(double %181, double 0xBD19F767A944DB32, double %1162)
  %gep3265 = getelementptr double, ptr %invariant.gep3264, i64 %indvars.iv
  %1164 = load double, ptr %gep3265, align 8, !tbaa !5
  %1165 = fadd double %1163, %1164
  store double %1165, ptr %gep3265, align 8, !tbaa !5
  %1166 = fmul double %148, 0x3CB18F99C07C05C8
  %1167 = tail call double @llvm.fmuladd.f64(double %147, double 0xBC774AA3B009835F, double %1166)
  %1168 = tail call double @llvm.fmuladd.f64(double %151, double 0x3FE4A7E9CB8A3498, double %1167)
  %1169 = tail call double @llvm.fmuladd.f64(double %153, double 0x3CA9FD38292DDC9B, double %1168)
  %1170 = tail call double @llvm.fmuladd.f64(double %155, double 0xBCB9E61E59FC2E99, double %1169)
  %1171 = tail call double @llvm.fmuladd.f64(double %157, double 0xBCB0C7261B82C350, double %1170)
  %1172 = tail call double @llvm.fmuladd.f64(double %159, double 0xBCF48A8393C3B480, double %1171)
  %1173 = tail call double @llvm.fmuladd.f64(double %161, double 0xBCF2549348F1AFC0, double %1172)
  %1174 = tail call double @llvm.fmuladd.f64(double %163, double 0xBFF08654A2D4F75B, double %1173)
  %1175 = tail call double @llvm.fmuladd.f64(double %165, double 0x3D0538138B737B15, double %1174)
  %1176 = tail call double @llvm.fmuladd.f64(double %167, double 0x3D05852E3E6E5F29, double %1175)
  %1177 = tail call double @llvm.fmuladd.f64(double %169, double 0xBCE197C6C3C4B802, double %1176)
  %1178 = tail call double @llvm.fmuladd.f64(double %171, double 0x3D09319702C932C5, double %1177)
  %1179 = tail call double @llvm.fmuladd.f64(double %173, double 0x3D08453A4092DC8E, double %1178)
  %1180 = tail call double @llvm.fmuladd.f64(double %175, double 0xBFFEFBDEB14F4D98, double %1179)
  %1181 = tail call double @llvm.fmuladd.f64(double %177, double 0xBD1B7FE6E4DEE0A3, double %1180)
  %1182 = tail call double @llvm.fmuladd.f64(double %179, double 0xBD1AB13DD17EC493, double %1181)
  %1183 = tail call double @llvm.fmuladd.f64(double %181, double 0x3CF9E39CC9E10B88, double %1182)
  %gep3267 = getelementptr double, ptr %invariant.gep3266, i64 %indvars.iv
  %1184 = load double, ptr %gep3267, align 8, !tbaa !5
  %1185 = fadd double %1183, %1184
  store double %1185, ptr %gep3267, align 8, !tbaa !5
  %1186 = fmul double %148, 0xBCC12CAB67834A70
  %1187 = tail call double @llvm.fmuladd.f64(double %147, double 0x3C80AA02FA4803A4, double %1186)
  %1188 = tail call double @llvm.fmuladd.f64(double %151, double 0xBCC3D0AC662B45FE, double %1187)
  %1189 = tail call double @llvm.fmuladd.f64(double %153, double 0x3FE4A7E9CB8A3492, double %1188)
  %1190 = tail call double @llvm.fmuladd.f64(double %155, double 0x3CA52C6631B8F77F, double %1189)
  %1191 = tail call double @llvm.fmuladd.f64(double %157, double 0x3C9E24E98A05E9A1, double %1190)
  %1192 = tail call double @llvm.fmuladd.f64(double %159, double 0xBCDA7F1576963AFB, double %1191)
  %1193 = tail call double @llvm.fmuladd.f64(double %161, double 0x3CF4F52E3E6E5F2F, double %1192)
  %1194 = tail call double @llvm.fmuladd.f64(double %163, double 0x3CF55B6CB70E5048, double %1193)
  %1195 = tail call double @llvm.fmuladd.f64(double %165, double 0xBFF08654A2D4F717, double %1194)
  %1196 = tail call double @llvm.fmuladd.f64(double %167, double 0x3CEFF3CE704FB7B1, double %1195)
  %1197 = tail call double @llvm.fmuladd.f64(double %169, double 0x3CEF146ACBEB905B, double %1196)
  %1198 = tail call double @llvm.fmuladd.f64(double %171, double 0x3CEC2EB7C235876B, double %1197)
  %1199 = tail call double @llvm.fmuladd.f64(double %173, double 0xBD09EA15B3B00878, double %1198)
  %1200 = tail call double @llvm.fmuladd.f64(double %175, double 0xBD0A5870F2CA0280, double %1199)
  %1201 = tail call double @llvm.fmuladd.f64(double %177, double 0xBFFEFBDEB14F4E48, double %1200)
  %1202 = tail call double @llvm.fmuladd.f64(double %179, double 0xBD043059A53F3A02, double %1201)
  %1203 = tail call double @llvm.fmuladd.f64(double %181, double 0xBD03454734E1B74C, double %1202)
  %gep3269 = getelementptr double, ptr %invariant.gep3268, i64 %indvars.iv
  %1204 = load double, ptr %gep3269, align 8, !tbaa !5
  %1205 = fadd double %1203, %1204
  store double %1205, ptr %gep3269, align 8, !tbaa !5
  %1206 = fmul double %148, 0x3CA641DE100CB2D1
  %1207 = tail call double @llvm.fmuladd.f64(double %147, double 0xBC7995F7A399077F, double %1206)
  %1208 = tail call double @llvm.fmuladd.f64(double %151, double 0xBCB4F5312ABC6654, double %1207)
  %1209 = tail call double @llvm.fmuladd.f64(double %153, double 0xBC84CFA22413F23C, double %1208)
  %1210 = tail call double @llvm.fmuladd.f64(double %155, double 0x3FE4A7E9CB8A3497, double %1209)
  %1211 = tail call double @llvm.fmuladd.f64(double %157, double 0x3C71E70AAB141C80, double %1210)
  %1212 = tail call double @llvm.fmuladd.f64(double %159, double 0x3CF473CE704FB7AF, double %1211)
  %1213 = tail call double @llvm.fmuladd.f64(double %161, double 0xBCDC972A6828DF4A, double %1212)
  %1214 = tail call double @llvm.fmuladd.f64(double %163, double 0x3CF52443B5049A2F, double %1213)
  %1215 = tail call double @llvm.fmuladd.f64(double %165, double 0x3CECBEC748C84EAB, double %1214)
  %1216 = tail call double @llvm.fmuladd.f64(double %167, double 0xBFF08654A2D4F71C, double %1215)
  %1217 = tail call double @llvm.fmuladd.f64(double %169, double 0x3CF0EA0E4F0ED202, double %1216)
  %1218 = tail call double @llvm.fmuladd.f64(double %171, double 0xBD092AFA61D3C23C, double %1217)
  %1219 = tail call double @llvm.fmuladd.f64(double %173, double 0x3CF09E8D6B1B7310, double %1218)
  %1220 = tail call double @llvm.fmuladd.f64(double %175, double 0xBD090AB2F386DB23, double %1219)
  %1221 = tail call double @llvm.fmuladd.f64(double %177, double 0xBD01E5B3F19FA08F, double %1220)
  %1222 = tail call double @llvm.fmuladd.f64(double %179, double 0xBFFEFBDEB14F4E48, double %1221)
  %1223 = tail call double @llvm.fmuladd.f64(double %181, double 0xBD06A54AC5CD9F53, double %1222)
  %gep3271 = getelementptr double, ptr %invariant.gep3270, i64 %indvars.iv
  %1224 = load double, ptr %gep3271, align 8, !tbaa !5
  %1225 = fadd double %1223, %1224
  store double %1225, ptr %gep3271, align 8, !tbaa !5
  %1226 = fmul double %148, 0x3CB96EEF6E012B83
  %1227 = tail call double @llvm.fmuladd.f64(double %147, double 0x3CC5794CC9D41F8E, double %1226)
  %1228 = tail call double @llvm.fmuladd.f64(double %151, double 0x3CA99DE8CF4E0887, double %1227)
  %1229 = tail call double @llvm.fmuladd.f64(double %153, double 0xBC949B6E91DE24A6, double %1228)
  %1230 = tail call double @llvm.fmuladd.f64(double %155, double 0xBCC8E357CB42C088, double %1229)
  %1231 = tail call double @llvm.fmuladd.f64(double %157, double 0x3FE4A7E9CB8A3494, double %1230)
  %1232 = tail call double @llvm.fmuladd.f64(double %159, double 0x3CF51E5204136C2F, double %1231)
  %1233 = tail call double @llvm.fmuladd.f64(double %161, double 0x3CF3F02716E6F629, double %1232)
  %1234 = tail call double @llvm.fmuladd.f64(double %163, double 0xBCD8A971F372F952, double %1233)
  %1235 = tail call double @llvm.fmuladd.f64(double %165, double 0x3CEE0138B737B153, double %1234)
  %1236 = tail call double @llvm.fmuladd.f64(double %167, double 0x3CF1BE2AED2C7606, double %1235)
  %1237 = tail call double @llvm.fmuladd.f64(double %169, double 0xBFF08654A2D4F717, double %1236)
  %1238 = tail call double @llvm.fmuladd.f64(double %171, double 0xBD0B951138D98D7D, double %1237)
  %1239 = tail call double @llvm.fmuladd.f64(double %173, double 0xBD0A2E976ACF9682, double %1238)
  %1240 = tail call double @llvm.fmuladd.f64(double %175, double 0x3CED3CAF7F982616, double %1239)
  %1241 = tail call double @llvm.fmuladd.f64(double %177, double 0xBD02F71750AA300C, double %1240)
  %1242 = tail call double @llvm.fmuladd.f64(double %179, double 0xBD04E8A557879DBD, double %1241)
  %1243 = tail call double @llvm.fmuladd.f64(double %181, double 0xBFFEFBDEB14F4E48, double %1242)
  %gep3273 = getelementptr double, ptr %invariant.gep3272, i64 %indvars.iv
  %1244 = load double, ptr %gep3273, align 8, !tbaa !5
  %1245 = fadd double %1243, %1244
  store double %1245, ptr %gep3273, 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