]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
Implement vect_cmdline_needed properly on sparc.
authorDavid S. Miller <davem@davemloft.net>
Wed, 9 Nov 2011 05:23:02 +0000 (05:23 +0000)
committerDavid S. Miller <davem@gcc.gnu.org>
Wed, 9 Nov 2011 05:23:02 +0000 (21:23 -0800)
* lib/target-supports.exp (check_effective_target_sparc_vis): New.
(check_effective_target_vect_cmdline_needed): Use it when sparc*-*-*

From-SVN: r181190

gcc/testsuite/ChangeLog
gcc/testsuite/lib/target-supports.exp

index 1e4616447953752d51328457cd527ddce51d602d..0b7167b0dd49de1ea1daf09ff9150d0395d1ded9 100644 (file)
@@ -1,3 +1,8 @@
+2011-11-08  David S. Miller  <davem@davemloft.net>
+
+       * lib/target-supports.exp (check_effective_target_sparc_vis): New.
+       (check_effective_target_vect_cmdline_needed): Use it when sparc*-*-*
+
 2011-11-08  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
 
        PR fortran/50404
index 437e18186c55050085012de37b73e9afdacfdd90..6e3023339ad69aa2a1ee7edabe7def71fd501c00 100644 (file)
@@ -1775,6 +1775,7 @@ proc check_effective_target_vect_cmdline_needed { } {
             || ([istarget powerpc*-*-*]
                 && ([check_effective_target_powerpc_spe]
                     || [check_effective_target_powerpc_altivec]))
+            || ([istarget sparc*-*-*] && [check_effective_target_sparc_vis])
              || [istarget spu-*-*]
             || ([istarget arm*-*-*] && [check_effective_target_arm_neon]) } {
           set et_vect_cmdline_needed_saved 0
@@ -2489,6 +2490,22 @@ proc check_effective_target_ultrasparc_vis3_hw { } {
     } "-mcpu=niagara3"]
 }
 
+# Return 1 if this is a Sparc target with VIS enabled.
+
+proc check_effective_target_sparc_vis { } {
+    if { [istarget sparc*-*-*] } {
+       return [check_no_compiler_messages sparc_vis object {
+           #ifndef __VIS__
+           #error not VIS
+           #else
+           int dummy;
+           #endif
+       }]
+    } else {
+       return 0
+    }
+}
+
 # Return 1 if the target supports hardware vector shift operation.
 
 proc check_effective_target_vect_shift { } {