From edbbdf0b8c4a919e9d597b47c04f76e79e0bf83d Mon Sep 17 00:00:00 2001 From: Andrew Stubbs Date: Fri, 28 Jun 2019 16:37:14 +0000 Subject: [PATCH] Fix trampoline execution failures on GCN5. 2019-06-28 Andrew Stubbs Backport from mainline: 2019-05-22 Andrew Stubbs * config/gcn/gcn.c (gcn_trampoline_init): Call "sorry" on GCN5. From-SVN: r272788 --- gcc/ChangeLog | 7 +++++++ gcc/config/gcn/gcn.c | 4 ++++ 2 files changed, 11 insertions(+) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 5b5678716462..ffc86f95ed57 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,10 @@ +2019-06-28 Andrew Stubbs + + Backport from mainline: + 2019-05-22 Andrew Stubbs + + * config/gcn/gcn.c (gcn_trampoline_init): Call "sorry" on GCN5. + 2019-06-26 Martin Jambor Backport from mainline diff --git a/gcc/config/gcn/gcn.c b/gcc/config/gcn/gcn.c index f1fad3bb7b5b..99fa45edcd4b 100644 --- a/gcc/config/gcn/gcn.c +++ b/gcc/config/gcn/gcn.c @@ -3062,6 +3062,10 @@ gcn_asm_trampoline_template (FILE *f) static void gcn_trampoline_init (rtx m_tramp, tree fndecl, rtx chain_value) { + if (TARGET_GCN5_PLUS) + sorry ("nested function trampolines not supported on GCN5 due to" + " non-executable stacks"); + emit_block_move (m_tramp, assemble_trampoline_template (), GEN_INT (TRAMPOLINE_SIZE), BLOCK_OP_NORMAL); -- 2.47.2