| Commit message (Collapse) | Author | Age |
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
fixes dslinux
|
|
|
|
|
|
|
|
|
| |
- better handle LDM/STM in reg alloc
- unify Halted and IRQ in anticipation for branch inlining
- literal optimisations can be disabled in gui
- jit blocks follow simple returns
- fix idle loop detection
- break jit blocks on IRQ (fixes saving in Pokemon White)
|
|
|
|
|
|
|
| |
fixes Dragon Quest IX
move code with side effects out of assert, fixes release build
(thanks to m4wx for this one)
also remove some leftovers of jit pipelining
|
|
|
|
|
|
|
|
|
| |
- more reliable code invalidation detection
- blocks aren't stopped at any branch, but are being followed
if possible to get larger blocks
- idle loop recognition
- optimised literal loads, load/store cycle counting
and loads/stores from constant addresses
|
|
|
|
| |
+ small cycle counting optimisation
|
| |
|
|
|
|
|
| |
- especially useful for thumb code and larger max block sizes
- can still be improved upon
|
|
|
|
|
| |
fixes Mega Man Star Force 2 with cheat applied
it probably used a pc relative load which were interpreted as branches
|
|
|
|
| |
+ mcr/mrc aren't always, msr_imm is never unk on ARM7
|
| |
|
| |
|
| |
|
|
|
|
| |
also pc and sp relative loads and some refactoring
|
|
|
|
| |
+ branching
|
|
all instructions are interpreted
|