diff options
author | Andrew Pinski <pinskia@physics.uc.edu> | 2005-10-05 19:50:27 +0000 |
---|---|---|
committer | Andrew Pinski <pinskia@gcc.gnu.org> | 2005-10-05 12:50:27 -0700 |
commit | d14e25e00b51fc6e284eb285ddb30a08a6274a8f (patch) | |
tree | b3e22449dd0f8866c2cae00fb256894231507cc6 /gcc/reload.c | |
parent | f935b9e01baa27a130b3ac6d2ce0e70b9a3607b1 (diff) | |
download | gcc-d14e25e00b51fc6e284eb285ddb30a08a6274a8f.zip gcc-d14e25e00b51fc6e284eb285ddb30a08a6274a8f.tar.gz gcc-d14e25e00b51fc6e284eb285ddb30a08a6274a8f.tar.bz2 |
re PR middle-end/20606 (ICE in make_edges, at cfgbuild.c:327 on x86_64 (with O2 - not with no optimizations))
2005-10-05 Andrew Pinski <pinskia@physics.uc.edu>
PR middle-end/20606
PR middle-end/24069
* reload.c (subst_reloads): When adding a REG_LABEL to a
jump instruction, also update JUMP_LABEL.
From-SVN: r105013
Diffstat (limited to 'gcc/reload.c')
-rw-r--r-- | gcc/reload.c | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/gcc/reload.c b/gcc/reload.c index c8e8c07..e55bf34 100644 --- a/gcc/reload.c +++ b/gcc/reload.c @@ -6033,9 +6033,12 @@ subst_reloads (rtx insn) register refers to. */ if (GET_CODE (*r->where) == LABEL_REF && JUMP_P (insn)) - REG_NOTES (insn) = gen_rtx_INSN_LIST (REG_LABEL, - XEXP (*r->where, 0), - REG_NOTES (insn)); + { + REG_NOTES (insn) = gen_rtx_INSN_LIST (REG_LABEL, + XEXP (*r->where, 0), + REG_NOTES (insn)); + JUMP_LABEL (insn) = XEXP (*r->where, 0); + } /* Encapsulate RELOADREG so its machine mode matches what used to be there. Note that gen_lowpart_common will |