Exemple #1
0
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;
}
Exemple #2
0
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;
}
Exemple #3
0
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;
}
Exemple #4
0
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;
}
Exemple #6
0
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);
}
Exemple #7
0
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;
}
Exemple #8
0
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;
	}
}
Exemple #9
0
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;
}
Exemple #10
0
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();
}
Exemple #12
0
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;
}
Exemple #13
0
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;
}
Exemple #17
0
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();
}
Exemple #18
0
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;
}
Exemple #22
0
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)))))))));
}
Exemple #23
0
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;
}
Exemple #25
0
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)))))))));
}
Exemple #26
0
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;
	}
}
Exemple #28
0
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;
}
Exemple #29
0
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;
}
Exemple #30
0
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;
}