; LLVM IR from Seeed-Studio/Seeed_Arduino_edgeimpulse :: src/edge-impulse-sdk/tensorflow/lite/micro/kernels (svdf)

; Unoptimized IR (clang -disable-llvm-passes):
target datalayout = "e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-i128:128-f80:128-n8:16:32:64-S128"
target triple = "x86_64-unknown-linux-gnu"

%struct.TfLiteNode = type { ptr, ptr, ptr, ptr, ptr, ptr, ptr, i32, ptr }
%struct.TfLiteSVDFParams = type { i32, i32, i8 }
%struct.TfLiteTensor = type { i32, %union.TfLitePtrUnion, ptr, %struct.TfLiteQuantizationParams, i32, i64, ptr, ptr, ptr, i32, i8, i8, %struct.TfLiteQuantization, ptr, ptr }
%union.TfLitePtrUnion = type { ptr }
%struct.TfLiteQuantizationParams = type { float, i32 }
%struct.TfLiteQuantization = type { i32, ptr }
%struct.TfLiteIntArray = type { i32, [0 x i32] }
%struct.TfLiteContext = type { i64, ptr, ptr, ptr, ptr, ptr, ptr, ptr, ptr, i32, ptr, ptr, i8, ptr, ptr, ptr, ptr, ptr, ptr, ptr }
%struct.TfLiteAffineQuantization = type { ptr, ptr, i32 }
%struct.TfLiteFloatArray = type { i32, [0 x float] }
%"struct.tflite::ops::micro::svdf::(anonymous namespace)::OpData" = type { i32, i32, i32, i32, i32, i32 }

@.str = external hidden unnamed_addr constant [26 x i8], align 1
@.str.1 = external hidden unnamed_addr constant [132 x i8], align 1
@.str.2 = external hidden unnamed_addr constant [19 x i8], align 1
@.str.3 = external hidden unnamed_addr constant [2 x i8], align 1
@.str.4 = external hidden unnamed_addr constant [23 x i8], align 1
@.str.5 = external hidden unnamed_addr constant [60 x i8], align 1
@.str.6 = external hidden unnamed_addr constant [21 x i8], align 1
@.str.7 = external hidden unnamed_addr constant [2 x i8], align 1
@.str.8 = external hidden unnamed_addr constant [20 x i8], align 1
@.str.9 = external hidden unnamed_addr constant [2 x i8], align 1
@.str.10 = external hidden unnamed_addr constant [22 x i8], align 1
@.str.11 = external hidden unnamed_addr constant [22 x i8], align 1
@.str.12 = external hidden unnamed_addr constant [11 x i8], align 1
@.str.13 = external hidden unnamed_addr constant [22 x i8], align 1
@.str.14 = external hidden unnamed_addr constant [10 x i8], align 1
@.str.15 = external hidden unnamed_addr constant [31 x i8], align 1
@.str.16 = external hidden unnamed_addr constant [31 x i8], align 1
@.str.17 = external hidden unnamed_addr constant [11 x i8], align 1
@.str.18 = external hidden unnamed_addr constant [28 x i8], align 1
@.str.19 = external hidden unnamed_addr constant [28 x i8], align 1
@.str.20 = external hidden unnamed_addr constant [12 x i8], align 1
@.str.21 = external hidden unnamed_addr constant [28 x i8], align 1
@.str.22 = external hidden unnamed_addr constant [12 x i8], align 1
@.str.23 = external hidden unnamed_addr constant [20 x i8], align 1
@.str.24 = external hidden unnamed_addr constant [32 x i8], align 1
@.str.25 = external hidden unnamed_addr constant [32 x i8], align 1
@.str.26 = external hidden unnamed_addr constant [32 x i8], align 1
@.str.27 = external hidden unnamed_addr constant [26 x i8], align 1
@.str.28 = external hidden unnamed_addr constant [19 x i8], align 1
@.str.29 = external hidden unnamed_addr constant [2 x i8], align 1
@.str.30 = external hidden unnamed_addr constant [22 x i8], align 1
@.str.31 = external hidden unnamed_addr constant [12 x i8], align 1
@.str.32 = external hidden unnamed_addr constant [19 x i8], align 1
@.str.33 = external hidden unnamed_addr constant [13 x i8], align 1
@.str.34 = external hidden unnamed_addr constant [23 x i8], align 1
@.str.35 = external hidden unnamed_addr constant [11 x i8], align 1
@.str.36 = external hidden unnamed_addr constant [13 x i8], align 1
@.str.37 = external hidden unnamed_addr constant [26 x i8], align 1
@.str.38 = external hidden unnamed_addr constant [13 x i8], align 1
@.str.39 = external hidden unnamed_addr constant [15 x i8], align 1

; Function Attrs: noreturn nounwind
declare void @abort() #0

; Function Attrs: nocallback nofree nosync nounwind willreturn memory(argmem: readwrite)
declare void @llvm.lifetime.start.p0(i64 immarg, ptr nocapture) #1

; Function Attrs: nocallback nofree nosync nounwind willreturn memory(argmem: readwrite)
declare void @llvm.lifetime.end.p0(i64 immarg, ptr nocapture) #1

; Function Attrs: mustprogress uwtable
define dso_local noundef i32 @_ZN6tflite3ops5micro4svdf7PrepareEP13TfLiteContextP10TfLiteNode(ptr noundef %0, ptr noundef %1) #2 {
  %3 = alloca i32, align 4
  %4 = alloca ptr, align 8
  %5 = alloca ptr, align 8
  %6 = alloca ptr, align 8
  %7 = alloca ptr, align 8
  %8 = alloca ptr, align 8
  %9 = alloca ptr, align 8
  %10 = alloca ptr, align 8
  %11 = alloca ptr, align 8
  %12 = alloca i32, align 4
  %13 = alloca i32, align 4
  %14 = alloca i32, align 4
  %15 = alloca i32, align 4
  %16 = alloca i32, align 4
  %17 = alloca i32, align 4
  %18 = alloca i32, align 4
  %19 = alloca ptr, align 8
  %20 = alloca ptr, align 8
  %21 = alloca ptr, align 8
  %22 = alloca ptr, align 8
  %23 = alloca ptr, align 8
  %24 = alloca ptr, align 8
  %25 = alloca double, align 8
  %26 = alloca double, align 8
  %27 = alloca ptr, align 8
  %28 = alloca i32, align 4
  %29 = alloca i32, align 4
  %30 = alloca i32, align 4
  %31 = alloca i32, align 4
  %32 = alloca ptr, align 8
  %33 = alloca i32, align 4
  %34 = alloca i32, align 4
  store ptr %0, ptr %4, align 8, !tbaa !5
  store ptr %1, ptr %5, align 8, !tbaa !5
  %35 = load ptr, ptr %5, align 8, !tbaa !5
  %36 = getelementptr inbounds %struct.TfLiteNode, ptr %35, i32 0, i32 5
  %37 = load ptr, ptr %36, align 8, !tbaa !9
  %38 = icmp ne ptr %37, null
  br i1 %38, label %39, label %40

39:                                               ; preds = %2
  br label %42

40:                                               ; preds = %2
  call void @abort() #5
  unreachable

41:                                               ; No predecessors!
  br label %42

42:                                               ; preds = %41, %39
  call void @llvm.lifetime.start.p0(i64 8, ptr %6) #6
  %43 = load ptr, ptr %5, align 8, !tbaa !5
  %44 = getelementptr inbounds %struct.TfLiteNode, ptr %43, i32 0, i32 5
  %45 = load ptr, ptr %44, align 8, !tbaa !9
  store ptr %45, ptr %6, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 8, ptr %7) #6
  %46 = load ptr, ptr %4, align 8, !tbaa !5
  %47 = load ptr, ptr %5, align 8, !tbaa !5
  %48 = call noundef ptr @_ZN6tflite8GetInputEPK13TfLiteContextPK10TfLiteNodei(ptr noundef %46, ptr noundef %47, i32 noundef 0)
  store ptr %48, ptr %7, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 8, ptr %8) #6
  %49 = load ptr, ptr %4, align 8, !tbaa !5
  %50 = load ptr, ptr %5, align 8, !tbaa !5
  %51 = call noundef ptr @_ZN6tflite8GetInputEPK13TfLiteContextPK10TfLiteNodei(ptr noundef %49, ptr noundef %50, i32 noundef 1)
  store ptr %51, ptr %8, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 8, ptr %9) #6
  %52 = load ptr, ptr %4, align 8, !tbaa !5
  %53 = load ptr, ptr %5, align 8, !tbaa !5
  %54 = call noundef ptr @_ZN6tflite8GetInputEPK13TfLiteContextPK10TfLiteNodei(ptr noundef %52, ptr noundef %53, i32 noundef 2)
  store ptr %54, ptr %9, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 8, ptr %10) #6
  %55 = load ptr, ptr %4, align 8, !tbaa !5
  %56 = load ptr, ptr %5, align 8, !tbaa !5
  %57 = call noundef ptr @_ZN6tflite22GetOptionalInputTensorEP13TfLiteContextPK10TfLiteNodei(ptr noundef %55, ptr noundef %56, i32 noundef 3)
  store ptr %57, ptr %10, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 8, ptr %11) #6
  %58 = load ptr, ptr %4, align 8, !tbaa !5
  %59 = load ptr, ptr %5, align 8, !tbaa !5
  %60 = call noundef ptr @_ZN6tflite8GetInputEPK13TfLiteContextPK10TfLiteNodei(ptr noundef %58, ptr noundef %59, i32 noundef 4)
  store ptr %60, ptr %11, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr %12) #6
  %61 = load ptr, ptr %6, align 8, !tbaa !5
  %62 = getelementptr inbounds %struct.TfLiteSVDFParams, ptr %61, i32 0, i32 0
  %63 = load i32, ptr %62, align 4, !tbaa !12
  store i32 %63, ptr %12, align 4, !tbaa !16
  call void @llvm.lifetime.start.p0(i64 4, ptr %13) #6
  %64 = load ptr, ptr %7, align 8, !tbaa !5
  %65 = getelementptr inbounds %struct.TfLiteTensor, ptr %64, i32 0, i32 2
  %66 = load ptr, ptr %65, align 8, !tbaa !17
  %67 = getelementptr inbounds %struct.TfLiteIntArray, ptr %66, i32 0, i32 1
  %68 = getelementptr inbounds [0 x i32], ptr %67, i64 0, i64 1
  %69 = load i32, ptr %68, align 4, !tbaa !16
  store i32 %69, ptr %13, align 4, !tbaa !16
  call void @llvm.lifetime.start.p0(i64 4, ptr %14) #6
  %70 = load ptr, ptr %7, align 8, !tbaa !5
  %71 = getelementptr inbounds %struct.TfLiteTensor, ptr %70, i32 0, i32 2
  %72 = load ptr, ptr %71, align 8, !tbaa !17
  %73 = getelementptr inbounds %struct.TfLiteIntArray, ptr %72, i32 0, i32 1
  %74 = getelementptr inbounds [0 x i32], ptr %73, i64 0, i64 0
  %75 = load i32, ptr %74, align 4, !tbaa !16
  store i32 %75, ptr %14, align 4, !tbaa !16
  call void @llvm.lifetime.start.p0(i64 4, ptr %15) #6
  %76 = load ptr, ptr %8, align 8, !tbaa !5
  %77 = getelementptr inbounds %struct.TfLiteTensor, ptr %76, i32 0, i32 2
  %78 = load ptr, ptr %77, align 8, !tbaa !17
  %79 = getelementptr inbounds %struct.TfLiteIntArray, ptr %78, i32 0, i32 1
  %80 = getelementptr inbounds [0 x i32], ptr %79, i64 0, i64 0
  %81 = load i32, ptr %80, align 4, !tbaa !16
  store i32 %81, ptr %15, align 4, !tbaa !16
  br label %82

82:                                               ; preds = %42
  %83 = load i32, ptr %15, align 4, !tbaa !16
  %84 = load i32, ptr %12, align 4, !tbaa !16
  %85 = srem i32 %83, %84
  %86 = icmp ne i32 %85, 0
  br i1 %86, label %87, label %98

87:                                               ; preds = %82
  br label %88

88:                                               ; preds = %87
  %89 = load ptr, ptr %4, align 8, !tbaa !5
  %90 = getelementptr inbounds %struct.TfLiteContext, ptr %89, i32 0, i32 5
  %91 = load ptr, ptr %90, align 8, !tbaa !26
  %92 = load ptr, ptr %4, align 8, !tbaa !5
  %93 = load i32, ptr %15, align 4, !tbaa !16
  %94 = load i32, ptr %12, align 4, !tbaa !16
  %95 = srem i32 %93, %94
  call void (ptr, ptr, ...) %91(ptr noundef %92, ptr noundef @.str, ptr noundef @.str.1, i32 noundef 375, ptr noundef @.str.2, ptr noundef @.str.3, i32 noundef %95, i32 noundef 0)
  br label %96

96:                                               ; preds = %88
  br label %97

97:                                               ; preds = %96
  store i32 1, ptr %3, align 4
  store i32 1, ptr %16, align 4
  br label %889

98:                                               ; preds = %82
  br label %99

99:                                               ; preds = %98
  br label %100

100:                                              ; preds = %99
  call void @llvm.lifetime.start.p0(i64 4, ptr %17) #6
  %101 = load i32, ptr %15, align 4, !tbaa !16
  %102 = load i32, ptr %12, align 4, !tbaa !16
  %103 = sdiv i32 %101, %102
  store i32 %103, ptr %17, align 4, !tbaa !16
  call void @llvm.lifetime.start.p0(i64 4, ptr %18) #6
  %104 = load ptr, ptr %9, align 8, !tbaa !5
  %105 = getelementptr inbounds %struct.TfLiteTensor, ptr %104, i32 0, i32 2
  %106 = load ptr, ptr %105, align 8, !tbaa !17
  %107 = getelementptr inbounds %struct.TfLiteIntArray, ptr %106, i32 0, i32 1
  %108 = getelementptr inbounds [0 x i32], ptr %107, i64 0, i64 1
  %109 = load i32, ptr %108, align 4, !tbaa !16
  store i32 %109, ptr %18, align 4, !tbaa !16
  br label %110

110:                                              ; preds = %100
  %111 = load ptr, ptr %7, align 8, !tbaa !5
  %112 = getelementptr inbounds %struct.TfLiteTensor, ptr %111, i32 0, i32 0
  %113 = load i32, ptr %112, align 8, !tbaa !28
  %114 = icmp eq i32 %113, 1
  br i1 %114, label %128, label %115

115:                                              ; preds = %110
  %116 = load ptr, ptr %7, align 8, !tbaa !5
  %117 = getelementptr inbounds %struct.TfLiteTensor, ptr %116, i32 0, i32 0
  %118 = load i32, ptr %117, align 8, !tbaa !28
  %119 = icmp eq i32 %118, 9
  br i1 %119, label %128, label %120

120:                                              ; preds = %115
  br label %121

121:                                              ; preds = %120
  %122 = load ptr, ptr %4, align 8, !tbaa !5
  %123 = getelementptr inbounds %struct.TfLiteContext, ptr %122, i32 0, i32 5
  %124 = load ptr, ptr %123, align 8, !tbaa !26
  %125 = load ptr, ptr %4, align 8, !tbaa !5
  call void (ptr, ptr, ...) %124(ptr noundef %125, ptr noundef @.str.4, ptr noundef @.str.1, i32 noundef 381, ptr noundef @.str.5)
  br label %126

