This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
[PATCH mips] Do not compile mips16.S in soft-float mode
- From: "Steve Ellcey " <sellcey at mips dot com>
- To: <clm at codesourcery dot com>, <matthew dot fortune at imgtec dot com>, <echristo at gmail dot com>, <gcc-patches at gcc dot gnu dot org>
- Date: Fri, 8 Aug 2014 08:39:07 -0700
- Subject: [PATCH mips] Do not compile mips16.S in soft-float mode
- Authentication-results: sourceware.org; auth=none
This libgcc patch is the second of two patches needed to build GCC soft-float
multilibs when using the latest binutils. It skips assembling any of the code
in mips16.S when in soft-float mode because the code is not used when in
soft-float mode and because doing so generates errors during assembly (due to
using floating point registers in soft-float mode).
Tested with the mips-mti-linux-gnu toolchain.
Steve Ellcey
sellcey@mips.com
2014-08-08 Steve Ellcey <sellcey@mips.com>
* config/mips/mips16.S: Skip when __mips_soft_float is defined.
diff --git a/libgcc/config/mips/mips16.S b/libgcc/config/mips/mips16.S
index 6a43a98..150a23a 100644
--- a/libgcc/config/mips/mips16.S
+++ b/libgcc/config/mips/mips16.S
@@ -21,7 +21,7 @@ a copy of the GCC Runtime Library Exception along with this program;
see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
<http://www.gnu.org/licenses/>. */
-#ifdef __mips_micromips
+#if defined(__mips_micromips) || defined(__mips_soft_float)
/* DO NOTHING */
#else
@@ -749,4 +749,4 @@ CALL_STUB_RET (__mips16_call_stub_dc_10, 10, DC)
#endif /* !__mips_single_float */
#endif
-#endif /* __mips_micromips */
+#endif /* defined(__mips_micromips) || defined(__mips_soft_float) */