src/share/vm/interpreter/templateInterpreter.hpp
Index
Unified diffs
Context diffs
Sdiffs
Patch
New
Old
Previous File
Next File
8074457 Cdiff src/share/vm/interpreter/templateInterpreter.hpp
src/share/vm/interpreter/templateInterpreter.hpp
Print this page
*** 32,41 ****
--- 32,42 ----
// of the template interpreter and the template interpreter generator.
#ifndef CC_INTERP
class InterpreterMacroAssembler;
+ class InterpreterCodelet;
//------------------------------------------------------------------------------------------------------------------------
// A little wrapper class to group tosca-specific entry points into a unit.
// (tosca = Top-Of-Stack CAche)
*** 83,93 ****
class TemplateInterpreter: public AbstractInterpreter {
friend class VMStructs;
friend class InterpreterMacroAssembler;
friend class TemplateInterpreterGenerator;
- friend class InterpreterGenerator;
friend class TemplateTable;
friend class CodeCacheExtensions;
// friend class Interpreter;
public:
--- 84,93 ----
*** 135,144 ****
--- 135,147 ----
public:
// Initialization/debugging
static void initialize();
// this only returns whether a pc is within generated code for the interpreter.
static bool contains(address pc) { return _code != NULL && _code->contains(pc); }
+ // Debugging/printing
+ static InterpreterCodelet* codelet_containing(address pc);
+
public:
static address remove_activation_early_entry(TosState state) { return _earlyret_entry.entry(state); }
#ifdef HOTSWAP
*** 186,215 ****
// Deoptimization should reexecute this bytecode
static bool bytecode_should_reexecute(Bytecodes::Code code);
// Compute the address for reexecution
static address deopt_reexecute_entry(Method* method, address bcp);
! #ifdef TARGET_ARCH_x86
! # include "templateInterpreter_x86.hpp"
! #endif
! #ifdef TARGET_ARCH_sparc
! # include "templateInterpreter_sparc.hpp"
! #endif
! #ifdef TARGET_ARCH_zero
! # include "templateInterpreter_zero.hpp"
! #endif
! #ifdef TARGET_ARCH_arm
! # include "templateInterpreter_arm.hpp"
! #endif
#ifdef TARGET_ARCH_ppc
! # include "templateInterpreter_ppc.hpp"
! #endif
! #ifdef TARGET_ARCH_aarch64
! # include "templateInterpreter_aarch64.hpp"
#endif
-
-
};
#endif // !CC_INTERP
#endif // SHARE_VM_INTERPRETER_TEMPLATEINTERPRETER_HPP
--- 189,207 ----
// Deoptimization should reexecute this bytecode
static bool bytecode_should_reexecute(Bytecodes::Code code);
// Compute the address for reexecution
static address deopt_reexecute_entry(Method* method, address bcp);
! // Size of interpreter code. Max size with JVMTI
! static int InterpreterCodeSize;
!
#ifdef TARGET_ARCH_ppc
! public:
! // PPC-only: Support abs and sqrt like in compiler.
! // For others we can use a normal (native) entry.
! static bool math_entry_available(AbstractInterpreter::MethodKind kind);
#endif
};
#endif // !CC_INTERP
#endif // SHARE_VM_INTERPRETER_TEMPLATEINTERPRETER_HPP
src/share/vm/interpreter/templateInterpreter.hpp
Index
Unified diffs
Context diffs
Sdiffs
Patch
New
Old
Previous File
Next File