class AM_ROUT_DEF <$AM |
---|
**** | The definition of a function representing Sather routines and iters. An array of the argument local variables in order. The first is `self'. |
$AM | $PROG_ERR | ARRAY{_} | $ARR{_} | $RO_ARR{_} | $CONTAINER{_} | $ELT{_} | $ELT | AREF{_} | AM |
attr calls:FLIST{$AM_EXPR}; |
---|
**** | The calls that occur in the body of this routine or iter. with a body, i.e. it is defined in Sather but callable from an external language. We don't generate an AM_ROUT_DEF for routines defined in the external language. state. in the class it originally came from. Used to detect built-in ops. only used in pSather |
attr code:$AM_STMT; |
---|
**** | Code to execute when called. with a body, i.e. it is defined in Sather but callable from an external language. We don't generate an AM_ROUT_DEF for routines defined in the external language. state. in the class it originally came from. Used to detect built-in ops. only used in pSather |
attr is_abstract:BOOL; |
---|
**** | True for an abstract routine, in this case none of the below are defined. body of this routine or iter. with a body, i.e. it is defined in Sather but callable from an external language. We don't generate an AM_ROUT_DEF for routines defined in the external language. state. in the class it originally came from. Used to detect built-in ops. only used in pSather |
attr is_attach_routine : BOOL; |
---|
**** | ... of an attach |
attr is_clean:BOOL; |
---|
**** | True if known to not affect existing state. in the class it originally came from. Used to detect built-in ops. only used in pSather |
attr is_external:BOOL; |
---|
**** | True if this is an external routine with a body, i.e. it is defined in Sather but callable from an external language. We don't generate an AM_ROUT_DEF for routines defined in the external language. state. in the class it originally came from. Used to detect built-in ops. only used in pSather |
attr is_fork_routine : BOOL; |
---|
**** | this routine implements the body of a fork |
attr is_par_routine : BOOL; |
---|
**** | this routine implements the body of a par |
attr locals:FLIST{AM_LOCAL_EXPR}; |
---|
**** | The list of local variables. with a body, i.e. it is defined in Sather but callable from an external language. We don't generate an AM_ROUT_DEF for routines defined in the external language. state. in the class it originally came from. Used to detect built-in ops. only used in pSather |
attr num_yields:INT; |
---|
**** | The number of yields in the body. in the class it originally came from. Used to detect built-in ops. only used in pSather |
attr rres:AM_LOCAL_EXPR; |
---|
**** | The result local variable if used. with a body, i.e. it is defined in Sather but callable from an external language. We don't generate an AM_ROUT_DEF for routines defined in the external language. state. in the class it originally came from. Used to detect built-in ops. only used in pSather |
attr sig:SIG; |
---|
**** | The signature of the routine. this case none of the below are defined. body of this routine or iter. with a body, i.e. it is defined in Sather but callable from an external language. We don't generate an AM_ROUT_DEF for routines defined in the external language. state. in the class it originally came from. Used to detect built-in ops. only used in pSather |
attr specul_prefetch:AM_LOCAL_EXPR; |
---|
**** | used if the function uses speculative prefetch only used in pSather |
attr srcsig:SIG; |
---|
**** | The signature of this routine or iter in the class it originally came from. Used to detect built-in ops. only used in pSather |
attr calls:FLIST{$AM_EXPR}; |
---|
**** | The calls that occur in the body of this routine or iter. with a body, i.e. it is defined in Sather but callable from an external language. We don't generate an AM_ROUT_DEF for routines defined in the external language. state. in the class it originally came from. Used to detect built-in ops. only used in pSather |
attr code:$AM_STMT; |
---|
**** | Code to execute when called. with a body, i.e. it is defined in Sather but callable from an external language. We don't generate an AM_ROUT_DEF for routines defined in the external language. state. in the class it originally came from. Used to detect built-in ops. only used in pSather |
attr is_abstract:BOOL; |
---|
**** | True for an abstract routine, in this case none of the below are defined. body of this routine or iter. with a body, i.e. it is defined in Sather but callable from an external language. We don't generate an AM_ROUT_DEF for routines defined in the external language. state. in the class it originally came from. Used to detect built-in ops. only used in pSather |
attr is_attach_routine : BOOL; |
---|
**** | ... of an attach |
attr is_clean:BOOL; |
---|
**** | True if known to not affect existing state. in the class it originally came from. Used to detect built-in ops. only used in pSather |
attr is_external:BOOL; |
---|
**** | True if this is an external routine with a body, i.e. it is defined in Sather but callable from an external language. We don't generate an AM_ROUT_DEF for routines defined in the external language. state. in the class it originally came from. Used to detect built-in ops. only used in pSather |
attr is_fork_routine : BOOL; |
---|
**** | this routine implements the body of a fork |
attr is_par_routine : BOOL; |
---|
**** | this routine implements the body of a par |
attr locals:FLIST{AM_LOCAL_EXPR}; |
---|
**** | The list of local variables. with a body, i.e. it is defined in Sather but callable from an external language. We don't generate an AM_ROUT_DEF for routines defined in the external language. state. in the class it originally came from. Used to detect built-in ops. only used in pSather |
attr num_yields:INT; |
---|
**** | The number of yields in the body. in the class it originally came from. Used to detect built-in ops. only used in pSather |
attr rres:AM_LOCAL_EXPR; |
---|
**** | The result local variable if used. with a body, i.e. it is defined in Sather but callable from an external language. We don't generate an AM_ROUT_DEF for routines defined in the external language. state. in the class it originally came from. Used to detect built-in ops. only used in pSather |
attr sig:SIG; |
---|
**** | The signature of the routine. this case none of the below are defined. body of this routine or iter. with a body, i.e. it is defined in Sather but callable from an external language. We don't generate an AM_ROUT_DEF for routines defined in the external language. state. in the class it originally came from. Used to detect built-in ops. only used in pSather |
attr specul_prefetch:AM_LOCAL_EXPR; |
---|
**** | used if the function uses speculative prefetch only used in pSather |
attr srcsig:SIG; |
---|
**** | The signature of this routine or iter in the class it originally came from. Used to detect built-in ops. only used in pSather |
arg_local(i:INT):AM_LOCAL_EXPR |
---|
**** | The local variable for the `i'th argument. 0 is self, the rest follow in order. |
calls_size:INT |
---|
create(nargs:INT, source:SFILE_ID):SAME |
---|
**** | A new definition for a routine or iter with `nargs' arguments (including self). |
export_call_pending: BOOL |
---|
export_done |
---|
export_locals_pending:BOOL |
---|
import_call_pending:BOOL |
---|
import_done |
---|
import_locals_pending:BOOL |
---|
is_iter:BOOL |
---|
**** | True if an iter. |
local_is_hot(l:AM_LOCAL_EXPR):BOOL |
---|
**** | True if `l' is a hot argument to an iter. |
name:IDENT |
---|
**** | The Sather name. |
needs_export_call |
---|
needs_export_locals |
---|
**** |
needs_export_locals:BOOL |
---|
needs_import_call |
---|
needs_import_locals |
---|
**** |
needs_import_locals:BOOL |
---|
number_of_args:INT |
---|
**** | The number of arguments for this routine or iter (including self). |
self_local:AM_LOCAL_EXPR |
---|
**** | The local variable representing self. |