File:  [CSRG BSD Unix] / 43BSD / ucb / pascal / pdx / runtime / frame.rep
Revision 1.1.1.1 (vendor branch): download - view: text, annotated - select for diffs
Tue Apr 24 16:12:55 2018 UTC (8 years, 1 month ago) by root
Branches: MAIN, BSD
CVS tags: HEAD, BSD43
BSD 4.3

/*
 * Copyright (c) 1982 Regents of the University of California.
 * All rights reserved.  The Berkeley software License Agreement
 * specifies the terms and conditions for redistribution.
 *
 *	@(#)frame.rep	5.2 (Berkeley) 6/7/85
 */

/*
 * Definitions for accessing stack frames.
 */

#define MAINBLK		1

/*
 * Structure of an activation record's block mark.  See the
 * PX implementation notes for more details.
 */

struct frame {
	ADDRESS stackref;	/* for px self-checking */
	ADDRESS file;		/* current file information */
	ADDRESS blockp;		/* pointer to current block name */
	ADDRESS *save_loc;	/* saved local variable pointer */
	ADDRESS *save_disp;	/* saved dp contents */
	ADDRESS *save_dp;	/* saved dp */
	ADDRESS save_pc;	/* saved location counter */
	int save_lino;		/* saved source line number (never used) */
};

FRAME *curframe();		/* get the currently active frame */
FRAME *nextframe();		/* go up the stack */
FRAME *findframe();		/* find the frame for a given function */
ADDRESS entry();		/* get the entry address for a frame */
ADDRESS *dispval();		/* display associated with a given block */
ADDRESS *curdp();		/* return current display pointer */
ADDRESS *contents();		/* return the contents of display pointer */
ADDRESS stkaddr();		/* stack address associated with a frame */

unix.superglobalmegacorp.com

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