diff options
author | Jakub Jelinek <jakub@redhat.com> | 2014-03-20 20:47:09 +0100 |
---|---|---|
committer | Jakub Jelinek <jakub@gcc.gnu.org> | 2014-03-20 20:47:09 +0100 |
commit | b8f045e2e4d0fd3cebf715cca45ba7de08b25bd2 (patch) | |
tree | 95a9dec2ea3c131d8169e3dd21046b00399d2731 /gcc/ira.c | |
parent | 7614d42cb4103e495f1d91c9c71bf8feae4bae69 (diff) | |
download | gcc-b8f045e2e4d0fd3cebf715cca45ba7de08b25bd2.zip gcc-b8f045e2e4d0fd3cebf715cca45ba7de08b25bd2.tar.gz gcc-b8f045e2e4d0fd3cebf715cca45ba7de08b25bd2.tar.bz2 |
re PR middle-end/60597 (ICE in df_refs_verify, at df-scan.c:4323)
PR middle-end/60597
* ira.c (adjust_cleared_regs): Call copy_rtx on
*reg_equiv[REGNO (loc)].src_p before passing it to
simplify_replace_fn_rtx.
* g++.dg/opt/pr60597.C: New test.
From-SVN: r208735
Diffstat (limited to 'gcc/ira.c')
-rw-r--r-- | gcc/ira.c | 2 |
1 files changed, 1 insertions, 1 deletions
@@ -3428,7 +3428,7 @@ adjust_cleared_regs (rtx loc, const_rtx old_rtx ATTRIBUTE_UNUSED, void *data) { bitmap cleared_regs = (bitmap) data; if (bitmap_bit_p (cleared_regs, REGNO (loc))) - return simplify_replace_fn_rtx (*reg_equiv[REGNO (loc)].src_p, + return simplify_replace_fn_rtx (copy_rtx (*reg_equiv[REGNO (loc)].src_p), NULL_RTX, adjust_cleared_regs, data); } return NULL_RTX; |