Add 'gpu.terminator' operation.
authorStephan Herhut <herhut@google.com>
Wed, 29 Jan 2020 12:59:36 +0000 (13:59 +0100)
committerStephan Herhut <herhut@google.com>
Thu, 30 Jan 2020 11:41:41 +0000 (12:41 +0100)
commit26927518955d7f86de2c877f3ed007c8fbac809c
treeeef3c3cf309f3f740cafd38c5fdaea87d27247aa
parent2930dab31533feb3f4a4e14f8bcd9457a2388338
Add 'gpu.terminator' operation.

Summary:
The 'gpu.terminator' operation is used as the terminator for the
regions of gpu.launch. This is to disambugaute them from the
return operation on 'gpu.func' functions.

This is a breaking change and users of the gpu dialect will need
to adapt their code when producting 'gpu.launch' operations.

Reviewers: nicolasvasilache

Subscribers: mehdi_amini, rriddle, jpienaar, burmako, shauheen, antiagainst, csigg, arpith-jacob, mgester, lucyrfox, liufengdb, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D73620
14 files changed:
mlir/include/mlir/Dialect/GPU/GPUOps.td
mlir/lib/Conversion/LoopsToGPU/LoopsToGPU.cpp
mlir/lib/Dialect/GPU/IR/GPUDialect.cpp
mlir/lib/Dialect/GPU/Transforms/KernelOutlining.cpp
mlir/test/Conversion/LoopsToGPU/linalg_to_gpu.mlir
mlir/test/Conversion/LoopsToGPU/step_one.mlir
mlir/test/Dialect/GPU/canonicalize.mlir
mlir/test/Dialect/GPU/invalid.mlir
mlir/test/Dialect/GPU/ops.mlir
mlir/test/Dialect/GPU/outlining.mlir
mlir/test/mlir-cuda-runner/all-reduce-op.mlir
mlir/test/mlir-cuda-runner/all-reduce-region.mlir
mlir/test/mlir-cuda-runner/gpu-to-cubin.mlir
mlir/test/mlir-cuda-runner/shuffle.mlir