mirror of
https://gitlab.com/sheaf/metabrush.git
synced 2024-11-30 10:54:07 +00:00
31 lines
1,003 B
ArmAsm
31 lines
1,003 B
ArmAsm
.global in2_mul8
|
|
in2_mul8:
|
|
vshufpd $3, %xmm1, %xmm1, %xmm4
|
|
vshufpd $3, %xmm2, %xmm2, %xmm3
|
|
vxorpd %xmm1, %xmm4, %xmm5
|
|
vxorpd %xmm2, %xmm3, %xmm6
|
|
vtestpd %xmm5, %xmm6
|
|
je .LBB1_2
|
|
vxorpd %xmm5, %xmm5, %xmm5
|
|
vcmplepd %xmm5, %xmm3, %xmm3
|
|
vcmplepd %xmm5, %xmm4, %xmm4
|
|
vmovsd .LCPI1_1(%rip), %xmm5
|
|
vxorpd %xmm5, %xmm1, %xmm1
|
|
vshufps $78, %xmm1, %xmm1, %xmm6
|
|
vblendvpd %xmm3, %xmm6, %xmm1, %xmm1
|
|
vxorpd %xmm5, %xmm2, %xmm2
|
|
vshufps $78, %xmm2, %xmm2, %xmm3
|
|
vblendvpd %xmm4, %xmm3, %xmm2, %xmm2
|
|
vxorpd %xmm5, %xmm2, %xmm2
|
|
vmulpd %xmm2, %xmm1, %xmm1
|
|
jmp *(%rbp)
|
|
.LCPI1_1:
|
|
.quad -9223372036854775808
|
|
.LBB1_2:
|
|
vshufpd $1, %xmm1, %xmm1, %xmm4
|
|
vmovddup %xmm2, %xmm2
|
|
vmulpd %xmm4, %xmm2, %xmm2
|
|
vmulpd %xmm1, %xmm3, %xmm1
|
|
vmaxpd %xmm1, %xmm2, %xmm1
|
|
jmp *(%rbp)
|