diff options
author | Vladimir Makarov <vmakarov@redhat.com> | 2015-06-30 17:40:55 +0000 |
---|---|---|
committer | Vladimir Makarov <vmakarov@gcc.gnu.org> | 2015-06-30 17:40:55 +0000 |
commit | ef87312ec1246b8667da99e34ecfacff595c9c21 (patch) | |
tree | 84122957f4d1831b0346a506e4c3aa47b486b0d8 /gcc/lra-int.h | |
parent | 8b970b6e69aeddad690f7b1465d8aeeeb07c7536 (diff) |
re PR debug/66691 (ICE on valid code at -O3 with -g enabled in simplify_subreg, at simplify-rtx.c:5744)
2015-06-30 Vladimir Makarov <vmakarov@redhat.com>
PR debug/66691
* lra-int.h (lra_substitute_pseudo): Add a parameter.
(lra_substitute_pseudo_within_insn): Ditto.
* lra.c (lra_substitute_pseudo): Add a parameter. Simplify subreg
of constant.
(lra_substitute_pseudo_within_insn): Add a parameter. Transfer it
to lra_substitute_pseudo.
* lra-lives.c (process_bb_lives): Add an argument to
lra_substitute_pseudo_within_insn call.
* lra-constraints.c (inherit_reload_reg, split_reg): Add an
argument to lra_substitute_pseudo and
lra_substitute_pseudo_within_insn calls.
(remove_inheritance_pseudos, undo_optional_reloads): Ditto.
2015-06-30 Vladimir Makarov <vmakarov@redhat.com>
PR debug/66691
* gcc.target/i386/pr66691.c: New.
From-SVN: r225200
Diffstat (limited to 'gcc/lra-int.h')
-rw-r--r-- | gcc/lra-int.h | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/gcc/lra-int.h b/gcc/lra-int.h index 25bd3cefd81..e1d5ef2c918 100644 --- a/gcc/lra-int.h +++ b/gcc/lra-int.h @@ -358,8 +358,8 @@ extern void lra_update_dups (lra_insn_recog_data_t, signed char *); extern void lra_process_new_insns (rtx_insn *, rtx_insn *, rtx_insn *, const char *); -extern bool lra_substitute_pseudo (rtx *, int, rtx); -extern bool lra_substitute_pseudo_within_insn (rtx_insn *, int, rtx); +extern bool lra_substitute_pseudo (rtx *, int, rtx, bool); +extern bool lra_substitute_pseudo_within_insn (rtx_insn *, int, rtx, bool); extern lra_insn_recog_data_t lra_set_insn_recog_data (rtx_insn *); extern lra_insn_recog_data_t lra_update_insn_recog_data (rtx_insn *); |