Commit Graph

30 Commits

Author SHA1 Message Date
Unknown W. Brackets
eeff110c0f jit: Improve and unify GPR spill logic.
Now the same logic on x86 and ARM, and handles HI/LO/etc. better.
2014-12-07 21:10:28 -08:00
Lioncash
15aa29d178 MIPSAnalyst: Pass strings by const reference. 2014-12-05 13:12:49 -05:00
Unknown W. Brackets
e3a04aa2d2 x86jit: Preload sp and similar regs used often.
This can help us avoid using a temporary.

Very tiny performance improvement.
2014-10-12 14:53:56 -07:00
Henrik Rydgård
3b1476c8ec MIPSTables: Annotate fp and hi/lo in/out more accurately than just "other"
Some typo fixes
2014-10-12 19:46:50 +02:00
Unknown W. Brackets
561d0e5ef9 Check more ops for changing memory in debugger. 2014-06-19 00:48:33 -07:00
Unknown W. Brackets
a7b9ce205b Enable function replacements by default.
So things like Star Ocean work, and game memcpy()'s to GPU work.

This will make game start on mobile a bit slower, though.  And there could
still be bugs so leaving as an option, but seems pretty stable.  Didn't
realize it wasn't enabled by default.
2014-06-07 00:13:45 -07:00
Unknown W. Brackets
72eb15f282 Speed up debug build hashfunc lookup. 2014-05-31 10:03:00 -07:00
Unknown W. Brackets
dde2f3ade6 Re-replace functions after loading a savestate.
Might need to clear before saving too... anyway, this makes testing a bit
easier for certain areas.

Also, correctly decrease downcount on x86.
2014-04-12 15:49:20 -07:00
Unknown W. Brackets
7c2d36e802 Don't add to the symbol map what was found there.
Wasn't hurting anything, but slight hit on performance.
2014-02-14 22:13:32 -08:00
Unknown W. Brackets
fe2b62c27d Make the "on change" checkbox for memchecks work.
But, for now, only on sw and similar instructions, the rest don't work
yet and just always break.
2014-01-26 11:57:39 -08:00
Henrik Rydgård
e5e17fbc6e More include cleanup. Hoping for very slightly faster compile times.. 2013-12-30 10:49:05 +01:00
Henrik Rydgård
00c32ddadb Mostly get rid of including "Globals.h" 2013-12-30 10:17:11 +01:00
Henrik Rydgard
455a73bba7 Bugfix replace function inlining (compilerPC needs to be increased). Misc. 2013-12-20 15:37:37 +01:00
Henrik Rydgard
2eab4aa1bf Play around with function replacement. Turned off by default of course. 2013-12-17 23:40:27 +01:00
Henrik Rydgard
2140892074 Initial preparations for ability to replace game functions with custom implementations.
Also auto-saves hashmap additions and reapplies the hashmap on function
rename so that if you rename a function that exists in several copies
they will all be labelled.

Note that actual function replacement is not activated yet.
2013-12-17 12:27:20 +01:00
Unknown W. Brackets
735968ba9b Add a setting to maintain a global func hash map.
This makes it easier to deal with functions that have a common
implementation between multiple games, e.g. libc funcs.
2013-12-06 00:11:49 -08:00
Kingcom
aae08173f1 Extend follow functionality of disassembly 2013-11-05 21:20:21 +01:00
Unknown W. Brackets
97aa1a631e Improve typesafety in the x86 regalloc. 2013-08-24 19:41:10 -07:00
Unknown W. Brackets
52d6080fb4 Pass in some analysis results, don't use yet. 2013-08-24 15:36:24 -07:00
Unknown W. Brackets
109ad17ac6 Use a typesafe struct for opcodes.
Also, correctly read delayslots using Read_Instruction on ARM.
2013-08-24 15:36:24 -07:00
Unknown W. Brackets
4495559b75 Clean up register usage analysis a bit. 2013-08-24 15:36:23 -07:00
Unknown W. Brackets
b37f09cedf Make MIPSInfo a struct for typesafety.
Found a bug in ReadsFromReg().
2013-08-24 13:22:10 -07:00
Kingcom
723f242f0c Rerwrote GetOpcodeInfo and adapted MipsTables for it 2013-07-30 11:29:30 +02:00
Kingcom
32f1ca91fd -add function to get relevant opcode information for the disassembly
-put it to use to clean up code
2013-07-30 10:14:56 +02:00
Unknown W. Brackets
1beb19f827 Clear the debug symbol map on shutdown.
Instead of polluting the next game.
2013-05-26 16:29:21 -07:00
Unknown W. Brackets
f7ebddc4a3 Whitelist common delay slot ops with outreg info. 2013-01-24 19:59:33 -08:00
Unknown W. Brackets
75cbe18afc Simplify nice delay slot detect, and yes for noop.
NOOP seems very common so this should already benefit speed a bit.
2013-01-24 08:29:32 -08:00
Unknown W. Brackets
3444fc8981 Avoid some memory writes on jr.
Should improve tight mips function loops a bit.
2013-01-24 01:23:50 -08:00
Henrik Rydgard
64cc573703 Switch to "GPL 2.0 or later" for various reasons. I wrote most of the code I imported from Dolphin (which is GPL2-but-not-later), so it should be OK. 2012-11-04 23:24:00 +01:00
Henrik Rydgard
4f7ad15758 Add snapshot of the whole source code. 2012-11-01 16:19:01 +01:00