http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49088

--- Comment #5 from H.J. Lu <hjl.tools at gmail dot com> 2011-05-20 20:12:10 
UTC ---
The problem is

Breakpoint 3, force_to_mode (x=0x7ffff0acbde0, mode=DImode, mask=4294967295, 
    just_select=0) at /export/gnu/import/git/gcc-x32/gcc/combine.c:8325
8325          op1 = force_to_mode (XEXP (x, 1), mode, mask, next_select);
(gdb) call debug_rtx (x)
(plus:SI (subreg:SI (reg/f:DI 20 frame) 0)
    (const_int -58 [0xffffffffffffffc6]))
(gdb) 

      /* For most binary operations, just propagate into the operation and
         change the mode if we have an operation of that mode.  */

      op0 = force_to_mode (XEXP (x, 0), mode, mask, next_select);
      op1 = force_to_mode (XEXP (x, 1), mode, mask, next_select);

Shouldn't MASK be sign-extended to MODE here?

Reply via email to