Commit Graph
5792 Commits
Author SHA1 Message Date
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
Dean 98768fd542 Merge pull request #10188 from Felipebmaitan/feat/jobmanager-compute-storage
fix(libSceJobManager): batch compute completion in caller storage
2026-10-24 12:56:53 +13:00
Dean c4c368b84b Merge pull request #10353 from ntamas94/fix/ps4-json2-array-assign
feat(libSceJson2): implement sce::Json::Array::operator=
2026-10-24 12:55:05 +13:00
Dean 46b8d61206 Merge pull request #10068 from xdCloudy/feat/libSceCamera-pending-exports
feat(libSceCamera): declare 106 PS5 3.20 exports
2026-10-24 12:54:09 +13:00
Dean 5211b744ba Merge pull request #8942 from enfuego27826/feat/libscezlib-requests
feat(libSceZlib): support several outstanding requests and timed waits
2026-10-24 12:53:40 +13:00
Dean d8b73e3644 Merge pull request #9273 from DavidSamir/feat/libkernel-sys-pselect
feat(libkernel): implement pselect over select
2026-10-24 12:53:12 +13:00
Dean d284c98b2e Merge pull request #10001 from MarcZX10/codex/libc-coshf-msun
fix(libc): follow msun for coshf
2026-10-24 12:52:24 +13:00
Dean 2ace103a9c Merge pull request #10275 from orezraey/fix/libscenet-inet-pton-ex-measured-ps5
fix(libSceNet): convert sceNetInetPton text and null outputs as measured on a PS5
2026-10-24 12:43:38 +13:00
Dean 0884fab4b1 Merge pull request #8995 from dantdmdarealguy/fix/env-reference-environmentnumber
fix(tools): read the EnvironmentNumber environment reader in env_reference
2026-10-24 12:40:38 +13: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
Dean ca7bf033c5 Merge pull request #9005 from JJenkx/fix/libkernel-sema-null-esrch
fix(libkernel): return ESRCH for a null semaphore handle
2026-10-24 11:58:20 +13:00
Dean 2fcc60cf37 Merge pull request #5426 from Prophet069/codex/review-scratch-offsets-20261013
fix(shader): decode GFX10 scratch offsets as one dword
2026-10-24 11:57:41 +13:00
Dean 4dad3f50c3 Merge pull request #8864 from valenciana-nc/fix/bessel-float-zero-exceptions
fix(libc): avoid spurious float Bessel exceptions at zero
2026-10-24 11:57:10 +13:00
Dean c675a415f2 Merge pull request #9103 from HQasper/claude/project-thread-w0s18y-chown
feat(libkernel_sys): implement chown, lchown, fchownat and linkat
2026-10-24 11:56:40 +13:00
Dean 097a9514a0 Merge pull request #8865 from hypermoist/fix/libc-strtof-sign-hex-range
fix(libc): keep the sign of a failed strtof and match libc.prx strtof ERANGE
2026-10-24 11:56:01 +13:00
Dean 85f2f2d478 Merge pull request #8544 from Retr0G28/fix/fcntl-getfl-pipe-rdwr
fix(libkernel): report O_RDWR from F_GETFL on both ends of a pipe
2026-10-24 11:55:31 +13:00
Dean f622f0253c Merge pull request #9063 from hypermoist/feat/npcommon-runtime
feat(libSceNpCommon): implement 95 more of the module's exports
2026-10-24 11:50:08 +13:00
Adrià a0fb7c26a7 Merge pull request #8968 from Chuk49/fix/agc-capture-skip-float-probe
fix(agc): leave the float-controls probe's pipelines out of compute captures
2026-10-24 00:20:00 +02:00
Adrià e7f46f5c89 Merge pull request #8489 from wachi35676/fix/shader-amd-lds-fence-scope
fix(shader): widen LDS atomic fences to device scope on AMD's proprietary driver
2026-10-24 00:02:07 +02:00
Adrià 495b7c10ab Merge pull request #8792 from SuarezPM/ai/image-atomics-keyed-tables
feat(shader): support 32-bit image atomics through keyed image tables
2026-10-24 00:00:03 +02:00
Dean 1b5efcc8d9 Merge pull request #9210 from rooklz/feat/cescs-gb18030
feat(libSceCesCs): add the GB18030-2000 and GB18030-2005 profiles
2026-10-24 10:44:26 +13:00
Dean 11b175a6b9 Merge pull request #9967 from JJenkx/windows/libc-setlocale-console
fix(libc): accept any setlocale category and only the C locale, as titles' libc.prx does
2026-10-24 10:38:40 +13:00
Dean Galvin 73aede5257 Merge main into feat/libscezlib-requests 2026-10-24 10:38:35 +13:00
Dean 313d905437 Merge pull request #9877 from orezraey/fix/libkernel-release-flexible-measured-ps5
fix(libkernel): keep the range sceKernelReleaseFlexibleMemory releases mapped as measured on a PS5
2026-10-24 10:37:09 +13: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
Adrià a0e858ff7b Merge pull request #8881 from thuanquang/fix/writelane-spill-window
fix(shader): keep a v_writelane lane known across computed-index window stores
2026-10-23 23:17:12 +02:00
Adrià 11e8ad2934 Merge pull request #8713 from SeifKaroui/fix/shader-unused-phi-cycles
fix(shader): remove unused phi cycles before resource planning
2026-10-23 22:46:22 +02:00
Dean d53b659ab2 Merge pull request #9006 from JJenkx/feat/audio-propagation-path-slots
feat(audio-propagation): source-owned path slots and the public render output formats
2026-10-24 09:32:13 +13:00
Dean Galvin baa657a24b Merge main into fix/libkernel-sema-null-esrch 2026-10-24 09:17:39 +13:00
Rookie b62b28831d feat(libSceCesCs): add the GB18030-2000 and GB18030-2005 profiles
Implement sceCesUcsProfileInitGb18030_2000 and sceCesUcsProfileInitGb18030_2005.
Two-byte cells are the CP936 table plus the cells that differ, and four-byte
sequences are runs over the BMP and the supplementary planes, generated from
ICU's gb-18030-2000.ucm (before ICU-8427) and gb-18030-2005.ucm with ICU's
GB 18030 ranges. The GB, MBC and MBCS string conversions accept both profiles
and produce four-byte UTF-8 and surrogate pairs for supplementary characters.
2026-10-23 21:16:05 +01:00
frankea ef2b164b15 fix(shader): relay later table calls past earlier calls' callee copies 2026-10-23 22:13:23 +02:00
Dean ed06dcc29d Merge pull request #9204 from rooklz/feat/cescs-jisx0208
feat(libSceCesCs): add the strict JIS X 0208 EUC-JP and Shift-JIS profiles
2026-10-24 09:13:03 +13:00
Dean 7956a166c7 Merge pull request #9108 from Retr0G28/fix/socket-address-length-exact
fix(libkernel): reject socket addresses longer than sockaddr_in or sockaddr_in6 with EINVAL
2026-10-24 09:12:39 +13:00
Dean fac234a47c Merge pull request #9134 from orezraey/fix/libkernel-event-flag-measured-ps5
feat(libkernel): match event flags to PS5 and add shared flags
2026-10-24 09:12:14 +13:00
Dean Galvin a2ee2958a5 Merge main into fix/fcntl-getfl-pipe-rdwr 2026-10-24 09:07:08 +13:00
Dean a42f61d5b1 Merge pull request #10060 from xXPBSXx/carry/6525-fpathconf
feat(libkernel_sys): implement fpathconf and _fpathconf
2026-10-24 09:03:45 +13:00
battleblob1andClaude 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
Adrià 40564ce897 Merge pull request #5965 from bcortezf/feat/audioout-get-system-state
feat(libSceAudioOut): implement sceAudioOutGetSystemState
2026-10-23 21:52:51 +02:00
JAB-devandClaude 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
SuarezPM 548267bfa3 feat(shader): support 32-bit image atomics through keyed image tables
Table T#s keyed at runtime no longer fault on image_atomic_*32: the
table operation stays supported, elements carry the atomic flag through
dedup into the descriptor binding, and the table path binds AtomicView
like the direct path. 64-bit atomics stay unsupported, packed and BY
formats stay unsupported, and the debt entry records the relaxed
Device-scoped emission and the remaining gaps.
2026-10-23 21:22:29 +02:00
JAB-devandClaude 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à 8cc82c85bf Merge pull request #6469 from QRMOE/fix-low-guest-address-mappings
fix(memory): honor low guest mapping hints
2026-10-23 21:06:11 +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
ntamas94andClaude Opus 5.5 d44c823834 feat(libSceJson2): implement sce::Json::Array::operator=
Copy the source array into this and return this, as the console does
(measured on a PS4 Pro, firmware 10.71). Knowledge is Power: Decades
imports it; the inventory stub threw NotImplemented.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-23 20:53:04 +02:00
Adrià 1e1ab77684 Merge pull request #8495 from yabanana/fix/borrowed-memory-regions
fix(shader): reject temporary owners for borrowed memory regions
2026-10-23 20:47:29 +02:00
Adrià 606999f3ab Merge pull request #7937 from DavidSamir/feat/libkernel-jit-shared-memory-macos
feat(libkernel): JIT shared memory on macOS hosts
2026-10-23 20:37:27 +02:00
Muhammad Wasif Ali WasifandClaude Opus 5.5 98df163cc6 fix(shader): widen LDS atomic fences to device scope on AMD's proprietary driver
The recompiler orders an LDS atomic, and the compare-exchange loop that
writes a byte or a halfword of LDS (ds_write_b8/b16), with a
workgroup-scope OpMemoryBarrier after the update. AMD's proprietary
Windows driver 32.0.21042.62 (Radeon 0x13c0, RDNA 2) compiles that
memory barrier to s_barrier, as the code objects in its pipeline cache
show. Such updates usually sit in branches that only some waves of a
workgroup take, so those waves execute extra s_barriers, which pair
with the other waves' barriers, and the other waves read LDS before it
is written. An OpMemoryBarrier is not an execution barrier and SPIR-V
allows it in non-uniform control flow, so the SPIR-V is valid; a
device-scope OpMemoryBarrier compiles to GL0 and GL1 cache
invalidations without s_barrier there.

