llvm/test/Analysis
Arnold Schwaighofer b6f4872d29 ARM cost model: Increase the cost for vector casts that use the stack
Increase the cost of v8/v16-i8 to v8/v16-i32 casts and truncates as the backend
currently lowers those using stack accesses.

This was responsible for a significant degradation on
MultiSource/Benchmarks/Trimaran/enc-pc1/enc-pc1
where we vectorize one loop to a vector factor of 16. After this patch we select
a vector factor of 4 which will generate reasonable code.

unsigned char cle[32];

void test(short c) {
  unsigned short compte;
  for (compte = 0; compte <= 31; compte++) {
    cle[compte] = cle[compte] ^ c;
  }
}

radar://13220512

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@176898 91177308-0d34-0410-b5e6-96231b3b80d8
2013-03-12 21:19:22 +00:00
..
BasicAA Memory Dependence Analysis (not mem-dep test) take advantage of "invariant.load" metadata. 2013-03-06 17:48:48 +00:00
BlockFrequencyInfo Replace all instances of dg.exp file with lit.local.cfg, since all tests are run with LIT now and now Dejagnu. dg.exp is no longer needed. 2012-02-16 06:28:33 +00:00
BranchProbabilityInfo BranchProb: modify the definition of an edge in BranchProbabilityInfo to handle 2012-08-24 18:14:27 +00:00
CallGraph Now that invoke of an intrinsic is possible (for the llvm.do.nothing intrinsic) 2012-09-26 17:16:01 +00:00
CostModel ARM cost model: Increase the cost for vector casts that use the stack 2013-03-12 21:19:22 +00:00
DependenceAnalysis Modified dump() to provide a little 2012-11-30 00:44:47 +00:00
Dominators Tests: rewrite 'opt ... %s' to 'opt ... < %s' so that opt does not emit a ModuleID 2012-12-30 02:33:22 +00:00
GlobalsModRef MemoryDependenceAnalysis attempts to find the first memory dependency for function calls. 2012-08-13 23:03:43 +00:00
LoopInfo Convert all tests using TCL-style quoting to use shell-style quoting. 2012-07-02 12:47:22 +00:00
PostDominators Replace all instances of dg.exp file with lit.local.cfg, since all tests are run with LIT now and now Dejagnu. dg.exp is no longer needed. 2012-02-16 06:28:33 +00:00
Profiling AArch64: adjust tests which rely on a default JIT 2013-02-18 11:08:37 +00:00
RegionInfo Revert the test moves from 176733. Use "REQUIRES: asserts" instead. 2013-03-12 16:27:52 +00:00
ScalarEvolution Tests: rewrite 'opt ... %s' to 'opt ... < %s' so that opt does not emit a ModuleID 2012-12-30 02:33:22 +00:00
TypeBasedAliasAnalysis Use references to attribute groups on the call/invoke instructions. 2013-02-22 09:09:42 +00:00