; LLVM IR from Dynmi/AlexNet :: src (alexnet)

; 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"

%struct.network = type { ptr, ptr, i16, %struct.conv_op, %struct.batch_norm_op, %struct.nonlinear_op, %struct.max_pooling_op, %struct.conv_op, %struct.batch_norm_op, %struct.nonlinear_op, %struct.max_pooling_op, %struct.conv_op, %struct.batch_norm_op, %struct.nonlinear_op, %struct.conv_op, %struct.batch_norm_op, %struct.nonlinear_op, %struct.conv_op, %struct.batch_norm_op, %struct.nonlinear_op, %struct.max_pooling_op, %struct.fc_op, %struct.nonlinear_op, %struct.fc_op, %struct.nonlinear_op, %struct.fc_op }
%struct.conv_op = type { ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i16 }
%struct.batch_norm_op = type { ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, i32, i16, ptr, ptr, ptr }
%struct.max_pooling_op = type { ptr, ptr, ptr, ptr, i32, i32, i32, i32, i32, i32, i32, i32, i32, i16 }
%struct.nonlinear_op = type { ptr, ptr, ptr, ptr, i32, i16 }
%struct.fc_op = type { ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, i32, i32, i16 }

; 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 nounwind willreturn memory(argmem: write)
declare void @llvm.memset.p0.i64(ptr nocapture writeonly, i8, i64, i1 immarg) #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
declare dso_local void @load_alexnet(ptr noundef, ptr noundef) #2

; Function Attrs: nounwind uwtable
define dso_local void @alexnet_init_weights(ptr noundef %0, ptr noundef %1) #2 {
  %3 = alloca ptr, align 8
  %4 = alloca ptr, align 8
  %5 = alloca i32, align 4
  store ptr %0, ptr %3, align 8, !tbaa !5
  store ptr %1, ptr %4, align 8, !tbaa !5
  %6 = load ptr, ptr %4, align 8, !tbaa !5
  %7 = icmp ne ptr %6, null
  br i1 %7, label %8, label %11

8:                                                ; preds = %2
  %9 = load ptr, ptr %3, align 8, !tbaa !5
  %10 = load ptr, ptr %4, align 8, !tbaa !5
  call void @load_alexnet(ptr noundef %9, ptr noundef %10)
  br label %373

11:                                               ; preds = %2
  %12 = load ptr, ptr %3, align 8, !tbaa !5
  %13 = getelementptr inbounds %struct.network, ptr %12, i32 0, i32 3
  %14 = getelementptr inbounds %struct.conv_op, ptr %13, i32 0, i32 4
  %15 = load ptr, ptr %14, align 8, !tbaa !9
  %16 = load ptr, ptr %3, align 8, !tbaa !5
  %17 = getelementptr inbounds %struct.network, ptr %16, i32 0, i32 3
  %18 = getelementptr inbounds %struct.conv_op, ptr %17, i32 0, i32 18
  %19 = load i32, ptr %18, align 4, !tbaa !18
  %20 = load ptr, ptr %3, align 8, !tbaa !5
  %21 = getelementptr inbounds %struct.network, ptr %20, i32 0, i32 3
  %22 = getelementptr inbounds %struct.conv_op, ptr %21, i32 0, i32 19
  %23 = load i32, ptr %22, align 8, !tbaa !19
  call void @gauss_initialization(ptr noundef %15, i32 noundef 23232, i32 noundef %19, i32 noundef %23)
  %24 = load ptr, ptr %3, align 8, !tbaa !5
  %25 = getelementptr inbounds %struct.network, ptr %24, i32 0, i32 7
  %26 = getelementptr inbounds %struct.conv_op, ptr %25, i32 0, i32 4
  %27 = load ptr, ptr %26, align 8, !tbaa !20
  %28 = load ptr, ptr %3, align 8, !tbaa !5
  %29 = getelementptr inbounds %struct.network, ptr %28, i32 0, i32 7
  %30 = getelementptr inbounds %struct.conv_op, ptr %29, i32 0, i32 18
  %31 = load i32, ptr %30, align 4, !tbaa !21
  %32 = load ptr, ptr %3, align 8, !tbaa !5
  %33 = getelementptr inbounds %struct.network, ptr %32, i32 0, i32 7
  %34 = getelementptr inbounds %struct.conv_op, ptr %33, i32 0, i32 19
  %35 = load i32, ptr %34, align 8, !tbaa !22
  call void @gauss_initialization(ptr noundef %27, i32 noundef 307200, i32 noundef %31, i32 noundef %35)
  %36 = load ptr, ptr %3, align 8, !tbaa !5
  %37 = getelementptr inbounds %struct.network, ptr %36, i32 0, i32 11
  %38 = getelementptr inbounds %struct.conv_op, ptr %37, i32 0, i32 4
  %39 = load ptr, ptr %38, align 8, !tbaa !23
  %40 = load ptr, ptr %3, align 8, !tbaa !5
  %41 = getelementptr inbounds %struct.network, ptr %40, i32 0, i32 11
  %42 = getelementptr inbounds %struct.conv_op, ptr %41, i32 0, i32 18
  %43 = load i32, ptr %42, align 4, !tbaa !24
  %44 = load ptr, ptr %3, align 8, !tbaa !5
  %45 = getelementptr inbounds %struct.network, ptr %44, i32 0, i32 11
  %46 = getelementptr inbounds %struct.conv_op, ptr %45, i32 0, i32 19
  %47 = load i32, ptr %46, align 8, !tbaa !25
  call void @gauss_initialization(ptr noundef %39, i32 noundef 663552, i32 noundef %43, i32 noundef %47)
  %48 = load ptr, ptr %3, align 8, !tbaa !5
  %49 = getelementptr inbounds %struct.network, ptr %48, i32 0, i32 14
  %50 = getelementptr inbounds %struct.conv_op, ptr %49, i32 0, i32 4
  %51 = load ptr, ptr %50, align 8, !tbaa !26
  %52 = load ptr, ptr %3, align 8, !tbaa !5
  %53 = getelementptr inbounds %struct.network, ptr %52, i32 0, i32 14
  %54 = getelementptr inbounds %struct.conv_op, ptr %53, i32 0, i32 18
  %55 = load i32, ptr %54, align 4, !tbaa !27
  %56 = load ptr, ptr %3, align 8, !tbaa !5
  %57 = getelementptr inbounds %struct.network, ptr %56, i32 0, i32 14
  %58 = getelementptr inbounds %struct.conv_op, ptr %57, i32 0, i32 19
  %59 = load i32, ptr %58, align 8, !tbaa !28
  call void @gauss_initialization(ptr noundef %51, i32 noundef 884736, i32 noundef %55, i32 noundef %59)
  %60 = load ptr, ptr %3, align 8, !tbaa !5
  %61 = getelementptr inbounds %struct.network, ptr %60, i32 0, i32 17
  %62 = getelementptr inbounds %struct.conv_op, ptr %61, i32 0, i32 4
  %63 = load ptr, ptr %62, align 8, !tbaa !29
  %64 = load ptr, ptr %3, align 8, !tbaa !5
  %65 = getelementptr inbounds %struct.network, ptr %64, i32 0, i32 17
  %66 = getelementptr inbounds %struct.conv_op, ptr %65, i32 0, i32 18
  %67 = load i32, ptr %66, align 4, !tbaa !30
  %68 = load ptr, ptr %3, align 8, !tbaa !5
  %69 = getelementptr inbounds %struct.network, ptr %68, i32 0, i32 17
  %70 = getelementptr inbounds %struct.conv_op, ptr %69, i32 0, i32 19
  %71 = load i32, ptr %70, align 8, !tbaa !31
  call void @gauss_initialization(ptr noundef %63, i32 noundef 589824, i32 noundef %67, i32 noundef %71)
  %72 = load ptr, ptr %3, align 8, !tbaa !5
  %73 = getelementptr inbounds %struct.network, ptr %72, i32 0, i32 21
  %74 = getelementptr inbounds %struct.fc_op, ptr %73, i32 0, i32 4
  %75 = load ptr, ptr %74, align 8, !tbaa !32
  %76 = load ptr, ptr %3, align 8, !tbaa !5
  %77 = getelementptr inbounds %struct.network, ptr %76, i32 0, i32 21
  %78 = getelementptr inbounds %struct.fc_op, ptr %77, i32 0, i32 8
  %79 = load i32, ptr %78, align 8, !tbaa !33
  %80 = load ptr, ptr %3, align 8, !tbaa !5
  %81 = getelementptr inbounds %struct.network, ptr %80, i32 0, i32 21
  %82 = getelementptr inbounds %struct.fc_op, ptr %81, i32 0, i32 9
  %83 = load i32, ptr %82, align 4, !tbaa !34
  call void @gauss_initialization(ptr noundef %75, i32 noundef 37748736, i32 noundef %79, i32 noundef %83)
  %84 = load ptr, ptr %3, align 8, !tbaa !5
  %85 = getelementptr inbounds %struct.network, ptr %84, i32 0, i32 23
  %86 = getelementptr inbounds %struct.fc_op, ptr %85, i32 0, i32 4
  %87 = load ptr, ptr %86, align 8, !tbaa !35
  %88 = load ptr, ptr %3, align 8, !tbaa !5
  %89 = getelementptr inbounds %struct.network, ptr %88, i32 0, i32 23
  %90 = getelementptr inbounds %struct.fc_op, ptr %89, i32 0, i32 8
  %91 = load i32, ptr %90, align 8, !tbaa !36
  %92 = load ptr, ptr %3, align 8, !tbaa !5
  %93 = getelementptr inbounds %struct.network, ptr %92, i32 0, i32 23
  %94 = getelementptr inbounds %struct.fc_op, ptr %93, i32 0, i32 9
  %95 = load i32, ptr %94, align 4, !tbaa !37
  call void @gauss_initialization(ptr noundef %87, i32 noundef 16777216, i32 noundef %91, i32 noundef %95)
  %96 = load ptr, ptr %3, align 8, !tbaa !5
  %97 = getelementptr inbounds %struct.network, ptr %96, i32 0, i32 25
  %98 = getelementptr inbounds %struct.fc_op, ptr %97, i32 0, i32 4
  %99 = load ptr, ptr %98, align 8, !tbaa !38
  %100 = load ptr, ptr %3, align 8, !tbaa !5
  %101 = getelementptr inbounds %struct.network, ptr %100, i32 0, i32 25
  %102 = getelementptr inbounds %struct.fc_op, ptr %101, i32 0, i32 8
  %103 = load i32, ptr %102, align 8, !tbaa !39
  %104 = load ptr, ptr %3, align 8, !tbaa !5
  %105 = getelementptr inbounds %struct.network, ptr %104, i32 0, i32 25
  %106 = getelementptr inbounds %struct.fc_op, ptr %105, i32 0, i32 9
  %107 = load i32, ptr %106, align 4, !tbaa !40
  call void @gauss_initialization(ptr noundef %99, i32 noundef 4096000, i32 noundef %103, i32 noundef %107)
  call void @llvm.lifetime.start.p0(i64 4, ptr %5) #3
  store i32 0, ptr %5, align 4, !tbaa !41
  br label %108

108:                                              ; preds = %119, %11
  %109 = load i32, ptr %5, align 4, !tbaa !41
  %110 = icmp slt i32 %109, 64
  br i1 %110, label %111, label %122

111:                                              ; preds = %108
  %112 = load ptr, ptr %3, align 8, !tbaa !5
  %113 = getelementptr inbounds %struct.network, ptr %112, i32 0, i32 3
  %114 = getelementptr inbounds %struct.conv_op, ptr %113, i32 0, i32 6
  %115 = load ptr, ptr %114, align 8, !tbaa !42
  %116 = load i32, ptr %5, align 4, !tbaa !41
  %117 = sext i32 %116 to i64
  %118 = getelementptr inbounds float, ptr %115, i64 %117
  store float 1.000000e+00, ptr %118, align 4, !tbaa !43
  br label %119

119:                                              ; preds = %111
  %120 = load i32, ptr %5, align 4, !tbaa !41
  %121 = add nsw i32 %120, 1
  store i32 %121, ptr %5, align 4, !tbaa !41
  br label %108, !llvm.loop !45

