; LLVM IR from seppo0010/rlite :: tests (type_string-test)

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

%struct.greatest_run_info = type { i32, i32, i32, i32, i32, i32, %struct.greatest_suite_info, ptr, i32, ptr, ptr, ptr, ptr, ptr, i32, i32, ptr, ptr, i64, i64, [1 x %struct.__jmp_buf_tag] }
%struct.greatest_suite_info = type { i32, i32, i32, i32, i64, i64, i64, i64 }
%struct.__jmp_buf_tag = type { [8 x i64], i32, %struct.__sigset_t }
%struct.__sigset_t = type { [16 x i64] }

@.str = external hidden unnamed_addr constant [19 x i8], align 1
@greatest_info = external global %struct.greatest_run_info, align 8
@stdout = external global ptr, align 8
@.str.1 = external hidden unnamed_addr constant [6 x i8], align 1
@.str.2 = external hidden unnamed_addr constant [26 x i8], align 1
@.str.3 = external hidden unnamed_addr constant [23 x i8], align 1
@.str.4 = external hidden unnamed_addr constant [24 x i8], align 1
@.str.5 = external hidden unnamed_addr constant [24 x i8], align 1
@.str.6 = external hidden unnamed_addr constant [18 x i8], align 1
@.str.7 = external hidden unnamed_addr constant [27 x i8], align 1
@.str.8 = external hidden unnamed_addr constant [26 x i8], align 1
@.str.9 = external hidden unnamed_addr constant [22 x i8], align 1
@.str.10 = external hidden unnamed_addr constant [20 x i8], align 1
@.str.11 = external hidden unnamed_addr constant [27 x i8], align 1
@.str.12 = external hidden unnamed_addr constant [22 x i8], align 1
@.str.13 = external hidden unnamed_addr constant [21 x i8], align 1
@.str.14 = external hidden unnamed_addr constant [24 x i8], align 1
@.str.15 = external hidden unnamed_addr constant [22 x i8], align 1
@.str.16 = external hidden unnamed_addr constant [17 x i8], align 1
@.str.17 = external hidden unnamed_addr constant [25 x i8], align 1
@.str.18 = external hidden unnamed_addr constant [25 x i8], align 1
@.str.19 = external hidden unnamed_addr constant [32 x i8], align 1
@.str.20 = external hidden unnamed_addr constant [32 x i8], align 1
@.str.21 = external hidden unnamed_addr constant [34 x i8], align 1
@.str.22 = external hidden unnamed_addr constant [33 x i8], align 1
@.str.23 = external hidden unnamed_addr constant [23 x i8], align 1

; Function Attrs: nounwind uwtable
define dso_local void @type_string_test() #0 {
  %1 = alloca i32, align 4
  %2 = alloca i32, align 4
  %3 = alloca i32, align 4
  %4 = alloca i32, align 4
  %5 = alloca i32, align 4
  %6 = alloca i32, align 4
  %7 = alloca i32, align 4
  %8 = alloca i32, align 4
  %9 = alloca i32, align 4
  %10 = alloca i32, align 4
  %11 = alloca i32, align 4
  %12 = alloca i32, align 4
  %13 = alloca i32, align 4
  %14 = alloca i32, align 4
  %15 = alloca i32, align 4
  %16 = alloca i32, align 4
  %17 = alloca i32, align 4
  %18 = alloca i32, align 4
  %19 = alloca i32, align 4
  %20 = alloca i32, align 4
  %21 = alloca i32, align 4
  %22 = alloca i32, align 4
  %23 = alloca i32, align 4
  %24 = alloca i32, align 4
  call void @llvm.lifetime.start.p0(i64 4, ptr %1) #4
  store i32 0, ptr %1, align 4, !tbaa !5
  br label %25

25:                                               ; preds = %443, %0
  %26 = load i32, ptr %1, align 4, !tbaa !5
  %27 = icmp slt i32 %26, 3
  br i1 %27, label %28, label %446

28:                                               ; preds = %25
  br label %29

29:                                               ; preds = %28
  %30 = call i32 @greatest_pre_test(ptr noundef @.str)
  %31 = icmp eq i32 %30, 1
  br i1 %31, label %32, label %36

32:                                               ; preds = %29
  call void @llvm.lifetime.start.p0(i64 4, ptr %2) #4
  %33 = load i32, ptr %1, align 4, !tbaa !5
  %34 = call i32 @basic_test_set_get(i32 noundef %33)
  store i32 %34, ptr %2, align 4, !tbaa !5
  %35 = load i32, ptr %2, align 4, !tbaa !5
  call void @greatest_post_test(ptr noundef @.str, i32 noundef %35)
  call void @llvm.lifetime.end.p0(i64 4, ptr %2) #4
  br label %44

36:                                               ; preds = %29
  %37 = load i32, ptr @greatest_info, align 8, !tbaa !9
  %38 = and i32 %37, 4
  %39 = icmp ne i32 %38, 0
  br i1 %39, label %40, label %43

40:                                               ; preds = %36
  %41 = load ptr, ptr @stdout, align 8, !tbaa !14
  %42 = call i32 (ptr, ptr, ...) @fprintf(ptr noundef %41, ptr noundef @.str.1, ptr noundef @.str) #4
  br label %43

43:                                               ; preds = %40, %36
  br label %44

44:                                               ; preds = %43, %32
  br label %45

45:                                               ; preds = %44
  br label %46

46:                                               ; preds = %45
  br label %47

47:                                               ; preds = %46
  %48 = call i32 @greatest_pre_test(ptr noundef @.str.2)
  %49 = icmp eq i32 %48, 1
  br i1 %49, label %50, label %54

50:                                               ; preds = %47
  call void @llvm.lifetime.start.p0(i64 4, ptr %3) #4
  %51 = load i32, ptr %1, align 4, !tbaa !5
  %52 = call i32 @basic_test_set_delete_get(i32 noundef %51)
  store i32 %52, ptr %3, align 4, !tbaa !5
  %53 = load i32, ptr %3, align 4, !tbaa !5
  call void @greatest_post_test(ptr noundef @.str.2, i32 noundef %53)
  call void @llvm.lifetime.end.p0(i64 4, ptr %3) #4
  br label %62

54:                                               ; preds = %47
  %55 = load i32, ptr @greatest_info, align 8, !tbaa !9
  %56 = and i32 %55, 4
  %57 = icmp ne i32 %56, 0
  br i1 %57, label %58, label %61

58:                                               ; preds = %54
  %59 = load ptr, ptr @stdout, align 8, !tbaa !14
  %60 = call i32 (ptr, ptr, ...) @fprintf(ptr noundef %59, ptr noundef @.str.1, ptr noundef @.str.2) #4
  br label %61

61:                                               ; preds = %58, %54
  br label %62

62:                                               ; preds = %61, %50
  br label %63

63:                                               ; preds = %62
  br label %64

64:                                               ; preds = %63
  br label %65

65:                                               ; preds = %64
  %66 = call i32 @greatest_pre_test(ptr noundef @.str.3)
  %67 = icmp eq i32 %66, 1
  br i1 %67, label %68, label %72

68:                                               ; preds = %65
  call void @llvm.lifetime.start.p0(i64 4, ptr %4) #4
  %69 = load i32, ptr %1, align 4, !tbaa !5
  %70 = call i32 @basic_test_set_set_get(i32 noundef %69)
  store i32 %70, ptr %4, align 4, !tbaa !5
  %71 = load i32, ptr %4, align 4, !tbaa !5
  call void @greatest_post_test(ptr noundef @.str.3, i32 noundef %71)
  call void @llvm.lifetime.end.p0(i64 4, ptr %4) #4
  br label %80

72:                                               ; preds = %65
  %73 = load i32, ptr @greatest_info, align 8, !tbaa !9
  %74 = and i32 %73, 4
  %75 = icmp ne i32 %74, 0
  br i1 %75, label %76, label %79

76:                                               ; preds = %72
  %77 = load ptr, ptr @stdout, align 8, !tbaa !14
  %78 = call i32 (ptr, ptr, ...) @fprintf(ptr noundef %77, ptr noundef @.str.1, ptr noundef @.str.3) #4
  br label %79

79:                                               ; preds = %76, %72
  br label %80

80:                                               ; preds = %79, %68
  br label %81

81:                                               ; preds = %80
  br label %82

82:                                               ; preds = %81
  br label %83

83:                                               ; preds = %82
  %84 = call i32 @greatest_pre_test(ptr noundef @.str.4)
  %85 = icmp eq i32 %84, 1
  br i1 %85, label %86, label %90

86:                                               ; preds = %83
  call void @llvm.lifetime.start.p0(i64 4, ptr %5) #4
  %87 = load i32, ptr %1, align 4, !tbaa !5
  %88 = call i32 @basic_test_set_getrange(i32 noundef %87)
  store i32 %88, ptr %5, align 4, !tbaa !5
  %89 = load i32, ptr %5, align 4, !tbaa !5
  call void @greatest_post_test(ptr noundef @.str.4, i32 noundef %89)
  call void @llvm.lifetime.end.p0(i64 4, ptr %5) #4
  br label %98

