< prev index next >
src/share/vm/opto/library_call.cpp
Print this page
@@ -1,7 +1,7 @@
/*
- * Copyright (c) 1999, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1999, 2016, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
@@ -3826,12 +3826,12 @@
ciMethod* method = callee();
int vtable_index = method->vtable_index();
assert(vtable_index >= 0 || vtable_index == Method::nonvirtual_vtable_index,
"bad index %d", vtable_index);
// Get the Method* out of the appropriate vtable entry.
- int entry_offset = (InstanceKlass::vtable_start_offset() +
- vtable_index*vtableEntry::size()) * wordSize +
+ int entry_offset = in_bytes(InstanceKlass::vtable_start_offset()) +
+ vtable_index*vtableEntry::size_in_bytes() +
vtableEntry::method_offset_in_bytes();
Node* entry_addr = basic_plus_adr(obj_klass, entry_offset);
Node* target_call = make_load(NULL, entry_addr, TypePtr::NOTNULL, T_ADDRESS, MemNode::unordered);
// Compare the target method with the expected method (e.g., Object.hashCode).
< prev index next >