122:                                              ; preds = %108
  store i32 0, ptr %5, align 4, !tbaa !41
  br label %123

123:                                              ; preds = %134, %122
  %124 = load i32, ptr %5, align 4, !tbaa !41
  %125 = icmp slt i32 %124, 192
  br i1 %125, label %126, label %137

126:                                              ; preds = %123
  %127 = load ptr, ptr %3, align 8, !tbaa !5
  %128 = getelementptr inbounds %struct.network, ptr %127, i32 0, i32 7
  %129 = getelementptr inbounds %struct.conv_op, ptr %128, i32 0, i32 6
  %130 = load ptr, ptr %129, align 8, !tbaa !47
  %131 = load i32, ptr %5, align 4, !tbaa !41
  %132 = sext i32 %131 to i64
  %133 = getelementptr inbounds float, ptr %130, i64 %132
  store float 1.000000e+00, ptr %133, align 4, !tbaa !43
  br label %134

134:                                              ; preds = %126
  %135 = load i32, ptr %5, align 4, !tbaa !41
  %136 = add nsw i32 %135, 1
  store i32 %136, ptr %5, align 4, !tbaa !41
  br label %123, !llvm.loop !48

137:                                              ; preds = %123
  store i32 0, ptr %5, align 4, !tbaa !41
  br label %138

138:                                              ; preds = %149, %137
  %139 = load i32, ptr %5, align 4, !tbaa !41
  %140 = icmp slt i32 %139, 384
  br i1 %140, label %141, label %152

141:                                              ; preds = %138
  %142 = load ptr, ptr %3, align 8, !tbaa !5
  %143 = getelementptr inbounds %struct.network, ptr %142, i32 0, i32 11
  %144 = getelementptr inbounds %struct.conv_op, ptr %143, i32 0, i32 6
  %145 = load ptr, ptr %144, align 8, !tbaa !49
  %146 = load i32, ptr %5, align 4, !tbaa !41
  %147 = sext i32 %146 to i64
  %148 = getelementptr inbounds float, ptr %145, i64 %147
  store float 1.000000e+00, ptr %148, align 4, !tbaa !43
  br label %149

149:                                              ; preds = %141
  %150 = load i32, ptr %5, align 4, !tbaa !41
  %151 = add nsw i32 %150, 1
  store i32 %151, ptr %5, align 4, !tbaa !41
  br label %138, !llvm.loop !50

152:                                              ; preds = %138
  store i32 0, ptr %5, align 4, !tbaa !41
  br label %153

153:                                              ; preds = %164, %152
  %154 = load i32, ptr %5, align 4, !tbaa !41
  %155 = icmp slt i32 %154, 256
  br i1 %155, label %156, label %167

156:                                              ; preds = %153
  %157 = load ptr, ptr %3, align 8, !tbaa !5
  %158 = getelementptr inbounds %struct.network, ptr %157, i32 0, i32 14
  %159 = getelementptr inbounds %struct.conv_op, ptr %158, i32 0, i32 6
  %160 = load ptr, ptr %159, align 8, !tbaa !51
  %161 = load i32, ptr %5, align 4, !tbaa !41
  %162 = sext i32 %161 to i64
  %163 = getelementptr inbounds float, ptr %160, i64 %162
  store float 1.000000e+00, ptr %163, align 4, !tbaa !43
  br label %164

164:                                              ; preds = %156
  %165 = load i32, ptr %5, align 4, !tbaa !41
  %166 = add nsw i32 %165, 1
  store i32 %166, ptr %5, align 4, !tbaa !41
  br label %153, !llvm.loop !52

167:                                              ; preds = %153
  store i32 0, ptr %5, align 4, !tbaa !41
  br label %168

168:                                              ; preds = %179, %167
  %169 = load i32, ptr %5, align 4, !tbaa !41
  %170 = icmp slt i32 %169, 256
  br i1 %170, label %171, label %182

171:                                              ; preds = %168
  %172 = load ptr, ptr %3, align 8, !tbaa !5
  %173 = getelementptr inbounds %struct.network, ptr %172, i32 0, i32 17
  %174 = getelementptr inbounds %struct.conv_op, ptr %173, i32 0, i32 6
  %175 = load ptr, ptr %174, align 8, !tbaa !53
  %176 = load i32, ptr %5, align 4, !tbaa !41
  %177 = sext i32 %176 to i64
  %178 = getelementptr inbounds float, ptr %175, i64 %177
  store float 1.000000e+00, ptr %178, align 4, !tbaa !43
  br label %179

179:                                              ; preds = %171
  %180 = load i32, ptr %5, align 4, !tbaa !41
  %181 = add nsw i32 %180, 1
  store i32 %181, ptr %5, align 4, !tbaa !41
  br label %168, !llvm.loop !54

182:                                              ; preds = %168
  store i32 0, ptr %5, align 4, !tbaa !41
  br label %183

183:                                              ; preds = %194, %182
  %184 = load i32, ptr %5, align 4, !tbaa !41
  %185 = icmp slt i32 %184, 4096
  br i1 %185, label %186, label %197

186:                                              ; preds = %183
  %187 = load ptr, ptr %3, align 8, !tbaa !5
  %188 = getelementptr inbounds %struct.network, ptr %187, i32 0, i32 21
  %189 = getelementptr inbounds %struct.fc_op, ptr %188, i32 0, i32 6
  %190 = load ptr, ptr %189, align 8, !tbaa !55
  %191 = load i32, ptr %5, align 4, !tbaa !41
  %192 = sext i32 %191 to i64
  %193 = getelementptr inbounds float, ptr %190, i64 %192
  store float 1.000000e+00, ptr %193, align 4, !tbaa !43
  br label %194

194:                                              ; preds = %186
  %195 = load i32, ptr %5, align 4, !tbaa !41
  %196 = add nsw i32 %195, 1
  store i32 %196, ptr %5, align 4, !tbaa !41
  br label %183, !llvm.loop !56

197:                                              ; preds = %183
  store i32 0, ptr %5, align 4, !tbaa !41
  br label %198

198:                                              ; preds = %209, %197
  %199 = load i32, ptr %5, align 4, !tbaa !41
  %200 = icmp slt i32 %199, 4096
  br i1 %200, label %201, label %212

201:                                              ; preds = %198
  %202 = load ptr, ptr %3, align 8, !tbaa !5
  %203 = getelementptr inbounds %struct.network, ptr %202, i32 0, i32 23
  %204 = getelementptr inbounds %struct.fc_op, ptr %203, i32 0, i32 6
  %205 = load ptr, ptr %204, align 8, !tbaa !57
  %206 = load i32, ptr %5, align 4, !tbaa !41
  %207 = sext i32 %206 to i64
  %208 = getelementptr inbounds float, ptr %205, i64 %207
  store float 1.000000e+00, ptr %208, align 4, !tbaa !43
  br label %209

209:                                              ; preds = %201
  %210 = load i32, ptr %5, align 4, !tbaa !41
  %211 = add nsw i32 %210, 1
  store i32 %211, ptr %5, align 4, !tbaa !41
  br label %198, !llvm.loop !58

212:                                              ; preds = %198
  store i32 0, ptr %5, align 4, !tbaa !41
  br label %213

213:                                              ; preds = %224, %212
  %214 = load i32, ptr %5, align 4, !tbaa !41
  %215 = icmp slt i32 %214, 1000
  br i1 %215, label %216, label %227

216:                                              ; preds = %213
  %217 = load ptr, ptr %3, align 8, !tbaa !5
  %218 = getelementptr inbounds %struct.network, ptr %217, i32 0, i32 25
  %219 = getelementptr inbounds %struct.fc_op, ptr %218, i32 0, i32 6
  %220 = load ptr, ptr %219, align 8, !tbaa !59
  %221 = load i32, ptr %5, align 4, !tbaa !41
  %222 = sext i32 %221 to i64
  %223 = getelementptr inbounds float, ptr %220, i64 %222
  store float 1.000000e+00, ptr %223, align 4, !tbaa !43
  br label %224

224:                                              ; preds = %216
  %225 = load i32, ptr %5, align 4, !tbaa !41
  %226 = add nsw i32 %225, 1
  store i32 %226, ptr %5, align 4, !tbaa !41
  br label %213, !llvm.loop !60

227:                                              ; preds = %213
  store i32 0, ptr %5, align 4, !tbaa !41
  br label %228

228:                                              ; preds = %243, %227
  %229 = load i32, ptr %5, align 4, !tbaa !41
  %230 = load ptr, ptr %3, align 8, !tbaa !5
  %231 = getelementptr inbounds %struct.network, ptr %230, i32 0, i32 4
  %232 = getelementptr inbounds %struct.batch_norm_op, ptr %231, i32 0, i32 8
  %233 = load i32, ptr %232, align 8, !tbaa !61
  %234 = icmp slt i32 %229, %233
  br i1 %234, label %235, label %246

235:                                              ; preds = %228
  %236 = load ptr, ptr %3, align 8, !tbaa !5
  %237 = getelementptr inbounds %struct.network, ptr %236, i32 0, i32 4
  %238 = getelementptr inbounds %struct.batch_norm_op, ptr %237, i32 0, i32 4
  %239 = load ptr, ptr %238, align 8, !tbaa !62
  %240 = load i32, ptr %5, align 4, !tbaa !41
  %241 = sext i32 %240 to i64
  %242 = getelementptr inbounds float, ptr %239, i64 %241
  store float 1.000000e+00, ptr %242, align 4, !tbaa !43
  br label %243

243:                                              ; preds = %235
  %244 = load i32, ptr %5, align 4, !tbaa !41
  %245 = add nsw i32 %244, 1
  store i32 %245, ptr %5, align 4, !tbaa !41
  br label %228, !llvm.loop !63

246:                                              ; preds = %228
  store i32 0, ptr %5, align 4, !tbaa !41
  br label %247

247:                                              ; preds = %262, %246
  %248 = load i32, ptr %5, align 4, !tbaa !41
  %249 = load ptr, ptr %3, align 8, !tbaa !5
  %250 = getelementptr inbounds %struct.network, ptr %249, i32 0, i32 8
  %251 = getelementptr inbounds %struct.batch_norm_op, ptr %250, i32 0, i32 8
  %252 = load i32, ptr %251, align 8, !tbaa !64
  %253 = icmp slt i32 %248, %252
  br i1 %253, label %254, label %265

254:                                              ; preds = %247
  %255 = load ptr, ptr %3, align 8, !tbaa !5
  %256 = getelementptr inbounds %struct.network, ptr %255, i32 0, i32 8
  %257 = getelementptr inbounds %struct.batch_norm_op, ptr %256, i32 0, i32 4
  %258 = load ptr, ptr %257, align 8, !tbaa !65
  %259 = load i32, ptr %5, align 4, !tbaa !41
  %260 = sext i32 %259 to i64
  %261 = getelementptr inbounds float, ptr %258, i64 %260
  store float 1.000000e+00, ptr %261, align 4, !tbaa !43
  br label %262

262:                                              ; preds = %254
  %263 = load i32, ptr %5, align 4, !tbaa !41
  %264 = add nsw i32 %263, 1
  store i32 %264, ptr %5, align 4, !tbaa !41
  br label %247, !llvm.loop !66

265:                                              ; preds = %247
  store i32 0, ptr %5, align 4, !tbaa !41
  br label %266

266:                                              ; preds = %281, %265
  %267 = load i32, ptr %5, align 4, !tbaa !41
  %268 = load ptr, ptr %3, align 8, !tbaa !5
  %269 = getelementptr inbounds %struct.network, ptr %268, i32 0, i32 12
  %270 = getelementptr inbounds %struct.batch_norm_op, ptr %269, i32 0, i32 8
  %271 = load i32, ptr %270, align 8, !tbaa !67
  %272 = icmp slt i32 %267, %271
  br i1 %272, label %273, label %284

