; LLVM IR from tensorflow/tflite-micro :: tensorflow/lite/micro/memory_planner (linear_memory_planner_test)

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

%"class.tflite::LinearMemoryPlanner" = type { %"class.tflite::MicroMemoryPlanner", [1024 x i64], i32, i64 }
%"class.tflite::MicroMemoryPlanner" = type { ptr }

@_ZN10micro_test12tests_passedE = external dso_local global i32, align 4
@_ZN10micro_test12tests_failedE = external dso_local global i32, align 4
@_ZN10micro_test16is_test_completeE = external dso_local global i8, align 1
@_ZN10micro_test13did_test_failE = external dso_local global i8, align 1
@.str = external hidden unnamed_addr constant [19 x i8], align 1
@.str.1 = external hidden unnamed_addr constant [68 x i8], align 1
@.str.2 = external hidden unnamed_addr constant [124 x i8], align 1
@.str.3 = external hidden unnamed_addr constant [68 x i8], align 1
@.str.4 = external hidden unnamed_addr constant [30 x i8], align 1
@.str.5 = external hidden unnamed_addr constant [48 x i8], align 1
@.str.6 = external hidden unnamed_addr constant [68 x i8], align 1
@.str.7 = external hidden unnamed_addr constant [68 x i8], align 1
@.str.8 = external hidden unnamed_addr constant [85 x i8], align 1
@.str.9 = external hidden unnamed_addr constant [85 x i8], align 1
@.str.10 = external hidden unnamed_addr constant [79 x i8], align 1
@.str.11 = external hidden unnamed_addr constant [79 x i8], align 1
@.str.12 = external hidden unnamed_addr constant [39 x i8], align 1
@.str.13 = external hidden unnamed_addr constant [39 x i8], align 1
@.str.14 = external hidden unnamed_addr constant [79 x i8], align 1
@.str.15 = external hidden unnamed_addr constant [79 x i8], align 1
@.str.16 = external hidden unnamed_addr constant [40 x i8], align 1
@.str.17 = external hidden unnamed_addr constant [40 x i8], align 1
@.str.18 = external hidden unnamed_addr constant [26 x i8], align 1
@.str.19 = external hidden unnamed_addr constant [82 x i8], align 1
@.str.20 = external hidden unnamed_addr constant [82 x i8], align 1
@.str.21 = external hidden unnamed_addr constant [33 x i8], align 1
@.str.22 = external hidden unnamed_addr constant [71 x i8], align 1
@.str.23 = external hidden unnamed_addr constant [71 x i8], align 1
@.str.24 = external hidden unnamed_addr constant [69 x i8], align 1
@.str.25 = external hidden unnamed_addr constant [69 x i8], align 1
@.str.26 = external hidden unnamed_addr constant [71 x i8], align 1
@.str.27 = external hidden unnamed_addr constant [71 x i8], align 1
@.str.28 = external hidden unnamed_addr constant [72 x i8], align 1
@.str.29 = external hidden unnamed_addr constant [72 x i8], align 1
@.str.30 = external hidden unnamed_addr constant [72 x i8], align 1
@.str.31 = external hidden unnamed_addr constant [72 x i8], align 1
@.str.32 = external hidden unnamed_addr constant [72 x i8], align 1
@.str.33 = external hidden unnamed_addr constant [72 x i8], align 1
@.str.34 = external hidden unnamed_addr constant [72 x i8], align 1
@.str.35 = external hidden unnamed_addr constant [72 x i8], align 1
@.str.36 = external hidden unnamed_addr constant [72 x i8], align 1
@.str.37 = external hidden unnamed_addr constant [72 x i8], align 1
@.str.38 = external hidden unnamed_addr constant [72 x i8], align 1
@.str.39 = external hidden unnamed_addr constant [72 x i8], align 1
@.str.40 = external hidden unnamed_addr constant [72 x i8], align 1
@.str.41 = external hidden unnamed_addr constant [72 x i8], align 1
@.str.42 = external hidden unnamed_addr constant [72 x i8], align 1
@.str.43 = external hidden unnamed_addr constant [72 x i8], align 1
@.str.44 = external hidden unnamed_addr constant [72 x i8], align 1
@.str.45 = external hidden unnamed_addr constant [72 x i8], align 1
@.str.46 = external hidden unnamed_addr constant [72 x i8], align 1
@.str.47 = external hidden unnamed_addr constant [72 x i8], align 1
@.str.48 = external hidden unnamed_addr constant [72 x i8], align 1
@.str.49 = external hidden unnamed_addr constant [72 x i8], align 1
@.str.50 = external hidden unnamed_addr constant [72 x i8], align 1
@.str.51 = external hidden unnamed_addr constant [72 x i8], align 1
@.str.52 = external hidden unnamed_addr constant [72 x i8], align 1
@.str.53 = external hidden unnamed_addr constant [72 x i8], align 1
@.str.54 = external hidden unnamed_addr constant [72 x i8], align 1
@.str.55 = external hidden unnamed_addr constant [72 x i8], align 1
@.str.56 = external hidden unnamed_addr constant [72 x i8], align 1
@.str.57 = external hidden unnamed_addr constant [72 x i8], align 1
@.str.58 = external hidden unnamed_addr constant [72 x i8], align 1
@.str.59 = external hidden unnamed_addr constant [72 x i8], align 1
@.str.60 = external hidden unnamed_addr constant [72 x i8], align 1
@.str.61 = external hidden unnamed_addr constant [72 x i8], align 1
@.str.62 = external hidden unnamed_addr constant [71 x i8], align 1
@.str.63 = external hidden unnamed_addr constant [71 x i8], align 1
@.str.64 = external hidden unnamed_addr constant [70 x i8], align 1
@.str.65 = external hidden unnamed_addr constant [70 x i8], align 1
@.str.66 = external hidden unnamed_addr constant [70 x i8], align 1
@.str.67 = external hidden unnamed_addr constant [70 x i8], align 1
@.str.68 = external hidden unnamed_addr constant [71 x i8], align 1
@.str.69 = external hidden unnamed_addr constant [71 x i8], align 1
@.str.70 = external hidden unnamed_addr constant [71 x i8], align 1
@.str.71 = external hidden unnamed_addr constant [71 x i8], align 1
@.str.72 = external hidden unnamed_addr constant [71 x i8], align 1
@.str.73 = external hidden unnamed_addr constant [71 x i8], align 1
@.str.74 = external hidden unnamed_addr constant [70 x i8], align 1
@.str.75 = external hidden unnamed_addr constant [70 x i8], align 1
@.str.76 = external hidden unnamed_addr constant [71 x i8], align 1
@.str.77 = external hidden unnamed_addr constant [71 x i8], align 1
@.str.78 = external hidden unnamed_addr constant [71 x i8], align 1
@.str.79 = external hidden unnamed_addr constant [71 x i8], align 1
@.str.80 = external hidden unnamed_addr constant [71 x i8], align 1
@.str.81 = external hidden unnamed_addr constant [71 x i8], align 1
@.str.82 = external hidden unnamed_addr constant [89 x i8], align 1
@.str.83 = external hidden unnamed_addr constant [89 x i8], align 1
@.str.84 = external hidden unnamed_addr constant [19 x i8], align 1
@.str.85 = external hidden unnamed_addr constant [24 x i8], align 1
@.str.86 = external hidden unnamed_addr constant [25 x i8], align 1

; Function Attrs: mustprogress norecurse uwtable
define dso_local noundef i32 @main(i32 noundef %0, ptr noundef %1) #0 personality ptr @__gxx_personality_v0 {
  %3 = alloca i32, align 4
  %4 = alloca i32, align 4
  %5 = alloca ptr, align 8
  %6 = alloca %"class.tflite::LinearMemoryPlanner", align 8
  %7 = alloca i32, align 4
  %8 = alloca i32, align 4
  %9 = alloca ptr, align 8
  %10 = alloca i32, align 4
  %11 = alloca i8, align 1
  %12 = alloca i8, align 1
  %13 = alloca i32, align 4
  %14 = alloca i32, align 4
  %15 = alloca i32, align 4
  %16 = alloca i8, align 1
  %17 = alloca i8, align 1
  %18 = alloca i32, align 4
  %19 = alloca i64, align 8
  %20 = alloca i64, align 8
  %21 = alloca i8, align 1
  %22 = alloca i8, align 1
  %23 = alloca i64, align 8
  %24 = alloca i32, align 4
  %25 = alloca i32, align 4
  %26 = alloca i32, align 4
  %27 = alloca i8, align 1
  %28 = alloca i8, align 1
  %29 = alloca i32, align 4
  %30 = alloca i32, align 4
  %31 = alloca i32, align 4
  %32 = alloca i8, align 1
  %33 = alloca i8, align 1
  %34 = alloca i32, align 4
  %35 = alloca i32, align 4
  %36 = alloca i32, align 4
  %37 = alloca i8, align 1
  %38 = alloca i8, align 1
  %39 = alloca i32, align 4
  %40 = alloca i32, align 4
  %41 = alloca i32, align 4
  %42 = alloca i8, align 1
  %43 = alloca i8, align 1
  %44 = alloca i32, align 4
  %45 = alloca %"class.tflite::LinearMemoryPlanner", align 8
  %46 = alloca i32, align 4
  %47 = alloca i32, align 4
  %48 = alloca i8, align 1
  %49 = alloca i8, align 1
  %50 = alloca i32, align 4
  %51 = alloca i32, align 4
  %52 = alloca i32, align 4
  %53 = alloca i32, align 4
  %54 = alloca i8, align 1
  %55 = alloca i8, align 1
  %56 = alloca i32, align 4
  %57 = alloca %"class.tflite::LinearMemoryPlanner", align 8
  %58 = alloca i32, align 4
  %59 = alloca i32, align 4
  %60 = alloca i8, align 1
  %61 = alloca i8, align 1
  %62 = alloca i32, align 4
  %63 = alloca i32, align 4
  %64 = alloca i32, align 4
  %65 = alloca i8, align 1
  %66 = alloca i8, align 1
  %67 = alloca i32, align 4
  %68 = alloca i32, align 4
  %69 = alloca i32, align 4
  %70 = alloca i8, align 1
  %71 = alloca i8, align 1
  %72 = alloca i32, align 4
  %73 = alloca i32, align 4
  %74 = alloca i32, align 4
  %75 = alloca i8, align 1
  %76 = alloca i8, align 1
  %77 = alloca i32, align 4
  %78 = alloca i32, align 4
  %79 = alloca i32, align 4
  %80 = alloca i8, align 1
  %81 = alloca i8, align 1
  %82 = alloca i32, align 4
  %83 = alloca i32, align 4
  %84 = alloca i32, align 4
  %85 = alloca i8, align 1
  %86 = alloca i8, align 1
  %87 = alloca i32, align 4
  %88 = alloca i32, align 4
  %89 = alloca i32, align 4
  %90 = alloca i8, align 1
  %91 = alloca i8, align 1
  %92 = alloca i32, align 4
  %93 = alloca i32, align 4
  %94 = alloca i32, align 4
  %95 = alloca i8, align 1
  %96 = alloca i8, align 1
  %97 = alloca i32, align 4
  %98 = alloca i32, align 4
  %99 = alloca i32, align 4
  %100 = alloca i8, align 1
  %101 = alloca i8, align 1
  %102 = alloca i32, align 4
  %103 = alloca i32, align 4
  %104 = alloca i32, align 4
  %105 = alloca i8, align 1
  %106 = alloca i8, align 1
  %107 = alloca i32, align 4
  %108 = alloca i32, align 4
  %109 = alloca i32, align 4
  %110 = alloca i8, align 1
  %111 = alloca i8, align 1
  %112 = alloca i32, align 4
  %113 = alloca i32, align 4
  %114 = alloca i32, align 4
  %115 = alloca i8, align 1
  %116 = alloca i8, align 1
  %117 = alloca i32, align 4
  %118 = alloca i32, align 4
  %119 = alloca i32, align 4
  %120 = alloca i8, align 1
  %121 = alloca i8, align 1
  %122 = alloca i32, align 4
  %123 = alloca i32, align 4
  %124 = alloca i32, align 4
  %125 = alloca i8, align 1
  %126 = alloca i8, align 1
  %127 = alloca i32, align 4
  %128 = alloca i32, align 4
  %129 = alloca i32, align 4
  %130 = alloca i8, align 1
  %131 = alloca i8, align 1
  %132 = alloca i32, align 4
  %133 = alloca i32, align 4
  %134 = alloca i32, align 4
  %135 = alloca i8, align 1
  %136 = alloca i8, align 1
  %137 = alloca i32, align 4
  %138 = alloca i32, align 4
  %139 = alloca i32, align 4
  %140 = alloca i8, align 1
  %141 = alloca i8, align 1
  %142 = alloca i32, align 4
  %143 = alloca i32, align 4
  %144 = alloca i32, align 4
  %145 = alloca i8, align 1
  %146 = alloca i8, align 1
  %147 = alloca i32, align 4
  %148 = alloca i32, align 4
  %149 = alloca i32, align 4
  %150 = alloca i8, align 1
  %151 = alloca i8, align 1
  %152 = alloca i32, align 4
  %153 = alloca i32, align 4
  %154 = alloca i32, align 4
  %155 = alloca i8, align 1
  %156 = alloca i8, align 1
  %157 = alloca i32, align 4
  %158 = alloca i32, align 4
  %159 = alloca i32, align 4
  %160 = alloca i8, align 1
  %161 = alloca i8, align 1
  %162 = alloca i32, align 4
  %163 = alloca i32, align 4
  %164 = alloca i32, align 4
  %165 = alloca i8, align 1
  %166 = alloca i8, align 1
  %167 = alloca i32, align 4
  %168 = alloca i32, align 4
  %169 = alloca i32, align 4
  %170 = alloca i8, align 1
  %171 = alloca i8, align 1
  %172 = alloca i32, align 4
  %173 = alloca i32, align 4
  %174 = alloca i32, align 4
  %175 = alloca i8, align 1
  %176 = alloca i8, align 1
  %177 = alloca i32, align 4
  %178 = alloca i32, align 4
  %179 = alloca i32, align 4
  %180 = alloca i8, align 1
  %181 = alloca i8, align 1
  %182 = alloca i32, align 4
  %183 = alloca i32, align 4
  %184 = alloca i32, align 4
  %185 = alloca i8, align 1
  %186 = alloca i8, align 1
  %187 = alloca i32, align 4
  %188 = alloca i32, align 4
  %189 = alloca i32, align 4
  %190 = alloca i8, align 1
  %191 = alloca i8, align 1
  %192 = alloca i32, align 4
  %193 = alloca i32, align 4
  %194 = alloca i32, align 4
  %195 = alloca i8, align 1
  %196 = alloca i8, align 1
  %197 = alloca i32, align 4
  %198 = alloca i32, align 4
  %199 = alloca i32, align 4
  %200 = alloca i8, align 1
  %201 = alloca i8, align 1
  %202 = alloca i32, align 4
  %203 = alloca i32, align 4
  %204 = alloca i32, align 4
  %205 = alloca i8, align 1
  %206 = alloca i8, align 1
  %207 = alloca i32, align 4
  %208 = alloca i64, align 8
  %209 = alloca i64, align 8
  %210 = alloca i8, align 1
  %211 = alloca i8, align 1
  %212 = alloca i64, align 8
  store i32 0, ptr %3, align 4
  store i32 %0, ptr %4, align 4, !tbaa !5
  store ptr %1, ptr %5, align 8, !tbaa !9
  store i32 0, ptr @_ZN10micro_test12tests_passedE, align 4, !tbaa !5
  store i32 0, ptr @_ZN10micro_test12tests_failedE, align 4, !tbaa !5
  call void @_ZN6tflite14InitializeTestEv()
  call void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str)
  store i8 0, ptr @_ZN10micro_test16is_test_completeE, align 1, !tbaa !11
  store i8 0, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !11
  br label %213

213:                                              ; preds = %676, %2
  %214 = load i8, ptr @_ZN10micro_test16is_test_completeE, align 1, !tbaa !11, !range !13, !noundef !14
  %215 = trunc i8 %214 to i1
  %216 = xor i1 %215, true
  br i1 %216, label %217, label %692

217:                                              ; preds = %213
  call void @llvm.lifetime.start.p0(i64 8216, ptr %6) #6
  call void @_ZN6tflite19LinearMemoryPlannerC1Ev(ptr noundef nonnull align 8 dereferenceable(8216) %6)
  br label %218

218:                                              ; preds = %217
  call void @llvm.lifetime.start.p0(i64 4, ptr %7) #6
  store i32 0, ptr %7, align 4, !tbaa !15
  call void @llvm.lifetime.start.p0(i64 4, ptr %8) #6
  %219 = invoke noundef i32 @_ZN6tflite19LinearMemoryPlanner9AddBufferEiii(ptr noundef nonnull align 8 dereferenceable(8216) %6, i32 noundef 10, i32 noundef 0, i32 noundef 1)
          to label %220 unwind label %249

220:                                              ; preds = %218
  store i32 %219, ptr %8, align 4, !tbaa !15
  call void @llvm.lifetime.start.p0(i64 1, ptr %11) #6
  store i8 0, ptr %11, align 1, !tbaa !11
  call void @llvm.lifetime.start.p0(i64 1, ptr %12) #6
  store i8 0, ptr %12, align 1, !tbaa !11
  %221 = load i8, ptr %11, align 1, !tbaa !11, !range !13, !noundef !14
  %222 = trunc i8 %221 to i1
  br i1 %222, label %223, label %258

223:                                              ; preds = %220
  %224 = load i8, ptr %12, align 1, !tbaa !11, !range !13, !noundef !14
  %225 = trunc i8 %224 to i1
  br i1 %225, label %226, label %258

226:                                              ; preds = %223
  call void @llvm.lifetime.start.p0(i64 4, ptr %13) #6
  %227 = load i32, ptr %7, align 4, !tbaa !15
  %228 = load i32, ptr %8, align 4, !tbaa !15
  %229 = icmp sgt i32 %227, %228
  br i1 %229, label %230, label %234

230:                                              ; preds = %226
  %231 = load i32, ptr %7, align 4, !tbaa !15
  %232 = load i32, ptr %8, align 4, !tbaa !15
  %233 = sub nsw i32 %231, %232
  br label %238

234:                                              ; preds = %226
  %235 = load i32, ptr %8, align 4, !tbaa !15
  %236 = load i32, ptr %7, align 4, !tbaa !15
  %237 = sub nsw i32 %235, %236
  br label %238

238:                                              ; preds = %234, %230
  %239 = phi i32 [ %233, %230 ], [ %237, %234 ]
  store i32 %239, ptr %13, align 4, !tbaa !5
  %240 = load i32, ptr %13, align 4, !tbaa !5
  %241 = call noundef i32 @_ZNSt14numeric_limitsIiE7epsilonEv() #6
  %242 = icmp sgt i32 %240, %241
  br i1 %242, label %243, label %257

243:                                              ; preds = %238
  %244 = load i32, ptr %7, align 4, !tbaa !15
  %245 = uitofp i32 %244 to double
  %246 = load i32, ptr %8, align 4, !tbaa !15
  %247 = uitofp i32 %246 to double
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.1, ptr noundef @.str.2, i32 noundef 24, double noundef %245, double noundef %247)
          to label %248 unwind label %253

248:                                              ; preds = %243
  store i8 1, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !11
  br label %257

249:                                              ; preds = %218
  %250 = landingpad { ptr, i32 }
          cleanup
  %251 = extractvalue { ptr, i32 } %250, 0
  store ptr %251, ptr %9, align 8
  %252 = extractvalue { ptr, i32 } %250, 1
  store i32 %252, ptr %10, align 4
  br label %315

253:                                              ; preds = %243
  %254 = landingpad { ptr, i32 }
          cleanup
  %255 = extractvalue { ptr, i32 } %254, 0
  store ptr %255, ptr %9, align 8
  %256 = extractvalue { ptr, i32 } %254, 1
  store i32 %256, ptr %10, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %13) #6
  br label %314

257:                                              ; preds = %248, %238
  call void @llvm.lifetime.end.p0(i64 4, ptr %13) #6
  br label %280

258:                                              ; preds = %223, %220
  %259 = load i32, ptr %7, align 4, !tbaa !15
  %260 = load i32, ptr %8, align 4, !tbaa !15
  %261 = icmp ne i32 %259, %260
  br i1 %261, label %262, label %279

262:                                              ; preds = %258
  %263 = load i32, ptr %7, align 4, !tbaa !15
  %264 = load i32, ptr %8, align 4, !tbaa !15
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.3, ptr noundef @.str.2, i32 noundef 24, i32 noundef %263, i32 noundef %264)
          to label %265 unwind label %274

265:                                              ; preds = %262
  %266 = load i8, ptr %11, align 1, !tbaa !11, !range !13, !noundef !14
  %267 = trunc i8 %266 to i1
  br i1 %267, label %271, label %268

268:                                              ; preds = %265
  %269 = load i8, ptr %12, align 1, !tbaa !11, !range !13, !noundef !14
  %270 = trunc i8 %269 to i1
  br i1 %270, label %271, label %278

271:                                              ; preds = %268, %265
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.4)
          to label %272 unwind label %274

272:                                              ; preds = %271
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.5)
          to label %273 unwind label %274

273:                                              ; preds = %272
  br label %278

274:                                              ; preds = %272, %271, %262
  %275 = landingpad { ptr, i32 }
          cleanup
  %276 = extractvalue { ptr, i32 } %275, 0
  store ptr %276, ptr %9, align 8
  %277 = extractvalue { ptr, i32 } %275, 1
  store i32 %277, ptr %10, align 4
  br label %314

278:                                              ; preds = %273, %268
  store i8 1, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !11
  br label %279

279:                                              ; preds = %278, %258
  br label %280

280:                                              ; preds = %279, %257
  call void @llvm.lifetime.end.p0(i64 1, ptr %12) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %11) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %8) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %7) #6
  br label %281

281:                                              ; preds = %280
  br label %282

282:                                              ; preds = %281
  br label %283

283:                                              ; preds = %282
  call void @llvm.lifetime.start.p0(i64 4, ptr %14) #6
  store i32 0, ptr %14, align 4, !tbaa !15
  call void @llvm.lifetime.start.p0(i64 4, ptr %15) #6
  %284 = invoke noundef i32 @_ZN6tflite19LinearMemoryPlanner9AddBufferEiii(ptr noundef nonnull align 8 dereferenceable(8216) %6, i32 noundef 20, i32 noundef 1, i32 noundef 2)
          to label %285 unwind label %316

285:                                              ; preds = %283
  store i32 %284, ptr %15, align 4, !tbaa !15
  call void @llvm.lifetime.start.p0(i64 1, ptr %16) #6
  store i8 0, ptr %16, align 1, !tbaa !11
  call void @llvm.lifetime.start.p0(i64 1, ptr %17) #6
  store i8 0, ptr %17, align 1, !tbaa !11
  %286 = load i8, ptr %16, align 1, !tbaa !11, !range !13, !noundef !14
  %287 = trunc i8 %286 to i1
  br i1 %287, label %288, label %325

288:                                              ; preds = %285
  %289 = load i8, ptr %17, align 1, !tbaa !11, !range !13, !noundef !14
  %290 = trunc i8 %289 to i1
  br i1 %290, label %291, label %325

291:                                              ; preds = %288
  call void @llvm.lifetime.start.p0(i64 4, ptr %18) #6
  %292 = load i32, ptr %14, align 4, !tbaa !15
  %293 = load i32, ptr %15, align 4, !tbaa !15
  %294 = icmp sgt i32 %292, %293
  br i1 %294, label %295, label %299

295:                                              ; preds = %291
  %296 = load i32, ptr %14, align 4, !tbaa !15
  %297 = load i32, ptr %15, align 4, !tbaa !15
  %298 = sub nsw i32 %296, %297
  br label %303

299:                                              ; preds = %291
  %300 = load i32, ptr %15, align 4, !tbaa !15
  %301 = load i32, ptr %14, align 4, !tbaa !15
  %302 = sub nsw i32 %300, %301
  br label %303

303:                                              ; preds = %299, %295
  %304 = phi i32 [ %298, %295 ], [ %302, %299 ]
  store i32 %304, ptr %18, align 4, !tbaa !5
  %305 = load i32, ptr %18, align 4, !tbaa !5
  %306 = call noundef i32 @_ZNSt14numeric_limitsIiE7epsilonEv() #6
  %307 = icmp sgt i32 %305, %306
  br i1 %307, label %308, label %324

308:                                              ; preds = %303
  %309 = load i32, ptr %14, align 4, !tbaa !15
  %310 = uitofp i32 %309 to double
  %311 = load i32, ptr %15, align 4, !tbaa !15
  %312 = uitofp i32 %311 to double
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.6, ptr noundef @.str.2, i32 noundef 25, double noundef %310, double noundef %312)
          to label %313 unwind label %320

313:                                              ; preds = %308
  store i8 1, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !11
  br label %324

314:                                              ; preds = %274, %253
  call void @llvm.lifetime.end.p0(i64 1, ptr %12) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %11) #6
  br label %315

315:                                              ; preds = %314, %249
  call void @llvm.lifetime.end.p0(i64 4, ptr %8) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %7) #6
  br label %691

316:                                              ; preds = %283
  %317 = landingpad { ptr, i32 }
          cleanup
  %318 = extractvalue { ptr, i32 } %317, 0
  store ptr %318, ptr %9, align 8
  %319 = extractvalue { ptr, i32 } %317, 1
  store i32 %319, ptr %10, align 4
  br label %382

320:                                              ; preds = %308
  %321 = landingpad { ptr, i32 }
          cleanup
  %322 = extractvalue { ptr, i32 } %321, 0
  store ptr %322, ptr %9, align 8
  %323 = extractvalue { ptr, i32 } %321, 1
  store i32 %323, ptr %10, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %18) #6
  br label %381

324:                                              ; preds = %313, %303
  call void @llvm.lifetime.end.p0(i64 4, ptr %18) #6
  br label %347

325:                                              ; preds = %288, %285
  %326 = load i32, ptr %14, align 4, !tbaa !15
  %327 = load i32, ptr %15, align 4, !tbaa !15
  %328 = icmp ne i32 %326, %327
  br i1 %328, label %329, label %346

329:                                              ; preds = %325
  %330 = load i32, ptr %14, align 4, !tbaa !15
  %331 = load i32, ptr %15, align 4, !tbaa !15
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.7, ptr noundef @.str.2, i32 noundef 25, i32 noundef %330, i32 noundef %331)
          to label %332 unwind label %341

332:                                              ; preds = %329
  %333 = load i8, ptr %16, align 1, !tbaa !11, !range !13, !noundef !14
  %334 = trunc i8 %333 to i1
  br i1 %334, label %338, label %335

335:                                              ; preds = %332
  %336 = load i8, ptr %17, align 1, !tbaa !11, !range !13, !noundef !14
  %337 = trunc i8 %336 to i1
  br i1 %337, label %338, label %345

338:                                              ; preds = %335, %332
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.4)
          to label %339 unwind label %341

339:                                              ; preds = %338
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.5)
          to label %340 unwind label %341

340:                                              ; preds = %339
  br label %345

341:                                              ; preds = %339, %338, %329
  %342 = landingpad { ptr, i32 }
          cleanup
  %343 = extractvalue { ptr, i32 } %342, 0
  store ptr %343, ptr %9, align 8
  %344 = extractvalue { ptr, i32 } %342, 1
  store i32 %344, ptr %10, align 4
  br label %381

345:                                              ; preds = %340, %335
  store i8 1, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !11
  br label %346

346:                                              ; preds = %345, %325
  br label %347

347:                                              ; preds = %346, %324
  call void @llvm.lifetime.end.p0(i64 1, ptr %17) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %16) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %15) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %14) #6
  br label %348

348:                                              ; preds = %347
  br label %349

349:                                              ; preds = %348
  br label %350

350:                                              ; preds = %349
  call void @llvm.lifetime.start.p0(i64 8, ptr %19) #6
  store i64 30, ptr %19, align 8, !tbaa !17
  call void @llvm.lifetime.start.p0(i64 8, ptr %20) #6
  %351 = invoke noundef i64 @_ZN6tflite19LinearMemoryPlanner20GetMaximumMemorySizeEv(ptr noundef nonnull align 8 dereferenceable(8216) %6)
          to label %352 unwind label %383

352:                                              ; preds = %350
  store i64 %351, ptr %20, align 8, !tbaa !17
  call void @llvm.lifetime.start.p0(i64 1, ptr %21) #6
  store i8 0, ptr %21, align 1, !tbaa !11
  call void @llvm.lifetime.start.p0(i64 1, ptr %22) #6
  store i8 0, ptr %22, align 1, !tbaa !11
  %353 = load i8, ptr %21, align 1, !tbaa !11, !range !13, !noundef !14
  %354 = trunc i8 %353 to i1
  br i1 %354, label %355, label %392

355:                                              ; preds = %352
  %356 = load i8, ptr %22, align 1, !tbaa !11, !range !13, !noundef !14
  %357 = trunc i8 %356 to i1
  br i1 %357, label %358, label %392

358:                                              ; preds = %355
  call void @llvm.lifetime.start.p0(i64 8, ptr %23) #6
  %359 = load i64, ptr %19, align 8, !tbaa !17
  %360 = load i64, ptr %20, align 8, !tbaa !17
  %361 = icmp ugt i64 %359, %360
  br i1 %361, label %362, label %366

362:                                              ; preds = %358
  %363 = load i64, ptr %19, align 8, !tbaa !17
  %364 = load i64, ptr %20, align 8, !tbaa !17
  %365 = sub i64 %363, %364
  br label %370

366:                                              ; preds = %358
  %367 = load i64, ptr %20, align 8, !tbaa !17
  %368 = load i64, ptr %19, align 8, !tbaa !17
  %369 = sub i64 %367, %368
  br label %370

370:                                              ; preds = %366, %362
  %371 = phi i64 [ %365, %362 ], [ %369, %366 ]
  store i64 %371, ptr %23, align 8, !tbaa !17
  %372 = load i64, ptr %23, align 8, !tbaa !17
  %373 = call noundef i64 @_ZNSt14numeric_limitsImE7epsilonEv() #6
  %374 = icmp ugt i64 %372, %373
  br i1 %374, label %375, label %391

375:                                              ; preds = %370
  %376 = load i64, ptr %19, align 8, !tbaa !17
  %377 = uitofp i64 %376 to double
  %378 = load i64, ptr %20, align 8, !tbaa !17
  %379 = uitofp i64 %378 to double
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.8, ptr noundef @.str.2, i32 noundef 27, double noundef %377, double noundef %379)
          to label %380 unwind label %387

380:                                              ; preds = %375
  store i8 1, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !11
  br label %391

381:                                              ; preds = %341, %320
  call void @llvm.lifetime.end.p0(i64 1, ptr %17) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %16) #6
  br label %382

382:                                              ; preds = %381, %316
  call void @llvm.lifetime.end.p0(i64 4, ptr %15) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %14) #6
  br label %691

383:                                              ; preds = %350
  %384 = landingpad { ptr, i32 }
          cleanup
  %385 = extractvalue { ptr, i32 } %384, 0
  store ptr %385, ptr %9, align 8
  %386 = extractvalue { ptr, i32 } %384, 1
  store i32 %386, ptr %10, align 4
  br label %451

387:                                              ; preds = %375
  %388 = landingpad { ptr, i32 }
          cleanup
  %389 = extractvalue { ptr, i32 } %388, 0
  store ptr %389, ptr %9, align 8
  %390 = extractvalue { ptr, i32 } %388, 1
  store i32 %390, ptr %10, align 4
  call void @llvm.lifetime.end.p0(i64 8, ptr %23) #6
  br label %450

391:                                              ; preds = %380, %370
  call void @llvm.lifetime.end.p0(i64 8, ptr %23) #6
  br label %416

392:                                              ; preds = %355, %352
  %393 = load i64, ptr %19, align 8, !tbaa !17
  %394 = load i64, ptr %20, align 8, !tbaa !17
  %395 = icmp ne i64 %393, %394
  br i1 %395, label %396, label %415

396:                                              ; preds = %392
  %397 = load i64, ptr %19, align 8, !tbaa !17
  %398 = trunc i64 %397 to i32
  %399 = load i64, ptr %20, align 8, !tbaa !17
  %400 = trunc i64 %399 to i32
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.9, ptr noundef @.str.2, i32 noundef 27, i32 noundef %398, i32 noundef %400)
          to label %401 unwind label %410

401:                                              ; preds = %396
  %402 = load i8, ptr %21, align 1, !tbaa !11, !range !13, !noundef !14
  %403 = trunc i8 %402 to i1
  br i1 %403, label %407, label %404

404:                                              ; preds = %401
  %405 = load i8, ptr %22, align 1, !tbaa !11, !range !13, !noundef !14
  %406 = trunc i8 %405 to i1
  br i1 %406, label %407, label %414

407:                                              ; preds = %404, %401
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.4)
          to label %408 unwind label %410

408:                                              ; preds = %407
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.5)
          to label %409 unwind label %410

409:                                              ; preds = %408
  br label %414

410:                                              ; preds = %408, %407, %396
  %411 = landingpad { ptr, i32 }
          cleanup
  %412 = extractvalue { ptr, i32 } %411, 0
  store ptr %412, ptr %9, align 8
  %413 = extractvalue { ptr, i32 } %411, 1
  store i32 %413, ptr %10, align 4
  br label %450

414:                                              ; preds = %409, %404
  store i8 1, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !11
  br label %415

415:                                              ; preds = %414, %392
  br label %416

416:                                              ; preds = %415, %391
  call void @llvm.lifetime.end.p0(i64 1, ptr %22) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %21) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %20) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %19) #6
  br label %417

417:                                              ; preds = %416
  br label %418

418:                                              ; preds = %417
  call void @llvm.lifetime.start.p0(i64 4, ptr %24) #6
  store i32 -1, ptr %24, align 4, !tbaa !5
  br label %419

419:                                              ; preds = %418
  call void @llvm.lifetime.start.p0(i64 4, ptr %25) #6
  store i32 0, ptr %25, align 4, !tbaa !15
  call void @llvm.lifetime.start.p0(i64 4, ptr %26) #6
  %420 = invoke noundef i32 @_ZN6tflite19LinearMemoryPlanner18GetOffsetForBufferEiPi(ptr noundef nonnull align 8 dereferenceable(8216) %6, i32 noundef 0, ptr noundef %24)
          to label %421 unwind label %452

421:                                              ; preds = %419
  store i32 %420, ptr %26, align 4, !tbaa !15
  call void @llvm.lifetime.start.p0(i64 1, ptr %27) #6
  store i8 0, ptr %27, align 1, !tbaa !11
  call void @llvm.lifetime.start.p0(i64 1, ptr %28) #6
  store i8 0, ptr %28, align 1, !tbaa !11
  %422 = load i8, ptr %27, align 1, !tbaa !11, !range !13, !noundef !14
  %423 = trunc i8 %422 to i1
  br i1 %423, label %424, label %461

424:                                              ; preds = %421
  %425 = load i8, ptr %28, align 1, !tbaa !11, !range !13, !noundef !14
  %426 = trunc i8 %425 to i1
  br i1 %426, label %427, label %461

427:                                              ; preds = %424
  call void @llvm.lifetime.start.p0(i64 4, ptr %29) #6
  %428 = load i32, ptr %25, align 4, !tbaa !15
  %429 = load i32, ptr %26, align 4, !tbaa !15
  %430 = icmp sgt i32 %428, %429
  br i1 %430, label %431, label %435

431:                                              ; preds = %427
  %432 = load i32, ptr %25, align 4, !tbaa !15
  %433 = load i32, ptr %26, align 4, !tbaa !15
  %434 = sub nsw i32 %432, %433
  br label %439

435:                                              ; preds = %427
  %436 = load i32, ptr %26, align 4, !tbaa !15
  %437 = load i32, ptr %25, align 4, !tbaa !15
  %438 = sub nsw i32 %436, %437
  br label %439

439:                                              ; preds = %435, %431
  %440 = phi i32 [ %434, %431 ], [ %438, %435 ]
  store i32 %440, ptr %29, align 4, !tbaa !5
  %441 = load i32, ptr %29, align 4, !tbaa !5
  %442 = call noundef i32 @_ZNSt14numeric_limitsIiE7epsilonEv() #6
  %443 = icmp sgt i32 %441, %442
  br i1 %443, label %444, label %460

444:                                              ; preds = %439
  %445 = load i32, ptr %25, align 4, !tbaa !15
  %446 = uitofp i32 %445 to double
  %447 = load i32, ptr %26, align 4, !tbaa !15
  %448 = uitofp i32 %447 to double
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.10, ptr noundef @.str.2, i32 noundef 30, double noundef %446, double noundef %448)
          to label %449 unwind label %456

449:                                              ; preds = %444
  store i8 1, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !11
  br label %460

450:                                              ; preds = %410, %387
  call void @llvm.lifetime.end.p0(i64 1, ptr %22) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %21) #6
  br label %451

451:                                              ; preds = %450, %383
  call void @llvm.lifetime.end.p0(i64 8, ptr %20) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %19) #6
  br label %691

452:                                              ; preds = %419
  %453 = landingpad { ptr, i32 }
          cleanup
  %454 = extractvalue { ptr, i32 } %453, 0
  store ptr %454, ptr %9, align 8
  %455 = extractvalue { ptr, i32 } %453, 1
  store i32 %455, ptr %10, align 4
  br label %517

456:                                              ; preds = %444
  %457 = landingpad { ptr, i32 }
          cleanup
  %458 = extractvalue { ptr, i32 } %457, 0
  store ptr %458, ptr %9, align 8
  %459 = extractvalue { ptr, i32 } %457, 1
  store i32 %459, ptr %10, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %29) #6
  br label %516

460:                                              ; preds = %449, %439
  call void @llvm.lifetime.end.p0(i64 4, ptr %29) #6
  br label %483

461:                                              ; preds = %424, %421
  %462 = load i32, ptr %25, align 4, !tbaa !15
  %463 = load i32, ptr %26, align 4, !tbaa !15
  %464 = icmp ne i32 %462, %463
  br i1 %464, label %465, label %482

465:                                              ; preds = %461
  %466 = load i32, ptr %25, align 4, !tbaa !15
  %467 = load i32, ptr %26, align 4, !tbaa !15
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.11, ptr noundef @.str.2, i32 noundef 30, i32 noundef %466, i32 noundef %467)
          to label %468 unwind label %477

468:                                              ; preds = %465
  %469 = load i8, ptr %27, align 1, !tbaa !11, !range !13, !noundef !14
  %470 = trunc i8 %469 to i1
  br i1 %470, label %474, label %471

471:                                              ; preds = %468
  %472 = load i8, ptr %28, align 1, !tbaa !11, !range !13, !noundef !14
  %473 = trunc i8 %472 to i1
  br i1 %473, label %474, label %481

474:                                              ; preds = %471, %468
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.4)
          to label %475 unwind label %477

475:                                              ; preds = %474
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.5)
          to label %476 unwind label %477

476:                                              ; preds = %475
  br label %481

477:                                              ; preds = %475, %474, %465
  %478 = landingpad { ptr, i32 }
          cleanup
  %479 = extractvalue { ptr, i32 } %478, 0
  store ptr %479, ptr %9, align 8
  %480 = extractvalue { ptr, i32 } %478, 1
  store i32 %480, ptr %10, align 4
  br label %516

481:                                              ; preds = %476, %471
  store i8 1, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !11
  br label %482

482:                                              ; preds = %481, %461
  br label %483

483:                                              ; preds = %482, %460
  call void @llvm.lifetime.end.p0(i64 1, ptr %28) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %27) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %26) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %25) #6
  br label %484

484:                                              ; preds = %483
  br label %485

485:                                              ; preds = %484
  br label %486

486:                                              ; preds = %485
  call void @llvm.lifetime.start.p0(i64 4, ptr %30) #6
  store i32 0, ptr %30, align 4, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr %31) #6
  %487 = load i32, ptr %24, align 4, !tbaa !5
  store i32 %487, ptr %31, align 4, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 1, ptr %32) #6
  store i8 0, ptr %32, align 1, !tbaa !11
  call void @llvm.lifetime.start.p0(i64 1, ptr %33) #6
  store i8 0, ptr %33, align 1, !tbaa !11
  %488 = load i8, ptr %32, align 1, !tbaa !11, !range !13, !noundef !14
  %489 = trunc i8 %488 to i1
  br i1 %489, label %490, label %523

490:                                              ; preds = %486
  %491 = load i8, ptr %33, align 1, !tbaa !11, !range !13, !noundef !14
  %492 = trunc i8 %491 to i1
  br i1 %492, label %493, label %523

493:                                              ; preds = %490
  call void @llvm.lifetime.start.p0(i64 4, ptr %34) #6
  %494 = load i32, ptr %30, align 4, !tbaa !5
  %495 = load i32, ptr %31, align 4, !tbaa !5
  %496 = icmp sgt i32 %494, %495
  br i1 %496, label %497, label %501

497:                                              ; preds = %493
  %498 = load i32, ptr %30, align 4, !tbaa !5
  %499 = load i32, ptr %31, align 4, !tbaa !5
  %500 = sub nsw i32 %498, %499
  br label %505

501:                                              ; preds = %493
  %502 = load i32, ptr %31, align 4, !tbaa !5
  %503 = load i32, ptr %30, align 4, !tbaa !5
  %504 = sub nsw i32 %502, %503
  br label %505

505:                                              ; preds = %501, %497
  %506 = phi i32 [ %500, %497 ], [ %504, %501 ]
  store i32 %506, ptr %34, align 4, !tbaa !5
  %507 = load i32, ptr %34, align 4, !tbaa !5
  %508 = call noundef i32 @_ZNSt14numeric_limitsIiE7epsilonEv() #6
  %509 = icmp sgt i32 %507, %508
  br i1 %509, label %510, label %522

510:                                              ; preds = %505
  %511 = load i32, ptr %30, align 4, !tbaa !5
  %512 = sitofp i32 %511 to double
  %513 = load i32, ptr %31, align 4, !tbaa !5
  %514 = sitofp i32 %513 to double
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.12, ptr noundef @.str.2, i32 noundef 31, double noundef %512, double noundef %514)
          to label %515 unwind label %518

515:                                              ; preds = %510
  store i8 1, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !11
  br label %522

516:                                              ; preds = %477, %456
  call void @llvm.lifetime.end.p0(i64 1, ptr %28) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %27) #6
  br label %517

517:                                              ; preds = %516, %452
  call void @llvm.lifetime.end.p0(i64 4, ptr %26) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %25) #6
  br label %690

518:                                              ; preds = %510
  %519 = landingpad { ptr, i32 }
          cleanup
  %520 = extractvalue { ptr, i32 } %519, 0
  store ptr %520, ptr %9, align 8
  %521 = extractvalue { ptr, i32 } %519, 1
  store i32 %521, ptr %10, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %34) #6
  br label %579

522:                                              ; preds = %515, %505
  call void @llvm.lifetime.end.p0(i64 4, ptr %34) #6
  br label %545

523:                                              ; preds = %490, %486
  %524 = load i32, ptr %30, align 4, !tbaa !5
  %525 = load i32, ptr %31, align 4, !tbaa !5
  %526 = icmp ne i32 %524, %525
  br i1 %526, label %527, label %544

527:                                              ; preds = %523
  %528 = load i32, ptr %30, align 4, !tbaa !5
  %529 = load i32, ptr %31, align 4, !tbaa !5
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.13, ptr noundef @.str.2, i32 noundef 31, i32 noundef %528, i32 noundef %529)
          to label %530 unwind label %539

530:                                              ; preds = %527
  %531 = load i8, ptr %32, align 1, !tbaa !11, !range !13, !noundef !14
  %532 = trunc i8 %531 to i1
  br i1 %532, label %536, label %533

533:                                              ; preds = %530
  %534 = load i8, ptr %33, align 1, !tbaa !11, !range !13, !noundef !14
  %535 = trunc i8 %534 to i1
  br i1 %535, label %536, label %543

536:                                              ; preds = %533, %530
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.4)
          to label %537 unwind label %539

537:                                              ; preds = %536
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.5)
          to label %538 unwind label %539

538:                                              ; preds = %537
  br label %543

539:                                              ; preds = %537, %536, %527
  %540 = landingpad { ptr, i32 }
          cleanup
  %541 = extractvalue { ptr, i32 } %540, 0
  store ptr %541, ptr %9, align 8
  %542 = extractvalue { ptr, i32 } %540, 1
  store i32 %542, ptr %10, align 4
  br label %579

543:                                              ; preds = %538, %533
  store i8 1, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !11
  br label %544

544:                                              ; preds = %543, %523
  br label %545

545:                                              ; preds = %544, %522
  call void @llvm.lifetime.end.p0(i64 1, ptr %33) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %32) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %31) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %30) #6
  br label %546

546:                                              ; preds = %545
  br label %547

547:                                              ; preds = %546
  br label %548

548:                                              ; preds = %547
  call void @llvm.lifetime.start.p0(i64 4, ptr %35) #6
  store i32 0, ptr %35, align 4, !tbaa !15
  call void @llvm.lifetime.start.p0(i64 4, ptr %36) #6
  %549 = invoke noundef i32 @_ZN6tflite19LinearMemoryPlanner18GetOffsetForBufferEiPi(ptr noundef nonnull align 8 dereferenceable(8216) %6, i32 noundef 1, ptr noundef %24)
          to label %550 unwind label %580

550:                                              ; preds = %548
  store i32 %549, ptr %36, align 4, !tbaa !15
  call void @llvm.lifetime.start.p0(i64 1, ptr %37) #6
  store i8 0, ptr %37, align 1, !tbaa !11
  call void @llvm.lifetime.start.p0(i64 1, ptr %38) #6
  store i8 0, ptr %38, align 1, !tbaa !11
  %551 = load i8, ptr %37, align 1, !tbaa !11, !range !13, !noundef !14
  %552 = trunc i8 %551 to i1
  br i1 %552, label %553, label %589

553:                                              ; preds = %550
  %554 = load i8, ptr %38, align 1, !tbaa !11, !range !13, !noundef !14
  %555 = trunc i8 %554 to i1
  br i1 %555, label %556, label %589

556:                                              ; preds = %553
  call void @llvm.lifetime.start.p0(i64 4, ptr %39) #6
  %557 = load i32, ptr %35, align 4, !tbaa !15
  %558 = load i32, ptr %36, align 4, !tbaa !15
  %559 = icmp sgt i32 %557, %558
  br i1 %559, label %560, label %564

560:                                              ; preds = %556
  %561 = load i32, ptr %35, align 4, !tbaa !15
  %562 = load i32, ptr %36, align 4, !tbaa !15
  %563 = sub nsw i32 %561, %562
  br label %568

564:                                              ; preds = %556
  %565 = load i32, ptr %36, align 4, !tbaa !15
  %566 = load i32, ptr %35, align 4, !tbaa !15
  %567 = sub nsw i32 %565, %566
  br label %568

568:                                              ; preds = %564, %560
  %569 = phi i32 [ %563, %560 ], [ %567, %564 ]
  store i32 %569, ptr %39, align 4, !tbaa !5
  %570 = load i32, ptr %39, align 4, !tbaa !5
  %571 = call noundef i32 @_ZNSt14numeric_limitsIiE7epsilonEv() #6
  %572 = icmp sgt i32 %570, %571
  br i1 %572, label %573, label %588

573:                                              ; preds = %568
  %574 = load i32, ptr %35, align 4, !tbaa !15
  %575 = uitofp i32 %574 to double
  %576 = load i32, ptr %36, align 4, !tbaa !15
  %577 = uitofp i32 %576 to double
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.14, ptr noundef @.str.2, i32 noundef 33, double noundef %575, double noundef %577)
          to label %578 unwind label %584

578:                                              ; preds = %573
  store i8 1, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !11
  br label %588

579:                                              ; preds = %539, %518
  call void @llvm.lifetime.end.p0(i64 1, ptr %33) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %32) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %31) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %30) #6
  br label %690

580:                                              ; preds = %548
  %581 = landingpad { ptr, i32 }
          cleanup
  %582 = extractvalue { ptr, i32 } %581, 0
  store ptr %582, ptr %9, align 8
  %583 = extractvalue { ptr, i32 } %581, 1
  store i32 %583, ptr %10, align 4
  br label %645

584:                                              ; preds = %573
  %585 = landingpad { ptr, i32 }
          cleanup
  %586 = extractvalue { ptr, i32 } %585, 0
  store ptr %586, ptr %9, align 8
  %587 = extractvalue { ptr, i32 } %585, 1
  store i32 %587, ptr %10, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %39) #6
  br label %644

588:                                              ; preds = %578, %568
  call void @llvm.lifetime.end.p0(i64 4, ptr %39) #6
  br label %611

589:                                              ; preds = %553, %550
  %590 = load i32, ptr %35, align 4, !tbaa !15
  %591 = load i32, ptr %36, align 4, !tbaa !15
  %592 = icmp ne i32 %590, %591
  br i1 %592, label %593, label %610

593:                                              ; preds = %589
  %594 = load i32, ptr %35, align 4, !tbaa !15
  %595 = load i32, ptr %36, align 4, !tbaa !15
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.15, ptr noundef @.str.2, i32 noundef 33, i32 noundef %594, i32 noundef %595)
          to label %596 unwind label %605

596:                                              ; preds = %593
  %597 = load i8, ptr %37, align 1, !tbaa !11, !range !13, !noundef !14
  %598 = trunc i8 %597 to i1
  br i1 %598, label %602, label %599

599:                                              ; preds = %596
  %600 = load i8, ptr %38, align 1, !tbaa !11, !range !13, !noundef !14
  %601 = trunc i8 %600 to i1
  br i1 %601, label %602, label %609

602:                                              ; preds = %599, %596
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.4)
          to label %603 unwind label %605

603:                                              ; preds = %602
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.5)
          to label %604 unwind label %605

604:                                              ; preds = %603
  br label %609

605:                                              ; preds = %603, %602, %593
  %606 = landingpad { ptr, i32 }
          cleanup
  %607 = extractvalue { ptr, i32 } %606, 0
  store ptr %607, ptr %9, align 8
  %608 = extractvalue { ptr, i32 } %606, 1
  store i32 %608, ptr %10, align 4
  br label %644

609:                                              ; preds = %604, %599
  store i8 1, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !11
  br label %610

610:                                              ; preds = %609, %589
  br label %611

611:                                              ; preds = %610, %588
  call void @llvm.lifetime.end.p0(i64 1, ptr %38) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %37) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %36) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %35) #6
  br label %612

612:                                              ; preds = %611
  br label %613

613:                                              ; preds = %612
  br label %614

614:                                              ; preds = %613
  call void @llvm.lifetime.start.p0(i64 4, ptr %40) #6
  store i32 10, ptr %40, align 4, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr %41) #6
  %615 = load i32, ptr %24, align 4, !tbaa !5
  store i32 %615, ptr %41, align 4, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 1, ptr %42) #6
  store i8 0, ptr %42, align 1, !tbaa !11
  call void @llvm.lifetime.start.p0(i64 1, ptr %43) #6
  store i8 0, ptr %43, align 1, !tbaa !11
  %616 = load i8, ptr %42, align 1, !tbaa !11, !range !13, !noundef !14
  %617 = trunc i8 %616 to i1
  br i1 %617, label %618, label %651

618:                                              ; preds = %614
  %619 = load i8, ptr %43, align 1, !tbaa !11, !range !13, !noundef !14
  %620 = trunc i8 %619 to i1
  br i1 %620, label %621, label %651

621:                                              ; preds = %618
  call void @llvm.lifetime.start.p0(i64 4, ptr %44) #6
  %622 = load i32, ptr %40, align 4, !tbaa !5
  %623 = load i32, ptr %41, align 4, !tbaa !5
  %624 = icmp sgt i32 %622, %623
  br i1 %624, label %625, label %629

625:                                              ; preds = %621
  %626 = load i32, ptr %40, align 4, !tbaa !5
  %627 = load i32, ptr %41, align 4, !tbaa !5
  %628 = sub nsw i32 %626, %627
  br label %633

629:                                              ; preds = %621
  %630 = load i32, ptr %41, align 4, !tbaa !5
  %631 = load i32, ptr %40, align 4, !tbaa !5
  %632 = sub nsw i32 %630, %631
  br label %633

633:                                              ; preds = %629, %625
  %634 = phi i32 [ %628, %625 ], [ %632, %629 ]
  store i32 %634, ptr %44, align 4, !tbaa !5
  %635 = load i32, ptr %44, align 4, !tbaa !5
  %636 = call noundef i32 @_ZNSt14numeric_limitsIiE7epsilonEv() #6
  %637 = icmp sgt i32 %635, %636
  br i1 %637, label %638, label %650

638:                                              ; preds = %633
  %639 = load i32, ptr %40, align 4, !tbaa !5
  %640 = sitofp i32 %639 to double
  %641 = load i32, ptr %41, align 4, !tbaa !5
  %642 = sitofp i32 %641 to double
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.16, ptr noundef @.str.2, i32 noundef 34, double noundef %640, double noundef %642)
          to label %643 unwind label %646

643:                                              ; preds = %638
  store i8 1, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !11
  br label %650

644:                                              ; preds = %605, %584
  call void @llvm.lifetime.end.p0(i64 1, ptr %38) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %37) #6
  br label %645

645:                                              ; preds = %644, %580
  call void @llvm.lifetime.end.p0(i64 4, ptr %36) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %35) #6
  br label %690

646:                                              ; preds = %638
  %647 = landingpad { ptr, i32 }
          cleanup
  %648 = extractvalue { ptr, i32 } %647, 0
  store ptr %648, ptr %9, align 8
  %649 = extractvalue { ptr, i32 } %647, 1
  store i32 %649, ptr %10, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %44) #6
  br label %689

650:                                              ; preds = %643, %633
  call void @llvm.lifetime.end.p0(i64 4, ptr %44) #6
  br label %673

651:                                              ; preds = %618, %614
  %652 = load i32, ptr %40, align 4, !tbaa !5
  %653 = load i32, ptr %41, align 4, !tbaa !5
  %654 = icmp ne i32 %652, %653
  br i1 %654, label %655, label %672

655:                                              ; preds = %651
  %656 = load i32, ptr %40, align 4, !tbaa !5
  %657 = load i32, ptr %41, align 4, !tbaa !5
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.17, ptr noundef @.str.2, i32 noundef 34, i32 noundef %656, i32 noundef %657)
          to label %658 unwind label %667

658:                                              ; preds = %655
  %659 = load i8, ptr %42, align 1, !tbaa !11, !range !13, !noundef !14
  %660 = trunc i8 %659 to i1
  br i1 %660, label %664, label %661

661:                                              ; preds = %658
  %662 = load i8, ptr %43, align 1, !tbaa !11, !range !13, !noundef !14
  %663 = trunc i8 %662 to i1
  br i1 %663, label %664, label %671

664:                                              ; preds = %661, %658
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.4)
          to label %665 unwind label %667

665:                                              ; preds = %664
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.5)
          to label %666 unwind label %667

666:                                              ; preds = %665
  br label %671

667:                                              ; preds = %665, %664, %655
  %668 = landingpad { ptr, i32 }
          cleanup
  %669 = extractvalue { ptr, i32 } %668, 0
  store ptr %669, ptr %9, align 8
  %670 = extractvalue { ptr, i32 } %668, 1
  store i32 %670, ptr %10, align 4
  br label %689

671:                                              ; preds = %666, %661
  store i8 1, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !11
  br label %672

672:                                              ; preds = %671, %651
  br label %673

673:                                              ; preds = %672, %650
  call void @llvm.lifetime.end.p0(i64 1, ptr %43) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %42) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %41) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %40) #6
  br label %674

674:                                              ; preds = %673
  br label %675

675:                                              ; preds = %674
  call void @llvm.lifetime.end.p0(i64 4, ptr %24) #6
  call void @_ZN6tflite19LinearMemoryPlannerD1Ev(ptr noundef nonnull align 8 dereferenceable(8216) %6) #6
  call void @llvm.lifetime.end.p0(i64 8216, ptr %6) #6
  br label %676

676:                                              ; preds = %675
  store i8 1, ptr @_ZN10micro_test16is_test_completeE, align 1, !tbaa !11
  %677 = load i8, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !11, !range !13, !noundef !14
  %678 = trunc i8 %677 to i1
  %679 = zext i1 %678 to i64
  %680 = select i1 %678, i32 0, i32 1
  %681 = load i32, ptr @_ZN10micro_test12tests_passedE, align 4, !tbaa !5
  %682 = add nsw i32 %681, %680
  store i32 %682, ptr @_ZN10micro_test12tests_passedE, align 4, !tbaa !5
  %683 = load i8, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !11, !range !13, !noundef !14
  %684 = trunc i8 %683 to i1
  %685 = zext i1 %684 to i64
  %686 = select i1 %684, i32 1, i32 0
  %687 = load i32, ptr @_ZN10micro_test12tests_failedE, align 4, !tbaa !5
  %688 = add nsw i32 %687, %686
  store i32 %688, ptr @_ZN10micro_test12tests_failedE, align 4, !tbaa !5
  br label %213, !llvm.loop !19

689:                                              ; preds = %667, %646
  call void @llvm.lifetime.end.p0(i64 1, ptr %43) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %42) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %41) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %40) #6
  br label %690

690:                                              ; preds = %689, %645, %579, %517
  call void @llvm.lifetime.end.p0(i64 4, ptr %24) #6
  br label %691

691:                                              ; preds = %690, %451, %382, %315
  call void @_ZN6tflite19LinearMemoryPlannerD1Ev(ptr noundef nonnull align 8 dereferenceable(8216) %6) #6
  call void @llvm.lifetime.end.p0(i64 8216, ptr %6) #6
  br label %2956

692:                                              ; preds = %213
  call void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.18)
  store i8 0, ptr @_ZN10micro_test16is_test_completeE, align 1, !tbaa !11
  store i8 0, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !11
  br label %693

693:                                              ; preds = %830, %692
  %694 = load i8, ptr @_ZN10micro_test16is_test_completeE, align 1, !tbaa !11, !range !13, !noundef !14
  %695 = trunc i8 %694 to i1
  %696 = xor i1 %695, true
  br i1 %696, label %697, label %846

697:                                              ; preds = %693
  call void @llvm.lifetime.start.p0(i64 8216, ptr %45) #6
  call void @_ZN6tflite19LinearMemoryPlannerC1Ev(ptr noundef nonnull align 8 dereferenceable(8216) %45)
  br label %698

698:                                              ; preds = %697
  call void @llvm.lifetime.start.p0(i64 4, ptr %46) #6
  store i32 0, ptr %46, align 4, !tbaa !15
  call void @llvm.lifetime.start.p0(i64 4, ptr %47) #6
  %699 = invoke noundef i32 @_ZN6tflite19LinearMemoryPlanner9AddBufferEiii(ptr noundef nonnull align 8 dereferenceable(8216) %45, i32 noundef 10, i32 noundef 0, i32 noundef 1)
          to label %700 unwind label %729

700:                                              ; preds = %698
  store i32 %699, ptr %47, align 4, !tbaa !15
  call void @llvm.lifetime.start.p0(i64 1, ptr %48) #6
  store i8 0, ptr %48, align 1, !tbaa !11
  call void @llvm.lifetime.start.p0(i64 1, ptr %49) #6
  store i8 0, ptr %49, align 1, !tbaa !11
  %701 = load i8, ptr %48, align 1, !tbaa !11, !range !13, !noundef !14
  %702 = trunc i8 %701 to i1
  br i1 %702, label %703, label %738

703:                                              ; preds = %700
  %704 = load i8, ptr %49, align 1, !tbaa !11, !range !13, !noundef !14
  %705 = trunc i8 %704 to i1
  br i1 %705, label %706, label %738

706:                                              ; preds = %703
  call void @llvm.lifetime.start.p0(i64 4, ptr %50) #6
  %707 = load i32, ptr %46, align 4, !tbaa !15
  %708 = load i32, ptr %47, align 4, !tbaa !15
  %709 = icmp sgt i32 %707, %708
  br i1 %709, label %710, label %714

710:                                              ; preds = %706
  %711 = load i32, ptr %46, align 4, !tbaa !15
  %712 = load i32, ptr %47, align 4, !tbaa !15
  %713 = sub nsw i32 %711, %712
  br label %718

714:                                              ; preds = %706
  %715 = load i32, ptr %47, align 4, !tbaa !15
  %716 = load i32, ptr %46, align 4, !tbaa !15
  %717 = sub nsw i32 %715, %716
  br label %718

718:                                              ; preds = %714, %710
  %719 = phi i32 [ %713, %710 ], [ %717, %714 ]
  store i32 %719, ptr %50, align 4, !tbaa !5
  %720 = load i32, ptr %50, align 4, !tbaa !5
  %721 = call noundef i32 @_ZNSt14numeric_limitsIiE7epsilonEv() #6
  %722 = icmp sgt i32 %720, %721
  br i1 %722, label %723, label %737

723:                                              ; preds = %718
  %724 = load i32, ptr %46, align 4, !tbaa !15
  %725 = uitofp i32 %724 to double
  %726 = load i32, ptr %47, align 4, !tbaa !15
  %727 = uitofp i32 %726 to double
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.1, ptr noundef @.str.2, i32 noundef 39, double noundef %725, double noundef %727)
          to label %728 unwind label %733

728:                                              ; preds = %723
  store i8 1, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !11
  br label %737

729:                                              ; preds = %698
  %730 = landingpad { ptr, i32 }
          cleanup
  %731 = extractvalue { ptr, i32 } %730, 0
  store ptr %731, ptr %9, align 8
  %732 = extractvalue { ptr, i32 } %730, 1
  store i32 %732, ptr %10, align 4
  br label %795

733:                                              ; preds = %723
  %734 = landingpad { ptr, i32 }
          cleanup
  %735 = extractvalue { ptr, i32 } %734, 0
  store ptr %735, ptr %9, align 8
  %736 = extractvalue { ptr, i32 } %734, 1
  store i32 %736, ptr %10, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %50) #6
  br label %794

737:                                              ; preds = %728, %718
  call void @llvm.lifetime.end.p0(i64 4, ptr %50) #6
  br label %760

738:                                              ; preds = %703, %700
  %739 = load i32, ptr %46, align 4, !tbaa !15
  %740 = load i32, ptr %47, align 4, !tbaa !15
  %741 = icmp ne i32 %739, %740
  br i1 %741, label %742, label %759

742:                                              ; preds = %738
  %743 = load i32, ptr %46, align 4, !tbaa !15
  %744 = load i32, ptr %47, align 4, !tbaa !15
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.3, ptr noundef @.str.2, i32 noundef 39, i32 noundef %743, i32 noundef %744)
          to label %745 unwind label %754

745:                                              ; preds = %742
  %746 = load i8, ptr %48, align 1, !tbaa !11, !range !13, !noundef !14
  %747 = trunc i8 %746 to i1
  br i1 %747, label %751, label %748

748:                                              ; preds = %745
  %749 = load i8, ptr %49, align 1, !tbaa !11, !range !13, !noundef !14
  %750 = trunc i8 %749 to i1
  br i1 %750, label %751, label %758

751:                                              ; preds = %748, %745
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.4)
          to label %752 unwind label %754

752:                                              ; preds = %751
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.5)
          to label %753 unwind label %754

753:                                              ; preds = %752
  br label %758

754:                                              ; preds = %752, %751, %742
  %755 = landingpad { ptr, i32 }
          cleanup
  %756 = extractvalue { ptr, i32 } %755, 0
  store ptr %756, ptr %9, align 8
  %757 = extractvalue { ptr, i32 } %755, 1
  store i32 %757, ptr %10, align 4
  br label %794

758:                                              ; preds = %753, %748
  store i8 1, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !11
  br label %759

759:                                              ; preds = %758, %738
  br label %760

760:                                              ; preds = %759, %737
  call void @llvm.lifetime.end.p0(i64 1, ptr %49) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %48) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %47) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %46) #6
  br label %761

761:                                              ; preds = %760
  br label %762

762:                                              ; preds = %761
  call void @llvm.lifetime.start.p0(i64 4, ptr %51) #6
  store i32 -1, ptr %51, align 4, !tbaa !5
  br label %763

763:                                              ; preds = %762
  call void @llvm.lifetime.start.p0(i64 4, ptr %52) #6
  store i32 1, ptr %52, align 4, !tbaa !15
  call void @llvm.lifetime.start.p0(i64 4, ptr %53) #6
  %764 = invoke noundef i32 @_ZN6tflite19LinearMemoryPlanner18GetOffsetForBufferEiPi(ptr noundef nonnull align 8 dereferenceable(8216) %45, i32 noundef 1, ptr noundef %51)
          to label %765 unwind label %796

765:                                              ; preds = %763
  store i32 %764, ptr %53, align 4, !tbaa !15
  call void @llvm.lifetime.start.p0(i64 1, ptr %54) #6
  store i8 0, ptr %54, align 1, !tbaa !11
  call void @llvm.lifetime.start.p0(i64 1, ptr %55) #6
  store i8 0, ptr %55, align 1, !tbaa !11
  %766 = load i8, ptr %54, align 1, !tbaa !11, !range !13, !noundef !14
  %767 = trunc i8 %766 to i1
  br i1 %767, label %768, label %805

768:                                              ; preds = %765
  %769 = load i8, ptr %55, align 1, !tbaa !11, !range !13, !noundef !14
  %770 = trunc i8 %769 to i1
  br i1 %770, label %771, label %805

771:                                              ; preds = %768
  call void @llvm.lifetime.start.p0(i64 4, ptr %56) #6
  %772 = load i32, ptr %52, align 4, !tbaa !15
  %773 = load i32, ptr %53, align 4, !tbaa !15
  %774 = icmp sgt i32 %772, %773
  br i1 %774, label %775, label %779

775:                                              ; preds = %771
  %776 = load i32, ptr %52, align 4, !tbaa !15
  %777 = load i32, ptr %53, align 4, !tbaa !15
  %778 = sub nsw i32 %776, %777
  br label %783

779:                                              ; preds = %771
  %780 = load i32, ptr %53, align 4, !tbaa !15
  %781 = load i32, ptr %52, align 4, !tbaa !15
  %782 = sub nsw i32 %780, %781
  br label %783

783:                                              ; preds = %779, %775
  %784 = phi i32 [ %778, %775 ], [ %782, %779 ]
  store i32 %784, ptr %56, align 4, !tbaa !5
  %785 = load i32, ptr %56, align 4, !tbaa !5
  %786 = call noundef i32 @_ZNSt14numeric_limitsIiE7epsilonEv() #6
  %787 = icmp sgt i32 %785, %786
  br i1 %787, label %788, label %804

788:                                              ; preds = %783
  %789 = load i32, ptr %52, align 4, !tbaa !15
  %790 = uitofp i32 %789 to double
  %791 = load i32, ptr %53, align 4, !tbaa !15
  %792 = uitofp i32 %791 to double
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.19, ptr noundef @.str.2, i32 noundef 42, double noundef %790, double noundef %792)
          to label %793 unwind label %800

793:                                              ; preds = %788
  store i8 1, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !11
  br label %804

794:                                              ; preds = %754, %733
  call void @llvm.lifetime.end.p0(i64 1, ptr %49) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %48) #6
  br label %795

795:                                              ; preds = %794, %729
  call void @llvm.lifetime.end.p0(i64 4, ptr %47) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %46) #6
  br label %845

796:                                              ; preds = %763
  %797 = landingpad { ptr, i32 }
          cleanup
  %798 = extractvalue { ptr, i32 } %797, 0
  store ptr %798, ptr %9, align 8
  %799 = extractvalue { ptr, i32 } %797, 1
  store i32 %799, ptr %10, align 4
  br label %844

800:                                              ; preds = %788
  %801 = landingpad { ptr, i32 }
          cleanup
  %802 = extractvalue { ptr, i32 } %801, 0
  store ptr %802, ptr %9, align 8
  %803 = extractvalue { ptr, i32 } %801, 1
  store i32 %803, ptr %10, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %56) #6
  br label %843

804:                                              ; preds = %793, %783
  call void @llvm.lifetime.end.p0(i64 4, ptr %56) #6
  br label %827

805:                                              ; preds = %768, %765
  %806 = load i32, ptr %52, align 4, !tbaa !15
  %807 = load i32, ptr %53, align 4, !tbaa !15
  %808 = icmp ne i32 %806, %807
  br i1 %808, label %809, label %826

809:                                              ; preds = %805
  %810 = load i32, ptr %52, align 4, !tbaa !15
  %811 = load i32, ptr %53, align 4, !tbaa !15
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.20, ptr noundef @.str.2, i32 noundef 42, i32 noundef %810, i32 noundef %811)
          to label %812 unwind label %821

812:                                              ; preds = %809
  %813 = load i8, ptr %54, align 1, !tbaa !11, !range !13, !noundef !14
  %814 = trunc i8 %813 to i1
  br i1 %814, label %818, label %815

815:                                              ; preds = %812
  %816 = load i8, ptr %55, align 1, !tbaa !11, !range !13, !noundef !14
  %817 = trunc i8 %816 to i1
  br i1 %817, label %818, label %825

818:                                              ; preds = %815, %812
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.4)
          to label %819 unwind label %821

819:                                              ; preds = %818
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.5)
          to label %820 unwind label %821

820:                                              ; preds = %819
  br label %825

821:                                              ; preds = %819, %818, %809
  %822 = landingpad { ptr, i32 }
          cleanup
  %823 = extractvalue { ptr, i32 } %822, 0
  store ptr %823, ptr %9, align 8
  %824 = extractvalue { ptr, i32 } %822, 1
  store i32 %824, ptr %10, align 4
  br label %843

825:                                              ; preds = %820, %815
  store i8 1, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !11
  br label %826

826:                                              ; preds = %825, %805
  br label %827

827:                                              ; preds = %826, %804
  call void @llvm.lifetime.end.p0(i64 1, ptr %55) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %54) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %53) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %52) #6
  br label %828

828:                                              ; preds = %827
  br label %829

829:                                              ; preds = %828
  call void @llvm.lifetime.end.p0(i64 4, ptr %51) #6
  call void @_ZN6tflite19LinearMemoryPlannerD1Ev(ptr noundef nonnull align 8 dereferenceable(8216) %45) #6
  call void @llvm.lifetime.end.p0(i64 8216, ptr %45) #6
  br label %830

830:                                              ; preds = %829
  store i8 1, ptr @_ZN10micro_test16is_test_completeE, align 1, !tbaa !11
  %831 = load i8, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !11, !range !13, !noundef !14
  %832 = trunc i8 %831 to i1
  %833 = zext i1 %832 to i64
  %834 = select i1 %832, i32 0, i32 1
  %835 = load i32, ptr @_ZN10micro_test12tests_passedE, align 4, !tbaa !5
  %836 = add nsw i32 %835, %834
  store i32 %836, ptr @_ZN10micro_test12tests_passedE, align 4, !tbaa !5
  %837 = load i8, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !11, !range !13, !noundef !14
  %838 = trunc i8 %837 to i1
  %839 = zext i1 %838 to i64
  %840 = select i1 %838, i32 1, i32 0
  %841 = load i32, ptr @_ZN10micro_test12tests_failedE, align 4, !tbaa !5
  %842 = add nsw i32 %841, %840
  store i32 %842, ptr @_ZN10micro_test12tests_failedE, align 4, !tbaa !5
  br label %693, !llvm.loop !21

843:                                              ; preds = %821, %800
  call void @llvm.lifetime.end.p0(i64 1, ptr %55) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %54) #6
  br label %844

844:                                              ; preds = %843, %796
  call void @llvm.lifetime.end.p0(i64 4, ptr %53) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %52) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %51) #6
  br label %845

845:                                              ; preds = %844, %795
  call void @_ZN6tflite19LinearMemoryPlannerD1Ev(ptr noundef nonnull align 8 dereferenceable(8216) %45) #6
  call void @llvm.lifetime.end.p0(i64 8216, ptr %45) #6
  br label %2956

846:                                              ; preds = %693
  call void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.21)
  store i8 0, ptr @_ZN10micro_test16is_test_completeE, align 1, !tbaa !11
  store i8 0, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !11
  br label %847

847:                                              ; preds = %2929, %846
  %848 = load i8, ptr @_ZN10micro_test16is_test_completeE, align 1, !tbaa !11, !range !13, !noundef !14
  %849 = trunc i8 %848 to i1
  %850 = xor i1 %849, true
  br i1 %850, label %851, label %2945

851:                                              ; preds = %847
  call void @llvm.lifetime.start.p0(i64 8216, ptr %57) #6
  call void @_ZN6tflite19LinearMemoryPlannerC1Ev(ptr noundef nonnull align 8 dereferenceable(8216) %57)
  br label %852

852:                                              ; preds = %851
  call void @llvm.lifetime.start.p0(i64 4, ptr %58) #6
  store i32 0, ptr %58, align 4, !tbaa !15
  call void @llvm.lifetime.start.p0(i64 4, ptr %59) #6
  %853 = invoke noundef i32 @_ZN6tflite19LinearMemoryPlanner9AddBufferEiii(ptr noundef nonnull align 8 dereferenceable(8216) %57, i32 noundef 9216, i32 noundef 0, i32 noundef 29)
          to label %854 unwind label %883

854:                                              ; preds = %852
  store i32 %853, ptr %59, align 4, !tbaa !15
  call void @llvm.lifetime.start.p0(i64 1, ptr %60) #6
  store i8 0, ptr %60, align 1, !tbaa !11
  call void @llvm.lifetime.start.p0(i64 1, ptr %61) #6
  store i8 0, ptr %61, align 1, !tbaa !11
  %855 = load i8, ptr %60, align 1, !tbaa !11, !range !13, !noundef !14
  %856 = trunc i8 %855 to i1
  br i1 %856, label %857, label %892

857:                                              ; preds = %854
  %858 = load i8, ptr %61, align 1, !tbaa !11, !range !13, !noundef !14
  %859 = trunc i8 %858 to i1
  br i1 %859, label %860, label %892

860:                                              ; preds = %857
  call void @llvm.lifetime.start.p0(i64 4, ptr %62) #6
  %861 = load i32, ptr %58, align 4, !tbaa !15
  %862 = load i32, ptr %59, align 4, !tbaa !15
  %863 = icmp sgt i32 %861, %862
  br i1 %863, label %864, label %868

864:                                              ; preds = %860
  %865 = load i32, ptr %58, align 4, !tbaa !15
  %866 = load i32, ptr %59, align 4, !tbaa !15
  %867 = sub nsw i32 %865, %866
  br label %872

868:                                              ; preds = %860
  %869 = load i32, ptr %59, align 4, !tbaa !15
  %870 = load i32, ptr %58, align 4, !tbaa !15
  %871 = sub nsw i32 %869, %870
  br label %872

872:                                              ; preds = %868, %864
  %873 = phi i32 [ %867, %864 ], [ %871, %868 ]
  store i32 %873, ptr %62, align 4, !tbaa !5
  %874 = load i32, ptr %62, align 4, !tbaa !5
  %875 = call noundef i32 @_ZNSt14numeric_limitsIiE7epsilonEv() #6
  %876 = icmp sgt i32 %874, %875
  br i1 %876, label %877, label %891

877:                                              ; preds = %872
  %878 = load i32, ptr %58, align 4, !tbaa !15
  %879 = uitofp i32 %878 to double
  %880 = load i32, ptr %59, align 4, !tbaa !15
  %881 = uitofp i32 %880 to double
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.22, ptr noundef @.str.2, i32 noundef 47, double noundef %879, double noundef %881)
          to label %882 unwind label %887

882:                                              ; preds = %877
  store i8 1, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !11
  br label %891

883:                                              ; preds = %852
  %884 = landingpad { ptr, i32 }
          cleanup
  %885 = extractvalue { ptr, i32 } %884, 0
  store ptr %885, ptr %9, align 8
  %886 = extractvalue { ptr, i32 } %884, 1
  store i32 %886, ptr %10, align 4
  br label %949

887:                                              ; preds = %877
  %888 = landingpad { ptr, i32 }
          cleanup
  %889 = extractvalue { ptr, i32 } %888, 0
  store ptr %889, ptr %9, align 8
  %890 = extractvalue { ptr, i32 } %888, 1
  store i32 %890, ptr %10, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %62) #6
  br label %948

891:                                              ; preds = %882, %872
  call void @llvm.lifetime.end.p0(i64 4, ptr %62) #6
  br label %914

892:                                              ; preds = %857, %854
  %893 = load i32, ptr %58, align 4, !tbaa !15
  %894 = load i32, ptr %59, align 4, !tbaa !15
  %895 = icmp ne i32 %893, %894
  br i1 %895, label %896, label %913

896:                                              ; preds = %892
  %897 = load i32, ptr %58, align 4, !tbaa !15
  %898 = load i32, ptr %59, align 4, !tbaa !15
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.23, ptr noundef @.str.2, i32 noundef 47, i32 noundef %897, i32 noundef %898)
          to label %899 unwind label %908

899:                                              ; preds = %896
  %900 = load i8, ptr %60, align 1, !tbaa !11, !range !13, !noundef !14
  %901 = trunc i8 %900 to i1
  br i1 %901, label %905, label %902

902:                                              ; preds = %899
  %903 = load i8, ptr %61, align 1, !tbaa !11, !range !13, !noundef !14
  %904 = trunc i8 %903 to i1
  br i1 %904, label %905, label %912

905:                                              ; preds = %902, %899
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.4)
          to label %906 unwind label %908

906:                                              ; preds = %905
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.5)
          to label %907 unwind label %908

907:                                              ; preds = %906
  br label %912

908:                                              ; preds = %906, %905, %896
  %909 = landingpad { ptr, i32 }
          cleanup
  %910 = extractvalue { ptr, i32 } %909, 0
  store ptr %910, ptr %9, align 8
  %911 = extractvalue { ptr, i32 } %909, 1
  store i32 %911, ptr %10, align 4
  br label %948

912:                                              ; preds = %907, %902
  store i8 1, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !11
  br label %913

913:                                              ; preds = %912, %892
  br label %914

914:                                              ; preds = %913, %891
  call void @llvm.lifetime.end.p0(i64 1, ptr %61) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %60) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %59) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %58) #6
  br label %915

915:                                              ; preds = %914
  br label %916

916:                                              ; preds = %915
  br label %917

917:                                              ; preds = %916
  call void @llvm.lifetime.start.p0(i64 4, ptr %63) #6
  store i32 0, ptr %63, align 4, !tbaa !15
  call void @llvm.lifetime.start.p0(i64 4, ptr %64) #6
  %918 = invoke noundef i32 @_ZN6tflite19LinearMemoryPlanner9AddBufferEiii(ptr noundef nonnull align 8 dereferenceable(8216) %57, i32 noundef 3, i32 noundef 28, i32 noundef 29)
          to label %919 unwind label %950

919:                                              ; preds = %917
  store i32 %918, ptr %64, align 4, !tbaa !15
  call void @llvm.lifetime.start.p0(i64 1, ptr %65) #6
  store i8 0, ptr %65, align 1, !tbaa !11
  call void @llvm.lifetime.start.p0(i64 1, ptr %66) #6
  store i8 0, ptr %66, align 1, !tbaa !11
  %920 = load i8, ptr %65, align 1, !tbaa !11, !range !13, !noundef !14
  %921 = trunc i8 %920 to i1
  br i1 %921, label %922, label %959

922:                                              ; preds = %919
  %923 = load i8, ptr %66, align 1, !tbaa !11, !range !13, !noundef !14
  %924 = trunc i8 %923 to i1
  br i1 %924, label %925, label %959

925:                                              ; preds = %922
  call void @llvm.lifetime.start.p0(i64 4, ptr %67) #6
  %926 = load i32, ptr %63, align 4, !tbaa !15
  %927 = load i32, ptr %64, align 4, !tbaa !15
  %928 = icmp sgt i32 %926, %927
  br i1 %928, label %929, label %933

929:                                              ; preds = %925
  %930 = load i32, ptr %63, align 4, !tbaa !15
  %931 = load i32, ptr %64, align 4, !tbaa !15
  %932 = sub nsw i32 %930, %931
  br label %937

933:                                              ; preds = %925
  %934 = load i32, ptr %64, align 4, !tbaa !15
  %935 = load i32, ptr %63, align 4, !tbaa !15
  %936 = sub nsw i32 %934, %935
  br label %937

937:                                              ; preds = %933, %929
  %938 = phi i32 [ %932, %929 ], [ %936, %933 ]
  store i32 %938, ptr %67, align 4, !tbaa !5
  %939 = load i32, ptr %67, align 4, !tbaa !5
  %940 = call noundef i32 @_ZNSt14numeric_limitsIiE7epsilonEv() #6
  %941 = icmp sgt i32 %939, %940
  br i1 %941, label %942, label %958

942:                                              ; preds = %937
  %943 = load i32, ptr %63, align 4, !tbaa !15
  %944 = uitofp i32 %943 to double
  %945 = load i32, ptr %64, align 4, !tbaa !15
  %946 = uitofp i32 %945 to double
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.24, ptr noundef @.str.2, i32 noundef 48, double noundef %944, double noundef %946)
          to label %947 unwind label %954

947:                                              ; preds = %942
  store i8 1, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !11
  br label %958

948:                                              ; preds = %908, %887
  call void @llvm.lifetime.end.p0(i64 1, ptr %61) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %60) #6
  br label %949

949:                                              ; preds = %948, %883
  call void @llvm.lifetime.end.p0(i64 4, ptr %59) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %58) #6
  br label %2944

950:                                              ; preds = %917
  %951 = landingpad { ptr, i32 }
          cleanup
  %952 = extractvalue { ptr, i32 } %951, 0
  store ptr %952, ptr %9, align 8
  %953 = extractvalue { ptr, i32 } %951, 1
  store i32 %953, ptr %10, align 4
  br label %1016

954:                                              ; preds = %942
  %955 = landingpad { ptr, i32 }
          cleanup
  %956 = extractvalue { ptr, i32 } %955, 0
  store ptr %956, ptr %9, align 8
  %957 = extractvalue { ptr, i32 } %955, 1
  store i32 %957, ptr %10, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %67) #6
  br label %1015

958:                                              ; preds = %947, %937
  call void @llvm.lifetime.end.p0(i64 4, ptr %67) #6
  br label %981

959:                                              ; preds = %922, %919
  %960 = load i32, ptr %63, align 4, !tbaa !15
  %961 = load i32, ptr %64, align 4, !tbaa !15
  %962 = icmp ne i32 %960, %961
  br i1 %962, label %963, label %980

963:                                              ; preds = %959
  %964 = load i32, ptr %63, align 4, !tbaa !15
  %965 = load i32, ptr %64, align 4, !tbaa !15
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.25, ptr noundef @.str.2, i32 noundef 48, i32 noundef %964, i32 noundef %965)
          to label %966 unwind label %975

966:                                              ; preds = %963
  %967 = load i8, ptr %65, align 1, !tbaa !11, !range !13, !noundef !14
  %968 = trunc i8 %967 to i1
  br i1 %968, label %972, label %969

969:                                              ; preds = %966
  %970 = load i8, ptr %66, align 1, !tbaa !11, !range !13, !noundef !14
  %971 = trunc i8 %970 to i1
  br i1 %971, label %972, label %979

972:                                              ; preds = %969, %966
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.4)
          to label %973 unwind label %975

973:                                              ; preds = %972
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.5)
          to label %974 unwind label %975

974:                                              ; preds = %973
  br label %979

975:                                              ; preds = %973, %972, %963
  %976 = landingpad { ptr, i32 }
          cleanup
  %977 = extractvalue { ptr, i32 } %976, 0
  store ptr %977, ptr %9, align 8
  %978 = extractvalue { ptr, i32 } %976, 1
  store i32 %978, ptr %10, align 4
  br label %1015

979:                                              ; preds = %974, %969
  store i8 1, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !11
  br label %980

980:                                              ; preds = %979, %959
  br label %981

981:                                              ; preds = %980, %958
  call void @llvm.lifetime.end.p0(i64 1, ptr %66) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %65) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %64) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %63) #6
  br label %982

982:                                              ; preds = %981
  br label %983

983:                                              ; preds = %982
  br label %984

984:                                              ; preds = %983
  call void @llvm.lifetime.start.p0(i64 4, ptr %68) #6
  store i32 0, ptr %68, align 4, !tbaa !15
  call void @llvm.lifetime.start.p0(i64 4, ptr %69) #6
  %985 = invoke noundef i32 @_ZN6tflite19LinearMemoryPlanner9AddBufferEiii(ptr noundef nonnull align 8 dereferenceable(8216) %57, i32 noundef 256, i32 noundef 27, i32 noundef 28)
          to label %986 unwind label %1017

986:                                              ; preds = %984
  store i32 %985, ptr %69, align 4, !tbaa !15
  call void @llvm.lifetime.start.p0(i64 1, ptr %70) #6
  store i8 0, ptr %70, align 1, !tbaa !11
  call void @llvm.lifetime.start.p0(i64 1, ptr %71) #6
  store i8 0, ptr %71, align 1, !tbaa !11
  %987 = load i8, ptr %70, align 1, !tbaa !11, !range !13, !noundef !14
  %988 = trunc i8 %987 to i1
  br i1 %988, label %989, label %1026

989:                                              ; preds = %986
  %990 = load i8, ptr %71, align 1, !tbaa !11, !range !13, !noundef !14
  %991 = trunc i8 %990 to i1
  br i1 %991, label %992, label %1026

992:                                              ; preds = %989
  call void @llvm.lifetime.start.p0(i64 4, ptr %72) #6
  %993 = load i32, ptr %68, align 4, !tbaa !15
  %994 = load i32, ptr %69, align 4, !tbaa !15
  %995 = icmp sgt i32 %993, %994
  br i1 %995, label %996, label %1000

996:                                              ; preds = %992
  %997 = load i32, ptr %68, align 4, !tbaa !15
  %998 = load i32, ptr %69, align 4, !tbaa !15
  %999 = sub nsw i32 %997, %998
  br label %1004

1000:                                             ; preds = %992
  %1001 = load i32, ptr %69, align 4, !tbaa !15
  %1002 = load i32, ptr %68, align 4, !tbaa !15
  %1003 = sub nsw i32 %1001, %1002
  br label %1004

1004:                                             ; preds = %1000, %996
  %1005 = phi i32 [ %999, %996 ], [ %1003, %1000 ]
  store i32 %1005, ptr %72, align 4, !tbaa !5
  %1006 = load i32, ptr %72, align 4, !tbaa !5
  %1007 = call noundef i32 @_ZNSt14numeric_limitsIiE7epsilonEv() #6
  %1008 = icmp sgt i32 %1006, %1007
  br i1 %1008, label %1009, label %1025

1009:                                             ; preds = %1004
  %1010 = load i32, ptr %68, align 4, !tbaa !15
  %1011 = uitofp i32 %1010 to double
  %1012 = load i32, ptr %69, align 4, !tbaa !15
  %1013 = uitofp i32 %1012 to double
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.26, ptr noundef @.str.2, i32 noundef 49, double noundef %1011, double noundef %1013)
          to label %1014 unwind label %1021

1014:                                             ; preds = %1009
  store i8 1, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !11
  br label %1025

1015:                                             ; preds = %975, %954
  call void @llvm.lifetime.end.p0(i64 1, ptr %66) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %65) #6
  br label %1016

1016:                                             ; preds = %1015, %950
  call void @llvm.lifetime.end.p0(i64 4, ptr %64) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %63) #6
  br label %2944

1017:                                             ; preds = %984
  %1018 = landingpad { ptr, i32 }
          cleanup
  %1019 = extractvalue { ptr, i32 } %1018, 0
  store ptr %1019, ptr %9, align 8
  %1020 = extractvalue { ptr, i32 } %1018, 1
  store i32 %1020, ptr %10, align 4
  br label %1083

1021:                                             ; preds = %1009
  %1022 = landingpad { ptr, i32 }
          cleanup
  %1023 = extractvalue { ptr, i32 } %1022, 0
  store ptr %1023, ptr %9, align 8
  %1024 = extractvalue { ptr, i32 } %1022, 1
  store i32 %1024, ptr %10, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %72) #6
  br label %1082

1025:                                             ; preds = %1014, %1004
  call void @llvm.lifetime.end.p0(i64 4, ptr %72) #6
  br label %1048

1026:                                             ; preds = %989, %986
  %1027 = load i32, ptr %68, align 4, !tbaa !15
  %1028 = load i32, ptr %69, align 4, !tbaa !15
  %1029 = icmp ne i32 %1027, %1028
  br i1 %1029, label %1030, label %1047

1030:                                             ; preds = %1026
  %1031 = load i32, ptr %68, align 4, !tbaa !15
  %1032 = load i32, ptr %69, align 4, !tbaa !15
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.27, ptr noundef @.str.2, i32 noundef 49, i32 noundef %1031, i32 noundef %1032)
          to label %1033 unwind label %1042

1033:                                             ; preds = %1030
  %1034 = load i8, ptr %70, align 1, !tbaa !11, !range !13, !noundef !14
  %1035 = trunc i8 %1034 to i1
  br i1 %1035, label %1039, label %1036

1036:                                             ; preds = %1033
  %1037 = load i8, ptr %71, align 1, !tbaa !11, !range !13, !noundef !14
  %1038 = trunc i8 %1037 to i1
  br i1 %1038, label %1039, label %1046

1039:                                             ; preds = %1036, %1033
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.4)
          to label %1040 unwind label %1042

1040:                                             ; preds = %1039
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.5)
          to label %1041 unwind label %1042

1041:                                             ; preds = %1040
  br label %1046

1042:                                             ; preds = %1040, %1039, %1030
  %1043 = landingpad { ptr, i32 }
          cleanup
  %1044 = extractvalue { ptr, i32 } %1043, 0
  store ptr %1044, ptr %9, align 8
  %1045 = extractvalue { ptr, i32 } %1043, 1
  store i32 %1045, ptr %10, align 4
  br label %1082

1046:                                             ; preds = %1041, %1036
  store i8 1, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !11
  br label %1047

1047:                                             ; preds = %1046, %1026
  br label %1048

1048:                                             ; preds = %1047, %1025
  call void @llvm.lifetime.end.p0(i64 1, ptr %71) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %70) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %69) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %68) #6
  br label %1049

1049:                                             ; preds = %1048
  br label %1050

1050:                                             ; preds = %1049
  br label %1051

1051:                                             ; preds = %1050
  call void @llvm.lifetime.start.p0(i64 4, ptr %73) #6
  store i32 0, ptr %73, align 4, !tbaa !15
  call void @llvm.lifetime.start.p0(i64 4, ptr %74) #6
  %1052 = invoke noundef i32 @_ZN6tflite19LinearMemoryPlanner9AddBufferEiii(ptr noundef nonnull align 8 dereferenceable(8216) %57, i32 noundef 2304, i32 noundef 26, i32 noundef 27)
          to label %1053 unwind label %1084

1053:                                             ; preds = %1051
  store i32 %1052, ptr %74, align 4, !tbaa !15
  call void @llvm.lifetime.start.p0(i64 1, ptr %75) #6
  store i8 0, ptr %75, align 1, !tbaa !11
  call void @llvm.lifetime.start.p0(i64 1, ptr %76) #6
  store i8 0, ptr %76, align 1, !tbaa !11
  %1054 = load i8, ptr %75, align 1, !tbaa !11, !range !13, !noundef !14
  %1055 = trunc i8 %1054 to i1
  br i1 %1055, label %1056, label %1093

1056:                                             ; preds = %1053
  %1057 = load i8, ptr %76, align 1, !tbaa !11, !range !13, !noundef !14
  %1058 = trunc i8 %1057 to i1
  br i1 %1058, label %1059, label %1093

1059:                                             ; preds = %1056
  call void @llvm.lifetime.start.p0(i64 4, ptr %77) #6
  %1060 = load i32, ptr %73, align 4, !tbaa !15
  %1061 = load i32, ptr %74, align 4, !tbaa !15
  %1062 = icmp sgt i32 %1060, %1061
  br i1 %1062, label %1063, label %1067

1063:                                             ; preds = %1059
  %1064 = load i32, ptr %73, align 4, !tbaa !15
  %1065 = load i32, ptr %74, align 4, !tbaa !15
  %1066 = sub nsw i32 %1064, %1065
  br label %1071

1067:                                             ; preds = %1059
  %1068 = load i32, ptr %74, align 4, !tbaa !15
  %1069 = load i32, ptr %73, align 4, !tbaa !15
  %1070 = sub nsw i32 %1068, %1069
  br label %1071

1071:                                             ; preds = %1067, %1063
  %1072 = phi i32 [ %1066, %1063 ], [ %1070, %1067 ]
  store i32 %1072, ptr %77, align 4, !tbaa !5
  %1073 = load i32, ptr %77, align 4, !tbaa !5
  %1074 = call noundef i32 @_ZNSt14numeric_limitsIiE7epsilonEv() #6
  %1075 = icmp sgt i32 %1073, %1074
  br i1 %1075, label %1076, label %1092

1076:                                             ; preds = %1071
  %1077 = load i32, ptr %73, align 4, !tbaa !15
  %1078 = uitofp i32 %1077 to double
  %1079 = load i32, ptr %74, align 4, !tbaa !15
  %1080 = uitofp i32 %1079 to double
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.28, ptr noundef @.str.2, i32 noundef 50, double noundef %1078, double noundef %1080)
          to label %1081 unwind label %1088

1081:                                             ; preds = %1076
  store i8 1, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !11
  br label %1092

1082:                                             ; preds = %1042, %1021
  call void @llvm.lifetime.end.p0(i64 1, ptr %71) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %70) #6
  br label %1083

1083:                                             ; preds = %1082, %1017
  call void @llvm.lifetime.end.p0(i64 4, ptr %69) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %68) #6
  br label %2944

1084:                                             ; preds = %1051
  %1085 = landingpad { ptr, i32 }
          cleanup
  %1086 = extractvalue { ptr, i32 } %1085, 0
  store ptr %1086, ptr %9, align 8
  %1087 = extractvalue { ptr, i32 } %1085, 1
  store i32 %1087, ptr %10, align 4
  br label %1150

1088:                                             ; preds = %1076
  %1089 = landingpad { ptr, i32 }
          cleanup
  %1090 = extractvalue { ptr, i32 } %1089, 0
  store ptr %1090, ptr %9, align 8
  %1091 = extractvalue { ptr, i32 } %1089, 1
  store i32 %1091, ptr %10, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %77) #6
  br label %1149

1092:                                             ; preds = %1081, %1071
  call void @llvm.lifetime.end.p0(i64 4, ptr %77) #6
  br label %1115

1093:                                             ; preds = %1056, %1053
  %1094 = load i32, ptr %73, align 4, !tbaa !15
  %1095 = load i32, ptr %74, align 4, !tbaa !15
  %1096 = icmp ne i32 %1094, %1095
  br i1 %1096, label %1097, label %1114

1097:                                             ; preds = %1093
  %1098 = load i32, ptr %73, align 4, !tbaa !15
  %1099 = load i32, ptr %74, align 4, !tbaa !15
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.29, ptr noundef @.str.2, i32 noundef 50, i32 noundef %1098, i32 noundef %1099)
          to label %1100 unwind label %1109

1100:                                             ; preds = %1097
  %1101 = load i8, ptr %75, align 1, !tbaa !11, !range !13, !noundef !14
  %1102 = trunc i8 %1101 to i1
  br i1 %1102, label %1106, label %1103

1103:                                             ; preds = %1100
  %1104 = load i8, ptr %76, align 1, !tbaa !11, !range !13, !noundef !14
  %1105 = trunc i8 %1104 to i1
  br i1 %1105, label %1106, label %1113

1106:                                             ; preds = %1103, %1100
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.4)
          to label %1107 unwind label %1109

1107:                                             ; preds = %1106
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.5)
          to label %1108 unwind label %1109

1108:                                             ; preds = %1107
  br label %1113

1109:                                             ; preds = %1107, %1106, %1097
  %1110 = landingpad { ptr, i32 }
          cleanup
  %1111 = extractvalue { ptr, i32 } %1110, 0
  store ptr %1111, ptr %9, align 8
  %1112 = extractvalue { ptr, i32 } %1110, 1
  store i32 %1112, ptr %10, align 4
  br label %1149

1113:                                             ; preds = %1108, %1103
  store i8 1, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !11
  br label %1114

1114:                                             ; preds = %1113, %1093
  br label %1115

1115:                                             ; preds = %1114, %1092
  call void @llvm.lifetime.end.p0(i64 1, ptr %76) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %75) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %74) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %73) #6
  br label %1116

1116:                                             ; preds = %1115
  br label %1117

1117:                                             ; preds = %1116
  br label %1118

1118:                                             ; preds = %1117
  call void @llvm.lifetime.start.p0(i64 4, ptr %78) #6
  store i32 0, ptr %78, align 4, !tbaa !15
  call void @llvm.lifetime.start.p0(i64 4, ptr %79) #6
  %1119 = invoke noundef i32 @_ZN6tflite19LinearMemoryPlanner9AddBufferEiii(ptr noundef nonnull align 8 dereferenceable(8216) %57, i32 noundef 2304, i32 noundef 25, i32 noundef 26)
          to label %1120 unwind label %1151

1120:                                             ; preds = %1118
  store i32 %1119, ptr %79, align 4, !tbaa !15
  call void @llvm.lifetime.start.p0(i64 1, ptr %80) #6
  store i8 0, ptr %80, align 1, !tbaa !11
  call void @llvm.lifetime.start.p0(i64 1, ptr %81) #6
  store i8 0, ptr %81, align 1, !tbaa !11
  %1121 = load i8, ptr %80, align 1, !tbaa !11, !range !13, !noundef !14
  %1122 = trunc i8 %1121 to i1
  br i1 %1122, label %1123, label %1160

1123:                                             ; preds = %1120
  %1124 = load i8, ptr %81, align 1, !tbaa !11, !range !13, !noundef !14
  %1125 = trunc i8 %1124 to i1
  br i1 %1125, label %1126, label %1160

1126:                                             ; preds = %1123
  call void @llvm.lifetime.start.p0(i64 4, ptr %82) #6
  %1127 = load i32, ptr %78, align 4, !tbaa !15
  %1128 = load i32, ptr %79, align 4, !tbaa !15
  %1129 = icmp sgt i32 %1127, %1128
  br i1 %1129, label %1130, label %1134

1130:                                             ; preds = %1126
  %1131 = load i32, ptr %78, align 4, !tbaa !15
  %1132 = load i32, ptr %79, align 4, !tbaa !15
  %1133 = sub nsw i32 %1131, %1132
  br label %1138

1134:                                             ; preds = %1126
  %1135 = load i32, ptr %79, align 4, !tbaa !15
  %1136 = load i32, ptr %78, align 4, !tbaa !15
  %1137 = sub nsw i32 %1135, %1136
  br label %1138

1138:                                             ; preds = %1134, %1130
  %1139 = phi i32 [ %1133, %1130 ], [ %1137, %1134 ]
  store i32 %1139, ptr %82, align 4, !tbaa !5
  %1140 = load i32, ptr %82, align 4, !tbaa !5
  %1141 = call noundef i32 @_ZNSt14numeric_limitsIiE7epsilonEv() #6
  %1142 = icmp sgt i32 %1140, %1141
  br i1 %1142, label %1143, label %1159

1143:                                             ; preds = %1138
  %1144 = load i32, ptr %78, align 4, !tbaa !15
  %1145 = uitofp i32 %1144 to double
  %1146 = load i32, ptr %79, align 4, !tbaa !15
  %1147 = uitofp i32 %1146 to double
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.30, ptr noundef @.str.2, i32 noundef 51, double noundef %1145, double noundef %1147)
          to label %1148 unwind label %1155

1148:                                             ; preds = %1143
  store i8 1, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !11
  br label %1159

1149:                                             ; preds = %1109, %1088
  call void @llvm.lifetime.end.p0(i64 1, ptr %76) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %75) #6
  br label %1150

1150:                                             ; preds = %1149, %1084
  call void @llvm.lifetime.end.p0(i64 4, ptr %74) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %73) #6
  br label %2944

1151:                                             ; preds = %1118
  %1152 = landingpad { ptr, i32 }
          cleanup
  %1153 = extractvalue { ptr, i32 } %1152, 0
  store ptr %1153, ptr %9, align 8
  %1154 = extractvalue { ptr, i32 } %1152, 1
  store i32 %1154, ptr %10, align 4
  br label %1217

1155:                                             ; preds = %1143
  %1156 = landingpad { ptr, i32 }
          cleanup
  %1157 = extractvalue { ptr, i32 } %1156, 0
  store ptr %1157, ptr %9, align 8
  %1158 = extractvalue { ptr, i32 } %1156, 1
  store i32 %1158, ptr %10, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %82) #6
  br label %1216

1159:                                             ; preds = %1148, %1138
  call void @llvm.lifetime.end.p0(i64 4, ptr %82) #6
  br label %1182

1160:                                             ; preds = %1123, %1120
  %1161 = load i32, ptr %78, align 4, !tbaa !15
  %1162 = load i32, ptr %79, align 4, !tbaa !15
  %1163 = icmp ne i32 %1161, %1162
  br i1 %1163, label %1164, label %1181

1164:                                             ; preds = %1160
  %1165 = load i32, ptr %78, align 4, !tbaa !15
  %1166 = load i32, ptr %79, align 4, !tbaa !15
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.31, ptr noundef @.str.2, i32 noundef 51, i32 noundef %1165, i32 noundef %1166)
          to label %1167 unwind label %1176

1167:                                             ; preds = %1164
  %1168 = load i8, ptr %80, align 1, !tbaa !11, !range !13, !noundef !14
  %1169 = trunc i8 %1168 to i1
  br i1 %1169, label %1173, label %1170

1170:                                             ; preds = %1167
  %1171 = load i8, ptr %81, align 1, !tbaa !11, !range !13, !noundef !14
  %1172 = trunc i8 %1171 to i1
  br i1 %1172, label %1173, label %1180

1173:                                             ; preds = %1170, %1167
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.4)
          to label %1174 unwind label %1176

1174:                                             ; preds = %1173
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.5)
          to label %1175 unwind label %1176

1175:                                             ; preds = %1174
  br label %1180

1176:                                             ; preds = %1174, %1173, %1164
  %1177 = landingpad { ptr, i32 }
          cleanup
  %1178 = extractvalue { ptr, i32 } %1177, 0
  store ptr %1178, ptr %9, align 8
  %1179 = extractvalue { ptr, i32 } %1177, 1
  store i32 %1179, ptr %10, align 4
  br label %1216

1180:                                             ; preds = %1175, %1170
  store i8 1, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !11
  br label %1181

1181:                                             ; preds = %1180, %1160
  br label %1182

1182:                                             ; preds = %1181, %1159
  call void @llvm.lifetime.end.p0(i64 1, ptr %81) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %80) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %79) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %78) #6
  br label %1183

1183:                                             ; preds = %1182
  br label %1184

1184:                                             ; preds = %1183
  br label %1185

1185:                                             ; preds = %1184
  call void @llvm.lifetime.start.p0(i64 4, ptr %83) #6
  store i32 0, ptr %83, align 4, !tbaa !15
  call void @llvm.lifetime.start.p0(i64 4, ptr %84) #6
  %1186 = invoke noundef i32 @_ZN6tflite19LinearMemoryPlanner9AddBufferEiii(ptr noundef nonnull align 8 dereferenceable(8216) %57, i32 noundef 2304, i32 noundef 24, i32 noundef 25)
          to label %1187 unwind label %1218

1187:                                             ; preds = %1185
  store i32 %1186, ptr %84, align 4, !tbaa !15
  call void @llvm.lifetime.start.p0(i64 1, ptr %85) #6
  store i8 0, ptr %85, align 1, !tbaa !11
  call void @llvm.lifetime.start.p0(i64 1, ptr %86) #6
  store i8 0, ptr %86, align 1, !tbaa !11
  %1188 = load i8, ptr %85, align 1, !tbaa !11, !range !13, !noundef !14
  %1189 = trunc i8 %1188 to i1
  br i1 %1189, label %1190, label %1227

1190:                                             ; preds = %1187
  %1191 = load i8, ptr %86, align 1, !tbaa !11, !range !13, !noundef !14
  %1192 = trunc i8 %1191 to i1
  br i1 %1192, label %1193, label %1227

1193:                                             ; preds = %1190
  call void @llvm.lifetime.start.p0(i64 4, ptr %87) #6
  %1194 = load i32, ptr %83, align 4, !tbaa !15
  %1195 = load i32, ptr %84, align 4, !tbaa !15
  %1196 = icmp sgt i32 %1194, %1195
  br i1 %1196, label %1197, label %1201

1197:                                             ; preds = %1193
  %1198 = load i32, ptr %83, align 4, !tbaa !15
  %1199 = load i32, ptr %84, align 4, !tbaa !15
  %1200 = sub nsw i32 %1198, %1199
  br label %1205

1201:                                             ; preds = %1193
  %1202 = load i32, ptr %84, align 4, !tbaa !15
  %1203 = load i32, ptr %83, align 4, !tbaa !15
  %1204 = sub nsw i32 %1202, %1203
  br label %1205

1205:                                             ; preds = %1201, %1197
  %1206 = phi i32 [ %1200, %1197 ], [ %1204, %1201 ]
  store i32 %1206, ptr %87, align 4, !tbaa !5
  %1207 = load i32, ptr %87, align 4, !tbaa !5
  %1208 = call noundef i32 @_ZNSt14numeric_limitsIiE7epsilonEv() #6
  %1209 = icmp sgt i32 %1207, %1208
  br i1 %1209, label %1210, label %1226

1210:                                             ; preds = %1205
  %1211 = load i32, ptr %83, align 4, !tbaa !15
  %1212 = uitofp i32 %1211 to double
  %1213 = load i32, ptr %84, align 4, !tbaa !15
  %1214 = uitofp i32 %1213 to double
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.32, ptr noundef @.str.2, i32 noundef 52, double noundef %1212, double noundef %1214)
          to label %1215 unwind label %1222

1215:                                             ; preds = %1210
  store i8 1, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !11
  br label %1226

1216:                                             ; preds = %1176, %1155
  call void @llvm.lifetime.end.p0(i64 1, ptr %81) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %80) #6
  br label %1217

1217:                                             ; preds = %1216, %1151
  call void @llvm.lifetime.end.p0(i64 4, ptr %79) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %78) #6
  br label %2944

1218:                                             ; preds = %1185
  %1219 = landingpad { ptr, i32 }
          cleanup
  %1220 = extractvalue { ptr, i32 } %1219, 0
  store ptr %1220, ptr %9, align 8
  %1221 = extractvalue { ptr, i32 } %1219, 1
  store i32 %1221, ptr %10, align 4
  br label %1284

1222:                                             ; preds = %1210
  %1223 = landingpad { ptr, i32 }
          cleanup
  %1224 = extractvalue { ptr, i32 } %1223, 0
  store ptr %1224, ptr %9, align 8
  %1225 = extractvalue { ptr, i32 } %1223, 1
  store i32 %1225, ptr %10, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %87) #6
  br label %1283

1226:                                             ; preds = %1215, %1205
  call void @llvm.lifetime.end.p0(i64 4, ptr %87) #6
  br label %1249

1227:                                             ; preds = %1190, %1187
  %1228 = load i32, ptr %83, align 4, !tbaa !15
  %1229 = load i32, ptr %84, align 4, !tbaa !15
  %1230 = icmp ne i32 %1228, %1229
  br i1 %1230, label %1231, label %1248

1231:                                             ; preds = %1227
  %1232 = load i32, ptr %83, align 4, !tbaa !15
  %1233 = load i32, ptr %84, align 4, !tbaa !15
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.33, ptr noundef @.str.2, i32 noundef 52, i32 noundef %1232, i32 noundef %1233)
          to label %1234 unwind label %1243

1234:                                             ; preds = %1231
  %1235 = load i8, ptr %85, align 1, !tbaa !11, !range !13, !noundef !14
  %1236 = trunc i8 %1235 to i1
  br i1 %1236, label %1240, label %1237

1237:                                             ; preds = %1234
  %1238 = load i8, ptr %86, align 1, !tbaa !11, !range !13, !noundef !14
  %1239 = trunc i8 %1238 to i1
  br i1 %1239, label %1240, label %1247

1240:                                             ; preds = %1237, %1234
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.4)
          to label %1241 unwind label %1243

1241:                                             ; preds = %1240
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.5)
          to label %1242 unwind label %1243

1242:                                             ; preds = %1241
  br label %1247

1243:                                             ; preds = %1241, %1240, %1231
  %1244 = landingpad { ptr, i32 }
          cleanup
  %1245 = extractvalue { ptr, i32 } %1244, 0
  store ptr %1245, ptr %9, align 8
  %1246 = extractvalue { ptr, i32 } %1244, 1
  store i32 %1246, ptr %10, align 4
  br label %1283

1247:                                             ; preds = %1242, %1237
  store i8 1, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !11
  br label %1248

1248:                                             ; preds = %1247, %1227
  br label %1249

1249:                                             ; preds = %1248, %1226
  call void @llvm.lifetime.end.p0(i64 1, ptr %86) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %85) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %84) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %83) #6
  br label %1250

1250:                                             ; preds = %1249
  br label %1251

1251:                                             ; preds = %1250
  br label %1252

1252:                                             ; preds = %1251
  call void @llvm.lifetime.start.p0(i64 4, ptr %88) #6
  store i32 0, ptr %88, align 4, !tbaa !15
  call void @llvm.lifetime.start.p0(i64 4, ptr %89) #6
  %1253 = invoke noundef i32 @_ZN6tflite19LinearMemoryPlanner9AddBufferEiii(ptr noundef nonnull align 8 dereferenceable(8216) %57, i32 noundef 1152, i32 noundef 23, i32 noundef 24)
          to label %1254 unwind label %1285

1254:                                             ; preds = %1252
  store i32 %1253, ptr %89, align 4, !tbaa !15
  call void @llvm.lifetime.start.p0(i64 1, ptr %90) #6
  store i8 0, ptr %90, align 1, !tbaa !11
  call void @llvm.lifetime.start.p0(i64 1, ptr %91) #6
  store i8 0, ptr %91, align 1, !tbaa !11
  %1255 = load i8, ptr %90, align 1, !tbaa !11, !range !13, !noundef !14
  %1256 = trunc i8 %1255 to i1
  br i1 %1256, label %1257, label %1294

1257:                                             ; preds = %1254
  %1258 = load i8, ptr %91, align 1, !tbaa !11, !range !13, !noundef !14
  %1259 = trunc i8 %1258 to i1
  br i1 %1259, label %1260, label %1294

1260:                                             ; preds = %1257
  call void @llvm.lifetime.start.p0(i64 4, ptr %92) #6
  %1261 = load i32, ptr %88, align 4, !tbaa !15
  %1262 = load i32, ptr %89, align 4, !tbaa !15
  %1263 = icmp sgt i32 %1261, %1262
  br i1 %1263, label %1264, label %1268

1264:                                             ; preds = %1260
  %1265 = load i32, ptr %88, align 4, !tbaa !15
  %1266 = load i32, ptr %89, align 4, !tbaa !15
  %1267 = sub nsw i32 %1265, %1266
  br label %1272

1268:                                             ; preds = %1260
  %1269 = load i32, ptr %89, align 4, !tbaa !15
  %1270 = load i32, ptr %88, align 4, !tbaa !15
  %1271 = sub nsw i32 %1269, %1270
  br label %1272

1272:                                             ; preds = %1268, %1264
  %1273 = phi i32 [ %1267, %1264 ], [ %1271, %1268 ]
  store i32 %1273, ptr %92, align 4, !tbaa !5
  %1274 = load i32, ptr %92, align 4, !tbaa !5
  %1275 = call noundef i32 @_ZNSt14numeric_limitsIiE7epsilonEv() #6
  %1276 = icmp sgt i32 %1274, %1275
  br i1 %1276, label %1277, label %1293

1277:                                             ; preds = %1272
  %1278 = load i32, ptr %88, align 4, !tbaa !15
  %1279 = uitofp i32 %1278 to double
  %1280 = load i32, ptr %89, align 4, !tbaa !15
  %1281 = uitofp i32 %1280 to double
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.34, ptr noundef @.str.2, i32 noundef 53, double noundef %1279, double noundef %1281)
          to label %1282 unwind label %1289

1282:                                             ; preds = %1277
  store i8 1, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !11
  br label %1293

1283:                                             ; preds = %1243, %1222
  call void @llvm.lifetime.end.p0(i64 1, ptr %86) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %85) #6
  br label %1284

1284:                                             ; preds = %1283, %1218
  call void @llvm.lifetime.end.p0(i64 4, ptr %84) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %83) #6
  br label %2944

1285:                                             ; preds = %1252
  %1286 = landingpad { ptr, i32 }
          cleanup
  %1287 = extractvalue { ptr, i32 } %1286, 0
  store ptr %1287, ptr %9, align 8
  %1288 = extractvalue { ptr, i32 } %1286, 1
  store i32 %1288, ptr %10, align 4
  br label %1351

1289:                                             ; preds = %1277
  %1290 = landingpad { ptr, i32 }
          cleanup
  %1291 = extractvalue { ptr, i32 } %1290, 0
  store ptr %1291, ptr %9, align 8
  %1292 = extractvalue { ptr, i32 } %1290, 1
  store i32 %1292, ptr %10, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %92) #6
  br label %1350

1293:                                             ; preds = %1282, %1272
  call void @llvm.lifetime.end.p0(i64 4, ptr %92) #6
  br label %1316

1294:                                             ; preds = %1257, %1254
  %1295 = load i32, ptr %88, align 4, !tbaa !15
  %1296 = load i32, ptr %89, align 4, !tbaa !15
  %1297 = icmp ne i32 %1295, %1296
  br i1 %1297, label %1298, label %1315

1298:                                             ; preds = %1294
  %1299 = load i32, ptr %88, align 4, !tbaa !15
  %1300 = load i32, ptr %89, align 4, !tbaa !15
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.35, ptr noundef @.str.2, i32 noundef 53, i32 noundef %1299, i32 noundef %1300)
          to label %1301 unwind label %1310

1301:                                             ; preds = %1298
  %1302 = load i8, ptr %90, align 1, !tbaa !11, !range !13, !noundef !14
  %1303 = trunc i8 %1302 to i1
  br i1 %1303, label %1307, label %1304

1304:                                             ; preds = %1301
  %1305 = load i8, ptr %91, align 1, !tbaa !11, !range !13, !noundef !14
  %1306 = trunc i8 %1305 to i1
  br i1 %1306, label %1307, label %1314

1307:                                             ; preds = %1304, %1301
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.4)
          to label %1308 unwind label %1310

1308:                                             ; preds = %1307
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.5)
          to label %1309 unwind label %1310

1309:                                             ; preds = %1308
  br label %1314

1310:                                             ; preds = %1308, %1307, %1298
  %1311 = landingpad { ptr, i32 }
          cleanup
  %1312 = extractvalue { ptr, i32 } %1311, 0
  store ptr %1312, ptr %9, align 8
  %1313 = extractvalue { ptr, i32 } %1311, 1
  store i32 %1313, ptr %10, align 4
  br label %1350

1314:                                             ; preds = %1309, %1304
  store i8 1, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !11
  br label %1315

1315:                                             ; preds = %1314, %1294
  br label %1316

1316:                                             ; preds = %1315, %1293
  call void @llvm.lifetime.end.p0(i64 1, ptr %91) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %90) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %89) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %88) #6
  br label %1317

1317:                                             ; preds = %1316
  br label %1318

1318:                                             ; preds = %1317
  br label %1319

1319:                                             ; preds = %1318
  call void @llvm.lifetime.start.p0(i64 4, ptr %93) #6
  store i32 0, ptr %93, align 4, !tbaa !15
  call void @llvm.lifetime.start.p0(i64 4, ptr %94) #6
  %1320 = invoke noundef i32 @_ZN6tflite19LinearMemoryPlanner9AddBufferEiii(ptr noundef nonnull align 8 dereferenceable(8216) %57, i32 noundef 4608, i32 noundef 22, i32 noundef 23)
          to label %1321 unwind label %1352

1321:                                             ; preds = %1319
  store i32 %1320, ptr %94, align 4, !tbaa !15
  call void @llvm.lifetime.start.p0(i64 1, ptr %95) #6
  store i8 0, ptr %95, align 1, !tbaa !11
  call void @llvm.lifetime.start.p0(i64 1, ptr %96) #6
  store i8 0, ptr %96, align 1, !tbaa !11
  %1322 = load i8, ptr %95, align 1, !tbaa !11, !range !13, !noundef !14
  %1323 = trunc i8 %1322 to i1
  br i1 %1323, label %1324, label %1361

1324:                                             ; preds = %1321
  %1325 = load i8, ptr %96, align 1, !tbaa !11, !range !13, !noundef !14
  %1326 = trunc i8 %1325 to i1
  br i1 %1326, label %1327, label %1361

1327:                                             ; preds = %1324
  call void @llvm.lifetime.start.p0(i64 4, ptr %97) #6
  %1328 = load i32, ptr %93, align 4, !tbaa !15
  %1329 = load i32, ptr %94, align 4, !tbaa !15
  %1330 = icmp sgt i32 %1328, %1329
  br i1 %1330, label %1331, label %1335

1331:                                             ; preds = %1327
  %1332 = load i32, ptr %93, align 4, !tbaa !15
  %1333 = load i32, ptr %94, align 4, !tbaa !15
  %1334 = sub nsw i32 %1332, %1333
  br label %1339

1335:                                             ; preds = %1327
  %1336 = load i32, ptr %94, align 4, !tbaa !15
  %1337 = load i32, ptr %93, align 4, !tbaa !15
  %1338 = sub nsw i32 %1336, %1337
  br label %1339

1339:                                             ; preds = %1335, %1331
  %1340 = phi i32 [ %1334, %1331 ], [ %1338, %1335 ]
  store i32 %1340, ptr %97, align 4, !tbaa !5
  %1341 = load i32, ptr %97, align 4, !tbaa !5
  %1342 = call noundef i32 @_ZNSt14numeric_limitsIiE7epsilonEv() #6
  %1343 = icmp sgt i32 %1341, %1342
  br i1 %1343, label %1344, label %1360

1344:                                             ; preds = %1339
  %1345 = load i32, ptr %93, align 4, !tbaa !15
  %1346 = uitofp i32 %1345 to double
  %1347 = load i32, ptr %94, align 4, !tbaa !15
  %1348 = uitofp i32 %1347 to double
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.36, ptr noundef @.str.2, i32 noundef 54, double noundef %1346, double noundef %1348)
          to label %1349 unwind label %1356

1349:                                             ; preds = %1344
  store i8 1, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !11
  br label %1360

1350:                                             ; preds = %1310, %1289
  call void @llvm.lifetime.end.p0(i64 1, ptr %91) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %90) #6
  br label %1351

1351:                                             ; preds = %1350, %1285
  call void @llvm.lifetime.end.p0(i64 4, ptr %89) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %88) #6
  br label %2944

1352:                                             ; preds = %1319
  %1353 = landingpad { ptr, i32 }
          cleanup
  %1354 = extractvalue { ptr, i32 } %1353, 0
  store ptr %1354, ptr %9, align 8
  %1355 = extractvalue { ptr, i32 } %1353, 1
  store i32 %1355, ptr %10, align 4
  br label %1418

1356:                                             ; preds = %1344
  %1357 = landingpad { ptr, i32 }
          cleanup
  %1358 = extractvalue { ptr, i32 } %1357, 0
  store ptr %1358, ptr %9, align 8
  %1359 = extractvalue { ptr, i32 } %1357, 1
  store i32 %1359, ptr %10, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %97) #6
  br label %1417

1360:                                             ; preds = %1349, %1339
  call void @llvm.lifetime.end.p0(i64 4, ptr %97) #6
  br label %1383

1361:                                             ; preds = %1324, %1321
  %1362 = load i32, ptr %93, align 4, !tbaa !15
  %1363 = load i32, ptr %94, align 4, !tbaa !15
  %1364 = icmp ne i32 %1362, %1363
  br i1 %1364, label %1365, label %1382

1365:                                             ; preds = %1361
  %1366 = load i32, ptr %93, align 4, !tbaa !15
  %1367 = load i32, ptr %94, align 4, !tbaa !15
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.37, ptr noundef @.str.2, i32 noundef 54, i32 noundef %1366, i32 noundef %1367)
          to label %1368 unwind label %1377

1368:                                             ; preds = %1365
  %1369 = load i8, ptr %95, align 1, !tbaa !11, !range !13, !noundef !14
  %1370 = trunc i8 %1369 to i1
  br i1 %1370, label %1374, label %1371

1371:                                             ; preds = %1368
  %1372 = load i8, ptr %96, align 1, !tbaa !11, !range !13, !noundef !14
  %1373 = trunc i8 %1372 to i1
  br i1 %1373, label %1374, label %1381

1374:                                             ; preds = %1371, %1368
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.4)
          to label %1375 unwind label %1377

1375:                                             ; preds = %1374
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.5)
          to label %1376 unwind label %1377

1376:                                             ; preds = %1375
  br label %1381

1377:                                             ; preds = %1375, %1374, %1365
  %1378 = landingpad { ptr, i32 }
          cleanup
  %1379 = extractvalue { ptr, i32 } %1378, 0
  store ptr %1379, ptr %9, align 8
  %1380 = extractvalue { ptr, i32 } %1378, 1
  store i32 %1380, ptr %10, align 4
  br label %1417

1381:                                             ; preds = %1376, %1371
  store i8 1, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !11
  br label %1382

1382:                                             ; preds = %1381, %1361
  br label %1383

1383:                                             ; preds = %1382, %1360
  call void @llvm.lifetime.end.p0(i64 1, ptr %96) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %95) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %94) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %93) #6
  br label %1384

1384:                                             ; preds = %1383
  br label %1385

1385:                                             ; preds = %1384
  br label %1386

1386:                                             ; preds = %1385
  call void @llvm.lifetime.start.p0(i64 4, ptr %98) #6
  store i32 0, ptr %98, align 4, !tbaa !15
  call void @llvm.lifetime.start.p0(i64 4, ptr %99) #6
  %1387 = invoke noundef i32 @_ZN6tflite19LinearMemoryPlanner9AddBufferEiii(ptr noundef nonnull align 8 dereferenceable(8216) %57, i32 noundef 4608, i32 noundef 21, i32 noundef 22)
          to label %1388 unwind label %1419

1388:                                             ; preds = %1386
  store i32 %1387, ptr %99, align 4, !tbaa !15
  call void @llvm.lifetime.start.p0(i64 1, ptr %100) #6
  store i8 0, ptr %100, align 1, !tbaa !11
  call void @llvm.lifetime.start.p0(i64 1, ptr %101) #6
  store i8 0, ptr %101, align 1, !tbaa !11
  %1389 = load i8, ptr %100, align 1, !tbaa !11, !range !13, !noundef !14
  %1390 = trunc i8 %1389 to i1
  br i1 %1390, label %1391, label %1428

1391:                                             ; preds = %1388
  %1392 = load i8, ptr %101, align 1, !tbaa !11, !range !13, !noundef !14
  %1393 = trunc i8 %1392 to i1
  br i1 %1393, label %1394, label %1428

1394:                                             ; preds = %1391
  call void @llvm.lifetime.start.p0(i64 4, ptr %102) #6
  %1395 = load i32, ptr %98, align 4, !tbaa !15
  %1396 = load i32, ptr %99, align 4, !tbaa !15
  %1397 = icmp sgt i32 %1395, %1396
  br i1 %1397, label %1398, label %1402

1398:                                             ; preds = %1394
  %1399 = load i32, ptr %98, align 4, !tbaa !15
  %1400 = load i32, ptr %99, align 4, !tbaa !15
  %1401 = sub nsw i32 %1399, %1400
  br label %1406

1402:                                             ; preds = %1394
  %1403 = load i32, ptr %99, align 4, !tbaa !15
  %1404 = load i32, ptr %98, align 4, !tbaa !15
  %1405 = sub nsw i32 %1403, %1404
  br label %1406

1406:                                             ; preds = %1402, %1398
  %1407 = phi i32 [ %1401, %1398 ], [ %1405, %1402 ]
  store i32 %1407, ptr %102, align 4, !tbaa !5
  %1408 = load i32, ptr %102, align 4, !tbaa !5
  %1409 = call noundef i32 @_ZNSt14numeric_limitsIiE7epsilonEv() #6
  %1410 = icmp sgt i32 %1408, %1409
  br i1 %1410, label %1411, label %1427

1411:                                             ; preds = %1406
  %1412 = load i32, ptr %98, align 4, !tbaa !15
  %1413 = uitofp i32 %1412 to double
  %1414 = load i32, ptr %99, align 4, !tbaa !15
  %1415 = uitofp i32 %1414 to double
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.38, ptr noundef @.str.2, i32 noundef 55, double noundef %1413, double noundef %1415)
          to label %1416 unwind label %1423

1416:                                             ; preds = %1411
  store i8 1, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !11
  br label %1427

1417:                                             ; preds = %1377, %1356
  call void @llvm.lifetime.end.p0(i64 1, ptr %96) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %95) #6
  br label %1418

1418:                                             ; preds = %1417, %1352
  call void @llvm.lifetime.end.p0(i64 4, ptr %94) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %93) #6
  br label %2944

1419:                                             ; preds = %1386
  %1420 = landingpad { ptr, i32 }
          cleanup
  %1421 = extractvalue { ptr, i32 } %1420, 0
  store ptr %1421, ptr %9, align 8
  %1422 = extractvalue { ptr, i32 } %1420, 1
  store i32 %1422, ptr %10, align 4
  br label %1485

1423:                                             ; preds = %1411
  %1424 = landingpad { ptr, i32 }
          cleanup
  %1425 = extractvalue { ptr, i32 } %1424, 0
  store ptr %1425, ptr %9, align 8
  %1426 = extractvalue { ptr, i32 } %1424, 1
  store i32 %1426, ptr %10, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %102) #6
  br label %1484

1427:                                             ; preds = %1416, %1406
  call void @llvm.lifetime.end.p0(i64 4, ptr %102) #6
  br label %1450

1428:                                             ; preds = %1391, %1388
  %1429 = load i32, ptr %98, align 4, !tbaa !15
  %1430 = load i32, ptr %99, align 4, !tbaa !15
  %1431 = icmp ne i32 %1429, %1430
  br i1 %1431, label %1432, label %1449

1432:                                             ; preds = %1428
  %1433 = load i32, ptr %98, align 4, !tbaa !15
  %1434 = load i32, ptr %99, align 4, !tbaa !15
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.39, ptr noundef @.str.2, i32 noundef 55, i32 noundef %1433, i32 noundef %1434)
          to label %1435 unwind label %1444

1435:                                             ; preds = %1432
  %1436 = load i8, ptr %100, align 1, !tbaa !11, !range !13, !noundef !14
  %1437 = trunc i8 %1436 to i1
  br i1 %1437, label %1441, label %1438

1438:                                             ; preds = %1435
  %1439 = load i8, ptr %101, align 1, !tbaa !11, !range !13, !noundef !14
  %1440 = trunc i8 %1439 to i1
  br i1 %1440, label %1441, label %1448

1441:                                             ; preds = %1438, %1435
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.4)
          to label %1442 unwind label %1444

1442:                                             ; preds = %1441
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.5)
          to label %1443 unwind label %1444

1443:                                             ; preds = %1442
  br label %1448

1444:                                             ; preds = %1442, %1441, %1432
  %1445 = landingpad { ptr, i32 }
          cleanup
  %1446 = extractvalue { ptr, i32 } %1445, 0
  store ptr %1446, ptr %9, align 8
  %1447 = extractvalue { ptr, i32 } %1445, 1
  store i32 %1447, ptr %10, align 4
  br label %1484

1448:                                             ; preds = %1443, %1438
  store i8 1, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !11
  br label %1449

1449:                                             ; preds = %1448, %1428
  br label %1450

1450:                                             ; preds = %1449, %1427
  call void @llvm.lifetime.end.p0(i64 1, ptr %101) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %100) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %99) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %98) #6
  br label %1451

1451:                                             ; preds = %1450
  br label %1452

1452:                                             ; preds = %1451
  br label %1453

1453:                                             ; preds = %1452
  call void @llvm.lifetime.start.p0(i64 4, ptr %103) #6
  store i32 0, ptr %103, align 4, !tbaa !15
  call void @llvm.lifetime.start.p0(i64 4, ptr %104) #6
  %1454 = invoke noundef i32 @_ZN6tflite19LinearMemoryPlanner9AddBufferEiii(ptr noundef nonnull align 8 dereferenceable(8216) %57, i32 noundef 4608, i32 noundef 20, i32 noundef 21)
          to label %1455 unwind label %1486

1455:                                             ; preds = %1453
  store i32 %1454, ptr %104, align 4, !tbaa !15
  call void @llvm.lifetime.start.p0(i64 1, ptr %105) #6
  store i8 0, ptr %105, align 1, !tbaa !11
  call void @llvm.lifetime.start.p0(i64 1, ptr %106) #6
  store i8 0, ptr %106, align 1, !tbaa !11
  %1456 = load i8, ptr %105, align 1, !tbaa !11, !range !13, !noundef !14
  %1457 = trunc i8 %1456 to i1
  br i1 %1457, label %1458, label %1495

1458:                                             ; preds = %1455
  %1459 = load i8, ptr %106, align 1, !tbaa !11, !range !13, !noundef !14
  %1460 = trunc i8 %1459 to i1
  br i1 %1460, label %1461, label %1495

1461:                                             ; preds = %1458
  call void @llvm.lifetime.start.p0(i64 4, ptr %107) #6
  %1462 = load i32, ptr %103, align 4, !tbaa !15
  %1463 = load i32, ptr %104, align 4, !tbaa !15
  %1464 = icmp sgt i32 %1462, %1463
  br i1 %1464, label %1465, label %1469

1465:                                             ; preds = %1461
  %1466 = load i32, ptr %103, align 4, !tbaa !15
  %1467 = load i32, ptr %104, align 4, !tbaa !15
  %1468 = sub nsw i32 %1466, %1467
  br label %1473

1469:                                             ; preds = %1461
  %1470 = load i32, ptr %104, align 4, !tbaa !15
  %1471 = load i32, ptr %103, align 4, !tbaa !15
  %1472 = sub nsw i32 %1470, %1471
  br label %1473

1473:                                             ; preds = %1469, %1465
  %1474 = phi i32 [ %1468, %1465 ], [ %1472, %1469 ]
  store i32 %1474, ptr %107, align 4, !tbaa !5
  %1475 = load i32, ptr %107, align 4, !tbaa !5
  %1476 = call noundef i32 @_ZNSt14numeric_limitsIiE7epsilonEv() #6
  %1477 = icmp sgt i32 %1475, %1476
  br i1 %1477, label %1478, label %1494

1478:                                             ; preds = %1473
  %1479 = load i32, ptr %103, align 4, !tbaa !15
  %1480 = uitofp i32 %1479 to double
  %1481 = load i32, ptr %104, align 4, !tbaa !15
  %1482 = uitofp i32 %1481 to double
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.40, ptr noundef @.str.2, i32 noundef 56, double noundef %1480, double noundef %1482)
          to label %1483 unwind label %1490

1483:                                             ; preds = %1478
  store i8 1, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !11
  br label %1494

1484:                                             ; preds = %1444, %1423
  call void @llvm.lifetime.end.p0(i64 1, ptr %101) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %100) #6
  br label %1485

1485:                                             ; preds = %1484, %1419
  call void @llvm.lifetime.end.p0(i64 4, ptr %99) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %98) #6
  br label %2944

1486:                                             ; preds = %1453
  %1487 = landingpad { ptr, i32 }
          cleanup
  %1488 = extractvalue { ptr, i32 } %1487, 0
  store ptr %1488, ptr %9, align 8
  %1489 = extractvalue { ptr, i32 } %1487, 1
  store i32 %1489, ptr %10, align 4
  br label %1552

1490:                                             ; preds = %1478
  %1491 = landingpad { ptr, i32 }
          cleanup
  %1492 = extractvalue { ptr, i32 } %1491, 0
  store ptr %1492, ptr %9, align 8
  %1493 = extractvalue { ptr, i32 } %1491, 1
  store i32 %1493, ptr %10, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %107) #6
  br label %1551

1494:                                             ; preds = %1483, %1473
  call void @llvm.lifetime.end.p0(i64 4, ptr %107) #6
  br label %1517

1495:                                             ; preds = %1458, %1455
  %1496 = load i32, ptr %103, align 4, !tbaa !15
  %1497 = load i32, ptr %104, align 4, !tbaa !15
  %1498 = icmp ne i32 %1496, %1497
  br i1 %1498, label %1499, label %1516

1499:                                             ; preds = %1495
  %1500 = load i32, ptr %103, align 4, !tbaa !15
  %1501 = load i32, ptr %104, align 4, !tbaa !15
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.41, ptr noundef @.str.2, i32 noundef 56, i32 noundef %1500, i32 noundef %1501)
          to label %1502 unwind label %1511

1502:                                             ; preds = %1499
  %1503 = load i8, ptr %105, align 1, !tbaa !11, !range !13, !noundef !14
  %1504 = trunc i8 %1503 to i1
  br i1 %1504, label %1508, label %1505

1505:                                             ; preds = %1502
  %1506 = load i8, ptr %106, align 1, !tbaa !11, !range !13, !noundef !14
  %1507 = trunc i8 %1506 to i1
  br i1 %1507, label %1508, label %1515

1508:                                             ; preds = %1505, %1502
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.4)
          to label %1509 unwind label %1511

1509:                                             ; preds = %1508
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.5)
          to label %1510 unwind label %1511

1510:                                             ; preds = %1509
  br label %1515

1511:                                             ; preds = %1509, %1508, %1499
  %1512 = landingpad { ptr, i32 }
          cleanup
  %1513 = extractvalue { ptr, i32 } %1512, 0
  store ptr %1513, ptr %9, align 8
  %1514 = extractvalue { ptr, i32 } %1512, 1
  store i32 %1514, ptr %10, align 4
  br label %1551

1515:                                             ; preds = %1510, %1505
  store i8 1, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !11
  br label %1516

1516:                                             ; preds = %1515, %1495
  br label %1517

1517:                                             ; preds = %1516, %1494
  call void @llvm.lifetime.end.p0(i64 1, ptr %106) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %105) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %104) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %103) #6
  br label %1518

1518:                                             ; preds = %1517
  br label %1519

1519:                                             ; preds = %1518
  br label %1520

1520:                                             ; preds = %1519
  call void @llvm.lifetime.start.p0(i64 4, ptr %108) #6
  store i32 0, ptr %108, align 4, !tbaa !15
  call void @llvm.lifetime.start.p0(i64 4, ptr %109) #6
  %1521 = invoke noundef i32 @_ZN6tflite19LinearMemoryPlanner9AddBufferEiii(ptr noundef nonnull align 8 dereferenceable(8216) %57, i32 noundef 4608, i32 noundef 19, i32 noundef 20)
          to label %1522 unwind label %1553

1522:                                             ; preds = %1520
  store i32 %1521, ptr %109, align 4, !tbaa !15
  call void @llvm.lifetime.start.p0(i64 1, ptr %110) #6
  store i8 0, ptr %110, align 1, !tbaa !11
  call void @llvm.lifetime.start.p0(i64 1, ptr %111) #6
  store i8 0, ptr %111, align 1, !tbaa !11
  %1523 = load i8, ptr %110, align 1, !tbaa !11, !range !13, !noundef !14
  %1524 = trunc i8 %1523 to i1
  br i1 %1524, label %1525, label %1562

1525:                                             ; preds = %1522
  %1526 = load i8, ptr %111, align 1, !tbaa !11, !range !13, !noundef !14
  %1527 = trunc i8 %1526 to i1
  br i1 %1527, label %1528, label %1562

1528:                                             ; preds = %1525
  call void @llvm.lifetime.start.p0(i64 4, ptr %112) #6
  %1529 = load i32, ptr %108, align 4, !tbaa !15
  %1530 = load i32, ptr %109, align 4, !tbaa !15
  %1531 = icmp sgt i32 %1529, %1530
  br i1 %1531, label %1532, label %1536

1532:                                             ; preds = %1528
  %1533 = load i32, ptr %108, align 4, !tbaa !15
  %1534 = load i32, ptr %109, align 4, !tbaa !15
  %1535 = sub nsw i32 %1533, %1534
  br label %1540

1536:                                             ; preds = %1528
  %1537 = load i32, ptr %109, align 4, !tbaa !15
  %1538 = load i32, ptr %108, align 4, !tbaa !15
  %1539 = sub nsw i32 %1537, %1538
  br label %1540

1540:                                             ; preds = %1536, %1532
  %1541 = phi i32 [ %1535, %1532 ], [ %1539, %1536 ]
  store i32 %1541, ptr %112, align 4, !tbaa !5
  %1542 = load i32, ptr %112, align 4, !tbaa !5
  %1543 = call noundef i32 @_ZNSt14numeric_limitsIiE7epsilonEv() #6
  %1544 = icmp sgt i32 %1542, %1543
  br i1 %1544, label %1545, label %1561

1545:                                             ; preds = %1540
  %1546 = load i32, ptr %108, align 4, !tbaa !15
  %1547 = uitofp i32 %1546 to double
  %1548 = load i32, ptr %109, align 4, !tbaa !15
  %1549 = uitofp i32 %1548 to double
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.42, ptr noundef @.str.2, i32 noundef 57, double noundef %1547, double noundef %1549)
          to label %1550 unwind label %1557

1550:                                             ; preds = %1545
  store i8 1, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !11
  br label %1561

1551:                                             ; preds = %1511, %1490
  call void @llvm.lifetime.end.p0(i64 1, ptr %106) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %105) #6
  br label %1552

1552:                                             ; preds = %1551, %1486
  call void @llvm.lifetime.end.p0(i64 4, ptr %104) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %103) #6
  br label %2944

1553:                                             ; preds = %1520
  %1554 = landingpad { ptr, i32 }
          cleanup
  %1555 = extractvalue { ptr, i32 } %1554, 0
  store ptr %1555, ptr %9, align 8
  %1556 = extractvalue { ptr, i32 } %1554, 1
  store i32 %1556, ptr %10, align 4
  br label %1619

1557:                                             ; preds = %1545
  %1558 = landingpad { ptr, i32 }
          cleanup
  %1559 = extractvalue { ptr, i32 } %1558, 0
  store ptr %1559, ptr %9, align 8
  %1560 = extractvalue { ptr, i32 } %1558, 1
  store i32 %1560, ptr %10, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %112) #6
  br label %1618

1561:                                             ; preds = %1550, %1540
  call void @llvm.lifetime.end.p0(i64 4, ptr %112) #6
  br label %1584

1562:                                             ; preds = %1525, %1522
  %1563 = load i32, ptr %108, align 4, !tbaa !15
  %1564 = load i32, ptr %109, align 4, !tbaa !15
  %1565 = icmp ne i32 %1563, %1564
  br i1 %1565, label %1566, label %1583

1566:                                             ; preds = %1562
  %1567 = load i32, ptr %108, align 4, !tbaa !15
  %1568 = load i32, ptr %109, align 4, !tbaa !15
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.43, ptr noundef @.str.2, i32 noundef 57, i32 noundef %1567, i32 noundef %1568)
          to label %1569 unwind label %1578

1569:                                             ; preds = %1566
  %1570 = load i8, ptr %110, align 1, !tbaa !11, !range !13, !noundef !14
  %1571 = trunc i8 %1570 to i1
  br i1 %1571, label %1575, label %1572

1572:                                             ; preds = %1569
  %1573 = load i8, ptr %111, align 1, !tbaa !11, !range !13, !noundef !14
  %1574 = trunc i8 %1573 to i1
  br i1 %1574, label %1575, label %1582

1575:                                             ; preds = %1572, %1569
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.4)
          to label %1576 unwind label %1578

1576:                                             ; preds = %1575
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.5)
          to label %1577 unwind label %1578

1577:                                             ; preds = %1576
  br label %1582

1578:                                             ; preds = %1576, %1575, %1566
  %1579 = landingpad { ptr, i32 }
          cleanup
  %1580 = extractvalue { ptr, i32 } %1579, 0
  store ptr %1580, ptr %9, align 8
  %1581 = extractvalue { ptr, i32 } %1579, 1
  store i32 %1581, ptr %10, align 4
  br label %1618

1582:                                             ; preds = %1577, %1572
  store i8 1, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !11
  br label %1583

1583:                                             ; preds = %1582, %1562
  br label %1584

1584:                                             ; preds = %1583, %1561
  call void @llvm.lifetime.end.p0(i64 1, ptr %111) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %110) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %109) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %108) #6
  br label %1585

1585:                                             ; preds = %1584
  br label %1586

1586:                                             ; preds = %1585
  br label %1587

1587:                                             ; preds = %1586
  call void @llvm.lifetime.start.p0(i64 4, ptr %113) #6
  store i32 0, ptr %113, align 4, !tbaa !15
  call void @llvm.lifetime.start.p0(i64 4, ptr %114) #6
  %1588 = invoke noundef i32 @_ZN6tflite19LinearMemoryPlanner9AddBufferEiii(ptr noundef nonnull align 8 dereferenceable(8216) %57, i32 noundef 4608, i32 noundef 18, i32 noundef 19)
          to label %1589 unwind label %1620

1589:                                             ; preds = %1587
  store i32 %1588, ptr %114, align 4, !tbaa !15
  call void @llvm.lifetime.start.p0(i64 1, ptr %115) #6
  store i8 0, ptr %115, align 1, !tbaa !11
  call void @llvm.lifetime.start.p0(i64 1, ptr %116) #6
  store i8 0, ptr %116, align 1, !tbaa !11
  %1590 = load i8, ptr %115, align 1, !tbaa !11, !range !13, !noundef !14
  %1591 = trunc i8 %1590 to i1
  br i1 %1591, label %1592, label %1629

1592:                                             ; preds = %1589
  %1593 = load i8, ptr %116, align 1, !tbaa !11, !range !13, !noundef !14
  %1594 = trunc i8 %1593 to i1
  br i1 %1594, label %1595, label %1629

1595:                                             ; preds = %1592
  call void @llvm.lifetime.start.p0(i64 4, ptr %117) #6
  %1596 = load i32, ptr %113, align 4, !tbaa !15
  %1597 = load i32, ptr %114, align 4, !tbaa !15
  %1598 = icmp sgt i32 %1596, %1597
  br i1 %1598, label %1599, label %1603

1599:                                             ; preds = %1595
  %1600 = load i32, ptr %113, align 4, !tbaa !15
  %1601 = load i32, ptr %114, align 4, !tbaa !15
  %1602 = sub nsw i32 %1600, %1601
  br label %1607

1603:                                             ; preds = %1595
  %1604 = load i32, ptr %114, align 4, !tbaa !15
  %1605 = load i32, ptr %113, align 4, !tbaa !15
  %1606 = sub nsw i32 %1604, %1605
  br label %1607

1607:                                             ; preds = %1603, %1599
  %1608 = phi i32 [ %1602, %1599 ], [ %1606, %1603 ]
  store i32 %1608, ptr %117, align 4, !tbaa !5
  %1609 = load i32, ptr %117, align 4, !tbaa !5
  %1610 = call noundef i32 @_ZNSt14numeric_limitsIiE7epsilonEv() #6
  %1611 = icmp sgt i32 %1609, %1610
  br i1 %1611, label %1612, label %1628

1612:                                             ; preds = %1607
  %1613 = load i32, ptr %113, align 4, !tbaa !15
  %1614 = uitofp i32 %1613 to double
  %1615 = load i32, ptr %114, align 4, !tbaa !15
  %1616 = uitofp i32 %1615 to double
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.44, ptr noundef @.str.2, i32 noundef 58, double noundef %1614, double noundef %1616)
          to label %1617 unwind label %1624

1617:                                             ; preds = %1612
  store i8 1, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !11
  br label %1628

1618:                                             ; preds = %1578, %1557
  call void @llvm.lifetime.end.p0(i64 1, ptr %111) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %110) #6
  br label %1619

1619:                                             ; preds = %1618, %1553
  call void @llvm.lifetime.end.p0(i64 4, ptr %109) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %108) #6
  br label %2944

1620:                                             ; preds = %1587
  %1621 = landingpad { ptr, i32 }
          cleanup
  %1622 = extractvalue { ptr, i32 } %1621, 0
  store ptr %1622, ptr %9, align 8
  %1623 = extractvalue { ptr, i32 } %1621, 1
  store i32 %1623, ptr %10, align 4
  br label %1686

1624:                                             ; preds = %1612
  %1625 = landingpad { ptr, i32 }
          cleanup
  %1626 = extractvalue { ptr, i32 } %1625, 0
  store ptr %1626, ptr %9, align 8
  %1627 = extractvalue { ptr, i32 } %1625, 1
  store i32 %1627, ptr %10, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %117) #6
  br label %1685

1628:                                             ; preds = %1617, %1607
  call void @llvm.lifetime.end.p0(i64 4, ptr %117) #6
  br label %1651

1629:                                             ; preds = %1592, %1589
  %1630 = load i32, ptr %113, align 4, !tbaa !15
  %1631 = load i32, ptr %114, align 4, !tbaa !15
  %1632 = icmp ne i32 %1630, %1631
  br i1 %1632, label %1633, label %1650

1633:                                             ; preds = %1629
  %1634 = load i32, ptr %113, align 4, !tbaa !15
  %1635 = load i32, ptr %114, align 4, !tbaa !15
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.45, ptr noundef @.str.2, i32 noundef 58, i32 noundef %1634, i32 noundef %1635)
          to label %1636 unwind label %1645

1636:                                             ; preds = %1633
  %1637 = load i8, ptr %115, align 1, !tbaa !11, !range !13, !noundef !14
  %1638 = trunc i8 %1637 to i1
  br i1 %1638, label %1642, label %1639

1639:                                             ; preds = %1636
  %1640 = load i8, ptr %116, align 1, !tbaa !11, !range !13, !noundef !14
  %1641 = trunc i8 %1640 to i1
  br i1 %1641, label %1642, label %1649

1642:                                             ; preds = %1639, %1636
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.4)
          to label %1643 unwind label %1645

1643:                                             ; preds = %1642
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.5)
          to label %1644 unwind label %1645

1644:                                             ; preds = %1643
  br label %1649

1645:                                             ; preds = %1643, %1642, %1633
  %1646 = landingpad { ptr, i32 }
          cleanup
  %1647 = extractvalue { ptr, i32 } %1646, 0
  store ptr %1647, ptr %9, align 8
  %1648 = extractvalue { ptr, i32 } %1646, 1
  store i32 %1648, ptr %10, align 4
  br label %1685

1649:                                             ; preds = %1644, %1639
  store i8 1, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !11
  br label %1650

1650:                                             ; preds = %1649, %1629
  br label %1651

1651:                                             ; preds = %1650, %1628
  call void @llvm.lifetime.end.p0(i64 1, ptr %116) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %115) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %114) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %113) #6
  br label %1652

1652:                                             ; preds = %1651
  br label %1653

1653:                                             ; preds = %1652
  br label %1654

1654:                                             ; preds = %1653
  call void @llvm.lifetime.start.p0(i64 4, ptr %118) #6
  store i32 0, ptr %118, align 4, !tbaa !15
  call void @llvm.lifetime.start.p0(i64 4, ptr %119) #6
  %1655 = invoke noundef i32 @_ZN6tflite19LinearMemoryPlanner9AddBufferEiii(ptr noundef nonnull align 8 dereferenceable(8216) %57, i32 noundef 4608, i32 noundef 17, i32 noundef 18)
          to label %1656 unwind label %1687

1656:                                             ; preds = %1654
  store i32 %1655, ptr %119, align 4, !tbaa !15
  call void @llvm.lifetime.start.p0(i64 1, ptr %120) #6
  store i8 0, ptr %120, align 1, !tbaa !11
  call void @llvm.lifetime.start.p0(i64 1, ptr %121) #6
  store i8 0, ptr %121, align 1, !tbaa !11
  %1657 = load i8, ptr %120, align 1, !tbaa !11, !range !13, !noundef !14
  %1658 = trunc i8 %1657 to i1
  br i1 %1658, label %1659, label %1696

1659:                                             ; preds = %1656
  %1660 = load i8, ptr %121, align 1, !tbaa !11, !range !13, !noundef !14
  %1661 = trunc i8 %1660 to i1
  br i1 %1661, label %1662, label %1696

1662:                                             ; preds = %1659
  call void @llvm.lifetime.start.p0(i64 4, ptr %122) #6
  %1663 = load i32, ptr %118, align 4, !tbaa !15
  %1664 = load i32, ptr %119, align 4, !tbaa !15
  %1665 = icmp sgt i32 %1663, %1664
  br i1 %1665, label %1666, label %1670

1666:                                             ; preds = %1662
  %1667 = load i32, ptr %118, align 4, !tbaa !15
  %1668 = load i32, ptr %119, align 4, !tbaa !15
  %1669 = sub nsw i32 %1667, %1668
  br label %1674

1670:                                             ; preds = %1662
  %1671 = load i32, ptr %119, align 4, !tbaa !15
  %1672 = load i32, ptr %118, align 4, !tbaa !15
  %1673 = sub nsw i32 %1671, %1672
  br label %1674

1674:                                             ; preds = %1670, %1666
  %1675 = phi i32 [ %1669, %1666 ], [ %1673, %1670 ]
  store i32 %1675, ptr %122, align 4, !tbaa !5
  %1676 = load i32, ptr %122, align 4, !tbaa !5
  %1677 = call noundef i32 @_ZNSt14numeric_limitsIiE7epsilonEv() #6
  %1678 = icmp sgt i32 %1676, %1677
  br i1 %1678, label %1679, label %1695

1679:                                             ; preds = %1674
  %1680 = load i32, ptr %118, align 4, !tbaa !15
  %1681 = uitofp i32 %1680 to double
  %1682 = load i32, ptr %119, align 4, !tbaa !15
  %1683 = uitofp i32 %1682 to double
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.46, ptr noundef @.str.2, i32 noundef 59, double noundef %1681, double noundef %1683)
          to label %1684 unwind label %1691

1684:                                             ; preds = %1679
  store i8 1, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !11
  br label %1695

1685:                                             ; preds = %1645, %1624
  call void @llvm.lifetime.end.p0(i64 1, ptr %116) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %115) #6
  br label %1686

1686:                                             ; preds = %1685, %1620
  call void @llvm.lifetime.end.p0(i64 4, ptr %114) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %113) #6
  br label %2944

1687:                                             ; preds = %1654
  %1688 = landingpad { ptr, i32 }
          cleanup
  %1689 = extractvalue { ptr, i32 } %1688, 0
  store ptr %1689, ptr %9, align 8
  %1690 = extractvalue { ptr, i32 } %1688, 1
  store i32 %1690, ptr %10, align 4
  br label %1753

1691:                                             ; preds = %1679
  %1692 = landingpad { ptr, i32 }
          cleanup
  %1693 = extractvalue { ptr, i32 } %1692, 0
  store ptr %1693, ptr %9, align 8
  %1694 = extractvalue { ptr, i32 } %1692, 1
  store i32 %1694, ptr %10, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %122) #6
  br label %1752

1695:                                             ; preds = %1684, %1674
  call void @llvm.lifetime.end.p0(i64 4, ptr %122) #6
  br label %1718

1696:                                             ; preds = %1659, %1656
  %1697 = load i32, ptr %118, align 4, !tbaa !15
  %1698 = load i32, ptr %119, align 4, !tbaa !15
  %1699 = icmp ne i32 %1697, %1698
  br i1 %1699, label %1700, label %1717

1700:                                             ; preds = %1696
  %1701 = load i32, ptr %118, align 4, !tbaa !15
  %1702 = load i32, ptr %119, align 4, !tbaa !15
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.47, ptr noundef @.str.2, i32 noundef 59, i32 noundef %1701, i32 noundef %1702)
          to label %1703 unwind label %1712

1703:                                             ; preds = %1700
  %1704 = load i8, ptr %120, align 1, !tbaa !11, !range !13, !noundef !14
  %1705 = trunc i8 %1704 to i1
  br i1 %1705, label %1709, label %1706

1706:                                             ; preds = %1703
  %1707 = load i8, ptr %121, align 1, !tbaa !11, !range !13, !noundef !14
  %1708 = trunc i8 %1707 to i1
  br i1 %1708, label %1709, label %1716

1709:                                             ; preds = %1706, %1703
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.4)
          to label %1710 unwind label %1712

1710:                                             ; preds = %1709
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.5)
          to label %1711 unwind label %1712

1711:                                             ; preds = %1710
  br label %1716

1712:                                             ; preds = %1710, %1709, %1700
  %1713 = landingpad { ptr, i32 }
          cleanup
  %1714 = extractvalue { ptr, i32 } %1713, 0
  store ptr %1714, ptr %9, align 8
  %1715 = extractvalue { ptr, i32 } %1713, 1
  store i32 %1715, ptr %10, align 4
  br label %1752

1716:                                             ; preds = %1711, %1706
  store i8 1, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !11
  br label %1717

1717:                                             ; preds = %1716, %1696
  br label %1718

1718:                                             ; preds = %1717, %1695
  call void @llvm.lifetime.end.p0(i64 1, ptr %121) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %120) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %119) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %118) #6
  br label %1719

1719:                                             ; preds = %1718
  br label %1720

1720:                                             ; preds = %1719
  br label %1721

1721:                                             ; preds = %1720
  call void @llvm.lifetime.start.p0(i64 4, ptr %123) #6
  store i32 0, ptr %123, align 4, !tbaa !15
  call void @llvm.lifetime.start.p0(i64 4, ptr %124) #6
  %1722 = invoke noundef i32 @_ZN6tflite19LinearMemoryPlanner9AddBufferEiii(ptr noundef nonnull align 8 dereferenceable(8216) %57, i32 noundef 4608, i32 noundef 16, i32 noundef 17)
          to label %1723 unwind label %1754

1723:                                             ; preds = %1721
  store i32 %1722, ptr %124, align 4, !tbaa !15
  call void @llvm.lifetime.start.p0(i64 1, ptr %125) #6
  store i8 0, ptr %125, align 1, !tbaa !11
  call void @llvm.lifetime.start.p0(i64 1, ptr %126) #6
  store i8 0, ptr %126, align 1, !tbaa !11
  %1724 = load i8, ptr %125, align 1, !tbaa !11, !range !13, !noundef !14
  %1725 = trunc i8 %1724 to i1
  br i1 %1725, label %1726, label %1763

1726:                                             ; preds = %1723
  %1727 = load i8, ptr %126, align 1, !tbaa !11, !range !13, !noundef !14
  %1728 = trunc i8 %1727 to i1
  br i1 %1728, label %1729, label %1763

1729:                                             ; preds = %1726
  call void @llvm.lifetime.start.p0(i64 4, ptr %127) #6
  %1730 = load i32, ptr %123, align 4, !tbaa !15
  %1731 = load i32, ptr %124, align 4, !tbaa !15
  %1732 = icmp sgt i32 %1730, %1731
  br i1 %1732, label %1733, label %1737

1733:                                             ; preds = %1729
  %1734 = load i32, ptr %123, align 4, !tbaa !15
  %1735 = load i32, ptr %124, align 4, !tbaa !15
  %1736 = sub nsw i32 %1734, %1735
  br label %1741

1737:                                             ; preds = %1729
  %1738 = load i32, ptr %124, align 4, !tbaa !15
  %1739 = load i32, ptr %123, align 4, !tbaa !15
  %1740 = sub nsw i32 %1738, %1739
  br label %1741

1741:                                             ; preds = %1737, %1733
  %1742 = phi i32 [ %1736, %1733 ], [ %1740, %1737 ]
  store i32 %1742, ptr %127, align 4, !tbaa !5
  %1743 = load i32, ptr %127, align 4, !tbaa !5
  %1744 = call noundef i32 @_ZNSt14numeric_limitsIiE7epsilonEv() #6
  %1745 = icmp sgt i32 %1743, %1744
  br i1 %1745, label %1746, label %1762

1746:                                             ; preds = %1741
  %1747 = load i32, ptr %123, align 4, !tbaa !15
  %1748 = uitofp i32 %1747 to double
  %1749 = load i32, ptr %124, align 4, !tbaa !15
  %1750 = uitofp i32 %1749 to double
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.48, ptr noundef @.str.2, i32 noundef 60, double noundef %1748, double noundef %1750)
          to label %1751 unwind label %1758

1751:                                             ; preds = %1746
  store i8 1, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !11
  br label %1762

1752:                                             ; preds = %1712, %1691
  call void @llvm.lifetime.end.p0(i64 1, ptr %121) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %120) #6
  br label %1753

1753:                                             ; preds = %1752, %1687
  call void @llvm.lifetime.end.p0(i64 4, ptr %119) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %118) #6
  br label %2944

1754:                                             ; preds = %1721
  %1755 = landingpad { ptr, i32 }
          cleanup
  %1756 = extractvalue { ptr, i32 } %1755, 0
  store ptr %1756, ptr %9, align 8
  %1757 = extractvalue { ptr, i32 } %1755, 1
  store i32 %1757, ptr %10, align 4
  br label %1820

1758:                                             ; preds = %1746
  %1759 = landingpad { ptr, i32 }
          cleanup
  %1760 = extractvalue { ptr, i32 } %1759, 0
  store ptr %1760, ptr %9, align 8
  %1761 = extractvalue { ptr, i32 } %1759, 1
  store i32 %1761, ptr %10, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %127) #6
  br label %1819

1762:                                             ; preds = %1751, %1741
  call void @llvm.lifetime.end.p0(i64 4, ptr %127) #6
  br label %1785

1763:                                             ; preds = %1726, %1723
  %1764 = load i32, ptr %123, align 4, !tbaa !15
  %1765 = load i32, ptr %124, align 4, !tbaa !15
  %1766 = icmp ne i32 %1764, %1765
  br i1 %1766, label %1767, label %1784

1767:                                             ; preds = %1763
  %1768 = load i32, ptr %123, align 4, !tbaa !15
  %1769 = load i32, ptr %124, align 4, !tbaa !15
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.49, ptr noundef @.str.2, i32 noundef 60, i32 noundef %1768, i32 noundef %1769)
          to label %1770 unwind label %1779

1770:                                             ; preds = %1767
  %1771 = load i8, ptr %125, align 1, !tbaa !11, !range !13, !noundef !14
  %1772 = trunc i8 %1771 to i1
  br i1 %1772, label %1776, label %1773

1773:                                             ; preds = %1770
  %1774 = load i8, ptr %126, align 1, !tbaa !11, !range !13, !noundef !14
  %1775 = trunc i8 %1774 to i1
  br i1 %1775, label %1776, label %1783

1776:                                             ; preds = %1773, %1770
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.4)
          to label %1777 unwind label %1779

1777:                                             ; preds = %1776
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.5)
          to label %1778 unwind label %1779

1778:                                             ; preds = %1777
  br label %1783

1779:                                             ; preds = %1777, %1776, %1767
  %1780 = landingpad { ptr, i32 }
          cleanup
  %1781 = extractvalue { ptr, i32 } %1780, 0
  store ptr %1781, ptr %9, align 8
  %1782 = extractvalue { ptr, i32 } %1780, 1
  store i32 %1782, ptr %10, align 4
  br label %1819

1783:                                             ; preds = %1778, %1773
  store i8 1, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !11
  br label %1784

1784:                                             ; preds = %1783, %1763
  br label %1785

1785:                                             ; preds = %1784, %1762
  call void @llvm.lifetime.end.p0(i64 1, ptr %126) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %125) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %124) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %123) #6
  br label %1786

1786:                                             ; preds = %1785
  br label %1787

1787:                                             ; preds = %1786
  br label %1788

1788:                                             ; preds = %1787
  call void @llvm.lifetime.start.p0(i64 4, ptr %128) #6
  store i32 0, ptr %128, align 4, !tbaa !15
  call void @llvm.lifetime.start.p0(i64 4, ptr %129) #6
  %1789 = invoke noundef i32 @_ZN6tflite19LinearMemoryPlanner9AddBufferEiii(ptr noundef nonnull align 8 dereferenceable(8216) %57, i32 noundef 4608, i32 noundef 15, i32 noundef 16)
          to label %1790 unwind label %1821

1790:                                             ; preds = %1788
  store i32 %1789, ptr %129, align 4, !tbaa !15
  call void @llvm.lifetime.start.p0(i64 1, ptr %130) #6
  store i8 0, ptr %130, align 1, !tbaa !11
  call void @llvm.lifetime.start.p0(i64 1, ptr %131) #6
  store i8 0, ptr %131, align 1, !tbaa !11
  %1791 = load i8, ptr %130, align 1, !tbaa !11, !range !13, !noundef !14
  %1792 = trunc i8 %1791 to i1
  br i1 %1792, label %1793, label %1830

1793:                                             ; preds = %1790
  %1794 = load i8, ptr %131, align 1, !tbaa !11, !range !13, !noundef !14
  %1795 = trunc i8 %1794 to i1
  br i1 %1795, label %1796, label %1830

1796:                                             ; preds = %1793
  call void @llvm.lifetime.start.p0(i64 4, ptr %132) #6
  %1797 = load i32, ptr %128, align 4, !tbaa !15
  %1798 = load i32, ptr %129, align 4, !tbaa !15
  %1799 = icmp sgt i32 %1797, %1798
  br i1 %1799, label %1800, label %1804

1800:                                             ; preds = %1796
  %1801 = load i32, ptr %128, align 4, !tbaa !15
  %1802 = load i32, ptr %129, align 4, !tbaa !15
  %1803 = sub nsw i32 %1801, %1802
  br label %1808

1804:                                             ; preds = %1796
  %1805 = load i32, ptr %129, align 4, !tbaa !15
  %1806 = load i32, ptr %128, align 4, !tbaa !15
  %1807 = sub nsw i32 %1805, %1806
  br label %1808

1808:                                             ; preds = %1804, %1800
  %1809 = phi i32 [ %1803, %1800 ], [ %1807, %1804 ]
  store i32 %1809, ptr %132, align 4, !tbaa !5
  %1810 = load i32, ptr %132, align 4, !tbaa !5
  %1811 = call noundef i32 @_ZNSt14numeric_limitsIiE7epsilonEv() #6
  %1812 = icmp sgt i32 %1810, %1811
  br i1 %1812, label %1813, label %1829

1813:                                             ; preds = %1808
  %1814 = load i32, ptr %128, align 4, !tbaa !15
  %1815 = uitofp i32 %1814 to double
  %1816 = load i32, ptr %129, align 4, !tbaa !15
  %1817 = uitofp i32 %1816 to double
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.50, ptr noundef @.str.2, i32 noundef 61, double noundef %1815, double noundef %1817)
          to label %1818 unwind label %1825

1818:                                             ; preds = %1813
  store i8 1, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !11
  br label %1829

1819:                                             ; preds = %1779, %1758
  call void @llvm.lifetime.end.p0(i64 1, ptr %126) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %125) #6
  br label %1820

1820:                                             ; preds = %1819, %1754
  call void @llvm.lifetime.end.p0(i64 4, ptr %124) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %123) #6
  br label %2944

1821:                                             ; preds = %1788
  %1822 = landingpad { ptr, i32 }
          cleanup
  %1823 = extractvalue { ptr, i32 } %1822, 0
  store ptr %1823, ptr %9, align 8
  %1824 = extractvalue { ptr, i32 } %1822, 1
  store i32 %1824, ptr %10, align 4
  br label %1887

1825:                                             ; preds = %1813
  %1826 = landingpad { ptr, i32 }
          cleanup
  %1827 = extractvalue { ptr, i32 } %1826, 0
  store ptr %1827, ptr %9, align 8
  %1828 = extractvalue { ptr, i32 } %1826, 1
  store i32 %1828, ptr %10, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %132) #6
  br label %1886

1829:                                             ; preds = %1818, %1808
  call void @llvm.lifetime.end.p0(i64 4, ptr %132) #6
  br label %1852

1830:                                             ; preds = %1793, %1790
  %1831 = load i32, ptr %128, align 4, !tbaa !15
  %1832 = load i32, ptr %129, align 4, !tbaa !15
  %1833 = icmp ne i32 %1831, %1832
  br i1 %1833, label %1834, label %1851

1834:                                             ; preds = %1830
  %1835 = load i32, ptr %128, align 4, !tbaa !15
  %1836 = load i32, ptr %129, align 4, !tbaa !15
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.51, ptr noundef @.str.2, i32 noundef 61, i32 noundef %1835, i32 noundef %1836)
          to label %1837 unwind label %1846

1837:                                             ; preds = %1834
  %1838 = load i8, ptr %130, align 1, !tbaa !11, !range !13, !noundef !14
  %1839 = trunc i8 %1838 to i1
  br i1 %1839, label %1843, label %1840

1840:                                             ; preds = %1837
  %1841 = load i8, ptr %131, align 1, !tbaa !11, !range !13, !noundef !14
  %1842 = trunc i8 %1841 to i1
  br i1 %1842, label %1843, label %1850

1843:                                             ; preds = %1840, %1837
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.4)
          to label %1844 unwind label %1846

1844:                                             ; preds = %1843
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.5)
          to label %1845 unwind label %1846

1845:                                             ; preds = %1844
  br label %1850

1846:                                             ; preds = %1844, %1843, %1834
  %1847 = landingpad { ptr, i32 }
          cleanup
  %1848 = extractvalue { ptr, i32 } %1847, 0
  store ptr %1848, ptr %9, align 8
  %1849 = extractvalue { ptr, i32 } %1847, 1
  store i32 %1849, ptr %10, align 4
  br label %1886

1850:                                             ; preds = %1845, %1840
  store i8 1, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !11
  br label %1851

1851:                                             ; preds = %1850, %1830
  br label %1852

1852:                                             ; preds = %1851, %1829
  call void @llvm.lifetime.end.p0(i64 1, ptr %131) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %130) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %129) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %128) #6
  br label %1853

1853:                                             ; preds = %1852
  br label %1854

1854:                                             ; preds = %1853
  br label %1855

1855:                                             ; preds = %1854
  call void @llvm.lifetime.start.p0(i64 4, ptr %133) #6
  store i32 0, ptr %133, align 4, !tbaa !15
  call void @llvm.lifetime.start.p0(i64 4, ptr %134) #6
  %1856 = invoke noundef i32 @_ZN6tflite19LinearMemoryPlanner9AddBufferEiii(ptr noundef nonnull align 8 dereferenceable(8216) %57, i32 noundef 4608, i32 noundef 14, i32 noundef 15)
          to label %1857 unwind label %1888

1857:                                             ; preds = %1855
  store i32 %1856, ptr %134, align 4, !tbaa !15
  call void @llvm.lifetime.start.p0(i64 1, ptr %135) #6
  store i8 0, ptr %135, align 1, !tbaa !11
  call void @llvm.lifetime.start.p0(i64 1, ptr %136) #6
  store i8 0, ptr %136, align 1, !tbaa !11
  %1858 = load i8, ptr %135, align 1, !tbaa !11, !range !13, !noundef !14
  %1859 = trunc i8 %1858 to i1
  br i1 %1859, label %1860, label %1897

1860:                                             ; preds = %1857
  %1861 = load i8, ptr %136, align 1, !tbaa !11, !range !13, !noundef !14
  %1862 = trunc i8 %1861 to i1
  br i1 %1862, label %1863, label %1897

1863:                                             ; preds = %1860
  call void @llvm.lifetime.start.p0(i64 4, ptr %137) #6
  %1864 = load i32, ptr %133, align 4, !tbaa !15
  %1865 = load i32, ptr %134, align 4, !tbaa !15
  %1866 = icmp sgt i32 %1864, %1865
  br i1 %1866, label %1867, label %1871

1867:                                             ; preds = %1863
  %1868 = load i32, ptr %133, align 4, !tbaa !15
  %1869 = load i32, ptr %134, align 4, !tbaa !15
  %1870 = sub nsw i32 %1868, %1869
  br label %1875

1871:                                             ; preds = %1863
  %1872 = load i32, ptr %134, align 4, !tbaa !15
  %1873 = load i32, ptr %133, align 4, !tbaa !15
  %1874 = sub nsw i32 %1872, %1873
  br label %1875

1875:                                             ; preds = %1871, %1867
  %1876 = phi i32 [ %1870, %1867 ], [ %1874, %1871 ]
  store i32 %1876, ptr %137, align 4, !tbaa !5
  %1877 = load i32, ptr %137, align 4, !tbaa !5
  %1878 = call noundef i32 @_ZNSt14numeric_limitsIiE7epsilonEv() #6
  %1879 = icmp sgt i32 %1877, %1878
  br i1 %1879, label %1880, label %1896

1880:                                             ; preds = %1875
  %1881 = load i32, ptr %133, align 4, !tbaa !15
  %1882 = uitofp i32 %1881 to double
  %1883 = load i32, ptr %134, align 4, !tbaa !15
  %1884 = uitofp i32 %1883 to double
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.52, ptr noundef @.str.2, i32 noundef 62, double noundef %1882, double noundef %1884)
          to label %1885 unwind label %1892

1885:                                             ; preds = %1880
  store i8 1, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !11
  br label %1896

1886:                                             ; preds = %1846, %1825
  call void @llvm.lifetime.end.p0(i64 1, ptr %131) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %130) #6
  br label %1887

1887:                                             ; preds = %1886, %1821
  call void @llvm.lifetime.end.p0(i64 4, ptr %129) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %128) #6
  br label %2944

1888:                                             ; preds = %1855
  %1889 = landingpad { ptr, i32 }
          cleanup
  %1890 = extractvalue { ptr, i32 } %1889, 0
  store ptr %1890, ptr %9, align 8
  %1891 = extractvalue { ptr, i32 } %1889, 1
  store i32 %1891, ptr %10, align 4
  br label %1954

1892:                                             ; preds = %1880
  %1893 = landingpad { ptr, i32 }
          cleanup
  %1894 = extractvalue { ptr, i32 } %1893, 0
  store ptr %1894, ptr %9, align 8
  %1895 = extractvalue { ptr, i32 } %1893, 1
  store i32 %1895, ptr %10, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %137) #6
  br label %1953

1896:                                             ; preds = %1885, %1875
  call void @llvm.lifetime.end.p0(i64 4, ptr %137) #6
  br label %1919

1897:                                             ; preds = %1860, %1857
  %1898 = load i32, ptr %133, align 4, !tbaa !15
  %1899 = load i32, ptr %134, align 4, !tbaa !15
  %1900 = icmp ne i32 %1898, %1899
  br i1 %1900, label %1901, label %1918

1901:                                             ; preds = %1897
  %1902 = load i32, ptr %133, align 4, !tbaa !15
  %1903 = load i32, ptr %134, align 4, !tbaa !15
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.53, ptr noundef @.str.2, i32 noundef 62, i32 noundef %1902, i32 noundef %1903)
          to label %1904 unwind label %1913

1904:                                             ; preds = %1901
  %1905 = load i8, ptr %135, align 1, !tbaa !11, !range !13, !noundef !14
  %1906 = trunc i8 %1905 to i1
  br i1 %1906, label %1910, label %1907

1907:                                             ; preds = %1904
  %1908 = load i8, ptr %136, align 1, !tbaa !11, !range !13, !noundef !14
  %1909 = trunc i8 %1908 to i1
  br i1 %1909, label %1910, label %1917

1910:                                             ; preds = %1907, %1904
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.4)
          to label %1911 unwind label %1913

1911:                                             ; preds = %1910
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.5)
          to label %1912 unwind label %1913

1912:                                             ; preds = %1911
  br label %1917

1913:                                             ; preds = %1911, %1910, %1901
  %1914 = landingpad { ptr, i32 }
          cleanup
  %1915 = extractvalue { ptr, i32 } %1914, 0
  store ptr %1915, ptr %9, align 8
  %1916 = extractvalue { ptr, i32 } %1914, 1
  store i32 %1916, ptr %10, align 4
  br label %1953

1917:                                             ; preds = %1912, %1907
  store i8 1, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !11
  br label %1918

1918:                                             ; preds = %1917, %1897
  br label %1919

1919:                                             ; preds = %1918, %1896
  call void @llvm.lifetime.end.p0(i64 1, ptr %136) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %135) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %134) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %133) #6
  br label %1920

1920:                                             ; preds = %1919
  br label %1921

1921:                                             ; preds = %1920
  br label %1922

1922:                                             ; preds = %1921
  call void @llvm.lifetime.start.p0(i64 4, ptr %138) #6
  store i32 0, ptr %138, align 4, !tbaa !15
  call void @llvm.lifetime.start.p0(i64 4, ptr %139) #6
  %1923 = invoke noundef i32 @_ZN6tflite19LinearMemoryPlanner9AddBufferEiii(ptr noundef nonnull align 8 dereferenceable(8216) %57, i32 noundef 4608, i32 noundef 13, i32 noundef 14)
          to label %1924 unwind label %1955

1924:                                             ; preds = %1922
  store i32 %1923, ptr %139, align 4, !tbaa !15
  call void @llvm.lifetime.start.p0(i64 1, ptr %140) #6
  store i8 0, ptr %140, align 1, !tbaa !11
  call void @llvm.lifetime.start.p0(i64 1, ptr %141) #6
  store i8 0, ptr %141, align 1, !tbaa !11
  %1925 = load i8, ptr %140, align 1, !tbaa !11, !range !13, !noundef !14
  %1926 = trunc i8 %1925 to i1
  br i1 %1926, label %1927, label %1964

1927:                                             ; preds = %1924
  %1928 = load i8, ptr %141, align 1, !tbaa !11, !range !13, !noundef !14
  %1929 = trunc i8 %1928 to i1
  br i1 %1929, label %1930, label %1964

1930:                                             ; preds = %1927
  call void @llvm.lifetime.start.p0(i64 4, ptr %142) #6
  %1931 = load i32, ptr %138, align 4, !tbaa !15
  %1932 = load i32, ptr %139, align 4, !tbaa !15
  %1933 = icmp sgt i32 %1931, %1932
  br i1 %1933, label %1934, label %1938

1934:                                             ; preds = %1930
  %1935 = load i32, ptr %138, align 4, !tbaa !15
  %1936 = load i32, ptr %139, align 4, !tbaa !15
  %1937 = sub nsw i32 %1935, %1936
  br label %1942

1938:                                             ; preds = %1930
  %1939 = load i32, ptr %139, align 4, !tbaa !15
  %1940 = load i32, ptr %138, align 4, !tbaa !15
  %1941 = sub nsw i32 %1939, %1940
  br label %1942

1942:                                             ; preds = %1938, %1934
  %1943 = phi i32 [ %1937, %1934 ], [ %1941, %1938 ]
  store i32 %1943, ptr %142, align 4, !tbaa !5
  %1944 = load i32, ptr %142, align 4, !tbaa !5
  %1945 = call noundef i32 @_ZNSt14numeric_limitsIiE7epsilonEv() #6
  %1946 = icmp sgt i32 %1944, %1945
  br i1 %1946, label %1947, label %1963

1947:                                             ; preds = %1942
  %1948 = load i32, ptr %138, align 4, !tbaa !15
  %1949 = uitofp i32 %1948 to double
  %1950 = load i32, ptr %139, align 4, !tbaa !15
  %1951 = uitofp i32 %1950 to double
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.54, ptr noundef @.str.2, i32 noundef 63, double noundef %1949, double noundef %1951)
          to label %1952 unwind label %1959

1952:                                             ; preds = %1947
  store i8 1, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !11
  br label %1963

1953:                                             ; preds = %1913, %1892
  call void @llvm.lifetime.end.p0(i64 1, ptr %136) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %135) #6
  br label %1954

1954:                                             ; preds = %1953, %1888
  call void @llvm.lifetime.end.p0(i64 4, ptr %134) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %133) #6
  br label %2944

1955:                                             ; preds = %1922
  %1956 = landingpad { ptr, i32 }
          cleanup
  %1957 = extractvalue { ptr, i32 } %1956, 0
  store ptr %1957, ptr %9, align 8
  %1958 = extractvalue { ptr, i32 } %1956, 1
  store i32 %1958, ptr %10, align 4
  br label %2021

1959:                                             ; preds = %1947
  %1960 = landingpad { ptr, i32 }
          cleanup
  %1961 = extractvalue { ptr, i32 } %1960, 0
  store ptr %1961, ptr %9, align 8
  %1962 = extractvalue { ptr, i32 } %1960, 1
  store i32 %1962, ptr %10, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %142) #6
  br label %2020

1963:                                             ; preds = %1952, %1942
  call void @llvm.lifetime.end.p0(i64 4, ptr %142) #6
  br label %1986

1964:                                             ; preds = %1927, %1924
  %1965 = load i32, ptr %138, align 4, !tbaa !15
  %1966 = load i32, ptr %139, align 4, !tbaa !15
  %1967 = icmp ne i32 %1965, %1966
  br i1 %1967, label %1968, label %1985

1968:                                             ; preds = %1964
  %1969 = load i32, ptr %138, align 4, !tbaa !15
  %1970 = load i32, ptr %139, align 4, !tbaa !15
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.55, ptr noundef @.str.2, i32 noundef 63, i32 noundef %1969, i32 noundef %1970)
          to label %1971 unwind label %1980

1971:                                             ; preds = %1968
  %1972 = load i8, ptr %140, align 1, !tbaa !11, !range !13, !noundef !14
  %1973 = trunc i8 %1972 to i1
  br i1 %1973, label %1977, label %1974

1974:                                             ; preds = %1971
  %1975 = load i8, ptr %141, align 1, !tbaa !11, !range !13, !noundef !14
  %1976 = trunc i8 %1975 to i1
  br i1 %1976, label %1977, label %1984

1977:                                             ; preds = %1974, %1971
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.4)
          to label %1978 unwind label %1980

1978:                                             ; preds = %1977
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.5)
          to label %1979 unwind label %1980

1979:                                             ; preds = %1978
  br label %1984

1980:                                             ; preds = %1978, %1977, %1968
  %1981 = landingpad { ptr, i32 }
          cleanup
  %1982 = extractvalue { ptr, i32 } %1981, 0
  store ptr %1982, ptr %9, align 8
  %1983 = extractvalue { ptr, i32 } %1981, 1
  store i32 %1983, ptr %10, align 4
  br label %2020

1984:                                             ; preds = %1979, %1974
  store i8 1, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !11
  br label %1985

1985:                                             ; preds = %1984, %1964
  br label %1986

1986:                                             ; preds = %1985, %1963
  call void @llvm.lifetime.end.p0(i64 1, ptr %141) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %140) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %139) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %138) #6
  br label %1987

1987:                                             ; preds = %1986
  br label %1988

1988:                                             ; preds = %1987
  br label %1989

1989:                                             ; preds = %1988
  call void @llvm.lifetime.start.p0(i64 4, ptr %143) #6
  store i32 0, ptr %143, align 4, !tbaa !15
  call void @llvm.lifetime.start.p0(i64 4, ptr %144) #6
  %1990 = invoke noundef i32 @_ZN6tflite19LinearMemoryPlanner9AddBufferEiii(ptr noundef nonnull align 8 dereferenceable(8216) %57, i32 noundef 4608, i32 noundef 12, i32 noundef 13)
          to label %1991 unwind label %2022

1991:                                             ; preds = %1989
  store i32 %1990, ptr %144, align 4, !tbaa !15
  call void @llvm.lifetime.start.p0(i64 1, ptr %145) #6
  store i8 0, ptr %145, align 1, !tbaa !11
  call void @llvm.lifetime.start.p0(i64 1, ptr %146) #6
  store i8 0, ptr %146, align 1, !tbaa !11
  %1992 = load i8, ptr %145, align 1, !tbaa !11, !range !13, !noundef !14
  %1993 = trunc i8 %1992 to i1
  br i1 %1993, label %1994, label %2031

1994:                                             ; preds = %1991
  %1995 = load i8, ptr %146, align 1, !tbaa !11, !range !13, !noundef !14
  %1996 = trunc i8 %1995 to i1
  br i1 %1996, label %1997, label %2031

1997:                                             ; preds = %1994
  call void @llvm.lifetime.start.p0(i64 4, ptr %147) #6
  %1998 = load i32, ptr %143, align 4, !tbaa !15
  %1999 = load i32, ptr %144, align 4, !tbaa !15
  %2000 = icmp sgt i32 %1998, %1999
  br i1 %2000, label %2001, label %2005

2001:                                             ; preds = %1997
  %2002 = load i32, ptr %143, align 4, !tbaa !15
  %2003 = load i32, ptr %144, align 4, !tbaa !15
  %2004 = sub nsw i32 %2002, %2003
  br label %2009

2005:                                             ; preds = %1997
  %2006 = load i32, ptr %144, align 4, !tbaa !15
  %2007 = load i32, ptr %143, align 4, !tbaa !15
  %2008 = sub nsw i32 %2006, %2007
  br label %2009

2009:                                             ; preds = %2005, %2001
  %2010 = phi i32 [ %2004, %2001 ], [ %2008, %2005 ]
  store i32 %2010, ptr %147, align 4, !tbaa !5
  %2011 = load i32, ptr %147, align 4, !tbaa !5
  %2012 = call noundef i32 @_ZNSt14numeric_limitsIiE7epsilonEv() #6
  %2013 = icmp sgt i32 %2011, %2012
  br i1 %2013, label %2014, label %2030

2014:                                             ; preds = %2009
  %2015 = load i32, ptr %143, align 4, !tbaa !15
  %2016 = uitofp i32 %2015 to double
  %2017 = load i32, ptr %144, align 4, !tbaa !15
  %2018 = uitofp i32 %2017 to double
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.56, ptr noundef @.str.2, i32 noundef 64, double noundef %2016, double noundef %2018)
          to label %2019 unwind label %2026

2019:                                             ; preds = %2014
  store i8 1, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !11
  br label %2030

2020:                                             ; preds = %1980, %1959
  call void @llvm.lifetime.end.p0(i64 1, ptr %141) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %140) #6
  br label %2021

2021:                                             ; preds = %2020, %1955
  call void @llvm.lifetime.end.p0(i64 4, ptr %139) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %138) #6
  br label %2944

2022:                                             ; preds = %1989
  %2023 = landingpad { ptr, i32 }
          cleanup
  %2024 = extractvalue { ptr, i32 } %2023, 0
  store ptr %2024, ptr %9, align 8
  %2025 = extractvalue { ptr, i32 } %2023, 1
  store i32 %2025, ptr %10, align 4
  br label %2088

2026:                                             ; preds = %2014
  %2027 = landingpad { ptr, i32 }
          cleanup
  %2028 = extractvalue { ptr, i32 } %2027, 0
  store ptr %2028, ptr %9, align 8
  %2029 = extractvalue { ptr, i32 } %2027, 1
  store i32 %2029, ptr %10, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %147) #6
  br label %2087

2030:                                             ; preds = %2019, %2009
  call void @llvm.lifetime.end.p0(i64 4, ptr %147) #6
  br label %2053

2031:                                             ; preds = %1994, %1991
  %2032 = load i32, ptr %143, align 4, !tbaa !15
  %2033 = load i32, ptr %144, align 4, !tbaa !15
  %2034 = icmp ne i32 %2032, %2033
  br i1 %2034, label %2035, label %2052

2035:                                             ; preds = %2031
  %2036 = load i32, ptr %143, align 4, !tbaa !15
  %2037 = load i32, ptr %144, align 4, !tbaa !15
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.57, ptr noundef @.str.2, i32 noundef 64, i32 noundef %2036, i32 noundef %2037)
          to label %2038 unwind label %2047

2038:                                             ; preds = %2035
  %2039 = load i8, ptr %145, align 1, !tbaa !11, !range !13, !noundef !14
  %2040 = trunc i8 %2039 to i1
  br i1 %2040, label %2044, label %2041

2041:                                             ; preds = %2038
  %2042 = load i8, ptr %146, align 1, !tbaa !11, !range !13, !noundef !14
  %2043 = trunc i8 %2042 to i1
  br i1 %2043, label %2044, label %2051

2044:                                             ; preds = %2041, %2038
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.4)
          to label %2045 unwind label %2047

2045:                                             ; preds = %2044
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.5)
          to label %2046 unwind label %2047

2046:                                             ; preds = %2045
  br label %2051

2047:                                             ; preds = %2045, %2044, %2035
  %2048 = landingpad { ptr, i32 }
          cleanup
  %2049 = extractvalue { ptr, i32 } %2048, 0
  store ptr %2049, ptr %9, align 8
  %2050 = extractvalue { ptr, i32 } %2048, 1
  store i32 %2050, ptr %10, align 4
  br label %2087

2051:                                             ; preds = %2046, %2041
  store i8 1, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !11
  br label %2052

2052:                                             ; preds = %2051, %2031
  br label %2053

2053:                                             ; preds = %2052, %2030
  call void @llvm.lifetime.end.p0(i64 1, ptr %146) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %145) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %144) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %143) #6
  br label %2054

2054:                                             ; preds = %2053
  br label %2055

2055:                                             ; preds = %2054
  br label %2056

2056:                                             ; preds = %2055
  call void @llvm.lifetime.start.p0(i64 4, ptr %148) #6
  store i32 0, ptr %148, align 4, !tbaa !15
  call void @llvm.lifetime.start.p0(i64 4, ptr %149) #6
  %2057 = invoke noundef i32 @_ZN6tflite19LinearMemoryPlanner9AddBufferEiii(ptr noundef nonnull align 8 dereferenceable(8216) %57, i32 noundef 2304, i32 noundef 11, i32 noundef 12)
          to label %2058 unwind label %2089

2058:                                             ; preds = %2056
  store i32 %2057, ptr %149, align 4, !tbaa !15
  call void @llvm.lifetime.start.p0(i64 1, ptr %150) #6
  store i8 0, ptr %150, align 1, !tbaa !11
  call void @llvm.lifetime.start.p0(i64 1, ptr %151) #6
  store i8 0, ptr %151, align 1, !tbaa !11
  %2059 = load i8, ptr %150, align 1, !tbaa !11, !range !13, !noundef !14
  %2060 = trunc i8 %2059 to i1
  br i1 %2060, label %2061, label %2098

2061:                                             ; preds = %2058
  %2062 = load i8, ptr %151, align 1, !tbaa !11, !range !13, !noundef !14
  %2063 = trunc i8 %2062 to i1
  br i1 %2063, label %2064, label %2098

2064:                                             ; preds = %2061
  call void @llvm.lifetime.start.p0(i64 4, ptr %152) #6
  %2065 = load i32, ptr %148, align 4, !tbaa !15
  %2066 = load i32, ptr %149, align 4, !tbaa !15
  %2067 = icmp sgt i32 %2065, %2066
  br i1 %2067, label %2068, label %2072

2068:                                             ; preds = %2064
  %2069 = load i32, ptr %148, align 4, !tbaa !15
  %2070 = load i32, ptr %149, align 4, !tbaa !15
  %2071 = sub nsw i32 %2069, %2070
  br label %2076

2072:                                             ; preds = %2064
  %2073 = load i32, ptr %149, align 4, !tbaa !15
  %2074 = load i32, ptr %148, align 4, !tbaa !15
  %2075 = sub nsw i32 %2073, %2074
  br label %2076

2076:                                             ; preds = %2072, %2068
  %2077 = phi i32 [ %2071, %2068 ], [ %2075, %2072 ]
  store i32 %2077, ptr %152, align 4, !tbaa !5
  %2078 = load i32, ptr %152, align 4, !tbaa !5
  %2079 = call noundef i32 @_ZNSt14numeric_limitsIiE7epsilonEv() #6
  %2080 = icmp sgt i32 %2078, %2079
  br i1 %2080, label %2081, label %2097

2081:                                             ; preds = %2076
  %2082 = load i32, ptr %148, align 4, !tbaa !15
  %2083 = uitofp i32 %2082 to double
  %2084 = load i32, ptr %149, align 4, !tbaa !15
  %2085 = uitofp i32 %2084 to double
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.58, ptr noundef @.str.2, i32 noundef 65, double noundef %2083, double noundef %2085)
          to label %2086 unwind label %2093

2086:                                             ; preds = %2081
  store i8 1, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !11
  br label %2097

2087:                                             ; preds = %2047, %2026
  call void @llvm.lifetime.end.p0(i64 1, ptr %146) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %145) #6
  br label %2088

2088:                                             ; preds = %2087, %2022
  call void @llvm.lifetime.end.p0(i64 4, ptr %144) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %143) #6
  br label %2944

2089:                                             ; preds = %2056
  %2090 = landingpad { ptr, i32 }
          cleanup
  %2091 = extractvalue { ptr, i32 } %2090, 0
  store ptr %2091, ptr %9, align 8
  %2092 = extractvalue { ptr, i32 } %2090, 1
  store i32 %2092, ptr %10, align 4
  br label %2155

2093:                                             ; preds = %2081
  %2094 = landingpad { ptr, i32 }
          cleanup
  %2095 = extractvalue { ptr, i32 } %2094, 0
  store ptr %2095, ptr %9, align 8
  %2096 = extractvalue { ptr, i32 } %2094, 1
  store i32 %2096, ptr %10, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %152) #6
  br label %2154

2097:                                             ; preds = %2086, %2076
  call void @llvm.lifetime.end.p0(i64 4, ptr %152) #6
  br label %2120

2098:                                             ; preds = %2061, %2058
  %2099 = load i32, ptr %148, align 4, !tbaa !15
  %2100 = load i32, ptr %149, align 4, !tbaa !15
  %2101 = icmp ne i32 %2099, %2100
  br i1 %2101, label %2102, label %2119

2102:                                             ; preds = %2098
  %2103 = load i32, ptr %148, align 4, !tbaa !15
  %2104 = load i32, ptr %149, align 4, !tbaa !15
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.59, ptr noundef @.str.2, i32 noundef 65, i32 noundef %2103, i32 noundef %2104)
          to label %2105 unwind label %2114

2105:                                             ; preds = %2102
  %2106 = load i8, ptr %150, align 1, !tbaa !11, !range !13, !noundef !14
  %2107 = trunc i8 %2106 to i1
  br i1 %2107, label %2111, label %2108

2108:                                             ; preds = %2105
  %2109 = load i8, ptr %151, align 1, !tbaa !11, !range !13, !noundef !14
  %2110 = trunc i8 %2109 to i1
  br i1 %2110, label %2111, label %2118

2111:                                             ; preds = %2108, %2105
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.4)
          to label %2112 unwind label %2114

2112:                                             ; preds = %2111
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.5)
          to label %2113 unwind label %2114

2113:                                             ; preds = %2112
  br label %2118

2114:                                             ; preds = %2112, %2111, %2102
  %2115 = landingpad { ptr, i32 }
          cleanup
  %2116 = extractvalue { ptr, i32 } %2115, 0
  store ptr %2116, ptr %9, align 8
  %2117 = extractvalue { ptr, i32 } %2115, 1
  store i32 %2117, ptr %10, align 4
  br label %2154

2118:                                             ; preds = %2113, %2108
  store i8 1, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !11
  br label %2119

2119:                                             ; preds = %2118, %2098
  br label %2120

2120:                                             ; preds = %2119, %2097
  call void @llvm.lifetime.end.p0(i64 1, ptr %151) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %150) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %149) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %148) #6
  br label %2121

2121:                                             ; preds = %2120
  br label %2122

2122:                                             ; preds = %2121
  br label %2123

2123:                                             ; preds = %2122
  call void @llvm.lifetime.start.p0(i64 4, ptr %153) #6
  store i32 0, ptr %153, align 4, !tbaa !15
  call void @llvm.lifetime.start.p0(i64 4, ptr %154) #6
  %2124 = invoke noundef i32 @_ZN6tflite19LinearMemoryPlanner9AddBufferEiii(ptr noundef nonnull align 8 dereferenceable(8216) %57, i32 noundef 9216, i32 noundef 10, i32 noundef 11)
          to label %2125 unwind label %2156

2125:                                             ; preds = %2123
  store i32 %2124, ptr %154, align 4, !tbaa !15
  call void @llvm.lifetime.start.p0(i64 1, ptr %155) #6
  store i8 0, ptr %155, align 1, !tbaa !11
  call void @llvm.lifetime.start.p0(i64 1, ptr %156) #6
  store i8 0, ptr %156, align 1, !tbaa !11
  %2126 = load i8, ptr %155, align 1, !tbaa !11, !range !13, !noundef !14
  %2127 = trunc i8 %2126 to i1
  br i1 %2127, label %2128, label %2165

2128:                                             ; preds = %2125
  %2129 = load i8, ptr %156, align 1, !tbaa !11, !range !13, !noundef !14
  %2130 = trunc i8 %2129 to i1
  br i1 %2130, label %2131, label %2165

2131:                                             ; preds = %2128
  call void @llvm.lifetime.start.p0(i64 4, ptr %157) #6
  %2132 = load i32, ptr %153, align 4, !tbaa !15
  %2133 = load i32, ptr %154, align 4, !tbaa !15
  %2134 = icmp sgt i32 %2132, %2133
  br i1 %2134, label %2135, label %2139

2135:                                             ; preds = %2131
  %2136 = load i32, ptr %153, align 4, !tbaa !15
  %2137 = load i32, ptr %154, align 4, !tbaa !15
  %2138 = sub nsw i32 %2136, %2137
  br label %2143

2139:                                             ; preds = %2131
  %2140 = load i32, ptr %154, align 4, !tbaa !15
  %2141 = load i32, ptr %153, align 4, !tbaa !15
  %2142 = sub nsw i32 %2140, %2141
  br label %2143

2143:                                             ; preds = %2139, %2135
  %2144 = phi i32 [ %2138, %2135 ], [ %2142, %2139 ]
  store i32 %2144, ptr %157, align 4, !tbaa !5
  %2145 = load i32, ptr %157, align 4, !tbaa !5
  %2146 = call noundef i32 @_ZNSt14numeric_limitsIiE7epsilonEv() #6
  %2147 = icmp sgt i32 %2145, %2146
  br i1 %2147, label %2148, label %2164

2148:                                             ; preds = %2143
  %2149 = load i32, ptr %153, align 4, !tbaa !15
  %2150 = uitofp i32 %2149 to double
  %2151 = load i32, ptr %154, align 4, !tbaa !15
  %2152 = uitofp i32 %2151 to double
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.60, ptr noundef @.str.2, i32 noundef 66, double noundef %2150, double noundef %2152)
          to label %2153 unwind label %2160

2153:                                             ; preds = %2148
  store i8 1, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !11
  br label %2164

2154:                                             ; preds = %2114, %2093
  call void @llvm.lifetime.end.p0(i64 1, ptr %151) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %150) #6
  br label %2155

2155:                                             ; preds = %2154, %2089
  call void @llvm.lifetime.end.p0(i64 4, ptr %149) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %148) #6
  br label %2944

2156:                                             ; preds = %2123
  %2157 = landingpad { ptr, i32 }
          cleanup
  %2158 = extractvalue { ptr, i32 } %2157, 0
  store ptr %2158, ptr %9, align 8
  %2159 = extractvalue { ptr, i32 } %2157, 1
  store i32 %2159, ptr %10, align 4
  br label %2222

2160:                                             ; preds = %2148
  %2161 = landingpad { ptr, i32 }
          cleanup
  %2162 = extractvalue { ptr, i32 } %2161, 0
  store ptr %2162, ptr %9, align 8
  %2163 = extractvalue { ptr, i32 } %2161, 1
  store i32 %2163, ptr %10, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %157) #6
  br label %2221

2164:                                             ; preds = %2153, %2143
  call void @llvm.lifetime.end.p0(i64 4, ptr %157) #6
  br label %2187

2165:                                             ; preds = %2128, %2125
  %2166 = load i32, ptr %153, align 4, !tbaa !15
  %2167 = load i32, ptr %154, align 4, !tbaa !15
  %2168 = icmp ne i32 %2166, %2167
  br i1 %2168, label %2169, label %2186

2169:                                             ; preds = %2165
  %2170 = load i32, ptr %153, align 4, !tbaa !15
  %2171 = load i32, ptr %154, align 4, !tbaa !15
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.61, ptr noundef @.str.2, i32 noundef 66, i32 noundef %2170, i32 noundef %2171)
          to label %2172 unwind label %2181

2172:                                             ; preds = %2169
  %2173 = load i8, ptr %155, align 1, !tbaa !11, !range !13, !noundef !14
  %2174 = trunc i8 %2173 to i1
  br i1 %2174, label %2178, label %2175

2175:                                             ; preds = %2172
  %2176 = load i8, ptr %156, align 1, !tbaa !11, !range !13, !noundef !14
  %2177 = trunc i8 %2176 to i1
  br i1 %2177, label %2178, label %2185

2178:                                             ; preds = %2175, %2172
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.4)
          to label %2179 unwind label %2181

2179:                                             ; preds = %2178
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.5)
          to label %2180 unwind label %2181

2180:                                             ; preds = %2179
  br label %2185

2181:                                             ; preds = %2179, %2178, %2169
  %2182 = landingpad { ptr, i32 }
          cleanup
  %2183 = extractvalue { ptr, i32 } %2182, 0
  store ptr %2183, ptr %9, align 8
  %2184 = extractvalue { ptr, i32 } %2182, 1
  store i32 %2184, ptr %10, align 4
  br label %2221

2185:                                             ; preds = %2180, %2175
  store i8 1, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !11
  br label %2186

2186:                                             ; preds = %2185, %2165
  br label %2187

2187:                                             ; preds = %2186, %2164
  call void @llvm.lifetime.end.p0(i64 1, ptr %156) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %155) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %154) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %153) #6
  br label %2188

2188:                                             ; preds = %2187
  br label %2189

2189:                                             ; preds = %2188
  br label %2190

2190:                                             ; preds = %2189
  call void @llvm.lifetime.start.p0(i64 4, ptr %158) #6
  store i32 0, ptr %158, align 4, !tbaa !15
  call void @llvm.lifetime.start.p0(i64 4, ptr %159) #6
  %2191 = invoke noundef i32 @_ZN6tflite19LinearMemoryPlanner9AddBufferEiii(ptr noundef nonnull align 8 dereferenceable(8216) %57, i32 noundef 9216, i32 noundef 9, i32 noundef 10)
          to label %2192 unwind label %2223

2192:                                             ; preds = %2190
  store i32 %2191, ptr %159, align 4, !tbaa !15
  call void @llvm.lifetime.start.p0(i64 1, ptr %160) #6
  store i8 0, ptr %160, align 1, !tbaa !11
  call void @llvm.lifetime.start.p0(i64 1, ptr %161) #6
  store i8 0, ptr %161, align 1, !tbaa !11
  %2193 = load i8, ptr %160, align 1, !tbaa !11, !range !13, !noundef !14
  %2194 = trunc i8 %2193 to i1
  br i1 %2194, label %2195, label %2232

2195:                                             ; preds = %2192
  %2196 = load i8, ptr %161, align 1, !tbaa !11, !range !13, !noundef !14
  %2197 = trunc i8 %2196 to i1
  br i1 %2197, label %2198, label %2232

2198:                                             ; preds = %2195
  call void @llvm.lifetime.start.p0(i64 4, ptr %162) #6
  %2199 = load i32, ptr %158, align 4, !tbaa !15
  %2200 = load i32, ptr %159, align 4, !tbaa !15
  %2201 = icmp sgt i32 %2199, %2200
  br i1 %2201, label %2202, label %2206

2202:                                             ; preds = %2198
  %2203 = load i32, ptr %158, align 4, !tbaa !15
  %2204 = load i32, ptr %159, align 4, !tbaa !15
  %2205 = sub nsw i32 %2203, %2204
  br label %2210

2206:                                             ; preds = %2198
  %2207 = load i32, ptr %159, align 4, !tbaa !15
  %2208 = load i32, ptr %158, align 4, !tbaa !15
  %2209 = sub nsw i32 %2207, %2208
  br label %2210

2210:                                             ; preds = %2206, %2202
  %2211 = phi i32 [ %2205, %2202 ], [ %2209, %2206 ]
  store i32 %2211, ptr %162, align 4, !tbaa !5
  %2212 = load i32, ptr %162, align 4, !tbaa !5
  %2213 = call noundef i32 @_ZNSt14numeric_limitsIiE7epsilonEv() #6
  %2214 = icmp sgt i32 %2212, %2213
  br i1 %2214, label %2215, label %2231

2215:                                             ; preds = %2210
  %2216 = load i32, ptr %158, align 4, !tbaa !15
  %2217 = uitofp i32 %2216 to double
  %2218 = load i32, ptr %159, align 4, !tbaa !15
  %2219 = uitofp i32 %2218 to double
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.62, ptr noundef @.str.2, i32 noundef 67, double noundef %2217, double noundef %2219)
          to label %2220 unwind label %2227

2220:                                             ; preds = %2215
  store i8 1, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !11
  br label %2231

2221:                                             ; preds = %2181, %2160
  call void @llvm.lifetime.end.p0(i64 1, ptr %156) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %155) #6
  br label %2222

2222:                                             ; preds = %2221, %2156
  call void @llvm.lifetime.end.p0(i64 4, ptr %154) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %153) #6
  br label %2944

2223:                                             ; preds = %2190
  %2224 = landingpad { ptr, i32 }
          cleanup
  %2225 = extractvalue { ptr, i32 } %2224, 0
  store ptr %2225, ptr %9, align 8
  %2226 = extractvalue { ptr, i32 } %2224, 1
  store i32 %2226, ptr %10, align 4
  br label %2289

2227:                                             ; preds = %2215
  %2228 = landingpad { ptr, i32 }
          cleanup
  %2229 = extractvalue { ptr, i32 } %2228, 0
  store ptr %2229, ptr %9, align 8
  %2230 = extractvalue { ptr, i32 } %2228, 1
  store i32 %2230, ptr %10, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %162) #6
  br label %2288

2231:                                             ; preds = %2220, %2210
  call void @llvm.lifetime.end.p0(i64 4, ptr %162) #6
  br label %2254

2232:                                             ; preds = %2195, %2192
  %2233 = load i32, ptr %158, align 4, !tbaa !15
  %2234 = load i32, ptr %159, align 4, !tbaa !15
  %2235 = icmp ne i32 %2233, %2234
  br i1 %2235, label %2236, label %2253

2236:                                             ; preds = %2232
  %2237 = load i32, ptr %158, align 4, !tbaa !15
  %2238 = load i32, ptr %159, align 4, !tbaa !15
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.63, ptr noundef @.str.2, i32 noundef 67, i32 noundef %2237, i32 noundef %2238)
          to label %2239 unwind label %2248

2239:                                             ; preds = %2236
  %2240 = load i8, ptr %160, align 1, !tbaa !11, !range !13, !noundef !14
  %2241 = trunc i8 %2240 to i1
  br i1 %2241, label %2245, label %2242

2242:                                             ; preds = %2239
  %2243 = load i8, ptr %161, align 1, !tbaa !11, !range !13, !noundef !14
  %2244 = trunc i8 %2243 to i1
  br i1 %2244, label %2245, label %2252

2245:                                             ; preds = %2242, %2239
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.4)
          to label %2246 unwind label %2248

2246:                                             ; preds = %2245
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.5)
          to label %2247 unwind label %2248

2247:                                             ; preds = %2246
  br label %2252

2248:                                             ; preds = %2246, %2245, %2236
  %2249 = landingpad { ptr, i32 }
          cleanup
  %2250 = extractvalue { ptr, i32 } %2249, 0
  store ptr %2250, ptr %9, align 8
  %2251 = extractvalue { ptr, i32 } %2249, 1
  store i32 %2251, ptr %10, align 4
  br label %2288

2252:                                             ; preds = %2247, %2242
  store i8 1, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !11
  br label %2253

2253:                                             ; preds = %2252, %2232
  br label %2254

2254:                                             ; preds = %2253, %2231
  call void @llvm.lifetime.end.p0(i64 1, ptr %161) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %160) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %159) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %158) #6
  br label %2255

2255:                                             ; preds = %2254
  br label %2256

2256:                                             ; preds = %2255
  br label %2257

2257:                                             ; preds = %2256
  call void @llvm.lifetime.start.p0(i64 4, ptr %163) #6
  store i32 0, ptr %163, align 4, !tbaa !15
  call void @llvm.lifetime.start.p0(i64 4, ptr %164) #6
  %2258 = invoke noundef i32 @_ZN6tflite19LinearMemoryPlanner9AddBufferEiii(ptr noundef nonnull align 8 dereferenceable(8216) %57, i32 noundef 9216, i32 noundef 8, i32 noundef 9)
          to label %2259 unwind label %2290

2259:                                             ; preds = %2257
  store i32 %2258, ptr %164, align 4, !tbaa !15
  call void @llvm.lifetime.start.p0(i64 1, ptr %165) #6
  store i8 0, ptr %165, align 1, !tbaa !11
  call void @llvm.lifetime.start.p0(i64 1, ptr %166) #6
  store i8 0, ptr %166, align 1, !tbaa !11
  %2260 = load i8, ptr %165, align 1, !tbaa !11, !range !13, !noundef !14
  %2261 = trunc i8 %2260 to i1
  br i1 %2261, label %2262, label %2299

2262:                                             ; preds = %2259
  %2263 = load i8, ptr %166, align 1, !tbaa !11, !range !13, !noundef !14
  %2264 = trunc i8 %2263 to i1
  br i1 %2264, label %2265, label %2299

2265:                                             ; preds = %2262
  call void @llvm.lifetime.start.p0(i64 4, ptr %167) #6
  %2266 = load i32, ptr %163, align 4, !tbaa !15
  %2267 = load i32, ptr %164, align 4, !tbaa !15
  %2268 = icmp sgt i32 %2266, %2267
  br i1 %2268, label %2269, label %2273

2269:                                             ; preds = %2265
  %2270 = load i32, ptr %163, align 4, !tbaa !15
  %2271 = load i32, ptr %164, align 4, !tbaa !15
  %2272 = sub nsw i32 %2270, %2271
  br label %2277

2273:                                             ; preds = %2265
  %2274 = load i32, ptr %164, align 4, !tbaa !15
  %2275 = load i32, ptr %163, align 4, !tbaa !15
  %2276 = sub nsw i32 %2274, %2275
  br label %2277

2277:                                             ; preds = %2273, %2269
  %2278 = phi i32 [ %2272, %2269 ], [ %2276, %2273 ]
  store i32 %2278, ptr %167, align 4, !tbaa !5
  %2279 = load i32, ptr %167, align 4, !tbaa !5
  %2280 = call noundef i32 @_ZNSt14numeric_limitsIiE7epsilonEv() #6
  %2281 = icmp sgt i32 %2279, %2280
  br i1 %2281, label %2282, label %2298

2282:                                             ; preds = %2277
  %2283 = load i32, ptr %163, align 4, !tbaa !15
  %2284 = uitofp i32 %2283 to double
  %2285 = load i32, ptr %164, align 4, !tbaa !15
  %2286 = uitofp i32 %2285 to double
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.64, ptr noundef @.str.2, i32 noundef 68, double noundef %2284, double noundef %2286)
          to label %2287 unwind label %2294

2287:                                             ; preds = %2282
  store i8 1, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !11
  br label %2298

2288:                                             ; preds = %2248, %2227
  call void @llvm.lifetime.end.p0(i64 1, ptr %161) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %160) #6
  br label %2289

2289:                                             ; preds = %2288, %2223
  call void @llvm.lifetime.end.p0(i64 4, ptr %159) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %158) #6
  br label %2944

2290:                                             ; preds = %2257
  %2291 = landingpad { ptr, i32 }
          cleanup
  %2292 = extractvalue { ptr, i32 } %2291, 0
  store ptr %2292, ptr %9, align 8
  %2293 = extractvalue { ptr, i32 } %2291, 1
  store i32 %2293, ptr %10, align 4
  br label %2356

2294:                                             ; preds = %2282
  %2295 = landingpad { ptr, i32 }
          cleanup
  %2296 = extractvalue { ptr, i32 } %2295, 0
  store ptr %2296, ptr %9, align 8
  %2297 = extractvalue { ptr, i32 } %2295, 1
  store i32 %2297, ptr %10, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %167) #6
  br label %2355

2298:                                             ; preds = %2287, %2277
  call void @llvm.lifetime.end.p0(i64 4, ptr %167) #6
  br label %2321

2299:                                             ; preds = %2262, %2259
  %2300 = load i32, ptr %163, align 4, !tbaa !15
  %2301 = load i32, ptr %164, align 4, !tbaa !15
  %2302 = icmp ne i32 %2300, %2301
  br i1 %2302, label %2303, label %2320

2303:                                             ; preds = %2299
  %2304 = load i32, ptr %163, align 4, !tbaa !15
  %2305 = load i32, ptr %164, align 4, !tbaa !15
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.65, ptr noundef @.str.2, i32 noundef 68, i32 noundef %2304, i32 noundef %2305)
          to label %2306 unwind label %2315

2306:                                             ; preds = %2303
  %2307 = load i8, ptr %165, align 1, !tbaa !11, !range !13, !noundef !14
  %2308 = trunc i8 %2307 to i1
  br i1 %2308, label %2312, label %2309

2309:                                             ; preds = %2306
  %2310 = load i8, ptr %166, align 1, !tbaa !11, !range !13, !noundef !14
  %2311 = trunc i8 %2310 to i1
  br i1 %2311, label %2312, label %2319

2312:                                             ; preds = %2309, %2306
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.4)
          to label %2313 unwind label %2315

2313:                                             ; preds = %2312
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.5)
          to label %2314 unwind label %2315

2314:                                             ; preds = %2313
  br label %2319

2315:                                             ; preds = %2313, %2312, %2303
  %2316 = landingpad { ptr, i32 }
          cleanup
  %2317 = extractvalue { ptr, i32 } %2316, 0
  store ptr %2317, ptr %9, align 8
  %2318 = extractvalue { ptr, i32 } %2316, 1
  store i32 %2318, ptr %10, align 4
  br label %2355

2319:                                             ; preds = %2314, %2309
  store i8 1, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !11
  br label %2320

2320:                                             ; preds = %2319, %2299
  br label %2321

2321:                                             ; preds = %2320, %2298
  call void @llvm.lifetime.end.p0(i64 1, ptr %166) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %165) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %164) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %163) #6
  br label %2322

2322:                                             ; preds = %2321
  br label %2323

2323:                                             ; preds = %2322
  br label %2324

2324:                                             ; preds = %2323
  call void @llvm.lifetime.start.p0(i64 4, ptr %168) #6
  store i32 0, ptr %168, align 4, !tbaa !15
  call void @llvm.lifetime.start.p0(i64 4, ptr %169) #6
  %2325 = invoke noundef i32 @_ZN6tflite19LinearMemoryPlanner9AddBufferEiii(ptr noundef nonnull align 8 dereferenceable(8216) %57, i32 noundef 4608, i32 noundef 7, i32 noundef 8)
          to label %2326 unwind label %2357

2326:                                             ; preds = %2324
  store i32 %2325, ptr %169, align 4, !tbaa !15
  call void @llvm.lifetime.start.p0(i64 1, ptr %170) #6
  store i8 0, ptr %170, align 1, !tbaa !11
  call void @llvm.lifetime.start.p0(i64 1, ptr %171) #6
  store i8 0, ptr %171, align 1, !tbaa !11
  %2327 = load i8, ptr %170, align 1, !tbaa !11, !range !13, !noundef !14
  %2328 = trunc i8 %2327 to i1
  br i1 %2328, label %2329, label %2366

2329:                                             ; preds = %2326
  %2330 = load i8, ptr %171, align 1, !tbaa !11, !range !13, !noundef !14
  %2331 = trunc i8 %2330 to i1
  br i1 %2331, label %2332, label %2366

2332:                                             ; preds = %2329
  call void @llvm.lifetime.start.p0(i64 4, ptr %172) #6
  %2333 = load i32, ptr %168, align 4, !tbaa !15
  %2334 = load i32, ptr %169, align 4, !tbaa !15
  %2335 = icmp sgt i32 %2333, %2334
  br i1 %2335, label %2336, label %2340

2336:                                             ; preds = %2332
  %2337 = load i32, ptr %168, align 4, !tbaa !15
  %2338 = load i32, ptr %169, align 4, !tbaa !15
  %2339 = sub nsw i32 %2337, %2338
  br label %2344

2340:                                             ; preds = %2332
  %2341 = load i32, ptr %169, align 4, !tbaa !15
  %2342 = load i32, ptr %168, align 4, !tbaa !15
  %2343 = sub nsw i32 %2341, %2342
  br label %2344

2344:                                             ; preds = %2340, %2336
  %2345 = phi i32 [ %2339, %2336 ], [ %2343, %2340 ]
  store i32 %2345, ptr %172, align 4, !tbaa !5
  %2346 = load i32, ptr %172, align 4, !tbaa !5
  %2347 = call noundef i32 @_ZNSt14numeric_limitsIiE7epsilonEv() #6
  %2348 = icmp sgt i32 %2346, %2347
  br i1 %2348, label %2349, label %2365

2349:                                             ; preds = %2344
  %2350 = load i32, ptr %168, align 4, !tbaa !15
  %2351 = uitofp i32 %2350 to double
  %2352 = load i32, ptr %169, align 4, !tbaa !15
  %2353 = uitofp i32 %2352 to double
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.66, ptr noundef @.str.2, i32 noundef 69, double noundef %2351, double noundef %2353)
          to label %2354 unwind label %2361

2354:                                             ; preds = %2349
  store i8 1, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !11
  br label %2365

2355:                                             ; preds = %2315, %2294
  call void @llvm.lifetime.end.p0(i64 1, ptr %166) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %165) #6
  br label %2356

2356:                                             ; preds = %2355, %2290
  call void @llvm.lifetime.end.p0(i64 4, ptr %164) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %163) #6
  br label %2944

2357:                                             ; preds = %2324
  %2358 = landingpad { ptr, i32 }
          cleanup
  %2359 = extractvalue { ptr, i32 } %2358, 0
  store ptr %2359, ptr %9, align 8
  %2360 = extractvalue { ptr, i32 } %2358, 1
  store i32 %2360, ptr %10, align 4
  br label %2423

2361:                                             ; preds = %2349
  %2362 = landingpad { ptr, i32 }
          cleanup
  %2363 = extractvalue { ptr, i32 } %2362, 0
  store ptr %2363, ptr %9, align 8
  %2364 = extractvalue { ptr, i32 } %2362, 1
  store i32 %2364, ptr %10, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %172) #6
  br label %2422

2365:                                             ; preds = %2354, %2344
  call void @llvm.lifetime.end.p0(i64 4, ptr %172) #6
  br label %2388

2366:                                             ; preds = %2329, %2326
  %2367 = load i32, ptr %168, align 4, !tbaa !15
  %2368 = load i32, ptr %169, align 4, !tbaa !15
  %2369 = icmp ne i32 %2367, %2368
  br i1 %2369, label %2370, label %2387

2370:                                             ; preds = %2366
  %2371 = load i32, ptr %168, align 4, !tbaa !15
  %2372 = load i32, ptr %169, align 4, !tbaa !15
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.67, ptr noundef @.str.2, i32 noundef 69, i32 noundef %2371, i32 noundef %2372)
          to label %2373 unwind label %2382

2373:                                             ; preds = %2370
  %2374 = load i8, ptr %170, align 1, !tbaa !11, !range !13, !noundef !14
  %2375 = trunc i8 %2374 to i1
  br i1 %2375, label %2379, label %2376

2376:                                             ; preds = %2373
  %2377 = load i8, ptr %171, align 1, !tbaa !11, !range !13, !noundef !14
  %2378 = trunc i8 %2377 to i1
  br i1 %2378, label %2379, label %2386

2379:                                             ; preds = %2376, %2373
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.4)
          to label %2380 unwind label %2382

2380:                                             ; preds = %2379
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.5)
          to label %2381 unwind label %2382

2381:                                             ; preds = %2380
  br label %2386

2382:                                             ; preds = %2380, %2379, %2370
  %2383 = landingpad { ptr, i32 }
          cleanup
  %2384 = extractvalue { ptr, i32 } %2383, 0
  store ptr %2384, ptr %9, align 8
  %2385 = extractvalue { ptr, i32 } %2383, 1
  store i32 %2385, ptr %10, align 4
  br label %2422

2386:                                             ; preds = %2381, %2376
  store i8 1, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !11
  br label %2387

2387:                                             ; preds = %2386, %2366
  br label %2388

2388:                                             ; preds = %2387, %2365
  call void @llvm.lifetime.end.p0(i64 1, ptr %171) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %170) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %169) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %168) #6
  br label %2389

2389:                                             ; preds = %2388
  br label %2390

2390:                                             ; preds = %2389
  br label %2391

2391:                                             ; preds = %2390
  call void @llvm.lifetime.start.p0(i64 4, ptr %173) #6
  store i32 0, ptr %173, align 4, !tbaa !15
  call void @llvm.lifetime.start.p0(i64 4, ptr %174) #6
  %2392 = invoke noundef i32 @_ZN6tflite19LinearMemoryPlanner9AddBufferEiii(ptr noundef nonnull align 8 dereferenceable(8216) %57, i32 noundef 18432, i32 noundef 6, i32 noundef 7)
          to label %2393 unwind label %2424

2393:                                             ; preds = %2391
  store i32 %2392, ptr %174, align 4, !tbaa !15
  call void @llvm.lifetime.start.p0(i64 1, ptr %175) #6
  store i8 0, ptr %175, align 1, !tbaa !11
  call void @llvm.lifetime.start.p0(i64 1, ptr %176) #6
  store i8 0, ptr %176, align 1, !tbaa !11
  %2394 = load i8, ptr %175, align 1, !tbaa !11, !range !13, !noundef !14
  %2395 = trunc i8 %2394 to i1
  br i1 %2395, label %2396, label %2433

2396:                                             ; preds = %2393
  %2397 = load i8, ptr %176, align 1, !tbaa !11, !range !13, !noundef !14
  %2398 = trunc i8 %2397 to i1
  br i1 %2398, label %2399, label %2433

2399:                                             ; preds = %2396
  call void @llvm.lifetime.start.p0(i64 4, ptr %177) #6
  %2400 = load i32, ptr %173, align 4, !tbaa !15
  %2401 = load i32, ptr %174, align 4, !tbaa !15
  %2402 = icmp sgt i32 %2400, %2401
  br i1 %2402, label %2403, label %2407

2403:                                             ; preds = %2399
  %2404 = load i32, ptr %173, align 4, !tbaa !15
  %2405 = load i32, ptr %174, align 4, !tbaa !15
  %2406 = sub nsw i32 %2404, %2405
  br label %2411

2407:                                             ; preds = %2399
  %2408 = load i32, ptr %174, align 4, !tbaa !15
  %2409 = load i32, ptr %173, align 4, !tbaa !15
  %2410 = sub nsw i32 %2408, %2409
  br label %2411

2411:                                             ; preds = %2407, %2403
  %2412 = phi i32 [ %2406, %2403 ], [ %2410, %2407 ]
  store i32 %2412, ptr %177, align 4, !tbaa !5
  %2413 = load i32, ptr %177, align 4, !tbaa !5
  %2414 = call noundef i32 @_ZNSt14numeric_limitsIiE7epsilonEv() #6
  %2415 = icmp sgt i32 %2413, %2414
  br i1 %2415, label %2416, label %2432

2416:                                             ; preds = %2411
  %2417 = load i32, ptr %173, align 4, !tbaa !15
  %2418 = uitofp i32 %2417 to double
  %2419 = load i32, ptr %174, align 4, !tbaa !15
  %2420 = uitofp i32 %2419 to double
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.68, ptr noundef @.str.2, i32 noundef 70, double noundef %2418, double noundef %2420)
          to label %2421 unwind label %2428

2421:                                             ; preds = %2416
  store i8 1, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !11
  br label %2432

2422:                                             ; preds = %2382, %2361
  call void @llvm.lifetime.end.p0(i64 1, ptr %171) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %170) #6
  br label %2423

2423:                                             ; preds = %2422, %2357
  call void @llvm.lifetime.end.p0(i64 4, ptr %169) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %168) #6
  br label %2944

2424:                                             ; preds = %2391
  %2425 = landingpad { ptr, i32 }
          cleanup
  %2426 = extractvalue { ptr, i32 } %2425, 0
  store ptr %2426, ptr %9, align 8
  %2427 = extractvalue { ptr, i32 } %2425, 1
  store i32 %2427, ptr %10, align 4
  br label %2490

2428:                                             ; preds = %2416
  %2429 = landingpad { ptr, i32 }
          cleanup
  %2430 = extractvalue { ptr, i32 } %2429, 0
  store ptr %2430, ptr %9, align 8
  %2431 = extractvalue { ptr, i32 } %2429, 1
  store i32 %2431, ptr %10, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %177) #6
  br label %2489

2432:                                             ; preds = %2421, %2411
  call void @llvm.lifetime.end.p0(i64 4, ptr %177) #6
  br label %2455

2433:                                             ; preds = %2396, %2393
  %2434 = load i32, ptr %173, align 4, !tbaa !15
  %2435 = load i32, ptr %174, align 4, !tbaa !15
  %2436 = icmp ne i32 %2434, %2435
  br i1 %2436, label %2437, label %2454

2437:                                             ; preds = %2433
  %2438 = load i32, ptr %173, align 4, !tbaa !15
  %2439 = load i32, ptr %174, align 4, !tbaa !15
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.69, ptr noundef @.str.2, i32 noundef 70, i32 noundef %2438, i32 noundef %2439)
          to label %2440 unwind label %2449

2440:                                             ; preds = %2437
  %2441 = load i8, ptr %175, align 1, !tbaa !11, !range !13, !noundef !14
  %2442 = trunc i8 %2441 to i1
  br i1 %2442, label %2446, label %2443

2443:                                             ; preds = %2440
  %2444 = load i8, ptr %176, align 1, !tbaa !11, !range !13, !noundef !14
  %2445 = trunc i8 %2444 to i1
  br i1 %2445, label %2446, label %2453

2446:                                             ; preds = %2443, %2440
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.4)
          to label %2447 unwind label %2449

2447:                                             ; preds = %2446
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.5)
          to label %2448 unwind label %2449

2448:                                             ; preds = %2447
  br label %2453

2449:                                             ; preds = %2447, %2446, %2437
  %2450 = landingpad { ptr, i32 }
          cleanup
  %2451 = extractvalue { ptr, i32 } %2450, 0
  store ptr %2451, ptr %9, align 8
  %2452 = extractvalue { ptr, i32 } %2450, 1
  store i32 %2452, ptr %10, align 4
  br label %2489

2453:                                             ; preds = %2448, %2443
  store i8 1, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !11
  br label %2454

2454:                                             ; preds = %2453, %2433
  br label %2455

2455:                                             ; preds = %2454, %2432
  call void @llvm.lifetime.end.p0(i64 1, ptr %176) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %175) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %174) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %173) #6
  br label %2456

2456:                                             ; preds = %2455
  br label %2457

2457:                                             ; preds = %2456
  br label %2458

2458:                                             ; preds = %2457
  call void @llvm.lifetime.start.p0(i64 4, ptr %178) #6
  store i32 0, ptr %178, align 4, !tbaa !15
  call void @llvm.lifetime.start.p0(i64 4, ptr %179) #6
  %2459 = invoke noundef i32 @_ZN6tflite19LinearMemoryPlanner9AddBufferEiii(ptr noundef nonnull align 8 dereferenceable(8216) %57, i32 noundef 18432, i32 noundef 5, i32 noundef 6)
          to label %2460 unwind label %2491

2460:                                             ; preds = %2458
  store i32 %2459, ptr %179, align 4, !tbaa !15
  call void @llvm.lifetime.start.p0(i64 1, ptr %180) #6
  store i8 0, ptr %180, align 1, !tbaa !11
  call void @llvm.lifetime.start.p0(i64 1, ptr %181) #6
  store i8 0, ptr %181, align 1, !tbaa !11
  %2461 = load i8, ptr %180, align 1, !tbaa !11, !range !13, !noundef !14
  %2462 = trunc i8 %2461 to i1
  br i1 %2462, label %2463, label %2500

2463:                                             ; preds = %2460
  %2464 = load i8, ptr %181, align 1, !tbaa !11, !range !13, !noundef !14
  %2465 = trunc i8 %2464 to i1
  br i1 %2465, label %2466, label %2500

2466:                                             ; preds = %2463
  call void @llvm.lifetime.start.p0(i64 4, ptr %182) #6
  %2467 = load i32, ptr %178, align 4, !tbaa !15
  %2468 = load i32, ptr %179, align 4, !tbaa !15
  %2469 = icmp sgt i32 %2467, %2468
  br i1 %2469, label %2470, label %2474

2470:                                             ; preds = %2466
  %2471 = load i32, ptr %178, align 4, !tbaa !15
  %2472 = load i32, ptr %179, align 4, !tbaa !15
  %2473 = sub nsw i32 %2471, %2472
  br label %2478

2474:                                             ; preds = %2466
  %2475 = load i32, ptr %179, align 4, !tbaa !15
  %2476 = load i32, ptr %178, align 4, !tbaa !15
  %2477 = sub nsw i32 %2475, %2476
  br label %2478

2478:                                             ; preds = %2474, %2470
  %2479 = phi i32 [ %2473, %2470 ], [ %2477, %2474 ]
  store i32 %2479, ptr %182, align 4, !tbaa !5
  %2480 = load i32, ptr %182, align 4, !tbaa !5
  %2481 = call noundef i32 @_ZNSt14numeric_limitsIiE7epsilonEv() #6
  %2482 = icmp sgt i32 %2480, %2481
  br i1 %2482, label %2483, label %2499

2483:                                             ; preds = %2478
  %2484 = load i32, ptr %178, align 4, !tbaa !15
  %2485 = uitofp i32 %2484 to double
  %2486 = load i32, ptr %179, align 4, !tbaa !15
  %2487 = uitofp i32 %2486 to double
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.70, ptr noundef @.str.2, i32 noundef 71, double noundef %2485, double noundef %2487)
          to label %2488 unwind label %2495

2488:                                             ; preds = %2483
  store i8 1, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !11
  br label %2499

2489:                                             ; preds = %2449, %2428
  call void @llvm.lifetime.end.p0(i64 1, ptr %176) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %175) #6
  br label %2490

2490:                                             ; preds = %2489, %2424
  call void @llvm.lifetime.end.p0(i64 4, ptr %174) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %173) #6
  br label %2944

2491:                                             ; preds = %2458
  %2492 = landingpad { ptr, i32 }
          cleanup
  %2493 = extractvalue { ptr, i32 } %2492, 0
  store ptr %2493, ptr %9, align 8
  %2494 = extractvalue { ptr, i32 } %2492, 1
  store i32 %2494, ptr %10, align 4
  br label %2557

2495:                                             ; preds = %2483
  %2496 = landingpad { ptr, i32 }
          cleanup
  %2497 = extractvalue { ptr, i32 } %2496, 0
  store ptr %2497, ptr %9, align 8
  %2498 = extractvalue { ptr, i32 } %2496, 1
  store i32 %2498, ptr %10, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %182) #6
  br label %2556

2499:                                             ; preds = %2488, %2478
  call void @llvm.lifetime.end.p0(i64 4, ptr %182) #6
  br label %2522

2500:                                             ; preds = %2463, %2460
  %2501 = load i32, ptr %178, align 4, !tbaa !15
  %2502 = load i32, ptr %179, align 4, !tbaa !15
  %2503 = icmp ne i32 %2501, %2502
  br i1 %2503, label %2504, label %2521

2504:                                             ; preds = %2500
  %2505 = load i32, ptr %178, align 4, !tbaa !15
  %2506 = load i32, ptr %179, align 4, !tbaa !15
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.71, ptr noundef @.str.2, i32 noundef 71, i32 noundef %2505, i32 noundef %2506)
          to label %2507 unwind label %2516

2507:                                             ; preds = %2504
  %2508 = load i8, ptr %180, align 1, !tbaa !11, !range !13, !noundef !14
  %2509 = trunc i8 %2508 to i1
  br i1 %2509, label %2513, label %2510

2510:                                             ; preds = %2507
  %2511 = load i8, ptr %181, align 1, !tbaa !11, !range !13, !noundef !14
  %2512 = trunc i8 %2511 to i1
  br i1 %2512, label %2513, label %2520

2513:                                             ; preds = %2510, %2507
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.4)
          to label %2514 unwind label %2516

2514:                                             ; preds = %2513
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.5)
          to label %2515 unwind label %2516

2515:                                             ; preds = %2514
  br label %2520

2516:                                             ; preds = %2514, %2513, %2504
  %2517 = landingpad { ptr, i32 }
          cleanup
  %2518 = extractvalue { ptr, i32 } %2517, 0
  store ptr %2518, ptr %9, align 8
  %2519 = extractvalue { ptr, i32 } %2517, 1
  store i32 %2519, ptr %10, align 4
  br label %2556

2520:                                             ; preds = %2515, %2510
  store i8 1, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !11
  br label %2521

2521:                                             ; preds = %2520, %2500
  br label %2522

2522:                                             ; preds = %2521, %2499
  call void @llvm.lifetime.end.p0(i64 1, ptr %181) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %180) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %179) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %178) #6
  br label %2523

2523:                                             ; preds = %2522
  br label %2524

2524:                                             ; preds = %2523
  br label %2525

2525:                                             ; preds = %2524
  call void @llvm.lifetime.start.p0(i64 4, ptr %183) #6
  store i32 0, ptr %183, align 4, !tbaa !15
  call void @llvm.lifetime.start.p0(i64 4, ptr %184) #6
  %2526 = invoke noundef i32 @_ZN6tflite19LinearMemoryPlanner9AddBufferEiii(ptr noundef nonnull align 8 dereferenceable(8216) %57, i32 noundef 18432, i32 noundef 4, i32 noundef 5)
          to label %2527 unwind label %2558

2527:                                             ; preds = %2525
  store i32 %2526, ptr %184, align 4, !tbaa !15
  call void @llvm.lifetime.start.p0(i64 1, ptr %185) #6
  store i8 0, ptr %185, align 1, !tbaa !11
  call void @llvm.lifetime.start.p0(i64 1, ptr %186) #6
  store i8 0, ptr %186, align 1, !tbaa !11
  %2528 = load i8, ptr %185, align 1, !tbaa !11, !range !13, !noundef !14
  %2529 = trunc i8 %2528 to i1
  br i1 %2529, label %2530, label %2567

2530:                                             ; preds = %2527
  %2531 = load i8, ptr %186, align 1, !tbaa !11, !range !13, !noundef !14
  %2532 = trunc i8 %2531 to i1
  br i1 %2532, label %2533, label %2567

2533:                                             ; preds = %2530
  call void @llvm.lifetime.start.p0(i64 4, ptr %187) #6
  %2534 = load i32, ptr %183, align 4, !tbaa !15
  %2535 = load i32, ptr %184, align 4, !tbaa !15
  %2536 = icmp sgt i32 %2534, %2535
  br i1 %2536, label %2537, label %2541

2537:                                             ; preds = %2533
  %2538 = load i32, ptr %183, align 4, !tbaa !15
  %2539 = load i32, ptr %184, align 4, !tbaa !15
  %2540 = sub nsw i32 %2538, %2539
  br label %2545

2541:                                             ; preds = %2533
  %2542 = load i32, ptr %184, align 4, !tbaa !15
  %2543 = load i32, ptr %183, align 4, !tbaa !15
  %2544 = sub nsw i32 %2542, %2543
  br label %2545

2545:                                             ; preds = %2541, %2537
  %2546 = phi i32 [ %2540, %2537 ], [ %2544, %2541 ]
  store i32 %2546, ptr %187, align 4, !tbaa !5
  %2547 = load i32, ptr %187, align 4, !tbaa !5
  %2548 = call noundef i32 @_ZNSt14numeric_limitsIiE7epsilonEv() #6
  %2549 = icmp sgt i32 %2547, %2548
  br i1 %2549, label %2550, label %2566

2550:                                             ; preds = %2545
  %2551 = load i32, ptr %183, align 4, !tbaa !15
  %2552 = uitofp i32 %2551 to double
  %2553 = load i32, ptr %184, align 4, !tbaa !15
  %2554 = uitofp i32 %2553 to double
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.72, ptr noundef @.str.2, i32 noundef 72, double noundef %2552, double noundef %2554)
          to label %2555 unwind label %2562

2555:                                             ; preds = %2550
  store i8 1, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !11
  br label %2566

2556:                                             ; preds = %2516, %2495
  call void @llvm.lifetime.end.p0(i64 1, ptr %181) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %180) #6
  br label %2557

2557:                                             ; preds = %2556, %2491
  call void @llvm.lifetime.end.p0(i64 4, ptr %179) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %178) #6
  br label %2944

2558:                                             ; preds = %2525
  %2559 = landingpad { ptr, i32 }
          cleanup
  %2560 = extractvalue { ptr, i32 } %2559, 0
  store ptr %2560, ptr %9, align 8
  %2561 = extractvalue { ptr, i32 } %2559, 1
  store i32 %2561, ptr %10, align 4
  br label %2624

2562:                                             ; preds = %2550
  %2563 = landingpad { ptr, i32 }
          cleanup
  %2564 = extractvalue { ptr, i32 } %2563, 0
  store ptr %2564, ptr %9, align 8
  %2565 = extractvalue { ptr, i32 } %2563, 1
  store i32 %2565, ptr %10, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %187) #6
  br label %2623

2566:                                             ; preds = %2555, %2545
  call void @llvm.lifetime.end.p0(i64 4, ptr %187) #6
  br label %2589

2567:                                             ; preds = %2530, %2527
  %2568 = load i32, ptr %183, align 4, !tbaa !15
  %2569 = load i32, ptr %184, align 4, !tbaa !15
  %2570 = icmp ne i32 %2568, %2569
  br i1 %2570, label %2571, label %2588

2571:                                             ; preds = %2567
  %2572 = load i32, ptr %183, align 4, !tbaa !15
  %2573 = load i32, ptr %184, align 4, !tbaa !15
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.73, ptr noundef @.str.2, i32 noundef 72, i32 noundef %2572, i32 noundef %2573)
          to label %2574 unwind label %2583

2574:                                             ; preds = %2571
  %2575 = load i8, ptr %185, align 1, !tbaa !11, !range !13, !noundef !14
  %2576 = trunc i8 %2575 to i1
  br i1 %2576, label %2580, label %2577

2577:                                             ; preds = %2574
  %2578 = load i8, ptr %186, align 1, !tbaa !11, !range !13, !noundef !14
  %2579 = trunc i8 %2578 to i1
  br i1 %2579, label %2580, label %2587

2580:                                             ; preds = %2577, %2574
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.4)
          to label %2581 unwind label %2583

2581:                                             ; preds = %2580
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.5)
          to label %2582 unwind label %2583

2582:                                             ; preds = %2581
  br label %2587

2583:                                             ; preds = %2581, %2580, %2571
  %2584 = landingpad { ptr, i32 }
          cleanup
  %2585 = extractvalue { ptr, i32 } %2584, 0
  store ptr %2585, ptr %9, align 8
  %2586 = extractvalue { ptr, i32 } %2584, 1
  store i32 %2586, ptr %10, align 4
  br label %2623

2587:                                             ; preds = %2582, %2577
  store i8 1, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !11
  br label %2588

2588:                                             ; preds = %2587, %2567
  br label %2589

2589:                                             ; preds = %2588, %2566
  call void @llvm.lifetime.end.p0(i64 1, ptr %186) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %185) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %184) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %183) #6
  br label %2590

2590:                                             ; preds = %2589
  br label %2591

2591:                                             ; preds = %2590
  br label %2592

2592:                                             ; preds = %2591
  call void @llvm.lifetime.start.p0(i64 4, ptr %188) #6
  store i32 0, ptr %188, align 4, !tbaa !15
  call void @llvm.lifetime.start.p0(i64 4, ptr %189) #6
  %2593 = invoke noundef i32 @_ZN6tflite19LinearMemoryPlanner9AddBufferEiii(ptr noundef nonnull align 8 dereferenceable(8216) %57, i32 noundef 9216, i32 noundef 3, i32 noundef 4)
          to label %2594 unwind label %2625

2594:                                             ; preds = %2592
  store i32 %2593, ptr %189, align 4, !tbaa !15
  call void @llvm.lifetime.start.p0(i64 1, ptr %190) #6
  store i8 0, ptr %190, align 1, !tbaa !11
  call void @llvm.lifetime.start.p0(i64 1, ptr %191) #6
  store i8 0, ptr %191, align 1, !tbaa !11
  %2595 = load i8, ptr %190, align 1, !tbaa !11, !range !13, !noundef !14
  %2596 = trunc i8 %2595 to i1
  br i1 %2596, label %2597, label %2634

2597:                                             ; preds = %2594
  %2598 = load i8, ptr %191, align 1, !tbaa !11, !range !13, !noundef !14
  %2599 = trunc i8 %2598 to i1
  br i1 %2599, label %2600, label %2634

2600:                                             ; preds = %2597
  call void @llvm.lifetime.start.p0(i64 4, ptr %192) #6
  %2601 = load i32, ptr %188, align 4, !tbaa !15
  %2602 = load i32, ptr %189, align 4, !tbaa !15
  %2603 = icmp sgt i32 %2601, %2602
  br i1 %2603, label %2604, label %2608

2604:                                             ; preds = %2600
  %2605 = load i32, ptr %188, align 4, !tbaa !15
  %2606 = load i32, ptr %189, align 4, !tbaa !15
  %2607 = sub nsw i32 %2605, %2606
  br label %2612

2608:                                             ; preds = %2600
  %2609 = load i32, ptr %189, align 4, !tbaa !15
  %2610 = load i32, ptr %188, align 4, !tbaa !15
  %2611 = sub nsw i32 %2609, %2610
  br label %2612

2612:                                             ; preds = %2608, %2604
  %2613 = phi i32 [ %2607, %2604 ], [ %2611, %2608 ]
  store i32 %2613, ptr %192, align 4, !tbaa !5
  %2614 = load i32, ptr %192, align 4, !tbaa !5
  %2615 = call noundef i32 @_ZNSt14numeric_limitsIiE7epsilonEv() #6
  %2616 = icmp sgt i32 %2614, %2615
  br i1 %2616, label %2617, label %2633

2617:                                             ; preds = %2612
  %2618 = load i32, ptr %188, align 4, !tbaa !15
  %2619 = uitofp i32 %2618 to double
  %2620 = load i32, ptr %189, align 4, !tbaa !15
  %2621 = uitofp i32 %2620 to double
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.74, ptr noundef @.str.2, i32 noundef 73, double noundef %2619, double noundef %2621)
          to label %2622 unwind label %2629

2622:                                             ; preds = %2617
  store i8 1, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !11
  br label %2633

2623:                                             ; preds = %2583, %2562
  call void @llvm.lifetime.end.p0(i64 1, ptr %186) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %185) #6
  br label %2624

2624:                                             ; preds = %2623, %2558
  call void @llvm.lifetime.end.p0(i64 4, ptr %184) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %183) #6
  br label %2944

2625:                                             ; preds = %2592
  %2626 = landingpad { ptr, i32 }
          cleanup
  %2627 = extractvalue { ptr, i32 } %2626, 0
  store ptr %2627, ptr %9, align 8
  %2628 = extractvalue { ptr, i32 } %2626, 1
  store i32 %2628, ptr %10, align 4
  br label %2691

2629:                                             ; preds = %2617
  %2630 = landingpad { ptr, i32 }
          cleanup
  %2631 = extractvalue { ptr, i32 } %2630, 0
  store ptr %2631, ptr %9, align 8
  %2632 = extractvalue { ptr, i32 } %2630, 1
  store i32 %2632, ptr %10, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %192) #6
  br label %2690

2633:                                             ; preds = %2622, %2612
  call void @llvm.lifetime.end.p0(i64 4, ptr %192) #6
  br label %2656

2634:                                             ; preds = %2597, %2594
  %2635 = load i32, ptr %188, align 4, !tbaa !15
  %2636 = load i32, ptr %189, align 4, !tbaa !15
  %2637 = icmp ne i32 %2635, %2636
  br i1 %2637, label %2638, label %2655

2638:                                             ; preds = %2634
  %2639 = load i32, ptr %188, align 4, !tbaa !15
  %2640 = load i32, ptr %189, align 4, !tbaa !15
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.75, ptr noundef @.str.2, i32 noundef 73, i32 noundef %2639, i32 noundef %2640)
          to label %2641 unwind label %2650

2641:                                             ; preds = %2638
  %2642 = load i8, ptr %190, align 1, !tbaa !11, !range !13, !noundef !14
  %2643 = trunc i8 %2642 to i1
  br i1 %2643, label %2647, label %2644

2644:                                             ; preds = %2641
  %2645 = load i8, ptr %191, align 1, !tbaa !11, !range !13, !noundef !14
  %2646 = trunc i8 %2645 to i1
  br i1 %2646, label %2647, label %2654

2647:                                             ; preds = %2644, %2641
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.4)
          to label %2648 unwind label %2650

2648:                                             ; preds = %2647
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.5)
          to label %2649 unwind label %2650

2649:                                             ; preds = %2648
  br label %2654

2650:                                             ; preds = %2648, %2647, %2638
  %2651 = landingpad { ptr, i32 }
          cleanup
  %2652 = extractvalue { ptr, i32 } %2651, 0
  store ptr %2652, ptr %9, align 8
  %2653 = extractvalue { ptr, i32 } %2651, 1
  store i32 %2653, ptr %10, align 4
  br label %2690

2654:                                             ; preds = %2649, %2644
  store i8 1, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !11
  br label %2655

2655:                                             ; preds = %2654, %2634
  br label %2656

2656:                                             ; preds = %2655, %2633
  call void @llvm.lifetime.end.p0(i64 1, ptr %191) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %190) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %189) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %188) #6
  br label %2657

2657:                                             ; preds = %2656
  br label %2658

2658:                                             ; preds = %2657
  br label %2659

2659:                                             ; preds = %2658
  call void @llvm.lifetime.start.p0(i64 4, ptr %193) #6
  store i32 0, ptr %193, align 4, !tbaa !15
  call void @llvm.lifetime.start.p0(i64 4, ptr %194) #6
  %2660 = invoke noundef i32 @_ZN6tflite19LinearMemoryPlanner9AddBufferEiii(ptr noundef nonnull align 8 dereferenceable(8216) %57, i32 noundef 36864, i32 noundef 2, i32 noundef 3)
          to label %2661 unwind label %2692

2661:                                             ; preds = %2659
  store i32 %2660, ptr %194, align 4, !tbaa !15
  call void @llvm.lifetime.start.p0(i64 1, ptr %195) #6
  store i8 0, ptr %195, align 1, !tbaa !11
  call void @llvm.lifetime.start.p0(i64 1, ptr %196) #6
  store i8 0, ptr %196, align 1, !tbaa !11
  %2662 = load i8, ptr %195, align 1, !tbaa !11, !range !13, !noundef !14
  %2663 = trunc i8 %2662 to i1
  br i1 %2663, label %2664, label %2701

2664:                                             ; preds = %2661
  %2665 = load i8, ptr %196, align 1, !tbaa !11, !range !13, !noundef !14
  %2666 = trunc i8 %2665 to i1
  br i1 %2666, label %2667, label %2701

2667:                                             ; preds = %2664
  call void @llvm.lifetime.start.p0(i64 4, ptr %197) #6
  %2668 = load i32, ptr %193, align 4, !tbaa !15
  %2669 = load i32, ptr %194, align 4, !tbaa !15
  %2670 = icmp sgt i32 %2668, %2669
  br i1 %2670, label %2671, label %2675

2671:                                             ; preds = %2667
  %2672 = load i32, ptr %193, align 4, !tbaa !15
  %2673 = load i32, ptr %194, align 4, !tbaa !15
  %2674 = sub nsw i32 %2672, %2673
  br label %2679

2675:                                             ; preds = %2667
  %2676 = load i32, ptr %194, align 4, !tbaa !15
  %2677 = load i32, ptr %193, align 4, !tbaa !15
  %2678 = sub nsw i32 %2676, %2677
  br label %2679

2679:                                             ; preds = %2675, %2671
  %2680 = phi i32 [ %2674, %2671 ], [ %2678, %2675 ]
  store i32 %2680, ptr %197, align 4, !tbaa !5
  %2681 = load i32, ptr %197, align 4, !tbaa !5
  %2682 = call noundef i32 @_ZNSt14numeric_limitsIiE7epsilonEv() #6
  %2683 = icmp sgt i32 %2681, %2682
  br i1 %2683, label %2684, label %2700

2684:                                             ; preds = %2679
  %2685 = load i32, ptr %193, align 4, !tbaa !15
  %2686 = uitofp i32 %2685 to double
  %2687 = load i32, ptr %194, align 4, !tbaa !15
  %2688 = uitofp i32 %2687 to double
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.76, ptr noundef @.str.2, i32 noundef 74, double noundef %2686, double noundef %2688)
          to label %2689 unwind label %2696

2689:                                             ; preds = %2684
  store i8 1, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !11
  br label %2700

2690:                                             ; preds = %2650, %2629
  call void @llvm.lifetime.end.p0(i64 1, ptr %191) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %190) #6
  br label %2691

2691:                                             ; preds = %2690, %2625
  call void @llvm.lifetime.end.p0(i64 4, ptr %189) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %188) #6
  br label %2944

2692:                                             ; preds = %2659
  %2693 = landingpad { ptr, i32 }
          cleanup
  %2694 = extractvalue { ptr, i32 } %2693, 0
  store ptr %2694, ptr %9, align 8
  %2695 = extractvalue { ptr, i32 } %2693, 1
  store i32 %2695, ptr %10, align 4
  br label %2758

2696:                                             ; preds = %2684
  %2697 = landingpad { ptr, i32 }
          cleanup
  %2698 = extractvalue { ptr, i32 } %2697, 0
  store ptr %2698, ptr %9, align 8
  %2699 = extractvalue { ptr, i32 } %2697, 1
  store i32 %2699, ptr %10, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %197) #6
  br label %2757

2700:                                             ; preds = %2689, %2679
  call void @llvm.lifetime.end.p0(i64 4, ptr %197) #6
  br label %2723

2701:                                             ; preds = %2664, %2661
  %2702 = load i32, ptr %193, align 4, !tbaa !15
  %2703 = load i32, ptr %194, align 4, !tbaa !15
  %2704 = icmp ne i32 %2702, %2703
  br i1 %2704, label %2705, label %2722

2705:                                             ; preds = %2701
  %2706 = load i32, ptr %193, align 4, !tbaa !15
  %2707 = load i32, ptr %194, align 4, !tbaa !15
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.77, ptr noundef @.str.2, i32 noundef 74, i32 noundef %2706, i32 noundef %2707)
          to label %2708 unwind label %2717

2708:                                             ; preds = %2705
  %2709 = load i8, ptr %195, align 1, !tbaa !11, !range !13, !noundef !14
  %2710 = trunc i8 %2709 to i1
  br i1 %2710, label %2714, label %2711

2711:                                             ; preds = %2708
  %2712 = load i8, ptr %196, align 1, !tbaa !11, !range !13, !noundef !14
  %2713 = trunc i8 %2712 to i1
  br i1 %2713, label %2714, label %2721

2714:                                             ; preds = %2711, %2708
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.4)
          to label %2715 unwind label %2717

2715:                                             ; preds = %2714
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.5)
          to label %2716 unwind label %2717

2716:                                             ; preds = %2715
  br label %2721

2717:                                             ; preds = %2715, %2714, %2705
  %2718 = landingpad { ptr, i32 }
          cleanup
  %2719 = extractvalue { ptr, i32 } %2718, 0
  store ptr %2719, ptr %9, align 8
  %2720 = extractvalue { ptr, i32 } %2718, 1
  store i32 %2720, ptr %10, align 4
  br label %2757

2721:                                             ; preds = %2716, %2711
  store i8 1, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !11
  br label %2722

2722:                                             ; preds = %2721, %2701
  br label %2723

2723:                                             ; preds = %2722, %2700
  call void @llvm.lifetime.end.p0(i64 1, ptr %196) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %195) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %194) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %193) #6
  br label %2724

2724:                                             ; preds = %2723
  br label %2725

2725:                                             ; preds = %2724
  br label %2726

2726:                                             ; preds = %2725
  call void @llvm.lifetime.start.p0(i64 4, ptr %198) #6
  store i32 0, ptr %198, align 4, !tbaa !15
  call void @llvm.lifetime.start.p0(i64 4, ptr %199) #6
  %2727 = invoke noundef i32 @_ZN6tflite19LinearMemoryPlanner9AddBufferEiii(ptr noundef nonnull align 8 dereferenceable(8216) %57, i32 noundef 18432, i32 noundef 1, i32 noundef 2)
          to label %2728 unwind label %2759

2728:                                             ; preds = %2726
  store i32 %2727, ptr %199, align 4, !tbaa !15
  call void @llvm.lifetime.start.p0(i64 1, ptr %200) #6
  store i8 0, ptr %200, align 1, !tbaa !11
  call void @llvm.lifetime.start.p0(i64 1, ptr %201) #6
  store i8 0, ptr %201, align 1, !tbaa !11
  %2729 = load i8, ptr %200, align 1, !tbaa !11, !range !13, !noundef !14
  %2730 = trunc i8 %2729 to i1
  br i1 %2730, label %2731, label %2768

2731:                                             ; preds = %2728
  %2732 = load i8, ptr %201, align 1, !tbaa !11, !range !13, !noundef !14
  %2733 = trunc i8 %2732 to i1
  br i1 %2733, label %2734, label %2768

2734:                                             ; preds = %2731
  call void @llvm.lifetime.start.p0(i64 4, ptr %202) #6
  %2735 = load i32, ptr %198, align 4, !tbaa !15
  %2736 = load i32, ptr %199, align 4, !tbaa !15
  %2737 = icmp sgt i32 %2735, %2736
  br i1 %2737, label %2738, label %2742

2738:                                             ; preds = %2734
  %2739 = load i32, ptr %198, align 4, !tbaa !15
  %2740 = load i32, ptr %199, align 4, !tbaa !15
  %2741 = sub nsw i32 %2739, %2740
  br label %2746

2742:                                             ; preds = %2734
  %2743 = load i32, ptr %199, align 4, !tbaa !15
  %2744 = load i32, ptr %198, align 4, !tbaa !15
  %2745 = sub nsw i32 %2743, %2744
  br label %2746

2746:                                             ; preds = %2742, %2738
  %2747 = phi i32 [ %2741, %2738 ], [ %2745, %2742 ]
  store i32 %2747, ptr %202, align 4, !tbaa !5
  %2748 = load i32, ptr %202, align 4, !tbaa !5
  %2749 = call noundef i32 @_ZNSt14numeric_limitsIiE7epsilonEv() #6
  %2750 = icmp sgt i32 %2748, %2749
  br i1 %2750, label %2751, label %2767

2751:                                             ; preds = %2746
  %2752 = load i32, ptr %198, align 4, !tbaa !15
  %2753 = uitofp i32 %2752 to double
  %2754 = load i32, ptr %199, align 4, !tbaa !15
  %2755 = uitofp i32 %2754 to double
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.78, ptr noundef @.str.2, i32 noundef 75, double noundef %2753, double noundef %2755)
          to label %2756 unwind label %2763

2756:                                             ; preds = %2751
  store i8 1, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !11
  br label %2767

2757:                                             ; preds = %2717, %2696
  call void @llvm.lifetime.end.p0(i64 1, ptr %196) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %195) #6
  br label %2758

2758:                                             ; preds = %2757, %2692
  call void @llvm.lifetime.end.p0(i64 4, ptr %194) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %193) #6
  br label %2944

2759:                                             ; preds = %2726
  %2760 = landingpad { ptr, i32 }
          cleanup
  %2761 = extractvalue { ptr, i32 } %2760, 0
  store ptr %2761, ptr %9, align 8
  %2762 = extractvalue { ptr, i32 } %2760, 1
  store i32 %2762, ptr %10, align 4
  br label %2825

2763:                                             ; preds = %2751
  %2764 = landingpad { ptr, i32 }
          cleanup
  %2765 = extractvalue { ptr, i32 } %2764, 0
  store ptr %2765, ptr %9, align 8
  %2766 = extractvalue { ptr, i32 } %2764, 1
  store i32 %2766, ptr %10, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %202) #6
  br label %2824

2767:                                             ; preds = %2756, %2746
  call void @llvm.lifetime.end.p0(i64 4, ptr %202) #6
  br label %2790

2768:                                             ; preds = %2731, %2728
  %2769 = load i32, ptr %198, align 4, !tbaa !15
  %2770 = load i32, ptr %199, align 4, !tbaa !15
  %2771 = icmp ne i32 %2769, %2770
  br i1 %2771, label %2772, label %2789

2772:                                             ; preds = %2768
  %2773 = load i32, ptr %198, align 4, !tbaa !15
  %2774 = load i32, ptr %199, align 4, !tbaa !15
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.79, ptr noundef @.str.2, i32 noundef 75, i32 noundef %2773, i32 noundef %2774)
          to label %2775 unwind label %2784

2775:                                             ; preds = %2772
  %2776 = load i8, ptr %200, align 1, !tbaa !11, !range !13, !noundef !14
  %2777 = trunc i8 %2776 to i1
  br i1 %2777, label %2781, label %2778

2778:                                             ; preds = %2775
  %2779 = load i8, ptr %201, align 1, !tbaa !11, !range !13, !noundef !14
  %2780 = trunc i8 %2779 to i1
  br i1 %2780, label %2781, label %2788

2781:                                             ; preds = %2778, %2775
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.4)
          to label %2782 unwind label %2784

2782:                                             ; preds = %2781
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.5)
          to label %2783 unwind label %2784

2783:                                             ; preds = %2782
  br label %2788

2784:                                             ; preds = %2782, %2781, %2772
  %2785 = landingpad { ptr, i32 }
          cleanup
  %2786 = extractvalue { ptr, i32 } %2785, 0
  store ptr %2786, ptr %9, align 8
  %2787 = extractvalue { ptr, i32 } %2785, 1
  store i32 %2787, ptr %10, align 4
  br label %2824

2788:                                             ; preds = %2783, %2778
  store i8 1, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !11
  br label %2789

2789:                                             ; preds = %2788, %2768
  br label %2790

2790:                                             ; preds = %2789, %2767
  call void @llvm.lifetime.end.p0(i64 1, ptr %201) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %200) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %199) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %198) #6
  br label %2791

2791:                                             ; preds = %2790
  br label %2792

2792:                                             ; preds = %2791
  br label %2793

2793:                                             ; preds = %2792
  call void @llvm.lifetime.start.p0(i64 4, ptr %203) #6
  store i32 0, ptr %203, align 4, !tbaa !15
  call void @llvm.lifetime.start.p0(i64 4, ptr %204) #6
  %2794 = invoke noundef i32 @_ZN6tflite19LinearMemoryPlanner9AddBufferEiii(ptr noundef nonnull align 8 dereferenceable(8216) %57, i32 noundef 18432, i32 noundef 0, i32 noundef 1)
          to label %2795 unwind label %2826

2795:                                             ; preds = %2793
  store i32 %2794, ptr %204, align 4, !tbaa !15
  call void @llvm.lifetime.start.p0(i64 1, ptr %205) #6
  store i8 0, ptr %205, align 1, !tbaa !11
  call void @llvm.lifetime.start.p0(i64 1, ptr %206) #6
  store i8 0, ptr %206, align 1, !tbaa !11
  %2796 = load i8, ptr %205, align 1, !tbaa !11, !range !13, !noundef !14
  %2797 = trunc i8 %2796 to i1
  br i1 %2797, label %2798, label %2835

2798:                                             ; preds = %2795
  %2799 = load i8, ptr %206, align 1, !tbaa !11, !range !13, !noundef !14
  %2800 = trunc i8 %2799 to i1
  br i1 %2800, label %2801, label %2835

2801:                                             ; preds = %2798
  call void @llvm.lifetime.start.p0(i64 4, ptr %207) #6
  %2802 = load i32, ptr %203, align 4, !tbaa !15
  %2803 = load i32, ptr %204, align 4, !tbaa !15
  %2804 = icmp sgt i32 %2802, %2803
  br i1 %2804, label %2805, label %2809

2805:                                             ; preds = %2801
  %2806 = load i32, ptr %203, align 4, !tbaa !15
  %2807 = load i32, ptr %204, align 4, !tbaa !15
  %2808 = sub nsw i32 %2806, %2807
  br label %2813

2809:                                             ; preds = %2801
  %2810 = load i32, ptr %204, align 4, !tbaa !15
  %2811 = load i32, ptr %203, align 4, !tbaa !15
  %2812 = sub nsw i32 %2810, %2811
  br label %2813

2813:                                             ; preds = %2809, %2805
  %2814 = phi i32 [ %2808, %2805 ], [ %2812, %2809 ]
  store i32 %2814, ptr %207, align 4, !tbaa !5
  %2815 = load i32, ptr %207, align 4, !tbaa !5
  %2816 = call noundef i32 @_ZNSt14numeric_limitsIiE7epsilonEv() #6
  %2817 = icmp sgt i32 %2815, %2816
  br i1 %2817, label %2818, label %2834

2818:                                             ; preds = %2813
  %2819 = load i32, ptr %203, align 4, !tbaa !15
  %2820 = uitofp i32 %2819 to double
  %2821 = load i32, ptr %204, align 4, !tbaa !15
  %2822 = uitofp i32 %2821 to double
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.80, ptr noundef @.str.2, i32 noundef 76, double noundef %2820, double noundef %2822)
          to label %2823 unwind label %2830

2823:                                             ; preds = %2818
  store i8 1, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !11
  br label %2834

2824:                                             ; preds = %2784, %2763
  call void @llvm.lifetime.end.p0(i64 1, ptr %201) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %200) #6
  br label %2825

2825:                                             ; preds = %2824, %2759
  call void @llvm.lifetime.end.p0(i64 4, ptr %199) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %198) #6
  br label %2944

2826:                                             ; preds = %2793
  %2827 = landingpad { ptr, i32 }
          cleanup
  %2828 = extractvalue { ptr, i32 } %2827, 0
  store ptr %2828, ptr %9, align 8
  %2829 = extractvalue { ptr, i32 } %2827, 1
  store i32 %2829, ptr %10, align 4
  br label %2892

2830:                                             ; preds = %2818
  %2831 = landingpad { ptr, i32 }
          cleanup
  %2832 = extractvalue { ptr, i32 } %2831, 0
  store ptr %2832, ptr %9, align 8
  %2833 = extractvalue { ptr, i32 } %2831, 1
  store i32 %2833, ptr %10, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %207) #6
  br label %2891

2834:                                             ; preds = %2823, %2813
  call void @llvm.lifetime.end.p0(i64 4, ptr %207) #6
  br label %2857

2835:                                             ; preds = %2798, %2795
  %2836 = load i32, ptr %203, align 4, !tbaa !15
  %2837 = load i32, ptr %204, align 4, !tbaa !15
  %2838 = icmp ne i32 %2836, %2837
  br i1 %2838, label %2839, label %2856

2839:                                             ; preds = %2835
  %2840 = load i32, ptr %203, align 4, !tbaa !15
  %2841 = load i32, ptr %204, align 4, !tbaa !15
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.81, ptr noundef @.str.2, i32 noundef 76, i32 noundef %2840, i32 noundef %2841)
          to label %2842 unwind label %2851

2842:                                             ; preds = %2839
  %2843 = load i8, ptr %205, align 1, !tbaa !11, !range !13, !noundef !14
  %2844 = trunc i8 %2843 to i1
  br i1 %2844, label %2848, label %2845

2845:                                             ; preds = %2842
  %2846 = load i8, ptr %206, align 1, !tbaa !11, !range !13, !noundef !14
  %2847 = trunc i8 %2846 to i1
  br i1 %2847, label %2848, label %2855

2848:                                             ; preds = %2845, %2842
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.4)
          to label %2849 unwind label %2851

2849:                                             ; preds = %2848
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.5)
          to label %2850 unwind label %2851

2850:                                             ; preds = %2849
  br label %2855

2851:                                             ; preds = %2849, %2848, %2839
  %2852 = landingpad { ptr, i32 }
          cleanup
  %2853 = extractvalue { ptr, i32 } %2852, 0
  store ptr %2853, ptr %9, align 8
  %2854 = extractvalue { ptr, i32 } %2852, 1
  store i32 %2854, ptr %10, align 4
  br label %2891

2855:                                             ; preds = %2850, %2845
  store i8 1, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !11
  br label %2856

2856:                                             ; preds = %2855, %2835
  br label %2857

2857:                                             ; preds = %2856, %2834
  call void @llvm.lifetime.end.p0(i64 1, ptr %206) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %205) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %204) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %203) #6
  br label %2858

2858:                                             ; preds = %2857
  br label %2859

2859:                                             ; preds = %2858
  br label %2860

2860:                                             ; preds = %2859
  call void @llvm.lifetime.start.p0(i64 8, ptr %208) #6
  store i64 241027, ptr %208, align 8, !tbaa !17
  call void @llvm.lifetime.start.p0(i64 8, ptr %209) #6
  %2861 = invoke noundef i64 @_ZN6tflite19LinearMemoryPlanner20GetMaximumMemorySizeEv(ptr noundef nonnull align 8 dereferenceable(8216) %57)
          to label %2862 unwind label %2893

2862:                                             ; preds = %2860
  store i64 %2861, ptr %209, align 8, !tbaa !17
  call void @llvm.lifetime.start.p0(i64 1, ptr %210) #6
  store i8 0, ptr %210, align 1, !tbaa !11
  call void @llvm.lifetime.start.p0(i64 1, ptr %211) #6
  store i8 0, ptr %211, align 1, !tbaa !11
  %2863 = load i8, ptr %210, align 1, !tbaa !11, !range !13, !noundef !14
  %2864 = trunc i8 %2863 to i1
  br i1 %2864, label %2865, label %2902

2865:                                             ; preds = %2862
  %2866 = load i8, ptr %211, align 1, !tbaa !11, !range !13, !noundef !14
  %2867 = trunc i8 %2866 to i1
  br i1 %2867, label %2868, label %2902

2868:                                             ; preds = %2865
  call void @llvm.lifetime.start.p0(i64 8, ptr %212) #6
  %2869 = load i64, ptr %208, align 8, !tbaa !17
  %2870 = load i64, ptr %209, align 8, !tbaa !17
  %2871 = icmp ugt i64 %2869, %2870
  br i1 %2871, label %2872, label %2876

2872:                                             ; preds = %2868
  %2873 = load i64, ptr %208, align 8, !tbaa !17
  %2874 = load i64, ptr %209, align 8, !tbaa !17
  %2875 = sub i64 %2873, %2874
  br label %2880

2876:                                             ; preds = %2868
  %2877 = load i64, ptr %209, align 8, !tbaa !17
  %2878 = load i64, ptr %208, align 8, !tbaa !17
  %2879 = sub i64 %2877, %2878
  br label %2880

2880:                                             ; preds = %2876, %2872
  %2881 = phi i64 [ %2875, %2872 ], [ %2879, %2876 ]
  store i64 %2881, ptr %212, align 8, !tbaa !17
  %2882 = load i64, ptr %212, align 8, !tbaa !17
  %2883 = call noundef i64 @_ZNSt14numeric_limitsImE7epsilonEv() #6
  %2884 = icmp ugt i64 %2882, %2883
  br i1 %2884, label %2885, label %2901

2885:                                             ; preds = %2880
  %2886 = load i64, ptr %208, align 8, !tbaa !17
  %2887 = uitofp i64 %2886 to double
  %2888 = load i64, ptr %209, align 8, !tbaa !17
  %2889 = uitofp i64 %2888 to double
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.82, ptr noundef @.str.2, i32 noundef 78, double noundef %2887, double noundef %2889)
          to label %2890 unwind label %2897

2890:                                             ; preds = %2885
  store i8 1, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !11
  br label %2901

2891:                                             ; preds = %2851, %2830
  call void @llvm.lifetime.end.p0(i64 1, ptr %206) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %205) #6
  br label %2892

2892:                                             ; preds = %2891, %2826
  call void @llvm.lifetime.end.p0(i64 4, ptr %204) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %203) #6
  br label %2944

2893:                                             ; preds = %2860
  %2894 = landingpad { ptr, i32 }
          cleanup
  %2895 = extractvalue { ptr, i32 } %2894, 0
  store ptr %2895, ptr %9, align 8
  %2896 = extractvalue { ptr, i32 } %2894, 1
  store i32 %2896, ptr %10, align 4
  br label %2943

2897:                                             ; preds = %2885
  %2898 = landingpad { ptr, i32 }
          cleanup
  %2899 = extractvalue { ptr, i32 } %2898, 0
  store ptr %2899, ptr %9, align 8
  %2900 = extractvalue { ptr, i32 } %2898, 1
  store i32 %2900, ptr %10, align 4
  call void @llvm.lifetime.end.p0(i64 8, ptr %212) #6
  br label %2942

2901:                                             ; preds = %2890, %2880
  call void @llvm.lifetime.end.p0(i64 8, ptr %212) #6
  br label %2926

2902:                                             ; preds = %2865, %2862
  %2903 = load i64, ptr %208, align 8, !tbaa !17
  %2904 = load i64, ptr %209, align 8, !tbaa !17
  %2905 = icmp ne i64 %2903, %2904
  br i1 %2905, label %2906, label %2925

2906:                                             ; preds = %2902
  %2907 = load i64, ptr %208, align 8, !tbaa !17
  %2908 = trunc i64 %2907 to i32
  %2909 = load i64, ptr %209, align 8, !tbaa !17
  %2910 = trunc i64 %2909 to i32
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.83, ptr noundef @.str.2, i32 noundef 78, i32 noundef %2908, i32 noundef %2910)
          to label %2911 unwind label %2920

2911:                                             ; preds = %2906
  %2912 = load i8, ptr %210, align 1, !tbaa !11, !range !13, !noundef !14
  %2913 = trunc i8 %2912 to i1
  br i1 %2913, label %2917, label %2914

2914:                                             ; preds = %2911
  %2915 = load i8, ptr %211, align 1, !tbaa !11, !range !13, !noundef !14
  %2916 = trunc i8 %2915 to i1
  br i1 %2916, label %2917, label %2924

2917:                                             ; preds = %2914, %2911
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.4)
          to label %2918 unwind label %2920

2918:                                             ; preds = %2917
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.5)
          to label %2919 unwind label %2920

2919:                                             ; preds = %2918
  br label %2924

2920:                                             ; preds = %2918, %2917, %2906
  %2921 = landingpad { ptr, i32 }
          cleanup
  %2922 = extractvalue { ptr, i32 } %2921, 0
  store ptr %2922, ptr %9, align 8
  %2923 = extractvalue { ptr, i32 } %2921, 1
  store i32 %2923, ptr %10, align 4
  br label %2942

2924:                                             ; preds = %2919, %2914
  store i8 1, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !11
  br label %2925

2925:                                             ; preds = %2924, %2902
  br label %2926

2926:                                             ; preds = %2925, %2901
  call void @llvm.lifetime.end.p0(i64 1, ptr %211) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %210) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %209) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %208) #6
  br label %2927

2927:                                             ; preds = %2926
  br label %2928

2928:                                             ; preds = %2927
  call void @_ZN6tflite19LinearMemoryPlannerD1Ev(ptr noundef nonnull align 8 dereferenceable(8216) %57) #6
  call void @llvm.lifetime.end.p0(i64 8216, ptr %57) #6
  br label %2929

2929:                                             ; preds = %2928
  store i8 1, ptr @_ZN10micro_test16is_test_completeE, align 1, !tbaa !11
  %2930 = load i8, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !11, !range !13, !noundef !14
  %2931 = trunc i8 %2930 to i1
  %2932 = zext i1 %2931 to i64
  %2933 = select i1 %2931, i32 0, i32 1
  %2934 = load i32, ptr @_ZN10micro_test12tests_passedE, align 4, !tbaa !5
  %2935 = add nsw i32 %2934, %2933
  store i32 %2935, ptr @_ZN10micro_test12tests_passedE, align 4, !tbaa !5
  %2936 = load i8, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !11, !range !13, !noundef !14
  %2937 = trunc i8 %2936 to i1
  %2938 = zext i1 %2937 to i64
  %2939 = select i1 %2937, i32 1, i32 0
  %2940 = load i32, ptr @_ZN10micro_test12tests_failedE, align 4, !tbaa !5
  %2941 = add nsw i32 %2940, %2939
  store i32 %2941, ptr @_ZN10micro_test12tests_failedE, align 4, !tbaa !5
  br label %847, !llvm.loop !22

2942:                                             ; preds = %2920, %2897
  call void @llvm.lifetime.end.p0(i64 1, ptr %211) #6
  call void @llvm.lifetime.end.p0(i64 1, ptr %210) #6
  br label %2943

2943:                                             ; preds = %2942, %2893
  call void @llvm.lifetime.end.p0(i64 8, ptr %209) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %208) #6
  br label %2944

2944:                                             ; preds = %2943, %2892, %2825, %2758, %2691, %2624, %2557, %2490, %2423, %2356, %2289, %2222, %2155, %2088, %2021, %1954, %1887, %1820, %1753, %1686, %1619, %1552, %1485, %1418, %1351, %1284, %1217, %1150, %1083, %1016, %949
  call void @_ZN6tflite19LinearMemoryPlannerD1Ev(ptr noundef nonnull align 8 dereferenceable(8216) %57) #6
  call void @llvm.lifetime.end.p0(i64 8216, ptr %57) #6
  br label %2956

2945:                                             ; preds = %847
  %2946 = load i32, ptr @_ZN10micro_test12tests_passedE, align 4, !tbaa !5
  %2947 = load i32, ptr @_ZN10micro_test12tests_failedE, align 4, !tbaa !5
  %2948 = load i32, ptr @_ZN10micro_test12tests_passedE, align 4, !tbaa !5
  %2949 = add nsw i32 %2947, %2948
  call void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.84, i32 noundef %2946, i32 noundef %2949)
  %2950 = load i32, ptr @_ZN10micro_test12tests_failedE, align 4, !tbaa !5
  %2951 = icmp eq i32 %2950, 0
  br i1 %2951, label %2952, label %2953

2952:                                             ; preds = %2945
  call void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.85)
  store i32 0, ptr %3, align 4
  br label %2954

2953:                                             ; preds = %2945
  call void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef @.str.86)
  store i32 1, ptr %3, align 4
  br label %2954

2954:                                             ; preds = %2953, %2952
  %2955 = load i32, ptr %3, align 4
  ret i32 %2955

2956:                                             ; preds = %2944, %845, %691
  %2957 = load ptr, ptr %9, align 8
  %2958 = load i32, ptr %10, align 4
  %2959 = insertvalue { ptr, i32 } poison, ptr %2957, 0
  %2960 = insertvalue { ptr, i32 } %2959, i32 %2958, 1
  resume { ptr, i32 } %2960
}

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local void @_ZN6tflite14InitializeTestEv() #1

declare void @_Z11MicroPrintfPKcz(ptr noundef, ...) #2

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

declare void @_ZN6tflite19LinearMemoryPlannerC1Ev(ptr noundef nonnull align 8 dereferenceable(8216)) unnamed_addr #2

declare noundef i32 @_ZN6tflite19LinearMemoryPlanner9AddBufferEiii(ptr noundef nonnull align 8 dereferenceable(8216), i32 noundef, i32 noundef, i32 noundef) unnamed_addr #2

declare i32 @__gxx_personality_v0(...)

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef i32 @_ZNSt14numeric_limitsIiE7epsilonEv() #4 align 2

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

declare noundef i64 @_ZN6tflite19LinearMemoryPlanner20GetMaximumMemorySizeEv(ptr noundef nonnull align 8 dereferenceable(8216)) unnamed_addr #2

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef i64 @_ZNSt14numeric_limitsImE7epsilonEv() #4 align 2

declare noundef i32 @_ZN6tflite19LinearMemoryPlanner18GetOffsetForBufferEiPi(ptr noundef nonnull align 8 dereferenceable(8216), i32 noundef, ptr noundef) unnamed_addr #2

; Function Attrs: nounwind
declare void @_ZN6tflite19LinearMemoryPlannerD1Ev(ptr noundef nonnull align 8 dereferenceable(8216)) unnamed_addr #5

attributes #0 = { mustprogress norecurse 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 #1 = { inlinehint mustprogress 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 #2 = { "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 = { nocallback nofree nosync nounwind willreturn memory(argmem: readwrite) }
attributes #4 = { mustprogress 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 #5 = { nounwind "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 #6 = { nounwind }

!llvm.module.flags = !{!0, !1, !2, !3}
!llvm.ident = !{!4}

!0 = !{i32 1, !"wchar_size", i32 4}
!1 = !{i32 8, !"PIC Level", i32 2}
!2 = !{i32 7, !"PIE Level", i32 2}
!3 = !{i32 7, !"uwtable", i32 2}
!4 = !{!"clang version 19.1.0 (git@github.com:llvm/llvm-project.git a4bf6cd7cfb1a1421ba92bca9d017b49936c55e4)"}
!5 = !{!6, !6, i64 0}
!6 = !{!"int", !7, i64 0}
!7 = !{!"omnipotent char", !8, i64 0}
!8 = !{!"Simple C++ TBAA"}
!9 = !{!10, !10, i64 0}
!10 = !{!"any pointer", !7, i64 0}
!11 = !{!12, !12, i64 0}
!12 = !{!"bool", !7, i64 0}
!13 = !{i8 0, i8 2}
!14 = !{}
!15 = !{!16, !16, i64 0}
!16 = !{!"_ZTS12TfLiteStatus", !7, i64 0}
!17 = !{!18, !18, i64 0}
!18 = !{!"long", !7, i64 0}
!19 = distinct !{!19, !20}
!20 = !{!"llvm.loop.mustprogress"}
!21 = distinct !{!21, !20}
!22 = distinct !{!22, !20}


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

%"class.tflite::LinearMemoryPlanner" = type { %"class.tflite::MicroMemoryPlanner", [1024 x i64], i32, i64 }
%"class.tflite::MicroMemoryPlanner" = type { ptr }

@_ZN10micro_test12tests_passedE = external dso_local local_unnamed_addr global i32, align 4
@_ZN10micro_test12tests_failedE = external dso_local local_unnamed_addr global i32, align 4
@_ZN10micro_test16is_test_completeE = external dso_local local_unnamed_addr global i8, align 1
@_ZN10micro_test13did_test_failE = external dso_local local_unnamed_addr global i8, align 1
@.str = external hidden unnamed_addr constant [19 x i8], align 1
@.str.2 = external hidden unnamed_addr constant [124 x i8], align 1
@.str.3 = external hidden unnamed_addr constant [68 x i8], align 1
@.str.7 = external hidden unnamed_addr constant [68 x i8], align 1
@.str.9 = external hidden unnamed_addr constant [85 x i8], align 1
@.str.11 = external hidden unnamed_addr constant [79 x i8], align 1
@.str.13 = external hidden unnamed_addr constant [39 x i8], align 1
@.str.15 = external hidden unnamed_addr constant [79 x i8], align 1
@.str.17 = external hidden unnamed_addr constant [40 x i8], align 1
@.str.18 = external hidden unnamed_addr constant [26 x i8], align 1
@.str.20 = external hidden unnamed_addr constant [82 x i8], align 1
@.str.21 = external hidden unnamed_addr constant [33 x i8], align 1
@.str.23 = external hidden unnamed_addr constant [71 x i8], align 1
@.str.25 = external hidden unnamed_addr constant [69 x i8], align 1
@.str.27 = external hidden unnamed_addr constant [71 x i8], align 1
@.str.29 = external hidden unnamed_addr constant [72 x i8], align 1
@.str.31 = external hidden unnamed_addr constant [72 x i8], align 1
@.str.33 = external hidden unnamed_addr constant [72 x i8], align 1
@.str.35 = external hidden unnamed_addr constant [72 x i8], align 1
@.str.37 = external hidden unnamed_addr constant [72 x i8], align 1
@.str.39 = external hidden unnamed_addr constant [72 x i8], align 1
@.str.41 = external hidden unnamed_addr constant [72 x i8], align 1
@.str.43 = external hidden unnamed_addr constant [72 x i8], align 1
@.str.45 = external hidden unnamed_addr constant [72 x i8], align 1
@.str.47 = external hidden unnamed_addr constant [72 x i8], align 1
@.str.49 = external hidden unnamed_addr constant [72 x i8], align 1
@.str.51 = external hidden unnamed_addr constant [72 x i8], align 1
@.str.53 = external hidden unnamed_addr constant [72 x i8], align 1
@.str.55 = external hidden unnamed_addr constant [72 x i8], align 1
@.str.57 = external hidden unnamed_addr constant [72 x i8], align 1
@.str.59 = external hidden unnamed_addr constant [72 x i8], align 1
@.str.61 = external hidden unnamed_addr constant [72 x i8], align 1
@.str.63 = external hidden unnamed_addr constant [71 x i8], align 1
@.str.65 = external hidden unnamed_addr constant [70 x i8], align 1
@.str.67 = external hidden unnamed_addr constant [70 x i8], align 1
@.str.69 = external hidden unnamed_addr constant [71 x i8], align 1
@.str.71 = external hidden unnamed_addr constant [71 x i8], align 1
@.str.73 = external hidden unnamed_addr constant [71 x i8], align 1
@.str.75 = external hidden unnamed_addr constant [70 x i8], align 1
@.str.77 = external hidden unnamed_addr constant [71 x i8], align 1
@.str.79 = external hidden unnamed_addr constant [71 x i8], align 1
@.str.81 = external hidden unnamed_addr constant [71 x i8], align 1
@.str.83 = external hidden unnamed_addr constant [89 x i8], align 1
@.str.84 = external hidden unnamed_addr constant [19 x i8], align 1
@.str.85 = external hidden unnamed_addr constant [24 x i8], align 1
@.str.86 = external hidden unnamed_addr constant [25 x i8], align 1

; Function Attrs: mustprogress norecurse uwtable
define dso_local noundef range(i32 0, 2) i32 @main(i32 noundef %0, ptr nocapture noundef readnone %1) local_unnamed_addr #0 personality ptr @__gxx_personality_v0 {
.lr.ph:
  %2 = alloca %"class.tflite::LinearMemoryPlanner", align 8
  %3 = alloca i32, align 4
  %4 = alloca %"class.tflite::LinearMemoryPlanner", align 8
  %5 = alloca i32, align 4
  %6 = alloca %"class.tflite::LinearMemoryPlanner", align 8
  store i32 0, ptr @_ZN10micro_test12tests_passedE, align 4, !tbaa !5
  store i32 0, ptr @_ZN10micro_test12tests_failedE, align 4, !tbaa !5
  tail call void @_ZN6tflite14InitializeTestEv()
  tail call void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef nonnull @.str)
  store i8 0, ptr @_ZN10micro_test16is_test_completeE, align 1, !tbaa !9
  store i8 0, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 8216, ptr nonnull %2) #5
  call void @_ZN6tflite19LinearMemoryPlannerC1Ev(ptr noundef nonnull align 8 dereferenceable(8216) %2)
  %7 = invoke noundef i32 @_ZN6tflite19LinearMemoryPlanner9AddBufferEiii(ptr noundef nonnull align 8 dereferenceable(8216) %2, i32 noundef 10, i32 noundef 0, i32 noundef 1)
          to label %10 unwind label %8

8:                                                ; preds = %.lr.ph
  %9 = landingpad { ptr, i32 }
          cleanup
  br label %65

10:                                               ; preds = %.lr.ph
  %.not986 = icmp eq i32 %7, 0
  br i1 %.not986, label %15, label %11

11:                                               ; preds = %10
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef nonnull @.str.3, ptr noundef nonnull @.str.2, i32 noundef 24, i32 noundef 0, i32 noundef %7)
          to label %14 unwind label %12

12:                                               ; preds = %11
  %13 = landingpad { ptr, i32 }
          cleanup
  br label %65

14:                                               ; preds = %11
  store i8 1, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !9
  br label %15

15:                                               ; preds = %10, %14
  %16 = invoke noundef i32 @_ZN6tflite19LinearMemoryPlanner9AddBufferEiii(ptr noundef nonnull align 8 dereferenceable(8216) %2, i32 noundef 20, i32 noundef 1, i32 noundef 2)
          to label %19 unwind label %17

17:                                               ; preds = %15
  %18 = landingpad { ptr, i32 }
          cleanup
  br label %65

19:                                               ; preds = %15
  %.not989 = icmp eq i32 %16, 0
  br i1 %.not989, label %24, label %20

20:                                               ; preds = %19
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef nonnull @.str.7, ptr noundef nonnull @.str.2, i32 noundef 25, i32 noundef 0, i32 noundef %16)
          to label %23 unwind label %21

21:                                               ; preds = %20
  %22 = landingpad { ptr, i32 }
          cleanup
  br label %65

23:                                               ; preds = %20
  store i8 1, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !9
  br label %24

24:                                               ; preds = %19, %23
  %25 = invoke noundef i64 @_ZN6tflite19LinearMemoryPlanner20GetMaximumMemorySizeEv(ptr noundef nonnull align 8 dereferenceable(8216) %2)
          to label %28 unwind label %26

26:                                               ; preds = %24
  %27 = landingpad { ptr, i32 }
          cleanup
  br label %65

28:                                               ; preds = %24
  %.not992 = icmp eq i64 %25, 30
  br i1 %.not992, label %34, label %29

29:                                               ; preds = %28
  %30 = trunc i64 %25 to i32
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef nonnull @.str.9, ptr noundef nonnull @.str.2, i32 noundef 27, i32 noundef 30, i32 noundef %30)
          to label %33 unwind label %31

31:                                               ; preds = %29
  %32 = landingpad { ptr, i32 }
          cleanup
  br label %65

33:                                               ; preds = %29
  store i8 1, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !9
  br label %34

34:                                               ; preds = %28, %33
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %3) #5
  store i32 -1, ptr %3, align 4, !tbaa !5
  %35 = invoke noundef i32 @_ZN6tflite19LinearMemoryPlanner18GetOffsetForBufferEiPi(ptr noundef nonnull align 8 dereferenceable(8216) %2, i32 noundef 0, ptr noundef nonnull %3)
          to label %38 unwind label %36

36:                                               ; preds = %34
  %37 = landingpad { ptr, i32 }
          cleanup
  br label %64

38:                                               ; preds = %34
  %.not995 = icmp eq i32 %35, 0
  br i1 %.not995, label %43, label %39

39:                                               ; preds = %38
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef nonnull @.str.11, ptr noundef nonnull @.str.2, i32 noundef 30, i32 noundef 0, i32 noundef %35)
          to label %42 unwind label %40

40:                                               ; preds = %39
  %41 = landingpad { ptr, i32 }
          cleanup
  br label %64

42:                                               ; preds = %39
  store i8 1, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !9
  br label %43

43:                                               ; preds = %38, %42
  %44 = load i32, ptr %3, align 4, !tbaa !5
  %.not998 = icmp eq i32 %44, 0
  br i1 %.not998, label %49, label %45

45:                                               ; preds = %43
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef nonnull @.str.13, ptr noundef nonnull @.str.2, i32 noundef 31, i32 noundef 0, i32 noundef %44)
          to label %48 unwind label %46

46:                                               ; preds = %45
  %47 = landingpad { ptr, i32 }
          cleanup
  br label %64

48:                                               ; preds = %45
  store i8 1, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !9
  br label %49

49:                                               ; preds = %43, %48
  %50 = invoke noundef i32 @_ZN6tflite19LinearMemoryPlanner18GetOffsetForBufferEiPi(ptr noundef nonnull align 8 dereferenceable(8216) %2, i32 noundef 1, ptr noundef nonnull %3)
          to label %53 unwind label %51

51:                                               ; preds = %49
  %52 = landingpad { ptr, i32 }
          cleanup
  br label %64

53:                                               ; preds = %49
  %.not999 = icmp eq i32 %50, 0
  br i1 %.not999, label %58, label %54

54:                                               ; preds = %53
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef nonnull @.str.15, ptr noundef nonnull @.str.2, i32 noundef 33, i32 noundef 0, i32 noundef %50)
          to label %57 unwind label %55

55:                                               ; preds = %54
  %56 = landingpad { ptr, i32 }
          cleanup
  br label %64

57:                                               ; preds = %54
  store i8 1, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !9
  br label %58

58:                                               ; preds = %53, %57
  %59 = load i32, ptr %3, align 4, !tbaa !5
  %.not1002 = icmp eq i32 %59, 10
  br i1 %.not1002, label %.lr.ph1009, label %60

60:                                               ; preds = %58
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef nonnull @.str.17, ptr noundef nonnull @.str.2, i32 noundef 34, i32 noundef 10, i32 noundef %59)
          to label %63 unwind label %61

61:                                               ; preds = %60
  %62 = landingpad { ptr, i32 }
          cleanup
  br label %64

63:                                               ; preds = %60
  store i8 1, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !9
  br label %.lr.ph1009

64:                                               ; preds = %51, %55, %36, %40, %61, %46
  %.pn1003 = phi { ptr, i32 } [ %62, %61 ], [ %47, %46 ], [ %41, %40 ], [ %37, %36 ], [ %56, %55 ], [ %52, %51 ]
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %3) #5
  br label %65

65:                                               ; preds = %26, %31, %17, %21, %8, %12, %64
  %.pn1003.pn = phi { ptr, i32 } [ %.pn1003, %64 ], [ %13, %12 ], [ %9, %8 ], [ %22, %21 ], [ %18, %17 ], [ %32, %31 ], [ %27, %26 ]
  call void @_ZN6tflite19LinearMemoryPlannerD1Ev(ptr noundef nonnull align 8 dereferenceable(8216) %2) #5
  call void @llvm.lifetime.end.p0(i64 8216, ptr nonnull %2) #5
  br label %389

.lr.ph1009:                                       ; preds = %58, %63
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %3) #5
  call void @_ZN6tflite19LinearMemoryPlannerD1Ev(ptr noundef nonnull align 8 dereferenceable(8216) %2) #5
  call void @llvm.lifetime.end.p0(i64 8216, ptr nonnull %2) #5
  store i8 1, ptr @_ZN10micro_test16is_test_completeE, align 1, !tbaa !9
  %66 = load i8, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !9, !range !11, !noundef !12
  %67 = xor i8 %66, 1
  %not.1007 = zext nneg i8 %67 to i32
  %68 = load i32, ptr @_ZN10micro_test12tests_passedE, align 4, !tbaa !5
  %69 = add nsw i32 %68, %not.1007
  store i32 %69, ptr @_ZN10micro_test12tests_passedE, align 4, !tbaa !5
  %70 = zext nneg i8 %66 to i32
  %71 = load i32, ptr @_ZN10micro_test12tests_failedE, align 4, !tbaa !5
  %72 = add nsw i32 %71, %70
  store i32 %72, ptr @_ZN10micro_test12tests_failedE, align 4, !tbaa !5
  call void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef nonnull @.str.18)
  store i8 0, ptr @_ZN10micro_test16is_test_completeE, align 1, !tbaa !9
  store i8 0, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 8216, ptr nonnull %4) #5
  call void @_ZN6tflite19LinearMemoryPlannerC1Ev(ptr noundef nonnull align 8 dereferenceable(8216) %4)
  %73 = invoke noundef i32 @_ZN6tflite19LinearMemoryPlanner9AddBufferEiii(ptr noundef nonnull align 8 dereferenceable(8216) %4, i32 noundef 10, i32 noundef 0, i32 noundef 1)
          to label %76 unwind label %74

74:                                               ; preds = %.lr.ph1009
  %75 = landingpad { ptr, i32 }
          cleanup
  br label %91

76:                                               ; preds = %.lr.ph1009
  %.not978 = icmp eq i32 %73, 0
  br i1 %.not978, label %81, label %77

77:                                               ; preds = %76
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef nonnull @.str.3, ptr noundef nonnull @.str.2, i32 noundef 39, i32 noundef 0, i32 noundef %73)
          to label %80 unwind label %78

78:                                               ; preds = %77
  %79 = landingpad { ptr, i32 }
          cleanup
  br label %91

80:                                               ; preds = %77
  store i8 1, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !9
  br label %81

81:                                               ; preds = %76, %80
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %5) #5
  store i32 -1, ptr %5, align 4, !tbaa !5
  %82 = invoke noundef i32 @_ZN6tflite19LinearMemoryPlanner18GetOffsetForBufferEiPi(ptr noundef nonnull align 8 dereferenceable(8216) %4, i32 noundef 1, ptr noundef nonnull %5)
          to label %85 unwind label %83

83:                                               ; preds = %81
  %84 = landingpad { ptr, i32 }
          cleanup
  br label %90

85:                                               ; preds = %81
  %.not981 = icmp eq i32 %82, 1
  br i1 %.not981, label %.lr.ph1012, label %86

86:                                               ; preds = %85
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef nonnull @.str.20, ptr noundef nonnull @.str.2, i32 noundef 42, i32 noundef 1, i32 noundef %82)
          to label %89 unwind label %87

87:                                               ; preds = %86
  %88 = landingpad { ptr, i32 }
          cleanup
  br label %90

89:                                               ; preds = %86
  store i8 1, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !9
  br label %.lr.ph1012

90:                                               ; preds = %87, %83
  %.pn982 = phi { ptr, i32 } [ %88, %87 ], [ %84, %83 ]
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %5) #5
  br label %91

91:                                               ; preds = %74, %78, %90
  %.pn982.pn = phi { ptr, i32 } [ %.pn982, %90 ], [ %79, %78 ], [ %75, %74 ]
  call void @_ZN6tflite19LinearMemoryPlannerD1Ev(ptr noundef nonnull align 8 dereferenceable(8216) %4) #5
  call void @llvm.lifetime.end.p0(i64 8216, ptr nonnull %4) #5
  br label %389

.lr.ph1012:                                       ; preds = %85, %89
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %5) #5
  call void @_ZN6tflite19LinearMemoryPlannerD1Ev(ptr noundef nonnull align 8 dereferenceable(8216) %4) #5
  call void @llvm.lifetime.end.p0(i64 8216, ptr nonnull %4) #5
  store i8 1, ptr @_ZN10micro_test16is_test_completeE, align 1, !tbaa !9
  %92 = load i8, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !9, !range !11, !noundef !12
  %93 = xor i8 %92, 1
  %not.985 = zext nneg i8 %93 to i32
  %94 = load i32, ptr @_ZN10micro_test12tests_passedE, align 4, !tbaa !5
  %95 = add nsw i32 %94, %not.985
  store i32 %95, ptr @_ZN10micro_test12tests_passedE, align 4, !tbaa !5
  %96 = zext nneg i8 %92 to i32
  %97 = load i32, ptr @_ZN10micro_test12tests_failedE, align 4, !tbaa !5
  %98 = add nsw i32 %97, %96
  store i32 %98, ptr @_ZN10micro_test12tests_failedE, align 4, !tbaa !5
  call void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef nonnull @.str.21)
  store i8 0, ptr @_ZN10micro_test16is_test_completeE, align 1, !tbaa !9
  store i8 0, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 8216, ptr nonnull %6) #5
  call void @_ZN6tflite19LinearMemoryPlannerC1Ev(ptr noundef nonnull align 8 dereferenceable(8216) %6)
  %99 = invoke noundef i32 @_ZN6tflite19LinearMemoryPlanner9AddBufferEiii(ptr noundef nonnull align 8 dereferenceable(8216) %6, i32 noundef 9216, i32 noundef 0, i32 noundef 29)
          to label %102 unwind label %100

100:                                              ; preds = %.lr.ph1012
  %101 = landingpad { ptr, i32 }
          cleanup
  br label %378

102:                                              ; preds = %.lr.ph1012
  %.not = icmp eq i32 %99, 0
  br i1 %.not, label %107, label %103

103:                                              ; preds = %102
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef nonnull @.str.23, ptr noundef nonnull @.str.2, i32 noundef 47, i32 noundef 0, i32 noundef %99)
          to label %106 unwind label %104

104:                                              ; preds = %103
  %105 = landingpad { ptr, i32 }
          cleanup
  br label %378

106:                                              ; preds = %103
  store i8 1, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !9
  br label %107

107:                                              ; preds = %102, %106
  %108 = invoke noundef i32 @_ZN6tflite19LinearMemoryPlanner9AddBufferEiii(ptr noundef nonnull align 8 dereferenceable(8216) %6, i32 noundef 3, i32 noundef 28, i32 noundef 29)
          to label %111 unwind label %109

109:                                              ; preds = %107
  %110 = landingpad { ptr, i32 }
          cleanup
  br label %378

111:                                              ; preds = %107
  %.not887 = icmp eq i32 %108, 0
  br i1 %.not887, label %116, label %112

112:                                              ; preds = %111
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef nonnull @.str.25, ptr noundef nonnull @.str.2, i32 noundef 48, i32 noundef 0, i32 noundef %108)
          to label %115 unwind label %113

113:                                              ; preds = %112
  %114 = landingpad { ptr, i32 }
          cleanup
  br label %378

115:                                              ; preds = %112
  store i8 1, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !9
  br label %116

116:                                              ; preds = %111, %115
  %117 = invoke noundef i32 @_ZN6tflite19LinearMemoryPlanner9AddBufferEiii(ptr noundef nonnull align 8 dereferenceable(8216) %6, i32 noundef 256, i32 noundef 27, i32 noundef 28)
          to label %120 unwind label %118

118:                                              ; preds = %116
  %119 = landingpad { ptr, i32 }
          cleanup
  br label %378

120:                                              ; preds = %116
  %.not890 = icmp eq i32 %117, 0
  br i1 %.not890, label %125, label %121

121:                                              ; preds = %120
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef nonnull @.str.27, ptr noundef nonnull @.str.2, i32 noundef 49, i32 noundef 0, i32 noundef %117)
          to label %124 unwind label %122

122:                                              ; preds = %121
  %123 = landingpad { ptr, i32 }
          cleanup
  br label %378

124:                                              ; preds = %121
  store i8 1, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !9
  br label %125

125:                                              ; preds = %120, %124
  %126 = invoke noundef i32 @_ZN6tflite19LinearMemoryPlanner9AddBufferEiii(ptr noundef nonnull align 8 dereferenceable(8216) %6, i32 noundef 2304, i32 noundef 26, i32 noundef 27)
          to label %129 unwind label %127

127:                                              ; preds = %125
  %128 = landingpad { ptr, i32 }
          cleanup
  br label %378

129:                                              ; preds = %125
  %.not893 = icmp eq i32 %126, 0
  br i1 %.not893, label %134, label %130

130:                                              ; preds = %129
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef nonnull @.str.29, ptr noundef nonnull @.str.2, i32 noundef 50, i32 noundef 0, i32 noundef %126)
          to label %133 unwind label %131

131:                                              ; preds = %130
  %132 = landingpad { ptr, i32 }
          cleanup
  br label %378

133:                                              ; preds = %130
  store i8 1, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !9
  br label %134

134:                                              ; preds = %129, %133
  %135 = invoke noundef i32 @_ZN6tflite19LinearMemoryPlanner9AddBufferEiii(ptr noundef nonnull align 8 dereferenceable(8216) %6, i32 noundef 2304, i32 noundef 25, i32 noundef 26)
          to label %138 unwind label %136

136:                                              ; preds = %134
  %137 = landingpad { ptr, i32 }
          cleanup
  br label %378

138:                                              ; preds = %134
  %.not896 = icmp eq i32 %135, 0
  br i1 %.not896, label %143, label %139

139:                                              ; preds = %138
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef nonnull @.str.31, ptr noundef nonnull @.str.2, i32 noundef 51, i32 noundef 0, i32 noundef %135)
          to label %142 unwind label %140

140:                                              ; preds = %139
  %141 = landingpad { ptr, i32 }
          cleanup
  br label %378

142:                                              ; preds = %139
  store i8 1, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !9
  br label %143

143:                                              ; preds = %138, %142
  %144 = invoke noundef i32 @_ZN6tflite19LinearMemoryPlanner9AddBufferEiii(ptr noundef nonnull align 8 dereferenceable(8216) %6, i32 noundef 2304, i32 noundef 24, i32 noundef 25)
          to label %147 unwind label %145

145:                                              ; preds = %143
  %146 = landingpad { ptr, i32 }
          cleanup
  br label %378

147:                                              ; preds = %143
  %.not899 = icmp eq i32 %144, 0
  br i1 %.not899, label %152, label %148

148:                                              ; preds = %147
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef nonnull @.str.33, ptr noundef nonnull @.str.2, i32 noundef 52, i32 noundef 0, i32 noundef %144)
          to label %151 unwind label %149

149:                                              ; preds = %148
  %150 = landingpad { ptr, i32 }
          cleanup
  br label %378

151:                                              ; preds = %148
  store i8 1, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !9
  br label %152

152:                                              ; preds = %147, %151
  %153 = invoke noundef i32 @_ZN6tflite19LinearMemoryPlanner9AddBufferEiii(ptr noundef nonnull align 8 dereferenceable(8216) %6, i32 noundef 1152, i32 noundef 23, i32 noundef 24)
          to label %156 unwind label %154

154:                                              ; preds = %152
  %155 = landingpad { ptr, i32 }
          cleanup
  br label %378

156:                                              ; preds = %152
  %.not902 = icmp eq i32 %153, 0
  br i1 %.not902, label %161, label %157

157:                                              ; preds = %156
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef nonnull @.str.35, ptr noundef nonnull @.str.2, i32 noundef 53, i32 noundef 0, i32 noundef %153)
          to label %160 unwind label %158

158:                                              ; preds = %157
  %159 = landingpad { ptr, i32 }
          cleanup
  br label %378

160:                                              ; preds = %157
  store i8 1, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !9
  br label %161

161:                                              ; preds = %156, %160
  %162 = invoke noundef i32 @_ZN6tflite19LinearMemoryPlanner9AddBufferEiii(ptr noundef nonnull align 8 dereferenceable(8216) %6, i32 noundef 4608, i32 noundef 22, i32 noundef 23)
          to label %165 unwind label %163

163:                                              ; preds = %161
  %164 = landingpad { ptr, i32 }
          cleanup
  br label %378

165:                                              ; preds = %161
  %.not905 = icmp eq i32 %162, 0
  br i1 %.not905, label %170, label %166

166:                                              ; preds = %165
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef nonnull @.str.37, ptr noundef nonnull @.str.2, i32 noundef 54, i32 noundef 0, i32 noundef %162)
          to label %169 unwind label %167

167:                                              ; preds = %166
  %168 = landingpad { ptr, i32 }
          cleanup
  br label %378

169:                                              ; preds = %166
  store i8 1, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !9
  br label %170

170:                                              ; preds = %165, %169
  %171 = invoke noundef i32 @_ZN6tflite19LinearMemoryPlanner9AddBufferEiii(ptr noundef nonnull align 8 dereferenceable(8216) %6, i32 noundef 4608, i32 noundef 21, i32 noundef 22)
          to label %174 unwind label %172

172:                                              ; preds = %170
  %173 = landingpad { ptr, i32 }
          cleanup
  br label %378

174:                                              ; preds = %170
  %.not908 = icmp eq i32 %171, 0
  br i1 %.not908, label %179, label %175

175:                                              ; preds = %174
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef nonnull @.str.39, ptr noundef nonnull @.str.2, i32 noundef 55, i32 noundef 0, i32 noundef %171)
          to label %178 unwind label %176

176:                                              ; preds = %175
  %177 = landingpad { ptr, i32 }
          cleanup
  br label %378

178:                                              ; preds = %175
  store i8 1, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !9
  br label %179

179:                                              ; preds = %174, %178
  %180 = invoke noundef i32 @_ZN6tflite19LinearMemoryPlanner9AddBufferEiii(ptr noundef nonnull align 8 dereferenceable(8216) %6, i32 noundef 4608, i32 noundef 20, i32 noundef 21)
          to label %183 unwind label %181

181:                                              ; preds = %179
  %182 = landingpad { ptr, i32 }
          cleanup
  br label %378

183:                                              ; preds = %179
  %.not911 = icmp eq i32 %180, 0
  br i1 %.not911, label %188, label %184

184:                                              ; preds = %183
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef nonnull @.str.41, ptr noundef nonnull @.str.2, i32 noundef 56, i32 noundef 0, i32 noundef %180)
          to label %187 unwind label %185

185:                                              ; preds = %184
  %186 = landingpad { ptr, i32 }
          cleanup
  br label %378

187:                                              ; preds = %184
  store i8 1, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !9
  br label %188

188:                                              ; preds = %183, %187
  %189 = invoke noundef i32 @_ZN6tflite19LinearMemoryPlanner9AddBufferEiii(ptr noundef nonnull align 8 dereferenceable(8216) %6, i32 noundef 4608, i32 noundef 19, i32 noundef 20)
          to label %192 unwind label %190

190:                                              ; preds = %188
  %191 = landingpad { ptr, i32 }
          cleanup
  br label %378

192:                                              ; preds = %188
  %.not914 = icmp eq i32 %189, 0
  br i1 %.not914, label %197, label %193

193:                                              ; preds = %192
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef nonnull @.str.43, ptr noundef nonnull @.str.2, i32 noundef 57, i32 noundef 0, i32 noundef %189)
          to label %196 unwind label %194

194:                                              ; preds = %193
  %195 = landingpad { ptr, i32 }
          cleanup
  br label %378

196:                                              ; preds = %193
  store i8 1, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !9
  br label %197

197:                                              ; preds = %192, %196
  %198 = invoke noundef i32 @_ZN6tflite19LinearMemoryPlanner9AddBufferEiii(ptr noundef nonnull align 8 dereferenceable(8216) %6, i32 noundef 4608, i32 noundef 18, i32 noundef 19)
          to label %201 unwind label %199

199:                                              ; preds = %197
  %200 = landingpad { ptr, i32 }
          cleanup
  br label %378

201:                                              ; preds = %197
  %.not917 = icmp eq i32 %198, 0
  br i1 %.not917, label %206, label %202

202:                                              ; preds = %201
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef nonnull @.str.45, ptr noundef nonnull @.str.2, i32 noundef 58, i32 noundef 0, i32 noundef %198)
          to label %205 unwind label %203

203:                                              ; preds = %202
  %204 = landingpad { ptr, i32 }
          cleanup
  br label %378

205:                                              ; preds = %202
  store i8 1, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !9
  br label %206

206:                                              ; preds = %201, %205
  %207 = invoke noundef i32 @_ZN6tflite19LinearMemoryPlanner9AddBufferEiii(ptr noundef nonnull align 8 dereferenceable(8216) %6, i32 noundef 4608, i32 noundef 17, i32 noundef 18)
          to label %210 unwind label %208

208:                                              ; preds = %206
  %209 = landingpad { ptr, i32 }
          cleanup
  br label %378

210:                                              ; preds = %206
  %.not920 = icmp eq i32 %207, 0
  br i1 %.not920, label %215, label %211

211:                                              ; preds = %210
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef nonnull @.str.47, ptr noundef nonnull @.str.2, i32 noundef 59, i32 noundef 0, i32 noundef %207)
          to label %214 unwind label %212

212:                                              ; preds = %211
  %213 = landingpad { ptr, i32 }
          cleanup
  br label %378

214:                                              ; preds = %211
  store i8 1, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !9
  br label %215

215:                                              ; preds = %210, %214
  %216 = invoke noundef i32 @_ZN6tflite19LinearMemoryPlanner9AddBufferEiii(ptr noundef nonnull align 8 dereferenceable(8216) %6, i32 noundef 4608, i32 noundef 16, i32 noundef 17)
          to label %219 unwind label %217

217:                                              ; preds = %215
  %218 = landingpad { ptr, i32 }
          cleanup
  br label %378

219:                                              ; preds = %215
  %.not923 = icmp eq i32 %216, 0
  br i1 %.not923, label %224, label %220

220:                                              ; preds = %219
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef nonnull @.str.49, ptr noundef nonnull @.str.2, i32 noundef 60, i32 noundef 0, i32 noundef %216)
          to label %223 unwind label %221

221:                                              ; preds = %220
  %222 = landingpad { ptr, i32 }
          cleanup
  br label %378

223:                                              ; preds = %220
  store i8 1, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !9
  br label %224

224:                                              ; preds = %219, %223
  %225 = invoke noundef i32 @_ZN6tflite19LinearMemoryPlanner9AddBufferEiii(ptr noundef nonnull align 8 dereferenceable(8216) %6, i32 noundef 4608, i32 noundef 15, i32 noundef 16)
          to label %228 unwind label %226

226:                                              ; preds = %224
  %227 = landingpad { ptr, i32 }
          cleanup
  br label %378

228:                                              ; preds = %224
  %.not926 = icmp eq i32 %225, 0
  br i1 %.not926, label %233, label %229

229:                                              ; preds = %228
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef nonnull @.str.51, ptr noundef nonnull @.str.2, i32 noundef 61, i32 noundef 0, i32 noundef %225)
          to label %232 unwind label %230

230:                                              ; preds = %229
  %231 = landingpad { ptr, i32 }
          cleanup
  br label %378

232:                                              ; preds = %229
  store i8 1, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !9
  br label %233

233:                                              ; preds = %228, %232
  %234 = invoke noundef i32 @_ZN6tflite19LinearMemoryPlanner9AddBufferEiii(ptr noundef nonnull align 8 dereferenceable(8216) %6, i32 noundef 4608, i32 noundef 14, i32 noundef 15)
          to label %237 unwind label %235

235:                                              ; preds = %233
  %236 = landingpad { ptr, i32 }
          cleanup
  br label %378

237:                                              ; preds = %233
  %.not929 = icmp eq i32 %234, 0
  br i1 %.not929, label %242, label %238

238:                                              ; preds = %237
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef nonnull @.str.53, ptr noundef nonnull @.str.2, i32 noundef 62, i32 noundef 0, i32 noundef %234)
          to label %241 unwind label %239

239:                                              ; preds = %238
  %240 = landingpad { ptr, i32 }
          cleanup
  br label %378

241:                                              ; preds = %238
  store i8 1, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !9
  br label %242

242:                                              ; preds = %237, %241
  %243 = invoke noundef i32 @_ZN6tflite19LinearMemoryPlanner9AddBufferEiii(ptr noundef nonnull align 8 dereferenceable(8216) %6, i32 noundef 4608, i32 noundef 13, i32 noundef 14)
          to label %246 unwind label %244

244:                                              ; preds = %242
  %245 = landingpad { ptr, i32 }
          cleanup
  br label %378

246:                                              ; preds = %242
  %.not932 = icmp eq i32 %243, 0
  br i1 %.not932, label %251, label %247

247:                                              ; preds = %246
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef nonnull @.str.55, ptr noundef nonnull @.str.2, i32 noundef 63, i32 noundef 0, i32 noundef %243)
          to label %250 unwind label %248

248:                                              ; preds = %247
  %249 = landingpad { ptr, i32 }
          cleanup
  br label %378

250:                                              ; preds = %247
  store i8 1, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !9
  br label %251

251:                                              ; preds = %246, %250
  %252 = invoke noundef i32 @_ZN6tflite19LinearMemoryPlanner9AddBufferEiii(ptr noundef nonnull align 8 dereferenceable(8216) %6, i32 noundef 4608, i32 noundef 12, i32 noundef 13)
          to label %255 unwind label %253

253:                                              ; preds = %251
  %254 = landingpad { ptr, i32 }
          cleanup
  br label %378

255:                                              ; preds = %251
  %.not935 = icmp eq i32 %252, 0
  br i1 %.not935, label %260, label %256

256:                                              ; preds = %255
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef nonnull @.str.57, ptr noundef nonnull @.str.2, i32 noundef 64, i32 noundef 0, i32 noundef %252)
          to label %259 unwind label %257

257:                                              ; preds = %256
  %258 = landingpad { ptr, i32 }
          cleanup
  br label %378

259:                                              ; preds = %256
  store i8 1, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !9
  br label %260

260:                                              ; preds = %255, %259
  %261 = invoke noundef i32 @_ZN6tflite19LinearMemoryPlanner9AddBufferEiii(ptr noundef nonnull align 8 dereferenceable(8216) %6, i32 noundef 2304, i32 noundef 11, i32 noundef 12)
          to label %264 unwind label %262

262:                                              ; preds = %260
  %263 = landingpad { ptr, i32 }
          cleanup
  br label %378

264:                                              ; preds = %260
  %.not938 = icmp eq i32 %261, 0
  br i1 %.not938, label %269, label %265

265:                                              ; preds = %264
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef nonnull @.str.59, ptr noundef nonnull @.str.2, i32 noundef 65, i32 noundef 0, i32 noundef %261)
          to label %268 unwind label %266

266:                                              ; preds = %265
  %267 = landingpad { ptr, i32 }
          cleanup
  br label %378

268:                                              ; preds = %265
  store i8 1, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !9
  br label %269

269:                                              ; preds = %264, %268
  %270 = invoke noundef i32 @_ZN6tflite19LinearMemoryPlanner9AddBufferEiii(ptr noundef nonnull align 8 dereferenceable(8216) %6, i32 noundef 9216, i32 noundef 10, i32 noundef 11)
          to label %273 unwind label %271

271:                                              ; preds = %269
  %272 = landingpad { ptr, i32 }
          cleanup
  br label %378

273:                                              ; preds = %269
  %.not941 = icmp eq i32 %270, 0
  br i1 %.not941, label %278, label %274

274:                                              ; preds = %273
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef nonnull @.str.61, ptr noundef nonnull @.str.2, i32 noundef 66, i32 noundef 0, i32 noundef %270)
          to label %277 unwind label %275

275:                                              ; preds = %274
  %276 = landingpad { ptr, i32 }
          cleanup
  br label %378

277:                                              ; preds = %274
  store i8 1, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !9
  br label %278

278:                                              ; preds = %273, %277
  %279 = invoke noundef i32 @_ZN6tflite19LinearMemoryPlanner9AddBufferEiii(ptr noundef nonnull align 8 dereferenceable(8216) %6, i32 noundef 9216, i32 noundef 9, i32 noundef 10)
          to label %282 unwind label %280

280:                                              ; preds = %278
  %281 = landingpad { ptr, i32 }
          cleanup
  br label %378

282:                                              ; preds = %278
  %.not944 = icmp eq i32 %279, 0
  br i1 %.not944, label %287, label %283

283:                                              ; preds = %282
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef nonnull @.str.63, ptr noundef nonnull @.str.2, i32 noundef 67, i32 noundef 0, i32 noundef %279)
          to label %286 unwind label %284

284:                                              ; preds = %283
  %285 = landingpad { ptr, i32 }
          cleanup
  br label %378

286:                                              ; preds = %283
  store i8 1, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !9
  br label %287

287:                                              ; preds = %282, %286
  %288 = invoke noundef i32 @_ZN6tflite19LinearMemoryPlanner9AddBufferEiii(ptr noundef nonnull align 8 dereferenceable(8216) %6, i32 noundef 9216, i32 noundef 8, i32 noundef 9)
          to label %291 unwind label %289

289:                                              ; preds = %287
  %290 = landingpad { ptr, i32 }
          cleanup
  br label %378

291:                                              ; preds = %287
  %.not947 = icmp eq i32 %288, 0
  br i1 %.not947, label %296, label %292

292:                                              ; preds = %291
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef nonnull @.str.65, ptr noundef nonnull @.str.2, i32 noundef 68, i32 noundef 0, i32 noundef %288)
          to label %295 unwind label %293

293:                                              ; preds = %292
  %294 = landingpad { ptr, i32 }
          cleanup
  br label %378

295:                                              ; preds = %292
  store i8 1, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !9
  br label %296

296:                                              ; preds = %291, %295
  %297 = invoke noundef i32 @_ZN6tflite19LinearMemoryPlanner9AddBufferEiii(ptr noundef nonnull align 8 dereferenceable(8216) %6, i32 noundef 4608, i32 noundef 7, i32 noundef 8)
          to label %300 unwind label %298

298:                                              ; preds = %296
  %299 = landingpad { ptr, i32 }
          cleanup
  br label %378

300:                                              ; preds = %296
  %.not950 = icmp eq i32 %297, 0
  br i1 %.not950, label %305, label %301

301:                                              ; preds = %300
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef nonnull @.str.67, ptr noundef nonnull @.str.2, i32 noundef 69, i32 noundef 0, i32 noundef %297)
          to label %304 unwind label %302

302:                                              ; preds = %301
  %303 = landingpad { ptr, i32 }
          cleanup
  br label %378

304:                                              ; preds = %301
  store i8 1, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !9
  br label %305

305:                                              ; preds = %300, %304
  %306 = invoke noundef i32 @_ZN6tflite19LinearMemoryPlanner9AddBufferEiii(ptr noundef nonnull align 8 dereferenceable(8216) %6, i32 noundef 18432, i32 noundef 6, i32 noundef 7)
          to label %309 unwind label %307

307:                                              ; preds = %305
  %308 = landingpad { ptr, i32 }
          cleanup
  br label %378

309:                                              ; preds = %305
  %.not953 = icmp eq i32 %306, 0
  br i1 %.not953, label %314, label %310

310:                                              ; preds = %309
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef nonnull @.str.69, ptr noundef nonnull @.str.2, i32 noundef 70, i32 noundef 0, i32 noundef %306)
          to label %313 unwind label %311

311:                                              ; preds = %310
  %312 = landingpad { ptr, i32 }
          cleanup
  br label %378

313:                                              ; preds = %310
  store i8 1, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !9
  br label %314

314:                                              ; preds = %309, %313
  %315 = invoke noundef i32 @_ZN6tflite19LinearMemoryPlanner9AddBufferEiii(ptr noundef nonnull align 8 dereferenceable(8216) %6, i32 noundef 18432, i32 noundef 5, i32 noundef 6)
          to label %318 unwind label %316

316:                                              ; preds = %314
  %317 = landingpad { ptr, i32 }
          cleanup
  br label %378

318:                                              ; preds = %314
  %.not956 = icmp eq i32 %315, 0
  br i1 %.not956, label %323, label %319

319:                                              ; preds = %318
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef nonnull @.str.71, ptr noundef nonnull @.str.2, i32 noundef 71, i32 noundef 0, i32 noundef %315)
          to label %322 unwind label %320

320:                                              ; preds = %319
  %321 = landingpad { ptr, i32 }
          cleanup
  br label %378

322:                                              ; preds = %319
  store i8 1, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !9
  br label %323

323:                                              ; preds = %318, %322
  %324 = invoke noundef i32 @_ZN6tflite19LinearMemoryPlanner9AddBufferEiii(ptr noundef nonnull align 8 dereferenceable(8216) %6, i32 noundef 18432, i32 noundef 4, i32 noundef 5)
          to label %327 unwind label %325

325:                                              ; preds = %323
  %326 = landingpad { ptr, i32 }
          cleanup
  br label %378

327:                                              ; preds = %323
  %.not959 = icmp eq i32 %324, 0
  br i1 %.not959, label %332, label %328

328:                                              ; preds = %327
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef nonnull @.str.73, ptr noundef nonnull @.str.2, i32 noundef 72, i32 noundef 0, i32 noundef %324)
          to label %331 unwind label %329

329:                                              ; preds = %328
  %330 = landingpad { ptr, i32 }
          cleanup
  br label %378

331:                                              ; preds = %328
  store i8 1, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !9
  br label %332

332:                                              ; preds = %327, %331
  %333 = invoke noundef i32 @_ZN6tflite19LinearMemoryPlanner9AddBufferEiii(ptr noundef nonnull align 8 dereferenceable(8216) %6, i32 noundef 9216, i32 noundef 3, i32 noundef 4)
          to label %336 unwind label %334

334:                                              ; preds = %332
  %335 = landingpad { ptr, i32 }
          cleanup
  br label %378

336:                                              ; preds = %332
  %.not962 = icmp eq i32 %333, 0
  br i1 %.not962, label %341, label %337

337:                                              ; preds = %336
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef nonnull @.str.75, ptr noundef nonnull @.str.2, i32 noundef 73, i32 noundef 0, i32 noundef %333)
          to label %340 unwind label %338

338:                                              ; preds = %337
  %339 = landingpad { ptr, i32 }
          cleanup
  br label %378

340:                                              ; preds = %337
  store i8 1, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !9
  br label %341

341:                                              ; preds = %336, %340
  %342 = invoke noundef i32 @_ZN6tflite19LinearMemoryPlanner9AddBufferEiii(ptr noundef nonnull align 8 dereferenceable(8216) %6, i32 noundef 36864, i32 noundef 2, i32 noundef 3)
          to label %345 unwind label %343

343:                                              ; preds = %341
  %344 = landingpad { ptr, i32 }
          cleanup
  br label %378

345:                                              ; preds = %341
  %.not965 = icmp eq i32 %342, 0
  br i1 %.not965, label %350, label %346

346:                                              ; preds = %345
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef nonnull @.str.77, ptr noundef nonnull @.str.2, i32 noundef 74, i32 noundef 0, i32 noundef %342)
          to label %349 unwind label %347

347:                                              ; preds = %346
  %348 = landingpad { ptr, i32 }
          cleanup
  br label %378

349:                                              ; preds = %346
  store i8 1, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !9
  br label %350

350:                                              ; preds = %345, %349
  %351 = invoke noundef i32 @_ZN6tflite19LinearMemoryPlanner9AddBufferEiii(ptr noundef nonnull align 8 dereferenceable(8216) %6, i32 noundef 18432, i32 noundef 1, i32 noundef 2)
          to label %354 unwind label %352

352:                                              ; preds = %350
  %353 = landingpad { ptr, i32 }
          cleanup
  br label %378

354:                                              ; preds = %350
  %.not968 = icmp eq i32 %351, 0
  br i1 %.not968, label %359, label %355

355:                                              ; preds = %354
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef nonnull @.str.79, ptr noundef nonnull @.str.2, i32 noundef 75, i32 noundef 0, i32 noundef %351)
          to label %358 unwind label %356

356:                                              ; preds = %355
  %357 = landingpad { ptr, i32 }
          cleanup
  br label %378

358:                                              ; preds = %355
  store i8 1, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !9
  br label %359

359:                                              ; preds = %354, %358
  %360 = invoke noundef i32 @_ZN6tflite19LinearMemoryPlanner9AddBufferEiii(ptr noundef nonnull align 8 dereferenceable(8216) %6, i32 noundef 18432, i32 noundef 0, i32 noundef 1)
          to label %363 unwind label %361

361:                                              ; preds = %359
  %362 = landingpad { ptr, i32 }
          cleanup
  br label %378

363:                                              ; preds = %359
  %.not971 = icmp eq i32 %360, 0
  br i1 %.not971, label %368, label %364

364:                                              ; preds = %363
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef nonnull @.str.81, ptr noundef nonnull @.str.2, i32 noundef 76, i32 noundef 0, i32 noundef %360)
          to label %367 unwind label %365

365:                                              ; preds = %364
  %366 = landingpad { ptr, i32 }
          cleanup
  br label %378

367:                                              ; preds = %364
  store i8 1, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !9
  br label %368

368:                                              ; preds = %363, %367
  %369 = invoke noundef i64 @_ZN6tflite19LinearMemoryPlanner20GetMaximumMemorySizeEv(ptr noundef nonnull align 8 dereferenceable(8216) %6)
          to label %372 unwind label %370

370:                                              ; preds = %368
  %371 = landingpad { ptr, i32 }
          cleanup
  br label %378

372:                                              ; preds = %368
  %.not974 = icmp eq i64 %369, 241027
  br i1 %.not974, label %._crit_edge1013, label %373

373:                                              ; preds = %372
  %374 = trunc i64 %369 to i32
  invoke void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef nonnull @.str.83, ptr noundef nonnull @.str.2, i32 noundef 78, i32 noundef 241027, i32 noundef %374)
          to label %377 unwind label %375

375:                                              ; preds = %373
  %376 = landingpad { ptr, i32 }
          cleanup
  br label %378

377:                                              ; preds = %373
  store i8 1, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !9
  br label %._crit_edge1013

378:                                              ; preds = %370, %375, %361, %365, %352, %356, %343, %347, %334, %338, %325, %329, %316, %320, %307, %311, %298, %302, %289, %293, %280, %284, %271, %275, %262, %266, %253, %257, %244, %248, %235, %239, %226, %230, %217, %221, %208, %212, %199, %203, %190, %194, %181, %185, %172, %176, %163, %167, %154, %158, %145, %149, %136, %140, %127, %131, %118, %122, %109, %113, %100, %104
  %.pn975.pn = phi { ptr, i32 } [ %105, %104 ], [ %101, %100 ], [ %114, %113 ], [ %110, %109 ], [ %123, %122 ], [ %119, %118 ], [ %132, %131 ], [ %128, %127 ], [ %141, %140 ], [ %137, %136 ], [ %150, %149 ], [ %146, %145 ], [ %159, %158 ], [ %155, %154 ], [ %168, %167 ], [ %164, %163 ], [ %177, %176 ], [ %173, %172 ], [ %186, %185 ], [ %182, %181 ], [ %195, %194 ], [ %191, %190 ], [ %204, %203 ], [ %200, %199 ], [ %213, %212 ], [ %209, %208 ], [ %222, %221 ], [ %218, %217 ], [ %231, %230 ], [ %227, %226 ], [ %240, %239 ], [ %236, %235 ], [ %249, %248 ], [ %245, %244 ], [ %258, %257 ], [ %254, %253 ], [ %267, %266 ], [ %263, %262 ], [ %276, %275 ], [ %272, %271 ], [ %285, %284 ], [ %281, %280 ], [ %294, %293 ], [ %290, %289 ], [ %303, %302 ], [ %299, %298 ], [ %312, %311 ], [ %308, %307 ], [ %321, %320 ], [ %317, %316 ], [ %330, %329 ], [ %326, %325 ], [ %339, %338 ], [ %335, %334 ], [ %348, %347 ], [ %344, %343 ], [ %357, %356 ], [ %353, %352 ], [ %366, %365 ], [ %362, %361 ], [ %376, %375 ], [ %371, %370 ]
  call void @_ZN6tflite19LinearMemoryPlannerD1Ev(ptr noundef nonnull align 8 dereferenceable(8216) %6) #5
  call void @llvm.lifetime.end.p0(i64 8216, ptr nonnull %6) #5
  br label %389

._crit_edge1013:                                  ; preds = %372, %377
  call void @_ZN6tflite19LinearMemoryPlannerD1Ev(ptr noundef nonnull align 8 dereferenceable(8216) %6) #5
  call void @llvm.lifetime.end.p0(i64 8216, ptr nonnull %6) #5
  store i8 1, ptr @_ZN10micro_test16is_test_completeE, align 1, !tbaa !9
  %379 = load i8, ptr @_ZN10micro_test13did_test_failE, align 1, !tbaa !9, !range !11, !noundef !12
  %380 = xor i8 %379, 1
  %not. = zext nneg i8 %380 to i32
  %381 = load i32, ptr @_ZN10micro_test12tests_passedE, align 4, !tbaa !5
  %382 = add nsw i32 %381, %not.
  store i32 %382, ptr @_ZN10micro_test12tests_passedE, align 4, !tbaa !5
  %383 = zext nneg i8 %379 to i32
  %384 = load i32, ptr @_ZN10micro_test12tests_failedE, align 4, !tbaa !5
  %385 = add nsw i32 %384, %383
  store i32 %385, ptr @_ZN10micro_test12tests_failedE, align 4, !tbaa !5
  %386 = add nsw i32 %385, %382
  call void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef nonnull @.str.84, i32 noundef %382, i32 noundef %386)
  %387 = load i32, ptr @_ZN10micro_test12tests_failedE, align 4, !tbaa !5
  %388 = icmp ne i32 %387, 0
  %.str.85..str.86 = select i1 %388, ptr @.str.86, ptr @.str.85
  %. = zext i1 %388 to i32
  call void (ptr, ...) @_Z11MicroPrintfPKcz(ptr noundef nonnull %.str.85..str.86)
  ret i32 %.

389:                                              ; preds = %378, %91, %65
  %.pn1003.pn.pn = phi { ptr, i32 } [ %.pn1003.pn, %65 ], [ %.pn982.pn, %91 ], [ %.pn975.pn, %378 ]
  resume { ptr, i32 } %.pn1003.pn.pn
}

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local void @_ZN6tflite14InitializeTestEv() local_unnamed_addr #1

declare void @_Z11MicroPrintfPKcz(ptr noundef, ...) local_unnamed_addr #2

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

declare void @_ZN6tflite19LinearMemoryPlannerC1Ev(ptr noundef nonnull align 8 dereferenceable(8216)) unnamed_addr #2

declare noundef i32 @_ZN6tflite19LinearMemoryPlanner9AddBufferEiii(ptr noundef nonnull align 8 dereferenceable(8216), i32 noundef, i32 noundef, i32 noundef) unnamed_addr #2

declare i32 @__gxx_personality_v0(...)

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

declare noundef i64 @_ZN6tflite19LinearMemoryPlanner20GetMaximumMemorySizeEv(ptr noundef nonnull align 8 dereferenceable(8216)) unnamed_addr #2

declare noundef i32 @_ZN6tflite19LinearMemoryPlanner18GetOffsetForBufferEiPi(ptr noundef nonnull align 8 dereferenceable(8216), i32 noundef, ptr noundef) unnamed_addr #2

; Function Attrs: nounwind
declare void @_ZN6tflite19LinearMemoryPlannerD1Ev(ptr noundef nonnull align 8 dereferenceable(8216)) unnamed_addr #4

attributes #0 = { mustprogress norecurse 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 #1 = { inlinehint mustprogress 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 #2 = { "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 = { mustprogress nocallback nofree nosync nounwind willreturn memory(argmem: readwrite) }
attributes #4 = { nounwind "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 #5 = { nounwind }

!llvm.module.flags = !{!0, !1, !2, !3}
!llvm.ident = !{!4}

!0 = !{i32 1, !"wchar_size", i32 4}
!1 = !{i32 8, !"PIC Level", i32 2}
!2 = !{i32 7, !"PIE Level", i32 2}
!3 = !{i32 7, !"uwtable", i32 2}
!4 = !{!"clang version 19.1.0 (git@github.com:llvm/llvm-project.git a4bf6cd7cfb1a1421ba92bca9d017b49936c55e4)"}
!5 = !{!6, !6, i64 0}
!6 = !{!"int", !7, i64 0}
!7 = !{!"omnipotent char", !8, i64 0}
!8 = !{!"Simple C++ TBAA"}
!9 = !{!10, !10, i64 0}
!10 = !{!"bool", !7, i64 0}
!11 = !{i8 0, i8 2}
!12 = !{}


; Effective O3 passes: EarlyCSEPass,GVNPass,GlobalOptPass,IPSCCPPass,InferFunctionAttrsPass,InstCombinePass,JumpThreadingPass,LoopRotatePass,LoopSimplifyPass,PostOrderFunctionAttrsPass,ReassociatePass,SCCPPass,SROAPass,SimplifyCFGPass,TailCallElimPass