Commit Graph
5633 Commits
Author SHA1 Message Date
Dean 9e91d6bf61 Merge pull request #8546 from Retr0G28/fix/tzname-no-dst
fix(libc): leave tzname[1] as three spaces for a zone without daylight saving time
2026-10-24 07:31:04 +13:00
Dean 216e9a6f98 Merge pull request #9290 from thuanquang/fix/wcsncat-s-overlap-console-rule
fix(libc): reject a wcsncat_s copy only when its written and read ranges overlap
2026-10-24 07:29:30 +13:00
Dean ec5b89a5ec Merge pull request #9041 from HQasper/claude/project-thread-w0s18y-rand
feat(libSceLibreSsl): implement RAND and the CRYPTO allocator functions
2026-10-24 07:28:27 +13:00
Dean 2e5a125982 Merge pull request #9777 from JJenkx/windows/libc-atanf-msun
fix(libc): compute atanf with FreeBSD msun's algorithm, as titles' libc.prx does
2026-10-24 07:27:14 +13:00
Dean 98f6092ef0 Merge pull request #9107 from jacob6769/feat/ces-korean-big5-scalars
feat(libSceCesCs): implement the EUC-KR, UHC and Big5 scalar conversions
2026-10-24 07:26:39 +13:00
Dean f59f545b8a Merge pull request #8284 from mugurc/fix/tests-path-length-macos
fix(tests): skip the 1023-byte guest path check on macOS hosts
2026-10-24 07:25:45 +13:00
Dean b5329ade0d Merge pull request #9896 from savvaniss/feat/np-cusa03312-imports
feat(np): answer and declare the PS4 NP and trophy imports of CUSA03312
2026-10-24 07:25:12 +13:00
Adrià a19e7f6fdc Merge pull request #7888 from mazen320/fix/pixel-function-lds-buffer
fix(shader): keep an unbounded pixel LDS array in a storage buffer
2026-10-23 20:12:31 +02:00
Adrià d2e42c334d Merge pull request #8429 from milescoviello/fix/fmask-narrow-formats
fix(agc): read FMASK of up to 8 samples in every storage width
2026-10-23 20:08:28 +02: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à f57e4ef720 Merge pull request #8339 from DavidSamir/feat/agc-barycentric-rect-list
feat(agc): emulate barycentrics in rect-list draws
2026-10-23 19:01:47 +02:00
Maz 761af3c839 fix(shader): keep the pixel LDS debt note under the length limit 2026-10-23 20:53:28 +04:00
Maz 9ef24b1660 fix(shader): keep the pixel LDS debt note under the length limit 2026-10-23 20:53:27 +04:00
Maz aa77a5ba98 fix(shader): prefer device-local host-visible pixel LDS memory
Keep the NVIDIA-only pool mappable for the sticky overflow header while
preferring a device-local host-visible type when the driver exposes one.
2026-10-23 20:53:25 +04:00
Maz 40c7ff888c fix(shader): scale pixel LDS Function threshold by SM budget
Max measured a 4 GiB private-memory ceiling on a 4090; use
VK_NV_shader_sm_builtins so denser cards take the buffer path below 4096.
2026-10-23 20:53:24 +04:00
Maz 641a0a4173 fix(shader): check pixel LDS overflow when presents retire
Exhausted subgroups share slot 0 until the sticky flag is read; check it on present retire as well as WaitIdle, and cover two draws into one target.
2026-10-23 20:53:23 +04:00
mazen dba7f5466c fix(shader): keep a pixel LDS overflow until the GPU is idle
The slot counter is reset only after earlier fragment writes, and the overflow flag stays until WaitIdle. The storage buffer is limited to NVIDIA's proprietary driver, which is where the large function array does not finish.
2026-10-23 20:53:21 +04:00
mazen 287b149950 fix(shader): keep an unbounded pixel LDS array in a storage buffer
A Function array of 8192 dwords faults NVIDIA driver 617.42. The guest array stays that size, and each invocation gets its own region in a buffer.
2026-10-23 20:52:46 +04: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
Adrià dd02cbf6f9 Merge pull request #8055 from thuanquang/fix/float-atomic-flush
fix(shader): flush the operands of image, buffer and global float atomics
2026-10-23 18:38:11 +02:00
milescovielloandClaude Opus 5.5 ad6a55121e fix(agc): read FMASK of up to 8 samples in every storage width
Since the synthetic FMASK mode was removed, a direct FMASK load reads
the stored word and only Fmask32_S8_F8 is accepted. A load from any
other FMASK format of up to 8 samples now reads the 8-, 16- or 32-bit
surface and expands it in the shader to 4 bits per sample, an index
past the fragment count reading 8 (unknown). One runtime image mode
handles every such format, reading the format from the descriptor at
run time or from a specialization constant.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-23 16:34:33 +00:00
Adrià 1e1c355a54 Merge pull request #8302 from hypermoist/feat/agc-acb-workload-packets
docs(agc): record the console's workload packets
2026-10-23 18:21:40 +02:00
Adrià 4be3da2c6f Merge pull request #7800 from santhoshkumar-dev/codex/agc-memory-hardening
fix(agc): reclaim idle images safely during cache creation
2026-10-23 17:39:02 +02:00
Adrià 83694b3db9 Merge pull request #7803 from thuanquang/fix/msaa-2d-sample-zero
fix(shader): read a 2D MSAA T# through DIM 2D as its sample 0
2026-10-23 17:24:59 +02:00
Queuze 8c521d7d1e fix(agc): recover initial sampled image copies 2026-10-23 16:37:26 +02:00
Santhosh Kumar 3bcd89e10e fix(agc): reclaim idle images safely during cache creation
Forward new-image recovery permission through AllocateImageMemory while preserving host-memory fallback and allocated-type reporting. Reuse held cache locks only at safe construction points, retain caller-held sampled textures and pending storage results, and try resource-cache removal without waiting.

