hotspot/src/share/vm/runtime/frame.hpp
changeset 9630 d6419e4395e3
parent 9437 9981851b4b8c
child 9632 cd86c748c12b
equal deleted inserted replaced
9629:1f4dc6af5ad8 9630:d6419e4395e3
   133 
   133 
   134   // type testers
   134   // type testers
   135   bool is_interpreted_frame()    const;
   135   bool is_interpreted_frame()    const;
   136   bool is_java_frame()           const;
   136   bool is_java_frame()           const;
   137   bool is_entry_frame()          const;             // Java frame called from C?
   137   bool is_entry_frame()          const;             // Java frame called from C?
       
   138   bool is_ricochet_frame()       const;
   138   bool is_native_frame()         const;
   139   bool is_native_frame()         const;
   139   bool is_runtime_frame()        const;
   140   bool is_runtime_frame()        const;
   140   bool is_compiled_frame()       const;
   141   bool is_compiled_frame()       const;
   141   bool is_safepoint_blob_frame() const;
   142   bool is_safepoint_blob_frame() const;
   142   bool is_deoptimized_frame()    const;
   143   bool is_deoptimized_frame()    const;
   173 
   174 
   174  private:
   175  private:
   175   // Helper methods for better factored code in frame::sender
   176   // Helper methods for better factored code in frame::sender
   176   frame sender_for_compiled_frame(RegisterMap* map) const;
   177   frame sender_for_compiled_frame(RegisterMap* map) const;
   177   frame sender_for_entry_frame(RegisterMap* map) const;
   178   frame sender_for_entry_frame(RegisterMap* map) const;
       
   179   frame sender_for_ricochet_frame(RegisterMap* map) const;
   178   frame sender_for_interpreter_frame(RegisterMap* map) const;
   180   frame sender_for_interpreter_frame(RegisterMap* map) const;
   179   frame sender_for_native_frame(RegisterMap* map) const;
   181   frame sender_for_native_frame(RegisterMap* map) const;
   180 
   182 
   181   // All frames:
   183   // All frames:
   182 
   184 
   398   oop* oopmapreg_to_location(VMReg reg, const RegisterMap* regmap) const;
   400   oop* oopmapreg_to_location(VMReg reg, const RegisterMap* regmap) const;
   399 
   401 
   400   // Oops-do's
   402   // Oops-do's
   401   void oops_compiled_arguments_do(Symbol* signature, bool has_receiver, const RegisterMap* reg_map, OopClosure* f);
   403   void oops_compiled_arguments_do(Symbol* signature, bool has_receiver, const RegisterMap* reg_map, OopClosure* f);
   402   void oops_interpreted_do(OopClosure* f, const RegisterMap* map, bool query_oop_map_cache = true);
   404   void oops_interpreted_do(OopClosure* f, const RegisterMap* map, bool query_oop_map_cache = true);
       
   405   void oops_ricochet_do(OopClosure* f, const RegisterMap* map);
   403 
   406 
   404  private:
   407  private:
   405   void oops_interpreted_arguments_do(Symbol* signature, bool has_receiver, OopClosure* f);
   408   void oops_interpreted_arguments_do(Symbol* signature, bool has_receiver, OopClosure* f);
   406 
   409 
   407   // Iteration of oops
   410   // Iteration of oops