llvm-project/mlir
River Riddle 8c39e70679 [mlir][OpFormatGen] Add support for eliding UnitAttr when used to anchor an optional group
Unit attributes are given meaning by their existence, and thus have no meaningful value beyond "is it present". As such, in the format of an operation unit attributes are generally used to guard the printing of other elements and aren't generally printed themselves; as the presence of the group when parsing means that the unit attribute should be added. This revision adds support to the declarative format for eliding unit attributes in situations where they anchor an optional group, but aren't the first element.

For example,
```
let assemblyFormat = "(`is_optional` $unit_attr^)? attr-dict";
```

would print `foo.op is_optional` when $unit_attr is present, instead of the current `foo.op is_optional unit`.

Differential Revision: https://reviews.llvm.org/D84577
2020-08-03 14:31:41 -07:00
..
cmake/modules Install the MLIRTableGen static library. 2020-06-11 18:23:24 -07:00
docs [mlir][OpFormatGen] Add support for eliding UnitAttr when used to anchor an optional group 2020-08-03 14:31:41 -07:00
examples [CMake] Move find_package(ZLIB) to LLVMConfig 2020-07-27 17:13:55 -07:00
include [mlir][Vector] Add transformation + pattern to split vector.transfer_read into full and partial copies. 2020-08-03 12:58:18 -04:00
integration_test [mlir] [VectorOps] [integration_test] Sparse matrix times vector (jagged SAXPY version) 2020-07-29 13:25:56 -07:00
lib [mlir][DialectConversion] Remove usage of std::distance to track position. 2020-08-03 10:06:05 -07:00
test [mlir][OpFormatGen] Add support for eliding UnitAttr when used to anchor an optional group 2020-08-03 14:31:41 -07:00
tools [mlir][OpFormatGen] Add support for eliding UnitAttr when used to anchor an optional group 2020-08-03 14:31:41 -07:00
unittests [MLIR] Add unit test for tblgen Op build methods 2020-07-28 15:43:37 -07:00
utils [mlir][NFC] Remove usernames and google bug numbers from TODO comments. 2020-07-07 01:40:52 -07:00
.clang-format
.clang-tidy Fix MLIR clang-tidy: when tweaking it does not inherit from the parent 2020-03-07 17:44:21 +00:00
CMakeLists.txt Initial boiler-plate for python bindings. 2020-07-09 12:03:58 -07:00
LICENSE.TXT Add the Apache2 with LLVM exceptions license to MLIR 2019-12-24 00:58:06 -08:00
README.md mlir README.md: Fix the syntax 2019-12-24 13:31:07 +01:00

README.md

Multi-Level Intermediate Representation

See https://mlir.llvm.org/ for more information.