SStella LaurenzoConvert MLIR IndentedOstream to header only.
| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
Convert MLIR IndentedOstream to header only. This class has been causing me no end of grief for a long time, and the way it is used by mlir-tblgen is technically an ODR violation in certain situations. Due to the way that the build is layered, it is important that the MLIR tablegen libraries only depend on the LLVM tablegen libraries, not on anything else (like MLIRSupport). It has to be this way because these libraries/binaries are special and must pre-exist the full shared libraries. Therefore, the dependency chain must be clean (and static). At some point, someone pulled out a separate build target for just IndendedOstream in an attempt to satisfy the constraint. But because it is weird in different ways, this target was never installed properly as part of distributions, etc -- this causes problems for downstreams seeking to build a tblggen binary that doesn't itself have ODR/shared library problems. I was attempting to fix the distribution stuff but just opted to collapse this into a header-only library and not try to solve this with build layering. I think this is the safest and the least bad thing for such a dep. This also makes for a clean comment that actually explains the constraint (which I was having trouble verbalizing with the weird subset dependency). Differential Revision: https://reviews.llvm.org/D153393 | 3 年前 | |
[Support] llvm::Optional => std::optional https://discourse.llvm.org/t/deprecating-llvm-optional-x-hasvalue-getvalue-getvalueor/63716 | 3 年前 | |
[mlir] [NFC] Add a newline to debug message at inserting of InterfaceMap At inserting of InterfaceMap, a debug message lacked a newline, so it repeatedly displayed this message within a single line. Clean up the debug log by inserting a newline at the end of the message. Reviewed By: rriddle Differential Revision: https://reviews.llvm.org/D150182 | 3 年前 | |
[mlir][StorageUniquer] Fix build with LLVM_ENABLE_THREADS=OFF | 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 年前 | |
[mlir] Add enableSplitting and insertMarkerInOutput options to splitAndProcessBuffer enableSplitting simply enables/disables whether we should split or use the full buffer. insertMarkerInOutput toggles if split markers should be inserted in between prcessed output chunks. These options allow for merging the duplicate code paths we have when splitting is optional. Differential Revision: https://reviews.llvm.org/D128764 | 3 年前 | |
[mlir] Fix the error message for missing explicit TypeID Summary: The error message was incorrect Reviewers: rriddle Subscribers: | 4 年前 |