llvm-project/mlir
Mehdi Amini f431d3878a Make Python MLIR Operation not iterable
The current behavior is conveniently allowing to iterate on the regions of an operation
implicitly by exposing an operation as Iterable. However this is also error prone and
code that may intend to iterate on the results or the operands could end up "working"
apparently instead of throwing a runtime error.
The lack of static type checking in Python contributes to the ambiguity here, it seems
safer to not do this and require and explicit qualification to iterate (`op.results`, `op.regions`, ...).

Reviewed By: ftynse

Differential Revision: https://reviews.llvm.org/D111697
2021-10-26 07:21:09 +00:00
..
cmake/modules Add MLIR_INSTALL_AGGREGATE_OBJECTS and default it to ON. 2021-10-19 16:14:04 -07:00
docs [mlir] support interfaces in Python bindings 2021-10-25 12:50:42 +02:00
examples [MLIR][arith] fix references to std.constant in comments 2021-10-14 20:38:47 +00:00
include [mlir-c] Avoid compiler warning 2021-10-25 21:11:51 -07:00
lib Make Python MLIR Operation not iterable 2021-10-26 07:21:09 +00:00
python Make Python MLIR Operation not iterable 2021-10-26 07:21:09 +00:00
test Make Python MLIR Operation not iterable 2021-10-26 07:21:09 +00:00
tools When generating C++ code, use C++ string escaping. 2021-10-25 22:53:44 +00:00
unittests Add a clear() method on the PassManager (NFC) 2021-10-25 04:39:00 +00:00
utils [MLIR][Math] Add erf to math dialect 2021-10-25 18:30:17 +00:00
.clang-format
.clang-tidy NFC: .clang-tidy: Inherit configs from parents to improve maintainability 2021-06-08 08:25:59 -07:00
CMakeLists.txt [mlir] support interfaces in Python bindings 2021-10-25 12:50:42 +02:00
LICENSE.TXT
README.md

README.md

Multi-Level Intermediate Representation

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