Handbook
Glossary
generate-insn ( insn -- )
Vocabulary
compiler
.
codegen
Inputs
insn
an
insn
Outputs
None
Word description
Generates assembler code for one cfg instruction.
See also
generate
Definition
IN:
compiler.codegen
GENERIC:
generate-insn
( insn -- )
Methods
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##abs-vector
generate-insn
[
dst>>
]
keep
[
src>>
]
keep
[
rep>>
]
keep
drop
%abs-vector
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##add-float
generate-insn
[
dst>>
]
keep
[
src1>>
]
keep
[
src2>>
]
keep
drop
%add-float
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##add-imm
generate-insn
[
dst>>
]
keep
[
src1>>
]
keep
[
src2>>
]
keep
drop
%add-imm
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##add-sub-vector
generate-insn
[
dst>>
]
keep
[
src1>>
]
keep
[
src2>>
]
keep
[
rep>>
]
keep
drop
%add-sub-vector
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##add-vector
generate-insn
[
dst>>
]
keep
[
src1>>
]
keep
[
src2>>
]
keep
[
rep>>
]
keep
drop
%add-vector
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##add
generate-insn
[
dst>>
]
keep
[
src1>>
]
keep
[
src2>>
]
keep
drop
%add
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##alien-assembly
generate-insn
[
varargs?>>
]
keep
[
reg-inputs>>
]
keep
[
stack-inputs>>
]
keep
[
reg-outputs>>
]
keep
[
dead-outputs>>
]
keep
[
cleanup>>
]
keep
[
stack-size>>
]
keep
[
quot>>
]
keep
drop
%alien-assembly
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##alien-global
generate-insn
[
dst>>
]
keep
[
symbol>>
]
keep
[
library>>
]
keep
drop
%alien-global
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##alien-indirect
generate-insn
[
src>>
]
keep
[
varargs?>>
]
keep
[
reg-inputs>>
]
keep
[
stack-inputs>>
]
keep
[
reg-outputs>>
]
keep
[
dead-outputs>>
]
keep
[
cleanup>>
]
keep
[
stack-size>>
]
keep
[
gc-map>>
]
keep
drop
%alien-indirect
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##alien-invoke
generate-insn
[
varargs?>>
]
keep
[
reg-inputs>>
]
keep
[
stack-inputs>>
]
keep
[
reg-outputs>>
]
keep
[
dead-outputs>>
]
keep
[
cleanup>>
]
keep
[
stack-size>>
]
keep
[
symbols>>
]
keep
[
dll>>
]
keep
[
gc-map>>
]
keep
drop
%alien-invoke
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##allot
generate-insn
[
dst>>
]
keep
[
size>>
]
keep
[
class-of>>
]
keep
[
temp>>
]
keep
drop
%allot
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##and-imm
generate-insn
[
dst>>
]
keep
[
src1>>
]
keep
[
src2>>
]
keep
drop
%and-imm
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##and-vector
generate-insn
[
dst>>
]
keep
[
src1>>
]
keep
[
src2>>
]
keep
[
rep>>
]
keep
drop
%and-vector
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##and
generate-insn
[
dst>>
]
keep
[
src1>>
]
keep
[
src2>>
]
keep
drop
%and
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##andn-vector
generate-insn
[
dst>>
]
keep
[
src1>>
]
keep
[
src2>>
]
keep
[
rep>>
]
keep
drop
%andn-vector
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##avg-vector
generate-insn
[
dst>>
]
keep
[
src1>>
]
keep
[
src2>>
]
keep
[
rep>>
]
keep
drop
%avg-vector
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##bit-count
generate-insn
[
dst>>
]
keep
[
src>>
]
keep
drop
%bit-count
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##bit-test
generate-insn
[
dst>>
]
keep
[
src1>>
]
keep
[
src2>>
]
keep
[
temp>>
]
keep
drop
%bit-test
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##box-alien
generate-insn
[
dst>>
]
keep
[
src>>
]
keep
[
temp>>
]
keep
drop
%box-alien
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##box-displaced-alien
generate-insn
[
dst>>
]
keep
[
displacement>>
]
keep
[
base>>
]
keep
[
temp>>
]
keep
[
base-class>>
]
keep
drop
%box-displaced-alien
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##box-long-long
generate-insn
[
dst>>
]
keep
[
src1>>
]
keep
[
src2>>
]
keep
[
boxer>>
]
keep
[
gc-map>>
]
keep
drop
%box-long-long
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##box
generate-insn
[
dst>>
]
keep
[
src>>
]
keep
[
boxer>>
]
keep
[
rep>>
]
keep
[
gc-map>>
]
keep
drop
%box
;
USING:
accessors
compiler.cfg
compiler.cfg.instructions
compiler.codegen
kernel
namespaces
sequences
;
M:
##branch
generate-insn
drop
basic-block
get
dup
successors>>
first
emit-branch
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##call-gc
generate-insn
[
gc-map>>
]
keep
drop
%call-gc
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##call
generate-insn
[
word>>
]
keep
drop
%call
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##callback-inputs
generate-insn
[
reg-outputs>>
]
keep
[
stack-outputs>>
]
keep
drop
%callback-inputs
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##callback-outputs
generate-insn
[
reg-inputs>>
]
keep
drop
%callback-outputs
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##clear
generate-insn
[
loc>>
]
keep
drop
%clear
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##compare-float-ordered
generate-insn
[
dst>>
]
keep
[
src1>>
]
keep
[
src2>>
]
keep
[
cc>>
]
keep
[
temp>>
]
keep
drop
%compare-float-ordered
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##compare-float-unordered
generate-insn
[
dst>>
]
keep
[
src1>>
]
keep
[
src2>>
]
keep
[
cc>>
]
keep
[
temp>>
]
keep
drop
%compare-float-unordered
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##compare-imm
generate-insn
[
dst>>
]
keep
[
src1>>
]
keep
[
src2>>
]
keep
[
cc>>
]
keep
[
temp>>
]
keep
drop
%compare-imm
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##compare-integer-imm
generate-insn
[
dst>>
]
keep
[
src1>>
]
keep
[
src2>>
]
keep
[
cc>>
]
keep
[
temp>>
]
keep
drop
%compare-integer-imm
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##compare-integer
generate-insn
[
dst>>
]
keep
[
src1>>
]
keep
[
src2>>
]
keep
[
cc>>
]
keep
[
temp>>
]
keep
drop
%compare
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##compare-vector
generate-insn
[
dst>>
]
keep
[
src1>>
]
keep
[
src2>>
]
keep
[
rep>>
]
keep
[
cc>>
]
keep
drop
%compare-vector
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##compare
generate-insn
[
dst>>
]
keep
[
src1>>
]
keep
[
src2>>
]
keep
[
cc>>
]
keep
[
temp>>
]
keep
drop
%compare
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##convert-integer
generate-insn
[
dst>>
]
keep
[
src>>
]
keep
[
c-type>>
]
keep
drop
%convert-integer
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##copy
generate-insn
[
dst>>
]
keep
[
src>>
]
keep
[
rep>>
]
keep
drop
%copy
;
USING:
accessors
compiler.cfg
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
namespaces
sequences
;
M:
##dispatch
generate-insn
[
src>>
]
[
temp>>
]
bi
%dispatch
basic-block
get
successors>>
[
lookup-label
%dispatch-label
]
each
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##div-float
generate-insn
[
dst>>
]
keep
[
src1>>
]
keep
[
src2>>
]
keep
drop
%div-float
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##div-vector
generate-insn
[
dst>>
]
keep
[
src1>>
]
keep
[
src2>>
]
keep
[
rep>>
]
keep
drop
%div-vector
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##dot-vector
generate-insn
[
dst>>
]
keep
[
src1>>
]
keep
[
src2>>
]
keep
[
rep>>
]
keep
drop
%dot-vector
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##double>single-float
generate-insn
[
dst>>
]
keep
[
src>>
]
keep
drop
%double>single-float
;
USING:
accessors
compiler.cfg
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
namespaces
;
M:
##epilogue
generate-insn
drop
cfg
get
stack-frame>>
[
total-size>>
%epilogue
]
when*
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##fill-vector
generate-insn
[
dst>>
]
keep
[
rep>>
]
keep
drop
%fill-vector
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##float-pack-vector
generate-insn
[
dst>>
]
keep
[
src>>
]
keep
[
rep>>
]
keep
drop
%float-pack-vector
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##float>integer-vector
generate-insn
[
dst>>
]
keep
[
src>>
]
keep
[
rep>>
]
keep
drop
%float>integer-vector
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##float>integer
generate-insn
[
dst>>
]
keep
[
src>>
]
keep
drop
%float>integer
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##gather-int-vector-2
generate-insn
[
dst>>
]
keep
[
src1>>
]
keep
[
src2>>
]
keep
[
rep>>
]
keep
drop
%gather-int-vector-2
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##gather-int-vector-4
generate-insn
[
dst>>
]
keep
[
src1>>
]
keep
[
src2>>
]
keep
[
src3>>
]
keep
[
src4>>
]
keep
[
rep>>
]
keep
drop
%gather-int-vector-4
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##gather-vector-2
generate-insn
[
dst>>
]
keep
[
src1>>
]
keep
[
src2>>
]
keep
[
rep>>
]
keep
drop
%gather-vector-2
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##gather-vector-4
generate-insn
[
dst>>
]
keep
[
src1>>
]
keep
[
src2>>
]
keep
[
src3>>
]
keep
[
src4>>
]
keep
[
rep>>
]
keep
drop
%gather-vector-4
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##horizontal-add-vector
generate-insn
[
dst>>
]
keep
[
src1>>
]
keep
[
src2>>
]
keep
[
rep>>
]
keep
drop
%horizontal-add-vector
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##horizontal-shl-vector-imm
generate-insn
[
dst>>
]
keep
[
src1>>
]
keep
[
src2>>
]
keep
[
rep>>
]
keep
drop
%horizontal-shl-vector-imm
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##horizontal-shr-vector-imm
generate-insn
[
dst>>
]
keep
[
src1>>
]
keep
[
src2>>
]
keep
[
rep>>
]
keep
drop
%horizontal-shr-vector-imm
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##horizontal-sub-vector
generate-insn
[
dst>>
]
keep
[
src1>>
]
keep
[
src2>>
]
keep
[
rep>>
]
keep
drop
%horizontal-sub-vector
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##inc
generate-insn
[
loc>>
]
keep
drop
%inc
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##integer>float-vector
generate-insn
[
dst>>
]
keep
[
src>>
]
keep
[
rep>>
]
keep
drop
%integer>float-vector
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##integer>float
generate-insn
[
dst>>
]
keep
[
src>>
]
keep
drop
%integer>float
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##integer>scalar
generate-insn
[
dst>>
]
keep
[
src>>
]
keep
[
rep>>
]
keep
drop
%integer>scalar
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##jump
generate-insn
[
word>>
]
keep
drop
%jump
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##load-double
generate-insn
[
dst>>
]
keep
[
val>>
]
keep
drop
%load-double
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##load-float
generate-insn
[
dst>>
]
keep
[
val>>
]
keep
drop
%load-float
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##load-integer
generate-insn
[
dst>>
]
keep
[
val>>
]
keep
drop
%load-immediate
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##load-memory-imm
generate-insn
[
dst>>
]
keep
[
base>>
]
keep
[
offset>>
]
keep
[
rep>>
]
keep
[
c-type>>
]
keep
drop
%load-memory-imm
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##load-memory
generate-insn
[
dst>>
]
keep
[
base>>
]
keep
[
displacement>>
]
keep
[
scale>>
]
keep
[
offset>>
]
keep
[
rep>>
]
keep
[
c-type>>
]
keep
drop
%load-memory
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##load-reference
generate-insn
[
dst>>
]
keep
[
obj>>
]
keep
drop
%load-reference
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##load-tagged
generate-insn
[
dst>>
]
keep
[
val>>
]
keep
drop
%load-immediate
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##load-vector
generate-insn
[
dst>>
]
keep
[
val>>
]
keep
[
rep>>
]
keep
drop
%load-vector
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##local-allot
generate-insn
[
dst>>
]
keep
[
size>>
]
keep
[
align>>
]
keep
[
offset>>
]
keep
drop
%local-allot
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##log2
generate-insn
[
dst>>
]
keep
[
src>>
]
keep
drop
%log2
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##max-float
generate-insn
[
dst>>
]
keep
[
src1>>
]
keep
[
src2>>
]
keep
drop
%max-float
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##max-vector
generate-insn
[
dst>>
]
keep
[
src1>>
]
keep
[
src2>>
]
keep
[
rep>>
]
keep
drop
%max-vector
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##max
generate-insn
[
dst>>
]
keep
[
src1>>
]
keep
[
src2>>
]
keep
drop
%max
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##merge-vector-head
generate-insn
[
dst>>
]
keep
[
src1>>
]
keep
[
src2>>
]
keep
[
rep>>
]
keep
drop
%merge-vector-head
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##merge-vector-tail
generate-insn
[
dst>>
]
keep
[
src1>>
]
keep
[
src2>>
]
keep
[
rep>>
]
keep
drop
%merge-vector-tail
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##min-float
generate-insn
[
dst>>
]
keep
[
src1>>
]
keep
[
src2>>
]
keep
drop
%min-float
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##min-vector
generate-insn
[
dst>>
]
keep
[
src1>>
]
keep
[
src2>>
]
keep
[
rep>>
]
keep
drop
%min-vector
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##min
generate-insn
[
dst>>
]
keep
[
src1>>
]
keep
[
src2>>
]
keep
drop
%min
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##move-vector-mask
generate-insn
[
dst>>
]
keep
[
src>>
]
keep
[
rep>>
]
keep
drop
%move-vector-mask
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##mul-float
generate-insn
[
dst>>
]
keep
[
src1>>
]
keep
[
src2>>
]
keep
drop
%mul-float
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##mul-high-vector
generate-insn
[
dst>>
]
keep
[
src1>>
]
keep
[
src2>>
]
keep
[
rep>>
]
keep
drop
%mul-high-vector
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##mul-horizontal-add-vector
generate-insn
[
dst>>
]
keep
[
src1>>
]
keep
[
src2>>
]
keep
[
rep>>
]
keep
drop
%mul-horizontal-add-vector
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##mul-imm
generate-insn
[
dst>>
]
keep
[
src1>>
]
keep
[
src2>>
]
keep
drop
%mul-imm
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##mul-vector
generate-insn
[
dst>>
]
keep
[
src1>>
]
keep
[
src2>>
]
keep
[
rep>>
]
keep
drop
%mul-vector
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##mul
generate-insn
[
dst>>
]
keep
[
src1>>
]
keep
[
src2>>
]
keep
drop
%mul
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##neg
generate-insn
[
dst>>
]
keep
[
src>>
]
keep
drop
%neg
;
USING:
compiler.cfg.instructions
compiler.codegen
kernel
;
M:
##no-tco
generate-insn
drop
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##not-vector
generate-insn
[
dst>>
]
keep
[
src>>
]
keep
[
rep>>
]
keep
drop
%not-vector
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##not
generate-insn
[
dst>>
]
keep
[
src>>
]
keep
drop
%not
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##or-imm
generate-insn
[
dst>>
]
keep
[
src1>>
]
keep
[
src2>>
]
keep
drop
%or-imm
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##or-vector
generate-insn
[
dst>>
]
keep
[
src1>>
]
keep
[
src2>>
]
keep
[
rep>>
]
keep
drop
%or-vector
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##or
generate-insn
[
dst>>
]
keep
[
src1>>
]
keep
[
src2>>
]
keep
drop
%or
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##peek
generate-insn
[
dst>>
]
keep
[
loc>>
]
keep
drop
%peek
;
USING:
accessors
compiler.cfg
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
namespaces
;
M:
##prologue
generate-insn
drop
cfg
get
stack-frame>>
[
total-size>>
%prologue
]
when*
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##reload
generate-insn
[
dst>>
]
keep
[
rep>>
]
keep
[
src>>
]
keep
drop
%reload
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##replace-imm
generate-insn
[
src>>
]
keep
[
loc>>
]
keep
drop
%replace-imm
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##replace
generate-insn
[
src>>
]
keep
[
loc>>
]
keep
drop
%replace
;
USING:
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##return
generate-insn
drop
%return
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##sad-vector
generate-insn
[
dst>>
]
keep
[
src1>>
]
keep
[
src2>>
]
keep
[
rep>>
]
keep
drop
%sad-vector
;
USING:
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##safepoint
generate-insn
drop
%safepoint
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##sar-imm
generate-insn
[
dst>>
]
keep
[
src1>>
]
keep
[
src2>>
]
keep
drop
%sar-imm
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##sar
generate-insn
[
dst>>
]
keep
[
src1>>
]
keep
[
src2>>
]
keep
drop
%sar
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##saturated-add-vector
generate-insn
[
dst>>
]
keep
[
src1>>
]
keep
[
src2>>
]
keep
[
rep>>
]
keep
drop
%saturated-add-vector
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##saturated-mul-vector
generate-insn
[
dst>>
]
keep
[
src1>>
]
keep
[
src2>>
]
keep
[
rep>>
]
keep
drop
%saturated-mul-vector
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##saturated-sub-vector
generate-insn
[
dst>>
]
keep
[
src1>>
]
keep
[
src2>>
]
keep
[
rep>>
]
keep
drop
%saturated-sub-vector
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##save-context
generate-insn
[
temp1>>
]
keep
[
temp2>>
]
keep
drop
%save-context
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##scalar>integer
generate-insn
[
dst>>
]
keep
[
src>>
]
keep
[
rep>>
]
keep
drop
%scalar>integer
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##scalar>vector
generate-insn
[
dst>>
]
keep
[
src>>
]
keep
[
rep>>
]
keep
drop
%scalar>vector
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##select-vector
generate-insn
[
dst>>
]
keep
[
src>>
]
keep
[
n>>
]
keep
[
rep>>
]
keep
drop
%select-vector
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##set-slot-imm
generate-insn
[
src>>
]
keep
[
obj>>
]
keep
[
slot>>
]
keep
[
tag>>
]
keep
drop
%set-slot-imm
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##set-slot
generate-insn
[
src>>
]
keep
[
obj>>
]
keep
[
slot>>
]
keep
[
scale>>
]
keep
[
tag>>
]
keep
drop
%set-slot
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##set-vm-field
generate-insn
[
src>>
]
keep
[
offset>>
]
keep
drop
%set-vm-field
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##shl-imm
generate-insn
[
dst>>
]
keep
[
src1>>
]
keep
[
src2>>
]
keep
drop
%shl-imm
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##shl-vector-imm
generate-insn
[
dst>>
]
keep
[
src1>>
]
keep
[
src2>>
]
keep
[
rep>>
]
keep
drop
%shl-vector-imm
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##shl-vector
generate-insn
[
dst>>
]
keep
[
src1>>
]
keep
[
src2>>
]
keep
[
rep>>
]
keep
drop
%shl-vector
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##shl
generate-insn
[
dst>>
]
keep
[
src1>>
]
keep
[
src2>>
]
keep
drop
%shl
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##shr-imm
generate-insn
[
dst>>
]
keep
[
src1>>
]
keep
[
src2>>
]
keep
drop
%shr-imm
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##shr-vector-imm
generate-insn
[
dst>>
]
keep
[
src1>>
]
keep
[
src2>>
]
keep
[
rep>>
]
keep
drop
%shr-vector-imm
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##shr-vector
generate-insn
[
dst>>
]
keep
[
src1>>
]
keep
[
src2>>
]
keep
[
rep>>
]
keep
drop
%shr-vector
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##shr
generate-insn
[
dst>>
]
keep
[
src1>>
]
keep
[
src2>>
]
keep
drop
%shr
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##shuffle-vector-halves-imm
generate-insn
[
dst>>
]
keep
[
src1>>
]
keep
[
src2>>
]
keep
[
shuffle>>
]
keep
[
rep>>
]
keep
drop
%shuffle-vector-halves-imm
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##shuffle-vector-imm
generate-insn
[
dst>>
]
keep
[
src>>
]
keep
[
shuffle>>
]
keep
[
rep>>
]
keep
drop
%shuffle-vector-imm
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##shuffle-vector
generate-insn
[
dst>>
]
keep
[
src>>
]
keep
[
shuffle>>
]
keep
[
rep>>
]
keep
drop
%shuffle-vector
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##signed-pack-vector
generate-insn
[
dst>>
]
keep
[
src1>>
]
keep
[
src2>>
]
keep
[
rep>>
]
keep
drop
%signed-pack-vector
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##single>double-float
generate-insn
[
dst>>
]
keep
[
src>>
]
keep
drop
%single>double-float
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##slot-imm
generate-insn
[
dst>>
]
keep
[
obj>>
]
keep
[
slot>>
]
keep
[
tag>>
]
keep
drop
%slot-imm
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##slot
generate-insn
[
dst>>
]
keep
[
obj>>
]
keep
[
slot>>
]
keep
[
scale>>
]
keep
[
tag>>
]
keep
drop
%slot
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##spill
generate-insn
[
src>>
]
keep
[
rep>>
]
keep
[
dst>>
]
keep
drop
%spill
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##sqrt-vector
generate-insn
[
dst>>
]
keep
[
src>>
]
keep
[
rep>>
]
keep
drop
%sqrt-vector
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##sqrt
generate-insn
[
dst>>
]
keep
[
src>>
]
keep
drop
%sqrt
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##store-memory-imm
generate-insn
[
src>>
]
keep
[
base>>
]
keep
[
offset>>
]
keep
[
rep>>
]
keep
[
c-type>>
]
keep
drop
%store-memory-imm
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##store-memory
generate-insn
[
src>>
]
keep
[
base>>
]
keep
[
displacement>>
]
keep
[
scale>>
]
keep
[
offset>>
]
keep
[
rep>>
]
keep
[
c-type>>
]
keep
drop
%store-memory
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##sub-float
generate-insn
[
dst>>
]
keep
[
src1>>
]
keep
[
src2>>
]
keep
drop
%sub-float
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##sub-imm
generate-insn
[
dst>>
]
keep
[
src1>>
]
keep
[
src2>>
]
keep
drop
%sub-imm
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##sub-vector
generate-insn
[
dst>>
]
keep
[
src1>>
]
keep
[
src2>>
]
keep
[
rep>>
]
keep
drop
%sub-vector
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##sub
generate-insn
[
dst>>
]
keep
[
src1>>
]
keep
[
src2>>
]
keep
drop
%sub
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##tagged>integer
generate-insn
[
dst>>
]
keep
[
src>>
]
keep
drop
%tagged>integer
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##tail>head-vector
generate-insn
[
dst>>
]
keep
[
src>>
]
keep
[
rep>>
]
keep
drop
%tail>head-vector
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##test-imm
generate-insn
[
dst>>
]
keep
[
src1>>
]
keep
[
src2>>
]
keep
[
cc>>
]
keep
[
temp>>
]
keep
drop
%test-imm
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##test-vector
generate-insn
[
dst>>
]
keep
[
src1>>
]
keep
[
temp>>
]
keep
[
rep>>
]
keep
[
vcc>>
]
keep
drop
%test-vector
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##test
generate-insn
[
dst>>
]
keep
[
src1>>
]
keep
[
src2>>
]
keep
[
cc>>
]
keep
[
temp>>
]
keep
drop
%test
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##unbox-alien
generate-insn
[
dst>>
]
keep
[
src>>
]
keep
drop
%unbox-alien
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##unbox-any-c-ptr
generate-insn
[
dst>>
]
keep
[
src>>
]
keep
drop
%unbox-any-c-ptr
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##unbox-long-long
generate-insn
[
dst1>>
]
keep
[
dst2>>
]
keep
[
src>>
]
keep
[
unboxer>>
]
keep
drop
%unbox-long-long
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##unbox
generate-insn
[
dst>>
]
keep
[
src>>
]
keep
[
unboxer>>
]
keep
[
rep>>
]
keep
drop
%unbox
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##unpack-vector-head
generate-insn
[
dst>>
]
keep
[
src>>
]
keep
[
rep>>
]
keep
drop
%unpack-vector-head
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##unpack-vector-tail
generate-insn
[
dst>>
]
keep
[
src>>
]
keep
[
rep>>
]
keep
drop
%unpack-vector-tail
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##unsigned-pack-vector
generate-insn
[
dst>>
]
keep
[
src1>>
]
keep
[
src2>>
]
keep
[
rep>>
]
keep
drop
%unsigned-pack-vector
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##vector>scalar
generate-insn
[
dst>>
]
keep
[
src>>
]
keep
[
rep>>
]
keep
drop
%vector>scalar
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##vm-field
generate-insn
[
dst>>
]
keep
[
offset>>
]
keep
drop
%vm-field
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##write-barrier-imm
generate-insn
[
src>>
]
keep
[
slot>>
]
keep
[
tag>>
]
keep
[
temp1>>
]
keep
[
temp2>>
]
keep
drop
%write-barrier-imm
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##write-barrier
generate-insn
[
src>>
]
keep
[
slot>>
]
keep
[
scale>>
]
keep
[
tag>>
]
keep
[
temp1>>
]
keep
[
temp2>>
]
keep
drop
%write-barrier
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##xor-imm
generate-insn
[
dst>>
]
keep
[
src1>>
]
keep
[
src2>>
]
keep
drop
%xor-imm
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##xor-vector
generate-insn
[
dst>>
]
keep
[
src1>>
]
keep
[
src2>>
]
keep
[
rep>>
]
keep
drop
%xor-vector
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##xor
generate-insn
[
dst>>
]
keep
[
src1>>
]
keep
[
src2>>
]
keep
drop
%xor
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##zero-vector
generate-insn
[
dst>>
]
keep
[
rep>>
]
keep
drop
%zero-vector
;
USING:
accessors
compiler.cfg
compiler.cfg.instructions
compiler.codegen
kernel
namespaces
sequences
;
M::
conditional-branch-insn
generate-insn
( insn -- )
basic-block
get
:>
bb bb
successors>>
first2
:>
( first second ) bb second
useless-branch?
[
bb second first
]
[
bb first second insn
negate-insn-cc
]
if
lookup-label
insn
generate-conditional-insn
emit-branch
;