273:                                              ; preds = %266
  %274 = load ptr, ptr %3, align 8, !tbaa !5
  %275 = getelementptr inbounds %struct.network, ptr %274, i32 0, i32 12
  %276 = getelementptr inbounds %struct.batch_norm_op, ptr %275, i32 0, i32 4
  %277 = load ptr, ptr %276, align 8, !tbaa !68
  %278 = load i32, ptr %5, align 4, !tbaa !41
  %279 = sext i32 %278 to i64
  %280 = getelementptr inbounds float, ptr %277, i64 %279
  store float 1.000000e+00, ptr %280, align 4, !tbaa !43
  br label %281

281:                                              ; preds = %273
  %282 = load i32, ptr %5, align 4, !tbaa !41
  %283 = add nsw i32 %282, 1
  store i32 %283, ptr %5, align 4, !tbaa !41
  br label %266, !llvm.loop !69

284:                                              ; preds = %266
  store i32 0, ptr %5, align 4, !tbaa !41
  br label %285

285:                                              ; preds = %300, %284
  %286 = load i32, ptr %5, align 4, !tbaa !41
  %287 = load ptr, ptr %3, align 8, !tbaa !5
  %288 = getelementptr inbounds %struct.network, ptr %287, i32 0, i32 15
  %289 = getelementptr inbounds %struct.batch_norm_op, ptr %288, i32 0, i32 8
  %290 = load i32, ptr %289, align 8, !tbaa !70
  %291 = icmp slt i32 %286, %290
  br i1 %291, label %292, label %303

292:                                              ; preds = %285
  %293 = load ptr, ptr %3, align 8, !tbaa !5
  %294 = getelementptr inbounds %struct.network, ptr %293, i32 0, i32 15
  %295 = getelementptr inbounds %struct.batch_norm_op, ptr %294, i32 0, i32 4
  %296 = load ptr, ptr %295, align 8, !tbaa !71
  %297 = load i32, ptr %5, align 4, !tbaa !41
  %298 = sext i32 %297 to i64
  %299 = getelementptr inbounds float, ptr %296, i64 %298
  store float 1.000000e+00, ptr %299, align 4, !tbaa !43
  br label %300

300:                                              ; preds = %292
  %301 = load i32, ptr %5, align 4, !tbaa !41
  %302 = add nsw i32 %301, 1
  store i32 %302, ptr %5, align 4, !tbaa !41
  br label %285, !llvm.loop !72

303:                                              ; preds = %285
  store i32 0, ptr %5, align 4, !tbaa !41
  br label %304

304:                                              ; preds = %319, %303
  %305 = load i32, ptr %5, align 4, !tbaa !41
  %306 = load ptr, ptr %3, align 8, !tbaa !5
  %307 = getelementptr inbounds %struct.network, ptr %306, i32 0, i32 18
  %308 = getelementptr inbounds %struct.batch_norm_op, ptr %307, i32 0, i32 8
  %309 = load i32, ptr %308, align 8, !tbaa !73
  %310 = icmp slt i32 %305, %309
  br i1 %310, label %311, label %322

311:                                              ; preds = %304
  %312 = load ptr, ptr %3, align 8, !tbaa !5
  %313 = getelementptr inbounds %struct.network, ptr %312, i32 0, i32 18
  %314 = getelementptr inbounds %struct.batch_norm_op, ptr %313, i32 0, i32 4
  %315 = load ptr, ptr %314, align 8, !tbaa !74
  %316 = load i32, ptr %5, align 4, !tbaa !41
  %317 = sext i32 %316 to i64
  %318 = getelementptr inbounds float, ptr %315, i64 %317
  store float 1.000000e+00, ptr %318, align 4, !tbaa !43
  br label %319

319:                                              ; preds = %311
  %320 = load i32, ptr %5, align 4, !tbaa !41
  %321 = add nsw i32 %320, 1
  store i32 %321, ptr %5, align 4, !tbaa !41
  br label %304, !llvm.loop !75

322:                                              ; preds = %304
  %323 = load ptr, ptr %3, align 8, !tbaa !5
  %324 = getelementptr inbounds %struct.network, ptr %323, i32 0, i32 4
  %325 = getelementptr inbounds %struct.batch_norm_op, ptr %324, i32 0, i32 6
  %326 = load ptr, ptr %325, align 8, !tbaa !76
  %327 = load ptr, ptr %3, align 8, !tbaa !5
  %328 = getelementptr inbounds %struct.network, ptr %327, i32 0, i32 4
  %329 = getelementptr inbounds %struct.batch_norm_op, ptr %328, i32 0, i32 8
  %330 = load i32, ptr %329, align 8, !tbaa !61
  %331 = sext i32 %330 to i64
  %332 = mul i64 4, %331
  call void @llvm.memset.p0.i64(ptr align 4 %326, i8 0, i64 %332, i1 false)
  %333 = load ptr, ptr %3, align 8, !tbaa !5
  %334 = getelementptr inbounds %struct.network, ptr %333, i32 0, i32 8
  %335 = getelementptr inbounds %struct.batch_norm_op, ptr %334, i32 0, i32 6
  %336 = load ptr, ptr %335, align 8, !tbaa !77
  %337 = load ptr, ptr %3, align 8, !tbaa !5
  %338 = getelementptr inbounds %struct.network, ptr %337, i32 0, i32 8
  %339 = getelementptr inbounds %struct.batch_norm_op, ptr %338, i32 0, i32 8
  %340 = load i32, ptr %339, align 8, !tbaa !64
  %341 = sext i32 %340 to i64
  %342 = mul i64 4, %341
  call void @llvm.memset.p0.i64(ptr align 4 %336, i8 0, i64 %342, i1 false)
  %343 = load ptr, ptr %3, align 8, !tbaa !5
  %344 = getelementptr inbounds %struct.network, ptr %343, i32 0, i32 12
  %345 = getelementptr inbounds %struct.batch_norm_op, ptr %344, i32 0, i32 6
  %346 = load ptr, ptr %345, align 8, !tbaa !78
  %347 = load ptr, ptr %3, align 8, !tbaa !5
  %348 = getelementptr inbounds %struct.network, ptr %347, i32 0, i32 12
  %349 = getelementptr inbounds %struct.batch_norm_op, ptr %348, i32 0, i32 8
  %350 = load i32, ptr %349, align 8, !tbaa !67
  %351 = sext i32 %350 to i64
  %352 = mul i64 4, %351
  call void @llvm.memset.p0.i64(ptr align 4 %346, i8 0, i64 %352, i1 false)
  %353 = load ptr, ptr %3, align 8, !tbaa !5
  %354 = getelementptr inbounds %struct.network, ptr %353, i32 0, i32 15
  %355 = getelementptr inbounds %struct.batch_norm_op, ptr %354, i32 0, i32 6
  %356 = load ptr, ptr %355, align 8, !tbaa !79
  %357 = load ptr, ptr %3, align 8, !tbaa !5
  %358 = getelementptr inbounds %struct.network, ptr %357, i32 0, i32 15
  %359 = getelementptr inbounds %struct.batch_norm_op, ptr %358, i32 0, i32 8
  %360 = load i32, ptr %359, align 8, !tbaa !70
  %361 = sext i32 %360 to i64
  %362 = mul i64 4, %361
  call void @llvm.memset.p0.i64(ptr align 4 %356, i8 0, i64 %362, i1 false)
  %363 = load ptr, ptr %3, align 8, !tbaa !5
  %364 = getelementptr inbounds %struct.network, ptr %363, i32 0, i32 18
  %365 = getelementptr inbounds %struct.batch_norm_op, ptr %364, i32 0, i32 6
  %366 = load ptr, ptr %365, align 8, !tbaa !80
  %367 = load ptr, ptr %3, align 8, !tbaa !5
  %368 = getelementptr inbounds %struct.network, ptr %367, i32 0, i32 18
  %369 = getelementptr inbounds %struct.batch_norm_op, ptr %368, i32 0, i32 8
  %370 = load i32, ptr %369, align 8, !tbaa !73
  %371 = sext i32 %370 to i64
  %372 = mul i64 4, %371
  call void @llvm.memset.p0.i64(ptr align 4 %366, i8 0, i64 %372, i1 false)
  call void @llvm.lifetime.end.p0(i64 4, ptr %5) #3
  br label %373

373:                                              ; preds = %322, %8
  ret void
}

; Function Attrs: nounwind uwtable
declare hidden void @gauss_initialization(ptr noundef, i32 noundef, i32 noundef, i32 noundef) #2

attributes #0 = { nocallback nofree nosync nounwind willreturn memory(argmem: readwrite) }
attributes #1 = { nocallback nofree nounwind willreturn memory(argmem: write) }
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 = !{!"any pointer", !7, i64 0}
!7 = !{!"omnipotent char", !8, i64 0}
!8 = !{!"Simple C/C++ TBAA"}
!9 = !{!10, !6, i64 56}
!10 = !{!"network", !6, i64 0, !6, i64 8, !11, i64 16, !12, i64 24, !14, i64 144, !15, i64 240, !16, i64 280, !12, i64 352, !14, i64 472, !15, i64 568, !16, i64 608, !12, i64 680, !14, i64 800, !15, i64 896, !12, i64 936, !14, i64 1056, !15, i64 1152, !12, i64 1192, !14, i64 1312, !15, i64 1408, !16, i64 1448, !17, i64 1520, !15, i64 1600, !17, i64 1640, !15, i64 1720, !17, i64 1760}
!11 = !{!"short", !7, i64 0}
!12 = !{!"conv_op", !6, i64 0, !6, i64 8, !6, i64 16, !6, i64 24, !6, i64 32, !6, i64 40, !6, i64 48, !6, i64 56, !6, i64 64, !13, i64 72, !13, i64 76, !13, i64 80, !13, i64 84, !13, i64 88, !13, i64 92, !13, i64 96, !13, i64 100, !13, i64 104, !13, i64 108, !13, i64 112, !11, i64 116}
!13 = !{!"int", !7, i64 0}
!14 = !{!"batch_norm_op", !6, i64 0, !6, i64 8, !6, i64 16, !6, i64 24, !6, i64 32, !6, i64 40, !6, i64 48, !6, i64 56, !13, i64 64, !11, i64 68, !6, i64 72, !6, i64 80, !6, i64 88}
!15 = !{!"nonlinear_op", !6, i64 0, !6, i64 8, !6, i64 16, !6, i64 24, !13, i64 32, !11, i64 36}
!16 = !{!"max_pooling_op", !6, i64 0, !6, i64 8, !6, i64 16, !6, i64 24, !13, i64 32, !13, i64 36, !13, i64 40, !13, i64 44, !13, i64 48, !13, i64 52, !13, i64 56, !13, i64 60, !13, i64 64, !11, i64 68}
!17 = !{!"fc_op", !6, i64 0, !6, i64 8, !6, i64 16, !6, i64 24, !6, i64 32, !6, i64 40, !6, i64 48, !6, i64 56, !13, i64 64, !13, i64 68, !11, i64 72}
!18 = !{!10, !13, i64 132}
!19 = !{!10, !13, i64 136}
!20 = !{!10, !6, i64 384}
!21 = !{!10, !13, i64 460}
!22 = !{!10, !13, i64 464}
!23 = !{!10, !6, i64 712}
!24 = !{!10, !13, i64 788}
!25 = !{!10, !13, i64 792}
!26 = !{!10, !6, i64 968}
!27 = !{!10, !13, i64 1044}
!28 = !{!10, !13, i64 1048}
!29 = !{!10, !6, i64 1224}
!30 = !{!10, !13, i64 1300}
!31 = !{!10, !13, i64 1304}
!32 = !{!10, !6, i64 1552}
!33 = !{!10, !13, i64 1584}
!34 = !{!10, !13, i64 1588}
!35 = !{!10, !6, i64 1672}
!36 = !{!10, !13, i64 1704}
!37 = !{!10, !13, i64 1708}
!38 = !{!10, !6, i64 1792}
!39 = !{!10, !13, i64 1824}
!40 = !{!10, !13, i64 1828}
!41 = !{!13, !13, i64 0}
!42 = !{!10, !6, i64 72}
!43 = !{!44, !44, i64 0}
!44 = !{!"float", !7, i64 0}
!45 = distinct !{!45, !46}
!46 = !{!"llvm.loop.mustprogress"}
!47 = !{!10, !6, i64 400}
!48 = distinct !{!48, !46}
!49 = !{!10, !6, i64 728}
!50 = distinct !{!50, !46}
!51 = !{!10, !6, i64 984}
!52 = distinct !{!52, !46}
!53 = !{!10, !6, i64 1240}
!54 = distinct !{!54, !46}
!55 = !{!10, !6, i64 1568}
!56 = distinct !{!56, !46}
!57 = !{!10, !6, i64 1688}
!58 = distinct !{!58, !46}
!59 = !{!10, !6, i64 1808}
!60 = distinct !{!60, !46}
!61 = !{!10, !13, i64 208}
!62 = !{!10, !6, i64 176}
!63 = distinct !{!63, !46}
!64 = !{!10, !13, i64 536}
!65 = !{!10, !6, i64 504}
!66 = distinct !{!66, !46}
!67 = !{!10, !13, i64 864}
!68 = !{!10, !6, i64 832}
!69 = distinct !{!69, !46}
!70 = !{!10, !13, i64 1120}
!71 = !{!10, !6, i64 1088}
!72 = distinct !{!72, !46}
!73 = !{!10, !13, i64 1376}
!74 = !{!10, !6, i64 1344}
!75 = distinct !{!75, !46}
!76 = !{!10, !6, i64 192}
!77 = !{!10, !6, i64 520}
!78 = !{!10, !6, i64 848}
!79 = !{!10, !6, i64 1104}
!80 = !{!10, !6, i64 1360}


