Mips testcase question
Steve Ellcey
sellcey@mips.com
Tue Jul 30 18:32:00 GMT 2013
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
sellcey@mips.com
More information about the Gcc
mailing list