Commit Graph
6285 Commits
Author SHA1 Message Date
GruzzberryandClaude Sonnet 5.5 6b6ec00fad feat(libkernel_sys): implement kldsym argument checks
Follow FreeBSD 11.4's sys_kldsym: EFAULT for an unreadable lookup
structure, EINVAL for a wrong version or command, EFAULT or
ENAMETOOLONG for the symbol name, ENOENT for a negative file id. Any
other lookup throws, as no kernel module is modelled. Adds
GuestCopyIn_nid_no_patch for the checked structure read.

Co-Authored-By: Claude Sonnet 5.5 <[email protected]>
2026-10-27 08:01:39 +01:00
Adrià f1adec7eb1 Merge pull request #11230 from orezraey/docs/libkernel-sync-timeouts-eventflag-measured-ps5
docs(libkernel): record timed self-locks, event flag open and create, and the reltimed calls as measured on a PS5
2026-10-27 08:00:27 +01:00
xXPBSXxandClaude Sonnet 5.5 a695743b3d fix(libc): set ERANGE when sinh overflows
The host sinh set errno to ERANGE on overflow and sinhf does, but the msun port
returned the overflowed value with errno untouched. The overflow path of
sinh_nid_postfix sets ERANGE again; msun itself sets no errno.

Co-Authored-By: Claude Sonnet 5.5 <[email protected]>
2026-10-27 07:59:34 +01:00
Adrià b241428c63 Merge pull request #10984 from EagleBearerYS/fix/count-throwing-done-exports
fix(prx): report four exports that always throw as not implemented
2026-10-27 07:59:18 +01:00
Adrià bf83eae375 Merge pull request #10947 from roboterspinne/fix/relinker-windows-tls-template-imports
fix(relinker): reject Windows executable imports bound into the TLS template
2026-10-27 07:59:13 +01:00
Adrià 63d5eb00e4 Merge pull request #10892 from EagleBearerYS/feat/scefont-glyph-render-image-v2
feat(libSceFont): render generated glyphs with sceFontGlyphRenderImage
2026-10-27 07:59:02 +01:00
Adrià b806f1a7a0 Merge pull request #11217 from AlexFigas/docs/libc-dinkumware-division-evidence
docs(debt): cut the long-double Dinkumware entry to _LLog with the bundled libc.prx code
2026-10-27 07:58:44 +01:00
xXPBSXx fccdc6d687 Merge main (951e5963a4) into libm/sinh-msun 2026-10-27 07:58:16 +01:00
MarcZX10 280afbe043 docs(libSceGnmDriverForNeoMode): say that sceGnmRegisterOwner returns Failure instead of throwing 2026-10-27 06:57:40 +00:00
MarcZX10 1725aef9dc docs(libSceGnmDriverForNeoMode): record the single-source shadPS4 signatures of the declared stubs 2026-10-27 06:57:21 +00:00
xdCloudy 1e1d2368d0 docs: distinguish known exports from unverified ABI 2026-10-27 19:57:19 +13:00
Dean Galvin e78f746c20 fix(libSceIcu): drop the two exports main already has 2026-10-27 19:57:19 +13:00
xdCloudy 5b924dc09a feat(libSceXml): declare pending exports 2026-10-27 19:57:19 +13:00
xdCloudy 90ac7f3100 feat(libSceNpCommon): declare 150 additional PS5 exports 2026-10-27 19:57:19 +13:00
xdCloudy 834739e3fd feat(libSceCommonDialog): declare pending exports 2026-10-27 19:57:19 +13:00
xdCloudy 458a997895 docs: distinguish known exports from unverified ABI 2026-10-27 19:57:19 +13:00
xdCloudy 2e2e6f2775 feat(libSceIcu): declare 150 PS5 3.20 exports 2026-10-27 19:57:19 +13:00
iAbdulrrahman c8b4b292a9 feat(libkernel_sys): implement genuine console and platform identity queries 2026-10-27 09:55:24 +03:00
milescovielloandClaude Opus 5.5 d386018d18 docs(libSceSaveData.native): scope the result checks to the instructions after each call
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-27 06:47:46 +00:00
Adrià FranchandClaude Sonnet 5.5 7bc24e2311 docs(libSceNpUniversalDataSystem): link CreateHandle to Handle.cpp
Co-Authored-By: Claude Sonnet 5.5 <[email protected]>
2026-10-27 07:47:28 +01:00
lakhantheboss 160a32416d docs(libSceNpUniversalDataSystem): record unverified null argument behavior 2026-10-27 07:47:22 +01:00
milescovielloandClaude Opus 5.5 f198f05547 docs(libkernel): scope the sceKernelVirtualQuery reads to the inspected instructions
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-27 06:47:14 +00:00
milescovielloandClaude Opus 5.5 0f9133b769 docs(libSceAudioOut): scope the context attribute stub to valid arguments
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-27 06:46:52 +00:00
hugodearaujo 5a5e54a455 Merge main into fix/agc-short-cube-sampling 2026-10-27 03:46:24 -03:00
Rookie 350daeee41 feat(libSceCesCs): add the ISO 646 national variants and JIS X 0201 profiles 2026-10-27 06:44:02 +00:00
Dean Galvin 0d12e16409 fix(libSceFreeTypeOl): drop the exports main already provides
Remove the stubs whose NIDs main now defines. Main's own debt entries stay
unchanged; the imports are appended after them.
2026-10-27 19:39:46 +13:00
milescovielloandClaude Opus 5.5 448275eff5 docs(libSceAudioOut): list sceAudioOut2ContextSetAttributes as a silent stub
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-27 06:34:57 +00:00
Dean Galvin 623f4a4ce9 merge: main into salvage/jsc-9438 2026-10-27 19:32:15 +13:00
Dean Galvin 357c9483b2 merge: main into salvage/freetypeol-9453 2026-10-27 19:32:15 +13:00
milescovielloandClaude Opus 5.5 603a540fa7 docs(libSceAudioOut): scope the port state reads to the inspected instructions
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-27 06:29:16 +00:00
milescovielloandClaude Opus 5.5 63c5b74806 docs(libSceNpGameIntent): note the info size and intent data offset six titles use
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-27 06:28:09 +00:00
Emanuele 03f7c1134f fix(shader): keep the position read of barycentric built-ins on MoltenVK
The I/J reads take the BaryCoordSmooth input, but gl_FragCoord was declared
only for the offset kinds, so its w was read as the constant 0 and the
fragment function never read [[position]]; Apple GPUs then return the
weights unnormalized. Declare it with the built-in, and select on
gl_FragCoord.w > 0, which a compiler cannot fold as it can
min(b, b + |w|).
2026-10-27 07:25:48 +01:00
Emanueleandyripper a95ced504c feat(recompiler): read I/J from barycentric built-ins on MoltenVK
MoltenVK exposes VK_KHR_fragment_shader_barycentric but its MSL step
rejects PerVertexKHR, so the extension is disabled there and a pixel
shader whose I/J VGPRs outlive their v_interp_p1/p2 pairs takes the
generated barycentric stages, which accept only triangle lists without
primitive restart on a device without geometry shaders.

