diff -r 58fbf2da3c16 -r cfe522e6461c src/share/vm/opto/library_call.cpp --- a/src/share/vm/opto/library_call.cpp Fri Oct 12 14:06:27 2012 -0700 +++ b/src/share/vm/opto/library_call.cpp Wed Oct 17 12:09:32 2012 -0700 @@ -3830,7 +3830,7 @@ vtable_index*vtableEntry::size()) * wordSize + vtableEntry::method_offset_in_bytes(); Node* entry_addr = basic_plus_adr(obj_klass, entry_offset); - Node* target_call = make_load(NULL, entry_addr, TypeInstPtr::NOTNULL, T_OBJECT); + Node* target_call = make_load(NULL, entry_addr, TypePtr::NOTNULL, T_ADDRESS); // Compare the target method with the expected method (e.g., Object.hashCode). const TypePtr* native_call_addr = TypeMetadataPtr::make(method);