Adam
|
5e4458ae6e
|
Instead execute static functions inline as if they arent there to build the graph. Involved changing the executor to execute new frames as they appear. Can match my simple test method.
|
2015-11-15 20:46:23 -05:00 |
|
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 |
|