81 // Constants
82 static void ldc (JavaThread* thread, bool wide);
83 static void resolve_ldc (JavaThread* thread, Bytecodes::Code bytecode);
84
85 // Allocation
86 static void _new (JavaThread* thread, constantPoolOopDesc* pool, int index);
87 static void newarray (JavaThread* thread, BasicType type, jint size);
88 static void anewarray (JavaThread* thread, constantPoolOopDesc* pool, int index, jint size);
89 static void multianewarray(JavaThread* thread, jint* first_size_address);
90 static void register_finalizer(JavaThread* thread, oopDesc* obj);
91
92 // Quicken instance-of and check-cast bytecodes
93 static void quicken_io_cc(JavaThread* thread);
94
95 // Exceptions thrown by the interpreter
96 static void throw_AbstractMethodError(JavaThread* thread);
97 static void throw_IncompatibleClassChangeError(JavaThread* thread);
98 static void throw_StackOverflowError(JavaThread* thread);
99 static void throw_ArrayIndexOutOfBoundsException(JavaThread* thread, char* name, jint index);
100 static void throw_ClassCastException(JavaThread* thread, oopDesc* obj);
101 static void throw_WrongMethodTypeException(JavaThread* thread, oopDesc* mtype = NULL, oopDesc* mhandle = NULL);
102 static void create_exception(JavaThread* thread, char* name, char* message);
103 static void create_klass_exception(JavaThread* thread, char* name, oopDesc* obj);
104 static address exception_handler_for_exception(JavaThread* thread, oopDesc* exception);
105 static void throw_pending_exception(JavaThread* thread);
106
107 // Statics & fields
108 static void resolve_get_put(JavaThread* thread, Bytecodes::Code bytecode);
109
110 // Synchronization
111 static void monitorenter(JavaThread* thread, BasicObjectLock* elem);
112 static void monitorexit (JavaThread* thread, BasicObjectLock* elem);
113
114 static void throw_illegal_monitor_state_exception(JavaThread* thread);
115 static void new_illegal_monitor_state_exception(JavaThread* thread);
116
117 // Calls
118 static void resolve_invoke (JavaThread* thread, Bytecodes::Code bytecode);
119 static void resolve_invokedynamic(JavaThread* thread);
120
121 // Breakpoints
|
81 // Constants
82 static void ldc (JavaThread* thread, bool wide);
83 static void resolve_ldc (JavaThread* thread, Bytecodes::Code bytecode);
84
85 // Allocation
86 static void _new (JavaThread* thread, constantPoolOopDesc* pool, int index);
87 static void newarray (JavaThread* thread, BasicType type, jint size);
88 static void anewarray (JavaThread* thread, constantPoolOopDesc* pool, int index, jint size);
89 static void multianewarray(JavaThread* thread, jint* first_size_address);
90 static void register_finalizer(JavaThread* thread, oopDesc* obj);
91
92 // Quicken instance-of and check-cast bytecodes
93 static void quicken_io_cc(JavaThread* thread);
94
95 // Exceptions thrown by the interpreter
96 static void throw_AbstractMethodError(JavaThread* thread);
97 static void throw_IncompatibleClassChangeError(JavaThread* thread);
98 static void throw_StackOverflowError(JavaThread* thread);
99 static void throw_ArrayIndexOutOfBoundsException(JavaThread* thread, char* name, jint index);
100 static void throw_ClassCastException(JavaThread* thread, oopDesc* obj);
101 static void create_exception(JavaThread* thread, char* name, char* message);
102 static void create_klass_exception(JavaThread* thread, char* name, oopDesc* obj);
103 static address exception_handler_for_exception(JavaThread* thread, oopDesc* exception);
104 static void throw_pending_exception(JavaThread* thread);
105
106 // Statics & fields
107 static void resolve_get_put(JavaThread* thread, Bytecodes::Code bytecode);
108
109 // Synchronization
110 static void monitorenter(JavaThread* thread, BasicObjectLock* elem);
111 static void monitorexit (JavaThread* thread, BasicObjectLock* elem);
112
113 static void throw_illegal_monitor_state_exception(JavaThread* thread);
114 static void new_illegal_monitor_state_exception(JavaThread* thread);
115
116 // Calls
117 static void resolve_invoke (JavaThread* thread, Bytecodes::Code bytecode);
118 static void resolve_invokedynamic(JavaThread* thread);
119
120 // Breakpoints
|