Handbook
Glossary
measure-cfg ( procedure -- metrics )
Vocabulary
compiler
.
cfg
.
metrics
Inputs
procedure
an
object
Outputs
metrics
an
object
Definition
USING:
compiler.cfg
compiler.cfg.finalization
compiler.cfg.optimizer
compiler.cfg.register-allocation
compiler.codegen
kernel
namespaces
sequences
tools.time
;
IN:
compiler.cfg.metrics
::
measure-cfg
( procedure -- metrics )
[
procedure
cfg
set
\
optimize-cfg
pass-list
\
finalize-cfg
pass-list
append
[
procedure
swap
measure-pass
]
map
:>
passes
current-register-allocator
allocator-statistics
:>
allocation
[
procedure
generate
]
benchmark
:>
( code ns ) 4 code
nth
length
:>
code-bytes
H{
{
"allocation"
allocation
}
{
"passes"
passes
}
{
"code-bytes"
code-bytes
}
{
"codegen-nanoseconds"
ns
}
}
]
with-scope
;