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

Re: [autovect][patch]Loop Versioning for Vectorization

Thanks, Keith.

I committed the patch with the following things added:
1. report when alignment is forced using versioning (the relevant testcases
should check this report).
2. add a testcase to verify the functionality of versioning. currently this
is the only testcase for which versioning takes place on powerpc-darwin.
3. add code to verify that after peeling/versioning all accesses are
supportable with respect to alignment handling, and report accesses that
will remain unaligned in the vectorized loop (the testcases check these
4. in vect_enahnce_alignment, abort if vectype not available (rather than
return false) cause it's unexpected behavior.

Attached is the final version I comitted, bootstrapped and tested on

Left to do:
1. remove the calls to rewrite_into_loop_closed_form (I'm going to commit
this one shortly)
2. add flag to enable/disable versioning and use it in the current and new
3. build cost model to decide when to do versioning or peeling (or


(See attached file: feb2)

> Updated patch with requested changes using current source in autovect
> branch.
> Two issues to be resolved in the future.
> 1) Call to rewrite_into_loop_closed_ssa each time we vectorize a
> loop will be changed before autovect branch is merged into mainline.
> 2) Extra passes in tests will be resolved with a separate patch which
> adds a -ftree-vect-loop-version option.  This option will be on by
> default when vectorization is performed, but will be turned off in the
> test cases that currently have extra passes.
> Keith
>  [attachment "vect.1-27.diff" deleted by Dorit Naishlos/Haifa/IBM]
> [attachment "tree-vectorizer.1-27.c" deleted by Dorit Naishlos/Haifa/IBM]

Attachment: feb2
Description: Binary data

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