C:/Users/Dennis/src/lang/russell.orig/src/stree/ststructs.m File Reference

#include "streedefs.h"

Go to the source code of this file.

Defines

#define TOP
#define START(knm, snm)
#define FIELD(type, nm)
#define INT(fld)   FIELD(int,fld)
#define UNSIGNED(fld)   FIELD(unsigned,fld)
#define REFCNT(fld)   FIELD(unsigned,fld)
#define NODEKIND(fld)   FIELD(int,fld)
#define NODESTAR(fld)   FIELD(union Node *,fld)
#define HNODESTAR(fld)   FIELD(union Node *,fld)
#define SIG(fld)   FIELD(union Node *,fld)
#define HSIG(fld)   FIELD(union Node *,fld)
#define VLINENO(fld)   UNSIGNED(fld)
#define STTINDX(fld)   UNSIGNED(fld)
#define LISTPTR(fld)   NODESTAR(fld)
#define HLISTPTR(fld)   NODESTAR(fld)
#define LBACKREF(fld)   NODESTAR(fld)
#define BACKREF(fld)   NODESTAR(fld)
#define CNSTAR(fld)   FIELD(ConsNode *,fld)
#define STRPTR(fld)   FIELD(char *,fld)
#define HSTRPTR(fld)   FIELD(char *,fld)
#define BITVECTOR(fld)   UNSIGNED(fld)
#define NBPTR(fld)   NODESTAR(fld)
#define FINISH   } STRUCTURENM;
#define BOTTOM

Functions

