os

An operating system
git clone https://erai.gay/code/os/
Log | Files | Refs | README | LICENSE

commit 3aa804c090616287b208133741dcc5713d23f0ac
parent a4b136df514a55da0d24a72ca3fff3c3a71ec22c
Author: erai <erai@omiltem.net>
Date:   Sun, 16 Feb 2025 18:36:03 +0000

broken optimizations.

Diffstat:
Malloc.om | 17+++++++++++++++++
Mbootstrap.sh | 2+-
Mbuild.sh | 1+
Mcc0.c | 24695+++++++++++++++++++++++++++++++++++++++++++++----------------------------------
Mcc1.om | 4++--
Mir.om | 396++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++-------
Mircout.om | 4+---
Msshd.om | 2+-
Mtable.om | 3+++
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;