; 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 nounwind willreturn memory(argmem: write)
declare void @llvm.memset.p0.i64(ptr nocapture writeonly, i8, i64, i1 immarg) #0

; Function Attrs: nounwind uwtable
declare dso_local void @load_alexnet(ptr noundef, ptr noundef) local_unnamed_addr #1

; Function Attrs: nounwind uwtable
define dso_local void @alexnet_init_weights(ptr noundef %0, ptr noundef %1) local_unnamed_addr #1 {
  %.not = icmp eq ptr %1, null
  br i1 %.not, label %.preheader104, label %3

3:                                                ; preds = %2
  tail call void @load_alexnet(ptr noundef %0, ptr noundef nonnull %1)
  br label %453

.preheader104:                                    ; preds = %2
  %4 = getelementptr inbounds i8, ptr %0, i64 56
  %5 = load ptr, ptr %4, align 8, !tbaa !5
  %6 = getelementptr inbounds i8, ptr %0, i64 132
  %7 = load i32, ptr %6, align 4, !tbaa !17
  %8 = getelementptr inbounds i8, ptr %0, i64 136
  %9 = load i32, ptr %8, align 8, !tbaa !18
  tail call void @gauss_initialization(ptr noundef %5, i32 noundef 23232, i32 noundef %7, i32 noundef %9)
  %10 = getelementptr inbounds i8, ptr %0, i64 384
  %11 = load ptr, ptr %10, align 8, !tbaa !19
  %12 = getelementptr inbounds i8, ptr %0, i64 460
  %13 = load i32, ptr %12, align 4, !tbaa !20
  %14 = getelementptr inbounds i8, ptr %0, i64 464
  %15 = load i32, ptr %14, align 8, !tbaa !21
  tail call void @gauss_initialization(ptr noundef %11, i32 noundef 307200, i32 noundef %13, i32 noundef %15)
  %16 = getelementptr inbounds i8, ptr %0, i64 712
  %17 = load ptr, ptr %16, align 8, !tbaa !22
  %18 = getelementptr inbounds i8, ptr %0, i64 788
  %19 = load i32, ptr %18, align 4, !tbaa !23
  %20 = getelementptr inbounds i8, ptr %0, i64 792
  %21 = load i32, ptr %20, align 8, !tbaa !24
  tail call void @gauss_initialization(ptr noundef %17, i32 noundef 663552, i32 noundef %19, i32 noundef %21)
  %22 = getelementptr inbounds i8, ptr %0, i64 968
  %23 = load ptr, ptr %22, align 8, !tbaa !25
  %24 = getelementptr inbounds i8, ptr %0, i64 1044
  %25 = load i32, ptr %24, align 4, !tbaa !26
  %26 = getelementptr inbounds i8, ptr %0, i64 1048
  %27 = load i32, ptr %26, align 8, !tbaa !27
  tail call void @gauss_initialization(ptr noundef %23, i32 noundef 884736, i32 noundef %25, i32 noundef %27)
  %28 = getelementptr inbounds i8, ptr %0, i64 1224
  %29 = load ptr, ptr %28, align 8, !tbaa !28
  %30 = getelementptr inbounds i8, ptr %0, i64 1300
  %31 = load i32, ptr %30, align 4, !tbaa !29
  %32 = getelementptr inbounds i8, ptr %0, i64 1304
  %33 = load i32, ptr %32, align 8, !tbaa !30
  tail call void @gauss_initialization(ptr noundef %29, i32 noundef 589824, i32 noundef %31, i32 noundef %33)
  %34 = getelementptr inbounds i8, ptr %0, i64 1552
  %35 = load ptr, ptr %34, align 8, !tbaa !31
  %36 = getelementptr inbounds i8, ptr %0, i64 1584
  %37 = load i32, ptr %36, align 8, !tbaa !32
  %38 = getelementptr inbounds i8, ptr %0, i64 1588
  %39 = load i32, ptr %38, align 4, !tbaa !33
  tail call void @gauss_initialization(ptr noundef %35, i32 noundef 37748736, i32 noundef %37, i32 noundef %39)
  %40 = getelementptr inbounds i8, ptr %0, i64 1672
  %41 = load ptr, ptr %40, align 8, !tbaa !34
  %42 = getelementptr inbounds i8, ptr %0, i64 1704
  %43 = load i32, ptr %42, align 8, !tbaa !35
  %44 = getelementptr inbounds i8, ptr %0, i64 1708
  %45 = load i32, ptr %44, align 4, !tbaa !36
  tail call void @gauss_initialization(ptr noundef %41, i32 noundef 16777216, i32 noundef %43, i32 noundef %45)
  %46 = getelementptr inbounds i8, ptr %0, i64 1792
  %47 = load ptr, ptr %46, align 8, !tbaa !37
  %48 = getelementptr inbounds i8, ptr %0, i64 1824
  %49 = load i32, ptr %48, align 8, !tbaa !38
  %50 = getelementptr inbounds i8, ptr %0, i64 1828
  %51 = load i32, ptr %50, align 4, !tbaa !39
  tail call void @gauss_initialization(ptr noundef %47, i32 noundef 4096000, i32 noundef %49, i32 noundef %51)
  %52 = getelementptr inbounds i8, ptr %0, i64 72
  %53 = load ptr, ptr %52, align 8, !tbaa !40
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %53, align 4, !tbaa !41
  %54 = getelementptr inbounds i8, ptr %53, i64 16
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %54, align 4, !tbaa !41
  %55 = getelementptr inbounds i8, ptr %53, i64 32
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %55, align 4, !tbaa !41
  %56 = getelementptr inbounds i8, ptr %53, i64 48
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %56, align 4, !tbaa !41
  %57 = getelementptr inbounds i8, ptr %53, i64 64
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %57, align 4, !tbaa !41
  %58 = getelementptr inbounds i8, ptr %53, i64 80
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %58, align 4, !tbaa !41
  %59 = getelementptr inbounds i8, ptr %53, i64 96
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %59, align 4, !tbaa !41
  %60 = getelementptr inbounds i8, ptr %53, i64 112
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %60, align 4, !tbaa !41
  %61 = getelementptr inbounds i8, ptr %53, i64 128
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %61, align 4, !tbaa !41
  %62 = getelementptr inbounds i8, ptr %53, i64 144
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %62, align 4, !tbaa !41
  %63 = getelementptr inbounds i8, ptr %53, i64 160
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %63, align 4, !tbaa !41
  %64 = getelementptr inbounds i8, ptr %53, i64 176
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %64, align 4, !tbaa !41
  %65 = getelementptr inbounds i8, ptr %53, i64 192
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %65, align 4, !tbaa !41
  %66 = getelementptr inbounds i8, ptr %53, i64 208
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %66, align 4, !tbaa !41
  %67 = getelementptr inbounds i8, ptr %53, i64 224
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %67, align 4, !tbaa !41
  %68 = getelementptr inbounds i8, ptr %53, i64 240
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %68, align 4, !tbaa !41
  %69 = getelementptr inbounds i8, ptr %0, i64 400
  %70 = load ptr, ptr %69, align 8, !tbaa !43
  %71 = getelementptr inbounds i8, ptr %70, i64 16
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %70, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %71, align 4, !tbaa !41
  %72 = getelementptr inbounds i8, ptr %70, i64 32
  %73 = getelementptr inbounds i8, ptr %70, i64 48
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %72, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %73, align 4, !tbaa !41
  %74 = getelementptr inbounds i8, ptr %70, i64 64
  %75 = getelementptr inbounds i8, ptr %70, i64 80
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %74, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %75, align 4, !tbaa !41
  %76 = getelementptr inbounds i8, ptr %70, i64 96
  %77 = getelementptr inbounds i8, ptr %70, i64 112
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %76, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %77, align 4, !tbaa !41
  %78 = getelementptr inbounds i8, ptr %70, i64 128
  %79 = getelementptr inbounds i8, ptr %70, i64 144
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %78, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %79, align 4, !tbaa !41
  %80 = getelementptr inbounds i8, ptr %70, i64 160
  %81 = getelementptr inbounds i8, ptr %70, i64 176
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %80, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %81, align 4, !tbaa !41
  %82 = getelementptr inbounds i8, ptr %70, i64 192
  %83 = getelementptr inbounds i8, ptr %70, i64 208
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %82, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %83, align 4, !tbaa !41
  %84 = getelementptr inbounds i8, ptr %70, i64 224
  %85 = getelementptr inbounds i8, ptr %70, i64 240
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %84, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %85, align 4, !tbaa !41
  %86 = getelementptr inbounds i8, ptr %70, i64 256
  %87 = getelementptr inbounds i8, ptr %70, i64 272
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %86, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %87, align 4, !tbaa !41
  %88 = getelementptr inbounds i8, ptr %70, i64 288
  %89 = getelementptr inbounds i8, ptr %70, i64 304
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %88, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %89, align 4, !tbaa !41
  %90 = getelementptr inbounds i8, ptr %70, i64 320
  %91 = getelementptr inbounds i8, ptr %70, i64 336
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %90, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %91, align 4, !tbaa !41
  %92 = getelementptr inbounds i8, ptr %70, i64 352
  %93 = getelementptr inbounds i8, ptr %70, i64 368
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %92, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %93, align 4, !tbaa !41
  %94 = getelementptr inbounds i8, ptr %70, i64 384
  %95 = getelementptr inbounds i8, ptr %70, i64 400
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %94, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %95, align 4, !tbaa !41
  %96 = getelementptr inbounds i8, ptr %70, i64 416
  %97 = getelementptr inbounds i8, ptr %70, i64 432
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %96, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %97, align 4, !tbaa !41
  %98 = getelementptr inbounds i8, ptr %70, i64 448
  %99 = getelementptr inbounds i8, ptr %70, i64 464
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %98, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %99, align 4, !tbaa !41
  %100 = getelementptr inbounds i8, ptr %70, i64 480
  %101 = getelementptr inbounds i8, ptr %70, i64 496
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %100, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %101, align 4, !tbaa !41
  %102 = getelementptr inbounds i8, ptr %70, i64 512
  %103 = getelementptr inbounds i8, ptr %70, i64 528
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %102, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %103, align 4, !tbaa !41
  %104 = getelementptr inbounds i8, ptr %70, i64 544
  %105 = getelementptr inbounds i8, ptr %70, i64 560
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %104, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %105, align 4, !tbaa !41
  %106 = getelementptr inbounds i8, ptr %70, i64 576
  %107 = getelementptr inbounds i8, ptr %70, i64 592
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %106, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %107, align 4, !tbaa !41
  %108 = getelementptr inbounds i8, ptr %70, i64 608
  %109 = getelementptr inbounds i8, ptr %70, i64 624
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %108, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %109, align 4, !tbaa !41
  %110 = getelementptr inbounds i8, ptr %70, i64 640
  %111 = getelementptr inbounds i8, ptr %70, i64 656
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %110, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %111, align 4, !tbaa !41
  %112 = getelementptr inbounds i8, ptr %70, i64 672
  %113 = getelementptr inbounds i8, ptr %70, i64 688
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %112, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %113, align 4, !tbaa !41
  %114 = getelementptr inbounds i8, ptr %70, i64 704
  %115 = getelementptr inbounds i8, ptr %70, i64 720
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %114, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %115, align 4, !tbaa !41
  %116 = getelementptr inbounds i8, ptr %70, i64 736
  %117 = getelementptr inbounds i8, ptr %70, i64 752
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %116, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %117, align 4, !tbaa !41
  %118 = getelementptr inbounds i8, ptr %0, i64 728
  %119 = load ptr, ptr %118, align 8, !tbaa !44
  %120 = getelementptr inbounds i8, ptr %119, i64 16
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %119, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %120, align 4, !tbaa !41
  %121 = getelementptr inbounds i8, ptr %119, i64 32
  %122 = getelementptr inbounds i8, ptr %119, i64 48
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %121, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %122, align 4, !tbaa !41
  %123 = getelementptr inbounds i8, ptr %119, i64 64
  %124 = getelementptr inbounds i8, ptr %119, i64 80
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %123, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %124, align 4, !tbaa !41
  %125 = getelementptr inbounds i8, ptr %119, i64 96
  %126 = getelementptr inbounds i8, ptr %119, i64 112
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %125, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %126, align 4, !tbaa !41
  %127 = getelementptr inbounds i8, ptr %119, i64 128
  %128 = getelementptr inbounds i8, ptr %119, i64 144
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %127, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %128, align 4, !tbaa !41
  %129 = getelementptr inbounds i8, ptr %119, i64 160
  %130 = getelementptr inbounds i8, ptr %119, i64 176
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %129, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %130, align 4, !tbaa !41
  %131 = getelementptr inbounds i8, ptr %119, i64 192
  %132 = getelementptr inbounds i8, ptr %119, i64 208
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %131, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %132, align 4, !tbaa !41
  %133 = getelementptr inbounds i8, ptr %119, i64 224
  %134 = getelementptr inbounds i8, ptr %119, i64 240
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %133, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %134, align 4, !tbaa !41
  %135 = getelementptr inbounds i8, ptr %119, i64 256
  %136 = getelementptr inbounds i8, ptr %119, i64 272
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %135, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %136, align 4, !tbaa !41
  %137 = getelementptr inbounds i8, ptr %119, i64 288
  %138 = getelementptr inbounds i8, ptr %119, i64 304
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %137, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %138, align 4, !tbaa !41
  %139 = getelementptr inbounds i8, ptr %119, i64 320
  %140 = getelementptr inbounds i8, ptr %119, i64 336
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %139, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %140, align 4, !tbaa !41
  %141 = getelementptr inbounds i8, ptr %119, i64 352
  %142 = getelementptr inbounds i8, ptr %119, i64 368
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %141, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %142, align 4, !tbaa !41
  %143 = getelementptr inbounds i8, ptr %119, i64 384
  %144 = getelementptr inbounds i8, ptr %119, i64 400
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %143, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %144, align 4, !tbaa !41
  %145 = getelementptr inbounds i8, ptr %119, i64 416
  %146 = getelementptr inbounds i8, ptr %119, i64 432
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %145, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %146, align 4, !tbaa !41
  %147 = getelementptr inbounds i8, ptr %119, i64 448
  %148 = getelementptr inbounds i8, ptr %119, i64 464
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %147, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %148, align 4, !tbaa !41
  %149 = getelementptr inbounds i8, ptr %119, i64 480
  %150 = getelementptr inbounds i8, ptr %119, i64 496
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %149, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %150, align 4, !tbaa !41
  %151 = getelementptr inbounds i8, ptr %119, i64 512
  %152 = getelementptr inbounds i8, ptr %119, i64 528
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %151, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %152, align 4, !tbaa !41
  %153 = getelementptr inbounds i8, ptr %119, i64 544
  %154 = getelementptr inbounds i8, ptr %119, i64 560
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %153, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %154, align 4, !tbaa !41
  %155 = getelementptr inbounds i8, ptr %119, i64 576
  %156 = getelementptr inbounds i8, ptr %119, i64 592
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %155, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %156, align 4, !tbaa !41
  %157 = getelementptr inbounds i8, ptr %119, i64 608
  %158 = getelementptr inbounds i8, ptr %119, i64 624
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %157, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %158, align 4, !tbaa !41
  %159 = getelementptr inbounds i8, ptr %119, i64 640
  %160 = getelementptr inbounds i8, ptr %119, i64 656
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %159, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %160, align 4, !tbaa !41
  %161 = getelementptr inbounds i8, ptr %119, i64 672
  %162 = getelementptr inbounds i8, ptr %119, i64 688
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %161, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %162, align 4, !tbaa !41
  %163 = getelementptr inbounds i8, ptr %119, i64 704
  %164 = getelementptr inbounds i8, ptr %119, i64 720
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %163, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %164, align 4, !tbaa !41
  %165 = getelementptr inbounds i8, ptr %119, i64 736
  %166 = getelementptr inbounds i8, ptr %119, i64 752
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %165, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %166, align 4, !tbaa !41
  %167 = getelementptr inbounds i8, ptr %119, i64 768
  %168 = getelementptr inbounds i8, ptr %119, i64 784
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %167, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %168, align 4, !tbaa !41
  %169 = getelementptr inbounds i8, ptr %119, i64 800
  %170 = getelementptr inbounds i8, ptr %119, i64 816
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %169, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %170, align 4, !tbaa !41
  %171 = getelementptr inbounds i8, ptr %119, i64 832
  %172 = getelementptr inbounds i8, ptr %119, i64 848
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %171, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %172, align 4, !tbaa !41
  %173 = getelementptr inbounds i8, ptr %119, i64 864
  %174 = getelementptr inbounds i8, ptr %119, i64 880
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %173, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %174, align 4, !tbaa !41
  %175 = getelementptr inbounds i8, ptr %119, i64 896
  %176 = getelementptr inbounds i8, ptr %119, i64 912
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %175, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %176, align 4, !tbaa !41
  %177 = getelementptr inbounds i8, ptr %119, i64 928
  %178 = getelementptr inbounds i8, ptr %119, i64 944
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %177, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %178, align 4, !tbaa !41
  %179 = getelementptr inbounds i8, ptr %119, i64 960
  %180 = getelementptr inbounds i8, ptr %119, i64 976
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %179, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %180, align 4, !tbaa !41
  %181 = getelementptr inbounds i8, ptr %119, i64 992
  %182 = getelementptr inbounds i8, ptr %119, i64 1008
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %181, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %182, align 4, !tbaa !41
  %183 = getelementptr inbounds i8, ptr %119, i64 1024
  %184 = getelementptr inbounds i8, ptr %119, i64 1040
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %183, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %184, align 4, !tbaa !41
  %185 = getelementptr inbounds i8, ptr %119, i64 1056
  %186 = getelementptr inbounds i8, ptr %119, i64 1072
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %185, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %186, align 4, !tbaa !41
  %187 = getelementptr inbounds i8, ptr %119, i64 1088
  %188 = getelementptr inbounds i8, ptr %119, i64 1104
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %187, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %188, align 4, !tbaa !41
  %189 = getelementptr inbounds i8, ptr %119, i64 1120
  %190 = getelementptr inbounds i8, ptr %119, i64 1136
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %189, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %190, align 4, !tbaa !41
  %191 = getelementptr inbounds i8, ptr %119, i64 1152
  %192 = getelementptr inbounds i8, ptr %119, i64 1168
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %191, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %192, align 4, !tbaa !41
  %193 = getelementptr inbounds i8, ptr %119, i64 1184
  %194 = getelementptr inbounds i8, ptr %119, i64 1200
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %193, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %194, align 4, !tbaa !41
  %195 = getelementptr inbounds i8, ptr %119, i64 1216
  %196 = getelementptr inbounds i8, ptr %119, i64 1232
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %195, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %196, align 4, !tbaa !41
  %197 = getelementptr inbounds i8, ptr %119, i64 1248
  %198 = getelementptr inbounds i8, ptr %119, i64 1264
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %197, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %198, align 4, !tbaa !41
  %199 = getelementptr inbounds i8, ptr %119, i64 1280
  %200 = getelementptr inbounds i8, ptr %119, i64 1296
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %199, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %200, align 4, !tbaa !41
  %201 = getelementptr inbounds i8, ptr %119, i64 1312
  %202 = getelementptr inbounds i8, ptr %119, i64 1328
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %201, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %202, align 4, !tbaa !41
  %203 = getelementptr inbounds i8, ptr %119, i64 1344
  %204 = getelementptr inbounds i8, ptr %119, i64 1360
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %203, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %204, align 4, !tbaa !41
  %205 = getelementptr inbounds i8, ptr %119, i64 1376
  %206 = getelementptr inbounds i8, ptr %119, i64 1392
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %205, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %206, align 4, !tbaa !41
  %207 = getelementptr inbounds i8, ptr %119, i64 1408
  %208 = getelementptr inbounds i8, ptr %119, i64 1424
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %207, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %208, align 4, !tbaa !41
  %209 = getelementptr inbounds i8, ptr %119, i64 1440
  %210 = getelementptr inbounds i8, ptr %119, i64 1456
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %209, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %210, align 4, !tbaa !41
  %211 = getelementptr inbounds i8, ptr %119, i64 1472
  %212 = getelementptr inbounds i8, ptr %119, i64 1488
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %211, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %212, align 4, !tbaa !41
  %213 = getelementptr inbounds i8, ptr %119, i64 1504
  %214 = getelementptr inbounds i8, ptr %119, i64 1520
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %213, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %214, align 4, !tbaa !41
  %215 = getelementptr inbounds i8, ptr %0, i64 984
  %216 = load ptr, ptr %215, align 8, !tbaa !45
  %217 = getelementptr inbounds i8, ptr %216, i64 16
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %216, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %217, align 4, !tbaa !41
  %218 = getelementptr inbounds i8, ptr %216, i64 32
  %219 = getelementptr inbounds i8, ptr %216, i64 48
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %218, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %219, align 4, !tbaa !41
  %220 = getelementptr inbounds i8, ptr %216, i64 64
  %221 = getelementptr inbounds i8, ptr %216, i64 80
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %220, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %221, align 4, !tbaa !41
  %222 = getelementptr inbounds i8, ptr %216, i64 96
  %223 = getelementptr inbounds i8, ptr %216, i64 112
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %222, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %223, align 4, !tbaa !41
  %224 = getelementptr inbounds i8, ptr %216, i64 128
  %225 = getelementptr inbounds i8, ptr %216, i64 144
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %224, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %225, align 4, !tbaa !41
  %226 = getelementptr inbounds i8, ptr %216, i64 160
  %227 = getelementptr inbounds i8, ptr %216, i64 176
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %226, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %227, align 4, !tbaa !41
  %228 = getelementptr inbounds i8, ptr %216, i64 192
  %229 = getelementptr inbounds i8, ptr %216, i64 208
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %228, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %229, align 4, !tbaa !41
  %230 = getelementptr inbounds i8, ptr %216, i64 224
  %231 = getelementptr inbounds i8, ptr %216, i64 240
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %230, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %231, align 4, !tbaa !41
  %232 = getelementptr inbounds i8, ptr %216, i64 256
  %233 = getelementptr inbounds i8, ptr %216, i64 272
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %232, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %233, align 4, !tbaa !41
  %234 = getelementptr inbounds i8, ptr %216, i64 288
  %235 = getelementptr inbounds i8, ptr %216, i64 304
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %234, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %235, align 4, !tbaa !41
  %236 = getelementptr inbounds i8, ptr %216, i64 320
  %237 = getelementptr inbounds i8, ptr %216, i64 336
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %236, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %237, align 4, !tbaa !41
  %238 = getelementptr inbounds i8, ptr %216, i64 352
  %239 = getelementptr inbounds i8, ptr %216, i64 368
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %238, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %239, align 4, !tbaa !41
  %240 = getelementptr inbounds i8, ptr %216, i64 384
  %241 = getelementptr inbounds i8, ptr %216, i64 400
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %240, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %241, align 4, !tbaa !41
  %242 = getelementptr inbounds i8, ptr %216, i64 416
  %243 = getelementptr inbounds i8, ptr %216, i64 432
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %242, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %243, align 4, !tbaa !41
  %244 = getelementptr inbounds i8, ptr %216, i64 448
  %245 = getelementptr inbounds i8, ptr %216, i64 464
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %244, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %245, align 4, !tbaa !41
  %246 = getelementptr inbounds i8, ptr %216, i64 480
  %247 = getelementptr inbounds i8, ptr %216, i64 496
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %246, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %247, align 4, !tbaa !41
  %248 = getelementptr inbounds i8, ptr %216, i64 512
  %249 = getelementptr inbounds i8, ptr %216, i64 528
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %248, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %249, align 4, !tbaa !41
  %250 = getelementptr inbounds i8, ptr %216, i64 544
  %251 = getelementptr inbounds i8, ptr %216, i64 560
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %250, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %251, align 4, !tbaa !41
  %252 = getelementptr inbounds i8, ptr %216, i64 576
  %253 = getelementptr inbounds i8, ptr %216, i64 592
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %252, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %253, align 4, !tbaa !41
  %254 = getelementptr inbounds i8, ptr %216, i64 608
  %255 = getelementptr inbounds i8, ptr %216, i64 624
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %254, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %255, align 4, !tbaa !41
  %256 = getelementptr inbounds i8, ptr %216, i64 640
  %257 = getelementptr inbounds i8, ptr %216, i64 656
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %256, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %257, align 4, !tbaa !41
  %258 = getelementptr inbounds i8, ptr %216, i64 672
  %259 = getelementptr inbounds i8, ptr %216, i64 688
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %258, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %259, align 4, !tbaa !41
  %260 = getelementptr inbounds i8, ptr %216, i64 704
  %261 = getelementptr inbounds i8, ptr %216, i64 720
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %260, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %261, align 4, !tbaa !41
  %262 = getelementptr inbounds i8, ptr %216, i64 736
  %263 = getelementptr inbounds i8, ptr %216, i64 752
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %262, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %263, align 4, !tbaa !41
  %264 = getelementptr inbounds i8, ptr %216, i64 768
  %265 = getelementptr inbounds i8, ptr %216, i64 784
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %264, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %265, align 4, !tbaa !41
  %266 = getelementptr inbounds i8, ptr %216, i64 800
  %267 = getelementptr inbounds i8, ptr %216, i64 816
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %266, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %267, align 4, !tbaa !41
  %268 = getelementptr inbounds i8, ptr %216, i64 832
  %269 = getelementptr inbounds i8, ptr %216, i64 848
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %268, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %269, align 4, !tbaa !41
  %270 = getelementptr inbounds i8, ptr %216, i64 864
  %271 = getelementptr inbounds i8, ptr %216, i64 880
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %270, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %271, align 4, !tbaa !41
  %272 = getelementptr inbounds i8, ptr %216, i64 896
  %273 = getelementptr inbounds i8, ptr %216, i64 912
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %272, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %273, align 4, !tbaa !41
  %274 = getelementptr inbounds i8, ptr %216, i64 928
  %275 = getelementptr inbounds i8, ptr %216, i64 944
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %274, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %275, align 4, !tbaa !41
  %276 = getelementptr inbounds i8, ptr %216, i64 960
  %277 = getelementptr inbounds i8, ptr %216, i64 976
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %276, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %277, align 4, !tbaa !41
  %278 = getelementptr inbounds i8, ptr %216, i64 992
  %279 = getelementptr inbounds i8, ptr %216, i64 1008
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %278, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %279, align 4, !tbaa !41
  %280 = getelementptr inbounds i8, ptr %0, i64 1240
  %281 = load ptr, ptr %280, align 8, !tbaa !46
  %282 = getelementptr inbounds i8, ptr %281, i64 16
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %281, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %282, align 4, !tbaa !41
  %283 = getelementptr inbounds i8, ptr %281, i64 32
  %284 = getelementptr inbounds i8, ptr %281, i64 48
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %283, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %284, align 4, !tbaa !41
  %285 = getelementptr inbounds i8, ptr %281, i64 64
  %286 = getelementptr inbounds i8, ptr %281, i64 80
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %285, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %286, align 4, !tbaa !41
  %287 = getelementptr inbounds i8, ptr %281, i64 96
  %288 = getelementptr inbounds i8, ptr %281, i64 112
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %287, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %288, align 4, !tbaa !41
  %289 = getelementptr inbounds i8, ptr %281, i64 128
  %290 = getelementptr inbounds i8, ptr %281, i64 144
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %289, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %290, align 4, !tbaa !41
  %291 = getelementptr inbounds i8, ptr %281, i64 160
  %292 = getelementptr inbounds i8, ptr %281, i64 176
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %291, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %292, align 4, !tbaa !41
  %293 = getelementptr inbounds i8, ptr %281, i64 192
  %294 = getelementptr inbounds i8, ptr %281, i64 208
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %293, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %294, align 4, !tbaa !41
  %295 = getelementptr inbounds i8, ptr %281, i64 224
  %296 = getelementptr inbounds i8, ptr %281, i64 240
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %295, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %296, align 4, !tbaa !41
  %297 = getelementptr inbounds i8, ptr %281, i64 256
  %298 = getelementptr inbounds i8, ptr %281, i64 272
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %297, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %298, align 4, !tbaa !41
  %299 = getelementptr inbounds i8, ptr %281, i64 288
  %300 = getelementptr inbounds i8, ptr %281, i64 304
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %299, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %300, align 4, !tbaa !41
  %301 = getelementptr inbounds i8, ptr %281, i64 320
  %302 = getelementptr inbounds i8, ptr %281, i64 336
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %301, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %302, align 4, !tbaa !41
  %303 = getelementptr inbounds i8, ptr %281, i64 352
  %304 = getelementptr inbounds i8, ptr %281, i64 368
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %303, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %304, align 4, !tbaa !41
  %305 = getelementptr inbounds i8, ptr %281, i64 384
  %306 = getelementptr inbounds i8, ptr %281, i64 400
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %305, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %306, align 4, !tbaa !41
  %307 = getelementptr inbounds i8, ptr %281, i64 416
  %308 = getelementptr inbounds i8, ptr %281, i64 432
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %307, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %308, align 4, !tbaa !41
  %309 = getelementptr inbounds i8, ptr %281, i64 448
  %310 = getelementptr inbounds i8, ptr %281, i64 464
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %309, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %310, align 4, !tbaa !41
  %311 = getelementptr inbounds i8, ptr %281, i64 480
  %312 = getelementptr inbounds i8, ptr %281, i64 496
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %311, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %312, align 4, !tbaa !41
  %313 = getelementptr inbounds i8, ptr %281, i64 512
  %314 = getelementptr inbounds i8, ptr %281, i64 528
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %313, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %314, align 4, !tbaa !41
  %315 = getelementptr inbounds i8, ptr %281, i64 544
  %316 = getelementptr inbounds i8, ptr %281, i64 560
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %315, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %316, align 4, !tbaa !41
  %317 = getelementptr inbounds i8, ptr %281, i64 576
  %318 = getelementptr inbounds i8, ptr %281, i64 592
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %317, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %318, align 4, !tbaa !41
  %319 = getelementptr inbounds i8, ptr %281, i64 608
  %320 = getelementptr inbounds i8, ptr %281, i64 624
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %319, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %320, align 4, !tbaa !41
  %321 = getelementptr inbounds i8, ptr %281, i64 640
  %322 = getelementptr inbounds i8, ptr %281, i64 656
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %321, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %322, align 4, !tbaa !41
  %323 = getelementptr inbounds i8, ptr %281, i64 672
  %324 = getelementptr inbounds i8, ptr %281, i64 688
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %323, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %324, align 4, !tbaa !41
  %325 = getelementptr inbounds i8, ptr %281, i64 704
  %326 = getelementptr inbounds i8, ptr %281, i64 720
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %325, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %326, align 4, !tbaa !41
  %327 = getelementptr inbounds i8, ptr %281, i64 736
  %328 = getelementptr inbounds i8, ptr %281, i64 752
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %327, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %328, align 4, !tbaa !41
  %329 = getelementptr inbounds i8, ptr %281, i64 768
  %330 = getelementptr inbounds i8, ptr %281, i64 784
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %329, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %330, align 4, !tbaa !41
  %331 = getelementptr inbounds i8, ptr %281, i64 800
  %332 = getelementptr inbounds i8, ptr %281, i64 816
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %331, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %332, align 4, !tbaa !41
  %333 = getelementptr inbounds i8, ptr %281, i64 832
  %334 = getelementptr inbounds i8, ptr %281, i64 848
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %333, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %334, align 4, !tbaa !41
  %335 = getelementptr inbounds i8, ptr %281, i64 864
  %336 = getelementptr inbounds i8, ptr %281, i64 880
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %335, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %336, align 4, !tbaa !41
  %337 = getelementptr inbounds i8, ptr %281, i64 896
  %338 = getelementptr inbounds i8, ptr %281, i64 912
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %337, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %338, align 4, !tbaa !41
  %339 = getelementptr inbounds i8, ptr %281, i64 928
  %340 = getelementptr inbounds i8, ptr %281, i64 944
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %339, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %340, align 4, !tbaa !41
  %341 = getelementptr inbounds i8, ptr %281, i64 960
  %342 = getelementptr inbounds i8, ptr %281, i64 976
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %341, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %342, align 4, !tbaa !41
  %343 = getelementptr inbounds i8, ptr %281, i64 992
  %344 = getelementptr inbounds i8, ptr %281, i64 1008
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %343, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %344, align 4, !tbaa !41
  %345 = getelementptr inbounds i8, ptr %0, i64 1568
  %346 = load ptr, ptr %345, align 8, !tbaa !47
  br label %vector.body201

vector.body201:                                   ; preds = %vector.body201, %.preheader104
  %index202 = phi i64 [ 0, %.preheader104 ], [ %index.next203.3, %vector.body201 ]
  %347 = getelementptr inbounds float, ptr %346, i64 %index202
  %348 = getelementptr inbounds i8, ptr %347, i64 16
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %347, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %348, align 4, !tbaa !41
  %index.next203 = or disjoint i64 %index202, 8
  %349 = getelementptr inbounds float, ptr %346, i64 %index.next203
  %350 = getelementptr inbounds i8, ptr %349, i64 16
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %349, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %350, align 4, !tbaa !41
  %index.next203.1 = or disjoint i64 %index202, 16
  %351 = getelementptr inbounds float, ptr %346, i64 %index.next203.1
  %352 = getelementptr inbounds i8, ptr %351, i64 16
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %351, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %352, align 4, !tbaa !41
  %index.next203.2 = or disjoint i64 %index202, 24
  %353 = getelementptr inbounds float, ptr %346, i64 %index.next203.2
  %354 = getelementptr inbounds i8, ptr %353, i64 16
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %353, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %354, align 4, !tbaa !41
  %index.next203.3 = add nuw nsw i64 %index202, 32
  %355 = icmp eq i64 %index.next203.3, 4096
  br i1 %355, label %.preheader99, label %vector.body201, !llvm.loop !48

