Commit Graph
9 Commits
Author SHA1 Message Date
Dean cdcbd55134 Merge pull request #10787 from 00xDisaster/feat/libc-dinkumware-divide
feat(libc): implement _Divide, _FDivide, _Recip and _FRecip
2026-10-26 00:36:31 +13:00
Disaster 72583a0b20 feat(libc): implement _Divide, _FDivide, _Recip and _FRecip 2026-10-25 04:20:44 +03:00
Disaster 10c2a645a3 feat(libc): implement long-double Dinkumware helpers
Implement _LLog, _LDivide and _LRecip for the PS5 libc surface, with guest coverage for base dispatch, division and reciprocal semantics.
2026-10-25 02:41:03 +03:00
boykopovar f38d29fd08 refactor(sdk): add canonical headers for remaining libraries 2026-10-24 23:17:42 +03: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
hypermist 6a23fe146a Merge remote-tracking branch 'origin/feat/libc-dinkumware-dispatchers' into feat/libc-dinkumware-conversions
# Conflicts:
#	core/libs/prx/libc/src/DinkumwareInternals.cpp
2026-10-21 12:10:40 +13:00
hypermistandClaude Opus 5.5 c5415e0845 fix(libc): rescale _Stod text that overflows before scaling
Co-Authored-By: Claude Opus 5.5 <[email protected]>
Claude-Session: https://claude.ai/code/session_01RbLgECLQ2bpDM7oe2urGZK
2026-10-21 11:58:08 +13:00
hypermistandClaude Opus 5.5 f0bdc8d8d8 feat(libc): implement the Dinkumware _Sto*x conversions
_Stodx, _Stofx and _Stoldx scale the decimal exponent before rounding
and report a range error through their error argument; _Stof and _Stold
wrap them. _Stollx, _Stolx, _Stoulx and _Stoullx report strtoll and
strtoull errors through the same argument, and _Stoll now goes through
_Stollx as the firmware does.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
Claude-Session: https://claude.ai/code/session_01RbLgECLQ2bpDM7oe2urGZK
2026-10-21 00:52:24 +13:00
hypermistandClaude Opus 5.5 e2f37f7289 feat(libc): implement the Dinkumware _Stod, _Stoll, _Sin and _Log helpers
_Stod applies its power-of-ten scale to the decimal exponent before
rounding, _Stoll is strtoll, and _Sin, _FSin, _LSin, _Log and _FLog pick
the public function the firmware dispatches to.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
Claude-Session: https://claude.ai/code/session_01RbLgECLQ2bpDM7oe2urGZK
2026-10-21 00:45:29 +13:00