comparison src/share/vm/opto/compile.cpp @ 1609:4311f23817fd

6959430: Make sure raw loads have control edge Summary: check that raw loads have control edge Reviewed-by: never, twisti
author kvn
date Tue, 15 Jun 2010 18:07:27 -0700
parents e9ff18c4ace7
children 60a14ad85270
comparison
equal deleted inserted replaced
1608:2389669474a6 1609:4311f23817fd
1998 default: 1998 default:
1999 break; 1999 break;
2000 } 2000 }
2001 } 2001 }
2002 2002
2003 #ifdef ASSERT
2004 if( n->is_Mem() ) {
2005 Compile* C = Compile::current();
2006 int alias_idx = C->get_alias_index(n->as_Mem()->adr_type());
2007 assert( n->in(0) != NULL || alias_idx != Compile::AliasIdxRaw ||
2008 // oop will be recorded in oop map if load crosses safepoint
2009 n->is_Load() && (n->as_Load()->bottom_type()->isa_oopptr() ||
2010 LoadNode::is_immutable_value(n->in(MemNode::Address))),
2011 "raw memory operations should have control edge");
2012 }
2013 #endif
2003 // Count FPU ops and common calls, implements item (3) 2014 // Count FPU ops and common calls, implements item (3)
2004 switch( nop ) { 2015 switch( nop ) {
2005 // Count all float operations that may use FPU 2016 // Count all float operations that may use FPU
2006 case Op_AddF: 2017 case Op_AddF:
2007 case Op_SubF: 2018 case Op_SubF: