mirror of
https://github.com/FEX-Emu/FEX.git
synced 2026-10-06 19:00:17 +02:00
The dispatcher was saving AVX state even though FEX doesn't support it currently. This is due to it checking for the config option rather than the HostFeatures option. The `EnableAVX` config option is supposed to be used to inform FEXCore if we want AVX disabled or not when the host supports the feature. In this case it is universally enabled because we haven't encountered any games that have issues with AVX state being saved with signals. (We know they exist, we just don't have configurations for them). The HostFeatures option `SupportsAVX` is the option that is supposed to be getting used for determining if the runtime AVX feature is enabled. This also had an issue though that this was **also** always enabled if running on an x86 host with AVX, or an ARM host with SVE2-256bit. It was then disabled if the config option was disabled; But, since FEX-Emu doesn't support AVX fully yet, we need to ensure this isn't yet enabled. But this only solves half the problem. In order for our CI to test AVX features before fully supporting AVX, it needs to be able to enable AVX so that the CPU state is correctly saved. So we need to change the default configuration option to be false, and have CI enable it for the tests that matter before AVX is fully implemented.