90:                                               ; preds = %83
  %91 = load i32, ptr @greatest_info, align 8, !tbaa !9
  %92 = and i32 %91, 4
  %93 = icmp ne i32 %92, 0
  br i1 %93, label %94, label %97

94:                                               ; preds = %90
  %95 = load ptr, ptr @stdout, align 8, !tbaa !14
  %96 = call i32 (ptr, ptr, ...) @fprintf(ptr noundef %95, ptr noundef @.str.1, ptr noundef @.str.4) #4
  br label %97

97:                                               ; preds = %94, %90
  br label %98

98:                                               ; preds = %97, %86
  br label %99

99:                                               ; preds = %98
  br label %100

100:                                              ; preds = %99
  br label %101

101:                                              ; preds = %100
  %102 = call i32 @greatest_pre_test(ptr noundef @.str.5)
  %103 = icmp eq i32 %102, 1
  br i1 %103, label %104, label %108

104:                                              ; preds = %101
  call void @llvm.lifetime.start.p0(i64 4, ptr %6) #4
  %105 = load i32, ptr %1, align 4, !tbaa !5
  %106 = call i32 @basic_test_set_setrange(i32 noundef %105)
  store i32 %106, ptr %6, align 4, !tbaa !5
  %107 = load i32, ptr %6, align 4, !tbaa !5
  call void @greatest_post_test(ptr noundef @.str.5, i32 noundef %107)
  call void @llvm.lifetime.end.p0(i64 4, ptr %6) #4
  br label %116

108:                                              ; preds = %101
  %109 = load i32, ptr @greatest_info, align 8, !tbaa !9
  %110 = and i32 %109, 4
  %111 = icmp ne i32 %110, 0
  br i1 %111, label %112, label %115

112:                                              ; preds = %108
  %113 = load ptr, ptr @stdout, align 8, !tbaa !14
  %114 = call i32 (ptr, ptr, ...) @fprintf(ptr noundef %113, ptr noundef @.str.1, ptr noundef @.str.5) #4
  br label %115

115:                                              ; preds = %112, %108
  br label %116

116:                                              ; preds = %115, %104
  br label %117

117:                                              ; preds = %116
  br label %118

118:                                              ; preds = %117
  br label %119

119:                                              ; preds = %118
  %120 = call i32 @greatest_pre_test(ptr noundef @.str.6)
  %121 = icmp eq i32 %120, 1
  br i1 %121, label %122, label %126

122:                                              ; preds = %119
  call void @llvm.lifetime.start.p0(i64 4, ptr %7) #4
  %123 = load i32, ptr %1, align 4, !tbaa !5
  %124 = call i32 @basic_test_append(i32 noundef %123)
  store i32 %124, ptr %7, align 4, !tbaa !5
  %125 = load i32, ptr %7, align 4, !tbaa !5
  call void @greatest_post_test(ptr noundef @.str.6, i32 noundef %125)
  call void @llvm.lifetime.end.p0(i64 4, ptr %7) #4
  br label %134

126:                                              ; preds = %119
  %127 = load i32, ptr @greatest_info, align 8, !tbaa !9
  %128 = and i32 %127, 4
  %129 = icmp ne i32 %128, 0
  br i1 %129, label %130, label %133

130:                                              ; preds = %126
  %131 = load ptr, ptr @stdout, align 8, !tbaa !14
  %132 = call i32 (ptr, ptr, ...) @fprintf(ptr noundef %131, ptr noundef @.str.1, ptr noundef @.str.6) #4
  br label %133

133:                                              ; preds = %130, %126
  br label %134

134:                                              ; preds = %133, %122
  br label %135

135:                                              ; preds = %134
  br label %136

136:                                              ; preds = %135
  br label %137

137:                                              ; preds = %136
  %138 = call i32 @greatest_pre_test(ptr noundef @.str.7)
  %139 = icmp eq i32 %138, 1
  br i1 %139, label %140, label %144

140:                                              ; preds = %137
  call void @llvm.lifetime.start.p0(i64 4, ptr %8) #4
  %141 = load i32, ptr %1, align 4, !tbaa !5
  %142 = call i32 @basic_test_setnx_setnx_get(i32 noundef %141)
  store i32 %142, ptr %8, align 4, !tbaa !5
  %143 = load i32, ptr %8, align 4, !tbaa !5
  call void @greatest_post_test(ptr noundef @.str.7, i32 noundef %143)
  call void @llvm.lifetime.end.p0(i64 4, ptr %8) #4
  br label %152

144:                                              ; preds = %137
  %145 = load i32, ptr @greatest_info, align 8, !tbaa !9
  %146 = and i32 %145, 4
  %147 = icmp ne i32 %146, 0
  br i1 %147, label %148, label %151

148:                                              ; preds = %144
  %149 = load ptr, ptr @stdout, align 8, !tbaa !14
  %150 = call i32 (ptr, ptr, ...) @fprintf(ptr noundef %149, ptr noundef @.str.1, ptr noundef @.str.7) #4
  br label %151

151:                                              ; preds = %148, %144
  br label %152

152:                                              ; preds = %151, %140
  br label %153

153:                                              ; preds = %152
  br label %154

154:                                              ; preds = %153
  br label %155

155:                                              ; preds = %154
  %156 = call i32 @greatest_pre_test(ptr noundef @.str.8)
  %157 = icmp eq i32 %156, 1
  br i1 %157, label %158, label %162

158:                                              ; preds = %155
  call void @llvm.lifetime.start.p0(i64 4, ptr %9) #4
  %159 = load i32, ptr %1, align 4, !tbaa !5
  %160 = call i32 @basic_test_set_expiration(i32 noundef %159)
  store i32 %160, ptr %9, align 4, !tbaa !5
  %161 = load i32, ptr %9, align 4, !tbaa !5
  call void @greatest_post_test(ptr noundef @.str.8, i32 noundef %161)
  call void @llvm.lifetime.end.p0(i64 4, ptr %9) #4
  br label %170

162:                                              ; preds = %155
  %163 = load i32, ptr @greatest_info, align 8, !tbaa !9
  %164 = and i32 %163, 4
  %165 = icmp ne i32 %164, 0
  br i1 %165, label %166, label %169

166:                                              ; preds = %162
  %167 = load ptr, ptr @stdout, align 8, !tbaa !14
  %168 = call i32 (ptr, ptr, ...) @fprintf(ptr noundef %167, ptr noundef @.str.1, ptr noundef @.str.8) #4
  br label %169

169:                                              ; preds = %166, %162
  br label %170

170:                                              ; preds = %169, %158
  br label %171

171:                                              ; preds = %170
  br label %172

172:                                              ; preds = %171
  br label %173

173:                                              ; preds = %172
  %174 = call i32 @greatest_pre_test(ptr noundef @.str.9)
  %175 = icmp eq i32 %174, 1
  br i1 %175, label %176, label %180

176:                                              ; preds = %173
  call void @llvm.lifetime.start.p0(i64 4, ptr %10) #4
  %177 = load i32, ptr %1, align 4, !tbaa !5
  %178 = call i32 @basic_test_set_strlen(i32 noundef %177)
  store i32 %178, ptr %10, align 4, !tbaa !5
  %179 = load i32, ptr %10, align 4, !tbaa !5
  call void @greatest_post_test(ptr noundef @.str.9, i32 noundef %179)
  call void @llvm.lifetime.end.p0(i64 4, ptr %10) #4
  br label %188

180:                                              ; preds = %173
  %181 = load i32, ptr @greatest_info, align 8, !tbaa !9
  %182 = and i32 %181, 4
  %183 = icmp ne i32 %182, 0
  br i1 %183, label %184, label %187

184:                                              ; preds = %180
  %185 = load ptr, ptr @stdout, align 8, !tbaa !14
  %186 = call i32 (ptr, ptr, ...) @fprintf(ptr noundef %185, ptr noundef @.str.1, ptr noundef @.str.9) #4
  br label %187

187:                                              ; preds = %184, %180
  br label %188

188:                                              ; preds = %187, %176
  br label %189

189:                                              ; preds = %188
  br label %190

190:                                              ; preds = %189
  br label %191

191:                                              ; preds = %190
  %192 = call i32 @greatest_pre_test(ptr noundef @.str.10)
  %193 = icmp eq i32 %192, 1
  br i1 %193, label %194, label %198

194:                                              ; preds = %191
  call void @llvm.lifetime.start.p0(i64 4, ptr %11) #4
  %195 = load i32, ptr %1, align 4, !tbaa !5
  %196 = call i32 @basic_test_set_incr(i32 noundef %195)
  store i32 %196, ptr %11, align 4, !tbaa !5
  %197 = load i32, ptr %11, align 4, !tbaa !5
  call void @greatest_post_test(ptr noundef @.str.10, i32 noundef %197)
  call void @llvm.lifetime.end.p0(i64 4, ptr %11) #4
  br label %206

198:                                              ; preds = %191
  %199 = load i32, ptr @greatest_info, align 8, !tbaa !9
  %200 = and i32 %199, 4
  %201 = icmp ne i32 %200, 0
  br i1 %201, label %202, label %205

202:                                              ; preds = %198
  %203 = load ptr, ptr @stdout, align 8, !tbaa !14
  %204 = call i32 (ptr, ptr, ...) @fprintf(ptr noundef %203, ptr noundef @.str.1, ptr noundef @.str.10) #4
  br label %205

