diff options
author | Jakub Jelinek <jakub@redhat.com> | 2016-08-08 15:58:46 +0200 |
---|---|---|
committer | Jakub Jelinek <jakub@gcc.gnu.org> | 2016-08-08 15:58:46 +0200 |
commit | 5435398d80bca0b21cfb6717155b39fb65d38085 (patch) | |
tree | cdcc088872a42d29855f73da83b38281d05bd41d /gcc | |
parent | a1c138325c69c051fa9eb04d350ca2967a6480f7 (diff) | |
download | gcc-5435398d80bca0b21cfb6717155b39fb65d38085.zip gcc-5435398d80bca0b21cfb6717155b39fb65d38085.tar.gz gcc-5435398d80bca0b21cfb6717155b39fb65d38085.tar.bz2 |
re PR rtl-optimization/72821 (RTL check: expected elt 2 type 'B', have '0' (rtx barrier) in BLOCK_FOR_INSN, at rtl.h:1424)
PR rtl-optimization/72821
* lra-spills.c (regno_in_use_p): Don't use BLOCK_FOR_INSN on barriers,
just return false for them.
From-SVN: r239241
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/lra-spills.c | 5 |
2 files changed, 9 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 66e4049..1e9e56c 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2016-08-08 Jakub Jelinek <jakub@redhat.com> + + PR rtl-optimization/72821 + * lra-spills.c (regno_in_use_p): Don't use BLOCK_FOR_INSN on barriers, + just return false for them. + 2016-08-08 Alan Modra <amodra@gmail.com> PR target/72771 diff --git a/gcc/lra-spills.c b/gcc/lra-spills.c index d7529ea..768ae82 100644 --- a/gcc/lra-spills.c +++ b/gcc/lra-spills.c @@ -697,9 +697,10 @@ regno_in_use_p (rtx_insn *insn, unsigned int regno) int i, arg_regno; basic_block bb = BLOCK_FOR_INSN (insn); - while ((insn = next_nondebug_insn (insn)) != NULL_RTX - && bb == BLOCK_FOR_INSN (insn)) + while ((insn = next_nondebug_insn (insn)) != NULL_RTX) { + if (BARRIER_P (insn) || bb != BLOCK_FOR_INSN (insn)) + return false; if (! INSN_P (insn)) continue; if (GET_CODE (PATTERN (insn)) == USE |