https://gcc.gnu.org/g:d1c803a912f61aa3b9875578017d3cbf9353f58d
commit r14-11925-gd1c803a912f61aa3b9875578017d3cbf9353f58d Author: Jeevitha <jeevi...@linux.ibm.com> Date: Thu Jul 31 04:32:17 2025 -0500 testsuite: Fix gcc.target/powerpc/vsx-builtin-7.c test [PR119382] The test vsx-builtin-7.c failed on powerpc64le-linux due to Identical Code Folding (ICF) merging the functions insert_di_0_v2 and insert_di_0. This behavior was introduced by commit r15-7961-gdc47161c1f32c3, which enhanced alias analysis in ao_compare::compare_ao_refs, enabling the compiler to identify and optimize structurally identical functions. As a result, the compiler replaced insert_di_0_v2 with a tail call to insert_di_0, altering the expected test behavior. This patch adds -fno-ipa-icf to the test's dg-options to disable ICF, avoiding function merging and ensuring the test executes correctly. 2025-06-24 Jeevitha Palanisamy <jeevi...@linux.ibm.com> gcc/testsuite/ PR testsuite/119382 * gcc.target/powerpc/vsx-builtin-7.c: Add '-fno-ipa-icf' to dg-options. (cherry picked from commit a1fb757342058111fddcdc5ca2f866c61e87c9b8) Diff: --- gcc/testsuite/gcc.target/powerpc/vsx-builtin-7.c | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/gcc/testsuite/gcc.target/powerpc/vsx-builtin-7.c b/gcc/testsuite/gcc.target/powerpc/vsx-builtin-7.c index 8841660fd039..dd55fbf2f451 100644 --- a/gcc/testsuite/gcc.target/powerpc/vsx-builtin-7.c +++ b/gcc/testsuite/gcc.target/powerpc/vsx-builtin-7.c @@ -1,7 +1,15 @@ /* { dg-do compile { target { powerpc*-*-* } } } */ /* { dg-skip-if "" { powerpc*-*-darwin* } } */ /* { dg-require-effective-target powerpc_vsx_ok } */ -/* { dg-options "-O2 -mdejagnu-cpu=power7 -fno-inline-functions" } */ +/* { dg-options "-O2 -mdejagnu-cpu=power7 -fno-inline-functions -fno-ipa-icf" } */ + +/* PR testsuite/119382 + Note: Added -fno-ipa-icf to disable Interprocedural Identical Code + Folding (ICF). Without this, insert_di_0_v2 is merged with insert_di_0 + due to improved alias analysis introduced in commit r15-7961-gdc47161c1f32c3. + This results in the compiler replacing insert_di_0_v2 with a tail call to + insert_di_0, altering expected test behavior. Disabling ICF ensures correct + execution of the test. */ /* Test simple extract/insert/slat operations. Make sure all types are supported with various options. */