105 // Constants 106 static void ldc (JavaThread* thread, bool wide); 107 static void resolve_ldc (JavaThread* thread, Bytecodes::Code bytecode); 108 109 // Allocation 110 static void _new (JavaThread* thread, ConstantPool* pool, int index); 111 static void newarray (JavaThread* thread, BasicType type, jint size); 112 static void anewarray (JavaThread* thread, ConstantPool* pool, int index, jint size); 113 static void multianewarray(JavaThread* thread, jint* first_size_address); 114 static void register_finalizer(JavaThread* thread, oopDesc* obj); 115 static void vdefault (JavaThread* thread, ConstantPool* pool, int index); 116 static int vwithfield (JavaThread* thread, ConstantPoolCache* cp_cache); 117 static void qgetfield (JavaThread* thread, oopDesc* value, int index, Klass* field_holder); 118 static void qputfield (JavaThread* thread, oopDesc* obj, oopDesc* value, ConstantPoolCache* cp_cache); 119 static void qputstatic (JavaThread* thread, oopDesc* value, int offset, oopDesc* mirror); 120 static void uninitialized_static_value_field(JavaThread*, oopDesc* mirror, int offset); 121 122 // Value Buffers support 123 static void recycle_vtbuffer(void *alloc_ptr); 124 static void recycle_buffered_values(JavaThread* thread); 125 static void return_value(JavaThread* thread, oopDesc* obj); 126 static void return_value_step2(oopDesc* obj, void* alloc_ptr); 127 static void check_areturn(JavaThread* thread, oopDesc* obj); 128 static void fix_frame_vt_alloc_ptr(JavaThread* thread); 129 130 // vaload/vastore 131 static void value_array_load(JavaThread* thread, arrayOopDesc* array, int index); 132 static void value_array_store(JavaThread* thread, arrayOopDesc* array, int index, void* val); 133 134 // Valhalla MVT VCC<->DVT 135 static void vbox (JavaThread* thread, ConstantPool* pool, int index, oopDesc* value); 136 static void vunbox(JavaThread* thread, ConstantPool* pool, int index, oopDesc* obj); 137 138 139 // Quicken instance-of and check-cast bytecodes 140 static void quicken_io_cc(JavaThread* thread); 141 142 // Exceptions thrown by the interpreter 143 static void throw_AbstractMethodError(JavaThread* thread); 144 static void throw_IncompatibleClassChangeError(JavaThread* thread); 145 static void throw_StackOverflowError(JavaThread* thread); 146 static void throw_delayed_StackOverflowError(JavaThread* thread); | 105 // Constants 106 static void ldc (JavaThread* thread, bool wide); 107 static void resolve_ldc (JavaThread* thread, Bytecodes::Code bytecode); 108 109 // Allocation 110 static void _new (JavaThread* thread, ConstantPool* pool, int index); 111 static void newarray (JavaThread* thread, BasicType type, jint size); 112 static void anewarray (JavaThread* thread, ConstantPool* pool, int index, jint size); 113 static void multianewarray(JavaThread* thread, jint* first_size_address); 114 static void register_finalizer(JavaThread* thread, oopDesc* obj); 115 static void vdefault (JavaThread* thread, ConstantPool* pool, int index); 116 static int vwithfield (JavaThread* thread, ConstantPoolCache* cp_cache); 117 static void qgetfield (JavaThread* thread, oopDesc* value, int index, Klass* field_holder); 118 static void qputfield (JavaThread* thread, oopDesc* obj, oopDesc* value, ConstantPoolCache* cp_cache); 119 static void qputstatic (JavaThread* thread, oopDesc* value, int offset, oopDesc* mirror); 120 static void uninitialized_static_value_field(JavaThread*, oopDesc* mirror, int offset); 121 122 // Value Buffers support 123 static void recycle_vtbuffer(void *alloc_ptr); 124 static void recycle_buffered_values(JavaThread* thread); 125 static void reallocate_value_in_heap(JavaThread* thread, oopDesc* obj); 126 static void relocate_return_value(oopDesc* obj, void* alloc_ptr); 127 static void check_areturn(JavaThread* thread, oopDesc* obj); 128 static void fix_frame_vt_alloc_ptr(JavaThread* thread); 129 130 // vaload/vastore 131 static void value_array_load(JavaThread* thread, arrayOopDesc* array, int index); 132 static void value_array_store(JavaThread* thread, arrayOopDesc* array, int index, void* val); 133 134 // Valhalla MVT VCC<->DVT 135 static void vbox (JavaThread* thread, ConstantPool* pool, int index, oopDesc* value); 136 static void vunbox(JavaThread* thread, ConstantPool* pool, int index, oopDesc* obj); 137 138 139 // Quicken instance-of and check-cast bytecodes 140 static void quicken_io_cc(JavaThread* thread); 141 142 // Exceptions thrown by the interpreter 143 static void throw_AbstractMethodError(JavaThread* thread); 144 static void throw_IncompatibleClassChangeError(JavaThread* thread); 145 static void throw_StackOverflowError(JavaThread* thread); 146 static void throw_delayed_StackOverflowError(JavaThread* thread); |