Aboudek/ASM_TO_LLVM_V2
0
1; ModuleID = 'tmux/extr_format.c_format_replace.c'2source_filename = "tmux/extr_format.c_format_replace.c"3target datalayout = "e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-f80:128-n8:16:32:64-S128"4target triple = "x86_64-unknown-linux-gnu"5 6%struct.format_tree = type { ptr }7%struct.format_modifier = type { ptr, i32, ptr, i32 }8%struct.window_pane = type { i32 }9 10@.str = private unnamed_addr constant [18 x i8] c"modifier %u is %s\00", align 111@.str.1 = private unnamed_addr constant [28 x i8] c"modifier %u argument %d: %s\00", align 112@INT_MIN = dso_local global i32 0, align 413@INT_MAX = dso_local global i32 0, align 414@FORMAT_LITERAL = dso_local global i32 0, align 415@FORMAT_BASENAME = dso_local global i32 0, align 416@FORMAT_DIRNAME = dso_local global i32 0, align 417@FORMAT_TIMESTRING = dso_local global i32 0, align 418@FORMAT_QUOTE = dso_local global i32 0, align 419@FORMAT_EXPAND = dso_local global i32 0, align 420@FORMAT_EXPANDTIME = dso_local global i32 0, align 421@FORMAT_SESSIONS = dso_local global i32 0, align 422@FORMAT_WINDOWS = dso_local global i32 0, align 423@FORMAT_PANES = dso_local global i32 0, align 424@.str.2 = private unnamed_addr constant [3 x i8] c"||\00", align 125@.str.3 = private unnamed_addr constant [3 x i8] c"&&\00", align 126@.str.4 = private unnamed_addr constant [3 x i8] c"==\00", align 127@.str.5 = private unnamed_addr constant [3 x i8] c"!=\00", align 128@.str.6 = private unnamed_addr constant [3 x i8] c">=\00", align 129@.str.7 = private unnamed_addr constant [3 x i8] c"<=\00", align 130@.str.8 = private unnamed_addr constant [24 x i8] c"search '%s' but no pane\00", align 131@.str.9 = private unnamed_addr constant [2 x i8] c"0\00", align 132@.str.10 = private unnamed_addr constant [22 x i8] c"search '%s' pane %%%u\00", align 133@.str.11 = private unnamed_addr constant [28 x i8] c"compare %s syntax error: %s\00", align 134@.str.12 = private unnamed_addr constant [23 x i8] c"compare %s left is: %s\00", align 135@.str.13 = private unnamed_addr constant [24 x i8] c"compare %s right is: %s\00", align 136@.str.14 = private unnamed_addr constant [2 x i8] c"1\00", align 137@.str.15 = private unnamed_addr constant [2 x i8] c"<\00", align 138@.str.16 = private unnamed_addr constant [2 x i8] c">\00", align 139@.str.17 = private unnamed_addr constant [2 x i8] c"m\00", align 140@.str.18 = private unnamed_addr constant [2 x i8] c",\00", align 141@.str.19 = private unnamed_addr constant [27 x i8] c"condition syntax error: %s\00", align 142@.str.20 = private unnamed_addr constant [17 x i8] c"condition is: %s\00", align 143@.str.21 = private unnamed_addr constant [1 x i8] zeroinitializer, align 144@.str.22 = private unnamed_addr constant [25 x i8] c"condition '%s' found: %s\00", align 145@.str.23 = private unnamed_addr constant [41 x i8] c"condition '%s' not found; assuming false\00", align 146@.str.24 = private unnamed_addr constant [21 x i8] c"condition '%s' found\00", align 147@.str.25 = private unnamed_addr constant [32 x i8] c"condition '%s' syntax error: %s\00", align 148@.str.26 = private unnamed_addr constant [23 x i8] c"condition '%s' is true\00", align 149@.str.27 = private unnamed_addr constant [24 x i8] c"condition '%s' is false\00", align 150@.str.28 = private unnamed_addr constant [22 x i8] c"format '%s' not found\00", align 151@.str.29 = private unnamed_addr constant [22 x i8] c"format '%s' found: %s\00", align 152@.str.30 = private unnamed_addr constant [28 x i8] c"substitute '%s' to '%s': %s\00", align 153@.str.31 = private unnamed_addr constant [5 x i8] c"%s%s\00", align 154@.str.32 = private unnamed_addr constant [28 x i8] c"applied length limit %d: %s\00", align 155@.str.33 = private unnamed_addr constant [24 x i8] c"replaced '%s' with '%s'\00", align 156@.str.34 = private unnamed_addr constant [10 x i8] c"failed %s\00", align 157@llvm.compiler.used = appending global [1 x ptr] [ptr @format_replace], section "llvm.metadata"58 59; Function Attrs: noinline nounwind optnone uwtable60define internal i32 @format_replace(ptr noundef %0, ptr noundef %1, i64 noundef %2, ptr noundef %3, ptr noundef %4, ptr noundef %5) #0 {61 %7 = alloca i32, align 462 %8 = alloca ptr, align 863 %9 = alloca ptr, align 864 %10 = alloca i64, align 865 %11 = alloca ptr, align 866 %12 = alloca ptr, align 867 %13 = alloca ptr, align 868 %14 = alloca ptr, align 869 %15 = alloca ptr, align 870 %16 = alloca ptr, align 871 %17 = alloca ptr, align 872 %18 = alloca ptr, align 873 %19 = alloca ptr, align 874 %20 = alloca ptr, align 875 %21 = alloca ptr, align 876 %22 = alloca ptr, align 877 %23 = alloca ptr, align 878 %24 = alloca ptr, align 879 %25 = alloca ptr, align 880 %26 = alloca i64, align 881 %27 = alloca i32, align 482 %28 = alloca i32, align 483 %29 = alloca i32, align 484 %30 = alloca ptr, align 885 %31 = alloca ptr, align 886 %32 = alloca ptr, align 887 %33 = alloca ptr, align 888 %34 = alloca ptr, align 889 %35 = alloca i64, align 890 %36 = alloca i64, align 891 store ptr %0, ptr %8, align 892 store ptr %1, ptr %9, align 893 store i64 %2, ptr %10, align 894 store ptr %3, ptr %11, align 895 store ptr %4, ptr %12, align 896 store ptr %5, ptr %13, align 897 %37 = load ptr, ptr %8, align 898 %38 = getelementptr inbounds %struct.format_tree, ptr %37, i32 0, i32 099 %39 = load ptr, ptr %38, align 8100 store ptr %39, ptr %14, align 8101 store ptr null, ptr %18, align 8102 store i32 0, ptr %27, align 4103 store i32 0, ptr %28, align 4104 store ptr null, ptr %32, align 8105 store ptr null, ptr %33, align 8106 store ptr null, ptr %34, align 8107 %40 = load ptr, ptr %9, align 8108 %41 = load i64, ptr %10, align 8109 %42 = trunc i64 %41 to i32110 %43 = call ptr @xstrndup(ptr noundef %40, i32 noundef %42)111 store ptr %43, ptr %19, align 8112 store ptr %43, ptr %16, align 8113 %44 = load ptr, ptr %8, align 8114 %45 = call ptr @format_build_modifiers(ptr noundef %44, ptr noundef %16, ptr noundef %36)115 store ptr %45, ptr %30, align 8116 store i64 0, ptr %35, align 8117 br label %46118 11946: ; preds = %233, %6120 %47 = load i64, ptr %35, align 8121 %48 = load i64, ptr %36, align 8122 %49 = icmp ult i64 %47, %48123 br i1 %49, label %50, label %236124 12550: ; preds = %46126 %51 = load ptr, ptr %30, align 8127 %52 = load i64, ptr %35, align 8128 %53 = getelementptr inbounds %struct.format_modifier, ptr %51, i64 %52129 store ptr %53, ptr %31, align 8130 %54 = load ptr, ptr %8, align 8131 %55 = call i64 @format_logging(ptr noundef %54)132 %56 = icmp ne i64 %55, 0133 br i1 %56, label %57, label %86134 13557: ; preds = %50136 %58 = load ptr, ptr %8, align 8137 %59 = load i64, ptr %35, align 8138 %60 = load ptr, ptr %31, align 8139 %61 = getelementptr inbounds %struct.format_modifier, ptr %60, i32 0, i32 0140 %62 = load ptr, ptr %61, align 8141 %63 = call i32 (ptr, ptr, ...) @format_log(ptr noundef %58, ptr noundef @.str, i64 noundef %59, ptr noundef %62)142 store i32 0, ptr %29, align 4143 br label %64144 14564: ; preds = %82, %57146 %65 = load i32, ptr %29, align 4147 %66 = load ptr, ptr %31, align 8148 %67 = getelementptr inbounds %struct.format_modifier, ptr %66, i32 0, i32 1149 %68 = load i32, ptr %67, align 8150 %69 = icmp slt i32 %65, %68151 br i1 %69, label %70, label %85152 15370: ; preds = %64154 %71 = load ptr, ptr %8, align 8155 %72 = load i64, ptr %35, align 8156 %73 = load i32, ptr %29, align 4157 %74 = load ptr, ptr %31, align 8158 %75 = getelementptr inbounds %struct.format_modifier, ptr %74, i32 0, i32 2159 %76 = load ptr, ptr %75, align 8160 %77 = load i32, ptr %29, align 4161 %78 = sext i32 %77 to i64162 %79 = getelementptr inbounds ptr, ptr %76, i64 %78163 %80 = load ptr, ptr %79, align 8164 %81 = call i32 (ptr, ptr, ...) @format_log(ptr noundef %71, ptr noundef @.str.1, i64 noundef %72, i32 noundef %73, ptr noundef %80)165 br label %82166 16782: ; preds = %70168 %83 = load i32, ptr %29, align 4169 %84 = add nsw i32 %83, 1170 store i32 %84, ptr %29, align 4171 br label %64, !llvm.loop !6172 17385: ; preds = %64174 br label %86175 17686: ; preds = %85, %50177 %87 = load ptr, ptr %31, align 8178 %88 = getelementptr inbounds %struct.format_modifier, ptr %87, i32 0, i32 3179 %89 = load i32, ptr %88, align 8180 %90 = icmp eq i32 %89, 1181 br i1 %90, label %91, label %187182 18391: ; preds = %86184 %92 = load ptr, ptr %31, align 8185 %93 = getelementptr inbounds %struct.format_modifier, ptr %92, i32 0, i32 0186 %94 = load ptr, ptr %93, align 8187 %95 = getelementptr inbounds i32, ptr %94, i64 0188 %96 = load i32, ptr %95, align 4189 switch i32 %96, label %186 [190 i32 109, label %97191 i32 60, label %97192 i32 62, label %97193 i32 67, label %99194 i32 115, label %101195 i32 61, label %109196 i32 108, label %146197 i32 98, label %150198 i32 100, label %154199 i32 116, label %158200 i32 113, label %162201 i32 69, label %166202 i32 84, label %170203 i32 83, label %174204 i32 87, label %178205 i32 80, label %182206 ]207 20897: ; preds = %91, %91, %91209 %98 = load ptr, ptr %31, align 8210 store ptr %98, ptr %32, align 8211 br label %186212 21399: ; preds = %91214 %100 = load ptr, ptr %31, align 8215 store ptr %100, ptr %33, align 8216 br label %186217 218101: ; preds = %91219 %102 = load ptr, ptr %31, align 8220 %103 = getelementptr inbounds %struct.format_modifier, ptr %102, i32 0, i32 1221 %104 = load i32, ptr %103, align 8222 %105 = icmp slt i32 %104, 2223 br i1 %105, label %106, label %107224 225106: ; preds = %101226 br label %186227 228107: ; preds = %101229 %108 = load ptr, ptr %31, align 8230 store ptr %108, ptr %34, align 8231 br label %186232 233109: ; preds = %91234 %110 = load ptr, ptr %31, align 8235 %111 = getelementptr inbounds %struct.format_modifier, ptr %110, i32 0, i32 1236 %112 = load i32, ptr %111, align 8237 %113 = icmp slt i32 %112, 1238 br i1 %113, label %114, label %115239 240114: ; preds = %109241 br label %186242 243115: ; preds = %109244 %116 = load ptr, ptr %31, align 8245 %117 = getelementptr inbounds %struct.format_modifier, ptr %116, i32 0, i32 2246 %118 = load ptr, ptr %117, align 8247 %119 = getelementptr inbounds ptr, ptr %118, i64 0248 %120 = load ptr, ptr %119, align 8249 %121 = load i32, ptr @INT_MIN, align 4250 %122 = load i32, ptr @INT_MAX, align 4251 %123 = call i32 @strtonum(ptr noundef %120, i32 noundef %121, i32 noundef %122, ptr noundef %15)252 store i32 %123, ptr %28, align 4253 %124 = load ptr, ptr %15, align 8254 %125 = icmp ne ptr %124, null255 br i1 %125, label %126, label %127256 257126: ; preds = %115258 store i32 0, ptr %28, align 4259 br label %127260 261127: ; preds = %126, %115262 %128 = load ptr, ptr %31, align 8263 %129 = getelementptr inbounds %struct.format_modifier, ptr %128, i32 0, i32 1264 %130 = load i32, ptr %129, align 8265 %131 = icmp sge i32 %130, 2266 br i1 %131, label %132, label %145267 268132: ; preds = %127269 %133 = load ptr, ptr %31, align 8270 %134 = getelementptr inbounds %struct.format_modifier, ptr %133, i32 0, i32 2271 %135 = load ptr, ptr %134, align 8272 %136 = getelementptr inbounds ptr, ptr %135, i64 1273 %137 = load ptr, ptr %136, align 8274 %138 = icmp ne ptr %137, null275 br i1 %138, label %139, label %145276 277139: ; preds = %132278 %140 = load ptr, ptr %31, align 8279 %141 = getelementptr inbounds %struct.format_modifier, ptr %140, i32 0, i32 2280 %142 = load ptr, ptr %141, align 8281 %143 = getelementptr inbounds ptr, ptr %142, i64 1282 %144 = load ptr, ptr %143, align 8283 store ptr %144, ptr %18, align 8284 br label %145285 286145: ; preds = %139, %132, %127287 br label %186288 289146: ; preds = %91290 %147 = load i32, ptr @FORMAT_LITERAL, align 4291 %148 = load i32, ptr %27, align 4292 %149 = or i32 %148, %147293 store i32 %149, ptr %27, align 4294 br label %186295 296150: ; preds = %91297 %151 = load i32, ptr @FORMAT_BASENAME, align 4298 %152 = load i32, ptr %27, align 4299 %153 = or i32 %152, %151300 store i32 %153, ptr %27, align 4301 br label %186302 303154: ; preds = %91304 %155 = load i32, ptr @FORMAT_DIRNAME, align 4305 %156 = load i32, ptr %27, align 4306 %157 = or i32 %156, %155307 store i32 %157, ptr %27, align 4308 br label %186309 310158: ; preds = %91311 %159 = load i32, ptr @FORMAT_TIMESTRING, align 4312 %160 = load i32, ptr %27, align 4313 %161 = or i32 %160, %159314 store i32 %161, ptr %27, align 4315 br label %186316 317162: ; preds = %91318 %163 = load i32, ptr @FORMAT_QUOTE, align 4319 %164 = load i32, ptr %27, align 4320 %165 = or i32 %164, %163321 store i32 %165, ptr %27, align 4322 br label %186323 324166: ; preds = %91325 %167 = load i32, ptr @FORMAT_EXPAND, align 4326 %168 = load i32, ptr %27, align 4327 %169 = or i32 %168, %167328 store i32 %169, ptr %27, align 4329 br label %186330 331170: ; preds = %91332 %171 = load i32, ptr @FORMAT_EXPANDTIME, align 4333 %172 = load i32, ptr %27, align 4334 %173 = or i32 %172, %171335 store i32 %173, ptr %27, align 4336 br label %186337 338174: ; preds = %91339 %175 = load i32, ptr @FORMAT_SESSIONS, align 4340 %176 = load i32, ptr %27, align 4341 %177 = or i32 %176, %175342 store i32 %177, ptr %27, align 4343 br label %186344 345178: ; preds = %91346 %179 = load i32, ptr @FORMAT_WINDOWS, align 4347 %180 = load i32, ptr %27, align 4348 %181 = or i32 %180, %179349 store i32 %181, ptr %27, align 4350 br label %186351 352182: ; preds = %91353 %183 = load i32, ptr @FORMAT_PANES, align 4354 %184 = load i32, ptr %27, align 4355 %185 = or i32 %184, %183356 store i32 %185, ptr %27, align 4357 br label %186358 359186: ; preds = %91, %182, %178, %174, %170, %166, %162, %158, %154, %150, %146, %145, %114, %107, %106, %99, %97360 br label %232361 362187: ; preds = %86363 %188 = load ptr, ptr %31, align 8364 %189 = getelementptr inbounds %struct.format_modifier, ptr %188, i32 0, i32 3365 %190 = load i32, ptr %189, align 8366 %191 = icmp eq i32 %190, 2367 br i1 %191, label %192, label %231368 369192: ; preds = %187370 %193 = load ptr, ptr %31, align 8371 %194 = getelementptr inbounds %struct.format_modifier, ptr %193, i32 0, i32 0372 %195 = load ptr, ptr %194, align 8373 %196 = call i64 @strcmp(ptr noundef %195, ptr noundef @.str.2)374 %197 = icmp eq i64 %196, 0375 br i1 %197, label %228, label %198376 377198: ; preds = %192378 %199 = load ptr, ptr %31, align 8379 %200 = getelementptr inbounds %struct.format_modifier, ptr %199, i32 0, i32 0380 %201 = load ptr, ptr %200, align 8381 %202 = call i64 @strcmp(ptr noundef %201, ptr noundef @.str.3)382 %203 = icmp eq i64 %202, 0383 br i1 %203, label %228, label %204384 385204: ; preds = %198386 %205 = load ptr, ptr %31, align 8387 %206 = getelementptr inbounds %struct.format_modifier, ptr %205, i32 0, i32 0388 %207 = load ptr, ptr %206, align 8389 %208 = call i64 @strcmp(ptr noundef %207, ptr noundef @.str.4)390 %209 = icmp eq i64 %208, 0391 br i1 %209, label %228, label %210392 393210: ; preds = %204394 %211 = load ptr, ptr %31, align 8395 %212 = getelementptr inbounds %struct.format_modifier, ptr %211, i32 0, i32 0396 %213 = load ptr, ptr %212, align 8397 %214 = call i64 @strcmp(ptr noundef %213, ptr noundef @.str.5)398 %215 = icmp eq i64 %214, 0399 br i1 %215, label %228, label %216400 401216: ; preds = %210402 %217 = load ptr, ptr %31, align 8403 %218 = getelementptr inbounds %struct.format_modifier, ptr %217, i32 0, i32 0404 %219 = load ptr, ptr %218, align 8405 %220 = call i64 @strcmp(ptr noundef %219, ptr noundef @.str.6)406 %221 = icmp eq i64 %220, 0407 br i1 %221, label %228, label %222408 409222: ; preds = %216410 %223 = load ptr, ptr %31, align 8411 %224 = getelementptr inbounds %struct.format_modifier, ptr %223, i32 0, i32 0412 %225 = load ptr, ptr %224, align 8413 %226 = call i64 @strcmp(ptr noundef %225, ptr noundef @.str.7)414 %227 = icmp eq i64 %226, 0415 br i1 %227, label %228, label %230416 417228: ; preds = %222, %216, %210, %204, %198, %192418 %229 = load ptr, ptr %31, align 8419 store ptr %229, ptr %32, align 8420 br label %230421 422230: ; preds = %228, %222423 br label %231424 425231: ; preds = %230, %187426 br label %232427 428232: ; preds = %231, %186429 br label %233430 431233: ; preds = %232432 %234 = load i64, ptr %35, align 8433 %235 = add i64 %234, 1434 store i64 %235, ptr %35, align 8435 br label %46, !llvm.loop !8436 437236: ; preds = %46438 %237 = load i32, ptr %27, align 4439 %238 = load i32, ptr @FORMAT_LITERAL, align 4440 %239 = and i32 %237, %238441 %240 = icmp ne i32 %239, 0442 br i1 %240, label %241, label %244443 444241: ; preds = %236445 %242 = load ptr, ptr %16, align 8446 %243 = call ptr @xstrdup(ptr noundef %242)447 store ptr %243, ptr %23, align 8448 br label %622449 450244: ; preds = %236451 %245 = load i32, ptr %27, align 4452 %246 = load i32, ptr @FORMAT_SESSIONS, align 4453 %247 = and i32 %245, %246454 %248 = icmp ne i32 %247, 0455 br i1 %248, label %249, label %257456 457249: ; preds = %244458 %250 = load ptr, ptr %8, align 8459 %251 = load ptr, ptr %16, align 8460 %252 = call ptr @format_loop_sessions(ptr noundef %250, ptr noundef %251)461 store ptr %252, ptr %23, align 8462 %253 = load ptr, ptr %23, align 8463 %254 = icmp eq ptr %253, null464 br i1 %254, label %255, label %256465 466255: ; preds = %249467 br label %788468 469256: ; preds = %249470 br label %621471 472257: ; preds = %244473 %258 = load i32, ptr %27, align 4474 %259 = load i32, ptr @FORMAT_WINDOWS, align 4475 %260 = and i32 %258, %259476 %261 = icmp ne i32 %260, 0477 br i1 %261, label %262, label %270478 479262: ; preds = %257480 %263 = load ptr, ptr %8, align 8481 %264 = load ptr, ptr %16, align 8482 %265 = call ptr @format_loop_windows(ptr noundef %263, ptr noundef %264)483 store ptr %265, ptr %23, align 8484 %266 = load ptr, ptr %23, align 8485 %267 = icmp eq ptr %266, null486 br i1 %267, label %268, label %269487 488268: ; preds = %262489 br label %788490 491269: ; preds = %262492 br label %620493 494270: ; preds = %257495 %271 = load i32, ptr %27, align 4496 %272 = load i32, ptr @FORMAT_PANES, align 4497 %273 = and i32 %271, %272498 %274 = icmp ne i32 %273, 0499 br i1 %274, label %275, label %283500 501275: ; preds = %270502 %276 = load ptr, ptr %8, align 8503 %277 = load ptr, ptr %16, align 8504 %278 = call ptr @format_loop_panes(ptr noundef %276, ptr noundef %277)505 store ptr %278, ptr %23, align 8506 %279 = load ptr, ptr %23, align 8507 %280 = icmp eq ptr %279, null508 br i1 %280, label %281, label %282509 510281: ; preds = %275511 br label %788512 513282: ; preds = %275514 br label %619515 516283: ; preds = %270517 %284 = load ptr, ptr %33, align 8518 %285 = icmp ne ptr %284, null519 br i1 %285, label %286, label %311520 521286: ; preds = %283522 %287 = load ptr, ptr %8, align 8523 %288 = load ptr, ptr %16, align 8524 %289 = call ptr @format_expand(ptr noundef %287, ptr noundef %288)525 store ptr %289, ptr %22, align 8526 %290 = load ptr, ptr %14, align 8527 %291 = icmp eq ptr %290, null528 br i1 %291, label %292, label %297529 530292: ; preds = %286531 %293 = load ptr, ptr %8, align 8532 %294 = load ptr, ptr %22, align 8533 %295 = call i32 (ptr, ptr, ...) @format_log(ptr noundef %293, ptr noundef @.str.8, ptr noundef %294)534 %296 = call ptr @xstrdup(ptr noundef @.str.9)535 store ptr %296, ptr %23, align 8536 br label %308537 538297: ; preds = %286539 %298 = load ptr, ptr %8, align 8540 %299 = load ptr, ptr %22, align 8541 %300 = load ptr, ptr %14, align 8542 %301 = getelementptr inbounds %struct.window_pane, ptr %300, i32 0, i32 0543 %302 = load i32, ptr %301, align 4544 %303 = call i32 (ptr, ptr, ...) @format_log(ptr noundef %298, ptr noundef @.str.10, ptr noundef %299, i32 noundef %302)545 %304 = load ptr, ptr %31, align 8546 %305 = load ptr, ptr %14, align 8547 %306 = load ptr, ptr %22, align 8548 %307 = call ptr @format_search(ptr noundef %304, ptr noundef %305, ptr noundef %306)549 store ptr %307, ptr %23, align 8550 br label %308551 552308: ; preds = %297, %292553 %309 = load ptr, ptr %22, align 8554 %310 = call i32 @free(ptr noundef %309)555 br label %618556 557311: ; preds = %283558 %312 = load ptr, ptr %32, align 8559 %313 = icmp ne ptr %312, null560 br i1 %313, label %314, label %496561 562314: ; preds = %311563 %315 = load ptr, ptr %8, align 8564 %316 = load ptr, ptr %16, align 8565 %317 = call i64 @format_choose(ptr noundef %315, ptr noundef %316, ptr noundef %24, ptr noundef %25, i32 noundef 1)566 %318 = icmp ne i64 %317, 0567 br i1 %318, label %319, label %326568 569319: ; preds = %314570 %320 = load ptr, ptr %8, align 8571 %321 = load ptr, ptr %32, align 8572 %322 = getelementptr inbounds %struct.format_modifier, ptr %321, i32 0, i32 0573 %323 = load ptr, ptr %322, align 8574 %324 = load ptr, ptr %16, align 8575 %325 = call i32 (ptr, ptr, ...) @format_log(ptr noundef %320, ptr noundef @.str.11, ptr noundef %323, ptr noundef %324)576 br label %788577 578326: ; preds = %314579 %327 = load ptr, ptr %8, align 8580 %328 = load ptr, ptr %32, align 8581 %329 = getelementptr inbounds %struct.format_modifier, ptr %328, i32 0, i32 0582 %330 = load ptr, ptr %329, align 8583 %331 = load ptr, ptr %24, align 8584 %332 = call i32 (ptr, ptr, ...) @format_log(ptr noundef %327, ptr noundef @.str.12, ptr noundef %330, ptr noundef %331)585 %333 = load ptr, ptr %8, align 8586 %334 = load ptr, ptr %32, align 8587 %335 = getelementptr inbounds %struct.format_modifier, ptr %334, i32 0, i32 0588 %336 = load ptr, ptr %335, align 8589 %337 = load ptr, ptr %25, align 8590 %338 = call i32 (ptr, ptr, ...) @format_log(ptr noundef %333, ptr noundef @.str.13, ptr noundef %336, ptr noundef %337)591 %339 = load ptr, ptr %32, align 8592 %340 = getelementptr inbounds %struct.format_modifier, ptr %339, i32 0, i32 0593 %341 = load ptr, ptr %340, align 8594 %342 = call i64 @strcmp(ptr noundef %341, ptr noundef @.str.2)595 %343 = icmp eq i64 %342, 0596 br i1 %343, label %344, label %357597 598344: ; preds = %326599 %345 = load ptr, ptr %24, align 8600 %346 = call i64 @format_true(ptr noundef %345)601 %347 = icmp ne i64 %346, 0602 br i1 %347, label %352, label %348603 604348: ; preds = %344605 %349 = load ptr, ptr %25, align 8606 %350 = call i64 @format_true(ptr noundef %349)607 %351 = icmp ne i64 %350, 0608 br i1 %351, label %352, label %354609 610352: ; preds = %348, %344611 %353 = call ptr @xstrdup(ptr noundef @.str.14)612 store ptr %353, ptr %23, align 8613 br label %356614 615354: ; preds = %348616 %355 = call ptr @xstrdup(ptr noundef @.str.9)617 store ptr %355, ptr %23, align 8618 br label %356619 620356: ; preds = %354, %352621 br label %491622 623357: ; preds = %326624 %358 = load ptr, ptr %32, align 8625 %359 = getelementptr inbounds %struct.format_modifier, ptr %358, i32 0, i32 0626 %360 = load ptr, ptr %359, align 8627 %361 = call i64 @strcmp(ptr noundef %360, ptr noundef @.str.3)628 %362 = icmp eq i64 %361, 0629 br i1 %362, label %363, label %376630 631363: ; preds = %357632 %364 = load ptr, ptr %24, align 8633 %365 = call i64 @format_true(ptr noundef %364)634 %366 = icmp ne i64 %365, 0635 br i1 %366, label %367, label %373636 637367: ; preds = %363638 %368 = load ptr, ptr %25, align 8639 %369 = call i64 @format_true(ptr noundef %368)640 %370 = icmp ne i64 %369, 0641 br i1 %370, label %371, label %373642 643371: ; preds = %367644 %372 = call ptr @xstrdup(ptr noundef @.str.14)645 store ptr %372, ptr %23, align 8646 br label %375647 648373: ; preds = %367, %363649 %374 = call ptr @xstrdup(ptr noundef @.str.9)650 store ptr %374, ptr %23, align 8651 br label %375652 653375: ; preds = %373, %371654 br label %490655 656376: ; preds = %357657 %377 = load ptr, ptr %32, align 8658 %378 = getelementptr inbounds %struct.format_modifier, ptr %377, i32 0, i32 0659 %379 = load ptr, ptr %378, align 8660 %380 = call i64 @strcmp(ptr noundef %379, ptr noundef @.str.4)661 %381 = icmp eq i64 %380, 0662 br i1 %381, label %382, label %392663 664382: ; preds = %376665 %383 = load ptr, ptr %24, align 8666 %384 = load ptr, ptr %25, align 8667 %385 = call i64 @strcmp(ptr noundef %383, ptr noundef %384)668 %386 = icmp eq i64 %385, 0669 br i1 %386, label %387, label %389670 671387: ; preds = %382672 %388 = call ptr @xstrdup(ptr noundef @.str.14)673 store ptr %388, ptr %23, align 8674 br label %391675 676389: ; preds = %382677 %390 = call ptr @xstrdup(ptr noundef @.str.9)678 store ptr %390, ptr %23, align 8679 br label %391680 681391: ; preds = %389, %387682 br label %489683 684392: ; preds = %376685 %393 = load ptr, ptr %32, align 8686 %394 = getelementptr inbounds %struct.format_modifier, ptr %393, i32 0, i32 0687 %395 = load ptr, ptr %394, align 8688 %396 = call i64 @strcmp(ptr noundef %395, ptr noundef @.str.5)689 %397 = icmp eq i64 %396, 0690 br i1 %397, label %398, label %408691 692398: ; preds = %392693 %399 = load ptr, ptr %24, align 8694 %400 = load ptr, ptr %25, align 8695 %401 = call i64 @strcmp(ptr noundef %399, ptr noundef %400)696 %402 = icmp ne i64 %401, 0697 br i1 %402, label %403, label %405698 699403: ; preds = %398700 %404 = call ptr @xstrdup(ptr noundef @.str.14)701 store ptr %404, ptr %23, align 8702 br label %407703 704405: ; preds = %398705 %406 = call ptr @xstrdup(ptr noundef @.str.9)706 store ptr %406, ptr %23, align 8707 br label %407708 709407: ; preds = %405, %403710 br label %488711 712408: ; preds = %392713 %409 = load ptr, ptr %32, align 8714 %410 = getelementptr inbounds %struct.format_modifier, ptr %409, i32 0, i32 0715 %411 = load ptr, ptr %410, align 8716 %412 = call i64 @strcmp(ptr noundef %411, ptr noundef @.str.15)717 %413 = icmp eq i64 %412, 0718 br i1 %413, label %414, label %424719 720414: ; preds = %408721 %415 = load ptr, ptr %24, align 8722 %416 = load ptr, ptr %25, align 8723 %417 = call i64 @strcmp(ptr noundef %415, ptr noundef %416)724 %418 = icmp slt i64 %417, 0725 br i1 %418, label %419, label %421726 727419: ; preds = %414728 %420 = call ptr @xstrdup(ptr noundef @.str.14)729 store ptr %420, ptr %23, align 8730 br label %423731 732421: ; preds = %414733 %422 = call ptr @xstrdup(ptr noundef @.str.9)734 store ptr %422, ptr %23, align 8735 br label %423736 737423: ; preds = %421, %419738 br label %487739 740424: ; preds = %408741 %425 = load ptr, ptr %32, align 8742 %426 = getelementptr inbounds %struct.format_modifier, ptr %425, i32 0, i32 0743 %427 = load ptr, ptr %426, align 8744 %428 = call i64 @strcmp(ptr noundef %427, ptr noundef @.str.16)745 %429 = icmp eq i64 %428, 0746 br i1 %429, label %430, label %440747 748430: ; preds = %424749 %431 = load ptr, ptr %24, align 8750 %432 = load ptr, ptr %25, align 8751 %433 = call i64 @strcmp(ptr noundef %431, ptr noundef %432)752 %434 = icmp sgt i64 %433, 0753 br i1 %434, label %435, label %437754 755435: ; preds = %430756 %436 = call ptr @xstrdup(ptr noundef @.str.14)757 store ptr %436, ptr %23, align 8758 br label %439759 760437: ; preds = %430761 %438 = call ptr @xstrdup(ptr noundef @.str.9)762 store ptr %438, ptr %23, align 8763 br label %439764 765439: ; preds = %437, %435766 br label %486767 768440: ; preds = %424769 %441 = load ptr, ptr %32, align 8770 %442 = getelementptr inbounds %struct.format_modifier, ptr %441, i32 0, i32 0771 %443 = load ptr, ptr %442, align 8772 %444 = call i64 @strcmp(ptr noundef %443, ptr noundef @.str.7)773 %445 = icmp eq i64 %444, 0774 br i1 %445, label %446, label %456775 776446: ; preds = %440777 %447 = load ptr, ptr %24, align 8778 %448 = load ptr, ptr %25, align 8779 %449 = call i64 @strcmp(ptr noundef %447, ptr noundef %448)780 %450 = icmp sle i64 %449, 0781 br i1 %450, label %451, label %453782 783451: ; preds = %446784 %452 = call ptr @xstrdup(ptr noundef @.str.14)785 store ptr %452, ptr %23, align 8786 br label %455787 788453: ; preds = %446789 %454 = call ptr @xstrdup(ptr noundef @.str.9)790 store ptr %454, ptr %23, align 8791 br label %455792 793455: ; preds = %453, %451794 br label %485795 796456: ; preds = %440797 %457 = load ptr, ptr %32, align 8798 %458 = getelementptr inbounds %struct.format_modifier, ptr %457, i32 0, i32 0799 %459 = load ptr, ptr %458, align 8800 %460 = call i64 @strcmp(ptr noundef %459, ptr noundef @.str.6)801 %461 = icmp eq i64 %460, 0802 br i1 %461, label %462, label %472803 804462: ; preds = %456805 %463 = load ptr, ptr %24, align 8806 %464 = load ptr, ptr %25, align 8807 %465 = call i64 @strcmp(ptr noundef %463, ptr noundef %464)808 %466 = icmp sge i64 %465, 0809 br i1 %466, label %467, label %469810 811467: ; preds = %462812 %468 = call ptr @xstrdup(ptr noundef @.str.14)813 store ptr %468, ptr %23, align 8814 br label %471815 816469: ; preds = %462817 %470 = call ptr @xstrdup(ptr noundef @.str.9)818 store ptr %470, ptr %23, align 8819 br label %471820 821471: ; preds = %469, %467822 br label %484823 824472: ; preds = %456825 %473 = load ptr, ptr %32, align 8826 %474 = getelementptr inbounds %struct.format_modifier, ptr %473, i32 0, i32 0827 %475 = load ptr, ptr %474, align 8828 %476 = call i64 @strcmp(ptr noundef %475, ptr noundef @.str.17)829 %477 = icmp eq i64 %476, 0830 br i1 %477, label %478, label %483831 832478: ; preds = %472833 %479 = load ptr, ptr %32, align 8834 %480 = load ptr, ptr %24, align 8835 %481 = load ptr, ptr %25, align 8836 %482 = call ptr @format_match(ptr noundef %479, ptr noundef %480, ptr noundef %481)837 store ptr %482, ptr %23, align 8838 br label %483839 840483: ; preds = %478, %472841 br label %484842 843484: ; preds = %483, %471844 br label %485845 846485: ; preds = %484, %455847 br label %486848 849486: ; preds = %485, %439850 br label %487851 852487: ; preds = %486, %423853 br label %488854 855488: ; preds = %487, %407856 br label %489857 858489: ; preds = %488, %391859 br label %490860 861490: ; preds = %489, %375862 br label %491863 864491: ; preds = %490, %356865 %492 = load ptr, ptr %25, align 8866 %493 = call i32 @free(ptr noundef %492)867 %494 = load ptr, ptr %24, align 8868 %495 = call i32 @free(ptr noundef %494)869 br label %617870 871496: ; preds = %311872 %497 = load ptr, ptr %16, align 8873 %498 = load i8, ptr %497, align 1874 %499 = sext i8 %498 to i32875 %500 = icmp eq i32 %499, 63876 br i1 %500, label %501, label %598877 878501: ; preds = %496879 %502 = load ptr, ptr %16, align 8880 %503 = getelementptr inbounds i8, ptr %502, i64 1881 %504 = call ptr @format_skip(ptr noundef %503, ptr noundef @.str.18)882 store ptr %504, ptr %17, align 8883 %505 = load ptr, ptr %17, align 8884 %506 = icmp eq ptr %505, null885 br i1 %506, label %507, label %512886 887507: ; preds = %501888 %508 = load ptr, ptr %8, align 8889 %509 = load ptr, ptr %16, align 8890 %510 = getelementptr inbounds i8, ptr %509, i64 1891 %511 = call i32 (ptr, ptr, ...) @format_log(ptr noundef %508, ptr noundef @.str.19, ptr noundef %510)892 br label %788893 894512: ; preds = %501895 %513 = load ptr, ptr %16, align 8896 %514 = getelementptr inbounds i8, ptr %513, i64 1897 %515 = load ptr, ptr %17, align 8898 %516 = load ptr, ptr %16, align 8899 %517 = getelementptr inbounds i8, ptr %516, i64 1900 %518 = ptrtoint ptr %515 to i64901 %519 = ptrtoint ptr %517 to i64902 %520 = sub i64 %518, %519903 %521 = trunc i64 %520 to i32904 %522 = call ptr @xstrndup(ptr noundef %514, i32 noundef %521)905 store ptr %522, ptr %20, align 8906 %523 = load ptr, ptr %8, align 8907 %524 = load ptr, ptr %20, align 8908 %525 = call i32 (ptr, ptr, ...) @format_log(ptr noundef %523, ptr noundef @.str.20, ptr noundef %524)909 %526 = load ptr, ptr %8, align 8910 %527 = load ptr, ptr %20, align 8911 %528 = load i32, ptr %27, align 4912 %529 = call ptr @format_find(ptr noundef %526, ptr noundef %527, i32 noundef %528)913 store ptr %529, ptr %21, align 8914 %530 = load ptr, ptr %21, align 8915 %531 = icmp eq ptr %530, null916 br i1 %531, label %532, label %553917 918532: ; preds = %512919 %533 = load ptr, ptr %8, align 8920 %534 = load ptr, ptr %20, align 8921 %535 = call ptr @format_expand(ptr noundef %533, ptr noundef %534)922 store ptr %535, ptr %21, align 8923 %536 = load ptr, ptr %21, align 8924 %537 = load ptr, ptr %20, align 8925 %538 = call i64 @strcmp(ptr noundef %536, ptr noundef %537)926 %539 = icmp eq i64 %538, 0927 br i1 %539, label %540, label %548928 929540: ; preds = %532930 %541 = load ptr, ptr %21, align 8931 %542 = call i32 @free(ptr noundef %541)932 %543 = call ptr @xstrdup(ptr noundef @.str.21)933 store ptr %543, ptr %21, align 8934 %544 = load ptr, ptr %8, align 8935 %545 = load ptr, ptr %20, align 8936 %546 = load ptr, ptr %21, align 8937 %547 = call i32 (ptr, ptr, ...) @format_log(ptr noundef %544, ptr noundef @.str.22, ptr noundef %545, ptr noundef %546)938 br label %552939 940548: ; preds = %532941 %549 = load ptr, ptr %8, align 8942 %550 = load ptr, ptr %20, align 8943 %551 = call i32 (ptr, ptr, ...) @format_log(ptr noundef %549, ptr noundef @.str.23, ptr noundef %550)944 br label %552945 946552: ; preds = %548, %540947 br label %557948 949553: ; preds = %512950 %554 = load ptr, ptr %8, align 8951 %555 = load ptr, ptr %20, align 8952 %556 = call i32 (ptr, ptr, ...) @format_log(ptr noundef %554, ptr noundef @.str.24, ptr noundef %555)953 br label %557954 955557: ; preds = %553, %552956 %558 = load ptr, ptr %8, align 8957 %559 = load ptr, ptr %17, align 8958 %560 = getelementptr inbounds i8, ptr %559, i64 1959 %561 = call i64 @format_choose(ptr noundef %558, ptr noundef %560, ptr noundef %24, ptr noundef %25, i32 noundef 0)960 %562 = icmp ne i64 %561, 0961 br i1 %562, label %563, label %571962 963563: ; preds = %557964 %564 = load ptr, ptr %8, align 8965 %565 = load ptr, ptr %20, align 8966 %566 = load ptr, ptr %17, align 8967 %567 = getelementptr inbounds i8, ptr %566, i64 1968 %568 = call i32 (ptr, ptr, ...) @format_log(ptr noundef %564, ptr noundef @.str.25, ptr noundef %565, ptr noundef %567)969 %569 = load ptr, ptr %21, align 8970 %570 = call i32 @free(ptr noundef %569)971 br label %788972 973571: ; preds = %557974 %572 = load ptr, ptr %21, align 8975 %573 = call i64 @format_true(ptr noundef %572)976 %574 = icmp ne i64 %573, 0977 br i1 %574, label %575, label %582978 979575: ; preds = %571980 %576 = load ptr, ptr %8, align 8981 %577 = load ptr, ptr %20, align 8982 %578 = call i32 (ptr, ptr, ...) @format_log(ptr noundef %576, ptr noundef @.str.26, ptr noundef %577)983 %579 = load ptr, ptr %8, align 8984 %580 = load ptr, ptr %24, align 8985 %581 = call ptr @format_expand(ptr noundef %579, ptr noundef %580)986 store ptr %581, ptr %23, align 8987 br label %589988 989582: ; preds = %571990 %583 = load ptr, ptr %8, align 8991 %584 = load ptr, ptr %20, align 8992 %585 = call i32 (ptr, ptr, ...) @format_log(ptr noundef %583, ptr noundef @.str.27, ptr noundef %584)993 %586 = load ptr, ptr %8, align 8994 %587 = load ptr, ptr %25, align 8995 %588 = call ptr @format_expand(ptr noundef %586, ptr noundef %587)996 store ptr %588, ptr %23, align 8997 br label %589998 999589: ; preds = %582, %5751000 %590 = load ptr, ptr %25, align 81001 %591 = call i32 @free(ptr noundef %590)1002 %592 = load ptr, ptr %24, align 81003 %593 = call i32 @free(ptr noundef %592)1004 %594 = load ptr, ptr %20, align 81005 %595 = call i32 @free(ptr noundef %594)1006 %596 = load ptr, ptr %21, align 81007 %597 = call i32 @free(ptr noundef %596)1008 br label %6161009 1010598: ; preds = %4961011 %599 = load ptr, ptr %8, align 81012 %600 = load ptr, ptr %16, align 81013 %601 = load i32, ptr %27, align 41014 %602 = call ptr @format_find(ptr noundef %599, ptr noundef %600, i32 noundef %601)1015 store ptr %602, ptr %23, align 81016 %603 = load ptr, ptr %23, align 81017 %604 = icmp eq ptr %603, null1018 br i1 %604, label %605, label %6101019 1020605: ; preds = %5981021 %606 = load ptr, ptr %8, align 81022 %607 = load ptr, ptr %16, align 81023 %608 = call i32 (ptr, ptr, ...) @format_log(ptr noundef %606, ptr noundef @.str.28, ptr noundef %607)1024 %609 = call ptr @xstrdup(ptr noundef @.str.21)1025 store ptr %609, ptr %23, align 81026 br label %6151027 1028610: ; preds = %5981029 %611 = load ptr, ptr %8, align 81030 %612 = load ptr, ptr %16, align 81031 %613 = load ptr, ptr %23, align 81032 %614 = call i32 (ptr, ptr, ...) @format_log(ptr noundef %611, ptr noundef @.str.29, ptr noundef %612, ptr noundef %613)1033 br label %6151034 1035615: ; preds = %610, %6051036 br label %6161037 1038616: ; preds = %615, %5891039 br label %6171040 1041617: ; preds = %616, %4911042 br label %6181043 1044618: ; preds = %617, %3081045 br label %6191046 1047619: ; preds = %618, %2821048 br label %6201049 1050620: ; preds = %619, %2691051 br label %6211052 1053621: ; preds = %620, %2561054 br label %6221055 1056622: ; preds = %621, %2411057 %623 = load i32, ptr %27, align 41058 %624 = load i32, ptr @FORMAT_EXPAND, align 41059 %625 = and i32 %623, %6241060 %626 = icmp ne i32 %625, 01061 br i1 %626, label %627, label %6341062 1063627: ; preds = %6221064 %628 = load ptr, ptr %8, align 81065 %629 = load ptr, ptr %23, align 81066 %630 = call ptr @format_expand(ptr noundef %628, ptr noundef %629)1067 store ptr %630, ptr %22, align 81068 %631 = load ptr, ptr %23, align 81069 %632 = call i32 @free(ptr noundef %631)1070 %633 = load ptr, ptr %22, align 81071 store ptr %633, ptr %23, align 81072 br label %6471073 1074634: ; preds = %6221075 %635 = load i32, ptr %27, align 41076 %636 = load i32, ptr @FORMAT_EXPANDTIME, align 41077 %637 = and i32 %635, %6361078 %638 = icmp ne i32 %637, 01079 br i1 %638, label %639, label %6461080 1081639: ; preds = %6341082 %640 = load ptr, ptr %8, align 81083 %641 = load ptr, ptr %23, align 81084 %642 = call ptr @format_expand_time(ptr noundef %640, ptr noundef %641)1085 store ptr %642, ptr %22, align 81086 %643 = load ptr, ptr %23, align 81087 %644 = call i32 @free(ptr noundef %643)1088 %645 = load ptr, ptr %22, align 81089 store ptr %645, ptr %23, align 81090 br label %6461091 1092646: ; preds = %639, %6341093 br label %6471094 1095647: ; preds = %646, %6271096 %648 = load ptr, ptr %34, align 81097 %649 = icmp ne ptr %648, null1098 br i1 %649, label %650, label %6821099 1100650: ; preds = %6471101 %651 = load ptr, ptr %8, align 81102 %652 = load ptr, ptr %34, align 81103 %653 = getelementptr inbounds %struct.format_modifier, ptr %652, i32 0, i32 21104 %654 = load ptr, ptr %653, align 81105 %655 = getelementptr inbounds ptr, ptr %654, i64 01106 %656 = load ptr, ptr %655, align 81107 %657 = call ptr @format_expand(ptr noundef %651, ptr noundef %656)1108 store ptr %657, ptr %24, align 81109 %658 = load ptr, ptr %8, align 81110 %659 = load ptr, ptr %34, align 81111 %660 = getelementptr inbounds %struct.format_modifier, ptr %659, i32 0, i32 21112 %661 = load ptr, ptr %660, align 81113 %662 = getelementptr inbounds ptr, ptr %661, i64 11114 %663 = load ptr, ptr %662, align 81115 %664 = call ptr @format_expand(ptr noundef %658, ptr noundef %663)1116 store ptr %664, ptr %25, align 81117 %665 = load ptr, ptr %34, align 81118 %666 = load ptr, ptr %23, align 81119 %667 = load ptr, ptr %24, align 81120 %668 = load ptr, ptr %25, align 81121 %669 = call ptr @format_sub(ptr noundef %665, ptr noundef %666, ptr noundef %667, ptr noundef %668)1122 store ptr %669, ptr %22, align 81123 %670 = load ptr, ptr %8, align 81124 %671 = load ptr, ptr %24, align 81125 %672 = load ptr, ptr %25, align 81126 %673 = load ptr, ptr %22, align 81127 %674 = call i32 (ptr, ptr, ...) @format_log(ptr noundef %670, ptr noundef @.str.30, ptr noundef %671, ptr noundef %672, ptr noundef %673)1128 %675 = load ptr, ptr %23, align 81129 %676 = call i32 @free(ptr noundef %675)1130 %677 = load ptr, ptr %22, align 81131 store ptr %677, ptr %23, align 81132 %678 = load ptr, ptr %25, align 81133 %679 = call i32 @free(ptr noundef %678)1134 %680 = load ptr, ptr %24, align 81135 %681 = call i32 @free(ptr noundef %680)1136 br label %6821137 1138682: ; preds = %650, %6471139 %683 = load i32, ptr %28, align 41140 %684 = icmp sgt i32 %683, 01141 br i1 %684, label %685, label %7111142 1143685: ; preds = %6821144 %686 = load ptr, ptr %23, align 81145 %687 = load i32, ptr %28, align 41146 %688 = call ptr @format_trim_left(ptr noundef %686, i32 noundef %687)1147 store ptr %688, ptr %22, align 81148 %689 = load ptr, ptr %18, align 81149 %690 = icmp ne ptr %689, null1150 br i1 %690, label %691, label %7021151 1152691: ; preds = %6851153 %692 = load ptr, ptr %22, align 81154 %693 = load ptr, ptr %23, align 81155 %694 = call i64 @strcmp(ptr noundef %692, ptr noundef %693)1156 %695 = icmp ne i64 %694, 01157 br i1 %695, label %696, label %7021158 1159696: ; preds = %6911160 %697 = load ptr, ptr %23, align 81161 %698 = call i32 @free(ptr noundef %697)1162 %699 = load ptr, ptr %22, align 81163 %700 = load ptr, ptr %18, align 81164 %701 = call i32 @xasprintf(ptr noundef %23, ptr noundef @.str.31, ptr noundef %699, ptr noundef %700)1165 br label %7061166 1167702: ; preds = %691, %6851168 %703 = load ptr, ptr %23, align 81169 %704 = call i32 @free(ptr noundef %703)1170 %705 = load ptr, ptr %22, align 81171 store ptr %705, ptr %23, align 81172 br label %7061173 1174706: ; preds = %702, %6961175 %707 = load ptr, ptr %8, align 81176 %708 = load i32, ptr %28, align 41177 %709 = load ptr, ptr %23, align 81178 %710 = call i32 (ptr, ptr, ...) @format_log(ptr noundef %707, ptr noundef @.str.32, i32 noundef %708, ptr noundef %709)1179 br label %7421180 1181711: ; preds = %6821182 %712 = load i32, ptr %28, align 41183 %713 = icmp slt i32 %712, 01184 br i1 %713, label %714, label %7411185 1186714: ; preds = %7111187 %715 = load ptr, ptr %23, align 81188 %716 = load i32, ptr %28, align 41189 %717 = sub nsw i32 0, %7161190 %718 = call ptr @format_trim_right(ptr noundef %715, i32 noundef %717)1191 store ptr %718, ptr %22, align 81192 %719 = load ptr, ptr %18, align 81193 %720 = icmp ne ptr %719, null1194 br i1 %720, label %721, label %7321195 1196721: ; preds = %7141197 %722 = load ptr, ptr %22, align 81198 %723 = load ptr, ptr %23, align 81199 %724 = call i64 @strcmp(ptr noundef %722, ptr noundef %723)1200 %725 = icmp ne i64 %724, 0