< prev index next >

src/share/vm/jvmci/vmStructs_jvmci.cpp

Print this page
rev 12906 : [mq]: gc_interface


  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)                                      \
  56   static_field(CompilerToVM::Data,             SharedRuntime_deopt_blob_uncommon_trap, address)                                      \
  57                                                                                                                                      \
  58   static_field(CompilerToVM::Data,             ThreadLocalAllocBuffer_alignment_reserve, size_t)                                     \
  59                                                                                                                                      \
  60   static_field(CompilerToVM::Data,             Universe_collectedHeap,                 CollectedHeap*)                               \
  61   static_field(CompilerToVM::Data,             Universe_base_vtable_size,              int)                                          \
  62   static_field(CompilerToVM::Data,             Universe_narrow_oop_base,               address)                                      \
  63   static_field(CompilerToVM::Data,             Universe_narrow_oop_shift,              int)                                          \


 403   declare_constant(JVM_CONSTANT_InvokeDynamic)                            \
 404   declare_constant(JVM_CONSTANT_ExternalMax)                              \
 405                                                                           \
 406   declare_constant(JVM_CONSTANT_Invalid)                                  \
 407   declare_constant(JVM_CONSTANT_InternalMin)                              \
 408   declare_constant(JVM_CONSTANT_UnresolvedClass)                          \
 409   declare_constant(JVM_CONSTANT_ClassIndex)                               \
 410   declare_constant(JVM_CONSTANT_StringIndex)                              \
 411   declare_constant(JVM_CONSTANT_UnresolvedClassInError)                   \
 412   declare_constant(JVM_CONSTANT_MethodHandleInError)                      \
 413   declare_constant(JVM_CONSTANT_MethodTypeInError)                        \
 414   declare_constant(JVM_CONSTANT_InternalMax)                              \
 415                                                                           \
 416   declare_constant(ArrayData::array_len_off_set)                          \
 417   declare_constant(ArrayData::array_start_off_set)                        \
 418                                                                           \
 419   declare_constant(BitData::exception_seen_flag)                          \
 420   declare_constant(BitData::null_seen_flag)                               \
 421   declare_constant(BranchData::not_taken_off_set)                         \
 422                                                                           \
 423   declare_constant_with_value("CardTableModRefBS::dirty_card", CardTableModRefBS::dirty_card_val()) \
 424                                                                           \
 425   declare_constant(CodeInstaller::VERIFIED_ENTRY)                         \
 426   declare_constant(CodeInstaller::UNVERIFIED_ENTRY)                       \
 427   declare_constant(CodeInstaller::OSR_ENTRY)                              \
 428   declare_constant(CodeInstaller::EXCEPTION_HANDLER_ENTRY)                \
 429   declare_constant(CodeInstaller::DEOPT_HANDLER_ENTRY)                    \
 430   declare_constant(CodeInstaller::INVOKEINTERFACE)                        \
 431   declare_constant(CodeInstaller::INVOKEVIRTUAL)                          \
 432   declare_constant(CodeInstaller::INVOKESTATIC)                           \
 433   declare_constant(CodeInstaller::INVOKESPECIAL)                          \
 434   declare_constant(CodeInstaller::INLINE_INVOKE)                          \
 435   declare_constant(CodeInstaller::POLL_NEAR)                              \
 436   declare_constant(CodeInstaller::POLL_RETURN_NEAR)                       \
 437   declare_constant(CodeInstaller::POLL_FAR)                               \
 438   declare_constant(CodeInstaller::POLL_RETURN_FAR)                        \
 439   declare_constant(CodeInstaller::CARD_TABLE_SHIFT)                       \
 440   declare_constant(CodeInstaller::CARD_TABLE_ADDRESS)                     \
 441   declare_constant(CodeInstaller::HEAP_TOP_ADDRESS)                       \
 442   declare_constant(CodeInstaller::HEAP_END_ADDRESS)                       \
 443   declare_constant(CodeInstaller::NARROW_KLASS_BASE_ADDRESS)              \


 628   declare_function(JVMCIRuntime::throw_klass_external_name_exception) \
 629   declare_function(JVMCIRuntime::throw_class_cast_exception) \
 630   declare_function(JVMCIRuntime::log_primitive) \
 631   declare_function(JVMCIRuntime::log_object) \
 632   declare_function(JVMCIRuntime::log_printf) \
 633   declare_function(JVMCIRuntime::vm_error) \
 634   declare_function(JVMCIRuntime::load_and_clear_exception) \
 635   declare_function(JVMCIRuntime::write_barrier_pre) \
 636   declare_function(JVMCIRuntime::write_barrier_post) \
 637   declare_function(JVMCIRuntime::validate_object) \
 638   \
 639   declare_function(JVMCIRuntime::test_deoptimize_call_int)
 640 
 641 
 642 #if INCLUDE_ALL_GCS
 643 
 644 #define VM_STRUCTS_G1(nonstatic_field, static_field) \
 645   static_field(HeapRegion, LogOfHRGrainBytes, int)
 646 
 647 #define VM_INT_CONSTANTS_G1(declare_constant, declare_constant_with_value, declare_preprocessor_constant) \
 648   declare_constant_with_value("G1SATBCardTableModRefBS::g1_young_gen", G1SATBCardTableModRefBS::g1_young_card_val())
 649 
 650 #endif // INCLUDE_ALL_GCS
 651 
 652 
 653 #ifdef LINUX
 654 
 655 #define VM_ADDRESSES_OS(declare_address, declare_preprocessor_address, declare_function) \
 656   declare_preprocessor_address("RTLD_DEFAULT", RTLD_DEFAULT)
 657 
 658 #endif
 659 
 660 
 661 #ifdef BSD
 662 
 663 #define VM_ADDRESSES_OS(declare_address, declare_preprocessor_address, declare_function) \
 664   declare_preprocessor_address("RTLD_DEFAULT", RTLD_DEFAULT)
 665 
 666 #endif
 667 
 668 // AARCH64 is defined in closed port, too. TARGET_ARCH_aarch64 is not.




  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/g1BarrierSet.hpp"
  44 #include "gc/g1/g1CardTable.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)                                      \
  57   static_field(CompilerToVM::Data,             SharedRuntime_deopt_blob_uncommon_trap, address)                                      \
  58                                                                                                                                      \
  59   static_field(CompilerToVM::Data,             ThreadLocalAllocBuffer_alignment_reserve, size_t)                                     \
  60                                                                                                                                      \
  61   static_field(CompilerToVM::Data,             Universe_collectedHeap,                 CollectedHeap*)                               \
  62   static_field(CompilerToVM::Data,             Universe_base_vtable_size,              int)                                          \
  63   static_field(CompilerToVM::Data,             Universe_narrow_oop_base,               address)                                      \
  64   static_field(CompilerToVM::Data,             Universe_narrow_oop_shift,              int)                                          \


 404   declare_constant(JVM_CONSTANT_InvokeDynamic)                            \
 405   declare_constant(JVM_CONSTANT_ExternalMax)                              \
 406                                                                           \
 407   declare_constant(JVM_CONSTANT_Invalid)                                  \
 408   declare_constant(JVM_CONSTANT_InternalMin)                              \
 409   declare_constant(JVM_CONSTANT_UnresolvedClass)                          \
 410   declare_constant(JVM_CONSTANT_ClassIndex)                               \
 411   declare_constant(JVM_CONSTANT_StringIndex)                              \
 412   declare_constant(JVM_CONSTANT_UnresolvedClassInError)                   \
 413   declare_constant(JVM_CONSTANT_MethodHandleInError)                      \
 414   declare_constant(JVM_CONSTANT_MethodTypeInError)                        \
 415   declare_constant(JVM_CONSTANT_InternalMax)                              \
 416                                                                           \
 417   declare_constant(ArrayData::array_len_off_set)                          \
 418   declare_constant(ArrayData::array_start_off_set)                        \
 419                                                                           \
 420   declare_constant(BitData::exception_seen_flag)                          \
 421   declare_constant(BitData::null_seen_flag)                               \
 422   declare_constant(BranchData::not_taken_off_set)                         \
 423                                                                           \
 424   declare_constant_with_value("CardTable::dirty_card", CardTable::dirty_card_val()) \
 425                                                                           \
 426   declare_constant(CodeInstaller::VERIFIED_ENTRY)                         \
 427   declare_constant(CodeInstaller::UNVERIFIED_ENTRY)                       \
 428   declare_constant(CodeInstaller::OSR_ENTRY)                              \
 429   declare_constant(CodeInstaller::EXCEPTION_HANDLER_ENTRY)                \
 430   declare_constant(CodeInstaller::DEOPT_HANDLER_ENTRY)                    \
 431   declare_constant(CodeInstaller::INVOKEINTERFACE)                        \
 432   declare_constant(CodeInstaller::INVOKEVIRTUAL)                          \
 433   declare_constant(CodeInstaller::INVOKESTATIC)                           \
 434   declare_constant(CodeInstaller::INVOKESPECIAL)                          \
 435   declare_constant(CodeInstaller::INLINE_INVOKE)                          \
 436   declare_constant(CodeInstaller::POLL_NEAR)                              \
 437   declare_constant(CodeInstaller::POLL_RETURN_NEAR)                       \
 438   declare_constant(CodeInstaller::POLL_FAR)                               \
 439   declare_constant(CodeInstaller::POLL_RETURN_FAR)                        \
 440   declare_constant(CodeInstaller::CARD_TABLE_SHIFT)                       \
 441   declare_constant(CodeInstaller::CARD_TABLE_ADDRESS)                     \
 442   declare_constant(CodeInstaller::HEAP_TOP_ADDRESS)                       \
 443   declare_constant(CodeInstaller::HEAP_END_ADDRESS)                       \
 444   declare_constant(CodeInstaller::NARROW_KLASS_BASE_ADDRESS)              \


 629   declare_function(JVMCIRuntime::throw_klass_external_name_exception) \
 630   declare_function(JVMCIRuntime::throw_class_cast_exception) \
 631   declare_function(JVMCIRuntime::log_primitive) \
 632   declare_function(JVMCIRuntime::log_object) \
 633   declare_function(JVMCIRuntime::log_printf) \
 634   declare_function(JVMCIRuntime::vm_error) \
 635   declare_function(JVMCIRuntime::load_and_clear_exception) \
 636   declare_function(JVMCIRuntime::write_barrier_pre) \
 637   declare_function(JVMCIRuntime::write_barrier_post) \
 638   declare_function(JVMCIRuntime::validate_object) \
 639   \
 640   declare_function(JVMCIRuntime::test_deoptimize_call_int)
 641 
 642 
 643 #if INCLUDE_ALL_GCS
 644 
 645 #define VM_STRUCTS_G1(nonstatic_field, static_field) \
 646   static_field(HeapRegion, LogOfHRGrainBytes, int)
 647 
 648 #define VM_INT_CONSTANTS_G1(declare_constant, declare_constant_with_value, declare_preprocessor_constant) \
 649   declare_constant_with_value("G1CardTable::g1_young_gen", G1CardTable::g1_young_card_val())
 650 
 651 #endif // INCLUDE_ALL_GCS
 652 
 653 
 654 #ifdef LINUX
 655 
 656 #define VM_ADDRESSES_OS(declare_address, declare_preprocessor_address, declare_function) \
 657   declare_preprocessor_address("RTLD_DEFAULT", RTLD_DEFAULT)
 658 
 659 #endif
 660 
 661 
 662 #ifdef BSD
 663 
 664 #define VM_ADDRESSES_OS(declare_address, declare_preprocessor_address, declare_function) \
 665   declare_preprocessor_address("RTLD_DEFAULT", RTLD_DEFAULT)
 666 
 667 #endif
 668 
 669 // AARCH64 is defined in closed port, too. TARGET_ARCH_aarch64 is not.


< prev index next >