diff --git a/mlir/include/mlir/Conversion/NVVMToLLVM/NVVMToLLVM.h b/mlir/include/mlir/Conversion/NVVMToLLVM/NVVMToLLVM.h --- a/mlir/include/mlir/Conversion/NVVMToLLVM/NVVMToLLVM.h +++ b/mlir/include/mlir/Conversion/NVVMToLLVM/NVVMToLLVM.h @@ -19,6 +19,8 @@ #define GEN_PASS_DECL_CONVERTNVVMTOLLVMPASS #include "mlir/Conversion/Passes.h.inc" +void populateNVVMToLLVMConversionPatterns(RewritePatternSet &patterns); + } // namespace mlir #endif // MLIR_CONVERSION_NVVMTOLLVM_NVVMTOLLVMPASS_H_ diff --git a/mlir/lib/Conversion/NVVMToLLVM/NVVMToLLVM.cpp b/mlir/lib/Conversion/NVVMToLLVM/NVVMToLLVM.cpp --- a/mlir/lib/Conversion/NVVMToLLVM/NVVMToLLVM.cpp +++ b/mlir/lib/Conversion/NVVMToLLVM/NVVMToLLVM.cpp @@ -183,7 +183,7 @@ ConversionTarget target(getContext()); target.addLegalDialect<::mlir::LLVM::LLVMDialect>(); RewritePatternSet pattern(&getContext()); - pattern.add(pattern.getContext()); + mlir::populateNVVMToLLVMConversionPatterns(pattern); if (failed( applyPartialConversion(getOperation(), target, std::move(pattern)))) signalPassFailure(); @@ -191,3 +191,7 @@ }; } // namespace + +void mlir::populateNVVMToLLVMConversionPatterns(RewritePatternSet &patterns) { + patterns.add(patterns.getContext()); +}