diff options
author | Elena Demikhovsky <elena.demikhovsky@intel.com> | 2017-08-20 12:34:29 +0000 |
---|---|---|
committer | Elena Demikhovsky <elena.demikhovsky@intel.com> | 2017-08-20 12:34:29 +0000 |
commit | f58f838495200ed71596d260f7c6e25d1b080fcb (patch) | |
tree | b3281f12a5f31258e3e4735fb7b9fa7ad5354eaf /llvm/lib/Target/X86/X86TargetTransformInfo.h | |
parent | d196930799224f906ba4c5d3c64bafa1cad8d156 (diff) | |
download | bcm5719-llvm-f58f838495200ed71596d260f7c6e25d1b080fcb.tar.gz bcm5719-llvm-f58f838495200ed71596d260f7c6e25d1b080fcb.zip |
Changed basic cost of store operation on X86
Store operation takes 2 UOps on X86 processors. The exact cost calculation affects several optimization passes including loop unroling.
This change compensates performance degradation caused by https://reviews.llvm.org/D34458 and shows improvements on some benchmarks.
Differential Revision: https://reviews.llvm.org/D35888
llvm-svn: 311285
Diffstat (limited to 'llvm/lib/Target/X86/X86TargetTransformInfo.h')
-rw-r--r-- | llvm/lib/Target/X86/X86TargetTransformInfo.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/llvm/lib/Target/X86/X86TargetTransformInfo.h b/llvm/lib/Target/X86/X86TargetTransformInfo.h index fc63eff049d..dc184030dee 100644 --- a/llvm/lib/Target/X86/X86TargetTransformInfo.h +++ b/llvm/lib/Target/X86/X86TargetTransformInfo.h @@ -102,6 +102,8 @@ public: int getIntImmCost(const APInt &Imm, Type *Ty); + unsigned getUserCost(const User *U, ArrayRef<const Value *> Operands); + int getIntImmCost(unsigned Opcode, unsigned Idx, const APInt &Imm, Type *Ty); int getIntImmCost(Intrinsic::ID IID, unsigned Idx, const APInt &Imm, Type *Ty); |