Handbook
Glossary
conditional-branch-insn
Vocabulary
compiler
.
cfg
.
instructions
Definition
IN:
compiler.cfg.instructions
UNION:
conditional-branch-insn
##compare-branch
##compare-imm-branch
##compare-integer-branch
##compare-integer-imm-branch
##test-branch
##test-imm-branch
##compare-float-ordered-branch
##compare-float-unordered-branch
##test-vector-branch
##check-nursery-branch
##fixnum-add
##fixnum-sub
##fixnum-mul
;
Methods
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
;
USING:
accessors
compiler.cfg.comparisons
compiler.cfg.instructions
compiler.codegen
kernel
;
M:
conditional-branch-insn
negate-insn-cc
[
negate-cc
]
change-cc
drop
;