BBVectorize: Account for internal shuffle costs
authorHal Finkel <hfinkel@anl.gov>
Thu, 1 Nov 2012 06:26:34 +0000 (06:26 +0000)
committerHal Finkel <hfinkel@anl.gov>
Thu, 1 Nov 2012 06:26:34 +0000 (06:26 +0000)
commit86ccc55c82651f91fd6a312c5f6a4b511bcd1aec
treee9094f4db9bc48740465df1d5d0e5fee12f8e1ba
parentf0e06e8d4445a45b18d18efcdb7c6fef22e90047
BBVectorize: Account for internal shuffle costs

When target costs are available, use them to account for the costs of
shuffles on internal edges of the DAG of candidate pairs.

Because the shuffle costs here are currently for only the internal edges,
the current target cost model is trivial, and the chain depth requirement
is still in place, I don't yet have an easy test
case. Nevertheless, by looking at the debug output, it does seem to do the right
think to the effective "size" of each DAG of candidate pairs.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@167217 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Transforms/Vectorize/BBVectorize.cpp