.preheader99:                                     ; preds = %vector.body201
  %356 = getelementptr inbounds i8, ptr %0, i64 1688
  %357 = load ptr, ptr %356, align 8, !tbaa !52
  br label %vector.body208

vector.body208:                                   ; preds = %vector.body208, %.preheader99
  %index209 = phi i64 [ 0, %.preheader99 ], [ %index.next210.3, %vector.body208 ]
  %358 = getelementptr inbounds float, ptr %357, i64 %index209
  %359 = getelementptr inbounds i8, ptr %358, i64 16
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %358, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %359, align 4, !tbaa !41
  %index.next210 = or disjoint i64 %index209, 8
  %360 = getelementptr inbounds float, ptr %357, i64 %index.next210
  %361 = getelementptr inbounds i8, ptr %360, i64 16
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %360, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %361, align 4, !tbaa !41
  %index.next210.1 = or disjoint i64 %index209, 16
  %362 = getelementptr inbounds float, ptr %357, i64 %index.next210.1
  %363 = getelementptr inbounds i8, ptr %362, i64 16
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %362, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %363, align 4, !tbaa !41
  %index.next210.2 = or disjoint i64 %index209, 24
  %364 = getelementptr inbounds float, ptr %357, i64 %index.next210.2
  %365 = getelementptr inbounds i8, ptr %364, i64 16
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %364, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %365, align 4, !tbaa !41
  %index.next210.3 = add nuw nsw i64 %index209, 32
  %366 = icmp eq i64 %index.next210.3, 4096
  br i1 %366, label %.preheader98, label %vector.body208, !llvm.loop !53

