Commit Graph

292 Commits

Author SHA1 Message Date
Adam
c71c67fae3 The graphs of these frames are always the same 2015-11-15 19:49:42 -05:00
Adam
52ca2cb24e whitespace 2015-11-15 18:39:59 -05:00
Adam
83a51ea037 Remove block graph and jump inliner which wasn't used. The loading time for the block graph (because of the way exceptions were looked up) was too slow. 2015-11-15 18:39:05 -05:00
Adam
9a68e863bd Begin per-method executions in rename to use less memory. Runs still with 336. 2015-11-15 13:55:25 -05:00
Adam
44767a9735 Add flag for graph building, which uses too much memory. 2015-11-15 11:59:08 -05:00
Adam
7b94552825 Initialize methods after loading classgroup too, I dont know if other things are broken elsewhere. Making the method graphs work makes many more frames. Might be worth processing methods one at a time and then doing the comparisons. And maybe elsewhere that doesn't need the graph will not include all frames, or something. 2015-11-15 00:00:27 -05:00
Adam
7e5b99fe4f This clone stuff is causing me headaches. 2015-11-14 23:14:41 -05:00
Adam
66084e1398 Lookup methods and return those in getMethods(). Lookup stuff in execution next to the classgraph building. 2015-11-14 22:07:44 -05:00
Adam
337e98fb95 Include prev invokes for deciding if weve jumped before, fixes the graph jump test 2015-11-14 20:33:38 -05:00
Adam
a867b7af9d Index 7 appears to be models. Am able to view them in rsmv. 2015-11-13 21:25:29 -05:00
Adam
10a613a601 NPC dumping. Weird tool leprechaun is id 0? This might be wrong. 2015-11-13 18:52:51 -05:00
Adam
0bce4dcbde . 2015-11-13 18:23:31 -05:00
Adam
0ae993e8fa Item def dumper 2015-11-13 18:23:17 -05:00
Adam
e30b69d190 More cleanup. Also dump more than one image if more than one exists. 2015-11-13 16:55:28 -05:00
Adam
abb7d699b7 Little bit of rewriting 2015-11-12 20:01:33 -05:00
Adam
1a8e11b7f9 Test exports png files ok, need to clean this up as it is mostly ripped from os cache suite 2015-11-12 19:01:48 -05:00
Adam
a312edd581 Beginning of work on sprite loading/exporting 2015-11-12 18:50:38 -05:00
Adam
3c5fcc018f Add basic failing graph test 2015-11-11 20:22:46 -05:00
Adam
be1b8f1e98 various fixes to graph building. I think there is a problem with how the execution runs, where it is not exploring all paths, because I have v13 class133.method2817 -> v14 class133 method2828 and there is no edge on the rhs for method4060->method4081. I think it is from two branches jumping to a place which jumps to the same place after, with invoke instructions on both sides. 2015-11-11 14:49:12 -05:00
Adam
4ae0c954cd Add integrity checks to methodinliner 2015-11-11 10:47:28 -05:00
Adam
be1d5ed010 Instruction clone wasnt creating new jump lists... 2015-11-10 20:39:17 -05:00
Adam
782fa9f70a switch instructions can jump multiple times to the same place 2015-11-10 10:27:05 -05:00
Adam
3edf7e2f4c Trying to run the better inliner so the graph matches up. Maybe instead figure out a way to passively ignored the static func calls. Regardless this assert fails due to a corrupted jump graph. 2015-11-09 21:18:21 -05:00
Adam
60d4cd94fd This does 326 methods. 2015-11-09 19:58:15 -05:00
Adam
e1ce955f6e doesn't work. graph stuff doesnt like ids of 0. and i need to reuse ids sometimes for some instructions, oops. 2015-11-08 21:02:36 -05:00
Adam
6ce5564e9f Move stuff to functions 2015-11-07 22:40:51 -05:00
Adam
cb639749e1 Little cleanup of old stuff I was trying 2015-11-07 22:27:15 -05:00
Adam
25cb9b5f8b This looks promising 2015-11-07 21:55:03 -05:00
Adam
ae82aad250 Make method inliner copy instead of move ins. I don't think the way it inlined exceptions before was correct. I had to make it not inline funcs with exception handlers 2015-11-06 17:49:24 -05:00
Adam
84fa11c8c8 I think i need exprs 2015-11-06 10:33:52 -05:00
Adam
8df59fb261 Fix test, fail in dup2_x1 2015-11-02 17:56:25 -05:00
Adam
483bdbc165 Add failing test, I think this should be passing 2015-11-01 19:07:13 -05:00
Adam
5e652a8799 Tests pass again. I see some cases of longs math not simplifying tho 2015-11-01 18:26:28 -05:00
Adam
695f7de686 Various Long work. this is making the int tests fail though 2015-11-01 17:47:49 -05:00
Adam
113363cd67 more work 2015-10-30 22:36:29 -04:00
Adam
8e68963f65 long work 2015-10-30 20:28:10 -04:00
Adam
1f716bf10d Small fix found by test, not sure if it breaks the larger picture 2015-10-25 20:08:57 -04:00
Adam
018a3619a8 Call constructor so executor picks it up 2015-10-25 19:28:27 -04:00
Adam
85a4587143 Comment cleanup 2015-10-25 19:28:12 -04:00
Adam
9cf9c31f2d This doesn't pass if this field isn't static 2015-10-25 19:20:17 -04:00
Adam
e81e46c68c First modarith test 2015-10-25 19:11:25 -04:00
Adam
8e39328eca Cleanup to prepare for tests 2015-10-25 14:19:48 -04:00
Adam
d7026aed78 recomment 2015-10-25 14:11:01 -04:00
Adam
e03d638c2e I guess this is right? 2015-10-25 13:16:27 -04:00
Adam
5094943453 This works. Except for final fields, which I can evaluate later. 2015-10-23 15:46:03 -04:00
Adam
f21cbba8b5 Fix test 2015-10-23 12:27:44 -04:00
Adam
d4f40eaf03 Trying to fine tune stuff, found a *1 not removed which is messing with some stuff, added test 2015-10-23 12:04:23 -04:00
Adam
85c49413dd guess more 2015-10-23 11:00:47 -04:00
Adam
bfb3a373c9 idk what im using, use multiplication expr to determine if another field is in the mix 2015-10-22 21:50:51 -04:00
Adam
9f17dec605 idr 2015-10-22 17:51:11 -04:00