Sigrid Solveig Haflínudóttirtruncate: use trunc, fix NaN and Inf casesc47cb9d1 year agoHistory
22 lines · 297 B · C
RawDownload
#include "platform.h" /* taken from musl */ doubletrunc(double x){	union {double f; u64int i;} u = {x};	int e = (int)(u.i >> 52 & 0x7ff) - 0x3ff + 12;	u64int m; 	if(e >= 52 + 12)		return x;	if(e < 12)		e = 1;	m = -1ULL >> e;	if((u.i & m) == 0)		return x;	u.i &= ~m; 	return u.f;}

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t