126:                                              ; preds = %121
  br label %127

127:                                              ; preds = %126
  store i32 1, ptr %3, align 4
  store i32 1, ptr %16, align 4
  br label %888

128:                                              ; preds = %115, %110
  br label %129

129:                                              ; preds = %128
  br label %130

130:                                              ; preds = %129
  br label %131

131:                                              ; preds = %130
  %132 = load ptr, ptr %7, align 8, !tbaa !5
  %133 = call noundef i32 @_ZN6tflite13NumDimensionsEPK12TfLiteTensor(ptr noundef %132)
  %134 = icmp ne i32 %133, 2
  br i1 %134, label %135, label %145

135:                                              ; preds = %131
  br label %136

136:                                              ; preds = %135
  %137 = load ptr, ptr %4, align 8, !tbaa !5
  %138 = getelementptr inbounds %struct.TfLiteContext, ptr %137, i32 0, i32 5
  %139 = load ptr, ptr %138, align 8, !tbaa !26
  %140 = load ptr, ptr %4, align 8, !tbaa !5
  %141 = load ptr, ptr %7, align 8, !tbaa !5
  %142 = call noundef i32 @_ZN6tflite13NumDimensionsEPK12TfLiteTensor(ptr noundef %141)
  call void (ptr, ptr, ...) %139(ptr noundef %140, ptr noundef @.str, ptr noundef @.str.1, i32 noundef 382, ptr noundef @.str.6, ptr noundef @.str.7, i32 noundef %142, i32 noundef 2)
  br label %143

143:                                              ; preds = %136
  br label %144

144:                                              ; preds = %143
  store i32 1, ptr %3, align 4
  store i32 1, ptr %16, align 4
  br label %888

145:                                              ; preds = %131
  br label %146

146:                                              ; preds = %145
  br label %147

147:                                              ; preds = %146
  br label %148

148:                                              ; preds = %147
  %149 = load ptr, ptr %5, align 8, !tbaa !5
  %150 = getelementptr inbounds %struct.TfLiteNode, ptr %149, i32 0, i32 1
  %151 = load ptr, ptr %150, align 8, !tbaa !29
  %152 = getelementptr inbounds %struct.TfLiteIntArray, ptr %151, i32 0, i32 0
  %153 = load i32, ptr %152, align 4, !tbaa !16
  %154 = icmp ne i32 %153, 1
  br i1 %154, label %155, label %168

155:                                              ; preds = %148
  br label %156

156:                                              ; preds = %155
  %157 = load ptr, ptr %4, align 8, !tbaa !5
  %158 = getelementptr inbounds %struct.TfLiteContext, ptr %157, i32 0, i32 5
  %159 = load ptr, ptr %158, align 8, !tbaa !26
  %160 = load ptr, ptr %4, align 8, !tbaa !5
  %161 = load ptr, ptr %5, align 8, !tbaa !5
  %162 = getelementptr inbounds %struct.TfLiteNode, ptr %161, i32 0, i32 1
  %163 = load ptr, ptr %162, align 8, !tbaa !29
  %164 = getelementptr inbounds %struct.TfLiteIntArray, ptr %163, i32 0, i32 0
  %165 = load i32, ptr %164, align 4, !tbaa !16
  call void (ptr, ptr, ...) %159(ptr noundef %160, ptr noundef @.str, ptr noundef @.str.1, i32 noundef 386, ptr noundef @.str.8, ptr noundef @.str.9, i32 noundef %165, i32 noundef 1)
  br label %166

166:                                              ; preds = %156
  br label %167

167:                                              ; preds = %166
  store i32 1, ptr %3, align 4
  store i32 1, ptr %16, align 4
  br label %888

168:                                              ; preds = %148
  br label %169

169:                                              ; preds = %168
  br label %170

170:                                              ; preds = %169
  call void @llvm.lifetime.start.p0(i64 8, ptr %19) #6
  %171 = load ptr, ptr %4, align 8, !tbaa !5
  %172 = load ptr, ptr %5, align 8, !tbaa !5
  %173 = call noundef ptr @_ZN6tflite9GetOutputEP13TfLiteContextPK10TfLiteNodei(ptr noundef %171, ptr noundef %172, i32 noundef 0)
  store ptr %173, ptr %19, align 8, !tbaa !5
  br label %174

174:                                              ; preds = %170
  %175 = load ptr, ptr %19, align 8, !tbaa !5
  %176 = call noundef i32 @_ZN6tflite13NumDimensionsEPK12TfLiteTensor(ptr noundef %175)
  %177 = icmp ne i32 %176, 2
  br i1 %177, label %178, label %188

178:                                              ; preds = %174
  br label %179

179:                                              ; preds = %178
  %180 = load ptr, ptr %4, align 8, !tbaa !5
  %181 = getelementptr inbounds %struct.TfLiteContext, ptr %180, i32 0, i32 5
  %182 = load ptr, ptr %181, align 8, !tbaa !26
  %183 = load ptr, ptr %4, align 8, !tbaa !5
  %184 = load ptr, ptr %19, align 8, !tbaa !5
  %185 = call noundef i32 @_ZN6tflite13NumDimensionsEPK12TfLiteTensor(ptr noundef %184)
  call void (ptr, ptr, ...) %182(ptr noundef %183, ptr noundef @.str, ptr noundef @.str.1, i32 noundef 388, ptr noundef @.str.10, ptr noundef @.str.7, i32 noundef %185, i32 noundef 2)
  br label %186

186:                                              ; preds = %179
  br label %187

187:                                              ; preds = %186
  store i32 1, ptr %3, align 4
  store i32 1, ptr %16, align 4
  br label %887

188:                                              ; preds = %174
  br label %189

189:                                              ; preds = %188
  br label %190

190:                                              ; preds = %189
  br label %191

191:                                              ; preds = %190
  %192 = load ptr, ptr %19, align 8, !tbaa !5
  %193 = getelementptr inbounds %struct.TfLiteTensor, ptr %192, i32 0, i32 2
  %194 = load ptr, ptr %193, align 8, !tbaa !17
  %195 = getelementptr inbounds %struct.TfLiteIntArray, ptr %194, i32 0, i32 1
  %196 = getelementptr inbounds [0 x i32], ptr %195, i64 0, i64 0
  %197 = load i32, ptr %196, align 4, !tbaa !16
  %198 = load i32, ptr %14, align 4, !tbaa !16
  %199 = icmp ne i32 %197, %198
  br i1 %199, label %200, label %215

200:                                              ; preds = %191
  br label %201

201:                                              ; preds = %200
  %202 = load ptr, ptr %4, align 8, !tbaa !5
  %203 = getelementptr inbounds %struct.TfLiteContext, ptr %202, i32 0, i32 5
  %204 = load ptr, ptr %203, align 8, !tbaa !26
  %205 = load ptr, ptr %4, align 8, !tbaa !5
  %206 = load ptr, ptr %19, align 8, !tbaa !5
  %207 = getelementptr inbounds %struct.TfLiteTensor, ptr %206, i32 0, i32 2
  %208 = load ptr, ptr %207, align 8, !tbaa !17
  %209 = getelementptr inbounds %struct.TfLiteIntArray, ptr %208, i32 0, i32 1
  %210 = getelementptr inbounds [0 x i32], ptr %209, i64 0, i64 0
  %211 = load i32, ptr %210, align 4, !tbaa !16
  %212 = load i32, ptr %14, align 4, !tbaa !16
  call void (ptr, ptr, ...) %204(ptr noundef %205, ptr noundef @.str, ptr noundef @.str.1, i32 noundef 389, ptr noundef @.str.11, ptr noundef @.str.12, i32 noundef %211, i32 noundef %212)
  br label %213

213:                                              ; preds = %201
  br label %214

214:                                              ; preds = %213
  store i32 1, ptr %3, align 4
  store i32 1, ptr %16, align 4
  br label %887

215:                                              ; preds = %191
  br label %216

216:                                              ; preds = %215
  br label %217

217:                                              ; preds = %216
  br label %218

218:                                              ; preds = %217
  %219 = load ptr, ptr %19, align 8, !tbaa !5
  %220 = getelementptr inbounds %struct.TfLiteTensor, ptr %219, i32 0, i32 2
  %221 = load ptr, ptr %220, align 8, !tbaa !17
  %222 = getelementptr inbounds %struct.TfLiteIntArray, ptr %221, i32 0, i32 1
  %223 = getelementptr inbounds [0 x i32], ptr %222, i64 0, i64 1
  %224 = load i32, ptr %223, align 4, !tbaa !16
  %225 = load i32, ptr %17, align 4, !tbaa !16
  %226 = icmp ne i32 %224, %225
  br i1 %226, label %227, label %242

227:                                              ; preds = %218
  br label %228

228:                                              ; preds = %227
  %229 = load ptr, ptr %4, align 8, !tbaa !5
  %230 = getelementptr inbounds %struct.TfLiteContext, ptr %229, i32 0, i32 5
  %231 = load ptr, ptr %230, align 8, !tbaa !26
  %232 = load ptr, ptr %4, align 8, !tbaa !5
  %233 = load ptr, ptr %19, align 8, !tbaa !5
  %234 = getelementptr inbounds %struct.TfLiteTensor, ptr %233, i32 0, i32 2
  %235 = load ptr, ptr %234, align 8, !tbaa !17
  %236 = getelementptr inbounds %struct.TfLiteIntArray, ptr %235, i32 0, i32 1
  %237 = getelementptr inbounds [0 x i32], ptr %236, i64 0, i64 1
  %238 = load i32, ptr %237, align 4, !tbaa !16
  %239 = load i32, ptr %17, align 4, !tbaa !16
  call void (ptr, ptr, ...) %231(ptr noundef %232, ptr noundef @.str, ptr noundef @.str.1, i32 noundef 390, ptr noundef @.str.13, ptr noundef @.str.14, i32 noundef %238, i32 noundef %239)
  br label %240

240:                                              ; preds = %228
  br label %241

241:                                              ; preds = %240
  store i32 1, ptr %3, align 4
  store i32 1, ptr %16, align 4
  br label %887

242:                                              ; preds = %218
  br label %243

243:                                              ; preds = %242
  br label %244

244:                                              ; preds = %243
  br label %245

245:                                              ; preds = %244
  %246 = load ptr, ptr %8, align 8, !tbaa !5
  %247 = call noundef i32 @_ZN6tflite13NumDimensionsEPK12TfLiteTensor(ptr noundef %246)
  %248 = icmp ne i32 %247, 2
  br i1 %248, label %249, label %259

249:                                              ; preds = %245
  br label %250

250:                                              ; preds = %249
  %251 = load ptr, ptr %4, align 8, !tbaa !5
  %252 = getelementptr inbounds %struct.TfLiteContext, ptr %251, i32 0, i32 5
  %253 = load ptr, ptr %252, align 8, !tbaa !26
  %254 = load ptr, ptr %4, align 8, !tbaa !5
  %255 = load ptr, ptr %8, align 8, !tbaa !5
  %256 = call noundef i32 @_ZN6tflite13NumDimensionsEPK12TfLiteTensor(ptr noundef %255)
  call void (ptr, ptr, ...) %253(ptr noundef %254, ptr noundef @.str, ptr noundef @.str.1, i32 noundef 393, ptr noundef @.str.15, ptr noundef @.str.7, i32 noundef %256, i32 noundef 2)
  br label %257

257:                                              ; preds = %250
  br label %258

258:                                              ; preds = %257
  store i32 1, ptr %3, align 4
  store i32 1, ptr %16, align 4
  br label %887

259:                                              ; preds = %245
  br label %260

260:                                              ; preds = %259
  br label %261

261:                                              ; preds = %260
  br label %262

262:                                              ; preds = %261
  %263 = load ptr, ptr %8, align 8, !tbaa !5
  %264 = getelementptr inbounds %struct.TfLiteTensor, ptr %263, i32 0, i32 2
  %265 = load ptr, ptr %264, align 8, !tbaa !17
  %266 = getelementptr inbounds %struct.TfLiteIntArray, ptr %265, i32 0, i32 1
  %267 = getelementptr inbounds [0 x i32], ptr %266, i64 0, i64 1
  %268 = load i32, ptr %267, align 4, !tbaa !16
  %269 = load i32, ptr %13, align 4, !tbaa !16
  %270 = icmp ne i32 %268, %269
  br i1 %270, label %271, label %286

271:                                              ; preds = %262
  br label %272

272:                                              ; preds = %271
  %273 = load ptr, ptr %4, align 8, !tbaa !5
  %274 = getelementptr inbounds %struct.TfLiteContext, ptr %273, i32 0, i32 5
  %275 = load ptr, ptr %274, align 8, !tbaa !26
  %276 = load ptr, ptr %4, align 8, !tbaa !5
  %277 = load ptr, ptr %8, align 8, !tbaa !5
  %278 = getelementptr inbounds %struct.TfLiteTensor, ptr %277, i32 0, i32 2
  %279 = load ptr, ptr %278, align 8, !tbaa !17
  %280 = getelementptr inbounds %struct.TfLiteIntArray, ptr %279, i32 0, i32 1
  %281 = getelementptr inbounds [0 x i32], ptr %280, i64 0, i64 1
  %282 = load i32, ptr %281, align 4, !tbaa !16
  %283 = load i32, ptr %13, align 4, !tbaa !16
  call void (ptr, ptr, ...) %275(ptr noundef %276, ptr noundef @.str, ptr noundef @.str.1, i32 noundef 394, ptr noundef @.str.16, ptr noundef @.str.17, i32 noundef %282, i32 noundef %283)
  br label %284

284:                                              ; preds = %272
  br label %285

285:                                              ; preds = %284
  store i32 1, ptr %3, align 4
  store i32 1, ptr %16, align 4
  br label %887

286:                                              ; preds = %262
  br label %287

287:                                              ; preds = %286
  br label %288

288:                                              ; preds = %287
  br label %289

289:                                              ; preds = %288
  %290 = load ptr, ptr %9, align 8, !tbaa !5
  %291 = call noundef i32 @_ZN6tflite13NumDimensionsEPK12TfLiteTensor(ptr noundef %290)
  %292 = icmp ne i32 %291, 2
  br i1 %292, label %293, label %303

293:                                              ; preds = %289
  br label %294

294:                                              ; preds = %293
  %295 = load ptr, ptr %4, align 8, !tbaa !5
  %296 = getelementptr inbounds %struct.TfLiteContext, ptr %295, i32 0, i32 5
  %297 = load ptr, ptr %296, align 8, !tbaa !26
  %298 = load ptr, ptr %4, align 8, !tbaa !5
  %299 = load ptr, ptr %9, align 8, !tbaa !5
  %300 = call noundef i32 @_ZN6tflite13NumDimensionsEPK12TfLiteTensor(ptr noundef %299)
  call void (ptr, ptr, ...) %297(ptr noundef %298, ptr noundef @.str, ptr noundef @.str.1, i32 noundef 397, ptr noundef @.str.18, ptr noundef @.str.7, i32 noundef %300, i32 noundef 2)
  br label %301

301:                                              ; preds = %294
  br label %302

302:                                              ; preds = %301
  store i32 1, ptr %3, align 4
  store i32 1, ptr %16, align 4
  br label %887

303:                                              ; preds = %289
  br label %304

304:                                              ; preds = %303
  br label %305

305:                                              ; preds = %304
  br label %306

