Esempio n. 1
0
ieee754dp ieee754dp_funs(unsigned int u)
{
	if ((int) u < 0)
		return ieee754dp_add(ieee754dp_1e31(),
				     ieee754dp_fint(u & ~(1 << 31)));
	return ieee754dp_fint(u);
}
Esempio n. 2
0
ieee754dp ieee754dp_ceil(ieee754dp x)
{
	ieee754dp i;

	if (ieee754dp_gt(ieee754dp_modf(x, &i), ieee754dp_zero(0)))
		return ieee754dp_add(i, ieee754dp_one(0));
	else
		return i;
}
Esempio n. 3
0
union ieee754dp ieee754dp_abs(union ieee754dp x)
{
	unsigned int oldrm;
	union ieee754dp y;

	oldrm = ieee754_csr.rm;
	ieee754_csr.rm = FPU_CSR_RD;
	if (DPSIGN(x))
		y = ieee754dp_sub(ieee754dp_zero(0), x);
	else
		y = ieee754dp_add(ieee754dp_zero(0), x);
	ieee754_csr.rm = oldrm;
	return y;
}