[testsuite,aarch64] : Fix gcc.target/aarch64/auto-init-* tests.
Commit Message
Hi,
This is the patch to fix gcc.target/aarch64/auto-init-* tests.
I have tested the change on aarch64-linux with
make check-gcc RUNTESTFLAGS='--target_board=unix\{-mabi=lp64,-mabi=ilp32,-mabi=lp64/-fstack-clash-protection/-fstack-protector-all,-mabi=ilp32/-fstack-clash-protection/-fstack-protector-all,-mabi=lp64/-march=armv8-a,-mabi=ilp32/-march=armv8.2-a,-mabi=lp64/-march=armv8.4-a,-mabi=ilp32/-march=armv8.6-a,-mabi=lp64/-march=armv8-r\} aarch64.exp=auto-init*'
Everything works fine.
Okay for commit?
Thanks.
Qing
==============================
From c46888eed5621df842178a85adf7e221c7e00b48 Mon Sep 17 00:00:00 2001
From: qing zhao <qing.zhao@oracle.com>
Date: Tue, 21 Sep 2021 12:05:32 -0700
Subject: [PATCH] testsuite: Fix gcc.target/aarch64/auto-init-* tests.
Add -fno-stack-protector for two testing cases and also different
pattern match for lp64 and ilp32 for the other two cases.
gcc/testsuite/ChangeLog:
2021-09-21 qing zhao <qing.zhao@oracle.com>
* gcc.target/aarch64/auto-init-1.c: Add -fno-stack-protector.
* gcc.target/aarch64/auto-init-7.c: Likewise.
* gcc.target/aarch64/auto-init-2.c: Different pattern match for
lp64 and ilp32.
* gcc.target/aarch64/auto-init-padding-5.c: Likewise.
---
gcc/testsuite/gcc.target/aarch64/auto-init-1.c | 2 +-
gcc/testsuite/gcc.target/aarch64/auto-init-2.c | 3 ++-
gcc/testsuite/gcc.target/aarch64/auto-init-7.c | 2 +-
gcc/testsuite/gcc.target/aarch64/auto-init-padding-5.c | 3 ++-
4 files changed, 6 insertions(+), 4 deletions(-)
@@ -1,6 +1,6 @@
/* Verify zero initialization for integer and pointer type automatic variables. */
/* { dg-do compile } */
-/* { dg-options "-ftrivial-auto-var-init=zero -fdump-rtl-expand" } */
+/* { dg-options "-ftrivial-auto-var-init=zero -fdump-rtl-expand -fno-stack-protector" } */
#ifndef __cplusplus
# define bool _Bool
@@ -32,4 +32,5 @@ void foo()
/* { dg-final { scan-rtl-dump-times "0xfe\\\]" 1 "expand" } } */
/* { dg-final { scan-rtl-dump-times "0xfffffffffffffefe" 1 "expand" } } */
/* { dg-final { scan-rtl-dump-times "0xfffffffffefefefe" 2 "expand" } } */
-/* { dg-final { scan-rtl-dump-times "0xfefefefefefefefe" 2 "expand" } } */
+/* { dg-final { scan-rtl-dump-times "0xfefefefefefefefe" 2 "expand" { target lp64 } } } */
+/* { dg-final { scan-rtl-dump-times "0xfefefefefefefefe" 1 "expand" { target ilp32 } } } */
@@ -1,6 +1,6 @@
/* Verify zero initialization for array, union, and structure type automatic variables. */
/* { dg-do compile } */
-/* { dg-options "-ftrivial-auto-var-init=zero -fdump-rtl-expand" } */
+/* { dg-options "-ftrivial-auto-var-init=zero -fdump-rtl-expand -fno-stack-protector" } */
struct S
{
@@ -17,6 +17,7 @@ int foo ()
return var.four;
}
-/* { dg-final { scan-assembler-times "stp\txzr, xzr," 2 } } */
+/* { dg-final { scan-assembler-times "stp\txzr, xzr," 2 { target lp64 } } } */
+/* { dg-final { scan-assembler-times "stp\txzr, xzr," 1 { target ilp32 } } } */