306:                                              ; preds = %305
  %307 = load ptr, ptr %9, align 8, !tbaa !5
  %308 = getelementptr inbounds %struct.TfLiteTensor, ptr %307, i32 0, i32 2
  %309 = load ptr, ptr %308, align 8, !tbaa !17
  %310 = getelementptr inbounds %struct.TfLiteIntArray, ptr %309, i32 0, i32 1
  %311 = getelementptr inbounds [0 x i32], ptr %310, i64 0, i64 0
  %312 = load i32, ptr %311, align 4, !tbaa !16
  %313 = load i32, ptr %15, align 4, !tbaa !16
  %314 = icmp ne i32 %312, %313
  br i1 %314, label %315, label %330

315:                                              ; preds = %306
  br label %316

316:                                              ; preds = %315
  %317 = load ptr, ptr %4, align 8, !tbaa !5
  %318 = getelementptr inbounds %struct.TfLiteContext, ptr %317, i32 0, i32 5
  %319 = load ptr, ptr %318, align 8, !tbaa !26
  %320 = load ptr, ptr %4, align 8, !tbaa !5
  %321 = load ptr, ptr %9, align 8, !tbaa !5
  %322 = getelementptr inbounds %struct.TfLiteTensor, ptr %321, i32 0, i32 2
  %323 = load ptr, ptr %322, align 8, !tbaa !17
  %324 = getelementptr inbounds %struct.TfLiteIntArray, ptr %323, i32 0, i32 1
  %325 = getelementptr inbounds [0 x i32], ptr %324, i64 0, i64 0
  %326 = load i32, ptr %325, align 4, !tbaa !16
  %327 = load i32, ptr %15, align 4, !tbaa !16
  call void (ptr, ptr, ...) %319(ptr noundef %320, ptr noundef @.str, ptr noundef @.str.1, i32 noundef 398, ptr noundef @.str.19, ptr noundef @.str.20, i32 noundef %326, i32 noundef %327)
  br label %328

328:                                              ; preds = %316
  br label %329

329:                                              ; preds = %328
  store i32 1, ptr %3, align 4
  store i32 1, ptr %16, align 4
  br label %887

330:                                              ; preds = %306
  br label %331

331:                                              ; preds = %330
  br label %332

332:                                              ; preds = %331
  br label %333

333:                                              ; preds = %332
  %334 = load ptr, ptr %9, align 8, !tbaa !5
  %335 = getelementptr inbounds %struct.TfLiteTensor, ptr %334, i32 0, i32 2
  %336 = load ptr, ptr %335, align 8, !tbaa !17
  %337 = getelementptr inbounds %struct.TfLiteIntArray, ptr %336, i32 0, i32 1
  %338 = getelementptr inbounds [0 x i32], ptr %337, i64 0, i64 1
  %339 = load i32, ptr %338, align 4, !tbaa !16
  %340 = load i32, ptr %18, align 4, !tbaa !16
  %341 = icmp ne i32 %339, %340
  br i1 %341, label %342, label %357

342:                                              ; preds = %333
  br label %343

343:                                              ; preds = %342
  %344 = load ptr, ptr %4, align 8, !tbaa !5
  %345 = getelementptr inbounds %struct.TfLiteContext, ptr %344, i32 0, i32 5
  %346 = load ptr, ptr %345, align 8, !tbaa !26
  %347 = load ptr, ptr %4, align 8, !tbaa !5
  %348 = load ptr, ptr %9, align 8, !tbaa !5
  %349 = getelementptr inbounds %struct.TfLiteTensor, ptr %348, i32 0, i32 2
  %350 = load ptr, ptr %349, align 8, !tbaa !17
  %351 = getelementptr inbounds %struct.TfLiteIntArray, ptr %350, i32 0, i32 1
  %352 = getelementptr inbounds [0 x i32], ptr %351, i64 0, i64 1
  %353 = load i32, ptr %352, align 4, !tbaa !16
  %354 = load i32, ptr %18, align 4, !tbaa !16
  call void (ptr, ptr, ...) %346(ptr noundef %347, ptr noundef @.str, ptr noundef @.str.1, i32 noundef 399, ptr noundef @.str.21, ptr noundef @.str.22, i32 noundef %353, i32 noundef %354)
  br label %355

355:                                              ; preds = %343
  br label %356

356:                                              ; preds = %355
  store i32 1, ptr %3, align 4
  store i32 1, ptr %16, align 4
  br label %887

357:                                              ; preds = %333
  br label %358

358:                                              ; preds = %357
  br label %359

359:                                              ; preds = %358
  %360 = load ptr, ptr %10, align 8, !tbaa !5
  %361 = icmp ne ptr %360, null
  br i1 %361, label %362, label %390

362:                                              ; preds = %359
  br label %363

363:                                              ; preds = %362
  %364 = load ptr, ptr %10, align 8, !tbaa !5
  %365 = getelementptr inbounds %struct.TfLiteTensor, ptr %364, i32 0, i32 2
  %366 = load ptr, ptr %365, align 8, !tbaa !17
  %367 = getelementptr inbounds %struct.TfLiteIntArray, ptr %366, i32 0, i32 1
  %368 = getelementptr inbounds [0 x i32], ptr %367, i64 0, i64 0
  %369 = load i32, ptr %368, align 4, !tbaa !16
  %370 = load i32, ptr %17, align 4, !tbaa !16
  %371 = icmp ne i32 %369, %370
  br i1 %371, label %372, label %387

372:                                              ; preds = %363
  br label %373

373:                                              ; preds = %372
  %374 = load ptr, ptr %4, align 8, !tbaa !5
  %375 = getelementptr inbounds %struct.TfLiteContext, ptr %374, i32 0, i32 5
  %376 = load ptr, ptr %375, align 8, !tbaa !26
  %377 = load ptr, ptr %4, align 8, !tbaa !5
  %378 = load ptr, ptr %10, align 8, !tbaa !5
  %379 = getelementptr inbounds %struct.TfLiteTensor, ptr %378, i32 0, i32 2
  %380 = load ptr, ptr %379, align 8, !tbaa !17
  %381 = getelementptr inbounds %struct.TfLiteIntArray, ptr %380, i32 0, i32 1
  %382 = getelementptr inbounds [0 x i32], ptr %381, i64 0, i64 0
  %383 = load i32, ptr %382, align 4, !tbaa !16
  %384 = load i32, ptr %17, align 4, !tbaa !16
  call void (ptr, ptr, ...) %376(ptr noundef %377, ptr noundef @.str, ptr noundef @.str.1, i32 noundef 403, ptr noundef @.str.23, ptr noundef @.str.14, i32 noundef %383, i32 noundef %384)
  br label %385

385:                                              ; preds = %373
  br label %386

386:                                              ; preds = %385
  store i32 1, ptr %3, align 4
  store i32 1, ptr %16, align 4
  br label %887

387:                                              ; preds = %363
  br label %388

388:                                              ; preds = %387
  br label %389

389:                                              ; preds = %388
  br label %390

390:                                              ; preds = %389, %359
  br label %391

391:                                              ; preds = %390
  %392 = load ptr, ptr %11, align 8, !tbaa !5
  %393 = call noundef i32 @_ZN6tflite13NumDimensionsEPK12TfLiteTensor(ptr noundef %392)
  %394 = icmp ne i32 %393, 2
  br i1 %394, label %395, label %405

395:                                              ; preds = %391
  br label %396

396:                                              ; preds = %395
  %397 = load ptr, ptr %4, align 8, !tbaa !5
  %398 = getelementptr inbounds %struct.TfLiteContext, ptr %397, i32 0, i32 5
  %399 = load ptr, ptr %398, align 8, !tbaa !26
  %400 = load ptr, ptr %4, align 8, !tbaa !5
  %401 = load ptr, ptr %11, align 8, !tbaa !5
  %402 = call noundef i32 @_ZN6tflite13NumDimensionsEPK12TfLiteTensor(ptr noundef %401)
  call void (ptr, ptr, ...) %399(ptr noundef %400, ptr noundef @.str, ptr noundef @.str.1, i32 noundef 407, ptr noundef @.str.24, ptr noundef @.str.7, i32 noundef %402, i32 noundef 2)
  br label %403

403:                                              ; preds = %396
  br label %404

404:                                              ; preds = %403
  store i32 1, ptr %3, align 4
  store i32 1, ptr %16, align 4
  br label %887

405:                                              ; preds = %391
  br label %406

406:                                              ; preds = %405
  br label %407

407:                                              ; preds = %406
  br label %408

408:                                              ; preds = %407
  %409 = load ptr, ptr %11, align 8, !tbaa !5
  %410 = getelementptr inbounds %struct.TfLiteTensor, ptr %409, i32 0, i32 2
  %411 = load ptr, ptr %410, align 8, !tbaa !17
  %412 = getelementptr inbounds %struct.TfLiteIntArray, ptr %411, i32 0, i32 1
  %413 = getelementptr inbounds [0 x i32], ptr %412, i64 0, i64 0
  %414 = load i32, ptr %413, align 4, !tbaa !16
  %415 = load i32, ptr %14, align 4, !tbaa !16
  %416 = icmp ne i32 %414, %415
  br i1 %416, label %417, label %432

417:                                              ; preds = %408
  br label %418

418:                                              ; preds = %417
  %419 = load ptr, ptr %4, align 8, !tbaa !5
  %420 = getelementptr inbounds %struct.TfLiteContext, ptr %419, i32 0, i32 5
  %421 = load ptr, ptr %420, align 8, !tbaa !26
  %422 = load ptr, ptr %4, align 8, !tbaa !5
  %423 = load ptr, ptr %11, align 8, !tbaa !5
  %424 = getelementptr inbounds %struct.TfLiteTensor, ptr %423, i32 0, i32 2
  %425 = load ptr, ptr %424, align 8, !tbaa !17
  %426 = getelementptr inbounds %struct.TfLiteIntArray, ptr %425, i32 0, i32 1
  %427 = getelementptr inbounds [0 x i32], ptr %426, i64 0, i64 0
  %428 = load i32, ptr %427, align 4, !tbaa !16
  %429 = load i32, ptr %14, align 4, !tbaa !16
  call void (ptr, ptr, ...) %421(ptr noundef %422, ptr noundef @.str, ptr noundef @.str.1, i32 noundef 408, ptr noundef @.str.25, ptr noundef @.str.12, i32 noundef %428, i32 noundef %429)
  br label %430

430:                                              ; preds = %418
  br label %431

431:                                              ; preds = %430
  store i32 1, ptr %3, align 4
  store i32 1, ptr %16, align 4
  br label %887

432:                                              ; preds = %408
  br label %433

433:                                              ; preds = %432
  br label %434

434:                                              ; preds = %433
  br label %435

435:                                              ; preds = %434
  %436 = load ptr, ptr %11, align 8, !tbaa !5
  %437 = getelementptr inbounds %struct.TfLiteTensor, ptr %436, i32 0, i32 2
  %438 = load ptr, ptr %437, align 8, !tbaa !17
  %439 = getelementptr inbounds %struct.TfLiteIntArray, ptr %438, i32 0, i32 1
  %440 = getelementptr inbounds [0 x i32], ptr %439, i64 0, i64 1
  %441 = load i32, ptr %440, align 4, !tbaa !16
  %442 = load i32, ptr %18, align 4, !tbaa !16
  %443 = load i32, ptr %15, align 4, !tbaa !16
  %444 = mul nsw i32 %442, %443
  %445 = icmp ne i32 %441, %444
  br i1 %445, label %446, label %463

446:                                              ; preds = %435
  br label %447

447:                                              ; preds = %446
  %448 = load ptr, ptr %4, align 8, !tbaa !5
  %449 = getelementptr inbounds %struct.TfLiteContext, ptr %448, i32 0, i32 5
  %450 = load ptr, ptr %449, align 8, !tbaa !26
  %451 = load ptr, ptr %4, align 8, !tbaa !5
  %452 = load ptr, ptr %11, align 8, !tbaa !5
  %453 = getelementptr inbounds %struct.TfLiteTensor, ptr %452, i32 0, i32 2
  %454 = load ptr, ptr %453, align 8, !tbaa !17
  %455 = getelementptr inbounds %struct.TfLiteIntArray, ptr %454, i32 0, i32 1
  %456 = getelementptr inbounds [0 x i32], ptr %455, i64 0, i64 1
  %457 = load i32, ptr %456, align 4, !tbaa !16
  %458 = load i32, ptr %18, align 4, !tbaa !16
  %459 = load i32, ptr %15, align 4, !tbaa !16
  %460 = mul nsw i32 %458, %459
  call void (ptr, ptr, ...) %450(ptr noundef %451, ptr noundef @.str, ptr noundef @.str.1, i32 noundef 410, ptr noundef @.str.26, ptr noundef @.str.27, i32 noundef %457, i32 noundef %460)
  br label %461

461:                                              ; preds = %447
  br label %462

462:                                              ; preds = %461
  store i32 1, ptr %3, align 4
  store i32 1, ptr %16, align 4
  br label %887

463:                                              ; preds = %435
  br label %464

464:                                              ; preds = %463
  br label %465

465:                                              ; preds = %464
  br label %466

466:                                              ; preds = %465
  %467 = load ptr, ptr %5, align 8, !tbaa !5
  %468 = getelementptr inbounds %struct.TfLiteNode, ptr %467, i32 0, i32 0
  %469 = load ptr, ptr %468, align 8, !tbaa !30
  %470 = getelementptr inbounds %struct.TfLiteIntArray, ptr %469, i32 0, i32 0
  %471 = load i32, ptr %470, align 4, !tbaa !16
  %472 = icmp ne i32 %471, 5
  br i1 %472, label %473, label %486

473:                                              ; preds = %466
  br label %474

474:                                              ; preds = %473
  %475 = load ptr, ptr %4, align 8, !tbaa !5
  %476 = getelementptr inbounds %struct.TfLiteContext, ptr %475, i32 0, i32 5
  %477 = load ptr, ptr %476, align 8, !tbaa !26
  %478 = load ptr, ptr %4, align 8, !tbaa !5
  %479 = load ptr, ptr %5, align 8, !tbaa !5
  %480 = getelementptr inbounds %struct.TfLiteNode, ptr %479, i32 0, i32 0
  %481 = load ptr, ptr %480, align 8, !tbaa !30
  %482 = getelementptr inbounds %struct.TfLiteIntArray, ptr %481, i32 0, i32 0
  %483 = load i32, ptr %482, align 4, !tbaa !16
  call void (ptr, ptr, ...) %477(ptr noundef %478, ptr noundef @.str, ptr noundef @.str.1, i32 noundef 412, ptr noundef @.str.28, ptr noundef @.str.29, i32 noundef %483, i32 noundef 5)
  br label %484

484:                                              ; preds = %474
  br label %485

485:                                              ; preds = %484
  store i32 1, ptr %3, align 4
  store i32 1, ptr %16, align 4
  br label %887

486:                                              ; preds = %466
  br label %487

487:                                              ; preds = %486
  br label %488

488:                                              ; preds = %487
  %489 = load ptr, ptr %7, align 8, !tbaa !5
  %490 = getelementptr inbounds %struct.TfLiteTensor, ptr %489, i32 0, i32 0
  %491 = load i32, ptr %490, align 8, !tbaa !28
  %492 = icmp eq i32 %491, 9
  br i1 %492, label %493, label %738

493:                                              ; preds = %488
  br label %494

