121 Commits

Author SHA1 Message Date
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
Skyth
476dfb5307 Check if function call is within the same section. 2024-09-18 22:33:45 +03:00
Skyth
39a0b6ab4d Scan direct calls to find functions. 2024-09-18 22:13:24 +03:00
Skyth
3cd6886825 Change SymbolComparer to not care about symbol size. 2024-09-18 20:39:05 +03:00
Skyth
c250917792 A bunch of temporary hardcoded function address checking. 2024-09-18 18:53:10 +03:00
Skyth
55a551362b Check if there is an identical file before saving. 2024-09-18 16:04:52 +03:00
Skyth
182b9a5060 Compile static instead of shared. 2024-09-18 15:29:15 +03:00
Skyth
06aeb62472 Add a sample project for compiling the recompiled functions. 2024-09-18 15:19:49 +03:00
Skyth
5a16d14d30 Saving to separate files. 2024-09-18 13:31:37 +03:00
Skyth
618cc75198 Resort to function calls in switch statements if necessary & print errors for unresolved symbols. 2024-09-18 12:07:50 +03:00
Skyth
e0cb6c7903 Implement switch case generation. 2024-09-18 11:37:50 +03:00
Skyth
fc43264f72 Uncomment switch analyser. 2024-09-18 10:41:45 +03:00
Sajid
594a339a77 Add label count by 1 2024-09-18 13:32:30 +06:00