Weirdness in TypeFlow
aph at redhat.com
Tue Jan 13 01:17:23 PST 2009
Tom Rodriguez wrote:
> I believe this is because none of the bytecodes after the getstatic
> itself can actually throw an exception in compiled code, so there's no
> edge to the exception handler. The monitorexit can't throw an NPE
> because we verified that the monitor operations are block structured
> before we compiled
Ahh, that's the part I didn't get.
> so it must be non-null and we must have entered it at
> least once. Check out the can_trap logic in ciTypeFlow. This controls
> whether a bytecode has an exceptional edge or not during the dataflow.
OK, so I simply call ciTypeFlow::can_trap.
More information about the hotspot-dev