Permalink
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Browse files
8241458: [JVMCI] add mark value to expose CodeOffsets::Frame_Complete
- Loading branch information
|
@@ -609,7 +609,7 @@ JVMCI::CodeInstallResult CodeInstaller::install(JVMCICompiler* compiler, |
|
|
char* name = strdup(jvmci_env()->as_utf8_string(stubName)); |
|
|
cb = RuntimeStub::new_runtime_stub(name, |
|
|
&buffer, |
|
|
CodeOffsets::frame_never_safe, |
|
|
_offsets.value(CodeOffsets::Frame_Complete), |
|
|
stack_slots, |
|
|
_debug_recorder->_oopmaps, |
|
|
false); |
|
@@ -1321,6 +1321,9 @@ void CodeInstaller::site_Mark(CodeBuffer& buffer, jint pc_offset, JVMCIObject si |
|
|
case DEOPT_HANDLER_ENTRY: |
|
|
_offsets.set_value(CodeOffsets::Deopt, pc_offset); |
|
|
break; |
|
|
case FRAME_COMPLETE: |
|
|
_offsets.set_value(CodeOffsets::Frame_Complete, pc_offset); |
|
|
break; |
|
|
case INVOKEVIRTUAL: |
|
|
case INVOKEINTERFACE: |
|
|
case INLINE_INVOKE: |
|
|
|
@@ -134,29 +134,31 @@ class CodeInstaller : public StackObj { |
|
|
friend class JVMCIVMStructs; |
|
|
private: |
|
|
enum MarkId { |
|
|
VERIFIED_ENTRY = 1, |
|
|
UNVERIFIED_ENTRY = 2, |
|
|
OSR_ENTRY = 3, |
|
|
EXCEPTION_HANDLER_ENTRY = 4, |
|
|
DEOPT_HANDLER_ENTRY = 5, |
|
|
INVOKEINTERFACE = 6, |
|
|
INVOKEVIRTUAL = 7, |
|
|
INVOKESTATIC = 8, |
|
|
INVOKESPECIAL = 9, |
|
|
INLINE_INVOKE = 10, |
|
|
POLL_NEAR = 11, |
|
|
POLL_RETURN_NEAR = 12, |
|
|
POLL_FAR = 13, |
|
|
POLL_RETURN_FAR = 14, |
|
|
CARD_TABLE_ADDRESS = 15, |
|
|
CARD_TABLE_SHIFT = 16, |
|
|
HEAP_TOP_ADDRESS = 17, |
|
|
HEAP_END_ADDRESS = 18, |
|
|
NARROW_KLASS_BASE_ADDRESS = 19, |
|
|
NARROW_OOP_BASE_ADDRESS = 20, |
|
|
CRC_TABLE_ADDRESS = 21, |
|
|
LOG_OF_HEAP_REGION_GRAIN_BYTES = 22, |
|
|
INLINE_CONTIGUOUS_ALLOCATION_SUPPORTED = 23, |
|
|
INVALID_MARK, |
|
|
VERIFIED_ENTRY, |
|
|
UNVERIFIED_ENTRY, |
|
|
OSR_ENTRY, |
|
|
EXCEPTION_HANDLER_ENTRY, |
|
|
DEOPT_HANDLER_ENTRY, |
|
|
FRAME_COMPLETE, |
|
|
INVOKEINTERFACE, |
|
|
INVOKEVIRTUAL, |
|
|
INVOKESTATIC, |
|
|
INVOKESPECIAL, |
|
|
INLINE_INVOKE, |
|
|
POLL_NEAR, |
|
|
POLL_RETURN_NEAR, |
|
|
POLL_FAR, |
|
|
POLL_RETURN_FAR, |
|
|
CARD_TABLE_ADDRESS, |
|
|
CARD_TABLE_SHIFT, |
|
|
HEAP_TOP_ADDRESS, |
|
|
HEAP_END_ADDRESS, |
|
|
NARROW_KLASS_BASE_ADDRESS, |
|
|
NARROW_OOP_BASE_ADDRESS, |
|
|
CRC_TABLE_ADDRESS, |
|
|
LOG_OF_HEAP_REGION_GRAIN_BYTES, |
|
|
INLINE_CONTIGUOUS_ALLOCATION_SUPPORTED, |
|
|
INVOKE_INVALID = -1 |
|
|
}; |
|
|
|
|
|
|
@@ -451,6 +451,7 @@ |
|
|
declare_constant(CodeInstaller::OSR_ENTRY) \ |
|
|
declare_constant(CodeInstaller::EXCEPTION_HANDLER_ENTRY) \ |
|
|
declare_constant(CodeInstaller::DEOPT_HANDLER_ENTRY) \ |
|
|
declare_constant(CodeInstaller::FRAME_COMPLETE) \ |
|
|
declare_constant(CodeInstaller::INVOKEINTERFACE) \ |
|
|
declare_constant(CodeInstaller::INVOKEVIRTUAL) \ |
|
|
declare_constant(CodeInstaller::INVOKESTATIC) \ |
|
|