src/share/vm/runtime/deoptimization.hpp
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File hs-comp-code-aging Sdiff src/share/vm/runtime

src/share/vm/runtime/deoptimization.hpp

Print this page




 359   static void popframe_preserve_args(JavaThread* thread, int bytes_to_save, void* start_address);
 360 
 361   static MethodData* get_method_data(JavaThread* thread, methodHandle m, bool create_if_missing);
 362  private:
 363   // Update the mdo's count and per-BCI reason bits, returning previous state:
 364   static ProfileData* query_update_method_data(MethodData* trap_mdo,
 365                                                int trap_bci,
 366                                                DeoptReason reason,
 367                                                Method* compiled_method,
 368                                                //outputs:
 369                                                uint& ret_this_trap_count,
 370                                                bool& ret_maybe_prior_trap,
 371                                                bool& ret_maybe_prior_recompile);
 372   // class loading support for uncommon trap
 373   static void load_class_by_index(constantPoolHandle constant_pool, int index, TRAPS);
 374   static void load_class_by_index(constantPoolHandle constant_pool, int index);
 375 
 376   static UnrollBlock* fetch_unroll_info_helper(JavaThread* thread);
 377 
 378   static DeoptAction _unloaded_action; // == Action_reinterpret;
 379   static const char* _trap_reason_name[Reason_LIMIT];
 380   static const char* _trap_action_name[Action_LIMIT];
 381 
 382   static juint _deoptimization_hist[Reason_LIMIT][1+Action_LIMIT][BC_CASE_LIMIT];
 383   // Note:  Histogram array size is 1-2 Kb.
 384 
 385  public:
 386   static void update_method_data_from_interpreter(MethodData* trap_mdo, int trap_bci, int reason);
 387 };
 388 
 389 class DeoptimizationMarker : StackObj {  // for profiling
 390   static bool _is_active;
 391 public:
 392   DeoptimizationMarker()  { _is_active = true; }
 393   ~DeoptimizationMarker() { _is_active = false; }
 394   static bool is_active() { return _is_active; }
 395 };
 396 
 397 #endif // SHARE_VM_RUNTIME_DEOPTIMIZATION_HPP


 359   static void popframe_preserve_args(JavaThread* thread, int bytes_to_save, void* start_address);
 360 
 361   static MethodData* get_method_data(JavaThread* thread, methodHandle m, bool create_if_missing);
 362  private:
 363   // Update the mdo's count and per-BCI reason bits, returning previous state:
 364   static ProfileData* query_update_method_data(MethodData* trap_mdo,
 365                                                int trap_bci,
 366                                                DeoptReason reason,
 367                                                Method* compiled_method,
 368                                                //outputs:
 369                                                uint& ret_this_trap_count,
 370                                                bool& ret_maybe_prior_trap,
 371                                                bool& ret_maybe_prior_recompile);
 372   // class loading support for uncommon trap
 373   static void load_class_by_index(constantPoolHandle constant_pool, int index, TRAPS);
 374   static void load_class_by_index(constantPoolHandle constant_pool, int index);
 375 
 376   static UnrollBlock* fetch_unroll_info_helper(JavaThread* thread);
 377 
 378   static DeoptAction _unloaded_action; // == Action_reinterpret;
 379   static const char* _trap_reason_name[];
 380   static const char* _trap_action_name[];
 381 
 382   static juint _deoptimization_hist[Reason_LIMIT][1+Action_LIMIT][BC_CASE_LIMIT];
 383   // Note:  Histogram array size is 1-2 Kb.
 384 
 385  public:
 386   static void update_method_data_from_interpreter(MethodData* trap_mdo, int trap_bci, int reason);
 387 };
 388 
 389 class DeoptimizationMarker : StackObj {  // for profiling
 390   static bool _is_active;
 391 public:
 392   DeoptimizationMarker()  { _is_active = true; }
 393   ~DeoptimizationMarker() { _is_active = false; }
 394   static bool is_active() { return _is_active; }
 395 };
 396 
 397 #endif // SHARE_VM_RUNTIME_DEOPTIMIZATION_HPP
src/share/vm/runtime/deoptimization.hpp
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File