Stefanos Kornilios Mitsis Poiitidis
0c1510e763
Merge pull request #641 from Sonicadvance1/uninstall_handlers
...
Uninstalls both the signal delegator and logmanager handlers on shutdown
2021-01-13 12:15:10 +02:00
Stefanos Kornilios Mitsis Poiitidis
709075de58
Merge pull request #639 from Sonicadvance1/fix_32bit_program_header
...
Makes sure to not calculate zero sized program headers on 32bit
2021-01-13 12:08:00 +02:00
Stefanos Kornilios Mitsis Poiitidis
f34f8981ab
Merge pull request #638 from Sonicadvance1/irvalidation_memoryleak
...
Fixes a memory leak in IRValidation
2021-01-13 12:07:33 +02:00
Ryan Houdek
067889c861
Merge pull request #644 from duck-37/faster-pmovmskb
...
Add specialized case for PMOVMSKB with vector ops
2021-01-12 12:25:50 -08:00
duck
ade89bba6a
XXX -> TODO
2021-01-12 15:19:45 -05:00
duck
059594cbd3
Add a quick comment for potential optimization
2021-01-12 15:15:41 -05:00
Ryan Houdek
f78a342a72
Merge pull request #645 from duck-37/dcse-flags
...
Make DCSE aware of OP_INVALIDATEFLAGS
2021-01-12 11:50:35 -08:00
duck
501bccdd80
Faster PMOVMSKB, part 2
2021-01-12 14:06:52 -05:00
duck
49afb6bceb
Faster PMOVMSKB instruction.
2021-01-12 14:06:51 -05:00
Ryan Houdek
77bbe95cd9
Merge pull request #643 from duck-37/one-byte-horizontal-add-x64
...
Support one-byte horizontal adds on x64
2021-01-12 11:05:55 -08:00
duck
c690e65365
Make sure to only record when necessary
2021-01-12 12:49:49 -05:00
duck
4e3934eddd
Make DeadContextStoreElimination aware of OP_INVALIDATEFLAGS
2021-01-12 12:47:32 -05:00
duck
464eb13b93
One-byte horizontal add support on x86-64.
2021-01-12 11:10:16 -05:00
Stefanos Kornilios Mitsis Poiitidis
80771226b8
Merge pull request #640 from Sonicadvance1/fix_test_flakes
...
Disables killpg tests and reenables a few tests
2021-01-11 19:32:35 +02:00
Ryan Houdek
b857d6ba16
Disables killpg tests and reenables a few tests
...
killpg has been causing us testing problems for a while now.
As we were running more tests it was becoming more likely to hit a test
doing killpg in the background.
All of the tests run under the same process group so it is a significant
race condition to have these running.
Until we improve CI to somehow work around how killpg works, we just
need to have these disabled.
2021-01-11 09:12:02 -08:00
Ryan Houdek
aa3b77e4c8
Uninstalls LogManager handlers on shutdown
...
In case something manages to have stayed alive and tried throwing a
message, this will no longer crash.
Noticed this with the previous commit
2021-01-11 09:03:56 -08:00
Ryan Houdek
f83698cb50
Uninstalls SignalDelegator signals on destruction
...
Tear this down earlier so if we catch a signal on shutdown then we don't
crash in the handler.
Fixes some pain around debugging shutdown crashes
2021-01-11 09:01:06 -08:00
Ryan Houdek
a442489001
Makes sure to not calculate zero sized program headers on 32bit
...
This is the same thing as the 64bit side
2021-01-11 08:51:13 -08:00
Ryan Houdek
8d2eebd644
Fixes a memory leak in IRValidation
2021-01-11 08:47:45 -08:00
Stefanos Kornilios Mitsis Poiitidis
6542f08f27
Merge pull request #623 from Sonicadvance1/capture_fsstatat
...
Captures fsstatat in filesystem overlay
2021-01-11 16:20:15 +02:00
Stefanos Kornilios Mitsis Poiitidis
1e80d3527b
Merge pull request #624 from Sonicadvance1/capture_osrelease
...
Have EmulatedFiles support osrelease file
2021-01-11 16:20:04 +02:00
Stefanos Kornilios Mitsis Poiitidis
552895b896
Merge pull request #626 from Sonicadvance1/fix_16bit_addressing
...
Fixes 16bit ModRM rm decoding
2021-01-11 16:19:56 +02:00
Stefanos Kornilios Mitsis Poiitidis
a1ac4c711c
Merge pull request #631 from duck-37/dump-ir-runner
...
Pass DumpIR to TestHarnessRunner
2021-01-11 11:02:03 +02:00
Stefanos Kornilios Mitsis Poiitidis
d7868fd2bd
Merge pull request #627 from Sonicadvance1/disable_visual_debugger
...
Disables visual debugger by default
2021-01-11 11:00:16 +02:00
Stefanos Kornilios Mitsis Poiitidis
db71916ee4
Merge pull request #625 from Sonicadvance1/shebang_improvements
...
Shebang improvements
2021-01-11 10:58:51 +02:00
Stefanos Kornilios Mitsis Poiitidis
ce3971098e
Merge pull request #622 from Sonicadvance1/fix_execve_rootfs
...
Fixes execve with rootfs
2021-01-11 10:55:52 +02:00
Stefanos Kornilios Mitsis Poiitidis
50597b8fd2
Merge pull request #621 from Sonicadvance1/fix_idle_ref_count_on_fork
...
Ensure idle wait ref counter is 1 on fork
2021-01-11 10:55:36 +02:00
Ryan Houdek
a0531c9592
Merge pull request #632 from duck-37/jcxz-fix
...
Fix a few branching instructions on x86-32
2021-01-11 00:40:34 -08:00
duck
a63339c50d
Fix JCC negative offsets as well
2021-01-11 03:34:52 -05:00
duck
e610b12c97
Fix negative offset jumps on x86-32 by using 32-bit RIP
2021-01-11 03:20:25 -05:00
duck
86e6ea43a2
Fix test cases.
2021-01-10 18:31:23 -05:00
duck
4c295e6dfc
Fix compilation issues, re-rename due to pre-existing variable
2021-01-10 17:54:29 -05:00
duck
3c86a55bea
Size -> GPRSize for a bit more clarity
2021-01-10 17:50:22 -05:00
duck
9290e19fc5
Fix JCXZ on X86
2021-01-10 17:46:03 -05:00
duck
d1b1e5ae07
pass DumpIR to TestHarnessRunner
2021-01-10 17:44:33 -05:00
Ryan Houdek
8028bfbdf4
Merge pull request #619 from FEX-Emu/skmp/gvisor-tests
...
Tests: Add gvisor tests
2021-01-10 08:19:50 -08:00
Stefanos Kornilios Mitsis Poiitidis
a29969139e
Tests/gvisor: Disable mlock_test
2021-01-10 18:12:56 +02:00
Stefanos Kornilios Mitsis Poiitidis
311aa2b811
Tests: Cleanup scripts, review feedback
2021-01-10 18:06:02 +02:00
Ryan Houdek
1f532752c9
Merge pull request #618 from FEX-Emu/skmp/distibuted-dispatch
...
Dispatch: Distributed Dispatch, IR Optimizations
2021-01-10 07:46:44 -08:00
Ryan Houdek
c2b1d68ed1
Disables visual debugger by default
...
This is currently broken and going to be broken more soon
2021-01-10 02:19:39 -08:00
Ryan Houdek
7ee6b68d03
Fixes 16bit ModRM rm decoding
...
When we are running in 32bit mode then it is possible to have an
instruction's modrm working as 16bit mode.
All one needs to do is prefix the instruction with an address size
override
2021-01-10 02:18:30 -08:00
Ryan Houdek
8f1978a33a
Shebang improvements
...
Fixes a problem where a space between the shebang and application
argument would result in us trying to execute a null program.
Additionally it now captures all the arguments passed in the shebang
header rather than just the application and first argument.
2021-01-10 02:15:51 -08:00
Ryan Houdek
22377d9c2c
Have EmulatedFiles support osrelease file
...
This was being checked by an application for kernel version. Which was
seeing too new of a kernel and using things that were unsupported.
Also removes the EmulatedMap which is an unnecessary lookup.
2021-01-10 02:14:44 -08:00
Ryan Houdek
66e98365eb
Captures fsstatat in filesystem overlay
...
Fixes Vulkan loader searching for vulkan json ICD files
2021-01-10 02:13:48 -08:00
Ryan Houdek
a29371dbf5
Fixes execve with rootfs
...
We need to check to see if the application wanting to be executed is in
the rootfs first. Otherwise we end up in a case where we either lose
tracking of applications in FEX, or applications fail to launch since
they don't exist in the global filesystem
2021-01-10 02:12:42 -08:00
Ryan Houdek
63cc8c67f2
Ensure idle wait ref counter is 1 on fork
...
Once we fork, we no longer have any threads to track in the process.
Ensures we don't spin forever on forked process
2021-01-10 02:09:37 -08:00
Stefanos Kornilios Mitsis Poiitidis
1dd307f34b
JIT/x64: Implement distributed dispatch, jumps instead of call/ret
2021-01-10 03:23:40 +02:00
Stefanos Kornilios Mitsis Poiitidis
7808948fae
Tests/gvisor: Disable some for the arm64-8.2 runner
2021-01-10 03:11:53 +02:00
Stefanos Kornilios Mitsis Poiitidis
e4870b6090
Tests/gvisor: Disable some more
2021-01-09 20:03:34 +02:00
Stefanos Kornilios Mitsis Poiitidis
3ab55898d8
Tests/gvisor: Disable some more
2021-01-09 19:57:26 +02:00