183 Commits

Author SHA1 Message Date
Skyth
183027d563 Remove hardcoded recompiler, load TOML file for configuration. 2024-10-01 00:09:18 +03:00
Sajid
54cb41c4db Recompiler: Fix accidental impl linkage 2024-09-30 20:41:32 +06:00
Sajid
8d8346c2a2 Recompiler: Use implementation aliases 2024-09-30 18:45:07 +06:00
Sajid
c4de70262f Recompiler: write ppc_context.h 2024-09-30 13:39:47 +06:00
Sajid
9d74b4ecb4 Add additional xbox structures 2024-09-30 10:55:30 +06:00
Sajid
ae0fb21f08 Fix xex header parser 2024-09-30 09:43:50 +06:00
Sajid
3a8c9941f7 don't build sample and tests if included as a library 2024-09-30 09:06:09 +06:00
Sajid
3e3c62ad82 CMakeLists fixes for dependants 2024-09-28 22:57:35 +06:00
Sajid
6898a7d97d Named recompiled entry point 2024-09-28 22:44:27 +06:00
Skyth
c83c3d51bc Fix vcsxwfp128 disassembly error. 2024-09-28 18:54:04 +03:00
Skyth
5414070cd3 Change vrefp/vrsqrtefp to precise variants for now. 2024-09-28 13:53:42 +03:00
Skyth
d5f44c11c5 Don't print save/restore calls when non volatile registers as local variables option is enabled. 2024-09-27 19:26:13 +03:00
Skyth
acd49010e6 Remove MSVC macros & implement weak linking properly for clang. 2024-09-27 18:47:35 +03:00
Skyth
e025cd65cd Saturate D3D color. 2024-09-27 15:40:46 +03:00
Skyth
2ae23e7e5e Change arch to haswell. 2024-09-27 12:37:25 +03:00
Skyth
8639a690e5 Make some FPU operations more explicit. 2024-09-27 12:37:12 +03:00
Skyth
edbb86913b Disable buffer overrun checks. 2024-09-26 18:31:56 +03:00
Skyth
dcc772c184 Detect identical flush mode calls and don't print them. 2024-09-26 17:24:04 +03:00
Skyth
7fa7ff161f Add a read barrier after every label. 2024-09-26 16:52:18 +03:00
Skyth
261e8c1d60 Print only actually used labels. 2024-09-26 10:44:16 +03:00
Skyth
70497754d9 Add several config options for more efficient code generation. 2024-09-25 21:23:01 +03:00
Skyth
746947455d Push the updated PPC context header. 2024-09-24 14:48:50 +03:00
Skyth
954d11c65e Handle setjmp/longjmp explicitly. 2024-09-24 14:48:15 +03:00
Sajid
4453d56df0 Import lookup fixup 2024-09-24 16:30:26 +06:00
Sajid
6bddfaa23d Use win32 style __imp__ prefix on xbox imports 2024-09-24 16:05:11 +06:00
Sajid
f6d7c97986 Define xbox exports on load 2024-09-24 16:02:41 +06:00
Skyth
9a7caef9af Make a few failed Xenia PPC tests pass. 2024-09-24 10:48:35 +03:00
Skyth
f9ea8f5f53 Fix bit shifting mistake. 2024-09-24 00:36:19 +03:00
Skyth
e2835efa72 Check for redundant operations. 2024-09-23 22:27:02 +03:00
Skyth
aef470a0f0 Handle float to integer conversion overflow. 2024-09-23 18:24:50 +03:00
Skyth
7f43723ff0 Use bitwise operations for fabs/fnabs/fneg. 2024-09-23 17:25:11 +03:00
Skyth
989ed13d04 Add a check for missing switch cases. 2024-09-23 15:42:27 +03:00
Skyth
175c0de2ac Fix weird usage of the base variable. 2024-09-23 15:33:29 +03:00
Skyth
255ff2170e Apply bitmasks in vector shift operations. 2024-09-23 01:18:17 +03:00
Skyth
e366e1eea9 Avoid double byte swaps in interlocked functions. 2024-09-23 00:07:38 +03:00
Skyth
ad4e6b010e Enable strict math, adjust vector conversions. 2024-09-22 23:54:17 +03:00
Skyth
1914b941a2 Fix tests. 2024-09-22 19:58:22 +03:00
Skyth
510cff56f2 Fix import thunk resolving. 2024-09-22 13:32:38 +03:00
Skyth
918e09d380 Use clang-cl for all projects & decrease recompiled CPP count. 2024-09-22 12:50:11 +03:00
Skyth
126d5c3aee Fix a few mistakes. 2024-09-22 11:26:56 +03:00
Skyth
1bfeb0a7c4 Handling float rounding. 2024-09-22 00:07:15 +03:00
Skyth
4d6eac1c24 Add recompiler for Xenia PPC tests. 2024-09-21 21:47:34 +03:00
Skyth
79354a9a52 Split recompiler code. 2024-09-21 16:59:55 +03:00
Skyth
c0d28468d0 Yet even more inaccuracy fixes. 2024-09-21 16:12:47 +03:00
Skyth
45a490c245 Even more inaccuracy fixes. 2024-09-21 00:12:37 +03:00
Skyth
fc13c684ba Handle zero flushing. 2024-09-20 18:05:13 +03:00
Skyth
fb97a569f9 Further inaccuracy fixes. 2024-09-20 17:01:57 +03:00
Skyth
0e59052324 Implement more of the vector instructions. 2024-09-19 22:56:13 +03:00
Skyth
f4d342a623 Fix more instruction inaccuracies. 2024-09-19 15:23:51 +03:00
Skyth
11e4d24574 Fix instruction inaccuracies. 2024-09-19 13:54:13 +03:00