summaryrefslogtreecommitdiffstats
path: root/llvm/test/CodeGen/X86/avoid_complex_am.ll
Commit message (Collapse)AuthorAgeFilesLines
* [LSR] Canonicalize reg1 + ... + regN into reg1 + ... + 1*regN.Quentin Colombet2014-05-201-4/+7
| | | | | | | | | | | | | | This commit introduces a canonical representation for the formulae. Basically, as soon as a formula has more that one base register, the scaled register field is used for one of them. The register put into the scaled register is preferably a loop variant. The commit refactors how the formulae are built in order to produce such representation. This yields a more accurate, but still perfectible, cost model. <rdar://problem/16731508> llvm-svn: 209230
* [X86] Implement TargetLowering::getScalingFactorCost hook.Quentin Colombet2014-04-261-0/+37
Scaling factors are not free on X86 because every "complex" addressing mode breaks the related instruction into 2 allocations instead of 1. <rdar://problem/16730541> llvm-svn: 207301
OpenPOWER on IntegriCloud