.preheader98:                                     ; preds = %vector.body208
  %367 = getelementptr inbounds i8, ptr %0, i64 1808
  %368 = load ptr, ptr %367, align 8, !tbaa !54
  br label %vector.body215

vector.body215:                                   ; preds = %vector.body215, %.preheader98
  %index216 = phi i64 [ 0, %.preheader98 ], [ %index.next217.4, %vector.body215 ]
  %369 = getelementptr inbounds float, ptr %368, i64 %index216
  %370 = getelementptr inbounds i8, ptr %369, i64 16
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %369, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %370, align 4, !tbaa !41
  %371 = getelementptr inbounds float, ptr %368, i64 %index216
  %372 = getelementptr inbounds i8, ptr %371, i64 32
  %373 = getelementptr inbounds i8, ptr %371, i64 48
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %372, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %373, align 4, !tbaa !41
  %374 = getelementptr inbounds float, ptr %368, i64 %index216
  %375 = getelementptr inbounds i8, ptr %374, i64 64
  %376 = getelementptr inbounds i8, ptr %374, i64 80
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %375, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %376, align 4, !tbaa !41
  %377 = getelementptr inbounds float, ptr %368, i64 %index216
  %378 = getelementptr inbounds i8, ptr %377, i64 96
  %379 = getelementptr inbounds i8, ptr %377, i64 112
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %378, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %379, align 4, !tbaa !41
  %380 = getelementptr inbounds float, ptr %368, i64 %index216
  %381 = getelementptr inbounds i8, ptr %380, i64 128
  %382 = getelementptr inbounds i8, ptr %380, i64 144
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %381, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %382, align 4, !tbaa !41
  %index.next217.4 = add nuw nsw i64 %index216, 40
  %383 = icmp eq i64 %index.next217.4, 1000
  br i1 %383, label %.preheader97, label %vector.body215, !llvm.loop !55

.preheader97:                                     ; preds = %vector.body215
  %384 = getelementptr inbounds i8, ptr %0, i64 208
  %385 = load i32, ptr %384, align 8, !tbaa !56
  %386 = icmp sgt i32 %385, 0
  br i1 %386, label %.lr.ph, label %.preheader96

.lr.ph:                                           ; preds = %.preheader97
  %387 = getelementptr inbounds i8, ptr %0, i64 176
  %388 = load ptr, ptr %387, align 8, !tbaa !57
  %wide.trip.count = zext nneg i32 %385 to i64
  %min.iters.check = icmp ult i32 %385, 8
  br i1 %min.iters.check, label %scalar.ph219.preheader, label %vector.ph220

scalar.ph219.preheader:                           ; preds = %middle.block218, %.lr.ph
  %indvars.iv152.ph = phi i64 [ 0, %.lr.ph ], [ %n.vec, %middle.block218 ]
  br label %scalar.ph219

vector.ph220:                                     ; preds = %.lr.ph
  %n.vec = and i64 %wide.trip.count, 2147483640
  br label %vector.body222

vector.body222:                                   ; preds = %vector.body222, %vector.ph220
  %index223 = phi i64 [ 0, %vector.ph220 ], [ %index.next224, %vector.body222 ]
  %389 = getelementptr inbounds float, ptr %388, i64 %index223
  %390 = getelementptr inbounds i8, ptr %389, i64 16
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %389, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %390, align 4, !tbaa !41
  %index.next224 = add nuw i64 %index223, 8
  %391 = icmp eq i64 %index.next224, %n.vec
  br i1 %391, label %middle.block218, label %vector.body222, !llvm.loop !58

middle.block218:                                  ; preds = %vector.body222
  %cmp.n = icmp eq i64 %n.vec, %wide.trip.count
  br i1 %cmp.n, label %.preheader96, label %scalar.ph219.preheader

.preheader96:                                     ; preds = %scalar.ph219, %middle.block218, %.preheader97
  %392 = getelementptr inbounds i8, ptr %0, i64 536
  %393 = load i32, ptr %392, align 8, !tbaa !59
  %394 = icmp sgt i32 %393, 0
  br i1 %394, label %.lr.ph119, label %.preheader95

.lr.ph119:                                        ; preds = %.preheader96
  %395 = getelementptr inbounds i8, ptr %0, i64 504
  %396 = load ptr, ptr %395, align 8, !tbaa !60
  %wide.trip.count159 = zext nneg i32 %393 to i64
  %min.iters.check227 = icmp ult i32 %393, 8
  br i1 %min.iters.check227, label %scalar.ph226.preheader, label %vector.ph228

scalar.ph226.preheader:                           ; preds = %middle.block225, %.lr.ph119
  %indvars.iv156.ph = phi i64 [ 0, %.lr.ph119 ], [ %n.vec230, %middle.block225 ]
  br label %scalar.ph226

vector.ph228:                                     ; preds = %.lr.ph119
  %n.vec230 = and i64 %wide.trip.count159, 2147483640
  br label %vector.body232

vector.body232:                                   ; preds = %vector.body232, %vector.ph228
  %index233 = phi i64 [ 0, %vector.ph228 ], [ %index.next234, %vector.body232 ]
  %397 = getelementptr inbounds float, ptr %396, i64 %index233
  %398 = getelementptr inbounds i8, ptr %397, i64 16
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %397, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %398, align 4, !tbaa !41
  %index.next234 = add nuw i64 %index233, 8
  %399 = icmp eq i64 %index.next234, %n.vec230
  br i1 %399, label %middle.block225, label %vector.body232, !llvm.loop !61

middle.block225:                                  ; preds = %vector.body232
  %cmp.n235 = icmp eq i64 %n.vec230, %wide.trip.count159
  br i1 %cmp.n235, label %.preheader95, label %scalar.ph226.preheader

scalar.ph219:                                     ; preds = %scalar.ph219.preheader, %scalar.ph219
  %indvars.iv152 = phi i64 [ %indvars.iv.next153, %scalar.ph219 ], [ %indvars.iv152.ph, %scalar.ph219.preheader ]
  %400 = getelementptr inbounds float, ptr %388, i64 %indvars.iv152
  store float 1.000000e+00, ptr %400, align 4, !tbaa !41
  %indvars.iv.next153 = add nuw nsw i64 %indvars.iv152, 1
  %exitcond155.not = icmp eq i64 %indvars.iv.next153, %wide.trip.count
  br i1 %exitcond155.not, label %.preheader96, label %scalar.ph219, !llvm.loop !62

.preheader95:                                     ; preds = %scalar.ph226, %middle.block225, %.preheader96
  %401 = getelementptr inbounds i8, ptr %0, i64 864
  %402 = load i32, ptr %401, align 8, !tbaa !63
  %403 = icmp sgt i32 %402, 0
  br i1 %403, label %.lr.ph121, label %.preheader94

.lr.ph121:                                        ; preds = %.preheader95
  %404 = getelementptr inbounds i8, ptr %0, i64 832
  %405 = load ptr, ptr %404, align 8, !tbaa !64
  %wide.trip.count164 = zext nneg i32 %402 to i64
  %min.iters.check238 = icmp ult i32 %402, 8
  br i1 %min.iters.check238, label %scalar.ph237.preheader, label %vector.ph239

scalar.ph237.preheader:                           ; preds = %middle.block236, %.lr.ph121
  %indvars.iv161.ph = phi i64 [ 0, %.lr.ph121 ], [ %n.vec241, %middle.block236 ]
  br label %scalar.ph237

vector.ph239:                                     ; preds = %.lr.ph121
  %n.vec241 = and i64 %wide.trip.count164, 2147483640
  br label %vector.body243

vector.body243:                                   ; preds = %vector.body243, %vector.ph239
  %index244 = phi i64 [ 0, %vector.ph239 ], [ %index.next245, %vector.body243 ]
  %406 = getelementptr inbounds float, ptr %405, i64 %index244
  %407 = getelementptr inbounds i8, ptr %406, i64 16
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %406, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %407, align 4, !tbaa !41
  %index.next245 = add nuw i64 %index244, 8
  %408 = icmp eq i64 %index.next245, %n.vec241
  br i1 %408, label %middle.block236, label %vector.body243, !llvm.loop !65

middle.block236:                                  ; preds = %vector.body243
  %cmp.n246 = icmp eq i64 %n.vec241, %wide.trip.count164
  br i1 %cmp.n246, label %.preheader94, label %scalar.ph237.preheader

scalar.ph226:                                     ; preds = %scalar.ph226.preheader, %scalar.ph226
  %indvars.iv156 = phi i64 [ %indvars.iv.next157, %scalar.ph226 ], [ %indvars.iv156.ph, %scalar.ph226.preheader ]
  %409 = getelementptr inbounds float, ptr %396, i64 %indvars.iv156
  store float 1.000000e+00, ptr %409, align 4, !tbaa !41
  %indvars.iv.next157 = add nuw nsw i64 %indvars.iv156, 1
  %exitcond160.not = icmp eq i64 %indvars.iv.next157, %wide.trip.count159
  br i1 %exitcond160.not, label %.preheader95, label %scalar.ph226, !llvm.loop !66

.preheader94:                                     ; preds = %scalar.ph237, %middle.block236, %.preheader95
  %410 = getelementptr inbounds i8, ptr %0, i64 1120
  %411 = load i32, ptr %410, align 8, !tbaa !67
  %412 = icmp sgt i32 %411, 0
  br i1 %412, label %.lr.ph123, label %.preheader

.lr.ph123:                                        ; preds = %.preheader94
  %413 = getelementptr inbounds i8, ptr %0, i64 1088
  %414 = load ptr, ptr %413, align 8, !tbaa !68
  %wide.trip.count169 = zext nneg i32 %411 to i64
  %min.iters.check249 = icmp ult i32 %411, 8
  br i1 %min.iters.check249, label %scalar.ph248.preheader, label %vector.ph250

scalar.ph248.preheader:                           ; preds = %middle.block247, %.lr.ph123
  %indvars.iv166.ph = phi i64 [ 0, %.lr.ph123 ], [ %n.vec252, %middle.block247 ]
  br label %scalar.ph248

vector.ph250:                                     ; preds = %.lr.ph123
  %n.vec252 = and i64 %wide.trip.count169, 2147483640
  br label %vector.body254

vector.body254:                                   ; preds = %vector.body254, %vector.ph250
  %index255 = phi i64 [ 0, %vector.ph250 ], [ %index.next256, %vector.body254 ]
  %415 = getelementptr inbounds float, ptr %414, i64 %index255
  %416 = getelementptr inbounds i8, ptr %415, i64 16
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %415, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %416, align 4, !tbaa !41
  %index.next256 = add nuw i64 %index255, 8
  %417 = icmp eq i64 %index.next256, %n.vec252
  br i1 %417, label %middle.block247, label %vector.body254, !llvm.loop !69

middle.block247:                                  ; preds = %vector.body254
  %cmp.n257 = icmp eq i64 %n.vec252, %wide.trip.count169
  br i1 %cmp.n257, label %.preheader, label %scalar.ph248.preheader