A new target flag, fragmentBarycentricBuiltins, enables the extension
for its built-ins only. The host interpolation check then keeps the
leftover I/J reads (all perspective or all linear, at the fragment's
default position) and reads them from BaryCoordKHR or
BaryCoordNoPerspKHR, while the interpolated attributes stay hardware
varyings. Raw vertex parameters and I/J at an offset or a sample
position still take the generated stages. Apple GPUs return
unnormalized perspective weights unless the fragment function reads
[[position]], so each perspective read keeps a neutral use of
gl_FragCoord.w, loaded as a float. Devices with the full extension are
unaffected; the request serialization moves to version 45.

Co-authored-by: yripper <[email protected]>
2026-10-27 07:25:48 +01:00
milescovielloandClaude Opus 5.5 8f2f7b8971 docs(libSceAudioOut): note which port state fields five titles read
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-27 06:25:19 +00:00
milescovielloandClaude Opus 5.5 d97cdbbb7f docs(libkernel): note the sceKernelVirtualQuery fields seven titles read
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-27 06:22:00 +00:00
xXPBSXxandClaude Sonnet 5.5 b265a0d8c1 fix(libc): compute asinh with FreeBSD msun's algorithm
asinh_nid_postfix called the host libm's asinh. It now follows the branches and
thresholds of FreeBSD msun's s_asinh.c (release/11.4.0): below 2^-28 it returns x,
up to |x| = 2 it uses log1p, up to 2^28 log(2|x| + 1/(sqrt(x*x+1)+|x|)) and above
that log(|x|) + ln2. Up to |x| = 2 the results are bit-identical to msun; above 2
they depend on the host log this file still uses.

Co-Authored-By: Claude Sonnet 5.5 <[email protected]>
2026-10-27 07:10:31 +01:00
iAbdulrrahman 9f77f256a9 feat(libc): implement 64-bit atomic fetch helpers 2026-10-27 09:05:24 +03:00
orezraeyandClaude Opus 5.5 8820aa309f Merge main into docs/libkernel-module-process-info-measured-ps5
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-27 02:49:54 -03:00
Dean a453b29ebe Merge pull request #11434 from LeandroLP23/test/shader-cache-smb-posix-rename
test(shader): skip open-entry cache replacements where SMB has no POSIX rename
2026-10-27 18:38:46 +13:00
orezraeyandClaude Opus 5.5 6aeb8d6c3e Merge main into fix/agc-partial-fast-clear-eliminate
Keep #9694's coverage check for targets without CMASK or DCC keys and skip it only for a fast-clear eliminate over a CMASK target without DCC keys.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-27 02:37:09 -03:00
Dean a8bc4474c4 Merge pull request #11090 from roboterspinne/fix/relinker-windows-gs-trap-entry-roots
fix(relinker): refuse GS traps that overwrite a code entry point in Windows output
2026-10-27 18:32:02 +13:00
Dean 8398527558 Merge pull request #10426 from rooklz/feat/cescs-jisx0213
feat(libSceCesCs): add the EUC-JIS-2004 and Shift_JIS-2004 profiles
2026-10-27 18:23:28 +13:00
Dean a1f75ecf9b Merge pull request #9874 from akkadbakkad89/feat/prx-declare-np-exports
feat(prx): declare exports for 3 inventory-covered NP libraries
2026-10-27 18:22:12 +13:00
Dean 1a13c2969f Merge pull request #9833 from MarcZX10/codex/libc-strtod-decimal-subnormal-erange
fix(libc): set ERANGE for decimal strtod subnormals
2026-10-27 18:21:37 +13:00
Dean 940c298d51 Merge pull request #9698 from mazen320/feat/libc-num-put-vtable-size
fix(libc): size the num_put facet vtable to 112 bytes
2026-10-27 18:20:54 +13:00
Dean 8aa1f9ef7f Merge pull request #9344 from MarcZX10/codex/macos-backtrace-support
feat(libc): restore macOS guest backtraces
2026-10-27 18:20:03 +13:00
Dean 27310a12eb Merge pull request #9282 from MarcZX10/codex/npmanager-waitasync-unimplemented
feat(libSceNpManager): add explicit sceNpWaitAsync stub
2026-10-27 18:19:42 +13:00
Dean 5023cd5a25 Merge pull request #9263 from imellag/fix/libkernel-macos-guest-unwind-info
fix(libkernel): report unwind information for guest and host addresses on macOS
2026-10-27 18:19:28 +13:00
Adrià d093ea9ced Merge pull request #10767 from Ragbie/fix/recvmsg-after-shut-rd
fix(libkernel): drop the data a socket held before shutdown(SHUT_RD) in every receive path
2026-10-27 06:14:18 +01:00
Yunus Shaikh 8f007d234a feat(libkernel_sys): implement sigreturn
sigreturn applies FreeBSD 11's amd64 sys_sigreturn checks:
- EFAULT for a null context;
- EINVAL for unknown mc_flags, and for rflags bits outside
  PSL_USERCHANGE that differ from the current flags;
- set_fpcontext's FPU format and ownership cases.
It then restores the context through the path setcontext uses, which
now lives in RestoreContext. A non-user %cs and an extended FPU state
still throw.
2026-10-27 06:14:13 +01:00