shithub: snippets

ref: 4b95f4f4f1f3caae8e09e16f9bcd4af303a33a8b
dir: snippets/lrint.c

View raw version
int
lrintf(float f)
{
	int i;

	*((float*)&i) = f + 12582912.0f;

	return (i & 0x7fffff) - 0x400000;
}

long
lrint(double d)
{
	long long l;

	*((double*)&l) = d + 6755399441055744.0;

	return l;
}