Dean
04a9eb4fa2
Merge pull request #15465 from mrfelek/fix/snapshot-allocation-churn
...
fix(agc): accept a resource snapshot when only unrelated allocations moved
2026-11-04 10:08:59 +13: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
Dean
db0f0c4d44
Merge pull request #11586 from JJenkx/feat/http2-ssl-callback
...
feat(http2): deliver TLS certificate verification callbacks
2026-11-04 10:08:47 +13:00
Dean
086c0686c8
Merge pull request #13207 from kyon-eth/feat/media-app-storage-320-exports
...
feat(libSceMediaAppSharedStorage): declare 16 callable exports
2026-11-04 08:13: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
2cb1a5256f
Merge pull request #15457 from atinseau/codex/agc-kept-blocks-reupload
...
fix(agc): forget the blocks kept for the CPU when an upload restamps their units
2026-11-04 08:13:27 +13:00
Dean
f5736cf169
Merge pull request #15437 from oneandonlydean/fix/vouched-lookups-arena-block
...
test(agc): allocate the image table cache bounds test block in the guest arena on Linux
2026-11-04 08:13:21 +13:00
Dean
beb03a06a1
Merge pull request #15436 from JJenkx/fix/linux-main-stack-adopted-attributes-20261103
...
fix(libkernel): refresh adopted thread bounds when entering the main stack
2026-11-04 08:13:16 +13:00
Dean
2fde02c401
Merge pull request #15362 from beardsciences/perf/mesh-window-no-zero-fill
...
perf(shader): stop zeroing mesh window buffer slots at workgroup start
2026-11-04 08:13:10 +13:00
Dean
6d22701a29
Merge pull request #15321 from MarcZX10/r4/r50-ajm-bodies
...
fix(libSceAjm): check batch job buffer counts before the 8-bit cast
2026-11-04 08:13:04 +13:00
Dean
45ba19f149
Merge pull request #15318 from MarcZX10/r2/r54-video-decoders
...
fix(libSceVdecsw): consume rejected units and reject oversized access units
2026-11-04 08:12:58 +13:00
Dean
bd4a6078d8
Merge pull request #15299 from Prophet069/fix/agc-key-miss-attribution
...
fix(agc): attribute resource key misses past the first binding
2026-11-04 08:12:51 +13:00
Dean
3c0794a780
Merge pull request #15298 from Prophet069/fix/agc-staging-shadow-budget
...
fix(agc): leave written regions unstaged while device-local memory is short
2026-11-04 08:12:46 +13:00
Dean
084631c345
Merge pull request #15292 from olegon85/feat/libscehttp-dbg-setprintf
...
test(libSceHttp): pin the supplied-module answer of sceHttpDbgSetPrintf
2026-11-04 08:12:40 +13:00
Dean
6eb5665c38
Merge pull request #15287 from AlexWhitehouse/feat/shader-sdwa-int-to-f32-destinations
...
feat(shader): accept SDWA destination selects on v_cvt_f32_i32 and v_cvt_f32_u32
2026-11-04 08:12:34 +13:00
Dean
80400656a1
Merge pull request #15282 from LeandroLP23/refactor/shader-remove-unused-helpers
...
refactor(shader): remove the unused SharedMemoryBarrierInserter and ShaderStageRuntime
2026-11-04 08:12:28 +13:00
Dean
ff42cf8fdc
Merge pull request #15273 from Matt10n3/codex/appcontent-quota-overflow
...
fix(libSceAppContent): reject overflowing download quotas
2026-11-04 08:12:22 +13:00
Dean
b87467e812
Merge pull request #15257 from hyvvs/fix/avplayer-http-transport-timeout
...
test(avplayer): allow HTTP transport CI load margin
2026-11-04 08:12:16 +13:00
Dean
e231f17d8f
Merge pull request #15255 from HenriksApsitis/test/reported-relinker-regression
...
test(relinker): guard against duplicate module preinit startup
2026-11-04 08:12:11 +13:00
Dean
183b3ce70a
Merge pull request #15251 from BunnyFl/fix/libscenpmanager-sandbox-info
...
feat(libSceNpManager): answer sceNpGetSandboxInfo as firmware 13.42 does in the production environment
2026-11-04 08:12:06 +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
Dean
6cd2899cc6
Merge pull request #15244 from AlexWhitehouse/feat/shader-sdwa-integer-bitscan-destinations
...
feat(shader): accept SDWA destination selects on integer bit scans and bfrev
2026-11-04 08:11:55 +13:00
Dean
7960a0bcb2
Merge pull request #15237 from johnohhh1/fix/tests-file-position-unicode-temp
...
fix(tests): open file position scratch stream under Unicode TEMP
2026-11-04 08:11:39 +13:00
Dean
e687143e68
Merge pull request #15229 from al3w0f205/test/voicechat-request-action-and-numbered-requests
...
test(libSceVoiceChat): cover offline responses for sceVoiceChatRequest0, sceVoiceChatRequest1 and sceVoiceChatRequestAction
2026-11-04 08:11:34 +13:00
Dean
b11031f512
Merge pull request #15155 from Pipodi/perf/spanned-ballot-one-barrier
...
perf(shader): build a spanned wave's ballot from the native subgroup ballot
2026-11-04 08:11:28 +13:00
Dean
88844509d6
Merge pull request #14998 from JJenkx/fix/videodec2-pps-replacement
...
fix(libSceVideodec2): keep AVC picture info after a PPS is replaced under the same SPS
2026-11-04 08:11:22 +13:00
Dean
e2b29c8047
Merge pull request #14880 from Gonic0/perf/agc-scalar-guard-aligned
...
perf(shader): check only the carry on scalar buffer reads bound to their exact range
2026-11-04 08:11:15 +13:00
Dean
c915f22fd8
Merge pull request #14866 from milescoviello/fix/bda-stop-lane-reads
...
fix(shader): keep pixel invocations running after a BDA fault in a program that reads lanes by index
2026-11-04 08:11:05 +13:00
Dean
723ee06871
Merge pull request #14799 from chitters2004/perf/guarded-committed-read
...
perf(agc): read committed guest pages directly on Windows
2026-11-04 08:10:59 +13: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
Dean
b52e86f043
Merge pull request #9898 from savvaniss/perf/agc-stores-without-drains
...
perf(agc): keep constant RAM dumps and unregistered labels on the GPU without draining
2026-11-04 08:10:45 +13:00
Dean
0bf0563442
Merge pull request #9183 from fma-rc/fix/shader-gather-3d-volume
...
fix(shader): gather a 3D image's image_gather4_lz from one slice as measured
2026-11-04 08:10:40 +13:00
mrfelek
5061d3e9ca
fix(agc): retry a resource snapshot when a page it read changed backing
...
The snapshot check that let Materialize accept an attempt during which the
guest allocation generation moved looked only at the registered image
views. A remap of the memory the capture read descriptors from left those
views unchanged, so the attempt was accepted with descriptor words read
before the remap. The generation check on main did not cover this either:
ShaderMemory keeps the pages it read across attempts, so a retry read the
same cached words.
ShaderMemory now records the guest allocations behind each page when it
first reads it. The runtime hook, now snapshotCurrent, drops every page
whose allocations changed, so the next attempt reads it again, and accepts
the attempt only when no page changed and the image views are current.
agc_shader_memory gains a directly bound sampled array image case through
the real CaptureRegisteredViewsCurrent (an unrelated mapping during the
attempt is accepted and keeps the view, a resize of the image's own range
is retried) and a capture whose descriptor page is remapped mid-capture,
which must return the descriptor written after the remap.
AI-assisted.
2026-11-03 17:58:17 +01:00
Dean
1e658521a0
Merge pull request #12120 from meh7an/perf/agc-depth-transfer-passes
...
perf(agc): read depth planes into storage images in a compute pass
2026-11-04 05:43:40 +13:00
Dean
7f43f9cb1f
Merge pull request #11901 from 00xDisaster/fix/dcc-key-proof-cache
...
perf(agc): reuse sampled DCC key proofs across scans
2026-11-04 05:43:34 +13:00
Dean
31ab214934
Merge pull request #11002 from SandstromPL/fix/libkernel-guest-sigpipe
...
fix(libkernel): let a guest ignore or catch SIGPIPE on Linux
2026-11-04 05:43:27 +13:00
Dean
e154438fc4
Merge pull request #10159 from EagleBearerYS/port/fable-fix-pending-key-proof
...
fix(agc): keep a DCC target's refresh proof while its keys are pending driver stores
2026-11-04 05:43:20 +13:00
Dean
6457b9a0e4
Merge pull request #9672 from ntamas94/up/ps4-depth-sample-extent
...
fix(libSceAgcDriver): sample a PS4 depth buffer through a T# smaller than its padded extent
2026-11-04 05:43:13 +13:00
Dean
16c425c5c5
Merge pull request #8748 from LeandroLP23/perf/agc-pool-host-placed-device-buffers
...
perf(agc): keep device buffers placed in host memory for reuse while the device heap is full
2026-11-04 05:43:06 +13:00
Dean
798d61627a
Merge pull request #8346 from MarrasFederico/feat/appinstutil-no-install
...
feat(libSceAppInstUtil): answer for an installer service that never installs
2026-11-04 05:43:01 +13:00
Dean
3a2ce76ace
Merge pull request #6273 from SoRadGaming/perf/windows-widen-collects
...
perf(agc): widen small epoch collects to their 64 KiB block on Windows
2026-11-04 05:42:55 +13:00
mrfelek
0ac232a33a
fix(agc): keep the directly bound image views in the resource snapshot
...
Materialize cleared registeredImages before adding the table views, which
dropped the views materializeSnapshot registers for directly bound images
on every attempt. materializeSnapshot already starts each attempt from an
empty snapshot, so the clear is removed.
AI-assisted.
2026-11-03 17:26:39 +01:00
Savvanis Spyros and Claude Opus 5.5
f160886325
Merge main into perf/agc-stores-without-drains
...
Co-Authored-By: Claude Opus 5.5 <[email protected] >
2026-11-03 17:37:34 +02:00
JJenkx and Claude Opus 5.5
ce8aaf32db
test(agc): check a pending depth fill and a partial unmap against a remapped plane
...
Co-Authored-By: Claude Opus 5.5 <[email protected] >
2026-11-03 09:15:56 -05:00
JJenkx and Claude Opus 5.5
317296719d
fix(agc): order unmaps against a plane's draws and clears, and drop only the depth units they cover
...
Co-Authored-By: Claude Opus 5.5 <[email protected] >
2026-11-03 09:15:56 -05:00
Nicolas Gonzalez and Claude Opus 5.5
434c5429ea
test(agc): read through an oversized V# before any store
...
Scalar and vector loads through a present oversized unregistered V#
must return 0 before anything is stored through it.
Co-Authored-By: Claude Opus 5.5 <[email protected] >
2026-11-03 11:15:21 -03:00
Nicolas Gonzalez and Claude Opus 5.5
abe6cb3683
fix(agc): zero the placeholder of an oversized V#
...
A present V# beyond the storage buffer range is bound to its own
placeholder, which was created without a fill. A new device allocation
or a pooled block is not zero, so loads through such a V# read
uninitialized or stale bytes instead of 0. Zero it like the empty
buffer.
Co-Authored-By: Claude Opus 5.5 <[email protected] >
2026-11-03 11:15:21 -03:00
Nicolas Gonzalez and Claude Opus 5.5
4284c39bc3
fix(shader): keep the size check of scalar reads through a V# whose size is not whole DWORDs
...
Where robust loads are not exact, a driver may round a binding's range up
to a DWORD (RADV does), so a V# of 7 bytes gets a length of 2 DWORDs and
the length check passes the DWORD at byte 4 that the V# size excludes.
Specialize the low two bits of the V# size in the free fourth word of the
buffer's specialization slots, key the binding plan and the result memo
on it, and keep the carry-only guard only when both the base and the size
are whole DWORDs.
Co-Authored-By: Claude Opus 5.5 <[email protected] >
2026-11-03 11:15:20 -03:00
Nicolas Gonzalez and Claude Opus 5.5
207b88fca9
test(agc): give the mock context the placeholder of an oversized V#
...
The mock graphics context set only the null V# placeholder, so binding an
unregistered V# past the range limit now found no buffer.
Co-Authored-By: Claude Opus 5.5 <[email protected] >
2026-11-03 11:15:20 -03:00
Nicolas Gonzalez and Claude Opus 5.5
7bbbf70eda
fix(agc): bind a present V# beyond the storage buffer range to its own placeholder
...
A present V# whose size exceeds maxStorageBufferRange and whose base is not
registered was bound to the same 16-byte placeholder as a null V#. Its
guest checks pass, so a store through it could write that placeholder,
and a later scalar read through a null V# (which now relies on the length
check alone) would return the stored word instead of 0. Bind such a V# to
a separate placeholder, so the zeroed one is only bound for V#s the guest
checks treat as not present and no store reaches it.
Co-Authored-By: Claude Opus 5.5 <[email protected] >
2026-11-03 11:15:20 -03:00