Parents: | compiler.cfg.linear-scan |
Word | Stack effect |
assign-insn-defs | ( insn -- ) |
assign-insn-temps | ( insn -- ) |
assign-insn-uses | ( insn -- ) |
machine-edge-live-ins |
machine-live-ins |
machine-live-outs |
pending-interval-assoc |
pending-interval-heap |
unhandled-intervals |
Word | Stack effect |
activate-interval | ( live-interval -- ) |
activate-new-intervals | ( n unhandled-heap -- ) |
add-pending | ( live-interval -- ) |
assign-all-registers | ( insn -- ) |
assign-registers | ( cfg live-intervals -- ) |
assign-registers-in-block | ( bb -- ) |
begin-block | ( bb -- ) |
change-insn-gc-roots | ( gc-map-insn quot: ( x -- x ) -- ) |
compute-edge-live-in | ( bb -- ) |
compute-live-in | ( bb -- ) |
compute-live-out | ( bb -- ) |
emit-##call-gc | ( insn -- ) |
emit-gc-map-insn | ( gc-map-insn -- ) |
emit-insn | ( insn -- ) |
expire-interval | ( live-interval -- ) |
expire-old-intervals | ( n pending-heap -- ) |
handle-reload | ( live-interval -- ) |
handle-spill | ( live-interval -- ) |
init-assignment | ( live-intervals -- ) |
insert-reload | ( live-interval -- ) |
insert-spill | ( live-interval -- ) |
live-intervals>min-heap | ( live-intervals -- min-heap ) |
machine-edge-live-in | ( predecessor bb -- assoc ) |
machine-live-in | ( bb -- assoc ) |
machine-live-out | ( bb -- assoc ) |
prepare-insn | ( n -- ) |
remove-pending | ( live-interval -- ) |
rep-at-insn | ( n interval -- rep ) |
spill-intervals | ( root-leaders n -- live-intervals ) |
spill-required? | ( live-interval root-leaders n -- ? ) |
spill/reload | ( n interval -- {reg,rep,slot} ) |
spill/reloads | ( n intervals -- spill/reloads ) |
spill/reloads-for-call-gc | ( ##call-gc -- spill-seq ) |
vreg>reg | ( vreg -- reg/spill-slot ) |
vreg>spill-slot | ( vreg -- spill-slot ) |
vregs>regs | ( assoc -- assoc' ) |