Dean
8e039f083f
Merge pull request #9988 from frankea/fix/one-sample-ancillary-unsampled
...
fix(agc): accept ANCILLARY without PS_ITER_SAMPLE for a one-sample depth target without MSAA_ENABLE
2026-10-25 01:54:06 +13:00
Adrià
6e85617080
Merge pull request #9856 from Pacuka/feat/agc-driver-mem-semaphore
...
feat(libSceAgcDriver): execute MEM_SEMAPHORE signals and waits
2026-10-24 14:52:55 +02:00
Adrià
ce9471f191
Merge pull request #9836 from 00xDisaster/fix/pipeline-journal-no-workflows
...
fix(agc): keep the pipeline journal's newest pipelines when it is full
2026-10-24 14:13:50 +02:00
Adrià
60465afd3a
Merge pull request #7307 from Zenodeon/agc-submit-progress-pr
...
feat(agc): add opt-in bounded submission progress
2026-10-24 11:59:57 +02:00
Adrià
672c38f703
Merge pull request #9077 from thuanquang/docs/debt-agc-htile-msaa-stale
...
docs(agc): correct five stale statements in the HTILE and multisampled target entries
2026-10-24 11:54:34 +02:00
Adrià
a78fed26df
Merge pull request #8639 from Tripchipp/docs/debt-type0-null-image-link
...
docs(debt): link the TYPE=0 null image entry to the recompiler
2026-10-24 11:54:29 +02:00
thuanquang and Claude
5536623f6c
docs(agc): correct five stale statements in the HTILE and multisampled target entries
...
Co-Authored-By: Claude <[email protected] >
2026-10-24 11:37:08 +02:00
Dean Galvin
eaf4a711e5
Merge main into fix/one-sample-ancillary-unsampled
2026-10-24 22:36:23 +13:00
Adrià
86203bafc1
Merge pull request #9022 from LeandroLP23/docs/agc-drop-cmask-gpl-off-debt
...
docs(debt): drop the CMASK clear pass entry for AMD without pipeline libraries
2026-10-24 11:33:17 +02:00
Tripchipp
a5c8c3249d
docs(debt): link the TYPE=0 null image entry to the recompiler
2026-10-24 11:25:41 +02:00
Adrià
1c9ccc7386
Merge pull request #8420 from thuanquang/docs/debt-ngg-registered-programs
...
docs(agc): say that registered NGG vertex programs take the mesh path too
2026-10-24 11:24:10 +02:00
Adrià
67bcd19b8b
Merge pull request #8424 from thuanquang/docs/debt-alpha-to-coverage-dithered
...
docs(agc): drop the stale "only" from the alpha-to-coverage entry
2026-10-24 11:24:04 +02:00
Adrià
20af9f8aa3
Merge pull request #8423 from thuanquang/docs/debt-depth-surface-retire-whole-plane
...
docs(agc): say that only a whole-plane storage write retires a depth surface
2026-10-24 11:23:42 +02:00
Adrià
ca9543ea5a
Merge pull request #8419 from thuanquang/docs/debt-agc-allocation-host-fallback
...
docs(agc): say that a refused device allocation falls back to host memory before throwing
2026-10-24 11:21:53 +02:00
Adrià
7eda9aad20
Merge pull request #8412 from thuanquang/docs/debt-depth-storage-other-level
...
docs(agc): drop another level from the reused depth storage refusals
2026-10-24 11:21:36 +02:00
Adrià
1618d6602e
Merge pull request #8401 from thuanquang/docs/debt-descriptor-pool-lavapipe
...
docs(agc): say that only lavapipe frees descriptor sets individually
2026-10-24 11:18:46 +02:00
Adrià
2b2055fa4f
Merge pull request #8281 from thuanquang/docs/f64-denormal-debt
...
docs(debt): correct stale f64 denormal and RSRC1 float mode statements
2026-10-24 11:06:19 +02:00
Adrià Franch and Claude Sonnet 5.5
954bed036d
docs(agc): order the progress switch row and keep the debt list contiguous
...
Co-Authored-By: Claude Sonnet 5.5 <[email protected] >
2026-10-24 09:02:30 +02:00
Zenodeon
2dc33842b2
test(agc): remove scheduler-dependent submission readiness gates
2026-10-24 09:02:30 +02:00
Zenodeon
a49303005d
feat(agc): add opt-in bounded submission progress
2026-10-24 09:02:30 +02:00
Dean
564de82a00
Merge pull request #10044 from JJenkx/perf/agc-storage-cache-half-heap
...
perf(agc): let the storage image cache take up to half of the heap budget
2026-10-24 18:23:07 +13:00
Adrià
7966e590ef
Merge pull request #8740 from Sam-mon7/feat/frame-replay
...
feat(agc): capture frames at the driver boundary and replay them offline
2026-10-24 07:03:41 +02:00
thuanquang and Claude
b012267774
docs(agc): drop the stale "only" from the alpha-to-coverage entry
...
Co-Authored-By: Claude <[email protected] >
2026-10-24 11:55:55 +07:00
frankea
5c19aa5e42
Merge remote-tracking branch 'origin/main' into fix/one-sample-ancillary-unsampled
...
# Conflicts:
# docs/dev/debt/libSceAgcDriver.md
2026-10-23 23:17:55 -04:00
frankea
fc29c5a338
Merge remote-tracking branch 'origin/main' into fix/one-sample-ancillary-unsampled
...
# Conflicts:
# core/libs/prx/libSceAgcDriver/Graphics/src/State.cpp
# core/libs/prx/libSceAgcDriver/tests/Graphics.cpp
# docs/dev/debt/libSceAgcDriver.md
2026-10-23 22:58:22 -04:00
milescoviello and Claude Opus 5.5
371652fd0e
fix(agc): draw a PS_ITER_SAMPLE program once per pixel into a one-sample color target
...
Co-Authored-By: Claude Opus 5.5 <[email protected] >
2026-10-24 01:26:53 +00:00
Dean
b6198d2fd7
Merge pull request #9721 from frankea/fix/one-sample-depth-comp-z
...
fix(agc): accept DB_EQAA INTERPOLATE_COMP_Z for a one-sample depth target without MSAA_ENABLE
2026-10-24 14:25:46 +13:00
thuanquang and Claude
c687e7e353
docs(agc): limit the host placement exception to device buffers and images
...
Co-Authored-By: Claude <[email protected] >
2026-10-24 08:01:24 +07:00
thuanquang and Claude
8472a51793
docs(agc): say that a refused device allocation falls back to host memory before throwing
...
Co-Authored-By: Claude <[email protected] >
2026-10-24 07:59:55 +07:00
Sam and Claude Opus 5.5
95d2a76583
feat(agc): capture frames at the driver boundary and replay them offline
...
APS5_FRAME_CAPTURE=<dir> makes the AGC driver record a few frames of a
title: the shader registrations and ABI resolutions, video output and
EOP flip reservations it made since it started, a snapshot of every
readable guest allocation (the title image included) taken at a frame
boundary once the driver is idle, and for the next frames each
submission, flip and suspend point with the thread that made it, its
serial progress and the guest pages the write tracker saw the CPU write
before it. At the end it stores the presented display buffers as
reference images. APS5_FRAME_CAPTURE_AT_FLIP, _TRIGGER and _FRAMES pick
the frames.
agc_frame_replay maps the captured memory at its addresses and replays
the calls of each captured thread on a thread of its own, in captured
order, through the current build of the driver with no title running.
It paces GPU work to the in-flight depth the title had, releases GPU
waits that the title's CPU threads released without calling the driver
(AgcDriverAwaitedWaits), and reports frame times, released waits and
how closely the replayed display buffers match the references.
Tests: agc_frame_capture (file format) and agc_driver_frame_replay
(two captured frames of CPU writes and DMA copies replayed and
compared). Docs: BUILD.md, ENVIRONMENT.md and the libSceAgcDriver debt
file.
Co-Authored-By: Claude Opus 5.5 <[email protected] >
2026-10-24 02:09:44 +02:00
Adrià
798c908fc4
Merge pull request #9068 from frankea/table-callee-range
...
fix(shader): link table callees that together exceed s_call_b64 range
2026-10-24 01:58:48 +02:00
Adrià
06596f3bdf
Merge pull request #9017 from TheSovietWaffle/fix/recompiler-stencil-replay-exec-copy
...
fix(recompiler): accept EXEC copies in stencil replay masks
2026-10-24 01:23:52 +02:00
JJenkx and Claude Opus 5.5
9904c737ca
fix(agc): reserve the storage images held in the sampled texture budget
...
Co-Authored-By: Claude Opus 5.5 <[email protected] >
2026-10-23 17:59:54 -04:00
JJenkx and Claude Opus 5.5
3f2e9865b1
docs(agc): condense the texture cache budget debt entry
...
Co-Authored-By: Claude Opus 5.5 <[email protected] >
2026-10-23 17:59:54 -04:00
JJenkx and Claude Opus 5.5
4c4a2332d5
perf(agc): let the storage image cache take up to half of the heap budget
...
Co-Authored-By: Claude Opus 5.5 <[email protected] >
2026-10-23 17:59:54 -04:00
Adrià
dcd7e3a61e
Merge pull request #8564 from JAB-dev/feat/agc-4-4-4-4-partial-writes
...
feat(agc): merge partial writes into 4_4_4_4 UNORM color targets
2026-10-23 23:23:11 +02:00
Adrià
9477025a05
Merge pull request #8672 from eliasbruno124-dev/fix/cold-device-storage-pressure-20261020
...
perf(agc): reclaim idle device buffers under storage cache pressure
2026-10-23 23:22:06 +02:00
frankea
ef2b164b15
fix(shader): relay later table calls past earlier calls' callee copies
2026-10-23 22:13:23 +02:00
battleblob1 and Claude Opus 5.5
30c324a23b
fix(recompiler): accept EXEC copies in stencil replay masks
...
Since #6291 a pixel shader's EXEC copy is read as the saved word ANDed
with WQM(Ballot(true)). MaskReplaySafety only accepts a whole-quad
expansion of a ballot it can show excludes helper lanes, and a ballot
of true includes them, so a stencil-exporting shader whose own-lane
masks come from an EXEC copy was refused (own-lane mask not stable).
Every lane of a quad is active (real or helper), so a ballot of true
holds the same quad bits as the all-ones mask the proof already treats
as quad-stable; it is now classified the same way. Helper-dependent
ballots stay uncertain.
Co-Authored-By: Claude Opus 5.5 <[email protected] >
2026-10-23 21:53:24 +02:00
JAB-dev and Claude Sonnet 5.5
31aaf42381
docs(debt): restore the Packed 16-bit textures entry from main
...
The merge resolution had dropped its storage image sentences, which main keeps and this branch does not change.
Co-Authored-By: Claude Sonnet 5.5 <[email protected] >
2026-10-23 21:35:16 +02:00
JAB-dev and Claude Sonnet 5.5
8d54357e79
Merge branch 'main' of https://github.com/boykopovar/AnyPS5 into feat/agc-4-4-4-4-partial-writes
...
Co-Authored-By: Claude Sonnet 5.5 <[email protected] >
2026-10-23 21:18:00 +02:00
Adrià
d7948b09f9
Merge pull request #8563 from JAB-dev/feat/agc-4-4-4-4-color-target
...
feat(agc): render 4_4_4_4 UNORM color targets through packed R16_UINT exports
2026-10-23 21:12:19 +02:00
Adrià
ea695358ee
Merge pull request #8527 from eliasbruno124-dev/fix/host-import-settle-order-20261020
...
fix(agc): order deferred import settles with main-queue accesses
2026-10-23 20:59:54 +02:00
thuanquang and Claude
2e874e6a4b
docs(debt): say that a raw compute program takes the live RSRC1 float mode
...
Co-Authored-By: Claude <[email protected] >
2026-10-24 01:44:52 +07:00
thuanquang and Claude
92579f545a
docs(debt): correct two stale f64 denormal statements
...
The shader float mode entry said "Other f64 arithmetic does not model
these denormal controls". On main, v_add_f64, v_mul_f64, v_floor_f64,
v_ceil_f64, v_fract_f64, v_frexp_mant_f64, v_frexp_exp_i32_f64,
v_div_fixup_f64, the f64 compares and ds_min/max/cmpst_f64 read the
f16/f64 denormal field, and each has its own entry. The sentence now
names the f64 arithmetic whose translation still does not read it.
The v_floor_f64 entry said its modifier run used 16 of the 23 measured
values. The run's list holds 13 of them plus -1.5, 2.75 and 1 - 2^-53.
Co-Authored-By: Claude <[email protected] >
2026-10-24 01:43:29 +07:00
Adrià
de0854b644
Merge pull request #8261 from thuanquang/fix/force-degamma-snorm-srgb-view
...
fix(agc): sample 8-bit SNORM textures through FORCE_DEGAMMA as their sRGB format
2026-10-23 19:57:15 +02:00
Adrià
4883171f9f
Merge pull request #8283 from milescoviello/fix/msaa-dcc-cmask-fmask-only
...
fix(agc): leave a multisampled DCC target's CMASK unchecked without fast clears
2026-10-23 19:16:32 +02:00
Adrià
e248d3ab24
Merge pull request #8180 from ntamas94/fix/agc-copied-writer-label-drain
...
fix(agc): store a label behind pending copied write-backs without draining
2026-10-23 19:16:19 +02:00
Adrià
b066e5cb77
Merge pull request #8145 from TheSovietWaffle/fix/recompiler-stencil-replay-readonly-bda
...
fix(recompiler): replay stencil exports of pixel shaders that only read through BDA
2026-10-23 18:46:24 +02:00
Adrià
0940da2424
Merge pull request #8070 from thuanquang/fix/table-call-wide-descriptor
...
fix(shader): link a table call whose V# is a slice of an s_load_dwordx8 or s_load_dwordx16
2026-10-23 18:40:11 +02:00