[mlir] [transform] Error for duplicated processor mapping
authorGuray Ozen <guray.ozen@gmail.com>
Fri, 18 Nov 2022 07:38:03 +0000 (08:38 +0100)
committerGuray Ozen <guray.ozen@gmail.com>
Fri, 18 Nov 2022 07:38:53 +0000 (08:38 +0100)
commitc5798fae05af55b513e872561b7277c6affe9d7d
tree0187d71d772c98dc0074142b99c9abecbe446ec9
parent98441fc9e4a705c91f6f524fc3965e2e0516de3a
[mlir] [transform] Error for duplicated processor mapping

In a nested loop nest, it is not feasible to map different loops to the same processing unit; for an example, check the code below. This modification includes a check in this circumstance.

```
scf.foreach_thread (%i, %j) in (%c32, %c32) {...}
{ mapping = [#gpu.thread<x>, #gpu.thread<x>] }

```

Note: It also deletes a test because it is not possible to reproduce this error.

Depends on D138020

Reviewed By: ftynse

Differential Revision: https://reviews.llvm.org/D138032
mlir/lib/Dialect/GPU/TransformOps/GPUTransformOps.cpp
mlir/test/Dialect/GPU/transform-gpu-failing.mlir