205:                                              ; preds = %202, %198
  br label %206

206:                                              ; preds = %205, %194
  br label %207

207:                                              ; preds = %206
  br label %208

208:                                              ; preds = %207
  br label %209

209:                                              ; preds = %208
  %210 = call i32 @greatest_pre_test(ptr noundef @.str.11)
  %211 = icmp eq i32 %210, 1
  br i1 %211, label %212, label %216

212:                                              ; preds = %209
  call void @llvm.lifetime.start.p0(i64 4, ptr %12) #4
  %213 = load i32, ptr %1, align 4, !tbaa !5
  %214 = call i32 @basic_test_set_incrbyfloat(i32 noundef %213)
  store i32 %214, ptr %12, align 4, !tbaa !5
  %215 = load i32, ptr %12, align 4, !tbaa !5
  call void @greatest_post_test(ptr noundef @.str.11, i32 noundef %215)
  call void @llvm.lifetime.end.p0(i64 4, ptr %12) #4
  br label %224

216:                                              ; preds = %209
  %217 = load i32, ptr @greatest_info, align 8, !tbaa !9
  %218 = and i32 %217, 4
  %219 = icmp ne i32 %218, 0
  br i1 %219, label %220, label %223

220:                                              ; preds = %216
  %221 = load ptr, ptr @stdout, align 8, !tbaa !14
  %222 = call i32 (ptr, ptr, ...) @fprintf(ptr noundef %221, ptr noundef @.str.1, ptr noundef @.str.11) #4
  br label %223

223:                                              ; preds = %220, %216
  br label %224

224:                                              ; preds = %223, %212
  br label %225

225:                                              ; preds = %224
  br label %226

226:                                              ; preds = %225
  br label %227

227:                                              ; preds = %226
  %228 = call i32 @greatest_pre_test(ptr noundef @.str.12)
  %229 = icmp eq i32 %228, 1
  br i1 %229, label %230, label %234

230:                                              ; preds = %227
  call void @llvm.lifetime.start.p0(i64 4, ptr %13) #4
  %231 = load i32, ptr %1, align 4, !tbaa !5
  %232 = call i32 @basic_test_set_getbit(i32 noundef %231)
  store i32 %232, ptr %13, align 4, !tbaa !5
  %233 = load i32, ptr %13, align 4, !tbaa !5
  call void @greatest_post_test(ptr noundef @.str.12, i32 noundef %233)
  call void @llvm.lifetime.end.p0(i64 4, ptr %13) #4
  br label %242

234:                                              ; preds = %227
  %235 = load i32, ptr @greatest_info, align 8, !tbaa !9
  %236 = and i32 %235, 4
  %237 = icmp ne i32 %236, 0
  br i1 %237, label %238, label %241

238:                                              ; preds = %234
  %239 = load ptr, ptr @stdout, align 8, !tbaa !14
  %240 = call i32 (ptr, ptr, ...) @fprintf(ptr noundef %239, ptr noundef @.str.1, ptr noundef @.str.12) #4
  br label %241

241:                                              ; preds = %238, %234
  br label %242

242:                                              ; preds = %241, %230
  br label %243

243:                                              ; preds = %242
  br label %244

244:                                              ; preds = %243
  br label %245

245:                                              ; preds = %244
  %246 = call i32 @greatest_pre_test(ptr noundef @.str.13)
  %247 = icmp eq i32 %246, 1
  br i1 %247, label %248, label %252

248:                                              ; preds = %245
  call void @llvm.lifetime.start.p0(i64 4, ptr %14) #4
  %249 = load i32, ptr %1, align 4, !tbaa !5
  %250 = call i32 @basic_test_set_bitop(i32 noundef %249)
  store i32 %250, ptr %14, align 4, !tbaa !5
  %251 = load i32, ptr %14, align 4, !tbaa !5
  call void @greatest_post_test(ptr noundef @.str.13, i32 noundef %251)
  call void @llvm.lifetime.end.p0(i64 4, ptr %14) #4
  br label %260

252:                                              ; preds = %245
  %253 = load i32, ptr @greatest_info, align 8, !tbaa !9
  %254 = and i32 %253, 4
  %255 = icmp ne i32 %254, 0
  br i1 %255, label %256, label %259

256:                                              ; preds = %252
  %257 = load ptr, ptr @stdout, align 8, !tbaa !14
  %258 = call i32 (ptr, ptr, ...) @fprintf(ptr noundef %257, ptr noundef @.str.1, ptr noundef @.str.13) #4
  br label %259

259:                                              ; preds = %256, %252
  br label %260

260:                                              ; preds = %259, %248
  br label %261

261:                                              ; preds = %260
  br label %262

262:                                              ; preds = %261
  br label %263

263:                                              ; preds = %262
  %264 = call i32 @greatest_pre_test(ptr noundef @.str.14)
  %265 = icmp eq i32 %264, 1
  br i1 %265, label %266, label %270

266:                                              ; preds = %263
  call void @llvm.lifetime.start.p0(i64 4, ptr %15) #4
  %267 = load i32, ptr %1, align 4, !tbaa !5
  %268 = call i32 @basic_test_set_bitcount(i32 noundef %267)
  store i32 %268, ptr %15, align 4, !tbaa !5
  %269 = load i32, ptr %15, align 4, !tbaa !5
  call void @greatest_post_test(ptr noundef @.str.14, i32 noundef %269)
  call void @llvm.lifetime.end.p0(i64 4, ptr %15) #4
  br label %278

270:                                              ; preds = %263
  %271 = load i32, ptr @greatest_info, align 8, !tbaa !9
  %272 = and i32 %271, 4
  %273 = icmp ne i32 %272, 0
  br i1 %273, label %274, label %277

274:                                              ; preds = %270
  %275 = load ptr, ptr @stdout, align 8, !tbaa !14
  %276 = call i32 (ptr, ptr, ...) @fprintf(ptr noundef %275, ptr noundef @.str.1, ptr noundef @.str.14) #4
  br label %277

277:                                              ; preds = %274, %270
  br label %278

278:                                              ; preds = %277, %266
  br label %279

279:                                              ; preds = %278
  br label %280

280:                                              ; preds = %279
  br label %281

281:                                              ; preds = %280
  %282 = call i32 @greatest_pre_test(ptr noundef @.str.15)
  %283 = icmp eq i32 %282, 1
  br i1 %283, label %284, label %288

284:                                              ; preds = %281
  call void @llvm.lifetime.start.p0(i64 4, ptr %16) #4
  %285 = load i32, ptr %1, align 4, !tbaa !5
  %286 = call i32 @basic_test_set_bitpos(i32 noundef %285)
  store i32 %286, ptr %16, align 4, !tbaa !5
  %287 = load i32, ptr %16, align 4, !tbaa !5
  call void @greatest_post_test(ptr noundef @.str.15, i32 noundef %287)
  call void @llvm.lifetime.end.p0(i64 4, ptr %16) #4
  br label %296

288:                                              ; preds = %281
  %289 = load i32, ptr @greatest_info, align 8, !tbaa !9
  %290 = and i32 %289, 4
  %291 = icmp ne i32 %290, 0
  br i1 %291, label %292, label %295

292:                                              ; preds = %288
  %293 = load ptr, ptr @stdout, align 8, !tbaa !14
  %294 = call i32 (ptr, ptr, ...) @fprintf(ptr noundef %293, ptr noundef @.str.1, ptr noundef @.str.15) #4
  br label %295

295:                                              ; preds = %292, %288
  br label %296

296:                                              ; preds = %295, %284
  br label %297

297:                                              ; preds = %296
  br label %298

298:                                              ; preds = %297
  br label %299

299:                                              ; preds = %298
  %300 = call i32 @greatest_pre_test(ptr noundef @.str.16)
  %301 = icmp eq i32 %300, 1
  br i1 %301, label %302, label %306

302:                                              ; preds = %299
  call void @llvm.lifetime.start.p0(i64 4, ptr %17) #4
  %303 = load i32, ptr %1, align 4, !tbaa !5
  %304 = call i32 @basic_test_pfadd(i32 noundef %303)
  store i32 %304, ptr %17, align 4, !tbaa !5
  %305 = load i32, ptr %17, align 4, !tbaa !5
  call void @greatest_post_test(ptr noundef @.str.16, i32 noundef %305)
  call void @llvm.lifetime.end.p0(i64 4, ptr %17) #4
  br label %314

306:                                              ; preds = %299
  %307 = load i32, ptr @greatest_info, align 8, !tbaa !9
  %308 = and i32 %307, 4
  %309 = icmp ne i32 %308, 0
  br i1 %309, label %310, label %313

310:                                              ; preds = %306
  %311 = load ptr, ptr @stdout, align 8, !tbaa !14
  %312 = call i32 (ptr, ptr, ...) @fprintf(ptr noundef %311, ptr noundef @.str.1, ptr noundef @.str.16) #4
  br label %313

313:                                              ; preds = %310, %306
  br label %314

314:                                              ; preds = %313, %302
  br label %315

315:                                              ; preds = %314
  br label %316

316:                                              ; preds = %315
  br label %317

317:                                              ; preds = %316
  %318 = call i32 @greatest_pre_test(ptr noundef @.str.17)
  %319 = icmp eq i32 %318, 1
  br i1 %319, label %320, label %324

320:                                              ; preds = %317
  call void @llvm.lifetime.start.p0(i64 4, ptr %18) #4
  %321 = load i32, ptr %1, align 4, !tbaa !5
  %322 = call i32 @basic_test_pfadd_pfcount(i32 noundef %321)
  store i32 %322, ptr %18, align 4, !tbaa !5
  %323 = load i32, ptr %18, align 4, !tbaa !5
  call void @greatest_post_test(ptr noundef @.str.17, i32 noundef %323)
  call void @llvm.lifetime.end.p0(i64 4, ptr %18) #4
  br label %332

324:                                              ; preds = %317
  %325 = load i32, ptr @greatest_info, align 8, !tbaa !9
  %326 = and i32 %325, 4
  %327 = icmp ne i32 %326, 0
  br i1 %327, label %328, label %331

328:                                              ; preds = %324
  %329 = load ptr, ptr @stdout, align 8, !tbaa !14
  %330 = call i32 (ptr, ptr, ...) @fprintf(ptr noundef %329, ptr noundef @.str.1, ptr noundef @.str.17) #4
  br label %331

331:                                              ; preds = %328, %324
  br label %332

332:                                              ; preds = %331, %320
  br label %333

333:                                              ; preds = %332
  br label %334

334:                                              ; preds = %333
  br label %335

335:                                              ; preds = %334
  %336 = call i32 @greatest_pre_test(ptr noundef @.str.18)
  %337 = icmp eq i32 %336, 1
  br i1 %337, label %338, label %342

338:                                              ; preds = %335
  call void @llvm.lifetime.start.p0(i64 4, ptr %19) #4
  %339 = load i32, ptr %1, align 4, !tbaa !5
  %340 = call i32 @basic_test_pfadd_pfmerge(i32 noundef %339)
  store i32 %340, ptr %19, align 4, !tbaa !5
  %341 = load i32, ptr %19, align 4, !tbaa !5
  call void @greatest_post_test(ptr noundef @.str.18, i32 noundef %341)
  call void @llvm.lifetime.end.p0(i64 4, ptr %19) #4
  br label %350

342:                                              ; preds = %335
  %343 = load i32, ptr @greatest_info, align 8, !tbaa !9
  %344 = and i32 %343, 4
  %345 = icmp ne i32 %344, 0
  br i1 %345, label %346, label %349

346:                                              ; preds = %342
  %347 = load ptr, ptr @stdout, align 8, !tbaa !14
  %348 = call i32 (ptr, ptr, ...) @fprintf(ptr noundef %347, ptr noundef @.str.1, ptr noundef @.str.18) #4
  br label %349

349:                                              ; preds = %346, %342
  br label %350

350:                                              ; preds = %349, %338
  br label %351

351:                                              ; preds = %350
  br label %352

352:                                              ; preds = %351
  br label %353

353:                                              ; preds = %352
  %354 = call i32 @greatest_pre_test(ptr noundef @.str.19)
  %355 = icmp eq i32 %354, 1
  br i1 %355, label %356, label %360

356:                                              ; preds = %353
  call void @llvm.lifetime.start.p0(i64 4, ptr %20) #4
  %357 = load i32, ptr %1, align 4, !tbaa !5
  %358 = call i32 @basic_test_pfadd_pfdebug_getreg(i32 noundef %357)
  store i32 %358, ptr %20, align 4, !tbaa !5
  %359 = load i32, ptr %20, align 4, !tbaa !5
  call void @greatest_post_test(ptr noundef @.str.19, i32 noundef %359)
  call void @llvm.lifetime.end.p0(i64 4, ptr %20) #4
  br label %368

360:                                              ; preds = %353
  %361 = load i32, ptr @greatest_info, align 8, !tbaa !9
  %362 = and i32 %361, 4
  %363 = icmp ne i32 %362, 0
  br i1 %363, label %364, label %367

364:                                              ; preds = %360
  %365 = load ptr, ptr @stdout, align 8, !tbaa !14
  %366 = call i32 (ptr, ptr, ...) @fprintf(ptr noundef %365, ptr noundef @.str.1, ptr noundef @.str.19) #4
  br label %367

367:                                              ; preds = %364, %360
  br label %368

368:                                              ; preds = %367, %356
  br label %369

369:                                              ; preds = %368
  br label %370

370:                                              ; preds = %369
  br label %371

371:                                              ; preds = %370
  %372 = call i32 @greatest_pre_test(ptr noundef @.str.20)
  %373 = icmp eq i32 %372, 1
  br i1 %373, label %374, label %378

374:                                              ; preds = %371
  call void @llvm.lifetime.start.p0(i64 4, ptr %21) #4
  %375 = load i32, ptr %1, align 4, !tbaa !5
  %376 = call i32 @basic_test_pfadd_pfdebug_decode(i32 noundef %375)
  store i32 %376, ptr %21, align 4, !tbaa !5
  %377 = load i32, ptr %21, align 4, !tbaa !5
  call void @greatest_post_test(ptr noundef @.str.20, i32 noundef %377)
  call void @llvm.lifetime.end.p0(i64 4, ptr %21) #4
  br label %386

378:                                              ; preds = %371
  %379 = load i32, ptr @greatest_info, align 8, !tbaa !9
  %380 = and i32 %379, 4
  %381 = icmp ne i32 %380, 0
  br i1 %381, label %382, label %385

382:                                              ; preds = %378
  %383 = load ptr, ptr @stdout, align 8, !tbaa !14
  %384 = call i32 (ptr, ptr, ...) @fprintf(ptr noundef %383, ptr noundef @.str.1, ptr noundef @.str.20) #4
  br label %385

385:                                              ; preds = %382, %378
  br label %386

386:                                              ; preds = %385, %374
  br label %387

387:                                              ; preds = %386
  br label %388

388:                                              ; preds = %387
  br label %389

389:                                              ; preds = %388
  %390 = call i32 @greatest_pre_test(ptr noundef @.str.21)
  %391 = icmp eq i32 %390, 1
  br i1 %391, label %392, label %396

392:                                              ; preds = %389
  call void @llvm.lifetime.start.p0(i64 4, ptr %22) #4
  %393 = load i32, ptr %1, align 4, !tbaa !5
  %394 = call i32 @basic_test_pfadd_pfdebug_encoding(i32 noundef %393)
  store i32 %394, ptr %22, align 4, !tbaa !5
  %395 = load i32, ptr %22, align 4, !tbaa !5
  call void @greatest_post_test(ptr noundef @.str.21, i32 noundef %395)
  call void @llvm.lifetime.end.p0(i64 4, ptr %22) #4
  br label %404

396:                                              ; preds = %389
  %397 = load i32, ptr @greatest_info, align 8, !tbaa !9
  %398 = and i32 %397, 4
  %399 = icmp ne i32 %398, 0
  br i1 %399, label %400, label %403

400:                                              ; preds = %396
  %401 = load ptr, ptr @stdout, align 8, !tbaa !14
  %402 = call i32 (ptr, ptr, ...) @fprintf(ptr noundef %401, ptr noundef @.str.1, ptr noundef @.str.21) #4
  br label %403

403:                                              ; preds = %400, %396
  br label %404

404:                                              ; preds = %403, %392
  br label %405

405:                                              ; preds = %404
  br label %406

406:                                              ; preds = %405
  br label %407

407:                                              ; preds = %406
  %408 = call i32 @greatest_pre_test(ptr noundef @.str.22)
  %409 = icmp eq i32 %408, 1
  br i1 %409, label %410, label %414

410:                                              ; preds = %407
  call void @llvm.lifetime.start.p0(i64 4, ptr %23) #4
  %411 = load i32, ptr %1, align 4, !tbaa !5
  %412 = call i32 @basic_test_pfadd_pfdebug_todense(i32 noundef %411)
  store i32 %412, ptr %23, align 4, !tbaa !5
  %413 = load i32, ptr %23, align 4, !tbaa !5
  call void @greatest_post_test(ptr noundef @.str.22, i32 noundef %413)
  call void @llvm.lifetime.end.p0(i64 4, ptr %23) #4
  br label %422

414:                                              ; preds = %407
  %415 = load i32, ptr @greatest_info, align 8, !tbaa !9
  %416 = and i32 %415, 4
  %417 = icmp ne i32 %416, 0
  br i1 %417, label %418, label %421

418:                                              ; preds = %414
  %419 = load ptr, ptr @stdout, align 8, !tbaa !14
  %420 = call i32 (ptr, ptr, ...) @fprintf(ptr noundef %419, ptr noundef @.str.1, ptr noundef @.str.22) #4
  br label %421

421:                                              ; preds = %418, %414
  br label %422

422:                                              ; preds = %421, %410
  br label %423

423:                                              ; preds = %422
  br label %424

424:                                              ; preds = %423
  br label %425

425:                                              ; preds = %424
  %426 = call i32 @greatest_pre_test(ptr noundef @.str.23)
  %427 = icmp eq i32 %426, 1
  br i1 %427, label %428, label %432

