MIPS: In mips.exp allow the post-arch code to be run when the pre-arch code increases...
authorAndrew Bennett <andrew.bennett@imgtec.com>
Wed, 15 Jul 2015 09:22:25 +0000 (09:22 +0000)
committerAndrew Bennett <abennett@gcc.gnu.org>
Wed, 15 Jul 2015 09:22:25 +0000 (09:22 +0000)
testsuite/
* gcc.target/mips/mips.exp (mips-dg-options): Allow the post-arch
code to be run when the pre-arch code increases the isa_rev to
mips32r6 or greater.

From-SVN: r225813

gcc/testsuite/ChangeLog
gcc/testsuite/gcc.target/mips/mips.exp

index b03eb9f86a5c2c6b51694748d14a021999b63af2..75a83ae641eb131f803d99f9eb53feadf08ec9be 100644 (file)
@@ -1,3 +1,9 @@
+2015-07-15  Andrew Bennett  <andrew.bennett@imgtec.com>
+
+       * gcc.target/mips/mips.exp (mips-dg-options): Allow the post-arch
+       code to be run when the pre-arch code increases the isa_rev to
+       mips32r6 or greater.
+
 2015-07-15  Richard Biener  <rguenther@suse.de>
 
        * lib/c-torture.exp (C_TORTURE_OPTIONS): Remove
index 1dd4173b6d7a339b7251204cc3e6cb7d3d6c5941..b3617e44269b9f2c58493d543936b17939ad6fb0 100644 (file)
@@ -1045,6 +1045,7 @@ proc mips-dg-options { args } {
     set arch [mips_option options arch]
     set isa [mips_arch_info $arch isa]
     set isa_rev [mips_arch_info $arch isa_rev]
+    set orig_isa_rev $isa_rev
 
     # If the test forces a 32-bit architecture, force -mgp32.
     # Force the current -mgp setting otherwise; if we don't,
@@ -1279,8 +1280,11 @@ proc mips-dg-options { args } {
     }
 
     # Handle dependencies between the arch option and the post-arch options.
-    # This should mirror the arch and pre-arch code above.
-    if { $arch_test_option_p } {
+    # This should mirror the arch and pre-arch code above.  For pre-r6
+    # architectures this only needs to be done when we've moved down
+    # to a lower architecture and might need to turn features off,
+    # but moving up from pre-r6 to r6 can remove features too.
+    if { $arch_test_option_p || ($orig_isa_rev < 6 && $isa_rev >= 6) } {
        if { $isa < 2 } {
            mips_make_test_option options "-mno-branch-likely"
            mips_make_test_option options "-mno-fix-r10000"