Created
May 1, 2018 05:44
-
-
Save regehr/649c148d8c154b2550062d865b30a244 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
----------------------------------------------------------- | |
; start LHS (in $_luaS_newlstr) | |
%0:i32 = var | |
%1:i32 = var | |
; (i32.xor(get_local $41)(get_local $2)) | |
%2 = xor %0, %1 | |
; (i32.shr_u(get_local $2)(i32.const 5)) | |
%3 = lshr %1, 5:i32 | |
; (i32.lt_u(get_local $5)(get_local $2)) | |
%4 = ult %3, %1 | |
%5:i32 = zext %4 | |
; (i32.eq(unreachable)(unreachable)) | |
%6 = eq %5, 0:i32 | |
pc %6 1:i1 | |
infer %2 | |
; RHS inferred successfully | |
result %0 | |
----------------------------------------------------------- | |
; start LHS (in $_luaL_checkudata) | |
%0:i32 = var | |
; (i32.eq(unreachable)(unreachable)) | |
%1 = eq %0, 0:i32 | |
%2:i32 = zext %1 | |
; (i32.eq(unreachable)(unreachable)) | |
%3 = eq %2, 0:i32 | |
%4:i32 = zext %3 | |
; (i32.eq(unreachable)(unreachable)) | |
%5 = eq %4, 0:i32 | |
infer %5 | |
; RHS inferred successfully | |
result %1 | |
----------------------------------------------------------- | |
; start LHS (in $_luaL_prepbuffsize) | |
%0 = block 2 | |
%1:i32 = var | |
; (i32.shl(get_local $6)(i32.const 1)) | |
%2 = shl %1, 1:i32 | |
%3:i32 = var | |
; (i32.sub(get_local $6)(get_local $2)) | |
%4 = sub %2, %3 | |
%5:i32 = var | |
; (i32.lt_u(get_local $40)(get_local $1)) | |
%6 = ult %4, %5 | |
blockpc %0 0 %6 1:i1 | |
%7:i32 = zext %6 | |
; (i32.eq(unreachable)(unreachable)) | |
%8 = eq %7, 0:i32 | |
blockpc %0 1 %8 1:i1 | |
; (i32.add(get_local $2)(get_local $1)) | |
%9 = add %3, %5 | |
%10 = phi %0, %9, %2 | |
; (i32.sub(get_local $3)(get_local $2)) | |
%11 = sub %10, %3 | |
; (i32.lt_u(get_local $52)(get_local $1)) | |
%12 = ult %11, %5 | |
infer %12 | |
; RHS inferred successfully | |
result 0:i1 | |
----------------------------------------------------------- | |
; start LHS (in $_luaL_prepbuffsize) | |
%0 = block 2 | |
%1:i32 = var | |
; (i32.shl(get_local $6)(i32.const 1)) | |
%2 = shl %1, 1:i32 | |
%3:i32 = var | |
; (i32.sub(get_local $6)(get_local $2)) | |
%4 = sub %2, %3 | |
%5:i32 = var | |
; (i32.lt_u(get_local $40)(get_local $1)) | |
%6 = ult %4, %5 | |
blockpc %0 0 %6 1:i1 | |
%7:i32 = zext %6 | |
; (i32.eq(unreachable)(unreachable)) | |
%8 = eq %7, 0:i32 | |
blockpc %0 1 %8 1:i1 | |
; (i32.add(get_local $2)(get_local $1)) | |
%9 = add %3, %5 | |
%10 = phi %0, %9, %2 | |
; (i32.sub(get_local $3)(get_local $2)) | |
%11 = sub %10, %3 | |
; (i32.lt_u(get_local $52)(get_local $1)) | |
%12 = ult %11, %5 | |
%13:i32 = zext %12 | |
infer %13 | |
; RHS inferred successfully | |
result 0:i32 | |
----------------------------------------------------------- | |
; start LHS (in $_luaL_prepbuffsize) | |
%0 = block 2 | |
%1:i32 = var | |
; (i32.shl(get_local $6)(i32.const 1)) | |
%2 = shl %1, 1:i32 | |
%3:i32 = var | |
; (i32.sub(get_local $6)(get_local $2)) | |
%4 = sub %2, %3 | |
%5:i32 = var | |
; (i32.lt_u(get_local $40)(get_local $1)) | |
%6 = ult %4, %5 | |
blockpc %0 0 %6 1:i1 | |
%7:i32 = zext %6 | |
; (i32.eq(unreachable)(unreachable)) | |
%8 = eq %7, 0:i32 | |
blockpc %0 1 %8 1:i1 | |
; (i32.add(get_local $2)(get_local $1)) | |
%9 = add %3, %5 | |
%10 = phi %0, %9, %2 | |
; (i32.lt_u(get_local $46)(get_local $2)) | |
%11 = ult %10, %3 | |
%12:i32 = zext %11 | |
%13 = phi %0, %9, %2 | |
; (i32.sub(get_local $3)(get_local $2)) | |
%14 = sub %13, %3 | |
; (i32.lt_u(get_local $52)(get_local $1)) | |
%15 = ult %14, %5 | |
%16:i32 = zext %15 | |
; (i32.or(get_local $49)(get_local $54)) | |
%17 = or %12, %16 | |
infer %17 | |
; RHS inferred successfully | |
result %12 | |
----------------------------------------------------------- | |
; start LHS (in $_luaL_prepbuffsize) | |
%0 = block 2 | |
%1:i32 = var | |
; (i32.shl(get_local $6)(i32.const 1)) | |
%2 = shl %1, 1:i32 | |
%3:i32 = var | |
; (i32.sub(get_local $6)(get_local $2)) | |
%4 = sub %2, %3 | |
%5:i32 = var | |
; (i32.lt_u(get_local $40)(get_local $1)) | |
%6 = ult %4, %5 | |
blockpc %0 0 %6 1:i1 | |
%7:i32 = zext %6 | |
; (i32.eq(unreachable)(unreachable)) | |
%8 = eq %7, 0:i32 | |
blockpc %0 1 %8 1:i1 | |
; (i32.add(get_local $2)(get_local $1)) | |
%9 = add %3, %5 | |
%10 = phi %0, %9, %2 | |
; (i32.lt_u(get_local $46)(get_local $2)) | |
%11 = ult %10, %3 | |
%12:i32 = zext %11 | |
%13 = phi %0, %9, %2 | |
; (i32.sub(get_local $3)(get_local $2)) | |
%14 = sub %13, %3 | |
; (i32.lt_u(get_local $52)(get_local $1)) | |
%15 = ult %14, %5 | |
%16:i32 = zext %15 | |
; (i32.or(get_local $49)(get_local $54)) | |
%17 = or %12, %16 | |
; (i32.ne(unreachable)(unreachable)) | |
%18 = ne %17, 0:i32 | |
infer %18 | |
; RHS inferred successfully | |
result %11 | |
----------------------------------------------------------- | |
; start LHS (in $_luaK_exp2nextreg) | |
%0:i32 = var | |
; (i32.add(get_local $4)(i32.const 1)) | |
%1 = add %0, 1:i32 | |
; (i32.and(get_local $5)(i32.const 255)) | |
%2 = and %1, 255:i32 | |
; (i32.and(get_local $2)(i32.const 255)) | |
%3 = and %2, 255:i32 | |
%4:i32 = var | |
; (i32.lt_s(get_local $4)(get_local $37)) | |
%5 = slt %0, %4 | |
pc %5 1:i1 | |
infer %3 | |
; RHS inferred successfully | |
result %2 | |
----------------------------------------------------------- | |
; start LHS (in $_luaK_exp2nextreg) | |
%0:i32 = var | |
; (i32.add(get_local $4)(i32.const 1)) | |
%1 = add %0, 1:i32 | |
; (i32.and(get_local $5)(i32.const 255)) | |
%2 = and %1, 255:i32 | |
; (i32.and(get_local $2)(i32.const 255)) | |
%3 = and %2, 255:i32 | |
infer %3 | |
; RHS inferred successfully | |
result %2 | |
----------------------------------------------------------- | |
; start LHS (in $_luaD_call) | |
%0 = block 2 | |
%1:i32 = var | |
; (i32.add(get_local $13)(i32.const 1)) | |
%2 = add %1, 1:i32 | |
; (i32.shl(get_local $14)(i32.const 16)) | |
%3 = shl %2, 16:i32 | |
; (i32.shr_s(get_local $15)(i32.const 16)) | |
%4 = ashr %3, 16:i32 | |
; (i32.and(get_local $4)(i32.const 65535)) | |
%5 = and %4, 65535:i32 | |
; (i32.le_s(i32.const 199)(get_local $20)) | |
%6 = sle 199:i32, %5 | |
blockpc %0 0 %6 1:i1 | |
%7:i32 = zext %6 | |
; (i32.eq(unreachable)(unreachable)) | |
%8 = eq %7, 0:i32 | |
blockpc %0 1 %8 1:i1 | |
; (i32.eq(get_local $4)(i32.const 200)) | |
%9 = eq %4, 200:i32 | |
%10:i32 = zext %9 | |
%11 = phi %0, 0:i32, %10 | |
infer %11 | |
; RHS inferred successfully | |
result 0:i32 | |
----------------------------------------------------------- | |
; start LHS (in $_luaD_call) | |
%0 = block 2 | |
%1:i32 = var | |
; (i32.add(get_local $13)(i32.const 1)) | |
%2 = add %1, 1:i32 | |
; (i32.shl(get_local $14)(i32.const 16)) | |
%3 = shl %2, 16:i32 | |
; (i32.shr_s(get_local $15)(i32.const 16)) | |
%4 = ashr %3, 16:i32 | |
; (i32.and(get_local $4)(i32.const 65535)) | |
%5 = and %4, 65535:i32 | |
; (i32.le_s(i32.const 199)(get_local $20)) | |
%6 = sle 199:i32, %5 | |
blockpc %0 0 %6 1:i1 | |
%7:i32 = zext %6 | |
; (i32.eq(unreachable)(unreachable)) | |
%8 = eq %7, 0:i32 | |
blockpc %0 1 %8 1:i1 | |
; (i32.and(get_local $4)(i32.const 65535)) | |
%9 = and %4, 65535:i32 | |
; (i32.le_s(i32.const 224)(get_local $27)) | |
%10 = sle 224:i32, %9 | |
%11:i32 = zext %10 | |
%12 = phi %0, 0:i32, %11 | |
infer %12 | |
; RHS inferred successfully | |
result 0:i32 | |
----------------------------------------------------------- | |
; start LHS (in $_luaD_call) | |
%0:i32 = var | |
; (i32.ne(get_local $3)(i32.const 0)) | |
%1 = ne %0, 0:i32 | |
%2:i32 = zext %1 | |
; (i32.eq(unreachable)(unreachable)) | |
%3 = eq %2, 0:i32 | |
%4:i32 = zext %3 | |
; (i32.eq(unreachable)(unreachable)) | |
%5 = eq %4, 0:i32 | |
infer %5 | |
; RHS inferred successfully | |
result %1 | |
----------------------------------------------------------- | |
; start LHS (in $_match) | |
%0:i32 = var | |
; (i32.eq(get_local $204)(i32.const 94)) | |
%1 = eq %0, 94:i32 | |
%2:i32 = zext %1 | |
; (i32.eq(unreachable)(unreachable)) | |
%3 = eq %2, 0:i32 | |
%4:i32 = zext %3 | |
; (i32.eq(unreachable)(unreachable)) | |
%5 = eq %4, 0:i32 | |
infer %5 | |
; RHS inferred successfully | |
result %1 | |
----------------------------------------------------------- | |
; start LHS (in $_match) | |
%0:i32 = var | |
; (i32.eq(get_local $204)(i32.const 94)) | |
%1 = eq %0, 94:i32 | |
%2:i32 = zext %1 | |
; (i32.xor(get_local $2)(i32.const 1)) | |
%3 = xor %2, 1:i32 | |
; (i32.and(get_local $210)(i32.const 1)) | |
%4 = and %3, 1:i32 | |
infer %4 | |
; RHS inferred successfully | |
result %3 | |
----------------------------------------------------------- | |
; start LHS (in $_match) | |
%0:i32 = var | |
; (i32.eq(get_local $204)(i32.const 94)) | |
%1 = eq %0, 94:i32 | |
%2:i32 = zext %1 | |
; (i32.xor(get_local $2)(i32.const 1)) | |
%3 = xor %2, 1:i32 | |
; (i32.and(get_local $210)(i32.const 1)) | |
%4 = and %3, 1:i32 | |
; (i32.xor(get_local $2)(i32.const 1)) | |
%5 = xor %4, 1:i32 | |
infer %5 | |
; RHS inferred successfully | |
result %2 | |
----------------------------------------------------------- | |
; start LHS (in $_match) | |
%0:i32 = var | |
; (i32.eq(get_local $394)(i32.const 94)) | |
%1 = eq %0, 94:i32 | |
%2:i32 = zext %1 | |
; (i32.xor(get_local $2)(i32.const 1)) | |
%3 = xor %2, 1:i32 | |
; (i32.and(get_local $402)(i32.const 1)) | |
%4 = and %3, 1:i32 | |
%5:i32 = var | |
%6:i32 = var | |
; (i32.le_u(get_local $1)(get_local $24)) | |
%7 = ule %5, %6 | |
pc %7 1:i1 | |
infer %4 | |
; RHS inferred successfully | |
result %3 | |
----------------------------------------------------------- | |
; start LHS (in $_match) | |
%0:i32 = var | |
; (i32.eq(get_local $394)(i32.const 94)) | |
%1 = eq %0, 94:i32 | |
%2:i32 = zext %1 | |
; (i32.xor(get_local $2)(i32.const 1)) | |
%3 = xor %2, 1:i32 | |
; (i32.and(get_local $402)(i32.const 1)) | |
%4 = and %3, 1:i32 | |
; (i32.xor(get_local $3)(i32.const 1)) | |
%5 = xor %4, 1:i32 | |
%6:i32 = var | |
%7:i32 = var | |
; (i32.le_u(get_local $1)(get_local $24)) | |
%8 = ule %6, %7 | |
pc %8 1:i1 | |
infer %5 | |
; RHS inferred successfully | |
result %2 | |
----------------------------------------------------------- | |
; start LHS (in $_scalbn) | |
%0:i32 = var | |
; (i32.le_s(i32.const 2046)(get_local $1)) | |
%1 = sle 2046:i32, %0 | |
%2:i32 = zext %1 | |
; (i32.eq(unreachable)(unreachable)) | |
%3 = eq %2, 0:i32 | |
%4:i32 = zext %3 | |
; (i32.eq(unreachable)(unreachable)) | |
%5 = eq %4, 0:i32 | |
infer %5 | |
; RHS inferred successfully | |
result %1 | |
----------------------------------------------------------- | |
; start LHS (in $_scalbn) | |
%0:i32 = var | |
; (i32.le_s(i32.const 2046)(get_local $1)) | |
%1 = sle 2046:i32, %0 | |
%2:i32 = zext %1 | |
; (i32.eq(unreachable)(unreachable)) | |
%3 = eq %2, 0:i32 | |
%4:i32 = zext %3 | |
; (i32.eq(unreachable)(unreachable)) | |
%5 = eq %4, 0:i32 | |
infer %5 | |
; RHS inferred successfully | |
result %1 | |
----------------------------------------------------------- | |
; start LHS (in $_scalbn) | |
%0:i32 = var | |
; (i32.lt_s(get_local $1)(i32.const -2044)) | |
%1 = slt %0, -2044:i32 | |
%2:i32 = zext %1 | |
; (i32.eq(unreachable)(unreachable)) | |
%3 = eq %2, 0:i32 | |
%4:i32 = zext %3 | |
; (i32.eq(unreachable)(unreachable)) | |
%5 = eq %4, 0:i32 | |
infer %5 | |
; RHS inferred successfully | |
result %1 | |
----------------------------------------------------------- | |
; start LHS (in $_scalbn) | |
%0:i32 = var | |
; (i32.lt_s(get_local $1)(i32.const -2044)) | |
%1 = slt %0, -2044:i32 | |
%2:i32 = zext %1 | |
; (i32.eq(unreachable)(unreachable)) | |
%3 = eq %2, 0:i32 | |
%4:i32 = zext %3 | |
; (i32.eq(unreachable)(unreachable)) | |
%5 = eq %4, 0:i32 | |
infer %5 | |
; RHS inferred successfully | |
result %1 | |
----------------------------------------------------------- | |
; start LHS (in $_scalbn) | |
%0 = block 2 | |
%1:i32 = var | |
; (i32.lt_s(get_local $1)(i32.const -1022)) | |
%2 = slt %1, -1022:i32 | |
blockpc %0 0 %2 1:i1 | |
%3:i32 = zext %2 | |
; (i32.eq(unreachable)(unreachable)) | |
%4 = eq %3, 0:i32 | |
blockpc %0 1 %4 1:i1 | |
; (i32.lt_s(get_local $1)(i32.const -2044)) | |
%5 = slt %1, -2044:i32 | |
%6:i32 = zext %5 | |
%7 = phi %0, 0:i32, %6 | |
infer %7 | |
; RHS inferred successfully | |
result 0:i32 | |
----------------------------------------------------------- | |
; start LHS (in $_scalbn) | |
%0 = block 2 | |
%1:i32 = var | |
; (i32.le_s(i32.const 1023)(get_local $1)) | |
%2 = sle 1023:i32, %1 | |
blockpc %0 0 %2 1:i1 | |
%3:i32 = zext %2 | |
; (i32.eq(unreachable)(unreachable)) | |
%4 = eq %3, 0:i32 | |
blockpc %0 1 %4 1:i1 | |
%5 = block 2 | |
; (i32.lt_s(get_local $1)(i32.const -1022)) | |
%6 = slt %1, -1022:i32 | |
blockpc %5 0 %6 1:i1 | |
%7:i32 = zext %6 | |
; (i32.eq(unreachable)(unreachable)) | |
%8 = eq %7, 0:i32 | |
blockpc %5 1 %8 1:i1 | |
; (i32.add(get_local $1)(i32.const 2044)) | |
%9 = add %1, 2044:i32 | |
; (i32.le_s(get_local $1)(i32.const -1022)) | |
%10 = sle %9, -1022:i32 | |
%11:i32 = zext %10 | |
%12 = phi %5, 0:i32, %11 | |
%13 = phi %0, 0:i32, %12 | |
infer %13 | |
; RHS inferred successfully | |
result 0:i32 | |
----------------------------------------------------------- | |
; start LHS (in $_memset) | |
%0:i32 = var | |
%1:i32 = var | |
; (i32.add(get_local $0)(get_local $2)) | |
%2 = add %0, %1 | |
; (i32.sub(get_local $4)(get_local $2)) | |
%3 = sub %2, %1 | |
infer %3 | |
; RHS inferred successfully | |
result %0 | |
----------------------------------------------------------- | |
; start LHS (in $_malloc) | |
%0 = block 2 | |
%1:i32 = var | |
; (i32.lt_u(get_local $0)(i32.const 11)) | |
%2 = ult %1, 11:i32 | |
blockpc %0 0 %2 1:i1 | |
%3:i32 = zext %2 | |
; (i32.eq(unreachable)(unreachable)) | |
%4 = eq %3, 0:i32 | |
blockpc %0 1 %4 1:i1 | |
; (i32.add(get_local $0)(i32.const 11)) | |
%5 = add %1, 11:i32 | |
; (i32.and(get_local $20)(i32.const -8)) | |
%6 = and %5, -8:i32 | |
%7 = phi %0, 16:i32, %6 | |
; (i32.shr_u(get_local $28)(i32.const 3)) | |
%8 = lshr %7, 3:i32 | |
; (i32.shl(i32.const 2)(get_local $0)) | |
%9 = shl 2:i32, %8 | |
; (i32.sub(i32.const 0)(get_local $0)) | |
%10 = sub 0:i32, %9 | |
; (i32.or(get_local $0)(get_local $90)) | |
%11 = or %9, %10 | |
%12:i32 = var | |
; (i32.shr_u(get_local $23)(get_local $0)) | |
%13 = lshr %12, %8 | |
; (i32.ne(unreachable)(unreachable)) | |
%14 = ne %13, 0:i32 | |
%15:i32 = var | |
%16 = phi %0, 16:i32, %6 | |
; (i32.le_u(get_local $8)(get_local $2)) | |
%17 = ule %15, %16 | |
; (i32.lt_u(get_local $0)(i32.const 245)) | |
%18 = ult %1, 245:i32 | |
pc %14 1:i1 | |
pc %17 1:i1 | |
pc %18 1:i1 | |
infer %11 | |
; RHS inferred successfully | |
result %10 | |
----------------------------------------------------------- | |
; start LHS (in $_malloc) | |
%0:i32 = var | |
; (i32.or(get_local $3)(get_local $0)) | |
%1 = or %0, %0 | |
; (i32.and(get_local $114)(i32.const 4)) | |
%2 = and %0, 4:i32 | |
; (i32.or(get_local $109)(get_local $1)) | |
%3 = or %1, %2 | |
; (i32.shr_u(get_local $0)(i32.const 1)) | |
%4 = lshr %0, 1:i32 | |
; (i32.and(get_local $122)(i32.const 2)) | |
%5 = and %4, 2:i32 | |
; (i32.or(get_local $117)(get_local $1)) | |
%6 = or %3, %5 | |
; (i32.shr_u(get_local $0)(get_local $1)) | |
%7 = lshr %0, %5 | |
; (i32.shr_u(get_local $0)(i32.const 1)) | |
%8 = lshr %7, 1:i32 | |
; (i32.and(get_local $130)(i32.const 1)) | |
%9 = and %8, 1:i32 | |
; (i32.or(get_local $125)(get_local $1)) | |
%10 = or %6, %9 | |
; (i32.shr_u(get_local $0)(get_local $1)) | |
%11 = lshr %7, %9 | |
; (i32.add(get_local $133)(get_local $136)) | |
%12 = add %10, %11 | |
; (i32.shl(get_local $3)(i32.const 3)) | |
%13 = shl %12, 3:i32 | |
; (i32.add(get_local $139)(i32.const 15588)) | |
%14 = add %13, 15588:i32 | |
; (i32.eq(get_local $5)(get_local $0)) | |
%15 = eq %0, %14 | |
%16:i32 = zext %15 | |
infer %16 | |
; RHS inferred successfully | |
result 0:i32 | |
----------------------------------------------------------- | |
; start LHS (in $_malloc) | |
%0 = block 2 | |
%1:i32 = var | |
; (i32.ne(unreachable)(unreachable)) | |
%2 = ne %1, 0:i32 | |
blockpc %0 0 %2 1:i1 | |
; (i32.eq(unreachable)(unreachable)) | |
%3 = eq %1, 0:i32 | |
blockpc %0 1 %3 1:i1 | |
; (i32.shr_u(get_local $8)(i32.const 3)) | |
%4 = lshr %1, 3:i32 | |
; (i32.shl(get_local $2)(i32.const 3)) | |
%5 = shl %4, 3:i32 | |
%6 = phi %0, 0:i32, %5 | |
infer %6 | |
; RHS inferred successfully | |
result 0:i32 | |
----------------------------------------------------------- | |
; start LHS (in $_malloc) | |
%0 = block 2 | |
%1:i32 = var | |
; (i32.ne(unreachable)(unreachable)) | |
%2 = ne %1, 0:i32 | |
blockpc %0 0 %2 1:i1 | |
; (i32.eq(unreachable)(unreachable)) | |
%3 = eq %1, 0:i32 | |
blockpc %0 1 %3 1:i1 | |
; (i32.shr_u(get_local $8)(i32.const 3)) | |
%4 = lshr %1, 3:i32 | |
; (i32.shl(get_local $1)(i32.const 3)) | |
%5 = shl %4, 3:i32 | |
%6 = phi %0, 0:i32, %5 | |
infer %6 | |
; RHS inferred successfully | |
result 0:i32 | |
----------------------------------------------------------- | |
; start LHS (in $_propagatemark) | |
%0:i32 = var | |
; (i32.and(get_local $102)(i32.const 64)) | |
%1 = and %0, 64:i32 | |
; (i32.eq(unreachable)(unreachable)) | |
%2 = eq %1, 0:i32 | |
%3:i32 = zext %2 | |
; (i32.eq(unreachable)(unreachable)) | |
%4 = eq %3, 0:i32 | |
%5:i32 = zext %4 | |
; (i32.eq(unreachable)(unreachable)) | |
%6 = eq %5, 0:i32 | |
infer %6 | |
; RHS inferred successfully | |
result %2 | |
----------------------------------------------------------- | |
; start LHS (in $_propagatemark) | |
%0:i32 = var | |
; (i32.and(get_local $102)(i32.const 64)) | |
%1 = and %0, 64:i32 | |
; (i32.eq(unreachable)(unreachable)) | |
%2 = eq %1, 0:i32 | |
%3:i32 = zext %2 | |
; (i32.eq(unreachable)(unreachable)) | |
%4 = eq %3, 0:i32 | |
%5:i32 = zext %4 | |
; (i32.eq(unreachable)(unreachable)) | |
%6 = eq %5, 0:i32 | |
infer %6 | |
; RHS inferred successfully | |
result %2 | |
----------------------------------------------------------- | |
; start LHS (in $_propagatemark) | |
%0:i32 = var | |
; (i32.and(get_local $224)(i32.const 64)) | |
%1 = and %0, 64:i32 | |
; (i32.eq(unreachable)(unreachable)) | |
%2 = eq %1, 0:i32 | |
%3:i32 = zext %2 | |
; (i32.eq(unreachable)(unreachable)) | |
%4 = eq %3, 0:i32 | |
%5:i32 = zext %4 | |
; (i32.eq(unreachable)(unreachable)) | |
%6 = eq %5, 0:i32 | |
infer %6 | |
; RHS inferred successfully | |
result %2 | |
----------------------------------------------------------- | |
; start LHS (in $_propagatemark) | |
%0:i32 = var | |
; (i32.and(get_local $224)(i32.const 64)) | |
%1 = and %0, 64:i32 | |
; (i32.eq(unreachable)(unreachable)) | |
%2 = eq %1, 0:i32 | |
%3:i32 = zext %2 | |
; (i32.eq(unreachable)(unreachable)) | |
%4 = eq %3, 0:i32 | |
%5:i32 = zext %4 | |
; (i32.eq(unreachable)(unreachable)) | |
%6 = eq %5, 0:i32 | |
infer %6 | |
; RHS inferred successfully | |
result %2 | |
----------------------------------------------------------- | |
; start LHS (in $_match_class) | |
%0:i32 = var | |
; (i32.add(get_local $0)(i32.const -48)) | |
%1 = add %0, -48:i32 | |
; (i32.lt_u(get_local $39)(i32.const 10)) | |
%2 = ult %1, 10:i32 | |
%3:i32 = zext %2 | |
; (i32.ne(get_local $40)(i32.const 0)) | |
%4 = ne %3, 0:i32 | |
; (i32.or(get_local $0)(i32.const 32)) | |
%5 = or %0, 32:i32 | |
; (i32.add(get_local $35)(i32.const -97)) | |
%6 = add %5, -97:i32 | |
; (i32.lt_u(get_local $36)(i32.const 26)) | |
%7 = ult %6, 26:i32 | |
%8:i32 = zext %7 | |
; (i32.eq(unreachable)(unreachable)) | |
%9 = eq %8, 0:i32 | |
; (i32.add(get_local $0)(i32.const -33)) | |
%10 = add %0, -33:i32 | |
; (i32.lt_u(get_local $32)(i32.const 94)) | |
%11 = ult %10, 94:i32 | |
pc %9 1:i1 | |
pc %11 1:i1 | |
infer %4 | |
; RHS inferred successfully | |
result %2 | |
----------------------------------------------------------- | |
; start LHS (in $_match_class) | |
%0:i32 = var | |
; (i32.add(get_local $0)(i32.const -48)) | |
%1 = add %0, -48:i32 | |
; (i32.lt_u(get_local $39)(i32.const 10)) | |
%2 = ult %1, 10:i32 | |
%3:i32 = zext %2 | |
; (i32.ne(get_local $40)(i32.const 0)) | |
%4 = ne %3, 0:i32 | |
%5:i32 = zext %4 | |
infer %5 | |
; RHS inferred successfully | |
result %3 | |
----------------------------------------------------------- | |
; start LHS (in $_match_class) | |
%0:i32 = var | |
; (i32.add(get_local $0)(i32.const -48)) | |
%1 = add %0, -48:i32 | |
; (i32.lt_u(get_local $61)(i32.const 10)) | |
%2 = ult %1, 10:i32 | |
%3:i32 = zext %2 | |
; (i32.ne(get_local $62)(i32.const 0)) | |
%4 = ne %3, 0:i32 | |
; (i32.or(get_local $0)(i32.const 32)) | |
%5 = or %0, 32:i32 | |
; (i32.add(get_local $57)(i32.const -97)) | |
%6 = add %5, -97:i32 | |
; (i32.lt_u(get_local $58)(i32.const 26)) | |
%7 = ult %6, 26:i32 | |
%8:i32 = zext %7 | |
; (i32.eq(unreachable)(unreachable)) | |
%9 = eq %8, 0:i32 | |
pc %9 1:i1 | |
infer %4 | |
; RHS inferred successfully | |
result %2 | |
----------------------------------------------------------- | |
; start LHS (in $_match_class) | |
%0:i32 = var | |
; (i32.add(get_local $0)(i32.const -48)) | |
%1 = add %0, -48:i32 | |
; (i32.lt_u(get_local $61)(i32.const 10)) | |
%2 = ult %1, 10:i32 | |
%3:i32 = zext %2 | |
; (i32.ne(get_local $62)(i32.const 0)) | |
%4 = ne %3, 0:i32 | |
%5:i32 = zext %4 | |
infer %5 | |
; RHS inferred successfully | |
result %3 | |
----------------------------------------------------------- | |
; start LHS (in $_match_class) | |
%0:i32 = var | |
; (i32.add(get_local $0)(i32.const -48)) | |
%1 = add %0, -48:i32 | |
; (i32.lt_u(get_local $71)(i32.const 10)) | |
%2 = ult %1, 10:i32 | |
%3:i32 = zext %2 | |
; (i32.ne(get_local $72)(i32.const 0)) | |
%4 = ne %3, 0:i32 | |
infer %4 | |
; RHS inferred successfully | |
result %2 | |
----------------------------------------------------------- | |
; start LHS (in $_match_class) | |
%0:i32 = var | |
; (i32.add(get_local $0)(i32.const -48)) | |
%1 = add %0, -48:i32 | |
; (i32.lt_u(get_local $71)(i32.const 10)) | |
%2 = ult %1, 10:i32 | |
%3:i32 = zext %2 | |
; (i32.ne(get_local $72)(i32.const 0)) | |
%4 = ne %3, 0:i32 | |
%5:i32 = zext %4 | |
infer %5 | |
; RHS inferred successfully | |
result %3 | |
----------------------------------------------------------- | |
; start LHS (in $_match_class) | |
%0:i32 = var | |
; (i32.add(get_local $0)(i32.const -48)) | |
%1 = add %0, -48:i32 | |
; (i32.lt_u(get_local $71)(i32.const 10)) | |
%2 = ult %1, 10:i32 | |
%3:i32 = zext %2 | |
; (i32.ne(get_local $72)(i32.const 0)) | |
%4 = ne %3, 0:i32 | |
%5:i32 = zext %4 | |
infer %5 | |
; RHS inferred successfully | |
result %3 | |
----------------------------------------------------------- | |
; start LHS (in $_sbrk) | |
%0:i32 = var | |
; (i32.le_s(i32.const 0)(get_local $0)) | |
%1 = sle 0:i32, %0 | |
%2:i32 = zext %1 | |
%3:i32 = var | |
; (i32.add(get_local $1)(get_local $0)) | |
%4 = add %3, %0 | |
; (i32.lt_s(get_local $0)(get_local $1)) | |
%5 = slt %4, %3 | |
%6:i32 = zext %5 | |
; (i32.and(get_local $3)(get_local $11)) | |
%7 = and %2, %6 | |
; (i32.lt_s(get_local $0)(i32.const 0)) | |
%8 = slt %4, 0:i32 | |
%9:i32 = zext %8 | |
; (i32.or(get_local $12)(get_local $14)) | |
%10 = or %7, %9 | |
infer %10 | |
; RHS inferred successfully | |
result %9 | |
----------------------------------------------------------- | |
; start LHS (in $_sbrk) | |
%0:i32 = var | |
; (i32.le_s(i32.const 0)(get_local $0)) | |
%1 = sle 0:i32, %0 | |
%2:i32 = zext %1 | |
%3:i32 = var | |
; (i32.add(get_local $1)(get_local $0)) | |
%4 = add %3, %0 | |
; (i32.lt_s(get_local $0)(get_local $1)) | |
%5 = slt %4, %3 | |
%6:i32 = zext %5 | |
; (i32.and(get_local $3)(get_local $11)) | |
%7 = and %2, %6 | |
; (i32.lt_s(get_local $0)(i32.const 0)) | |
%8 = slt %4, 0:i32 | |
%9:i32 = zext %8 | |
; (i32.or(get_local $12)(get_local $14)) | |
%10 = or %7, %9 | |
; (i32.ne(unreachable)(unreachable)) | |
%11 = ne %10, 0:i32 | |
infer %11 | |
; RHS inferred successfully | |
result %8 | |
----------------------------------------------------------- | |
; start LHS (in $_luaL_addvalue) | |
%0 = block 2 | |
%1:i32 = var | |
; (i32.shl(get_local $1)(i32.const 1)) | |
%2 = shl %1, 1:i32 | |
%3:i32 = var | |
; (i32.sub(get_local $1)(get_local $3)) | |
%4 = sub %2, %3 | |
%5:i32 = var | |
; (i32.lt_u(get_local $55)(get_local $4)) | |
%6 = ult %4, %5 | |
blockpc %0 0 %6 1:i1 | |
%7:i32 = zext %6 | |
; (i32.eq(unreachable)(unreachable)) | |
%8 = eq %7, 0:i32 | |
blockpc %0 1 %8 1:i1 | |
; (i32.add(get_local $3)(get_local $4)) | |
%9 = add %3, %5 | |
%10 = phi %0, %9, %2 | |
; (i32.sub(get_local $2)(get_local $3)) | |
%11 = sub %10, %3 | |
; (i32.lt_u(get_local $67)(get_local $4)) | |
%12 = ult %11, %5 | |
; (i32.sub(get_local $1)(get_local $3)) | |
%13 = sub %1, %3 | |
; (i32.lt_u(get_local $43)(get_local $4)) | |
%14 = ult %13, %5 | |
pc %14 1:i1 | |
infer %12 | |
; RHS inferred successfully | |
result 0:i1 | |
----------------------------------------------------------- | |
; start LHS (in $_luaL_addvalue) | |
%0 = block 2 | |
%1:i32 = var | |
; (i32.shl(get_local $1)(i32.const 1)) | |
%2 = shl %1, 1:i32 | |
%3:i32 = var | |
; (i32.sub(get_local $1)(get_local $3)) | |
%4 = sub %2, %3 | |
%5:i32 = var | |
; (i32.lt_u(get_local $55)(get_local $4)) | |
%6 = ult %4, %5 | |
blockpc %0 0 %6 1:i1 | |
%7:i32 = zext %6 | |
; (i32.eq(unreachable)(unreachable)) | |
%8 = eq %7, 0:i32 | |
blockpc %0 1 %8 1:i1 | |
; (i32.add(get_local $3)(get_local $4)) | |
%9 = add %3, %5 | |
%10 = phi %0, %9, %2 | |
; (i32.sub(get_local $2)(get_local $3)) | |
%11 = sub %10, %3 | |
; (i32.lt_u(get_local $67)(get_local $4)) | |
%12 = ult %11, %5 | |
%13:i32 = zext %12 | |
infer %13 | |
; RHS inferred successfully | |
result 0:i32 | |
----------------------------------------------------------- | |
; start LHS (in $_luaL_addvalue) | |
%0 = block 2 | |
%1:i32 = var | |
; (i32.shl(get_local $1)(i32.const 1)) | |
%2 = shl %1, 1:i32 | |
%3:i32 = var | |
; (i32.sub(get_local $1)(get_local $3)) | |
%4 = sub %2, %3 | |
%5:i32 = var | |
; (i32.lt_u(get_local $55)(get_local $4)) | |
%6 = ult %4, %5 | |
blockpc %0 0 %6 1:i1 | |
%7:i32 = zext %6 | |
; (i32.eq(unreachable)(unreachable)) | |
%8 = eq %7, 0:i32 | |
blockpc %0 1 %8 1:i1 | |
; (i32.add(get_local $3)(get_local $4)) | |
%9 = add %3, %5 | |
%10 = phi %0, %9, %2 | |
; (i32.lt_u(get_local $61)(get_local $3)) | |
%11 = ult %10, %3 | |
%12:i32 = zext %11 | |
%13 = phi %0, %9, %2 | |
; (i32.sub(get_local $2)(get_local $3)) | |
%14 = sub %13, %3 | |
; (i32.lt_u(get_local $67)(get_local $4)) | |
%15 = ult %14, %5 | |
%16:i32 = zext %15 | |
; (i32.or(get_local $64)(get_local $69)) | |
%17 = or %12, %16 | |
; (i32.sub(get_local $1)(get_local $3)) | |
%18 = sub %1, %3 | |
; (i32.lt_u(get_local $43)(get_local $4)) | |
%19 = ult %18, %5 | |
pc %19 1:i1 | |
infer %17 | |
; RHS inferred successfully | |
result %12 | |
----------------------------------------------------------- | |
; start LHS (in $_luaL_addvalue) | |
%0 = block 2 | |
%1:i32 = var | |
; (i32.shl(get_local $1)(i32.const 1)) | |
%2 = shl %1, 1:i32 | |
%3:i32 = var | |
; (i32.sub(get_local $1)(get_local $3)) | |
%4 = sub %2, %3 | |
%5:i32 = var | |
; (i32.lt_u(get_local $55)(get_local $4)) | |
%6 = ult %4, %5 | |
blockpc %0 0 %6 1:i1 | |
%7:i32 = zext %6 | |
; (i32.eq(unreachable)(unreachable)) | |
%8 = eq %7, 0:i32 | |
blockpc %0 1 %8 1:i1 | |
; (i32.add(get_local $3)(get_local $4)) | |
%9 = add %3, %5 | |
%10 = phi %0, %9, %2 | |
; (i32.lt_u(get_local $61)(get_local $3)) | |
%11 = ult %10, %3 | |
%12:i32 = zext %11 | |
%13 = phi %0, %9, %2 | |
; (i32.sub(get_local $2)(get_local $3)) | |
%14 = sub %13, %3 | |
; (i32.lt_u(get_local $67)(get_local $4)) | |
%15 = ult %14, %5 | |
%16:i32 = zext %15 | |
; (i32.or(get_local $64)(get_local $69)) | |
%17 = or %12, %16 | |
; (i32.ne(unreachable)(unreachable)) | |
%18 = ne %17, 0:i32 | |
infer %18 | |
; RHS inferred successfully | |
result %11 | |
----------------------------------------------------------- | |
; start LHS (in $_luaL_addvalue) | |
%0 = block 2 | |
%1:i32 = var | |
%2:i32 = var | |
; (i32.sub(get_local $1)(get_local $3)) | |
%3 = sub %1, %2 | |
%4:i32 = var | |
; (i32.lt_u(get_local $43)(get_local $4)) | |
%5 = ult %3, %4 | |
blockpc %0 0 %5 1:i1 | |
%6:i32 = zext %5 | |
; (i32.eq(unreachable)(unreachable)) | |
%7 = eq %6, 0:i32 | |
blockpc %0 1 %7 1:i1 | |
%8 = block 2 | |
; (i32.shl(get_local $1)(i32.const 1)) | |
%9 = shl %1, 1:i32 | |
; (i32.sub(get_local $1)(get_local $3)) | |
%10 = sub %9, %2 | |
; (i32.lt_u(get_local $55)(get_local $4)) | |
%11 = ult %10, %4 | |
blockpc %8 0 %11 1:i1 | |
%12:i32 = zext %11 | |
; (i32.eq(unreachable)(unreachable)) | |
%13 = eq %12, 0:i32 | |
blockpc %8 1 %13 1:i1 | |
; (i32.add(get_local $3)(get_local $4)) | |
%14 = add %2, %4 | |
%15 = phi %8, %14, %9 | |
; (i32.sub(get_local $2)(get_local $3)) | |
%16 = sub %15, %2 | |
; (i32.lt_u(get_local $67)(get_local $4)) | |
%17 = ult %16, %4 | |
%18:i32 = zext %17 | |
%19 = phi %0, %18, 0:i32 | |
infer %19 | |
; RHS inferred successfully | |
result 0:i32 | |
----------------------------------------------------------- | |
; start LHS (in $_luaL_addvalue) | |
%0 = block 2 | |
%1:i32 = var | |
; (i32.shl(get_local $1)(i32.const 1)) | |
%2 = shl %1, 1:i32 | |
%3:i32 = var | |
; (i32.sub(get_local $1)(get_local $3)) | |
%4 = sub %2, %3 | |
%5:i32 = var | |
; (i32.lt_u(get_local $55)(get_local $4)) | |
%6 = ult %4, %5 | |
blockpc %0 0 %6 1:i1 | |
%7:i32 = zext %6 | |
; (i32.eq(unreachable)(unreachable)) | |
%8 = eq %7, 0:i32 | |
blockpc %0 1 %8 1:i1 | |
; (i32.add(get_local $3)(get_local $4)) | |
%9 = add %3, %5 | |
%10 = phi %0, %9, %2 | |
; (i32.sub(get_local $2)(get_local $3)) | |
%11 = sub %10, %3 | |
; (i32.lt_u(get_local $67)(get_local $4)) | |
%12 = ult %11, %5 | |
%13:i32 = zext %12 | |
infer %13 | |
; RHS inferred successfully | |
result 0:i32 | |
----------------------------------------------------------- | |
; start LHS (in $_luaS_eqstr) | |
%0 = block 2 | |
%1:i32 = var | |
; (i32.eq(get_local $2)(i32.const 4)) | |
%2 = eq %1, 4:i32 | |
blockpc %0 0 %2 1:i1 | |
%3:i32 = zext %2 | |
; (i32.eq(unreachable)(unreachable)) | |
%4 = eq %3, 0:i32 | |
blockpc %0 1 %4 1:i1 | |
%5:i32 = var | |
%6:i32 = var | |
; (i32.eq(get_local $0)(get_local $1)) | |
%7 = eq %5, %6 | |
%8:i32 = zext %7 | |
%9 = block 2 | |
; (i32.eq(get_local $0)(get_local $1)) | |
%10 = eq %5, %6 | |
blockpc %9 0 %10 1:i1 | |
%11:i32 = zext %10 | |
; (i32.eq(unreachable)(unreachable)) | |
%12 = eq %11, 0:i32 | |
blockpc %9 1 %12 1:i1 | |
%13 = block 2 | |
%14:i32 = var | |
%15:i32 = var | |
; (i32.eq(get_local $2)(get_local $21)) | |
%16 = eq %14, %15 | |
blockpc %13 0 %16 1:i1 | |
%17:i32 = zext %16 | |
; (i32.eq(unreachable)(unreachable)) | |
%18 = eq %17, 0:i32 | |
blockpc %13 1 %18 1:i1 | |
%19:i32 = var | |
; (i32.eq(unreachable)(unreachable)) | |
%20 = eq %19, 0:i32 | |
%21:i32 = zext %20 | |
%22 = phi %13, %21, 0:i32 | |
%23 = phi %9, 1:i32, %22 | |
%24 = phi %0, %8, %23 | |
; (i32.and(get_local $36)(i32.const 1)) | |
%25 = and %24, 1:i32 | |
infer %25 | |
; RHS inferred successfully | |
result %24 | |
----------------------------------------------------------- | |
; start LHS (in $_fopen) | |
%0 = block 2 | |
%1:i32 = var | |
; (i32.eq(unreachable)(unreachable)) | |
%2 = eq %1, 0:i32 | |
blockpc %0 0 %2 1:i1 | |
%3:i32 = zext %2 | |
; (i32.eq(unreachable)(unreachable)) | |
%4 = eq %3, 0:i32 | |
blockpc %0 1 %4 1:i1 | |
%5 = phi %0, %1, 0:i32 | |
infer %5 | |
; RHS inferred successfully | |
result 0:i32 | |
----------------------------------------------------------- | |
; start LHS (in $_fopen) | |
%0 = block 2 | |
%1 = block 2 | |
%2:i32 = var | |
; (i32.le_u(i32.const -4096)(get_local $3)) | |
%3 = ule -4096:i32, %2 | |
blockpc %1 0 %3 1:i1 | |
%4:i32 = zext %3 | |
; (i32.eq(unreachable)(unreachable)) | |
%5 = eq %4, 0:i32 | |
blockpc %1 1 %5 1:i1 | |
%6 = phi %1, -1:i32, %2 | |
; (i32.lt_s(get_local $35)(i32.const 0)) | |
%7 = slt %6, 0:i32 | |
blockpc %0 0 %7 1:i1 | |
%8:i32 = zext %7 | |
; (i32.eq(unreachable)(unreachable)) | |
%9 = eq %8, 0:i32 | |
blockpc %0 1 %9 1:i1 | |
%10 = block 2 | |
%11:i32 = var | |
; (i32.eq(unreachable)(unreachable)) | |
%12 = eq %11, 0:i32 | |
blockpc %10 0 %12 1:i1 | |
%13:i32 = zext %12 | |
; (i32.eq(unreachable)(unreachable)) | |
%14 = eq %13, 0:i32 | |
blockpc %10 1 %14 1:i1 | |
%15 = phi %10, %11, 0:i32 | |
%16 = phi %0, 0:i32, %15 | |
infer %16 | |
; RHS inferred successfully | |
result 0:i32 | |
----------------------------------------------------------- | |
; start LHS (in $_fopen) | |
%0 = block 2 | |
%1:i32 = var | |
; (i32.ne(unreachable)(unreachable)) | |
%2 = ne %1, 0:i32 | |
blockpc %0 0 %2 1:i1 | |
; (i32.eq(unreachable)(unreachable)) | |
%3 = eq %1, 0:i32 | |
blockpc %0 1 %3 1:i1 | |
%4 = block 2 | |
%5 = block 2 | |
%6:i32 = var | |
; (i32.le_u(i32.const -4096)(get_local $3)) | |
%7 = ule -4096:i32, %6 | |
blockpc %5 0 %7 1:i1 | |
%8:i32 = zext %7 | |
; (i32.eq(unreachable)(unreachable)) | |
%9 = eq %8, 0:i32 | |
blockpc %5 1 %9 1:i1 | |
%10 = phi %5, -1:i32, %6 | |
; (i32.lt_s(get_local $35)(i32.const 0)) | |
%11 = slt %10, 0:i32 | |
blockpc %4 0 %11 1:i1 | |
%12:i32 = zext %11 | |
; (i32.eq(unreachable)(unreachable)) | |
%13 = eq %12, 0:i32 | |
blockpc %4 1 %13 1:i1 | |
%14 = block 2 | |
%15:i32 = var | |
; (i32.eq(unreachable)(unreachable)) | |
%16 = eq %15, 0:i32 | |
blockpc %14 0 %16 1:i1 | |
%17:i32 = zext %16 | |
; (i32.eq(unreachable)(unreachable)) | |
%18 = eq %17, 0:i32 | |
blockpc %14 1 %18 1:i1 | |
%19 = phi %14, %15, 0:i32 | |
%20 = phi %4, 0:i32, %19 | |
%21 = phi %0, %20, 0:i32 | |
infer %21 | |
; RHS inferred successfully | |
result 0:i32 | |
----------------------------------------------------------- | |
; start LHS (in $_fclose) | |
%0:i32 = var | |
; (i32.and(get_local $9)(i32.const 1)) | |
%1 = and %0, 1:i32 | |
; (i32.ne(get_local $10)(i32.const 0)) | |
%2 = ne %1, 0:i32 | |
%3:i32 = zext %2 | |
infer %3 | |
; RHS inferred successfully | |
result %1 | |
----------------------------------------------------------- | |
; start LHS (in $_fclose) | |
%0:i32 = var | |
; (i32.and(get_local $9)(i32.const 1)) | |
%1 = and %0, 1:i32 | |
; (i32.ne(get_local $10)(i32.const 0)) | |
%2 = ne %1, 0:i32 | |
%3:i32 = zext %2 | |
; (i32.eq(unreachable)(unreachable)) | |
%4 = eq %3, 0:i32 | |
%5:i32 = zext %4 | |
; (i32.eq(unreachable)(unreachable)) | |
%6 = eq %5, 0:i32 | |
infer %6 | |
; RHS inferred successfully | |
result %2 | |
----------------------------------------------------------- | |
; start LHS (in $_fclose) | |
%0:i32 = var | |
; (i32.and(get_local $9)(i32.const 1)) | |
%1 = and %0, 1:i32 | |
; (i32.ne(get_local $10)(i32.const 0)) | |
%2 = ne %1, 0:i32 | |
%3:i32 = zext %2 | |
infer %3 | |
; RHS inferred successfully | |
result %1 | |
----------------------------------------------------------- | |
; start LHS (in $_fclose) | |
%0:i32 = var | |
; (i32.and(get_local $9)(i32.const 1)) | |
%1 = and %0, 1:i32 | |
; (i32.ne(get_local $10)(i32.const 0)) | |
%2 = ne %1, 0:i32 | |
%3:i32 = zext %2 | |
; (i32.eq(unreachable)(unreachable)) | |
%4 = eq %3, 0:i32 | |
%5:i32 = zext %4 | |
; (i32.eq(unreachable)(unreachable)) | |
%6 = eq %5, 0:i32 | |
infer %6 | |
; RHS inferred successfully | |
result %2 | |
----------------------------------------------------------- | |
; start LHS (in $_luaV_tonumber) | |
%0 = block 2 | |
%1:i32 = var | |
; (i32.ne(get_local $3)(i32.const 3)) | |
%2 = ne %1, 3:i32 | |
blockpc %0 0 %2 1:i1 | |
%3:i32 = zext %2 | |
; (i32.eq(unreachable)(unreachable)) | |
%4 = eq %3, 0:i32 | |
blockpc %0 1 %4 1:i1 | |
; (i32.and(get_local $3)(i32.const 15)) | |
%5 = and %1, 15:i32 | |
; (i32.eq(get_local $12)(i32.const 4)) | |
%6 = eq %5, 4:i32 | |
%7:i32 = zext %6 | |
%8 = phi %0, 0:i32, %7 | |
infer %8 | |
; RHS inferred successfully | |
result 0:i32 | |
----------------------------------------------------------- | |
; start LHS (in $_luaV_tonumber) | |
%0 = block 2 | |
%1:i32 = var | |
; (i32.ne(get_local $3)(i32.const 3)) | |
%2 = ne %1, 3:i32 | |
blockpc %0 0 %2 1:i1 | |
%3:i32 = zext %2 | |
; (i32.eq(unreachable)(unreachable)) | |
%4 = eq %3, 0:i32 | |
blockpc %0 1 %4 1:i1 | |
%5 = block 2 | |
; (i32.and(get_local $3)(i32.const 15)) | |
%6 = and %1, 15:i32 | |
; (i32.eq(get_local $12)(i32.const 4)) | |
%7 = eq %6, 4:i32 | |
blockpc %5 0 %7 1:i1 | |
%8:i32 = zext %7 | |
; (i32.eq(unreachable)(unreachable)) | |
%9 = eq %8, 0:i32 | |
blockpc %5 1 %9 1:i1 | |
%10:i32 = var | |
; (i32.add(get_local $0)(i32.const 16)) | |
%11 = add %10, 16:i32 | |
%12 = phi %5, %11, 0:i32 | |
%13 = phi %0, 0:i32, %12 | |
infer %13 | |
; RHS inferred successfully | |
result 0:i32 | |
----------------------------------------------------------- | |
; start LHS (in $_luaV_tonumber) | |
%0 = block 2 | |
%1:i32 = var | |
; (i32.ne(get_local $3)(i32.const 3)) | |
%2 = ne %1, 3:i32 | |
blockpc %0 0 %2 1:i1 | |
%3:i32 = zext %2 | |
; (i32.eq(unreachable)(unreachable)) | |
%4 = eq %3, 0:i32 | |
blockpc %0 1 %4 1:i1 | |
%5 = block 2 | |
; (i32.and(get_local $3)(i32.const 15)) | |
%6 = and %1, 15:i32 | |
; (i32.eq(get_local $12)(i32.const 4)) | |
%7 = eq %6, 4:i32 | |
blockpc %5 0 %7 1:i1 | |
%8:i32 = zext %7 | |
; (i32.eq(unreachable)(unreachable)) | |
%9 = eq %8, 0:i32 | |
blockpc %5 1 %9 1:i1 | |
%10:i32 = var | |
%11 = phi %5, %10, 0:i32 | |
%12 = phi %0, 0:i32, %11 | |
infer %12 | |
; RHS inferred successfully | |
result 0:i32 | |
----------------------------------------------------------- | |
; start LHS (in $_luaV_tonumber) | |
%0 = block 2 | |
%1:i32 = var | |
; (i32.ne(get_local $3)(i32.const 3)) | |
%2 = ne %1, 3:i32 | |
blockpc %0 0 %2 1:i1 | |
%3:i32 = zext %2 | |
; (i32.eq(unreachable)(unreachable)) | |
%4 = eq %3, 0:i32 | |
blockpc %0 1 %4 1:i1 | |
%5 = block 2 | |
; (i32.and(get_local $3)(i32.const 15)) | |
%6 = and %1, 15:i32 | |
; (i32.eq(get_local $12)(i32.const 4)) | |
%7 = eq %6, 4:i32 | |
blockpc %5 0 %7 1:i1 | |
%8:i32 = zext %7 | |
; (i32.eq(unreachable)(unreachable)) | |
%9 = eq %8, 0:i32 | |
blockpc %5 1 %9 1:i1 | |
%10:i32 = var | |
%11 = phi %5, %10, 0:i32 | |
%12 = phi %0, 0:i32, %11 | |
infer %12 | |
; RHS inferred successfully | |
result 0:i32 | |
----------------------------------------------------------- | |
; start LHS (in $_luaV_tonumber) | |
%0 = block 2 | |
%1:i32 = var | |
; (i32.ne(get_local $3)(i32.const 3)) | |
%2 = ne %1, 3:i32 | |
blockpc %0 0 %2 1:i1 | |
%3:i32 = zext %2 | |
; (i32.eq(unreachable)(unreachable)) | |
%4 = eq %3, 0:i32 | |
blockpc %0 1 %4 1:i1 | |
%5 = block 2 | |
; (i32.and(get_local $3)(i32.const 15)) | |
%6 = and %1, 15:i32 | |
; (i32.eq(get_local $12)(i32.const 4)) | |
%7 = eq %6, 4:i32 | |
blockpc %5 0 %7 1:i1 | |
%8:i32 = zext %7 | |
; (i32.eq(unreachable)(unreachable)) | |
%9 = eq %8, 0:i32 | |
blockpc %5 1 %9 1:i1 | |
%10 = block 2 | |
%11:i32 = var | |
; (i32.ne(unreachable)(unreachable)) | |
%12 = ne %11, 0:i32 | |
blockpc %10 0 %12 1:i1 | |
; (i32.eq(unreachable)(unreachable)) | |
%13 = eq %11, 0:i32 | |
blockpc %10 1 %13 1:i1 | |
%14:i32 = var | |
%15 = phi %10, %14, 0:i32 | |
%16 = phi %5, %15, 0:i32 | |
%17 = phi %0, 0:i32, %16 | |
infer %17 | |
; RHS inferred successfully | |
result 0:i32 | |
----------------------------------------------------------- | |
; start LHS (in $_luaV_tonumber) | |
%0 = block 2 | |
%1:i32 = var | |
; (i32.ne(get_local $3)(i32.const 3)) | |
%2 = ne %1, 3:i32 | |
blockpc %0 0 %2 1:i1 | |
%3:i32 = zext %2 | |
; (i32.eq(unreachable)(unreachable)) | |
%4 = eq %3, 0:i32 | |
blockpc %0 1 %4 1:i1 | |
%5 = block 2 | |
; (i32.and(get_local $3)(i32.const 15)) | |
%6 = and %1, 15:i32 | |
; (i32.eq(get_local $12)(i32.const 4)) | |
%7 = eq %6, 4:i32 | |
blockpc %5 0 %7 1:i1 | |
%8:i32 = zext %7 | |
; (i32.eq(unreachable)(unreachable)) | |
%9 = eq %8, 0:i32 | |
blockpc %5 1 %9 1:i1 | |
%10 = block 2 | |
%11:i32 = var | |
; (i32.ne(unreachable)(unreachable)) | |
%12 = ne %11, 0:i32 | |
blockpc %10 0 %12 1:i1 | |
; (i32.eq(unreachable)(unreachable)) | |
%13 = eq %11, 0:i32 | |
blockpc %10 1 %13 1:i1 | |
%14:i32 = var | |
%15 = phi %10, %14, 0:i32 | |
%16 = phi %5, %15, 0:i32 | |
%17 = phi %0, 0:i32, %16 | |
infer %17 | |
; RHS inferred successfully | |
result 0:i32 | |
----------------------------------------------------------- | |
; start LHS (in $_luaL_gsub) | |
%0 = block 2 | |
%1:i32 = var | |
; (i32.shl(get_local $6)(i32.const 1)) | |
%2 = shl %1, 1:i32 | |
%3:i32 = var | |
; (i32.sub(get_local $6)(get_local $1)) | |
%4 = sub %2, %3 | |
%5:i32 = var | |
%6:i32 = var | |
; (i32.sub(get_local $9)(get_local $7)) | |
%7 = sub %5, %6 | |
; (i32.lt_u(get_local $63)(get_local $11)) | |
%8 = ult %4, %7 | |
blockpc %0 0 %8 1:i1 | |
%9:i32 = zext %8 | |
; (i32.eq(unreachable)(unreachable)) | |
%10 = eq %9, 0:i32 | |
blockpc %0 1 %10 1:i1 | |
; (i32.add(get_local $1)(get_local $11)) | |
%11 = add %3, %7 | |
%12 = phi %0, %11, %2 | |
; (i32.sub(get_local $6)(get_local $1)) | |
%13 = sub %12, %3 | |
; (i32.lt_u(get_local $75)(get_local $11)) | |
%14 = ult %13, %7 | |
; (i32.sub(get_local $6)(get_local $1)) | |
%15 = sub %1, %3 | |
; (i32.lt_u(get_local $50)(get_local $11)) | |
%16 = ult %15, %7 | |
%17:i32 = var | |
; (i32.ne(unreachable)(unreachable)) | |
%18 = ne %17, 0:i32 | |
pc %16 1:i1 | |
pc %18 1:i1 | |
infer %14 | |
; RHS inferred successfully | |
result 0:i1 | |
----------------------------------------------------------- | |
; start LHS (in $_luaL_gsub) | |
%0 = block 2 | |
%1:i32 = var | |
; (i32.shl(get_local $6)(i32.const 1)) | |
%2 = shl %1, 1:i32 | |
%3:i32 = var | |
; (i32.sub(get_local $6)(get_local $1)) | |
%4 = sub %2, %3 | |
%5:i32 = var | |
%6:i32 = var | |
; (i32.sub(get_local $9)(get_local $7)) | |
%7 = sub %5, %6 | |
; (i32.lt_u(get_local $63)(get_local $11)) | |
%8 = ult %4, %7 | |
blockpc %0 0 %8 1:i1 | |
%9:i32 = zext %8 | |
; (i32.eq(unreachable)(unreachable)) | |
%10 = eq %9, 0:i32 | |
blockpc %0 1 %10 1:i1 | |
; (i32.add(get_local $1)(get_local $11)) | |
%11 = add %3, %7 | |
%12 = phi %0, %11, %2 | |
; (i32.sub(get_local $6)(get_local $1)) | |
%13 = sub %12, %3 | |
; (i32.lt_u(get_local $75)(get_local $11)) | |
%14 = ult %13, %7 | |
%15:i32 = zext %14 | |
infer %15 | |
; RHS inferred successfully | |
result 0:i32 | |
----------------------------------------------------------- | |
; start LHS (in $_luaL_gsub) | |
%0 = block 2 | |
%1:i32 = var | |
; (i32.shl(get_local $6)(i32.const 1)) | |
%2 = shl %1, 1:i32 | |
%3:i32 = var | |
; (i32.sub(get_local $6)(get_local $1)) | |
%4 = sub %2, %3 | |
%5:i32 = var | |
%6:i32 = var | |
; (i32.sub(get_local $9)(get_local $7)) | |
%7 = sub %5, %6 | |
; (i32.lt_u(get_local $63)(get_local $11)) | |
%8 = ult %4, %7 | |
blockpc %0 0 %8 1:i1 | |
%9:i32 = zext %8 | |
; (i32.eq(unreachable)(unreachable)) | |
%10 = eq %9, 0:i32 | |
blockpc %0 1 %10 1:i1 | |
; (i32.add(get_local $1)(get_local $11)) | |
%11 = add %3, %7 | |
%12 = phi %0, %11, %2 | |
; (i32.lt_u(get_local $69)(get_local $1)) | |
%13 = ult %12, %3 | |
%14:i32 = zext %13 | |
%15 = phi %0, %11, %2 | |
; (i32.sub(get_local $6)(get_local $1)) | |
%16 = sub %15, %3 | |
; (i32.lt_u(get_local $75)(get_local $11)) | |
%17 = ult %16, %7 | |
%18:i32 = zext %17 | |
; (i32.or(get_local $72)(get_local $77)) | |
%19 = or %14, %18 | |
; (i32.sub(get_local $6)(get_local $1)) | |
%20 = sub %1, %3 | |
; (i32.lt_u(get_local $50)(get_local $11)) | |
%21 = ult %20, %7 | |
%22:i32 = var | |
; (i32.ne(unreachable)(unreachable)) | |
%23 = ne %22, 0:i32 | |
pc %21 1:i1 | |
pc %23 1:i1 | |
infer %19 | |
; RHS inferred successfully | |
result %14 | |
----------------------------------------------------------- | |
; start LHS (in $_luaL_gsub) | |
%0 = block 2 | |
%1:i32 = var | |
; (i32.shl(get_local $6)(i32.const 1)) | |
%2 = shl %1, 1:i32 | |
%3:i32 = var | |
; (i32.sub(get_local $6)(get_local $1)) | |
%4 = sub %2, %3 | |
%5:i32 = var | |
%6:i32 = var | |
; (i32.sub(get_local $9)(get_local $7)) | |
%7 = sub %5, %6 | |
; (i32.lt_u(get_local $63)(get_local $11)) | |
%8 = ult %4, %7 | |
blockpc %0 0 %8 1:i1 | |
%9:i32 = zext %8 | |
; (i32.eq(unreachable)(unreachable)) | |
%10 = eq %9, 0:i32 | |
blockpc %0 1 %10 1:i1 | |
; (i32.add(get_local $1)(get_local $11)) | |
%11 = add %3, %7 | |
%12 = phi %0, %11, %2 | |
; (i32.lt_u(get_local $69)(get_local $1)) | |
%13 = ult %12, %3 | |
%14:i32 = zext %13 | |
%15 = phi %0, %11, %2 | |
; (i32.sub(get_local $6)(get_local $1)) | |
%16 = sub %15, %3 | |
; (i32.lt_u(get_local $75)(get_local $11)) | |
%17 = ult %16, %7 | |
%18:i32 = zext %17 | |
; (i32.or(get_local $72)(get_local $77)) | |
%19 = or %14, %18 | |
; (i32.ne(unreachable)(unreachable)) | |
%20 = ne %19, 0:i32 | |
infer %20 | |
; RHS inferred successfully | |
result %13 | |
----------------------------------------------------------- | |
; start LHS (in $_luaL_gsub) | |
%0 = block 2 | |
%1:i32 = var | |
; (i32.shl(get_local $6)(i32.const 1)) | |
%2 = shl %1, 1:i32 | |
%3:i32 = var | |
; (i32.sub(get_local $6)(get_local $1)) | |
%4 = sub %2, %3 | |
%5:i32 = var | |
%6:i32 = var | |
; (i32.sub(get_local $9)(get_local $7)) | |
%7 = sub %5, %6 | |
; (i32.lt_u(get_local $63)(get_local $11)) | |
%8 = ult %4, %7 | |
blockpc %0 0 %8 1:i1 | |
%9:i32 = zext %8 | |
; (i32.eq(unreachable)(unreachable)) | |
%10 = eq %9, 0:i32 | |
blockpc %0 1 %10 1:i1 | |
; (i32.add(get_local $1)(get_local $11)) | |
%11 = add %3, %7 | |
%12 = phi %0, %11, %2 | |
; (i32.sub(get_local $6)(get_local $1)) | |
%13 = sub %12, %3 | |
; (i32.lt_u(get_local $75)(get_local $11)) | |
%14 = ult %13, %7 | |
%15:i32 = zext %14 | |
infer %15 | |
; RHS inferred successfully | |
result 0:i32 | |
----------------------------------------------------------- | |
; start LHS (in $_luaL_gsub) | |
%0 = block 2 | |
%1:i32 = var | |
; (i32.shl(get_local $12)(i32.const 1)) | |
%2 = shl %1, 1:i32 | |
%3:i32 = var | |
%4:i32 = var | |
%5:i32 = var | |
; (i32.sub(get_local $9)(get_local $7)) | |
%6 = sub %4, %5 | |
; (i32.add(get_local $113)(get_local $11)) | |
%7 = add %3, %6 | |
; (i32.sub(get_local $12)(get_local $1)) | |
%8 = sub %2, %7 | |
%9:i32 = var | |
; (i32.lt_u(get_local $135)(get_local $7)) | |
%10 = ult %8, %9 | |
blockpc %0 0 %10 1:i1 | |
%11:i32 = zext %10 | |
; (i32.eq(unreachable)(unreachable)) | |
%12 = eq %11, 0:i32 | |
blockpc %0 1 %12 1:i1 | |
; (i32.add(get_local $7)(get_local $1)) | |
%13 = add %9, %7 | |
%14 = phi %0, %13, %2 | |
; (i32.sub(get_local $4)(get_local $1)) | |
%15 = sub %14, %7 | |
; (i32.lt_u(get_local $147)(get_local $7)) | |
%16 = ult %15, %9 | |
; (i32.sub(get_local $12)(get_local $1)) | |
%17 = sub %1, %7 | |
; (i32.lt_u(get_local $125)(get_local $7)) | |
%18 = ult %17, %9 | |
%19:i32 = var | |
; (i32.ne(unreachable)(unreachable)) | |
%20 = ne %19, 0:i32 | |
pc %18 1:i1 | |
pc %20 1:i1 | |
infer %16 | |
; RHS inferred successfully | |
result 0:i1 | |
----------------------------------------------------------- | |
; start LHS (in $_luaL_gsub) | |
%0 = block 2 | |
%1:i32 = var | |
; (i32.shl(get_local $12)(i32.const 1)) | |
%2 = shl %1, 1:i32 | |
%3:i32 = var | |
%4:i32 = var | |
%5:i32 = var | |
; (i32.sub(get_local $9)(get_local $7)) | |
%6 = sub %4, %5 | |
; (i32.add(get_local $113)(get_local $11)) | |
%7 = add %3, %6 | |
; (i32.sub(get_local $12)(get_local $1)) | |
%8 = sub %2, %7 | |
%9:i32 = var | |
; (i32.lt_u(get_local $135)(get_local $7)) | |
%10 = ult %8, %9 | |
blockpc %0 0 %10 1:i1 | |
%11:i32 = zext %10 | |
; (i32.eq(unreachable)(unreachable)) | |
%12 = eq %11, 0:i32 | |
blockpc %0 1 %12 1:i1 | |
; (i32.add(get_local $7)(get_local $1)) | |
%13 = add %9, %7 | |
%14 = phi %0, %13, %2 | |
; (i32.sub(get_local $4)(get_local $1)) | |
%15 = sub %14, %7 | |
; (i32.lt_u(get_local $147)(get_local $7)) | |
%16 = ult %15, %9 | |
%17:i32 = zext %16 | |
infer %17 | |
; RHS inferred successfully | |
result 0:i32 | |
----------------------------------------------------------- | |
; start LHS (in $_luaL_gsub) | |
%0 = block 2 | |
%1:i32 = var | |
; (i32.shl(get_local $12)(i32.const 1)) | |
%2 = shl %1, 1:i32 | |
%3:i32 = var | |
%4:i32 = var | |
%5:i32 = var | |
; (i32.sub(get_local $9)(get_local $7)) | |
%6 = sub %4, %5 | |
; (i32.add(get_local $113)(get_local $11)) | |
%7 = add %3, %6 | |
; (i32.sub(get_local $12)(get_local $1)) | |
%8 = sub %2, %7 | |
%9:i32 = var | |
; (i32.lt_u(get_local $135)(get_local $7)) | |
%10 = ult %8, %9 | |
blockpc %0 0 %10 1:i1 | |
%11:i32 = zext %10 | |
; (i32.eq(unreachable)(unreachable)) | |
%12 = eq %11, 0:i32 | |
blockpc %0 1 %12 1:i1 | |
; (i32.add(get_local $7)(get_local $1)) | |
%13 = add %9, %7 | |
%14 = phi %0, %13, %2 | |
; (i32.lt_u(get_local $141)(get_local $1)) | |
%15 = ult %14, %7 | |
%16:i32 = zext %15 | |
%17 = phi %0, %13, %2 | |
; (i32.sub(get_local $4)(get_local $1)) | |
%18 = sub %17, %7 | |
; (i32.lt_u(get_local $147)(get_local $7)) | |
%19 = ult %18, %9 | |
%20:i32 = zext %19 | |
; (i32.or(get_local $144)(get_local $149)) | |
%21 = or %16, %20 | |
; (i32.sub(get_local $12)(get_local $1)) | |
%22 = sub %1, %7 | |
; (i32.lt_u(get_local $125)(get_local $7)) | |
%23 = ult %22, %9 | |
%24:i32 = var | |
; (i32.ne(unreachable)(unreachable)) | |
%25 = ne %24, 0:i32 | |
pc %23 1:i1 | |
pc %25 1:i1 | |
infer %21 | |
; RHS inferred successfully | |
result %16 | |
----------------------------------------------------------- | |
; start LHS (in $_luaL_gsub) | |
%0 = block 2 | |
%1:i32 = var | |
; (i32.shl(get_local $12)(i32.const 1)) | |
%2 = shl %1, 1:i32 | |
%3:i32 = var | |
%4:i32 = var | |
%5:i32 = var | |
; (i32.sub(get_local $9)(get_local $7)) | |
%6 = sub %4, %5 | |
; (i32.add(get_local $113)(get_local $11)) | |
%7 = add %3, %6 | |
; (i32.sub(get_local $12)(get_local $1)) | |
%8 = sub %2, %7 | |
%9:i32 = var | |
; (i32.lt_u(get_local $135)(get_local $7)) | |
%10 = ult %8, %9 | |
blockpc %0 0 %10 1:i1 | |
%11:i32 = zext %10 | |
; (i32.eq(unreachable)(unreachable)) | |
%12 = eq %11, 0:i32 | |
blockpc %0 1 %12 1:i1 | |
; (i32.add(get_local $7)(get_local $1)) | |
%13 = add %9, %7 | |
%14 = phi %0, %13, %2 | |
; (i32.sub(get_local $4)(get_local $1)) | |
%15 = sub %14, %7 | |
; (i32.lt_u(get_local $147)(get_local $7)) | |
%16 = ult %15, %9 | |
%17:i32 = zext %16 | |
infer %17 | |
; RHS inferred successfully | |
result 0:i32 | |
----------------------------------------------------------- | |
; start LHS (in $_luaL_gsub) | |
%0 = block 2 | |
%1 = block 2 | |
%2:i32 = var | |
; (i32.ne(unreachable)(unreachable)) | |
%3 = ne %2, 0:i32 | |
blockpc %1 0 %3 1:i1 | |
; (i32.eq(unreachable)(unreachable)) | |
%4 = eq %2, 0:i32 | |
blockpc %1 1 %4 1:i1 | |
%5:i32 = var | |
%6 = phi %1, %5, 1024:i32 | |
%7:i32 = var | |
%8:i32 = var | |
; (i32.add(get_local $185)(get_local $7)) | |
%9 = add %7, %8 | |
%10 = phi %1, %9, 0:i32 | |
; (i32.sub(get_local $6)(get_local $1)) | |
%11 = sub %6, %10 | |
%12:i32 = var | |
; (i32.lt_u(get_local $206)(get_local $3)) | |
%13 = ult %11, %12 | |
blockpc %0 0 %13 1:i1 | |
%14:i32 = zext %13 | |
; (i32.eq(unreachable)(unreachable)) | |
%15 = eq %14, 0:i32 | |
blockpc %0 1 %15 1:i1 | |
%16 = block 2 | |
; (i32.shl(get_local $6)(i32.const 1)) | |
%17 = shl %6, 1:i32 | |
; (i32.sub(get_local $6)(get_local $1)) | |
%18 = sub %17, %10 | |
; (i32.lt_u(get_local $218)(get_local $3)) | |
%19 = ult %18, %12 | |
blockpc %16 0 %19 1:i1 | |
%20:i32 = zext %19 | |
; (i32.eq(unreachable)(unreachable)) | |
%21 = eq %20, 0:i32 | |
blockpc %16 1 %21 1:i1 | |
; (i32.add(get_local $1)(get_local $3)) | |
%22 = add %10, %12 | |
%23 = phi %16, %22, %17 | |
; (i32.sub(get_local $2)(get_local $1)) | |
%24 = sub %23, %10 | |
; (i32.lt_u(get_local $230)(get_local $3)) | |
%25 = ult %24, %12 | |
%26:i32 = zext %25 | |
%27 = phi %0, %26, 0:i32 | |
infer %27 | |
; RHS inferred successfully | |
result 0:i32 | |
----------------------------------------------------------- | |
; start LHS (in $_luaL_addlstring) | |
%0 = block 2 | |
%1:i32 = var | |
; (i32.shl(get_local $3)(i32.const 1)) | |
%2 = shl %1, 1:i32 | |
%3:i32 = var | |
; (i32.sub(get_local $3)(get_local $5)) | |
%4 = sub %2, %3 | |
%5:i32 = var | |
; (i32.lt_u(get_local $48)(get_local $2)) | |
%6 = ult %4, %5 | |
blockpc %0 0 %6 1:i1 | |
%7:i32 = zext %6 | |
; (i32.eq(unreachable)(unreachable)) | |
%8 = eq %7, 0:i32 | |
blockpc %0 1 %8 1:i1 | |
; (i32.add(get_local $5)(get_local $2)) | |
%9 = add %3, %5 | |
%10 = phi %0, %9, %2 | |
; (i32.sub(get_local $6)(get_local $5)) | |
%11 = sub %10, %3 | |
; (i32.lt_u(get_local $60)(get_local $2)) | |
%12 = ult %11, %5 | |
infer %12 | |
; RHS inferred successfully | |
result 0:i1 | |
----------------------------------------------------------- | |
; start LHS (in $_luaL_addlstring) | |
%0 = block 2 | |
%1:i32 = var | |
; (i32.shl(get_local $3)(i32.const 1)) | |
%2 = shl %1, 1:i32 | |
%3:i32 = var | |
; (i32.sub(get_local $3)(get_local $5)) | |
%4 = sub %2, %3 | |
%5:i32 = var | |
; (i32.lt_u(get_local $48)(get_local $2)) | |
%6 = ult %4, %5 | |
blockpc %0 0 %6 1:i1 | |
%7:i32 = zext %6 | |
; (i32.eq(unreachable)(unreachable)) | |
%8 = eq %7, 0:i32 | |
blockpc %0 1 %8 1:i1 | |
; (i32.add(get_local $5)(get_local $2)) | |
%9 = add %3, %5 | |
%10 = phi %0, %9, %2 | |
; (i32.sub(get_local $6)(get_local $5)) | |
%11 = sub %10, %3 | |
; (i32.lt_u(get_local $60)(get_local $2)) | |
%12 = ult %11, %5 | |
%13:i32 = zext %12 | |
infer %13 | |
; RHS inferred successfully | |
result 0:i32 | |
----------------------------------------------------------- | |
; start LHS (in $_luaL_addlstring) | |
%0 = block 2 | |
%1:i32 = var | |
; (i32.shl(get_local $3)(i32.const 1)) | |
%2 = shl %1, 1:i32 | |
%3:i32 = var | |
; (i32.sub(get_local $3)(get_local $5)) | |
%4 = sub %2, %3 | |
%5:i32 = var | |
; (i32.lt_u(get_local $48)(get_local $2)) | |
%6 = ult %4, %5 | |
blockpc %0 0 %6 1:i1 | |
%7:i32 = zext %6 | |
; (i32.eq(unreachable)(unreachable)) | |
%8 = eq %7, 0:i32 | |
blockpc %0 1 %8 1:i1 | |
; (i32.add(get_local $5)(get_local $2)) | |
%9 = add %3, %5 | |
%10 = phi %0, %9, %2 | |
; (i32.lt_u(get_local $54)(get_local $5)) | |
%11 = ult %10, %3 | |
%12:i32 = zext %11 | |
%13 = phi %0, %9, %2 | |
; (i32.sub(get_local $6)(get_local $5)) | |
%14 = sub %13, %3 | |
; (i32.lt_u(get_local $60)(get_local $2)) | |
%15 = ult %14, %5 | |
%16:i32 = zext %15 | |
; (i32.or(get_local $57)(get_local $62)) | |
%17 = or %12, %16 | |
infer %17 | |
; RHS inferred successfully | |
result %12 | |
----------------------------------------------------------- | |
; start LHS (in $_luaL_addlstring) | |
%0 = block 2 | |
%1:i32 = var | |
; (i32.shl(get_local $3)(i32.const 1)) | |
%2 = shl %1, 1:i32 | |
%3:i32 = var | |
; (i32.sub(get_local $3)(get_local $5)) | |
%4 = sub %2, %3 | |
%5:i32 = var | |
; (i32.lt_u(get_local $48)(get_local $2)) | |
%6 = ult %4, %5 | |
blockpc %0 0 %6 1:i1 | |
%7:i32 = zext %6 | |
; (i32.eq(unreachable)(unreachable)) | |
%8 = eq %7, 0:i32 | |
blockpc %0 1 %8 1:i1 | |
; (i32.add(get_local $5)(get_local $2)) | |
%9 = add %3, %5 | |
%10 = phi %0, %9, %2 | |
; (i32.lt_u(get_local $54)(get_local $5)) | |
%11 = ult %10, %3 | |
%12:i32 = zext %11 | |
%13 = phi %0, %9, %2 | |
; (i32.sub(get_local $6)(get_local $5)) | |
%14 = sub %13, %3 | |
; (i32.lt_u(get_local $60)(get_local $2)) | |
%15 = ult %14, %5 | |
%16:i32 = zext %15 | |
; (i32.or(get_local $57)(get_local $62)) | |
%17 = or %12, %16 | |
; (i32.ne(unreachable)(unreachable)) | |
%18 = ne %17, 0:i32 | |
infer %18 | |
; RHS inferred successfully | |
result %11 | |
----------------------------------------------------------- | |
; start LHS (in $_luaV_execute) | |
%0:i32 = var | |
; (i32.shr_u(get_local $4)(i32.const 23)) | |
%1 = lshr %0, 23:i32 | |
; (i32.and(get_local $1)(i32.const 256)) | |
%2 = and %1, 256:i32 | |
; (i32.eq(unreachable)(unreachable)) | |
%3 = eq %2, 0:i32 | |
%4:i32 = zext %3 | |
; (i32.eq(unreachable)(unreachable)) | |
%5 = eq %4, 0:i32 | |
%6:i32 = zext %5 | |
; (i32.eq(unreachable)(unreachable)) | |
%7 = eq %6, 0:i32 | |
infer %7 | |
; RHS inferred successfully | |
result %3 | |
----------------------------------------------------------- | |
; start LHS (in $_luaV_execute) | |
%0:i32 = var | |
; (i32.shr_u(get_local $4)(i32.const 23)) | |
%1 = lshr %0, 23:i32 | |
; (i32.and(get_local $2)(i32.const 256)) | |
%2 = and %1, 256:i32 | |
; (i32.eq(unreachable)(unreachable)) | |
%3 = eq %2, 0:i32 | |
%4:i32 = zext %3 | |
; (i32.eq(unreachable)(unreachable)) | |
%5 = eq %4, 0:i32 | |
%6:i32 = zext %5 | |
; (i32.eq(unreachable)(unreachable)) | |
%7 = eq %6, 0:i32 | |
infer %7 | |
; RHS inferred successfully | |
result %3 | |
----------------------------------------------------------- | |
; start LHS (in $_luaV_execute) | |
%0:i32 = var | |
; (i32.shr_u(get_local $4)(i32.const 23)) | |
%1 = lshr %0, 23:i32 | |
; (i32.and(get_local $2)(i32.const 256)) | |
%2 = and %1, 256:i32 | |
; (i32.eq(unreachable)(unreachable)) | |
%3 = eq %2, 0:i32 | |
%4:i32 = zext %3 | |
; (i32.eq(unreachable)(unreachable)) | |
%5 = eq %4, 0:i32 | |
%6:i32 = zext %5 | |
; (i32.eq(unreachable)(unreachable)) | |
%7 = eq %6, 0:i32 | |
infer %7 | |
; RHS inferred successfully | |
result %3 | |
----------------------------------------------------------- | |
; start LHS (in $_luaV_execute) | |
%0:i32 = var | |
; (i32.shr_u(get_local $4)(i32.const 23)) | |
%1 = lshr %0, 23:i32 | |
; (i32.and(get_local $2)(i32.const 256)) | |
%2 = and %1, 256:i32 | |
; (i32.eq(unreachable)(unreachable)) | |
%3 = eq %2, 0:i32 | |
%4:i32 = zext %3 | |
; (i32.eq(unreachable)(unreachable)) | |
%5 = eq %4, 0:i32 | |
%6:i32 = zext %5 | |
; (i32.eq(unreachable)(unreachable)) | |
%7 = eq %6, 0:i32 | |
infer %7 | |
; RHS inferred successfully | |
result %3 | |
----------------------------------------------------------- | |
; start LHS (in $_luaV_execute) | |
%0:i32 = var | |
; (i32.shr_u(get_local $4)(i32.const 23)) | |
%1 = lshr %0, 23:i32 | |
; (i32.and(get_local $2)(i32.const 256)) | |
%2 = and %1, 256:i32 | |
; (i32.eq(unreachable)(unreachable)) | |
%3 = eq %2, 0:i32 | |
%4:i32 = zext %3 | |
; (i32.eq(unreachable)(unreachable)) | |
%5 = eq %4, 0:i32 | |
%6:i32 = zext %5 | |
; (i32.eq(unreachable)(unreachable)) | |
%7 = eq %6, 0:i32 | |
infer %7 | |
; RHS inferred successfully | |
result %3 | |
----------------------------------------------------------- | |
; start LHS (in $_luaV_execute) | |
%0:i32 = var | |
; (i32.shr_u(get_local $4)(i32.const 23)) | |
%1 = lshr %0, 23:i32 | |
; (i32.and(get_local $2)(i32.const 256)) | |
%2 = and %1, 256:i32 | |
; (i32.eq(unreachable)(unreachable)) | |
%3 = eq %2, 0:i32 | |
%4:i32 = zext %3 | |
; (i32.eq(unreachable)(unreachable)) | |
%5 = eq %4, 0:i32 | |
%6:i32 = zext %5 | |
; (i32.eq(unreachable)(unreachable)) | |
%7 = eq %6, 0:i32 | |
infer %7 | |
; RHS inferred successfully | |
result %3 | |
----------------------------------------------------------- | |
; start LHS (in $_luaV_execute) | |
%0:i32 = var | |
; (i32.shr_u(get_local $4)(i32.const 23)) | |
%1 = lshr %0, 23:i32 | |
; (i32.and(get_local $2)(i32.const 256)) | |
%2 = and %1, 256:i32 | |
; (i32.eq(unreachable)(unreachable)) | |
%3 = eq %2, 0:i32 | |
%4:i32 = zext %3 | |
; (i32.eq(unreachable)(unreachable)) | |
%5 = eq %4, 0:i32 | |
%6:i32 = zext %5 | |
; (i32.eq(unreachable)(unreachable)) | |
%7 = eq %6, 0:i32 | |
infer %7 | |
; RHS inferred successfully | |
result %3 | |
----------------------------------------------------------- | |
; start LHS (in $_luaV_execute) | |
%0:i32 = var | |
; (i32.shr_u(get_local $4)(i32.const 23)) | |
%1 = lshr %0, 23:i32 | |
; (i32.and(get_local $2)(i32.const 256)) | |
%2 = and %1, 256:i32 | |
; (i32.eq(unreachable)(unreachable)) | |
%3 = eq %2, 0:i32 | |
%4:i32 = zext %3 | |
; (i32.eq(unreachable)(unreachable)) | |
%5 = eq %4, 0:i32 | |
%6:i32 = zext %5 | |
; (i32.eq(unreachable)(unreachable)) | |
%7 = eq %6, 0:i32 | |
infer %7 | |
; RHS inferred successfully | |
result %3 | |
----------------------------------------------------------- | |
; start LHS (in $_luaV_execute) | |
%0 = block 3 | |
%1:i32 = var | |
; (i32.eq(unreachable)(unreachable)) | |
%2 = eq %1, 0:i32 | |
%3:i32 = zext %2 | |
%4 = phi %0, 1:i32, %3, 0:i32 | |
; (i32.and(get_local $1010)(i32.const 1)) | |
%5 = and %4, 1:i32 | |
infer %5 | |
; RHS inferred successfully | |
result %4 | |
----------------------------------------------------------- | |
; start LHS (in $_luaV_execute) | |
%0:i32 = var | |
; (i32.shr_u(get_local $4)(i32.const 23)) | |
%1 = lshr %0, 23:i32 | |
; (i32.and(get_local $1)(i32.const 256)) | |
%2 = and %1, 256:i32 | |
; (i32.eq(unreachable)(unreachable)) | |
%3 = eq %2, 0:i32 | |
%4:i32 = zext %3 | |
; (i32.eq(unreachable)(unreachable)) | |
%5 = eq %4, 0:i32 | |
%6:i32 = zext %5 | |
; (i32.eq(unreachable)(unreachable)) | |
%7 = eq %6, 0:i32 | |
infer %7 | |
; RHS inferred successfully | |
result %3 | |
----------------------------------------------------------- | |
; start LHS (in $_luaV_execute) | |
%0 = block 2 | |
%1:i32 = var | |
%2:i32 = var | |
; (i32.eq(get_local $1136)(get_local $1149)) | |
%3 = eq %1, %2 | |
blockpc %0 0 %3 1:i1 | |
%4:i32 = zext %3 | |
; (i32.eq(unreachable)(unreachable)) | |
%5 = eq %4, 0:i32 | |
blockpc %0 1 %5 1:i1 | |
%6:i32 = var | |
; (i32.ne(get_local $1160)(i32.const 0)) | |
%7 = ne %6, 0:i32 | |
%8:i32 = zext %7 | |
%9 = phi %0, %8, 0:i32 | |
; (i32.and(get_local $1)(i32.const 1)) | |
%10 = and %9, 1:i32 | |
infer %10 | |
; RHS inferred successfully | |
result %9 | |
----------------------------------------------------------- | |
; start LHS (in $_luaV_execute) | |
%0:i32 = var | |
; (i32.shr_u(get_local $4)(i32.const 23)) | |
%1 = lshr %0, 23:i32 | |
; (i32.and(get_local $1)(i32.const 256)) | |
%2 = and %1, 256:i32 | |
; (i32.eq(unreachable)(unreachable)) | |
%3 = eq %2, 0:i32 | |
%4:i32 = zext %3 | |
; (i32.eq(unreachable)(unreachable)) | |
%5 = eq %4, 0:i32 | |
%6:i32 = zext %5 | |
; (i32.eq(unreachable)(unreachable)) | |
%7 = eq %6, 0:i32 | |
infer %7 | |
; RHS inferred successfully | |
result %3 | |
----------------------------------------------------------- | |
; start LHS (in $_luaV_execute) | |
%0:i32 = var | |
; (i32.shr_u(get_local $4)(i32.const 23)) | |
%1 = lshr %0, 23:i32 | |
; (i32.and(get_local $1)(i32.const 256)) | |
%2 = and %1, 256:i32 | |
; (i32.eq(unreachable)(unreachable)) | |
%3 = eq %2, 0:i32 | |
%4:i32 = zext %3 | |
; (i32.eq(unreachable)(unreachable)) | |
%5 = eq %4, 0:i32 | |
%6:i32 = zext %5 | |
; (i32.eq(unreachable)(unreachable)) | |
%7 = eq %6, 0:i32 | |
infer %7 | |
; RHS inferred successfully | |
result %3 | |
----------------------------------------------------------- | |
; start LHS (in $_luaV_execute) | |
%0:i32 = var | |
; (i32.eq(unreachable)(unreachable)) | |
%1 = eq %0, 0:i32 | |
%2:i32 = zext %1 | |
; (i32.eq(unreachable)(unreachable)) | |
%3 = eq %2, 0:i32 | |
%4:i32 = zext %3 | |
; (i32.eq(unreachable)(unreachable)) | |
%5 = eq %4, 0:i32 | |
infer %5 | |
; RHS inferred successfully | |
result %1 | |
----------------------------------------------------------- | |
; start LHS (in $_luaV_execute) | |
%0:i32 = var | |
; (i32.eq(unreachable)(unreachable)) | |
%1 = eq %0, 0:i32 | |
%2:i32 = zext %1 | |
; (i32.eq(unreachable)(unreachable)) | |
%3 = eq %2, 0:i32 | |
%4:i32 = zext %3 | |
; (i32.eq(unreachable)(unreachable)) | |
%5 = eq %4, 0:i32 | |
infer %5 | |
; RHS inferred successfully | |
result %1 | |
----------------------------------------------------------- | |
; start LHS (in $_luaV_concat) | |
%0 = block 2 | |
%1:i32 = var | |
; (i32.and(get_local $1)(i32.const 15)) | |
%2 = and %1, 15:i32 | |
; (i32.ne(get_local $62)(i32.const 4)) | |
%3 = ne %2, 4:i32 | |
blockpc %0 0 %3 1:i1 | |
%4:i32 = zext %3 | |
; (i32.eq(unreachable)(unreachable)) | |
%5 = eq %4, 0:i32 | |
blockpc %0 1 %5 1:i1 | |
%6:i32 = var | |
%7:i32 = var | |
%8 = phi %0, %6, %7 | |
; (i32.eq(get_local $2)(i32.const 3)) | |
%9 = eq %8, 3:i32 | |
%10:i32 = zext %9 | |
; (i32.and(get_local $2)(i32.const 15)) | |
%11 = and %8, 15:i32 | |
; (i32.eq(get_local $85)(i32.const 4)) | |
%12 = eq %11, 4:i32 | |
%13:i32 = zext %12 | |
; (i32.xor(get_local $15)(i32.const 1)) | |
%14 = xor %13, 1:i32 | |
; (i32.and(get_local $93)(get_local $95)) | |
%15 = and %10, %14 | |
%16:i32 = var | |
; (i32.eq(unreachable)(unreachable)) | |
%17 = eq %16, 0:i32 | |
pc %17 1:i1 | |
infer %15 | |
; RHS inferred successfully | |
result %10 | |
----------------------------------------------------------- | |
; start LHS (in $_luaL_checkoption) | |
%0 = block 2 | |
%1:i32 = var | |
; (i32.eq(unreachable)(unreachable)) | |
%2 = eq %1, 0:i32 | |
blockpc %0 0 %2 1:i1 | |
%3:i32 = zext %2 | |
; (i32.eq(unreachable)(unreachable)) | |
%4 = eq %3, 0:i32 | |
blockpc %0 1 %4 1:i1 | |
%5 = phi %0, %1, 0:i32 | |
infer %5 | |
; RHS inferred successfully | |
result 0:i32 | |
----------------------------------------------------------- | |
; start LHS (in $_luaK_goiftrue) | |
%0 = block 2 | |
%1:i32 = var | |
; (i32.and(get_local $4)(i32.const 255)) | |
%2 = and %1, 255:i32 | |
%3:i32 = var | |
; (i32.lt_s(get_local $148)(get_local $153)) | |
%4 = slt %2, %3 | |
blockpc %0 0 %4 1:i1 | |
%5:i32 = zext %4 | |
; (i32.eq(unreachable)(unreachable)) | |
%6 = eq %5, 0:i32 | |
blockpc %0 1 %6 1:i1 | |
; (i32.add(get_local $4)(i32.const 1)) | |
%7 = add %1, 1:i32 | |
; (i32.and(get_local $5)(i32.const 255)) | |
%8 = and %7, 255:i32 | |
%9 = block 2 | |
; (i32.and(get_local $4)(i32.const 255)) | |
%10 = and %1, 255:i32 | |
; (i32.le_s(i32.const 248)(get_local $158)) | |
%11 = sle 248:i32, %10 | |
blockpc %9 0 %11 1:i1 | |
%12:i32 = zext %11 | |
; (i32.eq(unreachable)(unreachable)) | |
%13 = eq %12, 0:i32 | |
blockpc %9 1 %13 1:i1 | |
; (i32.and(get_local $5)(i32.const 255)) | |
%14 = and %7, 255:i32 | |
%15 = phi %9, 0:i32, %14 | |
%16 = phi %0, %8, %15 | |
; (i32.and(get_local $2)(i32.const 255)) | |
%17 = and %16, 255:i32 | |
infer %17 | |
; RHS inferred successfully | |
result %16 | |
----------------------------------------------------------- | |
; start LHS (in $_discharge2reg) | |
%0 = block 2 | |
%1:i32 = var | |
%2:i32 = var | |
; (i32.shr_u(get_local $4)(i32.const 6)) | |
%3 = lshr %2, 6:i32 | |
; (i32.and(get_local $42)(i32.const 255)) | |
%4 = and %3, 255:i32 | |
; (i32.le_s(get_local $2)(get_local $3)) | |
%5 = sle %1, %4 | |
%6:i32 = zext %5 | |
; (i32.shr_u(get_local $4)(i32.const 23)) | |
%7 = lshr %2, 23:i32 | |
; (i32.add(get_local $3)(get_local $46)) | |
%8 = add %4, %7 | |
; (i32.add(get_local $6)(i32.const 1)) | |
%9 = add %8, 1:i32 | |
; (i32.lt_s(get_local $52)(get_local $2)) | |
%10 = slt %9, %1 | |
%11:i32 = zext %10 | |
; (i32.or(get_local $50)(get_local $54)) | |
%12 = or %6, %11 | |
; (i32.ne(unreachable)(unreachable)) | |
%13 = ne %12, 0:i32 | |
blockpc %0 0 %13 1:i1 | |
; (i32.eq(unreachable)(unreachable)) | |
%14 = eq %12, 0:i32 | |
blockpc %0 1 %14 1:i1 | |
; (i32.add(get_local $2)(i32.const 1)) | |
%15 = add %1, 1:i32 | |
; (i32.le_s(get_local $7)(get_local $3)) | |
%16 = sle %15, %4 | |
%17:i32 = zext %16 | |
%18 = phi %0, 0:i32, %17 | |
infer %18 | |
; RHS inferred successfully | |
result 0:i32 | |
----------------------------------------------------------- | |
; start LHS (in $_traverseephemeron) | |
%0:i32 = var | |
; (i32.and(get_local $9)(i32.const 64)) | |
%1 = and %0, 64:i32 | |
; (i32.eq(unreachable)(unreachable)) | |
%2 = eq %1, 0:i32 | |
%3:i32 = zext %2 | |
; (i32.eq(unreachable)(unreachable)) | |
%4 = eq %3, 0:i32 | |
%5:i32 = zext %4 | |
; (i32.eq(unreachable)(unreachable)) | |
%6 = eq %5, 0:i32 | |
infer %6 | |
; RHS inferred successfully | |
result %2 | |
----------------------------------------------------------- | |
; start LHS (in $_traverseephemeron) | |
%0:i32 = var | |
; (i32.and(get_local $9)(i32.const 64)) | |
%1 = and %0, 64:i32 | |
; (i32.eq(unreachable)(unreachable)) | |
%2 = eq %1, 0:i32 | |
%3:i32 = zext %2 | |
; (i32.eq(unreachable)(unreachable)) | |
%4 = eq %3, 0:i32 | |
%5:i32 = zext %4 | |
; (i32.eq(unreachable)(unreachable)) | |
%6 = eq %5, 0:i32 | |
infer %6 | |
; RHS inferred successfully | |
result %2 | |
----------------------------------------------------------- | |
; start LHS (in $_printf_core) | |
%0:i32 = var | |
; (i32.add(get_local $8)(i32.const -32)) | |
%1 = add %0, -32:i32 | |
; (i32.le_u(i32.const 31)(get_local $6)) | |
%2 = ule 31:i32, %1 | |
%3:i32 = zext %2 | |
; (i32.shl(i32.const 1)(get_local $6)) | |
%4 = shl 1:i32, %1 | |
; (i32.and(get_local $132)(i32.const 75913)) | |
%5 = and %4, 75913:i32 | |
; (i32.eq(unreachable)(unreachable)) | |
%6 = eq %5, 0:i32 | |
%7:i32 = zext %6 | |
; (i32.or(get_local $130)(get_local $134)) | |
%8 = or %3, %7 | |
infer %8 | |
; RHS inferred successfully | |
result %7 | |
----------------------------------------------------------- | |
; start LHS (in $_printf_core) | |
%0:i32 = var | |
; (i32.add(get_local $8)(i32.const -32)) | |
%1 = add %0, -32:i32 | |
; (i32.le_u(i32.const 31)(get_local $7)) | |
%2 = ule 31:i32, %1 | |
%3:i32 = zext %2 | |
; (i32.shl(i32.const 1)(get_local $7)) | |
%4 = shl 1:i32, %1 | |
; (i32.and(get_local $155)(i32.const 75913)) | |
%5 = and %4, 75913:i32 | |
; (i32.eq(unreachable)(unreachable)) | |
%6 = eq %5, 0:i32 | |
%7:i32 = zext %6 | |
; (i32.or(get_local $153)(get_local $157)) | |
%8 = or %3, %7 | |
%9:i32 = var | |
; (i32.add(get_local $8)(i32.const -32)) | |
%10 = add %9, -32:i32 | |
; (i32.le_u(i32.const 31)(get_local $6)) | |
%11 = ule 31:i32, %10 | |
%12:i32 = zext %11 | |
; (i32.shl(i32.const 1)(get_local $6)) | |
%13 = shl 1:i32, %10 | |
; (i32.and(get_local $132)(i32.const 75913)) | |
%14 = and %13, 75913:i32 | |
; (i32.eq(unreachable)(unreachable)) | |
%15 = eq %14, 0:i32 | |
%16:i32 = zext %15 | |
; (i32.or(get_local $130)(get_local $134)) | |
%17 = or %12, %16 | |
; (i32.eq(unreachable)(unreachable)) | |
%18 = eq %17, 0:i32 | |
pc %18 1:i1 | |
infer %8 | |
; RHS inferred successfully | |
result %7 | |
----------------------------------------------------------- | |
; start LHS (in $_printf_core) | |
%0:i32 = var | |
; (i32.add(get_local $8)(i32.const -32)) | |
%1 = add %0, -32:i32 | |
; (i32.le_u(i32.const 31)(get_local $7)) | |
%2 = ule 31:i32, %1 | |
%3:i32 = zext %2 | |
; (i32.shl(i32.const 1)(get_local $7)) | |
%4 = shl 1:i32, %1 | |
; (i32.and(get_local $155)(i32.const 75913)) | |
%5 = and %4, 75913:i32 | |
; (i32.eq(unreachable)(unreachable)) | |
%6 = eq %5, 0:i32 | |
%7:i32 = zext %6 | |
; (i32.or(get_local $153)(get_local $157)) | |
%8 = or %3, %7 | |
; (i32.eq(unreachable)(unreachable)) | |
%9 = eq %8, 0:i32 | |
%10:i32 = zext %9 | |
; (i32.eq(unreachable)(unreachable)) | |
%11 = eq %10, 0:i32 | |
infer %11 | |
; RHS inferred successfully | |
result %6 | |
----------------------------------------------------------- | |
; start LHS (in $_printf_core) | |
%0:i32 = var | |
; (i32.add(get_local $8)(i32.const -32)) | |
%1 = add %0, -32:i32 | |
; (i32.le_u(i32.const 31)(get_local $6)) | |
%2 = ule 31:i32, %1 | |
%3:i32 = zext %2 | |
; (i32.shl(i32.const 1)(get_local $6)) | |
%4 = shl 1:i32, %1 | |
; (i32.and(get_local $132)(i32.const 75913)) | |
%5 = and %4, 75913:i32 | |
; (i32.eq(unreachable)(unreachable)) | |
%6 = eq %5, 0:i32 | |
%7:i32 = zext %6 | |
; (i32.or(get_local $130)(get_local $134)) | |
%8 = or %3, %7 | |
; (i32.ne(unreachable)(unreachable)) | |
%9 = ne %8, 0:i32 | |
infer %9 | |
; RHS inferred successfully | |
result %6 | |
----------------------------------------------------------- | |
; start LHS (in $_printf_core) | |
%0 = block 2 | |
%1:i32 = var | |
%2 = block 2 | |
%3 = block 3 | |
%4:i32 = var | |
%5:i32 = var | |
%6:i32 = var | |
%7 = phi %3, %4, %5, %6 | |
; (i32.ne(unreachable)(unreachable)) | |
%8 = ne %7, 0:i32 | |
blockpc %2 0 %8 1:i1 | |
; (i32.eq(unreachable)(unreachable)) | |
%9 = eq %7, 0:i32 | |
blockpc %2 1 %9 1:i1 | |
%10:i32 = var | |
%11 = phi %2, %10, 0:i32 | |
%12 = phi %0, %1, %11 | |
; (i32.lt_s(get_local $1)(i32.const 0)) | |
%13 = slt %12, 0:i32 | |
%14:i32 = zext %13 | |
; (i32.eq(unreachable)(unreachable)) | |
%15 = eq %14, 0:i32 | |
%16:i32 = zext %15 | |
; (i32.eq(unreachable)(unreachable)) | |
%17 = eq %16, 0:i32 | |
infer %17 | |
; RHS inferred successfully | |
result %13 | |
----------------------------------------------------------- | |
; start LHS (in $_printf_core) | |
%0 = block 2 | |
%1:i32 = var | |
%2 = block 2 | |
%3 = block 3 | |
%4:i32 = var | |
%5:i32 = var | |
%6:i32 = var | |
%7 = phi %3, %4, %5, %6 | |
; (i32.ne(unreachable)(unreachable)) | |
%8 = ne %7, 0:i32 | |
blockpc %2 0 %8 1:i1 | |
; (i32.eq(unreachable)(unreachable)) | |
%9 = eq %7, 0:i32 | |
blockpc %2 1 %9 1:i1 | |
%10:i32 = var | |
%11 = phi %2, %10, 0:i32 | |
%12 = phi %0, %1, %11 | |
; (i32.lt_s(get_local $1)(i32.const 0)) | |
%13 = slt %12, 0:i32 | |
%14:i32 = zext %13 | |
; (i32.eq(unreachable)(unreachable)) | |
%15 = eq %14, 0:i32 | |
%16:i32 = zext %15 | |
; (i32.eq(unreachable)(unreachable)) | |
%17 = eq %16, 0:i32 | |
infer %17 | |
; RHS inferred successfully | |
result %13 | |
----------------------------------------------------------- | |
; start LHS (in $_printf_core) | |
%0:i32 = var | |
; (i32.eq(unreachable)(unreachable)) | |
%1 = eq %0, 0:i32 | |
%2:i32 = zext %1 | |
; (i32.eq(unreachable)(unreachable)) | |
%3 = eq %2, 0:i32 | |
%4:i32 = zext %3 | |
; (i32.eq(unreachable)(unreachable)) | |
%5 = eq %4, 0:i32 | |
infer %5 | |
; RHS inferred successfully | |
result %1 | |
----------------------------------------------------------- | |
; start LHS (in $_printf_core) | |
%0:i32 = var | |
; (i32.eq(unreachable)(unreachable)) | |
%1 = eq %0, 0:i32 | |
%2:i32 = zext %1 | |
; (i32.eq(unreachable)(unreachable)) | |
%3 = eq %2, 0:i32 | |
%4:i32 = zext %3 | |
; (i32.eq(unreachable)(unreachable)) | |
%5 = eq %4, 0:i32 | |
infer %5 | |
; RHS inferred successfully | |
result %1 | |
----------------------------------------------------------- | |
; start LHS (in $_printf_core) | |
%0 = block 3 | |
%1:i64 = var | |
%2:i64 = var | |
%3 = block 2 | |
%4 = block 2 | |
%5:i64 = var | |
; (i64.lt_s(get_local $16)(i64.const 0)) | |
%6 = slt %5, 0:i64 | |
blockpc %4 0 %6 1:i1 | |
%7:i32 = zext %6 | |
; (i32.eq(unreachable)(unreachable)) | |
%8 = eq %7, 0:i32 | |
blockpc %4 1 %8 1:i1 | |
; (i64.sub(i64.const 0)(get_local $16)) | |
%9 = sub 0:i64, %5 | |
%10 = phi %4, %9, %5 | |
%11:i64 = var | |
%12 = phi %3, %10, %11 | |
%13 = phi %0, %1, %2, %12 | |
; (i64.ne(get_local $16)(i64.const 0)) | |
%14 = ne %13, 0:i64 | |
%15:i32 = zext %14 | |
; (i32.xor(get_local $10)(i32.const 1)) | |
%16 = xor %15, 1:i32 | |
; (i32.and(get_local $585)(i32.const 1)) | |
%17 = and %16, 1:i32 | |
infer %17 | |
; RHS inferred successfully | |
result %16 | |
----------------------------------------------------------- | |
; start LHS (in $_luaC_forcestep) | |
%0:i32 = var | |
; (i32.eq(get_local $121)(i32.const 5)) | |
%1 = eq %0, 5:i32 | |
%2:i32 = zext %1 | |
; (i32.eq(unreachable)(unreachable)) | |
%3 = eq %2, 0:i32 | |
%4:i32 = zext %3 | |
; (i32.eq(unreachable)(unreachable)) | |
%5 = eq %4, 0:i32 | |
infer %5 | |
; RHS inferred successfully | |
result %1 | |
----------------------------------------------------------- | |
; start LHS (in $_log) | |
%0:i64 = var | |
; (i64.lt_s(get_local $2)(i64.const 0)) | |
%1 = slt %0, 0:i64 | |
%2:i32 = zext %1 | |
; (i32.eq(unreachable)(unreachable)) | |
%3 = eq %2, 0:i32 | |
%4:i32 = zext %3 | |
; (i32.eq(unreachable)(unreachable)) | |
%5 = eq %4, 0:i32 | |
infer %5 | |
; RHS inferred successfully | |
result %1 | |
----------------------------------------------------------- | |
; start LHS (in $_luaV_lessequal) | |
%0:i32 = var | |
%1:i32 = var | |
; (i32.eq(get_local $3)(get_local $1)) | |
%2 = eq %0, %1 | |
%3:i32 = zext %2 | |
; (i32.xor(get_local $4)(i32.const 1)) | |
%4 = xor %3, 1:i32 | |
; (i32.and(get_local $75)(i32.const 1)) | |
%5 = and %4, 1:i32 | |
%6:i32 = var | |
; (i32.and(get_local $28)(i32.const 15)) | |
%7 = and %6, 15:i32 | |
; (i32.eq(get_local $29)(i32.const 4)) | |
%8 = eq %7, 4:i32 | |
%9:i32 = var | |
; (i32.and(get_local $3)(i32.const 15)) | |
%10 = and %9, 15:i32 | |
; (i32.eq(get_local $25)(i32.const 4)) | |
%11 = eq %10, 4:i32 | |
; (i32.eq(get_local $3)(i32.const 3)) | |
%12 = eq %9, 3:i32 | |
%13:i32 = zext %12 | |
; (i32.eq(unreachable)(unreachable)) | |
%14 = eq %13, 0:i32 | |
pc %8 1:i1 | |
pc %11 1:i1 | |
pc %14 1:i1 | |
infer %5 | |
; RHS inferred successfully | |
result %4 | |
----------------------------------------------------------- | |
; start LHS (in $_luaS_hash) | |
%0:i32 = var | |
; (i32.shr_u(get_local $1)(i32.const 5)) | |
%1 = lshr %0, 5:i32 | |
; (i32.lt_u(get_local $1)(get_local $4)) | |
%2 = ult %0, %1 | |
infer %2 | |
; RHS inferred successfully | |
result 0:i1 | |
----------------------------------------------------------- | |
; start LHS (in $_luaS_hash) | |
%0:i32 = var | |
; (i32.shr_u(get_local $1)(i32.const 5)) | |
%1 = lshr %0, 5:i32 | |
; (i32.lt_u(get_local $1)(get_local $4)) | |
%2 = ult %0, %1 | |
%3:i32 = zext %2 | |
; (i32.eq(unreachable)(unreachable)) | |
%4 = eq %3, 0:i32 | |
infer %4 | |
; RHS inferred successfully | |
result 1:i1 | |
----------------------------------------------------------- | |
; start LHS (in $_luaS_hash) | |
%0:i32 = var | |
; (i32.shr_u(get_local $1)(i32.const 5)) | |
%1 = lshr %0, 5:i32 | |
; (i32.lt_u(get_local $1)(get_local $4)) | |
%2 = ult %0, %1 | |
%3:i32 = zext %2 | |
infer %3 | |
; RHS inferred successfully | |
result 0:i32 | |
----------------------------------------------------------- | |
; start LHS (in $_luaK_goiffalse) | |
%0 = block 2 | |
%1:i32 = var | |
; (i32.and(get_local $4)(i32.const 255)) | |
%2 = and %1, 255:i32 | |
%3:i32 = var | |
; (i32.lt_s(get_local $113)(get_local $118)) | |
%4 = slt %2, %3 | |
blockpc %0 0 %4 1:i1 | |
%5:i32 = zext %4 | |
; (i32.eq(unreachable)(unreachable)) | |
%6 = eq %5, 0:i32 | |
blockpc %0 1 %6 1:i1 | |
; (i32.add(get_local $4)(i32.const 1)) | |
%7 = add %1, 1:i32 | |
; (i32.and(get_local $5)(i32.const 255)) | |
%8 = and %7, 255:i32 | |
%9 = block 2 | |
; (i32.and(get_local $4)(i32.const 255)) | |
%10 = and %1, 255:i32 | |
; (i32.le_s(i32.const 248)(get_local $123)) | |
%11 = sle 248:i32, %10 | |
blockpc %9 0 %11 1:i1 | |
%12:i32 = zext %11 | |
; (i32.eq(unreachable)(unreachable)) | |
%13 = eq %12, 0:i32 | |
blockpc %9 1 %13 1:i1 | |
; (i32.and(get_local $5)(i32.const 255)) | |
%14 = and %7, 255:i32 | |
%15 = phi %9, 0:i32, %14 | |
%16 = phi %0, %8, %15 | |
; (i32.and(get_local $2)(i32.const 255)) | |
%17 = and %16, 255:i32 | |
infer %17 | |
; RHS inferred successfully | |
result %16 | |
----------------------------------------------------------- | |
; start LHS (in $_luaH_getn) | |
%0:i32 = var | |
; (i32.le_u(i32.const 1)(get_local $5)) | |
%1 = ule 1:i32, %0 | |
%2:i32 = var | |
; (i32.eq(unreachable)(unreachable)) | |
%3 = eq %2, 0:i32 | |
; (i32.ne(unreachable)(unreachable)) | |
%4 = ne %0, 0:i32 | |
pc %3 1:i1 | |
pc %4 1:i1 | |
infer %1 | |
; RHS inferred successfully | |
result 1:i1 | |
----------------------------------------------------------- | |
; start LHS (in $_luaH_getn) | |
%0 = block 2 | |
%1:i32 = var | |
; (i32.ne(unreachable)(unreachable)) | |
%2 = ne %1, 0:i32 | |
blockpc %0 0 %2 1:i1 | |
; (i32.eq(unreachable)(unreachable)) | |
%3 = eq %1, 0:i32 | |
blockpc %0 1 %3 1:i1 | |
; (i32.shl(get_local $5)(i32.const 4)) | |
%4 = shl %1, 4:i32 | |
%5 = phi %0, 0:i32, %4 | |
infer %5 | |
; RHS inferred successfully | |
result 0:i32 | |
----------------------------------------------------------- | |
; start LHS (in $_log10) | |
%0 = block 2 | |
%1:i32 = var | |
; (i32.le_u(get_local $2)(i32.const 2146435071)) | |
%2 = ule %1, 2146435071:i32 | |
blockpc %0 0 %2 1:i1 | |
%3:i32 = zext %2 | |
; (i32.eq(unreachable)(unreachable)) | |
%4 = eq %3, 0:i32 | |
blockpc %0 1 %4 1:i1 | |
; (i32.eq(get_local $2)(i32.const 1072693248)) | |
%5 = eq %1, 1072693248:i32 | |
%6:i32 = zext %5 | |
%7 = phi %0, 0:i32, %6 | |
infer %7 | |
; RHS inferred successfully | |
result 0:i32 | |
----------------------------------------------------------- | |
; start LHS (in $_log10) | |
%0 = block 2 | |
%1:i32 = var | |
; (i32.le_u(get_local $2)(i32.const 2146435071)) | |
%2 = ule %1, 2146435071:i32 | |
blockpc %0 0 %2 1:i1 | |
%3:i32 = zext %2 | |
; (i32.eq(unreachable)(unreachable)) | |
%4 = eq %3, 0:i32 | |
blockpc %0 1 %4 1:i1 | |
%5:i64 = var | |
; (i64.and(get_local $3)(i64.const 4294967295)) | |
%6 = and %5, 4294967295:i64 | |
; (i64.eq(get_local $41)(i64.const 0)) | |
%7 = eq %6, 0:i64 | |
%8:i32 = zext %7 | |
; (i32.eq(get_local $2)(i32.const 1072693248)) | |
%9 = eq %1, 1072693248:i32 | |
%10:i32 = zext %9 | |
; (i32.and(get_local $42)(get_local $44)) | |
%11 = and %8, %10 | |
%12 = phi %0, 0:i32, %11 | |
infer %12 | |
; RHS inferred successfully | |
result 0:i32 | |
----------------------------------------------------------- | |
; start LHS (in $_log10) | |
%0 = block 2 | |
%1:i64 = var | |
; (i64.lt_s(get_local $3)(i64.const 0)) | |
%2 = slt %1, 0:i64 | |
%3:i32 = zext %2 | |
%4:i32 = var | |
; (i32.lt_u(get_local $2)(i32.const 1048576)) | |
%5 = ult %4, 1048576:i32 | |
%6:i32 = zext %5 | |
; (i32.or(get_local $5)(get_local $18)) | |
%7 = or %3, %6 | |
; (i32.ne(unreachable)(unreachable)) | |
%8 = ne %7, 0:i32 | |
blockpc %0 0 %8 1:i1 | |
; (i32.eq(unreachable)(unreachable)) | |
%9 = eq %7, 0:i32 | |
blockpc %0 1 %9 1:i1 | |
%10 = block 2 | |
; (i32.le_u(get_local $2)(i32.const 2146435071)) | |
%11 = ule %4, 2146435071:i32 | |
blockpc %10 0 %11 1:i1 | |
%12:i32 = zext %11 | |
; (i32.eq(unreachable)(unreachable)) | |
%13 = eq %12, 0:i32 | |
blockpc %10 1 %13 1:i1 | |
; (i32.eq(get_local $2)(i32.const 1072693248)) | |
%14 = eq %4, 1072693248:i32 | |
%15:i32 = zext %14 | |
%16 = phi %10, 0:i32, %15 | |
%17 = phi %0, 0:i32, %16 | |
infer %17 | |
; RHS inferred successfully | |
result 0:i32 | |
----------------------------------------------------------- | |
; start LHS (in $_log10) | |
%0 = block 2 | |
%1:i64 = var | |
; (i64.lt_s(get_local $3)(i64.const 0)) | |
%2 = slt %1, 0:i64 | |
%3:i32 = zext %2 | |
%4:i32 = var | |
; (i32.lt_u(get_local $2)(i32.const 1048576)) | |
%5 = ult %4, 1048576:i32 | |
%6:i32 = zext %5 | |
; (i32.or(get_local $5)(get_local $18)) | |
%7 = or %3, %6 | |
; (i32.ne(unreachable)(unreachable)) | |
%8 = ne %7, 0:i32 | |
blockpc %0 0 %8 1:i1 | |
; (i32.eq(unreachable)(unreachable)) | |
%9 = eq %7, 0:i32 | |
blockpc %0 1 %9 1:i1 | |
%10 = block 2 | |
; (i32.le_u(get_local $2)(i32.const 2146435071)) | |
%11 = ule %4, 2146435071:i32 | |
blockpc %10 0 %11 1:i1 | |
%12:i32 = zext %11 | |
; (i32.eq(unreachable)(unreachable)) | |
%13 = eq %12, 0:i32 | |
blockpc %10 1 %13 1:i1 | |
; (i64.and(get_local $3)(i64.const 4294967295)) | |
%14 = and %1, 4294967295:i64 | |
; (i64.eq(get_local $41)(i64.const 0)) | |
%15 = eq %14, 0:i64 | |
%16:i32 = zext %15 | |
; (i32.eq(get_local $2)(i32.const 1072693248)) | |
%17 = eq %4, 1072693248:i32 | |
%18:i32 = zext %17 | |
; (i32.and(get_local $42)(get_local $44)) | |
%19 = and %16, %18 | |
%20 = phi %10, 0:i32, %19 | |
%21 = phi %0, 0:i32, %20 | |
infer %21 | |
; RHS inferred successfully | |
result 0:i32 | |
----------------------------------------------------------- | |
; start LHS (in $_g_write) | |
%0 = block 2 | |
%1:i32 = var | |
; (i32.eq(get_local $30)(i32.const 3)) | |
%2 = eq %1, 3:i32 | |
blockpc %0 0 %2 1:i1 | |
%3:i32 = zext %2 | |
; (i32.eq(unreachable)(unreachable)) | |
%4 = eq %3, 0:i32 | |
blockpc %0 1 %4 1:i1 | |
%5 = block 2 | |
%6:i32 = var | |
; (i32.ne(unreachable)(unreachable)) | |
%7 = ne %6, 0:i32 | |
blockpc %5 0 %7 1:i1 | |
; (i32.eq(unreachable)(unreachable)) | |
%8 = eq %6, 0:i32 | |
blockpc %5 1 %8 1:i1 | |
%9:i32 = var | |
; (i32.le_s(i32.const 0)(get_local $39)) | |
%10 = sle 0:i32, %9 | |
%11:i32 = zext %10 | |
%12 = phi %5, %11, 0:i32 | |
%13 = block 2 | |
; (i32.ne(unreachable)(unreachable)) | |
%14 = ne %6, 0:i32 | |
blockpc %13 0 %14 1:i1 | |
; (i32.eq(unreachable)(unreachable)) | |
%15 = eq %6, 0:i32 | |
blockpc %13 1 %15 1:i1 | |
%16:i32 = var | |
%17:i32 = var | |
; (i32.eq(get_local $54)(get_local $56)) | |
%18 = eq %16, %17 | |
%19:i32 = zext %18 | |
%20 = phi %13, %19, 0:i32 | |
%21 = phi %0, %12, %20 | |
; (i32.and(get_local $4)(i32.const 1)) | |
%22 = and %21, 1:i32 | |
infer %22 | |
; RHS inferred successfully | |
result %21 | |
----------------------------------------------------------- | |
; start LHS (in $_dispose_chunk) | |
%0 = block 2 | |
%1:i32 = var | |
; (i32.and(get_local $3)(i32.const 1)) | |
%2 = and %1, 1:i32 | |
; (i32.eq(unreachable)(unreachable)) | |
%3 = eq %2, 0:i32 | |
blockpc %0 0 %3 1:i1 | |
%4:i32 = zext %3 | |
; (i32.eq(unreachable)(unreachable)) | |
%5 = eq %4, 0:i32 | |
blockpc %0 1 %5 1:i1 | |
; (i32.and(get_local $3)(i32.const 3)) | |
%6 = and %1, 3:i32 | |
; (i32.eq(unreachable)(unreachable)) | |
%7 = eq %6, 0:i32 | |
%8:i32 = zext %7 | |
%9 = phi %0, 0:i32, %8 | |
infer %9 | |
; RHS inferred successfully | |
result 0:i32 | |
----------------------------------------------------------- | |
; start LHS (in $_auxsort) | |
%0 = block 2 | |
%1:i32 = var | |
; (i32.ne(unreachable)(unreachable)) | |
%2 = ne %1, 0:i32 | |
blockpc %0 0 %2 1:i1 | |
; (i32.eq(unreachable)(unreachable)) | |
%3 = eq %1, 0:i32 | |
blockpc %0 1 %3 1:i1 | |
%4:i32 = var | |
; (i32.add(get_local $3)(i32.const 1)) | |
%5 = add %4, 1:i32 | |
%6:i32 = var | |
; (i32.add(get_local $3)(i32.const 1)) | |
%7 = add %6, 1:i32 | |
%8 = phi %0, %5, %7 | |
%9:i32 = var | |
; (i32.sub(get_local $3)(get_local $1)) | |
%10 = sub %8, %9 | |
%11:i32 = var | |
; (i32.sub(get_local $2)(get_local $3)) | |
%12 = sub %11, %8 | |
; (i32.lt_s(get_local $146)(get_local $149)) | |
%13 = slt %10, %12 | |
%14:i32 = zext %13 | |
; (i32.eq(unreachable)(unreachable)) | |
%15 = eq %14, 0:i32 | |
%16:i32 = zext %15 | |
; (i32.eq(unreachable)(unreachable)) | |
%17 = eq %16, 0:i32 | |
infer %17 | |
; RHS inferred successfully | |
result %13 | |
----------------------------------------------------------- | |
; start LHS (in $_assignment) | |
%0 = block 2 | |
%1:i32 = var | |
; (i32.ne(get_local $9)(i32.const 9)) | |
%2 = ne %1, 9:i32 | |
blockpc %0 0 %2 1:i1 | |
%3:i32 = zext %2 | |
; (i32.eq(unreachable)(unreachable)) | |
%4 = eq %3, 0:i32 | |
blockpc %0 1 %4 1:i1 | |
; (i32.eq(get_local $9)(i32.const 7)) | |
%5 = eq %1, 7:i32 | |
%6:i32 = zext %5 | |
%7 = phi %0, 0:i32, %6 | |
infer %7 | |
; RHS inferred successfully | |
result 0:i32 | |
----------------------------------------------------------- | |
; start LHS (in $_assignment) | |
%0 = block 5 | |
%1 = block 2 | |
%2:i32 = var | |
; (i32.ne(get_local $9)(i32.const 9)) | |
%3 = ne %2, 9:i32 | |
blockpc %1 0 %3 1:i1 | |
%4:i32 = zext %3 | |
; (i32.eq(unreachable)(unreachable)) | |
%5 = eq %4, 0:i32 | |
blockpc %1 1 %5 1:i1 | |
; (i32.eq(get_local $9)(i32.const 7)) | |
%6 = eq %2, 7:i32 | |
%7:i32 = zext %6 | |
%8 = phi %1, 0:i32, %7 | |
%9 = phi %0, %8, %8, 0:i32, 0:i32, 0:i32 | |
infer %9 | |
; RHS inferred successfully | |
result 0:i32 | |
----------------------------------------------------------- | |
; start LHS (in $___tan) | |
%0:i32 = var | |
; (i32.eq(unreachable)(unreachable)) | |
%1 = eq %0, 0:i32 | |
%2:i32 = zext %1 | |
; (i32.eq(unreachable)(unreachable)) | |
%3 = eq %2, 0:i32 | |
%4:i32 = zext %3 | |
; (i32.eq(unreachable)(unreachable)) | |
%5 = eq %4, 0:i32 | |
infer %5 | |
; RHS inferred successfully | |
result %1 | |
----------------------------------------------------------- | |
; start LHS (in $___tan) | |
%0 = block 2 | |
%1:i64 = var | |
; (i64.and(get_local $6)(i64.const 9223372002495037440)) | |
%2 = and %1, 9223372002495037440:i64 | |
; (i64.le_u(i64.const 4604249089280835584)(get_local $13)) | |
%3 = ule 4604249089280835584:i64, %2 | |
blockpc %0 0 %3 1:i1 | |
%4:i32 = zext %3 | |
; (i32.eq(unreachable)(unreachable)) | |
%5 = eq %4, 0:i32 | |
blockpc %0 1 %5 1:i1 | |
%6:i32 = var | |
%7 = phi %0, 0:i32, %6 | |
; (i32.eq(unreachable)(unreachable)) | |
%8 = eq %7, 0:i32 | |
pc %3 1:i1 | |
infer %8 | |
; RHS inferred successfully | |
result 1:i1 | |
----------------------------------------------------------- | |
; start LHS (in $___floatscan) | |
%0:i32 = var | |
; (i32.eq(unreachable)(unreachable)) | |
%1 = eq %0, 0:i32 | |
%2:i32 = zext %1 | |
; (i32.eq(unreachable)(unreachable)) | |
%3 = eq %2, 0:i32 | |
%4:i32 = zext %3 | |
; (i32.eq(unreachable)(unreachable)) | |
%5 = eq %4, 0:i32 | |
infer %5 | |
; RHS inferred successfully | |
result %1 | |
----------------------------------------------------------- | |
; start LHS (in $___floatscan) | |
%0:i32 = var | |
; (i32.eq(unreachable)(unreachable)) | |
%1 = eq %0, 0:i32 | |
%2:i32 = zext %1 | |
; (i32.eq(unreachable)(unreachable)) | |
%3 = eq %2, 0:i32 | |
%4:i32 = zext %3 | |
; (i32.eq(unreachable)(unreachable)) | |
%5 = eq %4, 0:i32 | |
infer %5 | |
; RHS inferred successfully | |
result %1 | |
----------------------------------------------------------- | |
; start LHS (in $_LoadFunction) | |
%0:i32 = var | |
; (i32.le_s(i32.const 0)(get_local $4)) | |
%1 = sle 0:i32, %0 | |
%2:i32 = zext %1 | |
; (i32.eq(unreachable)(unreachable)) | |
%3 = eq %2, 0:i32 | |
pc %1 1:i1 | |
infer %3 | |
; RHS inferred successfully | |
result 0:i1 | |
----------------------------------------------------------- | |
; start LHS (in $_vfscanf) | |
%0:i32 = var | |
; (i32.and(get_local $11)(i32.const 47)) | |
%1 = and %0, 47:i32 | |
; (i32.eq(get_local $227)(i32.const 3)) | |
%2 = eq %1, 3:i32 | |
%3:i32 = zext %2 | |
; (i32.eq(unreachable)(unreachable)) | |
%4 = eq %3, 0:i32 | |
%5:i32 = zext %4 | |
; (i32.eq(unreachable)(unreachable)) | |
%6 = eq %5, 0:i32 | |
infer %6 | |
; RHS inferred successfully | |
result %2 | |
----------------------------------------------------------- | |
; start LHS (in $_tmpfile) | |
%0 = block 2 | |
%1:i32 = var | |
; (i32.eq(unreachable)(unreachable)) | |
%2 = eq %1, 0:i32 | |
blockpc %0 0 %2 1:i1 | |
%3:i32 = zext %2 | |
; (i32.eq(unreachable)(unreachable)) | |
%4 = eq %3, 0:i32 | |
blockpc %0 1 %4 1:i1 | |
%5 = phi %0, %1, 0:i32 | |
infer %5 | |
; RHS inferred successfully | |
result 0:i32 | |
----------------------------------------------------------- | |
; start LHS (in $_tmpfile) | |
%0 = block 2 | |
%1 = block 2 | |
%2:i32 = var | |
; (i32.eq(unreachable)(unreachable)) | |
%3 = eq %2, 0:i32 | |
blockpc %1 0 %3 1:i1 | |
%4:i32 = zext %3 | |
; (i32.eq(unreachable)(unreachable)) | |
%5 = eq %4, 0:i32 | |
blockpc %1 1 %5 1:i1 | |
%6 = phi %1, %2, 0:i32 | |
%7 = phi %0, 0:i32, %6 | |
infer %7 | |
; RHS inferred successfully | |
result 0:i32 | |
----------------------------------------------------------- | |
; start LHS (in $_strtox) | |
%0 = block 2 | |
%1:i32 = var | |
; (i32.ne(unreachable)(unreachable)) | |
%2 = ne %1, 0:i32 | |
blockpc %0 0 %2 1:i1 | |
; (i32.eq(unreachable)(unreachable)) | |
%3 = eq %1, 0:i32 | |
blockpc %0 1 %3 1:i1 | |
%4 = phi %0, 0:i32, %1 | |
infer %4 | |
; RHS inferred successfully | |
result 0:i32 | |
----------------------------------------------------------- | |
; start LHS (in $_str_sub) | |
%0:i32 = var | |
; (i32.le_s(i32.const -1)(get_local $1)) | |
%1 = sle -1:i32, %0 | |
%2:i32 = zext %1 | |
; (i32.eq(unreachable)(unreachable)) | |
%3 = eq %2, 0:i32 | |
%4:i32 = zext %3 | |
; (i32.eq(unreachable)(unreachable)) | |
%5 = eq %4, 0:i32 | |
infer %5 | |
; RHS inferred successfully | |
result %1 | |
----------------------------------------------------------- | |
; start LHS (in $_str_sub) | |
%0:i32 = var | |
; (i32.le_s(i32.const -1)(get_local $2)) | |
%1 = sle -1:i32, %0 | |
%2:i32 = zext %1 | |
; (i32.eq(unreachable)(unreachable)) | |
%3 = eq %2, 0:i32 | |
%4:i32 = zext %3 | |
; (i32.eq(unreachable)(unreachable)) | |
%5 = eq %4, 0:i32 | |
infer %5 | |
; RHS inferred successfully | |
result %1 | |
----------------------------------------------------------- | |
; start LHS (in $_str_rep) | |
%0:i32 = var | |
; (i32.le_s(i32.const 1)(get_local $1)) | |
%1 = sle 1:i32, %0 | |
%2:i32 = var | |
%3:i32 = var | |
; (i32.add(get_local $5)(get_local $2)) | |
%4 = add %2, %3 | |
; (i32.div_u(i32.const 2147483647)(get_local $1)) | |
%5 = udiv 2147483647:i32, %0 | |
; (i32.lt_u(get_local $7)(get_local $45)) | |
%6 = ult %4, %5 | |
; (i32.lt_u(get_local $2)(get_local $7)) | |
%7 = ult %3, %4 | |
pc %6 1:i1 | |
pc %7 1:i1 | |
infer %1 | |
; RHS inferred successfully | |
result 1:i1 | |
----------------------------------------------------------- | |
; start LHS (in $_str_byte) | |
%0 = block 2 | |
%1:i32 = var | |
%2 = block 2 | |
%3:i32 = var | |
; (i32.le_s(i32.const -1)(get_local $2)) | |
%4 = sle -1:i32, %3 | |
blockpc %2 0 %4 1:i1 | |
%5:i32 = zext %4 | |
; (i32.eq(unreachable)(unreachable)) | |
%6 = eq %5, 0:i32 | |
blockpc %2 1 %6 1:i1 | |
%7 = block 2 | |
; (i32.sub(i32.const 0)(get_local $2)) | |
%8 = sub 0:i32, %3 | |
; (i32.lt_u(get_local $1)(get_local $48)) | |
%9 = ult %1, %8 | |
blockpc %7 0 %9 1:i1 | |
%10:i32 = zext %9 | |
; (i32.eq(unreachable)(unreachable)) | |
%11 = eq %10, 0:i32 | |
blockpc %7 1 %11 1:i1 | |
; (i32.add(get_local $2)(i32.const 1)) | |
%12 = add %3, 1:i32 | |
; (i32.add(get_local $41)(get_local $1)) | |
%13 = add %12, %1 | |
%14 = phi %7, %13, 0:i32 | |
%15 = phi %2, %14, %3 | |
; (i32.le_u(get_local $1)(get_local $4)) | |
%16 = ule %1, %15 | |
blockpc %0 0 %16 1:i1 | |
%17:i32 = zext %16 | |
; (i32.eq(unreachable)(unreachable)) | |
%18 = eq %17, 0:i32 | |
blockpc %0 1 %18 1:i1 | |
%19 = phi %0, %1, %15 | |
; (i32.eq(get_local $1)(i32.const -1)) | |
%20 = eq %19, -1:i32 | |
infer %20 | |
; RHS inferred successfully | |
result 0:i1 | |
----------------------------------------------------------- | |
; start LHS (in $_setlocale) | |
%0:i32 = var | |
; (i32.ne(get_local $0)(i32.const 6)) | |
%1 = ne %0, 6:i32 | |
; (i32.le_u(i32.const 6)(get_local $0)) | |
%2 = ule 6:i32, %0 | |
%3:i32 = zext %2 | |
; (i32.eq(unreachable)(unreachable)) | |
%4 = eq %3, 0:i32 | |
pc %4 1:i1 | |
infer %1 | |
; RHS inferred successfully | |
result 1:i1 | |
----------------------------------------------------------- | |
; start LHS (in $_resume) | |
%0 = block 2 | |
%1:i32 = var | |
; (i32.ne(unreachable)(unreachable)) | |
%2 = ne %1, 0:i32 | |
blockpc %0 0 %2 1:i1 | |
; (i32.eq(unreachable)(unreachable)) | |
%3 = eq %1, 0:i32 | |
blockpc %0 1 %3 1:i1 | |
; (i32.and(get_local $7)(i32.const 255)) | |
%4 = and %1, 255:i32 | |
%5 = phi %0, 0:i32, %4 | |
infer %5 | |
; RHS inferred successfully | |
result 0:i32 | |
----------------------------------------------------------- | |
; start LHS (in $_pcallcont) | |
%0 = block 2 | |
%1:i32 = var | |
%2 = phi %0, 0:i32, %1 | |
; (i32.eq(get_local $2)(i32.const 1)) | |
%3 = eq %2, 1:i32 | |
%4:i32 = zext %3 | |
; (i32.ne(get_local $23)(i32.const 0)) | |
%5 = ne %4, 0:i32 | |
%6:i32 = var | |
; (i32.ne(unreachable)(unreachable)) | |
%7 = ne %6, 0:i32 | |
pc %7 1:i1 | |
infer %5 | |
; RHS inferred successfully | |
result %3 | |
----------------------------------------------------------- | |
; start LHS (in $_pcallcont) | |
%0 = block 2 | |
%1:i32 = var | |
%2 = phi %0, 0:i32, %1 | |
; (i32.eq(get_local $2)(i32.const 1)) | |
%3 = eq %2, 1:i32 | |
%4:i32 = zext %3 | |
; (i32.ne(get_local $23)(i32.const 0)) | |
%5 = ne %4, 0:i32 | |
%6:i32 = zext %5 | |
infer %6 | |
; RHS inferred successfully | |
result %4 | |
----------------------------------------------------------- | |
; start LHS (in $_luaV_finishOp) | |
%0 = block 3 | |
%1:i32 = var | |
; (i32.eq(unreachable)(unreachable)) | |
%2 = eq %1, 0:i32 | |
%3:i32 = zext %2 | |
%4 = phi %0, 1:i32, %3, 0:i32 | |
; (i32.xor(get_local $1)(i32.const 1)) | |
%5 = xor %4, 1:i32 | |
; (i32.and(get_local $64)(i32.const 1)) | |
%6 = and %5, 1:i32 | |
%7:i32 = var | |
; (i32.and(get_local $3)(i32.const 63)) | |
%8 = and %7, 63:i32 | |
; (i32.eq(get_local $7)(i32.const 26)) | |
%9 = eq %8, 26:i32 | |
%10:i32 = zext %9 | |
; (i32.eq(unreachable)(unreachable)) | |
%11 = eq %10, 0:i32 | |
pc %11 1:i1 | |
infer %6 | |
; RHS inferred successfully | |
result %5 | |
----------------------------------------------------------- | |
; start LHS (in $_luaV_finishOp) | |
%0 = block 3 | |
%1:i32 = var | |
; (i32.eq(unreachable)(unreachable)) | |
%2 = eq %1, 0:i32 | |
%3:i32 = zext %2 | |
%4 = phi %0, 1:i32, %3, 0:i32 | |
; (i32.and(get_local $1)(i32.const 1)) | |
%5 = and %4, 1:i32 | |
%6:i32 = var | |
; (i32.eq(unreachable)(unreachable)) | |
%7 = eq %6, 0:i32 | |
%8:i32 = var | |
; (i32.and(get_local $3)(i32.const 63)) | |
%9 = and %8, 63:i32 | |
; (i32.eq(get_local $7)(i32.const 26)) | |
%10 = eq %9, 26:i32 | |
pc %7 1:i1 | |
pc %10 1:i1 | |
infer %5 | |
; RHS inferred successfully | |
result %4 | |
----------------------------------------------------------- | |
; start LHS (in $_luaL_addstring) | |
%0 = block 2 | |
%1:i32 = var | |
; (i32.shl(get_local $3)(i32.const 1)) | |
%2 = shl %1, 1:i32 | |
%3:i32 = var | |
; (i32.sub(get_local $3)(get_local $5)) | |
%4 = sub %2, %3 | |
%5:i32 = var | |
; (i32.lt_u(get_local $50)(get_local $2)) | |
%6 = ult %4, %5 | |
blockpc %0 0 %6 1:i1 | |
%7:i32 = zext %6 | |
; (i32.eq(unreachable)(unreachable)) | |
%8 = eq %7, 0:i32 | |
blockpc %0 1 %8 1:i1 | |
; (i32.add(get_local $5)(get_local $2)) | |
%9 = add %3, %5 | |
%10 = phi %0, %9, %2 | |
; (i32.sub(get_local $6)(get_local $5)) | |
%11 = sub %10, %3 | |
; (i32.lt_u(get_local $62)(get_local $2)) | |
%12 = ult %11, %5 | |
infer %12 | |
; RHS inferred successfully | |
result 0:i1 | |
----------------------------------------------------------- | |
; start LHS (in $_luaL_addstring) | |
%0 = block 2 | |
%1:i32 = var | |
; (i32.shl(get_local $3)(i32.const 1)) | |
%2 = shl %1, 1:i32 | |
%3:i32 = var | |
; (i32.sub(get_local $3)(get_local $5)) | |
%4 = sub %2, %3 | |
%5:i32 = var | |
; (i32.lt_u(get_local $50)(get_local $2)) | |
%6 = ult %4, %5 | |
blockpc %0 0 %6 1:i1 | |
%7:i32 = zext %6 | |
; (i32.eq(unreachable)(unreachable)) | |
%8 = eq %7, 0:i32 | |
blockpc %0 1 %8 1:i1 | |
; (i32.add(get_local $5)(get_local $2)) | |
%9 = add %3, %5 | |
%10 = phi %0, %9, %2 | |
; (i32.sub(get_local $6)(get_local $5)) | |
%11 = sub %10, %3 | |
; (i32.lt_u(get_local $62)(get_local $2)) | |
%12 = ult %11, %5 | |
%13:i32 = zext %12 | |
infer %13 | |
; RHS inferred successfully | |
result 0:i32 | |
----------------------------------------------------------- | |
; start LHS (in $_luaL_addstring) | |
%0 = block 2 | |
%1:i32 = var | |
; (i32.shl(get_local $3)(i32.const 1)) | |
%2 = shl %1, 1:i32 | |
%3:i32 = var | |
; (i32.sub(get_local $3)(get_local $5)) | |
%4 = sub %2, %3 | |
%5:i32 = var | |
; (i32.lt_u(get_local $50)(get_local $2)) | |
%6 = ult %4, %5 | |
blockpc %0 0 %6 1:i1 | |
%7:i32 = zext %6 | |
; (i32.eq(unreachable)(unreachable)) | |
%8 = eq %7, 0:i32 | |
blockpc %0 1 %8 1:i1 | |
; (i32.add(get_local $5)(get_local $2)) | |
%9 = add %3, %5 | |
%10 = phi %0, %9, %2 | |
; (i32.lt_u(get_local $56)(get_local $5)) | |
%11 = ult %10, %3 | |
%12:i32 = zext %11 | |
%13 = phi %0, %9, %2 | |
; (i32.sub(get_local $6)(get_local $5)) | |
%14 = sub %13, %3 | |
; (i32.lt_u(get_local $62)(get_local $2)) | |
%15 = ult %14, %5 | |
%16:i32 = zext %15 | |
; (i32.or(get_local $59)(get_local $64)) | |
%17 = or %12, %16 | |
infer %17 | |
; RHS inferred successfully | |
result %12 | |
----------------------------------------------------------- | |
; start LHS (in $_luaL_addstring) | |
%0 = block 2 | |
%1:i32 = var | |
; (i32.shl(get_local $3)(i32.const 1)) | |
%2 = shl %1, 1:i32 | |
%3:i32 = var | |
; (i32.sub(get_local $3)(get_local $5)) | |
%4 = sub %2, %3 | |
%5:i32 = var | |
; (i32.lt_u(get_local $50)(get_local $2)) | |
%6 = ult %4, %5 | |
blockpc %0 0 %6 1:i1 | |
%7:i32 = zext %6 | |
; (i32.eq(unreachable)(unreachable)) | |
%8 = eq %7, 0:i32 | |
blockpc %0 1 %8 1:i1 | |
; (i32.add(get_local $5)(get_local $2)) | |
%9 = add %3, %5 | |
%10 = phi %0, %9, %2 | |
; (i32.lt_u(get_local $56)(get_local $5)) | |
%11 = ult %10, %3 | |
%12:i32 = zext %11 | |
%13 = phi %0, %9, %2 | |
; (i32.sub(get_local $6)(get_local $5)) | |
%14 = sub %13, %3 | |
; (i32.lt_u(get_local $62)(get_local $2)) | |
%15 = ult %14, %5 | |
%16:i32 = zext %15 | |
; (i32.or(get_local $59)(get_local $64)) | |
%17 = or %12, %16 | |
; (i32.ne(unreachable)(unreachable)) | |
%18 = ne %17, 0:i32 | |
infer %18 | |
; RHS inferred successfully | |
result %11 | |
----------------------------------------------------------- | |
; start LHS (in $_luaK_self) | |
%0:i32 = var | |
; (i32.add(get_local $39)(i32.const 2)) | |
%1 = add %0, 2:i32 | |
; (i32.and(get_local $1)(i32.const 255)) | |
%2 = and %1, 255:i32 | |
; (i32.le_u(i32.const 249)(get_local $1)) | |
%3 = ule 249:i32, %1 | |
%4:i32 = zext %3 | |
; (i32.eq(unreachable)(unreachable)) | |
%5 = eq %4, 0:i32 | |
%6:i32 = var | |
; (i32.le_u(get_local $46)(get_local $1)) | |
%7 = ule %6, %1 | |
pc %5 1:i1 | |
pc %7 1:i1 | |
infer %2 | |
; RHS inferred successfully | |
result %1 | |
----------------------------------------------------------- | |
; start LHS (in $_luaK_prefix) | |
%0 = block 2 | |
%1:i32 = var | |
; (i32.and(get_local $1)(i32.const 255)) | |
%2 = and %1, 255:i32 | |
%3:i32 = var | |
; (i32.lt_s(get_local $85)(get_local $90)) | |
%4 = slt %2, %3 | |
blockpc %0 0 %4 1:i1 | |
%5:i32 = zext %4 | |
; (i32.eq(unreachable)(unreachable)) | |
%6 = eq %5, 0:i32 | |
blockpc %0 1 %6 1:i1 | |
; (i32.add(get_local $1)(i32.const 1)) | |
%7 = add %1, 1:i32 | |
; (i32.and(get_local $3)(i32.const 255)) | |
%8 = and %7, 255:i32 | |
%9 = block 2 | |
; (i32.and(get_local $1)(i32.const 255)) | |
%10 = and %1, 255:i32 | |
; (i32.le_s(i32.const 248)(get_local $95)) | |
%11 = sle 248:i32, %10 | |
blockpc %9 0 %11 1:i1 | |
%12:i32 = zext %11 | |
; (i32.eq(unreachable)(unreachable)) | |
%13 = eq %12, 0:i32 | |
blockpc %9 1 %13 1:i1 | |
; (i32.and(get_local $3)(i32.const 255)) | |
%14 = and %7, 255:i32 | |
%15 = phi %9, 0:i32, %14 | |
%16 = phi %0, %8, %15 | |
; (i32.and(get_local $4)(i32.const 255)) | |
%17 = and %16, 255:i32 | |
infer %17 | |
; RHS inferred successfully | |
result %16 | |
----------------------------------------------------------- | |
; start LHS (in $_luaK_posfix) | |
%0 = block 2 | |
%1:i32 = var | |
; (i32.and(get_local $5)(i32.const 255)) | |
%2 = and %1, 255:i32 | |
%3:i32 = var | |
; (i32.lt_s(get_local $228)(get_local $233)) | |
%4 = slt %2, %3 | |
blockpc %0 0 %4 1:i1 | |
%5:i32 = zext %4 | |
; (i32.eq(unreachable)(unreachable)) | |
%6 = eq %5, 0:i32 | |
blockpc %0 1 %6 1:i1 | |
; (i32.add(get_local $5)(i32.const 1)) | |
%7 = add %1, 1:i32 | |
; (i32.and(get_local $6)(i32.const 255)) | |
%8 = and %7, 255:i32 | |
%9 = block 2 | |
; (i32.and(get_local $5)(i32.const 255)) | |
%10 = and %1, 255:i32 | |
; (i32.le_s(i32.const 248)(get_local $238)) | |
%11 = sle 248:i32, %10 | |
blockpc %9 0 %11 1:i1 | |
%12:i32 = zext %11 | |
; (i32.eq(unreachable)(unreachable)) | |
%13 = eq %12, 0:i32 | |
blockpc %9 1 %13 1:i1 | |
; (i32.and(get_local $6)(i32.const 255)) | |
%14 = and %7, 255:i32 | |
%15 = phi %9, 0:i32, %14 | |
%16 = phi %0, %8, %15 | |
; (i32.and(get_local $8)(i32.const 255)) | |
%17 = and %16, 255:i32 | |
infer %17 | |
; RHS inferred successfully | |
result %16 | |
----------------------------------------------------------- | |
; start LHS (in $_luaD_poscall) | |
%0:i32 = var | |
; (i32.add(get_local $6)(i32.const 1)) | |
%1 = add %0, 1:i32 | |
; (i32.eq(unreachable)(unreachable)) | |
%2 = eq %0, 0:i32 | |
pc %2 1:i1 | |
infer %1 | |
; RHS inferred successfully | |
result 1:i32 | |
----------------------------------------------------------- | |
; start LHS (in $_luaB_xpcall) | |
%0:i32 = var | |
; (i32.eq(unreachable)(unreachable)) | |
%1 = eq %0, 0:i32 | |
%2:i32 = zext %1 | |
; (i32.ne(get_local $32)(i32.const 0)) | |
%3 = ne %2, 0:i32 | |
%4:i32 = var | |
; (i32.ne(unreachable)(unreachable)) | |
%5 = ne %4, 0:i32 | |
pc %5 1:i1 | |
infer %3 | |
; RHS inferred successfully | |
result %1 | |
----------------------------------------------------------- | |
; start LHS (in $_luaB_xpcall) | |
%0:i32 = var | |
; (i32.eq(unreachable)(unreachable)) | |
%1 = eq %0, 0:i32 | |
%2:i32 = zext %1 | |
; (i32.ne(get_local $32)(i32.const 0)) | |
%3 = ne %2, 0:i32 | |
%4:i32 = zext %3 | |
infer %4 | |
; RHS inferred successfully | |
result %2 | |
----------------------------------------------------------- | |
; start LHS (in $_luaB_pcall) | |
%0:i32 = var | |
; (i32.eq(unreachable)(unreachable)) | |
%1 = eq %0, 0:i32 | |
%2:i32 = zext %1 | |
; (i32.ne(get_local $34)(i32.const 0)) | |
%3 = ne %2, 0:i32 | |
%4:i32 = var | |
; (i32.ne(unreachable)(unreachable)) | |
%5 = ne %4, 0:i32 | |
pc %5 1:i1 | |
infer %3 | |
; RHS inferred successfully | |
result %1 | |
----------------------------------------------------------- | |
; start LHS (in $_luaB_pcall) | |
%0:i32 = var | |
; (i32.eq(unreachable)(unreachable)) | |
%1 = eq %0, 0:i32 | |
%2:i32 = zext %1 | |
; (i32.ne(get_local $34)(i32.const 0)) | |
%3 = ne %2, 0:i32 | |
%4:i32 = zext %3 | |
infer %4 | |
; RHS inferred successfully | |
result %2 | |
----------------------------------------------------------- | |
; start LHS (in $_luaB_loadfile) | |
%0:i32 = var | |
; (i32.ne(get_local $3)(i32.const -1)) | |
%1 = ne %0, -1:i32 | |
%2:i32 = zext %1 | |
; (i32.eq(unreachable)(unreachable)) | |
%3 = eq %2, 0:i32 | |
%4:i32 = zext %3 | |
; (i32.eq(unreachable)(unreachable)) | |
%5 = eq %4, 0:i32 | |
infer %5 | |
; RHS inferred successfully | |
result %1 | |
----------------------------------------------------------- | |
; start LHS (in $_luaB_load) | |
%0:i32 = var | |
; (i32.ne(get_local $5)(i32.const -1)) | |
%1 = ne %0, -1:i32 | |
%2:i32 = zext %1 | |
; (i32.eq(unreachable)(unreachable)) | |
%3 = eq %2, 0:i32 | |
%4:i32 = zext %3 | |
; (i32.eq(unreachable)(unreachable)) | |
%5 = eq %4, 0:i32 | |
infer %5 | |
; RHS inferred successfully | |
result %1 | |
----------------------------------------------------------- | |
; start LHS (in $_hexfloat) | |
%0 = block 2 | |
%1:i32 = var | |
; (i32.le_s(get_local $7)(i32.const 57)) | |
%2 = sle %1, 57:i32 | |
blockpc %0 0 %2 1:i1 | |
%3:i32 = zext %2 | |
; (i32.eq(unreachable)(unreachable)) | |
%4 = eq %3, 0:i32 | |
blockpc %0 1 %4 1:i1 | |
; (i32.or(get_local $7)(i32.const 32)) | |
%5 = or %1, 32:i32 | |
; (i32.add(get_local $17)(i32.const -87)) | |
%6 = add %5, -87:i32 | |
; (i32.add(get_local $7)(i32.const -48)) | |
%7 = add %1, -48:i32 | |
%8 = phi %0, %6, %7 | |
; (i32.eq(unreachable)(unreachable)) | |
%9 = eq %8, 0:i32 | |
%10:i64 = var | |
; (i64.lt_s(get_local $12)(i64.const 14)) | |
%11 = slt %10, 14:i64 | |
%12:i32 = zext %11 | |
; (i32.eq(unreachable)(unreachable)) | |
%13 = eq %12, 0:i32 | |
; (i64.lt_s(get_local $12)(i64.const 8)) | |
%14 = slt %10, 8:i64 | |
%15:i32 = zext %14 | |
; (i32.eq(unreachable)(unreachable)) | |
%16 = eq %15, 0:i32 | |
pc %13 1:i1 | |
pc %16 1:i1 | |
infer %9 | |
; RHS inferred successfully | |
result 0:i1 | |
----------------------------------------------------------- | |
; start LHS (in $_hexfloat) | |
%0 = block 2 | |
%1:i32 = var | |
; (i32.le_s(get_local $7)(i32.const 57)) | |
%2 = sle %1, 57:i32 | |
blockpc %0 0 %2 1:i1 | |
%3:i32 = zext %2 | |
; (i32.eq(unreachable)(unreachable)) | |
%4 = eq %3, 0:i32 | |
blockpc %0 1 %4 1:i1 | |
; (i32.or(get_local $7)(i32.const 32)) | |
%5 = or %1, 32:i32 | |
; (i32.add(get_local $17)(i32.const -87)) | |
%6 = add %5, -87:i32 | |
; (i32.add(get_local $7)(i32.const -48)) | |
%7 = add %1, -48:i32 | |
%8 = phi %0, %6, %7 | |
; (i32.eq(unreachable)(unreachable)) | |
%9 = eq %8, 0:i32 | |
%10:i32 = zext %9 | |
infer %10 | |
; RHS inferred successfully | |
result 0:i32 | |
----------------------------------------------------------- | |
; start LHS (in $_hexfloat) | |
%0:i32 = var | |
; (i32.ne(get_local $20)(i32.const 0)) | |
%1 = ne %0, 0:i32 | |
%2:i32 = zext %1 | |
%3 = block 2 | |
%4:i32 = var | |
; (i32.le_s(get_local $7)(i32.const 57)) | |
%5 = sle %4, 57:i32 | |
blockpc %3 0 %5 1:i1 | |
%6:i32 = zext %5 | |
; (i32.eq(unreachable)(unreachable)) | |
%7 = eq %6, 0:i32 | |
blockpc %3 1 %7 1:i1 | |
; (i32.or(get_local $7)(i32.const 32)) | |
%8 = or %4, 32:i32 | |
; (i32.add(get_local $17)(i32.const -87)) | |
%9 = add %8, -87:i32 | |
; (i32.add(get_local $7)(i32.const -48)) | |
%10 = add %4, -48:i32 | |
%11 = phi %3, %9, %10 | |
; (i32.eq(unreachable)(unreachable)) | |
%12 = eq %11, 0:i32 | |
%13:i32 = zext %12 | |
; (i32.or(get_local $147)(get_local $149)) | |
%14 = or %2, %13 | |
%15:i64 = var | |
; (i64.lt_s(get_local $12)(i64.const 14)) | |
%16 = slt %15, 14:i64 | |
%17:i32 = zext %16 | |
; (i32.eq(unreachable)(unreachable)) | |
%18 = eq %17, 0:i32 | |
; (i64.lt_s(get_local $12)(i64.const 8)) | |
%19 = slt %15, 8:i64 | |
%20:i32 = zext %19 | |
; (i32.eq(unreachable)(unreachable)) | |
%21 = eq %20, 0:i32 | |
pc %18 1:i1 | |
pc %21 1:i1 | |
infer %14 | |
; RHS inferred successfully | |
result %2 | |
----------------------------------------------------------- | |
; start LHS (in $_hexfloat) | |
%0:i32 = var | |
; (i32.ne(get_local $20)(i32.const 0)) | |
%1 = ne %0, 0:i32 | |
%2:i32 = zext %1 | |
%3 = block 2 | |
%4:i32 = var | |
; (i32.le_s(get_local $7)(i32.const 57)) | |
%5 = sle %4, 57:i32 | |
blockpc %3 0 %5 1:i1 | |
%6:i32 = zext %5 | |
; (i32.eq(unreachable)(unreachable)) | |
%7 = eq %6, 0:i32 | |
blockpc %3 1 %7 1:i1 | |
; (i32.or(get_local $7)(i32.const 32)) | |
%8 = or %4, 32:i32 | |
; (i32.add(get_local $17)(i32.const -87)) | |
%9 = add %8, -87:i32 | |
; (i32.add(get_local $7)(i32.const -48)) | |
%10 = add %4, -48:i32 | |
%11 = phi %3, %9, %10 | |
; (i32.eq(unreachable)(unreachable)) | |
%12 = eq %11, 0:i32 | |
%13:i32 = zext %12 | |
; (i32.or(get_local $147)(get_local $149)) | |
%14 = or %2, %13 | |
; (i32.eq(unreachable)(unreachable)) | |
%15 = eq %14, 0:i32 | |
%16:i32 = zext %15 | |
; (i32.eq(unreachable)(unreachable)) | |
%17 = eq %16, 0:i32 | |
infer %17 | |
; RHS inferred successfully | |
result %1 | |
----------------------------------------------------------- | |
; start LHS (in $_hexfloat) | |
%0:i32 = var | |
; (i32.ne(get_local $20)(i32.const 0)) | |
%1 = ne %0, 0:i32 | |
%2:i32 = zext %1 | |
%3 = block 2 | |
%4:i32 = var | |
; (i32.le_s(get_local $7)(i32.const 57)) | |
%5 = sle %4, 57:i32 | |
blockpc %3 0 %5 1:i1 | |
%6:i32 = zext %5 | |
; (i32.eq(unreachable)(unreachable)) | |
%7 = eq %6, 0:i32 | |
blockpc %3 1 %7 1:i1 | |
; (i32.or(get_local $7)(i32.const 32)) | |
%8 = or %4, 32:i32 | |
; (i32.add(get_local $17)(i32.const -87)) | |
%9 = add %8, -87:i32 | |
; (i32.add(get_local $7)(i32.const -48)) | |
%10 = add %4, -48:i32 | |
%11 = phi %3, %9, %10 | |
; (i32.eq(unreachable)(unreachable)) | |
%12 = eq %11, 0:i32 | |
%13:i32 = zext %12 | |
; (i32.or(get_local $147)(get_local $149)) | |
%14 = or %2, %13 | |
; (i32.eq(unreachable)(unreachable)) | |
%15 = eq %14, 0:i32 | |
%16:i32 = zext %15 | |
; (i32.eq(unreachable)(unreachable)) | |
%17 = eq %16, 0:i32 | |
infer %17 | |
; RHS inferred successfully | |
result %1 | |
----------------------------------------------------------- | |
; start LHS (in $_hexfloat) | |
%0 = block 2 | |
%1:i32 = var | |
; (i32.le_s(get_local $7)(i32.const 57)) | |
%2 = sle %1, 57:i32 | |
blockpc %0 0 %2 1:i1 | |
%3:i32 = zext %2 | |
; (i32.eq(unreachable)(unreachable)) | |
%4 = eq %3, 0:i32 | |
blockpc %0 1 %4 1:i1 | |
; (i32.or(get_local $7)(i32.const 32)) | |
%5 = or %1, 32:i32 | |
; (i32.add(get_local $17)(i32.const -87)) | |
%6 = add %5, -87:i32 | |
; (i32.add(get_local $7)(i32.const -48)) | |
%7 = add %1, -48:i32 | |
%8 = phi %0, %6, %7 | |
; (i32.eq(unreachable)(unreachable)) | |
%9 = eq %8, 0:i32 | |
%10:i32 = zext %9 | |
infer %10 | |
; RHS inferred successfully | |
result 0:i32 | |
----------------------------------------------------------- | |
; start LHS (in $_hexfloat) | |
%0:i32 = var | |
; (i32.eq(unreachable)(unreachable)) | |
%1 = eq %0, 0:i32 | |
%2:i32 = zext %1 | |
; (i32.eq(unreachable)(unreachable)) | |
%3 = eq %2, 0:i32 | |
%4:i32 = zext %3 | |
; (i32.eq(unreachable)(unreachable)) | |
%5 = eq %4, 0:i32 | |
infer %5 | |
; RHS inferred successfully | |
result %1 | |
----------------------------------------------------------- | |
; start LHS (in $_hexfloat) | |
%0:i32 = var | |
; (i32.eq(unreachable)(unreachable)) | |
%1 = eq %0, 0:i32 | |
%2:i32 = zext %1 | |
; (i32.eq(unreachable)(unreachable)) | |
%3 = eq %2, 0:i32 | |
%4:i32 = zext %3 | |
; (i32.eq(unreachable)(unreachable)) | |
%5 = eq %4, 0:i32 | |
infer %5 | |
; RHS inferred successfully | |
result %1 | |
----------------------------------------------------------- | |
; start LHS (in $_fmt_fp) | |
%0:i32 = var | |
; (i32.and(get_local $4)(i32.const 2048)) | |
%1 = and %0, 2048:i32 | |
; (i32.eq(unreachable)(unreachable)) | |
%2 = eq %1, 0:i32 | |
%3:i32 = zext %2 | |
; (i32.eq(unreachable)(unreachable)) | |
%4 = eq %3, 0:i32 | |
%5:i32 = zext %4 | |
; (i32.eq(unreachable)(unreachable)) | |
%6 = eq %5, 0:i32 | |
infer %6 | |
; RHS inferred successfully | |
result %2 | |
----------------------------------------------------------- | |
; start LHS (in $_fmt_fp) | |
%0:i32 = var | |
; (i32.le_u(i32.const 11)(get_local $3)) | |
%1 = ule 11:i32, %0 | |
%2:i32 = zext %1 | |
; (i32.sub(i32.const 12)(get_local $3)) | |
%3 = sub 12:i32, %0 | |
; (i32.eq(unreachable)(unreachable)) | |
%4 = eq %3, 0:i32 | |
%5:i32 = zext %4 | |
; (i32.or(get_local $121)(get_local $125)) | |
%6 = or %2, %5 | |
%7:i32 = var | |
; (i32.or(get_local $5)(i32.const 32)) | |
%8 = or %7, 32:i32 | |
; (i32.eq(get_local $11)(i32.const 97)) | |
%9 = eq %8, 97:i32 | |
%10:i64 = var | |
; (i64.and(get_local $60)(i64.const 9218868437227405312)) | |
%11 = and %10, 9218868437227405312:i64 | |
; (i64.eq(get_local $61)(i64.const 9218868437227405312)) | |
%12 = eq %11, 9218868437227405312:i64 | |
%13:i32 = zext %12 | |
; (i32.eq(unreachable)(unreachable)) | |
%14 = eq %13, 0:i32 | |
pc %9 1:i1 | |
pc %14 1:i1 | |
infer %6 | |
; RHS inferred successfully | |
result %2 | |
----------------------------------------------------------- | |
; start LHS (in $_fmt_fp) | |
%0:i32 = var | |
; (i32.le_u(i32.const 11)(get_local $3)) | |
%1 = ule 11:i32, %0 | |
%2:i32 = zext %1 | |
; (i32.sub(i32.const 12)(get_local $3)) | |
%3 = sub 12:i32, %0 | |
; (i32.eq(unreachable)(unreachable)) | |
%4 = eq %3, 0:i32 | |
%5:i32 = zext %4 | |
; (i32.or(get_local $121)(get_local $125)) | |
%6 = or %2, %5 | |
; (i32.eq(unreachable)(unreachable)) | |
%7 = eq %6, 0:i32 | |
%8:i32 = zext %7 | |
; (i32.eq(unreachable)(unreachable)) | |
%9 = eq %8, 0:i32 | |
infer %9 | |
; RHS inferred successfully | |
result %1 | |
----------------------------------------------------------- | |
; start LHS (in $_fmt_fp) | |
%0:i32 = var | |
; (i32.eq(get_local $563)(i32.const 45)) | |
%1 = eq %0, 45:i32 | |
%2:i32 = zext %1 | |
; (i32.eq(unreachable)(unreachable)) | |
%3 = eq %2, 0:i32 | |
%4:i32 = zext %3 | |
; (i32.eq(unreachable)(unreachable)) | |
%5 = eq %4, 0:i32 | |
infer %5 | |
; RHS inferred successfully | |
result %1 | |
----------------------------------------------------------- | |
; start LHS (in $_fmt_fp) | |
%0 = block 2 | |
%1:i32 = var | |
; (i32.lt_s(get_local $3)(i32.const 0)) | |
%2 = slt %1, 0:i32 | |
blockpc %0 0 %2 1:i1 | |
%3:i32 = zext %2 | |
; (i32.eq(unreachable)(unreachable)) | |
%4 = eq %3, 0:i32 | |
blockpc %0 1 %4 1:i1 | |
%5 = phi %0, 6:i32, %1 | |
; (i32.ne(get_local $10)(i32.const 0)) | |
%6 = ne %5, 0:i32 | |
%7:i32 = zext %6 | |
; (i32.xor(get_local $23)(i32.const 1)) | |
%8 = xor %7, 1:i32 | |
; (i32.and(get_local $653)(i32.const 1)) | |
%9 = and %8, 1:i32 | |
%10:i32 = var | |
; (i32.or(get_local $5)(i32.const 32)) | |
%11 = or %10, 32:i32 | |
; (i32.eq(get_local $11)(i32.const 103)) | |
%12 = eq %11, 103:i32 | |
%13:i64 = var | |
; (i64.and(get_local $60)(i64.const 9218868437227405312)) | |
%14 = and %13, 9218868437227405312:i64 | |
; (i64.eq(get_local $61)(i64.const 9218868437227405312)) | |
%15 = eq %14, 9218868437227405312:i64 | |
%16:i32 = zext %15 | |
; (i32.eq(unreachable)(unreachable)) | |
%17 = eq %16, 0:i32 | |
pc %12 1:i1 | |
pc %17 1:i1 | |
infer %9 | |
; RHS inferred successfully | |
result %8 | |
----------------------------------------------------------- | |
; start LHS (in $_fmt_fp) | |
%0 = block 2 | |
%1:i32 = var | |
; (i32.and(get_local $4)(i32.const 8)) | |
%2 = and %1, 8:i32 | |
; (i32.eq(unreachable)(unreachable)) | |
%3 = eq %2, 0:i32 | |
blockpc %0 0 %3 1:i1 | |
%4:i32 = zext %3 | |
; (i32.eq(unreachable)(unreachable)) | |
%5 = eq %4, 0:i32 | |
blockpc %0 1 %5 1:i1 | |
%6 = phi %0, %2, 0:i32 | |
infer %6 | |
; RHS inferred successfully | |
result 0:i32 | |
----------------------------------------------------------- | |
; start LHS (in $_f_parser) | |
%0:i32 = var | |
; (i32.eq(unreachable)(unreachable)) | |
%1 = eq %0, 0:i32 | |
%2:i32 = zext %1 | |
; (i32.eq(unreachable)(unreachable)) | |
%3 = eq %2, 0:i32 | |
%4:i32 = zext %3 | |
; (i32.eq(unreachable)(unreachable)) | |
%5 = eq %4, 0:i32 | |
infer %5 | |
; RHS inferred successfully | |
result %1 | |
----------------------------------------------------------- | |
; start LHS (in $_f_parser) | |
%0:i32 = var | |
; (i32.eq(unreachable)(unreachable)) | |
%1 = eq %0, 0:i32 | |
%2:i32 = zext %1 | |
; (i32.eq(unreachable)(unreachable)) | |
%3 = eq %2, 0:i32 | |
%4:i32 = zext %3 | |
; (i32.eq(unreachable)(unreachable)) | |
%5 = eq %4, 0:i32 | |
infer %5 | |
; RHS inferred successfully | |
result %1 | |
----------------------------------------------------------- | |
; start LHS (in $_decfloat) | |
%0:i32 = var | |
; (i32.eq(unreachable)(unreachable)) | |
%1 = eq %0, 0:i32 | |
%2:i32 = zext %1 | |
; (i32.eq(unreachable)(unreachable)) | |
%3 = eq %2, 0:i32 | |
%4:i32 = zext %3 | |
; (i32.eq(unreachable)(unreachable)) | |
%5 = eq %4, 0:i32 | |
infer %5 | |
; RHS inferred successfully | |
result %1 | |
----------------------------------------------------------- | |
; start LHS (in $_b_test) | |
%0:i32 = var | |
%1:i32 = var | |
; (i32.and(get_local $27)(get_local $3)) | |
%2 = and %0, %1 | |
; (i32.ne(get_local $3)(i32.const 0)) | |
%3 = ne %2, 0:i32 | |
%4:i32 = zext %3 | |
; (i32.ne(get_local $42)(i32.const 0)) | |
%5 = ne %4, 0:i32 | |
infer %5 | |
; RHS inferred successfully | |
result %3 | |
----------------------------------------------------------- | |
; start LHS (in $_b_arshift) | |
%0 = block 2 | |
%1:i32 = var | |
; (i32.lt_s(get_local $2)(i32.const -31)) | |
%2 = slt %1, -31:i32 | |
blockpc %0 0 %2 1:i1 | |
%3:i32 = zext %2 | |
; (i32.eq(unreachable)(unreachable)) | |
%4 = eq %3, 0:i32 | |
blockpc %0 1 %4 1:i1 | |
%5:i32 = var | |
; (i32.sub(i32.const 0)(get_local $2)) | |
%6 = sub 0:i32, %1 | |
; (i32.shl(get_local $1)(get_local $34)) | |
%7 = shl %5, %6 | |
%8 = phi %0, %7, 0:i32 | |
infer %8 | |
; RHS inferred successfully | |
result 0:i32 | |
----------------------------------------------------------- | |
; start LHS (in $___rem_pio2_large) | |
%0 = block 2 | |
%1 = block 2 | |
%2 = block 2 | |
%3:i32 = var | |
%4:i32 = var | |
; (i32.shr_s(get_local $17)(get_local $22)) | |
%5 = ashr %3, %4 | |
; (i32.shl(get_local $7)(get_local $22)) | |
%6 = shl %5, %4 | |
; (i32.sub(get_local $17)(get_local $199)) | |
%7 = sub %3, %6 | |
%8:i32 = var | |
; (i32.shr_s(get_local $9)(get_local $25)) | |
%9 = ashr %7, %8 | |
%10:i32 = var | |
; (i32.shr_s(get_local $214)(i32.const 23)) | |
%11 = ashr %10, 23:i32 | |
%12 = phi %2, %9, %11 | |
%13 = phi %1, 2:i32, %12 | |
; (i32.eq(get_local $9)(i32.const 2)) | |
%14 = eq %13, 2:i32 | |
blockpc %0 0 %14 1:i1 | |
%15:i32 = zext %14 | |
; (i32.eq(unreachable)(unreachable)) | |
%16 = eq %15, 0:i32 | |
blockpc %0 1 %16 1:i1 | |
%17 = phi %0, %13, 2:i32 | |
infer %17 | |
; RHS inferred successfully | |
result 2:i32 | |
----------------------------------------------------------- | |
; start LHS (in $___mo_lookup) | |
%0:i32 = var | |
; (i32.lt_s(get_local $3)(i32.const 0)) | |
%1 = slt %0, 0:i32 | |
%2:i32 = zext %1 | |
; (i32.eq(unreachable)(unreachable)) | |
%3 = eq %2, 0:i32 | |
%4:i32 = zext %3 | |
; (i32.eq(unreachable)(unreachable)) | |
%5 = eq %4, 0:i32 | |
infer %5 | |
; RHS inferred successfully | |
result %1 | |
----------------------------------------------------------- | |
; start LHS (in $___intscan) | |
%0:i32 = var | |
; (i32.eq(unreachable)(unreachable)) | |
%1 = eq %0, 0:i32 | |
%2:i32 = zext %1 | |
; (i32.eq(unreachable)(unreachable)) | |
%3 = eq %2, 0:i32 | |
%4:i32 = zext %3 | |
; (i32.eq(unreachable)(unreachable)) | |
%5 = eq %4, 0:i32 | |
infer %5 | |
; RHS inferred successfully | |
result %1 | |
----------------------------------------------------------- |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment