diff options
Diffstat (limited to 'lib')
-rw-r--r-- | lib/Target/TargetTransformImpl.cpp | 3 | ||||
-rw-r--r-- | lib/Target/X86/X86ISelLowering.cpp | 5 | ||||
-rw-r--r-- | lib/Target/X86/X86ISelLowering.h | 3 |
3 files changed, 6 insertions, 5 deletions
diff --git a/lib/Target/TargetTransformImpl.cpp b/lib/Target/TargetTransformImpl.cpp index d7c221ee1f..f8c588934f 100644 --- a/lib/Target/TargetTransformImpl.cpp +++ b/lib/Target/TargetTransformImpl.cpp @@ -209,8 +209,7 @@ unsigned VectorTargetTransformImpl::getArithmeticInstrCost(unsigned Opcode, } unsigned VectorTargetTransformImpl::getShuffleCost(ShuffleKind Kind, - Type *Tp, - int Index) const { + Type *Tp, int Index, Type *SubTp) const { return 1; } diff --git a/lib/Target/X86/X86ISelLowering.cpp b/lib/Target/X86/X86ISelLowering.cpp index 4afc0d8197..eca63f80ae 100644 --- a/lib/Target/X86/X86ISelLowering.cpp +++ b/lib/Target/X86/X86ISelLowering.cpp @@ -18303,10 +18303,11 @@ unsigned X86VectorTargetTransformInfo::getCastInstrCost(unsigned Opcode, unsigned X86VectorTargetTransformInfo::getShuffleCost(ShuffleKind Kind, Type *Tp, - int Index) const { + int Index, + Type *SubTp) const { // We only estimate the cost of reverse shuffles. if (Kind != Reverse) - return VectorTargetTransformImpl::getShuffleCost(Kind, Tp, Index); + return VectorTargetTransformImpl::getShuffleCost(Kind, Tp, Index, SubTp); std::pair<unsigned, MVT> LT = getTypeLegalizationCost(Tp); unsigned Cost = 1; diff --git a/lib/Target/X86/X86ISelLowering.h b/lib/Target/X86/X86ISelLowering.h index 1b4b5eb65d..2e2fc2a234 100644 --- a/lib/Target/X86/X86ISelLowering.h +++ b/lib/Target/X86/X86ISelLowering.h @@ -974,7 +974,8 @@ namespace llvm { virtual unsigned getCastInstrCost(unsigned Opcode, Type *Dst, Type *Src) const; - unsigned getShuffleCost(ShuffleKind Kind, Type *Tp, int Index) const; + unsigned getShuffleCost(ShuffleKind Kind, + Type *Tp, int Index, Type *SubTp) const; }; } |