shithub: femtolisp

ref: b9ba6323e01dccbfcae1226e77b8c9b9677e67a9
dir: /llt/lltinit.c/

View raw version
#include "llt.h"

double D_PNAN, D_NNAN, D_PINF, D_NINF;
float F_PNAN, F_NNAN, F_PINF, F_NINF;

void
llt_init(void)
{
	D_PNAN = strtod("+NaN", nil);
	D_NNAN = strtod("-NaN", nil);
	D_PINF = strtod("+Inf", nil);
	D_NINF = strtod("-Inf", nil);

	*(uint32_t*)&F_PNAN = 0x7fc00000;
	*(uint32_t*)&F_NNAN = 0xffc00000;
	*(uint32_t*)&F_PINF = 0x7f800000;
	*(uint32_t*)&F_NINF = 0xff800000;

	randomize();
	ios_init_stdstreams();
}