2008-07-27 21:25:42 -04:00
|
|
|
! Copyright (C) 2008 Slava Pestov.
|
|
|
|
! See http://factorcode.org/license.txt for BSD license.
|
2008-08-07 07:34:28 -04:00
|
|
|
USING: compiler.tree.normalization
|
|
|
|
compiler.tree.propagation
|
|
|
|
compiler.tree.cleanup
|
|
|
|
compiler.tree.escape-analysis
|
|
|
|
compiler.tree.tuple-unboxing
|
|
|
|
compiler.tree.def-use
|
|
|
|
compiler.tree.dead-code
|
|
|
|
compiler.tree.strength-reduction
|
2008-08-10 23:22:26 -04:00
|
|
|
compiler.tree.loop.detection
|
2008-08-11 00:37:12 -04:00
|
|
|
compiler.tree.loop.inversion
|
2008-08-07 07:34:28 -04:00
|
|
|
compiler.tree.branch-fusion ;
|
2008-07-27 21:25:42 -04:00
|
|
|
IN: compiler.tree.optimizer
|
|
|
|
|
|
|
|
: optimize-tree ( nodes -- nodes' )
|
|
|
|
normalize
|
|
|
|
propagate
|
|
|
|
cleanup
|
2008-08-10 23:22:26 -04:00
|
|
|
detect-loops
|
|
|
|
invert-loops
|
|
|
|
fuse-branches
|
2008-08-07 07:34:28 -04:00
|
|
|
escape-analysis
|
2008-07-27 21:25:42 -04:00
|
|
|
unbox-tuples
|
|
|
|
compute-def-use
|
|
|
|
remove-dead-code
|
2008-08-10 23:22:26 -04:00
|
|
|
strength-reduce ;
|