From 7839a79c96c4568ad8cb933b83a9176e4a7315fa Mon Sep 17 00:00:00 2001 From: Ulrich Weigand Date: Mon, 23 Jul 2012 17:28:36 +0000 Subject: [PATCH] * config/arm/arm.c (arm_reorg): Ensure all insns are split. From-SVN: r189790 --- gcc/ChangeLog | 4 ++++ gcc/config/arm/arm.c | 7 +++++++ 2 files changed, 11 insertions(+) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index a34897f..f6dafd1 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,7 @@ +2012-07-23 Ulrich Weigand + + * config/arm/arm.c (arm_reorg): Ensure all insns are split. + 2012-07-23 Uros Bizjak PR target/53961 diff --git a/gcc/config/arm/arm.c b/gcc/config/arm/arm.c index d5316fe..376274a 100644 --- a/gcc/config/arm/arm.c +++ b/gcc/config/arm/arm.c @@ -13415,6 +13415,13 @@ arm_reorg (void) if (TARGET_THUMB2) thumb2_reorg (); + /* Ensure all insns that must be split have been split at this point. + Otherwise, the pool placement code below may compute incorrect + insn lengths. Note that when optimizing, all insns have already + been split at this point. */ + if (!optimize) + split_all_insns_noflow (); + minipool_fix_head = minipool_fix_tail = NULL; /* The first insn must always be a note, or the code below won't -- 2.7.4