Commit Graph
20967 Commits
Author SHA1 Message Date
Adrià e4bb5fc125 Merge pull request #7886 from jotitadev/fix/agc-tests-vulkan-loader-macos
test(agc): load the Vulkan loader with portability enumeration on macOS
2026-10-24 18:36:44 +02:00
Adrià feb5059ac4 Merge pull request #8254 from YossiYad/feat/net-threads
feat(libSceNet): implement the net thread calls and refuse network emulation
2026-10-24 18:35:46 +02:00
Adrià be7e039d88 Merge pull request #9396 from EagleBearerYS/fix/agc-draw-aliases-by-key
fix(agc): let draw relocation aliases name a cached key, not hold its entry
2026-10-24 18:35:39 +02:00
orezraeyandClaude Opus 5.5 2f99b411af Merge main into fix/libc-printf-measured-ps5
Keep #3987's q, D, O, U, width, '-' and trailing '%' handling for
unknown conversions and fold it into this branch's measured path:
'#' and precision are ignored as measured, '+', space, apostrophe
and '0' with a width still throw.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-24 13:33:52 -03:00
JAB-devandClaude Sonnet 5.5 4be45df841 test(libSceAudioOut): stop asserting a repeated AudioOut2 init and record the init gaps
`sceAudioOutInit` now initializes AudioOut2, so the extra `sceAudioOut2Initialize()` in the speaker-info test after a legacy init pinned a repeated direct-init result that no run on the console covered; the test keeps the legacy-init to speaker-info success check. The debt file records that a repeated `sceAudioOutInit` returns 0 here against `0x8026000e` on the firmware and that a repeated `sceAudioOut2Initialize` is unmeasured, describes the flag-1 selector as the unidentified per-process libkernel value with BunnyFl's `0x14FFFFF` boundary, and splits the speaker-info entry so no entry passes the length limit.

