re PR rtl-optimization/35281 (multiply with 0 generated for 64*32->64)
2008-03-11 Paolo Bonzini <bonzini@gnu.org> PR rtl-optimization/35281 * expr.c (convert_move): Use a new pseudo for the intermediate from_mode->word_mode result. From-SVN: r133116
This commit is contained in:
parent
30e257e544
commit
2f6025a15b
2 changed files with 9 additions and 3 deletions
|
@ -1,3 +1,9 @@
|
|||
2008-03-11 Paolo Bonzini <bonzini@gnu.org>
|
||||
|
||||
PR rtl-optimization/35281
|
||||
* expr.c (convert_move): Use a new pseudo for the intermediate
|
||||
from_mode->word_mode result.
|
||||
|
||||
2008-03-11 Paolo Bonzini <bonzini@gnu.org>
|
||||
|
||||
* langhooks-def.h (LANG_HOOKS_CLEAR_BINDING_STACK): Delete.
|
||||
|
|
|
@ -552,15 +552,15 @@ convert_move (rtx to, rtx from, int unsignedp)
|
|||
&& ((code = can_extend_p (to_mode, word_mode, unsignedp))
|
||||
!= CODE_FOR_nothing))
|
||||
{
|
||||
rtx word_to = gen_reg_rtx (word_mode);
|
||||
if (REG_P (to))
|
||||
{
|
||||
if (reg_overlap_mentioned_p (to, from))
|
||||
from = force_reg (from_mode, from);
|
||||
emit_insn (gen_rtx_CLOBBER (VOIDmode, to));
|
||||
}
|
||||
convert_move (gen_lowpart (word_mode, to), from, unsignedp);
|
||||
emit_unop_insn (code, to,
|
||||
gen_lowpart (word_mode, to), equiv_code);
|
||||
convert_move (word_to, from, unsignedp);
|
||||
emit_unop_insn (code, to, word_to, equiv_code);
|
||||
return;
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue