LC
ae495b971b
Merge pull request #6106 from Sonicadvance1/310
...
Minor fixes
2026-11-06 09:52:49 -05:00
Ryan Houdek
feee41a768
ImageTracker: Actually wire up config option for Volatile Metadata
...
I forgot to wire this up, so you couldn't turn off an application's
volatile metadata for testing.
2026-11-06 00:12:26 -08:00
Ryan Houdek
cf2f831ad9
Windows: Fixes forced assert
...
This wasn't ever wired up for Windows.
2026-11-05 20:26:44 -08:00
Ryan Houdek
b9fc587ac8
CPUID: Fixes crash in CPUID
...
When affinity changes are in play this can cause a crash because core
index is larger than the number of cores known about.
Happens on Frame.
2026-11-05 20:25:03 -08:00
LC
c985199ed5
Merge pull request #6104 from Sonicadvance1/308
...
FEX: Implement support for CPUID faulting
2026-11-05 19:49:40 -05:00
LC
e67bbd3ecf
Merge pull request #6105 from Sonicadvance1/309
...
DiskCache: Moves SVE/AVX from HostFeatureHash to ProcessHash
2026-11-05 18:55:39 -05:00
Ryan Houdek
02e932d9f4
InstcountCI: Remove CPUID with constant. This no longer optimizes
2026-11-05 15:04:25 -08:00
Ryan Houdek
a3f5700c33
InstcountCI: Update
2026-11-05 14:48:10 -08:00
Ryan Houdek
a2b15c8e0f
FEXLinuxTests: Adds a unittest for CPUID fault testing
...
Tests various instruction lengths to ensure it works robustly.
2026-11-05 14:48:08 -08:00
Ryan Houdek
05293166ce
FEX: Implement support for CPUID faulting
2026-11-05 14:31:03 -08:00
Ryan Houdek
ef586f03a8
Arm64Emitter: Add a way to query SRA x86 registers to their arm64 mapping
2026-11-05 14:31:03 -08:00
Ryan Houdek
6a3d85a26f
InstcountCI: Update
2026-11-05 13:45:15 -08:00
Ryan Houdek
36aec0d54d
DiskCache: Moves SVE/AVX from HostFeatureHash to ProcessHash
...
Annoyingly these are technically host features but they end up being
process feature hash bits because they change between Linux, wow64, and
arm64ec.
This now makes the HostFeaturesHash match between the three which is
what we want. While the process feature bits change between them.
Adds an info log to the DiskCache startup for confirmation.
2026-11-05 13:45:13 -08:00
Ryan Houdek
8f92e80dcc
Docs: Update for release FEX-2611
FEX-2611
2026-11-05 09:36:54 -08:00
LC
eff9f459d8
Merge pull request #6103 from Sonicadvance1/307
...
FEXServerManager: Stop leaving stale FEXServer sockets around
2026-11-04 18:31:44 -05:00
LC
a8c901622b
Merge pull request #6102 from Sonicadvance1/306
...
OpcodeDispatcher: Make sure xsetbv works correctly
2026-11-04 18:30:03 -05:00
Ryan Houdek
da92583307
InstcountCI: Update
2026-11-04 15:08:43 -08:00
Ryan Houdek
7a6d04e309
FEXServerManager: Stop leaving stale FEXServer sockets around
...
Usually doesn't matter but can cause moving directories with Steam's
"Move install folder" to fail.
2026-11-04 14:47:37 -08:00
Ryan Houdek
61523a6db1
OpcodeDispatcher: Make sure xsetbv works correctly
...
I had missed testing this instruction because it doesn't show up in the
regular instruction tables that I was checking for system instructions.
2026-11-04 14:42:03 -08:00
LC
a81762caed
Merge pull request #6101 from Sonicadvance1/305
...
Tools: Fixes a couple throws that leaked
2026-11-04 15:25:37 -05:00
LC
d6ec067592
Merge pull request #6100 from Sonicadvance1/304
...
CMake: Disable async unwind tables on mingw+preserve_all
2026-11-04 15:25:03 -05:00
Ryan Houdek
3f6d7a73b4
Tools: Fixes a couple throws that leaked
...
I just saw we managed to catch a few throws in the source. Chop them
out.
2026-11-04 11:17:16 -08:00
Ryan Houdek
ef006bdb10
CMake: Disable async unwind tables on mingw+preserve_all
...
From the comment
[here](https://github.com/FEX-Emu/FEX/pull/6094#issuecomment-6626133724 )
apparently there is a bug where async unwind tables and preserve_all
conflicts under mingw. So...just disable it. Easy.
2026-11-04 10:40:29 -08:00
LC
75df0f815b
Merge pull request #6096 from Sonicadvance1/303
...
FEXMingwTests: Adds the ability to run the mingw tests
2026-11-03 20:36:07 -05:00
Ryan Houdek
25d91355f9
FEXMingwTests: Adds the ability to run the mingw tests
...
With a simple `ninja fex_mingw_tests` the tests can now be run with the
currently installed wine. This is useful for building tests and
running them on an x86 host.
Once paired with a CI job that installs the FEX Wine DLLs, this can also
be used to run these against the current FEX build as well.
For the two tests duplicated between 32-bit and 64-bit it takes about
0.94 seconds. So these are relatively heavy compared to our ASM or Linux
tests, so we should try and keep most tests there if possible.
2026-11-03 16:30:59 -08:00
Ryan Houdek
8f0f22cfb4
Scripts: Fixes guest mode check in guest test runner
...
This is supposed to be used for checking if FEX needs to have AVX
enabled. This was never wired up.
2026-11-03 16:25:33 -08:00
Ryan Houdek
fc770b368c
Merge pull request #6095 from lioncash/vixlup
...
Externals: Update vixl
2026-11-03 12:22:58 -08:00
Lioncache
6e4d95c630
Externals: Update vixl
...
Keeps it up to date with recent changes.
2026-11-03 14:59:55 -05:00
LC
effbda64ca
Merge pull request #6094 from Sonicadvance1/302
...
Feature flag fixes and alignment between targets
2026-11-03 13:29:51 -05:00
Ryan Houdek
61086cc81a
HostFeatures: Tag the bit positions of each flag
...
There's enough of them now that it's kind of annoying to track by
counting.
2026-11-03 10:03:51 -08:00
Ryan Houdek
c76fccf256
CMake: Add an llvm-mingw clang version check to preserve_all
...
llvm has supported preserve_all abi on Windows ABI since
https://github.com/llvm/llvm-project/pull/166436 .
This has been in a clang release since 22.1. Do a clang version check to
ensure the compiler is >= 22.1 to enabled preserve_all under
wow64/arm64ec.
This will give a performance boost to applications that require x87 full
precision and a couple other minor things.
2026-11-03 10:00:54 -08:00
Ryan Houdek
c69f2bf042
arm64ec: Fixes copy-paste failure
...
Accidentally changed the host type from arm64ec to wow64 which disabled
AVX.
2026-11-03 09:43:26 -08:00
Ryan Houdek
7d0cf9b166
Windows/CPUFeatures: Fixes disabled cache instruct operations on wine
...
This check was inverted. We were accidentally disabling cache operations
on Wine, but enabling on Windows when it should be the opposite.
2026-11-03 09:24:27 -08:00
LC
fb68b0e9a8
Merge pull request #6093 from mstorsjo/wsetlocale-wcsdup
...
Implement _wsetlocale and _wcsdup for libc++ 24
2026-11-03 08:00:12 -05:00
Martin Storsjö
c7ad33c15f
Implement _wsetlocale and _wcsdup for libc++ 24
...
These are needed by libc++ on Windows, since
https://github.com/llvm/llvm-project/commit/12f572979922ca10b9c66d6264826f9cbc78f5de ,
which will be included in libc++ 24.
2026-11-03 11:13:24 +02:00
Ryan Houdek
4a4669a078
Merge pull request #6092 from Claudemirovsky/fix/build/libcxx-moment
...
fix(CMakeLists): Fix build flags when LIBCXX is enabled
2026-11-02 23:24:53 -08:00
Claudemirovsky
db09e95e7d
fix(CMakeLists): Fix build flags when LIBCXX is enabled
2026-11-03 01:33:40 -03:00
LC
2b1082060d
Merge pull request #6045 from Sonicadvance1/277
...
Debug register instruction breakpoint support
2026-11-02 21:38:34 -05:00
LC
b1f27cfa9d
Merge pull request #6090 from Sonicadvance1/300
...
InstcountCI: Disable tpidrro in rdpid/rdtsc files.
2026-11-02 21:19:50 -05:00
LC
24da3ae7c7
Merge pull request #6091 from Sonicadvance1/301
...
Config: Fixes typo in man page. NFC
2026-11-02 21:18:03 -05:00
Ryan Houdek
524a37c7af
Merge pull request #6077 from javelina-pkwy/perf/sha256-peephole
...
Crypto: SHA256 Peephole
2026-11-02 18:00:19 -08:00
Ryan Houdek
f9b2f1382d
Config: Fixes typo in man page. NFC
2026-11-02 17:41:50 -08:00
Ryan Houdek
55bdb16e6a
InstcountCI: Update
2026-11-02 17:30:15 -08:00
Ryan Houdek
b7b039c24d
InstcountCI: Disable tpidrro in rdpid/rdtsc files.
2026-11-02 17:28:20 -08:00
Ryan Houdek
0c59ad2e28
Arm64EC: Try to control debug registers
...
Currently fails as it needs WINE integration.
2026-11-02 17:19:24 -08:00
Ryan Houdek
18cc74cae2
Wow64: Implement support for breakpoints
...
Passes my instruction breakpoint test properly.
2026-11-02 17:19:24 -08:00
Ryan Houdek
c2181679c9
FEXCore/OpcodeDispatcher: Implement support for breakpoints on instructions
...
Working well enough for partial support.
2026-11-02 17:19:24 -08:00
Ryan Houdek
c5352bf18a
FEXCore/CoreState: Add debug registers to core state.
2026-11-02 17:19:23 -08:00
Ryan Houdek
a6ba3e2fbd
Merge pull request #6089 from Sonicadvance1/299
...
unittests/FEXMingwTests: Adds breakpoint unittest
2026-11-02 17:19:13 -08:00
Ryan Houdek
5c45366cdf
unittests/FEXMingwTests: Adds breakpoint unittest
...
With #6045 this unittest passes on the 32-bit version, but doesn't yet
on the arm64ec version. Data breakpoints are disabled currently because
there's no support for wine passing our x86 data breakpoints over to
arm64 data breakpoints atm.
This test will get further extended with mid-instruction and mid-block
unittests as I continue hammering the details.
2026-11-02 15:40:02 -08:00