mirror of
https://github.com/FEX-Emu/FEX.git
synced 2026-10-10 08:00:20 +02:00
Arm64 store with writeback when source register is the same register as the address is undefined behaviour. Depending on hardware details this can do a whole bunch of things. This situation happens when the x86 code does `push rsp` which is quite common for applications to do. We would then convert this to a `str x8, [x8, #-8]!` Which results in undefined behaviour. Now that redundant loads are optimized this showed up as an issue. Adds a unit test to ensure we don't hit this again.