https://gcc.gnu.org/g:8e55b1cb5fddb7f8cd8772ca47d765dc8aee1a2c

commit 8e55b1cb5fddb7f8cd8772ca47d765dc8aee1a2c
Author: Alexandre Oliva <ol...@adacore.com>
Date:   Thu Apr 10 17:21:09 2025 -0300

    [testsuite] [ppc] add -mdejagnu-cpu=power7 to pr17381.c
    
    Below power7, it seems to be more profitable to compress the
    floating-point constants and use an additional fp register move to
    "extend" it.  Only at power7 and above do we keep the constants
    separate and load them, getting to the expected 'fmr' count.
    
    
    for  gcc/testsuite/ChangeLog
    
            * gcc.target/powerpc/pr17381.c: Compile for power7.  Justify.

Diff:
---
 gcc/testsuite/gcc.target/powerpc/pr17381.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/gcc/testsuite/gcc.target/powerpc/pr17381.c 
b/gcc/testsuite/gcc.target/powerpc/pr17381.c
index e6222c130af1..b137c687776e 100644
--- a/gcc/testsuite/gcc.target/powerpc/pr17381.c
+++ b/gcc/testsuite/gcc.target/powerpc/pr17381.c
@@ -1,6 +1,8 @@
 /* PR target/17381 - Unnecessary register move for float extend */
 /* { dg-do compile } */
-/* { dg-options "-O2" } */
+/* { dg-options "-mdejagnu-cpu=power7 -O2" } */
+/* Up to power6, we compress the floating-point constant 1.0 and share it with
+   1.0f, but the float_extend comes out as a second fmr.  */
 
 double d;
 float test1(float fParm)

Reply via email to