On Sun, Mar 11, 2012 at 2:06 AM, H.J. Lu <hjl.to...@gmail.com> wrote: > On Thu, Mar 8, 2012 at 3:22 AM, Uros Bizjak <ubiz...@gmail.com> wrote: >> On Fri, Mar 2, 2012 at 10:02 PM, H.J. Lu <hongjiu...@intel.com> wrote: >> >>> This patches uses word_mode instead of Pmode in loop expand since >>> word_mode may have bigger size than Pmode. OK for trunk? >>> >>> Thanks. >>> >>> H.J. >>> --- >>> 2012-03-02 H.J. Lu <hongjiu...@intel.com> >>> >>> * config/i386/i386.c (ix86_expand_movmem): Use word_mode instead >>> of Pmode on loop. >>> (ix86_expand_setmem): Likwise. >> >> Jan, can you please comment on the changes in this patch? >> > > Here is a complete updated patch to use word_mode in ix86_expand_movmem > and ix86_expand_setmem. It also fixes ix86_zero_extend_to_Pmode to handle > Pmode != DImode. OK for trunk?
Please rewrite ix86_zero_extend_to_Pmode to something like: rtx tmp; if (GET_MODE (exp) != Pmode) tmp = convert_to_mode (Pmode, exp, 1); return force_reg (Pmode, tmp)); Uros.