Commit Graph
9913 Commits
Author SHA1 Message Date
Karim Ibrahim ea61baec62 fix(relinker): resolve symbol-name imports through NIDs on Windows
Homebrew built with the ps5-payload-dev SDK imports by symbol name and
names its system libraries with .sprx, while the libraries in libs/
are .prx files that export NIDs. Quake from the websrv launcher
stopped with 457 unresolved imports such as strlen and malloc.

An import without a module that no searched library exports under its
name is now looked up again under the NID of that name. A dependency
named with .sprx, .suprx or .debug_prx loads the .prx library of the
same stem, and libkernel_web also loads libkernel.prx, as
libSceLibcInternal already loads libc.prx.
2026-10-17 22:40:09 -04:00
Dean b39d90bf14 Merge pull request #7357 from T3cm0/bionic/seed48-lcong48
feat(libc): implement seed48 and lcong48
2026-10-18 15:20:36 +13:00
Dean 49e657e83b Merge pull request #7356 from T3cm0/bionic/wide-string-exports
feat(libc): implement wcscspn, wcstoimax, wcstoumax, strtouq, rindex and flsl
2026-10-18 15:20:32 +13:00
Dean 5cc435f02f Merge pull request #7355 from T3cm0/bionic/uchar-conversions
feat(libc): implement the uchar.h conversions, mblen and wctomb
2026-10-18 15:20:29 +13:00
Dean 82a119ad69 Merge pull request #7354 from T3cm0/bionic/long-double-math
feat(libc): implement long double, Bessel and integer math exports
2026-10-18 15:20:26 +13:00
Dean 5a240614e4 Merge pull request #7351 from thuanquang/fix/amd-robust-buffer-access2
fix(agc): keep robustBufferAccess2 off on AMD's proprietary driver
2026-10-18 15:20:22 +13:00
Dean 195d0d08a8 Merge pull request #7334 from milescoviello/fix/rect-list-clip-distances
fix(shader): pass clip distances through the rect-list stages as the vertex shader writes them
2026-10-18 15:01:00 +13:00
Dean 0e94c5d434 Merge pull request #6243 from EagleBearerYS/perf/shader-direct-cpu-evaluable-images
perf(shader): select the record of a T# whose offset the CPU evaluates
2026-10-18 15:00:57 +13:00
Dean 199e2ceb2f Merge pull request #7262 from EagleBearerYS/prep/np-trophies
feat(libSceNpTrophy2): report the title's trophy data from trophyNN.ucp
2026-10-18 15:00:53 +13:00
Dean 154d627e38 Merge pull request #7341 from MarcZX100/codex/noreturn-unimplemented-stub
fix(libc): mark unimplemented NID handler as non-returning
2026-10-18 14:50:33 +13:00
Dean a3dc0b52b0 Merge pull request #7337 from milescoviello/fix/test-fixture-validation
test(agc): create fixture command pools with the reset flag
2026-10-18 14:50:29 +13:00
Dean 7cdfbd2e9d Merge pull request #7152 from Bonjourcestmatt/fix/getdents-not-directory
fix(libkernel): report EINVAL for getdirentries on a non-directory
2026-10-18 14:50:26 +13:00
Dean 720f02ea89 Merge pull request #7342 from oneandonlydean/rescue/2468
fix(relinker): keep test artifacts in the build tree
2026-10-18 14:50:22 +13:00
Dean 0455317705 Merge pull request #7338 from oneandonlydean/rescue/3241
fix(libkernel): name module-relative call sites and thread ids in Linux wait traces
2026-10-18 14:50:19 +13:00
Dean ddf547fbf8 Merge pull request #7186 from simonbronk/codex/net-receive-address-guards-20261017
fix(libSceNet): guard recvfrom sender outputs before receiving
2026-10-18 14:50:15 +13:00
Dean f376eeb9ef Merge pull request #7176 from milescoviello/fix/asan-gpu-tests
fix(agc): run the AGC GPU tests in an ANYPS5_ENABLE_ASAN build
2026-10-18 14:50:11 +13:00
Dean 3d9ba7fce1 Merge pull request #7171 from MrMha/fix/oracle-cli-input-errors-20261017
fix: report oracle CLI input errors before running tools
2026-10-18 14:50:08 +13:00
T3cm0andClaude Opus 5.5 26898755e5 feat(libc): implement seed48 and lcong48
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-17 20:44:32 -05:00
T3cm0andClaude Opus 5.5 f68ab450e2 feat(libc): implement wcscspn, wcstoimax, wcstoumax, strtouq, rindex and flsl
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-17 20:44:06 -05:00
T3cm0andClaude Opus 5.5 58697488a2 feat(libc): implement the uchar.h conversions, mblen and wctomb
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-17 20:43:39 -05:00
T3cm0andClaude Opus 5.5 24a999c499 feat(libc): implement long double, Bessel and integer math exports
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-17 20:43:13 -05:00
thuanquangandClaude Opus 5.5 48b394d1ec fix(agc): keep robustBufferAccess2 off on AMD's proprietary driver
Since #4048 enabled robustBufferAccess2, AMD's Windows driver draws
nothing in agc_driver_layered_volume_draw and agc_driver_layered_volume_vertex,
and the selected loads make the high half of agc_driver_subvector_loop's
wave64 skip its loop. Until the cause is found, that driver does not get
the feature, and its loads keep their selections.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-18 08:42:00 +07:00
Dean 0bb238b4a4 Merge pull request #7336 from thuanquang/fix/trace-thread-across-modules
fix(agc): keep one trace thread pointer and recording flag across modules
2026-10-18 14:15:36 +13:00
MarcZX100 f96cdc1e7e fix(libc): mark unimplemented NID handler as non-returning 2026-10-18 01:10:16 +00:00
Dean 5229b5b829 Merge pull request #7333 from MarcZX100/codex/guest-filesystem-cleanup-retry-7331
test: retry transient Windows filesystem cleanup
2026-10-18 14:04:46 +13:00
Dean 4b2563e2ef Merge pull request #3186 from fma-rc/feat/libscejobmanager-compute
feat(libSceJobManager): implement compute sequences and compute dispatches
2026-10-18 14:04:33 +13:00
milescovielloandClaude Opus 5.5 563cdd6e99 test(agc): create fixture command pools with the reset flag
Seven test fixtures create their own command pool without
VK_COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT, while the driver's own
pool sets it and Recorder begins a used command buffer again without an
explicit reset. The Khronos validation layer reports
VUID-vkBeginCommandBuffer-commandBuffer-00050 in depth_storage and
partially_resident_snapshot --pending-stores for this. The fixtures now
create the pool the way VulkanDevice does.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-18 01:00:16 +00:00
Dean f663e565fe Merge pull request #7329 from oneandonlydean/fix/conventions-shader-comment-fixture
test(tools): check shader comments in one fixture repository
2026-10-18 13:56:58 +13:00
Dean 6336b0eabc Merge pull request #7326 from KauaSantos702/fix/check-compile-utf8-output
fix(tools): write check_compile output as UTF-8
2026-10-18 13:56:54 +13:00
Dean ba38dccb3d Merge pull request #6537 from AnthonyClemens/fix/agc-draw-snapshot-table-sets
fix(agc): keep each set's image table writes in its own draw snapshot…
2026-10-18 13:56:51 +13:00
Dean d9dc2a8231 Merge pull request #7218 from milescoviello/perf/fold-nested-select
perf(shader): fold a select nested in a select on the same condition
2026-10-18 13:56:46 +13:00
Dean e0644fbce1 Merge pull request #7212 from milescoviello/perf/denormal-free-guarded-products
perf(shader): drop the result flush of a product behind its tiny-product check
2026-10-18 13:56:43 +13:00
Dean e99938800e Merge pull request #7323 from MontyMcK/feat/psvr2-no-headset
feat(libSceHmd2): report a console without a PS VR2 headset
2026-10-18 13:56:39 +13:00
Dean 63da333b7a Merge pull request #4048 from Mouad-Scriptz-0/perf/recompiler-select-load-guards
perf(recompiler): select guest memory loads instead of branching around them
2026-10-18 13:56:36 +13:00
thuanquangandClaude Opus 5.5 5c3d21023f fix(agc): keep one trace thread pointer and recording flag across modules
PerformanceTrace kept the recording flag and each thread's trace buffer
as inline static members, so on Windows every module that includes the
header had its own copies: agc_driver_registration_trace read an empty
pointer, and libSceVideoOut's timers never saw the trace recording. They
are now defined once in the driver.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-18 07:50:57 +07:00
MarcZX100 087c57ac84 test: retry transient Windows filesystem cleanup 2026-10-18 00:45:12 +00:00
milescovielloandClaude Opus 5.5 6c47f92b52 fix(shader): pass clip distances through the rect-list stages as the vertex shader writes them
The recompiled vertex shader writes gl_ClipDistance through a variable of
its own beside its position block, but the rect-list control and
evaluation stages read and wrote it as a second member of their
per-vertex block, so the stage interfaces did not match
(VUID-RuntimeSpirv-OpVariable-08746). They now take and forward the clip
distances through ClipDistance variables of their own.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-18 00:43:33 +00:00
blu 5e340fa54d fix(relinker): append the test temp directory instead of replacing the environment
set_tests_properties replaced the ASAN_OPTIONS that add_asan_test_options appends to
guest_module_args, guest_deferred_dependencies and guest_module_fini in ASan builds.
Append the TMPDIR, TEMP and TMP settings instead.
2026-10-18 13:37:21 +13:00
Yunus Shaikh 8c6765be71 Merge main into perf/shader-direct-cpu-evaluable-images
Main's #7325 adds verifyChainedTableOffset to the image table tests
where this branch adds its selected-record tests. Keep both, with
main's call after this branch's.
2026-10-17 17:32:11 -07:00
Dean f1af6c5915 Merge pull request #7325 from Cleverdee/fix/image-table-nested-addend
fix(recompiler): fold chained immediate addends of image-table record offsets
2026-10-18 13:30:46 +13:00
Dean dfd7ad6d56 Merge pull request #6058 from notaxeltv/feat/libScePlayerSelectionDialog-ppsa34015
feat(libScePlayerSelectionDialog): run common-dialog state machine without UI
2026-10-18 13:26:44 +13:00
Dean 55366489fb Merge pull request #7276 from T3cm0/bionic/coredump-exports
feat(libkernel): implement three coredump exports from the console module
2026-10-18 13:26:40 +13:00
Dean eeea684a0b Merge pull request #7280 from T3cm0/bionic/mspace-reallocalign-order
fix(libc): take sceLibcMspaceReallocalign's alignment before its size
2026-10-18 13:26:35 +13:00
Dean 6eea4e0c2e Merge pull request #7282 from T3cm0/bionic/unlocked-stream-queries
feat(libc): implement clearerr_unlocked, fileno_unlocked and fgetln
2026-10-18 13:26:31 +13:00
Dean bf3b5d679d Merge pull request #4020 from MrMha/perf/linear-shader-use-rewrites
perf(shader): rewrite high-fan-out IR uses in linear time
2026-10-18 13:22:31 +13:00
MontyMcK 68355e4269 refactor(libSceHmd2): implement the exports where their stubs were 2026-10-18 13:20:55 +13:00
fma-rc 394ac01946 fix(libSceJobManager): refuse shutdown with compute work in flight and check the handler wait 2026-10-18 02:14:02 +02:00
fma-rc 051a610798 feat(libSceJobManager): implement compute sequences and compute dispatches 2026-10-18 02:12:57 +02:00
Kaua 316ad40b46 fix(tools): write check_compile output as UTF-8 2026-10-17 21:07:01 -03:00
Dean a8581d3331 Merge pull request #6769 from MrMha/fix/audit-test-aliases-20261016
fix: exclude test export aliases from import audit classification
2026-10-18 12:57:36 +13:00