Mercurial > hg > graal-compiler
annotate src/cpu/zero/vm/sharedRuntime_zero.cpp @ 4824:5dbed2f542ff
7120468: SPARC/x86: use frame::describe to enhance trace_method_handle
Summary: improvements of TraceMethodHandles for JSR292
Reviewed-by: never, twisti
author | bdelsart |
---|---|
date | Thu, 26 Jan 2012 16:49:22 +0100 |
parents | a3142bdb6707 |
children | da91efe96a93 |
rev | line source |
---|---|
1010 | 1 /* |
1972 | 2 * Copyright (c) 2003, 2010, Oracle and/or its affiliates. All rights reserved. |
2447 | 3 * Copyright 2007, 2008, 2009, 2010, 2011 Red Hat, Inc. |
1010 | 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 * | |
1552
c18cbe5936b8
6941466: Oracle rebranding changes for Hotspot repositories
trims
parents:
1197
diff
changeset
|
20 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA |
c18cbe5936b8
6941466: Oracle rebranding changes for Hotspot repositories
trims
parents:
1197
diff
changeset
|
21 * or visit www.oracle.com if you need additional information or have any |
c18cbe5936b8
6941466: Oracle rebranding changes for Hotspot repositories
trims
parents:
1197
diff
changeset
|
22 * questions. |
1010 | 23 * |
24 */ | |
25 | |
1972 | 26 #include "precompiled.hpp" |
27 #include "asm/assembler.hpp" | |
28 #include "assembler_zero.inline.hpp" | |
29 #include "code/debugInfoRec.hpp" | |
30 #include "code/icBuffer.hpp" | |
31 #include "code/vtableStubs.hpp" | |
32 #include "interpreter/interpreter.hpp" | |
33 #include "oops/compiledICHolderOop.hpp" | |
34 #include "prims/jvmtiRedefineClassesTrace.hpp" | |
35 #include "runtime/sharedRuntime.hpp" | |
36 #include "runtime/vframeArray.hpp" | |
37 #include "vmreg_zero.inline.hpp" | |
38 #ifdef COMPILER1 | |
39 #include "c1/c1_Runtime1.hpp" | |
40 #endif | |
41 #ifdef COMPILER2 | |
42 #include "opto/runtime.hpp" | |
43 #endif | |
44 #ifdef SHARK | |
45 #include "compiler/compileBroker.hpp" | |
46 #include "shark/sharkCompiler.hpp" | |
47 #endif | |
1010 | 48 |
49 | |
50 int SharedRuntime::java_calling_convention(const BasicType *sig_bt, | |
51 VMRegPair *regs, | |
52 int total_args_passed, | |
53 int is_outgoing) { | |
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, | |
1197
9e1637a04678
6920970: Zero build fixes after 6849984 and 6911204
twisti
parents:
1078
diff
changeset
|
62 const VMRegPair *regs, |
9e1637a04678
6920970: Zero build fixes after 6849984 and 6911204
twisti
parents:
1078
diff
changeset
|
63 AdapterFingerPrint *fingerprint) { |
9e1637a04678
6920970: Zero build fixes after 6849984 and 6911204
twisti
parents:
1078
diff
changeset
|
64 return AdapterHandlerLibrary::new_entry( |
9e1637a04678
6920970: Zero build fixes after 6849984 and 6911204
twisti
parents:
1078
diff
changeset
|
65 fingerprint, |
1010 | 66 ShouldNotCallThisStub(), |
67 ShouldNotCallThisStub(), | |
68 ShouldNotCallThisStub()); | |
69 } | |
70 | |
71 nmethod *SharedRuntime::generate_native_wrapper(MacroAssembler *masm, | |
72 methodHandle method, | |
2447 | 73 int compile_id, |
74 int total_args_passed, | |
75 int max_arg, | |
76 BasicType *sig_bt, | |
77 VMRegPair *regs, | |
1010 | 78 BasicType ret_type) { |
1078 | 79 #ifdef SHARK |
80 return SharkCompiler::compiler()->generate_native_wrapper(masm, | |
81 method, | |
2447 | 82 compile_id, |
83 sig_bt, | |
1078 | 84 ret_type); |
85 #else | |
1010 | 86 ShouldNotCallThis(); |
1078 | 87 #endif // SHARK |
1010 | 88 } |
89 | |
90 int Deoptimization::last_frame_adjust(int callee_parameters, | |
91 int callee_locals) { | |
92 return 0; | |
93 } | |
94 | |
95 uint SharedRuntime::out_preserve_stack_slots() { | |
96 ShouldNotCallThis(); | |
97 } | |
98 | |
99 static RuntimeStub* generate_empty_runtime_stub(const char* name) { | |
100 CodeBuffer buffer(name, 0, 0); | |
101 return RuntimeStub::new_runtime_stub(name, &buffer, 0, 0, NULL, false); | |
102 } | |
103 | |
104 static SafepointBlob* generate_empty_safepoint_blob() { | |
105 CodeBuffer buffer("handler_blob", 0, 0); | |
106 return SafepointBlob::create(&buffer, NULL, 0); | |
107 } | |
108 | |
3847
a3142bdb6707
7071823: Zero: zero/shark doesn't build after b147-fcs
twisti
parents:
2447
diff
changeset
|
109 static DeoptimizationBlob* generate_empty_deopt_blob() { |
a3142bdb6707
7071823: Zero: zero/shark doesn't build after b147-fcs
twisti
parents:
2447
diff
changeset
|
110 CodeBuffer buffer("handler_blob", 0, 0); |
a3142bdb6707
7071823: Zero: zero/shark doesn't build after b147-fcs
twisti
parents:
2447
diff
changeset
|
111 return DeoptimizationBlob::create(&buffer, NULL, 0, 0, 0, 0); |
a3142bdb6707
7071823: Zero: zero/shark doesn't build after b147-fcs
twisti
parents:
2447
diff
changeset
|
112 } |
a3142bdb6707
7071823: Zero: zero/shark doesn't build after b147-fcs
twisti
parents:
2447
diff
changeset
|
113 |
1010 | 114 |
3847
a3142bdb6707
7071823: Zero: zero/shark doesn't build after b147-fcs
twisti
parents:
2447
diff
changeset
|
115 void SharedRuntime::generate_deopt_blob() { |
a3142bdb6707
7071823: Zero: zero/shark doesn't build after b147-fcs
twisti
parents:
2447
diff
changeset
|
116 _deopt_blob = generate_empty_deopt_blob(); |
a3142bdb6707
7071823: Zero: zero/shark doesn't build after b147-fcs
twisti
parents:
2447
diff
changeset
|
117 } |
a3142bdb6707
7071823: Zero: zero/shark doesn't build after b147-fcs
twisti
parents:
2447
diff
changeset
|
118 |
a3142bdb6707
7071823: Zero: zero/shark doesn't build after b147-fcs
twisti
parents:
2447
diff
changeset
|
119 SafepointBlob* SharedRuntime::generate_handler_blob(address call_ptr, bool cause_return) { |
a3142bdb6707
7071823: Zero: zero/shark doesn't build after b147-fcs
twisti
parents:
2447
diff
changeset
|
120 return generate_empty_safepoint_blob(); |
a3142bdb6707
7071823: Zero: zero/shark doesn't build after b147-fcs
twisti
parents:
2447
diff
changeset
|
121 } |
a3142bdb6707
7071823: Zero: zero/shark doesn't build after b147-fcs
twisti
parents:
2447
diff
changeset
|
122 |
a3142bdb6707
7071823: Zero: zero/shark doesn't build after b147-fcs
twisti
parents:
2447
diff
changeset
|
123 RuntimeStub* SharedRuntime::generate_resolve_blob(address destination, const char* name) { |
a3142bdb6707
7071823: Zero: zero/shark doesn't build after b147-fcs
twisti
parents:
2447
diff
changeset
|
124 return generate_empty_runtime_stub("resolve_blob"); |
1010 | 125 } |
126 | |
127 int SharedRuntime::c_calling_convention(const BasicType *sig_bt, | |
128 VMRegPair *regs, | |
129 int total_args_passed) { | |
130 ShouldNotCallThis(); | |
131 } |