; LLVM IR from ggml-org/ggml :: tests (test-pool)

; 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.ggml_tensor = type { i32, ptr, [4 x i64], [4 x i64], i32, [16 x i32], i32, [10 x ptr], ptr, i64, ptr, [64 x i8], ptr, [8 x i8] }

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

; Function Attrs: nounwind uwtable
declare dso_local ptr @make_ctx() #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 nounwind willreturn memory(argmem: readwrite)
declare void @llvm.memcpy.p0.p0.i64(ptr noalias nocapture writeonly, ptr noalias nocapture readonly, i64, i1 immarg) #2

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

; Function Attrs: nounwind uwtable
define dso_local i32 @main(i32 noundef %0, ptr noundef %1) #0 {
  %3 = alloca i32, align 4
  %4 = alloca i32, align 4
  %5 = alloca ptr, align 8
  %6 = alloca [1024 x float], align 16
  %7 = alloca [1024 x i16], align 16
  %8 = alloca i32, align 4
  %9 = alloca ptr, align 8
  %10 = alloca ptr, align 8
  %11 = alloca ptr, align 8
  %12 = alloca ptr, align 8
  %13 = alloca ptr, align 8
  %14 = alloca ptr, align 8
  %15 = alloca ptr, align 8
  %16 = alloca ptr, align 8
  %17 = alloca ptr, align 8
  %18 = alloca ptr, align 8
  %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 ptr, align 8
  %26 = alloca ptr, align 8
  %27 = alloca ptr, align 8
  %28 = alloca ptr, align 8
  %29 = alloca ptr, align 8
  %30 = alloca ptr, align 8
  %31 = alloca ptr, align 8
  %32 = alloca ptr, align 8
  %33 = alloca ptr, align 8
  %34 = alloca ptr, align 8
  %35 = alloca ptr, align 8
  %36 = alloca ptr, align 8
  %37 = alloca ptr, align 8
  %38 = alloca ptr, align 8
  %39 = alloca ptr, align 8
  %40 = alloca ptr, align 8
  %41 = alloca ptr, align 8
  %42 = alloca ptr, align 8
  %43 = alloca ptr, align 8
  %44 = alloca ptr, align 8
  %45 = alloca ptr, align 8
  %46 = alloca ptr, align 8
  %47 = alloca ptr, align 8
  %48 = alloca ptr, align 8
  store i32 0, ptr %3, align 4
  store i32 %0, ptr %4, align 4, !tbaa !5
  store ptr %1, ptr %5, align 8, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4096, ptr %6) #5
  call void @llvm.lifetime.start.p0(i64 2048, ptr %7) #5
  call void @llvm.lifetime.start.p0(i64 4, ptr %8) #5
  store i32 0, ptr %8, align 4, !tbaa !5
  br label %49

49:                                               ; preds = %68, %2
  %50 = load i32, ptr %8, align 4, !tbaa !5
  %51 = icmp slt i32 %50, 1024
  br i1 %51, label %53, label %52

52:                                               ; preds = %49
  call void @llvm.lifetime.end.p0(i64 4, ptr %8) #5
  br label %71

53:                                               ; preds = %49
  %54 = load i32, ptr %8, align 4, !tbaa !5
  %55 = add nsw i32 %54, 1
  %56 = sitofp i32 %55 to float
  %57 = load i32, ptr %8, align 4, !tbaa !5
  %58 = sext i32 %57 to i64
  %59 = getelementptr inbounds [1024 x float], ptr %6, i64 0, i64 %58
  store float %56, ptr %59, align 4, !tbaa !11
  %60 = load i32, ptr %8, align 4, !tbaa !5
  %61 = sext i32 %60 to i64
  %62 = getelementptr inbounds [1024 x float], ptr %6, i64 0, i64 %61
  %63 = load float, ptr %62, align 4, !tbaa !11
  %64 = call zeroext i16 @ggml_fp32_to_fp16(float noundef %63)
  %65 = load i32, ptr %8, align 4, !tbaa !5
  %66 = sext i32 %65 to i64
  %67 = getelementptr inbounds [1024 x i16], ptr %7, i64 0, i64 %66
  store i16 %64, ptr %67, align 2, !tbaa !13
  br label %68

68:                                               ; preds = %53
  %69 = load i32, ptr %8, align 4, !tbaa !5
  %70 = add nsw i32 %69, 1
  store i32 %70, ptr %8, align 4, !tbaa !5
  br label %49, !llvm.loop !15

71:                                               ; preds = %52
  call void @llvm.lifetime.start.p0(i64 8, ptr %9) #5
  %72 = call ptr @make_ctx()
  store ptr %72, ptr %9, align 8, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 8, ptr %10) #5
  %73 = load ptr, ptr %9, align 8, !tbaa !9
  %74 = call ptr @ggml_new_tensor_2d(ptr noundef %73, i32 noundef 0, i64 noundef 10, i64 noundef 2)
  store ptr %74, ptr %10, align 8, !tbaa !9
  %75 = load ptr, ptr %10, align 8, !tbaa !9
  %76 = getelementptr inbounds %struct.ggml_tensor, ptr %75, i32 0, i32 10
  %77 = load ptr, ptr %76, align 8, !tbaa !17
  %78 = getelementptr inbounds [1024 x float], ptr %6, i64 0, i64 0
  %79 = load ptr, ptr %10, align 8, !tbaa !9
  %80 = call i64 @ggml_nbytes(ptr noundef %79)
  call void @llvm.memcpy.p0.p0.i64(ptr align 1 %77, ptr align 16 %78, i64 %80, i1 false)
  call void @llvm.lifetime.start.p0(i64 8, ptr %11) #5
  %81 = load ptr, ptr %9, align 8, !tbaa !9
  %82 = load ptr, ptr %10, align 8, !tbaa !9
  %83 = call ptr @ggml_pool_1d(ptr noundef %81, ptr noundef %82, i32 noundef 1, i32 noundef 3, i32 noundef 3, i32 noundef 0)
  store ptr %83, ptr %11, align 8, !tbaa !9
  %84 = load ptr, ptr %11, align 8, !tbaa !9
  %85 = getelementptr inbounds %struct.ggml_tensor, ptr %84, i32 0, i32 2
  %86 = getelementptr inbounds [4 x i64], ptr %85, i64 0, i64 0
  %87 = load i64, ptr %86, align 8, !tbaa !20
  %88 = icmp eq i64 %87, 3
  br i1 %88, label %90, label %89

89:                                               ; preds = %71
  call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef @.str, i32 noundef 32, ptr noundef @.str.1, ptr noundef @.str.2) #6
  unreachable

90:                                               ; preds = %71
  %91 = load ptr, ptr %11, align 8, !tbaa !9
  %92 = getelementptr inbounds %struct.ggml_tensor, ptr %91, i32 0, i32 2
  %93 = getelementptr inbounds [4 x i64], ptr %92, i64 0, i64 1
  %94 = load i64, ptr %93, align 8, !tbaa !20
  %95 = icmp eq i64 %94, 2
  br i1 %95, label %97, label %96

96:                                               ; preds = %90
  call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef @.str, i32 noundef 33, ptr noundef @.str.1, ptr noundef @.str.3) #6
  unreachable

97:                                               ; preds = %90
  %98 = load ptr, ptr %11, align 8, !tbaa !9
  %99 = getelementptr inbounds %struct.ggml_tensor, ptr %98, i32 0, i32 2
  %100 = getelementptr inbounds [4 x i64], ptr %99, i64 0, i64 2
  %101 = load i64, ptr %100, align 8, !tbaa !20
  %102 = icmp eq i64 %101, 1
  br i1 %102, label %104, label %103

103:                                              ; preds = %97
  call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef @.str, i32 noundef 34, ptr noundef @.str.1, ptr noundef @.str.4) #6
  unreachable

104:                                              ; preds = %97
  call void @llvm.lifetime.start.p0(i64 8, ptr %12) #5
  %105 = load ptr, ptr %9, align 8, !tbaa !9
  %106 = call ptr @ggml_new_graph(ptr noundef %105)
  store ptr %106, ptr %12, align 8, !tbaa !9
  %107 = load ptr, ptr %12, align 8, !tbaa !9
  %108 = load ptr, ptr %11, align 8, !tbaa !9
  call void @ggml_build_forward_expand(ptr noundef %107, ptr noundef %108)
  %109 = load ptr, ptr %9, align 8, !tbaa !9
  %110 = load ptr, ptr %12, align 8, !tbaa !9
  %111 = call i32 @ggml_graph_compute_with_ctx(ptr noundef %109, ptr noundef %110, i32 noundef 4)
  call void @llvm.lifetime.start.p0(i64 8, ptr %13) #5
  %112 = load ptr, ptr %11, align 8, !tbaa !9
  %113 = call ptr @ggml_get_data_f32(ptr noundef %112)
  store ptr %113, ptr %13, align 8, !tbaa !9
  %114 = load ptr, ptr %13, align 8, !tbaa !9
  %115 = getelementptr inbounds float, ptr %114, i64 0
  %116 = load float, ptr %115, align 4, !tbaa !11
  %117 = fcmp oeq float %116, 2.000000e+00
  br i1 %117, label %119, label %118

118:                                              ; preds = %104
  call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef @.str, i32 noundef 43, ptr noundef @.str.1, ptr noundef @.str.5) #6
  unreachable

119:                                              ; preds = %104
  %120 = load ptr, ptr %13, align 8, !tbaa !9
  %121 = getelementptr inbounds float, ptr %120, i64 1
  %122 = load float, ptr %121, align 4, !tbaa !11
  %123 = fcmp oeq float %122, 5.000000e+00
  br i1 %123, label %125, label %124

124:                                              ; preds = %119
  call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef @.str, i32 noundef 44, ptr noundef @.str.1, ptr noundef @.str.6) #6
  unreachable

125:                                              ; preds = %119
  %126 = load ptr, ptr %13, align 8, !tbaa !9
  %127 = getelementptr inbounds float, ptr %126, i64 2
  %128 = load float, ptr %127, align 4, !tbaa !11
  %129 = fcmp oeq float %128, 8.000000e+00
  br i1 %129, label %131, label %130

130:                                              ; preds = %125
  call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef @.str, i32 noundef 45, ptr noundef @.str.1, ptr noundef @.str.7) #6
  unreachable

131:                                              ; preds = %125
  %132 = load ptr, ptr %13, align 8, !tbaa !9
  %133 = getelementptr inbounds float, ptr %132, i64 3
  %134 = load float, ptr %133, align 4, !tbaa !11
  %135 = fcmp oeq float %134, 1.200000e+01
  br i1 %135, label %137, label %136

136:                                              ; preds = %131
  call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef @.str, i32 noundef 46, ptr noundef @.str.1, ptr noundef @.str.8) #6
  unreachable

137:                                              ; preds = %131
  %138 = load ptr, ptr %13, align 8, !tbaa !9
  %139 = getelementptr inbounds float, ptr %138, i64 4
  %140 = load float, ptr %139, align 4, !tbaa !11
  %141 = fcmp oeq float %140, 1.500000e+01
  br i1 %141, label %143, label %142

142:                                              ; preds = %137
  call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef @.str, i32 noundef 47, ptr noundef @.str.1, ptr noundef @.str.9) #6
  unreachable

143:                                              ; preds = %137
  %144 = load ptr, ptr %13, align 8, !tbaa !9
  %145 = getelementptr inbounds float, ptr %144, i64 5
  %146 = load float, ptr %145, align 4, !tbaa !11
  %147 = fcmp oeq float %146, 1.800000e+01
  br i1 %147, label %149, label %148

148:                                              ; preds = %143
  call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef @.str, i32 noundef 48, ptr noundef @.str.1, ptr noundef @.str.10) #6
  unreachable

149:                                              ; preds = %143
  %150 = load ptr, ptr %9, align 8, !tbaa !9
  call void @ggml_free(ptr noundef %150)
  call void @llvm.lifetime.end.p0(i64 8, ptr %13) #5
  call void @llvm.lifetime.end.p0(i64 8, ptr %12) #5
  call void @llvm.lifetime.end.p0(i64 8, ptr %11) #5
  call void @llvm.lifetime.end.p0(i64 8, ptr %10) #5
  call void @llvm.lifetime.end.p0(i64 8, ptr %9) #5
  call void @llvm.lifetime.start.p0(i64 8, ptr %14) #5
  %151 = call ptr @make_ctx()
  store ptr %151, ptr %14, align 8, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 8, ptr %15) #5
  %152 = load ptr, ptr %14, align 8, !tbaa !9
  %153 = call ptr @ggml_new_tensor_2d(ptr noundef %152, i32 noundef 1, i64 noundef 10, i64 noundef 2)
  store ptr %153, ptr %15, align 8, !tbaa !9
  %154 = load ptr, ptr %15, align 8, !tbaa !9
  %155 = getelementptr inbounds %struct.ggml_tensor, ptr %154, i32 0, i32 10
  %156 = load ptr, ptr %155, align 8, !tbaa !17
  %157 = getelementptr inbounds [1024 x i16], ptr %7, i64 0, i64 0
  %158 = load ptr, ptr %15, align 8, !tbaa !9
  %159 = call i64 @ggml_nbytes(ptr noundef %158)
  call void @llvm.memcpy.p0.p0.i64(ptr align 1 %156, ptr align 16 %157, i64 %159, i1 false)
  call void @llvm.lifetime.start.p0(i64 8, ptr %16) #5
  %160 = load ptr, ptr %14, align 8, !tbaa !9
  %161 = load ptr, ptr %15, align 8, !tbaa !9
  %162 = call ptr @ggml_pool_1d(ptr noundef %160, ptr noundef %161, i32 noundef 1, i32 noundef 3, i32 noundef 3, i32 noundef 0)
  store ptr %162, ptr %16, align 8, !tbaa !9
  %163 = load ptr, ptr %16, align 8, !tbaa !9
  %164 = getelementptr inbounds %struct.ggml_tensor, ptr %163, i32 0, i32 2
  %165 = getelementptr inbounds [4 x i64], ptr %164, i64 0, i64 0
  %166 = load i64, ptr %165, align 8, !tbaa !20
  %167 = icmp eq i64 %166, 3
  br i1 %167, label %169, label %168

168:                                              ; preds = %149
  call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef @.str, i32 noundef 60, ptr noundef @.str.1, ptr noundef @.str.2) #6
  unreachable

169:                                              ; preds = %149
  %170 = load ptr, ptr %16, align 8, !tbaa !9
  %171 = getelementptr inbounds %struct.ggml_tensor, ptr %170, i32 0, i32 2
  %172 = getelementptr inbounds [4 x i64], ptr %171, i64 0, i64 1
  %173 = load i64, ptr %172, align 8, !tbaa !20
  %174 = icmp eq i64 %173, 2
  br i1 %174, label %176, label %175

175:                                              ; preds = %169
  call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef @.str, i32 noundef 61, ptr noundef @.str.1, ptr noundef @.str.3) #6
  unreachable

176:                                              ; preds = %169
  %177 = load ptr, ptr %16, align 8, !tbaa !9
  %178 = getelementptr inbounds %struct.ggml_tensor, ptr %177, i32 0, i32 2
  %179 = getelementptr inbounds [4 x i64], ptr %178, i64 0, i64 2
  %180 = load i64, ptr %179, align 8, !tbaa !20
  %181 = icmp eq i64 %180, 1
  br i1 %181, label %183, label %182

182:                                              ; preds = %176
  call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef @.str, i32 noundef 62, ptr noundef @.str.1, ptr noundef @.str.4) #6
  unreachable

183:                                              ; preds = %176
  call void @llvm.lifetime.start.p0(i64 8, ptr %17) #5
  %184 = load ptr, ptr %14, align 8, !tbaa !9
  %185 = call ptr @ggml_new_graph(ptr noundef %184)
  store ptr %185, ptr %17, align 8, !tbaa !9
  %186 = load ptr, ptr %17, align 8, !tbaa !9
  %187 = load ptr, ptr %16, align 8, !tbaa !9
  call void @ggml_build_forward_expand(ptr noundef %186, ptr noundef %187)
  %188 = load ptr, ptr %14, align 8, !tbaa !9
  %189 = load ptr, ptr %17, align 8, !tbaa !9
  %190 = call i32 @ggml_graph_compute_with_ctx(ptr noundef %188, ptr noundef %189, i32 noundef 4)
  call void @llvm.lifetime.start.p0(i64 8, ptr %18) #5
  %191 = load ptr, ptr %16, align 8, !tbaa !9
  %192 = call ptr @ggml_get_data_f32(ptr noundef %191)
  store ptr %192, ptr %18, align 8, !tbaa !9
  %193 = load ptr, ptr %18, align 8, !tbaa !9
  %194 = getelementptr inbounds float, ptr %193, i64 0
  %195 = load float, ptr %194, align 4, !tbaa !11
  %196 = fcmp oeq float %195, 2.000000e+00
  br i1 %196, label %198, label %197

197:                                              ; preds = %183
  call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef @.str, i32 noundef 71, ptr noundef @.str.1, ptr noundef @.str.5) #6
  unreachable

198:                                              ; preds = %183
  %199 = load ptr, ptr %18, align 8, !tbaa !9
  %200 = getelementptr inbounds float, ptr %199, i64 1
  %201 = load float, ptr %200, align 4, !tbaa !11
  %202 = fcmp oeq float %201, 5.000000e+00
  br i1 %202, label %204, label %203

203:                                              ; preds = %198
  call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef @.str, i32 noundef 72, ptr noundef @.str.1, ptr noundef @.str.6) #6
  unreachable

