89 static void create_klass_exception(JavaThread* current, char* name, oopDesc* obj);
90 static address exception_handler_for_exception(JavaThread* current, oopDesc* exception);
91 #if INCLUDE_JVMTI
92 static void member_name_arg_or_null(JavaThread* current, address dmh, Method* m, address bcp);
93 #endif
94 static void throw_pending_exception(JavaThread* current);
95
96 static void resolve_from_cache(JavaThread* current, Bytecodes::Code bytecode);
97 private:
98 // Statics & fields
99 static void resolve_get_put(JavaThread* current, Bytecodes::Code bytecode);
100
101 // Calls
102 static void resolve_invoke(JavaThread* current, Bytecodes::Code bytecode);
103 static void resolve_invokehandle (JavaThread* current);
104 static void resolve_invokedynamic(JavaThread* current);
105
106 public:
107 // Synchronization
108 static void monitorenter(JavaThread* current, BasicObjectLock* elem);
109 static void monitorexit (BasicObjectLock* elem);
110
111 static void throw_illegal_monitor_state_exception(JavaThread* current);
112 static void new_illegal_monitor_state_exception(JavaThread* current);
113
114 // Breakpoints
115 static void _breakpoint(JavaThread* current, Method* method, address bcp);
116 static Bytecodes::Code get_original_bytecode_at(JavaThread* current, Method* method, address bcp);
117 static void set_original_bytecode_at(JavaThread* current, Method* method, address bcp, Bytecodes::Code new_code);
118
119 // Safepoints
120 static void at_safepoint(JavaThread* current);
121 static void at_unwind(JavaThread* current);
122
123 // Debugger support
124 static void post_field_access(JavaThread* current, oopDesc* obj,
125 ConstantPoolCacheEntry *cp_entry);
126 static void post_field_modification(JavaThread* current, oopDesc* obj,
127 ConstantPoolCacheEntry *cp_entry, jvalue *value);
128 static void post_method_entry(JavaThread* current);
|
89 static void create_klass_exception(JavaThread* current, char* name, oopDesc* obj);
90 static address exception_handler_for_exception(JavaThread* current, oopDesc* exception);
91 #if INCLUDE_JVMTI
92 static void member_name_arg_or_null(JavaThread* current, address dmh, Method* m, address bcp);
93 #endif
94 static void throw_pending_exception(JavaThread* current);
95
96 static void resolve_from_cache(JavaThread* current, Bytecodes::Code bytecode);
97 private:
98 // Statics & fields
99 static void resolve_get_put(JavaThread* current, Bytecodes::Code bytecode);
100
101 // Calls
102 static void resolve_invoke(JavaThread* current, Bytecodes::Code bytecode);
103 static void resolve_invokehandle (JavaThread* current);
104 static void resolve_invokedynamic(JavaThread* current);
105
106 public:
107 // Synchronization
108 static void monitorenter(JavaThread* current, BasicObjectLock* elem);
109 static void monitorenter_obj(JavaThread* current, oopDesc* obj);
110 static void monitorexit (BasicObjectLock* elem);
111
112 static void throw_illegal_monitor_state_exception(JavaThread* current);
113 static void new_illegal_monitor_state_exception(JavaThread* current);
114
115 // Breakpoints
116 static void _breakpoint(JavaThread* current, Method* method, address bcp);
117 static Bytecodes::Code get_original_bytecode_at(JavaThread* current, Method* method, address bcp);
118 static void set_original_bytecode_at(JavaThread* current, Method* method, address bcp, Bytecodes::Code new_code);
119
120 // Safepoints
121 static void at_safepoint(JavaThread* current);
122 static void at_unwind(JavaThread* current);
123
124 // Debugger support
125 static void post_field_access(JavaThread* current, oopDesc* obj,
126 ConstantPoolCacheEntry *cp_entry);
127 static void post_field_modification(JavaThread* current, oopDesc* obj,
128 ConstantPoolCacheEntry *cp_entry, jvalue *value);
129 static void post_method_entry(JavaThread* current);
|