# 2.11BSD#431 - /usr/src/ucb/PORT/pascal/src/tmps.h

##### Variables

    sizes             X

##### Macros

    NOREG             X
    NUMREGTYPES       X
    REGOK             X
    REG_ADDR          X
    REG_DATA          X
    REG_GENERAL       X

##### struct's

    om                X
    tmps              X

       1: /*
       2:  * Copyright (c) 1980 Regents of the University of California.
       3:  * All rights reserved.  The Berkeley software License Agreement
       4:  * specifies the terms and conditions for redistribution.
       5:  *
       6:  *	@(#)tmps.h	5.1 (Berkeley) 6/5/85
       7:  */
       8:
       9: /*
      10:  * The following structure is used
      11:  * to keep track of the amount of variable
      12:  * storage required by each block.
      13:  * "Max" is the high water mark, "off"
      14:  * the current need. Temporaries for "for"
      15:  * loops and "with" statements are allocated
      16:  * in the local variable area and these
      17:  * numbers are thereby changed if necessary.
      18:  *
      19:  * for the compiler,
      20:  *	low_water is the lowest number register allocated of its type
      21:  *	next_avail is the next available register of its type
      22:  */
      23:
      24: #ifdef PC
      25: #ifdef vax
      26:     /*
      27:      *	the number of register types.
      28:      *	the details of how many of each kind of register there is
      29:      *	(and what they are for) is known in tmps.c
      30:      */
      31: #define NUMREGTYPES 1
      32: #define REG_GENERAL 0
      33: #endif vax
      34:
      35: #ifdef mc68000
      36:     /*
      37:      *	the number of register types.
      38:      *	the details of how many of each kind of register there is
      39:      *	(and what they are for) is known in tmps.c
      40:      */
      41: #define NUMREGTYPES 2
      42: #define REG_DATA    0
      43: #define REG_ADDR    1
      44: #endif mc68000
      45: #endif PC
      46:
      47: struct om {
      48:     long    om_max;
      49: #ifdef PC
      50:     long    low_water[NUMREGTYPES];
      51: #endif PC
      52:     struct tmps {
      53:         long    om_off;
      54: #ifdef PC
      55:         long    next_avail[NUMREGTYPES];
      56: #endif PC
      57:     }   curtmps;
      58: } sizes[DSPLYSZ];
      59:
      60:     /*
      61:      *	an enumeration for whether a temporary can be a register.  cf. tmps.c
      62:      */
      63: #define NOREG 0
      64: #define REGOK 1

#### Defined variables

sizes defined in line 58; used 20 times

- in /usr/src/ucb/PORT/pascal/src/fdec.c line 138-139(2)
- in /usr/src/ucb/PORT/pascal/src/fend.c line 186, 471, 624-628(3), 861-865(3)
- in /usr/src/ucb/PORT/pascal/src/pcproc.c line 657
- in /usr/src/ucb/PORT/pascal/src/proc.c line 533
- in /usr/src/ucb/PORT/pascal/src/stat.c line 50
- in /usr/src/ucb/PORT/pascal/src/tmps.c line 68, 93, 174, 224
- in /usr/src/ucb/PORT/pascal/src/var.c line 116, 182(2)

#### Defined struct's

om defined in line 47; used 10 times

- in /usr/src/ucb/PORT/pascal/src/p2put.c line 85(2)
- in /usr/src/ucb/PORT/pascal/src/tmps.c line 68(2), 93(2), 174(2)
- in /usr/src/ucb/PORT/pascal/src/var.c line 106(2)

tmps defined in line 52; used 8 times

- in /usr/src/ucb/PORT/pascal/src/pcproc.c line 84(2)
- in /usr/src/ucb/PORT/pascal/src/proc.c line 78(2)
- in /usr/src/ucb/PORT/pascal/src/stat.c line 46(2)
- in /usr/src/ucb/PORT/pascal/src/tmps.c line 171(2)

#### Defined macros

NOREG defined in line 63; used 8 times

- in /usr/src/ucb/PORT/pascal/src/call.c line 89, 145
- in /usr/src/ucb/PORT/pascal/src/flvalue.c line 85
- in /usr/src/ucb/PORT/pascal/src/forop.c line 183-184(2)
- in /usr/src/ucb/PORT/pascal/src/pccaseop.c line 118
- in /usr/src/ucb/PORT/pascal/src/rval.c line 388, 601

NUMREGTYPES defined in line 41; used 5 times

- in line 50-55(2)
- in /usr/src/ucb/PORT/pascal/src/tmps.c line 45, 58, 76

REGOK defined in line 64; used 10 times

- in /usr/src/ucb/PORT/pascal/src/call.c line 114
- in /usr/src/ucb/PORT/pascal/src/forop.c line 185
- in /usr/src/ucb/PORT/pascal/src/pcfunc.c line 259-263(2)
- in /usr/src/ucb/PORT/pascal/src/pcproc.c line 659
- in /usr/src/ucb/PORT/pascal/src/proc.c line 535
- in /usr/src/ucb/PORT/pascal/src/stat.c line 248
- in /usr/src/ucb/PORT/pascal/src/tmps.c line 100, 115, 129

REG_ADDR defined in line 43; used 11 times

- in /usr/src/ucb/PORT/pascal/src/p2put.c line 97
- in /usr/src/ucb/PORT/pascal/src/tmps.c line 131-136(6), 192-195(4)

REG_DATA defined in line 42; used 11 times

- in /usr/src/ucb/PORT/pascal/src/p2put.c line 98
- in /usr/src/ucb/PORT/pascal/src/tmps.c line 117-122(6), 186-189(4)

REG_GENERAL defined in line 32; used 13 times

- in /usr/src/ucb/PORT/pascal/src/p2put.c line 91
- in /usr/src/ucb/PORT/pascal/src/tmps.c line 101-106(6), 178-181(4), 223-224(2)

#### Usage of this include

tmps.h used 14 times

- in /usr/src/ucb/PORT/pascal/src/call.c line 20
- in /usr/src/ucb/PORT/pascal/src/fdec.c line 18
- in /usr/src/ucb/PORT/pascal/src/fend.c line 17
- in /usr/src/ucb/PORT/pascal/src/flvalue.c line 21
- in /usr/src/ucb/PORT/pascal/src/forop.c line 21
- in /usr/src/ucb/PORT/pascal/src/p2put.c line 24
- in /usr/src/ucb/PORT/pascal/src/pccaseop.c line 22
- in /usr/src/ucb/PORT/pascal/src/pcfunc.c line 22
- in /usr/src/ucb/PORT/pascal/src/pcproc.c line 22
- in /usr/src/ucb/PORT/pascal/src/proc.c line 20
- in /usr/src/ucb/PORT/pascal/src/rval.c line 20
- in /usr/src/ucb/PORT/pascal/src/stat.c line 19
- in /usr/src/ucb/PORT/pascal/src/tmps.c line 18
- in /usr/src/ucb/PORT/pascal/src/var.c line 19

Last modified: 1985-06-06 Generated: 2016-12-26 | Generated by src2html V0.67 page hit count: 591 |