diff options
author | Terry Guo <terry.guo@arm.com> | 2014-06-18 10:11:08 +0000 |
---|---|---|
committer | Xuepeng Guo <xguo@gcc.gnu.org> | 2014-06-18 10:11:08 +0000 |
commit | 35d147ef16192080c370e3c3ea6f1c8e4238da0d (patch) | |
tree | 3f3c50d9da3aa2d656f85d5cba50773c6f2f9533 /gcc | |
parent | ad4684c22a15c7ec945c11a2ae9688b622d63cff (diff) | |
download | gcc-35d147ef16192080c370e3c3ea6f1c8e4238da0d.zip gcc-35d147ef16192080c370e3c3ea6f1c8e4238da0d.tar.gz gcc-35d147ef16192080c370e3c3ea6f1c8e4238da0d.tar.bz2 |
re PR target/61544 (ICE due to thumb1_reorg function mishandles label type insn)
2014-06-18 Terry Guo <terry.guo@arm.com>
PR target/61544
* config/arm/arm.c (thumb1_reorg): Move to next basic block if we
reach the head.
From-SVN: r211775
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/config/arm/arm.c | 3 |
2 files changed, 8 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 39fa9c2..29c8e52 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2014-06-18 Terry Guo <terry.guo@arm.com> + + PR target/61544 + * config/arm/arm.c (thumb1_reorg): Move to next basic block if we + reach the head. + 2014-06-18 Richard Biener <rguenther@suse.de> * common.opt (fssa-phiopt): New option. diff --git a/gcc/config/arm/arm.c b/gcc/config/arm/arm.c index 85d2114..463707e 100644 --- a/gcc/config/arm/arm.c +++ b/gcc/config/arm/arm.c @@ -16946,7 +16946,8 @@ thumb1_reorg (void) insn = PREV_INSN (insn); /* Find the last cbranchsi4_insn in basic block BB. */ - if (INSN_CODE (insn) != CODE_FOR_cbranchsi4_insn) + if (insn == BB_HEAD (bb) + || INSN_CODE (insn) != CODE_FOR_cbranchsi4_insn) continue; /* Get the register with which we are comparing. */ |