87 Commits

Author SHA1 Message Date
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
Sajid
6057ffe167 Update address for __C_specific_handler 2024-09-18 13:29:08 +06:00
Sajid
35560a0cd0 oop 2024-09-18 13:14:31 +06:00
Sajid
83e4da49e3 Scan for jumptables 2024-09-18 13:07:07 +06:00
Skyth
7d7ab43bbc Vector comparison instructions. 2024-09-17 21:32:13 +03:00
Skyth
34d44c3c0a Vector permute, splat and shift instructions. 2024-09-17 19:56:44 +03:00
Skyth
04efd27f62 Some vector load & store instructions. 2024-09-16 20:33:46 +03:00
Skyth
ee4cab12b8 Implement even more vector instructions & add missing ones. 2024-09-16 16:54:31 +03:00
Skyth
3a887e6e2c Implement yet even more instructions. 2024-09-16 14:18:19 +03:00
Skyth
2dd35c4611 Implement bitwise rotation instructions. 2024-09-15 22:04:40 +03:00
Skyth
7e6b92ac6e Fix memset/bdnzf compilation error. 2024-09-15 20:30:56 +03:00
Skyth
8d4d99e644 Implement some more vector instructions. 2024-09-15 19:48:15 +03:00
Skyth
d4c267c123 Implement some vector instructions. 2024-09-15 17:36:33 +03:00
Skyth
d2c5000af1 Implement more instructions. 2024-09-15 15:32:29 +03:00
Skyth
26122def54 Handle "r0 as 0" cases. 2024-09-14 23:17:51 +03:00
Skyth
df78800c8d Fix symbol find function. 2024-09-14 19:30:26 +03:00
Skyth
fc1efc5a37 Implement direct function calls & do prints in memory. 2024-09-14 19:10:41 +03:00
Skyth
b598d09d4d Fix a few conversion mistakes. 2024-09-14 11:17:55 +03:00
Skyth
6c2a256c8a Control register calls. 2024-09-13 22:08:56 +03:00
Skyth
8f88bac018 Handle tail calls. 2024-09-13 21:54:59 +03:00
Skyth
29d1c0822c Add/subtract with carry instructions. 2024-09-13 21:36:25 +03:00
Sajid
ed81fec868 Scan all of swa functions 2024-09-13 20:54:18 +06:00
Sajid
3d5f05f529 Merge branch 'main' of https://github.com/hedge-dev/PowerRecomp 2024-09-13 20:53:21 +06:00
Sajid
2da90cb763 Stricter symbol matching 2024-09-13 20:53:06 +06:00
Skyth
9db7909bbd Convert calls to indirect calls for the time being. 2024-09-13 17:32:54 +03:00
Sajid
27f6604072 bctr and conditional returns 2024-09-13 20:27:05 +06:00
Skyth
cbc28c6451 Implement a bunch of load/store instructions. 2024-09-13 16:00:37 +03:00
Skyth
996fa013d0 Implement float comparison instruction. 2024-09-13 15:27:10 +03:00
Skyth
e78e5b7534 Implement a good chunk of float instructions. 2024-09-13 15:17:20 +03:00
Sajid
87a74e2001 Handle invalid instructions as end block 2024-09-13 16:13:37 +06:00
Sajid
5cef220e9f Implement xex imports 2024-09-13 16:13:19 +06:00
Skyth
cc212f4058 Implement store instructions. 2024-09-12 22:57:31 +03:00
Skyth
9d6ccc0593 Add self note for the future. 2024-09-12 21:53:53 +03:00
Skyth
27dd0aace7 Implement more instructions. 2024-09-12 21:50:36 +03:00
Skyth
f96d2c2879 Implement periodt variant of instructions. 2024-09-12 18:59:24 +03:00