8257798: [PPC64] undefined reference to Klass::vtable_start_offset()
Reviewed-by: goetz
This commit is contained in:
parent
ecd7e476f8
commit
46b35acfcb
@ -980,6 +980,8 @@ source_hpp %{
|
||||
|
||||
source %{
|
||||
|
||||
#include "oops/klass.inline.hpp"
|
||||
|
||||
void PhaseOutput::pd_perform_mach_node_analysis() {
|
||||
}
|
||||
|
||||
@ -3635,9 +3637,9 @@ encode %{
|
||||
Register Rtoc = (ra_) ? $constanttablebase : R2_TOC;
|
||||
|
||||
int vtable_index = this->_vtable_index;
|
||||
if (_vtable_index < 0) {
|
||||
if (vtable_index < 0) {
|
||||
// Must be invalid_vtable_index, not nonvirtual_vtable_index.
|
||||
assert(_vtable_index == Method::invalid_vtable_index, "correct sentinel value");
|
||||
assert(vtable_index == Method::invalid_vtable_index, "correct sentinel value");
|
||||
Register ic_reg = as_Register(Matcher::inline_cache_reg_encode());
|
||||
|
||||
// Virtual call relocation will point to ic load.
|
||||
@ -3663,7 +3665,7 @@ encode %{
|
||||
|
||||
__ load_klass(R11_scratch1, R3);
|
||||
|
||||
int entry_offset = in_bytes(Klass::vtable_start_offset()) + _vtable_index * vtableEntry::size_in_bytes();
|
||||
int entry_offset = in_bytes(Klass::vtable_start_offset()) + vtable_index * vtableEntry::size_in_bytes();
|
||||
int v_off = entry_offset + vtableEntry::method_offset_in_bytes();
|
||||
__ li(R19_method, v_off);
|
||||
__ ldx(R19_method/*method*/, R19_method/*method offset*/, R11_scratch1/*class*/);
|
||||
|
Loading…
x
Reference in New Issue
Block a user