MIPS: math-emu: Inline ieee754sp_issnan and ieee754dp_issnan.
authorRalf Baechle <ralf@linux-mips.org>
Thu, 24 Apr 2014 22:40:42 +0000 (00:40 +0200)
committerRalf Baechle <ralf@linux-mips.org>
Fri, 23 May 2014 13:11:14 +0000 (15:11 +0200)
Shaves another 16 bytes off but more importantly avoids function calls.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
arch/mips/math-emu/ieee754dp.c
arch/mips/math-emu/ieee754dp.h
arch/mips/math-emu/ieee754sp.c
arch/mips/math-emu/ieee754sp.h

index 50b1fbf..d9ceb6b 100644 (file)
@@ -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));
index 830a0d5..179d249 100644 (file)
@@ -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 *, ...);
index 495295c..a90837a 100644 (file)
@@ -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));
index 9511205..0b44569 100644 (file)
@@ -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 *, ...);