From: Alexandre Oliva Date: Sat, 31 Jan 2026 04:51:53 +0000 (-0300) Subject: testsuite: arm: update fast-math-complex-mls-half-float.c X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=9dceb52664d5af3012507e1d4527ef4362f83aea;p=thirdparty%2Fgcc.git testsuite: arm: update fast-math-complex-mls-half-float.c Since the addition of DCE after complex lowering, reassoc1 has no longer been impeded by COMPLEX_EXPRs, so it changes (a - (b + c)), where (b + c) is the imaginary part of an intermediate complex value, to ((a - b) - c), and this prevents the vectorizer from recognizing the expected COMPLEX_ADD_ROT270 pattern in fms_elemconjsnd. Stop expecting that pattern to be found on that test. for gcc/testsuite/ChangeLog * gcc.dg/vect/complex/fast-math-complex-mls-half-float.c: Don't expect COMPLEX_ADD_ROT270. --- diff --git a/gcc/testsuite/gcc.dg/vect/complex/fast-math-complex-mls-half-float.c b/gcc/testsuite/gcc.dg/vect/complex/fast-math-complex-mls-half-float.c index 5a700c091d4..c21f8402b58 100644 --- a/gcc/testsuite/gcc.dg/vect/complex/fast-math-complex-mls-half-float.c +++ b/gcc/testsuite/gcc.dg/vect/complex/fast-math-complex-mls-half-float.c @@ -7,6 +7,10 @@ #define TYPE _Float16 #define N 200 #include "complex-mls-template.c" -/* { dg-final { scan-tree-dump "Found COMPLEX_ADD_ROT270" "vect" } } */ +/* COMPLEX_ADD_ROT270 is no longer recognized in fms_elemconjsnd. + The COMPLEX_EXPR that prevented reassoc from changing X - (Y + Z) + into (X + (-Y)) + (-Z) has been removed since the introduction of + DCE at the end of cplxlower1. */ +/* { dg-final { scan-tree-dump "Found COMPLEX_ADD_ROT270" "vect" { xfail *-*-* } } } */ /* { dg-final { scan-tree-dump "Found COMPLEX_FMS_CONJ" "vect" } } */ /* { dg-final { scan-tree-dump "Found COMPLEX_FMS" "vect" } } */