Co-Authored-By: Claude Sonnet 5.5 <[email protected]>
2026-10-24 18:32:14 +02:00
akkadbakkad89 c89baddeab docs(libc): repair the facet debt splice and record the locale fallback and wclog
The entry spliced the facet-lifetime sentence into the zeroed-storage claim; restore both, note that the new _Getcat entries ignore the locale name and always build the C facet, and mention std::wclog alongside std::clog.
2026-10-24 22:00:42 +05:30
akkadbakkad89 22957f173e refactor(libc): order codecvt vtable slots like the Dinkumware declaration
alwaysNoconv, maxLength, encoding, in, out, unshift, length matches the MSVC/Dinkumware xlocale declaration order at 0x20-0x50; the generated layout is unchanged because each swapped pair shares one function pointer.
2026-10-24 22:00:40 +05:30
Adrià 66de8e7a12 Merge pull request #9177 from milescoviello/perf/draw-allocations
perf(agc): drop three per-draw allocations on the draw and materialize paths
2026-10-24 18:29:19 +02:00
Adrià 6da7e42704 Merge pull request #9652 from JJenkx/perf/agc-join-from-run-start
perf(agc): join the imports of a buffer bound from the start of adjacent ranges
2026-10-24 18:28:15 +02:00
Adrià 05a83d8ea7 Merge pull request #8756 from milescoviello/perf/draw-snapshot-containing
perf(agc): take a draw snapshot from a kept snapshot that contains it
2026-10-24 18:27:11 +02:00
Bram910 8d8b2496ed fix(tools): use UTF-8 for patch advisor I/O 2026-10-24 18:26:19 +02:00
alnsx e7ff68e558 chore: merge main and preserve polling debt clarifications 2026-10-24 12:24:17 -04:00
alnsx 71a1384845 docs(libkernel): clarify redirected standard-descriptor readiness 2026-10-24 12:21:48 -04:00
orezraeyandClaude Opus 5.5 293bc5dd2b Merge main into fix/libkernel-posix-thread-attr-measured-ps5
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-24 13:20:25 -03:00
Adrià e7e99adcc4 Merge pull request #6010 from zmeizy/claude/add-mul-f32-denormal-modes
fix(shader): translate f32 add and multiply in f32 denormal modes 1 a…
2026-10-24 18:20:07 +02:00
orezraeyandClaude Opus 5.5 d963d44326 Merge main into fix/agc-partial-fast-clear-eliminate
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-24 13:19:15 -03:00
orezraeyandClaude Opus 5.5 8ed4ce86cb docs(libkernel): say which flexible map flags throw here
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-24 13:18:04 -03:00
orezraeyandClaude Opus 5.5 9dd91b6f23 docs(libkernel): record select's word-wide bit clearing and the EBADF case as measured
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-24 13:17:54 -03:00
Adrià d01070d6c3 Merge pull request #5640 from EagleBearerYS/feat/relinker-frame-frameless-leaves
feat(relinker): frame red-zone leaves without a frame pointer by moving their rsp operands
2026-10-24 18:14:53 +02:00
Adrià a0aaf24b68 Merge pull request #8996 from hypermoist/feat/libc-init-once-clr
feat(libSceLibcInternal): add the __std_init_once _clr calls
2026-10-24 18:14:49 +02:00
Bram910 995958eb97 test(tools): cover Unicode ZIP path rewrites 2026-10-24 18:13:45 +02:00
Dean 5c90b0a65e Merge pull request #9228 from savvaniss/feat/log-deferred-imported-modules
feat(relinker): log deferred Windows modules the executable imports from
2026-10-25 05:10:41 +13:00
roboterspinne b15f3eac86 test(relinker): expect the load bounds error for the wrapped GOT slot
The got-slot-address-size-underflow case puts its GOT slot at the
32-bit wrapped address 0xfffff008, outside every PT_LOAD. The unused
filter still keeps the import, which the case keeps checking through
the CFG/GOT filtering line, and the Linux patcher now rejects the
relocation, so the case expects exit 2 with that message instead of an
output file.
2026-10-24 18:09:58 +02:00
Bram910 7151c6c090 docs(relinker): clarify call-site analysis limits 2026-10-24 18:08:46 +02:00
roboterspinne 46f03a9ae1 Merge remote-tracking branch 'upstream/main' into fix/relinker-linux-load-bounds 2026-10-24 18:03:49 +02:00
orezraeyandClaude Opus 5.5 948e969ba0 feat(videoout): blend the overlay plane into frame dumps and screenshots
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-24 13:03:12 -03:00
JAB-dev 032b4ff6da Merge remote-tracking branch 'origin/main' into HEAD 2026-10-24 18:01:59 +02:00
muaus 214792139f test(relinker): start the stub-after-CRT log case from a stale anyps5.log 2026-10-24 21:01:09 +05:00
Adrià dca72a82da Merge pull request #3987 from MarcZX10/codex/carry-windows-format-freebsd-3975
fix(libc): match title printf behavior on Windows
2026-10-24 17:59:27 +02:00
shurhundo 24ee23a959 fix(check-compile): remove trailing blank line in TechnicalDebt.md 2026-10-24 23:59:04 +08:00
orezraeyandClaude Opus 5.5 7844bbb5e1 Merge main into fix/libscepad-open-checks-measured-ps5
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-24 12:58:01 -03:00
Adrià d4adeae208 Merge pull request #8924 from hypermoist/feat/agc-marker-span
feat(agc): push and set debug markers from a text span
2026-10-24 17:55:31 +02:00
roboterspinneandClaude Fable 5.1 76008e99b9 test(tools): compare quoted and resolved paths in the patch advisor test
The patch advisor prints its conversion options through command_line,
which quotes a path containing a space, and passes resolved paths to the
relinker, so the unit test failed when the temporary directory had a
space in its path or was reached through an 8.3 short name or a symlink.
Build the expected text with the same helper, resolve the fixture root
and give it a space so every machine exercises the quoted rendering.

Co-Authored-By: Claude Fable 5.1 <[email protected]>
2026-10-24 17:47:31 +02:00
roboterspinne 9bf8860f87 fix(relinker): drop the COPY width from the Linux load bounds check
RelocationWidth took the width of a COPY relocation from the output
symbol table, where every import has st_size 0, so the width was
always one byte and the two copy-* boundary cases passed for that
reason alone. #10658 rejects R_X86_64_COPY in validation, so the type
no longer reaches this check; until it merges, COPY takes the 8-byte
default like every other type. The three copy-* cases go with it.
2026-10-24 17:44:53 +02:00
Dextroid17 fe4e924a57 fix(agc): keep UTF-8 text intact in trace summaries and traces
TraceFormat::AppendString escaped every byte at or above 0x7f on its
own as \u00XX. A JSON \u escape names a code point, not a byte, so a
UTF-8 title came back as different characters: PPSA26344's param.json
name "Ghost of Yōtei" (ō = C5 8D) was written as \u00c5\u008d and
reads back as "YÅ\x8dtei" in every summary line.

