Richard, I have noticed that gcc.target/mips/fpr-moves-7.c and gcc.target/mips/fpr-moves-8.c fail when running the GCC testsuite with -msoft-float. I think it is because of this code in mips.exp:
if { [mips_using_mips16_p options] && ![mips_same_option_p $abi "-mabi=32"] && ![mips_same_option_p $abi "-mabi=o64"] && (![mips_have_option_p options "addressing=absolute"] || [mips_have_option_p options "-mhard-float"]) } { if { [mips_test_option_p options mips16] } { mips_make_test_option options "addressing=absolute" mips_make_test_option options "-msoft-float" } else { mips_make_test_option options "-mno-mips16" } } If we are running with -hard-float and the test specifies -mips16 then we set addressing=absolute and -msoft-float. But if we were -msoft-float to begin with then we do not set addressing=absolute. This matters because later, addressing=absolute implies -mplt and -mplt implies -msym32 and it is the -msym32 flag that is allowing these tests to pass with -mhard-float. If I run with -msoft-float then -msym32 never gets set and the test fails. Should addressing=absolute be set here for soft-float in mips.exp or do you think these two tests should just not be run in soft-float mode? Steve Ellcey sell...@mips.com