class INLINE < $INLINE |
---|
$INLINE | CS_COMPONENT |
attr inline_iters:BOOL; |
---|
attr inline_routs:BOOL; |
---|
attr iter_thres:INT; |
---|
attr rout_thres:INT; |
---|
attr inline_iters:BOOL; |
---|
attr inline_routs:BOOL; |
---|
attr iter_thres:INT; |
---|
attr rout_thres:INT; |
---|
const default_iter_thres := 16; |
---|
**** | found/guessed to be best on Sparcs |
const default_rout_thres := 16; |
---|
**** | default thresholds for inlining |
consider (am:AM_ROUT_DEF) |
---|
**** | don't inline built in routines and iters! |
create(p:PROG):SAME |
---|
general_inline(rout:AM_ROUT_DEF,lp:AM_LOOP_STMT,call:AM_ITER_CALL_EXPR):$AM_EXPR |
---|
general_inline(rout:AM_ROUT_DEF,call:AM_ROUT_CALL_EXPR):$AM_EXPR |
---|
init |
---|
**** | Insert translator for folding integer addition |
inlined(s:SIG):BOOL |
---|
special_inline(call:AM_ITER_CALL_EXPR):$AM_EXPR |
---|
special_inline(call:AM_ROUT_CALL_EXPR):$AM_EXPR |
---|
attr itbl:INLINE_ITER_TBL; |
---|
attr itbl:INLINE_ITER_TBL; |
---|
attr rtbl:INLINE_ROUT_TBL; |
---|
attr rtbl:INLINE_ROUT_TBL; |
---|