124 static bool is_breakpoint(JavaThread *thread) { return Bytecodes::code_or_bp_at(bcp(thread)) == Bytecodes::_breakpoint; }
125
126 // Safepoints
127 static void at_safepoint(JavaThread* thread);
128
129 // Debugger support
130 static void post_field_access(JavaThread *thread, oopDesc* obj,
131 ConstantPoolCacheEntry *cp_entry);
132 static void post_field_modification(JavaThread *thread, oopDesc* obj,
133 ConstantPoolCacheEntry *cp_entry, jvalue *value);
134 static void post_method_entry(JavaThread *thread);
135 static void post_method_exit (JavaThread *thread);
136 static int interpreter_contains(address pc);
137
138 // Native signature handlers
139 static void prepare_native_call(JavaThread* thread, methodOopDesc* method);
140 static address slow_signature_handler(JavaThread* thread,
141 methodOopDesc* method,
142 intptr_t* from, intptr_t* to);
143
144 #if defined(IA32) || defined(AMD64)
145 // Popframe support (only needed on x86 and AMD64)
146 static void popframe_move_outgoing_args(JavaThread* thread, void* src_address, void* dest_address);
147 #endif
148
149 // Platform dependent stuff
150 #ifdef TARGET_ARCH_x86
151 # include "interpreterRT_x86.hpp"
152 #endif
153 #ifdef TARGET_ARCH_sparc
154 # include "interpreterRT_sparc.hpp"
155 #endif
156 #ifdef TARGET_ARCH_zero
157 # include "interpreterRT_zero.hpp"
158 #endif
159 #ifdef TARGET_ARCH_arm
160 # include "interpreterRT_arm.hpp"
161 #endif
162 #ifdef TARGET_ARCH_ppc
163 # include "interpreterRT_ppc.hpp"
164 #endif
165
|
124 static bool is_breakpoint(JavaThread *thread) { return Bytecodes::code_or_bp_at(bcp(thread)) == Bytecodes::_breakpoint; }
125
126 // Safepoints
127 static void at_safepoint(JavaThread* thread);
128
129 // Debugger support
130 static void post_field_access(JavaThread *thread, oopDesc* obj,
131 ConstantPoolCacheEntry *cp_entry);
132 static void post_field_modification(JavaThread *thread, oopDesc* obj,
133 ConstantPoolCacheEntry *cp_entry, jvalue *value);
134 static void post_method_entry(JavaThread *thread);
135 static void post_method_exit (JavaThread *thread);
136 static int interpreter_contains(address pc);
137
138 // Native signature handlers
139 static void prepare_native_call(JavaThread* thread, methodOopDesc* method);
140 static address slow_signature_handler(JavaThread* thread,
141 methodOopDesc* method,
142 intptr_t* from, intptr_t* to);
143
144 #if defined(IA32) || defined(AMD64) || defined(ARM)
145 // Popframe support (only needed on x86, AMD64 and ARM)
146 static void popframe_move_outgoing_args(JavaThread* thread, void* src_address, void* dest_address);
147 #endif
148
149 // Platform dependent stuff
150 #ifdef TARGET_ARCH_x86
151 # include "interpreterRT_x86.hpp"
152 #endif
153 #ifdef TARGET_ARCH_sparc
154 # include "interpreterRT_sparc.hpp"
155 #endif
156 #ifdef TARGET_ARCH_zero
157 # include "interpreterRT_zero.hpp"
158 #endif
159 #ifdef TARGET_ARCH_arm
160 # include "interpreterRT_arm.hpp"
161 #endif
162 #ifdef TARGET_ARCH_ppc
163 # include "interpreterRT_ppc.hpp"
164 #endif
165
|