[1v2/2,aarch64,testsuite] disable PIE for nonlocal_goto sme tests
Commit Message
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.
Tested on aarch64-linux-gnu with --enable-default-pie. Ok to install?
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.
---
.../gcc.target/aarch64/sme/nonlocal_goto_1.c | 2 +-
.../gcc.target/aarch64/sme/nonlocal_goto_2.c | 2 +-
.../gcc.target/aarch64/sme/nonlocal_goto_3.c | 2 +-
3 files changed, 3 insertions(+), 3 deletions(-)
@@ -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 (*)());
@@ -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 (*)());
@@ -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 (*)());