* doc/passes.texi: Document vectorization pass.

From-SVN: r99094
This commit is contained in:
Dorit Naishlos 2005-05-02 13:32:20 +00:00 committed by Dorit Nuzman
parent 5310bac6da
commit c9eb94f405
2 changed files with 17 additions and 0 deletions

View File

@ -1,3 +1,7 @@
2005-05-02 Dorit Naishlos <dorit@il.ibm.com>
* doc/passes.texi: Document vectorization pass.
2005-05-02 Kazu Hirata <kazu@cs.umass.edu>
* tree-scalar-evolution.c (get_exit_conditions_rec,

View File

@ -399,6 +399,19 @@ The optimizations also use various utility functions contained in
@file{tree-ssa-loop-manip.c}, @file{cfgloop.c}, @file{cfgloopanal.c} and
@file{cfgloopmanip.c}.
Vectorization. This pass transforms loops to operate on vector types
instead of scalar types. Data parallelism across loop iterations is exploited
to group data elements from consecutive iterations into a vector and operate
on them in parallel. Depending on available target support the loop is
conceptually unrolled by a factor @code{VF} (vectorization factor), which is
the number of elements operated upon in parallel in each iteration, and the
@code{VF} copies of each scalar operation are fused to form a vector operation.
Additional loop transformations such as peeling and versioning may take place
to align the number of iterations, and to align the memory accesses in the loop.
The pass is implemented in @file{tree-vectorizer.c} (the main driver and general
utilities), @file{tree-vect-analyze.c} and @file{tree-vect-tranform.c}.
Analysis of data references is in @file{tree-data-ref.c}.
@item Tree level if-conversion for vectorizer
This pass applies if-conversion to simple loops to help vectorizer.