17 Commits

Author SHA1 Message Date
Dani Messerman
aa830b5cf3 Rebase fixes 2015-05-10 22:44:17 +03:00
Dani Messerman
03527aba71 Tab to space 2015-05-10 22:33:16 +03:00
Dani Messerman
be7070d093 Added str 2015-05-10 22:32:35 +03:00
Dani Messerman
70463da199 Added instruction counting 2015-05-10 22:32:34 +03:00
Dani Messerman
3ae4d8b646 Added arithmetic instructions (add, sub, and, or, ...) 2015-05-10 22:32:33 +03:00
Dani Messerman
840ab06561 Added Thumb rejection. Can run retail games now. 2015-05-10 22:32:33 +03:00
Dani Messerman
1b87113184 Added an option to verify the output. This is done by stopping after each instruction and checking what the interpreter produced vs. the binary translation. 2015-05-10 22:32:32 +03:00
Dani Messerman
9c3c193a4c Added block partitioning to make optimizations faster and hopefully better 2015-05-10 22:32:32 +03:00
Dani Messerman
22fbe294be Added some shifts 2015-05-10 22:32:30 +03:00
Dani Messerman
7882bb2c4c Added bl, blx
17% of the instructions in 3dscraft
2015-05-10 22:32:29 +03:00
Dani Messerman
7b8fd8daad Added stats.
9.8% of the instructions in 3dscraft.
2015-05-10 22:32:28 +03:00
Dani Messerman
8331f6b3cc Added TBAA 2015-05-10 22:32:28 +03:00
Dani Messerman
d7367172e8 Added block linking
Each time an instruction finishes it jumps to the next one instead of going back to the switch block
2015-05-10 22:32:27 +03:00
Dani Messerman
3864675b6d New class for machine state 2015-05-10 22:32:27 +03:00
Dani Messerman
3731d28ca9 Generates mov reg, reg 2015-05-10 22:30:53 +03:00
Dani Messerman
a91f373f36 Basic disassembler 2015-05-10 22:30:52 +03:00
Dani Messerman
6c7551d5f3 Module generation stubs 2015-05-10 22:30:51 +03:00