428:                                              ; preds = %425
  call void @llvm.lifetime.start.p0(i64 4, ptr %24) #4
  %429 = load i32, ptr %1, align 4, !tbaa !5
  %430 = call i32 @basic_test_pfadd_empty(i32 noundef %429)
  store i32 %430, ptr %24, align 4, !tbaa !5
  %431 = load i32, ptr %24, align 4, !tbaa !5
  call void @greatest_post_test(ptr noundef @.str.23, i32 noundef %431)
  call void @llvm.lifetime.end.p0(i64 4, ptr %24) #4
  br label %440

432:                                              ; preds = %425
  %433 = load i32, ptr @greatest_info, align 8, !tbaa !9
  %434 = and i32 %433, 4
  %435 = icmp ne i32 %434, 0
  br i1 %435, label %436, label %439

436:                                              ; preds = %432
  %437 = load ptr, ptr @stdout, align 8, !tbaa !14
  %438 = call i32 (ptr, ptr, ...) @fprintf(ptr noundef %437, ptr noundef @.str.1, ptr noundef @.str.23) #4
  br label %439

439:                                              ; preds = %436, %432
  br label %440

440:                                              ; preds = %439, %428
  br label %441

441:                                              ; preds = %440
  br label %442

442:                                              ; preds = %441
  br label %443

443:                                              ; preds = %442
  %444 = load i32, ptr %1, align 4, !tbaa !5
  %445 = add nsw i32 %444, 1
  store i32 %445, ptr %1, align 4, !tbaa !5
  br label %25, !llvm.loop !15

446:                                              ; preds = %25
  call void @llvm.lifetime.end.p0(i64 4, ptr %1) #4
  ret void
}

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

declare i32 @greatest_pre_test(ptr noundef) #2

; Function Attrs: nounwind uwtable
declare hidden i32 @basic_test_set_get(i32 noundef) #0

declare void @greatest_post_test(ptr noundef, i32 noundef) #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
declare i32 @fprintf(ptr noundef, ptr noundef, ...) #3

; Function Attrs: nounwind uwtable
declare hidden i32 @basic_test_set_delete_get(i32 noundef) #0

; Function Attrs: nounwind uwtable
declare hidden i32 @basic_test_set_set_get(i32 noundef) #0

; Function Attrs: nounwind uwtable
declare hidden i32 @basic_test_set_getrange(i32 noundef) #0

; Function Attrs: nounwind uwtable
declare hidden i32 @basic_test_set_setrange(i32 noundef) #0

; Function Attrs: nounwind uwtable
declare hidden i32 @basic_test_append(i32 noundef) #0

; Function Attrs: nounwind uwtable
declare hidden i32 @basic_test_setnx_setnx_get(i32 noundef) #0

; Function Attrs: nounwind uwtable
declare hidden i32 @basic_test_set_expiration(i32 noundef) #0

; Function Attrs: nounwind uwtable
declare hidden i32 @basic_test_set_strlen(i32 noundef) #0

; Function Attrs: nounwind uwtable
declare hidden i32 @basic_test_set_incr(i32 noundef) #0

; Function Attrs: nounwind uwtable
declare hidden i32 @basic_test_set_incrbyfloat(i32 noundef) #0

; Function Attrs: nounwind uwtable
declare hidden i32 @basic_test_set_getbit(i32 noundef) #0

; Function Attrs: nounwind uwtable
declare hidden i32 @basic_test_set_bitop(i32 noundef) #0

; Function Attrs: nounwind uwtable
declare hidden i32 @basic_test_set_bitcount(i32 noundef) #0

; Function Attrs: nounwind uwtable
declare hidden i32 @basic_test_set_bitpos(i32 noundef) #0

; Function Attrs: nounwind uwtable
declare hidden i32 @basic_test_pfadd(i32 noundef) #0

; Function Attrs: nounwind uwtable
declare hidden i32 @basic_test_pfadd_pfcount(i32 noundef) #0

; Function Attrs: nounwind uwtable
declare hidden i32 @basic_test_pfadd_pfmerge(i32 noundef) #0

; Function Attrs: nounwind uwtable
declare hidden i32 @basic_test_pfadd_pfdebug_getreg(i32 noundef) #0

; Function Attrs: nounwind uwtable
declare hidden i32 @basic_test_pfadd_pfdebug_decode(i32 noundef) #0

; Function Attrs: nounwind uwtable
declare hidden i32 @basic_test_pfadd_pfdebug_encoding(i32 noundef) #0

; Function Attrs: nounwind uwtable
declare hidden i32 @basic_test_pfadd_pfdebug_todense(i32 noundef) #0

