> -----Original Message----- > From: Steve Ellcey [mailto:sell...@mips.com] > Subject: [PATCH mips] Do not compile mips16.S in soft-float mode > > 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. >
FWIW, this patch looks okay to me (although I can't approve it). Catherine > > 2014-08-08 Steve Ellcey <sell...@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) */