| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
[mlir][NFC] Use llvm::sort (#140261) | 1 年前 | |
[mlir][sparse] support sparsification to coiterate operations. (#102546) | 1 年前 | |
[mlir][NFC] update mlir/Dialect create APIs (21/n) (#149928) See https://github.com/llvm/llvm-project/pull/147168 for more info. | 1 年前 | |
[mlir][NFC] update mlir/Dialect create APIs (21/n) (#149928) See https://github.com/llvm/llvm-project/pull/147168 for more info. | 1 年前 | |
[MLIR][SparseTensor] Dense Outer Loop Ordering Strategy (#160168) This PR builds upon the infrastructure set up for Sparse Tensor Loop Ordering Heuristics (#154656) by adding a preference to have dense loops outer and sparse loops inner. As always I'd love to get feedback and know if there's any other direction to go with this work that might be better. | 8 个月前 | |
[MLIR] Fix use-after-move in debug logging (#165208) 1. In Transforms.cpp the debug macro is accessing a SmallVector variable that has been moved-from and reset. Fixed by reordering code for the move-from to happen last. 2. IterationGraphSorter Refine the previous use-after-move fix for style/readability by renaming the private constructor args to resolve naming ambiguity with the class members. Testing: ninja check-mlir | 9 个月前 | |
[mlir] Replace LLVM_ATTRIBUTE_UNUSED with [[maybe_unused]] (NFC) (#163703) This patch replaces LLVM_ATTRIBUTE_UNUSED with [[maybe_unused]], introduced as part of C++17. | 9 个月前 | |
[mlir] Remove deprecated cast member functions (#135556) These have been deprecated for over two years now in favor of free functions. See the relevant discourse thread: https://discourse.llvm.org/t/preferred-casting-style-going-forward/68443 and the deprecation notice: https://mlir.llvm.org/deprecation/. | 1 年前 | |
[mlir][NFC] update mlir/Dialect create APIs (21/n) (#149928) See https://github.com/llvm/llvm-project/pull/147168 for more info. | 1 年前 | |
[mlir][NFC] update mlir/Dialect create APIs (21/n) (#149928) See https://github.com/llvm/llvm-project/pull/147168 for more info. | 1 年前 | |
[mlir][sparse] Include sparse emit strategy in wrapping iterator (#165611) When we create a SparseIterator, we sometimes wrap it in a FilterIterator, which delegates _some_ calls to the underlying SparseIterator. After construction, e.g. in makeNonEmptySubSectIterator(), we call setSparseEmitStrategy(). This sets the strategy only in one of the filters -- if we call setSparseEmitStrategy() immediately after creating the SparseIterator, then the wrapped SparseIterator will have the right strategy, and the FilterIterator strategy will be unintialized; if we call setSparseEmitStrategy() after wrapping the iterator in FilterIterator, then the opposite happens. If we make setSparseEmitStrategy() a virtual method so that it's included in the FilterIterator pattern, and then do all reads of emitStrategy via a virtual method as well, it's pretty simple to ensure that the value of strategy is being set consistently and correctly. Without this, the UB of strategy being uninitialized manifests as a sporadic test failure in mlir/test/Integration/Dialect/SparseTensor/CPU/sparse_strided_conv_2d_nhwc_hwcf.mlir, when run downstream with the right flags (e.g. asan + assertions off). The test sometimes fails with ne_sub<trivial<dense[0,1]>>.begin' op created with unregistered dialect. It can also be directly observed w/ msan that this uninitialized read is the cause of that issue, but msan causes other problems w/ this test. | 9 个月前 | |
[mlir] Use llvm::copy (NFC) (#168213) Identified with llvm-use-ranges. | 8 个月前 |
| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
| 1 年前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 8 个月前 | ||
| 9 个月前 | ||
| 9 个月前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 1 年前 | ||
| 9 个月前 | ||
| 8 个月前 |