reload1.c (reload_cse_simplify_set): For LOAD_EXTEND_OP, do not "widen" a destination that is already wider than a word.
* reload1.c (reload_cse_simplify_set): For LOAD_EXTEND_OP, do not "widen" a destination that is already wider than a word. Also do not widen if LOAD_EXTEND_OP is NIL for the given mode. From-SVN: r40510
This commit is contained in:
parent
bb2cf916da
commit
b216e516b8
@ -1,3 +1,9 @@
|
||||
Thu Mar 15 12:57:14 2001 Jeffrey A Law (law@cygnus.com)
|
||||
|
||||
* reload1.c (reload_cse_simplify_set): For LOAD_EXTEND_OP, do not
|
||||
"widen" a destination that is already wider than a word. Also do
|
||||
not widen if LOAD_EXTEND_OP is NIL for the given mode.
|
||||
|
||||
2001-03-15 Bernd Schmidt <bernds@redhat.com>
|
||||
|
||||
* config/ia64/ia64.c (ia64_sched_reorder): Remove debugging aids.
|
||||
|
@ -8279,9 +8279,13 @@ reload_cse_simplify_set (set, insn)
|
||||
&& GET_CODE (SET_SRC (set)) != REG))
|
||||
{
|
||||
#ifdef LOAD_EXTEND_OP
|
||||
rtx wide_dest = gen_rtx_REG (word_mode, REGNO (SET_DEST (set)));
|
||||
ORIGINAL_REGNO (wide_dest) = ORIGINAL_REGNO (SET_DEST (set));
|
||||
validate_change (insn, &SET_DEST (set), wide_dest, 1);
|
||||
if (GET_MODE_BITSIZE (GET_MODE (SET_DEST (set))) < BITS_PER_WORD
|
||||
&& extend_op != NIL)
|
||||
{
|
||||
rtx wide_dest = gen_rtx_REG (word_mode, REGNO (SET_DEST (set)));
|
||||
ORIGINAL_REGNO (wide_dest) = ORIGINAL_REGNO (SET_DEST (set));
|
||||
validate_change (insn, &SET_DEST (set), wide_dest, 1);
|
||||
}
|
||||
#endif
|
||||
|
||||
validate_change (insn, &SET_SRC (set), copy_rtx (this_rtx), 1);
|
||||
|
Loading…
Reference in New Issue
Block a user