Handbook
Glossary
generate-conditional-insn ( label insn -- )
Vocabulary
compiler
.
codegen
Inputs
label
an
object
insn
an
object
Outputs
None
Definition
IN:
compiler.codegen
GENERIC:
generate-conditional-insn
( label insn -- )
Methods
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##check-nursery-branch
generate-conditional-insn
[
size>>
]
keep
[
cc>>
]
keep
[
temp1>>
]
keep
[
temp2>>
]
keep
drop
%check-nursery-branch
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##compare-branch
generate-conditional-insn
[
src1>>
]
keep
[
src2>>
]
keep
[
cc>>
]
keep
drop
%compare-branch
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##compare-float-ordered-branch
generate-conditional-insn
[
src1>>
]
keep
[
src2>>
]
keep
[
cc>>
]
keep
drop
%compare-float-ordered-branch
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##compare-float-unordered-branch
generate-conditional-insn
[
src1>>
]
keep
[
src2>>
]
keep
[
cc>>
]
keep
drop
%compare-float-unordered-branch
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##compare-imm-branch
generate-conditional-insn
[
src1>>
]
keep
[
src2>>
]
keep
[
cc>>
]
keep
drop
%compare-imm-branch
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##compare-integer-branch
generate-conditional-insn
[
src1>>
]
keep
[
src2>>
]
keep
[
cc>>
]
keep
drop
%compare-branch
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##compare-integer-imm-branch
generate-conditional-insn
[
src1>>
]
keep
[
src2>>
]
keep
[
cc>>
]
keep
drop
%compare-integer-imm-branch
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##fixnum-add
generate-conditional-insn
[
dst>>
]
keep
[
src1>>
]
keep
[
src2>>
]
keep
[
cc>>
]
keep
drop
%fixnum-add
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##fixnum-mul
generate-conditional-insn
[
dst>>
]
keep
[
src1>>
]
keep
[
src2>>
]
keep
[
cc>>
]
keep
drop
%fixnum-mul
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##fixnum-sub
generate-conditional-insn
[
dst>>
]
keep
[
src1>>
]
keep
[
src2>>
]
keep
[
cc>>
]
keep
drop
%fixnum-sub
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##test-branch
generate-conditional-insn
[
src1>>
]
keep
[
src2>>
]
keep
[
cc>>
]
keep
drop
%test-branch
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##test-imm-branch
generate-conditional-insn
[
src1>>
]
keep
[
src2>>
]
keep
[
cc>>
]
keep
drop
%test-imm-branch
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##test-vector-branch
generate-conditional-insn
[
src1>>
]
keep
[
temp>>
]
keep
[
rep>>
]
keep
[
vcc>>
]
keep
drop
%test-vector-branch
;