| Commit message (Collapse) | Author | Age |
|
|
|
|
|
|
|
| |
- fix fastmem problems on linux
- small fix memory leak
- SlowWrite functions always take in a 32-bit variable so that the C compiler knows that the values aren't necessary zero extended
- a few other stylistic things
- handle SIGBUS as well (for macos)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Fix incorrect/questionable assert() usage
Originally reported by https://lgtm.com/projects/g/Arisotura/melonDS/?mode=tree&ruleFocus=2159000700,
but also includes a bunch of other fixes.
* Fix some `printf` warnings
Rule https://lgtm.com/projects/g/Arisotura/melonDS/?mode=tree&ruleFocus=2160310550
* Remove useless check
It is never passed thanks to `if (num_in < 1) {...; return}` before
Rule https://lgtm.com/projects/g/Arisotura/melonDS/?mode=tree&ruleFocus=2154840804
* Add missing header guard, rename other to avoid conflicts
Rule https://lgtm.com/projects/g/Arisotura/melonDS/?mode=tree&ruleFocus=2163210746
* Make DSi_SDDevice destructor virtual
Rule https://lgtm.com/projects/g/Arisotura/melonDS/?mode=tree&ruleFocus=2158670642
* Use thread-safe localtime_r, assign `time` result directly
Rule https://lgtm.com/projects/g/Arisotura/melonDS/?mode=tree&ruleFocus=2154840805
* Fix MinGW build
It needs _POSIX_THREAD_SAFE_FUNCTIONS to export `localtime_r`
|
|
|
|
|
|
|
| |
- savestates used to read a four bytes from a single byte value
- a few unassigned variables
- some other things
- also make the ROR macro an inline function
|
|
|
|
| |
and (hopefully) make SIGSEGV handler work for aarch64 linux
|
| |
|
| |
|
| |
|
|
|
|
| |
enable single register block load/store optimisations for x64 aswell
|
| |
|
| |
|
|
|
|
| |
currently system-v only
|
| |
|
|
|
|
| |
also a small mistake with msr
|
|
|
|
| |
should fix linux build
|
| |
|
|
|
|
| |
fixes dslinux
|
| |
|
|
|
|
| |
fixes spanish Pokemon HeartGold
|
|
|
|
|
|
|
|
|
| |
- 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
|
|
|
|
|
| |
fixes Golden Sun Dawn
this makes the cpu state incompatible between interpreter and JIT. That's why switching cpu mode requires a restart(not requiring is stupid anyway) and the pipeline is manually filled when making a save state.
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
also pc and sp relative loads and some refactoring
|
|
|
|
| |
+ branching
|
| |
|
|
|