204:                                              ; preds = %198
  %205 = load ptr, ptr %18, align 8, !tbaa !9
  %206 = getelementptr inbounds float, ptr %205, i64 2
  %207 = load float, ptr %206, align 4, !tbaa !11
  %208 = fcmp oeq float %207, 8.000000e+00
  br i1 %208, label %210, label %209

209:                                              ; preds = %204
  call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef @.str, i32 noundef 73, ptr noundef @.str.1, ptr noundef @.str.7) #6
  unreachable

210:                                              ; preds = %204
  %211 = load ptr, ptr %18, align 8, !tbaa !9
  %212 = getelementptr inbounds float, ptr %211, i64 3
  %213 = load float, ptr %212, align 4, !tbaa !11
  %214 = fcmp oeq float %213, 1.200000e+01
  br i1 %214, label %216, label %215

215:                                              ; preds = %210
  call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef @.str, i32 noundef 74, ptr noundef @.str.1, ptr noundef @.str.8) #6
  unreachable

216:                                              ; preds = %210
  %217 = load ptr, ptr %18, align 8, !tbaa !9
  %218 = getelementptr inbounds float, ptr %217, i64 4
  %219 = load float, ptr %218, align 4, !tbaa !11
  %220 = fcmp oeq float %219, 1.500000e+01
  br i1 %220, label %222, label %221

221:                                              ; preds = %216
  call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef @.str, i32 noundef 75, ptr noundef @.str.1, ptr noundef @.str.9) #6
  unreachable

222:                                              ; preds = %216
  %223 = load ptr, ptr %18, align 8, !tbaa !9
  %224 = getelementptr inbounds float, ptr %223, i64 5
  %225 = load float, ptr %224, align 4, !tbaa !11
  %226 = fcmp oeq float %225, 1.800000e+01
  br i1 %226, label %228, label %227

227:                                              ; preds = %222
  call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef @.str, i32 noundef 76, ptr noundef @.str.1, ptr noundef @.str.10) #6
  unreachable

228:                                              ; preds = %222
  %229 = load ptr, ptr %14, align 8, !tbaa !9
  call void @ggml_free(ptr noundef %229)
  call void @llvm.lifetime.end.p0(i64 8, ptr %18) #5
  call void @llvm.lifetime.end.p0(i64 8, ptr %17) #5
  call void @llvm.lifetime.end.p0(i64 8, ptr %16) #5
  call void @llvm.lifetime.end.p0(i64 8, ptr %15) #5
  call void @llvm.lifetime.end.p0(i64 8, ptr %14) #5
  call void @llvm.lifetime.start.p0(i64 8, ptr %19) #5
  %230 = call ptr @make_ctx()
  store ptr %230, ptr %19, align 8, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 8, ptr %20) #5
  %231 = load ptr, ptr %19, align 8, !tbaa !9
  %232 = call ptr @ggml_new_tensor_2d(ptr noundef %231, i32 noundef 0, i64 noundef 10, i64 noundef 2)
  store ptr %232, ptr %20, align 8, !tbaa !9
  %233 = load ptr, ptr %20, align 8, !tbaa !9
  %234 = getelementptr inbounds %struct.ggml_tensor, ptr %233, i32 0, i32 10
  %235 = load ptr, ptr %234, align 8, !tbaa !17
  %236 = getelementptr inbounds [1024 x float], ptr %6, i64 0, i64 0
  %237 = load ptr, ptr %20, align 8, !tbaa !9
  %238 = call i64 @ggml_nbytes(ptr noundef %237)
  call void @llvm.memcpy.p0.p0.i64(ptr align 1 %235, ptr align 16 %236, i64 %238, i1 false)
  call void @llvm.lifetime.start.p0(i64 8, ptr %21) #5
  %239 = load ptr, ptr %19, align 8, !tbaa !9
  %240 = load ptr, ptr %20, align 8, !tbaa !9
  %241 = call ptr @ggml_pool_1d(ptr noundef %239, ptr noundef %240, i32 noundef 0, i32 noundef 3, i32 noundef 3, i32 noundef 0)
  store ptr %241, ptr %21, align 8, !tbaa !9
  %242 = load ptr, ptr %21, align 8, !tbaa !9
  %243 = getelementptr inbounds %struct.ggml_tensor, ptr %242, i32 0, i32 2
  %244 = getelementptr inbounds [4 x i64], ptr %243, i64 0, i64 0
  %245 = load i64, ptr %244, align 8, !tbaa !20
  %246 = icmp eq i64 %245, 3
  br i1 %246, label %248, label %247

247:                                              ; preds = %228
  call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef @.str, i32 noundef 88, ptr noundef @.str.1, ptr noundef @.str.2) #6
  unreachable

248:                                              ; preds = %228
  %249 = load ptr, ptr %21, align 8, !tbaa !9
  %250 = getelementptr inbounds %struct.ggml_tensor, ptr %249, i32 0, i32 2
  %251 = getelementptr inbounds [4 x i64], ptr %250, i64 0, i64 1
  %252 = load i64, ptr %251, align 8, !tbaa !20
  %253 = icmp eq i64 %252, 2
  br i1 %253, label %255, label %254

254:                                              ; preds = %248
  call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef @.str, i32 noundef 89, ptr noundef @.str.1, ptr noundef @.str.3) #6
  unreachable

255:                                              ; preds = %248
  %256 = load ptr, ptr %21, align 8, !tbaa !9
  %257 = getelementptr inbounds %struct.ggml_tensor, ptr %256, i32 0, i32 2
  %258 = getelementptr inbounds [4 x i64], ptr %257, i64 0, i64 2
  %259 = load i64, ptr %258, align 8, !tbaa !20
  %260 = icmp eq i64 %259, 1
  br i1 %260, label %262, label %261

261:                                              ; preds = %255
  call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef @.str, i32 noundef 90, ptr noundef @.str.1, ptr noundef @.str.4) #6
  unreachable

262:                                              ; preds = %255
  call void @llvm.lifetime.start.p0(i64 8, ptr %22) #5
  %263 = load ptr, ptr %19, align 8, !tbaa !9
  %264 = call ptr @ggml_new_graph(ptr noundef %263)
  store ptr %264, ptr %22, align 8, !tbaa !9
  %265 = load ptr, ptr %22, align 8, !tbaa !9
  %266 = load ptr, ptr %21, align 8, !tbaa !9
  call void @ggml_build_forward_expand(ptr noundef %265, ptr noundef %266)
  %267 = load ptr, ptr %19, align 8, !tbaa !9
  %268 = load ptr, ptr %22, align 8, !tbaa !9
  %269 = call i32 @ggml_graph_compute_with_ctx(ptr noundef %267, ptr noundef %268, i32 noundef 4)
  call void @llvm.lifetime.start.p0(i64 8, ptr %23) #5
  %270 = load ptr, ptr %21, align 8, !tbaa !9
  %271 = call ptr @ggml_get_data_f32(ptr noundef %270)
  store ptr %271, ptr %23, align 8, !tbaa !9
  %272 = load ptr, ptr %23, align 8, !tbaa !9
  %273 = getelementptr inbounds float, ptr %272, i64 0
  %274 = load float, ptr %273, align 4, !tbaa !11
  %275 = fcmp oeq float %274, 3.000000e+00
  br i1 %275, label %277, label %276

276:                                              ; preds = %262
  call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef @.str, i32 noundef 98, ptr noundef @.str.1, ptr noundef @.str.11) #6
  unreachable

277:                                              ; preds = %262
  %278 = load ptr, ptr %23, align 8, !tbaa !9
  %279 = getelementptr inbounds float, ptr %278, i64 1
  %280 = load float, ptr %279, align 4, !tbaa !11
  %281 = fcmp oeq float %280, 6.000000e+00
  br i1 %281, label %283, label %282

282:                                              ; preds = %277
  call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef @.str, i32 noundef 99, ptr noundef @.str.1, ptr noundef @.str.12) #6
  unreachable

283:                                              ; preds = %277
  %284 = load ptr, ptr %23, align 8, !tbaa !9
  %285 = getelementptr inbounds float, ptr %284, i64 2
  %286 = load float, ptr %285, align 4, !tbaa !11
  %287 = fcmp oeq float %286, 9.000000e+00
  br i1 %287, label %289, label %288

288:                                              ; preds = %283
  call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef @.str, i32 noundef 100, ptr noundef @.str.1, ptr noundef @.str.13) #6
  unreachable

289:                                              ; preds = %283
  %290 = load ptr, ptr %23, align 8, !tbaa !9
  %291 = getelementptr inbounds float, ptr %290, i64 3
  %292 = load float, ptr %291, align 4, !tbaa !11
  %293 = fcmp oeq float %292, 1.300000e+01
  br i1 %293, label %295, label %294

294:                                              ; preds = %289
  call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef @.str, i32 noundef 101, ptr noundef @.str.1, ptr noundef @.str.14) #6
  unreachable

295:                                              ; preds = %289
  %296 = load ptr, ptr %23, align 8, !tbaa !9
  %297 = getelementptr inbounds float, ptr %296, i64 4
  %298 = load float, ptr %297, align 4, !tbaa !11
  %299 = fcmp oeq float %298, 1.600000e+01
  br i1 %299, label %301, label %300

300:                                              ; preds = %295
  call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef @.str, i32 noundef 102, ptr noundef @.str.1, ptr noundef @.str.15) #6
  unreachable

301:                                              ; preds = %295
  %302 = load ptr, ptr %23, align 8, !tbaa !9
  %303 = getelementptr inbounds float, ptr %302, i64 5
  %304 = load float, ptr %303, align 4, !tbaa !11
  %305 = fcmp oeq float %304, 1.900000e+01
  br i1 %305, label %307, label %306

306:                                              ; preds = %301
  call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef @.str, i32 noundef 103, ptr noundef @.str.1, ptr noundef @.str.16) #6
  unreachable

307:                                              ; preds = %301
  %308 = load ptr, ptr %19, align 8, !tbaa !9
  call void @ggml_free(ptr noundef %308)
  call void @llvm.lifetime.end.p0(i64 8, ptr %23) #5
  call void @llvm.lifetime.end.p0(i64 8, ptr %22) #5
  call void @llvm.lifetime.end.p0(i64 8, ptr %21) #5
  call void @llvm.lifetime.end.p0(i64 8, ptr %20) #5
  call void @llvm.lifetime.end.p0(i64 8, ptr %19) #5
  call void @llvm.lifetime.start.p0(i64 8, ptr %24) #5
  %309 = call ptr @make_ctx()
  store ptr %309, ptr %24, align 8, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 8, ptr %25) #5
  %310 = load ptr, ptr %24, align 8, !tbaa !9
  %311 = call ptr @ggml_new_tensor_2d(ptr noundef %310, i32 noundef 1, i64 noundef 10, i64 noundef 2)
  store ptr %311, ptr %25, align 8, !tbaa !9
  %312 = load ptr, ptr %25, align 8, !tbaa !9
  %313 = getelementptr inbounds %struct.ggml_tensor, ptr %312, i32 0, i32 10
  %314 = load ptr, ptr %313, align 8, !tbaa !17
  %315 = getelementptr inbounds [1024 x i16], ptr %7, i64 0, i64 0
  %316 = load ptr, ptr %25, align 8, !tbaa !9
  %317 = call i64 @ggml_nbytes(ptr noundef %316)
  call void @llvm.memcpy.p0.p0.i64(ptr align 1 %314, ptr align 16 %315, i64 %317, i1 false)
  call void @llvm.lifetime.start.p0(i64 8, ptr %26) #5
  %318 = load ptr, ptr %24, align 8, !tbaa !9
  %319 = load ptr, ptr %25, align 8, !tbaa !9
  %320 = call ptr @ggml_pool_1d(ptr noundef %318, ptr noundef %319, i32 noundef 0, i32 noundef 3, i32 noundef 3, i32 noundef 0)
  store ptr %320, ptr %26, align 8, !tbaa !9
  %321 = load ptr, ptr %26, align 8, !tbaa !9
  %322 = getelementptr inbounds %struct.ggml_tensor, ptr %321, i32 0, i32 2
  %323 = getelementptr inbounds [4 x i64], ptr %322, i64 0, i64 0
  %324 = load i64, ptr %323, align 8, !tbaa !20
  %325 = icmp eq i64 %324, 3
  br i1 %325, label %327, label %326

326:                                              ; preds = %307
  call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef @.str, i32 noundef 115, ptr noundef @.str.1, ptr noundef @.str.2) #6
  unreachable

327:                                              ; preds = %307
  %328 = load ptr, ptr %26, align 8, !tbaa !9
  %329 = getelementptr inbounds %struct.ggml_tensor, ptr %328, i32 0, i32 2
  %330 = getelementptr inbounds [4 x i64], ptr %329, i64 0, i64 1
  %331 = load i64, ptr %330, align 8, !tbaa !20
  %332 = icmp eq i64 %331, 2
  br i1 %332, label %334, label %333

333:                                              ; preds = %327
  call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef @.str, i32 noundef 116, ptr noundef @.str.1, ptr noundef @.str.3) #6
  unreachable

334:                                              ; preds = %327
  %335 = load ptr, ptr %26, align 8, !tbaa !9
  %336 = getelementptr inbounds %struct.ggml_tensor, ptr %335, i32 0, i32 2
  %337 = getelementptr inbounds [4 x i64], ptr %336, i64 0, i64 2
  %338 = load i64, ptr %337, align 8, !tbaa !20
  %339 = icmp eq i64 %338, 1
  br i1 %339, label %341, label %340

340:                                              ; preds = %334
  call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef @.str, i32 noundef 117, ptr noundef @.str.1, ptr noundef @.str.4) #6
  unreachable

341:                                              ; preds = %334
  call void @llvm.lifetime.start.p0(i64 8, ptr %27) #5
  %342 = load ptr, ptr %24, align 8, !tbaa !9
  %343 = call ptr @ggml_new_graph(ptr noundef %342)
  store ptr %343, ptr %27, align 8, !tbaa !9
  %344 = load ptr, ptr %27, align 8, !tbaa !9
  %345 = load ptr, ptr %26, align 8, !tbaa !9
  call void @ggml_build_forward_expand(ptr noundef %344, ptr noundef %345)
  %346 = load ptr, ptr %24, align 8, !tbaa !9
  %347 = load ptr, ptr %27, align 8, !tbaa !9
  %348 = call i32 @ggml_graph_compute_with_ctx(ptr noundef %346, ptr noundef %347, i32 noundef 4)
  call void @llvm.lifetime.start.p0(i64 8, ptr %28) #5
  %349 = load ptr, ptr %26, align 8, !tbaa !9
  %350 = call ptr @ggml_get_data_f32(ptr noundef %349)
  store ptr %350, ptr %28, align 8, !tbaa !9
  %351 = load ptr, ptr %28, align 8, !tbaa !9
  %352 = getelementptr inbounds float, ptr %351, i64 0
  %353 = load float, ptr %352, align 4, !tbaa !11
  %354 = fcmp oeq float %353, 3.000000e+00
  br i1 %354, label %356, label %355

355:                                              ; preds = %341
  call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef @.str, i32 noundef 125, ptr noundef @.str.1, ptr noundef @.str.11) #6
  unreachable

356:                                              ; preds = %341
  %357 = load ptr, ptr %28, align 8, !tbaa !9
  %358 = getelementptr inbounds float, ptr %357, i64 1
  %359 = load float, ptr %358, align 4, !tbaa !11
  %360 = fcmp oeq float %359, 6.000000e+00
  br i1 %360, label %362, label %361

361:                                              ; preds = %356
  call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef @.str, i32 noundef 126, ptr noundef @.str.1, ptr noundef @.str.12) #6
  unreachable

362:                                              ; preds = %356
  %363 = load ptr, ptr %28, align 8, !tbaa !9
  %364 = getelementptr inbounds float, ptr %363, i64 2
  %365 = load float, ptr %364, align 4, !tbaa !11
  %366 = fcmp oeq float %365, 9.000000e+00
  br i1 %366, label %368, label %367

367:                                              ; preds = %362
  call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef @.str, i32 noundef 127, ptr noundef @.str.1, ptr noundef @.str.13) #6
  unreachable

368:                                              ; preds = %362
  %369 = load ptr, ptr %28, align 8, !tbaa !9
  %370 = getelementptr inbounds float, ptr %369, i64 3
  %371 = load float, ptr %370, align 4, !tbaa !11
  %372 = fcmp oeq float %371, 1.300000e+01
  br i1 %372, label %374, label %373

373:                                              ; preds = %368
  call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef @.str, i32 noundef 128, ptr noundef @.str.1, ptr noundef @.str.14) #6
  unreachable

374:                                              ; preds = %368
  %375 = load ptr, ptr %28, align 8, !tbaa !9
  %376 = getelementptr inbounds float, ptr %375, i64 4
  %377 = load float, ptr %376, align 4, !tbaa !11
  %378 = fcmp oeq float %377, 1.600000e+01
  br i1 %378, label %380, label %379

379:                                              ; preds = %374
  call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef @.str, i32 noundef 129, ptr noundef @.str.1, ptr noundef @.str.15) #6
  unreachable

380:                                              ; preds = %374
  %381 = load ptr, ptr %28, align 8, !tbaa !9
  %382 = getelementptr inbounds float, ptr %381, i64 5
  %383 = load float, ptr %382, align 4, !tbaa !11
  %384 = fcmp oeq float %383, 1.900000e+01
  br i1 %384, label %386, label %385

385:                                              ; preds = %380
  call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef @.str, i32 noundef 130, ptr noundef @.str.1, ptr noundef @.str.16) #6
  unreachable

