	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.globl	_do_3band                       ## -- Begin function do_3band
	.p2align	4, 0x90
_do_3band:                              ## @do_3band
	.cfi_startproc
## %bb.0:
	pushq	%rbp
	.cfi_def_cfa_offset 16
	.cfi_offset %rbp, -16
	movq	%rsp, %rbp
	.cfi_def_cfa_register %rbp
	cvtsi2sd	%esi, %xmm0
	movq	_vsa@GOTPCREL(%rip), %rax
	cvtsi2sdq	(%rax), %xmm6
	movsd	80(%rdi), %xmm9                 ## xmm9 = mem[0],zero
	movsd	88(%rdi), %xmm8                 ## xmm8 = mem[0],zero
	cvtsi2sdl	96(%rdi), %xmm3
	movl	100(%rdi), %eax
	movl	%eax, 96(%rdi)
	movl	%esi, 100(%rdi)
	movddup	%xmm0, %xmm4                    ## xmm4 = xmm0[0,0]
	movsd	32(%rdi), %xmm7                 ## xmm7 = mem[0],zero
	movsd	40(%rdi), %xmm5                 ## xmm5 = mem[0],zero
	movhpd	(%rdi), %xmm7                   ## xmm7 = xmm7[0],mem[0]
	subpd	%xmm7, %xmm4
	movd	48(%rdi), %xmm1                 ## xmm1 = mem[0],zero,zero,zero
	pinsrd	$1, 16(%rdi), %xmm1
	cvtdq2pd	%xmm1, %xmm1
	movhpd	8(%rdi), %xmm5                  ## xmm5 = xmm5[0],mem[0]
	movddup	%xmm6, %xmm6                    ## xmm6 = xmm6[0,0]
	mulpd	%xmm5, %xmm4
	addpd	%xmm6, %xmm4
	addpd	%xmm7, %xmm4
	movhpd	%xmm4, (%rdi)
	movapd	%xmm4, %xmm6
	subpd	%xmm1, %xmm6
	mulpd	%xmm5, %xmm6
	addpd	%xmm1, %xmm6
	cvttpd2dq	%xmm6, %xmm1
	extractps	$1, %xmm1, 16(%rdi)
	movd	52(%rdi), %xmm6                 ## xmm6 = mem[0],zero,zero,zero
	pinsrd	$1, 20(%rdi), %xmm6
	movapd	%xmm1, %xmm7
	psubd	%xmm6, %xmm7
	cvtdq2pd	%xmm7, %xmm7
	cvtdq2pd	%xmm6, %xmm6
	mulpd	%xmm5, %xmm7
	addpd	%xmm6, %xmm7
	cvttpd2dq	%xmm7, %xmm2
	extractps	$1, %xmm2, 20(%rdi)
	movd	56(%rdi), %xmm7                 ## xmm7 = mem[0],zero,zero,zero
	pinsrd	$1, 24(%rdi), %xmm7
	movapd	%xmm2, %xmm6
	psubd	%xmm7, %xmm6
	cvtdq2pd	%xmm6, %xmm6
	cvtdq2pd	%xmm7, %xmm7
	mulpd	%xmm5, %xmm6
	addpd	%xmm7, %xmm6
	cvttpd2dq	%xmm6, %xmm5
	extractps	$1, %xmm5, 24(%rdi)
	movlpd	%xmm4, 32(%rdi)
	movss	%xmm1, 48(%rdi)
	movss	%xmm2, 52(%rdi)
	movss	%xmm5, 56(%rdi)
	cvtdq2pd	%xmm5, %xmm1
	movupd	64(%rdi), %xmm2
	movapd	%xmm2, %xmm4
	mulpd	%xmm1, %xmm4
	subsd	%xmm1, %xmm2
	unpckhpd	%xmm1, %xmm1                    ## xmm1 = xmm1[1,1]
	addsd	%xmm2, %xmm1
	subsd	%xmm1, %xmm0
	mulsd	%xmm9, %xmm0
	movsd	%xmm3, 64(%rdi)
	mulsd	%xmm8, %xmm2
	unpckhpd	%xmm4, %xmm4                    ## xmm4 = xmm4[1,1]
	addsd	%xmm0, %xmm4
	addsd	%xmm2, %xmm4
	cvttpd2dq	%xmm4, %xmm0
	cvtdq2pd	%xmm0, %xmm0
	popq	%rbp
	retq
	.cfi_endproc
                                        ## -- End function
	.comm	_vsa,8,3                        ## @vsa
.subsections_via_symbols

	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.globl	_do_3band                       ; -- Begin function do_3band
	.p2align	2
_do_3band:                              ; @do_3band
	.cfi_startproc
; %bb.0:
	scvtf	d0, w1
	ldp	d2, d1, [x0]
	fsub	d3, d0, d2
Lloh0:
	adrp	x8, _vsa@GOTPAGE
Lloh1:
	ldr	x8, [x8, _vsa@GOTPAGEOFF]
Lloh2:
	ldr	d4, [x8]
	scvtf	d4, d4
	fmadd	d3, d1, d3, d4
	fadd	d2, d2, d3
	ldr	s3, [x0, #16]
	sshll.2d	v3, v3, #0
	scvtf	d3, d3
	fsub	d5, d2, d3
	fmadd	d3, d1, d5, d3
	fcvtzs	w8, d3
	ldp	w9, w10, [x0, #20]
	sub	w11, w8, w9
	scvtf	d3, w11
	scvtf	d5, w9
	fmadd	d3, d1, d3, d5
	fcvtzs	w9, d3
	stp	w8, w9, [x0, #16]
	sub	w8, w9, w10
	scvtf	d3, w8
	scvtf	d5, w10
	fmadd	d1, d1, d3, d5
	fcvtzs	w8, d1
	str	w8, [x0, #24]
	ldp	d3, d1, [x0, #32]
	fsub	d5, d0, d3
	fmadd	d4, d1, d5, d4
	fadd	d3, d3, d4
	ldr	s4, [x0, #48]
	sshll.2d	v4, v4, #0
	scvtf	d4, d4
	fsub	d5, d3, d4
	fmadd	d4, d1, d5, d4
	scvtf	d5, w8
	fcvtzs	w8, d4
	ldp	w9, w10, [x0, #52]
	sub	w11, w8, w9
	scvtf	d4, w11
	str	d2, [x0]
	str	d3, [x0, #32]
	scvtf	d2, w9
	fmadd	d2, d1, d4, d2
	fcvtzs	w9, d2
	stp	w8, w9, [x0, #48]
	sub	w8, w9, w10
	scvtf	d2, w8
	scvtf	d3, w10
	fmadd	d1, d1, d2, d3
	fcvtzs	w8, d1
	str	w8, [x0, #56]
	scvtf	d1, w8
	ldp	d2, d3, [x0, #64]
	fsub	d1, d2, d1
	fadd	d2, d1, d5
	fsub	d0, d0, d2
	fmul	d2, d3, d5
	ldp	d3, d4, [x0, #80]
	fmul	d0, d3, d0
	fmul	d1, d4, d1
	ldr	s3, [x0, #96]
	sshll.2d	v3, v3, #0
	scvtf	d3, d3
	str	d3, [x0, #64]
	ldr	w8, [x0, #100]
	stp	w8, w1, [x0, #96]
	fadd	d0, d2, d0
	fadd	d0, d1, d0
	fcvtzs	w8, d0
	scvtf	d0, w8
	ret
	.loh AdrpLdrGotLdr	Lloh0, Lloh1, Lloh2
	.cfi_endproc
                                        ; -- End function
	.comm	_vsa,8,3                        ; @vsa
.subsections_via_symbols
