Mercurial > hg > graal-jvmci-8
changeset 23709:1b939a613788
Rename JVMCIRuntime::max_oop_map_stack_offset to CompilerToVM::Data::_max_oop_map_stack_offset
author | Tom Rodriguez <tom.rodriguez@oracle.com> |
---|---|
date | Tue, 21 Jun 2016 14:36:16 -0700 |
parents | 282873d0192c |
children | 927a39cd7ddd |
files | src/share/vm/jvmci/jvmciCodeInstaller.cpp src/share/vm/jvmci/jvmciCompilerToVM.cpp src/share/vm/jvmci/jvmciCompilerToVM.hpp src/share/vm/jvmci/jvmciRuntime.cpp src/share/vm/jvmci/jvmciRuntime.hpp src/share/vm/jvmci/vmStructs_jvmci.hpp |
diffstat | 6 files changed, 16 insertions(+), 10 deletions(-) [+] |
line wrap: on
line diff
--- a/src/share/vm/jvmci/jvmciCodeInstaller.cpp Tue Jun 21 14:36:00 2016 -0700 +++ b/src/share/vm/jvmci/jvmciCodeInstaller.cpp Tue Jun 21 14:36:16 2016 -0700 @@ -96,9 +96,9 @@ // here. This test should also be equivalent legal_vm_reg_name but JVMCI // clients can use max_oop_map_stack_stack_offset to detect this problem // directly. The asserts just ensure that the tests are in agreement. - assert(offset > JVMCIRuntime::max_oop_map_stack_offset, "illegal VMReg"); + assert(offset > CompilerToVM::Data::max_oop_map_stack_offset(), "illegal VMReg"); JVMCI_ERROR_NULL("stack offset %d is too large to be encoded in OopMap (max %d)", - offset, JVMCIRuntime::max_oop_map_stack_offset); + offset, CompilerToVM::Data::max_oop_map_stack_offset()); } assert(OopMapValue::legal_vm_reg_name(vmReg), "illegal VMReg"); return vmReg;
--- a/src/share/vm/jvmci/jvmciCompilerToVM.cpp Tue Jun 21 14:36:00 2016 -0700 +++ b/src/share/vm/jvmci/jvmciCompilerToVM.cpp Tue Jun 21 14:36:16 2016 -0700 @@ -108,6 +108,7 @@ bool CompilerToVM::Data::_supports_inline_contig_alloc; HeapWord** CompilerToVM::Data::_heap_end_addr; HeapWord** CompilerToVM::Data::_heap_top_addr; +int CompilerToVM::Data::_max_oop_map_stack_offset; jbyte* CompilerToVM::Data::cardtable_start_address; int CompilerToVM::Data::cardtable_shift; @@ -154,6 +155,11 @@ _heap_end_addr = _supports_inline_contig_alloc ? Universe::heap()->end_addr() : (HeapWord**) -1; _heap_top_addr = _supports_inline_contig_alloc ? Universe::heap()->top_addr() : (HeapWord**) -1; + _max_oop_map_stack_offset = (OopMapValue::register_mask - VMRegImpl::stack2reg(0)->value()) * VMRegImpl::stack_slot_size; + int max_oop_map_stack_index = _max_oop_map_stack_offset / VMRegImpl::stack_slot_size; + assert(OopMapValue::legal_vm_reg_name(VMRegImpl::stack2reg(max_oop_map_stack_index)), "should be valid"); + assert(!OopMapValue::legal_vm_reg_name(VMRegImpl::stack2reg(max_oop_map_stack_index + 1)), "should be invalid"); + g1_young_card = G1SATBCardTableModRefBS::g1_young_card_val(); dirty_card = CardTableModRefBS::dirty_card_val();
--- a/src/share/vm/jvmci/jvmciCompilerToVM.hpp Tue Jun 21 14:36:00 2016 -0700 +++ b/src/share/vm/jvmci/jvmciCompilerToVM.hpp Tue Jun 21 14:36:16 2016 -0700 @@ -59,6 +59,7 @@ static bool _supports_inline_contig_alloc; static HeapWord** _heap_end_addr; static HeapWord** _heap_top_addr; + static int _max_oop_map_stack_offset; static jbyte* cardtable_start_address; static int cardtable_shift; @@ -80,6 +81,11 @@ public: static void initialize(TRAPS); + + static int max_oop_map_stack_offset() { + assert(_max_oop_map_stack_offset > 0, "must be initialized"); + return Data::_max_oop_map_stack_offset; + } }; /**
--- a/src/share/vm/jvmci/jvmciRuntime.cpp Tue Jun 21 14:36:00 2016 -0700 +++ b/src/share/vm/jvmci/jvmciRuntime.cpp Tue Jun 21 14:36:16 2016 -0700 @@ -51,7 +51,6 @@ char** JVMCIRuntime::_trivial_prefixes = NULL; JVMCIRuntime::CompLevelAdjustment JVMCIRuntime::_comp_level_adjustment = JVMCIRuntime::none; bool JVMCIRuntime::_shutdown_called = false; -int JVMCIRuntime::max_oop_map_stack_offset = (OopMapValue::register_mask - VMRegImpl::stack2reg(0)->value()) * VMRegImpl::stack_slot_size; BasicType JVMCIRuntime::kindToBasicType(Handle kind, TRAPS) { if (kind.is_null()) { @@ -660,10 +659,6 @@ "HotSpotJVMCIRuntime initialization should only be triggered through JVMCI initialization"); #endif - int max_oop_map_stack_index = max_oop_map_stack_offset / VMRegImpl::stack_slot_size; - assert(OopMapValue::legal_vm_reg_name(VMRegImpl::stack2reg(max_oop_map_stack_index)), "should be valid"); - assert(!OopMapValue::legal_vm_reg_name(VMRegImpl::stack2reg(max_oop_map_stack_index + 1)), "should be invalid"); - Handle result = callStatic("jdk/vm/ci/hotspot/HotSpotJVMCIRuntime", "runtime", "()Ljdk/vm/ci/hotspot/HotSpotJVMCIRuntime;", NULL, CHECK);
--- a/src/share/vm/jvmci/jvmciRuntime.hpp Tue Jun 21 14:36:00 2016 -0700 +++ b/src/share/vm/jvmci/jvmciRuntime.hpp Tue Jun 21 14:36:16 2016 -0700 @@ -51,8 +51,6 @@ by_full_signature = 2 // adjust based on declaring class, name and signature of method }; - static int max_oop_map_stack_offset; - private: static jobject _HotSpotJVMCIRuntime_instance; static bool _HotSpotJVMCIRuntime_initialized;
--- a/src/share/vm/jvmci/vmStructs_jvmci.hpp Tue Jun 21 14:36:00 2016 -0700 +++ b/src/share/vm/jvmci/vmStructs_jvmci.hpp Tue Jun 21 14:36:16 2016 -0700 @@ -57,6 +57,8 @@ static_field(CompilerToVM::Data, _heap_end_addr, HeapWord**) \ static_field(CompilerToVM::Data, _heap_top_addr, HeapWord**) \ \ + static_field(CompilerToVM::Data, _max_oop_map_stack_offset, int) \ + \ static_field(CompilerToVM::Data, cardtable_start_address, jbyte*) \ static_field(CompilerToVM::Data, cardtable_shift, int) \ static_field(CompilerToVM::Data, g1_young_card, int) \ @@ -82,7 +84,6 @@ nonstatic_field(MethodData, _jvmci_ir_size, int) \ nonstatic_field(JVMCIEnv, _task, CompileTask*) \ nonstatic_field(JVMCIEnv, _jvmti_can_hotswap_or_post_breakpoint, bool) \ - static_field(JVMCIRuntime, max_oop_map_stack_offset, int) \ #define VM_TYPES_JVMCI(declare_type, declare_toplevel_type) \ declare_toplevel_type(narrowKlass) \