386:                                              ; preds = %380
  %387 = load ptr, ptr %24, align 8, !tbaa !9
  call void @ggml_free(ptr noundef %387)
  call void @llvm.lifetime.end.p0(i64 8, ptr %28) #5
  call void @llvm.lifetime.end.p0(i64 8, ptr %27) #5
  call void @llvm.lifetime.end.p0(i64 8, ptr %26) #5
  call void @llvm.lifetime.end.p0(i64 8, ptr %25) #5
  call void @llvm.lifetime.end.p0(i64 8, ptr %24) #5
  call void @llvm.lifetime.start.p0(i64 8, ptr %29) #5
  %388 = call ptr @make_ctx()
  store ptr %388, ptr %29, align 8, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 8, ptr %30) #5
  %389 = load ptr, ptr %29, align 8, !tbaa !9
  %390 = call ptr @ggml_new_tensor_3d(ptr noundef %389, i32 noundef 0, i64 noundef 10, i64 noundef 10, i64 noundef 2)
  store ptr %390, ptr %30, align 8, !tbaa !9
  %391 = load ptr, ptr %30, align 8, !tbaa !9
  %392 = getelementptr inbounds %struct.ggml_tensor, ptr %391, i32 0, i32 10
  %393 = load ptr, ptr %392, align 8, !tbaa !17
  %394 = getelementptr inbounds [1024 x float], ptr %6, i64 0, i64 0
  %395 = load ptr, ptr %30, align 8, !tbaa !9
  %396 = call i64 @ggml_nbytes(ptr noundef %395)
  call void @llvm.memcpy.p0.p0.i64(ptr align 1 %393, ptr align 16 %394, i64 %396, i1 false)
  call void @llvm.lifetime.start.p0(i64 8, ptr %31) #5
  %397 = load ptr, ptr %29, align 8, !tbaa !9
  %398 = load ptr, ptr %30, align 8, !tbaa !9
  %399 = call ptr @ggml_pool_2d(ptr noundef %397, ptr noundef %398, i32 noundef 1, i32 noundef 3, i32 noundef 4, i32 noundef 3, i32 noundef 4, float noundef 0.000000e+00, float noundef 0.000000e+00)
  store ptr %399, ptr %31, align 8, !tbaa !9
  %400 = load ptr, ptr %31, align 8, !tbaa !9
  %401 = getelementptr inbounds %struct.ggml_tensor, ptr %400, i32 0, i32 2
  %402 = getelementptr inbounds [4 x i64], ptr %401, i64 0, i64 0
  %403 = load i64, ptr %402, align 8, !tbaa !20
  %404 = icmp eq i64 %403, 3
  br i1 %404, label %406, label %405

405:                                              ; preds = %386
  call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef @.str, i32 noundef 142, ptr noundef @.str.1, ptr noundef @.str.2) #6
  unreachable

406:                                              ; preds = %386
  %407 = load ptr, ptr %31, align 8, !tbaa !9
  %408 = getelementptr inbounds %struct.ggml_tensor, ptr %407, i32 0, i32 2
  %409 = getelementptr inbounds [4 x i64], ptr %408, i64 0, i64 1
  %410 = load i64, ptr %409, align 8, !tbaa !20
  %411 = icmp eq i64 %410, 2
  br i1 %411, label %413, label %412

412:                                              ; preds = %406
  call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef @.str, i32 noundef 143, ptr noundef @.str.1, ptr noundef @.str.3) #6
  unreachable

413:                                              ; preds = %406
  %414 = load ptr, ptr %31, align 8, !tbaa !9
  %415 = getelementptr inbounds %struct.ggml_tensor, ptr %414, i32 0, i32 2
  %416 = getelementptr inbounds [4 x i64], ptr %415, i64 0, i64 2
  %417 = load i64, ptr %416, align 8, !tbaa !20
  %418 = icmp eq i64 %417, 2
  br i1 %418, label %420, label %419

419:                                              ; preds = %413
  call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef @.str, i32 noundef 144, ptr noundef @.str.1, ptr noundef @.str.17) #6
  unreachable

420:                                              ; preds = %413
  %421 = load ptr, ptr %31, align 8, !tbaa !9
  %422 = getelementptr inbounds %struct.ggml_tensor, ptr %421, i32 0, i32 2
  %423 = getelementptr inbounds [4 x i64], ptr %422, i64 0, i64 3
  %424 = load i64, ptr %423, align 8, !tbaa !20
  %425 = icmp eq i64 %424, 1
  br i1 %425, label %427, label %426

426:                                              ; preds = %420
  call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef @.str, i32 noundef 145, ptr noundef @.str.1, ptr noundef @.str.18) #6
  unreachable

427:                                              ; preds = %420
  call void @llvm.lifetime.start.p0(i64 8, ptr %32) #5
  %428 = load ptr, ptr %29, align 8, !tbaa !9
  %429 = call ptr @ggml_new_graph(ptr noundef %428)
  store ptr %429, ptr %32, align 8, !tbaa !9
  %430 = load ptr, ptr %32, align 8, !tbaa !9
  %431 = load ptr, ptr %31, align 8, !tbaa !9
  call void @ggml_build_forward_expand(ptr noundef %430, ptr noundef %431)
  %432 = load ptr, ptr %29, align 8, !tbaa !9
  %433 = load ptr, ptr %32, align 8, !tbaa !9
  %434 = call i32 @ggml_graph_compute_with_ctx(ptr noundef %432, ptr noundef %433, i32 noundef 4)
  call void @llvm.lifetime.start.p0(i64 8, ptr %33) #5
  %435 = load ptr, ptr %31, align 8, !tbaa !9
  %436 = call ptr @ggml_get_data_f32(ptr noundef %435)
  store ptr %436, ptr %33, align 8, !tbaa !9
  %437 = load ptr, ptr %33, align 8, !tbaa !9
  %438 = getelementptr inbounds float, ptr %437, i64 0
  %439 = load float, ptr %438, align 4, !tbaa !11
  %440 = fcmp oeq float %439, 1.700000e+01
  br i1 %440, label %442, label %441

441:                                              ; preds = %427
  call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef @.str, i32 noundef 153, ptr noundef @.str.1, ptr noundef @.str.19) #6
  unreachable

442:                                              ; preds = %427
  %443 = load ptr, ptr %33, align 8, !tbaa !9
  %444 = getelementptr inbounds float, ptr %443, i64 1
  %445 = load float, ptr %444, align 4, !tbaa !11
  %446 = fcmp oeq float %445, 2.000000e+01
  br i1 %446, label %448, label %447

447:                                              ; preds = %442
  call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef @.str, i32 noundef 154, ptr noundef @.str.1, ptr noundef @.str.20) #6
  unreachable

448:                                              ; preds = %442
  %449 = load ptr, ptr %33, align 8, !tbaa !9
  %450 = getelementptr inbounds float, ptr %449, i64 2
  %451 = load float, ptr %450, align 4, !tbaa !11
  %452 = fcmp oeq float %451, 2.300000e+01
  br i1 %452, label %454, label %453

453:                                              ; preds = %448
  call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef @.str, i32 noundef 155, ptr noundef @.str.1, ptr noundef @.str.21) #6
  unreachable

454:                                              ; preds = %448
  %455 = load ptr, ptr %33, align 8, !tbaa !9
  %456 = getelementptr inbounds float, ptr %455, i64 3
  %457 = load float, ptr %456, align 4, !tbaa !11
  %458 = fcmp oeq float %457, 5.700000e+01
  br i1 %458, label %460, label %459

459:                                              ; preds = %454
  call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef @.str, i32 noundef 156, ptr noundef @.str.1, ptr noundef @.str.22) #6
  unreachable

460:                                              ; preds = %454
  %461 = load ptr, ptr %33, align 8, !tbaa !9
  %462 = getelementptr inbounds float, ptr %461, i64 4
  %463 = load float, ptr %462, align 4, !tbaa !11
  %464 = fcmp oeq float %463, 6.000000e+01
  br i1 %464, label %466, label %465

465:                                              ; preds = %460
  call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef @.str, i32 noundef 157, ptr noundef @.str.1, ptr noundef @.str.23) #6
  unreachable

466:                                              ; preds = %460
  %467 = load ptr, ptr %33, align 8, !tbaa !9
  %468 = getelementptr inbounds float, ptr %467, i64 5
  %469 = load float, ptr %468, align 4, !tbaa !11
  %470 = fcmp oeq float %469, 6.300000e+01
  br i1 %470, label %472, label %471

471:                                              ; preds = %466
  call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef @.str, i32 noundef 158, ptr noundef @.str.1, ptr noundef @.str.24) #6
  unreachable

472:                                              ; preds = %466
  %473 = load ptr, ptr %33, align 8, !tbaa !9
  %474 = getelementptr inbounds float, ptr %473, i64 6
  %475 = load float, ptr %474, align 4, !tbaa !11
  %476 = fcmp oeq float %475, 1.170000e+02
  br i1 %476, label %478, label %477

477:                                              ; preds = %472
  call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef @.str, i32 noundef 159, ptr noundef @.str.1, ptr noundef @.str.25) #6
  unreachable

478:                                              ; preds = %472
  %479 = load ptr, ptr %33, align 8, !tbaa !9
  %480 = getelementptr inbounds float, ptr %479, i64 7
  %481 = load float, ptr %480, align 4, !tbaa !11
  %482 = fcmp oeq float %481, 1.200000e+02
  br i1 %482, label %484, label %483

483:                                              ; preds = %478
  call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef @.str, i32 noundef 160, ptr noundef @.str.1, ptr noundef @.str.26) #6
  unreachable

484:                                              ; preds = %478
  %485 = load ptr, ptr %33, align 8, !tbaa !9
  %486 = getelementptr inbounds float, ptr %485, i64 8
  %487 = load float, ptr %486, align 4, !tbaa !11
  %488 = fcmp oeq float %487, 1.230000e+02
  br i1 %488, label %490, label %489

489:                                              ; preds = %484
  call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef @.str, i32 noundef 161, ptr noundef @.str.1, ptr noundef @.str.27) #6
  unreachable

490:                                              ; preds = %484
  %491 = load ptr, ptr %33, align 8, !tbaa !9
  %492 = getelementptr inbounds float, ptr %491, i64 9
  %493 = load float, ptr %492, align 4, !tbaa !11
  %494 = fcmp oeq float %493, 1.570000e+02
  br i1 %494, label %496, label %495

495:                                              ; preds = %490
  call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef @.str, i32 noundef 162, ptr noundef @.str.1, ptr noundef @.str.28) #6
  unreachable

496:                                              ; preds = %490
  %497 = load ptr, ptr %33, align 8, !tbaa !9
  %498 = getelementptr inbounds float, ptr %497, i64 10
  %499 = load float, ptr %498, align 4, !tbaa !11
  %500 = fcmp oeq float %499, 1.600000e+02
  br i1 %500, label %502, label %501

501:                                              ; preds = %496
  call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef @.str, i32 noundef 163, ptr noundef @.str.1, ptr noundef @.str.29) #6
  unreachable

502:                                              ; preds = %496
  %503 = load ptr, ptr %33, align 8, !tbaa !9
  %504 = getelementptr inbounds float, ptr %503, i64 11
  %505 = load float, ptr %504, align 4, !tbaa !11
  %506 = fcmp oeq float %505, 1.630000e+02
  br i1 %506, label %508, label %507

507:                                              ; preds = %502
  call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef @.str, i32 noundef 164, ptr noundef @.str.1, ptr noundef @.str.30) #6
  unreachable

508:                                              ; preds = %502
  %509 = load ptr, ptr %29, align 8, !tbaa !9
  call void @ggml_free(ptr noundef %509)
  call void @llvm.lifetime.end.p0(i64 8, ptr %33) #5
  call void @llvm.lifetime.end.p0(i64 8, ptr %32) #5
  call void @llvm.lifetime.end.p0(i64 8, ptr %31) #5
  call void @llvm.lifetime.end.p0(i64 8, ptr %30) #5
  call void @llvm.lifetime.end.p0(i64 8, ptr %29) #5
  call void @llvm.lifetime.start.p0(i64 8, ptr %34) #5
  %510 = call ptr @make_ctx()
  store ptr %510, ptr %34, align 8, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 8, ptr %35) #5
  %511 = load ptr, ptr %34, align 8, !tbaa !9
  %512 = call ptr @ggml_new_tensor_3d(ptr noundef %511, i32 noundef 1, i64 noundef 10, i64 noundef 10, i64 noundef 2)
  store ptr %512, ptr %35, align 8, !tbaa !9
  %513 = load ptr, ptr %35, align 8, !tbaa !9
  %514 = getelementptr inbounds %struct.ggml_tensor, ptr %513, i32 0, i32 10
  %515 = load ptr, ptr %514, align 8, !tbaa !17
  %516 = getelementptr inbounds [1024 x i16], ptr %7, i64 0, i64 0
  %517 = load ptr, ptr %35, align 8, !tbaa !9
  %518 = call i64 @ggml_nbytes(ptr noundef %517)
  call void @llvm.memcpy.p0.p0.i64(ptr align 1 %515, ptr align 16 %516, i64 %518, i1 false)
  call void @llvm.lifetime.start.p0(i64 8, ptr %36) #5
  %519 = load ptr, ptr %34, align 8, !tbaa !9
  %520 = load ptr, ptr %35, align 8, !tbaa !9
  %521 = call ptr @ggml_pool_2d(ptr noundef %519, ptr noundef %520, i32 noundef 1, i32 noundef 3, i32 noundef 4, i32 noundef 3, i32 noundef 4, float noundef 0.000000e+00, float noundef 0.000000e+00)
  store ptr %521, ptr %36, align 8, !tbaa !9
  %522 = load ptr, ptr %36, align 8, !tbaa !9
  %523 = getelementptr inbounds %struct.ggml_tensor, ptr %522, i32 0, i32 2
  %524 = getelementptr inbounds [4 x i64], ptr %523, i64 0, i64 0
  %525 = load i64, ptr %524, align 8, !tbaa !20
  %526 = icmp eq i64 %525, 3
  br i1 %526, label %528, label %527

527:                                              ; preds = %508
  call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef @.str, i32 noundef 177, ptr noundef @.str.1, ptr noundef @.str.2) #6
  unreachable

528:                                              ; preds = %508
  %529 = load ptr, ptr %36, align 8, !tbaa !9
  %530 = getelementptr inbounds %struct.ggml_tensor, ptr %529, i32 0, i32 2
  %531 = getelementptr inbounds [4 x i64], ptr %530, i64 0, i64 1
  %532 = load i64, ptr %531, align 8, !tbaa !20
  %533 = icmp eq i64 %532, 2
  br i1 %533, label %535, label %534

534:                                              ; preds = %528
  call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef @.str, i32 noundef 178, ptr noundef @.str.1, ptr noundef @.str.3) #6
  unreachable

535:                                              ; preds = %528
  %536 = load ptr, ptr %36, align 8, !tbaa !9
  %537 = getelementptr inbounds %struct.ggml_tensor, ptr %536, i32 0, i32 2
  %538 = getelementptr inbounds [4 x i64], ptr %537, i64 0, i64 2
  %539 = load i64, ptr %538, align 8, !tbaa !20
  %540 = icmp eq i64 %539, 2
  br i1 %540, label %542, label %541

541:                                              ; preds = %535
  call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef @.str, i32 noundef 179, ptr noundef @.str.1, ptr noundef @.str.17) #6
  unreachable

542:                                              ; preds = %535
  %543 = load ptr, ptr %36, align 8, !tbaa !9
  %544 = getelementptr inbounds %struct.ggml_tensor, ptr %543, i32 0, i32 2
  %545 = getelementptr inbounds [4 x i64], ptr %544, i64 0, i64 3
  %546 = load i64, ptr %545, align 8, !tbaa !20
  %547 = icmp eq i64 %546, 1
  br i1 %547, label %549, label %548

548:                                              ; preds = %542
  call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef @.str, i32 noundef 180, ptr noundef @.str.1, ptr noundef @.str.18) #6
  unreachable

549:                                              ; preds = %542
  call void @llvm.lifetime.start.p0(i64 8, ptr %37) #5
  %550 = load ptr, ptr %34, align 8, !tbaa !9
  %551 = call ptr @ggml_new_graph(ptr noundef %550)
  store ptr %551, ptr %37, align 8, !tbaa !9
  %552 = load ptr, ptr %37, align 8, !tbaa !9
  %553 = load ptr, ptr %36, align 8, !tbaa !9
  call void @ggml_build_forward_expand(ptr noundef %552, ptr noundef %553)
  %554 = load ptr, ptr %34, align 8, !tbaa !9
  %555 = load ptr, ptr %37, align 8, !tbaa !9
  %556 = call i32 @ggml_graph_compute_with_ctx(ptr noundef %554, ptr noundef %555, i32 noundef 4)
  call void @llvm.lifetime.start.p0(i64 8, ptr %38) #5
  %557 = load ptr, ptr %36, align 8, !tbaa !9
  %558 = call ptr @ggml_get_data_f32(ptr noundef %557)
  store ptr %558, ptr %38, align 8, !tbaa !9
  %559 = load ptr, ptr %38, align 8, !tbaa !9
  %560 = getelementptr inbounds float, ptr %559, i64 0
  %561 = load float, ptr %560, align 4, !tbaa !11
  %562 = fcmp oeq float %561, 1.700000e+01
  br i1 %562, label %564, label %563

563:                                              ; preds = %549
  call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef @.str, i32 noundef 188, ptr noundef @.str.1, ptr noundef @.str.19) #6
  unreachable

