https://gcc.gnu.org/g:7a491b6e9dcca933d5a61278b31dee3bfc3db22e

commit 7a491b6e9dcca933d5a61278b31dee3bfc3db22e
Author: Alexandre Oliva <ol...@adacore.com>
Date:   Tue Sep 9 23:28:32 2025 -0300

    [aarch64] [testsuite] disable PIE for nonlocal_goto sme tests
    
    When an aarch64 toolchain is configured with --enable-default-pie,
    gcc.target/aarch64/sme/nonlocal_goto_[123].c fail because ira.cc's
    setup_reg_equiv resets function_invariant_p(x) equivalences when
    e.g. flag_pic and !CONSTANT_P (x), and then lra ends up unable to
    rematerialize stack addresses that would otherwise be rematerialized
    as small constants added to sp, and instead the addresses end up in
    pseudos assigned to stack slots.
    
    
    for  gcc/testsuite/ChangeLog
    
            * gcc.target/aarch64/sme/nonlocal_goto_1.c: Force PIE off.
            * gcc.target/aarch64/sme/nonlocal_goto_2.c: Likewise.
            * gcc.target/aarch64/sme/nonlocal_goto_3.c: Likewise.

Diff:
---
 gcc/testsuite/gcc.target/aarch64/sme/nonlocal_goto_1.c | 2 +-
 gcc/testsuite/gcc.target/aarch64/sme/nonlocal_goto_2.c | 2 +-
 gcc/testsuite/gcc.target/aarch64/sme/nonlocal_goto_3.c | 2 +-
 3 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/gcc/testsuite/gcc.target/aarch64/sme/nonlocal_goto_1.c 
b/gcc/testsuite/gcc.target/aarch64/sme/nonlocal_goto_1.c
index 572c17a06d7c..11578279b928 100644
--- a/gcc/testsuite/gcc.target/aarch64/sme/nonlocal_goto_1.c
+++ b/gcc/testsuite/gcc.target/aarch64/sme/nonlocal_goto_1.c
@@ -1,4 +1,4 @@
-/* { dg-options "-O2 -fno-schedule-insns -fno-schedule-insns2" } */
+/* { dg-options "-O2 -fno-schedule-insns -fno-schedule-insns2 -fno-PIE" } */
 /* { dg-final { check-function-bodies "**" "" } } */
 
 void run(void (*)());
diff --git a/gcc/testsuite/gcc.target/aarch64/sme/nonlocal_goto_2.c 
b/gcc/testsuite/gcc.target/aarch64/sme/nonlocal_goto_2.c
index 721a2b789863..37dbcbae1a4f 100644
--- a/gcc/testsuite/gcc.target/aarch64/sme/nonlocal_goto_2.c
+++ b/gcc/testsuite/gcc.target/aarch64/sme/nonlocal_goto_2.c
@@ -1,4 +1,4 @@
-/* { dg-options "-O2 -fno-schedule-insns -fno-schedule-insns2" } */
+/* { dg-options "-O2 -fno-schedule-insns -fno-schedule-insns2 -fno-PIE" } */
 /* { dg-final { check-function-bodies "**" "" } } */
 
 void run(void (*)());
diff --git a/gcc/testsuite/gcc.target/aarch64/sme/nonlocal_goto_3.c 
b/gcc/testsuite/gcc.target/aarch64/sme/nonlocal_goto_3.c
index 25db9283b169..ae661653f302 100644
--- a/gcc/testsuite/gcc.target/aarch64/sme/nonlocal_goto_3.c
+++ b/gcc/testsuite/gcc.target/aarch64/sme/nonlocal_goto_3.c
@@ -1,4 +1,4 @@
-/* { dg-options "-O2 -fno-schedule-insns -fno-schedule-insns2" } */
+/* { dg-options "-O2 -fno-schedule-insns -fno-schedule-insns2 -fno-PIE" } */
 /* { dg-final { check-function-bodies "**" "" } } */
 
 void run(void (*)());

Reply via email to