1.1 --- a/src/share/vm/opto/library_call.cpp Tue Jun 15 15:57:36 2010 -0700 1.2 +++ b/src/share/vm/opto/library_call.cpp Tue Jun 15 18:07:27 2010 -0700 1.3 @@ -3512,8 +3512,7 @@ 1.4 1.5 // Get the header out of the object, use LoadMarkNode when available 1.6 Node* header_addr = basic_plus_adr(obj, oopDesc::mark_offset_in_bytes()); 1.7 - Node* header = make_load(NULL, header_addr, TypeRawPtr::BOTTOM, T_ADDRESS); 1.8 - header = _gvn.transform( new (C, 2) CastP2XNode(NULL, header) ); 1.9 + Node* header = make_load(control(), header_addr, TypeX_X, TypeX_X->basic_type()); 1.10 1.11 // Test the header to see if it is unlocked. 1.12 Node *lock_mask = _gvn.MakeConX(markOopDesc::biased_lock_mask_in_place); 1.13 @@ -5202,7 +5201,7 @@ 1.14 // super_check_offset, for the desired klass. 1.15 int sco_offset = Klass::super_check_offset_offset_in_bytes() + sizeof(oopDesc); 1.16 Node* p3 = basic_plus_adr(dest_elem_klass, sco_offset); 1.17 - Node* n3 = new(C, 3) LoadINode(NULL, immutable_memory(), p3, TypeRawPtr::BOTTOM); 1.18 + Node* n3 = new(C, 3) LoadINode(NULL, memory(p3), p3, _gvn.type(p3)->is_ptr()); 1.19 Node* check_offset = _gvn.transform(n3); 1.20 Node* check_value = dest_elem_klass; 1.21