Skip to content

💥 Align compiler terminology and public names - #2519

Merged
burgholzer merged 1 commit into
mainfrom
codex/2251-mlir-terminology
Sep 11, 2026
Merged

burgholzer merged 1 commit into
mainfrom
codex/2251-mlir-terminology

Conversation

@burgholzer

Copy link
Copy Markdown
Member

🤖 AI text below 🤖

Description

Align the compiler-facing C++, Python, CLI, diagnostics, and documentation with the glossary and the naming decisions in #2251 and PR #2149. OpenQASM import now uses version-generic names for its supported versionless, 2.0, 3.0, and 3.1 inputs. Target metadata is CompilerTarget.OperationCapability / CompilerTarget::OperationCapability, and mqt-cc advertises and defaults to --emit=qc.

These are clean renames of unreleased v4 interfaces: old import spellings and CLI aliases are removed. The audit and migration table records all replacements, downstream checks, and retained terminology. All in-tree callers, binding patterns, generated stubs, tests, and examples are updated.

Correct jeff conversion versus serialization, barrier operations, canonicalization patterns, conversion targets, linear ownership, and static entry-point gate counts. Compilation behavior and the accepted language subset are preserved. The requested Ponytail review removed one forwarding helper and found no remaining complexity to cut. No dependencies are added.

Local validation:

  • Native Clang 23/LLVM-MLIR 23.1 release build with ThinLTO; 3,505 native tests passed, one existing sample-device job-ID test skipped.
  • 653 Python compiler, Qiskit, and QCO DD tests passed on each of Python 3.11–3.14; the final versionless-input example also passed all four focused version cases.
  • Stub generation, executable documentation and generated-link checks, repository lint, and full-file C++ lint passed.
  • Hosted CI is separate from these local results.

The existing v4 changelog entry and upgrade-guide examples use the final terminology.

Codex assisted with the audit, implementation, tests, review, and this description. Human review remains required before merge.

Fixes #2251

Checklist

  • The pull request only contains commits that are focused and relevant to this change.
  • I have added appropriate tests that cover the new/changed functionality.
  • I have updated the documentation to reflect these changes.
  • I have added entries to the changelog for any noteworthy additions, changes, fixes, or removals.
  • I have added migration instructions to the upgrade guide (if needed).
  • The changes follow the project's style guidelines and introduce no new warnings.
  • The changes are fully tested and pass the CI checks.
  • I have reviewed my own code changes.

If PR contains AI-assisted content:

  • Any agent that created, edited, or submitted GitHub content was explicitly authorized for that scope, as required by our AI Usage Guidelines.
  • Every agent-authored or agent-edited public text body begins with the visible disclosure 🤖 *AI text below* 🤖 (titles are exempt).
  • I have disclosed AI assistance in the PR description.
  • I confirm that I have personally reviewed and understood all AI-generated content, and accept full responsibility for it.

Use version-generic OpenQASM import names and distinguish compiler
capabilities, IR operations, dialect conversions, and serialized programs.
Apply the approved clean renames before the v4 release and update all
callers, tests, generated stubs, documentation, and audit records.

Remove the redundant gate-emission forwarding helper found during review.

Assisted-by: Codex
@burgholzer burgholzer self-assigned this Sep 10, 2026
@burgholzer burgholzer added code quality Code quality improvements documentation Improvements or additions to documentation fix Fix for something that isn't working MLIR Anything related to MLIR labels Sep 10, 2026
@burgholzer burgholzer added this to the v4.0.0 - IEEE Quantum Week milestone Sep 10, 2026
@codecov

codecov Bot commented Sep 11, 2026

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 96.70330% with 3 lines in your changes missing coverage. Please review.

Files with missing lines Patch % Lines
...lib/Dialect/QC/Translation/OpenQASMToQCEmitter.cpp 90.4% 2 Missing ⚠️
mlir/lib/Compiler/Programs.cpp 80.0% 1 Missing ⚠️

📢 Thoughts on this report? Let us know!

@burgholzer burgholzer left a comment

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This feels like a pretty solid coverage and streamlining of the terminology for now. I'll get this in now to avoid large conflicts 🚀

@burgholzer
burgholzer merged commit fce58f0 into main Sep 11, 2026
26 of 27 checks passed
@burgholzer
burgholzer deleted the codex/2251-mlir-terminology branch September 11, 2026 00:12
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

code quality Code quality improvements documentation Improvements or additions to documentation fix Fix for something that isn't working MLIR Anything related to MLIR

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Audit MLIR terminology and public API naming

1 participant