A byte that starts a well-formed UTF-8 sequence (Unicode Table 3-7:
no overlong forms, no surrogates, nothing above U+10FFFF) is now
copied as is, since JSON text is UTF-8. Control characters, DEL and
any byte outside a well-formed sequence are still escaped as before,
so the existing lone-0xe9 case is unchanged.
2026-10-24 11:43:35 -04:00
Yunus Shaikh 49b6188c63 Merge main into fix/libkernel-rwlockattr-settype-types 2026-10-24 08:42:36 -07:00
Adrià 3fcb5e4d76 Merge pull request #9178 from norton62/fix/pad-remote-control-port
fix(libScePad): open the system remote control port as a disconnected device
2026-10-24 17:40:15 +02:00
Emanuele 5315b24f5b build(libkernel): keep the ELF-only module fixture options off Apple
guest_module_fixture passed -Wl,--no-as-needed on every host but
Windows, and Apple's ld64 rejects that option ("ld: unknown options:
--no-as-needed"), so the fixture failed to link on macOS. The option
keeps the DT_NEEDED entries that nid_patcher_dynamic_strings reads, and
that test parses the ELF dynamic section, so neither applies to the
Mach-O fixture: both now stay off Apple as they stay off Windows.
2026-10-24 17:39:39 +02:00
Emanuele 6dfd477eef fix(libc): define PF_R beside PF_X and PF_W for the macOS ELF types
GuestFlexibleMemoryModule.cpp describes its segment with PF_R | PF_W on
macOS, where ElfTypes.hpp stands in for <elf.h>, but ElfTypes.hpp only
had PF_X and PF_W, so the fixture failed to compile on macOS with
"use of undeclared identifier 'PF_R'". PF_R is 4, as in the ELF
specification.
2026-10-24 17:36:35 +02:00
akkadbakkad89andDevin 6687cf12b7 fix(libc): restore the all-char time_put::id export spelling
The export was mistyped as time_put<char, ostreambuf_iterator<wchar_t,
char_traits<char>>>::id, which demangles to a mixed-instantiation name
absent from aerolib. Restore the all-char spelling so the export keeps
its NID BamOsNbUcn4, and pin it: the test now declares the id extern
and round-trips its storage, so a spelling regression fails to link.

Generated with [Devin](https://devin.ai)

Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-10-24 21:01:42 +05:30
muausandClaude Fable 5 eeaf7b03b5 fix(relinker): open the startup log for append so stub writes cannot clobber CRT output
Co-Authored-By: Claude Fable 5 <[email protected]>
2026-10-24 20:30:27 +05:00
Adrià c9b75825f3 Merge pull request #8373 from slider/feat/libkernel-pthread-attr-accessors
feat(libkernel): add missing pthread attribute accessors
2026-10-24 17:29:28 +02:00
Adrià 43768fa237 Merge pull request #8999 from milescoviello/feat/db-depth-copy-draw
feat(agc): draw DB depth copies with a driver pixel program
2026-10-24 17:29:23 +02:00
TechLevelZeroandClaude Opus 5.5 55ac01bc1e test(agc): run v_cvt_f64_f32 apart from the f32 conversions in their denormal test
The conversion test failed before checking anything on a device without
shaderFloat64, as its single shader included v_cvt_f64_f32. That
instruction now runs in a second shader only when the target has the
Float64 capability, so the other f32 conversions are still checked on
such devices.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-24 16:28:03 +01:00
orezraeyandClaude Opus 5.5 a328020e95 Merge main into fix/libkernel-socket-receive-flags-measured-ps5
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-24 12:24:32 -03:00
review ac2591a193 Merge commit 'refs/review/8742/head' into HEAD 2026-10-24 17:23:45 +02:00
TechLevelZeroandClaude Opus 5.5 753767f86a fix(shader): translate f32 conversions in f32 denormal modes 1 and 2
The f32 conversions that only flush their inputs follow bit 0 of the
FLOAT_MODE f32 denormal field, as the f32 compares do: mode 1 keeps
denormal inputs like mode 3 and mode 2 flushes them like mode 0.
v_cvt_pk_u8_f32 also follows a round mode set at run time.

Measured on RDNA2 (gfx1036) with the hardware oracle.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-24 16:23:33 +01:00
Dean b607bfdc8b Merge pull request #8213 from milescoviello/fix/journal-stream-modules
fix(agc): read the pipeline journal's modules at replay instead of holding the file
2026-10-25 04:18:44 +13:00
Dean 2393e2e773 Merge pull request #10320 from orezraey/fix/libkernel-ip-options-measured-ps5
fix(libkernel): keep IP_TTL, IP_TOS and the multicast options as measured on a PS5
2026-10-25 04:18:17 +13:00
Dean ce16645691 Merge pull request #9127 from Retr0G28/fix/equeue-rotate-level-events
fix(libkernel): move events reported by sceKernelWaitEqueue behind the waiting ones
2026-10-25 04:17:49 +13:00