Request for reviews (S): 7110824: ctw/jarfiles/GUI3rdParty_jar/ob_mask_DateField crashes VM

Tom Rodriguez tom.rodriguez at oracle.com
Thu Jan 5 09:54:27 PST 2012


On Jan 4, 2012, at 7:54 PM, Vladimir Kozlov wrote:

> http://cr.openjdk.java.net/~kvn/7110824/webrev
> 
> 7110824: ctw/jarfiles/GUI3rdParty_jar/ob_mask_DateField crashes VM
> 
> PhaseChaitin::yank_if_dead() can't handle nodes which load from constant table because MachConstantBase node could be spilled and Phi nodes are generated for it. In failing case loadConP_load node has Phi node as input and it is yanked since there is an other copy of the same constant load.
> 
> Change yank_if_dead() to recursive method to remove all dead inputs.

The change seems fine though the limited logic would protect us from bad graph shapes and I'm a little concerned that it will now just blindly trim anything away that it sees without complaining.  We'd probably die at a later point in that case but it will be a bit more mysterious.  An assert could check that we only start yanking certain node type but I don't know how long that list would be.  Would that be overkill?

tom

> 
> Tested with full CTW and failing test.
> 
> Thanks,
> Vladimir



More information about the hotspot-compiler-dev mailing list