PS5LM Plus (PPSA99581, llama.cpp's Vulkan backend) drifted into
garbage on that driver with flash attention on. Its flash-attention
shader stores two halfwords to LDS in a branch that two of its four
waves take, inside the KV loop. The driver's code had 23 s_barrier for
the guest's 21; a replay of the dispatch differed from NVIDIA in 159
words, up to 1.7e38, and now has 21 and differs only in the last bit
of 9 words.

On that driver the fence is now device scope, which orders everything
the workgroup-scope fence did. Other drivers keep the workgroup scope.
The flag is part of the shader cache key, and agc_shader_replay takes
--device-scope-lds-memory-barriers to replay a request the way that
driver compiles it. The LDS update helper already fences, so the
second, identical fence after it in ds_min/max_f32 and the other
read-modify-write LDS operations is dropped.

agc_driver_lds_subword_store_branch stores a halfword to LDS in a
branch that waves 0-1 of four take, delays those waves and then
exchanges LDS slots across one s_barrier. Before, thread 64 read a
stale slot on the AMD driver; it passes on AMD and NVIDIA now.
agc_subgroup_barrier checks the driver quirk and that ds_write_b16,
ds_add_u32 and ds_max_f32 each emit one fence of the expected scope.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
Claude-Session: https://claude.ai/code/session_01BM2kfDbr6MydxsfTckZJDR
2026-10-23 20:34:25 +02:00
Dean 7970ffbd08 Merge pull request #8910 from DoubleAAGuy/fix/libkernel-unknown-sysctl-enoent
fix(libkernel): return ENOENT for unknown sysctl names
2026-10-24 07:33:30 +13:00