Commit Graph
388 Commits
Author SHA1 Message Date
Dean 0ea0f25e1b Merge pull request #8863 from UnhealthyKraken/feat/libc-feholdexcept
feat(libc): implement feholdexcept
2026-10-25 07:37:11 +13:00
Dean 82443ce914 Merge pull request #10223 from orezraey/fix/libc-printf-measured-ps5
fix(libc): format sizes, NaN signs, UTF-16 units, positions and unknown conversions as a PS5 does
2026-10-25 07:34:56 +13:00
Maz 2f94984276 feat(libc): export the collate facet vtable as data
Titles that resolve collate<char>'s vtable as an object need a 72-byte export matching console libc.prx (PPSA16833).
2026-10-24 21:49:15 +04:00
Dean 845e081537 Merge pull request #9038 from akkadbakkad89/feat/libc-facet-getcat
feat(libc): cover the codecvt, numpunct, num_put and time_put facets, their ids and std::clog
2026-10-25 06:39:27 +13:00
Dean ebdfb92528 Merge pull request #8872 from ycbuzi/feat/libc-siginterrupt
feat(libc): implement siginterrupt through the sigaction libkernel registers
2026-10-25 06:39:00 +13:00
Dean c3a9014a64 Merge pull request #8384 from hypermoist/feat/libc-dinkumware-conversions
feat(libc): implement the Dinkumware _Sto*x conversions
2026-10-25 06:35:36 +13:00
hypermistandClaude Opus 5.5 1ba909f580 fix(libc): keep errno for subnormal _Sto*x results
A nonzero subnormal result from _Stodx, _Stofx or _Stoldx sets neither
errno nor the error argument; only underflow to zero and overflow do.
_Stofx used to keep the ERANGE that strtof sets for an inexact
subnormal. Measured by running firmware 13.60's libSceLibcInternal.sprx
in a Linux host process, not on a console.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-25 05:57:13 +13:00
Dean 0d8d3cce9f Merge pull request #8730 from p3n1cillin/codex/libc-srandomdev-20261020
feat(libc): implement srandomdev using host entropy
2026-10-25 05:52:29 +13: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
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
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
Dean 23d89bf767 Merge pull request #10236 from orezraey/fix/libc-heap-error-report-measured-ps5
fix(libc): print sceLibcInternalHeapErrorReportForGame's report as a PS5 does
2026-10-25 04:16:56 +13:00
Dean Galvin cba2f88fc0 Merge main into feat/libc-feholdexcept 2026-10-25 04:13:50 +13:00
Dean 25b744db4a Merge pull request #9232 from UnhealthyKraken/feat/libc-feupdateenv
feat(libc): implement feupdateenv
2026-10-25 03:52:37 +13:00
Dean Galvin cac82f55d1 Merge main into codex/libc-srandomdev-20261020 2026-10-25 03:29:34 +13:00
hypermist 7cd3845f15 Merge remote-tracking branch 'upstream/main' into feat/libc-dinkumware-conversions-m2 2026-10-25 03:28:51 +13:00
akkadbakkad89andDevin 25992206bd docs(libc): trim the facet _Getcat debt entry
Generated with [Devin](https://devin.ai)

Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-10-24 19:15:01 +05:30
akkadbakkad89andDevin 88f209ff93 feat(libc): cover the codecvt, numpunct, num_put and time_put facets, their ids and std::clog
Generated with [Devin](https://devin.ai)

Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-10-24 19:14:58 +05:30
Dean f595326943 Merge pull request #8979 from ionut27001/fix/libc-random-seeding
fix(libc): seed random() and its default state as measured on a PS5
2026-10-25 01:51:00 +13:00
Dean 99feaf0eb8 Merge pull request #9845 from mazen320/feat/libc-num-put-iw-vtable
feat(libc): export the wide num_put facet vtable as data
2026-10-25 01:50:32 +13:00
orezraeyandClaude Opus 5.5 a046aaa50e docs(libc): state the measured heap report values, pid and block precisely
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-24 09:38:38 -03:00
Adrià bfb0806192 Merge pull request #8435 from hypermoist/feat/libc-libatomic-sized
feat(libc): add the sized __atomic library calls
2026-10-24 13:46:18 +02:00
Dean 9018bc438a Merge pull request #10003 from MarcZX10/codex/libc-acoshf-msun
fix(libc): follow msun for acoshf
2026-10-25 00:24:44 +13:00
Dean 3eebf30c2e Merge pull request #9945 from p3n1cillin/claude/windows-missing-standard-handles
fix(libc): open NUL on standard descriptors without a stream on Windows
2026-10-24 23:40:27 +13:00
bluandClaude Opus 5.5 e040d1191b Merge branch 'boykopovar:main' into feat/libc-siginterrupt
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-24 02:49:01 -07:00
Dean 6a3901fb69 Merge pull request #10384 from JJenkx/windows/libc-strcasecmp-sign
fix(libc): return only the sign from strcasecmp and strncasecmp as titles' libc.prx does
2026-10-24 22:12:38 +13:00
Dean e9a551d6f4 Merge pull request #9857 from JJenkx/windows/libc-trigf-msun
fix(libc): compute sinf, cosf, tanf and sincosf with FreeBSD msun's algorithms, as titles' libc.prx does
2026-10-24 22:12:11 +13:00
Dean Galvin 4a6e013eed Merge main into feat/libc-feupdateenv 2026-10-24 21:43:01 +13:00
Dean Galvin 7c52c8728a Merge main into feat/libc-feholdexcept 2026-10-24 21:43:00 +13:00
MarcZX10 a3e41499be fix(libc): match title printf conversions on Windows 2026-10-24 10:22:15 +02:00
Hussein Kadhim 621a487bdf fix(libc): print the FreeBSD printf extensions and stray percent signs on Windows
The Windows printf family threw on the q length modifier, the D, O and U
conversions, an unknown conversion character and a format ending in a percent
sign, where FreeBSD's vfprintf formats the first three and prints the unknown
character itself or stops at the end of the format.

(cherry picked from commit 0e3b2896d228c601cefc992b2895723188ebf0fa)
2026-10-24 10:22:15 +02:00
Dean 91007ff06c Merge pull request #10312 from ntamas94/fix/ps4-libc-strerror
fix(libc): answer strerror as the titles' libc.prx does
2026-10-24 21:09:00 +13:00
Dean 69b5e014e9 Merge pull request #9342 from UnhealthyKraken/feat/libc-gets
feat(libc): implement gets line input
2026-10-24 20:48:06 +13:00
Maz 859ce80e42 feat(libc): export the wide num_put facet vtable as data
Titles resolve NID 59oywaaZbJk as a 112-byte STT_OBJECT on PPSA16833 libc.prx; export fourteen zeroed slots and the matching id so the data object exists while facet methods stay unwired.
2026-10-24 11:37:58 +04:00
Dean 1e577d1c56 Merge pull request #10180 from mazen320/feat/libc-codecvt-iw-vtable
feat(libc): export the wide codecvt facet vtable as data
2026-10-24 20:21:52 +13:00
Dean Galvin c3a9a613c7 Merge main into codex/libc-acoshf-msun 2026-10-24 20:00:35 +13:00
Dean 1e20650e84 Merge pull request #10306 from JJenkx/windows/libc-expm1-msun
fix(libc): compute expm1 with FreeBSD msun's algorithm, as titles' libc.prx does
2026-10-24 19:55:25 +13:00
Dean 98a7d60a02 Merge pull request #8306 from ZSWolt/feat/libc-swscanf-wide-synonyms
fix(libc): end swscanf at %S and %C as a matching failure
2026-10-24 19:54:56 +13:00
Adrià b0f57be3c7 Merge pull request #6086 from notaxeltv/feat/libc-thread-hardware-concurrency-ppsa34015
feat(libc): export std::thread::hardware_concurrency (PPSA34015)
2026-10-24 08:18:54 +02:00
Dean 09f62b94c9 Merge pull request #9216 from Felipebmaitan/feat/libc-fegetexcept
feat(libc): implement fegetexcept
2026-10-24 18:23:35 +13:00
JJenkxandClaude Opus 5.5 99abd2604d fix(libc): compute expm1 with FreeBSD msun's algorithm, as titles' libc.prx does
expm1 returned the host's expm1, whose last bit differs from the titles'
copy on Windows on 35,152,346 of 320 million random arguments. The titles'
copy is FreeBSD msun's s_expm1.c, and it sets ERANGE only when a finite
argument overflows to infinity. expm1 now computes that algorithm and sets
ERANGE there.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-24 00:43:08 -04:00
Dean Galvin 2f5366ea80 Merge main into feat/libc-swscanf-wide-synonyms 2026-10-24 17:17:02 +13:00
Dean Galvin 18b13fbe64 Merge main into 9945 2026-10-24 15:49:35 +13:00
Dean Galvin 5ec0cdec84 Merge main into 9342 2026-10-24 15:49:35 +13:00
Dean d7f0c005a9 Merge pull request #9862 from JJenkx/windows/libc-cbrtf-msun
fix(libc): compute cbrtf with FreeBSD msun's algorithm, as titles' libc.prx does
2026-10-24 15:23:06 +13:00
Dean 5669dff560 Merge pull request #9596 from JJenkx/windows/fgetws-console-contract
fix(libc): follow the console fgetws for short buffers and read errors
2026-10-24 15:22:31 +13:00
Dean d1d67190a8 Merge pull request #8720 from orezraey/fix/libc-heap-measured-ps5
fix(libc): follow the default heap's alignment, errno and realloc to zero as measured on a PS5
2026-10-24 14:34:38 +13:00
Adrià FranchandClaude Sonnet 5.5 b443b9f9f0 fix(libc): compare only with std::thread::hardware_concurrency, record host count in debt
Co-Authored-By: Claude Sonnet 5.5 <[email protected]>
2026-10-24 03:31:05 +02:00
Dean 72641c92f6 Merge pull request #9841 from JJenkx/windows/libc-logf-msun
fix(libc): compute logf with FreeBSD msun's algorithm, as titles' libc.prx does
2026-10-24 14:19:40 +13:00
Dean d284c98b2e Merge pull request #10001 from MarcZX10/codex/libc-coshf-msun
fix(libc): follow msun for coshf
2026-10-24 12:52:24 +13:00