#include "M3Runtime.h" typedef struct { int tc; char* str; int len; } TXT; PRIVATE TXT txt1 = { 3, ");\012", 4}; PRIVATE TXT txt2 = { 3, " /** ", 7}; PRIVATE TXT txt3 = { 3, " **/\012", 6}; PRIVATE TXT txt4 = { 3, "\003#include \042M3Runtime.h\042\003\012", 26}; PRIVATE TXT txt5 = { 3, "\012#line ", 8}; PRIVATE TXT txt6 = { 3, "9999", 5}; PRIVATE TXT txt7 = { 3, " \042", 3}; PRIVATE TXT txt8 = { 3, "\042\012", 3}; PRIVATE TXT txt9 = { 3, "ZERO1B (", 9}; PRIVATE TXT txt10 = { 3, "ZERO1S (", 9}; PRIVATE TXT txt11 = { 3, "ZERO1 (", 9}; PRIVATE TXT txt12 = { 3, "ZERO2 (", 9}; PRIVATE TXT txt13 = { 3, "ZERO3 (", 9}; PRIVATE TXT txt14 = { 3, "ZERO4 (", 9}; PRIVATE TXT txt15 = { 3, "ZERO5 (", 9}; PRIVATE TXT txt16 = { 3, "ZERO6 (", 9}; PRIVATE TXT txt17 = { 3, "ZERO7 (", 9}; PRIVATE TXT txt18 = { 3, "ZERO8 (", 9}; PRIVATE TXT txt19 = { 3, "ZERO (@, ", 11}; #line 39 "Emit.m3" #define t17 ADDRESS typedef signed_char t15; #define t46 ADDRESS #define t92 void typedef struct { TYPE self; int private; } t46_methods; #define t46_msize (sizeof (t46_methods)) typedef struct { ADDRESS methods; } t46_fields; #define t46_size (sizeof (t46_fields)) #define TC46 TC_ROOT IMPORT TYPE TC_ROOT; IMPORT char VS_ROOT__349f58f628be0ac6; #define t46_MapProc TC_ROOT->mapProc #define t24 ADDRESS #define TC24 TC_Wr__T IMPORT TYPE TC_Wr__T; #line 90 ".ROOT/.boots/corelib/Interfaces/Wr.i3" IMPORT char VS_Wr__T__2555b70b3f7780b1; #define t24_MapProc TC_Wr__T->mapProc typedef int t4; typedef unsigned char t23; #define t39 ADDRESS #define TC39 TC_ADDRESS IMPORT TYPE TC_ADDRESS; IMPORT char VS_ADDRESS__30f7308738738b44; #line 13 "./String.i3" #define t9 ADDRESS #define TC9 TC_String__T IMPORT TYPE TC_String__T; #line 13 IMPORT char VS_String__T__3a6c7dc12615e4ee; #line 23 "Emit.m3" typedef struct { t24 _wr; t4 _indent; t23 _newline; t23 _breakable; t23 _flushLine; t9 _file; t4 _line; t4 _width; } t20; #line 116 ".ROOT/.boots/corelib/Interfaces/Wr.i3" typedef struct { char* elts; int size[1]; } t81; #line 37 "Emit.m3" #define t2 t81 typedef struct { t20 elts[2]; } t21; #line 34 typedef struct { t17 _next; t15 _current; t21 _streams; t17 _pending; } t22; PRIVATE void t17_MapProc (); PRIVATE void t17_PrintProc (); PRIVATE typecell t17_TC; PRIVATE typecell t17_TC_init = {0, 0, 0, 0, 0, t17_MapProc, #line 39 58, 0, NIL, 0, 0, (PROC)NIL, (PROC)NIL, t17_PrintProc, "", 634671727, 769658969}; PRIVATE TYPE TC17 = &t17_TC; #define t38 ADDRESS #define TC38 TC_REFANY IMPORT TYPE TC_REFANY; IMPORT char VS_REFANY__4b8748e831fc107a; #line 17 "./Scope.i3" #define t56 ADDRESS #define t75 ADDRESS typedef struct { TYPE self; int private; } t75_methods; #define t75_msize (sizeof (t75_methods)) typedef struct { ADDRESS methods; } t75_fields; #define t75_size (sizeof (t75_fields)) #define TC75 TC_UNTRACED_ROOT IMPORT TYPE TC_UNTRACED_ROOT; IMPORT char VS_UNTRACED_ROOT__3e0964513fd6da20; #line 15 "./M3.i3" #define t10 ADDRESS #define TC10 TC_M3__Value IMPORT TYPE TC_M3__Value; #line 15 IMPORT char VS_M3__Value__6f64cf9c2cae25fb; #line 17 "./Scope.i3" #define t60 t81 #define TC56 TC_Scope__ValueList IMPORT TYPE TC_Scope__ValueList; #line 17 IMPORT char VS_Scope__ValueList__64bf053e22e4e53c; #line 16 "../Interfaces/Type.i3" #define t64 ADDRESS #define t72 t81 #define TC64 TC_Type__Map IMPORT TYPE TC_Type__Map; #line 16 IMPORT char VS_Type__Map__41dd9f4b33104fce; #line 14 "../Interfaces/Expr.i3" #define t67 ADDRESS #define t61 ADDRESS #define TC61 TC_M3__Expr IMPORT TYPE TC_M3__Expr; #line 16 "./M3.i3" IMPORT char VS_M3__Expr__8ae39aaa2d432477; #line 14 "../Interfaces/Expr.i3" #define t68 t81 #define TC67 TC_Expr__List IMPORT TYPE TC_Expr__List; #line 14 IMPORT char VS_Expr__List__3f87eceb2b9a246a; #line 17 "../Interfaces/Type.i3" #define t70 ADDRESS #define t53 ADDRESS #define TC53 TC_M3__Type IMPORT TYPE TC_M3__Type; #line 18 "./M3.i3" IMPORT char VS_M3__Type__4d87bc25311f81d2; #line 17 "../Interfaces/Type.i3" typedef struct { t70 _next; t53 _type; } t71; #define TC70 TC_Type__List IMPORT TYPE TC_Type__List; #line 17 IMPORT char VS_Type__List__5791758e343becc1; #define t93 ADDRESS #define TC93 TC_NULL IMPORT TYPE TC_NULL; IMPORT char VS_NULL__fb50c7d53bec30dc; typedef unsigned char t12; #line 350 "Emit.m3" #define t1 t81 typedef t92 (*t3)(); #define t5 ADDRESS #define TC5 TC_TEXT IMPORT TYPE TC_TEXT; IMPORT char VS_TEXT__b7a92447326386f5; #define t5_MapProc TC_TEXT->mapProc typedef signed_char t77; #line 65 "./Token.i3" #define t73 t81 typedef struct { t9 elts[100]; } t78; #line 17 "./String.i3" typedef struct { t4 _top; t78 _stk; } t6; #line 19 "./M3.i3" #define t7 ADDRESS #define TC7 TC_M3__Temp IMPORT TYPE TC_M3__Temp; #line 19 IMPORT char VS_M3__Temp__450b691937f03dae; #line 16 "../Interfaces/Variable.i3" #define t8 ADDRESS #define TC8 TC_Variable__T IMPORT TYPE TC_Variable__T; #line 16 IMPORT char VS_Variable__T__be7ead4a3afd8be5; typedef double t11; #line 350 "Emit.m3" typedef signed_char t13; typedef struct { t12 elts[51]; } t14; #line 128 typedef t15 (*t16)(); #line 47 typedef signed_char t18; typedef struct { t12 elts[10]; } t19; #line 23 ".ROOT/.boots/corelib/Interfaces/TextWr.i3" #define t25 ADDRESS #define TC25 TC_TextWr__T IMPORT TYPE TC_TextWr__T; #line 23 IMPORT char VS_TextWr__T__aa7fbe4a3afd8be5; #define t25_MapProc TC_TextWr__T->mapProc typedef t5 (*t26)(); typedef t25 (*t27)(); #line 83 ".ROOT/.boots/corelib/Interfaces/Rd.i3" #define t28 ADDRESS #define TC28 TC_Rd__T IMPORT TYPE TC_Rd__T; #line 83 IMPORT char VS_Rd__T__2555b70b3f7780b1; #define t28_MapProc TC_Rd__T->mapProc typedef unsigned char t31; #line 45 "./Token.i3" typedef struct { int elts[4]; } t29; #line 26 "./Scanner.i3" typedef t9 (*t30)(); #line 13 typedef struct { t31 _token; t9 _string; t4 _value; t4 _offset; } t32; #line 111 ".ROOT/.boots/corelib/Interfaces/Fmt.i3" #define t33 t81 typedef unsigned char t34; typedef int t35; typedef float t36; #line 14 typedef signed_char t37; typedef unsigned char t40; #line 33 "./Host.i3" typedef t28 (*t41)(); #line 287 ".ROOT/.boots/corelib/Interfaces/Rd.i3" typedef t23 (*t42)(); #line 249 typedef t35 (*t43)(); #line 92 typedef t12 (*t44)(); #line 84 typedef unsigned char t45; #define t47 ADDRESS #define TC47 TC_MUTEX IMPORT TYPE TC_MUTEX; IMPORT char VS_MUTEX__1f9d4e89391ab815; #define t47_MapProc TC_MUTEX->mapProc typedef t11 (*t48)(); #line 92 ".ROOT/.boots/corelib/Interfaces/Convert.i3" typedef t36 (*t49)(); #line 86 typedef t4 (*t50)(); #line 14 "./M3.i3" #define t51 ADDRESS #define TC51 TC_M3__Scope IMPORT TYPE TC_M3__Scope; #line 14 IMPORT char VS_M3__Scope__6e6d8848308d8a2d; #line 38 "../Interfaces/Variable.i3" typedef t7 (*t52)(); #line 24 typedef t8 (*t54)(); #line 14 "../Interfaces/Decl.i3" typedef struct { t9 _alias; t23 _isExternal; t23 _isInline; t23 _isUnused; t23 _isObsolete; } t55; #line 14 "./String.i3" typedef struct { t9 _module; t9 _item; } t57; #line 38 "./Scope.i3" typedef t10 (*t58)(); #line 31 typedef t51 (*t59)(); #line 45 "../Interfaces/Value.i3" typedef t53 (*t62)(); #line 44 typedef t61 (*t63)(); #line 18 typedef unsigned char t65; #line 40 typedef t65 (*t66)(); #line 121 "../Interfaces/Type.i3" typedef t64 (*t69)(); #line 65 "./Token.i3" typedef struct { t9 elts[97]; } t74; #line 17 "./M3.i3" #define t76 ADDRESS #define TC76 TC_M3__Stmt IMPORT TYPE TC_M3__Stmt; #line 17 IMPORT char VS_M3__Stmt__376b307627fc1f2f; #line 67 ".ROOT/.boots/corelib/Interfaces/Text.i3" typedef signed_char t79; typedef t79 (*t80)(); #line 91 ".ROOT/.boots/corelib/Interfaces/Wr.i3" typedef unsigned char t82; #line 15 ".ROOT/.boots/corelib/Interfaces/Thread.i3" #define t83 ADDRESS #define TC83 TC_Thread__T IMPORT TYPE TC_Thread__T; #line 15 IMPORT char VS_Thread__T__2555b70b3f7780b1; #define t83_MapProc TC_Thread__T->mapProc typedef t38 (*t84)(); #define t85 ADDRESS #define TC85 TC_Thread__Condition IMPORT TYPE TC_Thread__Condition; #line 21 IMPORT char VS_Thread__Condition__26d5968239e08f4e; #define t85_MapProc TC_Thread__Condition->mapProc typedef t83 (*t86)(); #define t87 ADDRESS #line 23 typedef struct { t84 _apply; } t87_methods; #define t87_msize (sizeof (t87_methods)) typedef struct { #line 23 int filler; } t87_fields; #define t87_size (sizeof (t87_fields)) #define TC87 TC_Thread__Closure IMPORT TYPE TC_Thread__Closure; #line 23 IMPORT char VS_Thread__Closure__7fb5c6232c5a658a; #define t87_MapProc TC_Thread__Closure->mapProc typedef t85 (*t88)(); typedef t47 (*t89)(); #line 28 #define t90 ADDRESS #line 28 typedef struct { int filler; } t90_methods; #define t90_msize (sizeof (t90_methods)) typedef struct { #line 28 t35 _stackSize; } t90_fields; #define t90_size (sizeof (t90_fields)) #define TC90 TC_Thread__SizedClosure IMPORT TYPE TC_Thread__SizedClosure; #line 28 IMPORT char VS_Thread__SizedClosure__8a46717d2eae7b07; #define t90_MapProc TC_Thread__SizedClosure->mapProc typedef CLOSURE t91; #line 12 "Emit.m3" IMPORT INITLINK* Word__init; IMPORT INITLINK* TextWr__init; IMPORT INITLINK* Value__init; IMPORT INITLINK* Temp__init; IMPORT INITLINK* Scope__init; #line 12 IMPORT INITLINK* Scanner__init; IMPORT INITLINK* Fmt__init; IMPORT INITLINK* Text__init; IMPORT INITLINK* Host__init; IMPORT INITLINK* Variable__init; #line 12 IMPORT INITLINK* UnsafeWr__init; IMPORT INITLINK* Wr__init; IMPORT INITLINK* Expr__init; IMPORT INITLINK* String__init; IMPORT INITLINK* Emit__init; #line 12 IMPORT t4 _Word__And (); IMPORT char VS_Word__And__479727d22e0cef9f; IMPORT t25 _TextWr__New (); IMPORT char VS_TextWr__New__b2aced2f341cea58; #line 12 IMPORT t5 _TextWr__ToText (); IMPORT char VS_TextWr__ToText__07606fcd3a0c5476; IMPORT TYPE TC_Value__T; IMPORT char VS_Value__T__2446b70b3f7780a5; #line 12 IMPORT TYPE TC_Temp__T; IMPORT char VS_Temp__T__3a6c7dc12615e4ee; IMPORT t92 _Temp__Free (); IMPORT char VS_Temp__Free__3b952a2225c26846; #line 12 IMPORT t92 _Temp__Write (); IMPORT char VS_Temp__Write__1a33b61039feaf76; IMPORT TYPE TC_Scope__T; IMPORT char VS_Scope__T__3a6c7dc12615e4ee; #line 12 IMPORT t92 _Scope__GenName (); IMPORT char VS_Scope__GenName__3946bbbf2f1d2ba2; IMPORT t92 _Scanner__Here (); IMPORT char VS_Scanner__Here__1284254c3cfdbf9f; #line 12 IMPORT t5 _Fmt__Unsigned (); IMPORT char VS_Fmt__Unsigned__30e640872bf48cfc; IMPORT t5 _Fmt__LongReal (); IMPORT char VS_Fmt__LongReal__a75dda5e2a97d101; #line 12 IMPORT t5 _Fmt__Pad (); IMPORT char VS_Fmt__Pad__b11d3472276e7bbc; IMPORT TYPE TC_Text__T; IMPORT char VS_Text__T__fc4b369f3ab271fd; #line 12 IMPORT t12 _Text__GetChar (); IMPORT char VS_Text__GetChar__0f4bd6e72493f4ff; IMPORT t35 _Text__Length (); IMPORT char VS_Text__Length__661a58173d76f41c; #line 12 IMPORT t5 _Text__Sub (); IMPORT char VS_Text__Sub__ba151c702fe1a06f; IMPORT t92 _Text__PutStr (); IMPORT char VS_Text__PutStr__d073d76a395ab9cd; #line 12 IMPORT t24 _Host__output; IMPORT char VS_Host__output__f4abf81320b5b8f0; IMPORT t23 _Host__Clines; IMPORT char VS_Host__Clines__d3bebdbe2144568f; #line 12 IMPORT t7 _Variable__Load (); IMPORT char VS_Variable__Load__05e07c0e3fca1344; IMPORT t92 _Variable__LoadLValue (); IMPORT char VS_Variable__LoadLValue__972aa6573932208a; #line 12 IMPORT EXCEPTION_NAME _Wr__Error; IMPORT char VS_Wr__Error__c367253d3ed4fd15; IMPORT EXCEPTION_NAME _Wr__Failure; IMPORT char VS_Wr__Failure__5f82cfb43dabf527; #line 12 IMPORT EXCEPTION_NAME _Thread__Alerted; IMPORT char VS_Thread__Alerted__fc88feb43485af46; IMPORT t92 _UnsafeWr__FastPutChar (); #line 12 IMPORT char VS_UnsafeWr__FastPutChar__b1a53b0220cb969f; IMPORT t92 _UnsafeWr__FastPutText (); IMPORT char VS_UnsafeWr__FastPutText__a6a617eb3f19afd1; #line 12 IMPORT t92 _UnsafeWr__FastPutString (); IMPORT char VS_UnsafeWr__FastPutString__3489317e38b7823c; IMPORT t92 _UnsafeWr__FastPutInt (); #line 12 IMPORT char VS_UnsafeWr__FastPutInt__da9571263c7312f3; IMPORT t92 _Wr__Flush (); IMPORT char VS_Wr__Flush__2d2c8ef127dcfe6f; #line 12 IMPORT TYPE TC_Expr__T; IMPORT char VS_Expr__T__2446b70b3f7780a5; IMPORT t92 _String__Put (); IMPORT char VS_String__Put__2457561e210725b3; #line 12 IMPORT t92 _String__PutChars (); IMPORT char VS_String__PutChars__3deea76a27eef07c; IMPORT t4 _String__Length (); IMPORT char VS_String__Length__75f8af7a37a956d2; #line 12 IMPORT char VS_Emit__Marker__88b0bcf838a5bd88; IMPORT char VS_Emit__Indent__cd453c0f3b29292c; IMPORT char VS_Emit__Outdent__5328bd4721005636; #line 12 IMPORT char VS_Emit__FlushLine__0e45465327b0fa27; IMPORT char VS_Emit__MaxStream__cf0a0e8934c9c9f3; IMPORT TYPE TC_Emit__Format; #line 12 IMPORT char VS_Emit__Format__bc4a2b083b93bbd7; EXPORT t92 _Emit__Op (); EXPORT char VS_Emit__Op__072646cc27c8ae10 = '\0'; #line 12 EXPORT t92 _Emit__OpC (); EXPORT char VS_Emit__OpC__d4b4d33b2f9260e3 = '\0'; EXPORT t92 _Emit__OpQ (); EXPORT char VS_Emit__OpQ__defdd50e3dd4bbd5 = '\0'; #line 12 EXPORT t92 _Emit__OpS (); EXPORT char VS_Emit__OpS__f7dc93802c012951 = '\0'; EXPORT t92 _Emit__OpSS (); EXPORT char VS_Emit__OpSS__6d3e5a1c3d099356 = '\0'; #line 12 EXPORT t92 _Emit__OpSI (); EXPORT char VS_Emit__OpSI__ab1965f432d76dc2 = '\0'; EXPORT t92 _Emit__OpIS (); EXPORT char VS_Emit__OpIS__9f7893f0232bd0ad = '\0'; #line 12 EXPORT t92 _Emit__OpI (); EXPORT char VS_Emit__OpI__02cb878634bb9f49 = '\0'; EXPORT t92 _Emit__OpII (); EXPORT char VS_Emit__OpII__2247fe46332f901b = '\0'; #line 12 EXPORT t92 _Emit__OpIII (); EXPORT char VS_Emit__OpIII__346a6aee3776eadb = '\0'; EXPORT t92 _Emit__OpV (); EXPORT char VS_Emit__OpV__330b9ba039cee040 = '\0'; #line 12 EXPORT t92 _Emit__OpL (); EXPORT char VS_Emit__OpL__d23a30b4211402b9 = '\0'; EXPORT t92 _Emit__OpR (); EXPORT char VS_Emit__OpR__ef912b083185e4b5 = '\0'; #line 12 EXPORT t92 _Emit__OpN (); EXPORT char VS_Emit__OpN__a3f6e37c396e144c = '\0'; EXPORT t92 _Emit__OpH (); EXPORT char VS_Emit__OpH__466335383480069b = '\0'; #line 12 EXPORT t92 _Emit__OpHH (); EXPORT char VS_Emit__OpHH__5077280930ca83a5 = '\0'; EXPORT t92 _Emit__OpT (); EXPORT char VS_Emit__OpT__764bdffe21d249e8 = '\0'; #line 12 EXPORT t92 _Emit__OpTT (); EXPORT char VS_Emit__OpTT__cba0ce912431e01c = '\0'; EXPORT t92 _Emit__OpTTT (); EXPORT char VS_Emit__OpTTT__91a3dd742690c5b9 = '\0'; #line 12 EXPORT t92 _Emit__OpTI (); EXPORT char VS_Emit__OpTI__af828b1c28578815 = '\0'; EXPORT t92 _Emit__OpIT (); EXPORT char VS_Emit__OpIT__1322d0f925e21d92 = '\0'; #line 12 EXPORT t92 _Emit__OpX (); EXPORT char VS_Emit__OpX__292ab8ae2c2557f1 = '\0'; EXPORT t92 _Emit__OpZ (); EXPORT char VS_Emit__OpZ__5d420cfd350afcf1 = '\0'; #line 12 EXPORT t92 _Emit__OpSZ (); EXPORT char VS_Emit__OpSZ__2c9922b13f4ae96b = '\0'; EXPORT t92 _Emit__ZeroL (); EXPORT char VS_Emit__ZeroL__cdc3e04438bbfecc = '\0'; #line 12 EXPORT t92 _Emit__ZeroT (); EXPORT char VS_Emit__ZeroT__503aecb12ddbb6a6 = '\0'; EXPORT t92 _Emit__ZeroZ (); EXPORT char VS_Emit__ZeroZ__4fb11ac5346fa880 = '\0'; #line 12 EXPORT t92 _Emit__Comment (); EXPORT char VS_Emit__Comment__fa6bac093f4e04bf = '\0'; EXPORT t92 _Emit__Push (); EXPORT char VS_Emit__Push__bb0d136633891859 = '\0'; #line 12 EXPORT t92 _Emit__Pop (); EXPORT char VS_Emit__Pop__8a7be1412301ed32 = '\0'; EXPORT t15 _Emit__Switch (); EXPORT char VS_Emit__Switch__e69d0876372d3ad7 = '\0'; #line 12 EXPORT t92 _Emit__Initialize (); EXPORT char VS_Emit__Initialize__7623667b2f41ceec = '\0'; PRIVATE TYPE TC_Emit__T; PRIVATE t4 _Emit__x; #line 12 PRIVATE t5 _Emit__fmt; PRIVATE t17 _Emit__stack; PRIVATE t17 _Emit__free; PRIVATE t20 _Emit__cur; PRIVATE t19 _Emit__digits; #line 12 PRIVATE t92 _Emit__Flush (); PRIVATE t92 _Emit__SetLine (); PRIVATE t92 _Emit__X (); PRIVATE t92 _Emit__TT (); PRIVATE t92 _Emit__V (); #line 12 PRIVATE t92 _Emit__L (); PRIVATE t92 _Emit__I (); PRIVATE t92 _Emit__C (); PRIVATE t92 _Emit__Q (); PRIVATE t92 _Emit__S (); #line 12 PRIVATE t92 _Emit__SS (); PRIVATE t92 _Emit__R (); PRIVATE t92 _Emit__N (); PRIVATE t92 _Emit__H (); PRIVATE t92 _Emit__Zero (); #line 12 IMPORT char VS_Wr__T__425fee3d37f2ccaf; void Emit__MMap (p) void (*p) (); { ADDRESS r = NIL; ADDRESS c = NIL; CHECKSTACKOVERFLOW; #line 12 p (& (_Emit__fmt), r, c); p (& (_Emit__stack), r, c); p (& (_Emit__free), r, c); p (& (_Emit__cur._wr), r, c); }; #line 49 "Emit.m3" EXPORT t92 _Emit__Push () { t23 z2; t17 z3; t17 z0; t17 z1; t23 z4; t25 z5; #line 49 "Emit.m3" { auto t17 _t; { ZERO1 (& _t); #line 49 CHECKSTACKOVERFLOW; z2 = (_Emit__stack != 0); if (z2) { NILCHECKA (z3 = _Emit__stack); (((*((t22*) z3))._streams).elts[((*((t22*) z3))._current)]) = _Emit__cur; #line 53 goto if_1_end; }; if_1_end: /**/; z2 = (_Emit__free == 0); if (z2) { { register t22* ptr = (t22*) TNEW (TC17); z0 = (t17) ptr; }; _Emit__free = z0; goto if_2_end; #line 56 }; if_2_end: /**/; _t = _Emit__free; NILCHECKA (z1 = _t); _Emit__free = ((*((t22*) z1))._next); { int from, to, index; from = 0 ; to = 1 ; { auto t4 _i; { for (index = from; index <= to; index += 1) { _i = (t4) index; { t20 *with; NILCHECKA (z1 = _t); with = &(((*((t22*) z1))._streams).elts[_i]); { auto t20 * _z; { _z = with; ((*_z)._indent) = 0 ; ((*_z)._newline) = 1 ; ((*_z)._breakable) = 1 ; ((*_z)._flushLine) = 0 ; ((*_z)._file) = (t9) 0; ((*_z)._line) = 0 ; ((*_z)._width) = 0 ; } } }; } } }; }; NILCHECKA (z3 = _t); ((*((t22*) z3))._current) = 0 ; NILCHECKA (z3 = _t); ((*((t22*) z3))._pending) = (t17) 0; NILCHECKA (z3 = _t); ((*((t22*) z3))._next) = _Emit__stack; _Emit__stack = _t; NILCHECKA (z1 = _t); _Emit__cur = (((*((t22*) z1))._streams).elts[ 0 ]); z4 = ((_Emit__cur._wr) == 0); if (z4) { z5 = _TextWr__New (); (_Emit__cur._wr) = (t24) z5; goto if_3_end; }; if_3_end: /**/; #line 79 } } }; #line 82 "Emit.m3" EXPORT t92 _Emit__Pop () { t23 z2; t17 z1; t17 z3; t17 z4; #line 82 "Emit.m3" { auto t17 _t; { ZERO1 (& _t); #line 82 CHECKSTACKOVERFLOW; z2 = (_Emit__stack == 0); if (z2) { return; }; _t = _Emit__stack; NILCHECKA (z1 = _t); _Emit__stack = ((*((t22*) z1))._next); NILCHECKA (z3 = _t); (((*((t22*) z3))._streams).elts[((*((t22*) z3))._current)]) = _Emit__cur; z2 = (_Emit__stack == 0); if (z2) { _Emit__Flush (_t); goto if_5_end; }; NILCHECKA (z1 = _Emit__stack); NILCHECKA (z4 = _t); ((*((t22*) z4))._next) = ((*((t22*) z1))._pending); NILCHECKA (z3 = _Emit__stack); ((*((t22*) z3))._pending) = _t; if_5_end: /**/; z2 = (_Emit__stack != 0); if (z2) { NILCHECKA (z1 = _Emit__stack); _Emit__cur = (((*((t22*) z1))._streams).elts[((*((t22*) z1))._current)]); goto if_6_end; #line 100 }; (_Emit__cur._wr) = _Host__output; if_6_end: /**/; } } }; #line 105 "Emit.m3" PRIVATE t92 _Emit__Flush (_t) t17 _t; { t23 z2; t17 z1; t23 z7; t17 z4; t25 z9; t5 z3; #line 105 "Emit.m3" { auto t17 _q; { ZERO1 (& _q); #line 105 CHECKSTACKOVERFLOW; z2 = (_t != 0); if (z2) do { NILCHECKA (z1 = _t); _q = ((*((t22*) z1))._next); { int from, to, index; from = 0 ; to = 1 ; { auto t4 _i; { for (index = from; index <= to; index += 1) { _i = (t4) index; NILCHECKA (z1 = _t); z7 = (((((*((t22*) z1))._streams).elts[_i])._wr) != 0); if (z7) { NILCHECKA (z4 = _t); z9 = NARROW (((((*((t22*) z4))._streams).elts[_i])._wr), t25, TC25, z9); z3 = _TextWr__ToText (z9); #line 114 _UnsafeWr__FastPutText (_Host__output, z3); goto if_7_end; }; if_7_end: /**/; } } }; }; NILCHECKA (z4 = _t); _Emit__Flush (((*((t22*) z4))._pending)); NILCHECKA (z4 = _t); ((*((t22*) z4))._next) = _Emit__free; _Emit__free = _t; _t = _q; z2 = (_t != 0); } while (z2); } } }; #line 128 "Emit.m3" EXPORT t15 _Emit__Switch (_new) t15 _new; { t17 z1; t23 z2; t17 z3; t23 z4; t25 z5; #line 128 "Emit.m3" { auto t15 _old; auto t15 __result; { ZERO1B (& _old); #line 128 ZERO1B (& __result); CHECKSTACKOVERFLOW; NILCHECKA (z1 = _Emit__stack); _old = ((*((t22*) z1))._current); z2 = (_old != _new); if (z2) { NILCHECKA (z3 = _Emit__stack); (((*((t22*) z3))._streams).elts[_old]) = _Emit__cur; NILCHECKA (z1 = _Emit__stack); _Emit__cur = (((*((t22*) z1))._streams).elts[_new]); NILCHECKA (z3 = _Emit__stack); ((*((t22*) z3))._current) = _new; goto if_8_end; }; if_8_end: /**/; z4 = ((_Emit__cur._wr) == 0); if (z4) { z5 = _TextWr__New (); (_Emit__cur._wr) = (t24) z5; goto if_9_end; }; if_9_end: /**/; __result = _old; return __result; } } }; #line 141 "Emit.m3" PRIVATE t92 _Emit__SetLine () { t23 z2; t23 z1; t23 z3; t23 z0; t23 z4; t4 z5; #line 141 "Emit.m3" { auto t9 _file; auto t4 _line; { CHECKSTACKOVERFLOW; z2 = 0; if ((_Emit__cur._breakable)) { z1 = ! _Host__Clines; z2 = z1; }; if (z2) { _Scanner__Here (&_file, &_line); if ((_Emit__cur._flushLine)) { _UnsafeWr__FastPutChar ((_Emit__cur._wr), '\012' ); (_Emit__cur._line) += 1 ; (_Emit__cur._newline) = 1 ; (_Emit__cur._breakable) = 1 ; (_Emit__cur._width) = 0 ; goto if_11_end; }; z3 = (_file == (_Emit__cur._file)); z0 = 0; if (z3) { z4 = (_line == (_Emit__cur._line)); #line 151 z0 = z4; }; z1 = 1; if (! z0) { z3 = (_line <= 0 ); z1 = z3; }; if (z1) { z3 = ((_Emit__cur._width) <= 120 ); if (z3) { _UnsafeWr__FastPutChar ((_Emit__cur._wr), ' ' ); (_Emit__cur._newline) = 0 ; (_Emit__cur._breakable) = 0 ; (_Emit__cur._width) += 1 ; goto if_12_end; }; z2 = (_line > 0 ); if (z2) { _UnsafeWr__FastPutText ((_Emit__cur._wr), ((ADDRESS)(& txt5.str))); _UnsafeWr__FastPutInt ((_Emit__cur._wr), _line, 10 ); _UnsafeWr__FastPutChar ((_Emit__cur._wr), '\012' ); (_Emit__cur._newline) = 1 ; (_Emit__cur._breakable) = 1 ; (_Emit__cur._width) = 0 ; goto if_12_end; }; _UnsafeWr__FastPutChar ((_Emit__cur._wr), '\012' ); (_Emit__cur._newline) = 1 ; (_Emit__cur._breakable) = 1 ; (_Emit__cur._width) = 0 ; if_12_end: /**/; goto if_11_end; }; z3 = (_file != (_Emit__cur._file)); if (z3) { _UnsafeWr__FastPutText ((_Emit__cur._wr), ((ADDRESS)(& txt5.str))); z2 = (_line > 0 ); if (z2) { _UnsafeWr__FastPutInt ((_Emit__cur._wr), _line, 10 ); goto if_13_end; }; _UnsafeWr__FastPutText ((_Emit__cur._wr), ((ADDRESS)(& txt6.str))); if_13_end: /**/; _UnsafeWr__FastPutText ((_Emit__cur._wr), ((ADDRESS)(& txt7.str))); _String__Put ((_Emit__cur._wr), _file); _UnsafeWr__FastPutText ((_Emit__cur._wr), ((ADDRESS)(& txt8.str))); (_Emit__cur._file) = _file; (_Emit__cur._line) = _line; (_Emit__cur._newline) = 1 ; (_Emit__cur._breakable) = 1 ; (_Emit__cur._width) = 0 ; goto if_11_end; }; z3 = ((_Emit__cur._line) <= _line); z0 = 0; if (z3) { z5 = (_Emit__cur._line) + 10 ; #line 184 z2 = (_line <= z5); z0 = z2; }; if (z0) { z3 = ((_Emit__cur._line) < _line); if (z3) do { _UnsafeWr__FastPutChar ((_Emit__cur._wr), '\012' ); (_Emit__cur._line) += 1 ; z3 = ((_Emit__cur._line) < _line); } while (z3); (_Emit__cur._newline) = 1 ; (_Emit__cur._breakable) = 1 ; (_Emit__cur._width) = 0 ; goto if_11_end; }; _UnsafeWr__FastPutText ((_Emit__cur._wr), ((ADDRESS)(& txt5.str))); _UnsafeWr__FastPutInt ((_Emit__cur._wr), _line, 10 ); _UnsafeWr__FastPutChar ((_Emit__cur._wr), '\012' ); (_Emit__cur._line) = _line; (_Emit__cur._newline) = 1 ; (_Emit__cur._breakable) = 1 ; (_Emit__cur._width) = 0 ; if_11_end: /**/; goto if_10_end; }; if_10_end: /**/; } } }; #line 205 "Emit.m3" PRIVATE t92 _Emit__X () { t35 z3; t23 z1; t4 z4; t12 z2; t23 z5; #line 205 "Emit.m3" { auto t12 _c; { ZERO1B (& _c); #line 205 CHECKSTACKOVERFLOW; loop_0:; z3 = _Text__Length (_Emit__fmt); z1 = (_Emit__x >= z3); if (z1) { return; }; if ((_Emit__cur._breakable)) { _Emit__SetLine (); goto if_15_end; }; if_15_end: /**/; z4 = _Emit__x; if (z4 < 0) RANGEFAULT; z2 = _Text__GetChar (_Emit__fmt, z4); _c = z2; switch (_c) { case 10: z1 = 1; if (! _Host__Clines) { z1 = (_Emit__cur._flushLine); }; if (z1) { _UnsafeWr__FastPutChar ((_Emit__cur._wr), '\012' ); (_Emit__cur._line) += 1 ; (_Emit__cur._newline) = 1 ; (_Emit__cur._flushLine) = 0 ; (_Emit__cur._width) = 0 ; goto if_16_end; }; (_Emit__cur._breakable) = 1 ; if_16_end: /**/; break; case 3: z5 = ! (_Emit__cur._newline); if (z5) { _UnsafeWr__FastPutChar ((_Emit__cur._wr), '\012' ); (_Emit__cur._line) += 1 ; goto if_17_end; }; if_17_end: /**/; (_Emit__cur._newline) = 0 ; (_Emit__cur._breakable) = 0 ; (_Emit__cur._flushLine) = 1 ; (_Emit__cur._width) = 0 ; break; case 1: (_Emit__cur._indent) += 3 ; break; case 2: (_Emit__cur._indent) -= 3 ; break; case 0: return; default: /**/; if ((_Emit__cur._newline)) { { int from, to, index; from = 1 ; to = (_Emit__cur._indent); { auto t4 _i; { for (index = from; index <= to; index += 1) { #line 240 _i = (t4) index; _UnsafeWr__FastPutChar ((_Emit__cur._wr), ' ' ); } } }; }; (_Emit__cur._newline) = 0 ; (_Emit__cur._width) = (_Emit__cur._indent); goto if_18_end; }; if_18_end: /**/; (_Emit__cur._breakable) = 0 ; z5 = (_c == '@' ); if (z5) { _Emit__x += 1 ; return; }; _UnsafeWr__FastPutChar ((_Emit__cur._wr), _c); (_Emit__cur._newline) = 0 ; (_Emit__cur._width) += 1 ; }; _Emit__x += 1 ; goto loop_0; } } }; #line 254 "Emit.m3" PRIVATE t92 _Emit__TT (_t) t7 _t; { #line 254 "Emit.m3" { auto t4 _z; auto t5 _zz; { ZERO1 (& _zz); #line 254 CHECKSTACKOVERFLOW; _Emit__X (); _z = _Emit__x; _zz = _Emit__fmt; _Temp__Write (_t); _Emit__x = _z; _Emit__fmt = _zz; } } }; #line 263 "Emit.m3" PRIVATE t92 _Emit__V (_v) t8 _v; { t7 z2; #line 263 "Emit.m3" { auto t4 _z; auto t7 _t; auto t5 _zz; { ZERO1 (& _zz); #line 263 CHECKSTACKOVERFLOW; _Emit__X (); _z = _Emit__x; _zz = _Emit__fmt; z2 = _Variable__Load (_v); _t = z2; _Temp__Write (_t); _Temp__Free (_t); _Emit__x = _z; _Emit__fmt = _zz; } } }; #line 274 "Emit.m3" PRIVATE t92 _Emit__L (_v) t8 _v; { #line 274 "Emit.m3" { auto t4 _z; auto t5 _zz; { ZERO1 (& _zz); #line 274 CHECKSTACKOVERFLOW; _Emit__X (); _z = _Emit__x; _zz = _Emit__fmt; _Variable__LoadLValue (_v); _Emit__x = _z; _Emit__fmt = _zz; } } }; #line 283 "Emit.m3" PRIVATE t92 _Emit__I (_i) t4 _i; { t23 z2; t4 z5; t4 z6; t4 z4; t4 z7; t4 z8; #line 283 "Emit.m3" { { CHECKSTACKOVERFLOW; _Emit__X (); if ((_Emit__cur._breakable)) { _Emit__SetLine (); (_Emit__cur._breakable) = 0 ; goto if_20_end; }; if_20_end: /**/; z2 = ( 0 <= _i); if (z2) { z2 = (_i < 10 ); if (z2) { z5 = _i; if ((z5 < 0) || (9 < z5)) RANGEFAULT; _UnsafeWr__FastPutChar ((_Emit__cur._wr), (_Emit__digits.elts[z5])); (_Emit__cur._width) += 1 ; goto if_22_end; }; z2 = (_i < 100 ); if (z2) { z6 = IDIV (_i, 10 ); z4 = z6; if ((z4 < 0) || (9 < z4)) RANGEFAULT; _UnsafeWr__FastPutChar ((_Emit__cur._wr), (_Emit__digits.elts[z4])); z6 = _i; z7 = 10 ; z8 = z6 - (z7 * (IDIV (z6, z7))); z4 = z8; if ((z4 < 0) || (9 < z4)) RANGEFAULT; _UnsafeWr__FastPutChar ((_Emit__cur._wr), (_Emit__digits.elts[z4])); (_Emit__cur._width) += 2 ; goto if_22_end; }; _UnsafeWr__FastPutInt ((_Emit__cur._wr), _i, 10 ); (_Emit__cur._width) += 3 ; if_22_end: /**/; goto if_21_end; }; _UnsafeWr__FastPutInt ((_Emit__cur._wr), _i, 10 ); (_Emit__cur._width) += 3 ; if_21_end: /**/; } } }; #line 305 "Emit.m3" PRIVATE t92 _Emit__C (_c) t12 _c; { t23 z2; t23 z0; t23 z3; t23 z1; t4 z4; t4 z6; t4 z5; #line 305 "Emit.m3" { auto t4 _n; { CHECKSTACKOVERFLOW; _Emit__X (); if ((_Emit__cur._breakable)) { _Emit__SetLine (); (_Emit__cur._breakable) = 0 ; goto if_23_end; }; if_23_end: /**/; z2 = (_c < ' ' ); z0 = 1; if (! z2) { z3 = (_c == '\042' ); z0 = z3; }; z1 = 1; if (! z0) { z3 = (_c == '\047' ); #line 310 z1 = z3; }; z0 = 1; if (! z1) { z3 = ( '~' < _c); z0 = z3; }; z1 = 1; if (! z0) { z3 = (_c == '\134' ); z1 = z3; #line 310 }; if (z1) { z4 = _c & 255 ; _n = z4; _UnsafeWr__FastPutChar ((_Emit__cur._wr), '\134' ); z6 = IDIV (_n, 64 ); z4 = z6; if ((z4 < 0) || (9 < z4)) RANGEFAULT; _UnsafeWr__FastPutChar ((_Emit__cur._wr), (_Emit__digits.elts[z4])); #line 313 z4 = _n & 63 ; _n = z4; z6 = IDIV (_n, 8 ); z4 = z6; if ((z4 < 0) || (9 < z4)) RANGEFAULT; _UnsafeWr__FastPutChar ((_Emit__cur._wr), (_Emit__digits.elts[z4])); #line 314 z4 = _n & 7 ; _n = z4; z5 = _n; if ((z5 < 0) || (9 < z5)) RANGEFAULT; _UnsafeWr__FastPutChar ((_Emit__cur._wr), (_Emit__digits.elts[z5])); (_Emit__cur._width) += 4 ; goto if_24_end; }; _UnsafeWr__FastPutChar ((_Emit__cur._wr), _c); (_Emit__cur._width) += 1 ; if_24_end: /**/; } } }; #line 323 "Emit.m3" PRIVATE t92 _Emit__Q (_s) t9 _s; { t4 z5; t4 z3; #line 323 "Emit.m3" { { CHECKSTACKOVERFLOW; _Emit__X (); if ((_Emit__cur._breakable)) { _Emit__SetLine (); (_Emit__cur._breakable) = 0 ; goto if_25_end; }; if_25_end: /**/; _String__PutChars ((_Emit__cur._wr), _s); z5 = _String__Length (_s); z3 = 4 * z5; (_Emit__cur._width) += z3; } } }; #line 331 "Emit.m3" PRIVATE t92 _Emit__S (_s) t9 _s; { t4 z4; #line 331 "Emit.m3" { { CHECKSTACKOVERFLOW; _Emit__X (); if ((_Emit__cur._breakable)) { _Emit__SetLine (); (_Emit__cur._breakable) = 0 ; goto if_26_end; }; if_26_end: /**/; _String__Put ((_Emit__cur._wr), _s); z4 = _String__Length (_s); (_Emit__cur._width) += z4; } } }; #line 339 "Emit.m3" PRIVATE t92 _Emit__SS (_ss) t6 * _ss; { t4 z3; t4 z6; t4 z7; #line 339 "Emit.m3" { { CHECKSTACKOVERFLOW; _Emit__X (); if ((_Emit__cur._breakable)) { _Emit__SetLine (); (_Emit__cur._breakable) = 0 ; goto if_27_end; }; if_27_end: /**/; { int from, to, index; from = 0 ; z3 = ((*_ss)._top) - 1 ; to = z3; { auto t4 _i; { for (index = from; index <= to; index += 1) { #line 343 _i = (t4) index; z6 = _i; if (z6 > 99) RANGEFAULT; _String__Put ((_Emit__cur._wr), (((*_ss)._stk).elts[z6])); z6 = _i; if (z6 > 99) RANGEFAULT; z7 = _String__Length ((((*_ss)._stk).elts[z6])); (_Emit__cur._width) += z7; #line 345 } } }; }; } } }; #line 349 "Emit.m3" PRIVATE t92 _Emit__R (_r) t11 _r; { t5 z4; t81 z2; t35 z3; t4 z5; t23 z6; t23 z0; t23 z1; t4 z7; t81 z8; t4 z9; t4 z10; #line 349 "Emit.m3" { auto t5 _t; auto t14 _u; auto t4 _len; { ZERO1 (& _t); ZERO (51, & _u); #line 349 CHECKSTACKOVERFLOW; _Emit__X (); if ((_Emit__cur._breakable)) { _Emit__SetLine (); (_Emit__cur._breakable) = 0 ; goto if_28_end; }; if_28_end: /**/; z4 = _Fmt__LongReal (_r, 13 , 2 ); _t = z4; { z2.elts = (char*) (& _u); z2.size[0] = 51; }; _Text__PutStr (&z2, _t); z3 = _Text__Length (_t); _len = z3; { int from, to, index; from = 0 ; z5 = _len - 1 ; to = z5; { auto t4 _i; { for (index = from; index <= to; index += 1) { #line 357 _i = (t4) index; z5 = _i; if (z5 > 50) RANGEFAULT; z6 = ((_u.elts[z5]) == 'D' ); z0 = 1; if (! z6) { z5 = _i; if (z5 > 50) RANGEFAULT; #line 358 z6 = ((_u.elts[z5]) == 'd' ); z0 = z6; }; z1 = 1; if (! z0) { z5 = _i; if (z5 > 50) RANGEFAULT; z6 = ((_u.elts[z5]) == 'E' ); #line 358 z1 = z6; }; if (z1) { z5 = _i; if (z5 > 50) RANGEFAULT; (_u.elts[z5]) = 'e' ; goto for_4; }; } } }; #line 358 }; for_4: /**/; z5 = 0 ; if (z5 < 0) RANGEFAULT; z7 = _len; if (z7 < 0) RANGEFAULT; { z9 = z5; z10 = z7; if ((z9+z10) > 51) RANGEFAULT; #line 360 z8.size[0] = z10; z8.elts = ((char*)(& _u)) + (z9 * 1); }; _UnsafeWr__FastPutString ((_Emit__cur._wr), z8); (_Emit__cur._width) += _len; } } }; #line 364 "Emit.m3" PRIVATE t92 _Emit__N (_v) t10 _v; { #line 364 "Emit.m3" { auto t4 _z; auto t5 _zz; { ZERO1 (& _zz); #line 364 CHECKSTACKOVERFLOW; _Emit__X (); _z = _Emit__x; _zz = _Emit__fmt; _Scope__GenName (_v); _Emit__x = _z; _Emit__fmt = _zz; } } }; #line 373 "Emit.m3" PRIVATE t92 _Emit__H (_h) t4 _h; { t5 z7; t5 z8; #line 373 "Emit.m3" { { CHECKSTACKOVERFLOW; _Emit__X (); if ((_Emit__cur._breakable)) { _Emit__SetLine (); (_Emit__cur._breakable) = 0 ; goto if_30_end; }; if_30_end: /**/; z7 = _Fmt__Unsigned (_h, 16 ); z8 = _Fmt__Pad (z7, 8 , '0' , 1 ); _UnsafeWr__FastPutText ((_Emit__cur._wr), z8); (_Emit__cur._width) += 8 ; } } }; #line 381 "Emit.m3" EXPORT t92 _Emit__Op (_f) t5 _f; { #line 381 "Emit.m3" { { CHECKSTACKOVERFLOW; _Emit__fmt = _f; _Emit__x = 0 ; _Emit__X (); } } }; #line 387 "Emit.m3" EXPORT t92 _Emit__OpC (_f, _c) t5 _f; t12 _c; { #line 387 "Emit.m3" { { CHECKSTACKOVERFLOW; _Emit__fmt = _f; _Emit__x = 0 ; _Emit__C (_c); _Emit__X (); } } }; #line 394 "Emit.m3" EXPORT t92 _Emit__OpQ (_f, _s) t5 _f; t9 _s; { #line 394 "Emit.m3" { { CHECKSTACKOVERFLOW; _Emit__fmt = _f; _Emit__x = 0 ; _Emit__Q (_s); _Emit__X (); } } }; #line 401 "Emit.m3" EXPORT t92 _Emit__OpS (_f, _s) t5 _f; t9 _s; { #line 401 "Emit.m3" { { CHECKSTACKOVERFLOW; _Emit__fmt = _f; _Emit__x = 0 ; _Emit__S (_s); _Emit__X (); } } }; #line 408 "Emit.m3" EXPORT t92 _Emit__OpSS (_f, _s1, _s2) t5 _f; t9 _s1; t9 _s2; { #line 408 "Emit.m3" { { CHECKSTACKOVERFLOW; _Emit__fmt = _f; _Emit__x = 0 ; _Emit__S (_s1); _Emit__S (_s2); _Emit__X (); } } }; #line 416 "Emit.m3" EXPORT t92 _Emit__OpSI (_f, _s, _i) t5 _f; t9 _s; t4 _i; { #line 416 "Emit.m3" { { CHECKSTACKOVERFLOW; _Emit__fmt = _f; _Emit__x = 0 ; _Emit__S (_s); _Emit__I (_i); _Emit__X (); } } }; #line 424 "Emit.m3" EXPORT t92 _Emit__OpIS (_f, _i, _s) t5 _f; t4 _i; t9 _s; { #line 424 "Emit.m3" { { CHECKSTACKOVERFLOW; _Emit__fmt = _f; _Emit__x = 0 ; _Emit__I (_i); _Emit__S (_s); _Emit__X (); } } }; #line 432 "Emit.m3" EXPORT t92 _Emit__OpI (_f, _i) t5 _f; t4 _i; { #line 432 "Emit.m3" { { CHECKSTACKOVERFLOW; _Emit__fmt = _f; _Emit__x = 0 ; _Emit__I (_i); _Emit__X (); } } }; #line 439 "Emit.m3" EXPORT t92 _Emit__OpII (_f, _i1, _i2) t5 _f; t4 _i1; t4 _i2; { #line 439 "Emit.m3" { { CHECKSTACKOVERFLOW; _Emit__fmt = _f; _Emit__x = 0 ; _Emit__I (_i1); _Emit__I (_i2); _Emit__X (); } } }; #line 447 "Emit.m3" EXPORT t92 _Emit__OpIII (_f, _i1, _i2, _i3) t5 _f; t4 _i1; t4 _i2; t4 _i3; { #line 447 "Emit.m3" { { CHECKSTACKOVERFLOW; _Emit__fmt = _f; _Emit__x = 0 ; _Emit__I (_i1); _Emit__I (_i2); _Emit__I (_i3); _Emit__X (); } } }; #line 456 "Emit.m3" EXPORT t92 _Emit__OpV (_f, _v) t5 _f; t8 _v; { #line 456 "Emit.m3" { { CHECKSTACKOVERFLOW; _Emit__fmt = _f; _Emit__x = 0 ; _Emit__V (_v); _Emit__X (); } } }; #line 463 "Emit.m3" EXPORT t92 _Emit__OpL (_f, _v) t5 _f; t8 _v; { #line 463 "Emit.m3" { { CHECKSTACKOVERFLOW; _Emit__fmt = _f; _Emit__x = 0 ; _Emit__L (_v); _Emit__X (); } } }; #line 470 "Emit.m3" EXPORT t92 _Emit__OpR (_f, _r) t5 _f; t11 _r; { #line 470 "Emit.m3" { { CHECKSTACKOVERFLOW; _Emit__fmt = _f; _Emit__x = 0 ; _Emit__R (_r); _Emit__X (); } } }; #line 477 "Emit.m3" EXPORT t92 _Emit__OpN (_f, _v) t5 _f; t10 _v; { #line 477 "Emit.m3" { { CHECKSTACKOVERFLOW; _Emit__fmt = _f; _Emit__x = 0 ; _Emit__N (_v); _Emit__X (); } } }; #line 484 "Emit.m3" EXPORT t92 _Emit__OpH (_f, _h) t5 _f; t4 _h; { #line 484 "Emit.m3" { { CHECKSTACKOVERFLOW; _Emit__fmt = _f; _Emit__x = 0 ; _Emit__H (_h); _Emit__X (); } } }; #line 491 "Emit.m3" EXPORT t92 _Emit__OpHH (_f, _h1, _h2) t5 _f; t4 _h1; t4 _h2; { #line 491 "Emit.m3" { { CHECKSTACKOVERFLOW; _Emit__fmt = _f; _Emit__x = 0 ; _Emit__H (_h1); _Emit__H (_h2); _Emit__X (); } } }; #line 499 "Emit.m3" EXPORT t92 _Emit__OpT (_f, _t) t5 _f; t7 _t; { #line 499 "Emit.m3" { { CHECKSTACKOVERFLOW; _Emit__fmt = _f; _Emit__x = 0 ; _Emit__TT (_t); _Emit__X (); } } }; #line 506 "Emit.m3" EXPORT t92 _Emit__OpTT (_f, _t1, _t2) t5 _f; t7 _t1; t7 _t2; { #line 506 "Emit.m3" { { CHECKSTACKOVERFLOW; _Emit__fmt = _f; _Emit__x = 0 ; _Emit__TT (_t1); _Emit__TT (_t2); _Emit__X (); } } }; #line 514 "Emit.m3" EXPORT t92 _Emit__OpTTT (_f, _t1, _t2, _t3) t5 _f; t7 _t1; t7 _t2; t7 _t3; { #line 514 "Emit.m3" { { CHECKSTACKOVERFLOW; _Emit__fmt = _f; _Emit__x = 0 ; _Emit__TT (_t1); _Emit__TT (_t2); _Emit__TT (_t3); _Emit__X (); } } }; #line 523 "Emit.m3" EXPORT t92 _Emit__OpTI (_f, _t, _i) t5 _f; t7 _t; t4 _i; { #line 523 "Emit.m3" { { CHECKSTACKOVERFLOW; _Emit__fmt = _f; _Emit__x = 0 ; _Emit__TT (_t); _Emit__I (_i); _Emit__X (); } } }; #line 531 "Emit.m3" EXPORT t92 _Emit__OpIT (_f, _i, _t) t5 _f; t4 _i; t7 _t; { #line 531 "Emit.m3" { { CHECKSTACKOVERFLOW; _Emit__fmt = _f; _Emit__x = 0 ; _Emit__I (_i); _Emit__TT (_t); _Emit__X (); } } }; #line 539 "Emit.m3" EXPORT t92 _Emit__OpX (_f, _t) t5 _f; t5 _t; { #line 539 "Emit.m3" { { CHECKSTACKOVERFLOW; _Emit__fmt = _f; _Emit__x = 0 ; _Emit__X (); if ((_Emit__cur._breakable)) { _Emit__SetLine (); (_Emit__cur._breakable) = 0 ; goto if_31_end; }; if_31_end: /**/; _UnsafeWr__FastPutText ((_Emit__cur._wr), _t); _Emit__X (); } } }; #line 548 "Emit.m3" EXPORT t92 _Emit__OpZ (_f, _ss) t5 _f; t6 * _ss; { #line 548 "Emit.m3" { { CHECKSTACKOVERFLOW; _Emit__fmt = _f; _Emit__x = 0 ; _Emit__SS (&(*_ss)); _Emit__X (); } } }; #line 555 "Emit.m3" EXPORT t92 _Emit__OpSZ (_f, _s, _ss) t5 _f; t9 _s; t6 * _ss; { #line 555 "Emit.m3" { { CHECKSTACKOVERFLOW; _Emit__fmt = _f; _Emit__x = 0 ; _Emit__S (_s); _Emit__SS (&(*_ss)); _Emit__X (); } } }; #line 563 "Emit.m3" EXPORT t92 _Emit__ZeroL (_size, _f, _v) t4 _size; t5 _f; t8 _v; { #line 563 "Emit.m3" { { CHECKSTACKOVERFLOW; _Emit__Zero (_size); _Emit__OpL (_f, _v); _Emit__Op (((ADDRESS)(& txt1.str))); } } }; #line 570 "Emit.m3" EXPORT t92 _Emit__ZeroT (_size, _f, _t) t4 _size; t5 _f; t7 _t; { #line 570 "Emit.m3" { { CHECKSTACKOVERFLOW; _Emit__Zero (_size); _Emit__OpT (_f, _t); _Emit__Op (((ADDRESS)(& txt1.str))); } } }; #line 577 "Emit.m3" EXPORT t92 _Emit__ZeroZ (_size, _f, _ss) t4 _size; t5 _f; t6 * _ss; { #line 577 "Emit.m3" { { CHECKSTACKOVERFLOW; _Emit__Zero (_size); _Emit__OpZ (_f, &(*_ss)); _Emit__Op (((ADDRESS)(& txt1.str))); } } }; #line 584 "Emit.m3" PRIVATE t92 _Emit__Zero (_size) t4 _size; { #line 584 "Emit.m3" { { CHECKSTACKOVERFLOW; switch (_size) { case 1: _Emit__Op (((ADDRESS)(& txt9.str))); break; case 2: _Emit__Op (((ADDRESS)(& txt10.str))); break; case 4: _Emit__Op (((ADDRESS)(& txt11.str))); break; case 8: _Emit__Op (((ADDRESS)(& txt12.str))); break; case 12: _Emit__Op (((ADDRESS)(& txt13.str))); break; case 16: _Emit__Op (((ADDRESS)(& txt14.str))); break; case 20: _Emit__Op (((ADDRESS)(& txt15.str))); break; case 24: _Emit__Op (((ADDRESS)(& txt16.str))); break; case 28: _Emit__Op (((ADDRESS)(& txt17.str))); break; case 32: _Emit__Op (((ADDRESS)(& txt18.str))); break; default: /**/; _Emit__OpI (((ADDRESS)(& txt19.str)), _size); }; } } }; #line 601 "Emit.m3" EXPORT t92 _Emit__Comment (_t) t5 _t; { t35 z2; t4 z3; t23 z1; t4 z6; t5 z7; t23 z4; t4 z8; t4 z5; #line 601 "Emit.m3" { auto t4 _i; auto t4 _j; auto t4 _len; { CHECKSTACKOVERFLOW; if ((_Emit__cur._breakable)) { _Emit__SetLine (); (_Emit__cur._breakable) = 0 ; goto if_32_end; }; if_32_end: /**/; _i = 0 ; z2 = _Text__Length (_t); _len = z2; z3 = _i + 70 ; z1 = (z3 < _len); if (z1) do { _UnsafeWr__FastPutText ((_Emit__cur._wr), ((ADDRESS)(& txt2.str))); z6 = _i; if (z6 < 0) RANGEFAULT; z7 = _Text__Sub (_t, z6, 60 ); _UnsafeWr__FastPutText ((_Emit__cur._wr), z7); _UnsafeWr__FastPutText ((_Emit__cur._wr), ((ADDRESS)(& txt3.str))); _i += 60 ; (_Emit__cur._line) += 1 ; (_Emit__cur._width) = 0 ; z3 = _i + 70 ; z1 = (z3 < _len); } while (z1); z4 = (_i < _len); if (z4) { _UnsafeWr__FastPutText ((_Emit__cur._wr), ((ADDRESS)(& txt2.str))); z6 = _i; if (z6 < 0) RANGEFAULT; z8 = _len - _i; z5 = z8; if (z5 < 0) RANGEFAULT; z7 = _Text__Sub (_t, z6, z5); _UnsafeWr__FastPutText ((_Emit__cur._wr), z7); z4 = (_len > 70 ); if (z4) { z3 = _len - _i; z5 = 60 - z3; _j = z5; z4 = (_j > 0 ); if (z4) do { _UnsafeWr__FastPutChar ((_Emit__cur._wr), ' ' ); _j -= 1 ; z4 = (_j > 0 ); } while (z4); #line 621 goto if_34_end; }; if_34_end: /**/; _UnsafeWr__FastPutText ((_Emit__cur._wr), ((ADDRESS)(& txt3.str))); (_Emit__cur._line) += 1 ; (_Emit__cur._width) = 0 ; goto if_33_end; }; if_33_end: /**/; } } }; #line 629 "Emit.m3" EXPORT t92 _Emit__Initialize () { #line 629 "Emit.m3" { { CHECKSTACKOVERFLOW; (_Emit__cur._wr) = _Host__output; (_Emit__cur._indent) = 0 ; (_Emit__cur._newline) = 1 ; (_Emit__cur._breakable) = 1 ; (_Emit__cur._flushLine) = 0 ; (_Emit__cur._file) = (t9) 0; (_Emit__cur._line) = 2 ; (_Emit__cur._width) = 0 ; _Emit__free = (t17) 0; _Emit__stack = (t17) 0; _Emit__Op (((ADDRESS)(& txt4.str))); _Wr__Flush (_Host__output); } } }; PRIVATE int init_done = -1; #line 642 "Emit.m3" PRIVATE void Emit__initProc (g) int g; { t19 z0; #line 642 "Emit.m3" if (init_done >= g) return; init_done = g; INITIALIZE (& Emit__init); INITIALIZE (& Word__init); INITIALIZE (& TextWr__init); #line 642 INITIALIZE (& Value__init); INITIALIZE (& Temp__init); INITIALIZE (& Scope__init); INITIALIZE (& Scanner__init); INITIALIZE (& Fmt__init); #line 642 INITIALIZE (& Text__init); INITIALIZE (& Host__init); INITIALIZE (& Variable__init); INITIALIZE (& UnsafeWr__init); INITIALIZE (& Wr__init); #line 642 INITIALIZE (& Expr__init); INITIALIZE (& String__init); #line 43 ZERO1 (& _Emit__fmt); ZERO1 (& _Emit__stack); ZERO1 (& _Emit__free); ZERO6 (& _Emit__cur); ZERO (10, & _Emit__digits); z0.elts[0] = '0' ; z0.elts[1] = '1' ; z0.elts[2] = '2' ; z0.elts[3] = '3' ; z0.elts[4] = '4' ; #line 47 z0.elts[5] = '5' ; z0.elts[6] = '6' ; z0.elts[7] = '7' ; z0.elts[8] = '8' ; z0.elts[9] = '9' ; _Emit__digits = z0; #line 642 return; }; #line 642 "Emit.m3" PRIVATE void t17_PrintProc (ref) t22* ref; { CHECKSTACKOVERFLOW; fprintf (stderr, "%s {", TC17->brand); fprintf (stderr, "^ = { "); #line 642 fprintf (stderr, "next = %#x", (*ref)._next); fprintf (stderr, "current = %d", (*ref)._current); fprintf (stderr, "streams = array"); #line 642 fprintf (stderr, "pending = %#x", (*ref)._pending); fprintf (stderr, "}"); fprintf (stderr, "}\n"); }; PRIVATE void t17_MapProc (p, r, c) #line 642 void (*p) (); register t22* r; ADDRESS c; { CHECKSTACKOVERFLOW; p (& ((*r)._next), r, c); { int i3; for (i3 = 0; i3 < 2; i3++) { #line 642 p (& ((*r)._streams.elts[i3]._wr), r, c); }; }; p (& ((*r)._pending), r, c); }; PRIVATE INITLINK me_0 ={(INITLINK*)NIL, 0, Emit__initProc}; static char* VSimports[] = { &VS_Word__And__479727d22e0cef9f, &VS_TextWr__T__aa7fbe4a3afd8be5, &VS_TextWr__New__b2aced2f341cea58, &VS_TextWr__ToText__07606fcd3a0c5476, &VS_Value__T__2446b70b3f7780a5, &VS_Temp__T__3a6c7dc12615e4ee, &VS_Temp__Free__3b952a2225c26846, &VS_Temp__Write__1a33b61039feaf76, &VS_Scope__T__3a6c7dc12615e4ee, &VS_Scope__ValueList__64bf053e22e4e53c, &VS_Scope__GenName__3946bbbf2f1d2ba2, &VS_Scanner__Here__1284254c3cfdbf9f, &VS_Fmt__Unsigned__30e640872bf48cfc, &VS_Fmt__LongReal__a75dda5e2a97d101, &VS_Fmt__Pad__b11d3472276e7bbc, &VS_Text__T__fc4b369f3ab271fd, &VS_Text__GetChar__0f4bd6e72493f4ff, &VS_Text__Length__661a58173d76f41c, &VS_Text__Sub__ba151c702fe1a06f, &VS_Text__PutStr__d073d76a395ab9cd, &VS_Host__output__f4abf81320b5b8f0, &VS_Host__Clines__d3bebdbe2144568f, &VS_Variable__T__be7ead4a3afd8be5, &VS_Variable__Load__05e07c0e3fca1344, &VS_Variable__LoadLValue__972aa6573932208a, &VS_Wr__Error__c367253d3ed4fd15, &VS_Wr__Failure__5f82cfb43dabf527, &VS_Thread__Alerted__fc88feb43485af46, &VS_UnsafeWr__FastPutChar__b1a53b0220cb969f, &VS_UnsafeWr__FastPutText__a6a617eb3f19afd1, &VS_UnsafeWr__FastPutString__3489317e38b7823c, &VS_UnsafeWr__FastPutInt__da9571263c7312f3, &VS_Thread__Alerted__fc88feb43485af46, &VS_Wr__T__2555b70b3f7780b1, &VS_Wr__Failure__5f82cfb43dabf527, &VS_Wr__Error__c367253d3ed4fd15, &VS_Wr__Flush__2d2c8ef127dcfe6f, &VS_Expr__T__2446b70b3f7780a5, &VS_Expr__List__3f87eceb2b9a246a, &VS_String__T__3a6c7dc12615e4ee, &VS_String__Put__2457561e210725b3, &VS_String__PutChars__3deea76a27eef07c, &VS_String__Length__75f8af7a37a956d2, &VS_Emit__Marker__88b0bcf838a5bd88, &VS_Emit__Indent__cd453c0f3b29292c, &VS_Emit__Outdent__5328bd4721005636, &VS_Emit__FlushLine__0e45465327b0fa27, &VS_Emit__MaxStream__cf0a0e8934c9c9f3, &VS_Emit__Format__bc4a2b083b93bbd7, NIL }; void Emit__MLink (phase) int phase; { switch (phase) { case 0: { me_0.link = Emit__init; Emit__init = & me_0; t17_TC = t17_TC_init; REGISTERTYPE (TC17); break; }; case 1: { break; }; case 2: { break; }; }; };