Commit Graph

1090 Commits

Author SHA1 Message Date
RSDuck 5338c28f40 load register only if needed
- do thumb bl long merge in the first step
- preparations for better branch jitting
2020-04-26 13:05:02 +02:00
RSDuck 2ef776883f more fixes for flag optimisation
+ small cycle counting optimisation
2020-04-26 13:05:02 +02:00
RSDuck 5202c505ab remove debug printing 2020-04-26 13:05:01 +02:00
RSDuck ea562d2fec fixes for flag optimisation 2020-04-26 13:05:01 +02:00
RSDuck b5dda7d6e2 add ui confirm dialog for linux 2020-04-26 13:05:00 +02:00
RSDuck 5ea91b8a03 optimise away unneeded flag sets
- especially useful for thumb code and larger max block sizes
- can still be improved upon
2020-04-26 13:05:00 +02:00
RSDuck 03ab7f1645 fix jit block size not changeable 2020-04-26 13:04:59 +02:00
RSDuck 3001d9492c abandon pipelining on jit
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.
2020-04-26 13:04:59 +02:00
RSDuck ec21172cd9 fix register alloc for half word loads
fixes Mega Man Star Force 2 with cheat applied
it probably used a pc relative load which were interpreted as branches
2020-04-26 13:04:58 +02:00
RSDuck 5e443e7962 remove unneeded dolphin code, C++11 static_assert 2020-04-26 13:04:57 +02:00
Arisotura dcf21c98f2 add the JIT shito to the Codeblocks project 2020-04-26 13:04:56 +02:00
RSDuck f31976fed0 jit: fix RSC 2020-04-26 13:03:12 +02:00
RSDuck 707da1f4c7 remove debug printf 2020-04-26 13:03:11 +02:00
RSDuck 51b6b7a7d5 fix uninitialised memory mapping 2020-04-26 13:03:11 +02:00
RSDuck 4a0f6b3b4b jit: fix thumb hi reg alu and mcr halt
+ mcr/mrc aren't always, msr_imm is never unk on ARM7
2020-04-26 13:03:10 +02:00
RSDuck 9d180c7bbc jit: decrease blockcache AddrMapping size for ARM9 2020-04-26 13:03:09 +02:00
RSDuck be8846e31a jit: fix misc static branch things 2020-04-26 13:03:08 +02:00
RSDuck 54985be157 jit: LDM/STM keep proper stack alignment 2020-04-26 13:03:08 +02:00
RSDuck 8ddc4d5904 jit: fix BLX_reg with rn=lr 2020-04-26 13:03:07 +02:00
RSDuck 411fb57c07 jit: add compile option 2020-04-26 13:03:06 +02:00
RSDuck 360317be8c jit: remove unnessary files from dolphin 2020-04-26 13:03:04 +02:00
RSDuck 9d76d63af5 jit: make everything configurable 2020-04-26 13:03:03 +02:00
RSDuck dcf6e1cad2 jit: fix linux 2020-04-26 13:03:01 +02:00
RSDuck 6f0dcad4f6 jit: fix wrongly placed const 2020-04-26 13:03:01 +02:00
RSDuck 9b3c14b58a jit: SMULL and SMLAL 2020-04-26 13:03:00 +02:00
RSDuck 2efab201e9 jit: LDM/STM finally(!) working + MUL, MLA and CLZ 2020-04-26 13:02:59 +02:00
RSDuck c58fdbd66b jit: branch instructions 2020-04-26 13:02:58 +02:00
RSDuck ff97211114 jit: thumb block transfer working
also pc and sp relative loads and some refactoring
2020-04-26 13:02:57 +02:00
RSDuck 2c44bf927c JIT: most mem instructions working
+ branching
2020-04-26 13:02:57 +02:00
RSDuck 5f932cdf48 JIT: compilation of word load and store 2020-04-26 13:02:56 +02:00
RSDuck ff901141e7 jit: correct cycle counting for thumb shift by reg 2020-04-26 13:02:55 +02:00
RSDuck ebce9f035f JIT: implemented most ALU instructions 2020-04-26 13:02:55 +02:00
RSDuck c5c342c009 JIT: base
all instructions are interpreted
2020-04-26 13:02:53 +02:00
Arisotura d2f05cd30f prepare JIT beta branch 2020-04-26 13:02:26 +02:00
Arisotura 5ef71181c8 goodbye old CodeBlocks project 2020-04-25 15:04:46 +02:00
Arisotura 1c756843f0
Merge pull request #588 from rzumer/gh-master
Disable CI on non-master branches
2020-04-15 11:30:14 +02:00
Arisotura 1b5e53f1df
Merge pull request #601 from nadiaholmquist/fix/msys2-sdl
Fix build with latest MSYS2 SDL2 package
2020-04-15 11:23:16 +02:00
Arisotura 0701257546 add credit for the icon 2020-04-14 23:32:47 +02:00
Nadia Holmquist Pedersen 4b57416552 Windows: explicitly link gdi32 2020-04-12 17:15:39 +02:00
Nadia Holmquist Pedersen a6150a9a9e Use pkg-config to find SDL2 on Windows 2020-04-12 16:59:06 +02:00
Arisotura ec6e4a2d1e GPU3D: more accurate viewport transform (emulate quirk with W greater than 0xFFFF) 2020-04-12 16:40:08 +02:00
Arisotura 33b4cdb077 GPU3D: implement zero-dot W limit (DISP_1DOT_DEPTH) 2020-04-12 14:01:43 +02:00
Arisotura 4c560f3324 GPU3D: swap vin and vout during clipping, giving results that are closer to hardware.
fixes #598 and also fixes #379
2020-04-11 23:56:36 +02:00
Arisotura d412630a49 should probably be a strncmp() and not strncasecmp() 2020-03-30 13:28:51 +02:00
Arisotura d2cae446b9 Merge branch 'master' of https://github.com/Arisotura/melonDS 2020-03-30 11:05:09 +02:00
Arisotura 104b2a03aa properly handle ROMs with encrypted secure area 2020-03-30 11:04:50 +02:00
Raphaël Zumer fa1558319b Disable CI on non-master branches 2020-03-21 18:40:44 -04:00
Arisotura 57c1e6587e
Merge pull request #581 from niemand-deu/patch-1
Small tweak to the missing files error message.
2020-02-27 14:59:31 +01:00
niemand-deu ab911571e0
Update main.cpp 2020-02-26 03:56:03 +01:00
Arisotura 5f99a68151 detect whether we are running the game 2020-02-24 18:31:44 +01:00