This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [PATCH, vectorizer]: Fix PR tree-optimization/33846, ICE in trunc_int_for_mode, at explow.c:55
- From: Eric Botcazou <ebotcazou at libertysurf dot fr>
- To: "Uros Bizjak" <ubizjak at gmail dot com>
- Cc: gcc-patches at gcc dot gnu dot org
- Date: Mon, 22 Oct 2007 11:50:53 +0200
- Subject: Re: [PATCH, vectorizer]: Fix PR tree-optimization/33846, ICE in trunc_int_for_mode, at explow.c:55
- References: <5787cf470710220140w21d14903se64abc4404f7613c@mail.gmail.com>
> 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).
The subject of the message should not be "vectorizer" then.
> Patch was bootstrapped and regression tested on i686-pc-linux-gnu.
>
> OK for mainline
No, I think that
GET_CODE (XEXP (varop, 1)) == CONST_INT
should have avoided the problem. Where does the CONST_INT come from?
> 2007-10-22 Uros Bizjak <ubizjak@gmail.com>
>
> PR tree-optimization/33846
> * combine.c (simplify_shift_const_1): Use inner mode for vector
> shift_mode in the call to trunc_int_for_mode when varop == XOR.
It's PR rtl-optimization/33846 if you touch the combiner.
--
Eric Botcazou