diff options
| author | Lei Zhang <antiagainst@google.com> | 2019-03-08 13:56:53 -0800 |
|---|---|---|
| committer | jpienaar <jpienaar@google.com> | 2019-03-29 17:07:50 -0700 |
| commit | 18fde7c9d8df4e4b62d040b4235670479c74b053 (patch) | |
| tree | 0464bbc225ad482f3a1da5815eb65066e7cdf170 /mlir/lib/Transforms/LoopTiling.cpp | |
| parent | 87884ab4b6638eafe43a9cc5bd26635ac174cfe3 (diff) | |
| download | bcm5719-llvm-18fde7c9d8df4e4b62d040b4235670479c74b053.tar.gz bcm5719-llvm-18fde7c9d8df4e4b62d040b4235670479c74b053.zip | |
[TableGen] Support multiple result patterns
This CL added the ability to generate multiple ops using multiple result
patterns, with each of them replacing one result of the matched source op.
Specifically, the syntax is
```
def : Pattern<(SourceOp ...),
[(ResultOp1 ...), (ResultOp2 ...), (ResultOp3 ...)]>;
```
Assuming `SourceOp` has three results.
Currently we require that each result op must generate one result, which
can be lifted later when use cases arise.
To help with cases that certain output is unused and we don't care about it,
this CL also introduces a new directive: `verifyUnusedValue`. Checks will
be emitted in the `match()` method to make sure if the corresponding output
is not unused, `match()` returns with `matchFailure()`.
PiperOrigin-RevId: 237513904
Diffstat (limited to 'mlir/lib/Transforms/LoopTiling.cpp')
0 files changed, 0 insertions, 0 deletions