564:                                              ; preds = %549
  %565 = load ptr, ptr %38, align 8, !tbaa !9
  %566 = getelementptr inbounds float, ptr %565, i64 1
  %567 = load float, ptr %566, align 4, !tbaa !11
  %568 = fcmp oeq float %567, 2.000000e+01
  br i1 %568, label %570, label %569

569:                                              ; preds = %564
  call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef @.str, i32 noundef 189, ptr noundef @.str.1, ptr noundef @.str.20) #6
  unreachable

570:                                              ; preds = %564
  %571 = load ptr, ptr %38, align 8, !tbaa !9
  %572 = getelementptr inbounds float, ptr %571, i64 2
  %573 = load float, ptr %572, align 4, !tbaa !11
  %574 = fcmp oeq float %573, 2.300000e+01
  br i1 %574, label %576, label %575

575:                                              ; preds = %570
  call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef @.str, i32 noundef 190, ptr noundef @.str.1, ptr noundef @.str.21) #6
  unreachable

576:                                              ; preds = %570
  %577 = load ptr, ptr %38, align 8, !tbaa !9
  %578 = getelementptr inbounds float, ptr %577, i64 3
  %579 = load float, ptr %578, align 4, !tbaa !11
  %580 = fcmp oeq float %579, 5.700000e+01
  br i1 %580, label %582, label %581

581:                                              ; preds = %576
  call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef @.str, i32 noundef 191, ptr noundef @.str.1, ptr noundef @.str.22) #6
  unreachable

582:                                              ; preds = %576
  %583 = load ptr, ptr %38, align 8, !tbaa !9
  %584 = getelementptr inbounds float, ptr %583, i64 4
  %585 = load float, ptr %584, align 4, !tbaa !11
  %586 = fcmp oeq float %585, 6.000000e+01
  br i1 %586, label %588, label %587

587:                                              ; preds = %582
  call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef @.str, i32 noundef 192, ptr noundef @.str.1, ptr noundef @.str.23) #6
  unreachable

588:                                              ; preds = %582
  %589 = load ptr, ptr %38, align 8, !tbaa !9
  %590 = getelementptr inbounds float, ptr %589, i64 5
  %591 = load float, ptr %590, align 4, !tbaa !11
  %592 = fcmp oeq float %591, 6.300000e+01
  br i1 %592, label %594, label %593

593:                                              ; preds = %588
  call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef @.str, i32 noundef 193, ptr noundef @.str.1, ptr noundef @.str.24) #6
  unreachable

594:                                              ; preds = %588
  %595 = load ptr, ptr %38, align 8, !tbaa !9
  %596 = getelementptr inbounds float, ptr %595, i64 6
  %597 = load float, ptr %596, align 4, !tbaa !11
  %598 = fcmp oeq float %597, 1.170000e+02
  br i1 %598, label %600, label %599

599:                                              ; preds = %594
  call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef @.str, i32 noundef 194, ptr noundef @.str.1, ptr noundef @.str.25) #6
  unreachable

600:                                              ; preds = %594
  %601 = load ptr, ptr %38, align 8, !tbaa !9
  %602 = getelementptr inbounds float, ptr %601, i64 7
  %603 = load float, ptr %602, align 4, !tbaa !11
  %604 = fcmp oeq float %603, 1.200000e+02
  br i1 %604, label %606, label %605

605:                                              ; preds = %600
  call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef @.str, i32 noundef 195, ptr noundef @.str.1, ptr noundef @.str.26) #6
  unreachable

606:                                              ; preds = %600
  %607 = load ptr, ptr %38, align 8, !tbaa !9
  %608 = getelementptr inbounds float, ptr %607, i64 8
  %609 = load float, ptr %608, align 4, !tbaa !11
  %610 = fcmp oeq float %609, 1.230000e+02
  br i1 %610, label %612, label %611

611:                                              ; preds = %606
  call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef @.str, i32 noundef 196, ptr noundef @.str.1, ptr noundef @.str.27) #6
  unreachable

612:                                              ; preds = %606
  %613 = load ptr, ptr %38, align 8, !tbaa !9
  %614 = getelementptr inbounds float, ptr %613, i64 9
  %615 = load float, ptr %614, align 4, !tbaa !11
  %616 = fcmp oeq float %615, 1.570000e+02
  br i1 %616, label %618, label %617

617:                                              ; preds = %612
  call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef @.str, i32 noundef 197, ptr noundef @.str.1, ptr noundef @.str.28) #6
  unreachable

618:                                              ; preds = %612
  %619 = load ptr, ptr %38, align 8, !tbaa !9
  %620 = getelementptr inbounds float, ptr %619, i64 10
  %621 = load float, ptr %620, align 4, !tbaa !11
  %622 = fcmp oeq float %621, 1.600000e+02
  br i1 %622, label %624, label %623

623:                                              ; preds = %618
  call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef @.str, i32 noundef 198, ptr noundef @.str.1, ptr noundef @.str.29) #6
  unreachable

624:                                              ; preds = %618
  %625 = load ptr, ptr %38, align 8, !tbaa !9
  %626 = getelementptr inbounds float, ptr %625, i64 11
  %627 = load float, ptr %626, align 4, !tbaa !11
  %628 = fcmp oeq float %627, 1.630000e+02
  br i1 %628, label %630, label %629

629:                                              ; preds = %624
  call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef @.str, i32 noundef 199, ptr noundef @.str.1, ptr noundef @.str.30) #6
  unreachable

630:                                              ; preds = %624
  %631 = load ptr, ptr %34, align 8, !tbaa !9
  call void @ggml_free(ptr noundef %631)
  call void @llvm.lifetime.end.p0(i64 8, ptr %38) #5
  call void @llvm.lifetime.end.p0(i64 8, ptr %37) #5
  call void @llvm.lifetime.end.p0(i64 8, ptr %36) #5
  call void @llvm.lifetime.end.p0(i64 8, ptr %35) #5
  call void @llvm.lifetime.end.p0(i64 8, ptr %34) #5
  call void @llvm.lifetime.start.p0(i64 8, ptr %39) #5
  %632 = call ptr @make_ctx()
  store ptr %632, ptr %39, align 8, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 8, ptr %40) #5
  %633 = load ptr, ptr %39, align 8, !tbaa !9
  %634 = call ptr @ggml_new_tensor_3d(ptr noundef %633, i32 noundef 0, i64 noundef 10, i64 noundef 10, i64 noundef 2)
  store ptr %634, ptr %40, align 8, !tbaa !9
  %635 = load ptr, ptr %40, align 8, !tbaa !9
  %636 = getelementptr inbounds %struct.ggml_tensor, ptr %635, i32 0, i32 10
  %637 = load ptr, ptr %636, align 8, !tbaa !17
  %638 = getelementptr inbounds [1024 x float], ptr %6, i64 0, i64 0
  %639 = load ptr, ptr %40, align 8, !tbaa !9
  %640 = call i64 @ggml_nbytes(ptr noundef %639)
  call void @llvm.memcpy.p0.p0.i64(ptr align 1 %637, ptr align 16 %638, i64 %640, i1 false)
  call void @llvm.lifetime.start.p0(i64 8, ptr %41) #5
  %641 = load ptr, ptr %39, align 8, !tbaa !9
  %642 = load ptr, ptr %40, align 8, !tbaa !9
  %643 = call ptr @ggml_pool_2d(ptr noundef %641, ptr noundef %642, i32 noundef 0, i32 noundef 3, i32 noundef 4, i32 noundef 3, i32 noundef 4, float noundef 0.000000e+00, float noundef 0.000000e+00)
  store ptr %643, ptr %41, align 8, !tbaa !9
  %644 = load ptr, ptr %41, align 8, !tbaa !9
  %645 = getelementptr inbounds %struct.ggml_tensor, ptr %644, i32 0, i32 2
  %646 = getelementptr inbounds [4 x i64], ptr %645, i64 0, i64 0
  %647 = load i64, ptr %646, align 8, !tbaa !20
  %648 = icmp eq i64 %647, 3
  br i1 %648, label %650, label %649

649:                                              ; preds = %630
  call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef @.str, i32 noundef 212, ptr noundef @.str.1, ptr noundef @.str.2) #6
  unreachable

650:                                              ; preds = %630
  %651 = load ptr, ptr %41, align 8, !tbaa !9
  %652 = getelementptr inbounds %struct.ggml_tensor, ptr %651, i32 0, i32 2
  %653 = getelementptr inbounds [4 x i64], ptr %652, i64 0, i64 1
  %654 = load i64, ptr %653, align 8, !tbaa !20
  %655 = icmp eq i64 %654, 2
  br i1 %655, label %657, label %656

656:                                              ; preds = %650
  call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef @.str, i32 noundef 213, ptr noundef @.str.1, ptr noundef @.str.3) #6
  unreachable

657:                                              ; preds = %650
  %658 = load ptr, ptr %41, align 8, !tbaa !9
  %659 = getelementptr inbounds %struct.ggml_tensor, ptr %658, i32 0, i32 2
  %660 = getelementptr inbounds [4 x i64], ptr %659, i64 0, i64 2
  %661 = load i64, ptr %660, align 8, !tbaa !20
  %662 = icmp eq i64 %661, 2
  br i1 %662, label %664, label %663

663:                                              ; preds = %657
  call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef @.str, i32 noundef 214, ptr noundef @.str.1, ptr noundef @.str.17) #6
  unreachable

664:                                              ; preds = %657
  %665 = load ptr, ptr %41, align 8, !tbaa !9
  %666 = getelementptr inbounds %struct.ggml_tensor, ptr %665, i32 0, i32 2
  %667 = getelementptr inbounds [4 x i64], ptr %666, i64 0, i64 3
  %668 = load i64, ptr %667, align 8, !tbaa !20
  %669 = icmp eq i64 %668, 1
  br i1 %669, label %671, label %670

670:                                              ; preds = %664
  call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef @.str, i32 noundef 215, ptr noundef @.str.1, ptr noundef @.str.18) #6
  unreachable

671:                                              ; preds = %664
  call void @llvm.lifetime.start.p0(i64 8, ptr %42) #5
  %672 = load ptr, ptr %39, align 8, !tbaa !9
  %673 = call ptr @ggml_new_graph(ptr noundef %672)
  store ptr %673, ptr %42, align 8, !tbaa !9
  %674 = load ptr, ptr %42, align 8, !tbaa !9
  %675 = load ptr, ptr %41, align 8, !tbaa !9
  call void @ggml_build_forward_expand(ptr noundef %674, ptr noundef %675)
  %676 = load ptr, ptr %39, align 8, !tbaa !9
  %677 = load ptr, ptr %42, align 8, !tbaa !9
  %678 = call i32 @ggml_graph_compute_with_ctx(ptr noundef %676, ptr noundef %677, i32 noundef 4)
  call void @llvm.lifetime.start.p0(i64 8, ptr %43) #5
  %679 = load ptr, ptr %41, align 8, !tbaa !9
  %680 = call ptr @ggml_get_data_f32(ptr noundef %679)
  store ptr %680, ptr %43, align 8, !tbaa !9
  %681 = load ptr, ptr %43, align 8, !tbaa !9
  %682 = getelementptr inbounds float, ptr %681, i64 0
  %683 = load float, ptr %682, align 4, !tbaa !11
  %684 = fcmp oeq float %683, 3.300000e+01
  br i1 %684, label %686, label %685

685:                                              ; preds = %671
  call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef @.str, i32 noundef 223, ptr noundef @.str.1, ptr noundef @.str.31) #6
  unreachable

686:                                              ; preds = %671
  %687 = load ptr, ptr %43, align 8, !tbaa !9
  %688 = getelementptr inbounds float, ptr %687, i64 1
  %689 = load float, ptr %688, align 4, !tbaa !11
  %690 = fcmp oeq float %689, 3.600000e+01
  br i1 %690, label %692, label %691

691:                                              ; preds = %686
  call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef @.str, i32 noundef 224, ptr noundef @.str.1, ptr noundef @.str.32) #6
  unreachable

692:                                              ; preds = %686
  %693 = load ptr, ptr %43, align 8, !tbaa !9
  %694 = getelementptr inbounds float, ptr %693, i64 2
  %695 = load float, ptr %694, align 4, !tbaa !11
  %696 = fcmp oeq float %695, 3.900000e+01
  br i1 %696, label %698, label %697

697:                                              ; preds = %692
  call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef @.str, i32 noundef 225, ptr noundef @.str.1, ptr noundef @.str.33) #6
  unreachable

698:                                              ; preds = %692
  %699 = load ptr, ptr %43, align 8, !tbaa !9
  %700 = getelementptr inbounds float, ptr %699, i64 3
  %701 = load float, ptr %700, align 4, !tbaa !11
  %702 = fcmp oeq float %701, 7.300000e+01
  br i1 %702, label %704, label %703

703:                                              ; preds = %698
  call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef @.str, i32 noundef 226, ptr noundef @.str.1, ptr noundef @.str.34) #6
  unreachable

704:                                              ; preds = %698
  %705 = load ptr, ptr %43, align 8, !tbaa !9
  %706 = getelementptr inbounds float, ptr %705, i64 4
  %707 = load float, ptr %706, align 4, !tbaa !11
  %708 = fcmp oeq float %707, 7.600000e+01
  br i1 %708, label %710, label %709

709:                                              ; preds = %704
  call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef @.str, i32 noundef 227, ptr noundef @.str.1, ptr noundef @.str.35) #6
  unreachable

710:                                              ; preds = %704
  %711 = load ptr, ptr %43, align 8, !tbaa !9
  %712 = getelementptr inbounds float, ptr %711, i64 5
  %713 = load float, ptr %712, align 4, !tbaa !11
  %714 = fcmp oeq float %713, 7.900000e+01
  br i1 %714, label %716, label %715

715:                                              ; preds = %710
  call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef @.str, i32 noundef 228, ptr noundef @.str.1, ptr noundef @.str.36) #6
  unreachable

716:                                              ; preds = %710
  %717 = load ptr, ptr %43, align 8, !tbaa !9
  %718 = getelementptr inbounds float, ptr %717, i64 6
  %719 = load float, ptr %718, align 4, !tbaa !11
  %720 = fcmp oeq float %719, 1.330000e+02
  br i1 %720, label %722, label %721

721:                                              ; preds = %716
  call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef @.str, i32 noundef 229, ptr noundef @.str.1, ptr noundef @.str.37) #6
  unreachable

722:                                              ; preds = %716
  %723 = load ptr, ptr %43, align 8, !tbaa !9
  %724 = getelementptr inbounds float, ptr %723, i64 7
  %725 = load float, ptr %724, align 4, !tbaa !11
  %726 = fcmp oeq float %725, 1.360000e+02
  br i1 %726, label %728, label %727

727:                                              ; preds = %722
  call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef @.str, i32 noundef 230, ptr noundef @.str.1, ptr noundef @.str.38) #6
  unreachable

728:                                              ; preds = %722
  %729 = load ptr, ptr %43, align 8, !tbaa !9
  %730 = getelementptr inbounds float, ptr %729, i64 8
  %731 = load float, ptr %730, align 4, !tbaa !11
  %732 = fcmp oeq float %731, 1.390000e+02
  br i1 %732, label %734, label %733

733:                                              ; preds = %728
  call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef @.str, i32 noundef 231, ptr noundef @.str.1, ptr noundef @.str.39) #6
  unreachable

734:                                              ; preds = %728
  %735 = load ptr, ptr %43, align 8, !tbaa !9
  %736 = getelementptr inbounds float, ptr %735, i64 9
  %737 = load float, ptr %736, align 4, !tbaa !11
  %738 = fcmp oeq float %737, 1.730000e+02
  br i1 %738, label %740, label %739

739:                                              ; preds = %734
  call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef @.str, i32 noundef 232, ptr noundef @.str.1, ptr noundef @.str.40) #6
  unreachable

740:                                              ; preds = %734
  %741 = load ptr, ptr %43, align 8, !tbaa !9
  %742 = getelementptr inbounds float, ptr %741, i64 10
  %743 = load float, ptr %742, align 4, !tbaa !11
  %744 = fcmp oeq float %743, 1.760000e+02
  br i1 %744, label %746, label %745

745:                                              ; preds = %740
  call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef @.str, i32 noundef 233, ptr noundef @.str.1, ptr noundef @.str.41) #6
  unreachable

746:                                              ; preds = %740
  %747 = load ptr, ptr %43, align 8, !tbaa !9
  %748 = getelementptr inbounds float, ptr %747, i64 11
  %749 = load float, ptr %748, align 4, !tbaa !11
  %750 = fcmp oeq float %749, 1.790000e+02
  br i1 %750, label %752, label %751

751:                                              ; preds = %746
  call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef @.str, i32 noundef 234, ptr noundef @.str.1, ptr noundef @.str.42) #6
  unreachable