scalar.ph237:                                     ; preds = %scalar.ph237.preheader, %scalar.ph237
  %indvars.iv161 = phi i64 [ %indvars.iv.next162, %scalar.ph237 ], [ %indvars.iv161.ph, %scalar.ph237.preheader ]
  %418 = getelementptr inbounds float, ptr %405, i64 %indvars.iv161
  store float 1.000000e+00, ptr %418, align 4, !tbaa !41
  %indvars.iv.next162 = add nuw nsw i64 %indvars.iv161, 1
  %exitcond165.not = icmp eq i64 %indvars.iv.next162, %wide.trip.count164
  br i1 %exitcond165.not, label %.preheader94, label %scalar.ph237, !llvm.loop !70

.preheader:                                       ; preds = %scalar.ph248, %middle.block247, %.preheader94
  %419 = getelementptr inbounds i8, ptr %0, i64 1376
  %420 = load i32, ptr %419, align 8, !tbaa !71
  %421 = icmp sgt i32 %420, 0
  br i1 %421, label %.lr.ph125, label %._crit_edge

.lr.ph125:                                        ; preds = %.preheader
  %422 = getelementptr inbounds i8, ptr %0, i64 1344
  %423 = load ptr, ptr %422, align 8, !tbaa !72
  %wide.trip.count174 = zext nneg i32 %420 to i64
  %min.iters.check260 = icmp ult i32 %420, 8
  br i1 %min.iters.check260, label %scalar.ph259.preheader, label %vector.ph261

scalar.ph259.preheader:                           ; preds = %middle.block258, %.lr.ph125
  %indvars.iv171.ph = phi i64 [ 0, %.lr.ph125 ], [ %n.vec263, %middle.block258 ]
  br label %scalar.ph259

vector.ph261:                                     ; preds = %.lr.ph125
  %n.vec263 = and i64 %wide.trip.count174, 2147483640
  br label %vector.body265

vector.body265:                                   ; preds = %vector.body265, %vector.ph261
  %index266 = phi i64 [ 0, %vector.ph261 ], [ %index.next267, %vector.body265 ]
  %424 = getelementptr inbounds float, ptr %423, i64 %index266
  %425 = getelementptr inbounds i8, ptr %424, i64 16
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %424, align 4, !tbaa !41
  store <4 x float> <float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00>, ptr %425, align 4, !tbaa !41
  %index.next267 = add nuw i64 %index266, 8
  %426 = icmp eq i64 %index.next267, %n.vec263
  br i1 %426, label %middle.block258, label %vector.body265, !llvm.loop !73

middle.block258:                                  ; preds = %vector.body265
  %cmp.n268 = icmp eq i64 %n.vec263, %wide.trip.count174
  br i1 %cmp.n268, label %._crit_edge, label %scalar.ph259.preheader

scalar.ph248:                                     ; preds = %scalar.ph248.preheader, %scalar.ph248
  %indvars.iv166 = phi i64 [ %indvars.iv.next167, %scalar.ph248 ], [ %indvars.iv166.ph, %scalar.ph248.preheader ]
  %427 = getelementptr inbounds float, ptr %414, i64 %indvars.iv166
  store float 1.000000e+00, ptr %427, align 4, !tbaa !41
  %indvars.iv.next167 = add nuw nsw i64 %indvars.iv166, 1
  %exitcond170.not = icmp eq i64 %indvars.iv.next167, %wide.trip.count169
  br i1 %exitcond170.not, label %.preheader, label %scalar.ph248, !llvm.loop !74

scalar.ph259:                                     ; preds = %scalar.ph259.preheader, %scalar.ph259
  %indvars.iv171 = phi i64 [ %indvars.iv.next172, %scalar.ph259 ], [ %indvars.iv171.ph, %scalar.ph259.preheader ]
  %428 = getelementptr inbounds float, ptr %423, i64 %indvars.iv171
  store float 1.000000e+00, ptr %428, align 4, !tbaa !41
  %indvars.iv.next172 = add nuw nsw i64 %indvars.iv171, 1
  %exitcond175.not = icmp eq i64 %indvars.iv.next172, %wide.trip.count174
  br i1 %exitcond175.not, label %._crit_edge, label %scalar.ph259, !llvm.loop !75

._crit_edge:                                      ; preds = %scalar.ph259, %middle.block258, %.preheader
  %429 = getelementptr inbounds i8, ptr %0, i64 192
  %430 = load ptr, ptr %429, align 8, !tbaa !76
  %431 = sext i32 %385 to i64
  %432 = shl nsw i64 %431, 2
  tail call void @llvm.memset.p0.i64(ptr align 4 %430, i8 0, i64 %432, i1 false)
  %433 = getelementptr inbounds i8, ptr %0, i64 520
  %434 = load ptr, ptr %433, align 8, !tbaa !77
  %435 = load i32, ptr %392, align 8, !tbaa !59
  %436 = sext i32 %435 to i64
  %437 = shl nsw i64 %436, 2
  tail call void @llvm.memset.p0.i64(ptr align 4 %434, i8 0, i64 %437, i1 false)
  %438 = getelementptr inbounds i8, ptr %0, i64 848
  %439 = load ptr, ptr %438, align 8, !tbaa !78
  %440 = load i32, ptr %401, align 8, !tbaa !63
  %441 = sext i32 %440 to i64
  %442 = shl nsw i64 %441, 2
  tail call void @llvm.memset.p0.i64(ptr align 4 %439, i8 0, i64 %442, i1 false)
  %443 = getelementptr inbounds i8, ptr %0, i64 1104
  %444 = load ptr, ptr %443, align 8, !tbaa !79
  %445 = load i32, ptr %410, align 8, !tbaa !67
  %446 = sext i32 %445 to i64
  %447 = shl nsw i64 %446, 2
  tail call void @llvm.memset.p0.i64(ptr align 4 %444, i8 0, i64 %447, i1 false)
  %448 = getelementptr inbounds i8, ptr %0, i64 1360
  %449 = load ptr, ptr %448, align 8, !tbaa !80
  %450 = load i32, ptr %419, align 8, !tbaa !71
  %451 = sext i32 %450 to i64
  %452 = shl nsw i64 %451, 2
  tail call void @llvm.memset.p0.i64(ptr align 4 %449, i8 0, i64 %452, i1 false)
  br label %453

453:                                              ; preds = %._crit_edge, %3
  ret void
}

; Function Attrs: nounwind uwtable
declare hidden void @gauss_initialization(ptr noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #1

attributes #0 = { mustprogress nocallback nofree nounwind willreturn memory(argmem: write) }
attributes #1 = { 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" }

!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, !7, i64 56}
!6 = !{!"network", !7, i64 0, !7, i64 8, !10, i64 16, !11, i64 24, !13, i64 144, !14, i64 240, !15, i64 280, !11, i64 352, !13, i64 472, !14, i64 568, !15, i64 608, !11, i64 680, !13, i64 800, !14, i64 896, !11, i64 936, !13, i64 1056, !14, i64 1152, !11, i64 1192, !13, i64 1312, !14, i64 1408, !15, i64 1448, !16, i64 1520, !14, i64 1600, !16, i64 1640, !14, i64 1720, !16, i64 1760}
!7 = !{!"any pointer", !8, i64 0}
!8 = !{!"omnipotent char", !9, i64 0}
!9 = !{!"Simple C/C++ TBAA"}
!10 = !{!"short", !8, i64 0}
!11 = !{!"conv_op", !7, i64 0, !7, i64 8, !7, i64 16, !7, i64 24, !7, i64 32, !7, i64 40, !7, i64 48, !7, i64 56, !7, i64 64, !12, i64 72, !12, i64 76, !12, i64 80, !12, i64 84, !12, i64 88, !12, i64 92, !12, i64 96, !12, i64 100, !12, i64 104, !12, i64 108, !12, i64 112, !10, i64 116}
!12 = !{!"int", !8, i64 0}
!13 = !{!"batch_norm_op", !7, i64 0, !7, i64 8, !7, i64 16, !7, i64 24, !7, i64 32, !7, i64 40, !7, i64 48, !7, i64 56, !12, i64 64, !10, i64 68, !7, i64 72, !7, i64 80, !7, i64 88}
!14 = !{!"nonlinear_op", !7, i64 0, !7, i64 8, !7, i64 16, !7, i64 24, !12, i64 32, !10, i64 36}
!15 = !{!"max_pooling_op", !7, i64 0, !7, i64 8, !7, i64 16, !7, i64 24, !12, i64 32, !12, i64 36, !12, i64 40, !12, i64 44, !12, i64 48, !12, i64 52, !12, i64 56, !12, i64 60, !12, i64 64, !10, i64 68}
!16 = !{!"fc_op", !7, i64 0, !7, i64 8, !7, i64 16, !7, i64 24, !7, i64 32, !7, i64 40, !7, i64 48, !7, i64 56, !12, i64 64, !12, i64 68, !10, i64 72}
!17 = !{!6, !12, i64 132}
!18 = !{!6, !12, i64 136}
!19 = !{!6, !7, i64 384}
!20 = !{!6, !12, i64 460}
!21 = !{!6, !12, i64 464}
!22 = !{!6, !7, i64 712}
!23 = !{!6, !12, i64 788}
!24 = !{!6, !12, i64 792}
!25 = !{!6, !7, i64 968}
!26 = !{!6, !12, i64 1044}
!27 = !{!6, !12, i64 1048}
!28 = !{!6, !7, i64 1224}
!29 = !{!6, !12, i64 1300}
!30 = !{!6, !12, i64 1304}
!31 = !{!6, !7, i64 1552}
!32 = !{!6, !12, i64 1584}
!33 = !{!6, !12, i64 1588}
!34 = !{!6, !7, i64 1672}
!35 = !{!6, !12, i64 1704}
!36 = !{!6, !12, i64 1708}
!37 = !{!6, !7, i64 1792}
!38 = !{!6, !12, i64 1824}
!39 = !{!6, !12, i64 1828}
!40 = !{!6, !7, i64 72}
!41 = !{!42, !42, i64 0}
!42 = !{!"float", !8, i64 0}
!43 = !{!6, !7, i64 400}
!44 = !{!6, !7, i64 728}
!45 = !{!6, !7, i64 984}
!46 = !{!6, !7, i64 1240}
!47 = !{!6, !7, i64 1568}
!48 = distinct !{!48, !49, !50, !51}
!49 = !{!"llvm.loop.mustprogress"}
!50 = !{!"llvm.loop.isvectorized", i32 1}
!51 = !{!"llvm.loop.unroll.runtime.disable"}
!52 = !{!6, !7, i64 1688}
!53 = distinct !{!53, !49, !50, !51}
!54 = !{!6, !7, i64 1808}
!55 = distinct !{!55, !49, !50, !51}
!56 = !{!6, !12, i64 208}
!57 = !{!6, !7, i64 176}
!58 = distinct !{!58, !49, !50, !51}
!59 = !{!6, !12, i64 536}
!60 = !{!6, !7, i64 504}
!61 = distinct !{!61, !49, !50, !51}
!62 = distinct !{!62, !49, !51, !50}
!63 = !{!6, !12, i64 864}
!64 = !{!6, !7, i64 832}
!65 = distinct !{!65, !49, !50, !51}
!66 = distinct !{!66, !49, !51, !50}
!67 = !{!6, !12, i64 1120}
!68 = !{!6, !7, i64 1088}
!69 = distinct !{!69, !49, !50, !51}
!70 = distinct !{!70, !49, !51, !50}
!71 = !{!6, !12, i64 1376}
!72 = !{!6, !7, i64 1344}
!73 = distinct !{!73, !49, !50, !51}
!74 = distinct !{!74, !49, !51, !50}
!75 = distinct !{!75, !49, !51, !50}
!76 = !{!6, !7, i64 192}
!77 = !{!6, !7, i64 520}
!78 = !{!6, !7, i64 848}
!79 = !{!6, !7, i64 1104}
!80 = !{!6, !7, i64 1360}


; Effective O3 passes: EarlyCSEPass,GVNPass,GlobalOptPass,IPSCCPPass,IndVarSimplifyPass,InferFunctionAttrsPass,InstCombinePass,JumpThreadingPass,LCSSAPass,LICMPass,LoopLoadEliminationPass,LoopRotatePass,LoopSimplifyPass,LoopUnrollPass,LoopVectorizePass,SLPVectorizerPass,SROAPass,SimplifyCFGPass,TailCallElimPass