Repository navigation
fix(agc): size multisample guest guards by fragment blocks - #4199
Conversation
|
The conventions run (check 114622799227) fails because the PR template’s AI-assisted field is unanswered. Please mark |
done |
|
Rebase handoff — this branch was ~347 commits behind Verified on Linux (CachyOS, kernel 7.2.9, GCC 16.2.1, Ninja, Release,
To pick it up: Head is |
0b44853 to
cff1f68
Compare
done |
|
Independent verification of your rebase — the new head builds and passes the full local suite on Linux (CachyOS, kernel 7.2.9, GCC 16.2.1, Ninja, Release, |
|
@MarcZX100 should be ready to merge |
|
Windows run, to go with the Linux runs above. Setup: Windows 11 (26200), WinLibs GCC 15.2.0 r7, Release, CI configure flags, an RTX 4070 Laptop GPU and an Intel Raptor Lake-S iGPU. The head cff1f68 merged into
This touches Written with AI assistance. |
cff1f68 to
8bcf1cc
Compare
|
Other open pull requests touch the same code. Merging one will break the other, or both implement the same thing. If this one builds on them, list them in Depends on.
|
What
Size the guest-memory guard for a multisampled
RenderTargetusing 64 KiB blocks whose pixel dimensions account for fragment count. The oldmax(single-sample CB bytes × samples, raw pixel bytes × samples)bound can cover a neighboring allocation. For example, a 1920×1080 RGBA8 4× target occupies0x1fe0000bytes with fragment-aware blocks, while the previous guard spans0x21c0000bytes.Keep the conservative bound for other tile modes. Add guard regressions for tiled 2× and 8× targets, a layout check for the 1920×1080 case, and document that console layout equivalence has not been measured.
This is independent of custom sample-location support in #2169. PR #2132 computes the same block dimensions for color-memory fills; if it merges first, this guard can reuse its footprint helper during integration.
Tested
Linux, Release, GCC 13.3:
agc_driver_graphics— passed (3.40 s)agc_multisample_guest_access— passed (1.20 s)python3 tools/check_conventions.py --base origin/main— passedgit diff --check— passedA title was run with the patch and reported working by the PR author. Console layout equivalence was not separately measured.
Checklist
main; no other open PR changes the guest-read guard.mdfiles or images added to the repository