aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRalf Baechle2014-04-25 00:40:42 +0200
committerRalf Baechle2014-05-23 15:11:14 +0200
commitf71baa1168ec3440f51e616c107a6615f5d752f8 (patch)
treed3b73d7516ccd1694a441ac714913b0f685f5a8c
parentdfbf42b844a5f307bd66716da65f01be9107bc0b (diff)
MIPS: math-emu: Inline ieee754sp_issnan and ieee754dp_issnan.
Shaves another 16 bytes off but more importantly avoids function calls. Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
-rw-r--r--arch/mips/math-emu/ieee754dp.c2
-rw-r--r--arch/mips/math-emu/ieee754dp.h1
-rw-r--r--arch/mips/math-emu/ieee754sp.c2
-rw-r--r--arch/mips/math-emu/ieee754sp.h1
4 files changed, 2 insertions, 4 deletions
diff --git a/arch/mips/math-emu/ieee754dp.c b/arch/mips/math-emu/ieee754dp.c
index 50b1fbf753f4..d9ceb6bd3536 100644
--- a/arch/mips/math-emu/ieee754dp.c
+++ b/arch/mips/math-emu/ieee754dp.c
@@ -40,7 +40,7 @@ int ieee754dp_isnan(union ieee754dp x)
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));
return ((DPMANT(x) & DP_MBIT(DP_FBITS-1)) == DP_MBIT(DP_FBITS-1));
diff --git a/arch/mips/math-emu/ieee754dp.h b/arch/mips/math-emu/ieee754dp.h
index 830a0d55775b..179d249a627b 100644
--- a/arch/mips/math-emu/ieee754dp.h
+++ b/arch/mips/math-emu/ieee754dp.h
@@ -81,7 +81,6 @@ static inline union ieee754dp builddp(int s, int bx, u64 m)
}
extern int ieee754dp_isnan(union ieee754dp);
-extern int ieee754dp_issnan(union ieee754dp);
extern int __cold ieee754si_xcpt(int, const char *, ...);
extern s64 __cold ieee754di_xcpt(s64, const char *, ...);
extern union ieee754dp __cold ieee754dp_xcpt(union ieee754dp, const char *, ...);
diff --git a/arch/mips/math-emu/ieee754sp.c b/arch/mips/math-emu/ieee754sp.c
index 495295cef3d4..a90837a8cd85 100644
--- a/arch/mips/math-emu/ieee754sp.c
+++ b/arch/mips/math-emu/ieee754sp.c
@@ -40,7 +40,7 @@ int ieee754sp_isnan(union ieee754sp x)
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));
return (SPMANT(x) & SP_MBIT(SP_FBITS-1));
diff --git a/arch/mips/math-emu/ieee754sp.h b/arch/mips/math-emu/ieee754sp.h
index 95112052db6d..0b44569582b9 100644
--- a/arch/mips/math-emu/ieee754sp.h
+++ b/arch/mips/math-emu/ieee754sp.h
@@ -87,7 +87,6 @@ static inline union ieee754sp buildsp(int s, int bx, unsigned m)
}
extern int ieee754sp_isnan(union ieee754sp);
-extern int ieee754sp_issnan(union ieee754sp);
extern int __cold ieee754si_xcpt(int, const char *, ...);
extern s64 __cold ieee754di_xcpt(s64, const char *, ...);
extern union ieee754sp __cold ieee754sp_xcpt(union ieee754sp, const char *, ...);