milescoviello and Claude Opus 5.5
8868e09624
fix(shader): bound the bytes the recompiler's result memos hold
...
Every shader source keeps up to 256 materialized results of
Recompile(request, capture) in its result memo, and as many patch
recipes in its masked memo, with no limit on their bytes. In Ghost of
Tsushima's opening the memos held about 500 MiB after 5 minutes and
kept growing, at a 13 % hit rate.
Each memo entry now counts the bytes its result's vectors keep (the
bindings' vectors included; the module is shared with the prepared
module cache), plus its patch recipe in the masked memo. A result held
by both tables counts once in each. Past a budget, 256 MiB unless
APS5_RESULT_MEMO_MB sets another (0 sets none), the least recently used
entries of both tables of all sources are dropped until three quarters
of the budget is left. The recency stamps come from one clock for all
sources and both tables so they compare across them. The profile line
also reports the trimmed and held entries and their MiB.
The trim takes its lock blocking and repeats, re-reading the bytes held,
until they are within the budget, so the insertion that pushed them
over has its trim run after any other; it stops when nothing is left to
drop.
SetResultMemoBudget and ResultMemoBytes let agc_shader_result_memo_budget
check that a memo over its budget keeps the most recently used results
and drops the oldest one, with the masked memo off. A one-shot hook
inside the trim (SetResultMemoTrimHook) lets
agc_shader_result_memo_budget_threads insert two results from other
threads after the trim has read the bytes held: the memo must still end
within its budget. agc_shader_result_memo_budget_masked, with the masked
memo on, checks that a first result counts its masked entry too and that
a trim empties the masked memo.
Co-Authored-By: Claude Opus 5.5 <[email protected] >
2026-10-26 05:04:18 +00:00
Dean
a401865a1a
Merge pull request #9269 from UnhealthyKraken/test/libc-crt-exit-lifecycle
...
test(libc): cover CRT exit and TLS cleanup lifecycle
2026-10-26 17:38:22 +13:00
Dean
e5759e7ee6
Merge pull request #10524 from YossiYad/feat/kernel-sys-console-identity
...
feat(libkernel_sys): implement sceKernelIsCEX, sceKernelIsDevKit, get_authinfo and sceKernelGetOpenPsIdForSystem
2026-10-26 17:37:52 +13:00
Dean
3e235180d8
Merge pull request #9922 from UnhealthyKraken/feat/freetype-outline-borders
...
feat(freetype): implement system outline border queries
2026-10-26 17:37:23 +13:00
Dean
034b60a2d4
Merge pull request #10239 from voidlakhan/fix/npgameintent-invalid-argument-error
...
fix(libSceNpGameIntent): return errors for invalid arguments and uninitialized calls
2026-10-26 16:23:39 +13:00
Dean
0ce4b82c2d
Merge pull request #10243 from orezraey/fix/libkernel-rtld-thread-atexit-measured-ps5
...
fix(libkernel): answer the thread atexit references as measured on a PS5
2026-10-26 16:23:13 +13:00
Dean
14eb2cda22
Merge pull request #10640 from rocklouis055/feat/nputility-lookup-async
...
feat(libSceNpUtility): implement lookup async requests, waits and timeouts
2026-10-26 15:43:03 +13:00
Dean
9f386f3a29
Merge pull request #9157 from shanu337/videoout-color-space-wrappers
...
refactor(libSceVideoOut): consolidate color space wrappers and add Flip tests
2026-10-26 15:32:59 +13:00
Dean
3326a27071
Merge pull request #10523 from YossiYad/feat/np-tus-sync-wrappers
...
feat(libSceNpTus): implement the nine blocking data and variable calls
2026-10-26 14:48:15 +13:00
Dean
a3987a1eca
Merge pull request #10718 from rooklz/fix/cescs-strict-jis0208
...
fix(libSceCesCs): map the strict JIS X 0208 profiles' unsettled cells as the console does
2026-10-26 14:40:45 +13:00
Dean
732ab06f41
Merge pull request #10354 from JJenkx/windows/libc-nextafter-msun
...
fix(libc): compute nextafter and nextafterf with FreeBSD msun's algorithm, as titles' libc.prx does
2026-10-26 14:30:57 +13:00
Dean
d31f372e33
Merge pull request #10062 from imellag/fix/agc-moltenvk-destroy-at-idle
...
fix(agc): destroy buffers and memory on MoltenVK only while the graphics queue is idle
2026-10-26 14:28:45 +13:00
Dean
517a7b12b8
Merge pull request #10525 from YossiYad/feat/np-party-plain-queries
...
feat(libSceNpParty): implement sceNpPartyGetMembers, sceNpPartyGetMemberInfo and sceNpPartyRegisterHandler
2026-10-26 14:27:45 +13:00
Dean
853ffe0f69
Merge pull request #10794 from slopgobblercobbler/feat/kernel-sys-sce-pthread-main
...
feat(libkernel_sys): implement scePthreadMain through pthread_main_np
2026-10-26 14:27:16 +13:00
Adrià
3b252b44fe
Merge pull request #9561 from DavidSamir/feat/libkernel-fcntl-osync
...
feat(libkernel): sync each write on a file whose O_FSYNC flag is set
2026-10-26 02:26:06 +01:00
Dean
1c9064435d
Merge pull request #10451 from Danigamer05/fix/pngdec-16bit-input
...
fix(pngdec): honor the 16-bit input attribute
2026-10-26 14:16:21 +13:00
Dean
0f34ebb853
Merge pull request #10446 from Danigamer05/fix/keyboard-key2char-contract
...
fix(keyboard): preserve raw keys and ignore the Kana LED
2026-10-26 14:12:38 +13:00
Dean
5b85225ef3
Merge pull request #9797 from Terminev/feat/npwebapi-offline-requests
...
feat(libSceNpWebApi): add user contexts, requests and push event callbacks offline
2026-10-26 13:34:33 +13:00
Adrià
97d33464c5
Merge pull request #9527 from AlxcBTW/pr/libc-annex-k-stream-io
...
feat(libc): add the Annex K stream printf, scanf and freopen_s functions
2026-10-26 01:21:26 +01:00
Adrià
898a7fef4f
Merge pull request #9631 from UnhealthyKraken/feat/libc-fetch-seqcst
...
feat(libc): implement sequential bitwise fetch helpers
2026-10-26 01:11:55 +01:00
Rookie
a8c6b562d6
fix(libSceCesCs): map the strict JIS X 0208 profiles' unsettled cells as the console does
2026-10-26 00:10:31 +00:00
Kraken
54dadc019e
fix(freetype): retain newly identified Ot inventory aliases
2026-10-25 23:43:52 +00:00
Kraken
a36fd27f64
fix(freetype): reconcile provider NIDs and public declarations
2026-10-25 23:43:17 +00:00
Kraken
f6190694de
Merge remote-tracking branch 'origin/main' into HEAD
2026-10-25 23:41:43 +00:00
Kraken
8df45c965d
Merge remote-tracking branch 'origin/main' into HEAD
...
# Conflicts:
# core/libs/tests/GuestLibcThreads.cpp
2026-10-25 23:41:36 +00:00
Adrià
acb900c194
Merge pull request #9737 from imellag/feat/agc-depth-bounds-emulation
...
feat(agc): emulate a one-sided depth bounds test without the depthBounds feature
2026-10-26 00:35:49 +01:00
Adrià
47f9cee2cd
Merge pull request #9579 from slopgobblercobbler/fix/savedata-delete-search-mount3-param-error
...
fix(savedata): validate null arguments in delete, search, and mount3
2026-10-26 00:27:15 +01:00
Adrià
710cf9c035
Merge pull request #9668 from rooklz/fix/libc-acosf-msun
...
fix(libc): compute acosf with FreeBSD msun's algorithm, as the console's libc.prx does
2026-10-26 00:14:55 +01:00
Dean
2a16d79fb9
Merge pull request #10722 from rooklz/fix/cescs-error-length
...
fix(libSceCesCs): report the length of a rejected MBCS character as the console does
2026-10-26 12:10:41 +13:00
Dean
346a1be323
Merge pull request #10127 from Felipebmaitan/feat/ngs2-pcm-playback
...
feat(ngs2): play additional PCM sampler formats
2026-10-26 12:10:04 +13:00
Dean
380ffe3a3a
Merge pull request #10456 from alnsx/codex/fix-select-redirected-input
...
fix(libkernel): poll files on standard descriptors as vnodes
2026-10-26 12:09:32 +13:00
Adrià
b76f08cf33
Merge pull request #9727 from KernelPanicNT/fix/net-reject-unsupported-flags
...
fix(libSceNet): reject the flags and names the module rejects
2026-10-26 00:07:35 +01:00
Adrià
49d1f9b07e
Merge pull request #9726 from KernelPanicNT/fix/npmanager-state-callback-id-error
...
fix(libSceNpManager): return the module error for an out-of-range state callback id
2026-10-25 23:49:10 +01:00
Adrià
e82b11daaf
Merge pull request #9550 from Ondra97/codex/feat-freetype-size-objects
...
feat(libSceFreeType): manage multiple size objects
2026-10-25 23:49:05 +01:00
Adrià
34b882ff19
Merge pull request #9722 from hypermoist/feat/font-graphics-fill-descriptors
...
feat(libSceFont): build the graphics region and fill descriptors as the console does
2026-10-25 23:49:00 +01:00
Dean
b90d009d9f
Merge pull request #10665 from JJenkx/fix/libc-acoshf-positive-rounding-20261024
...
fix(libc): match acoshf positive-range evaluation
2026-10-26 11:14:24 +13:00
Dean
701616674a
Merge pull request #10708 from Michael-KD/test/sdwa-cvt-f32-ubyte-measured
...
test(shader): pin SDWA v_cvt_f32_ubyte source selects measured on RDNA2
2026-10-26 11:10:38 +13:00
Dean
3c2453eb8e
Merge pull request #10808 from ElysiaAlarien/docs/libscemsgdialog-debt
...
docs(libSceMsgDialog): record the silent stub and parameter layout as debt
2026-10-26 11:09:35 +13:00
Dean
905c3e2870
Merge pull request #10647 from Bram910/fix/call-site-hint-prefixes
...
fix(relinker): resolve BND and NOTRACK call sites
2026-10-26 11:09:02 +13:00
Dean
fd450a5b9b
Merge pull request #8997 from HQasper/claude/project-thread-wjykmu
...
fix(libSceFont): select the Hangul Light system font
2026-10-26 11:08:35 +13:00
Danigamer05
4d845fb4e1
docs(keyboard): retain title character-use evidence
2026-10-25 23:08:02 +01:00
Dean
8592a95176
Merge pull request #10702 from MarcZX10/marc/signatures-libscevoice
...
feat(libSceVoice): declare sceVoiceVADAdjustment with its shadPS4 signature
2026-10-26 11:06:11 +13:00
Dean
6cc5ec671d
Merge pull request #10394 from JJenkx/windows/libc-drand48-upper-bits
...
fix(libc): return the upper 32 bits of the state from drand48 and erand48 as titles' libc.prx does
2026-10-26 11:05:43 +13:00
Danigamer05
288c5290ab
Merge remote-tracking branch 'origin/main' into fix/pngdec-16bit-input
2026-10-25 23:05:08 +01:00
Dean
0161550de3
Merge pull request #8621 from JJenkx/fix/playgo-scenario-unlisted
...
fix(libScePlayGo): answer ids past the listed scenario chunks as unlisted
2026-10-26 11:05:05 +13:00
Adrià
d19a809639
Merge pull request #9682 from Gruzzberry/feat/settimeofday
...
feat(libkernel_sys): implement settimeofday
2026-10-25 23:04:11 +01:00
Dean
f2a89261e3
Merge pull request #10526 from YossiYad/feat/share-play-connection-info
...
feat(libSceSharePlay): implement sceSharePlayGetCurrentConnectionInfo
2026-10-26 11:03:32 +13:00
Dean
1240c09878
Merge pull request #9148 from MarrasFederico/feat/ngs2-parse-pcm-depths
...
feat(libSceNgs2.native): parse 8-, 24- and 32-bit PCM and float waveforms
2026-10-26 11:01:52 +13:00
Dean
88f99678bf
Merge pull request #10648 from edubox/feat/libc-pad-launch-attr
...
feat(libc): forward pthread attributes in _Pad::_Launch
2026-10-26 10:42:58 +13:00
Adrià
9c6d153dec
Merge pull request #10419 from iamthehimansh/split/macos-build
...
build: compile FileStream, error categories, thread priority and two tests on macOS
2026-10-25 22:35:29 +01:00