1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-20 03:23:01 +02:00
llvm-mirror/test/Analysis/CostModel
Hal Finkel 9364c269c6 Account for scalarization costs in BasicTTI::getMemoryOpCost for extending vector loads
When a vector type legalizes to a larger vector type, and the target does not
support the associated extending load (or truncating store), then legalization
will scalarize the load (or store) resulting in an associated scalarization
cost.  BasicTTI::getMemoryOpCost needs to account for this.

Between this, and r205487, PowerPC on the P7 with VSX enabled shows:

MultiSource/Benchmarks/PAQ8p/paq8p: 43% speedup
SingleSource/Benchmarks/BenchmarkGame/puzzle: 51% speedup
SingleSource/UnitTests/Vectorizer/gcc-loops 28% speedup

(some of these are new; some of these, such as PAQ8p, just reverse regressions
that VSX support would trigger)

llvm-svn: 205495
2014-04-03 00:53:59 +00:00
..
ARM When analyzing vectors of element type that require legalization, 2014-03-10 22:59:13 +00:00
ARM64 ARM64: initial backend import 2014-03-29 10:18:08 +00:00
PowerPC Account for scalarization costs in BasicTTI::getMemoryOpCost for extending vector loads 2014-04-03 00:53:59 +00:00
X86 When analyzing vectors of element type that require legalization, 2014-03-10 22:59:13 +00:00
no_info.ll Make opt grab the triple from the module and use it to initialize the target machine. 2013-01-01 08:00:32 +00:00