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

--- Comment #3 from Ulrich Weigand <uweigand at gcc dot gnu.org> 2012-05-04 
12:46:14 UTC ---
Author: uweigand
Date: Fri May  4 12:46:04 2012
New Revision: 187158

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=187158
Log:
    gcc/
    PR tree-optimization/52633
    * tree-vect-patterns.c (vect_vect_recog_func_ptrs): Swap order of
    vect_recog_widen_shift_pattern and vect_recog_over_widening_pattern.
    (vect_recog_over_widening_pattern): Remove handling of code that was
    already detected as over-widening pattern.  Remove special handling
    of "unsigned" cases.  Instead, support general case of conversion
    of the shift result to another type.

    gcc/testsuite/
    PR tree-optimization/52633
    * gcc.dg/vect/vect-over-widen-1.c: Two patterns should now be
    recognized as widening shifts instead of over-widening.
    * gcc.dg/vect/vect-over-widen-1-big-array.c: Likewise.
    * gcc.dg/vect/vect-over-widen-4.c: Likewise.
    * gcc.dg/vect/vect-over-widen-4-big-array.c: Likewise.
    * gcc.target/arm/pr52633.c: New test.

Added:
    trunk/gcc/testsuite/gcc.target/arm/pr52633.c
Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/testsuite/ChangeLog
    trunk/gcc/testsuite/gcc.dg/vect/vect-over-widen-1-big-array.c
    trunk/gcc/testsuite/gcc.dg/vect/vect-over-widen-1.c
    trunk/gcc/testsuite/gcc.dg/vect/vect-over-widen-4-big-array.c
    trunk/gcc/testsuite/gcc.dg/vect/vect-over-widen-4.c
    trunk/gcc/tree-vect-patterns.c

Reply via email to