define NIL define LIST NODE
*define SIG_UNKNOWN define
SIG_IN_PROGRESS define
SIG_DONE define NOT_SPECIAL
define PROD_NEW define
PROD_ASSIGN define
PROD_VALUEOF define PROD_MK
define PROD_PROJ define
UNION_NEW define UNION_ASSIGN
define UNION_VALUEOF define
UNION_INJ define UNION_PROJ
define UNION_INQ define
RECORD_NEW define
RECORD_ASSIGN define
RECORD_VALUEOF define
RECORD_MK define
RECORD_VAL_FIELD define
RECORD_VAR_FIELD define
ENUM_NEW define ENUM_ASSIGN
define ENUM_VALUEOF define
ENUM_EQ define ENUM_NE define
ENUM_ELEMENT define ENUM_CARD
define ENUM_PRED define
ENUM_SUCC define IDENTITY
define STD_ASSIGN define
STD_NEW define STD_VALUEOF
define STD_PUT define
STD_CALLCC define STD_ARRAY
define ARRAY_STD_NEW define
ARRAY_PTR_NEW define
ARRAY_VALUEOF define
ARRAY_SIZE define
ARRAY_VAL_SUB define
ARRAY_VAR_SUB define PTR_NEW
define INIT_NEW define
OTHER_BUILTIN define
STD_PASSIGN define STD_MASSIGN
define STD_TASSIGN define
UNDEF_CONST define UNION_INJ0
define special_tp() 
x (((unsigned long)(x)) >> 26)@define special_val(x)((x)&0x3ffffff)@define MAX_SP_VAL 0x3ffffff @ifdef DEBUG @define special(tp
define NIL define LIST NODE
*define SIG_UNKNOWN define
SIG_IN_PROGRESS define
SIG_DONE define NOT_SPECIAL
define PROD_NEW define
PROD_ASSIGN define
PROD_VALUEOF define PROD_MK
define PROD_PROJ define
UNION_NEW define UNION_ASSIGN
define UNION_VALUEOF define
UNION_INJ define UNION_PROJ
define UNION_INQ define
RECORD_NEW define
RECORD_ASSIGN define
RECORD_VALUEOF define
RECORD_MK define
RECORD_VAL_FIELD define
RECORD_VAR_FIELD define
ENUM_NEW define ENUM_ASSIGN
define ENUM_VALUEOF define
ENUM_EQ define ENUM_NE define
ENUM_ELEMENT define ENUM_CARD
define ENUM_PRED define
ENUM_SUCC define IDENTITY
define STD_ASSIGN define
STD_NEW define STD_VALUEOF
define STD_PUT define
STD_CALLCC define STD_ARRAY
define ARRAY_STD_NEW define
ARRAY_PTR_NEW define
ARRAY_VALUEOF define
ARRAY_SIZE define
ARRAY_VAL_SUB define
ARRAY_VAR_SUB define PTR_NEW
define INIT_NEW define
OTHER_BUILTIN define
STD_PASSIGN define STD_MASSIGN
define STD_TASSIGN define
UNDEF_CONST define UNION_INJ0
define special_tp() 
val ((val) > 0x3ffffff?printf("Compiler error - prod too big\n"):((tp)<< 26)|(val))@else @define special(tp
define NIL define LIST NODE
*define SIG_UNKNOWN define
SIG_IN_PROGRESS define
SIG_DONE define NOT_SPECIAL
define PROD_NEW define
PROD_ASSIGN define
PROD_VALUEOF define PROD_MK
define PROD_PROJ define
UNION_NEW define UNION_ASSIGN
define UNION_VALUEOF define
UNION_INJ define UNION_PROJ
define UNION_INQ define
RECORD_NEW define
RECORD_ASSIGN define
RECORD_VALUEOF define
RECORD_MK define
RECORD_VAL_FIELD define
RECORD_VAR_FIELD define
ENUM_NEW define ENUM_ASSIGN
define ENUM_VALUEOF define
ENUM_EQ define ENUM_NE define
ENUM_ELEMENT define ENUM_CARD
define ENUM_PRED define
ENUM_SUCC define IDENTITY
define STD_ASSIGN define
STD_NEW define STD_VALUEOF
define STD_PUT define
STD_CALLCC define STD_ARRAY
define ARRAY_STD_NEW define
ARRAY_PTR_NEW define
ARRAY_VALUEOF define
ARRAY_SIZE define
ARRAY_VAL_SUB define
ARRAY_VAR_SUB define PTR_NEW
define INIT_NEW define
OTHER_BUILTIN define
STD_PASSIGN define STD_MASSIGN
define STD_TASSIGN define
UNDEF_CONST define UNION_INJ0
define special_tp() 
val (((tp)<< 26)|(val))@endif @define is_good(l)((l)
NODEmknode ()
NODEcopynode ()
LIST mklist ()
LIST copylist ()
LIST addright ()
LIST addleft ()
LIST split ()
LIST conc ()
define DECLARE_ITER ConsNode
*mL__0O define 
INIT_ITER (v, l) mL__0O
 if (mL__0OP==NIL)
define REPLACE (v) lock(v)
 vfree (unlock((NODE *) cn_head(mL__0O)))
 cn_sethead (mL__0O, v)
ifdef DEBUG define DELETE if (mL__0O==NIL)

Variables

 v


Define Documentation

#define BACKREF ( fld   )     NODESTAR(fld)

Definition at line 40 of file ststructs.m.

#define BITVECTOR ( fld   )     UNSIGNED(fld)

Definition at line 44 of file ststructs.m.

#define BOTTOM

Value:

# decr COUNT \
    char Node_dummy[10000000];  /* Make anything that relies on  */ \
                                /* sizeof(NODE) break.          */ \
} NODE; \
@ define LASTKINDVALUE COUNT \

Definition at line 49 of file ststructs.m.

#define CNSTAR ( fld   )     FIELD(ConsNode *,fld)

Definition at line 41 of file ststructs.m.

#define FIELD ( type,
nm   ) 

Value:

type STRUCTURENM^_^nm; \
@ ifndef nm \
@   define nm STRUCTURENM . STRUCTURENM^_^nm \
@ endif @@

Definition at line 20 of file ststructs.m.

#define FINISH   } STRUCTURENM;

Definition at line 47 of file ststructs.m.

#define HLISTPTR ( fld   )     NODESTAR(fld)

Definition at line 38 of file ststructs.m.

#define HNODESTAR ( fld   )     FIELD(union Node *,fld)

Definition at line 32 of file ststructs.m.

#define HSIG ( fld   )     FIELD(union Node *,fld)

Definition at line 34 of file ststructs.m.

#define HSTRPTR ( fld   )     FIELD(char *,fld)

Definition at line 43 of file ststructs.m.

#define INT ( fld   )     FIELD(int,fld)

Definition at line 27 of file ststructs.m.

#define LBACKREF ( fld   )     NODESTAR(fld)

Definition at line 39 of file ststructs.m.

#define LISTPTR ( fld   )     NODESTAR(fld)

Definition at line 37 of file ststructs.m.

#define NBPTR ( fld   )     NODESTAR(fld)

Definition at line 45 of file ststructs.m.

#define NODEKIND ( fld   )     FIELD(int,fld)

Definition at line 30 of file ststructs.m.

#define NODESTAR ( fld   )     FIELD(union Node *,fld)

Definition at line 31 of file ststructs.m.

#define REFCNT ( fld   )     FIELD(unsigned,fld)

Definition at line 29 of file ststructs.m.

#define SIG ( fld   )     FIELD(union Node *,fld)

Definition at line 33 of file ststructs.m.

#define START ( knm,
snm   ) 

