Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
PojavLauncherTeam
GitHub Repository: PojavLauncherTeam/mobile
Path: blob/master/src/hotspot/cpu/zero/sharedRuntime_zero.cpp
40931 views
1
/*
2
* Copyright (c) 2003, 2021, Oracle and/or its affiliates. All rights reserved.
3
* Copyright 2007, 2008, 2009, 2010, 2011 Red Hat, Inc.
4
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
5
*
6
* This code is free software; you can redistribute it and/or modify it
7
* under the terms of the GNU General Public License version 2 only, as
8
* published by the Free Software Foundation.
9
*
10
* This code is distributed in the hope that it will be useful, but WITHOUT
11
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
12
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
13
* version 2 for more details (a copy is included in the LICENSE file that
14
* accompanied this code).
15
*
16
* You should have received a copy of the GNU General Public License version
17
* 2 along with this work; if not, write to the Free Software Foundation,
18
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
19
*
20
* Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
21
* or visit www.oracle.com if you need additional information or have any
22
* questions.
23
*
24
*/
25
26
#include "precompiled.hpp"
27
#include "asm/assembler.inline.hpp"
28
#include "code/debugInfoRec.hpp"
29
#include "code/icBuffer.hpp"
30
#include "code/vtableStubs.hpp"
31
#include "interpreter/interpreter.hpp"
32
#include "oops/compiledICHolder.hpp"
33
#include "runtime/interfaceSupport.inline.hpp"
34
#include "runtime/sharedRuntime.hpp"
35
#include "runtime/vframeArray.hpp"
36
#include "vmreg_zero.inline.hpp"
37
38
#ifdef COMPILER1
39
#include "c1/c1_Runtime1.hpp"
40
#endif
41
#ifdef COMPILER2
42
#include "opto/runtime.hpp"
43
#endif
44
45
46
static address zero_null_code_stub() {
47
address start = ShouldNotCallThisStub();
48
return start;
49
}
50
51
int SharedRuntime::java_calling_convention(const BasicType *sig_bt,
52
VMRegPair *regs,
53
int total_args_passed) {
54
return 0;
55
}
56
57
AdapterHandlerEntry* SharedRuntime::generate_i2c2i_adapters(
58
MacroAssembler *masm,
59
int total_args_passed,
60
int comp_args_on_stack,
61
const BasicType *sig_bt,
62
const VMRegPair *regs,
63
AdapterFingerPrint *fingerprint) {
64
return AdapterHandlerLibrary::new_entry(
65
fingerprint,
66
CAST_FROM_FN_PTR(address,zero_null_code_stub),
67
CAST_FROM_FN_PTR(address,zero_null_code_stub),
68
CAST_FROM_FN_PTR(address,zero_null_code_stub));
69
}
70
71
nmethod *SharedRuntime::generate_native_wrapper(MacroAssembler *masm,
72
const methodHandle& method,
73
int compile_id,
74
BasicType *sig_bt,
75
VMRegPair *regs,
76
BasicType ret_type,
77
address critical_entry) {
78
ShouldNotCallThis();
79
return NULL;
80
}
81
82
int Deoptimization::last_frame_adjust(int callee_parameters,
83
int callee_locals) {
84
return 0;
85
}
86
87
uint SharedRuntime::out_preserve_stack_slots() {
88
ShouldNotCallThis();
89
return 0;
90
}
91
92
JRT_LEAF(void, zero_stub())
93
ShouldNotCallThis();
94
JRT_END
95
96
static RuntimeStub* generate_empty_runtime_stub(const char* name) {
97
return CAST_FROM_FN_PTR(RuntimeStub*,zero_stub);
98
}
99
100
static SafepointBlob* generate_empty_safepoint_blob() {
101
return CAST_FROM_FN_PTR(SafepointBlob*,zero_stub);
102
}
103
104
static DeoptimizationBlob* generate_empty_deopt_blob() {
105
return CAST_FROM_FN_PTR(DeoptimizationBlob*,zero_stub);
106
}
107
108
109
void SharedRuntime::generate_deopt_blob() {
110
_deopt_blob = generate_empty_deopt_blob();
111
}
112
113
SafepointBlob* SharedRuntime::generate_handler_blob(address call_ptr, int poll_type) {
114
return generate_empty_safepoint_blob();
115
}
116
117
RuntimeStub* SharedRuntime::generate_resolve_blob(address destination, const char* name) {
118
return generate_empty_runtime_stub("resolve_blob");
119
}
120
121
int SharedRuntime::c_calling_convention(const BasicType *sig_bt,
122
VMRegPair *regs,
123
VMRegPair *regs2,
124
int total_args_passed) {
125
ShouldNotCallThis();
126
return 0;
127
}
128
129
int SharedRuntime::vector_calling_convention(VMRegPair *regs,
130
uint num_bits,
131
uint total_args_passed) {
132
ShouldNotCallThis();
133
return 0;
134
}
135
136