Repository navigation
Conversation
Rebase the graphics proposal onto upstream b42ef24 without carrying the historical macOS merge chain. Includes the compiler/runtime prerequisite from PR boykopovar#1835 and the still-required macOS foundation from mugurc/macos-port at 21930ce; those platform changes remain until their upstream PRs land. Preserve upstream starting-quad folding and the qualified vertex lane rule. Keep x87-dependent Math.cpp outside the optional ARM64 graphics closure rather than weakening its ABI assertion.
This was referenced Oct 12, 2026
This was referenced Oct 15, 2026
Merged
11 tasks done
11 tasks done
11 tasks done
Contributor
Author
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What
A new AOT consumer currently has to redeclare import facts and fixed frame layouts. This follow-up resolves reviewed provider contracts by NID, published library/module names and both versions, with source hashes and fact invalidation. Per-image import indices are decoded rather than used as reusable identities. The initial Apple catalog covers ten providers; unresolved, ambiguous, changed or foreign-target bindings remain explicit obligations.
A separate DWARF 4 reader produces candidate scalar C signatures and nonoverlapping fixed frame storage from byte-matched companion objects. It refuses variadic/aggregate ABIs, optimized locations and ambiguous mappings. Plain structure storage does not authorize a structure calling ABI. Debug output remains evidence to qualify, not a semantic proof.
Stacked on #4156 and its prerequisites, rebased onto main
c36fd0a0e. Review the incremental change. This draft keeps the in-tree direction decision with the owners.Tested
Latest integration checkpoint (12 October): aligned with main
2f4cc8983, including the new component technical-debt layout. The final combined stack with the separate C++ follow-up #4718 passed 588 compiler/relinker/runtime checks and 26 native integrations on Apple Silicon. Rebuilt cube AOT/reference still match all eight RGB frames after 600 flips each; controller and typed module-bundle acceptance pass. These are local results; hosted CI is running on the updated head. Full Linux/Windows builds still require maintainer dispatch.Integration checkpoint, 12 October: merged main
fe66af13ethrough the dependency stack and requalified affected provider identities after reviewing their implementations. The final combined stack passed 526 compiler/relinker/runtime cases, 26 native integration cases, the rebuilt graphics pair (600 flips each, teardown, eight exact RGB frames), controller O2 and SHA/memcmp O0/O2 checks on Apple Silicon. Hosted checks refer to the new head and remain separate from these local results. Full Linux/Windows builds require maintainer dispatch.Apple ARM64: 17 catalog/debug tests, including changed provider source, wrong library/version, duplicate identity, missing metadata, weak/object imports, source escape, changed object bytes, optimized/variadic/aggregate cases and bitfields. The combined follow-up branch passed 475 compiler/relinker/runtime checks, plus the newly added controller compilation check; native consumer acceptance is in the separate consumer PR. The portable catalog/debug suites are registered on Linux as well; new hosted results are pending.
The public
pad_inputconsumer uses the catalog and recovers four C signatures and 26 frame objects. Seven provider entries were first qualified for that consumer; only three were already known, so ten resolved imports are not ten automatically discovered ABIs. Independent-source transfer is documented in the consumer follow-up. Source/ABI/lifetime assumptions and final native linkage still require qualification. No new runtime translator or third-party dependency is introduced by this delta.Checklist
Based on current
main; no other open PR implements the same functionsOne topic per PR; follow-ups go in a new PR
No comments added in code
Unqualified paths reject with explicit obligations
No private notes, logs, images or third-party fixture binaries added
New third-party code is a submodule built from source; this delta adds none
Generic recovery and binding behavior; consumer profiles remain separate
Depends on: feat(aot): derive guard sites from qualified image recipes #4156, feat(aot): run source-built graphics on native Apple ARM64 #3891, feat(aot): discuss native ARM64 compiler architecture and integration #1835
AI-assisted: yes
Unblocks: none