Class hierarchy analysis and CallSites

MacGregor, Duncan (GE Energy Management) duncan.macgregor at ge.com
Mon Sep 1 13:46:10 UTC 2014


I really should be posting some stuff to the startup thread, but I need some time to read over it (especially John’s post) carefully first. However since this list is being active again…

I had a cunning idea that we had almost enough information present on our method objects to do proper class hierarchy analysis rather than having to match the receiver’s type precisely.

Initial work seems to have gone rather well,  and has eliminated some critical megamorphic lookups, but I’ll need to improve the speed of our class hierarchy query methods if I’m going to use this in more cases, and calculate and cache more information in the hierarchy data to make quick decisions about whether it’s a worthwhile optimisation for any particular instance.

Has anybody else tried doing this sort of thing as part of their invokeDynamic Implementation? I’m curious if anybody has data comparing the speed of GWT & class comparison based PICs with checks that require getting a ClassValue and doing a Map or Set lookup?

Duncan.


More information about the mlvm-dev mailing list