Commit Graph

491 Commits

Author SHA1 Message Date
Adam
b3efaec8e6 Try and fix some of the smaller multiplication problems. I dont know if this is right. Seems to break when multiplying long * a casted int like field3228 2016-03-29 20:53:43 -04:00
Adam
a2352bdc19 Order guesses based on cardinality 2016-03-28 19:19:08 -04:00
Adam
fbb41000b8 ArrayLoad also isnt part of expressions 2016-03-28 18:41:28 -04:00
Adam
51ae836cd8 Add gamepack 19 2016-03-27 21:08:25 -04:00
Adam
8d022d216b Map invokespecial on objects that are under java/io 2016-03-27 19:38:15 -04:00
Adam
d58116b4ea Map java/lang/reflect/Field and Method 2016-03-27 19:16:25 -04:00
Adam
afcb4a1c36 Fix annotation mapper to map annotations on methods. Also fix lookup by constant classname. Theres more fields that i thought that aren't mapped, 4 2016-03-27 18:43:41 -04:00
Adam
d93317f662 Don't stop frames that can't step into static functions. It can happen if the same function steps into a static function multiple places which then steps into another static function at one place. Even though its been stepped into before it shouldn't stop execution of the top level function. 2016-03-27 18:17:40 -04:00
Adam
91289273fa Little cleanup 2016-03-27 18:11:45 -04:00
Adam
0462c4a1d1 Map both possibilities on ambiguous if statements anyway 2016-03-27 18:11:00 -04:00
Adam
f36a365659 Make msm work like smsm because classes aren't guaranteed to line up 2016-03-27 13:54:17 -04:00
Adam
b45ecd4996 Fix dup_x2 getOriginal 2016-03-27 13:52:57 -04:00
Adam
40725faa0a Map classes too when mapping fields/methods 2016-03-27 13:34:22 -04:00
Adam
37193b7a79 Fix refactor fail in modarith from earlier 2016-03-27 11:23:24 -04:00
Adam
e3a6310572 Get rid of most hard type comparisons in mapper 2016-03-27 10:44:55 -04:00
Adam
d7abcdf569 Remove ismappable which has never worked 2016-03-26 17:22:00 -04:00
Adam
41a1ffbae2 Reenable modarith 2016-03-26 17:09:36 -04:00
Adam
271fa6ba46 Insert getter/setters all at once 2016-03-26 16:46:20 -04:00
Adam
4485681a28 modarith test 2016-03-26 10:43:26 -04:00
Adam
fd8af8732d Unused class test 2016-03-25 22:11:19 -04:00
Adam
35628b4497 Rewrite field inliner 2016-03-25 22:10:26 -04:00
Adam
c22a9e43da Rewrite unused fields 2016-03-25 22:02:44 -04:00
Adam
e8c047aabe Cleanup 2016-03-25 21:55:06 -04:00
Adam
3444655f09 Rewrite constant parameter. A bit faster now. Can't tell if its right. Seems to compile. 2016-03-25 21:52:23 -04:00
Adam
5ef0be50bf Make unused parameters use VirtualMethods. This removes more parameters than before, I dont know if it is right. 2016-03-25 15:04:28 -04:00
Adam
0ed6456c60 Move virtual method lookup its own class as many things use it 2016-03-25 14:21:27 -04:00
Adam
bcbc87994a Unused params test, this is very slow. 2016-03-24 18:38:58 -04:00
Adam
b16fbd712e Constant parameter test, kind of slow though, 46s. 2016-03-24 17:25:16 -04:00
Adam
cbdf406434 Remove jump graph, isn't used except for some integrity checks, but it makes stuff overly complex. 2016-03-24 17:18:08 -04:00
Adam
d4a74501b7 Just run once 2016-03-24 15:13:11 -04:00
Adam
e73be15286 duh 2016-03-24 10:14:22 -04:00
Adam
2fdf2b47bc ise tests/cleanup. needs more optimizations. 2016-03-24 10:13:18 -04:00
Adam
3f91d272d6 Couple more simple tests 2016-03-24 10:12:37 -04:00
Adam
e8a5eba8f4 Rename unique test 2016-03-21 11:17:06 -04:00
Adam
9830f4a339 Move asm specific stuff to net.runelite.asm 2016-03-21 10:11:36 -04:00
Adam
488c11abfa Use internal classnames when injecting interfaces 2016-03-20 17:30:59 -04:00
Adam
9b1f5720b0 Only re-generate pool info for get/put/invoke instructions if something changes, otherwise it uses the pool info of the resolved field which isn't always the same 2016-03-20 17:30:31 -04:00
Adam
c79a344008 Make specific most things, so minimize jasmin diff so I can see the result of the injection easier.. 2016-03-20 17:29:45 -04:00
Adam
a97e7c283e Realized I can also use mapping importer to check mappings. This finds some discrepancies with the update RL mappings, but on manual inspection the RL mappings seem wrong. 2016-03-19 23:31:40 -04:00
Adam
3cc6255596 Rebuild pool when writing instrutions to fix previous corruption with the newarray stuff. Run classes through ow2 asm to generate stack maps (and maxs for fun) since I don't want to generate my own stackmaps. 2016-03-19 12:45:56 -04:00
Adam
3d1ae24d73 Well this seems to work a little better. This is totally made up. 2016-03-18 23:09:34 -04:00
Adam
5a0c8ee21d arraystore: map values field 2016-03-18 20:41:52 -04:00
Adam
39e2c0420f Crap. 2016-03-18 20:08:39 -04:00
Adam
4ea2d8d632 Fix if field mapper to take static/class name into consideration 2016-03-18 16:12:04 -04:00
Adam
a2fe796306 Add gamepack 18 2016-03-17 08:55:23 -04:00
Adam
4651c30abc Inject test now runs with all api methods found. 2016-03-12 13:37:40 -05:00
Adam
31dc462e55 Redirect supercalls in obfuscated overrides. 2016-03-11 22:30:48 -05:00
Adam
419e0da7c1 Don't delete constructors because it might containe stuff we actually want. Instead rename to init and invoke from constructors. Magic. 2016-03-11 20:59:48 -05:00
Adam
6e79aece20 Some injecting classes now works 2016-03-11 17:34:09 -05:00
Adam
2cbdec1798 Beginning work on inject replace 2016-03-11 14:31:31 -05:00