mirror of
https://github.com/FEX-Emu/FEX.git
synced 2025-02-06 22:47:06 +00:00
Scott Mansell
c4dda4a3f3
arm64: Fix blocks with over 256 spill slots.
With multiblock and -n4000, at least one block in geekbench5's camera benchmark was spilling 324 values. This meant the required stack adjustment was 5184 bytes, which is larger than can fit into a 12bit immediate. Now, it's probally a bug that our RA is spilling that many values, and we probally should be packing our spill slots closer together, but we still shouldn't fail to run in this edge case. So this commit adds a fallback path which uses a temp register to load the stack adjustment.
FEX - Fast x86 emulation frontend
This is the frontend application and tooling used for development and debugging of the FEXCore library.
Dependencies
- FEXCore
- cpp-optparse
- imgui
- json-maker
- tiny-json
- A C++17 compliant compiler (There are assumptions made about using Clang and LTO)
- clang-tidy if you want the code cleaned up
- cmake
Languages
C++
59.4%
Assembly
30.7%
C
7.1%
Python
1.5%
CMake
1%
Other
0.3%