Ryan Houdek
c094dc238e
Docs: Update for release FEX-2509.1
FEX-2509.1
2025-09-15 18:33:36 -07:00
Billy Laws
ceaf38e996
Dispatcher: Fix FABI_F32_I16_F80_PTR argument size
...
This takes an f80 as input and returns an f32. A copy-paste error had
this truncating the input float if !TMP_ABIARGS.
2025-09-15 18:31:55 -07:00
Billy Laws
85e9e255a5
unittests: Add test for x87 mode switches wrongly flushing NZCV
2025-09-15 18:31:50 -07:00
Billy Laws
a545865ab7
OpcodeDispatcher: Only flush MMX registers on MMX -> x87 transitions
...
Flushing other regs is not necessary, and breaks any ConvertNZCVToX87 use
which relies previously saved NZCV values as the flag-setting NZCV op after
the save could trigger a flush of NZCV.
2025-09-15 18:31:44 -07:00
Billy Laws
aa8e8f2cb0
OpcodeDispatcher: Don't assert on invalid ALU op encoding
2025-09-15 18:31:37 -07:00
Billy Laws
d3a8701e1a
WOW64: Fix CsSeg initialization
2025-09-15 18:31:31 -07:00
Ryan Houdek
a6bd293ae8
Docs: Update for release FEX-2509
FEX-2509
2025-09-09 09:21:22 -07:00
Ryan Houdek
decd112a84
Merge pull request #4854 from lioncash/fend
...
Frontend/OpcodeDispatcher: Remove unused headers
2025-09-08 21:40:30 -07:00
Lioncache
f9c15fa0a5
Frontend/OpcodeDispatcher: Remove unused headers
...
Removes assorted unused headers and forward declarations.
2025-09-09 00:28:05 -04:00
Ryan Houdek
1121f2a1fb
Merge pull request #4853 from lioncash/allocator
...
FEXCore/Allocator: Remove unused headers
2025-09-08 20:25:25 -07:00
Lioncache
a7989eb79f
FEXCore/Allocator: Remove unused headers
...
Reveals some more indirect inclusions.
2025-09-08 22:53:09 -04:00
Ryan Houdek
80c199cefb
Merge pull request #4852 from lioncash/loading
...
FileLoading: Add missing self-header
2025-09-08 19:48:01 -07:00
Ryan Houdek
317f92f4c8
Merge pull request #4851 from lioncash/ir
...
IR: Remove unnecessary forward declarations/headers
2025-09-08 19:47:51 -07:00
Ryan Houdek
dd344710d4
Merge pull request #4850 from lioncash/vdso
...
VDSO_Emulator: Cull unnecessary includes
2025-09-08 19:16:56 -07:00
Lioncache
e4e8683c7b
FileLoading: Add missing self-header
...
Ensures that the exposed interface is visible to the implementation (i.e. gets rid of some -Wmissing-declaration warnings).
2025-09-08 22:13:42 -04:00
Lioncache
b2407352a9
IR: Remove unnecessary forward declarations/headers
...
Pares the base IR header down to a modest size and also reveals a few indirect
reliances on the allocator facilities.
2025-09-08 22:03:25 -04:00
Lioncache
e1b5e3e112
VDSO_Emulator: Cull unnecessary includes
...
Reveals a bunch of indirect includes inside the SignalDelegator.
2025-09-08 21:43:31 -04:00
Ryan Houdek
09793d295f
Merge pull request #4849 from lioncash/config
...
Config: Remove unused Context.h include
2025-09-08 16:59:38 -07:00
Ryan Houdek
e9f8c01e04
Merge pull request #4848 from lioncash/thread
...
InternalThreadState: Remove unused includes
2025-09-08 16:59:15 -07:00
Lioncache
f69821d7db
Config: Remove unused Context.h include
...
Removes quite a heavy include from the config system and specifies any
indirect inclusion that were relied on because of it.
2025-09-08 15:23:30 -04:00
Lioncache
1e03219ca3
Syscalls/Thread: Add missing forward declarations
...
Currently we were lucky that these were being seen already when being included.
2025-09-08 14:58:30 -04:00
Lioncache
de8b4438e3
ThreadManager: Eliminate indirect inclusions
...
We had quite a bit of dependencies that were currently being indirectly relied upon.
We can forward declare the relevant ones and add the includes for the ones that are
explicit.
2025-09-08 14:58:27 -04:00
Ryan Houdek
2cfd3330f0
Merge pull request #4847 from lioncash/loader
...
CodeLoader: Tidy up interface
2025-09-08 11:50:30 -07:00
Ryan Houdek
1988b432ab
Merge pull request #4846 from pmatos/fix/VSCond
...
Fix mapping for VS and VC condition codes
2025-09-08 11:29:35 -07:00
Lioncache
6b2363d3f6
InternalThreadState: Remove unused headers
...
Removes some includes in the core header and resolves indirect includes elsewhere.
2025-09-08 14:13:01 -04:00
Ryan Houdek
e76af56c86
Merge pull request #4845 from lioncash/thunk
...
Core/Thunks: Remove unused IR header/forward declarations
2025-09-08 10:03:34 -07:00
Ryan Houdek
b7173a3ae2
Merge pull request #4844 from lioncash/builtin
...
General: std::alignment_of -> alignof
2025-09-08 10:03:24 -07:00
Ryan Houdek
3f71517e1f
Merge pull request #4843 from lioncash/util
...
Common: Remove duplicated StringUtil functionality
2025-09-08 10:03:14 -07:00
Lioncache
17fbe52cf6
CodeLoader: Mark GetStackPointer() as const
...
This isn't intended to modify anything.
2025-09-08 12:19:15 -04:00
Lioncache
ecc526a9d8
CodeLoader: Make GetApplicationArguments() return by reference
...
We don't really need to make this potentially return a null pointer when we could always return a valid instance
that would just happen to be empty if unused.
2025-09-08 12:07:19 -04:00
Lioncache
436f4aa953
CodeLoader: Make GetExecveArguments() return by value
...
Same behavior, but more straightforward.
2025-09-08 12:07:19 -04:00
Lioncache
fd10ce0600
CodeLoader: Return auxv results by value
...
Same behavior, but without the need to care about out values.
2025-09-08 12:07:14 -04:00
Lioncache
d9cd40eb48
CodeLoader: Remove unused AddIR() member function
...
This isn't used in any implementations anymore.
2025-09-08 10:34:13 -04:00
Lioncache
9b9ab16b55
Common: Remove duplicated StringUtil functionality
...
We already have an equivalent header within FEXCore that's header only,
so we can adapt it to conform for both cases, allowing for removal of
one of them.
2025-09-08 09:44:25 -04:00
Paulo Matos
14256e7a90
Fix mapping for VS and VC condition codes
...
This doesn't seem to be generated in-code therefore it's not fixing any
existing bug, but fixes the mapping for future uses of the condition code.
2025-09-08 11:41:15 +02:00
Lioncache
d36c387c1f
Core/Thunks: Remove unused IR/forward declarations
...
Moves the IR include into one of the more specific headers, which avoids dumping the IR header into any core bits that use the interface.
Also uncovered a missing header guard.
2025-09-06 22:28:27 -04:00
Lioncache
7e61b172b2
General: std::alignment_of -> alignof
...
We can just use the compiler built-in in these cases. std::alignment_of
mainly has utility in metaprogramming.
2025-09-06 21:23:10 -04:00
Ryan Houdek
bd0cae9298
Merge pull request #4825 from bylaws/unityomg
...
Frontend: Force acq/rel semantics for known Unity ringbuffer offsets
2025-09-06 17:09:13 -07:00
Ryan Houdek
6ae94581bb
Merge pull request #4821 from bylaws/monof
...
Frontend: Fix tailcall handling when mono hacks are enabled
2025-09-06 16:51:08 -07:00
Ryan Houdek
ea8ae2bf2c
Merge pull request #4839 from lioncash/utils
...
Common Utils: Remove unused/unnecessary inclusions from headers
2025-09-06 15:50:00 -07:00
Ryan Houdek
694bc3312e
Merge pull request #4842 from lioncash/python
...
config_generator: Remove superfluous format arguments
2025-09-06 15:49:50 -07:00
Ryan Houdek
f565939437
Merge pull request #4841 from lioncash/env
...
Common: Remove EnvironmentLoader.cpp/.h
2025-09-06 15:49:42 -07:00
Lioncache
272d2747cd
config_generator: Remove excess formatting arguments for EnumParser handling
...
Each instance had one more argument than necessary.
2025-09-06 11:18:38 -04:00
Lioncache
675956c92d
config_generator: Indent ENVLOADER conditional bodies
...
Makes the indentation consistent with the rest of the generated file.
2025-09-06 10:57:31 -04:00
Lioncache
03410ed4a2
config_generator: Remove unnecessary format() in print_parse_jsonloader_options()
...
This format call essentially does nothing since it has no specifier.
We can also fix up the indentation of the else case too, for consistency.
2025-09-06 10:51:02 -04:00
Lioncache
ac88e7fabf
Common: Remove EnvironmentLoader.cpp/.h
...
This has been unused since the transition to the layered config system.
2025-09-06 10:23:53 -04:00
Tony Wasserka
71d42d7e73
Merge pull request #4840 from lioncash/internal
...
InternalThreadState: Make bool operator explicit
2025-09-06 09:20:08 +02:00
Lioncache
2613762ac2
InternalThreadState: Make bool operator explicit
...
We definitely don't want the boolean null test to be able to be implicitly converted
(e.g. to an int or whatever else).
For example a non-explicit bool operator allows for silly things like:
NonMovableUniquePtr<...> ptr;
// ...
auto k = 5 + ptr;
to build without issue, which we should really force the user to be explicit about if it's *really* a desired behavior.
2025-09-05 16:29:19 -04:00
Lioncache
831b21cd39
JitSymbols: Remove unused includes
...
Reduces header dependencies (and clarifies existing ones).
2025-09-05 14:27:49 -04:00
Lioncache
7869d80073
VolatileMetadata: Add missing include
2025-09-05 14:16:23 -04:00