| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
| |
- added function to VectorTargetTransformInfo to query cost of intrinsics
- vectorize trivially vectorizable intrinsic calls such as sin, cos, log, etc.
Reviewed by: Nadav
llvm-svn: 169711
|
|
|
|
|
|
| |
...) to zero.
llvm-svn: 169423
|
|
|
|
|
|
| |
free. Thanks Andy!
llvm-svn: 167685
|
|
|
|
| |
llvm-svn: 167422
|
|
|
|
| |
llvm-svn: 167412
|
|
|
|
| |
llvm-svn: 167401
|
|
|
|
| |
llvm-svn: 167395
|
|
|
|
| |
llvm-svn: 167323
|
|
|
|
|
|
| |
bitcasts cost zero.
llvm-svn: 167170
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
When the switch-to-lookup tables transform landed in SimplifyCFG, it
was pointed out that this could be inappropriate for some targets.
Since there was no way at the time for the pass to know anything about
the target, an awkward reverse-transform was added in CodeGenPrepare
that turned lookup tables back into switches for some targets.
This patch uses the new TargetTransformInfo to determine if a
switch should be transformed, and removes
CodeGenPrepare::ConvertLoadToSwitch.
llvm-svn: 167011
|
|
|
|
|
|
|
| |
getCastInstrCost had an assert prohibiting scalar to vector casts. Such casts,
however, are allowed. This should make the vectorizer buildbot happier.
llvm-svn: 166998
|
|
|
|
| |
llvm-svn: 166936
|
|
|
|
|
|
|
|
|
|
| |
LLVM using cmake.
Get the number of registers by calling getTypeLegalizationCost.
PR14199.
llvm-svn: 166911
|
|
|
|
|
|
|
|
|
|
| |
Add getCostXXX calls for different families of opcodes, such as casts, arithmetic, cmp, etc.
Port the LoopVectorizer to the new API.
The LoopVectorizer now finds instructions which will remain uniform after vectorization. It uses this information when calculating the cost of these instructions.
llvm-svn: 166836
|
|
|
|
|
|
| |
Patch by Pasi Parviainen <pasi.parviainen@iki.fi>
llvm-svn: 166773
|
|
|
|
|
|
|
| |
As discussed on IRC, add VectorTargetTransform::getNumberOfParts
to provide a stable interface to the vector legalization splitting factor.
llvm-svn: 166751
|
|
|
|
| |
llvm-svn: 166706
|
|
|
|
| |
llvm-svn: 166642
|
|
|
|
|
|
| |
and bb vectorizers for modeling the cost of instructions.
llvm-svn: 166593
|
|
|
|
|
|
| |
Lowerinvoke.
llvm-svn: 166248
|
|
|
|
|
|
|
|
|
|
|
| |
The TargetTransform changes are breaking LTO bootstraps of clang. I am
working with Nadav to figure out the problem, but I am reverting it for now
to get our buildbots working.
This reverts svn commits: 165665 165669 165670 165786 165787 165997
and I have also reverted clang svn 165741
llvm-svn: 166168
|
|
information.
llvm-svn: 165665
|