✨ Record typed compiler targets in MQT IR - #2215
Conversation
7b25247 to
07352c2
Compare
Codecov Report❌ Patch coverage is 📢 Thoughts on this report? Let us know! |
07352c2 to
c2c5028
Compare
c2c5028 to
420fbc8
Compare
36b7fbb to
99f2786
Compare
burgholzer
left a comment
There was a problem hiding this comment.
This also looks genuinely good except for one little detail.
99f2786 to
e7350d0
Compare
|
Important Approval pendingCodeRabbit has no unresolved comments, but it has not reviewed the latest commit. Use the checkbox below to review the latest commit. CodeRabbit will approve the changes if it finds no blocking issues.
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
e7350d0 to
86d01c1
Compare
86d01c1 to
390e966
Compare
denialhaag
left a comment
There was a problem hiding this comment.
I really like the addition of these attribues! I only have a nitpick and a comment on the attribute descriptions, otherwise this LGTM! I'm already approving now, as neither of my comments is blocking. 😎
|
This was essentially just updated based on the changes in the stack below it. Might not hurt to give it a sanity check though. |
denialhaag
left a comment
There was a problem hiding this comment.
This LGTM! ![]()
I just have two nitpicks, both of which are not blocking:
simon1hofmann
left a comment
There was a problem hiding this comment.
This one also looks good, just one thing to clarify.
ce6ccb9 to
c677d0f
Compare
e0685f0 to
fe2fbf1
Compare
fe2fbf1 to
5f41779
Compare
5f41779 to
690b85a
Compare
690b85a to
1111a3e
Compare
1111a3e to
90e487c
Compare
Preserve compiler-target facts as a validated MLIR attribute and support lossless conversion to and from CompilerTarget. Assisted-by: GPT-5.6 Sol via Codex
Render the native-operation attribute example as an MLIR code block in the generated dialect documentation.\n\nAssisted-by: GPT-5.6 Sol via Codex
Keep the Core 4.0 pull-request references in numeric order.\n\nAssisted-by: GPT-5.6 Sol via Codex
Parse present timing fields with the required integer parser while retaining optional storage, and cover malformed values for every affected attribute.\n\nAssisted-by: GPT-5.6 Sol via Codex
90e487c to
ec03d15
Compare
|
@burgholzer This one is ready to be merged as well right? |
Yes, let's get this is once CI is green 🚀 |
🤖 AI text below 🤖
Description
This PR adds
#mqt.compilation_targetand its typed leaf attributes to the MQT dialect.CompilerTargetcan materialize its immutable source facts as the attribute and reconstruct a validated C++ target from it. The round trip preserves target and site names, ordered sparse site IDs, timing metadata, connectivity, native operations, placements, durations, fidelities, and fixed or variadic operation arities. Fixed arities include zero-arity operations such asgphase; variadic arities record a positive inclusive minimum for arbitrarily controlled native operations.This is the focused typed-serialization layer at the top of the stack. It builds on #2323, which builds on the compiler target introduced by #2218. It deliberately excludes payload descriptors, execution capabilities, combined target environments, module attachment, and DLTI integration. Those contracts remain separate work.
The TableGen definitions provide concrete syntax examples in the generated dialect documentation, including a complete
#mqt.compilation_targetexample. Attribute verifiers reject malformed target facts before reconstruction, while the existing C++ factories remain the single source of truth for target validation and derived caches.The changelog records this PR in the existing MQT Compiler Collection launch entry rather than adding a separate entry for unreleased functionality. Its PR-link definition remains in numeric descending order.
Validation
60d5bb4db2a4672214ea793dbfe6e2d6c92c8863.cmake --build --preset release --target mlir-docuvx nox -s lintuvx nox -s cpp-lintgit diff --checkgit verify-commit HEADImplementation and pull-request text were prepared with OpenAI Codex.
Checklist
If PR contains AI-assisted content:
🤖 *AI text below* 🤖(titles are exempt).