comparison src/share/vm/opto/parse2.cpp @ 825:8f5825e0aeaa

6818666: G1: Type lost in g1 pre-barrier Reviewed-by: kvn
author never
date Fri, 26 Jun 2009 13:03:29 -0700
parents c96bf21b756f
children bf3489cc0aa0
comparison
equal deleted inserted replaced
824:18a08a7e16b5 825:8f5825e0aeaa
1563 if (stopped()) return; // guaranteed null or range check 1563 if (stopped()) return; // guaranteed null or range check
1564 array_store_check(); 1564 array_store_check();
1565 c = pop(); // Oop to store 1565 c = pop(); // Oop to store
1566 b = pop(); // index (already used) 1566 b = pop(); // index (already used)
1567 a = pop(); // the array itself 1567 a = pop(); // the array itself
1568 const Type* elemtype = _gvn.type(a)->is_aryptr()->elem(); 1568 const TypeOopPtr* elemtype = _gvn.type(a)->is_aryptr()->elem()->is_oopptr();
1569 const TypeAryPtr* adr_type = TypeAryPtr::OOPS; 1569 const TypeAryPtr* adr_type = TypeAryPtr::OOPS;
1570 Node* store = store_oop_to_array(control(), a, d, adr_type, c, elemtype, T_OBJECT); 1570 Node* store = store_oop_to_array(control(), a, d, adr_type, c, elemtype, T_OBJECT);
1571 break; 1571 break;
1572 } 1572 }
1573 case Bytecodes::_lastore: { 1573 case Bytecodes::_lastore: {