Handbook
Glossary
emit-fixnum-shift-fast ( block #call -- block' )
Vocabulary
compiler
.
cfg
.
intrinsics
.
fixnum
Inputs
block
an
object
#call
an
object
Outputs
block'
an
object
Definition
USING:
accessors
combinators
compiler.tree.propagation.info
kernel
math.intervals
sequences
;
IN:
compiler.cfg.intrinsics.fixnum
:
emit-fixnum-shift-fast
( block #call -- block' )
node-input-infos
second
interval>>
{
{
[
dup
0
[a,inf]
interval-subset?
]
[
drop
emit-fixnum-left-shift
]
}
{
[
dup
0
[-inf,b]
interval-subset?
]
[
drop
emit-fixnum-right-shift
]
}
[
drop
emit-fixnum-shift-general
]
}
cond
;