diff options
author | Uros Bizjak <ubizjak@gmail.com> | 2018-11-21 21:18:45 +0100 |
---|---|---|
committer | Uros Bizjak <uros@gcc.gnu.org> | 2018-11-21 21:18:45 +0100 |
commit | 96af90b5d6f0a29d09627bba215ffe2f2d638f3e (patch) | |
tree | 3c5e4b935ef76673db8778a6ebb8c1b3044295ed | |
parent | c339a8985df1288e569d550a1f22f50399e998e8 (diff) | |
download | gcc-96af90b5d6f0a29d09627bba215ffe2f2d638f3e.zip gcc-96af90b5d6f0a29d09627bba215ffe2f2d638f3e.tar.gz gcc-96af90b5d6f0a29d09627bba215ffe2f2d638f3e.tar.bz2 |
re PR middle-end/88129 (Two blockage insns are emited in the function epilogue)
PR middle-end/88129
* function.c (expand_function_end): Do not emit extra blockage insn.
From-SVN: r266356
-rw-r--r-- | gcc/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/function.c | 8 |
2 files changed, 5 insertions, 8 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index d789d9f..5e09cd6 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2018-11-21 Uros Bizjak <ubizjak@gmail.com> + + PR middle-end/88129 + * function.c (expand_function_end): Do not emit extra blockage insn. + 2018-11-21 Lokesh Janghel <lokeshjanghel91@gmail.com> PR target/85667 diff --git a/gcc/function.c b/gcc/function.c index 954e946..85a5d9f 100644 --- a/gcc/function.c +++ b/gcc/function.c @@ -5341,14 +5341,6 @@ expand_function_end (void) if (flag_exceptions) sjlj_emit_function_exit_after (get_last_insn ()); } - else - { - /* We want to ensure that instructions that may trap are not - moved into the epilogue by scheduling, because we don't - always emit unwind information for the epilogue. */ - if (cfun->can_throw_non_call_exceptions) - emit_insn (gen_blockage ()); - } /* If this is an implementation of throw, do what's necessary to communicate between __builtin_eh_return and the epilogue. */ |