Commit 485eeec4 by Doug Evans

flow.c (mark_set_1): Record explicit hard registers in their raw mode.

* flow.c (mark_set_1): Record explicit hard registers in their raw mode.
(mark_used_regs): Likewise.
* combine.c (distribute_notes): Likewise.

From-SVN: r7670
parent 04227afa
...@@ -10568,7 +10568,7 @@ distribute_notes (notes, from_insn, i3, i2, elim_i2, elim_i1) ...@@ -10568,7 +10568,7 @@ distribute_notes (notes, from_insn, i3, i2, elim_i2, elim_i1)
for (i = regno; i < endregno; i++) for (i = regno; i < endregno; i++)
if (! refers_to_regno_p (i, i + 1, PATTERN (place), 0)) if (! refers_to_regno_p (i, i + 1, PATTERN (place), 0))
{ {
rtx piece = gen_rtx (REG, word_mode, i); rtx piece = gen_rtx (REG, reg_raw_mode[i], i);
rtx p; rtx p;
/* See if we already placed a USE note for this /* See if we already placed a USE note for this
...@@ -10615,7 +10615,7 @@ distribute_notes (notes, from_insn, i3, i2, elim_i2, elim_i1) ...@@ -10615,7 +10615,7 @@ distribute_notes (notes, from_insn, i3, i2, elim_i2, elim_i1)
for (i = regno; i < endregno; i++) for (i = regno; i < endregno; i++)
{ {
rtx piece = gen_rtx (REG, word_mode, i); rtx piece = gen_rtx (REG, reg_raw_mode[i], i);
if (reg_referenced_p (piece, PATTERN (place)) if (reg_referenced_p (piece, PATTERN (place))
&& ! dead_or_set_p (place, piece) && ! dead_or_set_p (place, piece)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment