[dynarmic] Refactoring to reduce latency hit from recompilation #358

Open
Lizzie wants to merge 22 commits from liz-dynarmic-latency-improvments into master

22 commits

Author SHA1 Message Date
48396a07e9 [dynarmic] enforce higher constraints
All checks were successful
eden-license / license-header (pull_request) Successful in 24s
Signed-off-by: lizzie <lizzie@eden-emu.dev>
2025-10-04 09:35:45 +02:00
b821744006 Fix license headers
Signed-off-by: lizzie <lizzie@eden-emu.dev>
2025-10-04 09:35:45 +02:00
05a241f29c [dynarmic] increase cache code size
Signed-off-by: lizzie <lizzie@eden-emu.dev>
2025-10-04 09:35:45 +02:00
1086bcf591 [dynarmic] inlined pool in block + slab-like for each block
Signed-off-by: lizzie <lizzie@eden-emu.dev>
2025-10-04 09:35:45 +02:00
d3028c0a6a [dynarmic] fix exception posix handler
Signed-off-by: lizzie <lizzie@eden-emu.dev>
2025-10-04 09:35:45 +02:00
ce3d2541cc [dynarmic] use better boost::visitor
Signed-off-by: lizzie <lizzie@eden-emu.dev>
2025-10-04 09:35:45 +02:00
ddab212739 [dynarmic] regalloc use scratchimpl that uses all instead of iteraiting
Signed-off-by: lizzie <lizzie@eden-emu.dev>
2025-10-04 09:35:45 +02:00
4b2ac7fd67 [dynarmic] unconditional branches always take
Signed-off-by: lizzie <lizzie@eden-emu.dev>
2025-10-04 09:35:45 +02:00
54e30360db [dynarmic] fix hardcoded AVX512 registers, use xmm0 instead of xmm16 to align with spec
Signed-off-by: lizzie <lizzie@eden-emu.dev>
2025-10-04 09:35:45 +02:00
81bea7c0fc [dynarmic] checked code alignment
Signed-off-by: lizzie <lizzie@eden-emu.dev>
2025-10-04 09:35:45 +02:00
73396fadff [dynarmic] remove use of mcl reverse iterator
Signed-off-by: lizzie <lizzie@eden-emu.dev>
2025-10-04 09:35:45 +02:00
623a732ef7 [dynarmic, docs] fastmem docs
Signed-off-by: lizzie <lizzie@eden-emu.dev>
2025-10-04 09:35:45 +02:00
6e81951f9a [dynarmic] use ARCHITECTURE_ macros instead of MCL ones
Signed-off-by: lizzie <lizzie@eden-emu.dev>
2025-10-04 09:35:45 +02:00
74a4d77304 [dynarmic] add back encoding names (for print_info)
Signed-off-by: lizzie <lizzie@eden-emu.dev>
2025-10-04 09:35:45 +02:00
584f28ecf4 [dynarmic] fix ASIMD execution
Signed-off-by: lizzie <lizzie@eden-emu.dev>
2025-10-04 09:35:45 +02:00
43f13cbeda [dynarmic] fix tests
Signed-off-by: lizzie <lizzie@eden-emu.dev>
2025-10-04 09:35:45 +02:00
34c4b22f4e [dynarmic] reduce matcher table noise and cache misses
Signed-off-by: lizzie <lizzie@eden-emu.dev>
2025-10-04 09:35:45 +02:00
1e15fe1e52 [dynarmic] (prolly makes MSVC crash) - use 128MiB code cache
Signed-off-by: lizzie <lizzie@eden-emu.dev>
2025-10-04 09:35:45 +02:00
eac6514908 [docs] fastmem draft
Signed-off-by: lizzie <lizzie@eden-emu.dev>
2025-10-04 09:35:45 +02:00
36c3b34789 [dynarmic] reduce use 2 bits for LRU and 4 bits for clog2 of bit size
Signed-off-by: lizzie <lizzie@eden-emu.dev>
2025-10-04 09:35:45 +02:00
76607f6686 [dynarmic] use small vector experiment
Signed-off-by: lizzie <lizzie@eden-emu.dev>
2025-10-04 09:35:45 +02:00
0efdd0df3d [dynarmic] reduce opt pass latency
Signed-off-by: lizzie <lizzie@eden-emu.dev>
2025-10-04 09:35:45 +02:00