From 1b08b276ae6d72eba543b28e653b34dc2e77f9ea Mon Sep 17 00:00:00 2001 From: Joe Loser Date: Sat, 20 Aug 2022 17:30:14 -0600 Subject: [PATCH] [mlir] Use std::is_invocable instead of llvm::is_invocable Now that MLIR is built with C++17, use the standard library equivalent of `llvm::is_invocable`: `std::is_invocable`. Differential Revision: https://reviews.llvm.org/D132318 --- mlir/include/mlir/Support/DebugAction.h | 5 +++-- mlir/include/mlir/Transforms/DialectConversion.h | 17 ++++++++--------- 2 files changed, 11 insertions(+), 11 deletions(-) diff --git a/mlir/include/mlir/Support/DebugAction.h b/mlir/include/mlir/Support/DebugAction.h index 49f1d27..41ec8b1 100644 --- a/mlir/include/mlir/Support/DebugAction.h +++ b/mlir/include/mlir/Support/DebugAction.h @@ -25,6 +25,7 @@ #include "llvm/Support/TypeName.h" #include "llvm/Support/raw_ostream.h" #include +#include namespace mlir { @@ -218,8 +219,8 @@ private: /// parameter types. template static constexpr bool canHandleWith() { - return llvm::is_invocable, - CallerParameterTs...>::value; + return std::is_invocable_v, + CallerParameterTs...>; } /// Allow access to `canHandleWith`. diff --git a/mlir/include/mlir/Transforms/DialectConversion.h b/mlir/include/mlir/Transforms/DialectConversion.h index 678bf02..72ab780 100644 --- a/mlir/include/mlir/Transforms/DialectConversion.h +++ b/mlir/include/mlir/Transforms/DialectConversion.h @@ -16,6 +16,7 @@ #include "mlir/Rewrite/FrozenRewritePatternSet.h" #include "llvm/ADT/MapVector.h" #include "llvm/ADT/StringMap.h" +#include namespace mlir { @@ -245,7 +246,7 @@ private: /// different callback forms, that all compose into a single version. /// With callback of form: `Optional(T)` template - std::enable_if_t::value, ConversionCallbackFn> + std::enable_if_t, ConversionCallbackFn> wrapCallback(FnT &&callback) { return wrapCallback( [callback = std::forward(callback)]( @@ -262,7 +263,7 @@ private: /// With callback of form: `Optional(T, SmallVectorImpl /// &)` template - std::enable_if_t &>::value, + std::enable_if_t &>, ConversionCallbackFn> wrapCallback(FnT &&callback) { return wrapCallback( @@ -274,9 +275,9 @@ private: /// With callback of form: `Optional(T, SmallVectorImpl /// &, ArrayRef)`. template - std::enable_if_t &, - ArrayRef>::value, - ConversionCallbackFn> + std::enable_if_t< + std::is_invocable_v &, ArrayRef>, + ConversionCallbackFn> wrapCallback(FnT &&callback) { return [callback = std::forward(callback)]( Type type, SmallVectorImpl &results, @@ -720,8 +721,7 @@ public: addDynamicallyLegalOp(callback); } template - typename std::enable_if< - !llvm::is_invocable::value>::type + typename std::enable_if>::type addDynamicallyLegalOp(Callable &&callback) { addDynamicallyLegalOp( [=](Operation *op) { return callback(cast(op)); }); @@ -760,8 +760,7 @@ public: markOpRecursivelyLegal(callback); } template - typename std::enable_if< - !llvm::is_invocable::value>::type + typename std::enable_if>::type markOpRecursivelyLegal(Callable &&callback) { markOpRecursivelyLegal( [=](Operation *op) { return callback(cast(op)); }); -- 2.7.4