mirror of
https://github.com/FEX-Emu/FEX.git
synced 2026-10-12 02:00:37 +02:00
We spent a bit of effort removing 8-bits from this header to get it down to three bytes. This ended up in PRs #2319 and #2320 There was no explicit need to go down to three bytes, the other two arguments we were removing were just better served to be lookups instead of adding IR overhead for each operation. This now introduced alignment issues that was brought up in #2472. Apparently the Android NDK's clang will pad nested structs like this, maybe to match alignment? Regardless we should just make it be 32-bit. This fixes Android execution of FEXCore. This fixes #2472 Pros: - Initialization now turns in to a single str because it's 32-bit - We have 8-bits more space that we can abuse in the IR op now - If we need more than 64-bit and 128-bit are easy bumps in the future Cons: - Each IR operation takes at minimum 25% more space in the intrusive allocators - Not really that big of a deal since we are talking 3 bytes versus 4.