nwaku/nimcache/release/quicksim/@m..@s..@s..@svendor@snimcrypto@snimcrypto@ssysrand.nim.c

701 lines
37 KiB
C

/* Generated by Nim Compiler v1.2.6 */
/* (c) 2020 Andreas Rumpf */
/* The generated code is subject to the original license. */
/* Compiled for: Linux, amd64, gcc */
/* Command for C compiler:
gcc -c -w -pthread -I/home/runner/work/nim-waku/nim-waku/vendor/nim-libbacktrace -I/home/runner/work/nim-waku/nim-waku/vendor/nim-libbacktrace/install/usr/include -I/home/runner/work/nim-waku/nim-waku/vendor/nim-bearssl/bearssl/csources/src -I/home/runner/work/nim-waku/nim-waku/vendor/nim-bearssl/bearssl/csources/inc -I/home/runner/work/nim-waku/nim-waku/vendor/nim-bearssl/bearssl/csources/tools -DBR_USE_UNIX_TIME=1 -DBR_USE_URANDOM=1 -DBR_LE_UNALIGNED=1 -DBR_64=1 -DBR_amd64=1 -DBR_INT128=1 -I/home/runner/work/nim-waku/nim-waku/vendor/nim-bearssl/bearssl/certs -I/home/runner/work/nim-waku/nim-waku/vendor/nim-secp256k1/secp256k1_wrapper -I/home/runner/work/nim-waku/nim-waku/vendor/nim-secp256k1/secp256k1_wrapper/secp256k1 -I/home/runner/work/nim-waku/nim-waku/vendor/nim-secp256k1/secp256k1_wrapper/secp256k1/src -DHAVE_CONFIG_H -DHAVE_BUILTIN_EXPECT -march=native -g3 -Og -O3 -fno-strict-aliasing -fno-ident -I/home/runner/work/nim-waku/nim-waku/vendor/nimbus-build-system/vendor/Nim/lib -I/home/runner/work/nim-waku/nim-waku/waku/v1/node -o nimcache/release/quicksim/@m..@s..@s..@svendor@snimcrypto@snimcrypto@ssysrand.nim.c.o nimcache/release/quicksim/@m..@s..@s..@svendor@snimcrypto@snimcrypto@ssysrand.nim.c */
#define NIM_INTBITS 64
#include "nimbase.h"
#include <unistd.h>
#include <sys/syscall.h>
#include <sys/types.h>
#include <pthread.h>
#include <sys/stat.h>
#include <sys/types.h>
#include <time.h>
#include <string.h>
#include <fcntl.h>
#include <unistd.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_(x, y)
#define nimln_(x, y)
typedef struct tyObject_SystemRngcolonObjectType___X9aKjcE9bDr41cpowCIZoGpQ tyObject_SystemRngcolonObjectType___X9aKjcE9bDr41cpowCIZoGpQ;
typedef struct TNimType TNimType;
typedef struct TNimNode TNimNode;
typedef struct RootObj RootObj;
typedef struct tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g;
typedef struct tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w;
typedef struct tyObject_GcHeap__1TRH1TZMaVZTnLNcIHuNFQ tyObject_GcHeap__1TRH1TZMaVZTnLNcIHuNFQ;
typedef struct tyObject_GcStack__7fytPA5bBsob6See21YMRA tyObject_GcStack__7fytPA5bBsob6See21YMRA;
typedef struct tyObject_MemRegion__x81NhDv59b8ercDZ9bi85jyg tyObject_MemRegion__x81NhDv59b8ercDZ9bi85jyg;
typedef struct tyObject_SmallChunk__tXn60W2f8h3jgAYdEmy5NQ tyObject_SmallChunk__tXn60W2f8h3jgAYdEmy5NQ;
typedef struct tyObject_BigChunk__Rv9c70Uhp2TytkX7eH78qEg tyObject_BigChunk__Rv9c70Uhp2TytkX7eH78qEg;
typedef struct tyObject_LLChunk__XsENErzHIZV9bhvyJx56wGw tyObject_LLChunk__XsENErzHIZV9bhvyJx56wGw;
typedef struct tyObject_IntSet__EZObFrE3NC9bIb3YMkY9crZA tyObject_IntSet__EZObFrE3NC9bIb3YMkY9crZA;
typedef struct tyObject_Trunk__W0r8S0Y3UGke6T9bIUWnnuw tyObject_Trunk__W0r8S0Y3UGke6T9bIUWnnuw;
typedef struct tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw;
typedef struct tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg;
typedef struct tyTuple__ujsjpB2O9cjj3uDHsXbnSzg tyTuple__ujsjpB2O9cjj3uDHsXbnSzg;
typedef struct tyObject_GcStat__0RwLoVBHZPfUAcLczmfQAg tyObject_GcStat__0RwLoVBHZPfUAcLczmfQAg;
typedef struct tyObject_CellSet__jG87P0AI9aZtss9ccTYBIISQ tyObject_CellSet__jG87P0AI9aZtss9ccTYBIISQ;
typedef struct tyObject_PageDesc__fublkgIY4LG3mT51LU2WHg tyObject_PageDesc__fublkgIY4LG3mT51LU2WHg;
typedef struct tyObject_SharedList__JI9cx34TL8n3aOKF6tSMBUw tyObject_SharedList__JI9cx34TL8n3aOKF6tSMBUw;
typedef struct tyObject_SharedListNodecolonObjectType___KGw0YAw6W9aSz3Sr9aXGu7zg tyObject_SharedListNodecolonObjectType___KGw0YAw6W9aSz3Sr9aXGu7zg;
typedef NU8 tyEnum_TNimKind__jIBKr1ejBgsfM33Kxw4j7A;
typedef NU8 tySet_tyEnum_TNimTypeFlag__v8QUszD1sWlSIWZz7mC4bQ;
typedef N_NIMCALL_PTR(void, tyProc__ojoeKfW4VYIm36I9cpDTQIg) (void* p, NI op);
typedef N_NIMCALL_PTR(void*, tyProc__WSm2xU5ARYv9aAR4l0z9c9auQ) (void* p);
struct TNimType {NI size;
tyEnum_TNimKind__jIBKr1ejBgsfM33Kxw4j7A kind;
tySet_tyEnum_TNimTypeFlag__v8QUszD1sWlSIWZz7mC4bQ flags;
TNimType* base;
TNimNode* node;
void* finalizer;
tyProc__ojoeKfW4VYIm36I9cpDTQIg marker;
tyProc__WSm2xU5ARYv9aAR4l0z9c9auQ deepcopy;
NCSTRING name;
TNimType* nextType;
NI instances;
NI sizes;
};
typedef NU8 tyEnum_TNimNodeKind__unfNsxrcATrufDZmpBq4HQ;
struct TNimNode {tyEnum_TNimNodeKind__unfNsxrcATrufDZmpBq4HQ kind;
NI offset;
TNimType* typ;
NCSTRING name;
NI len;
TNimNode** sons;
};
struct RootObj {TNimType* m_type;};
struct tyObject_SystemRngcolonObjectType___X9aKjcE9bDr41cpowCIZoGpQ { RootObj Sup;NIM_BOOL getRandomPresent;
};
typedef N_NIMCALL_PTR(void, tyProc__T4eqaYlFJYZUv9aG9b1TV0bQ) (void);
struct tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g {NI refcount;
TNimType* typ;
};
struct tyObject_GcStack__7fytPA5bBsob6See21YMRA {void* bottom;
};
struct tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w {NI len;
NI cap;
tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g** d;
};
typedef tyObject_SmallChunk__tXn60W2f8h3jgAYdEmy5NQ* tyArray__SiRwrEKZdLgxqz9a9aoVBglg[512];
typedef NU32 tyArray__BHbOSqU1t9b3Gt7K2c6fQig[24];
typedef tyObject_BigChunk__Rv9c70Uhp2TytkX7eH78qEg* tyArray__N1u1nqOgmuJN9cSZrnMHgOQ[32];
typedef tyArray__N1u1nqOgmuJN9cSZrnMHgOQ tyArray__B6durA4ZCi1xjJvRtyYxMg[24];
typedef tyObject_Trunk__W0r8S0Y3UGke6T9bIUWnnuw* tyArray__lh2A89ahMmYg9bCmpVaplLbA[256];
struct tyObject_IntSet__EZObFrE3NC9bIb3YMkY9crZA {tyArray__lh2A89ahMmYg9bCmpVaplLbA data;
};
typedef tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* tyArray__0aOLqZchNi8nWtMTi8ND8w[2];
struct tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw {tyArray__0aOLqZchNi8nWtMTi8ND8w link;
NI key;
NI upperBound;
NI level;
};
struct tyTuple__ujsjpB2O9cjj3uDHsXbnSzg {
tyObject_BigChunk__Rv9c70Uhp2TytkX7eH78qEg* Field0;
NI Field1;
};
typedef tyTuple__ujsjpB2O9cjj3uDHsXbnSzg tyArray__LzOv2eCDGiceMKQstCLmhw[30];
struct tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg {NI len;
tyArray__LzOv2eCDGiceMKQstCLmhw chunks;
tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg* next;
};
struct tyObject_MemRegion__x81NhDv59b8ercDZ9bi85jyg {NI minLargeObj;
NI maxLargeObj;
tyArray__SiRwrEKZdLgxqz9a9aoVBglg freeSmallChunks;
NU32 flBitmap;
tyArray__BHbOSqU1t9b3Gt7K2c6fQig slBitmap;
tyArray__B6durA4ZCi1xjJvRtyYxMg matrix;
tyObject_LLChunk__XsENErzHIZV9bhvyJx56wGw* llmem;
NI currMem;
NI maxMem;
NI freeMem;
NI occ;
NI lastSize;
tyObject_IntSet__EZObFrE3NC9bIb3YMkY9crZA chunkStarts;
tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* root;
tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* deleted;
tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* last;
tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* freeAvlNodes;
NIM_BOOL locked;
NIM_BOOL blockChunkSizeIncrease;
NI nextChunkSize;
tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw bottomData;
tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg heapLinks;
NI allocCounter;
NI deallocCounter;
};
struct tyObject_GcStat__0RwLoVBHZPfUAcLczmfQAg {NI stackScans;
NI cycleCollections;
NI maxThreshold;
NI maxStackSize;
NI maxStackCells;
NI cycleTableSize;
NI64 maxPause;
};
struct tyObject_CellSet__jG87P0AI9aZtss9ccTYBIISQ {NI counter;
NI max;
tyObject_PageDesc__fublkgIY4LG3mT51LU2WHg* head;
tyObject_PageDesc__fublkgIY4LG3mT51LU2WHg** data;
};
typedef long tyArray__xDUyu9aScDpt0JZLU6q9aEZQ[5];
struct tyObject_SharedList__JI9cx34TL8n3aOKF6tSMBUw {tyObject_SharedListNodecolonObjectType___KGw0YAw6W9aSz3Sr9aXGu7zg* head;
tyObject_SharedListNodecolonObjectType___KGw0YAw6W9aSz3Sr9aXGu7zg* tail;
pthread_mutex_t lock;
};
struct tyObject_GcHeap__1TRH1TZMaVZTnLNcIHuNFQ {tyObject_GcStack__7fytPA5bBsob6See21YMRA stack;
NI cycleThreshold;
NI zctThreshold;
tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w zct;
tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w decStack;
tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w tempStack;
NI recGcLock;
tyObject_MemRegion__x81NhDv59b8ercDZ9bi85jyg region;
tyObject_GcStat__0RwLoVBHZPfUAcLczmfQAg stat;
tyObject_CellSet__jG87P0AI9aZtss9ccTYBIISQ marked;
tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w additionalRoots;
tyObject_SharedList__JI9cx34TL8n3aOKF6tSMBUw toDispose;
NI gcThreadId;
};
typedef long tyArray__QS4edQct6fXoghbs69aZ9a8w[3];
static N_NIMCALL(void, Marker_tyRef__9aWCZSregXolmau8IgbwrpA)(void* p, NI op);
N_LIB_PRIVATE N_NIMCALL(void, nimGCvisit)(void* d, NI op);
static N_NIMCALL(void, TM__Wf79cOmDFYPhaz9b70xI2wvQ_2)(void);
N_LIB_PRIVATE N_NIMCALL(void, nimRegisterThreadLocalMarker)(tyProc__T4eqaYlFJYZUv9aG9b1TV0bQ markerProc);
N_LIB_PRIVATE N_NOINLINE(void, raiseOverflow)(void);
N_LIB_PRIVATE N_NIMCALL(NI, randomBytes__UM3sBU6rTPA1QdWJMlWQcg)(void* pbytes, NI nbytes);
N_LIB_PRIVATE N_NIMCALL(tyObject_SystemRngcolonObjectType___X9aKjcE9bDr41cpowCIZoGpQ*, getSystemRNG__Xh6FaFF3QBAhrvIwBGi9b2A)(void);
N_LIB_PRIVATE N_NIMCALL(tyObject_SystemRngcolonObjectType___X9aKjcE9bDr41cpowCIZoGpQ*, newSystemRNG__Xh6FaFF3QBAhrvIwBGi9b2A_2)(void);
N_LIB_PRIVATE N_NIMCALL(void*, newObj)(TNimType* typ, NI size);
N_LIB_PRIVATE N_NIMCALL(NI32, osLastError__9bUWNxbcGnToMWA9b79aTXLIw)(void);
static N_INLINE(void, asgnRef)(void** dest, void* src);
static N_INLINE(void, incRef__AT1eRuflKWyTTBdLjEDZbg_3system)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c);
static N_INLINE(NI, pluspercent___dgYAo7RfdUVVpvkfKDym8wsystem)(NI x, NI y);
static N_INLINE(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*, usrToCell__QFQqcLB3lgOdwipkv9a60xwsystem)(void* usr);
static N_INLINE(NI, minuspercent___dgYAo7RfdUVVpvkfKDym8w_2system)(NI x, NI y);
static N_INLINE(void, decRef__AT1eRuflKWyTTBdLjEDZbgsystem)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c);
static N_INLINE(NIM_BOOL, ltpercent___hPljn3JCDQ00ua1R07X9bxQsystem)(NI x, NI y);
static N_INLINE(void, rtlAddZCT__AT1eRuflKWyTTBdLjEDZbg_2system)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c);
N_LIB_PRIVATE N_NOINLINE(void, addZCT__Y66tOYFjgwJ0k4aLz4bc0Q)(tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w* s, tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c);
N_LIB_PRIVATE N_NIMCALL(NI, urandomRead__UM3sBU6rTPA1QdWJMlWQcg_2)(void* pbytes, NI nbytes);
static N_INLINE(void, nimZeroMem)(void* p, NI size);
static N_INLINE(void, nimSetMem__zxfKBYntu9cBapkhrCOk1fgmemory)(void* a, int v, NI size);
N_LIB_PRIVATE N_NOINLINE(void, raiseIndexError2)(NI i, NI n);
N_LIB_PRIVATE N_NOINLINE(void, raiseDivByZero)(void);
static N_INLINE(NIM_BOOL, nimDivInt)(NI a, NI b, NI* res);
extern TNimType NTI__ytyiCJqK439aF9cIibuRVpAg_;
N_LIB_PRIVATE TNimType NTI__X9aKjcE9bDr41cpowCIZoGpQ_;
extern TNimType NTI__VaVACK0bpYmqIQ0mKcHfQQ_;
N_LIB_PRIVATE TNimType NTI__9aWCZSregXolmau8IgbwrpA_;
N_LIB_PRIVATE NIM_THREADVAR tyObject_SystemRngcolonObjectType___X9aKjcE9bDr41cpowCIZoGpQ* gSystemRng__Y05jRhSnzojCnuG6DrEsCw;
extern TNimType* nimTypeRoot;
extern NIM_THREADVAR tyObject_GcHeap__1TRH1TZMaVZTnLNcIHuNFQ gch__IcYaEuuWivYAS86vFMTS3Q;
static N_NIMCALL(void, Marker_tyRef__9aWCZSregXolmau8IgbwrpA)(void* p, NI op) {
tyObject_SystemRngcolonObjectType___X9aKjcE9bDr41cpowCIZoGpQ* a;
a = (tyObject_SystemRngcolonObjectType___X9aKjcE9bDr41cpowCIZoGpQ*)p;
}
static N_NIMCALL(void, TM__Wf79cOmDFYPhaz9b70xI2wvQ_2)(void) {
nimGCvisit((void*)gSystemRng__Y05jRhSnzojCnuG6DrEsCw, 0);}
#line 112 "/home/runner/work/nim-waku/nim-waku/vendor/nimcrypto/nimcrypto/sysrand.nim"
N_LIB_PRIVATE N_NIMCALL(tyObject_SystemRngcolonObjectType___X9aKjcE9bDr41cpowCIZoGpQ*, newSystemRNG__Xh6FaFF3QBAhrvIwBGi9b2A_2)(void) { tyObject_SystemRngcolonObjectType___X9aKjcE9bDr41cpowCIZoGpQ* result; tyObject_SystemRngcolonObjectType___X9aKjcE9bDr41cpowCIZoGpQ* T1_; result = (tyObject_SystemRngcolonObjectType___X9aKjcE9bDr41cpowCIZoGpQ*)0;
#line 113 "/home/runner/work/nim-waku/nim-waku/vendor/nimcrypto/nimcrypto/sysrand.nim"
T1_ = (tyObject_SystemRngcolonObjectType___X9aKjcE9bDr41cpowCIZoGpQ*)0; T1_ = (tyObject_SystemRngcolonObjectType___X9aKjcE9bDr41cpowCIZoGpQ*) newObj((&NTI__9aWCZSregXolmau8IgbwrpA_), sizeof(tyObject_SystemRngcolonObjectType___X9aKjcE9bDr41cpowCIZoGpQ)); (*T1_).Sup.m_type = (&NTI__X9aKjcE9bDr41cpowCIZoGpQ_); result = T1_;
#line 115 "/home/runner/work/nim-waku/nim-waku/vendor/nimcrypto/nimcrypto/sysrand.nim"
{ NI data_1; long res; if (!NIM_TRUE) goto LA4_;
data_1 = (NI)0;
#line 117 "/home/runner/work/nim-waku/nim-waku/vendor/nimcrypto/nimcrypto/sysrand.nim"
(*result).getRandomPresent = NIM_TRUE;
#line 118 "/home/runner/work/nim-waku/nim-waku/vendor/nimcrypto/nimcrypto/sysrand.nim"
#line 118 "/home/runner/work/nim-waku/nim-waku/vendor/nimcrypto/nimcrypto/sysrand.nim"
res = syscall(((NI) 318), (&data_1), ((NI) 1), ((NI) 1));
#line 119 "/home/runner/work/nim-waku/nim-waku/vendor/nimcrypto/nimcrypto/sysrand.nim"
{ NI32 err_1;
#line 119 "/home/runner/work/nim-waku/nim-waku/vendor/nimcrypto/nimcrypto/sysrand.nim"
if (!(res == ((NI) -1))) goto LA8_;
#line 120 "/home/runner/work/nim-waku/nim-waku/vendor/nimcrypto/nimcrypto/sysrand.nim"
#line 120 "/home/runner/work/nim-waku/nim-waku/vendor/nimcrypto/nimcrypto/sysrand.nim"
#line 120 "/home/runner/work/nim-waku/nim-waku/vendor/nimcrypto/nimcrypto/sysrand.nim"
err_1 = osLastError__9bUWNxbcGnToMWA9b79aTXLIw();
#line 121 "/home/runner/work/nim-waku/nim-waku/vendor/nimcrypto/nimcrypto/sysrand.nim"
{ NIM_BOOL T12_;
#line 121 "/home/runner/work/nim-waku/nim-waku/vendor/nimcrypto/nimcrypto/sysrand.nim"
T12_ = (NIM_BOOL)0;
#line 121 "/home/runner/work/nim-waku/nim-waku/vendor/nimcrypto/nimcrypto/sysrand.nim"
T12_ = (err_1 == ((int) 38)); if (T12_) goto LA13_;
#line 121 "/home/runner/work/nim-waku/nim-waku/vendor/nimcrypto/nimcrypto/sysrand.nim"
T12_ = (err_1 == ((int) 1)); LA13_: ;
if (!T12_) goto LA14_;
#line 122 "/home/runner/work/nim-waku/nim-waku/vendor/nimcrypto/nimcrypto/sysrand.nim"
(*result).getRandomPresent = NIM_FALSE; }
LA14_: ;
}
LA8_: ;
}
LA4_: ;
return result;}
#line 425 "/home/runner/work/nim-waku/nim-waku/vendor/nimbus-build-system/vendor/Nim/lib/system/arithmetics.nim"
static N_INLINE(NI, pluspercent___dgYAo7RfdUVVpvkfKDym8wsystem)(NI x, NI y) { NI result; result = (NI)0;
#line 426 "/home/runner/work/nim-waku/nim-waku/vendor/nimbus-build-system/vendor/Nim/lib/system/arithmetics.nim"
#line 430 "/home/runner/work/nim-waku/nim-waku/vendor/nimbus-build-system/vendor/Nim/lib/system/arithmetics.nim"
result = ((NI) ((NU)((NU64)(((NU) (x))) + (NU64)(((NU) (y)))))); return result;}
#line 182 "/home/runner/work/nim-waku/nim-waku/vendor/nimbus-build-system/vendor/Nim/lib/system/gc.nim"
static N_INLINE(void, incRef__AT1eRuflKWyTTBdLjEDZbg_3system)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c) {
#line 184 "/home/runner/work/nim-waku/nim-waku/vendor/nimbus-build-system/vendor/Nim/lib/system/gc.nim"
#line 184 "/home/runner/work/nim-waku/nim-waku/vendor/nimbus-build-system/vendor/Nim/lib/system/gc.nim"
(*c).refcount = pluspercent___dgYAo7RfdUVVpvkfKDym8wsystem((*c).refcount, ((NI) 8));}
#line 436 "/home/runner/work/nim-waku/nim-waku/vendor/nimbus-build-system/vendor/Nim/lib/system/arithmetics.nim"
static N_INLINE(NI, minuspercent___dgYAo7RfdUVVpvkfKDym8w_2system)(NI x, NI y) { NI result; result = (NI)0;
#line 437 "/home/runner/work/nim-waku/nim-waku/vendor/nimbus-build-system/vendor/Nim/lib/system/arithmetics.nim"
#line 441 "/home/runner/work/nim-waku/nim-waku/vendor/nimbus-build-system/vendor/Nim/lib/system/arithmetics.nim"
result = ((NI) ((NU)((NU64)(((NU) (x))) - (NU64)(((NU) (y)))))); return result;}
#line 128 "/home/runner/work/nim-waku/nim-waku/vendor/nimbus-build-system/vendor/Nim/lib/system/gc.nim"
static N_INLINE(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*, usrToCell__QFQqcLB3lgOdwipkv9a60xwsystem)(void* usr) { tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* result; NI T1_; result = (tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*)0;
#line 130 "/home/runner/work/nim-waku/nim-waku/vendor/nimbus-build-system/vendor/Nim/lib/system/gc.nim"
#line 130 "/home/runner/work/nim-waku/nim-waku/vendor/nimbus-build-system/vendor/Nim/lib/system/gc.nim"
#line 130 "/home/runner/work/nim-waku/nim-waku/vendor/nimbus-build-system/vendor/Nim/lib/system/gc.nim"
T1_ = (NI)0; T1_ = minuspercent___dgYAo7RfdUVVpvkfKDym8w_2system(((NI) (ptrdiff_t) (usr)), ((NI) 16)); result = ((tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*) (T1_)); return result;}
#line 187 "/home/runner/work/nim-waku/nim-waku/vendor/nimbus-build-system/vendor/Nim/lib/system/comparisons.nim"
static N_INLINE(NIM_BOOL, ltpercent___hPljn3JCDQ00ua1R07X9bxQsystem)(NI x, NI y) { NIM_BOOL result; result = (NIM_BOOL)0;
#line 188 "/home/runner/work/nim-waku/nim-waku/vendor/nimbus-build-system/vendor/Nim/lib/system/comparisons.nim"
#line 190 "/home/runner/work/nim-waku/nim-waku/vendor/nimbus-build-system/vendor/Nim/lib/system/comparisons.nim"
result = ((NU64)(((NU) (x))) < (NU64)(((NU) (y)))); return result;}
#line 194 "/home/runner/work/nim-waku/nim-waku/vendor/nimbus-build-system/vendor/Nim/lib/system/gc.nim"
static N_INLINE(void, rtlAddZCT__AT1eRuflKWyTTBdLjEDZbg_2system)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c) {
#line 196 "/home/runner/work/nim-waku/nim-waku/vendor/nimbus-build-system/vendor/Nim/lib/system/gc.nim"
#line 196 "/home/runner/work/nim-waku/nim-waku/vendor/nimbus-build-system/vendor/Nim/lib/system/gc.nim"
addZCT__Y66tOYFjgwJ0k4aLz4bc0Q((&gch__IcYaEuuWivYAS86vFMTS3Q.zct), c);
}
#line 198 "/home/runner/work/nim-waku/nim-waku/vendor/nimbus-build-system/vendor/Nim/lib/system/gc.nim"
static N_INLINE(void, decRef__AT1eRuflKWyTTBdLjEDZbgsystem)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c) {
#line 201 "/home/runner/work/nim-waku/nim-waku/vendor/nimbus-build-system/vendor/Nim/lib/system/gc.nim"
#line 201 "/home/runner/work/nim-waku/nim-waku/vendor/nimbus-build-system/vendor/Nim/lib/system/gc.nim"
(*c).refcount = minuspercent___dgYAo7RfdUVVpvkfKDym8w_2system((*c).refcount, ((NI) 8));
#line 202 "/home/runner/work/nim-waku/nim-waku/vendor/nimbus-build-system/vendor/Nim/lib/system/gc.nim"
{ NIM_BOOL T3_;
#line 202 "/home/runner/work/nim-waku/nim-waku/vendor/nimbus-build-system/vendor/Nim/lib/system/gc.nim"
#line 202 "/home/runner/work/nim-waku/nim-waku/vendor/nimbus-build-system/vendor/Nim/lib/system/gc.nim"
T3_ = (NIM_BOOL)0; T3_ = ltpercent___hPljn3JCDQ00ua1R07X9bxQsystem((*c).refcount, ((NI) 8)); if (!T3_) goto LA4_;
#line 203 "/home/runner/work/nim-waku/nim-waku/vendor/nimbus-build-system/vendor/Nim/lib/system/gc.nim"
#line 203 "/home/runner/work/nim-waku/nim-waku/vendor/nimbus-build-system/vendor/Nim/lib/system/gc.nim"
rtlAddZCT__AT1eRuflKWyTTBdLjEDZbg_2system(c);
}
LA4_: ;
}
#line 235 "/home/runner/work/nim-waku/nim-waku/vendor/nimbus-build-system/vendor/Nim/lib/system/gc.nim"
static N_INLINE(void, asgnRef)(void** dest, void* src) {
#line 239 "/home/runner/work/nim-waku/nim-waku/vendor/nimbus-build-system/vendor/Nim/lib/system/gc.nim"
{ tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* T5_;
#line 239 "/home/runner/work/nim-waku/nim-waku/vendor/nimbus-build-system/vendor/Nim/lib/system/gc.nim"
#line 239 "/home/runner/work/nim-waku/nim-waku/vendor/nimbus-build-system/vendor/Nim/lib/system/gc.nim"
if (!!((src == NIM_NIL))) goto LA3_;
#line 239 "/home/runner/work/nim-waku/nim-waku/vendor/nimbus-build-system/vendor/Nim/lib/system/gc.nim"
#line 239 "/home/runner/work/nim-waku/nim-waku/vendor/nimbus-build-system/vendor/Nim/lib/system/gc.nim"
#line 239 "/home/runner/work/nim-waku/nim-waku/vendor/nimbus-build-system/vendor/Nim/lib/system/gc.nim"
T5_ = (tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*)0; T5_ = usrToCell__QFQqcLB3lgOdwipkv9a60xwsystem(src);
#line 239 "/home/runner/work/nim-waku/nim-waku/vendor/nimbus-build-system/vendor/Nim/lib/system/gc.nim"
incRef__AT1eRuflKWyTTBdLjEDZbg_3system(T5_);
}
LA3_: ;
#line 240 "/home/runner/work/nim-waku/nim-waku/vendor/nimbus-build-system/vendor/Nim/lib/system/gc.nim"
{ tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* T10_;
#line 240 "/home/runner/work/nim-waku/nim-waku/vendor/nimbus-build-system/vendor/Nim/lib/system/gc.nim"
#line 240 "/home/runner/work/nim-waku/nim-waku/vendor/nimbus-build-system/vendor/Nim/lib/system/gc.nim"
if (!!(((*dest) == NIM_NIL))) goto LA8_;
#line 240 "/home/runner/work/nim-waku/nim-waku/vendor/nimbus-build-system/vendor/Nim/lib/system/gc.nim"
#line 240 "/home/runner/work/nim-waku/nim-waku/vendor/nimbus-build-system/vendor/Nim/lib/system/gc.nim"
#line 240 "/home/runner/work/nim-waku/nim-waku/vendor/nimbus-build-system/vendor/Nim/lib/system/gc.nim"
T10_ = (tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*)0; T10_ = usrToCell__QFQqcLB3lgOdwipkv9a60xwsystem((*dest));
#line 240 "/home/runner/work/nim-waku/nim-waku/vendor/nimbus-build-system/vendor/Nim/lib/system/gc.nim"
decRef__AT1eRuflKWyTTBdLjEDZbgsystem(T10_);
}
LA8_: ;
#line 241 "/home/runner/work/nim-waku/nim-waku/vendor/nimbus-build-system/vendor/Nim/lib/system/gc.nim"
(*dest) = src;}
#line 124 "/home/runner/work/nim-waku/nim-waku/vendor/nimcrypto/nimcrypto/sysrand.nim"
N_LIB_PRIVATE N_NIMCALL(tyObject_SystemRngcolonObjectType___X9aKjcE9bDr41cpowCIZoGpQ*, getSystemRNG__Xh6FaFF3QBAhrvIwBGi9b2A)(void) { tyObject_SystemRngcolonObjectType___X9aKjcE9bDr41cpowCIZoGpQ* result; result = (tyObject_SystemRngcolonObjectType___X9aKjcE9bDr41cpowCIZoGpQ*)0;
#line 125 "/home/runner/work/nim-waku/nim-waku/vendor/nimcrypto/nimcrypto/sysrand.nim"
{
#line 125 "/home/runner/work/nim-waku/nim-waku/vendor/nimcrypto/nimcrypto/sysrand.nim"
if (!(gSystemRng__Y05jRhSnzojCnuG6DrEsCw == 0)) goto LA3_;
#line 125 "/home/runner/work/nim-waku/nim-waku/vendor/nimcrypto/nimcrypto/sysrand.nim"
#line 125 "/home/runner/work/nim-waku/nim-waku/vendor/nimcrypto/nimcrypto/sysrand.nim"
asgnRef((void**) (&gSystemRng__Y05jRhSnzojCnuG6DrEsCw), newSystemRNG__Xh6FaFF3QBAhrvIwBGi9b2A_2()); }
LA3_: ;
#line 126 "/home/runner/work/nim-waku/nim-waku/vendor/nimcrypto/nimcrypto/sysrand.nim"
result = gSystemRng__Y05jRhSnzojCnuG6DrEsCw; return result;}
#line 22 "/home/runner/work/nim-waku/nim-waku/vendor/nimbus-build-system/vendor/Nim/lib/system/memory.nim"
static N_INLINE(void, nimSetMem__zxfKBYntu9cBapkhrCOk1fgmemory)(void* a, int v, NI size) { void* T1_;
#line 24 "/home/runner/work/nim-waku/nim-waku/vendor/nimbus-build-system/vendor/Nim/lib/system/memory.nim"
#line 24 "/home/runner/work/nim-waku/nim-waku/vendor/nimbus-build-system/vendor/Nim/lib/system/memory.nim"
T1_ = (void*)0; T1_ = memset(a, v, ((size_t) (size)));}
#line 33 "/home/runner/work/nim-waku/nim-waku/vendor/nimbus-build-system/vendor/Nim/lib/system/memory.nim"
static N_INLINE(void, nimZeroMem)(void* p, NI size) {
#line 34 "/home/runner/work/nim-waku/nim-waku/vendor/nimbus-build-system/vendor/Nim/lib/system/memory.nim"
#line 34 "/home/runner/work/nim-waku/nim-waku/vendor/nimbus-build-system/vendor/Nim/lib/system/memory.nim"
nimSetMem__zxfKBYntu9cBapkhrCOk1fgmemory(p, ((int) 0), size);
}
#line 32 "/home/runner/work/nim-waku/nim-waku/vendor/nimcrypto/nimcrypto/sysrand.nim"
N_LIB_PRIVATE N_NIMCALL(NI, urandomRead__UM3sBU6rTPA1QdWJMlWQcg_2)(void* pbytes, NI nbytes) { NI result; struct stat st_1; int fd; result = (NI)0;
#line 33 "/home/runner/work/nim-waku/nim-waku/vendor/nimcrypto/nimcrypto/sysrand.nim"
result = ((NI) -1); nimZeroMem((void*)(&st_1), sizeof(struct stat));
#line 35 "/home/runner/work/nim-waku/nim-waku/vendor/nimcrypto/nimcrypto/sysrand.nim"
#line 35 "/home/runner/work/nim-waku/nim-waku/vendor/nimcrypto/nimcrypto/sysrand.nim"
fd = open("/dev/urandom", ((int) 0));
#line 36 "/home/runner/work/nim-waku/nim-waku/vendor/nimcrypto/nimcrypto/sysrand.nim"
{ int T27_;
#line 36 "/home/runner/work/nim-waku/nim-waku/vendor/nimcrypto/nimcrypto/sysrand.nim"
#line 36 "/home/runner/work/nim-waku/nim-waku/vendor/nimcrypto/nimcrypto/sysrand.nim"
if (!!((fd == ((NI32) -1)))) goto LA3_;
#line 37 "/home/runner/work/nim-waku/nim-waku/vendor/nimcrypto/nimcrypto/sysrand.nim"
{ NIM_BOOL T7_; int T8_;
#line 37 "/home/runner/work/nim-waku/nim-waku/vendor/nimcrypto/nimcrypto/sysrand.nim"
T7_ = (NIM_BOOL)0;
#line 37 "/home/runner/work/nim-waku/nim-waku/vendor/nimcrypto/nimcrypto/sysrand.nim"
#line 37 "/home/runner/work/nim-waku/nim-waku/vendor/nimcrypto/nimcrypto/sysrand.nim"
#line 37 "/home/runner/work/nim-waku/nim-waku/vendor/nimcrypto/nimcrypto/sysrand.nim"
#line 37 "/home/runner/work/nim-waku/nim-waku/vendor/nimcrypto/nimcrypto/sysrand.nim"
T8_ = (int)0; T8_ = fstat(fd, (&st_1)); T7_ = !((T8_ == ((NI32) -1))); if (!(T7_)) goto LA9_;
#line 37 "/home/runner/work/nim-waku/nim-waku/vendor/nimcrypto/nimcrypto/sysrand.nim"
#line 37 "/home/runner/work/nim-waku/nim-waku/vendor/nimcrypto/nimcrypto/sysrand.nim"
T7_ = S_ISCHR(st_1.st_mode); LA9_: ;
if (!T7_) goto LA10_;
#line 38 "/home/runner/work/nim-waku/nim-waku/vendor/nimcrypto/nimcrypto/sysrand.nim"
result = ((NI) 0); {
#line 39 "/home/runner/work/nim-waku/nim-waku/vendor/nimcrypto/nimcrypto/sysrand.nim"
while (1) { void* p_1; NI res; NI TM__Wf79cOmDFYPhaz9b70xI2wvQ_6;
#line 39 "/home/runner/work/nim-waku/nim-waku/vendor/nimcrypto/nimcrypto/sysrand.nim"
if (!(result < nbytes)) goto LA13;
#line 40 "/home/runner/work/nim-waku/nim-waku/vendor/nimcrypto/nimcrypto/sysrand.nim"
#line 40 "/home/runner/work/nim-waku/nim-waku/vendor/nimcrypto/nimcrypto/sysrand.nim"
p_1 = ((void*) ((NU)((NU64)(((NU) (ptrdiff_t) (pbytes))) + (NU64)(((NU) (result))))));
#line 41 "/home/runner/work/nim-waku/nim-waku/vendor/nimcrypto/nimcrypto/sysrand.nim"
#line 41 "/home/runner/work/nim-waku/nim-waku/vendor/nimcrypto/nimcrypto/sysrand.nim"
if (nimSubInt(nbytes, result, &TM__Wf79cOmDFYPhaz9b70xI2wvQ_6)) { raiseOverflow(); };
#line 41 "/home/runner/work/nim-waku/nim-waku/vendor/nimcrypto/nimcrypto/sysrand.nim"
res = read(fd, p_1, (NI)(TM__Wf79cOmDFYPhaz9b70xI2wvQ_6));
#line 42 "/home/runner/work/nim-waku/nim-waku/vendor/nimcrypto/nimcrypto/sysrand.nim"
{ NI TM__Wf79cOmDFYPhaz9b70xI2wvQ_7;
#line 42 "/home/runner/work/nim-waku/nim-waku/vendor/nimcrypto/nimcrypto/sysrand.nim"
if (!(((NI) 0) < res)) goto LA16_;
#line 43 "/home/runner/work/nim-waku/nim-waku/vendor/nimcrypto/nimcrypto/sysrand.nim"
if (nimAddInt(result, res, &TM__Wf79cOmDFYPhaz9b70xI2wvQ_7)) { raiseOverflow(); }; result = (NI)(TM__Wf79cOmDFYPhaz9b70xI2wvQ_7); }
goto LA14_;
LA16_: ;
{
#line 44 "/home/runner/work/nim-waku/nim-waku/vendor/nimcrypto/nimcrypto/sysrand.nim"
if (!(res == ((NI) 0))) goto LA19_;
#line 45 "/home/runner/work/nim-waku/nim-waku/vendor/nimcrypto/nimcrypto/sysrand.nim"
goto LA12;
}
goto LA14_;
LA19_: ;
{
#line 47 "/home/runner/work/nim-waku/nim-waku/vendor/nimcrypto/nimcrypto/sysrand.nim"
{ NI32 T24_;
#line 47 "/home/runner/work/nim-waku/nim-waku/vendor/nimcrypto/nimcrypto/sysrand.nim"
#line 47 "/home/runner/work/nim-waku/nim-waku/vendor/nimcrypto/nimcrypto/sysrand.nim"
#line 47 "/home/runner/work/nim-waku/nim-waku/vendor/nimcrypto/nimcrypto/sysrand.nim"
#line 47 "/home/runner/work/nim-waku/nim-waku/vendor/nimcrypto/nimcrypto/sysrand.nim"
T24_ = (NI32)0; T24_ = osLastError__9bUWNxbcGnToMWA9b79aTXLIw(); if (!!((T24_ == ((int) 4)))) goto LA25_;
#line 48 "/home/runner/work/nim-waku/nim-waku/vendor/nimcrypto/nimcrypto/sysrand.nim"
result = ((NI) -1);
#line 49 "/home/runner/work/nim-waku/nim-waku/vendor/nimcrypto/nimcrypto/sysrand.nim"
goto LA12;
}
LA25_: ;
}
LA14_: ;
} LA13: ;
} LA12: ;
}
LA10_: ;
#line 50 "/home/runner/work/nim-waku/nim-waku/vendor/nimcrypto/nimcrypto/sysrand.nim"
#line 50 "/home/runner/work/nim-waku/nim-waku/vendor/nimcrypto/nimcrypto/sysrand.nim"
#line 50 "/home/runner/work/nim-waku/nim-waku/vendor/nimcrypto/nimcrypto/sysrand.nim"
T27_ = (int)0; T27_ = close(fd); (void)(T27_);
}
LA3_: ;
return result;}
#line 128 "/home/runner/work/nim-waku/nim-waku/vendor/nimcrypto/nimcrypto/sysrand.nim"
N_LIB_PRIVATE N_NIMCALL(NI, randomBytes__UM3sBU6rTPA1QdWJMlWQcg)(void* pbytes, NI nbytes) { NI result; void* p_1; tyObject_SystemRngcolonObjectType___X9aKjcE9bDr41cpowCIZoGpQ* srng; result = (NI)0; p_1 = (void*)0;
#line 130 "/home/runner/work/nim-waku/nim-waku/vendor/nimcrypto/nimcrypto/sysrand.nim"
#line 130 "/home/runner/work/nim-waku/nim-waku/vendor/nimcrypto/nimcrypto/sysrand.nim"
srng = getSystemRNG__Xh6FaFF3QBAhrvIwBGi9b2A();
#line 131 "/home/runner/work/nim-waku/nim-waku/vendor/nimcrypto/nimcrypto/sysrand.nim"
{ if (!(*srng).getRandomPresent) goto LA3_;
{
#line 132 "/home/runner/work/nim-waku/nim-waku/vendor/nimcrypto/nimcrypto/sysrand.nim"
while (1) { long res; NI TM__Wf79cOmDFYPhaz9b70xI2wvQ_4;
#line 132 "/home/runner/work/nim-waku/nim-waku/vendor/nimcrypto/nimcrypto/sysrand.nim"
if (!(result < nbytes)) goto LA6;
#line 133 "/home/runner/work/nim-waku/nim-waku/vendor/nimcrypto/nimcrypto/sysrand.nim"
#line 133 "/home/runner/work/nim-waku/nim-waku/vendor/nimcrypto/nimcrypto/sysrand.nim"
p_1 = ((void*) ((NU)((NU64)(((NU) (ptrdiff_t) (pbytes))) + (NU64)(((NU) (result))))));
#line 134 "/home/runner/work/nim-waku/nim-waku/vendor/nimcrypto/nimcrypto/sysrand.nim"
#line 134 "/home/runner/work/nim-waku/nim-waku/vendor/nimcrypto/nimcrypto/sysrand.nim"
if (nimSubInt(nbytes, result, &TM__Wf79cOmDFYPhaz9b70xI2wvQ_4)) { raiseOverflow(); };
#line 134 "/home/runner/work/nim-waku/nim-waku/vendor/nimcrypto/nimcrypto/sysrand.nim"
res = syscall(((NI) 318), pbytes, (NI)(TM__Wf79cOmDFYPhaz9b70xI2wvQ_4), ((NI) 0));
#line 135 "/home/runner/work/nim-waku/nim-waku/vendor/nimcrypto/nimcrypto/sysrand.nim"
{ NI TM__Wf79cOmDFYPhaz9b70xI2wvQ_5;
#line 135 "/home/runner/work/nim-waku/nim-waku/vendor/nimcrypto/nimcrypto/sysrand.nim"
if (!(((NI) 0) < res)) goto LA9_;
#line 136 "/home/runner/work/nim-waku/nim-waku/vendor/nimcrypto/nimcrypto/sysrand.nim"
if (nimAddInt(result, res, &TM__Wf79cOmDFYPhaz9b70xI2wvQ_5)) { raiseOverflow(); }; result = (NI)(TM__Wf79cOmDFYPhaz9b70xI2wvQ_5); }
goto LA7_;
LA9_: ;
{
#line 137 "/home/runner/work/nim-waku/nim-waku/vendor/nimcrypto/nimcrypto/sysrand.nim"
if (!(res == ((NI) 0))) goto LA12_;
#line 138 "/home/runner/work/nim-waku/nim-waku/vendor/nimcrypto/nimcrypto/sysrand.nim"
goto LA5;
}
goto LA7_;
LA12_: ;
{
#line 140 "/home/runner/work/nim-waku/nim-waku/vendor/nimcrypto/nimcrypto/sysrand.nim"
{ NI32 T17_;
#line 140 "/home/runner/work/nim-waku/nim-waku/vendor/nimcrypto/nimcrypto/sysrand.nim"
#line 140 "/home/runner/work/nim-waku/nim-waku/vendor/nimcrypto/nimcrypto/sysrand.nim"
#line 140 "/home/runner/work/nim-waku/nim-waku/vendor/nimcrypto/nimcrypto/sysrand.nim"
#line 140 "/home/runner/work/nim-waku/nim-waku/vendor/nimcrypto/nimcrypto/sysrand.nim"
T17_ = (NI32)0; T17_ = osLastError__9bUWNxbcGnToMWA9b79aTXLIw(); if (!!((T17_ == ((int) 4)))) goto LA18_;
#line 141 "/home/runner/work/nim-waku/nim-waku/vendor/nimcrypto/nimcrypto/sysrand.nim"
result = ((NI) -1);
#line 142 "/home/runner/work/nim-waku/nim-waku/vendor/nimcrypto/nimcrypto/sysrand.nim"
goto LA5;
}
LA18_: ;
}
LA7_: ;
} LA6: ;
} LA5: ;
#line 144 "/home/runner/work/nim-waku/nim-waku/vendor/nimcrypto/nimcrypto/sysrand.nim"
{
#line 144 "/home/runner/work/nim-waku/nim-waku/vendor/nimcrypto/nimcrypto/sysrand.nim"
if (!(result == ((NI) -1))) goto LA22_;
#line 145 "/home/runner/work/nim-waku/nim-waku/vendor/nimcrypto/nimcrypto/sysrand.nim"
#line 145 "/home/runner/work/nim-waku/nim-waku/vendor/nimcrypto/nimcrypto/sysrand.nim"
result = urandomRead__UM3sBU6rTPA1QdWJMlWQcg_2(pbytes, nbytes); }
goto LA20_;
LA22_: ;
{ NI res_2; NI TM__Wf79cOmDFYPhaz9b70xI2wvQ_8;
#line 146 "/home/runner/work/nim-waku/nim-waku/vendor/nimcrypto/nimcrypto/sysrand.nim"
if (!(result < nbytes)) goto LA25_;
#line 147 "/home/runner/work/nim-waku/nim-waku/vendor/nimcrypto/nimcrypto/sysrand.nim"
#line 147 "/home/runner/work/nim-waku/nim-waku/vendor/nimcrypto/nimcrypto/sysrand.nim"
p_1 = ((void*) ((NU)((NU64)(((NU) (ptrdiff_t) (pbytes))) + (NU64)(((NU) (result))))));
#line 148 "/home/runner/work/nim-waku/nim-waku/vendor/nimcrypto/nimcrypto/sysrand.nim"
#line 148 "/home/runner/work/nim-waku/nim-waku/vendor/nimcrypto/nimcrypto/sysrand.nim"
if (nimSubInt(nbytes, result, &TM__Wf79cOmDFYPhaz9b70xI2wvQ_8)) { raiseOverflow(); };
#line 148 "/home/runner/work/nim-waku/nim-waku/vendor/nimcrypto/nimcrypto/sysrand.nim"
res_2 = urandomRead__UM3sBU6rTPA1QdWJMlWQcg_2(p_1, (NI)(TM__Wf79cOmDFYPhaz9b70xI2wvQ_8));
#line 149 "/home/runner/work/nim-waku/nim-waku/vendor/nimcrypto/nimcrypto/sysrand.nim"
{ NI TM__Wf79cOmDFYPhaz9b70xI2wvQ_9;
#line 149 "/home/runner/work/nim-waku/nim-waku/vendor/nimcrypto/nimcrypto/sysrand.nim"
#line 149 "/home/runner/work/nim-waku/nim-waku/vendor/nimcrypto/nimcrypto/sysrand.nim"
if (!!((res_2 == ((NI) -1)))) goto LA29_;
#line 150 "/home/runner/work/nim-waku/nim-waku/vendor/nimcrypto/nimcrypto/sysrand.nim"
if (nimAddInt(result, res_2, &TM__Wf79cOmDFYPhaz9b70xI2wvQ_9)) { raiseOverflow(); }; result = (NI)(TM__Wf79cOmDFYPhaz9b70xI2wvQ_9); }
LA29_: ;
}
goto LA20_;
LA25_: ;
LA20_: ;
}
goto LA1_;
LA3_: ;
{
#line 152 "/home/runner/work/nim-waku/nim-waku/vendor/nimcrypto/nimcrypto/sysrand.nim"
#line 152 "/home/runner/work/nim-waku/nim-waku/vendor/nimcrypto/nimcrypto/sysrand.nim"
result = urandomRead__UM3sBU6rTPA1QdWJMlWQcg_2(pbytes, nbytes); }
LA1_: ;
return result;}
#line 122 "/home/runner/work/nim-waku/nim-waku/vendor/nimbus-build-system/vendor/Nim/lib/system/integerops.nim"
static N_INLINE(NIM_BOOL, nimDivInt)(NI a, NI b, NI* res) { NIM_BOOL result; result = (NIM_BOOL)0;
#line 117 "/home/runner/work/nim-waku/nim-waku/vendor/nimbus-build-system/vendor/Nim/lib/system/integerops.nim"
{ NIM_BOOL T3_;
#line 117 "/home/runner/work/nim-waku/nim-waku/vendor/nimbus-build-system/vendor/Nim/lib/system/integerops.nim"
T3_ = (NIM_BOOL)0;
#line 117 "/home/runner/work/nim-waku/nim-waku/vendor/nimbus-build-system/vendor/Nim/lib/system/integerops.nim"
T3_ = (a == ((NI) (IL64(-9223372036854775807) - IL64(1)))); if (!(T3_)) goto LA4_;
#line 117 "/home/runner/work/nim-waku/nim-waku/vendor/nimbus-build-system/vendor/Nim/lib/system/integerops.nim"
T3_ = (b == ((NI) -1)); LA4_: ;
if (!T3_) goto LA5_;
#line 118 "/home/runner/work/nim-waku/nim-waku/vendor/nimbus-build-system/vendor/Nim/lib/system/integerops.nim"
result = NIM_TRUE; }
goto LA1_;
LA5_: ;
{
#line 120 "/home/runner/work/nim-waku/nim-waku/vendor/nimbus-build-system/vendor/Nim/lib/system/integerops.nim"
#line 120 "/home/runner/work/nim-waku/nim-waku/vendor/nimbus-build-system/vendor/Nim/lib/system/integerops.nim"
(*res) = (NI)(a / b); }
LA1_: ;
return result;}
#line 284 "/home/runner/work/nim-waku/nim-waku/vendor/nimcrypto/nimcrypto/sysrand.nim"
N_LIB_PRIVATE N_NIMCALL(NI, randomBytes__o9bk9cRUbi3BQ7RAyCHohjsw)(NU8* bytes, NI bytesLen_0) { NI result; NI length; NI TM__Wf79cOmDFYPhaz9b70xI2wvQ_3; result = (NI)0;
#line 285 "/home/runner/work/nim-waku/nim-waku/vendor/nimcrypto/nimcrypto/sysrand.nim"
#line 285 "/home/runner/work/nim-waku/nim-waku/vendor/nimcrypto/nimcrypto/sysrand.nim"
#line 285 "/home/runner/work/nim-waku/nim-waku/vendor/nimcrypto/nimcrypto/sysrand.nim"
if (nimMulInt(bytesLen_0, ((NI) 1), &TM__Wf79cOmDFYPhaz9b70xI2wvQ_3)) { raiseOverflow(); }; length = (NI)(TM__Wf79cOmDFYPhaz9b70xI2wvQ_3);
#line 286 "/home/runner/work/nim-waku/nim-waku/vendor/nimcrypto/nimcrypto/sysrand.nim"
{
#line 286 "/home/runner/work/nim-waku/nim-waku/vendor/nimcrypto/nimcrypto/sysrand.nim"
if (!(((NI) 0) < length)) goto LA3_;
#line 287 "/home/runner/work/nim-waku/nim-waku/vendor/nimcrypto/nimcrypto/sysrand.nim"
if ((NU)(((NI) 0)) >= (NU)(bytesLen_0)){ raiseIndexError2(((NI) 0),bytesLen_0-1); }
#line 287 "/home/runner/work/nim-waku/nim-waku/vendor/nimcrypto/nimcrypto/sysrand.nim"
result = randomBytes__UM3sBU6rTPA1QdWJMlWQcg(((void*) ((&bytes[((NI) 0)]))), length);
#line 288 "/home/runner/work/nim-waku/nim-waku/vendor/nimcrypto/nimcrypto/sysrand.nim"
{ NI TM__Wf79cOmDFYPhaz9b70xI2wvQ_10;
#line 288 "/home/runner/work/nim-waku/nim-waku/vendor/nimcrypto/nimcrypto/sysrand.nim"
#line 288 "/home/runner/work/nim-waku/nim-waku/vendor/nimcrypto/nimcrypto/sysrand.nim"
if (!!((result == ((NI) -1)))) goto LA7_;
#line 289 "/home/runner/work/nim-waku/nim-waku/vendor/nimcrypto/nimcrypto/sysrand.nim"
#line 289 "/home/runner/work/nim-waku/nim-waku/vendor/nimcrypto/nimcrypto/sysrand.nim"
if (((NI) 1) == 0){ raiseDivByZero(); } if (nimDivInt(result, ((NI) 1), &TM__Wf79cOmDFYPhaz9b70xI2wvQ_10)) { raiseOverflow(); }; result = (NI)(TM__Wf79cOmDFYPhaz9b70xI2wvQ_10); }
LA7_: ;
}
LA3_: ;
return result;}
N_LIB_PRIVATE N_NIMCALL(void, nimcrypto_sysrandInit000)(void) {
#line 999999 "generated_not_to_break_here"
{
nimRegisterThreadLocalMarker(TM__Wf79cOmDFYPhaz9b70xI2wvQ_2);}
}
N_LIB_PRIVATE N_NIMCALL(void, nimcrypto_sysrandDatInit000)(void) {
#line 999999 "generated_not_to_break_here"
static TNimNode TM__Wf79cOmDFYPhaz9b70xI2wvQ_0[1];NTI__X9aKjcE9bDr41cpowCIZoGpQ_.size = sizeof(tyObject_SystemRngcolonObjectType___X9aKjcE9bDr41cpowCIZoGpQ);
NTI__X9aKjcE9bDr41cpowCIZoGpQ_.kind = 17;
NTI__X9aKjcE9bDr41cpowCIZoGpQ_.base = (&NTI__ytyiCJqK439aF9cIibuRVpAg_);
NTI__X9aKjcE9bDr41cpowCIZoGpQ_.flags = 1;
NTI__X9aKjcE9bDr41cpowCIZoGpQ_.name = "SystemRng:ObjectType";
NTI__X9aKjcE9bDr41cpowCIZoGpQ_.nextType = nimTypeRoot; nimTypeRoot=&NTI__X9aKjcE9bDr41cpowCIZoGpQ_;
TM__Wf79cOmDFYPhaz9b70xI2wvQ_0[0].kind = 1;
TM__Wf79cOmDFYPhaz9b70xI2wvQ_0[0].offset = offsetof(tyObject_SystemRngcolonObjectType___X9aKjcE9bDr41cpowCIZoGpQ, getRandomPresent);
TM__Wf79cOmDFYPhaz9b70xI2wvQ_0[0].typ = (&NTI__VaVACK0bpYmqIQ0mKcHfQQ_);
TM__Wf79cOmDFYPhaz9b70xI2wvQ_0[0].name = "getRandomPresent";
NTI__X9aKjcE9bDr41cpowCIZoGpQ_.node = &TM__Wf79cOmDFYPhaz9b70xI2wvQ_0[0];
NTI__9aWCZSregXolmau8IgbwrpA_.size = sizeof(tyObject_SystemRngcolonObjectType___X9aKjcE9bDr41cpowCIZoGpQ*);
NTI__9aWCZSregXolmau8IgbwrpA_.kind = 22;
NTI__9aWCZSregXolmau8IgbwrpA_.base = (&NTI__X9aKjcE9bDr41cpowCIZoGpQ_);
NTI__9aWCZSregXolmau8IgbwrpA_.name = "SystemRng";
NTI__9aWCZSregXolmau8IgbwrpA_.nextType = nimTypeRoot; nimTypeRoot=&NTI__9aWCZSregXolmau8IgbwrpA_;
NTI__9aWCZSregXolmau8IgbwrpA_.marker = Marker_tyRef__9aWCZSregXolmau8IgbwrpA;
}