After the detection of maximum reduction is enabled on LoongArch architecture, the regression test of GCC finds that vect-fmin-3.c fails. Currently, in the target-supports.exp file, only aarch64,arm,riscv, and LoongArch architectures are supported. Through analysis, the "-ffast-math" compilation option needs to be added to the test case in order to successfully reduce using vectorization. The original patch was submitted by author Richard Sandiford.
The initial patch information submitted is as follows: commit e32b9eb32d7cd2d39bf9c70497890ac61b9ee14c gcc/testsuite/ChangeLog: * gcc.dg/vect/vect-fmin-3.c:Adding an extra "-ffast-math" to the compilation option ensures that the loop can be reduced to maximum success. --- gcc/testsuite/gcc.dg/vect/vect-fmin-3.c | 1 + 1 file changed, 1 insertion(+) diff --git a/gcc/testsuite/gcc.dg/vect/vect-fmin-3.c b/gcc/testsuite/gcc.dg/vect/vect-fmin-3.c index 2e282ba6878..edef57925c1 100644 --- a/gcc/testsuite/gcc.dg/vect/vect-fmin-3.c +++ b/gcc/testsuite/gcc.dg/vect/vect-fmin-3.c @@ -1,4 +1,5 @@ /* { dg-require-effective-target vect_float } */ +/* { dg-additional-options "-ffast-math" } */ #include "tree-vect.h" -- 2.20.1