Last active
April 26, 2018 04:26
-
-
Save regehr/c86af851d60a75e04ce19e270bcfc554 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 $53) | |
%0 = block 2 | |
%1:i32 = var | |
; (i32.shl(get_local $36)(i32.const 1)) | |
%2 = shl %1, 1:i32 | |
%3:i32 = var | |
; (i32.sub(get_local $38)(get_local $39)) | |
%4 = sub %2, %3 | |
%5:i32 = var | |
; (i32.lt_u(get_local $40)(get_local $41)) | |
%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 $33)(get_local $34)) | |
%9 = add %3, %5 | |
%10 = phi %0, %9, %2 | |
; (i32.sub(get_local $50)(get_local $51)) | |
%11 = sub %10, %3 | |
; (i32.lt_u(get_local $52)(get_local $53)) | |
%12 = ult %11, %5 | |
infer %12 | |
; RHS inferred successfully | |
result 0:i1 | |
----------------------------------------------------------- | |
; start LHS (in $53) | |
%0 = block 2 | |
%1:i32 = var | |
; (i32.shl(get_local $36)(i32.const 1)) | |
%2 = shl %1, 1:i32 | |
%3:i32 = var | |
; (i32.sub(get_local $38)(get_local $39)) | |
%4 = sub %2, %3 | |
%5:i32 = var | |
; (i32.lt_u(get_local $40)(get_local $41)) | |
%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 $33)(get_local $34)) | |
%9 = add %3, %5 | |
%10 = phi %0, %9, %2 | |
; (i32.lt_u(get_local $47)(get_local $48)) | |
%11 = ult %10, %3 | |
%12:i32 = zext %11 | |
%13 = phi %0, %9, %2 | |
; (i32.sub(get_local $50)(get_local $51)) | |
%14 = sub %13, %3 | |
; (i32.lt_u(get_local $52)(get_local $53)) | |
%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 $56) | |
%0:i32 = var | |
; (i32.add(get_local $30)(i32.const 1)) | |
%1 = add %0, 1:i32 | |
; (i32.and(get_local $40)(i32.const 255)) | |
%2 = and %1, 255:i32 | |
; (i32.and(get_local $45)(i32.const 255)) | |
%3 = and %2, 255:i32 | |
%4:i32 = var | |
; (i32.lt_s(get_local $32)(get_local $37)) | |
%5 = slt %0, %4 | |
pc %5 1:i1 | |
infer %3 | |
; RHS inferred successfully | |
result %2 | |
----------------------------------------------------------- | |
; start LHS (in $56) | |
%0:i32 = var | |
; (i32.add(get_local $30)(i32.const 1)) | |
%1 = add %0, 1:i32 | |
; (i32.and(get_local $53)(i32.const 255)) | |
%2 = and %1, 255:i32 | |
; (i32.and(get_local $60)(i32.const 255)) | |
%3 = and %2, 255:i32 | |
infer %3 | |
; RHS inferred successfully | |
result %2 | |
----------------------------------------------------------- | |
; start LHS (in $106) | |
%0 = block 2 | |
%1:i32 = var | |
%2 = block 2 | |
%3 = block 2 | |
%4 = block 2 | |
%5 = block 2 | |
; (i32.or(get_local $15)(i32.const 32)) | |
%6 = or %1, 32:i32 | |
; (i32.add(get_local $16)(i32.const -97)) | |
%7 = add %6, -97:i32 | |
; (i32.lt_u(get_local $17)(i32.const 26)) | |
%8 = ult %7, 26:i32 | |
%9:i32 = zext %8 | |
%10 = phi %5, %1, %9 | |
; (i32.lt_u(get_local $19)(i32.const 32)) | |
%11 = ult %10, 32:i32 | |
%12:i32 = zext %11 | |
; (i32.eq(get_local $21)(i32.const 127)) | |
%13 = eq %10, 127:i32 | |
%14:i32 = zext %13 | |
; (i32.or(get_local $20)(get_local $22)) | |
%15 = or %12, %14 | |
%16 = phi %4, %1, %15 | |
; (i32.add(get_local $24)(i32.const -48)) | |
%17 = add %16, -48:i32 | |
; (i32.lt_u(get_local $25)(i32.const 10)) | |
%18 = ult %17, 10:i32 | |
%19:i32 = zext %18 | |
%20 = phi %3, %1, %19 | |
; (i32.add(get_local $27)(i32.const -33)) | |
%21 = add %20, -33:i32 | |
; (i32.lt_u(get_local $28)(i32.const 94)) | |
%22 = ult %21, 94:i32 | |
%23:i32 = zext %22 | |
%24 = phi %2, %1, %23 | |
; (i32.add(get_local $30)(i32.const -97)) | |
%25 = add %24, -97:i32 | |
; (i32.lt_u(get_local $31)(i32.const 26)) | |
%26 = ult %25, 26:i32 | |
%27:i32 = zext %26 | |
%28 = phi %0, %1, %27 | |
; (i32.or(get_local $40)(i32.const 32)) | |
%29 = or %28, 32:i32 | |
; (i32.add(get_local $41)(i32.const -97)) | |
%30 = add %29, -97:i32 | |
; (i32.lt_u(get_local $42)(i32.const 26)) | |
%31 = ult %30, 26:i32 | |
%32:i32 = zext %31 | |
; (i32.ne(get_local $43)(i32.const 0)) | |
%33 = ne %32, 0:i32 | |
; (i32.add(get_local $37)(i32.const -48)) | |
%34 = add %28, -48:i32 | |
; (i32.lt_u(get_local $38)(i32.const 10)) | |
%35 = ult %34, 10:i32 | |
%36:i32 = zext %35 | |
; (i32.eq(unreachable)(unreachable)) | |
%37 = eq %36, 0:i32 | |
pc %37 1:i1 | |
; (i32.add(get_local $34)(i32.const -33)) | |
%38 = add %28, -33:i32 | |
; (i32.lt_u(get_local $35)(i32.const 94)) | |
%39 = ult %38, 94:i32 | |
pc %39 1:i1 | |
infer %33 | |
; RHS inferred successfully | |
result %31 | |
----------------------------------------------------------- | |
; start LHS (in $106) | |
%0 = block 2 | |
%1:i32 = var | |
%2 = block 2 | |
%3 = block 2 | |
%4 = block 2 | |
%5 = block 2 | |
%6 = block 2 | |
%7 = block 2 | |
%8 = block 2 | |
%9 = block 2 | |
; (i32.or(get_local $15)(i32.const 32)) | |
%10 = or %1, 32:i32 | |
; (i32.add(get_local $16)(i32.const -97)) | |
%11 = add %10, -97:i32 | |
; (i32.lt_u(get_local $17)(i32.const 26)) | |
%12 = ult %11, 26:i32 | |
%13:i32 = zext %12 | |
%14 = phi %9, %1, %13 | |
; (i32.lt_u(get_local $19)(i32.const 32)) | |
%15 = ult %14, 32:i32 | |
%16:i32 = zext %15 | |
; (i32.eq(get_local $21)(i32.const 127)) | |
%17 = eq %14, 127:i32 | |
%18:i32 = zext %17 | |
; (i32.or(get_local $20)(get_local $22)) | |
%19 = or %16, %18 | |
%20 = phi %8, %1, %19 | |
; (i32.add(get_local $24)(i32.const -48)) | |
%21 = add %20, -48:i32 | |
; (i32.lt_u(get_local $25)(i32.const 10)) | |
%22 = ult %21, 10:i32 | |
%23:i32 = zext %22 | |
%24 = phi %7, %1, %23 | |
; (i32.add(get_local $27)(i32.const -33)) | |
%25 = add %24, -33:i32 | |
; (i32.lt_u(get_local $28)(i32.const 94)) | |
%26 = ult %25, 94:i32 | |
%27:i32 = zext %26 | |
%28 = phi %6, %1, %27 | |
; (i32.add(get_local $30)(i32.const -97)) | |
%29 = add %28, -97:i32 | |
; (i32.lt_u(get_local $31)(i32.const 26)) | |
%30 = ult %29, 26:i32 | |
%31:i32 = zext %30 | |
%32 = phi %5, %1, %31 | |
; (i32.add(get_local $34)(i32.const -33)) | |
%33 = add %32, -33:i32 | |
; (i32.lt_u(get_local $35)(i32.const 94)) | |
%34 = ult %33, 94:i32 | |
blockpc %4 0 %34 1:i1 | |
%35:i32 = zext %34 | |
; (i32.eq(unreachable)(unreachable)) | |
%36 = eq %35, 0:i32 | |
blockpc %4 1 %36 1:i1 | |
%37 = block 2 | |
; (i32.add(get_local $37)(i32.const -48)) | |
%38 = add %32, -48:i32 | |
; (i32.lt_u(get_local $38)(i32.const 10)) | |
%39 = ult %38, 10:i32 | |
blockpc %37 0 %39 1:i1 | |
%40:i32 = zext %39 | |
; (i32.eq(unreachable)(unreachable)) | |
%41 = eq %40, 0:i32 | |
blockpc %37 1 %41 1:i1 | |
; (i32.or(get_local $40)(i32.const 32)) | |
%42 = or %32, 32:i32 | |
; (i32.add(get_local $41)(i32.const -97)) | |
%43 = add %42, -97:i32 | |
; (i32.lt_u(get_local $42)(i32.const 26)) | |
%44 = ult %43, 26:i32 | |
%45:i32 = zext %44 | |
; (i32.ne(get_local $43)(i32.const 0)) | |
%46 = ne %45, 0:i32 | |
%47:i32 = zext %46 | |
%48 = phi %37, 1:i32, %47 | |
; (i32.eq(unreachable)(unreachable)) | |
%49 = eq %48, 0:i32 | |
%50:i32 = zext %49 | |
%51 = phi %4, %50, 0:i32 | |
%52 = phi %3, %1, %51 | |
; (i32.eq(get_local $50)(i32.const 32)) | |
%53 = eq %52, 32:i32 | |
%54:i32 = zext %53 | |
; (i32.add(get_local $52)(i32.const -9)) | |
%55 = add %52, -9:i32 | |
; (i32.lt_u(get_local $53)(i32.const 5)) | |
%56 = ult %55, 5:i32 | |
%57:i32 = zext %56 | |
; (i32.or(get_local $51)(get_local $54)) | |
%58 = or %54, %57 | |
%59 = phi %2, %1, %58 | |
; (i32.add(get_local $56)(i32.const -65)) | |
%60 = add %59, -65:i32 | |
; (i32.lt_u(get_local $57)(i32.const 26)) | |
%61 = ult %60, 26:i32 | |
%62:i32 = zext %61 | |
%63 = phi %0, %1, %62 | |
; (i32.or(get_local $62)(i32.const 32)) | |
%64 = or %63, 32:i32 | |
; (i32.add(get_local $63)(i32.const -97)) | |
%65 = add %64, -97:i32 | |
; (i32.lt_u(get_local $64)(i32.const 26)) | |
%66 = ult %65, 26:i32 | |
%67:i32 = zext %66 | |
; (i32.ne(get_local $65)(i32.const 0)) | |
%68 = ne %67, 0:i32 | |
; (i32.add(get_local $59)(i32.const -48)) | |
%69 = add %63, -48:i32 | |
; (i32.lt_u(get_local $60)(i32.const 10)) | |
%70 = ult %69, 10:i32 | |
%71:i32 = zext %70 | |
; (i32.eq(unreachable)(unreachable)) | |
%72 = eq %71, 0:i32 | |
pc %72 1:i1 | |
infer %68 | |
; RHS inferred successfully | |
result %66 | |
----------------------------------------------------------- | |
; start LHS (in $114) | |
%0:i32 = var | |
; (i32.add(get_local $6)(i32.const 15)) | |
%1 = add %0, 15:i32 | |
; (i32.and(get_local $7)(i32.const -16)) | |
%2 = and %1, -16:i32 | |
; (i32.le_s(i32.const 0)(get_local $11)) | |
%3 = sle 0:i32, %2 | |
%4:i32 = zext %3 | |
%5:i32 = var | |
; (i32.add(get_local $5)(get_local $9)) | |
%6 = add %5, %2 | |
; (i32.lt_s(get_local $13)(get_local $14)) | |
%7 = slt %6, %5 | |
%8:i32 = zext %7 | |
; (i32.and(get_local $12)(get_local $15)) | |
%9 = and %4, %8 | |
; (i32.lt_s(get_local $17)(i32.const 0)) | |
%10 = slt %6, 0:i32 | |
%11:i32 = zext %10 | |
; (i32.or(get_local $16)(get_local $18)) | |
%12 = or %9, %11 | |
infer %12 | |
; RHS inferred successfully | |
result %11 | |
----------------------------------------------------------- | |
; start LHS (in $125) | |
%0 = block 2 | |
%1:i32 = var | |
; (i32.shl(get_local $51)(i32.const 1)) | |
%2 = shl %1, 1:i32 | |
%3:i32 = var | |
; (i32.sub(get_local $53)(get_local $54)) | |
%4 = sub %2, %3 | |
%5:i32 = var | |
; (i32.lt_u(get_local $55)(get_local $56)) | |
%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 $48)(get_local $49)) | |
%9 = add %3, %5 | |
%10 = phi %0, %9, %2 | |
; (i32.sub(get_local $65)(get_local $66)) | |
%11 = sub %10, %3 | |
; (i32.lt_u(get_local $67)(get_local $68)) | |
%12 = ult %11, %5 | |
; (i32.sub(get_local $37)(get_local $42)) | |
%13 = sub %1, %3 | |
; (i32.lt_u(get_local $43)(get_local $46)) | |
%14 = ult %13, %5 | |
pc %14 1:i1 | |
infer %12 | |
; RHS inferred successfully | |
result 0:i1 | |
----------------------------------------------------------- | |
; start LHS (in $125) | |
%0 = block 2 | |
%1:i32 = var | |
; (i32.shl(get_local $51)(i32.const 1)) | |
%2 = shl %1, 1:i32 | |
%3:i32 = var | |
; (i32.sub(get_local $53)(get_local $54)) | |
%4 = sub %2, %3 | |
%5:i32 = var | |
; (i32.lt_u(get_local $55)(get_local $56)) | |
%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 $48)(get_local $49)) | |
%9 = add %3, %5 | |
%10 = phi %0, %9, %2 | |
; (i32.lt_u(get_local $62)(get_local $63)) | |
%11 = ult %10, %3 | |
%12:i32 = zext %11 | |
%13 = phi %0, %9, %2 | |
; (i32.sub(get_local $65)(get_local $66)) | |
%14 = sub %13, %3 | |
; (i32.lt_u(get_local $67)(get_local $68)) | |
%15 = ult %14, %5 | |
%16:i32 = zext %15 | |
; (i32.or(get_local $64)(get_local $69)) | |
%17 = or %12, %16 | |
; (i32.sub(get_local $37)(get_local $42)) | |
%18 = sub %1, %3 | |
; (i32.lt_u(get_local $43)(get_local $46)) | |
%19 = ult %18, %5 | |
pc %19 1:i1 | |
infer %17 | |
; RHS inferred successfully | |
result %12 | |
----------------------------------------------------------- | |
; start LHS (in $136) | |
%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 $27)) | |
%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 $36)(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 $143) | |
%0 = block 2 | |
%1:i32 = var | |
; (i32.eq(get_local $9)(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 $11)(get_local $12)) | |
%7 = eq %5, %6 | |
%8:i32 = zext %7 | |
%9 = block 2 | |
; (i32.eq(get_local $16)(get_local $17)) | |
%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 $19)(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 $37)(i32.const 1)) | |
%25 = and %24, 1:i32 | |
infer %25 | |
; RHS inferred successfully | |
result %24 | |
----------------------------------------------------------- | |
; start LHS (in $153) | |
%0 = block 2 | |
%1:i32 = var | |
; (i32.and(get_local $12)(i32.const 2147483647)) | |
%2 = and %1, 2147483647:i32 | |
; (i32.le_u(get_local $33)(i32.const 1071001154)) | |
%3 = ule %2, 1071001154: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 = block 2 | |
; (i32.lt_u(get_local $35)(i32.const 1016070144)) | |
%7 = ult %2, 1016070144:i32 | |
blockpc %6 0 %7 1:i1 | |
%8:i32 = zext %7 | |
; (i32.eq(unreachable)(unreachable)) | |
%9 = eq %8, 0:i32 | |
blockpc %6 1 %9 1:i1 | |
%10 = phi %6, %2, 0:i32 | |
%11 = phi %0, %2, %10 | |
; (i32.lt_u(i32.const 1072734898)(get_local $38)) | |
%12 = ult 1072734898:i32, %11 | |
; (i32.le_u(i32.const 1078159481)(get_local $17)) | |
%13 = ule 1078159481:i32, %2 | |
%14:i32 = zext %13 | |
; (i32.eq(unreachable)(unreachable)) | |
%15 = eq %14, 0:i32 | |
pc %15 1:i1 | |
infer %12 | |
; RHS inferred successfully | |
result 0:i1 | |
----------------------------------------------------------- | |
; start LHS (in $158) | |
%0 = block 2 | |
%1:i32 = var | |
; (i32.shl(get_local $44)(i32.const 1)) | |
%2 = shl %1, 1:i32 | |
%3:i32 = var | |
; (i32.sub(get_local $46)(get_local $47)) | |
%4 = sub %2, %3 | |
%5:i32 = var | |
; (i32.lt_u(get_local $48)(get_local $49)) | |
%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 $41)(get_local $42)) | |
%9 = add %3, %5 | |
%10 = phi %0, %9, %2 | |
; (i32.sub(get_local $58)(get_local $59)) | |
%11 = sub %10, %3 | |
; (i32.lt_u(get_local $60)(get_local $61)) | |
%12 = ult %11, %5 | |
infer %12 | |
; RHS inferred successfully | |
result 0:i1 | |
----------------------------------------------------------- | |
; start LHS (in $158) | |
%0 = block 2 | |
%1:i32 = var | |
; (i32.shl(get_local $44)(i32.const 1)) | |
%2 = shl %1, 1:i32 | |
%3:i32 = var | |
; (i32.sub(get_local $46)(get_local $47)) | |
%4 = sub %2, %3 | |
%5:i32 = var | |
; (i32.lt_u(get_local $48)(get_local $49)) | |
%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 $41)(get_local $42)) | |
%9 = add %3, %5 | |
%10 = phi %0, %9, %2 | |
; (i32.lt_u(get_local $55)(get_local $56)) | |
%11 = ult %10, %3 | |
%12:i32 = zext %11 | |
%13 = phi %0, %9, %2 | |
; (i32.sub(get_local $58)(get_local $59)) | |
%14 = sub %13, %3 | |
; (i32.lt_u(get_local $60)(get_local $61)) | |
%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 $207) | |
%0 = block 2 | |
%1:i32 = var | |
; (i32.and(get_local $13)(i32.const 2147483647)) | |
%2 = and %1, 2147483647:i32 | |
; (i32.le_u(i32.const 1141899263)(get_local $15)) | |
%3 = ule 1141899263:i32, %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:i64 = var | |
; (i64.and(get_local $17)(i64.const 9223372036854775807)) | |
%7 = and %6, 9223372036854775807:i64 | |
; (i64.le_u(i64.const 9218868437227405312)(get_local $18)) | |
%8 = ule 9218868437227405312:i64, %7 | |
%9:i32 = zext %8 | |
%10 = phi %0, %2, %9 | |
; (i32.lt_u(get_local $30)(i32.const 1044381696)) | |
%11 = ult %10, 1044381696:i32 | |
; (i32.lt_u(get_local $28)(i32.const 1071382528)) | |
%12 = ult %10, 1071382528:i32 | |
pc %12 1:i1 | |
infer %11 | |
; RHS inferred successfully | |
result 1:i1 | |
----------------------------------------------------------- | |
; start LHS (in $207) | |
%0 = block 2 | |
%1:i32 = var | |
; (i32.and(get_local $13)(i32.const 2147483647)) | |
%2 = and %1, 2147483647:i32 | |
; (i32.le_u(i32.const 1141899263)(get_local $15)) | |
%3 = ule 1141899263:i32, %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:i64 = var | |
; (i64.and(get_local $17)(i64.const 9223372036854775807)) | |
%7 = and %6, 9223372036854775807:i64 | |
; (i64.le_u(i64.const 9218868437227405312)(get_local $18)) | |
%8 = ule 9218868437227405312:i64, %7 | |
%9:i32 = zext %8 | |
%10 = phi %0, %2, %9 | |
; (i32.lt_u(get_local $35)(i32.const 1072889856)) | |
%11 = ult %10, 1072889856:i32 | |
; (i32.lt_u(get_local $28)(i32.const 1071382528)) | |
%12 = ult %10, 1071382528:i32 | |
%13:i32 = zext %12 | |
; (i32.eq(unreachable)(unreachable)) | |
%14 = eq %13, 0:i32 | |
pc %14 1:i1 | |
infer %11 | |
; RHS inferred successfully | |
result 0:i1 | |
----------------------------------------------------------- | |
; start LHS (in $207) | |
%0 = block 2 | |
%1:i32 = var | |
; (i32.and(get_local $13)(i32.const 2147483647)) | |
%2 = and %1, 2147483647:i32 | |
; (i32.le_u(i32.const 1141899263)(get_local $15)) | |
%3 = ule 1141899263:i32, %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:i64 = var | |
; (i64.and(get_local $17)(i64.const 9223372036854775807)) | |
%7 = and %6, 9223372036854775807:i64 | |
; (i64.le_u(i64.const 9218868437227405312)(get_local $18)) | |
%8 = ule 9218868437227405312:i64, %7 | |
%9:i32 = zext %8 | |
%10 = phi %0, %2, %9 | |
; (i32.lt_u(get_local $35)(i32.const 1072889856)) | |
%11 = ult %10, 1072889856:i32 | |
pc %11 1:i1 | |
; (i32.lt_u(get_local $28)(i32.const 1071382528)) | |
%12 = ult %10, 1071382528:i32 | |
%13:i32 = zext %12 | |
; (i32.eq(unreachable)(unreachable)) | |
%14 = eq %13, 0:i32 | |
pc %14 1:i1 | |
infer %10 | |
; RHS inferred successfully | |
result 0:i32 | |
----------------------------------------------------------- | |
; start LHS (in $207) | |
%0 = block 2 | |
%1:i32 = var | |
; (i32.and(get_local $13)(i32.const 2147483647)) | |
%2 = and %1, 2147483647:i32 | |
; (i32.le_u(i32.const 1141899263)(get_local $15)) | |
%3 = ule 1141899263:i32, %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:i64 = var | |
; (i64.and(get_local $17)(i64.const 9223372036854775807)) | |
%7 = and %6, 9223372036854775807:i64 | |
; (i64.le_u(i64.const 9218868437227405312)(get_local $18)) | |
%8 = ule 9218868437227405312:i64, %7 | |
%9:i32 = zext %8 | |
%10 = phi %0, %2, %9 | |
; (i32.lt_u(get_local $37)(i32.const 1072037888)) | |
%11 = ult %10, 1072037888:i32 | |
; (i32.lt_u(get_local $35)(i32.const 1072889856)) | |
%12 = ult %10, 1072889856:i32 | |
pc %12 1:i1 | |
; (i32.lt_u(get_local $28)(i32.const 1071382528)) | |
%13 = ult %10, 1071382528:i32 | |
%14:i32 = zext %13 | |
; (i32.eq(unreachable)(unreachable)) | |
%15 = eq %14, 0:i32 | |
pc %15 1:i1 | |
infer %11 | |
; RHS inferred successfully | |
result 0:i1 | |
----------------------------------------------------------- | |
; start LHS (in $207) | |
%0 = block 2 | |
%1:i32 = var | |
; (i32.and(get_local $13)(i32.const 2147483647)) | |
%2 = and %1, 2147483647:i32 | |
; (i32.le_u(i32.const 1141899263)(get_local $15)) | |
%3 = ule 1141899263:i32, %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:i64 = var | |
; (i64.and(get_local $17)(i64.const 9223372036854775807)) | |
%7 = and %6, 9223372036854775807:i64 | |
; (i64.le_u(i64.const 9218868437227405312)(get_local $18)) | |
%8 = ule 9218868437227405312:i64, %7 | |
%9:i32 = zext %8 | |
%10 = phi %0, %2, %9 | |
; (i32.lt_u(get_local $56)(i32.const 1073971200)) | |
%11 = ult %10, 1073971200:i32 | |
; (i32.lt_u(get_local $35)(i32.const 1072889856)) | |
%12 = ult %10, 1072889856:i32 | |
%13:i32 = zext %12 | |
; (i32.eq(unreachable)(unreachable)) | |
%14 = eq %13, 0:i32 | |
pc %14 1:i1 | |
; (i32.lt_u(get_local $28)(i32.const 1071382528)) | |
%15 = ult %10, 1071382528:i32 | |
%16:i32 = zext %15 | |
; (i32.eq(unreachable)(unreachable)) | |
%17 = eq %16, 0:i32 | |
pc %17 1:i1 | |
infer %11 | |
; RHS inferred successfully | |
result 0:i1 | |
----------------------------------------------------------- | |
; start LHS (in $207) | |
%0 = block 2 | |
%1 = block 2 | |
%2:i32 = var | |
; (i32.and(get_local $13)(i32.const 2147483647)) | |
%3 = and %2, 2147483647:i32 | |
; (i32.le_u(i32.const 1141899263)(get_local $15)) | |
%4 = ule 1141899263:i32, %3 | |
blockpc %1 0 %4 1:i1 | |
%5:i32 = zext %4 | |
; (i32.eq(unreachable)(unreachable)) | |
%6 = eq %5, 0:i32 | |
blockpc %1 1 %6 1:i1 | |
%7:i64 = var | |
; (i64.and(get_local $17)(i64.const 9223372036854775807)) | |
%8 = and %7, 9223372036854775807:i64 | |
; (i64.le_u(i64.const 9218868437227405312)(get_local $18)) | |
%9 = ule 9218868437227405312:i64, %8 | |
%10:i32 = zext %9 | |
%11 = phi %1, %3, %10 | |
; (i32.lt_u(get_local $28)(i32.const 1071382528)) | |
%12 = ult %11, 1071382528:i32 | |
blockpc %0 0 %12 1:i1 | |
%13:i32 = zext %12 | |
; (i32.eq(unreachable)(unreachable)) | |
%14 = eq %13, 0:i32 | |
blockpc %0 1 %14 1:i1 | |
%15 = block 2 | |
; (i32.lt_u(get_local $30)(i32.const 1044381696)) | |
%16 = ult %11, 1044381696:i32 | |
blockpc %15 0 %16 1:i1 | |
%17:i32 = zext %16 | |
; (i32.eq(unreachable)(unreachable)) | |
%18 = eq %17, 0:i32 | |
blockpc %15 1 %18 1:i1 | |
%19 = phi %15, %11, -1:i32 | |
%20 = block 2 | |
; (i32.lt_u(get_local $35)(i32.const 1072889856)) | |
%21 = ult %11, 1072889856:i32 | |
blockpc %20 0 %21 1:i1 | |
%22:i32 = zext %21 | |
; (i32.eq(unreachable)(unreachable)) | |
%23 = eq %22, 0:i32 | |
blockpc %20 1 %23 1:i1 | |
%24 = block 2 | |
; (i32.lt_u(get_local $37)(i32.const 1072037888)) | |
%25 = ult %11, 1072037888:i32 | |
blockpc %24 0 %25 1:i1 | |
%26:i32 = zext %25 | |
; (i32.eq(unreachable)(unreachable)) | |
%27 = eq %26, 0:i32 | |
blockpc %24 1 %27 1:i1 | |
%28 = phi %24, 0:i32, 1:i32 | |
%29 = block 2 | |
; (i32.lt_u(get_local $56)(i32.const 1073971200)) | |
%30 = ult %11, 1073971200:i32 | |
blockpc %29 0 %30 1:i1 | |
%31:i32 = zext %30 | |
; (i32.eq(unreachable)(unreachable)) | |
%32 = eq %31, 0:i32 | |
blockpc %29 1 %32 1:i1 | |
%33 = phi %29, 2:i32, 3:i32 | |
%34 = phi %20, %28, %33 | |
%35 = phi %0, %19, %34 | |
; (i32.lt_s(get_local $111)(i32.const 0)) | |
%36 = slt %35, 0:i32 | |
infer %36 | |
; RHS inferred successfully | |
result 0:i1 | |
----------------------------------------------------------- | |
; start LHS (in $260) | |
%0 = block 2 | |
%1:i64 = var | |
; (i64.and(get_local $12)(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 | |
pc %3 1:i1 | |
infer %7 | |
; RHS inferred successfully | |
result 0:i32 | |
----------------------------------------------------------- | |
; start LHS (in $260) | |
%0 = block 2 | |
%1:i64 = var | |
; (i64.and(get_local $12)(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 $330) | |
%0 = block 2 | |
%1:i32 = var | |
%2 = phi %0, 1024:i32, %1 | |
; (i32.eq(get_local $20)(i32.const 1024)) | |
%3 = eq %2, 1024:i32 | |
pc %3 1:i1 | |
infer %2 | |
; RHS inferred successfully | |
result 1024:i32 | |
----------------------------------------------------------- | |
; start LHS (in $415) | |
%0 = block 2 | |
%1:i32 = var | |
%2 = phi %0, 0:i32, %1 | |
; (i32.eq(get_local $22)(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 $416) | |
%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 $427) | |
%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 $450) | |
%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 $63)(i32.const 1)) | |
%5 = xor %4, 1:i32 | |
; (i32.and(get_local $64)(i32.const 1)) | |
%6 = and %5, 1:i32 | |
infer %6 | |
; RHS inferred successfully | |
result %5 | |
----------------------------------------------------------- | |
; start LHS (in $450) | |
%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 $71)(i32.const 1)) | |
%5 = and %4, 1:i32 | |
%6:i32 = var | |
; (i32.and(get_local $21)(i32.const 63)) | |
%7 = and %6, 63:i32 | |
; (i32.eq(get_local $69)(i32.const 26)) | |
%8 = eq %7, 26:i32 | |
pc %8 1:i1 | |
infer %5 | |
; RHS inferred successfully | |
result %4 | |
----------------------------------------------------------- | |
; start LHS (in $450) | |
%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 $63)(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.ne(unreachable)(unreachable)) | |
%8 = ne %7, 0:i32 | |
pc %8 1:i1 | |
%9:i32 = var | |
; (i32.and(get_local $21)(i32.const 63)) | |
%10 = and %9, 63:i32 | |
; (i32.eq(get_local $69)(i32.const 26)) | |
%11 = eq %10, 26:i32 | |
pc %11 1:i1 | |
infer %6 | |
; RHS inferred successfully | |
result %5 | |
----------------------------------------------------------- | |
; start LHS (in $450) | |
%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 $71)(i32.const 1)) | |
%5 = and %4, 1:i32 | |
%6:i32 = var | |
; (i32.eq(unreachable)(unreachable)) | |
%7 = eq %6, 0:i32 | |
pc %7 1:i1 | |
%8:i32 = var | |
; (i32.and(get_local $21)(i32.const 63)) | |
%9 = and %8, 63:i32 | |
; (i32.eq(get_local $69)(i32.const 26)) | |
%10 = eq %9, 26:i32 | |
pc %10 1:i1 | |
infer %5 | |
; RHS inferred successfully | |
result %4 | |
----------------------------------------------------------- | |
; start LHS (in $450) | |
%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 $63)(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 $21)(i32.const 63)) | |
%8 = and %7, 63:i32 | |
; (i32.eq(get_local $69)(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 $512) | |
%0 = block 2 | |
%1:i32 = var | |
; (i32.shl(get_local $46)(i32.const 1)) | |
%2 = shl %1, 1:i32 | |
%3:i32 = var | |
; (i32.sub(get_local $48)(get_local $49)) | |
%4 = sub %2, %3 | |
%5:i32 = var | |
; (i32.lt_u(get_local $50)(get_local $51)) | |
%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 $43)(get_local $44)) | |
%9 = add %3, %5 | |
%10 = phi %0, %9, %2 | |
; (i32.sub(get_local $60)(get_local $61)) | |
%11 = sub %10, %3 | |
; (i32.lt_u(get_local $62)(get_local $63)) | |
%12 = ult %11, %5 | |
infer %12 | |
; RHS inferred successfully | |
result 0:i1 | |
----------------------------------------------------------- | |
; start LHS (in $512) | |
%0 = block 2 | |
%1:i32 = var | |
; (i32.shl(get_local $46)(i32.const 1)) | |
%2 = shl %1, 1:i32 | |
%3:i32 = var | |
; (i32.sub(get_local $48)(get_local $49)) | |
%4 = sub %2, %3 | |
%5:i32 = var | |
; (i32.lt_u(get_local $50)(get_local $51)) | |
%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 $43)(get_local $44)) | |
%9 = add %3, %5 | |
%10 = phi %0, %9, %2 | |
; (i32.lt_u(get_local $57)(get_local $58)) | |
%11 = ult %10, %3 | |
%12:i32 = zext %11 | |
%13 = phi %0, %9, %2 | |
; (i32.sub(get_local $60)(get_local $61)) | |
%14 = sub %13, %3 | |
; (i32.lt_u(get_local $62)(get_local $63)) | |
%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 $612) | |
%0:i32 = var | |
; (i32.add(get_local $39)(i32.const 2)) | |
%1 = add %0, 2:i32 | |
; (i32.and(get_local $53)(i32.const 255)) | |
%2 = and %1, 255:i32 | |
; (i32.le_u(i32.const 249)(get_local $48)) | |
%3 = ule 249:i32, %1 | |
%4:i32 = zext %3 | |
; (i32.eq(unreachable)(unreachable)) | |
%5 = eq %4, 0:i32 | |
pc %5 1:i1 | |
%6:i32 = var | |
; (i32.le_u(get_local $46)(get_local $41)) | |
%7 = ule %6, %1 | |
pc %7 1:i1 | |
infer %2 | |
; RHS inferred successfully | |
result %1 | |
----------------------------------------------------------- | |
; start LHS (in $612) | |
%0:i32 = var | |
; (i32.add(get_local $39)(i32.const 2)) | |
%1 = add %0, 2:i32 | |
; (i32.and(get_local $53)(i32.const 255)) | |
%2 = and %1, 255:i32 | |
; (i32.le_u(i32.const 249)(get_local $48)) | |
%3 = ule 249:i32, %1 | |
%4:i32 = zext %3 | |
; (i32.eq(unreachable)(unreachable)) | |
%5 = eq %4, 0:i32 | |
pc %5 1:i1 | |
%6:i32 = var | |
; (i32.le_u(get_local $46)(get_local $41)) | |
%7 = ule %6, %1 | |
pc %7 1:i1 | |
infer %2 | |
; RHS inferred successfully | |
result %1 | |
----------------------------------------------------------- |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment