%0:i32 = var %1:i32 = and 7:i32, %0 %2:i32 = shl 1:i32, %1 infer %2 known from Souper: 000000000000000000000000xxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 3613 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = add 4294967295:i32, %0 %2:i32 = and %0, %1 infer %2 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 3079 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = add 18446744073709551615:i64, %0 %2:i64 = and %0, %1 infer %2 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 682 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (0000xxxxxxxxxxxxxxxxxxxxxxxxxxxx) %2:i64 = zext %1 %3 = block 1 %4:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %5:i64 = phi %3, %4 %6:i64 = phi %0, %2, %5 infer %6 known from Souper: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 480 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 1 %1:i64 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00000) %2:i64 = add 32:i64, %1 %3:i64 = phi %0, %2 infer %3 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 444 ; total dynamic profile = 0 ------------------------------------------------------ %0:i1 = var %1:i64 = var (000000000000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxx) %2:i64 = select %0, %1, 30:i64 %3:i64 = shl 4096:i64, %2 infer %3 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx000000000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 402 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (0000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %1:i64 = and 33554431:i64, %0 %2:i1 = ult %1, 30:i64 %3:i64 = select %2, %1, 30:i64 infer %3 known from Souper: 00000000000000000000000000000000000000000000000000000000000xxxxx known from compiler: 000000000000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 402 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (000xxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %2:i64 = zext %1 %3:i64 = phi %0, %2, %2 infer %3 known from Souper: 00000000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 297 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 1 %2:i64 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00000) %3:i64 = phi %1, %2 %4:i64 = phi %0, 0:i64, %3 infer %4 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 275 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i32 = var %2:i64 = zext %1 %3:i64 = add %0, %2 %4:i64 = urem %3, %2 infer %4 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx llvm is stronger ; total static profile = 1690 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (0000000000000000000000000000000000000000000000000000000000xxxxxx) %1:i64 = shl 18446744073709551615:i64, %0 %2:i64 = xor 18446744073709551615:i64, %1 infer %2 known from Souper: 0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 258 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = shl 1:i32, %0 %2:i1 = slt 64:i32, %1 %3:i32 = select %2, %1, 64:i32 infer %3 known from Souper: 0xxxxxxxxxxxxxxxxxxxxxxxxx000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 240 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (000000000000000000000000000xxxxx) %2:i32 = phi %0, %1, 32:i32 %3:i32 = subnsw 33:i32, %2 infer %3 known from Souper: 00000000000000000000000000xxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 237 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var %2:i32 = phi %0, %1, 0:i32 %3:i32 = add 4294967295:i32, %2 %4:i32 = and %2, %3 infer %4 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 217 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i16 = trunc %0 %2:i16 = lshr 17727:i16, %1 infer %2 known from Souper: 0xxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxx souper is stronger ; total static profile = 214 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (00000000000000000000000000xxxxxx) %1:i64 = zext %0 %2:i64 = shl 18446744073709551615:i64, %1 infer %2 known from Souper: 1xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 206 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = lshr %0, 58:i64 %2:i64 = shl 18446744073709551615:i64, %1 infer %2 known from Souper: 1xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 202 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i1 = slt 1:i32, %0 %2:i32 = addnsw 4294967295:i32, %0 %3:i32 = select %1, %2, 0:i32 infer %3 known from Souper: 0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 198 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i32 = var %2:i64 = zext %1 %3:i64 = addnsw %0, %2 %4:i64 = urem %3, %2 infer %4 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx llvm is stronger ; total static profile = 527 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (0000000000000000000000000000000000000000000000000000000000xxxxxx) %1:i64 = shl 18446744073709551615:i64, %0 %2:i64 = xor 9223372036854775807:i64, %1 infer %2 known from Souper: 1xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 110 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 1 %1:i64 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx000) %2:i64 = add 8:i64, %1 %3:i64 = phi %0, %2 infer %3 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 91 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 1 %2:i64 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx000) %3:i64 = phi %1, %2 %4:i64 = phi %0, 0:i64, %3 infer %4 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 81 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (00000xxxxxxxxxxxxxxxxxxxxxxxxxxx) %1:i32 = and 1:i32, %0 %2:i32 = shl 1:i32, %1 infer %2 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 74 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i1 = eq 0:i32, %0 %2:i32 = var (000000000000000000000000001xxxxx) %3:i32 = var %4:i32 = lshr %2, %3 %5:i32 = select %1, 0:i32, %4 infer %5 known from Souper: 00000000000000000000000000xxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 69 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (0000000000000xxxxxxxxxxxxxxxx000) %2:i64 = zext %1 %3:i64 = phi %0, %2, 16:i64 infer %3 known from Souper: 000000000000000000000000000000000000000000000xxxxxxxxxxxxxxxx000 known from compiler: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 69 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (000000000000000000000000000xxxxx) %1:i32 = or 32:i32, %0 %2:i32 = var %3:i32 = sub 32:i32, %2 %4:i32 = lshr %1, %3 infer %4 known from Souper: 00000000000000000000000000xxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 69 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 1 %1:i8 = var (0000000x) %2:i8 = var (0000000x) %3:i8 = or %1, %2 %4:i8 = phi %0, %3 infer %4 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 66 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (0000000000000000000000000000000x) %1:i32 = shl 1:i32, %0 %2:i32 = addnsw 4294967295:i32, %1 infer %2 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 66 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i32 = var %2:i64 = zext %1 %3:i1 = ult %0, %2 %4:i64 = select %3, %0, %2 infer %4 known from Souper: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 64 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var %2:i64 = zext %1 %3 = block 1 %4:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %5:i64 = phi %3, %4 %6:i64 = phi %0, %2, %5 infer %6 known from Souper: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 62 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1 = block 2 %2:i64 = phi %1, 4294967296:i64, 0:i64 %3:i64 = phi %0, %2, 4294967296:i64, 4294967296:i64, 0:i64 infer %3 known from Souper: 0000000000000000000000000000000x00000000000000000000000000000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 59 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i1 = var %2:i32 = var (0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %3:i32 = select %1, %2, 0:i32 %4:i32 = phi %0, 0:i32, %3, 0:i32 infer %4 known from Souper: 0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 56 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (00000xxxxxxxxxxxxxxxxxxxxxxxxxxx) %1:i32 = and 1:i32, %0 %2:i32 = shl 2:i32, %1 infer %2 known from Souper: 00000000000000000000000000000xx0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 53 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i24 = var (0x0000000000000000000000) %2:i24 = or 8388608:i24, %1 %3:i24 = phi %0, 8388608:i24, %2 infer %3 known from Souper: 1x0000000000000000000000 known from compiler: 1xxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 52 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i24 = var (1x0000000000000000000000) %2:i24 = phi %0, 8388608:i24, %1 %3:i24 = var (xxx00x001000000000000010) %4:i24 = and 2392066:i24, %3 %5:i24 = or %2, %4 infer %5 known from Souper: 1xx00x001000000000000010 known from compiler: xxx00x001000000000000010 souper is stronger ; total static profile = 51 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (0000000000000000000000000000000000000000000000000000000000xxxxxx) %1:i64 = shl 1:i64, %0 %2:i64 = add 18446744073709551615:i64, %1 infer %2 known from Souper: 0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 49 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i64 = zext %0 %2:i64 = lshr 1125898296229891:i64, %1 infer %2 known from Souper: 00000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 49 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1 = block 6 %2:i32 = phi %1, 1:i32, 0:i32, 2:i32, 1:i32, 2:i32, 1:i32 %3:i32 = addnw 3:i32, %2 %4:i32 = addnw 2:i32, %2 %5:i32 = addnw 1:i32, %2 %6:i32 = phi %0, %3, %4, %5, %2 infer %6 known from Souper: 00000000000000000000000000000xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 45 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 6 %1:i32 = phi %0, 1:i32, 0:i32, 2:i32, 1:i32, 2:i32, 1:i32 %2:i32 = addnw 1:i32, %1 infer %2 known from Souper: 000000000000000000000000000000xx known from compiler: 00000000000000000000000000000xxx souper is stronger ; total static profile = 45 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (0000000000000000000000000000000x) %1:i32 = shl 4:i32, %0 %2:i32 = addnsw 4294967295:i32, %1 infer %2 known from Souper: 00000000000000000000000000000x11 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 44 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = add 4294967295:i32, %0 %2:i32 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0x) %3:i32 = mul 37:i32, %2 %4:i32 = and %1, %3 infer %4 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 44 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (0000000000000000000000000000000x) %1:i32 = shl 2:i32, %0 %2:i32 = addnsw 4294967295:i32, %1 infer %2 known from Souper: 000000000000000000000000000000x1 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 44 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0) %1:i32 = and 30:i32, %0 %2:i32 = shl 4294967040:i32, %1 infer %2 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxx00000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 44 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (00000xxxxxxxxxxxxxxxxxxxxxxxxxxx) %1:i32 = and 1:i32, %0 %2:i32 = shl 4:i32, %1 infer %2 known from Souper: 0000000000000000000000000000xx00 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 43 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = and 31:i32, %0 %2:i32 = shl 4278190080:i32, %1 infer %2 known from Souper: xxxxxxxx000000000000000000000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 39 ; total dynamic profile = 0 ------------------------------------------------------ %0:i1 = var %1:i32 = var (00000000000000000000000000xxxxxx) %2:i32 = select %0, 64:i32, %1 %3:i32 = subnsw 64:i32, %2 infer %3 known from Souper: 0000000000000000000000000xxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 39 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = var (0000000000000000000000000000000000000000000000000000000000xxxxxx) %2:i64 = shl 18446744073709551615:i64, %1 %3:i64 = or %0, %2 infer %3 known from Souper: 1xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 38 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (000000000000000000000000000xxxxx) %2:i32 = phi %0, %1, 32:i32 %3:i32 = subnsw 32:i32, %2 infer %3 known from Souper: 00000000000000000000000000xxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 36 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 1 %1:i64 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00) %2:i64 = add 4:i64, %1 %3:i64 = phi %0, %2 infer %3 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 35 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i64 = phi %0, 4:i64, 1:i64 %2:i64 = addnw 3:i64, %1 infer %2 known from Souper: 00000000000000000000000000000000000000000000000000000000000001xx known from compiler: 000000000000000000000000000000000000000000000000000000000000xxxx souper is stronger ; total static profile = 34 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i64 = phi %0, 4:i64, 1:i64 %2:i64 = addnw 3:i64, %1 %3:i64 = urem %2, %1 infer %3 known from Souper: 00000000000000000000000000000000000000000000000000000000000000xx known from compiler: 0000000000000000000000000000000000000000000000000000000000000xxx souper is stronger ; total static profile = 34 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var %2:i32 = and 4294967293:i32, %1 %3:i32 = mul 37:i32, %2 infer %3 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 34 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i64 = var (0000000000000000000000000000000000000000000000000000000000000x0x) %2:i64 = addnw 3:i64, %1 %3:i64 = urem %2, %1 %4:i64 = subnsw %2, %3 infer %4 known from Souper: 0000000000000000000000000000000000000000000000000000000000000x0x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 34 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i8 = trunc %0 %2:i8 = lshr 74:i8, %1 infer %2 known from Souper: 0xxxxxxx known from compiler: xxxxxxxx souper is stronger ; total static profile = 33 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 1 %2:i64 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00) %3:i64 = phi %1, %2 %4:i64 = phi %0, 0:i64, %3 infer %4 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 31 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 8 %1:i32 = var %2:i32 = and 7:i32, %1 %3:i32 = shl 1:i32, %2 infer %3 known from Souper: 000000000000000000000000xxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 30 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = var %2:i64 = or %0, %1 %3:i64 = add 1:i64, %2 %4:i64 = and %3, %2 infer %4 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 30 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = var %2:i64 = sub %0, %1 %3:i32 = var %4:i64 = zext %3 %5:i1 = ult %2, %4 %6:i64 = select %5, %2, %4 infer %6 known from Souper: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 29 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = srem %0, 512:i64 %2:i64 = subnsw 511:i64, %1 infer %2 known from Souper: 000000000000000000000000000000000000000000000000000000xxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 29 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (0000000000000000xxxxxxxxxxxxxxxx) %1:i32 = and 7:i32, %0 %2:i32 = shl 1:i32, %1 infer %2 known from Souper: 000000000000000000000000xxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 27 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = var %2:i32 = or %0, %1 %3:i32 = add 1:i32, %2 %4:i32 = and %3, %2 infer %4 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 26 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i64 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx000) %2:i32 = trunc %1 %3:i32 = phi %0, %2, 0:i32 infer %3 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxx000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 25 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i32 = trunc %0 %2:i32 = add 4294967295:i32, %1 %3:i32 = and %2, %1 infer %3 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 25 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i8 = trunc %0 %2:i8 = lshr 71:i8, %1 infer %2 known from Souper: 0xxxxxxx known from compiler: xxxxxxxx souper is stronger ; total static profile = 23 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (00000xxxxxxxxxxxxxxxxxxxxxxxxxxx) %1:i32 = and 1:i32, %0 %2:i32 = shl 8:i32, %1 infer %2 known from Souper: 000000000000000000000000000xx000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 22 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (0000000000000000000000000000000x) %1:i32 = shl 8:i32, %0 %2:i32 = addnsw 4294967295:i32, %1 infer %2 known from Souper: 0000000000000000000000000000x111 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 22 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = var %2:i64 = and %0, %1 %3:i64 = add 18446744073709551615:i64, %2 %4:i64 = or %3, %2 infer %4 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx1 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 21 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (0000000000000000000000000000000x) %1:i32 = var (0000000000000000000000000000000x) %2:i32 = addnw %0, %1 %3:i1 = var %4:i32 = zext %3 %5:i32 = addnw %2, %4 infer %5 known from Souper: 000000000000000000000000000000xx known from compiler: 00000000000000000000000000000xxx souper is stronger ; total static profile = 20 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %1:i64 = ctpop %0 %2:i32 = trunc %1 infer %2 known from Souper: 00000000000000000000000000xxxxxx known from compiler: 0000000000000000000000000xxxxxxx souper is stronger ; total static profile = 19 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = var (0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %2:i64 = and %0, %1 %3:i64 = ctpop %2 infer %3 known from Souper: 0000000000000000000000000000000000000000000000000000000000xxxxxx known from compiler: 000000000000000000000000000000000000000000000000000000000xxxxxxx souper is stronger ; total static profile = 19 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var %2:i32 = var %3:i32 = phi %0, %1, %2 %4:i32 = add 4294967295:i32, %3 %5:i32 = and %3, %4 infer %5 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 19 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (0000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %1:i64 = and 15:i64, %0 %2:i64 = shl 1:i64, %1 infer %2 known from Souper: 000000000000000000000000000000000000000000000000xxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 18 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (000000000000000000000000000000000000000000000000000000000000xxxx) %1:i64 = shl 1:i64, %0 %2:i64 = lshr %1, 1:i64 infer %2 known from Souper: 0000000000000000000000000000000000000000000000000xxxxxxxxxxxxxxx known from compiler: 0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 18 ; total dynamic profile = 0 ------------------------------------------------------ %0:i8 = var %1:i55 = zext %0 %2:i55 = lshr 18014398505287678:i55, %1 infer %2 known from Souper: 0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 17 ; total dynamic profile = 0 ------------------------------------------------------ %0:i1 = var %1:i64 = var (000000000000000000000000000000000000000000000000000000000xxxxxxx) %2:i64 = var %3:i64 = select %0, %1, %2 %4:i1 = ult 140:i64, %3 %5:i64 = select %4, 140:i64, %3 infer %5 known from Souper: 00000000000000000000000000000000000000000000000000000000xxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 17 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i32 = var (0000000000000000000000000000000x) %3:i32 = phi %1, %2, 2:i32 %4:i32 = phi %0, 2:i32, %3 infer %4 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 17 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (000000000000000000000000000xxxxx) %1:i64 = zext %0 %2:i64 = lshr 3435973836:i64, %1 infer %2 known from Souper: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 16 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i64 = var %2:i64 = var %3:i64 = phi %0, %1, %2 %4:i64 = add 18446744073709551615:i64, %3 %5:i64 = and %3, %4 infer %5 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 15 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i1 = eq 0:i32, %0 %2:i32 = var (0000000000000000000000000001xxxx) %3:i32 = var %4:i32 = lshr %2, %3 %5:i32 = select %1, 0:i32, %4 infer %5 known from Souper: 000000000000000000000000000xxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 15 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1:i64 = var (00000000000000000000000000000000000000000000000000000000xxxxxxxx) %2:i64 = shlnw %1, 32:i64 %3:i64 = phi %0, %2, 4294967296:i64, 4294967296:i64, 0:i64 infer %3 known from Souper: 000000000000000000000000xxxxxxxx00000000000000000000000000000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00000000000000000000000000000000 souper is stronger ; total static profile = 15 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (0000000000000000000000000000xxxx) %1:i32 = or 16:i32, %0 %2:i32 = var %3:i32 = sub 32:i32, %2 %4:i32 = lshr %1, %3 infer %4 known from Souper: 000000000000000000000000000xxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 15 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = ctlz %0 %2:i64 = subnsw 64:i64, %1 infer %2 known from Souper: 000000000000000000000000000000000000000000000000000000000xxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 15 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i8 = var (0000000x) %2:i8 = xor 1:i8, %1 %3:i8 = phi %0, 0:i8, 0:i8, %2 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 15 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i8 = phi %1, 1:i8, 0:i8 %3:i8 = phi %0, 1:i8, %2 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 15 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i1 = eq 0:i32, %0 %2:i32 = var (0000000000000000000000001xxxxxxx) %3:i32 = var %4:i32 = lshr %2, %3 %5:i32 = select %1, 0:i32, %4 infer %5 known from Souper: 000000000000000000000000xxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 14 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (0000000000000000000000000xxxxxxx) %1:i32 = or 128:i32, %0 %2:i32 = var %3:i32 = sub 32:i32, %2 %4:i32 = lshr %1, %3 infer %4 known from Souper: 000000000000000000000000xxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 14 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i16 = trunc %0 %2:i16 = lshr 4093:i16, %1 infer %2 known from Souper: 0000xxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxx souper is stronger ; total static profile = 14 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0) %1:i32 = and 6:i32, %0 %2:i32 = shl 3:i32, %1 infer %2 known from Souper: 000000000000000000000000xxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 14 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (0000000000000000000000000000000x) %2:i32 = xor 1:i32, %1 %3:i32 = phi %0, %2, 1:i32 infer %3 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 13 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = udiv 128:i32, %0 infer %1 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 000000000000000000000000xxxxxxxx llvm is stronger ; total static profile = 13 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = srem %0, 256:i64 %2:i64 = subnsw 255:i64, %1 infer %2 known from Souper: 0000000000000000000000000000000000000000000000000000000xxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 13 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1 = block 4 %2:i32 = var (00000000000000000000000000000xxx) %3:i32 = var (00000000000000000000000000000xxx) %4:i32 = var (00000000000000000000000000000xxx) %5 = block 6 %6:i32 = var (000000000000000000000000000000xx) %7:i32 = phi %1, %2, %3, %4, %6 %8:i32 = addnsw 4:i32, %7 %9:i32 = addnsw 3:i32, %7 %10:i32 = addnsw 2:i32, %7 %11:i32 = addnsw 1:i32, %7 %12:i32 = phi %0, %8, %9, %10, %11, %7 infer %12 known from Souper: 0000000000000000000000000000xxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 13 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i16 = trunc %0 %2:i16 = lshr 8079:i16, %1 infer %2 known from Souper: 000xxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxx souper is stronger ; total static profile = 13 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i8 = var (0000000x) %3:i8 = phi %1, %2, 0:i8 %4:i8 = phi %0, 0:i8, %3 infer %4 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 13 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i1 = ult %0, 2:i64 %2:i64 = select %1, %0, 2:i64 infer %2 known from Souper: 00000000000000000000000000000000000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 12 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = and 15:i32, %0 %2:i1 = var %3:i32 = select %2, 48:i32, 87:i32 %4:i32 = addnw %1, %3 infer %4 known from Souper: 0000000000000000000000000xxxxxxx known from compiler: 000000000000000000000000xxxxxxxx souper is stronger ; total static profile = 12 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i16 = trunc %0 %2:i16 = lshr 341:i16, %1 infer %2 known from Souper: 0000000xxxxxxxxx known from compiler: xxxxxxxxxxxxxxxx souper is stronger ; total static profile = 12 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i32 = trunc %0 %2:i32 = add 4294967295:i32, %1 %3:i32 = or %2, %1 infer %3 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx1 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 12 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 10 %1 = block 2 %2:i32 = phi %1, 1:i32, 0:i32 %3:i32 = phi %0, 1:i32, 1:i32, 0:i32, 0:i32, 1:i32, 0:i32, 1:i32, 0:i32, 1:i32, %2 infer %3 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 12 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (000000000000000000000000000000000000000000000xxxxxxxxxxxxxxxx000) %1:i64 = addnw 27:i64, %0 %2:i64 = var (000000000000000000000000000000000000000000000000xxxxxxxxxxxxxxxx) %3:i64 = shlnw %2, 2:i64 %4:i64 = addnw %1, %3 infer %4 known from Souper: 00000000000000000000000000000000000000000000xxxxxxxxxxxxxxxxxx11 known from compiler: 0000000000000000000000000000000000000000000xxxxxxxxxxxxxxxxxxx11 souper is stronger ; total static profile = 12 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i8 = trunc %0 %2:i8 = lshr 61:i8, %1 infer %2 known from Souper: 00xxxxxx known from compiler: xxxxxxxx souper is stronger ; total static profile = 11 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 1 %1:i8 = var %2:i8 = var (0000000x) %3:i8 = and %1, %2 %4:i8 = phi %0, %3 infer %4 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 11 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i32 = var %2:i64 = zext %1 %3:i32 = var (0000xxxxxxxxxxxxxxxxxxxxxxxxxxxx) %4:i64 = zext %3 %5 = block 1 %6:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %7:i64 = phi %5, %6 %8:i64 = phi %0, %2, %4, %7 infer %8 known from Souper: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 11 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = add 4294967295:i32, %0 %2:i32 = lshr 4145151:i32, %1 infer %2 known from Souper: 0000000000xxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 11 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = addnsw 4294967295:i32, %0 %2:i1 = slt 0:i32, %1 %3:i32 = select %2, %1, 0:i32 infer %3 known from Souper: 0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 11 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i8 = trunc %0 %2:i8 = lshr 127:i8, %1 infer %2 known from Souper: 0xxxxxxx known from compiler: xxxxxxxx souper is stronger ; total static profile = 11 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = sub 4294967294:i32, %0 %2:i32 = xor 4294967295:i32, %0 %3:i32 = or %1, %2 infer %3 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx1 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 11 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i64 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0xxx0xxxxxxxxxxxxxxxxxxxxxxxx) %2:i64 = var (00000000000000000000000000000000000x0000000000000000000000000000) %3:i64 = or %1, %2 %4:i64 = or 268435456:i64, %1 %5:i64 = phi %0, %3, %4 infer %5 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0xxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 10 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = and 4294967293:i32, %0 %2:i32 = mul 37:i32, %1 infer %2 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 10 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (0000000000000000000000000000000x) %2:i8 = trunc %1 %3:i32 = var (0000000000000000000000000000000x) %4:i8 = trunc %3 %5:i8 = phi %0, %2, %4 infer %5 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 10 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %1:i64 = mulnw 56:i64, %0 %2:i64 = addnw 8:i64, %1 infer %2 known from Souper: 00000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx000 known from compiler: 0000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx000 souper is stronger ; total static profile = 10 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = var %2:i32 = lshr %1, 5:i32 %3:i1 = ult %0, %2 %4:i32 = select %3, %0, %2 infer %4 known from Souper: 00000xxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 10 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (0000000000000000000000xxxxxxxxxx) %2:i32 = and 31:i32, %1 %3:i32 = addnw 5:i32, %2 %4:i32 = phi %0, %3, %2 infer %4 known from Souper: 00000000000000000000000000xxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 10 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1:i64 = var %2:i64 = and 18446744073709551612:i64, %1 %3:i64 = or 2:i64, %2 %4:i64 = phi %0, %3, 0:i64, 0:i64, %2 infer %4 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 10 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i8 = var %3:i8 = and 7:i8, %2 %4:i8 = var (00000xxx) %5:i8 = phi %1, %3, %4 %6:i8 = phi %0, %5, %3 infer %6 known from Souper: 00000xxx known from compiler: xxxxxxxx souper is stronger ; total static profile = 10 ; total dynamic profile = 0 ------------------------------------------------------ %0:i8 = var (00000xxx) %1:i8 = var %2:i1 = ult %0, %1 %3:i8 = select %2, %0, %1 infer %3 known from Souper: 00000xxx known from compiler: xxxxxxxx souper is stronger ; total static profile = 10 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %1:i64 = mulnw 24:i64, %0 %2:i64 = addnw 16:i64, %1 infer %2 known from Souper: 000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx000 known from compiler: 00000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx000 souper is stronger ; total static profile = 9 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (000000000000000000000000000000xx) %1:i32 = var (0000000000000000000000000000000x) %2:i32 = addnw %0, %1 %3:i1 = var %4:i32 = zext %3 %5:i32 = addnw %2, %4 infer %5 known from Souper: 00000000000000000000000000000xxx known from compiler: 0000000000000000000000000000xxxx souper is stronger ; total static profile = 9 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i32 = trunc %0 %2:i32 = add 1:i32, %1 %3:i32 = and %2, %1 infer %3 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 9 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (000000xxxxxxxxxxxxxxxxxxxxxxxxxx) %2:i32 = and 31:i32, %1 %3:i32 = addnw 5:i32, %2 %4:i32 = phi %0, %3, %2 infer %4 known from Souper: 00000000000000000000000000xxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 9 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i64 = var (0000000000000000000000000000000000000000000000000000000000xxxxxx) %2:i32 = trunc %1 %3:i32 = phi %0, %2, 64:i32 infer %3 known from Souper: 0000000000000000000000000xxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 9 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i8 = var %2:i8 = and 1:i8, %1 %3 = block 2 %4:i8 = phi %3, %2, %2 %5:i8 = phi %0, %2, %4 infer %5 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 9 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 6 %1:i32 = var (0000000000000000000000000000000x) %2:i32 = phi %0, %1, 0:i32, 0:i32, 1:i32, 2:i32, 2:i32 %3:i32 = addnw 1:i32, %2 infer %3 known from Souper: 000000000000000000000000000000xx known from compiler: 00000000000000000000000000000xxx souper is stronger ; total static profile = 9 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (000000000000000000000000000000000000000000000000000000000xxxxxxx) %1:i64 = and 63:i64, %0 %2:i64 = shl 18446744073709551615:i64, %1 infer %2 known from Souper: 1xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 9 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 3 %2:i8 = phi %1, 0:i8, 1:i8, 1:i8 %3:i8 = phi %0, %2, 1:i8, 1:i8 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 8 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i16 = var (00000000000000xx) %2:i32 = zext %1 %3:i32 = phi %0, %2, 0:i32 infer %3 known from Souper: 000000000000000000000000000000xx known from compiler: 0000000000000000xxxxxxxxxxxxxxxx souper is stronger ; total static profile = 8 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 1 %2:i8 = var (0000000x) %3:i8 = phi %1, %2 %4:i8 = phi %0, %3, 0:i8 infer %4 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 8 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i16 = var (00000000000000xx) %2:i32 = zext %1 %3:i32 = phi %0, %2, 1:i32 infer %3 known from Souper: 000000000000000000000000000000xx known from compiler: 0000000000000000xxxxxxxxxxxxxxxx souper is stronger ; total static profile = 8 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1 = block 2 %2:i32 = var (0000000000000000000000001000xxx0) %3:i32 = var (0000000000000000000000000000xxx0) %4:i32 = phi %1, %2, %3 %5:i32 = or 128:i32, %4 %6:i32 = phi %0, %4, %5, %4, %4 infer %6 known from Souper: 000000000000000000000000x000xxx0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 8 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 1 %2:i8 = var (0000000x) %3:i8 = phi %1, %2 %4:i8 = phi %0, 0:i8, %3 infer %4 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 8 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i64 = sext %0 %2:i64 = lshr 137716177976:i64, %1 infer %2 known from Souper: 00000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 8 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i64 = zext %0 %2:i8 = var %3:i64 = sext %2 %4:i1 = ult %1, %3 %5:i64 = select %4, %1, %3 infer %5 known from Souper: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 8 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i32 = var (0000000000000000000000000000001x) %3:i32 = var (000000000000000000000000000000xx) %4:i32 = phi %1, %2, %3 %5:i32 = addnsw 1:i32, %4 %6:i32 = phi %0, %5, %4 infer %6 known from Souper: 00000000000000000000000000000xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 8 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (00000000000000000000000000xxxxxx) %2:i32 = addnw 1:i32, %1 %3:i32 = phi %0, %2, 0:i32 infer %3 known from Souper: 0000000000000000000000000xxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 8 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i64 = var (0000000000000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxx) %2:i64 = shlnw %1, 32:i64 %3:i64 = phi %0, %2, 0:i64 infer %3 known from Souper: 00000000xxxxxxxxxxxxxxxxxxxxxxxx00000000000000000000000000000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00000000000000000000000000000000 souper is stronger ; total static profile = 8 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = ctpop %0 %2:i32 = udiv 360360:i32, %1 infer %2 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 0000000000000xxxxxxxxxxxxxxxxxxx llvm is stronger ; total static profile = 8 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i32 = var (0000000000000000000000000000000x) %3:i32 = or 2:i32, %2 %4:i32 = addnw 1:i32, %2 %5:i32 = phi %0, %3, %4 infer %5 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 8 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i1 = var %2:i32 = var (00000000000000000000000000001xx0) %3:i32 = var (00000000000000000000000000000xx0) %4:i32 = select %1, %2, %3 %5:i32 = or 128:i32, %4 %6:i32 = phi %0, %5, %4 infer %6 known from Souper: 000000000000000000000000x000xxx0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 8 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (00000000000000000000000000000000000000000000000000000000000xxxxx) %1:i64 = shl 1:i64, %0 %2:i64 = lshr %1, 1:i64 infer %2 known from Souper: 000000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 8 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 1 %2:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %3:i64 = phi %1, %2 %4 = block 1 %5:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %6:i64 = phi %4, %5 %7:i64 = phi %0, %3, %6 infer %7 known from Souper: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 8 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (0000000000000000000000000000000000000000000000000000000000xxxxxx) %1:i64 = subnsw 64:i64, %0 %2:i64 = shl 1:i64, %1 infer %2 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 8 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %1:i64 = and 31:i64, %0 %2:i64 = shl 1:i64, %1 infer %2 known from Souper: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 8 ; total dynamic profile = 0 ------------------------------------------------------ %0:i8 = var %1:i64 = sext %0 %2:i32 = var %3:i64 = zext %2 %4:i1 = ult %1, %3 %5:i64 = select %4, %1, %3 infer %5 known from Souper: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 8 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = ctlz %0 %2:i32 = addnw 1:i32, %1 infer %2 known from Souper: 00000000000000000000000000xxxxxx known from compiler: 0000000000000000000000000xxxxxxx souper is stronger ; total static profile = 8 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i1 = slt 0:i32, %0 %2:i32 = select %1, %0, 0:i32 infer %2 known from Souper: 0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 7 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = ctlz %0 %2:i32 = subnsw 32:i32, %1 infer %2 known from Souper: 00000000000000000000000000xxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 7 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = udiv %0, 24:i64 %2:i64 = addnw 1:i64, %1 infer %2 known from Souper: 0000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 8 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i64 = var %2:i64 = and 18446744073709551552:i64, %1 %3 = block 1 %4:i64 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx000000) %5:i64 = phi %3, %4 %6:i64 = phi %0, %2, %5 infer %6 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 7 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i64 = var %2:i64 = lshr %1, 58:i64 %3:i64 = shl 18446744073709551615:i64, %2 infer %3 known from Souper: 1xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 7 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i1 = slt %0, 0:i32 %2:i32 = select %1, 0:i32, %0 infer %2 known from Souper: 0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 7 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = sdiv %0, 2:i64 %2:i1 = ult 4:i64, %1 %3:i64 = select %2, 4:i64, %1 infer %3 known from Souper: 0000000000000000000000000000000000000000000000000000000000000xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 7 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i1 = var %2:i32 = var (000000xxxxxxxxxxxxxxxxxxxxxxxxxx) %3:i32 = var (000000xxxxxxxxxxxxxxxxxxxxxxxxxx) %4:i32 = select %1, %2, %3 %5:i32 = phi %0, 0:i32, %4, %4 infer %5 known from Souper: 000000xxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 7 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i32 = phi %1, 1:i32, 0:i32 %3:i32 = or 2:i32, %2 %4:i32 = phi %0, %3, %2 infer %4 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 7 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i8 = trunc %0 %2:i8 = lshr 90:i8, %1 infer %2 known from Souper: 0xxxxxxx known from compiler: xxxxxxxx souper is stronger ; total static profile = 7 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i8 = trunc %0 %2:i8 = lshr 113:i8, %1 infer %2 known from Souper: 0xxxxxxx known from compiler: xxxxxxxx souper is stronger ; total static profile = 7 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 1 %1:i32 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxx00000) %2:i32 = add 32:i32, %1 %3:i32 = phi %0, %2 infer %3 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxx00000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 7 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i1 = ult 2:i64, %0 %2:i64 = select %1, 2:i64, %0 infer %2 known from Souper: 00000000000000000000000000000000000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 7 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i64 = var (0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %2:i64 = cttz %1 %3:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxx000000) %4:i64 = var (0000000000000000000000000000000000000000000000000000000000xxxxxx) %5:i64 = or %3, %4 %6:i64 = phi %0, %2, %5 infer %6 known from Souper: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 7 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = and 1:i64, %0 %2:i64 = add %0, %1 infer %2 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 7 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i1 = slt %0, 8:i64 %2:i64 = select %1, 8:i64, %0 infer %2 known from Souper: 0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 7 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 1 %2:i32 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxx00000) %3:i32 = phi %1, %2 %4:i32 = phi %0, 0:i32, %3 infer %4 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxx00000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 7 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i64 = var (00000000000000000000000000000000000000000000000000000000xxxxxxxx) %2:i64 = addnw 4294967169:i64, %1 %3:i64 = var (00000000000000000000000000000000000000000000000000000000xxxxxxxx) %4:i64 = addnw 4294967169:i64, %3 %5:i64 = phi %0, %2, %4, %4 infer %5 known from Souper: 0000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 7 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = add 24:i64, %0 %2:i64 = urem %0, 24:i64 %3:i64 = sub %1, %2 infer %3 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 7 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1:i64 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00000000000000000000000000000000) %2:i64 = or 3:i64, %1 %3:i64 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00000000000000000000000000000000) %4:i64 = or 2:i64, %3 %5:i64 = phi %0, 1:i64, 1:i64, 0:i64, %2, %4 infer %5 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 6 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1 = block 4 %2:i32 = phi %1, 4:i32, 2:i32, 1:i32, 1:i32 %3:i32 = phi %0, %2, %2, %2, %2, 8:i32 infer %3 known from Souper: 0000000000000000000000000000xxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 6 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (0000000000000000000000000000xxxx) %2:i8 = trunc %1 %3:i8 = phi %0, %2, 15:i8 infer %3 known from Souper: 0000xxxx known from compiler: xxxxxxxx souper is stronger ; total static profile = 6 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1 = block 5 %2 = block 4 %3:i32 = phi %2, 4:i32, 2:i32, 1:i32, 1:i32 %4:i32 = phi %1, %3, %3, %3, %3, 8:i32 %5:i32 = phi %0, %4, %3, %3, %3 infer %5 known from Souper: 0000000000000000000000000000xxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 6 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (000000000000000000000000000xxxxx) %1:i32 = subnsw 32:i32, %0 %2:i32 = addnsw 4294967295:i32, %1 infer %2 known from Souper: 000000000000000000000000000xxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 6 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i64 = var (00000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %2:i64 = addnw 1:i64, %1 %3:i64 = phi %0, %2, 0:i64 infer %3 known from Souper: 0000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 6 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i32 = trunc %0 %2:i32 = add 4294967295:i32, %1 %3:i32 = xor %2, %1 infer %3 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx1 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 6 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %2:i64 = addnsw %0, %1 %3:i32 = var %4:i64 = zext %3 %5:i64 = urem %2, %4 infer %5 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx llvm is stronger ; total static profile = 7 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (000000000000000000000000000000000000000000000000xxxxxxxxxxxxxxxx) %1:i64 = xor 18446744073709551615:i64, %0 %2:i64 = var %3:i64 = var %4:i64 = sub %2, %3 %5:i1 = ult %1, %4 %6:i64 = select %5, %4, %1 infer %6 known from Souper: 111111111111111111111111111111111111111111111111xxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 6 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i57 = zext %0 %2:i57 = lshr 72057594021150462:i57, %1 infer %2 known from Souper: 0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 6 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (00000000000000000xxxxxxxxxxxxxxx) %2:i64 = zext %1 %3:i64 = phi %0, %2, 0:i64 infer %3 known from Souper: 0000000000000000000000000000000000000000000000000xxxxxxxxxxxxxxx known from compiler: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 6 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = or 4294967288:i32, %0 %2:i32 = sub %0, %1 infer %2 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxx000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 6 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = and 18446744069414584320:i64, %0 %2:i64 = bswap %1 infer %2 known from Souper: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 6 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i32 = var (0000000000000000000000000000000x) %2:i32 = addnw 1:i32, %1 %3:i32 = var (0000000000000000000000000000000x) %4:i32 = addnw 1:i32, %3 %5:i32 = phi %0, 1:i32, %2, %4 infer %5 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 6 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (0000000000000000000000000000000x) %2:i32 = shlnw %1, 1:i32 %3:i8 = var (000000xx) %4:i32 = zext %3 %5:i32 = phi %0, %2, %4 infer %5 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 6 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i8 = var (0000000x) %2:i8 = xor 1:i8, %1 %3:i8 = phi %0, %2, 0:i8 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 6 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i16 = phi %1, 0:i16, 1:i16 %3:i16 = or 2:i16, %2 %4:i16 = phi %0, %2, %3 infer %4 known from Souper: 00000000000000xx known from compiler: xxxxxxxxxxxxxxxx souper is stronger ; total static profile = 6 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i64 = var (0000000000000000000000000000000000000000000000000000000000xxxxxx) %2:i64 = phi %0, %1, 64:i64 %3:i64 = subnsw 64:i64, %2 infer %3 known from Souper: 000000000000000000000000000000000000000000000000000000000xxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 6 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i64 = var %2:i64 = var %3:i64 = phi %0, %1, %2, %2 %4:i64 = add 18446744073709551615:i64, %3 %5:i64 = and %3, %4 infer %5 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 6 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (0000000000000xxxxxxxxxxxxxxxx000) %1:i32 = addnw 27:i32, %0 %2:i32 = var (0000000000000000xxxxxxxxxxxxxxxx) %3:i32 = shlnw %2, 2:i32 %4:i32 = addnw %1, %3 infer %4 known from Souper: 000000000000xxxxxxxxxxxxxxxxxx11 known from compiler: 00000000000xxxxxxxxxxxxxxxxxxx11 souper is stronger ; total static profile = 6 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i64 = var (0000000000000000000000000000000000000000000000000000000x00000000) %2:i64 = or 1:i64, %1 %3:i64 = phi %0, %2, 0:i64 infer %3 known from Souper: 0000000000000000000000000000000000000000000000000000000x0000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 6 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = shl 8:i32, %0 infer %1 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxx000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 6 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (000000000000000000000000000000xx) %1:i32 = var (000000000000000000000000000000xx) %2:i32 = addnw %0, %1 %3:i32 = shl 1:i32, %2 infer %3 known from Souper: 0000000000000000000000000xxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 6 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i16 = trunc %0 %2:i16 = lshr 415:i16, %1 infer %2 known from Souper: 0000000xxxxxxxxx known from compiler: xxxxxxxxxxxxxxxx souper is stronger ; total static profile = 6 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i16 = var %2:i32 = zext %1 %3 = block 1 %4:i32 = var (0000000000000000xxxxxxxxxxxxxxxx) %5:i32 = phi %3, %4 %6:i32 = phi %0, %2, %5 infer %6 known from Souper: 0000000000000000xxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 6 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i8 = phi %1, 1:i8, 0:i8 %3:i8 = phi %0, %2, 0:i8 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 6 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i5 = trunc %0 %2:i5 = lshr 3:i5, %1 infer %2 known from Souper: 000xx known from compiler: xxxxx souper is stronger ; total static profile = 6 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i8 = phi %1, 0:i8, 1:i8 %3:i8 = phi %0, 0:i8, %2 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 6 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i8 = var %2:i8 = and 1:i8, %1 %3 = block 2 %4 = block 2 %5:i8 = var (0000000x) %6:i8 = phi %3, %2, %5 %7:i8 = phi %0, %2, %6 infer %7 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 6 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = udiv %0, 10:i32 %2:i32 = addnw 48:i32, %1 infer %2 known from Souper: 000xxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 00xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 6 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i1 = var %2:i64 = zext %1 %3 = block 2 %4:i64 = phi %3, 1:i64, 0:i64 %5:i64 = phi %0, %2, 0:i64, %4 infer %5 known from Souper: 000000000000000000000000000000000000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 6 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i64 = var (00000000000000000000000000000000000000000000000000000000000000x1) %2:i64 = subnsw 0:i64, %1 %3:i64 = phi %0, %2, %2 infer %3 known from Souper: 11111111111111111111111111111111111111111111111111111111111111x1 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 6 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i64 = var (0000000000000000000000000000000000000000000000000000000000xxxxxx) %2:i32 = trunc %1 %3:i32 = var (00000000000000000000000000xxxxxx) %4:i32 = subnsw 64:i32, %3 %5:i32 = phi %0, %2, %4, 0:i32 infer %5 known from Souper: 0000000000000000000000000xxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 6 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (000000000000000000000000000000000000000000000xxxxxxxxxxxxxxxx000) %1:i64 = addnw 20:i64, %0 %2:i64 = var (000000000000000000000000000000000000000000000000xxxxxxxxxxxxxxxx) %3:i64 = shlnw %2, 2:i64 %4:i64 = addnw %1, %3 infer %4 known from Souper: 00000000000000000000000000000000000000000000xxxxxxxxxxxxxxxxxx00 known from compiler: 0000000000000000000000000000000000000000000xxxxxxxxxxxxxxxxxxx00 souper is stronger ; total static profile = 6 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = sub 4294967294:i32, %0 %2:i32 = xor 4294967295:i32, %0 %3:i32 = xor %1, %2 infer %3 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx1 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 6 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 1 %2:i8 = var (0000000x) %3:i8 = phi %1, %2 %4:i8 = phi %0, 0:i8, %3, 1:i8 infer %4 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 6 ; total dynamic profile = 0 ------------------------------------------------------ %0:i1 = var %1:i32 = select %0, 1:i32, 2:i32 %2:i32 = addnw 1:i32, %1 infer %2 known from Souper: 0000000000000000000000000000001x known from compiler: 00000000000000000000000000000xxx souper is stronger ; total static profile = 6 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (000000xxxxxxxxxxxxxxxxxxxxxxxxxx) %2:i64 = zext %1 %3:i64 = phi %0, %2, 0:i64 infer %3 known from Souper: 00000000000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 6 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i64 = var %2:i64 = var %3:i64 = sub %1, %2 %4:i64 = and 18446744073709551584:i64, %3 %5:i64 = sub %3, %4 infer %5 known from Souper: 00000000000000000000000000000000000000000000000000000000000xxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 6 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i32 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00) %2:i32 = shl %1, 5:i32 %3:i32 = phi %0, 0:i32, 0:i32, %2 infer %3 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxx0000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxx00000 souper is stronger ; total static profile = 5 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var %2:i32 = var %3:i32 = mul %1, %2 %4:i32 = add 4294967295:i32, %3 %5:i32 = and %4, %3 infer %5 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 5 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 1 %2:i8 = var (0000000x) %3:i8 = phi %1, %2 %4 = block 1 %5:i8 = var (0000000x) %6:i8 = phi %4, %5 %7:i8 = phi %0, %3, %6 infer %7 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 5 ; total dynamic profile = 0 ------------------------------------------------------ %0:i1 = var %1:i32 = var (000000000000000000000000000xxxxx) %2:i32 = var (000000000000000000000000000xxxxx) %3:i32 = select %0, %1, %2 %4:i32 = shl 4294967295:i32, %3 infer %4 known from Souper: 1xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 5 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 2 %2:i32 = var (0000000000000000000000000xxxxxxx) %3:i32 = phi %1, %2, 0:i32 %4:i64 = var (0000000000000000000000000000000000000000000000000000000000xxxxxx) %5:i32 = trunc %4 %6:i32 = phi %0, %3, %5, %5 infer %6 known from Souper: 0000000000000000000000000xxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 5 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 1 %1:i32 = var (000000000000000xxxxxxxxxxxxxxxxx) %2:i64 = zext %1 %3:i64 = phi %0, %2 infer %3 known from Souper: 00000000000000000000000000000000000000000000000xxxxxxxxxxxxxxxxx known from compiler: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 5 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i1 = eq 0:i32, %0 %2:i32 = var (0000000000000000000000000000000x) %3:i32 = var %4:i32 = lshr %2, %3 %5:i32 = select %1, 0:i32, %4 infer %5 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 5 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i8 = var (0000000x) %2:i8 = xor 1:i8, %1 %3:i8 = phi %0, %2, 1:i8 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 5 ; total dynamic profile = 0 ------------------------------------------------------ %0:i48 = var (0000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %1:i48 = shlnw %0, 3:i48 %2:i48 = lshr 408028119040:i48, %1 infer %2 known from Souper: 000000000x0xxxxx0x0xxxxx0x0xxxxx0x0xxxxx0x0xxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 5 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i64 = sext %0 %2:i64 = lshr 268336:i64, %1 infer %2 known from Souper: 000000000000000000000000000000000000000000000xxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 5 ; total dynamic profile = 0 ------------------------------------------------------ %0:i8 = var (00000xxx) %1:i32 = zext %0 %2:i32 = var %3:i32 = sub 32:i32, %2 %4:i32 = lshr %1, %3 infer %4 known from Souper: 00000000000000000000000000000xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 5 ; total dynamic profile = 0 ------------------------------------------------------ %0:i8 = var %1:i32 = zext %0 %2:i32 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0) %3:i32 = and 6:i32, %2 %4:i32 = lshr %1, %3 infer %4 known from Souper: 000000000000000000000000xxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 5 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 1 %2:i8 = var (0000000x) %3:i8 = phi %1, %2 %4 = block 1 %5:i8 = phi %4, %2 %6:i8 = phi %0, %3, %5 infer %6 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 5 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (00000000000000000000000000000xxx) %1:i1 = eq 0:i32, %0 %2:i32 = addnsw 4294967295:i32, %0 %3:i32 = select %1, 0:i32, %2 infer %3 known from Souper: 00000000000000000000000000000xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 5 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = ashrexact %0, 2:i64 %2:i64 = and 18446744073709551608:i64, %1 %3:i64 = subnsw %1, %2 infer %3 known from Souper: 0000000000000000000000000000000000000000000000000000000000000xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 5 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i32 = var %2:i64 = zext %1 %3:i64 = urem %0, %2 infer %3 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx llvm is stronger ; total static profile = 6 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i64 = var %2:i64 = var %3:i64 = phi %0, %1, %2, %1 %4:i64 = sub %3, %3 infer %4 known from Souper: 0000000000000000000000000000000000000000000000000000000000000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 5 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = add 18446744073709551615:i64, %0 %2:i64 = or %0, %1 infer %2 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx1 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 5 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i32 = var %3:i64 = zext %2 %4 = block 2 %5:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %6:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %7:i64 = phi %4, %5, %6 %8:i64 = phi %0, %3, %7 infer %8 known from Souper: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 5 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = add 1:i64, %0 %2:i64 = and %0, %1 infer %2 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 5 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i1 = ult 80:i32, %0 %2:i32 = select %1, 80:i32, %0 infer %2 known from Souper: 0000000000000000000000000xxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 5 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1 = block 3 %2:i32 = var (00000000000000000000000000000x0x) %3:i32 = phi %1, 1:i32, 2:i32, %2 %4:i32 = phi %0, 2:i32, 2:i32, 2:i32, %3 infer %4 known from Souper: 00000000000000000000000000000xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 5 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = udiv %0, 4294967295:i64 %2:i64 = addnw 1:i64, %1 infer %2 known from Souper: 0000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 5 ; total dynamic profile = 0 ------------------------------------------------------ %0:i8 = var (0000000x) %1:i32 = zext %0 %2:i32 = var %3:i32 = sub 32:i32, %2 %4:i32 = lshr %1, %3 infer %4 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 5 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (000000000000000000000000000000000000000000000000000000000000000x) %1:i64 = var (000000000000000000000000000000000000000000000000000000000000000x) %2:i64 = addnw %0, %1 %3:i1 = var %4:i64 = zext %3 %5:i64 = addnw %2, %4 infer %5 known from Souper: 00000000000000000000000000000000000000000000000000000000000000xx known from compiler: 0000000000000000000000000000000000000000000000000000000000000xxx souper is stronger ; total static profile = 5 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = srem %0, 16:i64 %2:i64 = subnsw 15:i64, %1 infer %2 known from Souper: 00000000000000000000000000000000000000000000000000000000000xxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 5 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i64 = sext %0 %2:i64 = lshr 4114024488895:i64, %1 infer %2 known from Souper: 0000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 5 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (000000000000000000000000000xxxxx) %1:i32 = addnw 1:i32, %0 %2:i32 = shl 1:i32, %1 infer %2 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 5 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0) %1:i32 = and 30:i32, %0 %2:i32 = lshr 255:i32, %1 infer %2 known from Souper: 000000000000000000000000xxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 5 ; total dynamic profile = 0 ------------------------------------------------------ %0:i8 = var %1:i32 = zext %0 %2:i32 = addnw 255:i32, %1 %3:i32 = and %2, %1 infer %3 known from Souper: 000000000000000000000000xxxxxxx0 known from compiler: 000000000000000000000000xxxxxxxx souper is stronger ; total static profile = 5 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i32 = var %2:i32 = and 7:i32, %1 %3:i32 = shl 1:i32, %2 infer %3 known from Souper: 000000000000000000000000xxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 5 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxx0xx) %1:i64 = or 4:i64, %0 %2:i64 = subnsw 0:i64, %1 %3:i64 = and %2, %1 infer %3 known from Souper: 0000000000000000000000000000000000000000000000000000000000000xxx known from compiler: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 5 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i4 = trunc %0 %2:i4 = lshr 6:i4, %1 infer %2 known from Souper: 0xxx known from compiler: xxxx souper is stronger ; total static profile = 5 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i8 = phi %1, 0:i8, 1:i8 %3:i8 = phi %0, %2, 1:i8 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 5 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i8 = var (0000000x) %2:i32 = zext %1 %3:i32 = phi %0, %2, 2:i32 infer %3 known from Souper: 000000000000000000000000000000xx known from compiler: 000000000000000000000000xxxxxxxx souper is stronger ; total static profile = 5 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (000000000000000000000000xxxxxxxx) %1:i32 = addnsw 4294967276:i32, %0 %2:i32 = lshr 260046849:i32, %1 infer %2 known from Souper: 0000xxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 5 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 1 %2:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %3:i64 = phi %1, %2 %4:i64 = phi %0, 0:i64, %3 infer %4 known from Souper: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 5 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (00000000000000000000000000xxxxxx) %2:i32 = subnsw 64:i32, %1 %3:i32 = phi %0, %2, 0:i32 infer %3 known from Souper: 0000000000000000000000000xxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 5 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i22 = trunc %0 %2:i22 = lshr 193:i22, %1 infer %2 known from Souper: 00000000000000xxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 5 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %1:i64 = mulnw 24:i64, %0 %2:i64 = addnw 8:i64, %1 infer %2 known from Souper: 000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx000 known from compiler: 00000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx000 souper is stronger ; total static profile = 5 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = lshr %0, 5:i32 %2:i32 = var %3:i1 = ult %1, %2 %4:i32 = select %3, %1, %2 infer %4 known from Souper: 00000xxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 5 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i9 = trunc %0 %2:i9 = lshr 92:i9, %1 infer %2 known from Souper: 00xxxxxxx known from compiler: xxxxxxxxx souper is stronger ; total static profile = 5 ; total dynamic profile = 0 ------------------------------------------------------ %0:i48 = var (0000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx000) %1:i48 = lshr 408028119040:i48, %0 %2:i8 = trunc %1 infer %2 known from Souper: 0x0xxxxx known from compiler: xxxxxxxx souper is stronger ; total static profile = 5 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = sub 4294967294:i32, %0 %2:i32 = xor 4294967295:i32, %0 %3:i1 = eq %1, %2 infer %3 known from Souper: 0 known from compiler: x souper is stronger ; total static profile = 5 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 2 %2:i8 = var (0000000x) %3:i8 = phi %1, %2, 0:i8 %4:i8 = phi %0, %3, 0:i8, 0:i8 infer %4 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 5 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = var %2:i64 = and 4294967295:i64, %1 %3:i1 = ult %0, %2 %4:i64 = select %3, %0, %2 infer %4 known from Souper: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 5 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 6 %2:i32 = var (0000000000000000000000000000100x) %3:i32 = phi %1, 2:i32, 5:i32, 6:i32, 7:i32, 3:i32, %2 %4:i1 = var %5:i32 = zext %4 %6:i32 = phi %0, %3, %5 infer %6 known from Souper: 0000000000000000000000000000xxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 5 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i1 = eq 0:i32, %0 %2:i32 = var (00000000000000000000000000000xxx) %3:i32 = var %4:i32 = lshr %2, %3 %5:i32 = select %1, 0:i32, %4 infer %5 known from Souper: 00000000000000000000000000000xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 5 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %1:i64 = xor 18446744073709551615:i64, %0 %2:i64 = var %3:i64 = var %4:i64 = sub %2, %3 %5:i1 = ult %1, %4 %6:i64 = select %5, %4, %1 infer %6 known from Souper: 11111111111111111111111111111111xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 4 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i1 = var %2:i64 = select %1, 16140896666449346560:i64, 2147450880:i64 %3 = block 2 %4:i1 = var %5:i64 = var (0000000000000000000x0000000x000000000000000000000000000000000000) %6:i64 = select %4, 137438953472:i64, %5 %7:i64 = phi %0, 70368744177664:i64, %2, %6 infer %7 known from Souper: xx0xxxxxxxxxxxxxxxxxxx0000xx00000xxxxxxxxxxxxxxxx000000000000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 4 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 1 %2:i64 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0) %3:i64 = phi %1, %2 %4:i64 = phi %0, 0:i64, %3 infer %4 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 4 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %1:i64 = mulnw 48:i64, %0 %2:i64 = addnw 16:i64, %1 infer %2 known from Souper: 00000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0000 known from compiler: 0000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0000 souper is stronger ; total static profile = 4 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = lshr %0, 21:i32 %2:i32 = addnw 2047:i32, %1 %3:i32 = and %2, %1 infer %3 known from Souper: 000000000000000000000xxxxxxxxxx0 known from compiler: 000000000000000000000xxxxxxxxxxx souper is stronger ; total static profile = 4 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (000000000000000000000000000xxxxx) %2:i64 = zext %1 %3:i64 = phi %0, %2, 32:i64 infer %3 known from Souper: 0000000000000000000000000000000000000000000000000000000000xxxxxx known from compiler: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 4 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = add 2147483647:i32, %0 %2:i32 = and 2147483647:i32, %0 %3:i32 = and %1, %2 infer %3 known from Souper: 0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0 known from compiler: 0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 4 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = lshr 128:i32, %0 %2:i64 = sext %1 infer %2 known from Souper: 00000000000000000000000000000000000000000000000000000000xxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 4 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i32 = trunc %0 %2:i1 = ult 4:i32, %1 %3:i32 = select %2, 4:i32, %1 infer %3 known from Souper: 00000000000000000000000000000xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 4 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = udiv %0, 127773:i32 %2:i32 = mulnw 2836:i32, %1 infer %2 known from Souper: 00000xxxxxxxxxxxxxxxxxxxxxxxxx00 known from compiler: 0000xxxxxxxxxxxxxxxxxxxxxxxxxx00 souper is stronger ; total static profile = 4 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 1 %1:i64 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0) %2:i64 = add 2:i64, %1 %3:i64 = phi %0, %2 infer %3 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 4 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2 = block 2 %3:i32 = var (0000000000000000000000000000000x) %4:i32 = var (0000000000000000000000000000000x) %5:i32 = phi %2, %3, %4 %6:i32 = var (0000000000000000000000000000000x) %7:i32 = phi %1, %5, %6 %8:i32 = phi %0, %7, %5 infer %8 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 4 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = udiv 128:i32, %0 %2:i64 = zext %1 infer %2 known from Souper: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 00000000000000000000000000000000000000000000000000000000xxxxxxxx llvm is stronger ; total static profile = 4 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i1 = var %2:i64 = var (000000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %3:i64 = select %1, %2, 0:i64 %4:i64 = phi %0, 0:i64, %3, 0:i64 infer %4 known from Souper: 000000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 4 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (000000xxxxxxxxxxxxxxxxxxxxxxxxxx) %2:i32 = addnw 1:i32, %1 %3:i32 = phi %0, %2, 0:i32 infer %3 known from Souper: 00000xxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 4 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %1:i32 = trunc %0 %2:i32 = add 4294967295:i32, %1 %3:i32 = and %2, %1 infer %3 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 4 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (000000000000000000000000000xxxxx) %1:i32 = shl 1:i32, %0 %2:i32 = addnsw 4294967295:i32, %1 infer %2 known from Souper: 0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 4 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (0000000000000000000000000000000x) %2:i8 = trunc %1 %3:i8 = phi %0, %2, 1:i8 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 4 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i1 = var %2:i8 = zext %1 %3 = block 2 %4:i8 = phi %3, 0:i8, 1:i8 %5:i8 = phi %0, %2, %4 infer %5 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 4 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = urem %0, 127773:i32 %2:i32 = mulnuw 16807:i32, %1 infer %2 known from Souper: 0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 4 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (00000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %1:i64 = var (000000000000000000000000000000000000000000000000000000000000000x) %2:i64 = addnw %0, %1 %3:i64 = addnw 1:i64, %2 infer %3 known from Souper: 0000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 4 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i8 = phi %1, 0:i8, 1:i8 %3:i8 = phi %0, %2, 0:i8 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 4 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1 = block 2 %2:i8 = phi %1, 1:i8, 0:i8 %3:i8 = phi %0, 1:i8, 1:i8, %2, 1:i8 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 4 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1:i1 = var %2:i64 = var (0xxxxxxxxxxx0000000000000000000000000000000000000000000000000000) %3:i64 = select %1, 0:i64, %2 %4:i64 = phi %0, 9218868437227405312:i64, 9218868437227405312:i64, 0:i64, %3 infer %4 known from Souper: 0xxxxxxxxxxx0000000000000000000000000000000000000000000000000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 4 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i8 = trunc %0 %2:i8 = lshr 23:i8, %1 infer %2 known from Souper: 000xxxxx known from compiler: xxxxxxxx souper is stronger ; total static profile = 4 ; total dynamic profile = 0 ------------------------------------------------------ %0:i16 = var %1:i32 = zext %0 %2:i32 = var %3:i32 = shlnsw %2, 2:i32 %4:i32 = lshr %1, %3 infer %4 known from Souper: 0000000000000000xxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 4 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 1 %2:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %3:i64 = phi %1, %2 %4:i64 = phi %0, %3, 0:i64, %3 infer %4 known from Souper: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 4 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = var %2:i1 = eq %0, %1 %3:i64 = sub %0, %1 %4:i64 = select %2, %3, 1:i64 infer %4 known from Souper: 000000000000000000000000000000000000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 4 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 1 %1:i32 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0) %2:i32 = add 2:i32, %1 %3:i32 = phi %0, %2 infer %3 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 4 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (00000000000000000000000000000000000000000000000000000000xxxxxxxx) %1:i64 = ctpop %0 %2:i32 = trunc %1 infer %2 known from Souper: 0000000000000000000000000000xxxx known from compiler: 0000000000000000000000000xxxxxxx souper is stronger ; total static profile = 4 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (000000000000000000000000000000000000000000000000000000000xxxxxxx) %1:i64 = var %2:i64 = addnsw %0, %1 %3 = block 2 %4:i64 = var (000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %5:i64 = var (0000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %6:i64 = phi %3, %4, %5 %7:i64 = urem %2, %6 infer %7 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx llvm is stronger ; total static profile = 4 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i64 = var (000000000000000000000000000000000x00x0x0x0x0x0x00000000000000000) %3:i64 = var (000000000000000000000000000000000xxx0000000000000000000000000000) %4:i64 = phi %1, %2, %3 %5 = block 3 %6:i64 = var (xx0xxxxxxxxxxxxxxxxxxx00000000000xxxxxxxxxxxxxxxx000000000000000) %7:i64 = var (0000000000000000000x000000xx000000000000000000000000000000000000) %8:i64 = phi %5, 70368744177664:i64, %6, %7 %9:i64 = phi %0, %4, %8 infer %9 known from Souper: xx0xxxxxxxxxxxxxxxxxxx0000xx00000xxxxxxxxxxxxxxxx000000000000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 4 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i64 = var (0000000000000000000000000000000x00000000000000000000000000000000) %3:i64 = var (000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %4:i64 = and 4294967295:i64, %3 %5:i64 = or %2, %4 %6:i64 = phi %0, %5, %4 infer %6 known from Souper: 0000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 4 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (0000000000000000xxxxxxxxxxxxxxxx) %1:i32 = var (0000000000000000000000000000001x) %2:i32 = lshr %0, %1 %3:i32 = lshr %2, 6:i32 infer %3 known from Souper: 000000000000000000000000xxxxxxxx known from compiler: 000000xxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 4 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i64 = var (00000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %2:i64 = var (000000000000000000000000000000000000000000000000000000000000000x) %3:i64 = addnw %1, %2 %4:i64 = addnw 1:i64, %3 %5:i64 = phi %0, %4, %3 infer %5 known from Souper: 0000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 4 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i6 = trunc %0 %2:i6 = lshr 10:i6, %1 infer %2 known from Souper: 00xxxx known from compiler: xxxxxx souper is stronger ; total static profile = 4 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %1:i64 = and 4294967295:i64, %0 %2:i64 = and 31:i64, %0 %3:i64 = subnsw %1, %2 infer %3 known from Souper: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxx00000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 4 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = add 524288:i64, %0 %2:i64 = add 524296:i64, %0 %3:i64 = or %1, %2 infer %3 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx1xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 4 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i32 = var (0000000000000000000000000000000x) %3:i32 = var (0000000000000000000000000000000x) %4:i32 = phi %1, %2, %3 %5:i1 = var %6:i32 = zext %5 %7:i32 = phi %0, %4, %6 infer %7 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 4 ; total dynamic profile = 0 ------------------------------------------------------ %0:i1 = var %1:i32 = var %2:i32 = var %3:i32 = select %0, %1, %2 %4:i32 = add 4294967295:i32, %3 %5:i32 = and %4, %3 infer %5 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 4 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 17 %1:i1 = var %2:i32 = select %1, 1:i32, 2:i32 %3:i32 = var (0000000000000000000000000000000x) %4:i32 = or 2:i32, %3 %5:i32 = phi %0, 0:i32, 2:i32, 2:i32, 2:i32, 2:i32, 2:i32, 2:i32, 2:i32, 2:i32, 2:i32, 2:i32, 2:i32, 2:i32, 3:i32, %2, %4, 2:i32 infer %5 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 4 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i16 = trunc %0 %2:i16 = lshr 3071:i16, %1 infer %2 known from Souper: 0000xxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxx souper is stronger ; total static profile = 4 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var %2:i64 = zext %1 %3 = block 2 %4:i64 = var (000000000000000000000000000000000000000000000000xxxxxxxxxxxxxxxx) %5:i64 = phi %3, %4, %4 %6:i64 = phi %0, %2, %5 infer %6 known from Souper: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 4 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i64 = var %2:i64 = sub %1, %1 %3:i64 = ashrexact %2, 3:i64 infer %3 known from Souper: 0000000000000000000000000000000000000000000000000000000000000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 4 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var %2:i32 = var %3:i32 = udiv %1, %2 %4:i32 = add 4294967295:i32, %3 %5:i32 = and %4, %3 infer %5 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 4 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = var (000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %2:i64 = udiv %0, %1 %3:i64 = lshr 4294967296:i64, %2 infer %3 known from Souper: 0000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 4 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i32 = var (0000000000000000000000000000000x) %3:i32 = var (0000000000000000000000000000000x) %4:i32 = and %2, %3 %5:i32 = var (0000000000000000000000000000000x) %6:i32 = var (0000000xxxxxxxxxxxxxxxxxxxxxxxxx) %7:i32 = and %5, %6 %8:i32 = phi %0, %4, %7 infer %8 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 4 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = var (0000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %2:i64 = udiv %0, %1 %3:i64 = lshr 4294967296:i64, %2 %4:i64 = shl %3, %2 infer %4 known from Souper: 0000000000000000000000000000000x00000000000000000000000000000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 4 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %1:i64 = var (000000000000000000000000000000000000000000000000000000000000000x) %2:i64 = addnw %0, %1 %3:i64 = var %4:i64 = lshr %3, 9:i64 %5:i1 = ult %2, %4 %6:i64 = select %5, %2, %4 infer %6 known from Souper: 000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 00000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 4 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i64 = var (000000000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxx) %2:i64 = shlnw %1, 32:i64 %3:i64 = phi %0, %2, 0:i64 infer %3 known from Souper: 0000xxxxxxxxxxxxxxxxxxxxxxxxxxxx00000000000000000000000000000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00000000000000000000000000000000 souper is stronger ; total static profile = 4 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = subnsw 0:i64, %0 %2:i64 = xor 18446744073709551615:i64, %0 %3:i64 = and %1, %2 infer %3 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 4 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i1 = ult %0, 1114112:i32 %2:i32 = select %1, %0, 65533:i32 infer %2 known from Souper: 00000000000xxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 4 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %1:i64 = mulnw 20:i64, %0 %2:i64 = addnw 8:i64, %1 infer %2 known from Souper: 000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00 known from compiler: 00000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00 souper is stronger ; total static profile = 4 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i1 = slt 4294967295:i32, %0 %2:i32 = select %1, %0, 1000:i32 infer %2 known from Souper: 0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 4 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i64 = zext %0 %2:i64 = var %3:i64 = udiv %1, %2 infer %3 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx llvm is stronger ; total static profile = 4 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i8 = var (xx000000) %2:i8 = or 32:i8, %1 %3:i8 = phi %0, 32:i8, %2 infer %3 known from Souper: xx100000 known from compiler: xx1xxxxx souper is stronger ; total static profile = 4 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (0000000000000000000000000000xxxx) %1:i32 = shl 16:i32, %0 %2:i32 = add 65520:i32, %1 infer %2 known from Souper: 000000000000xxxxxxxxxxxxxxxx0000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 4 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = lshr %0, 1:i32 %2:i1 = var %3:i32 = zext %2 %4:i32 = lshr %1, %3 infer %4 known from Souper: 0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 4 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (0000000000000000000000000000000000000000000000000000000000xxxxxx) %1:i64 = subnsw 64:i64, %0 %2:i64 = subnsw 65:i64, %1 infer %2 known from Souper: 000000000000000000000000000000000000000000000000000000000xxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 4 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i64 = zext %0 %2:i1 = var %3:i64 = var %4:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %5:i64 = select %2, %3, %4 %6:i1 = ult %1, %5 %7:i64 = select %6, %1, %5 infer %7 known from Souper: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 4 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %2:i64 = var (000000000000000000000000000000000000000000000000xxxxxxxxxxxxxxxx) %3:i64 = mulnw %1, %2 %4:i32 = var %5:i64 = zext %4 %6:i64 = addnw %3, %5 infer %6 known from Souper: 0000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 4 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = var (0000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %2:i64 = udiv %0, %1 %3:i64 = lshr 4294967296:i64, %2 infer %3 known from Souper: 0000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 4 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 1 %1:i16 = var (0000000000000xxx) %2:i64 = zext %1 %3:i64 = phi %0, %2 infer %3 known from Souper: 0000000000000000000000000000000000000000000000000000000000000xxx known from compiler: 000000000000000000000000000000000000000000000000xxxxxxxxxxxxxxxx souper is stronger ; total static profile = 4 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (0000000000000000xxxxxxxxxxxxxxxx) %1:i32 = var (0000000000000000xxxxxxxxxxxxxxxx) %2:i32 = and %0, %1 %3:i8 = var %4:i32 = zext %3 %5:i32 = lshr %2, %4 infer %5 known from Souper: 0000000000000000xxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 4 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = var (00000000000000000000000000000000000000000000000000000000xxxxxxxx) %2:i64 = and %0, %1 %3:i64 = ctpop %2 infer %3 known from Souper: 000000000000000000000000000000000000000000000000000000000000xxxx known from compiler: 000000000000000000000000000000000000000000000000000000000xxxxxxx souper is stronger ; total static profile = 4 ; total dynamic profile = 0 ------------------------------------------------------ %0:i1 = var %1:i32 = select %0, 8:i32, 4:i32 %2:i32 = addnsw 4294967295:i32, %1 infer %2 known from Souper: 00000000000000000000000000000x11 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx11 souper is stronger ; total static profile = 4 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = var (000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %2:i64 = udiv %0, %1 %3:i64 = lshr 4294967296:i64, %2 %4:i64 = shl %3, %2 infer %4 known from Souper: 0000000000000000000000000000000x00000000000000000000000000000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 4 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (0000000000000000000000000000000000000000000000000000000000xxxxxx) %1:i64 = subnsw 64:i64, %0 %2:i1 = var %3:i64 = sext %2 %4:i64 = addnsw %1, %3 infer %4 known from Souper: 000000000000000000000000000000000000000000000000000000000xxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 4 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 1 %1:i32 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0) %2:i64 = zext %1 %3:i64 = phi %0, %2 infer %3 known from Souper: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0 known from compiler: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 4 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i64 = var (0000000000000000000000000000000x00000000000000000000000000000000) %3:i64 = var (00000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %4:i64 = and 4294967295:i64, %3 %5:i64 = or %2, %4 %6:i64 = phi %0, %5, %4 infer %6 known from Souper: 0000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 4 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (0000000000000000000000000000000x) %1:i32 = addnw 1:i32, %0 %2:i32 = var (0000000000000000000000000xxxxxxx) %3:i32 = and 1:i32, %2 %4:i32 = addnw %1, %3 infer %4 known from Souper: 000000000000000000000000000000xx known from compiler: 00000000000000000000000000000xxx souper is stronger ; total static profile = 4 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1 = block 2 %2:i32 = phi %1, 0:i32, 1:i32 %3:i32 = phi %0, %2, 1:i32, 1:i32, 1:i32 infer %3 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 4 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx000) %1:i64 = addnsw 18446744073709551592:i64, %0 %2:i64 = urem %1, 24:i64 infer %2 known from Souper: 00000000000000000000000000000000000000000000000000000000000xx000 known from compiler: 00000000000000000000000000000000000000000000000000000000000xxxxx souper is stronger ; total static profile = 4 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i1 = eq 0:i32, %0 %2:i32 = var (00000000000000000000000000001xxx) %3:i32 = var %4:i32 = lshr %2, %3 %5:i32 = select %1, 0:i32, %4 infer %5 known from Souper: 0000000000000000000000000000xxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 4 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %1:i64 = shl 2:i64, %0 %2:i64 = add 18446744073709551615:i64, %1 infer %2 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx1 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 4 ; total dynamic profile = 0 ------------------------------------------------------ %0:i1 = var %1:i32 = select %0, 2:i32, 4:i32 %2:i32 = addnsw 4294967294:i32, %1 infer %2 known from Souper: 000000000000000000000000000000x0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0 souper is stronger ; total static profile = 4 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 1 %1:i32 = var %2:i32 = and 7:i32, %1 %3:i32 = shl 1:i32, %2 infer %3 known from Souper: 000000000000000000000000xxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 4 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 2 %2:i8 = phi %1, 1:i8, 0:i8 %3:i8 = phi %0, 1:i8, 1:i8, %2 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 4 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 8 %1 = block 3 %2:i64 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00000000000000000000000000000000) %3:i64 = phi %1, %2, 0:i64, 0:i64 %4:i64 = phi %0, %3, 0:i64, 0:i64, 0:i64, 0:i64, 0:i64, 0:i64, 0:i64 infer %4 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00000000000000000000000000000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 4 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (000000000000000000000000000000000000000000000000000000000xxxxxxx) %1:i64 = var %2:i64 = addnsw %0, %1 %3:i64 = var (0000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %4:i64 = addnw 1:i64, %3 %5:i64 = urem %2, %4 infer %5 known from Souper: 0000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 4 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = and 4294967295:i64, %0 %2:i64 = var %3:i64 = udiv %1, %2 infer %3 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx llvm is stronger ; total static profile = 4 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = var %2:i64 = lshr %1, 32:i64 %3:i1 = ult %0, %2 %4:i64 = select %3, %0, %2 infer %4 known from Souper: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 4 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (xxxxxxxxxxxxxxxx000000000000000000000000000000000000000000000000) %1:i64 = ashrexact %0, 48:i64 %2:i64 = addnsw 1:i64, %1 %3:i64 = and %2, %1 infer %3 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 4 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 4 %2 = block 2 %3:i32 = var (0000000000000000000000000000000x) %4:i32 = phi %1, %3, 1:i32, 1:i32, 1:i32 %5:i32 = phi %0, %4, 1:i32, 1:i32 infer %5 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 4 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 1 %1:i64 = var %2:i64 = phi %0, %1 %3:i64 = and 18446744073709551584:i64, %2 %4:i64 = sub %2, %3 infer %4 known from Souper: 00000000000000000000000000000000000000000000000000000000000xxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 4 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (000000000000000000000000000xxxxx) %1:i32 = addnsw 4294967295:i32, %0 %2:i32 = shl 1:i32, %1 infer %2 known from Souper: 0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 4 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (0000000000000000000000000000xxxx) %1:i32 = addnw 1:i32, %0 %2:i32 = shl 1:i32, %1 infer %2 known from Souper: 000000000000000xxxxxxxxxxxxxxxx0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 4 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (000000000000000000000000000000xx) %1:i32 = var (000000000000000000000000000000xx) %2:i32 = var (0000000000000000000000000000000x) %3:i32 = addnw %1, %2 %4:i32 = addnw %0, %3 infer %4 known from Souper: 00000000000000000000000000000xxx known from compiler: 0000000000000000000000000000xxxx souper is stronger ; total static profile = 4 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = phi %0, 2:i32, 1:i32 %2:i32 = addnw 1:i32, %1 infer %2 known from Souper: 0000000000000000000000000000001x known from compiler: 00000000000000000000000000000xxx souper is stronger ; total static profile = 4 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = var %2:i64 = sub %0, %1 %3:i16 = var %4:i64 = zext %3 %5:i1 = ult %2, %4 %6:i64 = select %5, %2, %4 infer %6 known from Souper: 000000000000000000000000000000000000000000000000xxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 4 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2 = block 2 %3:i32 = var (0000000000000000000000000000000x) %4:i32 = var (0000000000000000000000000000000x) %5:i32 = and %3, %4 %6:i32 = var (0000000000000000000000000000000x) %7:i32 = phi %1, %5, %6 %8:i32 = phi %0, %7, %5 infer %8 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 4 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i8 = trunc %0 %2:i8 = lshr 51:i8, %1 infer %2 known from Souper: 00xxxxxx known from compiler: xxxxxxxx souper is stronger ; total static profile = 4 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 1 %1:i64 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0000) %2:i64 = add 16:i64, %1 %3:i64 = phi %0, %2 infer %3 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 4 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1:i16 = var (0000000x0x000000) %2:i16 = var (000000000000000x) %3:i16 = or %1, %2 %4:i16 = or 4:i16, %3 %5:i16 = or 2:i16, %3 %6:i16 = or 16:i16, %3 %7:i16 = phi %0, %3, %4, %5, %6 infer %7 known from Souper: 0000000x0x0x0xxx known from compiler: xxxxxxxxxxxxxxxx souper is stronger ; total static profile = 4 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = and 65535:i32, %0 %2 = block 1 %3:i1 = var %4:i32 = select %3, 3:i32, 2:i32 %5:i32 = lshr %1, %4 infer %5 known from Souper: 000000000000000000xxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 4 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i64 = var %2:i64 = add 1:i64, %1 %3:i64 = lshr 4294967296:i64, %2 %4:i64 = shl %3, %2 infer %4 known from Souper: 0000000000000000000000000000000x00000000000000000000000000000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 4 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = and 7:i32, %0 %2:i1 = var %3:i32 = select %2, 14:i32, 18:i32 %4:i32 = addnw %1, %3 infer %4 known from Souper: 000000000000000000000000000xxxxx known from compiler: 00000000000000000000000000xxxxxx souper is stronger ; total static profile = 4 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 1 %2:i64 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0000) %3:i64 = phi %1, %2 %4:i64 = phi %0, 0:i64, %3 infer %4 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 4 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (00000000000000000000000000000xxx) %1:i32 = or 8:i32, %0 %2:i32 = var %3:i32 = sub 32:i32, %2 %4:i32 = lshr %1, %3 infer %4 known from Souper: 0000000000000000000000000000xxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 4 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i64 = var %2:i64 = add 1:i64, %1 %3:i64 = lshr 4294967296:i64, %2 infer %3 known from Souper: 0000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 4 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i64 = sext %0 %2:i64 = lshr 139:i64, %1 infer %2 known from Souper: 00000000000000000000000000000000000000000000000000000000xxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 4 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 1 %2:i8 = var (0000000x) %3:i8 = phi %1, %2 %4:i8 = phi %0, 1:i8, %3 infer %4 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1 = block 2 %2:i32 = phi %1, 156:i32, 355:i32 %3:i32 = phi %0, %2, 152:i32, 153:i32, 154:i32, 155:i32 infer %3 known from Souper: 00000000000000000000000xxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1 = block 2 %2:i32 = phi %1, 101:i32, 355:i32 %3:i32 = phi %0, %2, 97:i32, 98:i32, 99:i32, 100:i32 infer %3 known from Souper: 00000000000000000000000x01100xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 2 %2:i64 = var (0000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %3:i64 = addnw 1:i64, %2 %4:i64 = phi %1, %3, %2 %5:i64 = phi %0, %4, %4, %3 infer %5 known from Souper: 000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 1 %2:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %3:i64 = phi %1, %2 %4 = block 1 %5:i64 = phi %4, %2 %6:i64 = phi %0, %3, %5 infer %6 known from Souper: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i32 = trunc %0 %2:i32 = lshr 2147483646:i32, %1 infer %2 known from Souper: 0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %1:i64 = mulnw 24:i64, %0 %2:i64 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx000) %3:i64 = urem %2, 24:i64 %4:i64 = subnsw %1, %3 infer %4 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0:i8 = var %1:i55 = zext %0 %2:i55 = lshr 18014398509481934:i55, %1 infer %2 known from Souper: 0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = and 255:i32, %0 %2:i32 = var (0000000000000000000000000000x000) %3:i32 = addnw 8:i32, %2 %4:i32 = shl %1, %3 infer %4 known from Souper: 00000000xxxxxxxxxxxxxxxx00000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i8 = phi %1, 1:i8, 0:i8 %3:i8 = phi %0, 0:i8, %2 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1 = block 2 %2:i32 = phi %1, 106:i32, 355:i32 %3:i32 = phi %0, %2, 102:i32, 103:i32, 104:i32, 105:i32 infer %3 known from Souper: 00000000000000000000000x0110xxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 3 %2:i8 = var %3:i8 = and 7:i8, %2 %4:i1 = var %5:i8 = select %4, 2:i8, %3 %6:i8 = phi %0, %3, 0:i8, %5 infer %6 known from Souper: 00000xxx known from compiler: xxxxxxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = var %2:i64 = sub %0, %1 %3:i1 = ult %2, 4:i64 %4:i64 = select %3, %2, 4:i64 infer %4 known from Souper: 0000000000000000000000000000000000000000000000000000000000000xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var %2:i32 = and 7:i32, %1 %3:i32 = shl 1:i32, %2 infer %3 known from Souper: 000000000000000000000000xxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1 = block 2 %2:i32 = phi %1, 146:i32, 355:i32 %3:i32 = phi %0, %2, 142:i32, 143:i32, 144:i32, 145:i32 infer %3 known from Souper: 00000000000000000000000xxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i22 = trunc %0 %2:i22 = lshr 79827:i22, %1 infer %2 known from Souper: 00000xxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i1 = ult 8:i32, %0 %2:i32 = select %1, 8:i32, %0 infer %2 known from Souper: 0000000000000000000000000000xxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (00000000000000000000000000xxxxxx) %2:i32 = subnsw 31:i32, %1 %3:i32 = shl 4096:i32, %2 infer %3 known from Souper: xxxxxxxxxxxxxxxxxxxx000000000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = and 8191:i32, %0 %2:i1 = ult %1, 26:i32 %3:i32 = select %2, %1, 0:i32 infer %3 known from Souper: 000000000000000000000000000xxxxx known from compiler: 0000000000000000000xxxxxxxxxxxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0:i1 = var %1:i32 = select %0, 2:i32, 1:i32 %2:i32 = addnw 1:i32, %1 infer %2 known from Souper: 0000000000000000000000000000001x known from compiler: 00000000000000000000000000000xxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = var %2:i64 = add %0, %1 %3 = block 3 %4:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %5:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %6:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %7:i64 = phi %3, %4, %5, %6 %8:i64 = urem %2, %7 infer %8 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx llvm is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i16 = trunc %0 %2:i16 = lshr 3585:i16, %1 infer %2 known from Souper: 0000xxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 2 %2:i32 = phi %1, 1:i32, 0:i32 %3:i32 = phi %0, %2, 1:i32, 1:i32 infer %3 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i64 = var (0000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %3:i64 = phi %1, %2, 0:i64 %4 = block 2 %5:i64 = var (0000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %6:i64 = phi %4, %5, 0:i64 %7:i64 = phi %0, %3, %6 infer %7 known from Souper: 0000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1 = block 1 %2:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %3:i64 = phi %1, %2 %4:i64 = addnw 1:i64, %3 %5 = block 1 %6:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %7:i64 = phi %5, %6 %8:i64 = phi %0, %4, %3, 0:i64, %7 infer %8 known from Souper: 0000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i1 = ult 4:i32, %0 %2:i32 = select %1, 4:i32, %0 infer %2 known from Souper: 00000000000000000000000000000xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1 = block 2 %2:i32 = phi %1, 76:i32, 355:i32 %3:i32 = phi %0, %2, 72:i32, 73:i32, 74:i32, 75:i32 infer %3 known from Souper: 00000000000000000000000x01x0xxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = var (000000000000000000000000000000000000000000000000000000000000000x) %2:i64 = sub %0, %1 %3:i1 = ult %2, 2:i64 %4:i64 = select %3, %2, 2:i64 infer %4 known from Souper: 00000000000000000000000000000000000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1 = block 2 %2:i32 = phi %1, 116:i32, 355:i32 %3:i32 = phi %0, %2, 112:i32, 113:i32, 114:i32, 115:i32 infer %3 known from Souper: 00000000000000000000000x011x0xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0:i1 = var %1:i32 = var (00000000000000000000000xxxxxxxxx) %2:i32 = var (00000000000000000000000xxxxxxx00) %3:i32 = select %0, %1, %2 %4 = block 2 %5:i32 = var %6:i32 = add 4294967272:i32, %5 %7:i32 = lshr %3, %6 infer %7 known from Souper: 00000000000000000000000xxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1 = block 2 %2:i32 = phi %1, 126:i32, 355:i32 %3:i32 = phi %0, %2, 122:i32, 123:i32, 124:i32, 125:i32 infer %3 known from Souper: 00000000000000000000000x011xxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (0000000000000000000000000000xxxx) %1:i32 = shl 256:i32, %0 %2:i32 = add 4294967040:i32, %1 infer %2 known from Souper: 000000000xxxxxxxxxxxxxxx00000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (00000000000000000000000000000xxx) %1:i32 = addnw 1:i32, %0 %2:i32 = shl 16:i32, %1 infer %2 known from Souper: 0000000000000000000xxxxxxxx00000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1 = block 2 %2:i32 = phi %1, 151:i32, 355:i32 %3:i32 = phi %0, %2, 147:i32, 148:i32, 149:i32, 150:i32 infer %3 known from Souper: 00000000000000000000000xxxxx0xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0) %1:i64 = zext %0 %2:i64 = shl 1:i64, %1 infer %2 known from Souper: 0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0:i8 = var %1:i64 = zext %0 %2:i64 = lshr 117804817335:i64, %1 infer %2 known from Souper: 000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var %2:i32 = and 4294967232:i32, %1 %3 = block 1 %4:i32 = var (xxxxxxxxxxxxxxxxxxxxxxxxxx000000) %5:i32 = phi %3, %4 %6:i32 = phi %0, %2, %5 infer %6 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxx000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (000000000000000000000000xxxxxxxx) %1:i11 = trunc %0 %2:i11 = lshr 638:i11, %1 infer %2 known from Souper: 0xxxxxxxxxx known from compiler: xxxxxxxxxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1:i32 = var (xxxxxx0xx0xx00xxxxxxxxxxxxxxxxxx) %2:i32 = or 33554432:i32, %1 %3:i32 = var %4:i32 = and 4289986559:i32, %3 %5:i32 = or 34340864:i32, %1 %6:i32 = phi %0, %2, %2, %4, %5 infer %6 known from Souper: xxxxxxxxx0xxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0:i8 = var %1:i32 = zext %0 %2:i16 = var %3:i32 = zext %2 %4:i1 = ult %1, %3 %5:i32 = select %4, %1, %3 infer %5 known from Souper: 000000000000000000000000xxxxxxxx known from compiler: 0000000000000000xxxxxxxxxxxxxxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (00000000000000000000000000xxxxx0) %1:i64 = zext %0 %2:i64 = shl 1:i64, %1 infer %2 known from Souper: 0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (0000000000000000000000000000xxxx) %1:i1 = eq 15:i32, %0 %2 = block 2 %3:i32 = var (000000000000000000000000000000x1) %4:i32 = phi %2, %3, 3:i32 %5:i32 = select %1, 1:i32, %4 infer %5 known from Souper: 000000000000000000000000000000x1 known from compiler: 000000000000000000000000000000xx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i32 = var (00000000000000000000000000000xxx) %3:i32 = var (00000000000000000000000000000xxx) %4:i32 = phi %1, %2, %3 %5:i32 = addnsw 1:i32, %4 %6:i32 = phi %0, %5, %4 infer %6 known from Souper: 0000000000000000000000000000xxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 1 %1:i32 = var (0000000000000000000000000000000x) %2:i8 = trunc %1 %3:i8 = phi %0, %2 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0:i1 = var %1:i32 = select %0, 8:i32, 4:i32 %2:i32 = subnsw 0:i32, %1 infer %2 known from Souper: 11111111111111111111111111111x00 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00 souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i16 = trunc %0 %2:i16 = lshr 1031:i16, %1 infer %2 known from Souper: 00000xxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1 = block 2 %2:i32 = phi %1, 176:i32, 355:i32 %3:i32 = phi %0, %2, 172:i32, 173:i32, 174:i32, 175:i32 infer %3 known from Souper: 00000000000000000000000xxx1xxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (0000000000000000000000000000000x) %2:i64 = zext %1 %3:i64 = phi %0, %2, 2:i64 infer %3 known from Souper: 00000000000000000000000000000000000000000000000000000000000000xx known from compiler: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 1 %2:i32 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0) %3:i32 = phi %1, %2 %4:i32 = phi %0, 0:i32, %3 infer %4 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 1 %1:i64 = var %2:i64 = lshr %1, 58:i64 %3:i64 = shl 18446744073709551615:i64, %2 infer %3 known from Souper: 1xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (000000000000000000000000000xx000) %2:i32 = shl 1:i32, %1 %3:i32 = addnsw 4294967295:i32, %2 infer %3 known from Souper: 00000000xxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 6 %2:i32 = var (000000000000000000000000000000xx) %3:i32 = addnw 2:i32, %2 %4:i32 = addnw 1:i32, %2 %5:i32 = phi %0, %3, %4 infer %5 known from Souper: 00000000000000000000000000000xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = var %2:i64 = add %0, %1 %3:i32 = var %4:i64 = zext %3 %5:i64 = urem %2, %4 infer %5 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx llvm is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i32 = var %2:i32 = ctlz %1 %3:i32 = var (000000000000000000000000000xxxxx) %4:i32 = addnw 1:i32, %3 %5:i32 = phi %0, %2, %4, 33:i32 infer %5 known from Souper: 00000000000000000000000000xxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (000000000000000000000000000xxxxx) %2:i32 = phi %0, %1, 0:i32 %3:i32 = shl 4294967040:i32, %2 infer %3 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxx00000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1 = block 2 %2:i32 = phi %1, 181:i32, 355:i32 %3:i32 = phi %0, %2, 177:i32, 178:i32, 179:i32, 180:i32 infer %3 known from Souper: 00000000000000000000000xxx1x0xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i32 = phi %1, 0:i32, 1:i32 %3:i32 = phi %0, %2, 1:i32 infer %3 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (000000000000000000000000000000xx) %1:i32 = var (0000000000000000000000000000000x) %2:i32 = addnw %0, %1 %3:i32 = var (0000000000000xxxxxxxxxxxxxxxxxxx) %4:i32 = and 1:i32, %3 %5:i32 = addnw %2, %4 infer %5 known from Souper: 00000000000000000000000000000xxx known from compiler: 0000000000000000000000000000xxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1 = block 2 %2:i32 = phi %1, 141:i32, 355:i32 %3:i32 = phi %0, %2, 137:i32, 138:i32, 139:i32, 140:i32 infer %3 known from Souper: 00000000000000000000000xxxx0xxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = cttz %0 %2:i32 = shl 4294967040:i32, %1 infer %2 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxx00000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1 = block 2 %2:i32 = var %3:i64 = zext %2 %4:i64 = urem %0, %3 infer %4 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx llvm is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0) %1:i64 = or 1:i64, %0 %2:i64 = shl 1:i64, %1 infer %2 known from Souper: x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 1 %2:i64 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0000) %3:i64 = phi %1, %2 %4 = block 1 %5:i64 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0000) %6:i64 = phi %4, %5 %7:i64 = phi %0, %3, %6 infer %7 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1 = block 2 %2:i32 = phi %1, 121:i32, 355:i32 %3:i32 = phi %0, %2, 117:i32, 118:i32, 119:i32, 120:i32 infer %3 known from Souper: 00000000000000000000000x011xxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %3:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %4:i64 = phi %1, %2, %3 %5:i64 = phi %0, 0:i64, %4 infer %5 known from Souper: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1 = block 2 %2:i32 = phi %1, 166:i32, 355:i32 %3:i32 = phi %0, %2, 162:i32, 163:i32, 164:i32, 165:i32 infer %3 known from Souper: 00000000000000000000000xxx100xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i1 = var %2:i32 = var (0000000000000000000000000010100x) %3:i32 = select %1, 39:i32, %2 %4:i32 = phi %0, 50:i32, %3 infer %4 known from Souper: 000000000000000000000000001xxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i64 = zext %0 %2:i64 = bswap %1 infer %2 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00000000000000000000000000000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i64 = phi %1, 2:i64, 0:i64 %3:i64 = phi %0, 2:i64, %2 infer %3 known from Souper: 00000000000000000000000000000000000000000000000000000000000000x0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = add 4294967286:i32, %0 %2:i32 = lshr 128:i32, %1 infer %2 known from Souper: 000000000000000000000000xxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0:i1 = var %1:i32 = zext %0 %2:i32 = shl 1:i32, %1 infer %2 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 2 %2:i8 = phi %1, 1:i8, 0:i8 %3:i8 = phi %0, 1:i8, 0:i8, %2 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = var %2:i64 = add %0, %1 %3:i64 = var %4:i64 = and 4294967295:i64, %3 %5:i64 = urem %2, %4 infer %5 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx llvm is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (00000000000000000000000000000000000000000000000000000000xxxxxxxx) %1:i64 = lshr %0, 1:i64 %2:i1 = var %3:i64 = var (000000000000000000000000000000000000000000000000000000000xxxxxxx) %4:i64 = var %5:i64 = select %2, %3, %4 %6:i1 = ult %1, %5 %7:i64 = select %6, %1, %5 infer %7 known from Souper: 000000000000000000000000000000000000000000000000000000000xxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1 = block 2 %2:i32 = phi %1, 86:i32, 355:i32 %3:i32 = phi %0, %2, 82:i32, 83:i32, 84:i32, 85:i32 infer %3 known from Souper: 00000000000000000000000x01xx0xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxx111) %1:i64 = zext %0 %2:i64 = shl 1:i64, %1 infer %2 known from Souper: x0000000x0000000x0000000x0000000x0000000x0000000x0000000x0000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var %2:i32 = var (0000000000000000000000000000x1x1) %3:i32 = and %1, %2 %4:i32 = phi %0, %3, 0:i32 infer %4 known from Souper: 0000000000000000000000000000xxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %2:i64 = shlnuw %1, 32:i64 %3 = block 2 %4:i64 = phi %3, %2, 0:i64 %5:i64 = phi %0, %2, %4 infer %5 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00000000000000000000000000000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i8 = var (0000000x) %2:i8 = xor 1:i8, %1 %3:i8 = phi %0, 0:i8, %2 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (000000000000000000000000xxxxxxxx) %1:i32 = addnsw 4294967267:i32, %0 %2:i32 = lshr 65519623:i32, %1 infer %2 known from Souper: 000000xxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = udiv 64:i32, %0 infer %1 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 0000000000000000000000000xxxxxxx llvm is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1 = block 2 %2:i32 = phi %1, 136:i32, 355:i32 %3:i32 = phi %0, %2, 132:i32, 133:i32, 134:i32, 135:i32 infer %3 known from Souper: 00000000000000000000000xxxx0xxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1 = block 2 %2:i32 = phi %1, 61:i32, 355:i32 %3:i32 = phi %0, %2, 57:i32, 58:i32, 59:i32, 60:i32 infer %3 known from Souper: 00000000000000000000000x0x1xxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0:i8 = var %1:i64 = zext %0 %2:i64 = lshr 7720476292799415:i64, %1 infer %2 known from Souper: 00000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1 = block 2 %2:i32 = phi %1, 111:i32, 355:i32 %3:i32 = phi %0, %2, 107:i32, 108:i32, 109:i32, 110:i32 infer %3 known from Souper: 00000000000000000000000x0110xxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i1 = var %2:i32 = var (0000000000000000000000000xxxxxxx) %3:i32 = select %1, %2, 32:i32 %4:i32 = phi %0, 0:i32, %3 infer %4 known from Souper: 0000000000000000000000000xxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i8 = trunc %0 %2:i8 = lshr 27:i8, %1 infer %2 known from Souper: 000xxxxx known from compiler: xxxxxxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = ashr %0, 63:i64 %2:i64 = addnsw 8388608:i64, %1 infer %2 known from Souper: 0000000000000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2 = block 2 %3:i8 = var (0000000x) %4:i8 = phi %1, 1:i8, %3 %5:i8 = phi %0, 1:i8, %4 infer %5 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (00000000000000000000000000000xxx) %1:i32 = addnw 1:i32, %0 %2:i32 = shl 256:i32, %1 infer %2 known from Souper: 000000000000000xxxxxxxx000000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i32 = trunc %0 %2:i32 = var %3:i32 = lshr %2, 1:i32 %4:i32 = urem %1, %3 infer %4 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx llvm is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx1) %1:i64 = and 63:i64, %0 %2:i64 = shl 1:i64, %1 infer %2 known from Souper: x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0:i1 = var %1:i64 = var (000000000000000000000000000000000000000000000000000000000xxxxxxx) %2:i64 = var %3:i64 = select %0, %1, %2 %4:i64 = var (00000000000000000000000000000000000000000000000000000000xxxxxxxx) %5:i64 = lshr %4, 1:i64 %6:i1 = ult %3, %5 %7:i64 = select %6, %3, %5 infer %7 known from Souper: 000000000000000000000000000000000000000000000000000000000xxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i32 = phi %1, 1:i32, 0:i32 %3:i32 = phi %0, 1:i32, %2 infer %3 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i32 = trunc %0 %2:i32 = lshr 2147483646:i32, %1 %3:i32 = shl %2, %1 infer %3 known from Souper: 0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i64 = zext %0 %2:i64 = lshr 1152921504607373843:i64, %1 infer %2 known from Souper: 000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i64 = sext %0 %2:i64 = lshr 2147467552:i64, %1 infer %2 known from Souper: 000000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (0000xxxxxxxxxxxxxxxxxxxxxxxxxxxx) %1:i32 = and 3:i32, %0 %2:i32 = shl 4:i32, %1 infer %2 known from Souper: 00000000000000000000000000xxxx00 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (00000000000000000000000000000000000000000000000000000000000000xx) %1:i64 = var (000000000000000000000000000000000000000000000000000000000000000x) %2:i64 = addnw %0, %1 %3:i1 = var %4:i64 = zext %3 %5:i64 = addnw %2, %4 infer %5 known from Souper: 0000000000000000000000000000000000000000000000000000000000000xxx known from compiler: 000000000000000000000000000000000000000000000000000000000000xxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (000000000000000000000000xxxxxxxx) %1:i32 = addnsw 4294967281:i32, %0 %2:i32 = lshr 134217769:i32, %1 infer %2 known from Souper: 0000xxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = and 63:i64, %0 %2:i64 = shl 18446744073709551615:i64, %1 infer %2 known from Souper: 1xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i32 = var (000xxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %2:i64 = zext %1 %3:i64 = urem %0, %2 infer %3 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 00000000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxx llvm is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 8 %1:i32 = var (0000000000000000000000000000000x) %2:i32 = addnw 7:i32, %1 %3:i32 = phi %0, 0:i32, 1:i32, 2:i32, 3:i32, 4:i32, 5:i32, 6:i32, %2 infer %3 known from Souper: 0000000000000000000000000000xxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1 = block 2 %2:i32 = phi %1, 56:i32, 355:i32 %3:i32 = phi %0, %2, 52:i32, 53:i32, 54:i32, 55:i32 infer %3 known from Souper: 00000000000000000000000x0x1xxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1 = block 2 %2:i32 = phi %1, 96:i32, 355:i32 %3:i32 = phi %0, %2, 92:i32, 93:i32, 94:i32, 95:i32 infer %3 known from Souper: 00000000000000000000000x01xxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i1 = ult 255:i32, %0 %2:i32 = select %1, 255:i32, %0 infer %2 known from Souper: 000000000000000000000000xxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i64 = var (00000000000000000000000000000000000000000000000000000000xxxxxxxx) %2:i64 = lshr %1, 1:i64 %3:i64 = phi %0, %2, %2 infer %3 known from Souper: 000000000000000000000000000000000000000000000000000000000xxxxxxx known from compiler: 0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0:i8 = var (0000xxxx) %1:i32 = zext %0 %2:i32 = cttz %1 infer %2 known from Souper: 00000000000000000000000000x000xx known from compiler: 00000000000000000000000000xxxxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1 = block 2 %2:i32 = phi %1, 91:i32, 355:i32 %3:i32 = phi %0, %2, 87:i32, 88:i32, 89:i32, 90:i32 infer %3 known from Souper: 00000000000000000000000x01xxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var %2:i64 = zext %1 %3:i1 = ult %2, 2:i64 %4:i64 = select %3, %2, 2:i64 infer %4 known from Souper: 00000000000000000000000000000000000000000000000000000000000000xx known from compiler: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = lshr %0, 3:i32 %2:i32 = var %3:i32 = udiv %1, %2 infer %3 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 000xxxxxxxxxxxxxxxxxxxxxxxxxxxxx llvm is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i64 = zext %0 %2:i64 = shl 2:i64, %1 infer %2 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i64 = zext %0 %2:i64 = lshr 8869107466241:i64, %1 infer %2 known from Souper: 00000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i1 = var %2:i8 = var (0000000x) %3:i8 = select %1, 0:i8, %2 %4:i8 = phi %0, 0:i8, %3 infer %4 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (0000000000000000000000000000x000) %1:i32 = xor 8:i32, %0 %2:i32 = lshr 65535:i32, %1 infer %2 known from Souper: 0000000000000000xxxxxxxx11111111 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %3:i64 = phi %1, %2, 0:i64 %4:i64 = phi %0, %3, 0:i64 infer %4 known from Souper: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0:i8 = var (0000xxxx) %1:i16 = zext %0 %2:i16 = lshr 1855:i16, %1 infer %2 known from Souper: 00000xxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i32 = phi %1, 2:i32, 1:i32 %3:i32 = phi %0, 2:i32, %2 infer %3 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i1 = slt %0, 1:i32 %2:i32 = select %1, 1:i32, %0 infer %2 known from Souper: 0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = var (000000xxxxxxxxxxxxxxxxxxxxxxxxxx) %2:i1 = sle %0, %1 %3:i32 = select %2, 0:i32, %0 infer %3 known from Souper: 0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (00000000000000000xxxxxxxxxxxxxxx) %1:i64 = zext %0 %2:i64 = lshr 4393751609343:i64, %1 infer %2 known from Souper: 0000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 3 %2:i32 = phi %1, 0:i32, 1:i32, 1:i32 %3:i32 = phi %0, 0:i32, %2 infer %3 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 1 %2:i24 = var (0000000000000000xxxxxxxx) %3:i24 = phi %1, %2 %4 = block 1 %5:i24 = var (0000000000000000xxxxxxxx) %6:i24 = phi %4, %5 %7:i24 = phi %0, %3, %6 infer %7 known from Souper: 0000000000000000xxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1 = block 2 %2:i32 = phi %1, 161:i32, 355:i32 %3:i32 = phi %0, %2, 157:i32, 158:i32, 159:i32, 160:i32 infer %3 known from Souper: 00000000000000000000000xxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = var %2:i64 = sub %0, %1 %3:i64 = var %4:i64 = and 4294967295:i64, %3 %5:i1 = ult %2, %4 %6:i64 = select %5, %2, %4 infer %6 known from Souper: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (000000000000000000000000xxxxxxxx) %1:i16 = trunc %0 %2:i16 = lshr 4481:i16, %1 infer %2 known from Souper: 000xxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var %2:i32 = var %3:i32 = phi %0, %1, %2 %4:i32 = udiv 128:i32, %3 infer %4 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 000000000000000000000000xxxxxxxx llvm is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = udiv 8:i32, %0 infer %1 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 0000000000000000000000000000xxxx llvm is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 3 %2:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %3:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %4:i64 = phi %1, %2, %3, %2 %5:i64 = phi %0, 0:i64, %4 infer %5 known from Souper: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i16 = trunc %0 %2:i16 = lshr 1035:i16, %1 infer %2 known from Souper: 00000xxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (000000000000000000000000xxxxxxxx) %1:i32 = var (000000000000000000000000000xx000) %2:i32 = shl %0, %1 %3:i32 = var (0000000000000000000000000000x000) %4:i32 = lshr 65535:i32, %3 %5:i32 = or %2, %4 infer %5 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxx11111111 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (0000000000000000000000000000000000000000000000000000000000xxxxxx) %1:i64 = subnsw 64:i64, %0 %2:i64 = addnw 4294967295:i64, %1 infer %2 known from Souper: 0000000000000000000000000000000100000000000000000000000000xxxxxx known from compiler: 0000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i32 = var (000000000000000000000000000000xx) %3:i32 = phi %1, %2, 0:i32 %4:i32 = phi %0, 0:i32, %3 infer %4 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = shl 4096:i32, %0 %2:i64 = sext %1 infer %2 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx000000000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (0000000000000000000000000000000x) %2:i32 = xor 1:i32, %1 %3:i32 = phi %0, 0:i32, %2 infer %3 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 3 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i64 = sext %0 %2:i64 = lshr 4074:i64, %1 infer %2 known from Souper: 0000000000000000000000000000000000000000000000000000xxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i32 = trunc %0 %2:i1 = slt %1, 0:i32 %3:i32 = select %2, 0:i32, %1 infer %3 known from Souper: 0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1:i32 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxx000) %2:i32 = add 8:i32, %1 %3:i32 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00) %4:i32 = add 4:i32, %3 %5:i32 = phi %0, %2, %4, 8:i32, 4:i32, 0:i32 infer %5 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i16 = var (000000000000000x) %2:i32 = zext %1 %3:i32 = phi %0, %2, 0:i32, 0:i32 infer %3 known from Souper: 0000000000000000000000000000000x known from compiler: 0000000000000000xxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 6 %1:i32 = var (0000000000000000000000000000000x) %2:i32 = phi %0, %1, 0:i32, 0:i32, 1:i32, 2:i32, 2:i32 %3:i32 = var (00000000000000000000000000000xxx) %4:i32 = var (0000000000000000000000000000000x) %5:i32 = addnw %3, %4 %6:i32 = addnw %2, %5 infer %6 known from Souper: 0000000000000000000000000000xxxx known from compiler: 000000000000000000000000000xxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i64 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00) %3:i64 = phi %1, %2, 0:i64 %4:i64 = phi %0, 0:i64, %3 infer %4 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = sdiv %0, 2:i32 %2:i1 = slt %1, 2:i32 %3:i32 = select %2, 2:i32, %1 infer %3 known from Souper: 00xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i32 = var (0000000000000000000000000000000x) %3:i32 = var (0000000000000000000000000000001x) %4:i32 = phi %1, %2, %3 %5:i32 = or 512:i32, %4 %6:i32 = phi %0, %4, %5 infer %6 known from Souper: 0000000000000000000000x0000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i8 = trunc %0 %2:i8 = lshr 85:i8, %1 infer %2 known from Souper: 0xxxxxxx known from compiler: xxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %1:i64 = mulnw 56:i64, %0 %2:i64 = addnw 80:i64, %1 infer %2 known from Souper: 00000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx000 known from compiler: 0000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx000 souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = shl 1:i32, %0 %2:i1 = ult 536870912:i32, %1 %3:i32 = select %2, 536870912:i32, %1 infer %3 known from Souper: 00xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (00000000000000000000000000xxxxxx) %1:i32 = subnsw 64:i32, %0 %2:i1 = eq 0:i32, %1 infer %2 known from Souper: 0 known from compiler: x souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i32 = var %2:i32 = and 63:i32, %1 %3 = block 2 %4:i32 = var (00000000000000000000000000xxxxxx) %5:i32 = phi %3, %4, 0:i32 %6:i32 = var %7:i32 = and 63:i32, %6 %8:i32 = phi %0, %2, %5, %7 infer %8 known from Souper: 00000000000000000000000000xxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 1 %1:i32 = var (0000000000000000000000011000011x) %2:i32 = phi %0, %1 infer %2 known from Souper: 0000000000000000000000011000011x known from compiler: 00000000000000000000000xx0000xxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 1 %1:i32 = var %2:i32 = phi %0, %1 %3:i1 = slt 0:i32, %2 %4:i32 = select %3, %2, 0:i32 infer %4 known from Souper: 0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 4 %2:i32 = phi %1, 1:i32, 0:i32, 0:i32, 0:i32 %3:i32 = phi %0, %2, 1:i32 infer %3 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (0000000000000xxxxxxxxxxxxxxxxxxx) %1:i32 = and 3:i32, %0 %2 = block 2 %3 = block 1 %4:i32 = var %5:i32 = phi %2, %4, 3:i32 %6:i1 = slt %1, %5 %7:i32 = select %6, %5, %1 infer %7 known from Souper: 0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = lshr %0, 3:i32 %2:i32 = lshr %0, 7:i32 %3:i32 = udiv %1, %2 infer %3 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxx1xxxx known from compiler: 000xxxxxxxxxxxxxxxxxxxxxxxxxxxxx neither is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 1 %1:i32 = var %2:i32 = phi %0, %1 %3:i1 = slt 1:i32, %2 %4:i32 = select %3, %2, 1:i32 infer %4 known from Souper: 0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i1 = var %1:i32 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0) %2:i32 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0) %3:i32 = select %0, %1, %2 %4:i32 = add 4294967295:i32, %3 %5:i32 = and %4, %3 infer %5 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0 souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1:i64 = var (00000000000000000000000000000000000000x0000000000000000000000000) %2:i64 = lshrexact %1, 22:i64 %3:i64 = phi %0, 7:i64, 7:i64, 8:i64, %2 infer %3 known from Souper: 000000000000000000000000000000000000000000000000000000000000xxxx known from compiler: 0000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = add 1:i32, %0 %2:i32 = and %0, %1 infer %2 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = phi %0, 26:i32, 22:i32 %2:i32 = addnw 4:i32, %1 infer %2 known from Souper: 00000000000000000000000000011x10 known from compiler: 00000000000000000000000000xxxx10 souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = lshr %0, 3:i32 %2:i32 = var %3:i32 = lshr %2, 3:i32 %4:i32 = udiv %1, %3 infer %4 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 000xxxxxxxxxxxxxxxxxxxxxxxxxxxxx llvm is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %2:i64 = addnw 1:i64, %1 %3:i64 = phi %0, %2, 0:i64 infer %3 known from Souper: 0000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = udiv 16:i32, %0 infer %1 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 000000000000000000000000000xxxxx llvm is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 2 %2:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %3:i64 = phi %1, %2, 0:i64 %4 = block 2 %5:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %6:i64 = phi %4, %5, 0:i64 %7:i64 = phi %0, %3, %3, %6 infer %7 known from Souper: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (0000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %1:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %2:i64 = addnw %0, %1 %3:i32 = var %4:i64 = zext %3 %5:i64 = addnw %2, %4 infer %5 known from Souper: 000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 00000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i16 = var %1:i16 = add 65534:i16, %0 %2:i16 = lshr 519:i16, %1 infer %2 known from Souper: 000000xxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = udiv %0, 88:i64 %2:i64 = addnw 1:i64, %1 infer %2 known from Souper: 000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 00000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 3 %2:i32 = phi %1, 0:i32, 0:i32, 2:i32 %3:i32 = phi %0, 0:i32, %2 infer %3 known from Souper: 000000000000000000000000000000x0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = add 65535:i32, %0 %2:i32 = and 65535:i32, %0 %3:i32 = and %1, %2 infer %3 known from Souper: 0000000000000000xxxxxxxxxxxxxxx0 known from compiler: 0000000000000000xxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 2 %2:i8 = phi %1, 1:i8, 0:i8 %3:i8 = phi %0, 0:i8, 0:i8, %2 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = and 63:i32, %0 %2:i1 = var %3:i32 = var (00000000000000000000000000xxxxxx) %4:i32 = select %2, 64:i32, %3 %5:i32 = addnw %1, %4 infer %5 known from Souper: 0000000000000000000000000xxxxxxx known from compiler: 000000000000000000000000xxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (000000000000000000000000xxxxxxxx) %1:i32 = ctlz %0 %2:i32 = subnsw 33:i32, %1 infer %2 known from Souper: 0000000000000000000000000000xxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 9 %1:i64 = phi %0, 4:i64, 8:i64, 8:i64, 8:i64, 8:i64, 8:i64, 8:i64, 4:i64, 8:i64 %2:i32 = var %3:i64 = zext %2 %4:i64 = mulnw %1, %3 infer %4 known from Souper: 00000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00 known from compiler: 0000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00 souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 2 %2:i32 = phi %1, 0:i32, 1:i32 %3:i32 = phi %0, %2, %2, 1:i32 infer %3 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (00000000000000000000000000x00000) %2:i32 = or 2:i32, %1 %3:i32 = phi %0, %2, 32:i32 infer %3 known from Souper: 00000000000000000000000000x000x0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i1 = var %2:i64 = var (000000000000000000000000000000000000x0x0x0x0x0x00000000000000000) %3:i64 = select %1, %2, 1073741824:i64 %4:i1 = var %5:i64 = var (00000000000000000000000000000000001x0000000000000000000000000000) %6:i64 = select %4, 1073741824:i64, %5 %7:i64 = phi %0, %3, %6 infer %7 known from Souper: 000000000000000000000000000000000xxxx0x0x0x0x0x00000000000000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = sub 32:i32, %0 %2:i32 = lshr 67:i32, %1 infer %2 known from Souper: 0000000000000000000000000xxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i64 = var %2:i64 = sub %1, %1 %3:i64 = ashrexact %2, 4:i64 infer %3 known from Souper: 0000000000000000000000000000000000000000000000000000000000000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (000xxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %1:i64 = zext %0 %2:i64 = addnw 536870911:i64, %1 %3:i64 = and %2, %1 infer %3 known from Souper: 00000000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxx0 known from compiler: 00000000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i1 = var %1:i32 = zext %0 %2:i32 = shl 4:i32, %1 infer %2 known from Souper: 0000000000000000000000000000xx00 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i8 = var %1:i32 = sext %0 %2:i32 = addnsw 130:i32, %1 infer %2 known from Souper: 00000000000000000000000xxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i8 = var (00xxxxxx) %2:i32 = zext %1 %3 = block 4 %4:i32 = var (00000000000000000000000000xxxxxx) %5:i32 = phi %3, 11:i32, 10:i32, 9:i32, %4 %6:i32 = phi %0, %2, %5 infer %6 known from Souper: 00000000000000000000000000xxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (000000000000000000000000000000xx) %2:i32 = addnw 1:i32, %1 %3:i32 = phi %0, %2, 0:i32 infer %3 known from Souper: 00000000000000000000000000000xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i32 = trunc %0 %2:i1 = ult %1, 16:i32 %3:i32 = select %2, %1, 16:i32 infer %3 known from Souper: 000000000000000000000000000xxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i1 = ult 9:i32, %0 %2:i32 = select %1, 9:i32, %0 infer %2 known from Souper: 0000000000000000000000000000xxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i1 = ult %0, 16:i32 %2:i32 = select %1, %0, 16:i32 infer %2 known from Souper: 000000000000000000000000000xxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i64 = zext %0 %2:i64 = var %3:i64 = var %4:i64 = sub %2, %3 %5:i1 = ult %1, %4 %6:i64 = select %5, %1, %4 infer %6 known from Souper: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (00000000000000000000000000000000000000000000000000000000xxxxxxxx) %1:i64 = shlnw %0, 1:i64 %2:i64 = var %3:i1 = slt %1, %2 %4:i64 = select %3, %2, %1 infer %4 known from Souper: 0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (0000000000000000000000000000000x) %1:i32 = addnw 1:i32, %0 %2:i24 = var (00000000000000000000000x) %3:i32 = zext %2 %4:i32 = addnw %1, %3 infer %4 known from Souper: 000000000000000000000000000000xx known from compiler: 00000000000000000000000000000xxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = lshr %0, 1:i32 %2:i1 = ult %1, 4:i32 %3:i32 = select %2, %1, 4:i32 infer %3 known from Souper: 00000000000000000000000000000xxx known from compiler: 0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (00000000000000000000000000000xxx) %1:i32 = shl 1:i32, %0 %2:i32 = and 4294967292:i32, %1 infer %2 known from Souper: 000000000000000000000000xxxxxx00 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00 souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 1 %1 = block 1 %2:i8 = var (0000000x) %3:i8 = phi %1, %2 %4:i8 = phi %0, %3 infer %4 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i64 = zext %0 %2:i64 = lshr 4398046511281:i64, %1 infer %2 known from Souper: 000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1 = block 2 %2:i8 = phi %1, 0:i8, 1:i8 %3:i8 = phi %0, 0:i8, 0:i8, %2, 1:i8, 1:i8 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i64 = zext %0 %2:i1 = var %3:i64 = var %4:i64 = select %2, 0:i64, %3 %5:i1 = ult %1, %4 %6:i64 = select %5, %1, %4 infer %6 known from Souper: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i1 = slt 2:i32, %0 %2:i32 = select %1, %0, 2:i32 infer %2 known from Souper: 0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxx111) %1:i64 = shl 1:i64, %0 %2:i64 = subnsw 0:i64, %1 infer %2 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i1 = var %2:i32 = var (000000000000000000000000000000x0) %3:i32 = select %1, 1:i32, %2 %4:i32 = phi %0, 0:i32, 0:i32, %3 infer %4 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i32 = phi %1, 0:i32, 1:i32 %3:i32 = phi %0, 1:i32, %2 infer %3 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i32 = phi %1, 26:i32, 22:i32 %3:i32 = addnw 4:i32, %2 %4:i32 = phi %0, %3, %2 infer %4 known from Souper: 0000000000000000000000000001xx10 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i64 = zext %0 %2:i64 = addnw 4294967295:i64, %1 %3:i64 = and %2, %1 infer %3 known from Souper: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0 known from compiler: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i8 = var %1:i32 = sext %0 %2:i32 = addnsw 3118:i32, %1 infer %2 known from Souper: 000000000000000000001xxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (000000000000000000000000xxxxxxxx) %2:i32 = and 15:i32, %1 %3:i1 = var %4:i32 = var (0000000000000000000000000000xxxx) %5:i32 = var (0000000000000000000000000000xxxx) %6:i32 = select %3, %4, %5 %7:i32 = phi %0, %2, %6 infer %7 known from Souper: 0000000000000000000000000000xxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i1 = var %1 = block 2 %2:i64 = var %3:i64 = var %4:i64 = select %0, %2, %3 %5:i64 = add 18446744073709551615:i64, %4 %6:i64 = and %5, %4 infer %6 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = var %2:i64 = sub %0, %1 %3:i8 = var %4:i64 = zext %3 %5:i1 = ult %2, %4 %6:i64 = select %5, %2, %4 infer %6 known from Souper: 00000000000000000000000000000000000000000000000000000000xxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i8 = var %1:i32 = sext %0 %2:i32 = addnsw 2139:i32, %1 infer %2 known from Souper: 00000000000000000000xxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 1 %2:i64 = var (0000000000000000000000000000000000000000000000000000000000000xxx) %3:i64 = phi %1, %2 %4 = block 1 %5:i64 = var (0000000000000000000000000000000000000000000000000000000000000xxx) %6:i64 = phi %4, %5 %7:i64 = phi %0, %3, %6 infer %7 known from Souper: 0000000000000000000000000000000000000000000000000000000000000xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i16 = var %2:i32 = zext %1 %3:i1 = ult %0, %2 %4:i32 = select %3, %0, %2 infer %4 known from Souper: 0000000000000000xxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = and 65535:i32, %0 %2:i32 = var %3:i32 = udiv %1, %2 infer %3 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 0000000000000000xxxxxxxxxxxxxxxx llvm is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 3 %2:i8 = phi %1, 0:i8, 1:i8, 1:i8 %3:i8 = phi %0, %2, 0:i8 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 4 %2:i8 = var %3:i8 = lshr %2, 7:i8 %4 = block 2 %5 = block 2 %6:i8 = var (0000000x) %7:i8 = phi %4, %3, %6 %8:i8 = phi %0, %3, %7 infer %8 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i64 = var %2:i64 = phi %0, %1, 0:i64 %3:i1 = ult 4:i64, %2 %4:i64 = select %3, 4:i64, %2 infer %4 known from Souper: 0000000000000000000000000000000000000000000000000000000000000xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i8 = var %1:i64 = sext %0 %2:i64 = addnsw 4294967248:i64, %1 infer %2 known from Souper: 0000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 2 %2:i32 = phi %1, 0:i32, 1:i32 %3:i1 = var %4:i32 = select %3, 2:i32, %2 %5:i32 = phi %0, %2, %2, %4 infer %5 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 2 %2:i32 = phi %1, 0:i32, 1:i32 %3:i32 = phi %0, 1:i32, 1:i32, %2 infer %3 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i1 = var %1:i32 = var (000000000000000000000000000000x0) %2:i32 = select %0, 1:i32, %1 %3:i32 = addnw 1:i32, %2 infer %3 known from Souper: 000000000000000000000000000000xx known from compiler: 00000000000000000000000000000xxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i8 = var %1:i32 = sext %0 %2:i32 = addnsw 3144:i32, %1 infer %2 known from Souper: 000000000000000000001xxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i32 = phi %1, 0:i32, 1:i32 %3:i32 = phi %0, 0:i32, %2 infer %3 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i32 = var (0000000000000000000000000000000x) %2:i8 = trunc %1 %3:i8 = phi %0, %2, %2, 1:i8 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 18 %1 = block 2 %2:i8 = phi %1, 0:i8, 1:i8 %3 = block 2 %4:i8 = phi %3, 0:i8, 1:i8 %5 = block 2 %6:i8 = phi %5, 0:i8, 1:i8 %7 = block 2 %8:i8 = phi %7, 0:i8, 1:i8 %9:i8 = phi %0, %2, %4, %6, %8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8 infer %9 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 3 %2:i32 = phi %1, 0:i32, 0:i32, 1:i32 %3:i32 = or 2:i32, %2 %4:i32 = phi %0, %3, %2, %2 infer %4 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (000000000000000000000000xxxxxxxx) %1:i64 = zext %0 %2:i64 = cttz %1 infer %2 known from Souper: 000000000000000000000000000000000000000000000000000000000x000xxx known from compiler: 000000000000000000000000000000000000000000000000000000000xxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i1 = var %3:i32 = zext %2 %4:i32 = phi %1, %3, %3 %5:i32 = phi %0, %4, %3 infer %5 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i8 = var %1:i64 = zext %0 %2:i64 = lshr 482528531504055:i64, %1 infer %2 known from Souper: 000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i8 = var %1:i32 = sext %0 %2:i32 = addnsw 2142:i32, %1 infer %2 known from Souper: 00000000000000000000xxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1:i32 = var (000000000000000000000100111111xx) %2:i32 = phi %0, 1279:i32, 1277:i32, 1278:i32, %1 %3:i64 = zext %2 infer %3 known from Souper: 00000000000000000000000000000000000000000000000000000100111111xx known from compiler: 00000000000000000000000000000000000000000000000000000x00xxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1:i64 = var %2:i64 = lshr %1, 32:i64 %3 = block 3 %4:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %5:i64 = phi %3, 0:i64, 0:i64, %4 %6:i64 = var %7:i64 = lshr %6, 32:i64 %8:i64 = var %9:i64 = lshr %8, 32:i64 %10:i64 = phi %0, %2, %5, %7, %9 infer %10 known from Souper: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i1 = eq 0:i32, %0 %2:i32 = var %3:i32 = lshr 67:i32, %2 %4:i32 = select %1, 0:i32, %3 infer %4 known from Souper: 0000000000000000000000000xxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 6 %1:i32 = var (0000000000000000000001000101111x) %2:i32 = var (0000000000000000000001000100010x) %3:i32 = phi %0, 1109:i32, 1102:i32, %1, %2, 1136:i32, 1114:i32 %4:i64 = zext %3 infer %4 known from Souper: 0000000000000000000000000000000000000000000000000000010001xxxxxx known from compiler: 00000000000000000000000000000000000000000000000000000x000xxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1:i1 = var %2:i32 = var (00000000000000000xxxxx0000000000) %3:i32 = select %1, 0:i32, %2 %4:i32 = phi %0, 31744:i32, 31744:i32, 0:i32, %3 infer %4 known from Souper: 00000000000000000xxxxx0000000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (000000000000000000000000000xxxxx) %2:i8 = trunc %1 %3:i8 = var (00000xxx) %4:i8 = var (0000x000) %5:i8 = or %3, %4 %6:i8 = phi %0, %2, %5 infer %6 known from Souper: 000xxxxx known from compiler: xxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (0000000000000000000000000xxxxxxx) %2:i64 = zext %1 %3:i1 = var %4:i64 = select %3, 0:i64, %2 %5:i64 = phi %0, %2, %4 infer %5 known from Souper: 000000000000000000000000000000000000000000000000000000000xxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i8 = var %1:i32 = sext %0 %2:i32 = addnsw 2189:i32, %1 infer %2 known from Souper: 00000000000000000000100xxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 2 %2:i8 = var (0000000x) %3:i8 = phi %1, %2, 0:i8 %4:i8 = phi %0, 0:i8, %3, %3 infer %4 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 4 %2:i32 = phi %1, 1:i32, 0:i32, 0:i32, 0:i32 %3:i32 = phi %0, 1:i32, %2 infer %3 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (000000000000000000000000000000xx) %2:i32 = shl 4:i32, %1 %3:i32 = phi %0, %2, 0:i32 infer %3 known from Souper: 00000000000000000000000000xxxx00 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = udiv 124:i32, %0 %2:i1 = ult %1, 16:i32 %3:i32 = select %2, 16:i32, %1 infer %3 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 0000000000000000000000000xxxxxxx llvm is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i1 = var %3:i8 = zext %2 %4:i8 = var (0000000x) %5:i8 = xor 1:i8, %4 %6:i8 = phi %0, %3, %5 infer %6 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i16 = trunc %0 %2:i16 = lshr 3999:i16, %1 infer %2 known from Souper: 0000xxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 6 %2:i1 = var %3:i8 = zext %2 %4:i1 = var %5:i8 = select %4, 1:i8, %3 %6:i8 = phi %0, %3, %5 infer %6 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i8 = trunc %0 %2:i8 = lshr 47:i8, %1 infer %2 known from Souper: 00xxxxxx known from compiler: xxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 1 %1 = block 1 %2:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %3:i64 = phi %1, %2 %4:i64 = phi %0, %3 infer %4 known from Souper: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (00000000000000000xxxxxxxxxxxxxxx) %1:i32 = and 127:i32, %0 %2:i32 = addnsw 4294967295:i32, %1 %3:i32 = and %2, %1 infer %3 known from Souper: 0000000000000000000000000xxxxxx0 known from compiler: 0000000000000000000000000xxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i32 = phi %1, 1:i32, 2:i32 %3:i32 = phi %0, %2, 2:i32 infer %3 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 3 %2:i1 = var %3:i8 = zext %2 %4 = block 2 %5:i8 = var (0000000x) %6:i8 = phi %4, %5, 0:i8 %7:i8 = phi %0, %3, %6 infer %7 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i1 = ult %0, 4:i64 %2:i64 = select %1, %0, 4:i64 infer %2 known from Souper: 0000000000000000000000000000000000000000000000000000000000000xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i1 = var %1:i64 = select %0, 2:i64, 4:i64 %2:i64 = addnsw 18446744073709551615:i64, %1 infer %2 known from Souper: 00000000000000000000000000000000000000000000000000000000000000x1 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx1 souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i8 = var %1:i32 = sext %0 %2:i32 = addnsw 3132:i32, %1 infer %2 known from Souper: 000000000000000000001xxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var %2:i32 = lshr %1, 28:i32 %3:i32 = var %4:i32 = var (000000000000000000000000000xxx01) %5:i32 = lshr %3, %4 %6:i32 = phi %0, %2, %5 infer %6 known from Souper: 0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx1) %2:i32 = shl %1, 3:i32 %3:i32 = lshr %0, %2 infer %3 known from Souper: 00000000xxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (00000000000000000000000000xxxx10) %2 = block 2 %3:i32 = var (0000000000000000000000000001xx10) %4:i32 = phi %0, %1, %3 %5:i32 = addnsw 2:i32, %4 infer %5 known from Souper: 0000000000000000000000000xxxxx00 known from compiler: 0000000000000000000000000xxxxxx0 souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i64 = zext %0 %2:i64 = lshr 6841882888639:i64, %1 infer %2 known from Souper: 000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i1 = eq 0:i32, %0 %2:i32 = var %3:i32 = lshr 73:i32, %2 %4:i32 = select %1, 0:i32, %3 infer %4 known from Souper: 0000000000000000000000000xxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = var (00000000000000000000000xxxxxxxxx) %2:i32 = and 7:i32, %1 %3:i1 = slt %0, %2 %4:i32 = select %3, %2, %0 infer %4 known from Souper: 0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i16 = var %1:i64 = zext %0 %2:i64 = lshr 26388279068673:i64, %1 infer %2 known from Souper: 0000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i32 = phi %1, 1:i32, 2:i32 %3:i32 = phi %0, 2:i32, %2 infer %3 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i64 = sext %0 %2:i64 = lshr 137715909640:i64, %1 infer %2 known from Souper: 00000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i32 = var (0000000000000000xxxxxxxxxxxxxxxx) %3:i32 = phi %1, %2, 0:i32 %4:i32 = phi %0, 0:i32, %3 infer %4 known from Souper: 0000000000000000xxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 4 %2:i8 = var %3:i8 = lshr %2, 7:i8 %4 = block 2 %5:i8 = phi %4, %3, %3 %6:i8 = phi %0, %3, %5 infer %6 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 3 %2 = block 3 %3:i8 = phi %2, 1:i8, 0:i8, 0:i8 %4:i8 = phi %1, 1:i8, %3, %3 %5:i8 = phi %0, %4, %3, 0:i8 infer %5 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxx0000) %2:i32 = or 8:i32, %1 %3:i32 = lshr %0, %2 infer %3 known from Souper: 00000000xxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i64 = zext %0 %2:i64 = var %3:i1 = ult %1, %2 %4:i64 = select %3, %1, %2 infer %4 known from Souper: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i8 = var (0000000x) %3:i8 = phi %1, %2, 0:i8 %4:i1 = var %5:i8 = zext %4 %6:i8 = phi %0, %3, %5 infer %6 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i64 = zext %0 %2:i64 = var %3:i64 = ashrexact %2, 3:i64 %4:i64 = udiv %1, %3 infer %4 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx llvm is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %1:i64 = mulnw 216:i64, %0 %2:i64 = addnw 1656:i64, %1 infer %2 known from Souper: 000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx000 known from compiler: 00000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx000 souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i32 = trunc %0 %2:i1 = ult 8:i32, %1 %3:i32 = select %2, 8:i32, %1 infer %3 known from Souper: 0000000000000000000000000000xxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i64 = zext %0 %2:i64 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx000) %3:i64 = and 4294967288:i64, %2 %4:i64 = lshr %1, %3 infer %4 known from Souper: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = udiv 128:i32, %0 %2:i32 = udiv 2:i32, %1 infer %2 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 000000000000000000000000000000xx llvm is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 3 %2 = block 2 %3:i32 = var (0000000000000000000000000000000x) %4:i32 = var (000000000000000000000000000000xx) %5:i32 = phi %1, %3, %3, %4 %6:i32 = addnsw 1:i32, %5 %7:i32 = phi %0, %6, %5 infer %7 known from Souper: 00000000000000000000000000000xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i6 = trunc %0 %2:i6 = lshr 28:i6, %1 infer %2 known from Souper: 0xxxxx known from compiler: xxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 4 %2:i8 = phi %1, 1:i8, 0:i8, 0:i8, 1:i8 %3:i8 = phi %0, %2, 0:i8 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i8 = var (000xx000) %2:i8 = or 36:i8, %1 %3:i8 = phi %0, 20:i8, %2 infer %3 known from Souper: 00xxx100 known from compiler: xxxxx1xx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1 = block 3 %2:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %3:i64 = phi %1, %2, 0:i64, 0:i64 %4:i1 = ult %0, %3 %5:i64 = select %4, %0, %3 infer %5 known from Souper: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (00000000000000000000000000xxx000) %1:i64 = zext %0 %2:i64 = shl 1:i64, %1 infer %2 known from Souper: 0000000x0000000x0000000x0000000x0000000x0000000x0000000x0000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i16 = var %1:i64 = zext %0 %2:i64 = lshr 43232:i64, %1 infer %2 known from Souper: 000000000000000000000000000000000000000000000000xxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0) %1:i32 = and 30:i32, %0 %2:i32 = shl 2:i32, %1 infer %2 known from Souper: x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (0000000x00x000000000000000000000) %1:i1 = eq 2097152:i32, %0 %2 = block 2 %3:i32 = var (000000000000000000000000000000x1) %4:i32 = phi %2, %3, 3:i32 %5:i32 = select %1, 1:i32, %4 infer %5 known from Souper: 000000000000000000000000000000x1 known from compiler: 000000000000000000000000000000xx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i1 = var %2:i64 = select %1, 4:i64, 6:i64 %3:i1 = ult %0, %2 %4:i64 = select %3, %0, %2 infer %4 known from Souper: 0000000000000000000000000000000000000000000000000000000000000xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (00xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %1:i32 = trunc %0 %2:i32 = udiv 4:i32, %1 infer %2 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 00000000000000000000000000000xxx llvm is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1 = block 2 %2:i32 = phi %1, 71:i32, 355:i32 %3:i32 = phi %0, %2, 67:i32, 68:i32, 69:i32, 70:i32 infer %3 known from Souper: 00000000000000000000000x01x00xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %1:i1 = ult 63:i64, %0 %2:i64 = subnsw 64:i64, %0 %3:i64 = select %1, 0:i64, %2 infer %3 known from Souper: 000000000000000000000000000000000000000000000000000000000xxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i48 = var (0000000000000000000000000000000000000000000000xx) %1:i48 = shlnw %0, 4:i48 %2:i48 = lshr 25769934848:i48, %1 infer %2 known from Souper: 0000000000000xx00000000000000xx00000000000000xx0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i1 = var %1:i64 = var (000000000000000000000000000000000000000000000000000000000xxxxxxx) %2:i64 = var %3:i64 = select %0, %1, %2 %4:i1 = ult %3, 5:i64 %5:i64 = select %4, %3, 5:i64 infer %5 known from Souper: 0000000000000000000000000000000000000000000000000000000000000xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i8 = trunc %0 %2:i8 = lshr 29:i8, %1 infer %2 known from Souper: 000xxxxx known from compiler: xxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i8 = var %1:i32 = sext %0 %2:i32 = addnsw 3128:i32, %1 infer %2 known from Souper: 000000000000000000001xxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1 = block 2 %2:i32 = phi %1, 171:i32, 355:i32 %3:i32 = phi %0, %2, 167:i32, 168:i32, 169:i32, 170:i32 infer %3 known from Souper: 00000000000000000000000xxx10xxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i7 = trunc %0 %2:i7 = lshr 37:i7, %1 infer %2 known from Souper: 0xxxxxx known from compiler: xxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1 = block 3 %2:i8 = var (0000000x) %3:i8 = phi %1, %2, 0:i8, %2 %4:i1 = var %5:i8 = select %4, %3, 1:i8 %6:i8 = phi %0, %3, 0:i8, %5, 0:i8, 1:i8 infer %6 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (000000000000000000xxxxxxxxxxxxxx) %1:i32 = var (0000000000000000000000000000xxxx) %2:i32 = addnw %0, %1 %3:i32 = var (0000000000000000000000000000xxxx) %4:i32 = mulnw 81:i32, %3 %5:i32 = addnw %2, %4 infer %5 known from Souper: 00000000000000000xxxxxxxxxxxxxxx known from compiler: 0000000000000000xxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = var %2:i32 = add %0, %1 %3:i1 = slt %2, 0:i32 %4:i32 = select %3, 0:i32, %2 infer %4 known from Souper: 0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i1 = var %1:i64 = select %0, 65536:i64, 131072:i64 %2:i64 = subnsw 0:i64, %1 infer %2 known from Souper: 11111111111111111111111111111111111111111111111x0000000000000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0000000000000000 souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i8 = var (0000000x) %3:i8 = phi %1, %2, 0:i8 %4:i8 = phi %0, 1:i8, %3 infer %4 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 3 %2 = block 11 %3:i8 = var (0000000x) %4:i8 = phi %1, %3, 0:i8, 0:i8 %5:i8 = phi %0, 0:i8, %4 infer %5 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i1 = var %1:i1 = var %2:i1 = or %0, %1 %3 = block 2 %4:i32 = var (000000000000000000000000000000x1) %5:i32 = phi %3, 3:i32, %4 %6:i32 = select %2, 1:i32, %5 infer %6 known from Souper: 000000000000000000000000000000x1 known from compiler: 000000000000000000000000000000xx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i1 = var %1:i64 = var (00000000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %2:i64 = select %0, 4:i64, %1 %3:i1 = ult 8:i64, %2 %4:i64 = select %3, 8:i64, %2 infer %4 known from Souper: 000000000000000000000000000000000000000000000000000000000000xxxx known from compiler: 00000000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 1 %1:i32 = var (000000xxxxxxxxxxxxxxxxxxxxxxxxxx) %2:i64 = zext %1 %3:i64 = phi %0, %2 infer %3 known from Souper: 00000000000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 3 %2:i32 = var (0000000000000000000000000000001x) %3 = block 3 %4:i32 = var (0000000000000000000000000000000x) %5:i32 = phi %1, %2, %4, %4 %6:i32 = or 4:i32, %5 %7:i32 = phi %0, %6, %5, %5 infer %7 known from Souper: 00000000000000000000000000000xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i64 = var %2:i32 = trunc %1 %3:i32 = add 4294967295:i32, %2 %4:i32 = and %3, %2 infer %4 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 3 %2:i8 = phi %1, 0:i8, 0:i8, 1:i8 %3:i8 = phi %0, %2, 1:i8 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (000000000000000000000000000000000000000000000000000000000000xxxx) %1:i1 = ult %0, 10:i64 %2:i64 = or 48:i64, %0 %3:i64 = addnw 87:i64, %0 %4:i64 = select %1, %2, %3 infer %4 known from Souper: 000000000000000000000000000000000000000000000000000000000x1xxxxx known from compiler: 000000000000000000000000000000000000000000000000000000000xxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i1 = var %1:i32 = select %0, 135:i32, 131:i32 %2:i32 = mulnw 37:i32, %1 infer %2 known from Souper: 00000000000000000001001x1xx0xx11 known from compiler: 000000000000000000xxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 2 %2:i32 = phi %1, 1:i32, 0:i32 %3:i32 = phi %0, 0:i32, 1:i32, %2 infer %3 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i32 = phi %1, 2:i32, 4:i32 %3:i32 = phi %0, %2, 1:i32 infer %3 known from Souper: 00000000000000000000000000000xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i8 = var %2:i64 = zext %1 %3:i64 = shl 32:i64, %2 infer %3 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i32 = var %3:i64 = zext %2 %4:i64 = phi %1, 0:i64, %3 %5:i64 = phi %0, %4, %3 infer %5 known from Souper: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1:i1 = var %2:i32 = var (00000000000000000000000000xxxxxx) %3:i32 = select %1, 12:i32, %2 %4:i32 = phi %0, 11:i32, 10:i32, 9:i32, %3 infer %4 known from Souper: 00000000000000000000000000xxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i64 = zext %0 %2:i1 = ult %1, 64:i64 %3:i64 = select %2, %1, 64:i64 infer %3 known from Souper: 000000000000000000000000000000000000000000000000000000000xxxxxxx known from compiler: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i32 = var (000000000000000000000000000000xx) %3:i32 = phi %1, 1:i32, %2 %4:i32 = var (00000000000000000000000000000xxx) %5:i32 = addnw %3, %4 %6:i32 = phi %0, %5, %3 infer %6 known from Souper: 0000000000000000000000000000xxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i16 = var %1:i16 = and 65532:i16, %0 %2:i16 = bswap %1 infer %2 known from Souper: xxxxxx00xxxxxxxx known from compiler: xxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = ashrexact %0, 3:i64 %2:i64 = and 18446744073709551612:i64, %1 %3:i64 = subnsw %1, %2 infer %3 known from Souper: 00000000000000000000000000000000000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i6 = trunc %0 %2:i6 = lshr 29:i6, %1 infer %2 known from Souper: 0xxxxx known from compiler: xxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 3 %2:i8 = var (0000000x) %3:i8 = phi %1, %2, %2, 0:i8 %4:i8 = phi %0, %3, 0:i8 infer %4 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 2 %2:i8 = var (0000000x) %3:i8 = phi %1, 1:i8, %2 %4:i8 = var (0000000x) %5:i8 = and %3, %4 %6:i8 = phi %0, %5, %3, %3 infer %6 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1:i1 = var %2:i8 = var (0000000x) %3:i8 = select %1, %2, 0:i8 %4:i8 = phi %0, 0:i8, 0:i8, 0:i8, %3 infer %4 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = and 4095:i32, %0 %2:i32 = var (000000000000000000000000000xxxxx) %3:i32 = and 30:i32, %2 %4:i32 = lshr %1, %3 infer %4 known from Souper: 00000000000000000000xxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = sub 32:i32, %0 %2:i32 = lshr 73:i32, %1 infer %2 known from Souper: 0000000000000000000000000xxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (0000000000000000000000000000000x) %2:i32 = shlnw %1, 30:i32 %3:i32 = phi %0, %2, %2 infer %3 known from Souper: 0x000000000000000000000000000000 known from compiler: xx000000000000000000000000000000 souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %1:i64 = var %2:i1 = ult %0, %1 %3:i64 = select %2, %0, %1 infer %3 known from Souper: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 3 %2:i32 = var (00000000000000000000000000000xx0) %3:i32 = phi %1, 6:i32, 7:i32, %2 %4:i32 = phi %0, 6:i32, %3 infer %4 known from Souper: 00000000000000000000000000000xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i32 = var %2:i64 = zext %1 %3:i1 = var %4:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %5:i32 = var %6:i64 = zext %5 %7:i64 = select %3, %4, %6 %8:i64 = phi %0, %2, %7, %6 infer %8 known from Souper: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2 = block 2 %3:i32 = var %4:i64 = zext %3 %5:i64 = phi %1, %4, %4 %6:i64 = phi %0, %5, %4 infer %6 known from Souper: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 1 %2:i64 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00) %3:i64 = phi %1, %2 %4 = block 1 %5:i64 = phi %4, %2 %6:i64 = phi %0, %3, %5 infer %6 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = and 18374686479671623679:i64, %0 %2:i64 = bswap %1 infer %2 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i32 = trunc %0 %2:i1 = ult %1, 5:i32 %3:i32 = select %2, %1, 1:i32 infer %3 known from Souper: 00000000000000000000000000000xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 3 %2:i32 = phi %1, 1:i32, 0:i32, 0:i32 %3:i32 = phi %0, %2, 1:i32 infer %3 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i8 = var %1:i64 = sext %0 %2:i64 = addnsw 4294967293:i64, %1 infer %2 known from Souper: 0000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1 = block 2 %2:i32 = phi %1, 66:i32, 355:i32 %3:i32 = phi %0, %2, 62:i32, 63:i32, 64:i32, 65:i32 infer %3 known from Souper: 00000000000000000000000x0xxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = var (000000000000000000000000xxxxxxxx) %2:i32 = urem %0, %1 %3:i64 = zext %2 infer %3 known from Souper: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 00000000000000000000000000000000000000000000000000000000xxxxxxxx llvm is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i8 = var %1:i32 = sext %0 %2:i32 = addnsw 3194:i32, %1 infer %2 known from Souper: 000000000000000000001xxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (000000000000000000000000000xxxxx) %1:i64 = zext %0 %2:i64 = lshr 43706:i64, %1 infer %2 known from Souper: 000000000000000000000000000000000000000000000000xxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i32 = var (000000000000000000000000000000x0) %2:i32 = or 13:i32, %1 %3:i32 = phi %0, 15:i32, 0:i32, %2 infer %3 known from Souper: 0000000000000000000000000000xxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i1 = var %1:i32 = select %0, 4294967295:i32, 1:i32 %2:i1 = var %3:i32 = select %2, 4294967295:i32, 1:i32 %4:i32 = mulnsw %1, %3 infer %4 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx1 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = add 4294967295:i32, %0 %2:i32 = var (00000000000000000000000010000x11) %3:i32 = mulnw 37:i32, %2 %4:i32 = and %1, %3 infer %4 known from Souper: 0000000000000000000x00xxxxx0xxxx known from compiler: 000000000000000000xxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i1 = ult %0, 6:i64 %2:i64 = select %1, %0, 6:i64 infer %2 known from Souper: 0000000000000000000000000000000000000000000000000000000000000xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (0000000000000000000000000000000x) %1:i32 = addnw 1:i32, %0 %2:i32 = var (00000000xxxxxxxxxxxxxxxxxxxxxxxx) %3:i32 = and 1:i32, %2 %4:i32 = addnw %1, %3 infer %4 known from Souper: 000000000000000000000000000000xx known from compiler: 00000000000000000000000000000xxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i32 = phi %1, 2:i32, 1:i32 %3:i32 = phi %0, %2, 0:i32 infer %3 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = udiv 128:i32, %0 %2:i32 = addnw 1:i32, %1 infer %2 known from Souper: 000000000000000000000000xxxxxxxx known from compiler: 00000000000000000000000xxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 3 %2:i32 = phi %1, 1:i32, 2:i32, 1:i32 %3:i32 = phi %0, 2:i32, %2 infer %3 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = lshr %0, 3:i32 %2:i32 = addnsw 4294967295:i32, %1 %3:i32 = and %2, %1 infer %3 known from Souper: 000xxxxxxxxxxxxxxxxxxxxxxxxxxxx0 known from compiler: 000xxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (000000000000000000000000000000000000000000000000xxxxxxxxxxxxxxxx) %1:i64 = ctpop %0 %2:i32 = trunc %1 infer %2 known from Souper: 000000000000000000000000000xxxxx known from compiler: 0000000000000000000000000xxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i32 = var (000000000000000000000000000000xx) %3:i32 = phi %1, %2, 2:i32 %4:i32 = phi %0, 2:i32, %3 infer %4 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1:i32 = var (000000000000000000000000000xxxx0) %2:i32 = var (000000000000000000000000000xxxx0) %3:i32 = phi %0, 0:i32, %1, %2, %1 %4:i32 = lshr 255:i32, %3 infer %4 known from Souper: 000000000000000000000000xxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = udiv 128:i32, %0 %2:i32 = udiv 3:i32, %1 infer %2 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 000000000000000000000000000000xx llvm is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 2 %2:i8 = phi %1, 0:i8, 1:i8 %3:i8 = phi %0, 0:i8, %2, 0:i8 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i8 = var %1:i32 = sext %0 %2:i32 = addnsw 2136:i32, %1 infer %2 known from Souper: 00000000000000000000xxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i1 = var %2:i8 = zext %1 %3 = block 1 %4:i8 = var (0000000x) %5:i8 = phi %3, %4 %6:i8 = phi %0, %2, %5 infer %6 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i64 = sext %0 %2:i64 = lshr 2272176177668:i64, %1 infer %2 known from Souper: 0000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 1 %2:i64 = var (000000000000000000000000000000000000000000000000000000000000000x) %3:i64 = phi %1, %2 %4 = block 1 %5:i64 = phi %4, %2 %6:i64 = phi %0, %3, %5 infer %6 known from Souper: 000000000000000000000000000000000000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = ashr %0, 31:i32 %2:i32 = addnsw 256:i32, %1 infer %2 known from Souper: 00000000000000000000000xxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = lshr %0, 3:i64 %2:i64 = addnw 2305843009213693951:i64, %1 %3:i64 = and %2, %1 infer %3 known from Souper: 000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0 known from compiler: 000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = shl %0, 2:i32 %2:i32 = mul %0, %1 infer %2 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxx0x00 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00 souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i1 = ult %0, 8:i64 %2:i64 = select %1, %0, 8:i64 infer %2 known from Souper: 000000000000000000000000000000000000000000000000000000000000xxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i8 = var %1:i32 = zext %0 %2:i32 = lshr 196735:i32, %1 infer %2 known from Souper: 00000000000000xxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1:i32 = var (0000000000000000000xx1xxxxx011xx) %2:i32 = var (0000000000000000000xx1xxxx1x1xxx) %3:i32 = phi %0, %1, %2, 1269:i32, 1272:i32 %4:i64 = zext %3 infer %4 known from Souper: 000000000000000000000000000000000000000000000000000xx1xxxxxxxxxx known from compiler: 000000000000000000000000000000000000000000000000000xxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1 = block 3 %2:i8 = var (0000000x) %3:i8 = phi %1, 0:i8, 0:i8, %2 %4:i1 = var %5:i8 = select %4, %3, 1:i8 %6:i8 = phi %0, %3, %3, %5, %3, %3 infer %6 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 7 %1 = block 2 %2 = block 3 %3:i8 = var (0000000x) %4:i8 = phi %2, %3, 0:i8, 0:i8 %5 = block 3 %6:i8 = var (0000000x) %7:i8 = phi %5, %6, 0:i8, 0:i8 %8:i8 = phi %1, %4, %7 %9:i8 = phi %0, 0:i8, %8, %4, %4, %7, %7, 0:i8 infer %9 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = shl %0, 3:i32 %2:i32 = lshr 16777216:i32, %1 infer %2 known from Souper: 0000000x0000000x0000000x0000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i1 = ult %0, 63:i64 %2:i64 = select %1, %0, 63:i64 infer %2 known from Souper: 0000000000000000000000000000000000000000000000000000000000xxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 5 %2:i64 = phi %1, 4:i64, 8:i64, 16:i64, 4:i64, 4:i64 %3:i64 = phi %0, %2, 16:i64 infer %3 known from Souper: 00000000000000000000000000000000000000000000000000000000000xxx00 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i1 = ult %0, 5:i64 %2:i64 = select %1, %0, 5:i64 infer %2 known from Souper: 0000000000000000000000000000000000000000000000000000000000000xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i1 = var %2:i32 = select %1, 8:i32, 4:i32 %3:i32 = addnsw 4294967295:i32, %2 infer %3 known from Souper: 00000000000000000000000000000x11 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx11 souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 3 %2:i8 = var (0000000x) %3:i8 = phi %1, %2, 1:i8, %2 %4:i8 = phi %0, %3, 1:i8, %3 infer %4 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 1 %1:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %2:i64 = addnw 1:i64, %1 %3:i64 = phi %0, %2 infer %3 known from Souper: 0000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = phi %0, 64:i32, 32:i32 %2:i32 = subnsw 64:i32, %1 infer %2 known from Souper: 00000000000000000000000000x00000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxx00000 souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i16 = trunc %0 %2:i16 = lshr 279:i16, %1 infer %2 known from Souper: 0000000xxxxxxxxx known from compiler: xxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx000) %1:i64 = udiv %0, 24:i64 %2:i64 = addnw 1:i64, %1 infer %2 known from Souper: 0000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1:i32 = var (0000000000000000000000000000x01x) %2:i32 = phi %0, 10:i32, 10:i32, %1, 10:i32, 10:i32 %3:i32 = and 3:i32, %2 infer %3 known from Souper: 0000000000000000000000000000001x known from compiler: 000000000000000000000000000000xx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (000000000000000000000000000xxxxx) %2:i32 = addnw 1:i32, %1 %3:i32 = phi %0, %2, 33:i32 infer %3 known from Souper: 00000000000000000000000000xxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %1:i64 = mulnw 68:i64, %0 %2:i64 = addnw 56:i64, %1 infer %2 known from Souper: 0000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00 known from compiler: 000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00 souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1:i1 = var %2:i32 = var (0xxxxxxxx00000000000000000000000) %3:i32 = select %1, 0:i32, %2 %4:i32 = phi %0, 2139095040:i32, 2139095040:i32, 0:i32, %3 infer %4 known from Souper: 0xxxxxxxx00000000000000000000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = phi %0, 16:i32, 8:i32 %2:i32 = shl 1:i32, %1 infer %2 known from Souper: 000000000000000x0000000x00000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i64 = var (00000000000000000000000000000000000000000000000000000000xxxxxxxx) %2:i64 = cttz %1 %3:i64 = phi %0, %2, 64:i64 infer %3 known from Souper: 000000000000000000000000000000000000000000000000000000000x000xxx known from compiler: 000000000000000000000000000000000000000000000000000000000xxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (00000000000000000000000xxxxxxxxx) %1:i1 = ult %0, 3:i32 %2:i32 = var %3:i32 = udiv 128:i32, %2 %4:i32 = select %1, %3, 0:i32 infer %4 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 000000000000000000000000xxxxxxxx llvm is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00) %1:i32 = trunc %0 %2:i32 = bswap %1 infer %2 known from Souper: xxxxxx00xxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 3 %2:i32 = var (0000000000000000000000000000000x) %3:i32 = var (0000000000000000000000000000000x) %4:i32 = phi %1, %2, %2, %3 %5:i32 = phi %0, 0:i32, 0:i32, %4 infer %5 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i8 = var (001xx100) %3:i8 = phi %1, 20:i8, %2 %4:i8 = phi %0, %3, 20:i8 infer %4 known from Souper: 00xxx100 known from compiler: xxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var %2:i64 = zext %1 %3:i1 = var %4:i64 = var %5:i64 = select %3, %4, 2:i64 %6:i1 = ult %2, %5 %7:i64 = select %6, %2, %5 infer %7 known from Souper: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 18 %1 = block 2 %2:i64 = phi %1, 0:i64, 4294967296:i64 %3 = block 2 %4:i64 = phi %3, 0:i64, 4294967296:i64 %5 = block 2 %6:i64 = phi %5, 0:i64, 4294967296:i64 %7 = block 2 %8:i64 = phi %7, 0:i64, 4294967296:i64 %9:i64 = phi %0, %2, %4, %6, %8, 0:i64, 0:i64, 0:i64, 0:i64, 0:i64, 0:i64, 0:i64, 0:i64, 0:i64, 0:i64, 0:i64, 0:i64, 0:i64, 0:i64 infer %9 known from Souper: 0000000000000000000000000000000x00000000000000000000000000000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i8 = var (0000000x) %2:i8 = xor 1:i8, %1 %3:i1 = var %4:i8 = zext %3 %5:i8 = phi %0, %2, %4 infer %5 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i48 = var (000000000000000000000000000000000000000000xx0000) %1:i48 = lshr 25769934848:i48, %0 %2:i16 = trunc %1 infer %2 known from Souper: 0000000000000xx0 known from compiler: xxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (0000000000000000xxxxxxxxxxxxxxxx) %1:i32 = var (0000000000000000000000000000001x) %2:i32 = lshr %0, %1 %3:i32 = var (0000000000000000xxxxxxxxxxxxxxxx) %4:i32 = lshr %3, %1 %5:i32 = or %2, %4 infer %5 known from Souper: 000000000000000000xxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i32 = trunc %0 %2:i32 = var %3:i32 = and 2147483647:i32, %2 %4:i32 = urem %1, %3 infer %4 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx llvm is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = add 4294967273:i32, %0 %2:i32 = lshr 198271:i32, %1 infer %2 known from Souper: 00000000000000xxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i8 = var %2:i1 = eq 0:i8, %1 %3:i32 = var (00000000000000000000000000x1xx00) %4:i32 = var (0000000000000000xxxxxxxxxxxxxxxx) %5:i32 = addnw %3, %4 %6:i32 = addnw 132:i32, %5 %7:i32 = select %2, %5, %6 infer %7 known from Souper: 000000000000000xxxxxxxxxxxxxxxxx known from compiler: 00000000000000xxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = shl %0, 1:i32 %2:i32 = urem %1, 12:i32 infer %2 known from Souper: 0000000000000000000000000000xxx0 known from compiler: 0000000000000000000000000000xxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i64 = zext %0 %2:i64 = lshr 9346420326401:i64, %1 infer %2 known from Souper: 00000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (000000000000000000000000xxxxxxxx) %1:i32 = addnsw 4294967269:i32, %0 %2:i32 = lshr 2031647:i32, %1 infer %2 known from Souper: 00000000000xxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i32 = var (xxxxxxxxxxxxxxxxxxxxxxxxxx000000) %3:i32 = var (xxxxxxxxxxxxxxxxxxxxxxxxxx000000) %4:i32 = phi %1, %2, %3 %5:i32 = phi %0, 0:i32, %4 infer %5 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxx000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i8 = var (0000000x) %2:i8 = phi %0, %1, 0:i8, %1 %3:i1 = ne 0:i8, %2 %4:i8 = select %3, %2, 1:i8 infer %4 known from Souper: 00000001 known from compiler: 0000000x souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %1:i64 = mulnw 24:i64, %0 %2:i64 = addnw 48:i64, %1 infer %2 known from Souper: 000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx000 known from compiler: 00000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx000 souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 6 %1:i8 = var %2:i8 = and 1:i8, %1 %3 = block 4 %4:i8 = var (0000000x) %5:i8 = phi %3, 0:i8, 0:i8, 0:i8, %4 %6:i8 = phi %0, 0:i8, %2, %5, %5, %5, %5 infer %6 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 3 %2 = block 3 %3:i8 = var (0000000x) %4:i8 = phi %1, %3, 1:i8, %3 %5:i8 = phi %0, %4, 1:i8, %4 infer %5 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = sub 0:i64, %0 %2:i32 = var %3:i64 = zext %2 %4:i64 = urem %1, %3 infer %4 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx llvm is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (0000000000000000000000000000xxxx) %1:i32 = mulnw 729:i32, %0 %2:i32 = var (0000000000000000xxxxxxxxxxxxxxxx) %3:i32 = and 15:i32, %2 %4:i32 = addnw %1, %3 infer %4 known from Souper: 000000000000000000xxxxxxxxxxxxxx known from compiler: 00000000000000000xxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = shl 2:i32, %0 infer %1 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1:i32 = var (000000000000000000000000000000xx) %2:i64 = zext %1 %3:i64 = shl 1:i64, %2 infer %3 known from Souper: 000000000000000000000000000000000000000000000000000000000000xxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 6 %2:i32 = var (0000000000000000000000000000000x) %3:i32 = phi %1, %2, 0:i32, 0:i32, 1:i32, 2:i32, 2:i32 %4:i32 = addnw 1:i32, %3 %5:i32 = phi %0, %4, %3 infer %5 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 7 %2:i32 = var (0000000000000000000000000000xxxx) %3:i32 = phi %1, 1:i32, 2:i32, 3:i32, 4:i32, 5:i32, 6:i32, %2 %4:i32 = phi %0, %3, 0:i32 infer %4 known from Souper: 0000000000000000000000000000xxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (0000000000000000000000xxxxxxxxxx) %1:i1 = eq 0:i32, %0 %2:i32 = addnsw 4294967295:i32, %0 %3:i32 = select %1, 0:i32, %2 infer %3 known from Souper: 0000000000000000000000xxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i1 = var %1:i32 = var (000000000000000000000000x0000000) %2:i32 = select %0, 64:i32, %1 %3:i32 = var %4:i32 = udiv %2, %3 infer %4 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 000000000000000000000000xxxxxxxx llvm is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i64 = zext %0 %2:i64 = lshr 4393751609343:i64, %1 infer %2 known from Souper: 0000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx000) %1:i64 = addnsw 18446744073709551592:i64, %0 %2:i64 = udiv %1, 24:i64 infer %2 known from Souper: 0000x0x0x0x0x0x0x0x0x0x0x0x0x0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 0000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 1 %1:i32 = var (000000000000000000000000xxxxxxxx) %2:i32 = var (0000000000000000000000000000000x) %3:i32 = or %1, %2 %4:i32 = phi %0, %3 infer %4 known from Souper: 000000000000000000000000xxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i1 = ult 65535:i32, %0 %2:i32 = select %1, 0:i32, %0 infer %2 known from Souper: 0000000000000000xxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i1 = slt %0, 1:i64 %2:i64 = select %1, 9223372036854775807:i64, %0 infer %2 known from Souper: 0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxx000) %1:i32 = lshr 16777216:i32, %0 %2:i64 = zext %1 infer %2 known from Souper: 000000000000000000000000000000000000000x0000000x0000000x0000000x known from compiler: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %1:i64 = mulnw 80:i64, %0 %2:i64 = addnw 72:i64, %1 infer %2 known from Souper: 0000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx1000 known from compiler: 000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx1000 souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i1 = slt %0, 0:i32 %2:i32 = select %1, 8:i32, %0 infer %2 known from Souper: 0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2 = block 2 %3:i8 = var (0000000x) %4:i8 = var (0000000x) %5:i8 = phi %1, %3, %4 %6:i1 = var %7:i8 = select %6, 0:i8, %5 %8:i8 = phi %0, %5, %7 infer %8 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i32 = trunc %0 %2:i32 = var %3:i32 = udiv 128:i32, %2 %4:i32 = urem %1, %3 infer %4 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 000000000000000000000000xxxxxxxx llvm is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i64 = zext %0 %2:i64 = cttz %1 infer %2 known from Souper: 000000000000000000000000000000000000000000000000000000000x0xxxxx known from compiler: 000000000000000000000000000000000000000000000000000000000xxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (00000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %1:i64 = var (000000000000000000000000000000000000000000000000000000000000000x) %2:i64 = addnw %0, %1 %3:i64 = var %4:i64 = lshr %3, 8:i64 %5:i1 = ult %2, %4 %6:i64 = select %5, %2, %4 infer %6 known from Souper: 00000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 0000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = udiv %0, 1000000000:i32 %2:i32 = mul 3294967296:i32, %1 infer %2 known from Souper: xx0xxx0xxxxxxxxxxxxxxxx000000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxx000000000 souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i8 = var %1:i64 = zext %0 %2:i64 = lshr 17596346793985:i64, %1 infer %2 known from Souper: 0000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = lshr 233:i64, %0 infer %1 known from Souper: 00000000000000000000000000000000000000000000000000000000xxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i1 = var %1:i32 = zext %0 %2:i32 = var %3:i32 = shl %2, 3:i32 %4:i32 = shl %1, %3 infer %4 known from Souper: 0000000x0000000x0000000x0000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 7 %1:i32 = var (0000000000000000000000000000000x) %2:i32 = addnw 7:i32, %1 %3:i32 = phi %0, 1:i32, 2:i32, 3:i32, 4:i32, 5:i32, 6:i32, %2 infer %3 known from Souper: 0000000000000000000000000000xxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (0000000000000000000000000000xxxx) %2:i32 = cttz %1 %3:i32 = phi %0, %2, 32:i32 infer %3 known from Souper: 00000000000000000000000000x000xx known from compiler: 00000000000000000000000000xxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var %2:i32 = and 65535:i32, %1 %3 = block 1 %4:i32 = var (0000000000000000xxxxxxxxxxxxxxxx) %5:i32 = phi %3, %4 %6:i32 = phi %0, %2, %5 infer %6 known from Souper: 0000000000000000xxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 1 %1:i32 = var (0000000000000000000000000000000x) %2:i64 = zext %1 %3:i64 = phi %0, %2 infer %3 known from Souper: 000000000000000000000000000000000000000000000000000000000000000x known from compiler: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0) %1:i64 = and 4294967294:i64, %0 %2:i64 = var %3:i64 = udiv %1, %2 infer %3 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx llvm is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i16 = var %1:i32 = zext %0 %2:i32 = lshr 128:i32, %1 infer %2 known from Souper: 000000000000000000000000xxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 3 %2:i8 = phi %1, 0:i8, 0:i8, 1:i8 %3:i8 = phi %0, %2, 0:i8 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = udiv 8:i32, %0 %2:i1 = ult 1:i32, %1 %3:i32 = select %2, %1, 1:i32 infer %3 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 0000000000000000000000000000xxxx llvm is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %1:i32 = trunc %0 %2:i1 = ult 10:i32, %1 %3:i32 = select %2, 10:i32, %1 infer %3 known from Souper: 0000000000000000000000000000xxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i8 = var %1:i32 = sext %0 %2:i32 = addnsw 3138:i32, %1 infer %2 known from Souper: 000000000000000000001xxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i8 = var %1:i32 = sext %0 %2:i32 = addnsw 3102:i32, %1 infer %2 known from Souper: 000000000000000000001xxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2 = block 2 %3:i32 = var (000000000000000000000000000000xx) %4:i32 = phi %1, %3, 2:i32 %5:i32 = phi %0, %4, 3:i32 infer %5 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i5 = trunc %0 %2:i5 = lshr 12:i5, %1 infer %2 known from Souper: 0xxxx known from compiler: xxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i1 = var %1:i64 = select %0, 18446744073709551615:i64, 1:i64 %2:i64 = addnsw 1:i64, %1 infer %2 known from Souper: 00000000000000000000000000000000000000000000000000000000000000x0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0 souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i8 = var %1:i32 = sext %0 %2:i32 = addnsw 3135:i32, %1 infer %2 known from Souper: 000000000000000000001xxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i32 = phi %1, 2:i32, 1:i32 %3:i32 = phi %0, %2, 1:i32 infer %3 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1:i64 = var (00000000000000000000000000000000000000000000000000000000000x0000) %2:i64 = lshrexact %1, 3:i64 %3:i64 = phi %0, 4:i64, 0:i64, %2, 0:i64 infer %3 known from Souper: 0000000000000000000000000000000000000000000000000000000000000xx0 known from compiler: 000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i1 = slt %0, 2:i32 %2:i32 = select %1, 2:i32, %0 infer %2 known from Souper: 0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i1 = var %1:i32 = zext %0 %2:i32 = shl 2:i32, %1 infer %2 known from Souper: 00000000000000000000000000000xx0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 4 %2:i32 = phi %1, 1:i32, 1:i32, 0:i32, 0:i32 %3:i32 = phi %0, %2, 1:i32 infer %3 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (00000000000000000xxxxxxxxxxxxxxx) %1:i32 = var (000000000000000000000xxxxxxxxxxx) %2:i32 = addnw %0, %1 %3:i32 = var (0000000000000000000000000000xxxx) %4:i32 = mulnw 9:i32, %3 %5:i32 = addnw %2, %4 infer %5 known from Souper: 0000000000000000xxxxxxxxxxxxxxxx known from compiler: 000000000000000xxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (00000000000000000000000000000xx0) %1:i32 = shl 3:i32, %0 %2:i32 = xor 255:i32, %1 infer %2 known from Souper: 000000000000000000000000xxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i32 = phi %1, 2:i32, 1:i32 %3:i32 = addnw 1:i32, %2 %4:i32 = phi %0, %3, %2 infer %4 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %1:i64 = udiv %0, 4294967295:i64 %2:i64 = addnw 1:i64, %1 infer %2 known from Souper: 0000000000000000000000000000000000000000000000000000000000000xxx known from compiler: 000000000000000000000000000000000000000000000000000000000000xxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = shl 1:i32, %0 %2:i1 = ult 32:i32, %1 %3:i32 = select %2, %1, 32:i32 infer %3 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxx00000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (0000000000000000xxxxxxxxxxxxxxxx) %1:i32 = var %2:i32 = udiv %0, %1 %3:i64 = zext %2 infer %3 known from Souper: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 000000000000000000000000000000000000000000000000xxxxxxxxxxxxxxxx llvm is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = phi %0, 1:i32, 2:i32 %2:i32 = subnsw 2:i32, %1 infer %2 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i64 = sext %0 %2:i64 = lshr 32750:i64, %1 infer %2 known from Souper: 0000000000000000000000000000000000000000000000000xxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i8 = var %1:i32 = sext %0 %2:i32 = addnsw 2101:i32, %1 infer %2 known from Souper: 00000000000000000000xxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (00xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %1:i32 = trunc %0 %2:i32 = udiv 124:i32, %1 infer %2 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 0000000000000000000000000xxxxxxx llvm is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1 = block 2 %2:i32 = var %3:i64 = zext %2 %4:i1 = ult %0, %3 %5:i64 = select %4, %0, %3 infer %5 known from Souper: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = var (000000000000000000000000000000000000000000000000xxxxxxxxxxxxxxxx) %2:i64 = and %0, %1 %3:i64 = ctpop %2 infer %3 known from Souper: 00000000000000000000000000000000000000000000000000000000000xxxxx known from compiler: 000000000000000000000000000000000000000000000000000000000xxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = addnsw 1:i32, %0 %2:i64 = var (000000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %3:i32 = trunc %2 %4:i32 = urem %1, %3 infer %4 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx llvm is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = add 18446744073709551615:i64, %0 %2:i64 = or 18446744073709551552:i64, %0 %3:i64 = and %1, %2 infer %3 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i1 = var %2:i1 = var %3:i8 = zext %2 %4:i8 = select %1, 0:i8, %3 %5:i8 = phi %0, %4, %3, %3 infer %5 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i12 = trunc %0 %2:i12 = lshr 992:i12, %1 infer %2 known from Souper: 00xxxxxxxxxx known from compiler: xxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i64 = sext %0 %2:i64 = lshr 8673:i64, %1 infer %2 known from Souper: 00000000000000000000000000000000000000000000000000xxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 3 %2:i8 = phi %1, 1:i8, 0:i8, 0:i8 %3:i8 = phi %0, %2, 1:i8, %2 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i8 = phi %1, 0:i8, 1:i8 %3:i8 = phi %0, 1:i8, %2 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = lshr %0, 3:i32 %2:i64 = var %3:i32 = trunc %2 %4:i1 = ult %1, %3 %5:i32 = select %4, %1, %3 infer %5 known from Souper: 000xxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = phi %0, 2:i32, 1:i32 %2:i32 = addnw 3:i32, %1 infer %2 known from Souper: 0000000000000000000000000000010x known from compiler: 00000000000000000000000000000xxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i32 = var (0000000000000000000000000000000x) %2:i8 = trunc %1 %3:i8 = phi %0, %2, 1:i8, 1:i8 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (000000000000000000000000000000000000000000000000xxxxxxxxxxxxxxxx) %1:i64 = mulnw 40:i64, %0 %2:i64 = addnw 52:i64, %1 infer %2 known from Souper: 000000000000000000000000000000000000000000xxxxxxxxxxxxxxxxxxx100 known from compiler: 00000000000000000000000000000000000000000xxxxxxxxxxxxxxxxxxxx100 souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i16 = trunc %0 %2:i16 = lshr 16191:i16, %1 infer %2 known from Souper: 00xxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 3 %2:i32 = phi %1, 1:i32, 1:i32, 0:i32 %3:i32 = phi %0, 1:i32, %2 infer %3 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (0000000000000000000000000000xxxx) %1:i16 = trunc %0 %2:i16 = lshr 4623:i16, %1 infer %2 known from Souper: 000xxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %1:i64 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00000000000000000000000000000000) %2:i64 = or %0, %1 %3:i32 = var %4:i64 = zext %3 %5:i64 = urem %2, %4 infer %5 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx llvm is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = var (000xxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %2:i32 = mul %0, %1 %3:i32 = var %4:i32 = lshr %3, 3:i32 %5:i32 = urem %2, %4 infer %5 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 000xxxxxxxxxxxxxxxxxxxxxxxxxxxxx llvm is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i8 = var %1:i32 = sext %0 %2:i32 = addnsw 2178:i32, %1 infer %2 known from Souper: 00000000000000000000100xxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i8 = var %1:i32 = sext %0 %2:i32 = addnsw 3141:i32, %1 infer %2 known from Souper: 000000000000000000001xxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1 = block 2 %2:i32 = phi %1, 81:i32, 355:i32 %3:i32 = phi %0, %2, 77:i32, 78:i32, 79:i32, 80:i32 infer %3 known from Souper: 00000000000000000000000x01xxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i1 = ult 6:i64, %0 %2:i64 = select %1, 6:i64, %0 infer %2 known from Souper: 0000000000000000000000000000000000000000000000000000000000000xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (00000000000000000000000000000xxx) %1:i32 = var (0000000000000000000000000000000x) %2:i32 = addnw %0, %1 %3:i1 = var %4:i32 = zext %3 %5:i32 = addnw %2, %4 infer %5 known from Souper: 0000000000000000000000000000xxxx known from compiler: 000000000000000000000000000xxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 3 %2:i8 = var (0000000x) %3:i8 = phi %1, %2, 0:i8, 0:i8 %4 = block 3 %5:i8 = var (0000000x) %6:i8 = phi %4, %5, 0:i8, 0:i8 %7:i8 = phi %0, %3, %6 infer %7 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i8 = var (0000xxxx) %2:i32 = zext %1 %3:i32 = urem %0, %2 infer %3 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 0000000000000000000000000000xxxx llvm is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (0000000000000000000010xxx01xx01x) %2:i32 = phi %0, %1, 74:i32 %3:i64 = zext %2 infer %3 known from Souper: 0000000000000000000000000000000000000000000000000000x0xxxxxxx01x known from compiler: 0000000000000000000000000000000000000000000000000000x0xxxxxxx0xx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (0000000000000000000000000000001x) %2:i32 = var (000000000000000000000000000000xx) %3:i32 = phi %0, %1, %2 %4:i32 = mulnsw 9:i32, %3 infer %4 known from Souper: 000000000000000000000000000xx0xx known from compiler: 00000000000000000000000000xxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1 = block 2 %2 = block 3 %3:i32 = var (00000000000000000000000000000xxx) %4:i32 = phi %1, 6:i32, %3 %5:i32 = phi %0, %4, 6:i32, 6:i32, 3:i32 infer %5 known from Souper: 00000000000000000000000000000xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i1 = var %1:i32 = select %0, 2:i32, 4:i32 %2:i32 = addnsw 4294967295:i32, %1 infer %2 known from Souper: 000000000000000000000000000000x1 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx1 souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (0000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %1:i64 = udiv %0, 4294967295:i64 %2:i64 = addnw 1:i64, %1 infer %2 known from Souper: 00000000000000000000000000000000000000000000000000000000000000xx known from compiler: 0000000000000000000000000000000000000000000000000000000000000xxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i8 = var %3:i8 = and 1:i8, %2 %4 = block 2 %5:i8 = var (0000000x) %6:i8 = phi %1, %3, %5 %7:i8 = phi %0, %6, %3 infer %7 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (000000000000000000000000000000xx) %2:i32 = phi %0, 1:i32, %1 %3:i32 = var (000000000000000000000000000000xx) %4:i32 = var (0000000000000000000000000000000x) %5:i32 = addnw %3, %4 %6:i32 = addnw %2, %5 infer %6 known from Souper: 00000000000000000000000000000xxx known from compiler: 0000000000000000000000000000xxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = lshr %0, 3:i64 %2:i32 = var %3:i64 = zext %2 %4:i64 = udiv %1, %3 infer %4 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx llvm is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i32 = var %2:i64 = zext %1 %3:i1 = slt %0, %2 %4:i64 = select %3, %2, %0 infer %4 known from Souper: 0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i8 = var (0000000x) %3:i8 = phi %1, 1:i8, %2 %4:i1 = var %5:i8 = select %4, 0:i8, %3 %6:i8 = phi %0, %3, %5 infer %6 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (0000000000000000xxxxxxxxxxxxxxxx) %1:i32 = var %2:i32 = udiv %0, %1 %3:i32 = lshr %2, 6:i32 infer %3 known from Souper: 000000xxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 0000000000000000000000xxxxxxxxxx llvm is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i64 = var (000000000000000000000000000000000000000000000000000000000000000x) %2:i64 = subnsw 2:i64, %1 %3:i64 = phi %0, %2, 0:i64 infer %3 known from Souper: 00000000000000000000000000000000000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 4 %2:i32 = phi %1, 0:i32, 0:i32, 1:i32, 1:i32 %3:i32 = phi %0, %2, 1:i32 infer %3 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i32 = phi %1, 1:i32, 0:i32 %3:i32 = phi %0, 0:i32, %2 infer %3 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (xxxxxxxxxxxxxxxxxxxxxxxxxx000000) %2:i32 = add 64:i32, %1 %3:i32 = phi %0, %1, %2 infer %3 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxx000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1 = block 2 %2:i64 = phi %1, 1:i64, 0:i64 %3:i64 = phi %0, 0:i64, 1:i64, %2, 1:i64, 0:i64 infer %3 known from Souper: 000000000000000000000000000000000000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i16 = trunc %0 %2:i16 = lshr 387:i16, %1 infer %2 known from Souper: 0000000xxxxxxxxx known from compiler: xxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i24 = var %1:i24 = shl %0, 3:i24 %2:i24 = lshr 66048:i24, %1 infer %2 known from Souper: 0000000x000000xx000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = and 4294967295:i64, %0 %2:i64 = sub %0, %1 infer %2 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00000000000000000000000000000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i8 = var %1:i32 = sext %0 %2:i32 = addnsw 3113:i32, %1 infer %2 known from Souper: 000000000000000000001xxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1:i32 = var (0000000000000000000000000000000x) %2:i32 = addnw 3:i32, %1 %3:i32 = phi %0, 0:i32, 1:i32, 2:i32, %2 infer %3 known from Souper: 00000000000000000000000000000xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i1 = var %1:i32 = select %0, 80:i32, 68:i32 %2:i32 = udiv 4294967295:i32, %1 infer %2 known from Souper: 00000011xxxx0011xxxx0011xxxx0011 known from compiler: 000000xxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i32 = phi %1, 2:i32, 0:i32 %3:i32 = phi %0, 0:i32, %2 infer %3 known from Souper: 000000000000000000000000000000x0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = udiv 4:i32, %0 %2:i1 = eq 0:i32, %1 %3:i32 = select %2, 1:i32, %1 infer %3 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 00000000000000000000000000000xxx llvm is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i32 = var %3:i64 = zext %2 %4:i64 = phi %1, %3, %3 %5:i64 = phi %0, %4, %3 infer %5 known from Souper: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %1:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %2:i64 = addnw %0, %1 %3:i64 = addnw 4294967295:i64, %2 infer %3 known from Souper: 00xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 2 %2:i32 = phi %1, 0:i32, 2:i32 %3:i32 = phi %0, 1:i32, %2, 1:i32 infer %3 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i1 = ult %0, 7:i64 %2:i64 = select %1, %0, 7:i64 infer %2 known from Souper: 0000000000000000000000000000000000000000000000000000000000000xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (00000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0000) %1:i64 = addnw 16:i64, %0 %2:i64 = var %3:i64 = and 34359738360:i64, %2 %4:i64 = addnw %1, %3 infer %4 known from Souper: 0000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx000 known from compiler: 000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx000 souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = sdiv %0, 2:i32 %2:i1 = slt %1, 1:i32 %3:i32 = select %2, 1:i32, %1 infer %3 known from Souper: 00xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 2 %2:i8 = phi %1, 0:i8, 1:i8 %3:i8 = phi %0, 0:i8, %2, 1:i8 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i1 = phi %0, 1:i1, 0:i1, 0:i1 %2:i64 = phi %0, 0:i64, 13:i64, 13:i64 %3:i64 = select %1, 13:i64, %2 infer %3 known from Souper: 0000000000000000000000000000000000000000000000000000000000001101 known from compiler: 000000000000000000000000000000000000000000000000000000000000xx0x souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1:i32 = var (0000000000000000000000000000000x) %2:i32 = xor 1:i32, %1 %3:i32 = phi %0, 2:i32, 0:i32, 1:i32, %2 infer %3 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i32 = trunc %0 %2:i32 = udiv 128:i32, %1 infer %2 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 000000000000000000000000xxxxxxxx llvm is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i32 = var (00000000000000000000000000xxxx10) %3 = block 2 %4:i32 = var (0000000000000000000000000001xx10) %5:i32 = phi %1, %2, %4 %6:i32 = addnsw 2:i32, %5 %7:i32 = phi %0, %6, %5 infer %7 known from Souper: 0000000000000000000000000xxxxxx0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i64 = zext %0 %2:i64 = lshr 17180131335:i64, %1 infer %2 known from Souper: 00000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1 = block 4 %2:i8 = phi %1, 1:i8, 1:i8, 0:i8, 0:i8 %3:i8 = phi %0, %2, %2, 0:i8, 0:i8 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i64 = var %3 = block 3 %4:i64 = var %5:i64 = phi %0, %2, %4 %6:i64 = addnsw 18446744073709551615:i64, %5 %7:i64 = and %5, %6 infer %7 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i1 = var %2:i32 = var (0000000000000000000000001101110x) %3:i32 = var (0000000000000000000000001101101x) %4:i32 = select %1, %2, %3 %5:i32 = phi %0, %4, 218:i32 infer %5 known from Souper: 00000000000000000000000011011xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 8 %2:i32 = phi %1, 1:i32, 1:i32, 2:i32, 2:i32, 2:i32, 2:i32, 2:i32, 2:i32 %3:i32 = phi %0, 1:i32, %2 infer %3 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i32 = var %2:i64 = zext %1 %3 = block 2 %4:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %5:i64 = phi %3, 0:i64, %4 %6:i64 = phi %0, %2, %5, %5 infer %6 known from Souper: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 2 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 4 %2:i32 = phi %1, 1:i32, 0:i32, 2:i32, 3:i32 %3:i32 = phi %0, %2, 0:i32 infer %3 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i32 = phi %0, 3:i32, 4:i32, 2:i32 %2:i32 = addnw 1:i32, %1 infer %2 known from Souper: 00000000000000000000000000000xxx known from compiler: 0000000000000000000000000000xxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (000000000000000000000101111001xx) %2:i32 = phi %0, %1, 1509:i32 %3:i64 = zext %2 infer %3 known from Souper: 00000000000000000000000000000000000000000000000000000101111001xx known from compiler: 00000000000000000000000000000000000000000000000000000x0xxxx00xxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 14 %1 = block 6 %2 = block 2 %3:i32 = var (000000000000000000000001000010xx) %4 = block 2 %5:i32 = var (000000000000000000000001000001xx) %6:i32 = phi %1, 264:i32, 264:i32, 264:i32, 260:i32, %3, %5 %7 = block 2 %8:i32 = phi %7, 267:i32, 264:i32 %9 = block 2 %10:i32 = phi %9, 263:i32, 260:i32 %11:i32 = phi %0, %6, 258:i32, 258:i32, 258:i32, 96:i32, 96:i32, 264:i32, 260:i32, %8, %10, 258:i32, 268:i32, 258:i32, 258:i32 infer %11 known from Souper: 00000000000000000000000x0xx0xxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 1 %2:i64 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00) %3:i64 = phi %1, %2 %4 = block 1 %5:i64 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00) %6:i64 = phi %4, %5 %7:i64 = phi %0, %3, %6 infer %7 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 4 %2:i32 = phi %1, 1:i32, 1:i32, 4:i32, 1:i32 %3:i32 = phi %0, 1:i32, 1:i32, %2 infer %3 known from Souper: 00000000000000000000000000000x0x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1 = block 2 %2 = block 2 %3:i8 = var (0000000x) %4:i8 = phi %1, 0:i8, %3 %5:i8 = phi %0, %4, %4, %4, 0:i8, 0:i8 infer %5 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 21 %1:i1 = var %2:i32 = select %1, 1196:i32, 1198:i32 %3:i32 = select %1, 7464:i32, 7462:i32 %4:i32 = select %1, 7434:i32, 7432:i32 %5:i32 = select %1, 7541:i32, 7539:i32 %6:i32 = select %1, 7143:i32, 7141:i32 %7:i32 = select %1, 7116:i32, 7115:i32 %8:i32 = select %1, 7514:i32, 7513:i32 %9:i32 = var (0000000000000000000xxx1x1x110xx1) %10:i32 = var (0000000000000000000xxx1x1x110xx0) %11:i32 = select %1, %9, %10 %12:i32 = var (0000000000000000000xx1x10xx1xxx1) %13:i32 = var (0000000000000000000xx1x10xx1xxx0) %14:i32 = select %1, %12, %13 %15:i32 = select %1, 1274:i32, 2812:i32 %16:i32 = select %1, 1688:i32, 1680:i32 %17:i32 = var (0000000000000000000xx1xxxxx011xx) %18:i32 = var (0000000000000000000xx1xxxxx01x1x) %19:i32 = select %1, %17, %18 %20:i32 = select %1, 1471:i32, 1470:i32 %21:i32 = select %1, 1272:i32, 2805:i32 %22:i32 = select %1, 1669:i32, 1658:i32 %23:i32 = var (0000000000000000000xx1xxxx1x1xxx) %24:i32 = var (0000000000000000000xx1xxxx1x1x0x) %25:i32 = select %1, %23, %24 %26:i32 = select %1, 1269:i32, 2804:i32 %27:i32 = select %1, 1646:i32, 1639:i32 %28:i32 = select %1, 1710:i32, 1703:i32 %29:i32 = select %1, 1709:i32, 1702:i32 %30:i32 = phi %0, %2, %3, %4, %5, %6, %5, %7, %8, %11, %14, %15, %16, %19, %20, %21, %22, %25, %26, %27, %28, %29 infer %30 known from Souper: 0000000000000000000xxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 3 %2:i8 = phi %1, 1:i8, 1:i8, 0:i8 %3 = block 3 %4:i8 = phi %3, 1:i8, 1:i8, 0:i8 %5:i8 = phi %0, %2, %4 infer %5 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 11 %2:i32 = phi %1, 1:i32, 0:i32, 0:i32, 0:i32, 0:i32, 0:i32, 0:i32, 0:i32, 0:i32, 0:i32, 0:i32 %3:i32 = phi %0, %2, 0:i32, 1:i32 infer %3 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (0000000000000000000000000000000x) %2:i32 = or 2:i32, %1 %3:i32 = phi %0, %2, 3:i32 infer %3 known from Souper: 0000000000000000000000000000001x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx1x souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i64 = sext %0 %2:i64 = lshr 568044044417:i64, %1 infer %2 known from Souper: 000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (0000000000000000000000000000xx00) %1:i32 = shl 3:i32, %0 infer %1 known from Souper: 000000000000000000xx00xx00xx00xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 11 %2:i8 = phi %1, 0:i8, 0:i8, 0:i8, 0:i8, 1:i8, 1:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8 %3:i8 = phi %0, %2, 0:i8, 0:i8 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i32 = var (0000xxxxxxxxxxxxxxxxxxxxxxxxxxxx) %2:i32 = and 64:i32, %1 %3:i1 = var %4:i32 = var (0000000000000000000001000x000000) %5:i32 = select %3, %4, %2 %6:i32 = phi %0, %2, %2, %5 infer %6 known from Souper: 000000000000000000000x000x000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1:i32 = var (00000000000000000000000000001xx0) %2:i32 = phi %0, 12:i32, %1, 11:i32, 11:i32 %3:i32 = and 14:i32, %2 infer %3 known from Souper: 00000000000000000000000000001xx0 known from compiler: 0000000000000000000000000000xxx0 souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1 = block 4 %2 = block 2 %3:i8 = var (0000000x) %4:i8 = phi %1, %3, 0:i8, 0:i8, 0:i8 %5:i8 = phi %0, 0:i8, %4, 1:i8, 1:i8 infer %5 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1 = block 5 %2:i8 = var (0000000x) %3:i8 = phi %1, %2, 0:i8, 0:i8, 1:i8, %2 %4:i1 = var %5:i8 = zext %4 %6:i8 = phi %0, %3, %5, %5, %5 infer %6 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i1 = var %2:i8 = zext %1 %3:i8 = xor 1:i8, %2 %4:i8 = phi %0, %2, %3, %2 infer %4 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 6 %1 = block 5 %2:i8 = phi %1, 64:i8, 0:i8, 64:i8, 64:i8, 4:i8 %3:i1 = var %4:i8 = select %3, 0:i8, 64:i8 %5:i8 = phi %0, %2, 64:i8, 0:i8, 64:i8, 4:i8, %4 infer %5 known from Souper: 0x000x00 known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1 = block 6 %2 = block 4 %3:i32 = var (000000000000000000000000000000x0) %4:i32 = phi %1, 1:i32, %3, %3, %3, %3, %3 %5:i32 = phi %0, 2:i32, %4, 0:i32, 1:i32, 1:i32 infer %5 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i32 = var (00000xxxxxxxxxxxxxxxxxxxxxxxxxxx) %2:i32 = and 3:i32, %1 %3 = block 3 %4:i32 = var (000000000000000000000000000000xx) %5:i32 = phi %3, %4, %2, 1:i32 %6:i32 = phi %0, %2, %2, %5 infer %6 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 3 %2:i64 = var (0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %3:i64 = var (000000000000000000000000000000000000000000000000000000000000xxx1) %4:i64 = phi %0, %2, %3, %2 %5:i64 = add 18446744073709551615:i64, %4 %6:i64 = and %4, %5 infer %6 known from Souper: 0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0 known from compiler: 0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 3 %2:i32 = var (000000000000000000000000000000xx) %3:i32 = var (0000000000000000000000000000000x) %4:i32 = phi %1, %2, 1:i32, %3 %5:i1 = var %6:i32 = select %5, 1:i32, 2:i32 %7:i32 = phi %0, %4, %6 infer %7 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 7 %1 = block 4 %2:i8 = phi %1, 0:i8, 1:i8, 1:i8, 1:i8 %3:i1 = var %4:i8 = select %3, %2, 1:i8 %5:i1 = var %6:i8 = select %5, %2, 1:i8 %7:i8 = phi %0, %2, %2, %4, %2, %6, %2, %2 infer %7 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i1 = var %2:i8 = zext %1 %3 = block 2 %4:i8 = var (0000000x) %5:i8 = phi %3, %4, 0:i8 %6:i8 = phi %0, %2, %5 infer %6 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = var %2:i64 = sub %0, %1 %3:i1 = ult 5:i64, %2 %4:i64 = select %3, 5:i64, %2 infer %4 known from Souper: 0000000000000000000000000000000000000000000000000000000000000xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2 = block 2 %3:i8 = phi %2, 0:i8, 1:i8 %4:i8 = phi %1, %3, 1:i8 %5:i8 = phi %0, %4, %3 infer %5 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 2 %2:i8 = phi %1, 1:i8, 0:i8 %3:i8 = phi %0, %2, 0:i8, 0:i8 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1 = block 8 %2:i32 = var (000000000000000000000000000000xx) %3:i32 = phi %1, 1:i32, 1:i32, 1:i32, 1:i32, 1:i32, %2, 1:i32, 1:i32 %4:i32 = phi %0, 0:i32, %3, %3, 0:i32, %3 infer %4 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 8 %2:i32 = phi %1, 8:i32, 72:i32, 69:i32, 5:i32, 2:i32, 1:i32, 1:i32, 1:i32 %3:i32 = xor 13:i32, %2 %4:i1 = var %5:i32 = var (0000000000000000000000000x00xxxx) %6:i32 = select %4, 0:i32, %5 %7:i32 = phi %0, %2, %3, %6 infer %7 known from Souper: 0000000000000000000000000x00xxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1 = block 9 %2:i8 = phi %1, 0:i8, 1:i8, 0:i8, 0:i8, 1:i8, 1:i8, 1:i8, 0:i8, 0:i8 %3:i8 = phi %0, 0:i8, 1:i8, %2, 0:i8 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 6 %1:i32 = phi %0, 6:i32, 5:i32, 4:i32, 3:i32, 2:i32, 4294967295:i32 %2:i32 = add 4294967283:i32, %1 infer %2 known from Souper: 1111111111111111111111111111xxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i8 = var %1:i8 = add 247:i8, %0 %2:i8 = lshr 27:i8, %1 infer %2 known from Souper: 000xxxxx known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (0000000000000000000000000000xx00) %1:i32 = shl 15:i32, %0 %2:i32 = xor 4294967295:i32, %1 infer %2 known from Souper: 1111111111111111xxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 6 %2 = block 4 %3:i32 = var (000000000000000000000000000000x0) %4:i32 = phi %1, 2:i32, 2:i32, 2:i32, 2:i32, 2:i32, %3 %5:i32 = phi %0, 2:i32, %4 infer %5 known from Souper: 000000000000000000000000000000x0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 7 %1:i32 = var %2:i32 = ctlz %1 %3:i32 = var (000000000000000000000000000xxxxx) %4:i32 = addnw 1:i32, %3 %5:i32 = phi %0, 0:i32, 0:i32, 0:i32, 0:i32, %2, %4, 33:i32 infer %5 known from Souper: 00000000000000000000000000xxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (000000000000000000000000000xxxxx) %1:i1 = eq 15:i32, %0 %2 = block 2 %3:i32 = var (000000000000000000000000000000x1) %4:i32 = phi %2, %3, 3:i32 %5:i32 = select %1, 1:i32, %4 infer %5 known from Souper: 000000000000000000000000000000x1 known from compiler: 000000000000000000000000000000xx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i1 = var %2:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %3:i64 = select %1, %2, 0:i64 %4:i64 = phi %0, 0:i64, 0:i64, %3 infer %4 known from Souper: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i1 = ult 64:i32, %0 %2:i32 = select %1, 64:i32, %0 infer %2 known from Souper: 0000000000000000000000000xxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1 = block 2 %2:i32 = phi %1, 55:i32, 40:i32 %3:i32 = phi %0, 40:i32, 55:i32, %2, %2, 40:i32 infer %3 known from Souper: 000000000000000000000000001xxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i1 = var %2:i8 = zext %1 %3:i8 = var (0000000x) %4:i8 = xor 1:i8, %3 %5:i8 = phi %0, %2, %4 infer %5 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i16 = var %1:i64 = zext %0 %2:i64 = lshr 68722622467:i64, %1 infer %2 known from Souper: 000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1:i64 = var (0000000000000000000000000000000000000000000000000000000001001x01) %2:i64 = and 13:i64, %1 %3:i64 = shl 1:i64, %2 infer %3 known from Souper: 00000000000000000000000000000000000000000000000000x000x000000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 15 %1 = block 4 %2 = block 4 %3:i32 = var (0000000000000000000000000000000x) %4:i32 = var (0000000000000000000000000000000x) %5:i32 = phi %1, %3, %4, %3, %3 %6:i32 = phi %0, %5, 2:i32, 3:i32, 4:i32, 5:i32, 2:i32, 2:i32, 3:i32, 3:i32, 4:i32, 4:i32, 4:i32, 5:i32, 5:i32, 5:i32 infer %6 known from Souper: 00000000000000000000000000000xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i32 = var (00000000000000000000000000000x0x) %3:i32 = phi %1, %2, 0:i32 %4:i32 = phi %0, 3:i32, %3 infer %4 known from Souper: 00000000000000000000000000000xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (00000000xxxxxxxxxxxxxxxxxxxxxxxx) %2:i32 = and 15:i32, %1 %3 = block 2 %4:i32 = var (00000000000000000000000xxxxxxxxx) %5:i32 = phi %3, 6:i32, %4 %6:i32 = phi %0, %2, %5 infer %6 known from Souper: 00000000000000000000000xxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %1:i64 = shlnw %0, 4:i64 %2:i64 = lshr 3096276284080138:i64, %1 infer %2 known from Souper: 000000000000x0xx000000000000xxxx000000000000xxxx000000000000xxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 7 %1 = block 3 %2:i64 = var (00000000000000000000000000000000000000000000000000000000000000x0) %3:i64 = phi %1, %2, 0:i64, 0:i64 %4:i64 = phi %0, %3, 1:i64, 2:i64, 2:i64, 3:i64, 2:i64, 4:i64 infer %4 known from Souper: 0000000000000000000000000000000000000000000000000000000000000xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i1 = var %2:i8 = zext %1 %3:i1 = var %4:i8 = select %3, %2, 0:i8 %5:i8 = phi %0, %2, %4 infer %5 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i32 = phi %1, 3:i32, 4:i32 %3 = block 3 %4:i32 = phi %3, %2, 6:i32, 5:i32 %5:i32 = phi %0, %2, %4 infer %5 known from Souper: 00000000000000000000000000000xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = sdivexact %0, 1512:i64 %2:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %3:i1 = ult %1, %2 %4:i64 = select %3, %1, %2 infer %4 known from Souper: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i1 = slt %0, 4294967293:i32 %2:i32 = sdiv %0, 4:i32 %3:i32 = subnsw 0:i32, %2 %4:i32 = select %1, %3, %2 infer %4 known from Souper: 00xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i64 = var (0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %3:i64 = var (00xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %4:i64 = addnw 1:i64, %3 %5:i64 = phi %1, %2, %4 %6:i64 = phi %0, %5, %4 infer %6 known from Souper: 0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 2 %2 = block 4 %3:i32 = var (000000000000000000000000xxxxxxxx) %4:i32 = phi %1, %3, 2:i32 %5:i32 = phi %0, %4, 2:i32, 2:i32 infer %5 known from Souper: 000000000000000000000000xxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i1 = var %2:i32 = var (000000000000000000000000001110xx) %3:i32 = var (00000000000000000000000000xxx0x0) %4:i32 = select %1, %2, %3 %5:i32 = phi %0, %4, 57:i32 infer %5 known from Souper: 00000000000000000000000000xxx0xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (000000000000000000000000xxxxxxxx) %1:i64 = zext %0 %2:i64 = lshr 102402:i64, %1 infer %2 known from Souper: 00000000000000000000000000000000000000000000000xxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (0000xxxxxxxxxxxxxxxxxxxxxxxxxxxx) %2:i32 = and 15:i32, %1 %3:i32 = var (000000000000000000000000xxxx0000) %4:i32 = or %2, %3 %5:i32 = phi %0, %2, %4 infer %5 known from Souper: 000000000000000000000000xxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 2 %2:i64 = phi %1, 7:i64, 19:i64 %3:i64 = phi %0, %2, 14:i64, 18:i64 infer %3 known from Souper: 00000000000000000000000000000000000000000000000000000000000xxx1x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 7 %1:i32 = var (0000000000000000000000000000xxxx) %2:i32 = addnw 1:i32, %1 %3:i32 = var (0000000000000000000000000000xxxx) %4:i32 = addnw 1:i32, %3 %5:i32 = var (0000000000000000000000000000xxxx) %6:i32 = addnw 1:i32, %5 %7:i32 = phi %0, %2, 0:i32, 0:i32, %4, %4, 0:i32, %6 infer %7 known from Souper: 000000000000000000000000000xxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1 = block 5 %2:i8 = var (0000000x) %3:i8 = phi %1, 0:i8, 0:i8, 0:i8, %2, %2 %4:i8 = phi %0, 0:i8, 0:i8, 0:i8, %3 infer %4 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (0000000000000000000000000000xxx0) %1:i32 = var %2:i32 = add %0, %1 %3:i32 = var (000000000000000000000000000xxx00) %4:i32 = urem %2, %3 infer %4 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 000000000000000000000000000xxxxx llvm is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (000000000000000000000000000xxxxx) %2:i32 = shl 4294967040:i32, %1 %3 = block 2 %4:i64 = var %5:i32 = trunc %4 %6:i32 = and %2, %5 infer %6 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxx00000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (0000000000000000xxxxxxxxxxxxxxxx) %1:i32 = lshr 128:i32, %0 %2:i64 = zext %1 infer %2 known from Souper: 00000000000000000000000000000000000000000000000000000000xxxxxxxx known from compiler: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i32 = var (000000000000000000000000101xxxxx) %2:i32 = var (000000000000000000000000100xxxxx) %3:i32 = var (000000000000000000000000110xxxxx) %4:i32 = phi %0, %1, %2, %3 %5:i32 = or 512:i32, %4 infer %5 known from Souper: 0000000000000000000000101xxxxxxx known from compiler: 000000000000000000000010xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i32 = phi %1, 0:i32, 1:i32 %3:i32 = phi %0, %2, 2:i32 infer %3 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i24 = trunc %0 %2:i24 = lshr 63:i24, %1 infer %2 known from Souper: 000000000000000000xxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = add 4294967294:i32, %0 %2:i32 = add 4294967295:i32, %0 %3:i32 = and %1, %2 infer %3 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 2 %2:i8 = phi %1, 0:i8, 1:i8 %3 = block 7 %4:i8 = phi %3, 0:i8, 1:i8, 1:i8, 0:i8, 1:i8, 1:i8, 1:i8 %5:i8 = phi %0, %2, %4, 0:i8 infer %5 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (0000000000000000000000000000000x) %2:i32 = or 762:i32, %1 %3:i32 = phi %0, %2, 848:i32 infer %3 known from Souper: 00000000000000000000001xx1x1x0xx known from compiler: xxxxxxxxxxxxxxxxxxxxxx1xx1x1xxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 8 %1:i32 = var %2:i32 = sub 4294967294:i32, %1 %3:i32 = xor 4294967295:i32, %1 %4:i32 = xor %2, %3 infer %4 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx1 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 1 %1:i32 = var (00000xxxxxxxxxxxxxxxxxxxxxxxxxxx) %2:i32 = lshr %1, 5:i32 %3:i32 = phi %0, %2 infer %3 known from Souper: 0000000000xxxxxxxxxxxxxxxxxxxxxx known from compiler: 00000xxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i1 = ult %0, 4096:i64 %2:i64 = select %1, %0, 4096:i64 infer %2 known from Souper: 000000000000000000000000000000000000000000000000000xxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1:i32 = var (00000000000000000000000000000xxx) %2:i32 = phi %0, %1, 3:i32, %1, 5:i32 %3:i32 = var %4:i1 = slt %2, %3 %5:i32 = select %4, %3, %2 infer %5 known from Souper: 0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i8 = var (0000000x) %2:i32 = zext %1 %3:i32 = phi %0, %2, 0:i32 infer %3 known from Souper: 0000000000000000000000000000000x known from compiler: 000000000000000000000000xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 3 %2:i64 = phi %1, 9:i64, 5:i64, 3:i64 %3:i64 = var (000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %4:i64 = var (00xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %5:i64 = var (0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %6:i64 = phi %1, %3, %4, %5 %7:i64 = phi %0, %2, %6, %2 infer %7 known from Souper: 0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = lshr %0, 8:i32 %2:i32 = addnw 16777215:i32, %1 %3:i32 = and %2, %1 infer %3 known from Souper: 00000000xxxxxxxxxxxxxxxxxxxxxxx0 known from compiler: 00000000xxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i64 = var %2:i64 = sub %1, %1 %3:i64 = ashrexact %2, 2:i64 infer %3 known from Souper: 0000000000000000000000000000000000000000000000000000000000000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 6 %1 = block 4 %2:i32 = phi %1, 0:i32, 0:i32, 0:i32, 2:i32 %3:i32 = phi %0, 1:i32, %2, %2, %2, %2, %2 infer %3 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i1 = var %1 = block 3 %2:i32 = var (000000000000000000000000000x1x1x) %3:i32 = phi %1, 31:i32, 31:i32, %2 %4:i32 = select %0, %3, 10:i32 infer %4 known from Souper: 000000000000000000000000000x1x1x known from compiler: 000000000000000000000000000xxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (0000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %1:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %2:i64 = addnw %0, %1 %3:i32 = var %4:i64 = zext %3 %5:i64 = addnw %2, %4 infer %5 known from Souper: 000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 00000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = add 4294962053:i32, %0 %2:i32 = lshr 4177987:i32, %1 infer %2 known from Souper: 0000000000xxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx000) %1:i64 = addnw 48:i64, %0 %2 = block 2 %3:i1 = var %4:i64 = select %3, 8:i64, 0:i64 %5:i64 = addnw %1, %4 infer %5 known from Souper: 00000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx000 known from compiler: 0000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx000 souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i32 = var %2:i32 = var %3:i32 = var %4:i32 = phi %0, %1, %2, %3 %5:i32 = add 4294967295:i32, %4 %6:i32 = xor %4, %5 infer %6 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx1 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 1 %2:i64 = var (000000000000000000000000000000000000000000000000xxxxxxxxxxxxxxxx) %3:i64 = phi %1, %2 %4 = block 1 %5:i64 = var (000000000000000000000000000000000000000000000000xxxxxxxxxxxxxxxx) %6:i64 = phi %4, %5 %7:i64 = phi %0, %3, %6 infer %7 known from Souper: 000000000000000000000000000000000000000000000000xxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (0000000000000000000000000000000000000000000000000000000xxxxxxxx0) %1:i64 = addnw 4294967295:i64, %0 %2:i64 = var (000000000000000000000000000000000000000000000000000000xxxxxxxxx1) %3:i64 = urem %2, %0 %4:i64 = subnsw %1, %3 infer %4 known from Souper: 0000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1 = block 4 %2:i1 = var %3:i32 = zext %2 %4:i32 = phi %1, %3, 1:i32, 1:i32, 1:i32 %5:i32 = phi %0, %4, %3, %4, %4 infer %5 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (000000000000000000000000xxxxxxxx) %1:i32 = and 15:i32, %0 %2:i1 = var %3:i32 = select %2, 48:i32, 87:i32 %4:i32 = addnw %1, %3 infer %4 known from Souper: 0000000000000000000000000xxxxxxx known from compiler: 000000000000000000000000xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (0000000000000000000000000000000000000000000000000000000000xxxxx1) %1:i64 = shl 1:i64, %0 %2:i64 = xor 18446744073709551615:i64, %1 infer %2 known from Souper: x1x1x1x1x1x1x1x1x1x1x1x1x1x1x1x1x1x1x1x1x1x1x1x1x1x1x1x1x1x1x1x1 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = udiv %0, 30:i64 %2:i1 = var %3:i64 = zext %2 %4:i64 = addnw %1, %3 infer %4 known from Souper: 0000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (00xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %1:i32 = addnw 7:i32, %0 %2:i32 = var %3:i32 = and 7:i32, %2 %4:i32 = subnsw %1, %3 infer %4 known from Souper: 0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i32 = var %2:i32 = sub 4294967294:i32, %1 %3:i32 = xor 4294967295:i32, %1 %4:i32 = xor %2, %3 infer %4 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx1 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 11 %1 = block 6 %2:i32 = phi %1, 225:i32, 226:i32, 226:i32, 226:i32, 226:i32, 226:i32 %3:i32 = phi %0, %2, %2, %2, %2, %2, %2, %2, %2, %2, 227:i32, 227:i32 infer %3 known from Souper: 000000000000000000000000111000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = shl %0, 3:i32 %2:i32 = lshr 1195782192:i32, %1 infer %2 known from Souper: 0x000xxx0x000xxx0xxx0xxx0xxx0xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i64 = var %2:i64 = var %3:i64 = sub %1, %2 %4:i64 = var %5:i64 = and 4294967295:i64, %4 %6:i1 = ult %3, %5 %7:i64 = select %6, %3, %5 infer %7 known from Souper: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (000000000000000000000000000001xx) %1:i32 = addnw 1:i32, %0 %2:i32 = shl 16:i32, %1 infer %2 known from Souper: 0000000000000000000xxxx000000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i32 = var (0000000000000000000000000000000x) %2:i32 = subnsw 2:i32, %1 %3:i32 = phi %0, %2, 2:i32, 0:i32 infer %3 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1:i1 = var %2:i32 = select %1, 1746:i32, 1059:i32 %3:i1 = var %4:i32 = var (0000000000000000000001x0xxxx00xx) %5:i32 = select %3, %4, %2 %6:i32 = phi %0, %2, %2, %2, %5 infer %6 known from Souper: 0000000000000000000001x0xxxx00xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 2 %2:i32 = var (000000000000000000000000000xxxxx) %3:i32 = or 160:i32, %2 %4:i32 = or 128:i32, %2 %5:i32 = or 192:i32, %2 %6:i32 = phi %0, %3, %4, %5 infer %6 known from Souper: 0000000000000000000000001xxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxx1xxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 3 %2:i8 = var (0000001x) %3:i8 = phi %1, 2:i8, 1:i8, %2 %4:i1 = var %5:i8 = select %4, 3:i8, %3 %6:i8 = phi %0, %3, %5 infer %6 known from Souper: 000000xx known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = udiv %0, 40:i64 %2:i64 = addnw 1:i64, %1 infer %2 known from Souper: 00000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 0000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var %2:i32 = ctlz %1 %3:i32 = subnsw 33:i32, %2 infer %3 known from Souper: 00000000000000000000000000xxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 4 %2:i32 = var (00000000000000000000000000000x0x) %3:i32 = phi %1, %2, 2:i32, 1:i32, 1:i32 %4:i32 = phi %0, 2:i32, %3 infer %4 known from Souper: 00000000000000000000000000000xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (0000000000000000000000000000000x) %2:i32 = subnsw 29:i32, %1 %3:i32 = phi %0, %2, 29:i32 infer %3 known from Souper: 0000000000000000000000000001110x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = add 4294967295:i32, %0 %2:i1 = slt 0:i32, %1 %3:i32 = select %2, %1, 0:i32 infer %3 known from Souper: 0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i16 = var (00000000000000xx) %2:i32 = zext %1 %3:i32 = phi %0, 0:i32, %2 infer %3 known from Souper: 000000000000000000000000000000xx known from compiler: 0000000000000000xxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i64 = var (00xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %3:i64 = var %4:i64 = lshr %3, 2:i64 %5:i64 = phi %1, %2, %4 %6:i64 = phi %0, %5, %4 infer %6 known from Souper: 00xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %1:i64 = mulnw 12:i64, %0 %2:i64 = var %3:i64 = and 4294967295:i64, %2 %4:i64 = addnw %1, %3 infer %4 known from Souper: 0000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1 = block 6 %2:i8 = phi %1, 1:i8, 1:i8, 0:i8, 0:i8, 0:i8, 0:i8 %3:i8 = phi %0, 0:i8, 0:i8, %2, 1:i8 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxx000) %2:i32 = udiv %0, %1 %3:i1 = ult 8:i32, %2 %4:i32 = select %3, 8:i32, %2 infer %4 known from Souper: 0000000000000000000000000000xxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %3:i64 = phi %1, 0:i64, %2 %4:i64 = phi %0, %3, 0:i64 infer %4 known from Souper: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = and 4294967295:i64, %0 %2:i64 = cttz %1 infer %2 known from Souper: 000000000000000000000000000000000000000000000000000000000x0xxxxx known from compiler: 000000000000000000000000000000000000000000000000000000000xxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i1 = var %2:i8 = var (0000000x) %3:i8 = xor 1:i8, %2 %4:i8 = select %1, 0:i8, %3 %5:i8 = phi %0, %4, %3 infer %5 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i1 = var %1:i32 = select %0, 8192:i32, 0:i32 %2:i32 = bswap %1 infer %2 known from Souper: 0000000000x000000000000000000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = var (000000000000000000000000xxxxxxxx) %2:i32 = and %0, %1 %3:i32 = var (00000000000000000000000000000xx0) %4:i32 = shl 1:i32, %3 %5:i32 = or %2, %4 infer %5 known from Souper: 000000000000000000000000xxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = var (0000000000000000000000000000000000000000000000000000000000xxx111) %2:i64 = shl 1:i64, %1 %3:i64 = and %0, %2 infer %3 known from Souper: x0000000x0000000x0000000x0000000x0000000x0000000x0000000x0000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 14 %2:i32 = phi %1, 262144:i32, 131072:i32, 196608:i32, 131072:i32, 131072:i32, 327680:i32, 393216:i32, 458752:i32, 524288:i32, 589824:i32, 65536:i32, 65536:i32, 65536:i32, 65536:i32 %3:i32 = phi %0, %2, 0:i32 infer %3 known from Souper: 000000000000xxxx0000000000000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var %2:i64 = zext %1 %3:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %4:i64 = addnw %2, %3 %5:i64 = phi %0, %4, %2 infer %5 known from Souper: 0000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 22 %1 = block 7 %2:i8 = phi %1, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 1:i8, 0:i8 %3:i8 = phi %0, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, %2, %2, %2 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 16 %1:i64 = var (000000000000000000000000000000000000000000000000000000000000xxxx) %2:i64 = shlnw %1, 32:i64 %3:i64 = phi %0, 0:i64, 0:i64, 0:i64, %2, 0:i64, 0:i64, 0:i64, 0:i64, 0:i64, 0:i64, 0:i64, 0:i64, 0:i64, 0:i64, 0:i64, 0:i64 infer %3 known from Souper: 0000000000000000000000000000xxxx00000000000000000000000000000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00000000000000000000000000000000 souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i24 = var (1x0000000000000000000000) %2:i24 = phi %0, 8388608:i24, %1 %3:i24 = var (xxx00x001000000000000010) %4:i24 = and 2359298:i24, %3 %5:i24 = or %2, %4 infer %5 known from Souper: 1xx00x000000000000000010 known from compiler: xxx00x000000000000000010 souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = and 4294967288:i32, %0 %2:i32 = shl 1:i32, %1 infer %2 known from Souper: 0000000x0000000x0000000x0000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = add 4294967295:i32, %0 %2:i32 = lshr 2147479551:i32, %1 infer %2 known from Souper: 0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i24 = trunc %0 %2:i24 = lshr 3668172:i24, %1 infer %2 known from Souper: 00xxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 1 %2:i32 = var (000000000000000000000000000000xx) %3:i32 = phi %1, %2 %4:i32 = phi %0, %3, 2:i32, 2:i32 infer %4 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = lshr %0, 1:i32 %2:i32 = addnw 1:i32, %1 infer %2 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx llvm is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i1 = eq 0:i32, %0 %2:i32 = var %3:i32 = lshr 68:i32, %2 %4:i32 = select %1, 0:i32, %3 infer %4 known from Souper: 0000000000000000000000000xxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = and 255:i32, %0 %2:i32 = var (0000000000000000000000000000000x) %3:i32 = xor 1:i32, %2 %4:i32 = shlnw %1, %3 infer %4 known from Souper: 00000000000000000000000xxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = sub 4294967294:i32, %0 %2:i32 = xor 4294967295:i32, %0 %3:i32 = and %1, %2 infer %3 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 6 %1 = block 2 %2:i8 = phi %1, 0:i8, 1:i8 %3:i8 = phi %0, %2, %2, 0:i8, 0:i8, %2, %2 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i32 = var (000000000000000000xxxxxxxxxxxxxx) %3:i32 = var (000000000000000000xxxxxxxxxxxxxx) %4:i32 = phi %1, %2, %3 %5:i80 = var (000000000000000000000000000000000000000000000000000000000000000000xxxxxxxxxxxxxx) %6:i32 = trunc %5 %7:i32 = phi %0, %4, %6 infer %7 known from Souper: 000000000000000000xxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 9 %1 = block 2 %2:i8 = var (0000000x) %3:i8 = var (0000000x) %4:i8 = phi %1, %2, %3 %5:i1 = var %6:i8 = select %5, %4, 1:i8 %7:i8 = phi %0, %4, %4, %4, %4, %4, %4, %4, %4, %6 infer %7 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 8 %1 = block 2 %2:i32 = phi %1, 8192:i32, 4096:i32 %3:i32 = phi %0, %2, 4096:i32, 8192:i32, 4096:i32, 8192:i32, 4096:i32, 4096:i32, 8192:i32 infer %3 known from Souper: 000000000000000000xx000000000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (00xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %1:i32 = trunc %0 %2:i32 = udiv 248:i32, %1 infer %2 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 000000000000000000000000xxxxxxxx llvm is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 2 %2:i32 = phi %1, 1:i32, 0:i32 %3:i32 = phi %0, 1:i32, 0:i32, %2 infer %3 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = ashrexact %0, 3:i64 %2:i1 = ult 2:i64, %1 %3:i64 = select %2, 2:i64, %1 infer %3 known from Souper: 00000000000000000000000000000000000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i32 = phi %1, 5:i32, 0:i32 %3:i32 = phi %0, %2, 4:i32 infer %3 known from Souper: 00000000000000000000000000000x0x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i1 = var %2:i32 = var (000000000000000000000000000000x0) %3:i32 = select %1, 1:i32, %2 %4:i32 = var (0000000000000000000000000000000x) %5:i32 = xor 1:i32, %4 %6:i32 = phi %0, %3, 1:i32, %5 infer %6 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 5 %2:i64 = phi %1, 2:i64, 5:i64, 1:i64, 6:i64, 4:i64 %3:i64 = phi %0, %2, 2:i64 infer %3 known from Souper: 0000000000000000000000000000000000000000000000000000000000000xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i64 = var %2:i1 = ne 0:i64, %1 %3:i1 = xor %2, %2 infer %3 known from Souper: 0 known from compiler: x souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 6 %1 = block 3 %2:i1 = var %3:i64 = var (000000000000000000000000000000000000000000000000000000000000xx0x) %4:i64 = select %2, 13:i64, %3 %5 = block 3 %6:i1 = var %7:i64 = var (000000000000000000000000000000000000000000000000000000000000xx0x) %8:i64 = select %6, 13:i64, %7 %9:i64 = phi %0, 13:i64, 2:i64, %4, 2:i64, %8, 13:i64 infer %9 known from Souper: 000000000000000000000000000000000000000000000000000000000000xxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 6 %1 = block 5 %2:i8 = phi %1, 1:i8, 1:i8, 0:i8, 0:i8, 0:i8 %3:i8 = phi %0, %2, %2, %2, 0:i8, 0:i8, 0:i8 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1 = block 2 %2:i8 = phi %1, 0:i8, 1:i8 %3:i8 = phi %0, %2, 1:i8, %2, %2 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i16 = var %1:i32 = zext %0 %2:i1 = var %3:i32 = zext %2 %4:i32 = shlnw %1, %3 infer %4 known from Souper: 000000000000000xxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 6 %1:i32 = var (000000000000000000000000000000xx) %2:i32 = var (00000000000000000000000000000xxx) %3:i32 = addnw %1, %2 %4:i32 = addnw 1:i32, %3 infer %4 known from Souper: 0000000000000000000000000000xxxx known from compiler: 000000000000000000000000000xxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i1 = var %2:i8 = zext %1 %3:i1 = var %4:i8 = select %3, 0:i8, %2 %5:i8 = phi %0, %2, %4 infer %5 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 8 %2:i32 = phi %1, 0:i32, 1:i32, 3:i32, 4:i32, 2:i32, 8:i32, 6:i32, 7:i32 %3:i32 = phi %0, %2, 5:i32 infer %3 known from Souper: 0000000000000000000000000000xxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = subnsw 100:i32, %0 %2:i1 = slt 0:i32, %1 %3:i32 = select %2, %1, 0:i32 infer %3 known from Souper: 0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 6 %2:i32 = phi %1, 318:i32, 318:i32, 318:i32, 318:i32, 317:i32, 317:i32 %3:i32 = phi %0, %2, 94:i32, 93:i32 infer %3 known from Souper: 00000000000000000000000x0xx111xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i1 = var %1:i32 = select %0, 12:i32, 8:i32 %2:i32 = bswap %1 infer %2 known from Souper: 00001x00000000000000000000000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i1 = var %1:i32 = select %0, 8:i32, 4:i32 %2:i64 = var (0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %3:i32 = trunc %2 %4:i1 = ult %1, %3 %5:i32 = select %4, %1, %3 infer %5 known from Souper: 0000000000000000000000000000xxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 2 %2 = block 2 %3:i8 = var (0000000x) %4:i8 = phi %1, 1:i8, %3 %5 = block 3 %6:i8 = phi %5, 1:i8, %4, %4 %7:i8 = phi %0, %4, 1:i8, %6 infer %7 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1 = block 4 %2:i32 = var (0000000000000000000000000xx10x11) %3:i32 = var (000000000000000000000000x11xx010) %4:i32 = phi %1, 22:i32, %2, %3, 19:i32 %5:i1 = var %6:i32 = select %5, 116:i32, 21:i32 %7:i1 = var %8:i32 = select %7, 113:i32, 233:i32 %9 = block 2 %10:i1 = var %11:i32 = select %10, 24:i32, 22:i32 %12:i32 = phi %0, %4, 19:i32, %6, %8, %11 infer %12 known from Souper: 000000000000000000000000xxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 12 %1 = block 5 %2:i32 = phi %1, 228:i32, 227:i32, 229:i32, 229:i32, 229:i32 %3:i32 = phi %0, 225:i32, 225:i32, 225:i32, 225:i32, 225:i32, 225:i32, 225:i32, %2, 225:i32, 225:i32, 225:i32, 225:i32 infer %3 known from Souper: 00000000000000000000000011100xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = add 18446744073709551614:i64, %0 %2:i1 = ult %1, 2:i64 %3:i64 = select %2, %1, 2:i64 infer %3 known from Souper: 00000000000000000000000000000000000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (000000000000000000000000000000xx) %2:i32 = var (0000000000000000000000000000xxxx) %3:i32 = phi %0, %1, %2 %4:i1 = slt 4294967295:i32, %3 infer %4 known from Souper: 1 known from compiler: x souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1:i32 = var (0000000000000000000000000000000x) %2:i32 = or 66:i32, %1 %3:i32 = phi %0, 68:i32, 68:i32, %2, 66:i32 infer %3 known from Souper: 00000000000000000000000001000xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxx1xxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i32 = var (00000000000000000000000000000xxx) %3 = block 2 %4:i32 = var (000000000000000000000000000000xx) %5:i32 = phi %1, %2, %4 %6:i32 = var (0000000000000000000000000000000x) %7:i32 = addnsw %5, %6 %8:i32 = phi %0, %7, %5 infer %8 known from Souper: 0000000000000000000000000000xxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i64 = var %2:i32 = var %3:i64 = zext %2 %4:i64 = add %1, %3 %5:i64 = urem %4, %3 infer %5 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx llvm is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i64 = var %2:i64 = sub 18446744073709551614:i64, %1 %3:i64 = xor 18446744073709551615:i64, %1 %4:i64 = or %2, %3 infer %4 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx1 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 1 %2:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %3:i64 = phi %1, %2 %4:i32 = var %5:i64 = zext %4 %6:i64 = phi %0, %3, %5 infer %6 known from Souper: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i1 = var %2:i64 = var (00000000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %3:i64 = select %1, 8:i64, %2 %4:i64 = phi %0, %3, 4:i64 infer %4 known from Souper: 00000000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 2 %2:i32 = var (00000000000000000000xx0x1x10xxx0) %3 = block 2 %4:i32 = var (00000000000000000000xx0x1x10xxxx) %5:i32 = phi %3, %4, %4 %6:i32 = phi %1, %2, %5 %7:i32 = phi %0, %6, %6, %5 infer %7 known from Souper: 00000000000000000000xx0x1x10xxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (000000000000000000xxxxxxxxxxxxxx) %1:i32 = and 3:i32, %0 %2:i32 = shl 8:i32, %1 infer %2 known from Souper: 0000000000000000000000000xxxx000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i1 = var %2:i32 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00) %3:i32 = select %1, 0:i32, %2 %4:i32 = phi %0, 0:i32, %3 infer %4 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = var (000xxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %2:i32 = urem %0, %1 %3:i32 = var %4:i32 = lshr %3, 3:i32 %5:i32 = addnw %2, %4 infer %5 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 00xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx llvm is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i8 = var %1:i8 = lshr %0, 4:i8 %2:i1 = var %3:i8 = select %2, 48:i8, 87:i8 %4:i8 = addnuw %1, %3 infer %4 known from Souper: 0xxxxxxx known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = add 4294965104:i32, %0 %2:i32 = lshr 261375:i32, %1 infer %2 known from Souper: 00000000000000xxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 8 %1:i16 = var (00000000000xxxxx) %2:i32 = zext %1 %3:i32 = phi %0, %2, 0:i32, 3:i32, 5:i32, 4:i32, 2:i32, 11:i32, 1:i32 infer %3 known from Souper: 000000000000000000000000000xxxxx known from compiler: 0000000000000000xxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var %2:i16 = trunc %1 %3:i16 = lshr 8079:i16, %2 infer %3 known from Souper: 000xxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i1 = var %3:i8 = zext %2 %4:i8 = phi %1, %3, 1:i8 %5:i8 = phi %0, %4, %3 infer %5 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i8 = var (000xx001) %2:i8 = phi %0, 33:i8, %1 %3:i64 = zext %2 infer %3 known from Souper: 0000000000000000000000000000000000000000000000000000000000xxx001 known from compiler: 0000000000000000000000000000000000000000000000000000000000xxx00x souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i64 = zext %0 %2:i64 = lshr 8800388120609:i64, %1 infer %2 known from Souper: 00000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i64 = var (0000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00) %2:i64 = or 1:i64, %1 %3:i64 = phi %0, 1:i64, 1:i64, %2 infer %3 known from Souper: 0000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx01 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx1 souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 17 %1:i8 = var %2:i8 = and 1:i8, %1 %3:i8 = var %4:i8 = and 1:i8, %3 %5:i8 = var %6:i8 = and 1:i8, %5 %7:i8 = var %8:i8 = and 1:i8, %7 %9:i8 = var %10:i8 = and 1:i8, %9 %11:i8 = var %12:i8 = and 1:i8, %11 %13:i8 = var %14:i8 = and 1:i8, %13 %15:i8 = var %16:i8 = and 1:i8, %15 %17:i8 = var %18:i8 = and 1:i8, %17 %19:i8 = var %20:i8 = and 1:i8, %19 %21:i8 = var %22:i8 = and 1:i8, %21 %23 = block 6 %24:i1 = var %25:i8 = zext %24 %26 = block 2 %27:i8 = var (0000000x) %28:i8 = var (0000000x) %29:i8 = phi %26, %27, %28 %30:i8 = phi %0, %2, %4, %6, 0:i8, %8, %10, %12, %14, %16, %18, %20, %22, %25, 0:i8, 0:i8, 0:i8, %29 infer %30 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i1 = var %2:i32 = select %1, 2:i32, 0:i32 %3:i1 = var %4:i32 = var (0000000000000000000000000000000x) %5:i32 = select %3, %4, 0:i32 %6:i32 = phi %0, %2, 0:i32, %5 infer %6 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 6 %1 = block 4 %2:i8 = phi %1, 0:i8, 0:i8, 0:i8, 2:i8 %3:i8 = phi %0, 0:i8, %2, 3:i8, 2:i8, 1:i8, 3:i8 infer %3 known from Souper: 000000xx known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = sub 63:i64, %0 %2:i1 = ult 15:i64, %1 %3:i64 = select %2, 15:i64, %1 infer %3 known from Souper: 000000000000000000000000000000000000000000000000000000000000xxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i64 = var %2:i64 = lshr %1, 3:i64 %3:i1 = var %4:i64 = select %3, %2, 8:i64 %5:i64 = phi %0, %2, %4 infer %5 known from Souper: 000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 3 %2:i32 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0) %3:i32 = phi %1, %2, %2, 2:i32 %4:i32 = phi %0, %3, 2:i32 infer %4 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = phi %0, 0:i32, 5:i32 %2:i1 = eq 5:i32, %1 %3:i32 = select %2, 6:i32, %1 infer %3 known from Souper: 00000000000000000000000000000xx0 known from compiler: 00000000000000000000000000000xxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 3 %2:i32 = var (0000000000000000000000000000000x) %3:i32 = phi %1, %2, 1:i32, 1:i32 %4 = block 2 %5:i32 = phi %4, 1:i32, %3 %6:i32 = phi %0, %3, %5 infer %6 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (00000000000000000000000000xxxxxx) %1:i32 = and 1:i32, %0 %2:i1 = var %3:i32 = select %2, 14:i32, 15:i32 %4:i32 = shl %1, %3 infer %4 known from Souper: 0000000000000000xx00000000000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i32 = trunc %0 %2:i32 = ashr %1, 31:i32 %3:i32 = xor %2, %1 infer %3 known from Souper: 0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 3 %2:i32 = var (00000000000000000000000000000x0x) %3:i32 = phi %1, %2, 2:i32, 1:i32 %4:i32 = phi %0, 2:i32, %3 infer %4 known from Souper: 00000000000000000000000000000xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1 = block 2 %2:i8 = var (0000000x) %3:i8 = var (0000000x) %4:i8 = phi %1, %2, %3 %5:i8 = phi %0, %4, 1:i8, %4, %4 infer %5 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i32 = phi %1, 4:i32, 0:i32 %3:i32 = phi %0, %2, 5:i32 infer %3 known from Souper: 00000000000000000000000000000x0x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (00000000000000000000000000000000000000000000000000000xxxxxxxxxxx) %1:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxx000) %2:i64 = addnw %0, %1 %3:i64 = addnw 128:i64, %2 infer %3 known from Souper: 0000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 2 %2 = block 5 %3:i8 = var (0000000x) %4:i8 = phi %1, %3, 1:i8 %5 = block 2 %6:i8 = phi %5, 0:i8, %4 %7:i8 = phi %0, %4, %6, %4 infer %7 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 7 %1 = block 3 %2 = block 2 %3:i32 = var (000000000000000000000000000000x0) %4:i32 = var (0000000000000000000000000000000x) %5:i32 = phi %1, %3, %4, 1:i32 %6:i32 = phi %0, %5, 1:i32, 1:i32, 1:i32, 1:i32, 1:i32, 1:i32 infer %6 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i1 = var %2:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %3:i64 = select %1, %2, 2:i64 %4:i1 = ult %0, %3 %5:i64 = select %4, %0, %3 infer %5 known from Souper: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i32 = var (000000000000000000000000000000xx) %3:i32 = var (0000000000000000000000000000xxxx) %4:i32 = phi %1, %2, %3 %5:i32 = phi %0, %4, 0:i32 infer %5 known from Souper: 0000000000000000000000000000xxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = var (0000000000000000000000000000000000000000000000000000000000xxx110) %2:i64 = shl 1:i64, %1 %3:i64 = and %0, %2 infer %3 known from Souper: 0x0000000x0000000x0000000x0000000x0000000x0000000x0000000x000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i1 = ult 9:i64, %0 %2:i32 = trunc %0 %3:i32 = select %1, 4:i32, %2 infer %3 known from Souper: 0000000000000000000000000000xxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1:i8 = var (0000000x) %2:i8 = xor 1:i8, %1 %3:i8 = phi %0, 0:i8, %2, 0:i8, 0:i8 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (000000000000000000000000000000000000000000000000xxxxxxxxxxxxxxxx) %1:i64 = var %2:i64 = srem %0, %1 %3:i32 = trunc %2 infer %3 known from Souper: 0000000000000000xxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1:i32 = var (0000000000000000000000000000000x) %2:i8 = trunc %1 %3:i8 = phi %0, %2, 0:i8, %2, %2, %2 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 3 %2:i32 = var (00000000000000000000000000000x0x) %3 = block 14 %4:i32 = var (00000000000000000000000000000xxx) %5:i32 = phi %1, %2, %4, 0:i32 %6:i1 = var %7:i32 = select %6, 0:i32, 3:i32 %8:i32 = phi %0, %5, 0:i32, %7 infer %8 known from Souper: 00000000000000000000000000000xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i32 = phi %1, 37:i32, 33:i32 %3:i32 = phi %0, 37:i32, %2 infer %3 known from Souper: 00000000000000000000000000100x01 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i8 = var (0000000x) %3:i8 = phi %1, 0:i8, %2 %4:i8 = phi %0, 0:i8, %3 infer %4 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 6 %2:i32 = phi %1, 0:i32, 1:i32, 1:i32, 1:i32, 1:i32, 1:i32 %3:i32 = phi %0, 1:i32, %2 infer %3 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx000000) %1:i64 = udiv %0, 19:i64 %2:i64 = addnw 2:i64, %1 infer %2 known from Souper: 0000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 20 %1 = block 2 %2:i32 = phi %1, 1:i32, 0:i32 %3:i32 = phi %0, 1:i32, 1:i32, 1:i32, 0:i32, 0:i32, 0:i32, 1:i32, 1:i32, 1:i32, 1:i32, 1:i32, 1:i32, 1:i32, 1:i32, 1:i32, 1:i32, 1:i32, 0:i32, 0:i32, %2 infer %3 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1 = block 4 %2:i32 = phi %1, 1:i32, 0:i32, 1:i32, 0:i32 %3:i1 = slt %0, %2 %4:i32 = select %3, %2, %0 infer %4 known from Souper: 0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 1 %2:i8 = var (0000000x) %3:i8 = phi %1, %2 %4:i8 = phi %0, %3, 1:i8 infer %4 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2 = block 4 %3:i8 = var (0000000x) %4:i8 = phi %1, 0:i8, %3 %5:i1 = var %6:i8 = select %5, 1:i8, %4 %7:i8 = phi %0, %4, %6 infer %7 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1:i8 = var (0000000x) %2:i32 = zext %1 %3:i32 = phi %0, 0:i32, %2, 1:i32, 1:i32 infer %3 known from Souper: 0000000000000000000000000000000x known from compiler: 000000000000000000000000xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = var %2:i32 = mul %0, %1 %3:i32 = add 4294967295:i32, %2 %4:i32 = and %3, %2 infer %4 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1:i8 = var %2:i32 = zext %1 %3:i8 = var %4:i32 = zext %3 %5:i8 = var %6:i32 = zext %5 %7:i8 = var %8:i32 = zext %7 %9 = block 2 %10:i32 = var (000000000000000000000000xxxxxxxx) %11:i32 = phi %9, %10, 8:i32 %12:i32 = phi %0, %2, %4, %6, %8, %11 infer %12 known from Souper: 000000000000000000000000xxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i1 = var %2:i8 = zext %1 %3:i1 = var %4:i8 = select %3, %2, 1:i8 %5:i8 = phi %0, %2, %4 infer %5 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 1 %2:i32 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00) %3:i32 = phi %1, %2 %4:i32 = phi %0, %3, 0:i32 infer %4 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 4 %2:i1 = var %3:i8 = zext %2 %4:i8 = phi %1, %3, 1:i8, 1:i8, 1:i8 %5:i8 = phi %0, %4, %3 infer %5 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1 = block 2 %2:i8 = var (0000000x) %3:i8 = var (0000000x) %4:i8 = phi %1, %2, %3 %5 = block 2 %6:i8 = phi %5, %2, %3 %7:i8 = phi %0, %4, %6, %4, %4 infer %7 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 4 %2:i8 = phi %1, 0:i8, 0:i8, 1:i8, 1:i8 %3:i8 = phi %0, %2, 1:i8, 0:i8 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1:i32 = var (000000000000000000000000000000xx) %2:i32 = addnw 1:i32, %1 %3:i32 = phi %0, %2, 0:i32, 0:i32, 0:i32 infer %3 known from Souper: 00000000000000000000000000000xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i24 = var %1:i32 = zext %0 %2:i32 = lshr 33554469:i32, %1 infer %2 known from Souper: 000000xxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 6 %1:i32 = var (0000000000000000000000000000000x) %2:i32 = phi %0, %1, 0:i32, 0:i32, 1:i32, 2:i32, 2:i32 %3:i32 = addnw 5:i32, %2 infer %3 known from Souper: 000000000000000000000000000001xx known from compiler: 0000000000000000000000000000xxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i8 = var (0000000x) %3:i8 = phi %1, %2, 0:i8 %4 = block 4 %5:i8 = var (0000000x) %6:i8 = phi %4, %5, 1:i8, 1:i8, %5 %7:i8 = phi %0, %3, %6 infer %7 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i64 = var (0000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %2:i64 = addnw 1:i64, %1 %3:i64 = phi %0, 0:i64, %2 infer %3 known from Souper: 000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i64 = var (0000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00) %2:i64 = addnw 56:i64, %1 %3:i64 = var (0000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0000) %4:i64 = addnw 72:i64, %3 %5:i64 = phi %0, %2, %4 infer %5 known from Souper: 000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 17 %2:i64 = var (00000000000000000000000000000000000000000000000000000000000000xx) %3:i64 = phi %1, 0:i64, 2:i64, 2:i64, 2:i64, 2:i64, 0:i64, 0:i64, 0:i64, 0:i64, %2, 0:i64, 0:i64, 2:i64, 0:i64, 0:i64, 0:i64, 0:i64 %4:i64 = phi %0, %3, 2:i64 infer %4 known from Souper: 00000000000000000000000000000000000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (0000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %1:i64 = and 65535:i64, %0 %2:i1 = var %3:i64 = select %2, 8:i64, 0:i64 %4:i64 = lshr %1, %3 infer %4 known from Souper: 000000000000000000000000000000000000000000000000xxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 11 %1:i32 = phi %0, 1:i32, 2:i32, 2:i32, 2:i32, 1:i32, 1:i32, 1:i32, 1:i32, 1:i32, 1:i32, 1:i32 %2:i32 = subnsw 0:i32, %1 infer %2 known from Souper: 1111111111111111111111111111111x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i8 = var (0000000x) %2:i8 = var (0000000x) %3:i8 = or %1, %2 %4:i8 = var (0000000x) %5:i8 = or %4, %3 %6:i8 = phi %0, %3, %5, %3 infer %6 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 20 %1:i8 = var %2:i32 = zext %1 %3:i8 = var %4:i32 = zext %3 %5:i8 = var %6:i32 = zext %5 %7:i8 = var %8:i32 = zext %7 %9:i8 = var %10:i32 = zext %9 %11:i8 = var %12:i32 = zext %11 %13:i1 = var %14 = block 3 %15:i32 = var (000000000000000000000000xxxxxxxx) %16:i32 = select %13, 2:i32, %15 %17:i1 = var %18 = block 3 %19:i32 = var (000000000000000000000000xxxxxxxx) %20:i32 = select %17, 3:i32, %19 %21:i32 = var %22:i32 = and 3:i32, %21 %23:i32 = phi %0, 2:i32, %2, 3:i32, %4, 2:i32, %6, 3:i32, 2:i32, %8, 3:i32, 2:i32, %10, 3:i32, %12, 0:i32, %16, %20, 0:i32, 0:i32, %22 infer %23 known from Souper: 000000000000000000000000xxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 9 %1:i32 = var (00000000000000000000010001x110xx) %2:i32 = var (00000000000000000000010001x11101) %3:i32 = phi %0, %1, %2, 1108:i32, 1146:i32, 1128:i32, 1101:i32, 1145:i32, 1127:i32, 1100:i32 %4:i64 = zext %3 infer %4 known from Souper: 0000000000000000000000000000000000000000000000000000010001xxxxxx known from compiler: 00000000000000000000000000000000000000000000000000000x000xxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (00000000000000000000001100011xx1) %2:i32 = phi %0, 804:i32, %1 %3:i64 = zext %2 infer %3 known from Souper: 0000000000000000000000000000000000000000000000000000001100xxxxxx known from compiler: 000000000000000000000000000000000000000000000000000000xx00xxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %1:i64 = addnw 1:i64, %0 %2 = block 2 %3:i32 = var %4:i64 = zext %3 %5:i64 = addnw %1, %4 infer %5 known from Souper: 0000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1 = block 3 %2:i32 = phi %1, 2:i32, 0:i32, 2:i32 %3:i32 = phi %0, %2, 2:i32, 0:i32, 1:i32 infer %3 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1 = block 7 %2 = block 4 %3:i32 = var (000000000000000000000000000000x0) %4:i32 = phi %1, 2:i32, 2:i32, 2:i32, %3, 0:i32, 0:i32, 0:i32 %5:i32 = phi %0, %4, 1:i32, 1:i32, 1:i32 infer %5 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (000000000000000000000000000000x0) %2:i32 = xor 3:i32, %1 %3:i32 = phi %0, %2, 3:i32 infer %3 known from Souper: 000000000000000000000000000000x1 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 3 %2:i32 = var (000xxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %3:i64 = zext %2 %4:i64 = phi %0, %3, %3 infer %4 known from Souper: 00000000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %2:i64 = shlnw %1, 2:i64 %3:i64 = phi %0, 0:i64, %2 infer %3 known from Souper: 000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00 souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 7 %1 = block 4 %2:i8 = phi %1, 0:i8, 0:i8, 1:i8, 1:i8 %3 = block 4 %4:i8 = phi %3, 0:i8, 0:i8, 1:i8, 1:i8 %5 = block 12 %6 = block 5 %7:i8 = var (0000000x) %8 = block 5 %9:i8 = var (0000000x) %10 = block 3 %11:i8 = var (0000000x) %12 = block 3 %13:i8 = var (0000000x) %14:i8 = phi %5, %7, %7, %9, %9, %11, %11, %11, %11, %13, %13, %13, %13 %15:i8 = phi %0, %2, %4, %4, %4, %4, %2, %14 infer %15 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = add 1:i32, %0 %2:i1 = ult 15:i32, %1 %3:i32 = select %2, 15:i32, %1 infer %3 known from Souper: 0000000000000000000000000000xxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 6 %1 = block 2 %2:i8 = phi %1, 0:i8, 1:i8 %3 = block 2 %4:i8 = phi %3, 0:i8, 1:i8 %5 = block 2 %6:i8 = phi %5, 0:i8, 1:i8 %7 = block 2 %8:i8 = phi %7, 0:i8, 1:i8 %9:i8 = phi %0, %2, %4, %6, %8, 0:i8, 0:i8 infer %9 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (000000000000000000000000000xxxxx) %1:i64 = zext %0 %2:i64 = shl 18446744073709551615:i64, %1 infer %2 known from Souper: 111111111111111111111111111111111xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i1 = var %2:i32 = select %1, 302:i32, 20:i32 %3:i32 = var (000000000000000000000000xx0x10xx) %4:i32 = var (00000000000000000000000x00x101x0) %5:i32 = select %1, %3, %4 %6:i32 = phi %0, %2, %5 infer %6 known from Souper: 00000000000000000000000xxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (0000000000000000000000000000xxxx) %1:i32 = var (0000000000000000000000000000xxxx) %2:i32 = subnsw %0, %1 %3:i32 = shl 65536:i32, %2 infer %3 known from Souper: xxxxxxxxxxxxxxxx0000000000000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 9 %2:i8 = var (0000000x) %3 = block 2 %4:i8 = var (0000000x) %5:i8 = phi %1, %2, 1:i8, 1:i8, 1:i8, 0:i8, %4, 1:i8, 1:i8, 1:i8 %6:i8 = phi %0, 1:i8, %5, 1:i8 infer %6 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i64 = zext %0 %2:i64 = lshr 1767200085:i64, %1 infer %2 known from Souper: 000000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 7 %1:i32 = var (0000000000000000000000000010xx01) %2:i32 = var (0000000000000000000000000010xx00) %3:i32 = var (00000000000000000000000000100x11) %4:i32 = var (00000000000000000000000000100x10) %5:i32 = phi %0, 33:i32, %1, %2, %3, %4, 32:i32, 32:i32 %6:i32 = and 46:i32, %5 infer %6 known from Souper: 0000000000000000000000000010xxx0 known from compiler: 00000000000000000000000000x0xxx0 souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i32 = var (00000000000000000000x00x1x1111xx) %2:i32 = var (00000000000000000000x00x1x011x10) %3:i32 = var (00000000000000000000x00x1xxxxxx1) %4:i32 = phi %0, %1, %2, %3 %5:i64 = zext %4 infer %5 known from Souper: 0000000000000000000000000000000000000000000000000000x00x1xxxxxxx known from compiler: 0000000000000000000000000000000000000000000000000000x00xxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var %2:i32 = var (00000000000000000000000000000xxx) %3:i32 = and %1, %2 %4:i32 = var (000000000000000000000000000xx000) %5:i32 = or %3, %4 %6:i32 = phi %0, %5, %3 infer %6 known from Souper: 000000000000000000000000000xxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i32 = phi %1, 1:i32, 14:i32 %3:i32 = var (00000000000000000000000000000xxx) %4:i32 = or 16:i32, %3 %5:i32 = phi %0, %2, %4 infer %5 known from Souper: 000000000000000000000000000xxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (00xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %1:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %2:i64 = mul %0, %1 %3:i1 = ult %2, 262144:i64 %4:i64 = select %3, %2, 262144:i64 infer %4 known from Souper: 000000000000000000000000000000000000000000000xxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (000000000000000000000000000000x0) %2:i32 = addnw 2995:i32, %1 %3:i32 = phi %0, 2995:i32, %2 infer %3 known from Souper: 00000000000000000000101110110xx1 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (000000000000000000000000xxxxxxxx) %1:i32 = addnsw 4294967293:i32, %0 %2:i32 = lshr 963761:i32, %1 infer %2 known from Souper: 000000000000xxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1 = block 1 %2:i8 = var (0000000x) %3:i8 = phi %1, %2 %4:i8 = phi %0, 0:i8, %3, 1:i8, 0:i8 infer %4 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i64 = var (000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %2:i64 = var (00xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %3:i64 = var (0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %4:i64 = phi %0, %1, %2, %3 %5:i64 = addnuw 9223372036854775807:i64, %4 %6:i64 = and %4, %5 infer %6 known from Souper: 0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0 known from compiler: 0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i16 = trunc %0 %2:i16 = lshr 323:i16, %1 infer %2 known from Souper: 0000000xxxxxxxxx known from compiler: xxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i1 = var %2:i32 = var (0000000000000000000000000000000x) %3:i32 = select %1, 5:i32, %2 %4:i32 = phi %0, 1:i32, 1:i32, %3 infer %4 known from Souper: 00000000000000000000000000000x0x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 302 %1:i1 = var %2:i32 = select %1, 3:i32, 0:i32 %3:i1 = var %4:i32 = select %3, 3:i32, 0:i32 %5 = block 3 %6:i1 = var %7:i32 = select %6, 3:i32, 9:i32 %8:i1 = var %9:i32 = select %8, 3:i32, 10:i32 %10:i1 = var %11:i32 = select %10, 3:i32, 11:i32 %12 = block 3 %13:i1 = var %14:i32 = select %13, 3:i32, 29:i32 %15 = block 3 %16:i1 = var %17:i32 = select %16, 3:i32, 28:i32 %18 = block 3 %19:i1 = var %20:i32 = select %19, 3:i32, 31:i32 %21 = block 3 %22:i1 = var %23:i32 = select %22, 3:i32, 32:i32 %24 = block 3 %25:i1 = var %26:i32 = select %25, 3:i32, 34:i32 %27:i1 = var %28:i32 = select %27, 3:i32, 9:i32 %29:i1 = var %30:i32 = select %29, 3:i32, 27:i32 %31:i1 = var %32:i32 = select %31, 3:i32, 27:i32 %33:i1 = var %34:i32 = select %33, 3:i32, 7:i32 %35:i1 = var %36:i32 = select %35, 3:i32, 8:i32 %37:i1 = var %38:i32 = select %37, 3:i32, 27:i32 %39:i1 = var %40:i32 = select %39, 3:i32, 6:i32 %41:i32 = var (000000000000000000000000000000x0) %42:i32 = addnw 3:i32, %41 %43:i1 = var %44:i32 = select %43, 3:i32, 5:i32 %45:i1 = var %46:i32 = select %45, 3:i32, 12:i32 %47:i1 = var %48:i32 = select %47, 3:i32, 13:i32 %49:i1 = var %50:i32 = select %49, 3:i32, 14:i32 %51:i1 = var %52:i32 = select %51, 3:i32, 15:i32 %53:i1 = var %54:i32 = select %53, 3:i32, 16:i32 %55:i1 = var %56:i32 = select %55, 3:i32, 17:i32 %57:i1 = var %58:i32 = select %57, 3:i32, 18:i32 %59:i1 = var %60:i32 = select %59, 3:i32, 19:i32 %61:i1 = var %62:i32 = select %61, 3:i32, 20:i32 %63:i1 = var %64:i32 = select %63, 3:i32, 21:i32 %65:i1 = var %66:i32 = select %65, 3:i32, 49:i32 %67:i1 = var %68:i32 = select %67, 3:i32, 49:i32 %69:i1 = var %70:i32 = select %69, 3:i32, 49:i32 %71:i1 = var %72:i32 = select %71, 3:i32, 49:i32 %73:i1 = var %74:i32 = select %73, 3:i32, 7:i32 %75:i1 = var %76:i32 = select %75, 3:i32, 8:i32 %77:i1 = var %78:i32 = select %77, 3:i32, 50:i32 %79:i1 = var %80:i32 = select %79, 3:i32, 51:i32 %81:i1 = var %82:i32 = select %81, 3:i32, 37:i32 %83:i1 = var %84:i32 = select %83, 3:i32, 38:i32 %85:i1 = var %86:i32 = select %85, 3:i32, 39:i32 %87:i1 = var %88:i32 = select %87, 3:i32, 40:i32 %89:i1 = var %90:i32 = select %89, 3:i32, 41:i32 %91:i1 = var %92:i32 = select %91, 3:i32, 42:i32 %93:i1 = var %94:i32 = select %93, 3:i32, 43:i32 %95:i1 = var %96:i32 = select %95, 3:i32, 44:i32 %97:i1 = var %98:i32 = select %97, 3:i32, 45:i32 %99:i1 = var %100:i32 = select %99, 3:i32, 46:i32 %101:i1 = var %102:i32 = select %101, 3:i32, 47:i32 %103:i1 = var %104:i32 = select %103, 3:i32, 48:i32 %105:i1 = var %106:i32 = select %105, 3:i32, 27:i32 %107:i1 = var %108:i32 = select %107, 3:i32, 30:i32 %109:i1 = var %110:i32 = select %109, 3:i32, 33:i32 %111:i1 = var %112:i32 = select %111, 3:i32, 35:i32 %113:i1 = var %114:i32 = select %113, 3:i32, 36:i32 %115:i1 = var %116:i32 = select %115, 3:i32, 15:i32 %117:i1 = var %118:i32 = select %117, 3:i32, 22:i32 %119:i1 = var %120:i32 = select %119, 3:i32, 23:i32 %121:i1 = var %122:i32 = select %121, 3:i32, 24:i32 %123:i1 = var %124:i32 = select %123, 3:i32, 25:i32 %125:i1 = var %126:i32 = select %125, 3:i32, 26:i32 %127:i32 = phi %0, %2, %4, 0:i32, %7, 3:i32, 3:i32, %9, %11, 3:i32, 3:i32, 3:i32, 3:i32, 3:i32, 3:i32, 3:i32, 3:i32, 3:i32, 3:i32, 3:i32, 3:i32, 3:i32, 3:i32, 3:i32, 3:i32, 3:i32, 3:i32, 3:i32, 3:i32, 3:i32, 3:i32, 3:i32, 3:i32, 3:i32, %14, %17, %20, %23, %26, 3:i32, 3:i32, 3:i32, 3:i32, 3:i32, 3:i32, 3:i32, 3:i32, 3:i32, 3:i32, 3:i32, 3:i32, 3:i32, 3:i32, 3:i32, 3:i32, 3:i32, 3:i32, 3:i32, 3:i32, 3:i32, 3:i32, 3:i32, 3:i32, 3:i32, 3:i32, 3:i32, 3:i32, 3:i32, 3:i32, 3:i32, 3:i32, 3:i32, 3:i32, 3:i32, 3:i32, 3:i32, 3:i32, 3:i32, 3:i32, 3:i32, 3:i32, 3:i32, 3:i32, 3:i32, 3:i32, 3:i32, 3:i32, 3:i32, 3:i32, 3:i32, 3:i32, 3:i32, 3:i32, 3:i32, 3:i32, 3:i32, 3:i32, 3:i32, 3:i32, 3:i32, 3:i32, 3:i32, 3:i32, 3:i32, 3:i32, 3:i32, 3:i32, 3:i32, 3:i32, 0:i32, 3:i32, 3:i32, 3:i32, 3:i32, 3:i32, 3:i32, 3:i32, 3:i32, 3:i32, 3:i32, 3:i32, 3:i32, %28, 9:i32, 9:i32, 9:i32, %30, 27:i32, %32, 27:i32, 7:i32, %34, 7:i32, 8:i32, %36, 8:i32, 27:i32, 3:i32, %38, %40, 6:i32, 6:i32, 6:i32, %42, 5:i32, 5:i32, 5:i32, 5:i32, %44, 5:i32, 12:i32, %46, 12:i32, 13:i32, %48, 13:i32, 14:i32, %50, 14:i32, 15:i32, %52, 15:i32, 16:i32, %54, 16:i32, 17:i32, %56, 17:i32, 18:i32, %58, 18:i32, 19:i32, %60, 19:i32, 20:i32, %62, 20:i32, 21:i32, %64, 21:i32, 49:i32, %66, 49:i32, 49:i32, 49:i32, %68, 49:i32, 49:i32, %70, 49:i32, 49:i32, %72, 49:i32, 7:i32, %74, 7:i32, 8:i32, %76, 8:i32, %78, 50:i32, %80, 51:i32, %82, 37:i32, 37:i32, 37:i32, 37:i32, %84, 38:i32, 38:i32, 38:i32, 38:i32, %86, 39:i32, 39:i32, 39:i32, 39:i32, %88, 40:i32, 40:i32, 40:i32, 40:i32, %90, 41:i32, 41:i32, 41:i32, 41:i32, %92, 42:i32, 42:i32, 42:i32, 42:i32, %94, 43:i32, 43:i32, 43:i32, 43:i32, %96, 44:i32, 44:i32, 44:i32, 44:i32, %98, 45:i32, 45:i32, 45:i32, 45:i32, %100, 46:i32, 46:i32, 46:i32, 46:i32, 47:i32, %102, 47:i32, %104, 48:i32, 48:i32, 48:i32, 27:i32, 3:i32, %106, 30:i32, 30:i32, %108, 33:i32, 33:i32, %110, 35:i32, 35:i32, %112, 36:i32, %114, 36:i32, 15:i32, %116, 15:i32, 22:i32, %118, 23:i32, %120, 24:i32, %122, 25:i32, %124, 26:i32, %126, 3:i32, 3:i32, 3:i32, 3:i32, 3:i32, 3:i32, 3:i32, 3:i32, 3:i32, 3:i32, 3:i32, 3:i32, 3:i32, 3:i32, 3:i32 infer %127 known from Souper: 00000000000000000000000000xxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1 = block 6 %2 = block 3 %3:i32 = var (0000000000000000000000000000000x) %4:i32 = phi %1, %3, %3, 1:i32, 1:i32, 1:i32, 1:i32 %5:i32 = phi %0, %4, 2:i32, 2:i32, 2:i32, 2:i32 infer %5 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1 = block 3 %2:i8 = phi %1, 0:i8, 1:i8, 1:i8 %3:i8 = phi %0, %2, %2, 1:i8, 1:i8 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i32 = var (0000000000000000000000000000000x) %3 = block 2 %4:i32 = var (000000000000000000000000000000xx) %5:i32 = phi %1, %2, %4 %6:i32 = phi %0, %5, 0:i32 infer %6 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i64 = var (0000000000000000000000000000000000000000000000000000000000xxxxxx) %2:i32 = trunc %1 %3:i32 = phi %0, 31:i32, %2, 64:i32 infer %3 known from Souper: 0000000000000000000000000xxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 2 %2 = block 4 %3:i32 = var (0000000000000000000000000xxxxxxx) %4:i32 = phi %1, 64:i32, %3 %5:i32 = phi %0, %4, %4, 3666:i32 infer %5 known from Souper: 00000000000000000000xxx00xxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i64 = var (00000000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %2:i64 = phi %0, %1, 4:i64 %3:i64 = addnsw 18446744073709551615:i64, %2 %4:i64 = and %2, %3 infer %4 known from Souper: 00000000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxx0 known from compiler: 00000000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1:i32 = var (0000000000000000000000100011011x) %2:i32 = var (000000000000000000000010001011xx) %3:i32 = phi %0, 576:i32, %1, %2, 584:i32, 575:i32 %4:i64 = zext %3 infer %4 known from Souper: 000000000000000000000000000000000000000000000000000000100xxxxxxx known from compiler: 000000000000000000000000000000000000000000000000000000x00xxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 1 %2:i32 = var %3:i64 = zext %2 %4 = block 1 %5:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %6:i64 = phi %4, %5 %7:i64 = phi %0, %3, %6 infer %7 known from Souper: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1 = block 4 %2:i8 = var (0000000x) %3:i8 = phi %1, %2, 0:i8, 1:i8, 1:i8 %4:i8 = phi %0, 0:i8, 0:i8, %3, %3 infer %4 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 5 %2:i8 = var (0000xxx0) %3:i8 = var (000x0000) %4:i8 = or %2, %3 %5:i8 = or 1:i8, %4 %6:i8 = phi %0, %5, %4 infer %6 known from Souper: 000xxxxx known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 3 %2 = block 4 %3:i32 = var (000000000000000000000000000000x0) %4:i32 = phi %1, 2:i32, 2:i32, %3 %5:i32 = phi %0, 2:i32, %4 infer %5 known from Souper: 000000000000000000000000000000x0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 7 %1 = block 2 %2:i32 = phi %1, 0:i32, 1:i32 %3:i32 = phi %0, 1:i32, 1:i32, 0:i32, 0:i32, 0:i32, %2, 1:i32 infer %3 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 2 %2 = block 3 %3:i8 = var (0000000x) %4:i8 = var (0000000x) %5:i8 = phi %1, %3, %4 %6 = block 3 %7:i8 = phi %6, %5, 0:i8, 0:i8 %8:i1 = var %9:i8 = select %8, 1:i8, %7 %10:i8 = phi %0, %5, %7, %9 infer %10 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i1 = var %3:i8 = var (0000000x) %4:i8 = select %2, 1:i8, %3 %5:i8 = phi %0, 0:i8, %4 infer %5 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 4 %2:i64 = phi %1, 0:i64, 1:i64, 1:i64, 1:i64 %3:i64 = or 2:i64, %2 %4:i64 = phi %0, %3, %2, %2 infer %4 known from Souper: 00000000000000000000000000000000000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1 = block 8 %2:i8 = phi %1, 0:i8, 0:i8, 0:i8, 0:i8, 1:i8, 1:i8, 1:i8, 1:i8 %3 = block 8 %4:i8 = phi %3, 0:i8, 0:i8, 0:i8, 0:i8, 1:i8, 1:i8, 1:i8, 1:i8 %5 = block 2 %6:i8 = phi %5, 0:i8, 1:i8 %7 = block 2 %8:i8 = phi %7, 0:i8, 1:i8 %9:i8 = phi %0, %2, %4, %6, %8 infer %9 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i64 = zext %0 %2:i1 = ult 36:i64, %1 %3:i64 = select %2, 36:i64, %1 infer %3 known from Souper: 0000000000000000000000000000000000000000000000000000000000xxxxxx known from compiler: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i1 = var %3:i8 = zext %2 %4:i8 = phi %1, %3, 0:i8 %5:i8 = phi %0, %4, %3 infer %5 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var %2:i64 = zext %1 %3:i64 = var %4:i64 = var %5:i64 = sub %3, %4 %6:i1 = ult %2, %5 %7:i64 = select %6, %2, %5 infer %7 known from Souper: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i16 = var %1:i32 = zext %0 %2 = block 2 %3:i32 = var %4:i32 = var %5:i32 = phi %2, %3, %4 %6:i32 = udiv %1, %5 infer %6 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 0000000000000000xxxxxxxxxxxxxxxx llvm is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00) %1:i64 = zext %0 %2:i64 = var %3:i64 = addnsw 18446744073709551615:i64, %2 %4:i64 = udiv %1, %3 infer %4 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx llvm is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = var (000000000000000000000000xxxxxxxx) %2:i32 = urem %0, %1 infer %2 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 000000000000000000000000xxxxxxxx llvm is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = lshr %0, 16:i64 %2:i64 = var (000000000000000000000000000000000000000000000000000000000000000x) %3:i64 = shlnw %2, 3:i64 %4:i64 = lshr %1, %3 infer %4 known from Souper: 0000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = sub 31:i64, %0 %2:i1 = ult 7:i64, %1 %3:i64 = select %2, 7:i64, %1 infer %3 known from Souper: 0000000000000000000000000000000000000000000000000000000000000xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (000000000000000000000000000xxxxx) %1:i32 = var (0000000000000000000000000000000x) %2:i32 = addnw %0, %1 %3:i1 = var %4:i32 = zext %3 %5:i32 = addnw %2, %4 infer %5 known from Souper: 00000000000000000000000000xxxxxx known from compiler: 0000000000000000000000000xxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 2 %2:i8 = var (0000000x) %3:i8 = phi %1, %2, 0:i8 %4:i8 = phi %0, 0:i8, %3, 0:i8 infer %4 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i32 = phi %1, 4:i32, 3:i32 %3:i32 = phi %0, %2, 2:i32 infer %3 known from Souper: 00000000000000000000000000000xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = udiv %0, 102:i64 %2:i1 = var %3:i64 = zext %2 %4:i64 = addnw %1, %3 infer %4 known from Souper: 000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 00000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 28 %1:i32 = var (0000000000000000000000010001101x) %2:i32 = var (00000000000000000000000100001xxx) %3:i32 = phi %0, 355:i32, 355:i32, 355:i32, 355:i32, 355:i32, 355:i32, 355:i32, 355:i32, %1, %2, 355:i32, 355:i32, 355:i32, 355:i32, 355:i32, 355:i32, 355:i32, 355:i32, 355:i32, 355:i32, 355:i32, 355:i32, 281:i32, 266:i32, 355:i32, 355:i32, 355:i32, 355:i32 %4:i64 = zext %3 infer %4 known from Souper: 000000000000000000000000000000000000000000000000000000010xxxxxxx known from compiler: 0000000000000000000000000000000000000000000000000000000x0xxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = udiv %0, 196:i32 %2:i32 = addnw 2:i32, %1 infer %2 known from Souper: 0000000xxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 000000xxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i8 = var (0000000x) %2:i8 = xor 1:i8, %1 %3 = block 2 %4:i8 = phi %3, %2, 0:i8 %5:i8 = phi %0, %2, %2, %4 infer %5 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 4 %2:i32 = var (0000000000000000000000000000000x) %3:i32 = or 2:i32, %2 %4:i1 = var %5:i32 = var (0000000000000000000000000000010x) %6:i32 = select %4, %5, %2 %7:i32 = phi %0, %3, %3, %6 infer %7 known from Souper: 00000000000000000000000000000xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 12 %1 = block 5 %2 = block 2 %3:i8 = var (0000000x) %4:i8 = phi %1, 0:i8, 0:i8, %3, 1:i8, 1:i8 %5 = block 5 %6 = block 2 %7:i8 = var (0000000x) %8:i8 = phi %5, 0:i8, 0:i8, %7, 1:i8, 1:i8 %9 = block 3 %10 = block 2 %11:i8 = var (0000000x) %12:i8 = phi %9, 0:i8, %11, 1:i8 %13 = block 3 %14 = block 2 %15:i8 = var (0000000x) %16:i8 = phi %13, 0:i8, %15, 1:i8 %17:i8 = phi %0, %4, %4, %8, %8, %12, %12, %12, %12, %16, %16, %16, %16 infer %17 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i64 = phi %1, 1:i64, 0:i64 %3:i64 = phi %0, 1:i64, %2 infer %3 known from Souper: 000000000000000000000000000000000000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i1 = ult 4:i64, %0 %2:i64 = select %1, 4:i64, %0 infer %2 known from Souper: 0000000000000000000000000000000000000000000000000000000000000xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 8 %1 = block 6 %2:i8 = phi %1, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 1:i8 %3:i8 = phi %0, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, %2 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 1 %2:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %3:i64 = phi %1, %2 %4:i64 = phi %0, %3, 2:i64 infer %4 known from Souper: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 1 %2:i1 = var %3:i8 = zext %2 %4:i16 = var (000000000000000x) %5:i8 = trunc %4 %6:i8 = phi %0, %3, %5 infer %6 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i1 = var %1:i32 = var %2:i32 = select %0, 16:i32, %1 %3:i32 = add 4294967295:i32, %2 %4:i32 = and %3, %2 infer %4 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = shl 68:i32, %0 infer %1 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i64 = var (00000000000000000000000000000000000000000000000xxxxxxxxxxxxxxxxx) %2:i64 = shlnw %1, 32:i64 %3:i64 = phi %0, %2, 0:i64, 0:i64 infer %3 known from Souper: 000000000000000xxxxxxxxxxxxxxxxx00000000000000000000000000000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00000000000000000000000000000000 souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var %2:i64 = zext %1 %3:i64 = lshr 232:i64, %2 infer %3 known from Souper: 00000000000000000000000000000000000000000000000000000000xxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i1 = var %1:i32 = select %0, 3221225472:i32, 2147483648:i32 %2:i32 = bswap %1 infer %2 known from Souper: 0000000000000000000000001x000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (0000000000000000000000000000xxxx) %1:i32 = var (0000000000000000000000000000xxxx) %2:i32 = subnsw %0, %1 %3:i32 = shl 1:i32, %2 infer %3 known from Souper: 0000000000000000xxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 3 %2:i64 = phi %1, 5:i64, 12:i64, 0:i64 %3 = block 2 %4:i32 = var %5:i64 = zext %4 %6:i64 = phi %0, %2, %5 infer %6 known from Souper: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (0000000000000000xxxxxxxxxxxxxxxx) %2:i32 = and 255:i32, %1 %3 = block 2 %4:i32 = var (000000000000000000000000xxxxxxxx) %5:i32 = var (000000000000000000000000xxxxxxxx) %6:i32 = phi %3, %4, %5 %7:i32 = phi %0, %2, %6 infer %7 known from Souper: 000000000000000000000000xxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (xxxxxxxxxxxxxxxxxxxxxxxx00101000) %2:i64 = zext %1 %3:i64 = phi %0, %2, 47176:i64 infer %3 known from Souper: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxx0xx01000 known from compiler: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var %2:i1 = slt %1, 4:i32 %3:i32 = addnsw 4294967294:i32, %1 %4:i32 = select %2, 1:i32, %3 infer %4 known from Souper: 0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (011010101100101010100011011010111110111110000011001001011100010x) %1:i64 = mul 11376068507788127593:i64, %0 %2:i1 = var %3:i64 = zext %2 %4:i64 = xor %1, %3 infer %4 known from Souper: xxx101x010x01011000x1xx011xxx01x011xxx0xxx00x1xxxxx1xxxxx1x0x10x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 4 %2:i32 = var (0000000000000000000000000000000x) %3:i32 = phi %1, 4:i32, 4:i32, 4:i32, %2 %4:i32 = phi %0, %3, 3:i32, 3:i32 infer %4 known from Souper: 00000000000000000000000000000xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2 = block 2 %3:i64 = var (000000000000000000000000000000000000000000000000000000000000xx10) %4:i64 = phi %1, 8:i64, %3 %5:i64 = phi %0, 4:i64, %4 infer %5 known from Souper: 000000000000000000000000000000000000000000000000000000000000xxx0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1:i1 = var %2:i32 = select %1, 1:i32, 2:i32 %3:i32 = var (0000000000000000000000000000000x) %4:i32 = xor 1:i32, %3 %5:i32 = phi %0, 0:i32, %2, %4, 1:i32, 1:i32 infer %5 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i8 = var %2:i8 = and 1:i8, %1 %3 = block 10 %4:i8 = phi %3, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 1:i8, 0:i8, 0:i8, 0:i8, 0:i8 %5:i8 = phi %0, %2, %4 infer %5 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 3 %2:i32 = var (00000xxxxxxxxxxxxxxxxxxxxxxxxxxx) %3:i32 = and 3:i32, %2 %4 = block 3 %5:i32 = var (000000000000000000000000000000xx) %6:i32 = phi %1, %3, %3, %5 %7:i32 = phi %0, %6, %3, %3 infer %7 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (0000000000000000000000000000000x) %2:i8 = trunc %1 %3:i8 = phi %0, 0:i8, %2 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 3 %2:i1 = var %3:i32 = select %2, 7:i32, 5:i32 %4 = block 6 %5:i32 = var (0000000000000000000000000000xxxx) %6:i32 = var (00000000000000000000000000000x0x) %7:i32 = var (0000000000000000000000000000xxxx) %8:i32 = phi %4, 0:i32, %5, 2:i32, %6, %7, 0:i32 %9:i32 = phi %0, %3, %8 infer %9 known from Souper: 0000000000000000000000000000xxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 9 %1:i1 = var %2:i8 = zext %1 %3 = block 4 %4:i8 = var (0000000x) %5:i8 = phi %3, 0:i8, 0:i8, 0:i8, %4 %6:i8 = phi %0, 1:i8, %2, 1:i8, 1:i8, %2, %2, 1:i8, %5, %5 infer %6 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 3 %2:i8 = phi %1, 1:i8, 0:i8, 0:i8 %3:i8 = phi %0, 0:i8, %2 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1 = block 3 %2:i32 = phi %1, 3:i32, 2:i32, 1:i32 %3:i32 = phi %0, %2, %2, 0:i32, 0:i32, 0:i32 infer %3 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i1 = var %1:i32 = select %0, 6:i32, 5:i32 %2:i32 = addnsw 4294967291:i32, %1 infer %2 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = var %2:i64 = sub %0, %1 %3 = block 2 %4:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %5:i64 = phi %3, %4, 0:i64 %6:i1 = ult %2, %5 %7:i64 = select %6, %2, %5 infer %7 known from Souper: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var %2:i32 = add 4294967295:i32, %1 %3:i32 = lshr 4145151:i32, %2 infer %3 known from Souper: 0000000000xxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = var %2:i64 = sub %0, %1 %3:i1 = ult %2, 2:i64 %4:i64 = select %3, %2, 2:i64 infer %4 known from Souper: 00000000000000000000000000000000000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1:i32 = var (000000000000000000000000000xxxxx) %2:i64 = zext %1 %3:i64 = var %4:i64 = cttz %3 %5:i64 = phi %0, %2, 32:i64, %4, 64:i64 infer %5 known from Souper: 000000000000000000000000000000000000000000000000000000000xxxxxxx known from compiler: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i64 = zext %0 %2:i64 = lshr 27917286655:i64, %1 infer %2 known from Souper: 00000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i64 = zext %0 %2:i64 = lshr 70368570792649:i64, %1 infer %2 known from Souper: 000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i64 = var (0000000000000000xxxxxxxxxxxxxxxx00000000000000000000000000000000) %2:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %3:i64 = or %1, %2 %4:i64 = var (0000000000000000xxxxxxxxxxxxxxxx00000000000000000000000000000000) %5:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %6:i64 = or %4, %5 %7:i64 = phi %0, %3, %6 infer %7 known from Souper: 0000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i64 = zext %0 %2:i64 = lshr 3298534883331:i64, %1 infer %2 known from Souper: 0000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxx1001) %2:i32 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxx111) %3:i32 = add %1, %2 %4:i32 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxx000) %5:i32 = add 32:i32, %4 %6:i32 = phi %0, %3, %5 infer %6 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxx000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 3 %2:i8 = var (0000000x) %3:i8 = phi %1, 0:i8, %2, %2 %4:i8 = phi %0, 0:i8, %3, 0:i8 infer %4 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = var (000000000000000000000000000xxxxx) %2:i32 = lshr %0, %1 %3:i32 = add 1:i32, %2 %4:i32 = and %3, %2 infer %4 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (0000000000000000xxxxxxxxxxxxxxxx) %2:i32 = lshr %1, 1:i32 %3:i16 = var %4:i32 = zext %3 %5:i32 = phi %0, %2, %4 infer %5 known from Souper: 0000000000000000xxxxxxxxxxxxxxxx known from compiler: 0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 4 %2:i8 = var (0000000x) %3:i8 = phi %1, 1:i8, 1:i8, %2, %2 %4:i8 = phi %0, %3, 0:i8 infer %4 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = and 1:i32, %0 %2:i32 = lshr %0, 1:i32 %3:i32 = addnw %1, %2 infer %3 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx llvm is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2 = block 2 %3:i8 = var (0000000x) %4:i8 = var %5:i8 = lshr %4, 7:i8 %6:i8 = phi %1, %3, %5 %7:i8 = phi %0, %6, %5 infer %7 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 3 %2:i32 = var (0000000000000000000xx00000000000) %3:i32 = var (000000000000000000000000000000x0) %4:i32 = or %2, %3 %5 = block 2 %6:i32 = var (000000000000000000000000000001x0) %7:i32 = phi %5, %6, %4 %8:i32 = phi %0, %4, %7 infer %8 known from Souper: 0000000000000000000xx00000000xx0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i1 = var %2:i32 = var (xxxxxxxxxxxxxxxxxxxxx00000000000) %3:i32 = select %1, %2, 0:i32 %4:i32 = phi %0, 0:i32, %3 infer %4 known from Souper: xxxxxxxxxxxxxxxxxxxxx00000000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 2 %2:i32 = var (0000000000000000000000000000000x) %3:i32 = phi %1, 1:i32, %2 %4:i32 = phi %0, 1:i32, %3, %3 infer %4 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %2:i64 = xor 4294967295:i64, %1 %3:i64 = phi %0, 4294967295:i64, %2 infer %3 known from Souper: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (00000000000000000000000xxxxxxxx0) %1:i64 = zext %0 %2:i64 = addnw 11:i64, %1 %3:i64 = urem %2, %1 infer %3 known from Souper: 000000000000000000000000000000000000000000000000000000000000xxx1 known from compiler: 0000000000000000000000000000000000000000000000000000000xxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 3 %2:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %3:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %4:i64 = phi %1, 0:i64, %2, %3 %5:i64 = phi %0, 0:i64, %4 infer %5 known from Souper: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 9 %1:i8 = var (0000000x) %2:i8 = xor 1:i8, %1 %3:i8 = phi %0, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, %2 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 6 %1 = block 4 %2:i1 = var %3:i8 = zext %2 %4:i1 = var %5:i8 = select %4, 0:i8, %3 %6:i8 = phi %0, %3, %3, %3, %3, %5, %3 infer %6 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 13 %1 = block 5 %2:i32 = var (0000000000000000000000101x00xx01) %3:i32 = phi %1, 649:i32, %2, %2, %2, %2 %4:i1 = var %5:i32 = select %4, 712:i32, 655:i32 %6:i32 = phi %0, %3, %5, 638:i32, 695:i32, 694:i32, 707:i32, 706:i32, 665:i32, 664:i32, 676:i32, 675:i32, 630:i32, 629:i32 infer %6 known from Souper: 000000000000000000000010xxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (0000000000000000000000000000000x) %2:i32 = addnw 1:i32, %1 %3:i32 = phi %0, %2, 0:i32 infer %3 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 8 %1:i1 = var %2:i32 = select %1, 33554432:i32, 0:i32 %3:i32 = or 536870912:i32, %2 %4:i32 = or 1342177280:i32, %2 %5:i32 = or 1073741824:i32, %2 %6:i32 = or 805306368:i32, %2 %7:i32 = or 268435456:i32, %2 %8:i32 = phi %0, %2, %2, %3, %4, %5, %6, %7, %2 infer %8 known from Souper: 0xxx00x0000000000000000000000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 8 %1:i64 = var (000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %2:i64 = addnw 1:i64, %1 %3 = block 2 %4:i64 = var (00xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %5:i64 = phi %3, %4, 0:i64 %6 = block 2 %7:i64 = phi %6, 0:i64, %2 %8:i64 = phi %0, %2, %2, %5, %5, %5, %5, %7, %2 infer %8 known from Souper: 00xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i8 = phi %1, 1:i8, 0:i8 %3:i8 = phi %0, %2, 1:i8 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i1 = var %2:i8 = zext %1 %3 = block 1 %4:i8 = var (0000000x) %5:i8 = phi %3, %4 %6 = block 3 %7:i8 = phi %6, %4, %4, 0:i8 %8:i8 = phi %0, %2, %5, %7 infer %8 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = var %2:i64 = lshr %0, %1 %3:i64 = add 1:i64, %2 %4:i64 = and %3, %2 infer %4 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i64 = phi %0, 1:i64, 2:i64 %2 = block 2 %3:i32 = var %4:i64 = zext %3 %5:i64 = mulnw %1, %4 infer %5 known from Souper: 0000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i64 = var (00000000000000000000000000000000000000000000000000000000xxxxxxxx) %2:i64 = addnw 1:i64, %1 %3:i64 = phi %0, %2, 0:i64 infer %3 known from Souper: 0000000000000000000000000000000000000000000000000000000xxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i64 = zext %0 %2:i64 = addnsw 18446744073709551615:i64, %1 %3:i64 = urem %2, %1 infer %3 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx llvm is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1 = block 2 %2:i1 = var %3:i64 = select %2, 4:i64, 2:i64 %4:i1 = ult %0, %3 %5:i64 = select %4, %0, %3 infer %5 known from Souper: 0000000000000000000000000000000000000000000000000000000000000xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 3 %2:i32 = phi %1, 7:i32, 3:i32, 3:i32 %3:i1 = var %4:i32 = var (00000000000000000000000000010x11) %5:i32 = select %3, %4, %2 %6:i32 = phi %0, %2, %5 infer %6 known from Souper: 000000000000000000000000000x0x11 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i24 = var (00000000000000000000000x) %2:i24 = shlnw %1, 18:i24 %3:i24 = phi %0, 0:i24, 0:i24, %2 infer %3 known from Souper: 00000x000000000000000000 known from compiler: xxxxxx000000000000000000 souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 6 %2:i8 = phi %1, 0:i8, 0:i8, 1:i8, 0:i8, 0:i8, 0:i8 %3:i8 = phi %0, %2, 0:i8, 0:i8 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 4 %2:i64 = var (0000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %3:i64 = phi %1, 0:i64, 0:i64, 0:i64, %2 %4:i64 = addnsw 20:i64, %3 %5:i64 = phi %0, %4, %3 infer %5 known from Souper: 000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i64 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx000) %2:i64 = add 48:i64, %1 %3:i64 = var (0000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx000) %4:i64 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx000) %5:i64 = add %3, %4 %6:i64 = phi %0, %2, %5 infer %6 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 1 %2:i8 = var (xxxxxx00) %3:i8 = or 1:i8, %2 %4:i8 = phi %0, 1:i8, %3 infer %4 known from Souper: xxxxxx01 known from compiler: xxxxxxx1 souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 5 %2:i64 = var (0000000000000000000000000000000000000000000000000000000000110xxx) %3:i64 = var (00000000000000000000000000000000000000000000000000000000001100xx) %4:i64 = var (00000000000000000000000000000000000000000000000000000000001010x1) %5:i64 = var (0000000000000000000000000000000000000000000000000000000000xxxxx1) %6:i64 = var (000000000000000000000000000000000000000000000000000000000000xxxx) %7:i64 = phi %1, %2, %3, %4, %5, %6 %8:i1 = var %9:i64 = select %8, 44:i64, 42:i64 %10:i64 = phi %0, %7, %9, 32:i64 infer %10 known from Souper: 0000000000000000000000000000000000000000000000000000000000xxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (000000000000000000000000xxxxxxxx) %1:i17 = trunc %0 %2:i17 = lshr 53200:i17, %1 infer %2 known from Souper: 0xxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %1:i32 = trunc %0 %2:i32 = var %3:i32 = lshr %2, 3:i32 %4:i32 = urem %1, %3 infer %4 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 000xxxxxxxxxxxxxxxxxxxxxxxxxxxxx llvm is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 4 %2:i32 = phi %1, 0:i32, 1:i32, 1:i32, 1:i32 %3 = block 4 %4:i32 = phi %3, 0:i32, 1:i32, 1:i32, 1:i32 %5:i32 = phi %0, %2, %4 infer %5 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (000000000000000000000000000000x0) %2:i32 = or 1:i32, %1 %3:i32 = var (000000000000000000000000000000x0) %4:i32 = or 1:i32, %3 %5:i32 = phi %0, %2, %4 infer %5 known from Souper: 000000000000000000000000000000x1 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx1 souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i1 = var %2:i32 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxx000) %3:i32 = select %1, %2, 0:i32 %4:i32 = phi %0, 0:i32, %3 infer %4 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxx000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i32 = var (00000000000000000000000x000x0101) %3:i32 = var (000000000000000000000000000x0001) %4:i32 = phi %1, %2, %3 %5:i32 = or 2:i32, %4 %6:i32 = phi %0, %4, %5 infer %6 known from Souper: 00000000000000000000000x000x0xx1 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 3 %2:i8 = phi %1, 1:i8, 1:i8, 0:i8 %3 = block 2 %4:i8 = phi %3, %2, 1:i8 %5:i8 = phi %0, %2, %4, 1:i8 infer %5 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 2 %2:i32 = phi %1, 3:i32, 4:i32 %3:i32 = phi %0, %2, 6:i32, 5:i32 infer %3 known from Souper: 00000000000000000000000000000xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (000000000000000000xxxxxxxxxxxxxx) %1:i7 = trunc %0 %2:i7 = lshr 31:i7, %1 infer %2 known from Souper: 00xxxxx known from compiler: xxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2 = block 9 %3:i32 = var (0000000000000000000000000000000x) %4:i32 = phi %1, %3, 0:i32 %5:i32 = phi %0, 0:i32, %4 infer %5 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 4 %2:i32 = phi %1, 1:i32, 0:i32, 1:i32, 1:i32 %3:i32 = phi %0, 1:i32, %2 infer %3 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 2 %2:i8 = var (0000000x) %3:i8 = phi %1, %2, 1:i8 %4:i8 = phi %0, %3, 1:i8, 1:i8 infer %4 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 12 %1:i1 = var %2:i32 = select %1, 2:i32, 1:i32 %3:i1 = var %4:i32 = select %3, 0:i32, 2:i32 %5:i1 = var %6:i32 = select %5, 2:i32, 1:i32 %7 = block 2 %8:i32 = phi %7, 2:i32, 0:i32 %9 = block 2 %10:i32 = phi %9, 2:i32, 0:i32 %11:i32 = phi %0, 1:i32, %2, %4, 0:i32, %6, 0:i32, 0:i32, 2:i32, %8, 0:i32, %10, 0:i32 infer %11 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i8 = var %1:i32 = sext %0 %2:i32 = addnsw 140:i32, %1 infer %2 known from Souper: 00000000000000000000000xxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1 = block 4 %2:i32 = phi %1, 1:i32, 0:i32, 2:i32, 3:i32 %3:i32 = phi %0, %2, 0:i32, 0:i32, 0:i32 infer %3 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i8 = var (00000xxx) %1:i4 = trunc %0 %2:i4 = lshr 6:i4, %1 infer %2 known from Souper: 0xxx known from compiler: xxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (000000000000000000000000xxxxxxxx) %1:i64 = zext %0 %2:i64 = lshr 4091901:i64, %1 infer %2 known from Souper: 000000000000000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i64 = zext %0 %2:i64 = lshr 3435973836:i64, %1 infer %2 known from Souper: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 7 %1 = block 2 %2:i32 = phi %1, 0:i32, 1:i32 %3:i32 = phi %0, 1:i32, 0:i32, %2, 1:i32, 1:i32, 1:i32, 1:i32 infer %3 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1:i64 = var %2:i64 = lshr %1, 32:i64 %3 = block 9 %4:i64 = phi %3, %2, %2, %2, %2, 0:i64, 0:i64, %2, %2, %2 %5:i64 = phi %0, %2, %2, %2, %4, %2 infer %5 known from Souper: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (00000000000000000000000000001x01) %1:i64 = zext %0 %2:i64 = shl 1:i64, %1 infer %2 known from Souper: 00000000000000000000000000000000000000000000000000x000x000000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (00000000000000000000000101xxxxxx) %1:i32 = addnsw 4294966955:i32, %0 %2:i32 = lshr 8487279:i32, %1 infer %2 known from Souper: 00000000xxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i16 = var %1:i64 = zext %0 %2:i64 = lshr 4362096979:i64, %1 infer %2 known from Souper: 0000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i1 = slt 4294967295:i32, %0 %2:i32 = select %1, %0, 3:i32 infer %2 known from Souper: 0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 2 %2:i32 = var (0000000000000000000000000000000x) %3:i32 = phi %1, 2:i32, %2 %4:i1 = var %5:i32 = zext %4 %6:i32 = phi %0, %3, 2:i32, %5 infer %6 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var %2:i32 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00) %3:i32 = sub %1, %2 %4:i1 = ult %3, 4:i32 %5:i32 = select %4, %3, 4:i32 infer %5 known from Souper: 00000000000000000000000000000xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 3 %2:i32 = var (xxxxxxxxxxxxxxxxxxxxxxxx1xxxxxxx) %3:i32 = or 512:i32, %2 %4 = block 2 %5:i32 = var (xxxxxxxxxxxxxxxxxxxxxxx11xxxxxxx) %6:i32 = var (xxxxxxxxxxxxxxxxxxxxxx111xxxxxxx) %7:i32 = phi %4, %5, %6 %8:i32 = phi %0, %3, %7 infer %8 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxx1xxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (0000000000000000000000000000xx00) %1:i32 = shl 7:i32, %0 infer %1 known from Souper: 00000000000000000xxx0xxx0xxx0xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 6 %2:i8 = phi %1, 0:i8, 0:i8, 1:i8, 1:i8, 0:i8, 0:i8 %3:i8 = phi %0, 0:i8, %2 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 5 %2:i32 = var (0000000000000000000000010000111x) %3:i32 = phi %1, 0:i32, 0:i32, 0:i32, %2, 269:i32 %4:i32 = phi %0, %3, 0:i32 infer %4 known from Souper: 00000000000000000000000x0000xxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 2 %2:i8 = phi %1, 0:i8, 1:i8 %3 = block 7 %4:i8 = phi %3, 0:i8, 0:i8, 0:i8, 0:i8, 1:i8, 0:i8, 1:i8 %5:i8 = phi %0, %2, %4, 0:i8 infer %5 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1 = block 2 %2:i32 = var %3 = block 1 %4:i32 = var %5:i32 = phi %0, 0:i32, %2, %2, %4 %6:i1 = slt 0:i32, %5 %7:i32 = select %6, %5, 0:i32 infer %7 known from Souper: 0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1 = block 4 %2:i8 = var (0000000x) %3:i8 = phi %1, 0:i8, %2, 0:i8, 0:i8 %4:i8 = phi %0, %3, 0:i8, 0:i8, 0:i8 infer %4 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 6 %1:i1 = var %2:i32 = var (0000000000000000000000000000000x) %3:i32 = select %1, 1:i32, %2 %4:i32 = phi %0, 0:i32, 1:i32, 1:i32, 0:i32, %3, 1:i32 infer %4 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (00000000000000000000000000000xxx) %2:i5 = trunc %1 %3:i5 = lshr 3:i5, %2 infer %3 known from Souper: 000xx known from compiler: xxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = addnsw 4294967294:i32, %0 %2:i32 = lshr 472833:i32, %1 infer %2 known from Souper: 0000000000000xxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 5 %2:i64 = phi %1, 1:i64, 0:i64, 1:i64, 1:i64, 1:i64 %3:i64 = phi %0, 0:i64, %2 infer %3 known from Souper: 000000000000000000000000000000000000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1:i64 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00) %2:i64 = or 2:i64, %1 %3:i64 = phi %0, %2, %2, %2, %2, 0:i64 infer %3 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 8 %1 = block 2 %2:i8 = phi %1, 0:i8, 1:i8 %3:i8 = phi %0, 1:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, %2 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 10 %1 = block 6 %2:i1 = var %3:i8 = zext %2 %4:i8 = phi %1, 0:i8, 0:i8, 0:i8, %3, %3, 0:i8 %5:i8 = phi %0, %4, %3, %3, %3, %3, %3, %3, %3, %3, %3 infer %5 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = var (0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %2:i64 = and %0, %1 %3:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0) %4:i64 = shl 1:i64, %3 %5:i64 = or %2, %4 infer %5 known from Souper: 0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = add 4294967295:i32, %0 %2:i1 = ult %1, 4:i32 %3:i32 = select %2, %1, 0:i32 infer %3 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i64 = sext %0 %2:i64 = lshr 4336:i64, %1 infer %2 known from Souper: 000000000000000000000000000000000000000000000000000xxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1 = block 2 %2 = block 3 %3:i32 = var (0000000000000000000000000000000x) %4:i1 = var %5:i32 = select %4, 3:i32, 1:i32 %6:i32 = phi %1, %3, %5 %7:i32 = phi %0, %6, %6, %6, %5, 2:i32 infer %7 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = udiv 128:i64, %0 infer %1 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 00000000000000000000000000000000000000000000000000000000xxxxxxxx llvm is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1 = block 2 %2:i8 = phi %1, 0:i8, 1:i8 %3 = block 2 %4:i8 = phi %3, 0:i8, 1:i8 %5:i8 = phi %0, 0:i8, %2, %4, 0:i8, 1:i8 infer %5 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %2:i1 = eq %0, %1 %3:i64 = select %2, %0, 4096:i64 infer %3 known from Souper: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 2 %2 = block 1 %3:i8 = var (0000000x) %4 = block 1 %5:i8 = var (0000000x) %6:i8 = phi %1, %3, %5 %7 = block 1 %8:i8 = var (0000000x) %9:i8 = phi %7, %8 %10 = block 1 %11:i8 = var (0000000x) %12:i8 = phi %10, %11 %13:i8 = phi %0, %6, %9, %12 infer %13 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i1 = var %1:i32 = select %0, 4:i32, 8:i32 %2:i32 = subnsw 64:i32, %1 infer %2 known from Souper: 00000000000000000000000000111x00 known from compiler: 0000000000000000000000000xxxxx00 souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (000000000000000000000000000001x0) %2:i32 = var (0000000000000000000000000000xx00) %3:i32 = mulnw %1, %2 %4:i32 = phi %0, %3, 8:i32 infer %4 known from Souper: 0000000000000000000000000xxxx000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 19 %1:i64 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00000000000000000000000000000000) %2:i64 = or 5:i64, %1 %3:i64 = or 6:i64, %1 %4:i1 = var %5:i64 = select %4, 7:i64, 8:i64 %6:i1 = var %7:i64 = select %6, 7:i64, 8:i64 %8:i64 = phi %0, 0:i64, %2, %3, 1:i64, 2:i64, 3:i64, 4:i64, 0:i64, 0:i64, 0:i64, 0:i64, %5, %7, 1:i64, 0:i64, 0:i64, 0:i64, 0:i64, 0:i64 infer %8 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0000000000000000000000000000xxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (0000000000000000xxxxxxxxxxxxxxxx) %1:i32 = var %2:i32 = udiv %0, %1 %3:i32 = var (0000000000000000xxxxxxxxxxxxxxxx) %4:i32 = udiv %3, %1 %5:i32 = or %2, %4 infer %5 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 0000000000000000xxxxxxxxxxxxxxxx llvm is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1:i1 = var %2:i32 = zext %1 %3:i32 = or 2:i32, %2 %4 = block 2 %5:i32 = phi %4, %2, %3 %6:i32 = phi %0, %2, %3, %5, %2 infer %6 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 2 %2:i8 = phi %1, 1:i8, 0:i8 %3 = block 2 %4:i8 = phi %3, %2, 0:i8 %5 = block 2 %6:i8 = phi %5, 1:i8, %4 %7:i8 = phi %0, %2, %4, %6 infer %7 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (000000000000000000000000000xxxxx) %2:i64 = zext %1 %3:i64 = phi %0, %2, 0:i64 infer %3 known from Souper: 00000000000000000000000000000000000000000000000000000000000xxxxx known from compiler: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1:i32 = var (0000000000000000000000000000000x) %2:i32 = or 2:i32, %1 %3:i32 = phi %0, 3:i32, %2, %2, 3:i32 infer %3 known from Souper: 0000000000000000000000000000001x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx1x souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 4 %2:i32 = var (000000000000000000000000101001x1) %3:i32 = var (0000000000000000000000001011110x) %4:i32 = var (0000000000000000000000001xxx0xxx) %5:i32 = var (0000000000000000000000001100xxx1) %6:i32 = phi %1, %2, %3, %4, %5 %7:i32 = phi %0, %6, 198:i32, 164:i32 infer %7 known from Souper: 0000000000000000000000001xxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i32 = phi %1, 4294967295:i32, 1:i32 %3:i32 = phi %0, 4294967295:i32, %2 infer %3 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx1 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var %2:i64 = zext %1 %3 = block 5 %4:i64 = phi %3, %2, 0:i64, 0:i64, 0:i64, 0:i64 %5:i64 = phi %0, %2, %4 infer %5 known from Souper: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 2 %2:i8 = phi %1, 0:i8, 1:i8 %3:i8 = phi %0, %2, 0:i8, 0:i8 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (0000000000000000000000000000000000000000000000000000000000xxxxxx) %1:i64 = subnsw 32:i64, %0 %2:i64 = addnsw 4294967295:i64, %1 infer %2 known from Souper: 0000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 3 %2:i8 = var (0000000x) %3:i8 = phi %1, 0:i8, 0:i8, %2 %4 = block 2 %5:i8 = var (0000000x) %6:i8 = phi %4, 0:i8, %5 %7 = block 3 %8:i8 = phi %7, 0:i8, 1:i8, 0:i8 %9:i8 = phi %0, %3, %6, %8 infer %9 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 5 %2:i32 = var (00000000000000000000xxxxxxxxxxxx) %3:i32 = phi %0, %2, 0:i32, 0:i32 %4:i32 = and 4095:i32, %3 %5:i1 = eq %3, %4 infer %5 known from Souper: 1 known from compiler: x souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 37 %1:i1 = var %2:i32 = select %1, 27:i32, 0:i32 %3:i32 = select %1, 29:i32, 0:i32 %4:i32 = select %1, 30:i32, 0:i32 %5:i1 = var %6:i32 = select %5, 3:i32, 0:i32 %7:i1 = var %8:i32 = select %7, 6:i32, 0:i32 %9:i32 = var (0000000000000000000000000000000x) %10:i32 = shlnw %9, 3:i32 %11:i1 = var %12:i32 = select %11, 25:i32, 0:i32 %13:i32 = phi %0, 0:i32, 31:i32, 26:i32, 24:i32, 23:i32, 9:i32, 7:i32, 19:i32, 20:i32, 5:i32, 21:i32, 4:i32, 15:i32, 11:i32, 13:i32, 2:i32, 1:i32, 17:i32, 10:i32, 16:i32, 12:i32, 14:i32, 18:i32, 22:i32, %2, %3, %4, 28:i32, %6, 0:i32, %8, 0:i32, %10, 0:i32, %12, 0:i32, 0:i32 infer %13 known from Souper: 000000000000000000000000000xxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 4 %2:i8 = phi %1, 0:i8, 1:i8, 0:i8, 0:i8 %3:i8 = phi %0, 0:i8, %2 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (000000000000000000000000000xxxxx) %2:i32 = shlnw %1, 3:i32 %3:i32 = phi %0, %2, 256:i32 infer %3 known from Souper: 00000000000000000000000xxxxxx000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxx000 souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i8 = var (0000000x) %2:i64 = zext %1 %3:i64 = phi %0, %2, 0:i64 infer %3 known from Souper: 000000000000000000000000000000000000000000000000000000000000000x known from compiler: 00000000000000000000000000000000000000000000000000000000xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1 = block 1 %2:i8 = var (0000000x) %3:i8 = phi %1, %2 %4 = block 1 %5:i8 = phi %4, %2 %6:i8 = phi %0, %3, %5, %5, %5 infer %6 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1:i32 = phi %0, 8:i32, 8:i32, 12:i32, 12:i32 %2:i32 = shl 1:i32, %1 infer %2 known from Souper: 0000000000000000000x000x00000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 2 %2 = block 3 %3:i8 = var (0000000x) %4:i8 = var (0000000x) %5:i8 = phi %1, %3, %4 %6:i8 = phi %0, %5, 0:i8, 0:i8 infer %6 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i8 = phi %1, 1:i8, 0:i8 %3 = block 28 %4:i8 = phi %3, %2, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8 %5:i8 = phi %0, %2, %4 infer %5 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1 = block 7 %2:i8 = phi %1, 1:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8 %3:i8 = phi %0, %2, 0:i8, %2, %2 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 9 %2:i16 = var (0000000000000xxx) %3:i16 = var (0000000000000xx0) %4:i16 = var (000000000000100x) %5:i16 = phi %1, %2, %3, %4, 1:i16, 2:i16, 3:i16, 4:i16, 5:i16, 10:i16 %6:i1 = var %7:i16 = var (000000000010xxxx) %8:i16 = select %6, %5, %7 %9:i16 = phi %0, %5, %5, %8 infer %9 known from Souper: 0000000000x0xxxx known from compiler: xxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 6 %1 = block 3 %2:i32 = var (000000000000000000000000000000x0) %3:i32 = var (0000000000000000000000000000000x) %4:i32 = phi %1, %2, 0:i32, %3 %5:i32 = phi %0, 0:i32, 0:i32, 0:i32, 0:i32, %4, %4 infer %5 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 2 %2:i32 = var (00000000000000000000xxxxxxxxxxxx) %3:i32 = phi %1, %2, 0:i32 %4:i1 = var %5:i32 = var (00000000000000000000xxxxxxxxxxxx) %6:i32 = select %4, %5, %3 %7:i32 = var (00000000xxxxxxxxxxxxxxxxxxxxxxxx) %8:i32 = and 4095:i32, %7 %9:i32 = phi %0, %3, %6, %8 infer %9 known from Souper: 00000000000000000000xxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i64 = var (000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %2:i64 = addnw 2:i64, %1 %3:i64 = phi %0, %2, 1:i64 infer %3 known from Souper: 00xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (00000000000000000000000000000xxx) %1:i32 = shl 1:i32, %0 %2:i64 = var %3:i32 = trunc %2 %4:i32 = and %1, %3 infer %4 known from Souper: 000000000000000000000000xxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 4 %2:i32 = phi %1, 2:i32, 0:i32, 0:i32, 2:i32 %3 = block 4 %4:i32 = phi %3, 3:i32, 1:i32, 3:i32, 1:i32 %5:i32 = phi %0, %2, %4 infer %5 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i32 = var (0000000000000000000000000000xxx0) %3:i1 = var %4:i32 = var (00000000000000000000000000001xx0) %5:i32 = var (00000000000000000000000000000xx0) %6:i32 = select %3, %4, %5 %7:i32 = phi %1, %2, %6 %8:i32 = phi %0, %7, %6 infer %8 known from Souper: 0000000000000000000000000000xxx0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = and 18446744073709551608:i64, %0 %2:i64 = bswap %1 infer %2 known from Souper: xxxxx000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxx000) %2:i32 = add 40:i32, %1 %3:i32 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00) %4:i32 = add %2, %3 %5:i32 = phi %0, %4, %2 infer %5 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 3 %2:i32 = var (0000000000000000000000000000001x) %3:i32 = phi %1, 0:i32, 1:i32, %2 %4 = block 6 %5:i32 = var (00000000000000000000000000000xxx) %6:i32 = lshr %5, 1:i32 %7:i32 = phi %0, %3, %6 infer %7 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 11 %1:i32 = phi %0, 1:i32, 1:i32, 2:i32, 2:i32, 4:i32, 4:i32, 3:i32, 8:i32, 8:i32, 16:i32, 16:i32 %2:i32 = addnsw 4294967295:i32, %1 infer %2 known from Souper: 0000000000000000000000000000xxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i1 = eq 0:i32, %0 %2:i32 = var %3:i32 = lshr 13:i32, %2 %4:i32 = select %1, 0:i32, %3 infer %4 known from Souper: 0000000000000000000000000000xxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i64 = var (000000000000000000000000000000000000000000000000000000000000000x) %2:i64 = xor 1:i64, %1 %3:i64 = phi %0, 0:i64, 0:i64, %2 infer %3 known from Souper: 000000000000000000000000000000000000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1 = block 2 %2 = block 2 %3:i8 = var (0000000x) %4 = block 4 %5:i8 = var (0000000x) %6:i8 = phi %1, %3, %5 %7:i8 = phi %0, 0:i8, %6, %6, %6 infer %7 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i32 = phi %1, 243:i32, 240:i32 %3:i32 = phi %0, %2, 240:i32 infer %3 known from Souper: 000000000000000000000000111100xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (0000000000000000000000000000000000000000000000000000000000000x00) %1:i64 = addnw 12:i64, %0 %2:i32 = var %3:i64 = zext %2 %4:i64 = mulnw %1, %3 infer %4 known from Souper: 0000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00 known from compiler: 000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00 souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 3 %2 = block 6 %3:i8 = var (0000000x) %4:i8 = phi %1, %3, 1:i8, 1:i8 %5:i8 = phi %0, %4, 1:i8, 1:i8 infer %5 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (00000000000000000000000000xx0000) %2:i32 = phi %0, %1, 0:i32 %3:i32 = and 63:i32, %2 %4:i1 = eq %2, %3 infer %4 known from Souper: 1 known from compiler: x souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = udiv 128:i32, %0 %2:i32 = udiv 5:i32, %1 infer %2 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 00000000000000000000000000000xxx llvm is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i1 = var %2:i32 = select %1, 5:i32, 4:i32 %3:i1 = var %4:i32 = var (0000000000000000000000000000100x) %5:i32 = var (0000000000000000000000000000011x) %6:i32 = select %3, %4, %5 %7:i32 = phi %0, %2, %6 infer %7 known from Souper: 0000000000000000000000000000xxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 9 %1:i1 = var %2:i8 = zext %1 %3 = block 2 %4:i8 = phi %3, 1:i8, 0:i8 %5:i8 = phi %0, %2, 1:i8, 1:i8, 1:i8, 0:i8, %4, 1:i8, 1:i8, 1:i8 infer %5 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 6 %1:i32 = var %2 = block 2 %3:i32 = var %4:i32 = phi %0, %1, %3, %1, %1, %1, %1 %5:i32 = udiv 16:i32, %4 infer %5 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 000000000000000000000000000xxxxx llvm is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 2 %2:i32 = phi %1, 2:i32, 4:i32 %3:i32 = phi %0, %2, 0:i32, %2 infer %3 known from Souper: 00000000000000000000000000000xx0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 14 %1 = block 2 %2:i32 = phi %1, 3:i32, 1:i32 %3:i32 = phi %0, 0:i32, 0:i32, 0:i32, 0:i32, 0:i32, 0:i32, 0:i32, 0:i32, 0:i32, 0:i32, 0:i32, %2, %2, %2 infer %3 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i1 = var %1:i64 = var %2:i64 = var %3:i64 = select %0, %1, %2 %4:i64 = add 18446744073709551615:i64, %3 %5:i64 = and %4, %3 infer %5 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 2 %2:i8 = var (0000000x) %3:i8 = var (0000000x) %4:i8 = phi %1, %2, %3 %5:i1 = var %6:i8 = zext %5 %7:i8 = phi %0, %4, %6, %4 infer %7 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %1:i64 = addnw 1:i64, %0 %2:i32 = var %3:i64 = zext %2 %4:i64 = addnw %1, %3 infer %4 known from Souper: 0000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 3 %2:i8 = phi %1, 1:i8, 0:i8, 1:i8 %3:i8 = phi %0, 1:i8, %2 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 1 %2:i32 = var (00000000000000000000110000000xx1) %3:i32 = phi %1, %2 %4:i32 = phi %0, %3, 3075:i32, %3 infer %4 known from Souper: 00000000000000000000110000000xx1 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 6 %1:i1 = var %2 = block 4 %3:i32 = var (0000000000000000000000000000xxx0) %4:i32 = select %1, %3, 9:i32 %5 = block 2 %6:i1 = var %7:i32 = select %6, 1:i32, 4:i32 %8:i1 = var %9:i32 = var (0000000000000000000000000000xxx0) %10:i32 = select %8, 3:i32, %9 %11:i32 = phi %0, 0:i32, %4, 2:i32, %7, %10, 0:i32 infer %11 known from Souper: 0000000000000000000000000000xxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1:i32 = var (0000000000000000000000000000000x) %2:i32 = xor 1:i32, %1 %3:i32 = var (0000000000000000000000000000000x) %4:i32 = xor 1:i32, %3 %5:i32 = var (0000000000000000000000000000000x) %6:i32 = xor 1:i32, %5 %7:i1 = var %8:i32 = var (0000000000000000000000000000000x) %9:i32 = select %7, 2:i32, %8 %10:i32 = phi %0, %2, %4, %6, %9 infer %10 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 6 %1 = block 5 %2:i8 = phi %1, 0:i8, 3:i8, 0:i8, 0:i8, 2:i8 %3:i1 = var %4:i8 = zext %3 %5:i8 = phi %0, %2, 0:i8, 3:i8, 0:i8, 2:i8, %4 infer %5 known from Souper: 000000xx known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 1 %1:i8 = var (0000000x) %2:i8 = var (0000000x) %3:i8 = and %1, %2 %4:i8 = phi %0, %3 infer %4 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx1) %2:i64 = phi %0, %1, %1, %1, %1 %3:i64 = shlnw %2, 2:i64 infer %3 known from Souper: 000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx100 known from compiler: 000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00 souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i8 = var (0000000x) %3:i8 = var (0000000x) %4:i8 = phi %1, %2, %3 %5:i8 = xor 1:i8, %4 %6:i8 = phi %0, %5, %4 infer %6 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1 = block 2 %2 = block 6 %3:i8 = var (0000000x) %4:i8 = var (0000000x) %5:i8 = phi %1, %3, %4 %6:i1 = var %7:i8 = select %6, 0:i8, %5 %8:i8 = phi %0, %5, %5, %7, %5 infer %8 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1:i16 = var %2:i32 = zext %1 %3:i1 = var %4:i32 = select %3, 128:i32, %2 %5:i32 = phi %0, 129:i32, %2, %4, %2, %2 infer %5 known from Souper: 0000000000000000xxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (0000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %1:i64 = var (000000000000000000000000000000000000000000000000000000000000000x) %2:i64 = addnw %0, %1 %3:i64 = addnw 1:i64, %2 infer %3 known from Souper: 000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 00xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (000000000000000000000000000000000000000000000000000000000000010x) %1:i64 = shlnuw 1:i64, %0 %2:i64 = add 18446744073709551615:i64, %1 infer %2 known from Souper: 00000000000000000000000000000000000000000000000000000000000x1111 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (0000000000000000000000000000xx00) %2:i64 = zext %1 %3:i64 = phi %0, %2, %2 infer %3 known from Souper: 000000000000000000000000000000000000000000000000000000000000xx00 known from compiler: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i64 = var %2:i64 = phi %0, %1, 0:i64 %3:i1 = ult 6:i64, %2 %4:i64 = select %3, 6:i64, %2 infer %4 known from Souper: 0000000000000000000000000000000000000000000000000000000000000xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 2 %2:i8 = phi %1, 0:i8, 1:i8 %3:i8 = phi %0, 0:i8, 1:i8, %2 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (000000000000000000000000000000000000000000000000000000000xxxxxxx) %1:i32 = trunc %0 %2:i32 = var %3:i1 = ult %1, %2 %4:i32 = select %3, %1, %2 infer %4 known from Souper: 0000000000000000000000000xxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i64 = var %2:i64 = var %3:i64 = phi %0, %1, %2 %4:i64 = sub %3, %3 infer %4 known from Souper: 0000000000000000000000000000000000000000000000000000000000000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (000000x0000000000000000000000000) %2:i32 = addnw 33554432:i32, %1 %3:i32 = phi %0, 0:i32, %2 infer %3 known from Souper: 00000xx0000000000000000000000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i8 = var %2:i8 = and 15:i8, %1 %3 = block 2 %4:i8 = phi %3, %2, %2 %5:i8 = phi %0, %2, %4 infer %5 known from Souper: 0000xxxx known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 6 %1 = block 3 %2:i32 = phi %1, 28:i32, 36:i32, 36:i32 %3:i32 = phi %0, 0:i32, %2, %2, 8:i32, 8:i32, 0:i32 infer %3 known from Souper: 00000000000000000000000000xxxx00 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i32 = phi %1, 4:i32, 3:i32 %3:i32 = phi %0, %2, 3:i32 infer %3 known from Souper: 00000000000000000000000000000xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1 = block 4 %2:i32 = var (00000000000000000000000x00xxx000) %3:i32 = phi %1, %2, 0:i32, %2, %2 %4:i32 = phi %0, %3, %3, 0:i32, 0:i32 infer %4 known from Souper: 00000000000000000000000x00xxx000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i1 = var %1:i16 = select %0, 64:i16, 52:i16 %2:i16 = bswap %1 infer %2 known from Souper: 0xxx0x0000000000 known from compiler: xxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 6 %1 = block 3 %2:i8 = phi %1, 1:i8, 0:i8, 0:i8 %3:i8 = phi %0, 1:i8, %2, 1:i8, 1:i8, 1:i8, 1:i8 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i32 = var (000000000000000000000000000000xx) %3:i32 = or 4:i32, %2 %4:i32 = or 8:i32, %2 %5:i32 = phi %0, %3, %4 infer %5 known from Souper: 0000000000000000000000000000xxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i16 = var %1:i8 = trunc %0 %2:i8 = lshr 103:i8, %1 infer %2 known from Souper: 0xxxxxxx known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 17 %2:i32 = var (00000000000000000000000x0x00xxxx) %3:i32 = phi %1, 0:i32, 331:i32, 333:i32, 332:i32, 325:i32, 0:i32, 0:i32, 0:i32, 0:i32, %2, 0:i32, 0:i32, 331:i32, 0:i32, 0:i32, 0:i32, 0:i32 %4:i32 = phi %0, %3, 331:i32 infer %4 known from Souper: 00000000000000000000000x0x00xxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (0000000000000000000000000000000x) %1:i32 = var (0000000000000000000000000000000x) %2:i32 = addnw %0, %1 %3:i8 = var (0000000x) %4:i32 = zext %3 %5:i32 = addnw %2, %4 infer %5 known from Souper: 000000000000000000000000000000xx known from compiler: 00000000000000000000000000000xxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 8 %1:i32 = var %2:i32 = var %3:i32 = or %1, %2 %4:i32 = add 1:i32, %3 %5:i32 = and %4, %3 infer %5 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 7 %1 = block 5 %2:i8 = phi %1, 0:i8, 1:i8, 1:i8, 1:i8, 1:i8 %3:i8 = phi %0, %2, %2, %2, 0:i8, 0:i8, 0:i8, 0:i8 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 11 %1 = block 5 %2:i32 = phi %1, 1:i32, 1:i32, 2:i32, 5:i32, 6:i32 %3:i32 = phi %0, 8:i32, 7:i32, 6:i32, %2, 5:i32, 4:i32, 3:i32, 2:i32, 1:i32, 0:i32, 0:i32 infer %3 known from Souper: 0000000000000000000000000000xxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i64 = var (00000000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %2:i32 = trunc %1 %3:i32 = phi %0, %2, 0:i32 infer %3 known from Souper: 000xxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i1 = eq 0:i32, %0 %2:i64 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00000000000000000000000000000000) %3:i64 = bswap %2 %4:i64 = select %1, 1:i64, %3 infer %4 known from Souper: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 7 %1:i32 = phi %0, 0:i32, 240:i32, 240:i32, 0:i32, 239:i32, 0:i32, 0:i32 %2:i1 = eq 0:i32, %1 %3:i32 = select %2, 238:i32, %1 infer %3 known from Souper: 000000000000000000000000111xxxxx known from compiler: 000000000000000000000000xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 3 %2:i32 = phi %1, 1:i32, 1:i32, 0:i32 %3:i32 = phi %0, 0:i32, %2 infer %3 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i1 = ult %0, 9:i32 %2:i32 = select %1, %0, 9:i32 infer %2 known from Souper: 0000000000000000000000000000xxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1:i64 = var (00000000xxxxxxx0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %2:i64 = or 281474976710656:i64, %1 %3 = block 2 %4:i64 = var %5:i64 = and 72057594037927935:i64, %4 %6:i64 = phi %0, %2, %5, %5, %5 infer %6 known from Souper: 00000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 4 %2:i32 = var (000000000000000000000000000000x0) %3:i32 = phi %1, 1:i32, %2, 1:i32, 1:i32 %4 = block 3 %5:i32 = var (000000000000000000000000000000x0) %6:i32 = phi %4, 0:i32, %5, 0:i32 %7:i32 = phi %0, %3, %6 infer %7 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1:i16 = var (00000000xxxxxxxx) %2:i32 = zext %1 %3:i32 = phi %0, %2, %2, %2, %2 infer %3 known from Souper: 000000000000000000000000xxxxxxxx known from compiler: 0000000000000000xxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 6 %1:i32 = var (0000000000000000000000000000000x) %2:i32 = phi %0, %1, 0:i32, 0:i32, 1:i32, 2:i32, 2:i32 %3:i32 = var (000000000000000000000000000000xx) %4:i32 = var (000000000000000000000000000001xx) %5:i32 = addnw %3, %4 %6:i32 = addnw %2, %5 infer %6 known from Souper: 0000000000000000000000000000xxxx known from compiler: 000000000000000000000000000xxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (000000000000000000000000000xxxxx) %1:i32 = subnsw 32:i32, %0 %2:i1 = var %3:i32 = zext %2 %4:i32 = addnw %1, %3 infer %4 known from Souper: 00000000000000000000000000xxxxxx known from compiler: 0000000000000000000000000xxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 6 %1:i32 = phi %0, 16:i32, 13:i32, 12:i32, 11:i32, 10:i32, 10:i32 %2:i32 = addnsw 4294967295:i32, %1 infer %2 known from Souper: 00000000000000000000000000001xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i64 = var (0000000000000000000000000000000000000000000000000000000000xxxxxx) %2:i64 = var (000000000000000000000000000000000000000000000000000000000000xxxx) %3:i64 = addnw %1, %2 %4:i64 = var (0000000000000000000000000000000000000000000000000000000xxxxxxxxx) %5:i64 = var (00000000000000000000000000000000000000000000000000000000xxxxxxxx) %6:i64 = addnw %4, %5 %7:i64 = phi %0, %3, %6 infer %7 known from Souper: 000000000000000000000000000000000000000000000000000000xxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 7 %1:i32 = var (000000000000000000000000000000x0) %2:i32 = addnw 2:i32, %1 %3:i32 = phi %0, 0:i32, 1:i32, 1:i32, 3:i32, 3:i32, %2, %2 infer %3 known from Souper: 00000000000000000000000000000xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (000000000000000000000000xxxxxxxx) %1:i32 = xor 255:i32, %0 %2:i32 = addnw 255:i32, %1 %3:i32 = and %2, %1 infer %3 known from Souper: 000000000000000000000000xxxxxxx0 known from compiler: 000000000000000000000000xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i8 = var %1:i32 = sext %0 %2:i32 = addnsw 161:i32, %1 infer %2 known from Souper: 00000000000000000000000xxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i16 = var %1:i64 = zext %0 %2:i64 = lshr 2199023337473:i64, %1 infer %2 known from Souper: 0000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = udiv 128:i32, %0 %2:i32 = udiv 4:i32, %1 infer %2 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 00000000000000000000000000000xxx llvm is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i26 = trunc %0 %2:i26 = lshr 16777214:i26, %1 infer %2 known from Souper: 00xxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (0000000000000000xxxxxxxxxxxxxxxx) %1:i32 = udiv 16:i32, %0 %2:i32 = shlnw %1, 3:i32 infer %2 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxx000 known from compiler: 000000000000000000000000xxxxx000 llvm is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %2:i64 = urem %0, %1 %3:i64 = addnw 8:i64, %2 infer %3 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 0000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx llvm is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1:i32 = var (00000000000000000000000000000x00) %2:i32 = or 1:i32, %1 %3:i32 = phi %0, %2, 7:i32, 7:i32, 7:i32, 7:i32 infer %3 known from Souper: 00000000000000000000000000000xx1 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx1 souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 7 %2:i8 = phi %1, 0:i8, 1:i8, 0:i8, 0:i8, 0:i8, 1:i8, 1:i8 %3:i8 = phi %0, %2, 1:i8, 1:i8 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1:i32 = var (0000000000000000000000000000000x) %2:i32 = xor 1:i32, %1 %3:i32 = phi %0, 0:i32, 0:i32, 0:i32, %2 infer %3 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (00000000000000000000000000xxxxxx) %2:i32 = phi %0, %1, 64:i32 %3:i32 = subnsw 79:i32, %2 infer %3 known from Souper: 0000000000000000000000000xxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 3 %2 = block 3 %3:i8 = var (0000000x) %4:i8 = phi %1, %3, 1:i8, 1:i8 %5:i8 = phi %0, %4, 1:i8, 1:i8 infer %5 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1 = block 2 %2:i32 = phi %1, 0:i32, 1:i32 %3:i32 = phi %0, 0:i32, 1:i32, 0:i32, %2 infer %3 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i1 = var %1:i64 = var (000000000000000000000000000000000000000000000000000000000xxxxxxx) %2:i64 = var %3:i64 = select %0, %1, %2 %4:i1 = ult 1:i64, %3 %5:i64 = select %4, 1:i64, %3 infer %5 known from Souper: 000000000000000000000000000000000000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i64 = sext %0 %2:i64 = lshr 2382166150264:i64, %1 infer %2 known from Souper: 0000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i8 = var %2:i8 = var (0000000x) %3:i8 = and %1, %2 %4:i8 = phi %0, %3, 0:i8 infer %4 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 3 %2:i32 = phi %1, 0:i32, 0:i32, 1:i32 %3:i32 = phi %0, %2, 0:i32 infer %3 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = ashrexact %0, 3:i64 %2:i1 = ult 3:i64, %1 %3:i64 = select %2, 3:i64, %1 infer %3 known from Souper: 00000000000000000000000000000000000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (000000000000000000000000000011x1) %2:i32 = phi %0, 13:i32, %1 %3:i32 = and 7:i32, %2 infer %3 known from Souper: 000000000000000000000000000001x1 known from compiler: 00000000000000000000000000000xxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i64 = zext %0 %2:i64 = lshr 278160083975167:i64, %1 infer %2 known from Souper: 0000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 6 %2:i32 = var (xx00000000000000000000000x000000) %3:i32 = phi %1, %2, 1073741888:i32, 33554432:i32, 1610612768:i32, 3221225600:i32, 3221225536:i32 %4:i32 = or 4096:i32, %3 %5:i32 = phi %0, %3, %4, %3 infer %5 known from Souper: xxx000x000000000000x0000xxx00000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (011010101100101010100011011010111110111110000011001001011100010x) %1:i64 = mul 11376068507788127593:i64, %0 %2:i64 = lshr %1, 47:i64 infer %2 known from Souper: 00000000000000000000000000000000000000000000000xxx101x010x010110 known from compiler: 00000000000000000000000000000000000000000000000xxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (00000000000000000000000000000xxx) %1:i64 = zext %0 %2:i64 = lshr 232:i64, %1 infer %2 known from Souper: 00000000000000000000000000000000000000000000000000000000xxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 8 %1:i64 = phi %0, 0:i64, 1:i64, 2:i64, 3:i64, 4:i64, 5:i64, 6:i64, 7:i64 %2:i64 = lshr 23:i64, %1 infer %2 known from Souper: 00000000000000000000000000000000000000000000000000000000000xxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i1 = var %2:i32 = var (000000000000000000000000x00100xx) %3:i32 = var (000000000000000000000000x00000xx) %4:i32 = select %1, %2, %3 %5:i32 = or 4:i32, %4 %6:i32 = phi %0, %5, %4 infer %6 known from Souper: 000000000000000000000000x00x0xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i64 = zext %0 %2:i1 = var %3:i64 = var (000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %4:i64 = select %2, %3, 1:i64 %5:i64 = udiv %1, %4 infer %5 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx llvm is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1 = block 3 %2 = block 2 %3:i8 = var (0000000x) %4:i8 = phi %1, 0:i8, %3, 0:i8 %5 = block 2 %6:i8 = phi %5, 0:i8, %4 %7:i8 = phi %0, %4, %4, %6, %4 infer %7 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = lshr %0, 3:i32 %2:i1 = var %3:i32 = select %2, 2:i32, 4:i32 %4:i32 = mulnuw %1, %3 infer %4 known from Souper: 0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0 souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (000000000000000000000000xxxxxxxx) %2:i32 = shlnw %1, 8:i32 %3:i32 = phi %0, 0:i32, %2 infer %3 known from Souper: 0000000000000000xxxxxxxx00000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxx00000000 souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i8 = var %1:i64 = zext %0 %2:i64 = var %3:i64 = udiv %1, %2 infer %3 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 00000000000000000000000000000000000000000000000000000000xxxxxxxx llvm is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1 = block 2 %2 = block 2 %3:i8 = var (0000000x) %4:i8 = phi %1, %3, 1:i8 %5:i1 = var %6:i8 = zext %5 %7:i8 = phi %0, %4, %6, 0:i8, 0:i8, 0:i8 infer %7 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 1 %2:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %3:i64 = phi %1, %2 %4:i64 = phi %0, 12:i64, %3 infer %4 known from Souper: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx000) %1:i64 = addnw 8:i64, %0 %2:i1 = var %3:i64 = var (00000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx000) %4:i64 = select %2, %3, 0:i64 %5:i64 = addnw %1, %4 infer %5 known from Souper: 00000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx000 known from compiler: 0000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx000 souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i8 = var (0000000x) %3:i8 = phi %1, 0:i8, %2 %4:i8 = var (0000000x) %5:i8 = or %3, %4 %6:i8 = phi %0, %3, %5 infer %6 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i1 = var %1:i32 = select %0, 4:i32, 3:i32 %2:i32 = addnsw 4294967295:i32, %1 infer %2 known from Souper: 0000000000000000000000000000001x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i64 = sext %0 %2:i64 = lshr 14087492704001:i64, %1 infer %2 known from Souper: 00000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i32 = var %2:i32 = sub 4294967294:i32, %1 %3:i32 = xor 4294967295:i32, %1 %4:i32 = or %2, %3 infer %4 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx1 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i16 = var (000000000000000x) %2:i32 = zext %1 %3:i32 = phi %0, %2, 0:i32 infer %3 known from Souper: 0000000000000000000000000000000x known from compiler: 0000000000000000xxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 8 %1:i24 = var (00000000000000000000000x) %2:i8 = trunc %1 %3:i1 = var %4:i8 = zext %3 %5:i8 = var %6:i8 = and 1:i8, %5 %7 = block 2 %8:i1 = var %9:i8 = zext %8 %10:i8 = phi %0, 0:i8, %2, %2, %4, %6, %9, 0:i8, 0:i8 infer %10 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (00000000000000000000xxxx00000000) %2:i32 = var (000000000000000000000000xxxxxxxx) %3:i32 = or %1, %2 %4:i32 = phi %0, 0:i32, %3 infer %4 known from Souper: 00000000000000000000xxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i1 = var %1:i32 = var %2:i32 = var %3:i32 = select %0, %1, %2 %4:i1 = ult 15:i32, %3 %5:i32 = select %4, 0:i32, %3 infer %5 known from Souper: 0000000000000000000000000000xxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i16 = var (00000000000000xx) %2:i32 = zext %1 %3:i32 = phi %0, %2, 2:i32 infer %3 known from Souper: 000000000000000000000000000000xx known from compiler: 0000000000000000xxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i16 = var %1:i16 = lshr %0, 12:i16 %2:i16 = lshr 4623:i16, %1 infer %2 known from Souper: 000xxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var %2:i64 = zext %1 %3:i1 = ult %2, 10:i64 %4:i64 = select %3, %2, 10:i64 infer %4 known from Souper: 000000000000000000000000000000000000000000000000000000000000xxxx known from compiler: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2 = block 2 %3:i8 = var (0000000x) %4:i8 = var (0000000x) %5:i8 = phi %1, %3, %4 %6 = block 2 %7:i8 = phi %6, %5, %4 %8:i8 = phi %0, %5, %7 infer %8 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (0000000000000000000000000000000x) %1:i32 = var (00000000000000000000000xxxxxxxxx) %2:i32 = addnw %0, %1 %3:i32 = var (0000000000000000000000000000000x) %4:i32 = xor 1:i32, %3 %5:i32 = addnw %2, %4 infer %5 known from Souper: 0000000000000000000000xxxxxxxxxx known from compiler: 000000000000000000000xxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 1 %1:i32 = var (000000000000000000000000001100xx) %2:i32 = phi %0, %1 infer %2 known from Souper: 000000000000000000000000001100xx known from compiler: 00000000000000000000000000xx00xx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %2:i64 = shlnw %1, 3:i64 %3:i64 = phi %0, %2, %2 infer %3 known from Souper: 00000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx000 souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1:i32 = var (000000000000000000000000000xxxxx) %2:i32 = xor 31:i32, %1 %3:i32 = phi %0, 2:i32, 1:i32, %2, 0:i32 infer %3 known from Souper: 000000000000000000000000000xxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i32 = phi %0, 7:i32, 0:i32, 8:i32 %2:i32 = shl 1:i32, %1 infer %2 known from Souper: 00000000000000000000000xx000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i1 = var %2 = block 3 %3:i32 = var (0000000000000000000000000000000x) %4:i32 = select %1, 0:i32, %3 %5:i32 = phi %0, %4, 1:i32, 1:i32 infer %5 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i8 = var (0000000x) %2:i8 = shlnw %1, 1:i8 %3:i8 = phi %0, %2, %2 infer %3 known from Souper: 000000x0 known from compiler: xxxxxxx0 souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 3 %2:i8 = var (0000000x) %3:i8 = var (0000000x) %4:i8 = var (0000000x) %5:i8 = phi %1, %2, %3, %4 %6:i8 = var (0000000x) %7:i8 = or %5, %6 %8:i8 = var (0000000x) %9:i8 = or %5, %8 %10:i8 = phi %0, %7, %9, %5 infer %10 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1:i32 = var (0000000000000000000000000000000x) %2:i32 = xor 1:i32, %1 %3:i32 = phi %0, %2, 2:i32, 1:i32, 1:i32 infer %3 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = var %2:i1 = eq %0, %1 %3:i64 = sub %1, %0 %4:i64 = select %2, %3, 1:i64 infer %4 known from Souper: 000000000000000000000000000000000000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (000000000000000000000000000xxxxx) %1:i32 = xor 31:i32, %0 %2:i32 = var %3:i32 = lshr %2, 8:i32 %4:i1 = ult %1, %3 %5:i32 = select %4, %1, %3 infer %5 known from Souper: 000000000000000000000000000xxxxx known from compiler: 00000000xxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1 = block 4 %2:i8 = phi %1, 1:i8, 0:i8, 0:i8, 1:i8 %3:i8 = phi %0, %2, 0:i8, 0:i8, %2 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i1 = slt %0, 8:i32 %2:i32 = select %1, 8:i32, %0 infer %2 known from Souper: 0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = var %2:i32 = and %0, %1 %3:i32 = add 1:i32, %2 %4:i32 = and %3, %2 infer %4 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 3 %2:i8 = phi %1, 1:i8, 0:i8, 0:i8 %3:i8 = phi %0, %2, 0:i8, %2 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (0000000000000000000000000001111x) %1:i32 = var (0000000000000000000000000000000x) %2:i32 = subnsw %0, %1 %3 = block 3 %4:i1 = var %5:i32 = sext %4 %6:i32 = addnsw %2, %5 infer %6 known from Souper: 000000000000000000000000000111xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i32 = var (0000000000000000000000000000000x) %3:i32 = or 2:i32, %2 %4:i32 = addnw 1:i32, %3 %5:i32 = phi %0, %4, %3 infer %5 known from Souper: 00000000000000000000000000000xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i1 = var %2:i32 = var (000000000000000000000000000000xx) %3:i32 = select %1, 2:i32, %2 %4 = block 4 %5:i32 = var (000000000000000000000000000000xx) %6:i32 = var (000000000000000000000000000000xx) %7:i32 = phi %4, 0:i32, 3:i32, %5, %6 %8:i32 = phi %0, %3, %7 infer %8 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1 = block 2 %2:i32 = phi %1, 1:i32, 2:i32 %3:i32 = or 4:i32, %2 %4:i32 = phi %0, %2, %3, 0:i32, 0:i32 infer %4 known from Souper: 00000000000000000000000000000xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %1:i64 = or 4:i64, %0 %2:i64 = subnsw 0:i64, %1 %3:i64 = and %2, %1 infer %3 known from Souper: 0000000000000000000000000000000000000000000000000000000000000xxx known from compiler: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = var (0000000000000000000000000000000000000000000000000000000000xxxxx0) %2:i64 = shl 1:i64, %1 %3:i64 = and %0, %2 infer %3 known from Souper: 0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i64 = var (000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %2:i64 = and 536870911:i64, %1 %3:i1 = var %4:i64 = select %3, %2, 8:i64 %5:i64 = phi %0, %2, %4 infer %5 known from Souper: 00000000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i32 = phi %1, 105:i32, 106:i32 %3:i32 = phi %0, %2, 0:i32 infer %3 known from Souper: 0000000000000000000000000xx0x0xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 15 %1:i16 = phi %0, 64:i16, 32:i16, 16:i16, 16:i16, 8:i16, 8:i16, 8:i16, 8:i16, 8:i16, 8:i16, 8:i16, 8:i16, 8:i16, 8:i16, 8:i16 %2:i16 = addnsw 65535:i16, %1 infer %2 known from Souper: 0000000000xxx111 known from compiler: xxxxxxxxxxxxx111 souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1 = block 1 %2:i32 = var %3:i32 = sub %0, %2 %4 = block 2 %5:i1 = var %6:i32 = select %5, 3:i32, 2:i32 %7:i32 = lshr %3, %6 infer %7 known from Souper: 00xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i32 = var (0000000000000000xxxxxxxxxxxxxxxx) %3:i32 = var (0000000xxxxxxxxxxxxxxxxx00000000) %4:i32 = or %2, %3 %5:i32 = var (0000000xxxxxxxxxxxxxxxx000000000) %6:i32 = or 8192:i32, %5 %7:i32 = phi %0, %4, %6 infer %7 known from Souper: 0000000xxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (00000000000000000000000000000xxx) %1:i32 = addnw 1:i32, %0 %2:i32 = shl 1:i32, %1 infer %2 known from Souper: 00000000000000000000000xxxxxxxx0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 11 %1:i8 = var (0000000x) %2:i8 = xor 1:i8, %1 %3:i8 = phi %0, 0:i8, 0:i8, 0:i8, 1:i8, 0:i8, 1:i8, 0:i8, %2, 0:i8, 0:i8, 0:i8 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1:i32 = var (000000000000xxxx0000000000000000) %2:i32 = or 4194376:i32, %1 %3:i32 = phi %0, 4390984:i32, 4259912:i32, %2, 4194376:i32 infer %3 known from Souper: 000000000100xxxx0000000001001000 known from compiler: xxxxxxxxx1xxxxxxxxxxxxxxx1xx1xxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 7 %2:i8 = phi %1, 1:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8 %3:i1 = var %4:i8 = zext %3 %5:i1 = var %6:i8 = zext %5 %7:i8 = phi %0, %2, %4, %6 infer %7 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i8 = var %1:i32 = sext %0 %2:i32 = addnsw 142:i32, %1 infer %2 known from Souper: 00000000000000000000000xxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2 = block 1 %3:i8 = var (0000000x) %4:i8 = phi %1, 0:i8, %3 %5:i8 = phi %0, 1:i8, %4 infer %5 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = and 4095:i32, %0 %2:i32 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0) %3:i32 = and 30:i32, %2 %4:i32 = lshr %1, %3 infer %4 known from Souper: 00000000000000000000xxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = var %2:i64 = sub %0, %1 %3:i1 = ult %2, 7:i64 %4:i64 = select %3, %2, 7:i64 infer %4 known from Souper: 0000000000000000000000000000000000000000000000000000000000000xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i64 = sext %0 %2:i64 = lshr 7696581427200:i64, %1 infer %2 known from Souper: 000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %1:i64 = addnw 1:i64, %0 %2:i24 = var (00000000000000000000000x) %3:i64 = zext %2 %4:i64 = addnw %1, %3 infer %4 known from Souper: 0000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1:i1 = var %2:i8 = zext %1 %3:i8 = var (0000000x) %4:i8 = xor 1:i8, %3 %5:i8 = phi %0, %2, 0:i8, %4, 0:i8, 0:i8 infer %5 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i32 = var (0000000000000000000000000000001x) %3 = block 2 %4:i32 = var (0000000000000000000000000000000x) %5:i32 = phi %1, %2, %4 %6:i32 = or 4:i32, %5 %7:i32 = phi %0, %6, %5 infer %7 known from Souper: 00000000000000000000000000000xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1 = block 2 %2:i8 = phi %1, 1:i8, 0:i8 %3:i8 = phi %0, 0:i8, 0:i8, 0:i8, %2, 0:i8 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 1 %2:i64 = var (000000000000000000000000000000000000000000000000xxxxxxxxxxxxxxxx) %3:i64 = phi %1, %2 %4 = block 2 %5:i64 = phi %4, %2, %2 %6:i64 = phi %0, %3, %5 infer %6 known from Souper: 000000000000000000000000000000000000000000000000xxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i64 = sext %0 %2:i64 = lshr 4398046242767:i64, %1 infer %2 known from Souper: 0000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i32 = var %2:i32 = and 511:i32, %1 %3:i32 = or 256:i32, %2 %4:i32 = phi %0, %2, %3, %2 infer %4 known from Souper: 00000000000000000000000xxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1:i1 = var %2:i8 = zext %1 %3 = block 2 %4:i8 = phi %3, 1:i8, %2 %5:i8 = phi %0, %2, %2, %4, %4 infer %5 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i1 = var %1:i32 = select %0, 16:i32, 8:i32 %2:i32 = addnsw 4294967295:i32, %1 %3:i32 = and %2, %1 infer %3 known from Souper: 00000000000000000000000000000000 known from compiler: 000000000000000000000000000xx000 souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 63 %1 = block 4 %2 = block 2 %3:i8 = var (0000000x) %4:i8 = phi %1, %3, 1:i8, %3, %3 %5:i8 = phi %0, %4, 1:i8, 1:i8, 1:i8, 1:i8, 1:i8, 1:i8, 1:i8, 1:i8, 1:i8, %4, 1:i8, 1:i8, 1:i8, 1:i8, 1:i8, 1:i8, 1:i8, 1:i8, 1:i8, 1:i8, 1:i8, 1:i8, 1:i8, 1:i8, 1:i8, 1:i8, 1:i8, 1:i8, 1:i8, 1:i8, 1:i8, 1:i8, 1:i8, 1:i8, 1:i8, 1:i8, 1:i8, %4, %4, %4, 1:i8, %4, %4, 1:i8, 1:i8, 1:i8, 1:i8, %4, 1:i8, %4, 1:i8, %4, 1:i8, %4, 1:i8, %4, %4, %4, %4, %4, %4, %4 infer %5 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1 = block 11 %2 = block 2 %3:i8 = var (0000000x) %4:i8 = phi %1, %3, 1:i8, 1:i8, 1:i8, 1:i8, 1:i8, 1:i8, 1:i8, 1:i8, 1:i8, 1:i8 %5:i8 = phi %0, %4, 1:i8, 1:i8, 1:i8, 1:i8 infer %5 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 2 %2:i64 = var (000000000000000000000000000000000000000000000000000000000xxxxxxx) %3:i64 = var (0000000000000000000000000000000000000000000000000000000000xxxxxx) %4:i64 = addnw %2, %3 %5:i64 = var %6:i64 = cttz %5 %7:i64 = phi %0, %4, %6, 64:i64 infer %7 known from Souper: 00000000000000000000000000000000000000000000000000000000xxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1:i32 = var (000000000000000000000000xxx00000) %2:i32 = lshrexact %1, 5:i32 %3:i32 = shl 1:i32, %2 infer %3 known from Souper: 000000000000000000000000xxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 6 %1:i32 = var (000000000000000000000000000000xx) %2:i32 = addnw 1:i32, %1 %3:i32 = phi %0, %2, %2, 3:i32, 4:i32, 2:i32, 1:i32 infer %3 known from Souper: 00000000000000000000000000000xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i1 = var %1:i32 = sext %0 %2:i32 = addnsw 4294967295:i32, %1 infer %2 known from Souper: 1111111111111111111111111111111x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = udiv 128:i64, %0 %2:i32 = trunc %1 infer %2 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 000000000000000000000000xxxxxxxx llvm is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = add 4294967286:i32, %0 %2:i32 = lshr 100107:i32, %1 infer %2 known from Souper: 000000000000000xxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 4 %2:i32 = phi %1, 123:i32, 123:i32, 122:i32, 122:i32 %3:i32 = phi %0, 122:i32, %2 infer %3 known from Souper: 0000000000000000000000000111101x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 7 %2:i8 = var (0000000x) %3:i8 = phi %1, %2, %2, %2, %2, %2, %2, 1:i8 %4:i8 = phi %0, 0:i8, %3 infer %4 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 13 %1:i32 = var (0000000000000000000000000000000x) %2:i32 = or 2:i32, %1 %3:i32 = phi %0, %2, 0:i32, 0:i32, 0:i32, 0:i32, 0:i32, 0:i32, 0:i32, 0:i32, 0:i32, 0:i32, 0:i32, 0:i32 infer %3 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 7 %1 = block 6 %2 = block 5 %3:i8 = var (0000000x) %4:i8 = phi %1, %3, %3, %3, 0:i8, 0:i8, 0:i8 %5:i8 = phi %0, %4, %4, %4, %4, 0:i8, 0:i8, 0:i8 infer %5 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = var (00000000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %2:i64 = addnsw %0, %1 %3:i32 = var %4:i64 = zext %3 %5:i64 = urem %2, %4 infer %5 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx llvm is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i32 = var (00000000000000000000000000xxxxxx) %3:i32 = phi %1, %2, 33:i32 %4:i32 = var %5:i32 = ctlz %4 %6:i32 = phi %0, %3, %5 infer %6 known from Souper: 00000000000000000000000000xxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 1 %2:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0) %3:i64 = phi %1, %2 %4:i64 = phi %0, %3, 0:i64 infer %4 known from Souper: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2 = block 4 %3:i32 = var (0000000000000000000000000000000x) %4 = block 4 %5:i32 = var (0000000000000000000000000000000x) %6:i32 = phi %1, %3, %5 %7:i32 = phi %0, %6, 1:i32 infer %7 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %1:i64 = addnsw 18446744073709551615:i64, %0 %2:i64 = urem %1, %0 %3:i64 = subnsw %1, %2 infer %3 known from Souper: 0000000000000000000000000000000000000000000000000000000000000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i1 = var %2:i8 = zext %1 %3 = block 2 %4:i8 = var (0000000x) %5:i8 = var (0000000x) %6:i8 = phi %3, %4, %5 %7 = block 2 %8:i8 = phi %7, 1:i8, 0:i8 %9:i8 = phi %0, %2, %6, %8 infer %9 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 14 %1:i64 = var (000000000000000000000000000000000000000000000000000000000000000x) %2:i32 = trunc %1 %3:i32 = phi %0, 1:i32, 1:i32, 0:i32, 5:i32, 6:i32, 3:i32, 2:i32, 0:i32, %2, 1:i32, 0:i32, 0:i32, 0:i32, 0:i32 infer %3 known from Souper: 00000000000000000000000000000xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1:i32 = var (xxxxxxxxxxxxxxxxxxxxxxxx00000000) %2:i32 = add 256:i32, %1 %3:i32 = phi %0, 0:i32, 0:i32, %2, 0:i32 infer %3 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxx00000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i24 = trunc %0 %2:i24 = lshr 5767168:i24, %1 infer %2 known from Souper: 0xxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 3 %2:i8 = var (001xx100) %3:i8 = phi %1, %2, 36:i8, 20:i8 %4:i8 = phi %0, %3, %3, 20:i8 infer %4 known from Souper: 00xxx100 known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (00000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx000) %1:i64 = addnsw 18446744073709551576:i64, %0 %2:i64 = urem %1, 40:i64 %3:i64 = subnsw %1, %2 infer %3 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i1 = var %2:i8 = zext %1 %3 = block 2 %4:i8 = phi %3, 0:i8, %2 %5:i8 = phi %0, %2, %4 infer %5 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (0000000000000000000000000000xxxx) %1:i32 = shl 1024:i32, %0 %2:i32 = add 4294966272:i32, %1 infer %2 known from Souper: 0000000xxxxxxxxxxxxxxx0000000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 4 %2:i32 = phi %1, 8:i32, 4:i32, 2:i32, 1:i32 %3 = block 4 %4:i32 = phi %3, 1:i32, 2:i32, 4:i32, 8:i32 %5:i32 = phi %0, %2, %4 infer %5 known from Souper: 0000000000000000000000000000xxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1 = block 2 %2 = block 6 %3:i8 = var (0000000x) %4:i8 = phi %1, 0:i8, %3 %5:i8 = phi %0, %4, %4, 1:i8, 1:i8 infer %5 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1 = block 2 %2:i32 = var %3:i32 = lshr %2, 8:i32 %4:i32 = phi %1, %3, 4:i32 %5:i32 = phi %0, %4, %3, %3, %3, 0:i32 infer %5 known from Souper: 00000000xxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 6 %2:i32 = phi %1, 4:i32, 5:i32, 7:i32, 16:i32, 6:i32, 8:i32 %3 = block 3 %4:i32 = phi %3, %2, %2, 2:i32 %5:i32 = phi %0, %2, %4 infer %5 known from Souper: 000000000000000000000000000xxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 9 %1 = block 4 %2:i32 = var (00000000000000000000000x00x0x00x) %3:i32 = phi %1, 0:i32, 0:i32, %2, 0:i32 %4:i32 = phi %0, 299:i32, 298:i32, 297:i32, 299:i32, 298:i32, %3, 298:i32, 297:i32, 298:i32 infer %4 known from Souper: 00000000000000000000000x00x0x0xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1 = block 4 %2 = block 4 %3:i8 = var (0000000x) %4:i8 = phi %1, %3, 1:i8, 1:i8, 1:i8 %5:i8 = phi %0, %4, %4, 1:i8, 1:i8 infer %5 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (0000000000000000000000000000000x) %2:i32 = addnw 1:i32, %1 %3:i1 = var %4:i32 = select %3, 3:i32, 0:i32 %5:i32 = phi %0, %2, %4 infer %5 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 6 %1 = block 3 %2:i8 = phi %1, 1:i8, 1:i8, 0:i8 %3:i8 = phi %0, 0:i8, 1:i8, 1:i8, %2, 1:i8, 1:i8 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1:i8 = var (0000000x) %2:i8 = xor 1:i8, %1 %3:i8 = phi %0, 0:i8, 0:i8, 0:i8, 0:i8, %2 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %1:i64 = mulnw 1000:i64, %0 %2:i32 = var %3:i64 = zext %2 %4:i64 = udiv %1, %3 infer %4 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 0000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx llvm is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 5 %2:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %3:i64 = phi %1, 0:i64, %2, 0:i64, 0:i64, 0:i64 %4:i64 = phi %0, %3, 0:i64 infer %4 known from Souper: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (0000000000000000000000000000000x) %2:i32 = addnw 1:i32, %1 %3:i32 = phi %0, 0:i32, %2 infer %3 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i64 = var (000000000000000000000000xxxxxxxx00000000000000000000000000000000) %2:i64 = or 15:i64, %1 %3:i64 = phi %0, %2, 15:i64 infer %3 known from Souper: 000000000000000000000000xxxxxxxx00000000000000000000000000001111 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx1111 souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2 = block 4 %3:i8 = var (0000000x) %4:i8 = phi %1, %3, 0:i8 %5:i1 = var %6:i8 = zext %5 %7:i8 = phi %0, %4, %6 infer %7 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (00000000000000000000000000xxx110) %1:i64 = zext %0 %2:i64 = shl 1:i64, %1 infer %2 known from Souper: 0x0000000x0000000x0000000x0000000x0000000x0000000x0000000x000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 3 %2 = block 6 %3:i32 = phi %2, 318:i32, 318:i32, 318:i32, 318:i32, 317:i32, 317:i32 %4:i32 = phi %1, %3, 94:i32, 93:i32 %5:i32 = phi %0, %4, %3 infer %5 known from Souper: 00000000000000000000000x0xx111xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i1 = var %1:i32 = var (0000000000000000000000000xxxxxxx) %2:i32 = select %0, %1, 1:i32 %3:i1 = ult %2, 16:i32 %4:i32 = select %3, %2, 16:i32 infer %4 known from Souper: 000000000000000000000000000xxxxx known from compiler: 0000000000000000000000000xxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 10 %1 = block 2 %2:i32 = var (00000000000000000000000000000x1x) %3:i32 = phi %1, %2, 6:i32 %4:i32 = phi %0, 6:i32, 6:i32, 6:i32, 0:i32, %3, 0:i32, 0:i32, 6:i32, 6:i32, 6:i32 infer %4 known from Souper: 00000000000000000000000000000xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 3 %2:i1 = var %3:i8 = zext %2 %4:i1 = var %5:i8 = select %4, 1:i8, %3 %6:i8 = phi %0, %3, %3, %5 infer %6 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 4 %2:i8 = phi %1, 0:i8, 1:i8, 1:i8, 1:i8 %3:i8 = phi %0, %2, 0:i8 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 3 %2 = block 2 %3:i8 = var (0000000x) %4:i8 = var %5:i8 = and 1:i8, %4 %6:i8 = phi %1, %3, %5, %5 %7:i8 = phi %0, %6, %5 infer %7 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1 = block 4 %2 = block 4 %3:i32 = var (0000000000000000000000000000000x) %4:i32 = var (0000000000000000000000000000001x) %5:i32 = phi %1, %3, %3, %4, %4 %6:i32 = or 4:i32, %5 %7:i32 = phi %0, %5, %5, %6, %6 infer %7 known from Souper: 00000000000000000000000000000xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i1 = var %2:i32 = var (00000000000000000000xx0x1x10xxx0) %3:i32 = var (00000000000000000000xx0x1x10x0x1) %4:i32 = select %1, %2, %3 %5:i32 = phi %0, %4, %4 infer %5 known from Souper: 00000000000000000000xx0x1x10xxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 8 %1 = block 3 %2:i8 = phi %1, 1:i8, 0:i8, 1:i8 %3:i8 = phi %0, %2, 0:i8, %2, 1:i8, 1:i8, %2, %2, %2 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (0000000000000000000000000000000000000000000000000000000000xxxxxx) %1:i64 = var %2:i64 = addnsw %0, %1 %3 = block 2 %4:i64 = var (00xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %5:i64 = var (000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %6:i64 = phi %3, %4, %5 %7:i64 = urem %2, %6 infer %7 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 00xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx llvm is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i8 = var (0000xxxx) %2:i64 = zext %1 %3:i64 = urem %0, %2 infer %3 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 000000000000000000000000000000000000000000000000000000000000xxxx llvm is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (00000000xxxxxxxxxxxxxxxx00000000) %1:i32 = and 7936:i32, %0 %2:i32 = var (000000000000000000000000xxxxxxxx) %3:i32 = var (0000000000000000000000000000000x) %4:i32 = shlnw %2, %3 %5:i32 = or %1, %4 infer %5 known from Souper: 0000000000000000000xxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (000000000000000000000000000000x0) %2:i32 = var (0000000000000000000000000000000x) %3:i32 = or %1, %2 %4:i32 = var (000000000000000000000000000000x0) %5:i32 = var (0000000000000000000000000000000x) %6:i32 = or %4, %5 %7:i32 = phi %0, %3, %6 infer %7 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1 = block 5 %2:i32 = phi %1, 1:i32, 2:i32, 0:i32, 0:i32, 0:i32 %3:i32 = phi %0, 1:i32, %2, 0:i32, 0:i32 infer %3 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 9 %1 = block 3 %2:i32 = phi %1, 0:i32, 0:i32, 1:i32 %3:i32 = phi %0, 0:i32, 0:i32, 2:i32, 0:i32, 1:i32, 0:i32, 1:i32, %2, 1:i32 infer %3 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i64 = sext %0 %2:i64 = lshr 103:i64, %1 infer %2 known from Souper: 000000000000000000000000000000000000000000000000000000000xxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx1) %2:i32 = shlnsw %1, 3:i32 %3:i32 = lshr %0, %2 infer %3 known from Souper: 00000000xxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i1 = var %3:i32 = select %2, 218:i32, 217:i32 %4:i32 = phi %1, %3, %3 %5:i32 = phi %0, %4, %3 infer %5 known from Souper: 000000000000000000000000110110xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = var %2:i1 = ult %0, %1 %3:i32 = shl 1:i32, %1 %4:i32 = select %2, %3, 0:i32 infer %4 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 18 %1:i1 = var %2:i64 = select %1, 6:i64, 4:i64 %3:i1 = var %4:i64 = select %3, 6:i64, 4:i64 %5 = block 7 %6:i64 = phi %5, 4:i64, 6:i64, 4:i64, 4:i64, 4:i64, 4:i64, 4:i64 %7:i64 = phi %0, 4:i64, 4:i64, 6:i64, 6:i64, 4:i64, 6:i64, 4:i64, 4:i64, 4:i64, 4:i64, %2, %4, %6, %6, %6, %6, %6, %6 infer %7 known from Souper: 00000000000000000000000000000000000000000000000000000000000001x0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1 = block 4 %2:i8 = phi %1, 0:i8, 1:i8, 1:i8, 0:i8 %3:i8 = phi %0, %2, 0:i8, 0:i8, 0:i8 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 9 %1:i16 = var %2:i32 = zext %1 %3 = block 2 %4:i32 = var (0000000000000000xxxxxxxxxxxxxxxx) %5:i32 = phi %3, %4, 0:i32 %6 = block 4 %7:i32 = var (0000000000000000xxxxxxxxxxxxxxxx) %8:i32 = var (0000000000000000xxxxxxxxxxxxxxxx) %9:i32 = phi %6, %7, %8, 0:i32, 0:i32 %10 = block 2 %11:i32 = var (0000000000000000xxxxxxxxxxxxxxxx) %12:i32 = phi %10, %11, 0:i32 %13 = block 2 %14:i32 = var (0000000000000000xxxxxxxxxxxxxxxx) %15:i32 = phi %13, %14, 0:i32 %16:i32 = phi %0, %2, %5, %5, %9, %12, %15, %9, %12, %15 infer %16 known from Souper: 0000000000000000xxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2 = block 8 %3:i32 = var (000000000000000000000000000000xx) %4:i32 = phi %1, 1:i32, %3 %5:i32 = phi %0, %4, 1:i32 infer %5 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (0000000000000000000000000000000x) %2:i32 = var (0000000000000000000000000000000x) %3:i32 = addnw %1, %2 %4:i32 = addnw 1:i32, %3 %5:i32 = phi %0, %4, %3 infer %5 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 6 %1:i32 = var (000000000000000000000000000000xx) %2:i32 = var (000000000000000000000000000000xx) %3:i32 = addnw %1, %2 %4:i32 = addnw 1:i32, %3 infer %4 known from Souper: 00000000000000000000000000000xxx known from compiler: 0000000000000000000000000000xxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 5 %2:i32 = phi %1, 1:i32, 1:i32, 1:i32, 1:i32, 0:i32 %3:i32 = phi %0, 1:i32, %2 infer %3 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 7 %2:i32 = phi %1, 1:i32, 0:i32, 0:i32, 0:i32, 0:i32, 0:i32, 0:i32 %3:i32 = phi %0, %2, 1:i32, 1:i32 infer %3 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1 = block 2 %2:i32 = phi %1, 0:i32, 1:i32 %3:i32 = phi %0, 0:i32, 3:i32, 2:i32, 3:i32, %2 infer %3 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i8 = var (000xx001) %2:i8 = phi %0, 33:i8, %1 %3:i32 = zext %2 infer %3 known from Souper: 00000000000000000000000000xxx001 known from compiler: 00000000000000000000000000xxx00x souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %1:i32 = trunc %0 %2:i1 = ult %1, 6:i32 %3:i32 = select %2, %1, 0:i32 infer %3 known from Souper: 00000000000000000000000000000xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i64 = var %2:i64 = var %3:i1 = eq %1, %2 %4:i64 = sub %1, %2 %5:i64 = select %3, %4, 1:i64 infer %5 known from Souper: 000000000000000000000000000000000000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 2 %2:i32 = var (0000000000000000000000000000000x) %3:i32 = phi %1, 4:i32, %2 %4:i32 = phi %0, 4:i32, 1:i32, %3 infer %4 known from Souper: 00000000000000000000000000000x0x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1:i32 = var (0000000000000000000000000000000x) %2:i32 = addnw 29:i32, %1 %3:i32 = phi %0, 0:i32, 0:i32, %2, 0:i32 infer %3 known from Souper: 000000000000000000000000000xxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = sub 32:i32, %0 %2:i32 = lshr 71:i32, %1 infer %2 known from Souper: 0000000000000000000000000xxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (0000000000000000000000000000000x) %2:i8 = trunc %1 %3:i8 = phi %0, 1:i8, %2 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = var (0000000000000000000000000000000000000000000000000000000000xxx010) %2:i64 = shl 1:i64, %1 %3:i64 = and %0, %2 infer %3 known from Souper: 00000x0000000x0000000x0000000x0000000x0000000x0000000x0000000x00 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 8 %1 = block 5 %2:i32 = phi %1, 2:i32, 0:i32, 1:i32, 2:i32, 2:i32 %3:i32 = phi %0, 0:i32, %2, 1:i32, 2:i32, 0:i32, 2:i32, 2:i32, 1:i32 infer %3 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (0000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %1:i64 = and 65535:i64, %0 %2:i1 = var %3:i64 = select %2, 0:i64, 8:i64 %4:i64 = lshr %1, %3 infer %4 known from Souper: 000000000000000000000000000000000000000000000000xxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i1 = ult 10:i32, %0 %2:i32 = select %1, 10:i32, %0 infer %2 known from Souper: 0000000000000000000000000000xxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 10 %1 = block 2 %2:i32 = var (000000000000000000000000000001x0) %3:i32 = phi %1, %2, 2:i32 %4:i32 = phi %0, 0:i32, 0:i32, 0:i32, 0:i32, 0:i32, 0:i32, %3, %3, 0:i32, 0:i32 infer %4 known from Souper: 00000000000000000000000000000xx0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = var %2:i32 = lshr %1, 3:i32 %3:i32 = urem %0, %2 infer %3 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 000xxxxxxxxxxxxxxxxxxxxxxxxxxxxx llvm is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = var (0000000000000000000000000000001x) %2:i32 = shl %0, %1 %3:i64 = zext %2 infer %3 known from Souper: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00 known from compiler: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 4 %2:i32 = phi %1, 0:i32, 3:i32, 8:i32, 0:i32 %3:i32 = phi %0, 0:i32, 0:i32, %2 infer %3 known from Souper: 0000000000000000000000000000x0xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 3 %2 = block 2 %3:i32 = var %4:i64 = zext %3 %5:i64 = phi %1, 0:i64, 0:i64, %4 %6:i64 = phi %0, %5, 0:i64, %4 infer %6 known from Souper: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var %2:i16 = trunc %1 %3:i16 = lshr 415:i16, %2 infer %3 known from Souper: 0000000xxxxxxxxx known from compiler: xxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i64 = var (000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %2:i64 = addnw 1:i64, %1 %3:i64 = phi %0, %2, 0:i64 infer %3 known from Souper: 00xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = addnsw 4294967295:i32, %0 %2:i32 = lshr 917761:i32, %1 infer %2 known from Souper: 000000000000xxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i8 = trunc %0 %2:i8 = lshr 99:i8, %1 infer %2 known from Souper: 0xxxxxxx known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i1 = var %1:i32 = select %0, 4:i32, 2:i32 %2:i32 = addnsw 4294967295:i32, %1 infer %2 known from Souper: 000000000000000000000000000000x1 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx1 souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 1 %2:i8 = var (0000000x) %3:i8 = phi %1, %2 %4 = block 2 %5:i8 = phi %4, %2, %2 %6:i8 = phi %0, %3, %5 infer %6 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 8 %1:i1 = var %2:i32 = var (0000000000000000000000000000xxxx) %3:i32 = var (000000000000000000000000000010xx) %4:i32 = select %1, %2, %3 %5:i1 = var %6:i32 = var (0000000000000000000000000000xxxx) %7:i32 = var (000000000000000000000000000010xx) %8:i32 = select %5, %6, %7 %9:i32 = phi %0, 0:i32, %4, %8, 6:i32, 5:i32, 3:i32, 1:i32, 2:i32 infer %9 known from Souper: 0000000000000000000000000000xxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 3 %2 = block 3 %3:i8 = var (0000000x) %4 = block 2 %5:i8 = var (0000000x) %6 = block 3 %7:i8 = var (0000000x) %8:i8 = phi %1, %3, %5, %7 %9:i8 = phi %0, 0:i8, %8 infer %9 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 4 %2:i8 = phi %1, 0:i8, 0:i8, 1:i8, 0:i8 %3:i8 = xor 1:i8, %2 %4:i8 = phi %0, %3, %2 infer %4 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 8 %2:i1 = var %3:i32 = select %2, 33554432:i32, 0:i32 %4:i32 = var (001000x0000000000000000000000000) %5:i32 = var (010100x0000000000000000000000000) %6:i32 = var (010000x0000000000000000000000000) %7:i32 = var (001100x0000000000000000000000000) %8:i32 = var (000100x0000000000000000000000000) %9:i32 = phi %1, %3, %3, %4, %5, %6, %7, %8, %3 %10:i32 = phi %0, %9, %9, %3 infer %10 known from Souper: 0xxx00x0000000000000000000000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (00000000000000000000000000000xxx) %1:i32 = and 1:i32, %0 %2:i1 = var %3:i32 = select %2, 14:i32, 15:i32 %4:i32 = shl %1, %3 infer %4 known from Souper: 0000000000000000xx00000000000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i1 = var %2 = block 2 %3:i32 = var (000000000000000000000000000000x1) %4:i32 = phi %2, 3:i32, %3 %5:i32 = select %1, 1:i32, %4 %6:i32 = phi %0, %5, %4 infer %6 known from Souper: 000000000000000000000000000000x1 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 1 %1:i32 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxx0000) %2:i32 = add 16:i32, %1 %3:i32 = phi %0, %2 infer %3 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxx0000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (00xx0000000000000000000000000000) %2:i32 = var (0x000000000000000000000000000000) %3:i32 = or %1, %2 %4:i32 = phi %0, %3, %3 infer %4 known from Souper: 0xxx0000000000000000000000000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i1 = ult 1:i64, %0 %2:i64 = select %1, 1:i64, %0 infer %2 known from Souper: 000000000000000000000000000000000000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 5 %2:i32 = phi %1, 3:i32, 2:i32, 2:i32, 2:i32, 2:i32 %3 = block 6 %4:i32 = phi %3, 2:i32, 1:i32, 2:i32, 2:i32, 2:i32, 0:i32 %5:i32 = phi %0, %2, %4 infer %5 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i32 = phi %1, 2:i32, 0:i32 %3:i32 = phi %0, %2, 2:i32 infer %3 known from Souper: 000000000000000000000000000000x0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1 = block 2 %2:i32 = var (00000000000000000000000000xxxxxx) %3:i32 = phi %1, %2, 64:i32 %4:i1 = ult %0, %3 %5:i32 = select %4, %0, %3 infer %5 known from Souper: 0000000000000000000000000xxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 1 %2:i24 = var (0000000000000000xxxxxxx0) %3:i24 = phi %1, %2 %4 = block 4 %5:i24 = phi %4, %2, %2, %2, %2 %6:i24 = phi %0, %3, %5 infer %6 known from Souper: 0000000000000000xxxxxxx0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i64 = var %2:i64 = var %3:i64 = phi %0, %1, %2, %2 %4:i64 = sub %3, %3 infer %4 known from Souper: 0000000000000000000000000000000000000000000000000000000000000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1 = block 2 %2:i64 = var %3:i64 = and 18446744073709551612:i64, %2 %4:i64 = or 2:i64, %3 %5:i64 = phi %0, %4, 0:i64, 0:i64, %3 infer %5 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 11 %1 = block 20 %2:i32 = var (000000000000000000000000xxxxxxxx) %3:i32 = var (000000000000000000000000xxxxxxxx) %4:i32 = var (000000000000000000000000xxxxxxxx) %5:i32 = var (000000000000000000000000xxxxxxxx) %6:i32 = var (000000000000000000000000xxxxxxxx) %7:i32 = var (000000000000000000000000xxxxxxxx) %8:i32 = var (000000000000000000000000xxxxxxxx) %9:i32 = var (000000000000000000000000xxxxxxxx) %10:i32 = var (000000000000000000000000000000xx) %11:i32 = phi %1, 2:i32, %2, 3:i32, %3, 2:i32, %4, 3:i32, 2:i32, %5, 3:i32, 2:i32, %6, 3:i32, %7, 0:i32, %8, %9, 0:i32, 0:i32, %10 %12:i8 = var %13:i32 = zext %12 %14:i8 = var %15:i32 = zext %14 %16:i8 = var %17:i32 = zext %16 %18:i8 = var %19:i32 = zext %18 %20:i32 = phi %0, %11, %11, %11, %11, %11, %11, %11, %13, %15, %17, %19 infer %20 known from Souper: 000000000000000000000000xxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 2 %2:i8 = var (0000000x) %3:i8 = phi %1, 1:i8, %2 %4:i8 = phi %0, 1:i8, %3, 1:i8 infer %4 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 3 %2 = block 2 %3:i8 = var (0000000x) %4:i8 = phi %1, 0:i8, %3, %3 %5 = block 2 %6:i8 = var (0000000x) %7:i8 = phi %5, %6, %4 %8:i8 = phi %0, %4, %7 infer %8 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1:i32 = var (0000000000000000000000000000000x) %2:i32 = xor 1:i32, %1 %3:i32 = phi %0, %2, %2, 1:i32, 1:i32 infer %3 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 10 %1 = block 5 %2:i8 = phi %1, 1:i8, 1:i8, 1:i8, 1:i8, 0:i8 %3:i8 = phi %0, %2, 1:i8, 1:i8, 1:i8, 1:i8, 1:i8, 1:i8, 1:i8, 1:i8, 1:i8 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i1 = phi %0, 1:i1, 0:i1, 0:i1 %2:i32 = phi %0, 0:i32, 329:i32, 329:i32 %3:i32 = select %1, 324:i32, %2 infer %3 known from Souper: 0000000000000000000000010100xx0x known from compiler: 00000000000000000000000x0x00xx0x souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = urem %0, 99999:i32 %2:i32 = addnw 1:i32, %1 infer %2 known from Souper: 000000000000000xxxxxxxxxxxxxxxxx known from compiler: 00000000000000xxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 13 %1 = block 5 %2:i32 = var (0000000000000000000000101x00xx01) %3:i32 = var (0000000000000000000000101x001xxx) %4:i32 = phi %0, %2, %3, 638:i32, 695:i32, 694:i32, 707:i32, 706:i32, 665:i32, 664:i32, 676:i32, 675:i32, 630:i32, 629:i32 %5:i64 = zext %4 infer %5 known from Souper: 00000000000000000000000000000000000000000000000000000010xxxxxxxx known from compiler: 000000000000000000000000000000000000000000000000000000x0xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i80 = var (000000000000000000000000000000000000000000000000000000000000000000xxxxxxxxxxxxxx) %2:i32 = trunc %1 %3:i80 = var (000000000000000000000000000000000000000000000000000000000000000000xxxxxxxxxxxxxx) %4:i32 = trunc %3 %5:i32 = phi %0, %2, %4 infer %5 known from Souper: 000000000000000000xxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 3 %2:i32 = var (00000000000000000xxxxxxxxxxxxxxx) %3:i32 = var (00000000000000000xxxxxxxxxxxxxxx) %4:i32 = phi %1, %2, 37:i32, %3 %5:i1 = var %6:i32 = select %5, 33:i32, %4 %7:i32 = phi %0, %4, 32:i32, %6 infer %7 known from Souper: 00000000000000000xxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (00000000000000000000000000xxxxxx) %1:i64 = zext %0 %2:i64 = lshr 18446744073709551615:i64, %1 infer %2 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx1 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 4 %2:i32 = phi %1, 128:i32, 128:i32, 129:i32, 129:i32 %3:i32 = phi %0, 128:i32, %2 infer %3 known from Souper: 0000000000000000000000001000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i1 = var %1:i32 = select %0, 8:i32, 4:i32 %2:i32 = mulnw 3:i32, %1 infer %2 known from Souper: 000000000000000000000000000x1x00 known from compiler: 00000000000000000000000000xxxx00 souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var %2:i32 = phi %0, %1, 9:i32 %3:i32 = lshr 117442535:i32, %2 infer %3 known from Souper: 00000xxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (00000000000000000000000000xxx011) %1:i64 = zext %0 %2:i64 = shl 1:i64, %1 infer %2 known from Souper: 0000x0000000x0000000x0000000x0000000x0000000x0000000x0000000x000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 14 %1 = block 13 %2:i8 = phi %1, 1:i8, 0:i8, 1:i8, 1:i8, 1:i8, 1:i8, 1:i8, 1:i8, 1:i8, 1:i8, 1:i8, 1:i8, 1:i8 %3:i8 = phi %0, %2, %2, %2, %2, %2, 0:i8, 0:i8, %2, %2, %2, %2, %2, %2, %2 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 3 %2 = block 2 %3:i8 = var (0000000x) %4:i8 = var (0000000x) %5:i8 = phi %1, %3, %4, %4 %6 = block 2 %7:i8 = phi %6, %5, %4 %8:i8 = phi %0, %5, %7 infer %8 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i64 = var (00000000000000x0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %2:i64 = or 2533274790395904:i64, %1 %3:i64 = var (00000000000010x1xxxxxxxxxxxxxxxx00000000000000000000000000000000) %4:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxx1xx) %5:i64 = or %3, %4 %6:i64 = phi %0, %2, %5, %2 infer %6 known from Souper: 00000000000010x1xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %1:i64 = mulnw 40:i64, %0 %2:i64 = addnw 8:i64, %1 infer %2 known from Souper: 00000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx000 known from compiler: 0000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx000 souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1:i1 = var %2:i32 = zext %1 %3 = block 2 %4:i32 = var (0000000000000000000000000000000x) %5:i32 = phi %3, 0:i32, %4 %6:i32 = phi %0, %2, %5, 0:i32, 0:i32 infer %6 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 4 %2:i32 = phi %1, 1:i32, 0:i32, 1:i32, 1:i32 %3:i32 = phi %0, 0:i32, %2 infer %3 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1 = block 2 %2:i32 = var (000000000000000000000000000001xx) %3:i32 = var (000000000000000000000000000010xx) %4:i32 = phi %1, %2, %3 %5 = block 2 %6:i32 = phi %5, 1:i32, 2:i32 %7:i32 = phi %0, %4, 0:i32, 0:i32, %6, %6 infer %7 known from Souper: 0000000000000000000000000000xxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 3 %2 = block 3 %3:i32 = var (000000000000000000000000000000xx) %4:i32 = phi %1, 0:i32, %3, 0:i32 %5:i32 = phi %0, %4, 0:i32 infer %5 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i64 = sext %0 %2:i64 = lshr 4260330333127:i64, %1 infer %2 known from Souper: 0000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 4 %2:i32 = phi %1, 129:i32, 129:i32, 128:i32, 128:i32 %3:i32 = phi %0, 128:i32, %2 infer %3 known from Souper: 0000000000000000000000001000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1:i32 = var (00000000000000000000000000001x00) %2:i32 = shl 1:i32, %1 %3:i32 = addnsw 4294967295:i32, %2 infer %3 known from Souper: 00000000000000000000xxxx11111111 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1:i8 = var (0000000x) %2:i8 = xor 1:i8, %1 %3:i1 = var %4:i8 = zext %3 %5:i8 = phi %0, %2, %4, %4, %2 infer %5 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 1 %1:i16 = var (000000000001xxx0) %2:i16 = phi %0, %1 %3:i64 = zext %2 infer %3 known from Souper: 000000000000000000000000000000000000000000000000000000000001xxx0 known from compiler: 00000000000000000000000000000000000000000000000000000000000xxxx0 souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (000000000000000000000000000000000000000000000000000000000000000x) %1:i64 = xor 7695142597291091397:i64, %0 %2:i64 = mul 11376068507788127593:i64, %1 infer %2 known from Souper: xxx101x010x01011000x1xx011xxx01x011xxx0xxx00x1xxxxx1xxxxx1x0x10x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 6 %1 = block 3 %2:i8 = phi %1, 0:i8, 1:i8, 0:i8 %3:i8 = phi %0, %2, %2, 1:i8, 1:i8, 1:i8, 1:i8 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = var %2:i64 = and %0, %1 %3:i32 = var %4:i64 = zext %3 %5:i64 = urem %2, %4 infer %5 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx llvm is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i1 = var %2:i8 = zext %1 %3 = block 3 %4:i8 = phi %3, 1:i8, 0:i8, 0:i8 %5:i8 = phi %0, %2, %4 infer %5 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 4 %2:i8 = var (0000000x) %3:i8 = phi %1, %2, %2, 0:i8, %2 %4:i8 = phi %0, %3, 0:i8, %3 infer %4 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (0000000000000000000000000000000x) %2:i32 = or 4:i32, %1 %3:i32 = phi %0, %2, 4:i32 infer %3 known from Souper: 0000000000000000000000000000010x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxx1xx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = and 255:i64, %0 %2:i64 = shl 32:i64, %1 infer %2 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = lshr %0, 3:i32 %2:i1 = ult 8:i32, %1 %3:i32 = select %2, 8:i32, %1 infer %3 known from Souper: 0000000000000000000000000000xxxx known from compiler: 000xxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 5 %2:i8 = var (0000000x) %3:i8 = phi %1, 0:i8, 1:i8, 1:i8, 0:i8, %2 %4:i8 = phi %0, 0:i8, %3, 0:i8 infer %4 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1:i8 = var (0000000x) %2:i32 = zext %1 %3:i32 = phi %0, 0:i32, %2, 0:i32, 0:i32 infer %3 known from Souper: 0000000000000000000000000000000x known from compiler: 000000000000000000000000xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1:i1 = var %2:i8 = zext %1 %3 = block 4 %4:i8 = phi %3, %2, %2, %2, 1:i8 %5:i8 = phi %0, %2, %2, %2, %4, %4 infer %5 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (00000000000000000000000000000xxx) %1:i32 = subnsw 8:i32, %0 %2:i32 = mulnw 6:i32, %1 infer %2 known from Souper: 00000000000000000000000000xxxxx0 known from compiler: 0000000000000000000000000xxxxxx0 souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (000000000000000000000000000000x0) %2:i32 = or 1:i32, %1 %3:i32 = phi %0, 2:i32, %2 infer %3 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = var %2:i32 = and 2147483647:i32, %1 %3:i1 = ult %0, %2 %4:i32 = select %3, %0, %2 infer %4 known from Souper: 0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i16 = trunc %0 %2:i16 = lshr 7271:i16, %1 infer %2 known from Souper: 000xxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i64 = zext %0 %2:i64 = lshr 283333624981:i64, %1 infer %2 known from Souper: 0000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1 = block 3 %2:i8 = var (0000000x) %3:i8 = phi %1, 0:i8, 0:i8, %2 %4:i8 = phi %0, 0:i8, %3, %3, %3, 0:i8 infer %4 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 3 %2:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %3:i64 = phi %1, %2, 0:i64, 0:i64 %4:i64 = phi %0, %3, 0:i64 infer %4 known from Souper: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i1 = var %1:i64 = var (000000000000000000000000000000000000000000000000000000000xxxxxxx) %2:i64 = var %3:i64 = select %0, %1, %2 %4:i32 = var %5:i64 = zext %4 %6:i1 = ult %3, %5 %7:i64 = select %6, %3, %5 infer %7 known from Souper: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i64 = var (00000000000000000000000000000000000000000000000000000000000xxxxx) %2:i64 = addnw 4294967295:i64, %1 %3:i64 = phi %0, %2, 4294967327:i64 infer %3 known from Souper: 0000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 14 %1 = block 2 %2:i32 = var (000000000000000000000000000xxxxx) %3:i32 = phi %1, %2, 11:i32 %4:i32 = phi %0, %3, %3, %3, %3, %3, %3, %3, %3, %3, 5:i32, 5:i32, 15:i32, %3, %3 infer %4 known from Souper: 000000000000000000000000000xxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i1 = eq 0:i32, %0 %2:i32 = var %3:i32 = lshr 80:i32, %2 %4:i32 = select %1, 0:i32, %3 infer %4 known from Souper: 0000000000000000000000000xxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i1 = var %1:i64 = select %0, 2047:i64, 0:i64 %2:i64 = addnw 112:i64, %1 infer %2 known from Souper: 0000000000000000000000000000000000000000000000000000x000011xxxxx known from compiler: 0000000000000000000000000000000000000000000000000000xxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 11 %1 = block 6 %2:i32 = phi %1, 14:i32, 15:i32, 15:i32, 15:i32, 15:i32, 15:i32 %3:i32 = phi %0, %2, %2, %2, %2, %2, %2, %2, %2, %2, 15:i32, 15:i32 infer %3 known from Souper: 0000000000000000000000000000111x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 44 %1 = block 2 %2:i32 = phi %1, 4:i32, 1:i32 %3 = block 2 %4:i32 = phi %3, 4:i32, 1:i32 %5:i32 = phi %0, 1:i32, 1:i32, 1:i32, 1:i32, 1:i32, 1:i32, 1:i32, 1:i32, 1:i32, 1:i32, 1:i32, 1:i32, 1:i32, 1:i32, 1:i32, 1:i32, 1:i32, 1:i32, 1:i32, 1:i32, 1:i32, 1:i32, %2, 1:i32, %4, 1:i32, 1:i32, 0:i32, 0:i32, 0:i32, 1:i32, 1:i32, 1:i32, 1:i32, 1:i32, 1:i32, 1:i32, 1:i32, 1:i32, 1:i32, 1:i32, 1:i32, 1:i32, 1:i32 infer %5 known from Souper: 00000000000000000000000000000x0x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i64 = var (0000000000000000000000000000000000000000000000000000000000xxxxxx) %2:i32 = trunc %1 %3:i32 = phi %0, 64:i32, %2 infer %3 known from Souper: 0000000000000000000000000xxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00) %3:i64 = var %4:i64 = and 4294967292:i64, %3 %5:i64 = phi %1, %2, %4 %6:i64 = phi %0, %5, %4 infer %6 known from Souper: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (0000000000000000000000000000000x) %1:i32 = var (000000000000000000000000000000xx) %2:i32 = shl %0, %1 %3:i64 = zext %2 infer %3 known from Souper: 000000000000000000000000000000000000000000000000000000000000xxxx known from compiler: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1 = block 2 %2:i32 = var (000000000000000000000000000000x0) %3:i32 = phi %1, %2, 1:i32 %4 = block 5 %5:i32 = phi %4, %3, 1:i32, 1:i32, 1:i32, 1:i32 %6:i32 = phi %0, %3, %5, %5, 1:i32, 1:i32 infer %6 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 11 %2:i8 = phi %1, 0:i8, 0:i8, 1:i8, 1:i8, 1:i8, 1:i8, 1:i8, 0:i8, 0:i8, 0:i8, 0:i8 %3:i8 = phi %0, %2, 0:i8, 0:i8 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i32 = var %2:i32 = var %3:i32 = var %4:i32 = phi %0, %1, %2, %3 %5:i32 = add 4294967295:i32, %4 %6:i32 = or %4, %5 infer %6 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx1 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1:i8 = var (0000000x) %2:i8 = xor 1:i8, %1 %3:i8 = phi %0, 0:i8, 0:i8, 0:i8, %2, %2 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i16 = trunc %0 %2:i16 = lshr 1135:i16, %1 infer %2 known from Souper: 00000xxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 6 %2 = block 3 %3:i32 = var (0000000000000000000000000000000x) %4:i32 = phi %1, 0:i32, 0:i32, %3, 1:i32, 1:i32, 0:i32 %5:i32 = phi %0, %4, %4, 1:i32 infer %5 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (000000000000000000000000000000xx) %1:i32 = var (0000000000000000000000000000000x) %2:i32 = addnw %0, %1 %3:i32 = var (0000000000000000000000000000000x) %4:i32 = xor 1:i32, %3 %5:i32 = addnw %2, %4 infer %5 known from Souper: 00000000000000000000000000000xxx known from compiler: 0000000000000000000000000000xxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %1:i64 = var (0000000000000000000000000000000000000000000000000000000000xxxxxx) %2:i64 = shl %0, %1 %3:i32 = var %4:i64 = zext %3 %5:i64 = urem %2, %4 infer %5 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx llvm is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i32 = var %2:i32 = sub 4294967294:i32, %1 %3:i32 = xor 4294967295:i32, %1 %4:i1 = eq %2, %3 infer %4 known from Souper: 0 known from compiler: x souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i1 = var %2 = block 6 %3 = block 2 %4:i8 = var (0000000x) %5 = block 2 %6:i8 = var (0000000x) %7 = block 2 %8:i8 = var (0000000x) %9 = block 2 %10:i8 = var (0000000x) %11:i8 = phi %2, %4, %6, %8, %10, 0:i8, 0:i8 %12:i8 = select %1, %11, 0:i8 %13:i8 = phi %0, %12, %11 infer %13 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 2 %2:i32 = phi %1, 0:i32, 1:i32 %3:i32 = phi %0, 3:i32, %2, 3:i32 infer %3 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i48 = var (0000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx000) %1:i48 = lshr 65793:i48, %0 %2:i8 = trunc %1 infer %2 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i1 = var %2:i32 = select %1, 25:i32, 5:i32 %3:i32 = lshr %0, %2 infer %3 known from Souper: 00000xxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 8 %1 = block 3 %2:i32 = var (0000000000000000000000000000000x) %3:i32 = phi %1, %2, 2:i32, 2:i32 %4:i48 = var (00000000000000000000000000000000000000000000000x) %5:i32 = trunc %4 %6:i48 = var (00000000000000000000000000000000000000000000000x) %7:i32 = trunc %6 %8:i1 = var %9:i32 = select %8, 2:i32, 0:i32 %10 = block 2 %11:i32 = phi %10, 3:i32, 2:i32 %12:i32 = phi %0, %3, 3:i32, %5, %7, %9, 3:i32, %11, 2:i32 infer %12 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i16 = trunc %0 %2:i16 = lshr 1907:i16, %1 infer %2 known from Souper: 00000xxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i32 = phi %1, 0:i32, 1:i32 %3:i32 = or 2:i32, %2 %4:i32 = phi %0, %3, %2 infer %4 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1 = block 2 %2:i1 = var %3:i32 = select %2, 3:i32, 0:i32 %4:i32 = var (0000000000000000000000000000000x) %5:i32 = or 2:i32, %4 %6:i32 = phi %0, 4:i32, 1:i32, %3, 2:i32, %5 infer %6 known from Souper: 00000000000000000000000000000xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (00000000000000000000000000xxxxxx) %2:i32 = shl 14:i32, %1 %3:i32 = and 15:i32, %2 infer %3 known from Souper: 0000000000000000000000000000xxx0 known from compiler: 0000000000000000000000000000xxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00) %2:i32 = sub %0, %1 %3:i1 = slt %2, 0:i32 %4:i32 = select %3, 0:i32, %2 infer %4 known from Souper: 0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i248 = var (00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000xxxxxxxxxxxx) %2:i32 = trunc %1 %3:i248 = var (00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000xxxxxxxxx) %4:i32 = trunc %3 %5:i32 = phi %0, %2, %4 infer %5 known from Souper: 00000000000000000000xxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 7 %1 = block 3 %2 = block 4 %3:i8 = var (0000000x) %4:i8 = phi %1, %3, 1:i8, 0:i8 %5:i8 = phi %0, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, %4, 0:i8 infer %5 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = sub 32:i32, %0 %2:i32 = lshr 13:i32, %1 infer %2 known from Souper: 0000000000000000000000000000xxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = and 4294967295:i64, %0 %2:i1 = ult %1, 4:i64 %3:i64 = select %2, %1, 4:i64 infer %3 known from Souper: 0000000000000000000000000000000000000000000000000000000000000xxx known from compiler: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2 = block 3 %3:i32 = var (00000000000000000000111101000xxx) %4:i32 = phi %1, %3, 3907:i32 %5:i32 = phi %0, %4, 3907:i32 infer %5 known from Souper: 00000000000000000000111101000xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i1 = var %2:i32 = zext %1 %3:i32 = or 2:i32, %2 %4:i32 = phi %0, %2, %3 infer %4 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1:i32 = phi %0, 0:i32, 1:i32, 2:i32, 3:i32 %2:i32 = mulnw 37:i32, %1 infer %2 known from Souper: 0000000000000000000000000xx0xxxx known from compiler: 000000000000000000000000xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (0000000000000000000000xxxxxxxxxx) %1:i32 = var (0000000000000000000000000000000x) %2:i32 = addnw %0, %1 %3:i32 = var (0000000000000000000000000000000x) %4:i32 = xor 1:i32, %3 %5:i32 = addnw %2, %4 infer %5 known from Souper: 000000000000000000000xxxxxxxxxxx known from compiler: 00000000000000000000xxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %1:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %2:i64 = addnw %0, %1 %3:i32 = var %4:i64 = zext %3 %5:i64 = addnw %2, %4 infer %5 known from Souper: 00000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 0000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %1:i64 = addnw 128:i64, %0 %2:i1 = var %3:i64 = select %2, 2047:i64, 0:i64 %4:i64 = addnw %1, %3 infer %4 known from Souper: 0000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i64 = sext %0 %2:i64 = lshr 16492674392062:i64, %1 infer %2 known from Souper: 00000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (0000000000000000000000000000000x) %1:i32 = addnw 5:i32, %0 %2:i32 = var (00000000xxxxxxxxxxxxxxxxxxxxxxxx) %3:i32 = and 1:i32, %2 %4:i32 = addnw %1, %3 infer %4 known from Souper: 000000000000000000000000000001xx known from compiler: 0000000000000000000000000000xxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1 = block 5 %2:i8 = phi %1, 0:i8, 1:i8, 1:i8, 1:i8, 1:i8 %3 = block 2 %4:i8 = phi %3, 0:i8, 1:i8 %5:i8 = phi %0, %2, %2, %4, %4 infer %5 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (0000000000000000000000000000000000000000000000000000000000000xxx) %1:i64 = subnsw 8:i64, %0 %2:i1 = eq 0:i64, %1 infer %2 known from Souper: 0 known from compiler: x souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i1 = var %2:i32 = select %1, 8:i32, 4:i32 %3:i32 = subnsw 0:i32, %2 infer %3 known from Souper: 11111111111111111111111111111x00 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00 souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 6 %1:i64 = var %2:i64 = var %3:i64 = phi %0, %1, %2, %2, 4:i64, 5:i64, %2 %4:i1 = var %5:i64 = select %4, 4:i64, 3:i64 %6:i1 = ult %3, %5 %7:i64 = select %6, %3, %5 infer %7 known from Souper: 0000000000000000000000000000000000000000000000000000000000000xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i1 = var %2:i1 = var %3:i8 = zext %2 %4:i8 = select %1, %3, 0:i8 %5:i8 = phi %0, %4, %3 infer %5 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i1 = var %2:i8 = zext %1 %3:i1 = var %4 = block 2 %5:i8 = var (0000000x) %6:i8 = select %3, 1:i8, %5 %7:i8 = phi %0, %2, %6 infer %7 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 4 %2:i8 = var (0000000x) %3:i8 = var (0000000x) %4:i8 = phi %1, %2, %2, %3, 1:i8 %5 = block 1 %6:i8 = var (0000000x) %7:i8 = phi %5, %6 %8:i8 = phi %0, %4, %7 infer %8 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i64 = var %2:i64 = lshr %1, 32:i64 %3 = block 1 %4:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %5:i64 = phi %3, %4 %6:i64 = phi %0, %2, %5 infer %6 known from Souper: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = var %2:i32 = sub %0, %1 %3:i1 = ult 8:i32, %2 %4:i32 = select %3, 8:i32, %2 infer %4 known from Souper: 0000000000000000000000000000xxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 6 %1 = block 2 %2:i32 = var %3:i64 = zext %2 %4:i1 = var %5:i64 = select %4, 8:i64, %3 %6:i1 = var %7:i64 = select %6, 6:i64, %3 %8:i64 = phi %0, %3, %3, %3, %3, %5, %7 infer %8 known from Souper: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 15 %2:i8 = var (0x000000) %3:i8 = phi %1, 64:i8, 64:i8, 64:i8, 64:i8, 64:i8, 0:i8, 32:i8, 64:i8, 0:i8, 32:i8, 0:i8, 32:i8, 0:i8, 32:i8, %2 %4:i8 = phi %0, %3, 0:i8 infer %4 known from Souper: 0xx00000 known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 4 %2:i1 = var %3:i8 = zext %2 %4 = block 1 %5:i8 = var (0000000x) %6:i8 = phi %4, %5 %7 = block 1 %8:i8 = var (0000000x) %9:i8 = phi %7, %8 %10:i8 = phi %0, %3, %6, %9 infer %10 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i1 = ult 16:i32, %0 %2:i32 = select %1, 16:i32, %0 infer %2 known from Souper: 000000000000000000000000000xxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = and 4032:i32, %0 %2:i32 = cttz %1 infer %2 known from Souper: 00000000000000000000000000x0xxxx known from compiler: 00000000000000000000000000xxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 17 %1 = block 3 %2:i1 = var %3:i32 = var (00000000000000000000000x0x00x0xx) %4:i32 = select %2, 324:i32, %3 %5:i32 = phi %0, 0:i32, 331:i32, 333:i32, 332:i32, 325:i32, 0:i32, 0:i32, 0:i32, 0:i32, %4, 0:i32, 0:i32, 331:i32, 0:i32, 0:i32, 0:i32, 0:i32 infer %5 known from Souper: 00000000000000000000000x0x00xxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i1 = ult %0, 14:i64 %2:i64 = select %1, %0, 14:i64 infer %2 known from Souper: 000000000000000000000000000000000000000000000000000000000000xxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 9 %1 = block 14 %2:i32 = var (000000000000000000000000100111x1) %3:i32 = var (00000000000000000000000010xxxxx0) %4:i32 = phi %1, 93:i32, 92:i32, 91:i32, 157:i32, 158:i32, 94:i32, 159:i32, 160:i32, %2, 159:i32, 159:i32, %3, 160:i32, 160:i32 %5 = block 2 %6:i1 = var %7:i32 = select %6, 112:i32, 111:i32 %8:i32 = phi %0, %4, %7, %7, %7, %7, %7, %7, %7, %7 infer %8 known from Souper: 000000000000000000000000xxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 2 %2:i32 = phi %1, 1:i32, 0:i32 %3:i32 = phi %0, 1:i32, %2, %2 infer %3 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1 = block 4 %2:i32 = phi %1, 2:i32, 2:i32, 2:i32, 1:i32 %3:i32 = phi %0, 0:i32, 1:i32, 1:i32, 2:i32, %2 infer %3 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i32 = phi %1, 1:i32, 2:i32 %3:i32 = phi %0, 0:i32, %2 infer %3 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 2 %2:i8 = phi %1, 64:i8, 37:i8 %3:i8 = phi %0, 64:i8, 37:i8, %2 infer %3 known from Souper: 0xx00x0x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i32 = var (0000000000000000000000000000000x) %3:i32 = phi %1, %2, 0:i32 %4:i32 = phi %0, %3, 0:i32 infer %4 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i32 = trunc %0 %2:i32 = lshr 128:i32, %1 infer %2 known from Souper: 000000000000000000000000xxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 6 %1 = block 4 %2:i8 = phi %1, 64:i8, 64:i8, 64:i8, 4:i8 %3:i8 = phi %0, 64:i8, %2, 0:i8, 4:i8, 0:i8, 0:i8 infer %3 known from Souper: 0x000x00 known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i48 = var (0000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %1:i48 = shlnw %0, 3:i48 %2:i48 = lshr 77263631691040:i48, %1 infer %2 known from Souper: 0x000xx00x000xxx0x0x0xxx0x0x0xxx0xxxxxxx0xxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 3 %2:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %3:i64 = phi %1, 8:i64, 9:i64, %2 %4:i64 = phi %0, 20:i64, %3 infer %4 known from Souper: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = var (0000000000000000000000000000000000000000000000000000000000001x01) %2:i64 = shl 1:i64, %1 %3:i64 = and %0, %2 infer %3 known from Souper: 00000000000000000000000000000000000000000000000000x000x000000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i32 = phi %1, 1:i32, 4:i32 %3:i32 = phi %0, 4:i32, %2 infer %3 known from Souper: 00000000000000000000000000000x0x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (00000000000000000000000000001x00) %1:i32 = shl 1:i32, %0 infer %1 known from Souper: 0000000000000000000x000x00000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i32 = phi %0, 3:i32, 4:i32, 2:i32 %2:i32 = addnw 3:i32, %1 infer %2 known from Souper: 000000000000000000000000000001xx known from compiler: 0000000000000000000000000000xxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i8 = var (0000000x) %2:i8 = var (0000000x) %3:i8 = or %1, %2 %4:i8 = var (0000000x) %5:i8 = or %1, %4 %6 = block 2 %7:i8 = var (0000000x) %8 = block 2 %9:i8 = var (0000000x) %10:i8 = phi %6, %7, %9 %11:i8 = phi %0, %3, %5, %10 infer %11 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 3 %2:i32 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxx000) %3:i32 = phi %1, 0:i32, %2, %2 %4:i32 = var (xxxxxxxxxxxxxxxxxxxxxxxxx0000000) %5:i32 = addnsw %3, %4 %6:i32 = phi %0, %3, %5, %5 infer %6 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxx000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i64 = phi %1, 10:i64, 14:i64 %3:i64 = phi %0, 21:i64, %2 infer %3 known from Souper: 00000000000000000000000000000000000000000000000000000000000xxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (1111111111111111111111111xxxxxxx) %1:i32 = xor 127:i32, %0 %2:i32 = cttz %1 infer %2 known from Souper: 00000000000000000000000000000xxx known from compiler: 00000000000000000000000000xxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1 = block 3 %2:i32 = phi %1, 1:i32, 0:i32, 1:i32 %3:i32 = phi %0, %2, 0:i32, 1:i32, 1:i32 infer %3 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i32 = phi %1, 2:i32, 1:i32 %3:i32 = var (0000000000000000000000000000000x) %4:i32 = addnw %2, %3 %5:i32 = phi %0, %4, %2 infer %5 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i1 = var %2:i32 = var (000000xxxxxxxxxxxxxxxxxxxxxxxxxx) %3:i32 = var (000000xxxxxxxxxxxxxxxxxxxxxxxxxx) %4:i32 = select %1, %2, %3 %5:i32 = phi %0, 0:i32, %4 infer %5 known from Souper: 000000xxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1 = block 4 %2:i32 = phi %1, 2041:i32, 2042:i32, 2042:i32, 2042:i32 %3:i32 = phi %0, 2041:i32, 2041:i32, 2042:i32, %2 infer %3 known from Souper: 000000000000000000000111111110xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = udiv 8:i32, %0 %2:i64 = zext %1 infer %2 known from Souper: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 000000000000000000000000000000000000000000000000000000000000xxxx llvm is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i1 = var %2:i8 = zext %1 %3:i1 = var %4:i8 = select %3, 0:i8, %2 %5:i8 = phi %0, %2, %2, %4 infer %5 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i16 = var (000000000000000x) %2:i32 = zext %1 %3:i1 = slt %0, %2 %4:i32 = select %3, %2, %0 infer %4 known from Souper: 0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i9 = trunc %0 %2:i9 = lshr 82:i9, %1 infer %2 known from Souper: 00xxxxxxx known from compiler: xxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i1 = var %1 = block 2 %2:i32 = var %3:i32 = var %4:i32 = select %0, %2, %3 %5:i1 = slt %4, 0:i32 %6:i32 = select %5, 0:i32, %4 infer %6 known from Souper: 0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (1111111111111111111111111xxxxxxx) %1:i32 = cttz %0 %2:i32 = or 168:i32, %1 infer %2 known from Souper: 00000000000000000000000010101xxx known from compiler: 000000000000000000000000101x1xxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %1:i64 = mulnw 24:i64, %0 %2:i64 = addnw 24:i64, %1 infer %2 known from Souper: 000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx000 known from compiler: 00000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx000 souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i1 = var %2 = block 2 %3 = block 3 %4:i8 = var (0000000x) %5:i8 = phi %2, %4, 1:i8 %6:i8 = select %1, 0:i8, %5 %7:i8 = phi %0, %6, %5 infer %7 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1:i1 = var %2:i32 = var (000000000000000000000000xxxxxxxx) %3:i32 = select %1, %2, 4:i32 %4:i32 = addnw 4:i32, %3 %5:i32 = phi %0, 0:i32, %4, %3, %3 infer %5 known from Souper: 00000000000000000000000xxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (00000000000000000000000000001xx0) %1:i32 = shl 1:i32, %0 %2:i32 = addnsw 4294967295:i32, %1 infer %2 known from Souper: 000000000000000000xxxxxx11111111 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (0000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %1:i64 = udiv %0, 3:i64 %2:i64 = addnw 1:i64, %1 infer %2 known from Souper: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 0000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (0000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0000) %1:i64 = lshr 3096276284080138:i64, %0 %2:i16 = trunc %1 infer %2 known from Souper: 000000000000xxxx known from compiler: xxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i48 = var (0000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %1:i48 = shlnw %0, 3:i48 %2:i48 = lshr 65793:i48, %1 infer %2 known from Souper: 0000000000000000000000000000000x0000000x0000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1:i32 = phi %0, 1:i32, 2:i32, 4:i32, 8:i32 %2:i32 = addnw 536870911:i32, %1 infer %2 known from Souper: 00100000000000000000000000000xxx known from compiler: 00xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i1 = ult 10:i64, %0 %2:i64 = select %1, 10:i64, %0 infer %2 known from Souper: 000000000000000000000000000000000000000000000000000000000000xxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (0000000000000000xxxxxxxxxxxxxxxx) %1:i32 = and 15:i32, %0 %2:i32 = shl 1:i32, %1 infer %2 known from Souper: 0000000000000000xxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 4 %2:i32 = phi %1, 2:i32, 1:i32, 1:i32, 1:i32 %3:i32 = phi %0, 2:i32, %2 infer %3 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 10 %1 = block 4 %2 = block 7 %3:i32 = var (0000000000000000000000000000000x) %4:i32 = phi %1, %3, 1:i32, 1:i32, 1:i32 %5:i32 = phi %0, 1:i32, 1:i32, %4, 1:i32, 1:i32, 1:i32, 1:i32, 1:i32, 1:i32, 1:i32 infer %5 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 6 %1 = block 2 %2:i8 = var (0000000x) %3 = block 3 %4:i8 = var (0000000x) %5:i8 = phi %1, %2, %4 %6:i1 = var %7:i8 = zext %6 %8:i8 = phi %0, %5, %5, %7, %5, %5, %5 infer %8 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 7 %1 = block 17 %2:i32 = var (00000000000000000000000x0x00xxxx) %3:i32 = phi %1, 0:i32, 331:i32, 333:i32, 332:i32, 325:i32, 0:i32, 0:i32, 0:i32, 0:i32, %2, 0:i32, 0:i32, 331:i32, 0:i32, 0:i32, 0:i32, 0:i32 %4 = block 2 %5:i32 = phi %4, %3, 331:i32 %6:i32 = phi %0, %3, %5, %5, %5, %5, %5, %5 infer %6 known from Souper: 00000000000000000000000x0x00xxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (00000000000000000000000x000x0001) %2:i32 = xor 260:i32, %1 %3:i1 = var %4:i32 = select %3, 17:i32, 1:i32 %5:i32 = phi %0, %2, %4 infer %5 known from Souper: 00000000000000000000000x000x0x01 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i64 = zext %0 %2:i64 = lshr 17046188327425:i64, %1 infer %2 known from Souper: 00000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i8 = var (0000000x) %3:i8 = phi %1, 0:i8, %2 %4 = block 2 %5:i1 = var %6:i8 = select %5, 0:i8, %3 %7:i8 = phi %0, %3, %6 infer %7 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i8 = var %2:i32 = zext %1 %3:i1 = var %4:i32 = select %3, %2, 2:i32 %5:i32 = phi %0, %2, %4 infer %5 known from Souper: 000000000000000000000000xxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %2:i64 = addnw 1:i64, %1 %3:i64 = phi %0, %2, 1:i64 infer %3 known from Souper: 0000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i16 = var %2:i32 = zext %1 %3 = block 17 %4:i32 = var (0000000000000000xxxxxxxxxxxxxxxx) %5:i32 = var (00000000000000000000100001xxx11x) %6:i32 = var (00000000000000000000100001xxx10x) %7:i32 = var (00000000000000000000100001xxx01x) %8:i32 = var (00000000000000000000100001xxx00x) %9:i32 = var (0000000000000000000000000xxx01x1) %10:i32 = var (0000000000000000000000000xxx0xx1) %11:i32 = var (0000000000000000000000000xxx00x1) %12:i32 = var (0000000000000000000000000011xxx1) %13:i32 = phi %3, %4, 2152:i32, %5, %6, 2150:i32, 2148:i32, %7, %8, 2146:i32, 70:i32, %9, %10, 68:i32, 66:i32, %11, %12, 64:i32 %14:i32 = phi %0, %2, %13 infer %14 known from Souper: 0000000000000000xxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 7 %1:i8 = var (0000000x) %2:i8 = var (0000000x) %3:i8 = and %1, %2 %4:i8 = phi %0, %3, %3, %3, 0:i8, 0:i8, %3, %3 infer %4 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i1 = var %2:i32 = zext %1 %3:i32 = var (0000000000000000000000000000000x) %4:i32 = xor 1:i32, %3 %5:i32 = phi %0, %2, %4, 1:i32 infer %5 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (00000000000000000000000101100xx0) %1:i32 = and 6:i32, %0 %2:i32 = shl 3:i32, %1 infer %2 known from Souper: 000000000000000000000000xxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i16 = var %1:i32 = zext %0 %2:i32 = addnw 65535:i32, %1 %3:i32 = and %2, %1 infer %3 known from Souper: 0000000000000000xxxxxxxxxxxxxxx0 known from compiler: 0000000000000000xxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 7 %1:i32 = var (0000000000000000000000000010xx01) %2:i32 = var (0000000000000000000000000010xx00) %3:i32 = var (00000000000000000000000000100x11) %4:i32 = var (00000000000000000000000000100x10) %5:i32 = phi %0, 33:i32, %1, %2, %3, %4, 32:i32, 32:i32 %6:i32 = and 39:i32, %5 infer %6 known from Souper: 00000000000000000000000000100xxx known from compiler: 00000000000000000000000000x00xxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (000000000000000000000000000xxxxx) %2:i32 = shl 4294967040:i32, %1 %3 = block 3 %4:i64 = var %5:i32 = trunc %4 %6:i32 = and %2, %5 infer %6 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxx00000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx1) %1:i64 = shl 1:i64, %0 %2:i64 = var %3:i64 = lshr %2, 1:i64 %4:i64 = and %1, %3 infer %4 known from Souper: 00x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0 known from compiler: 0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2 = block 5 %3:i8 = var (0000000x) %4:i8 = phi %1, %3, 0:i8 %5:i8 = phi %0, 1:i8, %4 infer %5 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 2 %2:i1 = var %3:i8 = zext %2 %4:i8 = phi %1, %3, 0:i8 %5:i8 = phi %0, %4, 0:i8, %3 infer %5 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i32 = var (000000000000000000000000000xxxxx) %2:i32 = and 7:i32, %1 %3:i32 = var (0000000000000000000000000000000x) %4:i32 = or %2, %3 %5:i32 = phi %0, %2, %2, %4 infer %5 known from Souper: 00000000000000000000000000000xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %1:i32 = trunc %0 %2:i1 = ult 80:i32, %1 %3:i32 = select %2, 0:i32, %1 infer %3 known from Souper: 0000000000000000000000000xxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i16 = var %1:i64 = zext %0 %2:i64 = lshr 4505798919061505:i64, %1 infer %2 known from Souper: 00000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %1:i32 = trunc %0 %2:i1 = var %3:i32 = select %2, 25:i32, 5:i32 %4:i32 = lshr %1, %3 infer %4 known from Souper: 00000xxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1 = block 2 %2:i32 = phi %1, 0:i32, 1:i32 %3:i32 = phi %0, 1:i32, 1:i32, 1:i32, %2 infer %3 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 9 %1 = block 3 %2:i8 = phi %1, 0:i8, 1:i8, 1:i8 %3 = block 3 %4:i8 = phi %3, %2, 1:i8, 1:i8 %5 = block 4 %6:i8 = phi %5, %2, %2, 1:i8, 1:i8 %7 = block 3 %8:i8 = phi %7, %2, 1:i8, 1:i8 %9 = block 3 %10:i8 = phi %9, %2, 1:i8, 1:i8 %11:i8 = phi %0, %2, %2, 0:i8, %2, %4, %6, %8, %10, %10 infer %11 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1 = block 3 %2:i8 = var (0000000x) %3:i8 = phi %1, %2, 0:i8, 0:i8 %4:i8 = var (0000000x) %5:i8 = and %3, %4 %6:i8 = phi %0, %5, %3, %3, %3 infer %6 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var %2:i32 = and 255:i32, %1 %3:i32 = var (00000000000000000000000x00000000) %4:i32 = or %2, %3 %5:i32 = phi %0, %2, %4 infer %5 known from Souper: 00000000000000000000000xxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i32 = var (0000000000000000000000000000000x) %3:i32 = phi %1, %2, 0:i32 %4 = block 2 %5:i32 = phi %4, %3, 0:i32 %6:i32 = phi %0, %3, %5 infer %6 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 1 %1:i32 = var (0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %2:i32 = lshr %1, 1:i32 %3:i32 = phi %0, %2 infer %3 known from Souper: 00xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1:i8 = var (0000000x) %2:i8 = xor 1:i8, %1 %3:i8 = phi %0, 0:i8, %2, 0:i8, 0:i8, 0:i8 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 7 %1 = block 17 %2:i64 = var (00000000000000000000000000000000000000000000000000000000000000xx) %3:i64 = phi %1, 0:i64, 2:i64, 2:i64, 2:i64, 2:i64, 0:i64, 0:i64, 0:i64, 0:i64, %2, 0:i64, 0:i64, 2:i64, 0:i64, 0:i64, 0:i64, 0:i64 %4 = block 2 %5:i64 = phi %4, %3, 2:i64 %6:i64 = phi %0, %3, %5, %5, %5, %5, %5, %5 infer %6 known from Souper: 00000000000000000000000000000000000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i1 = ne 0:i32, %0 %2:i32 = var (00000000000000000000000000000xxx) %3:i32 = var (0000000000000000000000000000000x) %4:i32 = addnw %2, %3 %5:i32 = addnw 2:i32, %4 %6:i32 = select %1, %5, %4 infer %6 known from Souper: 0000000000000000000000000000xxxx known from compiler: 000000000000000000000000000xxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (00xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %1:i32 = trunc %0 %2:i32 = udiv 1048575:i32, %1 infer %2 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 000000000000xxxxxxxxxxxxxxxxxxxx llvm is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i8 = var (00000xxx) %2:i32 = zext %1 %3:i32 = var (000000000000000000000000000000xx) %4:i32 = addnw 1:i32, %3 %5:i32 = phi %0, %2, %4 infer %5 known from Souper: 00000000000000000000000000000xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (0000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0) %1:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %2:i64 = addnw %0, %1 %3:i64 = var (000000000000000000000000000000000000000000000000000000000000xxxx) %4:i64 = and 4294967295:i64, %3 %5:i64 = udiv %2, %4 infer %5 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx llvm is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1:i32 = phi %0, 3:i32, 2:i32, 1:i32, 0:i32, 0:i32 %2:i32 = shl 4294967295:i32, %1 infer %2 known from Souper: 11111111111111111111111111111xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i1 = var %2:i8 = var (0000000x) %3:i8 = select %1, 1:i8, %2 %4:i8 = var %5:i8 = and 1:i8, %4 %6:i8 = phi %0, %3, %5 infer %6 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 3 %2:i8 = var (0000000x) %3:i8 = phi %1, 0:i8, %2, 0:i8 %4:i8 = phi %0, 0:i8, %3 infer %4 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i16 = var (00xxxxxxxxxxxxxx) %2:i16 = and 511:i16, %1 %3:i32 = var (00000000000000000000000xxxxxxxxx) %4:i16 = trunc %3 %5:i16 = phi %0, %2, %4 infer %5 known from Souper: 0000000xxxxxxxxx known from compiler: xxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i1 = var %2:i32 = var (00000000000000000000000000001xx0) %3:i32 = var (00000000000000000000000000000xx0) %4:i32 = select %1, %2, %3 %5:i1 = var %6:i32 = var (00000000000000000000000000001xx0) %7:i32 = var (00000000000000000000000000000xx0) %8:i32 = select %5, %6, %7 %9:i32 = phi %0, %4, %8 infer %9 known from Souper: 0000000000000000000000000000xxx0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxx000000000000) %1:i64 = bswap %0 infer %1 known from Souper: 00000000xxxx0000xxxxxxxxxxxxxxxx000000xx000000000000000000000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1 = block 1 %2:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %3:i64 = phi %1, %2 %4 = block 1 %5:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %6:i64 = phi %4, %5 %7:i64 = phi %0, 0:i64, 0:i64, %3, %6 infer %7 known from Souper: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i32 = var (000000000000000000000101111001xx) %2:i32 = var (0000000000000000000001011110xx00) %3:i32 = phi %0, %1, 1511:i32, %2 %4:i64 = zext %3 infer %4 known from Souper: 000000000000000000000000000000000000000000000000000001011110xxxx known from compiler: 00000000000000000000000000000000000000000000000000000x0xxxx0xxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i1 = var %2:i8 = zext %1 %3 = block 2 %4:i8 = var (0000000x) %5:i8 = phi %3, %2, %4 %6:i8 = phi %0, %2, %5 infer %6 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i8 = var %1:i32 = zext %0 %2:i32 = var (0000000000000000000000000000xxxx) %3:i32 = mulnw %1, %2 %4:i32 = addnw %3, %1 infer %4 known from Souper: 00000000000000000000xxxxxxxxxxxx known from compiler: 0000000000000000000xxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = add 4294967294:i32, %0 %2:i1 = slt 0:i32, %1 %3:i32 = select %2, %1, 0:i32 infer %3 known from Souper: 0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 4 %2:i8 = var (0000000x) %3:i8 = phi %1, 0:i8, %2, 0:i8, 0:i8 %4 = block 4 %5:i8 = phi %4, %3, 0:i8, 0:i8, 0:i8 %6:i8 = phi %0, %3, %5, %5 infer %6 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 3 %2:i8 = phi %1, 1:i8, 0:i8, 1:i8 %3:i8 = phi %0, 0:i8, %2 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (0000000000000000000000000000010x) %1:i64 = zext %0 %2:i64 = shlnuw 1:i64, %1 infer %2 known from Souper: 0000000000000000000000000000000000000000000000000000000000xx0000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1:i32 = var (0000000000000000000000000000xx0x) %2:i32 = shl 1:i32, %1 %3:i32 = addnsw 4294967295:i32, %2 infer %3 known from Souper: 0000000000000000000xxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 3 %2:i8 = var (0000000x) %3:i8 = phi %1, %2, %2, %2 %4 = block 3 %5:i8 = phi %4, %2, %2, %2 %6:i8 = phi %0, %3, %5 infer %6 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 6 %1 = block 3 %2:i8 = phi %1, 0:i8, 0:i8, 1:i8 %3 = block 3 %4:i8 = var (0000000x) %5:i8 = phi %3, 0:i8, 0:i8, %4 %6:i8 = phi %0, 0:i8, 0:i8, 0:i8, 0:i8, %2, %5 infer %6 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i1 = var %2:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %3:i64 = select %1, 0:i64, %2 %4:i64 = phi %0, %3, 0:i64 infer %4 known from Souper: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i8 = var (000xxxx1) %3:i8 = var (000xxxx0) %4:i8 = phi %1, %2, %3 %5 = block 2 %6:i8 = phi %5, %4, %3 %7:i8 = phi %0, %4, %6 infer %7 known from Souper: 000xxxxx known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i32 = var (0000000000000000000000000000000x) %2:i32 = subnsw 2977:i32, %1 %3:i32 = phi %0, %2, 2979:i32, 2979:i32 infer %3 known from Souper: 000000000000000000001011101000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (0000000000000000000000000000x0x1) %2:i32 = phi %0, 9:i32, %1 infer %2 known from Souper: 0000000000000000000000000000x0x1 known from compiler: 0000000000000000000000000000x0xx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i1 = var %2:i32 = var (00000000000000000000000010xxxxxx) %3:i32 = select %1, 159:i32, %2 %4:i32 = phi %0, 159:i32, %3 infer %4 known from Souper: 00000000000000000000000010xxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1:i64 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx000) %2:i64 = add 48:i64, %1 %3:i64 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx000) %4:i64 = add %2, %3 %5:i64 = add 56:i64, %1 %6:i64 = add 64:i64, %1 %7:i64 = phi %0, %4, %5, %6, %5, %2 infer %7 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1 = block 2 %2:i8 = var (0000000x) %3 = block 6 %4:i8 = var (0000000x) %5:i8 = phi %1, %2, %4 %6:i1 = var %7:i8 = select %6, %5, 0:i8 %8:i8 = phi %0, %5, 0:i8, 0:i8, %5, %7 infer %8 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 7 %1 = block 3 %2:i32 = phi %1, 1425:i32, 1421:i32, 1422:i32 %3:i32 = phi %0, 0:i32, 0:i32, 1422:i32, 1422:i32, 1423:i32, 1424:i32, %2 infer %3 known from Souper: 000000000000000000000x0xx00xxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i32 = var (0000000000000000000000000000000x) %3:i32 = phi %1, %2, 2:i32 %4:i32 = phi %0, %3, 2:i32 infer %4 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (00000000000000000000000x000x0101) %2:i32 = var (000000000000000000000000000x0001) %3:i32 = phi %0, %1, %2 %4:i32 = or 2:i32, %3 infer %4 known from Souper: 00000000000000000000000x000x0x11 known from compiler: 00000000000000000000000x000x0x1x souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 2 %2:i32 = phi %1, 0:i32, 2:i32 %3:i32 = phi %0, 0:i32, %2, 2:i32 infer %3 known from Souper: 000000000000000000000000000000x0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1 = block 2 %2:i32 = var (0000000000000000000000000000x0x1) %3:i32 = phi %1, 9:i32, %2 %4:i32 = phi %0, 9:i32, 9:i32, %3, 9:i32 infer %4 known from Souper: 0000000000000000000000000000x0x1 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i64 = sext %0 %2:i64 = lshr 3504693340414:i64, %1 infer %2 known from Souper: 0000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 3 %2:i32 = phi %1, 1:i32, 0:i32, 0:i32 %3 = block 2 %4:i32 = phi %3, %2, 1:i32 %5:i32 = phi %0, %2, %4 infer %5 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (00000000000000000000000000000000000000000000000000000000xxxxxxxx) %1:i64 = xor 255:i64, %0 %2:i24 = var (0000000000000000xxxxxxxx) %3:i64 = zext %2 %4:i64 = udiv %1, %3 infer %4 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 00000000000000000000000000000000000000000000000000000000xxxxxxxx llvm is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1 = block 2 %2:i32 = phi %1, 3:i32, 1:i32 %3:i32 = phi %0, 0:i32, 0:i32, 0:i32, 3:i32, %2 infer %3 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 1 %2:i32 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxx0000) %3:i32 = phi %1, %2 %4 = block 1 %5:i32 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxx0000) %6:i32 = phi %4, %5 %7:i32 = phi %0, %3, %6 infer %7 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxx0000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 16 %1:i32 = var (000xxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %2:i64 = zext %1 %3:i64 = phi %0, 0:i64, 0:i64, 0:i64, %2, 0:i64, 0:i64, 0:i64, 0:i64, 0:i64, 0:i64, 0:i64, 0:i64, 0:i64, 0:i64, 0:i64, 0:i64 infer %3 known from Souper: 00000000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 11 %1 = block 4 %2:i32 = phi %1, 0:i32, 2:i32, 2:i32, 2:i32 %3:i32 = phi %0, 0:i32, 0:i32, 1:i32, 1:i32, 2:i32, 0:i32, 0:i32, 0:i32, 1:i32, 1:i32, %2 infer %3 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 8 %1:i1 = var %2:i8 = zext %1 %3 = block 2 %4:i8 = phi %3, %2, 1:i8 %5:i8 = phi %0, %2, %2, %2, %2, %2, %2, 1:i8, %4 infer %5 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1 = block 15 %2:i8 = phi %1, 1:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 1:i8, 1:i8, 1:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8 %3:i8 = phi %0, %2, 1:i8, 1:i8, 1:i8 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0) %1:i64 = shl 1:i64, %0 %2:i64 = xor 9223372036854775807:i64, %1 infer %2 known from Souper: 0x1x1x1x1x1x1x1x1x1x1x1x1x1x1x1x1x1x1x1x1x1x1x1x1x1x1x1x1x1x1x1x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = var %2:i32 = sub %0, %1 %3:i1 = ult 15:i32, %2 %4:i32 = select %3, 15:i32, %2 infer %4 known from Souper: 0000000000000000000000000000xxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = var %2:i64 = sub %0, %1 %3 = block 3 %4:i32 = var %5:i64 = zext %4 %6:i1 = ult %2, %5 %7:i64 = select %6, %2, %5 infer %7 known from Souper: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1:i8 = var (0000000x) %2:i16 = zext %1 %3:i16 = phi %0, 1:i16, 0:i16, %2, 0:i16 infer %3 known from Souper: 000000000000000x known from compiler: 00000000xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1 = block 5 %2:i32 = phi %1, 2:i32, 1:i32, 1:i32, 1:i32, 0:i32 %3:i32 = phi %0, 0:i32, 0:i32, %2, 2:i32 infer %3 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = shl 1:i32, %0 %2:i32 = add 4294967295:i32, %1 %3:i32 = and %2, %1 infer %3 known from Souper: 00000000000000000000000000000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (0000000000000000000000000000xx00) %1:i32 = shl 4:i32, %0 infer %1 known from Souper: 00000000000000000x000x000x000x00 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (00000000000000000000000000xxx100) %1:i64 = zext %0 %2:i64 = shl 1:i64, %1 infer %2 known from Souper: 000x0000000x0000000x0000000x0000000x0000000x0000000x0000000x0000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1 = block 3 %2:i32 = phi %1, 0:i32, 1:i32, 0:i32 %3:i32 = phi %0, %2, 0:i32, 0:i32, 0:i32 infer %3 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i64 = var (000000000000000000000000000000000000000000000000xxxxxxxxxxxxxxxx) %2:i64 = shlnw %1, 3:i64 %3:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxx0000000000000000) %4:i64 = var (000000000000000000000000000000000000000000000000xxxxxxxxxxxxxxxx) %5:i64 = or %3, %4 %6:i64 = phi %0, %2, %5, 0:i64 infer %6 known from Souper: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i1 = var %2:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %3:i64 = select %1, 4:i64, %2 %4:i64 = phi %0, 4:i64, %3 infer %4 known from Souper: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (0000000000000000000000000000000x) %1:i32 = var (0000000000000000000000000000000x) %2:i32 = addnw %0, %1 %3:i32 = var (0000000000000000xxxxxxxxxxxxxxxx) %4:i32 = and 1:i32, %3 %5:i32 = addnw %2, %4 infer %5 known from Souper: 000000000000000000000000000000xx known from compiler: 00000000000000000000000000000xxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 19 %1 = block 45 %2:i32 = phi %1, 2303:i32, 2327:i32, 2328:i32, 572:i32, 575:i32, 563:i32, 566:i32, 554:i32, 557:i32, 2835:i32, 2838:i32, 2826:i32, 2829:i32, 2817:i32, 2820:i32, 100:i32, 103:i32, 88:i32, 91:i32, 76:i32, 79:i32, 13886:i32, 13889:i32, 13877:i32, 13880:i32, 13868:i32, 13871:i32, 1915:i32, 1918:i32, 1905:i32, 1909:i32, 1896:i32, 1899:i32, 196:i32, 199:i32, 187:i32, 190:i32, 178:i32, 181:i32, 937:i32, 940:i32, 929:i32, 932:i32, 921:i32, 924:i32 %3:i32 = phi %0, %2, 1167:i32, 1163:i32, 1160:i32, 1157:i32, 1154:i32, 1151:i32, 1148:i32, 1145:i32, 1136:i32, 1133:i32, 1130:i32, 1127:i32, 1124:i32, 1119:i32, 1116:i32, 1113:i32, 1110:i32, 1110:i32 infer %3 known from Souper: 000000000000000000xxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 8 %1 = block 2 %2:i8 = phi %1, 0:i8, 1:i8 %3:i8 = phi %0, %2, %2, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 7 %1 = block 7 %2:i8 = phi %1, 1:i8, 1:i8, 1:i8, 0:i8, 1:i8, 1:i8, 1:i8 %3:i8 = phi %0, 1:i8, %2, 1:i8, 1:i8, 1:i8, 1:i8, 1:i8 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 3 %2:i8 = phi %1, 0:i8, 1:i8, 1:i8 %3:i8 = phi %0, %2, 1:i8 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx11) %1:i32 = var %2:i64 = zext %1 %3:i64 = addnsw %0, %2 %4:i64 = urem %3, %2 infer %4 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx llvm is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1:i1 = var %2:i8 = zext %1 %3:i8 = var (0000000x) %4:i8 = xor 1:i8, %3 %5:i8 = phi %0, %2, %2, %4, %4 infer %5 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1 = block 4 %2:i32 = var (0000000000000000000000000000x100) %3:i32 = phi %1, 6:i32, 0:i32, 12:i32, %2 %4:i32 = phi %0, 0:i32, 0:i32, %3, 4:i32, 4:i32 infer %4 known from Souper: 0000000000000000000000000000xxx0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i16 = trunc %0 %2:i16 = lshr 543:i16, %1 infer %2 known from Souper: 000000xxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %1:i64 = mulnw 12:i64, %0 %2:i64 = addnw 16:i64, %1 infer %2 known from Souper: 0000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00 known from compiler: 000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00 souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1:i1 = var %2:i32 = zext %1 %3:i1 = var %4:i32 = zext %3 %5 = block 2 %6 = block 2 %7:i32 = var (000000000000000000000000000000x0) %8:i32 = phi %5, 0:i32, %7 %9:i32 = phi %0, %2, %4, %8, %8 infer %9 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i1 = var %2:i8 = zext %1 %3 = block 3 %4:i8 = var (0000000x) %5:i8 = phi %3, %2, %4, %2 %6:i8 = phi %0, %2, %5 infer %6 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2 = block 4 %3:i32 = var (000000000000000000000000000000xx) %4:i32 = phi %1, %3, 3:i32 %5 = block 2 %6 = block 3 %7:i32 = var (0000000000000000000000000000001x) %8:i32 = phi %5, 3:i32, %7 %9:i32 = phi %0, %4, %8 infer %9 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = lshr 4336:i64, %0 %2:i32 = trunc %1 infer %2 known from Souper: 0000000000000000000xxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i1 = var %1:i16 = select %0, 64:i16, 40:i16 %2:i16 = bswap %1 infer %2 known from Souper: 0xx0x00000000000 known from compiler: xxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 3 %2:i8 = phi %1, 1:i8, 1:i8, 0:i8 %3:i8 = phi %0, 0:i8, 0:i8, %2 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 3 %2 = block 7 %3:i8 = var (0000000x) %4:i8 = phi %1, %3, 1:i8, 1:i8 %5:i8 = phi %0, %4, 1:i8, 1:i8 infer %5 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (0000000000000000000000000000xx1x) %1:i32 = shl 2:i32, %0 infer %1 known from Souper: 000000000000000xx00xx00xx00xx000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1:i32 = var (000000000100xxxx0000000001001000) %2:i32 = phi %0, 4390984:i32, 4259912:i32, %1, 4194376:i32 %3:i32 = var %4:i32 = and 4261412864:i32, %3 %5:i32 = or %2, %4 infer %5 known from Souper: xxxxxxx00100xxxx0000000001001000 known from compiler: xxxxxxx00x00xxxx000000000x00x000 souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 8 %1:i1 = var %2:i32 = select %1, 38:i32, 34:i32 %3:i32 = select %1, 40:i32, 36:i32 %4:i1 = var %5:i32 = select %4, %2, 42:i32 %6:i1 = var %7:i32 = select %6, %3, 42:i32 %8:i32 = phi %0, %2, %3, %5, %7, 42:i32, 32:i32, 32:i32, 42:i32 infer %8 known from Souper: 0000000000000000000000000010xxx0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i16 = var (000000000x000000) %2:i16 = xor 64:i16, %1 %3:i16 = phi %0, 0:i16, %2 infer %3 known from Souper: 000000000x000000 known from compiler: xxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 1 %2:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %3:i64 = phi %1, %2 %4 = block 2 %5:i64 = var (00000000000000000000000000000000000000000000000000000000000000xx) %6 = block 1 %7:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %8:i64 = phi %4, %5, %7 %9:i64 = phi %0, %3, %8 infer %9 known from Souper: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx11) %1:i64 = var (000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %2:i64 = addnsw %0, %1 %3 = block 4 %4:i64 = phi %3, 16:i64, 4:i64, 4:i64, 4:i64 %5:i64 = urem %2, %4 infer %5 known from Souper: 000000000000000000000000000000000000000000000000000000000000xxxx known from compiler: 00000000000000000000000000000000000000000000000000000000000xxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 5 %2:i64 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00000000000000000000000000000000) %3:i64 = phi %1, 0:i64, %2, 0:i64, 0:i64, 0:i64 %4:i64 = phi %0, 0:i64, %3, 0:i64 infer %4 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00000000000000000000000000000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (00000000000000000000000000xxx010) %1:i64 = zext %0 %2:i64 = shl 1:i64, %1 infer %2 known from Souper: 00000x0000000x0000000x0000000x0000000x0000000x0000000x0000000x00 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = ashr %0, 63:i64 %2:i64 = xor %0, %1 infer %2 known from Souper: 0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 1 %2:i32 = var (000xxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %3:i32 = phi %1, %2 %4:i32 = phi %0, %3, 1:i32 infer %4 known from Souper: 000xxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx000) %1:i64 = add 18446744073709551560:i64, %0 %2:i64 = urem %1, 56:i64 %3:i64 = sub %1, %2 infer %3 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 6 %1 = block 4 %2 = block 1 %3:i8 = var (0000000x) %4 = block 1 %5:i8 = var (0000000x) %6:i8 = phi %1, %3, %5, %5, %5 %7 = block 2 %8 = block 1 %9:i8 = var (0000000x) %10 = block 1 %11:i8 = var (0000000x) %12:i8 = phi %7, %9, %11 %13 = block 1 %14:i8 = var (0000000x) %15:i8 = phi %13, %14 %16 = block 1 %17:i8 = phi %16, %14 %18 = block 1 %19:i8 = phi %18, %14 %20 = block 1 %21:i8 = phi %20, %14 %22:i8 = phi %0, %6, %12, %15, %17, %19, %21 infer %22 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2 = block 2 %3:i32 = var (0000000000000000000000000000000x) %4:i1 = var %5:i32 = zext %4 %6:i32 = phi %1, %3, %5 %7:i32 = phi %0, %6, %5 infer %7 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (000000000000000000000000000xxxx0) %2:i32 = var (000000000000000000000000000xxxx0) %3:i32 = phi %0, %1, %2 %4:i32 = lshr 255:i32, %3 infer %4 known from Souper: 000000000000000000000000xxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1:i32 = var (0000000000000000000000000x0x0xx0) %2:i32 = addnw 2722:i32, %1 %3:i32 = phi %0, 0:i32, %2, 2725:i32, 2785:i32 infer %3 known from Souper: 00000000000000000000x0x0xxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i1 = var %2:i32 = var (xxxxxxxxxxxxxxxxxx00000000000000) %3:i32 = select %1, %2, 0:i32 %4:i32 = phi %0, 0:i32, %3 infer %4 known from Souper: xxxxxxxxxxxxxxxxxx00000000000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 7 %1:i1 = var %2:i32 = select %1, 1525:i32, 1261:i32 %3 = block 12 %4:i32 = var (00000000000000000000010x1111xxx1) %5:i32 = var (00000000000000000000010x11111x01) %6:i32 = phi %3, 1527:i32, %4, 1531:i32, %5, 1283:i32, 1287:i32, 1289:i32, 1285:i32, 1275:i32, 1279:i32, 1281:i32, 1277:i32 %7:i32 = phi %0, 1523:i32, 1265:i32, 1269:i32, 1267:i32, 1263:i32, %2, %6 infer %7 known from Souper: 00000000000000000000010xxxxxxxx1 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = var %2:i32 = sub %0, %1 %3:i1 = slt %2, 1:i32 %4:i32 = select %3, 1:i32, %2 infer %4 known from Souper: 0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i1 = var %2:i32 = select %1, 3:i32, 2:i32 %3 = block 3 %4:i32 = var (0000000000000000000000000000001x) %5:i32 = phi %3, %2, %4, 2:i32 %6:i32 = phi %0, %2, %5, %2 infer %6 known from Souper: 0000000000000000000000000000001x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (0000000000000000000000000000000x) %2:i32 = var (0000000000000000000000000000000x) %3:i32 = or %1, %2 %4:i32 = phi %0, %3, 0:i32 infer %4 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 8 %1:i1 = var %2:i8 = zext %1 %3:i1 = var %4:i8 = select %3, %2, 0:i8 %5:i1 = var %6:i8 = select %5, %4, 0:i8 %7:i1 = var %8:i8 = select %7, %6, 0:i8 %9:i1 = var %10:i8 = select %9, %8, 0:i8 %11:i1 = var %12:i8 = select %11, %10, 0:i8 %13:i1 = var %14:i8 = select %13, %12, 0:i8 %15:i1 = var %16:i8 = select %15, %14, 0:i8 %17:i8 = phi %0, %2, %4, %6, %8, %10, %12, %14, %16 infer %17 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %1:i64 = udiv 16:i64, %0 %2:i64 = shlnw %1, 3:i64 infer %2 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx000 known from compiler: 00000000000000000000000000000000000000000000000000000000xxxxx000 llvm is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = var %2:i64 = sub %0, %1 %3:i1 = ult %2, 6:i64 %4:i64 = select %3, %2, 6:i64 infer %4 known from Souper: 0000000000000000000000000000000000000000000000000000000000000xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1 = block 2 %2:i32 = phi %1, 2:i32, 0:i32 %3:i32 = phi %0, 0:i32, 1:i32, %2, %2 infer %3 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = add 4294967292:i32, %0 %2:i32 = lshr 294915:i32, %1 infer %2 known from Souper: 0000000000000xxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = and 65535:i64, %0 %2:i1 = var %3:i64 = select %2, 0:i64, 8:i64 %4:i64 = lshr %1, %3 infer %4 known from Souper: 000000000000000000000000000000000000000000000000xxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i64 = sext %0 %2:i64 = lshr 17592186044414:i64, %1 infer %2 known from Souper: 00000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i32 = trunc %0 %2:i1 = ult %1, 11:i32 %3:i32 = select %2, %1, 11:i32 infer %3 known from Souper: 0000000000000000000000000000xxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 4 %2:i32 = phi %1, 2:i32, 2:i32, 2:i32, 0:i32 %3:i32 = phi %0, 2:i32, 2:i32, %2 infer %3 known from Souper: 000000000000000000000000000000x0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i32 = var (0000000000000000000000000000000x) %3:i32 = phi %1, %2, 1:i32 %4:i32 = phi %0, %3, 1:i32 infer %4 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1 = block 2 %2:i32 = var (000xxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %3:i32 = phi %1, %2, 0:i32 %4:i32 = phi %0, 0:i32, 0:i32, %3, %3 infer %4 known from Souper: 000xxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i16 = var (xxxx000000000000) %2:i16 = var (00000000000xx000) %3:i16 = or %1, %2 %4:i16 = or 2:i16, %3 %5:i16 = phi %0, %4, %3 infer %5 known from Souper: xxxx0000000xx0x0 known from compiler: xxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i64 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00) %2:i32 = trunc %1 %3:i32 = phi %0, %2, 0:i32, 0:i32 infer %3 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1 = block 2 %2:i32 = phi %1, 0:i32, 1:i32 %3:i32 = phi %0, %2, 1:i32, 1:i32, 1:i32, 0:i32 infer %3 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1 = block 3 %2:i32 = phi %1, 1:i32, 2:i32, 2:i32 %3:i32 = phi %0, %2, %2, 1:i32, 2:i32, 2:i32 infer %3 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1 = block 5 %2:i8 = var (0000000x) %3:i8 = phi %1, 0:i8, 0:i8, 0:i8, 0:i8, %2 %4:i8 = var (0000000x) %5:i8 = xor 1:i8, %4 %6:i8 = phi %0, %3, %3, %3, %5, %3 infer %6 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i64 = sext %0 %2:i64 = lshr 1988154155459:i64, %1 infer %2 known from Souper: 00000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 28 %1:i32 = phi %0, 1:i32, 4:i32, 16:i32, 8:i32, 2:i32, 1:i32, 16:i32, 8:i32, 4:i32, 2:i32, 1:i32, 4:i32, 8:i32, 4:i32, 2:i32, 2:i32, 1:i32, 1:i32, 2:i32, 1:i32, 16:i32, 8:i32, 4:i32, 2:i32, 1:i32, 4:i32, 8:i32, 8:i32 %2:i32 = addnsw 4294967295:i32, %1 infer %2 known from Souper: 0000000000000000000000000000xxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1:i64 = var (0000000000000000000000000000000000000000000000000000000001001x01) %2:i64 = var (0000000000000000000000000000000000000000000000000000000001001x01) %3:i64 = phi %0, %1, %2, 73:i64, 77:i64 %4:i64 = and 13:i64, %3 infer %4 known from Souper: 0000000000000000000000000000000000000000000000000000000000001x01 known from compiler: 000000000000000000000000000000000000000000000000000000000000xx0x souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1 = block 4 %2:i8 = var (0000000x) %3 = block 3 %4:i8 = var (0000000x) %5:i8 = phi %1, %2, %4, %4, %4 %6:i8 = var (0000000x) %7:i8 = and %5, %6 %8:i8 = phi %0, %7, %5, %5, %5 infer %8 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 14 %1 = block 11 %2:i32 = phi %1, 8:i32, 12:i32, 12:i32, 12:i32, 12:i32, 12:i32, 12:i32, 12:i32, 12:i32, 12:i32, 12:i32 %3:i32 = phi %0, 12:i32, 12:i32, 12:i32, 12:i32, 12:i32, 12:i32, 12:i32, 12:i32, 12:i32, 8:i32, 8:i32, 10:i32, %2, %2 infer %3 known from Souper: 00000000000000000000000000001xx0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %1:i32 = trunc %0 %2:i1 = slt 1:i32, %1 %3:i32 = select %2, %1, 1:i32 infer %3 known from Souper: 0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i64 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0) %3:i64 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0) %4:i64 = phi %1, %2, %3 %5 = block 1 %6:i64 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0) %7:i64 = phi %5, %6 %8:i64 = phi %0, %4, %7 infer %8 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 6 %1:i32 = var (000000000000000000000000000000xx) %2:i32 = var (0000000000000000000000000000xxxx) %3:i32 = addnw %1, %2 %4:i32 = addnw 1:i32, %3 infer %4 known from Souper: 000000000000000000000000000xxxxx known from compiler: 00000000000000000000000000xxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (00000000000000000000000000000000000000000000000000000000000xxxxx) %1:i64 = var (00000000000000000000000000000000000000000000000000000000000000xx) %2:i64 = addnw %0, %1 %3:i32 = var (0000000000000000000000000000xxxx) %4:i64 = zext %3 %5:i64 = addnw %2, %4 infer %5 known from Souper: 0000000000000000000000000000000000000000000000000000000000xxxxxx known from compiler: 000000000000000000000000000000000000000000000000000000000xxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 3 %2:i8 = phi %1, 0:i8, 0:i8, 1:i8 %3:i8 = phi %0, 0:i8, 0:i8, %2 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = sub 18446744073709551614:i64, %0 %2:i64 = xor 18446744073709551615:i64, %0 %3:i64 = or %1, %2 infer %3 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx1 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1:i32 = var (000000000000000000000110xxxx1xx1) %2:i32 = var (000000000000000000000110xxx1x0x0) %3:i32 = phi %0, %1, %2, %2, %2, %2 %4:i64 = zext %3 infer %4 known from Souper: 00000000000000000000000000000000000000000000000000000110xxxxxxxx known from compiler: 00000000000000000000000000000000000000000000000000000xx0xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (000000000000000000000000000000xx) %1:i32 = addnw 1:i32, %0 %2:i24 = var (00000000000000000000000x) %3:i32 = zext %2 %4:i32 = addnw %1, %3 infer %4 known from Souper: 00000000000000000000000000000xxx known from compiler: 0000000000000000000000000000xxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1:i1 = var %2:i8 = zext %1 %3:i1 = var %4:i8 = select %3, %2, 0:i8 %5:i8 = phi %0, %2, %2, %2, %4 infer %5 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 2 %2:i32 = var (0000000000000000000000000000xx00) %3:i32 = var %4:i32 = mul %2, %3 %5:i32 = phi %0, 4:i32, 4:i32, %4 infer %5 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1:i64 = var %2:i64 = lshr %1, 58:i64 %3:i64 = shl 18446744073709551615:i64, %2 infer %3 known from Souper: 1xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 6 %1 = block 8 %2:i32 = var (000000000000000000000000000000x0) %3:i32 = phi %1, 1:i32, 1:i32, 1:i32, 1:i32, 2:i32, %2, 0:i32, 1:i32 %4:i1 = var %5:i32 = select %4, 2:i32, 0:i32 %6:i32 = phi %0, %3, 0:i32, 2:i32, %5, 2:i32, 2:i32 infer %6 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 8 %1 = block 4 %2:i8 = phi %1, 0:i8, 1:i8, 1:i8, 1:i8 %3:i8 = phi %0, %2, 1:i8, 1:i8, 1:i8, 1:i8, 1:i8, 1:i8, 1:i8 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i32 = trunc %0 %2 = block 2 %3 = block 2 %4:i32 = var (000000000000000000000000000xx000) %5 = block 5 %6:i32 = var (00000000000000000000000000000xxx) %7:i32 = phi %2, %4, %6 %8:i32 = urem %1, %7 infer %8 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 000000000000000000000000000xxxxx llvm is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var %2:i32 = var %3:i32 = phi %0, %1, %2 %4:i1 = slt %3, 8:i32 %5:i32 = select %4, 8:i32, %3 infer %5 known from Souper: 0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i1 = var %2:i32 = var (xxxxxxxxxxxxxxxxxxxxxxxxx0000000) %3:i32 = select %1, %2, 0:i32 %4:i32 = phi %0, 0:i32, %3 infer %4 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxx0000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i16 = var (00000000000000xx) %2:i32 = zext %1 %3:i16 = var (00000000000000xx) %4:i32 = zext %3 %5:i32 = phi %0, 1:i32, %2, %4 infer %5 known from Souper: 000000000000000000000000000000xx known from compiler: 0000000000000000xxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = and 15:i64, %0 %2:i1 = var %3:i64 = select %2, 55:i64, 87:i64 %4:i64 = addnw %1, %3 infer %4 known from Souper: 000000000000000000000000000000000000000000000000000000000xxxxxxx known from compiler: 00000000000000000000000000000000000000000000000000000000xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i8 = var %1:i64 = zext %0 %2:i64 = lshr 2341871814822592513:i64, %1 infer %2 known from Souper: 00xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i8 = trunc %0 %2:i8 = lshr 24:i8, %1 infer %2 known from Souper: 000xxxxx known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 3 %2:i32 = phi %1, 2:i32, 2:i32, 1:i32 %3:i32 = phi %0, 2:i32, %2, %2 infer %3 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (000000000000000000000000000xxxxx) %2:i32 = phi %0, %1, 32:i32 %3:i32 = shl 14:i32, %2 infer %3 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1:i1 = var %2:i8 = zext %1 %3:i1 = var %4:i8 = zext %3 %5:i8 = var (0000000x) %6:i8 = var (0000000x) %7:i8 = or %5, %6 %8:i1 = var %9:i8 = zext %8 %10:i8 = phi %0, %2, %4, %7, %9, %9 infer %10 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 4 %2:i1 = var %3:i8 = zext %2 %4:i1 = var %5:i8 = select %4, %3, 1:i8 %6:i8 = phi %0, %3, %5 infer %6 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 6 %2:i8 = var (0000000x) %3:i8 = phi %1, 1:i8, 1:i8, 1:i8, 1:i8, 1:i8, %2 %4:i1 = var %5:i8 = select %4, 0:i8, %3 %6:i8 = phi %0, %3, %5 infer %6 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 1 %2:i32 = var %3:i32 = phi %0, 0:i32, %2 %4:i32 = add 4294967295:i32, %3 %5:i32 = and %3, %4 infer %5 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 4 %2:i64 = phi %1, 4294967296:i64, 12884901888:i64, 4294967296:i64, 12884901888:i64 %3:i64 = phi %0, %2, 17179869184:i64 infer %3 known from Souper: 00000000000000000000000000000xxx00000000000000000000000000000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %1:i64 = or 4503599627370496:i64, %0 %2:i64 = var (00000000000000000000000000000000000000000000000000000xxxxxxxxxxx) %3:i64 = subnsw 1075:i64, %2 %4:i64 = lshr %1, %3 infer %4 known from Souper: 00000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (000000000000000000000000xxxxx000) %1:i32 = lshr 65537:i32, %0 %2:i8 = trunc %1 infer %2 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1 = block 2 %2:i32 = var %3:i32 = var %4:i32 = phi %0, %2, %3, %3, %3 %5:i32 = add 4294967295:i32, %4 %6:i32 = and %4, %5 infer %6 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = add 4294967295:i32, %0 %2:i32 = lshr 4137023:i32, %1 infer %2 known from Souper: 0000000000xxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var %2:i32 = and 3:i32, %1 %3:i8 = var (00000xxx) %4:i32 = zext %3 %5:i32 = phi %0, %2, %4 infer %5 known from Souper: 00000000000000000000000000000xxx known from compiler: 000000000000000000000000xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 6 %1 = block 2 %2:i32 = phi %1, 0:i32, 3:i32 %3:i32 = phi %0, 0:i32, 0:i32, 0:i32, 0:i32, 3:i32, %2 infer %3 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1:i64 = var %2:i64 = lshr %1, 58:i64 %3:i64 = shl 18446744073709551615:i64, %2 infer %3 known from Souper: 1xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 7 %1:i32 = var (0000000000000000000000000000000x) %2:i32 = xor 1:i32, %1 %3:i32 = var (0000000000000000000000000000000x) %4:i32 = shlnw %3, 1:i32 %5:i32 = phi %0, 0:i32, %2, 2:i32, 2:i32, %4, 2:i32, 0:i32 infer %5 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (0000000000000000000000000000000x) %1:i32 = var (0000000000000000000000000000000x) %2:i32 = addnw %0, %1 %3 = block 2 %4:i1 = var %5:i32 = zext %4 %6:i32 = addnw %2, %5 infer %6 known from Souper: 000000000000000000000000000000xx known from compiler: 00000000000000000000000000000xxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 3 %2 = block 2 %3:i32 = var (0000000000000000000000000000000x) %4:i32 = phi %1, 0:i32, %3, 1:i32 %5:i32 = phi %0, %4, 1:i32, 1:i32 infer %5 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2 = block 2 %3:i8 = var (0000000x) %4:i8 = phi %1, %3, 1:i8 %5:i8 = phi %0, 1:i8, %4 infer %5 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1 = block 8 %2:i32 = phi %1, 6:i32, 6:i32, 6:i32, 6:i32, 6:i32, 6:i32, 0:i32, 0:i32 %3:i32 = phi %0, 10:i32, 2:i32, %2, %2 infer %3 known from Souper: 0000000000000000000000000000xxx0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1 = block 5 %2:i8 = phi %1, 1:i8, 1:i8, 0:i8, 0:i8, 0:i8 %3:i8 = phi %0, %2, 1:i8, 1:i8, 1:i8 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i8 = phi %1, 0:i8, 1:i8 %3 = block 2 %4:i8 = phi %3, 0:i8, 1:i8 %5:i8 = phi %0, %2, %4 infer %5 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1:i1 = var %2:i32 = select %1, 221:i32, 224:i32 %3 = block 10 %4:i32 = var (0000000000000000000000000000000x) %5:i32 = addnw 221:i32, %4 %6:i32 = phi %0, %2, %5, 223:i32, 223:i32, 223:i32 infer %6 known from Souper: 00000000000000000000000011xxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 2 %2:i32 = var (0000000000000000000000000000000x) %3:i32 = phi %1, 2:i32, %2 %4:i32 = phi %0, 1:i32, 2:i32, %3 infer %4 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (000000000000000000000000000000xx) %1:i32 = addnw 1:i32, %0 %2:i1 = ult %1, 5:i32 infer %2 known from Souper: 1 known from compiler: x souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i1 = var %2:i32 = var (00000000000000000000000000000x0x) %3:i32 = select %1, %2, 0:i32 %4:i32 = phi %0, %3, 0:i32 infer %4 known from Souper: 00000000000000000000000000000x0x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (000000000000000000000000000000xx) %1:i32 = shl 1:i32, %0 %2:i8 = trunc %1 infer %2 known from Souper: 0000xxxx known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (00000000000000000000000000000000000000000000000000000000000xxxxx) %1:i64 = subnsw 32:i64, %0 %2:i1 = var %3:i64 = sext %2 %4:i64 = addnsw %1, %3 infer %4 known from Souper: 0000000000000000000000000000000000000000000000000000000000xxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (000000xxxxxxxxxxxxxxxxxxxxxxxxxx) %1:i32 = and 3:i32, %0 %2:i32 = shl 2:i32, %1 infer %2 known from Souper: 000000000000000000000000000xxxx0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1 = block 5 %2:i32 = phi %1, 0:i32, 1:i32, 1:i32, 1:i32, 1:i32 %3:i32 = phi %0, 1:i32, 0:i32, 1:i32, 0:i32, %2 infer %3 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1 = block 2 %2:i32 = phi %1, 4:i32, 3:i32 %3 = block 2 %4:i32 = phi %3, %2, 3:i32 %5:i1 = var %6:i32 = select %5, 4:i32, 3:i32 %7:i32 = phi %0, %2, %4, %4, %6 infer %7 known from Souper: 00000000000000000000000000000xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i8 = var (0000000x) %2:i8 = xor 1:i8, %1 %3 = block 7 %4:i8 = var (0000000x) %5:i8 = var (0000000x) %6:i8 = var (0000000x) %7:i8 = var (0000000x) %8:i8 = var (0000000x) %9:i8 = phi %3, %4, %5, %6, %7, %7, %8, %8 %10:i8 = phi %0, %2, %9 infer %10 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i32 = phi %1, 0:i32, 2:i32 %3:i32 = phi %0, %2, 1:i32 infer %3 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i1 = eq 0:i32, %0 %2:i32 = var %3:i32 = lshr 72:i32, %2 %4:i32 = select %1, 0:i32, %3 infer %4 known from Souper: 0000000000000000000000000xxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i24 = var (00000000000000000000000x) %2:i8 = trunc %1 %3:i1 = var %4:i8 = zext %3 %5:i8 = phi %0, %2, %4, %2 infer %5 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1:i32 = var %2:i64 = zext %1 %3:i64 = lshr 1639:i64, %2 infer %3 known from Souper: 00000000000000000000000000000000000000000000000000000xxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (0000000000000000000000000000xxxx) %2:i32 = shl 1:i32, %1 %3:i32 = phi %0, %2, 0:i32 infer %3 known from Souper: 0000000000000000xxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 5 %2:i8 = phi %1, 0:i8, 0:i8, 1:i8, 0:i8, 0:i8 %3:i8 = phi %0, 0:i8, %2, 0:i8 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %1:i64 = addnw 1:i64, %0 %2:i32 = var (000xxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %3:i64 = zext %2 %4:i64 = addnw %1, %3 infer %4 known from Souper: 0000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = sub 32:i32, %0 %2:i32 = lshr 65:i32, %1 infer %2 known from Souper: 0000000000000000000000000xxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i16 = trunc %0 %2:i16 = lshr 4819:i16, %1 infer %2 known from Souper: 000xxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 3 %2 = block 2 %3:i8 = var (0xx00x0x) %4:i8 = phi %1, 64:i8, 37:i8, %3 %5:i8 = phi %0, %4, 37:i8 infer %5 known from Souper: 0xx00x0x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 2 %2:i32 = var (0000000000000000000xxxxxxxxxxxxx) %3:i32 = var (000xxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %4:i32 = and 8191:i32, %3 %5:i32 = phi %1, %2, %4 %6:i32 = phi %0, %5, %4, %5 infer %6 known from Souper: 0000000000000000000xxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (0000000000000000000000000000xx00) %1:i32 = shl 15:i32, %0 infer %1 known from Souper: 0000000000000000xxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (0000000000000000000000000000xx00) %1:i32 = shl 2:i32, %0 infer %1 known from Souper: 000000000000000000x000x000x000x0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 11 %2:i8 = phi %1, 0:i8, 1:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8 %3:i8 = phi %0, 1:i8, %2 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (0000000000000000xxxxxxxxxxxxxxxx) %2:i32 = addnsw 4294966821:i32, %1 %3:i32 = lshr 1310725:i32, %2 infer %3 known from Souper: 00000000000xxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i32 = var %2:i32 = var %3:i32 = or %1, %2 %4:i32 = add 1:i32, %3 %5:i32 = and %4, %3 infer %5 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = and 1073741823:i32, %0 %2:i32 = var %3:i1 = slt %1, %2 %4:i32 = select %3, %2, %1 infer %4 known from Souper: 0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 7 %1 = block 3 %2 = block 3 %3:i8 = var (0000000x) %4:i8 = var %5:i8 = lshr %4, 7:i8 %6:i8 = phi %1, %3, %5, %5 %7:i8 = var %8:i8 = lshr %7, 7:i8 %9:i8 = phi %0, %6, %6, %5, %6, %8, %6, %6 infer %9 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1 = block 2 %2:i64 = var (00000000000000000000000000000000000000000000000000000000000000xx) %3 = block 1 %4:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %5:i64 = phi %1, %2, %4 %6:i1 = ult %0, %5 %7:i64 = select %6, %0, %5 infer %7 known from Souper: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1 = block 3 %2:i32 = phi %1, 3:i32, 1:i32, 1:i32 %3:i32 = phi %0, 0:i32, %2, %2, 0:i32, 0:i32 infer %3 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %2:i64 = shlnw %1, 4:i64 %3:i64 = phi %0, %2, 256:i64 infer %3 known from Souper: 0000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0000 souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i1 = ult 1020:i32, %0 %2:i32 = select %1, 1020:i32, %0 infer %2 known from Souper: 0000000000000000000000xxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 49 %1 = block 2 %2:i64 = phi %1, 41:i64, 0:i64 %3:i64 = phi %0, 117:i64, 116:i64, 115:i64, 114:i64, 113:i64, 112:i64, 111:i64, 110:i64, 39:i64, 43:i64, 36:i64, 505:i64, 37:i64, 40:i64, 38:i64, 35:i64, 237:i64, 236:i64, 235:i64, 234:i64, 233:i64, 232:i64, 231:i64, 230:i64, 23:i64, 29:i64, 20:i64, 504:i64, 21:i64, 24:i64, 22:i64, 19:i64, 245:i64, 244:i64, 243:i64, 242:i64, 241:i64, 240:i64, 239:i64, 238:i64, 8:i64, 6:i64, 14:i64, 45:i64, 6:i64, 6:i64, 8:i64, 8:i64, %2 infer %3 known from Souper: 0000000000000000000000000000000000000000000000000000000xxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 12 %1 = block 5 %2:i8 = phi %1, 0:i8, 0:i8, 1:i8, 0:i8, 0:i8 %3 = block 5 %4:i8 = phi %3, 0:i8, 0:i8, 1:i8, 0:i8, 0:i8 %5 = block 3 %6:i8 = phi %5, 0:i8, 1:i8, 0:i8 %7 = block 3 %8:i8 = phi %7, 0:i8, 1:i8, 0:i8 %9:i8 = phi %0, %2, %2, %4, %4, %6, %6, %6, %6, %8, %8, %8, %8 infer %9 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 14 %1:i16 = var %2:i32 = zext %1 %3 = block 11 %4 = block 11 %5:i32 = var (0000000000000000xxxxxxxxxxxxxxxx) %6:i32 = phi %3, %5, 0:i32, 2510:i32, 2651:i32, 2637:i32, 2658:i32, 2427:i32, 2435:i32, 2404:i32, 2419:i32, 2443:i32 %7:i32 = phi %0, %2, %2, %2, %2, %2, %2, %2, %2, %2, %2, %2, %2, %2, %6 infer %7 known from Souper: 0000000000000000xxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 7 %1:i32 = phi %0, 16:i32, 8:i32, 4:i32, 2:i32, 1:i32, 1:i32, 1:i32 %2:i32 = addnw 31:i32, %1 %3:i32 = and %1, %2 infer %3 known from Souper: 00000000000000000000000000000000 known from compiler: 000000000000000000000000000xxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 1 %1:i64 = var %2:i64 = var %3:i64 = add %1, %2 %4:i32 = var %5:i64 = zext %4 %6:i64 = urem %3, %5 infer %6 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx llvm is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 3 %2:i32 = phi %1, 0:i32, 1:i32, 1:i32 %3:i32 = phi %0, %2, 1:i32 infer %3 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (000000xxxxxxxxxxxxxxxxxxxxxxxxxx) %1:i32 = and 3:i32, %0 %2:i32 = shl 4:i32, %1 infer %2 known from Souper: 00000000000000000000000000xxxx00 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i32 = var (000000000000000000000001111000x0) %2:i32 = var (000000000000000000000001111001x1) %3:i32 = phi %0, %1, %2, 491:i32 %4:i64 = zext %3 infer %4 known from Souper: 000000000000000000000000000000000000000000000000000000011110xxxx known from compiler: 0000000000000000000000000000000000000000000000000000000xxxx0xxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 2 %2 = block 2 %3:i8 = var (0000000x) %4:i8 = var (0000000x) %5:i8 = phi %1, %3, %4 %6:i8 = phi %0, 0:i8, %5, %5 infer %6 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i32 = var (00000000000000000000000000000x00) %2:i32 = xor 4:i32, %1 %3:i32 = phi %0, 0:i32, 0:i32, %2 infer %3 known from Souper: 00000000000000000000000000000x00 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1 = block 3 %2:i32 = phi %1, 8:i32, 8:i32, 7:i32 %3:i32 = phi %0, 5:i32, %2, 6:i32, 4:i32 infer %3 known from Souper: 0000000000000000000000000000xxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i80 = var (0000000000000000000000000000000000000000000000000000000000000000xxxxxxxxxxxxxxxx) %2:i32 = trunc %1 %3:i80 = var (0000000000000000000000000000000000000000000000000000000000000000xxxxxxxxxxxxxxxx) %4:i32 = trunc %3 %5:i32 = phi %0, %2, %4 infer %5 known from Souper: 0000000000000000xxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (0000000000000000000000000000100x) %1:i32 = shl 1:i32, %0 %2:i64 = sext %1 infer %2 known from Souper: 000000000000000000000000000000000000000000000000000000xx00000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i1 = ult %0, 3:i64 %2:i64 = select %1, %0, 3:i64 infer %2 known from Souper: 00000000000000000000000000000000000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 24 %1:i1 = var %2:i32 = select %1, 7154:i32, 1720:i32 %3:i1 = var %4:i32 = var (0000000000000000000xx1xxxxx0xx0x) %5:i32 = select %3, 7427:i32, %4 %6:i32 = var (0000000000000000000xx1xxxx1xxx0x) %7:i32 = select %3, 7459:i32, %6 %8:i32 = var (0000000000000000000xx1x0xx000x01) %9:i32 = select %3, 7167:i32, %8 %10:i32 = var (0000000000000000000xxx1x1001111x) %11:i32 = select %3, 7068:i32, %10 %12:i32 = phi %0, 1464:i32, 1458:i32, 7146:i32, 1195:i32, 1195:i32, 1195:i32, 1195:i32, 1195:i32, 1197:i32, 1199:i32, %2, 1472:i32, 1711:i32, 1711:i32, 1712:i32, 1647:i32, 1670:i32, 1689:i32, 1711:i32, 7117:i32, %5, %7, %9, %11 infer %12 known from Souper: 0000000000000000000xxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = add 4294967289:i32, %0 %2:i1 = slt 0:i32, %1 %3:i32 = select %2, %1, 0:i32 infer %3 known from Souper: 0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i1 = var %3:i32 = zext %2 %4:i32 = or 2:i32, %3 %5:i32 = phi %0, %4, %3 infer %5 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1:i64 = var (000000000000000000000000000000000000000000000000000000000000000x) %2:i64 = subnsw 52:i64, %1 %3:i64 = subnsw 50:i64, %1 %4:i64 = var (00000000000000000000000000000000000000000000000000000000000000x0) %5:i64 = xor 43:i64, %4 %6:i64 = var (00000000000000000000000000000000000000000000000000000000000000x0) %7:i64 = addnw 31:i64, %6 %8:i1 = var %9:i64 = select %8, 3:i64, 12:i64 %10:i64 = phi %0, %2, %3, %5, %7, %9 infer %10 known from Souper: 0000000000000000000000000000000000000000000000000000000000xxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i1 = var %2:i8 = zext %1 %3 = block 3 %4 = block 2 %5:i8 = var (0000000x) %6:i8 = phi %3, 0:i8, %5, 0:i8 %7:i8 = phi %0, %2, %6 infer %7 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 3 %2:i32 = var (0000000000000000000000000000000x) %3:i32 = var (0000000000000000000000000000000x) %4:i32 = phi %1, %2, %3, 1:i32 %5:i32 = phi %0, %4, 1:i32 infer %5 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 1 %1:i1 = var %2:i32 = var (0xxxxxxxxxxxxxxxxxxxxxxxxxxx1xxx) %3:i32 = var (0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %4:i32 = select %1, %2, %3 %5:i32 = phi %0, %4 infer %5 known from Souper: 0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 7 %1 = block 2 %2:i8 = phi %1, 1:i8, 0:i8 %3:i8 = phi %0, 1:i8, 0:i8, 0:i8, 0:i8, %2, %2, %2 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = and 4294967294:i32, %0 %2:i32 = add 4294967295:i32, %1 %3:i32 = and %2, %1 infer %3 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0 souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 4 %2:i32 = phi %1, 1:i32, 0:i32, 0:i32, 0:i32 %3:i32 = phi %0, 2:i32, %2 infer %3 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i64 = var (000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %2:i64 = addnw 1:i64, %1 %3:i64 = phi %0, 0:i64, %2 infer %3 known from Souper: 00xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 3 %2 = block 2 %3:i8 = var (0000000x) %4:i8 = var (0000000x) %5:i8 = phi %1, 0:i8, %3, %4 %6:i1 = var %7:i8 = select %6, %5, 0:i8 %8:i8 = phi %0, %5, %7 infer %8 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1 = block 4 %2:i32 = phi %1, 3:i32, 1:i32, 0:i32, 3:i32 %3 = block 2 %4:i32 = phi %3, 1:i32, 0:i32 %5:i32 = phi %0, 2:i32, 0:i32, %2, %4 infer %5 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i32 = var %2:i64 = zext %1 %3:i64 = shl 64:i64, %2 infer %3 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1 = block 2 %2:i32 = var (000000000000000000000000000000x0) %3:i32 = phi %1, %2, 1:i32 %4:i32 = phi %0, %3, 1:i32, 1:i32, 1:i32, 1:i32 infer %4 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (000000000000000000000000000000x0) %2:i32 = shlnw %1, 1:i32 %3:i32 = phi %0, 3:i32, %2 infer %3 known from Souper: 00000000000000000000000000000xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i64 = var %2:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %3:i64 = phi %0, %1, %2 %4:i32 = var %5:i64 = zext %4 %6:i1 = ult %3, %5 %7:i64 = select %6, %3, %5 infer %7 known from Souper: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1 = block 2 %2:i32 = phi %1, 1:i32, 3:i32 %3:i32 = phi %0, 0:i32, 0:i32, %2, %2 infer %3 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i64 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00) %2:i64 = or 2:i64, %1 %3:i64 = phi %0, 0:i64, %2 infer %3 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (000000000000000000000110100xxx0x) %2:i32 = phi %0, 1688:i32, %1 %3:i64 = zext %2 infer %3 known from Souper: 00000000000000000000000000000000000000000000000000000110100xxx0x known from compiler: 00000000000000000000000000000000000000000000000000000xx0x00xxx0x souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (00000000000000000000000000xxxxxx) %2:i32 = subnsw 32:i32, %1 %3:i32 = subnsw 64:i32, %2 infer %3 known from Souper: 0000000000000000000000000xxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i64 = zext %0 %2:i64 = var (0000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %3:i64 = var (000000000000000000000000000000000000000000000000000000000000000x) %4:i64 = addnw %2, %3 %5:i64 = udiv %1, %4 infer %5 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx llvm is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i32 = var (000000000000000000000000000000x1) %3:i32 = phi %1, 3:i32, %2 %4:i32 = phi %0, %3, 1:i32 infer %4 known from Souper: 000000000000000000000000000000x1 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i8 = var %1:i32 = sext %0 %2:i32 = addnsw 151:i32, %1 infer %2 known from Souper: 00000000000000000000000xxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (00000000000000000000000000000000000000000000000000000000000xxxxx) %1:i64 = subnsw 32:i64, %0 %2:i64 = subnsw 33:i64, %1 infer %2 known from Souper: 0000000000000000000000000000000000000000000000000000000000xxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = add 4294966821:i32, %0 %2:i32 = lshr 1310725:i32, %1 infer %2 known from Souper: 00000000000xxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 1 %1:i32 = var (000000000000000000000000000000xx) %2:i32 = var (00000000000000000000000000xxxx00) %3:i32 = or %1, %2 %4:i32 = phi %0, %3 infer %4 known from Souper: 00000000000000000000000000xxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i64 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00000000000000000000000000000011) %2:i64 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00000000000000000000000000001001) %3:i64 = phi %0, %1, %2 %4:i32 = trunc %3 infer %4 known from Souper: 0000000000000000000000000000x0x1 known from compiler: 0000000000000000000000000000x0xx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 3 %2:i32 = var (000000xxxxxxxxxxxxxxxxxxxxxxxxxx) %3:i32 = phi %1, %2, 1:i32, %2 %4:i32 = phi %0, 0:i32, %3, %3 infer %4 known from Souper: 000000xxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (000000000000000000000000000000xx) %1:i32 = shl 4:i32, %0 %2:i64 = sext %1 infer %2 known from Souper: 0000000000000000000000000000000000000000000000000000000000xxxx00 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx11) %1:i64 = var (000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %2:i64 = addnsw %0, %1 %3 = block 4 %4:i64 = var (00000000000000000000000000000000000000000000000000000000000x0x00) %5:i64 = urem %2, %4 %6:i64 = subnsw %2, %5 infer %6 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i1 = var %2:i32 = select %1, 0:i32, 2785:i32 %3:i1 = var %4:i32 = select %3, 0:i32, 2785:i32 %5 = block 4 %6:i32 = var (0000000000000000000010101x1xxxx0) %7:i32 = phi %5, 0:i32, %6, 2725:i32, 2785:i32 %8:i32 = phi %0, %2, %4, %7 infer %8 known from Souper: 00000000000000000000x0x0xxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (000000000000000000000000000x10xx) %1:i64 = zext %0 %2:i64 = shl 1:i64, %1 infer %2 known from Souper: 000000000000000000000000000000000000xxxx000000000000xxxx00000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (00000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx000) %1:i64 = lshr 282578783371265:i64, %0 %2:i8 = trunc %1 infer %2 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i32 = trunc %0 %2:i1 = ult %1, 5187:i32 %3:i32 = select %2, %1, 0:i32 infer %3 known from Souper: 0000000000000000000xxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = add 18446744073709551614:i64, %0 %2:i1 = ult %1, 4:i64 %3:i64 = select %2, %1, 4:i64 infer %3 known from Souper: 0000000000000000000000000000000000000000000000000000000000000xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i64 = phi %1, 21:i64, 24:i64 %3:i64 = phi %0, 28:i64, %2 infer %3 known from Souper: 000000000000000000000000000000000000000000000000000000000001xx0x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i1 = eq 0:i32, %0 %2:i32 = var %3:i32 = lshr 71:i32, %2 %4:i32 = select %1, 0:i32, %3 infer %4 known from Souper: 0000000000000000000000000xxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i64 = var (000000000000000000000000xxxxxxxx00000000000000000000000000000000) %2:i64 = or 18:i64, %1 %3:i64 = phi %0, %2, 18:i64 infer %3 known from Souper: 000000000000000000000000xxxxxxxx00000000000000000000000000010010 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx1xx1x souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 1 %1:i32 = var %2:i32 = phi %0, %1 %3:i32 = add 4294967295:i32, %2 %4:i32 = and %2, %3 infer %4 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 5 %2:i32 = phi %1, 0:i32, 0:i32, 3:i32, 3:i32, 0:i32 %3:i1 = var %4:i32 = select %3, 1:i32, 2:i32 %5:i32 = phi %0, %2, 2:i32, %4 infer %5 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1:i1 = var %2:i32 = select %1, 0:i32, 24:i32 %3:i32 = addnw 24:i32, %2 %4:i32 = phi %0, %3, %2, %2, %2 infer %4 known from Souper: 00000000000000000000000000xxx000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2 = block 2 %3:i8 = var (0000000x) %4:i8 = var (0000000x) %5:i8 = phi %1, %3, %4 %6:i8 = phi %0, %5, 1:i8 infer %6 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (0000000000000000000000000xxxxxxx) %1:i32 = and 1:i32, %0 %2:i1 = var %3:i32 = select %2, 5:i32, 6:i32 %4:i32 = addnw %1, %3 infer %4 known from Souper: 000000000000000000000000000001xx known from compiler: 0000000000000000000000000000xxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx000) %1:i32 = trunc %0 %2:i32 = bswap %1 infer %2 known from Souper: xxxxx000xxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i16 = var (00000000000000xx) %2:i32 = zext %1 %3:i32 = phi %0, %2, 0:i32, 0:i32 infer %3 known from Souper: 000000000000000000000000000000xx known from compiler: 0000000000000000xxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1 = block 2 %2:i8 = phi %1, 1:i8, 0:i8 %3:i1 = var %4:i8 = select %3, 1:i8, %2 %5:i8 = phi %0, %2, %2, %4, %2 infer %5 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i24 = var (xxxxxxxxxxxxxxxxxxxxx000) %1:i24 = lshr 66048:i24, %0 %2:i8 = trunc %1 infer %2 known from Souper: 000000xx known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 1 %1:i32 = var (00000000000000000000000000000x01) %2:i32 = phi %0, %1 infer %2 known from Souper: 00000000000000000000000000000x01 known from compiler: 00000000000000000000000000000x0x souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 8 %1 = block 12 %2:i8 = phi %1, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 1:i8 %3:i8 = phi %0, 0:i8, 0:i8, 0:i8, 0:i8, %2, 0:i8, 0:i8, 0:i8 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = var %2:i32 = subnsw %0, %1 %3:i1 = slt 0:i32, %2 %4:i32 = select %3, %2, 0:i32 infer %4 known from Souper: 0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1:i64 = var %2:i64 = var %3:i64 = var %4:i64 = phi %0, %1, %1, %2, %3 %5:i1 = ult 128:i64, %4 %6:i64 = select %5, 128:i64, %4 infer %6 known from Souper: 00000000000000000000000000000000000000000000000000000000xxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 8 %1 = block 2 %2:i32 = phi %1, 0:i32, 29:i32 %3 = block 3 %4:i32 = phi %3, 0:i32, 0:i32, 31:i32 %5 = block 3 %6:i32 = phi %5, 0:i32, 0:i32, 30:i32 %7 = block 3 %8:i32 = phi %7, 0:i32, 0:i32, 29:i32 %9 = block 3 %10:i32 = phi %9, 0:i32, 0:i32, 16:i32 %11:i32 = phi %0, %2, %4, %6, %8, %10, 0:i32, 0:i32, 14:i32 infer %11 known from Souper: 000000000000000000000000000xxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %1:i64 = and 67108863:i64, %0 %2:i64 = and 3:i64, %0 %3:i64 = subnsw %1, %2 infer %3 known from Souper: 00000000000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxx00 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 2 %2:i8 = var (0000000x) %3:i8 = phi %1, 0:i8, %2 %4:i8 = phi %0, 0:i8, %3, 0:i8 infer %4 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (000000000000000000000000000000x0) %2:i32 = xor 2990:i32, %1 %3:i32 = phi %0, 2988:i32, %2 infer %3 known from Souper: 000000000000000000001011101011x0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 4 %2:i32 = phi %1, 2:i32, 2:i32, 0:i32, 2:i32 %3 = block 3 %4:i32 = phi %3, 2:i32, 0:i32, 2:i32 %5:i32 = phi %0, %2, 2:i32, %4 infer %5 known from Souper: 000000000000000000000000000000x0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 6 %2:i8 = phi %1, 1:i8, 0:i8, 1:i8, 1:i8, 1:i8, 1:i8 %3:i8 = phi %0, %2, 1:i8, 1:i8 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (000000000000000000000000xxxxxxxx) %1:i32 = addnsw 4294967256:i32, %0 %2:i32 = lshr 97287:i32, %1 infer %2 known from Souper: 000000000000000xxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = add 4294967295:i32, %0 %2:i32 = lshr 29622273:i32, %1 infer %2 known from Souper: 0000000xxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i16 = var (00000000xxxxxxxx) %2:i32 = zext %1 %3:i32 = phi %0, %2, 8:i32 infer %3 known from Souper: 000000000000000000000000xxxxxxxx known from compiler: 0000000000000000xxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i8 = var %1:i32 = sext %0 %2:i32 = addnsw 152:i32, %1 infer %2 known from Souper: 00000000000000000000000xxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 8 %1 = block 31 %2:i32 = var %3 = block 3 %4:i32 = var %5:i32 = phi %0, %2, 8:i32, 16:i32, 128:i32, 32:i32, 32:i32, 8:i32, %4 %6:i32 = add 4294967295:i32, %5 %7:i32 = and %5, %6 infer %7 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 6 %1:i64 = var %2:i64 = lshr %1, 58:i64 %3:i64 = shl 18446744073709551615:i64, %2 infer %3 known from Souper: 1xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i1 = var %1:i32 = select %0, 25:i32, 1:i32 %2:i32 = bswap %1 infer %2 known from Souper: 000xx001000000000000000000000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1:i64 = var (000000000000000000000000000000xx00000000000000000000000000000000) %2:i64 = or 2:i64, %1 %3:i1 = var %4:i64 = select %3, 8589934595:i64, 3:i64 %5:i64 = phi %0, %2, 3:i64, %4, 1:i64 infer %5 known from Souper: 000000000000000000000000000000xx000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (0000000000000000000000000000000x) %2:i32 = var (0000000000000000xxxxxxxxxxxxxxxx) %3:i32 = addnw %1, %2 %4:i32 = phi %0, 0:i32, %3 infer %4 known from Souper: 000000000000000xxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 5 %2:i8 = phi %1, 0:i8, 0:i8, 0:i8, 0:i8, 1:i8 %3 = block 5 %4:i8 = phi %3, %2, %2, %2, 1:i8, %2 %5:i8 = phi %0, %2, %4, %4 infer %5 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 9 %1:i16 = var (000000000000000x) %2:i16 = shlnw %1, 12:i16 %3:i16 = phi %0, 0:i16, 0:i16, 0:i16, 0:i16, 4096:i16, 4096:i16, 0:i16, %2, 0:i16 infer %3 known from Souper: 000x000000000000 known from compiler: xxxx000000000000 souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i1 = var %1:i32 = select %0, 36:i32, 37:i32 %2:i32 = bswap %1 infer %2 known from Souper: 0010010x000000000000000000000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i24 = var (0000000000000000xxxxxxxx) %2:i32 = zext %1 %3:i24 = var (0000000000000000xxxxxxxx) %4:i32 = zext %3 %5:i24 = var (0000000000000000xxxxxxxx) %6:i32 = zext %5 %7:i32 = phi %0, %2, %4, %6 infer %7 known from Souper: 000000000000000000000000xxxxxxxx known from compiler: 00000000xxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 3 %2:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %3:i64 = phi %1, %2, %2, %2 %4 = block 3 %5:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %6:i64 = phi %4, %5, %5, %5 %7:i64 = phi %0, %3, %6 infer %7 known from Souper: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 5 %2:i32 = phi %1, 2:i32, 0:i32, 0:i32, 0:i32, 0:i32 %3:i32 = phi %0, %2, 2:i32 infer %3 known from Souper: 000000000000000000000000000000x0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (000000000000000000000000000000x0) %2:i32 = xor 3:i32, %1 %3:i32 = phi %0, %2, 0:i32 infer %3 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1 = block 7 %2:i32 = phi %1, 1:i32, 1:i32, 1:i32, 1:i32, 1:i32, 1:i32, 0:i32 %3:i32 = phi %0, 0:i32, 1:i32, 0:i32, %2 infer %3 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 6 %1:i32 = var (0000000000000000000000000000000x) %2:i32 = phi %0, %1, 0:i32, 0:i32, 1:i32, 2:i32, 2:i32 %3:i32 = var (000000000000000000000000000000xx) %4:i32 = var (0000000000000000000000000000000x) %5:i32 = addnw %3, %4 %6:i32 = addnw %2, %5 infer %6 known from Souper: 00000000000000000000000000000xxx known from compiler: 0000000000000000000000000000xxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = var (000000000000000000000000000000000000000000000000000000000001x000) %2:i64 = mulnsw %0, %1 %3:i64 = bswap %2 infer %3 known from Souper: xxxxx000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i32 = var (00000000000000000000001000001x01) %2:i32 = var (0000000000000000000000100000xxx1) %3:i32 = phi %0, %1, %2, 527:i32 %4:i64 = zext %3 infer %4 known from Souper: 000000000000000000000000000000000000000000000000000000100000xxx1 known from compiler: 000000000000000000000000000000000000000000000000000000x00000xxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i8 = var (0000000x) %2:i8 = xor 1:i8, %1 %3:i8 = phi %0, %2, 0:i8, 0:i8 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i64 = zext %0 %2:i64 = lshr 2196875772159:i64, %1 infer %2 known from Souper: 00000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i32 = phi %0, 7:i32, 12:i32, 9:i32 %2:i8 = var (0000000x) %3:i32 = zext %2 %4:i32 = subnsw %1, %3 infer %4 known from Souper: 0000000000000000000000000000xxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (00000xxxxxxxxxxxxxxxxxxxxxxxxxxx) %1:i32 = var (00000xxxxxxxxxxxxxxxxxxxxxxxxxxx) %2:i32 = addnw %0, %1 %3:i64 = var (0000000000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxx) %4:i32 = trunc %3 %5:i1 = ult %2, %4 %6:i32 = select %5, %2, %4 infer %6 known from Souper: 00000xxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 0000xxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 6 %2:i1 = var %3:i32 = var (00000000000000000000000011xx00xx) %4:i32 = var (000000000000000000000000xx0000xx) %5:i32 = select %2, %3, %4 %6:i1 = var %7:i32 = var (000000000000000000000000xx000000) %8:i32 = select %6, %7, 0:i32 %9:i32 = phi %0, 0:i32, %5, %8 infer %9 known from Souper: 000000000000000000000000xxxx00xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1:i32 = var (000000000000000000000000000000xx) %2:i32 = addnw 1:i32, %1 %3:i32 = var (000000000000000000000000000000xx) %4:i32 = addnw 1:i32, %3 %5:i32 = phi %0, %2, %4, 0:i32, 0:i32, 0:i32 infer %5 known from Souper: 00000000000000000000000000000xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 3 %2:i8 = phi %1, 1:i8, 0:i8, 0:i8 %3 = block 3 %4:i8 = phi %3, 1:i8, %2, %2 %5:i8 = phi %0, 0:i8, %2, %4 infer %5 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 8 %2:i32 = var %3:i32 = ctlz %2 %4:i32 = var (000000000000000000000000000xxxxx) %5:i32 = addnw 1:i32, %4 %6:i32 = phi %0, %3, %5, 33:i32 infer %6 known from Souper: 00000000000000000000000000xxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 1 %1:i1 = var %2:i32 = var (0000000000000000000000000xx10000) %3:i32 = select %1, %2, 24:i32 %4:i1 = var %5:i32 = var (000000000000000000xxxxxxxxxxxxxx) %6:i32 = select %4, 1:i32, %5 %7:i32 = udiv %3, %6 infer %7 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 0000000000000000000000000xxxxxxx llvm is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i64 = var (0000000000000000000000000000000000000000000000000000000000xxxxxx) %2:i64 = addnw 1:i64, %1 %3:i64 = phi %0, %2, 0:i64 infer %3 known from Souper: 000000000000000000000000000000000000000000000000000000000xxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (0000000000000000xxxxxxxxxxxxxxxx) %1:i32 = subnsw 70:i32, %0 %2:i32 = var %3:i32 = lshr %2, 2:i32 %4:i32 = urem %1, %3 infer %4 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 00xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx llvm is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1 = block 2 %2:i8 = var (0000000x) %3:i8 = phi %1, %2, 0:i8 %4:i8 = phi %0, %3, %3, 1:i8, 1:i8 infer %4 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 28 %1:i32 = var (00000000000000000000000100001xxx) %2:i32 = var (0000000000000000000000010000111x) %3:i32 = var (000000000000000000000001000100xx) %4:i32 = var (0000000000000000000000010001010x) %5:i32 = var (0000000000000000000000010001xxxx) %6:i32 = var (0000000000000000000000010001101x) %7:i32 = var (000000000000000000000001000111xx) %8:i32 = var (0000000000000000000000010010000x) %9:i32 = phi %0, %1, %2, %3, %4, %5, %6, %7, %8, %4, %7, %3, %6, %5, %4, 266:i32, 269:i32, 272:i32, 275:i32, 278:i32, 281:i32, 284:i32, 287:i32, 275:i32, 284:i32, 272:i32, 281:i32, 278:i32, 275:i32 %10:i64 = zext %9 infer %10 known from Souper: 0000000000000000000000000000000000000000000000000000000100xxxxxx known from compiler: 0000000000000000000000000000000000000000000000000000000x00xxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i64 = zext %0 %2:i64 = lshr 115132332201426765:i64, %1 infer %2 known from Souper: 0000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2 = block 3 %3:i8 = var (0000000x) %4:i8 = phi %1, 0:i8, %3 %5:i8 = phi %0, 0:i8, %4 infer %5 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i1 = ult %0, 60:i64 %2:i64 = select %1, %0, 60:i64 infer %2 known from Souper: 0000000000000000000000000000000000000000000000000000000000xxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1 = block 7 %2 = block 2 %3:i8 = var (0000000x) %4:i8 = phi %1, 1:i8, 0:i8, 0:i8, 0:i8, %3, %3, %3 %5:i8 = phi %0, 0:i8, 1:i8, %4, %4, %4 infer %5 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 4 %2:i32 = phi %1, 1:i32, 1:i32, 0:i32, 0:i32 %3 = block 3 %4:i32 = var (0000000000000000000000000000001x) %5:i32 = var (00000000000000000000000000000x0x) %6:i32 = phi %3, %4, %4, %5 %7:i32 = phi %0, %2, %6 infer %7 known from Souper: 00000000000000000000000000000xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = sub 63:i64, %0 %2:i1 = ult 31:i64, %1 %3:i64 = select %2, 31:i64, %1 infer %3 known from Souper: 00000000000000000000000000000000000000000000000000000000000xxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = udiv 128:i32, %0 %2:i32 = udiv 6:i32, %1 infer %2 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 00000000000000000000000000000xxx llvm is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 3 %2 = block 3 %3:i8 = var (0000000x) %4:i8 = phi %1, 1:i8, %3, %3 %5:i8 = phi %0, 1:i8, %4, %4 infer %5 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 7 %2:i8 = var (0000000x) %3:i8 = phi %1, %2, 0:i8, 1:i8, 0:i8, 1:i8, 1:i8, 0:i8 %4:i1 = var %5:i8 = select %4, 1:i8, %3 %6:i8 = phi %0, %3, %5 infer %6 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i8 = var (0000xxxx) %2:i8 = and 1:i8, %1 %3 = block 3 %4:i8 = var (0000000x) %5:i8 = phi %3, %4, 0:i8, 0:i8 %6:i8 = phi %0, %2, %5 infer %6 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 2 %2:i32 = var (0000000000000000000000000000000x) %3:i32 = phi %1, %2, 1:i32 %4:i32 = phi %0, 1:i32, %3, 1:i32 infer %4 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i64 = phi %1, 7:i64, 15:i64 %3:i64 = phi %0, 31:i64, %2 infer %3 known from Souper: 00000000000000000000000000000000000000000000000000000000000xx111 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var %2:i32 = add 4294967112:i32, %1 %3:i32 = lshr 14680447:i32, %2 infer %3 known from Souper: 00000000xxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i16 = trunc %0 %2:i16 = lshr 1095:i16, %1 infer %2 known from Souper: 00000xxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 6 %1 = block 3 %2 = block 2 %3:i32 = var (0000000000000000000000000000000x) %4:i32 = phi %1, %3, 1:i32, 1:i32 %5:i32 = phi %0, 1:i32, 1:i32, 1:i32, %4, 1:i32, 1:i32 infer %5 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i1 = var %1:i32 = var %2:i32 = select %0, 0:i32, %1 %3 = block 3 %4:i32 = phi %3, 4:i32, 1:i32, 1:i32 %5:i32 = urem %2, %4 infer %5 known from Souper: 000000000000000000000000000000xx known from compiler: 00000000000000000000000000000xxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 2 %2:i8 = phi %1, 1:i8, 0:i8 %3:i8 = phi %0, %2, 1:i8, 1:i8 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 8 %1 = block 2 %2:i32 = var (00000000000000000000000000000x01) %3:i32 = phi %1, 5:i32, %2 %4 = block 2 %5:i1 = var %6:i32 = zext %5 %7:i32 = var (000000000000000000000000000000x1) %8:i32 = phi %1, 5:i32, %7 %9 = block 5 %10:i32 = var (00000000000000000000000000000x11) %11:i32 = var (00000000000000000000000000000x11) %12:i32 = var (000000000000000000000000000001x1) %13:i32 = phi %9, 0:i32, %10, %11, %12, 1:i32 %14:i32 = phi %0, 7:i32, 7:i32, %3, %6, %8, %8, %8, %13 infer %14 known from Souper: 00000000000000000000000000000xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i32 = var (0000000000000000000000000000000x) %3:i32 = phi %1, %2, %2 %4 = block 2 %5:i32 = phi %4, %3, %2 %6:i32 = phi %0, %3, %5 infer %6 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i32 = var %2:i32 = add 4294967273:i32, %1 %3:i32 = lshr 198271:i32, %2 infer %3 known from Souper: 00000000000000xxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i1 = slt %0, 4:i32 %2:i32 = select %1, 4:i32, %0 infer %2 known from Souper: 0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (000000000000000000000000xxxxxxxx) %2:i32 = addnw 15:i32, %1 %3:i32 = phi %0, 6:i32, %2 infer %3 known from Souper: 00000000000000000000000xxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i48 = var (0000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx000) %1:i48 = lshr 77263631691040:i48, %0 %2:i8 = trunc %1 infer %2 known from Souper: 0xxxxxxx known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i1 = var %1:i32 = select %0, 2:i32, 1:i32 %2:i32 = addnw 3:i32, %1 infer %2 known from Souper: 0000000000000000000000000000010x known from compiler: 00000000000000000000000000000xxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i16 = var (00000000000000xx) %2:i32 = zext %1 %3 = block 20 %4:i32 = var (000000000000000000000000000000xx) %5 = block 3 %6:i32 = var (0000000000000000xxxxxxxxxxxxxxxx) %7:i32 = phi %3, 0:i32, 0:i32, %4, 0:i32, 0:i32, 0:i32, 0:i32, 0:i32, 0:i32, 0:i32, 0:i32, 0:i32, 0:i32, 0:i32, 0:i32, 0:i32, 0:i32, 0:i32, 0:i32, %6 %8:i32 = phi %0, %2, %7, %7 infer %8 known from Souper: 0000000000000000xxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1 = block 2 %2:i32 = phi %1, 264:i32, 776:i32 %3:i32 = phi %0, 264:i32, 264:i32, 776:i32, %2 infer %3 known from Souper: 0000000000000000000000x100001000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (0000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0000) %1:i64 = addnw 40:i64, %0 %2:i1 = var %3:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxx000) %4:i64 = select %2, %3, 0:i64 %5:i64 = addnw %1, %4 infer %5 known from Souper: 000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx000 known from compiler: 00000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx000 souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 10 %1 = block 6 %2:i32 = phi %1, 2:i32, 2:i32, 1:i32, 2:i32, 2:i32, 0:i32 %3:i32 = phi %0, %2, 0:i32, 0:i32, 0:i32, 0:i32, 0:i32, 0:i32, 0:i32, 0:i32, 0:i32 infer %3 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1 = block 4 %2:i32 = phi %1, 0:i32, 0:i32, 1:i32, 1:i32 %3:i32 = or 2:i32, %2 %4:i32 = phi %0, %2, %2, %3, %3 infer %4 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1 = block 3 %2:i32 = var %3:i64 = zext %2 %4:i1 = ult %0, %3 %5:i64 = select %4, %0, %3 infer %5 known from Souper: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 2 %2:i16 = phi %1, 2:i16, 22:i16 %3:i16 = phi %0, 2:i16, %2, 2:i16 infer %3 known from Souper: 00000000000x0x10 known from compiler: xxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = urem %0, 25:i32 %2:i32 = addnw 97:i32, %1 infer %2 known from Souper: 000000000000000000000000011xxxxx known from compiler: 000000000000000000000000xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %1:i32 = trunc %0 %2:i32 = add 4294967295:i32, %1 %3:i32 = and %2, %1 infer %3 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i17 = trunc %0 %2:i17 = lshr 861:i17, %1 infer %2 known from Souper: 0000000xxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1:i32 = var (000000000000000000000000000000x0) %2:i32 = xor 2:i32, %1 %3:i32 = phi %0, 0:i32, 2:i32, 0:i32, %2 infer %3 known from Souper: 000000000000000000000000000000x0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2 = block 2 %3:i64 = var (000000000000000000000000000000000000000000000000000000000001xx0x) %4:i64 = phi %1, 28:i64, %3 %5:i64 = phi %0, 25:i64, %4 infer %5 known from Souper: 000000000000000000000000000000000000000000000000000000000001xx0x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 18 %2:i64 = phi %1, 0:i64, 1:i64, 2:i64, 3:i64, 9:i64, 14:i64, 11:i64, 9:i64, 0:i64, 1:i64, 2:i64, 3:i64, 5:i64, 6:i64, 7:i64, 8:i64, 4:i64, 4:i64 %3:i64 = phi %0, %2, 9:i64, 9:i64 infer %3 known from Souper: 000000000000000000000000000000000000000000000000000000000000xxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i8 = var (0000000x) %2:i32 = zext %1 %3:i32 = or 2:i32, %2 %4:i32 = phi %0, %2, %3 infer %4 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i1 = var %2:i8 = select %1, 12:i8, 14:i8 %3:i8 = var (00001x11) %4:i8 = select %1, 10:i8, %3 %5:i8 = phi %0, %2, %4 infer %5 known from Souper: 00001xxx known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 4 %2:i32 = phi %1, 2:i32, 2:i32, 0:i32, 2:i32 %3:i32 = phi %0, %2, 1:i32 infer %3 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (00000000000000000000001100xxxx1x) %2:i32 = phi %0, 800:i32, %1 %3:i64 = zext %2 infer %3 known from Souper: 0000000000000000000000000000000000000000000000000000001100xxxxxx known from compiler: 000000000000000000000000000000000000000000000000000000xx00xxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1:i64 = var (000000000000000000000000000000000000000000000000000000000000000x) %2:i32 = trunc %1 %3:i32 = phi %0, 0:i32, 1:i32, 0:i32, %2 infer %3 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i1 = var %1:i32 = var (00000000xxxxxxxxxxxxxxxxxxxxxxxx) %2:i32 = var (00000000xxxxxxxxxxxxxxxxxxxxxxxx) %3:i32 = select %0, %1, %2 %4:i1 = var %5:i32 = select %4, 16:i32, 12:i32 %6:i32 = mulnw %3, %5 infer %6 known from Souper: 0000xxxxxxxxxxxxxxxxxxxxxxxxxx00 known from compiler: 000xxxxxxxxxxxxxxxxxxxxxxxxxxx00 souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 1 %2:i32 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxx0000) %3:i32 = phi %1, %2 %4:i32 = phi %0, %3, 0:i32 infer %4 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxx0000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (00000000000000000000000000000000000000000000000000000000000x0000) %1:i64 = addnw 56:i64, %0 %2:i64 = var (00000000000000000000000000000000000000000000000000000000010x0x00) %3:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %4:i64 = mulnw %2, %3 %5:i64 = addnw %1, %4 infer %5 known from Souper: 0000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00 known from compiler: 000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00 souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 14 %1 = block 11 %2:i8 = phi %1, 1:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8 %3:i8 = phi %0, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 1:i8, 0:i8, %2, %2 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1 = block 4 %2:i8 = phi %1, 1:i8, 0:i8, 1:i8, 1:i8 %3:i8 = phi %0, %2, 1:i8, 1:i8, 1:i8 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1:i32 = var (0000000000000000000000000000000x) %2:i32 = xor 1:i32, %1 %3:i32 = addnw 1:i32, %2 %4:i32 = phi %0, %3, %2, %2, %2 infer %4 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (00000000000000000000000000x1xx00) %1:i32 = var (0000000000000000xxxxxxxxxxxxxxxx) %2:i32 = addnw %0, %1 %3:i32 = addnw 132:i32, %2 infer %3 known from Souper: 000000000000000xxxxxxxxxxxxxxxxx known from compiler: 00000000000000xxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i1 = var %2:i32 = var (0000000000000000000000000xxxxxxx) %3:i32 = select %1, %2, 16:i32 %4:i32 = var (0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %5:i32 = and 127:i32, %4 %6:i32 = phi %0, %3, %5 infer %6 known from Souper: 0000000000000000000000000xxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 5 %2:i32 = phi %1, 1:i32, 1:i32, 0:i32, 0:i32, 1:i32 %3:i32 = phi %0, %2, 1:i32, 1:i32 infer %3 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i32 = var (0000000000000000000000000000000x) %2:i64 = zext %1 %3:i64 = urem %0, %2 infer %3 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 000000000000000000000000000000000000000000000000000000000000000x llvm is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1:i1 = var %2:i32 = zext %1 %3:i32 = or 2:i32, %2 %4:i32 = phi %0, %3, %2, %2, %2 infer %4 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 2 %2 = block 3 %3:i8 = var (0000000x) %4:i8 = phi %1, %3, 0:i8 %5:i8 = phi %0, %4, 1:i8, 1:i8 infer %5 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 3 %2:i8 = var %3:i8 = lshr %2, 7:i8 %4:i8 = var (0000000x) %5:i8 = phi %1, %3, %3, %4 %6:i8 = phi %0, %5, %3, %3 infer %6 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = var (0000000000000000000000000000000000000000000000000000000000xxx011) %2:i64 = shl 1:i64, %1 %3:i64 = and %0, %2 infer %3 known from Souper: 0000x0000000x0000000x0000000x0000000x0000000x0000000x0000000x000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1:i8 = var (0000000x) %2:i8 = xor 1:i8, %1 %3:i8 = phi %0, 0:i8, %2, %2, %2 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i8 = var %1:i16 = zext %0 %2:i16 = lshr 1183:i16, %1 infer %2 known from Souper: 00000xxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 1 %1:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %2:i64 = var (0000000000000000000000000000000x00000000000000000000000000000000) %3:i64 = or %1, %2 %4:i64 = phi %0, %3 infer %4 known from Souper: 0000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i1 = var %2:i32 = var (000000000000x1100000000000000000) %3:i32 = select %1, 0:i32, %2 %4:i32 = phi %0, 917504:i32, 0:i32, %3 infer %4 known from Souper: 000000000000xxx00000000000000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i32 = var (000000000000000000000000000000xx) %3 = block 2 %4:i32 = var (0000000000000000000000000000000x) %5:i32 = phi %1, %2, %4 %6:i32 = addnsw 1:i32, %5 %7:i32 = phi %0, %6, %5 infer %7 known from Souper: 00000000000000000000000000000xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1:i8 = var (0000000x) %2:i8 = xor 1:i8, %1 %3:i8 = phi %0, 0:i8, %2, 0:i8, %2, %2 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0) %1:i64 = ctlz %0 %2:i64 = addnw 4294967264:i64, %1 infer %2 known from Souper: 0000000000000000000000000000000100000000000000000000000000xxxxxx known from compiler: 0000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i32 = var (0000000000000000xxxxxxxxxxxxxxxx) %2:i32 = and 32767:i32, %1 %3:i1 = var %4:i32 = select %3, 34:i32, %2 %5:i32 = phi %0, %2, 37:i32, %4 infer %5 known from Souper: 00000000000000000xxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i32 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00) %2:i32 = add 4:i32, %1 %3 = block 1 %4:i32 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00) %5:i32 = phi %3, %4 %6:i32 = phi %0, %2, 4:i32, %5 infer %6 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 4 %2:i64 = var (000000000000000000000000000000000000000000000000000000000000x000) %3:i64 = phi %1, 0:i64, 0:i64, 0:i64, %2 %4:i64 = phi %0, %3, 0:i64 infer %4 known from Souper: 000000000000000000000000000000000000000000000000000000000000x000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i8 = var (0000000x) %2:i8 = var (0000000x) %3:i8 = or %1, %2 %4:i1 = var %5:i8 = zext %4 %6:i8 = phi %0, %3, %5 infer %6 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 13 %2:i32 = phi %1, 3:i32, 3:i32, 1:i32, 1:i32, 3:i32, 3:i32, 2:i32, 2:i32, 0:i32, 0:i32, 0:i32, 0:i32, 0:i32 %3:i32 = phi %0, %2, 0:i32, 0:i32 infer %3 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i32 = trunc %0 %2:i1 = slt 1:i32, %1 %3:i32 = select %2, %1, 1:i32 infer %3 known from Souper: 0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i32 = phi %1, 1:i32, 14:i32 %3:i32 = var (0000000000000000000000000000000x) %4:i32 = addnw 7:i32, %3 %5:i32 = phi %0, %2, %4 infer %5 known from Souper: 0000000000000000000000000000xxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 6 %1 = block 11 %2:i32 = phi %1, 3:i32, 3:i32, 3:i32, 3:i32, 3:i32, 3:i32, 3:i32, 3:i32, 3:i32, 1:i32, 0:i32 %3:i32 = phi %0, 2:i32, 3:i32, 3:i32, 2:i32, 0:i32, %2 infer %3 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i32 = var (0000000000000000000000000x000000) %2:i32 = var (000000000000000000000000000000xx) %3:i32 = or %1, %2 %4:i32 = var (000000000000000000000000x0000000) %5:i32 = or %3, %4 %6:i32 = var (000000000000000000000000x0000000) %7:i32 = or %3, %6 %8:i32 = phi %0, %5, %7, %3 infer %8 known from Souper: 000000000000000000000000xx0000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %1:i64 = var (000000000000000000000000000000000000000000000000000000000000000x) %2:i64 = addnw %0, %1 %3:i64 = mulnw 40:i64, %2 infer %3 known from Souper: 00000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx000 known from compiler: 0000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx000 souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1 = block 8 %2:i8 = phi %1, 0:i8, 0:i8, 0:i8, 1:i8, 0:i8, 0:i8, 0:i8, 0:i8 %3 = block 10 %4:i8 = phi %3, 0:i8, 0:i8, 0:i8, 0:i8, 1:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8 %5:i8 = phi %0, 0:i8, 0:i8, 0:i8, %2, %4 infer %5 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i64 = var (0000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %2:i64 = lshr %1, 6:i64 %3:i64 = phi %0, 0:i64, %2 infer %3 known from Souper: 0000000000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var %2:i64 = zext %1 %3:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %4:i64 = shl 1:i64, %3 %5:i1 = slt %2, %4 %6:i64 = select %5, %2, %4 infer %6 known from Souper: x0000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (00000000000000000000000000xxx111) %1:i64 = zext %0 %2:i64 = shl 1:i64, %1 infer %2 known from Souper: x0000000x0000000x0000000x0000000x0000000x0000000x0000000x0000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 12 %1 = block 9 %2:i8 = phi %1, 1:i8, 1:i8, 1:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8 %3:i8 = phi %0, %2, %2, 0:i8, 0:i8, %2, %2, %2, %2, %2, %2, %2, %2 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (0000000000000000000000000000xxxx) %1:i32 = shl 1:i32, %0 %2:i32 = addnsw 4294967295:i32, %1 infer %2 known from Souper: 00000000000000000xxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1:i64 = var (000000000000000000000000000000000000000000000000000000000000000x) %2:i64 = subnsw 19:i64, %1 %3:i64 = subnsw 11:i64, %1 %4:i64 = subnsw 10:i64, %1 %5:i64 = phi %0, 0:i64, %2, %3, %4 infer %5 known from Souper: 00000000000000000000000000000000000000000000000000000000000xx0xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %1:i64 = cttz %0 %2:i1 = ne 32:i64, %1 infer %2 known from Souper: 1 known from compiler: x souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 11 %1 = block 3 %2:i8 = phi %1, 0:i8, 1:i8, 1:i8 %3:i8 = phi %0, %2, 1:i8, 1:i8, 1:i8, 1:i8, 1:i8, 0:i8, 0:i8, 0:i8, 1:i8, 1:i8 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i19 = trunc %0 %2:i19 = lshr 196606:i19, %1 infer %2 known from Souper: 0xxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i80 = var (0000000000000000000000000000000000000000000000000000000000000000000000000000000x) %2:i80 = shlnw %1, 69:i80 %3:i80 = phi %0, 590295810358705651712:i80, %2 infer %3 known from Souper: 0000000000x000000000000000000000000000000000000000000000000000000000000000000000 known from compiler: xxxxxxxxxxx000000000000000000000000000000000000000000000000000000000000000000000 souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (000000000000000000000000000xxx1x) %1:i32 = shl 1:i32, %0 infer %1 known from Souper: xx00xx00xx00xx00xx00xx00xx00xx00 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = add 4294965678:i32, %0 %2:i32 = lshr 8126527:i32, %1 infer %2 known from Souper: 000000000xxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i16 = trunc %0 %2:i16 = lshr 771:i16, %1 infer %2 known from Souper: 000000xxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1 = block 3 %2:i32 = var %3:i32 = lshr %2, 8:i32 %4:i32 = phi %1, %3, 2:i32, 4:i32 %5:i32 = phi %0, %4, %3, %3, %3, 0:i32 infer %5 known from Souper: 00000000xxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i16 = var (0000000xxxx00000) %2:i16 = or 12:i16, %1 %3:i16 = or 13:i16, %1 %4:i16 = phi %0, %2, %3 infer %4 known from Souper: 0000000xxxx0110x known from compiler: xxxxxxxxxxxx11xx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 9 %1:i32 = var %2:i64 = zext %1 %3:i64 = var %4:i64 = udiv %2, %3 infer %4 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx llvm is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 4 %2:i32 = phi %1, 3:i32, 3:i32, 3:i32, 0:i32 %3:i32 = phi %0, %2, 3:i32 infer %3 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 3 %2:i32 = var (0000000000000000000000000000000x) %3:i32 = phi %1, %2, 1:i32, 1:i32 %4:i32 = phi %0, 1:i32, %3 infer %4 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2 = block 4 %3:i8 = var (0000000x) %4:i8 = phi %1, %3, 0:i8 %5:i8 = phi %0, %4, 1:i8 infer %5 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i64 = sext %0 %2:i64 = lshr 2405181688062:i64, %1 infer %2 known from Souper: 0000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i32 = phi %1, 2126:i32, 3233:i32 %3:i32 = phi %0, 2126:i32, %2 infer %3 known from Souper: 000000000000000000001x00xxx0xxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 4 %2:i32 = var (0000000000000000000000000xx1010x) %3:i32 = var (000000000000000000000000x11xx001) %4:i32 = var (0000000000000000000000000001xxx0) %5:i32 = phi %1, 19:i32, %2, %3, %4 %6:i32 = phi %0, 30:i32, %5, %5 infer %6 known from Souper: 000000000000000000000000xxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2 = block 4 %3:i32 = var (000000000000000000000000000000xx) %4 = block 3 %5:i32 = var (000000000000000000000000000000x0) %6:i32 = phi %1, %3, %5 %7:i32 = phi %0, %6, 1:i32 infer %7 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (0000000000000000000000000000000x) %2:i32 = subnsw 3567:i32, %1 %3:i32 = phi %0, 3566:i32, %2 infer %3 known from Souper: 0000000000000000000011011110111x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 3 %2:i32 = phi %1, 0:i32, 2:i32, 2:i32 %3:i32 = phi %0, %2, 2:i32 infer %3 known from Souper: 000000000000000000000000000000x0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 2 %2:i32 = var (0000000000000000xxxxxxxxxxxxxxxx) %3 = block 60 %4:i32 = phi %3, 926:i32, 893:i32, 902:i32, 917:i32, 938:i32, 929:i32, 932:i32, 935:i32, 915:i32, 909:i32, 913:i32, 907:i32, 1958:i32, 1925:i32, 1934:i32, 1949:i32, 1970:i32, 1961:i32, 1964:i32, 1967:i32, 1945:i32, 1939:i32, 1009:i32, 1003:i32, 1006:i32, 1025:i32, 1013:i32, 1019:i32, 2023:i32, 2017:i32, 2020:i32, 2039:i32, 2027:i32, 2033:i32, 953:i32, 941:i32, 947:i32, %2, %2, %2, %2, %2, %2, %2, %2, %2, %2, %2, %2, %2, %2, %2, %2, %2, %2, %2, %2, %2, %2, %2 %5:i32 = phi %1, %2, %4 %6:i32 = phi %0, %5, %4, %4 infer %6 known from Souper: 0000000000000000xxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i1 = var %3:i8 = zext %2 %4 = block 3 %5:i8 = var (0000000x) %6:i8 = var (0000000x) %7:i8 = phi %4, %5, %6, %6 %8:i8 = phi %0, %3, %7 infer %8 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1 = block 3 %2:i32 = phi %1, 1:i32, 1:i32, 0:i32 %3:i32 = phi %0, 1:i32, 1:i32, %2, 1:i32, 1:i32 infer %3 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i24 = trunc %0 %2:i24 = lshr 251:i24, %1 infer %2 known from Souper: 0000000000000000xxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i32 = trunc %0 %2:i1 = ult 61:i32, %1 %3:i32 = select %2, 61:i32, %1 infer %3 known from Souper: 00000000000000000000000000xxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1:i64 = var (000000000000000000000000000000000000000000000000000000000000000x) %2:i64 = shlnw %1, 32:i64 %3:i64 = phi %0, %2, 0:i64, 0:i64, 4294967296:i64 infer %3 known from Souper: 0000000000000000000000000000000x00000000000000000000000000000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00000000000000000000000000000000 souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0) %1:i64 = zext %0 %2:i64 = addnw 11:i64, %1 %3:i64 = urem %2, %1 infer %3 known from Souper: 000000000000000000000000000000000000000000000000000000000000xxx1 known from compiler: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 6 %1 = block 3 %2:i32 = phi %1, 1:i32, 0:i32, 0:i32 %3:i32 = phi %0, %2, %2, 1:i32, 1:i32, 1:i32, 1:i32 infer %3 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 3 %2:i8 = phi %1, 0:i8, 1:i8, 0:i8 %3:i8 = phi %0, %2, 1:i8, %2 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = phi %0, 2:i32, 1:i32 %2:i32 = addnsw 4294967295:i32, %1 infer %2 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 17 %1:i32 = phi %0, 0:i32, 1:i32, 2:i32, 3:i32, 4:i32, 5:i32, 6:i32, 7:i32, 8:i32, 9:i32, 10:i32, 11:i32, 12:i32, 13:i32, 14:i32, 15:i32, 16:i32 %2:i32 = addnw 1:i32, %1 infer %2 known from Souper: 000000000000000000000000000xxxxx known from compiler: 00000000000000000000000000xxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i8 = var %3:i8 = lshr %2, 7:i8 %4:i8 = phi %1, %3, %3 %5:i8 = phi %0, %4, %3 infer %5 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = urem 64:i32, %0 infer %1 known from Souper: 0000000000000000000000000x0xxxxx known from compiler: 0000000000000000000000000xxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i8 = var (0000000x) %3:i8 = phi %1, 1:i8, %2 %4:i8 = phi %0, 0:i8, %3 infer %4 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (00000000000000000000000000001xx0) %1:i32 = shl 1:i32, %0 infer %1 known from Souper: 00000000000000000x0x0x0x00000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (000000000000000000000000000xx000) %2:i32 = addnsw 4294967295:i32, %1 %3:i32 = shl 1:i32, %2 infer %3 known from Souper: 00000000x0000000x0000000x0000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 9 %1 = block 9 %2:i8 = var (0000000x) %3:i8 = phi %1, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, %2 %4:i1 = var %5:i8 = zext %4 %6:i8 = phi %0, 0:i8, %3, %3, %3, 1:i8, 1:i8, 1:i8, 1:i8, %5 infer %6 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 1 %1:i32 = var (0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %2:i32 = phi %0, %1 %3:i32 = var %4:i1 = ult %2, %3 %5:i32 = select %4, %2, %3 infer %5 known from Souper: 0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1:i8 = var (0000000x) %2:i64 = zext %1 %3:i64 = phi %0, %2, 0:i64, 0:i64, 0:i64, 0:i64 infer %3 known from Souper: 000000000000000000000000000000000000000000000000000000000000000x known from compiler: 00000000000000000000000000000000000000000000000000000000xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1 = block 2 %2:i8 = phi %1, 0:i8, 1:i8 %3 = block 2 %4 = block 2 %5:i8 = var (0000000x) %6:i8 = phi %3, %5, 0:i8 %7:i8 = phi %0, %2, 0:i8, 0:i8, %6, %6 infer %7 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 9 %1 = block 4 %2:i32 = phi %1, 0:i32, 0:i32, 0:i32, 2665:i32 %3 = block 4 %4:i32 = phi %3, 0:i32, 0:i32, 0:i32, 467:i32 %5:i32 = phi %0, 0:i32, %2, 2364:i32, 2502:i32, 2320:i32, %4, 101:i32, 257:i32, 32:i32 infer %5 known from Souper: 00000000000000000000x0xxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 3 %2:i8 = phi %1, 1:i8, 0:i8, 0:i8 %3:i8 = phi %0, 0:i8, 0:i8, %2 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i8 = var (000xx000) %2:i8 = or 36:i8, %1 %3:i8 = phi %0, %2, 36:i8, 20:i8 infer %3 known from Souper: 00xxx100 known from compiler: xxxxx1xx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i1 = var %1:i32 = select %0, 1:i32, 2:i32 %2:i1 = var %3:i32 = zext %2 %4:i32 = addnw %1, %3 infer %4 known from Souper: 000000000000000000000000000000xx known from compiler: 00000000000000000000000000000xxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i64 = var (0000000000000000000000000000000000000000000000000000000000xxxxxx) %2:i32 = trunc %1 %3:i32 = phi %0, %2, 0:i32 infer %3 known from Souper: 00000000000000000000000000xxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 2 %2:i8 = var (0000000x) %3:i8 = phi %1, %2, 0:i8 %4:i8 = phi %0, 1:i8, 1:i8, %3 infer %4 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i16 = var (00000000000000xx) %1:i32 = zext %0 %2:i32 = var %3:i1 = slt %1, %2 %4:i32 = select %3, %2, %1 infer %4 known from Souper: 0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (00000000000000000000000x000x0000) %2:i32 = xor 260:i32, %1 %3:i1 = var %4:i32 = select %3, 16:i32, 0:i32 %5:i32 = phi %0, %2, %4 infer %5 known from Souper: 00000000000000000000000x000x0x00 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00000000000000000000000000000000) %1:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %2:i64 = or %0, %1 %3:i32 = var %4:i64 = zext %3 %5:i64 = urem %2, %4 infer %5 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx llvm is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (0000000000000000000000000000000x) %2:i32 = xor 1:i32, %1 %3:i32 = phi %0, %2, 0:i32 infer %3 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2 = block 4 %3:i64 = var (000000000000000000000000000000000000000000000000000000000000x000) %4 = block 2 %5:i64 = phi %4, %3, 0:i64 %6:i64 = phi %1, %3, %5 %7:i64 = phi %0, %6, %5 infer %7 known from Souper: 000000000000000000000000000000000000000000000000000000000000x000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i16 = var %1:i64 = zext %0 %2:i64 = lshr 1560:i64, %1 infer %2 known from Souper: 00000000000000000000000000000000000000000000000000000xxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i1 = ult 31:i32, %0 %2:i32 = select %1, 31:i32, %0 infer %2 known from Souper: 000000000000000000000000000xxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i1 = var %1:i32 = var (00000000000000000000000000000xxx) %2:i32 = select %0, 7:i32, %1 %3:i32 = shl 1:i32, %2 infer %3 known from Souper: 000000000000000000000000xxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (000000000000000000000000000xxxxx) %1:i32 = shl 4294967040:i32, %0 %2:i64 = var %3:i32 = trunc %2 %4:i32 = and %1, %3 infer %4 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxx00000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (00000000000000000000xxxxx1x0x011) %2:i32 = var (00000000000000000000xxxxx1x0x010) %3:i32 = phi %0, %1, %2 %4:i64 = zext %3 infer %4 known from Souper: 0000000000000000000000000000000000000000000000000000xxxxx1x0x01x known from compiler: 0000000000000000000000000000000000000000000000000000xxxxxxx0x0xx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i32 = phi %0, 1:i32, 2:i32, 1:i32 %2:i32 = addnsw 4294967295:i32, %1 infer %2 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i1 = var %2:i8 = zext %1 %3:i1 = var %4:i8 = select %3, 1:i8, %2 %5:i8 = phi %0, %2, %4 infer %5 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i64 = var %2:i32 = trunc %1 %3:i32 = addnsw 4294967295:i32, %2 %4:i32 = and %3, %2 infer %4 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 4 %2:i8 = phi %1, 0:i8, 0:i8, 1:i8, 1:i8 %3:i8 = phi %0, 1:i8, %2 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i1 = var %1:i64 = var (00000000000000000000000000000000000000000000000000000000000000xx) %2:i64 = shl 1:i64, %1 %3:i64 = select %0, %2, 0:i64 infer %3 known from Souper: 000000000000000000000000000000000000000000000000000000000000xxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1:i1 = var %2:i64 = var (000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %3:i64 = select %1, %2, 0:i64 %4:i64 = phi %0, 0:i64, 0:i64, 0:i64, %3 infer %4 known from Souper: 000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 8 %1:i32 = var %2:i32 = var %3:i32 = phi %0, %1, %2, %1, %2, %1, %1, %1, %1 %4:i32 = add 4294967295:i32, %3 %5:i32 = or %3, %4 infer %5 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx1 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i24 = trunc %0 %2:i24 = lshr 4194300:i24, %1 infer %2 known from Souper: 00xxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2 = block 5 %3:i8 = var (0000000x) %4:i8 = phi %1, %3, 1:i8 %5:i8 = phi %0, 0:i8, %4 infer %5 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i1 = var %2:i8 = select %1, 49:i8, 48:i8 %3 = block 2 %4:i8 = phi %3, 48:i8, 49:i8 %5:i8 = phi %0, %2, 48:i8, %4 infer %5 known from Souper: 0011000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i16 = var %1:i32 = zext %0 %2:i32 = udiv 16:i32, %1 infer %2 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 000000000000000000000000000xxxxx llvm is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 4 %2:i8 = var (0000000x) %3:i8 = phi %1, %2, %2, %2, 1:i8 %4:i8 = phi %0, %3, 0:i8 infer %4 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %1:i32 = trunc %0 %2:i32 = add 4294967295:i32, %1 %3:i32 = and %2, %1 infer %3 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1:i64 = var (000000000000000000000000000000000000000000000000000000000000000x) %2:i16 = trunc %1 %3:i16 = phi %0, 0:i16, 1:i16, 0:i16, %2 infer %3 known from Souper: 000000000000000x known from compiler: xxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i72 = var (0000000000000000000000000000000000000000000000x0000000000000000000000000) %2:i72 = xor 33554432:i72, %1 %3:i72 = phi %0, 0:i72, %2 infer %3 known from Souper: 0000000000000000000000000000000000000000000000x0000000000000000000000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i64 = var (0000000000000000000000000000000000000000000000000000000000000xxx) %3:i64 = var %4:i64 = and 7:i64, %3 %5:i64 = phi %1, %2, %4 %6:i64 = phi %0, %5, %4 infer %6 known from Souper: 0000000000000000000000000000000000000000000000000000000000000xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i32 = phi %1, 4:i32, 1:i32 %3:i32 = phi %0, %2, 1:i32 infer %3 known from Souper: 00000000000000000000000000000x0x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i32 = var (0000000000000000000000000000000x) %2:i32 = var (0000000000000000000000000000000x) %3:i32 = addnw %1, %2 %4:i32 = var (00000000000000000000000000000xxx) %5:i32 = addnw %4, %2 %6:i32 = phi %0, %3, %5, 0:i32 infer %6 known from Souper: 0000000000000000000000000000xxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i64 = var (000000000000000000000000xxxxxxxx00000000000000000000000000000000) %2:i64 = or 16:i64, %1 %3:i64 = phi %0, %2, 16:i64 infer %3 known from Souper: 000000000000000000000000xxxxxxxx00000000000000000000000000010000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx1xxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1:i1 = var %2:i64 = var (0xxxxxxxxxxxxxxx000000000000000000000000000000000000000000000000) %3:i64 = select %1, 0:i64, %2 %4:i64 = phi %0, 9223090561878065152:i64, 9223090561878065152:i64, 0:i64, %3 infer %4 known from Souper: 0xxxxxxxxxxxxxxx000000000000000000000000000000000000000000000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i1 = slt 0:i64, %0 %2:i64 = select %1, %0, 0:i64 infer %2 known from Souper: 0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 13 %1 = block 2 %2:i32 = phi %1, 3:i32, 2:i32 %3 = block 6 %4:i32 = phi %3, 3:i32, 2:i32, 2:i32, 2:i32, 2:i32, 2:i32 %5:i32 = phi %0, 0:i32, %2, 0:i32, 1:i32, 0:i32, %4, 0:i32, 3:i32, 2:i32, 0:i32, 0:i32, 0:i32, 0:i32 infer %5 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1 = block 2 %2:i32 = var (000000000000000000000000000000xx) %3:i32 = phi %1, 3:i32, %2 %4:i32 = phi %0, 2:i32, 1:i32, %3, 2:i32, 1:i32 infer %4 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 4 %2:i32 = var (0000000000000000000000000000000x) %3:i32 = phi %1, 2:i32, %2, 2:i32, 2:i32 %4:i32 = phi %0, %3, 2:i32 infer %4 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1:i32 = var (000000000000000000000000000100x0) %2:i32 = var (000000000000000000000000000111x0) %3:i32 = var (000000000000000000000000000101x0) %4:i32 = phi %0, %1, %2, %3, %1 %5:i8 = trunc %4 infer %5 known from Souper: 0001xxx0 known from compiler: 000xxxx0 souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1:i1 = var %2:i32 = select %1, 167:i32, 165:i32 %3:i32 = select %1, 189:i32, 188:i32 %4:i1 = var %5:i32 = var (000000000000000000000000110000xx) %6:i32 = var (0000000000000000000000001011010x) %7:i32 = select %4, %5, %6 %8:i32 = select %1, 201:i32, 199:i32 %9:i32 = phi %0, %2, %3, %7, %8 infer %9 known from Souper: 0000000000000000000000001xxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i1 = slt 4:i32, %0 %2:i32 = select %1, %0, 4:i32 infer %2 known from Souper: 0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %3:i64 = phi %1, 9:i64, %2 %4:i64 = phi %0, 22:i64, %3 infer %4 known from Souper: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (00000000000000000000xxxxxxxxxxxx) %1:i64 = zext %0 %2 = block 3 %3:i32 = var (00000000000000000000000000000xxx) %4:i64 = zext %3 %5:i64 = shl %1, %4 infer %5 known from Souper: 000000000000000000000000000000000000000000000xxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (0000000000000000000000000000000000000000000000000000xxxxxxxxxxxx) %1:i64 = var (000000000000000000000000000000000000000000000000xxxx000000000000) %2:i64 = or %0, %1 %3:i32 = var (000000000000000000000000000x0000) %4:i64 = zext %3 %5:i64 = shl %2, %4 infer %5 known from Souper: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 6 %2:i32 = phi %1, 0:i32, 1:i32, 1:i32, 1:i32, 1:i32, 1:i32 %3:i32 = phi %0, %2, 0:i32 infer %3 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (0000000000000000000000000000xxxx) %1:i32 = cttz %0 %2:i64 = zext %1 infer %2 known from Souper: 0000000000000000000000000000000000000000000000000000000000x000xx known from compiler: 0000000000000000000000000000000000000000000000000000000000xxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i16 = var (00000000000000xx) %2:i32 = zext %1 %3:i16 = var (00000000000000xx) %4:i32 = zext %3 %5:i32 = phi %0, %2, 0:i32, %4 infer %5 known from Souper: 000000000000000000000000000000xx known from compiler: 0000000000000000xxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1:i64 = var (000000000000000000000000000000000000000000000000000000000000000x) %2:i64 = or 2:i64, %1 %3:i64 = phi %0, %2, 1:i64, 1:i64, 1:i64 infer %3 known from Souper: 00000000000000000000000000000000000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i8 = var (0000000x) %3:i8 = phi %1, 0:i8, %2 %4:i8 = phi %0, 1:i8, %3 infer %4 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 1 %1:i32 = var (0000xxxxxxxxxxxxxxxxxxxxxxxxxxxx) %2:i32 = var (000000000xxxxxxxxxxxxxxxxxxxxxxx) %3:i32 = xor %1, %2 %4:i32 = phi %0, %3 infer %4 known from Souper: 0000xxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (00000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %1:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %2:i64 = addnw %0, %1 %3:i32 = var %4:i64 = zext %3 %5:i64 = addnw %2, %4 infer %5 known from Souper: 0000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i32 = var %2:i32 = var (00000000000000000000000000xxxxxx) %3:i32 = phi %0, %1, %2, 64:i32 %4:i1 = ult 31:i32, %3 %5:i32 = select %4, 31:i32, %3 infer %5 known from Souper: 000000000000000000000000000xxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1 = block 2 %2:i32 = phi %1, 1:i32, 0:i32 %3:i32 = phi %0, %2, 0:i32, 0:i32, 0:i32 infer %3 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = and 18446744073709551612:i64, %0 %2:i1 = slt %1, 0:i64 %3:i64 = select %2, 0:i64, %1 infer %3 known from Souper: 0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00 souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 4 %2:i32 = phi %1, 2:i32, 2:i32, 2:i32, 1:i32 %3 = block 4 %4:i32 = phi %3, 1:i32, 2:i32, 2:i32, 1:i32 %5:i32 = phi %0, %2, %4 infer %5 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 3 %2 = block 3 %3:i32 = var (000000000000000000000000000000xx) %4:i32 = phi %1, 2:i32, %3, %3 %5:i32 = phi %0, 3:i32, %4, %4 infer %5 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = add 255:i32, %0 %2:i32 = and 255:i32, %0 %3:i32 = and %1, %2 infer %3 known from Souper: 000000000000000000000000xxxxxxx0 known from compiler: 000000000000000000000000xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = var %2:i64 = and 4294967295:i64, %1 %3:i64 = add %0, %2 %4:i64 = urem %3, %2 infer %4 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx llvm is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i1 = var %1:i32 = select %0, 8:i32, 9:i32 %2:i32 = shl 1:i32, %1 infer %2 known from Souper: 0000000000000000000000xx00000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 36 %1:i32 = var (0000000000000000000000000xx10x0x) %2:i32 = var (0000000000000000000000000xx10x0x) %3:i32 = var (0000000000000000000000000xx10x0x) %4:i32 = var (0000000000000000000000000xx10x0x) %5:i32 = phi %0, 16:i32, 20:i32, 20:i32, 113:i32, 113:i32, 20:i32, 20:i32, 20:i32, 20:i32, 20:i32, 20:i32, 21:i32, 21:i32, 20:i32, 20:i32, 21:i32, 21:i32, 21:i32, 21:i32, 21:i32, 21:i32, 21:i32, 21:i32, 20:i32, 20:i32, 20:i32, 113:i32, 113:i32, 20:i32, 20:i32, 20:i32, 20:i32, %1, %2, %3, %4 %6:i32 = and 116:i32, %5 infer %6 known from Souper: 0000000000000000000000000xx10x00 known from compiler: 0000000000000000000000000xxx0x00 souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 5 %2:i8 = var (0000000x) %3:i8 = phi %1, 0:i8, %2, 0:i8, 0:i8, 0:i8 %4:i1 = var %5:i8 = select %4, 1:i8, %3 %6:i8 = phi %0, %3, %3, %5 infer %6 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 4 %2:i32 = var (0000000000000000000000000000000x) %3:i32 = phi %1, 2:i32, 1:i32, %2, 1:i32 %4:i32 = phi %0, 2:i32, %3 infer %4 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 15 %1 = block 6 %2:i32 = var (0000000000000000000000000000000x) %3:i32 = phi %1, %2, 0:i32, 0:i32, 1:i32, 2:i32, 2:i32 %4:i32 = var (0000000000000000000000000000xxxx) %5:i32 = addnw %3, %4 %6:i32 = var (000000000000000000000000000xxxxx) %7:i32 = var (000000000000000000000000000000xx) %8:i32 = addnw %6, %7 %9:i32 = addnw 3:i32, %3 %10:i32 = addnw 2:i32, %3 %11:i32 = addnw 1:i32, %3 %12:i32 = var (0000000000000000000000000000xxxx) %13:i32 = addnw 1:i32, %12 %14:i32 = var (000000000000000000000000000xxxxx) %15:i32 = addnw 1:i32, %14 %16:i32 = var (00000000000000000000000000000xxx) %17:i32 = addnw 1:i32, %16 %18:i32 = addnw 5:i32, %16 %19:i32 = phi %0, %5, %8, %9, %10, %11, %3, %10, %10, %10, %11, %13, %15, %17, %18, %3 infer %19 known from Souper: 00000000000000000000000000xxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i32 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00) %3:i32 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0) %4:i32 = phi %1, %2, %3 %5:i32 = phi %0, 2:i32, %4 infer %5 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i1 = ult %0, 6:i32 %2:i32 = select %1, %0, 15:i32 infer %2 known from Souper: 0000000000000000000000000000xxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i1 = var %2:i32 = var (000000000000000xxxxxxxxxxxxxxx11) %3:i32 = select %1, 0:i32, %2 %4:i32 = var %5:i32 = lshr %4, 22:i32 %6:i32 = phi %0, %3, %5 infer %6 known from Souper: 000000000000000xxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 1 %2:i1 = var %3:i8 = zext %2 %4 = block 2 %5:i8 = phi %4, 0:i8, 1:i8 %6:i8 = phi %0, %3, %5 infer %6 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 4 %2:i8 = phi %1, 0:i8, 0:i8, 1:i8, 0:i8 %3 = block 2 %4:i8 = phi %3, %2, 1:i8 %5:i8 = phi %0, %2, %4 infer %5 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 6 %1:i64 = var %2:i64 = add 524288:i64, %1 %3:i64 = add 524296:i64, %1 %4:i64 = or %2, %3 infer %4 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx1xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i8 = var %1:i32 = sext %0 %2:i32 = addnsw 299:i32, %1 infer %2 known from Souper: 00000000000000000000000xxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = add 4294966955:i32, %0 %2:i32 = lshr 16777059:i32, %1 infer %2 known from Souper: 00000000xxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i32 = phi %1, 16:i32, 8:i32 %3 = block 5 %4:i32 = phi %3, 2:i32, 1:i32, 4:i32, 4:i32, 4:i32 %5:i32 = phi %0, %2, %4 infer %5 known from Souper: 000000000000000000000000000xxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1:i8 = var (0000000x) %2:i32 = zext %1 %3:i32 = phi %0, 2:i32, %2, 2:i32, 2:i32 infer %3 known from Souper: 000000000000000000000000000000xx known from compiler: 000000000000000000000000xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0000) %1:i65 = uadd.with.overflow %0, 8:i64 %2:i1 = extractvalue %1, 1:i32 infer %2 known from Souper: 0 known from compiler: x souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = lshr 255:i32, %0 %2:i64 = sext %1 infer %2 known from Souper: 00000000000000000000000000000000000000000000000000000000xxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1 = block 2 %2:i32 = phi %1, 55:i32, 40:i32 %3:i32 = phi %0, 40:i32, 55:i32, %2, 40:i32, 40:i32 infer %3 known from Souper: 000000000000000000000000001xxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 4 %2:i8 = phi %1, 4:i8, 4:i8, 9:i8, 0:i8 %3:i8 = phi %0, 6:i8, %2, 4:i8 infer %3 known from Souper: 0000xxxx known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i16 = trunc %0 %2:i16 = lshr 395:i16, %1 infer %2 known from Souper: 0000000xxxxxxxxx known from compiler: xxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 2 %2 = block 2 %3:i32 = phi %2, 84:i32, 81:i32 %4 = block 2 %5:i32 = phi %4, 84:i32, 81:i32 %6:i32 = phi %1, %3, %5 %7:i32 = phi %0, %6, %5, %3 infer %7 known from Souper: 00000000000000000000000001010x0x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2 = block 3 %3:i8 = var (0000000x) %4:i8 = phi %1, 1:i8, %3 %5:i8 = phi %0, %4, 1:i8 infer %5 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = ashrexact %0, 3:i64 %2:i1 = ult %1, 10:i64 %3:i64 = select %2, %1, 10:i64 infer %3 known from Souper: 000000000000000000000000000000000000000000000000000000000000xxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i1 = var %2:i32 = select %1, 3:i32, 2:i32 %3:i32 = var (0000000000000000000000000000000x) %4:i32 = or 2:i32, %3 %5:i32 = phi %0, %2, %4, 2:i32 infer %5 known from Souper: 0000000000000000000000000000001x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx1x souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 2 %2 = block 2 %3:i64 = phi %2, 7:i64, 15:i64 %4:i64 = phi %1, 31:i64, %3 %5:i64 = phi %0, %4, %4, %3 infer %5 known from Souper: 00000000000000000000000000000000000000000000000000000000000xx111 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %1:i64 = mulnw 48:i64, %0 %2:i64 = addnw 20:i64, %1 infer %2 known from Souper: 00000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0100 known from compiler: 0000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0100 souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i32 = phi %1, 0:i32, 1:i32 %3:i32 = phi %0, %2, 0:i32 infer %3 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i1 = ult 28:i32, %0 %2:i32 = add 3:i32, %0 %3:i32 = select %1, 0:i32, %2 infer %3 known from Souper: 000000000000000000000000000xxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = and 3:i32, %0 %2:i1 = var %3:i32 = zext %2 %4:i32 = lshr %1, %3 infer %4 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 6 %2:i32 = phi %1, 2:i32, 1:i32, 2:i32, 2:i32, 2:i32, 0:i32 %3 = block 2 %4 = block 5 %5:i32 = var (0000000000000000000000000000001x) %6:i32 = phi %3, %5, %2 %7:i32 = phi %0, %2, %6 infer %7 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (000000000000000000000000000xxxxx) %1:i32 = shlnw %0, 3:i32 %2:i32 = lshr 65537:i32, %1 infer %2 known from Souper: 000000000000000x0000000x0000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i1 = var %2:i8 = zext %1 %3 = block 3 %4:i8 = var (0000000x) %5:i8 = phi %3, 0:i8, %4, %4 %6:i8 = phi %0, %2, %5 infer %6 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1 = block 5 %2:i8 = phi %1, 0:i8, 0:i8, 0:i8, 1:i8, 1:i8 %3:i8 = phi %0, 0:i8, %2, 1:i8, 1:i8, 1:i8 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1 = block 2 %2:i8 = phi %1, 0:i8, 1:i8 %3:i8 = phi %0, 0:i8, 0:i8, %2, %2 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 1 %1:i32 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0) %2:i32 = addnuw 2:i32, %1 %3:i32 = phi %0, %2 infer %3 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (0000000000000000000000000000000000000000000000000000000000xxxxx0) %1:i64 = shl 1:i64, %0 %2:i64 = xor 18446744073709551615:i64, %1 infer %2 known from Souper: 1x1x1x1x1x1x1x1x1x1x1x1x1x1x1x1x1x1x1x1x1x1x1x1x1x1x1x1x1x1x1x1x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 3 %2 = block 3 %3:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %4:i64 = phi %2, 0:i64, 0:i64, %3 %5:i64 = phi %1, %4, 0:i64, %3 %6:i64 = phi %0, %5, %4 infer %6 known from Souper: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 3 %2:i32 = phi %1, 1:i32, 0:i32, 0:i32 %3:i32 = phi %0, %2, 3:i32, 3:i32 infer %3 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1 = block 3 %2 = block 2 %3:i8 = var (0000000x) %4:i8 = phi %1, 0:i8, %3, 0:i8 %5 = block 2 %6:i8 = var (0000000x) %7:i8 = phi %5, %6, %4 %8:i8 = phi %0, %4, %4, %7, %4 infer %8 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 3 %2 = block 2 %3:i8 = var (0000000x) %4:i8 = phi %1, 0:i8, %3, 0:i8 %5:i8 = phi %0, 0:i8, %4 infer %5 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i1 = var %2:i32 = select %1, 4:i32, 1:i32 %3 = block 4 %4:i32 = phi %3, 2:i32, 3:i32, 3:i32, 4:i32 %5:i32 = phi %0, %2, %4 infer %5 known from Souper: 00000000000000000000000000000xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var %2:i32 = ctlz %1 %3:i32 = var (000000000000000000000000000xxxxx) %4:i32 = addnw 1:i32, %3 %5:i32 = phi %0, %2, %4 infer %5 known from Souper: 00000000000000000000000000xxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i16 = trunc %0 %2:i16 = lshr 3855:i16, %1 infer %2 known from Souper: 0000xxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i8 = var %1:i32 = sext %0 %2:i32 = addnsw 162:i32, %1 infer %2 known from Souper: 00000000000000000000000xxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1 = block 4 %2:i8 = var (0000000x) %3:i8 = phi %1, 0:i8, %2, %2, %2 %4:i8 = phi %0, %3, 0:i8, 0:i8, %3 infer %4 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1 = block 2 %2:i64 = var %3:i64 = sub %0, %2 %4:i64 = urem %3, 104:i64 %5:i64 = sub %3, %4 infer %5 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1 = block 3 %2:i32 = phi %1, 1:i32, 0:i32, 1:i32 %3:i32 = phi %0, 3:i32, 3:i32, 2:i32, %2 infer %3 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 3 %2:i8 = var (0000000x) %3:i8 = phi %1, 1:i8, %2, 1:i8 %4 = block 1 %5:i8 = var (0000000x) %6:i8 = phi %4, %5 %7:i8 = phi %0, %3, %6 infer %7 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 14 %2:i32 = var (0000000000000000000000000000000x) %3:i32 = phi %1, 1:i32, 1:i32, 0:i32, 5:i32, 6:i32, 3:i32, 2:i32, 0:i32, %2, 1:i32, 0:i32, 0:i32, 0:i32, 0:i32 %4:i32 = phi %0, 0:i32, %3 infer %4 known from Souper: 00000000000000000000000000000xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1 = block 7 %2:i8 = phi %1, 1:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8 %3 = block 4 %4:i8 = phi %3, %2, 0:i8, %2, %2 %5:i8 = phi %0, %2, %2, %4, %2, %2 infer %5 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (00000000000000000000000000000xxx) %2:i64 = zext %1 %3:i64 = phi %0, %2, 0:i64 infer %3 known from Souper: 0000000000000000000000000000000000000000000000000000000000000xxx known from compiler: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (0000000000000000000xxxxx00000000) %1:i32 = var (000000000000000000000000xxxxxxxx) %2:i32 = or %0, %1 %3:i32 = var (0000000000000000000000000000000x) %4:i32 = var (0000000000000000000000000000111x) %5:i32 = shl %3, %4 %6:i32 = or %2, %5 infer %6 known from Souper: 0000000000000000xx0xxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 20 %1 = block 2 %2:i8 = phi %1, 1:i8, 0:i8 %3:i8 = phi %0, 0:i8, 0:i8, 0:i8, %2, %2, %2, %2, %2, %2, %2, 0:i8, 0:i8, %2, %2, %2, %2, %2, %2, %2, %2 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (00000000000000000000000000000xx0) %2:i64 = zext %1 %3:i64 = phi %0, %2, 4:i64 infer %3 known from Souper: 0000000000000000000000000000000000000000000000000000000000000xx0 known from compiler: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (00000000000000000000000000000000000000000000000000000000xxxxxxxx) %1:i64 = addnw 4294967295:i64, %0 %2:i8 = var %3:i64 = zext %2 %4:i64 = addnw %1, %3 infer %4 known from Souper: 0000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var %2:i64 = zext %1 %3:i64 = addnw 1:i64, %2 %4:i64 = phi %0, %2, %3 infer %4 known from Souper: 0000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 38 %1:i32 = var (0000000000000000000000000000000x) %2:i32 = subnsw 17:i32, %1 %3:i1 = var %4:i32 = select %3, 38:i32, 37:i32 %5:i32 = phi %0, 1:i32, 1:i32, 27:i32, 600:i32, 35:i32, 300:i32, 34:i32, 32:i32, 39:i32, 31:i32, 30:i32, 29:i32, 28:i32, 27:i32, 33:i32, 22:i32, 9:i32, 36:i32, 20:i32, 10:i32, 13:i32, 14:i32, 26:i32, 25:i32, 24:i32, 21:i32, %2, 15:i32, 11:i32, 18:i32, 19:i32, 12:i32, 8:i32, 6:i32, 7:i32, 1:i32, 5:i32, %4 infer %5 known from Souper: 0000000000000000000000xx0xxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1 = block 2 %2:i8 = phi %1, 1:i8, 0:i8 %3 = block 2 %4 = block 2 %5:i8 = var (0000000x) %6:i8 = phi %3, 1:i8, %5 %7:i8 = phi %0, 1:i8, %2, 1:i8, %6 infer %7 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1:i1 = var %2:i32 = select %1, 10:i32, 4:i32 %3:i32 = var (0000000000000000000000000000000x) %4:i32 = subnsw 12:i32, %3 %5:i32 = subnsw 4:i32, %3 %6:i32 = phi %0, 4:i32, %2, %4, %5, 0:i32 infer %6 known from Souper: 0000000000000000000000000000xxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i1 = var %1:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %2:i64 = select %0, %1, 0:i64 %3:i64 = bswap %2 infer %3 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00000000000000000000000000000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 1 %1:i64 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0) %2:i64 = addnw 2:i64, %1 %3:i64 = phi %0, %2 infer %3 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = ashrexact %0, 2:i64 %2:i64 = and 18446744073709551612:i64, %1 %3:i64 = subnsw %1, %2 infer %3 known from Souper: 00000000000000000000000000000000000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1:i16 = var (000000000000000x) %2:i8 = trunc %1 %3:i8 = phi %0, %2, 0:i8, 1:i8, 1:i8 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = and 18446744073709547520:i64, %0 %2:i64 = sub %0, %1 infer %2 known from Souper: 0000000000000000000000000000000000000000000000000000xxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 19 %2:i32 = var (000000000000000000000000000000x1) %3:i32 = phi %1, 1:i32, %2, 1:i32, 1:i32, 1:i32, 1:i32, 1:i32, 1:i32, 1:i32, 1:i32, 1:i32, 1:i32, 1:i32, 1:i32, 1:i32, 1:i32, 1:i32, 1:i32, 2:i32 %4:i32 = phi %0, 2:i32, %3 infer %4 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 6 %1:i1 = var %2:i8 = select %1, 0:i8, 16:i8 %3:i1 = var %4:i8 = select %3, 128:i8, 16:i8 %5 = block 4 %6:i8 = var (000x0000) %7:i8 = phi %5, 16:i8, 16:i8, %6, 0:i8 %8:i8 = phi %0, %2, 16:i8, %4, 0:i8, 0:i8, %7 infer %8 known from Souper: x00x0000 known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i64 = sext %0 %2:i64 = lshr 284022022208:i64, %1 infer %2 known from Souper: 0000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = and 4294967295:i64, %0 %2:i64 = bswap %1 infer %2 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00000000000000000000000000000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i64 = var %2:i64 = var %3:i64 = phi %0, %1, %2 %4:i64 = ashr %3, 63:i64 %5:i64 = xor %3, %4 infer %5 known from Souper: 0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = sub 32:i32, %0 %2:i32 = lshr 72:i32, %1 infer %2 known from Souper: 0000000000000000000000000xxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (000000000000000000000000000000000000000000000000000000000000xxxx) %1:i64 = ctpop %0 %2:i64 = subnsw 4:i64, %1 infer %2 known from Souper: 0000000000000000000000000000000000000000000000000000000000000xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %3:i64 = phi %1, %2, 0:i64 %4:i64 = phi %0, 0:i64, %3 infer %4 known from Souper: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i1 = var %2:i32 = select %1, 2:i32, 0:i32 %3:i32 = zext %1 %4 = block 2 %5:i32 = phi %4, 3:i32, 4:i32 %6:i32 = phi %0, %2, %3, %5 infer %6 known from Souper: 00000000000000000000000000000xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = var %2:i32 = add %0, %1 %3:i32 = add 4294967295:i32, %2 %4:i32 = and %3, %2 infer %4 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = and 4294967295:i64, %0 %2:i64 = shl 2:i64, %1 infer %2 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i32 = var %3:i64 = zext %2 %4 = block 2 %5 = block 3 %6:i64 = var (000000000000000000000000000000000000000000000000000000000000xx0x) %7:i64 = phi %4, %6, %3 %8:i64 = phi %0, %3, %7 infer %8 known from Souper: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i1 = var %2:i8 = zext %1 %3 = block 4 %4:i8 = var (0000000x) %5:i8 = var (0000000x) %6:i8 = phi %3, %4, %5, %5, %4 %7:i8 = phi %0, 1:i8, %2, %6 infer %7 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx000) %1:i64 = add 18446744073709551560:i64, %0 %2:i64 = urem %1, 56:i64 infer %2 known from Souper: 0000000000000000000000000000000000000000000000000000000000xxx000 known from compiler: 0000000000000000000000000000000000000000000000000000000000xxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 4 %2:i8 = var (0000000x) %3:i8 = phi %1, %2, %2, %2, %2 %4 = block 1 %5:i8 = phi %4, %2 %6:i8 = phi %0, %3, %5 infer %6 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 6 %1:i1 = var %2:i32 = select %1, 66:i32, 34:i32 %3:i32 = select %1, 70:i32, 38:i32 %4:i32 = select %1, 69:i32, 37:i32 %5:i32 = select %1, 68:i32, 36:i32 %6:i32 = select %1, 67:i32, 35:i32 %7:i1 = var %8:i32 = var (0000000000000000000000000xx00001) %9:i32 = select %7, %8, %2 %10:i32 = phi %0, %2, %3, %4, %5, %6, %9 infer %10 known from Souper: 0000000000000000000000000xx00xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1 = block 6 %2:i32 = phi %1, 2:i32, 2:i32, 2:i32, 2:i32, 1:i32, 1:i32 %3:i32 = addnw 1:i32, %2 %4:i32 = phi %0, %3, %2, 1:i32, 1:i32 infer %4 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (00000000000000xxxxxxxxxxxxxxx000) %2:i64 = zext %1 %3:i64 = phi %0, %2, 0:i64 infer %3 known from Souper: 0000000000000000000000000000000000000000000000xxxxxxxxxxxxxxx000 known from compiler: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1:i64 = phi %0, 1:i64, 8:i64, 4:i64, 2:i64, 2:i64 %2:i64 = addnsw 18446744073709551615:i64, %1 infer %2 known from Souper: 0000000000000000000000000000000000000000000000000000000000000xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 2 %2:i32 = phi %1, 0:i32, 2:i32 %3:i32 = phi %0, 2:i32, %2, 1:i32 infer %3 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (0000000000000000000000000000xxx0) %1:i32 = shl 1:i32, %0 infer %1 known from Souper: 00000000000000000x0x0x0x0x0x0x0x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 2 %2 = block 7 %3:i64 = var (00000000000000000000000000000000000000000000000000000000000000xx) %4:i64 = phi %1, 1:i64, %3 %5:i64 = phi %0, %4, 1:i64, 0:i64 infer %5 known from Souper: 00000000000000000000000000000000000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 7 %2 = block 3 %3:i32 = var (000000000000000000000101100xxxxx) %4:i32 = phi %1, 0:i32, 0:i32, 1422:i32, 1422:i32, 1423:i32, 1424:i32, %3 %5:i32 = phi %0, 0:i32, %4 infer %5 known from Souper: 000000000000000000000x0xx00xxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i1 = var %2:i8 = zext %1 %3 = block 4 %4:i8 = var (0000000x) %5:i8 = phi %3, %4, 1:i8, 1:i8, 1:i8 %6:i8 = phi %0, %2, %5 infer %6 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = and 65535:i64, %0 %2:i1 = var %3:i64 = select %2, 8:i64, 0:i64 %4:i64 = lshr %1, %3 infer %4 known from Souper: 000000000000000000000000000000000000000000000000xxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 7 %1:i32 = var (0000000000000000000000000010xx01) %2:i32 = var (0000000000000000000000000010xx00) %3:i32 = var (00000000000000000000000000100x11) %4:i32 = var (00000000000000000000000000100x10) %5:i32 = phi %0, 33:i32, %1, %2, %3, %4, 32:i32, 32:i32 %6:i32 = and 43:i32, %5 infer %6 known from Souper: 0000000000000000000000000010x0xx known from compiler: 00000000000000000000000000x0x0xx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i64 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00000000000000000000000000000000) %2:i64 = or 3:i64, %1 %3:i64 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00000000000000000000000000000000) %4:i64 = or 9:i64, %3 %5:i64 = phi %0, %2, %4 infer %5 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0000000000000000000000000000x0x1 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx1 souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1 = block 2 %2 = block 2 %3:i32 = var (0000000000000000000000000000000x) %4:i32 = phi %1, 0:i32, %3 %5:i32 = phi %0, %4, 1:i32, 1:i32, 1:i32 infer %5 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (000000000000000000000000x0000001) %1:i1 = eq 129:i32, %0 %2:i32 = select %1, 0:i32, %0 infer %2 known from Souper: 0000000000000000000000000000000x known from compiler: 000000000000000000000000x000000x souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1:i32 = var (000000000000000000000000000000x0) %2:i32 = or 13:i32, %1 %3:i32 = phi %0, 15:i32, 15:i32, 0:i32, %2 infer %3 known from Souper: 0000000000000000000000000000xxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1:i64 = var %2:i64 = var %3:i64 = sub %1, %2 %4:i1 = ult %3, 2:i64 %5:i64 = select %4, %3, 2:i64 infer %5 known from Souper: 00000000000000000000000000000000000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i1 = var %2 = block 4 %3:i32 = phi %2, 1:i32, 0:i32, 2:i32, 3:i32 %4:i32 = select %1, 3:i32, %3 %5:i32 = phi %0, %4, %3, 1:i32 infer %5 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i64 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00000000000000000000000000000000) %2:i64 = add 4294967296:i64, %1 %3:i64 = phi %0, %2, 0:i64, 0:i64 infer %3 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00000000000000000000000000000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 6 %1 = block 2 %2:i32 = var (0000000000000000000000000000000x) %3:i32 = phi %1, 1:i32, %2 %4:i32 = phi %0, 0:i32, %3, 1:i32, 1:i32, 1:i32, 1:i32 infer %4 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 3 %2 = block 2 %3:i8 = var (0000000x) %4:i8 = phi %1, 0:i8, 0:i8, %3 %5:i8 = phi %0, %4, 0:i8 infer %5 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %1:i64 = mulnw 40:i64, %0 %2:i64 = addnw 24:i64, %1 infer %2 known from Souper: 00000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx000 known from compiler: 0000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx000 souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 5 %2 = block 3 %3:i32 = var (000000000000000000000000000000xx) %4:i32 = phi %1, 0:i32, %3, 0:i32, 0:i32, 0:i32 %5:i32 = phi %0, 0:i32, %4 infer %5 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i32 = var (00000000000000000000000000000xxx) %2:i32 = var (0000000000000000000000000000000x) %3:i32 = addnw %1, %2 %4:i32 = var (0000000000000000000000000000000x) %5:i32 = addnw %4, %2 %6:i32 = phi %0, %3, %5, 0:i32 infer %6 known from Souper: 0000000000000000000000000000xxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (000xxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %2:i32 = shlnuw %1, 3:i32 %3:i32 = add 4294967288:i32, %2 %4:i32 = phi %0, %2, %3 infer %4 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxx000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (00000000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %1:i64 = var %2:i64 = udiv %0, %1 %3:i32 = trunc %2 infer %3 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 000xxxxxxxxxxxxxxxxxxxxxxxxxxxxx llvm is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 3 %2:i8 = phi %1, 0:i8, 1:i8, 0:i8 %3:i1 = var %4:i8 = zext %3 %5:i8 = phi %0, %2, %4 infer %5 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1:i32 = var %2:i32 = cttz %1 %3:i32 = shl 4294967040:i32, %2 infer %3 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxx00000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = ashr %0, 1:i32 %2:i32 = var %3:i32 = lshr %2, 3:i32 %4:i32 = urem %1, %3 infer %4 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 000xxxxxxxxxxxxxxxxxxxxxxxxxxxxx llvm is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (000xxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %1:i32 = udiv 16:i32, %0 %2:i32 = lshr %1, 1:i32 infer %2 known from Souper: 0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 0000000000000000000000000000xxxx llvm is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1 = block 4 %2:i32 = var (000000000000000000000000101001x1) %3:i32 = var (0000000000000000000000001011110x) %4:i32 = var (0000000000000000000000001xxx0xxx) %5:i32 = var (0000000000000000000000001100xxx1) %6:i32 = phi %1, %2, %3, %4, %5 %7:i32 = phi %0, %6, %6, 200:i32, 166:i32 infer %7 known from Souper: 0000000000000000000000001xxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 7 %1:i64 = var (0000000000000000000000000000000000000000000000000000000000xxxxxx) %2:i32 = trunc %1 %3:i32 = phi %0, %2, 0:i32, 0:i32, 0:i32, 0:i32, 0:i32, 0:i32 infer %3 known from Souper: 00000000000000000000000000xxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 5 %2:i8 = phi %1, 1:i8, 1:i8, 0:i8, 0:i8, 0:i8 %3:i8 = phi %0, %2, 1:i8 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (000000000000000000000000000000xx) %1:i32 = var (0000000000000000000000000000000x) %2:i32 = addnw %0, %1 %3:i32 = var (000xxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %4:i32 = and 1:i32, %3 %5:i32 = addnw %2, %4 infer %5 known from Souper: 00000000000000000000000000000xxx known from compiler: 0000000000000000000000000000xxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i32 = var (000000000000000000000000x0x10010) %2:i32 = var (000000000000000000000000x0x00011) %3:i32 = var (000000000000000000000000x0x00010) %4:i32 = phi %0, %1, %2, %3 %5:i32 = var (0000000000000000000000000x000000) %6:i32 = xor 64:i32, %5 %7:i32 = or %4, %6 infer %7 known from Souper: 000000000000000000000000xxxx001x known from compiler: 000000000000000000000000xxxx00xx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1 = block 4 %2:i64 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0) %3:i64 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0) %4:i64 = phi %1, %2, %3, %3, %3 %5:i64 = var %6:i64 = and 18446744073709551614:i64, %5 %7:i64 = phi %0, %4, %4, %4, %6 infer %7 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (000000000000000000001011101011x1) %2:i32 = xor 2:i32, %1 %3:i32 = phi %0, 2989:i32, %2 infer %3 known from Souper: 000000000000000000001011101011x1 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %1:i64 = mulnw 120:i64, %0 %2:i64 = addnw 8:i64, %1 infer %2 known from Souper: 0000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx000 known from compiler: 000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx000 souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (0000000000000000xxxxxxxxxxxxxxxx) %1:i64 = zext %0 %2:i64 = var %3:i64 = srem %1, %2 infer %3 known from Souper: 000000000000000000000000000000000000000000000000xxxxxxxxxxxxxxxx known from compiler: 0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (00000000000000000000000000000xxx) %1:i32 = var (0000000000000000xxxxxxxxxxxxxxxx) %2:i32 = addnw %0, %1 %3:i32 = addnw 8:i32, %2 infer %3 known from Souper: 000000000000000xxxxxxxxxxxxxxxxx known from compiler: 00000000000000xxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = var %2:i32 = udiv %0, %1 %3:i1 = ult 8:i32, %2 %4:i32 = select %3, 8:i32, %2 infer %4 known from Souper: 0000000000000000000000000000xxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1 = block 3 %2:i32 = phi %1, 1:i32, 0:i32, 0:i32 %3:i32 = phi %0, 0:i32, 0:i32, %2, 2:i32 infer %3 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0) %1:i32 = urem %0, 12:i32 %2:i32 = addnw 2:i32, %1 infer %2 known from Souper: 0000000000000000000000000000xxx0 known from compiler: 000000000000000000000000000xxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = udiv 128:i32, %0 %2:i32 = udiv 7:i32, %1 infer %2 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 00000000000000000000000000000xxx llvm is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 5 %2 = block 2 %3:i32 = var (0000000000000000000000000000000x) %4:i32 = phi %1, %3, 1:i32, 1:i32, 1:i32, 0:i32 %5:i32 = phi %0, %4, 0:i32 infer %5 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i1 = var %1:i32 = var %2:i32 = select %0, %1, 16:i32 %3:i32 = add 4294967295:i32, %2 %4:i32 = and %3, %2 infer %4 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i1 = var %1:i64 = var %2:i64 = select %0, %1, 1:i64 %3:i64 = add 18446744073709551615:i64, %2 %4:i64 = and %3, %2 infer %4 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (000000000000000000000000000000xx) %2:i32 = phi %0, 1:i32, %1 %3:i32 = udiv 32:i32, %2 infer %3 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 00000000000000000000000000xxxxxx llvm is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 2 %2:i32 = phi %1, 1:i32, 3:i32 %3:i32 = phi %0, 0:i32, %2, %2 infer %3 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i32 = var (0000000000000000000000000000000x) %3:i32 = xor 1:i32, %2 %4 = block 2 %5:i32 = var (0000000000000000000000000000000x) %6:i32 = phi %4, 0:i32, %5 %7:i32 = phi %0, %3, %6 infer %7 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx000) %1:i64 = addnsw 18446744073709551592:i64, %0 %2:i64 = urem %1, 24:i64 %3:i64 = subnsw %1, %2 infer %3 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 1 %1:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %2:i64 = var (0000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %3:i64 = addnw %1, %2 %4:i64 = phi %0, %3 infer %4 known from Souper: 000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (000xxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %1:i32 = var (000xxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %2:i32 = udiv %0, %1 %3:i64 = zext %2 infer %3 known from Souper: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 00000000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxx llvm is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2 = block 4 %3:i8 = var (0000000x) %4:i8 = phi %1, %3, 0:i8 %5:i8 = phi %0, 0:i8, %4 infer %5 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 6 %1 = block 2 %2:i8 = phi %1, 0:i8, 1:i8 %3:i8 = phi %0, 0:i8, %2, %2, 1:i8, 0:i8, 0:i8 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (0000000000000000000000000000xxxx) %1:i32 = var (0000000000000000000000000000000x) %2:i32 = addnw %0, %1 %3:i1 = var %4:i32 = zext %3 %5:i32 = addnw %2, %4 infer %5 known from Souper: 000000000000000000000000000xxxxx known from compiler: 00000000000000000000000000xxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 1 %1:i32 = var (000000000000000000000000000xxxxx) %2:i64 = zext %1 %3:i64 = phi %0, %2 infer %3 known from Souper: 00000000000000000000000000000000000000000000000000000000000xxxxx known from compiler: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1:i32 = phi %0, 3:i32, 2:i32, 1:i32, 0:i32, 0:i32 %2:i32 = shl 1:i32, %1 infer %2 known from Souper: 0000000000000000000000000000xxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i16 = trunc %0 %2:i16 = lshr 16481:i16, %1 infer %2 known from Souper: 0xxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i1 = var %2:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %3:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %4:i64 = select %1, %2, %3 %5:i64 = add %0, %4 %6:i64 = urem %5, %4 infer %6 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx llvm is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1 = block 3 %2 = block 3 %3:i32 = var (000000000000000000000000000000x1) %4:i32 = phi %1, %3, %3, 3:i32 %5:i32 = phi %0, 3:i32, %4, %4, %4, %4 infer %5 known from Souper: 000000000000000000000000000000x1 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 22 %1:i32 = phi %0, 1:i32, 0:i32, 1:i32, 2:i32, 2:i32, 1:i32, 1:i32, 1:i32, 1:i32, 1:i32, 1:i32, 1:i32, 1:i32, 1:i32, 1:i32, 1:i32, 1:i32, 1:i32, 1:i32, 1:i32, 1:i32, 1:i32 %2:i32 = addnw 1:i32, %1 infer %2 known from Souper: 000000000000000000000000000000xx known from compiler: 00000000000000000000000000000xxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 6 %1:i1 = var %2:i64 = zext %1 %3:i1 = var %4:i64 = zext %3 %5 = block 7 %6:i1 = var %7:i64 = zext %6 %8:i64 = xor 1:i64, %7 %9:i64 = phi %0, %2, %4, %7, %8, 1:i64, 0:i64 infer %9 known from Souper: 000000000000000000000000000000000000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 4 %2:i32 = phi %1, 5:i32, 6:i32, 7:i32, 4:i32 %3:i32 = phi %0, %2, 0:i32 infer %3 known from Souper: 00000000000000000000000000000xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i1 = var %1:i32 = select %0, 2130722816:i32, 2130755584:i32 %2:i32 = bswap %1 infer %2 known from Souper: 00000000x10000000000000001111111 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (00000000000000000000000000000xxx) %1:i32 = var (0000000000000000000000000000000x) %2:i32 = addnw %0, %1 %3:i32 = addnw 2:i32, %2 infer %3 known from Souper: 0000000000000000000000000000xxxx known from compiler: 000000000000000000000000000xxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i32 = var %3:i32 = and 255:i32, %2 %4:i32 = phi %1, %3, 38:i32 %5:i32 = phi %0, %4, %3 infer %5 known from Souper: 000000000000000000000000xxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1:i1 = var %2:i32 = select %1, 18:i32, 16:i32 %3:i32 = or 12:i32, %2 %4:i32 = or 4:i32, %2 %5:i32 = phi %0, %2, %3, %4, %2 infer %5 known from Souper: 0000000000000000000000000001xxx0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1:i1 = var %2:i8 = zext %1 %3:i8 = var (0000000x) %4:i8 = xor 1:i8, %3 %5:i8 = phi %0, %2, %4, %4, %4 infer %5 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i32 = var (0000000000000000000000000x0x0x00) %2:i32 = addnw 2727:i32, %1 %3:i32 = var (0000000000000000000000000x0x0xx0) %4:i32 = addnw 2723:i32, %3 %5:i32 = phi %0, %2, 0:i32, %4 infer %5 known from Souper: 00000000000000000000x0x0xxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 4 %2:i32 = phi %1, 1:i32, 0:i32, 1:i32, 1:i32 %3:i32 = phi %0, %2, 1:i32, 1:i32 infer %3 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i64 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0000) %2:i64 = addnw 16:i64, %1 %3:i64 = phi %0, %2, %2 infer %3 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %1:i64 = addnw 2:i64, %0 %2:i64 = udiv %1, 3:i64 infer %2 known from Souper: 000000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i1 = var %2:i32 = var (000000000000000000000000000000xx) %3:i32 = select %1, %2, 0:i32 %4:i32 = phi %0, 0:i32, 0:i32, %3 infer %4 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = sub 31:i64, %0 %2:i1 = ult 15:i64, %1 %3:i64 = select %2, 15:i64, %1 infer %3 known from Souper: 000000000000000000000000000000000000000000000000000000000000xxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i1 = var %1:i32 = select %0, 4:i32, 8:i32 %2:i32 = addnw 63:i32, %1 infer %2 known from Souper: 00000000000000000000000001000x11 known from compiler: 0000000000000000000000000xxxxx11 souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 17 %1 = block 3 %2:i1 = var %3:i64 = var (000000000000000000000000000000000000000000000000000000000000000x) %4:i64 = select %2, 2:i64, %3 %5:i64 = phi %0, 0:i64, 2:i64, 2:i64, 2:i64, 2:i64, 0:i64, 0:i64, 0:i64, 0:i64, %4, 0:i64, 0:i64, 2:i64, 0:i64, 0:i64, 0:i64, 0:i64 infer %5 known from Souper: 00000000000000000000000000000000000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 8 %1 = block 2 %2:i32 = phi %1, 4294967295:i32, 1:i32 %3:i32 = phi %0, %2, %2, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 1:i32 infer %3 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx1 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (000000000000000000000000000xxxxx) %1:i32 = xor 31:i32, %0 %2:i32 = bswap %1 infer %2 known from Souper: 000xxxxx000000000000000000000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1:i1 = var %2:i8 = zext %1 %3:i1 = var %4:i8 = select %3, %2, 0:i8 %5:i8 = phi %0, %2, %4, %2, %2, %2 infer %5 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (00000000000000000000000000xxxxxx) %2:i32 = subnsw 64:i32, %1 %3:i32 = addnsw 4294967295:i32, %2 infer %3 known from Souper: 00000000000000000000000000xxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = add 4294967295:i32, %0 %2:i32 = shl 4:i32, %1 infer %2 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1:i32 = var (0000000000000000000000000000000x) %2:i8 = trunc %1 %3:i8 = phi %0, %2, %2, 0:i8, %2, %2 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 10 %1:i8 = var (0000000x) %2:i8 = xor 1:i8, %1 %3:i8 = phi %0, 1:i8, 1:i8, 1:i8, 1:i8, 1:i8, 1:i8, %2, 0:i8, 0:i8, 0:i8 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = addnsw 4294967295:i32, %0 %2:i8 = var (0001xxxx) %3:i32 = zext %2 %4:i32 = shl %1, %3 infer %4 known from Souper: xxxxxxxxxxxxxxxx0000000000000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1 = block 4 %2 = block 4 %3:i32 = var (0000000000000000000000000000000x) %4:i32 = phi %1, %3, 1:i32, 1:i32, 1:i32 %5:i32 = phi %0, 1:i32, 1:i32, 1:i32, %4 infer %5 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 7 %2:i8 = var (0000000x) %3:i8 = phi %1, %2, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8 %4:i1 = var %5:i8 = zext %4 %6:i8 = phi %0, %3, 0:i8, %5 infer %6 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i1 = var %1:i32 = select %0, 0:i32, 24:i32 %2:i32 = addnw 24:i32, %1 infer %2 known from Souper: 00000000000000000000000000x1x000 known from compiler: 00000000000000000000000000xxx000 souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i64 = sext %0 %2:i64 = lshr 4145103:i64, %1 infer %2 known from Souper: 000000000000000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (0000000000000000000000000000000000000000000000000000000000xxxxxx) %1:i64 = shl 18446744073709551615:i64, %0 %2:i64 = xor 6629298651489370111:i64, %1 infer %2 known from Souper: 1xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i8 = trunc %0 %2:i8 = lshr 119:i8, %1 infer %2 known from Souper: 0xxxxxxx known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (0000000000000000xxxxxxxxxxxxxxxx) %1:i32 = xor 65535:i32, %0 %2:i32 = addnw 65535:i32, %1 %3:i32 = and %2, %1 infer %3 known from Souper: 0000000000000000xxxxxxxxxxxxxxx0 known from compiler: 0000000000000000xxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 4 %2:i32 = var (0000000000000000000000000xx1010x) %3:i32 = var (000000000000000000000000x11xx001) %4:i32 = var (0000000000000000000000000001xxx0) %5:i32 = phi %1, 19:i32, %2, %3, %4 %6:i1 = var %7:i32 = select %6, 44:i32, 30:i32 %8:i32 = phi %0, %5, %5, %7 infer %8 known from Souper: 000000000000000000000000xxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i1 = var %1:i64 = select %0, 24:i64, 16:i64 %2:i64 = bswap %1 infer %2 known from Souper: 0001x00000000000000000000000000000000000000000000000000000000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (000000000000000000000000000000xx) %1:i32 = addnw 1:i32, %0 %2:i32 = shl 16:i32, %1 infer %2 known from Souper: 00000000000000000000000xxxx00000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (00000000000000000000000000111xxx) %1:i64 = zext %0 %2:i64 = lshr 18446744073709551615:i64, %1 infer %2 known from Souper: 00000000000000000000000000000000000000000000000000000000xxxxxxx1 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 6 %1 = block 3 %2:i32 = phi %1, 1:i32, 0:i32, 0:i32 %3:i32 = phi %0, 0:i32, 0:i32, %2, 1:i32, 1:i32, 0:i32 infer %3 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = var (000000000000000000000000xxxxxxxx) %2:i32 = and %0, %1 %3:i32 = var (00000000000000000000000000000xx0) %4:i32 = shl 3:i32, %3 %5:i32 = or %2, %4 infer %5 known from Souper: 000000000000000000000000xxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var %2:i32 = var (00xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %3:i32 = addnsw %1, %2 %4:i1 = ult 70:i32, %3 %5:i32 = select %4, 70:i32, %3 infer %5 known from Souper: 0000000000000000000000000xxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 3 %2:i32 = phi %1, 1:i32, 0:i32, 0:i32 %3:i32 = phi %0, %2, 1:i32, 1:i32 infer %3 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i1 = var %2:i32 = var (0000000000000000000000000000010x) %3:i32 = select %1, 0:i32, %2 %4:i32 = phi %0, 2:i32, %3 infer %4 known from Souper: 00000000000000000000000000000xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 11 %1 = block 2 %2 = block 2 %3:i8 = var (0000000x) %4:i8 = phi %1, 0:i8, %3 %5:i8 = phi %0, 0:i8, 0:i8, %4, %4, %4, %4, %4, %4, 1:i8, 0:i8, 0:i8 infer %5 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1:i32 = var (0000xxxxxxxxxxxxxxxxxxxxxxxxxxxx) %2:i32 = addnw 138:i32, %1 %3:i32 = var (00xxxxxxxxxxxxxxxxxxxxxxxxxxxxx0) %4:i32 = addnw 71:i32, %3 %5:i32 = var (000xxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %6:i32 = addnw 38:i32, %5 %7:i32 = addnw 114:i32, %5 %8:i32 = phi %0, %2, %4, %6, %7 infer %8 known from Souper: 0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1:i32 = var (000000000000000000000xx000000000) %2:i32 = var (00000000000000000000000x00000000) %3:i32 = xor 256:i32, %2 %4:i32 = or %1, %3 %5:i32 = phi %0, %4, %3, %4, %3 infer %5 known from Souper: 000000000000000000000xxx00000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i1 = ult %0, 24:i64 %2:i64 = select %1, %0, 24:i64 infer %2 known from Souper: 00000000000000000000000000000000000000000000000000000000000xxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 44 %2 = block 2 %3:i32 = var (00000000000000000000000000000x0x) %4 = block 2 %5:i32 = var (00000000000000000000000000000x0x) %6:i32 = phi %1, 1:i32, 1:i32, 1:i32, 1:i32, 1:i32, 1:i32, 1:i32, 1:i32, 1:i32, 1:i32, 1:i32, 1:i32, 1:i32, 1:i32, 1:i32, 1:i32, 1:i32, 1:i32, 1:i32, 1:i32, 1:i32, 1:i32, %3, 1:i32, %5, 1:i32, 1:i32, 0:i32, 0:i32, 0:i32, 1:i32, 1:i32, 1:i32, 1:i32, 1:i32, 1:i32, 1:i32, 1:i32, 1:i32, 1:i32, 1:i32, 1:i32, 1:i32, 1:i32 %7:i32 = phi %0, %6, 1:i32, 1:i32 infer %7 known from Souper: 00000000000000000000000000000x0x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var %2:i32 = var %3:i32 = phi %0, %1, %2 %4:i32 = urem 128:i32, %3 infer %4 known from Souper: 000000000000000000000000x0xxxxxx known from compiler: 000000000000000000000000xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i8 = trunc %0 %2:i8 = lshr 39:i8, %1 infer %2 known from Souper: 00xxxxxx known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 3 %2 = block 3 %3:i64 = var (00000000000000000000000000000000000000000000000000000000000000x0) %4:i64 = phi %1, %3, 2:i64, 2:i64 %5:i64 = phi %0, %4, 2:i64, 2:i64 infer %5 known from Souper: 00000000000000000000000000000000000000000000000000000000000000x0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i16 = var %1:i16 = lshr 2367:i16, %0 infer %1 known from Souper: 0000xxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 8 %1:i32 = var %2:i32 = var %3:i32 = phi %0, %1, %2, %1, %2, %1, %1, %1, %1 %4:i32 = add 4294967295:i32, %3 %5:i32 = xor %3, %4 infer %5 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx1 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 6 %1:i32 = phi %0, 3:i32, 2:i32, 1:i32, 0:i32, 0:i32, 0:i32 %2:i32 = shl 1:i32, %1 infer %2 known from Souper: 0000000000000000000000000000xxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1:i32 = var (0000000000000000000000000000xx0x) %2:i32 = var (00000000000000000000000000001x00) %3:i32 = phi %0, %1, 8:i32, 12:i32, 8:i32, %2 %4:i32 = shl 1:i32, %3 infer %4 known from Souper: 000000000000000000xx00xx00xx00xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (0000000000000000000000000000000x) %1:i32 = var (0000000000000000000000000000000x) %2:i32 = addnw %0, %1 %3:i32 = var (00xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %4:i32 = and 1:i32, %3 %5:i32 = addnw %2, %4 infer %5 known from Souper: 000000000000000000000000000000xx known from compiler: 00000000000000000000000000000xxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i8 = var (0000xxxx) %2:i8 = and 1:i8, %1 %3:i1 = var %4:i8 = select %3, 1:i8, %2 %5:i8 = phi %0, %2, %4 infer %5 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 6 %1 = block 2 %2:i8 = phi %1, 0:i8, 1:i8 %3:i8 = phi %0, 0:i8, 0:i8, %2, %2, 0:i8, 0:i8 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i1 = var %2:i8 = zext %1 %3:i8 = xor 1:i8, %2 %4:i8 = phi %0, %3, %2 infer %4 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 35 %1 = block 2 %2:i32 = phi %1, 3:i32, 0:i32 %3 = block 2 %4:i32 = phi %3, 3:i32, 0:i32 %5 = block 2 %6:i32 = phi %5, 3:i32, 0:i32 %7 = block 2 %8:i32 = phi %7, 3:i32, 0:i32 %9 = block 2 %10:i32 = phi %9, 3:i32, 0:i32 %11 = block 2 %12:i32 = phi %11, 3:i32, 0:i32 %13:i32 = phi %0, %2, %4, %6, %8, %10, %12, 0:i32, 3:i32, 0:i32, 3:i32, 0:i32, 3:i32, 0:i32, 3:i32, 0:i32, 3:i32, 0:i32, 3:i32, 0:i32, 3:i32, 0:i32, 3:i32, 0:i32, 3:i32, 0:i32, 3:i32, 0:i32, 3:i32, 0:i32, 3:i32, 0:i32, 3:i32, 0:i32, 3:i32, 0:i32 infer %13 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (0000xxxxxxxxxxxxxxxxxxxxxxxxxxxx) %1:i32 = and 1:i32, %0 %2:i32 = var (000000xxxxxxxxxxxxxxxxxxxxxxxxxx) %3:i32 = and 3:i32, %2 %4:i32 = shl %1, %3 infer %4 known from Souper: 0000000000000000000000000000xxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00) %1:i32 = udiv %0, 59:i32 %2:i32 = addnw 64:i32, %1 infer %2 known from Souper: 00000xxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 0000xxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 124 %1:i1 = var %2:i32 = var (000000000000000000000000xx1x1100) %3:i32 = select %1, %2, 76:i32 %4:i1 = var %5:i32 = select %4, 76:i32, 172:i32 %6:i1 = var %7:i32 = select %6, 100:i32, 52:i32 %8:i1 = var %9:i32 = var (000000000000000000000000xx1x1010) %10:i32 = select %8, %9, 74:i32 %11:i1 = var %12:i32 = select %11, 74:i32, 170:i32 %13:i1 = var %14:i32 = select %13, 98:i32, 50:i32 %15:i1 = var %16:i32 = var (000000000000000000000000xx1x1011) %17:i32 = select %15, %16, 75:i32 %18:i1 = var %19:i32 = select %18, 75:i32, 171:i32 %20:i1 = var %21:i32 = select %20, 99:i32, 51:i32 %22:i1 = var %23:i32 = var (000000000000000000000000xx1x1001) %24:i32 = select %22, %23, 73:i32 %25:i1 = var %26:i32 = select %25, 73:i32, 169:i32 %27:i1 = var %28:i32 = select %27, 97:i32, 49:i32 %29:i1 = var %30:i32 = var (000000000000000000000000xx1x1000) %31:i32 = select %29, %30, 72:i32 %32:i1 = var %33:i32 = select %32, 72:i32, 168:i32 %34:i1 = var %35:i32 = select %34, 96:i32, 48:i32 %36:i1 = var %37:i32 = var (000000000000000000000000xx1x0110) %38:i32 = select %36, %37, 70:i32 %39:i1 = var %40:i32 = select %39, 70:i32, 166:i32 %41:i1 = var %42:i32 = select %41, 94:i32, 46:i32 %43:i1 = var %44:i32 = var (000000000000000000000000xx1x0111) %45:i32 = select %43, %44, 71:i32 %46:i1 = var %47:i32 = select %46, 71:i32, 167:i32 %48:i1 = var %49:i32 = select %48, 95:i32, 47:i32 %50:i1 = var %51:i32 = var (000000000000000000000000xx1x0101) %52:i32 = select %50, %51, 69:i32 %53:i1 = var %54:i32 = select %53, 69:i32, 165:i32 %55:i1 = var %56:i32 = select %55, 93:i32, 45:i32 %57:i1 = var %58:i32 = var (00000000000000000000000010xx0100) %59:i32 = select %57, %58, 84:i32 %60:i1 = var %61:i32 = select %60, 84:i32, 180:i32 %62:i1 = var %63:i32 = select %62, 108:i32, 60:i32 %64:i1 = var %65:i32 = var (00000000000000000000000010xx0010) %66:i32 = select %64, %65, 82:i32 %67:i1 = var %68:i32 = select %67, 82:i32, 178:i32 %69:i1 = var %70:i32 = select %69, 106:i32, 58:i32 %71:i1 = var %72:i32 = var (00000000000000000000000010xx0011) %73:i32 = select %71, %72, 83:i32 %74:i1 = var %75:i32 = select %74, 83:i32, 179:i32 %76:i1 = var %77:i32 = select %76, 107:i32, 59:i32 %78:i1 = var %79:i32 = var (00000000000000000000000010xx0001) %80:i32 = select %78, %79, 81:i32 %81:i1 = var %82:i32 = select %81, 81:i32, 177:i32 %83:i1 = var %84:i32 = select %83, 105:i32, 57:i32 %85:i1 = var %86:i32 = var (00000000000000000000000010xx0000) %87:i32 = select %85, %86, 80:i32 %88:i1 = var %89:i32 = select %88, 80:i32, 176:i32 %90:i1 = var %91:i32 = select %90, 104:i32, 56:i32 %92:i1 = var %93:i32 = var (000000000000000000000000xx1x1111) %94:i32 = select %92, %93, 79:i32 %95:i1 = var %96:i32 = select %95, 79:i32, 175:i32 %97:i1 = var %98:i32 = select %97, 103:i32, 55:i32 %99:i1 = var %100:i32 = var (000000000000000000000000xx1x1110) %101:i32 = select %99, %100, 78:i32 %102:i1 = var %103:i32 = select %102, 78:i32, 174:i32 %104:i1 = var %105:i32 = select %104, 102:i32, 54:i32 %106:i1 = var %107:i32 = var (000000000000000000000000xx1x1101) %108:i32 = select %106, %107, 77:i32 %109:i1 = var %110:i32 = select %109, 77:i32, 173:i32 %111:i1 = var %112:i32 = select %111, 101:i32, 53:i32 %113:i1 = var %114:i32 = var (000000000000000000000000xx1x0100) %115:i32 = select %113, %114, 68:i32 %116:i1 = var %117:i32 = select %116, 68:i32, 164:i32 %118:i1 = var %119:i32 = select %118, 92:i32, 44:i32 %120:i1 = var %121:i32 = var (000000000000000000000000xx1x0010) %122:i32 = select %120, %121, 66:i32 %123:i1 = var %124:i32 = select %123, 66:i32, 162:i32 %125:i1 = var %126:i32 = select %125, 90:i32, 42:i32 %127:i1 = var %128:i32 = var (000000000000000000000000xx1x0011) %129:i32 = select %127, %128, 67:i32 %130:i1 = var %131:i32 = select %130, 67:i32, 163:i32 %132:i1 = var %133:i32 = select %132, 91:i32, 43:i32 %134:i1 = var %135:i32 = var (000000000000000000000000xx1x0001) %136:i32 = select %134, %135, 65:i32 %137:i1 = var %138:i32 = select %137, 65:i32, 161:i32 %139:i1 = var %140:i32 = select %139, 89:i32, 41:i32 %141:i1 = var %142:i32 = var (000000000000000000000000xx1x0000) %143:i32 = select %141, %142, 64:i32 %144:i1 = var %145:i32 = select %144, 64:i32, 160:i32 %146:i1 = var %147:i32 = select %146, 88:i32, 40:i32 %148:i1 = var %149:i32 = var (000000000000000000000000xxxx1111) %150:i32 = select %148, %149, 63:i32 %151:i1 = var %152:i32 = select %151, 63:i32, 159:i32 %153:i1 = var %154:i32 = select %153, 87:i32, 39:i32 %155:i1 = var %156:i32 = select %155, 158:i32, 62:i32 %157:i1 = var %158:i32 = select %157, 86:i32, 38:i32 %159:i32 = select %155, 157:i32, 61:i32 %160:i1 = var %161:i32 = select %160, 85:i32, 37:i32 %162 = block 2 %163:i32 = phi %162, 1:i32, 9:i32 %164:i1 = var %165:i32 = var (00000000000000000000000000000xx0) %166:i32 = select %164, 5:i32, %165 %167:i1 = var %168:i32 = select %167, 13:i32, 11:i32 %169:i1 = var %170:i32 = select %169, 4:i32, 2:i32 %171:i1 = var %172:i32 = select %171, 26:i32, 27:i32 %173:i32 = phi %0, 22:i32, 21:i32, 15:i32, 148:i32, %3, %5, %7, 146:i32, %10, %12, %14, 147:i32, %17, %19, %21, 145:i32, %24, %26, %28, 144:i32, %31, %33, %35, 142:i32, %38, %40, %42, 143:i32, %45, %47, %49, 141:i32, %52, %54, %56, 156:i32, %59, %61, %63, 154:i32, %66, %68, %70, 155:i32, %73, %75, %77, 153:i32, %80, %82, %84, 152:i32, %87, %89, %91, 151:i32, %94, %96, %98, 150:i32, %101, %103, %105, 149:i32, %108, %110, %112, 140:i32, %115, %117, %119, 138:i32, %122, %124, %126, 139:i32, %129, %131, %133, 137:i32, %136, %138, %140, 136:i32, %143, %145, %147, 135:i32, %150, %152, %154, 134:i32, 110:i32, %156, %158, 133:i32, 109:i32, %159, %161, 32:i32, 30:i32, 25:i32, 23:i32, 20:i32, 20:i32, 10:i32, 16:i32, 17:i32, 11:i32, 12:i32, 18:i32, 14:i32, %163, 7:i32, 8:i32, 2:i32, 3:i32, %166, 31:i32, 19:i32, 29:i32, %168, %170, %172 infer %173 known from Souper: 000000000000000000000000xxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1 = block 1 %2:i32 = var (000000000000000000000000000000xx) %3:i32 = phi %1, %2 %4 = block 4 %5:i32 = phi %4, 2:i32, 2:i32, 0:i32, 0:i32 %6:i32 = phi %0, %3, %3, %3, 0:i32, %5 infer %6 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1 = block 6 %2:i8 = phi %1, 1:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8 %3:i8 = phi %0, %2, %2, 0:i8, 0:i8 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i1 = var %1:i32 = sext %0 %2:i32 = addnsw 10:i32, %1 infer %2 known from Souper: 000000000000000000000000000010xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 17 %1 = block 8 %2:i8 = phi %1, 1:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8 %3:i8 = phi %0, %2, 1:i8, 1:i8, 1:i8, 1:i8, 1:i8, 1:i8, 1:i8, 1:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i64 = var (00xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %2:i64 = addnw 1:i64, %1 %3:i64 = var (00xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %4:i64 = addnw 1:i64, %3 %5:i64 = phi %0, %2, %4 infer %5 known from Souper: 0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i64 = var (000000000000000000000000xxxxxxxx00000000000000000000000000000000) %2:i64 = or 13:i64, %1 %3:i64 = phi %0, %2, 13:i64 infer %3 known from Souper: 000000000000000000000000xxxxxxxx00000000000000000000000000001101 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx11x1 souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (00000000000000000000000000000000000000000000000000000000xxxxxxxx) %1:i64 = var (00000000000000000000000000000000000000000000000000000000xxxxxxxx) %2:i64 = udiv %0, %1 %3:i64 = or 256:i64, %2 infer %3 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx1xxxxxxxx known from compiler: 00000000000000000000000000000000000000000000000000000001xxxxxxxx llvm is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i16 = trunc %0 %2:i16 = lshr 1087:i16, %1 infer %2 known from Souper: 00000xxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 6 %1 = block 5 %2 = block 3 %3:i32 = var (000000000000000000000000000000x1) %4:i32 = phi %1, 0:i32, %3, %3, 0:i32, 0:i32 %5:i32 = phi %0, 2:i32, %4, 3:i32, 1:i32, 0:i32, 3:i32 infer %5 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %1:i64 = var %2:i64 = add %0, %1 %3:i64 = urem %2, %0 infer %3 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx llvm is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1 = block 4 %2 = block 4 %3:i8 = var (0000000x) %4:i8 = phi %1, %3, %3, 0:i8, 0:i8 %5:i8 = phi %0, %4, %4, 0:i8, 0:i8 infer %5 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (00000000xxxxxxxxxxxxxxxxxxxxxxxx) %2:i64 = zext %1 %3:i64 = phi %0, %2, 0:i64 infer %3 known from Souper: 0000000000000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0) %1:i32 = and 6:i32, %0 %2:i32 = shl 1:i32, %1 infer %2 known from Souper: 0000000000000000000000000x0x0x0x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %2:i64 = shlnw %1, 5:i64 %3:i64 = phi %0, %2, %2 infer %3 known from Souper: 000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00000 souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 8 %1:i64 = phi %0, 0:i64, 1:i64, 2:i64, 3:i64, 4:i64, 5:i64, 6:i64, 7:i64 %2:i64 = lshr 232:i64, %1 infer %2 known from Souper: 00000000000000000000000000000000000000000000000000000000xxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 7 %1:i1 = var %2:i32 = select %1, 4:i32, 0:i32 %3:i32 = var (0000000000000000000000000000000x) %4:i32 = or 2:i32, %3 %5:i32 = phi %0, 4:i32, %2, 0:i32, 1:i32, 0:i32, 4:i32, %4 infer %5 known from Souper: 00000000000000000000000000000xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 1 %2:i32 = var (000xxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %3:i32 = phi %1, %2 %4:i32 = phi %0, %3, 10000:i32 infer %4 known from Souper: 000xxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (xxxxxx1xxxxxxxxx0000000000000000) %2:i32 = var (xxxxxx11xxxxxxxxxxx0000000000000) %3:i32 = phi %0, %1, %2 %4:i32 = var (xxxxxxxxxxxxxxxxxxxxxx0000000000) %5:i32 = and 7168:i32, %4 %6:i32 = or %3, %5 infer %6 known from Souper: xxxxxx1xxxxxxxxxxxxxxx0000000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxx0000000000 souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i1 = var %1:i32 = select %0, 4:i32, 6:i32 %2:i1 = var %3:i32 = select %2, 8:i32, 4:i32 %4:i32 = mulnw %1, %3 infer %4 known from Souper: 00000000000000000000000000xxx000 known from compiler: 0000000000000000000000000xxxx000 souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i1 = var %1:i32 = select %0, 4:i32, 8:i32 %2:i64 = var %3:i32 = trunc %2 %4:i1 = ult %1, %3 %5:i32 = select %4, %1, %3 infer %5 known from Souper: 0000000000000000000000000000xxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i1 = var %1:i1 = var %2:i1 = or %0, %1 %3 = block 2 %4:i32 = var (000000000000000000000000000000x1) %5:i32 = phi %3, %4, 3:i32 %6:i32 = select %2, 1:i32, %5 infer %6 known from Souper: 000000000000000000000000000000x1 known from compiler: 000000000000000000000000000000xx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 13 %1 = block 5 %2:i32 = phi %1, 1:i32, 1:i32, 0:i32, 0:i32, 0:i32 %3 = block 3 %4:i32 = phi %3, 1:i32, 0:i32, 0:i32 %5 = block 6 %6:i32 = phi %5, 1:i32, 0:i32, 0:i32, 1:i32, 1:i32, 1:i32 %7 = block 2 %8:i32 = phi %7, 1:i32, 0:i32 %9:i32 = phi %0, 0:i32, 0:i32, %2, %4, %6, 0:i32, 0:i32, 0:i32, 0:i32, 0:i32, 0:i32, %8, 0:i32 infer %9 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1 = block 1 %2:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %3:i64 = phi %1, %2 %4 = block 1 %5:i64 = phi %4, %2 %6 = block 6 %7:i64 = phi %6, %2, %2, %2, %2, %2, %2 %8 = block 4 %9:i64 = phi %8, %2, %2, %2, %2 %10:i64 = phi %0, %3, %5, %7, %9 infer %10 known from Souper: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 1 %1:i32 = var (00000000000000000000110000000xx1) %2:i32 = phi %0, %1 infer %2 known from Souper: 00000000000000000000110000000xx1 known from compiler: 00000000000000000000xx0000000xxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 7 %1:i32 = var (0000000000000000000000000000xxxx) %2:i32 = addnw 1:i32, %1 %3:i32 = var (0000000000000000000000000000xxxx) %4:i32 = addnw 1:i32, %3 %5:i32 = var (0000000000000000000000000000xxxx) %6:i32 = addnw 1:i32, %5 %7:i32 = var (0000000000000000000000000000xxxx) %8:i32 = addnw 1:i32, %7 %9:i32 = phi %0, 0:i32, 0:i32, %2, 0:i32, %4, %6, %8 infer %9 known from Souper: 000000000000000000000000000xxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i16 = var %1:i32 = zext %0 %2 = block 2 %3 = block 2 %4:i32 = var %5:i32 = phi %2, 70:i32, %4 %6:i1 = ult %1, %5 %7:i32 = select %6, %1, %5 infer %7 known from Souper: 0000000000000000xxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 3 %2:i32 = phi %1, 1:i32, 0:i32, 1:i32 %3:i1 = var %4:i32 = select %3, 3:i32, 1:i32 %5:i32 = phi %0, %2, %4 infer %5 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (00000000000000000000000000000xxx) %1:i32 = shl 256:i32, %0 %2:i32 = add 4294967040:i32, %1 infer %2 known from Souper: 00000000000000000xxxxxxx00000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 10 %1 = block 6 %2:i8 = phi %1, 0:i8, 0:i8, 1:i8, 1:i8, 0:i8, 0:i8 %3:i8 = phi %0, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 1:i8, %2, 0:i8, 0:i8 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i8 = var (000000xx) %1:i32 = zext %0 %2:i32 = shl 1:i32, %1 infer %2 known from Souper: 0000000000000000000000000000xxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 8 %1 = block 2 %2:i8 = var (0000000x) %3:i8 = phi %1, %2, 0:i8 %4 = block 2 %5:i8 = phi %4, %3, %2 %6:i8 = phi %0, 1:i8, 1:i8, 1:i8, %3, %5, %5, 0:i8, 0:i8 infer %6 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = and 255:i32, %0 %2:i32 = var %3:i32 = and 30:i32, %2 %4:i32 = lshr %1, %3 infer %4 known from Souper: 000000000000000000000000xxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = add 4294967281:i32, %0 %2:i32 = lshr 508159:i32, %1 infer %2 known from Souper: 0000000000000xxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %1:i64 = mulnw 24:i64, %0 %2:i64 = addnw 56:i64, %1 infer %2 known from Souper: 000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx000 known from compiler: 00000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx000 souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 10 %1 = block 6 %2:i32 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0) %3:i32 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0) %4:i32 = phi %1, %2, %2, %2, %2, %3, %2 %5 = block 5 %6:i32 = phi %5, %4, %4, %4, 4:i32, 2:i32 %7:i32 = phi %0, %4, %4, %4, %6, %6, %4, %4, %4, %4, %4 infer %7 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (0000000000000000000000000000xx00) %1:i32 = shl 1:i32, %0 infer %1 known from Souper: 0000000000000000000x000x000x000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 9 %1:i1 = var %2:i8 = zext %1 %3 = block 2 %4:i8 = phi %3, 1:i8, 0:i8 %5:i8 = phi %0, 1:i8, %2, %4, 0:i8, 0:i8, 0:i8, 0:i8, 1:i8, 0:i8 infer %5 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i64 = var (000000000000000000000000000000000000000000000000000000000000000x) %2:i8 = trunc %1 %3:i8 = phi %0, %2, 0:i8, 1:i8 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i1 = var %2 = block 6 %3:i8 = phi %2, 1:i8, 1:i8, 0:i8, 0:i8, 0:i8, 0:i8 %4:i8 = select %1, %3, 0:i8 %5:i8 = phi %0, %4, %3 infer %5 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = var (0000000000000000000000000000000000000000000000000000000000xxx101) %2:i64 = shl 1:i64, %1 %3:i64 = and %0, %2 infer %3 known from Souper: 00x0000000x0000000x0000000x0000000x0000000x0000000x0000000x00000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (00000000000000000000000000000000000000000000000000000000000xxxxx) %1:i64 = shl 18446744073709551615:i64, %0 %2:i64 = and 4294967295:i64, %1 infer %2 known from Souper: 000000000000000000000000000000001xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 6 %1:i32 = var (0000000000000000000000000000000x) %2:i32 = phi %0, %1, 0:i32, 0:i32, 1:i32, 2:i32, 2:i32 %3:i32 = var (000000000000000000000000000001xx) %4:i32 = var (0000000000000000000000000000000x) %5:i32 = addnw %3, %4 %6:i32 = addnw %2, %5 infer %6 known from Souper: 0000000000000000000000000000xxxx known from compiler: 000000000000000000000000000xxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 41 %2:i16 = var %3:i32 = zext %2 %4:i32 = phi %1, %3, 926:i32, 893:i32, 902:i32, 917:i32, 938:i32, 929:i32, 932:i32, 935:i32, 915:i32, 909:i32, 913:i32, 907:i32, 1958:i32, 1925:i32, 1934:i32, 1949:i32, 1970:i32, 1961:i32, 1964:i32, 1967:i32, 1945:i32, 1939:i32, 1009:i32, 1003:i32, 1006:i32, 1025:i32, 1013:i32, 1019:i32, 2023:i32, 2017:i32, 2020:i32, 2039:i32, 2027:i32, 2033:i32, 953:i32, 941:i32, 947:i32, %3, %3, %3 %5:i32 = phi %0, %4, %3 infer %5 known from Souper: 0000000000000000xxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i1 = var %2:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %3:i32 = var %4:i64 = zext %3 %5:i64 = select %1, %2, %4 %6:i64 = phi %0, %5, %4 infer %6 known from Souper: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1 = block 1 %2:i8 = var (0000000x) %3:i8 = phi %1, %2 %4:i8 = phi %0, 0:i8, 0:i8, %3, 1:i8 infer %4 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i16 = var %2:i16 = add 65527:i16, %1 %3:i16 = lshr 943:i16, %2 infer %3 known from Souper: 000000xxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 2 %2 = block 3 %3:i8 = var (0000000x) %4:i8 = phi %1, %3, 0:i8 %5 = block 3 %6:i8 = phi %5, %4, 1:i8, 1:i8 %7:i8 = phi %0, %4, %4, %6 infer %7 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i16 = var %1:i32 = zext %0 %2:i32 = lshr 164137:i32, %1 infer %2 known from Souper: 00000000000000xxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i32 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxx000) %2:i32 = var (xxxxxxxxxxxxxxxxxxxxxxx000000000) %3:i32 = add %1, %2 %4:i32 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxx000) %5:i32 = var (xxxxxxxxxxxxxxxxxxxxxxx000000000) %6:i32 = add %4, %5 %7:i32 = var %8:i32 = mulnsw 1000:i32, %7 %9:i32 = phi %0, %3, %6, %8 infer %9 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxx000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i32 = phi %0, 1:i32, 2:i32, 2:i32 %2:i1 = eq 2:i32, %1 %3:i32 = select %2, 0:i32, %1 infer %3 known from Souper: 0000000000000000000000000000000x known from compiler: 000000000000000000000000000000xx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 6 %1:i32 = phi %0, 2:i32, 2:i32, 2:i32, 2:i32, 1:i32, 1:i32 %2:i32 = addnw 1:i32, %1 infer %2 known from Souper: 0000000000000000000000000000001x known from compiler: 00000000000000000000000000000xxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1 = block 9 %2:i8 = phi %1, 0:i8, 0:i8, 0:i8, 1:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8 %3:i8 = phi %0, 1:i8, 1:i8, %2, %2, %2 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i1 = var %2:i64 = select %1, 32:i64, 28:i64 %3:i1 = ult %0, %2 %4:i64 = select %3, %0, %2 infer %4 known from Souper: 0000000000000000000000000000000000000000000000000000000000xxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1:i1 = var %2:i32 = var (00000000000000000000000000000x1x) %3:i32 = select %1, 0:i32, %2 %4:i1 = var %5:i32 = var (000000000000000000000000000000x0) %6:i32 = select %4, 1:i32, %5 %7:i32 = var (00000000000000000000000000000xxx) %8:i32 = select %4, 5:i32, %7 %9:i32 = phi %0, %3, 6:i32, %6, %8, 6:i32 infer %9 known from Souper: 00000000000000000000000000000xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i64 = var (0000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %2:i64 = var (000000000000000000000000000000000000000000000000000000000000000x) %3:i64 = addnw %1, %2 %4:i64 = addnw 1:i64, %3 %5:i64 = phi %0, %4, %3 infer %5 known from Souper: 000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 4 %2:i64 = var (000000000000000000000000000000000000000000000000000000000000x000) %3:i64 = phi %1, 0:i64, 0:i64, 0:i64, %2 %4 = block 2 %5:i64 = phi %4, %3, 0:i64 %6:i64 = phi %0, %3, %5 infer %6 known from Souper: 000000000000000000000000000000000000000000000000000000000000x000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (0000000000000000000010xx01xxx0xx) %2:i32 = var (0000000000000000000010xx01xxx00x) %3:i32 = phi %0, %1, %2 %4:i32 = and 2938:i32, %3 infer %4 known from Souper: 0000000000000000000010xx01xxx0x0 known from compiler: 00000000000000000000x0xx0xxxx0x0 souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 3 %2 = block 2 %3:i32 = var (00000000000000000000000000000x0x) %4:i32 = phi %1, 0:i32, 1:i32, %3 %5:i32 = phi %0, 3:i32, %4 infer %5 known from Souper: 00000000000000000000000000000xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 6 %1 = block 9 %2 = block 6 %3:i8 = var (0000000x) %4 = block 4 %5:i8 = var (0000000x) %6:i8 = phi %1, %3, 1:i8, 1:i8, %5, 1:i8, 1:i8, 1:i8, 1:i8, 1:i8 %7:i8 = phi %0, 1:i8, 1:i8, 1:i8, %6, 1:i8, 1:i8 infer %7 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx1) %1:i32 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx1) %2:i32 = mulnsw %0, %1 %3:i1 = var %4:i32 = select %3, 4294967295:i32, 1:i32 %5:i32 = mulnsw %2, %4 infer %5 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx1 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i32 = var (0000000000000000000001000000001x) %2:i32 = var (00000000000000000000010000000x01) %3:i32 = phi %0, %1, 1028:i32, %2 %4:i64 = zext %3 infer %4 known from Souper: 0000000000000000000000000000000000000000000000000000010000000xxx known from compiler: 00000000000000000000000000000000000000000000000000000x0000000xxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i1 = ult %0, 6:i32 %2:i32 = select %1, %0, 0:i32 infer %2 known from Souper: 00000000000000000000000000000xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (0000000000000000000000000000000x) %1:i32 = var (0000000000000000000000000000000x) %2:i32 = addnw %0, %1 %3:i32 = addnw 1:i32, %2 infer %3 known from Souper: 000000000000000000000000000000xx known from compiler: 00000000000000000000000000000xxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i1 = var %2:i8 = zext %1 %3 = block 9 %4:i8 = var (0000000x) %5:i8 = var (0000000x) %6:i8 = var (0000000x) %7:i8 = phi %3, %4, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, %5, %6, 0:i8 %8:i8 = phi %0, %2, %7 infer %8 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %2:i64 = addnw 4:i64, %1 %3:i64 = phi %0, 0:i64, 0:i64, 0:i64, %2 infer %3 known from Souper: 0000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1:i1 = var %2:i8 = var (0000000x) %3:i8 = select %1, 0:i8, %2 %4:i1 = var %5:i8 = select %4, %3, 0:i8 %6:i8 = phi %0, 0:i8, 0:i8, 0:i8, %3, %5 infer %6 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (00000000000000000000000000xxxxxx) %1:i32 = var (0000000000000000000000000000000x) %2:i32 = addnw %0, %1 %3:i1 = var %4:i32 = zext %3 %5:i32 = add %2, %4 infer %5 known from Souper: 0000000000000000000000000xxxxxxx known from compiler: 000000000000000000000000xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (000000000000000000000000000000xx) %2:i32 = var (0000000000000000000000000000xx00) %3:i32 = or %1, %2 %4 = block 1 %5:i32 = var (0000000000000000000000000000xxxx) %6:i32 = phi %4, %5 %7:i32 = phi %0, %3, %6 infer %7 known from Souper: 0000000000000000000000000000xxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1 = block 3 %2:i32 = phi %1, 2:i32, 0:i32, 2:i32 %3:i32 = phi %0, 1:i32, 2:i32, 0:i32, %2, 2:i32 infer %3 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 2 %2:i32 = var (000000000000000000000000000xxxxx) %3:i32 = phi %1, %2, 32:i32 %4:i32 = phi %0, 0:i32, %3, %3 infer %4 known from Souper: 00000000000000000000000000xxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i16 = var %1:i32 = zext %0 %2:i1 = ult 8:i32, %1 %3:i32 = select %2, 8:i32, %1 infer %3 known from Souper: 0000000000000000000000000000xxxx known from compiler: 0000000000000000xxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (00000000000000000000000000000000000000000000000000000000xxxxxxxx) %1:i64 = ctlz %0 %2:i64 = addnw 4294967240:i64, %1 infer %2 known from Souper: 000000000000000000000000000000010000000000000000000000000000xxxx known from compiler: 0000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1:i1 = var %2:i1 = var %3:i8 = zext %2 %4:i8 = select %1, 1:i8, %3 %5:i1 = var %6:i8 = select %5, 1:i8, %3 %7:i8 = phi %0, %4, %3, %3, %6 infer %7 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 7 %1:i32 = var (000000000000000000000000000000x0) %2:i32 = or 1:i32, %1 %3:i32 = var (000000000000000000000000000000x0) %4:i32 = or 1:i32, %3 %5 = block 2 %6:i32 = var (000000000000000000000000000000x1) %7:i32 = phi %5, %6, %4 %8:i32 = phi %0, 2:i32, %2, 2:i32, %4, %7, 3:i32, 2:i32 infer %8 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 2 %2 = block 2 %3:i8 = var (0000000x) %4 = block 28 %5:i8 = phi %4, %3, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8 %6:i8 = phi %1, %3, %5 %7:i8 = phi %0, %6, %5, %5 infer %7 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = addnsw 18446744073709551603:i64, %0 %2:i64 = lshr 284022022208:i64, %1 infer %2 known from Souper: 0000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 9 %1 = block 6 %2:i8 = phi %1, 1:i8, 1:i8, 0:i8, 1:i8, 1:i8, 0:i8 %3 = block 4 %4:i8 = phi %3, 1:i8, 1:i8, 0:i8, 0:i8 %5:i8 = phi %0, %2, 1:i8, 1:i8, %4, 1:i8, 1:i8, 1:i8, 1:i8, 1:i8 infer %5 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 3 %2:i32 = var (000000000000000000000000000000x1) %3:i32 = phi %1, 3:i32, 1:i32, %2 %4:i32 = phi %0, %3, %3, 3:i32 infer %4 known from Souper: 000000000000000000000000000000x1 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 13 %1 = block 8 %2:i32 = phi %1, 0:i32, 0:i32, 0:i32, 0:i32, 0:i32, 0:i32, 2:i32, 1:i32 %3:i32 = phi %0, 0:i32, 0:i32, 0:i32, 0:i32, 0:i32, 0:i32, 0:i32, 0:i32, %2, %2, 0:i32, 0:i32, 0:i32 infer %3 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (0000000000000000000000000000xxxx) %2:i8 = trunc %1 %3 = block 2 %4:i8 = var (0000xxxx) %5:i8 = phi %3, %4, 15:i8 %6:i8 = phi %0, %2, %5 infer %6 known from Souper: 0000xxxx known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 28 %1 = block 2 %2:i8 = phi %1, 1:i8, 0:i8 %3:i8 = phi %0, %2, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (000000000000000000xxxxxxxxxxxxxx) %1:i27 = trunc %0 %2:i27 = lshr 523648:i27, %1 infer %2 known from Souper: 00000000xxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 3 %2:i64 = var (000000000000000000000000000000000000000000000000000000000000000x) %3:i64 = phi %1, 0:i64, 0:i64, %2 %4:i64 = phi %0, 0:i64, 0:i64, %3 infer %4 known from Souper: 000000000000000000000000000000000000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1 = block 2 %2:i8 = var (0000000x) %3:i8 = phi %1, 0:i8, %2 %4:i1 = var %5:i8 = select %4, 1:i8, %3 %6:i8 = phi %0, %3, %5, %3, %3 infer %6 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 10 %1 = block 8 %2:i32 = phi %1, 0:i32, 1:i32, 2:i32, 3:i32, 4:i32, 5:i32, 6:i32, 7:i32 %3:i32 = phi %0, %2, 100000:i32, 100000:i32, 100000:i32, 100000:i32, 100000:i32, 100000:i32, 100000:i32, 100000:i32, 100000:i32 infer %3 known from Souper: 000000000000000xx0000xx0x0x00xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (00000000000000000000000000000xxx) %1:i32 = addnw 5:i32, %0 %2:i1 = ult %1, 13:i32 infer %2 known from Souper: 1 known from compiler: x souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = srem %0, 10:i32 %2:i32 = addnsw 48:i32, %1 infer %2 known from Souper: 000000000000000000000000001xxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 11 %2:i8 = var (0000000x) %3:i8 = var (0000000x) %4:i8 = var (0000000x) %5:i8 = var (0000000x) %6:i8 = phi %1, %2, %3, %4, 1:i8, 1:i8, 1:i8, 1:i8, 1:i8, 0:i8, 1:i8, %5 %7:i8 = var (0000000x) %8:i8 = phi %0, %6, %7 infer %8 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 2 %2:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %3:i64 = phi %1, 0:i64, %2 %4:i64 = phi %0, %3, 0:i64, 0:i64 infer %4 known from Souper: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i24 = trunc %0 %2:i24 = lshr 48:i24, %1 infer %2 known from Souper: 000000000000000000xxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = var (00000000000000000000000000000000000000000000000xxxxxxxxxxxxxxxx0) %2:i64 = add %0, %1 %3:i16 = var %4:i64 = zext %3 %5:i64 = urem %2, %4 infer %5 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 000000000000000000000000000000000000000000000000xxxxxxxxxxxxxxxx llvm is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %1:i64 = shlnw %0, 3:i64 %2:i64 = lshr 282578783371265:i64, %1 infer %2 known from Souper: 000000000000000x0000000x0000000x0000000x0000000x0000000x0000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %1:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %2:i64 = addnw %0, %1 %3:i32 = var %4:i64 = zext %3 %5:i64 = add %2, %4 infer %5 known from Souper: 00000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 0000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i32 = phi %1, 359:i32, 361:i32 %3:i32 = phi %0, %2, 356:i32 infer %3 known from Souper: 0000000000000000000000010110xxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = var (000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00) %2:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %3:i64 = addnw %1, %2 %4:i1 = ult %0, %3 %5:i64 = select %4, %0, %3 infer %5 known from Souper: 00000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = lshr %0, 3:i32 %2:i32 = udiv 16:i32, %1 infer %2 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 000000000000000000000000000xxxxx llvm is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1 = block 3 %2:i32 = var (000000000000000000000000xxxxxxxx) %3:i64 = zext %2 %4:i64 = addnsw %0, %3 %5:i64 = urem %4, %3 infer %5 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 00000000000000000000000000000000000000000000000000000000xxxxxxxx llvm is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 11 %1 = block 11 %2:i32 = var (0000000000000000xxxxxxxxxxxxxxxx) %3:i32 = phi %1, 0:i32, %2, 2511:i32, 2652:i32, 2638:i32, 2659:i32, 2428:i32, 2436:i32, 2405:i32, 2420:i32, 2444:i32 %4:i32 = phi %0, %3, 0:i32, 2510:i32, 2651:i32, 2637:i32, 2658:i32, 2427:i32, 2435:i32, 2404:i32, 2419:i32, 2443:i32 infer %4 known from Souper: 0000000000000000xxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i32 = trunc %0 %2:i1 = ult 536870912:i32, %1 %3:i32 = select %2, 536870912:i32, %1 infer %3 known from Souper: 00xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 2 %2:i32 = phi %1, 2:i32, 0:i32 %3:i1 = var %4:i32 = zext %3 %5:i32 = phi %0, %2, %4, 1:i32 infer %5 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = and 4294967295:i64, %0 %2:i32 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxx000) %3:i64 = zext %2 %4:i64 = lshr %1, %3 infer %4 known from Souper: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (00000000000000000000000000000xxx) %1:i32 = shl 16:i32, %0 %2:i32 = add 65520:i32, %1 infer %2 known from Souper: 000000000000000100000xxxxxxx0000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i64 = var (0000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %2:i64 = phi %0, %1, 0:i64 %3:i64 = var (000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxx000000000000) %4:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00) %5:i64 = addnw %3, %4 %6:i64 = addnsw %2, %5 infer %6 known from Souper: 00000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 0000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1 = block 5 %2:i32 = phi %1, 1:i32, 3:i32, 3:i32, 3:i32, 3:i32 %3:i32 = phi %0, 1:i32, 2:i32, 2:i32, 2:i32, %2 infer %3 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (0000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0000) %1:i64 = addnw 40:i64, %0 %2:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %3:i64 = shlnw %2, 3:i64 %4:i64 = addnw %1, %3 infer %4 known from Souper: 000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx000 known from compiler: 00000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx000 souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1 = block 5 %2:i32 = var (0000000000000000000000000000011x) %3:i32 = phi %1, 0:i32, 0:i32, 0:i32, 7:i32, %2 %4:i1 = var %5:i32 = select %4, 5:i32, %3 %6:i32 = phi %0, %3, 4:i32, %5, 8:i32, 4:i32 infer %6 known from Souper: 0000000000000000000000000000xxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 3 %2:i32 = var (xxxxxxxxxxxxxxxxxxxxxxxx1xxxxxxx) %3:i32 = or 256:i32, %2 %4:i32 = or 768:i32, %2 %5:i32 = phi %0, %3, %4 infer %5 known from Souper: xxxxxxxxxxxxxxxxxxxxxxx11xxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxx1xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i1 = var %1:i32 = select %0, 16:i32, 8:i32 %2:i32 = subnsw 0:i32, %1 infer %2 known from Souper: 1111111111111111111111111111x000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxx000 souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1:i32 = var (00000000000000000000000000000xxx) %2:i32 = addnw 1:i32, %1 %3:i24 = var (00000000000000000000000x) %4:i32 = zext %3 %5:i32 = addnw %2, %4 infer %5 known from Souper: 0000000000000000000000000000xxxx known from compiler: 000000000000000000000000000xxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 3 %2:i32 = phi %1, 1:i32, 2:i32, 0:i32 %3:i32 = phi %0, 1:i32, %2 infer %3 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 6 %1:i1 = var %2:i32 = select %1, 2443:i32, 203:i32 %3 = block 3 %4:i32 = phi %3, 2443:i32, 2444:i32, 203:i32 %5 = block 3 %6:i32 = var (000000000000000000001001xxxx0100) %7:i32 = var (000000000000000000001001xxxx0011) %8:i32 = var (0000000000000000000000001011xxxx) %9:i32 = phi %5, %6, %7, %8 %10 = block 3 %11:i32 = var (000000000000000000001001011xx10x) %12:i32 = var (000000000000000000001001011xxxxx) %13:i32 = var (000000000000000000000000101x100x) %14:i32 = phi %10, %11, %12, %13 %15:i32 = phi %0, 1267:i32, %2, 1268:i32, %4, %9, %14 infer %15 known from Souper: 00000000000000000000xx0xxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = shl 80:i32, %0 infer %1 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxx0000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = shl 72:i32, %0 infer %1 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxx000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i1 = var %2:i32 = var (000000000000000000000000000xxxxx) %3:i32 = select %1, 11:i32, %2 %4:i32 = phi %0, %3, 11:i32 infer %4 known from Souper: 000000000000000000000000000xxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = var (0000000000000000000000000000000000000000000000000000000000xxx001) %2:i64 = shl 1:i64, %1 %3:i64 = and %0, %2 infer %3 known from Souper: 000000x0000000x0000000x0000000x0000000x0000000x0000000x0000000x0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (00000000000000000000000000xxxxxx) %2:i64 = zext %1 %3:i64 = phi %0, %2, %2 infer %3 known from Souper: 0000000000000000000000000000000000000000000000000000000000xxxxxx known from compiler: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1 = block 3 %2 = block 2 %3:i32 = var (0000000000000000xxxxxxxxxxxxxxxx) %4:i32 = phi %1, 0:i32, %3, 0:i32 %5:i32 = phi %0, 1:i32, %4, %4, 1:i32 infer %5 known from Souper: 0000000000000000xxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 78 %1:i1 = var %2:i32 = var (0000000000000000000000000xx0xxxx) %3:i32 = select %1, 110:i32, %2 %4:i1 = var %5:i32 = var (000000000000000000000000000x0x0x) %6:i32 = select %4, 20:i32, %5 %7:i1 = var %8:i32 = var (000000000000000000000000000xx000) %9:i32 = select %7, 23:i32, %8 %10:i1 = var %11:i32 = var (000000000000000000000000000xx0xx) %12:i32 = select %10, 26:i32, %11 %13:i1 = var %14:i32 = var (000000000000000000000000000xxxx0) %15:i32 = select %13, 29:i32, %14 %16:i1 = var %17:i32 = var (00000000000000000000000000x00x0x) %18:i32 = select %16, 36:i32, %17 %19:i1 = var %20:i32 = var (00000000000000000000000000x0x000) %21:i32 = select %19, 39:i32, %20 %22:i1 = var %23:i32 = var (00000000000000000000000000x0x0x0) %24:i32 = select %22, 41:i32, %23 %25:i1 = var %26:i32 = var (00000000000000000000000000x0xx00) %27:i32 = select %25, 43:i32, %26 %28:i1 = var %29:i32 = var (000000000000000000000000x00xxx0x) %30:i32 = select %28, 156:i32, %29 %31:i1 = var %32:i32 = var (000000000000000000000000x0xxxx0x) %33:i32 = select %31, 188:i32, %32 %34:i1 = var %35:i32 = var (000000000000000000000000xx0xxx0x) %36:i32 = select %34, 220:i32, %35 %37:i32 = phi %0, 0:i32, 245:i32, 237:i32, 244:i32, 236:i32, 243:i32, 235:i32, 242:i32, 234:i32, 241:i32, 233:i32, 240:i32, 232:i32, 239:i32, 231:i32, 238:i32, 230:i32, 49:i32, 47:i32, 18:i32, 17:i32, 16:i32, 14:i32, 12:i32, 11:i32, 10:i32, 8:i32, 6:i32, 5:i32, 3:i32, 2:i32, 1:i32, 4:i32, 9:i32, 13:i32, 28:i32, 32:i32, 33:i32, 34:i32, %3, 45:i32, 7:i32, 15:i32, 19:i32, %6, 22:i32, %9, %12, %15, 222:i32, 223:i32, 35:i32, %18, 38:i32, %21, %24, %27, 46:i32, 48:i32, 31:i32, 224:i32, 225:i32, 226:i32, 227:i32, 228:i32, 229:i32, 25:i32, 118:i32, 119:i32, 120:i32, 121:i32, 122:i32, 123:i32, 124:i32, 125:i32, %30, %33, %36 infer %37 known from Souper: 000000000000000000000000xxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 3 %2 = block 2 %3:i32 = var (0000000000000000000000000000000x) %4:i32 = phi %1, 0:i32, %3, 1:i32 %5 = block 3 %6:i32 = phi %5, %4, 1:i32, 1:i32 %7:i32 = phi %0, %4, %6, %6 infer %7 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1:i32 = var %2:i32 = add 4294967295:i32, %1 %3:i32 = lshr 4145151:i32, %2 infer %3 known from Souper: 0000000000xxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i1 = var %2:i8 = zext %1 %3 = block 2 %4:i8 = phi %3, 1:i8, %2 %5:i8 = phi %0, %2, %4 infer %5 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2 = block 2 %3:i8 = var (0000000x) %4:i8 = phi %1, 0:i8, %3 %5:i8 = phi %0, 0:i8, %4 infer %5 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %1:i64 = subnsw 36:i64, %0 %2:i1 = ult %1, 2:i64 %3:i64 = select %2, %1, 2:i64 infer %3 known from Souper: 00000000000000000000000000000000000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i8 = var (0000000x) %3:i8 = var (0000000x) %4:i8 = phi %1, %2, %3 %5:i8 = phi %0, %4, 0:i8 infer %5 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 6 %2:i32 = var (0000000000000000000000000000000x) %3:i32 = phi %1, 0:i32, 1:i32, 1:i32, 0:i32, %2, 1:i32 %4:i32 = phi %0, %3, 2:i32, 2:i32 infer %4 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (000000000000000000000000xxxxxxxx) %1:i32 = and 1:i32, %0 %2:i1 = var %3:i32 = select %2, 14:i32, 15:i32 %4:i32 = shl %1, %3 infer %4 known from Souper: 0000000000000000xx00000000000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 9 %1 = block 6 %2:i8 = phi %1, 0:i8, 1:i8, 0:i8, 1:i8, 1:i8, 0:i8 %3:i8 = phi %0, 0:i8, 0:i8, 0:i8, %2, 0:i8, 0:i8, 0:i8, %2, %2 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (000000000000000000000000000xxxxx) %1:i32 = subnsw 32:i32, %0 %2:i1 = ult 32:i32, %1 infer %2 known from Souper: 0 known from compiler: x souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 7 %1 = block 2 %2:i32 = phi %1, 3:i32, 1:i32 %3:i32 = phi %0, 0:i32, 2:i32, 3:i32, 1:i32, 1:i32, %2, 2:i32 infer %3 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (0000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0) %1:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %2:i64 = addnw %0, %1 %3:i64 = udiv %2, 4294967295:i64 infer %3 known from Souper: 00000000000000000000000000000000000000000000000000000000000000xx known from compiler: 0000000000000000000000000000000000000000000000000000000000000xxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1:i64 = phi %0, 1:i64, 8:i64, 4:i64, 2:i64, 2:i64 %2:i64 = var %3:i64 = add %1, %2 %4:i64 = urem %3, %1 infer %4 known from Souper: 0000000000000000000000000000000000000000000000000000000000000xxx known from compiler: 000000000000000000000000000000000000000000000000000000000000xxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i1 = var %1:i64 = select %0, 15:i64, 19:i64 %2:i64 = addnw 1:i64, %1 infer %2 known from Souper: 0000000000000000000000000000000000000000000000000000000000010x00 known from compiler: 0000000000000000000000000000000000000000000000000000000000xxxx00 souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 7 %1 = block 4 %2 = block 2 %3:i8 = var (0000000x) %4 = block 2 %5:i8 = var (0000000x) %6:i8 = phi %1, %3, %5, %3, %3 %7:i8 = phi %0, 1:i8, %6, %6, %6, %6, %6, %6 infer %7 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 12 %1:i32 = var (0000000000000000000000000000000x) %2:i32 = or 2:i32, %1 %3:i32 = var (0000000000000000000000000000000x) %4:i32 = or 2:i32, %3 %5:i1 = var %6:i32 = zext %5 %7:i32 = phi %0, %2, %4, 0:i32, %6, 1:i32, 2:i32, 3:i32, 4:i32, 4:i32, 5:i32, 0:i32, 0:i32 infer %7 known from Souper: 00000000000000000000000000000xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (0000000000000000000000000000xx00) %1:i32 = mulnw 3:i32, %0 %2:i32 = addnw 8:i32, %1 infer %2 known from Souper: 00000000000000000000000000xxxx00 known from compiler: 0000000000000000000000000xxxxx00 souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 58 %1 = block 2 %2:i32 = phi %1, 7:i32, 0:i32 %3:i1 = var %4 = block 2 %5:i32 = var (00000000000000000000000000000x00) %6:i32 = select %3, 0:i32, %5 %7:i1 = var %8 = block 2 %9:i32 = phi %8, 0:i32, 5:i32 %10:i32 = select %7, 6:i32, %9 %11:i32 = phi %0, %2, 0:i32, 0:i32, 0:i32, 0:i32, 0:i32, 0:i32, %6, %6, 0:i32, 0:i32, 0:i32, 0:i32, 0:i32, %10, %9, 0:i32, 0:i32, 8:i32, 0:i32, 0:i32, 0:i32, 0:i32, 0:i32, 0:i32, 0:i32, 0:i32, 0:i32, 10:i32, 0:i32, 0:i32, 0:i32, 0:i32, 0:i32, 0:i32, 0:i32, 0:i32, 0:i32, 0:i32, 9:i32, 11:i32, 0:i32, 0:i32, 0:i32, 0:i32, 0:i32, 0:i32, 0:i32, 11:i32, 0:i32, 0:i32, 0:i32, 0:i32, 0:i32, 0:i32, 0:i32, 0:i32, 0:i32 infer %11 known from Souper: 0000000000000000000000000000xxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 3 %2:i32 = phi %1, 2:i32, 3:i32, 3:i32 %3:i32 = phi %0, 3:i32, %2 infer %3 known from Souper: 0000000000000000000000000000001x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i16 = var (xxxx0000000xx010) %3:i16 = var (xxxx0000000xx000) %4:i16 = phi %1, %2, %3 %5:i16 = or 32:i16, %4 %6:i16 = phi %0, %4, %5 infer %6 known from Souper: xxxx000000xxx0x0 known from compiler: xxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (00000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx000) %1:i64 = addnsw 18446744073709551576:i64, %0 %2:i64 = urem %1, 40:i64 infer %2 known from Souper: 0000000000000000000000000000000000000000000000000000000000xxx000 known from compiler: 0000000000000000000000000000000000000000000000000000000000xxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 4 %2:i32 = phi %1, 7:i32, 1:i32, 1:i32, 1:i32 %3:i32 = phi %0, 7:i32, %2 infer %3 known from Souper: 00000000000000000000000000000xx1 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i32 = trunc %0 %2:i32 = lshr 255:i32, %1 infer %2 known from Souper: 000000000000000000000000xxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (0000000000000000000000000000000x) %1:i32 = or 4277009102:i32, %0 %2:i32 = bswap %1 infer %2 known from Souper: 1100111x111110101110110111111110 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1:i32 = var (00000000000000000000000000000x00) %2:i32 = or 3:i32, %1 %3:i32 = var (00000000000000000000000000000x00) %4:i32 = or 3:i32, %3 %5:i32 = var (000000000000000000000000000000x0) %6:i32 = or 5:i32, %5 %7:i32 = phi %0, 0:i32, %2, %4, %6, 1:i32 infer %7 known from Souper: 00000000000000000000000000000xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 10 %1 = block 3 %2:i1 = var %3:i8 = zext %2 %4:i1 = var %5:i8 = zext %4 %6 = block 5 %7:i8 = var (0000000x) %8:i8 = var (0000000x) %9:i8 = phi %6, %5, %5, %5, %7, %8 %10:i8 = phi %0, 0:i8, 0:i8, %3, %3, %3, %3, %5, %9, 0:i8, 0:i8 infer %10 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 14 %2 = block 13 %3:i8 = var (0000000x) %4:i8 = phi %1, %3, %3, %3, %3, %3, 0:i8, 0:i8, %3, %3, %3, %3, %3, %3, %3 %5:i8 = phi %0, 1:i8, %4 infer %5 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (0000000000000000000000000000xx0x) %2:i1 = eq 13:i32, %1 %3:i32 = var (000000000000000000000000000000x1) %4:i32 = phi %0, 3:i32, %3 %5:i32 = select %2, 1:i32, %4 infer %5 known from Souper: 000000000000000000000000000000x1 known from compiler: 000000000000000000000000000000xx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (00000000000000000000000000x10101) %1:i64 = zext %0 %2:i64 = shl 1:i64, %1 infer %2 known from Souper: 0000000000x0000000000000000000000000000000x000000000000000000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i8 = phi %1, 0:i8, 1:i8 %3 = block 14 %4 = block 11 %5:i8 = var (0000000x) %6:i8 = phi %3, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 1:i8, 0:i8, %5, %5 %7:i8 = phi %0, %2, %6 infer %7 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = var (00000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx000) %2:i64 = add %0, %1 %3:i64 = urem %2, %1 %4:i64 = sub %2, %3 infer %4 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (0000000000000000000000000000xx00) %1:i32 = shl 5:i32, %0 infer %1 known from Souper: 00000000000000000x0x0x0x0x0x0x0x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 5 %2:i8 = var (0000000x) %3:i8 = phi %1, 0:i8, 0:i8, 0:i8, 0:i8, %2 %4 = block 5 %5:i8 = var (0000000x) %6:i8 = phi %4, %3, %3, %3, %5, %3 %7:i8 = phi %0, %3, %6, %6 infer %7 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = shl %0, 3:i32 %2:i32 = lshr 1246316593:i32, %1 infer %2 known from Souper: 0x00x0x00x00x0xx0x00x0xx0xxxx0xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (000000000000000000000000xxxxxxxx) %1:i32 = addnsw 4294967263:i32, %0 %2:i32 = lshr 4063239:i32, %1 infer %2 known from Souper: 0000000000xxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = sub 32:i32, %0 %2:i32 = lshr 68:i32, %1 infer %2 known from Souper: 0000000000000000000000000xxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1 = block 4 %2:i32 = phi %1, 1:i32, 0:i32, 0:i32, 0:i32 %3:i32 = phi %0, %2, 3:i32, 3:i32, 3:i32 infer %3 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i64 = var (0000000000000000000000000000000000000000000000000000000000xxxxxx) %2:i64 = phi %0, %1, 64:i64 %3:i64 = subnsw 67:i64, %2 infer %3 known from Souper: 000000000000000000000000000000000000000000000000000000000xxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (00000000000000000000000000000xx0) %2:i32 = or 1:i32, %1 %3 = block 6 %4:i32 = var (000000000000000000000000000001xx) %5:i32 = phi %3, 0:i32, 1:i32, 2:i32, 3:i32, 4:i32, %4 %6:i32 = phi %0, %2, %5 infer %6 known from Souper: 00000000000000000000000000000xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (000000000000000000000000000xxxxx) %1:i32 = subnsw 32:i32, %0 %2:i1 = eq 0:i32, %1 infer %2 known from Souper: 0 known from compiler: x souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i12 = trunc %0 %2:i12 = lshr 800:i12, %1 infer %2 known from Souper: 00xxxxxxxxxx known from compiler: xxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %1:i64 = mulnw 184:i64, %0 %2:i64 = addnw 8:i64, %1 infer %2 known from Souper: 000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx000 known from compiler: 00000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx000 souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 7 %1 = block 3 %2:i32 = phi %1, 2:i32, 2:i32, 1:i32 %3:i32 = phi %0, 2:i32, 0:i32, 0:i32, 2:i32, 1:i32, 0:i32, %2 infer %3 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 316 %1:i32 = phi %0, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 0:i32, 1:i32, 1:i32, 1:i32, 4294967295:i32, 4294967295:i32, 0:i32, 1:i32, 1:i32, 1:i32, 1:i32, 1:i32, 1:i32, 1:i32, 1:i32, 1:i32, 1:i32, 1:i32, 1:i32, 1:i32, 1:i32, 1:i32, 1:i32, 1:i32, 1:i32, 1:i32, 1:i32, 1:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 0:i32, 0:i32, 0:i32, 0:i32, 4294967295:i32, 0:i32, 0:i32, 0:i32, 0:i32, 0:i32, 0:i32, 0:i32, 0:i32, 0:i32, 0:i32, 0:i32, 0:i32, 0:i32, 0:i32, 0:i32, 0:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32, 4294967295:i32 %2:i32 = add 1:i32, %1 infer %2 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 1 %1:i64 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0) %2:i64 = addnsw 2:i64, %1 %3:i64 = phi %0, %2 infer %3 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1:i32 = var (0000000000000000000000000000001x) %2:i32 = phi %0, 3:i32, %1, %1, 3:i32 %3:i8 = trunc %2 infer %3 known from Souper: 0000001x known from compiler: 000000xx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 6 %1 = block 2 %2:i8 = phi %1, 1:i8, 0:i8 %3 = block 2 %4:i8 = phi %3, 1:i8, 0:i8 %5:i8 = phi %0, 0:i8, 0:i8, 0:i8, 0:i8, %2, %4 infer %5 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 6 %2:i32 = phi %1, 7:i32, 6:i32, 5:i32, 4:i32, 3:i32, 2:i32 %3:i32 = phi %0, %2, 8:i32 infer %3 known from Souper: 0000000000000000000000000000xxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (00000000000000000000000000xxxxxx) %1:i32 = subnsw 64:i32, %0 %2:i32 = addnsw 4294967295:i32, %1 infer %2 known from Souper: 00000000000000000000000000xxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 5 %2 = block 2 %3:i32 = phi %2, 2:i32, 3:i32 %4:i32 = var (000000000000000000000000000000xx) %5:i32 = var (000000000000000000000000000000x0) %6:i32 = phi %1, 1:i32, %3, %3, %4, %5 %7:i32 = phi %0, %6, %3, %3 infer %7 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i64 = zext %0 %2:i64 = addnw 31:i64, %1 %3:i64 = urem %2, %1 infer %3 known from Souper: 00000000000000000000000000000000000000000000000000000000000xxxxx known from compiler: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i1 = var %2:i32 = var (000000000000000000001011000011xx) %3:i32 = var (0000000000000000000010110001011x) %4:i32 = select %1, %2, %3 %5:i32 = var (00000000000000000000000001011xxx) %6:i32 = var (0000000000000000000000000110xxx1) %7:i32 = select %1, %5, %6 %8:i32 = phi %0, %4, %7 infer %8 known from Souper: 00000000000000000000x0xx0xxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1 = block 2 %2:i8 = phi %1, 0:i8, 1:i8 %3:i8 = phi %0, %2, 1:i8, 1:i8, 1:i8 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (00000000000000000000000000xx0000) %2:i32 = xor 48:i32, %1 %3:i32 = phi %0, %2, 0:i32 infer %3 known from Souper: 00000000000000000000000000xx0000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i1 = ult 256:i64, %0 %2:i64 = select %1, 256:i64, %0 infer %2 known from Souper: 0000000000000000000000000000000000000000000000000000000xxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %1:i64 = shlnw %0, 4:i64 %2:i64 = lshr 1970384967303178:i64, %1 infer %2 known from Souper: 0000000000000xxx000000000000xxxx000000000000xxxx000000000000xxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 1 %1:i64 = var %2:i64 = var %3:i64 = sub %1, %2 %4:i1 = ult %3, 2:i64 %5:i64 = select %4, %3, 2:i64 infer %5 known from Souper: 00000000000000000000000000000000000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i32 = var (000000000000000000000000xxxxxxxx) %2:i32 = xor 1:i32, %1 %3:i32 = phi %0, 0:i32, %2, 0:i32 infer %3 known from Souper: 000000000000000000000000xxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 4 %2:i32 = phi %1, 11:i32, 1:i32, 1:i32, 1:i32 %3:i32 = phi %0, 11:i32, %2 infer %3 known from Souper: 0000000000000000000000000000x0x1 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = var (0000000000000000000000000000000000000000000000000000000000x10101) %2:i64 = shl 1:i64, %1 %3:i64 = and %0, %2 infer %3 known from Souper: 0000000000x0000000000000000000000000000000x000000000000000000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i64 = var %2:i64 = and 15:i64, %1 %3:i64 = ctpop %2 infer %3 known from Souper: 0000000000000000000000000000000000000000000000000000000000000xxx known from compiler: 000000000000000000000000000000000000000000000000000000000xxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 6 %1:i8 = var (0xxxxxxx) %2:i32 = zext %1 %3:i32 = phi %0, %2, 0:i32, 0:i32, 0:i32, 0:i32, 0:i32 infer %3 known from Souper: 0000000000000000000000000xxxxxxx known from compiler: 000000000000000000000000xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i32 = var (000000000000000000000000000000xx) %3:i32 = phi %1, 1:i32, %2 %4:i32 = phi %0, 1:i32, %3 infer %4 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 10 %1 = block 6 %2 = block 4 %3:i32 = var (000000000000000000000000000000x0) %4:i32 = phi %1, 1:i32, %3, %3, %3, %3, %3 %5 = block 5 %6:i32 = phi %5, 2:i32, %4, 0:i32, 1:i32, 1:i32 %7:i32 = phi %0, %4, %4, 2:i32, %6, %6, 2:i32, %4, %4, %4, %4 infer %7 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1:i32 = phi %0, 4:i32, 3:i32, 2:i32, 1:i32 %2:i32 = shl 65536:i32, %1 infer %2 known from Souper: 00000000000xxxx00000000000000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 2 %2 = block 2 %3:i8 = var (xxxxx1xx) %4:i8 = phi %1, %3, 20:i8 %5:i8 = phi %0, 20:i8, %4, 36:i8 infer %5 known from Souper: xxxxx1xx known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx000) %1:i64 = addnsw 18446744073709551592:i64, %0 %2:i64 = urem %1, 24:i64 infer %2 known from Souper: 00000000000000000000000000000000000000000000000000000000000xx000 known from compiler: 00000000000000000000000000000000000000000000000000000000000xxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 1 %1:i32 = var (000000000000000000000000xxxxxxxx) %2:i62 = zext %1 %3:i62 = lshr 35176190105628672:i62, %2 infer %3 known from Souper: 0000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = ctpop %0 %2:i64 = cttz %0 %3:i64 = addnw %1, %2 infer %3 known from Souper: 000000000000000000000000000000000000000000000000000000000xxxxxxx known from compiler: 00000000000000000000000000000000000000000000000000000000xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 5 %2:i32 = var (0000000000000000000000000000000x) %3:i8 = trunc %2 %4:i8 = phi %1, %3, 0:i8, %3, %3, %3 %5:i8 = phi %0, %4, %3, %3 infer %5 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i1 = ult 255:i32, %0 %2:i32 = var (00000000xxxxxxxxxxxxxxxxxxxxxxxx) %3:i32 = or 2560:i32, %2 %4:i32 = or 2048:i32, %0 %5:i32 = select %1, %3, %4 infer %5 known from Souper: 00000000xxxxxxxxxxxx1xxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxx1xxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = var %2:i32 = shl %0, %1 %3:i32 = var (000000000000000000000000000xxxxx) %4:i32 = subnsw 32:i32, %3 %5:i32 = lshr %2, %4 infer %5 known from Souper: 0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1 = block 2 %2:i32 = phi %1, 2:i32, 1:i32 %3:i32 = phi %0, %2, %2, %2, 2:i32 infer %3 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i1 = phi %0, 1:i1, 0:i1, 0:i1 %2:i32 = phi %0, 0:i32, 329:i32, 330:i32 %3:i32 = select %1, 324:i32, %2 infer %3 known from Souper: 0000000000000000000000010100xxxx known from compiler: 00000000000000000000000x0x00xxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1 = block 2 %2:i32 = phi %1, 1:i32, 0:i32 %3:i32 = phi %0, %2, 1:i32, 0:i32, 0:i32 infer %3 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (1111111111111111111111111xxxxxxx) %1:i32 = cttz %0 %2:i32 = or 160:i32, %1 infer %2 known from Souper: 00000000000000000000000010100xxx known from compiler: 000000000000000000000000101xxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = var (000000000000000000000000xxxxxxxx) %2:i32 = urem %0, %1 %3:i32 = shlnw %2, 3:i32 infer %3 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxx000 known from compiler: 000000000000000000000xxxxxxxx000 llvm is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 7 %2 = block 7 %3:i8 = var (0000000x) %4:i8 = phi %1, 1:i8, %3, 1:i8, 1:i8, 1:i8, 1:i8, 1:i8 %5:i8 = phi %0, %4, 1:i8, 1:i8 infer %5 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 7 %1:i1 = var %2:i32 = var (0000000000000000000000000000xxx1) %3:i32 = select %1, 2:i32, %2 %4:i32 = phi %0, 17:i32, 21:i32, 20:i32, 18:i32, 15:i32, %3, 14:i32 infer %4 known from Souper: 000000000000000000000000000xxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1:i1 = var %2:i32 = var (0000000000000000000000000000000x) %3:i32 = select %1, 2:i32, %2 %4:i32 = phi %0, 1:i32, 2:i32, %3, 0:i32, 0:i32 infer %4 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 6 %1 = block 4 %2:i8 = phi %1, 0:i8, 0:i8, 0:i8, 1:i8 %3:i8 = phi %0, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, %2 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i1 = var %2:i32 = select %1, 2284:i32, 1442:i32 %3 = block 2 %4:i32 = var (00000000000000000000xx0x1x10xxxx) %5:i32 = phi %3, %4, %4 %6:i32 = phi %0, %2, %5 infer %6 known from Souper: 00000000000000000000xx0x1x10xxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i32 = var (0000000000000000000000000000xxxx) %2:i32 = shl 1:i32, %1 %3:i32 = addnsw 4294967295:i32, %2 infer %3 known from Souper: 00000000000000000xxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (0000000000000000xxxxxxxxxxxxxxxx) %1:i32 = addnsw 4294966955:i32, %0 %2:i32 = lshr 8487279:i32, %1 infer %2 known from Souper: 00000000xxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i64 = var (0000000000000000000000000000000000000000000000000000000000000xxx) %3:i64 = phi %1, %2, 3:i64 %4:i64 = phi %0, %3, 3:i64 infer %4 known from Souper: 0000000000000000000000000000000000000000000000000000000000000xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i64 = var %2:i64 = var %3:i64 = and %1, %2 %4:i64 = add 18446744073709551615:i64, %3 %5:i64 = or %4, %3 infer %5 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx1 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i4 = trunc %0 %2:i4 = lshr 3:i4, %1 infer %2 known from Souper: 00xx known from compiler: xxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i32 = phi %1, 512:i32, 256:i32 %3:i32 = phi %0, %2, 0:i32 infer %3 known from Souper: 0000000000000000000000xx00000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (0000000000000000000000000000000x) %2:i32 = shlnw %1, 24:i32 %3:i32 = phi %0, %2, 0:i32 infer %3 known from Souper: 0000000x000000000000000000000000 known from compiler: xxxxxxxx000000000000000000000000 souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 4 %2:i32 = var (0000000000000000000000000000x0xx) %3:i32 = phi %0, 0:i32, 0:i32, %2 %4:i32 = shl 1:i32, %3 infer %4 known from Souper: 00000000000000000000xxxx0000xxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i64 = var (000000000000000000000000xxxxxxxx00000000000000000000000000000000) %2:i64 = or 14:i64, %1 %3:i64 = phi %0, %2, 14:i64 infer %3 known from Souper: 000000000000000000000000xxxxxxxx00000000000000000000000000001110 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx111x souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i16 = var %1:i64 = zext %0 %2:i64 = lshr 3298534883333:i64, %1 infer %2 known from Souper: 0000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i64 = var (00000000000000000000000000000000000000000000000000000000000xxxxx) %2:i64 = phi %0, %1, 32:i64 %3:i64 = subnsw 32:i64, %2 infer %3 known from Souper: 0000000000000000000000000000000000000000000000000000000000xxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1:i1 = var %2:i32 = var (000000000000000000000000000000xx) %3:i32 = select %1, 0:i32, %2 %4:i32 = var %5:i32 = and 3:i32, %4 %6:i32 = phi %0, 2:i32, %3, %5, 2:i32 infer %6 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (000000000000000000000000000000000000000000000000xxxxxxxxxxxxxxxx) %1:i64 = var (00000000000000000000000000000000000000000000000000000000000x0000) %2:i64 = shl %0, %1 %3:i32 = var %4:i64 = zext %3 %5:i64 = or %2, %4 infer %5 known from Souper: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i32 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxx000) %2:i64 = zext %1 %3:i64 = urem %0, %2 infer %3 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx llvm is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 7 %2 = block 2 %3:i32 = var (0000000000000000000000000000000x) %4:i32 = phi %1, 1:i32, 0:i32, %3, 1:i32, 1:i32, 1:i32, 1:i32 %5:i32 = phi %0, %4, 1:i32 infer %5 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = udiv %0, 3:i64 %2:i64 = addnuw 1:i64, %1 infer %2 known from Souper: 0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %1:i64 = mulnw 100:i64, %0 %2:i32 = var %3:i64 = zext %2 %4:i64 = udiv %1, %3 infer %4 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 0000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx llvm is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 3 %2:i32 = var (000000000000000000000000000000xx) %3:i64 = zext %2 %4 = block 1 %5:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %6:i64 = phi %4, %5 %7:i64 = phi %0, %3, %6 infer %7 known from Souper: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 2 %2:i8 = var (0000000x) %3 = block 6 %4:i8 = var (0000000x) %5:i8 = phi %1, %2, %4 %6:i1 = var %7:i8 = select %6, %5, 0:i8 %8:i8 = phi %0, %5, %7, %5 infer %8 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 49 %2 = block 2 %3:i64 = var (0000000000000000000000000000000000000000000000000000000000x0x00x) %4:i64 = phi %1, 117:i64, 116:i64, 115:i64, 114:i64, 113:i64, 112:i64, 111:i64, 110:i64, 39:i64, 43:i64, 36:i64, 505:i64, 37:i64, 40:i64, 38:i64, 35:i64, 237:i64, 236:i64, 235:i64, 234:i64, 233:i64, 232:i64, 231:i64, 230:i64, 23:i64, 29:i64, 20:i64, 504:i64, 21:i64, 24:i64, 22:i64, 19:i64, 245:i64, 244:i64, 243:i64, 242:i64, 241:i64, 240:i64, 239:i64, 238:i64, 8:i64, 6:i64, 14:i64, 45:i64, 6:i64, 6:i64, 8:i64, 8:i64, %3 %5 = block 33 %6:i64 = phi %5, 117:i64, 116:i64, 115:i64, 114:i64, 113:i64, 112:i64, 111:i64, 110:i64, 39:i64, 43:i64, 36:i64, 44:i64, 37:i64, 40:i64, 38:i64, 35:i64, 237:i64, 236:i64, 235:i64, 234:i64, 233:i64, 232:i64, 231:i64, 230:i64, 23:i64, 29:i64, 20:i64, 30:i64, 21:i64, 24:i64, 22:i64, 19:i64, 0:i64 %7:i64 = phi %0, %4, %6 infer %7 known from Souper: 0000000000000000000000000000000000000000000000000000000xxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1 = block 2 %2:i32 = var %3:i64 = zext %2 %4:i64 = add %0, %3 %5:i64 = urem %4, %3 infer %5 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx llvm is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = var (0000000000000000000000000000000000000000000000000000000000xxx100) %2:i64 = shl 1:i64, %1 %3:i64 = and %0, %2 infer %3 known from Souper: 000x0000000x0000000x0000000x0000000x0000000x0000000x0000000x0000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 4 %2:i8 = var (0000000x) %3:i8 = phi %1, 0:i8, 0:i8, %2, %2 %4:i8 = phi %0, 0:i8, %3 infer %4 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 7 %2:i32 = var (00000000000000000000000000000xxx) %3:i32 = phi %1, 1:i32, 1:i32, 1:i32, 1:i32, 1:i32, 5:i32, %2 %4:i32 = phi %0, 5:i32, 1:i32, %3 infer %4 known from Souper: 00000000000000000000000000000xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (000000000000000xxxxxxxxxxxxxxxxx) %2:i32 = addnw 1:i32, %1 %3:i32 = phi %0, %2, 0:i32 infer %3 known from Souper: 00000000000000xxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 7 %1:i1 = var %2:i1 = var %3:i8 = zext %2 %4:i8 = select %1, %3, 1:i8 %5:i8 = phi %0, %4, %4, %4, %4, %3, %3, %4 infer %5 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i64 = var %2:i64 = ctlz %1 %3:i64 = subnsw 64:i64, %2 infer %3 known from Souper: 000000000000000000000000000000000000000000000000000000000xxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1 = block 2 %2 = block 4 %3:i32 = var (000000000000000000000000000000x0) %4 = block 4 %5:i32 = var (000000000000000000000000000000x1) %6:i32 = phi %1, %3, %5 %7:i32 = phi %0, %6, 2:i32, %6, %6 infer %7 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 3 %2:i32 = phi %1, 0:i32, 1:i32, 1:i32 %3:i32 = phi %0, %2, 1:i32, 1:i32 infer %3 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1:i32 = var (00000000000000000000000000000xxx) %2:i32 = shl 65536:i32, %1 %3:i32 = add 4294901760:i32, %2 infer %3 known from Souper: 000000000xxxxxxx0000000000000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 3 %2:i32 = var (00000000000000000000111101000xxx) %3:i32 = phi %1, 3907:i32, 3908:i32, %2 %4:i32 = phi %0, %3, 3907:i32 infer %4 known from Souper: 00000000000000000000111101000xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i64 = sext %0 %2:i64 = lshr 2015880356742:i64, %1 infer %2 known from Souper: 00000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i1 = var %2:i8 = var (0000000x) %3:i8 = select %1, 0:i8, %2 %4:i8 = phi %0, %3, 1:i8 infer %4 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 6 %2:i64 = phi %1, 1:i64, 1:i64, 1:i64, 1:i64, 1:i64, 0:i64 %3:i64 = phi %0, 0:i64, %2, 1:i64 infer %3 known from Souper: 000000000000000000000000000000000000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = var %2:i64 = sub %0, %1 %3:i64 = var %4:i64 = lshr %3, 32:i64 %5:i1 = ult %2, %4 %6:i64 = select %5, %2, %4 infer %6 known from Souper: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 6 %1 = block 4 %2:i32 = var (0000000000000000000000000000000x) %3:i32 = phi %1, 23:i32, 23:i32, %2, 23:i32 %4:i32 = phi %0, 23:i32, 23:i32, 23:i32, 23:i32, %3, 23:i32 infer %4 known from Souper: 000000000000000000000000000x0xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 3 %2 = block 7 %3:i8 = var (0000000x) %4:i8 = var (0000000x) %5:i8 = var (0000000x) %6:i8 = phi %1, %3, %4, %5 %7:i8 = phi %0, %6, 1:i8 infer %7 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 8 %1 = block 6 %2 = block 4 %3:i8 = var (0000000x) %4:i8 = phi %1, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, %3 %5:i8 = phi %0, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, %4 infer %5 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 28 %1:i64 = var %2:i64 = var %3:i64 = sub %1, %2 %4:i1 = ult %3, 2:i64 %5:i64 = select %4, %3, 2:i64 infer %5 known from Souper: 00000000000000000000000000000000000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i64 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx000) %2:i64 = add 32:i64, %1 %3:i64 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx1001) %4:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxx111) %5:i64 = add %3, %4 %6:i64 = phi %0, %2, %5 infer %6 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 6 %1:i32 = var (00000000000000000000001000101xx1) %2:i32 = var (000000000000000000000010001010x0) %3:i32 = var (000000000000000000000010000110x1) %4:i32 = var (000000000000000000000010000111x0) %5:i32 = var (000000000000000000000010000000x1) %6:i32 = phi %0, %1, %2, %3, %4, %5, %5 %7:i64 = zext %6 infer %7 known from Souper: 0000000000000000000000000000000000000000000000000000001000xxxxxx known from compiler: 000000000000000000000000000000000000000000000000000000x000xxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i32 = var (00000000000000000000000000000xxx) %3 = block 6 %4:i32 = var (000000000000000000000000000000xx) %5:i32 = phi %1, %2, %4 %6:i32 = addnsw 1:i32, %5 %7:i32 = phi %0, %5, %6 infer %7 known from Souper: 0000000000000000000000000000xxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i32 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxx00000) %2:i32 = or 1:i32, %1 %3:i32 = phi %0, 1:i32, 1:i32, %2 infer %3 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxx00001 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx1 souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = var (0000000000000000000000000000xxxx) %2:i32 = urem %0, %1 %3:i32 = shlnw %2, 3:i32 infer %3 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxx000 known from compiler: 0000000000000000000000000xxxx000 llvm is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 4 %2:i32 = phi %1, 64:i32, 62:i32, 63:i32, 63:i32 %3:i32 = phi %0, 64:i32, %2 infer %3 known from Souper: 0000000000000000000000000xxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 15 %2:i8 = var (0000000x) %3:i8 = phi %1, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 2:i8, 2:i8, 0:i8, 2:i8, 2:i8, 2:i8, 2:i8, 2:i8, 2:i8, %2 %4:i8 = phi %0, %3, 3:i8 infer %4 known from Souper: 000000xx known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var %2:i32 = phi %0, %1, 4294967295:i32 %3:i1 = slt 0:i32, %2 %4:i32 = select %3, %2, 0:i32 infer %4 known from Souper: 0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 2 %2:i64 = phi %1, 13:i64, 5:i64 %3:i64 = phi %0, %2, 0:i64, 0:i64 infer %3 known from Souper: 000000000000000000000000000000000000000000000000000000000000xx0x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1:i64 = var (000000000000000000000000000000000000000000000000000000000000000x) %2:i32 = trunc %1 %3:i32 = phi %0, 0:i32, %2, 2:i32, 3:i32 infer %3 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1:i32 = var (0000000000000000000000000000000x) %2:i32 = addnw 1:i32, %1 %3:i32 = phi %0, 0:i32, %2, %2, %2 infer %3 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 2 %2:i8 = var %3:i8 = and 1:i8, %2 %4:i8 = phi %1, %3, %3 %5:i8 = phi %0, %4, %3, %3 infer %5 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00) %2:i64 = sext %1 %3:i64 = phi %0, %2, %2 infer %3 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i1 = var %2:i8 = zext %1 %3:i1 = var %4:i8 = var (0000000x) %5:i8 = select %3, %4, %2 %6:i8 = phi %0, %2, %5 infer %6 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i1 = var %2:i8 = zext %1 %3 = block 2 %4:i8 = var (0000000x) %5:i8 = var (0000000x) %6:i8 = phi %3, %4, %5 %7:i8 = phi %0, %2, %6 infer %7 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 2 %2:i8 = phi %1, 1:i8, 0:i8 %3:i8 = phi %0, 0:i8, %2, %2 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 2 %2:i32 = var (00000000000000000000xxxxxxxxxxxx) %3:i32 = var (00000000000000000000xxxxxxxxxxxx) %4:i32 = var (00000000000000000000xxxxxxxxxxxx) %5:i32 = phi %0, %2, %3, %4 %6:i32 = and 4095:i32, %5 %7:i1 = eq %5, %6 infer %7 known from Souper: 1 known from compiler: x souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1 = block 5 %2:i8 = phi %1, 0:i8, 0:i8, 0:i8, 1:i8, 0:i8 %3:i8 = phi %0, 0:i8, 0:i8, 0:i8, %2 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i32 = var (00000000000000xxxxxxxxxxxxxxxxxx) %2:i32 = and 8:i32, %1 %3:i32 = or 64:i32, %2 %4:i32 = phi %0, %3, %2, %2 infer %4 known from Souper: 0000000000000000000000000x00x000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 7 %2:i64 = phi %1, 2:i64, 0:i64, 0:i64, 3:i64, 3:i64, 0:i64, 1:i64 %3:i64 = phi %0, 1:i64, %2 infer %3 known from Souper: 00000000000000000000000000000000000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 8 %1 = block 2 %2:i64 = phi %1, 0:i64, 4294967296:i64 %3 = block 2 %4:i64 = phi %3, 0:i64, 4294967296:i64 %5 = block 2 %6:i64 = phi %5, 0:i64, 4294967296:i64 %7 = block 2 %8:i64 = phi %7, 0:i64, 4294967296:i64 %9:i64 = phi %0, 0:i64, %2, %4, 0:i64, 0:i64, %6, %8, 0:i64 infer %9 known from Souper: 0000000000000000000000000000000x00000000000000000000000000000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 6 %2:i32 = var (000000000000000000000000000000xx) %3:i32 = addnw 6:i32, %2 %4:i32 = addnw 5:i32, %2 %5:i32 = phi %0, %3, %4 infer %5 known from Souper: 0000000000000000000000000000xxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 7 %1:i1 = var %2 = block 7 %3:i32 = var (000000000000000000000000000000xx) %4:i32 = select %1, 1:i32, %3 %5:i32 = phi %0, 1:i32, 1:i32, %4, 2:i32, 1:i32, 1:i32, 1:i32 infer %5 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i64 = phi %1, 0:i64, 1:i64 %3:i64 = phi %0, 1:i64, %2 infer %3 known from Souper: 000000000000000000000000000000000000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i64 = var (000000000000000000000000xxxxxxxx00000000000000000000000000000000) %2:i64 = or 17:i64, %1 %3:i64 = phi %0, %2, 17:i64 infer %3 known from Souper: 000000000000000000000000xxxxxxxx00000000000000000000000000010001 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx1xxx1 souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = var (00000000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %2:i64 = urem %0, %1 %3:i32 = trunc %2 infer %3 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 000xxxxxxxxxxxxxxxxxxxxxxxxxxxxx llvm is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i64 = var (000000000000000000000000000000000000000000000000000000000xxxxxxx) %3:i32 = trunc %2 %4:i32 = phi %0, %3, 32:i32 infer %4 known from Souper: 0000000000000000000000000xxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 3 %2 = block 2 %3:i32 = var (00000000000000000000000000000x0x) %4:i32 = var (0000000000000000000000000000000x) %5:i32 = var (0000000000000000000000000000000x) %6:i32 = phi %1, %3, %4, %5 %7:i32 = phi %0, 0:i32, %6 infer %7 known from Souper: 00000000000000000000000000000x0x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i64 = var %2:i64 = phi %0, 0:i64, %1 %3:i64 = var (11111111111111111111111111111111xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %4:i64 = and %2, %3 %5:i64 = subnsw %2, %4 infer %5 known from Souper: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i64 = zext %0 %2:i64 = var (000000000000000000000000000000000000000000000000000000000000xxxx) %3:i64 = and 4294967295:i64, %2 %4:i64 = udiv %1, %3 infer %4 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx llvm is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 1 %2:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %3:i64 = phi %1, %2 %4:i64 = phi %0, %3, 1:i64 infer %4 known from Souper: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (000000000000000000000xxxx1xx1x1x) %2:i32 = var (000000000000000000000xxxx1x1x00x) %3:i32 = phi %0, %1, %2 %4:i64 = zext %3 infer %4 known from Souper: 00000000000000000000000000000000000000000000000000000xxxx1xxxxxx known from compiler: 00000000000000000000000000000000000000000000000000000xxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 15 %1 = block 3 %2:i32 = phi %1, 0:i32, 3468:i32, 0:i32 %3:i32 = phi %0, 0:i32, 3461:i32, 3465:i32, 3472:i32, 3472:i32, %2, %2, %2, %2, %2, %2, %2, 0:i32, 0:i32, 0:i32 infer %3 known from Souper: 00000000000000000000xx0xx00xxx0x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (0000000000000000000000000000xx1x) %1:i32 = shl 2:i32, %0 %2:i32 = add 4294967294:i32, %1 infer %2 known from Souper: 0000000000000000xxxxxxxxxxxxx110 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 12 %1:i1 = var %2:i32 = select %1, 7439:i32, 1772:i32 %3:i1 = var %4:i32 = select %3, 7469:i32, 1786:i32 %5:i1 = var %6:i32 = var (0000000000000000000xxx1x1x110xx1) %7:i32 = var (0000000000000000000xx1x10xx1xxx1) %8:i32 = select %5, %6, %7 %9:i32 = var (0000000000000000000xxx1x1xxxx0xx) %10:i32 = var (0000000000000000000xx1x10x0xx1xx) %11:i32 = select %5, %9, %10 %12:i32 = var (0000000000000000000xx1x0x100xxx1) %13:i32 = var (0000000000000000000xx1x0110xxxx1) %14:i32 = select %5, %12, %13 %15:i32 = phi %0, %2, %4, 1688:i32, 1669:i32, 1646:i32, 1709:i32, 1709:i32, 1269:i32, 1272:i32, %8, %11, %14 infer %15 known from Souper: 0000000000000000000xxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 3 %2:i8 = var (0000000x) %3:i8 = phi %1, %2, 0:i8, 0:i8 %4 = block 1 %5:i8 = var (0000000x) %6:i8 = phi %4, %5 %7:i8 = phi %0, %3, %6 infer %7 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i32 = var (00000xxxxxxxxxxxxxxxxxxxxxxxxxxx) %3:i32 = phi %1, %2, 0:i32 %4:i32 = addnsw 1:i32, %3 %5:i32 = phi %0, %3, %4 infer %5 known from Souper: 0000xxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1 = block 2 %2 = block 2 %3:i1 = var %4:i8 = zext %3 %5:i8 = phi %1, 0:i8, %4 %6:i8 = phi %0, %5, 0:i8, %4, 0:i8, %5 infer %6 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (000000000000000000000000xxxxxxxx) %1:i32 = addnsw 4294967256:i32, %0 %2:i32 = lshr 65543:i32, %1 infer %2 known from Souper: 000000000000000xxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1 = block 2 %2 = block 2 %3:i32 = var (000000000000000000000000001xxxxx) %4:i32 = phi %1, %3, 40:i32 %5:i32 = phi %0, 40:i32, 55:i32, %4, %4, 40:i32 infer %5 known from Souper: 000000000000000000000000001xxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = lshr %0, 3:i64 %2:i64 = udiv 16:i64, %1 infer %2 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 00000000000000000000000000000000000000000000000000000000000xxxxx llvm is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (00000000000000000000000000000x01) %1:i1 = eq 5:i32, %0 %2:i32 = select %1, 0:i32, %0 infer %2 known from Souper: 0000000000000000000000000000000x known from compiler: 00000000000000000000000000000x0x souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (0000000000000000000000000000000x) %2:i32 = addnw 95:i32, %1 %3 = block 2 %4 = block 2 %5:i32 = var (00000000000000000000000001xxxxxx) %6:i32 = phi %3, %5, %2 %7:i32 = phi %0, %2, %6 infer %7 known from Souper: 00000000000000000000000001xxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 12 %1:i8 = var (0000000x) %2:i8 = xor 1:i8, %1 %3:i8 = phi %0, 1:i8, 1:i8, 1:i8, 1:i8, 1:i8, 1:i8, 1:i8, 1:i8, %2, 1:i8, 1:i8, 1:i8 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (0000000000000000000000000000000x) %2:i32 = var (0000000000000000000000000000000x) %3:i32 = addnw %1, %2 %4:i32 = addnw 1:i32, %3 infer %4 known from Souper: 000000000000000000000000000000xx known from compiler: 00000000000000000000000000000xxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i1 = var %1:i32 = zext %0 %2:i32 = shl 8:i32, %1 infer %2 known from Souper: 000000000000000000000000000xx000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (00000000000000000000000000xxx001) %1:i64 = zext %0 %2:i64 = shl 1:i64, %1 infer %2 known from Souper: 000000x0000000x0000000x0000000x0000000x0000000x0000000x0000000x0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = shl %0, 1:i32 %2:i32 = udiv 64:i32, %1 infer %2 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 0000000000000000000000000xxxxxxx llvm is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = shl 4:i32, %0 %2:i32 = add 4294967292:i32, %1 infer %2 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i64 = var %2 = block 2 %3:i64 = var %4:i64 = phi %0, %1, %3, %3 %5:i1 = ult 128:i64, %4 %6:i64 = select %5, 128:i64, %4 infer %6 known from Souper: 00000000000000000000000000000000000000000000000000000000xxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 7 %1:i64 = var (000000000000000000000000000000000000000000000000000000000000000x) %2:i32 = trunc %1 %3:i32 = phi %0, 0:i32, 0:i32, %2, 5:i32, 6:i32, 3:i32, 2:i32 infer %3 known from Souper: 00000000000000000000000000000xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxx000) %1:i64 = zext %0 %2:i64 = shl 1:i64, %1 infer %2 known from Souper: 0000000x0000000x0000000x0000000x0000000x0000000x0000000x0000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 17 %1 = block 2 %2:i8 = phi %1, 1:i8, 0:i8 %3 = block 2 %4:i8 = phi %3, 1:i8, 0:i8 %5 = block 2 %6:i8 = phi %5, 1:i8, 0:i8 %7 = block 2 %8:i8 = phi %7, 1:i8, 0:i8 %9:i8 = phi %0, 0:i8, 1:i8, 0:i8, 1:i8, 0:i8, 1:i8, 0:i8, 1:i8, 0:i8, 1:i8, %2, 1:i8, %4, 1:i8, %6, 1:i8, %8 infer %9 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 4 %2:i8 = var (0000000x) %3:i8 = phi %1, 0:i8, 0:i8, %2, 1:i8 %4:i8 = phi %0, %3, 0:i8 infer %4 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i32 = var (0000000000000000000000000000xxxx) %2:i32 = var (0000000000000000000000000000000x) %3:i32 = subnsw %1, %2 %4:i32 = shl 1:i32, %3 infer %4 known from Souper: 0000000000000000xxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 11 %1 = block 7 %2:i32 = var (0000000000000000000000000010xx01) %3:i32 = var (0000000000000000000000000010xx00) %4:i32 = var (00000000000000000000000000100x11) %5:i32 = var (00000000000000000000000000100x10) %6:i32 = phi %1, 33:i32, %2, %3, %4, %5, 32:i32, 32:i32 %7:i32 = var (0000000000000000000000000000000x) %8:i32 = or 38:i32, %7 %9:i32 = var (0000000000000000000000000000000x) %10:i32 = or 38:i32, %9 %11:i32 = var (0000000000000000000000000000000x) %12:i32 = subnsw 41:i32, %11 %13:i32 = var (0000000000000000000000000000000x) %14:i32 = subnsw 41:i32, %13 %15:i32 = phi %0, %6, %6, %8, 34:i32, %10, %12, 37:i32, %14, 37:i32, 34:i32, %6 infer %15 known from Souper: 0000000000000000000000000010xxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i1 = ult 5:i32, %0 %2:i32 = select %1, 5:i32, %0 infer %2 known from Souper: 00000000000000000000000000000xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i64 = var (000000000000000000000000000000000000000000000000000000000000000x) %2:i8 = trunc %1 %3:i8 = phi %0, %2, 1:i8, %2 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i1 = var %1:i32 = var %2:i32 = var %3:i32 = select %0, %1, %2 %4:i1 = slt 2:i32, %3 %5:i32 = select %4, %3, 2:i32 infer %5 known from Souper: 0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i32 = phi %1, 2:i32, 1:i32 %3:i32 = phi %0, 0:i32, %2 infer %3 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i16 = var (000000000000000x) %2:i32 = zext %1 %3:i16 = var (000000000000000x) %4:i32 = zext %3 %5:i32 = phi %0, 0:i32, %2, %4 infer %5 known from Souper: 0000000000000000000000000000000x known from compiler: 0000000000000000xxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %2 = block 2 %3:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %4:i64 = phi %0, %1, %3, %3 %5 = block 2 %6:i64 = var (0000000000000000000000000000000000000000000000000000000000010xx0) %7:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %8:i64 = mulnw %6, %7 %9:i64 = addnw %4, %8 infer %9 known from Souper: 000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 00000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (000000000000000000000000000xxx1x) %1:i32 = shl 1:i32, %0 %2:i32 = addnsw 4294967295:i32, %1 infer %2 known from Souper: 0xxxxxxxxxxxxxxxxxxxxxxxxxxxxx11 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (000000000000000000xxxxxxxxxxxxxx) %1:i32 = and 255:i32, %0 %2:i32 = lshr 15181711:i32, %1 infer %2 known from Souper: 00000000xxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1:i8 = var (0000000x) %2:i8 = xor 1:i8, %1 %3:i8 = var (0000000x) %4:i8 = xor 1:i8, %3 %5:i8 = var (0000000x) %6:i8 = xor 1:i8, %5 %7:i8 = phi %0, %2, %4, %6, %6, %6 infer %7 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = lshr 131325:i32, %0 infer %1 known from Souper: 00000000000000xxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i1 = var %1 = block 2 %2:i32 = var (000000000000000000000000000011x1) %3:i32 = phi %1, 13:i32, %2 %4:i32 = and 7:i32, %3 %5:i32 = select %0, %4, %3 infer %5 known from Souper: 0000000000000000000000000000x1x1 known from compiler: 0000000000000000000000000000xxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1:i32 = phi %0, 4:i32, 1:i32, 1:i32, 1:i32 %2:i32 = addnsw 4294967295:i32, %1 infer %2 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 3 %2:i8 = var (0000000x) %3:i8 = phi %1, 0:i8, 0:i8, %2 %4 = block 1 %5:i8 = var (0000000x) %6:i8 = phi %4, %5 %7:i8 = phi %0, %3, %6 infer %7 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1 = block 5 %2:i8 = phi %1, 0:i8, 0:i8, 0:i8, 0:i8, 1:i8 %3:i8 = phi %0, %2, 0:i8, 0:i8, 1:i8 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (00000000000000000000000000000x00) %2:i32 = lshrexact %1, 1:i32 %3:i32 = phi %0, 0:i32, %2 infer %3 known from Souper: 000000000000000000000000000000x0 known from compiler: 0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 1 %2:i8 = var (0000000x) %3:i8 = phi %1, %2 %4 = block 3 %5:i8 = phi %4, 1:i8, %2, %2 %6:i8 = phi %0, %3, %5 infer %6 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i1 = var %3:i32 = select %2, 5:i32, 3:i32 %4:i32 = phi %1, 3:i32, %3 %5:i32 = phi %0, %4, %3 infer %5 known from Souper: 00000000000000000000000000000xx1 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1:i32 = var (0000000000000000000000000000000x) %2:i32 = subnsw 28:i32, %1 %3:i32 = phi %0, 32:i32, 16:i32, 32:i32, %2, 0:i32 infer %3 known from Souper: 00000000000000000000000000xxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 8 %1 = block 31 %2:i64 = var (000000000000000000000000000000000000000000000000000000000000000x) %3:i64 = var (000000000000000000000000000000000000000000000000000000000000000x) %4:i64 = phi %1, 0:i64, 0:i64, 0:i64, 0:i64, 0:i64, 0:i64, 0:i64, 0:i64, 0:i64, 0:i64, 0:i64, 0:i64, 0:i64, 0:i64, 0:i64, 0:i64, 0:i64, 0:i64, 0:i64, 0:i64, 0:i64, 0:i64, 0:i64, 0:i64, 0:i64, 0:i64, 0:i64, 0:i64, %2, %3, 0:i64 %5 = block 3 %6:i64 = phi %5, 1:i64, 0:i64, 0:i64 %7:i64 = phi %0, %4, 0:i64, 0:i64, 0:i64, 0:i64, 0:i64, 0:i64, %6 infer %7 known from Souper: 000000000000000000000000000000000000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 6 %1 = block 6 %2:i32 = phi %1, 2:i32, 1:i32, 2:i32, 2:i32, 2:i32, 0:i32 %3 = block 2 %4 = block 2 %5 = block 5 %6:i32 = var (0000000000000000000000000000001x) %7:i32 = phi %4, %6, %2 %8:i32 = phi %3, %2, %7 %9:i32 = phi %0, %2, %8, %7, %7, %7, %7 infer %9 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (000000000000000000000000000xxxxx) %2:i32 = shl 4294967040:i32, %1 %3:i64 = var %4:i32 = trunc %3 %5:i32 = and %2, %4 infer %5 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxx00000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i64 = var (0000000000000000000000000000000x00000000000000000000000000000000) %2:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %3:i64 = or %1, %2 %4:i64 = var (0000000000000000000000000000000x00000000000000000000000000000000) %5:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %6:i64 = or %4, %5 %7:i64 = phi %0, %3, %6 infer %7 known from Souper: 0000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 43 %1:i64 = var (00000000000000000000000000000000000000000000000000000000000000x0) %2:i64 = addnw 7:i64, %1 %3:i64 = var (00000000000000000000000000000000000000000000000000000000000000x0) %4:i64 = xor 6:i64, %3 %5:i64 = var (000000000000000000000000000000000000000000000000000000000000000x) %6:i64 = subnsw 5:i64, %5 %7:i64 = phi %0, 27:i64, 7:i64, 9:i64, 9:i64, 15:i64, 9:i64, 16:i64, 15:i64, 9:i64, 3:i64, 5:i64, 2:i64, 17:i64, 25:i64, 14:i64, 16:i64, 20:i64, 28:i64, 26:i64, 9:i64, 8:i64, 8:i64, %2, 11:i64, 6:i64, 5:i64, %4, 17:i64, 18:i64, 13:i64, 12:i64, 14:i64, 13:i64, 8:i64, 9:i64, 4:i64, 3:i64, 5:i64, 11:i64, 4:i64, 4:i64, %6, 4:i64 infer %7 known from Souper: 00000000000000000000000000000000000000000000000000000000000xxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 4 %2:i8 = phi %1, 0:i8, 0:i8, 0:i8, 1:i8 %3:i8 = phi %0, %2, %2, 0:i8 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i1 = var %2:i32 = var (0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %3:i32 = select %1, %2, 0:i32 %4:i32 = phi %0, 0:i32, %3 infer %4 known from Souper: 0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 2 %2:i8 = phi %1, 1:i8, 0:i8 %3:i8 = phi %0, 0:i8, %2, 0:i8 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (000000000000000000000000000xxxx0) %1:i32 = lshr 255:i32, %0 infer %1 known from Souper: 000000000000000000000000xxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = shl 2:i32, %0 %2:i32 = add 4294967294:i32, %1 infer %2 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (0000000000000000000000000xxxxxxx) %1:i32 = or 128:i32, %0 %2:i32 = var (0000000xxxxxxxxxxxxxxxxxxxxxxxxx) %3:i32 = and 31:i32, %2 %4:i32 = lshr %1, %3 infer %4 known from Souper: 000000000000000000000000xxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1 = block 6 %2:i32 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0) %3:i32 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0) %4:i32 = phi %1, %2, %2, %2, %2, %3, %2 %5:i32 = phi %0, %4, %4, %4, 4:i32, 2:i32 infer %5 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i32 = phi %1, 1:i32, 0:i32 %3:i32 = addnw 1:i32, %2 %4:i32 = phi %0, %3, %2 infer %4 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i1 = var %1:i16 = select %0, 48896:i16, 18112:i16 %2:i16 = bswap %1 infer %2 known from Souper: xx000000xxxxx11x known from compiler: xxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 6 %1:i32 = var (0000000000000000000000xxxxxx00xx) %2:i32 = var (0000000000000000000000xx0000xx00) %3:i32 = or %1, %2 %4 = block 3 %5:i32 = var (000000000000000000000000xxxx00xx) %6:i32 = var (000000000000000000000000xx000000) %7:i32 = phi %4, 0:i32, %5, %6 %8:i32 = var (0000000000000000000000xx0000xx00) %9:i32 = or %7, %8 %10:i32 = var (0000000000000000000000xx00xx0000) %11:i32 = or %9, %10 %12:i32 = var (0000000000000000000000xx00000000) %13:i32 = or %7, %12 %14:i32 = phi %0, %3, %11, %9, %13, %7, %7 infer %14 known from Souper: 0000000000000000000000xxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (0000000000000000000000000000x000) %2:i32 = xor 10:i32, %1 %3:i32 = xor 12:i32, %1 %4:i32 = phi %0, %2, %3 infer %4 known from Souper: 0000000000000000000000000000xxx0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i1 = var %2:i64 = select %1, 3:i64, 0:i64 %3:i1 = var %4:i64 = var (0000000000000000000000000000000000000000000000000000000000000xx0) %5:i64 = select %3, 1:i64, %4 %6:i64 = phi %0, %2, %5 infer %6 known from Souper: 0000000000000000000000000000000000000000000000000000000000000xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1:i32 = var (000000000000000000000000xxxxxxxx) %2:i64 = zext %1 %3:i64 = phi %0, 0:i64, 100:i64, 99:i64, %2, 1:i64 infer %3 known from Souper: 00000000000000000000000000000000000000000000000000000000xxxxxxxx known from compiler: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 6 %1 = block 4 %2:i8 = var (0000000x) %3:i8 = phi %1, 0:i8, 0:i8, 0:i8, %2 %4:i8 = phi %0, %3, %3, 0:i8, 0:i8, 0:i8, 0:i8 infer %4 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i8 = var %1:i64 = zext %0 %2:i64 = var %3:i1 = slt %1, %2 %4:i64 = select %3, %2, %1 infer %4 known from Souper: 0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i16 = trunc %0 %2:i16 = lshr 7183:i16, %1 infer %2 known from Souper: 000xxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (00000000000000000000000000xxxxxx) %2:i32 = addnw 65281:i32, %1 %3:i32 = phi %0, %2, 65280:i32 infer %3 known from Souper: 0000000000000000111111110xxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1 = block 3 %2:i1 = var %3:i8 = zext %2 %4:i1 = var %5:i8 = select %4, 1:i8, %3 %6:i8 = phi %0, %3, %3, %5, 1:i8 infer %6 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx000) %1:i64 = addnsw 18446744073709551592:i64, %0 %2:i64 = urem %1, 24:i64 %3:i64 = subnsw %1, %2 infer %3 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1 = block 5 %2:i32 = var (0000000000000000000000000000000x) %3:i32 = phi %1, %2, 0:i32, 0:i32, 0:i32, 1:i32 %4:i32 = phi %0, %3, 1:i32, 1:i32, 1:i32, 1:i32 infer %4 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (000000000000000000000000xxxxxxxx) %1:i1 = ult %0, 11:i32 %2:i32 = addnsw 4294967286:i32, %0 %3:i32 = select %1, 0:i32, %2 infer %3 known from Souper: 000000000000000000000000xxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx1) %2:i64 = zext %1 %3:i64 = phi %0, %2, 1:i64 infer %3 known from Souper: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx1 known from compiler: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (000000000000000000000000000xxxxx) %1:i32 = xor 31:i32, %0 %2:i32 = var %3:i32 = ctpop %2 %4:i32 = addnw %1, %3 infer %4 known from Souper: 00000000000000000000000000xxxxxx known from compiler: 0000000000000000000000000xxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = phi %0, 8:i32, 16:i32 %2:i32 = addnsw 4294967295:i32, %1 infer %2 known from Souper: 0000000000000000000000000000x111 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxx111 souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i64 = var %2:i64 = phi %0, %1, 0:i64, 0:i64 %3:i64 = var %4:i64 = and 4294967295:i64, %3 %5:i64 = urem %2, %4 infer %5 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx llvm is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i1 = var %1:i32 = var (xxxxxxxxxxxxxxxxxxxxxxxx1xxxxxxx) %2:i32 = var %3:i32 = select %0, %1, %2 %4:i32 = add 4294967295:i32, %3 %5:i32 = and %4, %3 infer %5 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1:i1 = var %2:i32 = select %1, 34:i32, 32:i32 %3:i32 = or 12:i32, %2 %4:i32 = or 4:i32, %2 %5:i32 = phi %0, %2, %3, %4, %2 infer %5 known from Souper: 0000000000000000000000000010xxx0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (000000000000000000000000xxxxxxxx) %2:i64 = zext %1 %3:i64 = phi %0, %2, 0:i64 infer %3 known from Souper: 00000000000000000000000000000000000000000000000000000000xxxxxxxx known from compiler: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i1 = var %2:i32 = select %1, 0:i32, 2:i32 %3 = block 2 %4 = block 5 %5:i32 = var (000000000000000000000000000000x0) %6:i32 = phi %3, %5, 2:i32 %7:i32 = phi %0, %2, %6, %6 infer %7 known from Souper: 000000000000000000000000000000x0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 6 %1 = block 2 %2:i32 = phi %1, 264:i32, 267:i32 %3 = block 2 %4:i32 = phi %3, 260:i32, 263:i32 %5:i32 = phi %0, 264:i32, 264:i32, 264:i32, 260:i32, %2, %4 infer %5 known from Souper: 0000000000000000000000010000xxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 5 %2:i8 = var (0000000x) %3:i8 = phi %1, 0:i8, 0:i8, 0:i8, 0:i8, %2 %4:i8 = phi %0, 0:i8, 0:i8, %3 infer %4 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (0000000000000000000010xx01xxx0xx) %2:i32 = var (0000000000000000000010xx01xxx00x) %3:i32 = phi %0, %1, %2 %4:i64 = zext %3 infer %4 known from Souper: 000000000000000000000000000000000000000000000000000010xx01xxx0xx known from compiler: 0000000000000000000000000000000000000000000000000000x0xx0xxxx0xx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i1 = var %2:i8 = zext %1 %3 = block 5 %4:i8 = var (0000000x) %5:i8 = phi %3, %2, %4, 0:i8, %2, %2 %6:i8 = phi %0, %2, %5 infer %6 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 11 %1 = block 2 %2:i8 = phi %1, 1:i8, 0:i8 %3:i8 = phi %0, %2, 1:i8, 1:i8, 1:i8, 1:i8, 1:i8, 1:i8, 1:i8, 1:i8, 1:i8, 1:i8 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 3 %2:i8 = var (0000000x) %3:i8 = phi %1, %2, 0:i8, 0:i8 %4:i8 = var (0000000x) %5:i8 = or %3, %4 %6:i8 = phi %0, %5, %3, %3 infer %6 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1 = block 2 %2:i64 = var %3:i64 = sub %0, %2 %4:i64 = urem %3, 80:i64 %5:i64 = sub %3, %4 infer %5 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i64 = var %2:i64 = var %3:i64 = phi %0, 0:i64, %1, %2 %4:i1 = ult 3:i64, %3 %5:i64 = select %4, 3:i64, %3 infer %5 known from Souper: 00000000000000000000000000000000000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 4 %2:i8 = var (0000000x) %3:i8 = var (0000000x) %4:i8 = phi %1, %2, %3, %3, %3 %5:i1 = var %6:i8 = zext %5 %7:i8 = phi %0, %4, %6 infer %7 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i1 = var %2:i32 = var (000000000000000000000000xxxxx001) %3:i32 = select %1, 75:i32, %2 %4:i32 = phi %0, 275:i32, %3 infer %4 known from Souper: 00000000000000000000000xxxxxx0x1 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i1 = var %2 = block 2 %3:i8 = var (0000000x) %4:i8 = select %1, %3, 1:i8 %5:i8 = phi %0, 1:i8, %4 infer %5 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i16 = trunc %0 %2:i16 = lshr 9711:i16, %1 infer %2 known from Souper: 00xxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (00000000000000000000000000000000000000000000000000000xxxxxxxxxxx) %1:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxx000) %2:i64 = addnw %0, %1 %3:i64 = addnw 136:i64, %2 infer %3 known from Souper: 0000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = phi %0, 8:i32, 16:i32 %2:i32 = shl 1:i32, %1 infer %2 known from Souper: 000000000000000x0000000x00000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (0000000000000000xxxxxxxxxxxxxxxx) %1:i32 = addnsw 4294966821:i32, %0 %2:i32 = lshr 1310725:i32, %1 infer %2 known from Souper: 00000000000xxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i8 = phi %1, 1:i8, 0:i8 %3 = block 2 %4:i8 = phi %3, 1:i8, 0:i8 %5:i8 = phi %0, %2, %4 infer %5 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 3 %2:i8 = phi %1, 1:i8, 0:i8, 0:i8 %3:i8 = phi %0, 1:i8, %2, %2 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 8 %1:i1 = var %2:i32 = select %1, 3:i32, 1:i32 %3:i8 = var (00000xx0) %4:i32 = zext %3 %5:i32 = phi %0, 0:i32, 0:i32, 0:i32, 0:i32, %2, %4, 0:i32, 0:i32 infer %5 known from Souper: 00000000000000000000000000000xxx known from compiler: 000000000000000000000000xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxx0000) %2:i64 = zext %1 %3:i64 = phi %0, 0:i64, %2 infer %3 known from Souper: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxx0000 known from compiler: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i1 = var %2 = block 6 %3:i8 = phi %2, 1:i8, 0:i8, 1:i8, 0:i8, 0:i8, 1:i8 %4:i8 = select %1, %3, 0:i8 %5:i8 = phi %0, %4, %3 infer %5 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i32 = var (000000000000000000000000000000x0) %2:i32 = xor 2:i32, %1 %3:i32 = phi %0, 2:i32, %2, 2:i32 infer %3 known from Souper: 000000000000000000000000000000x0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = and 4294967295:i64, %0 %2:i1 = ult %1, 8:i64 %3:i64 = select %2, %1, 8:i64 infer %3 known from Souper: 000000000000000000000000000000000000000000000000000000000000xxxx known from compiler: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i1 = var %2:i32 = select %1, 4:i32, 1:i32 %3 = block 14 %4:i32 = var (00000000000000000000000000000x00) %5:i32 = phi %3, %4, 0:i32, 4:i32, 2:i32, 3:i32, 4:i32, 4:i32, 4:i32, 4:i32, 4:i32, 4:i32, 4:i32, 2:i32, 3:i32 %6:i32 = phi %0, %2, %5, 0:i32 infer %6 known from Souper: 00000000000000000000000000000xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i32 = var (0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %2:i64 = zext %1 %3:i64 = var (0000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx000) %4:i64 = addnw %3, %2 %5:i64 = phi %0, %2, %2, %4 infer %5 known from Souper: 000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 6 %2:i32 = var (0xxx0000000000000000000000000000) %3:i32 = var (0000xxxxxxxxxxxxxxxxxxxxxxxxxxxx) %4:i32 = or %2, %3 %5:i32 = var %6:i32 = and 268435455:i32, %5 %7:i32 = phi %0, %4, %6 infer %7 known from Souper: 0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1 = block 7 %2:i32 = phi %1, 1:i32, 0:i32, 0:i32, 0:i32, 0:i32, 0:i32, 0:i32 %3:i32 = phi %0, %2, 1:i32, 1:i32, 1:i32 infer %3 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i1 = var %1:i32 = select %0, 2:i32, 1:i32 %2:i1 = var %3:i32 = zext %2 %4:i32 = addnw %1, %3 infer %4 known from Souper: 000000000000000000000000000000xx known from compiler: 00000000000000000000000000000xxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (000000000000000000000000000xxxxx) %1:i32 = subnsw 33:i32, %0 %2:i32 = addnsw 4294967295:i32, %1 infer %2 known from Souper: 00000000000000000000000000xxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i22 = trunc %0 %2:i22 = lshr 897:i22, %1 infer %2 known from Souper: 000000000000xxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = var %2:i64 = sub %0, %1 %3:i32 = var %4:i64 = zext %3 %5:i64 = urem %2, %4 infer %5 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx llvm is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 1 %2:i64 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00) %3:i32 = trunc %2 %4:i32 = phi %0, %3, 8:i32 infer %4 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i1 = ult %0, 4:i32 %2:i32 = select %1, %0, 2:i32 infer %2 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 2 %2:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %3:i64 = phi %1, %2, 0:i64 %4:i64 = phi %0, 0:i64, %3, 0:i64 infer %4 known from Souper: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1 = block 2 %2:i32 = var %3:i32 = sub %0, %2 %4:i32 = add 4294967295:i32, %3 %5:i32 = and %4, %3 infer %5 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i24 = trunc %0 %2:i24 = lshr 3147440:i24, %1 infer %2 known from Souper: 00xxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 3 %2:i8 = phi %1, 1:i8, 1:i8, 0:i8 %3:i8 = phi %0, %2, 1:i8 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (0000000000000000000000000000000x) %2:i32 = var (0000000000000000000000000000000x) %3:i32 = addnw %1, %2 %4:i32 = var (00000000000000000000000000000xxx) %5:i32 = addnw %4, %2 %6:i32 = phi %0, %3, %5 infer %6 known from Souper: 0000000000000000000000000000xxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (00000000000000000000xxxxxxxxxxxx) %1:i1 = eq 0:i32, %0 %2:i32 = subnsw 0:i32, %0 %3:i32 = select %1, 2147483648:i32, %2 infer %3 known from Souper: 1xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = and 2147483647:i32, %0 %2:i32 = var (0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %3:i32 = subnsw %1, %2 %4:i32 = sub %1, %3 infer %4 known from Souper: 0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1 = block 2 %2:i32 = phi %1, 33:i32, 34:i32 %3:i32 = phi %0, %2, 34:i32, 38:i32, 38:i32 infer %3 known from Souper: 00000000000000000000000000100xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 7 %1:i32 = phi %0, 16:i32, 8:i32, 4:i32, 2:i32, 1:i32, 1:i32, 1:i32 %2:i32 = addnw 31:i32, %1 infer %2 known from Souper: 0000000000000000000000000010xxxx known from compiler: 00000000000000000000000000xxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i24 = trunc %0 %2:i24 = lshr 3:i24, %1 infer %2 known from Souper: 0000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i1 = var %2:i32 = select %1, 3:i32, 2:i32 %3:i32 = lshr %0, %2 infer %3 known from Souper: 00xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = var (00000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx000) %2:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %3:i64 = addnw %1, %2 %4:i1 = ult %0, %3 %5:i64 = select %4, %0, %3 infer %5 known from Souper: 0000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 1 %1:i32 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00) %2:i32 = var (0000000000000000000000000000xx00) %3:i32 = add %1, %2 %4:i32 = phi %0, %3 infer %4 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i1 = var %2:i64 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx000) %3:i64 = select %1, %2, 0:i64 %4:i64 = phi %0, 0:i64, 0:i64, %3 infer %4 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 11 %1 = block 3 %2:i32 = var (000000000000000000000001001001xx) %3:i32 = var (00000000000000000000000100100xxx) %4:i32 = var (000000000000000000000001001000xx) %5:i32 = phi %1, %2, %3, %4 %6:i32 = phi %0, 0:i32, 0:i32, 0:i32, 0:i32, 0:i32, 0:i32, 0:i32, 0:i32, %5, %5, 0:i32 infer %6 known from Souper: 00000000000000000000000x00x00xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i8 = var (000xxxx1) %3 = block 5 %4:i8 = var (0000xxx0) %5:i8 = var (000x0000) %6:i8 = or %4, %5 %7:i8 = phi %1, %2, %6 %8:i8 = phi %0, %7, %6 infer %8 known from Souper: 000xxxxx known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = var (0000000000000000000000000000000000000000000000000000000000xxx000) %2:i64 = shl 1:i64, %1 %3:i64 = and %0, %2 infer %3 known from Souper: 0000000x0000000x0000000x0000000x0000000x0000000x0000000x0000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 3 %2:i64 = var (000000000000000000000000000000000000000000000000000000000000xxx1) %3:i64 = var (0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %4:i64 = phi %0, %2, %3, %2 %5:i64 = add 18446744073709551615:i64, %4 %6:i64 = and %4, %5 infer %6 known from Souper: 0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0 known from compiler: 0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = var %2:i32 = add %0, %1 %3:i32 = var %4:i32 = lshr %3, 3:i32 %5:i32 = urem %2, %4 infer %5 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 000xxxxxxxxxxxxxxxxxxxxxxxxxxxxx llvm is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i1 = var %2:i8 = zext %1 %3 = block 1 %4:i8 = var (0000000x) %5:i8 = phi %3, %4 %6:i8 = phi %0, %2, %5, %5 infer %6 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i1 = var %1:i32 = var %2:i32 = var %3:i32 = select %0, %1, %2 %4:i16 = var %5:i32 = zext %4 %6:i32 = urem %3, %5 infer %6 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 0000000000000000xxxxxxxxxxxxxxxx llvm is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1:i32 = var (000000000000000000000000000000x0) %2:i32 = or 1:i32, %1 %3:i32 = var (000000000000000000000000000000x0) %4:i32 = or 1:i32, %3 %5:i32 = phi %0, 2:i32, %2, %2, 3:i32, %4 infer %5 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 4 %2:i32 = phi %1, 0:i32, 1:i32, 0:i32, 0:i32 %3:i32 = phi %0, %2, 1:i32 infer %3 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1:i32 = phi %0, 4:i32, 1:i32, 1:i32, 4:i32, 1:i32 %2:i32 = addnsw 4294967295:i32, %1 infer %2 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i80 = var (0000000000000000000000000000000000000000000000000000000000000000000000000000000x) %2:i80 = shlnw %1, 71:i80 %3:i80 = phi %0, 2361183241434822606848:i80, %2 infer %3 known from Souper: 00000000x00000000000000000000000000000000000000000000000000000000000000000000000 known from compiler: xxxxxxxxx00000000000000000000000000000000000000000000000000000000000000000000000 souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (0000000000000000000000000000000x) %2:i32 = xor 1:i32, %1 %3:i32 = phi %0, 1:i32, %2 infer %3 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 3 %2 = block 5 %3:i8 = var (0000000x) %4:i8 = phi %1, 0:i8, 0:i8, %3 %5:i8 = phi %0, %4, 0:i8 infer %5 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i8 = var (0xxxxxxx) %2:i8 = and 1:i8, %1 %3 = block 3 %4 = block 2 %5:i8 = var (0000000x) %6:i8 = phi %3, 0:i8, %5, %5 %7:i8 = phi %0, %2, %6 infer %7 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (xxxxxxxxxxxxxxxx0000000000000000) %2:i32 = or 33554432:i32, %1 %3:i32 = var (xxxxxxxxxxxxxxxxxxx0000000000000) %4:i32 = or 50331648:i32, %3 %5:i32 = phi %0, %2, %4 infer %5 known from Souper: xxxxxx1xxxxxxxxxxxx0000000000000 known from compiler: xxxxxx1xxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i24 = trunc %0 %2:i24 = lshr 307:i24, %1 infer %2 known from Souper: 000000000000000xxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (000000000000000000xxxxxxxxxxxxxx) %2:i32 = var (0000000000000000xxxxxxxxxxxxxxxx) %3:i32 = shlnw %2, 14:i32 %4:i32 = or %1, %3 %5:i32 = phi %0, %4, %3 infer %5 known from Souper: 00xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 10 %1:i32 = var (000000000000000000000000000000xx) %2:i32 = addnw 1:i32, %1 %3:i24 = var (00000000000000000000000x) %4:i32 = zext %3 %5:i32 = addnw %2, %4 infer %5 known from Souper: 00000000000000000000000000000xxx known from compiler: 0000000000000000000000000000xxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1 = block 2 %2:i32 = phi %1, 2:i32, 3:i32 %3:i1 = var %4:i32 = select %3, 0:i32, 3:i32 %5:i1 = var %6:i32 = select %5, 0:i32, 2:i32 %7:i32 = phi %0, 1:i32, %2, %2, %4, %6 infer %7 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i64 = zext %0 %2:i64 = lshr 548678008575:i64, %1 infer %2 known from Souper: 0000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = var %2:i32 = udiv %0, %1 %3:i32 = add 4294967295:i32, %2 %4:i32 = and %3, %2 infer %4 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = sub 32:i32, %0 %2:i32 = lshr 80:i32, %1 infer %2 known from Souper: 0000000000000000000000000xxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i64 = var %3 = block 2 %4:i64 = var %5:i64 = phi %0, %2, %4 %6:i64 = add 18446744073709551615:i64, %5 %7:i64 = and %5, %6 infer %7 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i32 = var (0000000000000000000000000000000x) %3 = block 3 %4:i32 = var (0000000000000000000000000000000x) %5:i32 = phi %1, %2, %4 %6:i32 = phi %0, %5, 1:i32 infer %6 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i16 = trunc %0 %2:i16 = lshr 8088:i16, %1 infer %2 known from Souper: 000xxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var %2:i32 = add 4294967273:i32, %1 %3:i32 = lshr 198271:i32, %2 infer %3 known from Souper: 00000000000000xxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (00000000000000000000xxxxxx000000) %1:i32 = cttz %0 %2:i32 = and 30:i32, %1 infer %2 known from Souper: 0000000000000000000000000000xxx0 known from compiler: 000000000000000000000000000xxxx0 souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1 = block 6 %2 = block 2 %3:i32 = var (0000000000000000000000000000001x) %4:i32 = var (000000000000000000000000000000xx) %5:i32 = var (00000000000000000000000000000xx0) %6:i32 = phi %1, 0:i32, 1:i32, 4:i32, %3, %4, %5 %7:i32 = phi %0, %6, 1:i32, 1:i32, 4:i32 infer %7 known from Souper: 00000000000000000000000000000xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = var %2:i64 = and %0, %1 %3:i64 = add 18446744073709551615:i64, %2 %4:i64 = and %3, %2 infer %4 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i1 = var %2:i32 = var (000000000000000000000000xxxxxxxx) %3:i32 = select %1, %2, 1:i32 %4:i32 = var %5:i32 = and 255:i32, %4 %6:i32 = phi %0, %3, %5 infer %6 known from Souper: 000000000000000000000000xxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = and 3:i32, %0 %2:i32 = var %3:i1 = slt %1, %2 %4:i32 = select %3, %2, %1 infer %4 known from Souper: 0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 9 %1:i64 = var (0000000000000000000000000000000x00000000000000000000000000000000) %2:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %3:i64 = or %1, %2 %4:i64 = phi %0, 0:i64, 0:i64, %3, 1:i64, 1:i64, 0:i64, 0:i64, 0:i64, 2:i64 infer %4 known from Souper: 0000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 6 %1:i32 = var %2:i32 = and 4294967294:i32, %1 %3:i32 = xor 8:i32, %2 %4:i32 = phi %0, %2, %2, %2, %2, %3, %2 infer %4 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1:i64 = var %2:i64 = var %3:i64 = phi %0, %1, %2, %2, %2 %4:i64 = var (000000000000000000000000000000000000000000000000000000000000xx1x) %5:i64 = phi %0, %4, 5:i64, 3:i64, 5:i64 %6:i1 = ult %3, %5 %7:i64 = select %6, %3, %5 infer %7 known from Souper: 000000000000000000000000000000000000000000000000000000000000xxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i32 = var (0000000000000000000000000000000x) %2:i32 = subnsw 2:i32, %1 %3:i32 = phi %0, 0:i32, 0:i32, %2 infer %3 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (0000000000000000000000000000000000000000000000000000000000xxxxxx) %1:i64 = subnsw 64:i64, %0 %2:i1 = eq 0:i64, %1 infer %2 known from Souper: 0 known from compiler: x souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1 = block 4 %2 = block 5 %3:i8 = var (0000000x) %4:i8 = phi %1, %3, 1:i8, 1:i8, 1:i8 %5:i8 = phi %0, 1:i8, 1:i8, %4, 1:i8 infer %5 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 5 %2:i32 = var (000000000000000000000000000000xx) %3:i32 = phi %1, %2, 2:i32, 2:i32, 1:i32, 1:i32 %4:i32 = phi %0, %3, 2:i32 infer %4 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 6 %1:i1 = var %2:i32 = select %1, 336:i32, 328:i32 %3 = block 3 %4:i1 = var %5:i32 = var (00000000000000000000000x0x00x00x) %6:i32 = select %4, 324:i32, %5 %7 = block 3 %8:i1 = var %9:i32 = var (00000000000000000000000x0x00x0x0) %10:i32 = select %8, 325:i32, %9 %11:i32 = phi %0, %2, 325:i32, %6, 324:i32, %10, 337:i32 infer %11 known from Souper: 00000000000000000000000x0x0xxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (0000000000000000000000000000x111) %1:i32 = var (0000000000000000000000000000xx00) %2:i32 = shl %0, %1 infer %2 known from Souper: 0000000000000000xxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 3 %2 = block 2 %3:i32 = phi %2, 2:i32, 4:i32 %4:i32 = phi %1, %3, 0:i32, %3 %5:i32 = phi %0, %4, %3, %3 infer %5 known from Souper: 00000000000000000000000000000xx0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1 = block 3 %2:i8 = phi %1, 0:i8, 0:i8, 1:i8 %3:i8 = phi %0, %2, 0:i8, 0:i8, 0:i8 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 3 %2:i32 = phi %1, 1:i32, 0:i32, 0:i32 %3:i32 = phi %0, 1:i32, %2 infer %3 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %1:i64 = var (000000000000000000000000000000000000000000000000000000000000000x) %2:i64 = addnw %0, %1 %3:i64 = var %4:i64 = udiv %3, 102:i64 %5:i1 = ult %2, %4 %6:i64 = select %5, %2, %4 infer %6 known from Souper: 000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 00000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (000000000000000000000000000000xx) %1:i32 = shl 8:i32, %0 %2:i64 = sext %1 infer %2 known from Souper: 000000000000000000000000000000000000000000000000000000000xxxx000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 5 %2:i8 = phi %1, 0:i8, 0:i8, 0:i8, 1:i8, 0:i8 %3:i8 = phi %0, 1:i8, %2, %2 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i80 = var (0000000000000000000000000000000000000000000000000000000000000000000000000000000x) %2:i80 = shlnw %1, 72:i80 %3:i80 = phi %0, 4722366482869645213696:i80, 4722366482869645213696:i80, %2 infer %3 known from Souper: 0000000x000000000000000000000000000000000000000000000000000000000000000000000000 known from compiler: xxxxxxxx000000000000000000000000000000000000000000000000000000000000000000000000 souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i1 = eq 0:i32, %0 %2:i32 = var %3:i32 = lshr 65:i32, %2 %4:i32 = select %1, 0:i32, %3 infer %4 known from Souper: 0000000000000000000000000xxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (00000000000000000000000000000xxx) %1:i32 = addnw 1:i32, %0 %2:i32 = shl 1024:i32, %1 infer %2 known from Souper: 0000000000000xxxxxxxx00000000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = udiv 64:i32, %0 %2:i1 = ult %1, 16:i32 %3:i32 = select %2, 16:i32, %1 infer %3 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 0000000000000000000000000xxxxxxx llvm is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 7 %1:i32 = var (0000000000000000000000000000xxxx) %2:i32 = addnw 1:i32, %1 %3:i32 = var (0000000000000000000000000000xxxx) %4:i32 = addnw 1:i32, %3 %5:i32 = var (0000000000000000000000000000xxxx) %6:i32 = addnw 1:i32, %5 %7:i32 = var (0000000000000000000000000000xxxx) %8:i32 = addnw 1:i32, %7 %9:i32 = phi %0, 0:i32, %2, 0:i32, %4, 0:i32, %6, %8 infer %9 known from Souper: 000000000000000000000000000xxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 5 %2:i8 = phi %1, 0:i8, 0:i8, 0:i8, 0:i8, 1:i8 %3:i8 = phi %0, 0:i8, 0:i8, %2 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 12 %1 = block 2 %2:i8 = var (00000xxx) %3:i8 = phi %1, %2, 0:i8 %4 = block 2 %5:i8 = var (00000xxx) %6:i8 = phi %4, %5, 0:i8 %7 = block 2 %8:i8 = var (00000xxx) %9:i8 = phi %7, %8, 0:i8 %10 = block 2 %11:i8 = var (00000xxx) %12:i8 = phi %10, %11, 0:i8 %13 = block 2 %14:i8 = var (00000xxx) %15:i8 = phi %13, 0:i8, %14 %16 = block 2 %17:i8 = var (00000xxx) %18:i8 = phi %16, 0:i8, %17 %19:i8 = phi %0, %3, %6, %6, 0:i8, %9, %3, %3, %12, %9, %15, %18, %18 infer %19 known from Souper: 00000xxx known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = add 18446744073709551614:i64, %0 %2:i1 = ult %1, 8:i64 %3:i64 = select %2, %1, 8:i64 infer %3 known from Souper: 000000000000000000000000000000000000000000000000000000000000xxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %1:i64 = addnw 3:i64, %0 %2:i64 = var %3:i64 = and 3:i64, %2 %4:i64 = subnsw %1, %3 infer %4 known from Souper: 0000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 5 %2:i32 = phi %1, 0:i32, 1:i32, 1:i32, 0:i32, 0:i32 %3:i32 = phi %0, 0:i32, %2, 0:i32 infer %3 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = var %2:i32 = sub %0, %1 %3:i1 = ult 7:i32, %2 %4:i32 = select %3, 7:i32, %2 infer %4 known from Souper: 00000000000000000000000000000xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1 = block 2 %2:i32 = phi %1, 14:i32, 15:i32 %3:i32 = phi %0, %2, %2, 1:i32, 1:i32 infer %3 known from Souper: 0000000000000000000000000000xxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 6 %1 = block 2 %2:i32 = phi %1, 2:i32, 3:i32 %3:i1 = var %4:i32 = select %3, %2, 1:i32 %5:i1 = var %6:i32 = select %5, 4:i32, 2:i32 %7:i32 = phi %0, 0:i32, 1:i32, 4:i32, %2, %4, %6 infer %7 known from Souper: 00000000000000000000000000000xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i1 = var %1:i32 = sext %0 %2:i32 = addnsw 31:i32, %1 infer %2 known from Souper: 0000000000000000000000000001111x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = add 4294967293:i32, %0 %2:i1 = slt 0:i32, %1 %3:i32 = select %2, %1, 0:i32 infer %3 known from Souper: 0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 4 %2:i32 = phi %1, 0:i32, 0:i32, 0:i32, 1:i32 %3:i32 = phi %0, 1:i32, 0:i32, %2 infer %3 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1:i32 = var (0000000000000000000000000000000x) %2:i32 = xor 1:i32, %1 %3:i32 = phi %0, 1:i32, %2, 0:i32, 1:i32 infer %3 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var %2:i64 = zext %1 %3:i1 = ult %2, 3:i64 %4:i64 = select %3, %2, 3:i64 infer %4 known from Souper: 00000000000000000000000000000000000000000000000000000000000000xx known from compiler: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1 = block 2 %2:i32 = var (000000000000000000000000001xxxxx) %3:i32 = phi %0, 40:i32, 55:i32, %2, 40:i32, 40:i32 %4 = block 2 %5:i32 = var %6:i32 = phi %0, 40:i32, 55:i32, %5, %5, 40:i32 %7:i1 = ult %3, %6 %8:i32 = select %7, %3, %6 infer %8 known from Souper: 00000000000000000000000000xxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 6 %1 = block 3 %2 = block 2 %3:i8 = var (0000000x) %4:i8 = phi %2, %3, 0:i8 %5:i8 = phi %1, %4, 0:i8, %3 %6:i8 = phi %0, %5, %5, %5, %5, %4, %5 infer %6 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = var (000000000000000000000000000xxx00) %2:i32 = urem %0, %1 %3:i64 = zext %2 infer %3 known from Souper: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 00000000000000000000000000000000000000000000000000000000000xxxxx llvm is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 5 %2:i8 = phi %1, 0:i8, 0:i8, 1:i8, 1:i8, 1:i8 %3:i8 = phi %0, %2, 0:i8 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1 = block 7 %2:i32 = phi %1, 1:i32, 12:i32, 12:i32, 0:i32, 16:i32, 1:i32, 12:i32 %3 = block 7 %4:i32 = phi %3, 1:i32, 12:i32, 16:i32, 1:i32, 0:i32, 0:i32, 12:i32 %5:i32 = phi %0, %2, %4, 2:i32, 2:i32, 2:i32 infer %5 known from Souper: 000000000000000000000000000xxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i1 = var %1:i32 = select %0, 78:i32, 0:i32 %2:i32 = addnw 86:i32, %1 infer %2 known from Souper: 000000000000000000000000xxxx01x0 known from compiler: 000000000000000000000000xxxxxxx0 souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (000000000000000000000000xxxxxxxx) %1:i32 = addnsw 4294967256:i32, %0 %2:i32 = lshr 65799:i32, %1 infer %2 known from Souper: 000000000000000xxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i1 = var %2:i8 = zext %1 %3:i8 = var (0000000x) %4:i8 = xor 1:i8, %3 %5:i8 = phi %0, %2, %4, %2 infer %5 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (0000000000000000000000000000xx00) %1:i32 = shl 6:i32, %0 infer %1 known from Souper: 00000000000000000xx00xx00xx00xx0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i8 = var (01110xx1) %2:i8 = phi %0, %1, 112:i8, 102:i8 %3:i32 = zext %2 infer %3 known from Souper: 000000000000000000000000011x0xxx known from compiler: 0000000000000000000000000xxx0xxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1 = block 2 %2:i8 = phi %1, 0:i8, 1:i8 %3:i8 = phi %0, %2, 0:i8, 0:i8, 0:i8 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0) %2:i32 = add 4294967294:i32, %1 %3:i32 = phi %0, 0:i32, %2 infer %3 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 4 %2:i8 = phi %1, 0:i8, 0:i8, 1:i8, 0:i8 %3:i8 = phi %0, %2, 1:i8 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1:i1 = var %2:i8 = zext %1 %3 = block 3 %4:i8 = phi %3, 1:i8, 1:i8, 0:i8 %5:i8 = var (0000000x) %6:i8 = xor 1:i8, %5 %7:i8 = phi %0, %2, %4, %6, %6, %6 infer %7 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %3:i64 = phi %1, %2, 0:i64 %4:i64 = phi %0, %3, 32:i64 infer %4 known from Souper: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 6 %1:i1 = var %2:i32 = var (0000000000000000000xxxxxxxxxxxxx) %3:i32 = select %1, %2, 0:i32 %4:i32 = phi %0, %3, 0:i32, 0:i32, 0:i32, 0:i32, 0:i32 infer %4 known from Souper: 0000000000000000000xxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 3 %2:i64 = phi %1, 19:i64, 15:i64, 12:i64 %3:i64 = phi %0, %2, 15:i64 infer %3 known from Souper: 00000000000000000000000000000000000000000000000000000000000xxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1:i64 = var (000000000000000000000000000000000000000000000000000000000000000x) %2:i64 = xor 1:i64, %1 %3:i64 = phi %0, 0:i64, %2, 0:i64, 0:i64 infer %3 known from Souper: 000000000000000000000000000000000000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 7 %1 = block 4 %2 = block 3 %3:i8 = var (0000000x) %4:i8 = phi %1, %3, 0:i8, 0:i8, 0:i8 %5:i8 = phi %0, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, %4, 0:i8 infer %5 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (0000000000000000xxxxxxxxxxxxxxxx) %1:i32 = var (00xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %2:i32 = udiv %0, %1 %3:i64 = zext %2 infer %3 known from Souper: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 000000000000000000000000000000000000000000000000xxxxxxxxxxxxxxxx llvm is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00) %1:i32 = trunc %0 %2:i32 = bswap %1 infer %2 known from Souper: xxxxxx00xxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 2 %2:i32 = var (000000000000000000000000000000xx) %3:i32 = phi %1, %2, 1:i32 %4:i32 = phi %0, 0:i32, %3, 0:i32 infer %4 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i32 = phi %1, 1:i32, 0:i32 %3:i32 = addnw 1:i32, %2 %4:i32 = phi %0, %2, %3 infer %4 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 6 %2:i32 = phi %1, 0:i32, 2:i32, 2:i32, 2:i32, 2:i32, 0:i32 %3:i32 = phi %0, %2, 1:i32 infer %3 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 2 %2:i8 = var (0000000x) %3:i8 = phi %1, 0:i8, %2 %4:i1 = var %5:i8 = select %4, 1:i8, %3 %6:i8 = phi %0, 0:i8, %3, %5 infer %6 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 4 %2:i64 = phi %1, 1:i64, 0:i64, 1:i64, 1:i64 %3:i64 = phi %0, 0:i64, %2 infer %3 known from Souper: 000000000000000000000000000000000000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 9 %2 = block 5 %3:i8 = var (0000000x) %4:i8 = phi %1, %3, %3, 0:i8, %3, %3, %3, %3, %3, %3 %5:i8 = phi %0, 0:i8, %4 infer %5 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (000000000000000000000000xxxxxxxx) %1:i32 = addnsw 4294967293:i32, %0 %2:i32 = lshr 980209:i32, %1 infer %2 known from Souper: 000000000000xxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i8 = var (0000000x) %3 = block 2 %4:i8 = var (0000000x) %5:i8 = phi %1, %2, %4 %6 = block 2 %7 = block 2 %8:i8 = var (0000000x) %9:i8 = phi %6, %2, %8 %10:i8 = phi %0, %5, %9 infer %10 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i8 = var (0000000x) %2 = block 2 %3 = block 4 %4:i8 = var (0000000x) %5:i8 = var (0000000x) %6:i8 = phi %2, %4, %5 %7:i8 = phi %0, %1, %6 infer %7 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %1:i64 = addnsw 18446744073709551615:i64, %0 %2:i1 = ult %1, %1 infer %2 known from Souper: 0 known from compiler: x souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i16 = trunc %0 %2:i16 = lshr 1795:i16, %1 infer %2 known from Souper: 00000xxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 8 %1:i16 = var (00000000000000xx) %2:i32 = zext %1 %3:i32 = phi %0, 1:i32, 1:i32, 1:i32, 1:i32, 1:i32, %2, 1:i32, 1:i32 infer %3 known from Souper: 000000000000000000000000000000xx known from compiler: 0000000000000000xxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = phi %0, 2:i32, 1:i32 %2:i1 = var %3:i32 = zext %2 %4:i32 = addnw %1, %3 infer %4 known from Souper: 000000000000000000000000000000xx known from compiler: 00000000000000000000000000000xxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 5 %2:i32 = phi %1, 4:i32, 2:i32, 4:i32, 2:i32, 1:i32 %3:i32 = phi %0, 0:i32, %2 infer %3 known from Souper: 00000000000000000000000000000xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2 = block 3 %3 = block 3 %4:i8 = var (0000000x) %5 = block 2 %6:i8 = var (0000000x) %7 = block 3 %8:i8 = var (0000000x) %9:i8 = phi %2, %4, %6, %8 %10:i8 = phi %1, 0:i8, %9 %11:i8 = phi %0, %10, %9 infer %11 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 8 %2:i32 = phi %1, 2:i32, 4:i32, 2:i32, 3:i32, 0:i32, 0:i32, 0:i32, 0:i32 %3 = block 2 %4:i1 = var %5:i32 = select %4, 5:i32, 0:i32 %6:i32 = phi %0, 1:i32, %2, %5 infer %6 known from Souper: 00000000000000000000000000000xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i32 = var (0000000000000000000000000000000x) %2:i32 = xor 1:i32, %1 %3:i32 = phi %0, 3:i32, 2:i32, %2 infer %3 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (0000000000000000000010011011xxxx) %2:i32 = phi %0, %1, 244:i32 %3:i64 = zext %2 infer %3 known from Souper: 0000000000000000000000000000000000000000000000000000x00x1x11xxxx known from compiler: 0000000000000000000000000000000000000000000000000000x00xxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 3 %2:i32 = var (000000000000000000000000000000xx) %3:i32 = phi %1, %2, 2:i32, 1:i32 %4:i32 = phi %0, 1:i32, %3, 2:i32 infer %4 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1:i32 = var (0000000000000000000000000000011x) %2:i32 = phi %0, 0:i32, 0:i32, 0:i32, 7:i32, %1 %3:i1 = eq 0:i32, %2 %4:i32 = select %3, 5:i32, %2 infer %4 known from Souper: 000000000000000000000000000001xx known from compiler: 00000000000000000000000000000xxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = var %2:i64 = sub %0, %1 %3:i1 = ult %2, 3:i64 %4:i64 = select %3, %2, 3:i64 infer %4 known from Souper: 00000000000000000000000000000000000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %2 = block 2 %3:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %4:i64 = phi %0, %1, %3, %3 %5:i64 = var (0000000000000000000000000000000000000000000000000000000000010xx0) %6:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %7:i64 = mulnw %5, %6 %8:i64 = addnw %4, %7 infer %8 known from Souper: 000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 00000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i72 = var (00000000000000000000000000000000000x000000000000000000000000000000000000) %2:i72 = xor 68719476736:i72, %1 %3:i72 = phi %0, 0:i72, %2 infer %3 known from Souper: 00000000000000000000000000000000000x000000000000000000000000000000000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 1 %2:i32 = var (0000000000000000xxxxxxxxxxxxxxxx) %3:i32 = phi %1, %2 %4 = block 2 %5:i32 = phi %4, 0:i32, %2 %6:i32 = phi %0, 0:i32, %3, %5 infer %6 known from Souper: 0000000000000000xxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = shl 2:i32, %0 %2:i32 = add 2147483646:i32, %1 infer %2 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 14 %1 = block 6 %2 = block 2 %3:i8 = var (0000000x) %4 = block 2 %5:i8 = var (0000000x) %6:i8 = phi %1, 0:i8, 0:i8, 0:i8, 0:i8, %3, %5 %7 = block 2 %8:i8 = phi %7, 0:i8, 1:i8 %9 = block 2 %10:i8 = phi %9, 0:i8, 1:i8 %11 = block 2 %12:i8 = phi %11, 0:i8, 1:i8 %13 = block 2 %14:i8 = phi %13, 0:i8, 1:i8 %15 = block 2 %16:i8 = phi %15, 0:i8, 1:i8 %17:i8 = xor 1:i8, %16 %18:i8 = phi %0, %6, 1:i8, 0:i8, 0:i8, %8, %10, 0:i8, 0:i8, %12, %14, %16, %17, %16, %16 infer %18 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i64 = var %2:i64 = var %3:i64 = phi %0, %1, %2 %4:i64 = add 1:i64, %3 %5:i64 = and %3, %4 infer %5 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i1 = ult %0, 8:i32 %2:i32 = select %1, %0, 8:i32 infer %2 known from Souper: 0000000000000000000000000000xxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i9 = trunc %0 %2:i9 = lshr 66:i9, %1 infer %2 known from Souper: 00xxxxxxx known from compiler: xxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var %2:i1 = slt %1, 3:i32 %3:i32 = addnsw 4294967295:i32, %1 %4:i32 = select %2, 1:i32, %3 infer %4 known from Souper: 0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (00000000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %1:i64 = mulnw 24:i64, %0 %2:i64 = addnw 8:i64, %1 infer %2 known from Souper: 000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx000 known from compiler: 00000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx000 souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var %2:i32 = and 1:i32, %1 %3:i32 = or 2:i32, %2 %4:i32 = phi %0, %2, %3 infer %4 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 1 %1:i32 = var %2:i64 = zext %1 %3:i64 = var %4:i64 = ashrexact %3, 2:i64 %5:i64 = udiv %2, %4 infer %5 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx llvm is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (0000000000000000000xxx1x1x110xx0) %2:i32 = var (0000000000000000000xxx1x1x110xx0) %3:i32 = phi %0, %1, %2 %4:i64 = zext %3 infer %4 known from Souper: 000000000000000000000000000000000000000000000000000xxx1x1x110xx0 known from compiler: 000000000000000000000000000000000000000000000000000xxxxxxxxx0xx0 souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 7 %1 = block 1 %2:i8 = var (0000000x) %3:i8 = phi %1, %2 %4 = block 1 %5:i8 = phi %4, %2 %6 = block 1 %7:i8 = phi %6, %2 %8 = block 4 %9:i8 = phi %8, %2, %2, %2, %2 %10 = block 1 %11:i8 = phi %10, %2 %12 = block 1 %13:i8 = phi %12, %2 %14 = block 6 %15:i8 = phi %14, %2, %2, %2, %2, %2, %2 %16:i8 = phi %0, %3, %5, %7, %9, %11, %13, %15 infer %16 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 28 %2:i8 = phi %1, 0:i8, 1:i8, 1:i8, 1:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8 %3:i8 = phi %0, %2, 0:i8, 1:i8 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1 = block 2 %2 = block 2 %3:i32 = var (0000000000000000000000000000000x) %4:i32 = phi %1, 1:i32, %3 %5:i32 = phi %0, %4, 1:i32, 1:i32, 1:i32, 1:i32 infer %5 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1:i1 = var %2:i64 = var (0000000000000000000000000000000000000000000000000xxxxxxxxxxxxxxx) %3:i64 = select %1, %2, 0:i64 %4:i64 = phi %0, 32767:i64, 32767:i64, 0:i64, %3 infer %4 known from Souper: 0000000000000000000000000000000000000000000000000xxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 4 %2 = block 8 %3:i32 = var (00000000000000000000000000000xx0) %4:i32 = phi %1, 10:i32, 2:i32, %3, %3 %5:i32 = phi %0, %4, 0:i32, 0:i32 infer %5 known from Souper: 0000000000000000000000000000xxx0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 5 %2:i32 = phi %1, 2:i32, 2:i32, 2:i32, 2:i32, 0:i32 %3:i32 = phi %0, 0:i32, %2, 0:i32 infer %3 known from Souper: 000000000000000000000000000000x0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %1:i64 = shl 64:i64, %0 %2:i32 = trunc %1 infer %2 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxx000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (000000000000000000000000000000x0) %2:i32 = or 1:i32, %1 %3:i32 = var %4:i32 = and %2, %3 %5:i32 = phi %0, %4, %2 infer %5 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 21 %1 = block 4 %2 = block 2 %3:i8 = var (0000000x) %4 = block 3 %5:i8 = var (0000000x) %6:i8 = phi %1, %3, %3, %5, %5 %7:i8 = phi %0, %6, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8 infer %7 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i1 = var %1:i32 = var %2:i32 = var (0000000000000000xxxxxxxxxxxxxxxx) %3:i32 = select %0, %1, %2 %4:i32 = add 4294967295:i32, %3 %5:i32 = and %4, %3 infer %5 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 4 %2:i32 = phi %1, 2:i32, 2:i32, 2:i32, 0:i32 %3 = block 2 %4:i32 = phi %3, 0:i32, 2:i32 %5:i32 = phi %0, %2, 2:i32, %4 infer %5 known from Souper: 000000000000000000000000000000x0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i7 = trunc %0 %2:i7 = lshr 31:i7, %1 infer %2 known from Souper: 00xxxxx known from compiler: xxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i32 = var (0000000000000000000000000000000x) %2:i32 = shlnw %1, 1:i32 %3:i8 = var (000000xx) %4:i32 = zext %3 %5:i32 = var (0000000000000xxxxxxxxxxxxxxxxxxx) %6:i32 = and 3:i32, %5 %7:i32 = phi %0, %2, %4, %6 infer %7 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 2 %2:i32 = phi %1, 1:i32, 4:i32 %3:i32 = phi %0, 0:i32, 1:i32, %2 infer %3 known from Souper: 00000000000000000000000000000x0x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i64 = var (0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00000000000000000000000000000000) %2:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %3:i64 = or %1, %2 %4:i64 = phi %0, %3, %3 infer %4 known from Souper: 0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2 = block 2 %3:i8 = phi %2, 1:i8, 0:i8 %4:i8 = phi %1, 1:i8, %3 %5:i8 = phi %0, %4, %3 infer %5 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i24 = var (00000000000000000000000x) %2:i24 = shlnw %1, 11:i24 %3:i24 = phi %0, 2048:i24, 0:i24, %2 infer %3 known from Souper: 000000000000x00000000000 known from compiler: xxxxxxxxxxxxx00000000000 souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i1 = var %2:i8 = zext %1 %3:i1 = var %4:i8 = var (0000000x) %5:i8 = select %3, 0:i8, %4 %6:i8 = phi %0, %2, %5 infer %6 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = and 255:i32, %0 %2:i32 = var (0000000xxxxxxxxxxxxxxxxxxxxxxxxx) %3:i32 = and 30:i32, %2 %4:i32 = lshr %1, %3 infer %4 known from Souper: 000000000000000000000000xxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (0000000000000000000000000000000x) %1:i32 = subnsw 0:i32, %0 %2:i32 = var (000000000000000000000000000000xx) %3:i32 = shl 4:i32, %2 %4:i32 = and %1, %3 infer %4 known from Souper: 00000000000000000000000000xxxx00 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i32 = var (000000000000000000000000101xxxxx) %2:i32 = var (000000000000000000000000100xxxxx) %3:i32 = var (000000000000000000000000110xxxxx) %4:i32 = phi %0, %1, %2, %3 %5:i32 = or 256:i32, %4 infer %5 known from Souper: 0000000000000000000000011xxxxxxx known from compiler: 000000000000000000000001xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = and 4095:i32, %0 %2:i32 = cttz %1 infer %2 known from Souper: 00000000000000000000000000x0xxxx known from compiler: 00000000000000000000000000xxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 1 %2:i8 = var (0000000x) %3:i8 = phi %1, %2 %4:i8 = phi %0, 1:i8, %3, 0:i8 infer %4 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i64 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00) %2:i64 = add 516:i64, %1 %3:i64 = phi %0, %2, 516:i64 infer %3 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = sub 63:i64, %0 %2:i1 = ult 7:i64, %1 %3:i64 = select %2, 7:i64, %1 infer %3 known from Souper: 0000000000000000000000000000000000000000000000000000000000000xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 6 %1:i32 = var (000000000000000000000000000000xx) %2:i32 = var (0000000000000000000000000000xxxx) %3:i32 = addnw %1, %2 %4:i32 = var (0000000000000000000000000000000x) %5:i32 = var (0000000000000000000000000000000x) %6:i32 = addnw %4, %5 %7:i32 = addnw %3, %6 infer %7 known from Souper: 000000000000000000000000000xxxxx known from compiler: 00000000000000000000000000xxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 11 %1:i32 = phi %0, 2:i32, 4:i32, 3:i32, 2:i32, 4:i32, 3:i32, 2:i32, 4:i32, 2:i32, 2:i32, 2:i32 %2:i32 = addnsw 4294967295:i32, %1 infer %2 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = add 4294967281:i32, %0 %2:i1 = slt 0:i32, %1 %3:i32 = select %2, %1, 0:i32 infer %3 known from Souper: 0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 4 %2 = block 2 %3 = block 6 %4:i8 = var (0000000x) %5:i8 = phi %2, 0:i8, %4 %6:i8 = phi %1, %5, %5, 1:i8, 1:i8 %7:i8 = phi %0, %6, %5, %5 infer %7 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 10 %1 = block 6 %2 = block 3 %3:i8 = var (0000000x) %4:i8 = phi %1, 0:i8, 1:i8, 1:i8, %3, 1:i8, 1:i8 %5:i8 = phi %0, %4, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8 infer %5 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 6 %1:i1 = var %2:i32 = select %1, 2343:i32, 2346:i32 %3:i32 = var (00000000000000000000000000000x00) %4:i32 = addnw 79:i32, %3 %5:i32 = var (00000000000000000000000xxxxxxxx0) %6:i32 = or 713:i32, %5 %7:i32 = addnw 714:i32, %5 %8:i32 = phi %0, %2, %4, %6, %7, 2347:i32, 84:i32 infer %8 known from Souper: 00000000000000000000xxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1 = block 4 %2:i32 = phi %1, 1:i32, 0:i32, 0:i32, 0:i32 %3:i32 = phi %0, %2, 1:i32, 1:i32, 1:i32 infer %3 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (00000000000000000000xxxxxxxxxxxx) %1:i32 = cttz %0 %2:i32 = and 30:i32, %1 infer %2 known from Souper: 0000000000000000000000000000xxx0 known from compiler: 000000000000000000000000000xxxx0 souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 1 %1:i32 = var %2:i32 = phi %0, %1 %3:i32 = add 1:i32, %2 %4:i32 = and %2, %3 infer %4 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i16 = var (00000000000xxxxx) %2:i32 = zext %1 %3:i32 = phi %0, %2, 0:i32 infer %3 known from Souper: 000000000000000000000000000xxxxx known from compiler: 0000000000000000xxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = var %2:i64 = and 4294967295:i64, %1 %3:i64 = urem %0, %2 infer %3 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx llvm is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 12 %1:i32 = var (00000000000000000000000000000x00) %2:i32 = or 3:i32, %1 %3:i1 = var %4:i32 = select %3, 5:i32, 0:i32 %5:i1 = var %6:i32 = select %5, 5:i32, 4:i32 %7:i32 = phi %0, %2, %4, 7:i32, %6, 1:i32, 5:i32, 0:i32, 10:i32, 10:i32, 10:i32, 10:i32, 10:i32 infer %7 known from Souper: 0000000000000000000000000000xxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var %2:i32 = and 536870911:i32, %1 %3 = block 1 %4:i32 = var (000xxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %5:i32 = phi %3, %4 %6:i32 = phi %0, %2, %5 infer %6 known from Souper: 000xxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 7 %1 = block 2 %2:i1 = var %3:i8 = zext %2 %4:i8 = phi %1, 1:i8, %3 %5:i8 = phi %0, %4, %3, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8 infer %5 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1:i32 = var (0000000000000000000000000000000x) %2:i32 = xor 1:i32, %1 %3:i32 = var (0000000000000000000000000000000x) %4:i32 = xor 1:i32, %3 %5:i32 = phi %0, 2:i32, %2, 1:i32, %4 infer %5 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i1 = var %2:i8 = zext %1 %3:i1 = var %4:i8 = select %3, %2, 1:i8 %5:i8 = phi %0, %2, %2, %4 infer %5 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 10 %1:i8 = var %2:i32 = zext %1 %3:i8 = var %4:i32 = zext %3 %5:i8 = var %6:i32 = zext %5 %7 = block 7 %8:i32 = phi %7, 0:i32, 128:i32, 96:i32, 64:i32, 32:i32, 16:i32, 8:i32 %9:i1 = var %10:i32 = select %9, %8, 0:i32 %11:i1 = var %12:i32 = select %11, 8:i32, 0:i32 %13:i32 = phi %0, 0:i32, %2, 0:i32, %4, 0:i32, %6, %8, %8, %10, %12 infer %13 known from Souper: 000000000000000000000000xxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 24 %1 = block 2 %2:i32 = phi %1, 3:i32, 1:i32 %3:i32 = phi %0, 0:i32, 0:i32, 0:i32, 0:i32, 0:i32, 0:i32, 0:i32, 0:i32, 0:i32, 0:i32, %2, %2, %2, %2, %2, %2, %2, %2, %2, %2, %2, %2, %2, %2 infer %3 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 2 %2:i1 = var %3:i8 = zext %2 %4:i8 = phi %1, 1:i8, %3 %5:i8 = phi %0, %4, %3, %3 infer %5 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = lshr %0, 6:i32 %2:i64 = var (0000000000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxx) %3:i32 = trunc %2 %4:i1 = ult %1, %3 %5:i32 = select %4, %1, %3 infer %5 known from Souper: 000000xxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 00000xxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i1 = var %2 = block 3 %3:i32 = var (000000000000000000000000000000xx) %4:i32 = select %1, 0:i32, %3 %5:i32 = phi %0, 1:i32, %4 infer %5 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 3 %2:i32 = var (000000000000000000000000000000xx) %3:i32 = phi %1, %2, 1:i32, 2:i32 %4:i32 = phi %0, 2:i32, 2:i32, %3 infer %4 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1 = block 3 %2:i32 = phi %1, 2:i32, 1:i32, 3:i32 %3:i32 = phi %0, 0:i32, %2, 0:i32, 0:i32, 0:i32 infer %3 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 3 %2 = block 5 %3:i32 = var (00000000000000000000xxxxxxxxxxxx) %4:i32 = phi %1, %3, 0:i32, 0:i32 %5:i32 = phi %0, %4, 0:i32, 0:i32 infer %5 known from Souper: 00000000000000000000xxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0) %1:i32 = urem %0, 12:i32 %2:i32 = addnw 1:i32, %1 infer %2 known from Souper: 0000000000000000000000000000xxx1 known from compiler: 000000000000000000000000000xxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (0000000000000000xxxxxxxxxxxxxxxx) %1:i32 = subnsw 32:i32, %0 %2:i1 = var %3:i32 = select %2, 3:i32, 2:i32 %4:i32 = shl %1, %3 infer %4 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = var %2:i64 = addnsw %0, %1 %3:i32 = var %4:i64 = zext %3 %5:i64 = urem %2, %4 infer %5 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx llvm is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = var %2:i64 = sub %0, %1 %3:i32 = var (0000000000000000000000000000100x) %4:i64 = zext %3 %5:i64 = lshr %2, %4 infer %5 known from Souper: 00000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 5 %2:i32 = phi %1, 1:i32, 1:i32, 0:i32, 1:i32, 1:i32 %3:i32 = addnw 1:i32, %2 %4:i32 = phi %0, %3, %2 infer %4 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1 = block 5 %2:i8 = phi %1, 0:i8, 0:i8, 0:i8, 0:i8, 1:i8 %3:i8 = phi %0, %2, %2, %2, 1:i8, %2 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i8 = phi %1, 0:i8, 1:i8 %3 = block 1 %4:i8 = var (0000000x) %5:i8 = phi %3, %4 %6:i8 = phi %0, %2, %5 infer %6 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i64 = sext %0 %2:i64 = lshr 2409892355644:i64, %1 infer %2 known from Souper: 0000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i64 = var (000000000000000000000000000000000000000000000000xxxxxxxxxxxxxxxx) %3:i16 = var %4:i64 = zext %3 %5:i64 = phi %1, %2, %4 %6:i64 = phi %0, %5, %4 infer %6 known from Souper: 000000000000000000000000000000000000000000000000xxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i8 = var (0000000x) %2:i8 = xor 1:i8, %1 %3:i8 = phi %0, 1:i8, %2 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i64 = sext %0 %2:i64 = lshr 562949945162752:i64, %1 infer %2 known from Souper: 000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1 = block 2 %2:i32 = phi %1, 0:i32, 2:i32 %3:i32 = or 4:i32, %2 %4:i1 = var %5:i32 = select %4, 2:i32, 0:i32 %6:i32 = phi %0, %3, %2, %5, 0:i32 infer %6 known from Souper: 00000000000000000000000000000xx0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (000000000000000000000000000xxxxx) %2:i32 = phi %0, %1, 32:i32 %3:i32 = addnw 1:i32, %2 infer %3 known from Souper: 00000000000000000000000000xxxxxx known from compiler: 0000000000000000000000000xxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i1 = var %2:i8 = zext %1 %3:i1 = var %4:i8 = zext %3 %5:i8 = var (0000000x) %6:i8 = xor 1:i8, %5 %7:i8 = phi %0, %2, %4, %6 infer %7 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i32 = var (000000000000000000000000000xxxx0) %2:i32 = var (000000000000000000000000000xxxx0) %3:i32 = phi %0, %1, %2, %1 %4:i32 = lshr 255:i32, %3 infer %4 known from Souper: 000000000000000000000000xxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (0000000000000000000000000000000000000000000000000000000000xxxxxx) %1:i64 = var %2:i64 = addnsw %0, %1 %3:i64 = var (000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %4:i64 = addnw 1:i64, %3 %5:i64 = urem %2, %4 infer %5 known from Souper: 000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 00xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 5 %2:i8 = phi %1, 0:i8, 0:i8, 1:i8, 1:i8, 0:i8 %3:i8 = phi %0, 0:i8, %2, 0:i8 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = var %2:i32 = lshr %1, 3:i32 %3:i1 = ult %0, %2 %4:i32 = select %3, %0, %2 infer %4 known from Souper: 000xxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (0000000000000000000000000000xxxx) %1:i1 = ult %0, 10:i32 %2:i32 = or 48:i32, %0 %3:i32 = addnw 87:i32, %0 %4:i32 = select %1, %2, %3 infer %4 known from Souper: 0000000000000000000000000x1xxxxx known from compiler: 0000000000000000000000000xxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 2 %2:i64 = phi %1, 0:i64, 2:i64 %3:i64 = phi %0, 0:i64, 2:i64, %2 infer %3 known from Souper: 00000000000000000000000000000000000000000000000000000000000000x0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i24 = var (xxxxxxxxxxxxxxxxxxxxx000) %1:i24 = lshr 66048:i24, %0 %2:i16 = trunc %1 infer %2 known from Souper: 000000xx000000xx known from compiler: xxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1:i64 = phi %0, 9223372036854775807:i64, 8388608:i64, 65536:i64, 1024:i64, 256:i64 %2:i64 = subnsw 0:i64, %1 infer %2 known from Souper: 1xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 49 %2:i64 = phi %1, 0:i64, 0:i64, 0:i64, 0:i64, 0:i64, 0:i64, 0:i64, 0:i64, 0:i64, 0:i64, 0:i64, 0:i64, 0:i64, 0:i64, 0:i64, 0:i64, 0:i64, 0:i64, 0:i64, 0:i64, 0:i64, 0:i64, 0:i64, 0:i64, 0:i64, 0:i64, 0:i64, 0:i64, 0:i64, 0:i64, 0:i64, 0:i64, 0:i64, 0:i64, 0:i64, 0:i64, 0:i64, 0:i64, 0:i64, 0:i64, 0:i64, 0:i64, 0:i64, 0:i64, 14:i64, 45:i64, 14:i64, 45:i64, 0:i64 %3 = block 129 %4:i64 = phi %3, 0:i64, 221:i64, 220:i64, 219:i64, 218:i64, 217:i64, 216:i64, 215:i64, 214:i64, 213:i64, 212:i64, 211:i64, 210:i64, 209:i64, 208:i64, 207:i64, 206:i64, 205:i64, 204:i64, 203:i64, 202:i64, 201:i64, 200:i64, 199:i64, 198:i64, 197:i64, 196:i64, 195:i64, 194:i64, 193:i64, 192:i64, 191:i64, 190:i64, 189:i64, 188:i64, 187:i64, 186:i64, 185:i64, 184:i64, 183:i64, 182:i64, 181:i64, 180:i64, 179:i64, 178:i64, 177:i64, 176:i64, 175:i64, 174:i64, 173:i64, 172:i64, 171:i64, 170:i64, 169:i64, 168:i64, 167:i64, 166:i64, 165:i64, 164:i64, 163:i64, 162:i64, 161:i64, 160:i64, 159:i64, 158:i64, 157:i64, 156:i64, 155:i64, 154:i64, 153:i64, 152:i64, 151:i64, 150:i64, 149:i64, 148:i64, 147:i64, 146:i64, 145:i64, 144:i64, 143:i64, 142:i64, 141:i64, 140:i64, 139:i64, 138:i64, 137:i64, 136:i64, 135:i64, 134:i64, 133:i64, 132:i64, 131:i64, 130:i64, 129:i64, 128:i64, 127:i64, 126:i64, 117:i64, 116:i64, 115:i64, 114:i64, 113:i64, 112:i64, 111:i64, 110:i64, 39:i64, 43:i64, 36:i64, 505:i64, 37:i64, 40:i64, 38:i64, 35:i64, 237:i64, 236:i64, 235:i64, 234:i64, 233:i64, 232:i64, 231:i64, 230:i64, 23:i64, 29:i64, 20:i64, 504:i64, 21:i64, 24:i64, 22:i64, 19:i64 %5:i64 = phi %0, %2, %4 infer %5 known from Souper: 0000000000000000000000000000000000000000000000000000000xxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i1 = slt 4294967295:i32, %0 %2:i32 = select %1, %0, 1:i32 infer %2 known from Souper: 0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1:i1 = var %2:i8 = zext %1 %3:i8 = var (0000000x) %4:i8 = xor 1:i8, %3 %5:i8 = var (0000000x) %6:i8 = xor 1:i8, %5 %7:i8 = phi %0, %2, %2, %2, %4, %6 infer %7 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (0000000000000000000000000000000000000000000000000000000000x1xx1x) %1:i64 = shl 18446744073709551615:i64, %0 %2:i64 = xor 6629298651489370111:i64, %1 infer %2 known from Souper: 1xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx111111111111111111 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1 = block 3 %2:i32 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxx000) %3:i32 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxx000) %4:i32 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxx000) %5:i32 = phi %1, %2, %3, %4 %6:i32 = addnsw 1000000000:i32, %5 %7:i32 = addnsw 3294967296:i32, %5 %8:i32 = phi %0, 0:i32, %6, %5, %7, %5 infer %8 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxx000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 8 %1:i32 = var %2:i32 = sub 4294967294:i32, %1 %3:i32 = xor 4294967295:i32, %1 %4:i1 = eq %2, %3 infer %4 known from Souper: 0 known from compiler: x souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i8 = var %2:i8 = lshr %1, 7:i8 %3 = block 2 %4 = block 2 %5:i8 = var (0000000x) %6:i8 = phi %3, %2, %5 %7:i8 = phi %0, %2, %6 infer %7 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1:i32 = var (000000000000000000000000001000x0) %2:i32 = var (000000000000000000000000001011x0) %3:i32 = var (000000000000000000000000001001x0) %4:i32 = phi %0, %1, %2, %3, %1 %5:i8 = trunc %4 infer %5 known from Souper: 0010xxx0 known from compiler: 00x0xxx0 souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i32 = trunc %0 %2:i32 = var %3:i32 = lshr %2, 3:i32 %4:i1 = ult %1, %3 %5:i32 = select %4, %1, %3 infer %5 known from Souper: 000xxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = add 4:i32, %0 %2:i1 = ult 8:i32, %1 %3:i32 = select %2, 8:i32, %1 infer %3 known from Souper: 0000000000000000000000000000xxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1 = block 3 %2:i64 = phi %1, 1:i64, 2:i64, 1:i64 %3:i1 = ult %0, %2 %4:i64 = select %3, %0, %2 infer %4 known from Souper: 00000000000000000000000000000000000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = and 63:i64, %0 %2:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %3:i64 = and 3:i64, %2 %4:i64 = shl %1, %3 infer %4 known from Souper: 0000000000000000000000000000000000000000000000000000000xxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = lshr 2405181688062:i64, %0 %2:i64 = shl %1, 1:i64 infer %2 known from Souper: 000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0 souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 6 %2:i32 = phi %1, 1:i32, 1:i32, 1:i32, 0:i32, 0:i32, 0:i32 %3:i32 = phi %0, 0:i32, %2 infer %3 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (0000000000000000000000000000000000000000000000000000000000xxxxxx) %1:i64 = or 18:i64, %0 %2:i64 = shl 18446744073709551615:i64, %1 infer %2 known from Souper: 1xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx000000000000000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 6 %1 = block 4 %2:i32 = phi %1, 2:i32, 2:i32, 2:i32, 0:i32 %3:i32 = phi %0, 2:i32, 2:i32, 2:i32, 2:i32, 2:i32, %2 infer %3 known from Souper: 000000000000000000000000000000x0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i1 = var %1:i64 = var (000000000000000000000000000000000000000000000000000000000xxxxxxx) %2:i64 = var %3:i64 = select %0, %1, %2 %4 = block 3 %5:i64 = phi %4, 8:i64, 6:i64, 7:i64 %6:i1 = ult %3, %5 %7:i64 = select %6, %3, %5 infer %7 known from Souper: 000000000000000000000000000000000000000000000000000000000000xxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 10 %2 = block 2 %3:i32 = var (00000000000000000000000000000x1x) %4:i32 = phi %1, 6:i32, 6:i32, 6:i32, 0:i32, %3, 0:i32, 0:i32, 6:i32, 6:i32, 6:i32 %5:i32 = phi %0, 2:i32, %4, %4 infer %5 known from Souper: 00000000000000000000000000000xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i1 = var %2:i8 = zext %1 %3 = block 2 %4:i8 = phi %3, 1:i8, %2 %5:i8 = phi %0, %2, %2, %4 infer %5 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (0000000000000000000000000000000x) %2:i32 = or 2986:i32, %1 %3:i32 = phi %0, 2987:i32, %2 infer %3 known from Souper: 0000000000000000000010111010101x known from compiler: xxxxxxxxxxxxxxxxxxxx1x111x1x1x1x souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i1 = ult 2147483647:i64, %0 %2:i64 = select %1, 2147483647:i64, %0 infer %2 known from Souper: 000000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 21 %2:i64 = phi %1, 0:i64, 8:i64, 11:i64, 8:i64, 8:i64, 11:i64, 11:i64, 8:i64, 8:i64, 8:i64, 8:i64, 8:i64, 8:i64, 11:i64, 11:i64, 12:i64, 12:i64, 10:i64, 10:i64, 7:i64, 7:i64 %3:i64 = phi %0, %2, 8:i64, 8:i64 infer %3 known from Souper: 000000000000000000000000000000000000000000000000000000000000xxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 1 %2:i64 = var %3:i64 = and 4294967295:i64, %2 %4:i64 = addnw 1:i64, %3 %5:i64 = phi %0, %3, %4 infer %5 known from Souper: 0000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 3 %2:i32 = var (0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %3:i32 = phi %1, 0:i32, %2, 0:i32 %4:i32 = phi %0, %3, 0:i32, 0:i32 infer %4 known from Souper: 0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1:i32 = var (0000000000000000000000000xxxxxxx) %2:i16 = trunc %1 %3:i16 = var (000000000000000x) %4:i16 = addnw %3, %2 %5:i16 = phi %0, 0:i16, %2, %4, %2 infer %5 known from Souper: 00000000xxxxxxxx known from compiler: xxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1:i32 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00) %2:i64 = sext %1 %3:i64 = phi %0, %2, 18446744073709550588:i64, 18446744073709550584:i64, 1028:i64, 1024:i64 infer %3 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 4 %2:i32 = phi %1, 1:i32, 0:i32, 0:i32, 1:i32 %3 = block 4 %4:i32 = phi %3, 1:i32, 0:i32, 1:i32, 0:i32 %5:i32 = phi %0, %2, %4 infer %5 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i26 = trunc %0 %2:i26 = lshr 4165624:i26, %1 infer %2 known from Souper: 0000xxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i16 = var %1:i16 = and 15:i16, %0 %2:i16 = lshr 4623:i16, %1 infer %2 known from Souper: 000xxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = add 4294967295:i32, %0 %2 = block 4 %3:i32 = var (000000000000000000000000000000xx) %4:i32 = mulnw 37:i32, %3 %5:i32 = and %1, %4 infer %5 known from Souper: 0000000000000000000000000xx0xxxx known from compiler: 000000000000000000000000xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 34 %1 = block 4 %2:i32 = phi %1, 6:i32, 6:i32, 1:i32, 6:i32 %3:i32 = phi %0, 1:i32, 7:i32, 1:i32, 3:i32, 3:i32, 5:i32, 6:i32, 6:i32, 6:i32, 1:i32, 1:i32, 1:i32, 1:i32, 1:i32, 6:i32, 6:i32, 6:i32, 6:i32, 5:i32, 1:i32, 1:i32, 6:i32, 6:i32, 6:i32, %2, 1:i32, 5:i32, 0:i32, 1:i32, %2, 1:i32, 6:i32, 6:i32, 6:i32 infer %3 known from Souper: 00000000000000000000000000000xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 3 %2:i32 = phi %1, 0:i32, 1:i32, 0:i32 %3:i32 = addnw 1:i32, %2 %4:i32 = phi %0, %2, %3, %2 infer %4 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = shl 65536:i32, %0 %2:i32 = add 4294901760:i32, %1 infer %2 known from Souper: xxxxxxxxxxxxxxxx0000000000000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx1) %1:i64 = shl 1:i64, %0 %2:i64 = xor 9223372036854775807:i64, %1 infer %2 known from Souper: x1x1x1x1x1x1x1x1x1x1x1x1x1x1x1x1x1x1x1x1x1x1x1x1x1x1x1x1x1x1x1x1 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 10 %1:i1 = var %2:i8 = zext %1 %3 = block 6 %4:i8 = var (0000000x) %5:i8 = phi %3, %4, %4, 0:i8, 0:i8, %4, 0:i8 %6:i8 = phi %0, 0:i8, %2, %2, %2, %2, %2, 0:i8, %5, %2, %2 infer %6 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 28 %2:i32 = phi %1, 1:i32, 4:i32, 16:i32, 8:i32, 2:i32, 1:i32, 16:i32, 8:i32, 4:i32, 2:i32, 1:i32, 4:i32, 8:i32, 4:i32, 2:i32, 2:i32, 1:i32, 1:i32, 2:i32, 1:i32, 16:i32, 8:i32, 4:i32, 2:i32, 1:i32, 4:i32, 8:i32, 8:i32 %3:i32 = phi %0, %2, %2, 1:i32 infer %3 known from Souper: 000000000000000000000000000xxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = var (0000000000000000000000000000000000000000000000000000000000xxxxx1) %2:i64 = shl 1:i64, %1 %3:i64 = and %0, %2 infer %3 known from Souper: x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 3 %2:i32 = var (0000000000000000000000000000001x) %3:i32 = phi %1, 1:i32, %2, 1:i32 %4:i32 = phi %0, 0:i32, %3, 0:i32 infer %4 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 4 %2:i8 = phi %1, 0:i8, 1:i8, 0:i8, 0:i8 %3:i8 = phi %0, 0:i8, 0:i8, %2 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i64 = var %2:i64 = phi %0, %1, 0:i64 %3:i1 = ult 9:i64, %2 %4:i64 = select %3, 9:i64, %2 infer %4 known from Souper: 000000000000000000000000000000000000000000000000000000000000xxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 3 %2:i64 = phi %1, 0:i64, 2:i64, 2:i64 %3:i64 = phi %0, %2, 2:i64, 2:i64 infer %3 known from Souper: 00000000000000000000000000000000000000000000000000000000000000x0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1 = block 2 %2:i8 = phi %1, 1:i8, 0:i8 %3:i8 = phi %0, %2, 0:i8, 0:i8, 0:i8 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (000000000000000000000000xxxxxxxx) %1:i44 = zext %0 %2:i44 = lshr 6528350289920:i44, %1 infer %2 known from Souper: 0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 2 %2:i32 = phi %1, 0:i32, 1:i32 %3:i32 = phi %0, %2, 1:i32, 1:i32 infer %3 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (0000000000000000000000000000000x) %2:i32 = xor 1:i32, %1 %3:i32 = var (0000000000000000000000000000000x) %4:i32 = or %2, %3 %5:i32 = phi %0, %4, %2 infer %5 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i1 = ult %0, 32:i32 %2:i32 = select %1, %0, 32:i32 infer %2 known from Souper: 00000000000000000000000000xxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %2:i64 = xor 4294967295:i64, %1 %3:i64 = phi %0, %2, 0:i64 infer %3 known from Souper: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2 = block 2 %3:i8 = var (0000000x) %4:i8 = phi %1, %3, 0:i8 %5:i8 = phi %0, 1:i8, %4 infer %5 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 20 %1:i16 = var (00000000000000xx) %2:i32 = zext %1 %3 = block 3 %4:i32 = var (000000000000000000000000000000xx) %5:i32 = phi %3, %4, 0:i32, 0:i32 %6:i32 = phi %0, 0:i32, 0:i32, %2, 0:i32, 0:i32, 0:i32, 0:i32, 0:i32, 0:i32, 0:i32, 0:i32, 0:i32, 0:i32, 0:i32, 0:i32, 0:i32, 0:i32, 0:i32, 0:i32, %5 infer %6 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (0000000000000000000000000000000x) %1:i32 = subnsw 0:i32, %0 %2:i32 = var (000000000000000000000000000000xx) %3:i32 = shl 2:i32, %2 %4:i32 = and %1, %3 infer %4 known from Souper: 000000000000000000000000000xxxx0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i32 = var %3:i32 = phi %0, %2, 64:i32 %4:i1 = ult %3, 31:i32 %5:i32 = select %4, %3, 31:i32 infer %5 known from Souper: 000000000000000000000000000xxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = var (00000000000000000000000000000000000000000000000000000000000x10xx) %2:i64 = shl 1:i64, %1 %3:i64 = and %0, %2 infer %3 known from Souper: 000000000000000000000000000000000000xxxx000000000000xxxx00000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 3 %2:i32 = phi %1, 1:i32, 3:i32, 1:i32 %3:i32 = phi %0, 3:i32, %2 infer %3 known from Souper: 000000000000000000000000000000x1 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (000000000000000000000000xxxxxxxx) %1:i32 = lshr %0, 5:i32 %2:i32 = shl 1:i32, %1 infer %2 known from Souper: 000000000000000000000000xxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i8 = var (000xxxxx) %2:i8 = xor 16:i8, %1 %3:i8 = var (00000xxx) %4:i8 = var (0000x000) %5:i8 = or %3, %4 %6:i8 = phi %0, %2, %5 infer %6 known from Souper: 000xxxxx known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i64 = zext %0 %2:i1 = var %3:i64 = zext %2 %4:i64 = shlnw %1, %3 infer %4 known from Souper: 0000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (000000000000000000000000xxxxxxxx) %2:i32 = addnw 1:i32, %1 %3:i32 = phi %0, %2, 0:i32 infer %3 known from Souper: 00000000000000000000000xxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1:i8 = var (0000000x) %2:i8 = xor 1:i8, %1 %3:i8 = phi %0, 0:i8, 1:i8, 1:i8, 0:i8, %2 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 7 %1 = block 4 %2:i32 = phi %1, 2:i32, 2:i32, 0:i32, 2:i32 %3:i32 = phi %0, 2:i32, 2:i32, 2:i32, %2, 0:i32, 0:i32, 0:i32 infer %3 known from Souper: 000000000000000000000000000000x0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = ashr %0, 31:i32 %2:i32 = addnsw 100:i32, %1 infer %2 known from Souper: 00000000000000000000000001100xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0) %1:i64 = shl 1:i64, %0 %2:i64 = var %3:i64 = lshr %2, 1:i64 %4:i64 = and %1, %3 infer %4 known from Souper: 0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x0x known from compiler: 0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (0000000000000000000000000000000x) %1:i32 = addnw 1:i32, %0 %2:i32 = mulnw 3:i32, %1 infer %2 known from Souper: 00000000000000000000000000000x1x known from compiler: 0000000000000000000000000000xxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 3 %2:i32 = phi %1, 2:i32, 1:i32, 3:i32 %3:i32 = phi %0, 0:i32, %2 infer %3 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 9 %1 = block 5 %2:i8 = var (0000000x) %3:i8 = var (0000000x) %4:i8 = phi %1, %2, %3, 0:i8, 0:i8, 0:i8 %5:i8 = phi %0, %4, %4, 0:i8, %4, %4, %4, %4, %4, %4 infer %5 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (0000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0000) %1:i64 = lshr 1970384967303178:i64, %0 %2:i16 = trunc %1 infer %2 known from Souper: 000000000000xxxx known from compiler: xxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2 = block 2 %3:i32 = var (00000000000000000000000000000xxx) %4:i32 = phi %1, %3, 2:i32 %5:i32 = phi %0, %4, 1:i32 infer %5 known from Souper: 00000000000000000000000000000xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i8 = var %2:i8 = and 1:i8, %1 %3:i1 = var %4:i8 = select %3, %2, 1:i8 %5:i8 = phi %0, %2, %4 infer %5 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (00000000000000000000000000xxx101) %1:i64 = zext %0 %2:i64 = shl 1:i64, %1 infer %2 known from Souper: 00x0000000x0000000x0000000x0000000x0000000x0000000x0000000x00000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 6 %1:i32 = var (000000000000000000000000000000xx) %2:i32 = shl 1:i32, %1 %3:i32 = shl %2, 3:i32 infer %3 known from Souper: 0000000000000000000000000xxxx000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxx000 souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i1 = var %1:i32 = select %0, 16:i32, 8:i32 %2:i32 = addnsw 4294967295:i32, %1 infer %2 known from Souper: 0000000000000000000000000000x111 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxx111 souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1 = block 3 %2:i64 = phi %1, 1:i64, 0:i64, 0:i64 %3:i64 = phi %0, %2, 1:i64, 0:i64, 0:i64 infer %3 known from Souper: 000000000000000000000000000000000000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1:i8 = var (0000000x) %2:i8 = var (000xxxxx) %3:i8 = and %1, %2 %4:i8 = phi %0, %1, 0:i8, %3, %1 infer %4 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (0000000000000000000000000000xxx0) %1:i32 = shl 1:i32, %0 %2:i32 = addnsw 4294967295:i32, %1 infer %2 known from Souper: 000000000000000000xxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (000000000000000000000000xx000000) %1:i32 = lshrexact %0, 3:i32 %2 = block 2 %3:i1 = var %4:i32 = select %3, 16:i32, 2:i32 %5:i32 = mulnw %1, %4 infer %5 known from Souper: 00000000000000000000000xx0xx0000 known from compiler: 0000000000000000000000xxxxxx0000 souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (0000000000000000xxxxxxxxxxxxxxxx) %1:i1 = ult 255:i32, %0 %2:i32 = var (000000000000000000000000xxxxxxxx) %3:i32 = or 2560:i32, %2 %4:i32 = or 2048:i32, %0 %5:i32 = select %1, %3, %4 infer %5 known from Souper: 0000000000000000000010x0xxxxxxxx known from compiler: 0000000000000000xxxx1xxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i32 = var (000000000000000000000000000x1x1x) %2:i32 = phi %0, 10:i32, %1, 10:i32 infer %2 known from Souper: 000000000000000000000000000x1x1x known from compiler: 000000000000000000000000000xxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i8 = var (0000000x) %2:i8 = var (0000000x) %3:i8 = or %1, %2 %4:i8 = var (0000000x) %5:i8 = var (0000000x) %6:i8 = or %4, %5 %7:i8 = phi %0, %3, %6 infer %7 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1 = block 4 %2:i8 = phi %1, 0:i8, 0:i8, 1:i8, 1:i8 %3 = block 2 %4:i8 = phi %3, 1:i8, %2 %5:i8 = phi %0, %2, %2, %4, %2 infer %5 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (000000000000000000000000xxxxxxxx) %2:i32 = var (00000000000000000000000x00000000) %3:i32 = or %1, %2 %4:i32 = phi %0, %3, 0:i32 infer %4 known from Souper: 00000000000000000000000xxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 12 %1:i8 = var (0000000x) %2:i8 = xor 1:i8, %1 %3:i8 = var (0000000x) %4:i8 = xor 1:i8, %3 %5:i8 = var (0000000x) %6:i8 = xor 1:i8, %5 %7:i8 = var (0000000x) %8:i8 = xor 1:i8, %7 %9:i8 = phi %0, %2, %4, %4, 1:i8, 1:i8, %2, %2, %6, %8, 1:i8, 1:i8, 1:i8 infer %9 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 3 %2 = block 3 %3:i32 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxx000) %4:i32 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxx000) %5:i32 = phi %1, %3, %4, %4 %6:i32 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxx0000) %7:i32 = addnsw %5, %6 %8:i32 = phi %0, %5, %7, %7 infer %8 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxx000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (0000000000000000000000000000x111) %1:i32 = var (0000000000000000000000000000xx00) %2:i32 = shl %0, %1 %3:i32 = xor 4294967295:i32, %2 infer %3 known from Souper: 1111111111111111xxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 1 %1:i32 = var (000000000000000000000000000000xx) %2:i32 = var (0000000000000000000000000000xx00) %3:i32 = or %1, %2 %4:i32 = phi %0, %3 infer %4 known from Souper: 0000000000000000000000000000xxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (0000000000000000000000000000000x) %2:i32 = xor 1:i32, %1 %3 = block 3 %4:i32 = phi %3, 0:i32, 1:i32, 0:i32 %5:i32 = phi %0, %2, %4 infer %5 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 32 %1 = block 3 %2 = block 2 %3 = block 2 %4 = block 3 %5 = block 3 %6:i8 = var (0000000x) %7:i8 = phi %5, 0:i8, 0:i8, %6 %8 = block 2 %9:i8 = var (0000000x) %10:i8 = phi %8, 0:i8, %9 %11 = block 3 %12:i8 = phi %11, 0:i8, 1:i8, 0:i8 %13:i8 = phi %4, %7, %10, %12 %14:i8 = phi %3, 0:i8, %13 %15 = block 2 %16:i8 = phi %15, %14, %13 %17:i8 = phi %2, %14, %16 %18:i8 = phi %1, %17, %17, 0:i8 %19:i8 = phi %0, %18, %18, %18, %18, %17, %17, %17, %17, %16, %14, %14, %14, %14, %14, %14, %14, %14, %14, %14, %13, %13, %7, %10, %10, %12, %10, 0:i8, %10, 0:i8, %12, %12, %18 infer %19 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i1 = var %1:i32 = var %2:i32 = var (000000000000000000000000xxxxxxxx) %3:i32 = select %0, %1, %2 %4:i32 = add 4294967295:i32, %3 %5:i32 = and %4, %3 infer %5 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i1 = var %2:i8 = var (000x0001) %3:i8 = var (000x1001) %4:i8 = select %1, %2, %3 %5:i8 = phi %0, 33:i8, %4 infer %5 known from Souper: 00xxx001 known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i32 = phi %1, 243:i32, 240:i32 %3 = block 2 %4:i32 = phi %3, %2, 240:i32 %5:i32 = phi %0, %2, %4 infer %5 known from Souper: 000000000000000000000000111100xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxx000) %1:i32 = lshr 1246316593:i32, %0 %2:i8 = trunc %1 infer %2 known from Souper: 0xxxx0xx known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (00000000000000000000000000000xxx) %2:i32 = addnw 1:i32, %1 %3:i32 = phi %0, 1:i32, %2 infer %3 known from Souper: 0000000000000000000000000000xxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %2:i64 = shlnw %1, 4:i64 %3:i64 = phi %0, %2, 1024:i64 infer %3 known from Souper: 0000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0000 souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1 = block 2 %2:i8 = phi %1, 1:i8, 0:i8 %3:i8 = phi %0, 0:i8, 0:i8, 0:i8, %2, 1:i8 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i64 = var (000000000000000000000000xxxxxxxx00000000000000000000000000000000) %2:i64 = or 12:i64, %1 %3:i64 = phi %0, %2, 12:i64 infer %3 known from Souper: 000000000000000000000000xxxxxxxx00000000000000000000000000001100 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx11xx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i64 = var %2:i64 = udiv %1, 4294967295:i64 %3:i64 = addnw 1:i64, %2 infer %3 known from Souper: 0000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 9 %2:i32 = phi %1, 1:i32, 0:i32, 0:i32, 0:i32, 0:i32, 0:i32, 0:i32, 0:i32, 0:i32 %3:i32 = phi %0, %2, 0:i32 infer %3 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (0000000000000000000000000000000x) %2:i32 = or 3114:i32, %1 %3:i32 = phi %0, 3114:i32, %2 infer %3 known from Souper: 0000000000000000000011000010101x known from compiler: xxxxxxxxxxxxxxxxxxxx11xxxx1x1x1x souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i16 = trunc %0 %2:i16 = lshr 4575:i16, %1 infer %2 known from Souper: 000xxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (00000000000000000000010000000x0x) %2:i32 = phi %0, %1, 1026:i32 %3:i64 = zext %2 infer %3 known from Souper: 0000000000000000000000000000000000000000000000000000010000000xxx known from compiler: 00000000000000000000000000000000000000000000000000000x0000000xxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0) %1:i64 = addnsw 18446744073709551615:i64, %0 %2:i64 = var (0000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx1) %3:i64 = urem %2, %0 %4:i64 = subnsw %1, %3 infer %4 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i32 = phi %1, 84:i32, 81:i32 %3 = block 2 %4:i32 = phi %3, 84:i32, 81:i32 %5:i32 = phi %0, %2, %4 infer %5 known from Souper: 00000000000000000000000001010x0x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i32 = var (0000000000000000000000000000000x) %3:i32 = phi %1, %2, %2 %4 = block 1 %5:i32 = phi %4, %2 %6:i32 = phi %0, %3, %5 infer %6 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 11 %2:i32 = phi %1, 3:i32, 3:i32, 3:i32, 3:i32, 0:i32, 0:i32, 3:i32, 3:i32, 3:i32, 3:i32, 3:i32 %3:i32 = phi %0, 1:i32, %2, %2 infer %3 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (00000000000000000000000000001x00) %1:i32 = shl 1:i32, %0 %2:i32 = addnsw 4294967295:i32, %1 infer %2 known from Souper: 00000000000000000000xxxx11111111 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %3:i64 = var (00000000000000000000000000000000xxx00000000000000000000000000000) %4:i64 = or %2, %3 %5:i64 = phi %0, %4, 0:i64 infer %5 known from Souper: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1 = block 3 %2:i8 = phi %1, 0:i8, 1:i8, 0:i8 %3:i8 = phi %0, 0:i8, %2, 0:i8, 0:i8 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 7 %1:i64 = var %2:i64 = srem %1, 8:i64 %3:i64 = subnsw 16:i64, %2 infer %3 known from Souper: 00000000000000000000000000000000000000000000000000000000000xxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 3 %2:i8 = phi %1, 1:i8, 0:i8, 1:i8 %3:i8 = phi %0, %2, 0:i8 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 3 %2:i8 = phi %1, 1:i8, 0:i8, 0:i8 %3:i8 = phi %0, 1:i8, %2 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i1 = var %2:i32 = zext %1 %3 = block 2 %4:i32 = phi %3, 1:i32, 2:i32 %5:i32 = phi %0, %2, %4 infer %5 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (0000000000000000000000000000xxxx) %1:i1 = eq 15:i32, %0 %2 = block 2 %3:i32 = var (000000000000000000000000000000x1) %4:i32 = phi %2, 3:i32, %3 %5:i32 = select %1, 1:i32, %4 infer %5 known from Souper: 000000000000000000000000000000x1 known from compiler: 000000000000000000000000000000xx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (000000000000000000000000000000xx) %1:i32 = var (0000000000000000000000000000000x) %2:i32 = addnw %0, %1 %3:i32 = var (0000000000000000000000000xxxxxxx) %4:i32 = and 1:i32, %3 %5:i32 = addnw %2, %4 infer %5 known from Souper: 00000000000000000000000000000xxx known from compiler: 0000000000000000000000000000xxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 8 %1 = block 4 %2:i32 = phi %1, 1:i32, 1:i32, 0:i32, 0:i32 %3:i32 = or 2:i32, %2 %4:i32 = or 4:i32, %2 %5:i1 = var %6:i32 = select %5, 16:i32, 0:i32 %7:i32 = phi %0, %3, %4, %2, %2, 32:i32, 32:i32, 8:i32, %6 infer %7 known from Souper: 00000000000000000000000000xxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (00000000000000000000000000xxxxxx) %2:i32 = phi %0, %1, 64:i32 %3:i32 = subnsw 64:i32, %2 infer %3 known from Souper: 0000000000000000000000000xxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 1 %1:i64 = var %2:i64 = udiv %1, 4294967295:i64 %3:i64 = addnw 1:i64, %2 infer %3 known from Souper: 0000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 1 %1:i32 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00) %2:i32 = add 4:i32, %1 %3:i32 = phi %0, %2 infer %3 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i8 = var %2:i8 = lshr %1, 7:i8 %3 = block 2 %4:i8 = phi %3, %2, %2 %5:i8 = phi %0, %2, %4 infer %5 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (000000000000000xxxxxxxxxxxxxxxxx) %1:i32 = and 65535:i32, %0 %2:i16 = var %3:i32 = zext %2 %4:i32 = mulnw %1, %3 infer %4 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx llvm is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1 = block 11 %2:i8 = phi %1, 1:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8, 0:i8 %3:i8 = phi %0, %2, %2, %2, %2, 0:i8 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 11 %1 = block 2 %2 = block 2 %3:i8 = var (0000000x) %4:i8 = phi %1, 0:i8, %3 %5:i8 = phi %0, 0:i8, 0:i8, %4, %4, %4, %4, %4, %4, 0:i8, 1:i8, 1:i8 infer %5 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %1:i64 = var (000000000000000000000000000000000000000000000000000000000011xx00) %2:i64 = mulnw %0, %1 %3:i64 = var %4:i64 = and 4294967295:i64, %3 %5:i64 = addnw %2, %4 infer %5 known from Souper: 00000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 0000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var %2:i32 = shl %1, 3:i32 %3:i64 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx000) %4:i32 = trunc %3 %5:i32 = phi %0, %2, %4 infer %5 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxx000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1:i8 = var (0000000x) %2:i32 = zext %1 %3:i32 = phi %0, 0:i32, 1:i32, %2, 0:i32 infer %3 known from Souper: 0000000000000000000000000000000x known from compiler: 000000000000000000000000xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i24 = var (00000000000000000000000x) %2:i8 = trunc %1 %3:i1 = var %4:i8 = zext %3 %5:i8 = phi %0, %2, %4 infer %5 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1:i1 = var %2:i1 = var %3:i8 = zext %2 %4:i8 = select %1, %3, 0:i8 %5:i8 = phi %0, 0:i8, %4, %3, %3, %3 infer %5 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 7 %2:i8 = phi %1, 0:i8, 0:i8, 0:i8, 1:i8, 1:i8, 0:i8, 1:i8 %3:i8 = phi %0, %2, 1:i8, 1:i8 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i1 = phi %0, 1:i1, 0:i1, 0:i1 %2:i32 = phi %0, 0:i32, 330:i32, 330:i32 %3:i32 = select %1, 325:i32, %2 infer %3 known from Souper: 0000000000000000000000010100xxxx known from compiler: 00000000000000000000000x0x00xxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var %2:i64 = zext %1 %3:i64 = var (0000000000000000xxxxxxxxxxxxxxxx00000000000000000000000000000000) %4:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %5:i64 = or %3, %4 %6:i64 = phi %0, %2, %5 infer %6 known from Souper: 0000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 6 %1 = block 2 %2 = block 5 %3:i32 = var (0000000000000000000000000000xxxx) %4 = block 6 %5:i32 = var (0000000000000000000000000000xxxx) %6:i32 = phi %1, %3, %5 %7:i32 = phi %0, 0:i32, 1:i32, %6, %6, %6, %6 infer %7 known from Souper: 0000000000000000000000000000xxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1 = block 2 %2:i32 = phi %1, 1:i32, 0:i32 %3:i32 = phi %0, 1:i32, 1:i32, 0:i32, %2 infer %3 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i8 = var (0000000x) %3:i8 = phi %1, %2, 1:i8 %4:i8 = phi %0, 0:i8, %3 infer %4 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i1 = var %2:i32 = zext %1 %3 = block 7 %4:i32 = var (000000000000000000000000000000xx) %5:i32 = phi %3, 1:i32, 1:i32, %4, 2:i32, 1:i32, 1:i32, 1:i32 %6:i32 = phi %0, %2, %5 infer %6 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = add 4294966737:i32, %0 %2:i32 = lshr 134480385:i32, %1 infer %2 known from Souper: 0000xxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1 = block 1 %2:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %3:i64 = phi %1, %2 %4:i1 = ult %0, %3 %5:i64 = select %4, %0, %3 infer %5 known from Souper: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 3 %2:i32 = var (0000000000000000000000000000000x) %3:i32 = phi %1, 0:i32, %2, 1:i32 %4:i32 = addnw 1:i32, %3 %5:i32 = var (0000000000000000000000000000000x) %6:i32 = addnw %3, %5 %7:i32 = phi %0, %3, %4, %6 infer %7 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 1 %2:i16 = var (00000000xxxxxxxx) %3:i16 = phi %1, %2 %4:i16 = var (00000xxxxxxxxxxx) %5:i16 = and 7:i16, %4 %6:i16 = phi %0, %3, %5 infer %6 known from Souper: 00000000xxxxxxxx known from compiler: xxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i8 = var %1:i32 = sext %0 %2:i32 = addnsw 295:i32, %1 infer %2 known from Souper: 00000000000000000000000xxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %2:i64 = sub %0, %1 %3:i1 = ult 128:i64, %2 %4:i64 = select %3, 128:i64, %2 infer %4 known from Souper: 00000000000000000000000000000000000000000000000000000000xxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (000000000000000000000000000000x0) %2:i32 = or 4:i32, %1 %3 = block 3 %4:i32 = var (0000000000000000000xx00000000000) %5:i32 = or %4, %1 %6:i32 = phi %0, %2, %5 infer %6 known from Souper: 0000000000000000000xx00000000xx0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i8 = var (0000xxxx) %1:i32 = zext %0 %2:i32 = var %3:i32 = sub 5:i32, %2 %4:i32 = lshr %1, %3 infer %4 known from Souper: 0000000000000000000000000000xxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i1 = var %1:i32 = select %0, 34:i32, 29:i32 %2:i32 = addnsw 4294967283:i32, %1 infer %2 known from Souper: 00000000000000000000000000010x0x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i32 = var (0000000000000000xxxxxxxx00000000) %2:i32 = var (000000000000000000000000xxxxxxxx) %3:i32 = or %1, %2 %4:i32 = var (0000000000000000xxxxxxxx00000000) %5:i32 = var (000000000000000000000000xxxxxxxx) %6:i32 = or %4, %5 %7:i32 = phi %0, 0:i32, %3, %6 infer %7 known from Souper: 0000000000000000xxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i64 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0000000000000000000000000000000000) %2:i64 = ashrexact %1, 32:i64 %3:i64 = phi %0, %2, %2 infer %3 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 2 %2 = block 1 %3:i1 = var %4:i32 = zext %3 %5:i32 = phi %1, %4, 4:i32 %6:i32 = var (0000000000000000000000000000000x) %7:i32 = xor 1:i32, %6 %8:i32 = phi %0, %5, %7, %4 infer %8 known from Souper: 00000000000000000000000000000x0x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i64 = phi %1, 6:i64, 10:i64 %3:i64 = phi %0, 8:i64, %2 infer %3 known from Souper: 000000000000000000000000000000000000000000000000000000000000xxx0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1:i32 = var (0000000000000000000000000000000x) %2:i32 = xor 1:i32, %1 %3:i32 = phi %0, %2, 0:i32, 0:i32, 0:i32, 1:i32 infer %3 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 6 %2:i32 = phi %1, 4:i32, 5:i32, 7:i32, 16:i32, 6:i32, 8:i32 %3:i32 = phi %0, %2, %2, 2:i32 infer %3 known from Souper: 000000000000000000000000000xxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 6 %1 = block 4 %2:i8 = phi %1, 0:i8, 0:i8, 1:i8, 0:i8 %3:i8 = phi %0, %2, %2, 0:i8, 0:i8, %2, %2 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1 = block 5 %2:i8 = phi %1, 0:i8, 0:i8, 1:i8, 0:i8, 0:i8 %3:i8 = phi %0, 0:i8, 0:i8, 0:i8, %2 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (000000000000000000000000000xxxxx) %2:i32 = xor 31:i32, %1 %3:i32 = phi %0, %2, 2:i32 infer %3 known from Souper: 000000000000000000000000000xxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i1 = ult 1:i32, %0 %2:i32 = select %1, 1:i32, %0 infer %2 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 4 %2:i32 = phi %1, 0:i32, 0:i32, 2:i32, 1:i32 %3:i32 = phi %0, 2:i32, %2 infer %3 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i32 = var (0000000000000000000000000000000x) %3:i32 = xor 1:i32, %2 %4 = block 2 %5:i32 = phi %4, 0:i32, 1:i32 %6:i32 = phi %0, %3, %5 infer %6 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1:i64 = var (000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %2:i64 = addnw 4294967295:i64, %1 %3:i64 = var (000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %4:i64 = addnw 4294967295:i64, %3 %5:i64 = var %6:i64 = lshrexact %5, 3:i64 %7:i64 = var %8:i64 = lshrexact %7, 3:i64 %9:i64 = phi %0, %2, %4, %6, %8 infer %9 known from Souper: 00xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 6 %1:i32 = var (0000000000000000000000000000000x) %2:i32 = or 50:i32, %1 %3:i1 = var %4:i32 = select %3, 65:i32, 70:i32 %5:i1 = var %6:i32 = select %5, 65:i32, 70:i32 %7:i32 = phi %0, %2, 70:i32, 65:i32, 70:i32, %4, %6 infer %7 known from Souper: 0000000000000000000000000xxx0xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 3 %2:i64 = var (000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %3:i64 = var (00xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %4:i64 = var (0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %5:i64 = phi %1, %2, %3, %4 %6:i64 = phi %1, 9:i64, 5:i64, 3:i64 %7:i64 = phi %0, %5, %6, %5 infer %7 known from Souper: 0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i16 = var %1:i64 = zext %0 %2:i64 = lshr 17146324029:i64, %1 infer %2 known from Souper: 000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i8 = var %1:i13 = zext %0 %2:i13 = lshr 4078:i13, %1 infer %2 known from Souper: 0xxxxxxxxxxxx known from compiler: xxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i1 = var %1:i64 = var (000000000000000000000000000000000000000000000000000000000xxxxxxx) %2:i64 = var %3:i64 = select %0, %1, %2 %4:i1 = ult %3, 18:i64 %5:i64 = select %4, %3, 18:i64 infer %5 known from Souper: 00000000000000000000000000000000000000000000000000000000000xxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var %2:i64 = zext %1 %3:i64 = addnw 4294967295:i64, %2 %4:i64 = and %3, %2 infer %4 known from Souper: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0 known from compiler: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i16 = var %2:i32 = zext %1 %3 = block 60 %4:i32 = phi %3, 926:i32, 893:i32, 902:i32, 917:i32, 938:i32, 929:i32, 932:i32, 935:i32, 915:i32, 909:i32, 913:i32, 907:i32, 1958:i32, 1925:i32, 1934:i32, 1949:i32, 1970:i32, 1961:i32, 1964:i32, 1967:i32, 1945:i32, 1939:i32, 1009:i32, 1003:i32, 1006:i32, 1025:i32, 1013:i32, 1019:i32, 2023:i32, 2017:i32, 2020:i32, 2039:i32, 2027:i32, 2033:i32, 953:i32, 941:i32, 947:i32, %2, %2, %2, %2, %2, %2, %2, %2, %2, %2, %2, %2, %2, %2, %2, %2, %2, %2, %2, %2, %2, %2, %2 %5:i32 = phi %0, %2, %4 infer %5 known from Souper: 0000000000000000xxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxx000) %1:i32 = lshr 1195782192:i32, %0 %2:i8 = trunc %1 infer %2 known from Souper: 0xxx0xxx known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (0000000000000000000000000000000x) %2:i32 = or 2:i32, %1 %3:i32 = phi %0, 3:i32, %2 infer %3 known from Souper: 0000000000000000000000000000001x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx1x souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1 = block 2 %2:i32 = phi %1, 4:i32, 3:i32 %3:i32 = phi %0, %2, 0:i32, 2:i32, 1:i32 infer %3 known from Souper: 00000000000000000000000000000xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 4 %2:i32 = phi %1, 3:i32, 1:i32, 1:i32, 0:i32 %3:i32 = phi %0, 1:i32, %2 infer %3 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i1 = var %1:i32 = select %0, 3810586624:i32, 3785359360:i32 %2:i32 = bswap %1 infer %2 known from Souper: 00000000xxxx0000x0100000111000x1 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i64 = var (000000000000000000000000000000000000000000000000000000000000000x) %2:i8 = trunc %1 %3:i8 = phi %0, 0:i8, %2, %2 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i8 = var %1:i32 = sext %0 %2:i32 = addnsw 5151:i32, %1 infer %2 known from Souper: 000000000000000000010xxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 6 %1 = block 7 %2 = block 5 %3:i8 = var (0000000x) %4:i8 = phi %1, %3, %3, %3, 0:i8, 0:i8, 0:i8, 0:i8 %5:i1 = var %6:i8 = select %5, %4, 0:i8 %7:i8 = phi %0, %4, %4, %4, %4, %6, %4 infer %7 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i32 = phi %1, 55:i32, 40:i32 %3:i32 = phi %0, %2, 40:i32 infer %3 known from Souper: 000000000000000000000000001xxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i8 = var %2:i8 = and 1:i8, %1 %3:i8 = var (0000000x) %4:i8 = xor 1:i8, %3 %5 = block 2 %6:i8 = phi %5, %4, 0:i8 %7:i8 = phi %0, %2, %4, %6 infer %7 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (0000000000000000xxxxxxxxxxxxxxxx) %1:i32 = addnsw 4294964476:i32, %0 %2:i32 = lshr 1748770319:i32, %1 infer %2 known from Souper: 0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 1 %2:i32 = var (00000000000000000000000000000x01) %3:i32 = phi %1, %2 %4:i32 = phi %0, %3, 2:i32, 2:i32 infer %4 known from Souper: 00000000000000000000000000000xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (000000000000000xxxxxxxxxxxxxxxxx) %1:i32 = and 7:i32, %0 %2:i32 = shl 256:i32, %1 infer %2 known from Souper: 0000000000000000xxxxxxxx00000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 2 %2:i32 = phi %1, 1:i32, 0:i32 %3:i32 = phi %0, 0:i32, %2, 1:i32 infer %3 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 5 %2:i32 = var (00000000000000000000xxxxxxxxxxxx) %3:i32 = phi %1, %2, 0:i32, 0:i32, 0:i32, 0:i32 %4:i32 = phi %0, %3, 0:i32, 0:i32 infer %4 known from Souper: 00000000000000000000xxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 4 %2:i32 = phi %1, 0:i32, 4:i32, 1:i32, 0:i32 %3:i32 = addnw 1:i32, %2 %4:i32 = phi %0, %3, %2 infer %4 known from Souper: 00000000000000000000000000000xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 5 %2:i32 = phi %1, 0:i32, 3:i32, 1:i32, 2:i32, 3:i32 %3 = block 3 %4:i32 = phi %3, 0:i32, 1:i32, 2:i32 %5:i32 = phi %0, 0:i32, %2, %4 infer %5 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i8 = var (0000000x) %3:i8 = phi %1, 1:i8, %2 %4:i8 = phi %0, %3, 1:i8 infer %4 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (00000000000000000000100110111xxx) %2:i32 = phi %0, %1, 247:i32 %3:i64 = zext %2 infer %3 known from Souper: 0000000000000000000000000000000000000000000000000000x00x1x11xxxx known from compiler: 0000000000000000000000000000000000000000000000000000x00xxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i24 = trunc %0 %2:i24 = lshr 35:i24, %1 infer %2 known from Souper: 000000000000000000xxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1 = block 5 %2:i32 = var (000000000000000000000000000000x1) %3:i32 = var (000000000000000000000000000000x1) %4:i32 = phi %1, 2:i32, %2, %2, 3:i32, %3 %5:i32 = phi %0, 0:i32, 0:i32, 0:i32, %4, %4 infer %5 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i32 = var (000000000000000000000000101xxxxx) %2:i32 = var (000000000000000000000000100xxxxx) %3:i32 = var (000000000000000000000000110xxxxx) %4:i32 = phi %0, %1, %2, %3 %5:i32 = or 768:i32, %4 infer %5 known from Souper: 0000000000000000000000111xxxxxxx known from compiler: 000000000000000000000011xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 8 %1:i32 = var %2:i32 = sub 4294967294:i32, %1 %3:i32 = xor 4294967295:i32, %1 %4:i32 = or %2, %3 infer %4 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx1 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (0000000000000000000000000000000x) %1:i32 = var (0000000000000000000000000000111x) %2:i32 = shl %0, %1 %3:i8 = var %4:i32 = zext %3 %5:i32 = or %2, %4 infer %5 known from Souper: 0000000000000000xx000000xxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 2 %2:i64 = var (00000000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %3:i64 = phi %1, %2, 4:i64 %4:i64 = phi %0, %3, %3, 4:i64 infer %4 known from Souper: 00000000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 2 %2:i32 = phi %1, 0:i32, 1:i32 %3 = block 2 %4:i32 = phi %3, 0:i32, 1:i32 %5:i32 = phi %0, %2, %4, 1:i32 infer %5 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 3 %2 = block 13 %3:i32 = var (000000000000000000000000000000xx) %4:i32 = phi %1, %3, 0:i32, 0:i32 %5:i32 = phi %0, %4, 0:i32 infer %5 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 2 %2:i8 = var (0000000x) %3:i8 = phi %1, 0:i8, %2 %4:i8 = phi %0, %3, 0:i8, 0:i8 infer %4 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1:i32 = var (000000000000000000000000000xxxxx) %2:i32 = xor 31:i32, %1 %3:i32 = var (0000000000000000000000000000xxxx) %4:i32 = xor 15:i32, %3 %5:i32 = var (0000000000000000000000000000xxxx) %6:i32 = xor 15:i32, %5 %7:i32 = var (0000000000000000000000000000xxxx) %8:i32 = xor 15:i32, %7 %9:i32 = phi %0, %2, %4, %6, %8 infer %9 known from Souper: 000000000000000000000000000xxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 1 %2:i32 = var (0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %3:i32 = phi %1, %2 %4:i32 = phi %0, 8:i32, %3 infer %4 known from Souper: 0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i1 = var %2:i8 = zext %1 %3 = block 2 %4:i8 = var (0000000x) %5:i8 = phi %3, %4, %2 %6:i8 = phi %0, %2, %5 infer %6 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1 = block 6 %2:i32 = phi %1, 2:i32, 2:i32, 2:i32, 2:i32, 0:i32, 2:i32 %3:i32 = phi %0, 2:i32, 2:i32, %2, 2:i32 infer %3 known from Souper: 000000000000000000000000000000x0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (0000xxxxxxxxxxxxxxxxxxxxxxxxxxxx) %1:i32 = addnsw 4294967295:i32, %0 %2:i1 = eq 4294967294:i32, %1 infer %2 known from Souper: 0 known from compiler: x souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 7 %1:i1 = var %2:i16 = select %1, 4:i16, 0:i16 %3 = block 4 %4:i16 = phi %3, 4:i16, 4:i16, 0:i16, 0:i16 %5:i16 = phi %0, 0:i16, 0:i16, 0:i16, %2, 0:i16, 0:i16, %4 infer %5 known from Souper: 0000000000000x00 known from compiler: xxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1:i64 = phi %0, 16:i64, 4:i64, 4:i64, 4:i64 %2:i64 = addnsw 18446744073709551615:i64, %1 infer %2 known from Souper: 000000000000000000000000000000000000000000000000000000000000xx11 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx11 souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1 = block 3 %2:i32 = phi %1, 0:i32, 1:i32, 1:i32 %3:i32 = phi %0, 0:i32, %2, 1:i32, 1:i32 infer %3 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i16 = trunc %0 %2:i16 = lshr 1365:i16, %1 infer %2 known from Souper: 00000xxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1:i8 = var (00000xxx) %2:i32 = zext %1 %3:i32 = phi %0, %2, 3:i32, %2, 5:i32 infer %3 known from Souper: 00000000000000000000000000000xxx known from compiler: 000000000000000000000000xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i8 = var (0000000x) %3:i32 = zext %2 %4:i32 = phi %0, %3, %3 infer %4 known from Souper: 0000000000000000000000000000000x known from compiler: 000000000000000000000000xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 3 %2:i32 = phi %1, 0:i32, 1:i32, 1:i32 %3:i32 = phi %0, %2, 0:i32 infer %3 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (0000000000000000000010001101x001) %2:i32 = var (0000000000000000000010001101x000) %3:i32 = phi %0, %1, %2 %4:i64 = zext %3 infer %4 known from Souper: 000000000000000000000000000000000000000000000000000010001101x00x known from compiler: 0000000000000000000000000000000000000000000000000000x000xx0xx00x souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i32 = phi %1, 1:i32, 0:i32 %3:i32 = phi %0, %2, 0:i32 infer %3 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (000000000000000000000000xxxxxxxx) %1:i32 = lshr %0, 6:i32 %2:i32 = shl 1:i32, %1 infer %2 known from Souper: 0000000000000000000000000000xxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 32 %1:i64 = var %2:i64 = lshr %1, 32:i64 %3:i64 = var %4:i64 = lshr %3, 32:i64 %5:i1 = var %6:i64 = zext %5 %7:i64 = var %8:i64 = lshr %7, 32:i64 %9:i64 = var %10:i64 = lshr %9, 32:i64 %11:i64 = var %12:i64 = lshr %11, 32:i64 %13 = block 2 %14:i64 = var %15:i64 = lshr %14, 32:i64 %16:i64 = var %17:i64 = lshr %16, 32:i64 %18:i64 = var (000000000000000000000000000000000000000000000000000000000000000x) %19:i64 = var (000000000000000000000000000000000000000000000000000000000000000x) %20:i64 = or %18, %19 %21:i64 = var %22:i64 = lshr %21, 32:i64 %23:i64 = var %24:i64 = lshr %23, 32:i64 %25:i64 = var %26:i64 = lshr %25, 32:i64 %27:i64 = var %28:i64 = lshr %27, 32:i64 %29:i1 = var %30:i64 = zext %29 %31:i64 = var %32:i64 = lshr %31, 32:i64 %33:i64 = var %34:i64 = lshr %33, 32:i64 %35:i64 = var %36:i64 = lshr %35, 32:i64 %37:i64 = var %38:i64 = lshr %37, 32:i64 %39 = block 3 %40:i64 = var (000000000000000000000000000000000000000000000000000000000000000x) %41:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %42:i64 = phi %39, %40, %41, %41 %43:i1 = var %44:i64 = zext %43 %45:i1 = var %46:i64 = zext %45 %47:i64 = phi %0, %2, %4, %6, %8, %10, %12, %15, %17, %20, %22, %22, 1:i64, 1:i64, 1:i64, 1:i64, 1:i64, 1:i64, 1:i64, 1:i64, 1:i64, %24, %26, %28, %30, 1:i64, %32, %34, %36, %38, %42, %44, %46 infer %47 known from Souper: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (1111111111111111111111111xxxxxxx) %1:i32 = cttz %0 %2:i32 = shl 4294967264:i32, %1 infer %2 known from Souper: 11111111111111111111xxxxxxx00000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1:i32 = var (00000000000000000000000001001x01) %2:i32 = var (00000000000000000000000001001x01) %3:i32 = phi %0, %1, %2, 73:i32, 77:i32 %4:i32 = and 13:i32, %3 infer %4 known from Souper: 00000000000000000000000000001x01 known from compiler: 0000000000000000000000000000xx0x souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i32 = var (000000000000000000000000000000xx) %3:i32 = addnw 3:i32, %2 %4:i32 = addnw 2:i32, %2 %5:i32 = phi %0, %3, %4 infer %5 known from Souper: 00000000000000000000000000000xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (000000000000000000000001111010xx) %2:i32 = phi %0, %1, 2819:i32 %3:i64 = zext %2 infer %3 known from Souper: 0000000000000000000000000000000000000000000000000000x0x1xxx0x0xx known from compiler: 0000000000000000000000000000000000000000000000000000x0xxxxx0x0xx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i32 = var (0000000000000000000000000000xxxx) %3:i32 = var (0000000000000000000000000000xxxx) %4:i32 = phi %1, %2, %3 %5:i32 = addnsw 1:i32, %4 %6:i32 = phi %0, %5, %4 infer %6 known from Souper: 000000000000000000000000000xxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (000000xxxxxxxxxxxxxxxxxxxxxxxx00) %1:i32 = or 1207959553:i32, %0 %2:i32 = bswap %1 infer %2 known from Souper: xxxxxx01xxxxxxxxxxxxxxxx010010xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 14 %1 = block 11 %2:i32 = var (00000000000000000000000000001x00) %3:i32 = phi %0, 12:i32, 12:i32, 12:i32, 12:i32, 12:i32, 12:i32, 12:i32, 12:i32, 12:i32, 8:i32, 8:i32, 10:i32, %2, %2 %4:i32 = shl 1:i32, %3 infer %4 known from Souper: 0000000000000000000x0x0x00000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 3 %2:i8 = var (01110xx1) %3:i8 = phi %1, %2, 112:i8, 102:i8 %4:i8 = phi %0, %3, 105:i8, %3 infer %4 known from Souper: 011xxxxx known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1 = block 2 %2:i32 = var (0000000000000000000000000000x010) %3:i32 = var (0000000000000000000000000000x100) %4:i32 = phi %1, %2, %3 %5:i32 = phi %0, %4, 40:i32, 36:i32, 38:i32, 34:i32 infer %5 known from Souper: 00000000000000000000000000x0xxx0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (00xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %1:i32 = trunc %0 %2:i32 = udiv 64:i32, %1 infer %2 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 0000000000000000000000000xxxxxxx llvm is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 158 %1 = block 1 %2:i32 = var (00000000000000000000000000000xx0) %3:i32 = phi %1, %2 %4:i32 = phi %0, 18:i32, 18:i32, %3, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32, 18:i32 infer %4 known from Souper: 000000000000000000000000000x0xx0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i32 = phi %1, 95:i32, 96:i32 %3:i32 = var (0000000000000000000000000000000x) %4:i32 = addnw 95:i32, %3 %5:i32 = phi %0, %2, %4 infer %5 known from Souper: 00000000000000000000000001xxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i8 = var (00xxxxxx) %2:i8 = and 1:i8, %1 %3:i1 = var %4:i8 = select %3, 0:i8, %2 %5:i8 = phi %0, %2, %4, %2 infer %5 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (000xxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %1:i64 = zext %0 %2:i64 = var %3:i64 = ashrexact %2, 2:i64 %4:i64 = udiv %1, %3 infer %4 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 00000000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxx llvm is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var (0xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %1:i64 = xor 9223372036854775807:i64, %0 %2:i64 = var (0000000000000000000000000000000000000000000000000000000000xxxxxx) %3:i64 = shl 18446744073709551615:i64, %2 %4:i64 = or %1, %3 infer %4 known from Souper: 1xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1 = block 6 %2:i8 = phi %1, 0:i8, 0:i8, 1:i8, 0:i8, 0:i8, 0:i8 %3:i8 = phi %0, %2, %2, 0:i8, 0:i8 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = shl %0, 1:i32 %2:i32 = udiv 128:i32, %1 infer %2 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 000000000000000000000000xxxxxxxx llvm is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1 = block 3 %2:i32 = phi %1, 0:i32, 0:i32, 1:i32 %3 = block 3 %4:i32 = phi %3, 0:i32, 0:i32, 1:i32 %5:i32 = phi %0, %2, %4, 0:i32, 0:i32, 1:i32 infer %5 known from Souper: 0000000000000000000000000000000x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1 = block 4 %2:i8 = phi %1, 0:i8, 0:i8, 1:i8, 1:i8 %3:i8 = phi %0, 1:i8, 1:i8, %2, %2 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i64 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00000000000000000000000000000000) %2:i64 = or 3:i64, %1 %3:i64 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00000000000000000000000000000000) %4:i64 = or 2:i64, %3 %5:i64 = phi %0, %2, %4, 1:i64 infer %5 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1:i32 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx1) %2:i64 = zext %1 %3:i64 = phi %0, %2, %2, %2, %2 infer %3 known from Souper: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx1 known from compiler: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = and 17942340915444056063:i64, %0 %2:i64 = bswap %1 infer %2 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 3 %2:i8 = var (0000000x) %3:i8 = var (0000000x) %4 = block 2 %5:i8 = var %6:i8 = and 1:i8, %5 %7:i8 = phi %1, %2, %3, %6 %8:i8 = phi %0, %7, %6 infer %8 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 5 %2:i32 = phi %1, 2:i32, 3:i32, 3:i32, 0:i32, 3:i32 %3:i32 = phi %0, %2, 0:i32 infer %3 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 5 %2:i32 = var (00000000000000000000000000000xxx) %3:i32 = var (00000000000000000000000000000xxx) %4:i32 = phi %1, %2, %3, 9:i32, 6:i32, 4:i32 %5 = block 6 %6:i32 = phi %5, 3:i32, 0:i32, 5:i32, 8:i32, 2:i32, 0:i32 %7:i32 = phi %0, %4, %6 infer %7 known from Souper: 0000000000000000000000000000xxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1 = block 4 %2:i32 = phi %1, 2:i32, 2:i32, 2:i32, 0:i32 %3:i32 = phi %0, 1:i32, 2:i32, %2, 1:i32, 1:i32 infer %3 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i32 = var (000000xxxxxxxxxxxxxxxxxxxxxxxxxx) %3:i32 = phi %1, %2, 0:i32 %4:i32 = var %5:i32 = lshr %4, 6:i32 %6:i32 = phi %0, %3, %5 infer %6 known from Souper: 000000xxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 5 %1 = block 5 %2:i8 = phi %1, 1:i8, 1:i8, 1:i8, 0:i8, 1:i8 %3:i8 = phi %0, 0:i8, 1:i8, 0:i8, 0:i8, %2 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = add 63:i64, %0 %2:i64 = xor %0, %1 infer %2 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx1 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i16 = var (0000000xxxx00000) %2:i16 = or 4:i16, %1 %3:i16 = or 3:i16, %1 %4:i16 = phi %0, %2, %3, %3 infer %4 known from Souper: 0000000xxxx00xxx known from compiler: xxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 2 %2:i16 = var %3:i32 = zext %2 %4:i32 = phi %1, %3, %3 %5:i32 = phi %0, %4, %3, %3 infer %5 known from Souper: 0000000000000000xxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1 = block 3 %2:i32 = var (000000000000000000000000000000xx) %3:i32 = var (000000000000000000000000000000xx) %4:i32 = phi %1, 1:i32, %2, %3 %5:i1 = var %6:i32 = select %5, %4, 0:i32 %7:i32 = phi %0, %4, %6, %6, %6 infer %7 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = lshr %0, 4:i32 %2:i32 = udiv %0, %1 infer %2 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxx1xxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 3 %2:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %3:i64 = phi %1, %2, 1:i64, 1:i64 %4:i64 = phi %0, 0:i64, %3 infer %4 known from Souper: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1 = block 2 %2:i32 = phi %1, 4:i32, 0:i32 %3:i32 = phi %0, 7:i32, %2, 0:i32, 0:i32 infer %3 known from Souper: 00000000000000000000000000000xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx11) %1:i32 = var (00xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %2:i32 = addnsw %0, %1 %3:i1 = var %4:i32 = select %3, 3:i32, 2:i32 %5:i32 = lshr %2, %4 infer %5 known from Souper: 00xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i8 = var (0000000x) %2:i8 = xor 1:i8, %1 %3:i1 = var %4:i8 = zext %3 %5:i8 = phi %0, %2, %4, %4 infer %5 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1 = block 2 %2:i32 = var (0000000000000000000100000110010x) %3:i32 = phi %1, 4196:i32, %2 %4:i32 = phi %0, %3, 4196:i32 infer %4 known from Souper: 0000000000000000000100000110010x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var (000000000000000000000xxxxxxxxxxx) %1:i32 = var (0000000000000000000000000000000x) %2:i32 = addnw %0, %1 %3:i32 = var (0000000000000000000000000000000x) %4:i32 = xor 1:i32, %3 %5:i32 = add %2, %4 infer %5 known from Souper: 00000000000000000000xxxxxxxxxxxx known from compiler: 0000000000000000000xxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1 = block 3 %2 = block 3 %3:i32 = var (0000000000000000000000000000000x) %4:i32 = var (000000000000000000000000000000xx) %5:i32 = var (000000000000000000000000000000xx) %6:i32 = phi %1, %3, %4, %5 %7:i32 = addnsw 1:i32, %6 %8:i32 = var (0000000000000000000000000000000x) %9:i32 = addnsw %6, %8 %10:i32 = phi %0, %6, %6, %7, %9 infer %10 known from Souper: 00000000000000000000000000000xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1:i32 = var (0000000000000000000000000000001x) %2:i32 = phi %0, 4:i32, %1, 1:i32, 0:i32 %3:i32 = addnw 1:i32, %2 infer %3 known from Souper: 00000000000000000000000000000xxx known from compiler: 0000000000000000000000000000xxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1:i64 = var (0000000000000000000000000000000000000000000000xxxxxxxxxxxxxxx000) %2:i64 = addnw 64:i64, %1 %3:i64 = phi %0, %2, 168:i64, 88:i64, 80:i64 infer %3 known from Souper: 000000000000000000000000000000000000000000000xxxxxxxxxxxxxxxx000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 10 %1 = block 5 %2:i64 = phi %1, 4294967296:i64, 4294967296:i64, 8589934592:i64, 21474836480:i64, 25769803776:i64 %3:i64 = phi %0, 25769803776:i64, 21474836480:i64, 8589934592:i64, 4294967296:i64, 30064771072:i64, 17179869184:i64, 12884901888:i64, 0:i64, 0:i64, %2 infer %3 known from Souper: 00000000000000000000000000000xxx00000000000000000000000000000000 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i32 = var (000000000000000000000000x0x00000) %2:i32 = or 18:i32, %1 %3:i32 = or 3:i32, %1 %4:i32 = or 2:i32, %1 %5:i32 = phi %0, %2, %3, %4 infer %5 known from Souper: 000000000000000000000000x0xx001x known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx1x souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 11 %1:i1 = var %2:i32 = var (00000000000000000000100xx01xx0x0) %3:i32 = var (00000000000000000000000xx01xx0x0) %4:i32 = select %1, %2, %3 %5:i1 = var %6:i32 = var (00000000000000000000000x000x01x0) %7:i32 = select %5, %6, 2:i32 %8:i32 = select %5, 42:i32, 8:i32 %9:i32 = phi %0, %4, %7, 0:i32, 638:i32, 64:i32, 16:i32, 20:i32, 1:i32, 1024:i32, %8, 2986:i32 infer %9 known from Souper: 00000000000000000000xxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 6 %1:i1 = var %2:i32 = select %1, 3:i32, 1:i32 %3:i1 = var %4:i32 = var (0000000000000000000000000000001x) %5:i32 = select %3, %4, 1:i32 %6:i32 = phi %0, %2, 0:i32, %5, 2:i32, 2:i32, 2:i32 infer %6 known from Souper: 000000000000000000000000000000xx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (0000000000000000000000000000000x) %2:i32 = shlnw %1, 1:i32 %3:i32 = phi %0, %2, 2:i32 infer %3 known from Souper: 000000000000000000000000000000x0 known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx0 souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = var %2:i64 = sub %0, %1 %3 = block 3 %4:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %5:i64 = phi %3, %4, 0:i64, 0:i64 %6:i1 = ult %2, %5 %7:i64 = select %6, %2, %5 infer %7 known from Souper: 00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i32 = var %1:i32 = udiv 1048575:i32, %0 %2:i1 = ult %1, 16:i32 %3:i32 = select %2, 16:i32, %1 infer %3 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 000000000000xxxxxxxxxxxxxxxxxxxx llvm is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i32 = var (0000000000000000000000000000000x) %2:i8 = trunc %1 %3:i8 = phi %0, %2, 0:i8 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 4 %1 = block 2 %2:i8 = var (0000000x) %3:i8 = var (0000000x) %4:i8 = phi %1, %2, %3 %5 = block 3 %6:i8 = phi %5, %2, %3, 1:i8 %7:i8 = phi %0, %4, %4, %6, %6 infer %7 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1:i16 = var (000000000000000x) %2:i8 = trunc %1 %3:i8 = phi %0, %2, %2, 1:i8 infer %3 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 2 %1:i1 = var %2:i32 = select %1, 4:i32, 1:i32 %3:i32 = var (0000000000000000000000000000000x) %4:i32 = xor 3:i32, %3 %5:i32 = phi %0, %2, %4 infer %5 known from Souper: 00000000000000000000000000000xxx known from compiler: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0 = block 3 %1 = block 2 %2 = block 2 %3:i8 = var (0000000x) %4:i8 = phi %1, 1:i8, %3 %5:i8 = phi %0, 1:i8, %4, %4 infer %5 known from Souper: 0000000x known from compiler: xxxxxxxx souper is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ %0:i64 = var %1:i64 = var (00000000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) %2:i64 = shlnw %1, 3:i64 %3:i64 = add %0, %2 %4:i64 = urem %3, %2 infer %4 known from Souper: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx known from compiler: 00000000000000000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx llvm is stronger ; total static profile = 1 ; total dynamic profile = 0 ------------------------------------------------------ Done.