This is the mail archive of the gcc-bugs@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]

[Bug tree-optimization/52870] ICE during SLP pattern matching


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

--- Comment #6 from Ulrich Weigand <uweigand at gcc dot gnu.org> 2012-05-04 14:56:52 UTC ---
Author: uweigand
Date: Fri May  4 14:56:48 2012
New Revision: 187162

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=187162
Log:
2012-05-04  Ulrich Weigand  <ulrich.weigand@linaro.org>

     Backport from mainline:

     2012-05-04  Ulrich Weigand  <ulrich.weigand@linaro.org>

     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.

     2012-05-04  Ulrich Weigand  <ulrich.weigand@linaro.org>

     * tree-vect-patterns.c (vect_single_imm_use): New function.
     (vect_recog_widen_mult_pattern): Use it instead of open-coding loop.
     (vect_recog_over_widening_pattern): Likewise.
     (vect_recog_widen_shift_pattern): Likewise.

     2012-04-10  Ulrich Weigand  <ulrich.weigand@linaro.org>

     PR tree-optimization/52870
     * tree-vect-patterns.c (vect_recog_widen_mult_pattern): Verify that
     presumed pattern statement is within the same loop or basic block.

2012-05-04  Ulrich Weigand  <ulrich.weigand@linaro.org>

     Backport from mainline:

     2012-05-04  Ulrich Weigand  <ulrich.weigand@linaro.org>

     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.

     2012-04-10  Ulrich Weigand  <ulrich.weigand@linaro.org>

     PR tree-optimization/52870
     * gcc.dg/vect/pr52870.c: New test.

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


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