mirror of
https://github.com/status-im/csources-nimble.git
synced 2026-08-29 09:21:06 +00:00
229 lines
9.2 KiB
C
229 lines
9.2 KiB
C
/* Generated by Nim Compiler v1.6.11 */
|
|
#define NIM_INTBITS 64
|
|
|
|
#include "nimbase.h"
|
|
#include <stdio.h>
|
|
#include <string.h>
|
|
#undef LANGUAGE_C
|
|
#undef MIPSEB
|
|
#undef MIPSEL
|
|
#undef PPC
|
|
#undef R3000
|
|
#undef R4000
|
|
#undef i386
|
|
#undef linux
|
|
#undef mips
|
|
#undef near
|
|
#undef far
|
|
#undef powerpc
|
|
#undef unix
|
|
# define nimfr_(proc, file) \
|
|
TFrame FR_; \
|
|
FR_.procname = proc; FR_.filename = file; FR_.line = 0; FR_.len = 0; nimFrame(&FR_);
|
|
|
|
# define nimfrs_(proc, file, slots, length) \
|
|
struct {TFrame* prev;NCSTRING procname;NI line;NCSTRING filename; NI len; VarSlot s[slots];} FR_; \
|
|
FR_.procname = proc; FR_.filename = file; FR_.line = 0; FR_.len = length; nimFrame((TFrame*)&FR_);
|
|
|
|
# define nimln_(n, file) \
|
|
FR_.line = n; FR_.filename = file;
|
|
typedef struct NimStringDesc NimStringDesc;
|
|
typedef struct TGenericSeq TGenericSeq;
|
|
struct TGenericSeq {
|
|
NI len;
|
|
NI reserved;
|
|
};
|
|
struct NimStringDesc {
|
|
TGenericSeq Sup;
|
|
NIM_CHAR data[SEQ_DECL_SIZE];
|
|
};
|
|
typedef NIM_CHAR tyArray__eVNFTutn6un5gcq48fQLdg[65];
|
|
N_LIB_PRIVATE N_NIMCALL(NI, writeFloatToBufferSprintf__systemZformatfloat_59)(NIM_CHAR* buf, NF value);
|
|
N_LIB_PRIVATE N_NIMCALL(void, writeToBuffer__systemZformatfloat_51)(NIM_CHAR* buf, NCSTRING value);
|
|
static N_INLINE(void, nimFrame)(TFrame* s);
|
|
N_LIB_PRIVATE N_NOINLINE(void, callDepthLimitReached__system_2997)(void);
|
|
static N_INLINE(void, popFrame)(void);
|
|
N_LIB_PRIVATE N_NIMCALL(void, addCstringN__systemZformatfloat_5)(NimStringDesc** result, NCSTRING buf, NI buflen);
|
|
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, setLengthStr)(NimStringDesc* s, NI newLen);
|
|
N_LIB_PRIVATE N_NIMCALL(void, unsureAsgnRef)(void** dest, void* src);
|
|
extern TFrame* framePtr__system_2564;
|
|
extern TFrame* framePtr__system_2564;
|
|
extern TFrame* framePtr__system_2564;
|
|
extern TFrame* framePtr__system_2564;
|
|
extern TFrame* framePtr__system_2564;
|
|
extern TFrame* framePtr__system_2564;
|
|
static N_INLINE(void, nimFrame)(TFrame* s) {
|
|
{
|
|
if (!(framePtr__system_2564 == ((TFrame*) NIM_NIL))) goto LA3_;
|
|
(*s).calldepth = ((NI16) 0);
|
|
}
|
|
goto LA1_;
|
|
LA3_: ;
|
|
{
|
|
(*s).calldepth = (NI16)((*framePtr__system_2564).calldepth + ((NI16) 1));
|
|
}
|
|
LA1_: ;
|
|
(*s).prev = framePtr__system_2564;
|
|
framePtr__system_2564 = s;
|
|
{
|
|
if (!((*s).calldepth == ((NI16) 2000))) goto LA8_;
|
|
callDepthLimitReached__system_2997();
|
|
}
|
|
LA8_: ;
|
|
}
|
|
static N_INLINE(void, popFrame)(void) {
|
|
framePtr__system_2564 = (*framePtr__system_2564).prev;
|
|
}
|
|
N_LIB_PRIVATE N_NIMCALL(void, writeToBuffer__systemZformatfloat_51)(NIM_CHAR* buf, NCSTRING value) {
|
|
NI i;
|
|
nimfr_("writeToBuffer", "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/system/formatfloat.nim");
|
|
nimln_(37, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/system/formatfloat.nim");
|
|
i = ((NI) 0);
|
|
{
|
|
nimln_(38, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/system/formatfloat.nim");
|
|
while (1) {
|
|
if (!!(((NU8)(value[i]) == (NU8)(0)))) goto LA2;
|
|
nimln_(39, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/system/formatfloat.nim");
|
|
buf[(i)- 0] = value[i];
|
|
nimln_(40, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/system/formatfloat.nim");
|
|
i += ((NI) 1);
|
|
} LA2: ;
|
|
}
|
|
popFrame();
|
|
}
|
|
N_LIB_PRIVATE N_NIMCALL(NI, writeFloatToBufferSprintf__systemZformatfloat_59)(NIM_CHAR* buf, NF value) {
|
|
NI result;
|
|
NI n;
|
|
int T1_;
|
|
NIM_BOOL hasDot;
|
|
nimfr_("writeFloatToBufferSprintf", "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/system/formatfloat.nim");
|
|
result = (NI)0;
|
|
nimln_(47, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/system/formatfloat.nim");
|
|
T1_ = (int)0;
|
|
T1_ = sprintf(((NCSTRING) (buf)), "%.16g", value);
|
|
n = ((NI) (T1_));
|
|
nimln_(48, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/system/formatfloat.nim");
|
|
hasDot = NIM_FALSE;
|
|
{
|
|
NI i;
|
|
NI colontmp_;
|
|
NI res;
|
|
i = (NI)0;
|
|
colontmp_ = (NI)0;
|
|
nimln_(49, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/system/formatfloat.nim");
|
|
colontmp_ = (NI)(n - ((NI) 1));
|
|
nimln_(90, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/system/iterators_1.nim");
|
|
res = ((NI) 0);
|
|
{
|
|
nimln_(91, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/system/iterators_1.nim");
|
|
while (1) {
|
|
if (!(res <= colontmp_)) goto LA4;
|
|
nimln_(49, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/system/formatfloat.nim");
|
|
i = res;
|
|
{
|
|
nimln_(50, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/system/formatfloat.nim");
|
|
if (!((NU8)(buf[(i)- 0]) == (NU8)(44))) goto LA7_;
|
|
nimln_(51, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/system/formatfloat.nim");
|
|
buf[(i)- 0] = 46;
|
|
nimln_(52, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/system/formatfloat.nim");
|
|
hasDot = NIM_TRUE;
|
|
}
|
|
goto LA5_;
|
|
LA7_: ;
|
|
{
|
|
nimln_(53, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/system/formatfloat.nim");
|
|
if (!(((NU8)(buf[(i)- 0])) >= ((NU8)(97)) && ((NU8)(buf[(i)- 0])) <= ((NU8)(122)) || ((NU8)(buf[(i)- 0])) >= ((NU8)(65)) && ((NU8)(buf[(i)- 0])) <= ((NU8)(90)) || ((NU8)(buf[(i)- 0])) == ((NU8)(46)))) goto LA10_;
|
|
nimln_(54, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/system/formatfloat.nim");
|
|
hasDot = NIM_TRUE;
|
|
}
|
|
goto LA5_;
|
|
LA10_: ;
|
|
LA5_: ;
|
|
nimln_(93, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/system/iterators_1.nim");
|
|
res += ((NI) 1);
|
|
} LA4: ;
|
|
}
|
|
}
|
|
nimln_(55, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/system/formatfloat.nim");
|
|
{
|
|
if (!!(hasDot)) goto LA14_;
|
|
nimln_(56, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/system/formatfloat.nim");
|
|
buf[(n)- 0] = 46;
|
|
nimln_(57, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/system/formatfloat.nim");
|
|
buf[((NI)(n + ((NI) 1)))- 0] = 48;
|
|
nimln_(58, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/system/formatfloat.nim");
|
|
buf[((NI)(n + ((NI) 2)))- 0] = 0;
|
|
nimln_(59, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/system/formatfloat.nim");
|
|
result = (NI)(n + ((NI) 2));
|
|
}
|
|
goto LA12_;
|
|
LA14_: ;
|
|
{
|
|
nimln_(61, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/system/formatfloat.nim");
|
|
result = n;
|
|
}
|
|
LA12_: ;
|
|
nimln_(65, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/system/formatfloat.nim");
|
|
{
|
|
if (!(((NU8)(buf[((NI)(n - ((NI) 1)))- 0])) == ((NU8)(110)) || ((NU8)(buf[((NI)(n - ((NI) 1)))- 0])) == ((NU8)(78)) || ((NU8)(buf[((NI)(n - ((NI) 1)))- 0])) == ((NU8)(68)) || ((NU8)(buf[((NI)(n - ((NI) 1)))- 0])) == ((NU8)(100)) || ((NU8)(buf[((NI)(n - ((NI) 1)))- 0])) == ((NU8)(41)))) goto LA19_;
|
|
nimln_(66, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/system/formatfloat.nim");
|
|
writeToBuffer__systemZformatfloat_51(buf, "nan");
|
|
nimln_(67, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/system/formatfloat.nim");
|
|
result = ((NI) 3);
|
|
}
|
|
goto LA17_;
|
|
LA19_: ;
|
|
{
|
|
nimln_(68, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/system/formatfloat.nim");
|
|
if (!((NU8)(buf[((NI)(n - ((NI) 1)))- 0]) == (NU8)(70))) goto LA22_;
|
|
nimln_(69, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/system/formatfloat.nim");
|
|
{
|
|
if (!((NU8)(buf[(((NI) 0))- 0]) == (NU8)(45))) goto LA26_;
|
|
nimln_(70, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/system/formatfloat.nim");
|
|
writeToBuffer__systemZformatfloat_51(buf, "-inf");
|
|
nimln_(71, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/system/formatfloat.nim");
|
|
result = ((NI) 4);
|
|
}
|
|
goto LA24_;
|
|
LA26_: ;
|
|
{
|
|
nimln_(73, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/system/formatfloat.nim");
|
|
writeToBuffer__systemZformatfloat_51(buf, "inf");
|
|
nimln_(74, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/system/formatfloat.nim");
|
|
result = ((NI) 3);
|
|
}
|
|
LA24_: ;
|
|
}
|
|
goto LA17_;
|
|
LA22_: ;
|
|
LA17_: ;
|
|
popFrame();
|
|
return result;
|
|
}
|
|
N_LIB_PRIVATE N_NIMCALL(void, addCstringN__systemZformatfloat_5)(NimStringDesc** result, NCSTRING buf, NI buflen) {
|
|
NI oldLen;
|
|
NI newLen;
|
|
void* T1_;
|
|
nimfr_("addCstringN", "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/system/formatfloat.nim");
|
|
nimln_(14, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/system/formatfloat.nim");
|
|
oldLen = ((*result) ? (*result)->Sup.len : 0);
|
|
nimln_(15, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/system/formatfloat.nim");
|
|
newLen = (NI)(oldLen + buflen);
|
|
nimln_(16, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/system/formatfloat.nim");
|
|
unsureAsgnRef((void**) (&(*result)), setLengthStr((*result), ((NI) (newLen))));
|
|
nimln_(17, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/system/formatfloat.nim");
|
|
T1_ = (void*)0;
|
|
T1_ = memcpy(((void*) ((&(*result)->data[oldLen]))), ((void*) (buf)), ((size_t) (buflen)));
|
|
popFrame();
|
|
}
|
|
N_LIB_PRIVATE N_NIMCALL(void, addFloatSprintf__systemZformatfloat_99)(NimStringDesc** result, NF x) {
|
|
tyArray__eVNFTutn6un5gcq48fQLdg buffer;
|
|
NI n;
|
|
nimfr_("addFloatSprintf", "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/system/formatfloat.nim");
|
|
nimln_(95, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/system/formatfloat.nim");
|
|
n = writeFloatToBufferSprintf__systemZformatfloat_59(buffer, x);
|
|
nimln_(96, "/home/yyoncho/.choosenim/toolchains/nim-#version-1-6/lib/system/formatfloat.nim");
|
|
addCstringN__systemZformatfloat_5(result, ((NCSTRING) ((&buffer[(((NI) 0))- 0]))), n);
|
|
popFrame();
|
|
}
|