RISC-V and LoongArch64 IR JITs: Name the fixed code routines, and profile on Linux

Both now list their routines (GetFixedCodeLabels), so the disassembly
names jump targets and --jit-profile charges routine samples to the
calling block. The profiler samples them on Linux, and its report
disassembles their host code per instruction (RISC-V's in 2- and 4-byte
steps).

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
This commit is contained in:
Henrik RydgårdandClaude Opus 5.5 committed 2026-10-15 15:17:50 +02:00
1 parent 08b398bbd1
commit d4a2cd3e43
7 files changed
+55 -2

No files matched your search

+1 -1
View File
@@ -266,7 +266,7 @@ goes away or clears its cache, appends a report to FILE:
- the hot fixed-code routines, per instruction.
It costs nothing when off. The native JITs (macOS, Linux and Android by signal, Windows by
`SuspendThread`) sample the host PC; the IR interpreter instead times every block, which used to be the
`SuspendThread`; RISC-V and LoongArch on Linux only) sample the host PC; the IR interpreter instead times every block, which used to be the
`IR_PROFILING` define. Short runs from a savestate include compiling everything after the load, which
shows as emitter and IR pass functions; profile 20 emulated seconds or more to see the game itself.
To compare two builds by where the time goes, profile one game at a time: several at once wait on each