16 * 2 along with this work; if not, write to the Free Software Foundation, 17 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 18 * 19 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 20 * or visit www.oracle.com if you need additional information or have any 21 * questions. 22 * 23 */ 24 25 #include "precompiled.hpp" 26 #include "code/codeBlob.hpp" 27 #include "compiler/abstractCompiler.hpp" 28 #include "compiler/compileBroker.hpp" 29 #include "jvmci/jvmciCodeInstaller.hpp" 30 #include "jvmci/jvmciCompilerToVM.hpp" 31 #include "jvmci/jvmciEnv.hpp" 32 #include "jvmci/jvmciRuntime.hpp" 33 #include "jvmci/vmStructs_compiler_runtime.hpp" 34 #include "jvmci/vmStructs_jvmci.hpp" 35 #include "oops/oop.hpp" 36 #include "oops/objArrayKlass.hpp" 37 #include "runtime/globals.hpp" 38 #include "runtime/sharedRuntime.hpp" 39 #include "runtime/thread.hpp" 40 #include "runtime/vm_version.hpp" 41 42 #if INCLUDE_ALL_GCS 43 #include "gc/g1/g1SATBCardTableModRefBS.hpp" 44 #include "gc/g1/heapRegion.hpp" 45 #endif 46 47 #define VM_STRUCTS(nonstatic_field, static_field, unchecked_nonstatic_field, volatile_nonstatic_field) \ 48 static_field(CompilerToVM::Data, Klass_vtable_start_offset, int) \ 49 static_field(CompilerToVM::Data, Klass_vtable_length_offset, int) \ 50 \ 51 static_field(CompilerToVM::Data, Method_extra_stack_entries, int) \ 52 \ 53 static_field(CompilerToVM::Data, SharedRuntime_ic_miss_stub, address) \ 54 static_field(CompilerToVM::Data, SharedRuntime_handle_wrong_method_stub, address) \ 55 static_field(CompilerToVM::Data, SharedRuntime_deopt_blob_unpack, address) \
175 nonstatic_field(JavaThread, _jvmci_counters, jlong*) \
176 nonstatic_field(JavaThread, _reserved_stack_activation, address) \
177 \
178 static_field(java_lang_Class, _klass_offset, int) \
179 static_field(java_lang_Class, _array_klass_offset, int) \
180 \
181 nonstatic_field(JVMCIEnv, _task, CompileTask*) \
182 nonstatic_field(JVMCIEnv, _jvmti_can_hotswap_or_post_breakpoint, bool) \
183 \
184 nonstatic_field(InvocationCounter, _counter, unsigned int) \
185 \
186 nonstatic_field(Klass, _secondary_super_cache, Klass*) \
187 nonstatic_field(Klass, _secondary_supers, Array<Klass*>*) \
188 nonstatic_field(Klass, _super, Klass*) \
189 nonstatic_field(Klass, _super_check_offset, juint) \
190 nonstatic_field(Klass, _subklass, Klass*) \
191 nonstatic_field(Klass, _layout_helper, jint) \
192 nonstatic_field(Klass, _name, Symbol*) \
193 nonstatic_field(Klass, _prototype_header, markOop) \
194 nonstatic_field(Klass, _next_sibling, Klass*) \
195 nonstatic_field(Klass, _java_mirror, oop) \
196 nonstatic_field(Klass, _modifier_flags, jint) \
197 nonstatic_field(Klass, _access_flags, AccessFlags) \
198 \
199 nonstatic_field(LocalVariableTableElement, start_bci, u2) \
200 nonstatic_field(LocalVariableTableElement, length, u2) \
201 nonstatic_field(LocalVariableTableElement, name_cp_index, u2) \
202 nonstatic_field(LocalVariableTableElement, descriptor_cp_index, u2) \
203 nonstatic_field(LocalVariableTableElement, signature_cp_index, u2) \
204 nonstatic_field(LocalVariableTableElement, slot, u2) \
205 \
206 nonstatic_field(Method, _constMethod, ConstMethod*) \
207 nonstatic_field(Method, _method_data, MethodData*) \
208 nonstatic_field(Method, _method_counters, MethodCounters*) \
209 nonstatic_field(Method, _access_flags, AccessFlags) \
210 nonstatic_field(Method, _vtable_index, int) \
211 nonstatic_field(Method, _intrinsic_id, u2) \
212 nonstatic_field(Method, _flags, u2) \
213 volatile_nonstatic_field(Method, _code, CompiledMethod*) \
214 volatile_nonstatic_field(Method, _from_compiled_entry, address) \
215 \
|
16 * 2 along with this work; if not, write to the Free Software Foundation,
17 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18 *
19 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20 * or visit www.oracle.com if you need additional information or have any
21 * questions.
22 *
23 */
24
25 #include "precompiled.hpp"
26 #include "code/codeBlob.hpp"
27 #include "compiler/abstractCompiler.hpp"
28 #include "compiler/compileBroker.hpp"
29 #include "jvmci/jvmciCodeInstaller.hpp"
30 #include "jvmci/jvmciCompilerToVM.hpp"
31 #include "jvmci/jvmciEnv.hpp"
32 #include "jvmci/jvmciRuntime.hpp"
33 #include "jvmci/vmStructs_compiler_runtime.hpp"
34 #include "jvmci/vmStructs_jvmci.hpp"
35 #include "oops/oop.hpp"
36 #include "oops/oopHandle.hpp"
37 #include "oops/objArrayKlass.hpp"
38 #include "runtime/globals.hpp"
39 #include "runtime/sharedRuntime.hpp"
40 #include "runtime/thread.hpp"
41 #include "runtime/vm_version.hpp"
42
43 #if INCLUDE_ALL_GCS
44 #include "gc/g1/g1SATBCardTableModRefBS.hpp"
45 #include "gc/g1/heapRegion.hpp"
46 #endif
47
48 #define VM_STRUCTS(nonstatic_field, static_field, unchecked_nonstatic_field, volatile_nonstatic_field) \
49 static_field(CompilerToVM::Data, Klass_vtable_start_offset, int) \
50 static_field(CompilerToVM::Data, Klass_vtable_length_offset, int) \
51 \
52 static_field(CompilerToVM::Data, Method_extra_stack_entries, int) \
53 \
54 static_field(CompilerToVM::Data, SharedRuntime_ic_miss_stub, address) \
55 static_field(CompilerToVM::Data, SharedRuntime_handle_wrong_method_stub, address) \
56 static_field(CompilerToVM::Data, SharedRuntime_deopt_blob_unpack, address) \
176 nonstatic_field(JavaThread, _jvmci_counters, jlong*) \
177 nonstatic_field(JavaThread, _reserved_stack_activation, address) \
178 \
179 static_field(java_lang_Class, _klass_offset, int) \
180 static_field(java_lang_Class, _array_klass_offset, int) \
181 \
182 nonstatic_field(JVMCIEnv, _task, CompileTask*) \
183 nonstatic_field(JVMCIEnv, _jvmti_can_hotswap_or_post_breakpoint, bool) \
184 \
185 nonstatic_field(InvocationCounter, _counter, unsigned int) \
186 \
187 nonstatic_field(Klass, _secondary_super_cache, Klass*) \
188 nonstatic_field(Klass, _secondary_supers, Array<Klass*>*) \
189 nonstatic_field(Klass, _super, Klass*) \
190 nonstatic_field(Klass, _super_check_offset, juint) \
191 nonstatic_field(Klass, _subklass, Klass*) \
192 nonstatic_field(Klass, _layout_helper, jint) \
193 nonstatic_field(Klass, _name, Symbol*) \
194 nonstatic_field(Klass, _prototype_header, markOop) \
195 nonstatic_field(Klass, _next_sibling, Klass*) \
196 nonstatic_field(Klass, _java_mirror, OopHandle) \
197 nonstatic_field(Klass, _modifier_flags, jint) \
198 nonstatic_field(Klass, _access_flags, AccessFlags) \
199 \
200 nonstatic_field(LocalVariableTableElement, start_bci, u2) \
201 nonstatic_field(LocalVariableTableElement, length, u2) \
202 nonstatic_field(LocalVariableTableElement, name_cp_index, u2) \
203 nonstatic_field(LocalVariableTableElement, descriptor_cp_index, u2) \
204 nonstatic_field(LocalVariableTableElement, signature_cp_index, u2) \
205 nonstatic_field(LocalVariableTableElement, slot, u2) \
206 \
207 nonstatic_field(Method, _constMethod, ConstMethod*) \
208 nonstatic_field(Method, _method_data, MethodData*) \
209 nonstatic_field(Method, _method_counters, MethodCounters*) \
210 nonstatic_field(Method, _access_flags, AccessFlags) \
211 nonstatic_field(Method, _vtable_index, int) \
212 nonstatic_field(Method, _intrinsic_id, u2) \
213 nonstatic_field(Method, _flags, u2) \
214 volatile_nonstatic_field(Method, _code, CompiledMethod*) \
215 volatile_nonstatic_field(Method, _from_compiled_entry, address) \
216 \
|