Commit Graph
1400 Commits
Author SHA1 Message Date
Dean 1322babd48 Merge pull request #14621 from danielhorngt/fix/agc-clamp-sampler-lod-bias
fix(agc): apply a LOD bias beyond the device limit in the shader
2026-11-06 12:13:46 +13:00
Dean 0a355e08d7 Merge pull request #14018 from xXPBSXx/docs-agc-pm4-type0-emulators
docs(libSceAgcDriver): name what three emulators do with PM4 type-0 packets
2026-11-05 22:03:12 +13:00
Dean 202c5946b0 Merge pull request #13151 from Celegans12/feat/agcdriver-debug-inventory-exports-20261030
feat(agcdriver): add missing debug inventory exports
2026-11-05 21:51:24 +13:00
Dean 4639eff7f4 Merge pull request #15757 from edubox/fix/agc-uint16-nonuint-target
fix(libSceAgcDriver): write UINT16_ABGR exports into 16-bit non-UINT targets
2026-11-05 17:00:42 +13:00
Dean Galvin bc2dfa08c9 revert(agc): back out #6973 MSAA initial samples
Main fails linux since 24ed2d9adf: agc_driver_native_depth_aliased_depth_{depth_only,stencil,no_stencil} and native_depth_publication now refuse sampling an aliased multisample target earlier, with a message the HTILE-alias path in NativeMultisampleDepth.cpp does not expect. The parent c42e3a000c is green. Reverting so main is green again; #6973 can re-land together with the test update.
2026-11-05 14:26:45 +13:00
Dean 24ed2d9adf Merge pull request #6973 from Amoenus/codex/feat-msaa-initial-samples-main402
feat(agc): preserve initial native multisample color contents
2026-11-05 13:12:11 +13:00
Eduardo Ruiz 26d6c0b117 Merge remote-tracking branch 'origin/main' into fix/agc-uint16-nonuint-target 2026-11-04 23:08:37 +01:00
TripyFoxandClaude Opus 5.5 88444ab5a7 docs(agc): give draw device-local staging its own debt entry
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-11-04 22:41:54 +01:00
TripyFoxandClaude Opus 5.5 1c3a24f1a2 perf(agc): stage recorded draws' written buffers in device memory
Recorded draws without BDA page tables now take the device-local staging
of written and atomic buffer elements that dispatches use; their
copy-backs are already recorded through MarkGpuWrites. A draw that ends
up synchronous with staged regions is rebuilt unstaged.
APS5_NO_DRAW_STAGING=1 keeps draws' elements in place.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-11-04 22:41:54 +01:00
Daniel HornandClaude Opus 5.5 97a3c08939 Merge remote-tracking branch 'upstream/main' into fix/agc-clamp-sampler-lod-bias
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-11-04 20:39:56 +00:00
Dean 097e86df8b Merge pull request #10779 from stuart-russell/fix/agc-zero-export-format
fix(agc): a zero color export format is not a color export
2026-11-05 08:19:21 +13:00
Dean de5f875cab Merge pull request #15783 from mrfelek/perf/agc-moved-input-snapshot-cap
perf(agc): keep moved read-only draw inputs within the draw snapshot cap
2026-11-05 08:18:55 +13:00
Dean 020377bf9b Merge pull request #14265 from Astronaut10/perf/shader-vertex-specialized
perf(shader): emit vertex modules specialized instead of in registration form
2026-11-05 08:18:17 +13:00
Romans Pokrovskis ef2bcde6b3 chore: refresh validated graphics changes on current main 2026-11-04 19:39:48 +02:00
mrfelek cac7977ba0 perf(agc): keep moved read-only draw inputs within the draw snapshot cap
A cached draw whose read-only inputs moved (MovedReadOnlyBuffers) snapshotted the moved inputs whatever their size, while PrepareDrawBindings binds any other input over the draw snapshot budget in place. A move whose inputs together exceed the budget is now refused, so the draw builds its resources and binds those inputs in place.
2026-11-04 14:27:15 +01:00
Eduardo Ruiz aa5331a383 docs(libSceAgcDriver): keep the export-format debt entry under the limit 2026-11-04 14:07:14 +01:00
Eduardo Ruiz 3f4e81453b fix(libSceAgcDriver): write UINT16_ABGR exports into 16-bit non-UINT targets 2026-11-04 13:42:59 +01:00
Romans Pokrovskis af3c17f490 test(agc): keep initial-content coverage scoped to supported ownership 2026-11-04 12:47:21 +02:00
Romans Pokrovskis a7845db98d fix(agc): collect guest rewrites before initial color reuse 2026-11-04 12:37:40 +02:00
Romans Pokrovskis 17d6030cd1 fix(agc): preserve initialization guards while tracking current main 2026-11-04 12:24:18 +02:00
Dean Galvin d870bc198c Merge branch 'main' into fix/agc-flip-no-eop-event 2026-11-04 21:38:49 +13:00
Dean b11c7bf84f Merge pull request #14976 from liskeee/fix/agc-shared-import-alias-fallback
fix(agc): fall back when a shared import alias is refused
2026-11-04 21:32:44 +13:00
Dean 0097b73ad0 Merge pull request #13858 from EagleBearerYS/perf/agc-reuse-address-draws-in-space
perf(agc): reuse read-only address-based draw builds over their cached address space
2026-11-04 21:31:53 +13:00
Dean 6aca873d9b Merge pull request #15454 from Nesyth/perf/agc-import-kind-windows
perf(agc): import a block that mixes private memory with shared views in smaller runs
2026-11-04 21:31:42 +13:00
Dean aa186a77b6 Merge pull request #9742 from EagleBearerYS/fix/agc-msaa-d32s8-depth-alias-htile-proof
fix(agc): accept a colour alias over a native multisample depth plane when HTILE proves its clear
2026-11-04 19:26:50 +13:00
Dean a06ff1334e Merge pull request #9674 from ntamas94/up/ps4-thick-tiles
feat(libSceAgcDriver): lay out PS4 textures in tile mode 19 (Thick_1dThick)
2026-11-04 18:33:41 +13:00
Dean aa5186e240 Merge pull request #10472 from nikhilpanchal1/perf/agc-image-suballocation
feat(agc): suballocate sampled and storage image memory
2026-11-04 17:48:36 +13:00
Dean 2c381088ba Merge pull request #10256 from Capmare/perf/agc-image-table-variant-substitution
perf(agc): bind one texture for the dynamic-resolution variants of an image table surface
2026-11-04 17:48:19 +13:00
Dean Galvin c6daa9a3f2 Merge branch 'main' into perf/agc-reuse-address-draws-in-space 2026-11-04 17:06:15 +13:00
Dean Galvin 54665e451e Merge branch 'main' into up/ps4-thick-tiles 2026-11-04 16:59:59 +13:00
Dean c2eafe4461 Merge pull request #9892 from savvaniss/feat/ps4-gcn-msaa-targets
feat(agc): draw PS4 multisampled color targets as host-resident targets
2026-11-04 16:59:01 +13:00
Dean ea0913b3a4 Merge pull request #9700 from frankea/eqaa-color-targets
feat(agc): draw EQAA color targets at their coverage sample count
2026-11-04 16:57:56 +13:00
Dean Galvin 1405c26132 Merge main 1c8c0efc8c into #9674 (9fde6efab2) 2026-11-04 11:32:46 +13:00
Dean Galvin 4308f2c31c Merge main 1c8c0efc8c into #9892 (3c0ee17922) 2026-11-04 11:30:09 +13:00
Dean 49021a4c90 Merge pull request #9891 from savvaniss/fix/ps4-cusa03312-surfaces
fix(agc): decode PS4 texture bases, linear-aligned targets and thin-tiled 3D textures
2026-11-04 11:25:47 +13:00
Yunus Shaikh a8c64b9c3b Merge main into fix/agc-msaa-d32s8-depth-alias-htile-proof
#13021 takes the multisample targets lock through TargetsLock, which marks the
lock held for HoldsMultisampleTargetsLock; MultisampleColorTargetsOver takes it
the same way. Its declaration sits beside WithMultisampleTargetsLockForTest.
The debt file keeps #13021's guest publication entry and its edit of the
depth sampling entry, then this branch's two colour-target entries.
2026-11-03 13:27:20 -08:00
Yunus Shaikh cfec53d781 Merge main into perf/agc-reuse-address-draws-in-space
Draw.cpp conflicts where #13021 notes a depth surface write after the draw's
resources are resolved. Both are kept, with the injected stop after resolve
first, so an injected failure notes no depth write.
2026-11-03 13:22:45 -08:00
Dean 0e7d4a25ef Merge pull request #13021 from JAB-dev/feat/agc-publish-native-d32s8-guest-planes
feat(agc): publish a written native multisample D32S8 surface to its guest planes on a guest read
2026-11-04 10:08:52 +13:00
ntamas94 9fde6efab2 fix(libSceAgcDriver): degrade shallow GCN mip levels to thin tiles 2026-11-03 21:57:11 +01:00
ntamas94 cc596afba5 docs(libSceAgcDriver): retain both sides of tiling debt conflict 2026-11-03 21:48:50 +01:00
ntamas94 72d72c720d fix(libSceAgcDriver): merge main into thick texture layout 2026-11-03 21:47:12 +01:00
Dean Galvin 3c2bbeaf3d Merge main into PR #10256 2026-11-04 09:38:59 +13:00
Dean Galvin 8bc11fae31 Merge main 086c0686c8 into #9700 (8efaff36c0)
MultisampleTarget.cpp: main moved PrimedSharedMutex to libc and guardedColorBytes earlier in the file; GuardedRange keeps the PR's plane member, and guardedColorBytes (at its new place) keeps the PR's storedFragments change.
Debt doc: main's new written type-0/type-1 descriptor line stays, the multisampled color targets line keeps the PR's wording.
2026-11-04 09:37:14 +13:00
Yunus Shaikh 8942229a70 Merge main into perf/agc-reuse-address-draws-in-space 2026-11-03 11:27:51 -08:00
Daniel HornandClaude Opus 5.5 d52b3c3184 Merge remote-tracking branch 'upstream/main' into fix/agc-clamp-sampler-lod-bias
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-11-03 19:25:14 +00:00
Dean Galvin 7ceffb3974 Merge main 086c0686c8 into #7978 (04f9490487) 2026-11-04 08:19:39 +13:00
Dean 5a20baa0cc Merge pull request #15466 from JJenkx/fix/agc-drop-depth-results-over-unmapped-memory
fix(agc): drop depth and stencil plane results over memory unmapped since they were drawn
2026-11-04 08:13:33 +13:00
Dean 590c04615c Merge pull request #15248 from GiannisG1/test/htile-mask-lifetime-other-device-before-reimport
test(agc): check the other device's HTILE before the first device imports again
2026-11-04 08:12:00 +13:00
Savvanis SpyrosandClaude Opus 5.5 3c0ee17922 Merge main 1e658521a0 into #9892 (fde9ff2d9a)
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-11-03 21:11:21 +02:00
Dean 0e7df59efb Merge pull request #11557 from JAB-dev/feat/agc-staged-packed-partial-writes
feat(agc): draw partial writes of multisampled 4_4_4_4 targets into a temporary target
2026-11-04 08:10:52 +13:00