diff options
author | krebbel <krebbel@138bc75d-0d04-0410-961f-82ee72b054a4> | 2018-04-12 10:20:11 +0000 |
---|---|---|
committer | krebbel <krebbel@138bc75d-0d04-0410-961f-82ee72b054a4> | 2018-04-12 10:20:11 +0000 |
commit | 627cba86ab6f1bf54199de46afb5eca88a5326c4 (patch) | |
tree | 9c47d97cc793490e5e563f93db899682c2c86c37 /gcc/config/s390/s390.c | |
parent | 8d38511c0006e1cb0c09af9de38a8aebb4607c08 (diff) |
IBM Z: Spectre: Prevent thunk cfi to be emitted with -fno-dwarf2-cfi-asm
The CFI magic we emit as part of the indirect branch thunks in order to
have somewhat sane unwind information must not be emitted with
-fno-dwarf2-cfi-asm.
gcc/ChangeLog:
2018-04-12 Andreas Krebbel <krebbel@linux.vnet.ibm.com>
Backport from mainline
2018-04-12 Andreas Krebbel <krebbel@linux.vnet.ibm.com>
* config/s390/s390.c (s390_output_indirect_thunk_function): Check
also for flag_dwarf2_cfi_asm.
gcc/testsuite/ChangeLog:
2018-04-12 Andreas Krebbel <krebbel@linux.vnet.ibm.com>
Backport from mainline
2018-04-12 Andreas Krebbel <krebbel@linux.vnet.ibm.com>
* gcc.target/s390/nobp-no-dwarf2-cfi.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-7-branch@259341 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/config/s390/s390.c')
-rw-r--r-- | gcc/config/s390/s390.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/gcc/config/s390/s390.c b/gcc/config/s390/s390.c index bc8e71a883d..603f5d6486e 100644 --- a/gcc/config/s390/s390.c +++ b/gcc/config/s390/s390.c @@ -15965,7 +15965,7 @@ s390_output_indirect_thunk_function (unsigned int regno, bool z10_p) Stopping in the thunk: backtrace will point to the thunk target is if it was interrupted by a signal. For a call this means that the call chain will be: caller->callee->thunk */ - if (flag_asynchronous_unwind_tables) + if (flag_asynchronous_unwind_tables && flag_dwarf2_cfi_asm) { fputs ("\t.cfi_signal_frame\n", asm_out_file); fprintf (asm_out_file, "\t.cfi_return_column %d\n", regno); |