aboutsummaryrefslogtreecommitdiff
path: root/gcc/lra.cc
diff options
context:
space:
mode:
Diffstat (limited to 'gcc/lra.cc')
-rw-r--r--gcc/lra.cc6
1 files changed, 4 insertions, 2 deletions
diff --git a/gcc/lra.cc b/gcc/lra.cc
index 8c69917..2b3014f 100644
--- a/gcc/lra.cc
+++ b/gcc/lra.cc
@@ -2615,8 +2615,10 @@ lra (FILE *f, int verbose)
inserted_p = fixup_abnormal_edges ();
- /* We've possibly turned single trapping insn into multiple ones. */
- if (cfun->can_throw_non_call_exceptions)
+ /* Split basic blocks if we've possibly turned single trapping insn
+ into multiple ones or otherwise the backend requested to do so. */
+ if (cfun->can_throw_non_call_exceptions
+ || cfun->split_basic_blocks_after_reload)
{
auto_sbitmap blocks (last_basic_block_for_fn (cfun));
bitmap_ones (blocks);