summaryrefslogtreecommitdiffstats
path: root/mlir/lib/Conversion/GPUToROCDL
diff options
context:
space:
mode:
authorAlexander Belyaev <pifon@google.com>2019-10-24 01:41:25 -0700
committerA. Unique TensorFlower <gardener@tensorflow.org>2019-10-24 01:41:57 -0700
commitd2ce435dba36ca2575073d9d51e34b77ffad2e27 (patch)
tree561294762239a73f0516d149ad684627414d2b3c /mlir/lib/Conversion/GPUToROCDL
parent9a18ff3d629f3cd13d1a241700014c05757ca61f (diff)
downloadbcm5719-llvm-d2ce435dba36ca2575073d9d51e34b77ffad2e27.tar.gz
bcm5719-llvm-d2ce435dba36ca2575073d9d51e34b77ffad2e27.zip
Add custom lowering of ExpOp for NVVM and ROCM.
PiperOrigin-RevId: 276440911
Diffstat (limited to 'mlir/lib/Conversion/GPUToROCDL')
-rw-r--r--mlir/lib/Conversion/GPUToROCDL/LowerGpuOpsToROCDLOps.cpp4
1 files changed, 4 insertions, 0 deletions
diff --git a/mlir/lib/Conversion/GPUToROCDL/LowerGpuOpsToROCDLOps.cpp b/mlir/lib/Conversion/GPUToROCDL/LowerGpuOpsToROCDLOps.cpp
index 2ea587ecf47..ea421f552b8 100644
--- a/mlir/lib/Conversion/GPUToROCDL/LowerGpuOpsToROCDLOps.cpp
+++ b/mlir/lib/Conversion/GPUToROCDL/LowerGpuOpsToROCDLOps.cpp
@@ -29,6 +29,7 @@
#include "mlir/Transforms/DialectConversion.h"
#include "../GPUCommon/IndexIntrinsicsOpLowering.h"
+#include "../GPUCommon/OpToFuncCallLowering.h"
using namespace mlir;
@@ -59,9 +60,12 @@ public:
GPUIndexIntrinsicOpLowering<gpu::GridDimOp, ROCDL::GridDimXOp,
ROCDL::GridDimYOp, ROCDL::GridDimZOp>>(
converter);
+ patterns.insert<OpToFuncCallLowering<ExpOp>>(converter, "_ocml_exp_f32",
+ "_ocml_exp_f64");
ConversionTarget target(getContext());
target.addLegalDialect<LLVM::LLVMDialect, ROCDL::ROCDLDialect>();
+ target.addIllegalOp<LLVM::ExpOp>();
target.addDynamicallyLegalOp<FuncOp>(
[&](FuncOp op) { return converter.isSignatureLegal(op.getType()); });
if (failed(applyPartialConversion(m, target, patterns, &converter)))
OpenPOWER on IntegriCloud