diff options
Diffstat (limited to 'llvm/lib')
| -rw-r--r-- | llvm/lib/Analysis/TargetTransformInfo.cpp | 5 | ||||
| -rw-r--r-- | llvm/lib/Target/Hexagon/HexagonTargetTransformInfo.cpp | 7 | ||||
| -rw-r--r-- | llvm/lib/Target/Hexagon/HexagonTargetTransformInfo.h | 2 | 
3 files changed, 8 insertions, 6 deletions
diff --git a/llvm/lib/Analysis/TargetTransformInfo.cpp b/llvm/lib/Analysis/TargetTransformInfo.cpp index 91160954bd9..f938a9a5206 100644 --- a/llvm/lib/Analysis/TargetTransformInfo.cpp +++ b/llvm/lib/Analysis/TargetTransformInfo.cpp @@ -89,8 +89,9 @@ TargetTransformInfo::getEstimatedNumberOfCaseClusters(const SwitchInst &SI,    return TTIImpl->getEstimatedNumberOfCaseClusters(SI, JTSize);  } -int TargetTransformInfo::getUserCost(const User *U) const { -  int Cost = TTIImpl->getUserCost(U); +int TargetTransformInfo::getUserCost(const User *U, +    ArrayRef<const Value *> Operands) const { +  int Cost = TTIImpl->getUserCost(U, Operands);    assert(Cost >= 0 && "TTI should not produce negative costs!");    return Cost;  } diff --git a/llvm/lib/Target/Hexagon/HexagonTargetTransformInfo.cpp b/llvm/lib/Target/Hexagon/HexagonTargetTransformInfo.cpp index d3848104d2b..4135d0cec70 100644 --- a/llvm/lib/Target/Hexagon/HexagonTargetTransformInfo.cpp +++ b/llvm/lib/Target/Hexagon/HexagonTargetTransformInfo.cpp @@ -46,8 +46,9 @@ unsigned HexagonTTIImpl::getCacheLineSize() const {    return getST()->getL1CacheLineSize();  } -int HexagonTTIImpl::getUserCost(const User *U) { -  auto isCastFoldedIntoLoad = [] (const CastInst *CI) -> bool { +int HexagonTTIImpl::getUserCost(const User *U, +                                ArrayRef<const Value *> Operands) { +  auto isCastFoldedIntoLoad = [](const CastInst *CI) -> bool {      if (!CI->isIntegerCast())        return false;      const LoadInst *LI = dyn_cast<const LoadInst>(CI->getOperand(0)); @@ -67,5 +68,5 @@ int HexagonTTIImpl::getUserCost(const User *U) {    if (const CastInst *CI = dyn_cast<const CastInst>(U))      if (isCastFoldedIntoLoad(CI))        return TargetTransformInfo::TCC_Free; -  return BaseT::getUserCost(U); +  return BaseT::getUserCost(U, Operands);  } diff --git a/llvm/lib/Target/Hexagon/HexagonTargetTransformInfo.h b/llvm/lib/Target/Hexagon/HexagonTargetTransformInfo.h index 08faa2acd90..f08a2731057 100644 --- a/llvm/lib/Target/Hexagon/HexagonTargetTransformInfo.h +++ b/llvm/lib/Target/Hexagon/HexagonTargetTransformInfo.h @@ -62,7 +62,7 @@ public:    /// @} -  int getUserCost(const User *U); +  int getUserCost(const User *U, ArrayRef<const Value *> Operands);  };  } // end namespace llvm  | 

