1 /* $Id: rsb.h,v 2.2 1994/06/24 10:48:58 ceriel Exp $ */
3 /* The Return Status Block contains, in push order:
4 FIL, LIN, LB, PC, PI, rsbcode
6 In a trap this is preceeded by:
7 FRA, FRASize, FRA_def, trap_nr
10 /* offsets to be added to a local base */
11 extern int rsb_rsbcode;
19 /* The last item stored in the Return Status Block is a word containing
20 a code describing the type of the RSB.
23 #define RSBMASK 0xfff0
24 #define RSBCODE 0x2b90 /* 0rrr rrrr rrrr 0000, r = random */
25 #define RSB_STP (RSBCODE + 1) /* in first RSB */
26 #define RSB_CAL (RSBCODE + 2) /* in RSB from call */
27 #define RSB_RTT (RSBCODE + 3) /* in RSB from returnable trap */
28 #define RSB_NRT (RSBCODE + 4) /* in RSB from non-returnable trap */
30 #define is_LB(p) ((st_lds(p+rsb_rsbcode, wsize) & RSBMASK) == RSBCODE)