752:                                              ; preds = %746
  %753 = load ptr, ptr %39, align 8, !tbaa !9
  call void @ggml_free(ptr noundef %753)
  call void @llvm.lifetime.end.p0(i64 8, ptr %43) #5
  call void @llvm.lifetime.end.p0(i64 8, ptr %42) #5
  call void @llvm.lifetime.end.p0(i64 8, ptr %41) #5
  call void @llvm.lifetime.end.p0(i64 8, ptr %40) #5
  call void @llvm.lifetime.end.p0(i64 8, ptr %39) #5
  call void @llvm.lifetime.start.p0(i64 8, ptr %44) #5
  %754 = call ptr @make_ctx()
  store ptr %754, ptr %44, align 8, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 8, ptr %45) #5
  %755 = load ptr, ptr %44, align 8, !tbaa !9
  %756 = call ptr @ggml_new_tensor_3d(ptr noundef %755, i32 noundef 1, i64 noundef 10, i64 noundef 10, i64 noundef 2)
  store ptr %756, ptr %45, align 8, !tbaa !9
  %757 = load ptr, ptr %45, align 8, !tbaa !9
  %758 = getelementptr inbounds %struct.ggml_tensor, ptr %757, i32 0, i32 10
  %759 = load ptr, ptr %758, align 8, !tbaa !17
  %760 = getelementptr inbounds [1024 x i16], ptr %7, i64 0, i64 0
  %761 = load ptr, ptr %45, align 8, !tbaa !9
  %762 = call i64 @ggml_nbytes(ptr noundef %761)
  call void @llvm.memcpy.p0.p0.i64(ptr align 1 %759, ptr align 16 %760, i64 %762, i1 false)
  call void @llvm.lifetime.start.p0(i64 8, ptr %46) #5
  %763 = load ptr, ptr %44, align 8, !tbaa !9
  %764 = load ptr, ptr %45, align 8, !tbaa !9
  %765 = call ptr @ggml_pool_2d(ptr noundef %763, ptr noundef %764, i32 noundef 0, i32 noundef 3, i32 noundef 4, i32 noundef 3, i32 noundef 4, float noundef 0.000000e+00, float noundef 0.000000e+00)
  store ptr %765, ptr %46, align 8, !tbaa !9
  %766 = load ptr, ptr %46, align 8, !tbaa !9
  %767 = getelementptr inbounds %struct.ggml_tensor, ptr %766, i32 0, i32 2
  %768 = getelementptr inbounds [4 x i64], ptr %767, i64 0, i64 0
  %769 = load i64, ptr %768, align 8, !tbaa !20
  %770 = icmp eq i64 %769, 3
  br i1 %770, label %772, label %771

771:                                              ; preds = %752
  call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef @.str, i32 noundef 246, ptr noundef @.str.1, ptr noundef @.str.2) #6
  unreachable

772:                                              ; preds = %752
  %773 = load ptr, ptr %46, align 8, !tbaa !9
  %774 = getelementptr inbounds %struct.ggml_tensor, ptr %773, i32 0, i32 2
  %775 = getelementptr inbounds [4 x i64], ptr %774, i64 0, i64 1
  %776 = load i64, ptr %775, align 8, !tbaa !20
  %777 = icmp eq i64 %776, 2
  br i1 %777, label %779, label %778

778:                                              ; preds = %772
  call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef @.str, i32 noundef 247, ptr noundef @.str.1, ptr noundef @.str.3) #6
  unreachable

779:                                              ; preds = %772
  %780 = load ptr, ptr %46, align 8, !tbaa !9
  %781 = getelementptr inbounds %struct.ggml_tensor, ptr %780, i32 0, i32 2
  %782 = getelementptr inbounds [4 x i64], ptr %781, i64 0, i64 2
  %783 = load i64, ptr %782, align 8, !tbaa !20
  %784 = icmp eq i64 %783, 2
  br i1 %784, label %786, label %785

785:                                              ; preds = %779
  call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef @.str, i32 noundef 248, ptr noundef @.str.1, ptr noundef @.str.17) #6
  unreachable

786:                                              ; preds = %779
  %787 = load ptr, ptr %46, align 8, !tbaa !9
  %788 = getelementptr inbounds %struct.ggml_tensor, ptr %787, i32 0, i32 2
  %789 = getelementptr inbounds [4 x i64], ptr %788, i64 0, i64 3
  %790 = load i64, ptr %789, align 8, !tbaa !20
  %791 = icmp eq i64 %790, 1
  br i1 %791, label %793, label %792

792:                                              ; preds = %786
  call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef @.str, i32 noundef 249, ptr noundef @.str.1, ptr noundef @.str.18) #6
  unreachable

793:                                              ; preds = %786
  call void @llvm.lifetime.start.p0(i64 8, ptr %47) #5
  %794 = load ptr, ptr %44, align 8, !tbaa !9
  %795 = call ptr @ggml_new_graph(ptr noundef %794)
  store ptr %795, ptr %47, align 8, !tbaa !9
  %796 = load ptr, ptr %47, align 8, !tbaa !9
  %797 = load ptr, ptr %46, align 8, !tbaa !9
  call void @ggml_build_forward_expand(ptr noundef %796, ptr noundef %797)
  %798 = load ptr, ptr %44, align 8, !tbaa !9
  %799 = load ptr, ptr %47, align 8, !tbaa !9
  %800 = call i32 @ggml_graph_compute_with_ctx(ptr noundef %798, ptr noundef %799, i32 noundef 4)
  call void @llvm.lifetime.start.p0(i64 8, ptr %48) #5
  %801 = load ptr, ptr %46, align 8, !tbaa !9
  %802 = call ptr @ggml_get_data_f32(ptr noundef %801)
  store ptr %802, ptr %48, align 8, !tbaa !9
  %803 = load ptr, ptr %48, align 8, !tbaa !9
  %804 = getelementptr inbounds float, ptr %803, i64 0
  %805 = load float, ptr %804, align 4, !tbaa !11
  %806 = fcmp oeq float %805, 3.300000e+01
  br i1 %806, label %808, label %807

807:                                              ; preds = %793
  call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef @.str, i32 noundef 257, ptr noundef @.str.1, ptr noundef @.str.31) #6
  unreachable

808:                                              ; preds = %793
  %809 = load ptr, ptr %48, align 8, !tbaa !9
  %810 = getelementptr inbounds float, ptr %809, i64 1
  %811 = load float, ptr %810, align 4, !tbaa !11
  %812 = fcmp oeq float %811, 3.600000e+01
  br i1 %812, label %814, label %813

813:                                              ; preds = %808
  call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef @.str, i32 noundef 258, ptr noundef @.str.1, ptr noundef @.str.32) #6
  unreachable

814:                                              ; preds = %808
  %815 = load ptr, ptr %48, align 8, !tbaa !9
  %816 = getelementptr inbounds float, ptr %815, i64 2
  %817 = load float, ptr %816, align 4, !tbaa !11
  %818 = fcmp oeq float %817, 3.900000e+01
  br i1 %818, label %820, label %819

819:                                              ; preds = %814
  call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef @.str, i32 noundef 259, ptr noundef @.str.1, ptr noundef @.str.33) #6
  unreachable

820:                                              ; preds = %814
  %821 = load ptr, ptr %48, align 8, !tbaa !9
  %822 = getelementptr inbounds float, ptr %821, i64 3
  %823 = load float, ptr %822, align 4, !tbaa !11
  %824 = fcmp oeq float %823, 7.300000e+01
  br i1 %824, label %826, label %825

825:                                              ; preds = %820
  call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef @.str, i32 noundef 260, ptr noundef @.str.1, ptr noundef @.str.34) #6
  unreachable

826:                                              ; preds = %820
  %827 = load ptr, ptr %48, align 8, !tbaa !9
  %828 = getelementptr inbounds float, ptr %827, i64 4
  %829 = load float, ptr %828, align 4, !tbaa !11
  %830 = fcmp oeq float %829, 7.600000e+01
  br i1 %830, label %832, label %831

831:                                              ; preds = %826
  call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef @.str, i32 noundef 261, ptr noundef @.str.1, ptr noundef @.str.35) #6
  unreachable

832:                                              ; preds = %826
  %833 = load ptr, ptr %48, align 8, !tbaa !9
  %834 = getelementptr inbounds float, ptr %833, i64 5
  %835 = load float, ptr %834, align 4, !tbaa !11
  %836 = fcmp oeq float %835, 7.900000e+01
  br i1 %836, label %838, label %837

837:                                              ; preds = %832
  call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef @.str, i32 noundef 262, ptr noundef @.str.1, ptr noundef @.str.36) #6
  unreachable

838:                                              ; preds = %832
  %839 = load ptr, ptr %48, align 8, !tbaa !9
  %840 = getelementptr inbounds float, ptr %839, i64 6
  %841 = load float, ptr %840, align 4, !tbaa !11
  %842 = fcmp oeq float %841, 1.330000e+02
  br i1 %842, label %844, label %843

843:                                              ; preds = %838
  call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef @.str, i32 noundef 263, ptr noundef @.str.1, ptr noundef @.str.37) #6
  unreachable

844:                                              ; preds = %838
  %845 = load ptr, ptr %48, align 8, !tbaa !9
  %846 = getelementptr inbounds float, ptr %845, i64 7
  %847 = load float, ptr %846, align 4, !tbaa !11
  %848 = fcmp oeq float %847, 1.360000e+02
  br i1 %848, label %850, label %849

849:                                              ; preds = %844
  call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef @.str, i32 noundef 264, ptr noundef @.str.1, ptr noundef @.str.38) #6
  unreachable

850:                                              ; preds = %844
  %851 = load ptr, ptr %48, align 8, !tbaa !9
  %852 = getelementptr inbounds float, ptr %851, i64 8
  %853 = load float, ptr %852, align 4, !tbaa !11
  %854 = fcmp oeq float %853, 1.390000e+02
  br i1 %854, label %856, label %855

855:                                              ; preds = %850
  call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef @.str, i32 noundef 265, ptr noundef @.str.1, ptr noundef @.str.39) #6
  unreachable

856:                                              ; preds = %850
  %857 = load ptr, ptr %48, align 8, !tbaa !9
  %858 = getelementptr inbounds float, ptr %857, i64 9
  %859 = load float, ptr %858, align 4, !tbaa !11
  %860 = fcmp oeq float %859, 1.730000e+02
  br i1 %860, label %862, label %861

861:                                              ; preds = %856
  call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef @.str, i32 noundef 266, ptr noundef @.str.1, ptr noundef @.str.40) #6
  unreachable

862:                                              ; preds = %856
  %863 = load ptr, ptr %48, align 8, !tbaa !9
  %864 = getelementptr inbounds float, ptr %863, i64 10
  %865 = load float, ptr %864, align 4, !tbaa !11
  %866 = fcmp oeq float %865, 1.760000e+02
  br i1 %866, label %868, label %867

867:                                              ; preds = %862
  call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef @.str, i32 noundef 267, ptr noundef @.str.1, ptr noundef @.str.41) #6
  unreachable

868:                                              ; preds = %862
  %869 = load ptr, ptr %48, align 8, !tbaa !9
  %870 = getelementptr inbounds float, ptr %869, i64 11
  %871 = load float, ptr %870, align 4, !tbaa !11
  %872 = fcmp oeq float %871, 1.790000e+02
  br i1 %872, label %874, label %873

873:                                              ; preds = %868
  call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef @.str, i32 noundef 268, ptr noundef @.str.1, ptr noundef @.str.42) #6
  unreachable

874:                                              ; preds = %868
  %875 = load ptr, ptr %44, align 8, !tbaa !9
  call void @ggml_free(ptr noundef %875)
  call void @llvm.lifetime.end.p0(i64 8, ptr %48) #5
  call void @llvm.lifetime.end.p0(i64 8, ptr %47) #5
  call void @llvm.lifetime.end.p0(i64 8, ptr %46) #5
  call void @llvm.lifetime.end.p0(i64 8, ptr %45) #5
  call void @llvm.lifetime.end.p0(i64 8, ptr %44) #5
  call void @llvm.lifetime.end.p0(i64 2048, ptr %7) #5
  call void @llvm.lifetime.end.p0(i64 4096, ptr %6) #5
  ret i32 0
}

declare zeroext i16 @ggml_fp32_to_fp16(float noundef) #3

declare ptr @ggml_new_tensor_2d(ptr noundef, i32 noundef, i64 noundef, i64 noundef) #3

declare i64 @ggml_nbytes(ptr noundef) #3

declare ptr @ggml_pool_1d(ptr noundef, ptr noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef) #3

; Function Attrs: noreturn
declare void @ggml_abort(ptr noundef, i32 noundef, ptr noundef, ...) #4

declare ptr @ggml_new_graph(ptr noundef) #3

declare void @ggml_build_forward_expand(ptr noundef, ptr noundef) #3

declare i32 @ggml_graph_compute_with_ctx(ptr noundef, ptr noundef, i32 noundef) #3

declare ptr @ggml_get_data_f32(ptr noundef) #3

declare void @ggml_free(ptr noundef) #3

declare ptr @ggml_new_tensor_3d(ptr noundef, i32 noundef, i64 noundef, i64 noundef, i64 noundef) #3

declare ptr @ggml_pool_2d(ptr noundef, ptr noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef, float noundef, float noundef) #3

attributes #0 = { 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 #1 = { nocallback nofree nosync nounwind willreturn memory(argmem: readwrite) }
attributes #2 = { nocallback nofree nounwind willreturn memory(argmem: readwrite) }
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 "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #5 = { nounwind }
attributes #6 = { noreturn }

!llvm.module.flags = !{!0, !1, !2, !3}
!llvm.ident = !{!4}

!0 = !{i32 1, !"wchar_size", i32 4}
!1 = !{i32 8, !"PIC Level", i32 2}
!2 = !{i32 7, !"PIE Level", i32 2}
!3 = !{i32 7, !"uwtable", i32 2}
!4 = !{!"clang version 19.1.0 (git@github.com:llvm/llvm-project.git a4bf6cd7cfb1a1421ba92bca9d017b49936c55e4)"}
!5 = !{!6, !6, i64 0}
!6 = !{!"int", !7, i64 0}
!7 = !{!"omnipotent char", !8, i64 0}
!8 = !{!"Simple C/C++ TBAA"}
!9 = !{!10, !10, i64 0}
!10 = !{!"any pointer", !7, i64 0}
!11 = !{!12, !12, i64 0}
!12 = !{!"float", !7, i64 0}
!13 = !{!14, !14, i64 0}
!14 = !{!"short", !7, i64 0}
!15 = distinct !{!15, !16}
!16 = !{!"llvm.loop.mustprogress"}
!17 = !{!18, !10, i64 248}
!18 = !{!"ggml_tensor", !6, i64 0, !10, i64 8, !7, i64 16, !7, i64 48, !6, i64 80, !7, i64 84, !6, i64 148, !7, i64 152, !10, i64 232, !19, i64 240, !10, i64 248, !7, i64 256, !10, i64 320, !7, i64 328}
!19 = !{!"long", !7, i64 0}
!20 = !{!19, !19, 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 [65 x i8], align 1
@.str.1 = external hidden unnamed_addr constant [23 x i8], align 1
@.str.2 = external hidden unnamed_addr constant [21 x i8], align 1
@.str.3 = external hidden unnamed_addr constant [21 x i8], align 1
@.str.4 = external hidden unnamed_addr constant [21 x i8], align 1
@.str.5 = external hidden unnamed_addr constant [15 x i8], align 1
@.str.6 = external hidden unnamed_addr constant [15 x i8], align 1
@.str.7 = external hidden unnamed_addr constant [15 x i8], align 1
@.str.8 = external hidden unnamed_addr constant [16 x i8], align 1
@.str.9 = external hidden unnamed_addr constant [16 x i8], align 1
@.str.10 = external hidden unnamed_addr constant [16 x i8], align 1
@.str.11 = external hidden unnamed_addr constant [15 x i8], align 1
@.str.12 = external hidden unnamed_addr constant [15 x i8], align 1
@.str.13 = external hidden unnamed_addr constant [15 x i8], align 1
@.str.14 = external hidden unnamed_addr constant [16 x i8], align 1
@.str.15 = external hidden unnamed_addr constant [16 x i8], align 1
@.str.16 = external hidden unnamed_addr constant [16 x i8], align 1
@.str.17 = external hidden unnamed_addr constant [21 x i8], align 1
@.str.18 = external hidden unnamed_addr constant [21 x i8], align 1
@.str.19 = external hidden unnamed_addr constant [16 x i8], align 1
@.str.20 = external hidden unnamed_addr constant [16 x i8], align 1
@.str.21 = external hidden unnamed_addr constant [16 x i8], align 1
@.str.22 = external hidden unnamed_addr constant [16 x i8], align 1
@.str.23 = external hidden unnamed_addr constant [16 x i8], align 1
@.str.24 = external hidden unnamed_addr constant [16 x i8], align 1
@.str.25 = external hidden unnamed_addr constant [17 x i8], align 1
@.str.26 = external hidden unnamed_addr constant [17 x i8], align 1
@.str.27 = external hidden unnamed_addr constant [17 x i8], align 1
@.str.28 = external hidden unnamed_addr constant [17 x i8], align 1
@.str.29 = external hidden unnamed_addr constant [18 x i8], align 1
@.str.30 = external hidden unnamed_addr constant [18 x i8], align 1
@.str.31 = external hidden unnamed_addr constant [16 x i8], align 1
@.str.32 = external hidden unnamed_addr constant [16 x i8], align 1
@.str.33 = external hidden unnamed_addr constant [16 x i8], align 1
@.str.34 = external hidden unnamed_addr constant [16 x i8], align 1
@.str.35 = external hidden unnamed_addr constant [16 x i8], align 1
@.str.36 = external hidden unnamed_addr constant [16 x i8], align 1
@.str.37 = external hidden unnamed_addr constant [17 x i8], align 1
@.str.38 = external hidden unnamed_addr constant [17 x i8], align 1
@.str.39 = external hidden unnamed_addr constant [17 x i8], align 1
@.str.40 = external hidden unnamed_addr constant [17 x i8], align 1
@.str.41 = external hidden unnamed_addr constant [18 x i8], align 1
@.str.42 = external hidden unnamed_addr constant [18 x i8], align 1

; Function Attrs: nounwind uwtable
declare dso_local ptr @make_ctx() local_unnamed_addr #0

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

; Function Attrs: mustprogress nocallback nofree nounwind willreturn memory(argmem: readwrite)
declare void @llvm.memcpy.p0.p0.i64(ptr noalias nocapture writeonly, ptr noalias nocapture readonly, i64, i1 immarg) #2

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

; Function Attrs: nounwind uwtable
define dso_local noundef i32 @main(i32 noundef %0, ptr nocapture noundef readnone %1) local_unnamed_addr #0 {
  %3 = alloca [1024 x float], align 16
  %4 = alloca [1024 x i16], align 16
  call void @llvm.lifetime.start.p0(i64 4096, ptr nonnull %3) #5
  call void @llvm.lifetime.start.p0(i64 2048, ptr nonnull %4) #5
  br label %15

5:                                                ; preds = %15
  %6 = tail call ptr @make_ctx()
  %7 = tail call ptr @ggml_new_tensor_2d(ptr noundef %6, i32 noundef 0, i64 noundef 10, i64 noundef 2) #5
  %8 = getelementptr inbounds i8, ptr %7, i64 248
  %9 = load ptr, ptr %8, align 8, !tbaa !5
  %10 = tail call i64 @ggml_nbytes(ptr noundef %7) #5
  call void @llvm.memcpy.p0.p0.i64(ptr align 1 %9, ptr nonnull align 16 %3, i64 %10, i1 false)
  %11 = tail call ptr @ggml_pool_1d(ptr noundef %6, ptr noundef %7, i32 noundef 1, i32 noundef 3, i32 noundef 3, i32 noundef 0) #5
  %12 = getelementptr inbounds i8, ptr %11, i64 16
  %13 = load i64, ptr %12, align 8, !tbaa !12
  %14 = icmp eq i64 %13, 3
  br i1 %14, label %22, label %21

15:                                               ; preds = %2, %15
  %indvars.iv = phi i64 [ 0, %2 ], [ %indvars.iv.next, %15 ]
  %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1
  %16 = trunc nuw nsw i64 %indvars.iv.next to i32
  %17 = uitofp nneg i32 %16 to float
  %18 = getelementptr inbounds [1024 x float], ptr %3, i64 0, i64 %indvars.iv
  store float %17, ptr %18, align 4, !tbaa !13
  %19 = tail call zeroext i16 @ggml_fp32_to_fp16(float noundef %17) #5
  %20 = getelementptr inbounds [1024 x i16], ptr %4, i64 0, i64 %indvars.iv
  store i16 %19, ptr %20, align 2, !tbaa !15
  %exitcond.not = icmp eq i64 %indvars.iv.next, 1024
  br i1 %exitcond.not, label %5, label %15, !llvm.loop !17

21:                                               ; preds = %5
  tail call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef nonnull @.str, i32 noundef 32, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.2) #6
  unreachable

