diff options
Diffstat (limited to 'llvm/lib/Analysis/VectorUtils.cpp')
-rw-r--r-- | llvm/lib/Analysis/VectorUtils.cpp | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/llvm/lib/Analysis/VectorUtils.cpp b/llvm/lib/Analysis/VectorUtils.cpp index 15e325a..1789671 100644 --- a/llvm/lib/Analysis/VectorUtils.cpp +++ b/llvm/lib/Analysis/VectorUtils.cpp @@ -133,10 +133,13 @@ bool llvm::isVectorIntrinsicWithScalarOpAtArg(Intrinsic::ID ID, } } -bool llvm::isVectorIntrinsicWithOverloadTypeAtArg(Intrinsic::ID ID, - int OpdIdx) { +bool llvm::isVectorIntrinsicWithOverloadTypeAtArg( + Intrinsic::ID ID, int OpdIdx, const TargetTransformInfo *TTI) { assert(ID != Intrinsic::not_intrinsic && "Not an intrinsic!"); + if (TTI && Intrinsic::isTargetIntrinsic(ID)) + return TTI->isVectorIntrinsicWithOverloadTypeAtArg(ID, OpdIdx); + switch (ID) { case Intrinsic::fptosi_sat: case Intrinsic::fptoui_sat: |