; Function Attrs: nounwind uwtable
declare hidden i32 @basic_test_pfadd_empty(i32 noundef) #0

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 = { "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #3 = { nounwind "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 = { nounwind }

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

!0 = !{i32 1, !"wchar_size", i32 4}
!1 = !{i32 8, !"PIC Level", i32 2}
!2 = !{i32 7, !"PIE Level", i32 2}
!3 = !{i32 7, !"uwtable", i32 2}
!4 = !{!"clang version 19.1.0 (git@github.com:llvm/llvm-project.git a4bf6cd7cfb1a1421ba92bca9d017b49936c55e4)"}
!5 = !{!6, !6, i64 0}
!6 = !{!"int", !7, i64 0}
!7 = !{!"omnipotent char", !8, i64 0}
!8 = !{!"Simple C/C++ TBAA"}
!9 = !{!10, !6, i64 0}
!10 = !{!"greatest_run_info", !6, i64 0, !6, i64 4, !6, i64 8, !6, i64 12, !6, i64 16, !6, i64 20, !11, i64 24, !13, i64 72, !6, i64 80, !13, i64 88, !13, i64 96, !13, i64 104, !13, i64 112, !13, i64 120, !6, i64 128, !6, i64 132, !13, i64 136, !13, i64 144, !12, i64 152, !12, i64 160, !7, i64 168}
!11 = !{!"greatest_suite_info", !6, i64 0, !6, i64 4, !6, i64 8, !6, i64 12, !12, i64 16, !12, i64 24, !12, i64 32, !12, i64 40}
!12 = !{!"long", !7, i64 0}
!13 = !{!"any pointer", !7, i64 0}
!14 = !{!13, !13, i64 0}
!15 = distinct !{!15, !16}
!16 = !{!"llvm.loop.mustprogress"}


; Optimized IR (opt -passes='default<O3>'):
target datalayout = "e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-i128:128-f80:128-n8:16:32:64-S128"
target triple = "x86_64-unknown-linux-gnu"

%struct.greatest_run_info = type { i32, i32, i32, i32, i32, i32, %struct.greatest_suite_info, ptr, i32, ptr, ptr, ptr, ptr, ptr, i32, i32, ptr, ptr, i64, i64, [1 x %struct.__jmp_buf_tag] }
%struct.greatest_suite_info = type { i32, i32, i32, i32, i64, i64, i64, i64 }
%struct.__jmp_buf_tag = type { [8 x i64], i32, %struct.__sigset_t }
%struct.__sigset_t = type { [16 x i64] }

@.str = external hidden unnamed_addr constant [19 x i8], align 1
@greatest_info = external local_unnamed_addr global %struct.greatest_run_info, align 8
@stdout = external local_unnamed_addr global ptr, align 8
@.str.1 = external hidden unnamed_addr constant [6 x i8], align 1
@.str.2 = external hidden unnamed_addr constant [26 x i8], align 1
@.str.3 = external hidden unnamed_addr constant [23 x i8], align 1
@.str.4 = external hidden unnamed_addr constant [24 x i8], align 1
@.str.5 = external hidden unnamed_addr constant [24 x i8], align 1
@.str.6 = external hidden unnamed_addr constant [18 x i8], align 1
@.str.7 = external hidden unnamed_addr constant [27 x i8], align 1
@.str.8 = external hidden unnamed_addr constant [26 x i8], align 1
@.str.9 = external hidden unnamed_addr constant [22 x i8], align 1
@.str.10 = external hidden unnamed_addr constant [20 x i8], align 1
@.str.11 = external hidden unnamed_addr constant [27 x i8], align 1
@.str.12 = external hidden unnamed_addr constant [22 x i8], align 1
@.str.13 = external hidden unnamed_addr constant [21 x i8], align 1
@.str.14 = external hidden unnamed_addr constant [24 x i8], align 1
@.str.15 = external hidden unnamed_addr constant [22 x i8], align 1
@.str.16 = external hidden unnamed_addr constant [17 x i8], align 1
@.str.17 = external hidden unnamed_addr constant [25 x i8], align 1
@.str.18 = external hidden unnamed_addr constant [25 x i8], align 1
@.str.19 = external hidden unnamed_addr constant [32 x i8], align 1
@.str.20 = external hidden unnamed_addr constant [32 x i8], align 1
@.str.21 = external hidden unnamed_addr constant [34 x i8], align 1
@.str.22 = external hidden unnamed_addr constant [33 x i8], align 1
@.str.23 = external hidden unnamed_addr constant [23 x i8], align 1

; Function Attrs: nounwind uwtable
define dso_local void @type_string_test() local_unnamed_addr #0 {
  br label %1

1:                                                ; preds = %0, %254
  %.070 = phi i32 [ 0, %0 ], [ %255, %254 ]
  %2 = tail call i32 @greatest_pre_test(ptr noundef nonnull @.str) #3
  %3 = icmp eq i32 %2, 1
  br i1 %3, label %4, label %6

4:                                                ; preds = %1
  %5 = tail call i32 @basic_test_set_get(i32 noundef %.070)
  tail call void @greatest_post_test(ptr noundef nonnull @.str, i32 noundef %5) #3
  br label %12

6:                                                ; preds = %1
  %7 = load i32, ptr @greatest_info, align 8, !tbaa !5
  %8 = and i32 %7, 4
  %.not = icmp eq i32 %8, 0
  br i1 %.not, label %12, label %9

9:                                                ; preds = %6
  %10 = load ptr, ptr @stdout, align 8, !tbaa !13
  %11 = tail call i32 (ptr, ptr, ...) @fprintf(ptr noundef %10, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str) #3
  br label %12

12:                                               ; preds = %4, %9, %6
  %13 = tail call i32 @greatest_pre_test(ptr noundef nonnull @.str.2) #3
  %14 = icmp eq i32 %13, 1
  br i1 %14, label %15, label %17

15:                                               ; preds = %12
  %16 = tail call i32 @basic_test_set_delete_get(i32 noundef %.070)
  tail call void @greatest_post_test(ptr noundef nonnull @.str.2, i32 noundef %16) #3
  br label %23

17:                                               ; preds = %12
  %18 = load i32, ptr @greatest_info, align 8, !tbaa !5
  %19 = and i32 %18, 4
  %.not48 = icmp eq i32 %19, 0
  br i1 %.not48, label %23, label %20

20:                                               ; preds = %17
  %21 = load ptr, ptr @stdout, align 8, !tbaa !13
  %22 = tail call i32 (ptr, ptr, ...) @fprintf(ptr noundef %21, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.2) #3
  br label %23

23:                                               ; preds = %15, %20, %17
  %24 = tail call i32 @greatest_pre_test(ptr noundef nonnull @.str.3) #3
  %25 = icmp eq i32 %24, 1
  br i1 %25, label %26, label %28

26:                                               ; preds = %23
  %27 = tail call i32 @basic_test_set_set_get(i32 noundef %.070)
  tail call void @greatest_post_test(ptr noundef nonnull @.str.3, i32 noundef %27) #3
  br label %34

28:                                               ; preds = %23
  %29 = load i32, ptr @greatest_info, align 8, !tbaa !5
  %30 = and i32 %29, 4
  %.not49 = icmp eq i32 %30, 0
  br i1 %.not49, label %34, label %31

31:                                               ; preds = %28
  %32 = load ptr, ptr @stdout, align 8, !tbaa !13
  %33 = tail call i32 (ptr, ptr, ...) @fprintf(ptr noundef %32, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.3) #3
  br label %34

34:                                               ; preds = %26, %31, %28
  %35 = tail call i32 @greatest_pre_test(ptr noundef nonnull @.str.4) #3
  %36 = icmp eq i32 %35, 1
  br i1 %36, label %37, label %39

37:                                               ; preds = %34
  %38 = tail call i32 @basic_test_set_getrange(i32 noundef %.070)
  tail call void @greatest_post_test(ptr noundef nonnull @.str.4, i32 noundef %38) #3
  br label %45

39:                                               ; preds = %34
  %40 = load i32, ptr @greatest_info, align 8, !tbaa !5
  %41 = and i32 %40, 4
  %.not50 = icmp eq i32 %41, 0
  br i1 %.not50, label %45, label %42

42:                                               ; preds = %39
  %43 = load ptr, ptr @stdout, align 8, !tbaa !13
  %44 = tail call i32 (ptr, ptr, ...) @fprintf(ptr noundef %43, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.4) #3
  br label %45

45:                                               ; preds = %37, %42, %39
  %46 = tail call i32 @greatest_pre_test(ptr noundef nonnull @.str.5) #3
  %47 = icmp eq i32 %46, 1
  br i1 %47, label %48, label %50

48:                                               ; preds = %45
  %49 = tail call i32 @basic_test_set_setrange(i32 noundef %.070)
  tail call void @greatest_post_test(ptr noundef nonnull @.str.5, i32 noundef %49) #3
  br label %56

50:                                               ; preds = %45
  %51 = load i32, ptr @greatest_info, align 8, !tbaa !5
  %52 = and i32 %51, 4
  %.not51 = icmp eq i32 %52, 0
  br i1 %.not51, label %56, label %53

53:                                               ; preds = %50
  %54 = load ptr, ptr @stdout, align 8, !tbaa !13
  %55 = tail call i32 (ptr, ptr, ...) @fprintf(ptr noundef %54, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.5) #3
  br label %56

56:                                               ; preds = %48, %53, %50
  %57 = tail call i32 @greatest_pre_test(ptr noundef nonnull @.str.6) #3
  %58 = icmp eq i32 %57, 1
  br i1 %58, label %59, label %61

59:                                               ; preds = %56
  %60 = tail call i32 @basic_test_append(i32 noundef %.070)
  tail call void @greatest_post_test(ptr noundef nonnull @.str.6, i32 noundef %60) #3
  br label %67

61:                                               ; preds = %56
  %62 = load i32, ptr @greatest_info, align 8, !tbaa !5
  %63 = and i32 %62, 4
  %.not52 = icmp eq i32 %63, 0
  br i1 %.not52, label %67, label %64

64:                                               ; preds = %61
  %65 = load ptr, ptr @stdout, align 8, !tbaa !13
  %66 = tail call i32 (ptr, ptr, ...) @fprintf(ptr noundef %65, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.6) #3
  br label %67

67:                                               ; preds = %59, %64, %61
  %68 = tail call i32 @greatest_pre_test(ptr noundef nonnull @.str.7) #3
  %69 = icmp eq i32 %68, 1
  br i1 %69, label %70, label %72

70:                                               ; preds = %67
  %71 = tail call i32 @basic_test_setnx_setnx_get(i32 noundef %.070)
  tail call void @greatest_post_test(ptr noundef nonnull @.str.7, i32 noundef %71) #3
  br label %78

72:                                               ; preds = %67
  %73 = load i32, ptr @greatest_info, align 8, !tbaa !5
  %74 = and i32 %73, 4
  %.not53 = icmp eq i32 %74, 0
  br i1 %.not53, label %78, label %75

75:                                               ; preds = %72
  %76 = load ptr, ptr @stdout, align 8, !tbaa !13
  %77 = tail call i32 (ptr, ptr, ...) @fprintf(ptr noundef %76, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.7) #3
  br label %78

78:                                               ; preds = %70, %75, %72
  %79 = tail call i32 @greatest_pre_test(ptr noundef nonnull @.str.8) #3
  %80 = icmp eq i32 %79, 1
  br i1 %80, label %81, label %83

81:                                               ; preds = %78
  %82 = tail call i32 @basic_test_set_expiration(i32 noundef %.070)
  tail call void @greatest_post_test(ptr noundef nonnull @.str.8, i32 noundef %82) #3
  br label %89

83:                                               ; preds = %78
  %84 = load i32, ptr @greatest_info, align 8, !tbaa !5
  %85 = and i32 %84, 4
  %.not54 = icmp eq i32 %85, 0
  br i1 %.not54, label %89, label %86

86:                                               ; preds = %83
  %87 = load ptr, ptr @stdout, align 8, !tbaa !13
  %88 = tail call i32 (ptr, ptr, ...) @fprintf(ptr noundef %87, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.8) #3
  br label %89

89:                                               ; preds = %81, %86, %83
  %90 = tail call i32 @greatest_pre_test(ptr noundef nonnull @.str.9) #3
  %91 = icmp eq i32 %90, 1
  br i1 %91, label %92, label %94

92:                                               ; preds = %89
  %93 = tail call i32 @basic_test_set_strlen(i32 noundef %.070)
  tail call void @greatest_post_test(ptr noundef nonnull @.str.9, i32 noundef %93) #3
  br label %100

94:                                               ; preds = %89
  %95 = load i32, ptr @greatest_info, align 8, !tbaa !5
  %96 = and i32 %95, 4
  %.not55 = icmp eq i32 %96, 0
  br i1 %.not55, label %100, label %97

97:                                               ; preds = %94
  %98 = load ptr, ptr @stdout, align 8, !tbaa !13
  %99 = tail call i32 (ptr, ptr, ...) @fprintf(ptr noundef %98, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.9) #3
  br label %100

100:                                              ; preds = %92, %97, %94
  %101 = tail call i32 @greatest_pre_test(ptr noundef nonnull @.str.10) #3
  %102 = icmp eq i32 %101, 1
  br i1 %102, label %103, label %105

103:                                              ; preds = %100
  %104 = tail call i32 @basic_test_set_incr(i32 noundef %.070)
  tail call void @greatest_post_test(ptr noundef nonnull @.str.10, i32 noundef %104) #3
  br label %111

105:                                              ; preds = %100
  %106 = load i32, ptr @greatest_info, align 8, !tbaa !5
  %107 = and i32 %106, 4
  %.not56 = icmp eq i32 %107, 0
  br i1 %.not56, label %111, label %108

108:                                              ; preds = %105
  %109 = load ptr, ptr @stdout, align 8, !tbaa !13
  %110 = tail call i32 (ptr, ptr, ...) @fprintf(ptr noundef %109, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.10) #3
  br label %111

111:                                              ; preds = %103, %108, %105
  %112 = tail call i32 @greatest_pre_test(ptr noundef nonnull @.str.11) #3
  %113 = icmp eq i32 %112, 1
  br i1 %113, label %114, label %116

114:                                              ; preds = %111
  %115 = tail call i32 @basic_test_set_incrbyfloat(i32 noundef %.070)
  tail call void @greatest_post_test(ptr noundef nonnull @.str.11, i32 noundef %115) #3
  br label %122

116:                                              ; preds = %111
  %117 = load i32, ptr @greatest_info, align 8, !tbaa !5
  %118 = and i32 %117, 4
  %.not57 = icmp eq i32 %118, 0
  br i1 %.not57, label %122, label %119

119:                                              ; preds = %116
  %120 = load ptr, ptr @stdout, align 8, !tbaa !13
  %121 = tail call i32 (ptr, ptr, ...) @fprintf(ptr noundef %120, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.11) #3
  br label %122

122:                                              ; preds = %114, %119, %116
  %123 = tail call i32 @greatest_pre_test(ptr noundef nonnull @.str.12) #3
  %124 = icmp eq i32 %123, 1
  br i1 %124, label %125, label %127

125:                                              ; preds = %122
  %126 = tail call i32 @basic_test_set_getbit(i32 noundef %.070)
  tail call void @greatest_post_test(ptr noundef nonnull @.str.12, i32 noundef %126) #3
  br label %133

127:                                              ; preds = %122
  %128 = load i32, ptr @greatest_info, align 8, !tbaa !5
  %129 = and i32 %128, 4
  %.not58 = icmp eq i32 %129, 0
  br i1 %.not58, label %133, label %130

130:                                              ; preds = %127
  %131 = load ptr, ptr @stdout, align 8, !tbaa !13
  %132 = tail call i32 (ptr, ptr, ...) @fprintf(ptr noundef %131, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.12) #3
  br label %133

133:                                              ; preds = %125, %130, %127
  %134 = tail call i32 @greatest_pre_test(ptr noundef nonnull @.str.13) #3
  %135 = icmp eq i32 %134, 1
  br i1 %135, label %136, label %138

136:                                              ; preds = %133
  %137 = tail call i32 @basic_test_set_bitop(i32 noundef %.070)
  tail call void @greatest_post_test(ptr noundef nonnull @.str.13, i32 noundef %137) #3
  br label %144

138:                                              ; preds = %133
  %139 = load i32, ptr @greatest_info, align 8, !tbaa !5
  %140 = and i32 %139, 4
  %.not59 = icmp eq i32 %140, 0
  br i1 %.not59, label %144, label %141

141:                                              ; preds = %138
  %142 = load ptr, ptr @stdout, align 8, !tbaa !13
  %143 = tail call i32 (ptr, ptr, ...) @fprintf(ptr noundef %142, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.13) #3
  br label %144

144:                                              ; preds = %136, %141, %138
  %145 = tail call i32 @greatest_pre_test(ptr noundef nonnull @.str.14) #3
  %146 = icmp eq i32 %145, 1
  br i1 %146, label %147, label %149

147:                                              ; preds = %144
  %148 = tail call i32 @basic_test_set_bitcount(i32 noundef %.070)
  tail call void @greatest_post_test(ptr noundef nonnull @.str.14, i32 noundef %148) #3
  br label %155

149:                                              ; preds = %144
  %150 = load i32, ptr @greatest_info, align 8, !tbaa !5
  %151 = and i32 %150, 4
  %.not60 = icmp eq i32 %151, 0
  br i1 %.not60, label %155, label %152

152:                                              ; preds = %149
  %153 = load ptr, ptr @stdout, align 8, !tbaa !13
  %154 = tail call i32 (ptr, ptr, ...) @fprintf(ptr noundef %153, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.14) #3
  br label %155

155:                                              ; preds = %147, %152, %149
  %156 = tail call i32 @greatest_pre_test(ptr noundef nonnull @.str.15) #3
  %157 = icmp eq i32 %156, 1
  br i1 %157, label %158, label %160

158:                                              ; preds = %155
  %159 = tail call i32 @basic_test_set_bitpos(i32 noundef %.070)
  tail call void @greatest_post_test(ptr noundef nonnull @.str.15, i32 noundef %159) #3
  br label %166

160:                                              ; preds = %155
  %161 = load i32, ptr @greatest_info, align 8, !tbaa !5
  %162 = and i32 %161, 4
  %.not61 = icmp eq i32 %162, 0
  br i1 %.not61, label %166, label %163

163:                                              ; preds = %160
  %164 = load ptr, ptr @stdout, align 8, !tbaa !13
  %165 = tail call i32 (ptr, ptr, ...) @fprintf(ptr noundef %164, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.15) #3
  br label %166

166:                                              ; preds = %158, %163, %160
  %167 = tail call i32 @greatest_pre_test(ptr noundef nonnull @.str.16) #3
  %168 = icmp eq i32 %167, 1
  br i1 %168, label %169, label %171

169:                                              ; preds = %166
  %170 = tail call i32 @basic_test_pfadd(i32 noundef %.070)
  tail call void @greatest_post_test(ptr noundef nonnull @.str.16, i32 noundef %170) #3
  br label %177

171:                                              ; preds = %166
  %172 = load i32, ptr @greatest_info, align 8, !tbaa !5
  %173 = and i32 %172, 4
  %.not62 = icmp eq i32 %173, 0
  br i1 %.not62, label %177, label %174

174:                                              ; preds = %171
  %175 = load ptr, ptr @stdout, align 8, !tbaa !13
  %176 = tail call i32 (ptr, ptr, ...) @fprintf(ptr noundef %175, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.16) #3
  br label %177

177:                                              ; preds = %169, %174, %171
  %178 = tail call i32 @greatest_pre_test(ptr noundef nonnull @.str.17) #3
  %179 = icmp eq i32 %178, 1
  br i1 %179, label %180, label %182

180:                                              ; preds = %177
  %181 = tail call i32 @basic_test_pfadd_pfcount(i32 noundef %.070)
  tail call void @greatest_post_test(ptr noundef nonnull @.str.17, i32 noundef %181) #3
  br label %188

182:                                              ; preds = %177
  %183 = load i32, ptr @greatest_info, align 8, !tbaa !5
  %184 = and i32 %183, 4
  %.not63 = icmp eq i32 %184, 0
  br i1 %.not63, label %188, label %185

185:                                              ; preds = %182
  %186 = load ptr, ptr @stdout, align 8, !tbaa !13
  %187 = tail call i32 (ptr, ptr, ...) @fprintf(ptr noundef %186, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.17) #3
  br label %188

188:                                              ; preds = %180, %185, %182
  %189 = tail call i32 @greatest_pre_test(ptr noundef nonnull @.str.18) #3
  %190 = icmp eq i32 %189, 1
  br i1 %190, label %191, label %193

191:                                              ; preds = %188
  %192 = tail call i32 @basic_test_pfadd_pfmerge(i32 noundef %.070)
  tail call void @greatest_post_test(ptr noundef nonnull @.str.18, i32 noundef %192) #3
  br label %199

193:                                              ; preds = %188
  %194 = load i32, ptr @greatest_info, align 8, !tbaa !5
  %195 = and i32 %194, 4
  %.not64 = icmp eq i32 %195, 0
  br i1 %.not64, label %199, label %196

196:                                              ; preds = %193
  %197 = load ptr, ptr @stdout, align 8, !tbaa !13
  %198 = tail call i32 (ptr, ptr, ...) @fprintf(ptr noundef %197, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.18) #3
  br label %199

199:                                              ; preds = %191, %196, %193
  %200 = tail call i32 @greatest_pre_test(ptr noundef nonnull @.str.19) #3
  %201 = icmp eq i32 %200, 1
  br i1 %201, label %202, label %204

202:                                              ; preds = %199
  %203 = tail call i32 @basic_test_pfadd_pfdebug_getreg(i32 noundef %.070)
  tail call void @greatest_post_test(ptr noundef nonnull @.str.19, i32 noundef %203) #3
  br label %210

204:                                              ; preds = %199
  %205 = load i32, ptr @greatest_info, align 8, !tbaa !5
  %206 = and i32 %205, 4
  %.not65 = icmp eq i32 %206, 0
  br i1 %.not65, label %210, label %207

207:                                              ; preds = %204
  %208 = load ptr, ptr @stdout, align 8, !tbaa !13
  %209 = tail call i32 (ptr, ptr, ...) @fprintf(ptr noundef %208, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.19) #3
  br label %210

210:                                              ; preds = %202, %207, %204
  %211 = tail call i32 @greatest_pre_test(ptr noundef nonnull @.str.20) #3
  %212 = icmp eq i32 %211, 1
  br i1 %212, label %213, label %215

213:                                              ; preds = %210
  %214 = tail call i32 @basic_test_pfadd_pfdebug_decode(i32 noundef %.070)
  tail call void @greatest_post_test(ptr noundef nonnull @.str.20, i32 noundef %214) #3
  br label %221

215:                                              ; preds = %210
  %216 = load i32, ptr @greatest_info, align 8, !tbaa !5
  %217 = and i32 %216, 4
  %.not66 = icmp eq i32 %217, 0
  br i1 %.not66, label %221, label %218

218:                                              ; preds = %215
  %219 = load ptr, ptr @stdout, align 8, !tbaa !13
  %220 = tail call i32 (ptr, ptr, ...) @fprintf(ptr noundef %219, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.20) #3
  br label %221

221:                                              ; preds = %213, %218, %215
  %222 = tail call i32 @greatest_pre_test(ptr noundef nonnull @.str.21) #3
  %223 = icmp eq i32 %222, 1
  br i1 %223, label %224, label %226

224:                                              ; preds = %221
  %225 = tail call i32 @basic_test_pfadd_pfdebug_encoding(i32 noundef %.070)
  tail call void @greatest_post_test(ptr noundef nonnull @.str.21, i32 noundef %225) #3
  br label %232

226:                                              ; preds = %221
  %227 = load i32, ptr @greatest_info, align 8, !tbaa !5
  %228 = and i32 %227, 4
  %.not67 = icmp eq i32 %228, 0
  br i1 %.not67, label %232, label %229

229:                                              ; preds = %226
  %230 = load ptr, ptr @stdout, align 8, !tbaa !13
  %231 = tail call i32 (ptr, ptr, ...) @fprintf(ptr noundef %230, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.21) #3
  br label %232

232:                                              ; preds = %224, %229, %226
  %233 = tail call i32 @greatest_pre_test(ptr noundef nonnull @.str.22) #3
  %234 = icmp eq i32 %233, 1
  br i1 %234, label %235, label %237

235:                                              ; preds = %232
  %236 = tail call i32 @basic_test_pfadd_pfdebug_todense(i32 noundef %.070)
  tail call void @greatest_post_test(ptr noundef nonnull @.str.22, i32 noundef %236) #3
  br label %243

237:                                              ; preds = %232
  %238 = load i32, ptr @greatest_info, align 8, !tbaa !5
  %239 = and i32 %238, 4
  %.not68 = icmp eq i32 %239, 0
  br i1 %.not68, label %243, label %240

240:                                              ; preds = %237
  %241 = load ptr, ptr @stdout, align 8, !tbaa !13
  %242 = tail call i32 (ptr, ptr, ...) @fprintf(ptr noundef %241, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.22) #3
  br label %243

243:                                              ; preds = %235, %240, %237
  %244 = tail call i32 @greatest_pre_test(ptr noundef nonnull @.str.23) #3
  %245 = icmp eq i32 %244, 1
  br i1 %245, label %246, label %248

246:                                              ; preds = %243
  %247 = tail call i32 @basic_test_pfadd_empty(i32 noundef %.070)
  tail call void @greatest_post_test(ptr noundef nonnull @.str.23, i32 noundef %247) #3
  br label %254

248:                                              ; preds = %243
  %249 = load i32, ptr @greatest_info, align 8, !tbaa !5
  %250 = and i32 %249, 4
  %.not69 = icmp eq i32 %250, 0
  br i1 %.not69, label %254, label %251

251:                                              ; preds = %248
  %252 = load ptr, ptr @stdout, align 8, !tbaa !13
  %253 = tail call i32 (ptr, ptr, ...) @fprintf(ptr noundef %252, ptr noundef nonnull @.str.1, ptr noundef nonnull @.str.23) #3
  br label %254

254:                                              ; preds = %246, %251, %248
  %255 = add nuw nsw i32 %.070, 1
  %exitcond.not = icmp eq i32 %255, 3
  br i1 %exitcond.not, label %256, label %1, !llvm.loop !14

256:                                              ; preds = %254
  ret void
}