22:                                               ; preds = %5
  %23 = getelementptr inbounds i8, ptr %11, i64 24
  %24 = load i64, ptr %23, align 8, !tbaa !12
  %25 = icmp eq i64 %24, 2
  br i1 %25, label %27, label %26

26:                                               ; preds = %22
  tail call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef nonnull @.str, i32 noundef 33, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.3) #6
  unreachable

27:                                               ; preds = %22
  %28 = getelementptr inbounds i8, ptr %11, i64 32
  %29 = load i64, ptr %28, align 8, !tbaa !12
  %30 = icmp eq i64 %29, 1
  br i1 %30, label %32, label %31

31:                                               ; preds = %27
  tail call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef nonnull @.str, i32 noundef 34, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.4) #6
  unreachable

32:                                               ; preds = %27
  %33 = tail call ptr @ggml_new_graph(ptr noundef %6) #5
  tail call void @ggml_build_forward_expand(ptr noundef %33, ptr noundef nonnull %11) #5
  %34 = tail call i32 @ggml_graph_compute_with_ctx(ptr noundef %6, ptr noundef %33, i32 noundef 4) #5
  %35 = tail call ptr @ggml_get_data_f32(ptr noundef nonnull %11) #5
  %36 = load float, ptr %35, align 4, !tbaa !13
  %37 = fcmp oeq float %36, 2.000000e+00
  br i1 %37, label %39, label %38

38:                                               ; preds = %32
  tail call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef nonnull @.str, i32 noundef 43, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.5) #6
  unreachable

39:                                               ; preds = %32
  %40 = getelementptr inbounds i8, ptr %35, i64 4
  %41 = load float, ptr %40, align 4, !tbaa !13
  %42 = fcmp oeq float %41, 5.000000e+00
  br i1 %42, label %44, label %43

43:                                               ; preds = %39
  tail call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef nonnull @.str, i32 noundef 44, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.6) #6
  unreachable

44:                                               ; preds = %39
  %45 = getelementptr inbounds i8, ptr %35, i64 8
  %46 = load float, ptr %45, align 4, !tbaa !13
  %47 = fcmp oeq float %46, 8.000000e+00
  br i1 %47, label %49, label %48

48:                                               ; preds = %44
  tail call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef nonnull @.str, i32 noundef 45, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.7) #6
  unreachable

49:                                               ; preds = %44
  %50 = getelementptr inbounds i8, ptr %35, i64 12
  %51 = load float, ptr %50, align 4, !tbaa !13
  %52 = fcmp oeq float %51, 1.200000e+01
  br i1 %52, label %54, label %53

53:                                               ; preds = %49
  tail call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef nonnull @.str, i32 noundef 46, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.8) #6
  unreachable

54:                                               ; preds = %49
  %55 = getelementptr inbounds i8, ptr %35, i64 16
  %56 = load float, ptr %55, align 4, !tbaa !13
  %57 = fcmp oeq float %56, 1.500000e+01
  br i1 %57, label %59, label %58

58:                                               ; preds = %54
  tail call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef nonnull @.str, i32 noundef 47, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.9) #6
  unreachable

59:                                               ; preds = %54
  %60 = getelementptr inbounds i8, ptr %35, i64 20
  %61 = load float, ptr %60, align 4, !tbaa !13
  %62 = fcmp oeq float %61, 1.800000e+01
  br i1 %62, label %64, label %63

63:                                               ; preds = %59
  tail call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef nonnull @.str, i32 noundef 48, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.10) #6
  unreachable

64:                                               ; preds = %59
  tail call void @ggml_free(ptr noundef %6) #5
  %65 = tail call ptr @make_ctx()
  %66 = tail call ptr @ggml_new_tensor_2d(ptr noundef %65, i32 noundef 1, i64 noundef 10, i64 noundef 2) #5
  %67 = getelementptr inbounds i8, ptr %66, i64 248
  %68 = load ptr, ptr %67, align 8, !tbaa !5
  %69 = tail call i64 @ggml_nbytes(ptr noundef %66) #5
  call void @llvm.memcpy.p0.p0.i64(ptr align 1 %68, ptr nonnull align 16 %4, i64 %69, i1 false)
  %70 = tail call ptr @ggml_pool_1d(ptr noundef %65, ptr noundef %66, i32 noundef 1, i32 noundef 3, i32 noundef 3, i32 noundef 0) #5
  %71 = getelementptr inbounds i8, ptr %70, i64 16
  %72 = load i64, ptr %71, align 8, !tbaa !12
  %73 = icmp eq i64 %72, 3
  br i1 %73, label %75, label %74

74:                                               ; preds = %64
  tail call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef nonnull @.str, i32 noundef 60, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.2) #6
  unreachable

75:                                               ; preds = %64
  %76 = getelementptr inbounds i8, ptr %70, i64 24
  %77 = load i64, ptr %76, align 8, !tbaa !12
  %78 = icmp eq i64 %77, 2
  br i1 %78, label %80, label %79

79:                                               ; preds = %75
  tail call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef nonnull @.str, i32 noundef 61, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.3) #6
  unreachable

80:                                               ; preds = %75
  %81 = getelementptr inbounds i8, ptr %70, i64 32
  %82 = load i64, ptr %81, align 8, !tbaa !12
  %83 = icmp eq i64 %82, 1
  br i1 %83, label %85, label %84

84:                                               ; preds = %80
  tail call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef nonnull @.str, i32 noundef 62, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.4) #6
  unreachable

85:                                               ; preds = %80
  %86 = tail call ptr @ggml_new_graph(ptr noundef %65) #5
  tail call void @ggml_build_forward_expand(ptr noundef %86, ptr noundef nonnull %70) #5
  %87 = tail call i32 @ggml_graph_compute_with_ctx(ptr noundef %65, ptr noundef %86, i32 noundef 4) #5
  %88 = tail call ptr @ggml_get_data_f32(ptr noundef nonnull %70) #5
  %89 = load float, ptr %88, align 4, !tbaa !13
  %90 = fcmp oeq float %89, 2.000000e+00
  br i1 %90, label %92, label %91

91:                                               ; preds = %85
  tail call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef nonnull @.str, i32 noundef 71, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.5) #6
  unreachable

92:                                               ; preds = %85
  %93 = getelementptr inbounds i8, ptr %88, i64 4
  %94 = load float, ptr %93, align 4, !tbaa !13
  %95 = fcmp oeq float %94, 5.000000e+00
  br i1 %95, label %97, label %96

96:                                               ; preds = %92
  tail call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef nonnull @.str, i32 noundef 72, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.6) #6
  unreachable

97:                                               ; preds = %92
  %98 = getelementptr inbounds i8, ptr %88, i64 8
  %99 = load float, ptr %98, align 4, !tbaa !13
  %100 = fcmp oeq float %99, 8.000000e+00
  br i1 %100, label %102, label %101

101:                                              ; preds = %97
  tail call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef nonnull @.str, i32 noundef 73, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.7) #6
  unreachable

102:                                              ; preds = %97
  %103 = getelementptr inbounds i8, ptr %88, i64 12
  %104 = load float, ptr %103, align 4, !tbaa !13
  %105 = fcmp oeq float %104, 1.200000e+01
  br i1 %105, label %107, label %106

106:                                              ; preds = %102
  tail call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef nonnull @.str, i32 noundef 74, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.8) #6
  unreachable

107:                                              ; preds = %102
  %108 = getelementptr inbounds i8, ptr %88, i64 16
  %109 = load float, ptr %108, align 4, !tbaa !13
  %110 = fcmp oeq float %109, 1.500000e+01
  br i1 %110, label %112, label %111

111:                                              ; preds = %107
  tail call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef nonnull @.str, i32 noundef 75, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.9) #6
  unreachable

112:                                              ; preds = %107
  %113 = getelementptr inbounds i8, ptr %88, i64 20
  %114 = load float, ptr %113, align 4, !tbaa !13
  %115 = fcmp oeq float %114, 1.800000e+01
  br i1 %115, label %117, label %116

116:                                              ; preds = %112
  tail call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef nonnull @.str, i32 noundef 76, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.10) #6
  unreachable

117:                                              ; preds = %112
  tail call void @ggml_free(ptr noundef %65) #5
  %118 = tail call ptr @make_ctx()
  %119 = tail call ptr @ggml_new_tensor_2d(ptr noundef %118, i32 noundef 0, i64 noundef 10, i64 noundef 2) #5
  %120 = getelementptr inbounds i8, ptr %119, i64 248
  %121 = load ptr, ptr %120, align 8, !tbaa !5
  %122 = tail call i64 @ggml_nbytes(ptr noundef %119) #5
  call void @llvm.memcpy.p0.p0.i64(ptr align 1 %121, ptr nonnull align 16 %3, i64 %122, i1 false)
  %123 = tail call ptr @ggml_pool_1d(ptr noundef %118, ptr noundef %119, i32 noundef 0, i32 noundef 3, i32 noundef 3, i32 noundef 0) #5
  %124 = getelementptr inbounds i8, ptr %123, i64 16
  %125 = load i64, ptr %124, align 8, !tbaa !12
  %126 = icmp eq i64 %125, 3
  br i1 %126, label %128, label %127

127:                                              ; preds = %117
  tail call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef nonnull @.str, i32 noundef 88, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.2) #6
  unreachable

128:                                              ; preds = %117
  %129 = getelementptr inbounds i8, ptr %123, i64 24
  %130 = load i64, ptr %129, align 8, !tbaa !12
  %131 = icmp eq i64 %130, 2
  br i1 %131, label %133, label %132

132:                                              ; preds = %128
  tail call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef nonnull @.str, i32 noundef 89, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.3) #6
  unreachable

133:                                              ; preds = %128
  %134 = getelementptr inbounds i8, ptr %123, i64 32
  %135 = load i64, ptr %134, align 8, !tbaa !12
  %136 = icmp eq i64 %135, 1
  br i1 %136, label %138, label %137

137:                                              ; preds = %133
  tail call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef nonnull @.str, i32 noundef 90, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.4) #6
  unreachable

138:                                              ; preds = %133
  %139 = tail call ptr @ggml_new_graph(ptr noundef %118) #5
  tail call void @ggml_build_forward_expand(ptr noundef %139, ptr noundef nonnull %123) #5
  %140 = tail call i32 @ggml_graph_compute_with_ctx(ptr noundef %118, ptr noundef %139, i32 noundef 4) #5
  %141 = tail call ptr @ggml_get_data_f32(ptr noundef nonnull %123) #5
  %142 = load float, ptr %141, align 4, !tbaa !13
  %143 = fcmp oeq float %142, 3.000000e+00
  br i1 %143, label %145, label %144

144:                                              ; preds = %138
  tail call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef nonnull @.str, i32 noundef 98, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.11) #6
  unreachable

145:                                              ; preds = %138
  %146 = getelementptr inbounds i8, ptr %141, i64 4
  %147 = load float, ptr %146, align 4, !tbaa !13
  %148 = fcmp oeq float %147, 6.000000e+00
  br i1 %148, label %150, label %149

149:                                              ; preds = %145
  tail call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef nonnull @.str, i32 noundef 99, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.12) #6
  unreachable

150:                                              ; preds = %145
  %151 = getelementptr inbounds i8, ptr %141, i64 8
  %152 = load float, ptr %151, align 4, !tbaa !13
  %153 = fcmp oeq float %152, 9.000000e+00
  br i1 %153, label %155, label %154

154:                                              ; preds = %150
  tail call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef nonnull @.str, i32 noundef 100, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.13) #6
  unreachable

155:                                              ; preds = %150
  %156 = getelementptr inbounds i8, ptr %141, i64 12
  %157 = load float, ptr %156, align 4, !tbaa !13
  %158 = fcmp oeq float %157, 1.300000e+01
  br i1 %158, label %160, label %159

159:                                              ; preds = %155
  tail call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef nonnull @.str, i32 noundef 101, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.14) #6
  unreachable

160:                                              ; preds = %155
  %161 = getelementptr inbounds i8, ptr %141, i64 16
  %162 = load float, ptr %161, align 4, !tbaa !13
  %163 = fcmp oeq float %162, 1.600000e+01
  br i1 %163, label %165, label %164

164:                                              ; preds = %160
  tail call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef nonnull @.str, i32 noundef 102, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.15) #6
  unreachable

165:                                              ; preds = %160
  %166 = getelementptr inbounds i8, ptr %141, i64 20
  %167 = load float, ptr %166, align 4, !tbaa !13
  %168 = fcmp oeq float %167, 1.900000e+01
  br i1 %168, label %170, label %169

169:                                              ; preds = %165
  tail call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef nonnull @.str, i32 noundef 103, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.16) #6
  unreachable

170:                                              ; preds = %165
  tail call void @ggml_free(ptr noundef %118) #5
  %171 = tail call ptr @make_ctx()
  %172 = tail call ptr @ggml_new_tensor_2d(ptr noundef %171, i32 noundef 1, i64 noundef 10, i64 noundef 2) #5
  %173 = getelementptr inbounds i8, ptr %172, i64 248
  %174 = load ptr, ptr %173, align 8, !tbaa !5
  %175 = tail call i64 @ggml_nbytes(ptr noundef %172) #5
  call void @llvm.memcpy.p0.p0.i64(ptr align 1 %174, ptr nonnull align 16 %4, i64 %175, i1 false)
  %176 = tail call ptr @ggml_pool_1d(ptr noundef %171, ptr noundef %172, i32 noundef 0, i32 noundef 3, i32 noundef 3, i32 noundef 0) #5
  %177 = getelementptr inbounds i8, ptr %176, i64 16
  %178 = load i64, ptr %177, align 8, !tbaa !12
  %179 = icmp eq i64 %178, 3
  br i1 %179, label %181, label %180

180:                                              ; preds = %170
  tail call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef nonnull @.str, i32 noundef 115, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.2) #6
  unreachable

181:                                              ; preds = %170
  %182 = getelementptr inbounds i8, ptr %176, i64 24
  %183 = load i64, ptr %182, align 8, !tbaa !12
  %184 = icmp eq i64 %183, 2
  br i1 %184, label %186, label %185

185:                                              ; preds = %181
  tail call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef nonnull @.str, i32 noundef 116, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.3) #6
  unreachable

186:                                              ; preds = %181
  %187 = getelementptr inbounds i8, ptr %176, i64 32
  %188 = load i64, ptr %187, align 8, !tbaa !12
  %189 = icmp eq i64 %188, 1
  br i1 %189, label %191, label %190

190:                                              ; preds = %186
  tail call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef nonnull @.str, i32 noundef 117, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.4) #6
  unreachable

191:                                              ; preds = %186
  %192 = tail call ptr @ggml_new_graph(ptr noundef %171) #5
  tail call void @ggml_build_forward_expand(ptr noundef %192, ptr noundef nonnull %176) #5
  %193 = tail call i32 @ggml_graph_compute_with_ctx(ptr noundef %171, ptr noundef %192, i32 noundef 4) #5
  %194 = tail call ptr @ggml_get_data_f32(ptr noundef nonnull %176) #5
  %195 = load float, ptr %194, align 4, !tbaa !13
  %196 = fcmp oeq float %195, 3.000000e+00
  br i1 %196, label %198, label %197

