hotspot/src/share/vm/runtime/frame.hpp
changeset 13391 30245956af37
parent 11571 23f825a42a85
child 13728 882756847a04
equal deleted inserted replaced
13309:50c604cb0d5f 13391:30245956af37
   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_ignored_frame()        const;
   139   bool is_native_frame()         const;
   139   bool is_native_frame()         const;
   140   bool is_runtime_frame()        const;
   140   bool is_runtime_frame()        const;
   141   bool is_compiled_frame()       const;
   141   bool is_compiled_frame()       const;
   142   bool is_safepoint_blob_frame() const;
   142   bool is_safepoint_blob_frame() const;
   143   bool is_deoptimized_frame()    const;
   143   bool is_deoptimized_frame()    const;
   174 
   174 
   175  private:
   175  private:
   176   // Helper methods for better factored code in frame::sender
   176   // Helper methods for better factored code in frame::sender
   177   frame sender_for_compiled_frame(RegisterMap* map) const;
   177   frame sender_for_compiled_frame(RegisterMap* map) const;
   178   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;
       
   180   frame sender_for_interpreter_frame(RegisterMap* map) const;
   179   frame sender_for_interpreter_frame(RegisterMap* map) const;
   181   frame sender_for_native_frame(RegisterMap* map) const;
   180   frame sender_for_native_frame(RegisterMap* map) const;
   182 
   181 
   183   // All frames:
   182   // All frames:
   184 
   183 
   413   oop* oopmapreg_to_location(VMReg reg, const RegisterMap* regmap) const;
   412   oop* oopmapreg_to_location(VMReg reg, const RegisterMap* regmap) const;
   414 
   413 
   415   // Oops-do's
   414   // Oops-do's
   416   void oops_compiled_arguments_do(Symbol* signature, bool has_receiver, const RegisterMap* reg_map, OopClosure* f);
   415   void oops_compiled_arguments_do(Symbol* signature, bool has_receiver, const RegisterMap* reg_map, OopClosure* f);
   417   void oops_interpreted_do(OopClosure* f, const RegisterMap* map, bool query_oop_map_cache = true);
   416   void oops_interpreted_do(OopClosure* f, const RegisterMap* map, bool query_oop_map_cache = true);
   418   void oops_ricochet_do(OopClosure* f, const RegisterMap* map);
       
   419 
   417 
   420  private:
   418  private:
   421   void oops_interpreted_arguments_do(Symbol* signature, bool has_receiver, OopClosure* f);
   419   void oops_interpreted_arguments_do(Symbol* signature, bool has_receiver, OopClosure* f);
   422 
   420 
   423   // Iteration of oops
   421   // Iteration of oops