8256857: ARM32 builds broken after JDK-8254231

Reviewed-by: jvernee, stuefe
This commit is contained in:
Aleksey Shipilev 2020-11-24 11:02:13 +00:00
parent f8d7c5a5cf
commit 8f7caa4353
8 changed files with 148 additions and 1 deletions

View File

@ -447,6 +447,11 @@ int MachCallRuntimeNode::ret_addr_offset() {
bool far = maybe_far_call(this);
return (far ? 3 : 1) * NativeInstruction::instruction_size;
}
int MachCallNativeNode::ret_addr_offset() {
Unimplemented();
return -1;
}
%}
// The intptr_t operand types, defined by textual substitution.

View File

@ -0,0 +1,36 @@
/*
* Copyright (c) 2020, Red Hat, Inc. 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.
*
* This code is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* version 2 for more details (a copy is included in the LICENSE file that
* accompanied this code).
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work; if not, write to the Free Software Foundation,
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
#include "precompiled.hpp"
#include "prims/foreign_globals.hpp"
#include "utilities/debug.hpp"
const ABIDescriptor ForeignGlobals::parse_abi_descriptor_impl(jobject jabi) const {
Unimplemented();
return {};
}
const BufferLayout ForeignGlobals::parse_buffer_layout_impl(jobject jlayout) const {
Unimplemented();
return {};
}

View File

@ -0,0 +1,30 @@
/*
* Copyright (c) 2020, Red Hat, Inc. 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.
*
* This code is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* version 2 for more details (a copy is included in the LICENSE file that
* accompanied this code).
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work; if not, write to the Free Software Foundation,
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
#ifndef CPU_ARM_VM_FOREIGN_GLOBALS_ARM_HPP
#define CPU_ARM_VM_FOREIGN_GLOBALS_ARM_HPP
class BufferLayout {};
class ABIDescriptor {};
#endif // CPU_ARM_VM_FOREIGN_GLOBALS_ARM_HPP

View File

@ -185,7 +185,8 @@ address MethodHandles::generate_method_handle_interpreter_entry(MacroAssembler*
const bool not_for_compiler_entry = false; // this is the interpreter entry
assert(is_signature_polymorphic(iid), "expected invoke iid");
if (iid == vmIntrinsics::_invokeGeneric ||
iid == vmIntrinsics::_compiledLambdaForm) {
iid == vmIntrinsics::_compiledLambdaForm ||
iid == vmIntrinsics::_linkToNative) {
// Perhaps surprisingly, the user-visible names, and linkToCallSite, are not directly used.
// They are linked to Java-generated adapters via MethodHandleNatives.linkMethod.
// They all require an extra argument.

View File

@ -1897,3 +1897,11 @@ RuntimeStub* SharedRuntime::generate_resolve_blob(address destination, const cha
return RuntimeStub::new_runtime_stub(name, &buffer, frame_complete, frame_size_words, oop_maps, true);
}
BufferBlob* SharedRuntime::make_native_invoker(address call_target,
int shadow_space_bytes,
const GrowableArray<VMReg>& input_registers,
const GrowableArray<VMReg>& output_registers) {
Unimplemented();
return nullptr;
}

View File

@ -0,0 +1,31 @@
/*
* Copyright (c) 2020, Red Hat, Inc. 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.
*
* This code is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* version 2 for more details (a copy is included in the LICENSE file that
* accompanied this code).
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work; if not, write to the Free Software Foundation,
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
#include "precompiled.hpp"
#include "prims/universalNativeInvoker.hpp"
#include "utilities/debug.hpp"
address ProgrammableInvoker::generate_adapter(jobject jabi, jobject jlayout) {
Unimplemented();
return nullptr;
}

View File

@ -0,0 +1,31 @@
/*
* Copyright (c) 2020, Red Hat, Inc. 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.
*
* This code is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* version 2 for more details (a copy is included in the LICENSE file that
* accompanied this code).
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work; if not, write to the Free Software Foundation,
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
* or visit www.oracle.com if you need additional information or have any
* questions.
*/
#include "precompiled.hpp"
#include "prims/universalUpcallHandler.hpp"
#include "utilities/debug.hpp"
address ProgrammableUpcallHandler::generate_upcall_stub(jobject rec, jobject jabi, jobject jlayout) {
Unimplemented();
return nullptr;
}

View File

@ -49,3 +49,8 @@ void VMRegImpl::set_regName() {
regName[i] = "NON-GPR-FPR";
}
}
VMReg VMRegImpl::vmStorageToVMReg(int type, int index) {
Unimplemented();
return VMRegImpl::Bad();
}