Handbook
Glossary
^unpack-vector-head ( src rep -- dst )
Vocabulary
compiler
.
cfg
.
intrinsics
.
simd
Inputs
src
an
object
rep
an
object
Outputs
dst
an
object
Definition
USING:
alien.c-types
compiler.cfg.comparisons
compiler.cfg.hats
compiler.cfg.intrinsics.simd.backend
cpu.architecture
kernel
locals.backend
math
;
IN:
compiler.cfg.intrinsics.simd
:
^unpack-vector-head
( src rep -- dst )
{
[
^^unpack-vector-head
]
{
unsigned-int-vector-rep
[
[
^^zero-vector
]
[
^^merge-vector-head
]
bi
]
}
{
signed-int-vector-rep
[
2
load-locals
-1
get-local
-1
get-local
0
get-local
^^merge-vector-head
load-local
-1
get-local
rep-component-type
heap-size
8
*
load-local
-1
get-local
0
get-local
-2
get-local
widen-vector-rep
^^shr-vector-imm
4
drop-locals
]
}
{
signed-int-vector-rep
[
2
load-locals
0
get-local
^^zero-vector
load-local
0
get-local
-2
get-local
-1
get-local
cc>
^compare-vector
load-local
-3
get-local
0
get-local
-2
get-local
^^merge-vector-head
4
drop-locals
]
}
}
v-vector-op
;