Handbook
Glossary
inert-tag-untag-insn
Vocabulary
compiler
.
cfg
.
representations
.
selection
Class description
Class of instructions that are binary and inert with respect to tagging. Those instructions often doesn't need untagging and retagging because the operations can be performed on their tagged representations.
Definition
USING:
compiler.cfg.instructions
;
IN:
compiler.cfg.representations.selection
UNION:
inert-tag-untag-insn
##add
##sub
##and
##or
##xor
##min
##max
;
Methods
USING:
combinators
combinators.short-circuit
compiler.cfg.representations.peephole
compiler.cfg.representations.selection
generic
kernel
;
M:
inert-tag-untag-insn
optimize-insn
{
{
[
dup
{
[
dst-tagged?
]
[
src1-tagged?
]
[
src2-tagged?
]
}
1&&
]
[
unchanged
]
}
[
M\
inert-tag-untag-insn
optimize-insn
(call-next-method)
]
}
cond
;