Count released Vulkan allocations and saturate the reclaim reserve. Cover sampled/storage allocation failures, host fallback after image recovery, bounded attempts and overflow. Remove stale conflict markers and unrelated debt, and refresh the recorded validation.
2026-10-23 16:37:26 +02:00
Dean 4997726a5f Merge pull request #8703 from nikowolf123/feat/libcinternal-double-underscore-inet
feat(libSceLibcInternal): export __inet_ntoa_r
2026-10-24 03:29:12 +13:00
Dean dcd40e119d Merge pull request #8287 from mugurc/fix/tests-fenv-masks-rosetta
fix(tests): compare the floating-point exception masks with the ones the host keeps
2026-10-24 03:28:00 +13:00
Dean efc6cd8f1b Merge pull request #8702 from nikowolf123/feat/libcinternal-underscore-err-warn-progname
feat(libSceLibcInternal): export _err, _warn and _getprogname
2026-10-24 03:25:55 +13:00
Dean 4f3087c677 Merge pull request #10136 from orezraey/fix/libkernel-close-standard-descriptors-measured-ps5
fix(libkernel): refuse closing the standard descriptors with EPERM as measured on a PS5
2026-10-24 03:23:15 +13:00
Dean 4ac5597e1f Merge pull request #9530 from Ondra97/codex/feat-freetype-gasp
feat(libSceFreeType): implement FT_Get_Gasp
2026-10-24 03:22:40 +13:00
ntamas94 f90fe33e8d Merge branch 'main' of https://github.com/boykopovar/AnyPS5 into fix/agc-copied-writer-label-drain
# Conflicts:
#	core/libs/prx/libSceAgcDriver/CMakeLists.txt
2026-10-23 16:16:43 +02:00
Adrià 16858c04c6 Merge pull request #6741 from DavidSamir/fix/agc-unobserved-last-provoking-vertex
fix(agc): draw a last provoking vertex that no pixel input sees without the extension
2026-10-23 16:16:37 +02:00
Adrià e94545a592 Merge pull request #7644 from EagleBearerYS/perf/agc-lazy-resolve-shader-abi
perf(agc): leave a lazily registered shader's resolved ABI to its first use
2026-10-23 16:14:38 +02:00
Adrià 1047c108af Merge pull request #6011 from zmeizy/claude/cvt-pk-u8-f32-round-mode
fix(shader): round v_cvt_pk_u8_f32 in the FLOAT_MODE f32 round mode
2026-10-23 16:13:41 +02:00
Adrià FranchandClaude 2fd0610bff fix(agc): draw a last provoking vertex that nothing observes without the extension
Co-Authored-By: Claude <[email protected]>
2026-10-23 15:21:46 +02:00
Claude 687e7d637e fix(libSceLibreSsl): return null from CRYPTO_malloc for sizes of zero or less
CRYPTO_malloc threw for a size of zero or less. LibreSSL 2.5.4, 3.4.1
and 3.4.3 all take an int size and return null there, so it now does
the same, and the test checks for null instead of a throw.

