Mercurial > hg > truffle
comparison src/share/vm/opto/callnode.cpp @ 305:ab075d07f1ba
6736417: Fastdebug C2 crashes in StoreBNode::Ideal
Summary: The result of step_through_mergemem() and remove_dead_region() is not checked in some cases.
Reviewed-by: never
author | kvn |
---|---|
date | Wed, 27 Aug 2008 09:15:46 -0700 |
parents | 02a35ad4adf8 |
children | cecd8eb4e0ca |
comparison
equal
deleted
inserted
replaced
304:dc7f315e41f7 | 305:ab075d07f1ba |
---|---|
827 | 827 |
828 | 828 |
829 //------------------------------Ideal------------------------------------------ | 829 //------------------------------Ideal------------------------------------------ |
830 // Skip over any collapsed Regions | 830 // Skip over any collapsed Regions |
831 Node *SafePointNode::Ideal(PhaseGVN *phase, bool can_reshape) { | 831 Node *SafePointNode::Ideal(PhaseGVN *phase, bool can_reshape) { |
832 if (remove_dead_region(phase, can_reshape)) return this; | 832 return remove_dead_region(phase, can_reshape) ? this : NULL; |
833 | |
834 return NULL; | |
835 } | 833 } |
836 | 834 |
837 //------------------------------Identity--------------------------------------- | 835 //------------------------------Identity--------------------------------------- |
838 // Remove obviously duplicate safepoints | 836 // Remove obviously duplicate safepoints |
839 Node *SafePointNode::Identity( PhaseTransform *phase ) { | 837 Node *SafePointNode::Identity( PhaseTransform *phase ) { |