Value:

struct { \
@   define knm COUNT \
#   incr COUNT \
#   define STRUCTURENM snm

Definition at line 14 of file ststructs.m.

#define STRPTR ( fld   )     FIELD(char *,fld)

Definition at line 42 of file ststructs.m.

#define STTINDX ( fld   )     UNSIGNED(fld)

Definition at line 36 of file ststructs.m.

#define TOP

Value:

#   define COUNT 0 \
typedef union Node {

Definition at line 10 of file ststructs.m.

#define UNSIGNED ( fld   )     FIELD(unsigned,fld)

Definition at line 28 of file ststructs.m.

#define VLINENO ( fld   )     UNSIGNED(fld)

Definition at line 35 of file ststructs.m.


Function Documentation

LIST addleft (  ) 

LIST addright (  ) 

cn_sethead ( mL__0O  ,
v   
)

LIST conc (  ) 

LIST copylist (  ) 

NODE* copynode (  ) 

ifdef DEBUG define DELETE if ( mL__0O  = = NIL  ) 

Definition at line 240 of file ststructs.m.

References dbgmsg.

if ( mL__0OP  = = NIL  ) 

Definition at line 218 of file ststructs.m.

References cn_cons().

Referenced by cl_analyze(), Gexpression(), Gtraverse(), Vallocate(), and Vtraverse().

define DECLARE_ITER ConsNode* mL__0O define INIT_ITER ( v  ,
 
)

LIST mklist (  ) 

NODE* mknode (  ) 

define REPLACE ( v   ) 

Referenced by add_dcse().

LIST split (  ) 

define NIL define LIST NODE* define SIG_UNKNOWN define SIG_IN_PROGRESS define SIG_DONE define NOT_SPECIAL define PROD_NEW define PROD_ASSIGN define PROD_VALUEOF define PROD_MK define PROD_PROJ define UNION_NEW define UNION_ASSIGN define UNION_VALUEOF define UNION_INJ define UNION_PROJ define UNION_INQ define RECORD_NEW define RECORD_ASSIGN define RECORD_VALUEOF define RECORD_MK define RECORD_VAL_FIELD define RECORD_VAR_FIELD define ENUM_NEW define ENUM_ASSIGN define ENUM_VALUEOF define ENUM_EQ define ENUM_NE define ENUM_ELEMENT define ENUM_CARD define ENUM_PRED define ENUM_SUCC define IDENTITY define STD_ASSIGN define STD_NEW define STD_VALUEOF define STD_PUT define STD_CALLCC define STD_ARRAY define ARRAY_STD_NEW define ARRAY_PTR_NEW define ARRAY_VALUEOF define ARRAY_SIZE define ARRAY_VAL_SUB define ARRAY_VAR_SUB define PTR_NEW define INIT_NEW define OTHER_BUILTIN define STD_PASSIGN define STD_MASSIGN define STD_TASSIGN define UNDEF_CONST define UNION_INJ0 define special_tp() val ( ((tp)<< 26)|(val)   ) 

define NIL define LIST NODE* define SIG_UNKNOWN define SIG_IN_PROGRESS define SIG_DONE define NOT_SPECIAL define PROD_NEW define PROD_ASSIGN define PROD_VALUEOF define PROD_MK define PROD_PROJ define UNION_NEW define UNION_ASSIGN define UNION_VALUEOF define UNION_INJ define UNION_PROJ define UNION_INQ define RECORD_NEW define RECORD_ASSIGN define RECORD_VALUEOF define RECORD_MK define RECORD_VAL_FIELD define RECORD_VAR_FIELD define ENUM_NEW define ENUM_ASSIGN define ENUM_VALUEOF define ENUM_EQ define ENUM_NE define ENUM_ELEMENT define ENUM_CARD define ENUM_PRED define ENUM_SUCC define IDENTITY define STD_ASSIGN define STD_NEW define STD_VALUEOF define STD_PUT define STD_CALLCC define STD_ARRAY define ARRAY_STD_NEW define ARRAY_PTR_NEW define ARRAY_VALUEOF define ARRAY_SIZE define ARRAY_VAL_SUB define ARRAY_VAR_SUB define PTR_NEW define INIT_NEW define OTHER_BUILTIN define STD_PASSIGN define STD_MASSIGN define STD_TASSIGN define UNDEF_CONST define UNION_INJ0 define special_tp() val ( (val)  ,
0x3ffffff?  printf("Compiler error - prod too big\n"):((tp)<< 26)|(val) 
)

Referenced by Gspcl_to_inline(), and Vspcl_to_inline().

vfree ( unlock((NODE *) cn_head(mL__0O))   ) 

define NIL define LIST NODE* define SIG_UNKNOWN define SIG_IN_PROGRESS define SIG_DONE define NOT_SPECIAL define PROD_NEW define PROD_ASSIGN define PROD_VALUEOF define PROD_MK define PROD_PROJ define UNION_NEW define UNION_ASSIGN define UNION_VALUEOF define UNION_INJ define UNION_PROJ define UNION_INQ define RECORD_NEW define RECORD_ASSIGN define RECORD_VALUEOF define RECORD_MK define RECORD_VAL_FIELD define RECORD_VAR_FIELD define ENUM_NEW define ENUM_ASSIGN define ENUM_VALUEOF define ENUM_EQ define ENUM_NE define ENUM_ELEMENT define ENUM_CARD define ENUM_PRED define ENUM_SUCC define IDENTITY define STD_ASSIGN define STD_NEW define STD_VALUEOF define STD_PUT define STD_CALLCC define STD_ARRAY define ARRAY_STD_NEW define ARRAY_PTR_NEW define ARRAY_VALUEOF define ARRAY_SIZE define ARRAY_VAL_SUB define ARRAY_VAR_SUB define PTR_NEW define INIT_NEW define OTHER_BUILTIN define STD_PASSIGN define STD_MASSIGN define STD_TASSIGN define UNDEF_CONST define UNION_INJ0 define special_tp() x ( ((unsigned long)(x)) >>  26  ) 

Referenced by main().


Variable Documentation

v

Initial value:

 (NODE *)cn_head(mL__0O)
@define NEXT_ITER(v)   
    mL__0O = cn_tail(mL__0O)

Definition at line 163 of file ststructs.m.

Referenced by accessible(), bld_analyze(), build_symtab(), cl_analyze(), Fexpression(), Gappl(), get_complexity(), Gexpression(), Gident(), Gtraverse(), mknode(), number(), parse_RIC(), reorder(), sig_in1(), sig_out1(), sigids(), sl_analyze1(), subst1(), tsubst1(), unparse(), unshare1(), Vallocate(), Vallocwalk(), Vappl(), Vexpression(), and Vtraverse().


Generated on Fri Jan 25 10:39:50 2008 for russell by  doxygen 1.5.4