Commit Graph
20967 Commits
Author SHA1 Message Date
Himansh Raj 7a903e0da8 Merge remote-tracking branch 'origin/main' into split/macos-build 2026-10-25 14:00:23 +05:30
Adrià 6d88c2d6b0 Merge pull request #9602 from thuanquang/fix/frame-dump-line-async
perf(agc): write the frame-dump log line through the asynchronous profile output
2026-10-25 09:29:56 +01:00
Adrià 1240b5da19 Merge pull request #9597 from milescoviello/fix/mipmapped-dcc-target-keys
fix(agc): keep a mipmapped DCC color target's keys on its resident image
2026-10-25 09:29:51 +01:00
Adrià fc41709ff3 Merge pull request #9564 from EagleBearerYS/port/fable-fix-template-bindings
fix(agc): find a template's data bindings by binding number
2026-10-25 09:29:46 +01:00
Adrià 119ae446ca Merge pull request #9555 from xXPBSXx/fix/fcntl-dupfd-limit-einval
fix(libkernel): fail fcntl F_DUPFD with EINVAL when the minimum descriptor is beyond the open file limit on Windows
2026-10-25 09:29:42 +01:00
louise-patraandClaude Opus 5.5 855e4ea6a0 test(libSceNpUtility): keep the export ABI in the wait callback
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-25 13:57:19 +05:30
hakarrr 73681f165a fix(tools): separate revisions from working-tree paths in check_main_sync 2026-10-25 13:51:07 +05:30
Himansh Raj e8fb1a166d Merge remote-tracking branch 'origin/main' into split/macos-build 2026-10-25 13:50:22 +05:30
Adrià 2816bd2754 Merge pull request #9600 from shahulmubeen-a/fix/agc-register-list-any-byte
fix(libSceAgc): accept register lists at any byte address
2026-10-25 09:16:21 +01:00
Adrià 15aa041ebb Merge pull request #9560 from Ondra97/codex/feat-freetype-outline-decompose
feat(libSceFreeType): decompose guest outlines
2026-10-25 09:15:18 +01:00
Filip Michalski 50b32c145c chore(shader): update scalar bounds branch to current main 2026-10-25 09:13:02 +01:00
Filip Michalski 5d0cddb50e chore(shader): update log2 branch to current main 2026-10-25 09:13:01 +01:00
Dean Galvin a20f1b67be Merge main into pr/10284
Take main's header declarations over the local extern block; use the implementation's error value in the test.
2026-10-25 21:06:47 +13:00
Dean Galvin 5d86ed499d Merge main into pr/10281
Take main's header declarations over the local extern block; use the implementation's error value in the test.
2026-10-25 21:06:47 +13:00
Dean Galvin 364838699d Merge main into pr/10298
Take main's header declarations over the local extern block; use the implementation's error value in the test.
2026-10-25 21:06:47 +13:00
Dean Galvin 200c0aef2b test(videoout): check the null resolution status buffer through the throwing helper 2026-10-25 21:06:21 +13:00
Dean Galvin 8d1059abde test(savedata): assert the runtime_error thrown for null convert inputs 2026-10-25 21:06:20 +13:00
Dean Galvin c315203fad test(savedata): assert the runtime_error thrown for null delete inputs 2026-10-25 21:06:20 +13:00
louise-patraandClaude Opus 5.5 ed2d79d962 test(libSceNpUtility): fail a wait that returns before its request finishes
The waiter sets a flag right before the wait; the test waits for it,
then requires the wait not to have returned before it finishes, aborts
or deletes the request.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-25 13:28:28 +05:30
louise-patraandClaude Opus 5.5 1cb7e2e3e0 feat(libSceNpUtility): implement lookup async requests, waits and timeouts
Adds sceNpLookupAbortRequest, sceNpLookupCreateAsyncRequest,
sceNpLookupPollAsync, sceNpLookupWaitAsync, sceNpLookupSetTimeout,
sceNpWordFilterSetTimeout and sceNpWordFilterWaitAsync on the offline
request model. Waits block on a condition variable that request
completion, abort and deletion signal.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-25 13:28:28 +05:30
MarcZX10 8a173193c1 fix(tools): validate falsey and nonnumeric trace fields 2026-10-25 07:56:28 +00:00
MarcZX10 1e351c81e0 test(tools): cover malformed trace event fields in trace_digest 2026-10-25 07:56:28 +00:00
MarcZX10 a9ab9a781e fix(tools): reject malformed trace events in trace_digest 2026-10-25 07:56:28 +00:00
MarcZX10 2562a7d9d1 test(libc): cover printf_s on a closed standard output 2026-10-25 07:56:20 +00:00
MarcZX10 1c3ad7ebfd fix(libc): fail printf_s on a closed standard output with EBADF
printf, libc_printf, puts and vprintf return -1 with errno 9 once a failed
freopen closed stdout. printf_s wrote to the closed host stream and threw.
2026-10-25 07:56:20 +00:00
MarcZX10 df44b2aa59 test(libc): cover perror on a closed standard error 2026-10-25 07:56:12 +00:00
MarcZX10 776abcae72 fix(libc): let perror skip a closed standard error
perror wrote through the host stderr stream that a failed freopen closed and
threw out of the export. It now returns without output and leaves errno as it
was, as printf and puts fail a closed stream instead of throwing.
2026-10-25 07:56:12 +00:00
Yunus Shaikh 18b4543ac2 docs(libkernel): note __Ux86_64_setcontext has no known prototype 2026-10-25 07:56:02 +00:00
Jota 2fd07f181d fix(agc): keep tessellation pipelines off pipeline libraries without the pipeline cache 2026-10-25 08:55:44 +01:00
Jota 5daac82d32 fix(agc): create tessellation pipelines without the pipeline cache on MoltenVK
MoltenVK runs the tessellation evaluation stage as a post-tessellation
vertex function that reads the control stage's per-vertex outputs from a
raw buffer, and pads the evaluation input struct to every output of the
control shader it is linked with. The shader library cache of a
VkPipelineCache matches a cached conversion when the new pipeline has the
inputs that conversion used, so an evaluation shader converted next to a
hull with one 16-byte output is reused next to the merged hull, whose LDS
record adds a second per-vertex output. The domain stage then reads the
merged hull's control points at a 16-byte stride over a 48-byte buffer and
the patch lands elsewhere. Created without the pipeline cache, each
tessellation pipeline converts its stages for its own interface.
2026-10-25 08:55:34 +01:00
MarcZX10 1e5459443d test(libc): require a separate ctime buffer per thread for an unrepresentable time
Two live threads and the caller each call ctime on a time localtime rejects and must receive three distinct buffers. The case fails on current main because they share one static buffer.
2026-10-25 07:55:30 +00:00
MarcZX10 0242f05666 fix(libc): give ctime's unrepresentable-time text a buffer per thread
ctime returns a thread-local buffer for every time it formats, but the text for a time localtime cannot represent was written to a function-local static shared by all threads. Two threads calling ctime on such a time raced on it: ThreadSanitizer reports a data race at Time.cpp:608, and the returned pointers were the same. The fallback buffer is now thread-local like the others.
2026-10-25 07:55:30 +00:00
MarcZX10 c5798f8e7a test(libc): report a heap error with the standard output closed
After the formatted report, the guest standard output is closed and the report is requested again; it must return without throwing. The case fails on current main with the closed-stream exception.
2026-10-25 07:55:22 +00:00
MarcZX10 6f78759a6e fix(libc): let sceLibcInternalHeapErrorReportForGame skip a closed standard output
The heap error report threw FileStream: closed stream out of the export when the guest had closed its standard output, so a heap-error diagnostic aborted through the exception instead of reporting. The standard output part is now skipped when the stream is closed; the host diagnostic on the host stderr is still written.
2026-10-25 07:55:22 +00:00
Himansh Raj c90796571e Merge remote-tracking branch 'origin/main' into split/macos-build 2026-10-25 13:20:30 +05:30
Yunus Shaikh 748f2b3bdd feat(libSceHttp): report the ids sceHttpInit registered for a context
sceHttpGetRegisteredCtxIds writes the libnet memory pool id and the SSL
context id the context was created with, in the order of its recovered
prototype. With no live context it returns BEFORE_INIT and for an
unknown or terminated id INVALID_ID, as sceHttpGetMemoryPoolStats does;
a null output throws.
2026-10-25 07:47:43 +00:00
Yunus Shaikh 45d987a187 feat(libSceNpUtility): answer sceNpBandwidthTestInitStart and ShutdownWithDetailedInfo offline
InitStart returns SIGNED_OUT, as sceNpBandwidthTestInitStartDownload and
InitStartUpload do, so no test is ever started, and
ShutdownWithDetailedInfo returns INVALID_ARGUMENT and writes nothing, as
sceNpBandwidthTestShutdown does. Neither reads an argument.
2026-10-25 07:47:43 +00:00
Emanuele b2c32d8d5d test(libkernel): build the __tls_get_addr test only on Linux and Windows
GuestTlsGetAddr.cpp finds the host's TLS module through dl_iterate_phdr
from <link.h>, which macOS lacks, so the test does not compile there, and
__tls_get_addr itself throws on macOS until a library defines the guest
TLS runtime the macOS relinker binds to, as the libkernel debt entry for
__tls_get_addr records. The test is now registered only on Linux and
Windows.
2026-10-25 08:46:18 +01:00
Yunus Shaikh 2cbcc0e2e6 docs(libSceAgcDriver): list the Export.cpp declarations without a prototype 2026-10-25 07:44:54 +00:00
Yunus Shaikh 3e639b6f77 docs(libSceBemp2sys): drop the repeated pending-exports entry 2026-10-25 07:44:02 +00:00
Yunus Shaikh 6968c3ac02 docs(libSceAvPlayerStreaming): drop the repeated pending-exports entry 2026-10-25 07:44:02 +00:00
Yunus Shaikh 81cecf5eb4 docs(libSceHttp): describe the stored cookie-enabled option 2026-10-25 07:44:02 +00:00
Dean 2742004ed2 Merge pull request #10766 from MarcZX10/marc/fix-wide-closed-stream
fix(libc): fail the wide calls on a closed stream with EBADF
2026-10-25 20:41:53 +13:00
Dean b25020248f Merge pull request #10759 from MarcZX10/marc/fix-unwrap-self-unplaceable-segment
fix(tools): refuse unwrap_self segments placed before the file start
2026-10-25 20:41:49 +13:00
Dean 757ed5a7b4 Merge pull request #10812 from MarcZX10/marc/fix-asctime-s-year-overflow
fix(libc): add the year in asctime_s without signed overflow
2026-10-25 20:41:46 +13:00
hypermist 83043eede6 test(libSceVrTracker2): stop asserting that system modes throw
Remove the system-mode throw cases in GuestVrTracker2.cpp that tested
modes 1000 and 1001 throwing. Allocate a fresh temporary directory
atomically in EnterApplicationRoot without clobbering existing paths.
Update the debt entry without citing a source.

