This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH, rtl-optimization]: Fix PR rtl-optimization/33846, ICE in trunc_int_for_mode, at explow.c:55


On 10/22/07, Eric Botcazou <ebotcazou@libertysurf.fr> wrote:

> > The fix is simply to pass inner mode of the vector mode to the
> > trunc_int_for_mode when shift-by-constant-scalar-value RTX is
> > processed. I have checked that the loop is still vecotrized (and
> > expected result is produced).

> No, I think that
>
> GET_CODE (XEXP (varop, 1)) == CONST_INT
>
> should have avoided the problem.  Where does the CONST_INT come from?

The combiner creates:

(set (reg:V4SI 106)
    (ashiftrt:V4SI (xor:V4SI (reg:V4SI 102)
            (const_int -1 [0xffffffff]))
        (const_int 31 [0x1f])))

and -1 is passed with V4SImode to trunc_int_for_mode.

Uros.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]