N_NIMCALL(NI64, HEX7CabsHEX7C_256041)(NI64 a) { NI64 result; result = 0; { if (!!((a == (IL64(-9223372036854775807) - IL64(1))))) goto LA3; { if (!(IL64(0) <= a)) goto LA7; result = a; } goto LA5; LA7: ; { result = -(a); } LA5: ; } goto LA1; LA3: ; { result = (IL64(-9223372036854775807) - IL64(1)); } LA1: ; return result; }
static N_INLINE(NI, divInt)(NI a, NI b) { NI result; result = 0; { if (!(b == 0)) goto LA3; raiseDivByZero(); } LA3: ; { NIM_BOOL LOC7; LOC7 = 0; LOC7 = (a == (IL64(-9223372036854775807) - IL64(1))); if (!(LOC7)) goto LA8; LOC7 = (b == -1); LA8: ; if (!LOC7) goto LA9; raiseOverflow(); } LA9: ; result = (NI64)(a / b); goto BeforeRet; BeforeRet: ; return result; }
N_NIMCALL(NI64, HEX7CabsHEX7C_7goHQbEFKco1IgR9aUHGQ3g)(NI64 a0) { NI64 result0; result0 = (NI64)0; { if (!!((a0 == (IL64(-9223372036854775807) - IL64(1))))) goto LA3; { if (!(IL64(0) <= a0)) goto LA7; result0 = a0; } goto LA5; LA7: ; { result0 = -(a0); } LA5: ; } goto LA1; LA3: ; { result0 = (IL64(-9223372036854775807) - IL64(1)); } LA1: ; return result0; }
N_NIMCALL(NI64, HEX7CmodHEX7C_ob65GDP1gLUz8UD9bFXYfng_5)(NI64 a0, NI64 b0) { NI64 result0; result0 = (NI64)0; { if (!(b0 == IL64(0))) goto LA3; result0 = a0; } goto LA1; LA3: ; { result0 = (NI64)(a0 % b0); } LA1: ; return result0; }
N_NIMCALL(NimStringDesc*, getcurrentline_178052)(Tbaselexer178024* L, NIM_BOOL marker) { NimStringDesc* result; NI i; nimfr("getCurrentLine", "nimlexbase.nim") result = 0; nimln(162, "nimlexbase.nim"); result = copyString(((NimStringDesc*) &TMP2156)); nimln(163, "nimlexbase.nim"); i = (*L).linestart; { nimln(164, "nimlexbase.nim"); while (1) { NI TMP2157; if (!!((((NU8)((*L).buf[i])) == ((NU8)(13)) || ((NU8)((*L).buf[i])) == ((NU8)(10)) || ((NU8)((*L).buf[i])) == ((NU8)(0))))) goto LA2; nimln(165, "nimlexbase.nim"); result = addChar(result, (*L).buf[i]); nimln(166, "nimlexbase.nim"); TMP2157 = addInt(i, ((NI) 1)); i = (NI)(TMP2157); } LA2: ; } nimln(167, "nimlexbase.nim"); result = resizeString(result, 1); appendString(result, ((NimStringDesc*) &TMP2158)); nimln(168, "nimlexbase.nim"); { NimStringDesc* LOC7; NI LOC8; NimStringDesc* LOC9; if (!marker) goto LA5; nimln(169, "nimlexbase.nim"); LOC7 = 0; LOC8 = 0; LOC8 = getcolnumber_178059(L, (*L).bufpos); LOC9 = 0; LOC9 = nsuRepeatChar(32, ((NI)chckRange(LOC8, ((NI) 0), ((NI) IL64(9223372036854775807))))); LOC7 = rawNewString(LOC9->Sup.len + 2); appendString(LOC7, LOC9); appendString(LOC7, ((NimStringDesc*) &TMP2159)); result = resizeString(result, LOC7->Sup.len + 0); appendString(result, LOC7); } LA5: ; popFrame(); return result; }
N_NIMCALL(void, Commandinteractive_191616)(void) { TY105006 LOC1; TY105006 LOC2; TY105006 LOC3; TY105006 LOC4; NimStringDesc* LOC5; NimStringDesc* LOC6; TY55548* LOC7; TY55548* M_191630; TY75204* LOC8; Gerrormax_47568 = IL64(9223372036854775807); Gglobaloptions_46079 |=(1<<((NI32)(((NU8) 8))%(sizeof(NI32)*8))); Settarget_51582(((NU8) 21), ((NU8) 13)); Initdefines_64049(); LOC1 = Verbosepass_186033(); Registerpass_105028(&LOC1); LOC2 = Sempass_126001(); Registerpass_105028(&LOC2); LOC3 = Transfpass_188005(); Registerpass_105028(&LOC3); LOC4 = Evalpass_115046(); Registerpass_105028(&LOC4); LOC5 = 0; LOC5 = nosaddFileExt(((NimStringDesc*) &TMP196861), ((NimStringDesc*) &TMP195865)); LOC6 = 0; LOC6 = nosJoinPath(Libpath_46112, LOC5); LOC7 = 0; LOC7 = Compilemodule_191320(LOC6, NIM_FALSE, NIM_TRUE); M_191630 = 0; M_191630 = Newmodule_191287(((NimStringDesc*) &TMP197500)); (*M_191630).Sup.Id = Getid_55694(); (*M_191630).Flags |=(1<<((NI32)(((NU8) 15))%(sizeof(NI32)*8))); LOC8 = 0; LOC8 = Llstreamopenstdin_75230(); Processmodule_105035(M_191630, ((NimStringDesc*) &TMP197500), LOC8, NIM_NIL); }
N_NIMCALL(NI64, HEX7CabsHEX7C_264035)(NI64 a) { NI64 result; nimfr("|abs|", "saturate.nim") result = 0; nimln(32, "saturate.nim"); { nimln(32, "saturate.nim"); nimln(32, "saturate.nim"); if (!!((a == (IL64(-9223372036854775807) - IL64(1))))) goto LA3; nimln(33, "saturate.nim"); { nimln(33, "saturate.nim"); if (!(0 <= a)) goto LA7; nimln(33, "saturate.nim"); result = a; } goto LA5; LA7: ; { nimln(34, "saturate.nim"); nimln(34, "saturate.nim"); if (a == (IL64(-9223372036854775807) - IL64(1))) raiseOverflow(); result = -(a); } LA5: ; } goto LA1; LA3: ; { nimln(36, "saturate.nim"); result = (IL64(-9223372036854775807) - IL64(1)); } LA1: ; popFrame(); return result; }
N_NIMCALL(void, setintlittype_238778)(Tnode191813* result) { NI64 i; i = (*result).kindU.S1.intval; switch (intsize_159623) { case ((NI) 8): { asgnRefNoCycle((void**) (&(*result).typ), getintlittype_238660(result)); } break; case ((NI) 4): { { NIM_BOOL LOC5; LOC5 = 0; LOC5 = (IL64(-2147483648) <= i); if (!(LOC5)) goto LA6; LOC5 = (i <= IL64(2147483647)); LA6: ; if (!LOC5) goto LA7; asgnRefNoCycle((void**) (&(*result).typ), getintlittype_238660(result)); } goto LA3; LA7: ; { asgnRefNoCycle((void**) (&(*result).typ), getsystype_238030(((NU8) 35))); } LA3: ; } break; case ((NI) 2): { { NIM_BOOL LOC13; LOC13 = 0; LOC13 = (IL64(-32768) <= i); if (!(LOC13)) goto LA14; LOC13 = (i <= IL64(32767)); LA14: ; if (!LOC13) goto LA15; asgnRefNoCycle((void**) (&(*result).typ), getintlittype_238660(result)); } goto LA11; LA15: ; { NIM_BOOL LOC18; LOC18 = 0; LOC18 = (IL64(-2147483648) <= i); if (!(LOC18)) goto LA19; LOC18 = (i <= IL64(2147483647)); LA19: ; if (!LOC18) goto LA20; asgnRefNoCycle((void**) (&(*result).typ), getsystype_238030(((NU8) 34))); } goto LA11; LA20: ; { asgnRefNoCycle((void**) (&(*result).typ), getsystype_238030(((NU8) 35))); } LA11: ; } break; case ((NI) 1): { { NIM_BOOL LOC26; LOC26 = 0; LOC26 = (IL64(-128) <= i); if (!(LOC26)) goto LA27; LOC26 = (i <= IL64(127)); LA27: ; if (!LOC26) goto LA28; asgnRefNoCycle((void**) (&(*result).typ), getintlittype_238660(result)); } goto LA24; LA28: ; { NIM_BOOL LOC31; LOC31 = 0; LOC31 = (IL64(-32768) <= i); if (!(LOC31)) goto LA32; LOC31 = (i <= IL64(32767)); LA32: ; if (!LOC31) goto LA33; asgnRefNoCycle((void**) (&(*result).typ), getsystype_238030(((NU8) 33))); } goto LA24; LA33: ; { NIM_BOOL LOC36; LOC36 = 0; LOC36 = (IL64(-2147483648) <= i); if (!(LOC36)) goto LA37; LOC36 = (i <= IL64(2147483647)); LA37: ; if (!LOC36) goto LA38; asgnRefNoCycle((void**) (&(*result).typ), getsystype_238030(((NU8) 34))); } goto LA24; LA38: ; { asgnRefNoCycle((void**) (&(*result).typ), getsystype_238030(((NU8) 35))); } LA24: ; } break; default: { internalerror_165215((*result).info, ((NimStringDesc*) &TMP3390)); } break; } }
N_NIMCALL(NI32, Wintimetounixtime_29261)(NI64 T_29263) { NI32 Result_29264; Result_29264 = 0; Result_29264 = ((NI32) ((NI64)((NI64)(T_29263 - IL64(116444736000000000)) / 10000000))); return Result_29264; }
N_NIMCALL(NI, hashtree_223018)(tnode171659* n) { NI result; nimfr("hashTree", "treetab.nim") result = 0; nimln(16, "treetab.nim"); { nimln(16, "treetab.nim"); if (!(n == NIM_NIL)) goto LA3; nimln(16, "treetab.nim"); goto BeforeRet; } LA3: ; nimln(17, "treetab.nim"); nimln(17, "treetab.nim"); result = ((NI) ((*n).Kind)); nimln(18, "treetab.nim"); switch ((*n).Kind) { case ((NU8) 1): case ((NU8) 23): case ((NU8) 4): { } break; case ((NU8) 2): { nimln(22, "treetab.nim"); if (!(((TMP3138[(*n).Kind/8] &(1<<((*n).Kind%8)))!=0))) raiseFieldError(((NimStringDesc*) &TMP3139)); result = HEX21HEX26_110013(result, (*(*n).kindU.S5.Ident).H); } break; case ((NU8) 3): { nimln(24, "treetab.nim"); if (!(((TMP3140[(*n).Kind/8] &(1<<((*n).Kind%8)))!=0))) raiseFieldError(((NimStringDesc*) &TMP3141)); result = HEX21HEX26_110013(result, (*(*(*n).kindU.S4.Sym).Name).H); } break; case ((NU8) 5) ... ((NU8) 15): { nimln(26, "treetab.nim"); { NIM_BOOL LOC11; nimln(26, "treetab.nim"); LOC11 = 0; nimln(702, "system.nim"); if (!(((TMP3142[(*n).Kind/8] &(1<<((*n).Kind%8)))!=0))) raiseFieldError(((NimStringDesc*) &TMP3143)); LOC11 = ((IL64(-9223372036854775807) - IL64(1)) <= (*n).kindU.S1.Intval); if (!(LOC11)) goto LA12; nimln(26, "treetab.nim"); if (!(((TMP3142[(*n).Kind/8] &(1<<((*n).Kind%8)))!=0))) raiseFieldError(((NimStringDesc*) &TMP3143)); LOC11 = ((*n).kindU.S1.Intval <= IL64(9223372036854775807)); LA12: ; if (!LOC11) goto LA13; nimln(27, "treetab.nim"); if (!(((TMP3142[(*n).Kind/8] &(1<<((*n).Kind%8)))!=0))) raiseFieldError(((NimStringDesc*) &TMP3143)); result = HEX21HEX26_110013(result, ((NI) ((*n).kindU.S1.Intval))); } LA13: ; } break; case ((NU8) 16) ... ((NU8) 18): { nimln(29, "treetab.nim"); { NIM_BOOL LOC18; nimln(29, "treetab.nim"); LOC18 = 0; nimln(702, "system.nim"); if (!(((TMP3144[(*n).Kind/8] &(1<<((*n).Kind%8)))!=0))) raiseFieldError(((NimStringDesc*) &TMP3145)); LOC18 = (-1.0000000000000000e+06 <= (*n).kindU.S2.Floatval); if (!(LOC18)) goto LA19; nimln(29, "treetab.nim"); if (!(((TMP3144[(*n).Kind/8] &(1<<((*n).Kind%8)))!=0))) raiseFieldError(((NimStringDesc*) &TMP3145)); LOC18 = ((*n).kindU.S2.Floatval <= 1.0000000000000000e+06); LA19: ; if (!LOC18) goto LA20; nimln(30, "treetab.nim"); nimln(30, "treetab.nim"); if (!(((TMP3144[(*n).Kind/8] &(1<<((*n).Kind%8)))!=0))) raiseFieldError(((NimStringDesc*) &TMP3145)); result = HEX21HEX26_110013(result, float64ToInt32((*n).kindU.S2.Floatval)); } LA20: ; } break; case ((NU8) 20) ... ((NU8) 22): { NI LOC23; nimln(32, "treetab.nim"); nimln(32, "treetab.nim"); if (!(((TMP3146[(*n).Kind/8] &(1<<((*n).Kind%8)))!=0))) raiseFieldError(((NimStringDesc*) &TMP3147)); LOC23 = 0; LOC23 = hash_110826((*n).kindU.S3.Strval); result = HEX21HEX26_110013(result, LOC23); } break; default: { NI i_223157; NI HEX3Atmp_223174; NI LOC25; NI TMP3150; NI res_223176; i_223157 = 0; HEX3Atmp_223174 = 0; nimln(34, "treetab.nim"); nimln(34, "treetab.nim"); nimln(34, "treetab.nim"); LOC25 = 0; LOC25 = sonslen_172022(n); TMP3150 = subInt(LOC25, 1); HEX3Atmp_223174 = (NI64)(TMP3150); nimln(1301, "system.nim"); res_223176 = 0; nimln(1302, "system.nim"); while (1) { NI LOC27; nimln(1302, "system.nim"); if (!(res_223176 <= HEX3Atmp_223174)) goto LA26; nimln(1301, "system.nim"); i_223157 = res_223176; nimln(35, "treetab.nim"); nimln(35, "treetab.nim"); if (((TMP3148[(*n).Kind/8] &(1<<((*n).Kind%8)))!=0)) raiseFieldError(((NimStringDesc*) &TMP3149)); if ((NU)(i_223157) >= (NU)((*n).kindU.S6.Sons->Sup.len)) raiseIndexError(); LOC27 = 0; LOC27 = hashtree_223018((*n).kindU.S6.Sons->data[i_223157]); result = HEX21HEX26_110013(result, LOC27); nimln(1304, "system.nim"); res_223176 = addInt(res_223176, 1); } LA26: ; } break; } BeforeRet: ; popFrame(); return result; }
N_NIMCALL(void, fillbuffer_178097)(Tbaselexer178024* L) { NI charsread; NI tocopy; NI s; NI oldbuflen; NI TMP2122; NI TMP2123; NI TMP2127; NI TMP2128; NI LOC13; NI TMP2129; NI TMP2130; nimfr("fillBuffer", "nimlexbase.nim") charsread = 0; tocopy = 0; s = 0; oldbuflen = 0; nimln(82, "nimlexbase.nim"); { if (!!(((*L).sentinel < (*L).buflen))) goto LA3; failedassertimpl_87017(((NimStringDesc*) &TMP2121)); } LA3: ; nimln(83, "nimlexbase.nim"); TMP2122 = subInt((*L).buflen, (*L).sentinel); TMP2123 = subInt((NI)(TMP2122), ((NI) 1)); tocopy = (NI)(TMP2123); nimln(84, "nimlexbase.nim"); { if (!!((((NI) 0) <= tocopy))) goto LA7; failedassertimpl_87017(((NimStringDesc*) &TMP2124)); } LA7: ; nimln(85, "nimlexbase.nim"); { NI TMP2125; NI TMP2126; if (!(((NI) 0) < tocopy)) goto LA11; nimln(86, "nimlexbase.nim"); TMP2125 = addInt((*L).sentinel, ((NI) 1)); TMP2126 = mulInt(tocopy, ((NI) 1)); memmove(((void*) ((*L).buf)), ((void*) ((&(*L).buf[(NI)(TMP2125)]))), ((NI)chckRange((NI)(TMP2126), ((NI) 0), ((NI) IL64(9223372036854775807))))); } LA11: ; nimln(88, "nimlexbase.nim"); nimln(89, "nimlexbase.nim"); nimln(88, "nimlexbase.nim"); nimln(89, "nimlexbase.nim"); TMP2127 = addInt((*L).sentinel, ((NI) 1)); TMP2128 = mulInt((NI)(TMP2127), ((NI) 1)); LOC13 = 0; LOC13 = llstreamread_177584((*L).stream, ((void*) ((&(*L).buf[tocopy]))), (NI)(TMP2128)); TMP2129 = divInt(LOC13, ((NI) 1)); charsread = (NI)(TMP2129); nimln(90, "nimlexbase.nim"); TMP2130 = addInt(tocopy, charsread); s = (NI)(TMP2130); nimln(91, "nimlexbase.nim"); { NI TMP2131; TMP2131 = addInt((*L).sentinel, ((NI) 1)); if (!(charsread < (NI)(TMP2131))) goto LA16; nimln(92, "nimlexbase.nim"); (*L).buf[s] = 0; nimln(93, "nimlexbase.nim"); (*L).sentinel = s; } goto LA14; LA16: ; { NI TMP2132; nimln(96, "nimlexbase.nim"); TMP2132 = subInt(s, ((NI) 1)); s = (NI)(TMP2132); { nimln(97, "nimlexbase.nim"); while (1) { nimln(98, "nimlexbase.nim"); { if (!!((s < (*L).buflen))) goto LA23; failedassertimpl_87017(((NimStringDesc*) &TMP2133)); } LA23: ; { nimln(99, "nimlexbase.nim"); while (1) { NIM_BOOL LOC27; NI TMP2134; LOC27 = 0; LOC27 = (((NI) 0) <= s); if (!(LOC27)) goto LA28; LOC27 = !((((NU8)((*L).buf[s])) == ((NU8)(13)) || ((NU8)((*L).buf[s])) == ((NU8)(10)))); LA28: ; if (!LOC27) goto LA26; TMP2134 = subInt(s, ((NI) 1)); s = (NI)(TMP2134); } LA26: ; } nimln(100, "nimlexbase.nim"); { if (!(((NI) 0) <= s)) goto LA31; nimln(102, "nimlexbase.nim"); (*L).sentinel = s; nimln(103, "nimlexbase.nim"); goto LA19; } goto LA29; LA31: ; { NI TMP2135; NI TMP2136; void* LOC34; NI TMP2139; NI LOC39; NI TMP2140; NI TMP2143; nimln(107, "nimlexbase.nim"); oldbuflen = (*L).buflen; nimln(108, "nimlexbase.nim"); TMP2135 = mulInt((*L).buflen, ((NI) 2)); (*L).buflen = (NI)(TMP2135); nimln(109, "nimlexbase.nim"); TMP2136 = mulInt((*L).buflen, ((NI) 1)); LOC34 = 0; LOC34 = realloc_6033(((void*) ((*L).buf)), ((NI)chckRange((NI)(TMP2136), ((NI) 0), ((NI) IL64(9223372036854775807))))); (*L).buf = ((NCSTRING) (LOC34)); nimln(110, "nimlexbase.nim"); { NI TMP2137; TMP2137 = subInt((*L).buflen, oldbuflen); if (!!(((NI)(TMP2137) == oldbuflen))) goto LA37; failedassertimpl_87017(((NimStringDesc*) &TMP2138)); } LA37: ; nimln(111, "nimlexbase.nim"); nimln(112, "nimlexbase.nim"); nimln(111, "nimlexbase.nim"); nimln(112, "nimlexbase.nim"); TMP2139 = mulInt(oldbuflen, ((NI) 1)); LOC39 = 0; LOC39 = llstreamread_177584((*L).stream, ((void*) ((&(*L).buf[oldbuflen]))), (NI)(TMP2139)); TMP2140 = divInt(LOC39, ((NI) 1)); charsread = (NI)(TMP2140); nimln(113, "nimlexbase.nim"); { NI TMP2141; NI TMP2142; if (!(charsread < oldbuflen)) goto LA42; nimln(114, "nimlexbase.nim"); TMP2141 = addInt(oldbuflen, charsread); (*L).buf[(NI)(TMP2141)] = 0; nimln(115, "nimlexbase.nim"); TMP2142 = addInt(oldbuflen, charsread); (*L).sentinel = (NI)(TMP2142); nimln(116, "nimlexbase.nim"); goto LA19; } LA42: ; nimln(117, "nimlexbase.nim"); TMP2143 = subInt((*L).buflen, ((NI) 1)); s = (NI)(TMP2143); } LA29: ; } } LA19: ; } LA14: ; popFrame(); }
N_NIMCALL(Tnode191813*, totreeset_240353)(Tbitset239012* s, Ttype191849* settype, Tlineinfo163338 info) { Tnode191813* result; NI64 a; NI64 b; NI64 e; NI64 first; Ttype191849* elemtype; Tnode191813* n; result = 0; a = 0; b = 0; e = 0; first = 0; elemtype = 0; n = 0; elemtype = (*settype).sons->data[((NI) 0)]; first = firstord_221004(elemtype); result = newnodei_193351(((NU8) 39), info); asgnRefNoCycle((void**) (&(*result).typ), settype); (*result).info = info; e = IL64(0); { while (1) { if (!(e < ((NI64) ((NI)((s ? s->Sup.len : 0) * ((NI) 8)))))) goto LA2; { NIM_BOOL LOC5; LOC5 = 0; LOC5 = bitsetin_239077(s, e); if (!LOC5) goto LA6; a = e; b = e; { while (1) { b += ((NI) 1); { NIM_BOOL LOC12; NIM_BOOL LOC14; LOC12 = 0; LOC12 = (((NI64) ((NI)((s ? s->Sup.len : 0) * ((NI) 8)))) <= b); if (LOC12) goto LA13; LOC14 = 0; LOC14 = bitsetin_239077(s, b); LOC12 = !(LOC14); LA13: ; if (!LOC12) goto LA15; goto LA8; } LA15: ; } } LA8: ; b -= ((NI) 1); { Tnode191813* LOC21; if (!(a == b)) goto LA19; LOC21 = 0; LOC21 = newinttypenode_192620(((NU8) 6), (NI64)(a + first), elemtype); addson_193819(result, LOC21); } goto LA17; LA19: ; { Tnode191813* LOC23; Tnode191813* LOC24; n = newnodei_193351(((NU8) 44), info); asgnRefNoCycle((void**) (&(*n).typ), elemtype); LOC23 = 0; LOC23 = newinttypenode_192620(((NU8) 6), (NI64)(a + first), elemtype); addson_193819(n, LOC23); LOC24 = 0; LOC24 = newinttypenode_192620(((NU8) 6), (NI64)(b + first), elemtype); addson_193819(n, LOC24); addson_193819(result, n); } LA17: ; e = b; } LA6: ; e += ((NI) 1); } LA2: ; } return result; }
N_NIMCALL(void, annotatetype_420194)(tnode191813* n, ttype191847* t) { ttype191847* x; nimfr("annotateType", "semmacrosanity.nim") nimln(37, "semmacrosanity.nim"); x = skiptypes_195793(t, IL64(211106232576256)); nimln(40, "semmacrosanity.nim"); switch ((*n).Kind) { case ((NU8) 37): { nimln(42, "semmacrosanity.nim"); { NI i_420229; NI HEX3Atmp_420404; NI LOC6; NI res_420406; nimln(42, "semmacrosanity.nim"); if (!((*x).Kind == ((NU8) 17))) goto LA4; nimln(43, "semmacrosanity.nim"); asgnRefNoCycle((void**) &(*n).Typ, t); i_420229 = 0; HEX3Atmp_420404 = 0; nimln(44, "semmacrosanity.nim"); nimln(44, "semmacrosanity.nim"); nimln(44, "semmacrosanity.nim"); LOC6 = 0; LOC6 = len_192274(n); HEX3Atmp_420404 = subInt(LOC6, 1); nimln(1458, "system.nim"); res_420406 = 0; nimln(1459, "system.nim"); while (1) { tsym191843* field; nimln(1459, "system.nim"); if (!(res_420406 <= HEX3Atmp_420404)) goto LA7; nimln(1458, "system.nim"); i_420229 = res_420406; nimln(45, "semmacrosanity.nim"); field = ithfield_420007((*x).N, i_420229); nimln(46, "semmacrosanity.nim"); { NimStringDesc* LOC12; NimStringDesc* LOC13; nimln(46, "semmacrosanity.nim"); if (!field == 0) goto LA10; nimln(46, "semmacrosanity.nim"); nimln(46, "semmacrosanity.nim"); LOC12 = 0; nimln(46, "semmacrosanity.nim"); LOC13 = 0; LOC13 = nimIntToStr(i_420229); LOC12 = rawNewString(LOC13->Sup.len + 23); appendString(LOC12, ((NimStringDesc*) &TMP5691)); appendString(LOC12, LOC13); globalerror_168565((*n).Info, LOC12); } goto LA8; LA10: ; { nimln(47, "semmacrosanity.nim"); if (((TMP5679[(*n).Kind/8] &(1<<((*n).Kind%8)))!=0)) raiseFieldError(((NimStringDesc*) &TMP5680)); if ((NU)(i_420229) >= (NU)((*n).kindU.S6.Sons->Sup.len)) raiseIndexError(); annotatetype_420194((*n).kindU.S6.Sons->data[i_420229], (*field).Typ); } LA8: ; nimln(1461, "system.nim"); res_420406 = addInt(res_420406, 1); } LA7: ; } goto LA2; LA4: ; { NI i_420286; NI HEX3Atmp_420408; NI LOC18; NI res_420410; nimln(48, "semmacrosanity.nim"); if (!((*x).Kind == ((NU8) 18))) goto LA16; nimln(49, "semmacrosanity.nim"); asgnRefNoCycle((void**) &(*n).Typ, t); i_420286 = 0; HEX3Atmp_420408 = 0; nimln(50, "semmacrosanity.nim"); nimln(50, "semmacrosanity.nim"); nimln(50, "semmacrosanity.nim"); LOC18 = 0; LOC18 = len_192274(n); HEX3Atmp_420408 = subInt(LOC18, 1); nimln(1458, "system.nim"); res_420410 = 0; nimln(1459, "system.nim"); while (1) { nimln(1459, "system.nim"); if (!(res_420410 <= HEX3Atmp_420408)) goto LA19; nimln(1458, "system.nim"); i_420286 = res_420410; nimln(51, "semmacrosanity.nim"); { NI LOC22; NimStringDesc* LOC25; NimStringDesc* LOC26; nimln(51, "semmacrosanity.nim"); nimln(51, "semmacrosanity.nim"); LOC22 = 0; LOC22 = len_195569(x); if (!(LOC22 <= i_420286)) goto LA23; nimln(51, "semmacrosanity.nim"); nimln(51, "semmacrosanity.nim"); LOC25 = 0; nimln(51, "semmacrosanity.nim"); LOC26 = 0; LOC26 = nimIntToStr(i_420286); LOC25 = rawNewString(LOC26->Sup.len + 23); appendString(LOC25, ((NimStringDesc*) &TMP5691)); appendString(LOC25, LOC26); globalerror_168565((*n).Info, LOC25); } goto LA20; LA23: ; { nimln(52, "semmacrosanity.nim"); if (((TMP5679[(*n).Kind/8] &(1<<((*n).Kind%8)))!=0)) raiseFieldError(((NimStringDesc*) &TMP5680)); if ((NU)(i_420286) >= (NU)((*n).kindU.S6.Sons->Sup.len)) raiseIndexError(); if ((NU)(i_420286) >= (NU)((*x).Sons->Sup.len)) raiseIndexError(); annotatetype_420194((*n).kindU.S6.Sons->data[i_420286], (*x).Sons->data[i_420286]); } LA20: ; nimln(1461, "system.nim"); res_420410 = addInt(res_420410, 1); } LA19: ; } goto LA2; LA16: ; { NIM_BOOL LOC29; nimln(53, "semmacrosanity.nim"); LOC29 = 0; nimln(53, "semmacrosanity.nim"); LOC29 = ((*x).Kind == ((NU8) 25)); if (!(LOC29)) goto LA30; nimln(53, "semmacrosanity.nim"); LOC29 = ((*x).Callconv == ((NU8) 8)); LA30: ; if (!LOC29) goto LA31; nimln(54, "semmacrosanity.nim"); asgnRefNoCycle((void**) &(*n).Typ, t); } goto LA2; LA31: ; { nimln(56, "semmacrosanity.nim"); globalerror_168565((*n).Info, ((NimStringDesc*) &TMP5692)); } LA2: ; } break; case ((NU8) 41): { nimln(58, "semmacrosanity.nim"); { tnode191813* m_420333; NI i_420413; NI HEX3Atmp_420415; NI LOC39; NI res_420417; nimln(58, "semmacrosanity.nim"); if (!((*x).Kind == ((NU8) 4) || (*x).Kind == ((NU8) 16) || (*x).Kind == ((NU8) 24) || (*x).Kind == ((NU8) 27))) goto LA37; nimln(59, "semmacrosanity.nim"); asgnRefNoCycle((void**) &(*n).Typ, t); m_420333 = 0; i_420413 = 0; HEX3Atmp_420415 = 0; nimln(1521, "ast.nim"); nimln(1521, "ast.nim"); nimln(1521, "ast.nim"); LOC39 = 0; LOC39 = len_192274(n); HEX3Atmp_420415 = subInt(LOC39, 1); nimln(1458, "system.nim"); res_420417 = 0; nimln(1459, "system.nim"); while (1) { ttype191847* LOC41; nimln(1459, "system.nim"); if (!(res_420417 <= HEX3Atmp_420415)) goto LA40; nimln(1458, "system.nim"); i_420413 = res_420417; nimln(1521, "ast.nim"); if (((TMP5679[(*n).Kind/8] &(1<<((*n).Kind%8)))!=0)) raiseFieldError(((NimStringDesc*) &TMP5680)); if ((NU)(i_420413) >= (NU)((*n).kindU.S6.Sons->Sup.len)) raiseIndexError(); m_420333 = (*n).kindU.S6.Sons->data[i_420413]; nimln(60, "semmacrosanity.nim"); nimln(60, "semmacrosanity.nim"); LOC41 = 0; LOC41 = elemtype_227559(x); annotatetype_420194(m_420333, LOC41); nimln(1461, "system.nim"); res_420417 = addInt(res_420417, 1); } LA40: ; } goto LA35; LA37: ; { nimln(62, "semmacrosanity.nim"); globalerror_168565((*n).Info, ((NimStringDesc*) &TMP5693)); } LA35: ; } break; case ((NU8) 39): { nimln(64, "semmacrosanity.nim"); { tnode191813* m_420348; NI i_420419; NI HEX3Atmp_420421; NI LOC48; NI res_420423; nimln(64, "semmacrosanity.nim"); if (!((*x).Kind == ((NU8) 19))) goto LA46; nimln(65, "semmacrosanity.nim"); asgnRefNoCycle((void**) &(*n).Typ, t); m_420348 = 0; i_420419 = 0; HEX3Atmp_420421 = 0; nimln(1521, "ast.nim"); nimln(1521, "ast.nim"); nimln(1521, "ast.nim"); LOC48 = 0; LOC48 = len_192274(n); HEX3Atmp_420421 = subInt(LOC48, 1); nimln(1458, "system.nim"); res_420423 = 0; nimln(1459, "system.nim"); while (1) { ttype191847* LOC50; nimln(1459, "system.nim"); if (!(res_420423 <= HEX3Atmp_420421)) goto LA49; nimln(1458, "system.nim"); i_420419 = res_420423; nimln(1521, "ast.nim"); if (((TMP5679[(*n).Kind/8] &(1<<((*n).Kind%8)))!=0)) raiseFieldError(((NimStringDesc*) &TMP5680)); if ((NU)(i_420419) >= (NU)((*n).kindU.S6.Sons->Sup.len)) raiseIndexError(); m_420348 = (*n).kindU.S6.Sons->data[i_420419]; nimln(66, "semmacrosanity.nim"); nimln(66, "semmacrosanity.nim"); LOC50 = 0; LOC50 = elemtype_227559(x); annotatetype_420194(m_420348, LOC50); nimln(1461, "system.nim"); res_420423 = addInt(res_420423, 1); } LA49: ; } goto LA44; LA46: ; { nimln(68, "semmacrosanity.nim"); globalerror_168565((*n).Info, ((NimStringDesc*) &TMP5694)); } LA44: ; } break; case ((NU8) 16) ... ((NU8) 19): { nimln(70, "semmacrosanity.nim"); { nimln(70, "semmacrosanity.nim"); if (!((*x).Kind >= ((NU8) 36) && (*x).Kind <= ((NU8) 39))) goto LA55; nimln(71, "semmacrosanity.nim"); asgnRefNoCycle((void**) &(*n).Typ, t); } goto LA53; LA55: ; { nimln(73, "semmacrosanity.nim"); globalerror_168565((*n).Info, ((NimStringDesc*) &TMP5695)); } LA53: ; } break; case ((NU8) 5) ... ((NU8) 15): { nimln(75, "semmacrosanity.nim"); { nimln(75, "semmacrosanity.nim"); if (!((*x).Kind >= ((NU8) 31) && (*x).Kind <= ((NU8) 44) || (*x).Kind == ((NU8) 1) || (*x).Kind == ((NU8) 2) || (*x).Kind == ((NU8) 14))) goto LA61; nimln(76, "semmacrosanity.nim"); asgnRefNoCycle((void**) &(*n).Typ, t); } goto LA59; LA61: ; { nimln(78, "semmacrosanity.nim"); globalerror_168565((*n).Info, ((NimStringDesc*) &TMP5696)); } LA59: ; } break; case ((NU8) 20) ... ((NU8) 22): { nimln(80, "semmacrosanity.nim"); { nimln(80, "semmacrosanity.nim"); if (!((*x).Kind == ((NU8) 28) || (*x).Kind == ((NU8) 29))) goto LA67; nimln(81, "semmacrosanity.nim"); asgnRefNoCycle((void**) &(*n).Typ, t); } goto LA65; LA67: ; { nimln(83, "semmacrosanity.nim"); globalerror_168565((*n).Info, ((NimStringDesc*) &TMP5697)); } LA65: ; } break; case ((NU8) 23): { nimln(85, "semmacrosanity.nim"); { nimln(85, "semmacrosanity.nim"); if (!((*x).Kind == ((NU8) 26) || (*x).Kind == ((NU8) 29) || (*x).Kind == ((NU8) 22) || (*x).Kind == ((NU8) 21) || (*x).Kind == ((NU8) 24) || (*x).Kind == ((NU8) 25) || (*x).Kind == ((NU8) 28) || (*x).Kind == ((NU8) 50))) goto LA73; nimln(86, "semmacrosanity.nim"); asgnRefNoCycle((void**) &(*n).Typ, t); } goto LA71; LA73: ; { nimln(88, "semmacrosanity.nim"); globalerror_168565((*n).Info, ((NimStringDesc*) &TMP5698)); } LA71: ; } break; default: { } break; } popFrame(); }
N_NIMCALL(NI, rawparseint_93914)(NimStringDesc* s, NI64* b, NI start) { NI result; NI64 sign; NI i; nimfr("rawParseInt", "parseutils.nim") result = 0; nimln(194, "parseutils.nim"); sign = IL64(-1); nimln(195, "parseutils.nim"); i = start; nimln(196, "parseutils.nim"); { NI TMP274; if ((NU)(i) > (NU)(s->Sup.len)) raiseIndexError(); if (!((NU8)(s->data[i]) == (NU8)(43))) goto LA3; TMP274 = addInt(i, ((NI) 1)); i = (NI)(TMP274); } goto LA1; LA3: ; { NI TMP275; nimln(197, "parseutils.nim"); if ((NU)(i) > (NU)(s->Sup.len)) raiseIndexError(); if (!((NU8)(s->data[i]) == (NU8)(45))) goto LA6; nimln(198, "parseutils.nim"); TMP275 = addInt(i, ((NI) 1)); i = (NI)(TMP275); nimln(199, "parseutils.nim"); sign = IL64(1); } goto LA1; LA6: ; LA1: ; nimln(200, "parseutils.nim"); { NI64 TMP281; NI TMP282; if ((NU)(i) > (NU)(s->Sup.len)) raiseIndexError(); if (!(((NU8)(s->data[i])) >= ((NU8)(48)) && ((NU8)(s->data[i])) <= ((NU8)(57)))) goto LA10; nimln(201, "parseutils.nim"); (*b) = IL64(0); { nimln(202, "parseutils.nim"); while (1) { NI64 TMP276; NI TMP277; NI64 TMP278; NI TMP279; if ((NU)(i) > (NU)(s->Sup.len)) raiseIndexError(); if (!(((NU8)(s->data[i])) >= ((NU8)(48)) && ((NU8)(s->data[i])) <= ((NU8)(57)))) goto LA13; nimln(203, "parseutils.nim"); TMP276 = mulInt64((*b), IL64(10)); if ((NU)(i) > (NU)(s->Sup.len)) raiseIndexError(); TMP277 = subInt(((NI) (((NU8)(s->data[i])))), ((NI) 48)); TMP278 = subInt64((NI64)(TMP276), ((NI64) ((NI)(TMP277)))); (*b) = (NI64)(TMP278); nimln(204, "parseutils.nim"); TMP279 = addInt(i, ((NI) 1)); i = (NI)(TMP279); { nimln(205, "parseutils.nim"); while (1) { NI TMP280; if ((NU)(i) > (NU)(s->Sup.len)) raiseIndexError(); if (!((NU8)(s->data[i]) == (NU8)(95))) goto LA15; TMP280 = addInt(i, ((NI) 1)); i = (NI)(TMP280); } LA15: ; } } LA13: ; } nimln(206, "parseutils.nim"); TMP281 = mulInt64((*b), sign); (*b) = (NI64)(TMP281); nimln(207, "parseutils.nim"); TMP282 = subInt(i, start); result = (NI)(TMP282); } LA10: ; popFrame(); return result; }
N_NIMCALL(void, encodevbiggestintaux_178161)(NI64 x, NimStringDesc** result) { NIM_CHAR d_178167; NI64 v_178169; NI64 rem_178171; NI64 TMP2076; NI idx_178173; nimfr("encodeVBiggestIntAux", "rodutils.nim") d_178167 = 0; nimln(69, "rodutils.nim"); v_178169 = x; nimln(70, "rodutils.nim"); nimln(70, "rodutils.nim"); TMP2076 = modInt64(v_178169, 190); rem_178171 = (NI64)(TMP2076); nimln(71, "rodutils.nim"); { NI64 TMP2077; nimln(71, "rodutils.nim"); if (!(((NI) (rem_178171)) < 0)) goto LA3; nimln(72, "rodutils.nim"); (*result) = addChar((*result), 45); nimln(73, "rodutils.nim"); nimln(73, "rodutils.nim"); nimln(73, "rodutils.nim"); TMP2077 = divInt64(v_178169, 190); if ((NI64)(TMP2077) == (IL64(-9223372036854775807) - IL64(1))) raiseOverflow(); v_178169 = -((NI64)(TMP2077)); nimln(74, "rodutils.nim"); nimln(74, "rodutils.nim"); if (((NI64) (rem_178171)) == (IL64(-9223372036854775807) - IL64(1))) raiseOverflow(); rem_178171 = -(((NI64) (rem_178171))); } goto LA1; LA3: ; { NI64 TMP2078; nimln(76, "rodutils.nim"); nimln(76, "rodutils.nim"); TMP2078 = divInt64(v_178169, 190); v_178169 = (NI64)(TMP2078); } LA1: ; nimln(77, "rodutils.nim"); idx_178173 = ((NI) (rem_178171)); nimln(78, "rodutils.nim"); { nimln(78, "rodutils.nim"); if (!(idx_178173 < 62)) goto LA8; nimln(78, "rodutils.nim"); if ((NU)(idx_178173) > (NU)(((NimStringDesc*) &TMP2079)->Sup.len)) raiseIndexError(); d_178167 = ((NimStringDesc*) &TMP2079)->data[idx_178173]; } goto LA6; LA8: ; { NI TMP2080; NI TMP2081; nimln(79, "rodutils.nim"); nimln(79, "rodutils.nim"); nimln(79, "rodutils.nim"); nimln(79, "rodutils.nim"); TMP2080 = subInt(idx_178173, 62); TMP2081 = addInt((NI32)(TMP2080), 128); d_178167 = ((NIM_CHAR) (((NI)chckRange((NI32)(TMP2081), 0, 255)))); } LA6: ; nimln(80, "rodutils.nim"); { nimln(698, "system.nim"); nimln(698, "system.nim"); if (!!((v_178169 == 0))) goto LA13; nimln(80, "rodutils.nim"); encodevbiggestintaux_178161(v_178169, result); } LA13: ; nimln(81, "rodutils.nim"); (*result) = addChar((*result), d_178167); popFrame(); }
N_NIMCALL(NI64, hashstring_528100_2036603609)(NimStringDesc* s0) { NI64 result0; result0 = (NI64)0; { NI64 b0; if (!(Cpu_176496_4151366050[(targetcpu_176627_4151366050)- 1].Field4 == ((NI) 64))) goto LA3; b0 = IL64(0); { NI i_528116_2036603609; NI HEX3Atmp_528184_2036603609; NI res_528187_2036603609; i_528116_2036603609 = (NI)0; HEX3Atmp_528184_2036603609 = (NI)0; HEX3Atmp_528184_2036603609 = (NI)((s0 ? s0->Sup.len : 0) - ((NI) 1)); res_528187_2036603609 = ((NI) 0); { while (1) { if (!(res_528187_2036603609 <= HEX3Atmp_528184_2036603609)) goto LA7; i_528116_2036603609 = res_528187_2036603609; b0 = (NI64)((NU64)(b0) + (NU64)(((NI64) (((NU8)(s0->data[i_528116_2036603609])))))); b0 = (NI64)((NU64)(b0) + (NU64)((NI64)((NU64)(b0) << (NU64)(IL64(10))))); b0 = (NI64)(b0 ^ (NI64)((NU64)(b0) >> (NU64)(IL64(6)))); res_528187_2036603609 += ((NI) 1); } LA7: ; } } b0 = (NI64)((NU64)(b0) + (NU64)((NI64)((NU64)(b0) << (NU64)(IL64(3))))); b0 = (NI64)(b0 ^ (NI64)((NU64)(b0) >> (NU64)(IL64(11)))); b0 = (NI64)((NU64)(b0) + (NU64)((NI64)((NU64)(b0) << (NU64)(IL64(15))))); result0 = b0; } goto LA1; LA3: ; { NI32 a0; a0 = ((NI32) 0); { NI i_528137_2036603609; NI HEX3Atmp_528193_2036603609; NI res_528196_2036603609; i_528137_2036603609 = (NI)0; HEX3Atmp_528193_2036603609 = (NI)0; HEX3Atmp_528193_2036603609 = (NI)((s0 ? s0->Sup.len : 0) - ((NI) 1)); res_528196_2036603609 = ((NI) 0); { while (1) { if (!(res_528196_2036603609 <= HEX3Atmp_528193_2036603609)) goto LA11; i_528137_2036603609 = res_528196_2036603609; a0 = (NI32)((NU32)(a0) + (NU32)(((NI32) (((NU8)(s0->data[i_528137_2036603609])))))); a0 = (NI32)((NU32)(a0) + (NU32)((NI32)((NU32)(a0) << (NU32)(((NI32) 10))))); a0 = (NI32)(a0 ^ (NI32)((NU32)(a0) >> (NU32)(((NI32) 6)))); res_528196_2036603609 += ((NI) 1); } LA11: ; } } a0 = (NI32)((NU32)(a0) + (NU32)((NI32)((NU32)(a0) << (NU32)(((NI32) 3))))); a0 = (NI32)(a0 ^ (NI32)((NU32)(a0) >> (NU32)(((NI32) 11)))); a0 = (NI32)((NU32)(a0) + (NU32)((NI32)((NU32)(a0) << (NU32)(((NI32) 15))))); result0 = ((NI64) (a0)); } LA1: ; return result0; }
N_NIMCALL(void, bitsetinit_242021)(Tbitset242012** b, NI length) { nimfr("bitSetInit", "bitsets.nim") nimln(47, "bitsets.nim"); unsureAsgnRef((void**) (&(*b)), (Tbitset242012*) newSeq((&NTI242012), ((NI)chckRange(length, ((NI) 0), ((NI) IL64(9223372036854775807)))))); popFrame(); }
N_NIMCALL(void, encodevbiggestintaux_199198)(NI64 x, NimStringDesc** result) { NIM_CHAR d_199204; NI64 v_199206; NI64 rem_199208; NI64 TMP2110; NI idx_199210; nimfr("encodeVBiggestIntAux", "rodutils.nim") d_199204 = 0; nimln(69, "rodutils.nim"); v_199206 = x; nimln(70, "rodutils.nim"); nimln(70, "rodutils.nim"); TMP2110 = modInt64(v_199206, 190); rem_199208 = (NI64)(TMP2110); nimln(71, "rodutils.nim"); { NI64 TMP2111; nimln(71, "rodutils.nim"); if (!(((NI) (rem_199208)) < 0)) goto LA3; nimln(72, "rodutils.nim"); (*result) = addChar((*result), 45); nimln(73, "rodutils.nim"); nimln(73, "rodutils.nim"); nimln(73, "rodutils.nim"); TMP2111 = divInt64(v_199206, 190); if ((NI64)(TMP2111) == (IL64(-9223372036854775807) - IL64(1))) raiseOverflow(); v_199206 = -((NI64)(TMP2111)); nimln(74, "rodutils.nim"); nimln(74, "rodutils.nim"); if (((NI64) (rem_199208)) == (IL64(-9223372036854775807) - IL64(1))) raiseOverflow(); rem_199208 = -(((NI64) (rem_199208))); } goto LA1; LA3: ; { NI64 TMP2112; nimln(76, "rodutils.nim"); nimln(76, "rodutils.nim"); TMP2112 = divInt64(v_199206, 190); v_199206 = (NI64)(TMP2112); } LA1: ; nimln(77, "rodutils.nim"); idx_199210 = ((NI) (rem_199208)); nimln(78, "rodutils.nim"); { nimln(78, "rodutils.nim"); if (!(idx_199210 < 62)) goto LA8; nimln(78, "rodutils.nim"); if ((NU)(idx_199210) > (NU)(((NimStringDesc*) &TMP2113)->Sup.len)) raiseIndexError(); d_199204 = ((NimStringDesc*) &TMP2113)->data[idx_199210]; } goto LA6; LA8: ; { NI TMP2114; NI TMP2115; nimln(79, "rodutils.nim"); nimln(79, "rodutils.nim"); nimln(79, "rodutils.nim"); nimln(79, "rodutils.nim"); TMP2114 = subInt(idx_199210, 62); TMP2115 = addInt((NI32)(TMP2114), 128); d_199204 = ((NIM_CHAR) (((NI)chckRange((NI32)(TMP2115), 0, 255)))); } LA6: ; nimln(80, "rodutils.nim"); { nimln(80, "rodutils.nim"); nimln(80, "rodutils.nim"); if (!!((v_199206 == 0))) goto LA13; nimln(80, "rodutils.nim"); encodevbiggestintaux_199198(v_199206, result); } LA13: ; nimln(81, "rodutils.nim"); (*result) = addChar((*result), d_199204); popFrame(); }
N_NIMCALL(Tanalysisresult471003, ispartofaux_471007_788060399)(Ttype290840* a0, Ttype290840* b0, Intset266030* marker0) { Tanalysisresult471003 result0; { result0 = (Tanalysisresult471003)0; result0 = ((Tanalysisresult471003) 0); { NIM_BOOL LOC3; LOC3 = (NIM_BOOL)0; LOC3 = (a0 == NIM_NIL); if (LOC3) goto LA4; LOC3 = (b0 == NIM_NIL); LA4: ; if (!LOC3) goto LA5; goto BeforeRet; } LA5: ; { NIM_BOOL LOC9; LOC9 = (NIM_BOOL)0; LOC9 = containsorincl_266862_2627731572(marker0, (*a0).Sup.id); if (!LOC9) goto LA10; goto BeforeRet; } LA10: ; { NIM_BOOL LOC14; LOC14 = (NIM_BOOL)0; LOC14 = comparetypes_324214_3876443242(a0, b0, ((Tdistinctcompare322427) 1), 0); if (!LOC14) goto LA15; result0 = ((Tanalysisresult471003) 2); goto BeforeRet; } LA15: ; switch ((*a0).kind) { case ((Ttypekind290244) 17): { { Ttype290840* LOC22; if (!!(((*a0).sons->data[((NI) 0)] == NIM_NIL))) goto LA20; LOC22 = (Ttype290840*)0; LOC22 = skiptypes_294099_850551059((*a0).sons->data[((NI) 0)], IL64(211106247215360)); result0 = ispartofaux_471007_788060399(LOC22, b0, marker0); } LA20: ; { if (!(result0 == ((Tanalysisresult471003) 0))) goto LA25; result0 = ispartofaux_471013_788060399((*a0).n, b0, marker0); } LA25: ; } break; case ((Ttypekind290244) 11): case ((Ttypekind290244) 13): { Ttype290840* LOC28; LOC28 = (Ttype290840*)0; LOC28 = lastson_293377_850551059(a0); result0 = ispartofaux_471007_788060399(LOC28, b0, marker0); } break; case ((Ttypekind290244) 16): case ((Ttypekind290244) 4): case ((Ttypekind290244) 19): case ((Ttypekind290244) 18): { { NI i_471315_788060399; NI HEX3Atmp_471326_788060399; NI LOC31; NI res_471329_788060399; i_471315_788060399 = (NI)0; HEX3Atmp_471326_788060399 = (NI)0; LOC31 = (NI)0; LOC31 = sonslen_293327_850551059(a0); HEX3Atmp_471326_788060399 = (NI)(LOC31 - ((NI) 1)); res_471329_788060399 = ((NI) 0); { while (1) { if (!(res_471329_788060399 <= HEX3Atmp_471326_788060399)) goto LA33; i_471315_788060399 = res_471329_788060399; result0 = ispartofaux_471007_788060399((*a0).sons->data[i_471315_788060399], b0, marker0); { if (!(result0 == ((Tanalysisresult471003) 2))) goto LA36; goto BeforeRet; } LA36: ; res_471329_788060399 += ((NI) 1); } LA33: ; } } } break; default: { } break; } }BeforeRet: ; return result0; }
N_NIMCALL(NI, rawparseint_96114)(NimStringDesc* s, NI64* b, NI start) { NI result; NI64 sign; NI i; nimfr("rawParseInt", "parseutils.nim") result = 0; nimln(194, "parseutils.nim"); sign = IL64(-1); nimln(195, "parseutils.nim"); i = start; nimln(196, "parseutils.nim"); { NI TMP285; if ((NU)(i) > (NU)(s->Sup.len)) raiseIndexError(); if (!((NU8)(s->data[i]) == (NU8)(43))) goto LA3; TMP285 = addInt(i, ((NI) 1)); i = (NI)(TMP285); } goto LA1; LA3: ; { NI TMP286; nimln(197, "parseutils.nim"); if ((NU)(i) > (NU)(s->Sup.len)) raiseIndexError(); if (!((NU8)(s->data[i]) == (NU8)(45))) goto LA6; nimln(198, "parseutils.nim"); TMP286 = addInt(i, ((NI) 1)); i = (NI)(TMP286); nimln(199, "parseutils.nim"); sign = IL64(1); } goto LA1; LA6: ; LA1: ; nimln(200, "parseutils.nim"); { NI64 TMP292; NI TMP293; if ((NU)(i) > (NU)(s->Sup.len)) raiseIndexError(); if (!(((NU8)(s->data[i])) >= ((NU8)(48)) && ((NU8)(s->data[i])) <= ((NU8)(57)))) goto LA10; nimln(201, "parseutils.nim"); (*b) = IL64(0); { nimln(202, "parseutils.nim"); while (1) { NI64 TMP287; NI TMP288; NI64 TMP289; NI TMP290; if ((NU)(i) > (NU)(s->Sup.len)) raiseIndexError(); if (!(((NU8)(s->data[i])) >= ((NU8)(48)) && ((NU8)(s->data[i])) <= ((NU8)(57)))) goto LA13; nimln(203, "parseutils.nim"); TMP287 = mulInt64((*b), IL64(10)); if ((NU)(i) > (NU)(s->Sup.len)) raiseIndexError(); TMP288 = subInt(((NI) (((NU8)(s->data[i])))), ((NI) 48)); TMP289 = subInt64((NI64)(TMP287), ((NI64) ((NI)(TMP288)))); (*b) = (NI64)(TMP289); nimln(204, "parseutils.nim"); TMP290 = addInt(i, ((NI) 1)); i = (NI)(TMP290); { nimln(205, "parseutils.nim"); while (1) { NI TMP291; if ((NU)(i) > (NU)(s->Sup.len)) raiseIndexError(); if (!((NU8)(s->data[i]) == (NU8)(95))) goto LA15; TMP291 = addInt(i, ((NI) 1)); i = (NI)(TMP291); } LA15: ; } } LA13: ; } nimln(206, "parseutils.nim"); TMP292 = mulInt64((*b), sign); (*b) = (NI64)(TMP292); nimln(207, "parseutils.nim"); TMP293 = subInt(i, start); result = (NI)(TMP293); } LA10: ; popFrame(); return result; }
N_NIMCALL(Tnode293798*, semlocals_480005)(Tcontext344020* c, Tnode293798* n) { Tnode293798* result; NI counter; Ttype293836* tupletype; result = 0; counter = ((NI) 0); tupletype = newtypes_344192(((NU8) 18), c); result = newnodeit_295801(((NU8) 37), (*n).info, tupletype); asgnRefNoCycle((void**) (&(*tupletype).n), newnodei_295197(((NU8) 138), (*n).info)); { Tscope293824* scope_480012; Tscope293824* HEX3Atmp_480085; Tscope293824* current_480088; scope_480012 = 0; HEX3Atmp_480085 = 0; HEX3Atmp_480085 = (*c).currentscope; current_480088 = HEX3Atmp_480085; { while (1) { if (!!((current_480088 == NIM_NIL))) goto LA3; scope_480012 = current_480088; { if (!(scope_480012 == (*c).toplevelscope)) goto LA6; goto LA1; } LA6: ; { Tsym293830* it_480024; Tstrtable293802 HEX3Atmp_480079; Ttabiter300050 it_480082; Tsym293830* s_480084; it_480024 = 0; memset((void*)(&HEX3Atmp_480079), 0, sizeof(HEX3Atmp_480079)); HEX3Atmp_480079.counter = (*scope_480012).symbols.counter; HEX3Atmp_480079.data = (*scope_480012).symbols.data; memset((void*)(&it_480082), 0, sizeof(it_480082)); s_480084 = inittabiter_300052((&it_480082), HEX3Atmp_480079); { while (1) { if (!!((s_480084 == NIM_NIL))) goto LA10; it_480024 = s_480084; { NIM_BOOL LOC13; Ttype293836* LOC15; Tsym293830* field; Tsym293830* LOC18; Tnode293798* LOC19; Tnode293798* a; LOC13 = 0; LOC13 = ((1051400 &(1U<<((NU)((*it_480024).kind)&31U)))!=0); if (!(LOC13)) goto LA14; LOC15 = 0; LOC15 = skiptypes_297099((*it_480024).typ, 8390656); LOC13 = !(((IL64(576742227414352328) &((NU64)1<<((NU)((*LOC15).kind)&63U)))!=0)); LA14: ; if (!LOC13) goto LA16; LOC18 = 0; LOC18 = getcurrowner_344217(); field = newsym_294683(((NU8) 18), (*it_480024).name, LOC18, (*n).info); asgnRefNoCycle((void**) (&(*field).typ), skiptypes_297099((*it_480024).typ, 8390656)); (*field).position = counter; counter += ((NI) 1); LOC19 = 0; LOC19 = newsymnode_295183(field); addson_295807((*tupletype).n, LOC19); addsonskipintlit_338680(tupletype, (*field).typ); a = newsymnode_295190(it_480024, (*result).info); { Ttype293836* LOC22; LOC22 = 0; LOC22 = skiptypes_297099((*it_480024).typ, 2048); if (!((*LOC22).kind == ((NU8) 23))) goto LA23; a = newderef_433006(a); } LA23: ; add_294117(result, a); } LA16: ; s_480084 = nextiter_300057((&it_480082), HEX3Atmp_480079); } LA10: ; } } current_480088 = (*current_480088).parent; } LA3: ; } } LA1: ; return result; }
N_NIMCALL(void, bitsetincl_tznoRhsCn6M9csUzVp17S1w)(TY_pxbIse2JUQkJU0n9blV9bY5g** x0, NI64 elem0) { (*x0)->data[(NI64)(elem0 / IL64(8))] = (NI8)((*x0)->data[(NI64)(elem0 / IL64(8))] | ((NI8)(NU8)(NU)((NI)((NU64)(((NI) 1)) << (NU64)(((NI64) ((NI64)(elem0 % IL64(8))))))))); }
N_NIMCALL(Tnode191813*, semlocals_407020)(Tcontext244023* c, Tnode191813* n) { Tnode191813* result; NI counter; Ttype191849* tupletype; result = 0; counter = ((NI) 0); tupletype = newtypes_244218(((NU8) 18), c); result = newnodeit_193807(((NU8) 37), (*n).info, tupletype); asgnRefNoCycle((void**) (&(*tupletype).n), newnodei_193351(((NU8) 138), (*n).info)); { Tscope191837* scope_407027; Tscope191837* HEX3Atmp_407100; Tscope191837* current_407103; scope_407027 = 0; HEX3Atmp_407100 = 0; HEX3Atmp_407100 = (*c).currentscope; current_407103 = HEX3Atmp_407100; { while (1) { if (!!((current_407103 == NIM_NIL))) goto LA3; scope_407027 = current_407103; { if (!(scope_407027 == (*c).toplevelscope)) goto LA6; goto LA1; } LA6: ; { Tsym191843* it_407039; Tstrtable191817 HEX3Atmp_407094; Ttabiter199119 it_407097; Tsym191843* s_407099; it_407039 = 0; memset((void*)(&HEX3Atmp_407094), 0, sizeof(HEX3Atmp_407094)); HEX3Atmp_407094.counter = (*scope_407027).symbols.counter; HEX3Atmp_407094.data = (*scope_407027).symbols.data; memset((void*)(&it_407097), 0, sizeof(it_407097)); s_407099 = inittabiter_199124((&it_407097), HEX3Atmp_407094); { while (1) { if (!!((s_407099 == NIM_NIL))) goto LA10; it_407039 = s_407099; { NIM_BOOL LOC13; Ttype191849* LOC15; Tsym191843* field; Tsym191843* LOC18; Tnode191813* LOC19; Tnode191813* a; LOC13 = 0; LOC13 = ((2099976 &(1<<(((*it_407039).kind)&31)))!=0); if (!(LOC13)) goto LA14; LOC15 = 0; LOC15 = skiptypes_195167((*it_407039).typ, 8390656); LOC13 = !(((IL64(576742227414352328) &(IL64(1)<<(((*LOC15).kind)&IL64(63))))!=0)); LA14: ; if (!LOC13) goto LA16; LOC18 = 0; LOC18 = getcurrowner_244255(); field = newsym_192655(((NU8) 19), (*it_407039).name, LOC18, (*n).info); asgnRefNoCycle((void**) (&(*field).typ), skiptypes_195167((*it_407039).typ, 8390656)); (*field).position = counter; counter += ((NI) 1); LOC19 = 0; LOC19 = newsymnode_193325(field); addson_193819((*tupletype).n, LOC19); addsonskipintlit_238731(tupletype, (*field).typ); a = newsymnode_193338(it_407039, (*result).info); { Ttype191849* LOC22; LOC22 = 0; LOC22 = skiptypes_195167((*it_407039).typ, 2048); if (!((*LOC22).kind == ((NU8) 23))) goto LA23; a = newderef_357024(a); } LA23: ; add_192164(result, a); } LA16: ; s_407099 = nextiter_199132((&it_407097), HEX3Atmp_407094); } LA10: ; } } current_407103 = (*current_407103).parent; } LA3: ; } } LA1: ; return result; }
N_NIMCALL(NU8, isassignable_269056)(Tsym191843* owner, Tnode191813* n) { NU8 result; result = 0; result = ((NU8) 0); switch ((*n).kind) { case ((NU8) 3): { { if (!((2336 &(1<<(((*(*n).kindU.S4.sym).kind)&31)))!=0)) goto LA4; { NIM_BOOL LOC8; NIM_BOOL LOC9; LOC8 = 0; LOC9 = 0; LOC9 = !((owner == NIM_NIL)); if (!(LOC9)) goto LA10; LOC9 = ((*owner).Sup.id == (*(*(*n).kindU.S4.sym).owner).Sup.id); LA10: ; LOC8 = LOC9; if (!(LOC8)) goto LA11; LOC8 = !((((*(*n).kindU.S4.sym).flags &(1<<((((NU8) 3))&31)))!=0)); LA11: ; if (!LOC8) goto LA12; result = ((NU8) 2); } goto LA6; LA12: ; { result = ((NU8) 1); } LA6: ; } goto LA2; LA4: ; { NIM_BOOL LOC16; LOC16 = 0; LOC16 = ((*(*n).kindU.S4.sym).kind == ((NU8) 3)); if (!(LOC16)) goto LA17; LOC16 = ((*(*(*n).kindU.S4.sym).typ).kind == ((NU8) 23)); LA17: ; if (!LOC16) goto LA18; result = ((NU8) 1); } goto LA2; LA18: ; { Ttype191849* t; if (!((*(*n).kindU.S4.sym).kind == ((NU8) 7))) goto LA21; t = skiptypes_195167((*(*n).kindU.S4.sym).typ, 256); { if (!((*t).kind == ((NU8) 23))) goto LA25; result = ((NU8) 4); } LA25: ; } goto LA2; LA21: ; LA2: ; } break; case ((NU8) 45): { { Ttype191849* LOC30; LOC30 = 0; LOC30 = skiptypes_195167((*(*n).kindU.S6.sons->data[((NI) 0)]).typ, IL64(211106232576000)); if (!((*LOC30).kind == ((NU8) 23) || (*LOC30).kind == ((NU8) 21) || (*LOC30).kind == ((NU8) 22))) goto LA31; result = ((NU8) 1); } goto LA28; LA31: ; { result = isassignable_269056(owner, (*n).kindU.S6.sons->data[((NI) 0)]); } LA28: ; { NIM_BOOL LOC36; LOC36 = 0; LOC36 = !((result == ((NU8) 0))); if (!(LOC36)) goto LA37; LOC36 = (((*(*(*n).kindU.S6.sons->data[((NI) 1)]).kindU.S4.sym).flags &(1<<((((NU8) 18))&31)))!=0); LA37: ; if (!LOC36) goto LA38; result = ((NU8) 3); } LA38: ; } break; case ((NU8) 42): { { Ttype191849* LOC43; LOC43 = 0; LOC43 = skiptypes_195167((*(*n).kindU.S6.sons->data[((NI) 0)]).typ, IL64(211106232576000)); if (!((*LOC43).kind == ((NU8) 23) || (*LOC43).kind == ((NU8) 21) || (*LOC43).kind == ((NU8) 22))) goto LA44; result = ((NU8) 1); } goto LA41; LA44: ; { result = isassignable_269056(owner, (*n).kindU.S6.sons->data[((NI) 0)]); } LA41: ; } break; case ((NU8) 58): case ((NU8) 59): case ((NU8) 60): { { Ttype191849* LOC50; LOC50 = 0; LOC50 = skiptypes_195167((*n).typ, IL64(211106247256064)); if (!((*LOC50).kind == ((NU8) 27) || (*LOC50).kind == ((NU8) 18) || (*LOC50).kind == ((NU8) 17))) goto LA51; result = isassignable_269056(owner, (*n).kindU.S6.sons->data[((NI) 1)]); } goto LA48; LA51: ; { NIM_BOOL LOC54; LOC54 = 0; LOC54 = comparetypes_228047((*n).typ, (*(*n).kindU.S6.sons->data[((NI) 1)]).typ, ((NU8) 1), 0); if (!LOC54) goto LA55; result = isassignable_269056(owner, (*n).kindU.S6.sons->data[((NI) 1)]); } goto LA48; LA55: ; LA48: ; } break; case ((NU8) 65): case ((NU8) 47): case ((NU8) 64): { result = ((NU8) 1); } break; case ((NU8) 67): case ((NU8) 66): case ((NU8) 46): { result = isassignable_269056(owner, (*n).kindU.S6.sons->data[((NI) 0)]); } break; case ((NU8) 27): case ((NU8) 29): case ((NU8) 30): case ((NU8) 31): case ((NU8) 26): case ((NU8) 28): case ((NU8) 32): { { NU16 LOC62; LOC62 = 0; LOC62 = getmagic_220403(n); if (!(LOC62 == ((NU16) 150))) goto LA63; result = isassignable_269056(owner, (*n).kindU.S6.sons->data[((NI) 1)]); } LA63: ; } break; default: { } break; } return result; }
N_NIMCALL(void, bitsetincl_238061)(Tbitset238012** x, NI64 elem) { (*x)->data[(NI64)(elem / IL64(8))] = (NI8)((*x)->data[(NI64)(elem / IL64(8))] | ((NI8)(NU8)(NU)((NI)((NU32)(((NI) 1)) << (NU32)(((NI) ((NI64)(elem % IL64(8))))))))); }
N_NIMCALL(NIM_BOOL, bitsetin_Z5HI0xhB5Wx2mWRfrJc2NQ)(TY_pxbIse2JUQkJU0n9blV9bY5g* x0, NI64 e0) { NIM_BOOL result0; result0 = (NIM_BOOL)0; result0 = !(((NI8)(x0->data[(NI64)(e0 / IL64(8))] & ((NI8)(NU8)(NU)((NI)((NU64)(((NI) 1)) << (NU64)(((NI64) ((NI64)(e0 % IL64(8))))))))) == ((NI8) 0))); return result0; }
N_NIMCALL(void, annotatetype_402134)(Tnode191813* n, Ttype191849* t) { Ttype191849* x; x = skiptypes_195167(t, IL64(211106232576256)); switch ((*n).kind) { case ((NU8) 37): { { if (!((*x).kind == ((NU8) 17))) goto LA4; asgnRefNoCycle((void**) (&(*n).typ), t); { NI i_402167; NI HEX3Atmp_402297; NI LOC7; NI res_402300; i_402167 = 0; HEX3Atmp_402297 = 0; LOC7 = 0; LOC7 = len_192097(n); HEX3Atmp_402297 = (LOC7 - 1); res_402300 = ((NI) 0); { while (1) { Tsym191843* field; if (!(res_402300 <= HEX3Atmp_402297)) goto LA9; i_402167 = res_402300; field = ithfield_402012((*x).n, i_402167); { NimStringDesc* LOC14; NimStringDesc* LOC15; if (!field == 0) goto LA12; LOC14 = 0; LOC15 = 0; LOC15 = nimIntToStr(i_402167); LOC14 = rawNewString(LOC15->Sup.len + 23); appendString(LOC14, ((NimStringDesc*) &TMP3286)); appendString(LOC14, LOC15); globalerror_165161((*n).info, LOC14); } goto LA10; LA12: ; { annotatetype_402134((*n).kindU.S6.sons->data[i_402167], (*field).typ); } LA10: ; res_402300 += ((NI) 1); } LA9: ; } } } goto LA2; LA4: ; { if (!((*x).kind == ((NU8) 18))) goto LA18; asgnRefNoCycle((void**) (&(*n).typ), t); { NI i_402209; NI HEX3Atmp_402305; NI LOC21; NI res_402308; i_402209 = 0; HEX3Atmp_402305 = 0; LOC21 = 0; LOC21 = len_192097(n); HEX3Atmp_402305 = (LOC21 - 1); res_402308 = ((NI) 0); { while (1) { if (!(res_402308 <= HEX3Atmp_402305)) goto LA23; i_402209 = res_402308; { NI LOC26; NimStringDesc* LOC29; NimStringDesc* LOC30; LOC26 = 0; LOC26 = len_194377(x); if (!(LOC26 <= i_402209)) goto LA27; LOC29 = 0; LOC30 = 0; LOC30 = nimIntToStr(i_402209); LOC29 = rawNewString(LOC30->Sup.len + 23); appendString(LOC29, ((NimStringDesc*) &TMP3286)); appendString(LOC29, LOC30); globalerror_165161((*n).info, LOC29); } goto LA24; LA27: ; { annotatetype_402134((*n).kindU.S6.sons->data[i_402209], (*x).sons->data[i_402209]); } LA24: ; res_402308 += ((NI) 1); } LA23: ; } } } goto LA2; LA18: ; { NIM_BOOL LOC33; LOC33 = 0; LOC33 = ((*x).kind == ((NU8) 25)); if (!(LOC33)) goto LA34; LOC33 = ((*x).callconv == ((NU8) 8)); LA34: ; if (!LOC33) goto LA35; asgnRefNoCycle((void**) (&(*n).typ), t); } goto LA2; LA35: ; { globalerror_165161((*n).info, ((NimStringDesc*) &TMP3287)); } LA2: ; } break; case ((NU8) 41): { { if (!((*x).kind == ((NU8) 4) || (*x).kind == ((NU8) 16) || (*x).kind == ((NU8) 24) || (*x).kind == ((NU8) 27))) goto LA41; asgnRefNoCycle((void**) (&(*n).typ), t); { Tnode191813* m_402240; m_402240 = 0; { NI i_402316; NI HEX3Atmp_402318; NI LOC45; NI res_402320; i_402316 = 0; HEX3Atmp_402318 = 0; LOC45 = 0; LOC45 = len_192097(n); HEX3Atmp_402318 = (LOC45 - 1); res_402320 = ((NI) 0); { while (1) { Ttype191849* LOC48; if (!(res_402320 <= HEX3Atmp_402318)) goto LA47; i_402316 = res_402320; m_402240 = (*n).kindU.S6.sons->data[i_402316]; LOC48 = 0; LOC48 = elemtype_221522(x); annotatetype_402134(m_402240, LOC48); res_402320 += ((NI) 1); } LA47: ; } } } } goto LA39; LA41: ; { globalerror_165161((*n).info, ((NimStringDesc*) &TMP3288)); } LA39: ; } break; case ((NU8) 39): { { if (!((*x).kind == ((NU8) 19))) goto LA53; asgnRefNoCycle((void**) (&(*n).typ), t); { Tnode191813* m_402252; m_402252 = 0; { NI i_402327; NI HEX3Atmp_402329; NI LOC57; NI res_402331; i_402327 = 0; HEX3Atmp_402329 = 0; LOC57 = 0; LOC57 = len_192097(n); HEX3Atmp_402329 = (LOC57 - 1); res_402331 = ((NI) 0); { while (1) { Ttype191849* LOC60; if (!(res_402331 <= HEX3Atmp_402329)) goto LA59; i_402327 = res_402331; m_402252 = (*n).kindU.S6.sons->data[i_402327]; LOC60 = 0; LOC60 = elemtype_221522(x); annotatetype_402134(m_402252, LOC60); res_402331 += ((NI) 1); } LA59: ; } } } } goto LA51; LA53: ; { globalerror_165161((*n).info, ((NimStringDesc*) &TMP3289)); } LA51: ; } break; case ((NU8) 16) ... ((NU8) 19): { { if (!((*x).kind >= ((NU8) 36) && (*x).kind <= ((NU8) 39))) goto LA65; asgnRefNoCycle((void**) (&(*n).typ), t); } goto LA63; LA65: ; { globalerror_165161((*n).info, ((NimStringDesc*) &TMP3290)); } LA63: ; } break; case ((NU8) 5) ... ((NU8) 15): { { if (!((*x).kind >= ((NU8) 31) && (*x).kind <= ((NU8) 44) || (*x).kind == ((NU8) 1) || (*x).kind == ((NU8) 2) || (*x).kind == ((NU8) 14))) goto LA71; asgnRefNoCycle((void**) (&(*n).typ), t); } goto LA69; LA71: ; { globalerror_165161((*n).info, ((NimStringDesc*) &TMP3291)); } LA69: ; } break; case ((NU8) 20) ... ((NU8) 22): { { if (!((*x).kind == ((NU8) 28) || (*x).kind == ((NU8) 29))) goto LA77; asgnRefNoCycle((void**) (&(*n).typ), t); } goto LA75; LA77: ; { globalerror_165161((*n).info, ((NimStringDesc*) &TMP3292)); } LA75: ; } break; case ((NU8) 23): { { if (!((*x).kind == ((NU8) 26) || (*x).kind == ((NU8) 29) || (*x).kind == ((NU8) 22) || (*x).kind == ((NU8) 21) || (*x).kind == ((NU8) 24) || (*x).kind == ((NU8) 25) || (*x).kind == ((NU8) 28) || (*x).kind == ((NU8) 50))) goto LA83; asgnRefNoCycle((void**) (&(*n).typ), t); } goto LA81; LA83: ; { globalerror_165161((*n).info, ((NimStringDesc*) &TMP3293)); } LA81: ; } break; default: { } break; } }
N_NIMCALL(NIM_BOOL, bitsetin_238077)(Tbitset238012* x, NI64 e) { NIM_BOOL result; result = 0; result = !(((NI8)(x->data[(NI64)(e / IL64(8))] & ((NI8)(NU8)(NU)((NI)((NU32)(((NI) 1)) << (NU32)(((NI) ((NI64)(e % IL64(8))))))))) == ((NI8) 0))); return result; }
N_NIMCALL(time_t, wintimetounixtime_110845)(NI64 t) { time_t result; result = 0; result = ((time_t) ((NI64)((NI64)(t - IL64(116444736000000000)) / IL64(10000000)))); return result; }
N_NIMCALL(tident165019*, getident_165250)(NCSTRING identifier, NI length, NI h) { tident165019* result; NI idx; tident165019* last; NI id; NI i_165429; NI HEX3Atmp_165448; NI TMP976; NI res_165450; nimfr("getIdent", "idents.nim") result = 0; nimln(69, "idents.nim"); nimln(69, "idents.nim"); idx = (NI)(h & 8191); nimln(70, "idents.nim"); result = buckets_165033[(idx)- 0]; nimln(71, "idents.nim"); last = NIM_NIL; nimln(72, "idents.nim"); id = 0; nimln(73, "idents.nim"); while (1) { nimln(73, "idents.nim"); nimln(73, "idents.nim"); if (!!((result == NIM_NIL))) goto LA1; nimln(74, "idents.nim"); { NI LOC4; nimln(74, "idents.nim"); nimln(74, "idents.nim"); LOC4 = 0; LOC4 = cmpexact_165186((*result).S->data, identifier, length); if (!(LOC4 == 0)) goto LA5; nimln(75, "idents.nim"); { nimln(75, "idents.nim"); nimln(75, "idents.nim"); if (!!((last == NIM_NIL))) goto LA9; nimln(77, "idents.nim"); asgnRefNoCycle((void**) &(*last).Next, (*result).Next); nimln(78, "idents.nim"); asgnRefNoCycle((void**) &(*result).Next, buckets_165033[(idx)- 0]); nimln(79, "idents.nim"); asgnRefNoCycle((void**) &buckets_165033[(idx)- 0], result); } LA9: ; nimln(80, "idents.nim"); goto BeforeRet; } goto LA2; LA5: ; { NI LOC12; nimln(81, "idents.nim"); nimln(81, "idents.nim"); LOC12 = 0; LOC12 = cmpignorestyle_165036((*result).S->data, identifier, length); if (!(LOC12 == 0)) goto LA13; nimln(82, "idents.nim"); { NIM_BOOL LOC17; nimln(82, "idents.nim"); nimln(82, "idents.nim"); LOC17 = 0; nimln(82, "idents.nim"); LOC17 = (id == 0); if (LOC17) goto LA18; nimln(82, "idents.nim"); LOC17 = (id == (*result).Sup.Id); LA18: ; if (!!(LOC17)) goto LA19; nimln(82, "idents.nim"); failedassertimpl_79821(((NimStringDesc*) &TMP973)); } LA19: ; nimln(83, "idents.nim"); id = (*result).Sup.Id; } goto LA2; LA13: ; LA2: ; nimln(84, "idents.nim"); last = result; nimln(85, "idents.nim"); result = (*result).Next; } LA1: ; nimln(86, "idents.nim"); result = (tident165019*) newObj((&NTI165017), sizeof(tident165019)); (*result).Sup.Sup.m_type = (&NTI165019); nimln(87, "idents.nim"); (*result).H = h; nimln(88, "idents.nim"); nimln(88, "idents.nim"); asgnRefNoCycle((void**) &(*result).S, mnewString(length)); i_165429 = 0; HEX3Atmp_165448 = 0; nimln(89, "idents.nim"); nimln(89, "idents.nim"); TMP976 = subInt(length, 1); HEX3Atmp_165448 = (NI64)(TMP976); nimln(1450, "system.nim"); res_165450 = 0; nimln(1451, "system.nim"); while (1) { nimln(1451, "system.nim"); if (!(res_165450 <= HEX3Atmp_165448)) goto LA21; nimln(1450, "system.nim"); i_165429 = res_165450; nimln(89, "idents.nim"); if ((NU)(i_165429) > (NU)((*result).S->Sup.len)) raiseIndexError(); (*result).S->data[i_165429] = identifier[i_165429]; nimln(1453, "system.nim"); res_165450 = addInt(res_165450, 1); } LA21: ; nimln(90, "idents.nim"); asgnRefNoCycle((void**) &(*result).Next, buckets_165033[(idx)- 0]); nimln(91, "idents.nim"); asgnRefNoCycle((void**) &buckets_165033[(idx)- 0], result); nimln(92, "idents.nim"); { nimln(92, "idents.nim"); if (!(id == 0)) goto LA24; nimln(93, "idents.nim"); wordcounter_165248 = addInt(wordcounter_165248, 1); nimln(94, "idents.nim"); nimln(94, "idents.nim"); if (wordcounter_165248 == (IL64(-9223372036854775807) - IL64(1))) raiseOverflow(); (*result).Sup.Id = ((NI64)-(wordcounter_165248)); } goto LA22; LA24: ; { nimln(96, "idents.nim"); (*result).Sup.Id = id; } LA22: ; BeforeRet: ; popFrame(); return result; }