On Wed, May 08, 2013 at 01:03:41AM +0200, Marc Glisse wrote:
> On Tue, 7 May 2013, Marc Glisse wrote:
> 
> >     * fold-const.c (operand_equal_p): Use element_precision.
> >     (fold_binary_loc): Handle vector types.
> 
> Note that this causes a regression in some cases: it now recognizes
> LROTATE_EXPR for vectors, but then on x86_64 it isn't a supported
> vector operation so it is lowered to scalar rotations, which is
> worse than the shift+shift+or that we started with. But it only
> means that the vector lowering is bad, not that the patch is wrong.
> I didn't check if the vectorizer was clever enough to split
> rotations into shifts+or when that helps.

For rotations if we don't have a vector rotation we just need to
pattern detect it as shifts + or.  It is on my todo list.

        Jakub

Reply via email to