mirror of
https://github.com/FEX-Emu/FEX.git
synced 2026-10-27 01:01:13 +01:00
ea3c4be9ed5759a61ccb28fe60ab27f5ea462b4f
This is the base implementation that uses LORegion loadstore instructions to support the load/store release semantics, which these instructions use. Sadly these don't match the alignment requirements of x86 loadstores, so if it was just used everywhere then it will cause alignment faults. This means we need to catch the sigbus and backpatch the instruction to do safe (aka expensive) TSO. Currently this backpatch just falls back to regular loadstores surrounded by DMB instructions. Basically unaligned loadstores will fall back to nearly what we are doing now, so significantly improved but not perfect. A follow up PR will change this over to using a helper routine to be 100% safe
FEX - Fast x86 emulation frontend
This is the frontend application and tooling used for development and debugging of the FEXCore library.
Dependencies
- SonicUtils
- FEXCore
- cpp-optparse
- imgui
- json-maker
- tiny-json
- boost interprocess (sadly)
- A C++17 compliant compiler (There are assumptions made about using Clang and LTO)
- clang-tidy if you want the code cleaned up
- cmake
Description
GitHub pull mirror of FEX-Emu/FEX. GitHub repository ID: 245352386. Gitea import mode: github-full.
https://github.com/FEX-Emu/FEX
Readme
MIT
60 MiB
0 Stars
1 Watchers
0 Forks
Releases
67
FEX Release FEX-2610
Latest
Languages
C++
56%
Assembly
37.8%
C
3.8%
Python
1.2%
CMake
0.9%
Other
0.2%