494:                                              ; preds = %493
  %495 = load ptr, ptr %8, align 8, !tbaa !5
  %496 = getelementptr inbounds %struct.TfLiteTensor, ptr %495, i32 0, i32 0
  %497 = load i32, ptr %496, align 8, !tbaa !28
  %498 = icmp ne i32 %497, 9
  br i1 %498, label %499, label %510

499:                                              ; preds = %494
  br label %500

500:                                              ; preds = %499
  %501 = load ptr, ptr %4, align 8, !tbaa !5
  %502 = getelementptr inbounds %struct.TfLiteContext, ptr %501, i32 0, i32 5
  %503 = load ptr, ptr %502, align 8, !tbaa !26
  %504 = load ptr, ptr %4, align 8, !tbaa !5
  %505 = load ptr, ptr %8, align 8, !tbaa !5
  %506 = getelementptr inbounds %struct.TfLiteTensor, ptr %505, i32 0, i32 0
  %507 = load i32, ptr %506, align 8, !tbaa !28
  call void (ptr, ptr, ...) %503(ptr noundef %504, ptr noundef @.str, ptr noundef @.str.1, i32 noundef 415, ptr noundef @.str.30, ptr noundef @.str.31, i32 noundef %507, i32 noundef 9)
  br label %508

508:                                              ; preds = %500
  br label %509

509:                                              ; preds = %508
  store i32 1, ptr %3, align 4
  store i32 1, ptr %16, align 4
  br label %887

510:                                              ; preds = %494
  br label %511

511:                                              ; preds = %510
  br label %512

512:                                              ; preds = %511
  br label %513

513:                                              ; preds = %512
  %514 = load ptr, ptr %9, align 8, !tbaa !5
  %515 = getelementptr inbounds %struct.TfLiteTensor, ptr %514, i32 0, i32 0
  %516 = load i32, ptr %515, align 8, !tbaa !28
  %517 = icmp ne i32 %516, 7
  br i1 %517, label %518, label %529

518:                                              ; preds = %513
  br label %519

519:                                              ; preds = %518
  %520 = load ptr, ptr %4, align 8, !tbaa !5
  %521 = getelementptr inbounds %struct.TfLiteContext, ptr %520, i32 0, i32 5
  %522 = load ptr, ptr %521, align 8, !tbaa !26
  %523 = load ptr, ptr %4, align 8, !tbaa !5
  %524 = load ptr, ptr %9, align 8, !tbaa !5
  %525 = getelementptr inbounds %struct.TfLiteTensor, ptr %524, i32 0, i32 0
  %526 = load i32, ptr %525, align 8, !tbaa !28
  call void (ptr, ptr, ...) %522(ptr noundef %523, ptr noundef @.str, ptr noundef @.str.1, i32 noundef 416, ptr noundef @.str.32, ptr noundef @.str.33, i32 noundef %526, i32 noundef 7)
  br label %527

527:                                              ; preds = %519
  br label %528

528:                                              ; preds = %527
  store i32 1, ptr %3, align 4
  store i32 1, ptr %16, align 4
  br label %887

529:                                              ; preds = %513
  br label %530

530:                                              ; preds = %529
  br label %531

531:                                              ; preds = %530
  br label %532

532:                                              ; preds = %531
  %533 = load ptr, ptr %11, align 8, !tbaa !5
  %534 = getelementptr inbounds %struct.TfLiteTensor, ptr %533, i32 0, i32 0
  %535 = load i32, ptr %534, align 8, !tbaa !28
  %536 = icmp ne i32 %535, 7
  br i1 %536, label %537, label %548

537:                                              ; preds = %532
  br label %538

538:                                              ; preds = %537
  %539 = load ptr, ptr %4, align 8, !tbaa !5
  %540 = getelementptr inbounds %struct.TfLiteContext, ptr %539, i32 0, i32 5
  %541 = load ptr, ptr %540, align 8, !tbaa !26
  %542 = load ptr, ptr %4, align 8, !tbaa !5
  %543 = load ptr, ptr %11, align 8, !tbaa !5
  %544 = getelementptr inbounds %struct.TfLiteTensor, ptr %543, i32 0, i32 0
  %545 = load i32, ptr %544, align 8, !tbaa !28
  call void (ptr, ptr, ...) %541(ptr noundef %542, ptr noundef @.str, ptr noundef @.str.1, i32 noundef 417, ptr noundef @.str.34, ptr noundef @.str.33, i32 noundef %545, i32 noundef 7)
  br label %546

546:                                              ; preds = %538
  br label %547

547:                                              ; preds = %546
  store i32 1, ptr %3, align 4
  store i32 1, ptr %16, align 4
  br label %887

548:                                              ; preds = %532
  br label %549

549:                                              ; preds = %548
  br label %550

550:                                              ; preds = %549
  %551 = load ptr, ptr %10, align 8, !tbaa !5
  %552 = icmp ne ptr %551, null
  br i1 %552, label %553, label %573

553:                                              ; preds = %550
  br label %554

554:                                              ; preds = %553
  %555 = load ptr, ptr %10, align 8, !tbaa !5
  %556 = getelementptr inbounds %struct.TfLiteTensor, ptr %555, i32 0, i32 0
  %557 = load i32, ptr %556, align 8, !tbaa !28
  %558 = icmp ne i32 %557, 2
  br i1 %558, label %559, label %570

559:                                              ; preds = %554
  br label %560

560:                                              ; preds = %559
  %561 = load ptr, ptr %4, align 8, !tbaa !5
  %562 = getelementptr inbounds %struct.TfLiteContext, ptr %561, i32 0, i32 5
  %563 = load ptr, ptr %562, align 8, !tbaa !26
  %564 = load ptr, ptr %4, align 8, !tbaa !5
  %565 = load ptr, ptr %10, align 8, !tbaa !5
  %566 = getelementptr inbounds %struct.TfLiteTensor, ptr %565, i32 0, i32 0
  %567 = load i32, ptr %566, align 8, !tbaa !28
  call void (ptr, ptr, ...) %563(ptr noundef %564, ptr noundef @.str, ptr noundef @.str.1, i32 noundef 419, ptr noundef @.str.35, ptr noundef @.str.36, i32 noundef %567, i32 noundef 2)
  br label %568

568:                                              ; preds = %560
  br label %569

569:                                              ; preds = %568
  store i32 1, ptr %3, align 4
  store i32 1, ptr %16, align 4
  br label %887

570:                                              ; preds = %554
  br label %571

571:                                              ; preds = %570
  br label %572

572:                                              ; preds = %571
  br label %573

573:                                              ; preds = %572, %550
  br label %574

574:                                              ; preds = %573
  %575 = load ptr, ptr %19, align 8, !tbaa !5
  %576 = getelementptr inbounds %struct.TfLiteTensor, ptr %575, i32 0, i32 0
  %577 = load i32, ptr %576, align 8, !tbaa !28
  %578 = icmp ne i32 %577, 9
  br i1 %578, label %579, label %592

579:                                              ; preds = %574
  br label %580

580:                                              ; preds = %579
  %581 = load ptr, ptr %4, align 8, !tbaa !5
  %582 = getelementptr inbounds %struct.TfLiteContext, ptr %581, i32 0, i32 5
  %583 = load ptr, ptr %582, align 8, !tbaa !26
  %584 = load ptr, ptr %4, align 8, !tbaa !5
  %585 = load ptr, ptr %19, align 8, !tbaa !5
  %586 = getelementptr inbounds %struct.TfLiteTensor, ptr %585, i32 0, i32 0
  %587 = load i32, ptr %586, align 8, !tbaa !28
  %588 = call ptr @TfLiteTypeGetName(i32 noundef %587)
  %589 = call ptr @TfLiteTypeGetName(i32 noundef 9)
  call void (ptr, ptr, ...) %583(ptr noundef %584, ptr noundef @.str.37, ptr noundef @.str.1, i32 noundef 422, ptr noundef @.str.38, ptr noundef @.str.31, ptr noundef %588, ptr noundef %589)
  br label %590

590:                                              ; preds = %580
  br label %591

591:                                              ; preds = %590
  store i32 1, ptr %3, align 4
  store i32 1, ptr %16, align 4
  br label %887

592:                                              ; preds = %574
  br label %593

593:                                              ; preds = %592
  br label %594

594:                                              ; preds = %593
  call void @llvm.lifetime.start.p0(i64 8, ptr %20) #6
  %595 = load ptr, ptr %7, align 8, !tbaa !5
  %596 = getelementptr inbounds %struct.TfLiteTensor, ptr %595, i32 0, i32 12
  %597 = getelementptr inbounds %struct.TfLiteQuantization, ptr %596, i32 0, i32 1
  %598 = load ptr, ptr %597, align 8, !tbaa !31
  store ptr %598, ptr %20, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 8, ptr %21) #6
  %599 = load ptr, ptr %8, align 8, !tbaa !5
  %600 = getelementptr inbounds %struct.TfLiteTensor, ptr %599, i32 0, i32 12
  %601 = getelementptr inbounds %struct.TfLiteQuantization, ptr %600, i32 0, i32 1
  %602 = load ptr, ptr %601, align 8, !tbaa !31
  store ptr %602, ptr %21, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 8, ptr %22) #6
  %603 = load ptr, ptr %11, align 8, !tbaa !5
  %604 = getelementptr inbounds %struct.TfLiteTensor, ptr %603, i32 0, i32 12
  %605 = getelementptr inbounds %struct.TfLiteQuantization, ptr %604, i32 0, i32 1
  %606 = load ptr, ptr %605, align 8, !tbaa !31
  store ptr %606, ptr %22, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 8, ptr %23) #6
  %607 = load ptr, ptr %9, align 8, !tbaa !5
  %608 = getelementptr inbounds %struct.TfLiteTensor, ptr %607, i32 0, i32 12
  %609 = getelementptr inbounds %struct.TfLiteQuantization, ptr %608, i32 0, i32 1
  %610 = load ptr, ptr %609, align 8, !tbaa !31
  store ptr %610, ptr %23, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 8, ptr %24) #6
  %611 = load ptr, ptr %19, align 8, !tbaa !5
  %612 = getelementptr inbounds %struct.TfLiteTensor, ptr %611, i32 0, i32 12
  %613 = getelementptr inbounds %struct.TfLiteQuantization, ptr %612, i32 0, i32 1
  %614 = load ptr, ptr %613, align 8, !tbaa !31
  store ptr %614, ptr %24, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 8, ptr %25) #6
  %615 = load ptr, ptr %20, align 8, !tbaa !5
  %616 = getelementptr inbounds %struct.TfLiteAffineQuantization, ptr %615, i32 0, i32 0
  %617 = load ptr, ptr %616, align 8, !tbaa !32
  %618 = getelementptr inbounds %struct.TfLiteFloatArray, ptr %617, i32 0, i32 1
  %619 = getelementptr inbounds [0 x float], ptr %618, i64 0, i64 0
  %620 = load float, ptr %619, align 4, !tbaa !34
  %621 = load ptr, ptr %21, align 8, !tbaa !5
  %622 = getelementptr inbounds %struct.TfLiteAffineQuantization, ptr %621, i32 0, i32 0
  %623 = load ptr, ptr %622, align 8, !tbaa !32
  %624 = getelementptr inbounds %struct.TfLiteFloatArray, ptr %623, i32 0, i32 1
  %625 = getelementptr inbounds [0 x float], ptr %624, i64 0, i64 0
  %626 = load float, ptr %625, align 4, !tbaa !34
  %627 = fmul float %620, %626
  %628 = load ptr, ptr %22, align 8, !tbaa !5
  %629 = getelementptr inbounds %struct.TfLiteAffineQuantization, ptr %628, i32 0, i32 0
  %630 = load ptr, ptr %629, align 8, !tbaa !32
  %631 = getelementptr inbounds %struct.TfLiteFloatArray, ptr %630, i32 0, i32 1
  %632 = getelementptr inbounds [0 x float], ptr %631, i64 0, i64 0
  %633 = load float, ptr %632, align 4, !tbaa !34
  %634 = fdiv float %627, %633
  %635 = fpext float %634 to double
  store double %635, ptr %25, align 8, !tbaa !35
  call void @llvm.lifetime.start.p0(i64 8, ptr %26) #6
  %636 = load ptr, ptr %22, align 8, !tbaa !5
  %637 = getelementptr inbounds %struct.TfLiteAffineQuantization, ptr %636, i32 0, i32 0
  %638 = load ptr, ptr %637, align 8, !tbaa !32
  %639 = getelementptr inbounds %struct.TfLiteFloatArray, ptr %638, i32 0, i32 1
  %640 = getelementptr inbounds [0 x float], ptr %639, i64 0, i64 0
  %641 = load float, ptr %640, align 4, !tbaa !34
  %642 = load ptr, ptr %23, align 8, !tbaa !5
  %643 = getelementptr inbounds %struct.TfLiteAffineQuantization, ptr %642, i32 0, i32 0
  %644 = load ptr, ptr %643, align 8, !tbaa !32
  %645 = getelementptr inbounds %struct.TfLiteFloatArray, ptr %644, i32 0, i32 1
  %646 = getelementptr inbounds [0 x float], ptr %645, i64 0, i64 0
  %647 = load float, ptr %646, align 4, !tbaa !34
  %648 = fmul float %641, %647
  %649 = load ptr, ptr %24, align 8, !tbaa !5
  %650 = getelementptr inbounds %struct.TfLiteAffineQuantization, ptr %649, i32 0, i32 0
  %651 = load ptr, ptr %650, align 8, !tbaa !32
  %652 = getelementptr inbounds %struct.TfLiteFloatArray, ptr %651, i32 0, i32 1
  %653 = getelementptr inbounds [0 x float], ptr %652, i64 0, i64 0
  %654 = load float, ptr %653, align 4, !tbaa !34
  %655 = fdiv float %648, %654
  %656 = fpext float %655 to double
  store double %656, ptr %26, align 8, !tbaa !35
  %657 = load ptr, ptr %5, align 8, !tbaa !5
  %658 = getelementptr inbounds %struct.TfLiteNode, ptr %657, i32 0, i32 4
  %659 = load ptr, ptr %658, align 8, !tbaa !37
  %660 = icmp ne ptr %659, null
  br i1 %660, label %661, label %662

661:                                              ; preds = %594
  br label %664

662:                                              ; preds = %594
  call void @abort() #5
  unreachable

663:                                              ; No predecessors!
  br label %664

664:                                              ; preds = %663, %661
  call void @llvm.lifetime.start.p0(i64 8, ptr %27) #6
  %665 = load ptr, ptr %5, align 8, !tbaa !5
  %666 = getelementptr inbounds %struct.TfLiteNode, ptr %665, i32 0, i32 4
  %667 = load ptr, ptr %666, align 8, !tbaa !37
  store ptr %667, ptr %27, align 8, !tbaa !5
  %668 = load double, ptr %25, align 8, !tbaa !35
  %669 = load ptr, ptr %27, align 8, !tbaa !5
  %670 = getelementptr inbounds %"struct.tflite::ops::micro::svdf::(anonymous namespace)::OpData", ptr %669, i32 0, i32 0
  %671 = load ptr, ptr %27, align 8, !tbaa !5
  %672 = getelementptr inbounds %"struct.tflite::ops::micro::svdf::(anonymous namespace)::OpData", ptr %671, i32 0, i32 2
  call void @_ZN6tflite18QuantizeMultiplierEdPiS0_(double noundef %668, ptr noundef %670, ptr noundef %672)
  %673 = load double, ptr %26, align 8, !tbaa !35
  %674 = load ptr, ptr %27, align 8, !tbaa !5
  %675 = getelementptr inbounds %"struct.tflite::ops::micro::svdf::(anonymous namespace)::OpData", ptr %674, i32 0, i32 1
  %676 = load ptr, ptr %27, align 8, !tbaa !5
  %677 = getelementptr inbounds %"struct.tflite::ops::micro::svdf::(anonymous namespace)::OpData", ptr %676, i32 0, i32 3
  call void @_ZN6tflite18QuantizeMultiplierEdPiS0_(double noundef %673, ptr noundef %675, ptr noundef %677)
  %678 = load ptr, ptr %4, align 8, !tbaa !5
  %679 = getelementptr inbounds %struct.TfLiteContext, ptr %678, i32 0, i32 16
  %680 = load ptr, ptr %679, align 8, !tbaa !38
  %681 = icmp ne ptr %680, null
  br i1 %681, label %682, label %683

