https://gcc.gnu.org/g:e37eb8578c5c9a62d4f804908ad57fc38c71a3a2

commit r16-1263-ge37eb8578c5c9a62d4f804908ad57fc38c71a3a2
Author: Jeff Law <j...@ventanamicro.com>
Date:   Fri Jun 6 08:45:53 2025 -0600

    [committed] Fix compromised ARC test
    
    Jakub's recent changes for pr120231 compromised this arc port specific test.
    Essentially we collapse the entire FMA sequence down to a constant and thus
    never emit the FMA instruction the test wants to see.
    
    If we make "a" an extern so that we don't know its value the optimizers 
can't
    collapse the calculation away completely and we can verify that we get an 
FMA
    operation.
    
    Pushing to the trunk.
    
    gcc/testsuite
            * gcc.target/arc/fma-1.c: Make "a" extern so the optimizers can
            see any value and optimize away the key computation.

Diff:
---
 gcc/testsuite/gcc.target/arc/fma-1.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/gcc/testsuite/gcc.target/arc/fma-1.c 
b/gcc/testsuite/gcc.target/arc/fma-1.c
index c195ad98127c..b32989fced1b 100644
--- a/gcc/testsuite/gcc.target/arc/fma-1.c
+++ b/gcc/testsuite/gcc.target/arc/fma-1.c
@@ -2,7 +2,8 @@
 /* { dg-skip-if "FPU not available" { arc700 || arc6xx } } */
 /* { dg-options "-s -std=gnu11  -O2 -frounding-math -mfpu=fpus_all" } */
 
-const float a, b = 7.8539818525e01;
+const float b = 7.8539818525e01;
+extern const float a;
 
 /* Check if the fma operation is generated correctly.  */

Reply via email to