[Mlir-commits] [llvm] [mlir] [mlir][bytecode] Add builtin dialect version (PR #184678)
Mehdi Amini
llvmlistbot at llvm.org
Thu Mar 5 02:52:34 PST 2026
================
@@ -239,6 +239,41 @@ struct BuiltinDialectBytecodeInterface : public BytecodeDialectInterface {
DialectBytecodeWriter &writer) const override {
return ::writeType(type, writer);
}
+
+ //===--------------------------------------------------------------------===//
+ // Version
+
+ void writeVersion(DialectBytecodeWriter &writer) const override {
+ auto configVersion = writer.getDialectVersion(getDialect()->getNamespace());
+ // Write version set in config.
+ if (succeeded(configVersion)) {
+ auto *version =
+ static_cast<const BuiltinDialectVersion *>(*configVersion);
+ writer.writeVarInt(static_cast<uint64_t>(version->getVersion()));
+ return;
+ }
+ // Else, write current set version version if not 0.
+ if (auto version = cast<BuiltinDialect>(getDialect())->getVersion();
+ version && version->getVersion() > 0) {
+ writer.writeVarInt(static_cast<uint64_t>(version->getVersion()));
+ }
+ }
+
+ std::unique_ptr<DialectVersion>
+ readVersion(DialectBytecodeReader &reader) const override {
+ uint64_t version;
+ if (failed(reader.readVarInt(version)))
+ return nullptr;
+
+ auto dialectVersion = std::make_unique<BuiltinDialectVersion>(version);
+ if (BuiltinDialectVersion::getCurrentVersion() < *dialectVersion) {
+ reader.emitWarning()
+ << "reading newer builtin dialect version than supported";
----------------
joker-eph wrote:
Shouldn't this be an error?
https://github.com/llvm/llvm-project/pull/184678
More information about the Mlir-commits
mailing list