682:                                              ; preds = %664
  br label %685

683:                                              ; preds = %664
  call void @abort() #5
  unreachable

684:                                              ; No predecessors!
  br label %685

685:                                              ; preds = %684, %682
  call void @llvm.lifetime.start.p0(i64 4, ptr %28) #6
  %686 = load ptr, ptr %4, align 8, !tbaa !5
  %687 = getelementptr inbounds %struct.TfLiteContext, ptr %686, i32 0, i32 16
  %688 = load ptr, ptr %687, align 8, !tbaa !38
  %689 = load ptr, ptr %4, align 8, !tbaa !5
  %690 = load i32, ptr %14, align 4, !tbaa !16
  %691 = load i32, ptr %15, align 4, !tbaa !16
  %692 = mul nsw i32 %690, %691
  %693 = sext i32 %692 to i64
  %694 = mul i64 %693, 4
  %695 = load ptr, ptr %27, align 8, !tbaa !5
  %696 = getelementptr inbounds %"struct.tflite::ops::micro::svdf::(anonymous namespace)::OpData", ptr %695, i32 0, i32 4
  %697 = call noundef i32 %688(ptr noundef %689, i64 noundef %694, ptr noundef %696)
  store i32 %697, ptr %28, align 4, !tbaa !39
  br label %698

698:                                              ; preds = %685
  call void @llvm.lifetime.start.p0(i64 4, ptr %29) #6
  %699 = load i32, ptr %28, align 4, !tbaa !39
  store i32 %699, ptr %29, align 4, !tbaa !39
  %700 = load i32, ptr %29, align 4, !tbaa !39
  %701 = icmp ne i32 %700, 0
  br i1 %701, label %702, label %704

702:                                              ; preds = %698
  %703 = load i32, ptr %29, align 4, !tbaa !39
  store i32 %703, ptr %3, align 4
  store i32 1, ptr %16, align 4
  br label %705

704:                                              ; preds = %698
  store i32 0, ptr %16, align 4
  br label %705

705:                                              ; preds = %704, %702
  call void @llvm.lifetime.end.p0(i64 4, ptr %29) #6
  %706 = load i32, ptr %16, align 4
  switch i32 %706, label %735 [
    i32 0, label %707
  ]

707:                                              ; preds = %705
  br label %708

708:                                              ; preds = %707
  br label %709

709:                                              ; preds = %708
  call void @llvm.lifetime.start.p0(i64 4, ptr %30) #6
  %710 = load ptr, ptr %4, align 8, !tbaa !5
  %711 = getelementptr inbounds %struct.TfLiteContext, ptr %710, i32 0, i32 16
  %712 = load ptr, ptr %711, align 8, !tbaa !38
  %713 = load ptr, ptr %4, align 8, !tbaa !5
  %714 = load i32, ptr %14, align 4, !tbaa !16
  %715 = load i32, ptr %17, align 4, !tbaa !16
  %716 = mul nsw i32 %714, %715
  %717 = sext i32 %716 to i64
  %718 = mul i64 %717, 4
  %719 = load ptr, ptr %27, align 8, !tbaa !5
  %720 = getelementptr inbounds %"struct.tflite::ops::micro::svdf::(anonymous namespace)::OpData", ptr %719, i32 0, i32 5
  %721 = call noundef i32 %712(ptr noundef %713, i64 noundef %718, ptr noundef %720)
  store i32 %721, ptr %30, align 4, !tbaa !39
  br label %722

722:                                              ; preds = %709
  call void @llvm.lifetime.start.p0(i64 4, ptr %31) #6
  %723 = load i32, ptr %30, align 4, !tbaa !39
  store i32 %723, ptr %31, align 4, !tbaa !39
  %724 = load i32, ptr %31, align 4, !tbaa !39
  %725 = icmp ne i32 %724, 0
  br i1 %725, label %726, label %728

726:                                              ; preds = %722
  %727 = load i32, ptr %31, align 4, !tbaa !39
  store i32 %727, ptr %3, align 4
  store i32 1, ptr %16, align 4
  br label %729

728:                                              ; preds = %722
  store i32 0, ptr %16, align 4
  br label %729

729:                                              ; preds = %728, %726
  call void @llvm.lifetime.end.p0(i64 4, ptr %31) #6
  %730 = load i32, ptr %16, align 4
  switch i32 %730, label %734 [
    i32 0, label %731
  ]

731:                                              ; preds = %729
  br label %732

732:                                              ; preds = %731
  br label %733

733:                                              ; preds = %732
  store i32 0, ptr %16, align 4
  br label %734

734:                                              ; preds = %733, %729
  call void @llvm.lifetime.end.p0(i64 4, ptr %30) #6
  br label %735

735:                                              ; preds = %734, %705
  call void @llvm.lifetime.end.p0(i64 4, ptr %28) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %27) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %26) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %25) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %24) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %23) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %22) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %21) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %20) #6
  %736 = load i32, ptr %16, align 4
  switch i32 %736, label %887 [
    i32 0, label %737
  ]

737:                                              ; preds = %735
  br label %886

738:                                              ; preds = %488
  br label %739

739:                                              ; preds = %738
  %740 = load ptr, ptr %8, align 8, !tbaa !5
  %741 = getelementptr inbounds %struct.TfLiteTensor, ptr %740, i32 0, i32 0
  %742 = load i32, ptr %741, align 8, !tbaa !28
  %743 = icmp ne i32 %742, 1
  br i1 %743, label %744, label %755

744:                                              ; preds = %739
  br label %745

745:                                              ; preds = %744
  %746 = load ptr, ptr %4, align 8, !tbaa !5
  %747 = getelementptr inbounds %struct.TfLiteContext, ptr %746, i32 0, i32 5
  %748 = load ptr, ptr %747, align 8, !tbaa !26
  %749 = load ptr, ptr %4, align 8, !tbaa !5
  %750 = load ptr, ptr %8, align 8, !tbaa !5
  %751 = getelementptr inbounds %struct.TfLiteTensor, ptr %750, i32 0, i32 0
  %752 = load i32, ptr %751, align 8, !tbaa !28
  call void (ptr, ptr, ...) %748(ptr noundef %749, ptr noundef @.str, ptr noundef @.str.1, i32 noundef 464, ptr noundef @.str.30, ptr noundef @.str.39, i32 noundef %752, i32 noundef 1)
  br label %753

753:                                              ; preds = %745
  br label %754

754:                                              ; preds = %753
  store i32 1, ptr %3, align 4
  store i32 1, ptr %16, align 4
  br label %887

755:                                              ; preds = %739
  br label %756

756:                                              ; preds = %755
  br label %757

757:                                              ; preds = %756
  br label %758

758:                                              ; preds = %757
  %759 = load ptr, ptr %9, align 8, !tbaa !5
  %760 = getelementptr inbounds %struct.TfLiteTensor, ptr %759, i32 0, i32 0
  %761 = load i32, ptr %760, align 8, !tbaa !28
  %762 = icmp ne i32 %761, 1
  br i1 %762, label %763, label %774

763:                                              ; preds = %758
  br label %764

764:                                              ; preds = %763
  %765 = load ptr, ptr %4, align 8, !tbaa !5
  %766 = getelementptr inbounds %struct.TfLiteContext, ptr %765, i32 0, i32 5
  %767 = load ptr, ptr %766, align 8, !tbaa !26
  %768 = load ptr, ptr %4, align 8, !tbaa !5
  %769 = load ptr, ptr %9, align 8, !tbaa !5
  %770 = getelementptr inbounds %struct.TfLiteTensor, ptr %769, i32 0, i32 0
  %771 = load i32, ptr %770, align 8, !tbaa !28
  call void (ptr, ptr, ...) %767(ptr noundef %768, ptr noundef @.str, ptr noundef @.str.1, i32 noundef 465, ptr noundef @.str.32, ptr noundef @.str.39, i32 noundef %771, i32 noundef 1)
  br label %772

772:                                              ; preds = %764
  br label %773

773:                                              ; preds = %772
  store i32 1, ptr %3, align 4
  store i32 1, ptr %16, align 4
  br label %887

774:                                              ; preds = %758
  br label %775

775:                                              ; preds = %774
  br label %776

776:                                              ; preds = %775
  br label %777

777:                                              ; preds = %776
  %778 = load ptr, ptr %11, align 8, !tbaa !5
  %779 = getelementptr inbounds %struct.TfLiteTensor, ptr %778, i32 0, i32 0
  %780 = load i32, ptr %779, align 8, !tbaa !28
  %781 = icmp ne i32 %780, 1
  br i1 %781, label %782, label %793

782:                                              ; preds = %777
  br label %783

783:                                              ; preds = %782
  %784 = load ptr, ptr %4, align 8, !tbaa !5
  %785 = getelementptr inbounds %struct.TfLiteContext, ptr %784, i32 0, i32 5
  %786 = load ptr, ptr %785, align 8, !tbaa !26
  %787 = load ptr, ptr %4, align 8, !tbaa !5
  %788 = load ptr, ptr %11, align 8, !tbaa !5
  %789 = getelementptr inbounds %struct.TfLiteTensor, ptr %788, i32 0, i32 0
  %790 = load i32, ptr %789, align 8, !tbaa !28
  call void (ptr, ptr, ...) %786(ptr noundef %787, ptr noundef @.str, ptr noundef @.str.1, i32 noundef 466, ptr noundef @.str.34, ptr noundef @.str.39, i32 noundef %790, i32 noundef 1)
  br label %791

791:                                              ; preds = %783
  br label %792

792:                                              ; preds = %791
  store i32 1, ptr %3, align 4
  store i32 1, ptr %16, align 4
  br label %887

793:                                              ; preds = %777
  br label %794

794:                                              ; preds = %793
  br label %795

795:                                              ; preds = %794
  %796 = load ptr, ptr %10, align 8, !tbaa !5
  %797 = icmp ne ptr %796, null
  br i1 %797, label %798, label %818

798:                                              ; preds = %795
  br label %799

799:                                              ; preds = %798
  %800 = load ptr, ptr %10, align 8, !tbaa !5
  %801 = getelementptr inbounds %struct.TfLiteTensor, ptr %800, i32 0, i32 0
  %802 = load i32, ptr %801, align 8, !tbaa !28
  %803 = icmp ne i32 %802, 1
  br i1 %803, label %804, label %815

804:                                              ; preds = %799
  br label %805

805:                                              ; preds = %804
  %806 = load ptr, ptr %4, align 8, !tbaa !5
  %807 = getelementptr inbounds %struct.TfLiteContext, ptr %806, i32 0, i32 5
  %808 = load ptr, ptr %807, align 8, !tbaa !26
  %809 = load ptr, ptr %4, align 8, !tbaa !5
  %810 = load ptr, ptr %10, align 8, !tbaa !5
  %811 = getelementptr inbounds %struct.TfLiteTensor, ptr %810, i32 0, i32 0
  %812 = load i32, ptr %811, align 8, !tbaa !28
  call void (ptr, ptr, ...) %808(ptr noundef %809, ptr noundef @.str, ptr noundef @.str.1, i32 noundef 468, ptr noundef @.str.35, ptr noundef @.str.39, i32 noundef %812, i32 noundef 1)
  br label %813

813:                                              ; preds = %805
  br label %814

814:                                              ; preds = %813
  store i32 1, ptr %3, align 4
  store i32 1, ptr %16, align 4
  br label %887

815:                                              ; preds = %799
  br label %816

816:                                              ; preds = %815
  br label %817

817:                                              ; preds = %816
  br label %818

818:                                              ; preds = %817, %795
  br label %819

819:                                              ; preds = %818
  %820 = load ptr, ptr %19, align 8, !tbaa !5
  %821 = getelementptr inbounds %struct.TfLiteTensor, ptr %820, i32 0, i32 0
  %822 = load i32, ptr %821, align 8, !tbaa !28
  %823 = icmp ne i32 %822, 1
  br i1 %823, label %824, label %837

824:                                              ; preds = %819
  br label %825

825:                                              ; preds = %824
  %826 = load ptr, ptr %4, align 8, !tbaa !5
  %827 = getelementptr inbounds %struct.TfLiteContext, ptr %826, i32 0, i32 5
  %828 = load ptr, ptr %827, align 8, !tbaa !26
  %829 = load ptr, ptr %4, align 8, !tbaa !5
  %830 = load ptr, ptr %19, align 8, !tbaa !5
  %831 = getelementptr inbounds %struct.TfLiteTensor, ptr %830, i32 0, i32 0
  %832 = load i32, ptr %831, align 8, !tbaa !28
  %833 = call ptr @TfLiteTypeGetName(i32 noundef %832)
  %834 = call ptr @TfLiteTypeGetName(i32 noundef 1)
  call void (ptr, ptr, ...) %828(ptr noundef %829, ptr noundef @.str.37, ptr noundef @.str.1, i32 noundef 470, ptr noundef @.str.38, ptr noundef @.str.39, ptr noundef %833, ptr noundef %834)
  br label %835

835:                                              ; preds = %825
  br label %836

836:                                              ; preds = %835
  store i32 1, ptr %3, align 4
  store i32 1, ptr %16, align 4
  br label %887

837:                                              ; preds = %819
  br label %838

838:                                              ; preds = %837
  br label %839

839:                                              ; preds = %838
  %840 = load ptr, ptr %5, align 8, !tbaa !5
  %841 = getelementptr inbounds %struct.TfLiteNode, ptr %840, i32 0, i32 4
  %842 = load ptr, ptr %841, align 8, !tbaa !37
  %843 = icmp ne ptr %842, null
  br i1 %843, label %844, label %845

844:                                              ; preds = %839
  br label %847

845:                                              ; preds = %839
  call void @abort() #5
  unreachable

846:                                              ; No predecessors!
  br label %847

847:                                              ; preds = %846, %844
  call void @llvm.lifetime.start.p0(i64 8, ptr %32) #6
  %848 = load ptr, ptr %5, align 8, !tbaa !5
  %849 = getelementptr inbounds %struct.TfLiteNode, ptr %848, i32 0, i32 4
  %850 = load ptr, ptr %849, align 8, !tbaa !37
  store ptr %850, ptr %32, align 8, !tbaa !5
  %851 = load ptr, ptr %4, align 8, !tbaa !5
  %852 = getelementptr inbounds %struct.TfLiteContext, ptr %851, i32 0, i32 16
  %853 = load ptr, ptr %852, align 8, !tbaa !38
  %854 = icmp ne ptr %853, null
  br i1 %854, label %855, label %856