declare i32 @greatest_pre_test(ptr noundef) local_unnamed_addr #1

; Function Attrs: nounwind uwtable
declare hidden i32 @basic_test_set_get(i32 noundef) local_unnamed_addr #0

declare void @greatest_post_test(ptr noundef, i32 noundef) local_unnamed_addr #1

; Function Attrs: nofree nounwind
declare noundef i32 @fprintf(ptr nocapture noundef, ptr nocapture noundef readonly, ...) local_unnamed_addr #2

; Function Attrs: nounwind uwtable
declare hidden i32 @basic_test_set_delete_get(i32 noundef) local_unnamed_addr #0

; Function Attrs: nounwind uwtable
declare hidden i32 @basic_test_set_set_get(i32 noundef) local_unnamed_addr #0

; Function Attrs: nounwind uwtable
declare hidden i32 @basic_test_set_getrange(i32 noundef) local_unnamed_addr #0

; Function Attrs: nounwind uwtable
declare hidden i32 @basic_test_set_setrange(i32 noundef) local_unnamed_addr #0

; Function Attrs: nounwind uwtable
declare hidden i32 @basic_test_append(i32 noundef) local_unnamed_addr #0

; Function Attrs: nounwind uwtable
declare hidden i32 @basic_test_setnx_setnx_get(i32 noundef) local_unnamed_addr #0

