llvm-6502/test/Analysis
Andrea Di Biagio 029a76b0a2 [Vectorizer] Add a new 'OperandValueKind' in TargetTransformInfo called
'OK_NonUniformConstValue' to identify operands which are constants but
not constant splats.

The cost model now allows returning 'OK_NonUniformConstValue'
for non splat operands that are instances of ConstantVector or
ConstantDataVector.

With this change, targets are now able to compute different costs
for instructions with non-uniform constant operands.
For example, On X86 the cost of a vector shift may vary depending on whether
the second operand is a uniform or non-uniform constant.

This patch applies the following changes:
 - The cost model computation now takes into account non-uniform constants;
 - The cost of vector shift instructions has been improved in
   X86TargetTransformInfo analysis pass;
 - BBVectorize, SLPVectorizer and LoopVectorize now know how to distinguish
   between non-uniform and uniform constant operands.

Added a new test to verify that the output of opt
'-cost-model -analyze' is valid in the following configurations: SSE2,
SSE4.1, AVX, AVX2.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@201272 91177308-0d34-0410-b5e6-96231b3b80d8
2014-02-12 23:43:47 +00:00
..
BasicAA Test case I forgot to 'add' for r201126. 2014-02-12 03:58:47 +00:00
BlockFrequencyInfo [tests] Cleanup initialization of test suffixes. 2013-08-16 00:37:11 +00:00
BranchProbabilityInfo Consider (x == -1) unlikely in BranchProbabilityInfo 2013-11-01 10:58:22 +00:00
CallGraph [tests] Cleanup initialization of test suffixes. 2013-08-16 00:37:11 +00:00
CostModel [Vectorizer] Add a new 'OperandValueKind' in TargetTransformInfo called 2014-02-12 23:43:47 +00:00
Delinearization delinearization of arrays 2013-11-12 22:47:20 +00:00
DependenceAnalysis improve dependence analysis testcases 2013-11-12 22:47:30 +00:00
Dominators [tests] Cleanup initialization of test suffixes. 2013-08-16 00:37:11 +00:00
GlobalsModRef BasicAA: Use reachabilty instead of dominance for checking value equality in phi 2014-01-03 05:47:03 +00:00
LazyCallGraph [PM] Add a new "lazy" call graph analysis pass for the new pass manager. 2014-02-06 04:37:03 +00:00
Lint Fix lint assert on integer vector division 2013-08-26 23:29:33 +00:00
LoopInfo FileCheck-ize tests. 2013-08-22 00:51:19 +00:00
MemoryDependenceAnalysis [tests] Cleanup initialization of test suffixes. 2013-08-16 00:37:11 +00:00
PostDominators FileCheck-ize tests. 2013-08-22 00:51:19 +00:00
RegionInfo [tests] Cleanup initialization of test suffixes. 2013-08-16 00:37:11 +00:00
ScalarEvolution ScalarEvolution: Analyze trip count of loops with a switch guarding the exit. 2014-02-11 15:44:32 +00:00
TypeBasedAliasAnalysis Fix known typos 2014-01-24 17:20:08 +00:00