95a059793c4c194f026afc74c713cc295d75d91a |
|
30-May-2014 |
Vladimir Marko <vmarko@google.com> |
Global Value Numbering. Implement the Global Value Numbering for optimization purposes. Use it for the null check and range check elimination as the LVN used to do. The order of evaluation of basic blocks needs improving as we currently fail to recognize some obviously identical values in methods with more than one loop. (There are three disabled tests that check this. This is just a missed optimization, not a correctness issue.) Change-Id: I0d0ce16b2495b5a3b17ad1b2b32931cd69f5a25a
|
bfea9c29e809e04bde4a46591fea64c5a7b922fb |
|
17-Jan-2014 |
Vladimir Marko <vmarko@google.com> |
Class initialization check elimination. Also, move null check elimination temporaries to the ScopedArenaAllocator and reuse the same variables in the class initialization check elimination. Change-Id: Ic746f95427065506fa6016d4931e4cb8b34937af
|
a24122dc3aaa74b0385bb0ce30959f8a19c4a300 |
|
07-Mar-2014 |
Vladimir Marko <vmarko@google.com> |
Use ScopedArenaAllocator for CacheFieldLoweringInfo pass. Change-Id: Idcc2edeb865e29b1bc42b108fc58a1f964295317
|
be0e546730e532ef0987cd4bde2c6f5a1b14dd2a |
|
26-Feb-2014 |
Vladimir Marko <vmarko@google.com> |
Cache field lowering info in mir_graph. Change-Id: I9f9d76e3ae6c31e88bdf3f59820d31a625da020f
|