855:                                              ; preds = %847
  br label %858

856:                                              ; preds = %847
  call void @abort() #5
  unreachable

857:                                              ; No predecessors!
  br label %858

858:                                              ; preds = %857, %855
  call void @llvm.lifetime.start.p0(i64 4, ptr %33) #6
  %859 = load ptr, ptr %4, align 8, !tbaa !5
  %860 = getelementptr inbounds %struct.TfLiteContext, ptr %859, i32 0, i32 16
  %861 = load ptr, ptr %860, align 8, !tbaa !38
  %862 = load ptr, ptr %4, align 8, !tbaa !5
  %863 = load i32, ptr %14, align 4, !tbaa !16
  %864 = load i32, ptr %15, align 4, !tbaa !16
  %865 = mul nsw i32 %863, %864
  %866 = sext i32 %865 to i64
  %867 = mul i64 %866, 4
  %868 = load ptr, ptr %32, align 8, !tbaa !5
  %869 = getelementptr inbounds %"struct.tflite::ops::micro::svdf::(anonymous namespace)::OpData", ptr %868, i32 0, i32 4
  %870 = call noundef i32 %861(ptr noundef %862, i64 noundef %867, ptr noundef %869)
  store i32 %870, ptr %33, align 4, !tbaa !39
  br label %871

871:                                              ; preds = %858
  call void @llvm.lifetime.start.p0(i64 4, ptr %34) #6
  %872 = load i32, ptr %33, align 4, !tbaa !39
  store i32 %872, ptr %34, align 4, !tbaa !39
  %873 = load i32, ptr %34, align 4, !tbaa !39
  %874 = icmp ne i32 %873, 0
  br i1 %874, label %875, label %877

875:                                              ; preds = %871
  %876 = load i32, ptr %34, align 4, !tbaa !39
  store i32 %876, ptr %3, align 4
  store i32 1, ptr %16, align 4
  br label %878

877:                                              ; preds = %871
  store i32 0, ptr %16, align 4
  br label %878

878:                                              ; preds = %877, %875
  call void @llvm.lifetime.end.p0(i64 4, ptr %34) #6
  %879 = load i32, ptr %16, align 4
  switch i32 %879, label %883 [
    i32 0, label %880
  ]

880:                                              ; preds = %878
  br label %881

881:                                              ; preds = %880
  br label %882

882:                                              ; preds = %881
  store i32 0, ptr %16, align 4
  br label %883

883:                                              ; preds = %882, %878
  call void @llvm.lifetime.end.p0(i64 4, ptr %33) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %32) #6
  %884 = load i32, ptr %16, align 4
  switch i32 %884, label %887 [
    i32 0, label %885
  ]

885:                                              ; preds = %883
  br label %886

886:                                              ; preds = %885, %737
  store i32 0, ptr %3, align 4
  store i32 1, ptr %16, align 4
  br label %887

887:                                              ; preds = %886, %883, %836, %814, %792, %773, %754, %735, %591, %569, %547, %528, %509, %485, %462, %431, %404, %386, %356, %329, %302, %285, %258, %241, %214, %187
  call void @llvm.lifetime.end.p0(i64 8, ptr %19) #6
  br label %888

888:                                              ; preds = %887, %167, %144, %127
  call void @llvm.lifetime.end.p0(i64 4, ptr %18) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %17) #6
  br label %889

889:                                              ; preds = %888, %97
  call void @llvm.lifetime.end.p0(i64 4, ptr %15) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %14) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %13) #6
  call void @llvm.lifetime.end.p0(i64 4, ptr %12) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %11) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %10) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %9) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %8) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %7) #6
  call void @llvm.lifetime.end.p0(i64 8, ptr %6) #6
  %890 = load i32, ptr %3, align 4
  ret i32 %890
}

; Function Attrs: inlinehint mustprogress nounwind uwtable
declare dso_local noundef ptr @_ZN6tflite8GetInputEPK13TfLiteContextPK10TfLiteNodei(ptr noundef, ptr noundef, i32 noundef) #3

; Function Attrs: inlinehint mustprogress nounwind uwtable
declare dso_local noundef ptr @_ZN6tflite22GetOptionalInputTensorEP13TfLiteContextPK10TfLiteNodei(ptr noundef, ptr noundef, i32 noundef) #3

; Function Attrs: inlinehint mustprogress nounwind uwtable
declare dso_local noundef i32 @_ZN6tflite13NumDimensionsEPK12TfLiteTensor(ptr noundef) #3

; Function Attrs: inlinehint mustprogress nounwind uwtable
declare dso_local noundef ptr @_ZN6tflite9GetOutputEP13TfLiteContextPK10TfLiteNodei(ptr noundef, ptr noundef, i32 noundef) #3

declare ptr @TfLiteTypeGetName(i32 noundef) #4

declare void @_ZN6tflite18QuantizeMultiplierEdPiS0_(double noundef, ptr noundef, ptr noundef) #4

attributes #0 = { noreturn 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 #1 = { nocallback nofree nosync nounwind willreturn memory(argmem: readwrite) }
attributes #2 = { 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 #3 = { inlinehint 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 #4 = { "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 = { noreturn nounwind }
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 = !{!"any pointer", !7, i64 0}
!7 = !{!"omnipotent char", !8, i64 0}
!8 = !{!"Simple C++ TBAA"}
!9 = !{!10, !6, i64 40}
!10 = !{!"_ZTS10TfLiteNode", !6, i64 0, !6, i64 8, !6, i64 16, !6, i64 24, !6, i64 32, !6, i64 40, !6, i64 48, !11, i64 56, !6, i64 64}
!11 = !{!"int", !7, i64 0}
!12 = !{!13, !11, i64 0}
!13 = !{!"_ZTS16TfLiteSVDFParams", !11, i64 0, !14, i64 4, !15, i64 8}
!14 = !{!"_ZTS21TfLiteFusedActivation", !7, i64 0}
!15 = !{!"bool", !7, i64 0}
!16 = !{!11, !11, i64 0}
!17 = !{!18, !6, i64 16}
!18 = !{!"_ZTS12TfLiteTensor", !19, i64 0, !7, i64 8, !6, i64 16, !20, i64 24, !22, i64 32, !23, i64 40, !6, i64 48, !6, i64 56, !6, i64 64, !11, i64 72, !15, i64 76, !15, i64 77, !24, i64 80, !6, i64 96, !6, i64 104}
!19 = !{!"_ZTS10TfLiteType", !7, i64 0}
!20 = !{!"_ZTS24TfLiteQuantizationParams", !21, i64 0, !11, i64 4}
!21 = !{!"float", !7, i64 0}
!22 = !{!"_ZTS20TfLiteAllocationType", !7, i64 0}
!23 = !{!"long", !7, i64 0}
!24 = !{!"_ZTS18TfLiteQuantization", !25, i64 0, !6, i64 8}
!25 = !{!"_ZTS22TfLiteQuantizationType", !7, i64 0}
!26 = !{!27, !6, i64 40}
!27 = !{!"_ZTS13TfLiteContext", !23, i64 0, !6, i64 8, !6, i64 16, !6, i64 24, !6, i64 32, !6, i64 40, !6, i64 48, !6, i64 56, !6, i64 64, !11, i64 72, !6, i64 80, !6, i64 88, !15, i64 96, !6, i64 104, !6, i64 112, !6, i64 120, !6, i64 128, !6, i64 136, !6, i64 144, !6, i64 152}
!28 = !{!18, !19, i64 0}
!29 = !{!10, !6, i64 8}
!30 = !{!10, !6, i64 0}
!31 = !{!18, !6, i64 88}
!32 = !{!33, !6, i64 0}
!33 = !{!"_ZTS24TfLiteAffineQuantization", !6, i64 0, !6, i64 8, !11, i64 16}
!34 = !{!21, !21, i64 0}
!35 = !{!36, !36, i64 0}
!36 = !{!"double", !7, i64 0}
!37 = !{!10, !6, i64 32}
!38 = !{!27, !6, i64 128}
!39 = !{!40, !40, i64 0}
!40 = !{!"_ZTS12TfLiteStatus", !7, i64 0}


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

@.str = external hidden unnamed_addr constant [26 x i8], align 1
@.str.1 = external hidden unnamed_addr constant [132 x i8], align 1
@.str.2 = external hidden unnamed_addr constant [19 x i8], align 1
@.str.3 = external hidden unnamed_addr constant [2 x i8], align 1
@.str.4 = external hidden unnamed_addr constant [23 x i8], align 1
@.str.5 = external hidden unnamed_addr constant [60 x i8], align 1
@.str.6 = external hidden unnamed_addr constant [21 x i8], align 1
@.str.7 = external hidden unnamed_addr constant [2 x i8], align 1
@.str.8 = external hidden unnamed_addr constant [20 x i8], align 1
@.str.9 = external hidden unnamed_addr constant [2 x i8], align 1
@.str.10 = external hidden unnamed_addr constant [22 x i8], align 1
@.str.11 = external hidden unnamed_addr constant [22 x i8], align 1
@.str.12 = external hidden unnamed_addr constant [11 x i8], align 1
@.str.13 = external hidden unnamed_addr constant [22 x i8], align 1
@.str.14 = external hidden unnamed_addr constant [10 x i8], align 1
@.str.15 = external hidden unnamed_addr constant [31 x i8], align 1
@.str.16 = external hidden unnamed_addr constant [31 x i8], align 1
@.str.17 = external hidden unnamed_addr constant [11 x i8], align 1
@.str.18 = external hidden unnamed_addr constant [28 x i8], align 1
@.str.19 = external hidden unnamed_addr constant [28 x i8], align 1
@.str.20 = external hidden unnamed_addr constant [12 x i8], align 1
@.str.21 = external hidden unnamed_addr constant [28 x i8], align 1
@.str.22 = external hidden unnamed_addr constant [12 x i8], align 1
@.str.23 = external hidden unnamed_addr constant [20 x i8], align 1
@.str.24 = external hidden unnamed_addr constant [32 x i8], align 1
@.str.25 = external hidden unnamed_addr constant [32 x i8], align 1
@.str.26 = external hidden unnamed_addr constant [32 x i8], align 1
@.str.27 = external hidden unnamed_addr constant [26 x i8], align 1
@.str.28 = external hidden unnamed_addr constant [19 x i8], align 1
@.str.29 = external hidden unnamed_addr constant [2 x i8], align 1
@.str.30 = external hidden unnamed_addr constant [22 x i8], align 1
@.str.31 = external hidden unnamed_addr constant [12 x i8], align 1
@.str.32 = external hidden unnamed_addr constant [19 x i8], align 1
@.str.33 = external hidden unnamed_addr constant [13 x i8], align 1
@.str.34 = external hidden unnamed_addr constant [23 x i8], align 1
@.str.35 = external hidden unnamed_addr constant [11 x i8], align 1
@.str.36 = external hidden unnamed_addr constant [13 x i8], align 1
@.str.37 = external hidden unnamed_addr constant [26 x i8], align 1
@.str.38 = external hidden unnamed_addr constant [13 x i8], align 1
@.str.39 = external hidden unnamed_addr constant [15 x i8], align 1

; Function Attrs: noreturn nounwind
declare void @abort() local_unnamed_addr #0

; Function Attrs: mustprogress uwtable
define dso_local noundef i32 @_ZN6tflite3ops5micro4svdf7PrepareEP13TfLiteContextP10TfLiteNode(ptr noundef %0, ptr noundef %1) local_unnamed_addr #1 {
  %3 = getelementptr inbounds i8, ptr %1, i64 40
  %4 = load ptr, ptr %3, align 8, !tbaa !5
  %.not = icmp eq ptr %4, null
  br i1 %.not, label %5, label %6

5:                                                ; preds = %2
  tail call void @abort() #4
  unreachable

6:                                                ; preds = %2
  %7 = tail call noundef ptr @_ZN6tflite8GetInputEPK13TfLiteContextPK10TfLiteNodei(ptr noundef %0, ptr noundef nonnull %1, i32 noundef 0)
  %8 = tail call noundef ptr @_ZN6tflite8GetInputEPK13TfLiteContextPK10TfLiteNodei(ptr noundef %0, ptr noundef nonnull %1, i32 noundef 1)
  %9 = tail call noundef ptr @_ZN6tflite8GetInputEPK13TfLiteContextPK10TfLiteNodei(ptr noundef %0, ptr noundef nonnull %1, i32 noundef 2)
  %10 = tail call noundef ptr @_ZN6tflite22GetOptionalInputTensorEP13TfLiteContextPK10TfLiteNodei(ptr noundef %0, ptr noundef nonnull %1, i32 noundef 3)
  %11 = tail call noundef ptr @_ZN6tflite8GetInputEPK13TfLiteContextPK10TfLiteNodei(ptr noundef %0, ptr noundef nonnull %1, i32 noundef 4)
  %12 = load i32, ptr %4, align 4, !tbaa !11
  %13 = getelementptr inbounds i8, ptr %7, i64 16
  %14 = load ptr, ptr %13, align 8, !tbaa !15
  %15 = getelementptr inbounds i8, ptr %14, i64 4
  %16 = getelementptr inbounds i8, ptr %14, i64 8
  %17 = load i32, ptr %16, align 4, !tbaa !24
  %18 = load i32, ptr %15, align 4, !tbaa !24
  %19 = getelementptr inbounds i8, ptr %8, i64 16
  %20 = load ptr, ptr %19, align 8, !tbaa !15
  %21 = getelementptr inbounds i8, ptr %20, i64 4
  %22 = load i32, ptr %21, align 4, !tbaa !24
  %23 = srem i32 %22, %12
  %24 = sdiv i32 %22, %12
  %.not254 = icmp eq i32 %23, 0
  br i1 %.not254, label %28, label %25

25:                                               ; preds = %6
  %26 = getelementptr inbounds i8, ptr %0, i64 40
  %27 = load ptr, ptr %26, align 8, !tbaa !25
  tail call void (ptr, ptr, ...) %27(ptr noundef %0, ptr noundef nonnull @.str, ptr noundef nonnull @.str.1, i32 noundef 375, ptr noundef nonnull @.str.2, ptr noundef nonnull @.str.3, i32 noundef %23, i32 noundef 0)
  br label %.thread

28:                                               ; preds = %6
  %29 = getelementptr inbounds i8, ptr %9, i64 16
  %30 = load ptr, ptr %29, align 8, !tbaa !15
  %31 = getelementptr inbounds i8, ptr %30, i64 8
  %32 = load i32, ptr %31, align 4, !tbaa !24
  %33 = load i32, ptr %7, align 8, !tbaa !27
  switch i32 %33, label %34 [
    i32 1, label %37
    i32 9, label %37
  ]

34:                                               ; preds = %28
  %35 = getelementptr inbounds i8, ptr %0, i64 40
  %36 = load ptr, ptr %35, align 8, !tbaa !25
  tail call void (ptr, ptr, ...) %36(ptr noundef %0, ptr noundef nonnull @.str.4, ptr noundef nonnull @.str.1, i32 noundef 381, ptr noundef nonnull @.str.5)
  br label %.thread

37:                                               ; preds = %28, %28
  %38 = tail call noundef i32 @_ZN6tflite13NumDimensionsEPK12TfLiteTensor(ptr noundef nonnull %7)
  %.not255 = icmp eq i32 %38, 2
  br i1 %.not255, label %43, label %39

