237 238 void site_Safepoint(CodeBuffer& buffer, jint pc_offset, Handle site, TRAPS); 239 void site_Infopoint(CodeBuffer& buffer, jint pc_offset, Handle site, TRAPS); 240 void site_Call(CodeBuffer& buffer, jint pc_offset, Handle site, TRAPS); 241 void site_DataPatch(CodeBuffer& buffer, jint pc_offset, Handle site, TRAPS); 242 void site_Mark(CodeBuffer& buffer, jint pc_offset, Handle site, TRAPS); 243 void site_ExceptionHandler(jint pc_offset, Handle site); 244 245 OopMap* create_oop_map(Handle debug_info, TRAPS); 246 247 /** 248 * Specifies the level of detail to record for a scope. 249 */ 250 enum ScopeMode { 251 // Only record a method and BCI 252 BytecodePosition, 253 // Record a method, bci and JVM frame state 254 FullFrame 255 }; 256 257 void record_scope(jint pc_offset, Handle debug_info, ScopeMode scope_mode, TRAPS); 258 void record_scope(jint pc_offset, Handle position, ScopeMode scope_mode, GrowableArray<ScopeValue*>* objects, TRAPS); 259 void record_object_value(ObjectValue* sv, Handle value, GrowableArray<ScopeValue*>* objects, TRAPS); 260 261 GrowableArray<ScopeValue*>* record_virtual_objects(Handle debug_info, TRAPS); 262 263 int estimateStubSpace(int static_call_stubs); 264 }; 265 266 /** 267 * Gets the Method metaspace object from a HotSpotResolvedJavaMethodImpl Java object. 268 */ 269 Method* getMethodFromHotSpotMethod(oop hotspot_method); 270 271 272 273 #endif // SHARE_VM_JVMCI_JVMCI_CODE_INSTALLER_HPP | 237 238 void site_Safepoint(CodeBuffer& buffer, jint pc_offset, Handle site, TRAPS); 239 void site_Infopoint(CodeBuffer& buffer, jint pc_offset, Handle site, TRAPS); 240 void site_Call(CodeBuffer& buffer, jint pc_offset, Handle site, TRAPS); 241 void site_DataPatch(CodeBuffer& buffer, jint pc_offset, Handle site, TRAPS); 242 void site_Mark(CodeBuffer& buffer, jint pc_offset, Handle site, TRAPS); 243 void site_ExceptionHandler(jint pc_offset, Handle site); 244 245 OopMap* create_oop_map(Handle debug_info, TRAPS); 246 247 /** 248 * Specifies the level of detail to record for a scope. 249 */ 250 enum ScopeMode { 251 // Only record a method and BCI 252 BytecodePosition, 253 // Record a method, bci and JVM frame state 254 FullFrame 255 }; 256 257 void record_scope(jint pc_offset, Handle debug_info, ScopeMode scope_mode, bool return_oop, TRAPS); 258 void record_scope(jint pc_offset, Handle debug_info, ScopeMode scope_mode, TRAPS) { 259 record_scope(pc_offset, debug_info, scope_mode, false /* return_oop */, THREAD); 260 } 261 void record_scope(jint pc_offset, Handle position, ScopeMode scope_mode, GrowableArray<ScopeValue*>* objects, bool return_oop, TRAPS); 262 void record_object_value(ObjectValue* sv, Handle value, GrowableArray<ScopeValue*>* objects, TRAPS); 263 264 GrowableArray<ScopeValue*>* record_virtual_objects(Handle debug_info, TRAPS); 265 266 int estimateStubSpace(int static_call_stubs); 267 }; 268 269 /** 270 * Gets the Method metaspace object from a HotSpotResolvedJavaMethodImpl Java object. 271 */ 272 Method* getMethodFromHotSpotMethod(oop hotspot_method); 273 274 275 276 #endif // SHARE_VM_JVMCI_JVMCI_CODE_INSTALLER_HPP |