From bafe6f6a45e804efbf801ab2a8b4065934d11078 Mon Sep 17 00:00:00 2001 From: Richard Sandiford Date: Fri, 25 Oct 2019 09:16:59 +0000 Subject: [PATCH] Fix failure in gcc.target/sve/reduc_strict_3.c Unwanted unrolling meant that we had more single-precision FADDAs than expected. 2019-10-25 Richard Sandiford gcc/testsuite/ * gcc.target/aarch64/sve/reduc_strict_3.c (double_reduc1): Prevent the loop from being unrolled. From-SVN: r277442 --- gcc/testsuite/ChangeLog | 5 +++++ gcc/testsuite/gcc.target/aarch64/sve/reduc_strict_3.c | 1 + 2 files changed, 6 insertions(+) diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index dfb2186d8ed..9397ff3a98b 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2019-10-25 Richard Sandiford + + * gcc.target/aarch64/sve/reduc_strict_3.c (double_reduc1): Prevent + the loop from being unrolled. + 2019-10-25 Richard Sandiford * gcc.target/aarch64/sve/loop_add_5.c: Remove XFAILs for tests diff --git a/gcc/testsuite/gcc.target/aarch64/sve/reduc_strict_3.c b/gcc/testsuite/gcc.target/aarch64/sve/reduc_strict_3.c index a718e9d2ebf..a815c93bceb 100644 --- a/gcc/testsuite/gcc.target/aarch64/sve/reduc_strict_3.c +++ b/gcc/testsuite/gcc.target/aarch64/sve/reduc_strict_3.c @@ -82,6 +82,7 @@ double_reduc1 (float (*restrict i)[16]) { float l = 0; +#pragma GCC unroll 0 for (int a = 0; a < 8; a++) for (int b = 0; b < 8; b++) l += i[b][a]; -- 2.30.2