MIPS: math-emu: Inline ieee754dp_finite and ieee754dp_finite().
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
This commit is contained in:
@@ -26,11 +26,6 @@
|
|||||||
|
|
||||||
#include "ieee754dp.h"
|
#include "ieee754dp.h"
|
||||||
|
|
||||||
int ieee754dp_finite(union ieee754dp x)
|
|
||||||
{
|
|
||||||
return DPBEXP(x) != DP_EMAX + 1 + DP_EBIAS;
|
|
||||||
}
|
|
||||||
|
|
||||||
union ieee754dp ieee754dp_copysign(union ieee754dp x, union ieee754dp y)
|
union ieee754dp ieee754dp_copysign(union ieee754dp x, union ieee754dp y)
|
||||||
{
|
{
|
||||||
ieee754_clearcx();
|
ieee754_clearcx();
|
||||||
|
|||||||
@@ -68,7 +68,6 @@ union ieee754sp {
|
|||||||
/*
|
/*
|
||||||
* single precision (often aka float)
|
* single precision (often aka float)
|
||||||
*/
|
*/
|
||||||
int ieee754sp_finite(union ieee754sp x);
|
|
||||||
int ieee754sp_class(union ieee754sp x);
|
int ieee754sp_class(union ieee754sp x);
|
||||||
|
|
||||||
union ieee754sp ieee754sp_abs(union ieee754sp x);
|
union ieee754sp ieee754sp_abs(union ieee754sp x);
|
||||||
@@ -112,7 +111,6 @@ union ieee754sp ieee754sp_sqrt(union ieee754sp x);
|
|||||||
/*
|
/*
|
||||||
* double precision (often aka double)
|
* double precision (often aka double)
|
||||||
*/
|
*/
|
||||||
int ieee754dp_finite(union ieee754dp x);
|
|
||||||
int ieee754dp_class(union ieee754dp x);
|
int ieee754dp_class(union ieee754dp x);
|
||||||
|
|
||||||
/* x with sign of y */
|
/* x with sign of y */
|
||||||
|
|||||||
@@ -44,6 +44,11 @@
|
|||||||
#define DPBEXP(dp) (dp.parts.bexp)
|
#define DPBEXP(dp) (dp.parts.bexp)
|
||||||
#define DPMANT(dp) (dp.parts.mant)
|
#define DPMANT(dp) (dp.parts.mant)
|
||||||
|
|
||||||
|
static inline int ieee754dp_finite(union ieee754dp x)
|
||||||
|
{
|
||||||
|
return DPBEXP(x) != DP_EMAX + 1 + DP_EBIAS;
|
||||||
|
}
|
||||||
|
|
||||||
/* 3bit extended double precision sticky right shift */
|
/* 3bit extended double precision sticky right shift */
|
||||||
#define XDPSRS(v,rs) \
|
#define XDPSRS(v,rs) \
|
||||||
((rs > (DP_FBITS+3))?1:((v) >> (rs)) | ((v) << (64-(rs)) != 0))
|
((rs > (DP_FBITS+3))?1:((v) >> (rs)) | ((v) << (64-(rs)) != 0))
|
||||||
|
|||||||
@@ -44,6 +44,11 @@
|
|||||||
#define SPBEXP(sp) (sp.parts.bexp)
|
#define SPBEXP(sp) (sp.parts.bexp)
|
||||||
#define SPMANT(sp) (sp.parts.mant)
|
#define SPMANT(sp) (sp.parts.mant)
|
||||||
|
|
||||||
|
static inline int ieee754sp_finite(union ieee754sp x)
|
||||||
|
{
|
||||||
|
return SPBEXP(x) != SP_EMAX + 1 + SP_EBIAS;
|
||||||
|
}
|
||||||
|
|
||||||
/* 3bit extended single precision sticky right shift */
|
/* 3bit extended single precision sticky right shift */
|
||||||
#define SPXSRSXn(rs) \
|
#define SPXSRSXn(rs) \
|
||||||
(xe += rs, \
|
(xe += rs, \
|
||||||
|
|||||||
@@ -26,11 +26,6 @@
|
|||||||
|
|
||||||
#include "ieee754sp.h"
|
#include "ieee754sp.h"
|
||||||
|
|
||||||
int ieee754sp_finite(union ieee754sp x)
|
|
||||||
{
|
|
||||||
return SPBEXP(x) != SP_EMAX + 1 + SP_EBIAS;
|
|
||||||
}
|
|
||||||
|
|
||||||
union ieee754sp ieee754sp_copysign(union ieee754sp x, union ieee754sp y)
|
union ieee754sp ieee754sp_copysign(union ieee754sp x, union ieee754sp y)
|
||||||
{
|
{
|
||||||
ieee754_clearcx();
|
ieee754_clearcx();
|
||||||
|
|||||||
Reference in New Issue
Block a user