mirror of
https://github.com/FEX-Emu/FEX.git
synced 2026-10-15 01:00:53 +02:00
To avoid performance traps, several conditions must hold for exit repacking to apply: * Argument must be a pointer * The pointee type must have differing data layout between guest and host * The pointee type must be non-const Arguments that don't meet the first two conditions are safe *not* to repack on exit, since they're either passed by copy or have consistent data layout. The third condition is a heuristic: In principle, an API function could modify data through nested pointers even if the argument pointer is const. However, automatic repacking is not supported for such types anyway, so this is a safe heuristic to use.