197:                                              ; preds = %191
  tail call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef nonnull @.str, i32 noundef 125, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.11) #6
  unreachable

198:                                              ; preds = %191
  %199 = getelementptr inbounds i8, ptr %194, i64 4
  %200 = load float, ptr %199, align 4, !tbaa !13
  %201 = fcmp oeq float %200, 6.000000e+00
  br i1 %201, label %203, label %202

202:                                              ; preds = %198
  tail call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef nonnull @.str, i32 noundef 126, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.12) #6
  unreachable

203:                                              ; preds = %198
  %204 = getelementptr inbounds i8, ptr %194, i64 8
  %205 = load float, ptr %204, align 4, !tbaa !13
  %206 = fcmp oeq float %205, 9.000000e+00
  br i1 %206, label %208, label %207

207:                                              ; preds = %203
  tail call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef nonnull @.str, i32 noundef 127, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.13) #6
  unreachable

208:                                              ; preds = %203
  %209 = getelementptr inbounds i8, ptr %194, i64 12
  %210 = load float, ptr %209, align 4, !tbaa !13
  %211 = fcmp oeq float %210, 1.300000e+01
  br i1 %211, label %213, label %212

212:                                              ; preds = %208
  tail call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef nonnull @.str, i32 noundef 128, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.14) #6
  unreachable

213:                                              ; preds = %208
  %214 = getelementptr inbounds i8, ptr %194, i64 16
  %215 = load float, ptr %214, align 4, !tbaa !13
  %216 = fcmp oeq float %215, 1.600000e+01
  br i1 %216, label %218, label %217

217:                                              ; preds = %213
  tail call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef nonnull @.str, i32 noundef 129, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.15) #6
  unreachable

218:                                              ; preds = %213
  %219 = getelementptr inbounds i8, ptr %194, i64 20
  %220 = load float, ptr %219, align 4, !tbaa !13
  %221 = fcmp oeq float %220, 1.900000e+01
  br i1 %221, label %223, label %222

222:                                              ; preds = %218
  tail call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef nonnull @.str, i32 noundef 130, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.16) #6
  unreachable

223:                                              ; preds = %218
  tail call void @ggml_free(ptr noundef %171) #5
  %224 = tail call ptr @make_ctx()
  %225 = tail call ptr @ggml_new_tensor_3d(ptr noundef %224, i32 noundef 0, i64 noundef 10, i64 noundef 10, i64 noundef 2) #5
  %226 = getelementptr inbounds i8, ptr %225, i64 248
  %227 = load ptr, ptr %226, align 8, !tbaa !5
  %228 = tail call i64 @ggml_nbytes(ptr noundef %225) #5
  call void @llvm.memcpy.p0.p0.i64(ptr align 1 %227, ptr nonnull align 16 %3, i64 %228, i1 false)
  %229 = tail call ptr @ggml_pool_2d(ptr noundef %224, ptr noundef %225, i32 noundef 1, i32 noundef 3, i32 noundef 4, i32 noundef 3, i32 noundef 4, float noundef 0.000000e+00, float noundef 0.000000e+00) #5
  %230 = getelementptr inbounds i8, ptr %229, i64 16
  %231 = load i64, ptr %230, align 8, !tbaa !12
  %232 = icmp eq i64 %231, 3
  br i1 %232, label %234, label %233

233:                                              ; preds = %223
  tail call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef nonnull @.str, i32 noundef 142, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.2) #6
  unreachable

234:                                              ; preds = %223
  %235 = getelementptr inbounds i8, ptr %229, i64 24
  %236 = load i64, ptr %235, align 8, !tbaa !12
  %237 = icmp eq i64 %236, 2
  br i1 %237, label %239, label %238

238:                                              ; preds = %234
  tail call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef nonnull @.str, i32 noundef 143, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.3) #6
  unreachable

239:                                              ; preds = %234
  %240 = getelementptr inbounds i8, ptr %229, i64 32
  %241 = load i64, ptr %240, align 8, !tbaa !12
  %242 = icmp eq i64 %241, 2
  br i1 %242, label %244, label %243

243:                                              ; preds = %239
  tail call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef nonnull @.str, i32 noundef 144, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.17) #6
  unreachable

244:                                              ; preds = %239
  %245 = getelementptr inbounds i8, ptr %229, i64 40
  %246 = load i64, ptr %245, align 8, !tbaa !12
  %247 = icmp eq i64 %246, 1
  br i1 %247, label %249, label %248

248:                                              ; preds = %244
  tail call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef nonnull @.str, i32 noundef 145, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.18) #6
  unreachable

249:                                              ; preds = %244
  %250 = tail call ptr @ggml_new_graph(ptr noundef %224) #5
  tail call void @ggml_build_forward_expand(ptr noundef %250, ptr noundef nonnull %229) #5
  %251 = tail call i32 @ggml_graph_compute_with_ctx(ptr noundef %224, ptr noundef %250, i32 noundef 4) #5
  %252 = tail call ptr @ggml_get_data_f32(ptr noundef nonnull %229) #5
  %253 = load float, ptr %252, align 4, !tbaa !13
  %254 = fcmp oeq float %253, 1.700000e+01
  br i1 %254, label %256, label %255

255:                                              ; preds = %249
  tail call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef nonnull @.str, i32 noundef 153, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.19) #6
  unreachable

256:                                              ; preds = %249
  %257 = getelementptr inbounds i8, ptr %252, i64 4
  %258 = load float, ptr %257, align 4, !tbaa !13
  %259 = fcmp oeq float %258, 2.000000e+01
  br i1 %259, label %261, label %260

260:                                              ; preds = %256
  tail call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef nonnull @.str, i32 noundef 154, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.20) #6
  unreachable

261:                                              ; preds = %256
  %262 = getelementptr inbounds i8, ptr %252, i64 8
  %263 = load float, ptr %262, align 4, !tbaa !13
  %264 = fcmp oeq float %263, 2.300000e+01
  br i1 %264, label %266, label %265

265:                                              ; preds = %261
  tail call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef nonnull @.str, i32 noundef 155, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.21) #6
  unreachable

266:                                              ; preds = %261
  %267 = getelementptr inbounds i8, ptr %252, i64 12
  %268 = load float, ptr %267, align 4, !tbaa !13
  %269 = fcmp oeq float %268, 5.700000e+01
  br i1 %269, label %271, label %270

270:                                              ; preds = %266
  tail call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef nonnull @.str, i32 noundef 156, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.22) #6
  unreachable

271:                                              ; preds = %266
  %272 = getelementptr inbounds i8, ptr %252, i64 16
  %273 = load float, ptr %272, align 4, !tbaa !13
  %274 = fcmp oeq float %273, 6.000000e+01
  br i1 %274, label %276, label %275

275:                                              ; preds = %271
  tail call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef nonnull @.str, i32 noundef 157, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.23) #6
  unreachable

276:                                              ; preds = %271
  %277 = getelementptr inbounds i8, ptr %252, i64 20
  %278 = load float, ptr %277, align 4, !tbaa !13
  %279 = fcmp oeq float %278, 6.300000e+01
  br i1 %279, label %281, label %280

280:                                              ; preds = %276
  tail call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef nonnull @.str, i32 noundef 158, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.24) #6
  unreachable

281:                                              ; preds = %276
  %282 = getelementptr inbounds i8, ptr %252, i64 24
  %283 = load float, ptr %282, align 4, !tbaa !13
  %284 = fcmp oeq float %283, 1.170000e+02
  br i1 %284, label %286, label %285

285:                                              ; preds = %281
  tail call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef nonnull @.str, i32 noundef 159, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.25) #6
  unreachable

286:                                              ; preds = %281
  %287 = getelementptr inbounds i8, ptr %252, i64 28
  %288 = load float, ptr %287, align 4, !tbaa !13
  %289 = fcmp oeq float %288, 1.200000e+02
  br i1 %289, label %291, label %290

290:                                              ; preds = %286
  tail call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef nonnull @.str, i32 noundef 160, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.26) #6
  unreachable

291:                                              ; preds = %286
  %292 = getelementptr inbounds i8, ptr %252, i64 32
  %293 = load float, ptr %292, align 4, !tbaa !13
  %294 = fcmp oeq float %293, 1.230000e+02
  br i1 %294, label %296, label %295

295:                                              ; preds = %291
  tail call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef nonnull @.str, i32 noundef 161, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.27) #6
  unreachable

296:                                              ; preds = %291
  %297 = getelementptr inbounds i8, ptr %252, i64 36
  %298 = load float, ptr %297, align 4, !tbaa !13
  %299 = fcmp oeq float %298, 1.570000e+02
  br i1 %299, label %301, label %300

300:                                              ; preds = %296
  tail call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef nonnull @.str, i32 noundef 162, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.28) #6
  unreachable

301:                                              ; preds = %296
  %302 = getelementptr inbounds i8, ptr %252, i64 40
  %303 = load float, ptr %302, align 4, !tbaa !13
  %304 = fcmp oeq float %303, 1.600000e+02
  br i1 %304, label %306, label %305

305:                                              ; preds = %301
  tail call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef nonnull @.str, i32 noundef 163, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.29) #6
  unreachable

306:                                              ; preds = %301
  %307 = getelementptr inbounds i8, ptr %252, i64 44
  %308 = load float, ptr %307, align 4, !tbaa !13
  %309 = fcmp oeq float %308, 1.630000e+02
  br i1 %309, label %311, label %310

310:                                              ; preds = %306
  tail call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef nonnull @.str, i32 noundef 164, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.30) #6
  unreachable

311:                                              ; preds = %306
  tail call void @ggml_free(ptr noundef %224) #5
  %312 = tail call ptr @make_ctx()
  %313 = tail call ptr @ggml_new_tensor_3d(ptr noundef %312, i32 noundef 1, i64 noundef 10, i64 noundef 10, i64 noundef 2) #5
  %314 = getelementptr inbounds i8, ptr %313, i64 248
  %315 = load ptr, ptr %314, align 8, !tbaa !5
  %316 = tail call i64 @ggml_nbytes(ptr noundef %313) #5
  call void @llvm.memcpy.p0.p0.i64(ptr align 1 %315, ptr nonnull align 16 %4, i64 %316, i1 false)
  %317 = tail call ptr @ggml_pool_2d(ptr noundef %312, ptr noundef %313, i32 noundef 1, i32 noundef 3, i32 noundef 4, i32 noundef 3, i32 noundef 4, float noundef 0.000000e+00, float noundef 0.000000e+00) #5
  %318 = getelementptr inbounds i8, ptr %317, i64 16
  %319 = load i64, ptr %318, align 8, !tbaa !12
  %320 = icmp eq i64 %319, 3
  br i1 %320, label %322, label %321

321:                                              ; preds = %311
  tail call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef nonnull @.str, i32 noundef 177, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.2) #6
  unreachable

322:                                              ; preds = %311
  %323 = getelementptr inbounds i8, ptr %317, i64 24
  %324 = load i64, ptr %323, align 8, !tbaa !12
  %325 = icmp eq i64 %324, 2
  br i1 %325, label %327, label %326

326:                                              ; preds = %322
  tail call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef nonnull @.str, i32 noundef 178, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.3) #6
  unreachable

327:                                              ; preds = %322
  %328 = getelementptr inbounds i8, ptr %317, i64 32
  %329 = load i64, ptr %328, align 8, !tbaa !12
  %330 = icmp eq i64 %329, 2
  br i1 %330, label %332, label %331

331:                                              ; preds = %327
  tail call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef nonnull @.str, i32 noundef 179, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.17) #6
  unreachable

332:                                              ; preds = %327
  %333 = getelementptr inbounds i8, ptr %317, i64 40
  %334 = load i64, ptr %333, align 8, !tbaa !12
  %335 = icmp eq i64 %334, 1
  br i1 %335, label %337, label %336

336:                                              ; preds = %332
  tail call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef nonnull @.str, i32 noundef 180, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.18) #6
  unreachable

337:                                              ; preds = %332
  %338 = tail call ptr @ggml_new_graph(ptr noundef %312) #5
  tail call void @ggml_build_forward_expand(ptr noundef %338, ptr noundef nonnull %317) #5
  %339 = tail call i32 @ggml_graph_compute_with_ctx(ptr noundef %312, ptr noundef %338, i32 noundef 4) #5
  %340 = tail call ptr @ggml_get_data_f32(ptr noundef nonnull %317) #5
  %341 = load float, ptr %340, align 4, !tbaa !13
  %342 = fcmp oeq float %341, 1.700000e+01
  br i1 %342, label %344, label %343

343:                                              ; preds = %337
  tail call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef nonnull @.str, i32 noundef 188, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.19) #6
  unreachable

344:                                              ; preds = %337
  %345 = getelementptr inbounds i8, ptr %340, i64 4
  %346 = load float, ptr %345, align 4, !tbaa !13
  %347 = fcmp oeq float %346, 2.000000e+01
  br i1 %347, label %349, label %348

348:                                              ; preds = %344
  tail call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef nonnull @.str, i32 noundef 189, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.20) #6
  unreachable

349:                                              ; preds = %344
  %350 = getelementptr inbounds i8, ptr %340, i64 8
  %351 = load float, ptr %350, align 4, !tbaa !13
  %352 = fcmp oeq float %351, 2.300000e+01
  br i1 %352, label %354, label %353

353:                                              ; preds = %349
  tail call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef nonnull @.str, i32 noundef 190, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.21) #6
  unreachable

354:                                              ; preds = %349
  %355 = getelementptr inbounds i8, ptr %340, i64 12
  %356 = load float, ptr %355, align 4, !tbaa !13
  %357 = fcmp oeq float %356, 5.700000e+01
  br i1 %357, label %359, label %358

358:                                              ; preds = %354
  tail call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef nonnull @.str, i32 noundef 191, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.22) #6
  unreachable

359:                                              ; preds = %354
  %360 = getelementptr inbounds i8, ptr %340, i64 16
  %361 = load float, ptr %360, align 4, !tbaa !13
  %362 = fcmp oeq float %361, 6.000000e+01
  br i1 %362, label %364, label %363

363:                                              ; preds = %359
  tail call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef nonnull @.str, i32 noundef 192, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.23) #6
  unreachable

364:                                              ; preds = %359
  %365 = getelementptr inbounds i8, ptr %340, i64 20
  %366 = load float, ptr %365, align 4, !tbaa !13
  %367 = fcmp oeq float %366, 6.300000e+01
  br i1 %367, label %369, label %368

368:                                              ; preds = %364
  tail call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef nonnull @.str, i32 noundef 193, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.24) #6
  unreachable

369:                                              ; preds = %364
  %370 = getelementptr inbounds i8, ptr %340, i64 24
  %371 = load float, ptr %370, align 4, !tbaa !13
  %372 = fcmp oeq float %371, 1.170000e+02
  br i1 %372, label %374, label %373

373:                                              ; preds = %369
  tail call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef nonnull @.str, i32 noundef 194, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.25) #6
  unreachable

374:                                              ; preds = %369
  %375 = getelementptr inbounds i8, ptr %340, i64 28
  %376 = load float, ptr %375, align 4, !tbaa !13
  %377 = fcmp oeq float %376, 1.200000e+02
  br i1 %377, label %379, label %378

378:                                              ; preds = %374
  tail call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef nonnull @.str, i32 noundef 195, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.26) #6
  unreachable

379:                                              ; preds = %374
  %380 = getelementptr inbounds i8, ptr %340, i64 32
  %381 = load float, ptr %380, align 4, !tbaa !13
  %382 = fcmp oeq float %381, 1.230000e+02
  br i1 %382, label %384, label %383

383:                                              ; preds = %379
  tail call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef nonnull @.str, i32 noundef 196, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.27) #6
  unreachable

384:                                              ; preds = %379
  %385 = getelementptr inbounds i8, ptr %340, i64 36
  %386 = load float, ptr %385, align 4, !tbaa !13
  %387 = fcmp oeq float %386, 1.570000e+02
  br i1 %387, label %389, label %388

388:                                              ; preds = %384
  tail call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef nonnull @.str, i32 noundef 197, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.28) #6
  unreachable

389:                                              ; preds = %384
  %390 = getelementptr inbounds i8, ptr %340, i64 40
  %391 = load float, ptr %390, align 4, !tbaa !13
  %392 = fcmp oeq float %391, 1.600000e+02
  br i1 %392, label %394, label %393

393:                                              ; preds = %389
  tail call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef nonnull @.str, i32 noundef 198, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.29) #6
  unreachable

394:                                              ; preds = %389
  %395 = getelementptr inbounds i8, ptr %340, i64 44
  %396 = load float, ptr %395, align 4, !tbaa !13
  %397 = fcmp oeq float %396, 1.630000e+02
  br i1 %397, label %399, label %398

398:                                              ; preds = %394
  tail call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef nonnull @.str, i32 noundef 199, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.30) #6
  unreachable

