class INLINE_ITER < $INLINE_ITER_SIG |
---|
$INLINE_ITER_SIG |
attr is_special:BOOL; |
---|
**** | Mechanism for transforming local variables and parameters. |
attr is_special:BOOL; |
---|
**** | Mechanism for transforming local variables and parameters. |
shared inlined,iters:INT; |
---|
shared inlined,iters:INT; |
---|
shared inlined,iters:INT; |
---|
shared inlined,iters:INT; |
---|
copy_iter (rout:AM_ROUT_DEF) |
---|
create (rout:AM_ROUT_DEF):SAME |
---|
inline (call:AM_ITER_CALL_EXPR):$AM_EXPR |
---|
is_inlineable (rout:AM_ROUT_DEF,threshold:INT, prog:PROG):BOOL |
---|
sig:SIG |
---|
attr BEFLOOP_code:$AM_STMT; |
---|
**** | Yield directly in the loop? |
attr BEFLOOP_code:$AM_STMT; |
---|
**** | Yield directly in the loop? |
attr IINIT_code:$AM_STMT; |
---|
attr IINIT_code:$AM_STMT; |
---|
attr ITERM_code:$AM_STMT; |
---|
**** | Non-flat yield: condition when to yield, code before yield, code after yield, the other branch of the if statement. |
attr ITERM_code:$AM_STMT; |
---|
**** | Non-flat yield: condition when to yield, code before yield, code after yield, the other branch of the if statement. |
attr WYBEF_code,WYAFT_code,WNOY_code:$AM_STMT; |
---|
**** | The value yielded. |
attr WYBEF_code,WYAFT_code,WNOY_code:$AM_STMT; |
---|
**** | The value yielded. |
attr WYBEF_code,WYAFT_code,WNOY_code:$AM_STMT; |
---|
**** | The value yielded. |
attr WYBEF_code,WYAFT_code,WNOY_code:$AM_STMT; |
---|
**** | The value yielded. |
attr WYBEF_code,WYAFT_code,WNOY_code:$AM_STMT; |
---|
**** | The value yielded. |
attr WYBEF_code,WYAFT_code,WNOY_code:$AM_STMT; |
---|
**** | The value yielded. |
attr change_vars:CHANGE_VARS; |
---|
**** | The code before the regular loop structure. |
attr change_vars:CHANGE_VARS; |
---|
**** | The code before the regular loop structure. |
attr flat_yield:BOOL; |
---|
**** | The code before flat yield (or if); after flat yield (or if). In other words, initialize or terminate the iteration. |
attr flat_yield:BOOL; |
---|
**** | The code before flat yield (or if); after flat yield (or if). In other words, initialize or terminate the iteration. |
attr loop_firsts:FLIST{AM_LOCAL_EXPR}; |
---|
attr loop_firsts:FLIST{AM_LOCAL_EXPR}; |
---|
attr signature:SIG; |
---|
attr signature:SIG; |
---|
attr yield_cond:$AM_EXPR; |
---|
attr yield_cond:$AM_EXPR; |
---|
attr yield_val:$AM_EXPR; |
---|
**** | Variables that used to be set to true before the loop. They have to be set to true before the new loop, too. |
attr yield_val:$AM_EXPR; |
---|
**** | Variables that used to be set to true before the loop. They have to be set to true before the new loop, too. |