Handbook
Glossary
emit-<tuple-boa> ( block #call -- block' )
Generating instructions for inline memory allocation
Prev:
emit-<byte-array> ( block #call -- block' )
Vocabulary
compiler
.
cfg
.
intrinsics
.
allot
Inputs
block
current
basic-block
#call
a
#call
Outputs
block'
a
basic-block
Word description
Emits intrinsic cfg instructions for building and allocating tuples. The intrinsic condition is that the tuple layout given to
<tuple-boa>
must be a literal.
See also
<tuple-boa>
Definition
USING:
accessors
arrays
compiler.cfg.builder.blocks
compiler.cfg.stacks
compiler.tree.propagation.info
kernel
sequences
;
IN:
compiler.cfg.intrinsics.allot
:
emit-<tuple-boa>
( block #call -- block' )
dup
node-input-infos
last
literal>>
dup
array?
[
nip
ds-drop
[
tuple-slot-regs
]
[
second
^^allot-tuple
]
bi
[
tuple
##set-slots,
]
[
ds-push
drop
]
2bi
]
[
drop
emit-primitive
]
if
;