39:                                               ; preds = %37
  %40 = getelementptr inbounds i8, ptr %0, i64 40
  %41 = load ptr, ptr %40, align 8, !tbaa !25
  %42 = tail call noundef i32 @_ZN6tflite13NumDimensionsEPK12TfLiteTensor(ptr noundef nonnull %7)
  tail call void (ptr, ptr, ...) %41(ptr noundef %0, ptr noundef nonnull @.str, ptr noundef nonnull @.str.1, i32 noundef 382, ptr noundef nonnull @.str.6, ptr noundef nonnull @.str.7, i32 noundef %42, i32 noundef 2)
  br label %.thread

43:                                               ; preds = %37
  %44 = getelementptr inbounds i8, ptr %1, i64 8
  %45 = load ptr, ptr %44, align 8, !tbaa !28
  %46 = load i32, ptr %45, align 4, !tbaa !24
  %.not256 = icmp eq i32 %46, 1
  br i1 %.not256, label %50, label %47

47:                                               ; preds = %43
  %48 = getelementptr inbounds i8, ptr %0, i64 40
  %49 = load ptr, ptr %48, align 8, !tbaa !25
  tail call void (ptr, ptr, ...) %49(ptr noundef %0, ptr noundef nonnull @.str, ptr noundef nonnull @.str.1, i32 noundef 386, ptr noundef nonnull @.str.8, ptr noundef nonnull @.str.9, i32 noundef %46, i32 noundef 1)
  br label %.thread

50:                                               ; preds = %43
  %51 = tail call noundef ptr @_ZN6tflite9GetOutputEP13TfLiteContextPK10TfLiteNodei(ptr noundef %0, ptr noundef nonnull %1, i32 noundef 0)
  %52 = tail call noundef i32 @_ZN6tflite13NumDimensionsEPK12TfLiteTensor(ptr noundef %51)
  %.not257 = icmp eq i32 %52, 2
  br i1 %.not257, label %57, label %53

53:                                               ; preds = %50
  %54 = getelementptr inbounds i8, ptr %0, i64 40
  %55 = load ptr, ptr %54, align 8, !tbaa !25
  %56 = tail call noundef i32 @_ZN6tflite13NumDimensionsEPK12TfLiteTensor(ptr noundef %51)
  tail call void (ptr, ptr, ...) %55(ptr noundef %0, ptr noundef nonnull @.str, ptr noundef nonnull @.str.1, i32 noundef 388, ptr noundef nonnull @.str.10, ptr noundef nonnull @.str.7, i32 noundef %56, i32 noundef 2)
  br label %.thread

57:                                               ; preds = %50
  %58 = getelementptr inbounds i8, ptr %51, i64 16
  %59 = load ptr, ptr %58, align 8, !tbaa !15
  %60 = getelementptr inbounds i8, ptr %59, i64 4
  %61 = load i32, ptr %60, align 4, !tbaa !24
  %.not258 = icmp eq i32 %61, %18
  br i1 %.not258, label %65, label %62

62:                                               ; preds = %57
  %63 = getelementptr inbounds i8, ptr %0, i64 40
  %64 = load ptr, ptr %63, align 8, !tbaa !25
  tail call void (ptr, ptr, ...) %64(ptr noundef %0, ptr noundef nonnull @.str, ptr noundef nonnull @.str.1, i32 noundef 389, ptr noundef nonnull @.str.11, ptr noundef nonnull @.str.12, i32 noundef %61, i32 noundef %18)
  br label %.thread

65:                                               ; preds = %57
  %66 = getelementptr inbounds i8, ptr %59, i64 8
  %67 = load i32, ptr %66, align 4, !tbaa !24
  %.not259 = icmp eq i32 %67, %24
  br i1 %.not259, label %71, label %68

68:                                               ; preds = %65
  %69 = getelementptr inbounds i8, ptr %0, i64 40
  %70 = load ptr, ptr %69, align 8, !tbaa !25
  tail call void (ptr, ptr, ...) %70(ptr noundef %0, ptr noundef nonnull @.str, ptr noundef nonnull @.str.1, i32 noundef 390, ptr noundef nonnull @.str.13, ptr noundef nonnull @.str.14, i32 noundef %67, i32 noundef %24)
  br label %.thread

71:                                               ; preds = %65
  %72 = tail call noundef i32 @_ZN6tflite13NumDimensionsEPK12TfLiteTensor(ptr noundef nonnull %8)
  %.not260 = icmp eq i32 %72, 2
  br i1 %.not260, label %77, label %73

73:                                               ; preds = %71
  %74 = getelementptr inbounds i8, ptr %0, i64 40
  %75 = load ptr, ptr %74, align 8, !tbaa !25
  %76 = tail call noundef i32 @_ZN6tflite13NumDimensionsEPK12TfLiteTensor(ptr noundef nonnull %8)
  tail call void (ptr, ptr, ...) %75(ptr noundef %0, ptr noundef nonnull @.str, ptr noundef nonnull @.str.1, i32 noundef 393, ptr noundef nonnull @.str.15, ptr noundef nonnull @.str.7, i32 noundef %76, i32 noundef 2)
  br label %.thread

77:                                               ; preds = %71
  %78 = load ptr, ptr %19, align 8, !tbaa !15
  %79 = getelementptr inbounds i8, ptr %78, i64 8
  %80 = load i32, ptr %79, align 4, !tbaa !24
  %.not261 = icmp eq i32 %80, %17
  br i1 %.not261, label %84, label %81

81:                                               ; preds = %77
  %82 = getelementptr inbounds i8, ptr %0, i64 40
  %83 = load ptr, ptr %82, align 8, !tbaa !25
  tail call void (ptr, ptr, ...) %83(ptr noundef %0, ptr noundef nonnull @.str, ptr noundef nonnull @.str.1, i32 noundef 394, ptr noundef nonnull @.str.16, ptr noundef nonnull @.str.17, i32 noundef %80, i32 noundef %17)
  br label %.thread

84:                                               ; preds = %77
  %85 = tail call noundef i32 @_ZN6tflite13NumDimensionsEPK12TfLiteTensor(ptr noundef nonnull %9)
  %.not262 = icmp eq i32 %85, 2
  br i1 %.not262, label %90, label %86

86:                                               ; preds = %84
  %87 = getelementptr inbounds i8, ptr %0, i64 40
  %88 = load ptr, ptr %87, align 8, !tbaa !25
  %89 = tail call noundef i32 @_ZN6tflite13NumDimensionsEPK12TfLiteTensor(ptr noundef nonnull %9)
  tail call void (ptr, ptr, ...) %88(ptr noundef %0, ptr noundef nonnull @.str, ptr noundef nonnull @.str.1, i32 noundef 397, ptr noundef nonnull @.str.18, ptr noundef nonnull @.str.7, i32 noundef %89, i32 noundef 2)
  br label %.thread

90:                                               ; preds = %84
  %91 = load ptr, ptr %29, align 8, !tbaa !15
  %92 = getelementptr inbounds i8, ptr %91, i64 4
  %93 = load i32, ptr %92, align 4, !tbaa !24
  %.not263 = icmp eq i32 %93, %22
  br i1 %.not263, label %97, label %94

94:                                               ; preds = %90
  %95 = getelementptr inbounds i8, ptr %0, i64 40
  %96 = load ptr, ptr %95, align 8, !tbaa !25
  tail call void (ptr, ptr, ...) %96(ptr noundef %0, ptr noundef nonnull @.str, ptr noundef nonnull @.str.1, i32 noundef 398, ptr noundef nonnull @.str.19, ptr noundef nonnull @.str.20, i32 noundef %93, i32 noundef %22)
  br label %.thread

97:                                               ; preds = %90
  %98 = getelementptr inbounds i8, ptr %91, i64 8
  %99 = load i32, ptr %98, align 4, !tbaa !24
  %.not264 = icmp eq i32 %99, %32
  br i1 %.not264, label %103, label %100

100:                                              ; preds = %97
  %101 = getelementptr inbounds i8, ptr %0, i64 40
  %102 = load ptr, ptr %101, align 8, !tbaa !25
  tail call void (ptr, ptr, ...) %102(ptr noundef %0, ptr noundef nonnull @.str, ptr noundef nonnull @.str.1, i32 noundef 399, ptr noundef nonnull @.str.21, ptr noundef nonnull @.str.22, i32 noundef %99, i32 noundef %32)
  br label %.thread

103:                                              ; preds = %97
  %.not265 = icmp eq ptr %10, null
  br i1 %.not265, label %112, label %104

104:                                              ; preds = %103
  %105 = getelementptr inbounds i8, ptr %10, i64 16
  %106 = load ptr, ptr %105, align 8, !tbaa !15
  %107 = getelementptr inbounds i8, ptr %106, i64 4
  %108 = load i32, ptr %107, align 4, !tbaa !24
  %.not266 = icmp eq i32 %108, %24
  br i1 %.not266, label %112, label %109

109:                                              ; preds = %104
  %110 = getelementptr inbounds i8, ptr %0, i64 40
  %111 = load ptr, ptr %110, align 8, !tbaa !25
  tail call void (ptr, ptr, ...) %111(ptr noundef %0, ptr noundef nonnull @.str, ptr noundef nonnull @.str.1, i32 noundef 403, ptr noundef nonnull @.str.23, ptr noundef nonnull @.str.14, i32 noundef %108, i32 noundef %24)
  br label %.thread

112:                                              ; preds = %103, %104
  %113 = tail call noundef i32 @_ZN6tflite13NumDimensionsEPK12TfLiteTensor(ptr noundef %11)
  %.not267 = icmp eq i32 %113, 2
  br i1 %.not267, label %118, label %114

114:                                              ; preds = %112
  %115 = getelementptr inbounds i8, ptr %0, i64 40
  %116 = load ptr, ptr %115, align 8, !tbaa !25
  %117 = tail call noundef i32 @_ZN6tflite13NumDimensionsEPK12TfLiteTensor(ptr noundef %11)
  tail call void (ptr, ptr, ...) %116(ptr noundef %0, ptr noundef nonnull @.str, ptr noundef nonnull @.str.1, i32 noundef 407, ptr noundef nonnull @.str.24, ptr noundef nonnull @.str.7, i32 noundef %117, i32 noundef 2)
  br label %.thread

118:                                              ; preds = %112
  %119 = getelementptr inbounds i8, ptr %11, i64 16
  %120 = load ptr, ptr %119, align 8, !tbaa !15
  %121 = getelementptr inbounds i8, ptr %120, i64 4
  %122 = load i32, ptr %121, align 4, !tbaa !24
  %.not268 = icmp eq i32 %122, %18
  br i1 %.not268, label %126, label %123

123:                                              ; preds = %118
  %124 = getelementptr inbounds i8, ptr %0, i64 40
  %125 = load ptr, ptr %124, align 8, !tbaa !25
  tail call void (ptr, ptr, ...) %125(ptr noundef %0, ptr noundef nonnull @.str, ptr noundef nonnull @.str.1, i32 noundef 408, ptr noundef nonnull @.str.25, ptr noundef nonnull @.str.12, i32 noundef %122, i32 noundef %18)
  br label %.thread

126:                                              ; preds = %118
  %127 = getelementptr inbounds i8, ptr %120, i64 8
  %128 = load i32, ptr %127, align 4, !tbaa !24
  %129 = mul nsw i32 %32, %22
  %.not269 = icmp eq i32 %128, %129
  br i1 %.not269, label %133, label %130

130:                                              ; preds = %126
  %131 = getelementptr inbounds i8, ptr %0, i64 40
  %132 = load ptr, ptr %131, align 8, !tbaa !25
  tail call void (ptr, ptr, ...) %132(ptr noundef %0, ptr noundef nonnull @.str, ptr noundef nonnull @.str.1, i32 noundef 410, ptr noundef nonnull @.str.26, ptr noundef nonnull @.str.27, i32 noundef %128, i32 noundef %129)
  br label %.thread

133:                                              ; preds = %126
  %134 = load ptr, ptr %1, align 8, !tbaa !29
  %135 = load i32, ptr %134, align 4, !tbaa !24
  %.not270 = icmp eq i32 %135, 5
  br i1 %.not270, label %139, label %136

136:                                              ; preds = %133
  %137 = getelementptr inbounds i8, ptr %0, i64 40
  %138 = load ptr, ptr %137, align 8, !tbaa !25
  tail call void (ptr, ptr, ...) %138(ptr noundef %0, ptr noundef nonnull @.str, ptr noundef nonnull @.str.1, i32 noundef 412, ptr noundef nonnull @.str.28, ptr noundef nonnull @.str.29, i32 noundef %135, i32 noundef 5)
  br label %.thread

139:                                              ; preds = %133
  %140 = load i32, ptr %7, align 8, !tbaa !27
  %141 = icmp eq i32 %140, 9
  %142 = load i32, ptr %8, align 8, !tbaa !27
  br i1 %141, label %143, label %225

143:                                              ; preds = %139
  %.not279 = icmp eq i32 %142, 9
  br i1 %.not279, label %147, label %144

144:                                              ; preds = %143
  %145 = getelementptr inbounds i8, ptr %0, i64 40
  %146 = load ptr, ptr %145, align 8, !tbaa !25
  tail call void (ptr, ptr, ...) %146(ptr noundef %0, ptr noundef nonnull @.str, ptr noundef nonnull @.str.1, i32 noundef 415, ptr noundef nonnull @.str.30, ptr noundef nonnull @.str.31, i32 noundef %142, i32 noundef 9)
  br label %.thread

147:                                              ; preds = %143
  %148 = load i32, ptr %9, align 8, !tbaa !27
  %.not280 = icmp eq i32 %148, 7
  br i1 %.not280, label %152, label %149

149:                                              ; preds = %147
  %150 = getelementptr inbounds i8, ptr %0, i64 40
  %151 = load ptr, ptr %150, align 8, !tbaa !25
  tail call void (ptr, ptr, ...) %151(ptr noundef %0, ptr noundef nonnull @.str, ptr noundef nonnull @.str.1, i32 noundef 416, ptr noundef nonnull @.str.32, ptr noundef nonnull @.str.33, i32 noundef %148, i32 noundef 7)
  br label %.thread

152:                                              ; preds = %147
  %153 = load i32, ptr %11, align 8, !tbaa !27
  %.not281 = icmp eq i32 %153, 7
  br i1 %.not281, label %157, label %154

154:                                              ; preds = %152
  %155 = getelementptr inbounds i8, ptr %0, i64 40
  %156 = load ptr, ptr %155, align 8, !tbaa !25
  tail call void (ptr, ptr, ...) %156(ptr noundef %0, ptr noundef nonnull @.str, ptr noundef nonnull @.str.1, i32 noundef 417, ptr noundef nonnull @.str.34, ptr noundef nonnull @.str.33, i32 noundef %153, i32 noundef 7)
  br label %.thread

157:                                              ; preds = %152
  br i1 %.not265, label %163, label %158

158:                                              ; preds = %157
  %159 = load i32, ptr %10, align 8, !tbaa !27
  %.not282 = icmp eq i32 %159, 2
  br i1 %.not282, label %163, label %160

160:                                              ; preds = %158
  %161 = getelementptr inbounds i8, ptr %0, i64 40
  %162 = load ptr, ptr %161, align 8, !tbaa !25
  tail call void (ptr, ptr, ...) %162(ptr noundef %0, ptr noundef nonnull @.str, ptr noundef nonnull @.str.1, i32 noundef 419, ptr noundef nonnull @.str.35, ptr noundef nonnull @.str.36, i32 noundef %159, i32 noundef 2)
  br label %.thread

