Mercurial > hg > graal-jvmci-8
diff src/share/vm/graal/graalCodeInstaller.hpp @ 20044:c1f116cd4b67
Speed up debug info generation for virtual objects
author | Tom Rodriguez <tom.rodriguez@oracle.com> |
---|---|
date | Fri, 27 Mar 2015 00:41:11 -0700 |
parents | deab43a789ad |
children | 8d4496e10a51 |
line wrap: on
line diff
--- a/src/share/vm/graal/graalCodeInstaller.hpp Thu Mar 26 22:26:18 2015 +0100 +++ b/src/share/vm/graal/graalCodeInstaller.hpp Fri Mar 27 00:41:11 2015 -0700 @@ -114,12 +114,10 @@ static VMReg get_hotspot_reg(jint graalRegisterNumber); static bool is_general_purpose_reg(VMReg hotspotRegister); -protected: +private: + ScopeValue* get_scope_value(oop value, GrowableArray<ScopeValue*>* objects, ScopeValue* &second); + MonitorValue* get_monitor_value(oop value, GrowableArray<ScopeValue*>* objects); - virtual ScopeValue* get_scope_value(oop value, int total_frame_size, GrowableArray<ScopeValue*>* objects, ScopeValue* &second, OopRecorder* oop_recorder); - virtual MonitorValue* get_monitor_value(oop value, int total_frame_size, GrowableArray<ScopeValue*>* objects, OopRecorder* oop_recorder); - -private: // extract the fields of the CompilationResult void initialize_fields(oop target_method); void initialize_dependencies(oop target_method); @@ -141,7 +139,11 @@ void site_DataPatch(CodeBuffer& buffer, jint pc_offset, oop site); void site_Mark(CodeBuffer& buffer, jint pc_offset, oop site); + void record_scope(jint pc_offset, oop debug_info); void record_scope(jint pc_offset, oop code_pos, GrowableArray<ScopeValue*>* objects); + void record_object_value(ObjectValue* sv, oop value, GrowableArray<ScopeValue*>* objects); + + GrowableArray<ScopeValue*>* record_virtual_objects(oop debug_info); void process_exception_handlers(); int estimateStubSpace(int static_call_stubs);