]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
LoongArch: Remove the "-mlasx" compilation option from the test cases.
authorLulu Cheng <chenglulu@loongson.cn>
Thu, 6 Mar 2025 08:28:08 +0000 (16:28 +0800)
committerLulu Cheng <chenglulu@loongson.cn>
Fri, 31 Oct 2025 01:06:43 +0000 (09:06 +0800)
Because LoongArch previously lacked support for 128-bit vectors
(vec_widen_{add/sub/mult}_{hi/lo}), the following test cases
needed to be enabled for 256-bit vectors to pass.
Now that 128-bit support has been added, "-mlasx" has been removed.

gcc/testsuite/ChangeLog:

* gcc.dg/vect/slp-widen-mult-half.c: Remove '-mlasx'.
* gcc.dg/vect/tree-vect.h: Check whether the runtime
environment supports LSX instructions.
* gcc.dg/vect/vect-widen-mult-const-s16.c: Dito.
* gcc.dg/vect/vect-widen-mult-const-u16.c: Dito.
* gcc.dg/vect/vect-widen-mult-half-u8.c: Dito.
* gcc.dg/vect/vect-widen-mult-half.c: Dito.
* gcc.dg/vect/vect-widen-mult-u16.c: Dito.
* gcc.dg/vect/vect-widen-mult-u8-s16-s32.c: Dito.
* gcc.dg/vect/vect-widen-mult-u8-u32.c: Dito.
* gcc.dg/vect/vect-widen-mult-u8.c: Dito.

gcc/testsuite/gcc.dg/vect/slp-widen-mult-half.c
gcc/testsuite/gcc.dg/vect/tree-vect.h
gcc/testsuite/gcc.dg/vect/vect-widen-mult-const-s16.c
gcc/testsuite/gcc.dg/vect/vect-widen-mult-const-u16.c
gcc/testsuite/gcc.dg/vect/vect-widen-mult-half-u8.c
gcc/testsuite/gcc.dg/vect/vect-widen-mult-half.c
gcc/testsuite/gcc.dg/vect/vect-widen-mult-u16.c
gcc/testsuite/gcc.dg/vect/vect-widen-mult-u8-s16-s32.c
gcc/testsuite/gcc.dg/vect/vect-widen-mult-u8-u32.c
gcc/testsuite/gcc.dg/vect/vect-widen-mult-u8.c

index b69ade338862cda4f44f5206d195eef1cb5e8d36..72811eb852e5ed51ed5f5d042fac4e9b487911c2 100644 (file)
@@ -1,7 +1,6 @@
 /* Disabling epilogues until we find a better way to deal with scans.  */
 /* { dg-additional-options "--param vect-epilogues-nomask=0" } */
 /* { dg-require-effective-target vect_int } */
-/* { dg-additional-options "-mlasx" { target loongarch*-*-* } } */
 
 #include "tree-vect.h"
 
index 1e4b56ee0e15f822573823e27aa97642c19c6816..37908c911abb9290fd80d73146534cda7a8fc4b8 100644 (file)
@@ -76,6 +76,8 @@ check_vect (void)
   }
 #elif defined(__mips_msa)
   asm volatile ("or.v $w0,$w0,$w0");
+#elif defined(__loongarch__)
+  asm volatile ("vor.v\t$vr0,$vr0,$vr0");
 #endif
   signal (SIGILL, SIG_DFL);
 }
index 53c9b84ca01630bd4b7de8f3c47c18deeab5e8f8..dfbb2171c004565045d91605354b5d6e7219ab19 100644 (file)
@@ -2,7 +2,6 @@
 /* { dg-additional-options "--param vect-epilogues-nomask=0" } */
 /* { dg-require-effective-target vect_int } */
 /* { dg-additional-options "-fno-ipa-icf" } */
-/* { dg-additional-options "-mlasx" { target loongarch*-*-*} } */
 
 #include "tree-vect.h"
 
index e9db8285b664a4a455f55bab805d8779c23defac..c2ad58f69e7fe5b62a9fbc55dd5dab43ba785104 100644 (file)
@@ -2,7 +2,6 @@
 /* { dg-additional-options "--param vect-epilogues-nomask=0" } */
 /* { dg-require-effective-target vect_int } */
 /* { dg-additional-options "-fno-ipa-icf" } */
-/* { dg-additional-options "-mlasx" { target loongarch*-*-*} } */
 
 #include "tree-vect.h"
 
index 607f3178f903efe8193faa9c0de5ce658804b0fb..bfdcbaa09fbd42a16197023b09087cee6642105a 100644 (file)
@@ -2,7 +2,6 @@
 /* { dg-additional-options "--param vect-epilogues-nomask=0" } */
 /* { dg-require-effective-target vect_int } */
 /* { dg-additional-options "-fno-ipa-icf" } */
-/* { dg-additional-options "-mlasx" { target loongarch*-*-*} } */
 
 #include "tree-vect.h"
 
index cd13d8269374bf8a5c8a9694abeffcc8a6e381d2..e46b0cc3135fd982b07e0824955654f0ebc59506 100644 (file)
@@ -1,7 +1,6 @@
 /* Disabling epilogues until we find a better way to deal with scans.  */
 /* { dg-additional-options "--param vect-epilogues-nomask=0" } */
 /* { dg-require-effective-target vect_int } */
-/* { dg-additional-options "-mlasx" { target loongarch*-*-*} } */
 
 #include "tree-vect.h"
 
index 258d253f401459d448d1ae86f56b0c97815d5b61..14411ef43eda2ff348de9c9c1540e1359f20f55b 100644 (file)
@@ -1,7 +1,6 @@
 /* Disabling epilogues until we find a better way to deal with scans.  */
 /* { dg-additional-options "--param vect-epilogues-nomask=0" } */
 /* { dg-require-effective-target vect_int } */
-/* { dg-additional-options "-mlasx" { target loongarch*-*-*} } */
 
 #include <stdarg.h>
 #include "tree-vect.h"
index 3baafca7b548124ae5c48fdf3c2f07c319155967..f40def5dddf58f6a6661d9c286b774f954126840 100644 (file)
@@ -1,7 +1,6 @@
 /* Disabling epilogues until we find a better way to deal with scans.  */
 /* { dg-additional-options "--param vect-epilogues-nomask=0" } */
 /* { dg-require-effective-target vect_int } */
-/* { dg-additional-options "-mlasx" { target loongarch*-*-*} } */
 
 #include <stdarg.h>
 #include "tree-vect.h"
index bcfbe198a3ff92bc24ed1f7a5b591403eed000d5..63866390835c55e53b6f90f305a71bbdbff85afa 100644 (file)
@@ -1,6 +1,5 @@
 /* { dg-additional-options "--param vect-epilogues-nomask=0" } */
 /* { dg-require-effective-target vect_int } */
-/* { dg-additional-options "-mlasx" { target loongarch*-*-* } } */
 
 #include <stdarg.h>
 #include "tree-vect.h"
index e3bf13b14fa539e17db32e60833b7edc4c19aaf2..78ad74b5d499c23256e4ca38a82fefde8720e4e9 100644 (file)
@@ -1,6 +1,5 @@
 /* { dg-additional-options "--param vect-epilogues-nomask=0" } */
 /* { dg-require-effective-target vect_int } */
-/* { dg-additional-options "-mlasx" { target loongarch*-*-*} } */
 
 #include <stdarg.h>
 #include "tree-vect.h"