Commit f71baa11 authored by Ralf Baechle's avatar Ralf Baechle

MIPS: math-emu: Inline ieee754sp_issnan and ieee754dp_issnan.

Shaves another 16 bytes off but more importantly avoids function calls.
Signed-off-by: default avatarRalf Baechle <ralf@linux-mips.org>
parent dfbf42b8
...@@ -40,7 +40,7 @@ int ieee754dp_isnan(union ieee754dp x) ...@@ -40,7 +40,7 @@ int ieee754dp_isnan(union ieee754dp x)
return ieee754dp_class(x) >= IEEE754_CLASS_SNAN; return ieee754dp_class(x) >= IEEE754_CLASS_SNAN;
} }
int ieee754dp_issnan(union ieee754dp x) static inline int ieee754dp_issnan(union ieee754dp x)
{ {
assert(ieee754dp_isnan(x)); assert(ieee754dp_isnan(x));
return ((DPMANT(x) & DP_MBIT(DP_FBITS-1)) == DP_MBIT(DP_FBITS-1)); return ((DPMANT(x) & DP_MBIT(DP_FBITS-1)) == DP_MBIT(DP_FBITS-1));
......
...@@ -81,7 +81,6 @@ static inline union ieee754dp builddp(int s, int bx, u64 m) ...@@ -81,7 +81,6 @@ static inline union ieee754dp builddp(int s, int bx, u64 m)
} }
extern int ieee754dp_isnan(union ieee754dp); extern int ieee754dp_isnan(union ieee754dp);
extern int ieee754dp_issnan(union ieee754dp);
extern int __cold ieee754si_xcpt(int, const char *, ...); extern int __cold ieee754si_xcpt(int, const char *, ...);
extern s64 __cold ieee754di_xcpt(s64, const char *, ...); extern s64 __cold ieee754di_xcpt(s64, const char *, ...);
extern union ieee754dp __cold ieee754dp_xcpt(union ieee754dp, const char *, ...); extern union ieee754dp __cold ieee754dp_xcpt(union ieee754dp, const char *, ...);
......
...@@ -40,7 +40,7 @@ int ieee754sp_isnan(union ieee754sp x) ...@@ -40,7 +40,7 @@ int ieee754sp_isnan(union ieee754sp x)
return ieee754sp_class(x) >= IEEE754_CLASS_SNAN; return ieee754sp_class(x) >= IEEE754_CLASS_SNAN;
} }
int ieee754sp_issnan(union ieee754sp x) static inline int ieee754sp_issnan(union ieee754sp x)
{ {
assert(ieee754sp_isnan(x)); assert(ieee754sp_isnan(x));
return (SPMANT(x) & SP_MBIT(SP_FBITS-1)); return (SPMANT(x) & SP_MBIT(SP_FBITS-1));
......
...@@ -87,7 +87,6 @@ static inline union ieee754sp buildsp(int s, int bx, unsigned m) ...@@ -87,7 +87,6 @@ static inline union ieee754sp buildsp(int s, int bx, unsigned m)
} }
extern int ieee754sp_isnan(union ieee754sp); extern int ieee754sp_isnan(union ieee754sp);
extern int ieee754sp_issnan(union ieee754sp);
extern int __cold ieee754si_xcpt(int, const char *, ...); extern int __cold ieee754si_xcpt(int, const char *, ...);
extern s64 __cold ieee754di_xcpt(s64, const char *, ...); extern s64 __cold ieee754di_xcpt(s64, const char *, ...);
extern union ieee754sp __cold ieee754sp_xcpt(union ieee754sp, const char *, ...); extern union ieee754sp __cold ieee754sp_xcpt(union ieee754sp, const char *, ...);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment