Skip to content

v2026.06.10-2252

Choose a tag to compare

@ouroboros420 ouroboros420 released this 10 Jun 21:25
· 140 commits to rebase-rpcs3-jun2026 since this release

v2026.06.10-2252 (f8d5550)

The JIT backend switch. After auditing every emulator subsystem against
upstream RPCS3 and fixing everything found, one divergence remained: we were
the only ARM64 RPCS3 variant running LLVM 20 as the recompiler backend -
upstream validates all PPU/SPU code generation against LLVM 19.1.7, and aps3e
(which boots some games we don't) builds exactly 19.1.7 on Android. This
release moves our recompilers onto that same validated backend.

IMPORTANT: one-time recompile (again)

First boot of each game rebuilds its compiled code under the new backend (the
long "Compiling PPU modules" screen). Do not close the app during it. Without
this, games would keep running code produced by the old backend.

Changed

  • PPU/SPU JIT backend: LLVM 20.1.3 -> 19.1.7 (matching upstream RPCS3 and aps3e).
  • Per-game configs now store only the settings you actually change; everything
    else follows your global settings automatically. Recreate older custom
    configs to get this behavior.
  • Game covers show the installed game version (APP_VER) with the new app.

Fixed

  • Enabling "Asynchronous Texture Streaming 2" made games unbootable on Adreno
    GPUs (the async scheduler was used despite being disabled by the driver
    capability check). It now correctly falls back, matching upstream.
  • Kernel SPU-wakeup fixes (lost-event class) ported from upstream.
  • ISO reader: truncated/corrupt ISOs no longer silently hand games zero-filled
    data; large directories no longer parse garbage entries or hang.

Diagnostics

  • SPU stall watchdog: a freeze with audio still running now logs which address
    the SPU engine starved on and whether its content changed. Please attach
    RPCSX.log for any freeze, even without a crash.