Robert Suchanek <robert.sucha...@imgtec.com> writes. > 2015-07-16 Prachi Godbole <prachi.godb...@imgtec.com> > > gcc/ > > * config/mips/m5100.md: New file. > * config/mips/mips-cpus.def (m5100, m5101): Define. > * config/mips/mips-tables.opt: Regenerate. > * config/mips/mips.c (mips_rtx_cost_data): Add costs for m5100. > * config/mips/mips.h (MIPS_ISA_LEVEL_SPEC): Map -march=m5100 and > -march=m5101 to -mips32r5. > (MIPS_ARCH_FLOAT_SPEC): Map -m5101 to -msoft-float. > (MIPS_ISA_NAN2008_SPEC): Map -march=m51* to -mnan=2008 if > !-msoft-float. > * config/mips/mips.md: Include m5100.md. > (processor): Add m5100. > * doc/invoke.texi (-march=@var{arch}): Add m5100, m5101.
OK, this looks fine. I did realise while reading through this that the MIPS_ARCH_FLOAT_SPEC is not used for and ordinary MIPS Linux compiler which seems odd but I presume this is to make it possible to use one hard-float sysroot for any core and emulate the FPU when not present. I think it is probably a mistake to have put MIPS_ARCH_FLOAT_SPEC in the mti-linux.h and android.h DRIVER_SELF_SPECS so I think they need removing. Although we support building soft-float multilibs I don't think they actually get used very much so leaving the selection of soft-float down to the end user in Linux seems wise. With the i6400 scheduler committed then we can also get rid of the w32 and w64 placeholders that were there solely to provide an R6 processor to use as the default processor for the generic arch options. Thanks, Matthew