Co-Authored-By: Claude Opus 5.5 (1M context) <[email protected]>
2026-10-23 13:15:04 +00:00
Dean Galvin 192a490b19 Merge main into fix/tzname-no-dst 2026-10-24 02:10:50 +13:00
Dean 65f1d28e7d Merge pull request #9109 from Retr0G28/fix/alias-trailing-slash-windows
fix(libc): fail with ENOTDIR for a file named with a trailing slash on Windows
2026-10-24 02:08:03 +13:00
Dean 8dcbc4e5c9 Merge pull request #9643 from Noxy-HNR/fix/libc-float-domain-errors
fix(libc): preserve errno across fmodf domain errors
2026-10-24 02:03:09 +13:00
Dean be686ec858 Merge pull request #9642 from Noxy-HNR/fix/guest-byte-case-locale
fix(libc): isolate byte case comparisons from the host locale
2026-10-24 02:02:44 +13:00
Dean c383e3772b Merge pull request #9992 from klosixgaming-arch/fix/font-zero-extent-surface
fix(libSceFont): render a glyph into a zero-extent surface to measure it
2026-10-24 01:58:08 +13:00
jacob6769 509243a7e1 Merge remote-tracking branch 'origin/main' into feat/ces-korean-big5-scalars
# Conflicts:
#	docs/dev/debt/libSceCesCs.md
2026-10-23 21:52:29 +09:00
HQasperandClaude Opus 5.5 eb9491b194 feat(libSceLibreSsl): implement RAND and the CRYPTO allocator functions
RAND_add, RAND_bytes, RAND_status, RAND_load_file, RAND_file_name,
CRYPTO_malloc, CRYPTO_free and CRYPTO_set_mem_functions threw. They now
behave as in LibreSSL 2.6.5 through 3.4.3, where these functions did not
change: RAND_bytes fills the buffer from host entropy and returns 1,
RAND_add ignores its input, RAND_status returns 1, RAND_load_file returns
123456 for -1 and the requested count otherwise, RAND_file_name copies
"/dev/urandom" with strlcpy semantics, CRYPTO_malloc and CRYPTO_free use
the guest heap, and CRYPTO_set_mem_functions refuses with 0.

CRYPTO_malloc of zero or a negative size throws because later LibreSSL
versions take a size_t and call malloc instead of returning null.

Co-Authored-By: Claude Opus 5.5 (1M context) <[email protected]>
2026-10-23 12:49:06 +00:00
Dean 0825fee797 Merge pull request #10052 from maximilianfv/fix/libscenet-macos-udp-shutdown
fix(libSceNet): wake a receive on an unbound datagram socket at shutdown on macOS
2026-10-24 01:45:04 +13:00
Dean 7497288ff2 Merge pull request #8993 from simonbronk/feat/libSceCesCs-mbc-sjis-code
feat(libSceCesCs): implement generic MBCS character, Shift-JIS code and JIS X 0213 helpers
2026-10-24 01:44:40 +13:00
Dean fa3dc7f347 Merge pull request #10057 from ntamas94/fix/ps4-jpegenc-encode-size
fix(libSceJpegEnc): return the JPEG size from sceJpegEncEncode
2026-10-24 01:44:19 +13:00