Releases
FEX-2112
Arm64
Reduce the chance of hanging on reentrant allocations (8ab6830 )
Adds an inline syscall optimization (f746870 )
COND_FGT should map to gt, not hi, as it is not FGTU (b45603d )
Fixes steamwebhelper burning all CPU cores!
FEXCore
Fixes CompileService race condition on thread creation (5345f7f )
Centralize alignment utility functions in one header (966272c )
Fixes ERROR_AND_DIE (fbd14b6 )
Supports guest SIGILL (6e1ea92 )
CPUID
Call handler functions directly (ffee22d )
OpcodeDispatcher
Remove debug message (d883b4b )
Implement BZHI (50c8d9e )
Amend return types of BitSize helpers (c63c5fb )
Implement MULX (498a845 )
Resolve sign mismatches in loops (ad864e0 )
Add helper for getting bit sizes (3a3cbf2 )
Handle RORX (51d21d8 )
Implement BMI2 SARX/SHLX/SHRX (e37a0bb )
Removes usage of SignalFrame stack on JITs (d81d5e2 )
Use std::vector as the underlying container for std::stack (61ccec3 )
Partial support for RIP adjust in signal handler (77093a7 )
Resolve unused variable warnings (a04cc4d )
OpcodeDecoder
Shorten up GPR and MM base offset retrieval (59ed91c )
Convert enums into enum classes where applicable (d1fa8bc )
Add support for ADX (d3cd354 )
Frontend
Handle VEX RXB bits (d47182b )
Mark modrm function LUT as static (c6662a4 )
GDBStub
Fixes a few hangs and crashes (e027b83 )
Interpreter
Build op handler table at compile-time (63f9e0b )
Mark F80CMP array as static constexpr (13ad5b6 )
JIT
Eliminate redundant jump target map lookups (8ef0278 )
Ensures signals in compileservice JIT space is handled (97e3a36 )
JitSymbols
IR
Make some interface functions accept pointers to const (8c38f93 )
Convert NodeID into a strong type (b93871f )
Add type alias for Node IDs (1f306d6 )
RegisterAllocationPass
Resolve sign comparison mismatch in CalculateNodeInterference() (597e4e1 )
Reduce usages of NodeIDs where applicable (19a0651 )
Linux
Updates syscalls to 5.16 syscalls (c4d05fb )
Fixes sched_getaffinity (d5bf641 )
Fixes MAP_32BIT error case (92ae6ae )
Fixes sigprocmask with new and old set being the same address (7bb7891 )
Passthrough 32-bit syscalls that can be (3dc938b )
Emulate MAP_32BIT on mmap (081d016 )
SignalDelegator update signal mask on return from sigsuspend (90511dd )
Updates 32-bit DRM emulation (a92233c )
Thunks
Fail loudly if thunking is enabled for a library that isn't installed (b1b6160 )
ThunksDB
Updates file to include local libs (e0d40dd )
Tests
Misc
BucketList
CMake
Adds option to enable time-trace compile option (919e2bc )
CompileService
Store WorkItem instances as unique_ptr (ef772c3 )
ELFCodeLoader
Fixes BRK allocation on some ELF loading (b327daf )
EnumUtils
Remove shift operators from helper macro (977d92b )
General
Migrate logging over to fmt where possible (513b02f )
RootFS
Keep rootfs around while in container (16f1ad4 )
IR.json/json_ir_generator: Minor touchups to generated IR utilities (9b43f94 )
Various packaging improvements (23e583e )
Frontend
Adds Socket logger and tool (6c93b6f )
FEXLoader
Change 32-bit memory check error to warning (82ebdf5 )
Print memory map when 32-bit intersect happens (e6d285a )
Syscalls
Move construction of syscall name map into GetSyscallName() (0560e9b )
You can’t perform that action at this time.