; Function Attrs: nounwind uwtable
declare hidden i32 @basic_test_set_expiration(i32 noundef) local_unnamed_addr #0

; Function Attrs: nounwind uwtable
declare hidden i32 @basic_test_set_strlen(i32 noundef) local_unnamed_addr #0

; Function Attrs: nounwind uwtable
declare hidden i32 @basic_test_set_incr(i32 noundef) local_unnamed_addr #0

; Function Attrs: nounwind uwtable
declare hidden i32 @basic_test_set_incrbyfloat(i32 noundef) local_unnamed_addr #0

; Function Attrs: nounwind uwtable
declare hidden i32 @basic_test_set_getbit(i32 noundef) local_unnamed_addr #0

; Function Attrs: nounwind uwtable
declare hidden i32 @basic_test_set_bitop(i32 noundef) local_unnamed_addr #0

; Function Attrs: nounwind uwtable
declare hidden i32 @basic_test_set_bitcount(i32 noundef) local_unnamed_addr #0

; Function Attrs: nounwind uwtable
declare hidden i32 @basic_test_set_bitpos(i32 noundef) local_unnamed_addr #0

; Function Attrs: nounwind uwtable
declare hidden i32 @basic_test_pfadd(i32 noundef) local_unnamed_addr #0

; Function Attrs: nounwind uwtable
declare hidden i32 @basic_test_pfadd_pfcount(i32 noundef) local_unnamed_addr #0

; Function Attrs: nounwind uwtable
declare hidden i32 @basic_test_pfadd_pfmerge(i32 noundef) local_unnamed_addr #0

; Function Attrs: nounwind uwtable
declare hidden i32 @basic_test_pfadd_pfdebug_getreg(i32 noundef) local_unnamed_addr #0

; Function Attrs: nounwind uwtable
declare hidden i32 @basic_test_pfadd_pfdebug_decode(i32 noundef) local_unnamed_addr #0

; Function Attrs: nounwind uwtable
declare hidden i32 @basic_test_pfadd_pfdebug_encoding(i32 noundef) local_unnamed_addr #0

; Function Attrs: nounwind uwtable
declare hidden i32 @basic_test_pfadd_pfdebug_todense(i32 noundef) local_unnamed_addr #0

; Function Attrs: nounwind uwtable
declare hidden i32 @basic_test_pfadd_empty(i32 noundef) local_unnamed_addr #0

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 = { "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #2 = { nofree nounwind "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #3 = { nounwind }

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

!0 = !{i32 1, !"wchar_size", i32 4}
!1 = !{i32 8, !"PIC Level", i32 2}
!2 = !{i32 7, !"PIE Level", i32 2}
!3 = !{i32 7, !"uwtable", i32 2}
!4 = !{!"clang version 19.1.0 (git@github.com:llvm/llvm-project.git a4bf6cd7cfb1a1421ba92bca9d017b49936c55e4)"}
!5 = !{!6, !7, i64 0}
!6 = !{!"greatest_run_info", !7, i64 0, !7, i64 4, !7, i64 8, !7, i64 12, !7, i64 16, !7, i64 20, !10, i64 24, !12, i64 72, !7, i64 80, !12, i64 88, !12, i64 96, !12, i64 104, !12, i64 112, !12, i64 120, !7, i64 128, !7, i64 132, !12, i64 136, !12, i64 144, !11, i64 152, !11, i64 160, !8, i64 168}
!7 = !{!"int", !8, i64 0}
!8 = !{!"omnipotent char", !9, i64 0}
!9 = !{!"Simple C/C++ TBAA"}
!10 = !{!"greatest_suite_info", !7, i64 0, !7, i64 4, !7, i64 8, !7, i64 12, !11, i64 16, !11, i64 24, !11, i64 32, !11, i64 40}
!11 = !{!"long", !8, i64 0}
!12 = !{!"any pointer", !8, i64 0}
!13 = !{!12, !12, i64 0}
!14 = distinct !{!14, !15}
!15 = !{!"llvm.loop.mustprogress"}


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