LC
eeb99027c7
Merge pull request #6046 from Sonicadvance1/278
...
HostFeatures: clang-format
2026-10-20 14:19:57 -04:00
Ryan Houdek
14b3021d1c
HostFeatures: clang-format
...
Somehow this was missed and now it is showing up.
2026-10-20 09:53:20 -07:00
LC
fd8a601772
Merge pull request #6042 from Sonicadvance1/275
...
OpcodeDispatcher: Add undefined flags acid test
2026-10-20 12:27:42 -04:00
LC
a36ca807c8
Merge pull request #6044 from mstorsjo/libcxx-24-strtof
...
Add another function stub for libc++ 24 on Windows
2026-10-20 12:27:28 -04:00
Martin Storsjö
04f078e265
Add another function stub for libc++ 24 on Windows
...
This is needed by libc++ on mingw targets since
https://github.com/llvm/llvm-project/commit/c7da05f9828542daaf634a6f4277212b5f6194d5 ,
which will be included in libc++ 24.
2026-10-20 14:50:36 +03:00
LC
d7b8e1497a
Merge pull request #6043 from Sonicadvance1/276
...
FEXCore: Wire up support for SERIALIZE
2026-10-19 17:47:03 -04:00
Ryan Houdek
25eb85f80e
HostRunner: Support checking for SERIALIZE
2026-10-19 14:29:03 -07:00
Ryan Houdek
47de7e352d
InstcountCI: Update
2026-10-19 14:11:45 -07:00
Ryan Houdek
f256d97ddb
FEXCore: Wire up support for SERIALIZE
...
Trivial instruction.
2026-10-19 14:11:06 -07:00
Ryan Houdek
651b94f435
OpcodeDispatcher: Add undefined flags acid test
...
Useful debug feature to make sure FEX returns consistent flag data for
instructions that have undefined flags. Just sets everything that is
undefined to zero always.
Manually walked through all the instructions in the architecture manual
to check for ones doing undefined flag setting, then glued the handler
on to the end.
Also fixes a comment that has incorrect information about undefined
flags.
2026-10-19 13:50:34 -07:00
Ryan Houdek
741e146fdf
Merge pull request #6039 from Sonicadvance1/274
...
arm64ec: Have synchronous faults skip fault overhead
2026-10-17 18:53:39 -07:00
Ryan Houdek
761369f590
InstcountCI: Update
2026-10-13 20:06:49 -07:00
Ryan Houdek
27cfd41bf9
FEXCore: Wire up the fault free synchronous fault handling
...
Changes the code generation on arm64ec so the version needs to bump.
2026-10-13 19:55:36 -07:00
Ryan Houdek
07abec317c
Arm64ec: Wire up non-faulting synchronous faults
2026-10-13 19:55:33 -07:00
Ryan Houdek
461b286a8a
Dispatcher: Adds unused synchronous dispatch handler
2026-10-13 18:07:22 -07:00
Ryan Houdek
5285020de0
Merge pull request #6037 from javelina-pkwy/fix/rpmalloc-vmdata
...
Allocator: Commit rpmalloc memory on demand due to RLIMIT_DATA
2026-10-13 13:02:50 -07:00
Justin Becker
679d6c7be6
Allocator: Commit rpmalloc memory on demand for RLIMIT_DATA
2026-10-13 12:33:06 -07:00
LC
7780a436b7
Merge pull request #6036 from Sonicadvance1/272
...
unittests: Also fix LLVM 23
2026-10-13 15:16:21 -04:00
Ryan Houdek
d1d772c05e
Merge pull request #6035 from junknewera/test/sar-sign-extension
...
unittests/ASM: Test SAR sign extension for 8 and 16 bit
2026-10-13 11:47:58 -07:00
Ryan Houdek
a3104f4f84
unittests: Also fix LLVM 23
2026-10-13 11:44:38 -07:00
oleg
8c0044f914
unittests/ASM: Test SAR sign extension for 8 and 16 bit
2026-10-13 20:50:15 +03:00
Ryan Houdek
e9c103412a
Merge pull request #6032 from javelina-pkwy/tests/slim-python-runners
...
Tests: Reduce wall clock time spent in "ninja tests"
2026-10-12 18:52:39 -07:00
Ryan Houdek
cb508dfbfe
Merge pull request #6031 from Sonicadvance1/269
...
Thunks: Fixes LLVM 23
2026-10-12 18:52:26 -07:00
LC
eef303f69a
Merge pull request #6033 from Sonicadvance1/271
...
DiskCache: Fixes a race condition on the data blob
2026-10-12 20:38:34 -04:00
Ryan Houdek
b49837f0c3
DiskCache: Fixes a race condition on the data blob
...
Found this through introspection, only a real problem with -O0.
We were moving a fextl::vector in to a shared pointer so it can be long
living, this causes a change in ownership which was causing the
`BlobData` pointer to be stale. This was then passed to the work queue
to be consumed. In -O1 and above a std::move of a fextl::vector is a
proper move, but -O0 it turns in to a copy.
Easy fix is to just create the shared_ptr early and reference that, so
the pointer is long lived and no references become stale.
2026-10-12 15:57:06 -07:00
LC
fb925d6fc5
Merge pull request #6030 from Sonicadvance1/268
...
Linux/SignalDelegator: Support SA_RESETHAND
2026-10-12 18:53:32 -04:00
Justin Becker
9f610975ea
Tests: Reduce wall clock time spent in "ninja tests"
2026-10-12 13:08:52 -07:00
Ryan Houdek
dab12ae78e
Merge pull request #6020 from javelina-pkwy/fix/main-stack-growth
...
Linux: Track main stack usage more accurately in VmData
2026-10-12 12:51:37 -07:00
Ryan Houdek
e3c1c1e425
Merge pull request #6024 from javelina-pkwy/fix/stat-nullptr
...
Linux: Return EFAULT for stat() of a null path
2026-10-12 12:49:14 -07:00
Ryan Houdek
94ff2b0c66
Merge pull request #6021 from tarikbc/arm64ec-lutsize-ldr
...
ARM64EC: Fix the NtDllRedirectionLUT bounds check in CheckCall
2026-10-12 12:48:44 -07:00
Ryan Houdek
896a869122
Thunks: Fixes LLVM 23
...
Fixes #6025
2026-10-12 12:37:56 -07:00
Ryan Houdek
f96bf07a10
FEXLinuxTests: Adds SA_RESETHAND test
2026-10-12 12:13:05 -07:00
Ryan Houdek
0152660af2
Linux/SignalDelegator: Support SA_RESETHAND
...
This is fairly trivial to support.
Fixes #6028
2026-10-12 12:12:44 -07:00
Justin Becker
30398c371d
Clang format
2026-10-09 11:25:10 -07:00
Justin Becker
e94ad12400
NIT
2026-10-09 11:24:50 -07:00
Justin Becker
3e2b2aadff
Also add ENOENT tests
2026-10-09 11:03:12 -07:00
Justin Becker
13bc7faee3
Syscall: stat of nullptr shouldn't abort()
2026-10-08 17:01:36 -07:00
Tarik Caramanico
3a2b1c0b43
ARM64EC: Don't read past the end of NtDllRedirectionLUT in CheckCall
...
NtDllRedirectionLUT has NtDllRedirectionLUTSize entries, so valid
offsets are 0 to NtDllRedirectionLUTSize - 1. The bounds check used
b.hi, which let an offset equal to the size through and read one entry
past the end of the allocation.
2026-10-08 09:35:05 -03:00
Tarik Caramanico
4dbb046d62
ARM64EC: Load NtDllRedirectionLUTSize as 32-bit in CheckCall
...
NtDllRedirectionLUTSize is a uint32_t, but CheckCall loaded it with a
64-bit ldr. The upper half of the bound then comes from whatever follows
the variable in memory, and the :lo12: offset of a 64-bit ldr needs an
8-byte aligned symbol, so the link fails with "misaligned ldr/str offset"
when the variable ends up on a 4-byte boundary.
Load it with a 32-bit ldr, which zero-extends into x17 for the compare.
2026-10-08 09:24:45 -03:00
Ryan Houdek
14c92681f4
Docs: Update for release FEX-2610
FEX-2610
2026-10-07 11:42:33 -07:00
Justin Becker
62580ceba0
Linux: Track stack usage more accurately in VmData for RLIMIT_DATA
2026-10-07 11:40:24 -07:00
Ryan Houdek
992349f555
Merge pull request #6019 from Sonicadvance1/267
...
Scripts/InstallFEX: Add new ubuntu versions
2026-10-07 09:44:57 -07:00
Ryan Houdek
2fd969cbe7
Scripts/InstallFEX: Add new ubuntu versions
...
Fixes #6016
2026-10-07 09:15:23 -07:00
Ryan Houdek
e9373bfaec
Merge pull request #6011 from javelina-pkwy/perf/gather-all-ones
...
Peephole optimization for VPCMPEQD + VGATHERDPS
2026-10-07 09:13:24 -07:00
Ryan Houdek
d58a4e0da2
Merge pull request #6017 from javelina-pkwy/fix/avx-required-test-python
...
Tests: Enable a handful of tests, and fix small bug in python test runner script
2026-10-07 05:17:03 -07:00
Justin Becker
eed344e869
Tests: enable some tests that were disabled, and small fix to guest_test_runner.py
2026-10-06 12:16:07 -07:00
Justin Becker
e638b8ef37
clang format
2026-10-06 10:59:36 -07:00
LC
7d3090f782
Merge pull request #6010 from Sonicadvance1/266
...
FEXCore: Update readme with supported ISAs
2026-10-05 18:50:28 -04:00
Justin Becker
b2dffb5a8a
InstCountCI: Bump DiskCache version
2026-10-05 15:17:58 -07:00
Justin Becker
5ec147109e
Implement peephole optimization for vpcmpeqd + vgatherdps
...
This peephole removes unnecessary masking operations when the mask is
provably all 1s. This improves performance in GB7 'Asset Compression' by
about 2% with SVE and about 4% without SVE.
2026-10-05 15:17:58 -07:00