< prev index next >

src/hotspot/cpu/s390/frame_s390.hpp

Print this page

552   // Get caller pc from stack slot of gpr14.
553   address native_sender_pc() const;
554   // Get caller pc from stack slot of gpr10.
555   address callstub_sender_pc() const;
556 
557   // Dump all frames starting at a given C stack pointer.
558   // max_frames: Limit number of traced frames.
559   //             <= 0 --> full trace
560   //             > 0  --> trace the #max_frames topmost frames
561   static void back_trace(outputStream* st, intptr_t* start_sp, intptr_t* top_pc,
562                          unsigned long flags, int max_frames = 0);
563 
564   enum {
565     // size, in words, of frame metadata (e.g. pc and link)
566     metadata_words           = sizeof(z_java_abi) >> LogBytesPerWord,
567     metadata_words_at_bottom = 0,
568     metadata_words_at_top    = sizeof(z_java_abi) >> LogBytesPerWord,
569     // in bytes
570     frame_alignment          = 8,
571     // size, in words, of maximum shift in frame position due to alignment
572     align_wiggle             =  0


573   };
574 
575   // returns the sending frame, without applying any barriers
576   inline frame sender_raw(RegisterMap* map) const;
577 




578 #endif // CPU_S390_FRAME_S390_HPP

552   // Get caller pc from stack slot of gpr14.
553   address native_sender_pc() const;
554   // Get caller pc from stack slot of gpr10.
555   address callstub_sender_pc() const;
556 
557   // Dump all frames starting at a given C stack pointer.
558   // max_frames: Limit number of traced frames.
559   //             <= 0 --> full trace
560   //             > 0  --> trace the #max_frames topmost frames
561   static void back_trace(outputStream* st, intptr_t* start_sp, intptr_t* top_pc,
562                          unsigned long flags, int max_frames = 0);
563 
564   enum {
565     // size, in words, of frame metadata (e.g. pc and link)
566     metadata_words           = sizeof(z_java_abi) >> LogBytesPerWord,
567     metadata_words_at_bottom = 0,
568     metadata_words_at_top    = sizeof(z_java_abi) >> LogBytesPerWord,
569     // in bytes
570     frame_alignment          = 8,
571     // size, in words, of maximum shift in frame position due to alignment
572     align_wiggle             =  0,
573     // This is wrong and unimplemented
574     sender_sp_offset         =  0
575   };
576 
577   // returns the sending frame, without applying any barriers
578   inline frame sender_raw(RegisterMap* map) const;
579 
580   intptr_t* repair_sender_sp(intptr_t* sender_sp, intptr_t** saved_fp_addr) const;
581   static intptr_t* repair_sender_sp(nmethod* nm, intptr_t* sp, intptr_t** saved_fp_addr);
582   bool was_augmented_on_entry(int& real_size) const;
583 
584 #endif // CPU_S390_FRAME_S390_HPP
< prev index next >