399:                                              ; preds = %394
  tail call void @ggml_free(ptr noundef %312) #5
  %400 = tail call ptr @make_ctx()
  %401 = tail call ptr @ggml_new_tensor_3d(ptr noundef %400, i32 noundef 0, i64 noundef 10, i64 noundef 10, i64 noundef 2) #5
  %402 = getelementptr inbounds i8, ptr %401, i64 248
  %403 = load ptr, ptr %402, align 8, !tbaa !5
  %404 = tail call i64 @ggml_nbytes(ptr noundef %401) #5
  call void @llvm.memcpy.p0.p0.i64(ptr align 1 %403, ptr nonnull align 16 %3, i64 %404, i1 false)
  %405 = tail call ptr @ggml_pool_2d(ptr noundef %400, ptr noundef %401, i32 noundef 0, i32 noundef 3, i32 noundef 4, i32 noundef 3, i32 noundef 4, float noundef 0.000000e+00, float noundef 0.000000e+00) #5
  %406 = getelementptr inbounds i8, ptr %405, i64 16
  %407 = load i64, ptr %406, align 8, !tbaa !12
  %408 = icmp eq i64 %407, 3
  br i1 %408, label %410, label %409

409:                                              ; preds = %399
  tail call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef nonnull @.str, i32 noundef 212, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.2) #6
  unreachable

410:                                              ; preds = %399
  %411 = getelementptr inbounds i8, ptr %405, i64 24
  %412 = load i64, ptr %411, align 8, !tbaa !12
  %413 = icmp eq i64 %412, 2
  br i1 %413, label %415, label %414

414:                                              ; preds = %410
  tail call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef nonnull @.str, i32 noundef 213, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.3) #6
  unreachable

415:                                              ; preds = %410
  %416 = getelementptr inbounds i8, ptr %405, i64 32
  %417 = load i64, ptr %416, align 8, !tbaa !12
  %418 = icmp eq i64 %417, 2
  br i1 %418, label %420, label %419

419:                                              ; preds = %415
  tail call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef nonnull @.str, i32 noundef 214, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.17) #6
  unreachable

420:                                              ; preds = %415
  %421 = getelementptr inbounds i8, ptr %405, i64 40
  %422 = load i64, ptr %421, align 8, !tbaa !12
  %423 = icmp eq i64 %422, 1
  br i1 %423, label %425, label %424

424:                                              ; preds = %420
  tail call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef nonnull @.str, i32 noundef 215, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.18) #6
  unreachable

425:                                              ; preds = %420
  %426 = tail call ptr @ggml_new_graph(ptr noundef %400) #5
  tail call void @ggml_build_forward_expand(ptr noundef %426, ptr noundef nonnull %405) #5
  %427 = tail call i32 @ggml_graph_compute_with_ctx(ptr noundef %400, ptr noundef %426, i32 noundef 4) #5
  %428 = tail call ptr @ggml_get_data_f32(ptr noundef nonnull %405) #5
  %429 = load float, ptr %428, align 4, !tbaa !13
  %430 = fcmp oeq float %429, 3.300000e+01
  br i1 %430, label %432, label %431

431:                                              ; preds = %425
  tail call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef nonnull @.str, i32 noundef 223, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.31) #6
  unreachable

432:                                              ; preds = %425
  %433 = getelementptr inbounds i8, ptr %428, i64 4
  %434 = load float, ptr %433, align 4, !tbaa !13
  %435 = fcmp oeq float %434, 3.600000e+01
  br i1 %435, label %437, label %436

436:                                              ; preds = %432
  tail call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef nonnull @.str, i32 noundef 224, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.32) #6
  unreachable

437:                                              ; preds = %432
  %438 = getelementptr inbounds i8, ptr %428, i64 8
  %439 = load float, ptr %438, align 4, !tbaa !13
  %440 = fcmp oeq float %439, 3.900000e+01
  br i1 %440, label %442, label %441

441:                                              ; preds = %437
  tail call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef nonnull @.str, i32 noundef 225, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.33) #6
  unreachable

442:                                              ; preds = %437
  %443 = getelementptr inbounds i8, ptr %428, i64 12
  %444 = load float, ptr %443, align 4, !tbaa !13
  %445 = fcmp oeq float %444, 7.300000e+01
  br i1 %445, label %447, label %446

446:                                              ; preds = %442
  tail call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef nonnull @.str, i32 noundef 226, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.34) #6
  unreachable

447:                                              ; preds = %442
  %448 = getelementptr inbounds i8, ptr %428, i64 16
  %449 = load float, ptr %448, align 4, !tbaa !13
  %450 = fcmp oeq float %449, 7.600000e+01
  br i1 %450, label %452, label %451

451:                                              ; preds = %447
  tail call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef nonnull @.str, i32 noundef 227, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.35) #6
  unreachable

452:                                              ; preds = %447
  %453 = getelementptr inbounds i8, ptr %428, i64 20
  %454 = load float, ptr %453, align 4, !tbaa !13
  %455 = fcmp oeq float %454, 7.900000e+01
  br i1 %455, label %457, label %456

456:                                              ; preds = %452
  tail call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef nonnull @.str, i32 noundef 228, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.36) #6
  unreachable

457:                                              ; preds = %452
  %458 = getelementptr inbounds i8, ptr %428, i64 24
  %459 = load float, ptr %458, align 4, !tbaa !13
  %460 = fcmp oeq float %459, 1.330000e+02
  br i1 %460, label %462, label %461

461:                                              ; preds = %457
  tail call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef nonnull @.str, i32 noundef 229, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.37) #6
  unreachable

462:                                              ; preds = %457
  %463 = getelementptr inbounds i8, ptr %428, i64 28
  %464 = load float, ptr %463, align 4, !tbaa !13
  %465 = fcmp oeq float %464, 1.360000e+02
  br i1 %465, label %467, label %466

466:                                              ; preds = %462
  tail call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef nonnull @.str, i32 noundef 230, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.38) #6
  unreachable

467:                                              ; preds = %462
  %468 = getelementptr inbounds i8, ptr %428, i64 32
  %469 = load float, ptr %468, align 4, !tbaa !13
  %470 = fcmp oeq float %469, 1.390000e+02
  br i1 %470, label %472, label %471

471:                                              ; preds = %467
  tail call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef nonnull @.str, i32 noundef 231, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.39) #6
  unreachable

472:                                              ; preds = %467
  %473 = getelementptr inbounds i8, ptr %428, i64 36
  %474 = load float, ptr %473, align 4, !tbaa !13
  %475 = fcmp oeq float %474, 1.730000e+02
  br i1 %475, label %477, label %476

476:                                              ; preds = %472
  tail call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef nonnull @.str, i32 noundef 232, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.40) #6
  unreachable

477:                                              ; preds = %472
  %478 = getelementptr inbounds i8, ptr %428, i64 40
  %479 = load float, ptr %478, align 4, !tbaa !13
  %480 = fcmp oeq float %479, 1.760000e+02
  br i1 %480, label %482, label %481

481:                                              ; preds = %477
  tail call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef nonnull @.str, i32 noundef 233, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.41) #6
  unreachable

482:                                              ; preds = %477
  %483 = getelementptr inbounds i8, ptr %428, i64 44
  %484 = load float, ptr %483, align 4, !tbaa !13
  %485 = fcmp oeq float %484, 1.790000e+02
  br i1 %485, label %487, label %486

486:                                              ; preds = %482
  tail call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef nonnull @.str, i32 noundef 234, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.42) #6
  unreachable

487:                                              ; preds = %482
  tail call void @ggml_free(ptr noundef %400) #5
  %488 = tail call ptr @make_ctx()
  %489 = tail call ptr @ggml_new_tensor_3d(ptr noundef %488, i32 noundef 1, i64 noundef 10, i64 noundef 10, i64 noundef 2) #5
  %490 = getelementptr inbounds i8, ptr %489, i64 248
  %491 = load ptr, ptr %490, align 8, !tbaa !5
  %492 = tail call i64 @ggml_nbytes(ptr noundef %489) #5
  call void @llvm.memcpy.p0.p0.i64(ptr align 1 %491, ptr nonnull align 16 %4, i64 %492, i1 false)
  %493 = tail call ptr @ggml_pool_2d(ptr noundef %488, ptr noundef %489, i32 noundef 0, i32 noundef 3, i32 noundef 4, i32 noundef 3, i32 noundef 4, float noundef 0.000000e+00, float noundef 0.000000e+00) #5
  %494 = getelementptr inbounds i8, ptr %493, i64 16
  %495 = load i64, ptr %494, align 8, !tbaa !12
  %496 = icmp eq i64 %495, 3
  br i1 %496, label %498, label %497

497:                                              ; preds = %487
  tail call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef nonnull @.str, i32 noundef 246, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.2) #6
  unreachable

498:                                              ; preds = %487
  %499 = getelementptr inbounds i8, ptr %493, i64 24
  %500 = load i64, ptr %499, align 8, !tbaa !12
  %501 = icmp eq i64 %500, 2
  br i1 %501, label %503, label %502

502:                                              ; preds = %498
  tail call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef nonnull @.str, i32 noundef 247, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.3) #6
  unreachable

503:                                              ; preds = %498
  %504 = getelementptr inbounds i8, ptr %493, i64 32
  %505 = load i64, ptr %504, align 8, !tbaa !12
  %506 = icmp eq i64 %505, 2
  br i1 %506, label %508, label %507

507:                                              ; preds = %503
  tail call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef nonnull @.str, i32 noundef 248, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.17) #6
  unreachable

508:                                              ; preds = %503
  %509 = getelementptr inbounds i8, ptr %493, i64 40
  %510 = load i64, ptr %509, align 8, !tbaa !12
  %511 = icmp eq i64 %510, 1
  br i1 %511, label %513, label %512

512:                                              ; preds = %508
  tail call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef nonnull @.str, i32 noundef 249, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.18) #6
  unreachable

513:                                              ; preds = %508
  %514 = tail call ptr @ggml_new_graph(ptr noundef %488) #5
  tail call void @ggml_build_forward_expand(ptr noundef %514, ptr noundef nonnull %493) #5
  %515 = tail call i32 @ggml_graph_compute_with_ctx(ptr noundef %488, ptr noundef %514, i32 noundef 4) #5
  %516 = tail call ptr @ggml_get_data_f32(ptr noundef nonnull %493) #5
  %517 = load float, ptr %516, align 4, !tbaa !13
  %518 = fcmp oeq float %517, 3.300000e+01
  br i1 %518, label %520, label %519

519:                                              ; preds = %513
  tail call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef nonnull @.str, i32 noundef 257, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.31) #6
  unreachable

520:                                              ; preds = %513
  %521 = getelementptr inbounds i8, ptr %516, i64 4
  %522 = load float, ptr %521, align 4, !tbaa !13
  %523 = fcmp oeq float %522, 3.600000e+01
  br i1 %523, label %525, label %524

524:                                              ; preds = %520
  tail call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef nonnull @.str, i32 noundef 258, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.32) #6
  unreachable

525:                                              ; preds = %520
  %526 = getelementptr inbounds i8, ptr %516, i64 8
  %527 = load float, ptr %526, align 4, !tbaa !13
  %528 = fcmp oeq float %527, 3.900000e+01
  br i1 %528, label %530, label %529

529:                                              ; preds = %525
  tail call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef nonnull @.str, i32 noundef 259, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.33) #6
  unreachable

530:                                              ; preds = %525
  %531 = getelementptr inbounds i8, ptr %516, i64 12
  %532 = load float, ptr %531, align 4, !tbaa !13
  %533 = fcmp oeq float %532, 7.300000e+01
  br i1 %533, label %535, label %534

534:                                              ; preds = %530
  tail call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef nonnull @.str, i32 noundef 260, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.34) #6
  unreachable

535:                                              ; preds = %530
  %536 = getelementptr inbounds i8, ptr %516, i64 16
  %537 = load float, ptr %536, align 4, !tbaa !13
  %538 = fcmp oeq float %537, 7.600000e+01
  br i1 %538, label %540, label %539

539:                                              ; preds = %535
  tail call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef nonnull @.str, i32 noundef 261, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.35) #6
  unreachable

540:                                              ; preds = %535
  %541 = getelementptr inbounds i8, ptr %516, i64 20
  %542 = load float, ptr %541, align 4, !tbaa !13
  %543 = fcmp oeq float %542, 7.900000e+01
  br i1 %543, label %545, label %544

544:                                              ; preds = %540
  tail call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef nonnull @.str, i32 noundef 262, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.36) #6
  unreachable

545:                                              ; preds = %540
  %546 = getelementptr inbounds i8, ptr %516, i64 24
  %547 = load float, ptr %546, align 4, !tbaa !13
  %548 = fcmp oeq float %547, 1.330000e+02
  br i1 %548, label %550, label %549

549:                                              ; preds = %545
  tail call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef nonnull @.str, i32 noundef 263, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.37) #6
  unreachable

550:                                              ; preds = %545
  %551 = getelementptr inbounds i8, ptr %516, i64 28
  %552 = load float, ptr %551, align 4, !tbaa !13
  %553 = fcmp oeq float %552, 1.360000e+02
  br i1 %553, label %555, label %554

554:                                              ; preds = %550
  tail call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef nonnull @.str, i32 noundef 264, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.38) #6
  unreachable

555:                                              ; preds = %550
  %556 = getelementptr inbounds i8, ptr %516, i64 32
  %557 = load float, ptr %556, align 4, !tbaa !13
  %558 = fcmp oeq float %557, 1.390000e+02
  br i1 %558, label %560, label %559

559:                                              ; preds = %555
  tail call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef nonnull @.str, i32 noundef 265, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.39) #6
  unreachable

560:                                              ; preds = %555
  %561 = getelementptr inbounds i8, ptr %516, i64 36
  %562 = load float, ptr %561, align 4, !tbaa !13
  %563 = fcmp oeq float %562, 1.730000e+02
  br i1 %563, label %565, label %564

564:                                              ; preds = %560
  tail call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef nonnull @.str, i32 noundef 266, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.40) #6
  unreachable

565:                                              ; preds = %560
  %566 = getelementptr inbounds i8, ptr %516, i64 40
  %567 = load float, ptr %566, align 4, !tbaa !13
  %568 = fcmp oeq float %567, 1.760000e+02
  br i1 %568, label %570, label %569

569:                                              ; preds = %565
  tail call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef nonnull @.str, i32 noundef 267, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.41) #6
  unreachable

570:                                              ; preds = %565
  %571 = getelementptr inbounds i8, ptr %516, i64 44
  %572 = load float, ptr %571, align 4, !tbaa !13
  %573 = fcmp oeq float %572, 1.790000e+02
  br i1 %573, label %575, label %574

574:                                              ; preds = %570
  tail call void (ptr, i32, ptr, ...) @ggml_abort(ptr noundef nonnull @.str, i32 noundef 268, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.42) #6
  unreachable

575:                                              ; preds = %570
  tail call void @ggml_free(ptr noundef %488) #5
  call void @llvm.lifetime.end.p0(i64 2048, ptr nonnull %4) #5
  call void @llvm.lifetime.end.p0(i64 4096, ptr nonnull %3) #5
  ret i32 0
}

declare zeroext i16 @ggml_fp32_to_fp16(float noundef) local_unnamed_addr #3

declare ptr @ggml_new_tensor_2d(ptr noundef, i32 noundef, i64 noundef, i64 noundef) local_unnamed_addr #3

declare i64 @ggml_nbytes(ptr noundef) local_unnamed_addr #3

declare ptr @ggml_pool_1d(ptr noundef, ptr noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef) local_unnamed_addr #3

; Function Attrs: noreturn
declare void @ggml_abort(ptr noundef, i32 noundef, ptr noundef, ...) local_unnamed_addr #4

declare ptr @ggml_new_graph(ptr noundef) local_unnamed_addr #3

declare void @ggml_build_forward_expand(ptr noundef, ptr noundef) local_unnamed_addr #3

declare i32 @ggml_graph_compute_with_ctx(ptr noundef, ptr noundef, i32 noundef) local_unnamed_addr #3

declare ptr @ggml_get_data_f32(ptr noundef) local_unnamed_addr #3

declare void @ggml_free(ptr noundef) local_unnamed_addr #3

declare ptr @ggml_new_tensor_3d(ptr noundef, i32 noundef, i64 noundef, i64 noundef, i64 noundef) local_unnamed_addr #3

declare ptr @ggml_pool_2d(ptr noundef, ptr noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef, float noundef, float noundef) local_unnamed_addr #3

attributes #0 = { 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 #1 = { mustprogress nocallback nofree nosync nounwind willreturn memory(argmem: readwrite) }
attributes #2 = { mustprogress nocallback nofree nounwind willreturn memory(argmem: readwrite) }
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 "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #5 = { nounwind }
attributes #6 = { 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, !10, i64 248}
!6 = !{!"ggml_tensor", !7, i64 0, !10, i64 8, !8, i64 16, !8, i64 48, !7, i64 80, !8, i64 84, !7, i64 148, !8, i64 152, !10, i64 232, !11, i64 240, !10, i64 248, !8, i64 256, !10, i64 320, !8, i64 328}
!7 = !{!"int", !8, i64 0}
!8 = !{!"omnipotent char", !9, i64 0}
!9 = !{!"Simple C/C++ TBAA"}
!10 = !{!"any pointer", !8, i64 0}
!11 = !{!"long", !8, i64 0}
!12 = !{!11, !11, i64 0}
!13 = !{!14, !14, i64 0}
!14 = !{!"float", !8, i64 0}
!15 = !{!16, !16, i64 0}
!16 = !{!"short", !8, i64 0}
!17 = distinct !{!17, !18}
!18 = !{!"llvm.loop.mustprogress"}


; Effective O3 passes: CorrelatedValuePropagationPass,EarlyCSEPass,GlobalOptPass,IndVarSimplifyPass,InferFunctionAttrsPass,InstCombinePass,LoopRotatePass,PostOrderFunctionAttrsPass,SROAPass,SimplifyCFGPass,TailCallElimPass