Skip to content

feat(agentic-circuit): emit per-module ACIR and gfsim units - #146

Merged
zhoubot merged 1 commit into
mainfrom
feat/per-module-acir-dump
Sep 16, 2026
Merged

zhoubot merged 1 commit into
mainfrom
feat/per-module-acir-dump

Conversation

@zhoubot

@zhoubot zhoubot commented Sep 16, 2026

Copy link
Copy Markdown
Contributor

Summary

  • emit sorted modules/<symbol>.ac.mlir inspection units alongside whole-program Frozen ACIR
  • emit one nominal type header, one declaration/out-of-line implementation pair per concrete gfsim module specialization, a helper implementation TU, and root composition/runtime glue
  • compile every generated C++ source as a separate object and link the complete object set
  • bind model plan, emit, CMake, depfile, and manifest to one exact deterministic inventory; preserve mtimes for byte-identical repeat emit
  • preserve non-zero scalar reset images, including the full unsigned 64-bit pattern, and keep source/JIT specialization distinct from structural QueueGraph specialization

pyc6 Decision / Contract Impact

  • Decision ID: 0264
  • Extends Decisions 0169, 0170, 0178, 0179, 0258, 0260, and 0263
  • Frozen ACIR remains the verified whole-program semantic authority
  • Per-module ACIR files are inspection units, not independently linkable ACIR modules

Validation

  • CodeGenTests: 172/172 passed
  • CompilerTests: 11/11 passed
  • focused Agentic lit: 5/5 passed
  • Agentic frontend: 239/239 passed
  • root unit suite: 147/147 passed
  • focused model plan/emit: 5/5 passed
  • contract checker, diagnostic catalog, API hygiene, strict MkDocs, changed-file pre-commit, formatting, and strict decision status passed
  • generated module/helper/root/model sources compile independently with -c, link with gfsim, and execute the reused stateful model successfully

Evidence

  • docs/gates/logs/20260916-per-module-acir-multitu/summary.md
  • docs/gates/logs/20260916-per-module-acir-multitu/commands.txt

Known Baseline

The checkout-wide ACIROpsTests run passes 1840/1842. Its two failures are the pre-existing exact operation-registry inventory/count baseline: 152 registered operations versus the stale expected 151.

Follow-up Boundary

Independent ACIR compilation still needs a verified module signature/import/link contract. This PR deliberately does not bypass whole-program freeze or claim that per-module dumps are standalone link inputs.

@zhoubot
zhoubot requested a review from xiekunpeng as a code owner September 16, 2026 08:06
@zhoubot
zhoubot merged commit 19c9afe into main Sep 16, 2026
2 checks passed
@zhoubot
zhoubot deleted the feat/per-module-acir-dump branch September 16, 2026 08:09
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant