Commit Graph

5561 Commits

Author SHA1 Message Date
Yang Liu
52ba725fa5
Reworked on mmap address alignments for a performance regression (#2057) 2024-11-22 12:06:55 +01:00
ptitSeb
a39249454e Slightly better way to decode wrappers 2024-11-21 15:28:30 +01:00
ptitSeb
c1f2304c88 Small fix for XSAVE/XRSTOR opcodes ([DYNAREC] too) 2024-11-21 12:08:43 +01:00
Yang Liu
85c6e28d47
[LA64_DYNAREC] Added more opcodes for JDK (#2055) 2024-11-21 11:44:47 +01:00
Yang Liu
d1a253f469
[DYNAREC] Reuse strongmem infra for all backends (#2052) 2024-11-21 08:06:47 +01:00
ptitSeb
6aa57f5c73 [RCFILE] More adjustments with new strongmem 2024-11-20 21:02:08 +01:00
ptitSeb
023aeae9e6 Removed another debug leftover 2024-11-20 20:33:47 +01:00
ptitSeb
38880ab5a4 [TRACE] Don't try to decode a bridge if memory is not mapped or un-readable 2024-11-20 20:03:48 +01:00
ptitSeb
4e19324177 Removed a debug leftover 2024-11-20 20:03:10 +01:00
Yang Liu
9757d1b67a
[ARM64_DYNAREC] More optimizations on strongmem emulation (#2051) 2024-11-20 18:59:20 +01:00
theofficialgman
5422b108af
update pressure_vessel function with additional valid BOX86_LD_LIBRARY_PATH (#2050) 2024-11-20 18:15:03 +01:00
ptitSeb
0d650b183f [RCFILE] Addjusted some profile with new strongmem capabilities 2024-11-20 12:47:56 +01:00
Yang Liu
fa432bb9d1
[ARM64_DYNAREC] Added weakbarrier=2 to disable last write barriers (#2049) 2024-11-19 21:22:55 +01:00
Yang Liu
81e4e26dc5
[ARM64_DYNAREC] Re-enable weakbarrier for dmb.ishst (#2048) 2024-11-19 19:59:43 +01:00
Yang Liu
4f6a66f9c6
[CI] Generate and upload .wcp file for Winlator (#2045)
* [CI] Generate and upload .wcp file for Winlator

* patch box64

* test box64 before the patch

* opt out static build

* typos
2024-11-19 13:49:35 +01:00
Yang Liu
127d273ada
[DYNAREC] Reworked strong memory emulation (#2043)
* [ARM64_DYNAREC] Reworked strong memory emulation

* Simplify

* [RV64,LA64_DYNAREC] Reworked strong memory emulation

* forgot this

* more tweaks
2024-11-19 09:39:57 +01:00
liuli
469d4f81eb
[WRAPPER]my_dbus_message_get_args() args type error (#2042)
* [WRAPPER]my_dbus_message_get_args() args type error

* [WRAPPER]my_dbus_message_get_args() args type error
2024-11-19 08:05:40 +01:00
ptitSeb
8f08a14115 Improved Signal handling ([ARM4_DYNAREC] too) 2024-11-18 17:18:41 +01:00
ptitSeb
4ac43047d0 [BOX32] Fixed previous commit 2024-11-18 11:14:07 +01:00
ptitSeb
4257fdded3 [BOX32] Fixed long double handling on printf like functions 2024-11-18 11:07:44 +01:00
ptitSeb
56298870f6 [ARM64_DYNAREC] Only propagate native flags if at least 1 opcode consume them 2024-11-17 15:14:13 +01:00
ptitSeb
48354185dd [WRAPPER] Added last 2 wrapped function for libexpat 2024-11-17 11:45:30 +01:00
ptitSeb
5f0cbcf26d [WRAPPER] Fixed an isue with __iso99_swcanf wrapped function 2024-11-17 11:45:00 +01:00
ptitSeb
ffc875c2d6 [WRAPPER] Added wrapped libzstd.so.1 support, with new wrapperhelper 2024-11-17 11:30:30 +01:00
ptitSeb
8a180e3892 [ARM64_DYNAREC] Cancel native flags when an opcode use native flags not fully covered by the generated ones 2024-11-17 11:02:21 +01:00
ptitSeb
c4d3d734b1 [DYNAREC] Mark existing block as dirty when re-creating a memory block 2024-11-17 11:00:28 +01:00
ptitSeb
6e8c244b77 [TRACE] Use lower case hex on rbtree 2024-11-17 10:59:34 +01:00
ptitSeb
ac2ed68228 [WRAPPER] Added 2 more wrapped function to libcrypto.so.3 (for #1271) 2024-11-16 14:39:48 +01:00
ptitSeb
fb27c89282 [WRAPPER][BOX32] Fixed a few wrapped functions (for hl2) 2024-11-16 14:31:46 +01:00
ptitSeb
74bed6edcb [ARM64_DYNAREC] Fixed potential issues with 0F A3/AB/B3/BB opcodes 2024-11-16 14:31:20 +01:00
ptitSeb
49a854fa7e [INTERPRETER] Fixed potential issue with 0F A3 opcode 2024-11-16 13:44:36 +01:00
ptitSeb
5adabbbcaa [ARM64_DYNAREC] Small optim in emit_sar8c helper 2024-11-16 13:23:23 +01:00
ptitSeb
42eae3e1b4 Expose a few more CPU features 2024-11-16 12:48:12 +01:00
ptitSeb
518d2b0129 Removed a debug leftover 2024-11-16 12:19:14 +01:00
ptitSeb
bc8c786b80 Smal adjustment in singal handling for no-execution error 2024-11-16 12:16:51 +01:00
Yang Liu
5ab8a6f6f4
[WRAPPER] Fixed myStackAlignGVariantNew and refined the test too (#2038) 2024-11-15 21:37:36 +01:00
ptitSeb
385a31ec11 [ARM64_DYNAREC] Various fixes and improvments to a few random opcodes 2024-11-15 21:05:41 +01:00
ptitSeb
5c49954f69 [DYNAREC] Zero'd upper 32bits of regs when switching to 32bits from 64bits 2024-11-15 21:05:06 +01:00
ptitSeb
6ce7a1ba1f [INTERPRETER] Zero'd upper 32bits of regs when switching to 32bits from 64bits 2024-11-15 21:03:59 +01:00
ptitSeb
8c1335626f [ARM64_DYNAREC] A few fixes to 8/16bits logic/math opcodes 2024-11-15 15:34:22 +01:00
ptitSeb
8b0eec097b [TRACE] More info on signal 2024-11-15 15:34:00 +01:00
ptitSeb
a39c8aa5c5 [INTERPRETER] Some cleanup on base logic/math/shift operations 2024-11-15 14:37:16 +01:00
ptitSeb
27745ceebb Added support for RDMSR, just in case 2024-11-15 14:36:42 +01:00
ptitSeb
64b213fe42 [ARM64_DYNAREC] Try to not call UpdateFlags when switching to a DFNONE state but dfnone is not needed 2024-11-15 14:27:43 +01:00
ptitSeb
eaca84e9ba [ARM64_DYNAREC] Very small change on on emit_rol32c helper 2024-11-15 14:26:25 +01:00
xctan
bca0f4d66d
[RV64_DYNAREC] Added more MMX opcodes for vector (#2037)
* [RV64_DYNAREC] Added 0F 74-76 PCMPEQB/W/D opcodes

* [RV64_DYNAREC] Added 0F 64-66 PCMPGTB/W/D opcodes

* [RV64_DYNAREC] Added 0F E1-E2 PSRAW/D opcodes

* [RV64_DYNAREC] Added 0F 6E MOVD opcode

* [RV64_DYNAREC] Added 0F 73 /2 PSRLQ opcode

* [RV64_DYNAREC] Added 0F 73 /6 PSLLQ opcode
2024-11-15 10:11:11 +01:00
ptitSeb
8c17a37d1a [ARM64_DYNAREC] Reworked 8/16/32/64bits TEST opcodes 2024-11-14 18:54:40 +01:00
xctan
979a3232f9
[RV64_DYNAREC] Added more MMX opcodes for vector (#2035)
* [RV64_DYNAREC] Added 0F 68 PUNPCKHBW opcode

* [RV64_DYNAREC] Added 0F 69 PUNPCKHWD opcode

* [RV64_DYNAREC] Added 0F 6A PUNPCKHDQ opcode

* [RV64_DYNAREC] Updated 0F 68-69 PUNPCKHBW/WD opcodes

* [RV64_DYNAREC] Added 0F 60 PUNPCKLBW opcode

* [RV64_DYNAREC] Added 0F 61 PUNPCKLWD opcode

* [RV64_DYNAREC] Added 0F 62 PUNPCKLDQ opcode

* [RV64_DYNAREC] Simplified MMX PUNPCK{L,H}{BW,WD,DQ}
2024-11-14 17:41:28 +01:00
Yang Liu
47dbbe030c
[DYNAREC] Added a experimental BOX64_DYNAREC_WEAKBARRIER option (#2033)
* [DYNAREC] Added a experimental BOX64_DYNAREC_WEAKBARRIER option

* Added it to the RCFILE
2024-11-14 17:41:12 +01:00
ptitSeb
d05e719ce3 [ARM64_DYNAREC] Refactor 8/16/32/64bits CMP and REP CMPS/SCAS opcodes 2024-11-14 16:43:01 +01:00