Failing typeflow responsibility assertions

John Rose John.Rose at Sun.COM
Fri May 16 11:23:22 PDT 2008


On May 16, 2008, at 1:42 AM, Gary Benson wrote:

> Do I have to do something to tell the CompileBroker not
> to feed me methods full of unloaded stuff?  Oh, and I'm using -Xmixed.

The typeflow pass builds the basic block model and typestates  
consumed by the parser.  You can't build phis correctly without that  
stuff.

(An earlier version tried to parse, find blocks, and compute phi  
types all on the fly, but it didn't work out, so ciTypeFlow was added  
as a first pass.)

(The new typestate maps might change this a little, but we have to  
compile w/o the maps anyway.)

The basic block model is pruned at unreached bytecodes which would  
provoke class loading.

As a result, the parser can (mostly) ignore unloaded classes, which  
removes lots of buggy edge cases.

Do you use ciTypeFlow in your JIT?

-- John



More information about the hotspot-compiler-dev mailing list