| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
Revert "Implement Pass and Dialect plugins for mlir-opt" Breaks bot. This reverts commit d4c873b044aeebaa43e6989fb1f9606530ec60cf. | 3 年前 | |
[mlir] Make OperationFingerPrint class public It can be useful to external users as well for detecting if there were any changes in IR between passes. Differential Revision: https://reviews.llvm.org/D137078 | 3 年前 | |
Fix MSAN error: use of unitialized value when hashing the MLIR pass manager (NFC) | 2 年前 | |
[mlir] Update signal failure error message User was confused by previous wording when pass was reported as failing due to signal in unrelated thread being caught. Differential Revision: https://reviews.llvm.org/D145213 | 3 年前 | |
[mlir] Move casting calls from methods to function calls The MLIR classes Type/Attribute/Operation/Op/Value support cast/dyn_cast/isa/dyn_cast_or_null functionality through llvm's doCast functionality in addition to defining methods with the same name. This change begins the migration of uses of the method to the corresponding function call as has been decided as more consistent. Note that there still exist classes that only define methods directly, such as AffineExpr, and this does not include work currently to support a functional cast/isa call. Context: - https://mlir.llvm.org/deprecation/ at "Use the free function variants for dyn_cast/cast/isa/…" - Original discussion at https://discourse.llvm.org/t/preferred-casting-style-going-forward/68443 Implementation: This patch updates all remaining uses of the deprecated functionality in mlir/. This was done with clang-tidy as described below and further modifications to GPUBase.td and OpenMPOpsInterfaces.td. Steps are described per line, as comments are removed by git: 0. Retrieve the change from the following to build clang-tidy with an additional check: main...tpopp:llvm-project:tidy-cast-check 1. Build clang-tidy 2. Run clang-tidy over your entire codebase while disabling all checks and enabling the one relevant one. Run on all header files also. 3. Delete .inc files that were also modified, so the next build rebuilds them to a pure state. ninja -C $BUILD_DIR clang-tidy run-clang-tidy -clang-tidy-binary=$BUILD_DIR/bin/clang-tidy -checks='-*,misc-cast-functions'\ -header-filter=mlir/ mlir/* -fix rm -rf $BUILD_DIR/tools/mlir/**/*.inc Differential Revision: https://reviews.llvm.org/D151542 | 3 年前 | |
[mlir] Catch the case using ir print without disabling multithread -mlir-print-ir-module-scope option cannot be used without disabling multithread for pass manager. For the usability, we can throw a validation error in mlir-opt instead of assertion failure. Issue: https://github.com/llvm/llvm-project/issues/61578 Reviewed By: mehdi_amini Differential Revision: https://reviews.llvm.org/D146785 | 3 年前 | |
[mlir][Pass] Handle spaces in pipeline strings An user might want to add extra spaces for better readability, e.g: mypm = pm.PassManager.parse(f"""builtin.module( mypass1, func.func(mypass2,mypass3) )""") GitHub issue #59151 The parser was not taking into account the possibility of spaces after )or } Differential Revision: https://reviews.llvm.org/D142821 | 3 年前 | |
[ADT][mlir][NFCI] Do not use non-const lvalue-refs with enumerate Replace references to enumerate results with either result_pairs (reference wrapper type) or structured bindings. I did not use structured bindings everywhere as it wasn't clear to me it would improve readability. This is in preparation to the switch to zip semantics which won't support non-const lvalue reference to elements: https://reviews.llvm.org/D144503. I chose to use values instead of const lvalue-refs because MLIR is biased towards avoiding const local variables. This won't degrade performance because currently result_pair is cheap to copy (size_t + iterator), and in the future, the enumerator iterator dereference will return temporaries anyway. Reviewed By: dblaikie Differential Revision: https://reviews.llvm.org/D146006 | 3 年前 | |
[mlir] Use std::optional instead of llvm::Optional (NFC) This patch replaces (llvm::|)Optional< with std::optional<. I'll post a separate patch to remove #include "llvm/ADT/Optional.h". This is part of an effort to migrate from llvm::Optional to std::optional: https://discourse.llvm.org/t/deprecating-llvm-optional-x-hasvalue-getvalue-getvalueor/63716 | 3 年前 |
| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
| 3 年前 | ||
| 3 年前 | ||
| 2 年前 | ||
| 3 年前 | ||
| 3 年前 | ||
| 3 年前 | ||
| 3 年前 | ||
| 3 年前 | ||
| 3 年前 |