commit 3aa804c090616287b208133741dcc5713d23f0ac
parent a4b136df514a55da0d24a72ca3fff3c3a71ec22c
Author: erai <erai@omiltem.net>
Date: Sun, 16 Feb 2025 18:36:03 +0000
broken optimizations.
Diffstat:
9 files changed, 14477 insertions(+), 10647 deletions(-)
diff --git a/alloc.om b/alloc.om
@@ -12,6 +12,20 @@ func setup_alloc(c: *alloc) {
c.page = nil;
}
+func assert_zero(b: *byte, size: int) {
+ var i: int;
+ i = 0;
+ loop {
+ if i == size {
+ break;
+ }
+ if b[i] {
+ die("HEAP CORRUPTION");
+ }
+ i = i + 1;
+ }
+}
+
func alloc(c: *alloc, size: int): *byte {
var page: *page;
var mret: int;
@@ -34,6 +48,7 @@ func alloc(c: *alloc, size: int): *byte {
die("out of memory");
}
ret = mret as *byte;
+ assert_zero(ret, size);
return ret;
}
@@ -43,6 +58,7 @@ func alloc(c: *alloc, size: int): *byte {
mret = page.ptr as int + page.fill;
page.fill = page.fill + size;
ret = mret as *byte;
+ assert_zero(ret, size);
return ret;
}
}
@@ -62,6 +78,7 @@ func alloc(c: *alloc, size: int): *byte {
c.page = page;
+ assert_zero(ret, size);
return ret;
}
diff --git a/bootstrap.sh b/bootstrap.sh
@@ -5,7 +5,7 @@ LIBS="bufio.om lib.om alloc.om syscall.om"
SOURCES="cc1.om type.om parse2.om peglib.om as.om decl.om node.om peg.om ir.om ircout.om rb.om table.om"
# Build the bootstrap compiler from c
-[ cc0 -nt cc0.c ] || gcc -std=c89 ${BOOTSTRAP} -o cc0
+[ cc0 -nt cc0.c ] || gcc -O1 -g -std=c89 ${BOOTSTRAP} -o cc0
./cc0 ${LIBS} ${SOURCES} cc3.om -o cc1 -n cc1.lines -G cc1.call
# Double check the bootstrap and self hosting compiler have the same output
diff --git a/build.sh b/build.sh
@@ -20,6 +20,7 @@ ALL="${LIBS} ${CC} ${SSHD} ${KERNEL} ${SHELL} ${BIN}"
./cc1 ${LIBS} cpio.om -o cpio -n cpio.lines -G cpio.call
./cc1 ${LIBS} sh.om -o sh -n sh.lines -G sh.call
./cc1 ${LIBS} ${CRYPTO} sshd.om -o sshd -n sshd.lines -G sshd.call
+./cc1 ${LIBS} ${CRYPTO} sshd.om -o sshd -n sshd.lines -G sshd.call
for name in ${ALL}; do echo ${name}; done | ./cpio -o > initramfs
diff --git a/cc0.c b/cc0.c
@@ -23,6 +23,7 @@ u zas_opr();
u zas_opri64();
u zas_rex();
u zassert();
+u zassert_zero();
u zcall_check();
u zcall_to_ir();
u zcdie();
@@ -89,11 +90,13 @@ u zir_optimize();
u ziraddarg();
u ziraddop();
u ziraddvar();
+u zirblock_backlink();
+u zirblock_basic_value();
u zirblock_dead_expr();
+u zirblock_dead_var();
u zirblock_flow2();
u zirblock_flow3();
u zirblock_fold();
-u zirblock_value();
u zirbranch();
u zircall();
u zircargs();
@@ -106,21 +109,26 @@ u zircforward();
u zircline();
u zircop();
u zircop_neg();
+u zircopyloc();
u zircout();
u zircretval();
u zircstr();
u zircuse();
-u zircuseop();
u zirexpr_fold();
u zirfind_block();
u zirfind_var();
+u zirfunc_backlink();
+u zirfunc_basic_value();
u zirfunc_dead();
u zirfunc_flow();
u zirfunc_fold();
-u zirfunc_value();
u zirjump();
+u zirop_basic_value();
+u zirop_kill();
+u zirop_occurs();
u zirreset();
u zirreturn();
+u ziruseop();
u zlabels_to_ir();
u zlayout_struct();
u zlayout_union();
@@ -168,6 +176,7 @@ u zopen_output();
u zoutput_ir();
u zoutput_irargs();
u zoutput_irblock();
+u zoutput_ircall();
u zoutput_irexpr();
u zoutput_irfuncptr();
u zoutput_irretval();
@@ -367,217 +376,217 @@ s syscall();
int main(int argc, char**argv) { return z_start((u)argc, (u)argv, 0); }
u zsyscall(u n, u a, u b, u c, u d, u e, u f) { return syscall(n, a, b, c, d, e, f); }
u zP_tag_to_str(u vtag) {
- if (vtag != 0) goto b2;
+ if (vtag != 0UL) goto b2;
return (u)"P_grammar";
-b2: if (vtag != 1) goto b4;
+b2: if (vtag != 1UL) goto b4;
return (u)"P_enum_item";
-b4: if (vtag != 2) goto b6;
+b4: if (vtag != 2UL) goto b6;
return (u)"P_enum_decl";
-b6: if (vtag != 3) goto b8;
+b6: if (vtag != 3UL) goto b8;
return (u)"P_member_decl";
-b8: if (vtag != 4) goto b10;
+b8: if (vtag != 4UL) goto b10;
return (u)"P_struct_decl";
-b10: if (vtag != 5) goto b12;
+b10: if (vtag != 5UL) goto b12;
return (u)"P_union_decl";
-b12: if (vtag != 6) goto b14;
+b12: if (vtag != 6UL) goto b14;
return (u)"P_func_decl";
-b14: if (vtag != 7) goto b16;
+b14: if (vtag != 7UL) goto b16;
return (u)"P_type";
-b16: if (vtag != 8) goto b18;
+b16: if (vtag != 8UL) goto b18;
return (u)"P_ptr_type";
-b18: if (vtag != 9) goto b20;
+b18: if (vtag != 9UL) goto b20;
return (u)"P_gen_decl";
-b20: if (vtag != 10) goto b22;
+b20: if (vtag != 10UL) goto b22;
return (u)"P_arg_decl";
-b22: if (vtag != 11) goto b24;
+b22: if (vtag != 11UL) goto b24;
return (u)"P_func_type";
-b24: if (vtag != 12) goto b26;
+b24: if (vtag != 12UL) goto b26;
return (u)"P_stmt";
-b26: if (vtag != 13) goto b28;
+b26: if (vtag != 13UL) goto b28;
return (u)"P_elif_stmt";
-b28: if (vtag != 14) goto b30;
+b28: if (vtag != 14UL) goto b30;
return (u)"P_else_stmt";
-b30: if (vtag != 15) goto b32;
+b30: if (vtag != 15UL) goto b32;
return (u)"P_if_stmt";
-b32: if (vtag != 16) goto b34;
+b32: if (vtag != 16UL) goto b34;
return (u)"P_loop_stmt";
-b34: if (vtag != 17) goto b36;
+b34: if (vtag != 17UL) goto b36;
return (u)"P_break_stmt";
-b36: if (vtag != 18) goto b38;
+b36: if (vtag != 18UL) goto b38;
return (u)"P_continue_stmt";
-b38: if (vtag != 19) goto b40;
+b38: if (vtag != 19UL) goto b40;
return (u)"P_return_stmt";
-b40: if (vtag != 20) goto b42;
+b40: if (vtag != 20UL) goto b42;
return (u)"P_var_stmt";
-b42: if (vtag != 21) goto b44;
+b42: if (vtag != 21UL) goto b44;
return (u)"P_label_stmt";
-b44: if (vtag != 22) goto b46;
+b44: if (vtag != 22UL) goto b46;
return (u)"P_goto_stmt";
-b46: if (vtag != 23) goto b48;
+b46: if (vtag != 23UL) goto b48;
return (u)"P_assign_stmt";
-b48: if (vtag != 24) goto b50;
+b48: if (vtag != 24UL) goto b50;
return (u)"P_expr_stmt";
-b50: if (vtag != 25) goto b52;
+b50: if (vtag != 25UL) goto b52;
return (u)"P_empty_stmt";
-b52: if (vtag != 26) goto b54;
+b52: if (vtag != 26UL) goto b54;
return (u)"P_compound_stmt";
-b54: if (vtag != 27) goto b56;
+b54: if (vtag != 27UL) goto b56;
return (u)"P_expr";
-b56: if (vtag != 28) goto b58;
+b56: if (vtag != 28UL) goto b58;
return (u)"P_band_op";
-b58: if (vtag != 29) goto b60;
+b58: if (vtag != 29UL) goto b60;
return (u)"P_bor_op";
-b60: if (vtag != 30) goto b62;
+b60: if (vtag != 30UL) goto b62;
return (u)"P_bool_expr";
-b62: if (vtag != 31) goto b64;
+b62: if (vtag != 31UL) goto b64;
return (u)"P_le_op";
-b64: if (vtag != 32) goto b66;
+b64: if (vtag != 32UL) goto b66;
return (u)"P_ge_op";
-b66: if (vtag != 33) goto b68;
+b66: if (vtag != 33UL) goto b68;
return (u)"P_lt_op";
-b68: if (vtag != 34) goto b70;
+b68: if (vtag != 34UL) goto b70;
return (u)"P_gt_op";
-b70: if (vtag != 35) goto b72;
+b70: if (vtag != 35UL) goto b72;
return (u)"P_eq_op";
-b72: if (vtag != 36) goto b74;
+b72: if (vtag != 36UL) goto b74;
return (u)"P_ne_op";
-b74: if (vtag != 37) goto b76;
+b74: if (vtag != 37UL) goto b76;
return (u)"P_comp_expr";
-b76: if (vtag != 38) goto b78;
+b76: if (vtag != 38UL) goto b78;
return (u)"P_add_op";
-b78: if (vtag != 39) goto b80;
+b78: if (vtag != 39UL) goto b80;
return (u)"P_sub_op";
-b80: if (vtag != 40) goto b82;
+b80: if (vtag != 40UL) goto b82;
return (u)"P_or_op";
-b82: if (vtag != 41) goto b84;
+b82: if (vtag != 41UL) goto b84;
return (u)"P_xor_op";
-b84: if (vtag != 42) goto b86;
+b84: if (vtag != 42UL) goto b86;
return (u)"P_add_expr";
-b86: if (vtag != 43) goto b88;
+b86: if (vtag != 43UL) goto b88;
return (u)"P_mul_op";
-b88: if (vtag != 44) goto b90;
+b88: if (vtag != 44UL) goto b90;
return (u)"P_div_op";
-b90: if (vtag != 45) goto b92;
+b90: if (vtag != 45UL) goto b92;
return (u)"P_mod_op";
-b92: if (vtag != 46) goto b94;
+b92: if (vtag != 46UL) goto b94;
return (u)"P_and_op";
-b94: if (vtag != 47) goto b96;
+b94: if (vtag != 47UL) goto b96;
return (u)"P_mul_expr";
-b96: if (vtag != 48) goto b98;
+b96: if (vtag != 48UL) goto b98;
return (u)"P_lsh_op";
-b98: if (vtag != 49) goto b100;
+b98: if (vtag != 49UL) goto b100;
return (u)"P_rsh_op";
-b100: if (vtag != 50) goto b102;
+b100: if (vtag != 50UL) goto b102;
return (u)"P_shift_expr";
-b102: if (vtag != 51) goto b104;
+b102: if (vtag != 51UL) goto b104;
return (u)"P_ref_op";
-b104: if (vtag != 52) goto b106;
+b104: if (vtag != 52UL) goto b106;
return (u)"P_deref_op";
-b106: if (vtag != 53) goto b108;
+b106: if (vtag != 53UL) goto b108;
return (u)"P_pos_op";
-b108: if (vtag != 54) goto b110;
+b108: if (vtag != 54UL) goto b110;
return (u)"P_neg_op";
-b110: if (vtag != 55) goto b112;
+b110: if (vtag != 55UL) goto b112;
return (u)"P_not_op";
-b112: if (vtag != 56) goto b114;
+b112: if (vtag != 56UL) goto b114;
return (u)"P_bnot_op";
-b114: if (vtag != 57) goto b116;
+b114: if (vtag != 57UL) goto b116;
return (u)"P_unary_expr";
-b116: if (vtag != 58) goto b118;
+b116: if (vtag != 58UL) goto b118;
return (u)"P_index_expr";
-b118: if (vtag != 59) goto b120;
+b118: if (vtag != 59UL) goto b120;
return (u)"P_call_expr";
-b120: if (vtag != 60) goto b122;
+b120: if (vtag != 60UL) goto b122;
return (u)"P_member_expr";
-b122: if (vtag != 61) goto b124;
+b122: if (vtag != 61UL) goto b124;
return (u)"P_cast_expr";
-b124: if (vtag != 62) goto b126;
+b124: if (vtag != 62UL) goto b126;
return (u)"P_post_expr";
-b126: if (vtag != 63) goto b128;
+b126: if (vtag != 63UL) goto b128;
return (u)"P_primary";
-b128: if (vtag != 64) goto b130;
+b128: if (vtag != 64UL) goto b130;
return (u)"P_sizeof_expr";
-b130: if (vtag != 65) goto b132;
+b130: if (vtag != 65UL) goto b132;
return (u)"P_hex";
-b132: if (vtag != 66) goto b134;
+b132: if (vtag != 66UL) goto b134;
return (u)"P_dec";
-b134: if (vtag != 67) goto b136;
+b134: if (vtag != 67UL) goto b136;
return (u)"P_str";
-b136: if (vtag != 68) goto b138;
+b136: if (vtag != 68UL) goto b138;
return (u)"P_char";
-b138: if (vtag != 69) goto b140;
+b138: if (vtag != 69UL) goto b140;
return (u)"P_reserved";
-b140: if (vtag != 70) goto b142;
+b140: if (vtag != 70UL) goto b142;
return (u)"P_return";
-b142: if (vtag != 71) goto b144;
+b142: if (vtag != 71UL) goto b144;
return (u)"P_break";
-b144: if (vtag != 72) goto b146;
+b144: if (vtag != 72UL) goto b146;
return (u)"P_sizeof";
-b146: if (vtag != 73) goto b148;
+b146: if (vtag != 73UL) goto b148;
return (u)"P_if";
-b148: if (vtag != 74) goto b150;
+b148: if (vtag != 74UL) goto b150;
return (u)"P_else";
-b150: if (vtag != 75) goto b152;
+b150: if (vtag != 75UL) goto b152;
return (u)"P_loop";
-b152: if (vtag != 76) goto b154;
+b152: if (vtag != 76UL) goto b154;
return (u)"P_continue";
-b154: if (vtag != 77) goto b156;
+b154: if (vtag != 77UL) goto b156;
return (u)"P_goto";
-b156: if (vtag != 78) goto b158;
+b156: if (vtag != 78UL) goto b158;
return (u)"P_var";
-b158: if (vtag != 79) goto b160;
+b158: if (vtag != 79UL) goto b160;
return (u)"P_enum";
-b160: if (vtag != 80) goto b162;
+b160: if (vtag != 80UL) goto b162;
return (u)"P_struct";
-b162: if (vtag != 81) goto b164;
+b162: if (vtag != 81UL) goto b164;
return (u)"P_union";
-b164: if (vtag != 82) goto b166;
+b164: if (vtag != 82UL) goto b166;
return (u)"P_byte";
-b166: if (vtag != 83) goto b168;
+b166: if (vtag != 83UL) goto b168;
return (u)"P_int";
-b168: if (vtag != 84) goto b170;
+b168: if (vtag != 84UL) goto b170;
return (u)"P_void";
-b170: if (vtag != 85) goto b172;
+b170: if (vtag != 85UL) goto b172;
return (u)"P_func";
-b172: if (vtag != 86) goto b174;
+b172: if (vtag != 86UL) goto b174;
return (u)"P_as";
-b174: if (vtag != 87) goto b176;
+b174: if (vtag != 87UL) goto b176;
return (u)"P_nil";
-b176: if (vtag != 88) goto b178;
+b176: if (vtag != 88UL) goto b178;
return (u)"P_ident";
-b178: if (vtag != 89) goto b180;
+b178: if (vtag != 89UL) goto b180;
return (u)"P_sp";
-b180: if (vtag != 90) goto b182;
+b180: if (vtag != 90UL) goto b182;
return (u)"P_peg_grammar";
-b182: if (vtag != 91) goto b184;
+b182: if (vtag != 91UL) goto b184;
return (u)"P_peg_rule";
-b184: if (vtag != 92) goto b186;
+b184: if (vtag != 92UL) goto b186;
return (u)"P_peg_prefix";
-b186: if (vtag != 93) goto b188;
+b186: if (vtag != 93UL) goto b188;
return (u)"P_peg_pattern";
-b188: if (vtag != 94) goto b190;
+b188: if (vtag != 94UL) goto b190;
return (u)"P_peg_alternative";
-b190: if (vtag != 95) goto b192;
+b190: if (vtag != 95UL) goto b192;
return (u)"P_peg_lookop";
-b192: if (vtag != 96) goto b194;
+b192: if (vtag != 96UL) goto b194;
return (u)"P_peg_lookahead";
-b194: if (vtag != 97) goto b196;
+b194: if (vtag != 97UL) goto b196;
return (u)"P_peg_countop";
-b196: if (vtag != 98) goto b198;
+b196: if (vtag != 98UL) goto b198;
return (u)"P_peg_suffix";
-b198: if (vtag != 99) goto b200;
+b198: if (vtag != 99UL) goto b200;
return (u)"P_peg_primary";
-b200: if (vtag != 100) goto b202;
+b200: if (vtag != 100UL) goto b202;
return (u)"P_peg_any";
-b202: if (vtag != 101) goto b204;
+b202: if (vtag != 101UL) goto b204;
return (u)"P_peg_literal";
-b204: if (vtag != 102) goto b206;
+b204: if (vtag != 102UL) goto b206;
return (u)"P_peg_class";
-b206: if (vtag != 103) goto b208;
+b206: if (vtag != 103UL) goto b208;
return (u)"P_peg_call";
-b208: if (vtag != 104) goto b210;
+b208: if (vtag != 104UL) goto b210;
return (u)"P_peg_identifier";
-b210: return 0;
+b210: return 0UL;
}
u z_start(u vargc, u vargv, u venvp) {
u v3 = 0;
@@ -593,10 +602,12 @@ u z_start(u vargc, u vargv, u venvp) {
v5 = vargv;
v6 = venvp;
v7 = ((u(*)())v3)(v4, v5, v6);
+ v7;
v8 = (u)zexit;
- v9 = 0;
+ v9 = 0UL;
v10 = ((u(*)())v8)(v9);
- return 0;
+ v10;
+ return 0UL;
}
u zadd_section(u vc, u vname, u vtype) {
u vs = 0;
@@ -612,39 +623,40 @@ u zadd_section(u vc, u vname, u vtype) {
u v13 = 0;
u v14 = 0;
u v15 = 0;
- vend = *(u*)(vc + 24);
+ vend = *(u*)(vc + 24UL);
v6 = (u)zemit_align;
v7 = vc;
- v8 = 16;
- v9 = 144;
+ v8 = 16UL;
+ v9 = 144UL;
v10 = ((u(*)())v6)(v7, v8, v9);
+ v10;
v11 = (u)zalloc;
- v12 = *(u*)vc;
- v13 = 72;
+ v12 = *(u*)(vc + 0UL);
+ v13 = 72UL;
v14 = ((u(*)())v11)(v12, v13);
vs = v14;
- *(u*)vs = 0;
- *(u*)(vs + 8) = vname;
- *(u*)(vs + 16) = *(u*)(vc + 24);
- *(u*)(vs + 24) = *(u*)(vc + 24);
- *(u*)(vs + 32) = *(u*)(vc + 72);
- *(u*)(vs + 48) = vtype;
- *(u*)(vs + 56) = 0;
- *(u*)(vs + 64) = 0;
- vn = *(u*)(vc + 64);
+ *(u*)(vs + 0UL) = 0UL;
+ *(u*)(vs + 8UL) = vname;
+ *(u*)(vs + 16UL) = *(u*)(vc + 24UL);
+ *(u*)(vs + 24UL) = *(u*)(vc + 24UL);
+ *(u*)(vs + 32UL) = *(u*)(vc + 72UL);
+ *(u*)(vs + 48UL) = vtype;
+ *(u*)(vs + 56UL) = 0UL;
+ *(u*)(vs + 64UL) = 0UL;
+ vn = *(u*)(vc + 64UL);
if (!vn) goto b5;
-b6: if (!*(u*)vn) goto b12;
- v15 = 0;
-b13: if (!v15) goto b8;
- *(u*)(vn + 24) = vend;
- *(u*)vn = vs;
-b3: *(u*)(vc + 72) = *(u*)(vc + 72) + 1;
- return 0;
-b8: vn = *(u*)vn;
+b6: if (!*(u*)(vn + 0UL)) goto b12;
+ v15 = 0UL;
+b13: if (!v15) goto b10;
+ *(u*)(vn + 24UL) = vend;
+ *(u*)(vn + 0UL) = vs;
+b3: *(u*)(vc + 72UL) = *(u*)(vc + 72UL) + 1UL;
+ return 0UL;
+b10: vn = *(u*)(vn + 0UL);
goto b6;
-b12: v15 = 1;
+b12: v15 = 1UL;
goto b13;
-b5: *(u*)(vc + 64) = vs;
+b5: *(u*)(vc + 64UL) = vs;
goto b3;
}
u zadd_symbol(u vc, u vname, u vl) {
@@ -654,15 +666,15 @@ u zadd_symbol(u vc, u vname, u vl) {
u v6 = 0;
u v7 = 0;
v4 = (u)zalloc;
- v5 = *(u*)vc;
- v6 = 32;
+ v5 = *(u*)(vc + 0UL);
+ v6 = 32UL;
v7 = ((u(*)())v4)(v5, v6);
vs = v7;
- *(u*)vs = *(u*)(vc + 56);
- *(u*)(vs + 8) = vname;
- *(u*)(vs + 16) = vl;
- *(u*)(vc + 56) = vs;
- return 0;
+ *(u*)(vs + 0UL) = *(u*)(vc + 56UL);
+ *(u*)(vs + 8UL) = vname;
+ *(u*)(vs + 16UL) = vl;
+ *(u*)(vc + 56UL) = vs;
+ return 0UL;
}
u zaddfixup(u vc, u vl) {
u vf = 0;
@@ -679,28 +691,31 @@ u zaddfixup(u vc, u vl) {
u v13 = 0;
u v14 = 0;
u v15 = 0;
- if ((s)*(u*)(*(u*)(vc + 40) + 16) >= (s)4) goto b1;
+ if ((s)*(u*)(*(u*)(vc + 40UL) + 16UL) >= (s)4UL) goto b3;
v4 = (u)zdie;
v5 = (u)"invalid fixup";
v6 = ((u(*)())v4)(v5);
-b1: vhere = *(u*)(*(u*)(vc + 40) + 8) + *(u*)(*(u*)(vc + 40) + 16) - 4;
- if (!*(u*)(vl + 16)) goto b7;
+ v6;
+b1: vhere = *(u*)(*(u*)(vc + 40UL) + 8UL) + (*(u*)(*(u*)(vc + 40UL) + 16UL) - 4UL) * 1UL;
+ if (!*(u*)(vl + 16UL)) goto b7;
v7 = (u)zfixup;
v8 = vc;
v9 = vhere;
- v10 = *(u*)(vl + 8) - *(u*)(vc + 24);
+ v10 = *(u*)(vl + 8UL) - *(u*)(vc + 24UL);
v11 = ((u(*)())v7)(v8, v9, v10);
-b5: return 0;
+ v11;
+b5: return 0UL;
b7: v12 = (u)zalloc;
- v13 = *(u*)vc;
- v14 = 24;
+ v13 = *(u*)(vc + 0UL);
+ v14 = 24UL;
v15 = ((u(*)())v12)(v13, v14);
vf = v15;
- *(u*)vf = *(u*)vl;
- *(u*)(vf + 8) = vhere;
- *(u*)(vf + 16) = *(u*)(vc + 24);
- *(u*)vl = vf;
+ *(u*)(vf + 0UL) = *(u*)(vl + 0UL);
+ *(u*)(vf + 8UL) = vhere;
+ *(u*)(vf + 16UL) = *(u*)(vc + 24UL);
+ *(u*)(vl + 0UL) = vf;
goto b5;
+b3: goto b1;
}
u zalloc(u vc, u vsize) {
u vpage = 0;
@@ -732,56 +747,92 @@ u zalloc(u vc, u vsize) {
u v28 = 0;
u v29 = 0;
u v30 = 0;
- if ((s)vsize >= (s)0) goto b1;
+ u v31 = 0;
+ u v32 = 0;
+ u v33 = 0;
+ u v34 = 0;
+ u v35 = 0;
+ u v36 = 0;
+ u v37 = 0;
+ u v38 = 0;
+ u v39 = 0;
+ u v40 = 0;
+ u v41 = 0;
+ u v42 = 0;
+ if ((s)vsize >= (s)0UL) goto b3;
v6 = (u)zdie;
v7 = (u)"invalid alloc";
v8 = ((u(*)())v6)(v7);
-b1: if ((s)vsize < (s)2048) goto b5;
- vsize = vsize + 4095;
- vsize = vsize & -4096UL;
+ v8;
+b1: if (vsize != 0UL) goto b7;
+ return 0UL;
+b7: if ((s)vsize < (s)2048UL) goto b10;
+ vsize = vsize + 4095UL;
+ vsize = vsize & ~4095UL;
v9 = (u)zmmap;
- v10 = 0;
+ v10 = 0UL;
v11 = vsize;
- v12 = 3;
- v13 = 34;
+ v12 = 1UL | 2UL;
+ v13 = 2UL | 32UL;
v14 = -1UL;
- v15 = 0;
+ v15 = 0UL;
v16 = ((u(*)())v9)(v10, v11, v12, v13, v14, v15);
vmret = v16;
- if (vmret != -1UL) goto b9;
+ if (vmret != -1UL) goto b14;
v17 = (u)zdie;
v18 = (u)"out of memory";
v19 = ((u(*)())v17)(v18);
-b9: vret = vmret;
+ v19;
+b12: vret = vmret;
+ v20 = (u)zassert_zero;
+ v21 = vret;
+ v22 = vsize;
+ v23 = ((u(*)())v20)(v21, v22);
+ v23;
return vret;
-b5: vpage = *(u*)vc;
- if (!vpage) goto b13;
- if ((s)vsize > (s)(*(u*)(vpage + 16) - *(u*)(vpage + 8))) goto b13;
- vmret = *(u*)vpage + *(u*)(vpage + 8);
- *(u*)(vpage + 8) = *(u*)(vpage + 8) + vsize;
+b14: goto b12;
+b10: vpage = *(u*)(vc + 0UL);
+ if (!vpage) goto b19;
+ if ((s)vsize > (s)(*(u*)(vpage + 16UL) - *(u*)(vpage + 8UL))) goto b22;
+ vmret = *(u*)(vpage + 0UL) + *(u*)(vpage + 8UL);
+ *(u*)(vpage + 8UL) = *(u*)(vpage + 8UL) + vsize;
vret = vmret;
+ v24 = (u)zassert_zero;
+ v25 = vret;
+ v26 = vsize;
+ v27 = ((u(*)())v24)(v25, v26);
+ v27;
return vret;
-b13: vpsize = 65536UL;
- v20 = (u)zmmap;
- v21 = 0;
- v22 = vpsize;
- v23 = 3;
- v24 = 34;
- v25 = -1UL;
- v26 = 0;
- v27 = ((u(*)())v20)(v21, v22, v23, v24, v25, v26);
- vmret = v27;
- if (vmret != -1UL) goto b20;
- v28 = (u)zdie;
- v29 = (u)"out of memory";
- v30 = ((u(*)())v28)(v29);
-b20: vpage = vmret;
- *(u*)vpage = vpage + 24;
- vret = *(u*)vpage;
- *(u*)(vpage + 16) = vpsize - 24;
- *(u*)(vpage + 8) = vsize;
- *(u*)vc = vpage;
+b22:b17: vpsize = 64UL * 1024UL;
+ v28 = (u)zmmap;
+ v29 = 0UL;
+ v30 = vpsize;
+ v31 = 1UL | 2UL;
+ v32 = 2UL | 32UL;
+ v33 = -1UL;
+ v34 = 0UL;
+ v35 = ((u(*)())v28)(v29, v30, v31, v32, v33, v34);
+ vmret = v35;
+ if (vmret != -1UL) goto b27;
+ v36 = (u)zdie;
+ v37 = (u)"out of memory";
+ v38 = ((u(*)())v36)(v37);
+ v38;
+b25: vpage = vmret;
+ *(u*)(vpage + 0UL) = vpage + 1UL * 24UL;
+ vret = *(u*)(vpage + 0UL);
+ *(u*)(vpage + 16UL) = vpsize - 24UL;
+ *(u*)(vpage + 8UL) = vsize;
+ *(u*)(vc + 0UL) = vpage;
+ v39 = (u)zassert_zero;
+ v40 = vret;
+ v41 = vsize;
+ v42 = ((u(*)())v39)(v40, v41);
+ v42;
return vret;
+b27: goto b25;
+b19: goto b17;
+b3: goto b1;
}
u zany(u vc) {
u vch = 0;
@@ -795,12 +846,13 @@ u zany(u vc) {
v3 = vc;
v4 = ((u(*)())v2)(v3);
vch = v4;
- if (vch != -1UL) goto b2;
+ if (vch != -1UL) goto b4;
v5 = (u)zfail;
v6 = vc;
v7 = ((u(*)())v5)(v6);
- return 0;
-b2: return 1;
+ v7;
+ return 0UL;
+b4: return 1UL;
}
u zargs_to_ir(u vic, u vn) {
u vname = 0;
@@ -816,13 +868,13 @@ u zargs_to_ir(u vic, u vn) {
u v12 = 0;
u v13 = 0;
b1: if (!vn) goto b7;
- v4 = 0;
-b8: if (!v4) goto b3;
- return 0;
-b3: vname = *(u*)(*(u*)(*(u*)(vn + 8) + 8) + 56);
+ v4 = 0UL;
+b8: if (!v4) goto b5;
+ return 0UL;
+b5: vname = *(u*)(*(u*)(*(u*)(vn + 8UL) + 8UL) + 56UL);
v5 = (u)zprototype;
- v6 = *(u*)vic;
- v7 = *(u*)(*(u*)(vn + 8) + 16);
+ v6 = *(u*)(vic + 0UL);
+ v7 = *(u*)(*(u*)(vn + 8UL) + 16UL);
v8 = ((u(*)())v5)(v6, v7);
vt = v8;
v9 = (u)ziraddarg;
@@ -830,9 +882,10 @@ b3: vname = *(u*)(*(u*)(*(u*)(vn + 8) + 8) + 56);
v11 = vname;
v12 = vt;
v13 = ((u(*)())v9)(v10, v11, v12);
- vn = *(u*)(vn + 16);
+ v13;
+ vn = *(u*)(vn + 16UL);
goto b1;
-b7: v4 = 1;
+b7: v4 = 1UL;
goto b8;
}
u zas_blob(u vc, u vs, u vslen) {
@@ -871,67 +924,70 @@ u zas_blob(u vc, u vs, u vslen) {
u v35 = 0;
u v36 = 0;
u v37 = 0;
- vlink = vc + 120;
+ vlink = vc + 120UL;
b1: vb = *(u*)vlink;
if (!vb) goto b7;
- v6 = 0;
-b8: if (!v6) goto b3;
+ v6 = 0UL;
+b8: if (!v6) goto b5;
v22 = (u)zalloc;
- v23 = *(u*)vc;
- v24 = 40;
+ v23 = *(u*)(vc + 0UL);
+ v24 = 40UL;
v25 = ((u(*)())v22)(v23, v24);
vb = v25;
v26 = (u)zmklabel;
v27 = vc;
v28 = ((u(*)())v26)(v27);
- *(u*)(vb + 16) = v28;
+ *(u*)(vb + 16UL) = v28;
v29 = (u)zalloc;
- v30 = *(u*)vc;
+ v30 = *(u*)(vc + 0UL);
v31 = vslen;
v32 = ((u(*)())v29)(v30, v31);
- *(u*)(vb + 24) = v32;
- *(u*)(vb + 32) = vslen;
+ *(u*)(vb + 24UL) = v32;
+ *(u*)(vb + 32UL) = vslen;
v33 = (u)zmemcpy;
- v34 = *(u*)(vb + 24);
+ v34 = *(u*)(vb + 24UL);
v35 = vs;
v36 = vslen;
v37 = ((u(*)())v33)(v34, v35, v36);
+ v37;
*(u*)vlink = vb;
- return *(u*)(vb + 16);
-b3: if ((s)*(u*)(vb + 32) >= (s)vslen) goto b11;
+ return *(u*)(vb + 16UL);
+b5: if ((s)*(u*)(vb + 32UL) >= (s)vslen) goto b11;
v7 = (u)zmemcmp;
- v8 = *(u*)(vb + 24);
+ v8 = *(u*)(vb + 24UL);
v9 = vs;
- v10 = *(u*)(vb + 32);
+ v10 = *(u*)(vb + 32UL);
v11 = ((u(*)())v7)(v8, v9, v10);
vdir = v11;
- if (vdir != 0) goto b9;
+ if (vdir != 0UL) goto b15;
vdir = -1UL;
-b9: if (vdir != 0) goto b25;
- return *(u*)(vb + 16);
-b25: if ((s)vdir <= (s)0) goto b27;
- vlink = vb;
- goto b1;
-b27: vlink = vb + 8;
- goto b1;
-b11: if ((s)*(u*)(vb + 32) <= (s)vslen) goto b17;
+b13:b9: if (vdir != 0UL) goto b25;
+ return *(u*)(vb + 16UL);
+b25: if ((s)vdir <= (s)0UL) goto b27;
+ vlink = vb + 0UL;
+b23: goto b1;
+b27: vlink = vb + 8UL;
+ goto b23;
+b15: goto b13;
+b11: if ((s)*(u*)(vb + 32UL) <= (s)vslen) goto b17;
v12 = (u)zmemcmp;
- v13 = *(u*)(vb + 24);
+ v13 = *(u*)(vb + 24UL);
v14 = vs;
v15 = vslen;
v16 = ((u(*)())v12)(v13, v14, v15);
vdir = v16;
- if (vdir != 0) goto b9;
- vdir = 1;
- goto b9;
+ if (vdir != 0UL) goto b21;
+ vdir = 1UL;
+b19: goto b9;
+b21: goto b19;
b17: v17 = (u)zmemcmp;
- v18 = *(u*)(vb + 24);
+ v18 = *(u*)(vb + 24UL);
v19 = vs;
v20 = vslen;
v21 = ((u(*)())v17)(v18, v19, v20);
vdir = v21;
goto b9;
-b7: v6 = 1;
+b7: v6 = 1UL;
goto b8;
}
u zas_emit(u va, u vb) {
@@ -943,7 +999,8 @@ u zas_emit(u va, u vb) {
v3 = va;
v4 = vb;
v5 = ((u(*)())v2)(v3, v4);
- return 0;
+ v5;
+ return 0UL;
}
u zas_jmp(u va, u vop, u vl) {
u v3 = 0;
@@ -976,33 +1033,40 @@ u zas_jmp(u va, u vop, u vl) {
u v30 = 0;
v3 = (u)zreserve;
v4 = va;
- v5 = 16;
+ v5 = 16UL;
v6 = ((u(*)())v3)(v4, v5);
+ v6;
v7 = (u)zas_op;
v8 = va;
v9 = vop;
v10 = ((u(*)())v7)(v8, v9);
+ v10;
v11 = (u)zas_emit;
v12 = va;
- v13 = 0;
+ v13 = 0UL;
v14 = ((u(*)())v11)(v12, v13);
+ v14;
v15 = (u)zas_emit;
v16 = va;
- v17 = 0;
+ v17 = 0UL;
v18 = ((u(*)())v15)(v16, v17);
+ v18;
v19 = (u)zas_emit;
v20 = va;
- v21 = 0;
+ v21 = 0UL;
v22 = ((u(*)())v19)(v20, v21);
+ v22;
v23 = (u)zas_emit;
v24 = va;
- v25 = 0;
+ v25 = 0UL;
v26 = ((u(*)())v23)(v24, v25);
+ v26;
v27 = (u)zaddfixup;
v28 = va;
v29 = vl;
v30 = ((u(*)())v27)(v28, v29);
- return 0;
+ v30;
+ return 0UL;
}
u zas_modm(u va, u vop, u vb, u vi, u vs, u vd) {
u v6 = 0;
@@ -1017,13 +1081,14 @@ u zas_modm(u va, u vop, u vb, u vi, u vs, u vd) {
v6 = (u)zas_modrm;
v7 = va;
v8 = vop & 65535UL;
- v9 = vop >> 16;
+ v9 = vop >> 16UL;
v10 = vb;
v11 = vi;
v12 = vs;
v13 = vd;
v14 = ((u(*)())v6)(v7, v8, v9, v10, v11, v12, v13);
- return 0;
+ v14;
+ return 0UL;
}
u zas_modr(u va, u vop, u vb) {
u v3 = 0;
@@ -1035,10 +1100,11 @@ u zas_modr(u va, u vop, u vb) {
v3 = (u)zas_modrr;
v4 = va;
v5 = vop & 65535UL;
- v6 = vop >> 16;
+ v6 = vop >> 16UL;
v7 = vb;
v8 = ((u(*)())v3)(v4, v5, v6, v7);
- return 0;
+ v8;
+ return 0UL;
}
u zas_modra(u va, u vop, u vr, u vd) {
u v4 = 0;
@@ -1080,38 +1146,46 @@ u zas_modra(u va, u vop, u vr, u vd) {
v5 = va;
v6 = vop;
v7 = vr;
- v8 = 0;
- v9 = 0;
+ v8 = 0UL;
+ v9 = 0UL;
v10 = ((u(*)())v4)(v5, v6, v7, v8, v9);
+ v10;
v11 = (u)zas_op;
v12 = va;
v13 = vop;
v14 = ((u(*)())v11)(v12, v13);
+ v14;
v15 = (u)zas_emit;
v16 = va;
- v17 = (vr << 3 & 56) + 4;
+ v17 = (vr << 3UL & 56UL) + 4UL;
v18 = ((u(*)())v15)(v16, v17);
+ v18;
v19 = (u)zas_emit;
v20 = va;
- v21 = 37;
+ v21 = (4UL << 3UL) + 5UL;
v22 = ((u(*)())v19)(v20, v21);
+ v22;
v23 = (u)zas_emit;
v24 = va;
v25 = vd;
v26 = ((u(*)())v23)(v24, v25);
+ v26;
v27 = (u)zas_emit;
v28 = va;
- v29 = vd >> 8;
+ v29 = vd >> 8UL;
v30 = ((u(*)())v27)(v28, v29);
+ v30;
v31 = (u)zas_emit;
v32 = va;
- v33 = vd >> 16;
+ v33 = vd >> 16UL;
v34 = ((u(*)())v31)(v32, v33);
+ v34;
v35 = (u)zas_emit;
v36 = va;
- v37 = vd >> 24;
+ v37 = vd >> 24UL;
v38 = ((u(*)())v35)(v36, v37);
- return 0;
+ v38;
+ return 0UL;
}
u zas_modri(u va, u vop, u vr, u vx) {
u v4 = 0;
@@ -1140,39 +1214,46 @@ u zas_modri(u va, u vop, u vr, u vx) {
u v27 = 0;
u v28 = 0;
u v29 = 0;
- if ((s)vx >= (s)-2147483648UL) goto b5;
- v4 = 1;
-b7: if (!v4) goto b1;
+ if ((s)vx >= (s)-(1UL << 31UL)) goto b5;
+ v4 = 1UL;
+b7: if (!v4) goto b3;
v5 = (u)zdie;
v6 = (u)"immediate too large";
v7 = ((u(*)())v5)(v6);
+ v7;
b1: v8 = (u)zas_modrr;
v9 = va;
v10 = vop & 65535UL;
- v11 = vop >> 16;
+ v11 = vop >> 16UL;
v12 = vr;
v13 = ((u(*)())v8)(v9, v10, v11, v12);
+ v13;
v14 = (u)zas_emit;
v15 = va;
v16 = vx;
v17 = ((u(*)())v14)(v15, v16);
+ v17;
v18 = (u)zas_emit;
v19 = va;
- v20 = vx >> 8;
+ v20 = vx >> 8UL;
v21 = ((u(*)())v18)(v19, v20);
+ v21;
v22 = (u)zas_emit;
v23 = va;
- v24 = vx >> 16;
+ v24 = vx >> 16UL;
v25 = ((u(*)())v22)(v23, v24);
+ v25;
v26 = (u)zas_emit;
v27 = va;
- v28 = vx >> 24;
+ v28 = vx >> 24UL;
v29 = ((u(*)())v26)(v27, v28);
- return 0;
-b5: if ((s)vx < (s)2147483648UL) goto b8;
- v4 = 1;
+ v29;
+ return 0UL;
+b3: goto b1;
+b5: if ((s)vx < (s)(1UL << 31UL)) goto b8;
+ v4 = 1UL;
goto b7;
-b8: v4 = 0;
+b8: v4 = 0UL;
goto b7;
}
u zas_modrm(u va, u vop, u vr, u vb, u vi, u vs, u vd) {
@@ -1258,206 +1339,237 @@ u zas_modrm(u va, u vop, u vr, u vb, u vi, u vs, u vd) {
u v86 = 0;
u v87 = 0;
u v88 = 0;
- if ((s)vr >= (s)0) goto b5;
- v11 = 1;
-b7: if (!v11) goto b1;
+ if ((s)vr >= (s)0UL) goto b5;
+ v11 = 1UL;
+b7: if (!v11) goto b3;
v12 = (u)zdie;
v13 = (u)"invalid reg";
v14 = ((u(*)())v12)(v13);
-b1: vrm = vr << 3 & 56;
- if (vd == 0) goto b12;
+ v14;
+b1: vrm = vr << 3UL & 56UL;
+ if (vd == 0UL) goto b12;
if ((s)vd < (s)-128UL) goto b17;
- if ((s)vd > (s)127) goto b17;
- v15 = 1;
+ if ((s)vd > (s)127UL) goto b17;
+ v15 = 1UL;
b19: if (!v15) goto b15;
- vmod = 1;
- vdw = 1;
-b10: if (vmod != 0) goto b22;
- if ((s)vb >= (s)0) goto b27;
- v16 = 1;
-b29: if (!v16) goto b23;
+ vmod = 1UL;
+ vdw = 1UL;
+b13:b10: if (vmod != 0UL) goto b22;
+ if ((s)vb >= (s)0UL) goto b27;
+ v16 = 1UL;
+b29: if (!v16) goto b25;
v17 = (u)zdie;
v18 = (u)"invalid reg";
v19 = ((u(*)())v17)(v18);
+ v19;
b23: if (!vs) goto b34;
- if (vb != 16) goto b35;
+ if (vb != 16UL) goto b37;
v20 = (u)zdie;
v21 = (u)"invalid base";
v22 = ((u(*)())v20)(v21);
-b35: if (vi != 4) goto b39;
+ v22;
+b35: if (vi != 4UL) goto b41;
v23 = (u)zdie;
v24 = (u)"invalid index";
v25 = ((u(*)())v23)(v24);
-b39: vrm = vrm + 4;
-b20: v47 = (u)zas_rex;
+ v25;
+b39: vrm = vrm + 4UL;
+b32:b20: v47 = (u)zas_rex;
v48 = va;
v49 = vop;
v50 = vr;
v51 = vi;
v52 = vb;
v53 = ((u(*)())v47)(v48, v49, v50, v51, v52);
+ v53;
v54 = (u)zas_op;
v55 = va;
v56 = vop;
v57 = ((u(*)())v54)(v55, v56);
+ v57;
v58 = (u)zas_emit;
v59 = va;
- v60 = (vmod << 6) + vrm;
+ v60 = (vmod << 6UL) + vrm;
v61 = ((u(*)())v58)(v59, v60);
- if (!vs) goto b111;
- vsib = (vi << 3 & 56) + (vb & 7);
- if (vs != 2) goto b116;
- vsib = vsib + 64;
+ v61;
+ if (!vs) goto b113;
+ vsib = (vi << 3UL & 56UL) + (vb & 7UL);
+ if (vs != 2UL) goto b116;
+ vsib = vsib + 64UL;
b114: v65 = (u)zas_emit;
v66 = va;
v67 = vsib;
v68 = ((u(*)())v65)(v66, v67);
-b111: if (vdw != 1) goto b127;
+ v68;
+b111: if (vdw != 1UL) goto b127;
v69 = (u)zas_emit;
v70 = va;
v71 = vd;
v72 = ((u(*)())v69)(v70, v71);
-b125: return 0;
-b127: if (vdw != 4) goto b125;
+ v72;
+b125: return 0UL;
+b127: if (vdw != 4UL) goto b130;
v73 = (u)zas_emit;
v74 = va;
v75 = vd;
v76 = ((u(*)())v73)(v74, v75);
+ v76;
v77 = (u)zas_emit;
v78 = va;
- v79 = vd >> 8;
+ v79 = vd >> 8UL;
v80 = ((u(*)())v77)(v78, v79);
+ v80;
v81 = (u)zas_emit;
v82 = va;
- v83 = vd >> 16;
+ v83 = vd >> 16UL;
v84 = ((u(*)())v81)(v82, v83);
+ v84;
v85 = (u)zas_emit;
v86 = va;
- v87 = vd >> 24;
+ v87 = vd >> 24UL;
v88 = ((u(*)())v85)(v86, v87);
+ v88;
goto b125;
-b116: if (vs != 4) goto b118;
- vsib = vsib + 128;
+b130: goto b125;
+b116: if (vs != 4UL) goto b118;
+ vsib = vsib + 128UL;
goto b114;
-b118: if (vs != 8) goto b120;
- vsib = vsib + 192;
+b118: if (vs != 8UL) goto b120;
+ vsib = vsib + 192UL;
goto b114;
-b120: if (vs == 1) goto b114;
+b120: if (vs == 1UL) goto b122;
v62 = (u)zdie;
v63 = (u)"invalid scale";
v64 = ((u(*)())v62)(v63);
+ v64;
goto b114;
-b34: if (vi == 0) goto b43;
+b122: goto b114;
+b113: goto b111;
+b41: goto b39;
+b37: goto b35;
+b34: if (vi == 0UL) goto b45;
v26 = (u)zdie;
v27 = (u)"invalid index";
v28 = ((u(*)())v26)(v27);
-b43: if (vb != 16) goto b49;
- vmod = 0;
- vdw = 4;
- vrm = vrm + 5;
- goto b20;
-b49: if (vb != 4) goto b53;
- v29 = 1;
+ v28;
+b43: if (vb != 16UL) goto b49;
+ vmod = 0UL;
+ vdw = 4UL;
+ vrm = vrm + 5UL;
+b47: goto b32;
+b49: if (vb != 4UL) goto b53;
+ v29 = 1UL;
b55: if (!v29) goto b51;
- vs = 1;
- vi = 4;
- vrm = vrm + 4;
- goto b20;
-b51: if (vb != 5) goto b60;
- v30 = 1;
+ vs = 1UL;
+ vi = 4UL;
+ vrm = vrm + 4UL;
+ goto b47;
+b51: if (vb != 5UL) goto b60;
+ v30 = 1UL;
b62: if (!v30) goto b58;
- vmod = 1;
- vdw = 1;
- vrm = vrm + 5;
- goto b20;
-b58: vrm = vrm + (vb & 7);
- goto b20;
-b60: if (vb != 13) goto b63;
- v30 = 1;
+ vmod = 1UL;
+ vdw = 1UL;
+ vrm = vrm + 5UL;
+ goto b47;
+b58: vrm = vrm + (vb & 7UL);
+ goto b47;
+b60: if (vb != 13UL) goto b63;
+ v30 = 1UL;
goto b62;
-b63: v30 = 0;
+b63: v30 = 0UL;
goto b62;
-b53: if (vb != 12) goto b56;
- v29 = 1;
+b53: if (vb != 12UL) goto b56;
+ v29 = 1UL;
goto b55;
-b56: v29 = 0;
+b56: v29 = 0UL;
goto b55;
-b27: if ((s)vb <= (s)16) goto b30;
- v16 = 1;
+b45: goto b43;
+b25: goto b23;
+b27: if ((s)vb <= (s)16UL) goto b30;
+ v16 = 1UL;
goto b29;
-b30: v16 = 0;
+b30: v16 = 0UL;
goto b29;
-b22: if ((s)vb >= (s)0) goto b68;
- v31 = 1;
-b70: if (!v31) goto b64;
+b22: if ((s)vb >= (s)0UL) goto b68;
+ v31 = 1UL;
+b70: if (!v31) goto b66;
v34 = (u)zdie;
v35 = (u)"invalid reg";
v36 = ((u(*)())v34)(v35);
+ v36;
b64: if (!vs) goto b85;
- if (vb != 16) goto b86;
+ if (vb != 16UL) goto b88;
v37 = (u)zdie;
v38 = (u)"invalid base";
v39 = ((u(*)())v37)(v38);
-b86: if (vi != 4) goto b90;
+ v39;
+b86: if (vi != 4UL) goto b92;
v40 = (u)zdie;
v41 = (u)"invalid index";
v42 = ((u(*)())v40)(v41);
-b90: vrm = vrm + 4;
- goto b20;
-b85: if (vi == 0) goto b94;
+ v42;
+b90: vrm = vrm + 4UL;
+b83: goto b20;
+b92: goto b90;
+b88: goto b86;
+b85: if (vi == 0UL) goto b96;
v43 = (u)zdie;
v44 = (u)"invalid index";
v45 = ((u(*)())v43)(v44);
-b94: if (vb != 16) goto b100;
- vmod = 0;
- vdw = 4;
- vrm = vrm + 5;
- goto b20;
-b100: if (vb != 4) goto b104;
- v46 = 1;
+ v45;
+b94: if (vb != 16UL) goto b100;
+ vmod = 0UL;
+ vdw = 4UL;
+ vrm = vrm + 5UL;
+b98: goto b83;
+b100: if (vb != 4UL) goto b104;
+ v46 = 1UL;
b106: if (!v46) goto b102;
- vs = 1;
- vi = 4;
- vrm = vrm + 4;
- goto b20;
-b102: vrm = vrm + (vb & 7);
- goto b20;
-b104: if (vb != 12) goto b107;
- v46 = 1;
+ vs = 1UL;
+ vi = 4UL;
+ vrm = vrm + 4UL;
+ goto b98;
+b102: vrm = vrm + (vb & 7UL);
+ goto b98;
+b104: if (vb != 12UL) goto b107;
+ v46 = 1UL;
goto b106;
-b107: v46 = 0;
+b107: v46 = 0UL;
goto b106;
-b68: if ((s)vb <= (s)16) goto b73;
- v32 = 1;
+b96: goto b94;
+b66: goto b64;
+b68: if ((s)vb <= (s)16UL) goto b73;
+ v32 = 1UL;
b75: if (!v32) goto b71;
- v31 = 1;
+ v31 = 1UL;
goto b70;
-b71: v31 = 0;
+b71: v31 = 0UL;
goto b70;
-b73: if ((s)vi >= (s)0) goto b78;
- v33 = 1;
+b73: if ((s)vi >= (s)0UL) goto b78;
+ v33 = 1UL;
b80: if (!v33) goto b76;
- v32 = 1;
+ v32 = 1UL;
goto b75;
-b76: v32 = 0;
+b76: v32 = 0UL;
goto b75;
-b78: if ((s)vi <= (s)15) goto b81;
- v33 = 1;
+b78: if ((s)vi <= (s)15UL) goto b81;
+ v33 = 1UL;
goto b80;
-b81: v33 = 0;
+b81: v33 = 0UL;
goto b80;
-b15: vmod = 2;
- vdw = 4;
- goto b10;
-b17: v15 = 0;
+b15: vmod = 2UL;
+ vdw = 4UL;
+ goto b13;
+b17: v15 = 0UL;
goto b19;
-b12: vmod = 0;
- vdw = 0;
+b12: vmod = 0UL;
+ vdw = 0UL;
goto b10;
-b5: if ((s)vr <= (s)15) goto b8;
- v11 = 1;
+b3: goto b1;
+b5: if ((s)vr <= (s)15UL) goto b8;
+ v11 = 1UL;
goto b7;
-b8: v11 = 0;
+b8: v11 = 0UL;
goto b7;
}
u zas_modrr(u va, u vop, u vr, u vb) {
@@ -1484,59 +1596,65 @@ u zas_modrr(u va, u vop, u vr, u vb) {
u v24 = 0;
u v25 = 0;
u v26 = 0;
- if ((s)vr >= (s)0) goto b5;
- v4 = 1;
-b7: if (!v4) goto b1;
+ if ((s)vr >= (s)0UL) goto b5;
+ v4 = 1UL;
+b7: if (!v4) goto b3;
v7 = (u)zdie;
v8 = (u)"invalid reg";
v9 = ((u(*)())v7)(v8);
-b1: if (vop == 255) goto b28;
- if ((vop & -16UL) == 3984) goto b28;
- v11 = 1;
+ v9;
+b1: if (vop == (131327UL & 65535UL)) goto b28;
+ if ((vop & -16UL) == 3984UL) goto b28;
+ v11 = 1UL;
b30: if (!v11) goto b24;
- v10 = 1;
-b26: if (!v10) goto b20;
+ v10 = 1UL;
+b26: if (!v10) goto b22;
v12 = (u)zas_rex;
v13 = va;
v14 = vop;
v15 = vr;
- v16 = 0;
+ v16 = 0UL;
v17 = vb;
v18 = ((u(*)())v12)(v13, v14, v15, v16, v17);
+ v18;
b20: v19 = (u)zas_op;
v20 = va;
v21 = vop;
v22 = ((u(*)())v19)(v20, v21);
+ v22;
v23 = (u)zas_emit;
v24 = va;
- v25 = 192 + (vr << 3 & 56) + (vb & 7);
+ v25 = 192UL + (vr << 3UL & 56UL) + (vb & 7UL);
v26 = ((u(*)())v23)(v24, v25);
- return 0;
-b24: if ((s)vb < (s)8) goto b31;
- v10 = 1;
+ v26;
+ return 0UL;
+b22: goto b20;
+b24: if ((s)vb < (s)8UL) goto b31;
+ v10 = 1UL;
goto b26;
-b31: v10 = 0;
+b31: v10 = 0UL;
goto b26;
-b28: v11 = 0;
+b28: v11 = 0UL;
goto b30;
-b5: if ((s)vr <= (s)15) goto b10;
- v5 = 1;
+b3: goto b1;
+b5: if ((s)vr <= (s)15UL) goto b10;
+ v5 = 1UL;
b12: if (!v5) goto b8;
- v4 = 1;
+ v4 = 1UL;
goto b7;
-b8: v4 = 0;
+b8: v4 = 0UL;
goto b7;
-b10: if ((s)vb >= (s)0) goto b15;
- v6 = 1;
+b10: if ((s)vb >= (s)0UL) goto b15;
+ v6 = 1UL;
b17: if (!v6) goto b13;
- v5 = 1;
+ v5 = 1UL;
goto b12;
-b13: v5 = 0;
+b13: v5 = 0UL;
goto b12;
-b15: if ((s)vb <= (s)15) goto b18;
- v6 = 1;
+b15: if ((s)vb <= (s)15UL) goto b18;
+ v6 = 1UL;
goto b17;
-b18: v6 = 0;
+b18: v6 = 0UL;
goto b17;
}
u zas_op(u va, u vop) {
@@ -1552,20 +1670,23 @@ u zas_op(u va, u vop) {
u v11 = 0;
u v12 = 0;
u v13 = 0;
- if ((s)vop <= (s)255) goto b3;
+ if ((s)vop <= (s)255UL) goto b3;
v2 = (u)zas_emit;
v3 = va;
- v4 = vop >> 8;
+ v4 = vop >> 8UL;
v5 = ((u(*)())v2)(v3, v4);
+ v5;
v6 = (u)zas_emit;
v7 = va;
v8 = vop;
v9 = ((u(*)())v6)(v7, v8);
-b1: return 0;
+ v9;
+b1: return 0UL;
b3: v10 = (u)zas_emit;
v11 = va;
v12 = vop;
v13 = ((u(*)())v10)(v11, v12);
+ v13;
goto b1;
}
u zas_opr(u va, u vop, u vr) {
@@ -1586,41 +1707,46 @@ u zas_opr(u va, u vop, u vr) {
u v17 = 0;
u v18 = 0;
u v19 = 0;
- if ((s)vr >= (s)0) goto b5;
- v3 = 1;
-b7: if (!v3) goto b1;
+ if ((s)vr >= (s)0UL) goto b5;
+ v3 = 1UL;
+b7: if (!v3) goto b3;
v4 = (u)zdie;
v5 = (u)"invalid reg";
v6 = ((u(*)())v4)(v5);
-b1: if (vop == 80) goto b18;
- if (vop == 88) goto b18;
- v8 = 1;
+ v6;
+b1: if (vop == 80UL) goto b18;
+ if (vop == 88UL) goto b18;
+ v8 = 1UL;
b20: if (!v8) goto b14;
- v7 = 1;
-b16: if (!v7) goto b10;
+ v7 = 1UL;
+b16: if (!v7) goto b12;
v9 = (u)zas_rex;
v10 = va;
v11 = vop;
v12 = vr;
- v13 = 0;
- v14 = 0;
+ v13 = 0UL;
+ v14 = 0UL;
v15 = ((u(*)())v9)(v10, v11, v12, v13, v14);
+ v15;
b10: v16 = (u)zas_op;
v17 = va;
- v18 = vop + (vr & 7);
+ v18 = vop + (vr & 7UL);
v19 = ((u(*)())v16)(v17, v18);
- return 0;
-b14: if ((s)vr <= (s)7) goto b21;
- v7 = 1;
+ v19;
+ return 0UL;
+b12: goto b10;
+b14: if ((s)vr <= (s)7UL) goto b21;
+ v7 = 1UL;
goto b16;
-b21: v7 = 0;
+b21: v7 = 0UL;
goto b16;
-b18: v8 = 0;
+b18: v8 = 0UL;
goto b20;
-b5: if ((s)vr <= (s)15) goto b8;
- v3 = 1;
+b3: goto b1;
+b5: if ((s)vr <= (s)15UL) goto b8;
+ v3 = 1UL;
goto b7;
-b8: v3 = 0;
+b8: v3 = 0UL;
goto b7;
}
u zas_opri64(u va, u vop, u vr, u vx) {
@@ -1664,48 +1790,59 @@ u zas_opri64(u va, u vop, u vr, u vx) {
u v41 = 0;
u v42 = 0;
u v43 = 0;
- if (vop == 184) goto b1;
+ if (vop == 184UL) goto b3;
v4 = (u)zdie;
v5 = (u)"only movabs";
v6 = ((u(*)())v4)(v5);
+ v6;
b1: v7 = (u)zas_opr;
v8 = va;
v9 = vop;
v10 = vr;
v11 = ((u(*)())v7)(v8, v9, v10);
+ v11;
v12 = (u)zas_emit;
v13 = va;
v14 = vx;
v15 = ((u(*)())v12)(v13, v14);
+ v15;
v16 = (u)zas_emit;
v17 = va;
- v18 = vx >> 8;
+ v18 = vx >> 8UL;
v19 = ((u(*)())v16)(v17, v18);
+ v19;
v20 = (u)zas_emit;
v21 = va;
- v22 = vx >> 16;
+ v22 = vx >> 16UL;
v23 = ((u(*)())v20)(v21, v22);
+ v23;
v24 = (u)zas_emit;
v25 = va;
- v26 = vx >> 24;
+ v26 = vx >> 24UL;
v27 = ((u(*)())v24)(v25, v26);
+ v27;
v28 = (u)zas_emit;
v29 = va;
- v30 = vx >> 32;
+ v30 = vx >> 32UL;
v31 = ((u(*)())v28)(v29, v30);
+ v31;
v32 = (u)zas_emit;
v33 = va;
- v34 = vx >> 40;
+ v34 = vx >> 40UL;
v35 = ((u(*)())v32)(v33, v34);
+ v35;
v36 = (u)zas_emit;
v37 = va;
- v38 = vx >> 48;
+ v38 = vx >> 48UL;
v39 = ((u(*)())v36)(v37, v38);
+ v39;
v40 = (u)zas_emit;
v41 = va;
- v42 = vx >> 56;
+ v42 = vx >> 56UL;
v43 = ((u(*)())v40)(v41, v42);
- return 0;
+ v43;
+ return 0UL;
+b3: goto b1;
}
u zas_rex(u va, u vop, u vr, u vi, u vb) {
u vw = 0;
@@ -1716,34 +1853,36 @@ u zas_rex(u va, u vop, u vr, u vi, u vb) {
u v10 = 0;
u v11 = 0;
u v12 = 0;
- if (!*(u*)(va + 48)) goto b1;
- return 0;
-b1: vw = 8;
- if (vop != 138) goto b8;
- v6 = 1;
-b10: if (!v6) goto b4;
- vw = 0;
- if ((s)vr >= (s)8) goto b16;
- if ((s)vi >= (s)8) goto b20;
- if ((s)vb >= (s)8) goto b20;
- v8 = 1;
+ if (!*(u*)(va + 48UL)) goto b3;
+ return 0UL;
+b3: vw = 8UL;
+ if (vop != 138UL) goto b8;
+ v6 = 1UL;
+b10: if (!v6) goto b6;
+ vw = 0UL;
+ if ((s)vr >= (s)8UL) goto b16;
+ if ((s)vi >= (s)8UL) goto b20;
+ if ((s)vb >= (s)8UL) goto b20;
+ v8 = 1UL;
b22: if (!v8) goto b16;
- v7 = 1;
-b18: if (!v7) goto b4;
- return 0;
-b4: v9 = (u)zas_emit;
+ v7 = 1UL;
+b18: if (!v7) goto b14;
+ return 0UL;
+b14:b4: v9 = (u)zas_emit;
v10 = va;
- v11 = 64 + vw + (vr >> 1 & 4) + (vi >> 2 & 2) + (vb >> 3 & 1);
+ v11 = 64UL + vw + (vr >> 1UL & 4UL) + (vi >> 2UL & 2UL) + (vb >> 3UL & 1UL);
v12 = ((u(*)())v9)(v10, v11);
- return 0;
-b16: v7 = 0;
+ v12;
+ return 0UL;
+b16: v7 = 0UL;
goto b18;
-b20: v8 = 0;
+b20: v8 = 0UL;
goto b22;
-b8: if (vop != 136) goto b11;
- v6 = 1;
+b6: goto b4;
+b8: if (vop != 136UL) goto b11;
+ v6 = 1UL;
goto b10;
-b11: v6 = 0;
+b11: v6 = 0UL;
goto b10;
}
u zassert(u vx, u vmsg) {
@@ -1752,15 +1891,34 @@ u zassert(u vx, u vmsg) {
u v4 = 0;
u v5 = 0;
if (!vx) goto b5;
- v2 = 0;
-b6: if (!v2) goto b1;
+ v2 = 0UL;
+b6: if (!v2) goto b3;
v3 = (u)zdie;
v4 = vmsg;
v5 = ((u(*)())v3)(v4);
-b1: return 0;
-b5: v2 = 1;
+ v5;
+b1: return 0UL;
+b3: goto b1;
+b5: v2 = 1UL;
goto b6;
}
+u zassert_zero(u vb, u vsize) {
+ u vi = 0;
+ u v3 = 0;
+ u v4 = 0;
+ u v5 = 0;
+ vi = 0UL;
+b1: if (vi != vsize) goto b5;
+ return 0UL;
+b5: if (!(u)*(b*)(vb + vi * 1UL)) goto b8;
+ v3 = (u)zdie;
+ v4 = (u)"HEAP CORRUPTION";
+ v5 = ((u(*)())v3)(v4);
+ v5;
+b6: vi = vi + 1UL;
+ goto b1;
+b8: goto b6;
+}
u zcall_check(u vc, u vn) {
u vresult = 0;
u vret = 0;
@@ -1837,302 +1995,307 @@ u zcall_check(u vc, u vn) {
u v74 = 0;
u v75 = 0;
u v76 = 0;
- vresult = 0;
+ vresult = 0UL;
if (!vn) goto b5;
- v4 = 0;
-b6: if (!v4) goto b1;
+ v4 = 0UL;
+b6: if (!v4) goto b3;
return vresult;
-b1: if (*(u*)vn != 7) goto b9;
+b3: if (*(u*)(vn + 0UL) != 7UL) goto b9;
v5 = (u)zcall_check;
v6 = vc;
- v7 = *(u*)(vn + 8);
+ v7 = *(u*)(vn + 8UL);
v8 = ((u(*)())v5)(v6, v7);
vresult = v8;
- vn = *(u*)(vn + 16);
+ vn = *(u*)(vn + 16UL);
b11: if (!vn) goto b17;
- v9 = 0;
-b18: if (!v9) goto b13;
- vresult = 1;
+ v9 = 0UL;
+b18: if (!v9) goto b15;
+ vresult = 1UL;
b7: return vresult;
-b13: v10 = (u)zcall_check;
+b15: v10 = (u)zcall_check;
v11 = vc;
- v12 = *(u*)(vn + 8);
+ v12 = *(u*)(vn + 8UL);
v13 = ((u(*)())v10)(v11, v12);
vret = v13;
if (!vresult) goto b24;
if (!vret) goto b24;
- v14 = 1;
-b26: if (!v14) goto b20;
+ v14 = 1UL;
+b26: if (!v14) goto b22;
v15 = (u)zcdie;
v16 = vc;
v17 = (u)"multiple calls in call";
v18 = ((u(*)())v15)(v16, v17);
+ v18;
b20: vresult = vresult | vret;
- vn = *(u*)(vn + 16);
+ vn = *(u*)(vn + 16UL);
goto b11;
-b24: v14 = 0;
+b22: goto b20;
+b24: v14 = 0UL;
goto b26;
-b17: v9 = 1;
+b17: v9 = 1UL;
goto b18;
-b9: if (*(u*)vn != 51) goto b31;
- v19 = 1;
+b9: if (*(u*)(vn + 0UL) != 51UL) goto b31;
+ v19 = 1UL;
b33: if (!v19) goto b29;
v20 = (u)zcall_check;
v21 = vc;
- v22 = *(u*)(vn + 8);
+ v22 = *(u*)(vn + 8UL);
v23 = ((u(*)())v20)(v21, v22);
vresult = v23;
v24 = (u)zcall_check;
v25 = vc;
- v26 = *(u*)(vn + 16);
+ v26 = *(u*)(vn + 16UL);
v27 = ((u(*)())v24)(v25, v26);
vresult = vresult | v27;
goto b7;
-b29: if (*(u*)vn != 33) goto b40;
- v28 = 1;
+b29: if (*(u*)(vn + 0UL) != 33UL) goto b40;
+ v28 = 1UL;
b42: if (!v28) goto b38;
v46 = (u)zcall_check;
v47 = vc;
- v48 = *(u*)(vn + 8);
+ v48 = *(u*)(vn + 8UL);
v49 = ((u(*)())v46)(v47, v48);
vresult = v49;
v50 = (u)zcall_check;
v51 = vc;
- v52 = *(u*)(vn + 16);
+ v52 = *(u*)(vn + 16UL);
v53 = ((u(*)())v50)(v51, v52);
vret = v53;
if (!vresult) goto b135;
if (!vret) goto b135;
- v54 = 1;
-b137: if (!v54) goto b131;
+ v54 = 1UL;
+b137: if (!v54) goto b133;
v55 = (u)zcdie;
v56 = vc;
v57 = (u)"multiple calls in expression";
v58 = ((u(*)())v55)(v56, v57);
+ v58;
b131: vresult = vresult | vret;
goto b7;
-b135: v54 = 0;
+b133: goto b131;
+b135: v54 = 0UL;
goto b137;
-b38: if (*(u*)vn != 35) goto b142;
- v59 = 1;
+b38: if (*(u*)(vn + 0UL) != 35UL) goto b142;
+ v59 = 1UL;
b144: if (!v59) goto b140;
v65 = (u)zcall_check;
v66 = vc;
- v67 = *(u*)(vn + 8);
+ v67 = *(u*)(vn + 8UL);
v68 = ((u(*)())v65)(v66, v67);
vresult = v68;
goto b7;
-b140: if (*(u*)vn != 3) goto b175;
- v69 = 1;
+b140: if (*(u*)(vn + 0UL) != 3UL) goto b175;
+ v69 = 1UL;
b177: if (!v69) goto b173;
goto b7;
b173: v74 = (u)zdie;
v75 = (u)"invalid expr";
v76 = ((u(*)())v74)(v75);
+ v76;
goto b7;
-b175: if (*(u*)vn != 1) goto b180;
- v70 = 1;
+b175: if (*(u*)(vn + 0UL) != 1UL) goto b180;
+ v70 = 1UL;
b182: if (!v70) goto b178;
- v69 = 1;
+ v69 = 1UL;
goto b177;
-b178: v69 = 0;
+b178: v69 = 0UL;
goto b177;
-b180: if (*(u*)vn != 2) goto b185;
- v71 = 1;
+b180: if (*(u*)(vn + 0UL) != 2UL) goto b185;
+ v71 = 1UL;
b187: if (!v71) goto b183;
- v70 = 1;
+ v70 = 1UL;
goto b182;
-b183: v70 = 0;
+b183: v70 = 0UL;
goto b182;
-b185: if (*(u*)vn != 0) goto b190;
- v72 = 1;
+b185: if (*(u*)(vn + 0UL) != 0UL) goto b190;
+ v72 = 1UL;
b192: if (!v72) goto b188;
- v71 = 1;
+ v71 = 1UL;
goto b187;
-b188: v71 = 0;
+b188: v71 = 0UL;
goto b187;
-b190: if (*(u*)vn != 34) goto b195;
- v73 = 1;
+b190: if (*(u*)(vn + 0UL) != 34UL) goto b195;
+ v73 = 1UL;
b197: if (!v73) goto b193;
- v72 = 1;
+ v72 = 1UL;
goto b192;
-b193: v72 = 0;
+b193: v72 = 0UL;
goto b192;
-b195: if (*(u*)vn != 4) goto b198;
- v73 = 1;
+b195: if (*(u*)(vn + 0UL) != 4UL) goto b198;
+ v73 = 1UL;
goto b197;
-b198: v73 = 0;
+b198: v73 = 0UL;
goto b197;
-b142: if (*(u*)vn != 36) goto b147;
- v60 = 1;
+b142: if (*(u*)(vn + 0UL) != 36UL) goto b147;
+ v60 = 1UL;
b149: if (!v60) goto b145;
- v59 = 1;
+ v59 = 1UL;
goto b144;
-b145: v59 = 0;
+b145: v59 = 0UL;
goto b144;
-b147: if (*(u*)vn != 57) goto b152;
- v61 = 1;
+b147: if (*(u*)(vn + 0UL) != 57UL) goto b152;
+ v61 = 1UL;
b154: if (!v61) goto b150;
- v60 = 1;
+ v60 = 1UL;
goto b149;
-b150: v60 = 0;
+b150: v60 = 0UL;
goto b149;
-b152: if (*(u*)vn != 58) goto b157;
- v62 = 1;
+b152: if (*(u*)(vn + 0UL) != 58UL) goto b157;
+ v62 = 1UL;
b159: if (!v62) goto b155;
- v61 = 1;
+ v61 = 1UL;
goto b154;
-b155: v61 = 0;
+b155: v61 = 0UL;
goto b154;
-b157: if (*(u*)vn != 56) goto b162;
- v63 = 1;
+b157: if (*(u*)(vn + 0UL) != 56UL) goto b162;
+ v63 = 1UL;
b164: if (!v63) goto b160;
- v62 = 1;
+ v62 = 1UL;
goto b159;
-b160: v62 = 0;
+b160: v62 = 0UL;
goto b159;
-b162: if (*(u*)vn != 37) goto b167;
- v64 = 1;
+b162: if (*(u*)(vn + 0UL) != 37UL) goto b167;
+ v64 = 1UL;
b169: if (!v64) goto b165;
- v63 = 1;
+ v63 = 1UL;
goto b164;
-b165: v63 = 0;
+b165: v63 = 0UL;
goto b164;
-b167: if (*(u*)vn != 9) goto b170;
- v64 = 1;
+b167: if (*(u*)(vn + 0UL) != 9UL) goto b170;
+ v64 = 1UL;
goto b169;
-b170: v64 = 0;
+b170: v64 = 0UL;
goto b169;
-b40: if (*(u*)vn != 38) goto b45;
- v29 = 1;
+b40: if (*(u*)(vn + 0UL) != 38UL) goto b45;
+ v29 = 1UL;
b47: if (!v29) goto b43;
- v28 = 1;
+ v28 = 1UL;
goto b42;
-b43: v28 = 0;
+b43: v28 = 0UL;
goto b42;
-b45: if (*(u*)vn != 39) goto b50;
- v30 = 1;
+b45: if (*(u*)(vn + 0UL) != 39UL) goto b50;
+ v30 = 1UL;
b52: if (!v30) goto b48;
- v29 = 1;
+ v29 = 1UL;
goto b47;
-b48: v29 = 0;
+b48: v29 = 0UL;
goto b47;
-b50: if (*(u*)vn != 41) goto b55;
- v31 = 1;
+b50: if (*(u*)(vn + 0UL) != 41UL) goto b55;
+ v31 = 1UL;
b57: if (!v31) goto b53;
- v30 = 1;
+ v30 = 1UL;
goto b52;
-b53: v30 = 0;
+b53: v30 = 0UL;
goto b52;
-b55: if (*(u*)vn != 40) goto b60;
- v32 = 1;
+b55: if (*(u*)(vn + 0UL) != 40UL) goto b60;
+ v32 = 1UL;
b62: if (!v32) goto b58;
- v31 = 1;
+ v31 = 1UL;
goto b57;
-b58: v31 = 0;
+b58: v31 = 0UL;
goto b57;
-b60: if (*(u*)vn != 42) goto b65;
- v33 = 1;
+b60: if (*(u*)(vn + 0UL) != 42UL) goto b65;
+ v33 = 1UL;
b67: if (!v33) goto b63;
- v32 = 1;
+ v32 = 1UL;
goto b62;
-b63: v32 = 0;
+b63: v32 = 0UL;
goto b62;
-b65: if (*(u*)vn != 43) goto b70;
- v34 = 1;
+b65: if (*(u*)(vn + 0UL) != 43UL) goto b70;
+ v34 = 1UL;
b72: if (!v34) goto b68;
- v33 = 1;
+ v33 = 1UL;
goto b67;
-b68: v33 = 0;
+b68: v33 = 0UL;
goto b67;
-b70: if (*(u*)vn != 44) goto b75;
- v35 = 1;
+b70: if (*(u*)(vn + 0UL) != 44UL) goto b75;
+ v35 = 1UL;
b77: if (!v35) goto b73;
- v34 = 1;
+ v34 = 1UL;
goto b72;
-b73: v34 = 0;
+b73: v34 = 0UL;
goto b72;
-b75: if (*(u*)vn != 50) goto b80;
- v36 = 1;
+b75: if (*(u*)(vn + 0UL) != 50UL) goto b80;
+ v36 = 1UL;
b82: if (!v36) goto b78;
- v35 = 1;
+ v35 = 1UL;
goto b77;
-b78: v35 = 0;
+b78: v35 = 0UL;
goto b77;
-b80: if (*(u*)vn != 45) goto b85;
- v37 = 1;
+b80: if (*(u*)(vn + 0UL) != 45UL) goto b85;
+ v37 = 1UL;
b87: if (!v37) goto b83;
- v36 = 1;
+ v36 = 1UL;
goto b82;
-b83: v36 = 0;
+b83: v36 = 0UL;
goto b82;
-b85: if (*(u*)vn != 46) goto b90;
- v38 = 1;
+b85: if (*(u*)(vn + 0UL) != 46UL) goto b90;
+ v38 = 1UL;
b92: if (!v38) goto b88;
- v37 = 1;
+ v37 = 1UL;
goto b87;
-b88: v37 = 0;
+b88: v37 = 0UL;
goto b87;
-b90: if (*(u*)vn != 47) goto b95;
- v39 = 1;
+b90: if (*(u*)(vn + 0UL) != 47UL) goto b95;
+ v39 = 1UL;
b97: if (!v39) goto b93;
- v38 = 1;
+ v38 = 1UL;
goto b92;
-b93: v38 = 0;
+b93: v38 = 0UL;
goto b92;
-b95: if (*(u*)vn != 59) goto b100;
- v40 = 1;
+b95: if (*(u*)(vn + 0UL) != 59UL) goto b100;
+ v40 = 1UL;
b102: if (!v40) goto b98;
- v39 = 1;
+ v39 = 1UL;
goto b97;
-b98: v39 = 0;
+b98: v39 = 0UL;
goto b97;
-b100: if (*(u*)vn != 60) goto b105;
- v41 = 1;
+b100: if (*(u*)(vn + 0UL) != 60UL) goto b105;
+ v41 = 1UL;
b107: if (!v41) goto b103;
- v40 = 1;
+ v40 = 1UL;
goto b102;
-b103: v40 = 0;
+b103: v40 = 0UL;
goto b102;
-b105: if (*(u*)vn != 48) goto b110;
- v42 = 1;
+b105: if (*(u*)(vn + 0UL) != 48UL) goto b110;
+ v42 = 1UL;
b112: if (!v42) goto b108;
- v41 = 1;
+ v41 = 1UL;
goto b107;
-b108: v41 = 0;
+b108: v41 = 0UL;
goto b107;
-b110: if (*(u*)vn != 49) goto b115;
- v43 = 1;
+b110: if (*(u*)(vn + 0UL) != 49UL) goto b115;
+ v43 = 1UL;
b117: if (!v43) goto b113;
- v42 = 1;
+ v42 = 1UL;
goto b112;
-b113: v42 = 0;
+b113: v42 = 0UL;
goto b112;
-b115: if (*(u*)vn != 53) goto b120;
- v44 = 1;
+b115: if (*(u*)(vn + 0UL) != 53UL) goto b120;
+ v44 = 1UL;
b122: if (!v44) goto b118;
- v43 = 1;
+ v43 = 1UL;
goto b117;
-b118: v43 = 0;
+b118: v43 = 0UL;
goto b117;
-b120: if (*(u*)vn != 54) goto b125;
- v45 = 1;
+b120: if (*(u*)(vn + 0UL) != 54UL) goto b125;
+ v45 = 1UL;
b127: if (!v45) goto b123;
- v44 = 1;
+ v44 = 1UL;
goto b122;
-b123: v44 = 0;
+b123: v44 = 0UL;
goto b122;
-b125: if (*(u*)vn != 55) goto b128;
- v45 = 1;
+b125: if (*(u*)(vn + 0UL) != 55UL) goto b128;
+ v45 = 1UL;
goto b127;
-b128: v45 = 0;
+b128: v45 = 0UL;
goto b127;
-b31: if (*(u*)vn != 52) goto b34;
- v19 = 1;
+b31: if (*(u*)(vn + 0UL) != 52UL) goto b34;
+ v19 = 1UL;
goto b33;
-b34: v19 = 0;
+b34: v19 = 0UL;
goto b33;
-b5: v4 = 1;
+b5: v4 = 1UL;
goto b6;
}
u zcall_to_ir(u vic, u vn) {
@@ -2140,6 +2303,8 @@ u zcall_to_ir(u vic, u vn) {
u va = 0;
u vb = 0;
u vret = 0;
+ u vnext = 0;
+ u vcur = 0;
u varg = 0;
u vtmp = 0;
u vfp = 0;
@@ -2257,28 +2422,29 @@ u zcall_to_ir(u vic, u vn) {
u v122 = 0;
u v123 = 0;
u v124 = 0;
- if (*(u*)*(u*)(vn + 8) != 0) goto b5;
+ if (*(u*)(*(u*)(vn + 8UL) + 0UL) != 0UL) goto b5;
v16 = (u)zstrcmp;
- v17 = *(u*)(*(u*)(vn + 8) + 56);
+ v17 = *(u*)(*(u*)(vn + 8UL) + 56UL);
v18 = (u)"_include";
v19 = ((u(*)())v16)(v17, v18);
- if (v19 != 0) goto b5;
- v15 = 1;
-b7: if (!v15) goto b1;
- if (*(u*)*(u*)(*(u*)(vn + 16) + 8) == 3) goto b9;
+ if (v19 != 0UL) goto b5;
+ v15 = 1UL;
+b7: if (!v15) goto b3;
+ if (*(u*)(*(u*)(*(u*)(vn + 16UL) + 8UL) + 0UL) == 3UL) goto b11;
v20 = (u)zcdie;
- v21 = *(u*)vic;
+ v21 = *(u*)(vic + 0UL);
v22 = (u)"non literal include";
v23 = ((u(*)())v20)(v21, v22);
+ v23;
b9: v24 = (u)zgather_include;
- v25 = *(u*)vic;
- v26 = *(u*)(*(u*)(*(u*)(vn + 16) + 8) + 56);
+ v25 = *(u*)(vic + 0UL);
+ v26 = *(u*)(*(u*)(*(u*)(vn + 16UL) + 8UL) + 56UL);
v27 = (u)&vslen;
v28 = ((u(*)())v24)(v25, v26, v27);
vblob = v28;
v29 = (u)zexpr_to_ir;
v30 = vic;
- v31 = *(u*)(*(u*)(*(u*)(vn + 16) + 16) + 8);
+ v31 = *(u*)(*(u*)(*(u*)(vn + 16UL) + 16UL) + 8UL);
v32 = ((u(*)())v29)(v30, v31);
va = v32;
v33 = (u)zmkirconst;
@@ -2288,16 +2454,17 @@ b9: v24 = (u)zgather_include;
vb = v36;
v37 = (u)zmkirop;
v38 = vic;
- v39 = 6;
+ v39 = 6UL;
v40 = va;
v41 = vb;
v42 = ((u(*)())v37)(v38, v39, v40, v41);
vo = v42;
- *(u*)(vo + 48) = *(u*)(*(u*)(*(u*)(*(u*)(*(u*)(vn + 16) + 16) + 8) + 64) + 16);
+ *(u*)(vo + 48UL) = *(u*)(*(u*)(*(u*)(*(u*)(*(u*)(vn + 16UL) + 16UL) + 8UL) + 64UL) + 16UL);
v43 = (u)ziraddop;
v44 = vic;
v45 = vo;
v46 = ((u(*)())v43)(v44, v45);
+ v46;
v47 = (u)zmkirstr;
v48 = vic;
v49 = vblob;
@@ -2305,117 +2472,124 @@ b9: v24 = (u)zgather_include;
v51 = ((u(*)())v47)(v48, v49, v50);
vo = v51;
return vo;
-b1: v52 = (u)zmkirtmp;
+b11: goto b9;
+b3: v52 = (u)zmkirtmp;
v53 = vic;
- v54 = *(u*)(*(u*)(vn + 8) + 64);
+ v54 = *(u*)(*(u*)(vn + 8UL) + 64UL);
v55 = ((u(*)())v52)(v53, v54);
vfp = v55;
v56 = (u)zexpr_to_ir;
v57 = vic;
- v58 = *(u*)(vn + 8);
+ v58 = *(u*)(vn + 8UL);
v59 = ((u(*)())v56)(v57, v58);
vb = v59;
v60 = (u)zmkirop;
v61 = vic;
- v62 = 6;
+ v62 = 6UL;
v63 = vfp;
v64 = vb;
v65 = ((u(*)())v60)(v61, v62, v63, v64);
vo = v65;
- *(u*)(vo + 48) = *(u*)(*(u*)(vn + 8) + 64);
+ *(u*)(vo + 48UL) = *(u*)(*(u*)(vn + 8UL) + 64UL);
v66 = (u)ziraddop;
v67 = vic;
v68 = vo;
v69 = ((u(*)())v66)(v67, v68);
- varg = *(u*)(vn + 16);
- vcount = 0;
+ v69;
+ varg = *(u*)(vn + 16UL);
+ vcount = 0UL;
b23: if (!varg) goto b29;
- v70 = 0;
-b30: if (!v70) goto b25;
+ v70 = 0UL;
+b30: if (!v70) goto b27;
v71 = (u)zalloc;
- v72 = *(u*)(vic + 16);
- v73 = 8 * vcount;
+ v72 = *(u*)(vic + 16UL);
+ v73 = 8UL * vcount;
v74 = ((u(*)())v71)(v72, v73);
vtmp = v74;
- varg = *(u*)(vn + 16);
- vi = 0;
+ varg = *(u*)(vn + 16UL);
+ vi = 0UL;
b32: if (!varg) goto b38;
- v75 = 0;
-b39: if (!v75) goto b34;
- varg = *(u*)(vn + 16);
- vi = 0;
-b44: if (vi != vcount) goto b46;
+ v75 = 0UL;
+b39: if (!v75) goto b36;
+ varg = *(u*)(vn + 16UL);
+ vi = 0UL;
+b44: if (vi != vcount) goto b48;
v103 = (u)zfree;
- v104 = *(u*)(vic + 16);
+ v104 = *(u*)(vic + 16UL);
v105 = vtmp;
v106 = ((u(*)())v103)(v104, v105);
+ v106;
v107 = (u)zmkirtmp;
v108 = vic;
- v109 = *(u*)(vn + 64);
+ v109 = *(u*)(vn + 64UL);
v110 = ((u(*)())v107)(v108, v109);
vret = v110;
v111 = (u)zmkirretval;
v112 = vic;
v113 = vret;
- v114 = *(u*)(vn + 64);
+ v114 = *(u*)(vn + 64UL);
v115 = ((u(*)())v111)(v112, v113, v114);
vo = v115;
v116 = (u)ziraddop;
v117 = vic;
v118 = vo;
v119 = ((u(*)())v116)(v117, v118);
+ v119;
v120 = (u)zircall;
v121 = vic;
v122 = vfp;
v123 = vcount;
v124 = ((u(*)())v120)(v121, v122, v123);
+ v124;
return vret;
-b46: v94 = (u)zmkirarg;
+b48: v94 = (u)zmkirarg;
v95 = vic;
v96 = vi;
- v97 = *(u*)(vtmp + vi * 8);
+ v97 = *(u*)(vtmp + vi * 8UL);
v98 = ((u(*)())v94)(v95, v96, v97);
vo = v98;
v99 = (u)ziraddop;
v100 = vic;
v101 = vo;
v102 = ((u(*)())v99)(v100, v101);
- varg = *(u*)(varg + 16);
- vi = vi + 1;
+ v102;
+ varg = *(u*)(varg + 16UL);
+ vi = vi + 1UL;
goto b44;
-b34: v76 = (u)zmkirtmp;
+b36: v76 = (u)zmkirtmp;
v77 = vic;
- v78 = *(u*)(*(u*)(varg + 8) + 64);
+ v78 = *(u*)(*(u*)(varg + 8UL) + 64UL);
v79 = ((u(*)())v76)(v77, v78);
- *(u*)(vtmp + vi * 8) = v79;
+ *(u*)(vtmp + vi * 8UL) = v79;
v80 = (u)zexpr_to_ir;
v81 = vic;
- v82 = *(u*)(varg + 8);
+ v82 = *(u*)(varg + 8UL);
v83 = ((u(*)())v80)(v81, v82);
vb = v83;
v84 = (u)zmkirop;
v85 = vic;
- v86 = 6;
- v87 = *(u*)(vtmp + vi * 8);
+ v86 = 6UL;
+ v87 = *(u*)(vtmp + vi * 8UL);
v88 = vb;
v89 = ((u(*)())v84)(v85, v86, v87, v88);
vo = v89;
- *(u*)(vo + 48) = *(u*)(*(u*)(varg + 8) + 64);
+ *(u*)(vo + 48UL) = *(u*)(*(u*)(varg + 8UL) + 64UL);
v90 = (u)ziraddop;
v91 = vic;
v92 = vo;
v93 = ((u(*)())v90)(v91, v92);
- varg = *(u*)(varg + 16);
- vi = vi + 1;
+ v93;
+ varg = *(u*)(varg + 16UL);
+ vi = vi + 1UL;
goto b32;
-b38: v75 = 1;
+b38: v75 = 1UL;
goto b39;
-b25: vcount = vcount + 1;
- varg = *(u*)(varg + 16);
+b27: vcount = vcount + 1UL;
+ varg = *(u*)(varg + 16UL);
goto b23;
-b29: v70 = 1;
+b29: v70 = 1UL;
goto b30;
-b5: v15 = 0;
+b5: v15 = 0UL;
goto b7;
}
u zcdie(u vc, u vmsg) {
@@ -2440,22 +2614,27 @@ u zcdie(u vc, u vmsg) {
v2 = (u)zcshow_context;
v3 = vc;
v4 = ((u(*)())v2)(v3);
+ v4;
v5 = (u)zfputs;
- v6 = *(u*)(vc + 8);
+ v6 = *(u*)(vc + 8UL);
v7 = (u)"cdie: ";
v8 = ((u(*)())v5)(v6, v7);
+ v8;
v9 = (u)zfputs;
- v10 = *(u*)(vc + 8);
+ v10 = *(u*)(vc + 8UL);
v11 = vmsg;
v12 = ((u(*)())v9)(v10, v11);
+ v12;
v13 = (u)zfputs;
- v14 = *(u*)(vc + 8);
+ v14 = *(u*)(vc + 8UL);
v15 = (u)"\012";
v16 = ((u(*)())v13)(v14, v15);
+ v16;
v17 = (u)zexit;
- v18 = 1;
+ v18 = 1UL;
v19 = ((u(*)())v17)(v18);
- return 0;
+ v19;
+ return 0UL;
}
u zcharset(u vc, u vs) {
u vi = 0;
@@ -2471,19 +2650,20 @@ u zcharset(u vc, u vs) {
v5 = vc;
v6 = ((u(*)())v4)(v5);
vch = v6;
- vi = 0;
-b2: if (!(u)*(b*)(vs + vi)) goto b8;
- v7 = 0;
-b9: if (!v7) goto b4;
+ vi = 0UL;
+b2: if (!(u)*(b*)(vs + vi * 1UL)) goto b8;
+ v7 = 0UL;
+b9: if (!v7) goto b6;
v8 = (u)zfail;
v9 = vc;
v10 = ((u(*)())v8)(v9);
- return 0;
-b4: if (vch != (u)*(b*)(vs + vi)) goto b11;
- return 1;
-b11: vi = vi + 1;
+ v10;
+ return 0UL;
+b6: if (vch != (u)*(b*)(vs + vi * 1UL)) goto b13;
+ return 1UL;
+b13: vi = vi + 1UL;
goto b2;
-b8: v7 = 1;
+b8: v7 = 1UL;
goto b9;
}
u zcheck_usage(u vc) {
@@ -2493,37 +2673,41 @@ u zcheck_usage(u vc) {
u v4 = 0;
u v5 = 0;
u v6 = 0;
-b1: vd = *(u*)(vc + 104);
+b1: vd = *(u*)(vc + 104UL);
if (!vd) goto b7;
- v2 = 0;
-b8: if (!v2) goto b3;
- return 0;
-b3: *(u*)(vc + 104) = *(u*)(vd + 48);
- if (!*(u*)(vd + 104)) goto b1;
+ v2 = 0UL;
+b8: if (!v2) goto b5;
+ return 0UL;
+b5: *(u*)(vc + 104UL) = *(u*)(vd + 48UL);
+ if (!*(u*)(vd + 104UL)) goto b11;
v3 = (u)zmark_ir_used;
v4 = vc;
v5 = vd;
v6 = ((u(*)())v3)(v4, v5);
- goto b1;
-b7: v2 = 1;
+ v6;
+b9: goto b1;
+b11: goto b9;
+b7: v2 = 1UL;
goto b8;
}
u zchoice(u vc) {
u v1 = 0;
u v2 = 0;
u v3 = 0;
- if (*(u*)(vc + 128) != *(u*)(vc + 136)) goto b1;
+ if (*(u*)(vc + 128UL) != *(u*)(vc + 136UL)) goto b3;
v1 = (u)zdie;
v2 = (u)"choice overflow";
v3 = ((u(*)())v1)(v2);
-b1: *(u*)(*(u*)(vc + 120) + *(u*)(vc + 128) * 48) = *(u*)(vc + 48);
- *(u*)(*(u*)(vc + 120) + *(u*)(vc + 128) * 48 + 8) = *(u*)(vc + 144);
- *(u*)(*(u*)(vc + 120) + *(u*)(vc + 128) * 48 + 16) = *(u*)(vc + 152);
- *(u*)(*(u*)(vc + 120) + *(u*)(vc + 128) * 48 + 24) = *(u*)(vc + 72);
- *(u*)(*(u*)(vc + 120) + *(u*)(vc + 128) * 48 + 32) = *(u*)(vc + 56);
- *(u*)(*(u*)(vc + 120) + *(u*)(vc + 128) * 48 + 40) = *(u*)(vc + 64);
- *(u*)(vc + 128) = *(u*)(vc + 128) + 1;
- return 0;
+ v3;
+b1: *(u*)(*(u*)(vc + 120UL) + *(u*)(vc + 128UL) * 48UL + 0UL) = *(u*)(vc + 48UL);
+ *(u*)(*(u*)(vc + 120UL) + *(u*)(vc + 128UL) * 48UL + 8UL) = *(u*)(vc + 144UL);
+ *(u*)(*(u*)(vc + 120UL) + *(u*)(vc + 128UL) * 48UL + 16UL) = *(u*)(vc + 152UL);
+ *(u*)(*(u*)(vc + 120UL) + *(u*)(vc + 128UL) * 48UL + 24UL) = *(u*)(vc + 72UL);
+ *(u*)(*(u*)(vc + 120UL) + *(u*)(vc + 128UL) * 48UL + 32UL) = *(u*)(vc + 56UL);
+ *(u*)(*(u*)(vc + 120UL) + *(u*)(vc + 128UL) * 48UL + 40UL) = *(u*)(vc + 64UL);
+ *(u*)(vc + 128UL) = *(u*)(vc + 128UL) + 1UL;
+ return 0UL;
+b3: goto b1;
}
u zclose(u vfd) {
u v1 = 0;
@@ -2536,13 +2720,13 @@ u zclose(u vfd) {
u v8 = 0;
u v9 = 0;
v1 = (u)zsyscall;
- v2 = 3;
+ v2 = 3UL;
v3 = vfd;
- v4 = 0;
- v5 = 0;
- v6 = 0;
- v7 = 0;
- v8 = 0;
+ v4 = 0UL;
+ v5 = 0UL;
+ v6 = 0UL;
+ v7 = 0UL;
+ v8 = 0UL;
v9 = ((u(*)())v1)(v2, v3, v4, v5, v6, v7, v8);
return v9;
}
@@ -2550,12 +2734,14 @@ u zcommit(u vc) {
u v1 = 0;
u v2 = 0;
u v3 = 0;
- if (*(u*)(vc + 128) != 0) goto b1;
+ if (*(u*)(vc + 128UL) != 0UL) goto b3;
v1 = (u)zdie;
v2 = (u)"commit underflow";
v3 = ((u(*)())v1)(v2);
-b1: *(u*)(vc + 128) = *(u*)(vc + 128) - 1;
- return 0;
+ v3;
+b1: *(u*)(vc + 128UL) = *(u*)(vc + 128UL) - 1UL;
+ return 0UL;
+b3: goto b1;
}
u zcomp_setup(u va, u verr) {
u vc = 0;
@@ -2572,29 +2758,29 @@ u zcomp_setup(u va, u verr) {
u v13 = 0;
v3 = (u)zalloc;
v4 = va;
- v5 = 112;
+ v5 = 112UL;
v6 = ((u(*)())v3)(v4, v5);
vc = v6;
- *(u*)vc = va;
- *(u*)(vc + 8) = verr;
+ *(u*)(vc + 0UL) = va;
+ *(u*)(vc + 8UL) = verr;
v7 = (u)zsetup_parser;
v8 = vc;
v9 = verr;
v10 = ((u(*)())v7)(v8, v9);
- *(u*)(vc + 16) = v10;
- *(u*)(vc + 24) = 0;
- *(u*)(vc + 32) = 0;
- *(u*)(vc + 40) = 0;
+ *(u*)(vc + 16UL) = v10;
+ *(u*)(vc + 24UL) = 0UL;
+ *(u*)(vc + 32UL) = 0UL;
+ *(u*)(vc + 40UL) = 0UL;
v11 = (u)zsetup_assembler;
v12 = va;
v13 = ((u(*)())v11)(v12);
- *(u*)(vc + 48) = v13;
- *(u*)(vc + 56) = 0;
- *(u*)(vc + 64) = 0;
- *(u*)(vc + 72) = 0;
- *(u*)(vc + 88) = 0;
- *(u*)(vc + 96) = 0;
- *(u*)(vc + 104) = 0;
+ *(u*)(vc + 48UL) = v13;
+ *(u*)(vc + 56UL) = 0UL;
+ *(u*)(vc + 64UL) = 0UL;
+ *(u*)(vc + 72UL) = 0UL;
+ *(u*)(vc + 88UL) = 0UL;
+ *(u*)(vc + 96UL) = 0UL;
+ *(u*)(vc + 104UL) = 0UL;
return vc;
}
u zcompile(u vc, u vp) {
@@ -2757,278 +2943,309 @@ u zcompile(u vc, u vp) {
u v158 = 0;
vn = vp;
b1: if (!vn) goto b7;
- v6 = 0;
-b8: if (!v6) goto b3;
+ v6 = 0UL;
+b8: if (!v6) goto b5;
vn = vp;
b26: if (!vn) goto b32;
- v24 = 0;
-b33: if (!v24) goto b28;
+ v24 = 0UL;
+b33: if (!v24) goto b30;
v33 = (u)zfirst_decl;
v34 = vc;
v35 = ((u(*)())v33)(v34);
vd = v35;
b42: if (!vd) goto b48;
- v36 = 0;
-b49: if (!v36) goto b44;
+ v36 = 0UL;
+b49: if (!v36) goto b46;
vn = vp;
b55: if (!vn) goto b61;
- v45 = 0;
-b62: if (!v45) goto b57;
+ v45 = 0UL;
+b62: if (!v45) goto b59;
v61 = (u)zfind;
v62 = vc;
v63 = (u)"_start";
- v64 = 0;
- v65 = 0;
+ v64 = 0UL;
+ v65 = 0UL;
v66 = ((u(*)())v61)(v62, v63, v64, v65);
vd = v66;
if (!vd) goto b77;
- if (!*(u*)(vd + 72)) goto b77;
- v67 = 1;
-b79: if (!v67) goto b73;
- *(u*)(vc + 88) = *(u*)(vd + 88);
+ if (!*(u*)(vd + 72UL)) goto b77;
+ v67 = 1UL;
+b79: if (!v67) goto b75;
+ *(u*)(vc + 88UL) = *(u*)(vd + 88UL);
v68 = (u)zmark_func_used;
v69 = vc;
- v70 = 0;
+ v70 = 0UL;
v71 = vd;
v72 = ((u(*)())v68)(v69, v70, v71);
+ v72;
b73: v73 = (u)zfind;
v74 = vc;
v75 = (u)"_kstart";
- v76 = 0;
- v77 = 0;
+ v76 = 0UL;
+ v77 = 0UL;
v78 = ((u(*)())v73)(v74, v75, v76, v77);
vd = v78;
if (!vd) goto b86;
- if (!*(u*)(vd + 72)) goto b86;
- v79 = 1;
-b88: if (!v79) goto b82;
- *(u*)(vc + 96) = *(u*)(vd + 88);
+ if (!*(u*)(vd + 72UL)) goto b86;
+ v79 = 1UL;
+b88: if (!v79) goto b84;
+ *(u*)(vc + 96UL) = *(u*)(vd + 88UL);
v80 = (u)zmark_func_used;
v81 = vc;
- v82 = 0;
+ v82 = 0UL;
v83 = vd;
v84 = ((u(*)())v80)(v81, v82, v83);
+ v84;
b82: v85 = (u)zcheck_usage;
v86 = vc;
v87 = ((u(*)())v85)(v86);
+ v87;
v88 = (u)zfind;
v89 = vc;
v90 = (u)"_isr0";
- v91 = 0;
- v92 = 0;
+ v91 = 0UL;
+ v92 = 0UL;
v93 = ((u(*)())v88)(v89, v90, v91, v92);
vd = v93;
if (!vd) goto b96;
- if (!*(u*)(vd + 96)) goto b96;
- v94 = 1;
-b98: if (!v94) goto b92;
+ if (!*(u*)(vd + 96UL)) goto b96;
+ v94 = 1UL;
+b98: if (!v94) goto b94;
v95 = (u)zfind;
v96 = vc;
v97 = (u)"_isr";
- v98 = 0;
- v99 = 0;
+ v98 = 0UL;
+ v99 = 0UL;
v100 = ((u(*)())v95)(v96, v97, v98, v99);
vv = v100;
if (!vv) goto b104;
- if (!*(u*)(vv + 72)) goto b104;
- v101 = 1;
-b106: if (!v101) goto b92;
+ if (!*(u*)(vv + 72UL)) goto b104;
+ v101 = 1UL;
+b106: if (!v101) goto b102;
v102 = (u)zmark_func_used;
v103 = vc;
v104 = vd;
v105 = vv;
v106 = ((u(*)())v102)(v103, v104, v105);
-b92: v107 = (u)zfind;
+ v106;
+b100:b92: v107 = (u)zfind;
v108 = vc;
v109 = (u)"_ssr0";
- v110 = 0;
- v111 = 0;
+ v110 = 0UL;
+ v111 = 0UL;
v112 = ((u(*)())v107)(v108, v109, v110, v111);
vd = v112;
if (!vd) goto b113;
- if (!*(u*)(vd + 96)) goto b113;
- v113 = 1;
-b115: if (!v113) goto b109;
+ if (!*(u*)(vd + 96UL)) goto b113;
+ v113 = 1UL;
+b115: if (!v113) goto b111;
v114 = (u)zfind;
v115 = vc;
v116 = (u)"_ssr";
- v117 = 0;
- v118 = 0;
+ v117 = 0UL;
+ v118 = 0UL;
v119 = ((u(*)())v114)(v115, v116, v117, v118);
vv = v119;
if (!vv) goto b121;
- if (!*(u*)(vv + 72)) goto b121;
- v120 = 1;
-b123: if (!v120) goto b109;
+ if (!*(u*)(vv + 72UL)) goto b121;
+ v120 = 1UL;
+b123: if (!v120) goto b119;
v121 = (u)zmark_func_used;
v122 = vc;
v123 = vd;
v124 = vv;
v125 = ((u(*)())v121)(v122, v123, v124);
-b109: v126 = (u)zcheck_usage;
+ v125;
+b117:b109: v126 = (u)zcheck_usage;
v127 = vc;
v128 = ((u(*)())v126)(v127);
- if (!*(u*)(vc + 80)) goto b126;
+ v128;
+ if (!*(u*)(vc + 80UL)) goto b128;
v129 = (u)zfflush;
- v130 = *(u*)(vc + 80);
+ v130 = *(u*)(vc + 80UL);
v131 = ((u(*)())v129)(v130);
+ v131;
b126: v132 = (u)zfirst_decl;
v133 = vc;
v134 = ((u(*)())v132)(v133);
vd = v134;
b131: if (!vd) goto b137;
- v135 = 0;
-b138: if (!v135) goto b133;
+ v135 = 0UL;
+b138: if (!v135) goto b135;
v145 = (u)zfirst_decl;
v146 = vc;
v147 = ((u(*)())v145)(v146);
vd = v147;
b153: if (!vd) goto b159;
- v148 = 0;
-b160: if (!v148) goto b155;
- return 0;
-b155: if (!*(u*)(vd + 96)) goto b165;
- if (!*(u*)(vd + 72)) goto b169;
- if (!*(u*)(vd + 104)) goto b169;
- v150 = 1;
+ v148 = 0UL;
+b160: if (!v148) goto b157;
+ return 0UL;
+b157: if (!*(u*)(vd + 96UL)) goto b165;
+ if (!*(u*)(vd + 72UL)) goto b169;
+ if (!*(u*)(vd + 104UL)) goto b169;
+ v150 = 1UL;
b171: if (!v150) goto b165;
- v149 = 1;
-b167: if (!v149) goto b161;
+ v149 = 1UL;
+b167: if (!v149) goto b163;
v151 = (u)zoutput_ir;
v152 = vc;
v153 = vd;
v154 = ((u(*)())v151)(v152, v153);
+ v154;
b161: v155 = (u)znext_decl;
v156 = vc;
v157 = vd;
v158 = ((u(*)())v155)(v156, v157);
vd = v158;
goto b153;
-b165: v149 = 0;
+b163: goto b161;
+b165: v149 = 0UL;
goto b167;
-b169: v150 = 0;
+b169: v150 = 0UL;
goto b171;
-b159: v148 = 1;
+b159: v148 = 1UL;
goto b160;
-b133: if (!*(u*)(vd + 96)) goto b143;
- if (!*(u*)(vd + 72)) goto b147;
- if (!*(u*)(vd + 104)) goto b147;
- v137 = 1;
+b135: if (!*(u*)(vd + 96UL)) goto b143;
+ if (!*(u*)(vd + 72UL)) goto b147;
+ if (!*(u*)(vd + 104UL)) goto b147;
+ v137 = 1UL;
b149: if (!v137) goto b143;
- v136 = 1;
-b145: if (!v136) goto b139;
+ v136 = 1UL;
+b145: if (!v136) goto b141;
v138 = (u)zir_optimize;
- v139 = *(u*)(vd + 104);
+ v139 = *(u*)(vd + 104UL);
v140 = ((u(*)())v138)(v139);
+ v140;
b139: v141 = (u)znext_decl;
v142 = vc;
v143 = vd;
v144 = ((u(*)())v141)(v142, v143);
vd = v144;
goto b131;
-b143: v136 = 0;
+b141: goto b139;
+b143: v136 = 0UL;
goto b145;
-b147: v137 = 0;
+b147: v137 = 0UL;
goto b149;
-b137: v135 = 1;
+b137: v135 = 1UL;
goto b138;
-b121: v120 = 0;
+b128: goto b126;
+b119: goto b117;
+b121: v120 = 0UL;
goto b123;
-b113: v113 = 0;
+b111: goto b109;
+b113: v113 = 0UL;
goto b115;
-b104: v101 = 0;
+b102: goto b100;
+b104: v101 = 0UL;
goto b106;
-b96: v94 = 0;
+b94: goto b92;
+b96: v94 = 0UL;
goto b98;
-b86: v79 = 0;
+b84: goto b82;
+b86: v79 = 0UL;
goto b88;
-b77: v67 = 0;
+b75: goto b73;
+b77: v67 = 0UL;
goto b79;
-b57: vkind = *(u*)*(u*)(vn + 8);
- if (vkind != 11) goto b63;
+b59: vkind = *(u*)(*(u*)(vn + 8UL) + 0UL);
+ if (vkind != 11UL) goto b65;
v46 = (u)zfind;
v47 = vc;
- v48 = *(u*)(*(u*)(*(u*)(*(u*)(vn + 8) + 8) + 8) + 56);
- v49 = 0;
- v50 = 0;
+ v48 = *(u*)(*(u*)(*(u*)(*(u*)(vn + 8UL) + 8UL) + 8UL) + 56UL);
+ v49 = 0UL;
+ v50 = 0UL;
v51 = ((u(*)())v46)(v47, v48, v49, v50);
vd = v51;
- if (!*(u*)(*(u*)(vn + 8) + 16)) goto b67;
+ if (!*(u*)(*(u*)(vn + 8UL) + 16UL)) goto b69;
v52 = (u)ztypecheck_stmt;
v53 = vc;
v54 = vd;
- v55 = *(u*)(*(u*)(vn + 8) + 16);
+ v55 = *(u*)(*(u*)(vn + 8UL) + 16UL);
v56 = ((u(*)())v52)(v53, v54, v55);
+ v56;
b67: v57 = (u)zfunc_to_ir;
v58 = vc;
- v59 = *(u*)(vn + 8);
+ v59 = *(u*)(vn + 8UL);
v60 = ((u(*)())v57)(v58, v59);
- *(u*)(vd + 104) = v60;
-b63: vn = *(u*)(vn + 16);
+ *(u*)(vd + 104UL) = v60;
+b63: vn = *(u*)(vn + 16UL);
goto b55;
-b61: v45 = 1;
+b69: goto b67;
+b65: goto b63;
+b61: v45 = 1UL;
goto b62;
-b44: if (!*(u*)(vd + 112)) goto b50;
+b46: if (!*(u*)(vd + 112UL)) goto b52;
v37 = (u)zlayout_struct;
v38 = vc;
v39 = vd;
v40 = ((u(*)())v37)(v38, v39);
+ v40;
b50: v41 = (u)znext_decl;
v42 = vc;
v43 = vd;
v44 = ((u(*)())v41)(v42, v43);
vd = v44;
goto b42;
-b48: v36 = 1;
+b52: goto b50;
+b48: v36 = 1UL;
goto b49;
-b28: vkind = *(u*)*(u*)(vn + 8);
- if (vkind != 13) goto b36;
+b30: vkind = *(u*)(*(u*)(vn + 8UL) + 0UL);
+ if (vkind != 13UL) goto b36;
v25 = (u)zdefextern;
v26 = vc;
- v27 = *(u*)(vn + 8);
+ v27 = *(u*)(vn + 8UL);
v28 = ((u(*)())v25)(v26, v27);
-b34: vn = *(u*)(vn + 16);
+ v28;
+b34: vn = *(u*)(vn + 16UL);
goto b26;
-b36: if (vkind != 11) goto b34;
+b36: if (vkind != 11UL) goto b39;
v29 = (u)zdefun;
v30 = vc;
- v31 = *(u*)(vn + 8);
+ v31 = *(u*)(vn + 8UL);
v32 = ((u(*)())v29)(v30, v31);
+ v32;
goto b34;
-b32: v24 = 1;
+b39: goto b34;
+b32: v24 = 1UL;
goto b33;
-b3: vkind = *(u*)*(u*)(vn + 8);
- if (vkind != 17) goto b11;
+b5: vkind = *(u*)(*(u*)(vn + 8UL) + 0UL);
+ if (vkind != 17UL) goto b11;
v7 = (u)zdefstruct;
v8 = vc;
- v9 = *(u*)(vn + 8);
+ v9 = *(u*)(vn + 8UL);
v10 = ((u(*)())v7)(v8, v9);
-b9: vn = *(u*)(vn + 16);
+ v10;
+b9: vn = *(u*)(vn + 16UL);
goto b1;
-b11: if (vkind != 18) goto b14;
+b11: if (vkind != 18UL) goto b14;
v11 = (u)zdefunion;
v12 = vc;
- v13 = *(u*)(vn + 8);
+ v13 = *(u*)(vn + 8UL);
v14 = ((u(*)())v11)(v12, v13);
+ v14;
goto b9;
-b14: if (vkind != 23) goto b17;
+b14: if (vkind != 23UL) goto b17;
v15 = (u)zdefenum;
v16 = vc;
- v17 = *(u*)(vn + 8);
+ v17 = *(u*)(vn + 8UL);
v18 = ((u(*)())v15)(v16, v17);
+ v18;
goto b9;
-b17: if (vkind == 11) goto b22;
- if (vkind == 13) goto b22;
- v19 = 1;
-b24: if (!v19) goto b9;
+b17: if (vkind == 11UL) goto b22;
+ if (vkind == 13UL) goto b22;
+ v19 = 1UL;
+b24: if (!v19) goto b20;
v20 = (u)zcdie;
v21 = vc;
v22 = (u)"invalid decl";
v23 = ((u(*)())v20)(v21, v22);
+ v23;
goto b9;
-b22: v19 = 0;
+b20: goto b9;
+b22: v19 = 0UL;
goto b24;
-b7: v6 = 1;
+b7: v6 = 1UL;
goto b8;
}
u zconcat_program(u va, u vb) {
@@ -3037,26 +3254,26 @@ u zconcat_program(u va, u vb) {
u v4 = 0;
u v5 = 0;
if (!va) goto b5;
- v3 = 0;
-b6: if (!v3) goto b1;
+ v3 = 0UL;
+b6: if (!v3) goto b3;
return vb;
-b1: if (!vb) goto b11;
- v4 = 0;
-b12: if (!v4) goto b7;
+b3: if (!vb) goto b11;
+ v4 = 0UL;
+b12: if (!v4) goto b9;
return va;
-b7: vret = va;
-b13: if (!*(u*)(va + 16)) goto b19;
- v5 = 0;
-b20: if (!v5) goto b15;
- *(u*)(va + 16) = vb;
+b9: vret = va;
+b13: if (!*(u*)(va + 16UL)) goto b19;
+ v5 = 0UL;
+b20: if (!v5) goto b17;
+ *(u*)(va + 16UL) = vb;
return vret;
-b15: va = *(u*)(va + 16);
+b17: va = *(u*)(va + 16UL);
goto b13;
-b19: v5 = 1;
+b19: v5 = 1UL;
goto b20;
-b11: v4 = 1;
+b11: v4 = 1UL;
goto b12;
-b5: v3 = 1;
+b5: v3 = 1UL;
goto b6;
}
u zconstruct(u vc, u vsp) {
@@ -3075,54 +3292,59 @@ u zconstruct(u vc, u vsp) {
u v14 = 0;
u v15 = 0;
u v16 = 0;
- *(u*)*(u*)(vc + 176) = 0;
- vi = 0;
-b1: if (vi != *(u*)(vc + 152)) goto b3;
- return *(u*)*(u*)(vc + 176);
-b3: if (*(u*)(*(u*)(vc + 160) + vi * 48) == vsp) goto b8;
+ *(u*)(*(u*)(vc + 176UL) + 0UL * 8UL) = 0UL;
+ vi = 0UL;
+b1: if (vi != *(u*)(vc + 152UL)) goto b5;
+ return *(u*)(*(u*)(vc + 176UL) + 0UL * 8UL);
+b5: if (*(u*)(*(u*)(vc + 160UL) + vi * 48UL + 0UL) == vsp) goto b8;
v7 = (u)zalloc;
- v8 = *(u*)vc;
- v9 = 64;
+ v8 = *(u*)(vc + 0UL);
+ v9 = 64UL;
v10 = ((u(*)())v7)(v8, v9);
vn = v10;
- *(u*)vn = *(u*)(*(u*)(vc + 160) + vi * 48);
- *(u*)(vn + 8) = 0;
- *(u*)(vn + 16) = 0;
- *(u*)(vn + 24) = *(u*)(vc + 32) + *(u*)(*(u*)(vc + 160) + vi * 48 + 16);
- *(u*)(vn + 32) = *(u*)(*(u*)(vc + 160) + vi * 48 + 24) - *(u*)(*(u*)(vc + 160) + vi * 48 + 16);
- *(u*)(vn + 40) = *(u*)(vc + 24);
- *(u*)(vn + 48) = *(u*)(*(u*)(vc + 160) + vi * 48 + 32);
- *(u*)(vn + 56) = *(u*)(*(u*)(vc + 160) + vi * 48 + 40);
- vnargs = *(u*)(*(u*)(vc + 160) + vi * 48 + 8);
- if ((s)vnargs <= (s)*(u*)(vc + 184)) goto b10;
+ *(u*)(vn + 0UL) = *(u*)(*(u*)(vc + 160UL) + vi * 48UL + 0UL);
+ *(u*)(vn + 8UL) = 0UL;
+ *(u*)(vn + 16UL) = 0UL;
+ *(u*)(vn + 24UL) = *(u*)(vc + 32UL) + *(u*)(*(u*)(vc + 160UL) + vi * 48UL + 16UL) * 1UL;
+ *(u*)(vn + 32UL) = *(u*)(*(u*)(vc + 160UL) + vi * 48UL + 24UL) - *(u*)(*(u*)(vc + 160UL) + vi * 48UL + 16UL);
+ *(u*)(vn + 40UL) = *(u*)(vc + 24UL);
+ *(u*)(vn + 48UL) = *(u*)(*(u*)(vc + 160UL) + vi * 48UL + 32UL);
+ *(u*)(vn + 56UL) = *(u*)(*(u*)(vc + 160UL) + vi * 48UL + 40UL);
+ vnargs = *(u*)(*(u*)(vc + 160UL) + vi * 48UL + 8UL);
+ if ((s)vnargs <= (s)*(u*)(vc + 184UL)) goto b12;
v11 = (u)zdie;
v12 = (u)"node underflow";
v13 = ((u(*)())v11)(v12);
-b10: vlink = vn + 16;
- vj = *(u*)(vc + 184) - vnargs;
-b14: if (vj != *(u*)(vc + 184)) goto b16;
- *(u*)(vc + 184) = *(u*)(vc + 184) - vnargs;
- if (*(u*)(vc + 184) != *(u*)(vc + 192)) goto b6;
+ v13;
+b10: vlink = vn + 16UL;
+ vj = *(u*)(vc + 184UL) - vnargs;
+b14: if (vj != *(u*)(vc + 184UL)) goto b18;
+ *(u*)(vc + 184UL) = *(u*)(vc + 184UL) - vnargs;
+ if (*(u*)(vc + 184UL) != *(u*)(vc + 192UL)) goto b24;
v14 = (u)zdie;
v15 = (u)"node overflow";
v16 = ((u(*)())v14)(v15);
-b6: *(u*)(*(u*)(vc + 176) + *(u*)(vc + 184) * 8) = vn;
- *(u*)(vc + 184) = *(u*)(vc + 184) + 1;
- vi = vi + 1;
+ v16;
+b22:b6: *(u*)(*(u*)(vc + 176UL) + *(u*)(vc + 184UL) * 8UL) = vn;
+ *(u*)(vc + 184UL) = *(u*)(vc + 184UL) + 1UL;
+ vi = vi + 1UL;
goto b1;
-b16: if (!*(u*)(*(u*)(vc + 176) + vj * 8)) goto b19;
- *(u*)vlink = *(u*)(*(u*)(vc + 176) + vj * 8);
- vlink = *(u*)(*(u*)(vc + 176) + vj * 8) + 8;
-b19: vj = vj + 1;
+b24: goto b22;
+b18: if (!*(u*)(*(u*)(vc + 176UL) + vj * 8UL)) goto b21;
+ *(u*)vlink = *(u*)(*(u*)(vc + 176UL) + vj * 8UL);
+ vlink = *(u*)(*(u*)(vc + 176UL) + vj * 8UL) + 8UL;
+b19: vj = vj + 1UL;
goto b14;
-b8: vn = 0;
+b21: goto b19;
+b12: goto b10;
+b8: vn = 0UL;
goto b6;
}
u zcopypos(u vn, u vpn) {
- *(u*)(vn + 24) = *(u*)(vpn + 40);
- *(u*)(vn + 32) = *(u*)(vpn + 48);
- *(u*)(vn + 40) = *(u*)(vpn + 56);
- return 0;
+ *(u*)(vn + 24UL) = *(u*)(vpn + 40UL);
+ *(u*)(vn + 32UL) = *(u*)(vpn + 48UL);
+ *(u*)(vn + 40UL) = *(u*)(vpn + 56UL);
+ return 0UL;
}
u zcshow_context(u vc) {
u v1 = 0;
@@ -3154,68 +3376,76 @@ u zcshow_context(u vc) {
u v27 = 0;
u v28 = 0;
v1 = (u)zfputs;
- v2 = *(u*)(vc + 8);
+ v2 = *(u*)(vc + 8UL);
v3 = (u)"on ";
v4 = ((u(*)())v1)(v2, v3);
- if (!*(u*)(vc + 24)) goto b2;
+ v4;
+ if (!*(u*)(vc + 24UL)) goto b4;
v5 = (u)zfputs;
- v6 = *(u*)(vc + 8);
- v7 = *(u*)(vc + 24);
+ v6 = *(u*)(vc + 8UL);
+ v7 = *(u*)(vc + 24UL);
v8 = ((u(*)())v5)(v6, v7);
+ v8;
b2: v9 = (u)zfputs;
- v10 = *(u*)(vc + 8);
+ v10 = *(u*)(vc + 8UL);
v11 = (u)":";
v12 = ((u(*)())v9)(v10, v11);
+ v12;
v13 = (u)zfputd;
- v14 = *(u*)(vc + 8);
- v15 = *(u*)(vc + 32);
+ v14 = *(u*)(vc + 8UL);
+ v15 = *(u*)(vc + 32UL);
v16 = ((u(*)())v13)(v14, v15);
+ v16;
v17 = (u)zfputs;
- v18 = *(u*)(vc + 8);
+ v18 = *(u*)(vc + 8UL);
v19 = (u)":";
v20 = ((u(*)())v17)(v18, v19);
+ v20;
v21 = (u)zfputd;
- v22 = *(u*)(vc + 8);
- v23 = *(u*)(vc + 40);
+ v22 = *(u*)(vc + 8UL);
+ v23 = *(u*)(vc + 40UL);
v24 = ((u(*)())v21)(v22, v23);
+ v24;
v25 = (u)zfputs;
- v26 = *(u*)(vc + 8);
+ v26 = *(u*)(vc + 8UL);
v27 = (u)"\012";
v28 = ((u(*)())v25)(v26, v27);
- return 0;
+ v28;
+ return 0UL;
+b4: goto b2;
}
u zdec2int(u vs, u vlen, u vok) {
u vx = 0;
u vd = 0;
u vi = 0;
u v6 = 0;
- vx = 0;
- vi = 0;
-b1: if (vi != vlen) goto b3;
- *(u*)vok = 1;
+ vx = 0UL;
+ vi = 0UL;
+b1: if (vi != vlen) goto b5;
+ *(u*)vok = 1UL;
return vx;
-b3: vd = (u)*(b*)(vs + vi);
- if (vd != 95) goto b8;
- vi = vi + 1;
+b5: vd = (u)*(b*)(vs + vi * 1UL);
+ if (vd != 95UL) goto b8;
+ vi = vi + 1UL;
goto b1;
-b8: if ((s)vd < (s)48) goto b12;
- if ((s)vd > (s)57) goto b12;
- v6 = 1;
+b8: if ((s)vd < (s)48UL) goto b12;
+ if ((s)vd > (s)57UL) goto b12;
+ v6 = 1UL;
b14: if (!v6) goto b10;
- vd = vd - 48;
- if ((s)vx <= (s)461168601842738790UL) goto b15;
- *(u*)vok = 0;
- return 0;
-b15: vx = vx * 10;
- if ((s)vx <= (s)(9223372036854775807UL - vd)) goto b18;
- *(u*)vok = 0;
- return 0;
-b18: vx = vx + vd;
- vi = vi + 1;
+ vd = vd - 48UL;
+ if ((s)vx <= (s)461168601842738790UL) goto b17;
+ *(u*)vok = 0UL;
+ return 0UL;
+b17: vx = vx * 10UL;
+ if ((s)vx <= (s)((1UL << 63UL) - 1UL - vd)) goto b20;
+ *(u*)vok = 0UL;
+ return 0UL;
+b20: vx = vx + vd;
+ vi = vi + 1UL;
goto b1;
-b10: *(u*)vok = 0;
- return 0;
-b12: v6 = 0;
+b10: *(u*)vok = 0UL;
+ return 0UL;
+b12: v6 = 0UL;
goto b14;
}
u zdecode_count(u vn) {
@@ -3224,51 +3454,57 @@ u zdecode_count(u vn) {
u v3 = 0;
u v4 = 0;
u v5 = 0;
- vret = 1;
- vn = *(u*)(vn + 16);
+ vret = 1UL;
+ vn = *(u*)(vn + 16UL);
b1: if (!vn) goto b7;
- v2 = 0;
-b8: if (!v2) goto b3;
+ v2 = 0UL;
+b8: if (!v2) goto b5;
return vret;
-b3: if (*(u*)vn != 97) goto b9;
- if ((u)*(b*)*(u*)(vn + 24) != 63) goto b14;
- if (vret != 1) goto b17;
- vret = 0;
-b9: vn = *(u*)(vn + 8);
+b5: if (*(u*)(vn + 0UL) != 97UL) goto b11;
+ if ((u)*(b*)(*(u*)(vn + 24UL) + 0UL * 1UL) != 63UL) goto b14;
+ if (vret != 1UL) goto b17;
+ vret = 0UL;
+b15:b12:b9: vn = *(u*)(vn + 8UL);
goto b1;
-b17: if (vret != 3) goto b9;
- vret = 2;
- goto b9;
-b14: if ((u)*(b*)*(u*)(vn + 24) != 42) goto b21;
- vret = 2;
- goto b9;
-b21: if ((u)*(b*)*(u*)(vn + 24) != 43) goto b23;
- if (vret != 0) goto b26;
- vret = 2;
- goto b9;
-b26: if (vret != 1) goto b28;
- vret = 3;
- goto b9;
-b28: if (vret != 2) goto b9;
- vret = 2;
- goto b9;
+b17: if (vret != 3UL) goto b19;
+ vret = 2UL;
+ goto b15;
+b19: goto b15;
+b14: if ((u)*(b*)(*(u*)(vn + 24UL) + 0UL * 1UL) != 42UL) goto b21;
+ vret = 2UL;
+ goto b12;
+b21: if ((u)*(b*)(*(u*)(vn + 24UL) + 0UL * 1UL) != 43UL) goto b23;
+ if (vret != 0UL) goto b26;
+ vret = 2UL;
+b24: goto b12;
+b26: if (vret != 1UL) goto b28;
+ vret = 3UL;
+ goto b24;
+b28: if (vret != 2UL) goto b30;
+ vret = 2UL;
+ goto b24;
+b30: goto b24;
b23: v3 = (u)zdie;
v4 = (u)"invalid countop";
v5 = ((u(*)())v3)(v4);
- goto b9;
-b7: v2 = 1;
+ v5;
+ goto b12;
+b11: goto b9;
+b7: v2 = 1UL;
goto b8;
}
u zdecode_look(u vn) {
u vret = 0;
- vret = 0;
- if (*(u*)*(u*)(vn + 16) != 95) goto b1;
- if ((u)*(b*)*(u*)(*(u*)(vn + 16) + 24) != 33) goto b6;
- vret = 1;
-b1: return vret;
-b6: if ((u)*(b*)*(u*)(*(u*)(vn + 16) + 24) != 38) goto b1;
- vret = 2;
- goto b1;
+ vret = 0UL;
+ if (*(u*)(*(u*)(vn + 16UL) + 0UL) != 95UL) goto b3;
+ if ((u)*(b*)(*(u*)(*(u*)(vn + 16UL) + 24UL) + 0UL * 1UL) != 33UL) goto b6;
+ vret = 1UL;
+b4:b1: return vret;
+b6: if ((u)*(b*)(*(u*)(*(u*)(vn + 16UL) + 24UL) + 0UL * 1UL) != 38UL) goto b8;
+ vret = 2UL;
+ goto b4;
+b8: goto b4;
+b3: goto b1;
}
u zdefenum(u vc, u vn) {
u vi = 0;
@@ -3279,27 +3515,29 @@ u zdefenum(u vc, u vn) {
u v7 = 0;
u v8 = 0;
u v9 = 0;
- vn = *(u*)(vn + 16);
- vi = 0;
+ vn = *(u*)(vn + 16UL);
+ vi = 0UL;
b1: if (!vn) goto b7;
- v4 = 0;
-b8: if (!v4) goto b3;
- return 0;
-b3: *(u*)(vc + 24) = *(u*)(*(u*)(vn + 8) + 24);
- *(u*)(vc + 32) = *(u*)(*(u*)(vn + 8) + 32);
- *(u*)(vc + 40) = *(u*)(*(u*)(vn + 8) + 40);
- vname = *(u*)(*(u*)(*(u*)(vn + 8) + 8) + 56);
- if (!*(u*)(*(u*)(vn + 8) + 16)) goto b9;
- vi = *(u*)(*(u*)(*(u*)(vn + 8) + 16) + 48);
+ v4 = 0UL;
+b8: if (!v4) goto b5;
+ return 0UL;
+b5: *(u*)(vc + 24UL) = *(u*)(*(u*)(vn + 8UL) + 24UL);
+ *(u*)(vc + 32UL) = *(u*)(*(u*)(vn + 8UL) + 32UL);
+ *(u*)(vc + 40UL) = *(u*)(*(u*)(vn + 8UL) + 40UL);
+ vname = *(u*)(*(u*)(*(u*)(vn + 8UL) + 8UL) + 56UL);
+ if (!*(u*)(*(u*)(vn + 8UL) + 16UL)) goto b11;
+ vi = *(u*)(*(u*)(*(u*)(vn + 8UL) + 16UL) + 48UL);
b9: v5 = (u)zdefine_enum_tag;
v6 = vc;
v7 = vname;
v8 = vi;
v9 = ((u(*)())v5)(v6, v7, v8);
- vi = vi + 1;
- vn = *(u*)(vn + 16);
+ v9;
+ vi = vi + 1UL;
+ vn = *(u*)(vn + 16UL);
goto b1;
-b7: v4 = 1;
+b11: goto b9;
+b7: v4 = 1UL;
goto b8;
}
u zdefextern(u vc, u vn) {
@@ -3320,30 +3558,32 @@ u zdefextern(u vc, u vn) {
u v16 = 0;
u v17 = 0;
u v18 = 0;
- *(u*)(vc + 24) = *(u*)(vn + 24);
- *(u*)(vc + 32) = *(u*)(vn + 32);
- *(u*)(vc + 40) = *(u*)(vn + 40);
- vname = *(u*)(*(u*)(vn + 8) + 56);
+ *(u*)(vc + 24UL) = *(u*)(vn + 24UL);
+ *(u*)(vc + 32UL) = *(u*)(vn + 32UL);
+ *(u*)(vc + 40UL) = *(u*)(vn + 40UL);
+ vname = *(u*)(*(u*)(vn + 8UL) + 56UL);
v5 = (u)zprototype;
v6 = vc;
- v7 = *(u*)(vn + 16);
+ v7 = *(u*)(vn + 16UL);
v8 = ((u(*)())v5)(v6, v7);
vt = v8;
v9 = (u)zfind;
v10 = vc;
v11 = vname;
- v12 = 0;
- v13 = 1;
+ v12 = 0UL;
+ v13 = 1UL;
v14 = ((u(*)())v9)(v10, v11, v12, v13);
vd = v14;
- if (!*(u*)(vd + 72)) goto b3;
+ if (!*(u*)(vd + 72UL)) goto b5;
v15 = (u)zcdie;
v16 = vc;
v17 = (u)"duplicate function";
v18 = ((u(*)())v15)(v16, v17);
-b3: *(u*)(vd + 72) = 1;
- *(u*)(vd + 80) = vt;
+ v18;
+b3: *(u*)(vd + 72UL) = 1UL;
+ *(u*)(vd + 80UL) = vt;
return vd;
+b5: goto b3;
}
u zdefine_enum_tag(u vc, u vname, u vvalue) {
u vd = 0;
@@ -3360,18 +3600,20 @@ u zdefine_enum_tag(u vc, u vname, u vvalue) {
v4 = (u)zfind;
v5 = vc;
v6 = vname;
- v7 = 0;
- v8 = 1;
+ v7 = 0UL;
+ v8 = 1UL;
v9 = ((u(*)())v4)(v5, v6, v7, v8);
vd = v9;
- if (!*(u*)(vd + 176)) goto b2;
+ if (!*(u*)(vd + 176UL)) goto b4;
v10 = (u)zcdie;
v11 = vc;
v12 = (u)"duplicate enum";
v13 = ((u(*)())v10)(v11, v12);
-b2: *(u*)(vd + 176) = 1;
- *(u*)(vd + 184) = vvalue;
- return 0;
+ v13;
+b2: *(u*)(vd + 176UL) = 1UL;
+ *(u*)(vd + 184UL) = vvalue;
+ return 0UL;
+b4: goto b2;
}
u zdefine_ir_func(u vc, u vic, u vt) {
u vd = 0;
@@ -3387,20 +3629,22 @@ u zdefine_ir_func(u vc, u vic, u vt) {
u v13 = 0;
v4 = (u)zfind;
v5 = vc;
- v6 = *(u*)(vic + 24);
- v7 = 0;
- v8 = 1;
+ v6 = *(u*)(vic + 24UL);
+ v7 = 0UL;
+ v8 = 1UL;
v9 = ((u(*)())v4)(v5, v6, v7, v8);
vd = v9;
- if (!*(u*)(vd + 72)) goto b2;
+ if (!*(u*)(vd + 72UL)) goto b4;
v10 = (u)zcdie;
v11 = vc;
v12 = (u)"duplicate func";
v13 = ((u(*)())v10)(v11, v12);
-b2: *(u*)(vd + 72) = 1;
- *(u*)(vd + 80) = vt;
- *(u*)(vd + 104) = vic;
- return 0;
+ v13;
+b2: *(u*)(vd + 72UL) = 1UL;
+ *(u*)(vd + 80UL) = vt;
+ *(u*)(vd + 104UL) = vic;
+ return 0UL;
+b4: goto b2;
}
u zdefstruct(u vc, u vn) {
u vname = 0;
@@ -3440,72 +3684,76 @@ u zdefstruct(u vc, u vn) {
u v36 = 0;
u v37 = 0;
u v38 = 0;
- vname = *(u*)(*(u*)(vn + 8) + 56);
- *(u*)(vc + 24) = *(u*)(vn + 24);
- *(u*)(vc + 32) = *(u*)(vn + 32);
- *(u*)(vc + 40) = *(u*)(vn + 40);
+ vname = *(u*)(*(u*)(vn + 8UL) + 56UL);
+ *(u*)(vc + 24UL) = *(u*)(vn + 24UL);
+ *(u*)(vc + 32UL) = *(u*)(vn + 32UL);
+ *(u*)(vc + 40UL) = *(u*)(vn + 40UL);
v6 = (u)zstrcmp;
v7 = vname;
v8 = (u)"int";
v9 = ((u(*)())v6)(v7, v8);
if (!v9) goto b9;
- v5 = 0;
+ v5 = 0UL;
b10: if (!v5) goto b5;
- v4 = 1;
-b7: if (!v4) goto b1;
+ v4 = 1UL;
+b7: if (!v4) goto b3;
v21 = (u)zcdie;
v22 = vc;
v23 = (u)"reserved word";
v24 = ((u(*)())v21)(v22, v23);
+ v24;
b1: v25 = (u)zfind;
v26 = vc;
v27 = vname;
- v28 = 0;
- v29 = 1;
+ v28 = 0UL;
+ v29 = 1UL;
v30 = ((u(*)())v25)(v26, v27, v28, v29);
vd = v30;
- if (!*(u*)(vd + 112)) goto b28;
+ if (!*(u*)(vd + 112UL)) goto b30;
v31 = (u)zcdie;
v32 = vc;
v33 = (u)"duplicate struct";
v34 = ((u(*)())v31)(v32, v33);
-b28: *(u*)(vd + 112) = 1;
- *(u*)(vd + 136) = vn;
+ v34;
+b28: *(u*)(vd + 112UL) = 1UL;
+ *(u*)(vd + 136UL) = vn;
v35 = (u)zprototype;
v36 = vc;
- v37 = *(u*)(vn + 8);
+ v37 = *(u*)(vn + 8UL);
v38 = ((u(*)())v35)(v36, v37);
- *(u*)(vd + 144) = v38;
- return 0;
+ *(u*)(vd + 144UL) = v38;
+ return 0UL;
+b30: goto b28;
+b3: goto b1;
b5: v12 = (u)zstrcmp;
v13 = vname;
v14 = (u)"byte";
v15 = ((u(*)())v12)(v13, v14);
if (!v15) goto b18;
- v11 = 0;
+ v11 = 0UL;
b19: if (!v11) goto b14;
- v10 = 1;
+ v10 = 1UL;
b16: if (!v10) goto b12;
- v4 = 1;
+ v4 = 1UL;
goto b7;
-b12: v4 = 0;
+b12: v4 = 0UL;
goto b7;
b14: v17 = (u)zstrcmp;
v18 = vname;
v19 = (u)"func";
v20 = ((u(*)())v17)(v18, v19);
if (!v20) goto b23;
- v16 = 0;
+ v16 = 0UL;
b24: if (!v16) goto b21;
- v10 = 1;
+ v10 = 1UL;
goto b16;
-b21: v10 = 0;
+b21: v10 = 0UL;
goto b16;
-b23: v16 = 1;
+b23: v16 = 1UL;
goto b24;
-b18: v11 = 1;
+b18: v11 = 1UL;
goto b19;
-b9: v5 = 1;
+b9: v5 = 1UL;
goto b10;
}
u zdefun(u vc, u vfuncdef) {
@@ -3540,47 +3788,50 @@ u zdefun(u vc, u vfuncdef) {
u v30 = 0;
v7 = (u)zdefextern;
v8 = vc;
- v9 = *(u*)(vfuncdef + 8);
+ v9 = *(u*)(vfuncdef + 8UL);
v10 = ((u(*)())v7)(v8, v9);
vd = v10;
- vn = *(u*)(*(u*)(*(u*)(vfuncdef + 8) + 16) + 8);
+ vn = *(u*)(*(u*)(*(u*)(vfuncdef + 8UL) + 16UL) + 8UL);
b2: if (!vn) goto b8;
- v11 = 0;
-b9: if (!v11) goto b4;
+ v11 = 0UL;
+b9: if (!v11) goto b6;
v26 = (u)zhoist_locals;
v27 = vc;
v28 = vd;
- v29 = *(u*)(vfuncdef + 16);
+ v29 = *(u*)(vfuncdef + 16UL);
v30 = ((u(*)())v26)(v27, v28, v29);
- return 0;
-b4: *(u*)(vc + 24) = *(u*)(vn + 24);
- *(u*)(vc + 32) = *(u*)(vn + 32);
- *(u*)(vc + 40) = *(u*)(vn + 40);
- *(u*)(*(u*)(vc + 48) + 88) = *(u*)(vn + 24);
- *(u*)(*(u*)(vc + 48) + 96) = *(u*)(vn + 32);
- vname = *(u*)(*(u*)(*(u*)(vn + 8) + 8) + 56);
+ v30;
+ return 0UL;
+b6: *(u*)(vc + 24UL) = *(u*)(vn + 24UL);
+ *(u*)(vc + 32UL) = *(u*)(vn + 32UL);
+ *(u*)(vc + 40UL) = *(u*)(vn + 40UL);
+ *(u*)(*(u*)(vc + 48UL) + 88UL) = *(u*)(vn + 24UL);
+ *(u*)(*(u*)(vc + 48UL) + 96UL) = *(u*)(vn + 32UL);
+ vname = *(u*)(*(u*)(*(u*)(vn + 8UL) + 8UL) + 56UL);
v12 = (u)zprototype;
v13 = vc;
- v14 = *(u*)(*(u*)(vn + 8) + 16);
+ v14 = *(u*)(*(u*)(vn + 8UL) + 16UL);
v15 = ((u(*)())v12)(v13, v14);
vt = v15;
v16 = (u)zfind;
v17 = vc;
- v18 = *(u*)(vd + 32);
+ v18 = *(u*)(vd + 32UL);
v19 = vname;
- v20 = 1;
+ v20 = 1UL;
v21 = ((u(*)())v16)(v17, v18, v19, v20);
vv = v21;
- if (!*(u*)(vv + 192)) goto b12;
+ if (!*(u*)(vv + 192UL)) goto b14;
v22 = (u)zcdie;
v23 = vc;
v24 = (u)"duplicate argument";
v25 = ((u(*)())v22)(v23, v24);
-b12: *(u*)(vv + 192) = 1;
- *(u*)(vv + 200) = vt;
- vn = *(u*)(vn + 16);
+ v25;
+b12: *(u*)(vv + 192UL) = 1UL;
+ *(u*)(vv + 200UL) = vt;
+ vn = *(u*)(vn + 16UL);
goto b2;
-b8: v11 = 1;
+b14: goto b12;
+b8: v11 = 1UL;
goto b9;
}
u zdefunion(u vc, u vn) {
@@ -3621,72 +3872,76 @@ u zdefunion(u vc, u vn) {
u v36 = 0;
u v37 = 0;
u v38 = 0;
- vname = *(u*)(*(u*)(vn + 8) + 56);
- *(u*)(vc + 24) = *(u*)(vn + 24);
- *(u*)(vc + 32) = *(u*)(vn + 32);
- *(u*)(vc + 40) = *(u*)(vn + 40);
+ vname = *(u*)(*(u*)(vn + 8UL) + 56UL);
+ *(u*)(vc + 24UL) = *(u*)(vn + 24UL);
+ *(u*)(vc + 32UL) = *(u*)(vn + 32UL);
+ *(u*)(vc + 40UL) = *(u*)(vn + 40UL);
v6 = (u)zstrcmp;
v7 = vname;
v8 = (u)"int";
v9 = ((u(*)())v6)(v7, v8);
if (!v9) goto b9;
- v5 = 0;
+ v5 = 0UL;
b10: if (!v5) goto b5;
- v4 = 1;
-b7: if (!v4) goto b1;
+ v4 = 1UL;
+b7: if (!v4) goto b3;
v21 = (u)zcdie;
v22 = vc;
v23 = (u)"reserved word";
v24 = ((u(*)())v21)(v22, v23);
+ v24;
b1: v25 = (u)zfind;
v26 = vc;
v27 = vname;
- v28 = 0;
- v29 = 1;
+ v28 = 0UL;
+ v29 = 1UL;
v30 = ((u(*)())v25)(v26, v27, v28, v29);
vd = v30;
- if (!*(u*)(vd + 112)) goto b28;
+ if (!*(u*)(vd + 112UL)) goto b30;
v31 = (u)zcdie;
v32 = vc;
v33 = (u)"duplicate struct";
v34 = ((u(*)())v31)(v32, v33);
-b28: *(u*)(vd + 112) = 1;
- *(u*)(vd + 136) = vn;
+ v34;
+b28: *(u*)(vd + 112UL) = 1UL;
+ *(u*)(vd + 136UL) = vn;
v35 = (u)zprototype;
v36 = vc;
- v37 = *(u*)(vn + 8);
+ v37 = *(u*)(vn + 8UL);
v38 = ((u(*)())v35)(v36, v37);
- *(u*)(vd + 144) = v38;
- return 0;
+ *(u*)(vd + 144UL) = v38;
+ return 0UL;
+b30: goto b28;
+b3: goto b1;
b5: v12 = (u)zstrcmp;
v13 = vname;
v14 = (u)"byte";
v15 = ((u(*)())v12)(v13, v14);
if (!v15) goto b18;
- v11 = 0;
+ v11 = 0UL;
b19: if (!v11) goto b14;
- v10 = 1;
+ v10 = 1UL;
b16: if (!v10) goto b12;
- v4 = 1;
+ v4 = 1UL;
goto b7;
-b12: v4 = 0;
+b12: v4 = 0UL;
goto b7;
b14: v17 = (u)zstrcmp;
v18 = vname;
v19 = (u)"func";
v20 = ((u(*)())v17)(v18, v19);
if (!v20) goto b23;
- v16 = 0;
+ v16 = 0UL;
b24: if (!v16) goto b21;
- v10 = 1;
+ v10 = 1UL;
goto b16;
-b21: v10 = 0;
+b21: v10 = 0UL;
goto b16;
-b23: v16 = 1;
+b23: v16 = 1UL;
goto b24;
-b18: v11 = 1;
+b18: v11 = 1UL;
goto b19;
-b9: v5 = 1;
+b9: v5 = 1UL;
goto b10;
}
u zdie(u vmsg) {
@@ -3712,19 +3967,22 @@ u zdie(u vmsg) {
v4 = ((u(*)())v2)(v3);
vlen = v4;
v5 = (u)zwrite;
- v6 = 2;
+ v6 = 2UL;
v7 = vmsg;
v8 = vlen;
v9 = ((u(*)())v5)(v6, v7, v8);
+ v9;
v10 = (u)zwrite;
- v11 = 2;
+ v11 = 2UL;
v12 = (u)"\012";
- v13 = 1;
+ v13 = 1UL;
v14 = ((u(*)())v10)(v11, v12, v13);
+ v14;
v15 = (u)zexit;
- v16 = 2;
+ v16 = 2UL;
v17 = ((u(*)())v15)(v16);
- return 0;
+ v17;
+ return 0UL;
}
u zemit(u vc, u vx) {
u v2 = 0;
@@ -3737,14 +3995,16 @@ u zemit(u vc, u vx) {
v2 = (u)zemit_hook;
v3 = vc;
v4 = ((u(*)())v2)(v3);
+ v4;
v5 = (u)zreserve;
v6 = vc;
- v7 = 1;
+ v7 = 1UL;
v8 = ((u(*)())v5)(v6, v7);
- *(b*)(*(u*)(*(u*)(vc + 40) + 8) + *(u*)(*(u*)(vc + 40) + 16)) = vx;
- *(u*)(*(u*)(vc + 40) + 16) = *(u*)(*(u*)(vc + 40) + 16) + 1;
- *(u*)(vc + 24) = *(u*)(vc + 24) + 1;
- return 0;
+ v8;
+ *(b*)(*(u*)(*(u*)(vc + 40UL) + 8UL) + *(u*)(*(u*)(vc + 40UL) + 16UL) * 1UL) = vx;
+ *(u*)(*(u*)(vc + 40UL) + 16UL) = *(u*)(*(u*)(vc + 40UL) + 16UL) + 1UL;
+ *(u*)(vc + 24UL) = *(u*)(vc + 24UL) + 1UL;
+ return 0UL;
}
u zemit_align(u vc, u vn, u vb) {
u vpad = 0;
@@ -3752,16 +4012,17 @@ u zemit_align(u vc, u vn, u vb) {
u v5 = 0;
u v6 = 0;
u v7 = 0;
- vpad = *(u*)(vc + 24) & vn - 1;
- if (vpad != 0) goto b4;
- return 0;
-b4: if (vpad != vn) goto b6;
- return 0;
-b6: v4 = (u)zas_emit;
+ vpad = *(u*)(vc + 24UL) & vn - 1UL;
+ if (vpad != 0UL) goto b3;
+ return 0UL;
+b3:b4: if (vpad != vn) goto b8;
+ return 0UL;
+b8: v4 = (u)zas_emit;
v5 = vc;
v6 = vb;
v7 = ((u(*)())v4)(v5, v6);
- vpad = vpad + 1;
+ v7;
+ vpad = vpad + 1UL;
goto b4;
}
u zemit_blobs(u vc, u vb) {
@@ -3784,31 +4045,35 @@ u zemit_blobs(u vc, u vb) {
u v18 = 0;
u v19 = 0;
if (!vb) goto b5;
- v3 = 0;
-b6: if (!v3) goto b1;
- return 0;
-b1: v4 = (u)zemit_blobs;
+ v3 = 0UL;
+b6: if (!v3) goto b3;
+ return 0UL;
+b3: v4 = (u)zemit_blobs;
v5 = vc;
- v6 = *(u*)vb;
+ v6 = *(u*)(vb + 0UL);
v7 = ((u(*)())v4)(v5, v6);
+ v7;
v8 = (u)zfixup_label;
v9 = vc;
- v10 = *(u*)(vb + 16);
+ v10 = *(u*)(vb + 16UL);
v11 = ((u(*)())v8)(v9, v10);
- vi = 0;
-b9: if (vi != *(u*)(vb + 32)) goto b11;
+ v11;
+ vi = 0UL;
+b9: if (vi != *(u*)(vb + 32UL)) goto b13;
v16 = (u)zemit_blobs;
v17 = vc;
- v18 = *(u*)(vb + 8);
+ v18 = *(u*)(vb + 8UL);
v19 = ((u(*)())v16)(v17, v18);
- return 0;
-b11: v12 = (u)zas_emit;
+ v19;
+ return 0UL;
+b13: v12 = (u)zas_emit;
v13 = vc;
- v14 = (u)*(b*)(*(u*)(vb + 24) + vi);
+ v14 = (u)*(b*)(*(u*)(vb + 24UL) + vi * 1UL);
v15 = ((u(*)())v12)(v13, v14);
- vi = vi + 1;
+ v15;
+ vi = vi + 1UL;
goto b9;
-b5: v3 = 1;
+b5: v3 = 1UL;
goto b6;
}
u zemit_builtin(u vc) {
@@ -5796,2369 +6061,2705 @@ u zemit_builtin(u vc) {
v2 = (u)zfind;
v3 = vc;
v4 = (u)"syscall";
- v5 = 0;
- v6 = 1;
+ v5 = 0UL;
+ v6 = 1UL;
v7 = ((u(*)())v2)(v3, v4, v5, v6);
vd = v7;
- if (!*(u*)(vd + 72)) goto b6;
- if (!*(u*)(*(u*)(vd + 88) + 16)) goto b10;
- v9 = 0;
+ if (!*(u*)(vd + 72UL)) goto b6;
+ if (!*(u*)(*(u*)(vd + 88UL) + 16UL)) goto b10;
+ v9 = 0UL;
b11: if (!v9) goto b6;
- v8 = 1;
-b8: if (!v8) goto b2;
+ v8 = 1UL;
+b8: if (!v8) goto b4;
v10 = (u)zfixup_label;
- v11 = *(u*)(vc + 48);
- v12 = *(u*)(vd + 88);
+ v11 = *(u*)(vc + 48UL);
+ v12 = *(u*)(vd + 88UL);
v13 = ((u(*)())v10)(v11, v12);
+ v13;
v14 = (u)zadd_symbol;
- v15 = *(u*)(vc + 48);
- v16 = *(u*)(vd + 32);
- v17 = *(u*)(vd + 88);
+ v15 = *(u*)(vc + 48UL);
+ v16 = *(u*)(vd + 32UL);
+ v17 = *(u*)(vd + 88UL);
v18 = ((u(*)())v14)(v15, v16, v17);
+ v18;
v19 = (u)zas_modrr;
- v20 = *(u*)(vc + 48);
- v21 = 139;
- v22 = 0;
- v23 = 7;
+ v20 = *(u*)(vc + 48UL);
+ v21 = 139UL;
+ v22 = 0UL;
+ v23 = 7UL;
v24 = ((u(*)())v19)(v20, v21, v22, v23);
+ v24;
v25 = (u)zas_modrr;
- v26 = *(u*)(vc + 48);
- v27 = 139;
- v28 = 7;
- v29 = 6;
+ v26 = *(u*)(vc + 48UL);
+ v27 = 139UL;
+ v28 = 7UL;
+ v29 = 6UL;
v30 = ((u(*)())v25)(v26, v27, v28, v29);
+ v30;
v31 = (u)zas_modrr;
- v32 = *(u*)(vc + 48);
- v33 = 139;
- v34 = 6;
- v35 = 2;
+ v32 = *(u*)(vc + 48UL);
+ v33 = 139UL;
+ v34 = 6UL;
+ v35 = 2UL;
v36 = ((u(*)())v31)(v32, v33, v34, v35);
+ v36;
v37 = (u)zas_modrr;
- v38 = *(u*)(vc + 48);
- v39 = 139;
- v40 = 2;
- v41 = 1;
+ v38 = *(u*)(vc + 48UL);
+ v39 = 139UL;
+ v40 = 2UL;
+ v41 = 1UL;
v42 = ((u(*)())v37)(v38, v39, v40, v41);
+ v42;
v43 = (u)zas_modrr;
- v44 = *(u*)(vc + 48);
- v45 = 139;
- v46 = 10;
- v47 = 8;
+ v44 = *(u*)(vc + 48UL);
+ v45 = 139UL;
+ v46 = 10UL;
+ v47 = 8UL;
v48 = ((u(*)())v43)(v44, v45, v46, v47);
+ v48;
v49 = (u)zas_modrr;
- v50 = *(u*)(vc + 48);
- v51 = 139;
- v52 = 8;
- v53 = 9;
+ v50 = *(u*)(vc + 48UL);
+ v51 = 139UL;
+ v52 = 8UL;
+ v53 = 9UL;
v54 = ((u(*)())v49)(v50, v51, v52, v53);
+ v54;
v55 = (u)zas_modrm;
- v56 = *(u*)(vc + 48);
- v57 = 139;
- v58 = 9;
- v59 = 4;
- v60 = 0;
- v61 = 0;
- v62 = 8;
+ v56 = *(u*)(vc + 48UL);
+ v57 = 139UL;
+ v58 = 9UL;
+ v59 = 4UL;
+ v60 = 0UL;
+ v61 = 0UL;
+ v62 = 8UL;
v63 = ((u(*)())v55)(v56, v57, v58, v59, v60, v61, v62);
+ v63;
v64 = (u)zas_op;
- v65 = *(u*)(vc + 48);
- v66 = 3845;
+ v65 = *(u*)(vc + 48UL);
+ v66 = 3845UL;
v67 = ((u(*)())v64)(v65, v66);
+ v67;
v68 = (u)zas_op;
- v69 = *(u*)(vc + 48);
- v70 = 195;
+ v69 = *(u*)(vc + 48UL);
+ v70 = 195UL;
v71 = ((u(*)())v68)(v69, v70);
+ v71;
b2: v72 = (u)zfind;
v73 = vc;
v74 = (u)"_restorer";
- v75 = 0;
- v76 = 1;
+ v75 = 0UL;
+ v76 = 1UL;
v77 = ((u(*)())v72)(v73, v74, v75, v76);
vd = v77;
- if (!*(u*)(vd + 72)) goto b28;
- if (!*(u*)(*(u*)(vd + 88) + 16)) goto b32;
- v79 = 0;
+ if (!*(u*)(vd + 72UL)) goto b28;
+ if (!*(u*)(*(u*)(vd + 88UL) + 16UL)) goto b32;
+ v79 = 0UL;
b33: if (!v79) goto b28;
- v78 = 1;
-b30: if (!v78) goto b24;
+ v78 = 1UL;
+b30: if (!v78) goto b26;
v80 = (u)zfixup_label;
- v81 = *(u*)(vc + 48);
- v82 = *(u*)(vd + 88);
+ v81 = *(u*)(vc + 48UL);
+ v82 = *(u*)(vd + 88UL);
v83 = ((u(*)())v80)(v81, v82);
+ v83;
v84 = (u)zadd_symbol;
- v85 = *(u*)(vc + 48);
- v86 = *(u*)(vd + 32);
- v87 = *(u*)(vd + 88);
+ v85 = *(u*)(vc + 48UL);
+ v86 = *(u*)(vd + 32UL);
+ v87 = *(u*)(vd + 88UL);
v88 = ((u(*)())v84)(v85, v86, v87);
+ v88;
v89 = (u)zas_modri;
- v90 = *(u*)(vc + 48);
- v91 = 199;
- v92 = 0;
- v93 = 15;
+ v90 = *(u*)(vc + 48UL);
+ v91 = 199UL;
+ v92 = 0UL;
+ v93 = 15UL;
v94 = ((u(*)())v89)(v90, v91, v92, v93);
+ v94;
v95 = (u)zas_op;
- v96 = *(u*)(vc + 48);
- v97 = 3845;
+ v96 = *(u*)(vc + 48UL);
+ v97 = 3845UL;
v98 = ((u(*)())v95)(v96, v97);
+ v98;
b24: v99 = (u)zfind;
v100 = vc;
v101 = (u)"_include";
- v102 = 0;
- v103 = 1;
+ v102 = 0UL;
+ v103 = 1UL;
v104 = ((u(*)())v99)(v100, v101, v102, v103);
vd = v104;
- if (!*(u*)(vd + 72)) goto b43;
- if (!*(u*)(*(u*)(vd + 88) + 16)) goto b47;
- v106 = 0;
+ if (!*(u*)(vd + 72UL)) goto b43;
+ if (!*(u*)(*(u*)(vd + 88UL) + 16UL)) goto b47;
+ v106 = 0UL;
b48: if (!v106) goto b43;
- v105 = 1;
-b45: if (!v105) goto b39;
+ v105 = 1UL;
+b45: if (!v105) goto b41;
v107 = (u)zfixup_label;
- v108 = *(u*)(vc + 48);
- v109 = *(u*)(vd + 88);
+ v108 = *(u*)(vc + 48UL);
+ v109 = *(u*)(vd + 88UL);
v110 = ((u(*)())v107)(v108, v109);
+ v110;
v111 = (u)zadd_symbol;
- v112 = *(u*)(vc + 48);
- v113 = *(u*)(vd + 32);
- v114 = *(u*)(vd + 88);
+ v112 = *(u*)(vc + 48UL);
+ v113 = *(u*)(vd + 32UL);
+ v114 = *(u*)(vd + 88UL);
v115 = ((u(*)())v111)(v112, v113, v114);
+ v115;
v116 = (u)zas_op;
- v117 = *(u*)(vc + 48);
- v118 = 3851;
+ v117 = *(u*)(vc + 48UL);
+ v118 = 3851UL;
v119 = ((u(*)())v116)(v117, v118);
+ v119;
b39: v120 = (u)zfind;
v121 = vc;
v122 = (u)"ud2";
- v123 = 0;
- v124 = 1;
+ v123 = 0UL;
+ v124 = 1UL;
v125 = ((u(*)())v120)(v121, v122, v123, v124);
vd = v125;
- if (!*(u*)(vd + 72)) goto b57;
- if (!*(u*)(*(u*)(vd + 88) + 16)) goto b61;
- v127 = 0;
+ if (!*(u*)(vd + 72UL)) goto b57;
+ if (!*(u*)(*(u*)(vd + 88UL) + 16UL)) goto b61;
+ v127 = 0UL;
b62: if (!v127) goto b57;
- v126 = 1;
-b59: if (!v126) goto b53;
+ v126 = 1UL;
+b59: if (!v126) goto b55;
v128 = (u)zfixup_label;
- v129 = *(u*)(vc + 48);
- v130 = *(u*)(vd + 88);
+ v129 = *(u*)(vc + 48UL);
+ v130 = *(u*)(vd + 88UL);
v131 = ((u(*)())v128)(v129, v130);
+ v131;
v132 = (u)zadd_symbol;
- v133 = *(u*)(vc + 48);
- v134 = *(u*)(vd + 32);
- v135 = *(u*)(vd + 88);
+ v133 = *(u*)(vc + 48UL);
+ v134 = *(u*)(vd + 32UL);
+ v135 = *(u*)(vd + 88UL);
v136 = ((u(*)())v132)(v133, v134, v135);
+ v136;
v137 = (u)zas_op;
- v138 = *(u*)(vc + 48);
- v139 = 3851;
+ v138 = *(u*)(vc + 48UL);
+ v139 = 3851UL;
v140 = ((u(*)())v137)(v138, v139);
+ v140;
b53: v141 = (u)zfind;
v142 = vc;
v143 = (u)"cpuid";
- v144 = 0;
- v145 = 1;
+ v144 = 0UL;
+ v145 = 1UL;
v146 = ((u(*)())v141)(v142, v143, v144, v145);
vd = v146;
- if (!*(u*)(vd + 72)) goto b71;
- if (!*(u*)(*(u*)(vd + 88) + 16)) goto b75;
- v148 = 0;
+ if (!*(u*)(vd + 72UL)) goto b71;
+ if (!*(u*)(*(u*)(vd + 88UL) + 16UL)) goto b75;
+ v148 = 0UL;
b76: if (!v148) goto b71;
- v147 = 1;
-b73: if (!v147) goto b67;
+ v147 = 1UL;
+b73: if (!v147) goto b69;
v149 = (u)zfixup_label;
- v150 = *(u*)(vc + 48);
- v151 = *(u*)(vd + 88);
+ v150 = *(u*)(vc + 48UL);
+ v151 = *(u*)(vd + 88UL);
v152 = ((u(*)())v149)(v150, v151);
+ v152;
v153 = (u)zadd_symbol;
- v154 = *(u*)(vc + 48);
- v155 = *(u*)(vd + 32);
- v156 = *(u*)(vd + 88);
+ v154 = *(u*)(vc + 48UL);
+ v155 = *(u*)(vd + 32UL);
+ v156 = *(u*)(vd + 88UL);
v157 = ((u(*)())v153)(v154, v155, v156);
+ v157;
v158 = (u)zas_opr;
- v159 = *(u*)(vc + 48);
- v160 = 80;
- v161 = 1;
+ v159 = *(u*)(vc + 48UL);
+ v160 = 80UL;
+ v161 = 1UL;
v162 = ((u(*)())v158)(v159, v160, v161);
+ v162;
v163 = (u)zas_opr;
- v164 = *(u*)(vc + 48);
- v165 = 80;
- v166 = 2;
+ v164 = *(u*)(vc + 48UL);
+ v165 = 80UL;
+ v166 = 2UL;
v167 = ((u(*)())v163)(v164, v165, v166);
+ v167;
v168 = (u)zas_opr;
- v169 = *(u*)(vc + 48);
- v170 = 80;
- v171 = 6;
+ v169 = *(u*)(vc + 48UL);
+ v170 = 80UL;
+ v171 = 6UL;
v172 = ((u(*)())v168)(v169, v170, v171);
+ v172;
v173 = (u)zas_opr;
- v174 = *(u*)(vc + 48);
- v175 = 80;
- v176 = 7;
+ v174 = *(u*)(vc + 48UL);
+ v175 = 80UL;
+ v176 = 7UL;
v177 = ((u(*)())v173)(v174, v175, v176);
+ v177;
v178 = (u)zas_modrm;
- v179 = *(u*)(vc + 48);
- v180 = 139;
- v181 = 0;
- v182 = 7;
- v183 = 0;
- v184 = 0;
- v185 = 0;
+ v179 = *(u*)(vc + 48UL);
+ v180 = 139UL;
+ v181 = 0UL;
+ v182 = 7UL;
+ v183 = 0UL;
+ v184 = 0UL;
+ v185 = 0UL;
v186 = ((u(*)())v178)(v179, v180, v181, v182, v183, v184, v185);
+ v186;
v187 = (u)zas_modrm;
- v188 = *(u*)(vc + 48);
- v189 = 139;
- v190 = 1;
- v191 = 6;
- v192 = 0;
- v193 = 0;
- v194 = 0;
+ v188 = *(u*)(vc + 48UL);
+ v189 = 139UL;
+ v190 = 1UL;
+ v191 = 6UL;
+ v192 = 0UL;
+ v193 = 0UL;
+ v194 = 0UL;
v195 = ((u(*)())v187)(v188, v189, v190, v191, v192, v193, v194);
+ v195;
v196 = (u)zas_modrm;
- v197 = *(u*)(vc + 48);
- v198 = 139;
- v199 = 2;
- v200 = 2;
- v201 = 0;
- v202 = 0;
- v203 = 0;
+ v197 = *(u*)(vc + 48UL);
+ v198 = 139UL;
+ v199 = 2UL;
+ v200 = 2UL;
+ v201 = 0UL;
+ v202 = 0UL;
+ v203 = 0UL;
v204 = ((u(*)())v196)(v197, v198, v199, v200, v201, v202, v203);
+ v204;
v205 = (u)zas_modrm;
- v206 = *(u*)(vc + 48);
- v207 = 139;
- v208 = 3;
- v209 = 1;
- v210 = 0;
- v211 = 0;
- v212 = 0;
+ v206 = *(u*)(vc + 48UL);
+ v207 = 139UL;
+ v208 = 3UL;
+ v209 = 1UL;
+ v210 = 0UL;
+ v211 = 0UL;
+ v212 = 0UL;
v213 = ((u(*)())v205)(v206, v207, v208, v209, v210, v211, v212);
+ v213;
v214 = (u)zas_op;
- v215 = *(u*)(vc + 48);
- v216 = 4002;
+ v215 = *(u*)(vc + 48UL);
+ v216 = 4002UL;
v217 = ((u(*)())v214)(v215, v216);
+ v217;
v218 = (u)zas_opr;
- v219 = *(u*)(vc + 48);
- v220 = 88;
- v221 = 7;
+ v219 = *(u*)(vc + 48UL);
+ v220 = 88UL;
+ v221 = 7UL;
v222 = ((u(*)())v218)(v219, v220, v221);
+ v222;
v223 = (u)zas_opr;
- v224 = *(u*)(vc + 48);
- v225 = 88;
- v226 = 6;
+ v224 = *(u*)(vc + 48UL);
+ v225 = 88UL;
+ v226 = 6UL;
v227 = ((u(*)())v223)(v224, v225, v226);
+ v227;
v228 = (u)zas_opr;
- v229 = *(u*)(vc + 48);
- v230 = 88;
- v231 = 2;
+ v229 = *(u*)(vc + 48UL);
+ v230 = 88UL;
+ v231 = 2UL;
v232 = ((u(*)())v228)(v229, v230, v231);
+ v232;
v233 = (u)zas_opr;
- v234 = *(u*)(vc + 48);
- v235 = 88;
- v236 = 1;
+ v234 = *(u*)(vc + 48UL);
+ v235 = 88UL;
+ v236 = 1UL;
v237 = ((u(*)())v233)(v234, v235, v236);
+ v237;
v238 = (u)zas_modrm;
- v239 = *(u*)(vc + 48);
- v240 = 137;
- v241 = 0;
- v242 = 7;
- v243 = 0;
- v244 = 0;
- v245 = 0;
+ v239 = *(u*)(vc + 48UL);
+ v240 = 137UL;
+ v241 = 0UL;
+ v242 = 7UL;
+ v243 = 0UL;
+ v244 = 0UL;
+ v245 = 0UL;
v246 = ((u(*)())v238)(v239, v240, v241, v242, v243, v244, v245);
+ v246;
v247 = (u)zas_modrm;
- v248 = *(u*)(vc + 48);
- v249 = 137;
- v250 = 1;
- v251 = 6;
- v252 = 0;
- v253 = 0;
- v254 = 0;
+ v248 = *(u*)(vc + 48UL);
+ v249 = 137UL;
+ v250 = 1UL;
+ v251 = 6UL;
+ v252 = 0UL;
+ v253 = 0UL;
+ v254 = 0UL;
v255 = ((u(*)())v247)(v248, v249, v250, v251, v252, v253, v254);
+ v255;
v256 = (u)zas_modrm;
- v257 = *(u*)(vc + 48);
- v258 = 137;
- v259 = 2;
- v260 = 2;
- v261 = 0;
- v262 = 0;
- v263 = 0;
+ v257 = *(u*)(vc + 48UL);
+ v258 = 137UL;
+ v259 = 2UL;
+ v260 = 2UL;
+ v261 = 0UL;
+ v262 = 0UL;
+ v263 = 0UL;
v264 = ((u(*)())v256)(v257, v258, v259, v260, v261, v262, v263);
+ v264;
v265 = (u)zas_modrm;
- v266 = *(u*)(vc + 48);
- v267 = 137;
- v268 = 3;
- v269 = 1;
- v270 = 0;
- v271 = 0;
- v272 = 0;
+ v266 = *(u*)(vc + 48UL);
+ v267 = 137UL;
+ v268 = 3UL;
+ v269 = 1UL;
+ v270 = 0UL;
+ v271 = 0UL;
+ v272 = 0UL;
v273 = ((u(*)())v265)(v266, v267, v268, v269, v270, v271, v272);
+ v273;
v274 = (u)zas_op;
- v275 = *(u*)(vc + 48);
- v276 = 195;
+ v275 = *(u*)(vc + 48UL);
+ v276 = 195UL;
v277 = ((u(*)())v274)(v275, v276);
+ v277;
b67: v278 = (u)zfind;
v279 = vc;
v280 = (u)"inb";
- v281 = 0;
- v282 = 1;
+ v281 = 0UL;
+ v282 = 1UL;
v283 = ((u(*)())v278)(v279, v280, v281, v282);
vd = v283;
- if (!*(u*)(vd + 72)) goto b102;
- if (!*(u*)(*(u*)(vd + 88) + 16)) goto b106;
- v285 = 0;
+ if (!*(u*)(vd + 72UL)) goto b102;
+ if (!*(u*)(*(u*)(vd + 88UL) + 16UL)) goto b106;
+ v285 = 0UL;
b107: if (!v285) goto b102;
- v284 = 1;
-b104: if (!v284) goto b98;
+ v284 = 1UL;
+b104: if (!v284) goto b100;
v286 = (u)zfixup_label;
- v287 = *(u*)(vc + 48);
- v288 = *(u*)(vd + 88);
+ v287 = *(u*)(vc + 48UL);
+ v288 = *(u*)(vd + 88UL);
v289 = ((u(*)())v286)(v287, v288);
+ v289;
v290 = (u)zadd_symbol;
- v291 = *(u*)(vc + 48);
- v292 = *(u*)(vd + 32);
- v293 = *(u*)(vd + 88);
+ v291 = *(u*)(vc + 48UL);
+ v292 = *(u*)(vd + 32UL);
+ v293 = *(u*)(vd + 88UL);
v294 = ((u(*)())v290)(v291, v292, v293);
+ v294;
v295 = (u)zas_modrr;
- v296 = *(u*)(vc + 48);
- v297 = 139;
- v298 = 2;
- v299 = 7;
+ v296 = *(u*)(vc + 48UL);
+ v297 = 139UL;
+ v298 = 2UL;
+ v299 = 7UL;
v300 = ((u(*)())v295)(v296, v297, v298, v299);
+ v300;
v301 = (u)zas_op;
- v302 = *(u*)(vc + 48);
- v303 = 236;
+ v302 = *(u*)(vc + 48UL);
+ v303 = 236UL;
v304 = ((u(*)())v301)(v302, v303);
+ v304;
v305 = (u)zas_op;
- v306 = *(u*)(vc + 48);
- v307 = 195;
+ v306 = *(u*)(vc + 48UL);
+ v307 = 195UL;
v308 = ((u(*)())v305)(v306, v307);
+ v308;
b98: v309 = (u)zfind;
v310 = vc;
v311 = (u)"outb";
- v312 = 0;
- v313 = 1;
+ v312 = 0UL;
+ v313 = 1UL;
v314 = ((u(*)())v309)(v310, v311, v312, v313);
vd = v314;
- if (!*(u*)(vd + 72)) goto b118;
- if (!*(u*)(*(u*)(vd + 88) + 16)) goto b122;
- v316 = 0;
+ if (!*(u*)(vd + 72UL)) goto b118;
+ if (!*(u*)(*(u*)(vd + 88UL) + 16UL)) goto b122;
+ v316 = 0UL;
b123: if (!v316) goto b118;
- v315 = 1;
-b120: if (!v315) goto b114;
+ v315 = 1UL;
+b120: if (!v315) goto b116;
v317 = (u)zfixup_label;
- v318 = *(u*)(vc + 48);
- v319 = *(u*)(vd + 88);
+ v318 = *(u*)(vc + 48UL);
+ v319 = *(u*)(vd + 88UL);
v320 = ((u(*)())v317)(v318, v319);
+ v320;
v321 = (u)zadd_symbol;
- v322 = *(u*)(vc + 48);
- v323 = *(u*)(vd + 32);
- v324 = *(u*)(vd + 88);
+ v322 = *(u*)(vc + 48UL);
+ v323 = *(u*)(vd + 32UL);
+ v324 = *(u*)(vd + 88UL);
v325 = ((u(*)())v321)(v322, v323, v324);
+ v325;
v326 = (u)zas_modrr;
- v327 = *(u*)(vc + 48);
- v328 = 139;
- v329 = 2;
- v330 = 7;
+ v327 = *(u*)(vc + 48UL);
+ v328 = 139UL;
+ v329 = 2UL;
+ v330 = 7UL;
v331 = ((u(*)())v326)(v327, v328, v329, v330);
+ v331;
v332 = (u)zas_modrr;
- v333 = *(u*)(vc + 48);
- v334 = 139;
- v335 = 0;
- v336 = 6;
+ v333 = *(u*)(vc + 48UL);
+ v334 = 139UL;
+ v335 = 0UL;
+ v336 = 6UL;
v337 = ((u(*)())v332)(v333, v334, v335, v336);
+ v337;
v338 = (u)zas_op;
- v339 = *(u*)(vc + 48);
- v340 = 238;
+ v339 = *(u*)(vc + 48UL);
+ v340 = 238UL;
v341 = ((u(*)())v338)(v339, v340);
+ v341;
v342 = (u)zas_op;
- v343 = *(u*)(vc + 48);
- v344 = 195;
+ v343 = *(u*)(vc + 48UL);
+ v344 = 195UL;
v345 = ((u(*)())v342)(v343, v344);
+ v345;
b114: v346 = (u)zfind;
v347 = vc;
v348 = (u)"inw";
- v349 = 0;
- v350 = 1;
+ v349 = 0UL;
+ v350 = 1UL;
v351 = ((u(*)())v346)(v347, v348, v349, v350);
vd = v351;
- if (!*(u*)(vd + 72)) goto b135;
- if (!*(u*)(*(u*)(vd + 88) + 16)) goto b139;
- v353 = 0;
+ if (!*(u*)(vd + 72UL)) goto b135;
+ if (!*(u*)(*(u*)(vd + 88UL) + 16UL)) goto b139;
+ v353 = 0UL;
b140: if (!v353) goto b135;
- v352 = 1;
-b137: if (!v352) goto b131;
+ v352 = 1UL;
+b137: if (!v352) goto b133;
v354 = (u)zfixup_label;
- v355 = *(u*)(vc + 48);
- v356 = *(u*)(vd + 88);
+ v355 = *(u*)(vc + 48UL);
+ v356 = *(u*)(vd + 88UL);
v357 = ((u(*)())v354)(v355, v356);
+ v357;
v358 = (u)zadd_symbol;
- v359 = *(u*)(vc + 48);
- v360 = *(u*)(vd + 32);
- v361 = *(u*)(vd + 88);
+ v359 = *(u*)(vc + 48UL);
+ v360 = *(u*)(vd + 32UL);
+ v361 = *(u*)(vd + 88UL);
v362 = ((u(*)())v358)(v359, v360, v361);
+ v362;
v363 = (u)zas_modrr;
- v364 = *(u*)(vc + 48);
- v365 = 139;
- v366 = 2;
- v367 = 7;
+ v364 = *(u*)(vc + 48UL);
+ v365 = 139UL;
+ v366 = 2UL;
+ v367 = 7UL;
v368 = ((u(*)())v363)(v364, v365, v366, v367);
+ v368;
v369 = (u)zas_emit;
- v370 = *(u*)(vc + 48);
- v371 = 102;
+ v370 = *(u*)(vc + 48UL);
+ v371 = 102UL;
v372 = ((u(*)())v369)(v370, v371);
+ v372;
v373 = (u)zas_op;
- v374 = *(u*)(vc + 48);
- v375 = 237;
+ v374 = *(u*)(vc + 48UL);
+ v375 = 237UL;
v376 = ((u(*)())v373)(v374, v375);
+ v376;
v377 = (u)zas_op;
- v378 = *(u*)(vc + 48);
- v379 = 195;
+ v378 = *(u*)(vc + 48UL);
+ v379 = 195UL;
v380 = ((u(*)())v377)(v378, v379);
+ v380;
b131: v381 = (u)zfind;
v382 = vc;
v383 = (u)"outw";
- v384 = 0;
- v385 = 1;
+ v384 = 0UL;
+ v385 = 1UL;
v386 = ((u(*)())v381)(v382, v383, v384, v385);
vd = v386;
- if (!*(u*)(vd + 72)) goto b152;
- if (!*(u*)(*(u*)(vd + 88) + 16)) goto b156;
- v388 = 0;
+ if (!*(u*)(vd + 72UL)) goto b152;
+ if (!*(u*)(*(u*)(vd + 88UL) + 16UL)) goto b156;
+ v388 = 0UL;
b157: if (!v388) goto b152;
- v387 = 1;
-b154: if (!v387) goto b148;
+ v387 = 1UL;
+b154: if (!v387) goto b150;
v389 = (u)zfixup_label;
- v390 = *(u*)(vc + 48);
- v391 = *(u*)(vd + 88);
+ v390 = *(u*)(vc + 48UL);
+ v391 = *(u*)(vd + 88UL);
v392 = ((u(*)())v389)(v390, v391);
+ v392;
v393 = (u)zadd_symbol;
- v394 = *(u*)(vc + 48);
- v395 = *(u*)(vd + 32);
- v396 = *(u*)(vd + 88);
+ v394 = *(u*)(vc + 48UL);
+ v395 = *(u*)(vd + 32UL);
+ v396 = *(u*)(vd + 88UL);
v397 = ((u(*)())v393)(v394, v395, v396);
+ v397;
v398 = (u)zas_modrr;
- v399 = *(u*)(vc + 48);
- v400 = 139;
- v401 = 2;
- v402 = 7;
+ v399 = *(u*)(vc + 48UL);
+ v400 = 139UL;
+ v401 = 2UL;
+ v402 = 7UL;
v403 = ((u(*)())v398)(v399, v400, v401, v402);
+ v403;
v404 = (u)zas_modrr;
- v405 = *(u*)(vc + 48);
- v406 = 139;
- v407 = 0;
- v408 = 6;
+ v405 = *(u*)(vc + 48UL);
+ v406 = 139UL;
+ v407 = 0UL;
+ v408 = 6UL;
v409 = ((u(*)())v404)(v405, v406, v407, v408);
+ v409;
v410 = (u)zas_emit;
- v411 = *(u*)(vc + 48);
- v412 = 102;
+ v411 = *(u*)(vc + 48UL);
+ v412 = 102UL;
v413 = ((u(*)())v410)(v411, v412);
+ v413;
v414 = (u)zas_op;
- v415 = *(u*)(vc + 48);
- v416 = 239;
+ v415 = *(u*)(vc + 48UL);
+ v416 = 239UL;
v417 = ((u(*)())v414)(v415, v416);
+ v417;
v418 = (u)zas_op;
- v419 = *(u*)(vc + 48);
- v420 = 195;
+ v419 = *(u*)(vc + 48UL);
+ v420 = 195UL;
v421 = ((u(*)())v418)(v419, v420);
+ v421;
b148: v422 = (u)zfind;
v423 = vc;
v424 = (u)"ind";
- v425 = 0;
- v426 = 1;
+ v425 = 0UL;
+ v426 = 1UL;
v427 = ((u(*)())v422)(v423, v424, v425, v426);
vd = v427;
- if (!*(u*)(vd + 72)) goto b170;
- if (!*(u*)(*(u*)(vd + 88) + 16)) goto b174;
- v429 = 0;
+ if (!*(u*)(vd + 72UL)) goto b170;
+ if (!*(u*)(*(u*)(vd + 88UL) + 16UL)) goto b174;
+ v429 = 0UL;
b175: if (!v429) goto b170;
- v428 = 1;
-b172: if (!v428) goto b166;
+ v428 = 1UL;
+b172: if (!v428) goto b168;
v430 = (u)zfixup_label;
- v431 = *(u*)(vc + 48);
- v432 = *(u*)(vd + 88);
+ v431 = *(u*)(vc + 48UL);
+ v432 = *(u*)(vd + 88UL);
v433 = ((u(*)())v430)(v431, v432);
+ v433;
v434 = (u)zadd_symbol;
- v435 = *(u*)(vc + 48);
- v436 = *(u*)(vd + 32);
- v437 = *(u*)(vd + 88);
+ v435 = *(u*)(vc + 48UL);
+ v436 = *(u*)(vd + 32UL);
+ v437 = *(u*)(vd + 88UL);
v438 = ((u(*)())v434)(v435, v436, v437);
+ v438;
v439 = (u)zas_modrr;
- v440 = *(u*)(vc + 48);
- v441 = 139;
- v442 = 2;
- v443 = 7;
+ v440 = *(u*)(vc + 48UL);
+ v441 = 139UL;
+ v442 = 2UL;
+ v443 = 7UL;
v444 = ((u(*)())v439)(v440, v441, v442, v443);
+ v444;
v445 = (u)zas_op;
- v446 = *(u*)(vc + 48);
- v447 = 237;
+ v446 = *(u*)(vc + 48UL);
+ v447 = 237UL;
v448 = ((u(*)())v445)(v446, v447);
+ v448;
v449 = (u)zas_op;
- v450 = *(u*)(vc + 48);
- v451 = 195;
+ v450 = *(u*)(vc + 48UL);
+ v451 = 195UL;
v452 = ((u(*)())v449)(v450, v451);
+ v452;
b166: v453 = (u)zfind;
v454 = vc;
v455 = (u)"outd";
- v456 = 0;
- v457 = 1;
+ v456 = 0UL;
+ v457 = 1UL;
v458 = ((u(*)())v453)(v454, v455, v456, v457);
vd = v458;
- if (!*(u*)(vd + 72)) goto b186;
- if (!*(u*)(*(u*)(vd + 88) + 16)) goto b190;
- v460 = 0;
+ if (!*(u*)(vd + 72UL)) goto b186;
+ if (!*(u*)(*(u*)(vd + 88UL) + 16UL)) goto b190;
+ v460 = 0UL;
b191: if (!v460) goto b186;
- v459 = 1;
-b188: if (!v459) goto b182;
+ v459 = 1UL;
+b188: if (!v459) goto b184;
v461 = (u)zfixup_label;
- v462 = *(u*)(vc + 48);
- v463 = *(u*)(vd + 88);
+ v462 = *(u*)(vc + 48UL);
+ v463 = *(u*)(vd + 88UL);
v464 = ((u(*)())v461)(v462, v463);
+ v464;
v465 = (u)zadd_symbol;
- v466 = *(u*)(vc + 48);
- v467 = *(u*)(vd + 32);
- v468 = *(u*)(vd + 88);
+ v466 = *(u*)(vc + 48UL);
+ v467 = *(u*)(vd + 32UL);
+ v468 = *(u*)(vd + 88UL);
v469 = ((u(*)())v465)(v466, v467, v468);
+ v469;
v470 = (u)zas_modrr;
- v471 = *(u*)(vc + 48);
- v472 = 139;
- v473 = 2;
- v474 = 7;
+ v471 = *(u*)(vc + 48UL);
+ v472 = 139UL;
+ v473 = 2UL;
+ v474 = 7UL;
v475 = ((u(*)())v470)(v471, v472, v473, v474);
+ v475;
v476 = (u)zas_modrr;
- v477 = *(u*)(vc + 48);
- v478 = 139;
- v479 = 0;
- v480 = 6;
+ v477 = *(u*)(vc + 48UL);
+ v478 = 139UL;
+ v479 = 0UL;
+ v480 = 6UL;
v481 = ((u(*)())v476)(v477, v478, v479, v480);
+ v481;
v482 = (u)zas_op;
- v483 = *(u*)(vc + 48);
- v484 = 239;
+ v483 = *(u*)(vc + 48UL);
+ v484 = 239UL;
v485 = ((u(*)())v482)(v483, v484);
+ v485;
v486 = (u)zas_op;
- v487 = *(u*)(vc + 48);
- v488 = 195;
+ v487 = *(u*)(vc + 48UL);
+ v488 = 195UL;
v489 = ((u(*)())v486)(v487, v488);
+ v489;
b182: v490 = (u)zfind;
v491 = vc;
v492 = (u)"rdmsr";
- v493 = 0;
- v494 = 1;
+ v493 = 0UL;
+ v494 = 1UL;
v495 = ((u(*)())v490)(v491, v492, v493, v494);
vd = v495;
- if (!*(u*)(vd + 72)) goto b203;
- if (!*(u*)(*(u*)(vd + 88) + 16)) goto b207;
- v497 = 0;
+ if (!*(u*)(vd + 72UL)) goto b203;
+ if (!*(u*)(*(u*)(vd + 88UL) + 16UL)) goto b207;
+ v497 = 0UL;
b208: if (!v497) goto b203;
- v496 = 1;
-b205: if (!v496) goto b199;
+ v496 = 1UL;
+b205: if (!v496) goto b201;
v498 = (u)zfixup_label;
- v499 = *(u*)(vc + 48);
- v500 = *(u*)(vd + 88);
+ v499 = *(u*)(vc + 48UL);
+ v500 = *(u*)(vd + 88UL);
v501 = ((u(*)())v498)(v499, v500);
+ v501;
v502 = (u)zadd_symbol;
- v503 = *(u*)(vc + 48);
- v504 = *(u*)(vd + 32);
- v505 = *(u*)(vd + 88);
+ v503 = *(u*)(vc + 48UL);
+ v504 = *(u*)(vd + 32UL);
+ v505 = *(u*)(vd + 88UL);
v506 = ((u(*)())v502)(v503, v504, v505);
+ v506;
v507 = (u)zas_modrr;
- v508 = *(u*)(vc + 48);
- v509 = 139;
- v510 = 1;
- v511 = 7;
+ v508 = *(u*)(vc + 48UL);
+ v509 = 139UL;
+ v510 = 1UL;
+ v511 = 7UL;
v512 = ((u(*)())v507)(v508, v509, v510, v511);
+ v512;
v513 = (u)zas_op;
- v514 = *(u*)(vc + 48);
- v515 = 3890;
+ v514 = *(u*)(vc + 48UL);
+ v515 = 3890UL;
v516 = ((u(*)())v513)(v514, v515);
+ v516;
v517 = (u)zas_modri;
- v518 = *(u*)(vc + 48);
- v519 = 199;
- v520 = 1;
- v521 = 32;
+ v518 = *(u*)(vc + 48UL);
+ v519 = 199UL;
+ v520 = 1UL;
+ v521 = 32UL;
v522 = ((u(*)())v517)(v518, v519, v520, v521);
+ v522;
v523 = (u)zas_modr;
- v524 = *(u*)(vc + 48);
+ v524 = *(u*)(vc + 48UL);
v525 = 262355UL;
- v526 = 2;
+ v526 = 2UL;
v527 = ((u(*)())v523)(v524, v525, v526);
+ v527;
v528 = (u)zas_modrr;
- v529 = *(u*)(vc + 48);
- v530 = 11;
- v531 = 0;
- v532 = 2;
+ v529 = *(u*)(vc + 48UL);
+ v530 = 11UL;
+ v531 = 0UL;
+ v532 = 2UL;
v533 = ((u(*)())v528)(v529, v530, v531, v532);
+ v533;
v534 = (u)zas_op;
- v535 = *(u*)(vc + 48);
- v536 = 195;
+ v535 = *(u*)(vc + 48UL);
+ v536 = 195UL;
v537 = ((u(*)())v534)(v535, v536);
+ v537;
b199: v538 = (u)zfind;
v539 = vc;
v540 = (u)"wrmsr";
- v541 = 0;
- v542 = 1;
+ v541 = 0UL;
+ v542 = 1UL;
v543 = ((u(*)())v538)(v539, v540, v541, v542);
vd = v543;
- if (!*(u*)(vd + 72)) goto b222;
- if (!*(u*)(*(u*)(vd + 88) + 16)) goto b226;
- v545 = 0;
+ if (!*(u*)(vd + 72UL)) goto b222;
+ if (!*(u*)(*(u*)(vd + 88UL) + 16UL)) goto b226;
+ v545 = 0UL;
b227: if (!v545) goto b222;
- v544 = 1;
-b224: if (!v544) goto b218;
+ v544 = 1UL;
+b224: if (!v544) goto b220;
v546 = (u)zfixup_label;
- v547 = *(u*)(vc + 48);
- v548 = *(u*)(vd + 88);
+ v547 = *(u*)(vc + 48UL);
+ v548 = *(u*)(vd + 88UL);
v549 = ((u(*)())v546)(v547, v548);
+ v549;
v550 = (u)zadd_symbol;
- v551 = *(u*)(vc + 48);
- v552 = *(u*)(vd + 32);
- v553 = *(u*)(vd + 88);
+ v551 = *(u*)(vc + 48UL);
+ v552 = *(u*)(vd + 32UL);
+ v553 = *(u*)(vd + 88UL);
v554 = ((u(*)())v550)(v551, v552, v553);
+ v554;
v555 = (u)zas_modrr;
- v556 = *(u*)(vc + 48);
- v557 = 139;
- v558 = 0;
- v559 = 6;
+ v556 = *(u*)(vc + 48UL);
+ v557 = 139UL;
+ v558 = 0UL;
+ v559 = 6UL;
v560 = ((u(*)())v555)(v556, v557, v558, v559);
+ v560;
v561 = (u)zas_modrr;
- v562 = *(u*)(vc + 48);
- v563 = 139;
- v564 = 2;
- v565 = 6;
+ v562 = *(u*)(vc + 48UL);
+ v563 = 139UL;
+ v564 = 2UL;
+ v565 = 6UL;
v566 = ((u(*)())v561)(v562, v563, v564, v565);
+ v566;
v567 = (u)zas_modri;
- v568 = *(u*)(vc + 48);
- v569 = 199;
- v570 = 1;
- v571 = 32;
+ v568 = *(u*)(vc + 48UL);
+ v569 = 199UL;
+ v570 = 1UL;
+ v571 = 32UL;
v572 = ((u(*)())v567)(v568, v569, v570, v571);
+ v572;
v573 = (u)zas_modr;
- v574 = *(u*)(vc + 48);
+ v574 = *(u*)(vc + 48UL);
v575 = 327891UL;
- v576 = 2;
+ v576 = 2UL;
v577 = ((u(*)())v573)(v574, v575, v576);
+ v577;
v578 = (u)zas_modrr;
- v579 = *(u*)(vc + 48);
- v580 = 139;
- v581 = 1;
- v582 = 7;
+ v579 = *(u*)(vc + 48UL);
+ v580 = 139UL;
+ v581 = 1UL;
+ v582 = 7UL;
v583 = ((u(*)())v578)(v579, v580, v581, v582);
+ v583;
v584 = (u)zas_op;
- v585 = *(u*)(vc + 48);
- v586 = 3888;
+ v585 = *(u*)(vc + 48UL);
+ v586 = 3888UL;
v587 = ((u(*)())v584)(v585, v586);
+ v587;
v588 = (u)zas_op;
- v589 = *(u*)(vc + 48);
- v590 = 195;
+ v589 = *(u*)(vc + 48UL);
+ v590 = 195UL;
v591 = ((u(*)())v588)(v589, v590);
+ v591;
b218: v592 = (u)zfind;
v593 = vc;
v594 = (u)"rdcr0";
- v595 = 0;
- v596 = 1;
+ v595 = 0UL;
+ v596 = 1UL;
v597 = ((u(*)())v592)(v593, v594, v595, v596);
vd = v597;
- if (!*(u*)(vd + 72)) goto b242;
- if (!*(u*)(*(u*)(vd + 88) + 16)) goto b246;
- v599 = 0;
+ if (!*(u*)(vd + 72UL)) goto b242;
+ if (!*(u*)(*(u*)(vd + 88UL) + 16UL)) goto b246;
+ v599 = 0UL;
b247: if (!v599) goto b242;
- v598 = 1;
-b244: if (!v598) goto b238;
+ v598 = 1UL;
+b244: if (!v598) goto b240;
v600 = (u)zfixup_label;
- v601 = *(u*)(vc + 48);
- v602 = *(u*)(vd + 88);
+ v601 = *(u*)(vc + 48UL);
+ v602 = *(u*)(vd + 88UL);
v603 = ((u(*)())v600)(v601, v602);
+ v603;
v604 = (u)zadd_symbol;
- v605 = *(u*)(vc + 48);
- v606 = *(u*)(vd + 32);
- v607 = *(u*)(vd + 88);
+ v605 = *(u*)(vc + 48UL);
+ v606 = *(u*)(vd + 32UL);
+ v607 = *(u*)(vd + 88UL);
v608 = ((u(*)())v604)(v605, v606, v607);
+ v608;
v609 = (u)zas_modrr;
- v610 = *(u*)(vc + 48);
- v611 = 3872;
- v612 = 0;
- v613 = 0;
+ v610 = *(u*)(vc + 48UL);
+ v611 = 3872UL;
+ v612 = 0UL;
+ v613 = 0UL;
v614 = ((u(*)())v609)(v610, v611, v612, v613);
+ v614;
v615 = (u)zas_op;
- v616 = *(u*)(vc + 48);
- v617 = 195;
+ v616 = *(u*)(vc + 48UL);
+ v617 = 195UL;
v618 = ((u(*)())v615)(v616, v617);
+ v618;
b238: v619 = (u)zfind;
v620 = vc;
v621 = (u)"wrcr0";
- v622 = 0;
- v623 = 1;
+ v622 = 0UL;
+ v623 = 1UL;
v624 = ((u(*)())v619)(v620, v621, v622, v623);
vd = v624;
- if (!*(u*)(vd + 72)) goto b257;
- if (!*(u*)(*(u*)(vd + 88) + 16)) goto b261;
- v626 = 0;
+ if (!*(u*)(vd + 72UL)) goto b257;
+ if (!*(u*)(*(u*)(vd + 88UL) + 16UL)) goto b261;
+ v626 = 0UL;
b262: if (!v626) goto b257;
- v625 = 1;
-b259: if (!v625) goto b253;
+ v625 = 1UL;
+b259: if (!v625) goto b255;
v627 = (u)zfixup_label;
- v628 = *(u*)(vc + 48);
- v629 = *(u*)(vd + 88);
+ v628 = *(u*)(vc + 48UL);
+ v629 = *(u*)(vd + 88UL);
v630 = ((u(*)())v627)(v628, v629);
+ v630;
v631 = (u)zadd_symbol;
- v632 = *(u*)(vc + 48);
- v633 = *(u*)(vd + 32);
- v634 = *(u*)(vd + 88);
+ v632 = *(u*)(vc + 48UL);
+ v633 = *(u*)(vd + 32UL);
+ v634 = *(u*)(vd + 88UL);
v635 = ((u(*)())v631)(v632, v633, v634);
+ v635;
v636 = (u)zas_modrr;
- v637 = *(u*)(vc + 48);
- v638 = 3874;
- v639 = 0;
- v640 = 7;
+ v637 = *(u*)(vc + 48UL);
+ v638 = 3874UL;
+ v639 = 0UL;
+ v640 = 7UL;
v641 = ((u(*)())v636)(v637, v638, v639, v640);
+ v641;
v642 = (u)zas_op;
- v643 = *(u*)(vc + 48);
- v644 = 195;
+ v643 = *(u*)(vc + 48UL);
+ v644 = 195UL;
v645 = ((u(*)())v642)(v643, v644);
+ v645;
b253: v646 = (u)zfind;
v647 = vc;
v648 = (u)"rdcr2";
- v649 = 0;
- v650 = 1;
+ v649 = 0UL;
+ v650 = 1UL;
v651 = ((u(*)())v646)(v647, v648, v649, v650);
vd = v651;
- if (!*(u*)(vd + 72)) goto b272;
- if (!*(u*)(*(u*)(vd + 88) + 16)) goto b276;
- v653 = 0;
+ if (!*(u*)(vd + 72UL)) goto b272;
+ if (!*(u*)(*(u*)(vd + 88UL) + 16UL)) goto b276;
+ v653 = 0UL;
b277: if (!v653) goto b272;
- v652 = 1;
-b274: if (!v652) goto b268;
+ v652 = 1UL;
+b274: if (!v652) goto b270;
v654 = (u)zfixup_label;
- v655 = *(u*)(vc + 48);
- v656 = *(u*)(vd + 88);
+ v655 = *(u*)(vc + 48UL);
+ v656 = *(u*)(vd + 88UL);
v657 = ((u(*)())v654)(v655, v656);
+ v657;
v658 = (u)zadd_symbol;
- v659 = *(u*)(vc + 48);
- v660 = *(u*)(vd + 32);
- v661 = *(u*)(vd + 88);
+ v659 = *(u*)(vc + 48UL);
+ v660 = *(u*)(vd + 32UL);
+ v661 = *(u*)(vd + 88UL);
v662 = ((u(*)())v658)(v659, v660, v661);
+ v662;
v663 = (u)zas_modrr;
- v664 = *(u*)(vc + 48);
- v665 = 3872;
- v666 = 2;
- v667 = 0;
+ v664 = *(u*)(vc + 48UL);
+ v665 = 3872UL;
+ v666 = 2UL;
+ v667 = 0UL;
v668 = ((u(*)())v663)(v664, v665, v666, v667);
+ v668;
v669 = (u)zas_op;
- v670 = *(u*)(vc + 48);
- v671 = 195;
+ v670 = *(u*)(vc + 48UL);
+ v671 = 195UL;
v672 = ((u(*)())v669)(v670, v671);
+ v672;
b268: v673 = (u)zfind;
v674 = vc;
v675 = (u)"wrcr2";
- v676 = 0;
- v677 = 1;
+ v676 = 0UL;
+ v677 = 1UL;
v678 = ((u(*)())v673)(v674, v675, v676, v677);
vd = v678;
- if (!*(u*)(vd + 72)) goto b287;
- if (!*(u*)(*(u*)(vd + 88) + 16)) goto b291;
- v680 = 0;
+ if (!*(u*)(vd + 72UL)) goto b287;
+ if (!*(u*)(*(u*)(vd + 88UL) + 16UL)) goto b291;
+ v680 = 0UL;
b292: if (!v680) goto b287;
- v679 = 1;
-b289: if (!v679) goto b283;
+ v679 = 1UL;
+b289: if (!v679) goto b285;
v681 = (u)zfixup_label;
- v682 = *(u*)(vc + 48);
- v683 = *(u*)(vd + 88);
+ v682 = *(u*)(vc + 48UL);
+ v683 = *(u*)(vd + 88UL);
v684 = ((u(*)())v681)(v682, v683);
+ v684;
v685 = (u)zadd_symbol;
- v686 = *(u*)(vc + 48);
- v687 = *(u*)(vd + 32);
- v688 = *(u*)(vd + 88);
+ v686 = *(u*)(vc + 48UL);
+ v687 = *(u*)(vd + 32UL);
+ v688 = *(u*)(vd + 88UL);
v689 = ((u(*)())v685)(v686, v687, v688);
+ v689;
v690 = (u)zas_modrr;
- v691 = *(u*)(vc + 48);
- v692 = 3874;
- v693 = 2;
- v694 = 7;
+ v691 = *(u*)(vc + 48UL);
+ v692 = 3874UL;
+ v693 = 2UL;
+ v694 = 7UL;
v695 = ((u(*)())v690)(v691, v692, v693, v694);
+ v695;
v696 = (u)zas_op;
- v697 = *(u*)(vc + 48);
- v698 = 195;
+ v697 = *(u*)(vc + 48UL);
+ v698 = 195UL;
v699 = ((u(*)())v696)(v697, v698);
+ v699;
b283: v700 = (u)zfind;
v701 = vc;
v702 = (u)"rdcr3";
- v703 = 0;
- v704 = 1;
+ v703 = 0UL;
+ v704 = 1UL;
v705 = ((u(*)())v700)(v701, v702, v703, v704);
vd = v705;
- if (!*(u*)(vd + 72)) goto b302;
- if (!*(u*)(*(u*)(vd + 88) + 16)) goto b306;
- v707 = 0;
+ if (!*(u*)(vd + 72UL)) goto b302;
+ if (!*(u*)(*(u*)(vd + 88UL) + 16UL)) goto b306;
+ v707 = 0UL;
b307: if (!v707) goto b302;
- v706 = 1;
-b304: if (!v706) goto b298;
+ v706 = 1UL;
+b304: if (!v706) goto b300;
v708 = (u)zfixup_label;
- v709 = *(u*)(vc + 48);
- v710 = *(u*)(vd + 88);
+ v709 = *(u*)(vc + 48UL);
+ v710 = *(u*)(vd + 88UL);
v711 = ((u(*)())v708)(v709, v710);
+ v711;
v712 = (u)zadd_symbol;
- v713 = *(u*)(vc + 48);
- v714 = *(u*)(vd + 32);
- v715 = *(u*)(vd + 88);
+ v713 = *(u*)(vc + 48UL);
+ v714 = *(u*)(vd + 32UL);
+ v715 = *(u*)(vd + 88UL);
v716 = ((u(*)())v712)(v713, v714, v715);
+ v716;
v717 = (u)zas_modrr;
- v718 = *(u*)(vc + 48);
- v719 = 3872;
- v720 = 3;
- v721 = 0;
+ v718 = *(u*)(vc + 48UL);
+ v719 = 3872UL;
+ v720 = 3UL;
+ v721 = 0UL;
v722 = ((u(*)())v717)(v718, v719, v720, v721);
+ v722;
v723 = (u)zas_op;
- v724 = *(u*)(vc + 48);
- v725 = 195;
+ v724 = *(u*)(vc + 48UL);
+ v725 = 195UL;
v726 = ((u(*)())v723)(v724, v725);
+ v726;
b298: v727 = (u)zfind;
v728 = vc;
v729 = (u)"wrcr3";
- v730 = 0;
- v731 = 1;
+ v730 = 0UL;
+ v731 = 1UL;
v732 = ((u(*)())v727)(v728, v729, v730, v731);
vd = v732;
- if (!*(u*)(vd + 72)) goto b317;
- if (!*(u*)(*(u*)(vd + 88) + 16)) goto b321;
- v734 = 0;
+ if (!*(u*)(vd + 72UL)) goto b317;
+ if (!*(u*)(*(u*)(vd + 88UL) + 16UL)) goto b321;
+ v734 = 0UL;
b322: if (!v734) goto b317;
- v733 = 1;
-b319: if (!v733) goto b313;
+ v733 = 1UL;
+b319: if (!v733) goto b315;
v735 = (u)zfixup_label;
- v736 = *(u*)(vc + 48);
- v737 = *(u*)(vd + 88);
+ v736 = *(u*)(vc + 48UL);
+ v737 = *(u*)(vd + 88UL);
v738 = ((u(*)())v735)(v736, v737);
+ v738;
v739 = (u)zadd_symbol;
- v740 = *(u*)(vc + 48);
- v741 = *(u*)(vd + 32);
- v742 = *(u*)(vd + 88);
+ v740 = *(u*)(vc + 48UL);
+ v741 = *(u*)(vd + 32UL);
+ v742 = *(u*)(vd + 88UL);
v743 = ((u(*)())v739)(v740, v741, v742);
+ v743;
v744 = (u)zas_modrr;
- v745 = *(u*)(vc + 48);
- v746 = 3874;
- v747 = 3;
- v748 = 7;
+ v745 = *(u*)(vc + 48UL);
+ v746 = 3874UL;
+ v747 = 3UL;
+ v748 = 7UL;
v749 = ((u(*)())v744)(v745, v746, v747, v748);
+ v749;
v750 = (u)zas_op;
- v751 = *(u*)(vc + 48);
- v752 = 195;
+ v751 = *(u*)(vc + 48UL);
+ v752 = 195UL;
v753 = ((u(*)())v750)(v751, v752);
+ v753;
b313: v754 = (u)zfind;
v755 = vc;
v756 = (u)"rdcr4";
- v757 = 0;
- v758 = 1;
+ v757 = 0UL;
+ v758 = 1UL;
v759 = ((u(*)())v754)(v755, v756, v757, v758);
vd = v759;
- if (!*(u*)(vd + 72)) goto b332;
- if (!*(u*)(*(u*)(vd + 88) + 16)) goto b336;
- v761 = 0;
+ if (!*(u*)(vd + 72UL)) goto b332;
+ if (!*(u*)(*(u*)(vd + 88UL) + 16UL)) goto b336;
+ v761 = 0UL;
b337: if (!v761) goto b332;
- v760 = 1;
-b334: if (!v760) goto b328;
+ v760 = 1UL;
+b334: if (!v760) goto b330;
v762 = (u)zfixup_label;
- v763 = *(u*)(vc + 48);
- v764 = *(u*)(vd + 88);
+ v763 = *(u*)(vc + 48UL);
+ v764 = *(u*)(vd + 88UL);
v765 = ((u(*)())v762)(v763, v764);
+ v765;
v766 = (u)zadd_symbol;
- v767 = *(u*)(vc + 48);
- v768 = *(u*)(vd + 32);
- v769 = *(u*)(vd + 88);
+ v767 = *(u*)(vc + 48UL);
+ v768 = *(u*)(vd + 32UL);
+ v769 = *(u*)(vd + 88UL);
v770 = ((u(*)())v766)(v767, v768, v769);
+ v770;
v771 = (u)zas_modrr;
- v772 = *(u*)(vc + 48);
- v773 = 3872;
- v774 = 4;
- v775 = 0;
+ v772 = *(u*)(vc + 48UL);
+ v773 = 3872UL;
+ v774 = 4UL;
+ v775 = 0UL;
v776 = ((u(*)())v771)(v772, v773, v774, v775);
+ v776;
v777 = (u)zas_op;
- v778 = *(u*)(vc + 48);
- v779 = 195;
+ v778 = *(u*)(vc + 48UL);
+ v779 = 195UL;
v780 = ((u(*)())v777)(v778, v779);
+ v780;
b328: v781 = (u)zfind;
v782 = vc;
v783 = (u)"wrcr4";
- v784 = 0;
- v785 = 1;
+ v784 = 0UL;
+ v785 = 1UL;
v786 = ((u(*)())v781)(v782, v783, v784, v785);
vd = v786;
- if (!*(u*)(vd + 72)) goto b347;
- if (!*(u*)(*(u*)(vd + 88) + 16)) goto b351;
- v788 = 0;
+ if (!*(u*)(vd + 72UL)) goto b347;
+ if (!*(u*)(*(u*)(vd + 88UL) + 16UL)) goto b351;
+ v788 = 0UL;
b352: if (!v788) goto b347;
- v787 = 1;
-b349: if (!v787) goto b343;
+ v787 = 1UL;
+b349: if (!v787) goto b345;
v789 = (u)zfixup_label;
- v790 = *(u*)(vc + 48);
- v791 = *(u*)(vd + 88);
+ v790 = *(u*)(vc + 48UL);
+ v791 = *(u*)(vd + 88UL);
v792 = ((u(*)())v789)(v790, v791);
+ v792;
v793 = (u)zadd_symbol;
- v794 = *(u*)(vc + 48);
- v795 = *(u*)(vd + 32);
- v796 = *(u*)(vd + 88);
+ v794 = *(u*)(vc + 48UL);
+ v795 = *(u*)(vd + 32UL);
+ v796 = *(u*)(vd + 88UL);
v797 = ((u(*)())v793)(v794, v795, v796);
+ v797;
v798 = (u)zas_modrr;
- v799 = *(u*)(vc + 48);
- v800 = 3874;
- v801 = 4;
- v802 = 7;
+ v799 = *(u*)(vc + 48UL);
+ v800 = 3874UL;
+ v801 = 4UL;
+ v802 = 7UL;
v803 = ((u(*)())v798)(v799, v800, v801, v802);
+ v803;
v804 = (u)zas_op;
- v805 = *(u*)(vc + 48);
- v806 = 195;
+ v805 = *(u*)(vc + 48UL);
+ v806 = 195UL;
v807 = ((u(*)())v804)(v805, v806);
+ v807;
b343: v808 = (u)zfind;
v809 = vc;
v810 = (u)"lgdt";
- v811 = 0;
- v812 = 1;
+ v811 = 0UL;
+ v812 = 1UL;
v813 = ((u(*)())v808)(v809, v810, v811, v812);
vd = v813;
- if (!*(u*)(vd + 72)) goto b362;
- if (!*(u*)(*(u*)(vd + 88) + 16)) goto b366;
- v815 = 0;
+ if (!*(u*)(vd + 72UL)) goto b362;
+ if (!*(u*)(*(u*)(vd + 88UL) + 16UL)) goto b366;
+ v815 = 0UL;
b367: if (!v815) goto b362;
- v814 = 1;
-b364: if (!v814) goto b358;
+ v814 = 1UL;
+b364: if (!v814) goto b360;
v816 = (u)zfixup_label;
- v817 = *(u*)(vc + 48);
- v818 = *(u*)(vd + 88);
+ v817 = *(u*)(vc + 48UL);
+ v818 = *(u*)(vd + 88UL);
v819 = ((u(*)())v816)(v817, v818);
+ v819;
v820 = (u)zadd_symbol;
- v821 = *(u*)(vc + 48);
- v822 = *(u*)(vd + 32);
- v823 = *(u*)(vd + 88);
+ v821 = *(u*)(vc + 48UL);
+ v822 = *(u*)(vd + 32UL);
+ v823 = *(u*)(vd + 88UL);
v824 = ((u(*)())v820)(v821, v822, v823);
+ v824;
v825 = (u)zas_modri;
- v826 = *(u*)(vc + 48);
+ v826 = *(u*)(vc + 48UL);
v827 = 327809UL;
- v828 = 4;
- v829 = 16;
+ v828 = 4UL;
+ v829 = 16UL;
v830 = ((u(*)())v825)(v826, v827, v828, v829);
+ v830;
v831 = (u)zas_modri;
- v832 = *(u*)(vc + 48);
+ v832 = *(u*)(vc + 48UL);
v833 = 327809UL;
- v834 = 6;
- v835 = 1;
+ v834 = 6UL;
+ v835 = 1UL;
v836 = ((u(*)())v831)(v832, v833, v834, v835);
+ v836;
v837 = (u)zas_modrm;
- v838 = *(u*)(vc + 48);
- v839 = 137;
- v840 = 6;
- v841 = 4;
- v842 = 0;
- v843 = 0;
- v844 = 0;
+ v838 = *(u*)(vc + 48UL);
+ v839 = 137UL;
+ v840 = 6UL;
+ v841 = 4UL;
+ v842 = 0UL;
+ v843 = 0UL;
+ v844 = 0UL;
v845 = ((u(*)())v837)(v838, v839, v840, v841, v842, v843, v844);
+ v845;
v846 = (u)zas_modrm;
- v847 = *(u*)(vc + 48);
- v848 = 137;
- v849 = 7;
- v850 = 4;
- v851 = 0;
- v852 = 0;
- v853 = 2;
+ v847 = *(u*)(vc + 48UL);
+ v848 = 137UL;
+ v849 = 7UL;
+ v850 = 4UL;
+ v851 = 0UL;
+ v852 = 0UL;
+ v853 = 2UL;
v854 = ((u(*)())v846)(v847, v848, v849, v850, v851, v852, v853);
+ v854;
v855 = (u)zas_modm;
- v856 = *(u*)(vc + 48);
+ v856 = *(u*)(vc + 48UL);
v857 = 134913UL;
- v858 = 4;
- v859 = 0;
- v860 = 0;
- v861 = 0;
+ v858 = 4UL;
+ v859 = 0UL;
+ v860 = 0UL;
+ v861 = 0UL;
v862 = ((u(*)())v855)(v856, v857, v858, v859, v860, v861);
+ v862;
v863 = (u)zas_modri;
- v864 = *(u*)(vc + 48);
- v865 = 129;
- v866 = 4;
- v867 = 16;
+ v864 = *(u*)(vc + 48UL);
+ v865 = 129UL;
+ v866 = 4UL;
+ v867 = 16UL;
v868 = ((u(*)())v863)(v864, v865, v866, v867);
+ v868;
v869 = (u)zas_op;
- v870 = *(u*)(vc + 48);
- v871 = 195;
+ v870 = *(u*)(vc + 48UL);
+ v871 = 195UL;
v872 = ((u(*)())v869)(v870, v871);
+ v872;
b358: v873 = (u)zfind;
v874 = vc;
v875 = (u)"lidt";
- v876 = 0;
- v877 = 1;
+ v876 = 0UL;
+ v877 = 1UL;
v878 = ((u(*)())v873)(v874, v875, v876, v877);
vd = v878;
- if (!*(u*)(vd + 72)) goto b382;
- if (!*(u*)(*(u*)(vd + 88) + 16)) goto b386;
- v880 = 0;
+ if (!*(u*)(vd + 72UL)) goto b382;
+ if (!*(u*)(*(u*)(vd + 88UL) + 16UL)) goto b386;
+ v880 = 0UL;
b387: if (!v880) goto b382;
- v879 = 1;
-b384: if (!v879) goto b378;
+ v879 = 1UL;
+b384: if (!v879) goto b380;
v881 = (u)zfixup_label;
- v882 = *(u*)(vc + 48);
- v883 = *(u*)(vd + 88);
+ v882 = *(u*)(vc + 48UL);
+ v883 = *(u*)(vd + 88UL);
v884 = ((u(*)())v881)(v882, v883);
+ v884;
v885 = (u)zadd_symbol;
- v886 = *(u*)(vc + 48);
- v887 = *(u*)(vd + 32);
- v888 = *(u*)(vd + 88);
+ v886 = *(u*)(vc + 48UL);
+ v887 = *(u*)(vd + 32UL);
+ v888 = *(u*)(vd + 88UL);
v889 = ((u(*)())v885)(v886, v887, v888);
+ v889;
v890 = (u)zas_modri;
- v891 = *(u*)(vc + 48);
+ v891 = *(u*)(vc + 48UL);
v892 = 327809UL;
- v893 = 4;
- v894 = 16;
+ v893 = 4UL;
+ v894 = 16UL;
v895 = ((u(*)())v890)(v891, v892, v893, v894);
+ v895;
v896 = (u)zas_modri;
- v897 = *(u*)(vc + 48);
+ v897 = *(u*)(vc + 48UL);
v898 = 327809UL;
- v899 = 6;
- v900 = 1;
+ v899 = 6UL;
+ v900 = 1UL;
v901 = ((u(*)())v896)(v897, v898, v899, v900);
+ v901;
v902 = (u)zas_modrm;
- v903 = *(u*)(vc + 48);
- v904 = 137;
- v905 = 6;
- v906 = 4;
- v907 = 0;
- v908 = 0;
- v909 = 0;
+ v903 = *(u*)(vc + 48UL);
+ v904 = 137UL;
+ v905 = 6UL;
+ v906 = 4UL;
+ v907 = 0UL;
+ v908 = 0UL;
+ v909 = 0UL;
v910 = ((u(*)())v902)(v903, v904, v905, v906, v907, v908, v909);
+ v910;
v911 = (u)zas_modrm;
- v912 = *(u*)(vc + 48);
- v913 = 137;
- v914 = 7;
- v915 = 4;
- v916 = 0;
- v917 = 0;
- v918 = 2;
+ v912 = *(u*)(vc + 48UL);
+ v913 = 137UL;
+ v914 = 7UL;
+ v915 = 4UL;
+ v916 = 0UL;
+ v917 = 0UL;
+ v918 = 2UL;
v919 = ((u(*)())v911)(v912, v913, v914, v915, v916, v917, v918);
+ v919;
v920 = (u)zas_modm;
- v921 = *(u*)(vc + 48);
+ v921 = *(u*)(vc + 48UL);
v922 = 200449UL;
- v923 = 4;
- v924 = 0;
- v925 = 0;
- v926 = 0;
+ v923 = 4UL;
+ v924 = 0UL;
+ v925 = 0UL;
+ v926 = 0UL;
v927 = ((u(*)())v920)(v921, v922, v923, v924, v925, v926);
+ v927;
v928 = (u)zas_modri;
- v929 = *(u*)(vc + 48);
- v930 = 129;
- v931 = 4;
- v932 = 16;
+ v929 = *(u*)(vc + 48UL);
+ v930 = 129UL;
+ v931 = 4UL;
+ v932 = 16UL;
v933 = ((u(*)())v928)(v929, v930, v931, v932);
+ v933;
v934 = (u)zas_op;
- v935 = *(u*)(vc + 48);
- v936 = 195;
+ v935 = *(u*)(vc + 48UL);
+ v936 = 195UL;
v937 = ((u(*)())v934)(v935, v936);
+ v937;
b378: v938 = (u)zfind;
v939 = vc;
v940 = (u)"lldt";
- v941 = 0;
- v942 = 1;
+ v941 = 0UL;
+ v942 = 1UL;
v943 = ((u(*)())v938)(v939, v940, v941, v942);
vd = v943;
- if (!*(u*)(vd + 72)) goto b402;
- if (!*(u*)(*(u*)(vd + 88) + 16)) goto b406;
- v945 = 0;
+ if (!*(u*)(vd + 72UL)) goto b402;
+ if (!*(u*)(*(u*)(vd + 88UL) + 16UL)) goto b406;
+ v945 = 0UL;
b407: if (!v945) goto b402;
- v944 = 1;
-b404: if (!v944) goto b398;
+ v944 = 1UL;
+b404: if (!v944) goto b400;
v946 = (u)zfixup_label;
- v947 = *(u*)(vc + 48);
- v948 = *(u*)(vd + 88);
+ v947 = *(u*)(vc + 48UL);
+ v948 = *(u*)(vd + 88UL);
v949 = ((u(*)())v946)(v947, v948);
+ v949;
v950 = (u)zadd_symbol;
- v951 = *(u*)(vc + 48);
- v952 = *(u*)(vd + 32);
- v953 = *(u*)(vd + 88);
+ v951 = *(u*)(vc + 48UL);
+ v952 = *(u*)(vd + 32UL);
+ v953 = *(u*)(vd + 88UL);
v954 = ((u(*)())v950)(v951, v952, v953);
+ v954;
v955 = (u)zas_modr;
- v956 = *(u*)(vc + 48);
+ v956 = *(u*)(vc + 48UL);
v957 = 134912UL;
- v958 = 7;
+ v958 = 7UL;
v959 = ((u(*)())v955)(v956, v957, v958);
+ v959;
v960 = (u)zas_op;
- v961 = *(u*)(vc + 48);
- v962 = 195;
+ v961 = *(u*)(vc + 48UL);
+ v962 = 195UL;
v963 = ((u(*)())v960)(v961, v962);
+ v963;
b398: v964 = (u)zfind;
v965 = vc;
v966 = (u)"ltr";
- v967 = 0;
- v968 = 1;
+ v967 = 0UL;
+ v968 = 1UL;
v969 = ((u(*)())v964)(v965, v966, v967, v968);
vd = v969;
- if (!*(u*)(vd + 72)) goto b417;
- if (!*(u*)(*(u*)(vd + 88) + 16)) goto b421;
- v971 = 0;
+ if (!*(u*)(vd + 72UL)) goto b417;
+ if (!*(u*)(*(u*)(vd + 88UL) + 16UL)) goto b421;
+ v971 = 0UL;
b422: if (!v971) goto b417;
- v970 = 1;
-b419: if (!v970) goto b413;
+ v970 = 1UL;
+b419: if (!v970) goto b415;
v972 = (u)zfixup_label;
- v973 = *(u*)(vc + 48);
- v974 = *(u*)(vd + 88);
+ v973 = *(u*)(vc + 48UL);
+ v974 = *(u*)(vd + 88UL);
v975 = ((u(*)())v972)(v973, v974);
+ v975;
v976 = (u)zadd_symbol;
- v977 = *(u*)(vc + 48);
- v978 = *(u*)(vd + 32);
- v979 = *(u*)(vd + 88);
+ v977 = *(u*)(vc + 48UL);
+ v978 = *(u*)(vd + 32UL);
+ v979 = *(u*)(vd + 88UL);
v980 = ((u(*)())v976)(v977, v978, v979);
+ v980;
v981 = (u)zas_modr;
- v982 = *(u*)(vc + 48);
+ v982 = *(u*)(vc + 48UL);
v983 = 200448UL;
- v984 = 7;
+ v984 = 7UL;
v985 = ((u(*)())v981)(v982, v983, v984);
+ v985;
v986 = (u)zas_op;
- v987 = *(u*)(vc + 48);
- v988 = 195;
+ v987 = *(u*)(vc + 48UL);
+ v988 = 195UL;
v989 = ((u(*)())v986)(v987, v988);
+ v989;
b413: v990 = (u)zfind;
v991 = vc;
v992 = (u)"lseg";
- v993 = 0;
- v994 = 1;
+ v993 = 0UL;
+ v994 = 1UL;
v995 = ((u(*)())v990)(v991, v992, v993, v994);
vd = v995;
- if (!*(u*)(vd + 72)) goto b432;
- if (!*(u*)(*(u*)(vd + 88) + 16)) goto b436;
- v997 = 0;
+ if (!*(u*)(vd + 72UL)) goto b432;
+ if (!*(u*)(*(u*)(vd + 88UL) + 16UL)) goto b436;
+ v997 = 0UL;
b437: if (!v997) goto b432;
- v996 = 1;
-b434: if (!v996) goto b428;
+ v996 = 1UL;
+b434: if (!v996) goto b430;
v998 = (u)zfixup_label;
- v999 = *(u*)(vc + 48);
- v1000 = *(u*)(vd + 88);
+ v999 = *(u*)(vc + 48UL);
+ v1000 = *(u*)(vd + 88UL);
v1001 = ((u(*)())v998)(v999, v1000);
+ v1001;
v1002 = (u)zadd_symbol;
- v1003 = *(u*)(vc + 48);
- v1004 = *(u*)(vd + 32);
- v1005 = *(u*)(vd + 88);
+ v1003 = *(u*)(vc + 48UL);
+ v1004 = *(u*)(vd + 32UL);
+ v1005 = *(u*)(vd + 88UL);
v1006 = ((u(*)())v1002)(v1003, v1004, v1005);
+ v1006;
v1007 = (u)zas_opr;
- v1008 = *(u*)(vc + 48);
- v1009 = 80;
- v1010 = 5;
+ v1008 = *(u*)(vc + 48UL);
+ v1009 = 80UL;
+ v1010 = 5UL;
v1011 = ((u(*)())v1007)(v1008, v1009, v1010);
+ v1011;
v1012 = (u)zas_modrr;
- v1013 = *(u*)(vc + 48);
- v1014 = 139;
- v1015 = 5;
- v1016 = 4;
+ v1013 = *(u*)(vc + 48UL);
+ v1014 = 139UL;
+ v1015 = 5UL;
+ v1016 = 4UL;
v1017 = ((u(*)())v1012)(v1013, v1014, v1015, v1016);
+ v1017;
v1018 = (u)zas_modrr;
- v1019 = *(u*)(vc + 48);
- v1020 = 142;
- v1021 = 0;
- v1022 = 6;
+ v1019 = *(u*)(vc + 48UL);
+ v1020 = 142UL;
+ v1021 = 0UL;
+ v1022 = 6UL;
v1023 = ((u(*)())v1018)(v1019, v1020, v1021, v1022);
+ v1023;
v1024 = (u)zas_modrr;
- v1025 = *(u*)(vc + 48);
- v1026 = 142;
- v1027 = 3;
- v1028 = 6;
+ v1025 = *(u*)(vc + 48UL);
+ v1026 = 142UL;
+ v1027 = 3UL;
+ v1028 = 6UL;
v1029 = ((u(*)())v1024)(v1025, v1026, v1027, v1028);
+ v1029;
v1030 = (u)zas_modrr;
- v1031 = *(u*)(vc + 48);
- v1032 = 142;
- v1033 = 4;
- v1034 = 6;
+ v1031 = *(u*)(vc + 48UL);
+ v1032 = 142UL;
+ v1033 = 4UL;
+ v1034 = 6UL;
v1035 = ((u(*)())v1030)(v1031, v1032, v1033, v1034);
+ v1035;
v1036 = (u)zas_modrr;
- v1037 = *(u*)(vc + 48);
- v1038 = 142;
- v1039 = 5;
- v1040 = 6;
+ v1037 = *(u*)(vc + 48UL);
+ v1038 = 142UL;
+ v1039 = 5UL;
+ v1040 = 6UL;
v1041 = ((u(*)())v1036)(v1037, v1038, v1039, v1040);
+ v1041;
v1042 = (u)zas_opr;
- v1043 = *(u*)(vc + 48);
- v1044 = 80;
- v1045 = 6;
+ v1043 = *(u*)(vc + 48UL);
+ v1044 = 80UL;
+ v1045 = 6UL;
v1046 = ((u(*)())v1042)(v1043, v1044, v1045);
+ v1046;
v1047 = (u)zas_opr;
- v1048 = *(u*)(vc + 48);
- v1049 = 80;
- v1050 = 5;
+ v1048 = *(u*)(vc + 48UL);
+ v1049 = 80UL;
+ v1050 = 5UL;
v1051 = ((u(*)())v1047)(v1048, v1049, v1050);
+ v1051;
v1052 = (u)zas_op;
- v1053 = *(u*)(vc + 48);
- v1054 = 156;
+ v1053 = *(u*)(vc + 48UL);
+ v1054 = 156UL;
v1055 = ((u(*)())v1052)(v1053, v1054);
+ v1055;
v1056 = (u)zas_opr;
- v1057 = *(u*)(vc + 48);
- v1058 = 80;
- v1059 = 7;
+ v1057 = *(u*)(vc + 48UL);
+ v1058 = 80UL;
+ v1059 = 7UL;
v1060 = ((u(*)())v1056)(v1057, v1058, v1059);
+ v1060;
v1061 = (u)zas_op;
- v1062 = *(u*)(vc + 48);
- v1063 = 232;
+ v1062 = *(u*)(vc + 48UL);
+ v1063 = 232UL;
v1064 = ((u(*)())v1061)(v1062, v1063);
+ v1064;
v1065 = (u)zas_emit;
- v1066 = *(u*)(vc + 48);
- v1067 = 5;
+ v1066 = *(u*)(vc + 48UL);
+ v1067 = 5UL;
v1068 = ((u(*)())v1065)(v1066, v1067);
+ v1068;
v1069 = (u)zas_emit;
- v1070 = *(u*)(vc + 48);
- v1071 = 0;
+ v1070 = *(u*)(vc + 48UL);
+ v1071 = 0UL;
v1072 = ((u(*)())v1069)(v1070, v1071);
+ v1072;
v1073 = (u)zas_emit;
- v1074 = *(u*)(vc + 48);
- v1075 = 0;
+ v1074 = *(u*)(vc + 48UL);
+ v1075 = 0UL;
v1076 = ((u(*)())v1073)(v1074, v1075);
+ v1076;
v1077 = (u)zas_emit;
- v1078 = *(u*)(vc + 48);
- v1079 = 0;
+ v1078 = *(u*)(vc + 48UL);
+ v1079 = 0UL;
v1080 = ((u(*)())v1077)(v1078, v1079);
+ v1080;
v1081 = (u)zas_op;
- v1082 = *(u*)(vc + 48);
- v1083 = 233;
+ v1082 = *(u*)(vc + 48UL);
+ v1083 = 233UL;
v1084 = ((u(*)())v1081)(v1082, v1083);
+ v1084;
v1085 = (u)zas_emit;
- v1086 = *(u*)(vc + 48);
- v1087 = 2;
+ v1086 = *(u*)(vc + 48UL);
+ v1087 = 2UL;
v1088 = ((u(*)())v1085)(v1086, v1087);
+ v1088;
v1089 = (u)zas_emit;
- v1090 = *(u*)(vc + 48);
- v1091 = 0;
+ v1090 = *(u*)(vc + 48UL);
+ v1091 = 0UL;
v1092 = ((u(*)())v1089)(v1090, v1091);
+ v1092;
v1093 = (u)zas_emit;
- v1094 = *(u*)(vc + 48);
- v1095 = 0;
+ v1094 = *(u*)(vc + 48UL);
+ v1095 = 0UL;
v1096 = ((u(*)())v1093)(v1094, v1095);
+ v1096;
v1097 = (u)zas_emit;
- v1098 = *(u*)(vc + 48);
- v1099 = 0;
+ v1098 = *(u*)(vc + 48UL);
+ v1099 = 0UL;
v1100 = ((u(*)())v1097)(v1098, v1099);
+ v1100;
v1101 = (u)zas_op;
- v1102 = *(u*)(vc + 48);
- v1103 = 18639;
+ v1102 = *(u*)(vc + 48UL);
+ v1103 = 18639UL;
v1104 = ((u(*)())v1101)(v1102, v1103);
+ v1104;
v1105 = (u)zas_opr;
- v1106 = *(u*)(vc + 48);
- v1107 = 88;
- v1108 = 5;
+ v1106 = *(u*)(vc + 48UL);
+ v1107 = 88UL;
+ v1108 = 5UL;
v1109 = ((u(*)())v1105)(v1106, v1107, v1108);
+ v1109;
v1110 = (u)zas_op;
- v1111 = *(u*)(vc + 48);
- v1112 = 195;
+ v1111 = *(u*)(vc + 48UL);
+ v1112 = 195UL;
v1113 = ((u(*)())v1110)(v1111, v1112);
+ v1113;
b428: v1114 = (u)zfind;
v1115 = vc;
v1116 = (u)"hlt";
- v1117 = 0;
- v1118 = 1;
+ v1117 = 0UL;
+ v1118 = 1UL;
v1119 = ((u(*)())v1114)(v1115, v1116, v1117, v1118);
vd = v1119;
- if (!*(u*)(vd + 72)) goto b468;
- if (!*(u*)(*(u*)(vd + 88) + 16)) goto b472;
- v1121 = 0;
+ if (!*(u*)(vd + 72UL)) goto b468;
+ if (!*(u*)(*(u*)(vd + 88UL) + 16UL)) goto b472;
+ v1121 = 0UL;
b473: if (!v1121) goto b468;
- v1120 = 1;
-b470: if (!v1120) goto b464;
+ v1120 = 1UL;
+b470: if (!v1120) goto b466;
v1122 = (u)zfixup_label;
- v1123 = *(u*)(vc + 48);
- v1124 = *(u*)(vd + 88);
+ v1123 = *(u*)(vc + 48UL);
+ v1124 = *(u*)(vd + 88UL);
v1125 = ((u(*)())v1122)(v1123, v1124);
+ v1125;
v1126 = (u)zadd_symbol;
- v1127 = *(u*)(vc + 48);
- v1128 = *(u*)(vd + 32);
- v1129 = *(u*)(vd + 88);
+ v1127 = *(u*)(vc + 48UL);
+ v1128 = *(u*)(vd + 32UL);
+ v1129 = *(u*)(vd + 88UL);
v1130 = ((u(*)())v1126)(v1127, v1128, v1129);
+ v1130;
v1131 = (u)zas_op;
- v1132 = *(u*)(vc + 48);
- v1133 = 244;
+ v1132 = *(u*)(vc + 48UL);
+ v1133 = 244UL;
v1134 = ((u(*)())v1131)(v1132, v1133);
+ v1134;
v1135 = (u)zas_op;
- v1136 = *(u*)(vc + 48);
- v1137 = 195;
+ v1136 = *(u*)(vc + 48UL);
+ v1137 = 195UL;
v1138 = ((u(*)())v1135)(v1136, v1137);
+ v1138;
b464: v1139 = (u)zfind;
v1140 = vc;
v1141 = (u)"cli";
- v1142 = 0;
- v1143 = 1;
+ v1142 = 0UL;
+ v1143 = 1UL;
v1144 = ((u(*)())v1139)(v1140, v1141, v1142, v1143);
vd = v1144;
- if (!*(u*)(vd + 72)) goto b483;
- if (!*(u*)(*(u*)(vd + 88) + 16)) goto b487;
- v1146 = 0;
+ if (!*(u*)(vd + 72UL)) goto b483;
+ if (!*(u*)(*(u*)(vd + 88UL) + 16UL)) goto b487;
+ v1146 = 0UL;
b488: if (!v1146) goto b483;
- v1145 = 1;
-b485: if (!v1145) goto b479;
+ v1145 = 1UL;
+b485: if (!v1145) goto b481;
v1147 = (u)zfixup_label;
- v1148 = *(u*)(vc + 48);
- v1149 = *(u*)(vd + 88);
+ v1148 = *(u*)(vc + 48UL);
+ v1149 = *(u*)(vd + 88UL);
v1150 = ((u(*)())v1147)(v1148, v1149);
+ v1150;
v1151 = (u)zadd_symbol;
- v1152 = *(u*)(vc + 48);
- v1153 = *(u*)(vd + 32);
- v1154 = *(u*)(vd + 88);
+ v1152 = *(u*)(vc + 48UL);
+ v1153 = *(u*)(vd + 32UL);
+ v1154 = *(u*)(vd + 88UL);
v1155 = ((u(*)())v1151)(v1152, v1153, v1154);
+ v1155;
v1156 = (u)zas_op;
- v1157 = *(u*)(vc + 48);
- v1158 = 250;
+ v1157 = *(u*)(vc + 48UL);
+ v1158 = 250UL;
v1159 = ((u(*)())v1156)(v1157, v1158);
+ v1159;
v1160 = (u)zas_op;
- v1161 = *(u*)(vc + 48);
- v1162 = 195;
+ v1161 = *(u*)(vc + 48UL);
+ v1162 = 195UL;
v1163 = ((u(*)())v1160)(v1161, v1162);
+ v1163;
b479: v1164 = (u)zfind;
v1165 = vc;
v1166 = (u)"sti";
- v1167 = 0;
- v1168 = 1;
+ v1167 = 0UL;
+ v1168 = 1UL;
v1169 = ((u(*)())v1164)(v1165, v1166, v1167, v1168);
vd = v1169;
- if (!*(u*)(vd + 72)) goto b498;
- if (!*(u*)(*(u*)(vd + 88) + 16)) goto b502;
- v1171 = 0;
+ if (!*(u*)(vd + 72UL)) goto b498;
+ if (!*(u*)(*(u*)(vd + 88UL) + 16UL)) goto b502;
+ v1171 = 0UL;
b503: if (!v1171) goto b498;
- v1170 = 1;
-b500: if (!v1170) goto b494;
+ v1170 = 1UL;
+b500: if (!v1170) goto b496;
v1172 = (u)zfixup_label;
- v1173 = *(u*)(vc + 48);
- v1174 = *(u*)(vd + 88);
+ v1173 = *(u*)(vc + 48UL);
+ v1174 = *(u*)(vd + 88UL);
v1175 = ((u(*)())v1172)(v1173, v1174);
+ v1175;
v1176 = (u)zadd_symbol;
- v1177 = *(u*)(vc + 48);
- v1178 = *(u*)(vd + 32);
- v1179 = *(u*)(vd + 88);
+ v1177 = *(u*)(vc + 48UL);
+ v1178 = *(u*)(vd + 32UL);
+ v1179 = *(u*)(vd + 88UL);
v1180 = ((u(*)())v1176)(v1177, v1178, v1179);
+ v1180;
v1181 = (u)zas_op;
- v1182 = *(u*)(vc + 48);
- v1183 = 251;
+ v1182 = *(u*)(vc + 48UL);
+ v1183 = 251UL;
v1184 = ((u(*)())v1181)(v1182, v1183);
+ v1184;
v1185 = (u)zas_op;
- v1186 = *(u*)(vc + 48);
- v1187 = 195;
+ v1186 = *(u*)(vc + 48UL);
+ v1187 = 195UL;
v1188 = ((u(*)())v1185)(v1186, v1187);
+ v1188;
b494: v1189 = (u)zfind;
v1190 = vc;
v1191 = (u)"rdflags";
- v1192 = 0;
- v1193 = 1;
+ v1192 = 0UL;
+ v1193 = 1UL;
v1194 = ((u(*)())v1189)(v1190, v1191, v1192, v1193);
vd = v1194;
- if (!*(u*)(vd + 72)) goto b513;
- if (!*(u*)(*(u*)(vd + 88) + 16)) goto b517;
- v1196 = 0;
+ if (!*(u*)(vd + 72UL)) goto b513;
+ if (!*(u*)(*(u*)(vd + 88UL) + 16UL)) goto b517;
+ v1196 = 0UL;
b518: if (!v1196) goto b513;
- v1195 = 1;
-b515: if (!v1195) goto b509;
+ v1195 = 1UL;
+b515: if (!v1195) goto b511;
v1197 = (u)zfixup_label;
- v1198 = *(u*)(vc + 48);
- v1199 = *(u*)(vd + 88);
+ v1198 = *(u*)(vc + 48UL);
+ v1199 = *(u*)(vd + 88UL);
v1200 = ((u(*)())v1197)(v1198, v1199);
+ v1200;
v1201 = (u)zadd_symbol;
- v1202 = *(u*)(vc + 48);
- v1203 = *(u*)(vd + 32);
- v1204 = *(u*)(vd + 88);
+ v1202 = *(u*)(vc + 48UL);
+ v1203 = *(u*)(vd + 32UL);
+ v1204 = *(u*)(vd + 88UL);
v1205 = ((u(*)())v1201)(v1202, v1203, v1204);
+ v1205;
v1206 = (u)zas_op;
- v1207 = *(u*)(vc + 48);
- v1208 = 156;
+ v1207 = *(u*)(vc + 48UL);
+ v1208 = 156UL;
v1209 = ((u(*)())v1206)(v1207, v1208);
+ v1209;
v1210 = (u)zas_opr;
- v1211 = *(u*)(vc + 48);
- v1212 = 88;
- v1213 = 0;
+ v1211 = *(u*)(vc + 48UL);
+ v1212 = 88UL;
+ v1213 = 0UL;
v1214 = ((u(*)())v1210)(v1211, v1212, v1213);
+ v1214;
v1215 = (u)zas_op;
- v1216 = *(u*)(vc + 48);
- v1217 = 195;
+ v1216 = *(u*)(vc + 48UL);
+ v1217 = 195UL;
v1218 = ((u(*)())v1215)(v1216, v1217);
+ v1218;
b509: v1219 = (u)zfind;
v1220 = vc;
v1221 = (u)"wrflags";
- v1222 = 0;
- v1223 = 1;
+ v1222 = 0UL;
+ v1223 = 1UL;
v1224 = ((u(*)())v1219)(v1220, v1221, v1222, v1223);
vd = v1224;
- if (!*(u*)(vd + 72)) goto b529;
- if (!*(u*)(*(u*)(vd + 88) + 16)) goto b533;
- v1226 = 0;
+ if (!*(u*)(vd + 72UL)) goto b529;
+ if (!*(u*)(*(u*)(vd + 88UL) + 16UL)) goto b533;
+ v1226 = 0UL;
b534: if (!v1226) goto b529;
- v1225 = 1;
-b531: if (!v1225) goto b525;
+ v1225 = 1UL;
+b531: if (!v1225) goto b527;
v1227 = (u)zfixup_label;
- v1228 = *(u*)(vc + 48);
- v1229 = *(u*)(vd + 88);
+ v1228 = *(u*)(vc + 48UL);
+ v1229 = *(u*)(vd + 88UL);
v1230 = ((u(*)())v1227)(v1228, v1229);
+ v1230;
v1231 = (u)zadd_symbol;
- v1232 = *(u*)(vc + 48);
- v1233 = *(u*)(vd + 32);
- v1234 = *(u*)(vd + 88);
+ v1232 = *(u*)(vc + 48UL);
+ v1233 = *(u*)(vd + 32UL);
+ v1234 = *(u*)(vd + 88UL);
v1235 = ((u(*)())v1231)(v1232, v1233, v1234);
+ v1235;
v1236 = (u)zas_opr;
- v1237 = *(u*)(vc + 48);
- v1238 = 80;
- v1239 = 7;
+ v1237 = *(u*)(vc + 48UL);
+ v1238 = 80UL;
+ v1239 = 7UL;
v1240 = ((u(*)())v1236)(v1237, v1238, v1239);
+ v1240;
v1241 = (u)zas_op;
- v1242 = *(u*)(vc + 48);
- v1243 = 157;
+ v1242 = *(u*)(vc + 48UL);
+ v1243 = 157UL;
v1244 = ((u(*)())v1241)(v1242, v1243);
+ v1244;
v1245 = (u)zas_op;
- v1246 = *(u*)(vc + 48);
- v1247 = 195;
+ v1246 = *(u*)(vc + 48UL);
+ v1247 = 195UL;
v1248 = ((u(*)())v1245)(v1246, v1247);
+ v1248;
b525: v1249 = (u)zfind;
v1250 = vc;
v1251 = (u)"wbinvld";
- v1252 = 0;
- v1253 = 1;
+ v1252 = 0UL;
+ v1253 = 1UL;
v1254 = ((u(*)())v1249)(v1250, v1251, v1252, v1253);
vd = v1254;
- if (!*(u*)(vd + 72)) goto b545;
- if (!*(u*)(*(u*)(vd + 88) + 16)) goto b549;
- v1256 = 0;
+ if (!*(u*)(vd + 72UL)) goto b545;
+ if (!*(u*)(*(u*)(vd + 88UL) + 16UL)) goto b549;
+ v1256 = 0UL;
b550: if (!v1256) goto b545;
- v1255 = 1;
-b547: if (!v1255) goto b541;
+ v1255 = 1UL;
+b547: if (!v1255) goto b543;
v1257 = (u)zfixup_label;
- v1258 = *(u*)(vc + 48);
- v1259 = *(u*)(vd + 88);
+ v1258 = *(u*)(vc + 48UL);
+ v1259 = *(u*)(vd + 88UL);
v1260 = ((u(*)())v1257)(v1258, v1259);
+ v1260;
v1261 = (u)zadd_symbol;
- v1262 = *(u*)(vc + 48);
- v1263 = *(u*)(vd + 32);
- v1264 = *(u*)(vd + 88);
+ v1262 = *(u*)(vc + 48UL);
+ v1263 = *(u*)(vd + 32UL);
+ v1264 = *(u*)(vd + 88UL);
v1265 = ((u(*)())v1261)(v1262, v1263, v1264);
+ v1265;
v1266 = (u)zas_modm;
- v1267 = *(u*)(vc + 48);
- v1268 = 3849;
- v1269 = 7;
- v1270 = 0;
- v1271 = 0;
- v1272 = 0;
+ v1267 = *(u*)(vc + 48UL);
+ v1268 = 3849UL;
+ v1269 = 7UL;
+ v1270 = 0UL;
+ v1271 = 0UL;
+ v1272 = 0UL;
v1273 = ((u(*)())v1266)(v1267, v1268, v1269, v1270, v1271, v1272);
+ v1273;
v1274 = (u)zas_op;
- v1275 = *(u*)(vc + 48);
- v1276 = 195;
+ v1275 = *(u*)(vc + 48UL);
+ v1276 = 195UL;
v1277 = ((u(*)())v1274)(v1275, v1276);
+ v1277;
b541: v1278 = (u)zfind;
v1279 = vc;
v1280 = (u)"invlpg";
- v1281 = 0;
- v1282 = 1;
+ v1281 = 0UL;
+ v1282 = 1UL;
v1283 = ((u(*)())v1278)(v1279, v1280, v1281, v1282);
vd = v1283;
- if (!*(u*)(vd + 72)) goto b560;
- if (!*(u*)(*(u*)(vd + 88) + 16)) goto b564;
- v1285 = 0;
+ if (!*(u*)(vd + 72UL)) goto b560;
+ if (!*(u*)(*(u*)(vd + 88UL) + 16UL)) goto b564;
+ v1285 = 0UL;
b565: if (!v1285) goto b560;
- v1284 = 1;
-b562: if (!v1284) goto b556;
+ v1284 = 1UL;
+b562: if (!v1284) goto b558;
v1286 = (u)zfixup_label;
- v1287 = *(u*)(vc + 48);
- v1288 = *(u*)(vd + 88);
+ v1287 = *(u*)(vc + 48UL);
+ v1288 = *(u*)(vd + 88UL);
v1289 = ((u(*)())v1286)(v1287, v1288);
+ v1289;
v1290 = (u)zadd_symbol;
- v1291 = *(u*)(vc + 48);
- v1292 = *(u*)(vd + 32);
- v1293 = *(u*)(vd + 88);
+ v1291 = *(u*)(vc + 48UL);
+ v1292 = *(u*)(vd + 32UL);
+ v1293 = *(u*)(vd + 88UL);
v1294 = ((u(*)())v1290)(v1291, v1292, v1293);
+ v1294;
v1295 = (u)zas_modm;
- v1296 = *(u*)(vc + 48);
+ v1296 = *(u*)(vc + 48UL);
v1297 = 462593UL;
- v1298 = 7;
- v1299 = 0;
- v1300 = 0;
- v1301 = 0;
+ v1298 = 7UL;
+ v1299 = 0UL;
+ v1300 = 0UL;
+ v1301 = 0UL;
v1302 = ((u(*)())v1295)(v1296, v1297, v1298, v1299, v1300, v1301);
+ v1302;
v1303 = (u)zas_op;
- v1304 = *(u*)(vc + 48);
- v1305 = 195;
+ v1304 = *(u*)(vc + 48UL);
+ v1305 = 195UL;
v1306 = ((u(*)())v1303)(v1304, v1305);
+ v1306;
b556: v1307 = (u)zfind;
v1308 = vc;
v1309 = (u)"_ssr0";
- v1310 = 0;
- v1311 = 1;
+ v1310 = 0UL;
+ v1311 = 1UL;
v1312 = ((u(*)())v1307)(v1308, v1309, v1310, v1311);
vd = v1312;
- if (!*(u*)(vd + 72)) goto b575;
- if (!*(u*)(*(u*)(vd + 88) + 16)) goto b579;
- v1314 = 0;
+ if (!*(u*)(vd + 72UL)) goto b575;
+ if (!*(u*)(*(u*)(vd + 88UL) + 16UL)) goto b579;
+ v1314 = 0UL;
b580: if (!v1314) goto b575;
- v1313 = 1;
-b577: if (!v1313) goto b571;
+ v1313 = 1UL;
+b577: if (!v1313) goto b573;
v1315 = (u)zfixup_label;
- v1316 = *(u*)(vc + 48);
- v1317 = *(u*)(vd + 88);
+ v1316 = *(u*)(vc + 48UL);
+ v1317 = *(u*)(vd + 88UL);
v1318 = ((u(*)())v1315)(v1316, v1317);
+ v1318;
v1319 = (u)zadd_symbol;
- v1320 = *(u*)(vc + 48);
- v1321 = *(u*)(vd + 32);
- v1322 = *(u*)(vd + 88);
+ v1320 = *(u*)(vc + 48UL);
+ v1321 = *(u*)(vd + 32UL);
+ v1322 = *(u*)(vd + 88UL);
v1323 = ((u(*)())v1319)(v1320, v1321, v1322);
+ v1323;
v1324 = (u)zemit_ssr;
v1325 = vc;
v1326 = ((u(*)())v1324)(v1325);
+ v1326;
v1327 = (u)zas_op;
- v1328 = *(u*)(vc + 48);
- v1329 = 195;
+ v1328 = *(u*)(vc + 48UL);
+ v1329 = 195UL;
v1330 = ((u(*)())v1327)(v1328, v1329);
+ v1330;
b571: v1331 = (u)zfind;
v1332 = vc;
v1333 = (u)"_isr0";
- v1334 = 0;
- v1335 = 1;
+ v1334 = 0UL;
+ v1335 = 1UL;
v1336 = ((u(*)())v1331)(v1332, v1333, v1334, v1335);
vd = v1336;
- if (!*(u*)(vd + 72)) goto b590;
- if (!*(u*)(*(u*)(vd + 88) + 16)) goto b594;
- v1338 = 0;
+ if (!*(u*)(vd + 72UL)) goto b590;
+ if (!*(u*)(*(u*)(vd + 88UL) + 16UL)) goto b594;
+ v1338 = 0UL;
b595: if (!v1338) goto b590;
- v1337 = 1;
-b592: if (!v1337) goto b586;
+ v1337 = 1UL;
+b592: if (!v1337) goto b588;
v1339 = (u)zfixup_label;
- v1340 = *(u*)(vc + 48);
- v1341 = *(u*)(vd + 88);
+ v1340 = *(u*)(vc + 48UL);
+ v1341 = *(u*)(vd + 88UL);
v1342 = ((u(*)())v1339)(v1340, v1341);
+ v1342;
v1343 = (u)zadd_symbol;
- v1344 = *(u*)(vc + 48);
- v1345 = *(u*)(vd + 32);
- v1346 = *(u*)(vd + 88);
+ v1344 = *(u*)(vc + 48UL);
+ v1345 = *(u*)(vd + 32UL);
+ v1346 = *(u*)(vd + 88UL);
v1347 = ((u(*)())v1343)(v1344, v1345, v1346);
+ v1347;
v1348 = (u)zemit_isr;
v1349 = vc;
v1350 = ((u(*)())v1348)(v1349);
+ v1350;
v1351 = (u)zas_op;
- v1352 = *(u*)(vc + 48);
- v1353 = 195;
+ v1352 = *(u*)(vc + 48UL);
+ v1353 = 195UL;
v1354 = ((u(*)())v1351)(v1352, v1353);
+ v1354;
b586: v1355 = (u)zfind;
v1356 = vc;
v1357 = (u)"_rgs";
- v1358 = 0;
- v1359 = 1;
+ v1358 = 0UL;
+ v1359 = 1UL;
v1360 = ((u(*)())v1355)(v1356, v1357, v1358, v1359);
vd = v1360;
- if (!*(u*)(vd + 72)) goto b605;
- if (!*(u*)(*(u*)(vd + 88) + 16)) goto b609;
- v1362 = 0;
+ if (!*(u*)(vd + 72UL)) goto b605;
+ if (!*(u*)(*(u*)(vd + 88UL) + 16UL)) goto b609;
+ v1362 = 0UL;
b610: if (!v1362) goto b605;
- v1361 = 1;
-b607: if (!v1361) goto b601;
+ v1361 = 1UL;
+b607: if (!v1361) goto b603;
v1363 = (u)zfixup_label;
- v1364 = *(u*)(vc + 48);
- v1365 = *(u*)(vd + 88);
+ v1364 = *(u*)(vc + 48UL);
+ v1365 = *(u*)(vd + 88UL);
v1366 = ((u(*)())v1363)(v1364, v1365);
+ v1366;
v1367 = (u)zadd_symbol;
- v1368 = *(u*)(vc + 48);
- v1369 = *(u*)(vd + 32);
- v1370 = *(u*)(vd + 88);
+ v1368 = *(u*)(vc + 48UL);
+ v1369 = *(u*)(vd + 32UL);
+ v1370 = *(u*)(vd + 88UL);
v1371 = ((u(*)())v1367)(v1368, v1369, v1370);
+ v1371;
v1372 = (u)zas_modrm;
- v1373 = *(u*)(vc + 48);
- v1374 = 139;
- v1375 = 6;
- v1376 = 5;
- v1377 = 0;
- v1378 = 0;
- v1379 = 16;
+ v1373 = *(u*)(vc + 48UL);
+ v1374 = 139UL;
+ v1375 = 6UL;
+ v1376 = 5UL;
+ v1377 = 0UL;
+ v1378 = 0UL;
+ v1379 = 16UL;
v1380 = ((u(*)())v1372)(v1373, v1374, v1375, v1376, v1377, v1378, v1379);
+ v1380;
v1381 = (u)zas_emit;
- v1382 = *(u*)(vc + 48);
- v1383 = 101;
+ v1382 = *(u*)(vc + 48UL);
+ v1383 = 101UL;
v1384 = ((u(*)())v1381)(v1382, v1383);
+ v1384;
v1385 = (u)zas_modrm;
- v1386 = *(u*)(vc + 48);
- v1387 = 139;
- v1388 = 0;
- v1389 = 6;
- v1390 = 0;
- v1391 = 0;
- v1392 = 0;
+ v1386 = *(u*)(vc + 48UL);
+ v1387 = 139UL;
+ v1388 = 0UL;
+ v1389 = 6UL;
+ v1390 = 0UL;
+ v1391 = 0UL;
+ v1392 = 0UL;
v1393 = ((u(*)())v1385)(v1386, v1387, v1388, v1389, v1390, v1391, v1392);
+ v1393;
v1394 = (u)zas_op;
- v1395 = *(u*)(vc + 48);
- v1396 = 195;
+ v1395 = *(u*)(vc + 48UL);
+ v1396 = 195UL;
v1397 = ((u(*)())v1394)(v1395, v1396);
+ v1397;
b601: v1398 = (u)zfind;
v1399 = vc;
v1400 = (u)"_r32";
- v1401 = 0;
- v1402 = 1;
+ v1401 = 0UL;
+ v1402 = 1UL;
v1403 = ((u(*)())v1398)(v1399, v1400, v1401, v1402);
vd = v1403;
- if (!*(u*)(vd + 72)) goto b622;
- if (!*(u*)(*(u*)(vd + 88) + 16)) goto b626;
- v1405 = 0;
+ if (!*(u*)(vd + 72UL)) goto b622;
+ if (!*(u*)(*(u*)(vd + 88UL) + 16UL)) goto b626;
+ v1405 = 0UL;
b627: if (!v1405) goto b622;
- v1404 = 1;
-b624: if (!v1404) goto b618;
+ v1404 = 1UL;
+b624: if (!v1404) goto b620;
v1406 = (u)zfixup_label;
- v1407 = *(u*)(vc + 48);
- v1408 = *(u*)(vd + 88);
+ v1407 = *(u*)(vc + 48UL);
+ v1408 = *(u*)(vd + 88UL);
v1409 = ((u(*)())v1406)(v1407, v1408);
+ v1409;
v1410 = (u)zadd_symbol;
- v1411 = *(u*)(vc + 48);
- v1412 = *(u*)(vd + 32);
- v1413 = *(u*)(vd + 88);
+ v1411 = *(u*)(vc + 48UL);
+ v1412 = *(u*)(vd + 32UL);
+ v1413 = *(u*)(vd + 88UL);
v1414 = ((u(*)())v1410)(v1411, v1412, v1413);
- *(u*)(*(u*)(vc + 48) + 48) = 1;
+ v1414;
+ *(u*)(*(u*)(vc + 48UL) + 48UL) = 1UL;
v1415 = (u)zas_modrm;
- v1416 = *(u*)(vc + 48);
- v1417 = 139;
- v1418 = 0;
- v1419 = 7;
- v1420 = 0;
- v1421 = 0;
- v1422 = 0;
+ v1416 = *(u*)(vc + 48UL);
+ v1417 = 139UL;
+ v1418 = 0UL;
+ v1419 = 7UL;
+ v1420 = 0UL;
+ v1421 = 0UL;
+ v1422 = 0UL;
v1423 = ((u(*)())v1415)(v1416, v1417, v1418, v1419, v1420, v1421, v1422);
- *(u*)(*(u*)(vc + 48) + 48) = 0;
+ v1423;
+ *(u*)(*(u*)(vc + 48UL) + 48UL) = 0UL;
v1424 = (u)zas_op;
- v1425 = *(u*)(vc + 48);
- v1426 = 195;
+ v1425 = *(u*)(vc + 48UL);
+ v1426 = 195UL;
v1427 = ((u(*)())v1424)(v1425, v1426);
+ v1427;
b618: v1428 = (u)zfind;
v1429 = vc;
v1430 = (u)"_w32";
- v1431 = 0;
- v1432 = 1;
+ v1431 = 0UL;
+ v1432 = 1UL;
v1433 = ((u(*)())v1428)(v1429, v1430, v1431, v1432);
vd = v1433;
- if (!*(u*)(vd + 72)) goto b637;
- if (!*(u*)(*(u*)(vd + 88) + 16)) goto b641;
- v1435 = 0;
+ if (!*(u*)(vd + 72UL)) goto b637;
+ if (!*(u*)(*(u*)(vd + 88UL) + 16UL)) goto b641;
+ v1435 = 0UL;
b642: if (!v1435) goto b637;
- v1434 = 1;
-b639: if (!v1434) goto b633;
+ v1434 = 1UL;
+b639: if (!v1434) goto b635;
v1436 = (u)zfixup_label;
- v1437 = *(u*)(vc + 48);
- v1438 = *(u*)(vd + 88);
+ v1437 = *(u*)(vc + 48UL);
+ v1438 = *(u*)(vd + 88UL);
v1439 = ((u(*)())v1436)(v1437, v1438);
+ v1439;
v1440 = (u)zadd_symbol;
- v1441 = *(u*)(vc + 48);
- v1442 = *(u*)(vd + 32);
- v1443 = *(u*)(vd + 88);
+ v1441 = *(u*)(vc + 48UL);
+ v1442 = *(u*)(vd + 32UL);
+ v1443 = *(u*)(vd + 88UL);
v1444 = ((u(*)())v1440)(v1441, v1442, v1443);
- *(u*)(*(u*)(vc + 48) + 48) = 1;
+ v1444;
+ *(u*)(*(u*)(vc + 48UL) + 48UL) = 1UL;
v1445 = (u)zas_modrm;
- v1446 = *(u*)(vc + 48);
- v1447 = 137;
- v1448 = 6;
- v1449 = 7;
- v1450 = 0;
- v1451 = 0;
- v1452 = 0;
+ v1446 = *(u*)(vc + 48UL);
+ v1447 = 137UL;
+ v1448 = 6UL;
+ v1449 = 7UL;
+ v1450 = 0UL;
+ v1451 = 0UL;
+ v1452 = 0UL;
v1453 = ((u(*)())v1445)(v1446, v1447, v1448, v1449, v1450, v1451, v1452);
- *(u*)(*(u*)(vc + 48) + 48) = 0;
+ v1453;
+ *(u*)(*(u*)(vc + 48UL) + 48UL) = 0UL;
v1454 = (u)zas_op;
- v1455 = *(u*)(vc + 48);
- v1456 = 195;
+ v1455 = *(u*)(vc + 48UL);
+ v1456 = 195UL;
v1457 = ((u(*)())v1454)(v1455, v1456);
+ v1457;
b633: v1458 = (u)zfind;
v1459 = vc;
v1460 = (u)"_r16";
- v1461 = 0;
- v1462 = 1;
+ v1461 = 0UL;
+ v1462 = 1UL;
v1463 = ((u(*)())v1458)(v1459, v1460, v1461, v1462);
vd = v1463;
- if (!*(u*)(vd + 72)) goto b652;
- if (!*(u*)(*(u*)(vd + 88) + 16)) goto b656;
- v1465 = 0;
+ if (!*(u*)(vd + 72UL)) goto b652;
+ if (!*(u*)(*(u*)(vd + 88UL) + 16UL)) goto b656;
+ v1465 = 0UL;
b657: if (!v1465) goto b652;
- v1464 = 1;
-b654: if (!v1464) goto b648;
+ v1464 = 1UL;
+b654: if (!v1464) goto b650;
v1466 = (u)zfixup_label;
- v1467 = *(u*)(vc + 48);
- v1468 = *(u*)(vd + 88);
+ v1467 = *(u*)(vc + 48UL);
+ v1468 = *(u*)(vd + 88UL);
v1469 = ((u(*)())v1466)(v1467, v1468);
+ v1469;
v1470 = (u)zadd_symbol;
- v1471 = *(u*)(vc + 48);
- v1472 = *(u*)(vd + 32);
- v1473 = *(u*)(vd + 88);
+ v1471 = *(u*)(vc + 48UL);
+ v1472 = *(u*)(vd + 32UL);
+ v1473 = *(u*)(vd + 88UL);
v1474 = ((u(*)())v1470)(v1471, v1472, v1473);
+ v1474;
v1475 = (u)zas_modrr;
- v1476 = *(u*)(vc + 48);
- v1477 = 51;
- v1478 = 0;
- v1479 = 0;
+ v1476 = *(u*)(vc + 48UL);
+ v1477 = 51UL;
+ v1478 = 0UL;
+ v1479 = 0UL;
v1480 = ((u(*)())v1475)(v1476, v1477, v1478, v1479);
- *(u*)(*(u*)(vc + 48) + 48) = 1;
+ v1480;
+ *(u*)(*(u*)(vc + 48UL) + 48UL) = 1UL;
v1481 = (u)zas_modrm;
- v1482 = *(u*)(vc + 48);
- v1483 = 26250;
- v1484 = 0;
- v1485 = 7;
- v1486 = 0;
- v1487 = 0;
- v1488 = 0;
+ v1482 = *(u*)(vc + 48UL);
+ v1483 = 26250UL;
+ v1484 = 0UL;
+ v1485 = 7UL;
+ v1486 = 0UL;
+ v1487 = 0UL;
+ v1488 = 0UL;
v1489 = ((u(*)())v1481)(v1482, v1483, v1484, v1485, v1486, v1487, v1488);
- *(u*)(*(u*)(vc + 48) + 48) = 0;
+ v1489;
+ *(u*)(*(u*)(vc + 48UL) + 48UL) = 0UL;
v1490 = (u)zas_op;
- v1491 = *(u*)(vc + 48);
- v1492 = 195;
+ v1491 = *(u*)(vc + 48UL);
+ v1492 = 195UL;
v1493 = ((u(*)())v1490)(v1491, v1492);
+ v1493;
b648: v1494 = (u)zfind;
v1495 = vc;
v1496 = (u)"_w16";
- v1497 = 0;
- v1498 = 1;
+ v1497 = 0UL;
+ v1498 = 1UL;
v1499 = ((u(*)())v1494)(v1495, v1496, v1497, v1498);
vd = v1499;
- if (!*(u*)(vd + 72)) goto b668;
- if (!*(u*)(*(u*)(vd + 88) + 16)) goto b672;
- v1501 = 0;
+ if (!*(u*)(vd + 72UL)) goto b668;
+ if (!*(u*)(*(u*)(vd + 88UL) + 16UL)) goto b672;
+ v1501 = 0UL;
b673: if (!v1501) goto b668;
- v1500 = 1;
-b670: if (!v1500) goto b664;
+ v1500 = 1UL;
+b670: if (!v1500) goto b666;
v1502 = (u)zfixup_label;
- v1503 = *(u*)(vc + 48);
- v1504 = *(u*)(vd + 88);
+ v1503 = *(u*)(vc + 48UL);
+ v1504 = *(u*)(vd + 88UL);
v1505 = ((u(*)())v1502)(v1503, v1504);
+ v1505;
v1506 = (u)zadd_symbol;
- v1507 = *(u*)(vc + 48);
- v1508 = *(u*)(vd + 32);
- v1509 = *(u*)(vd + 88);
+ v1507 = *(u*)(vc + 48UL);
+ v1508 = *(u*)(vd + 32UL);
+ v1509 = *(u*)(vd + 88UL);
v1510 = ((u(*)())v1506)(v1507, v1508, v1509);
- *(u*)(*(u*)(vc + 48) + 48) = 1;
+ v1510;
+ *(u*)(*(u*)(vc + 48UL) + 48UL) = 1UL;
v1511 = (u)zas_modrm;
- v1512 = *(u*)(vc + 48);
- v1513 = 26249;
- v1514 = 6;
- v1515 = 7;
- v1516 = 0;
- v1517 = 0;
- v1518 = 0;
+ v1512 = *(u*)(vc + 48UL);
+ v1513 = 26249UL;
+ v1514 = 6UL;
+ v1515 = 7UL;
+ v1516 = 0UL;
+ v1517 = 0UL;
+ v1518 = 0UL;
v1519 = ((u(*)())v1511)(v1512, v1513, v1514, v1515, v1516, v1517, v1518);
- *(u*)(*(u*)(vc + 48) + 48) = 0;
+ v1519;
+ *(u*)(*(u*)(vc + 48UL) + 48UL) = 0UL;
v1520 = (u)zas_op;
- v1521 = *(u*)(vc + 48);
- v1522 = 195;
+ v1521 = *(u*)(vc + 48UL);
+ v1522 = 195UL;
v1523 = ((u(*)())v1520)(v1521, v1522);
+ v1523;
b664: v1524 = (u)zfind;
v1525 = vc;
v1526 = (u)"_rdrand";
- v1527 = 0;
- v1528 = 1;
+ v1527 = 0UL;
+ v1528 = 1UL;
v1529 = ((u(*)())v1524)(v1525, v1526, v1527, v1528);
vd = v1529;
- if (!*(u*)(vd + 72)) goto b683;
- if (!*(u*)(*(u*)(vd + 88) + 16)) goto b687;
- v1531 = 0;
+ if (!*(u*)(vd + 72UL)) goto b683;
+ if (!*(u*)(*(u*)(vd + 88UL) + 16UL)) goto b687;
+ v1531 = 0UL;
b688: if (!v1531) goto b683;
- v1530 = 1;
-b685: if (!v1530) goto b679;
+ v1530 = 1UL;
+b685: if (!v1530) goto b681;
v1532 = (u)zfixup_label;
- v1533 = *(u*)(vc + 48);
- v1534 = *(u*)(vd + 88);
+ v1533 = *(u*)(vc + 48UL);
+ v1534 = *(u*)(vd + 88UL);
v1535 = ((u(*)())v1532)(v1533, v1534);
+ v1535;
v1536 = (u)zadd_symbol;
- v1537 = *(u*)(vc + 48);
- v1538 = *(u*)(vd + 32);
- v1539 = *(u*)(vd + 88);
+ v1537 = *(u*)(vc + 48UL);
+ v1538 = *(u*)(vd + 32UL);
+ v1539 = *(u*)(vd + 88UL);
v1540 = ((u(*)())v1536)(v1537, v1538, v1539);
+ v1540;
v1541 = (u)zas_modr;
- v1542 = *(u*)(vc + 48);
+ v1542 = *(u*)(vc + 48UL);
v1543 = 397255UL;
- v1544 = 0;
+ v1544 = 0UL;
v1545 = ((u(*)())v1541)(v1542, v1543, v1544);
+ v1545;
v1546 = (u)zas_op;
- v1547 = *(u*)(vc + 48);
- v1548 = 195;
+ v1547 = *(u*)(vc + 48UL);
+ v1548 = 195UL;
v1549 = ((u(*)())v1546)(v1547, v1548);
+ v1549;
b679: v1550 = (u)zfind;
v1551 = vc;
v1552 = (u)"taskswitch";
- v1553 = 0;
- v1554 = 1;
+ v1553 = 0UL;
+ v1554 = 1UL;
v1555 = ((u(*)())v1550)(v1551, v1552, v1553, v1554);
vd = v1555;
- if (!*(u*)(vd + 72)) goto b698;
- if (!*(u*)(*(u*)(vd + 88) + 16)) goto b702;
- v1557 = 0;
+ if (!*(u*)(vd + 72UL)) goto b698;
+ if (!*(u*)(*(u*)(vd + 88UL) + 16UL)) goto b702;
+ v1557 = 0UL;
b703: if (!v1557) goto b698;
- v1556 = 1;
-b700: if (!v1556) goto b694;
+ v1556 = 1UL;
+b700: if (!v1556) goto b696;
v1558 = (u)zfixup_label;
- v1559 = *(u*)(vc + 48);
- v1560 = *(u*)(vd + 88);
+ v1559 = *(u*)(vc + 48UL);
+ v1560 = *(u*)(vd + 88UL);
v1561 = ((u(*)())v1558)(v1559, v1560);
+ v1561;
v1562 = (u)zadd_symbol;
- v1563 = *(u*)(vc + 48);
- v1564 = *(u*)(vd + 32);
- v1565 = *(u*)(vd + 88);
+ v1563 = *(u*)(vc + 48UL);
+ v1564 = *(u*)(vd + 32UL);
+ v1565 = *(u*)(vd + 88UL);
v1566 = ((u(*)())v1562)(v1563, v1564, v1565);
+ v1566;
v1567 = (u)zas_modrm;
- v1568 = *(u*)(vc + 48);
- v1569 = 137;
- v1570 = 0;
- v1571 = 7;
- v1572 = 0;
- v1573 = 0;
- v1574 = 0;
+ v1568 = *(u*)(vc + 48UL);
+ v1569 = 137UL;
+ v1570 = 0UL;
+ v1571 = 7UL;
+ v1572 = 0UL;
+ v1573 = 0UL;
+ v1574 = 0UL;
v1575 = ((u(*)())v1567)(v1568, v1569, v1570, v1571, v1572, v1573, v1574);
+ v1575;
v1576 = (u)zas_modrm;
- v1577 = *(u*)(vc + 48);
- v1578 = 137;
- v1579 = 1;
- v1580 = 7;
- v1581 = 0;
- v1582 = 0;
- v1583 = 8;
+ v1577 = *(u*)(vc + 48UL);
+ v1578 = 137UL;
+ v1579 = 1UL;
+ v1580 = 7UL;
+ v1581 = 0UL;
+ v1582 = 0UL;
+ v1583 = 8UL;
v1584 = ((u(*)())v1576)(v1577, v1578, v1579, v1580, v1581, v1582, v1583);
+ v1584;
v1585 = (u)zas_modrm;
- v1586 = *(u*)(vc + 48);
- v1587 = 137;
- v1588 = 2;
- v1589 = 7;
- v1590 = 0;
- v1591 = 0;
- v1592 = 16;
+ v1586 = *(u*)(vc + 48UL);
+ v1587 = 137UL;
+ v1588 = 2UL;
+ v1589 = 7UL;
+ v1590 = 0UL;
+ v1591 = 0UL;
+ v1592 = 16UL;
v1593 = ((u(*)())v1585)(v1586, v1587, v1588, v1589, v1590, v1591, v1592);
+ v1593;
v1594 = (u)zas_modrm;
- v1595 = *(u*)(vc + 48);
- v1596 = 137;
- v1597 = 3;
- v1598 = 7;
- v1599 = 0;
- v1600 = 0;
- v1601 = 24;
+ v1595 = *(u*)(vc + 48UL);
+ v1596 = 137UL;
+ v1597 = 3UL;
+ v1598 = 7UL;
+ v1599 = 0UL;
+ v1600 = 0UL;
+ v1601 = 24UL;
v1602 = ((u(*)())v1594)(v1595, v1596, v1597, v1598, v1599, v1600, v1601);
+ v1602;
v1603 = (u)zas_modrm;
- v1604 = *(u*)(vc + 48);
- v1605 = 137;
- v1606 = 5;
- v1607 = 7;
- v1608 = 0;
- v1609 = 0;
- v1610 = 40;
+ v1604 = *(u*)(vc + 48UL);
+ v1605 = 137UL;
+ v1606 = 5UL;
+ v1607 = 7UL;
+ v1608 = 0UL;
+ v1609 = 0UL;
+ v1610 = 40UL;
v1611 = ((u(*)())v1603)(v1604, v1605, v1606, v1607, v1608, v1609, v1610);
+ v1611;
v1612 = (u)zas_modrm;
- v1613 = *(u*)(vc + 48);
- v1614 = 137;
- v1615 = 6;
- v1616 = 7;
- v1617 = 0;
- v1618 = 0;
- v1619 = 48;
+ v1613 = *(u*)(vc + 48UL);
+ v1614 = 137UL;
+ v1615 = 6UL;
+ v1616 = 7UL;
+ v1617 = 0UL;
+ v1618 = 0UL;
+ v1619 = 48UL;
v1620 = ((u(*)())v1612)(v1613, v1614, v1615, v1616, v1617, v1618, v1619);
+ v1620;
v1621 = (u)zas_modrm;
- v1622 = *(u*)(vc + 48);
- v1623 = 137;
- v1624 = 7;
- v1625 = 7;
- v1626 = 0;
- v1627 = 0;
- v1628 = 56;
+ v1622 = *(u*)(vc + 48UL);
+ v1623 = 137UL;
+ v1624 = 7UL;
+ v1625 = 7UL;
+ v1626 = 0UL;
+ v1627 = 0UL;
+ v1628 = 56UL;
v1629 = ((u(*)())v1621)(v1622, v1623, v1624, v1625, v1626, v1627, v1628);
+ v1629;
v1630 = (u)zas_modrm;
- v1631 = *(u*)(vc + 48);
- v1632 = 137;
- v1633 = 8;
- v1634 = 7;
- v1635 = 0;
- v1636 = 0;
- v1637 = 64;
+ v1631 = *(u*)(vc + 48UL);
+ v1632 = 137UL;
+ v1633 = 8UL;
+ v1634 = 7UL;
+ v1635 = 0UL;
+ v1636 = 0UL;
+ v1637 = 64UL;
v1638 = ((u(*)())v1630)(v1631, v1632, v1633, v1634, v1635, v1636, v1637);
+ v1638;
v1639 = (u)zas_modrm;
- v1640 = *(u*)(vc + 48);
- v1641 = 137;
- v1642 = 9;
- v1643 = 7;
- v1644 = 0;
- v1645 = 0;
- v1646 = 72;
+ v1640 = *(u*)(vc + 48UL);
+ v1641 = 137UL;
+ v1642 = 9UL;
+ v1643 = 7UL;
+ v1644 = 0UL;
+ v1645 = 0UL;
+ v1646 = 72UL;
v1647 = ((u(*)())v1639)(v1640, v1641, v1642, v1643, v1644, v1645, v1646);
+ v1647;
v1648 = (u)zas_modrm;
- v1649 = *(u*)(vc + 48);
- v1650 = 137;
- v1651 = 10;
- v1652 = 7;
- v1653 = 0;
- v1654 = 0;
- v1655 = 80;
+ v1649 = *(u*)(vc + 48UL);
+ v1650 = 137UL;
+ v1651 = 10UL;
+ v1652 = 7UL;
+ v1653 = 0UL;
+ v1654 = 0UL;
+ v1655 = 80UL;
v1656 = ((u(*)())v1648)(v1649, v1650, v1651, v1652, v1653, v1654, v1655);
+ v1656;
v1657 = (u)zas_modrm;
- v1658 = *(u*)(vc + 48);
- v1659 = 137;
- v1660 = 11;
- v1661 = 7;
- v1662 = 0;
- v1663 = 0;
- v1664 = 88;
+ v1658 = *(u*)(vc + 48UL);
+ v1659 = 137UL;
+ v1660 = 11UL;
+ v1661 = 7UL;
+ v1662 = 0UL;
+ v1663 = 0UL;
+ v1664 = 88UL;
v1665 = ((u(*)())v1657)(v1658, v1659, v1660, v1661, v1662, v1663, v1664);
+ v1665;
v1666 = (u)zas_modrm;
- v1667 = *(u*)(vc + 48);
- v1668 = 137;
- v1669 = 12;
- v1670 = 7;
- v1671 = 0;
- v1672 = 0;
- v1673 = 96;
+ v1667 = *(u*)(vc + 48UL);
+ v1668 = 137UL;
+ v1669 = 12UL;
+ v1670 = 7UL;
+ v1671 = 0UL;
+ v1672 = 0UL;
+ v1673 = 96UL;
v1674 = ((u(*)())v1666)(v1667, v1668, v1669, v1670, v1671, v1672, v1673);
+ v1674;
v1675 = (u)zas_modrm;
- v1676 = *(u*)(vc + 48);
- v1677 = 137;
- v1678 = 13;
- v1679 = 7;
- v1680 = 0;
- v1681 = 0;
- v1682 = 104;
+ v1676 = *(u*)(vc + 48UL);
+ v1677 = 137UL;
+ v1678 = 13UL;
+ v1679 = 7UL;
+ v1680 = 0UL;
+ v1681 = 0UL;
+ v1682 = 104UL;
v1683 = ((u(*)())v1675)(v1676, v1677, v1678, v1679, v1680, v1681, v1682);
+ v1683;
v1684 = (u)zas_modrm;
- v1685 = *(u*)(vc + 48);
- v1686 = 137;
- v1687 = 14;
- v1688 = 7;
- v1689 = 0;
- v1690 = 0;
- v1691 = 112;
+ v1685 = *(u*)(vc + 48UL);
+ v1686 = 137UL;
+ v1687 = 14UL;
+ v1688 = 7UL;
+ v1689 = 0UL;
+ v1690 = 0UL;
+ v1691 = 112UL;
v1692 = ((u(*)())v1684)(v1685, v1686, v1687, v1688, v1689, v1690, v1691);
+ v1692;
v1693 = (u)zas_modrm;
- v1694 = *(u*)(vc + 48);
- v1695 = 137;
- v1696 = 15;
- v1697 = 7;
- v1698 = 0;
- v1699 = 0;
- v1700 = 120;
+ v1694 = *(u*)(vc + 48UL);
+ v1695 = 137UL;
+ v1696 = 15UL;
+ v1697 = 7UL;
+ v1698 = 0UL;
+ v1699 = 0UL;
+ v1700 = 120UL;
v1701 = ((u(*)())v1693)(v1694, v1695, v1696, v1697, v1698, v1699, v1700);
+ v1701;
v1702 = (u)zas_opr;
- v1703 = *(u*)(vc + 48);
- v1704 = 88;
- v1705 = 0;
+ v1703 = *(u*)(vc + 48UL);
+ v1704 = 88UL;
+ v1705 = 0UL;
v1706 = ((u(*)())v1702)(v1703, v1704, v1705);
+ v1706;
v1707 = (u)zas_modrm;
- v1708 = *(u*)(vc + 48);
- v1709 = 137;
- v1710 = 0;
- v1711 = 7;
- v1712 = 0;
- v1713 = 0;
- v1714 = 128;
+ v1708 = *(u*)(vc + 48UL);
+ v1709 = 137UL;
+ v1710 = 0UL;
+ v1711 = 7UL;
+ v1712 = 0UL;
+ v1713 = 0UL;
+ v1714 = 128UL;
v1715 = ((u(*)())v1707)(v1708, v1709, v1710, v1711, v1712, v1713, v1714);
+ v1715;
v1716 = (u)zas_modrr;
- v1717 = *(u*)(vc + 48);
- v1718 = 140;
- v1719 = 1;
- v1720 = 0;
+ v1717 = *(u*)(vc + 48UL);
+ v1718 = 140UL;
+ v1719 = 1UL;
+ v1720 = 0UL;
v1721 = ((u(*)())v1716)(v1717, v1718, v1719, v1720);
+ v1721;
v1722 = (u)zas_modrm;
- v1723 = *(u*)(vc + 48);
- v1724 = 137;
- v1725 = 0;
- v1726 = 7;
- v1727 = 0;
- v1728 = 0;
- v1729 = 144;
+ v1723 = *(u*)(vc + 48UL);
+ v1724 = 137UL;
+ v1725 = 0UL;
+ v1726 = 7UL;
+ v1727 = 0UL;
+ v1728 = 0UL;
+ v1729 = 144UL;
v1730 = ((u(*)())v1722)(v1723, v1724, v1725, v1726, v1727, v1728, v1729);
+ v1730;
v1731 = (u)zas_op;
- v1732 = *(u*)(vc + 48);
- v1733 = 156;
+ v1732 = *(u*)(vc + 48UL);
+ v1733 = 156UL;
v1734 = ((u(*)())v1731)(v1732, v1733);
+ v1734;
v1735 = (u)zas_opr;
- v1736 = *(u*)(vc + 48);
- v1737 = 88;
- v1738 = 0;
+ v1736 = *(u*)(vc + 48UL);
+ v1737 = 88UL;
+ v1738 = 0UL;
v1739 = ((u(*)())v1735)(v1736, v1737, v1738);
+ v1739;
v1740 = (u)zas_modrm;
- v1741 = *(u*)(vc + 48);
- v1742 = 137;
- v1743 = 0;
- v1744 = 7;
- v1745 = 0;
- v1746 = 0;
- v1747 = 136;
+ v1741 = *(u*)(vc + 48UL);
+ v1742 = 137UL;
+ v1743 = 0UL;
+ v1744 = 7UL;
+ v1745 = 0UL;
+ v1746 = 0UL;
+ v1747 = 136UL;
v1748 = ((u(*)())v1740)(v1741, v1742, v1743, v1744, v1745, v1746, v1747);
+ v1748;
v1749 = (u)zas_modrm;
- v1750 = *(u*)(vc + 48);
- v1751 = 137;
- v1752 = 4;
- v1753 = 7;
- v1754 = 0;
- v1755 = 0;
- v1756 = 32;
+ v1750 = *(u*)(vc + 48UL);
+ v1751 = 137UL;
+ v1752 = 4UL;
+ v1753 = 7UL;
+ v1754 = 0UL;
+ v1755 = 0UL;
+ v1756 = 32UL;
v1757 = ((u(*)())v1749)(v1750, v1751, v1752, v1753, v1754, v1755, v1756);
+ v1757;
v1758 = (u)zas_modrr;
- v1759 = *(u*)(vc + 48);
- v1760 = 140;
- v1761 = 2;
- v1762 = 0;
+ v1759 = *(u*)(vc + 48UL);
+ v1760 = 140UL;
+ v1761 = 2UL;
+ v1762 = 0UL;
v1763 = ((u(*)())v1758)(v1759, v1760, v1761, v1762);
+ v1763;
v1764 = (u)zas_modrm;
- v1765 = *(u*)(vc + 48);
- v1766 = 137;
- v1767 = 0;
- v1768 = 7;
- v1769 = 0;
- v1770 = 0;
- v1771 = 152;
+ v1765 = *(u*)(vc + 48UL);
+ v1766 = 137UL;
+ v1767 = 0UL;
+ v1768 = 7UL;
+ v1769 = 0UL;
+ v1770 = 0UL;
+ v1771 = 152UL;
v1772 = ((u(*)())v1764)(v1765, v1766, v1767, v1768, v1769, v1770, v1771);
+ v1772;
v1773 = (u)zas_modrm;
- v1774 = *(u*)(vc + 48);
- v1775 = 137;
- v1776 = 1;
- v1777 = 7;
- v1778 = 0;
- v1779 = 0;
- v1780 = 8;
+ v1774 = *(u*)(vc + 48UL);
+ v1775 = 137UL;
+ v1776 = 1UL;
+ v1777 = 7UL;
+ v1778 = 0UL;
+ v1779 = 0UL;
+ v1780 = 8UL;
v1781 = ((u(*)())v1773)(v1774, v1775, v1776, v1777, v1778, v1779, v1780);
+ v1781;
v1782 = (u)zas_modrm;
- v1783 = *(u*)(vc + 48);
- v1784 = 137;
- v1785 = 2;
- v1786 = 7;
- v1787 = 0;
- v1788 = 0;
- v1789 = 16;
+ v1783 = *(u*)(vc + 48UL);
+ v1784 = 137UL;
+ v1785 = 2UL;
+ v1786 = 7UL;
+ v1787 = 0UL;
+ v1788 = 0UL;
+ v1789 = 16UL;
v1790 = ((u(*)())v1782)(v1783, v1784, v1785, v1786, v1787, v1788, v1789);
+ v1790;
v1791 = (u)zas_modrm;
- v1792 = *(u*)(vc + 48);
- v1793 = 137;
- v1794 = 3;
- v1795 = 7;
- v1796 = 0;
- v1797 = 0;
- v1798 = 24;
+ v1792 = *(u*)(vc + 48UL);
+ v1793 = 137UL;
+ v1794 = 3UL;
+ v1795 = 7UL;
+ v1796 = 0UL;
+ v1797 = 0UL;
+ v1798 = 24UL;
v1799 = ((u(*)())v1791)(v1792, v1793, v1794, v1795, v1796, v1797, v1798);
+ v1799;
v1800 = (u)zas_modrm;
- v1801 = *(u*)(vc + 48);
- v1802 = 137;
- v1803 = 5;
- v1804 = 7;
- v1805 = 0;
- v1806 = 0;
- v1807 = 40;
+ v1801 = *(u*)(vc + 48UL);
+ v1802 = 137UL;
+ v1803 = 5UL;
+ v1804 = 7UL;
+ v1805 = 0UL;
+ v1806 = 0UL;
+ v1807 = 40UL;
v1808 = ((u(*)())v1800)(v1801, v1802, v1803, v1804, v1805, v1806, v1807);
+ v1808;
v1809 = (u)zas_modrm;
- v1810 = *(u*)(vc + 48);
- v1811 = 137;
- v1812 = 7;
- v1813 = 7;
- v1814 = 0;
- v1815 = 0;
- v1816 = 56;
+ v1810 = *(u*)(vc + 48UL);
+ v1811 = 137UL;
+ v1812 = 7UL;
+ v1813 = 7UL;
+ v1814 = 0UL;
+ v1815 = 0UL;
+ v1816 = 56UL;
v1817 = ((u(*)())v1809)(v1810, v1811, v1812, v1813, v1814, v1815, v1816);
+ v1817;
v1818 = (u)zas_modrm;
- v1819 = *(u*)(vc + 48);
- v1820 = 137;
- v1821 = 8;
- v1822 = 7;
- v1823 = 0;
- v1824 = 0;
- v1825 = 64;
+ v1819 = *(u*)(vc + 48UL);
+ v1820 = 137UL;
+ v1821 = 8UL;
+ v1822 = 7UL;
+ v1823 = 0UL;
+ v1824 = 0UL;
+ v1825 = 64UL;
v1826 = ((u(*)())v1818)(v1819, v1820, v1821, v1822, v1823, v1824, v1825);
+ v1826;
v1827 = (u)zas_modrm;
- v1828 = *(u*)(vc + 48);
- v1829 = 137;
- v1830 = 9;
- v1831 = 7;
- v1832 = 0;
- v1833 = 0;
- v1834 = 72;
+ v1828 = *(u*)(vc + 48UL);
+ v1829 = 137UL;
+ v1830 = 9UL;
+ v1831 = 7UL;
+ v1832 = 0UL;
+ v1833 = 0UL;
+ v1834 = 72UL;
v1835 = ((u(*)())v1827)(v1828, v1829, v1830, v1831, v1832, v1833, v1834);
+ v1835;
v1836 = (u)zas_modrm;
- v1837 = *(u*)(vc + 48);
- v1838 = 137;
- v1839 = 10;
- v1840 = 7;
- v1841 = 0;
- v1842 = 0;
- v1843 = 80;
+ v1837 = *(u*)(vc + 48UL);
+ v1838 = 137UL;
+ v1839 = 10UL;
+ v1840 = 7UL;
+ v1841 = 0UL;
+ v1842 = 0UL;
+ v1843 = 80UL;
v1844 = ((u(*)())v1836)(v1837, v1838, v1839, v1840, v1841, v1842, v1843);
+ v1844;
v1845 = (u)zas_modrm;
- v1846 = *(u*)(vc + 48);
- v1847 = 137;
- v1848 = 11;
- v1849 = 7;
- v1850 = 0;
- v1851 = 0;
- v1852 = 88;
+ v1846 = *(u*)(vc + 48UL);
+ v1847 = 137UL;
+ v1848 = 11UL;
+ v1849 = 7UL;
+ v1850 = 0UL;
+ v1851 = 0UL;
+ v1852 = 88UL;
v1853 = ((u(*)())v1845)(v1846, v1847, v1848, v1849, v1850, v1851, v1852);
+ v1853;
v1854 = (u)zas_modrm;
- v1855 = *(u*)(vc + 48);
- v1856 = 137;
- v1857 = 12;
- v1858 = 7;
- v1859 = 0;
- v1860 = 0;
- v1861 = 96;
+ v1855 = *(u*)(vc + 48UL);
+ v1856 = 137UL;
+ v1857 = 12UL;
+ v1858 = 7UL;
+ v1859 = 0UL;
+ v1860 = 0UL;
+ v1861 = 96UL;
v1862 = ((u(*)())v1854)(v1855, v1856, v1857, v1858, v1859, v1860, v1861);
+ v1862;
v1863 = (u)zas_modrm;
- v1864 = *(u*)(vc + 48);
- v1865 = 137;
- v1866 = 13;
- v1867 = 7;
- v1868 = 0;
- v1869 = 0;
- v1870 = 104;
+ v1864 = *(u*)(vc + 48UL);
+ v1865 = 137UL;
+ v1866 = 13UL;
+ v1867 = 7UL;
+ v1868 = 0UL;
+ v1869 = 0UL;
+ v1870 = 104UL;
v1871 = ((u(*)())v1863)(v1864, v1865, v1866, v1867, v1868, v1869, v1870);
+ v1871;
v1872 = (u)zas_modrm;
- v1873 = *(u*)(vc + 48);
- v1874 = 137;
- v1875 = 14;
- v1876 = 7;
- v1877 = 0;
- v1878 = 0;
- v1879 = 112;
+ v1873 = *(u*)(vc + 48UL);
+ v1874 = 137UL;
+ v1875 = 14UL;
+ v1876 = 7UL;
+ v1877 = 0UL;
+ v1878 = 0UL;
+ v1879 = 112UL;
v1880 = ((u(*)())v1872)(v1873, v1874, v1875, v1876, v1877, v1878, v1879);
+ v1880;
v1881 = (u)zas_modrm;
- v1882 = *(u*)(vc + 48);
- v1883 = 137;
- v1884 = 15;
- v1885 = 7;
- v1886 = 0;
- v1887 = 0;
- v1888 = 120;
+ v1882 = *(u*)(vc + 48UL);
+ v1883 = 137UL;
+ v1884 = 15UL;
+ v1885 = 7UL;
+ v1886 = 0UL;
+ v1887 = 0UL;
+ v1888 = 120UL;
v1889 = ((u(*)())v1881)(v1882, v1883, v1884, v1885, v1886, v1887, v1888);
+ v1889;
v1890 = (u)zas_modrm;
- v1891 = *(u*)(vc + 48);
- v1892 = 139;
- v1893 = 0;
- v1894 = 6;
- v1895 = 0;
- v1896 = 0;
- v1897 = 152;
+ v1891 = *(u*)(vc + 48UL);
+ v1892 = 139UL;
+ v1893 = 0UL;
+ v1894 = 6UL;
+ v1895 = 0UL;
+ v1896 = 0UL;
+ v1897 = 152UL;
v1898 = ((u(*)())v1890)(v1891, v1892, v1893, v1894, v1895, v1896, v1897);
+ v1898;
v1899 = (u)zas_opr;
- v1900 = *(u*)(vc + 48);
- v1901 = 80;
- v1902 = 0;
+ v1900 = *(u*)(vc + 48UL);
+ v1901 = 80UL;
+ v1902 = 0UL;
v1903 = ((u(*)())v1899)(v1900, v1901, v1902);
+ v1903;
v1904 = (u)zas_modrm;
- v1905 = *(u*)(vc + 48);
- v1906 = 139;
- v1907 = 0;
- v1908 = 6;
- v1909 = 0;
- v1910 = 0;
- v1911 = 32;
+ v1905 = *(u*)(vc + 48UL);
+ v1906 = 139UL;
+ v1907 = 0UL;
+ v1908 = 6UL;
+ v1909 = 0UL;
+ v1910 = 0UL;
+ v1911 = 32UL;
v1912 = ((u(*)())v1904)(v1905, v1906, v1907, v1908, v1909, v1910, v1911);
+ v1912;
v1913 = (u)zas_opr;
- v1914 = *(u*)(vc + 48);
- v1915 = 80;
- v1916 = 0;
+ v1914 = *(u*)(vc + 48UL);
+ v1915 = 80UL;
+ v1916 = 0UL;
v1917 = ((u(*)())v1913)(v1914, v1915, v1916);
+ v1917;
v1918 = (u)zas_modrm;
- v1919 = *(u*)(vc + 48);
- v1920 = 139;
- v1921 = 0;
- v1922 = 6;
- v1923 = 0;
- v1924 = 0;
- v1925 = 136;
+ v1919 = *(u*)(vc + 48UL);
+ v1920 = 139UL;
+ v1921 = 0UL;
+ v1922 = 6UL;
+ v1923 = 0UL;
+ v1924 = 0UL;
+ v1925 = 136UL;
v1926 = ((u(*)())v1918)(v1919, v1920, v1921, v1922, v1923, v1924, v1925);
+ v1926;
v1927 = (u)zas_opr;
- v1928 = *(u*)(vc + 48);
- v1929 = 80;
- v1930 = 0;
+ v1928 = *(u*)(vc + 48UL);
+ v1929 = 80UL;
+ v1930 = 0UL;
v1931 = ((u(*)())v1927)(v1928, v1929, v1930);
+ v1931;
v1932 = (u)zas_modrm;
- v1933 = *(u*)(vc + 48);
- v1934 = 139;
- v1935 = 0;
- v1936 = 6;
- v1937 = 0;
- v1938 = 0;
- v1939 = 144;
+ v1933 = *(u*)(vc + 48UL);
+ v1934 = 139UL;
+ v1935 = 0UL;
+ v1936 = 6UL;
+ v1937 = 0UL;
+ v1938 = 0UL;
+ v1939 = 144UL;
v1940 = ((u(*)())v1932)(v1933, v1934, v1935, v1936, v1937, v1938, v1939);
+ v1940;
v1941 = (u)zas_opr;
- v1942 = *(u*)(vc + 48);
- v1943 = 80;
- v1944 = 0;
+ v1942 = *(u*)(vc + 48UL);
+ v1943 = 80UL;
+ v1944 = 0UL;
v1945 = ((u(*)())v1941)(v1942, v1943, v1944);
+ v1945;
v1946 = (u)zas_modrm;
- v1947 = *(u*)(vc + 48);
- v1948 = 139;
- v1949 = 0;
- v1950 = 6;
- v1951 = 0;
- v1952 = 0;
- v1953 = 128;
+ v1947 = *(u*)(vc + 48UL);
+ v1948 = 139UL;
+ v1949 = 0UL;
+ v1950 = 6UL;
+ v1951 = 0UL;
+ v1952 = 0UL;
+ v1953 = 128UL;
v1954 = ((u(*)())v1946)(v1947, v1948, v1949, v1950, v1951, v1952, v1953);
+ v1954;
v1955 = (u)zas_opr;
- v1956 = *(u*)(vc + 48);
- v1957 = 80;
- v1958 = 0;
+ v1956 = *(u*)(vc + 48UL);
+ v1957 = 80UL;
+ v1958 = 0UL;
v1959 = ((u(*)())v1955)(v1956, v1957, v1958);
+ v1959;
v1960 = (u)zas_modrm;
- v1961 = *(u*)(vc + 48);
- v1962 = 139;
- v1963 = 0;
- v1964 = 6;
- v1965 = 0;
- v1966 = 0;
- v1967 = 0;
+ v1961 = *(u*)(vc + 48UL);
+ v1962 = 139UL;
+ v1963 = 0UL;
+ v1964 = 6UL;
+ v1965 = 0UL;
+ v1966 = 0UL;
+ v1967 = 0UL;
v1968 = ((u(*)())v1960)(v1961, v1962, v1963, v1964, v1965, v1966, v1967);
+ v1968;
v1969 = (u)zas_modrm;
- v1970 = *(u*)(vc + 48);
- v1971 = 139;
- v1972 = 6;
- v1973 = 6;
- v1974 = 0;
- v1975 = 0;
- v1976 = 40;
+ v1970 = *(u*)(vc + 48UL);
+ v1971 = 139UL;
+ v1972 = 6UL;
+ v1973 = 6UL;
+ v1974 = 0UL;
+ v1975 = 0UL;
+ v1976 = 40UL;
v1977 = ((u(*)())v1969)(v1970, v1971, v1972, v1973, v1974, v1975, v1976);
+ v1977;
v1978 = (u)zas_op;
- v1979 = *(u*)(vc + 48);
- v1980 = 18639;
+ v1979 = *(u*)(vc + 48UL);
+ v1980 = 18639UL;
v1981 = ((u(*)())v1978)(v1979, v1980);
-b694: return 0;
-b698: v1556 = 0;
+ v1981;
+b694: return 0UL;
+b696: goto b694;
+b698: v1556 = 0UL;
goto b700;
-b702: v1557 = 1;
+b702: v1557 = 1UL;
goto b703;
-b683: v1530 = 0;
+b681: goto b679;
+b683: v1530 = 0UL;
goto b685;
-b687: v1531 = 1;
+b687: v1531 = 1UL;
goto b688;
-b668: v1500 = 0;
+b666: goto b664;
+b668: v1500 = 0UL;
goto b670;
-b672: v1501 = 1;
+b672: v1501 = 1UL;
goto b673;
-b652: v1464 = 0;
+b650: goto b648;
+b652: v1464 = 0UL;
goto b654;
-b656: v1465 = 1;
+b656: v1465 = 1UL;
goto b657;
-b637: v1434 = 0;
+b635: goto b633;
+b637: v1434 = 0UL;
goto b639;
-b641: v1435 = 1;
+b641: v1435 = 1UL;
goto b642;
-b622: v1404 = 0;
+b620: goto b618;
+b622: v1404 = 0UL;
goto b624;
-b626: v1405 = 1;
+b626: v1405 = 1UL;
goto b627;
-b605: v1361 = 0;
+b603: goto b601;
+b605: v1361 = 0UL;
goto b607;
-b609: v1362 = 1;
+b609: v1362 = 1UL;
goto b610;
-b590: v1337 = 0;
+b588: goto b586;
+b590: v1337 = 0UL;
goto b592;
-b594: v1338 = 1;
+b594: v1338 = 1UL;
goto b595;
-b575: v1313 = 0;
+b573: goto b571;
+b575: v1313 = 0UL;
goto b577;
-b579: v1314 = 1;
+b579: v1314 = 1UL;
goto b580;
-b560: v1284 = 0;
+b558: goto b556;
+b560: v1284 = 0UL;
goto b562;
-b564: v1285 = 1;
+b564: v1285 = 1UL;
goto b565;
-b545: v1255 = 0;
+b543: goto b541;
+b545: v1255 = 0UL;
goto b547;
-b549: v1256 = 1;
+b549: v1256 = 1UL;
goto b550;
-b529: v1225 = 0;
+b527: goto b525;
+b529: v1225 = 0UL;
goto b531;
-b533: v1226 = 1;
+b533: v1226 = 1UL;
goto b534;
-b513: v1195 = 0;
+b511: goto b509;
+b513: v1195 = 0UL;
goto b515;
-b517: v1196 = 1;
+b517: v1196 = 1UL;
goto b518;
-b498: v1170 = 0;
+b496: goto b494;
+b498: v1170 = 0UL;
goto b500;
-b502: v1171 = 1;
+b502: v1171 = 1UL;
goto b503;
-b483: v1145 = 0;
+b481: goto b479;
+b483: v1145 = 0UL;
goto b485;
-b487: v1146 = 1;
+b487: v1146 = 1UL;
goto b488;
-b468: v1120 = 0;
+b466: goto b464;
+b468: v1120 = 0UL;
goto b470;
-b472: v1121 = 1;
+b472: v1121 = 1UL;
goto b473;
-b432: v996 = 0;
+b430: goto b428;
+b432: v996 = 0UL;
goto b434;
-b436: v997 = 1;
+b436: v997 = 1UL;
goto b437;
-b417: v970 = 0;
+b415: goto b413;
+b417: v970 = 0UL;
goto b419;
-b421: v971 = 1;
+b421: v971 = 1UL;
goto b422;
-b402: v944 = 0;
+b400: goto b398;
+b402: v944 = 0UL;
goto b404;
-b406: v945 = 1;
+b406: v945 = 1UL;
goto b407;
-b382: v879 = 0;
+b380: goto b378;
+b382: v879 = 0UL;
goto b384;
-b386: v880 = 1;
+b386: v880 = 1UL;
goto b387;
-b362: v814 = 0;
+b360: goto b358;
+b362: v814 = 0UL;
goto b364;
-b366: v815 = 1;
+b366: v815 = 1UL;
goto b367;
-b347: v787 = 0;
+b345: goto b343;
+b347: v787 = 0UL;
goto b349;
-b351: v788 = 1;
+b351: v788 = 1UL;
goto b352;
-b332: v760 = 0;
+b330: goto b328;
+b332: v760 = 0UL;
goto b334;
-b336: v761 = 1;
+b336: v761 = 1UL;
goto b337;
-b317: v733 = 0;
+b315: goto b313;
+b317: v733 = 0UL;
goto b319;
-b321: v734 = 1;
+b321: v734 = 1UL;
goto b322;
-b302: v706 = 0;
+b300: goto b298;
+b302: v706 = 0UL;
goto b304;
-b306: v707 = 1;
+b306: v707 = 1UL;
goto b307;
-b287: v679 = 0;
+b285: goto b283;
+b287: v679 = 0UL;
goto b289;
-b291: v680 = 1;
+b291: v680 = 1UL;
goto b292;
-b272: v652 = 0;
+b270: goto b268;
+b272: v652 = 0UL;
goto b274;
-b276: v653 = 1;
+b276: v653 = 1UL;
goto b277;
-b257: v625 = 0;
+b255: goto b253;
+b257: v625 = 0UL;
goto b259;
-b261: v626 = 1;
+b261: v626 = 1UL;
goto b262;
-b242: v598 = 0;
+b240: goto b238;
+b242: v598 = 0UL;
goto b244;
-b246: v599 = 1;
+b246: v599 = 1UL;
goto b247;
-b222: v544 = 0;
+b220: goto b218;
+b222: v544 = 0UL;
goto b224;
-b226: v545 = 1;
+b226: v545 = 1UL;
goto b227;
-b203: v496 = 0;
+b201: goto b199;
+b203: v496 = 0UL;
goto b205;
-b207: v497 = 1;
+b207: v497 = 1UL;
goto b208;
-b186: v459 = 0;
+b184: goto b182;
+b186: v459 = 0UL;
goto b188;
-b190: v460 = 1;
+b190: v460 = 1UL;
goto b191;
-b170: v428 = 0;
+b168: goto b166;
+b170: v428 = 0UL;
goto b172;
-b174: v429 = 1;
+b174: v429 = 1UL;
goto b175;
-b152: v387 = 0;
+b150: goto b148;
+b152: v387 = 0UL;
goto b154;
-b156: v388 = 1;
+b156: v388 = 1UL;
goto b157;
-b135: v352 = 0;
+b133: goto b131;
+b135: v352 = 0UL;
goto b137;
-b139: v353 = 1;
+b139: v353 = 1UL;
goto b140;
-b118: v315 = 0;
+b116: goto b114;
+b118: v315 = 0UL;
goto b120;
-b122: v316 = 1;
+b122: v316 = 1UL;
goto b123;
-b102: v284 = 0;
+b100: goto b98;
+b102: v284 = 0UL;
goto b104;
-b106: v285 = 1;
+b106: v285 = 1UL;
goto b107;
-b71: v147 = 0;
+b69: goto b67;
+b71: v147 = 0UL;
goto b73;
-b75: v148 = 1;
+b75: v148 = 1UL;
goto b76;
-b57: v126 = 0;
+b55: goto b53;
+b57: v126 = 0UL;
goto b59;
-b61: v127 = 1;
+b61: v127 = 1UL;
goto b62;
-b43: v105 = 0;
+b41: goto b39;
+b43: v105 = 0UL;
goto b45;
-b47: v106 = 1;
+b47: v106 = 1UL;
goto b48;
-b28: v78 = 0;
+b26: goto b24;
+b28: v78 = 0UL;
goto b30;
-b32: v79 = 1;
+b32: v79 = 1UL;
goto b33;
-b6: v8 = 0;
+b4: goto b2;
+b6: v8 = 0UL;
goto b8;
-b10: v9 = 1;
+b10: v9 = 1UL;
goto b11;
}
u zemit_hook(u vc) {
@@ -8196,72 +8797,80 @@ u zemit_hook(u vc) {
u v32 = 0;
u v33 = 0;
u v34 = 0;
- if (!*(u*)(vc + 80)) goto b5;
- v1 = 0;
-b6: if (!v1) goto b1;
- *(u*)(vc + 112) = *(u*)(vc + 96);
- *(u*)(vc + 104) = *(u*)(vc + 88);
-b1: if (*(u*)(vc + 96) != *(u*)(vc + 112)) goto b11;
- if (*(u*)(vc + 88) != *(u*)(vc + 104)) goto b15;
- v3 = 1;
+ if (!*(u*)(vc + 80UL)) goto b5;
+ v1 = 0UL;
+b6: if (!v1) goto b3;
+ *(u*)(vc + 112UL) = *(u*)(vc + 96UL);
+ *(u*)(vc + 104UL) = *(u*)(vc + 88UL);
+b1: if (*(u*)(vc + 96UL) != *(u*)(vc + 112UL)) goto b11;
+ if (*(u*)(vc + 88UL) != *(u*)(vc + 104UL)) goto b15;
+ v3 = 1UL;
b17: if (!v3) goto b11;
- v2 = 1;
-b13: if (!v2) goto b7;
- return 0;
-b7: v11 = (u)zfputh;
- v12 = *(u*)(vc + 80);
- v13 = *(u*)(vc + 24) + 1048576UL;
+ v2 = 1UL;
+b13: if (!v2) goto b9;
+ return 0UL;
+b9: v11 = (u)zfputh;
+ v12 = *(u*)(vc + 80UL);
+ v13 = *(u*)(vc + 24UL) + 1048576UL;
v14 = ((u(*)())v11)(v12, v13);
+ v14;
v15 = (u)zfputs;
- v16 = *(u*)(vc + 80);
+ v16 = *(u*)(vc + 80UL);
v17 = (u)"\011";
v18 = ((u(*)())v15)(v16, v17);
- if (!*(u*)(vc + 88)) goto b33;
+ v18;
+ if (!*(u*)(vc + 88UL)) goto b35;
v19 = (u)zfputs;
- v20 = *(u*)(vc + 80);
- v21 = *(u*)(vc + 88);
+ v20 = *(u*)(vc + 80UL);
+ v21 = *(u*)(vc + 88UL);
v22 = ((u(*)())v19)(v20, v21);
+ v22;
b33: v23 = (u)zfputs;
- v24 = *(u*)(vc + 80);
+ v24 = *(u*)(vc + 80UL);
v25 = (u)":";
v26 = ((u(*)())v23)(v24, v25);
+ v26;
v27 = (u)zfputd;
- v28 = *(u*)(vc + 80);
- v29 = *(u*)(vc + 96);
+ v28 = *(u*)(vc + 80UL);
+ v29 = *(u*)(vc + 96UL);
v30 = ((u(*)())v27)(v28, v29);
+ v30;
v31 = (u)zfputs;
- v32 = *(u*)(vc + 80);
+ v32 = *(u*)(vc + 80UL);
v33 = (u)"\012";
v34 = ((u(*)())v31)(v32, v33);
- *(u*)(vc + 112) = *(u*)(vc + 96);
- *(u*)(vc + 104) = *(u*)(vc + 88);
- return 0;
-b11: v2 = 0;
+ v34;
+ *(u*)(vc + 112UL) = *(u*)(vc + 96UL);
+ *(u*)(vc + 104UL) = *(u*)(vc + 88UL);
+ return 0UL;
+b35: goto b33;
+b11: v2 = 0UL;
goto b13;
-b15: if (!*(u*)(vc + 88)) goto b20;
- if (!*(u*)(vc + 104)) goto b24;
+b15: if (!*(u*)(vc + 88UL)) goto b20;
+ if (!*(u*)(vc + 104UL)) goto b24;
v7 = (u)zstrcmp;
- v8 = *(u*)(vc + 88);
- v9 = *(u*)(vc + 104);
+ v8 = *(u*)(vc + 88UL);
+ v9 = *(u*)(vc + 104UL);
v10 = ((u(*)())v7)(v8, v9);
if (!v10) goto b28;
- v6 = 0;
+ v6 = 0UL;
b29: if (!v6) goto b24;
- v5 = 1;
+ v5 = 1UL;
b26: if (!v5) goto b20;
- v4 = 1;
+ v4 = 1UL;
b22: if (!v4) goto b18;
- v3 = 1;
+ v3 = 1UL;
goto b17;
-b18: v3 = 0;
+b18: v3 = 0UL;
goto b17;
-b20: v4 = 0;
+b20: v4 = 0UL;
goto b22;
-b24: v5 = 0;
+b24: v5 = 0UL;
goto b26;
-b28: v6 = 1;
+b28: v6 = 1UL;
goto b29;
-b5: v1 = 1;
+b3: goto b1;
+b5: v1 = 1UL;
goto b6;
}
u zemit_isr(u vc) {
@@ -8891,694 +9500,776 @@ u zemit_isr(u vc) {
u v624 = 0;
u v625 = 0;
v4 = (u)zmklabel;
- v5 = *(u*)(vc + 48);
+ v5 = *(u*)(vc + 48UL);
v6 = ((u(*)())v4)(v5);
vout = v6;
- vi = 0;
-b2: if (vi != 256) goto b4;
+ vi = 0UL;
+b2: if (vi != 256UL) goto b6;
v96 = (u)zfixup_label;
- v97 = *(u*)(vc + 48);
+ v97 = *(u*)(vc + 48UL);
v98 = vout;
v99 = ((u(*)())v96)(v97, v98);
+ v99;
v100 = (u)zas_modri;
- v101 = *(u*)(vc + 48);
+ v101 = *(u*)(vc + 48UL);
v102 = 327809UL;
- v103 = 4;
- v104 = 176;
+ v103 = 4UL;
+ v104 = 176UL;
v105 = ((u(*)())v100)(v101, v102, v103, v104);
+ v105;
v106 = (u)zas_modrm;
- v107 = *(u*)(vc + 48);
- v108 = 137;
- v109 = 5;
- v110 = 4;
- v111 = 0;
- v112 = 0;
- v113 = 40;
+ v107 = *(u*)(vc + 48UL);
+ v108 = 137UL;
+ v109 = 5UL;
+ v110 = 4UL;
+ v111 = 0UL;
+ v112 = 0UL;
+ v113 = 40UL;
v114 = ((u(*)())v106)(v107, v108, v109, v110, v111, v112, v113);
+ v114;
v115 = (u)zas_modrr;
- v116 = *(u*)(vc + 48);
- v117 = 139;
- v118 = 5;
- v119 = 4;
+ v116 = *(u*)(vc + 48UL);
+ v117 = 139UL;
+ v118 = 5UL;
+ v119 = 4UL;
v120 = ((u(*)())v115)(v116, v117, v118, v119);
+ v120;
v121 = (u)zas_modrm;
- v122 = *(u*)(vc + 48);
- v123 = 137;
- v124 = 0;
- v125 = 5;
- v126 = 0;
- v127 = 0;
- v128 = 0;
+ v122 = *(u*)(vc + 48UL);
+ v123 = 137UL;
+ v124 = 0UL;
+ v125 = 5UL;
+ v126 = 0UL;
+ v127 = 0UL;
+ v128 = 0UL;
v129 = ((u(*)())v121)(v122, v123, v124, v125, v126, v127, v128);
+ v129;
v130 = (u)zas_modrm;
- v131 = *(u*)(vc + 48);
- v132 = 137;
- v133 = 1;
- v134 = 5;
- v135 = 0;
- v136 = 0;
- v137 = 8;
+ v131 = *(u*)(vc + 48UL);
+ v132 = 137UL;
+ v133 = 1UL;
+ v134 = 5UL;
+ v135 = 0UL;
+ v136 = 0UL;
+ v137 = 8UL;
v138 = ((u(*)())v130)(v131, v132, v133, v134, v135, v136, v137);
+ v138;
v139 = (u)zas_modrm;
- v140 = *(u*)(vc + 48);
- v141 = 137;
- v142 = 2;
- v143 = 5;
- v144 = 0;
- v145 = 0;
- v146 = 16;
+ v140 = *(u*)(vc + 48UL);
+ v141 = 137UL;
+ v142 = 2UL;
+ v143 = 5UL;
+ v144 = 0UL;
+ v145 = 0UL;
+ v146 = 16UL;
v147 = ((u(*)())v139)(v140, v141, v142, v143, v144, v145, v146);
+ v147;
v148 = (u)zas_modrm;
- v149 = *(u*)(vc + 48);
- v150 = 137;
- v151 = 3;
- v152 = 5;
- v153 = 0;
- v154 = 0;
- v155 = 24;
+ v149 = *(u*)(vc + 48UL);
+ v150 = 137UL;
+ v151 = 3UL;
+ v152 = 5UL;
+ v153 = 0UL;
+ v154 = 0UL;
+ v155 = 24UL;
v156 = ((u(*)())v148)(v149, v150, v151, v152, v153, v154, v155);
+ v156;
v157 = (u)zas_modrm;
- v158 = *(u*)(vc + 48);
- v159 = 137;
- v160 = 6;
- v161 = 5;
- v162 = 0;
- v163 = 0;
- v164 = 48;
+ v158 = *(u*)(vc + 48UL);
+ v159 = 137UL;
+ v160 = 6UL;
+ v161 = 5UL;
+ v162 = 0UL;
+ v163 = 0UL;
+ v164 = 48UL;
v165 = ((u(*)())v157)(v158, v159, v160, v161, v162, v163, v164);
+ v165;
v166 = (u)zas_modrm;
- v167 = *(u*)(vc + 48);
- v168 = 137;
- v169 = 7;
- v170 = 5;
- v171 = 0;
- v172 = 0;
- v173 = 56;
+ v167 = *(u*)(vc + 48UL);
+ v168 = 137UL;
+ v169 = 7UL;
+ v170 = 5UL;
+ v171 = 0UL;
+ v172 = 0UL;
+ v173 = 56UL;
v174 = ((u(*)())v166)(v167, v168, v169, v170, v171, v172, v173);
+ v174;
v175 = (u)zas_modrm;
- v176 = *(u*)(vc + 48);
- v177 = 137;
- v178 = 8;
- v179 = 5;
- v180 = 0;
- v181 = 0;
- v182 = 64;
+ v176 = *(u*)(vc + 48UL);
+ v177 = 137UL;
+ v178 = 8UL;
+ v179 = 5UL;
+ v180 = 0UL;
+ v181 = 0UL;
+ v182 = 64UL;
v183 = ((u(*)())v175)(v176, v177, v178, v179, v180, v181, v182);
+ v183;
v184 = (u)zas_modrm;
- v185 = *(u*)(vc + 48);
- v186 = 137;
- v187 = 9;
- v188 = 5;
- v189 = 0;
- v190 = 0;
- v191 = 72;
+ v185 = *(u*)(vc + 48UL);
+ v186 = 137UL;
+ v187 = 9UL;
+ v188 = 5UL;
+ v189 = 0UL;
+ v190 = 0UL;
+ v191 = 72UL;
v192 = ((u(*)())v184)(v185, v186, v187, v188, v189, v190, v191);
+ v192;
v193 = (u)zas_modrm;
- v194 = *(u*)(vc + 48);
- v195 = 137;
- v196 = 10;
- v197 = 5;
- v198 = 0;
- v199 = 0;
- v200 = 80;
+ v194 = *(u*)(vc + 48UL);
+ v195 = 137UL;
+ v196 = 10UL;
+ v197 = 5UL;
+ v198 = 0UL;
+ v199 = 0UL;
+ v200 = 80UL;
v201 = ((u(*)())v193)(v194, v195, v196, v197, v198, v199, v200);
+ v201;
v202 = (u)zas_modrm;
- v203 = *(u*)(vc + 48);
- v204 = 137;
- v205 = 11;
- v206 = 5;
- v207 = 0;
- v208 = 0;
- v209 = 88;
+ v203 = *(u*)(vc + 48UL);
+ v204 = 137UL;
+ v205 = 11UL;
+ v206 = 5UL;
+ v207 = 0UL;
+ v208 = 0UL;
+ v209 = 88UL;
v210 = ((u(*)())v202)(v203, v204, v205, v206, v207, v208, v209);
+ v210;
v211 = (u)zas_modrm;
- v212 = *(u*)(vc + 48);
- v213 = 137;
- v214 = 12;
- v215 = 5;
- v216 = 0;
- v217 = 0;
- v218 = 96;
+ v212 = *(u*)(vc + 48UL);
+ v213 = 137UL;
+ v214 = 12UL;
+ v215 = 5UL;
+ v216 = 0UL;
+ v217 = 0UL;
+ v218 = 96UL;
v219 = ((u(*)())v211)(v212, v213, v214, v215, v216, v217, v218);
+ v219;
v220 = (u)zas_modrm;
- v221 = *(u*)(vc + 48);
- v222 = 137;
- v223 = 13;
- v224 = 5;
- v225 = 0;
- v226 = 0;
- v227 = 104;
+ v221 = *(u*)(vc + 48UL);
+ v222 = 137UL;
+ v223 = 13UL;
+ v224 = 5UL;
+ v225 = 0UL;
+ v226 = 0UL;
+ v227 = 104UL;
v228 = ((u(*)())v220)(v221, v222, v223, v224, v225, v226, v227);
+ v228;
v229 = (u)zas_modrm;
- v230 = *(u*)(vc + 48);
- v231 = 137;
- v232 = 14;
- v233 = 5;
- v234 = 0;
- v235 = 0;
- v236 = 112;
+ v230 = *(u*)(vc + 48UL);
+ v231 = 137UL;
+ v232 = 14UL;
+ v233 = 5UL;
+ v234 = 0UL;
+ v235 = 0UL;
+ v236 = 112UL;
v237 = ((u(*)())v229)(v230, v231, v232, v233, v234, v235, v236);
+ v237;
v238 = (u)zas_modrm;
- v239 = *(u*)(vc + 48);
- v240 = 137;
- v241 = 15;
- v242 = 5;
- v243 = 0;
- v244 = 0;
- v245 = 120;
+ v239 = *(u*)(vc + 48UL);
+ v240 = 137UL;
+ v241 = 15UL;
+ v242 = 5UL;
+ v243 = 0UL;
+ v244 = 0UL;
+ v245 = 120UL;
v246 = ((u(*)())v238)(v239, v240, v241, v242, v243, v244, v245);
+ v246;
v247 = (u)zas_modrm;
- v248 = *(u*)(vc + 48);
- v249 = 139;
- v250 = 0;
- v251 = 5;
- v252 = 0;
- v253 = 0;
- v254 = 176;
+ v248 = *(u*)(vc + 48UL);
+ v249 = 139UL;
+ v250 = 0UL;
+ v251 = 5UL;
+ v252 = 0UL;
+ v253 = 0UL;
+ v254 = 176UL + 0UL;
v255 = ((u(*)())v247)(v248, v249, v250, v251, v252, v253, v254);
+ v255;
v256 = (u)zas_modrm;
- v257 = *(u*)(vc + 48);
- v258 = 137;
- v259 = 0;
- v260 = 5;
- v261 = 0;
- v262 = 0;
- v263 = 160;
+ v257 = *(u*)(vc + 48UL);
+ v258 = 137UL;
+ v259 = 0UL;
+ v260 = 5UL;
+ v261 = 0UL;
+ v262 = 0UL;
+ v263 = 160UL;
v264 = ((u(*)())v256)(v257, v258, v259, v260, v261, v262, v263);
+ v264;
v265 = (u)zas_modrm;
- v266 = *(u*)(vc + 48);
- v267 = 139;
- v268 = 0;
- v269 = 5;
- v270 = 0;
- v271 = 0;
- v272 = 184;
+ v266 = *(u*)(vc + 48UL);
+ v267 = 139UL;
+ v268 = 0UL;
+ v269 = 5UL;
+ v270 = 0UL;
+ v271 = 0UL;
+ v272 = 176UL + 8UL;
v273 = ((u(*)())v265)(v266, v267, v268, v269, v270, v271, v272);
+ v273;
v274 = (u)zas_modrm;
- v275 = *(u*)(vc + 48);
- v276 = 137;
- v277 = 0;
- v278 = 5;
- v279 = 0;
- v280 = 0;
- v281 = 168;
+ v275 = *(u*)(vc + 48UL);
+ v276 = 137UL;
+ v277 = 0UL;
+ v278 = 5UL;
+ v279 = 0UL;
+ v280 = 0UL;
+ v281 = 168UL;
v282 = ((u(*)())v274)(v275, v276, v277, v278, v279, v280, v281);
+ v282;
v283 = (u)zas_modrm;
- v284 = *(u*)(vc + 48);
- v285 = 139;
- v286 = 0;
- v287 = 5;
- v288 = 0;
- v289 = 0;
- v290 = 192;
+ v284 = *(u*)(vc + 48UL);
+ v285 = 139UL;
+ v286 = 0UL;
+ v287 = 5UL;
+ v288 = 0UL;
+ v289 = 0UL;
+ v290 = 176UL + 16UL;
v291 = ((u(*)())v283)(v284, v285, v286, v287, v288, v289, v290);
+ v291;
v292 = (u)zas_modrm;
- v293 = *(u*)(vc + 48);
- v294 = 137;
- v295 = 0;
- v296 = 5;
- v297 = 0;
- v298 = 0;
- v299 = 128;
+ v293 = *(u*)(vc + 48UL);
+ v294 = 137UL;
+ v295 = 0UL;
+ v296 = 5UL;
+ v297 = 0UL;
+ v298 = 0UL;
+ v299 = 128UL;
v300 = ((u(*)())v292)(v293, v294, v295, v296, v297, v298, v299);
+ v300;
v301 = (u)zas_modrm;
- v302 = *(u*)(vc + 48);
- v303 = 139;
- v304 = 0;
- v305 = 5;
- v306 = 0;
- v307 = 0;
- v308 = 200;
+ v302 = *(u*)(vc + 48UL);
+ v303 = 139UL;
+ v304 = 0UL;
+ v305 = 5UL;
+ v306 = 0UL;
+ v307 = 0UL;
+ v308 = 176UL + 24UL;
v309 = ((u(*)())v301)(v302, v303, v304, v305, v306, v307, v308);
+ v309;
v310 = (u)zas_modrm;
- v311 = *(u*)(vc + 48);
- v312 = 137;
- v313 = 0;
- v314 = 5;
- v315 = 0;
- v316 = 0;
- v317 = 144;
+ v311 = *(u*)(vc + 48UL);
+ v312 = 137UL;
+ v313 = 0UL;
+ v314 = 5UL;
+ v315 = 0UL;
+ v316 = 0UL;
+ v317 = 144UL;
v318 = ((u(*)())v310)(v311, v312, v313, v314, v315, v316, v317);
+ v318;
v319 = (u)zas_modrm;
- v320 = *(u*)(vc + 48);
- v321 = 139;
- v322 = 0;
- v323 = 5;
- v324 = 0;
- v325 = 0;
- v326 = 208;
+ v320 = *(u*)(vc + 48UL);
+ v321 = 139UL;
+ v322 = 0UL;
+ v323 = 5UL;
+ v324 = 0UL;
+ v325 = 0UL;
+ v326 = 176UL + 32UL;
v327 = ((u(*)())v319)(v320, v321, v322, v323, v324, v325, v326);
+ v327;
v328 = (u)zas_modrm;
- v329 = *(u*)(vc + 48);
- v330 = 137;
- v331 = 0;
- v332 = 5;
- v333 = 0;
- v334 = 0;
- v335 = 136;
+ v329 = *(u*)(vc + 48UL);
+ v330 = 137UL;
+ v331 = 0UL;
+ v332 = 5UL;
+ v333 = 0UL;
+ v334 = 0UL;
+ v335 = 136UL;
v336 = ((u(*)())v328)(v329, v330, v331, v332, v333, v334, v335);
+ v336;
v337 = (u)zas_modrm;
- v338 = *(u*)(vc + 48);
- v339 = 139;
- v340 = 0;
- v341 = 5;
- v342 = 0;
- v343 = 0;
- v344 = 216;
+ v338 = *(u*)(vc + 48UL);
+ v339 = 139UL;
+ v340 = 0UL;
+ v341 = 5UL;
+ v342 = 0UL;
+ v343 = 0UL;
+ v344 = 176UL + 40UL;
v345 = ((u(*)())v337)(v338, v339, v340, v341, v342, v343, v344);
+ v345;
v346 = (u)zas_modrm;
- v347 = *(u*)(vc + 48);
- v348 = 137;
- v349 = 0;
- v350 = 5;
- v351 = 0;
- v352 = 0;
- v353 = 32;
+ v347 = *(u*)(vc + 48UL);
+ v348 = 137UL;
+ v349 = 0UL;
+ v350 = 5UL;
+ v351 = 0UL;
+ v352 = 0UL;
+ v353 = 32UL;
v354 = ((u(*)())v346)(v347, v348, v349, v350, v351, v352, v353);
+ v354;
v355 = (u)zas_modrm;
- v356 = *(u*)(vc + 48);
- v357 = 139;
- v358 = 0;
- v359 = 5;
- v360 = 0;
- v361 = 0;
- v362 = 224;
+ v356 = *(u*)(vc + 48UL);
+ v357 = 139UL;
+ v358 = 0UL;
+ v359 = 5UL;
+ v360 = 0UL;
+ v361 = 0UL;
+ v362 = 176UL + 48UL;
v363 = ((u(*)())v355)(v356, v357, v358, v359, v360, v361, v362);
+ v363;
v364 = (u)zas_modrm;
- v365 = *(u*)(vc + 48);
- v366 = 137;
- v367 = 0;
- v368 = 5;
- v369 = 0;
- v370 = 0;
- v371 = 152;
+ v365 = *(u*)(vc + 48UL);
+ v366 = 137UL;
+ v367 = 0UL;
+ v368 = 5UL;
+ v369 = 0UL;
+ v370 = 0UL;
+ v371 = 152UL;
v372 = ((u(*)())v364)(v365, v366, v367, v368, v369, v370, v371);
+ v372;
v373 = (u)zas_modrr;
- v374 = *(u*)(vc + 48);
- v375 = 139;
- v376 = 7;
- v377 = 5;
+ v374 = *(u*)(vc + 48UL);
+ v375 = 139UL;
+ v376 = 7UL;
+ v377 = 5UL;
v378 = ((u(*)())v373)(v374, v375, v376, v377);
+ v378;
v379 = (u)zfind;
v380 = vc;
v381 = (u)"_isr";
- v382 = 0;
- v383 = 1;
+ v382 = 0UL;
+ v383 = 1UL;
v384 = ((u(*)())v379)(v380, v381, v382, v383);
vd = v384;
- if (!*(u*)(vd + 72)) goto b113;
- if (!*(u*)(*(u*)(vd + 88) + 16)) goto b113;
- v385 = 1;
-b115: if (!v385) goto b109;
+ if (!*(u*)(vd + 72UL)) goto b113;
+ if (!*(u*)(*(u*)(vd + 88UL) + 16UL)) goto b113;
+ v385 = 1UL;
+b115: if (!v385) goto b111;
v386 = (u)zas_jmp;
- v387 = *(u*)(vc + 48);
- v388 = 232;
- v389 = *(u*)(vd + 88);
+ v387 = *(u*)(vc + 48UL);
+ v388 = 232UL;
+ v389 = *(u*)(vd + 88UL);
v390 = ((u(*)())v386)(v387, v388, v389);
+ v390;
b109: v391 = (u)zas_modrm;
- v392 = *(u*)(vc + 48);
- v393 = 139;
- v394 = 0;
- v395 = 5;
- v396 = 0;
- v397 = 0;
- v398 = 128;
+ v392 = *(u*)(vc + 48UL);
+ v393 = 139UL;
+ v394 = 0UL;
+ v395 = 5UL;
+ v396 = 0UL;
+ v397 = 0UL;
+ v398 = 128UL;
v399 = ((u(*)())v391)(v392, v393, v394, v395, v396, v397, v398);
+ v399;
v400 = (u)zas_modrm;
- v401 = *(u*)(vc + 48);
- v402 = 137;
- v403 = 0;
- v404 = 5;
- v405 = 0;
- v406 = 0;
- v407 = 192;
+ v401 = *(u*)(vc + 48UL);
+ v402 = 137UL;
+ v403 = 0UL;
+ v404 = 5UL;
+ v405 = 0UL;
+ v406 = 0UL;
+ v407 = 176UL + 16UL;
v408 = ((u(*)())v400)(v401, v402, v403, v404, v405, v406, v407);
+ v408;
v409 = (u)zas_modrm;
- v410 = *(u*)(vc + 48);
- v411 = 139;
- v412 = 0;
- v413 = 5;
- v414 = 0;
- v415 = 0;
- v416 = 144;
+ v410 = *(u*)(vc + 48UL);
+ v411 = 139UL;
+ v412 = 0UL;
+ v413 = 5UL;
+ v414 = 0UL;
+ v415 = 0UL;
+ v416 = 144UL;
v417 = ((u(*)())v409)(v410, v411, v412, v413, v414, v415, v416);
+ v417;
v418 = (u)zas_modrm;
- v419 = *(u*)(vc + 48);
- v420 = 137;
- v421 = 0;
- v422 = 5;
- v423 = 0;
- v424 = 0;
- v425 = 200;
+ v419 = *(u*)(vc + 48UL);
+ v420 = 137UL;
+ v421 = 0UL;
+ v422 = 5UL;
+ v423 = 0UL;
+ v424 = 0UL;
+ v425 = 176UL + 24UL;
v426 = ((u(*)())v418)(v419, v420, v421, v422, v423, v424, v425);
+ v426;
v427 = (u)zas_modrm;
- v428 = *(u*)(vc + 48);
- v429 = 139;
- v430 = 0;
- v431 = 5;
- v432 = 0;
- v433 = 0;
- v434 = 136;
+ v428 = *(u*)(vc + 48UL);
+ v429 = 139UL;
+ v430 = 0UL;
+ v431 = 5UL;
+ v432 = 0UL;
+ v433 = 0UL;
+ v434 = 136UL;
v435 = ((u(*)())v427)(v428, v429, v430, v431, v432, v433, v434);
+ v435;
v436 = (u)zas_modrm;
- v437 = *(u*)(vc + 48);
- v438 = 137;
- v439 = 0;
- v440 = 5;
- v441 = 0;
- v442 = 0;
- v443 = 208;
+ v437 = *(u*)(vc + 48UL);
+ v438 = 137UL;
+ v439 = 0UL;
+ v440 = 5UL;
+ v441 = 0UL;
+ v442 = 0UL;
+ v443 = 176UL + 32UL;
v444 = ((u(*)())v436)(v437, v438, v439, v440, v441, v442, v443);
+ v444;
v445 = (u)zas_modrm;
- v446 = *(u*)(vc + 48);
- v447 = 139;
- v448 = 0;
- v449 = 5;
- v450 = 0;
- v451 = 0;
- v452 = 32;
+ v446 = *(u*)(vc + 48UL);
+ v447 = 139UL;
+ v448 = 0UL;
+ v449 = 5UL;
+ v450 = 0UL;
+ v451 = 0UL;
+ v452 = 32UL;
v453 = ((u(*)())v445)(v446, v447, v448, v449, v450, v451, v452);
+ v453;
v454 = (u)zas_modrm;
- v455 = *(u*)(vc + 48);
- v456 = 137;
- v457 = 0;
- v458 = 5;
- v459 = 0;
- v460 = 0;
- v461 = 216;
+ v455 = *(u*)(vc + 48UL);
+ v456 = 137UL;
+ v457 = 0UL;
+ v458 = 5UL;
+ v459 = 0UL;
+ v460 = 0UL;
+ v461 = 176UL + 40UL;
v462 = ((u(*)())v454)(v455, v456, v457, v458, v459, v460, v461);
+ v462;
v463 = (u)zas_modrm;
- v464 = *(u*)(vc + 48);
- v465 = 139;
- v466 = 0;
- v467 = 5;
- v468 = 0;
- v469 = 0;
- v470 = 152;
+ v464 = *(u*)(vc + 48UL);
+ v465 = 139UL;
+ v466 = 0UL;
+ v467 = 5UL;
+ v468 = 0UL;
+ v469 = 0UL;
+ v470 = 152UL;
v471 = ((u(*)())v463)(v464, v465, v466, v467, v468, v469, v470);
+ v471;
v472 = (u)zas_modrm;
- v473 = *(u*)(vc + 48);
- v474 = 137;
- v475 = 0;
- v476 = 5;
- v477 = 0;
- v478 = 0;
- v479 = 224;
+ v473 = *(u*)(vc + 48UL);
+ v474 = 137UL;
+ v475 = 0UL;
+ v476 = 5UL;
+ v477 = 0UL;
+ v478 = 0UL;
+ v479 = 176UL + 48UL;
v480 = ((u(*)())v472)(v473, v474, v475, v476, v477, v478, v479);
+ v480;
v481 = (u)zas_modrm;
- v482 = *(u*)(vc + 48);
- v483 = 139;
- v484 = 0;
- v485 = 5;
- v486 = 0;
- v487 = 0;
- v488 = 0;
+ v482 = *(u*)(vc + 48UL);
+ v483 = 139UL;
+ v484 = 0UL;
+ v485 = 5UL;
+ v486 = 0UL;
+ v487 = 0UL;
+ v488 = 0UL;
v489 = ((u(*)())v481)(v482, v483, v484, v485, v486, v487, v488);
+ v489;
v490 = (u)zas_modrm;
- v491 = *(u*)(vc + 48);
- v492 = 139;
- v493 = 1;
- v494 = 5;
- v495 = 0;
- v496 = 0;
- v497 = 8;
+ v491 = *(u*)(vc + 48UL);
+ v492 = 139UL;
+ v493 = 1UL;
+ v494 = 5UL;
+ v495 = 0UL;
+ v496 = 0UL;
+ v497 = 8UL;
v498 = ((u(*)())v490)(v491, v492, v493, v494, v495, v496, v497);
+ v498;
v499 = (u)zas_modrm;
- v500 = *(u*)(vc + 48);
- v501 = 139;
- v502 = 2;
- v503 = 5;
- v504 = 0;
- v505 = 0;
- v506 = 16;
+ v500 = *(u*)(vc + 48UL);
+ v501 = 139UL;
+ v502 = 2UL;
+ v503 = 5UL;
+ v504 = 0UL;
+ v505 = 0UL;
+ v506 = 16UL;
v507 = ((u(*)())v499)(v500, v501, v502, v503, v504, v505, v506);
+ v507;
v508 = (u)zas_modrm;
- v509 = *(u*)(vc + 48);
- v510 = 139;
- v511 = 3;
- v512 = 5;
- v513 = 0;
- v514 = 0;
- v515 = 24;
+ v509 = *(u*)(vc + 48UL);
+ v510 = 139UL;
+ v511 = 3UL;
+ v512 = 5UL;
+ v513 = 0UL;
+ v514 = 0UL;
+ v515 = 24UL;
v516 = ((u(*)())v508)(v509, v510, v511, v512, v513, v514, v515);
+ v516;
v517 = (u)zas_modrm;
- v518 = *(u*)(vc + 48);
- v519 = 139;
- v520 = 6;
- v521 = 5;
- v522 = 0;
- v523 = 0;
- v524 = 48;
+ v518 = *(u*)(vc + 48UL);
+ v519 = 139UL;
+ v520 = 6UL;
+ v521 = 5UL;
+ v522 = 0UL;
+ v523 = 0UL;
+ v524 = 48UL;
v525 = ((u(*)())v517)(v518, v519, v520, v521, v522, v523, v524);
+ v525;
v526 = (u)zas_modrm;
- v527 = *(u*)(vc + 48);
- v528 = 139;
- v529 = 7;
- v530 = 5;
- v531 = 0;
- v532 = 0;
- v533 = 56;
+ v527 = *(u*)(vc + 48UL);
+ v528 = 139UL;
+ v529 = 7UL;
+ v530 = 5UL;
+ v531 = 0UL;
+ v532 = 0UL;
+ v533 = 56UL;
v534 = ((u(*)())v526)(v527, v528, v529, v530, v531, v532, v533);
+ v534;
v535 = (u)zas_modrm;
- v536 = *(u*)(vc + 48);
- v537 = 139;
- v538 = 8;
- v539 = 5;
- v540 = 0;
- v541 = 0;
- v542 = 64;
+ v536 = *(u*)(vc + 48UL);
+ v537 = 139UL;
+ v538 = 8UL;
+ v539 = 5UL;
+ v540 = 0UL;
+ v541 = 0UL;
+ v542 = 64UL;
v543 = ((u(*)())v535)(v536, v537, v538, v539, v540, v541, v542);
+ v543;
v544 = (u)zas_modrm;
- v545 = *(u*)(vc + 48);
- v546 = 139;
- v547 = 9;
- v548 = 5;
- v549 = 0;
- v550 = 0;
- v551 = 72;
+ v545 = *(u*)(vc + 48UL);
+ v546 = 139UL;
+ v547 = 9UL;
+ v548 = 5UL;
+ v549 = 0UL;
+ v550 = 0UL;
+ v551 = 72UL;
v552 = ((u(*)())v544)(v545, v546, v547, v548, v549, v550, v551);
+ v552;
v553 = (u)zas_modrm;
- v554 = *(u*)(vc + 48);
- v555 = 139;
- v556 = 10;
- v557 = 5;
- v558 = 0;
- v559 = 0;
- v560 = 80;
+ v554 = *(u*)(vc + 48UL);
+ v555 = 139UL;
+ v556 = 10UL;
+ v557 = 5UL;
+ v558 = 0UL;
+ v559 = 0UL;
+ v560 = 80UL;
v561 = ((u(*)())v553)(v554, v555, v556, v557, v558, v559, v560);
+ v561;
v562 = (u)zas_modrm;
- v563 = *(u*)(vc + 48);
- v564 = 139;
- v565 = 11;
- v566 = 5;
- v567 = 0;
- v568 = 0;
- v569 = 88;
+ v563 = *(u*)(vc + 48UL);
+ v564 = 139UL;
+ v565 = 11UL;
+ v566 = 5UL;
+ v567 = 0UL;
+ v568 = 0UL;
+ v569 = 88UL;
v570 = ((u(*)())v562)(v563, v564, v565, v566, v567, v568, v569);
+ v570;
v571 = (u)zas_modrm;
- v572 = *(u*)(vc + 48);
- v573 = 139;
- v574 = 12;
- v575 = 5;
- v576 = 0;
- v577 = 0;
- v578 = 96;
+ v572 = *(u*)(vc + 48UL);
+ v573 = 139UL;
+ v574 = 12UL;
+ v575 = 5UL;
+ v576 = 0UL;
+ v577 = 0UL;
+ v578 = 96UL;
v579 = ((u(*)())v571)(v572, v573, v574, v575, v576, v577, v578);
+ v579;
v580 = (u)zas_modrm;
- v581 = *(u*)(vc + 48);
- v582 = 139;
- v583 = 13;
- v584 = 5;
- v585 = 0;
- v586 = 0;
- v587 = 104;
+ v581 = *(u*)(vc + 48UL);
+ v582 = 139UL;
+ v583 = 13UL;
+ v584 = 5UL;
+ v585 = 0UL;
+ v586 = 0UL;
+ v587 = 104UL;
v588 = ((u(*)())v580)(v581, v582, v583, v584, v585, v586, v587);
+ v588;
v589 = (u)zas_modrm;
- v590 = *(u*)(vc + 48);
- v591 = 139;
- v592 = 14;
- v593 = 5;
- v594 = 0;
- v595 = 0;
- v596 = 112;
+ v590 = *(u*)(vc + 48UL);
+ v591 = 139UL;
+ v592 = 14UL;
+ v593 = 5UL;
+ v594 = 0UL;
+ v595 = 0UL;
+ v596 = 112UL;
v597 = ((u(*)())v589)(v590, v591, v592, v593, v594, v595, v596);
+ v597;
v598 = (u)zas_modrm;
- v599 = *(u*)(vc + 48);
- v600 = 139;
- v601 = 15;
- v602 = 5;
- v603 = 0;
- v604 = 0;
- v605 = 120;
+ v599 = *(u*)(vc + 48UL);
+ v600 = 139UL;
+ v601 = 15UL;
+ v602 = 5UL;
+ v603 = 0UL;
+ v604 = 0UL;
+ v605 = 120UL;
v606 = ((u(*)())v598)(v599, v600, v601, v602, v603, v604, v605);
+ v606;
v607 = (u)zas_modrm;
- v608 = *(u*)(vc + 48);
- v609 = 139;
- v610 = 5;
- v611 = 5;
- v612 = 0;
- v613 = 0;
- v614 = 40;
+ v608 = *(u*)(vc + 48UL);
+ v609 = 139UL;
+ v610 = 5UL;
+ v611 = 5UL;
+ v612 = 0UL;
+ v613 = 0UL;
+ v614 = 40UL;
v615 = ((u(*)())v607)(v608, v609, v610, v611, v612, v613, v614);
+ v615;
v616 = (u)zas_modri;
- v617 = *(u*)(vc + 48);
- v618 = 129;
- v619 = 4;
- v620 = 192;
+ v617 = *(u*)(vc + 48UL);
+ v618 = 129UL;
+ v619 = 4UL;
+ v620 = 176UL + 2UL * 8UL;
v621 = ((u(*)())v616)(v617, v618, v619, v620);
+ v621;
v622 = (u)zas_op;
- v623 = *(u*)(vc + 48);
- v624 = 18639;
+ v623 = *(u*)(vc + 48UL);
+ v624 = 18639UL;
v625 = ((u(*)())v622)(v623, v624);
- return 0;
-b113: v385 = 0;
+ v625;
+ return 0UL;
+b111: goto b109;
+b113: v385 = 0UL;
goto b115;
-b4: v7 = (u)zreserve;
- v8 = *(u*)(vc + 48);
- v9 = 16;
+b6: v7 = (u)zreserve;
+ v8 = *(u*)(vc + 48UL);
+ v9 = 16UL;
v10 = ((u(*)())v7)(v8, v9);
- if (vi != 8) goto b12;
- v11 = 1;
+ v10;
+ if (vi != 8UL) goto b12;
+ v11 = 1UL;
b14: if (!v11) goto b10;
v20 = (u)zas_emit;
- v21 = *(u*)(vc + 48);
- v22 = 144;
+ v21 = *(u*)(vc + 48UL);
+ v22 = 144UL;
v23 = ((u(*)())v20)(v21, v22);
+ v23;
v24 = (u)zas_emit;
- v25 = *(u*)(vc + 48);
- v26 = 144;
+ v25 = *(u*)(vc + 48UL);
+ v26 = 144UL;
v27 = ((u(*)())v24)(v25, v26);
+ v27;
b8: v36 = (u)zas_emit;
- v37 = *(u*)(vc + 48);
- v38 = 104;
+ v37 = *(u*)(vc + 48UL);
+ v38 = 104UL;
v39 = ((u(*)())v36)(v37, v38);
+ v39;
v40 = (u)zas_emit;
- v41 = *(u*)(vc + 48);
+ v41 = *(u*)(vc + 48UL);
v42 = vi;
v43 = ((u(*)())v40)(v41, v42);
+ v43;
v44 = (u)zas_emit;
- v45 = *(u*)(vc + 48);
- v46 = 0;
+ v45 = *(u*)(vc + 48UL);
+ v46 = 0UL;
v47 = ((u(*)())v44)(v45, v46);
+ v47;
v48 = (u)zas_emit;
- v49 = *(u*)(vc + 48);
- v50 = 0;
+ v49 = *(u*)(vc + 48UL);
+ v50 = 0UL;
v51 = ((u(*)())v48)(v49, v50);
+ v51;
v52 = (u)zas_emit;
- v53 = *(u*)(vc + 48);
- v54 = 0;
+ v53 = *(u*)(vc + 48UL);
+ v54 = 0UL;
v55 = ((u(*)())v52)(v53, v54);
+ v55;
v56 = (u)zas_emit;
- v57 = *(u*)(vc + 48);
- v58 = 233;
+ v57 = *(u*)(vc + 48UL);
+ v58 = 233UL;
v59 = ((u(*)())v56)(v57, v58);
+ v59;
v60 = (u)zas_emit;
- v61 = *(u*)(vc + 48);
- v62 = 0;
+ v61 = *(u*)(vc + 48UL);
+ v62 = 0UL;
v63 = ((u(*)())v60)(v61, v62);
+ v63;
v64 = (u)zas_emit;
- v65 = *(u*)(vc + 48);
- v66 = 0;
+ v65 = *(u*)(vc + 48UL);
+ v66 = 0UL;
v67 = ((u(*)())v64)(v65, v66);
+ v67;
v68 = (u)zas_emit;
- v69 = *(u*)(vc + 48);
- v70 = 0;
+ v69 = *(u*)(vc + 48UL);
+ v70 = 0UL;
v71 = ((u(*)())v68)(v69, v70);
+ v71;
v72 = (u)zas_emit;
- v73 = *(u*)(vc + 48);
- v74 = 0;
+ v73 = *(u*)(vc + 48UL);
+ v74 = 0UL;
v75 = ((u(*)())v72)(v73, v74);
+ v75;
v76 = (u)zaddfixup;
- v77 = *(u*)(vc + 48);
+ v77 = *(u*)(vc + 48UL);
v78 = vout;
v79 = ((u(*)())v76)(v77, v78);
+ v79;
v80 = (u)zas_emit;
- v81 = *(u*)(vc + 48);
- v82 = 144;
+ v81 = *(u*)(vc + 48UL);
+ v82 = 144UL;
v83 = ((u(*)())v80)(v81, v82);
+ v83;
v84 = (u)zas_emit;
- v85 = *(u*)(vc + 48);
- v86 = 144;
+ v85 = *(u*)(vc + 48UL);
+ v86 = 144UL;
v87 = ((u(*)())v84)(v85, v86);
+ v87;
v88 = (u)zas_emit;
- v89 = *(u*)(vc + 48);
- v90 = 144;
+ v89 = *(u*)(vc + 48UL);
+ v90 = 144UL;
v91 = ((u(*)())v88)(v89, v90);
+ v91;
v92 = (u)zas_emit;
- v93 = *(u*)(vc + 48);
- v94 = 144;
+ v93 = *(u*)(vc + 48UL);
+ v94 = 144UL;
v95 = ((u(*)())v92)(v93, v94);
- vi = vi + 1;
+ v95;
+ vi = vi + 1UL;
goto b2;
b10: v28 = (u)zas_emit;
- v29 = *(u*)(vc + 48);
- v30 = 106;
+ v29 = *(u*)(vc + 48UL);
+ v30 = 106UL;
v31 = ((u(*)())v28)(v29, v30);
+ v31;
v32 = (u)zas_emit;
- v33 = *(u*)(vc + 48);
- v34 = 0;
+ v33 = *(u*)(vc + 48UL);
+ v34 = 0UL;
v35 = ((u(*)())v32)(v33, v34);
+ v35;
goto b8;
-b12: if (vi != 10) goto b17;
- v12 = 1;
+b12: if (vi != 10UL) goto b17;
+ v12 = 1UL;
b19: if (!v12) goto b15;
- v11 = 1;
+ v11 = 1UL;
goto b14;
-b15: v11 = 0;
+b15: v11 = 0UL;
goto b14;
-b17: if (vi != 11) goto b22;
- v13 = 1;
+b17: if (vi != 11UL) goto b22;
+ v13 = 1UL;
b24: if (!v13) goto b20;
- v12 = 1;
+ v12 = 1UL;
goto b19;
-b20: v12 = 0;
+b20: v12 = 0UL;
goto b19;
-b22: if (vi != 12) goto b27;
- v14 = 1;
+b22: if (vi != 12UL) goto b27;
+ v14 = 1UL;
b29: if (!v14) goto b25;
- v13 = 1;
+ v13 = 1UL;
goto b24;
-b25: v13 = 0;
+b25: v13 = 0UL;
goto b24;
-b27: if (vi != 13) goto b32;
- v15 = 1;
+b27: if (vi != 13UL) goto b32;
+ v15 = 1UL;
b34: if (!v15) goto b30;
- v14 = 1;
+ v14 = 1UL;
goto b29;
-b30: v14 = 0;
+b30: v14 = 0UL;
goto b29;
-b32: if (vi != 14) goto b37;
- v16 = 1;
+b32: if (vi != 14UL) goto b37;
+ v16 = 1UL;
b39: if (!v16) goto b35;
- v15 = 1;
+ v15 = 1UL;
goto b34;
-b35: v15 = 0;
+b35: v15 = 0UL;
goto b34;
-b37: if (vi != 17) goto b42;
- v17 = 1;
+b37: if (vi != 17UL) goto b42;
+ v17 = 1UL;
b44: if (!v17) goto b40;
- v16 = 1;
+ v16 = 1UL;
goto b39;
-b40: v16 = 0;
+b40: v16 = 0UL;
goto b39;
-b42: if (vi != 21) goto b47;
- v18 = 1;
+b42: if (vi != 21UL) goto b47;
+ v18 = 1UL;
b49: if (!v18) goto b45;
- v17 = 1;
+ v17 = 1UL;
goto b44;
-b45: v17 = 0;
+b45: v17 = 0UL;
goto b44;
-b47: if (vi != 29) goto b52;
- v19 = 1;
+b47: if (vi != 29UL) goto b52;
+ v19 = 1UL;
b54: if (!v19) goto b50;
- v18 = 1;
+ v18 = 1UL;
goto b49;
-b50: v18 = 0;
+b50: v18 = 0UL;
goto b49;
-b52: if (vi != 30) goto b55;
- v19 = 1;
+b52: if (vi != 30UL) goto b55;
+ v19 = 1UL;
goto b54;
-b55: v19 = 0;
+b55: v19 = 0UL;
goto b54;
}
u zemit_kstart(u vc) {
@@ -10206,7 +10897,7 @@ u zemit_kstart(u vc) {
u v622 = 0;
u v623 = 0;
u v624 = 0;
- *(u*)(vc + 48) = 1;
+ *(u*)(vc + 48UL) = 1UL;
v5 = (u)zmklabel;
v6 = vc;
v7 = ((u(*)())v5)(v6);
@@ -10225,614 +10916,708 @@ u zemit_kstart(u vc) {
vdone = v16;
v17 = (u)zas_modri;
v18 = vc;
- v19 = 199;
- v20 = 2;
+ v19 = 199UL;
+ v20 = 2UL;
v21 = 732803074UL;
v22 = ((u(*)())v17)(v18, v19, v20, v21);
+ v22;
v23 = (u)zas_modrr;
v24 = vc;
- v25 = 59;
- v26 = 0;
- v27 = 2;
+ v25 = 59UL;
+ v26 = 0UL;
+ v27 = 2UL;
v28 = ((u(*)())v23)(v24, v25, v26, v27);
+ v28;
v29 = (u)zas_jmp;
v30 = vc;
- v31 = 3973;
+ v31 = 3968UL + 5UL;
v32 = vhang;
v33 = ((u(*)())v29)(v30, v31, v32);
+ v33;
v34 = (u)zas_modri;
v35 = vc;
- v36 = 199;
- v37 = 4;
+ v36 = 199UL;
+ v37 = 4UL;
v38 = 3145728UL;
v39 = ((u(*)())v34)(v35, v36, v37, v38);
+ v39;
v40 = (u)zas_modri;
v41 = vc;
v42 = 262273UL;
- v43 = 4;
+ v43 = 4UL;
v44 = -4096UL;
v45 = ((u(*)())v40)(v41, v42, v43, v44);
+ v45;
v46 = (u)zas_modri;
v47 = vc;
v48 = 327809UL;
- v49 = 4;
- v50 = 4096;
+ v49 = 4UL;
+ v50 = 4096UL;
v51 = ((u(*)())v46)(v47, v48, v49, v50);
+ v51;
v52 = (u)zas_modri;
v53 = vc;
- v54 = 199;
- v55 = 0;
- v56 = 131;
+ v54 = 199UL;
+ v55 = 0UL;
+ v56 = 131UL;
v57 = ((u(*)())v52)(v53, v54, v55, v56);
+ v57;
v58 = (u)zas_modri;
v59 = vc;
- v60 = 199;
- v61 = 2;
- v62 = 0;
+ v60 = 199UL;
+ v61 = 2UL;
+ v62 = 0UL;
v63 = ((u(*)())v58)(v59, v60, v61, v62);
+ v63;
v64 = (u)zas_modrm;
v65 = vc;
- v66 = 137;
- v67 = 0;
- v68 = 4;
- v69 = 0;
- v70 = 0;
- v71 = 0;
+ v66 = 137UL;
+ v67 = 0UL;
+ v68 = 4UL;
+ v69 = 0UL;
+ v70 = 0UL;
+ v71 = 0UL;
v72 = ((u(*)())v64)(v65, v66, v67, v68, v69, v70, v71);
+ v72;
v73 = (u)zas_modrm;
v74 = vc;
- v75 = 137;
- v76 = 2;
- v77 = 4;
- v78 = 0;
- v79 = 0;
- v80 = 4;
+ v75 = 137UL;
+ v76 = 2UL;
+ v77 = 4UL;
+ v78 = 0UL;
+ v79 = 0UL;
+ v80 = 4UL;
v81 = ((u(*)())v73)(v74, v75, v76, v77, v78, v79, v80);
+ v81;
v82 = (u)zas_modrm;
v83 = vc;
- v84 = 137;
- v85 = 0;
- v86 = 4;
- v87 = 0;
- v88 = 0;
- v89 = 4080;
+ v84 = 137UL;
+ v85 = 0UL;
+ v86 = 4UL;
+ v87 = 0UL;
+ v88 = 0UL;
+ v89 = 510UL * 8UL + 0UL;
v90 = ((u(*)())v82)(v83, v84, v85, v86, v87, v88, v89);
+ v90;
v91 = (u)zas_modrm;
v92 = vc;
- v93 = 137;
- v94 = 2;
- v95 = 4;
- v96 = 0;
- v97 = 0;
- v98 = 4084;
+ v93 = 137UL;
+ v94 = 2UL;
+ v95 = 4UL;
+ v96 = 0UL;
+ v97 = 0UL;
+ v98 = 510UL * 8UL + 4UL;
v99 = ((u(*)())v91)(v92, v93, v94, v95, v96, v97, v98);
+ v99;
v100 = (u)zas_modrr;
v101 = vc;
- v102 = 139;
- v103 = 0;
- v104 = 4;
+ v102 = 139UL;
+ v103 = 0UL;
+ v104 = 4UL;
v105 = ((u(*)())v100)(v101, v102, v103, v104);
+ v105;
v106 = (u)zas_modri;
v107 = vc;
v108 = 327809UL;
- v109 = 4;
- v110 = 4096;
+ v109 = 4UL;
+ v110 = 4096UL;
v111 = ((u(*)())v106)(v107, v108, v109, v110);
+ v111;
v112 = (u)zas_modri;
v113 = vc;
v114 = 65665UL;
- v115 = 0;
- v116 = 3;
+ v115 = 0UL;
+ v116 = 3UL;
v117 = ((u(*)())v112)(v113, v114, v115, v116);
+ v117;
v118 = (u)zas_modri;
v119 = vc;
- v120 = 199;
- v121 = 2;
- v122 = 0;
+ v120 = 199UL;
+ v121 = 2UL;
+ v122 = 0UL;
v123 = ((u(*)())v118)(v119, v120, v121, v122);
+ v123;
v124 = (u)zas_modrm;
v125 = vc;
- v126 = 137;
- v127 = 0;
- v128 = 4;
- v129 = 0;
- v130 = 0;
- v131 = 0;
+ v126 = 137UL;
+ v127 = 0UL;
+ v128 = 4UL;
+ v129 = 0UL;
+ v130 = 0UL;
+ v131 = 0UL;
v132 = ((u(*)())v124)(v125, v126, v127, v128, v129, v130, v131);
+ v132;
v133 = (u)zas_modrm;
v134 = vc;
- v135 = 137;
- v136 = 2;
- v137 = 4;
- v138 = 0;
- v139 = 0;
- v140 = 4;
+ v135 = 137UL;
+ v136 = 2UL;
+ v137 = 4UL;
+ v138 = 0UL;
+ v139 = 0UL;
+ v140 = 4UL;
v141 = ((u(*)())v133)(v134, v135, v136, v137, v138, v139, v140);
+ v141;
v142 = (u)zas_modrm;
v143 = vc;
- v144 = 137;
- v145 = 0;
- v146 = 4;
- v147 = 0;
- v148 = 0;
- v149 = 4088;
+ v144 = 137UL;
+ v145 = 0UL;
+ v146 = 4UL;
+ v147 = 0UL;
+ v148 = 0UL;
+ v149 = 511UL * 8UL + 0UL;
v150 = ((u(*)())v142)(v143, v144, v145, v146, v147, v148, v149);
+ v150;
v151 = (u)zas_modrm;
v152 = vc;
- v153 = 137;
- v154 = 2;
- v155 = 4;
- v156 = 0;
- v157 = 0;
- v158 = 4092;
+ v153 = 137UL;
+ v154 = 2UL;
+ v155 = 4UL;
+ v156 = 0UL;
+ v157 = 0UL;
+ v158 = 511UL * 8UL + 4UL;
v159 = ((u(*)())v151)(v152, v153, v154, v155, v156, v157, v158);
+ v159;
v160 = (u)zas_modrr;
v161 = vc;
- v162 = 3874;
- v163 = 3;
- v164 = 4;
+ v162 = 3874UL;
+ v163 = 3UL;
+ v164 = 4UL;
v165 = ((u(*)())v160)(v161, v162, v163, v164);
+ v165;
v166 = (u)zas_modri;
v167 = vc;
v168 = 327809UL;
- v169 = 4;
- v170 = 64;
+ v169 = 4UL;
+ v170 = 64UL;
v171 = ((u(*)())v166)(v167, v168, v169, v170);
+ v171;
v172 = (u)zas_modrr;
v173 = vc;
- v174 = 139;
- v175 = 5;
- v176 = 4;
+ v174 = 139UL;
+ v175 = 5UL;
+ v176 = 4UL;
v177 = ((u(*)())v172)(v173, v174, v175, v176);
+ v177;
v178 = (u)zas_modri;
v179 = vc;
- v180 = 199;
- v181 = 0;
- v182 = 0;
+ v180 = 199UL;
+ v181 = 0UL;
+ v182 = 0UL;
v183 = ((u(*)())v178)(v179, v180, v181, v182);
+ v183;
v184 = (u)zas_modrm;
v185 = vc;
- v186 = 137;
- v187 = 0;
- v188 = 5;
- v189 = 0;
- v190 = 0;
- v191 = 8;
+ v186 = 137UL;
+ v187 = 0UL;
+ v188 = 5UL;
+ v189 = 0UL;
+ v190 = 0UL;
+ v191 = 8UL;
v192 = ((u(*)())v184)(v185, v186, v187, v188, v189, v190, v191);
+ v192;
v193 = (u)zas_modri;
v194 = vc;
- v195 = 199;
- v196 = 0;
- v197 = 0;
+ v195 = 199UL;
+ v196 = 0UL;
+ v197 = 0UL;
v198 = ((u(*)())v193)(v194, v195, v196, v197);
+ v198;
v199 = (u)zas_modrm;
v200 = vc;
- v201 = 137;
- v202 = 0;
- v203 = 5;
- v204 = 0;
- v205 = 0;
- v206 = 12;
+ v201 = 137UL;
+ v202 = 0UL;
+ v203 = 5UL;
+ v204 = 0UL;
+ v205 = 0UL;
+ v206 = 12UL;
v207 = ((u(*)())v199)(v200, v201, v202, v203, v204, v205, v206);
+ v207;
v208 = (u)zas_modri;
v209 = vc;
- v210 = 199;
- v211 = 0;
- v212 = 0;
+ v210 = 199UL;
+ v211 = 0UL;
+ v212 = 0UL;
v213 = ((u(*)())v208)(v209, v210, v211, v212);
+ v213;
v214 = (u)zas_modrm;
v215 = vc;
- v216 = 137;
- v217 = 0;
- v218 = 5;
- v219 = 0;
- v220 = 0;
- v221 = 16;
+ v216 = 137UL;
+ v217 = 0UL;
+ v218 = 5UL;
+ v219 = 0UL;
+ v220 = 0UL;
+ v221 = 16UL;
v222 = ((u(*)())v214)(v215, v216, v217, v218, v219, v220, v221);
+ v222;
v223 = (u)zas_modri;
v224 = vc;
- v225 = 199;
- v226 = 0;
+ v225 = 199UL;
+ v226 = 0UL;
v227 = 2136064UL;
v228 = ((u(*)())v223)(v224, v225, v226, v227);
+ v228;
v229 = (u)zas_modrm;
v230 = vc;
- v231 = 137;
- v232 = 0;
- v233 = 5;
- v234 = 0;
- v235 = 0;
- v236 = 20;
+ v231 = 137UL;
+ v232 = 0UL;
+ v233 = 5UL;
+ v234 = 0UL;
+ v235 = 0UL;
+ v236 = 20UL;
v237 = ((u(*)())v229)(v230, v231, v232, v233, v234, v235, v236);
+ v237;
v238 = (u)zas_modri;
v239 = vc;
- v240 = 199;
- v241 = 0;
- v242 = 0;
+ v240 = 199UL;
+ v241 = 0UL;
+ v242 = 0UL;
v243 = ((u(*)())v238)(v239, v240, v241, v242);
+ v243;
v244 = (u)zas_modrm;
v245 = vc;
- v246 = 137;
- v247 = 0;
- v248 = 5;
- v249 = 0;
- v250 = 0;
- v251 = 24;
+ v246 = 137UL;
+ v247 = 0UL;
+ v248 = 5UL;
+ v249 = 0UL;
+ v250 = 0UL;
+ v251 = 24UL;
v252 = ((u(*)())v244)(v245, v246, v247, v248, v249, v250, v251);
+ v252;
v253 = (u)zas_modri;
v254 = vc;
- v255 = 199;
- v256 = 0;
+ v255 = 199UL;
+ v256 = 0UL;
v257 = 37376UL;
v258 = ((u(*)())v253)(v254, v255, v256, v257);
+ v258;
v259 = (u)zas_modrm;
v260 = vc;
- v261 = 137;
- v262 = 0;
- v263 = 5;
- v264 = 0;
- v265 = 0;
- v266 = 28;
+ v261 = 137UL;
+ v262 = 0UL;
+ v263 = 5UL;
+ v264 = 0UL;
+ v265 = 0UL;
+ v266 = 28UL;
v267 = ((u(*)())v259)(v260, v261, v262, v263, v264, v265, v266);
+ v267;
v268 = (u)zas_modri;
v269 = vc;
- v270 = 199;
- v271 = 0;
- v272 = 23;
+ v270 = 199UL;
+ v271 = 0UL;
+ v272 = 23UL;
v273 = ((u(*)())v268)(v269, v270, v271, v272);
+ v273;
v274 = (u)zas_modrm;
v275 = vc;
- v276 = 137;
- v277 = 0;
- v278 = 5;
- v279 = 0;
- v280 = 0;
- v281 = 0;
+ v276 = 137UL;
+ v277 = 0UL;
+ v278 = 5UL;
+ v279 = 0UL;
+ v280 = 0UL;
+ v281 = 0UL;
v282 = ((u(*)())v274)(v275, v276, v277, v278, v279, v280, v281);
+ v282;
v283 = (u)zas_modrm;
v284 = vc;
- v285 = 141;
- v286 = 0;
- v287 = 5;
- v288 = 0;
- v289 = 0;
- v290 = 8;
+ v285 = 141UL;
+ v286 = 0UL;
+ v287 = 5UL;
+ v288 = 0UL;
+ v289 = 0UL;
+ v290 = 8UL;
v291 = ((u(*)())v283)(v284, v285, v286, v287, v288, v289, v290);
+ v291;
v292 = (u)zas_modrm;
v293 = vc;
- v294 = 137;
- v295 = 0;
- v296 = 5;
- v297 = 0;
- v298 = 0;
- v299 = 2;
+ v294 = 137UL;
+ v295 = 0UL;
+ v296 = 5UL;
+ v297 = 0UL;
+ v298 = 0UL;
+ v299 = 2UL;
v300 = ((u(*)())v292)(v293, v294, v295, v296, v297, v298, v299);
+ v300;
v301 = (u)zas_modm;
v302 = vc;
v303 = 134913UL;
- v304 = 5;
- v305 = 0;
- v306 = 0;
- v307 = 0;
+ v304 = 5UL;
+ v305 = 0UL;
+ v306 = 0UL;
+ v307 = 0UL;
v308 = ((u(*)())v301)(v302, v303, v304, v305, v306, v307);
+ v308;
v309 = (u)zas_modri;
v310 = vc;
- v311 = 199;
- v312 = 0;
- v313 = 0;
+ v311 = 199UL;
+ v312 = 0UL;
+ v313 = 0UL;
v314 = ((u(*)())v309)(v310, v311, v312, v313);
+ v314;
v315 = (u)zas_modr;
v316 = vc;
v317 = 134912UL;
- v318 = 0;
+ v318 = 0UL;
v319 = ((u(*)())v315)(v316, v317, v318);
+ v319;
v320 = (u)zas_modm;
v321 = vc;
v322 = 200449UL;
- v323 = 5;
- v324 = 0;
- v325 = 0;
- v326 = 8;
+ v323 = 5UL;
+ v324 = 0UL;
+ v325 = 0UL;
+ v326 = 8UL;
v327 = ((u(*)())v320)(v321, v322, v323, v324, v325, v326);
+ v327;
v328 = (u)zas_modri;
v329 = vc;
- v330 = 199;
- v331 = 0;
- v332 = 160;
+ v330 = 199UL;
+ v331 = 0UL;
+ v332 = 160UL;
v333 = ((u(*)())v328)(v329, v330, v331, v332);
+ v333;
v334 = (u)zas_modrr;
v335 = vc;
- v336 = 3874;
- v337 = 4;
- v338 = 0;
+ v336 = 3874UL;
+ v337 = 4UL;
+ v338 = 0UL;
v339 = ((u(*)())v334)(v335, v336, v337, v338);
+ v339;
v340 = (u)zas_modri;
v341 = vc;
- v342 = 199;
- v343 = 1;
- v344 = -1073741696UL;
+ v342 = 199UL;
+ v343 = 1UL;
+ v344 = (-1UL << 32UL) + (192UL << 24UL) + 128UL;
v345 = ((u(*)())v340)(v341, v342, v343, v344);
+ v345;
v346 = (u)zas_op;
v347 = vc;
- v348 = 3890;
+ v348 = 3890UL;
v349 = ((u(*)())v346)(v347, v348);
+ v349;
v350 = (u)zas_modri;
v351 = vc;
v352 = 65665UL;
- v353 = 0;
- v354 = 256;
+ v353 = 0UL;
+ v354 = 256UL;
v355 = ((u(*)())v350)(v351, v352, v353, v354);
+ v355;
v356 = (u)zas_op;
v357 = vc;
- v358 = 3888;
+ v358 = 3888UL;
v359 = ((u(*)())v356)(v357, v358);
+ v359;
v360 = (u)zas_modrr;
v361 = vc;
- v362 = 3872;
- v363 = 0;
- v364 = 0;
+ v362 = 3872UL;
+ v363 = 0UL;
+ v364 = 0UL;
v365 = ((u(*)())v360)(v361, v362, v363, v364);
+ v365;
v366 = (u)zas_modri;
v367 = vc;
v368 = 65665UL;
- v369 = 0;
- v370 = -2147483647UL;
+ v369 = 0UL;
+ v370 = -2147483648UL | 1UL;
v371 = ((u(*)())v366)(v367, v368, v369, v370);
+ v371;
v372 = (u)zas_modrr;
v373 = vc;
- v374 = 3874;
- v375 = 0;
- v376 = 0;
+ v374 = 3874UL;
+ v375 = 0UL;
+ v376 = 0UL;
v377 = ((u(*)())v372)(v373, v374, v375, v376);
+ v377;
v378 = (u)zas_modri;
v379 = vc;
- v380 = 199;
- v381 = 0;
- v382 = 0;
+ v380 = 199UL;
+ v381 = 0UL;
+ v382 = 0UL;
v383 = ((u(*)())v378)(v379, v380, v381, v382);
+ v383;
v384 = (u)zas_opr;
v385 = vc;
- v386 = 80;
- v387 = 0;
+ v386 = 80UL;
+ v387 = 0UL;
v388 = ((u(*)())v384)(v385, v386, v387);
+ v388;
v389 = (u)zas_modri;
v390 = vc;
- v391 = 199;
- v392 = 0;
- v393 = 8;
+ v391 = 199UL;
+ v392 = 0UL;
+ v393 = 8UL;
v394 = ((u(*)())v389)(v390, v391, v392, v393);
+ v394;
v395 = (u)zas_opr;
v396 = vc;
- v397 = 80;
- v398 = 0;
+ v397 = 80UL;
+ v398 = 0UL;
v399 = ((u(*)())v395)(v396, v397, v398);
+ v399;
v400 = (u)zas_jmp;
v401 = vc;
- v402 = 232;
+ v402 = 232UL;
v403 = vdo_iret;
v404 = ((u(*)())v400)(v401, v402, v403);
- *(u*)(vc + 48) = 0;
+ v404;
+ *(u*)(vc + 48UL) = 0UL;
v405 = (u)zas_jmp;
v406 = vc;
- v407 = 232;
+ v407 = 232UL;
v408 = vdo_ret;
v409 = ((u(*)())v405)(v406, v407, v408);
+ v409;
v410 = (u)zas_modri;
v411 = vc;
v412 = 65665UL;
- v413 = 5;
+ v413 = 5UL;
v414 = -2147483648UL;
v415 = ((u(*)())v410)(v411, v412, v413, v414);
+ v415;
v416 = (u)zas_modri;
v417 = vc;
- v418 = 199;
- v419 = 0;
- v420 = 23;
+ v418 = 199UL;
+ v419 = 0UL;
+ v420 = 23UL;
v421 = ((u(*)())v416)(v417, v418, v419, v420);
+ v421;
v422 = (u)zas_modrm;
v423 = vc;
- v424 = 137;
- v425 = 0;
- v426 = 5;
- v427 = 0;
- v428 = 0;
- v429 = 0;
+ v424 = 137UL;
+ v425 = 0UL;
+ v426 = 5UL;
+ v427 = 0UL;
+ v428 = 0UL;
+ v429 = 0UL;
v430 = ((u(*)())v422)(v423, v424, v425, v426, v427, v428, v429);
+ v430;
v431 = (u)zas_modrm;
v432 = vc;
- v433 = 141;
- v434 = 0;
- v435 = 5;
- v436 = 0;
- v437 = 0;
- v438 = 8;
+ v433 = 141UL;
+ v434 = 0UL;
+ v435 = 5UL;
+ v436 = 0UL;
+ v437 = 0UL;
+ v438 = 8UL;
v439 = ((u(*)())v431)(v432, v433, v434, v435, v436, v437, v438);
+ v439;
v440 = (u)zas_modrm;
v441 = vc;
- v442 = 137;
- v443 = 0;
- v444 = 5;
- v445 = 0;
- v446 = 0;
- v447 = 2;
+ v442 = 137UL;
+ v443 = 0UL;
+ v444 = 5UL;
+ v445 = 0UL;
+ v446 = 0UL;
+ v447 = 2UL;
v448 = ((u(*)())v440)(v441, v442, v443, v444, v445, v446, v447);
+ v448;
v449 = (u)zas_modm;
v450 = vc;
v451 = 134913UL;
- v452 = 5;
- v453 = 0;
- v454 = 0;
- v455 = 0;
+ v452 = 5UL;
+ v453 = 0UL;
+ v454 = 0UL;
+ v455 = 0UL;
v456 = ((u(*)())v449)(v450, v451, v452, v453, v454, v455);
+ v456;
v457 = (u)zas_modri;
v458 = vc;
- v459 = 199;
- v460 = 0;
- v461 = 16;
+ v459 = 199UL;
+ v460 = 0UL;
+ v461 = 16UL;
v462 = ((u(*)())v457)(v458, v459, v460, v461);
+ v462;
v463 = (u)zas_modrr;
v464 = vc;
- v465 = 142;
- v466 = 0;
- v467 = 0;
+ v465 = 142UL;
+ v466 = 0UL;
+ v467 = 0UL;
v468 = ((u(*)())v463)(v464, v465, v466, v467);
+ v468;
v469 = (u)zas_modrr;
v470 = vc;
- v471 = 142;
- v472 = 3;
- v473 = 0;
+ v471 = 142UL;
+ v472 = 3UL;
+ v473 = 0UL;
v474 = ((u(*)())v469)(v470, v471, v472, v473);
+ v474;
v475 = (u)zas_modrr;
v476 = vc;
- v477 = 142;
- v478 = 4;
- v479 = 0;
+ v477 = 142UL;
+ v478 = 4UL;
+ v479 = 0UL;
v480 = ((u(*)())v475)(v476, v477, v478, v479);
+ v480;
v481 = (u)zas_modrr;
v482 = vc;
- v483 = 142;
- v484 = 5;
- v485 = 0;
+ v483 = 142UL;
+ v484 = 5UL;
+ v485 = 0UL;
v486 = ((u(*)())v481)(v482, v483, v484, v485);
+ v486;
v487 = (u)zas_modrr;
v488 = vc;
- v489 = 142;
- v490 = 2;
- v491 = 0;
+ v489 = 142UL;
+ v490 = 2UL;
+ v491 = 0UL;
v492 = ((u(*)())v487)(v488, v489, v490, v491);
+ v492;
v493 = (u)zas_modrr;
v494 = vc;
- v495 = 139;
- v496 = 4;
- v497 = 4;
+ v495 = 139UL;
+ v496 = 4UL;
+ v497 = 4UL;
v498 = ((u(*)())v493)(v494, v495, v496, v497);
+ v498;
v499 = (u)zas_modri;
v500 = vc;
v501 = 65665UL;
- v502 = 4;
+ v502 = 4UL;
v503 = -2147483648UL;
v504 = ((u(*)())v499)(v500, v501, v502, v503);
+ v504;
v505 = (u)zas_modri;
v506 = vc;
- v507 = 199;
- v508 = 0;
- v509 = 0;
+ v507 = 199UL;
+ v508 = 0UL;
+ v509 = 0UL;
v510 = ((u(*)())v505)(v506, v507, v508, v509);
+ v510;
v511 = (u)zas_modrm;
v512 = vc;
- v513 = 141;
- v514 = 7;
- v515 = 5;
- v516 = 0;
- v517 = 0;
- v518 = 64;
+ v513 = 141UL;
+ v514 = 7UL;
+ v515 = 5UL;
+ v516 = 0UL;
+ v517 = 0UL;
+ v518 = 64UL;
v519 = ((u(*)())v511)(v512, v513, v514, v515, v516, v517, v518);
+ v519;
v520 = (u)zas_modrm;
v521 = vc;
- v522 = 137;
- v523 = 0;
- v524 = 7;
- v525 = 0;
- v526 = 0;
- v527 = 4096;
+ v522 = 137UL;
+ v523 = 0UL;
+ v524 = 7UL;
+ v525 = 0UL;
+ v526 = 0UL;
+ v527 = 4096UL;
v528 = ((u(*)())v520)(v521, v522, v523, v524, v525, v526, v527);
+ v528;
v529 = (u)zas_modrm;
v530 = vc;
- v531 = 137;
- v532 = 0;
- v533 = 7;
- v534 = 0;
- v535 = 0;
- v536 = 0;
+ v531 = 137UL;
+ v532 = 0UL;
+ v533 = 7UL;
+ v534 = 0UL;
+ v535 = 0UL;
+ v536 = 0UL;
v537 = ((u(*)())v529)(v530, v531, v532, v533, v534, v535, v536);
+ v537;
v538 = (u)zas_modri;
v539 = vc;
v540 = 262273UL;
- v541 = 7;
+ v541 = 7UL;
v542 = 2147483647UL;
v543 = ((u(*)())v538)(v539, v540, v541, v542);
+ v543;
v544 = (u)zas_modrr;
v545 = vc;
- v546 = 3874;
- v547 = 3;
- v548 = 7;
+ v546 = 3874UL;
+ v547 = 3UL;
+ v548 = 7UL;
v549 = ((u(*)())v544)(v545, v546, v547, v548);
+ v549;
v550 = (u)zas_jmp;
v551 = vc;
- v552 = 233;
+ v552 = 233UL;
v553 = vdone;
v554 = ((u(*)())v550)(v551, v552, v553);
+ v554;
v555 = (u)zfixup_label;
v556 = vc;
v557 = vhang;
v558 = ((u(*)())v555)(v556, v557);
+ v558;
v559 = (u)zas_op;
v560 = vc;
- v561 = 250;
+ v561 = 250UL;
v562 = ((u(*)())v559)(v560, v561);
+ v562;
v563 = (u)zas_op;
v564 = vc;
- v565 = 244;
+ v565 = 244UL;
v566 = ((u(*)())v563)(v564, v565);
+ v566;
v567 = (u)zas_jmp;
v568 = vc;
- v569 = 233;
+ v569 = 233UL;
v570 = vhang;
v571 = ((u(*)())v567)(v568, v569, v570);
+ v571;
v572 = (u)zfixup_label;
v573 = vc;
v574 = vdo_iret;
v575 = ((u(*)())v572)(v573, v574);
+ v575;
v576 = (u)zas_op;
v577 = vc;
- v578 = 207;
+ v578 = 207UL;
v579 = ((u(*)())v576)(v577, v578);
+ v579;
v580 = (u)zfixup_label;
v581 = vc;
v582 = vdo_ret;
v583 = ((u(*)())v580)(v581, v582);
+ v583;
v584 = (u)zas_opr;
v585 = vc;
- v586 = 88;
- v587 = 0;
+ v586 = 88UL;
+ v587 = 0UL;
v588 = ((u(*)())v584)(v585, v586, v587);
+ v588;
v589 = (u)zas_modri;
v590 = vc;
v591 = 65665UL;
- v592 = 0;
+ v592 = 0UL;
v593 = -2147483648UL;
v594 = ((u(*)())v589)(v590, v591, v592, v593);
+ v594;
v595 = (u)zas_opr;
v596 = vc;
- v597 = 80;
- v598 = 0;
+ v597 = 80UL;
+ v598 = 0UL;
v599 = ((u(*)())v595)(v596, v597, v598);
+ v599;
v600 = (u)zas_op;
v601 = vc;
- v602 = 195;
+ v602 = 195UL;
v603 = ((u(*)())v600)(v601, v602);
+ v603;
v604 = (u)zfixup_label;
v605 = vc;
v606 = vdone;
v607 = ((u(*)())v604)(v605, v606);
+ v607;
v608 = (u)zas_modrr;
v609 = vc;
- v610 = 51;
- v611 = 5;
- v612 = 5;
+ v610 = 51UL;
+ v611 = 5UL;
+ v612 = 5UL;
v613 = ((u(*)())v608)(v609, v610, v611, v612);
+ v613;
v614 = (u)zas_modrr;
v615 = vc;
- v616 = 139;
- v617 = 7;
- v618 = 3;
+ v616 = 139UL;
+ v617 = 7UL;
+ v618 = 3UL;
v619 = ((u(*)())v614)(v615, v616, v617, v618);
+ v619;
v620 = (u)zas_opr;
v621 = vc;
- v622 = 80;
- v623 = 5;
+ v622 = 80UL;
+ v623 = 5UL;
v624 = ((u(*)())v620)(v621, v622, v623);
- return 0;
+ v624;
+ return 0UL;
}
u zemit_sections(u vc) {
u vat = 0;
@@ -11279,520 +12064,617 @@ u zemit_sections(u vc) {
v6 = (u)zadd_symbol;
v7 = vc;
v8 = (u)"";
- v9 = 0;
+ v9 = 0UL;
v10 = ((u(*)())v6)(v7, v8, v9);
+ v10;
v11 = (u)zfind_section;
v12 = vc;
v13 = (u)"";
v14 = ((u(*)())v11)(v12, v13);
vs = v14;
- *(u*)(vs + 16) = 0;
- *(u*)(vs + 24) = 0;
- vhere = *(u*)(vc + 24);
+ *(u*)(vs + 16UL) = 0UL;
+ *(u*)(vs + 24UL) = 0UL;
+ vhere = *(u*)(vc + 24UL);
v15 = (u)zemit_align;
v16 = vc;
- v17 = 4096;
- v18 = 144;
+ v17 = 4096UL;
+ v18 = 144UL;
v19 = ((u(*)())v15)(v16, v17, v18);
+ v19;
v20 = (u)zadd_section;
v21 = vc;
v22 = (u)".rodata";
- v23 = 1;
+ v23 = 1UL;
v24 = ((u(*)())v20)(v21, v22, v23);
+ v24;
v25 = (u)zfind_section;
v26 = vc;
v27 = (u)".text";
v28 = ((u(*)())v25)(v26, v27);
vs = v28;
- *(u*)(vs + 24) = vhere;
+ *(u*)(vs + 24UL) = vhere;
v29 = (u)zemit_blobs;
v30 = vc;
- v31 = *(u*)(vc + 120);
+ v31 = *(u*)(vc + 120UL);
v32 = ((u(*)())v29)(v30, v31);
+ v32;
v33 = (u)zemit_align;
v34 = vc;
- v35 = 4096;
- v36 = 0;
+ v35 = 4096UL;
+ v36 = 0UL;
v37 = ((u(*)())v33)(v34, v35, v36);
+ v37;
v38 = (u)zadd_section;
v39 = vc;
v40 = (u)".strtab";
- v41 = 3;
+ v41 = 3UL;
v42 = ((u(*)())v38)(v39, v40, v41);
- vy = *(u*)(vc + 56);
+ v42;
+ vy = *(u*)(vc + 56UL);
b9: if (!vy) goto b15;
- v43 = 0;
-b16: if (!v43) goto b11;
+ v43 = 0UL;
+b16: if (!v43) goto b13;
v48 = (u)zadd_section;
v49 = vc;
v50 = (u)".symtab";
- v51 = 2;
+ v51 = 2UL;
v52 = ((u(*)())v48)(v49, v50, v51);
- vy = *(u*)(vc + 56);
+ v52;
+ vy = *(u*)(vc + 56UL);
b19: if (!vy) goto b25;
- v53 = 0;
-b26: if (!v53) goto b21;
+ v53 = 0UL;
+b26: if (!v53) goto b23;
v150 = (u)zfind_section;
v151 = vc;
v152 = (u)".strtab";
v153 = ((u(*)())v150)(v151, v152);
vs = v153;
- vn = *(u*)(vs + 32);
+ vn = *(u*)(vs + 32UL);
v154 = (u)zfind_section;
v155 = vc;
v156 = (u)".symtab";
v157 = ((u(*)())v154)(v155, v156);
vs = v157;
- *(u*)(vs + 56) = vn;
- *(u*)(vs + 64) = 24;
+ *(u*)(vs + 56UL) = vn;
+ *(u*)(vs + 64UL) = 24UL;
v158 = (u)zadd_section;
v159 = vc;
v160 = (u)".shstrtab";
- v161 = 3;
+ v161 = 3UL;
v162 = ((u(*)())v158)(v159, v160, v161);
- vs = *(u*)(vc + 64);
- vn = 0;
+ v162;
+ vs = *(u*)(vc + 64UL);
+ vn = 0UL;
b63: if (!vs) goto b69;
- v163 = 0;
-b70: if (!v163) goto b65;
+ v163 = 0UL;
+b70: if (!v163) goto b67;
v168 = (u)zfind_section;
v169 = vc;
v170 = (u)".shstrtab";
v171 = ((u(*)())v168)(v169, v170);
vs = v171;
- *(u*)(vs + 24) = *(u*)(vc + 24);
+ *(u*)(vs + 24UL) = *(u*)(vc + 24UL);
v172 = (u)zemit_align;
v173 = vc;
- v174 = 16;
- v175 = 144;
+ v174 = 16UL;
+ v175 = 144UL;
v176 = ((u(*)())v172)(v173, v174, v175);
- vat = *(u*)(vc + 24);
- vs = *(u*)(vc + 64);
+ v176;
+ vat = *(u*)(vc + 24UL);
+ vs = *(u*)(vc + 64UL);
b74: if (!vs) goto b80;
- v177 = 0;
-b81: if (!v177) goto b76;
+ v177 = 0UL;
+b81: if (!v177) goto b78;
return vat;
-b76: vn = *(u*)(vs + 40);
+b78: vn = *(u*)(vs + 40UL);
v178 = (u)zas_emit;
v179 = vc;
v180 = vn;
v181 = ((u(*)())v178)(v179, v180);
+ v181;
v182 = (u)zas_emit;
v183 = vc;
- v184 = vn >> 8;
+ v184 = vn >> 8UL;
v185 = ((u(*)())v182)(v183, v184);
+ v185;
v186 = (u)zas_emit;
v187 = vc;
- v188 = vn >> 16;
+ v188 = vn >> 16UL;
v189 = ((u(*)())v186)(v187, v188);
+ v189;
v190 = (u)zas_emit;
v191 = vc;
- v192 = vn >> 24;
+ v192 = vn >> 24UL;
v193 = ((u(*)())v190)(v191, v192);
- vn = *(u*)(vs + 48);
+ v193;
+ vn = *(u*)(vs + 48UL);
v194 = (u)zas_emit;
v195 = vc;
v196 = vn;
v197 = ((u(*)())v194)(v195, v196);
+ v197;
v198 = (u)zas_emit;
v199 = vc;
- v200 = vn >> 8;
+ v200 = vn >> 8UL;
v201 = ((u(*)())v198)(v199, v200);
+ v201;
v202 = (u)zas_emit;
v203 = vc;
- v204 = vn >> 16;
+ v204 = vn >> 16UL;
v205 = ((u(*)())v202)(v203, v204);
+ v205;
v206 = (u)zas_emit;
v207 = vc;
- v208 = vn >> 24;
+ v208 = vn >> 24UL;
v209 = ((u(*)())v206)(v207, v208);
+ v209;
v210 = (u)zstrcmp;
- v211 = *(u*)(vs + 8);
+ v211 = *(u*)(vs + 8UL);
v212 = (u)".text";
v213 = ((u(*)())v210)(v211, v212);
- if (v213 != 0) goto b92;
- vn = 6;
+ if (v213 != 0UL) goto b92;
+ vn = 6UL;
b90: v218 = (u)zas_emit;
v219 = vc;
v220 = vn;
v221 = ((u(*)())v218)(v219, v220);
+ v221;
v222 = (u)zas_emit;
v223 = vc;
- v224 = vn >> 8;
+ v224 = vn >> 8UL;
v225 = ((u(*)())v222)(v223, v224);
+ v225;
v226 = (u)zas_emit;
v227 = vc;
- v228 = vn >> 16;
+ v228 = vn >> 16UL;
v229 = ((u(*)())v226)(v227, v228);
+ v229;
v230 = (u)zas_emit;
v231 = vc;
- v232 = vn >> 24;
+ v232 = vn >> 24UL;
v233 = ((u(*)())v230)(v231, v232);
+ v233;
v234 = (u)zas_emit;
v235 = vc;
- v236 = vn >> 32;
+ v236 = vn >> 32UL;
v237 = ((u(*)())v234)(v235, v236);
+ v237;
v238 = (u)zas_emit;
v239 = vc;
- v240 = vn >> 40;
+ v240 = vn >> 40UL;
v241 = ((u(*)())v238)(v239, v240);
+ v241;
v242 = (u)zas_emit;
v243 = vc;
- v244 = vn >> 48;
+ v244 = vn >> 48UL;
v245 = ((u(*)())v242)(v243, v244);
+ v245;
v246 = (u)zas_emit;
v247 = vc;
- v248 = vn >> 56;
+ v248 = vn >> 56UL;
v249 = ((u(*)())v246)(v247, v248);
- if (*(u*)(vs + 16) != *(u*)(vs + 24)) goto b107;
- vn = 0;
+ v249;
+ if (*(u*)(vs + 16UL) != *(u*)(vs + 24UL)) goto b107;
+ vn = 0UL;
b105: v250 = (u)zas_emit;
v251 = vc;
v252 = vn;
v253 = ((u(*)())v250)(v251, v252);
+ v253;
v254 = (u)zas_emit;
v255 = vc;
- v256 = vn >> 8;
+ v256 = vn >> 8UL;
v257 = ((u(*)())v254)(v255, v256);
+ v257;
v258 = (u)zas_emit;
v259 = vc;
- v260 = vn >> 16;
+ v260 = vn >> 16UL;
v261 = ((u(*)())v258)(v259, v260);
+ v261;
v262 = (u)zas_emit;
v263 = vc;
- v264 = vn >> 24;
+ v264 = vn >> 24UL;
v265 = ((u(*)())v262)(v263, v264);
+ v265;
v266 = (u)zas_emit;
v267 = vc;
- v268 = vn >> 32;
+ v268 = vn >> 32UL;
v269 = ((u(*)())v266)(v267, v268);
+ v269;
v270 = (u)zas_emit;
v271 = vc;
- v272 = vn >> 40;
+ v272 = vn >> 40UL;
v273 = ((u(*)())v270)(v271, v272);
+ v273;
v274 = (u)zas_emit;
v275 = vc;
- v276 = vn >> 48;
+ v276 = vn >> 48UL;
v277 = ((u(*)())v274)(v275, v276);
+ v277;
v278 = (u)zas_emit;
v279 = vc;
- v280 = vn >> 56;
+ v280 = vn >> 56UL;
v281 = ((u(*)())v278)(v279, v280);
- vn = *(u*)(vs + 16);
+ v281;
+ vn = *(u*)(vs + 16UL);
v282 = (u)zas_emit;
v283 = vc;
v284 = vn;
v285 = ((u(*)())v282)(v283, v284);
+ v285;
v286 = (u)zas_emit;
v287 = vc;
- v288 = vn >> 8;
+ v288 = vn >> 8UL;
v289 = ((u(*)())v286)(v287, v288);
+ v289;
v290 = (u)zas_emit;
v291 = vc;
- v292 = vn >> 16;
+ v292 = vn >> 16UL;
v293 = ((u(*)())v290)(v291, v292);
+ v293;
v294 = (u)zas_emit;
v295 = vc;
- v296 = vn >> 24;
+ v296 = vn >> 24UL;
v297 = ((u(*)())v294)(v295, v296);
+ v297;
v298 = (u)zas_emit;
v299 = vc;
- v300 = vn >> 32;
+ v300 = vn >> 32UL;
v301 = ((u(*)())v298)(v299, v300);
+ v301;
v302 = (u)zas_emit;
v303 = vc;
- v304 = vn >> 40;
+ v304 = vn >> 40UL;
v305 = ((u(*)())v302)(v303, v304);
+ v305;
v306 = (u)zas_emit;
v307 = vc;
- v308 = vn >> 48;
+ v308 = vn >> 48UL;
v309 = ((u(*)())v306)(v307, v308);
+ v309;
v310 = (u)zas_emit;
v311 = vc;
- v312 = vn >> 56;
+ v312 = vn >> 56UL;
v313 = ((u(*)())v310)(v311, v312);
- vn = *(u*)(vs + 24) - *(u*)(vs + 16);
+ v313;
+ vn = *(u*)(vs + 24UL) - *(u*)(vs + 16UL);
v314 = (u)zas_emit;
v315 = vc;
v316 = vn;
v317 = ((u(*)())v314)(v315, v316);
+ v317;
v318 = (u)zas_emit;
v319 = vc;
- v320 = vn >> 8;
+ v320 = vn >> 8UL;
v321 = ((u(*)())v318)(v319, v320);
+ v321;
v322 = (u)zas_emit;
v323 = vc;
- v324 = vn >> 16;
+ v324 = vn >> 16UL;
v325 = ((u(*)())v322)(v323, v324);
+ v325;
v326 = (u)zas_emit;
v327 = vc;
- v328 = vn >> 24;
+ v328 = vn >> 24UL;
v329 = ((u(*)())v326)(v327, v328);
+ v329;
v330 = (u)zas_emit;
v331 = vc;
- v332 = vn >> 32;
+ v332 = vn >> 32UL;
v333 = ((u(*)())v330)(v331, v332);
+ v333;
v334 = (u)zas_emit;
v335 = vc;
- v336 = vn >> 40;
+ v336 = vn >> 40UL;
v337 = ((u(*)())v334)(v335, v336);
+ v337;
v338 = (u)zas_emit;
v339 = vc;
- v340 = vn >> 48;
+ v340 = vn >> 48UL;
v341 = ((u(*)())v338)(v339, v340);
+ v341;
v342 = (u)zas_emit;
v343 = vc;
- v344 = vn >> 56;
+ v344 = vn >> 56UL;
v345 = ((u(*)())v342)(v343, v344);
- vn = *(u*)(vs + 56);
+ v345;
+ vn = *(u*)(vs + 56UL);
v346 = (u)zas_emit;
v347 = vc;
v348 = vn;
v349 = ((u(*)())v346)(v347, v348);
+ v349;
v350 = (u)zas_emit;
v351 = vc;
- v352 = vn >> 8;
+ v352 = vn >> 8UL;
v353 = ((u(*)())v350)(v351, v352);
+ v353;
v354 = (u)zas_emit;
v355 = vc;
- v356 = vn >> 16;
+ v356 = vn >> 16UL;
v357 = ((u(*)())v354)(v355, v356);
+ v357;
v358 = (u)zas_emit;
v359 = vc;
- v360 = vn >> 24;
+ v360 = vn >> 24UL;
v361 = ((u(*)())v358)(v359, v360);
- if (*(u*)(vs + 48) != 2) goto b138;
- vn = 1;
+ v361;
+ if (*(u*)(vs + 48UL) != 2UL) goto b138;
+ vn = 1UL;
b136: v362 = (u)zas_emit;
v363 = vc;
v364 = vn;
v365 = ((u(*)())v362)(v363, v364);
+ v365;
v366 = (u)zas_emit;
v367 = vc;
- v368 = vn >> 8;
+ v368 = vn >> 8UL;
v369 = ((u(*)())v366)(v367, v368);
+ v369;
v370 = (u)zas_emit;
v371 = vc;
- v372 = vn >> 16;
+ v372 = vn >> 16UL;
v373 = ((u(*)())v370)(v371, v372);
+ v373;
v374 = (u)zas_emit;
v375 = vc;
- v376 = vn >> 24;
+ v376 = vn >> 24UL;
v377 = ((u(*)())v374)(v375, v376);
+ v377;
v378 = (u)zas_emit;
v379 = vc;
- v380 = 1;
+ v380 = 1UL;
v381 = ((u(*)())v378)(v379, v380);
+ v381;
v382 = (u)zas_emit;
v383 = vc;
- v384 = 0;
+ v384 = 0UL;
v385 = ((u(*)())v382)(v383, v384);
+ v385;
v386 = (u)zas_emit;
v387 = vc;
- v388 = 0;
+ v388 = 0UL;
v389 = ((u(*)())v386)(v387, v388);
+ v389;
v390 = (u)zas_emit;
v391 = vc;
- v392 = 0;
+ v392 = 0UL;
v393 = ((u(*)())v390)(v391, v392);
+ v393;
v394 = (u)zas_emit;
v395 = vc;
- v396 = 0;
+ v396 = 0UL;
v397 = ((u(*)())v394)(v395, v396);
+ v397;
v398 = (u)zas_emit;
v399 = vc;
- v400 = 0;
+ v400 = 0UL;
v401 = ((u(*)())v398)(v399, v400);
+ v401;
v402 = (u)zas_emit;
v403 = vc;
- v404 = 0;
+ v404 = 0UL;
v405 = ((u(*)())v402)(v403, v404);
+ v405;
v406 = (u)zas_emit;
v407 = vc;
- v408 = 0;
+ v408 = 0UL;
v409 = ((u(*)())v406)(v407, v408);
- vn = *(u*)(vs + 64);
+ v409;
+ vn = *(u*)(vs + 64UL);
v410 = (u)zas_emit;
v411 = vc;
v412 = vn;
v413 = ((u(*)())v410)(v411, v412);
+ v413;
v414 = (u)zas_emit;
v415 = vc;
- v416 = vn >> 8;
+ v416 = vn >> 8UL;
v417 = ((u(*)())v414)(v415, v416);
+ v417;
v418 = (u)zas_emit;
v419 = vc;
- v420 = vn >> 16;
+ v420 = vn >> 16UL;
v421 = ((u(*)())v418)(v419, v420);
+ v421;
v422 = (u)zas_emit;
v423 = vc;
- v424 = vn >> 24;
+ v424 = vn >> 24UL;
v425 = ((u(*)())v422)(v423, v424);
+ v425;
v426 = (u)zas_emit;
v427 = vc;
- v428 = vn >> 32;
+ v428 = vn >> 32UL;
v429 = ((u(*)())v426)(v427, v428);
+ v429;
v430 = (u)zas_emit;
v431 = vc;
- v432 = vn >> 40;
+ v432 = vn >> 40UL;
v433 = ((u(*)())v430)(v431, v432);
+ v433;
v434 = (u)zas_emit;
v435 = vc;
- v436 = vn >> 48;
+ v436 = vn >> 48UL;
v437 = ((u(*)())v434)(v435, v436);
+ v437;
v438 = (u)zas_emit;
v439 = vc;
- v440 = vn >> 56;
+ v440 = vn >> 56UL;
v441 = ((u(*)())v438)(v439, v440);
- vs = *(u*)vs;
+ v441;
+ vs = *(u*)(vs + 0UL);
goto b74;
-b138: vn = 0;
+b138: vn = 0UL;
goto b136;
-b107: vn = *(u*)(vs + 16) + 1048576UL;
+b107: vn = *(u*)(vs + 16UL) + 1048576UL;
goto b105;
b92: v214 = (u)zstrcmp;
- v215 = *(u*)(vs + 8);
+ v215 = *(u*)(vs + 8UL);
v216 = (u)".rodata";
v217 = ((u(*)())v214)(v215, v216);
- if (v217 != 0) goto b95;
- vn = 2;
+ if (v217 != 0UL) goto b95;
+ vn = 2UL;
goto b90;
-b95: vn = 0;
+b95: vn = 0UL;
goto b90;
-b80: v177 = 1;
+b80: v177 = 1UL;
goto b81;
-b65: *(u*)(vs + 40) = vn;
+b67: *(u*)(vs + 40UL) = vn;
v164 = (u)zemit_strtab_str;
v165 = vc;
- v166 = *(u*)(vs + 8);
+ v166 = *(u*)(vs + 8UL);
v167 = ((u(*)())v164)(v165, v166);
vn = vn + v167;
- vs = *(u*)vs;
+ vs = *(u*)(vs + 0UL);
goto b63;
-b69: v163 = 1;
+b69: v163 = 1UL;
goto b70;
-b21: vn = *(u*)(vy + 24);
+b23: vn = *(u*)(vy + 24UL);
v54 = (u)zas_emit;
v55 = vc;
v56 = vn;
v57 = ((u(*)())v54)(v55, v56);
+ v57;
v58 = (u)zas_emit;
v59 = vc;
- v60 = vn >> 8;
+ v60 = vn >> 8UL;
v61 = ((u(*)())v58)(v59, v60);
+ v61;
v62 = (u)zas_emit;
v63 = vc;
- v64 = vn >> 16;
+ v64 = vn >> 16UL;
v65 = ((u(*)())v62)(v63, v64);
+ v65;
v66 = (u)zas_emit;
v67 = vc;
- v68 = vn >> 24;
+ v68 = vn >> 24UL;
v69 = ((u(*)())v66)(v67, v68);
- if (!*(u*)(vy + 16)) goto b33;
- vn = 18;
+ v69;
+ if (!*(u*)(vy + 16UL)) goto b33;
+ vn = 18UL;
b31: v70 = (u)zas_emit;
v71 = vc;
v72 = vn;
v73 = ((u(*)())v70)(v71, v72);
+ v73;
v74 = (u)zas_emit;
v75 = vc;
- v76 = 0;
+ v76 = 0UL;
v77 = ((u(*)())v74)(v75, v76);
- if (!*(u*)(vy + 16)) goto b38;
- vn = 1;
+ v77;
+ if (!*(u*)(vy + 16UL)) goto b38;
+ vn = 1UL;
b36: v78 = (u)zas_emit;
v79 = vc;
v80 = vn;
v81 = ((u(*)())v78)(v79, v80);
+ v81;
v82 = (u)zas_emit;
v83 = vc;
- v84 = vn >> 8;
+ v84 = vn >> 8UL;
v85 = ((u(*)())v82)(v83, v84);
- if (!*(u*)(vy + 16)) goto b43;
- vn = *(u*)(*(u*)(vy + 16) + 8) + 1048576UL;
+ v85;
+ if (!*(u*)(vy + 16UL)) goto b43;
+ vn = *(u*)(*(u*)(vy + 16UL) + 8UL) + 1048576UL;
b41: v86 = (u)zas_emit;
v87 = vc;
v88 = vn;
v89 = ((u(*)())v86)(v87, v88);
+ v89;
v90 = (u)zas_emit;
v91 = vc;
- v92 = vn >> 8;
+ v92 = vn >> 8UL;
v93 = ((u(*)())v90)(v91, v92);
+ v93;
v94 = (u)zas_emit;
v95 = vc;
- v96 = vn >> 16;
+ v96 = vn >> 16UL;
v97 = ((u(*)())v94)(v95, v96);
+ v97;
v98 = (u)zas_emit;
v99 = vc;
- v100 = vn >> 24;
+ v100 = vn >> 24UL;
v101 = ((u(*)())v98)(v99, v100);
+ v101;
v102 = (u)zas_emit;
v103 = vc;
- v104 = vn >> 32;
+ v104 = vn >> 32UL;
v105 = ((u(*)())v102)(v103, v104);
+ v105;
v106 = (u)zas_emit;
v107 = vc;
- v108 = vn >> 40;
+ v108 = vn >> 40UL;
v109 = ((u(*)())v106)(v107, v108);
+ v109;
v110 = (u)zas_emit;
v111 = vc;
- v112 = vn >> 48;
+ v112 = vn >> 48UL;
v113 = ((u(*)())v110)(v111, v112);
+ v113;
v114 = (u)zas_emit;
v115 = vc;
- v116 = vn >> 56;
+ v116 = vn >> 56UL;
v117 = ((u(*)())v114)(v115, v116);
+ v117;
v118 = (u)zas_emit;
v119 = vc;
- v120 = 0;
+ v120 = 0UL;
v121 = ((u(*)())v118)(v119, v120);
+ v121;
v122 = (u)zas_emit;
v123 = vc;
- v124 = 0;
+ v124 = 0UL;
v125 = ((u(*)())v122)(v123, v124);
+ v125;
v126 = (u)zas_emit;
v127 = vc;
- v128 = 0;
+ v128 = 0UL;
v129 = ((u(*)())v126)(v127, v128);
+ v129;
v130 = (u)zas_emit;
v131 = vc;
- v132 = 0;
+ v132 = 0UL;
v133 = ((u(*)())v130)(v131, v132);
+ v133;
v134 = (u)zas_emit;
v135 = vc;
- v136 = 0;
+ v136 = 0UL;
v137 = ((u(*)())v134)(v135, v136);
+ v137;
v138 = (u)zas_emit;
v139 = vc;
- v140 = 0;
+ v140 = 0UL;
v141 = ((u(*)())v138)(v139, v140);
+ v141;
v142 = (u)zas_emit;
v143 = vc;
- v144 = 0;
+ v144 = 0UL;
v145 = ((u(*)())v142)(v143, v144);
+ v145;
v146 = (u)zas_emit;
v147 = vc;
- v148 = 0;
+ v148 = 0UL;
v149 = ((u(*)())v146)(v147, v148);
- vy = *(u*)vy;
+ v149;
+ vy = *(u*)(vy + 0UL);
goto b19;
-b43: vn = 0;
+b43: vn = 0UL;
goto b41;
-b38: vn = 0;
+b38: vn = 0UL;
goto b36;
-b33: vn = 0;
+b33: vn = 0UL;
goto b31;
-b25: v53 = 1;
+b25: v53 = 1UL;
goto b26;
-b11: *(u*)(vy + 24) = vn;
+b13: *(u*)(vy + 24UL) = vn;
v44 = (u)zemit_strtab_str;
v45 = vc;
- v46 = *(u*)(vy + 8);
+ v46 = *(u*)(vy + 8UL);
v47 = ((u(*)())v44)(v45, v46);
vn = vn + v47;
- vy = *(u*)vy;
+ vy = *(u*)(vy + 0UL);
goto b9;
-b15: v43 = 1;
+b15: v43 = 1UL;
goto b16;
}
u zemit_ssr(u vc) {
@@ -12326,588 +13208,657 @@ u zemit_ssr(u vc) {
v4 = vc;
v5 = (u)"global";
v6 = (u)"_save";
- v7 = 0;
+ v7 = 0UL;
v8 = ((u(*)())v3)(v4, v5, v6, v7);
vv = v8;
if (!vv) goto b10;
- v10 = 0;
+ v10 = 0UL;
b11: if (!v10) goto b6;
- v9 = 1;
-b8: if (!v9) goto b2;
+ v9 = 1UL;
+b8: if (!v9) goto b4;
v12 = (u)zcdie;
v13 = vc;
v14 = (u)"no _save";
v15 = ((u(*)())v12)(v13, v14);
+ v15;
b2: v16 = (u)zas_emit;
- v17 = *(u*)(vc + 48);
- v18 = 101;
+ v17 = *(u*)(vc + 48UL);
+ v18 = 101UL;
v19 = ((u(*)())v16)(v17, v18);
+ v19;
v20 = (u)zas_modra;
- v21 = *(u*)(vc + 48);
- v22 = 137;
- v23 = 4;
- v24 = *(u*)(vv + 168);
+ v21 = *(u*)(vc + 48UL);
+ v22 = 137UL;
+ v23 = 4UL;
+ v24 = *(u*)(vv + 168UL);
v25 = ((u(*)())v20)(v21, v22, v23, v24);
+ v25;
v26 = (u)zfind;
v27 = vc;
v28 = (u)"global";
v29 = (u)"curtask";
- v30 = 0;
+ v30 = 0UL;
v31 = ((u(*)())v26)(v27, v28, v29, v30);
vv = v31;
if (!vv) goto b28;
- v33 = 0;
+ v33 = 0UL;
b29: if (!v33) goto b24;
- v32 = 1;
-b26: if (!v32) goto b20;
+ v32 = 1UL;
+b26: if (!v32) goto b22;
v35 = (u)zcdie;
v36 = vc;
v37 = (u)"no global.curtask";
v38 = ((u(*)())v35)(v36, v37);
+ v38;
b20: v39 = (u)zas_emit;
- v40 = *(u*)(vc + 48);
- v41 = 101;
+ v40 = *(u*)(vc + 48UL);
+ v41 = 101UL;
v42 = ((u(*)())v39)(v40, v41);
+ v42;
v43 = (u)zas_modra;
- v44 = *(u*)(vc + 48);
- v45 = 139;
- v46 = 4;
- v47 = *(u*)(vv + 168);
+ v44 = *(u*)(vc + 48UL);
+ v45 = 139UL;
+ v46 = 4UL;
+ v47 = *(u*)(vv + 168UL);
v48 = ((u(*)())v43)(v44, v45, v46, v47);
+ v48;
v49 = (u)zfind;
v50 = vc;
v51 = (u)"task";
v52 = (u)"stack";
- v53 = 0;
+ v53 = 0UL;
v54 = ((u(*)())v49)(v50, v51, v52, v53);
vv = v54;
if (!vv) goto b46;
- v56 = 0;
+ v56 = 0UL;
b47: if (!v56) goto b42;
- v55 = 1;
-b44: if (!v55) goto b38;
+ v55 = 1UL;
+b44: if (!v55) goto b40;
v58 = (u)zcdie;
v59 = vc;
v60 = (u)"no task.stack";
v61 = ((u(*)())v58)(v59, v60);
+ v61;
b38: v62 = (u)zas_modrm;
- v63 = *(u*)(vc + 48);
- v64 = 139;
- v65 = 4;
- v66 = 4;
- v67 = 0;
- v68 = 0;
- v69 = *(u*)(vv + 168);
+ v63 = *(u*)(vc + 48UL);
+ v64 = 139UL;
+ v65 = 4UL;
+ v66 = 4UL;
+ v67 = 0UL;
+ v68 = 0UL;
+ v69 = *(u*)(vv + 168UL);
v70 = ((u(*)())v62)(v63, v64, v65, v66, v67, v68, v69);
+ v70;
v71 = (u)zas_modri;
- v72 = *(u*)(vc + 48);
- v73 = 129;
- v74 = 4;
- v75 = 3920;
+ v72 = *(u*)(vc + 48UL);
+ v73 = 129UL;
+ v74 = 4UL;
+ v75 = 4096UL - 176UL;
v76 = ((u(*)())v71)(v72, v73, v74, v75);
+ v76;
v77 = (u)zas_modrm;
- v78 = *(u*)(vc + 48);
- v79 = 137;
- v80 = 0;
- v81 = 4;
- v82 = 0;
- v83 = 0;
- v84 = 0;
+ v78 = *(u*)(vc + 48UL);
+ v79 = 137UL;
+ v80 = 0UL;
+ v81 = 4UL;
+ v82 = 0UL;
+ v83 = 0UL;
+ v84 = 0UL;
v85 = ((u(*)())v77)(v78, v79, v80, v81, v82, v83, v84);
+ v85;
v86 = (u)zas_modrm;
- v87 = *(u*)(vc + 48);
- v88 = 137;
- v89 = 2;
- v90 = 4;
- v91 = 0;
- v92 = 0;
- v93 = 16;
+ v87 = *(u*)(vc + 48UL);
+ v88 = 137UL;
+ v89 = 2UL;
+ v90 = 4UL;
+ v91 = 0UL;
+ v92 = 0UL;
+ v93 = 16UL;
v94 = ((u(*)())v86)(v87, v88, v89, v90, v91, v92, v93);
+ v94;
v95 = (u)zas_modrm;
- v96 = *(u*)(vc + 48);
- v97 = 137;
- v98 = 3;
- v99 = 4;
- v100 = 0;
- v101 = 0;
- v102 = 24;
+ v96 = *(u*)(vc + 48UL);
+ v97 = 137UL;
+ v98 = 3UL;
+ v99 = 4UL;
+ v100 = 0UL;
+ v101 = 0UL;
+ v102 = 24UL;
v103 = ((u(*)())v95)(v96, v97, v98, v99, v100, v101, v102);
+ v103;
v104 = (u)zas_modrm;
- v105 = *(u*)(vc + 48);
- v106 = 137;
- v107 = 5;
- v108 = 4;
- v109 = 0;
- v110 = 0;
- v111 = 40;
+ v105 = *(u*)(vc + 48UL);
+ v106 = 137UL;
+ v107 = 5UL;
+ v108 = 4UL;
+ v109 = 0UL;
+ v110 = 0UL;
+ v111 = 40UL;
v112 = ((u(*)())v104)(v105, v106, v107, v108, v109, v110, v111);
+ v112;
v113 = (u)zas_modrm;
- v114 = *(u*)(vc + 48);
- v115 = 137;
- v116 = 6;
- v117 = 4;
- v118 = 0;
- v119 = 0;
- v120 = 48;
+ v114 = *(u*)(vc + 48UL);
+ v115 = 137UL;
+ v116 = 6UL;
+ v117 = 4UL;
+ v118 = 0UL;
+ v119 = 0UL;
+ v120 = 48UL;
v121 = ((u(*)())v113)(v114, v115, v116, v117, v118, v119, v120);
+ v121;
v122 = (u)zas_modrm;
- v123 = *(u*)(vc + 48);
- v124 = 137;
- v125 = 7;
- v126 = 4;
- v127 = 0;
- v128 = 0;
- v129 = 56;
+ v123 = *(u*)(vc + 48UL);
+ v124 = 137UL;
+ v125 = 7UL;
+ v126 = 4UL;
+ v127 = 0UL;
+ v128 = 0UL;
+ v129 = 56UL;
v130 = ((u(*)())v122)(v123, v124, v125, v126, v127, v128, v129);
+ v130;
v131 = (u)zas_modrm;
- v132 = *(u*)(vc + 48);
- v133 = 137;
- v134 = 8;
- v135 = 4;
- v136 = 0;
- v137 = 0;
- v138 = 64;
+ v132 = *(u*)(vc + 48UL);
+ v133 = 137UL;
+ v134 = 8UL;
+ v135 = 4UL;
+ v136 = 0UL;
+ v137 = 0UL;
+ v138 = 64UL;
v139 = ((u(*)())v131)(v132, v133, v134, v135, v136, v137, v138);
+ v139;
v140 = (u)zas_modrm;
- v141 = *(u*)(vc + 48);
- v142 = 137;
- v143 = 9;
- v144 = 4;
- v145 = 0;
- v146 = 0;
- v147 = 72;
+ v141 = *(u*)(vc + 48UL);
+ v142 = 137UL;
+ v143 = 9UL;
+ v144 = 4UL;
+ v145 = 0UL;
+ v146 = 0UL;
+ v147 = 72UL;
v148 = ((u(*)())v140)(v141, v142, v143, v144, v145, v146, v147);
+ v148;
v149 = (u)zas_modrm;
- v150 = *(u*)(vc + 48);
- v151 = 137;
- v152 = 10;
- v153 = 4;
- v154 = 0;
- v155 = 0;
- v156 = 80;
+ v150 = *(u*)(vc + 48UL);
+ v151 = 137UL;
+ v152 = 10UL;
+ v153 = 4UL;
+ v154 = 0UL;
+ v155 = 0UL;
+ v156 = 80UL;
v157 = ((u(*)())v149)(v150, v151, v152, v153, v154, v155, v156);
+ v157;
v158 = (u)zas_modrm;
- v159 = *(u*)(vc + 48);
- v160 = 137;
- v161 = 12;
- v162 = 4;
- v163 = 0;
- v164 = 0;
- v165 = 96;
+ v159 = *(u*)(vc + 48UL);
+ v160 = 137UL;
+ v161 = 12UL;
+ v162 = 4UL;
+ v163 = 0UL;
+ v164 = 0UL;
+ v165 = 96UL;
v166 = ((u(*)())v158)(v159, v160, v161, v162, v163, v164, v165);
+ v166;
v167 = (u)zas_modrm;
- v168 = *(u*)(vc + 48);
- v169 = 137;
- v170 = 13;
- v171 = 4;
- v172 = 0;
- v173 = 0;
- v174 = 104;
+ v168 = *(u*)(vc + 48UL);
+ v169 = 137UL;
+ v170 = 13UL;
+ v171 = 4UL;
+ v172 = 0UL;
+ v173 = 0UL;
+ v174 = 104UL;
v175 = ((u(*)())v167)(v168, v169, v170, v171, v172, v173, v174);
+ v175;
v176 = (u)zas_modrm;
- v177 = *(u*)(vc + 48);
- v178 = 137;
- v179 = 14;
- v180 = 4;
- v181 = 0;
- v182 = 0;
- v183 = 112;
+ v177 = *(u*)(vc + 48UL);
+ v178 = 137UL;
+ v179 = 14UL;
+ v180 = 4UL;
+ v181 = 0UL;
+ v182 = 0UL;
+ v183 = 112UL;
v184 = ((u(*)())v176)(v177, v178, v179, v180, v181, v182, v183);
+ v184;
v185 = (u)zas_modrm;
- v186 = *(u*)(vc + 48);
- v187 = 137;
- v188 = 15;
- v189 = 4;
- v190 = 0;
- v191 = 0;
- v192 = 120;
+ v186 = *(u*)(vc + 48UL);
+ v187 = 137UL;
+ v188 = 15UL;
+ v189 = 4UL;
+ v190 = 0UL;
+ v191 = 0UL;
+ v192 = 120UL;
v193 = ((u(*)())v185)(v186, v187, v188, v189, v190, v191, v192);
+ v193;
v194 = (u)zas_modrm;
- v195 = *(u*)(vc + 48);
- v196 = 137;
- v197 = 1;
- v198 = 4;
- v199 = 0;
- v200 = 0;
- v201 = 128;
+ v195 = *(u*)(vc + 48UL);
+ v196 = 137UL;
+ v197 = 1UL;
+ v198 = 4UL;
+ v199 = 0UL;
+ v200 = 0UL;
+ v201 = 128UL;
v202 = ((u(*)())v194)(v195, v196, v197, v198, v199, v200, v201);
+ v202;
v203 = (u)zas_modrm;
- v204 = *(u*)(vc + 48);
- v205 = 137;
- v206 = 11;
- v207 = 4;
- v208 = 0;
- v209 = 0;
- v210 = 136;
+ v204 = *(u*)(vc + 48UL);
+ v205 = 137UL;
+ v206 = 11UL;
+ v207 = 4UL;
+ v208 = 0UL;
+ v209 = 0UL;
+ v210 = 136UL;
v211 = ((u(*)())v203)(v204, v205, v206, v207, v208, v209, v210);
+ v211;
v212 = (u)zas_modrr;
- v213 = *(u*)(vc + 48);
- v214 = 51;
- v215 = 0;
- v216 = 0;
+ v213 = *(u*)(vc + 48UL);
+ v214 = 51UL;
+ v215 = 0UL;
+ v216 = 0UL;
v217 = ((u(*)())v212)(v213, v214, v215, v216);
+ v217;
v218 = (u)zas_modrm;
- v219 = *(u*)(vc + 48);
- v220 = 137;
- v221 = 0;
- v222 = 4;
- v223 = 0;
- v224 = 0;
- v225 = 8;
+ v219 = *(u*)(vc + 48UL);
+ v220 = 137UL;
+ v221 = 0UL;
+ v222 = 4UL;
+ v223 = 0UL;
+ v224 = 0UL;
+ v225 = 8UL;
v226 = ((u(*)())v218)(v219, v220, v221, v222, v223, v224, v225);
+ v226;
v227 = (u)zas_modrm;
- v228 = *(u*)(vc + 48);
- v229 = 137;
- v230 = 0;
- v231 = 4;
- v232 = 0;
- v233 = 0;
- v234 = 88;
+ v228 = *(u*)(vc + 48UL);
+ v229 = 137UL;
+ v230 = 0UL;
+ v231 = 4UL;
+ v232 = 0UL;
+ v233 = 0UL;
+ v234 = 88UL;
v235 = ((u(*)())v227)(v228, v229, v230, v231, v232, v233, v234);
+ v235;
v236 = (u)zas_modrm;
- v237 = *(u*)(vc + 48);
- v238 = 137;
- v239 = 0;
- v240 = 4;
- v241 = 0;
- v242 = 0;
- v243 = 160;
+ v237 = *(u*)(vc + 48UL);
+ v238 = 137UL;
+ v239 = 0UL;
+ v240 = 4UL;
+ v241 = 0UL;
+ v242 = 0UL;
+ v243 = 160UL;
v244 = ((u(*)())v236)(v237, v238, v239, v240, v241, v242, v243);
+ v244;
v245 = (u)zas_modrm;
- v246 = *(u*)(vc + 48);
- v247 = 137;
- v248 = 0;
- v249 = 4;
- v250 = 0;
- v251 = 0;
- v252 = 168;
+ v246 = *(u*)(vc + 48UL);
+ v247 = 137UL;
+ v248 = 0UL;
+ v249 = 4UL;
+ v250 = 0UL;
+ v251 = 0UL;
+ v252 = 168UL;
v253 = ((u(*)())v245)(v246, v247, v248, v249, v250, v251, v252);
+ v253;
v254 = (u)zas_modri;
- v255 = *(u*)(vc + 48);
- v256 = 199;
- v257 = 0;
- v258 = 43;
+ v255 = *(u*)(vc + 48UL);
+ v256 = 199UL;
+ v257 = 0UL;
+ v258 = 43UL;
v259 = ((u(*)())v254)(v255, v256, v257, v258);
+ v259;
v260 = (u)zas_modrm;
- v261 = *(u*)(vc + 48);
- v262 = 137;
- v263 = 0;
- v264 = 4;
- v265 = 0;
- v266 = 0;
- v267 = 144;
+ v261 = *(u*)(vc + 48UL);
+ v262 = 137UL;
+ v263 = 0UL;
+ v264 = 4UL;
+ v265 = 0UL;
+ v266 = 0UL;
+ v267 = 144UL;
v268 = ((u(*)())v260)(v261, v262, v263, v264, v265, v266, v267);
+ v268;
v269 = (u)zas_modri;
- v270 = *(u*)(vc + 48);
- v271 = 199;
- v272 = 0;
- v273 = 35;
+ v270 = *(u*)(vc + 48UL);
+ v271 = 199UL;
+ v272 = 0UL;
+ v273 = 35UL;
v274 = ((u(*)())v269)(v270, v271, v272, v273);
+ v274;
v275 = (u)zas_modrm;
- v276 = *(u*)(vc + 48);
- v277 = 137;
- v278 = 0;
- v279 = 4;
- v280 = 0;
- v281 = 0;
- v282 = 152;
+ v276 = *(u*)(vc + 48UL);
+ v277 = 137UL;
+ v278 = 0UL;
+ v279 = 4UL;
+ v280 = 0UL;
+ v281 = 0UL;
+ v282 = 152UL;
v283 = ((u(*)())v275)(v276, v277, v278, v279, v280, v281, v282);
+ v283;
v284 = (u)zfind;
v285 = vc;
v286 = (u)"global";
v287 = (u)"_save";
- v288 = 0;
+ v288 = 0UL;
v289 = ((u(*)())v284)(v285, v286, v287, v288);
vv = v289;
if (!vv) goto b88;
- v291 = 0;
+ v291 = 0UL;
b89: if (!v291) goto b84;
- v290 = 1;
-b86: if (!v290) goto b80;
+ v290 = 1UL;
+b86: if (!v290) goto b82;
v293 = (u)zcdie;
v294 = vc;
v295 = (u)"no _save";
v296 = ((u(*)())v293)(v294, v295);
+ v296;
b80: v297 = (u)zas_emit;
- v298 = *(u*)(vc + 48);
- v299 = 101;
+ v298 = *(u*)(vc + 48UL);
+ v299 = 101UL;
v300 = ((u(*)())v297)(v298, v299);
+ v300;
v301 = (u)zas_modra;
- v302 = *(u*)(vc + 48);
- v303 = 139;
- v304 = 0;
- v305 = *(u*)(vv + 168);
+ v302 = *(u*)(vc + 48UL);
+ v303 = 139UL;
+ v304 = 0UL;
+ v305 = *(u*)(vv + 168UL);
v306 = ((u(*)())v301)(v302, v303, v304, v305);
+ v306;
v307 = (u)zas_modrm;
- v308 = *(u*)(vc + 48);
- v309 = 137;
- v310 = 0;
- v311 = 4;
- v312 = 0;
- v313 = 0;
- v314 = 32;
+ v308 = *(u*)(vc + 48UL);
+ v309 = 137UL;
+ v310 = 0UL;
+ v311 = 4UL;
+ v312 = 0UL;
+ v313 = 0UL;
+ v314 = 32UL;
v315 = ((u(*)())v307)(v308, v309, v310, v311, v312, v313, v314);
+ v315;
v316 = (u)zas_modrr;
- v317 = *(u*)(vc + 48);
- v318 = 139;
- v319 = 0;
- v320 = 4;
+ v317 = *(u*)(vc + 48UL);
+ v318 = 139UL;
+ v319 = 0UL;
+ v320 = 4UL;
v321 = ((u(*)())v316)(v317, v318, v319, v320);
+ v321;
v322 = (u)zas_modrr;
- v323 = *(u*)(vc + 48);
- v324 = 51;
- v325 = 5;
- v326 = 5;
+ v323 = *(u*)(vc + 48UL);
+ v324 = 51UL;
+ v325 = 5UL;
+ v326 = 5UL;
v327 = ((u(*)())v322)(v323, v324, v325, v326);
+ v327;
v328 = (u)zas_opr;
- v329 = *(u*)(vc + 48);
- v330 = 80;
- v331 = 5;
+ v329 = *(u*)(vc + 48UL);
+ v330 = 80UL;
+ v331 = 5UL;
v332 = ((u(*)())v328)(v329, v330, v331);
+ v332;
v333 = (u)zas_opr;
- v334 = *(u*)(vc + 48);
- v335 = 80;
- v336 = 5;
+ v334 = *(u*)(vc + 48UL);
+ v335 = 80UL;
+ v336 = 5UL;
v337 = ((u(*)())v333)(v334, v335, v336);
+ v337;
v338 = (u)zas_modrr;
- v339 = *(u*)(vc + 48);
- v340 = 139;
- v341 = 5;
- v342 = 4;
+ v339 = *(u*)(vc + 48UL);
+ v340 = 139UL;
+ v341 = 5UL;
+ v342 = 4UL;
v343 = ((u(*)())v338)(v339, v340, v341, v342);
+ v343;
v344 = (u)zas_modrr;
- v345 = *(u*)(vc + 48);
- v346 = 139;
- v347 = 7;
- v348 = 0;
+ v345 = *(u*)(vc + 48UL);
+ v346 = 139UL;
+ v347 = 7UL;
+ v348 = 0UL;
v349 = ((u(*)())v344)(v345, v346, v347, v348);
+ v349;
v350 = (u)zfind;
v351 = vc;
v352 = (u)"_ssr";
- v353 = 0;
- v354 = 1;
+ v353 = 0UL;
+ v354 = 1UL;
v355 = ((u(*)())v350)(v351, v352, v353, v354);
vd = v355;
- if (!*(u*)(vd + 72)) goto b109;
- if (!*(u*)(*(u*)(vd + 88) + 16)) goto b109;
- v356 = 1;
-b111: if (!v356) goto b105;
+ if (!*(u*)(vd + 72UL)) goto b109;
+ if (!*(u*)(*(u*)(vd + 88UL) + 16UL)) goto b109;
+ v356 = 1UL;
+b111: if (!v356) goto b107;
v357 = (u)zas_jmp;
- v358 = *(u*)(vc + 48);
- v359 = 232;
- v360 = *(u*)(vd + 88);
+ v358 = *(u*)(vc + 48UL);
+ v359 = 232UL;
+ v360 = *(u*)(vd + 88UL);
v361 = ((u(*)())v357)(v358, v359, v360);
+ v361;
b105: v362 = (u)zas_op;
- v363 = *(u*)(vc + 48);
- v364 = 250;
+ v363 = *(u*)(vc + 48UL);
+ v364 = 250UL;
v365 = ((u(*)())v362)(v363, v364);
+ v365;
v366 = (u)zas_modri;
- v367 = *(u*)(vc + 48);
- v368 = 129;
- v369 = 4;
- v370 = 16;
+ v367 = *(u*)(vc + 48UL);
+ v368 = 129UL;
+ v369 = 4UL;
+ v370 = 2UL * 8UL;
v371 = ((u(*)())v366)(v367, v368, v369, v370);
+ v371;
v372 = (u)zas_modrm;
- v373 = *(u*)(vc + 48);
- v374 = 139;
- v375 = 0;
- v376 = 4;
- v377 = 0;
- v378 = 0;
- v379 = 0;
+ v373 = *(u*)(vc + 48UL);
+ v374 = 139UL;
+ v375 = 0UL;
+ v376 = 4UL;
+ v377 = 0UL;
+ v378 = 0UL;
+ v379 = 0UL;
v380 = ((u(*)())v372)(v373, v374, v375, v376, v377, v378, v379);
+ v380;
v381 = (u)zas_modrm;
- v382 = *(u*)(vc + 48);
- v383 = 139;
- v384 = 2;
- v385 = 4;
- v386 = 0;
- v387 = 0;
- v388 = 16;
+ v382 = *(u*)(vc + 48UL);
+ v383 = 139UL;
+ v384 = 2UL;
+ v385 = 4UL;
+ v386 = 0UL;
+ v387 = 0UL;
+ v388 = 16UL;
v389 = ((u(*)())v381)(v382, v383, v384, v385, v386, v387, v388);
+ v389;
v390 = (u)zas_modrm;
- v391 = *(u*)(vc + 48);
- v392 = 139;
- v393 = 3;
- v394 = 4;
- v395 = 0;
- v396 = 0;
- v397 = 24;
+ v391 = *(u*)(vc + 48UL);
+ v392 = 139UL;
+ v393 = 3UL;
+ v394 = 4UL;
+ v395 = 0UL;
+ v396 = 0UL;
+ v397 = 24UL;
v398 = ((u(*)())v390)(v391, v392, v393, v394, v395, v396, v397);
+ v398;
v399 = (u)zas_modrm;
- v400 = *(u*)(vc + 48);
- v401 = 139;
- v402 = 5;
- v403 = 4;
- v404 = 0;
- v405 = 0;
- v406 = 40;
+ v400 = *(u*)(vc + 48UL);
+ v401 = 139UL;
+ v402 = 5UL;
+ v403 = 4UL;
+ v404 = 0UL;
+ v405 = 0UL;
+ v406 = 40UL;
v407 = ((u(*)())v399)(v400, v401, v402, v403, v404, v405, v406);
+ v407;
v408 = (u)zas_modrm;
- v409 = *(u*)(vc + 48);
- v410 = 139;
- v411 = 6;
- v412 = 4;
- v413 = 0;
- v414 = 0;
- v415 = 48;
+ v409 = *(u*)(vc + 48UL);
+ v410 = 139UL;
+ v411 = 6UL;
+ v412 = 4UL;
+ v413 = 0UL;
+ v414 = 0UL;
+ v415 = 48UL;
v416 = ((u(*)())v408)(v409, v410, v411, v412, v413, v414, v415);
+ v416;
v417 = (u)zas_modrm;
- v418 = *(u*)(vc + 48);
- v419 = 139;
- v420 = 7;
- v421 = 4;
- v422 = 0;
- v423 = 0;
- v424 = 56;
+ v418 = *(u*)(vc + 48UL);
+ v419 = 139UL;
+ v420 = 7UL;
+ v421 = 4UL;
+ v422 = 0UL;
+ v423 = 0UL;
+ v424 = 56UL;
v425 = ((u(*)())v417)(v418, v419, v420, v421, v422, v423, v424);
+ v425;
v426 = (u)zas_modrm;
- v427 = *(u*)(vc + 48);
- v428 = 139;
- v429 = 8;
- v430 = 4;
- v431 = 0;
- v432 = 0;
- v433 = 64;
+ v427 = *(u*)(vc + 48UL);
+ v428 = 139UL;
+ v429 = 8UL;
+ v430 = 4UL;
+ v431 = 0UL;
+ v432 = 0UL;
+ v433 = 64UL;
v434 = ((u(*)())v426)(v427, v428, v429, v430, v431, v432, v433);
+ v434;
v435 = (u)zas_modrm;
- v436 = *(u*)(vc + 48);
- v437 = 139;
- v438 = 9;
- v439 = 4;
- v440 = 0;
- v441 = 0;
- v442 = 72;
+ v436 = *(u*)(vc + 48UL);
+ v437 = 139UL;
+ v438 = 9UL;
+ v439 = 4UL;
+ v440 = 0UL;
+ v441 = 0UL;
+ v442 = 72UL;
v443 = ((u(*)())v435)(v436, v437, v438, v439, v440, v441, v442);
+ v443;
v444 = (u)zas_modrm;
- v445 = *(u*)(vc + 48);
- v446 = 139;
- v447 = 10;
- v448 = 4;
- v449 = 0;
- v450 = 0;
- v451 = 80;
+ v445 = *(u*)(vc + 48UL);
+ v446 = 139UL;
+ v447 = 10UL;
+ v448 = 4UL;
+ v449 = 0UL;
+ v450 = 0UL;
+ v451 = 80UL;
v452 = ((u(*)())v444)(v445, v446, v447, v448, v449, v450, v451);
+ v452;
v453 = (u)zas_modrm;
- v454 = *(u*)(vc + 48);
- v455 = 139;
- v456 = 12;
- v457 = 4;
- v458 = 0;
- v459 = 0;
- v460 = 96;
+ v454 = *(u*)(vc + 48UL);
+ v455 = 139UL;
+ v456 = 12UL;
+ v457 = 4UL;
+ v458 = 0UL;
+ v459 = 0UL;
+ v460 = 96UL;
v461 = ((u(*)())v453)(v454, v455, v456, v457, v458, v459, v460);
+ v461;
v462 = (u)zas_modrm;
- v463 = *(u*)(vc + 48);
- v464 = 139;
- v465 = 13;
- v466 = 4;
- v467 = 0;
- v468 = 0;
- v469 = 104;
+ v463 = *(u*)(vc + 48UL);
+ v464 = 139UL;
+ v465 = 13UL;
+ v466 = 4UL;
+ v467 = 0UL;
+ v468 = 0UL;
+ v469 = 104UL;
v470 = ((u(*)())v462)(v463, v464, v465, v466, v467, v468, v469);
+ v470;
v471 = (u)zas_modrm;
- v472 = *(u*)(vc + 48);
- v473 = 139;
- v474 = 14;
- v475 = 4;
- v476 = 0;
- v477 = 0;
- v478 = 112;
+ v472 = *(u*)(vc + 48UL);
+ v473 = 139UL;
+ v474 = 14UL;
+ v475 = 4UL;
+ v476 = 0UL;
+ v477 = 0UL;
+ v478 = 112UL;
v479 = ((u(*)())v471)(v472, v473, v474, v475, v476, v477, v478);
+ v479;
v480 = (u)zas_modrm;
- v481 = *(u*)(vc + 48);
- v482 = 139;
- v483 = 15;
- v484 = 4;
- v485 = 0;
- v486 = 0;
- v487 = 120;
+ v481 = *(u*)(vc + 48UL);
+ v482 = 139UL;
+ v483 = 15UL;
+ v484 = 4UL;
+ v485 = 0UL;
+ v486 = 0UL;
+ v487 = 120UL;
v488 = ((u(*)())v480)(v481, v482, v483, v484, v485, v486, v487);
+ v488;
v489 = (u)zas_modrm;
- v490 = *(u*)(vc + 48);
- v491 = 139;
- v492 = 1;
- v493 = 4;
- v494 = 0;
- v495 = 0;
- v496 = 128;
+ v490 = *(u*)(vc + 48UL);
+ v491 = 139UL;
+ v492 = 1UL;
+ v493 = 4UL;
+ v494 = 0UL;
+ v495 = 0UL;
+ v496 = 128UL;
v497 = ((u(*)())v489)(v490, v491, v492, v493, v494, v495, v496);
+ v497;
v498 = (u)zas_modrm;
- v499 = *(u*)(vc + 48);
- v500 = 139;
- v501 = 11;
- v502 = 4;
- v503 = 0;
- v504 = 0;
- v505 = 136;
+ v499 = *(u*)(vc + 48UL);
+ v500 = 139UL;
+ v501 = 11UL;
+ v502 = 4UL;
+ v503 = 0UL;
+ v504 = 0UL;
+ v505 = 136UL;
v506 = ((u(*)())v498)(v499, v500, v501, v502, v503, v504, v505);
+ v506;
v507 = (u)zas_modrm;
- v508 = *(u*)(vc + 48);
- v509 = 139;
- v510 = 4;
- v511 = 4;
- v512 = 0;
- v513 = 0;
- v514 = 32;
+ v508 = *(u*)(vc + 48UL);
+ v509 = 139UL;
+ v510 = 4UL;
+ v511 = 4UL;
+ v512 = 0UL;
+ v513 = 0UL;
+ v514 = 32UL;
v515 = ((u(*)())v507)(v508, v509, v510, v511, v512, v513, v514);
+ v515;
v516 = (u)zas_rex;
- v517 = *(u*)(vc + 48);
- v518 = 3847;
- v519 = 0;
- v520 = 0;
- v521 = 0;
+ v517 = *(u*)(vc + 48UL);
+ v518 = 3847UL;
+ v519 = 0UL;
+ v520 = 0UL;
+ v521 = 0UL;
v522 = ((u(*)())v516)(v517, v518, v519, v520, v521);
+ v522;
v523 = (u)zas_op;
- v524 = *(u*)(vc + 48);
- v525 = 3847;
+ v524 = *(u*)(vc + 48UL);
+ v525 = 3847UL;
v526 = ((u(*)())v523)(v524, v525);
- return 0;
-b109: v356 = 0;
+ v526;
+ return 0UL;
+b107: goto b105;
+b109: v356 = 0UL;
goto b111;
-b84: if (!*(u*)(vv + 152)) goto b92;
- v292 = 0;
+b82: goto b80;
+b84: if (!*(u*)(vv + 152UL)) goto b92;
+ v292 = 0UL;
b93: if (!v292) goto b90;
- v290 = 1;
+ v290 = 1UL;
goto b86;
-b90: v290 = 0;
+b90: v290 = 0UL;
goto b86;
-b92: v292 = 1;
+b92: v292 = 1UL;
goto b93;
-b88: v291 = 1;
+b88: v291 = 1UL;
goto b89;
-b42: if (!*(u*)(vv + 152)) goto b50;
- v57 = 0;
+b40: goto b38;
+b42: if (!*(u*)(vv + 152UL)) goto b50;
+ v57 = 0UL;
b51: if (!v57) goto b48;
- v55 = 1;
+ v55 = 1UL;
goto b44;
-b48: v55 = 0;
+b48: v55 = 0UL;
goto b44;
-b50: v57 = 1;
+b50: v57 = 1UL;
goto b51;
-b46: v56 = 1;
+b46: v56 = 1UL;
goto b47;
-b24: if (!*(u*)(vv + 152)) goto b32;
- v34 = 0;
+b22: goto b20;
+b24: if (!*(u*)(vv + 152UL)) goto b32;
+ v34 = 0UL;
b33: if (!v34) goto b30;
- v32 = 1;
+ v32 = 1UL;
goto b26;
-b30: v32 = 0;
+b30: v32 = 0UL;
goto b26;
-b32: v34 = 1;
+b32: v34 = 1UL;
goto b33;
-b28: v33 = 1;
+b28: v33 = 1UL;
goto b29;
-b6: if (!*(u*)(vv + 152)) goto b14;
- v11 = 0;
+b4: goto b2;
+b6: if (!*(u*)(vv + 152UL)) goto b14;
+ v11 = 0UL;
b15: if (!v11) goto b12;
- v9 = 1;
+ v9 = 1UL;
goto b8;
-b12: v9 = 0;
+b12: v9 = 0UL;
goto b8;
-b14: v11 = 1;
+b14: v11 = 1UL;
goto b15;
-b10: v10 = 1;
+b10: v10 = 1UL;
goto b11;
}
u zemit_strtab_str(u vc, u vs) {
@@ -12917,18 +13868,19 @@ u zemit_strtab_str(u vc, u vs) {
u v5 = 0;
u v6 = 0;
u v7 = 0;
- vi = 0;
+ vi = 0UL;
b1: v3 = (u)zas_emit;
v4 = vc;
- v5 = (u)*(b*)(vs + vi);
+ v5 = (u)*(b*)(vs + vi * 1UL);
v6 = ((u(*)())v3)(v4, v5);
- if (!(u)*(b*)(vs + vi)) goto b8;
- v7 = 0;
-b9: if (!v7) goto b4;
- return vi + 1;
-b4: vi = vi + 1;
+ v6;
+ if (!(u)*(b*)(vs + vi * 1UL)) goto b8;
+ v7 = 0UL;
+b9: if (!v7) goto b6;
+ return vi + 1UL;
+b6: vi = vi + 1UL;
goto b1;
-b8: v7 = 1;
+b8: v7 = 1UL;
goto b9;
}
u zenter(u vc, u vtag) {
@@ -12938,8 +13890,9 @@ u zenter(u vc, u vtag) {
v2 = (u)zchoice;
v3 = vc;
v4 = ((u(*)())v2)(v3);
- *(u*)(vc + 72) = vtag;
- return 0;
+ v4;
+ *(u*)(vc + 72UL) = vtag;
+ return 0UL;
}
u zexit(u vn) {
u v1 = 0;
@@ -12952,15 +13905,16 @@ u zexit(u vn) {
u v8 = 0;
u v9 = 0;
v1 = (u)zsyscall;
- v2 = 60;
+ v2 = 60UL;
v3 = vn;
- v4 = 0;
- v5 = 0;
- v6 = 0;
- v7 = 0;
- v8 = 0;
+ v4 = 0UL;
+ v5 = 0UL;
+ v6 = 0UL;
+ v7 = 0UL;
+ v8 = 0UL;
v9 = ((u(*)())v1)(v2, v3, v4, v5, v6, v7, v8);
- return 0;
+ v9;
+ return 0UL;
}
u zexpr_to_ir(u vic, u vn) {
u va = 0;
@@ -13650,40 +14604,41 @@ u zexpr_to_ir(u vic, u vn) {
u v686 = 0;
v16 = (u)zassert;
if (!vn) goto b5;
- v19 = 0;
+ v19 = 0UL;
b6: if (!v19) goto b2;
- v18 = 0;
+ v18 = 0UL;
b3: v17 = v18;
v20 = (u)"expected node";
v21 = ((u(*)())v16)(v17, v20);
- *(u*)(*(u*)vic + 24) = *(u*)(vn + 24);
- *(u*)(*(u*)vic + 32) = *(u*)(vn + 32);
- *(u*)(*(u*)vic + 40) = *(u*)(vn + 40);
- vkind = *(u*)vn;
- if (vkind != 4) goto b10;
+ v21;
+ *(u*)(*(u*)(vic + 0UL) + 24UL) = *(u*)(vn + 24UL);
+ *(u*)(*(u*)(vic + 0UL) + 32UL) = *(u*)(vn + 32UL);
+ *(u*)(*(u*)(vic + 0UL) + 40UL) = *(u*)(vn + 40UL);
+ vkind = *(u*)(vn + 0UL);
+ if (vkind != 4UL) goto b10;
v22 = (u)zmkirconst;
v23 = vic;
- v24 = 0;
+ v24 = 0UL;
v25 = ((u(*)())v22)(v23, v24);
vo = v25;
return vo;
-b10: if (vkind != 1) goto b13;
+b10: if (vkind != 1UL) goto b13;
v26 = (u)zmkirconst;
v27 = vic;
- v28 = *(u*)(vn + 48);
+ v28 = *(u*)(vn + 48UL);
v29 = ((u(*)())v26)(v27, v28);
vo = v29;
return vo;
-b13: if (vkind != 2) goto b16;
+b13: if (vkind != 2UL) goto b16;
v30 = (u)zmkirconst;
v31 = vic;
- v32 = *(u*)(vn + 48);
+ v32 = *(u*)(vn + 48UL);
v33 = ((u(*)())v30)(v31, v32);
vo = v33;
return vo;
-b16: if (vkind != 34) goto b19;
- if (*(u*)*(u*)(*(u*)(vn + 8) + 64) != 3) goto b22;
- vsize = 1;
+b16: if (vkind != 34UL) goto b19;
+ if (*(u*)(*(u*)(*(u*)(vn + 8UL) + 64UL) + 0UL) != 3UL) goto b22;
+ vsize = 1UL;
b20: v38 = (u)zmkirconst;
v39 = vic;
v40 = vsize;
@@ -13691,195 +14646,200 @@ b20: v38 = (u)zmkirconst;
vo = v41;
return vo;
b22: v34 = (u)ztype_sizeof;
- v35 = *(u*)vic;
- v36 = *(u*)(*(u*)(vn + 8) + 64);
+ v35 = *(u*)(vic + 0UL);
+ v36 = *(u*)(*(u*)(vn + 8UL) + 64UL);
v37 = ((u(*)())v34)(v35, v36);
vsize = v37;
goto b20;
-b19: if (vkind != 3) goto b26;
+b19: if (vkind != 3UL) goto b26;
v42 = (u)zmkirstr;
v43 = vic;
- v44 = *(u*)(vn + 56);
+ v44 = *(u*)(vn + 56UL);
v46 = (u)zstrlen;
- v47 = *(u*)(vn + 56);
+ v47 = *(u*)(vn + 56UL);
v48 = ((u(*)())v46)(v47);
v45 = v48;
v49 = ((u(*)())v42)(v43, v44, v45);
vo = v49;
return vo;
-b26: if (vkind != 7) goto b30;
+b26: if (vkind != 7UL) goto b30;
v50 = (u)zcall_to_ir;
v51 = vic;
v52 = vn;
v53 = ((u(*)())v50)(v51, v52);
vo = v53;
return vo;
-b30: if (vkind != 0) goto b33;
+b30: if (vkind != 0UL) goto b33;
v54 = (u)zfind;
- v55 = *(u*)vic;
- v56 = *(u*)(vn + 56);
- v57 = 0;
- v58 = 0;
+ v55 = *(u*)(vic + 0UL);
+ v56 = *(u*)(vn + 56UL);
+ v57 = 0UL;
+ v58 = 0UL;
v59 = ((u(*)())v54)(v55, v56, v57, v58);
vv = v59;
if (!vv) goto b39;
- if (!*(u*)(vv + 176)) goto b39;
- v60 = 1;
-b41: if (!v60) goto b35;
+ if (!*(u*)(vv + 176UL)) goto b39;
+ v60 = 1UL;
+b41: if (!v60) goto b37;
v61 = (u)zmkirconst;
v62 = vic;
- v63 = *(u*)(vv + 184);
+ v63 = *(u*)(vv + 184UL);
v64 = ((u(*)())v61)(v62, v63);
vo = v64;
return vo;
-b35: v65 = (u)zirfind_var;
+b37: v65 = (u)zirfind_var;
v66 = vic;
- v67 = *(u*)(vn + 56);
+ v67 = *(u*)(vn + 56UL);
v68 = ((u(*)())v65)(v66, v67);
viv = *(u*)v68;
- if (!viv) goto b44;
+ if (!viv) goto b46;
v69 = (u)zmkirop;
v70 = vic;
- v71 = 0;
- v72 = 0;
- v73 = 0;
+ v71 = 0UL;
+ v72 = 0UL;
+ v73 = 0UL;
v74 = ((u(*)())v69)(v70, v71, v72, v73);
vo = v74;
- *(u*)(vo + 24) = *(u*)(viv + 32);
+ *(u*)(vo + 24UL) = *(u*)(viv + 32UL);
return vo;
-b44: if (!vv) goto b52;
- if (!*(u*)(vv + 72)) goto b52;
- v75 = 1;
-b54: if (!v75) goto b48;
+b46: if (!vv) goto b52;
+ if (!*(u*)(vv + 72UL)) goto b52;
+ v75 = 1UL;
+b54: if (!v75) goto b50;
v76 = (u)zmkirfuncref;
v77 = vic;
- v78 = *(u*)(vn + 56);
+ v78 = *(u*)(vn + 56UL);
v79 = ((u(*)())v76)(v77, v78);
vo = v79;
return vo;
-b48: v80 = (u)zcdie;
- v81 = *(u*)vic;
+b50: v80 = (u)zcdie;
+ v81 = *(u*)(vic + 0UL);
v82 = (u)"no such symbol";
v83 = ((u(*)())v80)(v81, v82);
- return 0;
-b52: v75 = 0;
+ v83;
+ return 0UL;
+b52: v75 = 0UL;
goto b54;
-b39: v60 = 0;
+b39: v60 = 0UL;
goto b41;
-b33: if (vkind != 9) goto b58;
- if (*(u*)*(u*)(*(u*)(vn + 8) + 64) != 4) goto b61;
+b33: if (vkind != 9UL) goto b58;
+ if (*(u*)(*(u*)(*(u*)(vn + 8UL) + 64UL) + 0UL) != 4UL) goto b61;
v84 = (u)zexpr_to_ir;
v85 = vic;
- v86 = *(u*)(vn + 8);
+ v86 = *(u*)(vn + 8UL);
v87 = ((u(*)())v84)(v85, v86);
vb = v87;
v88 = (u)zfind;
- v89 = *(u*)vic;
- v90 = *(u*)(*(u*)(*(u*)(*(u*)(*(u*)(vn + 8) + 64) + 16) + 8) + 32);
- v91 = *(u*)(*(u*)(vn + 16) + 56);
- v92 = 0;
+ v89 = *(u*)(vic + 0UL);
+ v90 = *(u*)(*(u*)(*(u*)(*(u*)(*(u*)(vn + 8UL) + 64UL) + 16UL) + 8UL) + 32UL);
+ v91 = *(u*)(*(u*)(vn + 16UL) + 56UL);
+ v92 = 0UL;
v93 = ((u(*)())v88)(v89, v90, v91, v92);
vv = v93;
b59: v113 = (u)zmkirconst;
v114 = vic;
- v115 = *(u*)(vv + 168);
+ v115 = *(u*)(vv + 168UL);
v116 = ((u(*)())v113)(v114, v115);
vc = v116;
v117 = (u)zmkirop;
v118 = vic;
- v119 = 11;
+ v119 = 11UL;
v120 = vb;
v121 = vc;
v122 = ((u(*)())v117)(v118, v119, v120, v121);
vd = v122;
v123 = (u)zmkirop;
v124 = vic;
- v125 = 5;
+ v125 = 5UL;
v126 = vd;
- v127 = 0;
+ v127 = 0UL;
v128 = ((u(*)())v123)(v124, v125, v126, v127);
vo = v128;
- *(u*)(vo + 48) = *(u*)(vn + 64);
+ *(u*)(vo + 48UL) = *(u*)(vn + 64UL);
return vo;
b61: v94 = (u)zexpr_to_ir;
v95 = vic;
- v96 = *(u*)(vn + 8);
+ v96 = *(u*)(vn + 8UL);
v97 = ((u(*)())v94)(v95, v96);
va = v97;
- if (*(u*)va != 0) goto b67;
+ if (*(u*)(va + 0UL) != 0UL) goto b67;
v98 = (u)zmkirop;
v99 = vic;
- v100 = 1;
- v101 = 0;
- v102 = 0;
+ v100 = 1UL;
+ v101 = 0UL;
+ v102 = 0UL;
v103 = ((u(*)())v98)(v99, v100, v101, v102);
vb = v103;
- *(u*)(vb + 24) = *(u*)(va + 24);
+ *(u*)(vb + 24UL) = *(u*)(va + 24UL);
+ *(u*)(*(u*)(*(u*)(vic + 128UL) + *(u*)(va + 24UL) * 8UL) + 56UL) = 1UL;
b65: v107 = (u)zfind;
- v108 = *(u*)vic;
- v109 = *(u*)(*(u*)(*(u*)(*(u*)(vn + 8) + 64) + 8) + 32);
- v110 = *(u*)(*(u*)(vn + 16) + 56);
- v111 = 0;
+ v108 = *(u*)(vic + 0UL);
+ v109 = *(u*)(*(u*)(*(u*)(*(u*)(vn + 8UL) + 64UL) + 8UL) + 32UL);
+ v110 = *(u*)(*(u*)(vn + 16UL) + 56UL);
+ v111 = 0UL;
v112 = ((u(*)())v107)(v108, v109, v110, v111);
vv = v112;
goto b59;
-b67: if (*(u*)va != 5) goto b70;
- vb = *(u*)(va + 8);
+b67: if (*(u*)(va + 0UL) != 5UL) goto b70;
+ vb = *(u*)(va + 8UL);
goto b65;
b70: v104 = (u)zdie;
v105 = (u)"invalid ref";
v106 = ((u(*)())v104)(v105);
+ v106;
goto b65;
-b58: if (vkind != 35) goto b77;
+b58: if (vkind != 35UL) goto b77;
v129 = (u)zexpr_to_ir;
v130 = vic;
- v131 = *(u*)(vn + 8);
+ v131 = *(u*)(vn + 8UL);
v132 = ((u(*)())v129)(v130, v131);
va = v132;
- if (*(u*)va != 0) goto b81;
+ if (*(u*)(va + 0UL) != 0UL) goto b81;
v133 = (u)zmkirop;
v134 = vic;
- v135 = 1;
- v136 = 0;
- v137 = 0;
+ v135 = 1UL;
+ v136 = 0UL;
+ v137 = 0UL;
v138 = ((u(*)())v133)(v134, v135, v136, v137);
vo = v138;
- *(u*)(vo + 24) = *(u*)(va + 24);
+ *(u*)(vo + 24UL) = *(u*)(va + 24UL);
+ *(u*)(*(u*)(*(u*)(vic + 128UL) + *(u*)(va + 24UL) * 8UL) + 56UL) = 1UL;
return vo;
-b81: if (*(u*)va != 5) goto b84;
- return *(u*)(va + 8);
+b81: if (*(u*)(va + 0UL) != 5UL) goto b84;
+ return *(u*)(va + 8UL);
b84: v139 = (u)zdie;
v140 = (u)"invalid ref";
v141 = ((u(*)())v139)(v140);
- return 0;
-b77: if (vkind != 36) goto b87;
+ v141;
+ return 0UL;
+b77: if (vkind != 36UL) goto b87;
v142 = (u)zexpr_to_ir;
v143 = vic;
- v144 = *(u*)(vn + 8);
+ v144 = *(u*)(vn + 8UL);
v145 = ((u(*)())v142)(v143, v144);
va = v145;
v146 = (u)zmkirop;
v147 = vic;
- v148 = 5;
+ v148 = 5UL;
v149 = va;
- v150 = 0;
+ v150 = 0UL;
v151 = ((u(*)())v146)(v147, v148, v149, v150);
vo = v151;
- *(u*)(vo + 48) = *(u*)(vn + 64);
+ *(u*)(vo + 48UL) = *(u*)(vn + 64UL);
return vo;
-b87: if (vkind != 38) goto b91;
+b87: if (vkind != 38UL) goto b91;
v152 = (u)zexpr_to_ir;
v153 = vic;
- v154 = *(u*)(vn + 8);
+ v154 = *(u*)(vn + 8UL);
v155 = ((u(*)())v152)(v153, v154);
va = v155;
v156 = (u)zexpr_to_ir;
v157 = vic;
- v158 = *(u*)(vn + 16);
+ v158 = *(u*)(vn + 16UL);
v159 = ((u(*)())v156)(v157, v158);
vb = v159;
- if (*(u*)*(u*)(vn + 64) != 3) goto b96;
- vsize = 1;
+ if (*(u*)(*(u*)(vn + 64UL) + 0UL) != 3UL) goto b96;
+ vsize = 1UL;
b94: v164 = (u)zmkirconst;
v165 = vic;
v166 = vsize;
@@ -13887,96 +14847,96 @@ b94: v164 = (u)zmkirconst;
vc = v167;
v168 = (u)zmkirop;
v169 = vic;
- v170 = 19;
+ v170 = 19UL;
v171 = vb;
v172 = vc;
v173 = ((u(*)())v168)(v169, v170, v171, v172);
vd = v173;
v174 = (u)zmkirop;
v175 = vic;
- v176 = 11;
+ v176 = 11UL;
v177 = va;
v178 = vd;
v179 = ((u(*)())v174)(v175, v176, v177, v178);
ve = v179;
v180 = (u)zmkirop;
v181 = vic;
- v182 = 5;
+ v182 = 5UL;
v183 = ve;
- v184 = 0;
+ v184 = 0UL;
v185 = ((u(*)())v180)(v181, v182, v183, v184);
vo = v185;
- *(u*)(vo + 48) = *(u*)(vn + 64);
+ *(u*)(vo + 48UL) = *(u*)(vn + 64UL);
return vo;
b96: v160 = (u)ztype_sizeof;
- v161 = *(u*)vic;
- v162 = *(u*)(vn + 64);
+ v161 = *(u*)(vic + 0UL);
+ v162 = *(u*)(vn + 64UL);
v163 = ((u(*)())v160)(v161, v162);
vsize = v163;
goto b94;
-b91: if (vkind != 33) goto b103;
+b91: if (vkind != 33UL) goto b103;
v186 = (u)zexpr_to_ir;
v187 = vic;
- v188 = *(u*)(vn + 8);
+ v188 = *(u*)(vn + 8UL);
v189 = ((u(*)())v186)(v187, v188);
va = v189;
v190 = (u)zexpr_to_ir;
v191 = vic;
- v192 = *(u*)(vn + 16);
+ v192 = *(u*)(vn + 16UL);
v193 = ((u(*)())v190)(v191, v192);
vb = v193;
v194 = (u)zmkirop;
v195 = vic;
- v196 = 6;
+ v196 = 6UL;
v197 = va;
v198 = vb;
v199 = ((u(*)())v194)(v195, v196, v197, v198);
vo = v199;
- *(u*)(vo + 48) = *(u*)(vn + 64);
+ *(u*)(vo + 48UL) = *(u*)(vn + 64UL);
return vo;
-b103: if (vkind != 57) goto b108;
+b103: if (vkind != 57UL) goto b108;
v200 = (u)zexpr_to_ir;
v201 = vic;
- v202 = *(u*)(vn + 8);
+ v202 = *(u*)(vn + 8UL);
v203 = ((u(*)())v200)(v201, v202);
vo = v203;
return vo;
-b108: if (vkind != 37) goto b111;
+b108: if (vkind != 37UL) goto b111;
v204 = (u)zexpr_to_ir;
v205 = vic;
- v206 = *(u*)(vn + 8);
+ v206 = *(u*)(vn + 8UL);
v207 = ((u(*)())v204)(v205, v206);
vo = v207;
return vo;
-b111: if (vkind != 58) goto b114;
+b111: if (vkind != 58UL) goto b114;
v208 = (u)zexpr_to_ir;
v209 = vic;
- v210 = *(u*)(vn + 8);
+ v210 = *(u*)(vn + 8UL);
v211 = ((u(*)())v208)(v209, v210);
va = v211;
v212 = (u)zmkirop;
v213 = vic;
- v214 = 9;
+ v214 = 9UL;
v215 = va;
- v216 = 0;
+ v216 = 0UL;
v217 = ((u(*)())v212)(v213, v214, v215, v216);
vo = v217;
return vo;
-b114: if (vkind != 56) goto b118;
+b114: if (vkind != 56UL) goto b118;
v218 = (u)zexpr_to_ir;
v219 = vic;
- v220 = *(u*)(vn + 8);
+ v220 = *(u*)(vn + 8UL);
v221 = ((u(*)())v218)(v219, v220);
va = v221;
v222 = (u)zmkirop;
v223 = vic;
- v224 = 10;
+ v224 = 10UL;
v225 = va;
- v226 = 0;
+ v226 = 0UL;
v227 = ((u(*)())v222)(v223, v224, v225, v226);
vo = v227;
return vo;
-b118: if (vkind != 50) goto b122;
+b118: if (vkind != 50UL) goto b122;
v228 = (u)zmkirblock;
v229 = vic;
v230 = ((u(*)())v228)(v229);
@@ -13991,12 +14951,12 @@ b118: if (vkind != 50) goto b122;
vbool_out = v236;
v237 = (u)zmkirtmp;
v238 = vic;
- v239 = *(u*)(vn + 64);
+ v239 = *(u*)(vn + 64UL);
v240 = ((u(*)())v237)(v238, v239);
ve = v240;
v241 = (u)zexpr_to_ir;
v242 = vic;
- v243 = *(u*)(vn + 8);
+ v243 = *(u*)(vn + 8UL);
v244 = ((u(*)())v241)(v242, v243);
va = v244;
v245 = (u)zirbranch;
@@ -14005,52 +14965,57 @@ b118: if (vkind != 50) goto b122;
v248 = vbool_next;
v249 = vbool_body;
v250 = ((u(*)())v245)(v246, v247, v248, v249);
+ v250;
v251 = (u)zmkirconst;
v252 = vic;
- v253 = 0;
+ v253 = 0UL;
v254 = ((u(*)())v251)(v252, v253);
vb = v254;
v255 = (u)zmkirop;
v256 = vic;
- v257 = 6;
+ v257 = 6UL;
v258 = ve;
v259 = vb;
v260 = ((u(*)())v255)(v256, v257, v258, v259);
vo = v260;
- *(u*)(vo + 48) = *(u*)(vn + 64);
+ *(u*)(vo + 48UL) = *(u*)(vn + 64UL);
v261 = (u)ziraddop;
v262 = vic;
v263 = vo;
v264 = ((u(*)())v261)(v262, v263);
+ v264;
v265 = (u)zirjump;
v266 = vic;
v267 = vbool_out;
v268 = vbool_next;
v269 = ((u(*)())v265)(v266, v267, v268);
+ v269;
v270 = (u)zmkirconst;
v271 = vic;
- v272 = 1;
+ v272 = 1UL;
v273 = ((u(*)())v270)(v271, v272);
vb = v273;
v274 = (u)zmkirop;
v275 = vic;
- v276 = 6;
+ v276 = 6UL;
v277 = ve;
v278 = vb;
v279 = ((u(*)())v274)(v275, v276, v277, v278);
vo = v279;
- *(u*)(vo + 48) = *(u*)(vn + 64);
+ *(u*)(vo + 48UL) = *(u*)(vn + 64UL);
v280 = (u)ziraddop;
v281 = vic;
v282 = vo;
v283 = ((u(*)())v280)(v281, v282);
+ v283;
v284 = (u)zirjump;
v285 = vic;
v286 = vbool_out;
v287 = vbool_out;
v288 = ((u(*)())v284)(v285, v286, v287);
+ v288;
return ve;
-b122: if (vkind != 51) goto b138;
+b122: if (vkind != 51UL) goto b138;
v289 = (u)zmkirblock;
v290 = vic;
v291 = ((u(*)())v289)(v290);
@@ -14069,12 +15034,12 @@ b122: if (vkind != 51) goto b138;
vbool_out = v300;
v301 = (u)zmkirtmp;
v302 = vic;
- v303 = *(u*)(vn + 64);
+ v303 = *(u*)(vn + 64UL);
v304 = ((u(*)())v301)(v302, v303);
ve = v304;
v305 = (u)zexpr_to_ir;
v306 = vic;
- v307 = *(u*)(vn + 8);
+ v307 = *(u*)(vn + 8UL);
v308 = ((u(*)())v305)(v306, v307);
va = v308;
v309 = (u)zirbranch;
@@ -14083,35 +15048,38 @@ b122: if (vkind != 51) goto b138;
v312 = vbool_next;
v313 = vbool_body;
v314 = ((u(*)())v309)(v310, v311, v312, v313);
+ v314;
v315 = (u)zmkirconst;
v316 = vic;
- v317 = 1;
+ v317 = 1UL;
v318 = ((u(*)())v315)(v316, v317);
vb = v318;
v319 = (u)zmkirop;
v320 = vic;
- v321 = 6;
+ v321 = 6UL;
v322 = ve;
v323 = vb;
v324 = ((u(*)())v319)(v320, v321, v322, v323);
vo = v324;
- *(u*)(vo + 48) = *(u*)(vn + 64);
+ *(u*)(vo + 48UL) = *(u*)(vn + 64UL);
v325 = (u)ziraddop;
v326 = vic;
v327 = vo;
v328 = ((u(*)())v325)(v326, v327);
+ v328;
v329 = (u)zirjump;
v330 = vic;
v331 = vbool_out;
v332 = vbool_next;
v333 = ((u(*)())v329)(v330, v331, v332);
+ v333;
v334 = (u)zmkirblock;
v335 = vic;
v336 = ((u(*)())v334)(v335);
vbool_next = v336;
v337 = (u)zexpr_to_ir;
v338 = vic;
- v339 = *(u*)(vn + 16);
+ v339 = *(u*)(vn + 16UL);
v340 = ((u(*)())v337)(v338, v339);
va = v340;
v341 = (u)zirbranch;
@@ -14120,52 +15088,57 @@ b122: if (vkind != 51) goto b138;
v344 = vbool_next;
v345 = vbool_final;
v346 = ((u(*)())v341)(v342, v343, v344, v345);
+ v346;
v347 = (u)zmkirconst;
v348 = vic;
- v349 = 1;
+ v349 = 1UL;
v350 = ((u(*)())v347)(v348, v349);
vb = v350;
v351 = (u)zmkirop;
v352 = vic;
- v353 = 6;
+ v353 = 6UL;
v354 = ve;
v355 = vb;
v356 = ((u(*)())v351)(v352, v353, v354, v355);
vo = v356;
- *(u*)(vo + 48) = *(u*)(vn + 64);
+ *(u*)(vo + 48UL) = *(u*)(vn + 64UL);
v357 = (u)ziraddop;
v358 = vic;
v359 = vo;
v360 = ((u(*)())v357)(v358, v359);
+ v360;
v361 = (u)zirjump;
v362 = vic;
v363 = vbool_out;
v364 = vbool_next;
v365 = ((u(*)())v361)(v362, v363, v364);
+ v365;
v366 = (u)zmkirconst;
v367 = vic;
- v368 = 0;
+ v368 = 0UL;
v369 = ((u(*)())v366)(v367, v368);
vb = v369;
v370 = (u)zmkirop;
v371 = vic;
- v372 = 6;
+ v372 = 6UL;
v373 = ve;
v374 = vb;
v375 = ((u(*)())v370)(v371, v372, v373, v374);
vo = v375;
- *(u*)(vo + 48) = *(u*)(vn + 64);
+ *(u*)(vo + 48UL) = *(u*)(vn + 64UL);
v376 = (u)ziraddop;
v377 = vic;
v378 = vo;
v379 = ((u(*)())v376)(v377, v378);
+ v379;
v380 = (u)zirjump;
v381 = vic;
v382 = vbool_out;
v383 = vbool_out;
v384 = ((u(*)())v380)(v381, v382, v383);
+ v384;
return ve;
-b138: if (vkind != 52) goto b162;
+b138: if (vkind != 52UL) goto b162;
v385 = (u)zmkirblock;
v386 = vic;
v387 = ((u(*)())v385)(v386);
@@ -14184,12 +15157,12 @@ b138: if (vkind != 52) goto b162;
vbool_out = v396;
v397 = (u)zmkirtmp;
v398 = vic;
- v399 = *(u*)(vn + 64);
+ v399 = *(u*)(vn + 64UL);
v400 = ((u(*)())v397)(v398, v399);
ve = v400;
v401 = (u)zexpr_to_ir;
v402 = vic;
- v403 = *(u*)(vn + 8);
+ v403 = *(u*)(vn + 8UL);
v404 = ((u(*)())v401)(v402, v403);
va = v404;
v405 = (u)zirbranch;
@@ -14198,9 +15171,10 @@ b138: if (vkind != 52) goto b162;
v408 = vbool_next;
v409 = vbool_body;
v410 = ((u(*)())v405)(v406, v407, v408, v409);
+ v410;
v411 = (u)zexpr_to_ir;
v412 = vic;
- v413 = *(u*)(vn + 16);
+ v413 = *(u*)(vn + 16UL);
v414 = ((u(*)())v411)(v412, v413);
va = v414;
v415 = (u)zirbranch;
@@ -14209,387 +15183,396 @@ b138: if (vkind != 52) goto b162;
v418 = vbool_next;
v419 = vbool_final;
v420 = ((u(*)())v415)(v416, v417, v418, v419);
+ v420;
v421 = (u)zmkirconst;
v422 = vic;
- v423 = 1;
+ v423 = 1UL;
v424 = ((u(*)())v421)(v422, v423);
vb = v424;
v425 = (u)zmkirop;
v426 = vic;
- v427 = 6;
+ v427 = 6UL;
v428 = ve;
v429 = vb;
v430 = ((u(*)())v425)(v426, v427, v428, v429);
vo = v430;
- *(u*)(vo + 48) = *(u*)(vn + 64);
+ *(u*)(vo + 48UL) = *(u*)(vn + 64UL);
v431 = (u)ziraddop;
v432 = vic;
v433 = vo;
v434 = ((u(*)())v431)(v432, v433);
+ v434;
v435 = (u)zirjump;
v436 = vic;
v437 = vbool_out;
v438 = vbool_next;
v439 = ((u(*)())v435)(v436, v437, v438);
+ v439;
v440 = (u)zmkirconst;
v441 = vic;
- v442 = 0;
+ v442 = 0UL;
v443 = ((u(*)())v440)(v441, v442);
vb = v443;
v444 = (u)zmkirop;
v445 = vic;
- v446 = 6;
+ v446 = 6UL;
v447 = ve;
v448 = vb;
v449 = ((u(*)())v444)(v445, v446, v447, v448);
vo = v449;
- *(u*)(vo + 48) = *(u*)(vn + 64);
+ *(u*)(vo + 48UL) = *(u*)(vn + 64UL);
v450 = (u)ziraddop;
v451 = vic;
v452 = vo;
v453 = ((u(*)())v450)(v451, v452);
+ v453;
v454 = (u)zirjump;
v455 = vic;
v456 = vbool_out;
v457 = vbool_out;
v458 = ((u(*)())v454)(v455, v456, v457);
+ v458;
return ve;
-b162: if (vkind != 39) goto b181;
+b162: if (vkind != 39UL) goto b181;
v459 = (u)zexpr_to_ir;
v460 = vic;
- v461 = *(u*)(vn + 8);
+ v461 = *(u*)(vn + 8UL);
v462 = ((u(*)())v459)(v460, v461);
va = v462;
v463 = (u)zexpr_to_ir;
v464 = vic;
- v465 = *(u*)(vn + 16);
+ v465 = *(u*)(vn + 16UL);
v466 = ((u(*)())v463)(v464, v465);
vb = v466;
v467 = (u)zmkirop;
v468 = vic;
- v469 = 25;
+ v469 = 25UL;
v470 = va;
v471 = vb;
v472 = ((u(*)())v467)(v468, v469, v470, v471);
vo = v472;
return vo;
-b181: if (vkind != 40) goto b186;
+b181: if (vkind != 40UL) goto b186;
v473 = (u)zexpr_to_ir;
v474 = vic;
- v475 = *(u*)(vn + 8);
+ v475 = *(u*)(vn + 8UL);
v476 = ((u(*)())v473)(v474, v475);
va = v476;
v477 = (u)zexpr_to_ir;
v478 = vic;
- v479 = *(u*)(vn + 16);
+ v479 = *(u*)(vn + 16UL);
v480 = ((u(*)())v477)(v478, v479);
vb = v480;
v481 = (u)zmkirop;
v482 = vic;
- v483 = 23;
+ v483 = 23UL;
v484 = va;
v485 = vb;
v486 = ((u(*)())v481)(v482, v483, v484, v485);
vo = v486;
return vo;
-b186: if (vkind != 41) goto b191;
+b186: if (vkind != 41UL) goto b191;
v487 = (u)zexpr_to_ir;
v488 = vic;
- v489 = *(u*)(vn + 8);
+ v489 = *(u*)(vn + 8UL);
v490 = ((u(*)())v487)(v488, v489);
va = v490;
v491 = (u)zexpr_to_ir;
v492 = vic;
- v493 = *(u*)(vn + 16);
+ v493 = *(u*)(vn + 16UL);
v494 = ((u(*)())v491)(v492, v493);
vb = v494;
v495 = (u)zmkirop;
v496 = vic;
- v497 = 26;
+ v497 = 26UL;
v498 = va;
v499 = vb;
v500 = ((u(*)())v495)(v496, v497, v498, v499);
vo = v500;
return vo;
-b191: if (vkind != 42) goto b196;
+b191: if (vkind != 42UL) goto b196;
v501 = (u)zexpr_to_ir;
v502 = vic;
- v503 = *(u*)(vn + 8);
+ v503 = *(u*)(vn + 8UL);
v504 = ((u(*)())v501)(v502, v503);
va = v504;
v505 = (u)zexpr_to_ir;
v506 = vic;
- v507 = *(u*)(vn + 16);
+ v507 = *(u*)(vn + 16UL);
v508 = ((u(*)())v505)(v506, v507);
vb = v508;
v509 = (u)zmkirop;
v510 = vic;
- v511 = 24;
+ v511 = 24UL;
v512 = va;
v513 = vb;
v514 = ((u(*)())v509)(v510, v511, v512, v513);
vo = v514;
return vo;
-b196: if (vkind != 43) goto b201;
+b196: if (vkind != 43UL) goto b201;
v515 = (u)zexpr_to_ir;
v516 = vic;
- v517 = *(u*)(vn + 8);
+ v517 = *(u*)(vn + 8UL);
v518 = ((u(*)())v515)(v516, v517);
va = v518;
v519 = (u)zexpr_to_ir;
v520 = vic;
- v521 = *(u*)(vn + 16);
+ v521 = *(u*)(vn + 16UL);
v522 = ((u(*)())v519)(v520, v521);
vb = v522;
v523 = (u)zmkirop;
v524 = vic;
- v525 = 21;
+ v525 = 21UL;
v526 = va;
v527 = vb;
v528 = ((u(*)())v523)(v524, v525, v526, v527);
vo = v528;
return vo;
-b201: if (vkind != 44) goto b206;
+b201: if (vkind != 44UL) goto b206;
v529 = (u)zexpr_to_ir;
v530 = vic;
- v531 = *(u*)(vn + 8);
+ v531 = *(u*)(vn + 8UL);
v532 = ((u(*)())v529)(v530, v531);
va = v532;
v533 = (u)zexpr_to_ir;
v534 = vic;
- v535 = *(u*)(vn + 16);
+ v535 = *(u*)(vn + 16UL);
v536 = ((u(*)())v533)(v534, v535);
vb = v536;
v537 = (u)zmkirop;
v538 = vic;
- v539 = 22;
+ v539 = 22UL;
v540 = va;
v541 = vb;
v542 = ((u(*)())v537)(v538, v539, v540, v541);
vo = v542;
return vo;
-b206: if (vkind != 45) goto b211;
+b206: if (vkind != 45UL) goto b211;
v543 = (u)zexpr_to_ir;
v544 = vic;
- v545 = *(u*)(vn + 8);
+ v545 = *(u*)(vn + 8UL);
v546 = ((u(*)())v543)(v544, v545);
va = v546;
v547 = (u)zexpr_to_ir;
v548 = vic;
- v549 = *(u*)(vn + 16);
+ v549 = *(u*)(vn + 16UL);
v550 = ((u(*)())v547)(v548, v549);
vb = v550;
v551 = (u)zmkirop;
v552 = vic;
- v553 = 11;
+ v553 = 11UL;
v554 = va;
v555 = vb;
v556 = ((u(*)())v551)(v552, v553, v554, v555);
vo = v556;
return vo;
-b211: if (vkind != 46) goto b216;
+b211: if (vkind != 46UL) goto b216;
v557 = (u)zexpr_to_ir;
v558 = vic;
- v559 = *(u*)(vn + 8);
+ v559 = *(u*)(vn + 8UL);
v560 = ((u(*)())v557)(v558, v559);
va = v560;
v561 = (u)zexpr_to_ir;
v562 = vic;
- v563 = *(u*)(vn + 16);
+ v563 = *(u*)(vn + 16UL);
v564 = ((u(*)())v561)(v562, v563);
vb = v564;
v565 = (u)zmkirop;
v566 = vic;
- v567 = 20;
+ v567 = 20UL;
v568 = va;
v569 = vb;
v570 = ((u(*)())v565)(v566, v567, v568, v569);
vo = v570;
return vo;
-b216: if (vkind != 47) goto b221;
+b216: if (vkind != 47UL) goto b221;
v571 = (u)zexpr_to_ir;
v572 = vic;
- v573 = *(u*)(vn + 8);
+ v573 = *(u*)(vn + 8UL);
v574 = ((u(*)())v571)(v572, v573);
va = v574;
v575 = (u)zexpr_to_ir;
v576 = vic;
- v577 = *(u*)(vn + 16);
+ v577 = *(u*)(vn + 16UL);
v578 = ((u(*)())v575)(v576, v577);
vb = v578;
v579 = (u)zmkirop;
v580 = vic;
- v581 = 19;
+ v581 = 19UL;
v582 = va;
v583 = vb;
v584 = ((u(*)())v579)(v580, v581, v582, v583);
vo = v584;
return vo;
-b221: if (vkind != 59) goto b226;
+b221: if (vkind != 59UL) goto b226;
v585 = (u)zexpr_to_ir;
v586 = vic;
- v587 = *(u*)(vn + 8);
+ v587 = *(u*)(vn + 8UL);
v588 = ((u(*)())v585)(v586, v587);
va = v588;
v589 = (u)zexpr_to_ir;
v590 = vic;
- v591 = *(u*)(vn + 16);
+ v591 = *(u*)(vn + 16UL);
v592 = ((u(*)())v589)(v590, v591);
vb = v592;
v593 = (u)zmkirop;
v594 = vic;
- v595 = 15;
+ v595 = 15UL;
v596 = va;
v597 = vb;
v598 = ((u(*)())v593)(v594, v595, v596, v597);
vo = v598;
return vo;
-b226: if (vkind != 60) goto b231;
+b226: if (vkind != 60UL) goto b231;
v599 = (u)zexpr_to_ir;
v600 = vic;
- v601 = *(u*)(vn + 8);
+ v601 = *(u*)(vn + 8UL);
v602 = ((u(*)())v599)(v600, v601);
va = v602;
v603 = (u)zexpr_to_ir;
v604 = vic;
- v605 = *(u*)(vn + 16);
+ v605 = *(u*)(vn + 16UL);
v606 = ((u(*)())v603)(v604, v605);
vb = v606;
v607 = (u)zmkirop;
v608 = vic;
- v609 = 16;
+ v609 = 16UL;
v610 = va;
v611 = vb;
v612 = ((u(*)())v607)(v608, v609, v610, v611);
vo = v612;
return vo;
-b231: if (vkind != 48) goto b236;
+b231: if (vkind != 48UL) goto b236;
v613 = (u)zexpr_to_ir;
v614 = vic;
- v615 = *(u*)(vn + 8);
+ v615 = *(u*)(vn + 8UL);
v616 = ((u(*)())v613)(v614, v615);
va = v616;
v617 = (u)zexpr_to_ir;
v618 = vic;
- v619 = *(u*)(vn + 16);
+ v619 = *(u*)(vn + 16UL);
v620 = ((u(*)())v617)(v618, v619);
vb = v620;
v621 = (u)zmkirop;
v622 = vic;
- v623 = 17;
+ v623 = 17UL;
v624 = va;
v625 = vb;
v626 = ((u(*)())v621)(v622, v623, v624, v625);
vo = v626;
return vo;
-b236: if (vkind != 49) goto b241;
+b236: if (vkind != 49UL) goto b241;
v627 = (u)zexpr_to_ir;
v628 = vic;
- v629 = *(u*)(vn + 8);
+ v629 = *(u*)(vn + 8UL);
v630 = ((u(*)())v627)(v628, v629);
va = v630;
v631 = (u)zexpr_to_ir;
v632 = vic;
- v633 = *(u*)(vn + 16);
+ v633 = *(u*)(vn + 16UL);
v634 = ((u(*)())v631)(v632, v633);
vb = v634;
v635 = (u)zmkirop;
v636 = vic;
- v637 = 18;
+ v637 = 18UL;
v638 = va;
v639 = vb;
v640 = ((u(*)())v635)(v636, v637, v638, v639);
vo = v640;
return vo;
-b241: if (vkind != 53) goto b246;
+b241: if (vkind != 53UL) goto b246;
v641 = (u)zexpr_to_ir;
v642 = vic;
- v643 = *(u*)(vn + 8);
+ v643 = *(u*)(vn + 8UL);
v644 = ((u(*)())v641)(v642, v643);
va = v644;
v645 = (u)zexpr_to_ir;
v646 = vic;
- v647 = *(u*)(vn + 16);
+ v647 = *(u*)(vn + 16UL);
v648 = ((u(*)())v645)(v646, v647);
vb = v648;
v649 = (u)zmkirop;
v650 = vic;
- v651 = 12;
+ v651 = 12UL;
v652 = va;
v653 = vb;
v654 = ((u(*)())v649)(v650, v651, v652, v653);
vo = v654;
return vo;
-b246: if (vkind != 54) goto b251;
+b246: if (vkind != 54UL) goto b251;
v655 = (u)zexpr_to_ir;
v656 = vic;
- v657 = *(u*)(vn + 8);
+ v657 = *(u*)(vn + 8UL);
v658 = ((u(*)())v655)(v656, v657);
va = v658;
v659 = (u)zexpr_to_ir;
v660 = vic;
- v661 = *(u*)(vn + 16);
+ v661 = *(u*)(vn + 16UL);
v662 = ((u(*)())v659)(v660, v661);
vb = v662;
v663 = (u)zmkirop;
v664 = vic;
- v665 = 13;
+ v665 = 13UL;
v666 = va;
v667 = vb;
v668 = ((u(*)())v663)(v664, v665, v666, v667);
vo = v668;
return vo;
-b251: if (vkind != 55) goto b256;
+b251: if (vkind != 55UL) goto b256;
v669 = (u)zexpr_to_ir;
v670 = vic;
- v671 = *(u*)(vn + 8);
+ v671 = *(u*)(vn + 8UL);
v672 = ((u(*)())v669)(v670, v671);
va = v672;
v673 = (u)zexpr_to_ir;
v674 = vic;
- v675 = *(u*)(vn + 16);
+ v675 = *(u*)(vn + 16UL);
v676 = ((u(*)())v673)(v674, v675);
vb = v676;
v677 = (u)zmkirop;
v678 = vic;
- v679 = 14;
+ v679 = 14UL;
v680 = va;
v681 = vb;
v682 = ((u(*)())v677)(v678, v679, v680, v681);
vo = v682;
return vo;
b256: v683 = (u)zcdie;
- v684 = *(u*)vic;
+ v684 = *(u*)(vic + 0UL);
v685 = (u)"unknown expression";
v686 = ((u(*)())v683)(v684, v685);
- return 0;
-b2: v18 = 1;
+ v686;
+ return 0UL;
+b2: v18 = 1UL;
goto b3;
-b5: v19 = 1;
+b5: v19 = 1UL;
goto b6;
}
u zfail(u vc) {
u v1 = 0;
u v2 = 0;
u v3 = 0;
- if (*(u*)(vc + 128) != 0) goto b1;
+ if (*(u*)(vc + 128UL) != 0UL) goto b3;
v1 = (u)zdie;
v2 = (u)"fail underflow";
v3 = ((u(*)())v1)(v2);
-b1: if ((s)*(u*)(vc + 144) <= (s)*(u*)(vc + 80)) goto b5;
- *(u*)(vc + 80) = *(u*)(vc + 144);
- *(u*)(vc + 88) = *(u*)(vc + 72);
- *(u*)(vc + 96) = *(u*)(vc + 56);
- *(u*)(vc + 104) = *(u*)(vc + 64);
- *(u*)(vc + 112) = 0;
-b5: *(u*)(vc + 128) = *(u*)(vc + 128) - 1;
- *(u*)(vc + 48) = *(u*)(*(u*)(vc + 120) + *(u*)(vc + 128) * 48);
- *(u*)(vc + 144) = *(u*)(*(u*)(vc + 120) + *(u*)(vc + 128) * 48 + 8);
- *(u*)(vc + 152) = *(u*)(*(u*)(vc + 120) + *(u*)(vc + 128) * 48 + 16);
- *(u*)(vc + 72) = *(u*)(*(u*)(vc + 120) + *(u*)(vc + 128) * 48 + 24);
- *(u*)(vc + 56) = *(u*)(*(u*)(vc + 120) + *(u*)(vc + 128) * 48 + 32);
- *(u*)(vc + 64) = *(u*)(*(u*)(vc + 120) + *(u*)(vc + 128) * 48 + 40);
- return 0;
+ v3;
+b1: if ((s)*(u*)(vc + 144UL) <= (s)*(u*)(vc + 80UL)) goto b7;
+ *(u*)(vc + 80UL) = *(u*)(vc + 144UL);
+ *(u*)(vc + 88UL) = *(u*)(vc + 72UL);
+ *(u*)(vc + 96UL) = *(u*)(vc + 56UL);
+ *(u*)(vc + 104UL) = *(u*)(vc + 64UL);
+ *(u*)(vc + 112UL) = 0UL;
+b5: *(u*)(vc + 128UL) = *(u*)(vc + 128UL) - 1UL;
+ *(u*)(vc + 48UL) = *(u*)(*(u*)(vc + 120UL) + *(u*)(vc + 128UL) * 48UL + 0UL);
+ *(u*)(vc + 144UL) = *(u*)(*(u*)(vc + 120UL) + *(u*)(vc + 128UL) * 48UL + 8UL);
+ *(u*)(vc + 152UL) = *(u*)(*(u*)(vc + 120UL) + *(u*)(vc + 128UL) * 48UL + 16UL);
+ *(u*)(vc + 72UL) = *(u*)(*(u*)(vc + 120UL) + *(u*)(vc + 128UL) * 48UL + 24UL);
+ *(u*)(vc + 56UL) = *(u*)(*(u*)(vc + 120UL) + *(u*)(vc + 128UL) * 48UL + 32UL);
+ *(u*)(vc + 64UL) = *(u*)(*(u*)(vc + 120UL) + *(u*)(vc + 128UL) * 48UL + 40UL);
+ return 0UL;
+b7: goto b5;
+b3: goto b1;
}
u zfclose(u vf) {
u v1 = 0;
@@ -14612,22 +15595,27 @@ u zfclose(u vf) {
v1 = (u)zfflush;
v2 = vf;
v3 = ((u(*)())v1)(v2);
+ v3;
v4 = (u)zclose;
- v5 = *(u*)(vf + 8);
+ v5 = *(u*)(vf + 8UL);
v6 = ((u(*)())v4)(v5);
- if (v6 == 0) goto b2;
+ if (v6 == 0UL) goto b4;
v7 = (u)zdie;
v8 = (u)"write failed";
v9 = ((u(*)())v7)(v8);
+ v9;
b2: v10 = (u)zfree;
- v11 = *(u*)vf;
- v12 = *(u*)(vf + 16);
+ v11 = *(u*)(vf + 0UL);
+ v12 = *(u*)(vf + 16UL);
v13 = ((u(*)())v10)(v11, v12);
+ v13;
v14 = (u)zfree;
- v15 = *(u*)vf;
+ v15 = *(u*)(vf + 0UL);
v16 = vf;
v17 = ((u(*)())v14)(v15, v16);
- return 0;
+ v17;
+ return 0UL;
+b4: goto b2;
}
u zffill(u vf) {
u vret = 0;
@@ -14642,29 +15630,35 @@ u zffill(u vf) {
u v10 = 0;
u v11 = 0;
u v12 = 0;
- if (!*(u*)(vf + 48)) goto b1;
- return 0;
-b1: if (*(u*)(vf + 24) != *(u*)(vf + 32)) goto b4;
- *(u*)(vf + 24) = 0;
- *(u*)(vf + 32) = 0;
-b4: if (*(u*)(vf + 32) != *(u*)(vf + 40)) goto b7;
+ if (!*(u*)(vf + 48UL)) goto b3;
+ return 0UL;
+b3: if (*(u*)(vf + 24UL) != *(u*)(vf + 32UL)) goto b6;
+ *(u*)(vf + 24UL) = 0UL;
+ *(u*)(vf + 32UL) = 0UL;
+b4: if (*(u*)(vf + 32UL) != *(u*)(vf + 40UL)) goto b9;
v2 = (u)zdie;
v3 = (u)"out of space";
v4 = ((u(*)())v2)(v3);
+ v4;
b7: v5 = (u)zread;
- v6 = *(u*)(vf + 8);
- v7 = *(u*)(vf + 16) + *(u*)(vf + 32);
- v8 = *(u*)(vf + 40) - *(u*)(vf + 32);
+ v6 = *(u*)(vf + 8UL);
+ v7 = *(u*)(vf + 16UL) + *(u*)(vf + 32UL) * 1UL;
+ v8 = *(u*)(vf + 40UL) - *(u*)(vf + 32UL);
v9 = ((u(*)())v5)(v6, v7, v8);
vret = v9;
- if ((s)vret >= (s)0) goto b12;
+ if ((s)vret >= (s)0UL) goto b14;
v10 = (u)zdie;
v11 = (u)"read failed";
v12 = ((u(*)())v10)(v11);
-b12: if (vret != 0) goto b16;
- *(u*)(vf + 48) = 1;
-b16: *(u*)(vf + 32) = *(u*)(vf + 32) + vret;
- return 0;
+ v12;
+b12: if (vret != 0UL) goto b18;
+ *(u*)(vf + 48UL) = 1UL;
+b16: *(u*)(vf + 32UL) = *(u*)(vf + 32UL) + vret;
+ return 0UL;
+b18: goto b16;
+b14: goto b12;
+b9: goto b7;
+b6: goto b4;
}
u zfflush(u vf) {
u vret = 0;
@@ -14676,40 +15670,44 @@ u zfflush(u vf) {
u v7 = 0;
u v8 = 0;
u v9 = 0;
-b1: if (*(u*)(vf + 24) != *(u*)(vf + 32)) goto b3;
- *(u*)(vf + 24) = 0;
- *(u*)(vf + 32) = 0;
- return 0;
-b3: v2 = (u)zwrite;
- v3 = *(u*)(vf + 8);
- v4 = *(u*)(vf + 16) + *(u*)(vf + 24);
- v5 = *(u*)(vf + 32) - *(u*)(vf + 24);
+b1: if (*(u*)(vf + 24UL) != *(u*)(vf + 32UL)) goto b5;
+ *(u*)(vf + 24UL) = 0UL;
+ *(u*)(vf + 32UL) = 0UL;
+ return 0UL;
+b5: v2 = (u)zwrite;
+ v3 = *(u*)(vf + 8UL);
+ v4 = *(u*)(vf + 16UL) + *(u*)(vf + 24UL) * 1UL;
+ v5 = *(u*)(vf + 32UL) - *(u*)(vf + 24UL);
v6 = ((u(*)())v2)(v3, v4, v5);
vret = v6;
- if ((s)vret >= (s)0) goto b7;
+ if ((s)vret >= (s)0UL) goto b9;
v7 = (u)zdie;
v8 = (u)"write failed";
v9 = ((u(*)())v7)(v8);
-b7: *(u*)(vf + 24) = *(u*)(vf + 24) + vret;
+ v9;
+b7: *(u*)(vf + 24UL) = *(u*)(vf + 24UL) + vret;
goto b1;
+b9: goto b7;
}
u zfgetc(u vf) {
u vch = 0;
u v2 = 0;
u v3 = 0;
u v4 = 0;
- if (*(u*)(vf + 24) != *(u*)(vf + 32)) goto b1;
+ if (*(u*)(vf + 24UL) != *(u*)(vf + 32UL)) goto b3;
v2 = (u)zffill;
v3 = vf;
v4 = ((u(*)())v2)(v3);
-b1: if (!*(u*)(vf + 48)) goto b5;
+ v4;
+b1: if (!*(u*)(vf + 48UL)) goto b7;
return -1UL;
-b5: vch = (u)*(b*)(*(u*)(vf + 16) + *(u*)(vf + 24));
- *(u*)(vf + 24) = *(u*)(vf + 24) + 1;
+b7: vch = (u)*(b*)(*(u*)(vf + 16UL) + *(u*)(vf + 24UL) * 1UL);
+ *(u*)(vf + 24UL) = *(u*)(vf + 24UL) + 1UL;
return vch;
+b3: goto b1;
}
u zfillpos(u vc, u vn) {
- return 0;
+ return 0UL;
}
u zfind(u vc, u vname, u vmember_name, u vmake) {
u vlink = 0;
@@ -14747,106 +15745,108 @@ u zfind(u vc, u vname, u vmember_name, u vmake) {
u v36 = 0;
u v37 = 0;
u v38 = 0;
- vp = 0;
- vlink = vc + 56;
+ vp = 0UL;
+ vlink = vc + 56UL;
b1: vd = *(u*)vlink;
if (!vd) goto b7;
- v8 = 0;
-b8: if (!v8) goto b3;
+ v8 = 0UL;
+b8: if (!v8) goto b5;
if (!vmake) goto b46;
- v22 = 0;
-b47: if (!v22) goto b42;
- return 0;
-b42: v23 = (u)zalloc;
- v24 = *(u*)vc;
- v25 = 224;
+ v22 = 0UL;
+b47: if (!v22) goto b44;
+ return 0UL;
+b44: v23 = (u)zalloc;
+ v24 = *(u*)(vc + 0UL);
+ v25 = 224UL;
v26 = ((u(*)())v23)(v24, v25);
vd = v26;
- *(u*)(vd + 32) = vname;
- *(u*)(vd + 40) = vmember_name;
+ *(u*)(vd + 32UL) = vname;
+ *(u*)(vd + 40UL) = vmember_name;
v27 = (u)zrb_link;
- v28 = vc + 56;
+ v28 = vc + 56UL;
v29 = vlink;
v30 = vp;
- v31 = vd;
+ v31 = vd + 0UL;
v32 = ((u(*)())v27)(v28, v29, v30, v31);
- *(u*)(vd + 48) = 0;
- *(u*)(vd + 72) = 0;
- *(u*)(vd + 80) = 0;
+ v32;
+ *(u*)(vd + 48UL) = 0UL;
+ *(u*)(vd + 72UL) = 0UL;
+ *(u*)(vd + 80UL) = 0UL;
v33 = (u)zmklabel;
- v34 = *(u*)(vc + 48);
+ v34 = *(u*)(vc + 48UL);
v35 = ((u(*)())v33)(v34);
- *(u*)(vd + 88) = v35;
- *(u*)(vd + 96) = 0;
- *(u*)(vd + 112) = 0;
- *(u*)(vd + 120) = 0;
- *(u*)(vd + 128) = 0;
- *(u*)(vd + 152) = 0;
- *(u*)(vd + 160) = 0;
- *(u*)(vd + 168) = 0;
- *(u*)(vd + 176) = 0;
- *(u*)(vd + 184) = 0;
- *(u*)(vd + 192) = 0;
- *(u*)(vd + 200) = 0;
- *(u*)(vd + 208) = 0;
+ *(u*)(vd + 88UL) = v35;
+ *(u*)(vd + 96UL) = 0UL;
+ *(u*)(vd + 112UL) = 0UL;
+ *(u*)(vd + 120UL) = 0UL;
+ *(u*)(vd + 128UL) = 0UL;
+ *(u*)(vd + 152UL) = 0UL;
+ *(u*)(vd + 160UL) = 0UL;
+ *(u*)(vd + 168UL) = 0UL;
+ *(u*)(vd + 176UL) = 0UL;
+ *(u*)(vd + 184UL) = 0UL;
+ *(u*)(vd + 192UL) = 0UL;
+ *(u*)(vd + 200UL) = 0UL;
+ *(u*)(vd + 208UL) = 0UL;
v36 = (u)zmklabel;
- v37 = *(u*)(vc + 48);
+ v37 = *(u*)(vc + 48UL);
v38 = ((u(*)())v36)(v37);
- *(u*)(vd + 216) = v38;
+ *(u*)(vd + 216UL) = v38;
return vd;
-b46: v22 = 1;
+b46: v22 = 1UL;
goto b47;
-b3: v9 = (u)zstrcmp;
+b5: v9 = (u)zstrcmp;
v10 = vname;
- v11 = *(u*)(vd + 32);
+ v11 = *(u*)(vd + 32UL);
v12 = ((u(*)())v9)(v10, v11);
vdir = v12;
- if (vdir != 0) goto b10;
+ if (vdir != 0UL) goto b12;
if (!vmember_name) goto b21;
- v14 = 0;
+ v14 = 0UL;
b22: if (!v14) goto b17;
- if (!*(u*)(vd + 40)) goto b24;
- v15 = 0;
+ if (!*(u*)(vd + 40UL)) goto b24;
+ v15 = 0UL;
b25: if (!v15) goto b17;
- v13 = 1;
+ v13 = 1UL;
b19: if (!v13) goto b15;
- vdir = 0;
-b10: if ((s)vdir >= (s)0) goto b39;
- vlink = vd + 16;
- vp = vd;
- goto b1;
-b39: if ((s)vdir <= (s)0) goto b41;
- vlink = vd + 24;
- vp = vd;
- goto b1;
+ vdir = 0UL;
+b13:b10: if ((s)vdir >= (s)0UL) goto b39;
+ vlink = vd + 0UL + 16UL;
+ vp = vd + 0UL;
+b37: goto b1;
+b39: if ((s)vdir <= (s)0UL) goto b41;
+ vlink = vd + 0UL + 24UL;
+ vp = vd + 0UL;
+ goto b37;
b41: return vd;
b15: if (!vmember_name) goto b29;
- v16 = 0;
+ v16 = 0UL;
b30: if (!v16) goto b27;
vdir = -1UL;
- goto b10;
-b27: if (!*(u*)(vd + 40)) goto b34;
- v17 = 0;
+ goto b13;
+b27: if (!*(u*)(vd + 40UL)) goto b34;
+ v17 = 0UL;
b35: if (!v17) goto b32;
- vdir = 1;
- goto b10;
+ vdir = 1UL;
+ goto b13;
b32: v18 = (u)zstrcmp;
v19 = vmember_name;
- v20 = *(u*)(vd + 40);
+ v20 = *(u*)(vd + 40UL);
v21 = ((u(*)())v18)(v19, v20);
vdir = v21;
- goto b10;
-b34: v17 = 1;
+ goto b13;
+b34: v17 = 1UL;
goto b35;
-b29: v16 = 1;
+b29: v16 = 1UL;
goto b30;
-b17: v13 = 0;
+b17: v13 = 0UL;
goto b19;
-b24: v15 = 1;
+b24: v15 = 1UL;
goto b25;
-b21: v14 = 1;
+b21: v14 = 1UL;
goto b22;
-b7: v8 = 1;
+b12: goto b10;
+b7: v8 = 1UL;
goto b8;
}
u zfind_section(u vc, u vname) {
@@ -14856,20 +15856,20 @@ u zfind_section(u vc, u vname) {
u v5 = 0;
u v6 = 0;
u v7 = 0;
- vn = *(u*)(vc + 64);
+ vn = *(u*)(vc + 64UL);
b1: if (!vn) goto b7;
- v3 = 0;
-b8: if (!v3) goto b3;
+ v3 = 0UL;
+b8: if (!v3) goto b5;
b2: return vn;
-b3: v4 = (u)zstrcmp;
- v5 = *(u*)(vn + 8);
+b5: v4 = (u)zstrcmp;
+ v5 = *(u*)(vn + 8UL);
v6 = vname;
v7 = ((u(*)())v4)(v5, v6);
- if (v7 != 0) goto b9;
+ if (v7 != 0UL) goto b11;
goto b2;
-b9: vn = *(u*)vn;
+b11: vn = *(u*)(vn + 0UL);
goto b1;
-b7: v3 = 1;
+b7: v3 = 1UL;
goto b8;
}
u zfirst_decl(u vc) {
@@ -14877,23 +15877,23 @@ u zfirst_decl(u vc) {
u v2 = 0;
u v3 = 0;
u v4 = 0;
- if (!*(u*)(vc + 56)) goto b5;
- v1 = 0;
-b6: if (!v1) goto b1;
- return 0;
-b1: v2 = (u)zrb_first;
- v3 = *(u*)(vc + 56);
+ if (!*(u*)(vc + 56UL)) goto b5;
+ v1 = 0UL;
+b6: if (!v1) goto b3;
+ return 0UL;
+b3: v2 = (u)zrb_first;
+ v3 = *(u*)(vc + 56UL) + 0UL;
v4 = ((u(*)())v2)(v3);
return v4;
-b5: v1 = 1;
+b5: v1 = 1UL;
goto b6;
}
u zfixup(u vc, u vhere, u vdelta) {
- *(b*)vhere = vdelta;
- *(b*)(vhere + 1) = vdelta >> 8;
- *(b*)(vhere + 2) = vdelta >> 16;
- *(b*)(vhere + 3) = vdelta >> 24;
- return 0;
+ *(b*)(vhere + 0UL * 1UL) = vdelta;
+ *(b*)(vhere + 1UL * 1UL) = vdelta >> 8UL;
+ *(b*)(vhere + 2UL * 1UL) = vdelta >> 16UL;
+ *(b*)(vhere + 3UL * 1UL) = vdelta >> 24UL;
+ return 0UL;
}
u zfixup_label(u vc, u vl) {
u vf = 0;
@@ -14906,26 +15906,29 @@ u zfixup_label(u vc, u vl) {
u v9 = 0;
u v10 = 0;
u v11 = 0;
- if (!*(u*)(vl + 16)) goto b1;
+ if (!*(u*)(vl + 16UL)) goto b3;
v3 = (u)zdie;
v4 = (u)"already fixed";
v5 = ((u(*)())v3)(v4);
-b1: *(u*)(vl + 8) = *(u*)(vc + 24);
- *(u*)(vl + 16) = 1;
- vf = *(u*)vl;
+ v5;
+b1: *(u*)(vl + 8UL) = *(u*)(vc + 24UL);
+ *(u*)(vl + 16UL) = 1UL;
+ vf = *(u*)(vl + 0UL);
b5: if (!vf) goto b11;
- v6 = 0;
-b12: if (!v6) goto b7;
- return 0;
-b7: v7 = (u)zfixup;
+ v6 = 0UL;
+b12: if (!v6) goto b9;
+ return 0UL;
+b9: v7 = (u)zfixup;
v8 = vc;
- v9 = *(u*)(vf + 8);
- v10 = *(u*)(vl + 8) - *(u*)(vf + 16);
+ v9 = *(u*)(vf + 8UL);
+ v10 = *(u*)(vl + 8UL) - *(u*)(vf + 16UL);
v11 = ((u(*)())v7)(v8, v9, v10);
- vf = *(u*)vf;
+ v11;
+ vf = *(u*)(vf + 0UL);
goto b5;
-b11: v6 = 1;
+b11: v6 = 1UL;
goto b12;
+b3: goto b1;
}
u zfopen(u vfd, u va) {
u vf = 0;
@@ -14939,20 +15942,20 @@ u zfopen(u vfd, u va) {
u v10 = 0;
v3 = (u)zalloc;
v4 = va;
- v5 = 64;
+ v5 = 64UL;
v6 = ((u(*)())v3)(v4, v5);
vf = v6;
- *(u*)(vf + 8) = vfd;
- *(u*)vf = va;
- *(u*)(vf + 24) = 0;
- *(u*)(vf + 32) = 0;
- *(u*)(vf + 40) = 65536UL;
- *(u*)(vf + 48) = 0;
+ *(u*)(vf + 8UL) = vfd;
+ *(u*)(vf + 0UL) = va;
+ *(u*)(vf + 24UL) = 0UL;
+ *(u*)(vf + 32UL) = 0UL;
+ *(u*)(vf + 40UL) = 4096UL * 16UL;
+ *(u*)(vf + 48UL) = 0UL;
v7 = (u)zalloc;
v8 = va;
- v9 = *(u*)(vf + 40);
+ v9 = *(u*)(vf + 40UL);
v10 = ((u(*)())v7)(v8, v9);
- *(u*)(vf + 16) = v10;
+ *(u*)(vf + 16UL) = v10;
return vf;
}
u zfputc(u vf, u vch) {
@@ -14975,40 +15978,46 @@ u zfputc(u vf, u vch) {
u v18 = 0;
u v19 = 0;
if (!vf) goto b5;
- v3 = 0;
-b6: if (!v3) goto b1;
+ v3 = 0UL;
+b6: if (!v3) goto b3;
vb = vch;
v4 = (u)zwrite;
- v5 = 1;
+ v5 = 1UL;
v6 = (u)&vb;
- v7 = 1;
+ v7 = 1UL;
v8 = ((u(*)())v4)(v5, v6, v7);
- if (v8 == 1) goto b7;
+ if (v8 == 1UL) goto b9;
v9 = (u)zexit;
- v10 = 3;
+ v10 = 3UL;
v11 = ((u(*)())v9)(v10);
-b7: return 0;
-b1: if (*(u*)(vf + 32) != *(u*)(vf + 40)) goto b12;
+ v11;
+b7: return 0UL;
+b9: goto b7;
+b3: if (*(u*)(vf + 32UL) != *(u*)(vf + 40UL)) goto b14;
v12 = (u)zfflush;
v13 = vf;
v14 = ((u(*)())v12)(v13);
-b12: *(b*)(*(u*)(vf + 16) + *(u*)(vf + 32)) = vch;
- *(u*)(vf + 32) = *(u*)(vf + 32) + 1;
- if (vch != 10) goto b20;
- if (!*(u*)(vf + 56)) goto b24;
- v16 = 0;
+ v14;
+b12: *(b*)(*(u*)(vf + 16UL) + *(u*)(vf + 32UL) * 1UL) = vch;
+ *(u*)(vf + 32UL) = *(u*)(vf + 32UL) + 1UL;
+ if (vch != 10UL) goto b20;
+ if (!*(u*)(vf + 56UL)) goto b24;
+ v16 = 0UL;
b25: if (!v16) goto b20;
- v15 = 1;
-b22: if (!v15) goto b16;
+ v15 = 1UL;
+b22: if (!v15) goto b18;
v17 = (u)zfflush;
v18 = vf;
v19 = ((u(*)())v17)(v18);
-b16: return 0;
-b20: v15 = 0;
+ v19;
+b16: return 0UL;
+b18: goto b16;
+b20: v15 = 0UL;
goto b22;
-b24: v16 = 1;
+b24: v16 = 1UL;
goto b25;
-b5: v3 = 1;
+b14: goto b12;
+b5: v3 = 1UL;
goto b6;
}
u zfputd(u vout, u vn) {
@@ -15025,25 +16034,29 @@ u zfputd(u vout, u vn) {
u v12 = 0;
u v13 = 0;
u v14 = 0;
- if ((s)vn >= (s)0) goto b3;
+ if ((s)vn >= (s)0UL) goto b3;
v3 = (u)zfputc;
v4 = vout;
- v5 = 45;
+ v5 = 45UL;
v6 = ((u(*)())v3)(v4, v5);
- va = -(u)((s)vn % (s)10);
+ v6;
+ va = -(u)((s)vn % (s)10UL);
vn = (u)((s)vn / (s)-10UL);
-b1: if (vn == 0) goto b5;
+b1: if (vn == 0UL) goto b7;
v7 = (u)zfputd;
v8 = vout;
v9 = vn;
v10 = ((u(*)())v7)(v8, v9);
+ v10;
b5: v11 = (u)zfputc;
v12 = vout;
- v13 = 48 + va;
+ v13 = 48UL + va;
v14 = ((u(*)())v11)(v12, v13);
- return 0;
-b3: va = (u)((s)vn % (s)10);
- vn = (u)((s)vn / (s)10);
+ v14;
+ return 0UL;
+b7: goto b5;
+b3: va = (u)((s)vn % (s)10UL);
+ vn = (u)((s)vn / (s)10UL);
goto b1;
}
u zfputh(u vout, u vn) {
@@ -15056,18 +16069,21 @@ u zfputh(u vout, u vn) {
u v8 = 0;
u v9 = 0;
u v10 = 0;
- vd = vn & 15;
- vn = vn >> 4;
- if (!vn) goto b1;
+ vd = vn & 15UL;
+ vn = vn >> 4UL;
+ if (!vn) goto b3;
v3 = (u)zfputh;
v4 = vout;
v5 = vn;
v6 = ((u(*)())v3)(v4, v5);
+ v6;
b1: v7 = (u)zfputc;
v8 = vout;
- v9 = (u)*(b*)((u)"0123456789abcdef" + vd);
+ v9 = (u)*(b*)((u)"0123456789abcdef" + vd * 1UL);
v10 = ((u(*)())v7)(v8, v9);
- return 0;
+ v10;
+ return 0UL;
+b3: goto b1;
}
u zfputs(u vf, u vs) {
u vi = 0;
@@ -15076,18 +16092,19 @@ u zfputs(u vf, u vs) {
u v5 = 0;
u v6 = 0;
u v7 = 0;
- vi = 0;
-b1: if (!(u)*(b*)(vs + vi)) goto b7;
- v3 = 0;
-b8: if (!v3) goto b3;
- return 0;
-b3: v4 = (u)zfputc;
+ vi = 0UL;
+b1: if (!(u)*(b*)(vs + vi * 1UL)) goto b7;
+ v3 = 0UL;
+b8: if (!v3) goto b5;
+ return 0UL;
+b5: v4 = (u)zfputc;
v5 = vf;
- v6 = (u)*(b*)(vs + vi);
+ v6 = (u)*(b*)(vs + vi * 1UL);
v7 = ((u(*)())v4)(v5, v6);
- vi = vi + 1;
+ v7;
+ vi = vi + 1UL;
goto b1;
-b7: v3 = 1;
+b7: v3 = 1UL;
goto b8;
}
u zfreadall(u vf, u vsize) {
@@ -15116,29 +16133,29 @@ u zfreadall(u vf, u vsize) {
u v24 = 0;
u v25 = 0;
u v26 = 0;
- vi = 0;
- vcap = 0;
+ vi = 0UL;
+ vcap = 0UL;
b1: v7 = (u)zfgetc;
v8 = vf;
v9 = ((u(*)())v7)(v8);
vch = v9;
- if (vch != -1UL) goto b4;
+ if (vch != -1UL) goto b6;
*(u*)vsize = vi;
return vret;
-b4: if (vi != vcap) goto b7;
- if (vcap != 0) goto b12;
- vcap = 4096;
+b6: if (vi != vcap) goto b9;
+ if (vcap != 0UL) goto b12;
+ vcap = 4096UL;
v10 = (u)zalloc;
- v11 = *(u*)vf;
+ v11 = *(u*)(vf + 0UL);
v12 = vcap;
v13 = ((u(*)())v10)(v11, v12);
vret = v13;
-b7: *(b*)(vret + vi) = vch;
- vi = vi + 1;
+b10:b7: *(b*)(vret + vi * 1UL) = vch;
+ vi = vi + 1UL;
goto b1;
-b12: vcap = vcap * 2;
+b12: vcap = vcap * 2UL;
v14 = (u)zalloc;
- v15 = *(u*)vf;
+ v15 = *(u*)(vf + 0UL);
v16 = vcap;
v17 = ((u(*)())v14)(v15, v16);
vtmp = v17;
@@ -15147,15 +16164,18 @@ b12: vcap = vcap * 2;
v20 = vret;
v21 = vi;
v22 = ((u(*)())v18)(v19, v20, v21);
+ v22;
v23 = (u)zfree;
- v24 = *(u*)vf;
+ v24 = *(u*)(vf + 0UL);
v25 = vret;
v26 = ((u(*)())v23)(v24, v25);
+ v26;
vret = vtmp;
- goto b7;
+ goto b10;
+b9: goto b7;
}
u zfree(u va, u vp) {
- return 0;
+ return 0UL;
}
u zfunc_to_ir(u vc, u vn) {
u vic = 0;
@@ -15195,50 +16215,56 @@ u zfunc_to_ir(u vc, u vn) {
u v36 = 0;
u v37 = 0;
if (!vn) goto b5;
- v5 = 0;
-b6: if (!v5) goto b1;
- return 0;
-b1: v6 = (u)zmkirfunc;
+ v5 = 0UL;
+b6: if (!v5) goto b3;
+ return 0UL;
+b3: v6 = (u)zmkirfunc;
v7 = vc;
- v8 = *(u*)(*(u*)(*(u*)(vn + 8) + 8) + 56);
+ v8 = *(u*)(*(u*)(*(u*)(vn + 8UL) + 8UL) + 56UL);
v9 = ((u(*)())v6)(v7, v8);
vic = v9;
- *(u*)(vic + 32) = *(u*)(vn + 24);
- *(u*)(vic + 40) = *(u*)(vn + 32);
- *(u*)(vic + 48) = *(u*)(vn + 40);
+ *(u*)(vic + 32UL) = *(u*)(vn + 24UL);
+ *(u*)(vic + 40UL) = *(u*)(vn + 32UL);
+ *(u*)(vic + 48UL) = *(u*)(vn + 40UL);
v10 = (u)zargs_to_ir;
v11 = vic;
- v12 = *(u*)(*(u*)(*(u*)(vn + 8) + 16) + 8);
+ v12 = *(u*)(*(u*)(*(u*)(vn + 8UL) + 16UL) + 8UL);
v13 = ((u(*)())v10)(v11, v12);
+ v13;
v14 = (u)zlocals_to_ir;
v15 = vic;
- v16 = *(u*)(vn + 16);
+ v16 = *(u*)(vn + 16UL);
v17 = ((u(*)())v14)(v15, v16);
+ v17;
v18 = (u)zlabels_to_ir;
v19 = vic;
- v20 = *(u*)(vn + 16);
+ v20 = *(u*)(vn + 16UL);
v21 = ((u(*)())v18)(v19, v20);
+ v21;
v22 = (u)zstmt_to_ir;
v23 = vic;
- v24 = *(u*)(vn + 16);
+ v24 = *(u*)(vn + 16UL);
v25 = ((u(*)())v22)(v23, v24);
+ v25;
v26 = (u)zprototype;
v27 = vc;
- v28 = *(u*)(*(u*)(vn + 8) + 16);
+ v28 = *(u*)(*(u*)(vn + 8UL) + 16UL);
v29 = ((u(*)())v26)(v27, v28);
vt = v29;
- if (*(u*)*(u*)(vt + 16) != 1) goto b13;
+ if (*(u*)(*(u*)(vt + 16UL) + 0UL) != 1UL) goto b15;
v30 = (u)zmkirconst;
v31 = vic;
- v32 = 0;
+ v32 = 0UL;
v33 = ((u(*)())v30)(v31, v32);
vvalue = v33;
v34 = (u)zirreturn;
v35 = vic;
v36 = vvalue;
v37 = ((u(*)())v34)(v35, v36);
+ v37;
b13: return vic;
-b5: v5 = 1;
+b15: goto b13;
+b5: v5 = 1UL;
goto b6;
}
u zgather_include(u vc, u vfilename, u vslen) {
@@ -15263,44 +16289,50 @@ u zgather_include(u vc, u vfilename, u vslen) {
u v21 = 0;
v5 = (u)zopen;
v6 = vfilename;
- v7 = 0;
- v8 = 0;
+ v7 = 0UL;
+ v8 = 0UL;
v9 = ((u(*)())v5)(v6, v7, v8);
vfd = v9;
- if ((s)vfd >= (s)0) goto b2;
+ if ((s)vfd >= (s)0UL) goto b4;
v10 = (u)zcdie;
v11 = vc;
v12 = (u)"gather_include: failed to open include";
v13 = ((u(*)())v10)(v11, v12);
+ v13;
b2: v14 = (u)zreadall;
v15 = vfd;
v16 = vslen;
- v17 = *(u*)vc;
+ v17 = *(u*)(vc + 0UL);
v18 = ((u(*)())v14)(v15, v16, v17);
vblob = v18;
v19 = (u)zclose;
v20 = vfd;
v21 = ((u(*)())v19)(v20);
+ v21;
return vblob;
+b4: goto b2;
}
u zget(u vc) {
u vch = 0;
u v2 = 0;
u v3 = 0;
u v4 = 0;
- if (*(u*)(vc + 48) != *(u*)(vc + 40)) goto b1;
+ if (*(u*)(vc + 48UL) != *(u*)(vc + 40UL)) goto b3;
return -1UL;
-b1: vch = (u)*(b*)(*(u*)(vc + 32) + *(u*)(vc + 48));
- *(u*)(vc + 48) = *(u*)(vc + 48) + 1;
- *(u*)(vc + 64) = *(u*)(vc + 64) + 1;
- if (vch != 10) goto b4;
- *(u*)(vc + 64) = 1;
- *(u*)(vc + 56) = *(u*)(vc + 56) + 1;
-b4: if (vch != 0) goto b7;
+b3: vch = (u)*(b*)(*(u*)(vc + 32UL) + *(u*)(vc + 48UL) * 1UL);
+ *(u*)(vc + 48UL) = *(u*)(vc + 48UL) + 1UL;
+ *(u*)(vc + 64UL) = *(u*)(vc + 64UL) + 1UL;
+ if (vch != 10UL) goto b6;
+ *(u*)(vc + 64UL) = 1UL;
+ *(u*)(vc + 56UL) = *(u*)(vc + 56UL) + 1UL;
+b4: if (vch != 0UL) goto b9;
v2 = (u)zdie;
v3 = (u)"invalid nul in source";
v4 = ((u(*)())v2)(v3);
+ v4;
b7: return vch;
+b9: goto b7;
+b6: goto b4;
}
u zhex2int(u vs, u vlen, u vok) {
u vi = 0;
@@ -15309,80 +16341,80 @@ u zhex2int(u vs, u vlen, u vok) {
u v6 = 0;
u v7 = 0;
u v8 = 0;
- vx = 0;
- vi = 0;
-b1: if (vi != vlen) goto b3;
- *(u*)vok = 1;
+ vx = 0UL;
+ vi = 0UL;
+b1: if (vi != vlen) goto b5;
+ *(u*)vok = 1UL;
return vx;
-b3: vd = (u)*(b*)(vs + vi);
- if (vd != 95) goto b8;
- vi = vi + 1;
+b5: vd = (u)*(b*)(vs + vi * 1UL);
+ if (vd != 95UL) goto b8;
+ vi = vi + 1UL;
goto b1;
-b8: if ((s)vd < (s)48) goto b12;
- if ((s)vd > (s)57) goto b12;
- v6 = 1;
+b8: if ((s)vd < (s)48UL) goto b12;
+ if ((s)vd > (s)57UL) goto b12;
+ v6 = 1UL;
b14: if (!v6) goto b10;
- vd = vd - 48;
-b6: if ((s)vx <= (s)576460752303423487UL) goto b27;
- *(u*)vok = 0;
- return 0;
-b27: vx = vx * 16;
- if ((s)vx <= (s)(9223372036854775807UL - vd)) goto b30;
- *(u*)vok = 0;
- return 0;
-b30: vx = vx + vd;
- vi = vi + 1;
+ vd = vd - 48UL;
+b6: if ((s)vx <= (s)((1UL << 59UL) - 1UL)) goto b29;
+ *(u*)vok = 0UL;
+ return 0UL;
+b29: vx = vx * 16UL;
+ if ((s)vx <= (s)((1UL << 63UL) - 1UL - vd)) goto b32;
+ *(u*)vok = 0UL;
+ return 0UL;
+b32: vx = vx + vd;
+ vi = vi + 1UL;
goto b1;
-b10: if ((s)vd < (s)97) goto b18;
- if ((s)vd > (s)102) goto b18;
- v7 = 1;
+b10: if ((s)vd < (s)97UL) goto b18;
+ if ((s)vd > (s)102UL) goto b18;
+ v7 = 1UL;
b20: if (!v7) goto b16;
- vd = vd - 97 + 10;
+ vd = vd - 97UL + 10UL;
goto b6;
-b16: if ((s)vd < (s)65) goto b24;
- if ((s)vd > (s)70) goto b24;
- v8 = 1;
+b16: if ((s)vd < (s)65UL) goto b24;
+ if ((s)vd > (s)70UL) goto b24;
+ v8 = 1UL;
b26: if (!v8) goto b22;
- vd = vd - 65 + 10;
+ vd = vd - 65UL + 10UL;
goto b6;
-b22: *(u*)vok = 0;
- return 0;
-b24: v8 = 0;
+b22: *(u*)vok = 0UL;
+ return 0UL;
+b24: v8 = 0UL;
goto b26;
-b18: v7 = 0;
+b18: v7 = 0UL;
goto b20;
-b12: v6 = 0;
+b12: v6 = 0UL;
goto b14;
}
u zhexdig(u vch, u vok) {
u v2 = 0;
u v3 = 0;
u v4 = 0;
- if ((s)vch < (s)48) goto b5;
- if ((s)vch > (s)57) goto b5;
- v2 = 1;
+ if ((s)vch < (s)48UL) goto b5;
+ if ((s)vch > (s)57UL) goto b5;
+ v2 = 1UL;
b7: if (!v2) goto b3;
- *(u*)vok = 1;
- return vch - 48;
-b3: if ((s)vch < (s)65) goto b11;
- if ((s)vch > (s)70) goto b11;
- v3 = 1;
+ *(u*)vok = 1UL;
+ return vch - 48UL;
+b3: if ((s)vch < (s)65UL) goto b11;
+ if ((s)vch > (s)70UL) goto b11;
+ v3 = 1UL;
b13: if (!v3) goto b9;
- *(u*)vok = 1;
- return vch - 70 + 10;
-b9: if ((s)vch < (s)97) goto b17;
- if ((s)vch > (s)102) goto b17;
- v4 = 1;
+ *(u*)vok = 1UL;
+ return vch - 70UL + 10UL;
+b9: if ((s)vch < (s)97UL) goto b17;
+ if ((s)vch > (s)102UL) goto b17;
+ v4 = 1UL;
b19: if (!v4) goto b15;
- *(u*)vok = 1;
- return vch - 97 + 10;
-b15: *(u*)vok = 0;
- return 0;
-b17: v4 = 0;
+ *(u*)vok = 1UL;
+ return vch - 97UL + 10UL;
+b15: *(u*)vok = 0UL;
+ return 0UL;
+b17: v4 = 0UL;
goto b19;
-b11: v3 = 0;
+b11: v3 = 0UL;
goto b13;
-b5: v2 = 0;
+b5: v2 = 0UL;
goto b7;
}
u zhoist_locals(u vc, u vd, u vn) {
@@ -15433,86 +16465,93 @@ u zhoist_locals(u vc, u vd, u vn) {
u v47 = 0;
u v48 = 0;
if (!vn) goto b5;
- v7 = 0;
-b6: if (!v7) goto b1;
- return 0;
-b1: vkind = *(u*)vn;
- if (vkind != 21) goto b9;
+ v7 = 0UL;
+b6: if (!v7) goto b3;
+ return 0UL;
+b3: vkind = *(u*)(vn + 0UL);
+ if (vkind != 21UL) goto b9;
b10: if (!vn) goto b16;
- v8 = 0;
-b17: if (!v8) goto b12;
- return 0;
-b12: v9 = (u)zhoist_locals;
+ v8 = 0UL;
+b17: if (!v8) goto b14;
+ return 0UL;
+b14: v9 = (u)zhoist_locals;
v10 = vc;
v11 = vd;
- v12 = *(u*)(*(u*)(vn + 8) + 16);
+ v12 = *(u*)(*(u*)(vn + 8UL) + 16UL);
v13 = ((u(*)())v9)(v10, v11, v12);
- vn = *(u*)(vn + 16);
+ v13;
+ vn = *(u*)(vn + 16UL);
goto b10;
-b16: v8 = 1;
+b16: v8 = 1UL;
goto b17;
-b9: if (vkind != 5) goto b20;
+b9: if (vkind != 5UL) goto b20;
b21: if (!vn) goto b27;
- v14 = 0;
-b28: if (!v14) goto b23;
- return 0;
-b23: v15 = (u)zhoist_locals;
+ v14 = 0UL;
+b28: if (!v14) goto b25;
+ return 0UL;
+b25: v15 = (u)zhoist_locals;
v16 = vc;
v17 = vd;
- v18 = *(u*)(vn + 8);
+ v18 = *(u*)(vn + 8UL);
v19 = ((u(*)())v15)(v16, v17, v18);
- vn = *(u*)(vn + 16);
+ v19;
+ vn = *(u*)(vn + 16UL);
goto b21;
-b27: v14 = 1;
+b27: v14 = 1UL;
goto b28;
-b20: if (vkind != 26) goto b31;
+b20: if (vkind != 26UL) goto b31;
v20 = (u)zhoist_locals;
v21 = vc;
v22 = vd;
- v23 = *(u*)(vn + 8);
+ v23 = *(u*)(vn + 8UL);
v24 = ((u(*)())v20)(v21, v22, v23);
- return 0;
-b31: if (vkind != 31) goto b34;
- vname = *(u*)(*(u*)(vn + 8) + 56);
+ v24;
+ return 0UL;
+b31: if (vkind != 31UL) goto b34;
+ vname = *(u*)(*(u*)(vn + 8UL) + 56UL);
v25 = (u)zfind;
v26 = vc;
- v27 = *(u*)(vd + 32);
+ v27 = *(u*)(vd + 32UL);
v28 = vname;
- v29 = 1;
+ v29 = 1UL;
v30 = ((u(*)())v25)(v26, v27, v28, v29);
vv = v30;
- if (!*(u*)(vv + 208)) goto b36;
+ if (!*(u*)(vv + 208UL)) goto b38;
v31 = (u)zcdie;
v32 = vc;
v33 = (u)"duplicate goto";
v34 = ((u(*)())v31)(v32, v33);
-b36: *(u*)(vv + 208) = 1;
- return 0;
-b34: if (vkind == 30) goto b7;
- return 0;
-b7: vname = *(u*)(*(u*)(vn + 8) + 56);
+ v34;
+b36: *(u*)(vv + 208UL) = 1UL;
+ return 0UL;
+b38: goto b36;
+b34: if (vkind == 30UL) goto b41;
+ return 0UL;
+b41: vname = *(u*)(*(u*)(vn + 8UL) + 56UL);
v35 = (u)zprototype;
v36 = vc;
- v37 = *(u*)(vn + 16);
+ v37 = *(u*)(vn + 16UL);
v38 = ((u(*)())v35)(v36, v37);
vt = v38;
- *(u*)(vn + 64) = vt;
+ *(u*)(vn + 64UL) = vt;
v39 = (u)zfind;
v40 = vc;
- v41 = *(u*)(vd + 32);
+ v41 = *(u*)(vd + 32UL);
v42 = vname;
- v43 = 1;
+ v43 = 1UL;
v44 = ((u(*)())v39)(v40, v41, v42, v43);
vv = v44;
- if (!*(u*)(vv + 192)) goto b44;
+ if (!*(u*)(vv + 192UL)) goto b46;
v45 = (u)zcdie;
v46 = vc;
v47 = (u)"duplicate variable";
v48 = ((u(*)())v45)(v46, v47);
-b44: *(u*)(vv + 200) = vt;
- *(u*)(vv + 192) = 1;
- return 0;
-b5: v7 = 1;
+ v48;
+b44: *(u*)(vv + 200UL) = vt;
+ *(u*)(vv + 192UL) = 1UL;
+ return 0UL;
+b46: goto b44;
+b5: v7 = 1UL;
goto b6;
}
u zir_optimize(u vic) {
@@ -15537,28 +16576,10 @@ u zir_optimize(u vic) {
u v19 = 0;
u v20 = 0;
u v21 = 0;
- v1 = (u)zirfunc_dead;
- v2 = vic;
- v3 = ((u(*)())v1)(v2);
- v4 = (u)zirfunc_fold;
- v5 = vic;
- v6 = ((u(*)())v4)(v5);
- v7 = (u)zirfunc_flow;
- v8 = vic;
- v9 = ((u(*)())v7)(v8);
- v10 = (u)zirfunc_value;
- v11 = vic;
- v12 = ((u(*)())v10)(v11);
- v13 = (u)zirfunc_dead;
- v14 = vic;
- v15 = ((u(*)())v13)(v14);
- v16 = (u)zirfunc_fold;
- v17 = vic;
- v18 = ((u(*)())v16)(v17);
- v19 = (u)zirfunc_flow;
- v20 = vic;
- v21 = ((u(*)())v19)(v20);
- return 0;
+ u v22 = 0;
+ u v23 = 0;
+ u v24 = 0;
+ return 0UL;
}
u ziraddarg(u vic, u vname, u vt) {
u viv = 0;
@@ -15580,19 +16601,21 @@ u ziraddarg(u vic, u vname, u vt) {
v6 = vname;
v7 = ((u(*)())v4)(v5, v6);
viv = v7;
- if (!*(u*)viv) goto b2;
+ if (!*(u*)viv) goto b4;
v8 = (u)zcdie;
- v9 = *(u*)vic;
+ v9 = *(u*)(vic + 0UL);
v10 = (u)"duplicate var";
v11 = ((u(*)())v8)(v9, v10);
+ v11;
b2: v12 = (u)zmkirvar;
v13 = vic;
v14 = vname;
v15 = vt;
v16 = ((u(*)())v12)(v13, v14, v15);
*(u*)viv = v16;
- *(u*)(vic + 136) = *(u*)(vic + 136) + 1;
- return 0;
+ *(u*)(vic + 152UL) = *(u*)(vic + 152UL) + 1UL;
+ return 0UL;
+b4: goto b2;
}
u ziraddop(u vic, u vo) {
u vcur = 0;
@@ -15614,48 +16637,51 @@ u ziraddop(u vic, u vo) {
u v18 = 0;
u v19 = 0;
u v20 = 0;
- vcur = *(u*)(vic + 88);
+ vcur = *(u*)(vic + 104UL);
if (!vcur) goto b5;
- v5 = 0;
-b6: if (!v5) goto b1;
- return 0;
-b1: v6 = (u)zassert;
+ v5 = 0UL;
+b6: if (!v5) goto b3;
+ return 0UL;
+b3: v6 = (u)zassert;
if (!vo) goto b11;
- v9 = 0;
+ v9 = 0UL;
b12: if (!v9) goto b8;
- v8 = 0;
+ v8 = 0UL;
b9: v7 = v8;
v10 = (u)"expected op to add";
v11 = ((u(*)())v6)(v7, v10);
+ v11;
v12 = (u)zassert;
- if (!*(u*)(vcur + 32)) goto b15;
- v14 = 0;
+ if (!*(u*)(vcur + 32UL)) goto b15;
+ v14 = 0UL;
b16: v13 = v14;
v15 = (u)"block already closed";
v16 = ((u(*)())v12)(v13, v15);
- if (*(u*)(vcur + 16) != *(u*)(vcur + 24)) goto b18;
- *(u*)(vcur + 24) = *(u*)(vcur + 24) * 2 + 16;
+ v16;
+ if (*(u*)(vcur + 16UL) != *(u*)(vcur + 24UL)) goto b20;
+ *(u*)(vcur + 24UL) = *(u*)(vcur + 24UL) * 2UL + 16UL;
v17 = (u)zalloc;
- v18 = *(u*)(vic + 16);
- v19 = *(u*)(vcur + 24) * 8;
+ v18 = *(u*)(vic + 16UL);
+ v19 = *(u*)(vcur + 24UL) * 8UL;
v20 = ((u(*)())v17)(v18, v19);
vops = v20;
- vi = 0;
-b22: if (vi != *(u*)(vcur + 16)) goto b24;
- *(u*)(vcur + 8) = vops;
-b18: *(u*)(*(u*)(vcur + 8) + *(u*)(vcur + 16) * 8) = vo;
- *(u*)(vcur + 16) = *(u*)(vcur + 16) + 1;
- return 0;
-b24: *(u*)(vops + vi * 8) = *(u*)(*(u*)(vcur + 8) + vi * 8);
- vi = vi + 1;
+ vi = 0UL;
+b22: if (vi != *(u*)(vcur + 16UL)) goto b26;
+ *(u*)(vcur + 8UL) = vops;
+b18: *(u*)(*(u*)(vcur + 8UL) + *(u*)(vcur + 16UL) * 8UL) = vo;
+ *(u*)(vcur + 16UL) = *(u*)(vcur + 16UL) + 1UL;
+ return 0UL;
+b26: *(u*)(vops + vi * 8UL) = *(u*)(*(u*)(vcur + 8UL) + vi * 8UL);
+ vi = vi + 1UL;
goto b22;
-b15: v14 = 1;
+b20: goto b18;
+b15: v14 = 1UL;
goto b16;
-b8: v8 = 1;
+b8: v8 = 1UL;
goto b9;
-b11: v9 = 1;
+b11: v9 = 1UL;
goto b12;
-b5: v5 = 1;
+b5: v5 = 1UL;
goto b6;
}
u ziraddvar(u vic, u vname, u vt) {
@@ -15678,24 +16704,25 @@ u ziraddvar(u vic, u vname, u vt) {
v6 = vname;
v7 = ((u(*)())v4)(v5, v6);
viv = v7;
- if (!*(u*)viv) goto b2;
+ if (!*(u*)viv) goto b4;
v8 = (u)zcdie;
- v9 = *(u*)vic;
+ v9 = *(u*)(vic + 0UL);
v10 = (u)"duplicate var";
v11 = ((u(*)())v8)(v9, v10);
+ v11;
b2: v12 = (u)zmkirvar;
v13 = vic;
v14 = vname;
v15 = vt;
v16 = ((u(*)())v12)(v13, v14, v15);
*(u*)viv = v16;
- return 0;
+ return 0UL;
+b4: goto b2;
}
-u zirblock_dead_expr(u vic, u vb) {
- u vi = 0;
- u vj = 0;
- u vo = 0;
+u zirblock_backlink(u vic, u vib, u vfrom) {
u vkind = 0;
+ u v4 = 0;
+ u v5 = 0;
u v6 = 0;
u v7 = 0;
u v8 = 0;
@@ -15703,72 +16730,74 @@ u zirblock_dead_expr(u vic, u vb) {
u v10 = 0;
u v11 = 0;
u v12 = 0;
- if (!*(u*)(vb + 32)) goto b5;
- v6 = 0;
-b6: if (!v6) goto b1;
- return 0;
-b1: vi = 0;
- vj = 0;
-b7: if (vi != *(u*)(vb + 16)) goto b9;
- *(u*)(vb + 16) = vj;
- return 0;
-b9: vo = *(u*)(*(u*)(vb + 8) + vi * 8);
- vkind = *(u*)vo;
- if (vkind != 6) goto b16;
- v7 = 1;
-b18: if (!v7) goto b12;
- *(u*)(*(u*)(vb + 8) + vj * 8) = vo;
- vj = vj + 1;
-b12: vi = vi + 1;
- goto b7;
-b16: if (vkind != 7) goto b21;
- v8 = 1;
-b23: if (!v8) goto b19;
- v7 = 1;
- goto b18;
-b19: v7 = 0;
- goto b18;
-b21: if (vkind != 8) goto b26;
- v9 = 1;
-b28: if (!v9) goto b24;
- v8 = 1;
- goto b23;
-b24: v8 = 0;
- goto b23;
-b26: if (vkind != 27) goto b31;
- v10 = 1;
-b33: if (!v10) goto b29;
- v9 = 1;
- goto b28;
-b29: v9 = 0;
- goto b28;
-b31: if (vkind != 28) goto b36;
- v11 = 1;
-b38: if (!v11) goto b34;
- v10 = 1;
- goto b33;
-b34: v10 = 0;
- goto b33;
-b36: if (vkind != 29) goto b41;
- v12 = 1;
-b43: if (!v12) goto b39;
- v11 = 1;
- goto b38;
-b39: v11 = 0;
- goto b38;
-b41: if (vkind != 30) goto b44;
- v12 = 1;
- goto b43;
-b44: v12 = 0;
- goto b43;
-b5: v6 = 1;
- goto b6;
+ u v13 = 0;
+ u v14 = 0;
+ u v15 = 0;
+ u v16 = 0;
+ u v17 = 0;
+ u v18 = 0;
+ u v19 = 0;
+ u v20 = 0;
+ u v21 = 0;
+ u v22 = 0;
+ if (!vfrom) goto b3;
+ if (!*(u*)(vib + 40UL)) goto b6;
+ *(u*)(*(u*)(vib + 40UL) + *(u*)(vib + 48UL) * 8UL) = vfrom;
+b4: *(u*)(vib + 48UL) = *(u*)(vib + 48UL) + 1UL;
+b1: if (!*(u*)(vib + 80UL)) goto b9;
+ return 0UL;
+b9: *(u*)(vib + 80UL) = 1UL;
+ vkind = *(u*)(*(u*)(*(u*)(vib + 8UL) + (*(u*)(vib + 16UL) - 1UL) * 8UL) + 0UL);
+ if (vkind != 27UL) goto b14;
+ v4 = 1UL;
+b16: if (!v4) goto b12;
+ v5 = (u)zirblock_backlink;
+ v6 = vic;
+ v7 = *(u*)(vib + 56UL);
+ v8 = vib;
+ v9 = ((u(*)())v5)(v6, v7, v8);
+ v9;
+b10: return 0UL;
+b12: if (vkind != 29UL) goto b20;
+ v10 = (u)zirblock_backlink;
+ v11 = vic;
+ v12 = *(u*)(vib + 56UL);
+ v13 = vib;
+ v14 = ((u(*)())v10)(v11, v12, v13);
+ v14;
+ if (*(u*)(vib + 56UL) == *(u*)(vib + 64UL)) goto b24;
+ v15 = (u)zirblock_backlink;
+ v16 = vic;
+ v17 = *(u*)(vib + 64UL);
+ v18 = vib;
+ v19 = ((u(*)())v15)(v16, v17, v18);
+ v19;
+b22: goto b10;
+b24: goto b22;
+b20: if (vkind != 30UL) goto b27;
+ if (!*(u*)(vic + 88UL)) goto b30;
+ *(u*)(*(u*)(vic + 88UL) + *(u*)(vic + 96UL) * 8UL) = vib;
+b28: *(u*)(vic + 96UL) = *(u*)(vic + 96UL) + 1UL;
+ goto b10;
+b30: goto b28;
+b27: v20 = (u)zdie;
+ v21 = (u)"invalid block";
+ v22 = ((u(*)())v20)(v21);
+ v22;
+ goto b10;
+b14: if (vkind != 28UL) goto b17;
+ v4 = 1UL;
+ goto b16;
+b17: v4 = 0UL;
+ goto b16;
+b6: goto b4;
+b3: goto b1;
}
-u zirblock_flow2(u vic, u vib) {
- u vkind = 0;
- u v3 = 0;
- u v4 = 0;
- u v5 = 0;
+u zirblock_basic_value(u vic, u vib) {
+ u vi = 0;
+ u vnvals = 0;
+ u vvals = 0;
+ u vop = 0;
u v6 = 0;
u v7 = 0;
u v8 = 0;
@@ -15778,56 +16807,124 @@ u zirblock_flow2(u vic, u vib) {
u v12 = 0;
u v13 = 0;
u v14 = 0;
- if (!*(u*)(vib + 64)) goto b1;
- *(u*)(vib + 64) = 2;
- return 0;
-b1: *(u*)(vib + 64) = 1;
- vkind = *(u*)*(u*)(*(u*)(vib + 8) + (*(u*)(vib + 16) - 1) * 8);
- if (vkind != 29) goto b4;
- v3 = (u)zirblock_flow2;
- v4 = vic;
- v5 = *(u*)(vib + 48);
- v6 = ((u(*)())v3)(v4, v5);
- if (*(u*)(*(u*)(vib + 48) + 16) != 1) goto b12;
- if (*(u*)*(u*)*(u*)(*(u*)(vib + 48) + 8) != 28) goto b12;
- v7 = 1;
-b14: if (!v7) goto b4;
- *(u*)(vib + 48) = *(u*)(*(u*)(vib + 48) + 40);
-b4: if (vkind != 29) goto b19;
- v8 = 1;
-b21: if (!v8) goto b15;
- v10 = (u)zirblock_flow2;
- v11 = vic;
- v12 = *(u*)(vib + 40);
+ u v15 = 0;
+ u v16 = 0;
+ u v17 = 0;
+ u v18 = 0;
+ u v19 = 0;
+ u v20 = 0;
+ u v21 = 0;
+ u v22 = 0;
+ u v23 = 0;
+ u v24 = 0;
+ u v25 = 0;
+ u v26 = 0;
+ u v27 = 0;
+ u v28 = 0;
+ u v29 = 0;
+ u v30 = 0;
+ u v31 = 0;
+ u v32 = 0;
+ u v33 = 0;
+ u v34 = 0;
+ u v35 = 0;
+ u v36 = 0;
+ u v37 = 0;
+ u v38 = 0;
+ u v39 = 0;
+ u v40 = 0;
+ u v41 = 0;
+ u v42 = 0;
+ u v43 = 0;
+ u v44 = 0;
+ u v45 = 0;
+ u v46 = 0;
+ if (!*(u*)(vib + 32UL)) goto b5;
+ v6 = 0UL;
+b6: if (!v6) goto b3;
+ v7 = (u)zdie;
+ v8 = (u)"block not closed";
+ v9 = ((u(*)())v7)(v8);
+ v9;
+b1: if (!*(u*)(vib + 80UL)) goto b10;
+ return 0UL;
+b10: *(u*)(vib + 80UL) = 1UL;
+ vnvals = *(u*)(vic + 136UL);
+ v10 = (u)zalloc;
+ v11 = *(u*)(vic + 16UL);
+ v12 = 8UL * vnvals;
v13 = ((u(*)())v10)(v11, v12);
- if (*(u*)(*(u*)(vib + 40) + 16) != 1) goto b33;
- if (*(u*)*(u*)*(u*)(*(u*)(vib + 40) + 8) != 28) goto b33;
- v14 = 1;
-b35: if (!v14) goto b15;
- *(u*)(vib + 40) = *(u*)(*(u*)(vib + 40) + 40);
-b15: return 0;
-b33: v14 = 0;
- goto b35;
-b19: if (vkind != 27) goto b24;
- v9 = 1;
-b26: if (!v9) goto b22;
- v8 = 1;
+ vvals = v13;
+ v14 = (u)zassert_zero;
+ v15 = vvals;
+ v16 = 8UL * vnvals;
+ v17 = ((u(*)())v14)(v15, v16);
+ v17;
+ vi = 0UL;
+b13: if (vi != *(u*)(vib + 16UL)) goto b17;
+ v23 = (u)zfree;
+ v24 = *(u*)(vic + 16UL);
+ v25 = vvals;
+ v26 = ((u(*)())v23)(v24, v25);
+ v26;
+ v27 = (u)zalloc;
+ v28 = *(u*)(vic + 16UL);
+ v29 = 16UL;
+ v30 = ((u(*)())v27)(v28, v29);
+ v30;
+ vop = *(u*)(*(u*)(vib + 8UL) + (*(u*)(vib + 16UL) - 1UL) * 8UL);
+ if (*(u*)(vop + 0UL) != 29UL) goto b23;
+ v31 = (u)zirblock_basic_value;
+ v32 = vic;
+ v33 = *(u*)(vib + 56UL);
+ v34 = ((u(*)())v31)(v32, v33);
+ v34;
+ v35 = (u)zirblock_basic_value;
+ v36 = vic;
+ v37 = *(u*)(vib + 64UL);
+ v38 = ((u(*)())v35)(v36, v37);
+ v38;
+b21: return 0UL;
+b23: if (*(u*)(vop + 0UL) != 28UL) goto b29;
+ v39 = 1UL;
+b31: if (!v39) goto b27;
+ v40 = (u)zirblock_basic_value;
+ v41 = vic;
+ v42 = *(u*)(vib + 56UL);
+ v43 = ((u(*)())v40)(v41, v42);
+ v43;
goto b21;
-b22: v8 = 0;
+b27: if (*(u*)(vop + 0UL) != 30UL) goto b35;
goto b21;
-b24: if (vkind != 28) goto b27;
- v9 = 1;
- goto b26;
-b27: v9 = 0;
- goto b26;
-b12: v7 = 0;
- goto b14;
+b35: v44 = (u)zdie;
+ v45 = (u)"invalid block";
+ v46 = ((u(*)())v44)(v45);
+ v46;
+ goto b21;
+b29: if (*(u*)(vop + 0UL) != 27UL) goto b32;
+ v39 = 1UL;
+ goto b31;
+b32: v39 = 0UL;
+ goto b31;
+b17: vop = *(u*)(*(u*)(vib + 8UL) + vi * 8UL);
+ v18 = (u)zirop_basic_value;
+ v19 = vic;
+ v20 = vvals;
+ v21 = vop;
+ v22 = ((u(*)())v18)(v19, v20, v21);
+ vop = v22;
+ *(u*)(*(u*)(vib + 8UL) + vi * 8UL) = vop;
+ vi = vi + 1UL;
+ goto b13;
+b3: goto b1;
+b5: v6 = 1UL;
+ goto b6;
}
-u zirblock_flow3(u vic, u vib) {
- u vout = 0;
- u vkind = 0;
+u zirblock_dead_expr(u vic, u vb) {
u vi = 0;
- u v5 = 0;
+ u vj = 0;
+ u vo = 0;
+ u vkind = 0;
u v6 = 0;
u v7 = 0;
u v8 = 0;
@@ -15835,45 +16932,83 @@ u zirblock_flow3(u vic, u vib) {
u v10 = 0;
u v11 = 0;
u v12 = 0;
- if (*(u*)(vib + 64) != 3) goto b1;
- return 0;
-b1: *(u*)(vib + 64) = 3;
-b4: vkind = *(u*)*(u*)(*(u*)(vib + 8) + (*(u*)(vib + 16) - 1) * 8);
- if (vkind != 29) goto b6;
- v5 = (u)zirblock_flow3;
- v6 = vic;
- v7 = *(u*)(vib + 48);
- v8 = ((u(*)())v5)(v6, v7);
-b5: return 0;
-b6: if (vkind == 28) goto b10;
- goto b5;
-b10: vout = *(u*)(vib + 40);
- if (*(u*)(vout + 64) != 2) goto b13;
- vib = vout;
- *(u*)(vib + 64) = 3;
- goto b4;
-b13: if (*(u*)(vout + 64) != 3) goto b16;
- goto b5;
-b16: *(u*)(vib + 40) = 0;
- *(u*)(vib + 16) = *(u*)(vib + 16) - 1;
- *(u*)(vib + 32) = 0;
- vi = 0;
-b19: if (vi != *(u*)(vout + 16)) goto b21;
- *(u*)(vib + 40) = *(u*)(vout + 40);
- *(u*)(vib + 48) = *(u*)(vout + 48);
- *(u*)(vib + 32) = 1;
- goto b4;
-b21: v9 = (u)ziraddop;
- v10 = vic;
- v11 = *(u*)(*(u*)(vout + 8) + vi * 8);
- v12 = ((u(*)())v9)(v10, v11);
- vi = vi + 1;
- goto b19;
+ u v13 = 0;
+ if (!*(u*)(vb + 32UL)) goto b5;
+ v6 = 0UL;
+b6: if (!v6) goto b3;
+ return 0UL;
+b3: vi = 0UL;
+ vj = 0UL;
+b7: if (vi != *(u*)(vb + 16UL)) goto b11;
+ *(u*)(vb + 16UL) = vj;
+ return 0UL;
+b11: vo = *(u*)(*(u*)(vb + 8UL) + vi * 8UL);
+ vkind = *(u*)(vo + 0UL);
+ if (vkind != 6UL) goto b16;
+ v7 = 1UL;
+b18: if (!v7) goto b14;
+ if (*(u*)(*(u*)(vo + 8UL) + 0UL) == 0UL) goto b24;
+ v8 = 1UL;
+b26: if (!v8) goto b22;
+ *(u*)(*(u*)(vb + 8UL) + vj * 8UL) = vo;
+ vj = vj + 1UL;
+b20:b12: vi = vi + 1UL;
+ goto b7;
+b22: goto b20;
+b24: if (!*(u*)(*(u*)(*(u*)(vic + 128UL) + *(u*)(*(u*)(vo + 8UL) + 24UL) * 8UL) + 48UL)) goto b29;
+ v9 = 0UL;
+b30: if (!v9) goto b27;
+ v8 = 1UL;
+ goto b26;
+b27: v8 = 0UL;
+ goto b26;
+b29: v9 = 1UL;
+ goto b30;
+b14: if (vkind != 8UL) goto b34;
+ v10 = 1UL;
+b36: if (!v10) goto b32;
+ *(u*)(*(u*)(vb + 8UL) + vj * 8UL) = vo;
+ vj = vj + 1UL;
+ goto b12;
+b32: goto b12;
+b34: if (vkind != 27UL) goto b39;
+ v11 = 1UL;
+b41: if (!v11) goto b37;
+ v10 = 1UL;
+ goto b36;
+b37: v10 = 0UL;
+ goto b36;
+b39: if (vkind != 28UL) goto b44;
+ v12 = 1UL;
+b46: if (!v12) goto b42;
+ v11 = 1UL;
+ goto b41;
+b42: v11 = 0UL;
+ goto b41;
+b44: if (vkind != 29UL) goto b49;
+ v13 = 1UL;
+b51: if (!v13) goto b47;
+ v12 = 1UL;
+ goto b46;
+b47: v12 = 0UL;
+ goto b46;
+b49: if (vkind != 30UL) goto b52;
+ v13 = 1UL;
+ goto b51;
+b52: v13 = 0UL;
+ goto b51;
+b16: if (vkind != 7UL) goto b19;
+ v7 = 1UL;
+ goto b18;
+b19: v7 = 0UL;
+ goto b18;
+b5: v6 = 1UL;
+ goto b6;
}
-u zirblock_fold(u vic, u vb) {
+u zirblock_dead_var(u vic, u vib) {
+ u vop = 0;
+ u vkind = 0;
u vi = 0;
- u vo = 0;
- u vret = 0;
u v5 = 0;
u v6 = 0;
u v7 = 0;
@@ -15887,57 +17022,365 @@ u zirblock_fold(u vic, u vb) {
u v15 = 0;
u v16 = 0;
u v17 = 0;
- if (!*(u*)(vb + 32)) goto b5;
- v5 = 0;
-b6: if (!v5) goto b1;
- return 0;
-b1: vi = 0;
-b7: if (vi != *(u*)(vb + 16)) goto b9;
- vi = vi - 1;
- vo = *(u*)(*(u*)(vb + 8) + vi * 8);
- if (*(u*)vo != 29) goto b17;
- if (*(u*)*(u*)(vo + 8) != 3) goto b17;
- v10 = 1;
-b19: if (!v10) goto b13;
- v11 = (u)zmkirop;
- v12 = vic;
- v13 = 28;
- v14 = 0;
- v15 = 0;
- v16 = ((u(*)())v11)(v12, v13, v14, v15);
- vret = v16;
- *(u*)(vret + 64) = *(u*)(vo + 64);
- *(u*)(vret + 72) = *(u*)(vo + 72);
- *(u*)(vret + 80) = *(u*)(vo + 80);
- *(u*)(*(u*)(vb + 8) + vi * 8) = vret;
- if (!*(u*)(vo + 24)) goto b25;
- v17 = 0;
-b26: if (!v17) goto b21;
- *(u*)(vb + 40) = *(u*)(vb + 48);
-b21: *(u*)(vb + 48) = 0;
-b13: return 0;
-b25: v17 = 1;
- goto b26;
-b17: v10 = 0;
- goto b19;
-b9: v6 = (u)zirexpr_fold;
- v7 = vic;
- v8 = *(u*)(*(u*)(vb + 8) + vi * 8);
- v9 = ((u(*)())v6)(v7, v8);
- vo = v9;
- *(u*)(*(u*)(vb + 8) + vi * 8) = vo;
- vi = vi + 1;
- goto b7;
-b5: v5 = 1;
- goto b6;
-}
-u zirblock_value(u vic, u vib) {
- u vi = 0;
- vi = 0;
-b1: if (vi != *(u*)(vib + 16)) goto b3;
- return 0;
-b3: vi = vi + 1;
- goto b1;
+ u v18 = 0;
+ u v19 = 0;
+ u v20 = 0;
+ u v21 = 0;
+ u v22 = 0;
+ u v23 = 0;
+ u v24 = 0;
+ u v25 = 0;
+ u v26 = 0;
+ u v27 = 0;
+ u v28 = 0;
+ u v29 = 0;
+ u v30 = 0;
+ u v31 = 0;
+ u v32 = 0;
+ if (!*(u*)(vib + 80UL)) goto b3;
+ return 0UL;
+b3: *(u*)(vib + 80UL) = 1UL;
+ if (!*(u*)(vib + 32UL)) goto b8;
+ v5 = 0UL;
+b9: if (!v5) goto b6;
+ v6 = (u)zdie;
+ v7 = (u)"block not closed";
+ v8 = ((u(*)())v6)(v7);
+ v8;
+b4:b11: if (vi != *(u*)(vib + 16UL)) goto b15;
+ vop = *(u*)(*(u*)(vib + 8UL) + (*(u*)(vib + 16UL) - 1UL) * 8UL);
+ vkind = *(u*)(vop + 0UL);
+ if (vkind != 29UL) goto b19;
+ v14 = (u)zirblock_dead_var;
+ v15 = vic;
+ v16 = *(u*)(vib + 56UL);
+ v17 = ((u(*)())v14)(v15, v16);
+ v17;
+ v18 = (u)zirblock_dead_var;
+ v19 = vic;
+ v20 = *(u*)(vib + 64UL);
+ v21 = ((u(*)())v18)(v19, v20);
+ v21;
+b17: return 0UL;
+b19: if (vkind != 27UL) goto b23;
+ v22 = (u)zirblock_dead_var;
+ v23 = vic;
+ v24 = *(u*)(vib + 56UL);
+ v25 = ((u(*)())v22)(v23, v24);
+ v25;
+ goto b17;
+b23: if (vkind != 28UL) goto b26;
+ v26 = (u)zirblock_dead_var;
+ v27 = vic;
+ v28 = *(u*)(vib + 56UL);
+ v29 = ((u(*)())v26)(v27, v28);
+ v29;
+ goto b17;
+b26: if (vkind == 30UL) goto b29;
+ v30 = (u)zdie;
+ v31 = (u)"invalid block";
+ v32 = ((u(*)())v30)(v31);
+ v32;
+ goto b17;
+b29: goto b17;
+b15: v9 = (u)ziruseop;
+ v10 = vic;
+ v11 = vib;
+ v12 = *(u*)(*(u*)(vib + 8UL) + vi * 8UL);
+ v13 = ((u(*)())v9)(v10, v11, v12);
+ v13;
+ vi = vi + 1UL;
+ goto b11;
+b6: goto b4;
+b8: v5 = 1UL;
+ goto b9;
+}
+u zirblock_flow2(u vic, u vib) {
+ u vkind = 0;
+ u vop = 0;
+ u v4 = 0;
+ u v5 = 0;
+ u v6 = 0;
+ u v7 = 0;
+ u v8 = 0;
+ u v9 = 0;
+ u v10 = 0;
+ u v11 = 0;
+ u v12 = 0;
+ u v13 = 0;
+ u v14 = 0;
+ u v15 = 0;
+ u v16 = 0;
+ u v17 = 0;
+ u v18 = 0;
+ u v19 = 0;
+ u v20 = 0;
+ u v21 = 0;
+ u v22 = 0;
+ if (!*(u*)(vib + 80UL)) goto b3;
+ *(u*)(vib + 80UL) = 2UL;
+ return 0UL;
+b3: *(u*)(vib + 80UL) = 1UL;
+ vop = *(u*)(*(u*)(vib + 8UL) + (*(u*)(vib + 16UL) - 1UL) * 8UL);
+ vkind = *(u*)(vop + 0UL);
+ if (vkind != 29UL) goto b8;
+ if (*(u*)(vib + 56UL) != *(u*)(vib + 64UL)) goto b8;
+ v4 = 1UL;
+b10: if (!v4) goto b6;
+ vkind = 28UL;
+ v5 = (u)zmkirop;
+ v6 = vic;
+ v7 = 28UL;
+ v8 = 0UL;
+ v9 = 0UL;
+ v10 = ((u(*)())v5)(v6, v7, v8, v9);
+ vop = v10;
+ *(u*)(*(u*)(vib + 8UL) + (*(u*)(vib + 16UL) - 1UL) * 8UL) = vop;
+ *(u*)(vib + 64UL) = 0UL;
+b4: if (vkind != 29UL) goto b14;
+ v11 = (u)zirblock_flow2;
+ v12 = vic;
+ v13 = *(u*)(vib + 64UL);
+ v14 = ((u(*)())v11)(v12, v13);
+ v14;
+ if (*(u*)(*(u*)(vib + 64UL) + 16UL) != 1UL) goto b20;
+ if (*(u*)(*(u*)(*(u*)(*(u*)(vib + 64UL) + 8UL) + 0UL * 8UL) + 0UL) != 28UL) goto b20;
+ v15 = 1UL;
+b22: if (!v15) goto b18;
+ *(u*)(vib + 64UL) = *(u*)(*(u*)(vib + 64UL) + 56UL);
+b16:b12: if (vkind != 29UL) goto b27;
+ v16 = 1UL;
+b29: if (!v16) goto b25;
+ v18 = (u)zirblock_flow2;
+ v19 = vic;
+ v20 = *(u*)(vib + 56UL);
+ v21 = ((u(*)())v18)(v19, v20);
+ v21;
+ if (*(u*)(*(u*)(vib + 56UL) + 16UL) != 1UL) goto b41;
+ if (*(u*)(*(u*)(*(u*)(*(u*)(vib + 56UL) + 8UL) + 0UL * 8UL) + 0UL) != 28UL) goto b41;
+ v22 = 1UL;
+b43: if (!v22) goto b39;
+ *(u*)(vib + 56UL) = *(u*)(*(u*)(vib + 56UL) + 56UL);
+b37:b23: return 0UL;
+b39: goto b37;
+b41: v22 = 0UL;
+ goto b43;
+b25: goto b23;
+b27: if (vkind != 27UL) goto b32;
+ v17 = 1UL;
+b34: if (!v17) goto b30;
+ v16 = 1UL;
+ goto b29;
+b30: v16 = 0UL;
+ goto b29;
+b32: if (vkind != 28UL) goto b35;
+ v17 = 1UL;
+ goto b34;
+b35: v17 = 0UL;
+ goto b34;
+b18: goto b16;
+b20: v15 = 0UL;
+ goto b22;
+b14: goto b12;
+b6: goto b4;
+b8: v4 = 0UL;
+ goto b10;
+}
+u zirblock_flow3(u vic, u vib) {
+ u vout = 0;
+ u vkind = 0;
+ u vi = 0;
+ u v5 = 0;
+ u v6 = 0;
+ u v7 = 0;
+ u v8 = 0;
+ u v9 = 0;
+ u v10 = 0;
+ u v11 = 0;
+ u v12 = 0;
+ if (*(u*)(vib + 80UL) != 3UL) goto b3;
+ return 0UL;
+b3: *(u*)(vib + 80UL) = 3UL;
+b4: vkind = *(u*)(*(u*)(*(u*)(vib + 8UL) + (*(u*)(vib + 16UL) - 1UL) * 8UL) + 0UL);
+ if (vkind != 29UL) goto b8;
+ v5 = (u)zirblock_flow3;
+ v6 = vic;
+ v7 = *(u*)(vib + 64UL);
+ v8 = ((u(*)())v5)(v6, v7);
+ v8;
+b5: return 0UL;
+b8: if (vkind == 28UL) goto b12;
+ goto b5;
+b12: vout = *(u*)(vib + 56UL);
+ if (*(u*)(vout + 80UL) != 2UL) goto b15;
+ vib = vout;
+ *(u*)(vib + 80UL) = 3UL;
+ goto b4;
+b15: if (*(u*)(vout + 80UL) != 3UL) goto b18;
+ goto b5;
+b18: *(u*)(vib + 56UL) = 0UL;
+ *(u*)(vib + 16UL) = *(u*)(vib + 16UL) - 1UL;
+ *(u*)(vib + 32UL) = 0UL;
+ vi = 0UL;
+b19: if (vi != *(u*)(vout + 16UL)) goto b23;
+ *(u*)(vib + 56UL) = *(u*)(vout + 56UL);
+ *(u*)(vib + 64UL) = *(u*)(vout + 64UL);
+ *(u*)(vib + 32UL) = 1UL;
+ goto b4;
+b23: v9 = (u)ziraddop;
+ v10 = vic;
+ v11 = *(u*)(*(u*)(vout + 8UL) + vi * 8UL);
+ v12 = ((u(*)())v9)(v10, v11);
+ v12;
+ vi = vi + 1UL;
+ goto b19;
+}
+u zirblock_fold(u vic, u vb) {
+ u vi = 0;
+ u vo = 0;
+ u vret = 0;
+ u v5 = 0;
+ u v6 = 0;
+ u v7 = 0;
+ u v8 = 0;
+ u v9 = 0;
+ u v10 = 0;
+ u v11 = 0;
+ u v12 = 0;
+ u v13 = 0;
+ u v14 = 0;
+ u v15 = 0;
+ u v16 = 0;
+ u v17 = 0;
+ u v18 = 0;
+ u v19 = 0;
+ u v20 = 0;
+ u v21 = 0;
+ u v22 = 0;
+ u v23 = 0;
+ u v24 = 0;
+ u v25 = 0;
+ u v26 = 0;
+ u v27 = 0;
+ u v28 = 0;
+ u v29 = 0;
+ u v30 = 0;
+ u v31 = 0;
+ u v32 = 0;
+ u v33 = 0;
+ u v34 = 0;
+ u v35 = 0;
+ u v36 = 0;
+ u v37 = 0;
+ u v38 = 0;
+ u v39 = 0;
+ u v40 = 0;
+ u v41 = 0;
+ u v42 = 0;
+ u v43 = 0;
+ if (!*(u*)(vb + 80UL)) goto b3;
+ return 0UL;
+b3: if (!*(u*)(vb + 32UL)) goto b8;
+ v5 = 0UL;
+b9: if (!v5) goto b6;
+ v6 = (u)zdie;
+ v7 = (u)"block not closed";
+ v8 = ((u(*)())v6)(v7);
+ v8;
+b4: *(u*)(vb + 80UL) = 1UL;
+ vi = 0UL;
+b11: if (vi != *(u*)(vb + 16UL)) goto b15;
+ vi = *(u*)(vb + 16UL) - 1UL;
+ vo = *(u*)(*(u*)(vb + 8UL) + vi * 8UL);
+ if (*(u*)(vo + 0UL) != 29UL) goto b21;
+ if (*(u*)(*(u*)(vo + 8UL) + 0UL) != 3UL) goto b21;
+ v13 = 1UL;
+b23: if (!v13) goto b19;
+ v14 = (u)zmkirop;
+ v15 = vic;
+ v16 = 28UL;
+ v17 = 0UL;
+ v18 = 0UL;
+ v19 = ((u(*)())v14)(v15, v16, v17, v18);
+ vret = v19;
+ *(u*)(vret + 64UL) = *(u*)(vo + 64UL);
+ *(u*)(vret + 72UL) = *(u*)(vo + 72UL);
+ *(u*)(vret + 80UL) = *(u*)(vo + 80UL);
+ *(u*)(*(u*)(vb + 8UL) + vi * 8UL) = vret;
+ if (!*(u*)(*(u*)(vo + 8UL) + 24UL)) goto b29;
+ v20 = 0UL;
+b30: if (!v20) goto b27;
+ *(u*)(vb + 56UL) = *(u*)(vb + 64UL);
+b25: *(u*)(vb + 64UL) = 0UL;
+b17: if (*(u*)(vo + 0UL) != 29UL) goto b35;
+ if (*(u*)(vb + 56UL) != *(u*)(vb + 64UL)) goto b35;
+ v21 = 1UL;
+b37: if (!v21) goto b33;
+ v22 = (u)zmkirop;
+ v23 = vic;
+ v24 = 28UL;
+ v25 = 0UL;
+ v26 = 0UL;
+ v27 = ((u(*)())v22)(v23, v24, v25, v26);
+ vret = v27;
+ *(u*)(vret + 64UL) = *(u*)(vo + 64UL);
+ *(u*)(vret + 72UL) = *(u*)(vo + 72UL);
+ *(u*)(vret + 80UL) = *(u*)(vo + 80UL);
+ *(u*)(*(u*)(vb + 8UL) + vi * 8UL) = vret;
+ *(u*)(vb + 64UL) = 0UL;
+b31: if (*(u*)(vo + 0UL) != 29UL) goto b41;
+ v28 = (u)zirblock_fold;
+ v29 = vic;
+ v30 = *(u*)(vb + 56UL);
+ v31 = ((u(*)())v28)(v29, v30);
+ v31;
+ v32 = (u)zirblock_fold;
+ v33 = vic;
+ v34 = *(u*)(vb + 64UL);
+ v35 = ((u(*)())v32)(v33, v34);
+ v35;
+b39: return 0UL;
+b41: if (*(u*)(vo + 0UL) != 28UL) goto b47;
+ v36 = 1UL;
+b49: if (!v36) goto b45;
+ v37 = (u)zirblock_fold;
+ v38 = vic;
+ v39 = *(u*)(vb + 56UL);
+ v40 = ((u(*)())v37)(v38, v39);
+ v40;
+ goto b39;
+b45: if (*(u*)(vo + 0UL) != 30UL) goto b53;
+ goto b39;
+b53: v41 = (u)zdie;
+ v42 = (u)"invalid block";
+ v43 = ((u(*)())v41)(v42);
+ v43;
+ goto b39;
+b47: if (*(u*)(vo + 0UL) != 27UL) goto b50;
+ v36 = 1UL;
+ goto b49;
+b50: v36 = 0UL;
+ goto b49;
+b33: goto b31;
+b35: v21 = 0UL;
+ goto b37;
+b27: goto b25;
+b29: v20 = 1UL;
+ goto b30;
+b19: goto b17;
+b21: v13 = 0UL;
+ goto b23;
+b15: v9 = (u)zirexpr_fold;
+ v10 = vic;
+ v11 = *(u*)(*(u*)(vb + 8UL) + vi * 8UL);
+ v12 = ((u(*)())v9)(v10, v11);
+ vo = v12;
+ *(u*)(*(u*)(vb + 8UL) + vi * 8UL) = vo;
+ vi = vi + 1UL;
+ goto b11;
+b6: goto b4;
+b8: v5 = 1UL;
+ goto b9;
}
u zirbranch(u vic, u vcond, u valt, u vnext) {
u vcur = 0;
@@ -15958,27 +17401,31 @@ u zirbranch(u vic, u vcond, u valt, u vnext) {
u v19 = 0;
v6 = (u)zmkirop;
v7 = vic;
- v8 = 29;
+ v8 = 29UL;
v9 = vcond;
- v10 = 0;
+ v10 = 0UL;
v11 = ((u(*)())v6)(v7, v8, v9, v10);
vo = v11;
v12 = (u)ziraddop;
v13 = vic;
v14 = vo;
v15 = ((u(*)())v12)(v13, v14);
- vcur = *(u*)(vic + 88);
- if (!vcur) goto b3;
- if (!*(u*)(vcur + 32)) goto b6;
+ v15;
+ vcur = *(u*)(vic + 104UL);
+ if (!vcur) goto b5;
+ if (!*(u*)(vcur + 32UL)) goto b8;
v16 = (u)zcdie;
- v17 = *(u*)vic;
+ v17 = *(u*)(vic + 0UL);
v18 = (u)"block already done";
v19 = ((u(*)())v16)(v17, v18);
-b6: *(u*)(vcur + 32) = 1;
- *(u*)(vcur + 48) = valt;
- *(u*)(vcur + 40) = vnext;
-b3: *(u*)(vic + 88) = vnext;
- return 0;
+ v19;
+b6: *(u*)(vcur + 32UL) = 1UL;
+ *(u*)(vcur + 64UL) = valt;
+ *(u*)(vcur + 56UL) = vnext;
+b3: *(u*)(vic + 104UL) = vnext;
+ return 0UL;
+b8: goto b6;
+b5: goto b3;
}
u zircall(u vic, u vfp, u vnargs) {
u vo = 0;
@@ -16003,35 +17450,40 @@ u zircall(u vic, u vfp, u vnargs) {
u v22 = 0;
v6 = (u)zmkirop;
v7 = vic;
- v8 = 27;
+ v8 = 27UL;
v9 = vfp;
- v10 = 0;
+ v10 = 0UL;
v11 = ((u(*)())v6)(v7, v8, v9, v10);
vo = v11;
- *(u*)(vo + 24) = vnargs;
+ *(u*)(vo + 24UL) = vnargs;
v12 = (u)ziraddop;
v13 = vic;
v14 = vo;
v15 = ((u(*)())v12)(v13, v14);
+ v15;
v16 = (u)zmkirblock;
v17 = vic;
v18 = ((u(*)())v16)(v17);
vnext = v18;
- vcur = *(u*)(vic + 88);
- if (!vcur) goto b4;
- if (!*(u*)(vcur + 32)) goto b7;
+ vcur = *(u*)(vic + 104UL);
+ if (!vcur) goto b6;
+ if (!*(u*)(vcur + 32UL)) goto b9;
v19 = (u)zcdie;
- v20 = *(u*)vic;
+ v20 = *(u*)(vic + 0UL);
v21 = (u)"block already done";
v22 = ((u(*)())v19)(v20, v21);
-b7: *(u*)(vcur + 32) = 1;
- *(u*)(vcur + 40) = vnext;
-b4: *(u*)(vic + 88) = vnext;
- return 0;
+ v22;
+b7: *(u*)(vcur + 32UL) = 1UL;
+ *(u*)(vcur + 56UL) = vnext;
+b4: *(u*)(vic + 104UL) = vnext;
+ return 0UL;
+b9: goto b7;
+b6: goto b4;
}
u zircargs(u vc, u vic, u vib, u vn) {
u vi = 0;
u vop = 0;
+ u vkind = 0;
u vargs = 0;
u v8 = 0;
u v9 = 0;
@@ -16057,44 +17509,50 @@ u zircargs(u vc, u vic, u vib, u vn) {
u v29 = 0;
u v30 = 0;
v8 = (u)zalloc;
- v9 = *(u*)vc;
- v10 = vn * 8;
+ v9 = *(u*)(vc + 0UL);
+ v10 = vn * 8UL;
v11 = ((u(*)())v8)(v9, v10);
vargs = v11;
- vi = 0;
-b2: if (vi != *(u*)(vib + 16)) goto b4;
- vi = 0;
-b10: if (vi != vn) goto b12;
+ vi = 0UL;
+b2: if (vi != *(u*)(vib + 16UL)) goto b6;
+ vi = 0UL;
+b10: if (vi != vn) goto b14;
v27 = (u)zfree;
- v28 = *(u*)vc;
+ v28 = *(u*)(vc + 0UL);
v29 = vargs;
v30 = ((u(*)())v27)(v28, v29);
- return 0;
-b12: if (!*(u*)(vargs + vi * 8)) goto b17;
+ v30;
+ return 0UL;
+b14: if (!*(u*)(vargs + vi * 8UL)) goto b17;
v12 = (u)zircop;
v13 = vc;
v14 = vic;
v15 = vib;
- v16 = *(u*)(vargs + vi * 8);
- v17 = 15;
+ v16 = *(u*)(vargs + vi * 8UL);
+ v17 = 15UL;
v18 = ((u(*)())v12)(v13, v14, v15, v16, v17);
-b15: vi = vi + 1;
- if (vi == vn) goto b10;
+ v18;
+b15: vi = vi + 1UL;
+ if (vi == vn) goto b22;
v23 = (u)zfputs;
- v24 = *(u*)(vc + 72);
+ v24 = *(u*)(vc + 72UL);
v25 = (u)", ";
v26 = ((u(*)())v23)(v24, v25);
- goto b10;
+ v26;
+b20: goto b10;
+b22: goto b20;
b17: v19 = (u)zfputs;
- v20 = *(u*)(vc + 72);
+ v20 = *(u*)(vc + 72UL);
v21 = (u)"0UL";
v22 = ((u(*)())v19)(v20, v21);
+ v22;
goto b15;
-b4: vop = *(u*)(*(u*)(vib + 8) + vi * 8);
- if (*(u*)vop != 8) goto b7;
- *(u*)(vargs + *(u*)(vop + 24) * 8) = *(u*)(vop + 8);
-b7: vi = vi + 1;
+b6: vop = *(u*)(*(u*)(vib + 8UL) + vi * 8UL);
+ if (*(u*)(vop + 0UL) != 8UL) goto b9;
+ *(u*)(vargs + *(u*)(vop + 24UL) * 8UL) = *(u*)(vop + 8UL);
+b7: vi = vi + 1UL;
goto b2;
+b9: goto b7;
}
u zircblock(u vc, u vic, u vib) {
u vi = 0;
@@ -16293,250 +17751,301 @@ u zircblock(u vc, u vic, u vib) {
u v196 = 0;
u v197 = 0;
u v198 = 0;
- vdidlabel = (u)((*(u*)(vib + 64) & 4) == 0);
-b1: if (vi + 1 != *(u*)(vib + 16)) goto b3;
- vop = *(u*)(*(u*)(vib + 8) + vi * 8);
- vkind = *(u*)vop;
- if (vkind != 27) goto b29;
+ vdidlabel = (u)((*(u*)(vib + 80UL) & 4UL) == 0UL);
+b1: if (vi + 1UL != *(u*)(vib + 16UL)) goto b5;
+ vop = *(u*)(*(u*)(vib + 8UL) + vi * 8UL);
+ vkind = *(u*)(vop + 0UL);
+ if (vkind != 27UL) goto b29;
v40 = (u)zircline;
v41 = vc;
v42 = vop;
v43 = ((u(*)())v40)(v41, v42);
+ v43;
if (!vdidlabel) goto b35;
- v44 = 0;
-b36: if (!v44) goto b31;
+ v44 = 0UL;
+b36: if (!v44) goto b33;
v45 = (u)zfputs;
- v46 = *(u*)(vc + 72);
+ v46 = *(u*)(vc + 72UL);
v47 = (u)"b";
v48 = ((u(*)())v45)(v46, v47);
+ v48;
v49 = (u)zfputd;
- v50 = *(u*)(vc + 72);
- v51 = *(u*)vib;
+ v50 = *(u*)(vc + 72UL);
+ v51 = *(u*)(vib + 0UL);
v52 = ((u(*)())v49)(v50, v51);
+ v52;
v53 = (u)zfputs;
- v54 = *(u*)(vc + 72);
+ v54 = *(u*)(vc + 72UL);
v55 = (u)":";
v56 = ((u(*)())v53)(v54, v55);
- vdidlabel = 1;
+ v56;
+ vdidlabel = 1UL;
b31: v57 = (u)zirccall;
v58 = vc;
v59 = vic;
v60 = vib;
v61 = vop;
v62 = ((u(*)())v57)(v58, v59, v60, v61);
-b27: return 0;
-b35: v44 = 1;
+ v62;
+b27: return 0UL;
+b33: goto b31;
+b35: v44 = 1UL;
goto b36;
-b29: if (vkind != 28) goto b42;
+b29: if (vkind != 28UL) goto b42;
v63 = (u)zircline;
v64 = vc;
v65 = vop;
v66 = ((u(*)())v63)(v64, v65);
+ v66;
if (!vdidlabel) goto b48;
- v67 = 0;
-b49: if (!v67) goto b44;
+ v67 = 0UL;
+b49: if (!v67) goto b46;
v68 = (u)zfputs;
- v69 = *(u*)(vc + 72);
+ v69 = *(u*)(vc + 72UL);
v70 = (u)"b";
v71 = ((u(*)())v68)(v69, v70);
+ v71;
v72 = (u)zfputd;
- v73 = *(u*)(vc + 72);
- v74 = *(u*)vib;
+ v73 = *(u*)(vc + 72UL);
+ v74 = *(u*)(vib + 0UL);
v75 = ((u(*)())v72)(v73, v74);
+ v75;
v76 = (u)zfputs;
- v77 = *(u*)(vc + 72);
+ v77 = *(u*)(vc + 72UL);
v78 = (u)":";
v79 = ((u(*)())v76)(v77, v78);
- vdidlabel = 1;
-b44: if (!(*(u*)(*(u*)(vib + 40) + 64) & 1)) goto b27;
+ v79;
+ vdidlabel = 1UL;
+b44: if (!(*(u*)(*(u*)(vib + 56UL) + 80UL) & 1UL)) goto b55;
v80 = (u)zfputs;
- v81 = *(u*)(vc + 72);
+ v81 = *(u*)(vc + 72UL);
v82 = (u)"\011";
v83 = ((u(*)())v80)(v81, v82);
+ v83;
v84 = (u)zfputs;
- v85 = *(u*)(vc + 72);
+ v85 = *(u*)(vc + 72UL);
v86 = (u)"goto b";
v87 = ((u(*)())v84)(v85, v86);
+ v87;
v88 = (u)zfputd;
- v89 = *(u*)(vc + 72);
- v90 = *(u*)*(u*)(vib + 40);
+ v89 = *(u*)(vc + 72UL);
+ v90 = *(u*)(*(u*)(vib + 56UL) + 0UL);
v91 = ((u(*)())v88)(v89, v90);
+ v91;
v92 = (u)zfputs;
- v93 = *(u*)(vc + 72);
+ v93 = *(u*)(vc + 72UL);
v94 = (u)";\012";
v95 = ((u(*)())v92)(v93, v94);
- goto b27;
-b48: v67 = 1;
+ v95;
+b53: goto b27;
+b55: goto b53;
+b46: goto b44;
+b48: v67 = 1UL;
goto b49;
-b42: if (vkind != 29) goto b61;
+b42: if (vkind != 29UL) goto b61;
v96 = (u)zircline;
v97 = vc;
v98 = vop;
v99 = ((u(*)())v96)(v97, v98);
+ v99;
if (!vdidlabel) goto b67;
- v100 = 0;
-b68: if (!v100) goto b63;
+ v100 = 0UL;
+b68: if (!v100) goto b65;
v101 = (u)zfputs;
- v102 = *(u*)(vc + 72);
+ v102 = *(u*)(vc + 72UL);
v103 = (u)"b";
v104 = ((u(*)())v101)(v102, v103);
+ v104;
v105 = (u)zfputd;
- v106 = *(u*)(vc + 72);
- v107 = *(u*)vib;
+ v106 = *(u*)(vc + 72UL);
+ v107 = *(u*)(vib + 0UL);
v108 = ((u(*)())v105)(v106, v107);
+ v108;
v109 = (u)zfputs;
- v110 = *(u*)(vc + 72);
+ v110 = *(u*)(vc + 72UL);
v111 = (u)":";
v112 = ((u(*)())v109)(v110, v111);
- vdidlabel = 1;
+ v112;
+ vdidlabel = 1UL;
b63: v113 = (u)zfputs;
- v114 = *(u*)(vc + 72);
+ v114 = *(u*)(vc + 72UL);
v115 = (u)"\011";
v116 = ((u(*)())v113)(v114, v115);
+ v116;
v117 = (u)zfputs;
- v118 = *(u*)(vc + 72);
+ v118 = *(u*)(vc + 72UL);
v119 = (u)"if (";
v120 = ((u(*)())v117)(v118, v119);
+ v120;
v121 = (u)zircop_neg;
v122 = vc;
v123 = vic;
v124 = vib;
- v125 = *(u*)(vop + 8);
- v126 = 20;
+ v125 = *(u*)(vop + 8UL);
+ v126 = 20UL;
v127 = ((u(*)())v121)(v122, v123, v124, v125, v126);
+ v127;
v128 = (u)zfputs;
- v129 = *(u*)(vc + 72);
+ v129 = *(u*)(vc + 72UL);
v130 = (u)") goto b";
v131 = ((u(*)())v128)(v129, v130);
+ v131;
v132 = (u)zfputd;
- v133 = *(u*)(vc + 72);
- v134 = *(u*)*(u*)(vib + 48);
+ v133 = *(u*)(vc + 72UL);
+ v134 = *(u*)(*(u*)(vib + 64UL) + 0UL);
v135 = ((u(*)())v132)(v133, v134);
+ v135;
v136 = (u)zfputs;
- v137 = *(u*)(vc + 72);
+ v137 = *(u*)(vc + 72UL);
v138 = (u)";\012";
v139 = ((u(*)())v136)(v137, v138);
- if (!(*(u*)(*(u*)(vib + 40) + 64) & 1)) goto b27;
+ v139;
+ if (!(*(u*)(*(u*)(vib + 56UL) + 80UL) & 1UL)) goto b80;
v140 = (u)zircline;
v141 = vc;
v142 = vop;
v143 = ((u(*)())v140)(v141, v142);
+ v143;
v144 = (u)zfputs;
- v145 = *(u*)(vc + 72);
+ v145 = *(u*)(vc + 72UL);
v146 = (u)"\011";
v147 = ((u(*)())v144)(v145, v146);
+ v147;
v148 = (u)zfputs;
- v149 = *(u*)(vc + 72);
+ v149 = *(u*)(vc + 72UL);
v150 = (u)"goto b";
v151 = ((u(*)())v148)(v149, v150);
+ v151;
v152 = (u)zfputd;
- v153 = *(u*)(vc + 72);
- v154 = *(u*)*(u*)(vib + 40);
+ v153 = *(u*)(vc + 72UL);
+ v154 = *(u*)(*(u*)(vib + 56UL) + 0UL);
v155 = ((u(*)())v152)(v153, v154);
+ v155;
v156 = (u)zfputs;
- v157 = *(u*)(vc + 72);
+ v157 = *(u*)(vc + 72UL);
v158 = (u)";\012";
v159 = ((u(*)())v156)(v157, v158);
- goto b27;
-b67: v100 = 1;
+ v159;
+b78: goto b27;
+b80: goto b78;
+b65: goto b63;
+b67: v100 = 1UL;
goto b68;
-b61: if (vkind != 30) goto b87;
+b61: if (vkind != 30UL) goto b87;
v160 = (u)zircline;
v161 = vc;
v162 = vop;
v163 = ((u(*)())v160)(v161, v162);
+ v163;
if (!vdidlabel) goto b93;
- v164 = 0;
-b94: if (!v164) goto b89;
+ v164 = 0UL;
+b94: if (!v164) goto b91;
v165 = (u)zfputs;
- v166 = *(u*)(vc + 72);
+ v166 = *(u*)(vc + 72UL);
v167 = (u)"b";
v168 = ((u(*)())v165)(v166, v167);
+ v168;
v169 = (u)zfputd;
- v170 = *(u*)(vc + 72);
- v171 = *(u*)vib;
+ v170 = *(u*)(vc + 72UL);
+ v171 = *(u*)(vib + 0UL);
v172 = ((u(*)())v169)(v170, v171);
+ v172;
v173 = (u)zfputs;
- v174 = *(u*)(vc + 72);
+ v174 = *(u*)(vc + 72UL);
v175 = (u)":";
v176 = ((u(*)())v173)(v174, v175);
- vdidlabel = 1;
+ v176;
+ vdidlabel = 1UL;
b89: v177 = (u)zfputs;
- v178 = *(u*)(vc + 72);
+ v178 = *(u*)(vc + 72UL);
v179 = (u)"\011";
v180 = ((u(*)())v177)(v178, v179);
+ v180;
v181 = (u)zfputs;
- v182 = *(u*)(vc + 72);
+ v182 = *(u*)(vc + 72UL);
v183 = (u)"return ";
v184 = ((u(*)())v181)(v182, v183);
+ v184;
v185 = (u)zircop;
v186 = vc;
v187 = vic;
v188 = vib;
- v189 = *(u*)(vop + 8);
- v190 = 20;
+ v189 = *(u*)(vop + 8UL);
+ v190 = 20UL;
v191 = ((u(*)())v185)(v186, v187, v188, v189, v190);
+ v191;
v192 = (u)zfputs;
- v193 = *(u*)(vc + 72);
+ v193 = *(u*)(vc + 72UL);
v194 = (u)";\012";
v195 = ((u(*)())v192)(v193, v194);
+ v195;
goto b27;
-b93: v164 = 1;
+b91: goto b89;
+b93: v164 = 1UL;
goto b94;
b87: v196 = (u)zdie;
v197 = (u)"invalid op";
v198 = ((u(*)())v196)(v197);
+ v198;
goto b27;
-b3: vop = *(u*)(*(u*)(vib + 8) + vi * 8);
- vkind = *(u*)vop;
- if (vkind != 8) goto b10;
- v7 = 1;
-b12: if (!v7) goto b6;
- vi = vi + 1;
+b5: vop = *(u*)(*(u*)(vib + 8UL) + vi * 8UL);
+ vkind = *(u*)(vop + 0UL);
+ if (vkind != 8UL) goto b10;
+ v7 = 1UL;
+b12: if (!v7) goto b8;
+ vi = vi + 1UL;
goto b1;
-b6: v8 = (u)zircline;
+b8: v8 = (u)zircline;
v9 = vc;
v10 = vop;
v11 = ((u(*)())v8)(v9, v10);
+ v11;
if (!vdidlabel) goto b19;
- v12 = 0;
-b20: if (!v12) goto b15;
+ v12 = 0UL;
+b20: if (!v12) goto b17;
v13 = (u)zfputs;
- v14 = *(u*)(vc + 72);
+ v14 = *(u*)(vc + 72UL);
v15 = (u)"b";
v16 = ((u(*)())v13)(v14, v15);
+ v16;
v17 = (u)zfputd;
- v18 = *(u*)(vc + 72);
- v19 = *(u*)vib;
+ v18 = *(u*)(vc + 72UL);
+ v19 = *(u*)(vib + 0UL);
v20 = ((u(*)())v17)(v18, v19);
+ v20;
v21 = (u)zfputs;
- v22 = *(u*)(vc + 72);
+ v22 = *(u*)(vc + 72UL);
v23 = (u)":";
v24 = ((u(*)())v21)(v22, v23);
- vdidlabel = 1;
+ v24;
+ vdidlabel = 1UL;
b15: v25 = (u)zfputs;
- v26 = *(u*)(vc + 72);
+ v26 = *(u*)(vc + 72UL);
v27 = (u)"\011";
v28 = ((u(*)())v25)(v26, v27);
+ v28;
v29 = (u)zircop;
v30 = vc;
v31 = vic;
v32 = vib;
v33 = vop;
- v34 = 20;
+ v34 = 20UL;
v35 = ((u(*)())v29)(v30, v31, v32, v33, v34);
+ v35;
v36 = (u)zfputs;
- v37 = *(u*)(vc + 72);
+ v37 = *(u*)(vc + 72UL);
v38 = (u)";\012";
v39 = ((u(*)())v36)(v37, v38);
- vi = vi + 1;
+ v39;
+ vi = vi + 1UL;
goto b1;
-b19: v12 = 1;
+b17: goto b15;
+b19: v12 = 1UL;
goto b20;
-b10: if (vkind != 7) goto b13;
- v7 = 1;
+b10: if (vkind != 7UL) goto b13;
+ v7 = 1UL;
goto b12;
-b13: v7 = 0;
+b13: v7 = 0UL;
goto b12;
}
u zircbody(u vc, u vic, u vib) {
@@ -16559,41 +18068,46 @@ u zircbody(u vc, u vic, u vib) {
u v19 = 0;
u v20 = 0;
if (!vib) goto b9;
- v4 = 0;
+ v4 = 0UL;
b10: if (!v4) goto b5;
- v3 = 1;
-b7: if (!v3) goto b1;
- return 0;
-b1: *(u*)(vib + 64) = *(u*)(vib + 64) | 1;
+ v3 = 1UL;
+b7: if (!v3) goto b3;
+ return 0UL;
+b3: *(u*)(vib + 80UL) = *(u*)(vib + 80UL) | 1UL;
v5 = (u)zircblock;
v6 = vc;
v7 = vic;
v8 = vib;
v9 = ((u(*)())v5)(v6, v7, v8);
- if (!*(u*)(vib + 40)) goto b13;
+ v9;
+ if (!*(u*)(vib + 56UL)) goto b15;
v10 = (u)zircbody;
v11 = vc;
v12 = vic;
- v13 = *(u*)(vib + 40);
+ v13 = *(u*)(vib + 56UL);
v14 = ((u(*)())v10)(v11, v12, v13);
-b13: if (!*(u*)(vib + 48)) goto b21;
- if (*(u*)*(u*)(*(u*)(vib + 8) + (*(u*)(vib + 16) - 1) * 8) != 29) goto b21;
- v15 = 1;
-b23: if (!v15) goto b17;
+ v14;
+b13: if (!*(u*)(vib + 64UL)) goto b21;
+ if (*(u*)(*(u*)(*(u*)(vib + 8UL) + (*(u*)(vib + 16UL) - 1UL) * 8UL) + 0UL) != 29UL) goto b21;
+ v15 = 1UL;
+b23: if (!v15) goto b19;
v16 = (u)zircbody;
v17 = vc;
v18 = vic;
- v19 = *(u*)(vib + 48);
+ v19 = *(u*)(vib + 64UL);
v20 = ((u(*)())v16)(v17, v18, v19);
-b17: return 0;
-b21: v15 = 0;
+ v20;
+b17: return 0UL;
+b19: goto b17;
+b21: v15 = 0UL;
goto b23;
-b5: if (!(*(u*)(vib + 64) & 1)) goto b11;
- v3 = 1;
+b15: goto b13;
+b5: if (!(*(u*)(vib + 80UL) & 1UL)) goto b11;
+ v3 = 1UL;
goto b7;
-b11: v3 = 0;
+b11: v3 = 0UL;
goto b7;
-b9: v4 = 1;
+b9: v4 = 1UL;
goto b10;
}
u zirccall(u vc, u vic, u vib, u vop) {
@@ -16664,74 +18178,90 @@ u zirccall(u vc, u vic, u vib, u vop) {
u v68 = 0;
u v69 = 0;
v4 = (u)zfputs;
- v5 = *(u*)(vc + 72);
+ v5 = *(u*)(vc + 72UL);
v6 = (u)"\011";
v7 = ((u(*)())v4)(v5, v6);
+ v7;
v8 = (u)zircretval;
v9 = vc;
v10 = vic;
v11 = vib;
v12 = ((u(*)())v8)(v9, v10, v11);
- if (*(u*)*(u*)(vop + 8) == 2) goto b5;
+ v12;
+ if (*(u*)(*(u*)(vop + 8UL) + 0UL) == 2UL) goto b5;
v13 = (u)zfputs;
- v14 = *(u*)(vc + 72);
+ v14 = *(u*)(vc + 72UL);
v15 = (u)"((u(*)())";
v16 = ((u(*)())v13)(v14, v15);
+ v16;
v17 = (u)zircop;
v18 = vc;
v19 = vic;
v20 = vib;
- v21 = *(u*)(vop + 8);
- v22 = 2;
+ v21 = *(u*)(vop + 8UL);
+ v22 = 2UL;
v23 = ((u(*)())v17)(v18, v19, v20, v21, v22);
+ v23;
v24 = (u)zfputs;
- v25 = *(u*)(vc + 72);
+ v25 = *(u*)(vc + 72UL);
v26 = (u)")(";
v27 = ((u(*)())v24)(v25, v26);
+ v27;
b3: v40 = (u)zircargs;
v41 = vc;
v42 = vic;
v43 = vib;
- v44 = *(u*)(vop + 24);
+ v44 = *(u*)(vop + 24UL);
v45 = ((u(*)())v40)(v41, v42, v43, v44);
+ v45;
v46 = (u)zfputs;
- v47 = *(u*)(vc + 72);
+ v47 = *(u*)(vc + 72UL);
v48 = (u)");\012";
v49 = ((u(*)())v46)(v47, v48);
- if (!(*(u*)(*(u*)(vib + 40) + 64) & 1)) goto b14;
+ v49;
+ if (!(*(u*)(*(u*)(vib + 56UL) + 80UL) & 1UL)) goto b16;
v50 = (u)zircline;
v51 = vc;
v52 = vop;
v53 = ((u(*)())v50)(v51, v52);
+ v53;
v54 = (u)zfputs;
- v55 = *(u*)(vc + 72);
+ v55 = *(u*)(vc + 72UL);
v56 = (u)"\011";
v57 = ((u(*)())v54)(v55, v56);
+ v57;
v58 = (u)zfputs;
- v59 = *(u*)(vc + 72);
+ v59 = *(u*)(vc + 72UL);
v60 = (u)"goto b";
v61 = ((u(*)())v58)(v59, v60);
+ v61;
v62 = (u)zfputd;
- v63 = *(u*)(vc + 72);
- v64 = *(u*)*(u*)(vib + 40);
+ v63 = *(u*)(vc + 72UL);
+ v64 = *(u*)(*(u*)(vib + 56UL) + 0UL);
v65 = ((u(*)())v62)(v63, v64);
+ v65;
v66 = (u)zfputs;
- v67 = *(u*)(vc + 72);
+ v67 = *(u*)(vc + 72UL);
v68 = (u)";\012";
v69 = ((u(*)())v66)(v67, v68);
-b14: return 0;
+ v69;
+b14: return 0UL;
+b16: goto b14;
b5: v28 = (u)zfputs;
- v29 = *(u*)(vc + 72);
+ v29 = *(u*)(vc + 72UL);
v30 = (u)"z";
v31 = ((u(*)())v28)(v29, v30);
+ v31;
v32 = (u)zfputs;
- v33 = *(u*)(vc + 72);
- v34 = *(u*)(*(u*)(vop + 8) + 32);
+ v33 = *(u*)(vc + 72UL);
+ v34 = *(u*)(*(u*)(vop + 8UL) + 32UL);
v35 = ((u(*)())v32)(v33, v34);
+ v35;
v36 = (u)zfputs;
- v37 = *(u*)(vc + 72);
+ v37 = *(u*)(vc + 72UL);
v38 = (u)"(";
v39 = ((u(*)())v36)(v37, v38);
+ v39;
goto b3;
}
u zircdecl(u vc, u vic) {
@@ -16766,40 +18296,48 @@ u zircdecl(u vc, u vic) {
u v30 = 0;
u v31 = 0;
v4 = (u)zfputs;
- v5 = *(u*)(vc + 72);
+ v5 = *(u*)(vc + 72UL);
v6 = (u)"u z";
v7 = ((u(*)())v4)(v5, v6);
+ v7;
v8 = (u)zfputs;
- v9 = *(u*)(vc + 72);
- v10 = *(u*)(vic + 24);
+ v9 = *(u*)(vc + 72UL);
+ v10 = *(u*)(vic + 24UL);
v11 = ((u(*)())v8)(v9, v10);
+ v11;
v12 = (u)zfputs;
- v13 = *(u*)(vc + 72);
+ v13 = *(u*)(vc + 72UL);
v14 = (u)"(";
v15 = ((u(*)())v12)(v13, v14);
- vi = 0;
-b4: if (vi != *(u*)(vic + 136)) goto b6;
+ v15;
+ vi = 0UL;
+b4: if (vi != *(u*)(vic + 152UL)) goto b8;
v28 = (u)zfputs;
- v29 = *(u*)(vc + 72);
+ v29 = *(u*)(vc + 72UL);
v30 = (u)")";
v31 = ((u(*)())v28)(v29, v30);
- return 0;
-b6: viv = *(u*)(*(u*)(vic + 112) + vi * 8);
+ v31;
+ return 0UL;
+b8: viv = *(u*)(*(u*)(vic + 128UL) + vi * 8UL);
v16 = (u)zfputs;
- v17 = *(u*)(vc + 72);
+ v17 = *(u*)(vc + 72UL);
v18 = (u)"u v";
v19 = ((u(*)())v16)(v17, v18);
+ v19;
v20 = (u)zfputs;
- v21 = *(u*)(vc + 72);
- v22 = *(u*)viv;
+ v21 = *(u*)(vc + 72UL);
+ v22 = *(u*)(viv + 0UL);
v23 = ((u(*)())v20)(v21, v22);
- vi = vi + 1;
- if (vi == *(u*)(vic + 136)) goto b4;
+ v23;
+ vi = vi + 1UL;
+ if (vi == *(u*)(vic + 152UL)) goto b13;
v24 = (u)zfputs;
- v25 = *(u*)(vc + 72);
+ v25 = *(u*)(vc + 72UL);
v26 = (u)", ";
v27 = ((u(*)())v24)(v25, v26);
- goto b4;
+ v27;
+b11: goto b4;
+b13: goto b11;
}
u zircdefine(u vc, u vd) {
u vi = 0;
@@ -16807,6 +18345,7 @@ u zircdefine(u vc, u vd) {
u viv = 0;
u vtop = 0;
u vsize = 0;
+ u vid = 0;
u v8 = 0;
u v9 = 0;
u v10 = 0;
@@ -16882,125 +18421,130 @@ u zircdefine(u vc, u vd) {
u v80 = 0;
u v81 = 0;
u v82 = 0;
- u v83 = 0;
- vic = *(u*)(vd + 104);
+ vic = *(u*)(vd + 104UL);
if (!vic) goto b5;
- v8 = 0;
-b6: if (!v8) goto b1;
- return 0;
-b1: vi = 0;
-b7: if (vi != *(u*)(vic + 120)) goto b9;
- vtop = *(u*)*(u*)(vic + 64);
+ v8 = 0UL;
+b6: if (!v8) goto b3;
+ return 0UL;
+b3: vi = 0UL;
+b7: if (vi != *(u*)(vic + 136UL)) goto b11;
+ vtop = *(u*)(*(u*)(vic + 64UL) + 0UL * 8UL);
v9 = (u)zircuse;
v10 = vc;
v11 = vic;
v12 = vtop;
v13 = ((u(*)())v9)(v10, v11, v12);
+ v13;
v14 = (u)zircdecl;
v15 = vc;
v16 = vic;
v17 = ((u(*)())v14)(v15, v16);
+ v17;
v18 = (u)zfputs;
- v19 = *(u*)(vc + 72);
+ v19 = *(u*)(vc + 72UL);
v20 = (u)" {\012";
v21 = ((u(*)())v18)(v19, v20);
- vi = *(u*)(vic + 136);
-b15: if (vi != *(u*)(vic + 120)) goto b17;
- v72 = (u)zircbody;
- v73 = vc;
- v74 = vic;
- v75 = vtop;
- v76 = ((u(*)())v72)(v73, v74, v75);
- v77 = (u)zirreset;
- v78 = vtop;
- v79 = ((u(*)())v77)(v78);
- v80 = (u)zfputs;
- v81 = *(u*)(vc + 72);
- v82 = (u)"}\012";
- v83 = ((u(*)())v80)(v81, v82);
- vi = 0;
-b54: if (vi != *(u*)(vic + 120)) goto b56;
- return 0;
-b56: viv = *(u*)(*(u*)(vic + 112) + vi * 8);
- *(u*)(viv + 48) = 0;
- vi = vi + 1;
- goto b54;
-b17: viv = *(u*)(*(u*)(vic + 112) + vi * 8);
- if (!*(u*)(viv + 48)) goto b24;
- v22 = 0;
-b25: if (!v22) goto b20;
- vi = vi + 1;
+ v21;
+ vi = *(u*)(vic + 152UL);
+b15: if (vi != *(u*)(vic + 136UL)) goto b19;
+ v71 = (u)zircbody;
+ v72 = vc;
+ v73 = vic;
+ v74 = vtop;
+ v75 = ((u(*)())v71)(v72, v73, v74);
+ v75;
+ v76 = (u)zirreset;
+ v77 = vtop;
+ v78 = ((u(*)())v76)(v77);
+ v78;
+ v79 = (u)zfputs;
+ v80 = *(u*)(vc + 72UL);
+ v81 = (u)"}\012";
+ v82 = ((u(*)())v79)(v80, v81);
+ v82;
+ return 0UL;
+b19: viv = *(u*)(*(u*)(vic + 128UL) + vi * 8UL);
+ if (!*(u*)(viv + 48UL)) goto b22;
+ vi = vi + 1UL;
goto b15;
-b20: v23 = (u)zfputs;
- v24 = *(u*)(vc + 72);
- v25 = (u)"\011";
- v26 = ((u(*)())v23)(v24, v25);
- v27 = (u)zfputs;
- v28 = *(u*)(vc + 72);
- v29 = (u)"u ";
- v30 = ((u(*)())v27)(v28, v29);
- if (!*(u*)viv) goto b30;
- v31 = (u)zfputs;
- v32 = *(u*)(vc + 72);
- v33 = (u)"v";
- v34 = ((u(*)())v31)(v32, v33);
- v35 = (u)zfputs;
- v36 = *(u*)(vc + 72);
- v37 = *(u*)viv;
- v38 = ((u(*)())v35)(v36, v37);
-b28: if (!*(u*)(viv + 24)) goto b39;
- if (*(u*)*(u*)(viv + 24) == 1) goto b39;
- v47 = 1;
-b41: if (!v47) goto b37;
- v48 = (u)ztype_sizeof;
- v49 = vc;
- v50 = *(u*)(viv + 24);
- v51 = ((u(*)())v48)(v49, v50);
- vsize = v51;
-b35: if (vsize != 8) goto b45;
- v52 = (u)zfputs;
- v53 = *(u*)(vc + 72);
- v54 = (u)" = 0";
- v55 = ((u(*)())v52)(v53, v54);
-b43: v68 = (u)zfputs;
- v69 = *(u*)(vc + 72);
- v70 = (u)";\012";
- v71 = ((u(*)())v68)(v69, v70);
- vi = vi + 1;
+b22: v22 = (u)zfputs;
+ v23 = *(u*)(vc + 72UL);
+ v24 = (u)"\011";
+ v25 = ((u(*)())v22)(v23, v24);
+ v25;
+ v26 = (u)zfputs;
+ v27 = *(u*)(vc + 72UL);
+ v28 = (u)"u ";
+ v29 = ((u(*)())v26)(v27, v28);
+ v29;
+ if (!*(u*)(viv + 0UL)) goto b27;
+ v30 = (u)zfputs;
+ v31 = *(u*)(vc + 72UL);
+ v32 = (u)"v";
+ v33 = ((u(*)())v30)(v31, v32);
+ v33;
+ v34 = (u)zfputs;
+ v35 = *(u*)(vc + 72UL);
+ v36 = *(u*)(viv + 0UL);
+ v37 = ((u(*)())v34)(v35, v36);
+ v37;
+b25: if (!*(u*)(viv + 24UL)) goto b36;
+ if (*(u*)(*(u*)(viv + 24UL) + 0UL) == 1UL) goto b36;
+ v46 = 1UL;
+b38: if (!v46) goto b34;
+ v47 = (u)ztype_sizeof;
+ v48 = vc;
+ v49 = *(u*)(viv + 24UL);
+ v50 = ((u(*)())v47)(v48, v49);
+ vsize = v50;
+b32: if (vsize != 8UL) goto b42;
+ v51 = (u)zfputs;
+ v52 = *(u*)(vc + 72UL);
+ v53 = (u)" = 0";
+ v54 = ((u(*)())v51)(v52, v53);
+ v54;
+b40: v67 = (u)zfputs;
+ v68 = *(u*)(vc + 72UL);
+ v69 = (u)";\012";
+ v70 = ((u(*)())v67)(v68, v69);
+ v70;
+ vi = vi + 1UL;
goto b15;
-b45: v56 = (u)zfputs;
- v57 = *(u*)(vc + 72);
- v58 = (u)"[";
- v59 = ((u(*)())v56)(v57, v58);
- v60 = (u)zfputd;
- v61 = *(u*)(vc + 72);
- v62 = (u)((s)(vsize + 7) / (s)8);
- v63 = ((u(*)())v60)(v61, v62);
- v64 = (u)zfputs;
- v65 = *(u*)(vc + 72);
- v66 = (u)"] = {0}";
- v67 = ((u(*)())v64)(v65, v66);
- goto b43;
-b37: vsize = 8;
- goto b35;
-b39: v47 = 0;
- goto b41;
-b30: v39 = (u)zfputs;
- v40 = *(u*)(vc + 72);
- v41 = (u)"v";
- v42 = ((u(*)())v39)(v40, v41);
- v43 = (u)zfputd;
- v44 = *(u*)(vc + 72);
- v45 = vi;
- v46 = ((u(*)())v43)(v44, v45);
- goto b28;
-b24: v22 = 1;
+b42: v55 = (u)zfputs;
+ v56 = *(u*)(vc + 72UL);
+ v57 = (u)"[";
+ v58 = ((u(*)())v55)(v56, v57);
+ v58;
+ v59 = (u)zfputd;
+ v60 = *(u*)(vc + 72UL);
+ v61 = (u)((s)(vsize + 7UL) / (s)8UL);
+ v62 = ((u(*)())v59)(v60, v61);
+ v62;
+ v63 = (u)zfputs;
+ v64 = *(u*)(vc + 72UL);
+ v65 = (u)"] = {0}";
+ v66 = ((u(*)())v63)(v64, v65);
+ v66;
+ goto b40;
+b34: vsize = 8UL;
+ goto b32;
+b36: v46 = 0UL;
+ goto b38;
+b27: v38 = (u)zfputs;
+ v39 = *(u*)(vc + 72UL);
+ v40 = (u)"v";
+ v41 = ((u(*)())v38)(v39, v40);
+ v41;
+ v42 = (u)zfputd;
+ v43 = *(u*)(vc + 72UL);
+ v44 = vi;
+ v45 = ((u(*)())v42)(v43, v44);
+ v45;
goto b25;
-b9: viv = *(u*)(*(u*)(vic + 112) + vi * 8);
- *(u*)(viv + 48) = 0;
- vi = vi + 1;
+b11: viv = *(u*)(*(u*)(vic + 128UL) + vi * 8UL);
+ vi = vi + 1UL;
goto b7;
-b5: v8 = 1;
+b5: v8 = 1UL;
goto b6;
}
u zircforward(u vc, u vd) {
@@ -17018,29 +18562,57 @@ u zircforward(u vc, u vd) {
u v13 = 0;
u v14 = 0;
u v15 = 0;
- vic = *(u*)(vd + 104);
+ vic = *(u*)(vd + 104UL);
if (!vic) goto b5;
- v3 = 0;
-b6: if (!v3) goto b1;
- return 0;
-b1: v4 = (u)zfputs;
- v5 = *(u*)(vc + 72);
+ v3 = 0UL;
+b6: if (!v3) goto b3;
+ return 0UL;
+b3: v4 = (u)zfputs;
+ v5 = *(u*)(vc + 72UL);
v6 = (u)"u z";
v7 = ((u(*)())v4)(v5, v6);
+ v7;
v8 = (u)zfputs;
- v9 = *(u*)(vc + 72);
- v10 = *(u*)(vic + 24);
+ v9 = *(u*)(vc + 72UL);
+ v10 = *(u*)(vic + 24UL);
v11 = ((u(*)())v8)(v9, v10);
+ v11;
v12 = (u)zfputs;
- v13 = *(u*)(vc + 72);
+ v13 = *(u*)(vc + 72UL);
v14 = (u)"();\012";
v15 = ((u(*)())v12)(v13, v14);
- return 0;
-b5: v3 = 1;
+ v15;
+ return 0UL;
+b5: v3 = 1UL;
goto b6;
}
u zircline(u vc, u vop) {
- return 0;
+ u v2 = 0;
+ u v3 = 0;
+ u v4 = 0;
+ u v5 = 0;
+ u v6 = 0;
+ u v7 = 0;
+ u v8 = 0;
+ u v9 = 0;
+ u v10 = 0;
+ u v11 = 0;
+ u v12 = 0;
+ u v13 = 0;
+ u v14 = 0;
+ u v15 = 0;
+ u v16 = 0;
+ u v17 = 0;
+ u v18 = 0;
+ u v19 = 0;
+ u v20 = 0;
+ u v21 = 0;
+ u v22 = 0;
+ u v23 = 0;
+ u v24 = 0;
+ u v25 = 0;
+ u v26 = 0;
+ return 0UL;
}
u zircop(u vc, u vic, u vib, u vop, u vpri) {
u vkind = 0;
@@ -17564,691 +19136,783 @@ u zircop(u vc, u vic, u vib, u vop, u vpri) {
u v523 = 0;
u v524 = 0;
u v525 = 0;
- u v526 = 0;
- vkind = *(u*)vop;
- if (vkind != 0) goto b5;
- v9 = 1;
+ vkind = *(u*)(vop + 0UL);
+ if (vkind != 0UL) goto b5;
+ v9 = 1UL;
b7: if (!v9) goto b3;
- vmypri = 2;
-b1: if ((s)vmypri <= (s)vpri) goto b56;
+ vmypri = 2UL;
+b1: if ((s)vmypri <= (s)vpri) goto b58;
v13 = (u)zfputs;
- v14 = *(u*)(vc + 72);
+ v14 = *(u*)(vc + 72UL);
v15 = (u)"(";
v16 = ((u(*)())v13)(v14, v15);
-b56: if (vkind != 0) goto b64;
- v17 = 1;
+ v16;
+b56: if (vkind != 0UL) goto b64;
+ v17 = 1UL;
b66: if (!v17) goto b62;
- viv = *(u*)(*(u*)(vic + 112) + *(u*)(vop + 24) * 8);
- if (!*(u*)(viv + 24)) goto b72;
- if (*(u*)*(u*)(viv + 24) == 1) goto b72;
- v18 = 1;
+ viv = *(u*)(*(u*)(vic + 128UL) + *(u*)(vop + 24UL) * 8UL);
+ if (!*(u*)(viv + 24UL)) goto b72;
+ if (*(u*)(*(u*)(viv + 24UL) + 0UL) == 1UL) goto b72;
+ v18 = 1UL;
b74: if (!v18) goto b70;
v19 = (u)ztype_sizeof;
v20 = vc;
- v21 = *(u*)(viv + 24);
+ v21 = *(u*)(viv + 24UL);
v22 = ((u(*)())v19)(v20, v21);
vsize = v22;
-b68: if (vsize != 8) goto b78;
- if (vkind != 1) goto b76;
+b68: if (vsize != 8UL) goto b78;
+ if (vkind != 1UL) goto b81;
v23 = (u)zfputs;
- v24 = *(u*)(vc + 72);
+ v24 = *(u*)(vc + 72UL);
v25 = (u)"(u)&";
v26 = ((u(*)())v23)(v24, v25);
-b76: if (!*(u*)viv) goto b90;
+ v26;
+b79:b76: if (!*(u*)(viv + 0UL)) goto b90;
v35 = (u)zfputs;
- v36 = *(u*)(vc + 72);
+ v36 = *(u*)(vc + 72UL);
v37 = (u)"v";
v38 = ((u(*)())v35)(v36, v37);
+ v38;
v39 = (u)zfputs;
- v40 = *(u*)(vc + 72);
- v41 = *(u*)viv;
+ v40 = *(u*)(vc + 72UL);
+ v41 = *(u*)(viv + 0UL);
v42 = ((u(*)())v39)(v40, v41);
-b60: if ((s)vmypri <= (s)vpri) goto b248;
- v523 = (u)zfputs;
- v524 = *(u*)(vc + 72);
- v525 = (u)")";
- v526 = ((u(*)())v523)(v524, v525);
-b248: return 0;
+ v42;
+b88:b60: if ((s)vmypri <= (s)vpri) goto b242;
+ v522 = (u)zfputs;
+ v523 = *(u*)(vc + 72UL);
+ v524 = (u)")";
+ v525 = ((u(*)())v522)(v523, v524);
+ v525;
+b240: return 0UL;
+b242: goto b240;
b90: v43 = (u)zfputs;
- v44 = *(u*)(vc + 72);
+ v44 = *(u*)(vc + 72UL);
v45 = (u)"v";
v46 = ((u(*)())v43)(v44, v45);
+ v46;
v47 = (u)zfputd;
- v48 = *(u*)(vc + 72);
- v49 = *(u*)(vop + 24);
+ v48 = *(u*)(vc + 72UL);
+ v49 = *(u*)(vop + 24UL);
v50 = ((u(*)())v47)(v48, v49);
- goto b60;
-b78: if (vkind != 1) goto b85;
+ v50;
+ goto b88;
+b81: goto b79;
+b78: if (vkind != 1UL) goto b85;
v27 = (u)zfputs;
- v28 = *(u*)(vc + 72);
+ v28 = *(u*)(vc + 72UL);
v29 = (u)"(u)";
v30 = ((u(*)())v27)(v28, v29);
- goto b76;
+ v30;
+b83: goto b76;
b85: v31 = (u)zfputs;
- v32 = *(u*)(vc + 72);
+ v32 = *(u*)(vc + 72UL);
v33 = (u)"*";
v34 = ((u(*)())v31)(v32, v33);
- goto b76;
-b70: vsize = 8;
+ v34;
+ goto b83;
+b70: vsize = 8UL;
goto b68;
-b72: v18 = 0;
+b72: v18 = 0UL;
goto b74;
-b62: if (vkind != 2) goto b96;
+b62: if (vkind != 2UL) goto b96;
v51 = (u)zfputs;
- v52 = *(u*)(vc + 72);
+ v52 = *(u*)(vc + 72UL);
v53 = (u)"(u)z";
v54 = ((u(*)())v51)(v52, v53);
+ v54;
v55 = (u)zfputs;
- v56 = *(u*)(vc + 72);
- v57 = *(u*)(vop + 32);
+ v56 = *(u*)(vc + 72UL);
+ v57 = *(u*)(vop + 32UL);
v58 = ((u(*)())v55)(v56, v57);
+ v58;
goto b60;
-b96: if (vkind != 3) goto b100;
+b96: if (vkind != 3UL) goto b100;
v59 = (u)zfputd;
- v60 = *(u*)(vc + 72);
- v61 = *(u*)(vop + 24);
+ v60 = *(u*)(vc + 72UL);
+ v61 = *(u*)(vop + 24UL);
v62 = ((u(*)())v59)(v60, v61);
- if ((s)*(u*)(vop + 24) <= (s)32768) goto b106;
- v63 = 1;
-b108: if (!v63) goto b60;
- v64 = (u)zfputs;
- v65 = *(u*)(vc + 72);
- v66 = (u)"UL";
- v67 = ((u(*)())v64)(v65, v66);
+ v62;
+ v63 = (u)zfputs;
+ v64 = *(u*)(vc + 72UL);
+ v65 = (u)"UL";
+ v66 = ((u(*)())v63)(v64, v65);
+ v66;
goto b60;
-b106: if ((s)*(u*)(vop + 24) >= (s)0) goto b109;
- v63 = 1;
- goto b108;
-b109: v63 = 0;
- goto b108;
-b100: if (vkind != 4) goto b112;
- v68 = (u)zfputs;
- v69 = *(u*)(vc + 72);
- v70 = (u)"(u)";
- v71 = ((u(*)())v68)(v69, v70);
- v72 = (u)zircstr;
- v73 = vc;
- v74 = *(u*)(vop + 32);
- v75 = *(u*)(vop + 40);
- v76 = ((u(*)())v72)(v73, v74, v75);
- goto b60;
-b112: if (vkind != 5) goto b116;
- if (*(u*)*(u*)(vop + 48) != 3) goto b119;
- v77 = (u)zfputs;
- v78 = *(u*)(vc + 72);
- v79 = (u)"(u)*(b*)";
- v80 = ((u(*)())v77)(v78, v79);
- v81 = (u)zircop;
- v82 = vc;
- v83 = vic;
- v84 = vib;
- v85 = *(u*)(vop + 8);
- v86 = 2;
- v87 = ((u(*)())v81)(v82, v83, v84, v85, v86);
- goto b60;
-b119: v88 = (u)zfputs;
- v89 = *(u*)(vc + 72);
- v90 = (u)"*(u*)";
- v91 = ((u(*)())v88)(v89, v90);
- v92 = (u)zircop;
- v93 = vc;
- v94 = vic;
- v95 = vib;
- v96 = *(u*)(vop + 8);
- v97 = 2;
- v98 = ((u(*)())v92)(v93, v94, v95, v96, v97);
- goto b60;
-b116: if (vkind != 6) goto b125;
- if (*(u*)*(u*)(vop + 8) != 0) goto b128;
- v99 = (u)zircop;
- v100 = vc;
- v101 = vic;
- v102 = vib;
- v103 = *(u*)(vop + 8);
- v104 = 14;
- v105 = ((u(*)())v99)(v100, v101, v102, v103, v104);
- v106 = (u)zfputs;
- v107 = *(u*)(vc + 72);
- v108 = (u)" = ";
- v109 = ((u(*)())v106)(v107, v108);
- v110 = (u)zircop;
- v111 = vc;
- v112 = vic;
- v113 = vib;
- v114 = *(u*)(vop + 16);
- v115 = 14;
- v116 = ((u(*)())v110)(v111, v112, v113, v114, v115);
- goto b60;
-b128: if (*(u*)*(u*)(vop + 8) != 5) goto b133;
- if (*(u*)*(u*)(vop + 48) != 3) goto b136;
- v117 = (u)zfputs;
- v118 = *(u*)(vc + 72);
- v119 = (u)"*(b*)";
- v120 = ((u(*)())v117)(v118, v119);
-b134: v125 = (u)zircop;
- v126 = vc;
- v127 = vic;
- v128 = vib;
- v129 = *(u*)(*(u*)(vop + 8) + 8);
- v130 = 2;
- v131 = ((u(*)())v125)(v126, v127, v128, v129, v130);
- v132 = (u)zfputs;
- v133 = *(u*)(vc + 72);
- v134 = (u)" = ";
- v135 = ((u(*)())v132)(v133, v134);
- v136 = (u)zircop;
- v137 = vc;
- v138 = vic;
- v139 = vib;
- v140 = *(u*)(vop + 16);
- v141 = 14;
- v142 = ((u(*)())v136)(v137, v138, v139, v140, v141);
- goto b60;
-b136: v121 = (u)zfputs;
- v122 = *(u*)(vc + 72);
- v123 = (u)"*(u*)";
- v124 = ((u(*)())v121)(v122, v123);
- goto b134;
-b133: v143 = (u)zdie;
- v144 = (u)"invalid store";
- v145 = ((u(*)())v143)(v144);
+b100: if (vkind != 4UL) goto b104;
+ v67 = (u)zfputs;
+ v68 = *(u*)(vc + 72UL);
+ v69 = (u)"(u)";
+ v70 = ((u(*)())v67)(v68, v69);
+ v70;
+ v71 = (u)zircstr;
+ v72 = vc;
+ v73 = *(u*)(vop + 32UL);
+ v74 = *(u*)(vop + 40UL);
+ v75 = ((u(*)())v71)(v72, v73, v74);
+ v75;
goto b60;
-b125: if (vkind != 9) goto b144;
- v146 = (u)zfputs;
- v147 = *(u*)(vc + 72);
- v148 = (u)"-";
- v149 = ((u(*)())v146)(v147, v148);
- v150 = (u)zircop;
- v151 = vc;
- v152 = vic;
- v153 = vib;
- v154 = *(u*)(vop + 8);
- v155 = 2;
- v156 = ((u(*)())v150)(v151, v152, v153, v154, v155);
+b104: if (vkind != 5UL) goto b108;
+ if (*(u*)(*(u*)(vop + 48UL) + 0UL) != 3UL) goto b111;
+ v76 = (u)zfputs;
+ v77 = *(u*)(vc + 72UL);
+ v78 = (u)"(u)*(b*)";
+ v79 = ((u(*)())v76)(v77, v78);
+ v79;
+ v80 = (u)zircop;
+ v81 = vc;
+ v82 = vic;
+ v83 = vib;
+ v84 = *(u*)(vop + 8UL);
+ v85 = 2UL;
+ v86 = ((u(*)())v80)(v81, v82, v83, v84, v85);
+ v86;
+b109: goto b60;
+b111: v87 = (u)zfputs;
+ v88 = *(u*)(vc + 72UL);
+ v89 = (u)"*(u*)";
+ v90 = ((u(*)())v87)(v88, v89);
+ v90;
+ v91 = (u)zircop;
+ v92 = vc;
+ v93 = vic;
+ v94 = vib;
+ v95 = *(u*)(vop + 8UL);
+ v96 = 2UL;
+ v97 = ((u(*)())v91)(v92, v93, v94, v95, v96);
+ v97;
+ goto b109;
+b108: if (vkind != 6UL) goto b117;
+ if (*(u*)(*(u*)(vop + 8UL) + 0UL) != 0UL) goto b120;
+ v98 = (u)zircop;
+ v99 = vc;
+ v100 = vic;
+ v101 = vib;
+ v102 = *(u*)(vop + 8UL);
+ v103 = 14UL;
+ v104 = ((u(*)())v98)(v99, v100, v101, v102, v103);
+ v104;
+ v105 = (u)zfputs;
+ v106 = *(u*)(vc + 72UL);
+ v107 = (u)" = ";
+ v108 = ((u(*)())v105)(v106, v107);
+ v108;
+ v109 = (u)zircop;
+ v110 = vc;
+ v111 = vic;
+ v112 = vib;
+ v113 = *(u*)(vop + 16UL);
+ v114 = 14UL;
+ v115 = ((u(*)())v109)(v110, v111, v112, v113, v114);
+ v115;
+b118: goto b60;
+b120: if (*(u*)(*(u*)(vop + 8UL) + 0UL) != 5UL) goto b125;
+ if (*(u*)(*(u*)(vop + 48UL) + 0UL) != 3UL) goto b128;
+ v116 = (u)zfputs;
+ v117 = *(u*)(vc + 72UL);
+ v118 = (u)"*(b*)";
+ v119 = ((u(*)())v116)(v117, v118);
+ v119;
+b126: v124 = (u)zircop;
+ v125 = vc;
+ v126 = vic;
+ v127 = vib;
+ v128 = *(u*)(*(u*)(vop + 8UL) + 8UL);
+ v129 = 2UL;
+ v130 = ((u(*)())v124)(v125, v126, v127, v128, v129);
+ v130;
+ v131 = (u)zfputs;
+ v132 = *(u*)(vc + 72UL);
+ v133 = (u)" = ";
+ v134 = ((u(*)())v131)(v132, v133);
+ v134;
+ v135 = (u)zircop;
+ v136 = vc;
+ v137 = vic;
+ v138 = vib;
+ v139 = *(u*)(vop + 16UL);
+ v140 = 14UL;
+ v141 = ((u(*)())v135)(v136, v137, v138, v139, v140);
+ v141;
+ goto b118;
+b128: v120 = (u)zfputs;
+ v121 = *(u*)(vc + 72UL);
+ v122 = (u)"*(u*)";
+ v123 = ((u(*)())v120)(v121, v122);
+ v123;
+ goto b126;
+b125: v142 = (u)zdie;
+ v143 = (u)"invalid store";
+ v144 = ((u(*)())v142)(v143);
+ v144;
+ goto b118;
+b117: if (vkind != 9UL) goto b136;
+ v145 = (u)zfputs;
+ v146 = *(u*)(vc + 72UL);
+ v147 = (u)"-";
+ v148 = ((u(*)())v145)(v146, v147);
+ v148;
+ v149 = (u)zircop;
+ v150 = vc;
+ v151 = vic;
+ v152 = vib;
+ v153 = *(u*)(vop + 8UL);
+ v154 = 2UL;
+ v155 = ((u(*)())v149)(v150, v151, v152, v153, v154);
+ v155;
goto b60;
-b144: if (vkind != 10) goto b148;
- v157 = (u)zfputs;
- v158 = *(u*)(vc + 72);
- v159 = (u)"~";
- v160 = ((u(*)())v157)(v158, v159);
- v161 = (u)zircop;
- v162 = vc;
- v163 = vic;
- v164 = vib;
- v165 = *(u*)(vop + 8);
- v166 = 2;
- v167 = ((u(*)())v161)(v162, v163, v164, v165, v166);
+b136: if (vkind != 10UL) goto b140;
+ v156 = (u)zfputs;
+ v157 = *(u*)(vc + 72UL);
+ v158 = (u)"~";
+ v159 = ((u(*)())v156)(v157, v158);
+ v159;
+ v160 = (u)zircop;
+ v161 = vc;
+ v162 = vic;
+ v163 = vib;
+ v164 = *(u*)(vop + 8UL);
+ v165 = 2UL;
+ v166 = ((u(*)())v160)(v161, v162, v163, v164, v165);
+ v166;
goto b60;
-b148: if (vkind != 11) goto b152;
- v168 = (u)zircop;
- v169 = vc;
- v170 = vic;
- v171 = vib;
- v172 = *(u*)(vop + 8);
- v173 = 4;
- v174 = ((u(*)())v168)(v169, v170, v171, v172, v173);
- v175 = (u)zfputs;
- v176 = *(u*)(vc + 72);
- v177 = (u)" + ";
- v178 = ((u(*)())v175)(v176, v177);
- v179 = (u)zircop;
- v180 = vc;
- v181 = vic;
- v182 = vib;
- v183 = *(u*)(vop + 16);
- v184 = 4;
- v185 = ((u(*)())v179)(v180, v181, v182, v183, v184);
+b140: if (vkind != 11UL) goto b144;
+ v167 = (u)zircop;
+ v168 = vc;
+ v169 = vic;
+ v170 = vib;
+ v171 = *(u*)(vop + 8UL);
+ v172 = 4UL;
+ v173 = ((u(*)())v167)(v168, v169, v170, v171, v172);
+ v173;
+ v174 = (u)zfputs;
+ v175 = *(u*)(vc + 72UL);
+ v176 = (u)" + ";
+ v177 = ((u(*)())v174)(v175, v176);
+ v177;
+ v178 = (u)zircop;
+ v179 = vc;
+ v180 = vic;
+ v181 = vib;
+ v182 = *(u*)(vop + 16UL);
+ v183 = 4UL;
+ v184 = ((u(*)())v178)(v179, v180, v181, v182, v183);
+ v184;
goto b60;
-b152: if (vkind != 12) goto b157;
- v186 = (u)zircop;
- v187 = vc;
- v188 = vic;
- v189 = vib;
- v190 = *(u*)(vop + 8);
- v191 = 8;
- v192 = ((u(*)())v186)(v187, v188, v189, v190, v191);
- v193 = (u)zfputs;
- v194 = *(u*)(vc + 72);
- v195 = (u)" & ";
- v196 = ((u(*)())v193)(v194, v195);
- v197 = (u)zircop;
- v198 = vc;
- v199 = vic;
- v200 = vib;
- v201 = *(u*)(vop + 16);
- v202 = 8;
- v203 = ((u(*)())v197)(v198, v199, v200, v201, v202);
+b144: if (vkind != 12UL) goto b149;
+ v185 = (u)zircop;
+ v186 = vc;
+ v187 = vic;
+ v188 = vib;
+ v189 = *(u*)(vop + 8UL);
+ v190 = 8UL;
+ v191 = ((u(*)())v185)(v186, v187, v188, v189, v190);
+ v191;
+ v192 = (u)zfputs;
+ v193 = *(u*)(vc + 72UL);
+ v194 = (u)" & ";
+ v195 = ((u(*)())v192)(v193, v194);
+ v195;
+ v196 = (u)zircop;
+ v197 = vc;
+ v198 = vic;
+ v199 = vib;
+ v200 = *(u*)(vop + 16UL);
+ v201 = 8UL;
+ v202 = ((u(*)())v196)(v197, v198, v199, v200, v201);
+ v202;
goto b60;
-b157: if (vkind != 13) goto b162;
- v204 = (u)zircop;
- v205 = vc;
- v206 = vic;
- v207 = vib;
- v208 = *(u*)(vop + 8);
- v209 = 10;
- v210 = ((u(*)())v204)(v205, v206, v207, v208, v209);
- v211 = (u)zfputs;
- v212 = *(u*)(vc + 72);
- v213 = (u)" | ";
- v214 = ((u(*)())v211)(v212, v213);
- v215 = (u)zircop;
- v216 = vc;
- v217 = vic;
- v218 = vib;
- v219 = *(u*)(vop + 16);
- v220 = 10;
- v221 = ((u(*)())v215)(v216, v217, v218, v219, v220);
+b149: if (vkind != 13UL) goto b154;
+ v203 = (u)zircop;
+ v204 = vc;
+ v205 = vic;
+ v206 = vib;
+ v207 = *(u*)(vop + 8UL);
+ v208 = 10UL;
+ v209 = ((u(*)())v203)(v204, v205, v206, v207, v208);
+ v209;
+ v210 = (u)zfputs;
+ v211 = *(u*)(vc + 72UL);
+ v212 = (u)" | ";
+ v213 = ((u(*)())v210)(v211, v212);
+ v213;
+ v214 = (u)zircop;
+ v215 = vc;
+ v216 = vic;
+ v217 = vib;
+ v218 = *(u*)(vop + 16UL);
+ v219 = 10UL;
+ v220 = ((u(*)())v214)(v215, v216, v217, v218, v219);
+ v220;
goto b60;
-b162: if (vkind != 14) goto b167;
- v222 = (u)zircop;
- v223 = vc;
- v224 = vic;
- v225 = vib;
- v226 = *(u*)(vop + 8);
- v227 = 9;
- v228 = ((u(*)())v222)(v223, v224, v225, v226, v227);
- v229 = (u)zfputs;
- v230 = *(u*)(vc + 72);
- v231 = (u)" ^ ";
- v232 = ((u(*)())v229)(v230, v231);
- v233 = (u)zircop;
- v234 = vc;
- v235 = vic;
- v236 = vib;
- v237 = *(u*)(vop + 16);
- v238 = 9;
- v239 = ((u(*)())v233)(v234, v235, v236, v237, v238);
+b154: if (vkind != 14UL) goto b159;
+ v221 = (u)zircop;
+ v222 = vc;
+ v223 = vic;
+ v224 = vib;
+ v225 = *(u*)(vop + 8UL);
+ v226 = 9UL;
+ v227 = ((u(*)())v221)(v222, v223, v224, v225, v226);
+ v227;
+ v228 = (u)zfputs;
+ v229 = *(u*)(vc + 72UL);
+ v230 = (u)" ^ ";
+ v231 = ((u(*)())v228)(v229, v230);
+ v231;
+ v232 = (u)zircop;
+ v233 = vc;
+ v234 = vic;
+ v235 = vib;
+ v236 = *(u*)(vop + 16UL);
+ v237 = 9UL;
+ v238 = ((u(*)())v232)(v233, v234, v235, v236, v237);
+ v238;
goto b60;
-b167: if (vkind != 15) goto b172;
- v240 = (u)zfputs;
- v241 = *(u*)(vc + 72);
- v242 = (u)"(u)((s)";
- v243 = ((u(*)())v240)(v241, v242);
- v244 = (u)zircop;
- v245 = vc;
- v246 = vic;
- v247 = vib;
- v248 = *(u*)(vop + 8);
- v249 = 2;
- v250 = ((u(*)())v244)(v245, v246, v247, v248, v249);
- v251 = (u)zfputs;
- v252 = *(u*)(vc + 72);
- v253 = (u)" / (s)";
- v254 = ((u(*)())v251)(v252, v253);
- v255 = (u)zircop;
- v256 = vc;
- v257 = vic;
- v258 = vib;
- v259 = *(u*)(vop + 16);
- v260 = 2;
- v261 = ((u(*)())v255)(v256, v257, v258, v259, v260);
- v262 = (u)zfputs;
- v263 = *(u*)(vc + 72);
- v264 = (u)")";
- v265 = ((u(*)())v262)(v263, v264);
+b159: if (vkind != 15UL) goto b164;
+ v239 = (u)zfputs;
+ v240 = *(u*)(vc + 72UL);
+ v241 = (u)"(u)((s)";
+ v242 = ((u(*)())v239)(v240, v241);
+ v242;
+ v243 = (u)zircop;
+ v244 = vc;
+ v245 = vic;
+ v246 = vib;
+ v247 = *(u*)(vop + 8UL);
+ v248 = 2UL;
+ v249 = ((u(*)())v243)(v244, v245, v246, v247, v248);
+ v249;
+ v250 = (u)zfputs;
+ v251 = *(u*)(vc + 72UL);
+ v252 = (u)" / (s)";
+ v253 = ((u(*)())v250)(v251, v252);
+ v253;
+ v254 = (u)zircop;
+ v255 = vc;
+ v256 = vic;
+ v257 = vib;
+ v258 = *(u*)(vop + 16UL);
+ v259 = 2UL;
+ v260 = ((u(*)())v254)(v255, v256, v257, v258, v259);
+ v260;
+ v261 = (u)zfputs;
+ v262 = *(u*)(vc + 72UL);
+ v263 = (u)")";
+ v264 = ((u(*)())v261)(v262, v263);
+ v264;
goto b60;
-b172: if (vkind != 16) goto b179;
- v266 = (u)zfputs;
- v267 = *(u*)(vc + 72);
- v268 = (u)"(u)((s)";
- v269 = ((u(*)())v266)(v267, v268);
- v270 = (u)zircop;
- v271 = vc;
- v272 = vic;
- v273 = vib;
- v274 = *(u*)(vop + 8);
- v275 = 2;
- v276 = ((u(*)())v270)(v271, v272, v273, v274, v275);
- v277 = (u)zfputs;
- v278 = *(u*)(vc + 72);
- v279 = (u)" % (s)";
- v280 = ((u(*)())v277)(v278, v279);
- v281 = (u)zircop;
- v282 = vc;
- v283 = vic;
- v284 = vib;
- v285 = *(u*)(vop + 16);
- v286 = 2;
- v287 = ((u(*)())v281)(v282, v283, v284, v285, v286);
- v288 = (u)zfputs;
- v289 = *(u*)(vc + 72);
- v290 = (u)")";
- v291 = ((u(*)())v288)(v289, v290);
+b164: if (vkind != 16UL) goto b171;
+ v265 = (u)zfputs;
+ v266 = *(u*)(vc + 72UL);
+ v267 = (u)"(u)((s)";
+ v268 = ((u(*)())v265)(v266, v267);
+ v268;
+ v269 = (u)zircop;
+ v270 = vc;
+ v271 = vic;
+ v272 = vib;
+ v273 = *(u*)(vop + 8UL);
+ v274 = 2UL;
+ v275 = ((u(*)())v269)(v270, v271, v272, v273, v274);
+ v275;
+ v276 = (u)zfputs;
+ v277 = *(u*)(vc + 72UL);
+ v278 = (u)" % (s)";
+ v279 = ((u(*)())v276)(v277, v278);
+ v279;
+ v280 = (u)zircop;
+ v281 = vc;
+ v282 = vic;
+ v283 = vib;
+ v284 = *(u*)(vop + 16UL);
+ v285 = 2UL;
+ v286 = ((u(*)())v280)(v281, v282, v283, v284, v285);
+ v286;
+ v287 = (u)zfputs;
+ v288 = *(u*)(vc + 72UL);
+ v289 = (u)")";
+ v290 = ((u(*)())v287)(v288, v289);
+ v290;
goto b60;
-b179: if (vkind != 17) goto b186;
- v292 = (u)zircop;
- v293 = vc;
- v294 = vic;
- v295 = vib;
- v296 = *(u*)(vop + 8);
- v297 = 6;
- v298 = ((u(*)())v292)(v293, v294, v295, v296, v297);
- v299 = (u)zfputs;
- v300 = *(u*)(vc + 72);
- v301 = (u)" << ";
- v302 = ((u(*)())v299)(v300, v301);
- v303 = (u)zircop;
- v304 = vc;
- v305 = vic;
- v306 = vib;
- v307 = *(u*)(vop + 16);
- v308 = 6;
- v309 = ((u(*)())v303)(v304, v305, v306, v307, v308);
+b171: if (vkind != 17UL) goto b178;
+ v291 = (u)zircop;
+ v292 = vc;
+ v293 = vic;
+ v294 = vib;
+ v295 = *(u*)(vop + 8UL);
+ v296 = 6UL;
+ v297 = ((u(*)())v291)(v292, v293, v294, v295, v296);
+ v297;
+ v298 = (u)zfputs;
+ v299 = *(u*)(vc + 72UL);
+ v300 = (u)" << ";
+ v301 = ((u(*)())v298)(v299, v300);
+ v301;
+ v302 = (u)zircop;
+ v303 = vc;
+ v304 = vic;
+ v305 = vib;
+ v306 = *(u*)(vop + 16UL);
+ v307 = 6UL;
+ v308 = ((u(*)())v302)(v303, v304, v305, v306, v307);
+ v308;
goto b60;
-b186: if (vkind != 18) goto b191;
- v310 = (u)zircop;
- v311 = vc;
- v312 = vic;
- v313 = vib;
- v314 = *(u*)(vop + 8);
- v315 = 6;
- v316 = ((u(*)())v310)(v311, v312, v313, v314, v315);
- v317 = (u)zfputs;
- v318 = *(u*)(vc + 72);
- v319 = (u)" >> ";
- v320 = ((u(*)())v317)(v318, v319);
- v321 = (u)zircop;
- v322 = vc;
- v323 = vic;
- v324 = vib;
- v325 = *(u*)(vop + 16);
- v326 = 6;
- v327 = ((u(*)())v321)(v322, v323, v324, v325, v326);
+b178: if (vkind != 18UL) goto b183;
+ v309 = (u)zircop;
+ v310 = vc;
+ v311 = vic;
+ v312 = vib;
+ v313 = *(u*)(vop + 8UL);
+ v314 = 6UL;
+ v315 = ((u(*)())v309)(v310, v311, v312, v313, v314);
+ v315;
+ v316 = (u)zfputs;
+ v317 = *(u*)(vc + 72UL);
+ v318 = (u)" >> ";
+ v319 = ((u(*)())v316)(v317, v318);
+ v319;
+ v320 = (u)zircop;
+ v321 = vc;
+ v322 = vic;
+ v323 = vib;
+ v324 = *(u*)(vop + 16UL);
+ v325 = 6UL;
+ v326 = ((u(*)())v320)(v321, v322, v323, v324, v325);
+ v326;
goto b60;
-b191: if (vkind != 19) goto b196;
- v328 = (u)zircop;
- v329 = vc;
- v330 = vic;
- v331 = vib;
- v332 = *(u*)(vop + 8);
- v333 = 3;
- v334 = ((u(*)())v328)(v329, v330, v331, v332, v333);
- v335 = (u)zfputs;
- v336 = *(u*)(vc + 72);
- v337 = (u)" * ";
- v338 = ((u(*)())v335)(v336, v337);
- v339 = (u)zircop;
- v340 = vc;
- v341 = vic;
- v342 = vib;
- v343 = *(u*)(vop + 16);
- v344 = 3;
- v345 = ((u(*)())v339)(v340, v341, v342, v343, v344);
+b183: if (vkind != 19UL) goto b188;
+ v327 = (u)zircop;
+ v328 = vc;
+ v329 = vic;
+ v330 = vib;
+ v331 = *(u*)(vop + 8UL);
+ v332 = 3UL;
+ v333 = ((u(*)())v327)(v328, v329, v330, v331, v332);
+ v333;
+ v334 = (u)zfputs;
+ v335 = *(u*)(vc + 72UL);
+ v336 = (u)" * ";
+ v337 = ((u(*)())v334)(v335, v336);
+ v337;
+ v338 = (u)zircop;
+ v339 = vc;
+ v340 = vic;
+ v341 = vib;
+ v342 = *(u*)(vop + 16UL);
+ v343 = 3UL;
+ v344 = ((u(*)())v338)(v339, v340, v341, v342, v343);
+ v344;
goto b60;
-b196: if (vkind != 20) goto b201;
- v346 = (u)zircop;
- v347 = vc;
- v348 = vic;
- v349 = vib;
- v350 = *(u*)(vop + 8);
- v351 = 4;
- v352 = ((u(*)())v346)(v347, v348, v349, v350, v351);
- v353 = (u)zfputs;
- v354 = *(u*)(vc + 72);
- v355 = (u)" - ";
- v356 = ((u(*)())v353)(v354, v355);
- v357 = (u)zircop;
- v358 = vc;
- v359 = vic;
- v360 = vib;
- v361 = *(u*)(vop + 16);
- v362 = 4;
- v363 = ((u(*)())v357)(v358, v359, v360, v361, v362);
+b188: if (vkind != 20UL) goto b193;
+ v345 = (u)zircop;
+ v346 = vc;
+ v347 = vic;
+ v348 = vib;
+ v349 = *(u*)(vop + 8UL);
+ v350 = 4UL;
+ v351 = ((u(*)())v345)(v346, v347, v348, v349, v350);
+ v351;
+ v352 = (u)zfputs;
+ v353 = *(u*)(vc + 72UL);
+ v354 = (u)" - ";
+ v355 = ((u(*)())v352)(v353, v354);
+ v355;
+ v356 = (u)zircop;
+ v357 = vc;
+ v358 = vic;
+ v359 = vib;
+ v360 = *(u*)(vop + 16UL);
+ v361 = 4UL;
+ v362 = ((u(*)())v356)(v357, v358, v359, v360, v361);
+ v362;
goto b60;
-b201: if (vkind != 21) goto b206;
- v364 = (u)zfputs;
- v365 = *(u*)(vc + 72);
- v366 = (u)"(u)(";
- v367 = ((u(*)())v364)(v365, v366);
- v368 = (u)zircop;
- v369 = vc;
- v370 = vic;
- v371 = vib;
- v372 = *(u*)(vop + 8);
- v373 = 7;
- v374 = ((u(*)())v368)(v369, v370, v371, v372, v373);
- v375 = (u)zfputs;
- v376 = *(u*)(vc + 72);
- v377 = (u)" == ";
- v378 = ((u(*)())v375)(v376, v377);
- v379 = (u)zircop;
- v380 = vc;
- v381 = vic;
- v382 = vib;
- v383 = *(u*)(vop + 16);
- v384 = 7;
- v385 = ((u(*)())v379)(v380, v381, v382, v383, v384);
- v386 = (u)zfputs;
- v387 = *(u*)(vc + 72);
- v388 = (u)")";
- v389 = ((u(*)())v386)(v387, v388);
+b193: if (vkind != 21UL) goto b198;
+ v363 = (u)zfputs;
+ v364 = *(u*)(vc + 72UL);
+ v365 = (u)"(u)(";
+ v366 = ((u(*)())v363)(v364, v365);
+ v366;
+ v367 = (u)zircop;
+ v368 = vc;
+ v369 = vic;
+ v370 = vib;
+ v371 = *(u*)(vop + 8UL);
+ v372 = 7UL;
+ v373 = ((u(*)())v367)(v368, v369, v370, v371, v372);
+ v373;
+ v374 = (u)zfputs;
+ v375 = *(u*)(vc + 72UL);
+ v376 = (u)" == ";
+ v377 = ((u(*)())v374)(v375, v376);
+ v377;
+ v378 = (u)zircop;
+ v379 = vc;
+ v380 = vic;
+ v381 = vib;
+ v382 = *(u*)(vop + 16UL);
+ v383 = 7UL;
+ v384 = ((u(*)())v378)(v379, v380, v381, v382, v383);
+ v384;
+ v385 = (u)zfputs;
+ v386 = *(u*)(vc + 72UL);
+ v387 = (u)")";
+ v388 = ((u(*)())v385)(v386, v387);
+ v388;
goto b60;
-b206: if (vkind != 22) goto b213;
- v390 = (u)zfputs;
- v391 = *(u*)(vc + 72);
- v392 = (u)"(u)(";
- v393 = ((u(*)())v390)(v391, v392);
- v394 = (u)zircop;
- v395 = vc;
- v396 = vic;
- v397 = vib;
- v398 = *(u*)(vop + 8);
- v399 = 7;
- v400 = ((u(*)())v394)(v395, v396, v397, v398, v399);
- v401 = (u)zfputs;
- v402 = *(u*)(vc + 72);
- v403 = (u)" != ";
- v404 = ((u(*)())v401)(v402, v403);
- v405 = (u)zircop;
- v406 = vc;
- v407 = vic;
- v408 = vib;
- v409 = *(u*)(vop + 16);
- v410 = 7;
- v411 = ((u(*)())v405)(v406, v407, v408, v409, v410);
- v412 = (u)zfputs;
- v413 = *(u*)(vc + 72);
- v414 = (u)")";
- v415 = ((u(*)())v412)(v413, v414);
+b198: if (vkind != 22UL) goto b205;
+ v389 = (u)zfputs;
+ v390 = *(u*)(vc + 72UL);
+ v391 = (u)"(u)(";
+ v392 = ((u(*)())v389)(v390, v391);
+ v392;
+ v393 = (u)zircop;
+ v394 = vc;
+ v395 = vic;
+ v396 = vib;
+ v397 = *(u*)(vop + 8UL);
+ v398 = 7UL;
+ v399 = ((u(*)())v393)(v394, v395, v396, v397, v398);
+ v399;
+ v400 = (u)zfputs;
+ v401 = *(u*)(vc + 72UL);
+ v402 = (u)" != ";
+ v403 = ((u(*)())v400)(v401, v402);
+ v403;
+ v404 = (u)zircop;
+ v405 = vc;
+ v406 = vic;
+ v407 = vib;
+ v408 = *(u*)(vop + 16UL);
+ v409 = 7UL;
+ v410 = ((u(*)())v404)(v405, v406, v407, v408, v409);
+ v410;
+ v411 = (u)zfputs;
+ v412 = *(u*)(vc + 72UL);
+ v413 = (u)")";
+ v414 = ((u(*)())v411)(v412, v413);
+ v414;
goto b60;
-b213: if (vkind != 23) goto b220;
- v416 = (u)zfputs;
- v417 = *(u*)(vc + 72);
- v418 = (u)"(u)((s)";
- v419 = ((u(*)())v416)(v417, v418);
- v420 = (u)zircop;
- v421 = vc;
- v422 = vic;
- v423 = vib;
- v424 = *(u*)(vop + 8);
- v425 = 6;
- v426 = ((u(*)())v420)(v421, v422, v423, v424, v425);
- v427 = (u)zfputs;
- v428 = *(u*)(vc + 72);
- v429 = (u)" > (s)";
- v430 = ((u(*)())v427)(v428, v429);
- v431 = (u)zircop;
- v432 = vc;
- v433 = vic;
- v434 = vib;
- v435 = *(u*)(vop + 16);
- v436 = 6;
- v437 = ((u(*)())v431)(v432, v433, v434, v435, v436);
- v438 = (u)zfputs;
- v439 = *(u*)(vc + 72);
- v440 = (u)")";
- v441 = ((u(*)())v438)(v439, v440);
+b205: if (vkind != 23UL) goto b212;
+ v415 = (u)zfputs;
+ v416 = *(u*)(vc + 72UL);
+ v417 = (u)"(u)((s)";
+ v418 = ((u(*)())v415)(v416, v417);
+ v418;
+ v419 = (u)zircop;
+ v420 = vc;
+ v421 = vic;
+ v422 = vib;
+ v423 = *(u*)(vop + 8UL);
+ v424 = 6UL;
+ v425 = ((u(*)())v419)(v420, v421, v422, v423, v424);
+ v425;
+ v426 = (u)zfputs;
+ v427 = *(u*)(vc + 72UL);
+ v428 = (u)" > (s)";
+ v429 = ((u(*)())v426)(v427, v428);
+ v429;
+ v430 = (u)zircop;
+ v431 = vc;
+ v432 = vic;
+ v433 = vib;
+ v434 = *(u*)(vop + 16UL);
+ v435 = 6UL;
+ v436 = ((u(*)())v430)(v431, v432, v433, v434, v435);
+ v436;
+ v437 = (u)zfputs;
+ v438 = *(u*)(vc + 72UL);
+ v439 = (u)")";
+ v440 = ((u(*)())v437)(v438, v439);
+ v440;
goto b60;
-b220: if (vkind != 24) goto b227;
- v442 = (u)zfputs;
- v443 = *(u*)(vc + 72);
- v444 = (u)"(u)((s)";
- v445 = ((u(*)())v442)(v443, v444);
- v446 = (u)zircop;
- v447 = vc;
- v448 = vic;
- v449 = vib;
- v450 = *(u*)(vop + 8);
- v451 = 6;
- v452 = ((u(*)())v446)(v447, v448, v449, v450, v451);
- v453 = (u)zfputs;
- v454 = *(u*)(vc + 72);
- v455 = (u)" >= (s)";
- v456 = ((u(*)())v453)(v454, v455);
- v457 = (u)zircop;
- v458 = vc;
- v459 = vic;
- v460 = vib;
- v461 = *(u*)(vop + 16);
- v462 = 6;
- v463 = ((u(*)())v457)(v458, v459, v460, v461, v462);
- v464 = (u)zfputs;
- v465 = *(u*)(vc + 72);
- v466 = (u)")";
- v467 = ((u(*)())v464)(v465, v466);
+b212: if (vkind != 24UL) goto b219;
+ v441 = (u)zfputs;
+ v442 = *(u*)(vc + 72UL);
+ v443 = (u)"(u)((s)";
+ v444 = ((u(*)())v441)(v442, v443);
+ v444;
+ v445 = (u)zircop;
+ v446 = vc;
+ v447 = vic;
+ v448 = vib;
+ v449 = *(u*)(vop + 8UL);
+ v450 = 6UL;
+ v451 = ((u(*)())v445)(v446, v447, v448, v449, v450);
+ v451;
+ v452 = (u)zfputs;
+ v453 = *(u*)(vc + 72UL);
+ v454 = (u)" >= (s)";
+ v455 = ((u(*)())v452)(v453, v454);
+ v455;
+ v456 = (u)zircop;
+ v457 = vc;
+ v458 = vic;
+ v459 = vib;
+ v460 = *(u*)(vop + 16UL);
+ v461 = 6UL;
+ v462 = ((u(*)())v456)(v457, v458, v459, v460, v461);
+ v462;
+ v463 = (u)zfputs;
+ v464 = *(u*)(vc + 72UL);
+ v465 = (u)")";
+ v466 = ((u(*)())v463)(v464, v465);
+ v466;
goto b60;
-b227: if (vkind != 25) goto b234;
- v468 = (u)zfputs;
- v469 = *(u*)(vc + 72);
- v470 = (u)"(u)((s)";
- v471 = ((u(*)())v468)(v469, v470);
- v472 = (u)zircop;
- v473 = vc;
- v474 = vic;
- v475 = vib;
- v476 = *(u*)(vop + 8);
- v477 = 6;
- v478 = ((u(*)())v472)(v473, v474, v475, v476, v477);
- v479 = (u)zfputs;
- v480 = *(u*)(vc + 72);
- v481 = (u)" < (s)";
- v482 = ((u(*)())v479)(v480, v481);
- v483 = (u)zircop;
- v484 = vc;
- v485 = vic;
- v486 = vib;
- v487 = *(u*)(vop + 16);
- v488 = 6;
- v489 = ((u(*)())v483)(v484, v485, v486, v487, v488);
- v490 = (u)zfputs;
- v491 = *(u*)(vc + 72);
- v492 = (u)")";
- v493 = ((u(*)())v490)(v491, v492);
+b219: if (vkind != 25UL) goto b226;
+ v467 = (u)zfputs;
+ v468 = *(u*)(vc + 72UL);
+ v469 = (u)"(u)((s)";
+ v470 = ((u(*)())v467)(v468, v469);
+ v470;
+ v471 = (u)zircop;
+ v472 = vc;
+ v473 = vic;
+ v474 = vib;
+ v475 = *(u*)(vop + 8UL);
+ v476 = 6UL;
+ v477 = ((u(*)())v471)(v472, v473, v474, v475, v476);
+ v477;
+ v478 = (u)zfputs;
+ v479 = *(u*)(vc + 72UL);
+ v480 = (u)" < (s)";
+ v481 = ((u(*)())v478)(v479, v480);
+ v481;
+ v482 = (u)zircop;
+ v483 = vc;
+ v484 = vic;
+ v485 = vib;
+ v486 = *(u*)(vop + 16UL);
+ v487 = 6UL;
+ v488 = ((u(*)())v482)(v483, v484, v485, v486, v487);
+ v488;
+ v489 = (u)zfputs;
+ v490 = *(u*)(vc + 72UL);
+ v491 = (u)")";
+ v492 = ((u(*)())v489)(v490, v491);
+ v492;
goto b60;
-b234: if (vkind != 26) goto b241;
- v494 = (u)zfputs;
- v495 = *(u*)(vc + 72);
- v496 = (u)"(u)((s)";
- v497 = ((u(*)())v494)(v495, v496);
- v498 = (u)zircop;
- v499 = vc;
- v500 = vic;
- v501 = vib;
- v502 = *(u*)(vop + 8);
- v503 = 6;
- v504 = ((u(*)())v498)(v499, v500, v501, v502, v503);
- v505 = (u)zfputs;
- v506 = *(u*)(vc + 72);
- v507 = (u)" <= (s)";
- v508 = ((u(*)())v505)(v506, v507);
- v509 = (u)zircop;
- v510 = vc;
- v511 = vic;
- v512 = vib;
- v513 = *(u*)(vop + 16);
- v514 = 6;
- v515 = ((u(*)())v509)(v510, v511, v512, v513, v514);
- v516 = (u)zfputs;
- v517 = *(u*)(vc + 72);
- v518 = (u)")";
- v519 = ((u(*)())v516)(v517, v518);
+b226: if (vkind != 26UL) goto b233;
+ v493 = (u)zfputs;
+ v494 = *(u*)(vc + 72UL);
+ v495 = (u)"(u)((s)";
+ v496 = ((u(*)())v493)(v494, v495);
+ v496;
+ v497 = (u)zircop;
+ v498 = vc;
+ v499 = vic;
+ v500 = vib;
+ v501 = *(u*)(vop + 8UL);
+ v502 = 6UL;
+ v503 = ((u(*)())v497)(v498, v499, v500, v501, v502);
+ v503;
+ v504 = (u)zfputs;
+ v505 = *(u*)(vc + 72UL);
+ v506 = (u)" <= (s)";
+ v507 = ((u(*)())v504)(v505, v506);
+ v507;
+ v508 = (u)zircop;
+ v509 = vc;
+ v510 = vic;
+ v511 = vib;
+ v512 = *(u*)(vop + 16UL);
+ v513 = 6UL;
+ v514 = ((u(*)())v508)(v509, v510, v511, v512, v513);
+ v514;
+ v515 = (u)zfputs;
+ v516 = *(u*)(vc + 72UL);
+ v517 = (u)")";
+ v518 = ((u(*)())v515)(v516, v517);
+ v518;
goto b60;
-b241: v520 = (u)zdie;
- v521 = (u)"invalid op";
- v522 = ((u(*)())v520)(v521);
+b233: v519 = (u)zdie;
+ v520 = (u)"invalid op";
+ v521 = ((u(*)())v519)(v520);
+ v521;
goto b60;
-b64: if (vkind != 1) goto b67;
- v17 = 1;
+b64: if (vkind != 1UL) goto b67;
+ v17 = 1UL;
goto b66;
-b67: v17 = 0;
+b67: v17 = 0UL;
goto b66;
-b3: if (vkind != 2) goto b10;
- vmypri = 2;
+b58: goto b56;
+b3: if (vkind != 2UL) goto b10;
+ vmypri = 2UL;
goto b1;
-b10: if (vkind != 3) goto b12;
- vmypri = 1;
+b10: if (vkind != 3UL) goto b12;
+ vmypri = 1UL;
goto b1;
-b12: if (vkind != 4) goto b14;
- vmypri = 2;
+b12: if (vkind != 4UL) goto b14;
+ vmypri = 2UL;
goto b1;
-b14: if (vkind != 5) goto b16;
- vmypri = 2;
+b14: if (vkind != 5UL) goto b16;
+ vmypri = 2UL;
goto b1;
-b16: if (vkind != 6) goto b18;
- vmypri = 2;
+b16: if (vkind != 6UL) goto b18;
+ vmypri = 2UL;
goto b1;
-b18: if (vkind != 9) goto b20;
- vmypri = 2;
+b18: if (vkind != 9UL) goto b20;
+ vmypri = 2UL;
goto b1;
-b20: if (vkind != 10) goto b22;
- vmypri = 2;
+b20: if (vkind != 10UL) goto b22;
+ vmypri = 2UL;
goto b1;
-b22: if (vkind != 11) goto b24;
- vmypri = 4;
+b22: if (vkind != 11UL) goto b24;
+ vmypri = 4UL;
goto b1;
-b24: if (vkind != 12) goto b26;
- vmypri = 8;
+b24: if (vkind != 12UL) goto b26;
+ vmypri = 8UL;
goto b1;
-b26: if (vkind != 13) goto b28;
- vmypri = 10;
+b26: if (vkind != 13UL) goto b28;
+ vmypri = 10UL;
goto b1;
-b28: if (vkind != 14) goto b30;
- vmypri = 9;
+b28: if (vkind != 14UL) goto b30;
+ vmypri = 9UL;
goto b1;
-b30: if (vkind != 15) goto b32;
- vmypri = 2;
+b30: if (vkind != 15UL) goto b32;
+ vmypri = 2UL;
goto b1;
-b32: if (vkind != 16) goto b34;
- vmypri = 2;
+b32: if (vkind != 16UL) goto b34;
+ vmypri = 2UL;
goto b1;
-b34: if (vkind != 17) goto b36;
- vmypri = 6;
+b34: if (vkind != 17UL) goto b36;
+ vmypri = 6UL;
goto b1;
-b36: if (vkind != 18) goto b38;
- vmypri = 6;
+b36: if (vkind != 18UL) goto b38;
+ vmypri = 6UL;
goto b1;
-b38: if (vkind != 19) goto b40;
- vmypri = 3;
+b38: if (vkind != 19UL) goto b40;
+ vmypri = 3UL;
goto b1;
-b40: if (vkind != 20) goto b42;
- vmypri = 4;
+b40: if (vkind != 20UL) goto b42;
+ vmypri = 4UL;
goto b1;
-b42: if (vkind != 21) goto b44;
- vmypri = 7;
+b42: if (vkind != 21UL) goto b44;
+ vmypri = 7UL;
goto b1;
-b44: if (vkind != 22) goto b46;
- vmypri = 7;
+b44: if (vkind != 22UL) goto b46;
+ vmypri = 7UL;
goto b1;
-b46: if (vkind != 23) goto b48;
- vmypri = 2;
+b46: if (vkind != 23UL) goto b48;
+ vmypri = 2UL;
goto b1;
-b48: if (vkind != 24) goto b50;
- vmypri = 2;
+b48: if (vkind != 24UL) goto b50;
+ vmypri = 2UL;
goto b1;
-b50: if (vkind != 25) goto b52;
- vmypri = 2;
+b50: if (vkind != 25UL) goto b52;
+ vmypri = 2UL;
goto b1;
-b52: if (vkind != 26) goto b54;
- vmypri = 2;
+b52: if (vkind != 26UL) goto b54;
+ vmypri = 2UL;
goto b1;
b54: v10 = (u)zdie;
v11 = (u)"invalid op";
v12 = ((u(*)())v10)(v11);
+ v12;
goto b1;
-b5: if (vkind != 1) goto b8;
- v9 = 1;
+b5: if (vkind != 1UL) goto b8;
+ v9 = 1UL;
goto b7;
-b8: v9 = 0;
+b8: v9 = 0UL;
goto b7;
}
u zircop_neg(u vc, u vic, u vib, u vop, u vpri) {
@@ -18388,156 +20052,186 @@ u zircop_neg(u vc, u vic, u vib, u vop, u vpri) {
u v138 = 0;
u v139 = 0;
u v140 = 0;
- vkind = *(u*)vop;
- if (vkind != 21) goto b3;
+ vkind = *(u*)(vop + 0UL);
+ if (vkind != 21UL) goto b3;
v6 = (u)zircop;
v7 = vc;
v8 = vic;
v9 = vib;
- v10 = *(u*)(vop + 8);
- v11 = 7;
+ v10 = *(u*)(vop + 8UL);
+ v11 = 7UL;
v12 = ((u(*)())v6)(v7, v8, v9, v10, v11);
+ v12;
v13 = (u)zfputs;
- v14 = *(u*)(vc + 72);
+ v14 = *(u*)(vc + 72UL);
v15 = (u)" != ";
v16 = ((u(*)())v13)(v14, v15);
+ v16;
v17 = (u)zircop;
v18 = vc;
v19 = vic;
v20 = vib;
- v21 = *(u*)(vop + 16);
- v22 = 7;
+ v21 = *(u*)(vop + 16UL);
+ v22 = 7UL;
v23 = ((u(*)())v17)(v18, v19, v20, v21, v22);
-b1: return 0;
-b3: if (vkind != 22) goto b8;
+ v23;
+b1: return 0UL;
+b3: if (vkind != 22UL) goto b8;
v24 = (u)zircop;
v25 = vc;
v26 = vic;
v27 = vib;
- v28 = *(u*)(vop + 8);
- v29 = 7;
+ v28 = *(u*)(vop + 8UL);
+ v29 = 7UL;
v30 = ((u(*)())v24)(v25, v26, v27, v28, v29);
+ v30;
v31 = (u)zfputs;
- v32 = *(u*)(vc + 72);
+ v32 = *(u*)(vc + 72UL);
v33 = (u)" == ";
v34 = ((u(*)())v31)(v32, v33);
+ v34;
v35 = (u)zircop;
v36 = vc;
v37 = vic;
v38 = vib;
- v39 = *(u*)(vop + 16);
- v40 = 7;
+ v39 = *(u*)(vop + 16UL);
+ v40 = 7UL;
v41 = ((u(*)())v35)(v36, v37, v38, v39, v40);
+ v41;
goto b1;
-b8: if (vkind != 23) goto b13;
+b8: if (vkind != 23UL) goto b13;
v42 = (u)zfputs;
- v43 = *(u*)(vc + 72);
+ v43 = *(u*)(vc + 72UL);
v44 = (u)"(s)";
v45 = ((u(*)())v42)(v43, v44);
+ v45;
v46 = (u)zircop;
v47 = vc;
v48 = vic;
v49 = vib;
- v50 = *(u*)(vop + 8);
- v51 = 2;
+ v50 = *(u*)(vop + 8UL);
+ v51 = 2UL;
v52 = ((u(*)())v46)(v47, v48, v49, v50, v51);
+ v52;
v53 = (u)zfputs;
- v54 = *(u*)(vc + 72);
+ v54 = *(u*)(vc + 72UL);
v55 = (u)" <= (s)";
v56 = ((u(*)())v53)(v54, v55);
+ v56;
v57 = (u)zircop;
v58 = vc;
v59 = vic;
v60 = vib;
- v61 = *(u*)(vop + 16);
- v62 = 2;
+ v61 = *(u*)(vop + 16UL);
+ v62 = 2UL;
v63 = ((u(*)())v57)(v58, v59, v60, v61, v62);
+ v63;
goto b1;
-b13: if (vkind != 24) goto b19;
+b13: if (vkind != 24UL) goto b19;
v64 = (u)zfputs;
- v65 = *(u*)(vc + 72);
+ v65 = *(u*)(vc + 72UL);
v66 = (u)"(s)";
v67 = ((u(*)())v64)(v65, v66);
+ v67;
v68 = (u)zircop;
v69 = vc;
v70 = vic;
v71 = vib;
- v72 = *(u*)(vop + 8);
- v73 = 2;
+ v72 = *(u*)(vop + 8UL);
+ v73 = 2UL;
v74 = ((u(*)())v68)(v69, v70, v71, v72, v73);
+ v74;
v75 = (u)zfputs;
- v76 = *(u*)(vc + 72);
+ v76 = *(u*)(vc + 72UL);
v77 = (u)" < (s)";
v78 = ((u(*)())v75)(v76, v77);
+ v78;
v79 = (u)zircop;
v80 = vc;
v81 = vic;
v82 = vib;
- v83 = *(u*)(vop + 16);
- v84 = 2;
+ v83 = *(u*)(vop + 16UL);
+ v84 = 2UL;
v85 = ((u(*)())v79)(v80, v81, v82, v83, v84);
+ v85;
goto b1;
-b19: if (vkind != 25) goto b25;
+b19: if (vkind != 25UL) goto b25;
v86 = (u)zfputs;
- v87 = *(u*)(vc + 72);
+ v87 = *(u*)(vc + 72UL);
v88 = (u)"(s)";
v89 = ((u(*)())v86)(v87, v88);
+ v89;
v90 = (u)zircop;
v91 = vc;
v92 = vic;
v93 = vib;
- v94 = *(u*)(vop + 8);
- v95 = 2;
+ v94 = *(u*)(vop + 8UL);
+ v95 = 2UL;
v96 = ((u(*)())v90)(v91, v92, v93, v94, v95);
+ v96;
v97 = (u)zfputs;
- v98 = *(u*)(vc + 72);
+ v98 = *(u*)(vc + 72UL);
v99 = (u)" >= (s)";
v100 = ((u(*)())v97)(v98, v99);
+ v100;
v101 = (u)zircop;
v102 = vc;
v103 = vic;
v104 = vib;
- v105 = *(u*)(vop + 16);
- v106 = 2;
+ v105 = *(u*)(vop + 16UL);
+ v106 = 2UL;
v107 = ((u(*)())v101)(v102, v103, v104, v105, v106);
+ v107;
goto b1;
-b25: if (vkind != 26) goto b31;
+b25: if (vkind != 26UL) goto b31;
v108 = (u)zfputs;
- v109 = *(u*)(vc + 72);
+ v109 = *(u*)(vc + 72UL);
v110 = (u)"(s)";
v111 = ((u(*)())v108)(v109, v110);
+ v111;
v112 = (u)zircop;
v113 = vc;
v114 = vic;
v115 = vib;
- v116 = *(u*)(vop + 8);
- v117 = 2;
+ v116 = *(u*)(vop + 8UL);
+ v117 = 2UL;
v118 = ((u(*)())v112)(v113, v114, v115, v116, v117);
+ v118;
v119 = (u)zfputs;
- v120 = *(u*)(vc + 72);
+ v120 = *(u*)(vc + 72UL);
v121 = (u)" > (s)";
v122 = ((u(*)())v119)(v120, v121);
+ v122;
v123 = (u)zircop;
v124 = vc;
v125 = vic;
v126 = vib;
- v127 = *(u*)(vop + 16);
- v128 = 2;
+ v127 = *(u*)(vop + 16UL);
+ v128 = 2UL;
v129 = ((u(*)())v123)(v124, v125, v126, v127, v128);
+ v129;
goto b1;
b31: v130 = (u)zfputs;
- v131 = *(u*)(vc + 72);
+ v131 = *(u*)(vc + 72UL);
v132 = (u)"!";
v133 = ((u(*)())v130)(v131, v132);
+ v133;
v134 = (u)zircop;
v135 = vc;
v136 = vic;
v137 = vib;
v138 = vop;
- v139 = 2;
+ v139 = 2UL;
v140 = ((u(*)())v134)(v135, v136, v137, v138, v139);
+ v140;
goto b1;
}
+u zircopyloc(u vdst, u vsrc) {
+ *(u*)(vdst + 64UL) = *(u*)(vsrc + 64UL);
+ *(u*)(vdst + 72UL) = *(u*)(vsrc + 72UL);
+ *(u*)(vdst + 80UL) = *(u*)(vsrc + 80UL);
+ return 0UL;
+}
u zircout(u vc) {
u vd = 0;
u v2 = 0;
@@ -18594,87 +20288,99 @@ u zircout(u vc) {
u v53 = 0;
u v54 = 0;
v2 = (u)zfputs;
- v3 = *(u*)(vc + 72);
+ v3 = *(u*)(vc + 72UL);
v4 = (u)"typedef unsigned char b;\012";
v5 = ((u(*)())v2)(v3, v4);
+ v5;
v6 = (u)zfputs;
- v7 = *(u*)(vc + 72);
+ v7 = *(u*)(vc + 72UL);
v8 = (u)"typedef unsigned long u;\012";
v9 = ((u(*)())v6)(v7, v8);
+ v9;
v10 = (u)zfputs;
- v11 = *(u*)(vc + 72);
+ v11 = *(u*)(vc + 72UL);
v12 = (u)"typedef long s;\012";
v13 = ((u(*)())v10)(v11, v12);
+ v13;
v14 = (u)zfirst_decl;
v15 = vc;
v16 = ((u(*)())v14)(v15);
vd = v16;
b5: if (!vd) goto b11;
- v17 = 0;
-b12: if (!v17) goto b7;
+ v17 = 0UL;
+b12: if (!v17) goto b9;
v27 = (u)zfputs;
- v28 = *(u*)(vc + 72);
+ v28 = *(u*)(vc + 72UL);
v29 = (u)"s syscall();\012";
v30 = ((u(*)())v27)(v28, v29);
+ v30;
v31 = (u)zfputs;
- v32 = *(u*)(vc + 72);
+ v32 = *(u*)(vc + 72UL);
v33 = (u)"int main(int argc, char**argv) { return z_start((u)argc, (u)argv, 0); }\012";
v34 = ((u(*)())v31)(v32, v33);
+ v34;
v35 = (u)zfputs;
- v36 = *(u*)(vc + 72);
+ v36 = *(u*)(vc + 72UL);
v37 = (u)"u zsyscall(u n, u a, u b, u c, u d, u e, u f) { return syscall(n, a, b, c, d, e, f); }\012";
v38 = ((u(*)())v35)(v36, v37);
+ v38;
v39 = (u)zfirst_decl;
v40 = vc;
v41 = ((u(*)())v39)(v40);
vd = v41;
b26: if (!vd) goto b32;
- v42 = 0;
-b33: if (!v42) goto b28;
+ v42 = 0UL;
+b33: if (!v42) goto b30;
v52 = (u)zfflush;
- v53 = *(u*)(vc + 72);
+ v53 = *(u*)(vc + 72UL);
v54 = ((u(*)())v52)(v53);
- return 0;
-b28: if (!*(u*)(vd + 96)) goto b38;
- if (!*(u*)(vd + 72)) goto b38;
- v43 = 1;
-b40: if (!v43) goto b34;
+ v54;
+ return 0UL;
+b30: if (!*(u*)(vd + 96UL)) goto b38;
+ if (!*(u*)(vd + 72UL)) goto b38;
+ v43 = 1UL;
+b40: if (!v43) goto b36;
v44 = (u)zircdefine;
v45 = vc;
v46 = vd;
v47 = ((u(*)())v44)(v45, v46);
+ v47;
b34: v48 = (u)znext_decl;
v49 = vc;
v50 = vd;
v51 = ((u(*)())v48)(v49, v50);
vd = v51;
goto b26;
-b38: v43 = 0;
+b36: goto b34;
+b38: v43 = 0UL;
goto b40;
-b32: v42 = 1;
+b32: v42 = 1UL;
goto b33;
-b7: if (!*(u*)(vd + 96)) goto b17;
- if (!*(u*)(vd + 72)) goto b17;
- v18 = 1;
-b19: if (!v18) goto b13;
+b9: if (!*(u*)(vd + 96UL)) goto b17;
+ if (!*(u*)(vd + 72UL)) goto b17;
+ v18 = 1UL;
+b19: if (!v18) goto b15;
v19 = (u)zircforward;
v20 = vc;
v21 = vd;
v22 = ((u(*)())v19)(v20, v21);
+ v22;
b13: v23 = (u)znext_decl;
v24 = vc;
v25 = vd;
v26 = ((u(*)())v23)(v24, v25);
vd = v26;
goto b5;
-b17: v18 = 0;
+b15: goto b13;
+b17: v18 = 0UL;
goto b19;
-b11: v17 = 1;
+b11: v17 = 1UL;
goto b12;
}
u zircretval(u vc, u vic, u vib) {
u vi = 0;
u vop = 0;
+ u vkind = 0;
u v6 = 0;
u v7 = 0;
u v8 = 0;
@@ -18686,24 +20392,26 @@ u zircretval(u vc, u vic, u vib) {
u v14 = 0;
u v15 = 0;
u v16 = 0;
- vi = 0;
-b1: if (vi != *(u*)(vib + 16)) goto b3;
-b2: return 0;
-b3: vop = *(u*)(*(u*)(vib + 8) + vi * 8);
- if (*(u*)vop != 7) goto b6;
+ vi = 0UL;
+b1: if (vi != *(u*)(vib + 16UL)) goto b5;
+b2: return 0UL;
+b5: vop = *(u*)(*(u*)(vib + 8UL) + vi * 8UL);
+ if (*(u*)(vop + 0UL) != 7UL) goto b8;
v6 = (u)zircop;
v7 = vc;
v8 = vic;
v9 = vib;
- v10 = *(u*)(vop + 8);
- v11 = 14;
+ v10 = *(u*)(vop + 8UL);
+ v11 = 14UL;
v12 = ((u(*)())v6)(v7, v8, v9, v10, v11);
+ v12;
v13 = (u)zfputs;
- v14 = *(u*)(vc + 72);
+ v14 = *(u*)(vc + 72UL);
v15 = (u)" = ";
v16 = ((u(*)())v13)(v14, v15);
+ v16;
goto b2;
-b6: vi = vi + 1;
+b8: vi = vi + 1UL;
goto b1;
}
u zircstr(u vc, u vs, u vn) {
@@ -18740,62 +20448,69 @@ u zircstr(u vc, u vs, u vn) {
u v33 = 0;
u v34 = 0;
u v35 = 0;
- vi = 0;
+ vi = 0UL;
v5 = (u)zfputs;
- v6 = *(u*)(vc + 72);
+ v6 = *(u*)(vc + 72UL);
v7 = (u)"\042";
v8 = ((u(*)())v5)(v6, v7);
-b2: if (vi != vn) goto b4;
+ v8;
+b2: if (vi != vn) goto b6;
v32 = (u)zfputs;
- v33 = *(u*)(vc + 72);
+ v33 = *(u*)(vc + 72UL);
v34 = (u)"\042";
v35 = ((u(*)())v32)(v33, v34);
- return 0;
-b4: vch = (u)*(b*)(vs + vi);
- if ((s)vch >= (s)32) goto b11;
- v9 = 1;
+ v35;
+ return 0UL;
+b6: vch = (u)*(b*)(vs + vi * 1UL);
+ if ((s)vch >= (s)32UL) goto b11;
+ v9 = 1UL;
b13: if (!v9) goto b9;
v12 = (u)zfputc;
- v13 = *(u*)(vc + 72);
- v14 = 92;
+ v13 = *(u*)(vc + 72UL);
+ v14 = 92UL;
v15 = ((u(*)())v12)(v13, v14);
+ v15;
v16 = (u)zfputc;
- v17 = *(u*)(vc + 72);
- v18 = 48 + (vch >> 6 & 7);
+ v17 = *(u*)(vc + 72UL);
+ v18 = 48UL + (vch >> 6UL & 7UL);
v19 = ((u(*)())v16)(v17, v18);
+ v19;
v20 = (u)zfputc;
- v21 = *(u*)(vc + 72);
- v22 = 48 + (vch >> 3 & 7);
+ v21 = *(u*)(vc + 72UL);
+ v22 = 48UL + (vch >> 3UL & 7UL);
v23 = ((u(*)())v20)(v21, v22);
+ v23;
v24 = (u)zfputc;
- v25 = *(u*)(vc + 72);
- v26 = 48 + (vch & 7);
+ v25 = *(u*)(vc + 72UL);
+ v26 = 48UL + (vch & 7UL);
v27 = ((u(*)())v24)(v25, v26);
-b7: vi = vi + 1;
+ v27;
+b7: vi = vi + 1UL;
goto b2;
b9: v28 = (u)zfputc;
- v29 = *(u*)(vc + 72);
+ v29 = *(u*)(vc + 72UL);
v30 = vch;
v31 = ((u(*)())v28)(v29, v30);
+ v31;
goto b7;
-b11: if ((s)vch <= (s)127) goto b16;
- v10 = 1;
+b11: if ((s)vch <= (s)127UL) goto b16;
+ v10 = 1UL;
b18: if (!v10) goto b14;
- v9 = 1;
+ v9 = 1UL;
goto b13;
-b14: v9 = 0;
+b14: v9 = 0UL;
goto b13;
-b16: if (vch != 92) goto b21;
- v11 = 1;
+b16: if (vch != 92UL) goto b21;
+ v11 = 1UL;
b23: if (!v11) goto b19;
- v10 = 1;
+ v10 = 1UL;
goto b18;
-b19: v10 = 0;
+b19: v10 = 0UL;
goto b18;
-b21: if (vch != 34) goto b24;
- v11 = 1;
+b21: if (vch != 34UL) goto b24;
+ v11 = 1UL;
goto b23;
-b24: v11 = 0;
+b24: v11 = 0UL;
goto b23;
}
u zircuse(u vc, u vic, u vib) {
@@ -18812,330 +20527,47 @@ u zircuse(u vc, u vic, u vib) {
u v13 = 0;
u v14 = 0;
u v15 = 0;
- u v16 = 0;
- u v17 = 0;
- u v18 = 0;
- u v19 = 0;
- u v20 = 0;
- u v21 = 0;
if (!vib) goto b5;
- v4 = 0;
-b6: if (!v4) goto b1;
- return 0;
-b1: if (!*(u*)(vib + 64)) goto b7;
- *(u*)(vib + 64) = 6;
- return 0;
-b7: *(u*)(vib + 64) = 2;
- vi = 0;
-b10: if (vi != *(u*)(vib + 16)) goto b12;
- if (!*(u*)(vib + 40)) goto b16;
+ v4 = 0UL;
+b6: if (!v4) goto b3;
+ return 0UL;
+b3: if (!*(u*)(vib + 80UL)) goto b9;
+ *(u*)(vib + 80UL) = 6UL;
+ return 0UL;
+b9: *(u*)(vib + 80UL) = 2UL;
+ if (!*(u*)(vib + 56UL)) goto b12;
+ v5 = (u)zircuse;
+ v6 = vc;
+ v7 = vic;
+ v8 = *(u*)(vib + 56UL);
+ v9 = ((u(*)())v5)(v6, v7, v8);
+ v9;
+b10: if (!*(u*)(vib + 64UL)) goto b18;
+ if (*(u*)(*(u*)(*(u*)(vib + 8UL) + (*(u*)(vib + 16UL) - 1UL) * 8UL) + 0UL) != 29UL) goto b18;
+ v10 = 1UL;
+b20: if (!v10) goto b16;
v11 = (u)zircuse;
v12 = vc;
v13 = vic;
- v14 = *(u*)(vib + 40);
+ v14 = *(u*)(vib + 64UL);
v15 = ((u(*)())v11)(v12, v13, v14);
-b16: if (!*(u*)(vib + 48)) goto b24;
- if (*(u*)*(u*)(*(u*)(vib + 8) + (*(u*)(vib + 16) - 1) * 8) != 29) goto b24;
- v16 = 1;
-b26: if (!v16) goto b20;
- v17 = (u)zircuse;
- v18 = vc;
- v19 = vic;
- v20 = *(u*)(vib + 48);
- v21 = ((u(*)())v17)(v18, v19, v20);
- *(u*)(*(u*)(vib + 48) + 64) = 6;
-b20: return 0;
-b24: v16 = 0;
- goto b26;
-b12: v5 = (u)zircuseop;
- v6 = vc;
- v7 = vic;
- v8 = vib;
- v9 = *(u*)(*(u*)(vib + 8) + vi * 8);
- v10 = ((u(*)())v5)(v6, v7, v8, v9);
- vi = vi + 1;
- goto b10;
-b5: v4 = 1;
+ v15;
+ *(u*)(*(u*)(vib + 64UL) + 80UL) = 6UL;
+b14: return 0UL;
+b16: goto b14;
+b18: v10 = 0UL;
+ goto b20;
+b12: goto b10;
+b5: v4 = 1UL;
goto b6;
}
-u zircuseop(u vc, u vic, u vib, u vop) {
+u zirexpr_fold(u vic, u vo) {
+ u va = 0;
+ u vb = 0;
+ u vc = 0;
+ u vn = 0;
u vkind = 0;
- u v5 = 0;
- u v6 = 0;
- u v7 = 0;
- u v8 = 0;
- u v9 = 0;
- u v10 = 0;
- u v11 = 0;
- u v12 = 0;
- u v13 = 0;
- u v14 = 0;
- u v15 = 0;
- u v16 = 0;
- u v17 = 0;
- u v18 = 0;
- u v19 = 0;
- u v20 = 0;
- u v21 = 0;
- u v22 = 0;
- u v23 = 0;
- u v24 = 0;
- u v25 = 0;
- u v26 = 0;
- u v27 = 0;
- u v28 = 0;
- u v29 = 0;
- u v30 = 0;
- u v31 = 0;
- u v32 = 0;
- u v33 = 0;
- u v34 = 0;
- u v35 = 0;
- u v36 = 0;
- u v37 = 0;
- u v38 = 0;
- u v39 = 0;
- u v40 = 0;
- u v41 = 0;
- u v42 = 0;
- u v43 = 0;
- u v44 = 0;
- u v45 = 0;
- u v46 = 0;
- u v47 = 0;
- u v48 = 0;
- u v49 = 0;
- u v50 = 0;
- u v51 = 0;
- u v52 = 0;
- vkind = *(u*)vop;
- if (vkind != 0) goto b5;
- v5 = 1;
-b7: if (!v5) goto b3;
- *(u*)(*(u*)(*(u*)(vic + 112) + *(u*)(vop + 24) * 8) + 48) = 1;
-b1: return 0;
-b3: if (vkind != 6) goto b12;
- v6 = 1;
-b14: if (!v6) goto b10;
- v22 = (u)zircuseop;
- v23 = vc;
- v24 = vic;
- v25 = vib;
- v26 = *(u*)(vop + 8);
- v27 = ((u(*)())v22)(v23, v24, v25, v26);
- v28 = (u)zircuseop;
- v29 = vc;
- v30 = vic;
- v31 = vib;
- v32 = *(u*)(vop + 16);
- v33 = ((u(*)())v28)(v29, v30, v31, v32);
- goto b1;
-b10: if (vkind != 9) goto b96;
- v34 = 1;
-b98: if (!v34) goto b94;
- v41 = (u)zircuseop;
- v42 = vc;
- v43 = vic;
- v44 = vib;
- v45 = *(u*)(vop + 8);
- v46 = ((u(*)())v41)(v42, v43, v44, v45);
- goto b1;
-b94: if (vkind != 2) goto b134;
- v47 = 1;
-b136: if (!v47) goto b132;
- goto b1;
-b132: v50 = (u)zdie;
- v51 = (u)"invalid op";
- v52 = ((u(*)())v50)(v51);
- goto b1;
-b134: if (vkind != 3) goto b139;
- v48 = 1;
-b141: if (!v48) goto b137;
- v47 = 1;
- goto b136;
-b137: v47 = 0;
- goto b136;
-b139: if (vkind != 4) goto b144;
- v49 = 1;
-b146: if (!v49) goto b142;
- v48 = 1;
- goto b141;
-b142: v48 = 0;
- goto b141;
-b144: if (vkind != 28) goto b147;
- v49 = 1;
- goto b146;
-b147: v49 = 0;
- goto b146;
-b96: if (vkind != 10) goto b101;
- v35 = 1;
-b103: if (!v35) goto b99;
- v34 = 1;
- goto b98;
-b99: v34 = 0;
- goto b98;
-b101: if (vkind != 5) goto b106;
- v36 = 1;
-b108: if (!v36) goto b104;
- v35 = 1;
- goto b103;
-b104: v35 = 0;
- goto b103;
-b106: if (vkind != 7) goto b111;
- v37 = 1;
-b113: if (!v37) goto b109;
- v36 = 1;
- goto b108;
-b109: v36 = 0;
- goto b108;
-b111: if (vkind != 8) goto b116;
- v38 = 1;
-b118: if (!v38) goto b114;
- v37 = 1;
- goto b113;
-b114: v37 = 0;
- goto b113;
-b116: if (vkind != 27) goto b121;
- v39 = 1;
-b123: if (!v39) goto b119;
- v38 = 1;
- goto b118;
-b119: v38 = 0;
- goto b118;
-b121: if (vkind != 29) goto b126;
- v40 = 1;
-b128: if (!v40) goto b124;
- v39 = 1;
- goto b123;
-b124: v39 = 0;
- goto b123;
-b126: if (vkind != 30) goto b129;
- v40 = 1;
- goto b128;
-b129: v40 = 0;
- goto b128;
-b12: if (vkind != 11) goto b17;
- v7 = 1;
-b19: if (!v7) goto b15;
- v6 = 1;
- goto b14;
-b15: v6 = 0;
- goto b14;
-b17: if (vkind != 12) goto b22;
- v8 = 1;
-b24: if (!v8) goto b20;
- v7 = 1;
- goto b19;
-b20: v7 = 0;
- goto b19;
-b22: if (vkind != 13) goto b27;
- v9 = 1;
-b29: if (!v9) goto b25;
- v8 = 1;
- goto b24;
-b25: v8 = 0;
- goto b24;
-b27: if (vkind != 14) goto b32;
- v10 = 1;
-b34: if (!v10) goto b30;
- v9 = 1;
- goto b29;
-b30: v9 = 0;
- goto b29;
-b32: if (vkind != 15) goto b37;
- v11 = 1;
-b39: if (!v11) goto b35;
- v10 = 1;
- goto b34;
-b35: v10 = 0;
- goto b34;
-b37: if (vkind != 16) goto b42;
- v12 = 1;
-b44: if (!v12) goto b40;
- v11 = 1;
- goto b39;
-b40: v11 = 0;
- goto b39;
-b42: if (vkind != 17) goto b47;
- v13 = 1;
-b49: if (!v13) goto b45;
- v12 = 1;
- goto b44;
-b45: v12 = 0;
- goto b44;
-b47: if (vkind != 18) goto b52;
- v14 = 1;
-b54: if (!v14) goto b50;
- v13 = 1;
- goto b49;
-b50: v13 = 0;
- goto b49;
-b52: if (vkind != 19) goto b57;
- v15 = 1;
-b59: if (!v15) goto b55;
- v14 = 1;
- goto b54;
-b55: v14 = 0;
- goto b54;
-b57: if (vkind != 20) goto b62;
- v16 = 1;
-b64: if (!v16) goto b60;
- v15 = 1;
- goto b59;
-b60: v15 = 0;
- goto b59;
-b62: if (vkind != 21) goto b67;
- v17 = 1;
-b69: if (!v17) goto b65;
- v16 = 1;
- goto b64;
-b65: v16 = 0;
- goto b64;
-b67: if (vkind != 22) goto b72;
- v18 = 1;
-b74: if (!v18) goto b70;
- v17 = 1;
- goto b69;
-b70: v17 = 0;
- goto b69;
-b72: if (vkind != 23) goto b77;
- v19 = 1;
-b79: if (!v19) goto b75;
- v18 = 1;
- goto b74;
-b75: v18 = 0;
- goto b74;
-b77: if (vkind != 24) goto b82;
- v20 = 1;
-b84: if (!v20) goto b80;
- v19 = 1;
- goto b79;
-b80: v19 = 0;
- goto b79;
-b82: if (vkind != 25) goto b87;
- v21 = 1;
-b89: if (!v21) goto b85;
- v20 = 1;
- goto b84;
-b85: v20 = 0;
- goto b84;
-b87: if (vkind != 26) goto b90;
- v21 = 1;
- goto b89;
-b90: v21 = 0;
- goto b89;
-b5: if (vkind != 1) goto b8;
- v5 = 1;
- goto b7;
-b8: v5 = 0;
- goto b7;
-}
-u zirexpr_fold(u vic, u vo) {
- u va = 0;
- u vb = 0;
- u vn = 0;
- u vkind = 0;
- u vret = 0;
+ u vret = 0;
u v8 = 0;
u v9 = 0;
u v10 = 0;
@@ -19304,387 +20736,399 @@ u zirexpr_fold(u vic, u vo) {
u v173 = 0;
u v174 = 0;
u v175 = 0;
- if (!*(u*)(vo + 8)) goto b4;
+ if (!*(u*)(vo + 8UL)) goto b4;
+ va = *(u*)(vo + 8UL);
v8 = (u)zirexpr_fold;
v9 = vic;
- v10 = *(u*)(vo + 8);
+ v10 = *(u*)(vo + 8UL);
v11 = ((u(*)())v8)(v9, v10);
va = v11;
- if (!*(u*)(vo + 16)) goto b6;
+ if (!*(u*)(vo + 16UL)) goto b8;
+ vb = *(u*)(vo + 16UL);
v12 = (u)zirexpr_fold;
v13 = vic;
- v14 = *(u*)(vo + 16);
+ v14 = *(u*)(vo + 16UL);
v15 = ((u(*)())v12)(v13, v14);
vb = v15;
-b6: vkind = *(u*)vo;
- if (vkind != 5) goto b14;
- if (*(u*)va != 1) goto b14;
- v16 = 1;
-b16: if (!v16) goto b10;
+b6: vkind = *(u*)(vo + 0UL);
+ if (vkind != 5UL) goto b14;
+ if (*(u*)(va + 0UL) != 1UL) goto b14;
+ v16 = 1UL;
+b16: if (!v16) goto b12;
v17 = (u)zmkirop;
v18 = vic;
- v19 = 0;
- v20 = 0;
- v21 = 0;
+ v19 = 0UL;
+ v20 = 0UL;
+ v21 = 0UL;
v22 = ((u(*)())v17)(v18, v19, v20, v21);
vret = v22;
- *(u*)(vret + 24) = *(u*)(va + 24);
- *(u*)(vret + 64) = *(u*)(vo + 64);
- *(u*)(vret + 72) = *(u*)(vo + 72);
- *(u*)(vret + 80) = *(u*)(vo + 80);
+ *(u*)(vret + 24UL) = *(u*)(va + 24UL);
+ *(u*)(vret + 64UL) = *(u*)(vo + 64UL);
+ *(u*)(vret + 72UL) = *(u*)(vo + 72UL);
+ *(u*)(vret + 80UL) = *(u*)(vo + 80UL);
return vret;
-b10: if (*(u*)va == 3) goto b18;
+b12: if (*(u*)(va + 0UL) == 3UL) goto b20;
b1: if (!va) goto b92;
- if (*(u*)va != 3) goto b92;
- v115 = 1;
-b94: if (!v115) goto b88;
- vn = *(u*)(va + 24);
- if (vn != 0) goto b97;
- if (vkind != 11) goto b102;
- v116 = 1;
-b104: if (!v116) goto b98;
+ if (*(u*)(va + 0UL) != 3UL) goto b92;
+ v115 = 1UL;
+b94: if (!v115) goto b90;
+ vn = *(u*)(va + 24UL);
+ if (vn != 0UL) goto b97;
+ if (vkind != 11UL) goto b102;
+ v116 = 1UL;
+b104: if (!v116) goto b100;
return vb;
-b98: if (vkind != 20) goto b111;
+b100: if (vkind != 20UL) goto b113;
v118 = (u)zmkirop;
v119 = vic;
- v120 = 9;
+ v120 = 9UL;
v121 = vb;
- v122 = 0;
+ v122 = 0UL;
v123 = ((u(*)())v118)(v119, v120, v121, v122);
vret = v123;
- *(u*)(vret + 64) = *(u*)(vo + 64);
- *(u*)(vret + 72) = *(u*)(vo + 72);
- *(u*)(vret + 80) = *(u*)(vo + 80);
+ *(u*)(vret + 64UL) = *(u*)(vo + 64UL);
+ *(u*)(vret + 72UL) = *(u*)(vo + 72UL);
+ *(u*)(vret + 80UL) = *(u*)(vo + 80UL);
return vret;
-b111: if (vkind != 12) goto b119;
- v124 = 1;
-b121: if (!v124) goto b88;
+b113: if (vkind != 12UL) goto b119;
+ v124 = 1UL;
+b121: if (!v124) goto b117;
v127 = (u)zmkirfold;
v128 = vic;
v129 = vo;
- v130 = 0;
+ v130 = 0UL;
v131 = ((u(*)())v127)(v128, v129, v130);
return v131;
-b88: if (!vb) goto b156;
- if (*(u*)vb != 3) goto b156;
- v144 = 1;
-b158: if (!v144) goto b152;
- vn = *(u*)(vb + 24);
- if (vn != 0) goto b161;
- if (vkind != 11) goto b166;
- v145 = 1;
-b168: if (!v145) goto b162;
+b117:b95:b88: if (!vb) goto b156;
+ if (*(u*)(vb + 0UL) != 3UL) goto b156;
+ v144 = 1UL;
+b158: if (!v144) goto b154;
+ vn = *(u*)(vb + 24UL);
+ if (vn != 0UL) goto b161;
+ if (vkind != 11UL) goto b166;
+ v145 = 1UL;
+b168: if (!v145) goto b164;
return va;
-b162: if (vkind != 12) goto b194;
- v150 = 1;
-b196: if (!v150) goto b152;
+b164: if (vkind != 12UL) goto b194;
+ v150 = 1UL;
+b196: if (!v150) goto b192;
v151 = (u)zmkirfold;
v152 = vic;
v153 = vo;
- v154 = 0;
+ v154 = 0UL;
v155 = ((u(*)())v151)(v152, v153, v154);
return v155;
-b152: if (*(u*)(vo + 8) != va) goto b226;
- if (*(u*)(vo + 16) != vb) goto b226;
- v169 = 1;
-b228: if (!v169) goto b222;
+b192:b159:b152: if (*(u*)(vo + 8UL) != va) goto b226;
+ if (*(u*)(vo + 16UL) != vb) goto b226;
+ v169 = 1UL;
+b228: if (!v169) goto b224;
return vo;
-b222: v170 = (u)zmkirop;
+b224: v170 = (u)zmkirop;
v171 = vic;
v172 = vkind;
v173 = va;
v174 = vb;
v175 = ((u(*)())v170)(v171, v172, v173, v174);
vret = v175;
- *(u*)(vret + 64) = *(u*)(vo + 64);
- *(u*)(vret + 72) = *(u*)(vo + 72);
- *(u*)(vret + 80) = *(u*)(vo + 80);
- *(u*)(vret + 48) = *(u*)(vo + 48);
- *(u*)(vret + 24) = *(u*)(vo + 24);
+ *(u*)(vret + 64UL) = *(u*)(vo + 64UL);
+ *(u*)(vret + 72UL) = *(u*)(vo + 72UL);
+ *(u*)(vret + 80UL) = *(u*)(vo + 80UL);
+ *(u*)(vret + 48UL) = *(u*)(vo + 48UL);
+ *(u*)(vret + 24UL) = *(u*)(vo + 24UL);
return vret;
-b226: v169 = 0;
+b226: v169 = 0UL;
goto b228;
-b194: if (vkind != 19) goto b197;
- v150 = 1;
+b194: if (vkind != 19UL) goto b197;
+ v150 = 1UL;
goto b196;
-b197: v150 = 0;
+b197: v150 = 0UL;
goto b196;
-b166: if (vkind != 13) goto b171;
- v146 = 1;
+b166: if (vkind != 13UL) goto b171;
+ v146 = 1UL;
b173: if (!v146) goto b169;
- v145 = 1;
+ v145 = 1UL;
goto b168;
-b169: v145 = 0;
+b169: v145 = 0UL;
goto b168;
-b171: if (vkind != 14) goto b176;
- v147 = 1;
+b171: if (vkind != 14UL) goto b176;
+ v147 = 1UL;
b178: if (!v147) goto b174;
- v146 = 1;
+ v146 = 1UL;
goto b173;
-b174: v146 = 0;
+b174: v146 = 0UL;
goto b173;
-b176: if (vkind != 20) goto b181;
- v148 = 1;
+b176: if (vkind != 20UL) goto b181;
+ v148 = 1UL;
b183: if (!v148) goto b179;
- v147 = 1;
+ v147 = 1UL;
goto b178;
-b179: v147 = 0;
+b179: v147 = 0UL;
goto b178;
-b181: if (vkind != 17) goto b186;
- v149 = 1;
+b181: if (vkind != 17UL) goto b186;
+ v149 = 1UL;
b188: if (!v149) goto b184;
- v148 = 1;
+ v148 = 1UL;
goto b183;
-b184: v148 = 0;
+b184: v148 = 0UL;
goto b183;
-b186: if (vkind != 18) goto b189;
- v149 = 1;
+b186: if (vkind != 18UL) goto b189;
+ v149 = 1UL;
goto b188;
-b189: v149 = 0;
+b189: v149 = 0UL;
goto b188;
-b161: if (vn != 1) goto b200;
- if (vkind != 15) goto b205;
- v156 = 1;
-b207: if (!v156) goto b152;
+b161: if (vn != 1UL) goto b200;
+ if (vkind != 15UL) goto b205;
+ v156 = 1UL;
+b207: if (!v156) goto b203;
return va;
-b205: if (vkind != 19) goto b208;
- v156 = 1;
+b203: goto b159;
+b205: if (vkind != 19UL) goto b208;
+ v156 = 1UL;
goto b207;
-b208: v156 = 0;
+b208: v156 = 0UL;
goto b207;
-b200: if (vn != -1UL) goto b152;
- if (vkind != 19) goto b211;
+b200: if (vn != -1UL) goto b210;
+ if (vkind != 19UL) goto b213;
v157 = (u)zmkirop;
v158 = vic;
- v159 = 9;
+ v159 = 9UL;
v160 = va;
- v161 = 0;
+ v161 = 0UL;
v162 = ((u(*)())v157)(v158, v159, v160, v161);
vret = v162;
- *(u*)(vret + 64) = *(u*)(vo + 64);
- *(u*)(vret + 72) = *(u*)(vo + 72);
- *(u*)(vret + 80) = *(u*)(vo + 80);
+ *(u*)(vret + 64UL) = *(u*)(vo + 64UL);
+ *(u*)(vret + 72UL) = *(u*)(vo + 72UL);
+ *(u*)(vret + 80UL) = *(u*)(vo + 80UL);
return vret;
-b211: if (vkind != 14) goto b215;
+b213: if (vkind != 14UL) goto b217;
v163 = (u)zmkirop;
v164 = vic;
- v165 = 10;
+ v165 = 10UL;
v166 = va;
- v167 = 0;
+ v167 = 0UL;
v168 = ((u(*)())v163)(v164, v165, v166, v167);
vret = v168;
- *(u*)(vret + 64) = *(u*)(vo + 64);
- *(u*)(vret + 72) = *(u*)(vo + 72);
- *(u*)(vret + 80) = *(u*)(vo + 80);
+ *(u*)(vret + 64UL) = *(u*)(vo + 64UL);
+ *(u*)(vret + 72UL) = *(u*)(vo + 72UL);
+ *(u*)(vret + 80UL) = *(u*)(vo + 80UL);
return vret;
-b215: if (vkind != 12) goto b152;
+b217: if (vkind != 12UL) goto b221;
return va;
-b156: v144 = 0;
+b221: goto b159;
+b210: goto b159;
+b154: goto b152;
+b156: v144 = 0UL;
goto b158;
-b119: if (vkind != 19) goto b124;
- v125 = 1;
+b119: if (vkind != 19UL) goto b124;
+ v125 = 1UL;
b126: if (!v125) goto b122;
- v124 = 1;
+ v124 = 1UL;
goto b121;
-b122: v124 = 0;
+b122: v124 = 0UL;
goto b121;
-b124: if (vkind != 17) goto b129;
- v126 = 1;
+b124: if (vkind != 17UL) goto b129;
+ v126 = 1UL;
b131: if (!v126) goto b127;
- v125 = 1;
+ v125 = 1UL;
goto b126;
-b127: v125 = 0;
+b127: v125 = 0UL;
goto b126;
-b129: if (vkind != 18) goto b132;
- v126 = 1;
+b129: if (vkind != 18UL) goto b132;
+ v126 = 1UL;
goto b131;
-b132: v126 = 0;
+b132: v126 = 0UL;
goto b131;
-b102: if (vkind != 13) goto b107;
- v117 = 1;
+b102: if (vkind != 13UL) goto b107;
+ v117 = 1UL;
b109: if (!v117) goto b105;
- v116 = 1;
+ v116 = 1UL;
goto b104;
-b105: v116 = 0;
+b105: v116 = 0UL;
goto b104;
-b107: if (vkind != 14) goto b110;
- v117 = 1;
+b107: if (vkind != 14UL) goto b110;
+ v117 = 1UL;
goto b109;
-b110: v117 = 0;
+b110: v117 = 0UL;
goto b109;
-b97: if (vn != 1) goto b135;
- if (vkind != 19) goto b88;
+b97: if (vn != 1UL) goto b135;
+ if (vkind != 19UL) goto b138;
return vb;
-b135: if (vn != -1UL) goto b88;
- if (vkind != 19) goto b141;
+b138: goto b95;
+b135: if (vn != -1UL) goto b140;
+ if (vkind != 19UL) goto b143;
v132 = (u)zmkirop;
v133 = vic;
- v134 = 9;
+ v134 = 9UL;
v135 = vb;
- v136 = 0;
+ v136 = 0UL;
v137 = ((u(*)())v132)(v133, v134, v135, v136);
vret = v137;
- *(u*)(vret + 64) = *(u*)(vo + 64);
- *(u*)(vret + 72) = *(u*)(vo + 72);
- *(u*)(vret + 80) = *(u*)(vo + 80);
+ *(u*)(vret + 64UL) = *(u*)(vo + 64UL);
+ *(u*)(vret + 72UL) = *(u*)(vo + 72UL);
+ *(u*)(vret + 80UL) = *(u*)(vo + 80UL);
return vret;
-b141: if (vkind != 14) goto b145;
+b143: if (vkind != 14UL) goto b147;
v138 = (u)zmkirop;
v139 = vic;
- v140 = 10;
+ v140 = 10UL;
v141 = vb;
- v142 = 0;
+ v142 = 0UL;
v143 = ((u(*)())v138)(v139, v140, v141, v142);
vret = v143;
- *(u*)(vret + 64) = *(u*)(vo + 64);
- *(u*)(vret + 72) = *(u*)(vo + 72);
- *(u*)(vret + 80) = *(u*)(vo + 80);
+ *(u*)(vret + 64UL) = *(u*)(vo + 64UL);
+ *(u*)(vret + 72UL) = *(u*)(vo + 72UL);
+ *(u*)(vret + 80UL) = *(u*)(vo + 80UL);
return vret;
-b145: if (vkind != 12) goto b88;
+b147: if (vkind != 12UL) goto b151;
return vb;
-b92: v115 = 0;
+b151: goto b95;
+b140: goto b95;
+b90: goto b88;
+b92: v115 = 0UL;
goto b94;
-b18: if (vkind != 9) goto b23;
+b20: if (vkind != 9UL) goto b23;
v23 = (u)zmkirfold;
v24 = vic;
v25 = vo;
- v26 = -*(u*)(va + 24);
+ v26 = -*(u*)(va + 24UL);
v27 = ((u(*)())v23)(v24, v25, v26);
return v27;
-b23: if (vkind != 10) goto b21;
+b23: if (vkind != 10UL) goto b26;
v28 = (u)zmkirfold;
v29 = vic;
v30 = vo;
- v31 = ~*(u*)(va + 24);
+ v31 = ~*(u*)(va + 24UL);
v32 = ((u(*)())v28)(v29, v30, v31);
return v32;
-b21: if (!vb) goto b36;
- v34 = 0;
+b26: if (!vb) goto b36;
+ v34 = 0UL;
b37: if (!v34) goto b32;
- v33 = 1;
-b34: if (!v33) goto b28;
+ v33 = 1UL;
+b34: if (!v33) goto b30;
goto b1;
-b28: if (vkind != 11) goto b41;
+b30: if (vkind != 11UL) goto b41;
v35 = (u)zmkirfold;
v36 = vic;
v37 = vo;
- v38 = *(u*)(va + 24) + *(u*)(vb + 24);
+ v38 = *(u*)(va + 24UL) + *(u*)(vb + 24UL);
v39 = ((u(*)())v35)(v36, v37, v38);
return v39;
-b41: if (vkind != 12) goto b44;
+b41: if (vkind != 12UL) goto b44;
v40 = (u)zmkirfold;
v41 = vic;
v42 = vo;
- v43 = *(u*)(va + 24) & *(u*)(vb + 24);
+ v43 = *(u*)(va + 24UL) & *(u*)(vb + 24UL);
v44 = ((u(*)())v40)(v41, v42, v43);
return v44;
-b44: if (vkind != 13) goto b47;
+b44: if (vkind != 13UL) goto b47;
v45 = (u)zmkirfold;
v46 = vic;
v47 = vo;
- v48 = *(u*)(va + 24) | *(u*)(vb + 24);
+ v48 = *(u*)(va + 24UL) | *(u*)(vb + 24UL);
v49 = ((u(*)())v45)(v46, v47, v48);
return v49;
-b47: if (vkind != 14) goto b50;
+b47: if (vkind != 14UL) goto b50;
v50 = (u)zmkirfold;
v51 = vic;
v52 = vo;
- v53 = *(u*)(va + 24) ^ *(u*)(vb + 24);
+ v53 = *(u*)(va + 24UL) ^ *(u*)(vb + 24UL);
v54 = ((u(*)())v50)(v51, v52, v53);
return v54;
-b50: if (vkind != 15) goto b53;
+b50: if (vkind != 15UL) goto b53;
v55 = (u)zmkirfold;
v56 = vic;
v57 = vo;
- v58 = (u)((s)*(u*)(va + 24) / (s)*(u*)(vb + 24));
+ v58 = (u)((s)*(u*)(va + 24UL) / (s)*(u*)(vb + 24UL));
v59 = ((u(*)())v55)(v56, v57, v58);
return v59;
-b53: if (vkind != 16) goto b56;
+b53: if (vkind != 16UL) goto b56;
v60 = (u)zmkirfold;
v61 = vic;
v62 = vo;
- v63 = (u)((s)*(u*)(va + 24) % (s)*(u*)(vb + 24));
+ v63 = (u)((s)*(u*)(va + 24UL) % (s)*(u*)(vb + 24UL));
v64 = ((u(*)())v60)(v61, v62, v63);
return v64;
-b56: if (vkind != 17) goto b59;
+b56: if (vkind != 17UL) goto b59;
v65 = (u)zmkirfold;
v66 = vic;
v67 = vo;
- v68 = *(u*)(va + 24) << *(u*)(vb + 24);
+ v68 = *(u*)(va + 24UL) << *(u*)(vb + 24UL);
v69 = ((u(*)())v65)(v66, v67, v68);
return v69;
-b59: if (vkind != 18) goto b62;
+b59: if (vkind != 18UL) goto b62;
v70 = (u)zmkirfold;
v71 = vic;
v72 = vo;
- v73 = *(u*)(va + 24) >> *(u*)(vb + 24);
+ v73 = *(u*)(va + 24UL) >> *(u*)(vb + 24UL);
v74 = ((u(*)())v70)(v71, v72, v73);
return v74;
-b62: if (vkind != 19) goto b65;
+b62: if (vkind != 19UL) goto b65;
v75 = (u)zmkirfold;
v76 = vic;
v77 = vo;
- v78 = *(u*)(va + 24) * *(u*)(vb + 24);
+ v78 = *(u*)(va + 24UL) * *(u*)(vb + 24UL);
v79 = ((u(*)())v75)(v76, v77, v78);
return v79;
-b65: if (vkind != 20) goto b68;
+b65: if (vkind != 20UL) goto b68;
v80 = (u)zmkirfold;
v81 = vic;
v82 = vo;
- v83 = *(u*)(va + 24) - *(u*)(vb + 24);
+ v83 = *(u*)(va + 24UL) - *(u*)(vb + 24UL);
v84 = ((u(*)())v80)(v81, v82, v83);
return v84;
-b68: if (vkind != 21) goto b71;
+b68: if (vkind != 21UL) goto b71;
v85 = (u)zmkirfold;
v86 = vic;
v87 = vo;
- v88 = (u)(*(u*)(va + 24) == *(u*)(vb + 24));
+ v88 = (u)(*(u*)(va + 24UL) == *(u*)(vb + 24UL));
v89 = ((u(*)())v85)(v86, v87, v88);
return v89;
-b71: if (vkind != 22) goto b74;
+b71: if (vkind != 22UL) goto b74;
v90 = (u)zmkirfold;
v91 = vic;
v92 = vo;
- v93 = (u)(*(u*)(va + 24) != *(u*)(vb + 24));
+ v93 = (u)(*(u*)(va + 24UL) != *(u*)(vb + 24UL));
v94 = ((u(*)())v90)(v91, v92, v93);
return v94;
-b74: if (vkind != 23) goto b77;
+b74: if (vkind != 23UL) goto b77;
v95 = (u)zmkirfold;
v96 = vic;
v97 = vo;
- v98 = (u)((s)*(u*)(va + 24) > (s)*(u*)(vb + 24));
+ v98 = (u)((s)*(u*)(va + 24UL) > (s)*(u*)(vb + 24UL));
v99 = ((u(*)())v95)(v96, v97, v98);
return v99;
-b77: if (vkind != 24) goto b80;
+b77: if (vkind != 24UL) goto b80;
v100 = (u)zmkirfold;
v101 = vic;
v102 = vo;
- v103 = (u)((s)*(u*)(va + 24) >= (s)*(u*)(vb + 24));
+ v103 = (u)((s)*(u*)(va + 24UL) >= (s)*(u*)(vb + 24UL));
v104 = ((u(*)())v100)(v101, v102, v103);
return v104;
-b80: if (vkind != 25) goto b83;
+b80: if (vkind != 25UL) goto b83;
v105 = (u)zmkirfold;
v106 = vic;
v107 = vo;
- v108 = (u)((s)*(u*)(va + 24) < (s)*(u*)(vb + 24));
+ v108 = (u)((s)*(u*)(va + 24UL) < (s)*(u*)(vb + 24UL));
v109 = ((u(*)())v105)(v106, v107, v108);
return v109;
-b83: if (vkind != 26) goto b1;
+b83: if (vkind != 26UL) goto b86;
v110 = (u)zmkirfold;
v111 = vic;
v112 = vo;
- v113 = (u)((s)*(u*)(va + 24) <= (s)*(u*)(vb + 24));
+ v113 = (u)((s)*(u*)(va + 24UL) <= (s)*(u*)(vb + 24UL));
v114 = ((u(*)())v110)(v111, v112, v113);
return v114;
-b32: if (*(u*)vb == 3) goto b38;
- v33 = 1;
+b86: goto b1;
+b32: if (*(u*)(vb + 0UL) == 3UL) goto b38;
+ v33 = 1UL;
goto b34;
-b38: v33 = 0;
+b38: v33 = 0UL;
goto b34;
-b36: v34 = 1;
+b36: v34 = 1UL;
goto b37;
-b14: v16 = 0;
+b14: v16 = 0UL;
goto b16;
+b8: goto b6;
b4: return vo;
}
u zirfind_block(u vic, u vname, u vmake) {
@@ -19712,52 +21156,56 @@ u zirfind_block(u vic, u vname, u vmake) {
u v24 = 0;
u v25 = 0;
u v26 = 0;
- vlink = vic + 96;
+ vlink = vic + 112UL;
b1: vl = *(u*)vlink;
if (!vl) goto b7;
- v6 = 0;
-b8: if (!v6) goto b3;
+ v6 = 0UL;
+b8: if (!v6) goto b5;
if (!vmake) goto b23;
- v15 = 0;
-b24: if (!v15) goto b19;
+ v15 = 0UL;
+b24: if (!v15) goto b21;
v16 = (u)zcdie;
- v17 = *(u*)vic;
+ v17 = *(u*)(vic + 0UL);
v18 = (u)"no such label";
v19 = ((u(*)())v16)(v17, v18);
+ v19;
b19: v20 = (u)zalloc;
- v21 = *(u*)(vic + 16);
- v22 = 32;
+ v21 = *(u*)(vic + 16UL);
+ v22 = 32UL;
v23 = ((u(*)())v20)(v21, v22);
vl = v23;
- *(u*)vl = vname;
- *(u*)(vl + 8) = 0;
- *(u*)(vl + 16) = 0;
+ *(u*)(vl + 0UL) = vname;
+ *(u*)(vl + 8UL) = 0UL;
+ *(u*)(vl + 16UL) = 0UL;
v24 = (u)zmkirblock;
v25 = vic;
v26 = ((u(*)())v24)(v25);
- *(u*)(vl + 24) = v26;
+ *(u*)(vl + 24UL) = v26;
*(u*)vlink = vl;
- return *(u*)(vl + 24);
-b23: v15 = 1;
+ return *(u*)(vl + 24UL);
+b21: goto b19;
+b23: v15 = 1UL;
goto b24;
-b3: v7 = (u)zstrcmp;
+b5: v7 = (u)zstrcmp;
v8 = vname;
- v9 = *(u*)vl;
+ v9 = *(u*)(vl + 0UL);
v10 = ((u(*)())v7)(v8, v9);
vdir = v10;
- if (vdir != 0) goto b12;
- if (!vmake) goto b13;
+ if (vdir != 0UL) goto b12;
+ if (!vmake) goto b15;
v11 = (u)zcdie;
- v12 = *(u*)vic;
+ v12 = *(u*)(vic + 0UL);
v13 = (u)"duplicate label";
v14 = ((u(*)())v11)(v12, v13);
-b13: return *(u*)(vl + 24);
-b12: if ((s)vdir >= (s)0) goto b18;
- vlink = vl + 8;
- goto b1;
-b18: vlink = vl + 16;
- goto b1;
-b7: v6 = 1;
+ v14;
+b13: return *(u*)(vl + 24UL);
+b15: goto b13;
+b12: if ((s)vdir >= (s)0UL) goto b18;
+ vlink = vl + 8UL;
+b10: goto b1;
+b18: vlink = vl + 16UL;
+ goto b10;
+b7: v6 = 1UL;
goto b8;
}
u zirfind_var(u vic, u vname) {
@@ -19769,42 +21217,191 @@ u zirfind_var(u vic, u vname) {
u v7 = 0;
u v8 = 0;
u v9 = 0;
- vlink = vic + 104;
+ vlink = vic + 120UL;
b1: vv = *(u*)vlink;
if (!vv) goto b7;
- v5 = 0;
-b8: if (!v5) goto b3;
+ v5 = 0UL;
+b8: if (!v5) goto b5;
return vlink;
-b3: v6 = (u)zstrcmp;
+b5: v6 = (u)zstrcmp;
v7 = vname;
- v8 = *(u*)vv;
+ v8 = *(u*)(vv + 0UL);
v9 = ((u(*)())v6)(v7, v8);
vdir = v9;
- if (vdir != 0) goto b12;
+ if (vdir != 0UL) goto b12;
return vlink;
-b12: if ((s)vdir >= (s)0) goto b14;
- vlink = vv + 8;
- goto b1;
-b14: vlink = vv + 16;
- goto b1;
-b7: v5 = 1;
+b12: if ((s)vdir >= (s)0UL) goto b14;
+ vlink = vv + 8UL;
+b10: goto b1;
+b14: vlink = vv + 16UL;
+ goto b10;
+b7: v5 = 1UL;
goto b8;
}
+u zirfunc_backlink(u vic) {
+ u vib = 0;
+ u vi = 0;
+ u vj = 0;
+ u v4 = 0;
+ u v5 = 0;
+ u v6 = 0;
+ u v7 = 0;
+ u v8 = 0;
+ u v9 = 0;
+ u v10 = 0;
+ u v11 = 0;
+ u v12 = 0;
+ u v13 = 0;
+ u v14 = 0;
+ u v15 = 0;
+ u v16 = 0;
+ u v17 = 0;
+ u v18 = 0;
+ u v19 = 0;
+ u v20 = 0;
+ u v21 = 0;
+ u v22 = 0;
+ u v23 = 0;
+ u v24 = 0;
+ u v25 = 0;
+ u v26 = 0;
+ u v27 = 0;
+ u v28 = 0;
+ u v29 = 0;
+ u v30 = 0;
+ u v31 = 0;
+ u v32 = 0;
+ if (!*(u*)(vic + 88UL)) goto b3;
+ v4 = (u)zfree;
+ v5 = *(u*)(vic + 16UL);
+ v6 = *(u*)(vic + 88UL);
+ v7 = ((u(*)())v4)(v5, v6);
+ v7;
+b1: *(u*)(vic + 88UL) = 0UL;
+ *(u*)(vic + 96UL) = 0UL;
+ vi = 0UL;
+b5: if (vi != *(u*)(vic + 72UL)) goto b9;
+ v12 = (u)zirblock_backlink;
+ v13 = vic;
+ v14 = *(u*)(*(u*)(vic + 64UL) + 0UL * 8UL);
+ v15 = 0UL;
+ v16 = ((u(*)())v12)(v13, v14, v15);
+ v16;
+ v17 = (u)zalloc;
+ v18 = *(u*)(vic + 16UL);
+ v19 = *(u*)(vic + 96UL) * 8UL;
+ v20 = ((u(*)())v17)(v18, v19);
+ *(u*)(vic + 88UL) = v20;
+ vi = 0UL;
+ vj = 0UL;
+b16: if (vi != *(u*)(vic + 72UL)) goto b20;
+ v25 = (u)zirblock_backlink;
+ v26 = vic;
+ v27 = *(u*)(*(u*)(vic + 64UL) + 0UL * 8UL);
+ v28 = 0UL;
+ v29 = ((u(*)())v25)(v26, v27, v28);
+ v29;
+ v30 = (u)zirreset;
+ v31 = *(u*)(*(u*)(vic + 64UL) + 0UL * 8UL);
+ v32 = ((u(*)())v30)(v31);
+ v32;
+ return 0UL;
+b20: vib = *(u*)(*(u*)(vic + 64UL) + vi * 8UL);
+ if (!*(u*)(vib + 48UL)) goto b23;
+ v21 = (u)zalloc;
+ v22 = *(u*)(vic + 16UL);
+ v23 = *(u*)(vib + 48UL) * 8UL;
+ v24 = ((u(*)())v21)(v22, v23);
+ *(u*)(vib + 40UL) = v24;
+b21: *(u*)(vib + 48UL) = 0UL;
+ *(u*)(vib + 80UL) = 0UL;
+ vi = vi + 1UL;
+ goto b16;
+b23: goto b21;
+b9: vib = *(u*)(*(u*)(vic + 64UL) + vi * 8UL);
+ if (!*(u*)(vib + 40UL)) goto b12;
+ v8 = (u)zfree;
+ v9 = *(u*)(vic + 16UL);
+ v10 = *(u*)(vib + 40UL);
+ v11 = ((u(*)())v8)(v9, v10);
+ v11;
+b10: *(u*)(vib + 40UL) = 0UL;
+ *(u*)(vib + 48UL) = 0UL;
+ vi = vi + 1UL;
+ goto b5;
+b12: goto b10;
+b3: goto b1;
+}
+u zirfunc_basic_value(u vic) {
+ u v1 = 0;
+ u v2 = 0;
+ u v3 = 0;
+ u v4 = 0;
+ u v5 = 0;
+ u v6 = 0;
+ u v7 = 0;
+ v1 = (u)zirblock_basic_value;
+ v2 = vic;
+ v3 = *(u*)(*(u*)(vic + 64UL) + 0UL * 8UL);
+ v4 = ((u(*)())v1)(v2, v3);
+ v4;
+ v5 = (u)zirreset;
+ v6 = *(u*)(*(u*)(vic + 64UL) + 0UL * 8UL);
+ v7 = ((u(*)())v5)(v6);
+ v7;
+ return 0UL;
+}
u zirfunc_dead(u vic) {
u vi = 0;
u v2 = 0;
u v3 = 0;
u v4 = 0;
u v5 = 0;
- vi = 0;
-b1: if (vi != *(u*)(vic + 72)) goto b3;
- return 0;
-b3: v2 = (u)zirblock_dead_expr;
+ u v6 = 0;
+ u v7 = 0;
+ u v8 = 0;
+ u v9 = 0;
+ u v10 = 0;
+ u v11 = 0;
+ u v12 = 0;
+ u v13 = 0;
+ u v14 = 0;
+ v2 = (u)zirblock_dead_var;
v3 = vic;
- v4 = *(u*)(*(u*)(vic + 64) + vi * 8);
+ v4 = *(u*)(*(u*)(vic + 64UL) + 0UL * 8UL);
v5 = ((u(*)())v2)(v3, v4);
- vi = vi + 1;
- goto b1;
+ v5;
+ v6 = (u)zirreset;
+ v7 = *(u*)(*(u*)(vic + 64UL) + 0UL * 8UL);
+ v8 = ((u(*)())v6)(v7);
+ v8;
+ vi = 0UL;
+b3: if (vi != *(u*)(vic + 136UL)) goto b7;
+ vi = 0UL;
+b18: if (vi != *(u*)(vic + 72UL)) goto b22;
+ return 0UL;
+b22: v11 = (u)zirblock_dead_expr;
+ v12 = vic;
+ v13 = *(u*)(*(u*)(vic + 64UL) + vi * 8UL);
+ v14 = ((u(*)())v11)(v12, v13);
+ v14;
+ vi = vi + 1UL;
+ goto b18;
+b7: if ((s)vi < (s)*(u*)(vic + 152UL)) goto b12;
+ if (!*(u*)(*(u*)(*(u*)(vic + 128UL) + vi * 8UL) + 64UL)) goto b16;
+ v10 = 0UL;
+b17: if (!v10) goto b12;
+ v9 = 1UL;
+b14: if (!v9) goto b10;
+ *(u*)(*(u*)(*(u*)(vic + 128UL) + vi * 8UL) + 48UL) = 1UL;
+b8: *(u*)(*(u*)(*(u*)(vic + 128UL) + vi * 8UL) + 64UL) = 0UL;
+ vi = vi + 1UL;
+ goto b3;
+b10: goto b8;
+b12: v9 = 0UL;
+ goto b14;
+b16: v10 = 1UL;
+ goto b17;
}
u zirfunc_flow(u vic) {
u v1 = 0;
@@ -19820,16 +21417,19 @@ u zirfunc_flow(u vic) {
u v11 = 0;
v1 = (u)zirblock_flow2;
v2 = vic;
- v3 = *(u*)*(u*)(vic + 64);
+ v3 = *(u*)(*(u*)(vic + 64UL) + 0UL * 8UL);
v4 = ((u(*)())v1)(v2, v3);
+ v4;
v5 = (u)zirblock_flow3;
v6 = vic;
- v7 = *(u*)*(u*)(vic + 64);
+ v7 = *(u*)(*(u*)(vic + 64UL) + 0UL * 8UL);
v8 = ((u(*)())v5)(v6, v7);
+ v8;
v9 = (u)zirreset;
- v10 = *(u*)*(u*)(vic + 64);
+ v10 = *(u*)(*(u*)(vic + 64UL) + 0UL * 8UL);
v11 = ((u(*)())v9)(v10);
- return 0;
+ v11;
+ return 0UL;
}
u zirfunc_fold(u vic) {
u vi = 0;
@@ -19837,31 +21437,19 @@ u zirfunc_fold(u vic) {
u v3 = 0;
u v4 = 0;
u v5 = 0;
- vi = 0;
-b1: if (vi != *(u*)(vic + 72)) goto b3;
- return 0;
-b3: v2 = (u)zirblock_fold;
- v3 = vic;
- v4 = *(u*)(*(u*)(vic + 64) + vi * 8);
- v5 = ((u(*)())v2)(v3, v4);
- vi = vi + 1;
- goto b1;
-}
-u zirfunc_value(u vic) {
- u vi = 0;
- u v2 = 0;
- u v3 = 0;
- u v4 = 0;
- u v5 = 0;
- vi = 0;
-b1: if (vi != *(u*)(vic + 72)) goto b3;
- return 0;
-b3: v2 = (u)zirblock_value;
+ u v6 = 0;
+ u v7 = 0;
+ u v8 = 0;
+ v2 = (u)zirblock_fold;
v3 = vic;
- v4 = *(u*)(*(u*)(vic + 64) + vi * 8);
+ v4 = *(u*)(*(u*)(vic + 64UL) + 0UL * 8UL);
v5 = ((u(*)())v2)(v3, v4);
- vi = vi + 1;
- goto b1;
+ v5;
+ v6 = (u)zirreset;
+ v7 = *(u*)(*(u*)(vic + 64UL) + 0UL * 8UL);
+ v8 = ((u(*)())v6)(v7);
+ v8;
+ return 0UL;
}
u zirjump(u vic, u vto, u vnext) {
u vcur = 0;
@@ -19882,26 +21470,508 @@ u zirjump(u vic, u vto, u vnext) {
u v18 = 0;
v5 = (u)zmkirop;
v6 = vic;
- v7 = 28;
- v8 = 0;
- v9 = 0;
+ v7 = 28UL;
+ v8 = 0UL;
+ v9 = 0UL;
v10 = ((u(*)())v5)(v6, v7, v8, v9);
vo = v10;
v11 = (u)ziraddop;
v12 = vic;
v13 = vo;
v14 = ((u(*)())v11)(v12, v13);
- vcur = *(u*)(vic + 88);
- if (!vcur) goto b3;
- if (!*(u*)(vcur + 32)) goto b6;
+ v14;
+ vcur = *(u*)(vic + 104UL);
+ if (!vcur) goto b5;
+ if (!*(u*)(vcur + 32UL)) goto b8;
v15 = (u)zcdie;
- v16 = *(u*)vic;
+ v16 = *(u*)(vic + 0UL);
v17 = (u)"block already done";
v18 = ((u(*)())v15)(v16, v17);
-b6: *(u*)(vcur + 32) = 1;
- *(u*)(vcur + 40) = vto;
-b3: *(u*)(vic + 88) = vnext;
- return 0;
+ v18;
+b6: *(u*)(vcur + 32UL) = 1UL;
+ *(u*)(vcur + 56UL) = vto;
+b3: *(u*)(vic + 104UL) = vnext;
+ return 0UL;
+b8: goto b6;
+b5: goto b3;
+}
+u zirop_basic_value(u vic, u vvals, u vop) {
+ u va = 0;
+ u vb = 0;
+ u vv = 0;
+ u vret = 0;
+ u vkind = 0;
+ u vi = 0;
+ u v9 = 0;
+ u v10 = 0;
+ u v11 = 0;
+ u v12 = 0;
+ u v13 = 0;
+ u v14 = 0;
+ u v15 = 0;
+ u v16 = 0;
+ u v17 = 0;
+ u v18 = 0;
+ u v19 = 0;
+ u v20 = 0;
+ u v21 = 0;
+ u v22 = 0;
+ u v23 = 0;
+ u v24 = 0;
+ u v25 = 0;
+ u v26 = 0;
+ u v27 = 0;
+ u v28 = 0;
+ u v29 = 0;
+ u v30 = 0;
+ u v31 = 0;
+ u v32 = 0;
+ u v33 = 0;
+ u v34 = 0;
+ u v35 = 0;
+ u v36 = 0;
+ u v37 = 0;
+ u v38 = 0;
+ u v39 = 0;
+ u v40 = 0;
+ u v41 = 0;
+ u v42 = 0;
+ u v43 = 0;
+ u v44 = 0;
+ u v45 = 0;
+ u v46 = 0;
+ u v47 = 0;
+ u v48 = 0;
+ u v49 = 0;
+ u v50 = 0;
+ u v51 = 0;
+ u v52 = 0;
+ u v53 = 0;
+ u v54 = 0;
+ u v55 = 0;
+ u v56 = 0;
+ u v57 = 0;
+ u v58 = 0;
+ u v59 = 0;
+ u v60 = 0;
+ u v61 = 0;
+ u v62 = 0;
+ u v63 = 0;
+ u v64 = 0;
+ u v65 = 0;
+ u v66 = 0;
+ u v67 = 0;
+ u v68 = 0;
+ u v69 = 0;
+ u v70 = 0;
+ u v71 = 0;
+ u v72 = 0;
+ u v73 = 0;
+ u v74 = 0;
+ u v75 = 0;
+ u v76 = 0;
+ u v77 = 0;
+ u v78 = 0;
+ u v79 = 0;
+ u v80 = 0;
+ u v81 = 0;
+ u v82 = 0;
+ u v83 = 0;
+ u v84 = 0;
+ u v85 = 0;
+ u v86 = 0;
+ u v87 = 0;
+ u v88 = 0;
+ u v89 = 0;
+ u v90 = 0;
+ u v91 = 0;
+ u v92 = 0;
+ u v93 = 0;
+ u v94 = 0;
+ u v95 = 0;
+ u v96 = 0;
+ u v97 = 0;
+ u v98 = 0;
+ u v99 = 0;
+ u v100 = 0;
+ u v101 = 0;
+ u v102 = 0;
+ u v103 = 0;
+ u v104 = 0;
+ u v105 = 0;
+ u v106 = 0;
+ u v107 = 0;
+ u v108 = 0;
+ u v109 = 0;
+ u v110 = 0;
+ vkind = *(u*)(vop + 0UL);
+ va = *(u*)(vop + 8UL);
+ vb = *(u*)(vop + 16UL);
+ if (vkind != 6UL) goto b3;
+ if (*(u*)(va + 0UL) != 0UL) goto b6;
+ v9 = (u)zirop_kill;
+ v10 = vic;
+ v11 = vvals;
+ v12 = *(u*)(va + 24UL);
+ v13 = ((u(*)())v9)(v10, v11, v12);
+ v13;
+ v14 = (u)zirop_basic_value;
+ v15 = vic;
+ v16 = vvals;
+ v17 = vb;
+ v18 = ((u(*)())v14)(v15, v16, v17);
+ vb = v18;
+ if ((s)*(u*)(va + 24UL) >= (s)0UL) goto b13;
+ v19 = 1UL;
+b15: if (!v19) goto b11;
+ v20 = (u)zdie;
+ v21 = (u)"WTF";
+ v22 = ((u(*)())v20)(v21);
+ v22;
+b9: *(u*)(vvals + *(u*)(va + 24UL) * 8UL) = vb;
+ v23 = (u)zirop_kill;
+ v24 = vic;
+ v25 = vvals;
+ v26 = *(u*)(va + 24UL);
+ v27 = ((u(*)())v23)(v24, v25, v26);
+ v27;
+ if (vb != *(u*)(vop + 16UL)) goto b21;
+ return vop;
+b21: v28 = (u)zmkirop;
+ v29 = vic;
+ v30 = 6UL;
+ v31 = va;
+ v32 = vb;
+ v33 = ((u(*)())v28)(v29, v30, v31, v32);
+ vret = v33;
+ v34 = (u)zircopyloc;
+ v35 = vret;
+ v36 = vop;
+ v37 = ((u(*)())v34)(v35, v36);
+ v37;
+ *(u*)(vret + 48UL) = *(u*)(vop + 48UL);
+ return vret;
+b11: goto b9;
+b13: if ((s)*(u*)(va + 24UL) < (s)*(u*)(vic + 136UL)) goto b16;
+ v19 = 1UL;
+ goto b15;
+b16: v19 = 0UL;
+ goto b15;
+b6: if (*(u*)(va + 0UL) != 5UL) goto b25;
+ vi = 0UL;
+b26: if (vi != *(u*)(vic + 136UL)) goto b30;
+ return vop;
+b30: *(u*)(vvals + vi * 8UL) = 0UL;
+ vi = vi + 1UL;
+ goto b26;
+b25: v38 = (u)zdie;
+ v39 = (u)"invalid store";
+ v40 = ((u(*)())v38)(v39);
+ v40;
+ return 0UL;
+b3: if (vkind != 0UL) goto b33;
+ vv = *(u*)(vvals + *(u*)(vop + 24UL) * 8UL);
+ if (!vv) goto b38;
+ v41 = 0UL;
+b39: if (!v41) goto b36;
+ return vop;
+b36: return vv;
+b38: v41 = 1UL;
+ goto b39;
+b33: if (vkind != 7UL) goto b42;
+ return vop;
+b42: if (vkind != 8UL) goto b46;
+ v47 = 1UL;
+b48: if (!v47) goto b44;
+ v53 = (u)zirop_basic_value;
+ v54 = vic;
+ v55 = vvals;
+ v56 = va;
+ v57 = ((u(*)())v53)(v54, v55, v56);
+ va = v57;
+ if (va != *(u*)(vop + 8UL)) goto b78;
+ return vop;
+b78: v58 = (u)zmkirop;
+ v59 = vic;
+ v60 = vkind;
+ v61 = va;
+ v62 = 0UL;
+ v63 = ((u(*)())v58)(v59, v60, v61, v62);
+ vret = v63;
+ v64 = (u)zircopyloc;
+ v65 = vret;
+ v66 = vop;
+ v67 = ((u(*)())v64)(v65, v66);
+ v67;
+ *(u*)(vret + 48UL) = *(u*)(vop + 48UL);
+ *(u*)(vret + 24UL) = *(u*)(vop + 24UL);
+ return vret;
+b44: if (vkind != 1UL) goto b84;
+ v68 = 1UL;
+b86: if (!v68) goto b82;
+ return vop;
+b82: if (vkind != 11UL) goto b106;
+ v72 = 1UL;
+b108: if (!v72) goto b104;
+ v87 = (u)zirop_basic_value;
+ v88 = vic;
+ v89 = vvals;
+ v90 = va;
+ v91 = ((u(*)())v87)(v88, v89, v90);
+ va = v91;
+ v92 = (u)zirop_basic_value;
+ v93 = vic;
+ v94 = vvals;
+ v95 = vb;
+ v96 = ((u(*)())v92)(v93, v94, v95);
+ vb = v96;
+ if (va != *(u*)(vop + 8UL)) goto b186;
+ if (vb != *(u*)(vop + 16UL)) goto b186;
+ v97 = 1UL;
+b188: if (!v97) goto b184;
+ return vop;
+b184: v98 = (u)zmkirop;
+ v99 = vic;
+ v100 = vkind;
+ v101 = va;
+ v102 = vb;
+ v103 = ((u(*)())v98)(v99, v100, v101, v102);
+ vret = v103;
+ v104 = (u)zircopyloc;
+ v105 = vret;
+ v106 = vop;
+ v107 = ((u(*)())v104)(v105, v106);
+ v107;
+ *(u*)(vret + 48UL) = *(u*)(vop + 48UL);
+ return vret;
+b186: v97 = 0UL;
+ goto b188;
+b104: v108 = (u)zdie;
+ v109 = (u)"invalid op";
+ v110 = ((u(*)())v108)(v109);
+ v110;
+ return 0UL;
+b106: if (vkind != 12UL) goto b111;
+ v73 = 1UL;
+b113: if (!v73) goto b109;
+ v72 = 1UL;
+ goto b108;
+b109: v72 = 0UL;
+ goto b108;
+b111: if (vkind != 13UL) goto b116;
+ v74 = 1UL;
+b118: if (!v74) goto b114;
+ v73 = 1UL;
+ goto b113;
+b114: v73 = 0UL;
+ goto b113;
+b116: if (vkind != 14UL) goto b121;
+ v75 = 1UL;
+b123: if (!v75) goto b119;
+ v74 = 1UL;
+ goto b118;
+b119: v74 = 0UL;
+ goto b118;
+b121: if (vkind != 15UL) goto b126;
+ v76 = 1UL;
+b128: if (!v76) goto b124;
+ v75 = 1UL;
+ goto b123;
+b124: v75 = 0UL;
+ goto b123;
+b126: if (vkind != 16UL) goto b131;
+ v77 = 1UL;
+b133: if (!v77) goto b129;
+ v76 = 1UL;
+ goto b128;
+b129: v76 = 0UL;
+ goto b128;
+b131: if (vkind != 17UL) goto b136;
+ v78 = 1UL;
+b138: if (!v78) goto b134;
+ v77 = 1UL;
+ goto b133;
+b134: v77 = 0UL;
+ goto b133;
+b136: if (vkind != 18UL) goto b141;
+ v79 = 1UL;
+b143: if (!v79) goto b139;
+ v78 = 1UL;
+ goto b138;
+b139: v78 = 0UL;
+ goto b138;
+b141: if (vkind != 19UL) goto b146;
+ v80 = 1UL;
+b148: if (!v80) goto b144;
+ v79 = 1UL;
+ goto b143;
+b144: v79 = 0UL;
+ goto b143;
+b146: if (vkind != 20UL) goto b151;
+ v81 = 1UL;
+b153: if (!v81) goto b149;
+ v80 = 1UL;
+ goto b148;
+b149: v80 = 0UL;
+ goto b148;
+b151: if (vkind != 21UL) goto b156;
+ v82 = 1UL;
+b158: if (!v82) goto b154;
+ v81 = 1UL;
+ goto b153;
+b154: v81 = 0UL;
+ goto b153;
+b156: if (vkind != 22UL) goto b161;
+ v83 = 1UL;
+b163: if (!v83) goto b159;
+ v82 = 1UL;
+ goto b158;
+b159: v82 = 0UL;
+ goto b158;
+b161: if (vkind != 23UL) goto b166;
+ v84 = 1UL;
+b168: if (!v84) goto b164;
+ v83 = 1UL;
+ goto b163;
+b164: v83 = 0UL;
+ goto b163;
+b166: if (vkind != 24UL) goto b171;
+ v85 = 1UL;
+b173: if (!v85) goto b169;
+ v84 = 1UL;
+ goto b168;
+b169: v84 = 0UL;
+ goto b168;
+b171: if (vkind != 25UL) goto b176;
+ v86 = 1UL;
+b178: if (!v86) goto b174;
+ v85 = 1UL;
+ goto b173;
+b174: v85 = 0UL;
+ goto b173;
+b176: if (vkind != 26UL) goto b179;
+ v86 = 1UL;
+ goto b178;
+b179: v86 = 0UL;
+ goto b178;
+b84: if (vkind != 2UL) goto b89;
+ v69 = 1UL;
+b91: if (!v69) goto b87;
+ v68 = 1UL;
+ goto b86;
+b87: v68 = 0UL;
+ goto b86;
+b89: if (vkind != 3UL) goto b94;
+ v70 = 1UL;
+b96: if (!v70) goto b92;
+ v69 = 1UL;
+ goto b91;
+b92: v69 = 0UL;
+ goto b91;
+b94: if (vkind != 4UL) goto b99;
+ v71 = 1UL;
+b101: if (!v71) goto b97;
+ v70 = 1UL;
+ goto b96;
+b97: v70 = 0UL;
+ goto b96;
+b99: if (vkind != 28UL) goto b102;
+ v71 = 1UL;
+ goto b101;
+b102: v71 = 0UL;
+ goto b101;
+b46: if (vkind != 5UL) goto b51;
+ v48 = 1UL;
+b53: if (!v48) goto b49;
+ v47 = 1UL;
+ goto b48;
+b49: v47 = 0UL;
+ goto b48;
+b51: if (vkind != 9UL) goto b56;
+ v49 = 1UL;
+b58: if (!v49) goto b54;
+ v48 = 1UL;
+ goto b53;
+b54: v48 = 0UL;
+ goto b53;
+b56: if (vkind != 10UL) goto b61;
+ v50 = 1UL;
+b63: if (!v50) goto b59;
+ v49 = 1UL;
+ goto b58;
+b59: v49 = 0UL;
+ goto b58;
+b61: if (vkind != 27UL) goto b66;
+ v51 = 1UL;
+b68: if (!v51) goto b64;
+ v50 = 1UL;
+ goto b63;
+b64: v50 = 0UL;
+ goto b63;
+b66: if (vkind != 29UL) goto b71;
+ v52 = 1UL;
+b73: if (!v52) goto b69;
+ v51 = 1UL;
+ goto b68;
+b69: v51 = 0UL;
+ goto b68;
+b71: if (vkind != 30UL) goto b74;
+ v52 = 1UL;
+ goto b73;
+b74: v52 = 0UL;
+ goto b73;
+}
+u zirop_kill(u vic, u vvals, u vn) {
+ u vi = 0;
+ u v4 = 0;
+ u v5 = 0;
+ u v6 = 0;
+ u v7 = 0;
+b1: if (vi != *(u*)(vic + 136UL)) goto b5;
+ return 0UL;
+b5: v4 = (u)zirop_occurs;
+ v5 = *(u*)(vvals + vi * 8UL);
+ v6 = vn;
+ v7 = ((u(*)())v4)(v5, v6);
+ if (!v7) goto b8;
+ *(u*)(vvals + vi * 8UL) = 0UL;
+b6: vi = vi + 1UL;
+ goto b1;
+b8: goto b6;
+}
+u zirop_occurs(u vop, u vn) {
+ u v2 = 0;
+ u v3 = 0;
+ u v4 = 0;
+ u v5 = 0;
+ u v6 = 0;
+ u v7 = 0;
+ u v8 = 0;
+ u v9 = 0;
+ u v10 = 0;
+ if (!vop) goto b5;
+ v2 = 0UL;
+b6: if (!v2) goto b3;
+ return 0UL;
+b3: if (*(u*)(vop + 0UL) != 0UL) goto b9;
+ if (*(u*)(vop + 24UL) != vn) goto b12;
+ return 1UL;
+b12: return 0UL;
+b9: v3 = (u)zirop_occurs;
+ v4 = *(u*)(vop + 8UL);
+ v5 = vn;
+ v6 = ((u(*)())v3)(v4, v5);
+ if (!v6) goto b15;
+ return 1UL;
+b15: v7 = (u)zirop_occurs;
+ v8 = *(u*)(vop + 16UL);
+ v9 = vn;
+ v10 = ((u(*)())v7)(v8, v9);
+ if (!v10) goto b19;
+ return 1UL;
+b19: return 0UL;
+b5: v2 = 1UL;
+ goto b6;
}
u zirreset(u vb) {
u v1 = 0;
@@ -19913,24 +21983,26 @@ u zirreset(u vb) {
u v7 = 0;
u v8 = 0;
if (!vb) goto b5;
- v1 = 0;
-b6: if (!v1) goto b1;
- return 0;
-b1: if (!*(u*)(vb + 64)) goto b11;
- v2 = 0;
-b12: if (!v2) goto b7;
- return 0;
-b7: *(u*)(vb + 64) = 0;
+ v1 = 0UL;
+b6: if (!v1) goto b3;
+ return 0UL;
+b3: if (!*(u*)(vb + 80UL)) goto b11;
+ v2 = 0UL;
+b12: if (!v2) goto b9;
+ return 0UL;
+b9: *(u*)(vb + 80UL) = 0UL;
v3 = (u)zirreset;
- v4 = *(u*)(vb + 40);
+ v4 = *(u*)(vb + 56UL);
v5 = ((u(*)())v3)(v4);
+ v5;
v6 = (u)zirreset;
- v7 = *(u*)(vb + 48);
+ v7 = *(u*)(vb + 64UL);
v8 = ((u(*)())v6)(v7);
- return 0;
-b11: v2 = 1;
+ v8;
+ return 0UL;
+b11: v2 = 1UL;
goto b12;
-b5: v1 = 1;
+b5: v1 = 1UL;
goto b6;
}
u zirreturn(u vic, u vvalue) {
@@ -19952,25 +22024,324 @@ u zirreturn(u vic, u vvalue) {
u v17 = 0;
v4 = (u)zmkirop;
v5 = vic;
- v6 = 30;
+ v6 = 30UL;
v7 = vvalue;
- v8 = 0;
+ v8 = 0UL;
v9 = ((u(*)())v4)(v5, v6, v7, v8);
vo = v9;
v10 = (u)ziraddop;
v11 = vic;
- v12 = vo;
- v13 = ((u(*)())v10)(v11, v12);
- vcur = *(u*)(vic + 88);
- if (!vcur) goto b3;
- if (!*(u*)(vcur + 32)) goto b6;
- v14 = (u)zcdie;
- v15 = *(u*)vic;
- v16 = (u)"block already done";
- v17 = ((u(*)())v14)(v15, v16);
-b6: *(u*)(vcur + 32) = 1;
-b3: *(u*)(vic + 88) = 0;
- return 0;
+ v12 = vo;
+ v13 = ((u(*)())v10)(v11, v12);
+ v13;
+ vcur = *(u*)(vic + 104UL);
+ if (!vcur) goto b5;
+ if (!*(u*)(vcur + 32UL)) goto b8;
+ v14 = (u)zcdie;
+ v15 = *(u*)(vic + 0UL);
+ v16 = (u)"block already done";
+ v17 = ((u(*)())v14)(v15, v16);
+ v17;
+b6: *(u*)(vcur + 32UL) = 1UL;
+b3: *(u*)(vic + 104UL) = 0UL;
+ return 0UL;
+b8: goto b6;
+b5: goto b3;
+}
+u ziruseop(u vic, u vib, u vop) {
+ u vkind = 0;
+ u v4 = 0;
+ u v5 = 0;
+ u v6 = 0;
+ u v7 = 0;
+ u v8 = 0;
+ u v9 = 0;
+ u v10 = 0;
+ u v11 = 0;
+ u v12 = 0;
+ u v13 = 0;
+ u v14 = 0;
+ u v15 = 0;
+ u v16 = 0;
+ u v17 = 0;
+ u v18 = 0;
+ u v19 = 0;
+ u v20 = 0;
+ u v21 = 0;
+ u v22 = 0;
+ u v23 = 0;
+ u v24 = 0;
+ u v25 = 0;
+ u v26 = 0;
+ u v27 = 0;
+ u v28 = 0;
+ u v29 = 0;
+ u v30 = 0;
+ u v31 = 0;
+ u v32 = 0;
+ u v33 = 0;
+ u v34 = 0;
+ u v35 = 0;
+ u v36 = 0;
+ u v37 = 0;
+ u v38 = 0;
+ u v39 = 0;
+ u v40 = 0;
+ u v41 = 0;
+ u v42 = 0;
+ u v43 = 0;
+ u v44 = 0;
+ u v45 = 0;
+ u v46 = 0;
+ u v47 = 0;
+ u v48 = 0;
+ u v49 = 0;
+ u v50 = 0;
+ u v51 = 0;
+ u v52 = 0;
+ u v53 = 0;
+ u v54 = 0;
+ u v55 = 0;
+ u v56 = 0;
+ u v57 = 0;
+ u v58 = 0;
+ u v59 = 0;
+ u v60 = 0;
+ u v61 = 0;
+ vkind = *(u*)(vop + 0UL);
+ if (vkind != 0UL) goto b5;
+ v4 = 1UL;
+b7: if (!v4) goto b3;
+ *(u*)(*(u*)(*(u*)(vic + 128UL) + *(u*)(vop + 24UL) * 8UL) + 64UL) = 1UL;
+b1: return 0UL;
+b3: if (vkind != 6UL) goto b10;
+ if (*(u*)(*(u*)(vop + 8UL) + 0UL) == 0UL) goto b13;
+ v5 = (u)ziruseop;
+ v6 = vic;
+ v7 = vib;
+ v8 = *(u*)(vop + 8UL);
+ v9 = ((u(*)())v5)(v6, v7, v8);
+ v9;
+b11: v10 = (u)ziruseop;
+ v11 = vic;
+ v12 = vib;
+ v13 = *(u*)(vop + 16UL);
+ v14 = ((u(*)())v10)(v11, v12, v13);
+ v14;
+ goto b1;
+b13: goto b11;
+b10: if (vkind != 11UL) goto b19;
+ v15 = 1UL;
+b21: if (!v15) goto b17;
+ v30 = (u)ziruseop;
+ v31 = vic;
+ v32 = vib;
+ v33 = *(u*)(vop + 8UL);
+ v34 = ((u(*)())v30)(v31, v32, v33);
+ v34;
+ v35 = (u)ziruseop;
+ v36 = vic;
+ v37 = vib;
+ v38 = *(u*)(vop + 16UL);
+ v39 = ((u(*)())v35)(v36, v37, v38);
+ v39;
+ goto b1;
+b17: if (vkind != 9UL) goto b98;
+ v40 = 1UL;
+b100: if (!v40) goto b96;
+ v46 = (u)ziruseop;
+ v47 = vic;
+ v48 = vib;
+ v49 = *(u*)(vop + 8UL);
+ v50 = ((u(*)())v46)(v47, v48, v49);
+ v50;
+ goto b1;
+b96: if (vkind != 7UL) goto b129;
+ if (*(u*)(*(u*)(vop + 8UL) + 0UL) == 0UL) goto b132;
+ v51 = (u)ziruseop;
+ v52 = vic;
+ v53 = vib;
+ v54 = *(u*)(vop + 8UL);
+ v55 = ((u(*)())v51)(v52, v53, v54);
+ v55;
+b130: goto b1;
+b132: goto b130;
+b129: if (vkind != 2UL) goto b137;
+ v56 = 1UL;
+b139: if (!v56) goto b135;
+ goto b1;
+b135: v59 = (u)zdie;
+ v60 = (u)"invalid op";
+ v61 = ((u(*)())v59)(v60);
+ v61;
+ goto b1;
+b137: if (vkind != 3UL) goto b142;
+ v57 = 1UL;
+b144: if (!v57) goto b140;
+ v56 = 1UL;
+ goto b139;
+b140: v56 = 0UL;
+ goto b139;
+b142: if (vkind != 4UL) goto b147;
+ v58 = 1UL;
+b149: if (!v58) goto b145;
+ v57 = 1UL;
+ goto b144;
+b145: v57 = 0UL;
+ goto b144;
+b147: if (vkind != 28UL) goto b150;
+ v58 = 1UL;
+ goto b149;
+b150: v58 = 0UL;
+ goto b149;
+b98: if (vkind != 10UL) goto b103;
+ v41 = 1UL;
+b105: if (!v41) goto b101;
+ v40 = 1UL;
+ goto b100;
+b101: v40 = 0UL;
+ goto b100;
+b103: if (vkind != 5UL) goto b108;
+ v42 = 1UL;
+b110: if (!v42) goto b106;
+ v41 = 1UL;
+ goto b105;
+b106: v41 = 0UL;
+ goto b105;
+b108: if (vkind != 8UL) goto b113;
+ v43 = 1UL;
+b115: if (!v43) goto b111;
+ v42 = 1UL;
+ goto b110;
+b111: v42 = 0UL;
+ goto b110;
+b113: if (vkind != 27UL) goto b118;
+ v44 = 1UL;
+b120: if (!v44) goto b116;
+ v43 = 1UL;
+ goto b115;
+b116: v43 = 0UL;
+ goto b115;
+b118: if (vkind != 29UL) goto b123;
+ v45 = 1UL;
+b125: if (!v45) goto b121;
+ v44 = 1UL;
+ goto b120;
+b121: v44 = 0UL;
+ goto b120;
+b123: if (vkind != 30UL) goto b126;
+ v45 = 1UL;
+ goto b125;
+b126: v45 = 0UL;
+ goto b125;
+b19: if (vkind != 12UL) goto b24;
+ v16 = 1UL;
+b26: if (!v16) goto b22;
+ v15 = 1UL;
+ goto b21;
+b22: v15 = 0UL;
+ goto b21;
+b24: if (vkind != 13UL) goto b29;
+ v17 = 1UL;
+b31: if (!v17) goto b27;
+ v16 = 1UL;
+ goto b26;
+b27: v16 = 0UL;
+ goto b26;
+b29: if (vkind != 14UL) goto b34;
+ v18 = 1UL;
+b36: if (!v18) goto b32;
+ v17 = 1UL;
+ goto b31;
+b32: v17 = 0UL;
+ goto b31;
+b34: if (vkind != 15UL) goto b39;
+ v19 = 1UL;
+b41: if (!v19) goto b37;
+ v18 = 1UL;
+ goto b36;
+b37: v18 = 0UL;
+ goto b36;
+b39: if (vkind != 16UL) goto b44;
+ v20 = 1UL;
+b46: if (!v20) goto b42;
+ v19 = 1UL;
+ goto b41;
+b42: v19 = 0UL;
+ goto b41;
+b44: if (vkind != 17UL) goto b49;
+ v21 = 1UL;
+b51: if (!v21) goto b47;
+ v20 = 1UL;
+ goto b46;
+b47: v20 = 0UL;
+ goto b46;
+b49: if (vkind != 18UL) goto b54;
+ v22 = 1UL;
+b56: if (!v22) goto b52;
+ v21 = 1UL;
+ goto b51;
+b52: v21 = 0UL;
+ goto b51;
+b54: if (vkind != 19UL) goto b59;
+ v23 = 1UL;
+b61: if (!v23) goto b57;
+ v22 = 1UL;
+ goto b56;
+b57: v22 = 0UL;
+ goto b56;
+b59: if (vkind != 20UL) goto b64;
+ v24 = 1UL;
+b66: if (!v24) goto b62;
+ v23 = 1UL;
+ goto b61;
+b62: v23 = 0UL;
+ goto b61;
+b64: if (vkind != 21UL) goto b69;
+ v25 = 1UL;
+b71: if (!v25) goto b67;
+ v24 = 1UL;
+ goto b66;
+b67: v24 = 0UL;
+ goto b66;
+b69: if (vkind != 22UL) goto b74;
+ v26 = 1UL;
+b76: if (!v26) goto b72;
+ v25 = 1UL;
+ goto b71;
+b72: v25 = 0UL;
+ goto b71;
+b74: if (vkind != 23UL) goto b79;
+ v27 = 1UL;
+b81: if (!v27) goto b77;
+ v26 = 1UL;
+ goto b76;
+b77: v26 = 0UL;
+ goto b76;
+b79: if (vkind != 24UL) goto b84;
+ v28 = 1UL;
+b86: if (!v28) goto b82;
+ v27 = 1UL;
+ goto b81;
+b82: v27 = 0UL;
+ goto b81;
+b84: if (vkind != 25UL) goto b89;
+ v29 = 1UL;
+b91: if (!v29) goto b87;
+ v28 = 1UL;
+ goto b86;
+b87: v28 = 0UL;
+ goto b86;
+b89: if (vkind != 26UL) goto b92;
+ v29 = 1UL;
+ goto b91;
+b92: v29 = 0UL;
+ goto b91;
+b5: if (vkind != 1UL) goto b8;
+ v4 = 1UL;
+ goto b7;
+b8: v4 = 0UL;
+ goto b7;
}
u zlabels_to_ir(u vic, u vn) {
u vkind = 0;
@@ -19996,54 +22367,59 @@ u zlabels_to_ir(u vic, u vn) {
u v22 = 0;
u v23 = 0;
if (!vn) goto b5;
- v4 = 0;
-b6: if (!v4) goto b1;
- return 0;
-b1: *(u*)(*(u*)vic + 24) = *(u*)(vn + 24);
- *(u*)(*(u*)vic + 32) = *(u*)(vn + 32);
- *(u*)(*(u*)vic + 40) = *(u*)(vn + 40);
- vkind = *(u*)vn;
- if (vkind != 21) goto b9;
+ v4 = 0UL;
+b6: if (!v4) goto b3;
+ return 0UL;
+b3: *(u*)(*(u*)(vic + 0UL) + 24UL) = *(u*)(vn + 24UL);
+ *(u*)(*(u*)(vic + 0UL) + 32UL) = *(u*)(vn + 32UL);
+ *(u*)(*(u*)(vic + 0UL) + 40UL) = *(u*)(vn + 40UL);
+ vkind = *(u*)(vn + 0UL);
+ if (vkind != 21UL) goto b9;
b10: if (!vn) goto b16;
- v5 = 0;
-b17: if (!v5) goto b12;
-b7: return 0;
-b12: v6 = (u)zlabels_to_ir;
+ v5 = 0UL;
+b17: if (!v5) goto b14;
+b7: return 0UL;
+b14: v6 = (u)zlabels_to_ir;
v7 = vic;
- v8 = *(u*)(*(u*)(vn + 8) + 16);
+ v8 = *(u*)(*(u*)(vn + 8UL) + 16UL);
v9 = ((u(*)())v6)(v7, v8);
- vn = *(u*)(vn + 16);
+ v9;
+ vn = *(u*)(vn + 16UL);
goto b10;
-b16: v5 = 1;
+b16: v5 = 1UL;
goto b17;
-b9: if (vkind != 5) goto b20;
+b9: if (vkind != 5UL) goto b20;
b21: if (!vn) goto b27;
- v10 = 0;
-b28: if (!v10) goto b23;
+ v10 = 0UL;
+b28: if (!v10) goto b25;
goto b7;
-b23: v11 = (u)zlabels_to_ir;
+b25: v11 = (u)zlabels_to_ir;
v12 = vic;
- v13 = *(u*)(vn + 8);
+ v13 = *(u*)(vn + 8UL);
v14 = ((u(*)())v11)(v12, v13);
- vn = *(u*)(vn + 16);
+ v14;
+ vn = *(u*)(vn + 16UL);
goto b21;
-b27: v10 = 1;
+b27: v10 = 1UL;
goto b28;
-b20: if (vkind != 26) goto b31;
+b20: if (vkind != 26UL) goto b31;
v15 = (u)zlabels_to_ir;
v16 = vic;
- v17 = *(u*)(vn + 8);
+ v17 = *(u*)(vn + 8UL);
v18 = ((u(*)())v15)(v16, v17);
+ v18;
goto b7;
-b31: if (vkind != 31) goto b7;
- vname = *(u*)(*(u*)(vn + 8) + 56);
+b31: if (vkind != 31UL) goto b34;
+ vname = *(u*)(*(u*)(vn + 8UL) + 56UL);
v19 = (u)zirfind_block;
v20 = vic;
v21 = vname;
- v22 = 1;
+ v22 = 1UL;
v23 = ((u(*)())v19)(v20, v21, v22);
+ v23;
goto b7;
-b5: v4 = 1;
+b34: goto b7;
+b5: v4 = 1UL;
goto b6;
}
u zlayout_struct(u vc, u vd) {
@@ -20075,54 +22451,58 @@ u zlayout_struct(u vc, u vd) {
u v27 = 0;
u v28 = 0;
u v29 = 0;
- if (!*(u*)(vd + 128)) goto b1;
- if (*(u*)(vd + 128) != 2) goto b4;
+ if (!*(u*)(vd + 128UL)) goto b3;
+ if (*(u*)(vd + 128UL) != 2UL) goto b6;
v7 = (u)zcdie;
v8 = vc;
v9 = (u)"circular struct definition";
v10 = ((u(*)())v7)(v8, v9);
-b4: return 0;
-b1: *(u*)(vd + 128) = 2;
- vm = *(u*)(*(u*)(vd + 136) + 16);
- voffset = 0;
+ v10;
+b4: return 0UL;
+b6: goto b4;
+b3: *(u*)(vd + 128UL) = 2UL;
+ vm = *(u*)(*(u*)(vd + 136UL) + 16UL);
+ voffset = 0UL;
b8: if (!vm) goto b14;
- v11 = 0;
-b15: if (!v11) goto b10;
- *(u*)(vd + 120) = voffset;
- *(u*)(vd + 128) = 1;
- return 0;
-b10: *(u*)(vc + 24) = *(u*)(*(u*)(vm + 8) + 24);
- *(u*)(vc + 32) = *(u*)(*(u*)(vm + 8) + 32);
- *(u*)(vc + 40) = *(u*)(*(u*)(vm + 8) + 40);
- vname = *(u*)(*(u*)(*(u*)(vm + 8) + 8) + 56);
+ v11 = 0UL;
+b15: if (!v11) goto b12;
+ *(u*)(vd + 120UL) = voffset;
+ *(u*)(vd + 128UL) = 1UL;
+ return 0UL;
+b12: *(u*)(vc + 24UL) = *(u*)(*(u*)(vm + 8UL) + 24UL);
+ *(u*)(vc + 32UL) = *(u*)(*(u*)(vm + 8UL) + 32UL);
+ *(u*)(vc + 40UL) = *(u*)(*(u*)(vm + 8UL) + 40UL);
+ vname = *(u*)(*(u*)(*(u*)(vm + 8UL) + 8UL) + 56UL);
v12 = (u)zprototype;
v13 = vc;
- v14 = *(u*)(*(u*)(vm + 8) + 16);
+ v14 = *(u*)(*(u*)(vm + 8UL) + 16UL);
v15 = ((u(*)())v12)(v13, v14);
vt = v15;
v16 = (u)zfind;
v17 = vc;
- v18 = *(u*)(vd + 32);
+ v18 = *(u*)(vd + 32UL);
v19 = vname;
- v20 = 1;
+ v20 = 1UL;
v21 = ((u(*)())v16)(v17, v18, v19, v20);
vmd = v21;
- if (!*(u*)(vd + 152)) goto b18;
+ if (!*(u*)(vd + 152UL)) goto b20;
v22 = (u)zcdie;
v23 = vc;
v24 = (u)"duplicate member";
v25 = ((u(*)())v22)(v23, v24);
-b18: *(u*)(vmd + 152) = 1;
- *(u*)(vmd + 160) = vt;
- *(u*)(vmd + 168) = voffset;
+ v25;
+b18: *(u*)(vmd + 152UL) = 1UL;
+ *(u*)(vmd + 160UL) = vt;
+ *(u*)(vmd + 168UL) = voffset;
v26 = (u)ztype_sizeof;
v27 = vc;
v28 = vt;
v29 = ((u(*)())v26)(v27, v28);
voffset = voffset + v29;
- vm = *(u*)(vm + 16);
+ vm = *(u*)(vm + 16UL);
goto b8;
-b14: v11 = 1;
+b20: goto b18;
+b14: v11 = 1UL;
goto b15;
}
u zlayout_union(u vc, u vd) {
@@ -20155,56 +22535,61 @@ u zlayout_union(u vc, u vd) {
u v28 = 0;
u v29 = 0;
u v30 = 0;
- if (!*(u*)(vd + 128)) goto b1;
- if (*(u*)(vd + 128) != 2) goto b4;
+ if (!*(u*)(vd + 128UL)) goto b3;
+ if (*(u*)(vd + 128UL) != 2UL) goto b6;
v8 = (u)zcdie;
v9 = vc;
v10 = (u)"circular struct definition";
v11 = ((u(*)())v8)(v9, v10);
-b4: return 0;
-b1: *(u*)(vd + 128) = 2;
- vm = *(u*)(*(u*)(vd + 136) + 16);
- vsize = 0;
+ v11;
+b4: return 0UL;
+b6: goto b4;
+b3: *(u*)(vd + 128UL) = 2UL;
+ vm = *(u*)(*(u*)(vd + 136UL) + 16UL);
+ vsize = 0UL;
b8: if (!vm) goto b14;
- v12 = 0;
-b15: if (!v12) goto b10;
- *(u*)(vd + 120) = vsize;
- *(u*)(vd + 128) = 1;
- return 0;
-b10: *(u*)(vc + 24) = *(u*)(*(u*)(vm + 8) + 24);
- *(u*)(vc + 32) = *(u*)(*(u*)(vm + 8) + 32);
- *(u*)(vc + 40) = *(u*)(*(u*)(vm + 8) + 40);
- vname = *(u*)(*(u*)(*(u*)(vm + 8) + 8) + 56);
+ v12 = 0UL;
+b15: if (!v12) goto b12;
+ *(u*)(vd + 120UL) = vsize;
+ *(u*)(vd + 128UL) = 1UL;
+ return 0UL;
+b12: *(u*)(vc + 24UL) = *(u*)(*(u*)(vm + 8UL) + 24UL);
+ *(u*)(vc + 32UL) = *(u*)(*(u*)(vm + 8UL) + 32UL);
+ *(u*)(vc + 40UL) = *(u*)(*(u*)(vm + 8UL) + 40UL);
+ vname = *(u*)(*(u*)(*(u*)(vm + 8UL) + 8UL) + 56UL);
v13 = (u)zprototype;
v14 = vc;
- v15 = *(u*)(*(u*)(vm + 8) + 16);
+ v15 = *(u*)(*(u*)(vm + 8UL) + 16UL);
v16 = ((u(*)())v13)(v14, v15);
vt = v16;
v17 = (u)zfind;
v18 = vc;
- v19 = *(u*)(vd + 32);
+ v19 = *(u*)(vd + 32UL);
v20 = vname;
- v21 = 1;
+ v21 = 1UL;
v22 = ((u(*)())v17)(v18, v19, v20, v21);
vmd = v22;
- if (!*(u*)(vd + 152)) goto b18;
+ if (!*(u*)(vd + 152UL)) goto b20;
v23 = (u)zcdie;
v24 = vc;
v25 = (u)"duplicate member";
v26 = ((u(*)())v23)(v24, v25);
-b18: *(u*)(vmd + 152) = 1;
- *(u*)(vmd + 160) = vt;
- *(u*)(vmd + 168) = 0;
+ v26;
+b18: *(u*)(vmd + 152UL) = 1UL;
+ *(u*)(vmd + 160UL) = vt;
+ *(u*)(vmd + 168UL) = 0UL;
v27 = (u)ztype_sizeof;
v28 = vc;
v29 = vt;
v30 = ((u(*)())v27)(v28, v29);
vmember_size = v30;
- if ((s)vmember_size <= (s)vsize) goto b23;
+ if ((s)vmember_size <= (s)vsize) goto b25;
vsize = vmember_size;
-b23: vm = *(u*)(vm + 16);
+b23: vm = *(u*)(vm + 16UL);
goto b8;
-b14: v12 = 1;
+b25: goto b23;
+b20: goto b18;
+b14: v12 = 1UL;
goto b15;
}
u zleave(u vc, u vtag) {
@@ -20237,46 +22622,50 @@ u zleave(u vc, u vtag) {
v8 = (u)zcommit;
v9 = vc;
v10 = ((u(*)())v8)(v9);
- *(u*)(vc + 80) = 0;
- vnargs = *(u*)(vc + 144) - *(u*)(*(u*)(vc + 120) + *(u*)(vc + 128) * 48 + 8);
- vline = *(u*)(*(u*)(vc + 120) + *(u*)(vc + 128) * 48 + 32);
- vcol = *(u*)(*(u*)(vc + 120) + *(u*)(vc + 128) * 48 + 40);
- vstart = *(u*)(*(u*)(vc + 120) + *(u*)(vc + 128) * 48);
- vend = *(u*)(vc + 48);
- if (*(u*)(vc + 152) != *(u*)(vc + 168)) goto b2;
- if (*(u*)(vc + 168) != 0) goto b7;
- *(u*)(vc + 168) = 1024;
+ v10;
+ *(u*)(vc + 80UL) = 0UL;
+ vnargs = *(u*)(vc + 144UL) - *(u*)(*(u*)(vc + 120UL) + *(u*)(vc + 128UL) * 48UL + 8UL);
+ vline = *(u*)(*(u*)(vc + 120UL) + *(u*)(vc + 128UL) * 48UL + 32UL);
+ vcol = *(u*)(*(u*)(vc + 120UL) + *(u*)(vc + 128UL) * 48UL + 40UL);
+ vstart = *(u*)(*(u*)(vc + 120UL) + *(u*)(vc + 128UL) * 48UL + 0UL);
+ vend = *(u*)(vc + 48UL);
+ if (*(u*)(vc + 152UL) != *(u*)(vc + 168UL)) goto b4;
+ if (*(u*)(vc + 168UL) != 0UL) goto b7;
+ *(u*)(vc + 168UL) = 1024UL;
v11 = (u)zalloc;
- v12 = *(u*)vc;
- v13 = *(u*)(vc + 168) * 48;
+ v12 = *(u*)(vc + 0UL);
+ v13 = *(u*)(vc + 168UL) * 48UL;
v14 = ((u(*)())v11)(v12, v13);
- *(u*)(vc + 160) = v14;
-b2: *(u*)(*(u*)(vc + 160) + *(u*)(vc + 152) * 48) = vtag;
- *(u*)(*(u*)(vc + 160) + *(u*)(vc + 152) * 48 + 8) = vnargs;
- *(u*)(*(u*)(vc + 160) + *(u*)(vc + 152) * 48 + 16) = vstart;
- *(u*)(*(u*)(vc + 160) + *(u*)(vc + 152) * 48 + 24) = vend;
- *(u*)(*(u*)(vc + 160) + *(u*)(vc + 152) * 48 + 32) = vline;
- *(u*)(*(u*)(vc + 160) + *(u*)(vc + 152) * 48 + 40) = vcol;
- *(u*)(vc + 152) = *(u*)(vc + 152) + 1;
- *(u*)(vc + 144) = *(u*)(vc + 144) - vnargs + 1;
- return 0;
-b7: *(u*)(vc + 168) = *(u*)(vc + 168) * 2;
+ *(u*)(vc + 160UL) = v14;
+b5:b2: *(u*)(*(u*)(vc + 160UL) + *(u*)(vc + 152UL) * 48UL + 0UL) = vtag;
+ *(u*)(*(u*)(vc + 160UL) + *(u*)(vc + 152UL) * 48UL + 8UL) = vnargs;
+ *(u*)(*(u*)(vc + 160UL) + *(u*)(vc + 152UL) * 48UL + 16UL) = vstart;
+ *(u*)(*(u*)(vc + 160UL) + *(u*)(vc + 152UL) * 48UL + 24UL) = vend;
+ *(u*)(*(u*)(vc + 160UL) + *(u*)(vc + 152UL) * 48UL + 32UL) = vline;
+ *(u*)(*(u*)(vc + 160UL) + *(u*)(vc + 152UL) * 48UL + 40UL) = vcol;
+ *(u*)(vc + 152UL) = *(u*)(vc + 152UL) + 1UL;
+ *(u*)(vc + 144UL) = *(u*)(vc + 144UL) - vnargs + 1UL;
+ return 0UL;
+b7: *(u*)(vc + 168UL) = *(u*)(vc + 168UL) * 2UL;
v15 = (u)zalloc;
- v16 = *(u*)vc;
- v17 = *(u*)(vc + 168) * 48;
+ v16 = *(u*)(vc + 0UL);
+ v17 = *(u*)(vc + 168UL) * 48UL;
v18 = ((u(*)())v15)(v16, v17);
vtmp = v18;
v19 = (u)zmemcpy;
v20 = vtmp;
- v21 = *(u*)(vc + 160);
- v22 = *(u*)(vc + 152) * 48;
+ v21 = *(u*)(vc + 160UL);
+ v22 = *(u*)(vc + 152UL) * 48UL;
v23 = ((u(*)())v19)(v20, v21, v22);
+ v23;
v24 = (u)zfree;
- v25 = *(u*)vc;
- v26 = *(u*)(vc + 160);
+ v25 = *(u*)(vc + 0UL);
+ v26 = *(u*)(vc + 160UL);
v27 = ((u(*)())v24)(v25, v26);
- *(u*)(vc + 160) = vtmp;
- goto b2;
+ v27;
+ *(u*)(vc + 160UL) = vtmp;
+ goto b5;
+b4: goto b2;
}
u zliteral(u vc, u vs) {
u vi = 0;
@@ -20288,24 +22677,25 @@ u zliteral(u vc, u vs) {
u v8 = 0;
u v9 = 0;
u v10 = 0;
- vi = 0;
-b1: if (!(u)*(b*)(vs + vi)) goto b7;
- v4 = 0;
-b8: if (!v4) goto b3;
- return 1;
-b3: v5 = (u)zget;
+ vi = 0UL;
+b1: if (!(u)*(b*)(vs + vi * 1UL)) goto b7;
+ v4 = 0UL;
+b8: if (!v4) goto b5;
+ return 1UL;
+b5: v5 = (u)zget;
v6 = vc;
v7 = ((u(*)())v5)(v6);
vch = v7;
- if (vch == (u)*(b*)(vs + vi)) goto b10;
+ if (vch == (u)*(b*)(vs + vi * 1UL)) goto b12;
v8 = (u)zfail;
v9 = vc;
v10 = ((u(*)())v8)(v9);
- *(u*)(vc + 112) = vs;
- return 0;
-b10: vi = vi + 1;
+ v10;
+ *(u*)(vc + 112UL) = vs;
+ return 0UL;
+b12: vi = vi + 1UL;
goto b1;
-b7: v4 = 1;
+b7: v4 = 1UL;
goto b8;
}
u zlocals_to_ir(u vic, u vn) {
@@ -20337,50 +22727,53 @@ u zlocals_to_ir(u vic, u vn) {
u v27 = 0;
u v28 = 0;
if (!vn) goto b5;
- v5 = 0;
-b6: if (!v5) goto b1;
- return 0;
-b1: *(u*)(*(u*)vic + 24) = *(u*)(vn + 24);
- *(u*)(*(u*)vic + 32) = *(u*)(vn + 32);
- *(u*)(*(u*)vic + 40) = *(u*)(vn + 40);
- vkind = *(u*)vn;
- if (vkind != 21) goto b9;
+ v5 = 0UL;
+b6: if (!v5) goto b3;
+ return 0UL;
+b3: *(u*)(*(u*)(vic + 0UL) + 24UL) = *(u*)(vn + 24UL);
+ *(u*)(*(u*)(vic + 0UL) + 32UL) = *(u*)(vn + 32UL);
+ *(u*)(*(u*)(vic + 0UL) + 40UL) = *(u*)(vn + 40UL);
+ vkind = *(u*)(vn + 0UL);
+ if (vkind != 21UL) goto b9;
b10: if (!vn) goto b16;
- v6 = 0;
-b17: if (!v6) goto b12;
-b7: return 0;
-b12: v7 = (u)zlocals_to_ir;
+ v6 = 0UL;
+b17: if (!v6) goto b14;
+b7: return 0UL;
+b14: v7 = (u)zlocals_to_ir;
v8 = vic;
- v9 = *(u*)(*(u*)(vn + 8) + 16);
+ v9 = *(u*)(*(u*)(vn + 8UL) + 16UL);
v10 = ((u(*)())v7)(v8, v9);
- vn = *(u*)(vn + 16);
+ v10;
+ vn = *(u*)(vn + 16UL);
goto b10;
-b16: v6 = 1;
+b16: v6 = 1UL;
goto b17;
-b9: if (vkind != 5) goto b20;
+b9: if (vkind != 5UL) goto b20;
b21: if (!vn) goto b27;
- v11 = 0;
-b28: if (!v11) goto b23;
+ v11 = 0UL;
+b28: if (!v11) goto b25;
goto b7;
-b23: v12 = (u)zlocals_to_ir;
+b25: v12 = (u)zlocals_to_ir;
v13 = vic;
- v14 = *(u*)(vn + 8);
+ v14 = *(u*)(vn + 8UL);
v15 = ((u(*)())v12)(v13, v14);
- vn = *(u*)(vn + 16);
+ v15;
+ vn = *(u*)(vn + 16UL);
goto b21;
-b27: v11 = 1;
+b27: v11 = 1UL;
goto b28;
-b20: if (vkind != 26) goto b31;
+b20: if (vkind != 26UL) goto b31;
v16 = (u)zlocals_to_ir;
v17 = vic;
- v18 = *(u*)(vn + 8);
+ v18 = *(u*)(vn + 8UL);
v19 = ((u(*)())v16)(v17, v18);
+ v19;
goto b7;
-b31: if (vkind != 30) goto b7;
- vname = *(u*)(*(u*)(vn + 8) + 56);
+b31: if (vkind != 30UL) goto b34;
+ vname = *(u*)(*(u*)(vn + 8UL) + 56UL);
v20 = (u)zprototype;
- v21 = *(u*)vic;
- v22 = *(u*)(vn + 16);
+ v21 = *(u*)(vic + 0UL);
+ v22 = *(u*)(vn + 16UL);
v23 = ((u(*)())v20)(v21, v22);
vt = v23;
v24 = (u)ziraddvar;
@@ -20388,8 +22781,10 @@ b31: if (vkind != 30) goto b7;
v26 = vname;
v27 = vt;
v28 = ((u(*)())v24)(v25, v26, v27);
+ v28;
goto b7;
-b5: v5 = 1;
+b34: goto b7;
+b5: v5 = 1UL;
goto b6;
}
u zmain(u vargc, u vargv, u venvp) {
@@ -20511,8 +22906,9 @@ u zmain(u vargc, u vargv, u venvp) {
v14 = (u)zsetup_alloc;
v15 = (u)&va;
v16 = ((u(*)())v14)(v15);
+ v16;
v17 = (u)zfopen;
- v18 = 2;
+ v18 = 2UL;
v19 = (u)&va;
v20 = ((u(*)())v17)(v18, v19);
verr = v20;
@@ -20521,161 +22917,183 @@ u zmain(u vargc, u vargv, u venvp) {
v23 = verr;
v24 = ((u(*)())v21)(v22, v23);
vc = v24;
- vi = 1;
-b4: if ((s)vi < (s)vargc) goto b6;
+ vi = 1UL;
+b4: if ((s)vi < (s)vargc) goto b8;
vtmp = vinput;
b67: if (!vtmp) goto b73;
- v77 = 0;
-b74: if (!v77) goto b69;
- if (!vshow) goto b77;
+ v77 = 0UL;
+b74: if (!v77) goto b71;
+ if (!vshow) goto b79;
v87 = (u)zshow_node;
v88 = verr;
v89 = vp;
v90 = ((u(*)())v87)(v88, v89);
+ v90;
v91 = (u)zfflush;
v92 = verr;
v93 = ((u(*)())v91)(v92);
- return 0;
-b77: v94 = (u)zcompile;
+ v93;
+ return 0UL;
+b79: v94 = (u)zcompile;
v95 = vc;
v96 = vp;
v97 = ((u(*)())v94)(v95, v96);
- if (!vcout_filename) goto b83;
+ v97;
+ if (!vcout_filename) goto b85;
v98 = (u)zopen_coutput;
v99 = vc;
v100 = vcout_filename;
v101 = ((u(*)())v98)(v99, v100);
+ v101;
v102 = (u)zircout;
v103 = vc;
v104 = ((u(*)())v102)(v103);
+ v104;
b83: v105 = (u)zemit_builtin;
v106 = vc;
v107 = ((u(*)())v105)(v106);
- if (!vout_filename) goto b89;
+ v107;
+ if (!vout_filename) goto b91;
v108 = (u)zopen_output;
- v109 = *(u*)(vc + 48);
+ v109 = *(u*)(vc + 48UL);
v110 = vout_filename;
v111 = ((u(*)())v108)(v109, v110);
+ v111;
v112 = (u)zwriteout;
- v113 = *(u*)(vc + 48);
- v114 = *(u*)(vc + 88);
- v115 = *(u*)(vc + 96);
+ v113 = *(u*)(vc + 48UL);
+ v114 = *(u*)(vc + 88UL);
+ v115 = *(u*)(vc + 96UL);
v116 = ((u(*)())v112)(v113, v114, v115);
-b89: return 0;
-b69: v78 = (u)zconcat_program;
+ v116;
+b89: return 0UL;
+b91: goto b89;
+b85: goto b83;
+b71: v78 = (u)zconcat_program;
v79 = vp;
v81 = (u)zparse;
- v82 = *(u*)(vc + 16);
- v83 = *(u*)(vtmp + 8);
+ v82 = *(u*)(vc + 16UL);
+ v83 = *(u*)(vtmp + 8UL);
v84 = verr;
v85 = ((u(*)())v81)(v82, v83, v84);
v80 = v85;
v86 = ((u(*)())v78)(v79, v80);
vp = v86;
- vtmp = *(u*)vtmp;
+ vtmp = *(u*)(vtmp + 0UL);
goto b67;
-b73: v77 = 1;
+b73: v77 = 1UL;
goto b74;
-b6: v26 = (u)zstrcmp;
- v27 = *(u*)(vargv + vi * 8);
+b8: v26 = (u)zstrcmp;
+ v27 = *(u*)(vargv + vi * 8UL);
v28 = (u)"-o";
v29 = ((u(*)())v26)(v27, v28);
if (!v29) goto b13;
- v25 = 0;
-b14: if (!v25) goto b9;
- vi = vi + 1;
- if ((s)vi < (s)vargc) goto b16;
+ v25 = 0UL;
+b14: if (!v25) goto b11;
+ vi = vi + 1UL;
+ if ((s)vi < (s)vargc) goto b18;
v30 = (u)zdie;
v31 = (u)"invalid -o at end of argument list";
v32 = ((u(*)())v30)(v31);
-b16: vout_filename = *(u*)(vargv + vi * 8);
- vi = vi + 1;
+ v32;
+b16: vout_filename = *(u*)(vargv + vi * 8UL);
+ vi = vi + 1UL;
goto b4;
-b9: v34 = (u)zstrcmp;
- v35 = *(u*)(vargv + vi * 8);
+b18: goto b16;
+b11: v34 = (u)zstrcmp;
+ v35 = *(u*)(vargv + vi * 8UL);
v36 = (u)"-fdump";
v37 = ((u(*)())v34)(v35, v36);
if (!v37) goto b24;
- v33 = 0;
-b25: if (!v33) goto b20;
- vi = vi + 1;
- vshow = 1;
+ v33 = 0UL;
+b25: if (!v33) goto b22;
+ vi = vi + 1UL;
+ vshow = 1UL;
goto b4;
-b20: v39 = (u)zstrcmp;
- v40 = *(u*)(vargv + vi * 8);
+b22: v39 = (u)zstrcmp;
+ v40 = *(u*)(vargv + vi * 8UL);
v41 = (u)"-C";
v42 = ((u(*)())v39)(v40, v41);
if (!v42) goto b31;
- v38 = 0;
-b32: if (!v38) goto b27;
- vi = vi + 1;
- if ((s)vi < (s)vargc) goto b34;
+ v38 = 0UL;
+b32: if (!v38) goto b29;
+ vi = vi + 1UL;
+ if ((s)vi < (s)vargc) goto b36;
v43 = (u)zdie;
v44 = (u)"invalid -o at end of argument list";
v45 = ((u(*)())v43)(v44);
-b34: vcout_filename = *(u*)(vargv + vi * 8);
- vi = vi + 1;
+ v45;
+b34: vcout_filename = *(u*)(vargv + vi * 8UL);
+ vi = vi + 1UL;
goto b4;
-b27: v47 = (u)zstrcmp;
- v48 = *(u*)(vargv + vi * 8);
+b36: goto b34;
+b29: v47 = (u)zstrcmp;
+ v48 = *(u*)(vargv + vi * 8UL);
v49 = (u)"-G";
v50 = ((u(*)())v47)(v48, v49);
if (!v50) goto b42;
- v46 = 0;
-b43: if (!v46) goto b38;
- vi = vi + 1;
- if ((s)vi < (s)vargc) goto b45;
+ v46 = 0UL;
+b43: if (!v46) goto b40;
+ vi = vi + 1UL;
+ if ((s)vi < (s)vargc) goto b47;
v51 = (u)zdie;
- v52 = (u)"invalid -P at end of argument list";
+ v52 = (u)"invalid -G at end of argument list";
v53 = ((u(*)())v51)(v52);
+ v53;
b45: v54 = (u)zopen_call_out;
v55 = vc;
- v56 = *(u*)(vargv + vi * 8);
+ v56 = *(u*)(vargv + vi * 8UL);
v57 = ((u(*)())v54)(v55, v56);
- vi = vi + 1;
+ v57;
+ vi = vi + 1UL;
goto b4;
-b38: v59 = (u)zstrcmp;
- v60 = *(u*)(vargv + vi * 8);
+b47: goto b45;
+b40: v59 = (u)zstrcmp;
+ v60 = *(u*)(vargv + vi * 8UL);
v61 = (u)"-n";
v62 = ((u(*)())v59)(v60, v61);
if (!v62) goto b54;
- v58 = 0;
-b55: if (!v58) goto b50;
- vi = vi + 1;
- if ((s)vi < (s)vargc) goto b57;
+ v58 = 0UL;
+b55: if (!v58) goto b52;
+ vi = vi + 1UL;
+ if ((s)vi < (s)vargc) goto b59;
v63 = (u)zdie;
- v64 = (u)"invalid -P at end of argument list";
+ v64 = (u)"invalid -n at end of argument list";
v65 = ((u(*)())v63)(v64);
+ v65;
b57: v66 = (u)zopen_lines_out;
v67 = vc;
- v68 = *(u*)(vargv + vi * 8);
+ v68 = *(u*)(vargv + vi * 8UL);
v69 = ((u(*)())v66)(v67, v68);
- vi = vi + 1;
+ v69;
+ vi = vi + 1UL;
goto b4;
-b50: if ((u)*(b*)*(u*)(vargv + vi * 8) != 45) goto b62;
+b59: goto b57;
+b52: if ((u)*(b*)(*(u*)(vargv + vi * 8UL) + 0UL * 1UL) != 45UL) goto b64;
v70 = (u)zdie;
v71 = (u)"invalid argument";
v72 = ((u(*)())v70)(v71);
+ v72;
b62: v73 = (u)zalloc;
v74 = (u)&va;
- v75 = 16;
+ v75 = 16UL;
v76 = ((u(*)())v73)(v74, v75);
vtmp = v76;
- *(u*)vtmp = 0;
- *(u*)(vtmp + 8) = *(u*)(vargv + vi * 8);
+ *(u*)(vtmp + 0UL) = 0UL;
+ *(u*)(vtmp + 8UL) = *(u*)(vargv + vi * 8UL);
*(u*)vlink = vtmp;
- vlink = vtmp;
- vi = vi + 1;
+ vlink = vtmp + 0UL;
+ vi = vi + 1UL;
goto b4;
-b54: v58 = 1;
+b64: goto b62;
+b54: v58 = 1UL;
goto b55;
-b42: v46 = 1;
+b42: v46 = 1UL;
goto b43;
-b31: v38 = 1;
+b31: v38 = 1UL;
goto b32;
-b24: v33 = 1;
+b24: v33 = 1UL;
goto b25;
-b13: v25 = 1;
+b13: v25 = 1UL;
goto b14;
}
u zmake_tag(u vc, u vsuffix, u vsuffix_len) {
@@ -20700,15 +23118,15 @@ u zmake_tag(u vc, u vsuffix, u vsuffix_len) {
u v21 = 0;
u v22 = 0;
u v23 = 0;
- vprefix = *(u*)(vc + 32);
+ vprefix = *(u*)(vc + 32UL);
v7 = (u)zstrlen;
v8 = vprefix;
v9 = ((u(*)())v7)(v8);
vprefix_len = v9;
vlen = vprefix_len + vsuffix_len;
v10 = (u)zalloc;
- v11 = *(u*)vc;
- v12 = vlen + 1;
+ v11 = *(u*)(vc + 0UL);
+ v12 = vlen + 1UL;
v13 = ((u(*)())v10)(v11, v12);
vresult = v13;
v14 = (u)zmemcpy;
@@ -20716,12 +23134,14 @@ u zmake_tag(u vc, u vsuffix, u vsuffix_len) {
v16 = vprefix;
v17 = vprefix_len;
v18 = ((u(*)())v14)(v15, v16, v17);
+ v18;
v19 = (u)zmemcpy;
- v20 = vresult + vprefix_len;
+ v20 = vresult + vprefix_len * 1UL;
v21 = vsuffix;
v22 = vsuffix_len;
v23 = ((u(*)())v19)(v20, v21, v22);
- *(b*)(vresult + vlen) = 0;
+ v23;
+ *(b*)(vresult + vlen * 1UL) = 0UL;
return vresult;
}
u zmark_func_used(u vc, u vd, u vv) {
@@ -20756,58 +23176,65 @@ u zmark_func_used(u vc, u vd, u vv) {
u v31 = 0;
u v32 = 0;
u v33 = 0;
- if (!vd) goto b1;
+ if (!vd) goto b3;
v4 = (u)zfind;
v5 = vc;
- v6 = *(u*)(vd + 32);
- v7 = *(u*)(vv + 32);
- v8 = 1;
+ v6 = *(u*)(vd + 32UL);
+ v7 = *(u*)(vv + 32UL);
+ v8 = 1UL;
v9 = ((u(*)())v4)(v5, v6, v7, v8);
vedge = v9;
- if (!*(u*)(vc + 80)) goto b9;
- if (!*(u*)(vedge + 56)) goto b13;
- v11 = 0;
+ if (!*(u*)(vc + 80UL)) goto b9;
+ if (!*(u*)(vedge + 56UL)) goto b13;
+ v11 = 0UL;
b14: if (!v11) goto b9;
- v10 = 1;
-b11: if (!v10) goto b5;
+ v10 = 1UL;
+b11: if (!v10) goto b7;
v12 = (u)zfputs;
- v13 = *(u*)(vc + 80);
- v14 = *(u*)(vd + 32);
+ v13 = *(u*)(vc + 80UL);
+ v14 = *(u*)(vd + 32UL);
v15 = ((u(*)())v12)(v13, v14);
+ v15;
v16 = (u)zfputs;
- v17 = *(u*)(vc + 80);
+ v17 = *(u*)(vc + 80UL);
v18 = (u)" -> ";
v19 = ((u(*)())v16)(v17, v18);
+ v19;
v20 = (u)zfputs;
- v21 = *(u*)(vc + 80);
- v22 = *(u*)(vv + 32);
+ v21 = *(u*)(vc + 80UL);
+ v22 = *(u*)(vv + 32UL);
v23 = ((u(*)())v20)(v21, v22);
+ v23;
v24 = (u)zfputs;
- v25 = *(u*)(vc + 80);
+ v25 = *(u*)(vc + 80UL);
v26 = (u)"\012";
v27 = ((u(*)())v24)(v25, v26);
-b5: *(u*)(vedge + 56) = 1;
+ v27;
+b5: *(u*)(vedge + 56UL) = 1UL;
v28 = (u)zfind;
v29 = vc;
- v30 = *(u*)(vv + 32);
- v31 = *(u*)(vd + 32);
- v32 = 1;
+ v30 = *(u*)(vv + 32UL);
+ v31 = *(u*)(vd + 32UL);
+ v32 = 1UL;
v33 = ((u(*)())v28)(v29, v30, v31, v32);
vedge = v33;
- *(u*)(vedge + 64) = 1;
-b1: if (!*(u*)(vv + 96)) goto b20;
- return 0;
-b20: *(u*)(vv + 96) = 1;
- *(u*)(vv + 48) = *(u*)(vc + 104);
- *(u*)(vc + 104) = vv;
- return 0;
-b9: v10 = 0;
+ *(u*)(vedge + 64UL) = 1UL;
+b1: if (!*(u*)(vv + 96UL)) goto b22;
+ return 0UL;
+b22: *(u*)(vv + 96UL) = 1UL;
+ *(u*)(vv + 48UL) = *(u*)(vc + 104UL);
+ *(u*)(vc + 104UL) = vv;
+ return 0UL;
+b7: goto b5;
+b9: v10 = 0UL;
goto b11;
-b13: v11 = 1;
+b13: v11 = 1UL;
goto b14;
+b3: goto b1;
}
u zmark_ir_expr(u vc, u vd, u vop) {
u vv = 0;
+ u vkind = 0;
u v5 = 0;
u v6 = 0;
u v7 = 0;
@@ -20832,49 +23259,55 @@ u zmark_ir_expr(u vc, u vd, u vop) {
u v26 = 0;
u v27 = 0;
u v28 = 0;
- if (*(u*)vop != 2) goto b1;
+ if (*(u*)(vop + 0UL) != 2UL) goto b3;
v5 = (u)zfind;
v6 = vc;
- v7 = *(u*)(vop + 32);
- v8 = 0;
- v9 = 0;
+ v7 = *(u*)(vop + 32UL);
+ v8 = 0UL;
+ v9 = 0UL;
v10 = ((u(*)())v5)(v6, v7, v8, v9);
vv = v10;
if (!vv) goto b13;
- v12 = 0;
+ v12 = 0UL;
b14: if (!v12) goto b9;
- v11 = 1;
-b11: if (!v11) goto b5;
- return 0;
-b5: v14 = (u)zmark_func_used;
+ v11 = 1UL;
+b11: if (!v11) goto b7;
+ return 0UL;
+b7: v14 = (u)zmark_func_used;
v15 = vc;
v16 = vd;
v17 = vv;
v18 = ((u(*)())v14)(v15, v16, v17);
-b1: if (!*(u*)(vop + 8)) goto b20;
+ v18;
+b1: if (!*(u*)(vop + 8UL)) goto b22;
v19 = (u)zmark_ir_expr;
v20 = vc;
v21 = vd;
- v22 = *(u*)(vop + 8);
+ v22 = *(u*)(vop + 8UL);
v23 = ((u(*)())v19)(v20, v21, v22);
-b20: if (!*(u*)(vop + 16)) goto b24;
+ v23;
+b20: if (!*(u*)(vop + 16UL)) goto b26;
v24 = (u)zmark_ir_expr;
v25 = vc;
v26 = vd;
- v27 = *(u*)(vop + 16);
+ v27 = *(u*)(vop + 16UL);
v28 = ((u(*)())v24)(v25, v26, v27);
-b24: return 0;
-b9: if (!*(u*)(vv + 72)) goto b17;
- v13 = 0;
+ v28;
+b24: return 0UL;
+b26: goto b24;
+b22: goto b20;
+b9: if (!*(u*)(vv + 72UL)) goto b17;
+ v13 = 0UL;
b18: if (!v13) goto b15;
- v11 = 1;
+ v11 = 1UL;
goto b11;
-b15: v11 = 0;
+b15: v11 = 0UL;
goto b11;
-b17: v13 = 1;
+b17: v13 = 1UL;
goto b18;
-b13: v12 = 1;
+b13: v12 = 1UL;
goto b14;
+b3: goto b1;
}
u zmark_ir_used(u vc, u vd) {
u vic = 0;
@@ -20886,63 +23319,65 @@ u zmark_ir_used(u vc, u vd) {
u v8 = 0;
u v9 = 0;
u v10 = 0;
- vic = *(u*)(vd + 104);
- vi = 0;
-b1: if (vi != *(u*)(vic + 72)) goto b3;
- return 0;
-b3: vib = *(u*)(*(u*)(vic + 64) + vi * 8);
- vj = 0;
-b6: if (vj != *(u*)(vib + 16)) goto b8;
- vi = vi + 1;
+ vic = *(u*)(vd + 104UL);
+ vi = 0UL;
+b1: if (vi != *(u*)(vic + 72UL)) goto b5;
+ return 0UL;
+b5: vib = *(u*)(*(u*)(vic + 64UL) + vi * 8UL);
+ vj = 0UL;
+b6: if (vj != *(u*)(vib + 16UL)) goto b10;
+ vi = vi + 1UL;
goto b1;
-b8: v6 = (u)zmark_ir_expr;
+b10: v6 = (u)zmark_ir_expr;
v7 = vc;
v8 = vd;
- v9 = *(u*)(*(u*)(vib + 8) + vj * 8);
+ v9 = *(u*)(*(u*)(vib + 8UL) + vj * 8UL);
v10 = ((u(*)())v6)(v7, v8, v9);
- vj = vj + 1;
+ v10;
+ vj = vj + 1UL;
goto b6;
}
u zmemcmp(u va, u vb, u vn) {
u vi = 0;
- vi = 0;
-b1: if (vi != vn) goto b3;
- return 0;
-b3: if ((s)(u)*(b*)(va + vi) <= (s)(u)*(b*)(vb + vi)) goto b6;
- return 1;
-b6: if ((s)(u)*(b*)(va + vi) >= (s)(u)*(b*)(vb + vi)) goto b9;
+ vi = 0UL;
+b1: if (vi != vn) goto b5;
+ return 0UL;
+b5: if ((s)(u)*(b*)(va + vi * 1UL) <= (s)(u)*(b*)(vb + vi * 1UL)) goto b8;
+ return 1UL;
+b8: if ((s)(u)*(b*)(va + vi * 1UL) >= (s)(u)*(b*)(vb + vi * 1UL)) goto b11;
return -1UL;
-b9: vi = vi + 1;
+b11: vi = vi + 1UL;
goto b1;
}
u zmemcpy(u vdest, u vsrc, u vsize) {
u vi = 0;
- if ((s)vsize >= (s)0) goto b1;
- return 0;
-b1: if ((s)vsrc <= (s)vdest) goto b6;
- vi = 0;
-b7: if (vi != vsize) goto b9;
-b4: return 0;
-b9: *(b*)(vdest + vi) = (u)*(b*)(vsrc + vi);
- vi = vi + 1;
+ if ((s)vsize >= (s)0UL) goto b3;
+ return 0UL;
+b3: if ((s)vsrc <= (s)vdest) goto b6;
+ vi = 0UL;
+b7: if (vi != vsize) goto b11;
+b4: return 0UL;
+b11: *(b*)(vdest + vi * 1UL) = (u)*(b*)(vsrc + vi * 1UL);
+ vi = vi + 1UL;
goto b7;
-b6: if ((s)vsrc >= (s)vdest) goto b4;
+b6: if ((s)vsrc >= (s)vdest) goto b13;
vi = vsize;
-b14: if (vi != 0) goto b16;
+b14: if (vi != 0UL) goto b18;
goto b4;
-b16: vi = vi - 1;
- *(b*)(vdest + vi) = (u)*(b*)(vsrc + vi);
+b18: vi = vi - 1UL;
+ *(b*)(vdest + vi * 1UL) = (u)*(b*)(vsrc + vi * 1UL);
goto b14;
+b13: goto b4;
}
u zmemset(u vdest, u vc, u vsize) {
u vi = 0;
- if ((s)vsize >= (s)0) goto b1;
- return 0;
-b1: vi = 0;
-b4: if (vi != vsize) goto b6;
- return 0;
-b6: *(b*)(vdest + vi) = vc;
- vi = vi + 1;
+ if ((s)vsize >= (s)0UL) goto b3;
+ return 0UL;
+b3: vi = 0UL;
+b4: if (vi != vsize) goto b8;
+ return 0UL;
+b8: *(b*)(vdest + vi * 1UL) = vc;
+ vi = vi + 1UL;
goto b4;
}
u zmkirarg(u vic, u vn, u va) {
@@ -20955,12 +23390,12 @@ u zmkirarg(u vic, u vn, u va) {
u v9 = 0;
v4 = (u)zmkirop;
v5 = vic;
- v6 = 8;
+ v6 = 8UL;
v7 = va;
- v8 = 0;
+ v8 = 0UL;
v9 = ((u(*)())v4)(v5, v6, v7, v8);
vo = v9;
- *(u*)(vo + 24) = vn;
+ *(u*)(vo + 24UL) = vn;
return vo;
}
u zmkirblock(u vic) {
@@ -20978,38 +23413,39 @@ u zmkirblock(u vic) {
u v12 = 0;
u v13 = 0;
u v14 = 0;
- if (*(u*)(vic + 72) != *(u*)(vic + 80)) goto b1;
- *(u*)(vic + 80) = *(u*)(vic + 80) * 2 + 16;
+ if (*(u*)(vic + 72UL) != *(u*)(vic + 80UL)) goto b3;
+ *(u*)(vic + 80UL) = *(u*)(vic + 80UL) * 2UL + 16UL;
v4 = (u)zalloc;
- v5 = *(u*)(vic + 16);
- v6 = 8 * *(u*)(vic + 80);
+ v5 = *(u*)(vic + 16UL);
+ v6 = 8UL * *(u*)(vic + 80UL);
v7 = ((u(*)())v4)(v5, v6);
vtmp = v7;
- vi = 0;
-b5: if (vi != *(u*)(vic + 72)) goto b7;
- *(u*)(vic + 64) = vtmp;
+ vi = 0UL;
+b5: if (vi != *(u*)(vic + 72UL)) goto b9;
+ *(u*)(vic + 64UL) = vtmp;
b1: v8 = (u)zalloc;
- v9 = *(u*)(vic + 16);
- v10 = 72;
+ v9 = *(u*)(vic + 16UL);
+ v10 = 88UL;
v11 = ((u(*)())v8)(v9, v10);
vb = v11;
- *(u*)vb = *(u*)(vic + 72);
+ *(u*)(vb + 0UL) = *(u*)(vic + 72UL);
v12 = (u)zmklabel;
- v13 = *(u*)(vic + 8);
+ v13 = *(u*)(vic + 8UL);
v14 = ((u(*)())v12)(v13);
- *(u*)(vb + 56) = v14;
- *(u*)(vb + 8) = 0;
- *(u*)(vb + 16) = 0;
- *(u*)(vb + 24) = 0;
- *(u*)(vb + 32) = 0;
- *(u*)(vb + 40) = 0;
- *(u*)(vb + 48) = 0;
- *(u*)(*(u*)(vic + 64) + *(u*)(vic + 72) * 8) = vb;
- *(u*)(vic + 72) = *(u*)(vic + 72) + 1;
+ *(u*)(vb + 72UL) = v14;
+ *(u*)(vb + 8UL) = 0UL;
+ *(u*)(vb + 16UL) = 0UL;
+ *(u*)(vb + 24UL) = 0UL;
+ *(u*)(vb + 32UL) = 0UL;
+ *(u*)(vb + 56UL) = 0UL;
+ *(u*)(vb + 64UL) = 0UL;
+ *(u*)(*(u*)(vic + 64UL) + *(u*)(vic + 72UL) * 8UL) = vb;
+ *(u*)(vic + 72UL) = *(u*)(vic + 72UL) + 1UL;
return vb;
-b7: *(u*)(vtmp + vi * 8) = *(u*)(*(u*)(vic + 64) + vi * 8);
- vi = vi + 1;
+b9: *(u*)(vtmp + vi * 8UL) = *(u*)(*(u*)(vic + 64UL) + vi * 8UL);
+ vi = vi + 1UL;
goto b5;
+b3: goto b1;
}
u zmkirconst(u vic, u vn) {
u vo = 0;
@@ -21021,12 +23457,12 @@ u zmkirconst(u vic, u vn) {
u v8 = 0;
v3 = (u)zmkirop;
v4 = vic;
- v5 = 3;
- v6 = 0;
- v7 = 0;
+ v5 = 3UL;
+ v6 = 0UL;
+ v7 = 0UL;
v8 = ((u(*)())v3)(v4, v5, v6, v7);
vo = v8;
- *(u*)(vo + 24) = vn;
+ *(u*)(vo + 24UL) = vn;
return vo;
}
u zmkirfold(u vic, u vs, u vn) {
@@ -21039,15 +23475,15 @@ u zmkirfold(u vic, u vs, u vn) {
u v9 = 0;
v4 = (u)zmkirop;
v5 = vic;
- v6 = 3;
- v7 = 0;
- v8 = 0;
+ v6 = 3UL;
+ v7 = 0UL;
+ v8 = 0UL;
v9 = ((u(*)())v4)(v5, v6, v7, v8);
vo = v9;
- *(u*)(vo + 64) = *(u*)(vs + 64);
- *(u*)(vo + 72) = *(u*)(vs + 72);
- *(u*)(vo + 80) = *(u*)(vs + 80);
- *(u*)(vo + 24) = vn;
+ *(u*)(vo + 64UL) = *(u*)(vs + 64UL);
+ *(u*)(vo + 72UL) = *(u*)(vs + 72UL);
+ *(u*)(vo + 80UL) = *(u*)(vs + 80UL);
+ *(u*)(vo + 24UL) = vn;
return vo;
}
u zmkirfunc(u vc, u vname) {
@@ -21060,18 +23496,19 @@ u zmkirfunc(u vc, u vname) {
u v8 = 0;
u v9 = 0;
v3 = (u)zalloc;
- v4 = *(u*)vc;
- v5 = 144;
+ v4 = *(u*)(vc + 0UL);
+ v5 = 160UL;
v6 = ((u(*)())v3)(v4, v5);
vic = v6;
- *(u*)vic = vc;
- *(u*)(vic + 16) = *(u*)vc;
- *(u*)(vic + 8) = *(u*)(vc + 48);
+ *(u*)(vic + 0UL) = vc;
+ *(u*)(vic + 16UL) = *(u*)(vc + 0UL);
+ *(u*)(vic + 8UL) = *(u*)(vc + 48UL);
v7 = (u)zmkirblock;
v8 = vic;
v9 = ((u(*)())v7)(v8);
- *(u*)(vic + 88) = *(u*)*(u*)(vic + 64);
- *(u*)(vic + 24) = vname;
+ v9;
+ *(u*)(vic + 104UL) = *(u*)(*(u*)(vic + 64UL) + 0UL * 8UL);
+ *(u*)(vic + 24UL) = vname;
return vic;
}
u zmkirfuncref(u vic, u vname) {
@@ -21087,16 +23524,16 @@ u zmkirfuncref(u vic, u vname) {
u v11 = 0;
v3 = (u)zmkirop;
v4 = vic;
- v5 = 2;
- v6 = 0;
- v7 = 0;
+ v5 = 2UL;
+ v6 = 0UL;
+ v7 = 0UL;
v8 = ((u(*)())v3)(v4, v5, v6, v7);
vo = v8;
- *(u*)(vo + 32) = vname;
+ *(u*)(vo + 32UL) = vname;
v9 = (u)zstrlen;
v10 = vname;
v11 = ((u(*)())v9)(v10);
- *(u*)(vo + 40) = v11;
+ *(u*)(vo + 40UL) = v11;
return vo;
}
u zmkirop(u vic, u vkind, u va, u vb) {
@@ -21106,16 +23543,16 @@ u zmkirop(u vic, u vkind, u va, u vb) {
u v7 = 0;
u v8 = 0;
v5 = (u)zalloc;
- v6 = *(u*)(vic + 16);
- v7 = 88;
+ v6 = *(u*)(vic + 16UL);
+ v7 = 88UL;
v8 = ((u(*)())v5)(v6, v7);
vo = v8;
- *(u*)vo = vkind;
- *(u*)(vo + 8) = va;
- *(u*)(vo + 16) = vb;
- *(u*)(vo + 64) = *(u*)(*(u*)vic + 24);
- *(u*)(vo + 72) = *(u*)(*(u*)vic + 32);
- *(u*)(vo + 80) = *(u*)(*(u*)vic + 40);
+ *(u*)(vo + 0UL) = vkind;
+ *(u*)(vo + 8UL) = va;
+ *(u*)(vo + 16UL) = vb;
+ *(u*)(vo + 64UL) = *(u*)(*(u*)(vic + 0UL) + 24UL);
+ *(u*)(vo + 72UL) = *(u*)(*(u*)(vic + 0UL) + 32UL);
+ *(u*)(vo + 80UL) = *(u*)(*(u*)(vic + 0UL) + 40UL);
return vo;
}
u zmkirretval(u vic, u va, u vt) {
@@ -21128,12 +23565,12 @@ u zmkirretval(u vic, u va, u vt) {
u v9 = 0;
v4 = (u)zmkirop;
v5 = vic;
- v6 = 7;
+ v6 = 7UL;
v7 = va;
- v8 = 0;
+ v8 = 0UL;
v9 = ((u(*)())v4)(v5, v6, v7, v8);
vo = v9;
- *(u*)(vo + 48) = vt;
+ *(u*)(vo + 48UL) = vt;
return vo;
}
u zmkirstr(u vic, u vs, u vslen) {
@@ -21146,13 +23583,13 @@ u zmkirstr(u vic, u vs, u vslen) {
u v9 = 0;
v4 = (u)zmkirop;
v5 = vic;
- v6 = 4;
- v7 = 0;
- v8 = 0;
+ v6 = 4UL;
+ v7 = 0UL;
+ v8 = 0UL;
v9 = ((u(*)())v4)(v5, v6, v7, v8);
vo = v9;
- *(u*)(vo + 32) = vs;
- *(u*)(vo + 40) = vslen;
+ *(u*)(vo + 32UL) = vs;
+ *(u*)(vo + 40UL) = vslen;
return vo;
}
u zmkirtmp(u vic, u vt) {
@@ -21171,18 +23608,18 @@ u zmkirtmp(u vic, u vt) {
u v14 = 0;
v4 = (u)zmkirvar;
v5 = vic;
- v6 = 0;
+ v6 = 0UL;
v7 = vt;
v8 = ((u(*)())v4)(v5, v6, v7);
vv = v8;
v9 = (u)zmkirop;
v10 = vic;
- v11 = 0;
- v12 = 0;
- v13 = 0;
+ v11 = 0UL;
+ v12 = 0UL;
+ v13 = 0UL;
v14 = ((u(*)())v9)(v10, v11, v12, v13);
vo = v14;
- *(u*)(vo + 24) = *(u*)(vv + 32);
+ *(u*)(vo + 24UL) = *(u*)(vv + 32UL);
return vo;
}
u zmkirvar(u vic, u vname, u vt) {
@@ -21197,31 +23634,32 @@ u zmkirvar(u vic, u vname, u vt) {
u v11 = 0;
u v12 = 0;
u v13 = 0;
- if (*(u*)(vic + 120) != *(u*)(vic + 128)) goto b1;
- *(u*)(vic + 128) = *(u*)(vic + 128) * 2 + 16;
+ if (*(u*)(vic + 136UL) != *(u*)(vic + 144UL)) goto b3;
+ *(u*)(vic + 144UL) = *(u*)(vic + 144UL) * 2UL + 16UL;
v6 = (u)zalloc;
- v7 = *(u*)(vic + 16);
- v8 = 8 * *(u*)(vic + 128);
+ v7 = *(u*)(vic + 16UL);
+ v8 = 8UL * *(u*)(vic + 144UL);
v9 = ((u(*)())v6)(v7, v8);
vtmp = v9;
- vi = 0;
-b5: if (vi != *(u*)(vic + 120)) goto b7;
- *(u*)(vic + 112) = vtmp;
-b1: vi = *(u*)(vic + 120);
+ vi = 0UL;
+b5: if (vi != *(u*)(vic + 136UL)) goto b9;
+ *(u*)(vic + 128UL) = vtmp;
+b1: vi = *(u*)(vic + 136UL);
v10 = (u)zalloc;
- v11 = *(u*)(vic + 16);
- v12 = 56;
+ v11 = *(u*)(vic + 16UL);
+ v12 = 72UL;
v13 = ((u(*)())v10)(v11, v12);
vv = v13;
- *(u*)(vv + 32) = vi;
- *(u*)vv = vname;
- *(u*)(vv + 24) = vt;
- *(u*)(*(u*)(vic + 112) + vi * 8) = vv;
- *(u*)(vic + 120) = *(u*)(vic + 120) + 1;
+ *(u*)(vv + 32UL) = vi;
+ *(u*)(vv + 0UL) = vname;
+ *(u*)(vv + 24UL) = vt;
+ *(u*)(*(u*)(vic + 128UL) + vi * 8UL) = vv;
+ *(u*)(vic + 136UL) = *(u*)(vic + 136UL) + 1UL;
return vv;
-b7: *(u*)(vtmp + vi * 8) = *(u*)(*(u*)(vic + 112) + vi * 8);
- vi = vi + 1;
+b9: *(u*)(vtmp + vi * 8UL) = *(u*)(*(u*)(vic + 128UL) + vi * 8UL);
+ vi = vi + 1UL;
goto b5;
+b3: goto b1;
}
u zmkirvarop(u vic, u vname) {
u viv = 0;
@@ -21247,22 +23685,24 @@ u zmkirvarop(u vic, u vname) {
v7 = ((u(*)())v4)(v5, v6);
viv = *(u*)v7;
if (!viv) goto b6;
- v8 = 0;
-b7: if (!v8) goto b2;
+ v8 = 0UL;
+b7: if (!v8) goto b4;
v9 = (u)zcdie;
- v10 = *(u*)vic;
+ v10 = *(u*)(vic + 0UL);
v11 = (u)"no such variable";
v12 = ((u(*)())v9)(v10, v11);
+ v12;
b2: v13 = (u)zmkirop;
v14 = vic;
- v15 = 0;
- v16 = 0;
- v17 = 0;
+ v15 = 0UL;
+ v16 = 0UL;
+ v17 = 0UL;
v18 = ((u(*)())v13)(v14, v15, v16, v17);
vo = v18;
- *(u*)(vo + 24) = *(u*)(viv + 32);
+ *(u*)(vo + 24UL) = *(u*)(viv + 32UL);
return vo;
-b6: v8 = 1;
+b4: goto b2;
+b6: v8 = 1UL;
goto b7;
}
u zmklabel(u vc) {
@@ -21272,13 +23712,13 @@ u zmklabel(u vc) {
u v4 = 0;
u v5 = 0;
v2 = (u)zalloc;
- v3 = *(u*)vc;
- v4 = 24;
+ v3 = *(u*)(vc + 0UL);
+ v4 = 24UL;
v5 = ((u(*)())v2)(v3, v4);
vl = v5;
- *(u*)vl = 0;
- *(u*)(vl + 8) = 0;
- *(u*)(vl + 16) = 0;
+ *(u*)(vl + 0UL) = 0UL;
+ *(u*)(vl + 8UL) = 0UL;
+ *(u*)(vl + 16UL) = 0UL;
return vl;
}
u zmknode(u vc, u vkind, u va, u vb) {
@@ -21292,23 +23732,24 @@ u zmknode(u vc, u vkind, u va, u vb) {
u v11 = 0;
u v12 = 0;
v5 = (u)zalloc;
- v6 = *(u*)vc;
- v7 = 72;
+ v6 = *(u*)(vc + 0UL);
+ v7 = 72UL;
v8 = ((u(*)())v5)(v6, v7);
vret = v8;
- *(u*)vret = vkind;
- *(u*)(vret + 8) = va;
- *(u*)(vret + 16) = vb;
- *(u*)(vret + 24) = 0;
- *(u*)(vret + 32) = 0;
- *(u*)(vret + 40) = 0;
- *(u*)(vret + 48) = 0;
- *(u*)(vret + 56) = 0;
- *(u*)(vret + 64) = 0;
+ *(u*)(vret + 0UL) = vkind;
+ *(u*)(vret + 8UL) = va;
+ *(u*)(vret + 16UL) = vb;
+ *(u*)(vret + 24UL) = 0UL;
+ *(u*)(vret + 32UL) = 0UL;
+ *(u*)(vret + 40UL) = 0UL;
+ *(u*)(vret + 48UL) = 0UL;
+ *(u*)(vret + 56UL) = 0UL;
+ *(u*)(vret + 64UL) = 0UL;
v9 = (u)zfillpos;
v10 = vc;
v11 = vret;
v12 = ((u(*)())v9)(v10, v11);
+ v12;
return vret;
}
u zmknode0(u vc, u vkind) {
@@ -21321,8 +23762,8 @@ u zmknode0(u vc, u vkind) {
v2 = (u)zmknode;
v3 = vc;
v4 = vkind;
- v5 = 0;
- v6 = 0;
+ v5 = 0UL;
+ v6 = 0UL;
v7 = ((u(*)())v2)(v3, v4, v5, v6);
return v7;
}
@@ -21337,7 +23778,7 @@ u zmknode1(u vc, u vkind, u va) {
v4 = vc;
v5 = vkind;
v6 = va;
- v7 = 0;
+ v7 = 0UL;
v8 = ((u(*)())v3)(v4, v5, v6, v7);
return v8;
}
@@ -21348,14 +23789,14 @@ u zmktype(u vc, u vkind, u va, u vb, u vst) {
u v8 = 0;
u v9 = 0;
v6 = (u)zalloc;
- v7 = *(u*)vc;
- v8 = 32;
+ v7 = *(u*)(vc + 0UL);
+ v8 = 32UL;
v9 = ((u(*)())v6)(v7, v8);
vt = v9;
- *(u*)vt = vkind;
- *(u*)(vt + 8) = vst;
- *(u*)(vt + 16) = va;
- *(u*)(vt + 24) = vb;
+ *(u*)(vt + 0UL) = vkind;
+ *(u*)(vt + 8UL) = vst;
+ *(u*)(vt + 16UL) = va;
+ *(u*)(vt + 24UL) = vb;
return vt;
}
u zmktype0(u vc, u vkind) {
@@ -21369,9 +23810,9 @@ u zmktype0(u vc, u vkind) {
v2 = (u)zmktype;
v3 = vc;
v4 = vkind;
- v5 = 0;
- v6 = 0;
- v7 = 0;
+ v5 = 0UL;
+ v6 = 0UL;
+ v7 = 0UL;
v8 = ((u(*)())v2)(v3, v4, v5, v6, v7);
return v8;
}
@@ -21387,8 +23828,8 @@ u zmktype1(u vc, u vkind, u va) {
v4 = vc;
v5 = vkind;
v6 = va;
- v7 = 0;
- v8 = 0;
+ v7 = 0UL;
+ v8 = 0UL;
v9 = ((u(*)())v3)(v4, v5, v6, v7, v8);
return v9;
}
@@ -21405,7 +23846,7 @@ u zmktype2(u vc, u vkind, u va, u vb) {
v6 = vkind;
v7 = va;
v8 = vb;
- v9 = 0;
+ v9 = 0UL;
v10 = ((u(*)())v4)(v5, v6, v7, v8, v9);
return v10;
}
@@ -21419,9 +23860,9 @@ u zmktype_struct(u vc, u vst) {
u v8 = 0;
v2 = (u)zmktype;
v3 = vc;
- v4 = 7;
- v5 = 0;
- v6 = 0;
+ v4 = 7UL;
+ v5 = 0UL;
+ v6 = 0UL;
v7 = vst;
v8 = ((u(*)())v2)(v3, v4, v5, v6, v7);
return v8;
@@ -21436,9 +23877,9 @@ u zmktype_union(u vc, u vst) {
u v8 = 0;
v2 = (u)zmktype;
v3 = vc;
- v4 = 8;
- v5 = 0;
- v6 = 0;
+ v4 = 8UL;
+ v5 = 0UL;
+ v6 = 0UL;
v7 = vst;
v8 = ((u(*)())v2)(v3, v4, v5, v6, v7);
return v8;
@@ -21454,7 +23895,7 @@ u zmmap(u vaddr, u vlen, u vprot, u vflags, u vfd, u voff) {
u v13 = 0;
u v14 = 0;
v6 = (u)zsyscall;
- v7 = 9;
+ v7 = 9UL;
v8 = vaddr;
v9 = vlen;
v10 = vprot;
@@ -21469,132 +23910,132 @@ u znext_decl(u vc, u vd) {
u v3 = 0;
u v4 = 0;
v2 = (u)zrb_next;
- v3 = vd;
+ v3 = vd + 0UL;
v4 = ((u(*)())v2)(v3);
return v4;
}
u znode_to_str(u vkind) {
- if (vkind != 0) goto b1;
+ if (vkind != 0UL) goto b3;
return (u)"N_IDENT";
-b1: if (vkind != 1) goto b4;
+b3: if (vkind != 1UL) goto b6;
return (u)"N_NUM";
-b4: if (vkind != 2) goto b7;
+b6: if (vkind != 2UL) goto b9;
return (u)"N_CHAR";
-b7: if (vkind != 3) goto b10;
+b9: if (vkind != 3UL) goto b12;
return (u)"N_STR";
-b10: if (vkind != 4) goto b13;
+b12: if (vkind != 4UL) goto b15;
return (u)"N_NIL";
-b13: if (vkind != 5) goto b16;
+b15: if (vkind != 5UL) goto b18;
return (u)"N_STMTLIST";
-b16: if (vkind != 6) goto b19;
+b18: if (vkind != 6UL) goto b21;
return (u)"N_EXPRLIST";
-b19: if (vkind != 7) goto b22;
+b21: if (vkind != 7UL) goto b24;
return (u)"N_CALL";
-b22: if (vkind != 9) goto b25;
+b24: if (vkind != 9UL) goto b27;
return (u)"N_DOT";
-b25: if (vkind != 10) goto b28;
+b27: if (vkind != 10UL) goto b30;
return (u)"N_ARGLIST";
-b28: if (vkind != 11) goto b31;
+b30: if (vkind != 11UL) goto b33;
return (u)"N_FUNC";
-b31: if (vkind != 12) goto b34;
+b33: if (vkind != 12UL) goto b36;
return (u)"N_ARGDECL";
-b34: if (vkind != 13) goto b37;
+b36: if (vkind != 13UL) goto b39;
return (u)"N_FUNCDECL";
-b37: if (vkind != 14) goto b40;
+b39: if (vkind != 14UL) goto b42;
return (u)"N_PROGRAM";
-b40: if (vkind != 15) goto b43;
+b42: if (vkind != 15UL) goto b45;
return (u)"N_FUNCTYPE";
-b43: if (vkind != 16) goto b46;
+b45: if (vkind != 16UL) goto b48;
return (u)"N_PTRTYPE";
-b46: if (vkind != 17) goto b49;
+b48: if (vkind != 17UL) goto b51;
return (u)"N_STRUCT";
-b49: if (vkind != 18) goto b52;
+b51: if (vkind != 18UL) goto b54;
return (u)"N_UNION";
-b52: if (vkind != 19) goto b55;
+b54: if (vkind != 19UL) goto b57;
return (u)"N_MEMBERDECL";
-b55: if (vkind != 20) goto b58;
+b57: if (vkind != 20UL) goto b60;
return (u)"N_MEMBERLIST";
-b58: if (vkind != 21) goto b61;
+b60: if (vkind != 21UL) goto b63;
return (u)"N_CONDLIST";
-b61: if (vkind != 22) goto b64;
+b63: if (vkind != 22UL) goto b66;
return (u)"N_COND";
-b64: if (vkind != 23) goto b67;
+b66: if (vkind != 23UL) goto b69;
return (u)"N_ENUM";
-b67: if (vkind != 24) goto b70;
+b69: if (vkind != 24UL) goto b72;
return (u)"N_ENUMITEM";
-b70: if (vkind != 25) goto b73;
+b72: if (vkind != 25UL) goto b75;
return (u)"N_ENUMLIST";
-b73: if (vkind != 26) goto b76;
+b75: if (vkind != 26UL) goto b78;
return (u)"N_LOOP";
-b76: if (vkind != 27) goto b79;
+b78: if (vkind != 27UL) goto b81;
return (u)"N_BREAK";
-b79: if (vkind != 28) goto b82;
+b81: if (vkind != 28UL) goto b84;
return (u)"N_CONTINUE";
-b82: if (vkind != 29) goto b85;
+b84: if (vkind != 29UL) goto b87;
return (u)"N_RETURN";
-b85: if (vkind != 30) goto b88;
+b87: if (vkind != 30UL) goto b90;
return (u)"N_VARDECL";
-b88: if (vkind != 31) goto b91;
+b90: if (vkind != 31UL) goto b93;
return (u)"N_LABEL";
-b91: if (vkind != 32) goto b94;
+b93: if (vkind != 32UL) goto b96;
return (u)"N_GOTO";
-b94: if (vkind != 33) goto b97;
+b96: if (vkind != 33UL) goto b99;
return (u)"N_ASSIGN";
-b97: if (vkind != 34) goto b100;
+b99: if (vkind != 34UL) goto b102;
return (u)"N_SIZEOF";
-b100: if (vkind != 35) goto b103;
+b102: if (vkind != 35UL) goto b105;
return (u)"N_REF";
-b103: if (vkind != 36) goto b106;
+b105: if (vkind != 36UL) goto b108;
return (u)"N_DEREF";
-b106: if (vkind != 37) goto b109;
+b108: if (vkind != 37UL) goto b111;
return (u)"N_CAST";
-b109: if (vkind != 38) goto b112;
+b111: if (vkind != 38UL) goto b114;
return (u)"N_INDEX";
-b112: if (vkind != 39) goto b115;
+b114: if (vkind != 39UL) goto b117;
return (u)"N_LT";
-b115: if (vkind != 40) goto b118;
+b117: if (vkind != 40UL) goto b120;
return (u)"N_GT";
-b118: if (vkind != 41) goto b121;
+b120: if (vkind != 41UL) goto b123;
return (u)"N_LE";
-b121: if (vkind != 42) goto b124;
+b123: if (vkind != 42UL) goto b126;
return (u)"N_GE";
-b124: if (vkind != 43) goto b127;
+b126: if (vkind != 43UL) goto b129;
return (u)"N_EQ";
-b127: if (vkind != 44) goto b130;
+b129: if (vkind != 44UL) goto b132;
return (u)"N_NE";
-b130: if (vkind != 45) goto b133;
+b132: if (vkind != 45UL) goto b135;
return (u)"N_ADD";
-b133: if (vkind != 46) goto b136;
+b135: if (vkind != 46UL) goto b138;
return (u)"N_SUB";
-b136: if (vkind != 47) goto b139;
+b138: if (vkind != 47UL) goto b141;
return (u)"N_MUL";
-b139: if (vkind != 48) goto b142;
+b141: if (vkind != 48UL) goto b144;
return (u)"N_LSH";
-b142: if (vkind != 49) goto b145;
+b144: if (vkind != 49UL) goto b147;
return (u)"N_RSH";
-b145: if (vkind != 50) goto b148;
+b147: if (vkind != 50UL) goto b150;
return (u)"N_BNOT";
-b148: if (vkind != 51) goto b151;
+b150: if (vkind != 51UL) goto b153;
return (u)"N_BOR";
-b151: if (vkind != 52) goto b154;
+b153: if (vkind != 52UL) goto b156;
return (u)"N_BAND";
-b154: if (vkind != 53) goto b157;
+b156: if (vkind != 53UL) goto b159;
return (u)"N_AND";
-b157: if (vkind != 54) goto b160;
+b159: if (vkind != 54UL) goto b162;
return (u)"N_OR";
-b160: if (vkind != 55) goto b163;
+b162: if (vkind != 55UL) goto b165;
return (u)"N_XOR";
-b163: if (vkind != 56) goto b166;
+b165: if (vkind != 56UL) goto b168;
return (u)"N_NOT";
-b166: if (vkind != 57) goto b169;
+b168: if (vkind != 57UL) goto b171;
return (u)"N_POS";
-b169: if (vkind != 58) goto b172;
+b171: if (vkind != 58UL) goto b174;
return (u)"N_NEG";
-b172: if (vkind != 59) goto b175;
+b174: if (vkind != 59UL) goto b177;
return (u)"N_DIV";
-b175: if (vkind != 60) goto b178;
+b177: if (vkind != 60UL) goto b180;
return (u)"N_MOD";
-b178: return (u)"(invalid)";
+b180: return (u)"(invalid)";
}
u zopen(u vname, u vflags, u vmode) {
u v3 = 0;
@@ -21607,13 +24048,13 @@ u zopen(u vname, u vflags, u vmode) {
u v10 = 0;
u v11 = 0;
v3 = (u)zsyscall;
- v4 = 2;
+ v4 = 2UL;
v5 = vname;
v6 = vflags;
v7 = vmode;
- v8 = 0;
- v9 = 0;
- v10 = 0;
+ v8 = 0UL;
+ v9 = 0UL;
+ v10 = 0UL;
v11 = ((u(*)())v3)(v4, v5, v6, v7, v8, v9, v10);
return v11;
}
@@ -21633,21 +24074,23 @@ u zopen_call_out(u vc, u vfilename) {
u v14 = 0;
v3 = (u)zopen;
v4 = vfilename;
- v5 = 577;
- v6 = 438;
+ v5 = 64UL | 1UL | 512UL;
+ v6 = (6UL << 6UL) + (6UL << 3UL) + 6UL;
v7 = ((u(*)())v3)(v4, v5, v6);
vfd = v7;
- if ((s)vfd >= (s)0) goto b2;
+ if ((s)vfd >= (s)0UL) goto b4;
v8 = (u)zdie;
v9 = (u)"open_call_out: failed to open output";
v10 = ((u(*)())v8)(v9);
+ v10;
b2: v11 = (u)zfopen;
v12 = vfd;
- v13 = *(u*)vc;
+ v13 = *(u*)(vc + 0UL);
v14 = ((u(*)())v11)(v12, v13);
- *(u*)(vc + 80) = v14;
- *(u*)(*(u*)(vc + 80) + 56) = 1;
- return 0;
+ *(u*)(vc + 80UL) = v14;
+ *(u*)(*(u*)(vc + 80UL) + 56UL) = 1UL;
+ return 0UL;
+b4: goto b2;
}
u zopen_coutput(u vc, u vfilename) {
u vfd = 0;
@@ -21666,27 +24109,31 @@ u zopen_coutput(u vc, u vfilename) {
u v15 = 0;
u v16 = 0;
u v17 = 0;
- if (!*(u*)(vc + 72)) goto b1;
+ if (!*(u*)(vc + 72UL)) goto b3;
v3 = (u)zdie;
v4 = (u)"multiple output files";
v5 = ((u(*)())v3)(v4);
+ v5;
b1: v6 = (u)zopen;
v7 = vfilename;
- v8 = 577;
- v9 = 438;
+ v8 = 64UL | 1UL | 512UL;
+ v9 = (6UL << 6UL) + (6UL << 3UL) + 6UL;
v10 = ((u(*)())v6)(v7, v8, v9);
vfd = v10;
- if ((s)vfd >= (s)0) goto b6;
+ if ((s)vfd >= (s)0UL) goto b8;
v11 = (u)zdie;
v12 = (u)"open_coutput: failed to open output";
v13 = ((u(*)())v11)(v12);
+ v13;
b6: v14 = (u)zfopen;
v15 = vfd;
- v16 = *(u*)vc;
+ v16 = *(u*)(vc + 0UL);
v17 = ((u(*)())v14)(v15, v16);
- *(u*)(vc + 72) = v17;
- *(u*)(*(u*)(vc + 72) + 56) = 1;
- return 0;
+ *(u*)(vc + 72UL) = v17;
+ *(u*)(*(u*)(vc + 72UL) + 56UL) = 1UL;
+ return 0UL;
+b8: goto b6;
+b3: goto b1;
}
u zopen_lines_out(u vc, u vfilename) {
u vfd = 0;
@@ -21704,21 +24151,23 @@ u zopen_lines_out(u vc, u vfilename) {
u v14 = 0;
v3 = (u)zopen;
v4 = vfilename;
- v5 = 577;
- v6 = 438;
+ v5 = 64UL | 1UL | 512UL;
+ v6 = (6UL << 6UL) + (6UL << 3UL) + 6UL;
v7 = ((u(*)())v3)(v4, v5, v6);
vfd = v7;
- if ((s)vfd >= (s)0) goto b2;
+ if ((s)vfd >= (s)0UL) goto b4;
v8 = (u)zdie;
v9 = (u)"open_lines_out: failed to open output";
v10 = ((u(*)())v8)(v9);
+ v10;
b2: v11 = (u)zfopen;
v12 = vfd;
- v13 = *(u*)vc;
+ v13 = *(u*)(vc + 0UL);
v14 = ((u(*)())v11)(v12, v13);
- *(u*)(*(u*)(vc + 48) + 80) = v14;
- *(u*)(*(u*)(*(u*)(vc + 48) + 80) + 56) = 1;
- return 0;
+ *(u*)(*(u*)(vc + 48UL) + 80UL) = v14;
+ *(u*)(*(u*)(*(u*)(vc + 48UL) + 80UL) + 56UL) = 1UL;
+ return 0UL;
+b4: goto b2;
}
u zopen_output(u vc, u vfilename) {
u vfd = 0;
@@ -21740,30 +24189,35 @@ u zopen_output(u vc, u vfilename) {
u v18 = 0;
u v19 = 0;
u v20 = 0;
- if (!*(u*)(vc + 8)) goto b1;
+ if (!*(u*)(vc + 8UL)) goto b3;
v3 = (u)zdie;
v4 = (u)"multiple output files";
v5 = ((u(*)())v3)(v4);
+ v5;
b1: v6 = (u)zunlink;
v7 = vfilename;
v8 = ((u(*)())v6)(v7);
+ v8;
v9 = (u)zopen;
v10 = vfilename;
- v11 = 65;
- v12 = 511;
+ v11 = 64UL | 1UL;
+ v12 = (7UL << 6UL) + (7UL << 3UL) + 7UL;
v13 = ((u(*)())v9)(v10, v11, v12);
vfd = v13;
- if ((s)vfd >= (s)0) goto b7;
+ if ((s)vfd >= (s)0UL) goto b9;
v14 = (u)zdie;
v15 = (u)"failed to open output";
v16 = ((u(*)())v14)(v15);
+ v16;
b7: v17 = (u)zfopen;
v18 = vfd;
- v19 = *(u*)vc;
+ v19 = *(u*)(vc + 0UL);
v20 = ((u(*)())v17)(v18, v19);
- *(u*)(vc + 8) = v20;
- *(u*)(*(u*)(vc + 8) + 56) = 1;
- return 0;
+ *(u*)(vc + 8UL) = v20;
+ *(u*)(*(u*)(vc + 8UL) + 56UL) = 1UL;
+ return 0UL;
+b9: goto b7;
+b3: goto b1;
}
u zoutput_ir(u vc, u vd) {
u vic = 0;
@@ -21840,89 +24294,102 @@ u zoutput_ir(u vc, u vd) {
u v73 = 0;
u v74 = 0;
u v75 = 0;
- vic = *(u*)(vd + 104);
- *(u*)(*(u*)vic + 24) = *(u*)(vic + 32);
- *(u*)(*(u*)vic + 32) = *(u*)(vic + 40);
- *(u*)(*(u*)vic + 40) = *(u*)(vic + 48);
- *(u*)(*(u*)(vic + 8) + 88) = *(u*)(vic + 32);
- *(u*)(*(u*)(vic + 8) + 96) = *(u*)(vic + 40);
+ vic = *(u*)(vd + 104UL);
+ *(u*)(*(u*)(vic + 0UL) + 24UL) = *(u*)(vic + 32UL);
+ *(u*)(*(u*)(vic + 0UL) + 32UL) = *(u*)(vic + 40UL);
+ *(u*)(*(u*)(vic + 0UL) + 40UL) = *(u*)(vic + 48UL);
+ *(u*)(*(u*)(vic + 8UL) + 88UL) = *(u*)(vic + 32UL);
+ *(u*)(*(u*)(vic + 8UL) + 96UL) = *(u*)(vic + 40UL);
v3 = (u)zfixup_label;
- v4 = *(u*)(vc + 48);
- v5 = *(u*)(vd + 88);
+ v4 = *(u*)(vc + 48UL);
+ v5 = *(u*)(vd + 88UL);
v6 = ((u(*)())v3)(v4, v5);
+ v6;
v7 = (u)zadd_symbol;
- v8 = *(u*)(vc + 48);
- v9 = *(u*)(vd + 32);
- v10 = *(u*)(vd + 88);
+ v8 = *(u*)(vc + 48UL);
+ v9 = *(u*)(vd + 32UL);
+ v10 = *(u*)(vd + 88UL);
v11 = ((u(*)())v7)(v8, v9, v10);
+ v11;
v12 = (u)zstrcmp;
- v13 = *(u*)(vd + 32);
+ v13 = *(u*)(vd + 32UL);
v14 = (u)"_start";
v15 = ((u(*)())v12)(v13, v14);
- if (v15 != 0) goto b5;
+ if (v15 != 0UL) goto b5;
v16 = (u)zas_modrm;
- v17 = *(u*)(vc + 48);
- v18 = 139;
- v19 = 7;
- v20 = 4;
- v21 = 0;
- v22 = 0;
- v23 = 0;
+ v17 = *(u*)(vc + 48UL);
+ v18 = 139UL;
+ v19 = 7UL;
+ v20 = 4UL;
+ v21 = 0UL;
+ v22 = 0UL;
+ v23 = 0UL;
v24 = ((u(*)())v16)(v17, v18, v19, v20, v21, v22, v23);
+ v24;
v25 = (u)zas_modrm;
- v26 = *(u*)(vc + 48);
- v27 = 141;
- v28 = 6;
- v29 = 4;
- v30 = 0;
- v31 = 0;
- v32 = 8;
+ v26 = *(u*)(vc + 48UL);
+ v27 = 141UL;
+ v28 = 6UL;
+ v29 = 4UL;
+ v30 = 0UL;
+ v31 = 0UL;
+ v32 = 8UL;
v33 = ((u(*)())v25)(v26, v27, v28, v29, v30, v31, v32);
+ v33;
v34 = (u)zas_modrm;
- v35 = *(u*)(vc + 48);
- v36 = 141;
- v37 = 2;
- v38 = 6;
- v39 = 7;
- v40 = 8;
- v41 = 8;
+ v35 = *(u*)(vc + 48UL);
+ v36 = 141UL;
+ v37 = 2UL;
+ v38 = 6UL;
+ v39 = 7UL;
+ v40 = 8UL;
+ v41 = 8UL;
v42 = ((u(*)())v34)(v35, v36, v37, v38, v39, v40, v41);
+ v42;
v43 = (u)zas_opr;
- v44 = *(u*)(vc + 48);
- v45 = 80;
- v46 = 5;
+ v44 = *(u*)(vc + 48UL);
+ v45 = 80UL;
+ v46 = 5UL;
v47 = ((u(*)())v43)(v44, v45, v46);
+ v47;
b3: v55 = (u)zas_opr;
- v56 = *(u*)(vic + 8);
- v57 = 80;
- v58 = 5;
+ v56 = *(u*)(vic + 8UL);
+ v57 = 80UL;
+ v58 = 5UL;
v59 = ((u(*)())v55)(v56, v57, v58);
+ v59;
v60 = (u)zas_modrr;
- v61 = *(u*)(vic + 8);
- v62 = 139;
- v63 = 5;
- v64 = 4;
+ v61 = *(u*)(vic + 8UL);
+ v62 = 139UL;
+ v63 = 5UL;
+ v64 = 4UL;
v65 = ((u(*)())v60)(v61, v62, v63, v64);
+ v65;
v66 = (u)zoutput_irvars;
v67 = vic;
v68 = ((u(*)())v66)(v67);
+ v68;
v69 = (u)zoutput_irblock;
v70 = vic;
- v71 = *(u*)*(u*)(vic + 64);
+ v71 = *(u*)(*(u*)(vic + 64UL) + 0UL * 8UL);
v72 = ((u(*)())v69)(v70, v71);
+ v72;
v73 = (u)zirreset;
- v74 = *(u*)*(u*)(vic + 64);
+ v74 = *(u*)(*(u*)(vic + 64UL) + 0UL * 8UL);
v75 = ((u(*)())v73)(v74);
- return 0;
+ v75;
+ return 0UL;
b5: v48 = (u)zstrcmp;
- v49 = *(u*)(vd + 32);
+ v49 = *(u*)(vd + 32UL);
v50 = (u)"_kstart";
v51 = ((u(*)())v48)(v49, v50);
- if (v51 != 0) goto b3;
+ if (v51 != 0UL) goto b12;
v52 = (u)zemit_kstart;
- v53 = *(u*)(vc + 48);
+ v53 = *(u*)(vc + 48UL);
v54 = ((u(*)())v52)(v53);
+ v54;
goto b3;
+b12: goto b3;
}
u zoutput_irargs(u vic, u vb, u vo) {
u vi = 0;
@@ -21977,75 +24444,84 @@ u zoutput_irargs(u vic, u vb, u vo) {
u v52 = 0;
u v53 = 0;
u v54 = 0;
- vi = 0;
-b1: if (vi != *(u*)(vb + 16)) goto b3;
- return 0;
-b3: vop = *(u*)(*(u*)(vb + 8) + vi * 8);
- if (*(u*)vop != 8) goto b6;
+ vi = 0UL;
+b1: if (vi != *(u*)(vb + 16UL)) goto b5;
+ return 0UL;
+b5: vop = *(u*)(*(u*)(vb + 8UL) + vi * 8UL);
+ if (*(u*)(vop + 0UL) != 8UL) goto b8;
v5 = (u)zoutput_irexpr;
v6 = vic;
v7 = vb;
- v8 = *(u*)(vop + 8);
+ v8 = *(u*)(vop + 8UL);
v9 = ((u(*)())v5)(v6, v7, v8);
- if (*(u*)(vop + 24) != 0) goto b12;
+ v9;
+ if (*(u*)(vop + 24UL) != 0UL) goto b12;
v10 = (u)zas_modrr;
- v11 = *(u*)(vic + 8);
- v12 = 139;
- v13 = 7;
- v14 = 0;
+ v11 = *(u*)(vic + 8UL);
+ v12 = 139UL;
+ v13 = 7UL;
+ v14 = 0UL;
v15 = ((u(*)())v10)(v11, v12, v13, v14);
-b6: vi = vi + 1;
+ v15;
+b10:b6: vi = vi + 1UL;
goto b1;
-b12: if (*(u*)(vop + 24) != 1) goto b15;
+b12: if (*(u*)(vop + 24UL) != 1UL) goto b15;
v16 = (u)zas_modrr;
- v17 = *(u*)(vic + 8);
- v18 = 139;
- v19 = 6;
- v20 = 0;
+ v17 = *(u*)(vic + 8UL);
+ v18 = 139UL;
+ v19 = 6UL;
+ v20 = 0UL;
v21 = ((u(*)())v16)(v17, v18, v19, v20);
- goto b6;
-b15: if (*(u*)(vop + 24) != 2) goto b18;
+ v21;
+ goto b10;
+b15: if (*(u*)(vop + 24UL) != 2UL) goto b18;
v22 = (u)zas_modrr;
- v23 = *(u*)(vic + 8);
- v24 = 139;
- v25 = 2;
- v26 = 0;
+ v23 = *(u*)(vic + 8UL);
+ v24 = 139UL;
+ v25 = 2UL;
+ v26 = 0UL;
v27 = ((u(*)())v22)(v23, v24, v25, v26);
- goto b6;
-b18: if (*(u*)(vop + 24) != 3) goto b21;
+ v27;
+ goto b10;
+b18: if (*(u*)(vop + 24UL) != 3UL) goto b21;
v28 = (u)zas_modrr;
- v29 = *(u*)(vic + 8);
- v30 = 139;
- v31 = 1;
- v32 = 0;
+ v29 = *(u*)(vic + 8UL);
+ v30 = 139UL;
+ v31 = 1UL;
+ v32 = 0UL;
v33 = ((u(*)())v28)(v29, v30, v31, v32);
- goto b6;
-b21: if (*(u*)(vop + 24) != 4) goto b24;
+ v33;
+ goto b10;
+b21: if (*(u*)(vop + 24UL) != 4UL) goto b24;
v34 = (u)zas_modrr;
- v35 = *(u*)(vic + 8);
- v36 = 139;
- v37 = 8;
- v38 = 0;
+ v35 = *(u*)(vic + 8UL);
+ v36 = 139UL;
+ v37 = 8UL;
+ v38 = 0UL;
v39 = ((u(*)())v34)(v35, v36, v37, v38);
- goto b6;
-b24: if (*(u*)(vop + 24) != 5) goto b27;
+ v39;
+ goto b10;
+b24: if (*(u*)(vop + 24UL) != 5UL) goto b27;
v40 = (u)zas_modrr;
- v41 = *(u*)(vic + 8);
- v42 = 139;
- v43 = 9;
- v44 = 0;
+ v41 = *(u*)(vic + 8UL);
+ v42 = 139UL;
+ v43 = 9UL;
+ v44 = 0UL;
v45 = ((u(*)())v40)(v41, v42, v43, v44);
- goto b6;
+ v45;
+ goto b10;
b27: v46 = (u)zas_modrm;
- v47 = *(u*)(vic + 8);
- v48 = 137;
- v49 = 0;
- v50 = 4;
- v51 = 0;
- v52 = 0;
- v53 = (*(u*)(vop + 24) - 6) * 8;
+ v47 = *(u*)(vic + 8UL);
+ v48 = 137UL;
+ v49 = 0UL;
+ v50 = 4UL;
+ v51 = 0UL;
+ v52 = 0UL;
+ v53 = (*(u*)(vop + 24UL) - 6UL) * 8UL;
v54 = ((u(*)())v46)(v47, v48, v49, v50, v51, v52, v53);
- goto b6;
+ v54;
+ goto b10;
+b8: goto b6;
}
u zoutput_irblock(u vic, u vb) {
u vop = 0;
@@ -22064,32 +24540,93 @@ u zoutput_irblock(u vic, u vb) {
u v15 = 0;
u v16 = 0;
u v17 = 0;
- *(u*)(vb + 64) = 1;
- if (!*(u*)(vb + 32)) goto b5;
- v4 = 0;
-b6: if (!v4) goto b1;
+ *(u*)(vb + 80UL) = 1UL;
+ if (!*(u*)(vb + 32UL)) goto b5;
+ v4 = 0UL;
+b6: if (!v4) goto b3;
v5 = (u)zcdie;
- v6 = *(u*)vic;
+ v6 = *(u*)(vic + 0UL);
v7 = (u)"no return in function";
v8 = ((u(*)())v5)(v6, v7);
+ v8;
b1: v9 = (u)zfixup_label;
- v10 = *(u*)(vic + 8);
- v11 = *(u*)(vb + 56);
+ v10 = *(u*)(vic + 8UL);
+ v11 = *(u*)(vb + 72UL);
v12 = ((u(*)())v9)(v10, v11);
- vi = 0;
-b9: if (vi != *(u*)(vb + 16)) goto b11;
- return 0;
-b11: vop = *(u*)(*(u*)(vb + 8) + vi * 8);
+ v12;
+ vi = 0UL;
+b9: if (vi != *(u*)(vb + 16UL)) goto b13;
+ return 0UL;
+b13: vop = *(u*)(*(u*)(vb + 8UL) + vi * 8UL);
v13 = (u)zoutput_irstmt;
v14 = vic;
v15 = vb;
v16 = vop;
v17 = ((u(*)())v13)(v14, v15, v16);
- vi = vi + 1;
+ v17;
+ vi = vi + 1UL;
goto b9;
-b5: v4 = 1;
+b3: goto b1;
+b5: v4 = 1UL;
goto b6;
}
+u zoutput_ircall(u vic, u vb, u vo) {
+ u vd = 0;
+ u v4 = 0;
+ u v5 = 0;
+ u v6 = 0;
+ u v7 = 0;
+ u v8 = 0;
+ u v9 = 0;
+ u v10 = 0;
+ u v11 = 0;
+ u v12 = 0;
+ u v13 = 0;
+ u v14 = 0;
+ u v15 = 0;
+ u v16 = 0;
+ u v17 = 0;
+ u v18 = 0;
+ u v19 = 0;
+ u v20 = 0;
+ u v21 = 0;
+ v4 = (u)zfind;
+ v5 = *(u*)(vic + 0UL);
+ v6 = *(u*)(vo + 32UL);
+ v7 = 0UL;
+ v8 = 0UL;
+ v9 = ((u(*)())v4)(v5, v6, v7, v8);
+ vd = v9;
+ if (!vd) goto b10;
+ v11 = 0UL;
+b11: if (!v11) goto b6;
+ v10 = 1UL;
+b8: if (!v10) goto b4;
+ v13 = (u)zcdie;
+ v14 = *(u*)(vic + 0UL);
+ v15 = (u)"no such function";
+ v16 = ((u(*)())v13)(v14, v15);
+ v16;
+b2: v17 = (u)zas_jmp;
+ v18 = *(u*)(vic + 8UL);
+ v19 = 232UL;
+ v20 = *(u*)(vd + 88UL);
+ v21 = ((u(*)())v17)(v18, v19, v20);
+ v21;
+ return 0UL;
+b4: goto b2;
+b6: if (!*(u*)(vd + 72UL)) goto b14;
+ v12 = 0UL;
+b15: if (!v12) goto b12;
+ v10 = 1UL;
+ goto b8;
+b12: v10 = 0UL;
+ goto b8;
+b14: v12 = 1UL;
+ goto b15;
+b10: v11 = 1UL;
+ goto b11;
+}
u zoutput_irexpr(u vic, u vb, u vo) {
u vkind = 0;
u v4 = 0;
@@ -22782,759 +25319,886 @@ u zoutput_irexpr(u vic, u vb, u vo) {
u v691 = 0;
u v692 = 0;
if (!vo) goto b5;
- v4 = 0;
-b6: if (!v4) goto b1;
+ v4 = 0UL;
+b6: if (!v4) goto b3;
v5 = (u)zcdie;
- v6 = *(u*)vic;
+ v6 = *(u*)(vic + 0UL);
v7 = (u)"no expr";
v8 = ((u(*)())v5)(v6, v7);
-b1: vkind = *(u*)vo;
- if (vkind != 0) goto b10;
+ v8;
+b1: vkind = *(u*)(vo + 0UL);
+ if (vkind != 0UL) goto b10;
v9 = (u)zas_modrm;
- v10 = *(u*)(vic + 8);
- v11 = 139;
- v12 = 0;
- v13 = 5;
- v14 = 0;
- v15 = 0;
- v16 = *(u*)(*(u*)(*(u*)(vic + 112) + *(u*)(vo + 24) * 8) + 40);
+ v10 = *(u*)(vic + 8UL);
+ v11 = 139UL;
+ v12 = 0UL;
+ v13 = 5UL;
+ v14 = 0UL;
+ v15 = 0UL;
+ v16 = *(u*)(*(u*)(*(u*)(vic + 128UL) + *(u*)(vo + 24UL) * 8UL) + 40UL);
v17 = ((u(*)())v9)(v10, v11, v12, v13, v14, v15, v16);
-b8: return 0;
-b10: if (vkind != 1) goto b13;
+ v17;
+b8: return 0UL;
+b10: if (vkind != 1UL) goto b13;
v18 = (u)zas_modrm;
- v19 = *(u*)(vic + 8);
- v20 = 141;
- v21 = 0;
- v22 = 5;
- v23 = 0;
- v24 = 0;
- v25 = *(u*)(*(u*)(*(u*)(vic + 112) + *(u*)(vo + 24) * 8) + 40);
+ v19 = *(u*)(vic + 8UL);
+ v20 = 141UL;
+ v21 = 0UL;
+ v22 = 5UL;
+ v23 = 0UL;
+ v24 = 0UL;
+ v25 = *(u*)(*(u*)(*(u*)(vic + 128UL) + *(u*)(vo + 24UL) * 8UL) + 40UL);
v26 = ((u(*)())v18)(v19, v20, v21, v22, v23, v24, v25);
+ v26;
goto b8;
-b13: if (vkind != 2) goto b16;
+b13: if (vkind != 2UL) goto b16;
v27 = (u)zoutput_irfuncptr;
v28 = vic;
v29 = vb;
v30 = vo;
v31 = ((u(*)())v27)(v28, v29, v30);
+ v31;
goto b8;
-b16: if (vkind != 3) goto b19;
- if (*(u*)(vo + 24) != 0) goto b22;
+b16: if (vkind != 3UL) goto b19;
+ if (*(u*)(vo + 24UL) != 0UL) goto b22;
v32 = (u)zas_modrr;
- v33 = *(u*)(vic + 8);
- v34 = 51;
- v35 = 0;
- v36 = 0;
+ v33 = *(u*)(vic + 8UL);
+ v34 = 51UL;
+ v35 = 0UL;
+ v36 = 0UL;
v37 = ((u(*)())v32)(v33, v34, v35, v36);
- goto b8;
-b22: if ((s)*(u*)(vo + 24) >= (s)2147483647UL) goto b27;
- if ((s)*(u*)(vo + 24) < (s)-2147483648UL) goto b27;
- v38 = 1;
+ v37;
+b20: goto b8;
+b22: if ((s)*(u*)(vo + 24UL) >= (s)(-1UL >> 33UL)) goto b27;
+ if ((s)*(u*)(vo + 24UL) < (s)(-1UL << 31UL)) goto b27;
+ v38 = 1UL;
b29: if (!v38) goto b25;
v39 = (u)zas_modri;
- v40 = *(u*)(vic + 8);
- v41 = 199;
- v42 = 0;
- v43 = *(u*)(vo + 24);
+ v40 = *(u*)(vic + 8UL);
+ v41 = 199UL;
+ v42 = 0UL;
+ v43 = *(u*)(vo + 24UL);
v44 = ((u(*)())v39)(v40, v41, v42, v43);
- goto b8;
+ v44;
+ goto b20;
b25: v45 = (u)zas_opri64;
- v46 = *(u*)(vic + 8);
- v47 = 184;
- v48 = 0;
- v49 = *(u*)(vo + 24);
+ v46 = *(u*)(vic + 8UL);
+ v47 = 184UL;
+ v48 = 0UL;
+ v49 = *(u*)(vo + 24UL);
v50 = ((u(*)())v45)(v46, v47, v48, v49);
- goto b8;
-b27: v38 = 0;
+ v50;
+ goto b20;
+b27: v38 = 0UL;
goto b29;
-b19: if (vkind != 4) goto b33;
+b19: if (vkind != 4UL) goto b33;
v51 = (u)zoutput_irstr;
v52 = vic;
v53 = vb;
v54 = vo;
v55 = ((u(*)())v51)(v52, v53, v54);
+ v55;
goto b8;
-b33: if (vkind != 5) goto b36;
+b33: if (vkind != 5UL) goto b36;
v56 = (u)zoutput_irexpr;
v57 = vic;
v58 = vb;
- v59 = *(u*)(vo + 8);
+ v59 = *(u*)(vo + 8UL);
v60 = ((u(*)())v56)(v57, v58, v59);
- if (*(u*)*(u*)(vo + 48) != 3) goto b40;
+ v60;
+ if (*(u*)(*(u*)(vo + 48UL) + 0UL) != 3UL) goto b40;
v61 = (u)zas_modrr;
- v62 = *(u*)(vic + 8);
- v63 = 139;
- v64 = 6;
- v65 = 0;
+ v62 = *(u*)(vic + 8UL);
+ v63 = 139UL;
+ v64 = 6UL;
+ v65 = 0UL;
v66 = ((u(*)())v61)(v62, v63, v64, v65);
+ v66;
v67 = (u)zas_modrr;
- v68 = *(u*)(vic + 8);
- v69 = 51;
- v70 = 0;
- v71 = 0;
+ v68 = *(u*)(vic + 8UL);
+ v69 = 51UL;
+ v70 = 0UL;
+ v71 = 0UL;
v72 = ((u(*)())v67)(v68, v69, v70, v71);
+ v72;
v73 = (u)zas_modrm;
- v74 = *(u*)(vic + 8);
- v75 = 138;
- v76 = 0;
- v77 = 6;
- v78 = 0;
- v79 = 0;
- v80 = 0;
+ v74 = *(u*)(vic + 8UL);
+ v75 = 138UL;
+ v76 = 0UL;
+ v77 = 6UL;
+ v78 = 0UL;
+ v79 = 0UL;
+ v80 = 0UL;
v81 = ((u(*)())v73)(v74, v75, v76, v77, v78, v79, v80);
- goto b8;
+ v81;
+b38: goto b8;
b40: v82 = (u)ztype_isprim;
- v83 = *(u*)(vo + 48);
+ v83 = *(u*)(vo + 48UL);
v84 = ((u(*)())v82)(v83);
if (!v84) goto b45;
v85 = (u)zas_modrm;
- v86 = *(u*)(vic + 8);
- v87 = 139;
- v88 = 0;
- v89 = 0;
- v90 = 0;
- v91 = 0;
- v92 = 0;
+ v86 = *(u*)(vic + 8UL);
+ v87 = 139UL;
+ v88 = 0UL;
+ v89 = 0UL;
+ v90 = 0UL;
+ v91 = 0UL;
+ v92 = 0UL;
v93 = ((u(*)())v85)(v86, v87, v88, v89, v90, v91, v92);
- goto b8;
+ v93;
+ goto b38;
b45: v94 = (u)zcdie;
- v95 = *(u*)vic;
+ v95 = *(u*)(vic + 0UL);
v96 = (u)"invalid load";
v97 = ((u(*)())v94)(v95, v96);
- goto b8;
-b36: if (vkind != 9) goto b50;
+ v97;
+ goto b38;
+b36: if (vkind != 9UL) goto b50;
v98 = (u)zoutput_irexpr;
v99 = vic;
v100 = vb;
- v101 = *(u*)(vo + 8);
+ v101 = *(u*)(vo + 8UL);
v102 = ((u(*)())v98)(v99, v100, v101);
+ v102;
v103 = (u)zas_modr;
- v104 = *(u*)(vic + 8);
+ v104 = *(u*)(vic + 8UL);
v105 = 196855UL;
- v106 = 0;
+ v106 = 0UL;
v107 = ((u(*)())v103)(v104, v105, v106);
+ v107;
goto b8;
-b50: if (vkind != 10) goto b54;
+b50: if (vkind != 10UL) goto b54;
v108 = (u)zoutput_irexpr;
v109 = vic;
v110 = vb;
- v111 = *(u*)(vo + 8);
+ v111 = *(u*)(vo + 8UL);
v112 = ((u(*)())v108)(v109, v110, v111);
+ v112;
v113 = (u)zas_modr;
- v114 = *(u*)(vic + 8);
+ v114 = *(u*)(vic + 8UL);
v115 = 131319UL;
- v116 = 0;
+ v116 = 0UL;
v117 = ((u(*)())v113)(v114, v115, v116);
+ v117;
goto b8;
-b54: if (vkind != 11) goto b58;
+b54: if (vkind != 11UL) goto b58;
v118 = (u)zoutput_irexpr;
v119 = vic;
v120 = vb;
- v121 = *(u*)(vo + 16);
+ v121 = *(u*)(vo + 16UL);
v122 = ((u(*)())v118)(v119, v120, v121);
+ v122;
v123 = (u)zas_opr;
- v124 = *(u*)(vic + 8);
- v125 = 80;
- v126 = 0;
+ v124 = *(u*)(vic + 8UL);
+ v125 = 80UL;
+ v126 = 0UL;
v127 = ((u(*)())v123)(v124, v125, v126);
+ v127;
v128 = (u)zoutput_irexpr;
v129 = vic;
v130 = vb;
- v131 = *(u*)(vo + 8);
+ v131 = *(u*)(vo + 8UL);
v132 = ((u(*)())v128)(v129, v130, v131);
+ v132;
v133 = (u)zas_opr;
- v134 = *(u*)(vic + 8);
- v135 = 88;
- v136 = 1;
+ v134 = *(u*)(vic + 8UL);
+ v135 = 88UL;
+ v136 = 1UL;
v137 = ((u(*)())v133)(v134, v135, v136);
+ v137;
v138 = (u)zas_modrr;
- v139 = *(u*)(vic + 8);
- v140 = 3;
- v141 = 0;
- v142 = 1;
+ v139 = *(u*)(vic + 8UL);
+ v140 = 3UL;
+ v141 = 0UL;
+ v142 = 1UL;
v143 = ((u(*)())v138)(v139, v140, v141, v142);
+ v143;
goto b8;
-b58: if (vkind != 12) goto b65;
+b58: if (vkind != 12UL) goto b65;
v144 = (u)zoutput_irexpr;
v145 = vic;
v146 = vb;
- v147 = *(u*)(vo + 16);
+ v147 = *(u*)(vo + 16UL);
v148 = ((u(*)())v144)(v145, v146, v147);
+ v148;
v149 = (u)zas_opr;
- v150 = *(u*)(vic + 8);
- v151 = 80;
- v152 = 0;
+ v150 = *(u*)(vic + 8UL);
+ v151 = 80UL;
+ v152 = 0UL;
v153 = ((u(*)())v149)(v150, v151, v152);
+ v153;
v154 = (u)zoutput_irexpr;
v155 = vic;
v156 = vb;
- v157 = *(u*)(vo + 8);
+ v157 = *(u*)(vo + 8UL);
v158 = ((u(*)())v154)(v155, v156, v157);
+ v158;
v159 = (u)zas_opr;
- v160 = *(u*)(vic + 8);
- v161 = 88;
- v162 = 1;
+ v160 = *(u*)(vic + 8UL);
+ v161 = 88UL;
+ v162 = 1UL;
v163 = ((u(*)())v159)(v160, v161, v162);
+ v163;
v164 = (u)zas_modrr;
- v165 = *(u*)(vic + 8);
- v166 = 35;
- v167 = 0;
- v168 = 1;
+ v165 = *(u*)(vic + 8UL);
+ v166 = 35UL;
+ v167 = 0UL;
+ v168 = 1UL;
v169 = ((u(*)())v164)(v165, v166, v167, v168);
+ v169;
goto b8;
-b65: if (vkind != 13) goto b72;
+b65: if (vkind != 13UL) goto b72;
v170 = (u)zoutput_irexpr;
v171 = vic;
v172 = vb;
- v173 = *(u*)(vo + 16);
+ v173 = *(u*)(vo + 16UL);
v174 = ((u(*)())v170)(v171, v172, v173);
+ v174;
v175 = (u)zas_opr;
- v176 = *(u*)(vic + 8);
- v177 = 80;
- v178 = 0;
+ v176 = *(u*)(vic + 8UL);
+ v177 = 80UL;
+ v178 = 0UL;
v179 = ((u(*)())v175)(v176, v177, v178);
+ v179;
v180 = (u)zoutput_irexpr;
v181 = vic;
v182 = vb;
- v183 = *(u*)(vo + 8);
+ v183 = *(u*)(vo + 8UL);
v184 = ((u(*)())v180)(v181, v182, v183);
+ v184;
v185 = (u)zas_opr;
- v186 = *(u*)(vic + 8);
- v187 = 88;
- v188 = 1;
+ v186 = *(u*)(vic + 8UL);
+ v187 = 88UL;
+ v188 = 1UL;
v189 = ((u(*)())v185)(v186, v187, v188);
+ v189;
v190 = (u)zas_modrr;
- v191 = *(u*)(vic + 8);
- v192 = 11;
- v193 = 0;
- v194 = 1;
+ v191 = *(u*)(vic + 8UL);
+ v192 = 11UL;
+ v193 = 0UL;
+ v194 = 1UL;
v195 = ((u(*)())v190)(v191, v192, v193, v194);
+ v195;
goto b8;
-b72: if (vkind != 14) goto b79;
+b72: if (vkind != 14UL) goto b79;
v196 = (u)zoutput_irexpr;
v197 = vic;
v198 = vb;
- v199 = *(u*)(vo + 16);
+ v199 = *(u*)(vo + 16UL);
v200 = ((u(*)())v196)(v197, v198, v199);
+ v200;
v201 = (u)zas_opr;
- v202 = *(u*)(vic + 8);
- v203 = 80;
- v204 = 0;
+ v202 = *(u*)(vic + 8UL);
+ v203 = 80UL;
+ v204 = 0UL;
v205 = ((u(*)())v201)(v202, v203, v204);
+ v205;
v206 = (u)zoutput_irexpr;
v207 = vic;
v208 = vb;
- v209 = *(u*)(vo + 8);
+ v209 = *(u*)(vo + 8UL);
v210 = ((u(*)())v206)(v207, v208, v209);
+ v210;
v211 = (u)zas_opr;
- v212 = *(u*)(vic + 8);
- v213 = 88;
- v214 = 1;
+ v212 = *(u*)(vic + 8UL);
+ v213 = 88UL;
+ v214 = 1UL;
v215 = ((u(*)())v211)(v212, v213, v214);
+ v215;
v216 = (u)zas_modrr;
- v217 = *(u*)(vic + 8);
- v218 = 51;
- v219 = 0;
- v220 = 1;
+ v217 = *(u*)(vic + 8UL);
+ v218 = 51UL;
+ v219 = 0UL;
+ v220 = 1UL;
v221 = ((u(*)())v216)(v217, v218, v219, v220);
+ v221;
goto b8;
-b79: if (vkind != 15) goto b86;
+b79: if (vkind != 15UL) goto b86;
v222 = (u)zoutput_irexpr;
v223 = vic;
v224 = vb;
- v225 = *(u*)(vo + 16);
+ v225 = *(u*)(vo + 16UL);
v226 = ((u(*)())v222)(v223, v224, v225);
+ v226;
v227 = (u)zas_opr;
- v228 = *(u*)(vic + 8);
- v229 = 80;
- v230 = 0;
+ v228 = *(u*)(vic + 8UL);
+ v229 = 80UL;
+ v230 = 0UL;
v231 = ((u(*)())v227)(v228, v229, v230);
+ v231;
v232 = (u)zoutput_irexpr;
v233 = vic;
v234 = vb;
- v235 = *(u*)(vo + 8);
+ v235 = *(u*)(vo + 8UL);
v236 = ((u(*)())v232)(v233, v234, v235);
+ v236;
v237 = (u)zas_opr;
- v238 = *(u*)(vic + 8);
- v239 = 88;
- v240 = 1;
+ v238 = *(u*)(vic + 8UL);
+ v239 = 88UL;
+ v240 = 1UL;
v241 = ((u(*)())v237)(v238, v239, v240);
+ v241;
v242 = (u)zas_modrr;
- v243 = *(u*)(vic + 8);
- v244 = 51;
- v245 = 2;
- v246 = 2;
+ v243 = *(u*)(vic + 8UL);
+ v244 = 51UL;
+ v245 = 2UL;
+ v246 = 2UL;
v247 = ((u(*)())v242)(v243, v244, v245, v246);
+ v247;
v248 = (u)zas_modrr;
- v249 = *(u*)(vic + 8);
- v250 = 133;
- v251 = 0;
- v252 = 0;
+ v249 = *(u*)(vic + 8UL);
+ v250 = 133UL;
+ v251 = 0UL;
+ v252 = 0UL;
v253 = ((u(*)())v248)(v249, v250, v251, v252);
+ v253;
v254 = (u)zas_modrr;
- v255 = *(u*)(vic + 8);
- v256 = 3992;
- v257 = 0;
- v258 = 2;
+ v255 = *(u*)(vic + 8UL);
+ v256 = 3984UL + 8UL;
+ v257 = 0UL;
+ v258 = 2UL;
v259 = ((u(*)())v254)(v255, v256, v257, v258);
+ v259;
v260 = (u)zas_modr;
- v261 = *(u*)(vic + 8);
+ v261 = *(u*)(vic + 8UL);
v262 = 196855UL;
- v263 = 2;
+ v263 = 2UL;
v264 = ((u(*)())v260)(v261, v262, v263);
+ v264;
v265 = (u)zas_modr;
- v266 = *(u*)(vic + 8);
+ v266 = *(u*)(vic + 8UL);
v267 = 458999UL;
- v268 = 1;
+ v268 = 1UL;
v269 = ((u(*)())v265)(v266, v267, v268);
+ v269;
goto b8;
-b86: if (vkind != 16) goto b97;
+b86: if (vkind != 16UL) goto b97;
v270 = (u)zoutput_irexpr;
v271 = vic;
v272 = vb;
- v273 = *(u*)(vo + 16);
+ v273 = *(u*)(vo + 16UL);
v274 = ((u(*)())v270)(v271, v272, v273);
+ v274;
v275 = (u)zas_opr;
- v276 = *(u*)(vic + 8);
- v277 = 80;
- v278 = 0;
+ v276 = *(u*)(vic + 8UL);
+ v277 = 80UL;
+ v278 = 0UL;
v279 = ((u(*)())v275)(v276, v277, v278);
+ v279;
v280 = (u)zoutput_irexpr;
v281 = vic;
v282 = vb;
- v283 = *(u*)(vo + 8);
+ v283 = *(u*)(vo + 8UL);
v284 = ((u(*)())v280)(v281, v282, v283);
+ v284;
v285 = (u)zas_opr;
- v286 = *(u*)(vic + 8);
- v287 = 88;
- v288 = 1;
+ v286 = *(u*)(vic + 8UL);
+ v287 = 88UL;
+ v288 = 1UL;
v289 = ((u(*)())v285)(v286, v287, v288);
+ v289;
v290 = (u)zas_modrr;
- v291 = *(u*)(vic + 8);
- v292 = 51;
- v293 = 2;
- v294 = 2;
+ v291 = *(u*)(vic + 8UL);
+ v292 = 51UL;
+ v293 = 2UL;
+ v294 = 2UL;
v295 = ((u(*)())v290)(v291, v292, v293, v294);
+ v295;
v296 = (u)zas_modrr;
- v297 = *(u*)(vic + 8);
- v298 = 133;
- v299 = 0;
- v300 = 0;
+ v297 = *(u*)(vic + 8UL);
+ v298 = 133UL;
+ v299 = 0UL;
+ v300 = 0UL;
v301 = ((u(*)())v296)(v297, v298, v299, v300);
+ v301;
v302 = (u)zas_modrr;
- v303 = *(u*)(vic + 8);
- v304 = 3992;
- v305 = 0;
- v306 = 2;
+ v303 = *(u*)(vic + 8UL);
+ v304 = 3984UL + 8UL;
+ v305 = 0UL;
+ v306 = 2UL;
v307 = ((u(*)())v302)(v303, v304, v305, v306);
+ v307;
v308 = (u)zas_modr;
- v309 = *(u*)(vic + 8);
+ v309 = *(u*)(vic + 8UL);
v310 = 196855UL;
- v311 = 2;
+ v311 = 2UL;
v312 = ((u(*)())v308)(v309, v310, v311);
+ v312;
v313 = (u)zas_modr;
- v314 = *(u*)(vic + 8);
+ v314 = *(u*)(vic + 8UL);
v315 = 458999UL;
- v316 = 1;
+ v316 = 1UL;
v317 = ((u(*)())v313)(v314, v315, v316);
+ v317;
v318 = (u)zas_modrr;
- v319 = *(u*)(vic + 8);
- v320 = 139;
- v321 = 0;
- v322 = 2;
+ v319 = *(u*)(vic + 8UL);
+ v320 = 139UL;
+ v321 = 0UL;
+ v322 = 2UL;
v323 = ((u(*)())v318)(v319, v320, v321, v322);
+ v323;
goto b8;
-b97: if (vkind != 17) goto b109;
+b97: if (vkind != 17UL) goto b109;
v324 = (u)zoutput_irexpr;
v325 = vic;
v326 = vb;
- v327 = *(u*)(vo + 16);
+ v327 = *(u*)(vo + 16UL);
v328 = ((u(*)())v324)(v325, v326, v327);
+ v328;
v329 = (u)zas_opr;
- v330 = *(u*)(vic + 8);
- v331 = 80;
- v332 = 0;
+ v330 = *(u*)(vic + 8UL);
+ v331 = 80UL;
+ v332 = 0UL;
v333 = ((u(*)())v329)(v330, v331, v332);
+ v333;
v334 = (u)zoutput_irexpr;
v335 = vic;
v336 = vb;
- v337 = *(u*)(vo + 8);
+ v337 = *(u*)(vo + 8UL);
v338 = ((u(*)())v334)(v335, v336, v337);
+ v338;
v339 = (u)zas_opr;
- v340 = *(u*)(vic + 8);
- v341 = 88;
- v342 = 1;
+ v340 = *(u*)(vic + 8UL);
+ v341 = 88UL;
+ v342 = 1UL;
v343 = ((u(*)())v339)(v340, v341, v342);
+ v343;
v344 = (u)zas_modr;
- v345 = *(u*)(vic + 8);
+ v345 = *(u*)(vic + 8UL);
v346 = 262355UL;
- v347 = 0;
+ v347 = 0UL;
v348 = ((u(*)())v344)(v345, v346, v347);
+ v348;
goto b8;
-b109: if (vkind != 18) goto b116;
+b109: if (vkind != 18UL) goto b116;
v349 = (u)zoutput_irexpr;
v350 = vic;
v351 = vb;
- v352 = *(u*)(vo + 16);
+ v352 = *(u*)(vo + 16UL);
v353 = ((u(*)())v349)(v350, v351, v352);
+ v353;
v354 = (u)zas_opr;
- v355 = *(u*)(vic + 8);
- v356 = 80;
- v357 = 0;
+ v355 = *(u*)(vic + 8UL);
+ v356 = 80UL;
+ v357 = 0UL;
v358 = ((u(*)())v354)(v355, v356, v357);
+ v358;
v359 = (u)zoutput_irexpr;
v360 = vic;
v361 = vb;
- v362 = *(u*)(vo + 8);
+ v362 = *(u*)(vo + 8UL);
v363 = ((u(*)())v359)(v360, v361, v362);
+ v363;
v364 = (u)zas_opr;
- v365 = *(u*)(vic + 8);
- v366 = 88;
- v367 = 1;
+ v365 = *(u*)(vic + 8UL);
+ v366 = 88UL;
+ v367 = 1UL;
v368 = ((u(*)())v364)(v365, v366, v367);
+ v368;
v369 = (u)zas_modr;
- v370 = *(u*)(vic + 8);
+ v370 = *(u*)(vic + 8UL);
v371 = 327891UL;
- v372 = 0;
+ v372 = 0UL;
v373 = ((u(*)())v369)(v370, v371, v372);
+ v373;
goto b8;
-b116: if (vkind != 19) goto b123;
+b116: if (vkind != 19UL) goto b123;
v374 = (u)zoutput_irexpr;
v375 = vic;
v376 = vb;
- v377 = *(u*)(vo + 16);
+ v377 = *(u*)(vo + 16UL);
v378 = ((u(*)())v374)(v375, v376, v377);
+ v378;
v379 = (u)zas_opr;
- v380 = *(u*)(vic + 8);
- v381 = 80;
- v382 = 0;
+ v380 = *(u*)(vic + 8UL);
+ v381 = 80UL;
+ v382 = 0UL;
v383 = ((u(*)())v379)(v380, v381, v382);
+ v383;
v384 = (u)zoutput_irexpr;
v385 = vic;
v386 = vb;
- v387 = *(u*)(vo + 8);
+ v387 = *(u*)(vo + 8UL);
v388 = ((u(*)())v384)(v385, v386, v387);
+ v388;
v389 = (u)zas_opr;
- v390 = *(u*)(vic + 8);
- v391 = 88;
- v392 = 1;
+ v390 = *(u*)(vic + 8UL);
+ v391 = 88UL;
+ v392 = 1UL;
v393 = ((u(*)())v389)(v390, v391, v392);
+ v393;
v394 = (u)zas_modr;
- v395 = *(u*)(vic + 8);
+ v395 = *(u*)(vic + 8UL);
v396 = 262391UL;
- v397 = 1;
+ v397 = 1UL;
v398 = ((u(*)())v394)(v395, v396, v397);
+ v398;
goto b8;
-b123: if (vkind != 20) goto b130;
+b123: if (vkind != 20UL) goto b130;
v399 = (u)zoutput_irexpr;
v400 = vic;
v401 = vb;
- v402 = *(u*)(vo + 16);
+ v402 = *(u*)(vo + 16UL);
v403 = ((u(*)())v399)(v400, v401, v402);
+ v403;
v404 = (u)zas_opr;
- v405 = *(u*)(vic + 8);
- v406 = 80;
- v407 = 0;
+ v405 = *(u*)(vic + 8UL);
+ v406 = 80UL;
+ v407 = 0UL;
v408 = ((u(*)())v404)(v405, v406, v407);
+ v408;
v409 = (u)zoutput_irexpr;
v410 = vic;
v411 = vb;
- v412 = *(u*)(vo + 8);
+ v412 = *(u*)(vo + 8UL);
v413 = ((u(*)())v409)(v410, v411, v412);
+ v413;
v414 = (u)zas_opr;
- v415 = *(u*)(vic + 8);
- v416 = 88;
- v417 = 1;
+ v415 = *(u*)(vic + 8UL);
+ v416 = 88UL;
+ v417 = 1UL;
v418 = ((u(*)())v414)(v415, v416, v417);
+ v418;
v419 = (u)zas_modrr;
- v420 = *(u*)(vic + 8);
- v421 = 43;
- v422 = 0;
- v423 = 1;
+ v420 = *(u*)(vic + 8UL);
+ v421 = 43UL;
+ v422 = 0UL;
+ v423 = 1UL;
v424 = ((u(*)())v419)(v420, v421, v422, v423);
+ v424;
goto b8;
-b130: if (vkind != 21) goto b137;
+b130: if (vkind != 21UL) goto b137;
v425 = (u)zoutput_irexpr;
v426 = vic;
v427 = vb;
- v428 = *(u*)(vo + 16);
+ v428 = *(u*)(vo + 16UL);
v429 = ((u(*)())v425)(v426, v427, v428);
+ v429;
v430 = (u)zas_opr;
- v431 = *(u*)(vic + 8);
- v432 = 80;
- v433 = 0;
+ v431 = *(u*)(vic + 8UL);
+ v432 = 80UL;
+ v433 = 0UL;
v434 = ((u(*)())v430)(v431, v432, v433);
+ v434;
v435 = (u)zoutput_irexpr;
v436 = vic;
v437 = vb;
- v438 = *(u*)(vo + 8);
+ v438 = *(u*)(vo + 8UL);
v439 = ((u(*)())v435)(v436, v437, v438);
+ v439;
v440 = (u)zas_opr;
- v441 = *(u*)(vic + 8);
- v442 = 88;
- v443 = 1;
+ v441 = *(u*)(vic + 8UL);
+ v442 = 88UL;
+ v443 = 1UL;
v444 = ((u(*)())v440)(v441, v442, v443);
+ v444;
v445 = (u)zas_modrr;
- v446 = *(u*)(vic + 8);
- v447 = 139;
- v448 = 2;
- v449 = 0;
+ v446 = *(u*)(vic + 8UL);
+ v447 = 139UL;
+ v448 = 2UL;
+ v449 = 0UL;
v450 = ((u(*)())v445)(v446, v447, v448, v449);
+ v450;
v451 = (u)zas_modrr;
- v452 = *(u*)(vic + 8);
- v453 = 51;
- v454 = 0;
- v455 = 0;
+ v452 = *(u*)(vic + 8UL);
+ v453 = 51UL;
+ v454 = 0UL;
+ v455 = 0UL;
v456 = ((u(*)())v451)(v452, v453, v454, v455);
+ v456;
v457 = (u)zas_modrr;
- v458 = *(u*)(vic + 8);
- v459 = 59;
- v460 = 2;
- v461 = 1;
+ v458 = *(u*)(vic + 8UL);
+ v459 = 59UL;
+ v460 = 2UL;
+ v461 = 1UL;
v462 = ((u(*)())v457)(v458, v459, v460, v461);
+ v462;
v463 = (u)zas_modrr;
- v464 = *(u*)(vic + 8);
- v465 = 3988;
- v466 = 0;
- v467 = 0;
+ v464 = *(u*)(vic + 8UL);
+ v465 = 3984UL + 4UL;
+ v466 = 0UL;
+ v467 = 0UL;
v468 = ((u(*)())v463)(v464, v465, v466, v467);
+ v468;
goto b8;
-b137: if (vkind != 22) goto b147;
+b137: if (vkind != 22UL) goto b147;
v469 = (u)zoutput_irexpr;
v470 = vic;
v471 = vb;
- v472 = *(u*)(vo + 16);
+ v472 = *(u*)(vo + 16UL);
v473 = ((u(*)())v469)(v470, v471, v472);
+ v473;
v474 = (u)zas_opr;
- v475 = *(u*)(vic + 8);
- v476 = 80;
- v477 = 0;
+ v475 = *(u*)(vic + 8UL);
+ v476 = 80UL;
+ v477 = 0UL;
v478 = ((u(*)())v474)(v475, v476, v477);
+ v478;
v479 = (u)zoutput_irexpr;
v480 = vic;
v481 = vb;
- v482 = *(u*)(vo + 8);
+ v482 = *(u*)(vo + 8UL);
v483 = ((u(*)())v479)(v480, v481, v482);
+ v483;
v484 = (u)zas_opr;
- v485 = *(u*)(vic + 8);
- v486 = 88;
- v487 = 1;
+ v485 = *(u*)(vic + 8UL);
+ v486 = 88UL;
+ v487 = 1UL;
v488 = ((u(*)())v484)(v485, v486, v487);
+ v488;
v489 = (u)zas_modrr;
- v490 = *(u*)(vic + 8);
- v491 = 139;
- v492 = 2;
- v493 = 0;
+ v490 = *(u*)(vic + 8UL);
+ v491 = 139UL;
+ v492 = 2UL;
+ v493 = 0UL;
v494 = ((u(*)())v489)(v490, v491, v492, v493);
+ v494;
v495 = (u)zas_modrr;
- v496 = *(u*)(vic + 8);
- v497 = 51;
- v498 = 0;
- v499 = 0;
+ v496 = *(u*)(vic + 8UL);
+ v497 = 51UL;
+ v498 = 0UL;
+ v499 = 0UL;
v500 = ((u(*)())v495)(v496, v497, v498, v499);
+ v500;
v501 = (u)zas_modrr;
- v502 = *(u*)(vic + 8);
- v503 = 59;
- v504 = 2;
- v505 = 1;
+ v502 = *(u*)(vic + 8UL);
+ v503 = 59UL;
+ v504 = 2UL;
+ v505 = 1UL;
v506 = ((u(*)())v501)(v502, v503, v504, v505);
+ v506;
v507 = (u)zas_modrr;
- v508 = *(u*)(vic + 8);
- v509 = 3989;
- v510 = 0;
- v511 = 0;
+ v508 = *(u*)(vic + 8UL);
+ v509 = 3984UL + 5UL;
+ v510 = 0UL;
+ v511 = 0UL;
v512 = ((u(*)())v507)(v508, v509, v510, v511);
+ v512;
goto b8;
-b147: if (vkind != 23) goto b157;
+b147: if (vkind != 23UL) goto b157;
v513 = (u)zoutput_irexpr;
v514 = vic;
v515 = vb;
- v516 = *(u*)(vo + 16);
+ v516 = *(u*)(vo + 16UL);
v517 = ((u(*)())v513)(v514, v515, v516);
+ v517;
v518 = (u)zas_opr;
- v519 = *(u*)(vic + 8);
- v520 = 80;
- v521 = 0;
+ v519 = *(u*)(vic + 8UL);
+ v520 = 80UL;
+ v521 = 0UL;
v522 = ((u(*)())v518)(v519, v520, v521);
+ v522;
v523 = (u)zoutput_irexpr;
v524 = vic;
v525 = vb;
- v526 = *(u*)(vo + 8);
+ v526 = *(u*)(vo + 8UL);
v527 = ((u(*)())v523)(v524, v525, v526);
+ v527;
v528 = (u)zas_opr;
- v529 = *(u*)(vic + 8);
- v530 = 88;
- v531 = 1;
+ v529 = *(u*)(vic + 8UL);
+ v530 = 88UL;
+ v531 = 1UL;
v532 = ((u(*)())v528)(v529, v530, v531);
+ v532;
v533 = (u)zas_modrr;
- v534 = *(u*)(vic + 8);
- v535 = 139;
- v536 = 2;
- v537 = 0;
+ v534 = *(u*)(vic + 8UL);
+ v535 = 139UL;
+ v536 = 2UL;
+ v537 = 0UL;
v538 = ((u(*)())v533)(v534, v535, v536, v537);
+ v538;
v539 = (u)zas_modrr;
- v540 = *(u*)(vic + 8);
- v541 = 51;
- v542 = 0;
- v543 = 0;
+ v540 = *(u*)(vic + 8UL);
+ v541 = 51UL;
+ v542 = 0UL;
+ v543 = 0UL;
v544 = ((u(*)())v539)(v540, v541, v542, v543);
+ v544;
v545 = (u)zas_modrr;
- v546 = *(u*)(vic + 8);
- v547 = 59;
- v548 = 2;
- v549 = 1;
+ v546 = *(u*)(vic + 8UL);
+ v547 = 59UL;
+ v548 = 2UL;
+ v549 = 1UL;
v550 = ((u(*)())v545)(v546, v547, v548, v549);
+ v550;
v551 = (u)zas_modrr;
- v552 = *(u*)(vic + 8);
- v553 = 3999;
- v554 = 0;
- v555 = 0;
+ v552 = *(u*)(vic + 8UL);
+ v553 = 3984UL + 15UL;
+ v554 = 0UL;
+ v555 = 0UL;
v556 = ((u(*)())v551)(v552, v553, v554, v555);
+ v556;
goto b8;
-b157: if (vkind != 24) goto b167;
+b157: if (vkind != 24UL) goto b167;
v557 = (u)zoutput_irexpr;
v558 = vic;
v559 = vb;
- v560 = *(u*)(vo + 16);
+ v560 = *(u*)(vo + 16UL);
v561 = ((u(*)())v557)(v558, v559, v560);
+ v561;
v562 = (u)zas_opr;
- v563 = *(u*)(vic + 8);
- v564 = 80;
- v565 = 0;
+ v563 = *(u*)(vic + 8UL);
+ v564 = 80UL;
+ v565 = 0UL;
v566 = ((u(*)())v562)(v563, v564, v565);
+ v566;
v567 = (u)zoutput_irexpr;
v568 = vic;
v569 = vb;
- v570 = *(u*)(vo + 8);
+ v570 = *(u*)(vo + 8UL);
v571 = ((u(*)())v567)(v568, v569, v570);
+ v571;
v572 = (u)zas_opr;
- v573 = *(u*)(vic + 8);
- v574 = 88;
- v575 = 1;
+ v573 = *(u*)(vic + 8UL);
+ v574 = 88UL;
+ v575 = 1UL;
v576 = ((u(*)())v572)(v573, v574, v575);
+ v576;
v577 = (u)zas_modrr;
- v578 = *(u*)(vic + 8);
- v579 = 139;
- v580 = 2;
- v581 = 0;
+ v578 = *(u*)(vic + 8UL);
+ v579 = 139UL;
+ v580 = 2UL;
+ v581 = 0UL;
v582 = ((u(*)())v577)(v578, v579, v580, v581);
+ v582;
v583 = (u)zas_modrr;
- v584 = *(u*)(vic + 8);
- v585 = 51;
- v586 = 0;
- v587 = 0;
+ v584 = *(u*)(vic + 8UL);
+ v585 = 51UL;
+ v586 = 0UL;
+ v587 = 0UL;
v588 = ((u(*)())v583)(v584, v585, v586, v587);
+ v588;
v589 = (u)zas_modrr;
- v590 = *(u*)(vic + 8);
- v591 = 59;
- v592 = 2;
- v593 = 1;
+ v590 = *(u*)(vic + 8UL);
+ v591 = 59UL;
+ v592 = 2UL;
+ v593 = 1UL;
v594 = ((u(*)())v589)(v590, v591, v592, v593);
+ v594;
v595 = (u)zas_modrr;
- v596 = *(u*)(vic + 8);
- v597 = 3997;
- v598 = 0;
- v599 = 0;
+ v596 = *(u*)(vic + 8UL);
+ v597 = 3984UL + 13UL;
+ v598 = 0UL;
+ v599 = 0UL;
v600 = ((u(*)())v595)(v596, v597, v598, v599);
+ v600;
goto b8;
-b167: if (vkind != 25) goto b177;
+b167: if (vkind != 25UL) goto b177;
v601 = (u)zoutput_irexpr;
v602 = vic;
v603 = vb;
- v604 = *(u*)(vo + 16);
+ v604 = *(u*)(vo + 16UL);
v605 = ((u(*)())v601)(v602, v603, v604);
+ v605;
v606 = (u)zas_opr;
- v607 = *(u*)(vic + 8);
- v608 = 80;
- v609 = 0;
+ v607 = *(u*)(vic + 8UL);
+ v608 = 80UL;
+ v609 = 0UL;
v610 = ((u(*)())v606)(v607, v608, v609);
+ v610;
v611 = (u)zoutput_irexpr;
v612 = vic;
v613 = vb;
- v614 = *(u*)(vo + 8);
+ v614 = *(u*)(vo + 8UL);
v615 = ((u(*)())v611)(v612, v613, v614);
+ v615;
v616 = (u)zas_opr;
- v617 = *(u*)(vic + 8);
- v618 = 88;
- v619 = 1;
+ v617 = *(u*)(vic + 8UL);
+ v618 = 88UL;
+ v619 = 1UL;
v620 = ((u(*)())v616)(v617, v618, v619);
+ v620;
v621 = (u)zas_modrr;
- v622 = *(u*)(vic + 8);
- v623 = 139;
- v624 = 2;
- v625 = 0;
+ v622 = *(u*)(vic + 8UL);
+ v623 = 139UL;
+ v624 = 2UL;
+ v625 = 0UL;
v626 = ((u(*)())v621)(v622, v623, v624, v625);
+ v626;
v627 = (u)zas_modrr;
- v628 = *(u*)(vic + 8);
- v629 = 51;
- v630 = 0;
- v631 = 0;
+ v628 = *(u*)(vic + 8UL);
+ v629 = 51UL;
+ v630 = 0UL;
+ v631 = 0UL;
v632 = ((u(*)())v627)(v628, v629, v630, v631);
+ v632;
v633 = (u)zas_modrr;
- v634 = *(u*)(vic + 8);
- v635 = 59;
- v636 = 2;
- v637 = 1;
+ v634 = *(u*)(vic + 8UL);
+ v635 = 59UL;
+ v636 = 2UL;
+ v637 = 1UL;
v638 = ((u(*)())v633)(v634, v635, v636, v637);
+ v638;
v639 = (u)zas_modrr;
- v640 = *(u*)(vic + 8);
- v641 = 3996;
- v642 = 0;
- v643 = 0;
+ v640 = *(u*)(vic + 8UL);
+ v641 = 3984UL + 12UL;
+ v642 = 0UL;
+ v643 = 0UL;
v644 = ((u(*)())v639)(v640, v641, v642, v643);
+ v644;
goto b8;
-b177: if (vkind != 26) goto b187;
+b177: if (vkind != 26UL) goto b187;
v645 = (u)zoutput_irexpr;
v646 = vic;
v647 = vb;
- v648 = *(u*)(vo + 16);
+ v648 = *(u*)(vo + 16UL);
v649 = ((u(*)())v645)(v646, v647, v648);
+ v649;
v650 = (u)zas_opr;
- v651 = *(u*)(vic + 8);
- v652 = 80;
- v653 = 0;
+ v651 = *(u*)(vic + 8UL);
+ v652 = 80UL;
+ v653 = 0UL;
v654 = ((u(*)())v650)(v651, v652, v653);
+ v654;
v655 = (u)zoutput_irexpr;
v656 = vic;
v657 = vb;
- v658 = *(u*)(vo + 8);
+ v658 = *(u*)(vo + 8UL);
v659 = ((u(*)())v655)(v656, v657, v658);
+ v659;
v660 = (u)zas_opr;
- v661 = *(u*)(vic + 8);
- v662 = 88;
- v663 = 1;
+ v661 = *(u*)(vic + 8UL);
+ v662 = 88UL;
+ v663 = 1UL;
v664 = ((u(*)())v660)(v661, v662, v663);
+ v664;
v665 = (u)zas_modrr;
- v666 = *(u*)(vic + 8);
- v667 = 139;
- v668 = 2;
- v669 = 0;
+ v666 = *(u*)(vic + 8UL);
+ v667 = 139UL;
+ v668 = 2UL;
+ v669 = 0UL;
v670 = ((u(*)())v665)(v666, v667, v668, v669);
+ v670;
v671 = (u)zas_modrr;
- v672 = *(u*)(vic + 8);
- v673 = 51;
- v674 = 0;
- v675 = 0;
+ v672 = *(u*)(vic + 8UL);
+ v673 = 51UL;
+ v674 = 0UL;
+ v675 = 0UL;
v676 = ((u(*)())v671)(v672, v673, v674, v675);
+ v676;
v677 = (u)zas_modrr;
- v678 = *(u*)(vic + 8);
- v679 = 59;
- v680 = 2;
- v681 = 1;
+ v678 = *(u*)(vic + 8UL);
+ v679 = 59UL;
+ v680 = 2UL;
+ v681 = 1UL;
v682 = ((u(*)())v677)(v678, v679, v680, v681);
+ v682;
v683 = (u)zas_modrr;
- v684 = *(u*)(vic + 8);
- v685 = 3998;
- v686 = 0;
- v687 = 0;
+ v684 = *(u*)(vic + 8UL);
+ v685 = 3984UL + 14UL;
+ v686 = 0UL;
+ v687 = 0UL;
v688 = ((u(*)())v683)(v684, v685, v686, v687);
+ v688;
goto b8;
b187: v689 = (u)zcdie;
- v690 = *(u*)vic;
+ v690 = *(u*)(vic + 0UL);
v691 = (u)"invalid op";
v692 = ((u(*)())v689)(v690, v691);
+ v692;
goto b8;
-b5: v4 = 1;
+b3: goto b1;
+b5: v4 = 1UL;
goto b6;
}
u zoutput_irfuncptr(u vic, u vb, u vo) {
@@ -23570,49 +26234,54 @@ u zoutput_irfuncptr(u vic, u vb, u vo) {
u v32 = 0;
u v33 = 0;
v4 = (u)zfind;
- v5 = *(u*)vic;
- v6 = *(u*)(vo + 32);
- v7 = 0;
- v8 = 0;
+ v5 = *(u*)(vic + 0UL);
+ v6 = *(u*)(vo + 32UL);
+ v7 = 0UL;
+ v8 = 0UL;
v9 = ((u(*)())v4)(v5, v6, v7, v8);
vd = v9;
if (!vd) goto b10;
- v11 = 0;
+ v11 = 0UL;
b11: if (!v11) goto b6;
- v10 = 1;
-b8: if (!v10) goto b2;
+ v10 = 1UL;
+b8: if (!v10) goto b4;
v13 = (u)zcdie;
- v14 = *(u*)vic;
+ v14 = *(u*)(vic + 0UL);
v15 = (u)"no such function";
v16 = ((u(*)())v13)(v14, v15);
+ v16;
b2: v17 = (u)zreserve;
- v18 = *(u*)(vic + 8);
- v19 = 16;
+ v18 = *(u*)(vic + 8UL);
+ v19 = 16UL;
v20 = ((u(*)())v17)(v18, v19);
+ v20;
v21 = (u)zas_modrm;
- v22 = *(u*)(vic + 8);
- v23 = 141;
- v24 = 0;
- v25 = 16;
- v26 = 0;
- v27 = 0;
- v28 = 128;
+ v22 = *(u*)(vic + 8UL);
+ v23 = 141UL;
+ v24 = 0UL;
+ v25 = 16UL;
+ v26 = 0UL;
+ v27 = 0UL;
+ v28 = 128UL;
v29 = ((u(*)())v21)(v22, v23, v24, v25, v26, v27, v28);
+ v29;
v30 = (u)zaddfixup;
- v31 = *(u*)(vic + 8);
- v32 = *(u*)(vd + 88);
+ v31 = *(u*)(vic + 8UL);
+ v32 = *(u*)(vd + 88UL);
v33 = ((u(*)())v30)(v31, v32);
- return 0;
-b6: if (!*(u*)(vd + 72)) goto b14;
- v12 = 0;
+ v33;
+ return 0UL;
+b4: goto b2;
+b6: if (!*(u*)(vd + 72UL)) goto b14;
+ v12 = 0UL;
b15: if (!v12) goto b12;
- v10 = 1;
+ v10 = 1UL;
goto b8;
-b12: v10 = 0;
+b12: v10 = 0UL;
goto b8;
-b14: v12 = 1;
+b14: v12 = 1UL;
goto b15;
-b10: v11 = 1;
+b10: v11 = 1UL;
goto b11;
}
u zoutput_irretval(u vic, u vb, u vo) {
@@ -23666,72 +26335,79 @@ u zoutput_irretval(u vic, u vb, u vo) {
u v50 = 0;
u v51 = 0;
u v52 = 0;
- vop = 0;
- vi = 0;
-b1: if (vi != *(u*)(vb + 16)) goto b3;
- return 0;
-b3: vop = *(u*)(*(u*)(vb + 8) + vi * 8);
- if (*(u*)vop != 7) goto b6;
- if (*(u*)*(u*)(vop + 48) != 1) goto b9;
- return 0;
-b9: v5 = (u)zas_modrr;
- v6 = *(u*)(vic + 8);
- v7 = 139;
- v8 = 7;
- v9 = 0;
+ vop = 0UL;
+ vi = 0UL;
+b1: if (vi != *(u*)(vb + 16UL)) goto b5;
+ return 0UL;
+b5: vop = *(u*)(*(u*)(vb + 8UL) + vi * 8UL);
+ if (*(u*)(vop + 0UL) != 7UL) goto b8;
+ if (*(u*)(*(u*)(vop + 48UL) + 0UL) != 1UL) goto b11;
+ return 0UL;
+b11: v5 = (u)zas_modrr;
+ v6 = *(u*)(vic + 8UL);
+ v7 = 139UL;
+ v8 = 7UL;
+ v9 = 0UL;
v10 = ((u(*)())v5)(v6, v7, v8, v9);
- if (*(u*)*(u*)(vop + 8) != 5) goto b15;
+ v10;
+ if (*(u*)(*(u*)(vop + 8UL) + 0UL) != 5UL) goto b15;
v11 = (u)zoutput_irexpr;
v12 = vic;
v13 = vb;
- v14 = *(u*)(*(u*)(vop + 8) + 8);
+ v14 = *(u*)(*(u*)(vop + 8UL) + 8UL);
v15 = ((u(*)())v11)(v12, v13, v14);
-b13: if (*(u*)*(u*)(vop + 48) != 3) goto b23;
+ v15;
+b13: if (*(u*)(*(u*)(vop + 48UL) + 0UL) != 3UL) goto b23;
v28 = (u)zas_modrm;
- v29 = *(u*)(vic + 8);
- v30 = 136;
- v31 = 7;
- v32 = 0;
- v33 = 0;
- v34 = 0;
- v35 = 0;
+ v29 = *(u*)(vic + 8UL);
+ v30 = 136UL;
+ v31 = 7UL;
+ v32 = 0UL;
+ v33 = 0UL;
+ v34 = 0UL;
+ v35 = 0UL;
v36 = ((u(*)())v28)(v29, v30, v31, v32, v33, v34, v35);
-b21: return 0;
+ v36;
+b21: return 0UL;
b23: v37 = (u)ztype_isprim;
- v38 = *(u*)(vop + 48);
+ v38 = *(u*)(vop + 48UL);
v39 = ((u(*)())v37)(v38);
if (!v39) goto b26;
v40 = (u)zas_modrm;
- v41 = *(u*)(vic + 8);
- v42 = 137;
- v43 = 7;
- v44 = 0;
- v45 = 0;
- v46 = 0;
- v47 = 0;
+ v41 = *(u*)(vic + 8UL);
+ v42 = 137UL;
+ v43 = 7UL;
+ v44 = 0UL;
+ v45 = 0UL;
+ v46 = 0UL;
+ v47 = 0UL;
v48 = ((u(*)())v40)(v41, v42, v43, v44, v45, v46, v47);
+ v48;
goto b21;
b26: v49 = (u)zcdie;
- v50 = *(u*)vic;
+ v50 = *(u*)(vic + 0UL);
v51 = (u)"invalid store";
v52 = ((u(*)())v49)(v50, v51);
+ v52;
goto b21;
-b15: if (*(u*)*(u*)(vop + 8) != 0) goto b18;
+b15: if (*(u*)(*(u*)(vop + 8UL) + 0UL) != 0UL) goto b18;
v16 = (u)zas_modrm;
- v17 = *(u*)(vic + 8);
- v18 = 141;
- v19 = 0;
- v20 = 5;
- v21 = 0;
- v22 = 0;
- v23 = *(u*)(*(u*)(*(u*)(vic + 112) + *(u*)(*(u*)(vop + 8) + 24) * 8) + 40);
+ v17 = *(u*)(vic + 8UL);
+ v18 = 141UL;
+ v19 = 0UL;
+ v20 = 5UL;
+ v21 = 0UL;
+ v22 = 0UL;
+ v23 = *(u*)(*(u*)(*(u*)(vic + 128UL) + *(u*)(*(u*)(vop + 8UL) + 24UL) * 8UL) + 40UL);
v24 = ((u(*)())v16)(v17, v18, v19, v20, v21, v22, v23);
+ v24;
goto b13;
b18: v25 = (u)zdie;
v26 = (u)"invalid store";
v27 = ((u(*)())v25)(v26);
+ v27;
goto b13;
-b6: vi = vi + 1;
+b8: vi = vi + 1UL;
goto b1;
}
u zoutput_irstmt(u vic, u vb, u vo) {
@@ -23898,209 +26574,256 @@ u zoutput_irstmt(u vic, u vb, u vo) {
u v163 = 0;
u v164 = 0;
u v165 = 0;
- *(u*)(*(u*)vic + 24) = *(u*)(vo + 64);
- *(u*)(*(u*)vic + 32) = *(u*)(vo + 72);
- *(u*)(*(u*)vic + 40) = *(u*)(vo + 80);
- *(u*)(*(u*)(vic + 8) + 88) = *(u*)(vo + 64);
- *(u*)(*(u*)(vic + 8) + 96) = *(u*)(vo + 72);
- vkind = *(u*)vo;
- if (vkind != 6) goto b3;
- if (*(u*)*(u*)(vo + 8) != 5) goto b6;
+ u v166 = 0;
+ u v167 = 0;
+ u v168 = 0;
+ u v169 = 0;
+ u v170 = 0;
+ *(u*)(*(u*)(vic + 0UL) + 24UL) = *(u*)(vo + 64UL);
+ *(u*)(*(u*)(vic + 0UL) + 32UL) = *(u*)(vo + 72UL);
+ *(u*)(*(u*)(vic + 0UL) + 40UL) = *(u*)(vo + 80UL);
+ *(u*)(*(u*)(vic + 8UL) + 88UL) = *(u*)(vo + 64UL);
+ *(u*)(*(u*)(vic + 8UL) + 96UL) = *(u*)(vo + 72UL);
+ vkind = *(u*)(vo + 0UL);
+ if (vkind != 6UL) goto b3;
+ if (*(u*)(*(u*)(vo + 8UL) + 0UL) != 5UL) goto b6;
v4 = (u)zoutput_irexpr;
v5 = vic;
v6 = vb;
- v7 = *(u*)(*(u*)(vo + 8) + 8);
+ v7 = *(u*)(*(u*)(vo + 8UL) + 8UL);
v8 = ((u(*)())v4)(v5, v6, v7);
+ v8;
b4: v21 = (u)zas_opr;
- v22 = *(u*)(vic + 8);
- v23 = 80;
- v24 = 0;
+ v22 = *(u*)(vic + 8UL);
+ v23 = 80UL;
+ v24 = 0UL;
v25 = ((u(*)())v21)(v22, v23, v24);
+ v25;
v26 = (u)zoutput_irexpr;
v27 = vic;
v28 = vb;
- v29 = *(u*)(vo + 16);
+ v29 = *(u*)(vo + 16UL);
v30 = ((u(*)())v26)(v27, v28, v29);
+ v30;
v31 = (u)zas_opr;
- v32 = *(u*)(vic + 8);
- v33 = 88;
- v34 = 7;
+ v32 = *(u*)(vic + 8UL);
+ v33 = 88UL;
+ v34 = 7UL;
v35 = ((u(*)())v31)(v32, v33, v34);
- if (*(u*)*(u*)(vo + 48) != 3) goto b17;
+ v35;
+ if (*(u*)(*(u*)(vo + 48UL) + 0UL) != 3UL) goto b17;
v36 = (u)zas_modrm;
- v37 = *(u*)(vic + 8);
- v38 = 136;
- v39 = 0;
- v40 = 7;
- v41 = 0;
- v42 = 0;
- v43 = 0;
+ v37 = *(u*)(vic + 8UL);
+ v38 = 136UL;
+ v39 = 0UL;
+ v40 = 7UL;
+ v41 = 0UL;
+ v42 = 0UL;
+ v43 = 0UL;
v44 = ((u(*)())v36)(v37, v38, v39, v40, v41, v42, v43);
-b1: return 0;
+ v44;
+b15:b1: return 0UL;
b17: v45 = (u)ztype_isprim;
- v46 = *(u*)(vo + 48);
+ v46 = *(u*)(vo + 48UL);
v47 = ((u(*)())v45)(v46);
if (!v47) goto b20;
v48 = (u)zas_modrm;
- v49 = *(u*)(vic + 8);
- v50 = 137;
- v51 = 0;
- v52 = 7;
- v53 = 0;
- v54 = 0;
- v55 = 0;
+ v49 = *(u*)(vic + 8UL);
+ v50 = 137UL;
+ v51 = 0UL;
+ v52 = 7UL;
+ v53 = 0UL;
+ v54 = 0UL;
+ v55 = 0UL;
v56 = ((u(*)())v48)(v49, v50, v51, v52, v53, v54, v55);
- goto b1;
+ v56;
+ goto b15;
b20: v57 = (u)zcdie;
- v58 = *(u*)vic;
+ v58 = *(u*)(vic + 0UL);
v59 = (u)"invalid store";
v60 = ((u(*)())v57)(v58, v59);
- goto b1;
-b6: if (*(u*)*(u*)(vo + 8) != 0) goto b9;
+ v60;
+ goto b15;
+b6: if (*(u*)(*(u*)(vo + 8UL) + 0UL) != 0UL) goto b9;
v9 = (u)zas_modrm;
- v10 = *(u*)(vic + 8);
- v11 = 141;
- v12 = 0;
- v13 = 5;
- v14 = 0;
- v15 = 0;
- v16 = *(u*)(*(u*)(*(u*)(vic + 112) + *(u*)(*(u*)(vo + 8) + 24) * 8) + 40);
+ v10 = *(u*)(vic + 8UL);
+ v11 = 141UL;
+ v12 = 0UL;
+ v13 = 5UL;
+ v14 = 0UL;
+ v15 = 0UL;
+ v16 = *(u*)(*(u*)(*(u*)(vic + 128UL) + *(u*)(*(u*)(vo + 8UL) + 24UL) * 8UL) + 40UL);
v17 = ((u(*)())v9)(v10, v11, v12, v13, v14, v15, v16);
+ v17;
goto b4;
b9: v18 = (u)zdie;
v19 = (u)"invalid store";
v20 = ((u(*)())v18)(v19);
+ v20;
goto b4;
-b3: if (vkind != 7) goto b25;
+b3: if (vkind != 7UL) goto b25;
goto b1;
-b25: if (vkind != 8) goto b27;
+b25: if (vkind != 8UL) goto b27;
goto b1;
-b27: if (vkind != 27) goto b29;
- if ((s)*(u*)(vo + 24) <= (s)6) goto b30;
+b27: if (vkind != 27UL) goto b29;
+ if ((s)*(u*)(vo + 24UL) <= (s)6UL) goto b32;
v61 = (u)zas_modri;
- v62 = *(u*)(vic + 8);
+ v62 = *(u*)(vic + 8UL);
v63 = 327809UL;
- v64 = 4;
- v65 = (*(u*)(vo + 24) - 6) * 8;
+ v64 = 4UL;
+ v65 = (*(u*)(vo + 24UL) - 6UL) * 8UL;
v66 = ((u(*)())v61)(v62, v63, v64, v65);
+ v66;
b30: v67 = (u)zoutput_irargs;
v68 = vic;
v69 = vb;
v70 = vo;
v71 = ((u(*)())v67)(v68, v69, v70);
- v72 = (u)zoutput_irexpr;
+ v71;
+ if (*(u*)(*(u*)(vo + 8UL) + 0UL) != 2UL) goto b37;
+ v72 = (u)zoutput_ircall;
v73 = vic;
v74 = vb;
- v75 = *(u*)(vo + 8);
+ v75 = *(u*)(vo + 8UL);
v76 = ((u(*)())v72)(v73, v74, v75);
- v77 = (u)zas_modr;
- v78 = *(u*)(vic + 8);
- v79 = 131327UL;
- v80 = 0;
- v81 = ((u(*)())v77)(v78, v79, v80);
- if ((s)*(u*)(vo + 24) <= (s)6) goto b37;
- v82 = (u)zas_modri;
- v83 = *(u*)(vic + 8);
- v84 = 129;
- v85 = 4;
- v86 = (*(u*)(vo + 24) - 6) * 8;
- v87 = ((u(*)())v82)(v83, v84, v85, v86);
-b37: v88 = (u)zoutput_irretval;
- v89 = vic;
- v90 = vb;
- v91 = vo;
- v92 = ((u(*)())v88)(v89, v90, v91);
- if (!*(u*)(*(u*)(vb + 40) + 64)) goto b44;
- v93 = (u)zas_jmp;
- v94 = *(u*)(vic + 8);
- v95 = 233;
- v96 = *(u*)(*(u*)(vb + 40) + 56);
+ v76;
+b35: if ((s)*(u*)(vo + 24UL) <= (s)6UL) goto b43;
+ v87 = (u)zas_modri;
+ v88 = *(u*)(vic + 8UL);
+ v89 = 129UL;
+ v90 = 4UL;
+ v91 = (*(u*)(vo + 24UL) - 6UL) * 8UL;
+ v92 = ((u(*)())v87)(v88, v89, v90, v91);
+ v92;
+b41: v93 = (u)zoutput_irretval;
+ v94 = vic;
+ v95 = vb;
+ v96 = vo;
v97 = ((u(*)())v93)(v94, v95, v96);
-b42: return 0;
-b44: v98 = (u)zoutput_irblock;
- v99 = vic;
- v100 = *(u*)(vb + 40);
- v101 = ((u(*)())v98)(v99, v100);
- goto b42;
-b29: if (vkind != 28) goto b48;
- if (!*(u*)(*(u*)(vb + 40) + 64)) goto b51;
- v102 = (u)zas_jmp;
- v103 = *(u*)(vic + 8);
- v104 = 233;
- v105 = *(u*)(*(u*)(vb + 40) + 56);
- v106 = ((u(*)())v102)(v103, v104, v105);
-b49: return 0;
-b51: v107 = (u)zoutput_irblock;
- v108 = vic;
- v109 = *(u*)(vb + 40);
- v110 = ((u(*)())v107)(v108, v109);
- goto b49;
-b48: if (vkind != 29) goto b55;
- v111 = (u)zoutput_irexpr;
- v112 = vic;
- v113 = vb;
- v114 = *(u*)(vo + 8);
- v115 = ((u(*)())v111)(v112, v113, v114);
- v116 = (u)zas_modrr;
- v117 = *(u*)(vic + 8);
- v118 = 133;
- v119 = 0;
- v120 = 0;
- v121 = ((u(*)())v116)(v117, v118, v119, v120);
- v122 = (u)zas_jmp;
- v123 = *(u*)(vic + 8);
- v124 = 3972;
- v125 = *(u*)(*(u*)(vb + 48) + 56);
- v126 = ((u(*)())v122)(v123, v124, v125);
- if (!*(u*)(*(u*)(vb + 40) + 64)) goto b61;
+ v97;
+ if (!*(u*)(*(u*)(vb + 56UL) + 80UL)) goto b48;
+ v98 = (u)zas_jmp;
+ v99 = *(u*)(vic + 8UL);
+ v100 = 233UL;
+ v101 = *(u*)(*(u*)(vb + 56UL) + 72UL);
+ v102 = ((u(*)())v98)(v99, v100, v101);
+ v102;
+b46: return 0UL;
+b48: v103 = (u)zoutput_irblock;
+ v104 = vic;
+ v105 = *(u*)(vb + 56UL);
+ v106 = ((u(*)())v103)(v104, v105);
+ v106;
+ goto b46;
+b43: goto b41;
+b37: v77 = (u)zoutput_irexpr;
+ v78 = vic;
+ v79 = vb;
+ v80 = *(u*)(vo + 8UL);
+ v81 = ((u(*)())v77)(v78, v79, v80);
+ v81;
+ v82 = (u)zas_modr;
+ v83 = *(u*)(vic + 8UL);
+ v84 = 131327UL;
+ v85 = 0UL;
+ v86 = ((u(*)())v82)(v83, v84, v85);
+ v86;
+ goto b35;
+b32: goto b30;
+b29: if (vkind != 28UL) goto b52;
+ if (!*(u*)(*(u*)(vb + 56UL) + 80UL)) goto b55;
+ v107 = (u)zas_jmp;
+ v108 = *(u*)(vic + 8UL);
+ v109 = 233UL;
+ v110 = *(u*)(*(u*)(vb + 56UL) + 72UL);
+ v111 = ((u(*)())v107)(v108, v109, v110);
+ v111;
+b53: return 0UL;
+b55: v112 = (u)zoutput_irblock;
+ v113 = vic;
+ v114 = *(u*)(vb + 56UL);
+ v115 = ((u(*)())v112)(v113, v114);
+ v115;
+ goto b53;
+b52: if (vkind != 29UL) goto b59;
+ v116 = (u)zoutput_irexpr;
+ v117 = vic;
+ v118 = vb;
+ v119 = *(u*)(vo + 8UL);
+ v120 = ((u(*)())v116)(v117, v118, v119);
+ v120;
+ v121 = (u)zas_modrr;
+ v122 = *(u*)(vic + 8UL);
+ v123 = 133UL;
+ v124 = 0UL;
+ v125 = 0UL;
+ v126 = ((u(*)())v121)(v122, v123, v124, v125);
+ v126;
v127 = (u)zas_jmp;
- v128 = *(u*)(vic + 8);
- v129 = 3973;
- v130 = *(u*)(*(u*)(vb + 40) + 56);
+ v128 = *(u*)(vic + 8UL);
+ v129 = 3968UL + 4UL;
+ v130 = *(u*)(*(u*)(vb + 64UL) + 72UL);
v131 = ((u(*)())v127)(v128, v129, v130);
-b59: if (!*(u*)(*(u*)(vb + 48) + 64)) goto b68;
- v136 = 0;
-b69: if (!v136) goto b64;
- v137 = (u)zoutput_irblock;
+ v131;
+ if (!*(u*)(*(u*)(vb + 56UL) + 80UL)) goto b65;
+ v132 = (u)zas_jmp;
+ v133 = *(u*)(vic + 8UL);
+ v134 = 3968UL + 5UL;
+ v135 = *(u*)(*(u*)(vb + 56UL) + 72UL);
+ v136 = ((u(*)())v132)(v133, v134, v135);
+ v136;
+b63: if (!*(u*)(*(u*)(vb + 64UL) + 80UL)) goto b72;
+ v141 = 0UL;
+b73: if (!v141) goto b70;
+ v142 = (u)zoutput_irblock;
+ v143 = vic;
+ v144 = *(u*)(vb + 64UL);
+ v145 = ((u(*)())v142)(v143, v144);
+ v145;
+b68: return 0UL;
+b70: goto b68;
+b72: v141 = 1UL;
+ goto b73;
+b65: v137 = (u)zoutput_irblock;
v138 = vic;
- v139 = *(u*)(vb + 48);
+ v139 = *(u*)(vb + 56UL);
v140 = ((u(*)())v137)(v138, v139);
-b64: return 0;
-b68: v136 = 1;
- goto b69;
-b61: v132 = (u)zoutput_irblock;
- v133 = vic;
- v134 = *(u*)(vb + 40);
- v135 = ((u(*)())v132)(v133, v134);
- goto b59;
-b55: if (vkind != 30) goto b72;
- if (!*(u*)(vo + 8)) goto b73;
- v141 = (u)zoutput_irexpr;
- v142 = vic;
- v143 = vb;
- v144 = *(u*)(vo + 8);
- v145 = ((u(*)())v141)(v142, v143, v144);
-b73: v146 = (u)zas_modrr;
- v147 = *(u*)(vic + 8);
- v148 = 139;
- v149 = 4;
- v150 = 5;
- v151 = ((u(*)())v146)(v147, v148, v149, v150);
- v152 = (u)zas_opr;
- v153 = *(u*)(vic + 8);
- v154 = 88;
- v155 = 5;
- v156 = ((u(*)())v152)(v153, v154, v155);
- v157 = (u)zas_op;
- v158 = *(u*)(vic + 8);
- v159 = 195;
- v160 = ((u(*)())v157)(v158, v159);
+ v140;
+ goto b63;
+b59: if (vkind != 30UL) goto b76;
+ if (!*(u*)(vo + 8UL)) goto b79;
+ v146 = (u)zoutput_irexpr;
+ v147 = vic;
+ v148 = vb;
+ v149 = *(u*)(vo + 8UL);
+ v150 = ((u(*)())v146)(v147, v148, v149);
+ v150;
+b77: v151 = (u)zas_modrr;
+ v152 = *(u*)(vic + 8UL);
+ v153 = 139UL;
+ v154 = 4UL;
+ v155 = 5UL;
+ v156 = ((u(*)())v151)(v152, v153, v154, v155);
+ v156;
+ v157 = (u)zas_opr;
+ v158 = *(u*)(vic + 8UL);
+ v159 = 88UL;
+ v160 = 5UL;
+ v161 = ((u(*)())v157)(v158, v159, v160);
+ v161;
+ v162 = (u)zas_op;
+ v163 = *(u*)(vic + 8UL);
+ v164 = 195UL;
+ v165 = ((u(*)())v162)(v163, v164);
+ v165;
goto b1;
-b72: v161 = (u)zoutput_irexpr;
- v162 = vic;
- v163 = vb;
- v164 = vo;
- v165 = ((u(*)())v161)(v162, v163, v164);
+b79: goto b77;
+b76: v166 = (u)zoutput_irexpr;
+ v167 = vic;
+ v168 = vb;
+ v169 = vo;
+ v170 = ((u(*)())v166)(v167, v168, v169);
+ v170;
goto b1;
}
u zoutput_irstr(u vic, u vb, u vo) {
@@ -24128,29 +26851,32 @@ u zoutput_irstr(u vic, u vb, u vo) {
u v24 = 0;
u v25 = 0;
v4 = (u)zas_blob;
- v5 = *(u*)(vic + 8);
- v6 = *(u*)(vo + 32);
- v7 = *(u*)(vo + 40) + 1;
+ v5 = *(u*)(vic + 8UL);
+ v6 = *(u*)(vo + 32UL);
+ v7 = *(u*)(vo + 40UL) + 1UL;
v8 = ((u(*)())v4)(v5, v6, v7);
vs = v8;
v9 = (u)zreserve;
- v10 = *(u*)(vic + 8);
- v11 = 16;
+ v10 = *(u*)(vic + 8UL);
+ v11 = 16UL;
v12 = ((u(*)())v9)(v10, v11);
+ v12;
v13 = (u)zas_modrm;
- v14 = *(u*)(vic + 8);
- v15 = 141;
- v16 = 0;
- v17 = 16;
- v18 = 0;
- v19 = 0;
- v20 = 128;
+ v14 = *(u*)(vic + 8UL);
+ v15 = 141UL;
+ v16 = 0UL;
+ v17 = 16UL;
+ v18 = 0UL;
+ v19 = 0UL;
+ v20 = 128UL;
v21 = ((u(*)())v13)(v14, v15, v16, v17, v18, v19, v20);
+ v21;
v22 = (u)zaddfixup;
- v23 = *(u*)(vic + 8);
+ v23 = *(u*)(vic + 8UL);
v24 = vs;
v25 = ((u(*)())v22)(v23, v24);
- return 0;
+ v25;
+ return 0UL;
}
u zoutput_irvars(u vic) {
u voffset = 0;
@@ -24255,144 +26981,159 @@ u zoutput_irvars(u vic) {
u v100 = 0;
u v101 = 0;
u v102 = 0;
- voffset = 0;
- vi = 0;
-b1: if (vi != *(u*)(vic + 120)) goto b3;
- if (voffset == 0) goto b14;
+ voffset = 0UL;
+ vi = 0UL;
+b1: if (vi != *(u*)(vic + 136UL)) goto b5;
+ if (voffset == 0UL) goto b19;
v10 = (u)zas_modri;
- v11 = *(u*)(vic + 8);
+ v11 = *(u*)(vic + 8UL);
v12 = 327809UL;
- v13 = 4;
+ v13 = 4UL;
v14 = voffset;
v15 = ((u(*)())v10)(v11, v12, v13, v14);
+ v15;
v16 = (u)zas_modrr;
- v17 = *(u*)(vic + 8);
- v18 = 51;
- v19 = 0;
- v20 = 0;
+ v17 = *(u*)(vic + 8UL);
+ v18 = 51UL;
+ v19 = 0UL;
+ v20 = 0UL;
v21 = ((u(*)())v16)(v17, v18, v19, v20);
- vi = 0;
-b19: if (vi != voffset) goto b21;
-b14: vi = 0;
-b25: if (vi != *(u*)(vic + 136)) goto b27;
- return 0;
-b27: vv = *(u*)(*(u*)(vic + 112) + vi * 8);
- if (vi != 0) goto b32;
+ v21;
+ vi = 0UL;
+b22: if (vi != voffset) goto b26;
+b17: vi = 0UL;
+b28: if (vi != *(u*)(vic + 152UL)) goto b32;
+ return 0UL;
+b32: vv = *(u*)(*(u*)(vic + 128UL) + vi * 8UL);
+ if (vi != 0UL) goto b35;
v31 = (u)zas_modrm;
- v32 = *(u*)(vic + 8);
- v33 = 137;
- v34 = 7;
- v35 = 5;
- v36 = 0;
- v37 = 0;
- v38 = *(u*)(vv + 40);
+ v32 = *(u*)(vic + 8UL);
+ v33 = 137UL;
+ v34 = 7UL;
+ v35 = 5UL;
+ v36 = 0UL;
+ v37 = 0UL;
+ v38 = *(u*)(vv + 40UL);
v39 = ((u(*)())v31)(v32, v33, v34, v35, v36, v37, v38);
-b30: vi = vi + 1;
- goto b25;
-b32: if (vi != 1) goto b35;
+ v39;
+b33: vi = vi + 1UL;
+ goto b28;
+b35: if (vi != 1UL) goto b38;
v40 = (u)zas_modrm;
- v41 = *(u*)(vic + 8);
- v42 = 137;
- v43 = 6;
- v44 = 5;
- v45 = 0;
- v46 = 0;
- v47 = *(u*)(vv + 40);
+ v41 = *(u*)(vic + 8UL);
+ v42 = 137UL;
+ v43 = 6UL;
+ v44 = 5UL;
+ v45 = 0UL;
+ v46 = 0UL;
+ v47 = *(u*)(vv + 40UL);
v48 = ((u(*)())v40)(v41, v42, v43, v44, v45, v46, v47);
- goto b30;
-b35: if (vi != 2) goto b38;
+ v48;
+ goto b33;
+b38: if (vi != 2UL) goto b41;
v49 = (u)zas_modrm;
- v50 = *(u*)(vic + 8);
- v51 = 137;
- v52 = 2;
- v53 = 5;
- v54 = 0;
- v55 = 0;
- v56 = *(u*)(vv + 40);
+ v50 = *(u*)(vic + 8UL);
+ v51 = 137UL;
+ v52 = 2UL;
+ v53 = 5UL;
+ v54 = 0UL;
+ v55 = 0UL;
+ v56 = *(u*)(vv + 40UL);
v57 = ((u(*)())v49)(v50, v51, v52, v53, v54, v55, v56);
- goto b30;
-b38: if (vi != 3) goto b41;
+ v57;
+ goto b33;
+b41: if (vi != 3UL) goto b44;
v58 = (u)zas_modrm;
- v59 = *(u*)(vic + 8);
- v60 = 137;
- v61 = 1;
- v62 = 5;
- v63 = 0;
- v64 = 0;
- v65 = *(u*)(vv + 40);
+ v59 = *(u*)(vic + 8UL);
+ v60 = 137UL;
+ v61 = 1UL;
+ v62 = 5UL;
+ v63 = 0UL;
+ v64 = 0UL;
+ v65 = *(u*)(vv + 40UL);
v66 = ((u(*)())v58)(v59, v60, v61, v62, v63, v64, v65);
- goto b30;
-b41: if (vi != 4) goto b44;
+ v66;
+ goto b33;
+b44: if (vi != 4UL) goto b47;
v67 = (u)zas_modrm;
- v68 = *(u*)(vic + 8);
- v69 = 137;
- v70 = 8;
- v71 = 5;
- v72 = 0;
- v73 = 0;
- v74 = *(u*)(vv + 40);
+ v68 = *(u*)(vic + 8UL);
+ v69 = 137UL;
+ v70 = 8UL;
+ v71 = 5UL;
+ v72 = 0UL;
+ v73 = 0UL;
+ v74 = *(u*)(vv + 40UL);
v75 = ((u(*)())v67)(v68, v69, v70, v71, v72, v73, v74);
- goto b30;
-b44: if (vi != 5) goto b47;
+ v75;
+ goto b33;
+b47: if (vi != 5UL) goto b50;
v76 = (u)zas_modrm;
- v77 = *(u*)(vic + 8);
- v78 = 137;
- v79 = 9;
- v80 = 5;
- v81 = 0;
- v82 = 0;
- v83 = *(u*)(vv + 40);
+ v77 = *(u*)(vic + 8UL);
+ v78 = 137UL;
+ v79 = 9UL;
+ v80 = 5UL;
+ v81 = 0UL;
+ v82 = 0UL;
+ v83 = *(u*)(vv + 40UL);
v84 = ((u(*)())v76)(v77, v78, v79, v80, v81, v82, v83);
- goto b30;
-b47: v85 = (u)zas_modrm;
- v86 = *(u*)(vic + 8);
- v87 = 139;
- v88 = 0;
- v89 = 5;
- v90 = 0;
- v91 = 0;
- v92 = (vi - 6 + 2) * 8;
+ v84;
+ goto b33;
+b50: v85 = (u)zas_modrm;
+ v86 = *(u*)(vic + 8UL);
+ v87 = 139UL;
+ v88 = 0UL;
+ v89 = 5UL;
+ v90 = 0UL;
+ v91 = 0UL;
+ v92 = (vi - 6UL + 2UL) * 8UL;
v93 = ((u(*)())v85)(v86, v87, v88, v89, v90, v91, v92);
+ v93;
v94 = (u)zas_modrm;
- v95 = *(u*)(vic + 8);
- v96 = 137;
- v97 = 0;
- v98 = 5;
- v99 = 0;
- v100 = 0;
- v101 = *(u*)(vv + 40);
+ v95 = *(u*)(vic + 8UL);
+ v96 = 137UL;
+ v97 = 0UL;
+ v98 = 5UL;
+ v99 = 0UL;
+ v100 = 0UL;
+ v101 = *(u*)(vv + 40UL);
v102 = ((u(*)())v94)(v95, v96, v97, v98, v99, v100, v101);
- goto b30;
-b21: vi = vi + 8;
+ v102;
+ goto b33;
+b26: vi = vi + 8UL;
v22 = (u)zas_modrm;
- v23 = *(u*)(vic + 8);
- v24 = 137;
- v25 = 0;
- v26 = 5;
- v27 = 0;
- v28 = 0;
+ v23 = *(u*)(vic + 8UL);
+ v24 = 137UL;
+ v25 = 0UL;
+ v26 = 5UL;
+ v27 = 0UL;
+ v28 = 0UL;
v29 = -vi;
v30 = ((u(*)())v22)(v23, v24, v25, v26, v27, v28, v29);
- goto b19;
-b3: vv = *(u*)(*(u*)(vic + 112) + vi * 8);
- if (!*(u*)(vv + 24)) goto b10;
- if (*(u*)*(u*)(vv + 24) == 1) goto b10;
- v5 = 1;
-b12: if (!v5) goto b8;
+ v30;
+ goto b22;
+b19: goto b17;
+b5: vv = *(u*)(*(u*)(vic + 128UL) + vi * 8UL);
+ if (!*(u*)(vv + 48UL)) goto b8;
+ vi = vi + 1UL;
+ goto b1;
+b8: if (!*(u*)(vv + 24UL)) goto b13;
+ if (*(u*)(*(u*)(vv + 24UL) + 0UL) == 1UL) goto b13;
+ v5 = 1UL;
+b15: if (!v5) goto b11;
v6 = (u)ztype_sizeof;
- v7 = *(u*)vic;
- v8 = *(u*)(vv + 24);
+ v7 = *(u*)(vic + 0UL);
+ v8 = *(u*)(vv + 24UL);
v9 = ((u(*)())v6)(v7, v8);
vsize = v9;
-b6: vsize = vsize + 7 & -8UL;
+b9: vsize = vsize + 7UL & -8UL;
voffset = voffset + vsize;
- *(u*)(vv + 40) = -voffset;
- vi = vi + 1;
+ *(u*)(vv + 40UL) = -voffset;
+ vi = vi + 1UL;
goto b1;
-b8: vsize = 8;
- goto b6;
-b10: v5 = 0;
- goto b12;
+b11: vsize = 8UL;
+ goto b9;
+b13: v5 = 0UL;
+ goto b15;
}
u zparse(u vc, u vfilename, u verr) {
u vf = 0;
@@ -24448,29 +27189,33 @@ u zparse(u vc, u vfilename, u verr) {
u v53 = 0;
v8 = (u)zopen;
v9 = vfilename;
- v10 = 0;
- v11 = 0;
+ v10 = 0UL;
+ v11 = 0UL;
v12 = ((u(*)())v8)(v9, v10, v11);
vfd = v12;
- if ((s)vfd >= (s)0) goto b2;
+ if ((s)vfd >= (s)0UL) goto b4;
v13 = (u)zfputs;
v14 = verr;
v15 = (u)"failed to open ";
v16 = ((u(*)())v13)(v14, v15);
+ v16;
v17 = (u)zfputs;
v18 = verr;
v19 = vfilename;
v20 = ((u(*)())v17)(v18, v19);
+ v20;
v21 = (u)zfputs;
v22 = verr;
v23 = (u)"\012";
v24 = ((u(*)())v21)(v22, v23);
+ v24;
v25 = (u)zexit;
- v26 = 1;
+ v26 = 1UL;
v27 = ((u(*)())v25)(v26);
+ v27;
b2: v28 = (u)zfopen;
v29 = vfd;
- v30 = *(u*)vc;
+ v30 = *(u*)(vc + 0UL);
v31 = ((u(*)())v28)(v29, v30);
vf = v31;
v32 = (u)zfreadall;
@@ -24481,15 +27226,17 @@ b2: v28 = (u)zfopen;
v36 = (u)zfclose;
v37 = vf;
v38 = ((u(*)())v36)(v37);
+ v38;
v39 = (u)zpeg_reset;
- v40 = *(u*)(vc + 8);
+ v40 = *(u*)(vc + 8UL);
v41 = vfilename;
v42 = vsrc;
v43 = vlen;
v44 = ((u(*)())v39)(v40, v41, v42, v43);
+ v44;
v45 = (u)zpeg_parse;
- v46 = *(u*)(vc + 8);
- v47 = 89;
+ v46 = *(u*)(vc + 8UL);
+ v47 = 89UL;
v48 = verr;
v49 = ((u(*)())v45)(v46, v47, v48);
vpn = v49;
@@ -24498,6 +27245,7 @@ b2: v28 = (u)zfopen;
v52 = vpn;
v53 = ((u(*)())v50)(v51, v52);
return v53;
+b4: goto b2;
}
u zparse_escape(u vs, u vi, u vn) {
u vnc = 0;
@@ -24527,67 +27275,76 @@ u zparse_escape(u vs, u vi, u vn) {
u v27 = 0;
u v28 = 0;
u v29 = 0;
- if (*(u*)vi != vn) goto b1;
+ if (*(u*)vi != vn) goto b3;
v5 = (u)zdie;
v6 = (u)"invalid escape";
v7 = ((u(*)())v5)(v6);
-b1: vnc = (u)*(b*)(vs + *(u*)vi);
- *(u*)vi = *(u*)vi + 1;
- if (vnc != 116) goto b7;
- return 9;
-b7: if (vnc != 114) goto b9;
- return 13;
-b9: if (vnc != 110) goto b11;
- return 10;
-b11: if (vnc != 92) goto b13;
- return 92;
-b13: if (vnc != 39) goto b15;
- return 39;
-b15: if (vnc != 34) goto b17;
- return 34;
-b17: if (vnc != 45) goto b19;
- return 45;
-b19: if (vnc != 91) goto b21;
- return 91;
-b21: if (vnc != 93) goto b23;
- return 93;
-b23: if (vnc != 120) goto b25;
- if ((s)(vn - *(u*)vi) >= (s)2) goto b26;
+ v7;
+b1: vnc = (u)*(b*)(vs + *(u*)vi * 1UL);
+ *(u*)vi = *(u*)vi + 1UL;
+ if (vnc != 116UL) goto b7;
+ return 9UL;
+b7: if (vnc != 114UL) goto b9;
+ return 13UL;
+b9: if (vnc != 110UL) goto b11;
+ return 10UL;
+b11: if (vnc != 92UL) goto b13;
+ return 92UL;
+b13: if (vnc != 39UL) goto b15;
+ return 39UL;
+b15: if (vnc != 34UL) goto b17;
+ return 34UL;
+b17: if (vnc != 45UL) goto b19;
+ return 45UL;
+b19: if (vnc != 91UL) goto b21;
+ return 91UL;
+b21: if (vnc != 93UL) goto b23;
+ return 93UL;
+b23: if (vnc != 120UL) goto b25;
+ if ((s)(vn - *(u*)vi) >= (s)2UL) goto b28;
v8 = (u)zdie;
v9 = (u)"invalid escape";
v10 = ((u(*)())v8)(v9);
+ v10;
b26: v11 = (u)zhexdig;
- v12 = (u)*(b*)(vs + *(u*)vi);
+ v12 = (u)*(b*)(vs + *(u*)vi * 1UL);
v13 = (u)&vok;
v14 = ((u(*)())v11)(v12, v13);
- vnc = v14 * 16;
+ vnc = v14 * 16UL;
if (!vok) goto b35;
- v15 = 0;
-b36: if (!v15) goto b31;
+ v15 = 0UL;
+b36: if (!v15) goto b33;
v16 = (u)zdie;
v17 = (u)"invalid hex";
v18 = ((u(*)())v16)(v17);
+ v18;
b31: v19 = (u)zhexdig;
- v20 = (u)*(b*)(vs + *(u*)vi + 1);
+ v20 = (u)*(b*)(vs + (*(u*)vi + 1UL) * 1UL);
v21 = (u)&vok;
v22 = ((u(*)())v19)(v20, v21);
vnc = vnc + v22;
if (!vok) goto b43;
- v23 = 0;
-b44: if (!v23) goto b39;
+ v23 = 0UL;
+b44: if (!v23) goto b41;
v24 = (u)zdie;
v25 = (u)"invalid hex";
v26 = ((u(*)())v24)(v25);
-b39: *(u*)vi = *(u*)vi + 2;
+ v26;
+b39: *(u*)vi = *(u*)vi + 2UL;
return vnc;
-b43: v23 = 1;
+b41: goto b39;
+b43: v23 = 1UL;
goto b44;
-b35: v15 = 1;
+b33: goto b31;
+b35: v15 = 1UL;
goto b36;
+b28: goto b26;
b25: v27 = (u)zdie;
v28 = (u)"invalid escape";
v29 = ((u(*)())v27)(v28);
- return 0;
+ v29;
+ return 0UL;
+b3: goto b1;
}
u zpeg_P_add_expr(u vc) {
u v1 = 0;
@@ -24597,64 +27354,64 @@ u zpeg_P_add_expr(u vc) {
u v5 = 0;
u v6 = 0;
u v7 = 0;
- zenter(vc, 42);
+ zenter(vc, 42UL);
v1 = zpeg_P_mul_expr(vc);
- if (v1 == 0) goto b1;
+ if (v1 == 0UL) goto b1;
b5: zchoice(vc);
zchoice(vc);
v2 = zpeg_P_add_op(vc);
- if (v2 == 0) goto b10;
+ if (v2 == 0UL) goto b10;
b9: zcommit(vc);
v6 = zpeg_P_sp(vc);
- if (v6 == 0) goto b6;
+ if (v6 == 0UL) goto b6;
v7 = zpeg_P_mul_expr(vc);
- if (v7 == 0) goto b6;
+ if (v7 == 0UL) goto b6;
zcommit(vc);
goto b5;
-b6: zleave(vc, 42);
- return 1;
+b6: zleave(vc, 42UL);
+ return 1UL;
b10: zchoice(vc);
v3 = zpeg_P_sub_op(vc);
- if (v3 == 0) goto b14;
+ if (v3 == 0UL) goto b14;
goto b9;
b14: zchoice(vc);
v4 = zpeg_P_or_op(vc);
- if (v4 == 0) goto b18;
+ if (v4 == 0UL) goto b18;
goto b9;
b18: zchoice(vc);
v5 = zpeg_P_xor_op(vc);
- if (v5 == 0) goto b22;
+ if (v5 == 0UL) goto b22;
goto b9;
b22: zfail(vc);
goto b6;
b1: zfail(vc);
- return 0;
+ return 0UL;
}
u zpeg_P_add_op(u vc) {
u v1 = 0;
- zenter(vc, 38);
+ zenter(vc, 38UL);
v1 = zliteral(vc, (u)"+");
- if (v1 == 0) goto b1;
- zleave(vc, 38);
- return 1;
+ if (v1 == 0UL) goto b1;
+ zleave(vc, 38UL);
+ return 1UL;
b1: zfail(vc);
- return 0;
+ return 0UL;
}
u zpeg_P_and_op(u vc) {
u v1 = 0;
u v2 = 0;
- zenter(vc, 46);
+ zenter(vc, 46UL);
v1 = zliteral(vc, (u)"&");
- if (v1 == 0) goto b1;
+ if (v1 == 0UL) goto b1;
zchoice(vc);
v2 = zliteral(vc, (u)"&");
- if (v2 == 0) goto b5;
+ if (v2 == 0UL) goto b5;
zfail(vc);
zfail(vc);
b1: zfail(vc);
- return 0;
-b5: zleave(vc, 46);
- return 1;
+ return 0UL;
+b5: zleave(vc, 46UL);
+ return 1UL;
}
u zpeg_P_arg_decl(u vc) {
u v1 = 0;
@@ -24662,37 +27419,37 @@ u zpeg_P_arg_decl(u vc) {
u v3 = 0;
u v4 = 0;
u v5 = 0;
- zenter(vc, 10);
+ zenter(vc, 10UL);
v1 = zpeg_P_ident(vc);
- if (v1 == 0) goto b1;
+ if (v1 == 0UL) goto b1;
v2 = zpeg_P_sp(vc);
- if (v2 == 0) goto b1;
+ if (v2 == 0UL) goto b1;
v3 = zliteral(vc, (u)":");
- if (v3 == 0) goto b1;
+ if (v3 == 0UL) goto b1;
v4 = zpeg_P_sp(vc);
- if (v4 == 0) goto b1;
+ if (v4 == 0UL) goto b1;
v5 = zpeg_P_type(vc);
- if (v5 == 0) goto b1;
- zleave(vc, 10);
- return 1;
+ if (v5 == 0UL) goto b1;
+ zleave(vc, 10UL);
+ return 1UL;
b1: zfail(vc);
- return 0;
+ return 0UL;
}
u zpeg_P_as(u vc) {
u v1 = 0;
u v2 = 0;
- zenter(vc, 86);
+ zenter(vc, 86UL);
v1 = zliteral(vc, (u)"as");
- if (v1 == 0) goto b1;
+ if (v1 == 0UL) goto b1;
zchoice(vc);
v2 = zcharset(vc, (u)"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz");
- if (v2 == 0) goto b5;
+ if (v2 == 0UL) goto b5;
zfail(vc);
zfail(vc);
b1: zfail(vc);
- return 0;
-b5: zleave(vc, 86);
- return 1;
+ return 0UL;
+b5: zleave(vc, 86UL);
+ return 1UL;
}
u zpeg_P_assign_stmt(u vc) {
u v1 = 0;
@@ -24701,49 +27458,49 @@ u zpeg_P_assign_stmt(u vc) {
u v4 = 0;
u v5 = 0;
u v6 = 0;
- zenter(vc, 23);
+ zenter(vc, 23UL);
v1 = zpeg_P_unary_expr(vc);
- if (v1 == 0) goto b1;
+ if (v1 == 0UL) goto b1;
v2 = zliteral(vc, (u)"=");
- if (v2 == 0) goto b1;
+ if (v2 == 0UL) goto b1;
v3 = zpeg_P_sp(vc);
- if (v3 == 0) goto b1;
+ if (v3 == 0UL) goto b1;
v4 = zpeg_P_expr(vc);
- if (v4 == 0) goto b1;
+ if (v4 == 0UL) goto b1;
v5 = zliteral(vc, (u)";");
- if (v5 == 0) goto b1;
+ if (v5 == 0UL) goto b1;
v6 = zpeg_P_sp(vc);
- if (v6 == 0) goto b1;
- zleave(vc, 23);
- return 1;
+ if (v6 == 0UL) goto b1;
+ zleave(vc, 23UL);
+ return 1UL;
b1: zfail(vc);
- return 0;
+ return 0UL;
}
u zpeg_P_band_op(u vc) {
u v1 = 0;
- zenter(vc, 28);
+ zenter(vc, 28UL);
v1 = zliteral(vc, (u)"&&");
- if (v1 == 0) goto b1;
- zleave(vc, 28);
- return 1;
+ if (v1 == 0UL) goto b1;
+ zleave(vc, 28UL);
+ return 1UL;
b1: zfail(vc);
- return 0;
+ return 0UL;
}
u zpeg_P_bnot_op(u vc) {
u v1 = 0;
u v2 = 0;
- zenter(vc, 56);
+ zenter(vc, 56UL);
v1 = zliteral(vc, (u)"!");
- if (v1 == 0) goto b1;
+ if (v1 == 0UL) goto b1;
zchoice(vc);
v2 = zliteral(vc, (u)"=");
- if (v2 == 0) goto b5;
+ if (v2 == 0UL) goto b5;
zfail(vc);
zfail(vc);
b1: zfail(vc);
- return 0;
-b5: zleave(vc, 56);
- return 1;
+ return 0UL;
+b5: zleave(vc, 56UL);
+ return 1UL;
}
u zpeg_P_bool_expr(u vc) {
u v1 = 0;
@@ -24751,91 +27508,91 @@ u zpeg_P_bool_expr(u vc) {
u v3 = 0;
u v4 = 0;
u v5 = 0;
- zenter(vc, 30);
+ zenter(vc, 30UL);
v1 = zpeg_P_comp_expr(vc);
- if (v1 == 0) goto b1;
+ if (v1 == 0UL) goto b1;
b5: zchoice(vc);
zchoice(vc);
v2 = zpeg_P_band_op(vc);
- if (v2 == 0) goto b10;
+ if (v2 == 0UL) goto b10;
b9: zcommit(vc);
v4 = zpeg_P_sp(vc);
- if (v4 == 0) goto b6;
+ if (v4 == 0UL) goto b6;
v5 = zpeg_P_comp_expr(vc);
- if (v5 == 0) goto b6;
+ if (v5 == 0UL) goto b6;
zcommit(vc);
goto b5;
-b6: zleave(vc, 30);
- return 1;
+b6: zleave(vc, 30UL);
+ return 1UL;
b10: zchoice(vc);
v3 = zpeg_P_bor_op(vc);
- if (v3 == 0) goto b14;
+ if (v3 == 0UL) goto b14;
goto b9;
b14: zfail(vc);
goto b6;
b1: zfail(vc);
- return 0;
+ return 0UL;
}
u zpeg_P_bor_op(u vc) {
u v1 = 0;
- zenter(vc, 29);
+ zenter(vc, 29UL);
v1 = zliteral(vc, (u)"||");
- if (v1 == 0) goto b1;
- zleave(vc, 29);
- return 1;
+ if (v1 == 0UL) goto b1;
+ zleave(vc, 29UL);
+ return 1UL;
b1: zfail(vc);
- return 0;
+ return 0UL;
}
u zpeg_P_break(u vc) {
u v1 = 0;
u v2 = 0;
- zenter(vc, 71);
+ zenter(vc, 71UL);
v1 = zliteral(vc, (u)"break");
- if (v1 == 0) goto b1;
+ if (v1 == 0UL) goto b1;
zchoice(vc);
v2 = zcharset(vc, (u)"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz");
- if (v2 == 0) goto b5;
+ if (v2 == 0UL) goto b5;
zfail(vc);
zfail(vc);
b1: zfail(vc);
- return 0;
-b5: zleave(vc, 71);
- return 1;
+ return 0UL;
+b5: zleave(vc, 71UL);
+ return 1UL;
}
u zpeg_P_break_stmt(u vc) {
u v1 = 0;
u v2 = 0;
u v3 = 0;
u v4 = 0;
- zenter(vc, 17);
+ zenter(vc, 17UL);
v1 = zpeg_P_break(vc);
- if (v1 == 0) goto b1;
+ if (v1 == 0UL) goto b1;
v2 = zpeg_P_sp(vc);
- if (v2 == 0) goto b1;
+ if (v2 == 0UL) goto b1;
v3 = zliteral(vc, (u)";");
- if (v3 == 0) goto b1;
+ if (v3 == 0UL) goto b1;
v4 = zpeg_P_sp(vc);
- if (v4 == 0) goto b1;
- zleave(vc, 17);
- return 1;
+ if (v4 == 0UL) goto b1;
+ zleave(vc, 17UL);
+ return 1UL;
b1: zfail(vc);
- return 0;
+ return 0UL;
}
u zpeg_P_byte(u vc) {
u v1 = 0;
u v2 = 0;
- zenter(vc, 82);
+ zenter(vc, 82UL);
v1 = zliteral(vc, (u)"byte");
- if (v1 == 0) goto b1;
+ if (v1 == 0UL) goto b1;
zchoice(vc);
v2 = zcharset(vc, (u)"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz");
- if (v2 == 0) goto b5;
+ if (v2 == 0UL) goto b5;
zfail(vc);
zfail(vc);
b1: zfail(vc);
- return 0;
-b5: zleave(vc, 82);
- return 1;
+ return 0UL;
+b5: zleave(vc, 82UL);
+ return 1UL;
}
u zpeg_P_call_expr(u vc) {
u v1 = 0;
@@ -24848,54 +27605,54 @@ u zpeg_P_call_expr(u vc) {
u v8 = 0;
u v9 = 0;
u v10 = 0;
- zenter(vc, 59);
+ zenter(vc, 59UL);
v1 = zliteral(vc, (u)"(");
- if (v1 == 0) goto b1;
+ if (v1 == 0UL) goto b1;
v2 = zpeg_P_sp(vc);
- if (v2 == 0) goto b1;
+ if (v2 == 0UL) goto b1;
zchoice(vc);
v3 = zpeg_P_expr(vc);
- if (v3 == 0) goto b8;
+ if (v3 == 0UL) goto b8;
b11: zchoice(vc);
v4 = zliteral(vc, (u)",");
- if (v4 == 0) goto b12;
+ if (v4 == 0UL) goto b12;
v5 = zpeg_P_sp(vc);
- if (v5 == 0) goto b12;
+ if (v5 == 0UL) goto b12;
v6 = zpeg_P_expr(vc);
- if (v6 == 0) goto b12;
+ if (v6 == 0UL) goto b12;
zcommit(vc);
goto b11;
b12: zcommit(vc);
b8: zchoice(vc);
v7 = zliteral(vc, (u)",");
- if (v7 == 0) goto b23;
+ if (v7 == 0UL) goto b23;
v8 = zpeg_P_sp(vc);
- if (v8 == 0) goto b23;
+ if (v8 == 0UL) goto b23;
zcommit(vc);
b23: v9 = zliteral(vc, (u)")");
- if (v9 == 0) goto b1;
+ if (v9 == 0UL) goto b1;
v10 = zpeg_P_sp(vc);
- if (v10 == 0) goto b1;
- zleave(vc, 59);
- return 1;
+ if (v10 == 0UL) goto b1;
+ zleave(vc, 59UL);
+ return 1UL;
b1: zfail(vc);
- return 0;
+ return 0UL;
}
u zpeg_P_cast_expr(u vc) {
u v1 = 0;
u v2 = 0;
u v3 = 0;
- zenter(vc, 61);
+ zenter(vc, 61UL);
v1 = zliteral(vc, (u)"as");
- if (v1 == 0) goto b1;
+ if (v1 == 0UL) goto b1;
v2 = zpeg_P_sp(vc);
- if (v2 == 0) goto b1;
+ if (v2 == 0UL) goto b1;
v3 = zpeg_P_type(vc);
- if (v3 == 0) goto b1;
- zleave(vc, 61);
- return 1;
+ if (v3 == 0UL) goto b1;
+ zleave(vc, 61UL);
+ return 1UL;
b1: zfail(vc);
- return 0;
+ return 0UL;
}
u zpeg_P_char(u vc) {
u v1 = 0;
@@ -24908,50 +27665,50 @@ u zpeg_P_char(u vc) {
u v8 = 0;
u v9 = 0;
u v10 = 0;
- zenter(vc, 68);
+ zenter(vc, 68UL);
v1 = zcharset(vc, (u)"'");
- if (v1 == 0) goto b1;
+ if (v1 == 0UL) goto b1;
zchoice(vc);
v2 = zcharset(vc, (u)"\134");
- if (v2 == 0) goto b7;
+ if (v2 == 0UL) goto b7;
v3 = zany(vc);
- if (v3 == 0) goto b7;
+ if (v3 == 0UL) goto b7;
b6: zcommit(vc);
b25: zchoice(vc);
zchoice(vc);
v6 = zcharset(vc, (u)"\134");
- if (v6 == 0) goto b30;
+ if (v6 == 0UL) goto b30;
v7 = zany(vc);
- if (v7 == 0) goto b30;
+ if (v7 == 0UL) goto b30;
b29: zcommit(vc);
zcommit(vc);
goto b25;
b30: zchoice(vc);
zchoice(vc);
v8 = zcharset(vc, (u)"'");
- if (v8 == 0) goto b38;
+ if (v8 == 0UL) goto b38;
zfail(vc);
zfail(vc);
b36: zfail(vc);
v10 = zcharset(vc, (u)"'");
- if (v10 == 0) goto b1;
- zleave(vc, 68);
- return 1;
+ if (v10 == 0UL) goto b1;
+ zleave(vc, 68UL);
+ return 1UL;
b1: zfail(vc);
- return 0;
+ return 0UL;
b38: v9 = zany(vc);
- if (v9 == 0) goto b36;
+ if (v9 == 0UL) goto b36;
goto b29;
b7: zchoice(vc);
zchoice(vc);
v4 = zcharset(vc, (u)"'");
- if (v4 == 0) goto b15;
+ if (v4 == 0UL) goto b15;
zfail(vc);
zfail(vc);
b13: zfail(vc);
goto b1;
b15: v5 = zany(vc);
- if (v5 == 0) goto b13;
+ if (v5 == 0UL) goto b13;
goto b6;
}
u zpeg_P_comp_expr(u vc) {
@@ -24964,45 +27721,45 @@ u zpeg_P_comp_expr(u vc) {
u v7 = 0;
u v8 = 0;
u v9 = 0;
- zenter(vc, 37);
+ zenter(vc, 37UL);
v1 = zpeg_P_add_expr(vc);
- if (v1 == 0) goto b1;
+ if (v1 == 0UL) goto b1;
zchoice(vc);
zchoice(vc);
v2 = zpeg_P_le_op(vc);
- if (v2 == 0) goto b9;
+ if (v2 == 0UL) goto b9;
b8: zcommit(vc);
v8 = zpeg_P_sp(vc);
- if (v8 == 0) goto b6;
+ if (v8 == 0UL) goto b6;
v9 = zpeg_P_add_expr(vc);
- if (v9 == 0) goto b6;
+ if (v9 == 0UL) goto b6;
zcommit(vc);
-b6: zleave(vc, 37);
- return 1;
+b6: zleave(vc, 37UL);
+ return 1UL;
b9: zchoice(vc);
v3 = zpeg_P_ge_op(vc);
- if (v3 == 0) goto b13;
+ if (v3 == 0UL) goto b13;
goto b8;
b13: zchoice(vc);
v4 = zpeg_P_lt_op(vc);
- if (v4 == 0) goto b17;
+ if (v4 == 0UL) goto b17;
goto b8;
b17: zchoice(vc);
v5 = zpeg_P_gt_op(vc);
- if (v5 == 0) goto b21;
+ if (v5 == 0UL) goto b21;
goto b8;
b21: zchoice(vc);
v6 = zpeg_P_eq_op(vc);
- if (v6 == 0) goto b25;
+ if (v6 == 0UL) goto b25;
goto b8;
b25: zchoice(vc);
v7 = zpeg_P_ne_op(vc);
- if (v7 == 0) goto b29;
+ if (v7 == 0UL) goto b29;
goto b8;
b29: zfail(vc);
goto b6;
b1: zfail(vc);
- return 0;
+ return 0UL;
}
u zpeg_P_compound_stmt(u vc) {
u v1 = 0;
@@ -25010,107 +27767,107 @@ u zpeg_P_compound_stmt(u vc) {
u v3 = 0;
u v4 = 0;
u v5 = 0;
- zenter(vc, 26);
+ zenter(vc, 26UL);
v1 = zliteral(vc, (u)"{");
- if (v1 == 0) goto b1;
+ if (v1 == 0UL) goto b1;
v2 = zpeg_P_sp(vc);
- if (v2 == 0) goto b1;
+ if (v2 == 0UL) goto b1;
b7: zchoice(vc);
v3 = zpeg_P_stmt(vc);
- if (v3 == 0) goto b8;
+ if (v3 == 0UL) goto b8;
zcommit(vc);
goto b7;
b8: v4 = zliteral(vc, (u)"}");
- if (v4 == 0) goto b1;
+ if (v4 == 0UL) goto b1;
v5 = zpeg_P_sp(vc);
- if (v5 == 0) goto b1;
- zleave(vc, 26);
- return 1;
+ if (v5 == 0UL) goto b1;
+ zleave(vc, 26UL);
+ return 1UL;
b1: zfail(vc);
- return 0;
+ return 0UL;
}
u zpeg_P_continue(u vc) {
u v1 = 0;
u v2 = 0;
- zenter(vc, 76);
+ zenter(vc, 76UL);
v1 = zliteral(vc, (u)"continue");
- if (v1 == 0) goto b1;
+ if (v1 == 0UL) goto b1;
zchoice(vc);
v2 = zcharset(vc, (u)"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz");
- if (v2 == 0) goto b5;
+ if (v2 == 0UL) goto b5;
zfail(vc);
zfail(vc);
b1: zfail(vc);
- return 0;
-b5: zleave(vc, 76);
- return 1;
+ return 0UL;
+b5: zleave(vc, 76UL);
+ return 1UL;
}
u zpeg_P_continue_stmt(u vc) {
u v1 = 0;
u v2 = 0;
u v3 = 0;
u v4 = 0;
- zenter(vc, 18);
+ zenter(vc, 18UL);
v1 = zpeg_P_continue(vc);
- if (v1 == 0) goto b1;
+ if (v1 == 0UL) goto b1;
v2 = zpeg_P_sp(vc);
- if (v2 == 0) goto b1;
+ if (v2 == 0UL) goto b1;
v3 = zliteral(vc, (u)";");
- if (v3 == 0) goto b1;
+ if (v3 == 0UL) goto b1;
v4 = zpeg_P_sp(vc);
- if (v4 == 0) goto b1;
- zleave(vc, 18);
- return 1;
+ if (v4 == 0UL) goto b1;
+ zleave(vc, 18UL);
+ return 1UL;
b1: zfail(vc);
- return 0;
+ return 0UL;
}
u zpeg_P_dec(u vc) {
u v1 = 0;
u v2 = 0;
u v3 = 0;
- zenter(vc, 66);
+ zenter(vc, 66UL);
zchoice(vc);
v1 = zliteral(vc, (u)"_");
- if (v1 == 0) goto b3;
+ if (v1 == 0UL) goto b3;
zfail(vc);
zfail(vc);
b1: zfail(vc);
- return 0;
+ return 0UL;
b3: v2 = zcharset(vc, (u)"0123456789_");
- if (v2 == 0) goto b1;
+ if (v2 == 0UL) goto b1;
b11: zchoice(vc);
v3 = zcharset(vc, (u)"0123456789_");
- if (v3 == 0) goto b12;
+ if (v3 == 0UL) goto b12;
zcommit(vc);
goto b11;
-b12: zleave(vc, 66);
- return 1;
+b12: zleave(vc, 66UL);
+ return 1UL;
}
u zpeg_P_deref_op(u vc) {
u v1 = 0;
- zenter(vc, 52);
+ zenter(vc, 52UL);
v1 = zliteral(vc, (u)"*");
- if (v1 == 0) goto b1;
- zleave(vc, 52);
- return 1;
+ if (v1 == 0UL) goto b1;
+ zleave(vc, 52UL);
+ return 1UL;
b1: zfail(vc);
- return 0;
+ return 0UL;
}
u zpeg_P_div_op(u vc) {
u v1 = 0;
u v2 = 0;
- zenter(vc, 44);
+ zenter(vc, 44UL);
v1 = zliteral(vc, (u)"/");
- if (v1 == 0) goto b1;
+ if (v1 == 0UL) goto b1;
zchoice(vc);
v2 = zliteral(vc, (u)"/");
- if (v2 == 0) goto b5;
+ if (v2 == 0UL) goto b5;
zfail(vc);
zfail(vc);
b1: zfail(vc);
- return 0;
-b5: zleave(vc, 44);
- return 1;
+ return 0UL;
+b5: zleave(vc, 44UL);
+ return 1UL;
}
u zpeg_P_elif_stmt(u vc) {
u v1 = 0;
@@ -25119,84 +27876,84 @@ u zpeg_P_elif_stmt(u vc) {
u v4 = 0;
u v5 = 0;
u v6 = 0;
- zenter(vc, 13);
+ zenter(vc, 13UL);
v1 = zpeg_P_else(vc);
- if (v1 == 0) goto b1;
+ if (v1 == 0UL) goto b1;
v2 = zpeg_P_sp(vc);
- if (v2 == 0) goto b1;
+ if (v2 == 0UL) goto b1;
v3 = zpeg_P_if(vc);
- if (v3 == 0) goto b1;
+ if (v3 == 0UL) goto b1;
v4 = zpeg_P_sp(vc);
- if (v4 == 0) goto b1;
+ if (v4 == 0UL) goto b1;
v5 = zpeg_P_expr(vc);
- if (v5 == 0) goto b1;
+ if (v5 == 0UL) goto b1;
v6 = zpeg_P_compound_stmt(vc);
- if (v6 == 0) goto b1;
- zleave(vc, 13);
- return 1;
+ if (v6 == 0UL) goto b1;
+ zleave(vc, 13UL);
+ return 1UL;
b1: zfail(vc);
- return 0;
+ return 0UL;
}
u zpeg_P_else(u vc) {
u v1 = 0;
u v2 = 0;
- zenter(vc, 74);
+ zenter(vc, 74UL);
v1 = zliteral(vc, (u)"else");
- if (v1 == 0) goto b1;
+ if (v1 == 0UL) goto b1;
zchoice(vc);
v2 = zcharset(vc, (u)"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz");
- if (v2 == 0) goto b5;
+ if (v2 == 0UL) goto b5;
zfail(vc);
zfail(vc);
b1: zfail(vc);
- return 0;
-b5: zleave(vc, 74);
- return 1;
+ return 0UL;
+b5: zleave(vc, 74UL);
+ return 1UL;
}
u zpeg_P_else_stmt(u vc) {
u v1 = 0;
u v2 = 0;
u v3 = 0;
- zenter(vc, 14);
+ zenter(vc, 14UL);
v1 = zpeg_P_else(vc);
- if (v1 == 0) goto b1;
+ if (v1 == 0UL) goto b1;
v2 = zpeg_P_sp(vc);
- if (v2 == 0) goto b1;
+ if (v2 == 0UL) goto b1;
v3 = zpeg_P_compound_stmt(vc);
- if (v3 == 0) goto b1;
- zleave(vc, 14);
- return 1;
+ if (v3 == 0UL) goto b1;
+ zleave(vc, 14UL);
+ return 1UL;
b1: zfail(vc);
- return 0;
+ return 0UL;
}
u zpeg_P_empty_stmt(u vc) {
u v1 = 0;
u v2 = 0;
- zenter(vc, 25);
+ zenter(vc, 25UL);
v1 = zliteral(vc, (u)";");
- if (v1 == 0) goto b1;
+ if (v1 == 0UL) goto b1;
v2 = zpeg_P_sp(vc);
- if (v2 == 0) goto b1;
- zleave(vc, 25);
- return 1;
+ if (v2 == 0UL) goto b1;
+ zleave(vc, 25UL);
+ return 1UL;
b1: zfail(vc);
- return 0;
+ return 0UL;
}
u zpeg_P_enum(u vc) {
u v1 = 0;
u v2 = 0;
- zenter(vc, 79);
+ zenter(vc, 79UL);
v1 = zliteral(vc, (u)"enum");
- if (v1 == 0) goto b1;
+ if (v1 == 0UL) goto b1;
zchoice(vc);
v2 = zcharset(vc, (u)"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz");
- if (v2 == 0) goto b5;
+ if (v2 == 0UL) goto b5;
zfail(vc);
zfail(vc);
b1: zfail(vc);
- return 0;
-b5: zleave(vc, 79);
- return 1;
+ return 0UL;
+b5: zleave(vc, 79UL);
+ return 1UL;
}
u zpeg_P_enum_decl(u vc) {
u v1 = 0;
@@ -25211,42 +27968,42 @@ u zpeg_P_enum_decl(u vc) {
u v10 = 0;
u v11 = 0;
u v12 = 0;
- zenter(vc, 2);
+ zenter(vc, 2UL);
v1 = zpeg_P_enum(vc);
- if (v1 == 0) goto b1;
+ if (v1 == 0UL) goto b1;
v2 = zpeg_P_sp(vc);
- if (v2 == 0) goto b1;
+ if (v2 == 0UL) goto b1;
v3 = zliteral(vc, (u)"{");
- if (v3 == 0) goto b1;
+ if (v3 == 0UL) goto b1;
v4 = zpeg_P_sp(vc);
- if (v4 == 0) goto b1;
+ if (v4 == 0UL) goto b1;
zchoice(vc);
v5 = zpeg_P_enum_item(vc);
- if (v5 == 0) goto b12;
+ if (v5 == 0UL) goto b12;
b15: zchoice(vc);
v6 = zliteral(vc, (u)",");
- if (v6 == 0) goto b16;
+ if (v6 == 0UL) goto b16;
v7 = zpeg_P_sp(vc);
- if (v7 == 0) goto b16;
+ if (v7 == 0UL) goto b16;
v8 = zpeg_P_enum_item(vc);
- if (v8 == 0) goto b16;
+ if (v8 == 0UL) goto b16;
zcommit(vc);
goto b15;
b16: zcommit(vc);
b12: zchoice(vc);
v9 = zliteral(vc, (u)",");
- if (v9 == 0) goto b27;
+ if (v9 == 0UL) goto b27;
v10 = zpeg_P_sp(vc);
- if (v10 == 0) goto b27;
+ if (v10 == 0UL) goto b27;
zcommit(vc);
b27: v11 = zliteral(vc, (u)"}");
- if (v11 == 0) goto b1;
+ if (v11 == 0UL) goto b1;
v12 = zpeg_P_sp(vc);
- if (v12 == 0) goto b1;
- zleave(vc, 2);
- return 1;
+ if (v12 == 0UL) goto b1;
+ zleave(vc, 2UL);
+ return 1UL;
b1: zfail(vc);
- return 0;
+ return 0UL;
}
u zpeg_P_enum_item(u vc) {
u v1 = 0;
@@ -25254,75 +28011,75 @@ u zpeg_P_enum_item(u vc) {
u v3 = 0;
u v4 = 0;
u v5 = 0;
- zenter(vc, 1);
+ zenter(vc, 1UL);
v1 = zpeg_P_ident(vc);
- if (v1 == 0) goto b1;
+ if (v1 == 0UL) goto b1;
v2 = zpeg_P_sp(vc);
- if (v2 == 0) goto b1;
+ if (v2 == 0UL) goto b1;
zchoice(vc);
v3 = zliteral(vc, (u)"=");
- if (v3 == 0) goto b8;
+ if (v3 == 0UL) goto b8;
v4 = zpeg_P_sp(vc);
- if (v4 == 0) goto b8;
+ if (v4 == 0UL) goto b8;
v5 = zpeg_P_expr(vc);
- if (v5 == 0) goto b8;
+ if (v5 == 0UL) goto b8;
zcommit(vc);
-b8: zleave(vc, 1);
- return 1;
+b8: zleave(vc, 1UL);
+ return 1UL;
b1: zfail(vc);
- return 0;
+ return 0UL;
}
u zpeg_P_eq_op(u vc) {
u v1 = 0;
- zenter(vc, 35);
+ zenter(vc, 35UL);
v1 = zliteral(vc, (u)"==");
- if (v1 == 0) goto b1;
- zleave(vc, 35);
- return 1;
+ if (v1 == 0UL) goto b1;
+ zleave(vc, 35UL);
+ return 1UL;
b1: zfail(vc);
- return 0;
+ return 0UL;
}
u zpeg_P_expr(u vc) {
u v1 = 0;
- zenter(vc, 27);
+ zenter(vc, 27UL);
v1 = zpeg_P_bool_expr(vc);
- if (v1 == 0) goto b1;
- zleave(vc, 27);
- return 1;
+ if (v1 == 0UL) goto b1;
+ zleave(vc, 27UL);
+ return 1UL;
b1: zfail(vc);
- return 0;
+ return 0UL;
}
u zpeg_P_expr_stmt(u vc) {
u v1 = 0;
u v2 = 0;
u v3 = 0;
- zenter(vc, 24);
+ zenter(vc, 24UL);
v1 = zpeg_P_expr(vc);
- if (v1 == 0) goto b1;
+ if (v1 == 0UL) goto b1;
v2 = zliteral(vc, (u)";");
- if (v2 == 0) goto b1;
+ if (v2 == 0UL) goto b1;
v3 = zpeg_P_sp(vc);
- if (v3 == 0) goto b1;
- zleave(vc, 24);
- return 1;
+ if (v3 == 0UL) goto b1;
+ zleave(vc, 24UL);
+ return 1UL;
b1: zfail(vc);
- return 0;
+ return 0UL;
}
u zpeg_P_func(u vc) {
u v1 = 0;
u v2 = 0;
- zenter(vc, 85);
+ zenter(vc, 85UL);
v1 = zliteral(vc, (u)"func");
- if (v1 == 0) goto b1;
+ if (v1 == 0UL) goto b1;
zchoice(vc);
v2 = zcharset(vc, (u)"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz");
- if (v2 == 0) goto b5;
+ if (v2 == 0UL) goto b5;
zfail(vc);
zfail(vc);
b1: zfail(vc);
- return 0;
-b5: zleave(vc, 85);
- return 1;
+ return 0UL;
+b5: zleave(vc, 85UL);
+ return 1UL;
}
u zpeg_P_func_decl(u vc) {
u v1 = 0;
@@ -25333,32 +28090,32 @@ u zpeg_P_func_decl(u vc) {
u v6 = 0;
u v7 = 0;
u v8 = 0;
- zenter(vc, 6);
+ zenter(vc, 6UL);
v1 = zliteral(vc, (u)"func");
- if (v1 == 0) goto b1;
+ if (v1 == 0UL) goto b1;
v2 = zpeg_P_sp(vc);
- if (v2 == 0) goto b1;
+ if (v2 == 0UL) goto b1;
v3 = zpeg_P_ident(vc);
- if (v3 == 0) goto b1;
+ if (v3 == 0UL) goto b1;
v4 = zpeg_P_sp(vc);
- if (v4 == 0) goto b1;
+ if (v4 == 0UL) goto b1;
v5 = zpeg_P_func_type(vc);
- if (v5 == 0) goto b1;
+ if (v5 == 0UL) goto b1;
zchoice(vc);
v6 = zliteral(vc, (u)";");
- if (v6 == 0) goto b15;
+ if (v6 == 0UL) goto b15;
v7 = zpeg_P_sp(vc);
- if (v7 == 0) goto b15;
+ if (v7 == 0UL) goto b15;
b14: zcommit(vc);
- zleave(vc, 6);
- return 1;
+ zleave(vc, 6UL);
+ return 1UL;
b15: zchoice(vc);
v8 = zpeg_P_compound_stmt(vc);
- if (v8 == 0) goto b21;
+ if (v8 == 0UL) goto b21;
goto b14;
b21: zfail(vc);
b1: zfail(vc);
- return 0;
+ return 0UL;
}
u zpeg_P_func_type(u vc) {
u v1 = 0;
@@ -25374,72 +28131,72 @@ u zpeg_P_func_type(u vc) {
u v11 = 0;
u v12 = 0;
u v13 = 0;
- zenter(vc, 11);
+ zenter(vc, 11UL);
v1 = zliteral(vc, (u)"(");
- if (v1 == 0) goto b1;
+ if (v1 == 0UL) goto b1;
v2 = zpeg_P_sp(vc);
- if (v2 == 0) goto b1;
+ if (v2 == 0UL) goto b1;
zchoice(vc);
v3 = zpeg_P_arg_decl(vc);
- if (v3 == 0) goto b8;
+ if (v3 == 0UL) goto b8;
b11: zchoice(vc);
v4 = zliteral(vc, (u)",");
- if (v4 == 0) goto b12;
+ if (v4 == 0UL) goto b12;
v5 = zpeg_P_sp(vc);
- if (v5 == 0) goto b12;
+ if (v5 == 0UL) goto b12;
v6 = zpeg_P_arg_decl(vc);
- if (v6 == 0) goto b12;
+ if (v6 == 0UL) goto b12;
zcommit(vc);
goto b11;
b12: zcommit(vc);
b8: zchoice(vc);
v7 = zliteral(vc, (u)",");
- if (v7 == 0) goto b23;
+ if (v7 == 0UL) goto b23;
v8 = zpeg_P_sp(vc);
- if (v8 == 0) goto b23;
+ if (v8 == 0UL) goto b23;
zcommit(vc);
b23: v9 = zliteral(vc, (u)")");
- if (v9 == 0) goto b1;
+ if (v9 == 0UL) goto b1;
v10 = zpeg_P_sp(vc);
- if (v10 == 0) goto b1;
+ if (v10 == 0UL) goto b1;
zchoice(vc);
v11 = zliteral(vc, (u)":");
- if (v11 == 0) goto b34;
+ if (v11 == 0UL) goto b34;
v12 = zpeg_P_sp(vc);
- if (v12 == 0) goto b34;
+ if (v12 == 0UL) goto b34;
v13 = zpeg_P_type(vc);
- if (v13 == 0) goto b34;
+ if (v13 == 0UL) goto b34;
zcommit(vc);
-b34: zleave(vc, 11);
- return 1;
+b34: zleave(vc, 11UL);
+ return 1UL;
b1: zfail(vc);
- return 0;
+ return 0UL;
}
u zpeg_P_ge_op(u vc) {
u v1 = 0;
- zenter(vc, 32);
+ zenter(vc, 32UL);
v1 = zliteral(vc, (u)">=");
- if (v1 == 0) goto b1;
- zleave(vc, 32);
- return 1;
+ if (v1 == 0UL) goto b1;
+ zleave(vc, 32UL);
+ return 1UL;
b1: zfail(vc);
- return 0;
+ return 0UL;
}
u zpeg_P_goto(u vc) {
u v1 = 0;
u v2 = 0;
- zenter(vc, 77);
+ zenter(vc, 77UL);
v1 = zliteral(vc, (u)"goto");
- if (v1 == 0) goto b1;
+ if (v1 == 0UL) goto b1;
zchoice(vc);
v2 = zcharset(vc, (u)"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz");
- if (v2 == 0) goto b5;
+ if (v2 == 0UL) goto b5;
zfail(vc);
zfail(vc);
b1: zfail(vc);
- return 0;
-b5: zleave(vc, 77);
- return 1;
+ return 0UL;
+b5: zleave(vc, 77UL);
+ return 1UL;
}
u zpeg_P_goto_stmt(u vc) {
u v1 = 0;
@@ -25448,23 +28205,23 @@ u zpeg_P_goto_stmt(u vc) {
u v4 = 0;
u v5 = 0;
u v6 = 0;
- zenter(vc, 22);
+ zenter(vc, 22UL);
v1 = zpeg_P_goto(vc);
- if (v1 == 0) goto b1;
+ if (v1 == 0UL) goto b1;
v2 = zpeg_P_sp(vc);
- if (v2 == 0) goto b1;
+ if (v2 == 0UL) goto b1;
v3 = zpeg_P_ident(vc);
- if (v3 == 0) goto b1;
+ if (v3 == 0UL) goto b1;
v4 = zpeg_P_sp(vc);
- if (v4 == 0) goto b1;
+ if (v4 == 0UL) goto b1;
v5 = zliteral(vc, (u)";");
- if (v5 == 0) goto b1;
+ if (v5 == 0UL) goto b1;
v6 = zpeg_P_sp(vc);
- if (v6 == 0) goto b1;
- zleave(vc, 22);
- return 1;
+ if (v6 == 0UL) goto b1;
+ zleave(vc, 22UL);
+ return 1UL;
b1: zfail(vc);
- return 0;
+ return 0UL;
}
u zpeg_P_grammar(u vc) {
u v1 = 0;
@@ -25474,122 +28231,122 @@ u zpeg_P_grammar(u vc) {
u v5 = 0;
u v6 = 0;
u v7 = 0;
- zenter(vc, 0);
+ zenter(vc, 0UL);
v1 = zpeg_P_sp(vc);
- if (v1 == 0) goto b1;
+ if (v1 == 0UL) goto b1;
b5: zchoice(vc);
zchoice(vc);
v2 = zpeg_P_enum_decl(vc);
- if (v2 == 0) goto b10;
+ if (v2 == 0UL) goto b10;
b9: zcommit(vc);
zcommit(vc);
goto b5;
b10: zchoice(vc);
v3 = zpeg_P_struct_decl(vc);
- if (v3 == 0) goto b14;
+ if (v3 == 0UL) goto b14;
goto b9;
b14: zchoice(vc);
v4 = zpeg_P_union_decl(vc);
- if (v4 == 0) goto b18;
+ if (v4 == 0UL) goto b18;
goto b9;
b18: zchoice(vc);
v5 = zpeg_P_func_decl(vc);
- if (v5 == 0) goto b22;
+ if (v5 == 0UL) goto b22;
goto b9;
b22: zchoice(vc);
v6 = zpeg_P_peg_grammar(vc);
- if (v6 == 0) goto b26;
+ if (v6 == 0UL) goto b26;
goto b9;
b26: zfail(vc);
zchoice(vc);
v7 = zany(vc);
- if (v7 == 0) goto b33;
+ if (v7 == 0UL) goto b33;
zfail(vc);
zfail(vc);
b1: zfail(vc);
- return 0;
-b33: zleave(vc, 0);
- return 1;
+ return 0UL;
+b33: zleave(vc, 0UL);
+ return 1UL;
}
u zpeg_P_gt_op(u vc) {
u v1 = 0;
u v2 = 0;
u v3 = 0;
- zenter(vc, 34);
+ zenter(vc, 34UL);
v1 = zliteral(vc, (u)">");
- if (v1 == 0) goto b1;
+ if (v1 == 0UL) goto b1;
zchoice(vc);
v2 = zliteral(vc, (u)"=");
- if (v2 == 0) goto b5;
+ if (v2 == 0UL) goto b5;
zfail(vc);
zfail(vc);
b1: zfail(vc);
- return 0;
+ return 0UL;
b5: zchoice(vc);
v3 = zliteral(vc, (u)">");
- if (v3 == 0) goto b11;
+ if (v3 == 0UL) goto b11;
zfail(vc);
zfail(vc);
goto b1;
-b11: zleave(vc, 34);
- return 1;
+b11: zleave(vc, 34UL);
+ return 1UL;
}
u zpeg_P_hex(u vc) {
u v1 = 0;
u v2 = 0;
u v3 = 0;
- zenter(vc, 65);
+ zenter(vc, 65UL);
v1 = zliteral(vc, (u)"0x");
- if (v1 == 0) goto b1;
+ if (v1 == 0UL) goto b1;
v2 = zcharset(vc, (u)"0123456789ABCDEF_abcdef");
- if (v2 == 0) goto b1;
+ if (v2 == 0UL) goto b1;
b7: zchoice(vc);
v3 = zcharset(vc, (u)"0123456789ABCDEF_abcdef");
- if (v3 == 0) goto b8;
+ if (v3 == 0UL) goto b8;
zcommit(vc);
goto b7;
-b8: zleave(vc, 65);
- return 1;
+b8: zleave(vc, 65UL);
+ return 1UL;
b1: zfail(vc);
- return 0;
+ return 0UL;
}
u zpeg_P_ident(u vc) {
u v1 = 0;
u v2 = 0;
u v3 = 0;
- zenter(vc, 88);
+ zenter(vc, 88UL);
zchoice(vc);
v1 = zpeg_P_reserved(vc);
- if (v1 == 0) goto b3;
+ if (v1 == 0UL) goto b3;
zfail(vc);
zfail(vc);
b1: zfail(vc);
- return 0;
+ return 0UL;
b3: v2 = zcharset(vc, (u)"ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz");
- if (v2 == 0) goto b1;
+ if (v2 == 0UL) goto b1;
b11: zchoice(vc);
v3 = zcharset(vc, (u)"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz");
- if (v3 == 0) goto b12;
+ if (v3 == 0UL) goto b12;
zcommit(vc);
goto b11;
-b12: zleave(vc, 88);
- return 1;
+b12: zleave(vc, 88UL);
+ return 1UL;
}
u zpeg_P_if(u vc) {
u v1 = 0;
u v2 = 0;
- zenter(vc, 73);
+ zenter(vc, 73UL);
v1 = zliteral(vc, (u)"if");
- if (v1 == 0) goto b1;
+ if (v1 == 0UL) goto b1;
zchoice(vc);
v2 = zcharset(vc, (u)"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz");
- if (v2 == 0) goto b5;
+ if (v2 == 0UL) goto b5;
zfail(vc);
zfail(vc);
b1: zfail(vc);
- return 0;
-b5: zleave(vc, 73);
- return 1;
+ return 0UL;
+b5: zleave(vc, 73UL);
+ return 1UL;
}
u zpeg_P_if_stmt(u vc) {
u v1 = 0;
@@ -25598,28 +28355,28 @@ u zpeg_P_if_stmt(u vc) {
u v4 = 0;
u v5 = 0;
u v6 = 0;
- zenter(vc, 15);
+ zenter(vc, 15UL);
v1 = zpeg_P_if(vc);
- if (v1 == 0) goto b1;
+ if (v1 == 0UL) goto b1;
v2 = zpeg_P_sp(vc);
- if (v2 == 0) goto b1;
+ if (v2 == 0UL) goto b1;
v3 = zpeg_P_expr(vc);
- if (v3 == 0) goto b1;
+ if (v3 == 0UL) goto b1;
v4 = zpeg_P_compound_stmt(vc);
- if (v4 == 0) goto b1;
+ if (v4 == 0UL) goto b1;
b11: zchoice(vc);
v5 = zpeg_P_elif_stmt(vc);
- if (v5 == 0) goto b12;
+ if (v5 == 0UL) goto b12;
zcommit(vc);
goto b11;
b12: zchoice(vc);
v6 = zpeg_P_else_stmt(vc);
- if (v6 == 0) goto b18;
+ if (v6 == 0UL) goto b18;
zcommit(vc);
-b18: zleave(vc, 15);
- return 1;
+b18: zleave(vc, 15UL);
+ return 1UL;
b1: zfail(vc);
- return 0;
+ return 0UL;
}
u zpeg_P_index_expr(u vc) {
u v1 = 0;
@@ -25627,134 +28384,134 @@ u zpeg_P_index_expr(u vc) {
u v3 = 0;
u v4 = 0;
u v5 = 0;
- zenter(vc, 58);
+ zenter(vc, 58UL);
v1 = zliteral(vc, (u)"[");
- if (v1 == 0) goto b1;
+ if (v1 == 0UL) goto b1;
v2 = zpeg_P_sp(vc);
- if (v2 == 0) goto b1;
+ if (v2 == 0UL) goto b1;
v3 = zpeg_P_expr(vc);
- if (v3 == 0) goto b1;
+ if (v3 == 0UL) goto b1;
v4 = zliteral(vc, (u)"]");
- if (v4 == 0) goto b1;
+ if (v4 == 0UL) goto b1;
v5 = zpeg_P_sp(vc);
- if (v5 == 0) goto b1;
- zleave(vc, 58);
- return 1;
+ if (v5 == 0UL) goto b1;
+ zleave(vc, 58UL);
+ return 1UL;
b1: zfail(vc);
- return 0;
+ return 0UL;
}
u zpeg_P_int(u vc) {
u v1 = 0;
u v2 = 0;
- zenter(vc, 83);
+ zenter(vc, 83UL);
v1 = zliteral(vc, (u)"int");
- if (v1 == 0) goto b1;
+ if (v1 == 0UL) goto b1;
zchoice(vc);
v2 = zcharset(vc, (u)"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz");
- if (v2 == 0) goto b5;
+ if (v2 == 0UL) goto b5;
zfail(vc);
zfail(vc);
b1: zfail(vc);
- return 0;
-b5: zleave(vc, 83);
- return 1;
+ return 0UL;
+b5: zleave(vc, 83UL);
+ return 1UL;
}
u zpeg_P_label_stmt(u vc) {
u v1 = 0;
u v2 = 0;
u v3 = 0;
u v4 = 0;
- zenter(vc, 21);
+ zenter(vc, 21UL);
v1 = zpeg_P_ident(vc);
- if (v1 == 0) goto b1;
+ if (v1 == 0UL) goto b1;
v2 = zpeg_P_sp(vc);
- if (v2 == 0) goto b1;
+ if (v2 == 0UL) goto b1;
v3 = zliteral(vc, (u)":");
- if (v3 == 0) goto b1;
+ if (v3 == 0UL) goto b1;
v4 = zpeg_P_sp(vc);
- if (v4 == 0) goto b1;
- zleave(vc, 21);
- return 1;
+ if (v4 == 0UL) goto b1;
+ zleave(vc, 21UL);
+ return 1UL;
b1: zfail(vc);
- return 0;
+ return 0UL;
}
u zpeg_P_le_op(u vc) {
u v1 = 0;
- zenter(vc, 31);
+ zenter(vc, 31UL);
v1 = zliteral(vc, (u)"<=");
- if (v1 == 0) goto b1;
- zleave(vc, 31);
- return 1;
+ if (v1 == 0UL) goto b1;
+ zleave(vc, 31UL);
+ return 1UL;
b1: zfail(vc);
- return 0;
+ return 0UL;
}
u zpeg_P_loop(u vc) {
u v1 = 0;
u v2 = 0;
- zenter(vc, 75);
+ zenter(vc, 75UL);
v1 = zliteral(vc, (u)"loop");
- if (v1 == 0) goto b1;
+ if (v1 == 0UL) goto b1;
zchoice(vc);
v2 = zcharset(vc, (u)"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz");
- if (v2 == 0) goto b5;
+ if (v2 == 0UL) goto b5;
zfail(vc);
zfail(vc);
b1: zfail(vc);
- return 0;
-b5: zleave(vc, 75);
- return 1;
+ return 0UL;
+b5: zleave(vc, 75UL);
+ return 1UL;
}
u zpeg_P_loop_stmt(u vc) {
u v1 = 0;
u v2 = 0;
u v3 = 0;
u v4 = 0;
- zenter(vc, 16);
+ zenter(vc, 16UL);
v1 = zpeg_P_loop(vc);
- if (v1 == 0) goto b1;
+ if (v1 == 0UL) goto b1;
v2 = zpeg_P_sp(vc);
- if (v2 == 0) goto b1;
+ if (v2 == 0UL) goto b1;
v3 = zpeg_P_compound_stmt(vc);
- if (v3 == 0) goto b1;
+ if (v3 == 0UL) goto b1;
v4 = zpeg_P_sp(vc);
- if (v4 == 0) goto b1;
- zleave(vc, 16);
- return 1;
+ if (v4 == 0UL) goto b1;
+ zleave(vc, 16UL);
+ return 1UL;
b1: zfail(vc);
- return 0;
+ return 0UL;
}
u zpeg_P_lsh_op(u vc) {
u v1 = 0;
- zenter(vc, 48);
+ zenter(vc, 48UL);
v1 = zliteral(vc, (u)"<<");
- if (v1 == 0) goto b1;
- zleave(vc, 48);
- return 1;
+ if (v1 == 0UL) goto b1;
+ zleave(vc, 48UL);
+ return 1UL;
b1: zfail(vc);
- return 0;
+ return 0UL;
}
u zpeg_P_lt_op(u vc) {
u v1 = 0;
u v2 = 0;
u v3 = 0;
- zenter(vc, 33);
+ zenter(vc, 33UL);
v1 = zliteral(vc, (u)"<");
- if (v1 == 0) goto b1;
+ if (v1 == 0UL) goto b1;
zchoice(vc);
v2 = zliteral(vc, (u)"=");
- if (v2 == 0) goto b5;
+ if (v2 == 0UL) goto b5;
zfail(vc);
zfail(vc);
b1: zfail(vc);
- return 0;
+ return 0UL;
b5: zchoice(vc);
v3 = zliteral(vc, (u)"<");
- if (v3 == 0) goto b11;
+ if (v3 == 0UL) goto b11;
zfail(vc);
zfail(vc);
goto b1;
-b11: zleave(vc, 33);
- return 1;
+b11: zleave(vc, 33UL);
+ return 1UL;
}
u zpeg_P_member_decl(u vc) {
u v1 = 0;
@@ -25764,54 +28521,54 @@ u zpeg_P_member_decl(u vc) {
u v5 = 0;
u v6 = 0;
u v7 = 0;
- zenter(vc, 3);
+ zenter(vc, 3UL);
v1 = zpeg_P_ident(vc);
- if (v1 == 0) goto b1;
+ if (v1 == 0UL) goto b1;
v2 = zpeg_P_sp(vc);
- if (v2 == 0) goto b1;
+ if (v2 == 0UL) goto b1;
v3 = zliteral(vc, (u)":");
- if (v3 == 0) goto b1;
+ if (v3 == 0UL) goto b1;
v4 = zpeg_P_sp(vc);
- if (v4 == 0) goto b1;
+ if (v4 == 0UL) goto b1;
v5 = zpeg_P_type(vc);
- if (v5 == 0) goto b1;
+ if (v5 == 0UL) goto b1;
v6 = zliteral(vc, (u)";");
- if (v6 == 0) goto b1;
+ if (v6 == 0UL) goto b1;
v7 = zpeg_P_sp(vc);
- if (v7 == 0) goto b1;
- zleave(vc, 3);
- return 1;
+ if (v7 == 0UL) goto b1;
+ zleave(vc, 3UL);
+ return 1UL;
b1: zfail(vc);
- return 0;
+ return 0UL;
}
u zpeg_P_member_expr(u vc) {
u v1 = 0;
u v2 = 0;
u v3 = 0;
u v4 = 0;
- zenter(vc, 60);
+ zenter(vc, 60UL);
v1 = zliteral(vc, (u)".");
- if (v1 == 0) goto b1;
+ if (v1 == 0UL) goto b1;
v2 = zpeg_P_sp(vc);
- if (v2 == 0) goto b1;
+ if (v2 == 0UL) goto b1;
v3 = zpeg_P_ident(vc);
- if (v3 == 0) goto b1;
+ if (v3 == 0UL) goto b1;
v4 = zpeg_P_sp(vc);
- if (v4 == 0) goto b1;
- zleave(vc, 60);
- return 1;
+ if (v4 == 0UL) goto b1;
+ zleave(vc, 60UL);
+ return 1UL;
b1: zfail(vc);
- return 0;
+ return 0UL;
}
u zpeg_P_mod_op(u vc) {
u v1 = 0;
- zenter(vc, 45);
+ zenter(vc, 45UL);
v1 = zliteral(vc, (u)"%");
- if (v1 == 0) goto b1;
- zleave(vc, 45);
- return 1;
+ if (v1 == 0UL) goto b1;
+ zleave(vc, 45UL);
+ return 1UL;
b1: zfail(vc);
- return 0;
+ return 0UL;
}
u zpeg_P_mul_expr(u vc) {
u v1 = 0;
@@ -25821,155 +28578,155 @@ u zpeg_P_mul_expr(u vc) {
u v5 = 0;
u v6 = 0;
u v7 = 0;
- zenter(vc, 47);
+ zenter(vc, 47UL);
v1 = zpeg_P_shift_expr(vc);
- if (v1 == 0) goto b1;
+ if (v1 == 0UL) goto b1;
b5: zchoice(vc);
zchoice(vc);
v2 = zpeg_P_mul_op(vc);
- if (v2 == 0) goto b10;
+ if (v2 == 0UL) goto b10;
b9: zcommit(vc);
v6 = zpeg_P_sp(vc);
- if (v6 == 0) goto b6;
+ if (v6 == 0UL) goto b6;
v7 = zpeg_P_shift_expr(vc);
- if (v7 == 0) goto b6;
+ if (v7 == 0UL) goto b6;
zcommit(vc);
goto b5;
-b6: zleave(vc, 47);
- return 1;
+b6: zleave(vc, 47UL);
+ return 1UL;
b10: zchoice(vc);
v3 = zpeg_P_div_op(vc);
- if (v3 == 0) goto b14;
+ if (v3 == 0UL) goto b14;
goto b9;
b14: zchoice(vc);
v4 = zpeg_P_mod_op(vc);
- if (v4 == 0) goto b18;
+ if (v4 == 0UL) goto b18;
goto b9;
b18: zchoice(vc);
v5 = zpeg_P_and_op(vc);
- if (v5 == 0) goto b22;
+ if (v5 == 0UL) goto b22;
goto b9;
b22: zfail(vc);
goto b6;
b1: zfail(vc);
- return 0;
+ return 0UL;
}
u zpeg_P_mul_op(u vc) {
u v1 = 0;
- zenter(vc, 43);
+ zenter(vc, 43UL);
v1 = zliteral(vc, (u)"*");
- if (v1 == 0) goto b1;
- zleave(vc, 43);
- return 1;
+ if (v1 == 0UL) goto b1;
+ zleave(vc, 43UL);
+ return 1UL;
b1: zfail(vc);
- return 0;
+ return 0UL;
}
u zpeg_P_ne_op(u vc) {
u v1 = 0;
- zenter(vc, 36);
+ zenter(vc, 36UL);
v1 = zliteral(vc, (u)"!=");
- if (v1 == 0) goto b1;
- zleave(vc, 36);
- return 1;
+ if (v1 == 0UL) goto b1;
+ zleave(vc, 36UL);
+ return 1UL;
b1: zfail(vc);
- return 0;
+ return 0UL;
}
u zpeg_P_neg_op(u vc) {
u v1 = 0;
- zenter(vc, 54);
+ zenter(vc, 54UL);
v1 = zliteral(vc, (u)"-");
- if (v1 == 0) goto b1;
- zleave(vc, 54);
- return 1;
+ if (v1 == 0UL) goto b1;
+ zleave(vc, 54UL);
+ return 1UL;
b1: zfail(vc);
- return 0;
+ return 0UL;
}
u zpeg_P_nil(u vc) {
u v1 = 0;
u v2 = 0;
- zenter(vc, 87);
+ zenter(vc, 87UL);
v1 = zliteral(vc, (u)"nil");
- if (v1 == 0) goto b1;
+ if (v1 == 0UL) goto b1;
zchoice(vc);
v2 = zcharset(vc, (u)"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz");
- if (v2 == 0) goto b5;
+ if (v2 == 0UL) goto b5;
zfail(vc);
zfail(vc);
b1: zfail(vc);
- return 0;
-b5: zleave(vc, 87);
- return 1;
+ return 0UL;
+b5: zleave(vc, 87UL);
+ return 1UL;
}
u zpeg_P_not_op(u vc) {
u v1 = 0;
- zenter(vc, 55);
+ zenter(vc, 55UL);
v1 = zliteral(vc, (u)"~");
- if (v1 == 0) goto b1;
- zleave(vc, 55);
- return 1;
+ if (v1 == 0UL) goto b1;
+ zleave(vc, 55UL);
+ return 1UL;
b1: zfail(vc);
- return 0;
+ return 0UL;
}
u zpeg_P_or_op(u vc) {
u v1 = 0;
u v2 = 0;
- zenter(vc, 40);
+ zenter(vc, 40UL);
v1 = zliteral(vc, (u)"|");
- if (v1 == 0) goto b1;
+ if (v1 == 0UL) goto b1;
zchoice(vc);
v2 = zliteral(vc, (u)"|");
- if (v2 == 0) goto b5;
+ if (v2 == 0UL) goto b5;
zfail(vc);
zfail(vc);
b1: zfail(vc);
- return 0;
-b5: zleave(vc, 40);
- return 1;
+ return 0UL;
+b5: zleave(vc, 40UL);
+ return 1UL;
}
u zpeg_P_peg_alternative(u vc) {
u v1 = 0;
u v2 = 0;
- zenter(vc, 94);
+ zenter(vc, 94UL);
v1 = zpeg_P_peg_lookahead(vc);
- if (v1 == 0) goto b1;
+ if (v1 == 0UL) goto b1;
b5: zchoice(vc);
v2 = zpeg_P_peg_lookahead(vc);
- if (v2 == 0) goto b6;
+ if (v2 == 0UL) goto b6;
zcommit(vc);
goto b5;
-b6: zleave(vc, 94);
- return 1;
+b6: zleave(vc, 94UL);
+ return 1UL;
b1: zfail(vc);
- return 0;
+ return 0UL;
}
u zpeg_P_peg_any(u vc) {
u v1 = 0;
- zenter(vc, 100);
+ zenter(vc, 100UL);
v1 = zliteral(vc, (u)".");
- if (v1 == 0) goto b1;
- zleave(vc, 100);
- return 1;
+ if (v1 == 0UL) goto b1;
+ zleave(vc, 100UL);
+ return 1UL;
b1: zfail(vc);
- return 0;
+ return 0UL;
}
u zpeg_P_peg_call(u vc) {
u v1 = 0;
u v2 = 0;
u v3 = 0;
- zenter(vc, 103);
+ zenter(vc, 103UL);
v1 = zpeg_P_peg_identifier(vc);
- if (v1 == 0) goto b1;
+ if (v1 == 0UL) goto b1;
zchoice(vc);
v2 = zpeg_P_sp(vc);
- if (v2 == 0) goto b5;
+ if (v2 == 0UL) goto b5;
v3 = zliteral(vc, (u)"<-");
- if (v3 == 0) goto b5;
+ if (v3 == 0UL) goto b5;
zfail(vc);
zfail(vc);
b1: zfail(vc);
- return 0;
-b5: zleave(vc, 103);
- return 1;
+ return 0UL;
+b5: zleave(vc, 103UL);
+ return 1UL;
}
u zpeg_P_peg_class(u vc) {
u v1 = 0;
@@ -25979,47 +28736,47 @@ u zpeg_P_peg_class(u vc) {
u v5 = 0;
u v6 = 0;
u v7 = 0;
- zenter(vc, 102);
+ zenter(vc, 102UL);
v1 = zliteral(vc, (u)"[");
- if (v1 == 0) goto b1;
+ if (v1 == 0UL) goto b1;
b5: zchoice(vc);
zchoice(vc);
v2 = zliteral(vc, (u)"]");
- if (v2 == 0) goto b14;
+ if (v2 == 0UL) goto b8;
zfail(vc);
zfail(vc);
b6: v7 = zliteral(vc, (u)"]");
- if (v7 == 0) goto b1;
- zleave(vc, 102);
- return 1;
+ if (v7 == 0UL) goto b1;
+ zleave(vc, 102UL);
+ return 1UL;
b1: zfail(vc);
- return 0;
-b14: zchoice(vc);
+ return 0UL;
+b8: zchoice(vc);
v3 = zany(vc);
- if (v3 == 0) goto b16;
+ if (v3 == 0UL) goto b16;
v4 = zliteral(vc, (u)"-");
- if (v4 == 0) goto b16;
+ if (v4 == 0UL) goto b16;
v5 = zany(vc);
- if (v5 == 0) goto b16;
+ if (v5 == 0UL) goto b16;
b15: zcommit(vc);
zcommit(vc);
goto b5;
b16: zchoice(vc);
v6 = zany(vc);
- if (v6 == 0) goto b24;
+ if (v6 == 0UL) goto b24;
goto b15;
b24: zfail(vc);
goto b6;
}
u zpeg_P_peg_countop(u vc) {
u v1 = 0;
- zenter(vc, 97);
+ zenter(vc, 97UL);
v1 = zcharset(vc, (u)"*+?");
- if (v1 == 0) goto b1;
- zleave(vc, 97);
- return 1;
+ if (v1 == 0UL) goto b1;
+ zleave(vc, 97UL);
+ return 1UL;
b1: zfail(vc);
- return 0;
+ return 0UL;
}
u zpeg_P_peg_grammar(u vc) {
u v1 = 0;
@@ -26030,38 +28787,38 @@ u zpeg_P_peg_grammar(u vc) {
u v6 = 0;
u v7 = 0;
u v8 = 0;
- zenter(vc, 90);
+ zenter(vc, 90UL);
v1 = zliteral(vc, (u)"%{");
- if (v1 == 0) goto b1;
+ if (v1 == 0UL) goto b1;
v2 = zpeg_P_sp(vc);
- if (v2 == 0) goto b1;
+ if (v2 == 0UL) goto b1;
zchoice(vc);
v3 = zpeg_P_peg_rule(vc);
- if (v3 == 0) goto b9;
+ if (v3 == 0UL) goto b9;
b8: zcommit(vc);
b19: zchoice(vc);
zchoice(vc);
v5 = zpeg_P_peg_rule(vc);
- if (v5 == 0) goto b24;
+ if (v5 == 0UL) goto b24;
b23: zcommit(vc);
zcommit(vc);
goto b19;
b24: zchoice(vc);
v6 = zpeg_P_peg_prefix(vc);
- if (v6 == 0) goto b28;
+ if (v6 == 0UL) goto b28;
goto b23;
b28: zfail(vc);
v7 = zliteral(vc, (u)"%}");
- if (v7 == 0) goto b1;
+ if (v7 == 0UL) goto b1;
v8 = zpeg_P_sp(vc);
- if (v8 == 0) goto b1;
- zleave(vc, 90);
- return 1;
+ if (v8 == 0UL) goto b1;
+ zleave(vc, 90UL);
+ return 1UL;
b1: zfail(vc);
- return 0;
+ return 0UL;
b9: zchoice(vc);
v4 = zpeg_P_peg_prefix(vc);
- if (v4 == 0) goto b13;
+ if (v4 == 0UL) goto b13;
goto b8;
b13: zfail(vc);
goto b1;
@@ -26069,41 +28826,41 @@ b13: zfail(vc);
u zpeg_P_peg_identifier(u vc) {
u v1 = 0;
u v2 = 0;
- zenter(vc, 104);
+ zenter(vc, 104UL);
v1 = zcharset(vc, (u)"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz");
- if (v1 == 0) goto b1;
+ if (v1 == 0UL) goto b1;
b5: zchoice(vc);
v2 = zcharset(vc, (u)"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz");
- if (v2 == 0) goto b6;
+ if (v2 == 0UL) goto b6;
zcommit(vc);
goto b5;
-b6: zleave(vc, 104);
- return 1;
+b6: zleave(vc, 104UL);
+ return 1UL;
b1: zfail(vc);
- return 0;
+ return 0UL;
}
u zpeg_P_peg_literal(u vc) {
u v1 = 0;
u v2 = 0;
u v3 = 0;
u v4 = 0;
- zenter(vc, 101);
+ zenter(vc, 101UL);
v1 = zcharset(vc, (u)"'");
- if (v1 == 0) goto b1;
+ if (v1 == 0UL) goto b1;
b5: zchoice(vc);
zchoice(vc);
v2 = zcharset(vc, (u)"'");
- if (v2 == 0) goto b8;
+ if (v2 == 0UL) goto b8;
zfail(vc);
zfail(vc);
b6: v4 = zcharset(vc, (u)"'");
- if (v4 == 0) goto b1;
- zleave(vc, 101);
- return 1;
+ if (v4 == 0UL) goto b1;
+ zleave(vc, 101UL);
+ return 1UL;
b1: zfail(vc);
- return 0;
+ return 0UL;
b8: v3 = zany(vc);
- if (v3 == 0) goto b6;
+ if (v3 == 0UL) goto b6;
zcommit(vc);
goto b5;
}
@@ -26111,29 +28868,29 @@ u zpeg_P_peg_lookahead(u vc) {
u v1 = 0;
u v2 = 0;
u v3 = 0;
- zenter(vc, 96);
+ zenter(vc, 96UL);
zchoice(vc);
v1 = zpeg_P_peg_lookop(vc);
- if (v1 == 0) goto b4;
+ if (v1 == 0UL) goto b4;
v2 = zpeg_P_sp(vc);
- if (v2 == 0) goto b4;
+ if (v2 == 0UL) goto b4;
zcommit(vc);
b4: v3 = zpeg_P_peg_suffix(vc);
- if (v3 == 0) goto b1;
- zleave(vc, 96);
- return 1;
+ if (v3 == 0UL) goto b1;
+ zleave(vc, 96UL);
+ return 1UL;
b1: zfail(vc);
- return 0;
+ return 0UL;
}
u zpeg_P_peg_lookop(u vc) {
u v1 = 0;
- zenter(vc, 95);
+ zenter(vc, 95UL);
v1 = zcharset(vc, (u)"!&");
- if (v1 == 0) goto b1;
- zleave(vc, 95);
- return 1;
+ if (v1 == 0UL) goto b1;
+ zleave(vc, 95UL);
+ return 1UL;
b1: zfail(vc);
- return 0;
+ return 0UL;
}
u zpeg_P_peg_pattern(u vc) {
u v1 = 0;
@@ -26141,46 +28898,46 @@ u zpeg_P_peg_pattern(u vc) {
u v3 = 0;
u v4 = 0;
u v5 = 0;
- zenter(vc, 93);
+ zenter(vc, 93UL);
v1 = zpeg_P_peg_alternative(vc);
- if (v1 == 0) goto b1;
+ if (v1 == 0UL) goto b1;
b5: zchoice(vc);
v2 = zliteral(vc, (u)"/");
- if (v2 == 0) goto b6;
+ if (v2 == 0UL) goto b6;
zchoice(vc);
v3 = zliteral(vc, (u)"/");
- if (v3 == 0) goto b10;
+ if (v3 == 0UL) goto b10;
zfail(vc);
zfail(vc);
-b6: zleave(vc, 93);
- return 1;
+b6: zleave(vc, 93UL);
+ return 1UL;
b10: v4 = zpeg_P_sp(vc);
- if (v4 == 0) goto b6;
+ if (v4 == 0UL) goto b6;
v5 = zpeg_P_peg_alternative(vc);
- if (v5 == 0) goto b6;
+ if (v5 == 0UL) goto b6;
zcommit(vc);
goto b5;
b1: zfail(vc);
- return 0;
+ return 0UL;
}
u zpeg_P_peg_prefix(u vc) {
u v1 = 0;
u v2 = 0;
u v3 = 0;
u v4 = 0;
- zenter(vc, 92);
+ zenter(vc, 92UL);
v1 = zliteral(vc, (u)"%prefix");
- if (v1 == 0) goto b1;
+ if (v1 == 0UL) goto b1;
v2 = zpeg_P_sp(vc);
- if (v2 == 0) goto b1;
+ if (v2 == 0UL) goto b1;
v3 = zpeg_P_peg_identifier(vc);
- if (v3 == 0) goto b1;
+ if (v3 == 0UL) goto b1;
v4 = zpeg_P_sp(vc);
- if (v4 == 0) goto b1;
- zleave(vc, 92);
- return 1;
+ if (v4 == 0UL) goto b1;
+ zleave(vc, 92UL);
+ return 1UL;
b1: zfail(vc);
- return 0;
+ return 0UL;
}
u zpeg_P_peg_primary(u vc) {
u v1 = 0;
@@ -26192,38 +28949,38 @@ u zpeg_P_peg_primary(u vc) {
u v7 = 0;
u v8 = 0;
u v9 = 0;
- zenter(vc, 99);
+ zenter(vc, 99UL);
zchoice(vc);
v1 = zliteral(vc, (u)"(");
- if (v1 == 0) goto b5;
+ if (v1 == 0UL) goto b5;
v2 = zpeg_P_sp(vc);
- if (v2 == 0) goto b5;
+ if (v2 == 0UL) goto b5;
v3 = zpeg_P_peg_pattern(vc);
- if (v3 == 0) goto b5;
+ if (v3 == 0UL) goto b5;
v4 = zliteral(vc, (u)")");
- if (v4 == 0) goto b5;
+ if (v4 == 0UL) goto b5;
b4: zcommit(vc);
v9 = zpeg_P_sp(vc);
- if (v9 == 0) goto b1;
- zleave(vc, 99);
- return 1;
+ if (v9 == 0UL) goto b1;
+ zleave(vc, 99UL);
+ return 1UL;
b1: zfail(vc);
- return 0;
+ return 0UL;
b5: zchoice(vc);
v5 = zpeg_P_peg_any(vc);
- if (v5 == 0) goto b15;
+ if (v5 == 0UL) goto b15;
goto b4;
b15: zchoice(vc);
v6 = zpeg_P_peg_literal(vc);
- if (v6 == 0) goto b19;
+ if (v6 == 0UL) goto b19;
goto b4;
b19: zchoice(vc);
v7 = zpeg_P_peg_class(vc);
- if (v7 == 0) goto b23;
+ if (v7 == 0UL) goto b23;
goto b4;
b23: zchoice(vc);
v8 = zpeg_P_peg_call(vc);
- if (v8 == 0) goto b27;
+ if (v8 == 0UL) goto b27;
goto b4;
b27: zfail(vc);
goto b1;
@@ -26234,50 +28991,50 @@ u zpeg_P_peg_rule(u vc) {
u v3 = 0;
u v4 = 0;
u v5 = 0;
- zenter(vc, 91);
+ zenter(vc, 91UL);
v1 = zpeg_P_peg_identifier(vc);
- if (v1 == 0) goto b1;
+ if (v1 == 0UL) goto b1;
v2 = zpeg_P_sp(vc);
- if (v2 == 0) goto b1;
+ if (v2 == 0UL) goto b1;
v3 = zliteral(vc, (u)"<-");
- if (v3 == 0) goto b1;
+ if (v3 == 0UL) goto b1;
v4 = zpeg_P_sp(vc);
- if (v4 == 0) goto b1;
+ if (v4 == 0UL) goto b1;
v5 = zpeg_P_peg_pattern(vc);
- if (v5 == 0) goto b1;
- zleave(vc, 91);
- return 1;
+ if (v5 == 0UL) goto b1;
+ zleave(vc, 91UL);
+ return 1UL;
b1: zfail(vc);
- return 0;
+ return 0UL;
}
u zpeg_P_peg_suffix(u vc) {
u v1 = 0;
u v2 = 0;
u v3 = 0;
- zenter(vc, 98);
+ zenter(vc, 98UL);
v1 = zpeg_P_peg_primary(vc);
- if (v1 == 0) goto b1;
+ if (v1 == 0UL) goto b1;
b5: zchoice(vc);
v2 = zpeg_P_peg_countop(vc);
- if (v2 == 0) goto b6;
+ if (v2 == 0UL) goto b6;
v3 = zpeg_P_sp(vc);
- if (v3 == 0) goto b6;
+ if (v3 == 0UL) goto b6;
zcommit(vc);
goto b5;
-b6: zleave(vc, 98);
- return 1;
+b6: zleave(vc, 98UL);
+ return 1UL;
b1: zfail(vc);
- return 0;
+ return 0UL;
}
u zpeg_P_pos_op(u vc) {
u v1 = 0;
- zenter(vc, 53);
+ zenter(vc, 53UL);
v1 = zliteral(vc, (u)"+");
- if (v1 == 0) goto b1;
- zleave(vc, 53);
- return 1;
+ if (v1 == 0UL) goto b1;
+ zleave(vc, 53UL);
+ return 1UL;
b1: zfail(vc);
- return 0;
+ return 0UL;
}
u zpeg_P_post_expr(u vc) {
u v1 = 0;
@@ -26285,33 +29042,33 @@ u zpeg_P_post_expr(u vc) {
u v3 = 0;
u v4 = 0;
u v5 = 0;
- zenter(vc, 62);
+ zenter(vc, 62UL);
v1 = zpeg_P_primary(vc);
- if (v1 == 0) goto b1;
+ if (v1 == 0UL) goto b1;
b5: zchoice(vc);
zchoice(vc);
v2 = zpeg_P_index_expr(vc);
- if (v2 == 0) goto b10;
+ if (v2 == 0UL) goto b10;
b9: zcommit(vc);
zcommit(vc);
goto b5;
b10: zchoice(vc);
v3 = zpeg_P_call_expr(vc);
- if (v3 == 0) goto b14;
+ if (v3 == 0UL) goto b14;
goto b9;
b14: zchoice(vc);
v4 = zpeg_P_member_expr(vc);
- if (v4 == 0) goto b18;
+ if (v4 == 0UL) goto b18;
goto b9;
b18: zchoice(vc);
v5 = zpeg_P_cast_expr(vc);
- if (v5 == 0) goto b22;
+ if (v5 == 0UL) goto b22;
goto b9;
b22: zfail(vc);
- zleave(vc, 62);
- return 1;
+ zleave(vc, 62UL);
+ return 1UL;
b1: zfail(vc);
- return 0;
+ return 0UL;
}
u zpeg_P_primary(u vc) {
u v1 = 0;
@@ -26332,96 +29089,96 @@ u zpeg_P_primary(u vc) {
u v16 = 0;
u v17 = 0;
u v18 = 0;
- zenter(vc, 63);
+ zenter(vc, 63UL);
zchoice(vc);
v1 = zpeg_P_ident(vc);
- if (v1 == 0) goto b5;
+ if (v1 == 0UL) goto b5;
v2 = zpeg_P_sp(vc);
- if (v2 == 0) goto b5;
+ if (v2 == 0UL) goto b5;
b4: zcommit(vc);
- zleave(vc, 63);
- return 1;
+ zleave(vc, 63UL);
+ return 1UL;
b5: zchoice(vc);
v3 = zpeg_P_hex(vc);
- if (v3 == 0) goto b11;
+ if (v3 == 0UL) goto b11;
v4 = zpeg_P_sp(vc);
- if (v4 == 0) goto b11;
+ if (v4 == 0UL) goto b11;
goto b4;
b11: zchoice(vc);
v5 = zpeg_P_dec(vc);
- if (v5 == 0) goto b17;
+ if (v5 == 0UL) goto b17;
v6 = zpeg_P_sp(vc);
- if (v6 == 0) goto b17;
+ if (v6 == 0UL) goto b17;
goto b4;
b17: zchoice(vc);
v7 = zpeg_P_str(vc);
- if (v7 == 0) goto b23;
+ if (v7 == 0UL) goto b23;
v8 = zpeg_P_sp(vc);
- if (v8 == 0) goto b23;
+ if (v8 == 0UL) goto b23;
goto b4;
b23: zchoice(vc);
v9 = zpeg_P_char(vc);
- if (v9 == 0) goto b29;
+ if (v9 == 0UL) goto b29;
v10 = zpeg_P_sp(vc);
- if (v10 == 0) goto b29;
+ if (v10 == 0UL) goto b29;
goto b4;
b29: zchoice(vc);
v11 = zpeg_P_sizeof_expr(vc);
- if (v11 == 0) goto b35;
+ if (v11 == 0UL) goto b35;
goto b4;
b35: zchoice(vc);
v12 = zpeg_P_nil(vc);
- if (v12 == 0) goto b39;
+ if (v12 == 0UL) goto b39;
v13 = zpeg_P_sp(vc);
- if (v13 == 0) goto b39;
+ if (v13 == 0UL) goto b39;
goto b4;
b39: zchoice(vc);
v14 = zliteral(vc, (u)"(");
- if (v14 == 0) goto b45;
+ if (v14 == 0UL) goto b45;
v15 = zpeg_P_sp(vc);
- if (v15 == 0) goto b45;
+ if (v15 == 0UL) goto b45;
v16 = zpeg_P_expr(vc);
- if (v16 == 0) goto b45;
+ if (v16 == 0UL) goto b45;
v17 = zliteral(vc, (u)")");
- if (v17 == 0) goto b45;
+ if (v17 == 0UL) goto b45;
v18 = zpeg_P_sp(vc);
- if (v18 == 0) goto b45;
+ if (v18 == 0UL) goto b45;
goto b4;
b45: zfail(vc);
zfail(vc);
- return 0;
+ return 0UL;
}
u zpeg_P_ptr_type(u vc) {
u v1 = 0;
u v2 = 0;
u v3 = 0;
- zenter(vc, 8);
+ zenter(vc, 8UL);
v1 = zliteral(vc, (u)"*");
- if (v1 == 0) goto b1;
+ if (v1 == 0UL) goto b1;
v2 = zpeg_P_sp(vc);
- if (v2 == 0) goto b1;
+ if (v2 == 0UL) goto b1;
v3 = zpeg_P_type(vc);
- if (v3 == 0) goto b1;
- zleave(vc, 8);
- return 1;
+ if (v3 == 0UL) goto b1;
+ zleave(vc, 8UL);
+ return 1UL;
b1: zfail(vc);
- return 0;
+ return 0UL;
}
u zpeg_P_ref_op(u vc) {
u v1 = 0;
u v2 = 0;
- zenter(vc, 51);
+ zenter(vc, 51UL);
v1 = zliteral(vc, (u)"&");
- if (v1 == 0) goto b1;
+ if (v1 == 0UL) goto b1;
zchoice(vc);
v2 = zliteral(vc, (u)"&");
- if (v2 == 0) goto b5;
+ if (v2 == 0UL) goto b5;
zfail(vc);
zfail(vc);
b1: zfail(vc);
- return 0;
-b5: zleave(vc, 51);
- return 1;
+ return 0UL;
+b5: zleave(vc, 51UL);
+ return 1UL;
}
u zpeg_P_reserved(u vc) {
u v1 = 0;
@@ -26442,100 +29199,100 @@ u zpeg_P_reserved(u vc) {
u v16 = 0;
u v17 = 0;
u v18 = 0;
- zenter(vc, 69);
+ zenter(vc, 69UL);
zchoice(vc);
v1 = zpeg_P_return(vc);
- if (v1 == 0) goto b5;
+ if (v1 == 0UL) goto b5;
b4: zcommit(vc);
- zleave(vc, 69);
- return 1;
+ zleave(vc, 69UL);
+ return 1UL;
b5: zchoice(vc);
v2 = zpeg_P_break(vc);
- if (v2 == 0) goto b9;
+ if (v2 == 0UL) goto b9;
goto b4;
b9: zchoice(vc);
v3 = zpeg_P_sizeof(vc);
- if (v3 == 0) goto b13;
+ if (v3 == 0UL) goto b13;
goto b4;
b13: zchoice(vc);
v4 = zpeg_P_if(vc);
- if (v4 == 0) goto b17;
+ if (v4 == 0UL) goto b17;
goto b4;
b17: zchoice(vc);
v5 = zpeg_P_else(vc);
- if (v5 == 0) goto b21;
+ if (v5 == 0UL) goto b21;
goto b4;
b21: zchoice(vc);
v6 = zpeg_P_loop(vc);
- if (v6 == 0) goto b25;
+ if (v6 == 0UL) goto b25;
goto b4;
b25: zchoice(vc);
v7 = zpeg_P_continue(vc);
- if (v7 == 0) goto b29;
+ if (v7 == 0UL) goto b29;
goto b4;
b29: zchoice(vc);
v8 = zpeg_P_goto(vc);
- if (v8 == 0) goto b33;
+ if (v8 == 0UL) goto b33;
goto b4;
b33: zchoice(vc);
v9 = zpeg_P_var(vc);
- if (v9 == 0) goto b37;
+ if (v9 == 0UL) goto b37;
goto b4;
b37: zchoice(vc);
v10 = zpeg_P_enum(vc);
- if (v10 == 0) goto b41;
+ if (v10 == 0UL) goto b41;
goto b4;
b41: zchoice(vc);
v11 = zpeg_P_struct(vc);
- if (v11 == 0) goto b45;
+ if (v11 == 0UL) goto b45;
goto b4;
b45: zchoice(vc);
v12 = zpeg_P_union(vc);
- if (v12 == 0) goto b49;
+ if (v12 == 0UL) goto b49;
goto b4;
b49: zchoice(vc);
v13 = zpeg_P_byte(vc);
- if (v13 == 0) goto b53;
+ if (v13 == 0UL) goto b53;
goto b4;
b53: zchoice(vc);
v14 = zpeg_P_int(vc);
- if (v14 == 0) goto b57;
+ if (v14 == 0UL) goto b57;
goto b4;
b57: zchoice(vc);
v15 = zpeg_P_void(vc);
- if (v15 == 0) goto b61;
+ if (v15 == 0UL) goto b61;
goto b4;
b61: zchoice(vc);
v16 = zpeg_P_func(vc);
- if (v16 == 0) goto b65;
+ if (v16 == 0UL) goto b65;
goto b4;
b65: zchoice(vc);
v17 = zpeg_P_as(vc);
- if (v17 == 0) goto b69;
+ if (v17 == 0UL) goto b69;
goto b4;
b69: zchoice(vc);
v18 = zpeg_P_nil(vc);
- if (v18 == 0) goto b73;
+ if (v18 == 0UL) goto b73;
goto b4;
b73: zfail(vc);
zfail(vc);
- return 0;
+ return 0UL;
}
u zpeg_P_return(u vc) {
u v1 = 0;
u v2 = 0;
- zenter(vc, 70);
+ zenter(vc, 70UL);
v1 = zliteral(vc, (u)"return");
- if (v1 == 0) goto b1;
+ if (v1 == 0UL) goto b1;
zchoice(vc);
v2 = zcharset(vc, (u)"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz");
- if (v2 == 0) goto b5;
+ if (v2 == 0UL) goto b5;
zfail(vc);
zfail(vc);
b1: zfail(vc);
- return 0;
-b5: zleave(vc, 70);
- return 1;
+ return 0UL;
+b5: zleave(vc, 70UL);
+ return 1UL;
}
u zpeg_P_return_stmt(u vc) {
u v1 = 0;
@@ -26544,35 +29301,35 @@ u zpeg_P_return_stmt(u vc) {
u v4 = 0;
u v5 = 0;
u v6 = 0;
- zenter(vc, 19);
+ zenter(vc, 19UL);
v1 = zpeg_P_return(vc);
- if (v1 == 0) goto b1;
+ if (v1 == 0UL) goto b1;
v2 = zpeg_P_sp(vc);
- if (v2 == 0) goto b1;
+ if (v2 == 0UL) goto b1;
zchoice(vc);
v3 = zpeg_P_expr(vc);
- if (v3 == 0) goto b8;
+ if (v3 == 0UL) goto b8;
zcommit(vc);
b8: v4 = zpeg_P_sp(vc);
- if (v4 == 0) goto b1;
+ if (v4 == 0UL) goto b1;
v5 = zliteral(vc, (u)";");
- if (v5 == 0) goto b1;
+ if (v5 == 0UL) goto b1;
v6 = zpeg_P_sp(vc);
- if (v6 == 0) goto b1;
- zleave(vc, 19);
- return 1;
+ if (v6 == 0UL) goto b1;
+ zleave(vc, 19UL);
+ return 1UL;
b1: zfail(vc);
- return 0;
+ return 0UL;
}
u zpeg_P_rsh_op(u vc) {
u v1 = 0;
- zenter(vc, 49);
+ zenter(vc, 49UL);
v1 = zliteral(vc, (u)">>");
- if (v1 == 0) goto b1;
- zleave(vc, 49);
- return 1;
+ if (v1 == 0UL) goto b1;
+ zleave(vc, 49UL);
+ return 1UL;
b1: zfail(vc);
- return 0;
+ return 0UL;
}
u zpeg_P_shift_expr(u vc) {
u v1 = 0;
@@ -26580,46 +29337,46 @@ u zpeg_P_shift_expr(u vc) {
u v3 = 0;
u v4 = 0;
u v5 = 0;
- zenter(vc, 50);
+ zenter(vc, 50UL);
v1 = zpeg_P_unary_expr(vc);
- if (v1 == 0) goto b1;
+ if (v1 == 0UL) goto b1;
b5: zchoice(vc);
zchoice(vc);
v2 = zpeg_P_lsh_op(vc);
- if (v2 == 0) goto b10;
+ if (v2 == 0UL) goto b10;
b9: zcommit(vc);
v4 = zpeg_P_sp(vc);
- if (v4 == 0) goto b6;
+ if (v4 == 0UL) goto b6;
v5 = zpeg_P_unary_expr(vc);
- if (v5 == 0) goto b6;
+ if (v5 == 0UL) goto b6;
zcommit(vc);
goto b5;
-b6: zleave(vc, 50);
- return 1;
+b6: zleave(vc, 50UL);
+ return 1UL;
b10: zchoice(vc);
v3 = zpeg_P_rsh_op(vc);
- if (v3 == 0) goto b14;
+ if (v3 == 0UL) goto b14;
goto b9;
b14: zfail(vc);
goto b6;
b1: zfail(vc);
- return 0;
+ return 0UL;
}
u zpeg_P_sizeof(u vc) {
u v1 = 0;
u v2 = 0;
- zenter(vc, 72);
+ zenter(vc, 72UL);
v1 = zliteral(vc, (u)"sizeof");
- if (v1 == 0) goto b1;
+ if (v1 == 0UL) goto b1;
zchoice(vc);
v2 = zcharset(vc, (u)"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz");
- if (v2 == 0) goto b5;
+ if (v2 == 0UL) goto b5;
zfail(vc);
zfail(vc);
b1: zfail(vc);
- return 0;
-b5: zleave(vc, 72);
- return 1;
+ return 0UL;
+b5: zleave(vc, 72UL);
+ return 1UL;
}
u zpeg_P_sizeof_expr(u vc) {
u v1 = 0;
@@ -26629,56 +29386,56 @@ u zpeg_P_sizeof_expr(u vc) {
u v5 = 0;
u v6 = 0;
u v7 = 0;
- zenter(vc, 64);
+ zenter(vc, 64UL);
v1 = zpeg_P_sizeof(vc);
- if (v1 == 0) goto b1;
+ if (v1 == 0UL) goto b1;
v2 = zpeg_P_sp(vc);
- if (v2 == 0) goto b1;
+ if (v2 == 0UL) goto b1;
v3 = zliteral(vc, (u)"(");
- if (v3 == 0) goto b1;
+ if (v3 == 0UL) goto b1;
v4 = zpeg_P_sp(vc);
- if (v4 == 0) goto b1;
+ if (v4 == 0UL) goto b1;
v5 = zpeg_P_expr(vc);
- if (v5 == 0) goto b1;
+ if (v5 == 0UL) goto b1;
v6 = zliteral(vc, (u)")");
- if (v6 == 0) goto b1;
+ if (v6 == 0UL) goto b1;
v7 = zpeg_P_sp(vc);
- if (v7 == 0) goto b1;
- zleave(vc, 64);
- return 1;
+ if (v7 == 0UL) goto b1;
+ zleave(vc, 64UL);
+ return 1UL;
b1: zfail(vc);
- return 0;
+ return 0UL;
}
u zpeg_P_sp(u vc) {
u v1 = 0;
u v2 = 0;
u v3 = 0;
u v4 = 0;
- zenter(vc, 89);
+ zenter(vc, 89UL);
b3: zchoice(vc);
zchoice(vc);
v1 = zcharset(vc, (u)"\011\012\015 ");
- if (v1 == 0) goto b8;
+ if (v1 == 0UL) goto b8;
b7: zcommit(vc);
zcommit(vc);
goto b3;
b8: zchoice(vc);
v2 = zliteral(vc, (u)"//");
- if (v2 == 0) goto b12;
+ if (v2 == 0UL) goto b12;
b16: zchoice(vc);
zchoice(vc);
v3 = zcharset(vc, (u)"\012\015");
- if (v3 == 0) goto b19;
+ if (v3 == 0UL) goto b19;
zfail(vc);
zfail(vc);
- goto b7;
+b17: goto b7;
b19: v4 = zany(vc);
- if (v4 == 0) goto b7;
+ if (v4 == 0UL) goto b17;
zcommit(vc);
goto b16;
b12: zfail(vc);
- zleave(vc, 89);
- return 1;
+ zleave(vc, 89UL);
+ return 1UL;
}
u zpeg_P_stmt(u vc) {
u v1 = 0;
@@ -26693,60 +29450,60 @@ u zpeg_P_stmt(u vc) {
u v10 = 0;
u v11 = 0;
u v12 = 0;
- zenter(vc, 12);
+ zenter(vc, 12UL);
zchoice(vc);
v1 = zpeg_P_if_stmt(vc);
- if (v1 == 0) goto b5;
+ if (v1 == 0UL) goto b5;
b4: zcommit(vc);
- zleave(vc, 12);
- return 1;
+ zleave(vc, 12UL);
+ return 1UL;
b5: zchoice(vc);
v2 = zpeg_P_loop_stmt(vc);
- if (v2 == 0) goto b9;
+ if (v2 == 0UL) goto b9;
goto b4;
b9: zchoice(vc);
v3 = zpeg_P_break_stmt(vc);
- if (v3 == 0) goto b13;
+ if (v3 == 0UL) goto b13;
goto b4;
b13: zchoice(vc);
v4 = zpeg_P_continue_stmt(vc);
- if (v4 == 0) goto b17;
+ if (v4 == 0UL) goto b17;
goto b4;
b17: zchoice(vc);
v5 = zpeg_P_return_stmt(vc);
- if (v5 == 0) goto b21;
+ if (v5 == 0UL) goto b21;
goto b4;
b21: zchoice(vc);
v6 = zpeg_P_var_stmt(vc);
- if (v6 == 0) goto b25;
+ if (v6 == 0UL) goto b25;
goto b4;
b25: zchoice(vc);
v7 = zpeg_P_label_stmt(vc);
- if (v7 == 0) goto b29;
+ if (v7 == 0UL) goto b29;
goto b4;
b29: zchoice(vc);
v8 = zpeg_P_goto_stmt(vc);
- if (v8 == 0) goto b33;
+ if (v8 == 0UL) goto b33;
goto b4;
b33: zchoice(vc);
v9 = zpeg_P_assign_stmt(vc);
- if (v9 == 0) goto b37;
+ if (v9 == 0UL) goto b37;
goto b4;
b37: zchoice(vc);
v10 = zpeg_P_expr_stmt(vc);
- if (v10 == 0) goto b41;
+ if (v10 == 0UL) goto b41;
goto b4;
b41: zchoice(vc);
v11 = zpeg_P_empty_stmt(vc);
- if (v11 == 0) goto b45;
+ if (v11 == 0UL) goto b45;
goto b4;
b45: zchoice(vc);
v12 = zpeg_P_compound_stmt(vc);
- if (v12 == 0) goto b49;
+ if (v12 == 0UL) goto b49;
goto b4;
b49: zfail(vc);
zfail(vc);
- return 0;
+ return 0UL;
}
u zpeg_P_str(u vc) {
u v1 = 0;
@@ -26755,50 +29512,50 @@ u zpeg_P_str(u vc) {
u v4 = 0;
u v5 = 0;
u v6 = 0;
- zenter(vc, 67);
+ zenter(vc, 67UL);
v1 = zcharset(vc, (u)"\042");
- if (v1 == 0) goto b1;
+ if (v1 == 0UL) goto b1;
b5: zchoice(vc);
zchoice(vc);
v2 = zcharset(vc, (u)"\134");
- if (v2 == 0) goto b10;
+ if (v2 == 0UL) goto b10;
v3 = zany(vc);
- if (v3 == 0) goto b10;
+ if (v3 == 0UL) goto b10;
b9: zcommit(vc);
zcommit(vc);
goto b5;
b10: zchoice(vc);
zchoice(vc);
v4 = zcharset(vc, (u)"\042");
- if (v4 == 0) goto b18;
+ if (v4 == 0UL) goto b18;
zfail(vc);
zfail(vc);
b16: zfail(vc);
v6 = zcharset(vc, (u)"\042");
- if (v6 == 0) goto b1;
- zleave(vc, 67);
- return 1;
+ if (v6 == 0UL) goto b1;
+ zleave(vc, 67UL);
+ return 1UL;
b1: zfail(vc);
- return 0;
+ return 0UL;
b18: v5 = zany(vc);
- if (v5 == 0) goto b16;
+ if (v5 == 0UL) goto b16;
goto b9;
}
u zpeg_P_struct(u vc) {
u v1 = 0;
u v2 = 0;
- zenter(vc, 80);
+ zenter(vc, 80UL);
v1 = zliteral(vc, (u)"struct");
- if (v1 == 0) goto b1;
+ if (v1 == 0UL) goto b1;
zchoice(vc);
v2 = zcharset(vc, (u)"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz");
- if (v2 == 0) goto b5;
+ if (v2 == 0UL) goto b5;
zfail(vc);
zfail(vc);
b1: zfail(vc);
- return 0;
-b5: zleave(vc, 80);
- return 1;
+ return 0UL;
+b5: zleave(vc, 80UL);
+ return 1UL;
}
u zpeg_P_struct_decl(u vc) {
u v1 = 0;
@@ -26810,42 +29567,42 @@ u zpeg_P_struct_decl(u vc) {
u v7 = 0;
u v8 = 0;
u v9 = 0;
- zenter(vc, 4);
+ zenter(vc, 4UL);
v1 = zpeg_P_struct(vc);
- if (v1 == 0) goto b1;
+ if (v1 == 0UL) goto b1;
v2 = zpeg_P_sp(vc);
- if (v2 == 0) goto b1;
+ if (v2 == 0UL) goto b1;
v3 = zpeg_P_ident(vc);
- if (v3 == 0) goto b1;
+ if (v3 == 0UL) goto b1;
v4 = zpeg_P_sp(vc);
- if (v4 == 0) goto b1;
+ if (v4 == 0UL) goto b1;
v5 = zliteral(vc, (u)"{");
- if (v5 == 0) goto b1;
+ if (v5 == 0UL) goto b1;
v6 = zpeg_P_sp(vc);
- if (v6 == 0) goto b1;
+ if (v6 == 0UL) goto b1;
b15: zchoice(vc);
v7 = zpeg_P_member_decl(vc);
- if (v7 == 0) goto b16;
+ if (v7 == 0UL) goto b16;
zcommit(vc);
goto b15;
b16: v8 = zliteral(vc, (u)"}");
- if (v8 == 0) goto b1;
+ if (v8 == 0UL) goto b1;
v9 = zpeg_P_sp(vc);
- if (v9 == 0) goto b1;
- zleave(vc, 4);
- return 1;
+ if (v9 == 0UL) goto b1;
+ zleave(vc, 4UL);
+ return 1UL;
b1: zfail(vc);
- return 0;
+ return 0UL;
}
u zpeg_P_sub_op(u vc) {
u v1 = 0;
- zenter(vc, 39);
+ zenter(vc, 39UL);
v1 = zliteral(vc, (u)"-");
- if (v1 == 0) goto b1;
- zleave(vc, 39);
- return 1;
+ if (v1 == 0UL) goto b1;
+ zleave(vc, 39UL);
+ return 1UL;
b1: zfail(vc);
- return 0;
+ return 0UL;
}
u zpeg_P_type(u vc) {
u v1 = 0;
@@ -26865,60 +29622,60 @@ u zpeg_P_type(u vc) {
u v15 = 0;
u v16 = 0;
u v17 = 0;
- zenter(vc, 7);
+ zenter(vc, 7UL);
zchoice(vc);
v1 = zpeg_P_ident(vc);
- if (v1 == 0) goto b5;
+ if (v1 == 0UL) goto b5;
v2 = zpeg_P_sp(vc);
- if (v2 == 0) goto b5;
+ if (v2 == 0UL) goto b5;
b4: zcommit(vc);
- zleave(vc, 7);
- return 1;
+ zleave(vc, 7UL);
+ return 1UL;
b5: zchoice(vc);
v3 = zpeg_P_byte(vc);
- if (v3 == 0) goto b11;
+ if (v3 == 0UL) goto b11;
v4 = zpeg_P_sp(vc);
- if (v4 == 0) goto b11;
+ if (v4 == 0UL) goto b11;
goto b4;
b11: zchoice(vc);
v5 = zpeg_P_int(vc);
- if (v5 == 0) goto b17;
+ if (v5 == 0UL) goto b17;
v6 = zpeg_P_sp(vc);
- if (v6 == 0) goto b17;
+ if (v6 == 0UL) goto b17;
goto b4;
b17: zchoice(vc);
v7 = zpeg_P_void(vc);
- if (v7 == 0) goto b23;
+ if (v7 == 0UL) goto b23;
v8 = zpeg_P_sp(vc);
- if (v8 == 0) goto b23;
+ if (v8 == 0UL) goto b23;
goto b4;
b23: zchoice(vc);
v9 = zpeg_P_func(vc);
- if (v9 == 0) goto b29;
+ if (v9 == 0UL) goto b29;
v10 = zpeg_P_sp(vc);
- if (v10 == 0) goto b29;
+ if (v10 == 0UL) goto b29;
v11 = zpeg_P_func_type(vc);
- if (v11 == 0) goto b29;
+ if (v11 == 0UL) goto b29;
goto b4;
b29: zchoice(vc);
v12 = zpeg_P_ptr_type(vc);
- if (v12 == 0) goto b37;
+ if (v12 == 0UL) goto b37;
goto b4;
b37: zchoice(vc);
v13 = zliteral(vc, (u)"(");
- if (v13 == 0) goto b41;
+ if (v13 == 0UL) goto b41;
v14 = zpeg_P_sp(vc);
- if (v14 == 0) goto b41;
+ if (v14 == 0UL) goto b41;
v15 = zpeg_P_type(vc);
- if (v15 == 0) goto b41;
+ if (v15 == 0UL) goto b41;
v16 = zliteral(vc, (u)")");
- if (v16 == 0) goto b41;
+ if (v16 == 0UL) goto b41;
v17 = zpeg_P_sp(vc);
- if (v17 == 0) goto b41;
+ if (v17 == 0UL) goto b41;
goto b4;
b41: zfail(vc);
zfail(vc);
- return 0;
+ return 0UL;
}
u zpeg_P_unary_expr(u vc) {
u v1 = 0;
@@ -26929,41 +29686,41 @@ u zpeg_P_unary_expr(u vc) {
u v6 = 0;
u v7 = 0;
u v8 = 0;
- zenter(vc, 57);
+ zenter(vc, 57UL);
b3: zchoice(vc);
zchoice(vc);
v1 = zpeg_P_ref_op(vc);
- if (v1 == 0) goto b8;
+ if (v1 == 0UL) goto b8;
b7: zcommit(vc);
v7 = zpeg_P_sp(vc);
- if (v7 == 0) goto b4;
+ if (v7 == 0UL) goto b4;
zcommit(vc);
goto b3;
b4: v8 = zpeg_P_post_expr(vc);
- if (v8 == 0) goto b1;
- zleave(vc, 57);
- return 1;
+ if (v8 == 0UL) goto b1;
+ zleave(vc, 57UL);
+ return 1UL;
b1: zfail(vc);
- return 0;
+ return 0UL;
b8: zchoice(vc);
v2 = zpeg_P_deref_op(vc);
- if (v2 == 0) goto b12;
+ if (v2 == 0UL) goto b12;
goto b7;
b12: zchoice(vc);
v3 = zpeg_P_pos_op(vc);
- if (v3 == 0) goto b16;
+ if (v3 == 0UL) goto b16;
goto b7;
b16: zchoice(vc);
v4 = zpeg_P_neg_op(vc);
- if (v4 == 0) goto b20;
+ if (v4 == 0UL) goto b20;
goto b7;
b20: zchoice(vc);
v5 = zpeg_P_not_op(vc);
- if (v5 == 0) goto b24;
+ if (v5 == 0UL) goto b24;
goto b7;
b24: zchoice(vc);
v6 = zpeg_P_bnot_op(vc);
- if (v6 == 0) goto b28;
+ if (v6 == 0UL) goto b28;
goto b7;
b28: zfail(vc);
goto b4;
@@ -26971,18 +29728,18 @@ b28: zfail(vc);
u zpeg_P_union(u vc) {
u v1 = 0;
u v2 = 0;
- zenter(vc, 81);
+ zenter(vc, 81UL);
v1 = zliteral(vc, (u)"union");
- if (v1 == 0) goto b1;
+ if (v1 == 0UL) goto b1;
zchoice(vc);
v2 = zcharset(vc, (u)"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz");
- if (v2 == 0) goto b5;
+ if (v2 == 0UL) goto b5;
zfail(vc);
zfail(vc);
b1: zfail(vc);
- return 0;
-b5: zleave(vc, 81);
- return 1;
+ return 0UL;
+b5: zleave(vc, 81UL);
+ return 1UL;
}
u zpeg_P_union_decl(u vc) {
u v1 = 0;
@@ -26994,48 +29751,48 @@ u zpeg_P_union_decl(u vc) {
u v7 = 0;
u v8 = 0;
u v9 = 0;
- zenter(vc, 5);
+ zenter(vc, 5UL);
v1 = zpeg_P_union(vc);
- if (v1 == 0) goto b1;
+ if (v1 == 0UL) goto b1;
v2 = zpeg_P_sp(vc);
- if (v2 == 0) goto b1;
+ if (v2 == 0UL) goto b1;
v3 = zpeg_P_ident(vc);
- if (v3 == 0) goto b1;
+ if (v3 == 0UL) goto b1;
v4 = zpeg_P_sp(vc);
- if (v4 == 0) goto b1;
+ if (v4 == 0UL) goto b1;
v5 = zliteral(vc, (u)"{");
- if (v5 == 0) goto b1;
+ if (v5 == 0UL) goto b1;
v6 = zpeg_P_sp(vc);
- if (v6 == 0) goto b1;
+ if (v6 == 0UL) goto b1;
b15: zchoice(vc);
v7 = zpeg_P_member_decl(vc);
- if (v7 == 0) goto b16;
+ if (v7 == 0UL) goto b16;
zcommit(vc);
goto b15;
b16: v8 = zliteral(vc, (u)"}");
- if (v8 == 0) goto b1;
+ if (v8 == 0UL) goto b1;
v9 = zpeg_P_sp(vc);
- if (v9 == 0) goto b1;
- zleave(vc, 5);
- return 1;
+ if (v9 == 0UL) goto b1;
+ zleave(vc, 5UL);
+ return 1UL;
b1: zfail(vc);
- return 0;
+ return 0UL;
}
u zpeg_P_var(u vc) {
u v1 = 0;
u v2 = 0;
- zenter(vc, 78);
+ zenter(vc, 78UL);
v1 = zliteral(vc, (u)"var");
- if (v1 == 0) goto b1;
+ if (v1 == 0UL) goto b1;
zchoice(vc);
v2 = zcharset(vc, (u)"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz");
- if (v2 == 0) goto b5;
+ if (v2 == 0UL) goto b5;
zfail(vc);
zfail(vc);
b1: zfail(vc);
- return 0;
-b5: zleave(vc, 78);
- return 1;
+ return 0UL;
+b5: zleave(vc, 78UL);
+ return 1UL;
}
u zpeg_P_var_stmt(u vc) {
u v1 = 0;
@@ -27047,55 +29804,55 @@ u zpeg_P_var_stmt(u vc) {
u v7 = 0;
u v8 = 0;
u v9 = 0;
- zenter(vc, 20);
+ zenter(vc, 20UL);
v1 = zpeg_P_var(vc);
- if (v1 == 0) goto b1;
+ if (v1 == 0UL) goto b1;
v2 = zpeg_P_sp(vc);
- if (v2 == 0) goto b1;
+ if (v2 == 0UL) goto b1;
v3 = zpeg_P_ident(vc);
- if (v3 == 0) goto b1;
+ if (v3 == 0UL) goto b1;
v4 = zpeg_P_sp(vc);
- if (v4 == 0) goto b1;
+ if (v4 == 0UL) goto b1;
v5 = zliteral(vc, (u)":");
- if (v5 == 0) goto b1;
+ if (v5 == 0UL) goto b1;
v6 = zpeg_P_sp(vc);
- if (v6 == 0) goto b1;
+ if (v6 == 0UL) goto b1;
v7 = zpeg_P_type(vc);
- if (v7 == 0) goto b1;
+ if (v7 == 0UL) goto b1;
v8 = zliteral(vc, (u)";");
- if (v8 == 0) goto b1;
+ if (v8 == 0UL) goto b1;
v9 = zpeg_P_sp(vc);
- if (v9 == 0) goto b1;
- zleave(vc, 20);
- return 1;
+ if (v9 == 0UL) goto b1;
+ zleave(vc, 20UL);
+ return 1UL;
b1: zfail(vc);
- return 0;
+ return 0UL;
}
u zpeg_P_void(u vc) {
u v1 = 0;
u v2 = 0;
- zenter(vc, 84);
+ zenter(vc, 84UL);
v1 = zliteral(vc, (u)"void");
- if (v1 == 0) goto b1;
+ if (v1 == 0UL) goto b1;
zchoice(vc);
v2 = zcharset(vc, (u)"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz");
- if (v2 == 0) goto b5;
+ if (v2 == 0UL) goto b5;
zfail(vc);
zfail(vc);
b1: zfail(vc);
- return 0;
-b5: zleave(vc, 84);
- return 1;
+ return 0UL;
+b5: zleave(vc, 84UL);
+ return 1UL;
}
u zpeg_P_xor_op(u vc) {
u v1 = 0;
- zenter(vc, 41);
+ zenter(vc, 41UL);
v1 = zliteral(vc, (u)"^");
- if (v1 == 0) goto b1;
- zleave(vc, 41);
- return 1;
+ if (v1 == 0UL) goto b1;
+ zleave(vc, 41UL);
+ return 1UL;
b1: zfail(vc);
- return 0;
+ return 0UL;
}
u zpeg_compile(u vc, u vpn, u verr) {
u v3 = 0;
@@ -27106,7 +29863,8 @@ u zpeg_compile(u vc, u vpn, u verr) {
v4 = vc;
v5 = vpn;
v6 = ((u(*)())v3)(v4, v5);
- return 0;
+ v6;
+ return 0UL;
}
u zpeg_new(u vfilename, u vsrc, u vlen, u va, u vgrammar, u vtag_to_str) {
u vc = 0;
@@ -27124,43 +29882,43 @@ u zpeg_new(u vfilename, u vsrc, u vlen, u va, u vgrammar, u vtag_to_str) {
u v18 = 0;
v7 = (u)zalloc;
v8 = va;
- v9 = 200;
+ v9 = 200UL;
v10 = ((u(*)())v7)(v8, v9);
vc = v10;
- *(u*)vc = va;
- *(u*)(vc + 8) = vgrammar;
- *(u*)(vc + 16) = vtag_to_str;
- *(u*)(vc + 24) = vfilename;
- *(u*)(vc + 32) = vsrc;
- *(u*)(vc + 40) = vlen;
- *(u*)(vc + 48) = 0;
- *(u*)(vc + 72) = 0;
- *(u*)(vc + 56) = 1;
- *(u*)(vc + 64) = 1;
- *(u*)(vc + 72) = 0;
- *(u*)(vc + 80) = 0;
- *(u*)(vc + 88) = 0;
- *(u*)(vc + 96) = 0;
- *(u*)(vc + 104) = 0;
- *(u*)(vc + 112) = 0;
- *(u*)(vc + 136) = 1024;
+ *(u*)(vc + 0UL) = va;
+ *(u*)(vc + 8UL) = vgrammar;
+ *(u*)(vc + 16UL) = vtag_to_str;
+ *(u*)(vc + 24UL) = vfilename;
+ *(u*)(vc + 32UL) = vsrc;
+ *(u*)(vc + 40UL) = vlen;
+ *(u*)(vc + 48UL) = 0UL;
+ *(u*)(vc + 72UL) = 0UL;
+ *(u*)(vc + 56UL) = 1UL;
+ *(u*)(vc + 64UL) = 1UL;
+ *(u*)(vc + 72UL) = 0UL;
+ *(u*)(vc + 80UL) = 0UL;
+ *(u*)(vc + 88UL) = 0UL;
+ *(u*)(vc + 96UL) = 0UL;
+ *(u*)(vc + 104UL) = 0UL;
+ *(u*)(vc + 112UL) = 0UL;
+ *(u*)(vc + 136UL) = 1024UL;
v11 = (u)zalloc;
v12 = va;
- v13 = *(u*)(vc + 136) * 48;
+ v13 = *(u*)(vc + 136UL) * 48UL;
v14 = ((u(*)())v11)(v12, v13);
- *(u*)(vc + 120) = v14;
- *(u*)(vc + 128) = 0;
- *(u*)(vc + 144) = 0;
- *(u*)(vc + 152) = 0;
- *(u*)(vc + 160) = 0;
- *(u*)(vc + 168) = 0;
- *(u*)(vc + 192) = 1024;
+ *(u*)(vc + 120UL) = v14;
+ *(u*)(vc + 128UL) = 0UL;
+ *(u*)(vc + 144UL) = 0UL;
+ *(u*)(vc + 152UL) = 0UL;
+ *(u*)(vc + 160UL) = 0UL;
+ *(u*)(vc + 168UL) = 0UL;
+ *(u*)(vc + 192UL) = 1024UL;
v15 = (u)zalloc;
v16 = va;
- v17 = *(u*)(vc + 192) * 8;
+ v17 = *(u*)(vc + 192UL) * 8UL;
v18 = ((u(*)())v15)(v16, v17);
- *(u*)(vc + 176) = v18;
- *(u*)(vc + 184) = 0;
+ *(u*)(vc + 176UL) = v18;
+ *(u*)(vc + 184UL) = 0UL;
return vc;
}
u zpeg_parse(u vc, u vsp, u verr) {
@@ -27235,97 +29993,114 @@ u zpeg_parse(u vc, u vsp, u verr) {
v3 = (u)zchoice;
v4 = vc;
v5 = ((u(*)())v3)(v4);
- v7 = *(u*)(vc + 8);
+ v5;
+ v7 = *(u*)(vc + 8UL);
v8 = vc;
v9 = ((u(*)())v7)(v8);
if (!v9) goto b6;
- v6 = 0;
-b7: if (!v6) goto b2;
+ v6 = 0UL;
+b7: if (!v6) goto b4;
v10 = (u)zfputs;
v11 = verr;
v12 = (u)"syntax error at ";
v13 = ((u(*)())v10)(v11, v12);
+ v13;
v14 = (u)zfputs;
v15 = verr;
- v16 = *(u*)(vc + 24);
+ v16 = *(u*)(vc + 24UL);
v17 = ((u(*)())v14)(v15, v16);
+ v17;
v18 = (u)zfputs;
v19 = verr;
v20 = (u)":";
v21 = ((u(*)())v18)(v19, v20);
+ v21;
v22 = (u)zfputd;
v23 = verr;
- v24 = *(u*)(vc + 96);
+ v24 = *(u*)(vc + 96UL);
v25 = ((u(*)())v22)(v23, v24);
+ v25;
v26 = (u)zfputs;
v27 = verr;
v28 = (u)":";
v29 = ((u(*)())v26)(v27, v28);
+ v29;
v30 = (u)zfputd;
v31 = verr;
- v32 = *(u*)(vc + 104);
+ v32 = *(u*)(vc + 104UL);
v33 = ((u(*)())v30)(v31, v32);
+ v33;
v34 = (u)zfputs;
v35 = verr;
v36 = (u)" expected ";
v37 = ((u(*)())v34)(v35, v36);
+ v37;
v38 = (u)zfputs;
v39 = verr;
- v41 = *(u*)(vc + 16);
- v42 = *(u*)(vc + 88);
+ v41 = *(u*)(vc + 16UL);
+ v42 = *(u*)(vc + 88UL);
v43 = ((u(*)())v41)(v42);
v40 = v43;
v44 = ((u(*)())v38)(v39, v40);
- if (!*(u*)(vc + 112)) goto b18;
+ v44;
+ if (!*(u*)(vc + 112UL)) goto b20;
v45 = (u)zfputs;
v46 = verr;
v47 = (u)" '";
v48 = ((u(*)())v45)(v46, v47);
+ v48;
v49 = (u)zfputs;
v50 = verr;
- v51 = *(u*)(vc + 112);
+ v51 = *(u*)(vc + 112UL);
v52 = ((u(*)())v49)(v50, v51);
+ v52;
v53 = (u)zfputs;
v54 = verr;
v55 = (u)"'";
v56 = ((u(*)())v53)(v54, v55);
+ v56;
b18: v57 = (u)zfputs;
v58 = verr;
v59 = (u)"\012";
v60 = ((u(*)())v57)(v58, v59);
+ v60;
v61 = (u)zexit;
- v62 = 1;
+ v62 = 1UL;
v63 = ((u(*)())v61)(v62);
+ v63;
b2: v64 = (u)zcommit;
v65 = vc;
v66 = ((u(*)())v64)(v65);
+ v66;
v67 = (u)zconstruct;
v68 = vc;
v69 = vsp;
v70 = ((u(*)())v67)(v68, v69);
return v70;
-b6: v6 = 1;
+b20: goto b18;
+b4: goto b2;
+b6: v6 = 1UL;
goto b7;
}
u zpeg_reset(u vc, u vfilename, u vsrc, u vlen) {
- *(u*)(vc + 24) = vfilename;
- *(u*)(vc + 32) = vsrc;
- *(u*)(vc + 40) = vlen;
- *(u*)(vc + 48) = 0;
- *(u*)(vc + 72) = 0;
- *(u*)(vc + 56) = 1;
- *(u*)(vc + 64) = 1;
- *(u*)(vc + 72) = 0;
- *(u*)(vc + 80) = 0;
- *(u*)(vc + 88) = 0;
- *(u*)(vc + 96) = 0;
- *(u*)(vc + 104) = 0;
- *(u*)(vc + 112) = 0;
- *(u*)(vc + 144) = 0;
- *(u*)(vc + 128) = 0;
- *(u*)(vc + 152) = 0;
- *(u*)(vc + 184) = 0;
- return 0;
+ *(u*)(vc + 24UL) = vfilename;
+ *(u*)(vc + 32UL) = vsrc;
+ *(u*)(vc + 40UL) = vlen;
+ *(u*)(vc + 48UL) = 0UL;
+ *(u*)(vc + 72UL) = 0UL;
+ *(u*)(vc + 56UL) = 1UL;
+ *(u*)(vc + 64UL) = 1UL;
+ *(u*)(vc + 72UL) = 0UL;
+ *(u*)(vc + 80UL) = 0UL;
+ *(u*)(vc + 88UL) = 0UL;
+ *(u*)(vc + 96UL) = 0UL;
+ *(u*)(vc + 104UL) = 0UL;
+ *(u*)(vc + 112UL) = 0UL;
+ *(u*)(vc + 144UL) = 0UL;
+ *(u*)(vc + 128UL) = 0UL;
+ *(u*)(vc + 152UL) = 0UL;
+ *(u*)(vc + 184UL) = 0UL;
+ return 0UL;
}
u zprototype(u vc, u vn) {
u va = 0;
@@ -27442,66 +30217,67 @@ u zprototype(u vc, u vn) {
u v113 = 0;
u v114 = 0;
if (!vn) goto b5;
- v6 = 0;
-b6: if (!v6) goto b1;
- return 0;
-b1: *(u*)(vc + 32) = *(u*)(vn + 32);
- *(u*)(vc + 40) = 0;
- vkind = *(u*)vn;
- if (vkind != 0) goto b9;
+ v6 = 0UL;
+b6: if (!v6) goto b3;
+ return 0UL;
+b3: *(u*)(vc + 32UL) = *(u*)(vn + 32UL);
+ *(u*)(vc + 40UL) = 0UL;
+ vkind = *(u*)(vn + 0UL);
+ if (vkind != 0UL) goto b9;
v8 = (u)zstrcmp;
- v9 = *(u*)(vn + 56);
+ v9 = *(u*)(vn + 56UL);
v10 = (u)"void";
v11 = ((u(*)())v8)(v9, v10);
if (!v11) goto b14;
- v7 = 0;
-b15: if (!v7) goto b10;
+ v7 = 0UL;
+b15: if (!v7) goto b12;
v12 = (u)zmktype0;
v13 = vc;
- v14 = 1;
+ v14 = 1UL;
v15 = ((u(*)())v12)(v13, v14);
return v15;
-b10: v17 = (u)zstrcmp;
- v18 = *(u*)(vn + 56);
+b12: v17 = (u)zstrcmp;
+ v18 = *(u*)(vn + 56UL);
v19 = (u)"int";
v20 = ((u(*)())v17)(v18, v19);
if (!v20) goto b22;
- v16 = 0;
-b23: if (!v16) goto b18;
+ v16 = 0UL;
+b23: if (!v16) goto b20;
v21 = (u)zmktype0;
v22 = vc;
- v23 = 2;
+ v23 = 2UL;
v24 = ((u(*)())v21)(v22, v23);
return v24;
-b18: v26 = (u)zstrcmp;
- v27 = *(u*)(vn + 56);
+b20: v26 = (u)zstrcmp;
+ v27 = *(u*)(vn + 56UL);
v28 = (u)"byte";
v29 = ((u(*)())v26)(v27, v28);
if (!v29) goto b30;
- v25 = 0;
-b31: if (!v25) goto b26;
+ v25 = 0UL;
+b31: if (!v25) goto b28;
v30 = (u)zmktype0;
v31 = vc;
- v32 = 3;
+ v32 = 3UL;
v33 = ((u(*)())v30)(v31, v32);
return v33;
-b26: v34 = (u)zfind;
+b28: v34 = (u)zfind;
v35 = vc;
- v36 = *(u*)(vn + 56);
- v37 = 0;
- v38 = 0;
+ v36 = *(u*)(vn + 56UL);
+ v37 = 0UL;
+ v38 = 0UL;
v39 = ((u(*)())v34)(v35, v36, v37, v38);
vst = v39;
if (!vst) goto b43;
- v41 = 0;
+ v41 = 0UL;
b44: if (!v41) goto b39;
- v40 = 1;
-b41: if (!v40) goto b35;
+ v40 = 1UL;
+b41: if (!v40) goto b37;
v43 = (u)zcdie;
v44 = vc;
v45 = (u)"unknown struct";
v46 = ((u(*)())v43)(v44, v45);
-b35: if (*(u*)*(u*)(vst + 136) != 17) goto b52;
+ v46;
+b35: if (*(u*)(*(u*)(vst + 136UL) + 0UL) != 17UL) goto b52;
v47 = (u)zmktype_struct;
v48 = vc;
v49 = vst;
@@ -27512,120 +30288,125 @@ b52: v51 = (u)zmktype_union;
v53 = vst;
v54 = ((u(*)())v51)(v52, v53);
return v54;
-b39: if (!*(u*)(vst + 112)) goto b47;
- v42 = 0;
+b37: goto b35;
+b39: if (!*(u*)(vst + 112UL)) goto b47;
+ v42 = 0UL;
b48: if (!v42) goto b45;
- v40 = 1;
+ v40 = 1UL;
goto b41;
-b45: v40 = 0;
+b45: v40 = 0UL;
goto b41;
-b47: v42 = 1;
+b47: v42 = 1UL;
goto b48;
-b43: v41 = 1;
+b43: v41 = 1UL;
goto b44;
-b30: v25 = 1;
+b30: v25 = 1UL;
goto b31;
-b22: v16 = 1;
+b22: v16 = 1UL;
goto b23;
-b14: v7 = 1;
+b14: v7 = 1UL;
goto b15;
-b9: if (vkind != 10) goto b56;
+b9: if (vkind != 10UL) goto b56;
v55 = (u)zprototype;
v56 = vc;
- v57 = *(u*)(*(u*)(vn + 8) + 16);
+ v57 = *(u*)(*(u*)(vn + 8UL) + 16UL);
v58 = ((u(*)())v55)(v56, v57);
va = v58;
v59 = (u)zprototype;
v60 = vc;
- v61 = *(u*)(vn + 16);
+ v61 = *(u*)(vn + 16UL);
v62 = ((u(*)())v59)(v60, v61);
vb = v62;
- vkind = *(u*)va;
- if (vkind == 2) goto b63;
- if (vkind == 3) goto b67;
- if (vkind == 4) goto b71;
- if (vkind == 6) goto b71;
- v65 = 1;
+ vkind = *(u*)(va + 0UL);
+ if (vkind == 2UL) goto b63;
+ if (vkind == 3UL) goto b67;
+ if (vkind == 4UL) goto b71;
+ if (vkind == 6UL) goto b71;
+ v65 = 1UL;
b73: if (!v65) goto b67;
- v64 = 1;
+ v64 = 1UL;
b69: if (!v64) goto b63;
- v63 = 1;
-b65: if (!v63) goto b59;
+ v63 = 1UL;
+b65: if (!v63) goto b61;
v66 = (u)zcdie;
v67 = vc;
v68 = (u)"not a ptr arg";
v69 = ((u(*)())v66)(v67, v68);
+ v69;
b59: v70 = (u)zmktype2;
v71 = vc;
- v72 = 5;
+ v72 = 5UL;
v73 = va;
v74 = vb;
v75 = ((u(*)())v70)(v71, v72, v73, v74);
return v75;
-b63: v63 = 0;
+b61: goto b59;
+b63: v63 = 0UL;
goto b65;
-b67: v64 = 0;
+b67: v64 = 0UL;
goto b69;
-b71: v65 = 0;
+b71: v65 = 0UL;
goto b73;
-b56: if (vkind != 15) goto b77;
- if (!*(u*)(vn + 16)) goto b80;
+b56: if (vkind != 15UL) goto b77;
+ if (!*(u*)(vn + 16UL)) goto b80;
v76 = (u)zprototype;
v77 = vc;
- v78 = *(u*)(vn + 16);
+ v78 = *(u*)(vn + 16UL);
v79 = ((u(*)())v76)(v77, v78);
va = v79;
b78: v84 = (u)zprototype;
v85 = vc;
- v86 = *(u*)(vn + 8);
+ v86 = *(u*)(vn + 8UL);
v87 = ((u(*)())v84)(v85, v86);
vb = v87;
- vkind = *(u*)va;
- if (vkind == 1) goto b88;
- if (vkind == 2) goto b92;
- if (vkind == 3) goto b96;
- if (vkind == 4) goto b100;
- if (vkind == 6) goto b100;
- v91 = 1;
+ vkind = *(u*)(va + 0UL);
+ if (vkind == 1UL) goto b88;
+ if (vkind == 2UL) goto b92;
+ if (vkind == 3UL) goto b96;
+ if (vkind == 4UL) goto b100;
+ if (vkind == 6UL) goto b100;
+ v91 = 1UL;
b102: if (!v91) goto b96;
- v90 = 1;
+ v90 = 1UL;
b98: if (!v90) goto b92;
- v89 = 1;
+ v89 = 1UL;
b94: if (!v89) goto b88;
- v88 = 1;
-b90: if (!v88) goto b84;
+ v88 = 1UL;
+b90: if (!v88) goto b86;
v92 = (u)zcdie;
v93 = vc;
v94 = (u)"not a ptr return";
v95 = ((u(*)())v92)(v93, v94);
+ v95;
b84: v96 = (u)zmktype2;
v97 = vc;
- v98 = 6;
+ v98 = 6UL;
v99 = va;
v100 = vb;
v101 = ((u(*)())v96)(v97, v98, v99, v100);
return v101;
-b88: v88 = 0;
+b86: goto b84;
+b88: v88 = 0UL;
goto b90;
-b92: v89 = 0;
+b92: v89 = 0UL;
goto b94;
-b96: v90 = 0;
+b96: v90 = 0UL;
goto b98;
-b100: v91 = 0;
+b100: v91 = 0UL;
goto b102;
b80: v80 = (u)zmktype0;
v81 = vc;
- v82 = 1;
+ v82 = 1UL;
v83 = ((u(*)())v80)(v81, v82);
va = v83;
goto b78;
-b77: if (vkind != 16) goto b106;
+b77: if (vkind != 16UL) goto b106;
v102 = (u)zmktype1;
v103 = vc;
- v104 = 4;
+ v104 = 4UL;
v106 = (u)zprototype;
v107 = vc;
- v108 = *(u*)(vn + 8);
+ v108 = *(u*)(vn + 8UL);
v109 = ((u(*)())v106)(v107, v108);
v105 = v109;
v110 = ((u(*)())v102)(v103, v104, v105);
@@ -27634,8 +30415,9 @@ b106: v111 = (u)zcdie;
v112 = vc;
v113 = (u)"prototype: invalid type";
v114 = ((u(*)())v111)(v112, v113);
- return 0;
-b5: v6 = 1;
+ v114;
+ return 0UL;
+b5: v6 = 1UL;
goto b6;
}
u zputchar(u vc, u vch) {
@@ -27644,27 +30426,28 @@ u zputchar(u vc, u vch) {
u v4 = 0;
u v5 = 0;
v2 = (u)zfputc;
- v3 = *(u*)(vc + 8);
+ v3 = *(u*)(vc + 8UL);
v4 = vch;
v5 = ((u(*)())v2)(v3, v4);
- return 0;
+ v5;
+ return 0UL;
}
u zrb_first(u vn) {
u v1 = 0;
u v2 = 0;
if (!vn) goto b5;
- v1 = 0;
-b6: if (!v1) goto b7;
- return 0;
-b7: if (!*(u*)(vn + 16)) goto b13;
- v2 = 0;
-b14: if (!v2) goto b9;
+ v1 = 0UL;
+b6: if (!v1) goto b3;
+ return 0UL;
+b3:b7: if (!*(u*)(vn + 16UL)) goto b13;
+ v2 = 0UL;
+b14: if (!v2) goto b11;
return vn;
-b9: vn = *(u*)(vn + 16);
+b11: vn = *(u*)(vn + 16UL);
goto b7;
-b13: v2 = 1;
+b13: v2 = 1UL;
goto b14;
-b5: v1 = 1;
+b5: v1 = 1UL;
goto b6;
}
u zrb_link(u vtree, u vlink, u vparent, u vn) {
@@ -27702,92 +30485,98 @@ u zrb_link(u vtree, u vlink, u vparent, u vn) {
u v35 = 0;
u v36 = 0;
u v37 = 0;
- *(u*)vn = 1;
- *(u*)(vn + 8) = vparent;
- *(u*)(vn + 16) = 0;
- *(u*)(vn + 24) = 0;
+ *(u*)(vn + 0UL) = 1UL;
+ *(u*)(vn + 8UL) = vparent;
+ *(u*)(vn + 16UL) = 0UL;
+ *(u*)(vn + 24UL) = 0UL;
*(u*)vlink = vn;
-b1: vp = *(u*)(vn + 8);
+b1: vp = *(u*)(vn + 8UL);
if (!vp) goto b7;
- v8 = 0;
-b8: if (!v8) goto b3;
- *(u*)vn = 0;
- return 0;
-b3: if (!*(u*)vp) goto b13;
- v9 = 0;
-b14: if (!v9) goto b9;
- return 0;
-b9: vg = *(u*)(vp + 8);
+ v8 = 0UL;
+b8: if (!v8) goto b5;
+ *(u*)(vn + 0UL) = 0UL;
+ return 0UL;
+b5: if (!*(u*)(vp + 0UL)) goto b13;
+ v9 = 0UL;
+b14: if (!v9) goto b11;
+ return 0UL;
+b11: vg = *(u*)(vp + 8UL);
if (!vg) goto b19;
- v10 = 0;
-b20: if (!v10) goto b15;
- *(u*)vp = 0;
- return 0;
-b15: vl = *(u*)(vg + 16);
- vr = *(u*)(vg + 24);
+ v10 = 0UL;
+b20: if (!v10) goto b17;
+ *(u*)(vp + 0UL) = 0UL;
+ return 0UL;
+b17: vl = *(u*)(vg + 16UL);
+ vr = *(u*)(vg + 24UL);
if (!vl) goto b25;
if (!vr) goto b29;
- if (!*(u*)vl) goto b33;
- if (!*(u*)vr) goto b33;
- v13 = 1;
+ if (!*(u*)(vl + 0UL)) goto b33;
+ if (!*(u*)(vr + 0UL)) goto b33;
+ v13 = 1UL;
b35: if (!v13) goto b29;
- v12 = 1;
+ v12 = 1UL;
b31: if (!v12) goto b25;
- v11 = 1;
-b27: if (!v11) goto b21;
- *(u*)vl = 0;
- *(u*)vr = 0;
- *(u*)vg = 1;
+ v11 = 1UL;
+b27: if (!v11) goto b23;
+ *(u*)(vl + 0UL) = 0UL;
+ *(u*)(vr + 0UL) = 0UL;
+ *(u*)(vg + 0UL) = 1UL;
vn = vg;
goto b1;
-b21: if (vp != *(u*)(vg + 16)) goto b38;
- if (vn != *(u*)(vp + 16)) goto b41;
- *(u*)vn = 0;
+b23: if (vp != *(u*)(vg + 16UL)) goto b38;
+ if (vn != *(u*)(vp + 16UL)) goto b41;
+ *(u*)(vn + 0UL) = 0UL;
v14 = (u)zrb_rotate_right;
v15 = vtree;
v16 = vp;
v17 = ((u(*)())v14)(v15, v16);
+ v17;
vn = vp;
- goto b1;
-b41: *(u*)vp = 0;
+b39:b36: goto b1;
+b41: *(u*)(vp + 0UL) = 0UL;
v18 = (u)zrb_rotate_left;
v19 = vtree;
v20 = vn;
v21 = ((u(*)())v18)(v19, v20);
+ v21;
v22 = (u)zrb_rotate_right;
v23 = vtree;
v24 = vn;
v25 = ((u(*)())v22)(v23, v24);
- goto b1;
-b38: if (vn != *(u*)(vp + 16)) goto b47;
- *(u*)vp = 0;
+ v25;
+ goto b39;
+b38: if (vn != *(u*)(vp + 16UL)) goto b47;
+ *(u*)(vp + 0UL) = 0UL;
v26 = (u)zrb_rotate_right;
v27 = vtree;
v28 = vn;
v29 = ((u(*)())v26)(v27, v28);
+ v29;
v30 = (u)zrb_rotate_left;
v31 = vtree;
v32 = vn;
v33 = ((u(*)())v30)(v31, v32);
- goto b1;
-b47: *(u*)vn = 0;
+ v33;
+b45: goto b36;
+b47: *(u*)(vn + 0UL) = 0UL;
v34 = (u)zrb_rotate_left;
v35 = vtree;
v36 = vp;
v37 = ((u(*)())v34)(v35, v36);
+ v37;
vn = vp;
- goto b1;
-b25: v11 = 0;
+ goto b45;
+b25: v11 = 0UL;
goto b27;
-b29: v12 = 0;
+b29: v12 = 0UL;
goto b31;
-b33: v13 = 0;
+b33: v13 = 0UL;
goto b35;
-b19: v10 = 1;
+b19: v10 = 1UL;
goto b20;
-b13: v9 = 1;
+b13: v9 = 1UL;
goto b14;
-b7: v8 = 1;
+b7: v8 = 1UL;
goto b8;
}
u zrb_next(u vn) {
@@ -27797,70 +30586,74 @@ u zrb_next(u vn) {
u v4 = 0;
u v5 = 0;
if (!vn) goto b5;
- v1 = 0;
-b6: if (!v1) goto b1;
- return 0;
-b1: if (!*(u*)(vn + 24)) goto b11;
+ v1 = 0UL;
+b6: if (!v1) goto b3;
+ return 0UL;
+b3: if (!*(u*)(vn + 24UL)) goto b9;
v2 = (u)zrb_first;
- v3 = *(u*)(vn + 24);
+ v3 = *(u*)(vn + 24UL);
v4 = ((u(*)())v2)(v3);
return v4;
-b11: if (!*(u*)(vn + 8)) goto b17;
- v5 = 0;
-b18: if (!v5) goto b13;
- return 0;
-b13: if (*(u*)(*(u*)(vn + 8) + 16) != vn) goto b19;
- return *(u*)(vn + 8);
-b19: vn = *(u*)(vn + 8);
+b9:b11: if (!*(u*)(vn + 8UL)) goto b17;
+ v5 = 0UL;
+b18: if (!v5) goto b15;
+ return 0UL;
+b15: if (*(u*)(*(u*)(vn + 8UL) + 16UL) != vn) goto b21;
+ return *(u*)(vn + 8UL);
+b21: vn = *(u*)(vn + 8UL);
goto b11;
-b17: v5 = 1;
+b17: v5 = 1UL;
goto b18;
-b5: v1 = 1;
+b5: v1 = 1UL;
goto b6;
}
u zrb_rotate_left(u vtree, u vn) {
+ u vgg = 0;
u vg = 0;
u vp = 0;
u vs = 0;
- vs = *(u*)(vn + 16);
- vp = *(u*)(vn + 8);
- vg = *(u*)(vp + 8);
- *(u*)(vn + 16) = vp;
- *(u*)(vp + 8) = vn;
- *(u*)(vp + 24) = vs;
- if (!vs) goto b1;
- *(u*)(vs + 8) = vp;
-b1: *(u*)(vn + 8) = vg;
+ vs = *(u*)(vn + 16UL);
+ vp = *(u*)(vn + 8UL);
+ vg = *(u*)(vp + 8UL);
+ *(u*)(vn + 16UL) = vp;
+ *(u*)(vp + 8UL) = vn;
+ *(u*)(vp + 24UL) = vs;
+ if (!vs) goto b3;
+ *(u*)(vs + 8UL) = vp;
+b1: *(u*)(vn + 8UL) = vg;
if (!vg) goto b6;
- if (*(u*)(vg + 16) != vp) goto b9;
- *(u*)(vg + 16) = vn;
-b4: return 0;
-b9: *(u*)(vg + 24) = vn;
- goto b4;
+ if (*(u*)(vg + 16UL) != vp) goto b9;
+ *(u*)(vg + 16UL) = vn;
+b7:b4: return 0UL;
+b9: *(u*)(vg + 24UL) = vn;
+ goto b7;
b6: *(u*)vtree = vn;
goto b4;
+b3: goto b1;
}
u zrb_rotate_right(u vtree, u vn) {
+ u vgg = 0;
u vg = 0;
u vp = 0;
u vs = 0;
- vs = *(u*)(vn + 24);
- vp = *(u*)(vn + 8);
- vg = *(u*)(vp + 8);
- *(u*)(vn + 24) = vp;
- *(u*)(vp + 8) = vn;
- *(u*)(vp + 16) = vs;
- if (!vs) goto b1;
- *(u*)(vs + 8) = vp;
-b1: *(u*)(vn + 8) = vg;
+ vs = *(u*)(vn + 24UL);
+ vp = *(u*)(vn + 8UL);
+ vg = *(u*)(vp + 8UL);
+ *(u*)(vn + 24UL) = vp;
+ *(u*)(vp + 8UL) = vn;
+ *(u*)(vp + 16UL) = vs;
+ if (!vs) goto b3;
+ *(u*)(vs + 8UL) = vp;
+b1: *(u*)(vn + 8UL) = vg;
if (!vg) goto b6;
- if (*(u*)(vg + 16) != vp) goto b9;
- *(u*)(vg + 16) = vn;
-b4: return 0;
-b9: *(u*)(vg + 24) = vn;
- goto b4;
+ if (*(u*)(vg + 16UL) != vp) goto b9;
+ *(u*)(vg + 16UL) = vn;
+b7:b4: return 0UL;
+b9: *(u*)(vg + 24UL) = vn;
+ goto b7;
b6: *(u*)vtree = vn;
goto b4;
+b3: goto b1;
}
u zread(u vfd, u vbuf, u vn) {
u v3 = 0;
@@ -27873,13 +30666,13 @@ u zread(u vfd, u vbuf, u vn) {
u v10 = 0;
u v11 = 0;
v3 = (u)zsyscall;
- v4 = 0;
+ v4 = 0UL;
v5 = vfd;
v6 = vbuf;
v7 = vn;
- v8 = 0;
- v9 = 0;
- v10 = 0;
+ v8 = 0UL;
+ v9 = 0UL;
+ v10 = 0UL;
v11 = ((u(*)())v3)(v4, v5, v6, v7, v8, v9, v10);
return v11;
}
@@ -27911,11 +30704,11 @@ u zreadall(u vfd, u vlen, u va) {
u v27 = 0;
u v28 = 0;
u v29 = 0;
- vcap = 0;
- vn = 0;
-b1: if (vn != vcap) goto b3;
- if (vcap != 0) goto b8;
- vnewcap = 4096;
+ vcap = 0UL;
+ vn = 0UL;
+b1: if (vn != vcap) goto b5;
+ if (vcap != 0UL) goto b8;
+ vnewcap = 4096UL;
b6: v9 = (u)zalloc;
v10 = va;
v11 = vnewcap;
@@ -27926,29 +30719,34 @@ b6: v9 = (u)zalloc;
v15 = vbuf;
v16 = vn;
v17 = ((u(*)())v13)(v14, v15, v16);
+ v17;
v18 = (u)zfree;
v19 = va;
v20 = vbuf;
v21 = ((u(*)())v18)(v19, v20);
+ v21;
vbuf = vtmp;
vcap = vnewcap;
b3: v22 = (u)zread;
v23 = vfd;
- v24 = vbuf + vn;
+ v24 = vbuf + vn * 1UL;
v25 = vcap - vn;
v26 = ((u(*)())v22)(v23, v24, v25);
vret = v26;
- if ((s)vret >= (s)0) goto b13;
+ if ((s)vret >= (s)0UL) goto b15;
v27 = (u)zdie;
v28 = (u)"readall failed";
v29 = ((u(*)())v27)(v28);
-b13: if (vret != 0) goto b17;
+ v29;
+b13: if (vret != 0UL) goto b19;
*(u*)vlen = vn;
return vbuf;
-b17: vn = vn + vret;
+b19: vn = vn + vret;
goto b1;
-b8: vnewcap = vcap * 2;
+b15: goto b13;
+b8: vnewcap = vcap * 2UL;
goto b6;
+b5: goto b3;
}
u zreconstruct(u vc, u vpn) {
u vret = 0;
@@ -27994,17 +30792,18 @@ u zreconstruct(u vc, u vpn) {
u v42 = 0;
u v43 = 0;
v6 = (u)zassert;
- v7 = (u)(*(u*)vpn == 0);
+ v7 = (u)(*(u*)(vpn + 0UL) == 0UL);
v8 = (u)"grammar";
v9 = ((u(*)())v6)(v7, v8);
- vret = 0;
+ v9;
+ vret = 0UL;
vlink = (u)&vret;
- vpn = *(u*)(vpn + 16);
+ vpn = *(u*)(vpn + 16UL);
b2: if (!vpn) goto b8;
- v10 = 0;
-b9: if (!v10) goto b4;
+ v10 = 0UL;
+b9: if (!v10) goto b6;
return vret;
-b4: if (*(u*)vpn != 2) goto b12;
+b6: if (*(u*)(vpn + 0UL) != 2UL) goto b12;
v11 = (u)zreconstruct_enum;
v12 = vc;
v13 = vpn;
@@ -28012,7 +30811,7 @@ b4: if (*(u*)vpn != 2) goto b12;
vn = v14;
b10: v35 = (u)zmknode1;
v36 = vc;
- v37 = 14;
+ v37 = 14UL;
v38 = vn;
v39 = ((u(*)())v35)(v36, v37, v38);
vp = v39;
@@ -28020,44 +30819,47 @@ b10: v35 = (u)zmknode1;
v41 = vp;
v42 = vpn;
v43 = ((u(*)())v40)(v41, v42);
+ v43;
*(u*)vlink = vp;
- vlink = vp + 16;
- vpn = *(u*)(vpn + 8);
+ vlink = vp + 16UL;
+ vpn = *(u*)(vpn + 8UL);
goto b2;
-b12: if (*(u*)vpn != 4) goto b15;
+b12: if (*(u*)(vpn + 0UL) != 4UL) goto b15;
v15 = (u)zreconstruct_struct;
v16 = vc;
v17 = vpn;
v18 = ((u(*)())v15)(v16, v17);
vn = v18;
goto b10;
-b15: if (*(u*)vpn != 5) goto b18;
+b15: if (*(u*)(vpn + 0UL) != 5UL) goto b18;
v19 = (u)zreconstruct_union;
v20 = vc;
v21 = vpn;
v22 = ((u(*)())v19)(v20, v21);
vn = v22;
goto b10;
-b18: if (*(u*)vpn != 6) goto b21;
+b18: if (*(u*)(vpn + 0UL) != 6UL) goto b21;
v23 = (u)zreconstruct_func;
v24 = vc;
v25 = vpn;
v26 = ((u(*)())v23)(v24, v25);
vn = v26;
goto b10;
-b21: if (*(u*)vpn != 90) goto b24;
+b21: if (*(u*)(vpn + 0UL) != 90UL) goto b24;
v27 = (u)zpeg_compile;
- v28 = *(u*)(vc + 16);
+ v28 = *(u*)(vc + 16UL);
v29 = vpn;
- v30 = *(u*)(vc + 24);
+ v30 = *(u*)(vc + 24UL);
v31 = ((u(*)())v27)(v28, v29, v30);
- vpn = *(u*)(vpn + 8);
+ v31;
+ vpn = *(u*)(vpn + 8UL);
goto b2;
b24: v32 = (u)zdie;
v33 = (u)"invalid decl";
v34 = ((u(*)())v32)(v33);
+ v34;
goto b10;
-b8: v10 = 1;
+b8: v10 = 1UL;
goto b9;
}
u zreconstruct_add(u vc, u vpn) {
@@ -28092,25 +30894,26 @@ u zreconstruct_add(u vc, u vpn) {
u v30 = 0;
u v31 = 0;
v6 = (u)zassert;
- v7 = (u)(*(u*)vpn == 42);
+ v7 = (u)(*(u*)(vpn + 0UL) == 42UL);
v8 = (u)"add_expr";
v9 = ((u(*)())v6)(v7, v8);
+ v9;
v10 = (u)zreconstruct_mul;
v11 = vc;
- v12 = *(u*)(vpn + 16);
+ v12 = *(u*)(vpn + 16UL);
v13 = ((u(*)())v10)(v11, v12);
vret = v13;
vlink = (u)&vret;
- vpn = *(u*)(*(u*)(vpn + 16) + 8);
+ vpn = *(u*)(*(u*)(vpn + 16UL) + 8UL);
b3: if (!vpn) goto b9;
- v14 = 0;
-b10: if (!v14) goto b5;
+ v14 = 0UL;
+b10: if (!v14) goto b7;
return vret;
-b5: if (*(u*)vpn != 38) goto b13;
- vkind = 45;
+b7: if (*(u*)(vpn + 0UL) != 38UL) goto b13;
+ vkind = 45UL;
b11: v18 = (u)zreconstruct_mul;
v19 = vc;
- v20 = *(u*)(vpn + 8);
+ v20 = *(u*)(vpn + 8UL);
v21 = ((u(*)())v18)(v19, v20);
vn = v21;
v22 = (u)zmknode;
@@ -28124,22 +30927,24 @@ b11: v18 = (u)zreconstruct_mul;
v29 = *(u*)vlink;
v30 = vpn;
v31 = ((u(*)())v28)(v29, v30);
- vpn = *(u*)(*(u*)(vpn + 8) + 8);
+ v31;
+ vpn = *(u*)(*(u*)(vpn + 8UL) + 8UL);
goto b3;
-b13: if (*(u*)vpn != 39) goto b15;
- vkind = 46;
+b13: if (*(u*)(vpn + 0UL) != 39UL) goto b15;
+ vkind = 46UL;
goto b11;
-b15: if (*(u*)vpn != 40) goto b17;
- vkind = 54;
+b15: if (*(u*)(vpn + 0UL) != 40UL) goto b17;
+ vkind = 54UL;
goto b11;
-b17: if (*(u*)vpn != 41) goto b19;
- vkind = 55;
+b17: if (*(u*)(vpn + 0UL) != 41UL) goto b19;
+ vkind = 55UL;
goto b11;
b19: v15 = (u)zdie;
v16 = (u)"invalid addop";
v17 = ((u(*)())v15)(v16);
+ v17;
goto b11;
-b9: v14 = 1;
+b9: v14 = 1UL;
goto b10;
}
u zreconstruct_arg_decl(u vc, u vpn) {
@@ -28169,22 +30974,23 @@ u zreconstruct_arg_decl(u vc, u vpn) {
u v25 = 0;
u v26 = 0;
v5 = (u)zassert;
- v6 = (u)(*(u*)vpn == 10);
+ v6 = (u)(*(u*)(vpn + 0UL) == 10UL);
v7 = (u)"arg_decl";
v8 = ((u(*)())v5)(v6, v7);
+ v8;
v9 = (u)zreconstruct_ident;
v10 = vc;
- v11 = *(u*)(vpn + 16);
+ v11 = *(u*)(vpn + 16UL);
v12 = ((u(*)())v9)(v10, v11);
va = v12;
v13 = (u)zreconstruct_type;
v14 = vc;
- v15 = *(u*)(*(u*)(vpn + 16) + 8);
+ v15 = *(u*)(*(u*)(vpn + 16UL) + 8UL);
v16 = ((u(*)())v13)(v14, v15);
vb = v16;
v17 = (u)zmknode;
v18 = vc;
- v19 = 12;
+ v19 = 12UL;
v20 = va;
v21 = vb;
v22 = ((u(*)())v17)(v18, v19, v20, v21);
@@ -28193,6 +30999,7 @@ u zreconstruct_arg_decl(u vc, u vpn) {
v24 = vn;
v25 = vpn;
v26 = ((u(*)())v23)(v24, v25);
+ v26;
return vn;
}
u zreconstruct_args(u vc, u vpn) {
@@ -28214,20 +31021,20 @@ u zreconstruct_args(u vc, u vpn) {
u v17 = 0;
u v18 = 0;
u v19 = 0;
- vret = 0;
+ vret = 0UL;
vlink = (u)&vret;
b1: if (!vpn) goto b7;
- v6 = 0;
-b8: if (!v6) goto b3;
+ v6 = 0UL;
+b8: if (!v6) goto b5;
return vret;
-b3: v7 = (u)zreconstruct_expr;
+b5: v7 = (u)zreconstruct_expr;
v8 = vc;
v9 = vpn;
v10 = ((u(*)())v7)(v8, v9);
va = v10;
v11 = (u)zmknode1;
v12 = vc;
- v13 = 6;
+ v13 = 6UL;
v14 = va;
v15 = ((u(*)())v11)(v12, v13, v14);
vn = v15;
@@ -28235,11 +31042,12 @@ b3: v7 = (u)zreconstruct_expr;
v17 = vn;
v18 = vpn;
v19 = ((u(*)())v16)(v17, v18);
+ v19;
*(u*)vlink = vn;
- vlink = vn + 16;
- vpn = *(u*)(vpn + 8);
+ vlink = vn + 16UL;
+ vpn = *(u*)(vpn + 8UL);
goto b1;
-b7: v6 = 1;
+b7: v6 = 1UL;
goto b8;
}
u zreconstruct_assign(u vc, u vpn) {
@@ -28269,22 +31077,23 @@ u zreconstruct_assign(u vc, u vpn) {
u v25 = 0;
u v26 = 0;
v5 = (u)zassert;
- v6 = (u)(*(u*)vpn == 23);
+ v6 = (u)(*(u*)(vpn + 0UL) == 23UL);
v7 = (u)"assign_stmt";
v8 = ((u(*)())v5)(v6, v7);
+ v8;
v9 = (u)zreconstruct_unary;
v10 = vc;
- v11 = *(u*)(vpn + 16);
+ v11 = *(u*)(vpn + 16UL);
v12 = ((u(*)())v9)(v10, v11);
va = v12;
v13 = (u)zreconstruct_expr;
v14 = vc;
- v15 = *(u*)(*(u*)(vpn + 16) + 8);
+ v15 = *(u*)(*(u*)(vpn + 16UL) + 8UL);
v16 = ((u(*)())v13)(v14, v15);
vb = v16;
v17 = (u)zmknode;
v18 = vc;
- v19 = 33;
+ v19 = 33UL;
v20 = va;
v21 = vb;
v22 = ((u(*)())v17)(v18, v19, v20, v21);
@@ -28293,6 +31102,7 @@ u zreconstruct_assign(u vc, u vpn) {
v24 = vn;
v25 = vpn;
v26 = ((u(*)())v23)(v24, v25);
+ v26;
return vn;
}
u zreconstruct_bool(u vc, u vpn) {
@@ -28327,25 +31137,26 @@ u zreconstruct_bool(u vc, u vpn) {
u v30 = 0;
u v31 = 0;
v6 = (u)zassert;
- v7 = (u)(*(u*)vpn == 30);
+ v7 = (u)(*(u*)(vpn + 0UL) == 30UL);
v8 = (u)"bool_expr";
v9 = ((u(*)())v6)(v7, v8);
+ v9;
v10 = (u)zreconstruct_comp;
v11 = vc;
- v12 = *(u*)(vpn + 16);
+ v12 = *(u*)(vpn + 16UL);
v13 = ((u(*)())v10)(v11, v12);
vret = v13;
vlink = (u)&vret;
- vpn = *(u*)(*(u*)(vpn + 16) + 8);
+ vpn = *(u*)(*(u*)(vpn + 16UL) + 8UL);
b3: if (!vpn) goto b9;
- v14 = 0;
-b10: if (!v14) goto b5;
+ v14 = 0UL;
+b10: if (!v14) goto b7;
return vret;
-b5: if (*(u*)vpn != 28) goto b13;
- vkind = 52;
+b7: if (*(u*)(vpn + 0UL) != 28UL) goto b13;
+ vkind = 52UL;
b11: v18 = (u)zreconstruct_comp;
v19 = vc;
- v20 = *(u*)(vpn + 8);
+ v20 = *(u*)(vpn + 8UL);
v21 = ((u(*)())v18)(v19, v20);
vn = v21;
v22 = (u)zmknode;
@@ -28359,17 +31170,19 @@ b11: v18 = (u)zreconstruct_comp;
v29 = *(u*)vlink;
v30 = vpn;
v31 = ((u(*)())v28)(v29, v30);
- vlink = *(u*)vlink + 16;
- vpn = *(u*)(*(u*)(vpn + 8) + 8);
+ v31;
+ vlink = *(u*)vlink + 16UL;
+ vpn = *(u*)(*(u*)(vpn + 8UL) + 8UL);
goto b3;
-b13: if (*(u*)vpn != 29) goto b15;
- vkind = 51;
+b13: if (*(u*)(vpn + 0UL) != 29UL) goto b15;
+ vkind = 51UL;
goto b11;
b15: v15 = (u)zdie;
v16 = (u)"invalid boolop";
v17 = ((u(*)())v15)(v16);
+ v17;
goto b11;
-b9: v14 = 1;
+b9: v14 = 1UL;
goto b10;
}
u zreconstruct_break(u vc, u vpn) {
@@ -28387,18 +31200,20 @@ u zreconstruct_break(u vc, u vpn) {
u v13 = 0;
u v14 = 0;
v3 = (u)zassert;
- v4 = (u)(*(u*)vpn == 17);
+ v4 = (u)(*(u*)(vpn + 0UL) == 17UL);
v5 = (u)"break_stmt";
v6 = ((u(*)())v3)(v4, v5);
+ v6;
v7 = (u)zmknode0;
v8 = vc;
- v9 = 27;
+ v9 = 27UL;
v10 = ((u(*)())v7)(v8, v9);
vn = v10;
v11 = (u)zcopypos;
v12 = vn;
v13 = vpn;
v14 = ((u(*)())v11)(v12, v13);
+ v14;
return vn;
}
u zreconstruct_char(u vc, u vpn) {
@@ -28430,42 +31245,46 @@ u zreconstruct_char(u vc, u vpn) {
u v27 = 0;
u v28 = 0;
v6 = (u)zassert;
- v7 = (u)(*(u*)vpn == 68);
+ v7 = (u)(*(u*)(vpn + 0UL) == 68UL);
v8 = (u)"char";
v9 = ((u(*)())v6)(v7, v8);
- vi = 1;
+ v9;
+ vi = 1UL;
v10 = (u)zunescape;
- v11 = *(u*)(vpn + 24);
+ v11 = *(u*)(vpn + 24UL);
v12 = (u)&vi;
- v13 = *(u*)(vpn + 32) - 1;
+ v13 = *(u*)(vpn + 32UL) - 1UL;
v14 = (u)&vok;
v15 = ((u(*)())v10)(v11, v12, v13, v14);
vx = v15;
if (!vok) goto b11;
- v17 = 0;
+ v17 = 0UL;
b12: if (!v17) goto b7;
- v16 = 1;
-b9: if (!v16) goto b3;
+ v16 = 1UL;
+b9: if (!v16) goto b5;
v18 = (u)zdie;
v19 = (u)"invalid character";
v20 = ((u(*)())v18)(v19);
+ v20;
b3: v21 = (u)zmknode0;
v22 = vc;
- v23 = 2;
+ v23 = 2UL;
v24 = ((u(*)())v21)(v22, v23);
vn = v24;
v25 = (u)zcopypos;
v26 = vn;
v27 = vpn;
v28 = ((u(*)())v25)(v26, v27);
- *(u*)(vn + 48) = vx;
+ v28;
+ *(u*)(vn + 48UL) = vx;
return vn;
-b7: if (vi == *(u*)(vpn + 32) - 1) goto b13;
- v16 = 1;
+b5: goto b3;
+b7: if (vi == *(u*)(vpn + 32UL) - 1UL) goto b13;
+ v16 = 1UL;
goto b9;
-b13: v16 = 0;
+b13: v16 = 0UL;
goto b9;
-b11: v17 = 1;
+b11: v17 = 1UL;
goto b12;
}
u zreconstruct_comp(u vc, u vpn) {
@@ -28501,24 +31320,25 @@ u zreconstruct_comp(u vc, u vpn) {
u v31 = 0;
u v32 = 0;
v7 = (u)zassert;
- v8 = (u)(*(u*)vpn == 37);
+ v8 = (u)(*(u*)(vpn + 0UL) == 37UL);
v9 = (u)"comp_expr";
v10 = ((u(*)())v7)(v8, v9);
+ v10;
v11 = (u)zreconstruct_add;
v12 = vc;
- v13 = *(u*)(vpn + 16);
+ v13 = *(u*)(vpn + 16UL);
v14 = ((u(*)())v11)(v12, v13);
va = v14;
- if (!*(u*)(*(u*)(vpn + 16) + 8)) goto b7;
- v15 = 0;
-b8: if (!v15) goto b3;
+ if (!*(u*)(*(u*)(vpn + 16UL) + 8UL)) goto b7;
+ v15 = 0UL;
+b8: if (!v15) goto b5;
return va;
-b3: vtag = *(u*)*(u*)(*(u*)(vpn + 16) + 8);
- if (vtag != 31) goto b11;
- vkind = 41;
+b5: vtag = *(u*)(*(u*)(*(u*)(vpn + 16UL) + 8UL) + 0UL);
+ if (vtag != 31UL) goto b11;
+ vkind = 41UL;
b9: v19 = (u)zreconstruct_add;
v20 = vc;
- v21 = *(u*)(*(u*)(*(u*)(vpn + 16) + 8) + 8);
+ v21 = *(u*)(*(u*)(*(u*)(vpn + 16UL) + 8UL) + 8UL);
v22 = ((u(*)())v19)(v20, v21);
vb = v22;
v23 = (u)zmknode;
@@ -28532,27 +31352,29 @@ b9: v19 = (u)zreconstruct_add;
v30 = vn;
v31 = vpn;
v32 = ((u(*)())v29)(v30, v31);
+ v32;
return vn;
-b11: if (vtag != 32) goto b13;
- vkind = 42;
+b11: if (vtag != 32UL) goto b13;
+ vkind = 42UL;
goto b9;
-b13: if (vtag != 33) goto b15;
- vkind = 39;
+b13: if (vtag != 33UL) goto b15;
+ vkind = 39UL;
goto b9;
-b15: if (vtag != 34) goto b17;
- vkind = 40;
+b15: if (vtag != 34UL) goto b17;
+ vkind = 40UL;
goto b9;
-b17: if (vtag != 35) goto b19;
- vkind = 43;
+b17: if (vtag != 35UL) goto b19;
+ vkind = 43UL;
goto b9;
-b19: if (vtag != 36) goto b21;
- vkind = 44;
+b19: if (vtag != 36UL) goto b21;
+ vkind = 44UL;
goto b9;
b21: v16 = (u)zdie;
v17 = (u)"invalid compop";
v18 = ((u(*)())v16)(v17);
+ v18;
goto b9;
-b7: v15 = 1;
+b7: v15 = 1UL;
goto b8;
}
u zreconstruct_compound(u vc, u vpn) {
@@ -28579,25 +31401,26 @@ u zreconstruct_compound(u vc, u vpn) {
u v22 = 0;
u v23 = 0;
v6 = (u)zassert;
- v7 = (u)(*(u*)vpn == 26);
+ v7 = (u)(*(u*)(vpn + 0UL) == 26UL);
v8 = (u)"compound_stmt";
v9 = ((u(*)())v6)(v7, v8);
- vpn = *(u*)(vpn + 16);
- vret = 0;
+ v9;
+ vpn = *(u*)(vpn + 16UL);
+ vret = 0UL;
vlink = (u)&vret;
b2: if (!vpn) goto b8;
- v10 = 0;
-b9: if (!v10) goto b4;
+ v10 = 0UL;
+b9: if (!v10) goto b6;
return vret;
-b4: v11 = (u)zreconstruct_stmt;
+b6: v11 = (u)zreconstruct_stmt;
v12 = vc;
v13 = vpn;
v14 = ((u(*)())v11)(v12, v13);
va = v14;
- if (!va) goto b11;
+ if (!va) goto b13;
v15 = (u)zmknode1;
v16 = vc;
- v17 = 5;
+ v17 = 5UL;
v18 = va;
v19 = ((u(*)())v15)(v16, v17, v18);
vn = v19;
@@ -28605,11 +31428,13 @@ b4: v11 = (u)zreconstruct_stmt;
v21 = vn;
v22 = vpn;
v23 = ((u(*)())v20)(v21, v22);
+ v23;
*(u*)vlink = vn;
- vlink = vn + 16;
-b11: vpn = *(u*)(vpn + 8);
+ vlink = vn + 16UL;
+b11: vpn = *(u*)(vpn + 8UL);
goto b2;
-b8: v10 = 1;
+b13: goto b11;
+b8: v10 = 1UL;
goto b9;
}
u zreconstruct_continue(u vc, u vpn) {
@@ -28627,18 +31452,20 @@ u zreconstruct_continue(u vc, u vpn) {
u v13 = 0;
u v14 = 0;
v3 = (u)zassert;
- v4 = (u)(*(u*)vpn == 18);
+ v4 = (u)(*(u*)(vpn + 0UL) == 18UL);
v5 = (u)"continue_stmt";
v6 = ((u(*)())v3)(v4, v5);
+ v6;
v7 = (u)zmknode0;
v8 = vc;
- v9 = 28;
+ v9 = 28UL;
v10 = ((u(*)())v7)(v8, v9);
vn = v10;
v11 = (u)zcopypos;
v12 = vn;
v13 = vpn;
v14 = ((u(*)())v11)(v12, v13);
+ v14;
return vn;
}
u zreconstruct_dec(u vc, u vpn) {
@@ -28667,33 +31494,37 @@ u zreconstruct_dec(u vc, u vpn) {
u v24 = 0;
u v25 = 0;
v5 = (u)zassert;
- v6 = (u)(*(u*)vpn == 66);
+ v6 = (u)(*(u*)(vpn + 0UL) == 66UL);
v7 = (u)"dec";
v8 = ((u(*)())v5)(v6, v7);
+ v8;
v9 = (u)zdec2int;
- v10 = *(u*)(vpn + 24);
- v11 = *(u*)(vpn + 32);
+ v10 = *(u*)(vpn + 24UL);
+ v11 = *(u*)(vpn + 32UL);
v12 = (u)&vok;
v13 = ((u(*)())v9)(v10, v11, v12);
vx = v13;
if (!vok) goto b7;
- v14 = 0;
-b8: if (!v14) goto b3;
+ v14 = 0UL;
+b8: if (!v14) goto b5;
v15 = (u)zdie;
v16 = (u)"invalid dec";
v17 = ((u(*)())v15)(v16);
+ v17;
b3: v18 = (u)zmknode0;
v19 = vc;
- v20 = 1;
+ v20 = 1UL;
v21 = ((u(*)())v18)(v19, v20);
vn = v21;
v22 = (u)zcopypos;
v23 = vn;
v24 = vpn;
v25 = ((u(*)())v22)(v23, v24);
- *(u*)(vn + 48) = vx;
+ v25;
+ *(u*)(vn + 48UL) = vx;
return vn;
-b7: v14 = 1;
+b5: goto b3;
+b7: v14 = 1UL;
goto b8;
}
u zreconstruct_empty(u vc, u vpn) {
@@ -28702,10 +31533,11 @@ u zreconstruct_empty(u vc, u vpn) {
u v4 = 0;
u v5 = 0;
v2 = (u)zassert;
- v3 = (u)(*(u*)vpn == 25);
+ v3 = (u)(*(u*)(vpn + 0UL) == 25UL);
v4 = (u)"empty_stmt";
v5 = ((u(*)())v2)(v3, v4);
- return 0;
+ v5;
+ return 0UL;
}
u zreconstruct_enum(u vc, u vpn) {
u va = 0;
@@ -28740,29 +31572,31 @@ u zreconstruct_enum(u vc, u vpn) {
u v31 = 0;
u v32 = 0;
v5 = (u)zassert;
- v6 = (u)(*(u*)vpn == 2);
+ v6 = (u)(*(u*)(vpn + 0UL) == 2UL);
v7 = (u)"enum_decl";
v8 = ((u(*)())v5)(v6, v7);
+ v8;
v9 = (u)zmknode;
v10 = vc;
- v11 = 23;
- v12 = 0;
- v13 = 0;
+ v11 = 23UL;
+ v12 = 0UL;
+ v13 = 0UL;
v14 = ((u(*)())v9)(v10, v11, v12, v13);
vn = v14;
v15 = (u)zcopypos;
v16 = vn;
v17 = vpn;
v18 = ((u(*)())v15)(v16, v17);
- vpn = *(u*)(*(u*)(vpn + 16) + 8);
- vlink = vn + 16;
+ v18;
+ vpn = *(u*)(*(u*)(vpn + 16UL) + 8UL);
+ vlink = vn + 16UL;
b4: if (!vpn) goto b10;
- v19 = 0;
-b11: if (!v19) goto b6;
+ v19 = 0UL;
+b11: if (!v19) goto b8;
return vn;
-b6: v20 = (u)zmknode1;
+b8: v20 = (u)zmknode1;
v21 = vc;
- v22 = 25;
+ v22 = 25UL;
v24 = (u)zreconstruct_enum_item;
v25 = vc;
v26 = vpn;
@@ -28774,11 +31608,12 @@ b6: v20 = (u)zmknode1;
v30 = va;
v31 = vpn;
v32 = ((u(*)())v29)(v30, v31);
+ v32;
*(u*)vlink = va;
- vlink = va + 16;
- vpn = *(u*)(vpn + 8);
+ vlink = va + 16UL;
+ vpn = *(u*)(vpn + 8UL);
goto b4;
-b10: v19 = 1;
+b10: v19 = 1UL;
goto b11;
}
u zreconstruct_enum_item(u vc, u vpn) {
@@ -28812,28 +31647,30 @@ u zreconstruct_enum_item(u vc, u vpn) {
u v29 = 0;
u v30 = 0;
v5 = (u)zassert;
- v6 = (u)(*(u*)vpn == 1);
+ v6 = (u)(*(u*)(vpn + 0UL) == 1UL);
v7 = (u)"enum_item";
v8 = ((u(*)())v5)(v6, v7);
+ v8;
v9 = (u)zreconstruct_ident;
v10 = vc;
- v11 = *(u*)(vpn + 16);
+ v11 = *(u*)(vpn + 16UL);
v12 = ((u(*)())v9)(v10, v11);
va = v12;
- vb = 0;
- if (!*(u*)(*(u*)(vpn + 16) + 8)) goto b3;
+ vb = 0UL;
+ if (!*(u*)(*(u*)(vpn + 16UL) + 8UL)) goto b5;
v13 = (u)zreconstruct_expr;
v14 = vc;
- v15 = *(u*)(*(u*)(vpn + 16) + 8);
+ v15 = *(u*)(*(u*)(vpn + 16UL) + 8UL);
v16 = ((u(*)())v13)(v14, v15);
vb = v16;
v17 = (u)zassert;
- v18 = (u)(*(u*)vb == 1);
+ v18 = (u)(*(u*)(vb + 0UL) == 1UL);
v19 = (u)"enum must be num";
v20 = ((u(*)())v17)(v18, v19);
+ v20;
b3: v21 = (u)zmknode;
v22 = vc;
- v23 = 24;
+ v23 = 24UL;
v24 = va;
v25 = vb;
v26 = ((u(*)())v21)(v22, v23, v24, v25);
@@ -28842,7 +31679,9 @@ b3: v21 = (u)zmknode;
v28 = vn;
v29 = vpn;
v30 = ((u(*)())v27)(v28, v29);
+ v30;
return vn;
+b5: goto b3;
}
u zreconstruct_expr(u vc, u vpn) {
u v2 = 0;
@@ -28854,12 +31693,13 @@ u zreconstruct_expr(u vc, u vpn) {
u v8 = 0;
u v9 = 0;
v2 = (u)zassert;
- v3 = (u)(*(u*)vpn == 27);
+ v3 = (u)(*(u*)(vpn + 0UL) == 27UL);
v4 = (u)"expr";
v5 = ((u(*)())v2)(v3, v4);
+ v5;
v6 = (u)zreconstruct_bool;
v7 = vc;
- v8 = *(u*)(vpn + 16);
+ v8 = *(u*)(vpn + 16UL);
v9 = ((u(*)())v6)(v7, v8);
return v9;
}
@@ -28873,12 +31713,13 @@ u zreconstruct_expr_stmt(u vc, u vpn) {
u v8 = 0;
u v9 = 0;
v2 = (u)zassert;
- v3 = (u)(*(u*)vpn == 24);
+ v3 = (u)(*(u*)(vpn + 0UL) == 24UL);
v4 = (u)"expr_stmt";
v5 = ((u(*)())v2)(v3, v4);
+ v5;
v6 = (u)zreconstruct_expr;
v7 = vc;
- v8 = *(u*)(vpn + 16);
+ v8 = *(u*)(vpn + 16UL);
v9 = ((u(*)())v6)(v7, v8);
return v9;
}
@@ -28925,22 +31766,23 @@ u zreconstruct_func(u vc, u vpn) {
u v41 = 0;
u v42 = 0;
v6 = (u)zassert;
- v7 = (u)(*(u*)vpn == 6);
+ v7 = (u)(*(u*)(vpn + 0UL) == 6UL);
v8 = (u)"func_def";
v9 = ((u(*)())v6)(v7, v8);
+ v9;
v10 = (u)zreconstruct_ident;
v11 = vc;
- v12 = *(u*)(vpn + 16);
+ v12 = *(u*)(vpn + 16UL);
v13 = ((u(*)())v10)(v11, v12);
va = v13;
v14 = (u)zreconstruct_func_type;
v15 = vc;
- v16 = *(u*)(*(u*)(vpn + 16) + 8);
+ v16 = *(u*)(*(u*)(vpn + 16UL) + 8UL);
v17 = ((u(*)())v14)(v15, v16);
vb = v17;
v18 = (u)zmknode;
v19 = vc;
- v20 = 13;
+ v20 = 13UL;
v21 = va;
v22 = vb;
v23 = ((u(*)())v18)(v19, v20, v21, v22);
@@ -28949,18 +31791,19 @@ u zreconstruct_func(u vc, u vpn) {
v25 = vd;
v26 = vpn;
v27 = ((u(*)())v24)(v25, v26);
- if (!*(u*)(*(u*)(*(u*)(vpn + 16) + 8) + 8)) goto b10;
- v28 = 0;
-b11: if (!v28) goto b6;
+ v27;
+ if (!*(u*)(*(u*)(*(u*)(vpn + 16UL) + 8UL) + 8UL)) goto b10;
+ v28 = 0UL;
+b11: if (!v28) goto b8;
return vd;
-b6: v29 = (u)zreconstruct_compound;
+b8: v29 = (u)zreconstruct_compound;
v30 = vc;
- v31 = *(u*)(*(u*)(*(u*)(vpn + 16) + 8) + 8);
+ v31 = *(u*)(*(u*)(*(u*)(vpn + 16UL) + 8UL) + 8UL);
v32 = ((u(*)())v29)(v30, v31);
vb = v32;
v33 = (u)zmknode;
v34 = vc;
- v35 = 11;
+ v35 = 11UL;
v36 = vd;
v37 = vb;
v38 = ((u(*)())v33)(v34, v35, v36, v37);
@@ -28969,12 +31812,14 @@ b6: v29 = (u)zreconstruct_compound;
v40 = vn;
v41 = vpn;
v42 = ((u(*)())v39)(v40, v41);
+ v42;
return vn;
-b10: v28 = 1;
+b10: v28 = 1UL;
goto b11;
}
u zreconstruct_func_type(u vc, u vpn) {
u va = 0;
+ u vb = 0;
u vn = 0;
u vlink = 0;
u v6 = 0;
@@ -29013,33 +31858,35 @@ u zreconstruct_func_type(u vc, u vpn) {
u v39 = 0;
u v40 = 0;
v6 = (u)zassert;
- v7 = (u)(*(u*)vpn == 11);
+ v7 = (u)(*(u*)(vpn + 0UL) == 11UL);
v8 = (u)"func_type";
v9 = ((u(*)())v6)(v7, v8);
+ v9;
v10 = (u)zmknode;
v11 = vc;
- v12 = 15;
- v13 = 0;
- v14 = 0;
+ v12 = 15UL;
+ v13 = 0UL;
+ v14 = 0UL;
v15 = ((u(*)())v10)(v11, v12, v13, v14);
vn = v15;
v16 = (u)zcopypos;
v17 = vn;
v18 = vpn;
v19 = ((u(*)())v16)(v17, v18);
- vpn = *(u*)(vpn + 16);
- vlink = vn + 8;
+ v19;
+ vpn = *(u*)(vpn + 16UL);
+ vlink = vn + 8UL;
b4: if (!vpn) goto b10;
- v20 = 0;
-b11: if (!v20) goto b6;
+ v20 = 0UL;
+b11: if (!v20) goto b8;
return vn;
-b6: if (*(u*)vpn != 9) goto b14;
-b12: vpn = *(u*)(vpn + 8);
+b8: if (*(u*)(vpn + 0UL) != 9UL) goto b14;
+b12: vpn = *(u*)(vpn + 8UL);
goto b4;
-b14: if (*(u*)vpn != 10) goto b16;
+b14: if (*(u*)(vpn + 0UL) != 10UL) goto b16;
v21 = (u)zmknode1;
v22 = vc;
- v23 = 10;
+ v23 = 10UL;
v25 = (u)zreconstruct_arg_decl;
v26 = vc;
v27 = vpn;
@@ -29051,21 +31898,23 @@ b14: if (*(u*)vpn != 10) goto b16;
v31 = va;
v32 = vpn;
v33 = ((u(*)())v30)(v31, v32);
+ v33;
*(u*)vlink = va;
- vlink = va + 16;
+ vlink = va + 16UL;
goto b12;
-b16: if (*(u*)vpn != 7) goto b21;
+b16: if (*(u*)(vpn + 0UL) != 7UL) goto b21;
v34 = (u)zreconstruct_type;
v35 = vc;
v36 = vpn;
v37 = ((u(*)())v34)(v35, v36);
- *(u*)(vn + 16) = v37;
+ *(u*)(vn + 16UL) = v37;
goto b12;
b21: v38 = (u)zdie;
v39 = (u)"invalid func_type";
v40 = ((u(*)())v38)(v39);
+ v40;
goto b12;
-b10: v20 = 1;
+b10: v20 = 1UL;
goto b11;
}
u zreconstruct_goto(u vc, u vpn) {
@@ -29089,17 +31938,18 @@ u zreconstruct_goto(u vc, u vpn) {
u v19 = 0;
u v20 = 0;
v4 = (u)zassert;
- v5 = (u)(*(u*)vpn == 22);
+ v5 = (u)(*(u*)(vpn + 0UL) == 22UL);
v6 = (u)"goto_stmt";
v7 = ((u(*)())v4)(v5, v6);
+ v7;
v8 = (u)zreconstruct_ident;
v9 = vc;
- v10 = *(u*)(*(u*)(vpn + 16) + 8);
+ v10 = *(u*)(*(u*)(vpn + 16UL) + 8UL);
v11 = ((u(*)())v8)(v9, v10);
va = v11;
v12 = (u)zmknode1;
v13 = vc;
- v14 = 32;
+ v14 = 32UL;
v15 = va;
v16 = ((u(*)())v12)(v13, v14, v15);
vn = v16;
@@ -29107,6 +31957,7 @@ u zreconstruct_goto(u vc, u vpn) {
v18 = vn;
v19 = vpn;
v20 = ((u(*)())v17)(v18, v19);
+ v20;
return vn;
}
u zreconstruct_hex(u vc, u vpn) {
@@ -29135,33 +31986,37 @@ u zreconstruct_hex(u vc, u vpn) {
u v24 = 0;
u v25 = 0;
v5 = (u)zassert;
- v6 = (u)(*(u*)vpn == 65);
+ v6 = (u)(*(u*)(vpn + 0UL) == 65UL);
v7 = (u)"hex";
v8 = ((u(*)())v5)(v6, v7);
+ v8;
v9 = (u)zhex2int;
- v10 = *(u*)(vpn + 24) + 2;
- v11 = *(u*)(vpn + 32) - 2;
+ v10 = *(u*)(vpn + 24UL) + 2UL * 1UL;
+ v11 = *(u*)(vpn + 32UL) - 2UL;
v12 = (u)&vok;
v13 = ((u(*)())v9)(v10, v11, v12);
vx = v13;
if (!vok) goto b7;
- v14 = 0;
-b8: if (!v14) goto b3;
+ v14 = 0UL;
+b8: if (!v14) goto b5;
v15 = (u)zdie;
v16 = (u)"invalid hex";
v17 = ((u(*)())v15)(v16);
+ v17;
b3: v18 = (u)zmknode0;
v19 = vc;
- v20 = 1;
+ v20 = 1UL;
v21 = ((u(*)())v18)(v19, v20);
vn = v21;
v22 = (u)zcopypos;
v23 = vn;
v24 = vpn;
v25 = ((u(*)())v22)(v23, v24);
- *(u*)(vn + 48) = vx;
+ v25;
+ *(u*)(vn + 48UL) = vx;
return vn;
-b7: v14 = 1;
+b5: goto b3;
+b7: v14 = 1UL;
goto b8;
}
u zreconstruct_ident(u vc, u vpn) {
@@ -29176,14 +32031,15 @@ u zreconstruct_ident(u vc, u vpn) {
u v10 = 0;
u v11 = 0;
v2 = (u)zassert;
- v3 = (u)(*(u*)vpn == 88);
+ v3 = (u)(*(u*)(vpn + 0UL) == 88UL);
v4 = (u)"ident";
v5 = ((u(*)())v2)(v3, v4);
+ v5;
v6 = (u)zreconstruct_intern;
v7 = vc;
v8 = vpn;
- v9 = *(u*)(vpn + 24);
- v10 = *(u*)(vpn + 32);
+ v9 = *(u*)(vpn + 24UL);
+ v10 = *(u*)(vpn + 32UL);
v11 = ((u(*)())v6)(v7, v8, v9, v10);
return v11;
}
@@ -29279,25 +32135,26 @@ u zreconstruct_if(u vc, u vpn) {
u v90 = 0;
u v91 = 0;
v7 = (u)zassert;
- v8 = (u)(*(u*)vpn == 15);
+ v8 = (u)(*(u*)(vpn + 0UL) == 15UL);
v9 = (u)"if_stmt";
v10 = ((u(*)())v7)(v8, v9);
+ v10;
v11 = (u)zreconstruct_expr;
v12 = vc;
- v13 = *(u*)(*(u*)(vpn + 16) + 8);
+ v13 = *(u*)(*(u*)(vpn + 16UL) + 8UL);
v14 = ((u(*)())v11)(v12, v13);
va = v14;
v15 = (u)zreconstruct_compound;
v16 = vc;
- v17 = *(u*)(*(u*)(*(u*)(vpn + 16) + 8) + 8);
+ v17 = *(u*)(*(u*)(*(u*)(vpn + 16UL) + 8UL) + 8UL);
v18 = ((u(*)())v15)(v16, v17);
vb = v18;
v19 = (u)zmknode1;
v20 = vc;
- v21 = 21;
+ v21 = 21UL;
v23 = (u)zmknode;
v24 = vc;
- v25 = 22;
+ v25 = 22UL;
v26 = va;
v27 = vb;
v28 = ((u(*)())v23)(v24, v25, v26, v27);
@@ -29308,33 +32165,35 @@ u zreconstruct_if(u vc, u vpn) {
v31 = vret;
v32 = vpn;
v33 = ((u(*)())v30)(v31, v32);
+ v33;
v34 = (u)zcopypos;
- v35 = *(u*)(vret + 8);
+ v35 = *(u*)(vret + 8UL);
v36 = vpn;
v37 = ((u(*)())v34)(v35, v36);
- vlink = vret + 16;
- vpn = *(u*)(*(u*)(*(u*)(*(u*)(vpn + 16) + 8) + 8) + 8);
+ v37;
+ vlink = vret + 16UL;
+ vpn = *(u*)(*(u*)(*(u*)(*(u*)(vpn + 16UL) + 8UL) + 8UL) + 8UL);
b8: if (!vpn) goto b14;
- v38 = 0;
-b15: if (!v38) goto b10;
+ v38 = 0UL;
+b15: if (!v38) goto b12;
b9: return vret;
-b10: if (*(u*)vpn != 13) goto b18;
+b12: if (*(u*)(vpn + 0UL) != 13UL) goto b18;
v39 = (u)zreconstruct_expr;
v40 = vc;
- v41 = *(u*)(*(u*)(*(u*)(vpn + 16) + 8) + 8);
+ v41 = *(u*)(*(u*)(*(u*)(vpn + 16UL) + 8UL) + 8UL);
v42 = ((u(*)())v39)(v40, v41);
va = v42;
v43 = (u)zreconstruct_compound;
v44 = vc;
- v45 = *(u*)(*(u*)(*(u*)(*(u*)(vpn + 16) + 8) + 8) + 8);
+ v45 = *(u*)(*(u*)(*(u*)(*(u*)(vpn + 16UL) + 8UL) + 8UL) + 8UL);
v46 = ((u(*)())v43)(v44, v45);
vb = v46;
v47 = (u)zmknode1;
v48 = vc;
- v49 = 21;
+ v49 = 21UL;
v51 = (u)zmknode;
v52 = vc;
- v53 = 22;
+ v53 = 22UL;
v54 = va;
v55 = vb;
v56 = ((u(*)())v51)(v52, v53, v54, v55);
@@ -29345,27 +32204,29 @@ b10: if (*(u*)vpn != 13) goto b18;
v59 = vn;
v60 = vpn;
v61 = ((u(*)())v58)(v59, v60);
+ v61;
v62 = (u)zcopypos;
- v63 = *(u*)(vn + 8);
+ v63 = *(u*)(vn + 8UL);
v64 = vpn;
v65 = ((u(*)())v62)(v63, v64);
+ v65;
*(u*)vlink = vn;
- vlink = vn + 16;
-b16: vpn = *(u*)(vpn + 8);
+ vlink = vn + 16UL;
+b16: vpn = *(u*)(vpn + 8UL);
goto b8;
-b18: if (*(u*)vpn != 14) goto b26;
- va = 0;
+b18: if (*(u*)(vpn + 0UL) != 14UL) goto b26;
+ va = 0UL;
v66 = (u)zreconstruct_compound;
v67 = vc;
- v68 = *(u*)(*(u*)(vpn + 16) + 8);
+ v68 = *(u*)(*(u*)(vpn + 16UL) + 8UL);
v69 = ((u(*)())v66)(v67, v68);
vb = v69;
v70 = (u)zmknode1;
v71 = vc;
- v72 = 21;
+ v72 = 21UL;
v74 = (u)zmknode;
v75 = vc;
- v76 = 22;
+ v76 = 22UL;
v77 = va;
v78 = vb;
v79 = ((u(*)())v74)(v75, v76, v77, v78);
@@ -29376,18 +32237,21 @@ b18: if (*(u*)vpn != 14) goto b26;
v82 = vn;
v83 = vpn;
v84 = ((u(*)())v81)(v82, v83);
+ v84;
v85 = (u)zcopypos;
- v86 = *(u*)(vn + 8);
+ v86 = *(u*)(vn + 8UL);
v87 = vpn;
v88 = ((u(*)())v85)(v86, v87);
+ v88;
*(u*)vlink = vn;
- vlink = vn + 16;
+ vlink = vn + 16UL;
goto b9;
b26: v89 = (u)zdie;
v90 = (u)"invalid if_stmt";
v91 = ((u(*)())v89)(v90);
+ v91;
goto b16;
-b14: v38 = 1;
+b14: v38 = 1UL;
goto b15;
}
u zreconstruct_intern(u vc, u vpn, u vs, u vlen) {
@@ -29407,24 +32271,25 @@ u zreconstruct_intern(u vc, u vpn, u vs, u vlen) {
u v17 = 0;
v6 = (u)zmknode0;
v7 = vc;
- v8 = 0;
+ v8 = 0UL;
v9 = ((u(*)())v6)(v7, v8);
vn = v9;
v10 = (u)zcopypos;
v11 = vn;
v12 = vpn;
v13 = ((u(*)())v10)(v11, v12);
- vi = 0;
+ v13;
+ vi = 0UL;
v14 = (u)zalloc;
- v15 = *(u*)vc;
- v16 = vlen + 1;
+ v15 = *(u*)(vc + 0UL);
+ v16 = vlen + 1UL;
v17 = ((u(*)())v14)(v15, v16);
- *(u*)(vn + 56) = v17;
-b4: if (vi != vlen) goto b6;
- *(b*)(*(u*)(vn + 56) + vi) = 0;
+ *(u*)(vn + 56UL) = v17;
+b4: if (vi != vlen) goto b8;
+ *(b*)(*(u*)(vn + 56UL) + vi * 1UL) = 0UL;
return vn;
-b6: *(b*)(*(u*)(vn + 56) + vi) = (u)*(b*)(vs + vi);
- vi = vi + 1;
+b8: *(b*)(*(u*)(vn + 56UL) + vi * 1UL) = (u)*(b*)(vs + vi * 1UL);
+ vi = vi + 1UL;
goto b4;
}
u zreconstruct_label(u vc, u vpn) {
@@ -29448,17 +32313,18 @@ u zreconstruct_label(u vc, u vpn) {
u v19 = 0;
u v20 = 0;
v4 = (u)zassert;
- v5 = (u)(*(u*)vpn == 21);
+ v5 = (u)(*(u*)(vpn + 0UL) == 21UL);
v6 = (u)"label_stmt";
v7 = ((u(*)())v4)(v5, v6);
+ v7;
v8 = (u)zreconstruct_ident;
v9 = vc;
- v10 = *(u*)(vpn + 16);
+ v10 = *(u*)(vpn + 16UL);
v11 = ((u(*)())v8)(v9, v10);
va = v11;
v12 = (u)zmknode1;
v13 = vc;
- v14 = 31;
+ v14 = 31UL;
v15 = va;
v16 = ((u(*)())v12)(v13, v14, v15);
vn = v16;
@@ -29466,6 +32332,7 @@ u zreconstruct_label(u vc, u vpn) {
v18 = vn;
v19 = vpn;
v20 = ((u(*)())v17)(v18, v19);
+ v20;
return vn;
}
u zreconstruct_loop(u vc, u vpn) {
@@ -29489,17 +32356,18 @@ u zreconstruct_loop(u vc, u vpn) {
u v19 = 0;
u v20 = 0;
v4 = (u)zassert;
- v5 = (u)(*(u*)vpn == 16);
+ v5 = (u)(*(u*)(vpn + 0UL) == 16UL);
v6 = (u)"loop_stmt";
v7 = ((u(*)())v4)(v5, v6);
+ v7;
v8 = (u)zreconstruct_compound;
v9 = vc;
- v10 = *(u*)(*(u*)(vpn + 16) + 8);
+ v10 = *(u*)(*(u*)(vpn + 16UL) + 8UL);
v11 = ((u(*)())v8)(v9, v10);
va = v11;
v12 = (u)zmknode1;
v13 = vc;
- v14 = 26;
+ v14 = 26UL;
v15 = va;
v16 = ((u(*)())v12)(v13, v14, v15);
vn = v16;
@@ -29507,6 +32375,7 @@ u zreconstruct_loop(u vc, u vpn) {
v18 = vn;
v19 = vpn;
v20 = ((u(*)())v17)(v18, v19);
+ v20;
return vn;
}
u zreconstruct_member_decl(u vc, u vpn) {
@@ -29536,22 +32405,23 @@ u zreconstruct_member_decl(u vc, u vpn) {
u v25 = 0;
u v26 = 0;
v5 = (u)zassert;
- v6 = (u)(*(u*)vpn == 3);
+ v6 = (u)(*(u*)(vpn + 0UL) == 3UL);
v7 = (u)"member_decl";
v8 = ((u(*)())v5)(v6, v7);
+ v8;
v9 = (u)zreconstruct_ident;
v10 = vc;
- v11 = *(u*)(vpn + 16);
+ v11 = *(u*)(vpn + 16UL);
v12 = ((u(*)())v9)(v10, v11);
va = v12;
v13 = (u)zreconstruct_type;
v14 = vc;
- v15 = *(u*)(*(u*)(vpn + 16) + 8);
+ v15 = *(u*)(*(u*)(vpn + 16UL) + 8UL);
v16 = ((u(*)())v13)(v14, v15);
vb = v16;
v17 = (u)zmknode;
v18 = vc;
- v19 = 19;
+ v19 = 19UL;
v20 = va;
v21 = vb;
v22 = ((u(*)())v17)(v18, v19, v20, v21);
@@ -29560,6 +32430,7 @@ u zreconstruct_member_decl(u vc, u vpn) {
v24 = vn;
v25 = vpn;
v26 = ((u(*)())v23)(v24, v25);
+ v26;
return vn;
}
u zreconstruct_member_list(u vc, u vpn) {
@@ -29581,20 +32452,20 @@ u zreconstruct_member_list(u vc, u vpn) {
u v17 = 0;
u v18 = 0;
u v19 = 0;
- vret = 0;
+ vret = 0UL;
vlink = (u)&vret;
b1: if (!vpn) goto b7;
- v6 = 0;
-b8: if (!v6) goto b3;
+ v6 = 0UL;
+b8: if (!v6) goto b5;
return vret;
-b3: v7 = (u)zreconstruct_member_decl;
+b5: v7 = (u)zreconstruct_member_decl;
v8 = vc;
v9 = vpn;
v10 = ((u(*)())v7)(v8, v9);
va = v10;
v11 = (u)zmknode1;
v12 = vc;
- v13 = 20;
+ v13 = 20UL;
v14 = va;
v15 = ((u(*)())v11)(v12, v13, v14);
vn = v15;
@@ -29602,11 +32473,12 @@ b3: v7 = (u)zreconstruct_member_decl;
v17 = vn;
v18 = vpn;
v19 = ((u(*)())v16)(v17, v18);
+ v19;
*(u*)vlink = vn;
- vlink = vn + 16;
- vpn = *(u*)(vpn + 8);
+ vlink = vn + 16UL;
+ vpn = *(u*)(vpn + 8UL);
goto b1;
-b7: v6 = 1;
+b7: v6 = 1UL;
goto b8;
}
u zreconstruct_mul(u vc, u vpn) {
@@ -29641,25 +32513,26 @@ u zreconstruct_mul(u vc, u vpn) {
u v30 = 0;
u v31 = 0;
v6 = (u)zassert;
- v7 = (u)(*(u*)vpn == 47);
+ v7 = (u)(*(u*)(vpn + 0UL) == 47UL);
v8 = (u)"mul_expr";
v9 = ((u(*)())v6)(v7, v8);
+ v9;
v10 = (u)zreconstruct_shift;
v11 = vc;
- v12 = *(u*)(vpn + 16);
+ v12 = *(u*)(vpn + 16UL);
v13 = ((u(*)())v10)(v11, v12);
vret = v13;
vlink = (u)&vret;
- vpn = *(u*)(*(u*)(vpn + 16) + 8);
+ vpn = *(u*)(*(u*)(vpn + 16UL) + 8UL);
b3: if (!vpn) goto b9;
- v14 = 0;
-b10: if (!v14) goto b5;
+ v14 = 0UL;
+b10: if (!v14) goto b7;
return vret;
-b5: if (*(u*)vpn != 43) goto b13;
- vkind = 47;
+b7: if (*(u*)(vpn + 0UL) != 43UL) goto b13;
+ vkind = 47UL;
b11: v18 = (u)zreconstruct_shift;
v19 = vc;
- v20 = *(u*)(vpn + 8);
+ v20 = *(u*)(vpn + 8UL);
v21 = ((u(*)())v18)(v19, v20);
vn = v21;
v22 = (u)zmknode;
@@ -29673,22 +32546,24 @@ b11: v18 = (u)zreconstruct_shift;
v29 = *(u*)vlink;
v30 = vpn;
v31 = ((u(*)())v28)(v29, v30);
- vpn = *(u*)(*(u*)(vpn + 8) + 8);
+ v31;
+ vpn = *(u*)(*(u*)(vpn + 8UL) + 8UL);
goto b3;
-b13: if (*(u*)vpn != 44) goto b15;
- vkind = 59;
+b13: if (*(u*)(vpn + 0UL) != 44UL) goto b15;
+ vkind = 59UL;
goto b11;
-b15: if (*(u*)vpn != 45) goto b17;
- vkind = 60;
+b15: if (*(u*)(vpn + 0UL) != 45UL) goto b17;
+ vkind = 60UL;
goto b11;
-b17: if (*(u*)vpn != 46) goto b19;
- vkind = 53;
+b17: if (*(u*)(vpn + 0UL) != 46UL) goto b19;
+ vkind = 53UL;
goto b11;
b19: v15 = (u)zdie;
v16 = (u)"invalid mulop";
v17 = ((u(*)())v15)(v16);
+ v17;
goto b11;
-b9: v14 = 1;
+b9: v14 = 1UL;
goto b10;
}
u zreconstruct_nil(u vc, u vpn) {
@@ -29706,18 +32581,20 @@ u zreconstruct_nil(u vc, u vpn) {
u v13 = 0;
u v14 = 0;
v3 = (u)zassert;
- v4 = (u)(*(u*)vpn == 87);
+ v4 = (u)(*(u*)(vpn + 0UL) == 87UL);
v5 = (u)"nil";
v6 = ((u(*)())v3)(v4, v5);
+ v6;
v7 = (u)zmknode0;
v8 = vc;
- v9 = 4;
+ v9 = 4UL;
v10 = ((u(*)())v7)(v8, v9);
vn = v10;
v11 = (u)zcopypos;
v12 = vn;
v13 = vpn;
v14 = ((u(*)())v11)(v12, v13);
+ v14;
return vn;
}
u zreconstruct_post(u vc, u vpn) {
@@ -29793,29 +32670,30 @@ u zreconstruct_post(u vc, u vpn) {
u v71 = 0;
u v72 = 0;
v5 = (u)zassert;
- v6 = (u)(*(u*)vpn == 62);
+ v6 = (u)(*(u*)(vpn + 0UL) == 62UL);
v7 = (u)"post_expr";
v8 = ((u(*)())v5)(v6, v7);
+ v8;
v9 = (u)zreconstruct_primary;
v10 = vc;
- v11 = *(u*)(vpn + 16);
+ v11 = *(u*)(vpn + 16UL);
v12 = ((u(*)())v9)(v10, v11);
vret = v12;
- vpn = *(u*)(*(u*)(vpn + 16) + 8);
+ vpn = *(u*)(*(u*)(vpn + 16UL) + 8UL);
b3: if (!vpn) goto b9;
- v13 = 0;
-b10: if (!v13) goto b5;
+ v13 = 0UL;
+b10: if (!v13) goto b7;
return vret;
-b5: vtag = *(u*)vpn;
- if (vtag != 58) goto b13;
+b7: vtag = *(u*)(vpn + 0UL);
+ if (vtag != 58UL) goto b13;
v14 = (u)zreconstruct_expr;
v15 = vc;
- v16 = *(u*)(vpn + 16);
+ v16 = *(u*)(vpn + 16UL);
v17 = ((u(*)())v14)(v15, v16);
vn = v17;
v18 = (u)zmknode;
v19 = vc;
- v20 = 38;
+ v20 = 38UL;
v21 = vret;
v22 = vn;
v23 = ((u(*)())v18)(v19, v20, v21, v22);
@@ -29824,17 +32702,18 @@ b5: vtag = *(u*)vpn;
v25 = vret;
v26 = vpn;
v27 = ((u(*)())v24)(v25, v26);
-b11: vpn = *(u*)(vpn + 8);
+ v27;
+b11: vpn = *(u*)(vpn + 8UL);
goto b3;
-b13: if (vtag != 59) goto b18;
+b13: if (vtag != 59UL) goto b18;
v28 = (u)zreconstruct_args;
v29 = vc;
- v30 = *(u*)(vpn + 16);
+ v30 = *(u*)(vpn + 16UL);
v31 = ((u(*)())v28)(v29, v30);
vn = v31;
v32 = (u)zmknode;
v33 = vc;
- v34 = 7;
+ v34 = 7UL;
v35 = vret;
v36 = vn;
v37 = ((u(*)())v32)(v33, v34, v35, v36);
@@ -29843,16 +32722,17 @@ b13: if (vtag != 59) goto b18;
v39 = vret;
v40 = vpn;
v41 = ((u(*)())v38)(v39, v40);
+ v41;
goto b11;
-b18: if (vtag != 60) goto b23;
+b18: if (vtag != 60UL) goto b23;
v42 = (u)zreconstruct_ident;
v43 = vc;
- v44 = *(u*)(vpn + 16);
+ v44 = *(u*)(vpn + 16UL);
v45 = ((u(*)())v42)(v43, v44);
vn = v45;
v46 = (u)zmknode;
v47 = vc;
- v48 = 9;
+ v48 = 9UL;
v49 = vret;
v50 = vn;
v51 = ((u(*)())v46)(v47, v48, v49, v50);
@@ -29861,16 +32741,17 @@ b18: if (vtag != 60) goto b23;
v53 = vret;
v54 = vpn;
v55 = ((u(*)())v52)(v53, v54);
+ v55;
goto b11;
-b23: if (vtag != 61) goto b28;
+b23: if (vtag != 61UL) goto b28;
v56 = (u)zreconstruct_type;
v57 = vc;
- v58 = *(u*)(vpn + 16);
+ v58 = *(u*)(vpn + 16UL);
v59 = ((u(*)())v56)(v57, v58);
vn = v59;
v60 = (u)zmknode;
v61 = vc;
- v62 = 37;
+ v62 = 37UL;
v63 = vret;
v64 = vn;
v65 = ((u(*)())v60)(v61, v62, v63, v64);
@@ -29879,12 +32760,14 @@ b23: if (vtag != 61) goto b28;
v67 = vret;
v68 = vpn;
v69 = ((u(*)())v66)(v67, v68);
+ v69;
goto b11;
b28: v70 = (u)zdie;
v71 = (u)"invalid post_expr";
v72 = ((u(*)())v70)(v71);
+ v72;
goto b11;
-b9: v13 = 1;
+b9: v13 = 1UL;
goto b10;
}
u zreconstruct_primary(u vc, u vpn) {
@@ -29928,53 +32811,54 @@ u zreconstruct_primary(u vc, u vpn) {
u v39 = 0;
u v40 = 0;
v2 = (u)zassert;
- v3 = (u)(*(u*)vpn == 63);
+ v3 = (u)(*(u*)(vpn + 0UL) == 63UL);
v4 = (u)"primary";
v5 = ((u(*)())v2)(v3, v4);
- vpn = *(u*)(vpn + 16);
- if (*(u*)vpn != 88) goto b4;
+ v5;
+ vpn = *(u*)(vpn + 16UL);
+ if (*(u*)(vpn + 0UL) != 88UL) goto b4;
v6 = (u)zreconstruct_ident;
v7 = vc;
v8 = vpn;
v9 = ((u(*)())v6)(v7, v8);
return v9;
-b4: if (*(u*)vpn != 65) goto b7;
+b4: if (*(u*)(vpn + 0UL) != 65UL) goto b7;
v10 = (u)zreconstruct_hex;
v11 = vc;
v12 = vpn;
v13 = ((u(*)())v10)(v11, v12);
return v13;
-b7: if (*(u*)vpn != 66) goto b10;
+b7: if (*(u*)(vpn + 0UL) != 66UL) goto b10;
v14 = (u)zreconstruct_dec;
v15 = vc;
v16 = vpn;
v17 = ((u(*)())v14)(v15, v16);
return v17;
-b10: if (*(u*)vpn != 67) goto b13;
+b10: if (*(u*)(vpn + 0UL) != 67UL) goto b13;
v18 = (u)zreconstruct_str;
v19 = vc;
v20 = vpn;
v21 = ((u(*)())v18)(v19, v20);
return v21;
-b13: if (*(u*)vpn != 68) goto b16;
+b13: if (*(u*)(vpn + 0UL) != 68UL) goto b16;
v22 = (u)zreconstruct_char;
v23 = vc;
v24 = vpn;
v25 = ((u(*)())v22)(v23, v24);
return v25;
-b16: if (*(u*)vpn != 64) goto b19;
+b16: if (*(u*)(vpn + 0UL) != 64UL) goto b19;
v26 = (u)zreconstruct_sizeof;
v27 = vc;
v28 = vpn;
v29 = ((u(*)())v26)(v27, v28);
return v29;
-b19: if (*(u*)vpn != 87) goto b22;
+b19: if (*(u*)(vpn + 0UL) != 87UL) goto b22;
v30 = (u)zreconstruct_nil;
v31 = vc;
v32 = vpn;
v33 = ((u(*)())v30)(v31, v32);
return v33;
-b22: if (*(u*)vpn != 27) goto b25;
+b22: if (*(u*)(vpn + 0UL) != 27UL) goto b25;
v34 = (u)zreconstruct_expr;
v35 = vc;
v36 = vpn;
@@ -29983,7 +32867,8 @@ b22: if (*(u*)vpn != 27) goto b25;
b25: v38 = (u)zdie;
v39 = (u)"invalid primary";
v40 = ((u(*)())v38)(v39);
- return 0;
+ v40;
+ return 0UL;
}
u zreconstruct_return(u vc, u vpn) {
u va = 0;
@@ -30006,19 +32891,20 @@ u zreconstruct_return(u vc, u vpn) {
u v19 = 0;
u v20 = 0;
v4 = (u)zassert;
- v5 = (u)(*(u*)vpn == 19);
+ v5 = (u)(*(u*)(vpn + 0UL) == 19UL);
v6 = (u)"return_stmt";
v7 = ((u(*)())v4)(v5, v6);
- va = 0;
- if (!*(u*)(*(u*)(vpn + 16) + 8)) goto b2;
+ v7;
+ va = 0UL;
+ if (!*(u*)(*(u*)(vpn + 16UL) + 8UL)) goto b4;
v8 = (u)zreconstruct_expr;
v9 = vc;
- v10 = *(u*)(*(u*)(vpn + 16) + 8);
+ v10 = *(u*)(*(u*)(vpn + 16UL) + 8UL);
v11 = ((u(*)())v8)(v9, v10);
va = v11;
b2: v12 = (u)zmknode1;
v13 = vc;
- v14 = 29;
+ v14 = 29UL;
v15 = va;
v16 = ((u(*)())v12)(v13, v14, v15);
vn = v16;
@@ -30026,7 +32912,9 @@ b2: v12 = (u)zmknode1;
v18 = vn;
v19 = vpn;
v20 = ((u(*)())v17)(v18, v19);
+ v20;
return vn;
+b4: goto b2;
}
u zreconstruct_shift(u vc, u vpn) {
u vret = 0;
@@ -30060,25 +32948,26 @@ u zreconstruct_shift(u vc, u vpn) {
u v30 = 0;
u v31 = 0;
v6 = (u)zassert;
- v7 = (u)(*(u*)vpn == 50);
+ v7 = (u)(*(u*)(vpn + 0UL) == 50UL);
v8 = (u)"shift_expr";
v9 = ((u(*)())v6)(v7, v8);
+ v9;
v10 = (u)zreconstruct_unary;
v11 = vc;
- v12 = *(u*)(vpn + 16);
+ v12 = *(u*)(vpn + 16UL);
v13 = ((u(*)())v10)(v11, v12);
vret = v13;
vlink = (u)&vret;
- vpn = *(u*)(*(u*)(vpn + 16) + 8);
+ vpn = *(u*)(*(u*)(vpn + 16UL) + 8UL);
b3: if (!vpn) goto b9;
- v14 = 0;
-b10: if (!v14) goto b5;
+ v14 = 0UL;
+b10: if (!v14) goto b7;
return vret;
-b5: if (*(u*)vpn != 48) goto b13;
- vkind = 48;
+b7: if (*(u*)(vpn + 0UL) != 48UL) goto b13;
+ vkind = 48UL;
b11: v18 = (u)zreconstruct_unary;
v19 = vc;
- v20 = *(u*)(vpn + 8);
+ v20 = *(u*)(vpn + 8UL);
v21 = ((u(*)())v18)(v19, v20);
vn = v21;
v22 = (u)zmknode;
@@ -30092,16 +32981,18 @@ b11: v18 = (u)zreconstruct_unary;
v29 = *(u*)vlink;
v30 = vpn;
v31 = ((u(*)())v28)(v29, v30);
- vpn = *(u*)(*(u*)(vpn + 8) + 8);
+ v31;
+ vpn = *(u*)(*(u*)(vpn + 8UL) + 8UL);
goto b3;
-b13: if (*(u*)vpn != 49) goto b15;
- vkind = 49;
+b13: if (*(u*)(vpn + 0UL) != 49UL) goto b15;
+ vkind = 49UL;
goto b11;
b15: v15 = (u)zdie;
v16 = (u)"invalid shift";
v17 = ((u(*)())v15)(v16);
+ v17;
goto b11;
-b9: v14 = 1;
+b9: v14 = 1UL;
goto b10;
}
u zreconstruct_sizeof(u vc, u vpn) {
@@ -30125,17 +33016,18 @@ u zreconstruct_sizeof(u vc, u vpn) {
u v19 = 0;
u v20 = 0;
v4 = (u)zassert;
- v5 = (u)(*(u*)vpn == 64);
+ v5 = (u)(*(u*)(vpn + 0UL) == 64UL);
v6 = (u)"sizeof_expr";
v7 = ((u(*)())v4)(v5, v6);
+ v7;
v8 = (u)zreconstruct_expr;
v9 = vc;
- v10 = *(u*)(*(u*)(vpn + 16) + 8);
+ v10 = *(u*)(*(u*)(vpn + 16UL) + 8UL);
v11 = ((u(*)())v8)(v9, v10);
va = v11;
v12 = (u)zmknode1;
v13 = vc;
- v14 = 34;
+ v14 = 34UL;
v15 = va;
v16 = ((u(*)())v12)(v13, v14, v15);
vn = v16;
@@ -30143,6 +33035,7 @@ u zreconstruct_sizeof(u vc, u vpn) {
v18 = vn;
v19 = vpn;
v20 = ((u(*)())v17)(v18, v19);
+ v20;
return vn;
}
u zreconstruct_stmt(u vc, u vpn) {
@@ -30202,77 +33095,78 @@ u zreconstruct_stmt(u vc, u vpn) {
u v55 = 0;
u v56 = 0;
v2 = (u)zassert;
- v3 = (u)(*(u*)vpn == 12);
+ v3 = (u)(*(u*)(vpn + 0UL) == 12UL);
v4 = (u)"stmt";
v5 = ((u(*)())v2)(v3, v4);
- vpn = *(u*)(vpn + 16);
- if (*(u*)vpn != 15) goto b4;
+ v5;
+ vpn = *(u*)(vpn + 16UL);
+ if (*(u*)(vpn + 0UL) != 15UL) goto b4;
v6 = (u)zreconstruct_if;
v7 = vc;
v8 = vpn;
v9 = ((u(*)())v6)(v7, v8);
return v9;
-b4: if (*(u*)vpn != 16) goto b7;
+b4: if (*(u*)(vpn + 0UL) != 16UL) goto b7;
v10 = (u)zreconstruct_loop;
v11 = vc;
v12 = vpn;
v13 = ((u(*)())v10)(v11, v12);
return v13;
-b7: if (*(u*)vpn != 17) goto b10;
+b7: if (*(u*)(vpn + 0UL) != 17UL) goto b10;
v14 = (u)zreconstruct_break;
v15 = vc;
v16 = vpn;
v17 = ((u(*)())v14)(v15, v16);
return v17;
-b10: if (*(u*)vpn != 18) goto b13;
+b10: if (*(u*)(vpn + 0UL) != 18UL) goto b13;
v18 = (u)zreconstruct_continue;
v19 = vc;
v20 = vpn;
v21 = ((u(*)())v18)(v19, v20);
return v21;
-b13: if (*(u*)vpn != 19) goto b16;
+b13: if (*(u*)(vpn + 0UL) != 19UL) goto b16;
v22 = (u)zreconstruct_return;
v23 = vc;
v24 = vpn;
v25 = ((u(*)())v22)(v23, v24);
return v25;
-b16: if (*(u*)vpn != 20) goto b19;
+b16: if (*(u*)(vpn + 0UL) != 20UL) goto b19;
v26 = (u)zreconstruct_var;
v27 = vc;
v28 = vpn;
v29 = ((u(*)())v26)(v27, v28);
return v29;
-b19: if (*(u*)vpn != 21) goto b22;
+b19: if (*(u*)(vpn + 0UL) != 21UL) goto b22;
v30 = (u)zreconstruct_label;
v31 = vc;
v32 = vpn;
v33 = ((u(*)())v30)(v31, v32);
return v33;
-b22: if (*(u*)vpn != 22) goto b25;
+b22: if (*(u*)(vpn + 0UL) != 22UL) goto b25;
v34 = (u)zreconstruct_goto;
v35 = vc;
v36 = vpn;
v37 = ((u(*)())v34)(v35, v36);
return v37;
-b25: if (*(u*)vpn != 23) goto b28;
+b25: if (*(u*)(vpn + 0UL) != 23UL) goto b28;
v38 = (u)zreconstruct_assign;
v39 = vc;
v40 = vpn;
v41 = ((u(*)())v38)(v39, v40);
return v41;
-b28: if (*(u*)vpn != 24) goto b31;
+b28: if (*(u*)(vpn + 0UL) != 24UL) goto b31;
v42 = (u)zreconstruct_expr_stmt;
v43 = vc;
v44 = vpn;
v45 = ((u(*)())v42)(v43, v44);
return v45;
-b31: if (*(u*)vpn != 25) goto b34;
+b31: if (*(u*)(vpn + 0UL) != 25UL) goto b34;
v46 = (u)zreconstruct_empty;
v47 = vc;
v48 = vpn;
v49 = ((u(*)())v46)(v47, v48);
return v49;
-b34: if (*(u*)vpn != 26) goto b37;
+b34: if (*(u*)(vpn + 0UL) != 26UL) goto b37;
v50 = (u)zreconstruct_compound;
v51 = vc;
v52 = vpn;
@@ -30281,7 +33175,8 @@ b34: if (*(u*)vpn != 26) goto b37;
b37: v54 = (u)zdie;
v55 = (u)"invalid stmt";
v56 = ((u(*)())v54)(v55);
- return 0;
+ v56;
+ return 0UL;
}
u zreconstruct_str(u vc, u vpn) {
u vi = 0;
@@ -30318,47 +33213,51 @@ u zreconstruct_str(u vc, u vpn) {
u v33 = 0;
u v34 = 0;
v9 = (u)zassert;
- v10 = (u)(*(u*)vpn == 67);
+ v10 = (u)(*(u*)(vpn + 0UL) == 67UL);
v11 = (u)"str";
v12 = ((u(*)())v9)(v10, v11);
+ v12;
v13 = (u)zalloc;
- v14 = *(u*)vc;
- v15 = *(u*)(vpn + 32);
+ v14 = *(u*)(vc + 0UL);
+ v15 = *(u*)(vpn + 32UL);
v16 = ((u(*)())v13)(v14, v15);
vs = v16;
- vi = 1;
- vj = 0;
- vlen = *(u*)(vpn + 32) - 1;
-b3: if (vi != vlen) goto b5;
- *(b*)(vs + vj) = 0;
+ vi = 1UL;
+ vj = 0UL;
+ vlen = *(u*)(vpn + 32UL) - 1UL;
+b3: if (vi != vlen) goto b7;
+ *(b*)(vs + vj * 1UL) = 0UL;
v27 = (u)zmknode0;
v28 = vc;
- v29 = 3;
+ v29 = 3UL;
v30 = ((u(*)())v27)(v28, v29);
vn = v30;
v31 = (u)zcopypos;
v32 = vn;
v33 = vpn;
v34 = ((u(*)())v31)(v32, v33);
- *(u*)(vn + 56) = vs;
+ v34;
+ *(u*)(vn + 56UL) = vs;
return vn;
-b5: v17 = (u)zunescape;
- v18 = *(u*)(vpn + 24);
+b7: v17 = (u)zunescape;
+ v18 = *(u*)(vpn + 24UL);
v19 = (u)&vi;
v20 = vlen;
v21 = (u)&vok;
v22 = ((u(*)())v17)(v18, v19, v20, v21);
vch = v22;
if (!vok) goto b13;
- v23 = 0;
-b14: if (!v23) goto b9;
+ v23 = 0UL;
+b14: if (!v23) goto b11;
v24 = (u)zdie;
v25 = (u)"invalid escape";
v26 = ((u(*)())v24)(v25);
-b9: *(b*)(vs + vj) = vch;
- vj = vj + 1;
+ v26;
+b9: *(b*)(vs + vj * 1UL) = vch;
+ vj = vj + 1UL;
goto b3;
-b13: v23 = 1;
+b11: goto b9;
+b13: v23 = 1UL;
goto b14;
}
u zreconstruct_struct(u vc, u vpn) {
@@ -30388,22 +33287,23 @@ u zreconstruct_struct(u vc, u vpn) {
u v25 = 0;
u v26 = 0;
v5 = (u)zassert;
- v6 = (u)(*(u*)vpn == 4);
+ v6 = (u)(*(u*)(vpn + 0UL) == 4UL);
v7 = (u)"struct_def";
v8 = ((u(*)())v5)(v6, v7);
+ v8;
v9 = (u)zreconstruct_ident;
v10 = vc;
- v11 = *(u*)(*(u*)(vpn + 16) + 8);
+ v11 = *(u*)(*(u*)(vpn + 16UL) + 8UL);
v12 = ((u(*)())v9)(v10, v11);
va = v12;
v13 = (u)zreconstruct_member_list;
v14 = vc;
- v15 = *(u*)(*(u*)(*(u*)(vpn + 16) + 8) + 8);
+ v15 = *(u*)(*(u*)(*(u*)(vpn + 16UL) + 8UL) + 8UL);
v16 = ((u(*)())v13)(v14, v15);
vb = v16;
v17 = (u)zmknode;
v18 = vc;
- v19 = 17;
+ v19 = 17UL;
v20 = va;
v21 = vb;
v22 = ((u(*)())v17)(v18, v19, v20, v21);
@@ -30412,6 +33312,7 @@ u zreconstruct_struct(u vc, u vpn) {
v24 = vn;
v25 = vpn;
v26 = ((u(*)())v23)(v24, v25);
+ v26;
return vn;
}
u zreconstruct_type(u vc, u vpn) {
@@ -30467,47 +33368,48 @@ u zreconstruct_type(u vc, u vpn) {
u v51 = 0;
u v52 = 0;
v3 = (u)zassert;
- v4 = (u)(*(u*)vpn == 7);
+ v4 = (u)(*(u*)(vpn + 0UL) == 7UL);
v5 = (u)"type";
v6 = ((u(*)())v3)(v4, v5);
- vpn = *(u*)(vpn + 16);
- if (*(u*)vpn != 88) goto b4;
+ v6;
+ vpn = *(u*)(vpn + 16UL);
+ if (*(u*)(vpn + 0UL) != 88UL) goto b4;
v7 = (u)zreconstruct_ident;
v8 = vc;
v9 = vpn;
v10 = ((u(*)())v7)(v8, v9);
return v10;
-b4: if (*(u*)vpn != 82) goto b7;
+b4: if (*(u*)(vpn + 0UL) != 82UL) goto b7;
v11 = (u)zreconstruct_intern;
v12 = vc;
v13 = vpn;
v14 = (u)"byte";
- v15 = 4;
+ v15 = 4UL;
v16 = ((u(*)())v11)(v12, v13, v14, v15);
return v16;
-b7: if (*(u*)vpn != 83) goto b10;
+b7: if (*(u*)(vpn + 0UL) != 83UL) goto b10;
v17 = (u)zreconstruct_intern;
v18 = vc;
v19 = vpn;
v20 = (u)"int";
- v21 = 3;
+ v21 = 3UL;
v22 = ((u(*)())v17)(v18, v19, v20, v21);
return v22;
-b10: if (*(u*)vpn != 84) goto b13;
+b10: if (*(u*)(vpn + 0UL) != 84UL) goto b13;
v23 = (u)zreconstruct_intern;
v24 = vc;
v25 = vpn;
v26 = (u)"void";
- v27 = 4;
+ v27 = 4UL;
v28 = ((u(*)())v23)(v24, v25, v26, v27);
return v28;
-b13: if (*(u*)vpn != 8) goto b16;
+b13: if (*(u*)(vpn + 0UL) != 8UL) goto b16;
v29 = (u)zmknode1;
v30 = vc;
- v31 = 16;
+ v31 = 16UL;
v33 = (u)zreconstruct_type;
v34 = vc;
- v35 = *(u*)(vpn + 16);
+ v35 = *(u*)(vpn + 16UL);
v36 = ((u(*)())v33)(v34, v35);
v32 = v36;
v37 = ((u(*)())v29)(v30, v31, v32);
@@ -30516,14 +33418,15 @@ b13: if (*(u*)vpn != 8) goto b16;
v39 = vn;
v40 = vpn;
v41 = ((u(*)())v38)(v39, v40);
+ v41;
return vn;
-b16: if (*(u*)vpn != 85) goto b21;
+b16: if (*(u*)(vpn + 0UL) != 85UL) goto b21;
v42 = (u)zreconstruct_func_type;
v43 = vc;
- v44 = *(u*)(vpn + 8);
+ v44 = *(u*)(vpn + 8UL);
v45 = ((u(*)())v42)(v43, v44);
return v45;
-b21: if (*(u*)vpn != 7) goto b24;
+b21: if (*(u*)(vpn + 0UL) != 7UL) goto b24;
v46 = (u)zreconstruct_type;
v47 = vc;
v48 = vpn;
@@ -30532,7 +33435,8 @@ b21: if (*(u*)vpn != 7) goto b24;
b24: v50 = (u)zdie;
v51 = (u)"reconstruct_type: invalid type";
v52 = ((u(*)())v50)(v51);
- return 0;
+ v52;
+ return 0UL;
}
u zreconstruct_unary(u vc, u vpn) {
u vn = 0;
@@ -30560,14 +33464,15 @@ u zreconstruct_unary(u vc, u vpn) {
u v24 = 0;
u v25 = 0;
v7 = (u)zassert;
- v8 = (u)(*(u*)vpn == 57);
+ v8 = (u)(*(u*)(vpn + 0UL) == 57UL);
v9 = (u)"unary_expr";
v10 = ((u(*)())v7)(v8, v9);
+ v10;
vlink = (u)&vret;
- vpn = *(u*)(vpn + 16);
-b2: vtag = *(u*)vpn;
- if (vtag != 51) goto b6;
- vkind = 35;
+ vpn = *(u*)(vpn + 16UL);
+b2: vtag = *(u*)(vpn + 0UL);
+ if (vtag != 51UL) goto b6;
+ vkind = 35UL;
b4: v18 = (u)zmknode0;
v19 = vc;
v20 = vkind;
@@ -30577,26 +33482,27 @@ b4: v18 = (u)zmknode0;
v23 = vn;
v24 = vpn;
v25 = ((u(*)())v22)(v23, v24);
+ v25;
*(u*)vlink = vn;
- vlink = vn + 8;
- vpn = *(u*)(vpn + 8);
+ vlink = vn + 8UL;
+ vpn = *(u*)(vpn + 8UL);
goto b2;
-b6: if (vtag != 52) goto b8;
- vkind = 36;
+b6: if (vtag != 52UL) goto b8;
+ vkind = 36UL;
goto b4;
-b8: if (vtag != 53) goto b10;
- vkind = 57;
+b8: if (vtag != 53UL) goto b10;
+ vkind = 57UL;
goto b4;
-b10: if (vtag != 54) goto b12;
- vkind = 58;
+b10: if (vtag != 54UL) goto b12;
+ vkind = 58UL;
goto b4;
-b12: if (vtag != 55) goto b14;
- vkind = 56;
+b12: if (vtag != 55UL) goto b14;
+ vkind = 56UL;
goto b4;
-b14: if (vtag != 56) goto b16;
- vkind = 50;
+b14: if (vtag != 56UL) goto b16;
+ vkind = 50UL;
goto b4;
-b16: if (vtag != 62) goto b18;
+b16: if (vtag != 62UL) goto b18;
v11 = (u)zreconstruct_post;
v12 = vc;
v13 = vpn;
@@ -30606,6 +33512,7 @@ b16: if (vtag != 62) goto b18;
b18: v15 = (u)zdie;
v16 = (u)"invalid unary_expr";
v17 = ((u(*)())v15)(v16);
+ v17;
goto b4;
}
u zreconstruct_union(u vc, u vpn) {
@@ -30635,22 +33542,23 @@ u zreconstruct_union(u vc, u vpn) {
u v25 = 0;
u v26 = 0;
v5 = (u)zassert;
- v6 = (u)(*(u*)vpn == 5);
+ v6 = (u)(*(u*)(vpn + 0UL) == 5UL);
v7 = (u)"union_def";
v8 = ((u(*)())v5)(v6, v7);
+ v8;
v9 = (u)zreconstruct_ident;
v10 = vc;
- v11 = *(u*)(*(u*)(vpn + 16) + 8);
+ v11 = *(u*)(*(u*)(vpn + 16UL) + 8UL);
v12 = ((u(*)())v9)(v10, v11);
va = v12;
v13 = (u)zreconstruct_member_list;
v14 = vc;
- v15 = *(u*)(*(u*)(*(u*)(vpn + 16) + 8) + 8);
+ v15 = *(u*)(*(u*)(*(u*)(vpn + 16UL) + 8UL) + 8UL);
v16 = ((u(*)())v13)(v14, v15);
vb = v16;
v17 = (u)zmknode;
v18 = vc;
- v19 = 18;
+ v19 = 18UL;
v20 = va;
v21 = vb;
v22 = ((u(*)())v17)(v18, v19, v20, v21);
@@ -30659,6 +33567,7 @@ u zreconstruct_union(u vc, u vpn) {
v24 = vn;
v25 = vpn;
v26 = ((u(*)())v23)(v24, v25);
+ v26;
return vn;
}
u zreconstruct_var(u vc, u vpn) {
@@ -30688,22 +33597,23 @@ u zreconstruct_var(u vc, u vpn) {
u v25 = 0;
u v26 = 0;
v5 = (u)zassert;
- v6 = (u)(*(u*)vpn == 20);
+ v6 = (u)(*(u*)(vpn + 0UL) == 20UL);
v7 = (u)"var_stmt";
v8 = ((u(*)())v5)(v6, v7);
+ v8;
v9 = (u)zreconstruct_ident;
v10 = vc;
- v11 = *(u*)(*(u*)(vpn + 16) + 8);
+ v11 = *(u*)(*(u*)(vpn + 16UL) + 8UL);
v12 = ((u(*)())v9)(v10, v11);
va = v12;
v13 = (u)zreconstruct_type;
v14 = vc;
- v15 = *(u*)(*(u*)(*(u*)(vpn + 16) + 8) + 8);
+ v15 = *(u*)(*(u*)(*(u*)(vpn + 16UL) + 8UL) + 8UL);
v16 = ((u(*)())v13)(v14, v15);
vb = v16;
v17 = (u)zmknode;
v18 = vc;
- v19 = 30;
+ v19 = 30UL;
v20 = va;
v21 = vb;
v22 = ((u(*)())v17)(v18, v19, v20, v21);
@@ -30712,6 +33622,7 @@ u zreconstruct_var(u vc, u vpn) {
v24 = vn;
v25 = vpn;
v26 = ((u(*)())v23)(v24, v25);
+ v26;
return vn;
}
u zreserve(u vc, u vn) {
@@ -30726,35 +33637,36 @@ u zreserve(u vc, u vn) {
u v10 = 0;
u v11 = 0;
u v12 = 0;
- if (!*(u*)(vc + 40)) goto b5;
- if ((s)(*(u*)(*(u*)(vc + 40) + 24) - *(u*)(*(u*)(vc + 40) + 16)) < (s)vn) goto b5;
- v4 = 1;
-b7: if (!v4) goto b1;
- return 0;
-b1: if ((s)vn >= (s)4096) goto b8;
- vn = 4096;
+ if (!*(u*)(vc + 40UL)) goto b5;
+ if ((s)(*(u*)(*(u*)(vc + 40UL) + 24UL) - *(u*)(*(u*)(vc + 40UL) + 16UL)) < (s)vn) goto b5;
+ v4 = 1UL;
+b7: if (!v4) goto b3;
+ return 0UL;
+b3: if ((s)vn >= (s)4096UL) goto b10;
+ vn = 4096UL;
b8: v5 = (u)zalloc;
- v6 = *(u*)vc;
+ v6 = *(u*)(vc + 0UL);
v7 = vn;
v8 = ((u(*)())v5)(v6, v7);
vm = v8;
v9 = (u)zalloc;
- v10 = *(u*)vc;
- v11 = 32;
+ v10 = *(u*)(vc + 0UL);
+ v11 = 32UL;
v12 = ((u(*)())v9)(v10, v11);
vb = v12;
- *(u*)(vb + 8) = vm;
- *(u*)(vb + 16) = 0;
- *(u*)(vb + 24) = vn;
- *(u*)vb = 0;
- if (!*(u*)(vc + 40)) goto b15;
- *(u*)*(u*)(vc + 40) = vb;
- *(u*)(vc + 40) = vb;
-b13: return 0;
-b15: *(u*)(vc + 32) = vb;
- *(u*)(vc + 40) = vb;
+ *(u*)(vb + 8UL) = vm;
+ *(u*)(vb + 16UL) = 0UL;
+ *(u*)(vb + 24UL) = vn;
+ *(u*)(vb + 0UL) = 0UL;
+ if (!*(u*)(vc + 40UL)) goto b15;
+ *(u*)(*(u*)(vc + 40UL) + 0UL) = vb;
+ *(u*)(vc + 40UL) = vb;
+b13: return 0UL;
+b15: *(u*)(vc + 32UL) = vb;
+ *(u*)(vc + 40UL) = vb;
goto b13;
-b5: v4 = 0;
+b10: goto b8;
+b5: v4 = 0UL;
goto b7;
}
u zsetprefix(u vc, u vs, u vn) {
@@ -30769,8 +33681,8 @@ u zsetprefix(u vc, u vs, u vn) {
u v11 = 0;
u v12 = 0;
v4 = (u)zalloc;
- v5 = *(u*)vc;
- v6 = vn + 1;
+ v5 = *(u*)(vc + 0UL);
+ v6 = vn + 1UL;
v7 = ((u(*)())v4)(v5, v6);
vp = v7;
v8 = (u)zmemcpy;
@@ -30778,14 +33690,15 @@ u zsetprefix(u vc, u vs, u vn) {
v10 = vs;
v11 = vn;
v12 = ((u(*)())v8)(v9, v10, v11);
- *(b*)(vp + vn) = 0;
- *(u*)(vc + 32) = vp;
- *(u*)(vc + 40) = vn;
- return 0;
+ v12;
+ *(b*)(vp + vn * 1UL) = 0UL;
+ *(u*)(vc + 32UL) = vp;
+ *(u*)(vc + 40UL) = vn;
+ return 0UL;
}
u zsetup_alloc(u vc) {
- *(u*)vc = 0;
- return 0;
+ *(u*)(vc + 0UL) = 0UL;
+ return 0UL;
}
u zsetup_assembler(u va) {
u vc = 0;
@@ -30805,27 +33718,29 @@ u zsetup_assembler(u va) {
u v15 = 0;
v2 = (u)zalloc;
v3 = va;
- v4 = 128;
+ v4 = 128UL;
v5 = ((u(*)())v2)(v3, v4);
vc = v5;
- *(u*)vc = va;
- *(u*)(vc + 8) = 0;
- *(u*)(vc + 24) = 160;
- *(u*)(vc + 32) = 0;
- *(u*)(vc + 40) = 0;
- *(u*)(vc + 48) = 0;
- *(u*)(vc + 56) = 0;
- *(u*)(vc + 72) = 0;
+ *(u*)(vc + 0UL) = va;
+ *(u*)(vc + 8UL) = 0UL;
+ *(u*)(vc + 24UL) = 160UL;
+ *(u*)(vc + 32UL) = 0UL;
+ *(u*)(vc + 40UL) = 0UL;
+ *(u*)(vc + 48UL) = 0UL;
+ *(u*)(vc + 56UL) = 0UL;
+ *(u*)(vc + 72UL) = 0UL;
v6 = (u)zadd_section;
v7 = vc;
v8 = (u)"";
- v9 = 0;
+ v9 = 0UL;
v10 = ((u(*)())v6)(v7, v8, v9);
+ v10;
v11 = (u)zadd_section;
v12 = vc;
v13 = (u)".text";
- v14 = 1;
+ v14 = 1UL;
v15 = ((u(*)())v11)(v12, v13, v14);
+ v15;
return vc;
}
u zsetup_parser(u vcc, u verr) {
@@ -30846,25 +33761,25 @@ u zsetup_parser(u vcc, u verr) {
u v16 = 0;
u v17 = 0;
v3 = (u)zalloc;
- v4 = *(u*)vcc;
- v5 = 32;
+ v4 = *(u*)(vcc + 0UL);
+ v5 = 32UL;
v6 = ((u(*)())v3)(v4, v5);
vc = v6;
- *(u*)vc = *(u*)vcc;
+ *(u*)(vc + 0UL) = *(u*)(vcc + 0UL);
v7 = (u)zpeg_new;
v8 = (u)"";
v9 = (u)"";
- v10 = 0;
- v11 = *(u*)vcc;
+ v10 = 0UL;
+ v11 = *(u*)(vcc + 0UL);
v12 = (u)zpeg_P_grammar;
v13 = (u)zP_tag_to_str;
v14 = ((u(*)())v7)(v8, v9, v10, v11, v12, v13);
- *(u*)(vc + 8) = v14;
+ *(u*)(vc + 8UL) = v14;
v15 = (u)zsetup_peg;
v16 = vcc;
v17 = ((u(*)())v15)(v16);
- *(u*)(vc + 16) = v17;
- *(u*)(vc + 24) = verr;
+ *(u*)(vc + 16UL) = v17;
+ *(u*)(vc + 24UL) = verr;
return vc;
}
u zsetup_peg(u vcc) {
@@ -30878,18 +33793,18 @@ u zsetup_peg(u vcc) {
u v8 = 0;
u v9 = 0;
v2 = (u)zalloc;
- v3 = *(u*)vcc;
- v4 = 48;
+ v3 = *(u*)(vcc + 0UL);
+ v4 = 48UL;
v5 = ((u(*)())v2)(v3, v4);
vc = v5;
- *(u*)vc = *(u*)vcc;
- *(u*)(vc + 32) = (u)"";
+ *(u*)(vc + 0UL) = *(u*)(vcc + 0UL);
+ *(u*)(vc + 32UL) = (u)"";
v6 = (u)zalloc;
- v7 = *(u*)vcc;
- v8 = 256;
+ v7 = *(u*)(vcc + 0UL);
+ v8 = 256UL;
v9 = ((u(*)())v6)(v7, v8);
- *(u*)(vc + 24) = v9;
- *(u*)(vc + 16) = vcc;
+ *(u*)(vc + 24UL) = v9;
+ *(u*)(vc + 16UL) = vcc;
return vc;
}
u zshow_node(u vout, u vn) {
@@ -30974,118 +33889,139 @@ u zshow_node(u vout, u vn) {
u v80 = 0;
vhex = (u)"0123456789abcdef";
if (!vn) goto b5;
- v5 = 0;
-b6: if (!v5) goto b1;
- return 0;
-b1: v6 = (u)zfputc;
+ v5 = 0UL;
+b6: if (!v5) goto b3;
+ return 0UL;
+b3: v6 = (u)zfputc;
v7 = vout;
- v8 = 40;
+ v8 = 40UL;
v9 = ((u(*)())v6)(v7, v8);
+ v9;
v10 = (u)zfputs;
v11 = vout;
v13 = (u)znode_to_str;
- v14 = *(u*)vn;
+ v14 = *(u*)(vn + 0UL);
v15 = ((u(*)())v13)(v14);
v12 = v15;
v16 = ((u(*)())v10)(v11, v12);
- if (*(u*)vn != 1) goto b10;
+ v16;
+ if (*(u*)(vn + 0UL) != 1UL) goto b12;
v17 = (u)zfputc;
v18 = vout;
- v19 = 32;
+ v19 = 32UL;
v20 = ((u(*)())v17)(v18, v19);
+ v20;
v21 = (u)zfputd;
v22 = vout;
- v23 = *(u*)(vn + 48);
+ v23 = *(u*)(vn + 48UL);
v24 = ((u(*)())v21)(v22, v23);
-b10: if (!*(u*)(vn + 56)) goto b15;
+ v24;
+b10: if (!*(u*)(vn + 56UL)) goto b17;
v25 = (u)zfputc;
v26 = vout;
- v27 = 32;
+ v27 = 32UL;
v28 = ((u(*)())v25)(v26, v27);
+ v28;
v29 = (u)zfputc;
v30 = vout;
- v31 = 34;
+ v31 = 34UL;
v32 = ((u(*)())v29)(v30, v31);
- vi = 0;
-b20: vch = (u)*(b*)(*(u*)(vn + 56) + vi);
+ v32;
+ vi = 0UL;
+b20: vch = (u)*(b*)(*(u*)(vn + 56UL) + vi * 1UL);
if (!vch) goto b26;
- v33 = 0;
-b27: if (!v33) goto b22;
+ v33 = 0UL;
+b27: if (!v33) goto b24;
v57 = (u)zfputc;
v58 = vout;
- v59 = 34;
+ v59 = 34UL;
v60 = ((u(*)())v57)(v58, v59);
-b15: if (!*(u*)(vn + 8)) goto b52;
+ v60;
+b15: if (!*(u*)(vn + 8UL)) goto b54;
v61 = (u)zfputc;
v62 = vout;
- v63 = 32;
+ v63 = 32UL;
v64 = ((u(*)())v61)(v62, v63);
+ v64;
v65 = (u)zshow_node;
v66 = vout;
- v67 = *(u*)(vn + 8);
+ v67 = *(u*)(vn + 8UL);
v68 = ((u(*)())v65)(v66, v67);
-b52: if (!*(u*)(vn + 16)) goto b57;
+ v68;
+b52: if (!*(u*)(vn + 16UL)) goto b59;
v69 = (u)zfputc;
v70 = vout;
- v71 = 32;
+ v71 = 32UL;
v72 = ((u(*)())v69)(v70, v71);
+ v72;
v73 = (u)zshow_node;
v74 = vout;
- v75 = *(u*)(vn + 16);
+ v75 = *(u*)(vn + 16UL);
v76 = ((u(*)())v73)(v74, v75);
+ v76;
b57: v77 = (u)zfputc;
v78 = vout;
- v79 = 41;
+ v79 = 41UL;
v80 = ((u(*)())v77)(v78, v79);
- return 0;
-b22: if ((s)vch >= (s)32) goto b32;
- v34 = 1;
+ v80;
+ return 0UL;
+b59: goto b57;
+b54: goto b52;
+b24: if ((s)vch >= (s)32UL) goto b32;
+ v34 = 1UL;
b34: if (!v34) goto b30;
v37 = (u)zfputc;
v38 = vout;
- v39 = 92;
+ v39 = 92UL;
v40 = ((u(*)())v37)(v38, v39);
+ v40;
v41 = (u)zfputc;
v42 = vout;
- v43 = 120;
+ v43 = 120UL;
v44 = ((u(*)())v41)(v42, v43);
+ v44;
v45 = (u)zfputc;
v46 = vout;
- v47 = (u)*(b*)(vhex + (vch >> 4));
+ v47 = (u)*(b*)(vhex + (vch >> 4UL) * 1UL);
v48 = ((u(*)())v45)(v46, v47);
+ v48;
v49 = (u)zfputc;
v50 = vout;
- v51 = (u)*(b*)(vhex + (vch & 15));
+ v51 = (u)*(b*)(vhex + (vch & 15UL) * 1UL);
v52 = ((u(*)())v49)(v50, v51);
-b28: vi = vi + 1;
+ v52;
+b28: vi = vi + 1UL;
goto b20;
b30: v53 = (u)zfputc;
v54 = vout;
v55 = vch;
v56 = ((u(*)())v53)(v54, v55);
+ v56;
goto b28;
-b32: if ((s)vch <= (s)127) goto b37;
- v35 = 1;
+b32: if ((s)vch <= (s)127UL) goto b37;
+ v35 = 1UL;
b39: if (!v35) goto b35;
- v34 = 1;
+ v34 = 1UL;
goto b34;
-b35: v34 = 0;
+b35: v34 = 0UL;
goto b34;
-b37: if (vch != 92) goto b42;
- v36 = 1;
+b37: if (vch != 92UL) goto b42;
+ v36 = 1UL;
b44: if (!v36) goto b40;
- v35 = 1;
+ v35 = 1UL;
goto b39;
-b40: v35 = 0;
+b40: v35 = 0UL;
goto b39;
-b42: if (vch != 34) goto b45;
- v36 = 1;
+b42: if (vch != 34UL) goto b45;
+ v36 = 1UL;
goto b44;
-b45: v36 = 0;
+b45: v36 = 0UL;
goto b44;
-b26: v33 = 1;
+b26: v33 = 1UL;
goto b27;
-b5: v5 = 1;
+b17: goto b15;
+b12: goto b10;
+b5: v5 = 1UL;
goto b6;
}
u zstmt_to_ir(u vic, u vn) {
@@ -31222,36 +34158,38 @@ u zstmt_to_ir(u vic, u vn) {
u v132 = 0;
u v133 = 0;
if (!vn) goto b5;
- v9 = 0;
-b6: if (!v9) goto b1;
- return 0;
-b1: *(u*)(*(u*)vic + 24) = *(u*)(vn + 24);
- *(u*)(*(u*)vic + 32) = *(u*)(vn + 32);
- *(u*)(*(u*)vic + 40) = *(u*)(vn + 40);
- vkind = *(u*)vn;
- if (vkind != 21) goto b9;
+ v9 = 0UL;
+b6: if (!v9) goto b3;
+ return 0UL;
+b3: *(u*)(*(u*)(vic + 0UL) + 24UL) = *(u*)(vn + 24UL);
+ *(u*)(*(u*)(vic + 0UL) + 32UL) = *(u*)(vn + 32UL);
+ *(u*)(*(u*)(vic + 0UL) + 40UL) = *(u*)(vn + 40UL);
+ vkind = *(u*)(vn + 0UL);
+ if (vkind != 21UL) goto b9;
v10 = (u)zmkirblock;
v11 = vic;
v12 = ((u(*)())v10)(v11);
vcond_out = v12;
b11: if (!vn) goto b17;
- v13 = 0;
-b18: if (!v13) goto b13;
+ v13 = 0UL;
+b18: if (!v13) goto b15;
b12: v44 = (u)zirjump;
v45 = vic;
v46 = vcond_out;
v47 = vcond_out;
v48 = ((u(*)())v44)(v45, v46, v47);
-b7: return 0;
-b13: if (!*(u*)(*(u*)(vn + 8) + 8)) goto b23;
- v14 = 0;
-b24: if (!v14) goto b19;
+ v48;
+b7: return 0UL;
+b15: if (!*(u*)(*(u*)(vn + 8UL) + 8UL)) goto b23;
+ v14 = 0UL;
+b24: if (!v14) goto b21;
v15 = (u)zstmt_to_ir;
v16 = vic;
- v17 = *(u*)(*(u*)(vn + 8) + 16);
+ v17 = *(u*)(*(u*)(vn + 8UL) + 16UL);
v18 = ((u(*)())v15)(v16, v17);
+ v18;
goto b12;
-b19: v19 = (u)zmkirblock;
+b21: v19 = (u)zmkirblock;
v20 = vic;
v21 = ((u(*)())v19)(v20);
vcond_body = v21;
@@ -31261,7 +34199,7 @@ b19: v19 = (u)zmkirblock;
vcond_next = v24;
v25 = (u)zexpr_to_ir;
v26 = vic;
- v27 = *(u*)(*(u*)(vn + 8) + 8);
+ v27 = *(u*)(*(u*)(vn + 8UL) + 8UL);
v28 = ((u(*)())v25)(v26, v27);
vvalue = v28;
v29 = (u)zirbranch;
@@ -31270,116 +34208,130 @@ b19: v19 = (u)zmkirblock;
v32 = vcond_next;
v33 = vcond_body;
v34 = ((u(*)())v29)(v30, v31, v32, v33);
+ v34;
v35 = (u)zstmt_to_ir;
v36 = vic;
- v37 = *(u*)(*(u*)(vn + 8) + 16);
+ v37 = *(u*)(*(u*)(vn + 8UL) + 16UL);
v38 = ((u(*)())v35)(v36, v37);
+ v38;
v39 = (u)zirjump;
v40 = vic;
v41 = vcond_out;
v42 = vcond_next;
v43 = ((u(*)())v39)(v40, v41, v42);
- vn = *(u*)(vn + 16);
+ v43;
+ vn = *(u*)(vn + 16UL);
goto b11;
-b23: v14 = 1;
+b23: v14 = 1UL;
goto b24;
-b17: v13 = 1;
+b17: v13 = 1UL;
goto b18;
-b9: if (vkind != 5) goto b34;
+b9: if (vkind != 5UL) goto b34;
b35: if (!vn) goto b41;
- v49 = 0;
-b42: if (!v49) goto b37;
+ v49 = 0UL;
+b42: if (!v49) goto b39;
goto b7;
-b37: v50 = (u)zstmt_to_ir;
+b39: v50 = (u)zstmt_to_ir;
v51 = vic;
- v52 = *(u*)(vn + 8);
+ v52 = *(u*)(vn + 8UL);
v53 = ((u(*)())v50)(v51, v52);
- vn = *(u*)(vn + 16);
+ v53;
+ vn = *(u*)(vn + 16UL);
goto b35;
-b41: v49 = 1;
+b41: v49 = 1UL;
goto b42;
-b34: if (vkind != 26) goto b45;
- *vloopctx = *(u*)(vic + 56);
+b34: if (vkind != 26UL) goto b45;
+ *(u*)((u)vloopctx + 0UL) = *(u*)(vic + 56UL);
v54 = (u)zmkirblock;
v55 = vic;
v56 = ((u(*)())v54)(v55);
- *(u*)((u)vloopctx + 8) = v56;
+ *(u*)((u)vloopctx + 8UL) = v56;
v57 = (u)zmkirblock;
v58 = vic;
v59 = ((u(*)())v57)(v58);
- *(u*)((u)vloopctx + 16) = v59;
- *(u*)(vic + 56) = (u)vloopctx;
+ *(u*)((u)vloopctx + 16UL) = v59;
+ *(u*)(vic + 56UL) = (u)vloopctx;
v60 = (u)zirjump;
v61 = vic;
- v62 = *(u*)((u)vloopctx + 8);
- v63 = *(u*)((u)vloopctx + 8);
+ v62 = *(u*)((u)vloopctx + 8UL);
+ v63 = *(u*)((u)vloopctx + 8UL);
v64 = ((u(*)())v60)(v61, v62, v63);
+ v64;
v65 = (u)zstmt_to_ir;
v66 = vic;
- v67 = *(u*)(vn + 8);
+ v67 = *(u*)(vn + 8UL);
v68 = ((u(*)())v65)(v66, v67);
+ v68;
v69 = (u)zirjump;
v70 = vic;
- v71 = *(u*)((u)vloopctx + 8);
- v72 = *(u*)((u)vloopctx + 16);
+ v71 = *(u*)((u)vloopctx + 8UL);
+ v72 = *(u*)((u)vloopctx + 16UL);
v73 = ((u(*)())v69)(v70, v71, v72);
- *(u*)(vic + 56) = *vloopctx;
+ v73;
+ *(u*)(vic + 56UL) = *(u*)((u)vloopctx + 0UL);
goto b7;
-b45: if (vkind != 27) goto b52;
- if (!*(u*)(vic + 56)) goto b57;
- v74 = 0;
-b58: if (!v74) goto b53;
+b45: if (vkind != 27UL) goto b52;
+ if (!*(u*)(vic + 56UL)) goto b57;
+ v74 = 0UL;
+b58: if (!v74) goto b55;
v75 = (u)zcdie;
- v76 = *(u*)vic;
+ v76 = *(u*)(vic + 0UL);
v77 = (u)"break not in loop";
v78 = ((u(*)())v75)(v76, v77);
+ v78;
b53: v79 = (u)zirjump;
v80 = vic;
- v81 = *(u*)(*(u*)(vic + 56) + 16);
- v82 = 0;
+ v81 = *(u*)(*(u*)(vic + 56UL) + 16UL);
+ v82 = 0UL;
v83 = ((u(*)())v79)(v80, v81, v82);
+ v83;
goto b7;
-b57: v74 = 1;
+b55: goto b53;
+b57: v74 = 1UL;
goto b58;
-b52: if (vkind != 28) goto b62;
- if (!*(u*)(vic + 56)) goto b67;
- v84 = 0;
-b68: if (!v84) goto b63;
+b52: if (vkind != 28UL) goto b62;
+ if (!*(u*)(vic + 56UL)) goto b67;
+ v84 = 0UL;
+b68: if (!v84) goto b65;
v85 = (u)zcdie;
- v86 = *(u*)vic;
+ v86 = *(u*)(vic + 0UL);
v87 = (u)"continue not in loop";
v88 = ((u(*)())v85)(v86, v87);
+ v88;
b63: v89 = (u)zirjump;
v90 = vic;
- v91 = *(u*)(*(u*)(vic + 56) + 8);
- v92 = 0;
+ v91 = *(u*)(*(u*)(vic + 56UL) + 8UL);
+ v92 = 0UL;
v93 = ((u(*)())v89)(v90, v91, v92);
+ v93;
goto b7;
-b67: v84 = 1;
+b65: goto b63;
+b67: v84 = 1UL;
goto b68;
-b62: if (vkind != 29) goto b72;
- if (!*(u*)(vn + 8)) goto b75;
+b62: if (vkind != 29UL) goto b72;
+ if (!*(u*)(vn + 8UL)) goto b75;
v94 = (u)zexpr_to_ir;
v95 = vic;
- v96 = *(u*)(vn + 8);
+ v96 = *(u*)(vn + 8UL);
v97 = ((u(*)())v94)(v95, v96);
vvalue = v97;
b73: v102 = (u)zirreturn;
v103 = vic;
v104 = vvalue;
v105 = ((u(*)())v102)(v103, v104);
+ v105;
goto b7;
b75: v98 = (u)zmkirconst;
v99 = vic;
- v100 = 0;
+ v100 = 0UL;
v101 = ((u(*)())v98)(v99, v100);
vvalue = v101;
goto b73;
-b72: if (vkind != 31) goto b80;
+b72: if (vkind != 31UL) goto b80;
v106 = (u)zirfind_block;
v107 = vic;
- v108 = *(u*)(*(u*)(vn + 8) + 56);
- v109 = 0;
+ v108 = *(u*)(*(u*)(vn + 8UL) + 56UL);
+ v109 = 0UL;
v110 = ((u(*)())v106)(v107, v108, v109);
vlabel = v110;
v111 = (u)zirjump;
@@ -31387,21 +34339,23 @@ b72: if (vkind != 31) goto b80;
v113 = vlabel;
v114 = vlabel;
v115 = ((u(*)())v111)(v112, v113, v114);
+ v115;
goto b7;
-b80: if (vkind != 32) goto b84;
+b80: if (vkind != 32UL) goto b84;
v116 = (u)zirfind_block;
v117 = vic;
- v118 = *(u*)(*(u*)(vn + 8) + 56);
- v119 = 0;
+ v118 = *(u*)(*(u*)(vn + 8UL) + 56UL);
+ v119 = 0UL;
v120 = ((u(*)())v116)(v117, v118, v119);
vlabel = v120;
v121 = (u)zirjump;
v122 = vic;
v123 = vlabel;
- v124 = 0;
+ v124 = 0UL;
v125 = ((u(*)())v121)(v122, v123, v124);
+ v125;
goto b7;
-b84: if (vkind != 30) goto b88;
+b84: if (vkind != 30UL) goto b88;
goto b7;
b88: v126 = (u)zexpr_to_ir;
v127 = vic;
@@ -31412,28 +34366,29 @@ b88: v126 = (u)zexpr_to_ir;
v131 = vic;
v132 = vvalue;
v133 = ((u(*)())v130)(v131, v132);
+ v133;
goto b7;
-b5: v9 = 1;
+b5: v9 = 1UL;
goto b6;
}
u zstrcmp(u va, u vb) {
u vi = 0;
- vi = 0;
-b1: if ((s)(u)*(b*)(va + vi) <= (s)(u)*(b*)(vb + vi)) goto b3;
- return 1;
-b3: if ((s)(u)*(b*)(va + vi) >= (s)(u)*(b*)(vb + vi)) goto b6;
+ vi = 0UL;
+b1: if ((s)(u)*(b*)(va + vi * 1UL) <= (s)(u)*(b*)(vb + vi * 1UL)) goto b5;
+ return 1UL;
+b5: if ((s)(u)*(b*)(va + vi * 1UL) >= (s)(u)*(b*)(vb + vi * 1UL)) goto b8;
return -1UL;
-b6: if ((u)*(b*)(va + vi) != 0) goto b9;
- return 0;
-b9: vi = vi + 1;
+b8: if ((u)*(b*)(va + vi * 1UL) != 0UL) goto b11;
+ return 0UL;
+b11: vi = vi + 1UL;
goto b1;
}
u zstrlen(u vs) {
u vret = 0;
- vret = 0;
-b1: if ((u)*(b*)(vs + vret) != 0) goto b3;
+ vret = 0UL;
+b1: if ((u)*(b*)(vs + vret * 1UL) != 0UL) goto b5;
return vret;
-b3: vret = vret + 1;
+b5: vret = vret + 1UL;
goto b1;
}
u ztranslate(u vc, u vn) {
@@ -31479,68 +34434,75 @@ u ztranslate(u vc, u vn) {
u v41 = 0;
u v42 = 0;
u v43 = 0;
- vv = *(u*)(vn + 16);
- vnum_rules = 0;
+ vv = *(u*)(vn + 16UL);
+ vnum_rules = 0UL;
b1: if (!vv) goto b7;
- v8 = 0;
-b8: if (!v8) goto b3;
+ v8 = 0UL;
+b8: if (!v8) goto b5;
v14 = (u)zalloc;
- v15 = *(u*)vc;
- v16 = vnum_rules * 8;
+ v15 = *(u*)(vc + 0UL);
+ v16 = vnum_rules * 8UL;
v17 = ((u(*)())v14)(v15, v16);
vtags = v17;
v18 = (u)zalloc;
- v19 = *(u*)vc;
- v20 = vnum_rules * 8;
+ v19 = *(u*)(vc + 0UL);
+ v20 = vnum_rules * 8UL;
v21 = ((u(*)())v18)(v19, v20);
vnodes = v21;
- vi = 0;
- vv = *(u*)(vn + 16);
+ vi = 0UL;
+ vv = *(u*)(vn + 16UL);
b18: if (!vv) goto b24;
- v22 = 0;
-b25: if (!v22) goto b20;
+ v22 = 0UL;
+b25: if (!v22) goto b22;
v33 = (u)ztranslate_tag_to_str;
v34 = vc;
v35 = vtags;
v36 = vnum_rules;
v37 = ((u(*)())v33)(v34, v35, v36);
+ v37;
v38 = (u)ztranslate_rules;
v39 = vc;
v40 = vtags;
v41 = vnodes;
v42 = vnum_rules;
v43 = ((u(*)())v38)(v39, v40, v41, v42);
- return 0;
-b20: if (*(u*)vv != 91) goto b26;
+ v43;
+ return 0UL;
+b22: if (*(u*)(vv + 0UL) != 91UL) goto b28;
v23 = (u)zmake_tag;
v24 = vc;
- v25 = *(u*)(*(u*)(vv + 16) + 24);
- v26 = *(u*)(*(u*)(vv + 16) + 32);
+ v25 = *(u*)(*(u*)(vv + 16UL) + 24UL);
+ v26 = *(u*)(*(u*)(vv + 16UL) + 32UL);
v27 = ((u(*)())v23)(v24, v25, v26);
vtag = v27;
v28 = (u)zdefine_enum_tag;
- v29 = *(u*)(vc + 16);
+ v29 = *(u*)(vc + 16UL);
v30 = vtag;
v31 = vi;
v32 = ((u(*)())v28)(v29, v30, v31);
- *(u*)(vtags + vi * 8) = vtag;
- *(u*)(vnodes + vi * 8) = vv;
- vi = vi + 1;
-b26: vv = *(u*)(vv + 8);
+ v32;
+ *(u*)(vtags + vi * 8UL) = vtag;
+ *(u*)(vnodes + vi * 8UL) = vv;
+ vi = vi + 1UL;
+b26: vv = *(u*)(vv + 8UL);
goto b18;
-b24: v22 = 1;
+b28: goto b26;
+b24: v22 = 1UL;
goto b25;
-b3: if (*(u*)vv != 92) goto b9;
+b5: if (*(u*)(vv + 0UL) != 92UL) goto b11;
v9 = (u)zsetprefix;
v10 = vc;
- v11 = *(u*)(*(u*)(vv + 16) + 24);
- v12 = *(u*)(*(u*)(vv + 16) + 32);
+ v11 = *(u*)(*(u*)(vv + 16UL) + 24UL);
+ v12 = *(u*)(*(u*)(vv + 16UL) + 32UL);
v13 = ((u(*)())v9)(v10, v11, v12);
-b9: if (*(u*)vv != 91) goto b13;
- vnum_rules = vnum_rules + 1;
-b13: vv = *(u*)(vv + 8);
+ v13;
+b9: if (*(u*)(vv + 0UL) != 91UL) goto b15;
+ vnum_rules = vnum_rules + 1UL;
+b13: vv = *(u*)(vv + 8UL);
goto b1;
-b7: v8 = 1;
+b15: goto b13;
+b11: goto b9;
+b7: v8 = 1UL;
goto b8;
}
u ztranslate_call(u vc, u vic, u vfail, u vn) {
@@ -31634,40 +34596,43 @@ u ztranslate_call(u vc, u vic, u vfail, u vn) {
u v91 = 0;
u v92 = 0;
u v93 = 0;
- vprefix = *(u*)(vc + 32);
+ vprefix = *(u*)(vc + 32UL);
v14 = (u)zstrlen;
v15 = vprefix;
v16 = ((u(*)())v14)(v15);
vprefix_len = v16;
- vlen = vprefix_len + *(u*)(vn + 32) + 4;
+ vlen = vprefix_len + *(u*)(vn + 32UL) + 4UL;
v17 = (u)zalloc;
- v18 = *(u*)vc;
- v19 = vlen + 1;
+ v18 = *(u*)(vc + 0UL);
+ v19 = vlen + 1UL;
v20 = ((u(*)())v17)(v18, v19);
vresult = v20;
v21 = (u)zmemcpy;
v22 = vresult;
v23 = (u)"peg_";
- v24 = 4;
+ v24 = 4UL;
v25 = ((u(*)())v21)(v22, v23, v24);
+ v25;
v26 = (u)zmemcpy;
- v27 = vresult + 4;
+ v27 = vresult + 4UL * 1UL;
v28 = vprefix;
v29 = vprefix_len;
v30 = ((u(*)())v26)(v27, v28, v29);
+ v30;
v31 = (u)zmemcpy;
- v32 = vresult + 4 + vprefix_len;
- v33 = *(u*)(vn + 24);
- v34 = *(u*)(vn + 32);
+ v32 = vresult + (4UL + vprefix_len) * 1UL;
+ v33 = *(u*)(vn + 24UL);
+ v34 = *(u*)(vn + 32UL);
v35 = ((u(*)())v31)(v32, v33, v34);
- *(b*)(vresult + vlen) = 0;
+ v35;
+ *(b*)(vresult + vlen * 1UL) = 0UL;
v36 = (u)zmkirblock;
v37 = vic;
v38 = ((u(*)())v36)(v37);
vnext = v38;
v39 = (u)zmktype0;
- v40 = *(u*)(vc + 16);
- v41 = 2;
+ v40 = *(u*)(vc + 16UL);
+ v41 = 2UL;
v42 = ((u(*)())v39)(v40, v41);
vt = v42;
v43 = (u)zmkirtmp;
@@ -31682,7 +34647,7 @@ u ztranslate_call(u vc, u vic, u vfail, u vn) {
va = v50;
v51 = (u)zmkirarg;
v52 = vic;
- v53 = 0;
+ v53 = 0UL;
v54 = va;
v55 = ((u(*)())v51)(v52, v53, v54);
vo = v55;
@@ -31690,6 +34655,7 @@ u ztranslate_call(u vc, u vic, u vfail, u vn) {
v57 = vic;
v58 = vo;
v59 = ((u(*)())v56)(v57, v58);
+ v59;
v60 = (u)zmkirretval;
v61 = vic;
v62 = vret;
@@ -31700,6 +34666,7 @@ u ztranslate_call(u vc, u vic, u vfail, u vn) {
v66 = vic;
v67 = vo;
v68 = ((u(*)())v65)(v66, v67);
+ v68;
v69 = (u)zmkirfuncref;
v70 = vic;
v71 = vresult;
@@ -31708,17 +34675,18 @@ u ztranslate_call(u vc, u vic, u vfail, u vn) {
v73 = (u)zircall;
v74 = vic;
v75 = va;
- v76 = 1;
+ v76 = 1UL;
v77 = ((u(*)())v73)(v74, v75, v76);
+ v77;
va = vret;
v78 = (u)zmkirconst;
v79 = vic;
- v80 = 0;
+ v80 = 0UL;
v81 = ((u(*)())v78)(v79, v80);
vb = v81;
v82 = (u)zmkirop;
v83 = vic;
- v84 = 22;
+ v84 = 22UL;
v85 = va;
v86 = vb;
v87 = ((u(*)())v82)(v83, v84, v85, v86);
@@ -31729,7 +34697,8 @@ u ztranslate_call(u vc, u vic, u vfail, u vn) {
v91 = vfail;
v92 = vnext;
v93 = ((u(*)())v88)(v89, v90, v91, v92);
- return 0;
+ v93;
+ return 0UL;
}
u ztranslate_charset(u vc, u vic, u vfail, u vn) {
u vi = 0;
@@ -31849,34 +34818,36 @@ u ztranslate_charset(u vc, u vic, u vfail, u vn) {
u v118 = 0;
vhex = (u)"0123456789abcdef";
v19 = (u)zmemset;
- v20 = *(u*)(vc + 24);
- v21 = 0;
- v22 = 256;
+ v20 = *(u*)(vc + 24UL);
+ v21 = 0UL;
+ v22 = 256UL;
v23 = ((u(*)())v19)(v20, v21, v22);
- vi = 1;
- vlen = *(u*)(vn + 32) - 1;
-b2: if (vi != vlen) goto b4;
- vcount = 0;
- vi = 1;
-b31: if (vi != 256) goto b33;
- vi = 1;
- vj = 0;
-b36: if (vi != 256) goto b38;
- *(b*)(*(u*)(vc + 24) + vj) = 0;
+ v23;
+ vi = 1UL;
+ vlen = *(u*)(vn + 32UL) - 1UL;
+b2: if (vi != vlen) goto b6;
+ vcount = 0UL;
+ vi = 1UL;
+b31: if (vi != 256UL) goto b35;
+ vi = 1UL;
+ vj = 0UL;
+b36: if (vi != 256UL) goto b40;
+ *(b*)(*(u*)(vc + 24UL) + vj * 1UL) = 0UL;
v38 = (u)zalloc;
- v39 = *(u*)vc;
- v40 = vj + 1;
+ v39 = *(u*)(vc + 0UL);
+ v40 = vj + 1UL;
v41 = ((u(*)())v38)(v39, v40);
vs = v41;
v42 = (u)zmemcpy;
v43 = vs;
- v44 = *(u*)(vc + 24);
+ v44 = *(u*)(vc + 24UL);
v45 = vj;
v46 = ((u(*)())v42)(v43, v44, v45);
- *(b*)(vs + vj) = 0;
+ v46;
+ *(b*)(vs + vj * 1UL) = 0UL;
v47 = (u)zmktype0;
- v48 = *(u*)(vc + 16);
- v49 = 2;
+ v48 = *(u*)(vc + 16UL);
+ v49 = 2UL;
v50 = ((u(*)())v47)(v48, v49);
vt = v50;
v51 = (u)zmkirblock;
@@ -31898,6 +34869,7 @@ b36: if (vi != 256) goto b38;
v64 = vic;
v65 = vo;
v66 = ((u(*)())v63)(v64, v65);
+ v66;
v67 = (u)zmkirvarop;
v68 = vic;
v69 = (u)"c";
@@ -31905,7 +34877,7 @@ b36: if (vi != 256) goto b38;
voa = v70;
v71 = (u)zmkirarg;
v72 = vic;
- v73 = 0;
+ v73 = 0UL;
v74 = voa;
v75 = ((u(*)())v71)(v72, v73, v74);
vo = v75;
@@ -31913,6 +34885,7 @@ b36: if (vi != 256) goto b38;
v77 = vic;
v78 = vo;
v79 = ((u(*)())v76)(v77, v78);
+ v79;
v80 = (u)zmkirstr;
v81 = vic;
v82 = vs;
@@ -31921,7 +34894,7 @@ b36: if (vi != 256) goto b38;
voa = v84;
v85 = (u)zmkirarg;
v86 = vic;
- v87 = 1;
+ v87 = 1UL;
v88 = voa;
v89 = ((u(*)())v85)(v86, v87, v88);
vo = v89;
@@ -31929,6 +34902,7 @@ b36: if (vi != 256) goto b38;
v91 = vic;
v92 = vo;
v93 = ((u(*)())v90)(v91, v92);
+ v93;
v94 = (u)zmkirfuncref;
v95 = vic;
v96 = (u)"charset";
@@ -31937,17 +34911,18 @@ b36: if (vi != 256) goto b38;
v98 = (u)zircall;
v99 = vic;
v100 = voa;
- v101 = 2;
+ v101 = 2UL;
v102 = ((u(*)())v98)(v99, v100, v101);
+ v102;
voa = vret;
v103 = (u)zmkirconst;
v104 = vic;
- v105 = 0;
+ v105 = 0UL;
v106 = ((u(*)())v103)(v104, v105);
vob = v106;
v107 = (u)zmkirop;
v108 = vic;
- v109 = 22;
+ v109 = 22UL;
v110 = voa;
v111 = vob;
v112 = ((u(*)())v107)(v108, v109, v110, v111);
@@ -31958,53 +34933,59 @@ b36: if (vi != 256) goto b38;
v116 = vfail;
v117 = vnext;
v118 = ((u(*)())v113)(v114, v115, v116, v117);
- return 0;
-b38: if (!(u)*(b*)(*(u*)(vc + 24) + vi)) goto b41;
- *(b*)(*(u*)(vc + 24) + vj) = vi;
- vj = vj + 1;
-b41: vi = vi + 1;
+ v118;
+ return 0UL;
+b40: if (!(u)*(b*)(*(u*)(vc + 24UL) + vi * 1UL)) goto b43;
+ *(b*)(*(u*)(vc + 24UL) + vj * 1UL) = vi;
+ vj = vj + 1UL;
+b41: vi = vi + 1UL;
goto b36;
-b33: vcount = vcount + (u)*(b*)(*(u*)(vc + 24) + vi);
- vi = vi + 1;
+b43: goto b41;
+b35: vcount = vcount + (u)*(b*)(*(u*)(vc + 24UL) + vi * 1UL);
+ vi = vi + 1UL;
goto b31;
-b4: vch = (u)*(b*)(*(u*)(vn + 24) + vi);
- vi = vi + 1;
- if (vch != 92) goto b7;
+b6: vch = (u)*(b*)(*(u*)(vn + 24UL) + vi * 1UL);
+ vi = vi + 1UL;
+ if (vch != 92UL) goto b9;
v24 = (u)zparse_escape;
- v25 = *(u*)(vn + 24);
+ v25 = *(u*)(vn + 24UL);
v26 = (u)&vi;
v27 = vlen;
v28 = ((u(*)())v24)(v25, v26, v27);
vch = v28;
b7: if ((s)vi >= (s)vlen) goto b15;
- if ((u)*(b*)(*(u*)(vn + 24) + vi) != 45) goto b15;
- v29 = 1;
+ if ((u)*(b*)(*(u*)(vn + 24UL) + vi * 1UL) != 45UL) goto b15;
+ v29 = 1UL;
b17: if (!v29) goto b13;
- vi = vi + 1;
- if (vi != vlen) goto b18;
+ vi = vi + 1UL;
+ if (vi != vlen) goto b20;
v30 = (u)zdie;
v31 = (u)"invalid range";
v32 = ((u(*)())v30)(v31);
+ v32;
b18: va = vch;
- vch = (u)*(b*)(*(u*)(vn + 24) + vi);
- vi = vi + 1;
- if (vch != 92) goto b22;
+ vch = (u)*(b*)(*(u*)(vn + 24UL) + vi * 1UL);
+ vi = vi + 1UL;
+ if (vch != 92UL) goto b24;
v33 = (u)zparse_escape;
- v34 = *(u*)(vn + 24);
+ v34 = *(u*)(vn + 24UL);
v35 = (u)&vi;
v36 = vlen;
v37 = ((u(*)())v33)(v34, v35, v36);
vch = v37;
b22: vb = vch;
-b26: if ((s)va <= (s)vb) goto b28;
- goto b2;
-b28: *(b*)(*(u*)(vc + 24) + va) = 1;
- va = va + 1;
+b26: if ((s)va <= (s)vb) goto b30;
+b11: goto b2;
+b30: *(b*)(*(u*)(vc + 24UL) + va * 1UL) = 1UL;
+ va = va + 1UL;
goto b26;
-b13: *(b*)(*(u*)(vc + 24) + vch) = 1;
- goto b2;
-b15: v29 = 0;
+b24: goto b22;
+b20: goto b18;
+b13: *(b*)(*(u*)(vc + 24UL) + vch * 1UL) = 1UL;
+ goto b11;
+b15: v29 = 0UL;
goto b17;
+b9: goto b7;
}
u ztranslate_literal(u vc, u vic, u vfail, u vn) {
u va = 0;
@@ -32096,19 +35077,20 @@ u ztranslate_literal(u vc, u vic, u vfail, u vn) {
u v90 = 0;
u v91 = 0;
v11 = (u)zalloc;
- v12 = *(u*)vc;
- v13 = *(u*)(vn + 32) - 1;
+ v12 = *(u*)(vc + 0UL);
+ v13 = *(u*)(vn + 32UL) - 1UL;
v14 = ((u(*)())v11)(v12, v13);
vs = v14;
v15 = (u)zmemcpy;
v16 = vs;
- v17 = *(u*)(vn + 24) + 1;
- v18 = *(u*)(vn + 32) - 2;
+ v17 = *(u*)(vn + 24UL) + 1UL * 1UL;
+ v18 = *(u*)(vn + 32UL) - 2UL;
v19 = ((u(*)())v15)(v16, v17, v18);
- *(b*)(vs + *(u*)(vn + 32) - 1) = 0;
+ v19;
+ *(b*)(vs + (*(u*)(vn + 32UL) - 1UL) * 1UL) = 0UL;
v20 = (u)zmktype0;
- v21 = *(u*)(vc + 16);
- v22 = 2;
+ v21 = *(u*)(vc + 16UL);
+ v22 = 2UL;
v23 = ((u(*)())v20)(v21, v22);
vt = v23;
v24 = (u)zmkirblock;
@@ -32130,6 +35112,7 @@ u ztranslate_literal(u vc, u vic, u vfail, u vn) {
v37 = vic;
v38 = vo;
v39 = ((u(*)())v36)(v37, v38);
+ v39;
v40 = (u)zmkirvarop;
v41 = vic;
v42 = (u)"c";
@@ -32137,7 +35120,7 @@ u ztranslate_literal(u vc, u vic, u vfail, u vn) {
va = v43;
v44 = (u)zmkirarg;
v45 = vic;
- v46 = 0;
+ v46 = 0UL;
v47 = va;
v48 = ((u(*)())v44)(v45, v46, v47);
vo = v48;
@@ -32145,15 +35128,16 @@ u ztranslate_literal(u vc, u vic, u vfail, u vn) {
v50 = vic;
v51 = vo;
v52 = ((u(*)())v49)(v50, v51);
+ v52;
v53 = (u)zmkirstr;
v54 = vic;
v55 = vs;
- v56 = *(u*)(vn + 32) - 2;
+ v56 = *(u*)(vn + 32UL) - 2UL;
v57 = ((u(*)())v53)(v54, v55, v56);
va = v57;
v58 = (u)zmkirarg;
v59 = vic;
- v60 = 1;
+ v60 = 1UL;
v61 = va;
v62 = ((u(*)())v58)(v59, v60, v61);
vo = v62;
@@ -32161,6 +35145,7 @@ u ztranslate_literal(u vc, u vic, u vfail, u vn) {
v64 = vic;
v65 = vo;
v66 = ((u(*)())v63)(v64, v65);
+ v66;
v67 = (u)zmkirfuncref;
v68 = vic;
v69 = (u)"literal";
@@ -32169,17 +35154,18 @@ u ztranslate_literal(u vc, u vic, u vfail, u vn) {
v71 = (u)zircall;
v72 = vic;
v73 = va;
- v74 = 2;
+ v74 = 2UL;
v75 = ((u(*)())v71)(v72, v73, v74);
+ v75;
va = vret;
v76 = (u)zmkirconst;
v77 = vic;
- v78 = 0;
+ v78 = 0UL;
v79 = ((u(*)())v76)(v77, v78);
vb = v79;
v80 = (u)zmkirop;
v81 = vic;
- v82 = 22;
+ v82 = 22UL;
v83 = va;
v84 = vb;
v85 = ((u(*)())v80)(v81, v82, v83, v84);
@@ -32190,7 +35176,8 @@ u ztranslate_literal(u vc, u vic, u vfail, u vn) {
v89 = vfail;
v90 = vnext;
v91 = ((u(*)())v86)(v87, v88, v89, v90);
- return 0;
+ v91;
+ return 0UL;
}
u ztranslate_pattern(u vc, u vic, u vfail, u vn) {
u vcount = 0;
@@ -32727,10 +35714,10 @@ u ztranslate_pattern(u vc, u vic, u vfail, u vn) {
u v535 = 0;
u v536 = 0;
u v537 = 0;
-b2: if (*(u*)vn != 93) goto b6;
- vd = *(u*)(vn + 16);
- if (!*(u*)(vd + 8)) goto b11;
- v14 = 0;
+b2: if (*(u*)(vn + 0UL) != 93UL) goto b6;
+ vd = *(u*)(vn + 16UL);
+ if (!*(u*)(vd + 8UL)) goto b11;
+ v14 = 0UL;
b12: if (!v14) goto b9;
v15 = (u)ztranslate_pattern;
v16 = vc;
@@ -32738,7 +35725,8 @@ b12: if (!v14) goto b9;
v18 = vfail;
v19 = vd;
v20 = ((u(*)())v15)(v16, v17, v18, v19);
-b3: return 0;
+ v20;
+b7:b4: return 0UL;
b9: v21 = (u)zmkirblock;
v22 = vic;
v23 = ((u(*)())v21)(v22);
@@ -32752,9 +35740,10 @@ b9: v21 = (u)zmkirblock;
v29 = vnext;
v30 = vnext;
v31 = ((u(*)())v27)(v28, v29, v30);
+ v31;
b17: if (!vd) goto b23;
- v32 = 0;
-b24: if (!v32) goto b19;
+ v32 = 0UL;
+b24: if (!v32) goto b21;
v69 = (u)zmkirvarop;
v70 = vic;
v71 = (u)"c";
@@ -32762,7 +35751,7 @@ b24: if (!v32) goto b19;
va = v72;
v73 = (u)zmkirarg;
v74 = vic;
- v75 = 0;
+ v75 = 0UL;
v76 = va;
v77 = ((u(*)())v73)(v74, v75, v76);
vo = v77;
@@ -32770,6 +35759,7 @@ b24: if (!v32) goto b19;
v79 = vic;
v80 = vo;
v81 = ((u(*)())v78)(v79, v80);
+ v81;
v82 = (u)zmkirfuncref;
v83 = vic;
v84 = (u)"fail";
@@ -32778,13 +35768,15 @@ b24: if (!v32) goto b19;
v86 = (u)zircall;
v87 = vic;
v88 = va;
- v89 = 1;
+ v89 = 1UL;
v90 = ((u(*)())v86)(v87, v88, v89);
+ v90;
v91 = (u)zirjump;
v92 = vic;
v93 = vfail;
v94 = vout;
v95 = ((u(*)())v91)(v92, v93, v94);
+ v95;
v96 = (u)zmkirvarop;
v97 = vic;
v98 = (u)"c";
@@ -32792,7 +35784,7 @@ b24: if (!v32) goto b19;
va = v99;
v100 = (u)zmkirarg;
v101 = vic;
- v102 = 0;
+ v102 = 0UL;
v103 = va;
v104 = ((u(*)())v100)(v101, v102, v103);
vo = v104;
@@ -32800,6 +35792,7 @@ b24: if (!v32) goto b19;
v106 = vic;
v107 = vo;
v108 = ((u(*)())v105)(v106, v107);
+ v108;
v109 = (u)zmkirfuncref;
v110 = vic;
v111 = (u)"commit";
@@ -32808,10 +35801,11 @@ b24: if (!v32) goto b19;
v113 = (u)zircall;
v114 = vic;
v115 = va;
- v116 = 1;
+ v116 = 1UL;
v117 = ((u(*)())v113)(v114, v115, v116);
- goto b3;
-b19: v33 = (u)zmkirblock;
+ v117;
+ goto b7;
+b21: v33 = (u)zmkirblock;
v34 = vic;
v35 = ((u(*)())v33)(v34);
vnext = v35;
@@ -32822,7 +35816,7 @@ b19: v33 = (u)zmkirblock;
va = v39;
v40 = (u)zmkirarg;
v41 = vic;
- v42 = 0;
+ v42 = 0UL;
v43 = va;
v44 = ((u(*)())v40)(v41, v42, v43);
vo = v44;
@@ -32830,6 +35824,7 @@ b19: v33 = (u)zmkirblock;
v46 = vic;
v47 = vo;
v48 = ((u(*)())v45)(v46, v47);
+ v48;
v49 = (u)zmkirfuncref;
v50 = vic;
v51 = (u)"choice";
@@ -32838,57 +35833,62 @@ b19: v33 = (u)zmkirblock;
v53 = (u)zircall;
v54 = vic;
v55 = va;
- v56 = 1;
+ v56 = 1UL;
v57 = ((u(*)())v53)(v54, v55, v56);
+ v57;
v58 = (u)ztranslate_pattern;
v59 = vc;
v60 = vic;
v61 = vnext;
v62 = vd;
v63 = ((u(*)())v58)(v59, v60, v61, v62);
+ v63;
v64 = (u)zirjump;
v65 = vic;
v66 = vout;
v67 = vnext;
v68 = ((u(*)())v64)(v65, v66, v67);
- vd = *(u*)(vd + 8);
+ v68;
+ vd = *(u*)(vd + 8UL);
goto b17;
-b23: v32 = 1;
+b23: v32 = 1UL;
goto b24;
-b11: v14 = 1;
+b11: v14 = 1UL;
goto b12;
-b6: if (*(u*)vn != 94) goto b45;
- vd = *(u*)(vn + 16);
+b6: if (*(u*)(vn + 0UL) != 94UL) goto b45;
+ vd = *(u*)(vn + 16UL);
v118 = (u)ztranslate_pattern;
v119 = vc;
v120 = vic;
v121 = vfail;
v122 = vd;
v123 = ((u(*)())v118)(v119, v120, v121, v122);
- vd = *(u*)(vd + 8);
+ v123;
+ vd = *(u*)(vd + 8UL);
b47: if (!vd) goto b53;
- v124 = 0;
-b54: if (!v124) goto b49;
- goto b3;
-b49: v125 = (u)ztranslate_pattern;
+ v124 = 0UL;
+b54: if (!v124) goto b51;
+ goto b4;
+b51: v125 = (u)ztranslate_pattern;
v126 = vc;
v127 = vic;
v128 = vfail;
v129 = vd;
v130 = ((u(*)())v125)(v126, v127, v128, v129);
- vd = *(u*)(vd + 8);
+ v130;
+ vd = *(u*)(vd + 8UL);
goto b47;
-b53: v124 = 1;
+b53: v124 = 1UL;
goto b54;
-b45: if (*(u*)vn != 96) goto b57;
+b45: if (*(u*)(vn + 0UL) != 96UL) goto b57;
v131 = (u)zdecode_look;
v132 = vn;
v133 = ((u(*)())v131)(v132);
vlook = v133;
- vd = *(u*)(vn + 16);
- if (*(u*)vd != 95) goto b59;
- vd = *(u*)(vd + 8);
-b59: if (vlook != 2) goto b64;
+ vd = *(u*)(vn + 16UL);
+ if (*(u*)(vd + 0UL) != 95UL) goto b61;
+ vd = *(u*)(vd + 8UL);
+b59: if (vlook != 2UL) goto b64;
v134 = (u)zmkirblock;
v135 = vic;
v136 = ((u(*)())v134)(v135);
@@ -32904,7 +35904,7 @@ b59: if (vlook != 2) goto b64;
va = v143;
v144 = (u)zmkirarg;
v145 = vic;
- v146 = 0;
+ v146 = 0UL;
v147 = va;
v148 = ((u(*)())v144)(v145, v146, v147);
vo = v148;
@@ -32912,6 +35912,7 @@ b59: if (vlook != 2) goto b64;
v150 = vic;
v151 = vo;
v152 = ((u(*)())v149)(v150, v151);
+ v152;
v153 = (u)zmkirfuncref;
v154 = vic;
v155 = (u)"choice";
@@ -32920,14 +35921,16 @@ b59: if (vlook != 2) goto b64;
v157 = (u)zircall;
v158 = vic;
v159 = va;
- v160 = 1;
+ v160 = 1UL;
v161 = ((u(*)())v157)(v158, v159, v160);
+ v161;
v162 = (u)ztranslate_pattern;
v163 = vc;
v164 = vic;
v165 = vnext;
v166 = vd;
v167 = ((u(*)())v162)(v163, v164, v165, v166);
+ v167;
v168 = (u)zmkirvarop;
v169 = vic;
v170 = (u)"c";
@@ -32935,7 +35938,7 @@ b59: if (vlook != 2) goto b64;
va = v171;
v172 = (u)zmkirarg;
v173 = vic;
- v174 = 0;
+ v174 = 0UL;
v175 = va;
v176 = ((u(*)())v172)(v173, v174, v175);
vo = v176;
@@ -32943,6 +35946,7 @@ b59: if (vlook != 2) goto b64;
v178 = vic;
v179 = vo;
v180 = ((u(*)())v177)(v178, v179);
+ v180;
v181 = (u)zmkirfuncref;
v182 = vic;
v183 = (u)"fail";
@@ -32951,13 +35955,15 @@ b59: if (vlook != 2) goto b64;
v185 = (u)zircall;
v186 = vic;
v187 = va;
- v188 = 1;
+ v188 = 1UL;
v189 = ((u(*)())v185)(v186, v187, v188);
+ v189;
v190 = (u)zirjump;
v191 = vic;
v192 = vout;
v193 = vnext;
v194 = ((u(*)())v190)(v191, v192, v193);
+ v194;
v195 = (u)zmkirvarop;
v196 = vic;
v197 = (u)"c";
@@ -32965,7 +35971,7 @@ b59: if (vlook != 2) goto b64;
va = v198;
v199 = (u)zmkirarg;
v200 = vic;
- v201 = 0;
+ v201 = 0UL;
v202 = va;
v203 = ((u(*)())v199)(v200, v201, v202);
vo = v203;
@@ -32973,6 +35979,7 @@ b59: if (vlook != 2) goto b64;
v205 = vic;
v206 = vo;
v207 = ((u(*)())v204)(v205, v206);
+ v207;
v208 = (u)zmkirfuncref;
v209 = vic;
v210 = (u)"fail";
@@ -32981,15 +35988,17 @@ b59: if (vlook != 2) goto b64;
v212 = (u)zircall;
v213 = vic;
v214 = va;
- v215 = 1;
+ v215 = 1UL;
v216 = ((u(*)())v212)(v213, v214, v215);
+ v216;
v217 = (u)zirjump;
v218 = vic;
v219 = vfail;
v220 = vout;
v221 = ((u(*)())v217)(v218, v219, v220);
- goto b3;
-b64: if (vlook != 1) goto b86;
+ v221;
+b62: goto b4;
+b64: if (vlook != 1UL) goto b86;
v222 = (u)zmkirblock;
v223 = vic;
v224 = ((u(*)())v222)(v223);
@@ -33001,7 +36010,7 @@ b64: if (vlook != 1) goto b86;
va = v228;
v229 = (u)zmkirarg;
v230 = vic;
- v231 = 0;
+ v231 = 0UL;
v232 = va;
v233 = ((u(*)())v229)(v230, v231, v232);
vo = v233;
@@ -33009,6 +36018,7 @@ b64: if (vlook != 1) goto b86;
v235 = vic;
v236 = vo;
v237 = ((u(*)())v234)(v235, v236);
+ v237;
v238 = (u)zmkirfuncref;
v239 = vic;
v240 = (u)"choice";
@@ -33017,14 +36027,16 @@ b64: if (vlook != 1) goto b86;
v242 = (u)zircall;
v243 = vic;
v244 = va;
- v245 = 1;
+ v245 = 1UL;
v246 = ((u(*)())v242)(v243, v244, v245);
+ v246;
v247 = (u)ztranslate_pattern;
v248 = vc;
v249 = vic;
v250 = vout;
v251 = vd;
v252 = ((u(*)())v247)(v248, v249, v250, v251);
+ v252;
v253 = (u)zmkirvarop;
v254 = vic;
v255 = (u)"c";
@@ -33032,7 +36044,7 @@ b64: if (vlook != 1) goto b86;
va = v256;
v257 = (u)zmkirarg;
v258 = vic;
- v259 = 0;
+ v259 = 0UL;
v260 = va;
v261 = ((u(*)())v257)(v258, v259, v260);
vo = v261;
@@ -33040,6 +36052,7 @@ b64: if (vlook != 1) goto b86;
v263 = vic;
v264 = vo;
v265 = ((u(*)())v262)(v263, v264);
+ v265;
v266 = (u)zmkirfuncref;
v267 = vic;
v268 = (u)"fail";
@@ -33048,8 +36061,9 @@ b64: if (vlook != 1) goto b86;
v270 = (u)zircall;
v271 = vic;
v272 = va;
- v273 = 1;
+ v273 = 1UL;
v274 = ((u(*)())v270)(v271, v272, v273);
+ v274;
v275 = (u)zmkirvarop;
v276 = vic;
v277 = (u)"c";
@@ -33057,7 +36071,7 @@ b64: if (vlook != 1) goto b86;
va = v278;
v279 = (u)zmkirarg;
v280 = vic;
- v281 = 0;
+ v281 = 0UL;
v282 = va;
v283 = ((u(*)())v279)(v280, v281, v282);
vo = v283;
@@ -33065,6 +36079,7 @@ b64: if (vlook != 1) goto b86;
v285 = vic;
v286 = vo;
v287 = ((u(*)())v284)(v285, v286);
+ v287;
v288 = (u)zmkirfuncref;
v289 = vic;
v290 = (u)"fail";
@@ -33073,32 +36088,37 @@ b64: if (vlook != 1) goto b86;
v292 = (u)zircall;
v293 = vic;
v294 = va;
- v295 = 1;
+ v295 = 1UL;
v296 = ((u(*)())v292)(v293, v294, v295);
+ v296;
v297 = (u)zirjump;
v298 = vic;
v299 = vfail;
v300 = vout;
v301 = ((u(*)())v297)(v298, v299, v300);
- goto b3;
-b86: if (vlook != 0) goto b106;
+ v301;
+ goto b62;
+b86: if (vlook != 0UL) goto b106;
v302 = (u)ztranslate_pattern;
v303 = vc;
v304 = vic;
v305 = vfail;
v306 = vd;
v307 = ((u(*)())v302)(v303, v304, v305, v306);
- goto b3;
+ v307;
+ goto b62;
b106: v308 = (u)zdie;
v309 = (u)"invalid lookop";
v310 = ((u(*)())v308)(v309);
- goto b3;
-b57: if (*(u*)vn != 98) goto b110;
+ v310;
+ goto b62;
+b61: goto b59;
+b57: if (*(u*)(vn + 0UL) != 98UL) goto b110;
v311 = (u)zdecode_count;
v312 = vn;
v313 = ((u(*)())v311)(v312);
vcount = v313;
- if (vcount != 0) goto b114;
+ if (vcount != 0UL) goto b114;
v314 = (u)zmkirvarop;
v315 = vic;
v316 = (u)"c";
@@ -33106,7 +36126,7 @@ b57: if (*(u*)vn != 98) goto b110;
va = v317;
v318 = (u)zmkirarg;
v319 = vic;
- v320 = 0;
+ v320 = 0UL;
v321 = va;
v322 = ((u(*)())v318)(v319, v320, v321);
vo = v322;
@@ -33114,6 +36134,7 @@ b57: if (*(u*)vn != 98) goto b110;
v324 = vic;
v325 = vo;
v326 = ((u(*)())v323)(v324, v325);
+ v326;
v327 = (u)zmkirfuncref;
v328 = vic;
v329 = (u)"choice";
@@ -33122,8 +36143,9 @@ b57: if (*(u*)vn != 98) goto b110;
v331 = (u)zircall;
v332 = vic;
v333 = va;
- v334 = 1;
+ v334 = 1UL;
v335 = ((u(*)())v331)(v332, v333, v334);
+ v335;
v336 = (u)zmkirblock;
v337 = vic;
v338 = ((u(*)())v336)(v337);
@@ -33132,8 +36154,9 @@ b57: if (*(u*)vn != 98) goto b110;
v340 = vc;
v341 = vic;
v342 = vout;
- v343 = *(u*)(vn + 16);
+ v343 = *(u*)(vn + 16UL);
v344 = ((u(*)())v339)(v340, v341, v342, v343);
+ v344;
v345 = (u)zmkirvarop;
v346 = vic;
v347 = (u)"c";
@@ -33141,7 +36164,7 @@ b57: if (*(u*)vn != 98) goto b110;
va = v348;
v349 = (u)zmkirarg;
v350 = vic;
- v351 = 0;
+ v351 = 0UL;
v352 = va;
v353 = ((u(*)())v349)(v350, v351, v352);
vo = v353;
@@ -33149,6 +36172,7 @@ b57: if (*(u*)vn != 98) goto b110;
v355 = vic;
v356 = vo;
v357 = ((u(*)())v354)(v355, v356);
+ v357;
v358 = (u)zmkirfuncref;
v359 = vic;
v360 = (u)"commit";
@@ -33157,23 +36181,26 @@ b57: if (*(u*)vn != 98) goto b110;
v362 = (u)zircall;
v363 = vic;
v364 = va;
- v365 = 1;
+ v365 = 1UL;
v366 = ((u(*)())v362)(v363, v364, v365);
+ v366;
v367 = (u)zirjump;
v368 = vic;
v369 = vout;
v370 = vout;
v371 = ((u(*)())v367)(v368, v369, v370);
- goto b3;
-b114: if (vcount != 1) goto b129;
+ v371;
+b112: goto b4;
+b114: if (vcount != 1UL) goto b129;
v372 = (u)ztranslate_pattern;
v373 = vc;
v374 = vic;
v375 = vfail;
- v376 = *(u*)(vn + 16);
+ v376 = *(u*)(vn + 16UL);
v377 = ((u(*)())v372)(v373, v374, v375, v376);
- goto b3;
-b129: if (vcount != 2) goto b132;
+ v377;
+ goto b112;
+b129: if (vcount != 2UL) goto b132;
b1: v378 = (u)zmkirblock;
v379 = vic;
v380 = ((u(*)())v378)(v379);
@@ -33187,6 +36214,7 @@ b1: v378 = (u)zmkirblock;
v386 = vnext;
v387 = vnext;
v388 = ((u(*)())v384)(v385, v386, v387);
+ v388;
v389 = (u)zmkirvarop;
v390 = vic;
v391 = (u)"c";
@@ -33194,7 +36222,7 @@ b1: v378 = (u)zmkirblock;
va = v392;
v393 = (u)zmkirarg;
v394 = vic;
- v395 = 0;
+ v395 = 0UL;
v396 = va;
v397 = ((u(*)())v393)(v394, v395, v396);
vo = v397;
@@ -33202,6 +36230,7 @@ b1: v378 = (u)zmkirblock;
v399 = vic;
v400 = vo;
v401 = ((u(*)())v398)(v399, v400);
+ v401;
v402 = (u)zmkirfuncref;
v403 = vic;
v404 = (u)"choice";
@@ -33210,14 +36239,16 @@ b1: v378 = (u)zmkirblock;
v406 = (u)zircall;
v407 = vic;
v408 = va;
- v409 = 1;
+ v409 = 1UL;
v410 = ((u(*)())v406)(v407, v408, v409);
+ v410;
v411 = (u)ztranslate_pattern;
v412 = vc;
v413 = vic;
v414 = vout;
- v415 = *(u*)(vn + 16);
+ v415 = *(u*)(vn + 16UL);
v416 = ((u(*)())v411)(v412, v413, v414, v415);
+ v416;
v417 = (u)zmkirvarop;
v418 = vic;
v419 = (u)"c";
@@ -33225,7 +36256,7 @@ b1: v378 = (u)zmkirblock;
va = v420;
v421 = (u)zmkirarg;
v422 = vic;
- v423 = 0;
+ v423 = 0UL;
v424 = va;
v425 = ((u(*)())v421)(v422, v423, v424);
vo = v425;
@@ -33233,6 +36264,7 @@ b1: v378 = (u)zmkirblock;
v427 = vic;
v428 = vo;
v429 = ((u(*)())v426)(v427, v428);
+ v429;
v430 = (u)zmkirfuncref;
v431 = vic;
v432 = (u)"commit";
@@ -33241,42 +36273,47 @@ b1: v378 = (u)zmkirblock;
v434 = (u)zircall;
v435 = vic;
v436 = va;
- v437 = 1;
+ v437 = 1UL;
v438 = ((u(*)())v434)(v435, v436, v437);
+ v438;
v439 = (u)zirjump;
v440 = vic;
v441 = vnext;
v442 = vout;
v443 = ((u(*)())v439)(v440, v441, v442);
- goto b3;
-b132: if (vcount != 3) goto b149;
+ v443;
+ goto b112;
+b132: if (vcount != 3UL) goto b149;
v444 = (u)ztranslate_pattern;
v445 = vc;
v446 = vic;
v447 = vfail;
- v448 = *(u*)(vn + 16);
+ v448 = *(u*)(vn + 16UL);
v449 = ((u(*)())v444)(v445, v446, v447, v448);
+ v449;
goto b1;
b149: v450 = (u)zdie;
v451 = (u)"invalid countop";
v452 = ((u(*)())v450)(v451);
- goto b3;
-b110: if (*(u*)vn != 99) goto b153;
+ v452;
+ goto b112;
+b110: if (*(u*)(vn + 0UL) != 99UL) goto b153;
v453 = (u)ztranslate_pattern;
v454 = vc;
v455 = vic;
v456 = vfail;
- v457 = *(u*)(vn + 16);
+ v457 = *(u*)(vn + 16UL);
v458 = ((u(*)())v453)(v454, v455, v456, v457);
- goto b3;
-b153: if (*(u*)vn != 100) goto b156;
+ v458;
+ goto b4;
+b153: if (*(u*)(vn + 0UL) != 100UL) goto b156;
v459 = (u)zmkirblock;
v460 = vic;
v461 = ((u(*)())v459)(v460);
vnext = v461;
v462 = (u)zmktype0;
- v463 = *(u*)(vc + 16);
- v464 = 2;
+ v463 = *(u*)(vc + 16UL);
+ v464 = 2UL;
v465 = ((u(*)())v462)(v463, v464);
vt = v465;
v466 = (u)zmkirtmp;
@@ -33291,7 +36328,7 @@ b153: if (*(u*)vn != 100) goto b156;
va = v473;
v474 = (u)zmkirarg;
v475 = vic;
- v476 = 0;
+ v476 = 0UL;
v477 = va;
v478 = ((u(*)())v474)(v475, v476, v477);
vo = v478;
@@ -33299,6 +36336,7 @@ b153: if (*(u*)vn != 100) goto b156;
v480 = vic;
v481 = vo;
v482 = ((u(*)())v479)(v480, v481);
+ v482;
v483 = (u)zmkirretval;
v484 = vic;
v485 = vret;
@@ -33309,6 +36347,7 @@ b153: if (*(u*)vn != 100) goto b156;
v489 = vic;
v490 = vo;
v491 = ((u(*)())v488)(v489, v490);
+ v491;
v492 = (u)zmkirfuncref;
v493 = vic;
v494 = (u)"any";
@@ -33317,17 +36356,18 @@ b153: if (*(u*)vn != 100) goto b156;
v496 = (u)zircall;
v497 = vic;
v498 = va;
- v499 = 1;
+ v499 = 1UL;
v500 = ((u(*)())v496)(v497, v498, v499);
+ v500;
va = vret;
v501 = (u)zmkirconst;
v502 = vic;
- v503 = 0;
+ v503 = 0UL;
v504 = ((u(*)())v501)(v502, v503);
vb = v504;
v505 = (u)zmkirop;
v506 = vic;
- v507 = 22;
+ v507 = 22UL;
v508 = va;
v509 = vb;
v510 = ((u(*)())v505)(v506, v507, v508, v509);
@@ -33338,38 +36378,43 @@ b153: if (*(u*)vn != 100) goto b156;
v514 = vfail;
v515 = vnext;
v516 = ((u(*)())v511)(v512, v513, v514, v515);
- goto b3;
-b156: if (*(u*)vn != 101) goto b171;
+ v516;
+ goto b4;
+b156: if (*(u*)(vn + 0UL) != 101UL) goto b171;
v517 = (u)ztranslate_literal;
v518 = vc;
v519 = vic;
v520 = vfail;
v521 = vn;
v522 = ((u(*)())v517)(v518, v519, v520, v521);
- goto b3;
-b171: if (*(u*)vn != 102) goto b174;
+ v522;
+ goto b4;
+b171: if (*(u*)(vn + 0UL) != 102UL) goto b174;
v523 = (u)ztranslate_charset;
v524 = vc;
v525 = vic;
v526 = vfail;
v527 = vn;
v528 = ((u(*)())v523)(v524, v525, v526, v527);
- goto b3;
-b174: if (*(u*)vn != 103) goto b177;
+ v528;
+ goto b4;
+b174: if (*(u*)(vn + 0UL) != 103UL) goto b177;
v529 = (u)ztranslate_call;
v530 = vc;
v531 = vic;
v532 = vfail;
v533 = vn;
v534 = ((u(*)())v529)(v530, v531, v532, v533);
- goto b3;
-b177: if (*(u*)vn != 89) goto b180;
- vn = *(u*)(vn + 8);
+ v534;
+ goto b4;
+b177: if (*(u*)(vn + 0UL) != 89UL) goto b180;
+ vn = *(u*)(vn + 8UL);
goto b2;
b180: v535 = (u)zdie;
v536 = (u)"invalid tag";
v537 = ((u(*)())v535)(v536);
- goto b3;
+ v537;
+ goto b4;
}
u ztranslate_rule(u vc, u vi, u vtag, u vv) {
u vd = 0;
@@ -33378,9 +36423,11 @@ u ztranslate_rule(u vc, u vi, u vtag, u vv) {
u vret_type = 0;
u vfunc_type = 0;
u vic = 0;
+ u vnext = 0;
u vfail = 0;
u vo = 0;
u va = 0;
+ u vb = 0;
u vname = 0;
u vtag_len = 0;
u vname_len = 0;
@@ -33571,61 +36618,63 @@ u ztranslate_rule(u vc, u vi, u vtag, u vv) {
v19 = vtag;
v20 = ((u(*)())v18)(v19);
vtag_len = v20;
- vname_len = vtag_len + 4;
+ vname_len = vtag_len + 4UL;
v21 = (u)zalloc;
- v22 = *(u*)vc;
- v23 = vname_len + 1;
+ v22 = *(u*)(vc + 0UL);
+ v23 = vname_len + 1UL;
v24 = ((u(*)())v21)(v22, v23);
vname = v24;
v25 = (u)zmemcpy;
v26 = vname;
v27 = (u)"peg_";
- v28 = 4;
+ v28 = 4UL;
v29 = ((u(*)())v25)(v26, v27, v28);
+ v29;
v30 = (u)zmemcpy;
- v31 = vname + 4;
+ v31 = vname + 4UL * 1UL;
v32 = vtag;
v33 = vtag_len;
v34 = ((u(*)())v30)(v31, v32, v33);
- *(b*)(vname + vname_len) = 0;
+ v34;
+ *(b*)(vname + vname_len * 1UL) = 0UL;
v35 = (u)zfind;
- v36 = *(u*)(vc + 16);
+ v36 = *(u*)(vc + 16UL);
v37 = (u)"peg";
- v38 = 0;
- v39 = 1;
+ v38 = 0UL;
+ v39 = 1UL;
v40 = ((u(*)())v35)(v36, v37, v38, v39);
vd = v40;
v41 = (u)zmktype_struct;
- v42 = *(u*)(vc + 16);
+ v42 = *(u*)(vc + 16UL);
v43 = vd;
v44 = ((u(*)())v41)(v42, v43);
varg1_type = v44;
v45 = (u)zmktype1;
- v46 = *(u*)(vc + 16);
- v47 = 4;
+ v46 = *(u*)(vc + 16UL);
+ v47 = 4UL;
v48 = varg1_type;
v49 = ((u(*)())v45)(v46, v47, v48);
varg1_type = v49;
v50 = (u)zmktype1;
- v51 = *(u*)(vc + 16);
- v52 = 5;
+ v51 = *(u*)(vc + 16UL);
+ v52 = 5UL;
v53 = varg1_type;
v54 = ((u(*)())v50)(v51, v52, v53);
vargs_type = v54;
v55 = (u)zmktype0;
- v56 = *(u*)(vc + 16);
- v57 = 2;
+ v56 = *(u*)(vc + 16UL);
+ v57 = 2UL;
v58 = ((u(*)())v55)(v56, v57);
vret_type = v58;
v59 = (u)zmktype2;
- v60 = *(u*)(vc + 16);
- v61 = 6;
+ v60 = *(u*)(vc + 16UL);
+ v61 = 6UL;
v62 = vret_type;
v63 = vargs_type;
v64 = ((u(*)())v59)(v60, v61, v62, v63);
vfunc_type = v64;
v65 = (u)zmkirfunc;
- v66 = *(u*)(vc + 16);
+ v66 = *(u*)(vc + 16UL);
v67 = vname;
v68 = ((u(*)())v65)(v66, v67);
vic = v68;
@@ -33634,6 +36683,7 @@ u ztranslate_rule(u vc, u vi, u vtag, u vv) {
v71 = (u)"c";
v72 = varg1_type;
v73 = ((u(*)())v69)(v70, v71, v72);
+ v73;
v74 = (u)zmkirblock;
v75 = vic;
v76 = ((u(*)())v74)(v75);
@@ -33645,7 +36695,7 @@ u ztranslate_rule(u vc, u vi, u vtag, u vv) {
va = v80;
v81 = (u)zmkirarg;
v82 = vic;
- v83 = 0;
+ v83 = 0UL;
v84 = va;
v85 = ((u(*)())v81)(v82, v83, v84);
vo = v85;
@@ -33653,6 +36703,7 @@ u ztranslate_rule(u vc, u vi, u vtag, u vv) {
v87 = vic;
v88 = vo;
v89 = ((u(*)())v86)(v87, v88);
+ v89;
v90 = (u)zmkirconst;
v91 = vic;
v92 = vi;
@@ -33660,7 +36711,7 @@ u ztranslate_rule(u vc, u vi, u vtag, u vv) {
va = v93;
v94 = (u)zmkirarg;
v95 = vic;
- v96 = 1;
+ v96 = 1UL;
v97 = va;
v98 = ((u(*)())v94)(v95, v96, v97);
vo = v98;
@@ -33668,6 +36719,7 @@ u ztranslate_rule(u vc, u vi, u vtag, u vv) {
v100 = vic;
v101 = vo;
v102 = ((u(*)())v99)(v100, v101);
+ v102;
v103 = (u)zmkirfuncref;
v104 = vic;
v105 = (u)"enter";
@@ -33676,14 +36728,16 @@ u ztranslate_rule(u vc, u vi, u vtag, u vv) {
v107 = (u)zircall;
v108 = vic;
v109 = va;
- v110 = 2;
+ v110 = 2UL;
v111 = ((u(*)())v107)(v108, v109, v110);
+ v111;
v112 = (u)ztranslate_pattern;
v113 = vc;
v114 = vic;
v115 = vfail;
- v116 = *(u*)(*(u*)(vv + 16) + 8);
+ v116 = *(u*)(*(u*)(vv + 16UL) + 8UL);
v117 = ((u(*)())v112)(v113, v114, v115, v116);
+ v117;
v118 = (u)zmkirvarop;
v119 = vic;
v120 = (u)"c";
@@ -33691,7 +36745,7 @@ u ztranslate_rule(u vc, u vi, u vtag, u vv) {
va = v121;
v122 = (u)zmkirarg;
v123 = vic;
- v124 = 0;
+ v124 = 0UL;
v125 = va;
v126 = ((u(*)())v122)(v123, v124, v125);
vo = v126;
@@ -33699,6 +36753,7 @@ u ztranslate_rule(u vc, u vi, u vtag, u vv) {
v128 = vic;
v129 = vo;
v130 = ((u(*)())v127)(v128, v129);
+ v130;
v131 = (u)zmkirconst;
v132 = vic;
v133 = vi;
@@ -33706,7 +36761,7 @@ u ztranslate_rule(u vc, u vi, u vtag, u vv) {
va = v134;
v135 = (u)zmkirarg;
v136 = vic;
- v137 = 1;
+ v137 = 1UL;
v138 = va;
v139 = ((u(*)())v135)(v136, v137, v138);
vo = v139;
@@ -33714,6 +36769,7 @@ u ztranslate_rule(u vc, u vi, u vtag, u vv) {
v141 = vic;
v142 = vo;
v143 = ((u(*)())v140)(v141, v142);
+ v143;
v144 = (u)zmkirfuncref;
v145 = vic;
v146 = (u)"leave";
@@ -33722,22 +36778,25 @@ u ztranslate_rule(u vc, u vi, u vtag, u vv) {
v148 = (u)zircall;
v149 = vic;
v150 = va;
- v151 = 2;
+ v151 = 2UL;
v152 = ((u(*)())v148)(v149, v150, v151);
+ v152;
v153 = (u)zmkirconst;
v154 = vic;
- v155 = 1;
+ v155 = 1UL;
v156 = ((u(*)())v153)(v154, v155);
vo = v156;
v157 = (u)zirreturn;
v158 = vic;
v159 = vo;
v160 = ((u(*)())v157)(v158, v159);
+ v160;
v161 = (u)zirjump;
v162 = vic;
v163 = vfail;
v164 = vfail;
v165 = ((u(*)())v161)(v162, v163, v164);
+ v165;
v166 = (u)zmkirvarop;
v167 = vic;
v168 = (u)"c";
@@ -33745,7 +36804,7 @@ u ztranslate_rule(u vc, u vi, u vtag, u vv) {
va = v169;
v170 = (u)zmkirarg;
v171 = vic;
- v172 = 0;
+ v172 = 0UL;
v173 = va;
v174 = ((u(*)())v170)(v171, v172, v173);
vo = v174;
@@ -33753,6 +36812,7 @@ u ztranslate_rule(u vc, u vi, u vtag, u vv) {
v176 = vic;
v177 = vo;
v178 = ((u(*)())v175)(v176, v177);
+ v178;
v179 = (u)zmkirfuncref;
v180 = vic;
v181 = (u)"fail";
@@ -33761,23 +36821,26 @@ u ztranslate_rule(u vc, u vi, u vtag, u vv) {
v183 = (u)zircall;
v184 = vic;
v185 = va;
- v186 = 1;
+ v186 = 1UL;
v187 = ((u(*)())v183)(v184, v185, v186);
+ v187;
v188 = (u)zmkirconst;
v189 = vic;
- v190 = 0;
+ v190 = 0UL;
v191 = ((u(*)())v188)(v189, v190);
vo = v191;
v192 = (u)zirreturn;
v193 = vic;
v194 = vo;
v195 = ((u(*)())v192)(v193, v194);
+ v195;
v196 = (u)zdefine_ir_func;
- v197 = *(u*)(vc + 16);
+ v197 = *(u*)(vc + 16UL);
v198 = vic;
v199 = vfunc_type;
v200 = ((u(*)())v196)(v197, v198, v199);
- return 0;
+ v200;
+ return 0UL;
}
u ztranslate_rules(u vc, u vtags, u vnodes, u vnum_rules) {
u vi = 0;
@@ -33787,16 +36850,17 @@ u ztranslate_rules(u vc, u vtags, u vnodes, u vnum_rules) {
u v8 = 0;
u v9 = 0;
u v10 = 0;
- vi = 0;
-b1: if (vi != vnum_rules) goto b3;
- return 0;
-b3: v5 = (u)ztranslate_rule;
+ vi = 0UL;
+b1: if (vi != vnum_rules) goto b5;
+ return 0UL;
+b5: v5 = (u)ztranslate_rule;
v6 = vc;
v7 = vi;
- v8 = *(u*)(vtags + vi * 8);
- v9 = *(u*)(vnodes + vi * 8);
+ v8 = *(u*)(vtags + vi * 8UL);
+ v9 = *(u*)(vnodes + vi * 8UL);
v10 = ((u(*)())v5)(v6, v7, v8, v9);
- vi = vi + 1;
+ v10;
+ vi = vi + 1UL;
goto b1;
}
u ztranslate_tag_to_str(u vc, u vtags, u vnum_rules) {
@@ -33913,40 +36977,40 @@ u ztranslate_tag_to_str(u vc, u vtags, u vnum_rules) {
v17 = (u)zmake_tag;
v18 = vc;
v19 = (u)"tag_to_str";
- v20 = 10;
+ v20 = 10UL;
v21 = ((u(*)())v17)(v18, v19, v20);
vname = v21;
v22 = (u)zmktype0;
- v23 = *(u*)(vc + 16);
- v24 = 2;
+ v23 = *(u*)(vc + 16UL);
+ v24 = 2UL;
v25 = ((u(*)())v22)(v23, v24);
varg1_type = v25;
v26 = (u)zmktype1;
- v27 = *(u*)(vc + 16);
- v28 = 5;
+ v27 = *(u*)(vc + 16UL);
+ v28 = 5UL;
v29 = varg1_type;
v30 = ((u(*)())v26)(v27, v28, v29);
vargs_type = v30;
v31 = (u)zmktype0;
- v32 = *(u*)(vc + 16);
- v33 = 3;
+ v32 = *(u*)(vc + 16UL);
+ v33 = 3UL;
v34 = ((u(*)())v31)(v32, v33);
vret_type = v34;
v35 = (u)zmktype1;
- v36 = *(u*)(vc + 16);
- v37 = 4;
+ v36 = *(u*)(vc + 16UL);
+ v37 = 4UL;
v38 = vret_type;
v39 = ((u(*)())v35)(v36, v37, v38);
vret_type = v39;
v40 = (u)zmktype2;
- v41 = *(u*)(vc + 16);
- v42 = 6;
+ v41 = *(u*)(vc + 16UL);
+ v42 = 6UL;
v43 = vret_type;
v44 = vargs_type;
v45 = ((u(*)())v40)(v41, v42, v43, v44);
vfunc_type = v45;
v46 = (u)zmkirfunc;
- v47 = *(u*)(vc + 16);
+ v47 = *(u*)(vc + 16UL);
v48 = vname;
v49 = ((u(*)())v46)(v47, v48);
vic = v49;
@@ -33955,24 +37019,27 @@ u ztranslate_tag_to_str(u vc, u vtags, u vnum_rules) {
v52 = (u)"tag";
v53 = varg1_type;
v54 = ((u(*)())v50)(v51, v52, v53);
- vi = 0;
-b9: if (vi != vnum_rules) goto b11;
+ v54;
+ vi = 0UL;
+b9: if (vi != vnum_rules) goto b13;
v100 = (u)zmkirconst;
v101 = vic;
- v102 = 0;
+ v102 = 0UL;
v103 = ((u(*)())v100)(v101, v102);
vo = v103;
v104 = (u)zirreturn;
v105 = vic;
v106 = vo;
v107 = ((u(*)())v104)(v105, v106);
+ v107;
v108 = (u)zdefine_ir_func;
- v109 = *(u*)(vc + 16);
+ v109 = *(u*)(vc + 16UL);
v110 = vic;
v111 = vfunc_type;
v112 = ((u(*)())v108)(v109, v110, v111);
- return 0;
-b11: vtag = *(u*)(vtags + vi * 8);
+ v112;
+ return 0UL;
+b13: vtag = *(u*)(vtags + vi * 8UL);
v55 = (u)zstrlen;
v56 = vtag;
v57 = ((u(*)())v55)(v56);
@@ -33987,12 +37054,12 @@ b11: vtag = *(u*)(vtags + vi * 8);
vnext = v63;
v64 = (u)zmkirop;
v65 = vic;
- v66 = 0;
- v67 = 0;
- v68 = 0;
+ v66 = 0UL;
+ v67 = 0UL;
+ v68 = 0UL;
v69 = ((u(*)())v64)(v65, v66, v67, v68);
va = v69;
- *(u*)(va + 24) = 0;
+ *(u*)(va + 24UL) = 0UL;
v70 = (u)zmkirconst;
v71 = vic;
v72 = vi;
@@ -34000,7 +37067,7 @@ b11: vtag = *(u*)(vtags + vi * 8);
vb = v73;
v74 = (u)zmkirop;
v75 = vic;
- v76 = 21;
+ v76 = 21UL;
v77 = va;
v78 = vb;
v79 = ((u(*)())v74)(v75, v76, v77, v78);
@@ -34011,6 +37078,7 @@ b11: vtag = *(u*)(vtags + vi * 8);
v83 = vnext;
v84 = vthis;
v85 = ((u(*)())v80)(v81, v82, v83, v84);
+ v85;
v86 = (u)zmkirstr;
v87 = vic;
v88 = vtag;
@@ -34021,38 +37089,40 @@ b11: vtag = *(u*)(vtags + vi * 8);
v92 = vic;
v93 = vo;
v94 = ((u(*)())v91)(v92, v93);
+ v94;
v95 = (u)zirjump;
v96 = vic;
v97 = vnext;
v98 = vnext;
v99 = ((u(*)())v95)(v96, v97, v98);
- vi = vi + 1;
+ v99;
+ vi = vi + 1UL;
goto b9;
}
u ztype_isint(u vt) {
u v1 = 0;
- if (*(u*)vt != 2) goto b2;
- v1 = 1;
+ if (*(u*)(vt + 0UL) != 2UL) goto b2;
+ v1 = 1UL;
b4: return v1;
-b2: if (*(u*)vt != 3) goto b5;
- v1 = 1;
+b2: if (*(u*)(vt + 0UL) != 3UL) goto b5;
+ v1 = 1UL;
goto b4;
-b5: v1 = 0;
+b5: v1 = 0UL;
goto b4;
}
u ztype_isprim(u vt) {
u v1 = 0;
u v2 = 0;
- if (*(u*)vt == 1) goto b2;
- if (*(u*)vt == 7) goto b6;
- if (*(u*)vt == 8) goto b6;
- v2 = 1;
+ if (*(u*)(vt + 0UL) == 1UL) goto b2;
+ if (*(u*)(vt + 0UL) == 7UL) goto b6;
+ if (*(u*)(vt + 0UL) == 8UL) goto b6;
+ v2 = 1UL;
b8: if (!v2) goto b2;
- v1 = 1;
+ v1 = 1UL;
b4: return v1;
-b2: v1 = 0;
+b2: v1 = 0UL;
goto b4;
-b6: v2 = 0;
+b6: v2 = 0UL;
goto b8;
}
u ztype_sizeof(u vc, u vt) {
@@ -34069,34 +37139,37 @@ u ztype_sizeof(u vc, u vt) {
u v12 = 0;
u v13 = 0;
u v14 = 0;
- vkind = *(u*)vt;
- if (vkind != 0) goto b3;
- return 8;
-b3: if (vkind != 2) goto b5;
- return 8;
-b5: if (vkind != 3) goto b7;
- return 8;
-b7: if (vkind != 4) goto b9;
- return 8;
-b9: if (vkind != 6) goto b11;
- return 8;
-b11: if (vkind != 7) goto b13;
+ vkind = *(u*)(vt + 0UL);
+ if (vkind != 0UL) goto b3;
+ return 8UL;
+b3: if (vkind != 2UL) goto b5;
+ return 8UL;
+b5: if (vkind != 3UL) goto b7;
+ return 8UL;
+b7: if (vkind != 4UL) goto b9;
+ return 8UL;
+b9: if (vkind != 6UL) goto b11;
+ return 8UL;
+b11: if (vkind != 7UL) goto b13;
v3 = (u)zlayout_struct;
v4 = vc;
- v5 = *(u*)(vt + 8);
+ v5 = *(u*)(vt + 8UL);
v6 = ((u(*)())v3)(v4, v5);
- return *(u*)(*(u*)(vt + 8) + 120);
-b13: if (vkind != 8) goto b16;
+ v6;
+ return *(u*)(*(u*)(vt + 8UL) + 120UL);
+b13: if (vkind != 8UL) goto b16;
v7 = (u)zlayout_union;
v8 = vc;
- v9 = *(u*)(vt + 8);
+ v9 = *(u*)(vt + 8UL);
v10 = ((u(*)())v7)(v8, v9);
- return *(u*)(*(u*)(vt + 8) + 120);
+ v10;
+ return *(u*)(*(u*)(vt + 8UL) + 120UL);
b16: v11 = (u)zcdie;
v12 = vc;
v13 = (u)"sizeof: invalid type";
v14 = ((u(*)())v11)(v12, v13);
- return 0;
+ v14;
+ return 0UL;
}
u ztypecheck_expr(u vc, u vd, u vn, u vrhs) {
u vv = 0;
@@ -35062,1422 +38135,1632 @@ u ztypecheck_expr(u vc, u vd, u vn, u vrhs) {
u v964 = 0;
u v965 = 0;
u v966 = 0;
- *(u*)(vc + 24) = *(u*)(vn + 24);
- *(u*)(vc + 32) = *(u*)(vn + 32);
- *(u*)(vc + 40) = *(u*)(vn + 40);
- vkind = *(u*)vn;
- if (vkind != 3) goto b3;
+ *(u*)(vc + 24UL) = *(u*)(vn + 24UL);
+ *(u*)(vc + 32UL) = *(u*)(vn + 32UL);
+ *(u*)(vc + 40UL) = *(u*)(vn + 40UL);
+ vkind = *(u*)(vn + 0UL);
+ if (vkind != 3UL) goto b3;
if (!vrhs) goto b8;
- v6 = 0;
-b9: if (!v6) goto b4;
+ v6 = 0UL;
+b9: if (!v6) goto b6;
v7 = (u)zcdie;
v8 = vc;
v9 = (u)"str is not an lexpr";
v10 = ((u(*)())v7)(v8, v9);
+ v10;
b4: v11 = (u)zmktype1;
v12 = vc;
- v13 = 4;
+ v13 = 4UL;
v15 = (u)zmktype0;
v16 = vc;
- v17 = 3;
+ v17 = 3UL;
v18 = ((u(*)())v15)(v16, v17);
v14 = v18;
v19 = ((u(*)())v11)(v12, v13, v14);
- *(u*)(vn + 64) = v19;
-b1: return 0;
-b8: v6 = 1;
+ *(u*)(vn + 64UL) = v19;
+b1: return 0UL;
+b6: goto b4;
+b8: v6 = 1UL;
goto b9;
-b3: if (vkind != 4) goto b14;
+b3: if (vkind != 4UL) goto b14;
if (!vrhs) goto b19;
- v20 = 0;
-b20: if (!v20) goto b15;
+ v20 = 0UL;
+b20: if (!v20) goto b17;
v21 = (u)zcdie;
v22 = vc;
v23 = (u)"nil is not an lexpr";
v24 = ((u(*)())v21)(v22, v23);
+ v24;
b15: v25 = (u)zmktype0;
v26 = vc;
- v27 = 0;
+ v27 = 0UL;
v28 = ((u(*)())v25)(v26, v27);
- *(u*)(vn + 64) = v28;
+ *(u*)(vn + 64UL) = v28;
goto b1;
-b19: v20 = 1;
+b17: goto b15;
+b19: v20 = 1UL;
goto b20;
-b14: if (vkind != 1) goto b24;
+b14: if (vkind != 1UL) goto b24;
if (!vrhs) goto b29;
- v29 = 0;
-b30: if (!v29) goto b25;
+ v29 = 0UL;
+b30: if (!v29) goto b27;
v30 = (u)zcdie;
v31 = vc;
v32 = (u)"num is not an lexpr";
v33 = ((u(*)())v30)(v31, v32);
+ v33;
b25: v34 = (u)zmktype0;
v35 = vc;
- v36 = 2;
+ v36 = 2UL;
v37 = ((u(*)())v34)(v35, v36);
- *(u*)(vn + 64) = v37;
+ *(u*)(vn + 64UL) = v37;
goto b1;
-b29: v29 = 1;
+b27: goto b25;
+b29: v29 = 1UL;
goto b30;
-b24: if (vkind != 2) goto b34;
+b24: if (vkind != 2UL) goto b34;
if (!vrhs) goto b39;
- v38 = 0;
-b40: if (!v38) goto b35;
+ v38 = 0UL;
+b40: if (!v38) goto b37;
v39 = (u)zcdie;
v40 = vc;
v41 = (u)"char is not an lexpr";
v42 = ((u(*)())v39)(v40, v41);
+ v42;
b35: v43 = (u)zmktype0;
v44 = vc;
- v45 = 2;
+ v45 = 2UL;
v46 = ((u(*)())v43)(v44, v45);
- *(u*)(vn + 64) = v46;
+ *(u*)(vn + 64UL) = v46;
goto b1;
-b39: v38 = 1;
+b37: goto b35;
+b39: v38 = 1UL;
goto b40;
-b34: if (vkind != 6) goto b44;
+b34: if (vkind != 6UL) goto b44;
if (!vrhs) goto b49;
- v47 = 0;
-b50: if (!v47) goto b45;
+ v47 = 0UL;
+b50: if (!v47) goto b47;
v48 = (u)zcdie;
v49 = vc;
v50 = (u)"call is not an lexpr";
v51 = ((u(*)())v48)(v49, v50);
-b45: if (!*(u*)(vn + 16)) goto b52;
+ v51;
+b45: if (!*(u*)(vn + 16UL)) goto b54;
v52 = (u)ztypecheck_expr;
v53 = vc;
v54 = vd;
- v55 = *(u*)(vn + 16);
- v56 = 1;
+ v55 = *(u*)(vn + 16UL);
+ v56 = 1UL;
v57 = ((u(*)())v52)(v53, v54, v55, v56);
+ v57;
b52: v58 = (u)ztypecheck_expr;
v59 = vc;
v60 = vd;
- v61 = *(u*)(vn + 8);
- v62 = 1;
+ v61 = *(u*)(vn + 8UL);
+ v62 = 1UL;
v63 = ((u(*)())v58)(v59, v60, v61, v62);
- if (!*(u*)(vn + 16)) goto b59;
+ v63;
+ if (!*(u*)(vn + 16UL)) goto b59;
v64 = (u)zmktype2;
v65 = vc;
- v66 = 5;
- v67 = *(u*)(*(u*)(vn + 8) + 64);
- v68 = *(u*)(*(u*)(vn + 16) + 64);
+ v66 = 5UL;
+ v67 = *(u*)(*(u*)(vn + 8UL) + 64UL);
+ v68 = *(u*)(*(u*)(vn + 16UL) + 64UL);
v69 = ((u(*)())v64)(v65, v66, v67, v68);
- *(u*)(vn + 64) = v69;
- goto b1;
+ *(u*)(vn + 64UL) = v69;
+b57: goto b1;
b59: v70 = (u)zmktype1;
v71 = vc;
- v72 = 5;
- v73 = *(u*)(*(u*)(vn + 8) + 64);
+ v72 = 5UL;
+ v73 = *(u*)(*(u*)(vn + 8UL) + 64UL);
v74 = ((u(*)())v70)(v71, v72, v73);
- *(u*)(vn + 64) = v74;
- goto b1;
-b49: v47 = 1;
+ *(u*)(vn + 64UL) = v74;
+ goto b57;
+b54: goto b52;
+b47: goto b45;
+b49: v47 = 1UL;
goto b50;
-b44: if (vkind != 7) goto b63;
+b44: if (vkind != 7UL) goto b63;
if (!vrhs) goto b68;
- v75 = 0;
-b69: if (!v75) goto b64;
+ v75 = 0UL;
+b69: if (!v75) goto b66;
v76 = (u)zcdie;
v77 = vc;
v78 = (u)"call is not an lexpr";
v79 = ((u(*)())v76)(v77, v78);
-b64: if (!*(u*)(vn + 16)) goto b71;
+ v79;
+b64: if (!*(u*)(vn + 16UL)) goto b73;
v80 = (u)ztypecheck_expr;
v81 = vc;
v82 = vd;
- v83 = *(u*)(vn + 16);
- v84 = 1;
+ v83 = *(u*)(vn + 16UL);
+ v84 = 1UL;
v85 = ((u(*)())v80)(v81, v82, v83, v84);
-b71: if (*(u*)*(u*)(vn + 8) != 0) goto b77;
+ v85;
+b71: if (*(u*)(*(u*)(vn + 8UL) + 0UL) != 0UL) goto b77;
v86 = (u)zfind;
v87 = vc;
- v88 = *(u*)(*(u*)(vn + 8) + 56);
- v89 = 0;
- v90 = 0;
+ v88 = *(u*)(*(u*)(vn + 8UL) + 56UL);
+ v89 = 0UL;
+ v90 = 0UL;
v91 = ((u(*)())v86)(v87, v88, v89, v90);
vv = v91;
if (!vv) goto b83;
- if (!*(u*)(vv + 176)) goto b83;
- v92 = 1;
-b85: if (!v92) goto b79;
+ if (!*(u*)(vv + 176UL)) goto b83;
+ v92 = 1UL;
+b85: if (!v92) goto b81;
v93 = (u)zcdie;
v94 = vc;
v95 = (u)"type error";
v96 = ((u(*)())v93)(v94, v95);
+ v96;
b79: v97 = (u)zfind;
v98 = vc;
- v99 = *(u*)(vd + 32);
- v100 = *(u*)(*(u*)(vn + 8) + 56);
- v101 = 0;
+ v99 = *(u*)(vd + 32UL);
+ v100 = *(u*)(*(u*)(vn + 8UL) + 56UL);
+ v101 = 0UL;
v102 = ((u(*)())v97)(v98, v99, v100, v101);
vv = v102;
if (!vv) goto b92;
- if (!*(u*)(vv + 192)) goto b92;
- v103 = 1;
+ if (!*(u*)(vv + 192UL)) goto b92;
+ v103 = 1UL;
b94: if (!v103) goto b90;
- *(u*)(*(u*)(vn + 8) + 64) = *(u*)(vv + 200);
-b75: if (*(u*)*(u*)(*(u*)(vn + 8) + 64) == 6) goto b134;
+ *(u*)(*(u*)(vn + 8UL) + 64UL) = *(u*)(vv + 200UL);
+b88:b75: if (*(u*)(*(u*)(*(u*)(vn + 8UL) + 64UL) + 0UL) == 6UL) goto b136;
v141 = (u)zcdie;
v142 = vc;
v143 = (u)"calling not a function";
v144 = ((u(*)())v141)(v142, v143);
-b134: if (!*(u*)(vn + 16)) goto b140;
+ v144;
+b134: if (!*(u*)(vn + 16UL)) goto b140;
v145 = (u)zunify;
v146 = vc;
- v147 = *(u*)(*(u*)(*(u*)(vn + 8) + 64) + 24);
- v148 = *(u*)(*(u*)(vn + 16) + 64);
+ v147 = *(u*)(*(u*)(*(u*)(vn + 8UL) + 64UL) + 24UL);
+ v148 = *(u*)(*(u*)(vn + 16UL) + 64UL);
v149 = ((u(*)())v145)(v146, v147, v148);
-b138: *(u*)(vn + 64) = *(u*)(*(u*)(*(u*)(vn + 8) + 64) + 16);
+ v149;
+b138: *(u*)(vn + 64UL) = *(u*)(*(u*)(*(u*)(vn + 8UL) + 64UL) + 16UL);
goto b1;
b140: v150 = (u)zunify;
v151 = vc;
- v152 = *(u*)(*(u*)(*(u*)(vn + 8) + 64) + 24);
- v153 = 0;
+ v152 = *(u*)(*(u*)(*(u*)(vn + 8UL) + 64UL) + 24UL);
+ v153 = 0UL;
v154 = ((u(*)())v150)(v151, v152, v153);
+ v154;
goto b138;
+b136: goto b134;
b90: v105 = (u)zstrcmp;
- v106 = *(u*)(*(u*)(vn + 8) + 56);
+ v106 = *(u*)(*(u*)(vn + 8UL) + 56UL);
v107 = (u)"_include";
v108 = ((u(*)())v105)(v106, v107);
if (!v108) goto b98;
- v104 = 0;
+ v104 = 0UL;
b99: if (!v104) goto b96;
v109 = (u)zfind;
v110 = vc;
- v111 = *(u*)(*(u*)(vn + 8) + 56);
- v112 = 0;
- v113 = 0;
+ v111 = *(u*)(*(u*)(vn + 8UL) + 56UL);
+ v112 = 0UL;
+ v113 = 0UL;
v114 = ((u(*)())v109)(v110, v111, v112, v113);
vv = v114;
if (!vv) goto b110;
- v116 = 0;
+ v116 = 0UL;
b111: if (!v116) goto b106;
- v115 = 1;
-b108: if (!v115) goto b102;
+ v115 = 1UL;
+b108: if (!v115) goto b104;
v118 = (u)zcdie;
v119 = vc;
v120 = (u)"no such function";
v121 = ((u(*)())v118)(v119, v120);
-b102: *(u*)(*(u*)(vn + 8) + 64) = *(u*)(vv + 80);
- goto b75;
-b106: if (!*(u*)(vv + 72)) goto b114;
- v117 = 0;
+ v121;
+b102: *(u*)(*(u*)(vn + 8UL) + 64UL) = *(u*)(vv + 80UL);
+ goto b88;
+b104: goto b102;
+b106: if (!*(u*)(vv + 72UL)) goto b114;
+ v117 = 0UL;
b115: if (!v117) goto b112;
- v115 = 1;
+ v115 = 1UL;
goto b108;
-b112: v115 = 0;
+b112: v115 = 0UL;
goto b108;
-b114: v117 = 1;
+b114: v117 = 1UL;
goto b115;
-b110: v116 = 1;
+b110: v116 = 1UL;
goto b111;
b96: v122 = (u)zfind;
v123 = vc;
- v124 = *(u*)(*(u*)(vn + 8) + 56);
- v125 = 0;
- v126 = 0;
+ v124 = *(u*)(*(u*)(vn + 8UL) + 56UL);
+ v125 = 0UL;
+ v126 = 0UL;
v127 = ((u(*)())v122)(v123, v124, v125, v126);
vv = v127;
if (!vv) goto b126;
- v129 = 0;
+ v129 = 0UL;
b127: if (!v129) goto b122;
- v128 = 1;
-b124: if (!v128) goto b118;
+ v128 = 1UL;
+b124: if (!v128) goto b120;
v131 = (u)zcdie;
v132 = vc;
v133 = (u)"no such function";
v134 = ((u(*)())v131)(v132, v133);
-b118: *(u*)(*(u*)(vn + 8) + 64) = *(u*)(vv + 80);
- goto b75;
-b122: if (!*(u*)(vv + 72)) goto b130;
- v130 = 0;
+ v134;
+b118: *(u*)(*(u*)(vn + 8UL) + 64UL) = *(u*)(vv + 80UL);
+ goto b88;
+b120: goto b118;
+b122: if (!*(u*)(vv + 72UL)) goto b130;
+ v130 = 0UL;
b131: if (!v130) goto b128;
- v128 = 1;
+ v128 = 1UL;
goto b124;
-b128: v128 = 0;
+b128: v128 = 0UL;
goto b124;
-b130: v130 = 1;
+b130: v130 = 1UL;
goto b131;
-b126: v129 = 1;
+b126: v129 = 1UL;
goto b127;
-b98: v104 = 1;
+b98: v104 = 1UL;
goto b99;
-b92: v103 = 0;
+b92: v103 = 0UL;
goto b94;
-b83: v92 = 0;
+b81: goto b79;
+b83: v92 = 0UL;
goto b85;
b77: v135 = (u)ztypecheck_expr;
v136 = vc;
v137 = vd;
- v138 = *(u*)(vn + 8);
- v139 = 1;
+ v138 = *(u*)(vn + 8UL);
+ v139 = 1UL;
v140 = ((u(*)())v135)(v136, v137, v138, v139);
+ v140;
goto b75;
-b68: v75 = 1;
+b73: goto b71;
+b66: goto b64;
+b68: v75 = 1UL;
goto b69;
-b63: if (vkind != 9) goto b144;
+b63: if (vkind != 9UL) goto b144;
v155 = (u)ztypecheck_expr;
v156 = vc;
v157 = vd;
- v158 = *(u*)(vn + 8);
- v159 = 0;
+ v158 = *(u*)(vn + 8UL);
+ v159 = 0UL;
v160 = ((u(*)())v155)(v156, v157, v158, v159);
- if (*(u*)*(u*)(*(u*)(vn + 8) + 64) != 4) goto b148;
- if (*(u*)*(u*)(*(u*)(*(u*)(vn + 8) + 64) + 16) == 7) goto b153;
- if (*(u*)*(u*)(*(u*)(*(u*)(vn + 8) + 64) + 16) == 8) goto b153;
- v161 = 1;
-b155: if (!v161) goto b149;
+ v160;
+ if (*(u*)(*(u*)(*(u*)(vn + 8UL) + 64UL) + 0UL) != 4UL) goto b148;
+ if (*(u*)(*(u*)(*(u*)(*(u*)(vn + 8UL) + 64UL) + 16UL) + 0UL) == 7UL) goto b153;
+ if (*(u*)(*(u*)(*(u*)(*(u*)(vn + 8UL) + 64UL) + 16UL) + 0UL) == 8UL) goto b153;
+ v161 = 1UL;
+b155: if (!v161) goto b151;
v162 = (u)zcdie;
v163 = vc;
v164 = (u)"dot not a struct";
v165 = ((u(*)())v162)(v163, v164);
+ v165;
b149: v166 = (u)zfind;
v167 = vc;
- v168 = *(u*)(*(u*)(*(u*)(*(u*)(*(u*)(vn + 8) + 64) + 16) + 8) + 32);
- v169 = *(u*)(*(u*)(vn + 16) + 56);
- v170 = 0;
+ v168 = *(u*)(*(u*)(*(u*)(*(u*)(*(u*)(vn + 8UL) + 64UL) + 16UL) + 8UL) + 32UL);
+ v169 = *(u*)(*(u*)(vn + 16UL) + 56UL);
+ v170 = 0UL;
v171 = ((u(*)())v166)(v167, v168, v169, v170);
vv = v171;
b146: if (!vv) goto b175;
- v184 = 0;
+ v184 = 0UL;
b176: if (!v184) goto b171;
- v183 = 1;
-b173: if (!v183) goto b167;
+ v183 = 1UL;
+b173: if (!v183) goto b169;
v186 = (u)zcdie;
v187 = vc;
v188 = (u)"no such member";
v189 = ((u(*)())v186)(v187, v188);
-b167: *(u*)(vn + 64) = *(u*)(vv + 160);
+ v189;
+b167: *(u*)(vn + 64UL) = *(u*)(vv + 160UL);
goto b1;
-b171: if (!*(u*)(vv + 152)) goto b179;
- v185 = 0;
+b169: goto b167;
+b171: if (!*(u*)(vv + 152UL)) goto b179;
+ v185 = 0UL;
b180: if (!v185) goto b177;
- v183 = 1;
+ v183 = 1UL;
goto b173;
-b177: v183 = 0;
+b177: v183 = 0UL;
goto b173;
-b179: v185 = 1;
+b179: v185 = 1UL;
goto b180;
-b175: v184 = 1;
+b175: v184 = 1UL;
goto b176;
-b153: v161 = 0;
+b151: goto b149;
+b153: v161 = 0UL;
goto b155;
-b148: if (*(u*)*(u*)(*(u*)(vn + 8) + 64) == 7) goto b162;
- if (*(u*)*(u*)(*(u*)(vn + 8) + 64) == 8) goto b162;
- v172 = 1;
-b164: if (!v172) goto b158;
+b148: if (*(u*)(*(u*)(*(u*)(vn + 8UL) + 64UL) + 0UL) == 7UL) goto b162;
+ if (*(u*)(*(u*)(*(u*)(vn + 8UL) + 64UL) + 0UL) == 8UL) goto b162;
+ v172 = 1UL;
+b164: if (!v172) goto b160;
v173 = (u)zcdie;
v174 = vc;
v175 = (u)"dot not a struct";
v176 = ((u(*)())v173)(v174, v175);
+ v176;
b158: v177 = (u)zfind;
v178 = vc;
- v179 = *(u*)(*(u*)(*(u*)(*(u*)(vn + 8) + 64) + 8) + 32);
- v180 = *(u*)(*(u*)(vn + 16) + 56);
- v181 = 0;
+ v179 = *(u*)(*(u*)(*(u*)(*(u*)(vn + 8UL) + 64UL) + 8UL) + 32UL);
+ v180 = *(u*)(*(u*)(vn + 16UL) + 56UL);
+ v181 = 0UL;
v182 = ((u(*)())v177)(v178, v179, v180, v181);
vv = v182;
goto b146;
-b162: v172 = 0;
+b160: goto b158;
+b162: v172 = 0UL;
goto b164;
-b144: if (vkind != 0) goto b183;
+b144: if (vkind != 0UL) goto b183;
v190 = (u)zfind;
v191 = vc;
- v192 = *(u*)(vn + 56);
- v193 = 0;
- v194 = 0;
+ v192 = *(u*)(vn + 56UL);
+ v193 = 0UL;
+ v194 = 0UL;
v195 = ((u(*)())v190)(v191, v192, v193, v194);
vv = v195;
if (!vv) goto b189;
- if (!*(u*)(vv + 176)) goto b189;
- v196 = 1;
-b191: if (!v196) goto b185;
+ if (!*(u*)(vv + 176UL)) goto b189;
+ v196 = 1UL;
+b191: if (!v196) goto b187;
v197 = (u)zmktype0;
v198 = vc;
- v199 = 2;
+ v199 = 2UL;
v200 = ((u(*)())v197)(v198, v199);
- *(u*)(vn + 64) = v200;
- return 0;
-b185: v201 = (u)zfind;
+ *(u*)(vn + 64UL) = v200;
+ return 0UL;
+b187: v201 = (u)zfind;
v202 = vc;
- v203 = *(u*)(vd + 32);
- v204 = *(u*)(vn + 56);
- v205 = 0;
+ v203 = *(u*)(vd + 32UL);
+ v204 = *(u*)(vn + 56UL);
+ v205 = 0UL;
v206 = ((u(*)())v201)(v202, v203, v204, v205);
vv = v206;
if (!vv) goto b198;
- if (!*(u*)(vv + 192)) goto b198;
- v207 = 1;
-b200: if (!v207) goto b194;
- *(u*)(vn + 64) = *(u*)(vv + 200);
- return 0;
-b194: v208 = (u)zfind;
+ if (!*(u*)(vv + 192UL)) goto b198;
+ v207 = 1UL;
+b200: if (!v207) goto b196;
+ *(u*)(vn + 64UL) = *(u*)(vv + 200UL);
+ return 0UL;
+b196: v208 = (u)zfind;
v209 = vc;
- v210 = *(u*)(vn + 56);
- v211 = 0;
- v212 = 0;
+ v210 = *(u*)(vn + 56UL);
+ v211 = 0UL;
+ v212 = 0UL;
v213 = ((u(*)())v208)(v209, v210, v211, v212);
vv = v213;
if (!vv) goto b206;
- if (!*(u*)(vv + 72)) goto b206;
- v214 = 1;
-b208: if (!v214) goto b202;
- *(u*)(vn + 64) = *(u*)(vv + 80);
- return 0;
-b202: v215 = (u)zcdie;
+ if (!*(u*)(vv + 72UL)) goto b206;
+ v214 = 1UL;
+b208: if (!v214) goto b204;
+ *(u*)(vn + 64UL) = *(u*)(vv + 80UL);
+ return 0UL;
+b204: v215 = (u)zcdie;
v216 = vc;
v217 = (u)"no such variable";
v218 = ((u(*)())v215)(v216, v217);
+ v218;
goto b1;
-b206: v214 = 0;
+b206: v214 = 0UL;
goto b208;
-b198: v207 = 0;
+b198: v207 = 0UL;
goto b200;
-b189: v196 = 0;
+b189: v196 = 0UL;
goto b191;
-b183: if (vkind != 33) goto b211;
+b183: if (vkind != 33UL) goto b211;
if (!vrhs) goto b216;
- v219 = 0;
-b217: if (!v219) goto b212;
+ v219 = 0UL;
+b217: if (!v219) goto b214;
v220 = (u)zcdie;
v221 = vc;
v222 = (u)"assign is not an lexpr";
v223 = ((u(*)())v220)(v221, v222);
+ v223;
b212: v224 = (u)ztypecheck_expr;
v225 = vc;
v226 = vd;
- v227 = *(u*)(vn + 16);
- v228 = 1;
+ v227 = *(u*)(vn + 16UL);
+ v228 = 1UL;
v229 = ((u(*)())v224)(v225, v226, v227, v228);
+ v229;
v230 = (u)ztypecheck_expr;
v231 = vc;
v232 = vd;
- v233 = *(u*)(vn + 8);
- v234 = 0;
+ v233 = *(u*)(vn + 8UL);
+ v234 = 0UL;
v235 = ((u(*)())v230)(v231, v232, v233, v234);
+ v235;
v236 = (u)zunify;
v237 = vc;
- v238 = *(u*)(*(u*)(vn + 8) + 64);
- v239 = *(u*)(*(u*)(vn + 16) + 64);
+ v238 = *(u*)(*(u*)(vn + 8UL) + 64UL);
+ v239 = *(u*)(*(u*)(vn + 16UL) + 64UL);
v240 = ((u(*)())v236)(v237, v238, v239);
- *(u*)(vn + 64) = *(u*)(*(u*)(vn + 8) + 64);
+ v240;
+ *(u*)(vn + 64UL) = *(u*)(*(u*)(vn + 8UL) + 64UL);
goto b1;
-b216: v219 = 1;
+b214: goto b212;
+b216: v219 = 1UL;
goto b217;
-b211: if (vkind != 34) goto b223;
+b211: if (vkind != 34UL) goto b223;
if (!vrhs) goto b228;
- v241 = 0;
-b229: if (!v241) goto b224;
+ v241 = 0UL;
+b229: if (!v241) goto b226;
v242 = (u)zcdie;
v243 = vc;
v244 = (u)"sizeof is not an lexpr";
v245 = ((u(*)())v242)(v243, v244);
+ v245;
b224: v246 = (u)ztypecheck_expr;
v247 = vc;
v248 = vd;
- v249 = *(u*)(vn + 8);
- v250 = 0;
+ v249 = *(u*)(vn + 8UL);
+ v250 = 0UL;
v251 = ((u(*)())v246)(v247, v248, v249, v250);
+ v251;
v252 = (u)zmktype0;
v253 = vc;
- v254 = 2;
+ v254 = 2UL;
v255 = ((u(*)())v252)(v253, v254);
- *(u*)(vn + 64) = v255;
+ *(u*)(vn + 64UL) = v255;
goto b1;
-b228: v241 = 1;
+b226: goto b224;
+b228: v241 = 1UL;
goto b229;
-b223: if (vkind != 35) goto b234;
+b223: if (vkind != 35UL) goto b234;
if (!vrhs) goto b239;
- v256 = 0;
-b240: if (!v256) goto b235;
+ v256 = 0UL;
+b240: if (!v256) goto b237;
v257 = (u)zcdie;
v258 = vc;
v259 = (u)"ref is not an lexpr";
v260 = ((u(*)())v257)(v258, v259);
+ v260;
b235: v261 = (u)ztypecheck_expr;
v262 = vc;
v263 = vd;
- v264 = *(u*)(vn + 8);
- v265 = 0;
+ v264 = *(u*)(vn + 8UL);
+ v265 = 0UL;
v266 = ((u(*)())v261)(v262, v263, v264, v265);
+ v266;
v267 = (u)zmktype1;
v268 = vc;
- v269 = 4;
- v270 = *(u*)(*(u*)(vn + 8) + 64);
+ v269 = 4UL;
+ v270 = *(u*)(*(u*)(vn + 8UL) + 64UL);
v271 = ((u(*)())v267)(v268, v269, v270);
- *(u*)(vn + 64) = v271;
+ *(u*)(vn + 64UL) = v271;
goto b1;
-b239: v256 = 1;
+b237: goto b235;
+b239: v256 = 1UL;
goto b240;
-b234: if (vkind != 36) goto b245;
+b234: if (vkind != 36UL) goto b245;
v272 = (u)ztypecheck_expr;
v273 = vc;
v274 = vd;
- v275 = *(u*)(vn + 8);
- v276 = 1;
+ v275 = *(u*)(vn + 8UL);
+ v276 = 1UL;
v277 = ((u(*)())v272)(v273, v274, v275, v276);
- if (*(u*)*(u*)(*(u*)(vn + 8) + 64) == 4) goto b247;
+ v277;
+ if (*(u*)(*(u*)(*(u*)(vn + 8UL) + 64UL) + 0UL) == 4UL) goto b249;
v278 = (u)zcdie;
v279 = vc;
v280 = (u)"deref not a pointer";
v281 = ((u(*)())v278)(v279, v280);
-b247: *(u*)(vn + 64) = *(u*)(*(u*)(*(u*)(vn + 8) + 64) + 16);
+ v281;
+b247: *(u*)(vn + 64UL) = *(u*)(*(u*)(*(u*)(vn + 8UL) + 64UL) + 16UL);
goto b1;
-b245: if (vkind != 38) goto b252;
+b249: goto b247;
+b245: if (vkind != 38UL) goto b252;
v282 = (u)ztypecheck_expr;
v283 = vc;
v284 = vd;
- v285 = *(u*)(vn + 8);
- v286 = 1;
+ v285 = *(u*)(vn + 8UL);
+ v286 = 1UL;
v287 = ((u(*)())v282)(v283, v284, v285, v286);
+ v287;
v288 = (u)ztypecheck_expr;
v289 = vc;
v290 = vd;
- v291 = *(u*)(vn + 16);
- v292 = 1;
+ v291 = *(u*)(vn + 16UL);
+ v292 = 1UL;
v293 = ((u(*)())v288)(v289, v290, v291, v292);
- if (*(u*)*(u*)(*(u*)(vn + 8) + 64) == 4) goto b255;
+ v293;
+ if (*(u*)(*(u*)(*(u*)(vn + 8UL) + 64UL) + 0UL) == 4UL) goto b257;
v294 = (u)zcdie;
v295 = vc;
v296 = (u)"not a pointer";
v297 = ((u(*)())v294)(v295, v296);
+ v297;
b255: v299 = (u)ztype_isint;
- v300 = *(u*)(*(u*)(vn + 16) + 64);
+ v300 = *(u*)(*(u*)(vn + 16UL) + 64UL);
v301 = ((u(*)())v299)(v300);
if (!v301) goto b263;
- v298 = 0;
-b264: if (!v298) goto b259;
+ v298 = 0UL;
+b264: if (!v298) goto b261;
v302 = (u)zcdie;
v303 = vc;
v304 = (u)"index: not an int";
v305 = ((u(*)())v302)(v303, v304);
-b259: *(u*)(vn + 64) = *(u*)(*(u*)(*(u*)(vn + 8) + 64) + 16);
+ v305;
+b259: *(u*)(vn + 64UL) = *(u*)(*(u*)(*(u*)(vn + 8UL) + 64UL) + 16UL);
goto b1;
-b263: v298 = 1;
+b261: goto b259;
+b263: v298 = 1UL;
goto b264;
-b252: if (vkind != 39) goto b268;
+b257: goto b255;
+b252: if (vkind != 39UL) goto b268;
if (!vrhs) goto b273;
- v306 = 0;
-b274: if (!v306) goto b269;
+ v306 = 0UL;
+b274: if (!v306) goto b271;
v307 = (u)zcdie;
v308 = vc;
v309 = (u)"not lexpr";
v310 = ((u(*)())v307)(v308, v309);
+ v310;
b269: v311 = (u)ztypecheck_expr;
v312 = vc;
v313 = vd;
- v314 = *(u*)(vn + 16);
- v315 = 1;
+ v314 = *(u*)(vn + 16UL);
+ v315 = 1UL;
v316 = ((u(*)())v311)(v312, v313, v314, v315);
+ v316;
v317 = (u)ztypecheck_expr;
v318 = vc;
v319 = vd;
- v320 = *(u*)(vn + 8);
- v321 = 1;
+ v320 = *(u*)(vn + 8UL);
+ v321 = 1UL;
v322 = ((u(*)())v317)(v318, v319, v320, v321);
+ v322;
v323 = (u)zunify;
v324 = vc;
- v325 = *(u*)(*(u*)(vn + 8) + 64);
- v326 = *(u*)(*(u*)(vn + 16) + 64);
+ v325 = *(u*)(*(u*)(vn + 8UL) + 64UL);
+ v326 = *(u*)(*(u*)(vn + 16UL) + 64UL);
v327 = ((u(*)())v323)(v324, v325, v326);
+ v327;
v329 = (u)ztype_isprim;
- v330 = *(u*)(*(u*)(vn + 8) + 64);
+ v330 = *(u*)(*(u*)(vn + 8UL) + 64UL);
v331 = ((u(*)())v329)(v330);
if (!v331) goto b283;
- v328 = 0;
-b284: if (!v328) goto b279;
+ v328 = 0UL;
+b284: if (!v328) goto b281;
v332 = (u)zcdie;
v333 = vc;
v334 = (u)"lt: not an int";
v335 = ((u(*)())v332)(v333, v334);
-b279: *(u*)(vn + 64) = *(u*)(*(u*)(vn + 8) + 64);
+ v335;
+b279: *(u*)(vn + 64UL) = *(u*)(*(u*)(vn + 8UL) + 64UL);
goto b1;
-b283: v328 = 1;
+b281: goto b279;
+b283: v328 = 1UL;
goto b284;
-b273: v306 = 1;
+b271: goto b269;
+b273: v306 = 1UL;
goto b274;
-b268: if (vkind != 40) goto b288;
+b268: if (vkind != 40UL) goto b288;
if (!vrhs) goto b293;
- v336 = 0;
-b294: if (!v336) goto b289;
+ v336 = 0UL;
+b294: if (!v336) goto b291;
v337 = (u)zcdie;
v338 = vc;
v339 = (u)"not lexpr";
v340 = ((u(*)())v337)(v338, v339);
+ v340;
b289: v341 = (u)ztypecheck_expr;
v342 = vc;
v343 = vd;
- v344 = *(u*)(vn + 16);
- v345 = 1;
+ v344 = *(u*)(vn + 16UL);
+ v345 = 1UL;
v346 = ((u(*)())v341)(v342, v343, v344, v345);
+ v346;
v347 = (u)ztypecheck_expr;
v348 = vc;
v349 = vd;
- v350 = *(u*)(vn + 8);
- v351 = 1;
+ v350 = *(u*)(vn + 8UL);
+ v351 = 1UL;
v352 = ((u(*)())v347)(v348, v349, v350, v351);
+ v352;
v353 = (u)zunify;
v354 = vc;
- v355 = *(u*)(*(u*)(vn + 8) + 64);
- v356 = *(u*)(*(u*)(vn + 16) + 64);
+ v355 = *(u*)(*(u*)(vn + 8UL) + 64UL);
+ v356 = *(u*)(*(u*)(vn + 16UL) + 64UL);
v357 = ((u(*)())v353)(v354, v355, v356);
+ v357;
v359 = (u)ztype_isprim;
- v360 = *(u*)(*(u*)(vn + 8) + 64);
+ v360 = *(u*)(*(u*)(vn + 8UL) + 64UL);
v361 = ((u(*)())v359)(v360);
if (!v361) goto b303;
- v358 = 0;
-b304: if (!v358) goto b299;
+ v358 = 0UL;
+b304: if (!v358) goto b301;
v362 = (u)zcdie;
v363 = vc;
v364 = (u)"gt: not an int";
v365 = ((u(*)())v362)(v363, v364);
-b299: *(u*)(vn + 64) = *(u*)(*(u*)(vn + 8) + 64);
+ v365;
+b299: *(u*)(vn + 64UL) = *(u*)(*(u*)(vn + 8UL) + 64UL);
goto b1;
-b303: v358 = 1;
+b301: goto b299;
+b303: v358 = 1UL;
goto b304;
-b293: v336 = 1;
+b291: goto b289;
+b293: v336 = 1UL;
goto b294;
-b288: if (vkind != 41) goto b308;
+b288: if (vkind != 41UL) goto b308;
if (!vrhs) goto b313;
- v366 = 0;
-b314: if (!v366) goto b309;
+ v366 = 0UL;
+b314: if (!v366) goto b311;
v367 = (u)zcdie;
v368 = vc;
v369 = (u)"not lexpr";
v370 = ((u(*)())v367)(v368, v369);
+ v370;
b309: v371 = (u)ztypecheck_expr;
v372 = vc;
v373 = vd;
- v374 = *(u*)(vn + 16);
- v375 = 1;
+ v374 = *(u*)(vn + 16UL);
+ v375 = 1UL;
v376 = ((u(*)())v371)(v372, v373, v374, v375);
+ v376;
v377 = (u)ztypecheck_expr;
v378 = vc;
v379 = vd;
- v380 = *(u*)(vn + 8);
- v381 = 1;
+ v380 = *(u*)(vn + 8UL);
+ v381 = 1UL;
v382 = ((u(*)())v377)(v378, v379, v380, v381);
+ v382;
v383 = (u)zunify;
v384 = vc;
- v385 = *(u*)(*(u*)(vn + 8) + 64);
- v386 = *(u*)(*(u*)(vn + 16) + 64);
+ v385 = *(u*)(*(u*)(vn + 8UL) + 64UL);
+ v386 = *(u*)(*(u*)(vn + 16UL) + 64UL);
v387 = ((u(*)())v383)(v384, v385, v386);
+ v387;
v389 = (u)ztype_isprim;
- v390 = *(u*)(*(u*)(vn + 8) + 64);
+ v390 = *(u*)(*(u*)(vn + 8UL) + 64UL);
v391 = ((u(*)())v389)(v390);
if (!v391) goto b323;
- v388 = 0;
-b324: if (!v388) goto b319;
+ v388 = 0UL;
+b324: if (!v388) goto b321;
v392 = (u)zcdie;
v393 = vc;
v394 = (u)"le: not an int";
v395 = ((u(*)())v392)(v393, v394);
-b319: *(u*)(vn + 64) = *(u*)(*(u*)(vn + 8) + 64);
+ v395;
+b319: *(u*)(vn + 64UL) = *(u*)(*(u*)(vn + 8UL) + 64UL);
goto b1;
-b323: v388 = 1;
+b321: goto b319;
+b323: v388 = 1UL;
goto b324;
-b313: v366 = 1;
+b311: goto b309;
+b313: v366 = 1UL;
goto b314;
-b308: if (vkind != 42) goto b328;
+b308: if (vkind != 42UL) goto b328;
if (!vrhs) goto b333;
- v396 = 0;
-b334: if (!v396) goto b329;
+ v396 = 0UL;
+b334: if (!v396) goto b331;
v397 = (u)zcdie;
v398 = vc;
v399 = (u)"not lexpr";
v400 = ((u(*)())v397)(v398, v399);
+ v400;
b329: v401 = (u)ztypecheck_expr;
v402 = vc;
v403 = vd;
- v404 = *(u*)(vn + 16);
- v405 = 1;
+ v404 = *(u*)(vn + 16UL);
+ v405 = 1UL;
v406 = ((u(*)())v401)(v402, v403, v404, v405);
+ v406;
v407 = (u)ztypecheck_expr;
v408 = vc;
v409 = vd;
- v410 = *(u*)(vn + 8);
- v411 = 1;
+ v410 = *(u*)(vn + 8UL);
+ v411 = 1UL;
v412 = ((u(*)())v407)(v408, v409, v410, v411);
+ v412;
v413 = (u)zunify;
v414 = vc;
- v415 = *(u*)(*(u*)(vn + 8) + 64);
- v416 = *(u*)(*(u*)(vn + 16) + 64);
+ v415 = *(u*)(*(u*)(vn + 8UL) + 64UL);
+ v416 = *(u*)(*(u*)(vn + 16UL) + 64UL);
v417 = ((u(*)())v413)(v414, v415, v416);
+ v417;
v419 = (u)ztype_isprim;
- v420 = *(u*)(*(u*)(vn + 8) + 64);
+ v420 = *(u*)(*(u*)(vn + 8UL) + 64UL);
v421 = ((u(*)())v419)(v420);
if (!v421) goto b343;
- v418 = 0;
-b344: if (!v418) goto b339;
+ v418 = 0UL;
+b344: if (!v418) goto b341;
v422 = (u)zcdie;
v423 = vc;
v424 = (u)"ge: not an int";
v425 = ((u(*)())v422)(v423, v424);
-b339: *(u*)(vn + 64) = *(u*)(*(u*)(vn + 8) + 64);
+ v425;
+b339: *(u*)(vn + 64UL) = *(u*)(*(u*)(vn + 8UL) + 64UL);
goto b1;
-b343: v418 = 1;
+b341: goto b339;
+b343: v418 = 1UL;
goto b344;
-b333: v396 = 1;
+b331: goto b329;
+b333: v396 = 1UL;
goto b334;
-b328: if (vkind != 43) goto b348;
+b328: if (vkind != 43UL) goto b348;
if (!vrhs) goto b353;
- v426 = 0;
-b354: if (!v426) goto b349;
+ v426 = 0UL;
+b354: if (!v426) goto b351;
v427 = (u)zcdie;
v428 = vc;
v429 = (u)"not lexpr";
v430 = ((u(*)())v427)(v428, v429);
+ v430;
b349: v431 = (u)ztypecheck_expr;
v432 = vc;
v433 = vd;
- v434 = *(u*)(vn + 16);
- v435 = 1;
+ v434 = *(u*)(vn + 16UL);
+ v435 = 1UL;
v436 = ((u(*)())v431)(v432, v433, v434, v435);
+ v436;
v437 = (u)ztypecheck_expr;
v438 = vc;
v439 = vd;
- v440 = *(u*)(vn + 8);
- v441 = 1;
+ v440 = *(u*)(vn + 8UL);
+ v441 = 1UL;
v442 = ((u(*)())v437)(v438, v439, v440, v441);
+ v442;
v443 = (u)zunify;
v444 = vc;
- v445 = *(u*)(*(u*)(vn + 8) + 64);
- v446 = *(u*)(*(u*)(vn + 16) + 64);
+ v445 = *(u*)(*(u*)(vn + 8UL) + 64UL);
+ v446 = *(u*)(*(u*)(vn + 16UL) + 64UL);
v447 = ((u(*)())v443)(v444, v445, v446);
+ v447;
v449 = (u)ztype_isprim;
- v450 = *(u*)(*(u*)(vn + 8) + 64);
+ v450 = *(u*)(*(u*)(vn + 8UL) + 64UL);
v451 = ((u(*)())v449)(v450);
if (!v451) goto b363;
- v448 = 0;
-b364: if (!v448) goto b359;
+ v448 = 0UL;
+b364: if (!v448) goto b361;
v452 = (u)zcdie;
v453 = vc;
v454 = (u)"eq: not an int";
v455 = ((u(*)())v452)(v453, v454);
-b359: *(u*)(vn + 64) = *(u*)(*(u*)(vn + 8) + 64);
+ v455;
+b359: *(u*)(vn + 64UL) = *(u*)(*(u*)(vn + 8UL) + 64UL);
goto b1;
-b363: v448 = 1;
+b361: goto b359;
+b363: v448 = 1UL;
goto b364;
-b353: v426 = 1;
+b351: goto b349;
+b353: v426 = 1UL;
goto b354;
-b348: if (vkind != 44) goto b368;
+b348: if (vkind != 44UL) goto b368;
if (!vrhs) goto b373;
- v456 = 0;
-b374: if (!v456) goto b369;
+ v456 = 0UL;
+b374: if (!v456) goto b371;
v457 = (u)zcdie;
v458 = vc;
v459 = (u)"not lexpr";
v460 = ((u(*)())v457)(v458, v459);
+ v460;
b369: v461 = (u)ztypecheck_expr;
v462 = vc;
v463 = vd;
- v464 = *(u*)(vn + 16);
- v465 = 1;
+ v464 = *(u*)(vn + 16UL);
+ v465 = 1UL;
v466 = ((u(*)())v461)(v462, v463, v464, v465);
+ v466;
v467 = (u)ztypecheck_expr;
v468 = vc;
v469 = vd;
- v470 = *(u*)(vn + 8);
- v471 = 1;
+ v470 = *(u*)(vn + 8UL);
+ v471 = 1UL;
v472 = ((u(*)())v467)(v468, v469, v470, v471);
+ v472;
v473 = (u)zunify;
v474 = vc;
- v475 = *(u*)(*(u*)(vn + 8) + 64);
- v476 = *(u*)(*(u*)(vn + 16) + 64);
+ v475 = *(u*)(*(u*)(vn + 8UL) + 64UL);
+ v476 = *(u*)(*(u*)(vn + 16UL) + 64UL);
v477 = ((u(*)())v473)(v474, v475, v476);
+ v477;
v479 = (u)ztype_isprim;
- v480 = *(u*)(*(u*)(vn + 8) + 64);
+ v480 = *(u*)(*(u*)(vn + 8UL) + 64UL);
v481 = ((u(*)())v479)(v480);
if (!v481) goto b383;
- v478 = 0;
-b384: if (!v478) goto b379;
+ v478 = 0UL;
+b384: if (!v478) goto b381;
v482 = (u)zcdie;
v483 = vc;
v484 = (u)"ne: not an int";
v485 = ((u(*)())v482)(v483, v484);
-b379: *(u*)(vn + 64) = *(u*)(*(u*)(vn + 8) + 64);
+ v485;
+b379: *(u*)(vn + 64UL) = *(u*)(*(u*)(vn + 8UL) + 64UL);
goto b1;
-b383: v478 = 1;
+b381: goto b379;
+b383: v478 = 1UL;
goto b384;
-b373: v456 = 1;
+b371: goto b369;
+b373: v456 = 1UL;
goto b374;
-b368: if (vkind != 50) goto b388;
+b368: if (vkind != 50UL) goto b388;
if (!vrhs) goto b393;
- v486 = 0;
-b394: if (!v486) goto b389;
+ v486 = 0UL;
+b394: if (!v486) goto b391;
v487 = (u)zcdie;
v488 = vc;
v489 = (u)"not lexpr";
v490 = ((u(*)())v487)(v488, v489);
+ v490;
b389: v491 = (u)ztypecheck_expr;
v492 = vc;
v493 = vd;
- v494 = *(u*)(vn + 8);
- v495 = 1;
+ v494 = *(u*)(vn + 8UL);
+ v495 = 1UL;
v496 = ((u(*)())v491)(v492, v493, v494, v495);
+ v496;
v498 = (u)ztype_isprim;
- v499 = *(u*)(*(u*)(vn + 8) + 64);
+ v499 = *(u*)(*(u*)(vn + 8UL) + 64UL);
v500 = ((u(*)())v498)(v499);
if (!v500) goto b401;
- v497 = 0;
-b402: if (!v497) goto b397;
+ v497 = 0UL;
+b402: if (!v497) goto b399;
v501 = (u)zcdie;
v502 = vc;
v503 = (u)"not an prim";
v504 = ((u(*)())v501)(v502, v503);
+ v504;
b397: v505 = (u)zmktype0;
v506 = vc;
- v507 = 2;
+ v507 = 2UL;
v508 = ((u(*)())v505)(v506, v507);
- *(u*)(vn + 64) = v508;
+ *(u*)(vn + 64UL) = v508;
goto b1;
-b401: v497 = 1;
+b399: goto b397;
+b401: v497 = 1UL;
goto b402;
-b393: v486 = 1;
+b391: goto b389;
+b393: v486 = 1UL;
goto b394;
-b388: if (vkind != 51) goto b407;
+b388: if (vkind != 51UL) goto b407;
if (!vrhs) goto b412;
- v509 = 0;
-b413: if (!v509) goto b408;
+ v509 = 0UL;
+b413: if (!v509) goto b410;
v510 = (u)zcdie;
v511 = vc;
v512 = (u)"not lexpr";
v513 = ((u(*)())v510)(v511, v512);
+ v513;
b408: v514 = (u)ztypecheck_expr;
v515 = vc;
v516 = vd;
- v517 = *(u*)(vn + 8);
- v518 = 1;
+ v517 = *(u*)(vn + 8UL);
+ v518 = 1UL;
v519 = ((u(*)())v514)(v515, v516, v517, v518);
+ v519;
v520 = (u)ztypecheck_expr;
v521 = vc;
v522 = vd;
- v523 = *(u*)(vn + 16);
- v524 = 1;
+ v523 = *(u*)(vn + 16UL);
+ v524 = 1UL;
v525 = ((u(*)())v520)(v521, v522, v523, v524);
+ v525;
v527 = (u)ztype_isprim;
- v528 = *(u*)(*(u*)(vn + 8) + 64);
+ v528 = *(u*)(*(u*)(vn + 8UL) + 64UL);
v529 = ((u(*)())v527)(v528);
if (!v529) goto b421;
- v526 = 0;
-b422: if (!v526) goto b417;
+ v526 = 0UL;
+b422: if (!v526) goto b419;
v530 = (u)zcdie;
v531 = vc;
v532 = (u)"not an prim";
v533 = ((u(*)())v530)(v531, v532);
+ v533;
b417: v535 = (u)ztype_isprim;
- v536 = *(u*)(*(u*)(vn + 16) + 64);
+ v536 = *(u*)(*(u*)(vn + 16UL) + 64UL);
v537 = ((u(*)())v535)(v536);
if (!v537) goto b429;
- v534 = 0;
-b430: if (!v534) goto b425;
+ v534 = 0UL;
+b430: if (!v534) goto b427;
v538 = (u)zcdie;
v539 = vc;
v540 = (u)"not an prim";
v541 = ((u(*)())v538)(v539, v540);
+ v541;
b425: v542 = (u)zmktype0;
v543 = vc;
- v544 = 2;
+ v544 = 2UL;
v545 = ((u(*)())v542)(v543, v544);
- *(u*)(vn + 64) = v545;
+ *(u*)(vn + 64UL) = v545;
goto b1;
-b429: v534 = 1;
+b427: goto b425;
+b429: v534 = 1UL;
goto b430;
-b421: v526 = 1;
+b419: goto b417;
+b421: v526 = 1UL;
goto b422;
-b412: v509 = 1;
+b410: goto b408;
+b412: v509 = 1UL;
goto b413;
-b407: if (vkind != 52) goto b435;
+b407: if (vkind != 52UL) goto b435;
if (!vrhs) goto b440;
- v546 = 0;
-b441: if (!v546) goto b436;
+ v546 = 0UL;
+b441: if (!v546) goto b438;
v547 = (u)zcdie;
v548 = vc;
v549 = (u)"not lexpr";
v550 = ((u(*)())v547)(v548, v549);
+ v550;
b436: v551 = (u)ztypecheck_expr;
v552 = vc;
v553 = vd;
- v554 = *(u*)(vn + 8);
- v555 = 1;
+ v554 = *(u*)(vn + 8UL);
+ v555 = 1UL;
v556 = ((u(*)())v551)(v552, v553, v554, v555);
+ v556;
v557 = (u)ztypecheck_expr;
v558 = vc;
v559 = vd;
- v560 = *(u*)(vn + 16);
- v561 = 1;
+ v560 = *(u*)(vn + 16UL);
+ v561 = 1UL;
v562 = ((u(*)())v557)(v558, v559, v560, v561);
+ v562;
v564 = (u)ztype_isprim;
- v565 = *(u*)(*(u*)(vn + 8) + 64);
+ v565 = *(u*)(*(u*)(vn + 8UL) + 64UL);
v566 = ((u(*)())v564)(v565);
if (!v566) goto b449;
- v563 = 0;
-b450: if (!v563) goto b445;
+ v563 = 0UL;
+b450: if (!v563) goto b447;
v567 = (u)zcdie;
v568 = vc;
v569 = (u)"not an prim";
v570 = ((u(*)())v567)(v568, v569);
+ v570;
b445: v572 = (u)ztype_isprim;
- v573 = *(u*)(*(u*)(vn + 16) + 64);
+ v573 = *(u*)(*(u*)(vn + 16UL) + 64UL);
v574 = ((u(*)())v572)(v573);
if (!v574) goto b457;
- v571 = 0;
-b458: if (!v571) goto b453;
+ v571 = 0UL;
+b458: if (!v571) goto b455;
v575 = (u)zcdie;
v576 = vc;
v577 = (u)"not an prim";
v578 = ((u(*)())v575)(v576, v577);
+ v578;
b453: v579 = (u)zmktype0;
v580 = vc;
- v581 = 2;
+ v581 = 2UL;
v582 = ((u(*)())v579)(v580, v581);
- *(u*)(vn + 64) = v582;
+ *(u*)(vn + 64UL) = v582;
goto b1;
-b457: v571 = 1;
+b455: goto b453;
+b457: v571 = 1UL;
goto b458;
-b449: v563 = 1;
+b447: goto b445;
+b449: v563 = 1UL;
goto b450;
-b440: v546 = 1;
+b438: goto b436;
+b440: v546 = 1UL;
goto b441;
-b435: if (vkind != 57) goto b463;
+b435: if (vkind != 57UL) goto b463;
if (!vrhs) goto b468;
- v583 = 0;
-b469: if (!v583) goto b464;
+ v583 = 0UL;
+b469: if (!v583) goto b466;
v584 = (u)zcdie;
v585 = vc;
v586 = (u)"not lexpr";
v587 = ((u(*)())v584)(v585, v586);
+ v587;
b464: v588 = (u)ztypecheck_expr;
v589 = vc;
v590 = vd;
- v591 = *(u*)(vn + 8);
- v592 = 1;
+ v591 = *(u*)(vn + 8UL);
+ v592 = 1UL;
v593 = ((u(*)())v588)(v589, v590, v591, v592);
+ v593;
v595 = (u)ztype_isint;
- v596 = *(u*)(*(u*)(vn + 8) + 64);
+ v596 = *(u*)(*(u*)(vn + 8UL) + 64UL);
v597 = ((u(*)())v595)(v596);
if (!v597) goto b476;
- v594 = 0;
-b477: if (!v594) goto b472;
+ v594 = 0UL;
+b477: if (!v594) goto b474;
v598 = (u)zcdie;
v599 = vc;
v600 = (u)"pos: not an int";
v601 = ((u(*)())v598)(v599, v600);
-b472: *(u*)(vn + 64) = *(u*)(*(u*)(vn + 8) + 64);
+ v601;
+b472: *(u*)(vn + 64UL) = *(u*)(*(u*)(vn + 8UL) + 64UL);
goto b1;
-b476: v594 = 1;
+b474: goto b472;
+b476: v594 = 1UL;
goto b477;
-b468: v583 = 1;
+b466: goto b464;
+b468: v583 = 1UL;
goto b469;
-b463: if (vkind != 58) goto b481;
+b463: if (vkind != 58UL) goto b481;
if (!vrhs) goto b486;
- v602 = 0;
-b487: if (!v602) goto b482;
+ v602 = 0UL;
+b487: if (!v602) goto b484;
v603 = (u)zcdie;
v604 = vc;
v605 = (u)"not lexpr";
v606 = ((u(*)())v603)(v604, v605);
+ v606;
b482: v607 = (u)ztypecheck_expr;
v608 = vc;
v609 = vd;
- v610 = *(u*)(vn + 8);
- v611 = 1;
+ v610 = *(u*)(vn + 8UL);
+ v611 = 1UL;
v612 = ((u(*)())v607)(v608, v609, v610, v611);
+ v612;
v614 = (u)ztype_isint;
- v615 = *(u*)(*(u*)(vn + 8) + 64);
+ v615 = *(u*)(*(u*)(vn + 8UL) + 64UL);
v616 = ((u(*)())v614)(v615);
if (!v616) goto b494;
- v613 = 0;
-b495: if (!v613) goto b490;
+ v613 = 0UL;
+b495: if (!v613) goto b492;
v617 = (u)zcdie;
v618 = vc;
v619 = (u)"neg: not an int";
v620 = ((u(*)())v617)(v618, v619);
-b490: *(u*)(vn + 64) = *(u*)(*(u*)(vn + 8) + 64);
+ v620;
+b490: *(u*)(vn + 64UL) = *(u*)(*(u*)(vn + 8UL) + 64UL);
goto b1;
-b494: v613 = 1;
+b492: goto b490;
+b494: v613 = 1UL;
goto b495;
-b486: v602 = 1;
+b484: goto b482;
+b486: v602 = 1UL;
goto b487;
-b481: if (vkind != 56) goto b499;
+b481: if (vkind != 56UL) goto b499;
if (!vrhs) goto b504;
- v621 = 0;
-b505: if (!v621) goto b500;
+ v621 = 0UL;
+b505: if (!v621) goto b502;
v622 = (u)zcdie;
v623 = vc;
v624 = (u)"not lexpr";
v625 = ((u(*)())v622)(v623, v624);
+ v625;
b500: v626 = (u)ztypecheck_expr;
v627 = vc;
v628 = vd;
- v629 = *(u*)(vn + 8);
- v630 = 1;
+ v629 = *(u*)(vn + 8UL);
+ v630 = 1UL;
v631 = ((u(*)())v626)(v627, v628, v629, v630);
+ v631;
v633 = (u)ztype_isint;
- v634 = *(u*)(*(u*)(vn + 8) + 64);
+ v634 = *(u*)(*(u*)(vn + 8UL) + 64UL);
v635 = ((u(*)())v633)(v634);
if (!v635) goto b512;
- v632 = 0;
-b513: if (!v632) goto b508;
+ v632 = 0UL;
+b513: if (!v632) goto b510;
v636 = (u)zcdie;
v637 = vc;
v638 = (u)"not: not an int";
v639 = ((u(*)())v636)(v637, v638);
-b508: *(u*)(vn + 64) = *(u*)(*(u*)(vn + 8) + 64);
+ v639;
+b508: *(u*)(vn + 64UL) = *(u*)(*(u*)(vn + 8UL) + 64UL);
goto b1;
-b512: v632 = 1;
+b510: goto b508;
+b512: v632 = 1UL;
goto b513;
-b504: v621 = 1;
+b502: goto b500;
+b504: v621 = 1UL;
goto b505;
-b499: if (vkind != 45) goto b517;
+b499: if (vkind != 45UL) goto b517;
if (!vrhs) goto b522;
- v640 = 0;
-b523: if (!v640) goto b518;
+ v640 = 0UL;
+b523: if (!v640) goto b520;
v641 = (u)zcdie;
v642 = vc;
v643 = (u)"not lexpr";
v644 = ((u(*)())v641)(v642, v643);
+ v644;
b518: v645 = (u)ztypecheck_expr;
v646 = vc;
v647 = vd;
- v648 = *(u*)(vn + 16);
- v649 = 1;
+ v648 = *(u*)(vn + 16UL);
+ v649 = 1UL;
v650 = ((u(*)())v645)(v646, v647, v648, v649);
+ v650;
v651 = (u)ztypecheck_expr;
v652 = vc;
v653 = vd;
- v654 = *(u*)(vn + 8);
- v655 = 1;
+ v654 = *(u*)(vn + 8UL);
+ v655 = 1UL;
v656 = ((u(*)())v651)(v652, v653, v654, v655);
+ v656;
v657 = (u)zunify;
v658 = vc;
- v659 = *(u*)(*(u*)(vn + 8) + 64);
- v660 = *(u*)(*(u*)(vn + 16) + 64);
+ v659 = *(u*)(*(u*)(vn + 8UL) + 64UL);
+ v660 = *(u*)(*(u*)(vn + 16UL) + 64UL);
v661 = ((u(*)())v657)(v658, v659, v660);
+ v661;
v663 = (u)ztype_isint;
- v664 = *(u*)(*(u*)(vn + 8) + 64);
+ v664 = *(u*)(*(u*)(vn + 8UL) + 64UL);
v665 = ((u(*)())v663)(v664);
if (!v665) goto b532;
- v662 = 0;
-b533: if (!v662) goto b528;
+ v662 = 0UL;
+b533: if (!v662) goto b530;
v666 = (u)zcdie;
v667 = vc;
v668 = (u)"add: not an int";
v669 = ((u(*)())v666)(v667, v668);
-b528: *(u*)(vn + 64) = *(u*)(*(u*)(vn + 8) + 64);
+ v669;
+b528: *(u*)(vn + 64UL) = *(u*)(*(u*)(vn + 8UL) + 64UL);
goto b1;
-b532: v662 = 1;
+b530: goto b528;
+b532: v662 = 1UL;
goto b533;
-b522: v640 = 1;
+b520: goto b518;
+b522: v640 = 1UL;
goto b523;
-b517: if (vkind != 46) goto b537;
+b517: if (vkind != 46UL) goto b537;
if (!vrhs) goto b542;
- v670 = 0;
-b543: if (!v670) goto b538;
+ v670 = 0UL;
+b543: if (!v670) goto b540;
v671 = (u)zcdie;
v672 = vc;
v673 = (u)"not lexpr";
v674 = ((u(*)())v671)(v672, v673);
+ v674;
b538: v675 = (u)ztypecheck_expr;
v676 = vc;
v677 = vd;
- v678 = *(u*)(vn + 16);
- v679 = 1;
+ v678 = *(u*)(vn + 16UL);
+ v679 = 1UL;
v680 = ((u(*)())v675)(v676, v677, v678, v679);
+ v680;
v681 = (u)ztypecheck_expr;
v682 = vc;
v683 = vd;
- v684 = *(u*)(vn + 8);
- v685 = 1;
+ v684 = *(u*)(vn + 8UL);
+ v685 = 1UL;
v686 = ((u(*)())v681)(v682, v683, v684, v685);
+ v686;
v687 = (u)zunify;
v688 = vc;
- v689 = *(u*)(*(u*)(vn + 8) + 64);
- v690 = *(u*)(*(u*)(vn + 16) + 64);
+ v689 = *(u*)(*(u*)(vn + 8UL) + 64UL);
+ v690 = *(u*)(*(u*)(vn + 16UL) + 64UL);
v691 = ((u(*)())v687)(v688, v689, v690);
+ v691;
v693 = (u)ztype_isint;
- v694 = *(u*)(*(u*)(vn + 8) + 64);
+ v694 = *(u*)(*(u*)(vn + 8UL) + 64UL);
v695 = ((u(*)())v693)(v694);
if (!v695) goto b552;
- v692 = 0;
-b553: if (!v692) goto b548;
+ v692 = 0UL;
+b553: if (!v692) goto b550;
v696 = (u)zcdie;
v697 = vc;
v698 = (u)"sub: not an int";
v699 = ((u(*)())v696)(v697, v698);
-b548: *(u*)(vn + 64) = *(u*)(*(u*)(vn + 8) + 64);
+ v699;
+b548: *(u*)(vn + 64UL) = *(u*)(*(u*)(vn + 8UL) + 64UL);
goto b1;
-b552: v692 = 1;
+b550: goto b548;
+b552: v692 = 1UL;
goto b553;
-b542: v670 = 1;
+b540: goto b538;
+b542: v670 = 1UL;
goto b543;
-b537: if (vkind != 47) goto b557;
+b537: if (vkind != 47UL) goto b557;
if (!vrhs) goto b562;
- v700 = 0;
-b563: if (!v700) goto b558;
+ v700 = 0UL;
+b563: if (!v700) goto b560;
v701 = (u)zcdie;
v702 = vc;
v703 = (u)"not lexpr";
v704 = ((u(*)())v701)(v702, v703);
+ v704;
b558: v705 = (u)ztypecheck_expr;
v706 = vc;
v707 = vd;
- v708 = *(u*)(vn + 16);
- v709 = 1;
+ v708 = *(u*)(vn + 16UL);
+ v709 = 1UL;
v710 = ((u(*)())v705)(v706, v707, v708, v709);
+ v710;
v711 = (u)ztypecheck_expr;
v712 = vc;
v713 = vd;
- v714 = *(u*)(vn + 8);
- v715 = 1;
+ v714 = *(u*)(vn + 8UL);
+ v715 = 1UL;
v716 = ((u(*)())v711)(v712, v713, v714, v715);
+ v716;
v717 = (u)zunify;
v718 = vc;
- v719 = *(u*)(*(u*)(vn + 8) + 64);
- v720 = *(u*)(*(u*)(vn + 16) + 64);
+ v719 = *(u*)(*(u*)(vn + 8UL) + 64UL);
+ v720 = *(u*)(*(u*)(vn + 16UL) + 64UL);
v721 = ((u(*)())v717)(v718, v719, v720);
+ v721;
v723 = (u)ztype_isint;
- v724 = *(u*)(*(u*)(vn + 8) + 64);
+ v724 = *(u*)(*(u*)(vn + 8UL) + 64UL);
v725 = ((u(*)())v723)(v724);
if (!v725) goto b572;
- v722 = 0;
-b573: if (!v722) goto b568;
+ v722 = 0UL;
+b573: if (!v722) goto b570;
v726 = (u)zcdie;
v727 = vc;
v728 = (u)"mul: not an int";
v729 = ((u(*)())v726)(v727, v728);
-b568: *(u*)(vn + 64) = *(u*)(*(u*)(vn + 8) + 64);
+ v729;
+b568: *(u*)(vn + 64UL) = *(u*)(*(u*)(vn + 8UL) + 64UL);
goto b1;
-b572: v722 = 1;
+b570: goto b568;
+b572: v722 = 1UL;
goto b573;
-b562: v700 = 1;
+b560: goto b558;
+b562: v700 = 1UL;
goto b563;
-b557: if (vkind != 59) goto b577;
+b557: if (vkind != 59UL) goto b577;
if (!vrhs) goto b582;
- v730 = 0;
-b583: if (!v730) goto b578;
+ v730 = 0UL;
+b583: if (!v730) goto b580;
v731 = (u)zcdie;
v732 = vc;
v733 = (u)"not lexpr";
v734 = ((u(*)())v731)(v732, v733);
+ v734;
b578: v735 = (u)ztypecheck_expr;
v736 = vc;
v737 = vd;
- v738 = *(u*)(vn + 16);
- v739 = 1;
+ v738 = *(u*)(vn + 16UL);
+ v739 = 1UL;
v740 = ((u(*)())v735)(v736, v737, v738, v739);
+ v740;
v741 = (u)ztypecheck_expr;
v742 = vc;
v743 = vd;
- v744 = *(u*)(vn + 8);
- v745 = 1;
+ v744 = *(u*)(vn + 8UL);
+ v745 = 1UL;
v746 = ((u(*)())v741)(v742, v743, v744, v745);
+ v746;
v747 = (u)zunify;
v748 = vc;
- v749 = *(u*)(*(u*)(vn + 8) + 64);
- v750 = *(u*)(*(u*)(vn + 16) + 64);
+ v749 = *(u*)(*(u*)(vn + 8UL) + 64UL);
+ v750 = *(u*)(*(u*)(vn + 16UL) + 64UL);
v751 = ((u(*)())v747)(v748, v749, v750);
+ v751;
v753 = (u)ztype_isint;
- v754 = *(u*)(*(u*)(vn + 8) + 64);
+ v754 = *(u*)(*(u*)(vn + 8UL) + 64UL);
v755 = ((u(*)())v753)(v754);
if (!v755) goto b592;
- v752 = 0;
-b593: if (!v752) goto b588;
+ v752 = 0UL;
+b593: if (!v752) goto b590;
v756 = (u)zcdie;
v757 = vc;
v758 = (u)"div: not an int";
v759 = ((u(*)())v756)(v757, v758);
-b588: *(u*)(vn + 64) = *(u*)(*(u*)(vn + 8) + 64);
+ v759;
+b588: *(u*)(vn + 64UL) = *(u*)(*(u*)(vn + 8UL) + 64UL);
goto b1;
-b592: v752 = 1;
+b590: goto b588;
+b592: v752 = 1UL;
goto b593;
-b582: v730 = 1;
+b580: goto b578;
+b582: v730 = 1UL;
goto b583;
-b577: if (vkind != 60) goto b597;
+b577: if (vkind != 60UL) goto b597;
if (!vrhs) goto b602;
- v760 = 0;
-b603: if (!v760) goto b598;
+ v760 = 0UL;
+b603: if (!v760) goto b600;
v761 = (u)zcdie;
v762 = vc;
v763 = (u)"not lexpr";
v764 = ((u(*)())v761)(v762, v763);
+ v764;
b598: v765 = (u)ztypecheck_expr;
v766 = vc;
v767 = vd;
- v768 = *(u*)(vn + 16);
- v769 = 1;
+ v768 = *(u*)(vn + 16UL);
+ v769 = 1UL;
v770 = ((u(*)())v765)(v766, v767, v768, v769);
+ v770;
v771 = (u)ztypecheck_expr;
v772 = vc;
v773 = vd;
- v774 = *(u*)(vn + 8);
- v775 = 1;
+ v774 = *(u*)(vn + 8UL);
+ v775 = 1UL;
v776 = ((u(*)())v771)(v772, v773, v774, v775);
+ v776;
v777 = (u)zunify;
v778 = vc;
- v779 = *(u*)(*(u*)(vn + 8) + 64);
- v780 = *(u*)(*(u*)(vn + 16) + 64);
+ v779 = *(u*)(*(u*)(vn + 8UL) + 64UL);
+ v780 = *(u*)(*(u*)(vn + 16UL) + 64UL);
v781 = ((u(*)())v777)(v778, v779, v780);
+ v781;
v783 = (u)ztype_isint;
- v784 = *(u*)(*(u*)(vn + 8) + 64);
+ v784 = *(u*)(*(u*)(vn + 8UL) + 64UL);
v785 = ((u(*)())v783)(v784);
if (!v785) goto b612;
- v782 = 0;
-b613: if (!v782) goto b608;
+ v782 = 0UL;
+b613: if (!v782) goto b610;
v786 = (u)zcdie;
v787 = vc;
v788 = (u)"mod: not an int";
v789 = ((u(*)())v786)(v787, v788);
-b608: *(u*)(vn + 64) = *(u*)(*(u*)(vn + 8) + 64);
+ v789;
+b608: *(u*)(vn + 64UL) = *(u*)(*(u*)(vn + 8UL) + 64UL);
goto b1;
-b612: v782 = 1;
+b610: goto b608;
+b612: v782 = 1UL;
goto b613;
-b602: v760 = 1;
+b600: goto b598;
+b602: v760 = 1UL;
goto b603;
-b597: if (vkind != 48) goto b617;
+b597: if (vkind != 48UL) goto b617;
if (!vrhs) goto b622;
- v790 = 0;
-b623: if (!v790) goto b618;
+ v790 = 0UL;
+b623: if (!v790) goto b620;
v791 = (u)zcdie;
v792 = vc;
v793 = (u)"not lexpr";
v794 = ((u(*)())v791)(v792, v793);
+ v794;
b618: v795 = (u)ztypecheck_expr;
v796 = vc;
v797 = vd;
- v798 = *(u*)(vn + 16);
- v799 = 1;
+ v798 = *(u*)(vn + 16UL);
+ v799 = 1UL;
v800 = ((u(*)())v795)(v796, v797, v798, v799);
+ v800;
v801 = (u)ztypecheck_expr;
v802 = vc;
v803 = vd;
- v804 = *(u*)(vn + 8);
- v805 = 1;
+ v804 = *(u*)(vn + 8UL);
+ v805 = 1UL;
v806 = ((u(*)())v801)(v802, v803, v804, v805);
+ v806;
v807 = (u)zunify;
v808 = vc;
- v809 = *(u*)(*(u*)(vn + 8) + 64);
- v810 = *(u*)(*(u*)(vn + 16) + 64);
+ v809 = *(u*)(*(u*)(vn + 8UL) + 64UL);
+ v810 = *(u*)(*(u*)(vn + 16UL) + 64UL);
v811 = ((u(*)())v807)(v808, v809, v810);
+ v811;
v813 = (u)ztype_isint;
- v814 = *(u*)(*(u*)(vn + 8) + 64);
+ v814 = *(u*)(*(u*)(vn + 8UL) + 64UL);
v815 = ((u(*)())v813)(v814);
if (!v815) goto b632;
- v812 = 0;
-b633: if (!v812) goto b628;
+ v812 = 0UL;
+b633: if (!v812) goto b630;
v816 = (u)zcdie;
v817 = vc;
v818 = (u)"lsh: not an int";
v819 = ((u(*)())v816)(v817, v818);
-b628: *(u*)(vn + 64) = *(u*)(*(u*)(vn + 8) + 64);
+ v819;
+b628: *(u*)(vn + 64UL) = *(u*)(*(u*)(vn + 8UL) + 64UL);
goto b1;
-b632: v812 = 1;
+b630: goto b628;
+b632: v812 = 1UL;
goto b633;
-b622: v790 = 1;
+b620: goto b618;
+b622: v790 = 1UL;
goto b623;
-b617: if (vkind != 49) goto b637;
+b617: if (vkind != 49UL) goto b637;
if (!vrhs) goto b642;
- v820 = 0;
-b643: if (!v820) goto b638;
+ v820 = 0UL;
+b643: if (!v820) goto b640;
v821 = (u)zcdie;
v822 = vc;
v823 = (u)"not lexpr";
v824 = ((u(*)())v821)(v822, v823);
+ v824;
b638: v825 = (u)ztypecheck_expr;
v826 = vc;
v827 = vd;
- v828 = *(u*)(vn + 16);
- v829 = 1;
+ v828 = *(u*)(vn + 16UL);
+ v829 = 1UL;
v830 = ((u(*)())v825)(v826, v827, v828, v829);
+ v830;
v831 = (u)ztypecheck_expr;
v832 = vc;
v833 = vd;
- v834 = *(u*)(vn + 8);
- v835 = 1;
+ v834 = *(u*)(vn + 8UL);
+ v835 = 1UL;
v836 = ((u(*)())v831)(v832, v833, v834, v835);
+ v836;
v837 = (u)zunify;
v838 = vc;
- v839 = *(u*)(*(u*)(vn + 8) + 64);
- v840 = *(u*)(*(u*)(vn + 16) + 64);
+ v839 = *(u*)(*(u*)(vn + 8UL) + 64UL);
+ v840 = *(u*)(*(u*)(vn + 16UL) + 64UL);
v841 = ((u(*)())v837)(v838, v839, v840);
+ v841;
v843 = (u)ztype_isint;
- v844 = *(u*)(*(u*)(vn + 8) + 64);
+ v844 = *(u*)(*(u*)(vn + 8UL) + 64UL);
v845 = ((u(*)())v843)(v844);
if (!v845) goto b652;
- v842 = 0;
-b653: if (!v842) goto b648;
+ v842 = 0UL;
+b653: if (!v842) goto b650;
v846 = (u)zcdie;
v847 = vc;
v848 = (u)"rsh: not an int";
v849 = ((u(*)())v846)(v847, v848);
-b648: *(u*)(vn + 64) = *(u*)(*(u*)(vn + 8) + 64);
+ v849;
+b648: *(u*)(vn + 64UL) = *(u*)(*(u*)(vn + 8UL) + 64UL);
goto b1;
-b652: v842 = 1;
+b650: goto b648;
+b652: v842 = 1UL;
goto b653;
-b642: v820 = 1;
+b640: goto b638;
+b642: v820 = 1UL;
goto b643;
-b637: if (vkind != 53) goto b657;
+b637: if (vkind != 53UL) goto b657;
if (!vrhs) goto b662;
- v850 = 0;
-b663: if (!v850) goto b658;
+ v850 = 0UL;
+b663: if (!v850) goto b660;
v851 = (u)zcdie;
v852 = vc;
v853 = (u)"not lexpr";
v854 = ((u(*)())v851)(v852, v853);
+ v854;
b658: v855 = (u)ztypecheck_expr;
v856 = vc;
v857 = vd;
- v858 = *(u*)(vn + 16);
- v859 = 1;
+ v858 = *(u*)(vn + 16UL);
+ v859 = 1UL;
v860 = ((u(*)())v855)(v856, v857, v858, v859);
+ v860;
v861 = (u)ztypecheck_expr;
v862 = vc;
v863 = vd;
- v864 = *(u*)(vn + 8);
- v865 = 1;
+ v864 = *(u*)(vn + 8UL);
+ v865 = 1UL;
v866 = ((u(*)())v861)(v862, v863, v864, v865);
+ v866;
v867 = (u)zunify;
v868 = vc;
- v869 = *(u*)(*(u*)(vn + 8) + 64);
- v870 = *(u*)(*(u*)(vn + 16) + 64);
+ v869 = *(u*)(*(u*)(vn + 8UL) + 64UL);
+ v870 = *(u*)(*(u*)(vn + 16UL) + 64UL);
v871 = ((u(*)())v867)(v868, v869, v870);
+ v871;
v873 = (u)ztype_isint;
- v874 = *(u*)(*(u*)(vn + 8) + 64);
+ v874 = *(u*)(*(u*)(vn + 8UL) + 64UL);
v875 = ((u(*)())v873)(v874);
if (!v875) goto b672;
- v872 = 0;
-b673: if (!v872) goto b668;
+ v872 = 0UL;
+b673: if (!v872) goto b670;
v876 = (u)zcdie;
v877 = vc;
v878 = (u)"and: not an int";
v879 = ((u(*)())v876)(v877, v878);
-b668: *(u*)(vn + 64) = *(u*)(*(u*)(vn + 8) + 64);
+ v879;
+b668: *(u*)(vn + 64UL) = *(u*)(*(u*)(vn + 8UL) + 64UL);
goto b1;
-b672: v872 = 1;
+b670: goto b668;
+b672: v872 = 1UL;
goto b673;
-b662: v850 = 1;
+b660: goto b658;
+b662: v850 = 1UL;
goto b663;
-b657: if (vkind != 54) goto b677;
+b657: if (vkind != 54UL) goto b677;
if (!vrhs) goto b682;
- v880 = 0;
-b683: if (!v880) goto b678;
+ v880 = 0UL;
+b683: if (!v880) goto b680;
v881 = (u)zcdie;
v882 = vc;
v883 = (u)"not lexpr";
v884 = ((u(*)())v881)(v882, v883);
+ v884;
b678: v885 = (u)ztypecheck_expr;
v886 = vc;
v887 = vd;
- v888 = *(u*)(vn + 16);
- v889 = 1;
+ v888 = *(u*)(vn + 16UL);
+ v889 = 1UL;
v890 = ((u(*)())v885)(v886, v887, v888, v889);
+ v890;
v891 = (u)ztypecheck_expr;
v892 = vc;
v893 = vd;
- v894 = *(u*)(vn + 8);
- v895 = 1;
+ v894 = *(u*)(vn + 8UL);
+ v895 = 1UL;
v896 = ((u(*)())v891)(v892, v893, v894, v895);
+ v896;
v897 = (u)zunify;
v898 = vc;
- v899 = *(u*)(*(u*)(vn + 8) + 64);
- v900 = *(u*)(*(u*)(vn + 16) + 64);
+ v899 = *(u*)(*(u*)(vn + 8UL) + 64UL);
+ v900 = *(u*)(*(u*)(vn + 16UL) + 64UL);
v901 = ((u(*)())v897)(v898, v899, v900);
+ v901;
v903 = (u)ztype_isint;
- v904 = *(u*)(*(u*)(vn + 8) + 64);
+ v904 = *(u*)(*(u*)(vn + 8UL) + 64UL);
v905 = ((u(*)())v903)(v904);
if (!v905) goto b692;
- v902 = 0;
-b693: if (!v902) goto b688;
+ v902 = 0UL;
+b693: if (!v902) goto b690;
v906 = (u)zcdie;
v907 = vc;
v908 = (u)"or: not an int";
v909 = ((u(*)())v906)(v907, v908);
-b688: *(u*)(vn + 64) = *(u*)(*(u*)(vn + 8) + 64);
+ v909;
+b688: *(u*)(vn + 64UL) = *(u*)(*(u*)(vn + 8UL) + 64UL);
goto b1;
-b692: v902 = 1;
+b690: goto b688;
+b692: v902 = 1UL;
goto b693;
-b682: v880 = 1;
+b680: goto b678;
+b682: v880 = 1UL;
goto b683;
-b677: if (vkind != 55) goto b697;
+b677: if (vkind != 55UL) goto b697;
if (!vrhs) goto b702;
- v910 = 0;
-b703: if (!v910) goto b698;
+ v910 = 0UL;
+b703: if (!v910) goto b700;
v911 = (u)zcdie;
v912 = vc;
v913 = (u)"not lexpr";
v914 = ((u(*)())v911)(v912, v913);
+ v914;
b698: v915 = (u)ztypecheck_expr;
v916 = vc;
v917 = vd;
- v918 = *(u*)(vn + 16);
- v919 = 1;
+ v918 = *(u*)(vn + 16UL);
+ v919 = 1UL;
v920 = ((u(*)())v915)(v916, v917, v918, v919);
+ v920;
v921 = (u)ztypecheck_expr;
v922 = vc;
v923 = vd;
- v924 = *(u*)(vn + 8);
- v925 = 1;
+ v924 = *(u*)(vn + 8UL);
+ v925 = 1UL;
v926 = ((u(*)())v921)(v922, v923, v924, v925);
+ v926;
v927 = (u)zunify;
v928 = vc;
- v929 = *(u*)(*(u*)(vn + 8) + 64);
- v930 = *(u*)(*(u*)(vn + 16) + 64);
+ v929 = *(u*)(*(u*)(vn + 8UL) + 64UL);
+ v930 = *(u*)(*(u*)(vn + 16UL) + 64UL);
v931 = ((u(*)())v927)(v928, v929, v930);
+ v931;
v933 = (u)ztype_isint;
- v934 = *(u*)(*(u*)(vn + 8) + 64);
+ v934 = *(u*)(*(u*)(vn + 8UL) + 64UL);
v935 = ((u(*)())v933)(v934);
if (!v935) goto b712;
- v932 = 0;
-b713: if (!v932) goto b708;
+ v932 = 0UL;
+b713: if (!v932) goto b710;
v936 = (u)zcdie;
v937 = vc;
v938 = (u)"xor: not an int";
v939 = ((u(*)())v936)(v937, v938);
-b708: *(u*)(vn + 64) = *(u*)(*(u*)(vn + 8) + 64);
+ v939;
+b708: *(u*)(vn + 64UL) = *(u*)(*(u*)(vn + 8UL) + 64UL);
goto b1;
-b712: v932 = 1;
+b710: goto b708;
+b712: v932 = 1UL;
goto b713;
-b702: v910 = 1;
+b700: goto b698;
+b702: v910 = 1UL;
goto b703;
-b697: if (vkind != 37) goto b717;
+b697: if (vkind != 37UL) goto b717;
if (!vrhs) goto b722;
- v940 = 0;
-b723: if (!v940) goto b718;
+ v940 = 0UL;
+b723: if (!v940) goto b720;
v941 = (u)zcdie;
v942 = vc;
v943 = (u)"not lexpr";
v944 = ((u(*)())v941)(v942, v943);
+ v944;
b718: v945 = (u)ztypecheck_expr;
v946 = vc;
v947 = vd;
- v948 = *(u*)(vn + 8);
- v949 = 1;
+ v948 = *(u*)(vn + 8UL);
+ v949 = 1UL;
v950 = ((u(*)())v945)(v946, v947, v948, v949);
+ v950;
v952 = (u)ztype_isprim;
- v953 = *(u*)(*(u*)(vn + 8) + 64);
+ v953 = *(u*)(*(u*)(vn + 8UL) + 64UL);
v954 = ((u(*)())v952)(v953);
if (!v954) goto b730;
- v951 = 0;
-b731: if (!v951) goto b726;
+ v951 = 0UL;
+b731: if (!v951) goto b728;
v955 = (u)zcdie;
v956 = vc;
v957 = (u)"not a primitive";
v958 = ((u(*)())v955)(v956, v957);
+ v958;
b726: v959 = (u)zprototype;
v960 = vc;
- v961 = *(u*)(vn + 16);
+ v961 = *(u*)(vn + 16UL);
v962 = ((u(*)())v959)(v960, v961);
- *(u*)(vn + 64) = v962;
+ *(u*)(vn + 64UL) = v962;
goto b1;
-b730: v951 = 1;
+b728: goto b726;
+b730: v951 = 1UL;
goto b731;
-b722: v940 = 1;
+b720: goto b718;
+b722: v940 = 1UL;
goto b723;
b717: v963 = (u)zcdie;
v964 = vc;
v965 = (u)"not an expression";
v966 = ((u(*)())v963)(v964, v965);
+ v966;
goto b1;
}
u ztypecheck_stmt(u vc, u vd, u vn) {
@@ -36560,139 +39843,156 @@ u ztypecheck_stmt(u vc, u vd, u vn) {
u v79 = 0;
u v80 = 0;
if (!vn) goto b5;
- v5 = 0;
-b6: if (!v5) goto b1;
- return 0;
-b1: *(u*)(vc + 24) = *(u*)(vn + 24);
- *(u*)(vc + 32) = *(u*)(vn + 32);
- *(u*)(vc + 40) = *(u*)(vn + 40);
- vkind = *(u*)vn;
- if (vkind != 21) goto b9;
+ v5 = 0UL;
+b6: if (!v5) goto b3;
+ return 0UL;
+b3: *(u*)(vc + 24UL) = *(u*)(vn + 24UL);
+ *(u*)(vc + 32UL) = *(u*)(vn + 32UL);
+ *(u*)(vc + 40UL) = *(u*)(vn + 40UL);
+ vkind = *(u*)(vn + 0UL);
+ if (vkind != 21UL) goto b9;
b10: if (!vn) goto b16;
- v6 = 0;
-b17: if (!v6) goto b12;
-b7: return 0;
-b12: if (!*(u*)(*(u*)(vn + 8) + 8)) goto b18;
+ v6 = 0UL;
+b17: if (!v6) goto b14;
+b7: return 0UL;
+b14: if (!*(u*)(*(u*)(vn + 8UL) + 8UL)) goto b20;
v7 = (u)ztypecheck_expr;
v8 = vc;
v9 = vd;
- v10 = *(u*)(*(u*)(vn + 8) + 8);
- v11 = 1;
+ v10 = *(u*)(*(u*)(vn + 8UL) + 8UL);
+ v11 = 1UL;
v12 = ((u(*)())v7)(v8, v9, v10, v11);
+ v12;
b18: v13 = (u)ztypecheck_stmt;
v14 = vc;
v15 = vd;
- v16 = *(u*)(*(u*)(vn + 8) + 16);
+ v16 = *(u*)(*(u*)(vn + 8UL) + 16UL);
v17 = ((u(*)())v13)(v14, v15, v16);
- vn = *(u*)(vn + 16);
+ v17;
+ vn = *(u*)(vn + 16UL);
goto b10;
-b16: v6 = 1;
+b20: goto b18;
+b16: v6 = 1UL;
goto b17;
-b9: if (vkind != 5) goto b24;
+b9: if (vkind != 5UL) goto b24;
b25: if (!vn) goto b31;
- v18 = 0;
-b32: if (!v18) goto b27;
+ v18 = 0UL;
+b32: if (!v18) goto b29;
goto b7;
-b27: v19 = (u)ztypecheck_stmt;
+b29: v19 = (u)ztypecheck_stmt;
v20 = vc;
v21 = vd;
- v22 = *(u*)(vn + 8);
+ v22 = *(u*)(vn + 8UL);
v23 = ((u(*)())v19)(v20, v21, v22);
- vn = *(u*)(vn + 16);
+ v23;
+ vn = *(u*)(vn + 16UL);
goto b25;
-b31: v18 = 1;
+b31: v18 = 1UL;
goto b32;
-b24: if (vkind != 26) goto b35;
+b24: if (vkind != 26UL) goto b35;
v24 = (u)ztypecheck_stmt;
v25 = vc;
v26 = vd;
- v27 = *(u*)(vn + 8);
+ v27 = *(u*)(vn + 8UL);
v28 = ((u(*)())v24)(v25, v26, v27);
+ v28;
goto b7;
-b35: if (vkind != 27) goto b38;
+b35: if (vkind != 27UL) goto b38;
goto b7;
-b38: if (vkind != 28) goto b40;
+b38: if (vkind != 28UL) goto b40;
goto b7;
-b40: if (vkind != 29) goto b42;
- if (!*(u*)(vn + 8)) goto b45;
- if (*(u*)*(u*)(*(u*)(vd + 80) + 16) != 1) goto b46;
+b40: if (vkind != 29UL) goto b42;
+ if (!*(u*)(vn + 8UL)) goto b45;
+ if (*(u*)(*(u*)(*(u*)(vd + 80UL) + 16UL) + 0UL) != 1UL) goto b48;
v29 = (u)zcdie;
v30 = vc;
v31 = (u)"returning a value in a void function";
v32 = ((u(*)())v29)(v30, v31);
+ v32;
b46: v33 = (u)zcall_check;
v34 = vc;
- v35 = *(u*)(vn + 8);
+ v35 = *(u*)(vn + 8UL);
v36 = ((u(*)())v33)(v34, v35);
+ v36;
v37 = (u)ztypecheck_expr;
v38 = vc;
v39 = vd;
- v40 = *(u*)(vn + 8);
- v41 = 1;
+ v40 = *(u*)(vn + 8UL);
+ v41 = 1UL;
v42 = ((u(*)())v37)(v38, v39, v40, v41);
+ v42;
v43 = (u)zunify;
v44 = vc;
- v45 = *(u*)(*(u*)(vn + 8) + 64);
- v46 = *(u*)(*(u*)(vd + 80) + 16);
+ v45 = *(u*)(*(u*)(vn + 8UL) + 64UL);
+ v46 = *(u*)(*(u*)(vd + 80UL) + 16UL);
v47 = ((u(*)())v43)(v44, v45, v46);
- goto b7;
-b45: if (*(u*)*(u*)(*(u*)(vd + 80) + 16) == 1) goto b7;
+ v47;
+b43: goto b7;
+b48: goto b46;
+b45: if (*(u*)(*(u*)(*(u*)(vd + 80UL) + 16UL) + 0UL) == 1UL) goto b55;
v48 = (u)zcdie;
v49 = vc;
v50 = (u)"returning void in a non void function";
v51 = ((u(*)())v48)(v49, v50);
- goto b7;
-b42: if (vkind != 31) goto b58;
+ v51;
+b53: goto b43;
+b55: goto b53;
+b42: if (vkind != 31UL) goto b58;
v52 = (u)zfind;
v53 = vc;
- v54 = *(u*)(vd + 32);
- v55 = *(u*)(*(u*)(vn + 8) + 56);
- v56 = 0;
+ v54 = *(u*)(vd + 32UL);
+ v55 = *(u*)(*(u*)(vn + 8UL) + 56UL);
+ v56 = 0UL;
v57 = ((u(*)())v52)(v53, v54, v55, v56);
vv = v57;
goto b7;
-b58: if (vkind != 32) goto b61;
+b58: if (vkind != 32UL) goto b61;
v58 = (u)zfind;
v59 = vc;
- v60 = *(u*)(vd + 32);
- v61 = *(u*)(*(u*)(vn + 8) + 56);
- v62 = 0;
+ v60 = *(u*)(vd + 32UL);
+ v61 = *(u*)(*(u*)(vn + 8UL) + 56UL);
+ v62 = 0UL;
v63 = ((u(*)())v58)(v59, v60, v61, v62);
vv = v63;
if (!vv) goto b71;
- v65 = 0;
+ v65 = 0UL;
b72: if (!v65) goto b67;
- v64 = 1;
-b69: if (!v64) goto b7;
+ v64 = 1UL;
+b69: if (!v64) goto b65;
v67 = (u)zcdie;
v68 = vc;
v69 = (u)"label not defined";
v70 = ((u(*)())v67)(v68, v69);
- goto b7;
-b67: if (!*(u*)(vv + 208)) goto b75;
- v66 = 0;
+ v70;
+b63: goto b7;
+b65: goto b63;
+b67: if (!*(u*)(vv + 208UL)) goto b75;
+ v66 = 0UL;
b76: if (!v66) goto b73;
- v64 = 1;
+ v64 = 1UL;
goto b69;
-b73: v64 = 0;
+b73: v64 = 0UL;
goto b69;
-b75: v66 = 1;
+b75: v66 = 1UL;
goto b76;
-b71: v65 = 1;
+b71: v65 = 1UL;
goto b72;
-b61: if (vkind == 30) goto b7;
+b61: if (vkind == 30UL) goto b79;
v71 = (u)zcall_check;
v72 = vc;
v73 = vn;
v74 = ((u(*)())v71)(v72, v73);
+ v74;
v75 = (u)ztypecheck_expr;
v76 = vc;
v77 = vd;
v78 = vn;
- v79 = 1;
+ v79 = 1UL;
v80 = ((u(*)())v75)(v76, v77, v78, v79);
+ v80;
goto b7;
-b5: v5 = 1;
+b79: goto b7;
+b5: v5 = 1UL;
goto b6;
}
u zunescape(u vs, u vi, u vlen, u vok) {
@@ -36708,67 +40008,67 @@ u zunescape(u vs, u vi, u vlen, u vok) {
u v13 = 0;
u v14 = 0;
u v15 = 0;
- *(u*)vok = 1;
- if ((s)*(u*)vi < (s)vlen) goto b1;
- *(u*)vok = 0;
- return 0;
-b1: vch = (u)*(b*)(vs + *(u*)vi);
- *(u*)vi = *(u*)vi + 1;
- if (vch == 92) goto b4;
+ *(u*)vok = 1UL;
+ if ((s)*(u*)vi < (s)vlen) goto b3;
+ *(u*)vok = 0UL;
+ return 0UL;
+b3: vch = (u)*(b*)(vs + *(u*)vi * 1UL);
+ *(u*)vi = *(u*)vi + 1UL;
+ if (vch == 92UL) goto b6;
return vch;
-b4: if ((s)*(u*)vi < (s)vlen) goto b7;
- *(u*)vok = 0;
- return 0;
-b7: vch = (u)*(b*)(vs + *(u*)vi);
- *(u*)vi = *(u*)vi + 1;
- if (vch != 116) goto b12;
- return 9;
-b12: if (vch != 114) goto b14;
- return 13;
-b14: if (vch != 110) goto b16;
- return 10;
-b16: if (vch != 92) goto b18;
- return 92;
-b18: if (vch != 39) goto b20;
- return 39;
-b20: if (vch != 34) goto b22;
- return 34;
-b22: if (vch != 120) goto b24;
- if ((s)*(u*)vi < (s)vlen) goto b25;
- *(u*)vok = 0;
- return 0;
-b25: vch = (u)*(b*)(vs + *(u*)vi);
- *(u*)vi = *(u*)vi + 1;
+b6: if ((s)*(u*)vi < (s)vlen) goto b9;
+ *(u*)vok = 0UL;
+ return 0UL;
+b9: vch = (u)*(b*)(vs + *(u*)vi * 1UL);
+ *(u*)vi = *(u*)vi + 1UL;
+ if (vch != 116UL) goto b12;
+ return 9UL;
+b12: if (vch != 114UL) goto b14;
+ return 13UL;
+b14: if (vch != 110UL) goto b16;
+ return 10UL;
+b16: if (vch != 92UL) goto b18;
+ return 92UL;
+b18: if (vch != 39UL) goto b20;
+ return 39UL;
+b20: if (vch != 34UL) goto b22;
+ return 34UL;
+b22: if (vch != 120UL) goto b24;
+ if ((s)*(u*)vi < (s)vlen) goto b27;
+ *(u*)vok = 0UL;
+ return 0UL;
+b27: vch = (u)*(b*)(vs + *(u*)vi * 1UL);
+ *(u*)vi = *(u*)vi + 1UL;
v6 = (u)zhexdig;
v7 = vch;
v8 = vok;
v9 = ((u(*)())v6)(v7, v8);
- vhex = v9 * 16;
+ vhex = v9 * 16UL;
if (!*(u*)vok) goto b33;
- v10 = 0;
-b34: if (!v10) goto b29;
- return 0;
-b29: if ((s)*(u*)vi < (s)vlen) goto b35;
- *(u*)vok = 0;
- return 0;
-b35: vch = (u)*(b*)(vs + *(u*)vi);
- *(u*)vi = *(u*)vi + 1;
+ v10 = 0UL;
+b34: if (!v10) goto b31;
+ return 0UL;
+b31: if ((s)*(u*)vi < (s)vlen) goto b37;
+ *(u*)vok = 0UL;
+ return 0UL;
+b37: vch = (u)*(b*)(vs + *(u*)vi * 1UL);
+ *(u*)vi = *(u*)vi + 1UL;
v11 = (u)zhexdig;
v12 = vch;
v13 = vok;
v14 = ((u(*)())v11)(v12, v13);
vhex = vhex | v14;
if (!*(u*)vok) goto b43;
- v15 = 0;
-b44: if (!v15) goto b39;
- return 0;
-b39: return vhex;
-b43: v15 = 1;
+ v15 = 0UL;
+b44: if (!v15) goto b41;
+ return 0UL;
+b41: return vhex;
+b43: v15 = 1UL;
goto b44;
-b33: v10 = 1;
+b33: v10 = 1UL;
goto b34;
-b24: *(u*)vok = 0;
- return 0;
+b24: *(u*)vok = 0UL;
+ return 0UL;
}
u zunify(u vc, u va, u vb) {
u vkind = 0;
@@ -36826,135 +40126,148 @@ u zunify(u vc, u va, u vb) {
u v55 = 0;
u v56 = 0;
u v57 = 0;
- if (va != vb) goto b1;
- return 0;
-b1: if (!va) goto b8;
+ if (va != vb) goto b3;
+ return 0UL;
+b3: if (!va) goto b8;
if (!vb) goto b12;
- if (*(u*)va != 0) goto b20;
- if (*(u*)vb != 4) goto b20;
- v7 = 1;
+ if (*(u*)(va + 0UL) != 0UL) goto b20;
+ if (*(u*)(vb + 0UL) != 4UL) goto b20;
+ v7 = 1UL;
b22: if (!v7) goto b16;
- v6 = 1;
+ v6 = 1UL;
b18: if (!v6) goto b12;
- v5 = 1;
+ v5 = 1UL;
b14: if (!v5) goto b8;
- v4 = 1;
-b10: if (!v4) goto b4;
- return 0;
-b4: if (!va) goto b36;
+ v4 = 1UL;
+b10: if (!v4) goto b6;
+ return 0UL;
+b6: if (!va) goto b36;
if (!vb) goto b40;
- v11 = 0;
+ v11 = 0UL;
b41: if (!v11) goto b36;
- v10 = 1;
+ v10 = 1UL;
b38: if (!v10) goto b32;
- v9 = 1;
-b34: if (!v9) goto b28;
+ v9 = 1UL;
+b34: if (!v9) goto b30;
v15 = (u)zcdie;
v16 = vc;
v17 = (u)"type error";
v18 = ((u(*)())v15)(v16, v17);
-b28: vkind = *(u*)va;
- if (vkind != 4) goto b58;
+ v18;
+b28: vkind = *(u*)(va + 0UL);
+ if (vkind != 4UL) goto b58;
v19 = (u)zunify;
v20 = vc;
- v21 = *(u*)(va + 16);
- v22 = *(u*)(vb + 16);
+ v21 = *(u*)(va + 16UL);
+ v22 = *(u*)(vb + 16UL);
v23 = ((u(*)())v19)(v20, v21, v22);
-b56: return 0;
-b58: if (vkind != 6) goto b61;
+ v23;
+b56: return 0UL;
+b58: if (vkind != 6UL) goto b61;
v24 = (u)zunify;
v25 = vc;
- v26 = *(u*)(va + 16);
- v27 = *(u*)(vb + 16);
+ v26 = *(u*)(va + 16UL);
+ v27 = *(u*)(vb + 16UL);
v28 = ((u(*)())v24)(v25, v26, v27);
+ v28;
v29 = (u)zunify;
v30 = vc;
- v31 = *(u*)(va + 24);
- v32 = *(u*)(vb + 24);
+ v31 = *(u*)(va + 24UL);
+ v32 = *(u*)(vb + 24UL);
v33 = ((u(*)())v29)(v30, v31, v32);
+ v33;
goto b56;
-b61: if (vkind != 5) goto b65;
+b61: if (vkind != 5UL) goto b65;
v34 = (u)zunify;
v35 = vc;
- v36 = *(u*)(va + 16);
- v37 = *(u*)(vb + 16);
+ v36 = *(u*)(va + 16UL);
+ v37 = *(u*)(vb + 16UL);
v38 = ((u(*)())v34)(v35, v36, v37);
+ v38;
v39 = (u)zunify;
v40 = vc;
- v41 = *(u*)(va + 24);
- v42 = *(u*)(vb + 24);
+ v41 = *(u*)(va + 24UL);
+ v42 = *(u*)(vb + 24UL);
v43 = ((u(*)())v39)(v40, v41, v42);
+ v43;
goto b56;
-b65: if (vkind != 7) goto b69;
- if (*(u*)(va + 8) == *(u*)(vb + 8)) goto b56;
+b65: if (vkind != 7UL) goto b69;
+ if (*(u*)(va + 8UL) == *(u*)(vb + 8UL)) goto b72;
v44 = (u)zcdie;
v45 = vc;
v46 = (u)"type error";
v47 = ((u(*)())v44)(v45, v46);
- goto b56;
-b69: if (vkind != 8) goto b75;
- if (*(u*)(va + 8) == *(u*)(vb + 8)) goto b56;
+ v47;
+b70: goto b56;
+b72: goto b70;
+b69: if (vkind != 8UL) goto b75;
+ if (*(u*)(va + 8UL) == *(u*)(vb + 8UL)) goto b78;
v48 = (u)zcdie;
v49 = vc;
v50 = (u)"type error";
v51 = ((u(*)())v48)(v49, v50);
- goto b56;
-b75: if (vkind == 1) goto b83;
- if (vkind == 2) goto b87;
- if (vkind == 3) goto b87;
- v53 = 1;
+ v51;
+b76: goto b56;
+b78: goto b76;
+b75: if (vkind == 1UL) goto b83;
+ if (vkind == 2UL) goto b87;
+ if (vkind == 3UL) goto b87;
+ v53 = 1UL;
b89: if (!v53) goto b83;
- v52 = 1;
-b85: if (!v52) goto b56;
+ v52 = 1UL;
+b85: if (!v52) goto b81;
v54 = (u)zcdie;
v55 = vc;
v56 = (u)"unify: invalid type";
v57 = ((u(*)())v54)(v55, v56);
+ v57;
goto b56;
-b83: v52 = 0;
+b81: goto b56;
+b83: v52 = 0UL;
goto b85;
-b87: v53 = 0;
+b87: v53 = 0UL;
goto b89;
+b30: goto b28;
b32: if (!vb) goto b48;
if (!va) goto b52;
- v14 = 0;
+ v14 = 0UL;
b53: if (!v14) goto b48;
- v13 = 1;
+ v13 = 1UL;
b50: if (!v13) goto b44;
- v12 = 1;
+ v12 = 1UL;
b46: if (!v12) goto b42;
- v9 = 1;
+ v9 = 1UL;
goto b34;
-b42: v9 = 0;
+b42: v9 = 0UL;
goto b34;
-b44: if (*(u*)va == *(u*)vb) goto b54;
- v12 = 1;
+b44: if (*(u*)(va + 0UL) == *(u*)(vb + 0UL)) goto b54;
+ v12 = 1UL;
goto b46;
-b54: v12 = 0;
+b54: v12 = 0UL;
goto b46;
-b48: v13 = 0;
+b48: v13 = 0UL;
goto b50;
-b52: v14 = 1;
+b52: v14 = 1UL;
goto b53;
-b36: v10 = 0;
+b36: v10 = 0UL;
goto b38;
-b40: v11 = 1;
+b40: v11 = 1UL;
goto b41;
-b8: v4 = 0;
+b8: v4 = 0UL;
goto b10;
-b12: v5 = 0;
+b12: v5 = 0UL;
goto b14;
-b16: if (*(u*)va != 4) goto b25;
- if (*(u*)vb != 0) goto b25;
- v8 = 1;
+b16: if (*(u*)(va + 0UL) != 4UL) goto b25;
+ if (*(u*)(vb + 0UL) != 0UL) goto b25;
+ v8 = 1UL;
b27: if (!v8) goto b23;
- v6 = 1;
+ v6 = 1UL;
goto b18;
-b23: v6 = 0;
+b23: v6 = 0UL;
goto b18;
-b25: v8 = 0;
+b25: v8 = 0UL;
goto b27;
-b20: v7 = 0;
+b20: v7 = 0UL;
goto b22;
}
u zunlink(u vname) {
@@ -36968,13 +40281,13 @@ u zunlink(u vname) {
u v8 = 0;
u v9 = 0;
v1 = (u)zsyscall;
- v2 = 87;
+ v2 = 87UL;
v3 = vname;
- v4 = 0;
- v5 = 0;
- v6 = 0;
- v7 = 0;
- v8 = 0;
+ v4 = 0UL;
+ v5 = 0UL;
+ v6 = 0UL;
+ v7 = 0UL;
+ v8 = 0UL;
v9 = ((u(*)())v1)(v2, v3, v4, v5, v6, v7, v8);
return v9;
}
@@ -36989,13 +40302,13 @@ u zwrite(u vfd, u vbuf, u vn) {
u v10 = 0;
u v11 = 0;
v3 = (u)zsyscall;
- v4 = 1;
+ v4 = 1UL;
v5 = vfd;
v6 = vbuf;
v7 = vn;
- v8 = 0;
- v9 = 0;
- v10 = 0;
+ v8 = 0UL;
+ v9 = 0UL;
+ v10 = 0UL;
v11 = ((u(*)())v3)(v4, v5, v6, v7, v8, v9, v10);
return v11;
}
@@ -37683,287 +40996,351 @@ u zwriteout(u vc, u vstart, u vkstart) {
u v683 = 0;
u v684 = 0;
u v685 = 0;
- if (!*(u*)(vc + 8)) goto b5;
- v16 = 0;
-b6: if (!v16) goto b1;
+ if (!*(u*)(vc + 8UL)) goto b5;
+ v16 = 0UL;
+b6: if (!v16) goto b3;
v17 = (u)zdie;
v18 = (u)"output not opened";
v19 = ((u(*)())v17)(v18);
+ v19;
b1: vload_addr = 1048576UL;
if (!vstart) goto b16;
- v21 = 0;
+ v21 = 0UL;
b17: if (!v21) goto b12;
- v20 = 1;
+ v20 = 1UL;
b14: if (!v20) goto b10;
if (!vkstart) goto b26;
- v23 = 0;
-b27: if (!v23) goto b8;
+ v23 = 0UL;
+b27: if (!v23) goto b24;
v24 = (u)zdie;
v25 = (u)"_start is not defined";
v26 = ((u(*)())v24)(v25);
-b8: vmb_magic = 464367618UL;
+ v26;
+b22:b8: vmb_magic = 464367618UL;
vmb_flags = 65539UL;
vmb_checksum = -(vmb_magic + vmb_flags);
- vmb_addr = vload_addr + 120;
+ vmb_addr = vload_addr + 120UL;
if (!vkstart) goto b33;
- if (!*(u*)(vkstart + 16)) goto b33;
- v27 = 1;
+ if (!*(u*)(vkstart + 16UL)) goto b33;
+ v27 = 1UL;
b35: if (!v27) goto b31;
- vkentry = vload_addr + *(u*)(vkstart + 8);
+ vkentry = vload_addr + *(u*)(vkstart + 8UL);
b29: v28 = (u)zemit_sections;
v29 = vc;
v30 = ((u(*)())v28)(v29);
vshoff = v30;
- vtext_size = *(u*)(vc + 24);
+ vtext_size = *(u*)(vc + 24UL);
vtext_end = vload_addr + vtext_size;
v31 = (u)zputchar;
v32 = vc;
- v33 = 127;
+ v33 = 127UL;
v34 = ((u(*)())v31)(v32, v33);
+ v34;
v35 = (u)zputchar;
v36 = vc;
- v37 = 69;
+ v37 = 69UL;
v38 = ((u(*)())v35)(v36, v37);
+ v38;
v39 = (u)zputchar;
v40 = vc;
- v41 = 76;
+ v41 = 76UL;
v42 = ((u(*)())v39)(v40, v41);
+ v42;
v43 = (u)zputchar;
v44 = vc;
- v45 = 70;
+ v45 = 70UL;
v46 = ((u(*)())v43)(v44, v45);
+ v46;
v47 = (u)zputchar;
v48 = vc;
- v49 = 2;
+ v49 = 2UL;
v50 = ((u(*)())v47)(v48, v49);
+ v50;
v51 = (u)zputchar;
v52 = vc;
- v53 = 1;
+ v53 = 1UL;
v54 = ((u(*)())v51)(v52, v53);
+ v54;
v55 = (u)zputchar;
v56 = vc;
- v57 = 1;
+ v57 = 1UL;
v58 = ((u(*)())v55)(v56, v57);
+ v58;
v59 = (u)zputchar;
v60 = vc;
- v61 = 0;
+ v61 = 0UL;
v62 = ((u(*)())v59)(v60, v61);
+ v62;
v63 = (u)zputchar;
v64 = vc;
- v65 = 0;
+ v65 = 0UL;
v66 = ((u(*)())v63)(v64, v65);
+ v66;
v67 = (u)zputchar;
v68 = vc;
- v69 = 0;
+ v69 = 0UL;
v70 = ((u(*)())v67)(v68, v69);
+ v70;
v71 = (u)zputchar;
v72 = vc;
- v73 = 0;
+ v73 = 0UL;
v74 = ((u(*)())v71)(v72, v73);
+ v74;
v75 = (u)zputchar;
v76 = vc;
- v77 = 0;
+ v77 = 0UL;
v78 = ((u(*)())v75)(v76, v77);
+ v78;
v79 = (u)zputchar;
v80 = vc;
- v81 = 0;
+ v81 = 0UL;
v82 = ((u(*)())v79)(v80, v81);
+ v82;
v83 = (u)zputchar;
v84 = vc;
- v85 = 0;
+ v85 = 0UL;
v86 = ((u(*)())v83)(v84, v85);
+ v86;
v87 = (u)zputchar;
v88 = vc;
- v89 = 0;
+ v89 = 0UL;
v90 = ((u(*)())v87)(v88, v89);
+ v90;
v91 = (u)zputchar;
v92 = vc;
- v93 = 0;
+ v93 = 0UL;
v94 = ((u(*)())v91)(v92, v93);
+ v94;
v95 = (u)zputchar;
v96 = vc;
- v97 = 2;
+ v97 = 2UL;
v98 = ((u(*)())v95)(v96, v97);
+ v98;
v99 = (u)zputchar;
v100 = vc;
- v101 = 0;
+ v101 = 0UL;
v102 = ((u(*)())v99)(v100, v101);
+ v102;
v103 = (u)zputchar;
v104 = vc;
- v105 = 62;
+ v105 = 62UL;
v106 = ((u(*)())v103)(v104, v105);
+ v106;
v107 = (u)zputchar;
v108 = vc;
- v109 = 0;
+ v109 = 0UL;
v110 = ((u(*)())v107)(v108, v109);
+ v110;
v111 = (u)zputchar;
v112 = vc;
- v113 = 1;
+ v113 = 1UL;
v114 = ((u(*)())v111)(v112, v113);
+ v114;
v115 = (u)zputchar;
v116 = vc;
- v117 = 0;
+ v117 = 0UL;
v118 = ((u(*)())v115)(v116, v117);
+ v118;
v119 = (u)zputchar;
v120 = vc;
- v121 = 0;
+ v121 = 0UL;
v122 = ((u(*)())v119)(v120, v121);
+ v122;
v123 = (u)zputchar;
v124 = vc;
- v125 = 0;
+ v125 = 0UL;
v126 = ((u(*)())v123)(v124, v125);
+ v126;
v127 = (u)zputchar;
v128 = vc;
v129 = ventry;
v130 = ((u(*)())v127)(v128, v129);
+ v130;
v131 = (u)zputchar;
v132 = vc;
- v133 = ventry >> 8;
+ v133 = ventry >> 8UL;
v134 = ((u(*)())v131)(v132, v133);
+ v134;
v135 = (u)zputchar;
v136 = vc;
- v137 = ventry >> 16;
+ v137 = ventry >> 16UL;
v138 = ((u(*)())v135)(v136, v137);
+ v138;
v139 = (u)zputchar;
v140 = vc;
- v141 = ventry >> 24;
+ v141 = ventry >> 24UL;
v142 = ((u(*)())v139)(v140, v141);
+ v142;
v143 = (u)zputchar;
v144 = vc;
- v145 = 0;
+ v145 = 0UL;
v146 = ((u(*)())v143)(v144, v145);
+ v146;
v147 = (u)zputchar;
v148 = vc;
- v149 = 0;
+ v149 = 0UL;
v150 = ((u(*)())v147)(v148, v149);
+ v150;
v151 = (u)zputchar;
v152 = vc;
- v153 = 0;
+ v153 = 0UL;
v154 = ((u(*)())v151)(v152, v153);
+ v154;
v155 = (u)zputchar;
v156 = vc;
- v157 = 0;
+ v157 = 0UL;
v158 = ((u(*)())v155)(v156, v157);
+ v158;
v159 = (u)zputchar;
v160 = vc;
- v161 = 64;
+ v161 = 64UL;
v162 = ((u(*)())v159)(v160, v161);
+ v162;
v163 = (u)zputchar;
v164 = vc;
- v165 = 0;
+ v165 = 0UL;
v166 = ((u(*)())v163)(v164, v165);
+ v166;
v167 = (u)zputchar;
v168 = vc;
- v169 = 0;
+ v169 = 0UL;
v170 = ((u(*)())v167)(v168, v169);
+ v170;
v171 = (u)zputchar;
v172 = vc;
- v173 = 0;
+ v173 = 0UL;
v174 = ((u(*)())v171)(v172, v173);
+ v174;
v175 = (u)zputchar;
v176 = vc;
- v177 = 0;
+ v177 = 0UL;
v178 = ((u(*)())v175)(v176, v177);
+ v178;
v179 = (u)zputchar;
v180 = vc;
- v181 = 0;
+ v181 = 0UL;
v182 = ((u(*)())v179)(v180, v181);
+ v182;
v183 = (u)zputchar;
v184 = vc;
- v185 = 0;
+ v185 = 0UL;
v186 = ((u(*)())v183)(v184, v185);
+ v186;
v187 = (u)zputchar;
v188 = vc;
- v189 = 0;
+ v189 = 0UL;
v190 = ((u(*)())v187)(v188, v189);
+ v190;
v191 = (u)zputchar;
v192 = vc;
v193 = vshoff;
v194 = ((u(*)())v191)(v192, v193);
+ v194;
v195 = (u)zputchar;
v196 = vc;
- v197 = vshoff >> 8;
+ v197 = vshoff >> 8UL;
v198 = ((u(*)())v195)(v196, v197);
+ v198;
v199 = (u)zputchar;
v200 = vc;
- v201 = vshoff >> 16;
+ v201 = vshoff >> 16UL;
v202 = ((u(*)())v199)(v200, v201);
+ v202;
v203 = (u)zputchar;
v204 = vc;
- v205 = vshoff >> 24;
+ v205 = vshoff >> 24UL;
v206 = ((u(*)())v203)(v204, v205);
+ v206;
v207 = (u)zputchar;
v208 = vc;
- v209 = vshoff >> 32;
+ v209 = vshoff >> 32UL;
v210 = ((u(*)())v207)(v208, v209);
+ v210;
v211 = (u)zputchar;
v212 = vc;
- v213 = vshoff >> 40;
+ v213 = vshoff >> 40UL;
v214 = ((u(*)())v211)(v212, v213);
+ v214;
v215 = (u)zputchar;
v216 = vc;
- v217 = vshoff >> 48;
+ v217 = vshoff >> 48UL;
v218 = ((u(*)())v215)(v216, v217);
+ v218;
v219 = (u)zputchar;
v220 = vc;
- v221 = vshoff >> 56;
+ v221 = vshoff >> 56UL;
v222 = ((u(*)())v219)(v220, v221);
+ v222;
v223 = (u)zputchar;
v224 = vc;
- v225 = 0;
+ v225 = 0UL;
v226 = ((u(*)())v223)(v224, v225);
+ v226;
v227 = (u)zputchar;
v228 = vc;
- v229 = 0;
+ v229 = 0UL;
v230 = ((u(*)())v227)(v228, v229);
+ v230;
v231 = (u)zputchar;
v232 = vc;
- v233 = 0;
+ v233 = 0UL;
v234 = ((u(*)())v231)(v232, v233);
+ v234;
v235 = (u)zputchar;
v236 = vc;
- v237 = 0;
+ v237 = 0UL;
v238 = ((u(*)())v235)(v236, v237);
+ v238;
v239 = (u)zputchar;
v240 = vc;
- v241 = 64;
+ v241 = 64UL;
v242 = ((u(*)())v239)(v240, v241);
+ v242;
v243 = (u)zputchar;
v244 = vc;
- v245 = 0;
+ v245 = 0UL;
v246 = ((u(*)())v243)(v244, v245);
+ v246;
v247 = (u)zputchar;
v248 = vc;
- v249 = 56;
+ v249 = 56UL;
v250 = ((u(*)())v247)(v248, v249);
+ v250;
v251 = (u)zputchar;
v252 = vc;
- v253 = 0;
+ v253 = 0UL;
v254 = ((u(*)())v251)(v252, v253);
+ v254;
v255 = (u)zputchar;
v256 = vc;
- v257 = 1;
+ v257 = 1UL;
v258 = ((u(*)())v255)(v256, v257);
+ v258;
v259 = (u)zputchar;
v260 = vc;
- v261 = 0;
+ v261 = 0UL;
v262 = ((u(*)())v259)(v260, v261);
+ v262;
v263 = (u)zputchar;
v264 = vc;
- v265 = 64;
+ v265 = 64UL;
v266 = ((u(*)())v263)(v264, v265);
+ v266;
v267 = (u)zputchar;
v268 = vc;
- v269 = 0;
+ v269 = 0UL;
v270 = ((u(*)())v267)(v268, v269);
+ v270;
v271 = (u)zputchar;
v272 = vc;
- v273 = *(u*)(vc + 72);
+ v273 = *(u*)(vc + 72UL);
v274 = ((u(*)())v271)(v272, v273);
+ v274;
v275 = (u)zputchar;
v276 = vc;
- v277 = *(u*)(vc + 72) >> 8;
+ v277 = *(u*)(vc + 72UL) >> 8UL;
v278 = ((u(*)())v275)(v276, v277);
+ v278;
v279 = (u)zfind_section;
v280 = vc;
v281 = (u)".shstrtab";
@@ -37971,440 +41348,544 @@ b29: v28 = (u)zemit_sections;
vs = v282;
v283 = (u)zputchar;
v284 = vc;
- v285 = *(u*)(vs + 32);
+ v285 = *(u*)(vs + 32UL);
v286 = ((u(*)())v283)(v284, v285);
+ v286;
v287 = (u)zputchar;
v288 = vc;
- v289 = *(u*)(vs + 32) >> 8;
+ v289 = *(u*)(vs + 32UL) >> 8UL;
v290 = ((u(*)())v287)(v288, v289);
+ v290;
v291 = (u)zputchar;
v292 = vc;
- v293 = 1;
+ v293 = 1UL;
v294 = ((u(*)())v291)(v292, v293);
+ v294;
v295 = (u)zputchar;
v296 = vc;
- v297 = 0;
+ v297 = 0UL;
v298 = ((u(*)())v295)(v296, v297);
+ v298;
v299 = (u)zputchar;
v300 = vc;
- v301 = 0;
+ v301 = 0UL;
v302 = ((u(*)())v299)(v300, v301);
+ v302;
v303 = (u)zputchar;
v304 = vc;
- v305 = 0;
+ v305 = 0UL;
v306 = ((u(*)())v303)(v304, v305);
+ v306;
v307 = (u)zputchar;
v308 = vc;
- v309 = 5;
+ v309 = 5UL;
v310 = ((u(*)())v307)(v308, v309);
+ v310;
v311 = (u)zputchar;
v312 = vc;
- v313 = 0;
+ v313 = 0UL;
v314 = ((u(*)())v311)(v312, v313);
+ v314;
v315 = (u)zputchar;
v316 = vc;
- v317 = 0;
+ v317 = 0UL;
v318 = ((u(*)())v315)(v316, v317);
+ v318;
v319 = (u)zputchar;
v320 = vc;
- v321 = 0;
+ v321 = 0UL;
v322 = ((u(*)())v319)(v320, v321);
+ v322;
v323 = (u)zputchar;
v324 = vc;
- v325 = 0;
+ v325 = 0UL;
v326 = ((u(*)())v323)(v324, v325);
+ v326;
v327 = (u)zputchar;
v328 = vc;
- v329 = 0;
+ v329 = 0UL;
v330 = ((u(*)())v327)(v328, v329);
+ v330;
v331 = (u)zputchar;
v332 = vc;
- v333 = 0;
+ v333 = 0UL;
v334 = ((u(*)())v331)(v332, v333);
+ v334;
v335 = (u)zputchar;
v336 = vc;
- v337 = 0;
+ v337 = 0UL;
v338 = ((u(*)())v335)(v336, v337);
+ v338;
v339 = (u)zputchar;
v340 = vc;
- v341 = 0;
+ v341 = 0UL;
v342 = ((u(*)())v339)(v340, v341);
+ v342;
v343 = (u)zputchar;
v344 = vc;
- v345 = 0;
+ v345 = 0UL;
v346 = ((u(*)())v343)(v344, v345);
+ v346;
v347 = (u)zputchar;
v348 = vc;
- v349 = 0;
+ v349 = 0UL;
v350 = ((u(*)())v347)(v348, v349);
+ v350;
v351 = (u)zputchar;
v352 = vc;
- v353 = 0;
+ v353 = 0UL;
v354 = ((u(*)())v351)(v352, v353);
+ v354;
v355 = (u)zputchar;
v356 = vc;
- v357 = 0;
+ v357 = 0UL;
v358 = ((u(*)())v355)(v356, v357);
+ v358;
v359 = (u)zputchar;
v360 = vc;
- v361 = 0;
+ v361 = 0UL;
v362 = ((u(*)())v359)(v360, v361);
+ v362;
v363 = (u)zputchar;
v364 = vc;
- v365 = 16;
+ v365 = 16UL;
v366 = ((u(*)())v363)(v364, v365);
+ v366;
v367 = (u)zputchar;
v368 = vc;
- v369 = 0;
+ v369 = 0UL;
v370 = ((u(*)())v367)(v368, v369);
+ v370;
v371 = (u)zputchar;
v372 = vc;
- v373 = 0;
+ v373 = 0UL;
v374 = ((u(*)())v371)(v372, v373);
+ v374;
v375 = (u)zputchar;
v376 = vc;
- v377 = 0;
+ v377 = 0UL;
v378 = ((u(*)())v375)(v376, v377);
+ v378;
v379 = (u)zputchar;
v380 = vc;
- v381 = 0;
+ v381 = 0UL;
v382 = ((u(*)())v379)(v380, v381);
+ v382;
v383 = (u)zputchar;
v384 = vc;
- v385 = 0;
+ v385 = 0UL;
v386 = ((u(*)())v383)(v384, v385);
+ v386;
v387 = (u)zputchar;
v388 = vc;
- v389 = 0;
+ v389 = 0UL;
v390 = ((u(*)())v387)(v388, v389);
+ v390;
v391 = (u)zputchar;
v392 = vc;
- v393 = 0;
+ v393 = 0UL;
v394 = ((u(*)())v391)(v392, v393);
+ v394;
v395 = (u)zputchar;
v396 = vc;
- v397 = 0;
+ v397 = 0UL;
v398 = ((u(*)())v395)(v396, v397);
+ v398;
v399 = (u)zputchar;
v400 = vc;
- v401 = 0;
+ v401 = 0UL;
v402 = ((u(*)())v399)(v400, v401);
+ v402;
v403 = (u)zputchar;
v404 = vc;
- v405 = 0;
+ v405 = 0UL;
v406 = ((u(*)())v403)(v404, v405);
+ v406;
v407 = (u)zputchar;
v408 = vc;
- v409 = 0;
+ v409 = 0UL;
v410 = ((u(*)())v407)(v408, v409);
+ v410;
v411 = (u)zputchar;
v412 = vc;
- v413 = 0;
+ v413 = 0UL;
v414 = ((u(*)())v411)(v412, v413);
+ v414;
v415 = (u)zputchar;
v416 = vc;
- v417 = 0;
+ v417 = 0UL;
v418 = ((u(*)())v415)(v416, v417);
+ v418;
v419 = (u)zputchar;
v420 = vc;
v421 = vtext_size;
v422 = ((u(*)())v419)(v420, v421);
+ v422;
v423 = (u)zputchar;
v424 = vc;
- v425 = vtext_size >> 8;
+ v425 = vtext_size >> 8UL;
v426 = ((u(*)())v423)(v424, v425);
+ v426;
v427 = (u)zputchar;
v428 = vc;
- v429 = vtext_size >> 16;
+ v429 = vtext_size >> 16UL;
v430 = ((u(*)())v427)(v428, v429);
+ v430;
v431 = (u)zputchar;
v432 = vc;
- v433 = vtext_size >> 24;
+ v433 = vtext_size >> 24UL;
v434 = ((u(*)())v431)(v432, v433);
+ v434;
v435 = (u)zputchar;
v436 = vc;
- v437 = 0;
+ v437 = 0UL;
v438 = ((u(*)())v435)(v436, v437);
+ v438;
v439 = (u)zputchar;
v440 = vc;
- v441 = 0;
+ v441 = 0UL;
v442 = ((u(*)())v439)(v440, v441);
+ v442;
v443 = (u)zputchar;
v444 = vc;
- v445 = 0;
+ v445 = 0UL;
v446 = ((u(*)())v443)(v444, v445);
+ v446;
v447 = (u)zputchar;
v448 = vc;
- v449 = 0;
+ v449 = 0UL;
v450 = ((u(*)())v447)(v448, v449);
+ v450;
v451 = (u)zputchar;
v452 = vc;
v453 = vtext_size;
v454 = ((u(*)())v451)(v452, v453);
+ v454;
v455 = (u)zputchar;
v456 = vc;
- v457 = vtext_size >> 8;
+ v457 = vtext_size >> 8UL;
v458 = ((u(*)())v455)(v456, v457);
+ v458;
v459 = (u)zputchar;
v460 = vc;
- v461 = vtext_size >> 16;
+ v461 = vtext_size >> 16UL;
v462 = ((u(*)())v459)(v460, v461);
+ v462;
v463 = (u)zputchar;
v464 = vc;
- v465 = vtext_size >> 24;
+ v465 = vtext_size >> 24UL;
v466 = ((u(*)())v463)(v464, v465);
+ v466;
v467 = (u)zputchar;
v468 = vc;
- v469 = 0;
+ v469 = 0UL;
v470 = ((u(*)())v467)(v468, v469);
+ v470;
v471 = (u)zputchar;
v472 = vc;
- v473 = 0;
+ v473 = 0UL;
v474 = ((u(*)())v471)(v472, v473);
+ v474;
v475 = (u)zputchar;
v476 = vc;
- v477 = 0;
+ v477 = 0UL;
v478 = ((u(*)())v475)(v476, v477);
+ v478;
v479 = (u)zputchar;
v480 = vc;
- v481 = 0;
+ v481 = 0UL;
v482 = ((u(*)())v479)(v480, v481);
+ v482;
v483 = (u)zputchar;
v484 = vc;
- v485 = 0;
+ v485 = 0UL;
v486 = ((u(*)())v483)(v484, v485);
+ v486;
v487 = (u)zputchar;
v488 = vc;
- v489 = 0;
+ v489 = 0UL;
v490 = ((u(*)())v487)(v488, v489);
+ v490;
v491 = (u)zputchar;
v492 = vc;
- v493 = 0;
+ v493 = 0UL;
v494 = ((u(*)())v491)(v492, v493);
+ v494;
v495 = (u)zputchar;
v496 = vc;
- v497 = 0;
+ v497 = 0UL;
v498 = ((u(*)())v495)(v496, v497);
+ v498;
v499 = (u)zputchar;
v500 = vc;
- v501 = 0;
+ v501 = 0UL;
v502 = ((u(*)())v499)(v500, v501);
+ v502;
v503 = (u)zputchar;
v504 = vc;
- v505 = 0;
+ v505 = 0UL;
v506 = ((u(*)())v503)(v504, v505);
+ v506;
v507 = (u)zputchar;
v508 = vc;
- v509 = 0;
+ v509 = 0UL;
v510 = ((u(*)())v507)(v508, v509);
+ v510;
v511 = (u)zputchar;
v512 = vc;
- v513 = 0;
+ v513 = 0UL;
v514 = ((u(*)())v511)(v512, v513);
+ v514;
v515 = (u)zputchar;
v516 = vc;
v517 = vmb_magic;
v518 = ((u(*)())v515)(v516, v517);
+ v518;
v519 = (u)zputchar;
v520 = vc;
- v521 = vmb_magic >> 8;
+ v521 = vmb_magic >> 8UL;
v522 = ((u(*)())v519)(v520, v521);
+ v522;
v523 = (u)zputchar;
v524 = vc;
- v525 = vmb_magic >> 16;
+ v525 = vmb_magic >> 16UL;
v526 = ((u(*)())v523)(v524, v525);
+ v526;
v527 = (u)zputchar;
v528 = vc;
- v529 = vmb_magic >> 24;
+ v529 = vmb_magic >> 24UL;
v530 = ((u(*)())v527)(v528, v529);
+ v530;
v531 = (u)zputchar;
v532 = vc;
v533 = vmb_flags;
v534 = ((u(*)())v531)(v532, v533);
+ v534;
v535 = (u)zputchar;
v536 = vc;
- v537 = vmb_flags >> 8;
+ v537 = vmb_flags >> 8UL;
v538 = ((u(*)())v535)(v536, v537);
+ v538;
v539 = (u)zputchar;
v540 = vc;
- v541 = vmb_flags >> 16;
+ v541 = vmb_flags >> 16UL;
v542 = ((u(*)())v539)(v540, v541);
+ v542;
v543 = (u)zputchar;
v544 = vc;
- v545 = vmb_flags >> 24;
+ v545 = vmb_flags >> 24UL;
v546 = ((u(*)())v543)(v544, v545);
+ v546;
v547 = (u)zputchar;
v548 = vc;
v549 = vmb_checksum;
v550 = ((u(*)())v547)(v548, v549);
+ v550;
v551 = (u)zputchar;
v552 = vc;
- v553 = vmb_checksum >> 8;
+ v553 = vmb_checksum >> 8UL;
v554 = ((u(*)())v551)(v552, v553);
+ v554;
v555 = (u)zputchar;
v556 = vc;
- v557 = vmb_checksum >> 16;
+ v557 = vmb_checksum >> 16UL;
v558 = ((u(*)())v555)(v556, v557);
+ v558;
v559 = (u)zputchar;
v560 = vc;
- v561 = vmb_checksum >> 24;
+ v561 = vmb_checksum >> 24UL;
v562 = ((u(*)())v559)(v560, v561);
+ v562;
v563 = (u)zputchar;
v564 = vc;
v565 = vmb_addr;
v566 = ((u(*)())v563)(v564, v565);
+ v566;
v567 = (u)zputchar;
v568 = vc;
- v569 = vmb_addr >> 8;
+ v569 = vmb_addr >> 8UL;
v570 = ((u(*)())v567)(v568, v569);
+ v570;
v571 = (u)zputchar;
v572 = vc;
- v573 = vmb_addr >> 16;
+ v573 = vmb_addr >> 16UL;
v574 = ((u(*)())v571)(v572, v573);
+ v574;
v575 = (u)zputchar;
v576 = vc;
- v577 = vmb_addr >> 24;
+ v577 = vmb_addr >> 24UL;
v578 = ((u(*)())v575)(v576, v577);
+ v578;
v579 = (u)zputchar;
v580 = vc;
v581 = vload_addr;
v582 = ((u(*)())v579)(v580, v581);
+ v582;
v583 = (u)zputchar;
v584 = vc;
- v585 = vload_addr >> 8;
+ v585 = vload_addr >> 8UL;
v586 = ((u(*)())v583)(v584, v585);
+ v586;
v587 = (u)zputchar;
v588 = vc;
- v589 = vload_addr >> 16;
+ v589 = vload_addr >> 16UL;
v590 = ((u(*)())v587)(v588, v589);
+ v590;
v591 = (u)zputchar;
v592 = vc;
- v593 = vload_addr >> 24;
+ v593 = vload_addr >> 24UL;
v594 = ((u(*)())v591)(v592, v593);
+ v594;
v595 = (u)zputchar;
v596 = vc;
v597 = vtext_end;
v598 = ((u(*)())v595)(v596, v597);
+ v598;
v599 = (u)zputchar;
v600 = vc;
- v601 = vtext_end >> 8;
+ v601 = vtext_end >> 8UL;
v602 = ((u(*)())v599)(v600, v601);
+ v602;
v603 = (u)zputchar;
v604 = vc;
- v605 = vtext_end >> 16;
+ v605 = vtext_end >> 16UL;
v606 = ((u(*)())v603)(v604, v605);
+ v606;
v607 = (u)zputchar;
v608 = vc;
- v609 = vtext_end >> 24;
+ v609 = vtext_end >> 24UL;
v610 = ((u(*)())v607)(v608, v609);
+ v610;
v611 = (u)zputchar;
v612 = vc;
- v613 = 0;
+ v613 = 0UL;
v614 = ((u(*)())v611)(v612, v613);
+ v614;
v615 = (u)zputchar;
v616 = vc;
- v617 = 0;
+ v617 = 0UL;
v618 = ((u(*)())v615)(v616, v617);
+ v618;
v619 = (u)zputchar;
v620 = vc;
- v621 = 0;
+ v621 = 0UL;
v622 = ((u(*)())v619)(v620, v621);
+ v622;
v623 = (u)zputchar;
v624 = vc;
- v625 = 0;
+ v625 = 0UL;
v626 = ((u(*)())v623)(v624, v625);
+ v626;
v627 = (u)zputchar;
v628 = vc;
v629 = vkentry;
v630 = ((u(*)())v627)(v628, v629);
+ v630;
v631 = (u)zputchar;
v632 = vc;
- v633 = vkentry >> 8;
+ v633 = vkentry >> 8UL;
v634 = ((u(*)())v631)(v632, v633);
+ v634;
v635 = (u)zputchar;
v636 = vc;
- v637 = vkentry >> 16;
+ v637 = vkentry >> 16UL;
v638 = ((u(*)())v635)(v636, v637);
+ v638;
v639 = (u)zputchar;
v640 = vc;
- v641 = vkentry >> 24;
+ v641 = vkentry >> 24UL;
v642 = ((u(*)())v639)(v640, v641);
+ v642;
v643 = (u)zputchar;
v644 = vc;
- v645 = 144;
+ v645 = 144UL;
v646 = ((u(*)())v643)(v644, v645);
+ v646;
v647 = (u)zputchar;
v648 = vc;
- v649 = 144;
+ v649 = 144UL;
v650 = ((u(*)())v647)(v648, v649);
+ v650;
v651 = (u)zputchar;
v652 = vc;
- v653 = 144;
+ v653 = 144UL;
v654 = ((u(*)())v651)(v652, v653);
+ v654;
v655 = (u)zputchar;
v656 = vc;
- v657 = 144;
+ v657 = 144UL;
v658 = ((u(*)())v655)(v656, v657);
+ v658;
v659 = (u)zputchar;
v660 = vc;
- v661 = 144;
+ v661 = 144UL;
v662 = ((u(*)())v659)(v660, v661);
+ v662;
v663 = (u)zputchar;
v664 = vc;
- v665 = 144;
+ v665 = 144UL;
v666 = ((u(*)())v663)(v664, v665);
+ v666;
v667 = (u)zputchar;
v668 = vc;
- v669 = 144;
+ v669 = 144UL;
v670 = ((u(*)())v667)(v668, v669);
+ v670;
v671 = (u)zputchar;
v672 = vc;
- v673 = 144;
+ v673 = 144UL;
v674 = ((u(*)())v671)(v672, v673);
- vb = *(u*)(vc + 32);
+ v674;
+ vb = *(u*)(vc + 32UL);
b198: if (!vb) goto b204;
- v675 = 0;
-b205: if (!v675) goto b200;
+ v675 = 0UL;
+b205: if (!v675) goto b202;
v680 = (u)zfflush;
- v681 = *(u*)(vc + 8);
+ v681 = *(u*)(vc + 8UL);
v682 = ((u(*)())v680)(v681);
- if (!*(u*)(vc + 80)) goto b213;
+ v682;
+ if (!*(u*)(vc + 80UL)) goto b215;
v683 = (u)zfflush;
- v684 = *(u*)(vc + 80);
+ v684 = *(u*)(vc + 80UL);
v685 = ((u(*)())v683)(v684);
-b213: return 0;
-b200: vi = 0;
-b206: if ((s)vi < (s)*(u*)(vb + 16)) goto b208;
- vb = *(u*)vb;
+ v685;
+b213: return 0UL;
+b215: goto b213;
+b202: vi = 0UL;
+b206: if ((s)vi < (s)*(u*)(vb + 16UL)) goto b210;
+ vb = *(u*)(vb + 0UL);
goto b198;
-b208: v676 = (u)zputchar;
+b210: v676 = (u)zputchar;
v677 = vc;
- v678 = (u)*(b*)(*(u*)(vb + 8) + vi);
+ v678 = (u)*(b*)(*(u*)(vb + 8UL) + vi * 1UL);
v679 = ((u(*)())v676)(v677, v678);
- vi = vi + 1;
+ v679;
+ vi = vi + 1UL;
goto b206;
-b204: v675 = 1;
+b204: v675 = 1UL;
goto b205;
-b31: vmb_magic = 0;
- vkentry = 0;
+b31: vmb_magic = 0UL;
+ vkentry = 0UL;
goto b29;
-b33: v27 = 0;
+b33: v27 = 0UL;
goto b35;
-b26: v23 = 1;
+b24: goto b22;
+b26: v23 = 1UL;
goto b27;
-b10: ventry = vload_addr + *(u*)(vstart + 8);
+b10: ventry = vload_addr + *(u*)(vstart + 8UL);
goto b8;
-b12: if (!*(u*)(vstart + 16)) goto b20;
- v22 = 0;
+b12: if (!*(u*)(vstart + 16UL)) goto b20;
+ v22 = 0UL;
b21: if (!v22) goto b18;
- v20 = 1;
+ v20 = 1UL;
goto b14;
-b18: v20 = 0;
+b18: v20 = 0UL;
goto b14;
-b20: v22 = 1;
+b20: v22 = 1UL;
goto b21;
-b16: v21 = 1;
+b16: v21 = 1UL;
goto b17;
-b5: v16 = 1;
+b3: goto b1;
+b5: v16 = 1UL;
goto b6;
}
diff --git a/cc1.om b/cc1.om
@@ -2183,7 +2183,7 @@ func main(argc: int, argv: **byte, envp: **byte) {
if (!strcmp(argv[i], "-G")) {
i = i + 1;
if (i >= argc) {
- die("invalid -P at end of argument list");
+ die("invalid -G at end of argument list");
}
open_call_out(c, argv[i]);
i = i + 1;
@@ -2193,7 +2193,7 @@ func main(argc: int, argv: **byte, envp: **byte) {
if (!strcmp(argv[i], "-n")) {
i = i + 1;
if (i >= argc) {
- die("invalid -P at end of argument list");
+ die("invalid -n at end of argument list");
}
open_lines_out(c, argv[i]);
i = i + 1;
diff --git a/ir.om b/ir.om
@@ -95,6 +95,7 @@ struct irvar {
n: int;
offset: int;
dead: int;
+ used_ref: int;
mark: int;
}
@@ -162,6 +163,12 @@ func mkirblock(ic: *irfunc): *irblock {
return b;
}
+func ircopyloc(dst: *irop, src: *irop) {
+ dst.filename = src.filename;
+ dst.lineno = src.lineno;
+ dst.colno = src.colno;
+}
+
func mkirop(ic: *irfunc, kind: int, a: *irop, b: *irop): *irop {
var o: *irop;
@@ -558,6 +565,7 @@ func expr_to_ir(ic: *irfunc, n: *node): *irop {
if a.kind == IOP_VAR {
b = mkirop(ic, IOP_VARREF, nil, nil);
b.n = a.n;
+ ic.vars[a.n].used_ref = 1;
} else if a.kind == IOP_LOAD {
b = a.a;
} else {
@@ -575,6 +583,7 @@ func expr_to_ir(ic: *irfunc, n: *node): *irop {
if a.kind == IOP_VAR {
o = mkirop(ic, IOP_VARREF, nil, nil);
o.n = a.n;
+ ic.vars[a.n].used_ref = 1;
return o;
} else if a.kind == IOP_LOAD {
return a.a;
@@ -1383,6 +1392,7 @@ func irshow4(out: *file, o: *irop) {
irshow4(out, o.a);
fputs(out, ")");
} else {
+ fputd(nil, kind);
die("invalid iop");
}
}
@@ -1683,6 +1693,11 @@ func output_irvars(ic: *irfunc) {
v = ic.vars[i];
+ if v.dead {
+ i = i + 1;
+ continue;
+ }
+
if v.t && v.t.kind != TY_VOID {
size = type_sizeof(ic.c, v.t);
} else {
@@ -1822,8 +1837,12 @@ func output_irstmt(ic: *irfunc, b: *irblock, o: *irop) {
output_irargs(ic, b, o);
// Call the function
- output_irexpr(ic, b, o.a);
- as_modr(ic.s, OP_ICALLM, R_RAX);
+ if o.a.kind == IOP_FUNC {
+ output_ircall(ic, b, o.a);
+ } else {
+ output_irexpr(ic, b, o.a);
+ as_modr(ic.s, OP_ICALLM, R_RAX);
+ }
// Release space reserved for the arguments
if o.n > 6 {
@@ -1990,6 +2009,18 @@ func output_irfuncptr(ic: *irfunc, b: *irblock, o: *irop) {
addfixup(ic.s, d.func_label);
}
+func output_ircall(ic: *irfunc, b: *irblock, o: *irop) {
+ var d: *decl;
+
+ d = find(ic.c, o.s, nil, 0);
+
+ if !d || !d.func_defined {
+ cdie(ic.c, "no such function");
+ }
+
+ as_jmp(ic.s, OP_CALL, d.func_label);
+}
+
func output_irexpr(ic: *irfunc, b: *irblock, o: *irop) {
var kind: int;
@@ -2159,6 +2190,84 @@ func output_irexpr(ic: *irfunc, b: *irblock, o: *irop) {
}
}
+func iruseop(ic: *irfunc, ib: *irblock, op: *irop) {
+ var kind: int;
+
+ kind = op.kind;
+ if kind == IOP_VAR || kind == IOP_VARREF {
+ ic.vars[op.n].mark = 1;
+ } else if kind == IOP_STORE {
+ if op.a.kind != IOP_VAR {
+ iruseop(ic, ib, op.a);
+ }
+ iruseop(ic, ib, op.b);
+ } else if kind == IOP_ADD || kind == IOP_AND
+ || kind == IOP_OR || kind == IOP_XOR || kind == IOP_DIV
+ || kind == IOP_MOD || kind == IOP_LSH || kind == IOP_RSH
+ || kind == IOP_MUL || kind == IOP_SUB || kind == IOP_EQ
+ || kind == IOP_NE || kind == IOP_GT || kind == IOP_GE
+ || kind == IOP_LT || kind == IOP_LE {
+ // Binary operators
+ iruseop(ic, ib, op.a);
+ iruseop(ic, ib, op.b);
+ } else if kind == IOP_NEG || kind == IOP_NOT || kind == IOP_LOAD
+ || kind == IOP_ARG || kind == IOP_CALL || kind == IOP_BRANCH
+ || kind == IOP_RETURN {
+ // Unary operators
+ iruseop(ic, ib, op.a);
+ } else if kind == IOP_RETVAL {
+ if op.a.kind != IOP_VAR {
+ iruseop(ic, ib, op.a);
+ }
+ } else if kind == IOP_FUNC || kind == IOP_CONST || kind == IOP_STR || kind == IOP_JUMP {
+ // No variable possible
+ } else {
+ die("invalid op");
+ }
+}
+
+// Find dead variables
+func irblock_dead_var(ic: *irfunc, ib: *irblock) {
+ var op: *irop;
+ var kind: int;
+ var i: int;
+
+ if ib.mark {
+ return;
+ }
+
+ ib.mark = 1;
+
+ if !ib.done {
+ die("block not closed");
+ }
+
+ loop {
+ if i == ib.ops_len {
+ break;
+ }
+
+ iruseop(ic, ib, ib.ops[i]);
+
+ i = i + 1;
+ }
+
+ op = ib.ops[ib.ops_len - 1];
+ kind = op.kind;
+
+ // Convert useless branches to jumps
+ if kind == IOP_BRANCH {
+ irblock_dead_var(ic, ib.out);
+ irblock_dead_var(ic, ib.alt);
+ } else if kind == IOP_CALL {
+ irblock_dead_var(ic, ib.out);
+ } else if kind == IOP_JUMP {
+ irblock_dead_var(ic, ib.out);
+ } else if kind != IOP_RETURN {
+ die("invalid block");
+ }
+}
+
// Eliminate expressions which have no possible side effects
func irblock_dead_expr(ic: *irfunc, b: *irblock) {
var i: int;
@@ -2180,10 +2289,13 @@ func irblock_dead_expr(ic: *irfunc, b: *irblock) {
o = b.ops[i];
kind = o.kind;
- if (
- kind == IOP_STORE || kind == IOP_RETVAL || kind == IOP_ARG
- || kind == IOP_CALL || kind == IOP_JUMP || kind == IOP_BRANCH || kind == IOP_RETURN
- ) {
+ if kind == IOP_STORE || kind == IOP_RETVAL {
+ if o.a.kind != IOP_VAR || !ic.vars[o.a.n].dead {
+ b.ops[j] = o;
+ j = j + 1;
+ }
+ } else if kind == IOP_ARG || kind == IOP_CALL || kind == IOP_JUMP
+ || kind == IOP_BRANCH || kind == IOP_RETURN {
b.ops[j] = o;
j = j + 1;
}
@@ -2218,6 +2330,7 @@ func irexpr_fold(ic: *irfunc, o: *irop): *irop {
// Recursive fold the first operand
if o.a {
+ a = o.a;
a = irexpr_fold(ic, o.a);
} else {
// If the op has zero operands, there's nothing to do.
@@ -2226,6 +2339,7 @@ func irexpr_fold(ic: *irfunc, o: *irop): *irop {
// Recursive fold the second operand
if o.b {
+ b = o.b;
b = irexpr_fold(ic, o.b);
}
@@ -2349,10 +2463,8 @@ out:
n = b.n;
if n == 0 {
- if (
- kind == IOP_ADD || kind == IOP_OR || kind == IOP_XOR
- || kind == IOP_SUB || kind == IOP_LSH || kind == IOP_RSH
- ) {
+ if kind == IOP_ADD || kind == IOP_OR || kind == IOP_XOR
+ || kind == IOP_SUB || kind == IOP_LSH || kind == IOP_RSH {
return a;
}
@@ -2407,10 +2519,16 @@ func irblock_fold(ic: *irfunc, b: *irblock) {
var o: *irop;
var ret: *irop;
- if !b.done {
+ if b.mark {
return;
}
+ if !b.done {
+ die("block not closed");
+ }
+
+ b.mark = 1;
+
i = 0;
loop {
if i == b.ops_len {
@@ -2423,8 +2541,7 @@ func irblock_fold(ic: *irfunc, b: *irblock) {
i = i + 1;
}
- i = i - 1;
-
+ i = b.ops_len - 1;
o = b.ops[i];
// Fold constant branches into jumps
@@ -2436,12 +2553,36 @@ func irblock_fold(ic: *irfunc, b: *irblock) {
b.ops[i] = ret;
- if !o.n {
+ if !o.a.n {
b.out = b.alt;
}
b.alt = nil;
}
+
+ // Remove useless branches
+ if o.kind == IOP_BRANCH && b.out == b.alt {
+ ret = mkirop(ic, IOP_JUMP, nil, nil);
+ ret.filename = o.filename;
+ ret.lineno = o.lineno;
+ ret.colno = o.colno;
+
+ b.ops[i] = ret;
+
+ b.alt = nil;
+ }
+
+ // Continue
+ if o.kind == IOP_BRANCH {
+ irblock_fold(ic, b.out);
+ irblock_fold(ic, b.alt);
+ } else if o.kind == IOP_JUMP || o.kind == IOP_CALL {
+ irblock_fold(ic, b.out);
+ } else if o.kind == IOP_RETURN {
+ // End of block.
+ } else {
+ die("invalid block");
+ }
}
func irblock_flow2(ic: *irfunc, ib: *irblock) {
@@ -2461,8 +2602,8 @@ func irblock_flow2(ic: *irfunc, ib: *irblock) {
// Convert useless branches to jumps
if kind == IOP_BRANCH && ib.out == ib.alt {
kind = IOP_JUMP;
- op.kind = IOP_JUMP;
- op.a = nil;
+ op = mkirop(ic, IOP_JUMP, nil, nil);
+ ib.ops[ib.ops_len - 1] = op;
ib.alt = nil;
}
@@ -2559,6 +2700,25 @@ func irfunc_flow(ic: *irfunc) {
func irfunc_dead(ic: *irfunc) {
var i: int;
+ // Find dead variables
+ irblock_dead_var(ic, ic.blocks[0]);
+ irreset(ic.blocks[0]);
+
+ i = 0;
+ loop {
+ if i == ic.vars_len {
+ break;
+ }
+
+ if i >= ic.arg_count && !ic.vars[i].mark {
+ ic.vars[i].dead = 1;
+ }
+
+ ic.vars[i].mark = 0;
+
+ i = i + 1;
+ }
+
// Eliminate dead operations
i = 0;
loop {
@@ -2576,47 +2736,215 @@ func irfunc_fold(ic: *irfunc) {
var i: int;
// Try to evaluate constants as much as possible
- i = 0;
- loop {
- if i == ic.blocks_len {
- break;
+ irblock_fold(ic, ic.blocks[0]);
+ irreset(ic.blocks[0]);
+}
+
+func irop_occurs(op: *irop, n: int): int {
+ if !op {
+ return 0;
+ }
+
+ if op.kind == IOP_VAR {
+ if op.n == n {
+ return 1;
+ } else {
+ return 0;
}
+ }
- irblock_fold(ic, ic.blocks[i]);
+ if irop_occurs(op.a, n) {
+ return 1;
+ }
- i = i + 1;
+ if irop_occurs(op.b, n) {
+ return 1;
}
+
+ return 0;
}
-func irblock_basic_value(ic: *irfunc, ib: *irblock) {
+func irop_kill(ic: *irfunc, vals: **irop, n: int) {
var i: int;
- i = 0;
loop {
- if i == ib.ops_len {
+ if i == ic.vars_len {
break;
}
- // TODO: value forwarding
+ if irop_occurs(vals[i], n) {
+ vals[i] = nil;
+ }
i = i + 1;
}
}
-func irfunc_basic_value(ic: *irfunc) {
+func irop_basic_value(ic: *irfunc, vals: **irop, op: *irop): *irop {
+ var a: *irop;
+ var b: *irop;
+ var v: *irop;
+ var ret: *irop;
+ var kind: int;
var i: int;
- // Forward simple stores to their use
+ kind = op.kind;
+ a = op.a;
+ b = op.b;
+
+ if kind == IOP_STORE {
+ if a.kind == IOP_VAR {
+ // Record stores to variables
+ irop_kill(ic, vals, a.n);
+
+ // Compute the new value
+ b = irop_basic_value(ic, vals, b);
+
+ if a.n < 0 || a.n >= ic.vars_len {
+ die("WTF");
+ }
+
+ // Record the new value
+ vals[a.n] = b;
+
+ // Kill all values that referred to the old value
+ irop_kill(ic, vals, a.n);
+
+ // If the value didn't then reuse op.
+ if b == op.b {
+ return op;
+ }
+
+ ret = mkirop(ic, IOP_STORE, a, b);
+ ircopyloc(ret, op);
+ ret.t = op.t;
+ return ret;
+ } else if a.kind == IOP_LOAD {
+ i = 0;
+ loop {
+ if i == ic.vars_len {
+ break;
+ }
+ vals[i] = nil;
+ i = i + 1;
+ }
+ return op;
+ } else {
+ die("invalid store");
+ }
+ } else if kind == IOP_VAR {
+ v = vals[op.n];
+ if !v {
+ return op;
+ }
+ return v;
+ vals[op.n] = nil;
+ ret = irop_basic_value(ic, vals, v);
+ vals[op.n] = v;
+ return ret;
+ } else if kind == IOP_RETVAL {
+ return op;
+ } else if kind == IOP_ARG || kind == IOP_LOAD || kind == IOP_NEG
+ || kind == IOP_NOT || kind == IOP_CALL || kind == IOP_BRANCH
+ || kind == IOP_RETURN {
+ // Unary operators
+ a = irop_basic_value(ic, vals, a);
+ if a == op.a {
+ return op;
+ }
+
+ ret = mkirop(ic, kind, a, nil);
+ ircopyloc(ret, op);
+ ret.t = op.t;
+ ret.n = op.n;
+
+ return ret;
+ } else if kind == IOP_VARREF || kind == IOP_FUNC || kind == IOP_CONST
+ || kind == IOP_STR || kind == IOP_JUMP {
+ // Null operators
+ return op;
+ } else if kind == IOP_ADD || kind == IOP_AND || kind == IOP_OR
+ || kind == IOP_XOR || kind == IOP_DIV || kind == IOP_MOD
+ || kind == IOP_LSH || kind == IOP_RSH || kind == IOP_MUL
+ || kind == IOP_SUB || kind == IOP_EQ || kind == IOP_NE
+ || kind == IOP_GT || kind == IOP_GE || kind == IOP_LT
+ || kind == IOP_LE {
+ // Binary operators
+ a = irop_basic_value(ic, vals, a);
+ b = irop_basic_value(ic, vals, b);
+ if a == op.a && b == op.b {
+ return op;
+ }
+
+ ret = mkirop(ic, kind, a, b);
+ ircopyloc(ret, op);
+ ret.t = op.t;
+
+ return ret;
+ } else {
+ die("invalid op");
+ return nil;
+ }
+ return nil;
+}
+
+// This is a VERY dumb way to do this.
+func irblock_basic_value(ic: *irfunc, ib: *irblock) {
+ var i: int;
+ var nvals: int;
+ var vals: **irop;
+ var op: *irop;
+
+ if !ib.done {
+ die("block not closed");
+ }
+
+ if ib.mark {
+ return;
+ }
+
+ ib.mark = 1;
+
+ nvals = ic.vars_len;
+ vals = alloc(ic.a, 8 * nvals) as **irop;
+
+ assert_zero(vals as *byte, 8 * nvals);
+
i = 0;
loop {
- if i == ic.blocks_len {
+ if i == ib.ops_len {
break;
}
- irblock_basic_value(ic, ic.blocks[i]);
+ op = ib.ops[i];
+ op = irop_basic_value(ic, vals, op);
+ ib.ops[i] = op;
i = i + 1;
}
+
+ free(ic.a, vals as *byte);
+ alloc(ic.a, 16);
+
+ op = ib.ops[ib.ops_len - 1];
+
+ // Continue
+ if op.kind == IOP_BRANCH {
+ irblock_basic_value(ic, ib.out);
+ irblock_basic_value(ic, ib.alt);
+ } else if op.kind == IOP_JUMP || op.kind == IOP_CALL {
+ irblock_basic_value(ic, ib.out);
+ } else if op.kind == IOP_RETURN {
+ // End of block.
+ } else {
+ die("invalid block");
+ }
+}
+
+func irfunc_basic_value(ic: *irfunc) {
+ // Forward simple stores to their use
+ irblock_basic_value(ic, ic.blocks[0]);
+ irreset(ic.blocks[0]);
}
func irblock_backlink(ic: *irfunc, ib: *irblock, from: *irblock) {
@@ -2644,8 +2972,6 @@ func irblock_backlink(ic: *irfunc, ib: *irblock, from: *irblock) {
irblock_backlink(ic, ib.out, ib);
if ib.out != ib.alt {
irblock_backlink(ic, ib.alt, ib);
- } else {
- die("useless branch");
}
} else if kind == IOP_RETURN {
if ic.returns {
@@ -2719,6 +3045,9 @@ func irfunc_backlink(ic: *irfunc) {
}
func ir_optimize(ic: *irfunc) {
+ // Too many bugs...
+ return;
+
// Do the easy simplifications first.
irfunc_dead(ic);
irfunc_fold(ic);
@@ -2729,9 +3058,10 @@ func ir_optimize(ic: *irfunc) {
irfunc_basic_value(ic);
// Do them again.
+ irfunc_dead(ic);
irfunc_fold(ic);
irfunc_flow(ic);
- irfunc_backlink(ic);
+ //irfunc_backlink(ic);
// Do instruction selection
// Do register allocation
diff --git a/ircout.om b/ircout.om
@@ -499,9 +499,7 @@ func ircop(c: *compiler, ic: *irfunc, ib: *irblock, op: *irop, pri: int) {
fputs(c.cout, op.s);
} else if kind == IOP_CONST {
fputd(c.cout, op.n);
- if op.n > (1 << 15) || op.n < 0 {
- fputs(c.cout, "UL");
- }
+ fputs(c.cout, "UL");
} else if kind == IOP_STR {
fputs(c.cout, "(u)");
ircstr(c, op.s, op.slen);
diff --git a/sshd.om b/sshd.om
@@ -1988,7 +1988,7 @@ func main(argc: int, argv: **byte, envp: **byte) {
die("failed to open socket");
}
- port = 22;
+ port = 2222;
sa.fpa = AF_INET | ((port & 0xff) << 24) | (((port >> 8) & 0xff) << 16);
sa.pad = 0;
if bind(fd, (&sa) as *byte, sizeof(sa)) != 0 {
diff --git a/table.om b/table.om
@@ -63,6 +63,9 @@ func trehash(t: *table, cap: int) {
t.cap = cap;
}
+// This trick I got from CPython.
+// Use a LCG with the right parameters to get full period on a power of two sized table
+// to get "randomized" probing.
func tfind(t: *table, x: int): *tentry {
var e: *tentry;
var mask: int;