Commit Graph
17691 Commits
Author SHA1 Message Date
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 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
Daniel Castrillon ac9af0579f chore(shader): sync GPU validation base with upstream main 2026-10-27 01:54:04 -05:00
hugodearaujo b9f4f65904 fix(shader): encode both new image fields under disk cache format 49
main took format 48 and a 45th ImageResource field (optionalDescriptor) with #8077; the merge kept both sides's 48 and 44.
2026-10-27 03:46:24 -03:00
hugodearaujo 5a5e54a455 Merge main into fix/agc-short-cube-sampling 2026-10-27 03:46:24 -03:00
PrivacyOnion a9d7b30994 test(libScePlayerReviewDialog): cover mode 1 parameter and null result in initialized state in GuestPlayerReviewDialog 2026-10-27 07:46:08 +01:00
Adrià 951e5963a4 Merge pull request #11718 from MarcZX10/marc/fix-macos-unwind-test-header
test(libkernel): use the libkernel public header in the macOS unwind module info test
2026-10-27 07:44:38 +01:00
Rookie 0a1ee9fd20 test(libSceCesCs): use the public header in the ISO 646 tests 2026-10-27 06:44:02 +00: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
MarcZX10 7af80c966e test(agc): run the converted guest memory lifetime test under ASan
agc_driver_guest_memory_lifetime_converted runs a relinked fixture that loads the ASan builds of libkernel, libc and libSceAgcDriver, so the ASan runtime is not the first library and ASan stops with 'ASan runtime does not come first in initial library list'. Set verify_asan_link_order=0 for it, as loadexec_arguments already does for its converted host. With it the test passes in an ANYPS5_ENABLE_ASAN build on Linux; other builds are unaffected.
2026-10-27 06:34:54 +00:00
milescovielloandClaude Opus 5.5 4912e4c7a9 test(libkernel): cover the APR ForEach resolves with and without a prefix
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-27 06:33:48 +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
Daniel Castrillon 0ff75b7a50 chore(shader): sync formatted stores with upstream main 2026-10-27 01:26:42 -05: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
Adrià FranchandClaude Sonnet 5.5 661be6f367 fix(shader): strip the barycentric flag in the version 43 request fixtures
Co-Authored-By: Claude Sonnet 5.5 <[email protected]>
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
xXPBSXxandClaude Sonnet 5.5 19a8d9ee9a test(libc): pin asinh bits to FreeBSD msun's results
Co-Authored-By: Claude Sonnet 5.5 <[email protected]>
2026-10-27 07:10:31 +01: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
Dean b7105f7285 Merge pull request #11590 from oneandonlydean/astro/unary-special-rows-v2
test(shader): check the unary special results on 32 more rows
2026-10-27 19:09:10 +13:00
Dean 5283d89b95 Merge pull request #11569 from olegon85/test-net-byte-order
test(libSceNet): cover the sceNetHton and sceNetNtoh byte-order conversions
2026-10-27 19:08:55 +13:00
Dean 7556e38a6a Merge pull request #11548 from milescoviello/test/npcommon-rtc
test(libSceNpCommon): cover the NP RTC conversion to POSIX time and RFC 3339 formatting
2026-10-27 19:08:17 +13:00
Dean c2bbbce814 Merge pull request #11545 from milescoviello/test/https-ca-list
test(libSceHttp): cover sceHttpsGetCaList and sceHttpsFreeCaList with a null and a filled list
2026-10-27 19:07:21 +13:00
Dean 1f2c139a8b Merge pull request #11544 from milescoviello/test/nputility-bandwidth-abort-status
test(libSceNpUtility): cover sceNpBandwidthTestAbort and sceNpBandwidthTestGetStatus before a test starts
2026-10-27 19:07:06 +13:00
Dean 4807400cc1 Merge pull request #11541 from milescoviello/test/npsessionsignaling-activate-user-connection-info
test(libSceNpSessionSignaling): cover sceNpSessionSignalingActivateUser and sceNpSessionSignalingGetConnectionInfo without a session
2026-10-27 19:06:30 +13:00
Dean 3c36c5a6ba Merge pull request #11539 from milescoviello/test/npmanager-signed-out-state
test(libSceNpManager): cover the signed-out answers of the NP state, sign-up, reachability and premium queries
2026-10-27 19:06:12 +13:00
Dean 182a74381c Merge pull request #11537 from milescoviello/test/pthread-rename
test(libkernel): cover scePthreadRename's rename and its null checks
2026-10-27 19:05:56 +13:00
iAbdulrrahman 9f77f256a9 feat(libc): implement 64-bit atomic fetch helpers 2026-10-27 09:05:24 +03:00
Dean a428de6911 Merge pull request #11535 from milescoviello/test/npsessionsignaling-activate-session
test(libSceNpSessionSignaling): cover sceNpSessionSignalingActivateSession's argument, context and mode checks
2026-10-27 19:05:19 +13:00
Dean 783b391bca Merge pull request #11534 from milescoviello/test/kernel-gettimeofday
test(libkernel): cover sceKernelGettimeofday's null check and the time it reads
2026-10-27 19:05:03 +13:00
Dean ad29cabe9e Merge pull request #11533 from milescoviello/test/playgo-progress-and-install-chunks
test(libScePlayGo): cover scePlayGoGetProgress's checks and scePlayGoGetInstallChunkId on a chunk table
2026-10-27 19:04:44 +13:00
Dean 8001b11043 Merge pull request #11517 from milescoviello/test/npmanager-get-account-id-a
test(libSceNpManager): cover sceNpGetAccountIdA's signed-out answer
2026-10-27 19:02:37 +13:00
Dean e6c793fcd0 Merge pull request #11515 from milescoviello/test/systemservice-launch-player-dialog
test(libSceSystemService): cover sceSystemServiceLaunchPlayerDialog with a null and an initialized param
2026-10-27 19:02:22 +13:00
Dean c8e7e1fdb4 Merge pull request #11514 from milescoviello/test/playgo-set-install-speed
test(libScePlayGo): cover scePlayGoSetInstallSpeed's handle check and the speed it stores
2026-10-27 19:02:06 +13:00
Dean d37a8d0e24 Merge pull request #11501 from pushkarreddyy/test/npsnsfacebookdialog-uninitialized-null-argument-coverage
test(libSceNpSnsFacebookDialog): cover null argument handling before initialization
2026-10-27 19:01:32 +13:00
Dean 9e2e90dc00 Merge pull request #11498 from pushkarreddyy/test/npfriendlistdialog-uninitialized-null-argument-coverage
test(libSceNpFriendListDialog): cover null argument handling before initialization
2026-10-27 19:00:53 +13:00
Dean eccb92d9bb Merge pull request #11497 from pushkarreddyy/test/hmdsetupdialog-uninitialized-null-argument-coverage
test(libSceHmdSetupDialog): cover null argument handling before initialization
2026-10-27 19:00:38 +13:00
Dean 32906a0659 Merge pull request #11494 from iAbdulrrahman/feat/libc-bit-search-functions
feat(libc): implement ffs, ffsl, ffsll, fls and flsll bit search functions
2026-10-27 19:00:19 +13:00
Jota 0069118a9d test(agc): expect no promotion in the MSAA storage twin case on sample-order devices
StorageTwin asserts that a storage access promotes the rendered target
to a new image. On a device that writes the guest sample order back
(MayReorderSamples with a storage format, such as lavapipe with its 1x1
sample-location grid) the target is born storable, so the storage view
is the rendered image and the case fails with "MSAA storage promotion
kept the rendered image", the same reason StorageRemap failed. Expect
the same image there, and a new one everywhere else.
2026-10-27 02:45:34 -03:00
Jota 72a8ab97c2 test(agc): skip the MSAA storage-promotion remap on sample-order devices
A device with programmable sample locations but only a 1x1 location grid (for example lavapipe) creates its multisampled color targets with storage usage from the start, so the guest sample order can be written back. MultisampleTargetStorageView then returns that already-storable image and makeStorable is a no-op, so there is no promotion allocation to retire and the generation does not change. StorageRemap asserted the opposite and failed deterministically with "MSAA storage promotion did not retain its source image".

Skip StorageRemap on such devices, mirroring OrderRemap, which already runs only there. The born-storable targets lifetime stays covered by OrderRemap; StorageRemap keeps covering the promotion path on devices whose MSAA targets are not born storable (for example NVIDIA, whose 4x grid is 2x2).
2026-10-27 02:45:34 -03:00
Dean fe2b52c7e4 Merge pull request #11474 from heditrigui/test/errordialog-param-validation
test(libSceErrorDialog): cover uninitialized and invalid size arguments in sceErrorDialogOpen
2026-10-27 18:40:10 +13:00
Dean a8ff389dee Merge pull request #11462 from xXPBSXx/test/usleep-behavior
test(libkernel): cover the return value and duration of usleep
2026-10-27 18:39:37 +13: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
Dean 35ba44f7fa Merge pull request #11424 from josealissonbr/fix/posix-spawn-test-utf8-environment
test(libSceLibcInternal): pass the spawn test's environment as UTF-8 on Windows
2026-10-27 18:37:39 +13:00
Dean f52fcfd749 Merge pull request #11422 from Mherberts/codex/fix-mingw-ucrt-fixture-build
fix(build): link the UCRT test fixture without -mcrtdll
2026-10-27 18:37:16 +13:00