From 65af6bc9f87bc6b329fb7a16e3f736dd0a042bf5 Mon Sep 17 00:00:00 2001 From: Andreas Krebbel Date: Thu, 3 Dec 2020 17:04:11 +0100 Subject: IBM Z: Fix mode in probe_stack pattern The probe pattern uses Pmode but the middle-end wants to emit a word_mode probe check. This - as usual - breaks on Z with -m31 -mzarch were word_mode doesn't match Pmode. gcc/ChangeLog: * config/s390/s390.md ("@probe_stack2"): Change mode iterator to W. gcc/testsuite/ChangeLog: * gcc.target/s390/stack-clash-4.c: New test. --- gcc/testsuite/gcc.target/s390/stack-clash-4.c | 10 ++++++++++ 1 file changed, 10 insertions(+) create mode 100644 gcc/testsuite/gcc.target/s390/stack-clash-4.c (limited to 'gcc/testsuite') diff --git a/gcc/testsuite/gcc.target/s390/stack-clash-4.c b/gcc/testsuite/gcc.target/s390/stack-clash-4.c new file mode 100644 index 0000000..619d99d --- /dev/null +++ b/gcc/testsuite/gcc.target/s390/stack-clash-4.c @@ -0,0 +1,10 @@ +/* { dg-do compile } */ +/* { dg-options "-O1 -m31 -mzarch -fstack-clash-protection" } */ + +extern void c(char*); + +void +a() { + char *b = __builtin_alloca(3); + c(b); +} -- cgit v1.1