Ryan Houdek
16d5ca447f
FEXCore: DebugData is never null now
...
This is a required data structure to exist.
CID 482036
2025-06-19 16:21:19 -07:00
Ryan Houdek
3d0c20a263
Merge pull request #4615 from neobrain/feature_logging_qol
...
Improve log message formatting
2025-06-19 12:50:44 -07:00
Ryan Houdek
1c38b8b046
Merge pull request #4614 from alyssarosenzweig/opt/easy-mov-elim
...
Merge moves that are immediately consumed
2025-06-19 12:26:07 -07:00
Alyssa Rosenzweig
e1124480be
InstCountCI: Update
...
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io >
2025-06-19 13:44:23 -04:00
Alyssa Rosenzweig
5243f50ed1
RegisterAllocationPass: merge 32-bit mov + 64-bit and
...
mov wA, wB
and xA, xA, ...
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io >
2025-06-19 13:44:23 -04:00
Alyssa Rosenzweig
cde805147f
RegisterAllocationPass: merge 32-bit moves
...
mov wA, wB
op wA, wA, ..
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io >
2025-06-19 13:44:23 -04:00
Alyssa Rosenzweig
7e39eb3df2
RegisterAllocationPass: merge full size moves
...
mov xA, xB
op xA, xA, ..
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io >
2025-06-19 13:44:23 -04:00
Alyssa Rosenzweig
af366d4480
RegisterAllocationPass: skip inlineconstant in RA
...
similar reasoning as guestopcode.
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io >
2025-06-19 13:44:23 -04:00
Alyssa Rosenzweig
33ef98aae7
RegisterAllocationPass: refactor push/pop merge
...
to make way for move merging.
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io >
2025-06-19 13:44:23 -04:00
Alyssa Rosenzweig
c16db2db4a
RegisterAllocationPass: simplify an expression
...
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io >
2025-06-19 13:44:23 -04:00
Alyssa Rosenzweig
059d980c33
IR: give StoreRegister a precoloured destination
...
this will eliminate an annoying special case in post-RA opts.
No difference proven at 95.0% confidence
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io >
2025-06-19 13:44:23 -04:00
Alyssa Rosenzweig
581381fd86
IR: make 0 the invalid physical register
...
so zero init works as expected
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io >
2025-06-19 13:44:23 -04:00
Ryan Houdek
0072b289bb
Merge pull request #4622 from neobrain/feature_fexconfig_logo
...
FEXConfig: Add icon
2025-06-18 01:46:30 -07:00
Tony Wasserka
e2bd79087e
FEXConfig: Add icon
2025-06-18 10:33:07 +02:00
Ryan Houdek
6cd78fc90d
Merge pull request #4618 from neobrain/feature_infer_32bit_libfwd_paths
...
LibraryForwarding: Infer folders for 32-bit wrappers automatically
2025-06-17 17:55:38 -07:00
Ryan Houdek
c346aca241
Merge pull request #4620 from neobrain/refactor_data_files
...
Move data files to Data/
2025-06-17 17:54:28 -07:00
Ryan Houdek
bf83569f0b
Merge pull request #4623 from neobrain/feature_tracy_0_12
...
External: Update Tracy submodule to version 0.12.1
2025-06-17 17:53:47 -07:00
Tony Wasserka
1502f04a8a
External: Update Tracy submodule to version 0.12.1
...
Notably, this update adds flame graph functionality for aggregated data.
2025-06-17 17:51:52 +02:00
Tony Wasserka
7bd9d0ae23
Data: Move Dockerfile
2025-06-17 16:40:42 +02:00
Tony Wasserka
cf57afdf26
Data: Move CI folder to Data/CI
2025-06-17 16:40:42 +02:00
Tony Wasserka
43e6aebc7a
Data: Move CMake support scripts to Data/CMake
2025-06-17 16:40:42 +02:00
Tony Wasserka
22780993e1
Data: Move CPack files to Data/CMake/
2025-06-17 16:40:42 +02:00
Tony Wasserka
578dcee9af
Data: Move toolchain files to a central location
2025-06-17 16:40:42 +02:00
Tony Wasserka
61d77e3f9b
LibraryForwarding: Infer folders for 32-bit wrappers automatically
...
There's no need to bother the user to select these paths manually.
Instead, just use the same folder names with _32 appended.
Fixes #4588 .
2025-06-17 11:57:35 +02:00
Tony Wasserka
57627d4fcf
LogManager: Drop unused STDOUT/STDERR log levels
2025-06-16 13:54:03 +02:00
Tony Wasserka
23b69271eb
Use consistent log message formatting for all modules
2025-06-16 13:54:03 +02:00
LC
9d2f557666
Merge pull request #4616 from alyssarosenzweig/ici/32bit-div
...
InstructionCountCI: add 32-bit division cases
2025-06-13 13:18:55 -04:00
Alyssa Rosenzweig
4f9e352ff0
InstructionCountCI: add 32-bit division cases
...
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io >
2025-06-13 13:05:35 -04:00
Tony Wasserka
3e85e60a30
LogManager: Use colors for logging when possible
2025-06-13 15:14:47 +02:00
Tony Wasserka
febce21b21
FEXServer: Separate PID and TID with a pipe instead of a period
...
Since most software considers the former a word boundary but not the latter,
this allows the individual values to be copy-pasted more conveniently.
2025-06-13 14:54:22 +02:00
Tony Wasserka
755364e2df
FEXServer: Clean up time display for logging
...
This is now relative to the time of the first message. Furthermore, display
precision is limited to milliseconds (which are actually zero-padded now!).
2025-06-13 14:54:13 +02:00
Tony Wasserka
df63979773
LogManager: Avoid ^C being printed when quitting foreground FEXServer
2025-06-13 14:31:25 +02:00
Tony Wasserka
992d86bbc1
LogManager: Shorten debug level strings to a single letter
2025-06-13 14:31:25 +02:00
Ryan Houdek
534b338161
Merge pull request #4612 from alyssarosenzweig/ir/merge-divrem-2
...
IR: merge integer division & remainder
2025-06-12 14:29:02 -07:00
Alyssa Rosenzweig
ef250f936c
InstCountCI: Update
...
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io >
2025-06-12 16:45:49 -04:00
Alyssa Rosenzweig
e57130e364
JIT: drop UDiv extensions
...
we already extend in the dispatcher.
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io >
2025-06-12 16:45:49 -04:00
Alyssa Rosenzweig
eedcb35270
IR: merge ldiv/lrem handlers
...
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io >
2025-06-12 16:45:49 -04:00
Alyssa Rosenzweig
1eb470083c
IR: merge div/rem opcodes
...
it's simpler & faster to calculate both together, matching the x86 semantic.
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io >
2025-06-10 17:08:20 -04:00
LC
1f15a4e35b
Merge pull request #4611 from Sonicadvance1/ubisoft_ptrace
...
Linux: Implement enough of ptrace to allow Ubisoft launcher
2025-06-10 11:35:49 -04:00
Ryan Houdek
7ed9bea16b
Linux: Implement enough of ptrace to allow Ubisoft launcher
...
Wine does some minimal attaching, peeking, poking, and detaching to have
a different process inspect another's TEB region. Ubisoft's launcher
does this to check if a debugger is attached and rejects it in the case
that it is.
While this implementation isn't all-encompassing, it is good enough for
this family of games.
2025-06-09 16:32:42 -07:00
Ryan Houdek
8b1383d235
Docs: Update for release FEX-2506
FEX-2506
2025-06-04 10:48:24 -07:00
LC
a73fab3bb5
Merge pull request #4609 from Sonicadvance1/add_plucky_install
...
Scripts/InstallFEX: Add plucky
2025-06-03 16:30:45 -04:00
Ryan Houdek
7bd64d9c53
Merge pull request #4608 from alyssarosenzweig/ici/case
...
InstructionCountCI: fix sdiv case
2025-06-03 12:50:36 -07:00
Ryan Houdek
1786c2f157
Scripts/InstallFEX: Add plucky
...
This was added to the PPA last month.
2025-06-03 12:31:40 -07:00
Alyssa Rosenzweig
958b671736
InstructionCountCI: fix sdiv case
...
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io >
2025-06-03 15:30:42 -04:00
Ryan Houdek
6549b66cf6
Merge pull request #4606 from alyssarosenzweig/opt/cdq
...
Optimize CDQ
2025-06-03 12:24:15 -07:00
Alyssa Rosenzweig
0c855a5ce3
InstCountCI: Update
...
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io >
2025-06-03 15:00:39 -04:00
Alyssa Rosenzweig
6864d48dcf
OpcodeDispatcher: optimize cdq
...
prereq to optimizing sign-ext+ldiv in a reasonable way.
Signed-off-by: Alyssa Rosenzweig <alyssa@rosenzweig.io >
2025-06-03 15:00:06 -04:00
Ryan Houdek
99816a23a8
Merge pull request #4583 from neobrain/refactor_syscalls_unify
...
LinuxSyscalls: Reduce code duplication between 32-bit and 64-bit paths
2025-06-03 09:54:09 -07:00
Ryan Houdek
2ff9546523
Merge pull request #4599 from pmatos/FEXServerFind
...
Fixes FEXServer path search
2025-06-03 09:52:39 -07:00