This is necessary/useful for building generic tooling that can roundtrip external
resources without needing to explicitly handle them. For example, this allows
for viewing the resources encoded within a bytecode file without having to
explicitly know how to process them (e.g. making it easier to interact with a
reproducer encoded in bytecode).
Details
Diff Detail
- Repository
- rG LLVM Github Monorepo
Event Timeline
Nice, thanks
mlir/lib/IR/AsmPrinter.cpp | ||
---|---|---|
1311 | We could now use c++17 if initializer form: if (FailureOr<AsmResourceBlob> blob = entry.parseAsBlob(); succeeded(blob)) resources.emplace_back(entry.getKey(), std::move(*blob)); else return failure(); break; (unsure if more readable yet, so just an aside) | |
mlir/lib/Tools/mlir-lsp-server/MLIRServer.cpp | ||
1303 | And I think per discussion this may be WAI. | |
mlir/lib/Tools/mlir-opt/MlirOptMain.cpp | ||
69 | I'd expand on passthroughs here to make behavior clearer. |
mlir/lib/IR/AsmPrinter.cpp | ||
---|---|---|
1311 | I'm not sure it adds much here (it's the same amount of lines), but thanks for the reminder. I think this will come in handy a lot moving forward. |
mlir/lib/Tools/mlir-lsp-server/MLIRServer.cpp | ||
---|---|---|
1327–1329 | Just update the ctor to optionally take this resource map and avoid the attach call here and in MlirOptMain.cpp? |
We could now use c++17 if initializer form:
(unsure if more readable yet, so just an aside)