Assisted-by: Antigravity:gemini-3.8-flash-medium
2026-10-25 20:40:44 +13:00
Adrià 811ffe10af Merge pull request #9514 from EagleBearerYS/fix/agc-address-copy-evict-main
fix(agc): an address-based build evicts idle imports instead of copying past the cap
2026-10-25 08:40:37 +01:00
Yunus Shaikh b19382a492 feat(libSceNetCtl): answer the IpcInt calls as their public twins and add the ForLib callback table
The ten IpcInt getters and callback forms forward to sceNetCtlGetState,
GetStateV6, GetResult, GetResultV6, GetInfo, GetInfoV6 and the IPv4 and
IPv6 callback registration, whose recovered argument registers they
share. The three ForLib calls keep a fourth table of eight callbacks with
the register, unregister and dispatch the NpToolkit forms use. Both are
recorded as unmeasured in the debt file.
2026-10-25 07:39:35 +00:00
Himansh Raj 23fccc00bd Merge remote-tracking branch 'origin/main' into split/macos-build 2026-10-25 13:00:22 +05:30
krishalivaibhavandClaude Opus 5.5 38a570af49 test(macos): keep the pseudo-denormal out of compile-time folding
Clang folds the constant built by Extended into a normal long double, so
guest_math_exact never fed a pseudo-denormal to __fpclassifyl on macOS.
Keeping the helper out of line makes the value cross the call at run time.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-25 12:58:20 +05:30