HomePhabricator

[SLP] Try a bit harder to find reduction PHIs

Description

[SLP] Try a bit harder to find reduction PHIs

Summary:
Currently, when the SLP vectorizer considers whether a phi is part of a reduction, it dismisses phi's whose incoming blocks are not the same as the block containing the phi. For the patterns I'm looking at, extending this rule to allow phis whose incoming block is a containing loop latch allows me to vectorize certain workloads.

There is no significant compile-time impact, and combined with D13949, no performance improvement measured in ARM/AArch64 in any of SPEC2000, SPEC2006 or LNT.

Reviewers: jmolloy, mcrosier, nadav

Subscribers: mssimpso, nadav, aemerson, llvm-commits

Differential Revision: http://reviews.llvm.org/D14063

Details

Committed
chatur01Oct 27 2015, 10:54 AM
Differential Revision
D14063: [SLP] Try a bit harder to find reduction PHIs
Parents
rL251424: [SLP] Treat SelectInsts as reduction values.
Branches
Unknown
Tags
Unknown