src/share/vm/opto/output.cpp

Print this page
rev 4505 : 8014189: JVM crash with SEGV in ConnectionGraph::record_for_escape_analysis()
Summary: Add NULL checks and asserts for Type::make_ptr() returned value.
Reviewed-by: kvn

*** 929,939 **** scval = new_loc_value( _regalloc, obj_reg, Location::narrowoop ); } else { scval = new_loc_value( _regalloc, obj_reg, Location::oop ); } } else { ! const TypePtr *tp = obj_node->bottom_type()->make_ptr(); scval = new ConstantOopWriteValue(tp->is_oopptr()->const_oop()->constant_encoding()); } OptoReg::Name box_reg = BoxLockNode::reg(box_node); Location basic_lock = Location::new_stk_loc(Location::normal,_regalloc->reg2offset(box_reg)); --- 929,939 ---- scval = new_loc_value( _regalloc, obj_reg, Location::narrowoop ); } else { scval = new_loc_value( _regalloc, obj_reg, Location::oop ); } } else { ! const TypePtr *tp = obj_node->get_ptr_type(); scval = new ConstantOopWriteValue(tp->is_oopptr()->const_oop()->constant_encoding()); } OptoReg::Name box_reg = BoxLockNode::reg(box_node); Location basic_lock = Location::new_stk_loc(Location::normal,_regalloc->reg2offset(box_reg));