mirror of
https://github.com/mihawk-99/PS5_RetroArch.git
synced 2026-10-18 23:09:29 -05:00
RetroArch reads a save state whole, and loading Resident Evil 4's 260 MB entry state while Dolphin booted left the JIT 45 MB of the 56 MB of flexible memory it maps; the core then wrote its code through a null pointer. Large frontend allocations now take direct memory first and anonymous (flexible) mappings only when it refuses, which keeps flexible memory for executable code and thread stacks. The Dolphin allocator reports the flexible memory free when an executable mapping fails. tooling/dolphin-profiles holds the acceptance profiles as core-option files. PHASE_LOG records Profile 0 on the three games. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Native host tooling
All repository-owned format tooling is C or C++. Make/Bash and PowerShell are thin platform-specific orchestrators. No C# or .NET runtime is required.
The root build performs four native stages:
prospero-clang18compiles application sources andnative/app_crt.cpp.- LLVM lld resolves objects, static archives, public SDK import stubs, constructors, TLS, and unwind information into an intermediate PIE.
native/ps5-native-toolconverts that PIE to the PS5 ELF layout and wraps it in a deterministic development FSELF.- The requested folder or optional filesystem image is assembled.
native/libc_builder.cpp independently reproduces the generated clean-room
runtime from the two manifests under native/runtime/. Run make libc on
Linux/WSL or ../tools/rebuild-libc.ps1 on Windows to prove both hashes.
make deps fetches the pinned public payload SDK and static zlib archive into
.deps/native/; neither is installed globally. The shell and PowerShell
bootstrappers share the same cache layout.
See ../docs/NATIVE_TOOLING.md for the format
boundary and low-level commands.