Annotation of 43BSDReno/contrib/emacs-18.55/gdb/frame.h, revision 1.1

1.1     ! root        1: /* Definitions for dealing with stack frames, for GDB, the GNU debugger.
        !             2:    Copyright (C) 1986 Free Software Foundation, Inc.
        !             3: 
        !             4: GDB is distributed in the hope that it will be useful, but WITHOUT ANY
        !             5: WARRANTY.  No author or distributor accepts responsibility to anyone
        !             6: for the consequences of using it or for whether it serves any
        !             7: particular purpose or works at all, unless he says so in writing.
        !             8: Refer to the GDB General Public License for full details.
        !             9: 
        !            10: Everyone is granted permission to copy, modify and redistribute GDB,
        !            11: but only under the conditions described in the GDB General Public
        !            12: License.  A copy of this license is supposed to have been given to you
        !            13: along with GDB so you can know your rights and responsibilities.  It
        !            14: should be in a file named COPYING.  Among other things, the copyright
        !            15: notice and this notice must be preserved on all copies.
        !            16: 
        !            17: In other words, go ahead and share GDB, but don't try to stop
        !            18: anyone else from sharing it farther.  Help stamp out software hoarding!
        !            19: */
        !            20: 
        !            21: /* Note that frame.h requires param.h! */
        !            22: 
        !            23: #define FRAME CORE_ADDR
        !            24: 
        !            25: struct frame_info
        !            26:   {
        !            27:     /* Nominal address of the frame described.  */
        !            28:     FRAME frame;
        !            29:     /* Address at which execution is occurring in this frame.
        !            30:        For the innermost frame, it's the current pc.
        !            31:        For other frames, it is a pc saved in the next frame.  */
        !            32:     CORE_ADDR pc;
        !            33:     /* The frame called by the frame we are describing, or 0.  */
        !            34:     FRAME next_frame;
        !            35:   };
        !            36: 
        !            37: /* Describe the saved registers of a frame.  */
        !            38: 
        !            39: struct frame_saved_regs
        !            40:   {
        !            41:     /* For each register, address of where it was saved on entry to the frame,
        !            42:        or zero if it was not saved on entry to this frame.  */
        !            43:     CORE_ADDR regs[NUM_REGS];
        !            44:   };
        !            45: 
        !            46: /* The stack frame that the user has specified for commands to act on.
        !            47:    Note that one cannot assume this is the address of valid data.  */
        !            48: 
        !            49: extern FRAME selected_frame;
        !            50: 
        !            51: extern struct frame_info get_frame_info ();
        !            52: extern struct frame_info get_prev_frame_info ();
        !            53: 
        !            54: extern void get_frame_saved_regs ();
        !            55: 
        !            56: extern FRAME get_prev_frame ();
        !            57: 
        !            58: extern FRAME get_current_frame ();
        !            59: 
        !            60: extern struct block *get_frame_block ();
        !            61: extern struct block *get_current_block ();
        !            62: extern struct block *get_selected_block ();
        !            63: extern struct symbol *get_frame_function ();
        !            64: extern struct symbol *get_pc_function ();

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.