]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
testsuite: fix the condition bug in tsvc s176
authorLehua Ding <lehua.ding@rivai.ai>
Fri, 9 Jun 2023 13:27:01 +0000 (07:27 -0600)
committerJeff Law <jlaw@ventanamicro.com>
Fri, 9 Jun 2023 13:29:14 +0000 (07:29 -0600)
This patch fixes the problem that the loop in the tsvc s176 function is
optimized and removed because `iterations/LEN_1D` is 0 (where iterations
is set to 10000, LEN_1D is set to 32000 in tsvc.h).

This testcase passed on x86 and AArch64 system.

Best,
Lehua

gcc/testsuite/ChangeLog:

* gcc.dg/vect/tsvc/vect-tsvc-s176.c: Adjust iterations.
* gcc.dg/vect/tsvc/tsvc.h: Adjust expected rsult for s176.

gcc/testsuite/gcc.dg/vect/tsvc/tsvc.h
gcc/testsuite/gcc.dg/vect/tsvc/vect-tsvc-s176.c

index cd39c041903ddab21cfbbdf415919502592fa04d..d910c384fc837ef39ebe88f3e2d2e9020a1594e3 100644 (file)
@@ -1164,7 +1164,7 @@ real_t get_expected_result(const char * name)
     } else if (!strcmp(name, "s175")) {
        return 32009.023438f;
     } else if (!strcmp(name, "s176")) {
-       return 32000.f;
+       return 32063.902344f;
     } else if (!strcmp(name, "s211")) {
        return 63983.308594f;
     } else if (!strcmp(name, "s212")) {
index 79faf7fdb9e4dfdda43f943955b0b169c443ee58..365e5205982baf5e873341884b3a271d8ba39460 100644 (file)
@@ -14,7 +14,7 @@ real_t s176(struct args_t * func_args)
     initialise_arrays(__func__);
 
     int m = LEN_1D/2;
-    for (int nl = 0; nl < 4*(iterations/LEN_1D); nl++) {
+    for (int nl = 0; nl < 4*(10*iterations/LEN_1D); nl++) {
         for (int j = 0; j < (LEN_1D/2); j++) {
             for (int i = 0; i < m; i++) {
                 a[i] += b[i+m-j-1] * c[j];
@@ -39,4 +39,4 @@ int main (int argc, char **argv)
   return 0;
 }
 
-/* { dg-final { scan-tree-dump "vectorized 1 loops" "vect" { xfail *-*-* } } } */
+/* { dg-final { scan-tree-dump "vectorized 1 loops" "vect" } } */