Paris Oplopoios
d9f287eaa2
Fix fmt error ( #1150 )
2024-09-29 14:02:46 +02:00
Paris Oplopoios
65bd62e98b
Reduce assert to a warning ( #1115 )
2024-09-28 15:44:07 +03:00
Paris Oplopoios
23bf8bf5e7
Patch insertq
( #635 )
...
* Patch `insertq`
* Don't clobber flags, fix asserts a bit
* Format code
* Fixup some edge cases
* A couple nits
* Remove extraneous space
2024-09-24 17:03:32 +03:00
Paris Oplopoios
5799091044
Patch extrq
( #943 )
...
* Use a singleton for instruction decoding
* Use singleton class
* Patch `EXTRQ`
* Fixup signal context functions
* Update CMakeLists.txt
---------
Co-authored-by: georgemoralis <giorgosmrls@gmail.com>
2024-09-23 19:19:52 +03:00
squidbus
28ec489dbe
cpu_patches: Revert to ahead-of-time patching on Linux for now. ( #949 )
2024-09-17 00:53:41 +03:00
squidbus
75a4df53a5
cpu_patches: Patch just-in-time using signal handlers. ( #852 )
...
* cpu_patches: Patch just-in-time using illegal instruction handler.
* core: Add common signal dispatch system and use for on-demand TCB patches.
* page_manager: Re-add userfaultfd implementation.
2024-09-15 23:48:34 +03:00
offtkp
f31c92ffd1
Get rid of unnecessary jump
2024-09-04 12:31:12 +03:00
Paris Oplopoios
42ab101908
Set CF correctly on BLSR/BLSMSK patch ( #724 )
...
* Set CF correctly on BLSR patch
* Set CF correctly on BLSMSK patch
2024-09-03 21:40:46 +03:00
Paris Oplopoios
cfe49fbfba
Preserve flags on some patched instructions ( #720 )
...
* Preserve flags on some patched instructions
* Move flag saving to Save/RestoreContext
2024-09-03 20:41:35 +03:00
Paris Oplopoios
f4ff0d493c
Set CF correctly on BLSI patch ( #722 )
...
* Set CF correctly on BLSI patch
* Remove redundant CLC
2024-09-03 20:41:22 +03:00
squidbus
9e5047947b
macos: Remove need for TLS patch by storing TCB pointer in FS.
2024-09-01 02:22:42 -07:00
squidbus
61db246c5e
core: Fix CPU patch stack issues
2024-08-30 20:47:07 -07:00
squidbus
a17150960f
Add patches for F16C instructions under Rosetta 2.
2024-08-29 17:31:25 -07:00
Vinicius Rangel
361412031c
fix tls patch on windows ( #328 )
...
* fix tls patch on windows
based on TlsGetValue in kernel32.dll
* fix tls patch on windows for expansion slots
2024-07-27 20:16:21 +03:00
squidbus
615f4e770f
Support RIP relative memory operands in patched instructions.
2024-07-21 22:36:12 +03:00
squidbus
26e0fc6ad5
Only patch BMI1 instructions under Rosetta 2.
2024-07-21 22:36:12 +03:00
squidbus
f943ce2710
Address review comments around memory and patches.
2024-07-21 22:36:12 +03:00
squidbus
d9231b239c
Migrate TLS patches to new patching system.
2024-07-21 22:36:12 +03:00