163:                                              ; preds = %157, %158
  %164 = load i32, ptr %51, align 8, !tbaa !27
  %.not283 = icmp eq i32 %164, 9
  br i1 %.not283, label %170, label %165

165:                                              ; preds = %163
  %166 = getelementptr inbounds i8, ptr %0, i64 40
  %167 = load ptr, ptr %166, align 8, !tbaa !25
  %168 = tail call ptr @TfLiteTypeGetName(i32 noundef %164)
  %169 = tail call ptr @TfLiteTypeGetName(i32 noundef 9)
  tail call void (ptr, ptr, ...) %167(ptr noundef %0, ptr noundef nonnull @.str.37, ptr noundef nonnull @.str.1, i32 noundef 422, ptr noundef nonnull @.str.38, ptr noundef nonnull @.str.31, ptr noundef %168, ptr noundef %169)
  br label %.thread

170:                                              ; preds = %163
  %171 = getelementptr inbounds i8, ptr %1, i64 32
  %172 = load ptr, ptr %171, align 8, !tbaa !30
  %.not284 = icmp eq ptr %172, null
  br i1 %.not284, label %173, label %174

173:                                              ; preds = %170
  tail call void @abort() #4
  unreachable

174:                                              ; preds = %170
  %175 = getelementptr inbounds i8, ptr %11, i64 88
  %176 = load ptr, ptr %175, align 8, !tbaa !31
  %177 = load ptr, ptr %176, align 8, !tbaa !32
  %178 = getelementptr inbounds i8, ptr %177, i64 4
  %179 = load float, ptr %178, align 4, !tbaa !34
  %180 = getelementptr inbounds i8, ptr %9, i64 88
  %181 = load ptr, ptr %180, align 8, !tbaa !31
  %182 = load ptr, ptr %181, align 8, !tbaa !32
  %183 = getelementptr inbounds i8, ptr %182, i64 4
  %184 = load float, ptr %183, align 4, !tbaa !34
  %185 = fmul float %179, %184
  %186 = getelementptr inbounds i8, ptr %51, i64 88
  %187 = load ptr, ptr %186, align 8, !tbaa !31
  %188 = load ptr, ptr %187, align 8, !tbaa !32
  %189 = getelementptr inbounds i8, ptr %188, i64 4
  %190 = load float, ptr %189, align 4, !tbaa !34
  %191 = fdiv float %185, %190
  %192 = fpext float %191 to double
  %193 = getelementptr inbounds i8, ptr %7, i64 88
  %194 = load ptr, ptr %193, align 8, !tbaa !31
  %195 = load ptr, ptr %194, align 8, !tbaa !32
  %196 = getelementptr inbounds i8, ptr %195, i64 4
  %197 = load float, ptr %196, align 4, !tbaa !34
  %198 = getelementptr inbounds i8, ptr %8, i64 88
  %199 = load ptr, ptr %198, align 8, !tbaa !31
  %200 = load ptr, ptr %199, align 8, !tbaa !32
  %201 = getelementptr inbounds i8, ptr %200, i64 4
  %202 = load float, ptr %201, align 4, !tbaa !34
  %203 = fmul float %197, %202
  %204 = fdiv float %203, %179
  %205 = fpext float %204 to double
  %206 = getelementptr inbounds i8, ptr %172, i64 8
  tail call void @_ZN6tflite18QuantizeMultiplierEdPiS0_(double noundef %205, ptr noundef nonnull %172, ptr noundef nonnull %206)
  %207 = getelementptr inbounds i8, ptr %172, i64 4
  %208 = getelementptr inbounds i8, ptr %172, i64 12
  tail call void @_ZN6tflite18QuantizeMultiplierEdPiS0_(double noundef %192, ptr noundef nonnull %207, ptr noundef nonnull %208)
  %209 = getelementptr inbounds i8, ptr %0, i64 128
  %210 = load ptr, ptr %209, align 8, !tbaa !35
  %.not285 = icmp eq ptr %210, null
  br i1 %.not285, label %211, label %212

211:                                              ; preds = %174
  tail call void @abort() #4
  unreachable

212:                                              ; preds = %174
  %213 = mul nsw i32 %22, %18
  %214 = sext i32 %213 to i64
  %215 = shl nsw i64 %214, 2
  %216 = getelementptr inbounds i8, ptr %172, i64 16
  %217 = tail call noundef i32 %210(ptr noundef nonnull %0, i64 noundef %215, ptr noundef nonnull %216)
  %.not286 = icmp eq i32 %217, 0
  br i1 %.not286, label %218, label %.thread

218:                                              ; preds = %212
  %219 = load ptr, ptr %209, align 8, !tbaa !35
  %220 = mul nsw i32 %24, %18
  %221 = sext i32 %220 to i64
  %222 = shl nsw i64 %221, 2
  %223 = getelementptr inbounds i8, ptr %172, i64 20
  %224 = tail call noundef i32 %219(ptr noundef nonnull %0, i64 noundef %222, ptr noundef nonnull %223)
  %.not287 = icmp eq i32 %224, 0
  br i1 %.not287, label %266, label %.thread

225:                                              ; preds = %139
  %.not271 = icmp eq i32 %142, 1
  br i1 %.not271, label %229, label %226

226:                                              ; preds = %225
  %227 = getelementptr inbounds i8, ptr %0, i64 40
  %228 = load ptr, ptr %227, align 8, !tbaa !25
  tail call void (ptr, ptr, ...) %228(ptr noundef %0, ptr noundef nonnull @.str, ptr noundef nonnull @.str.1, i32 noundef 464, ptr noundef nonnull @.str.30, ptr noundef nonnull @.str.39, i32 noundef %142, i32 noundef 1)
  br label %.thread

229:                                              ; preds = %225
  %230 = load i32, ptr %9, align 8, !tbaa !27
  %.not272 = icmp eq i32 %230, 1
  br i1 %.not272, label %234, label %231

231:                                              ; preds = %229
  %232 = getelementptr inbounds i8, ptr %0, i64 40
  %233 = load ptr, ptr %232, align 8, !tbaa !25
  tail call void (ptr, ptr, ...) %233(ptr noundef %0, ptr noundef nonnull @.str, ptr noundef nonnull @.str.1, i32 noundef 465, ptr noundef nonnull @.str.32, ptr noundef nonnull @.str.39, i32 noundef %230, i32 noundef 1)
  br label %.thread

234:                                              ; preds = %229
  %235 = load i32, ptr %11, align 8, !tbaa !27
  %.not273 = icmp eq i32 %235, 1
  br i1 %.not273, label %239, label %236

236:                                              ; preds = %234
  %237 = getelementptr inbounds i8, ptr %0, i64 40
  %238 = load ptr, ptr %237, align 8, !tbaa !25
  tail call void (ptr, ptr, ...) %238(ptr noundef %0, ptr noundef nonnull @.str, ptr noundef nonnull @.str.1, i32 noundef 466, ptr noundef nonnull @.str.34, ptr noundef nonnull @.str.39, i32 noundef %235, i32 noundef 1)
  br label %.thread

239:                                              ; preds = %234
  br i1 %.not265, label %245, label %240

240:                                              ; preds = %239
  %241 = load i32, ptr %10, align 8, !tbaa !27
  %.not274 = icmp eq i32 %241, 1
  br i1 %.not274, label %245, label %242

242:                                              ; preds = %240
  %243 = getelementptr inbounds i8, ptr %0, i64 40
  %244 = load ptr, ptr %243, align 8, !tbaa !25
  tail call void (ptr, ptr, ...) %244(ptr noundef %0, ptr noundef nonnull @.str, ptr noundef nonnull @.str.1, i32 noundef 468, ptr noundef nonnull @.str.35, ptr noundef nonnull @.str.39, i32 noundef %241, i32 noundef 1)
  br label %.thread

245:                                              ; preds = %239, %240
  %246 = load i32, ptr %51, align 8, !tbaa !27
  %.not275 = icmp eq i32 %246, 1
  br i1 %.not275, label %252, label %247

247:                                              ; preds = %245
  %248 = getelementptr inbounds i8, ptr %0, i64 40
  %249 = load ptr, ptr %248, align 8, !tbaa !25
  %250 = tail call ptr @TfLiteTypeGetName(i32 noundef %246)
  %251 = tail call ptr @TfLiteTypeGetName(i32 noundef 1)
  tail call void (ptr, ptr, ...) %249(ptr noundef %0, ptr noundef nonnull @.str.37, ptr noundef nonnull @.str.1, i32 noundef 470, ptr noundef nonnull @.str.38, ptr noundef nonnull @.str.39, ptr noundef %250, ptr noundef %251)
  br label %.thread

252:                                              ; preds = %245
  %253 = getelementptr inbounds i8, ptr %1, i64 32
  %254 = load ptr, ptr %253, align 8, !tbaa !30
  %.not276 = icmp eq ptr %254, null
  br i1 %.not276, label %255, label %256

255:                                              ; preds = %252
  tail call void @abort() #4
  unreachable

256:                                              ; preds = %252
  %257 = getelementptr inbounds i8, ptr %0, i64 128
  %258 = load ptr, ptr %257, align 8, !tbaa !35
  %.not277 = icmp eq ptr %258, null
  br i1 %.not277, label %259, label %260

259:                                              ; preds = %256
  tail call void @abort() #4
  unreachable

260:                                              ; preds = %256
  %261 = mul nsw i32 %22, %18
  %262 = sext i32 %261 to i64
  %263 = shl nsw i64 %262, 2
  %264 = getelementptr inbounds i8, ptr %254, i64 16
  %265 = tail call noundef i32 %258(ptr noundef nonnull %0, i64 noundef %263, ptr noundef nonnull %264)
  %.not278 = icmp eq i32 %265, 0
  br i1 %.not278, label %266, label %.thread

266:                                              ; preds = %260, %218
  br label %.thread

.thread:                                          ; preds = %212, %34, %39, %47, %218, %260, %266, %247, %242, %236, %231, %226, %165, %160, %154, %149, %144, %136, %130, %123, %114, %109, %100, %94, %86, %81, %73, %68, %62, %53, %25
  %.6 = phi i32 [ 1, %25 ], [ 1, %39 ], [ 1, %47 ], [ 1, %34 ], [ 1, %53 ], [ 1, %62 ], [ 1, %68 ], [ 1, %73 ], [ 1, %81 ], [ 1, %86 ], [ 1, %94 ], [ 1, %100 ], [ 1, %109 ], [ 1, %114 ], [ 1, %123 ], [ 1, %130 ], [ 1, %136 ], [ 1, %144 ], [ 1, %149 ], [ 1, %154 ], [ 1, %160 ], [ 1, %165 ], [ 0, %266 ], [ %224, %218 ], [ 1, %226 ], [ 1, %231 ], [ 1, %236 ], [ 1, %242 ], [ 1, %247 ], [ %265, %260 ], [ %217, %212 ]
  ret i32 %.6
}

; Function Attrs: inlinehint mustprogress nounwind uwtable
declare dso_local noundef ptr @_ZN6tflite8GetInputEPK13TfLiteContextPK10TfLiteNodei(ptr noundef, ptr noundef, i32 noundef) local_unnamed_addr #2

; Function Attrs: inlinehint mustprogress nounwind uwtable
declare dso_local noundef ptr @_ZN6tflite22GetOptionalInputTensorEP13TfLiteContextPK10TfLiteNodei(ptr noundef, ptr noundef, i32 noundef) local_unnamed_addr #2

; Function Attrs: inlinehint mustprogress nounwind uwtable
declare dso_local noundef i32 @_ZN6tflite13NumDimensionsEPK12TfLiteTensor(ptr noundef) local_unnamed_addr #2

; Function Attrs: inlinehint mustprogress nounwind uwtable
declare dso_local noundef ptr @_ZN6tflite9GetOutputEP13TfLiteContextPK10TfLiteNodei(ptr noundef, ptr noundef, i32 noundef) local_unnamed_addr #2

declare ptr @TfLiteTypeGetName(i32 noundef) local_unnamed_addr #3

declare void @_ZN6tflite18QuantizeMultiplierEdPiS0_(double noundef, ptr noundef, ptr noundef) local_unnamed_addr #3

attributes #0 = { noreturn 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 #1 = { 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 = { inlinehint 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 #3 = { "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 #4 = { noreturn 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, !7, i64 40}
!6 = !{!"_ZTS10TfLiteNode", !7, i64 0, !7, i64 8, !7, i64 16, !7, i64 24, !7, i64 32, !7, i64 40, !7, i64 48, !10, i64 56, !7, i64 64}
!7 = !{!"any pointer", !8, i64 0}
!8 = !{!"omnipotent char", !9, i64 0}
!9 = !{!"Simple C++ TBAA"}
!10 = !{!"int", !8, i64 0}
!11 = !{!12, !10, i64 0}
!12 = !{!"_ZTS16TfLiteSVDFParams", !10, i64 0, !13, i64 4, !14, i64 8}
!13 = !{!"_ZTS21TfLiteFusedActivation", !8, i64 0}
!14 = !{!"bool", !8, i64 0}
!15 = !{!16, !7, i64 16}
!16 = !{!"_ZTS12TfLiteTensor", !17, i64 0, !8, i64 8, !7, i64 16, !18, i64 24, !20, i64 32, !21, i64 40, !7, i64 48, !7, i64 56, !7, i64 64, !10, i64 72, !14, i64 76, !14, i64 77, !22, i64 80, !7, i64 96, !7, i64 104}
!17 = !{!"_ZTS10TfLiteType", !8, i64 0}
!18 = !{!"_ZTS24TfLiteQuantizationParams", !19, i64 0, !10, i64 4}
!19 = !{!"float", !8, i64 0}
!20 = !{!"_ZTS20TfLiteAllocationType", !8, i64 0}
!21 = !{!"long", !8, i64 0}
!22 = !{!"_ZTS18TfLiteQuantization", !23, i64 0, !7, i64 8}
!23 = !{!"_ZTS22TfLiteQuantizationType", !8, i64 0}
!24 = !{!10, !10, i64 0}
!25 = !{!26, !7, i64 40}
!26 = !{!"_ZTS13TfLiteContext", !21, i64 0, !7, i64 8, !7, i64 16, !7, i64 24, !7, i64 32, !7, i64 40, !7, i64 48, !7, i64 56, !7, i64 64, !10, i64 72, !7, i64 80, !7, i64 88, !14, i64 96, !7, i64 104, !7, i64 112, !7, i64 120, !7, i64 128, !7, i64 136, !7, i64 144, !7, i64 152}
!27 = !{!16, !17, i64 0}
!28 = !{!6, !7, i64 8}
!29 = !{!6, !7, i64 0}
!30 = !{!6, !7, i64 32}
!31 = !{!16, !7, i64 88}
!32 = !{!33, !7, i64 0}
!33 = !{!"_ZTS24TfLiteAffineQuantization", !7, i64 0, !7, i64 8, !10, i64 16}
!34 = !{!19, !19, i64 0}
!35 = !{!26, !7, i64 128}


; Effective O3 passes: CorrelatedValuePropagationPass,DivRemPairsPass,EarlyCSEPass,GlobalOptPass,IPSCCPPass,InferFunctionAttrsPass,InstCombinePass,JumpThreadingPass,ReassociatePass,SROAPass,SimplifyCFGPass,TailCallElimPass