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]

[autovect] [patch] complete-unrolling pass before the vectorizer


Hello,

This patch reschedule complete-unrolling and add constant propagation,
store-ccp and dse passes before the vectorization pass.  The motivation
for reschedule complete unrolling was discussed amongst others in
http://gcc.gnu.org/ml/gcc/2007-02/msg00070.html. We found store-ccp and
dse passes also useful when they are scheduled after lim and complete
unrolling passes, as it is shown in the testcase attached.  In this
testcase lim generates new temporaries which opens opportunities for
store-ccp and dse after complete unrolling applied.

This patch introduced new fails (which were fixed) to some vectorization
testcases as some loops are cancelled.  Also, adding new passes required
adjustment to some testcases to fixed the dump file number.

Bootstrap and tested on ppc. OK for autovect branch?

Thanks,
Revital


2007-03-19  Revital Eres  <eres@il.ibm.com>

        * passes.c (init_optimization_passes): move complete-unrolling
          pass before the vectorizer and add constant propagation,
          store-ccp, dse and dce passes after it.
        * testsuite/gcc.dg/tree-ssa/20030917-1.c: Fix dump file number.
        * testsuite/gcc.dg/tree-ssa/ssa-ccp-1.c: Likewise.
        * testsuite/gcc.dg/tree-ssa/pr21574.c: Likewise.
        * testsuite/gcc.dg/tree-ssa/20030917-3.c: Likewise.
        * testsuite/gcc.dg/tree-ssa/ssa-ccp-3.c: Likewise.
        * testsuite/gcc.dg/tree-ssa/pr14841.c: Likewise.
        * testsuite/gcc.dg/tree-ssa/20030731-2.c: Likewise.
        * testsuite/gcc.dg/tree-ssa/20040721-1.c: Likewise.
        * testsuite/gcc.dg/pr23911.c: Likewise.
        * testsuite/gcc.dg/vect/no-section-anchors-vect-69.c: Fix test.
        * testsuite/gcc.dg/vect/vect-70.c: Likewise.
        * testsuite/gcc.dg/vect/vect-66.c: Likewise.
        * testsuite/gcc.dg/lim_store_dse.c: New test.




(See attached file: lim_store_dse.txt)(See attached file:
passes_before_vect.txt)

Attachment: lim_store_dse.txt
Description: Text document

Attachment: passes_before_vect.txt
Description: Text document


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