12 * version 2 for more details (a copy is included in the LICENSE file that
13 * accompanied this code).
14 *
15 * You should have received a copy of the GNU General Public License version
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 #ifndef SHARE_VM_INTERPRETER_INTERPRETER_HPP
26 #define SHARE_VM_INTERPRETER_INTERPRETER_HPP
27
28 #include "code/stubs.hpp"
29 #include "interpreter/cppInterpreter.hpp"
30 #include "interpreter/templateInterpreter.hpp"
31 #include "memory/resourceArea.hpp"
32 #ifdef ZERO
33 #ifdef TARGET_ARCH_zero
34 # include "entry_zero.hpp"
35 #endif
36 #endif
37
38 // This file contains the platform-independent parts
39 // of the interpreter and the interpreter generator.
40
41 class InterpreterMacroAssembler;
42
43 //------------------------------------------------------------------------------------------------------------------------
44 // An InterpreterCodelet is a piece of interpreter code. All
45 // interpreter code is generated into little codelets which
46 // contain extra information for debugging and printing purposes.
47
48 class InterpreterCodelet: public Stub {
49 friend class VMStructs;
50 private:
51 int _size; // the size in bytes
52 const char* _description; // a description of the codelet, for debugging & printing
53 Bytecodes::Code _bytecode; // associated bytecode if any
54 DEBUG_ONLY(CodeStrings _strings;) // Comments for annotating assembler output.
55
|
12 * version 2 for more details (a copy is included in the LICENSE file that
13 * accompanied this code).
14 *
15 * You should have received a copy of the GNU General Public License version
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 #ifndef SHARE_VM_INTERPRETER_INTERPRETER_HPP
26 #define SHARE_VM_INTERPRETER_INTERPRETER_HPP
27
28 #include "code/stubs.hpp"
29 #include "interpreter/cppInterpreter.hpp"
30 #include "interpreter/templateInterpreter.hpp"
31 #include "memory/resourceArea.hpp"
32 #ifdef TARGET_ARCH_zero
33 # include "entry_zero.hpp"
34 #endif
35
36 // This file contains the platform-independent parts
37 // of the interpreter and the interpreter generator.
38
39 class InterpreterMacroAssembler;
40
41 //------------------------------------------------------------------------------------------------------------------------
42 // An InterpreterCodelet is a piece of interpreter code. All
43 // interpreter code is generated into little codelets which
44 // contain extra information for debugging and printing purposes.
45
46 class InterpreterCodelet: public Stub {
47 friend class VMStructs;
48 private:
49 int _size; // the size in bytes
50 const char* _description; // a description of the codelet, for debugging & printing
51 Bytecodes::Code _bytecode; // associated bytecode if any
52 DEBUG_ONLY(CodeStrings _strings;) // Comments for annotating assembler output.
53
|