	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	4, 0x90                         ## -- Begin function twiddle
_twiddle:                               ## @twiddle
	.cfi_startproc
## %bb.0:
	pushq	%rbp
	.cfi_def_cfa_offset 16
	.cfi_offset %rbp, -16
	movq	%rsp, %rbp
	.cfi_def_cfa_register %rbp
	pushq	%r15
	pushq	%r14
	pushq	%r13
	pushq	%r12
	pushq	%rbx
	subq	$72, %rsp
	.cfi_offset %rbx, -56
	.cfi_offset %r12, -48
	.cfi_offset %r13, -40
	.cfi_offset %r14, -32
	.cfi_offset %r15, -24
	movl	%r9d, %r15d
	movl	%r8d, %r12d
	movq	%rcx, %r14
	movl	%edx, %r13d
	movq	%rsi, %rbx
	movl	16(%rbp), %r9d
	movl	24(%rbp), %r10d
	movq	32(%rbp), %r11
	movl	%edx, %eax
	subl	%r8d, %eax
	cltd
	idivl	%r15d
                                        ## kill: def $eax killed $eax def $rax
	movq	%rax, -48(%rbp)                 ## 8-byte Spill
	movq	%rdi, -104(%rbp)                ## 8-byte Spill
	movl	%r13d, %edx
	movl	%r8d, %ecx
	movl	%r15d, %r8d
	pushq	%r11
	pushq	%r10
	callq	_pretwiddle
	movq	-48(%rbp), %rdi                 ## 8-byte Reload
	addq	$16, %rsp
	testl	%edi, %edi
	js	LBB0_33
## %bb.1:
	movl	%r13d, %r9d
	leal	-1(%r12), %eax
	decl	%r9d
	movslq	16(%rbp), %rcx
	movq	%rcx, -96(%rbp)                 ## 8-byte Spill
	incl	%edi
	movl	%r12d, %r8d
	movl	%r8d, %r10d
	andl	$-4, %r10d
	leaq	16(%r14), %rcx
	movq	%rcx, -72(%rbp)                 ## 8-byte Spill
	leaq	-4(%rbx), %rcx
	movq	%rcx, -64(%rbp)                 ## 8-byte Spill
	movq	%r10, -80(%rbp)                 ## 8-byte Spill
	negq	%r10
	xorl	%r11d, %r11d
	movq	%rdi, -48(%rbp)                 ## 8-byte Spill
	movl	%r15d, -56(%rbp)                ## 4-byte Spill
	movq	%r12, -88(%rbp)                 ## 8-byte Spill
	movl	%r9d, -52(%rbp)                 ## 4-byte Spill
	jmp	LBB0_3
	.p2align	4, 0x90
LBB0_2:                                 ##   in Loop: Header=BB0_3 Depth=1
	addl	%r15d, %eax
	incq	%r11
	cmpq	%rdi, %r11
	je	LBB0_33
LBB0_3:                                 ## =>This Loop Header: Depth=1
                                        ##     Child Loop BB0_18 Depth 2
                                        ##     Child Loop BB0_21 Depth 2
                                        ##     Child Loop BB0_11 Depth 2
                                        ##     Child Loop BB0_13 Depth 2
                                        ##     Child Loop BB0_27 Depth 2
                                        ##     Child Loop BB0_32 Depth 2
	movq	-96(%rbp), %rcx                 ## 8-byte Reload
	addq	%r11, %rcx
	movq	-104(%rbp), %rdx                ## 8-byte Reload
	movss	(%rdx,%rcx,4), %xmm0            ## xmm0 = mem[0],zero,zero,zero
	andl	%r9d, %eax
	cmpl	%r12d, %eax
	jge	LBB0_7
## %bb.4:                               ##   in Loop: Header=BB0_3 Depth=1
	testl	%eax, %eax
	js	LBB0_14
## %bb.5:                               ##   in Loop: Header=BB0_3 Depth=1
	xorps	%xmm1, %xmm1
	cvtss2sd	%xmm0, %xmm1
	movl	%eax, %ecx
	cmpl	$3, %eax
	jae	LBB0_10
## %bb.6:                               ##   in Loop: Header=BB0_3 Depth=1
	movq	%r14, %r13
	jmp	LBB0_13
	.p2align	4, 0x90
LBB0_7:                                 ##   in Loop: Header=BB0_3 Depth=1
	testl	%r12d, %r12d
	jle	LBB0_2
## %bb.8:                               ##   in Loop: Header=BB0_3 Depth=1
	cvtss2sd	%xmm0, %xmm0
	movslq	%eax, %rcx
	cmpl	$4, %r12d
	jae	LBB0_17
## %bb.9:                               ##   in Loop: Header=BB0_3 Depth=1
	xorl	%edx, %edx
	jmp	LBB0_20
LBB0_10:                                ##   in Loop: Header=BB0_3 Depth=1
	leaq	1(%rcx), %r9
	movq	%r9, %rsi
	andq	$-4, %rsi
	leaq	(%r14,%rsi,8), %r13
	movddup	%xmm1, %xmm2                    ## xmm2 = xmm1[0,0]
	movq	%rsi, %rdx
	negq	%rdx
	movq	-64(%rbp), %rdi                 ## 8-byte Reload
	leaq	(%rdi,%rcx,4), %rdi
	subq	%rsi, %rcx
	xorl	%r12d, %r12d
	movq	-72(%rbp), %r15                 ## 8-byte Reload
	.p2align	4, 0x90
LBB0_11:                                ##   Parent Loop BB0_3 Depth=1
                                        ## =>  This Inner Loop Header: Depth=2
	movupd	-16(%r15), %xmm3
	movupd	(%r15), %xmm4
	movsd	-8(%rdi,%r12,4), %xmm5          ## xmm5 = mem[0],zero
	movsd	(%rdi,%r12,4), %xmm6            ## xmm6 = mem[0],zero
	shufps	$225, %xmm6, %xmm6              ## xmm6 = xmm6[1,0,2,3]
	shufps	$225, %xmm5, %xmm5              ## xmm5 = xmm5[1,0,2,3]
	cvtps2pd	%xmm6, %xmm6
	cvtps2pd	%xmm5, %xmm5
	mulpd	%xmm2, %xmm3
	addpd	%xmm6, %xmm3
	mulpd	%xmm2, %xmm4
	addpd	%xmm5, %xmm4
	cvtpd2ps	%xmm3, %xmm3
	cvtpd2ps	%xmm4, %xmm4
	shufps	$225, %xmm3, %xmm3              ## xmm3 = xmm3[1,0,2,3]
	movlps	%xmm3, (%rdi,%r12,4)
	shufps	$225, %xmm4, %xmm4              ## xmm4 = xmm4[1,0,2,3]
	movlps	%xmm4, -8(%rdi,%r12,4)
	addq	$32, %r15
	addq	$-4, %r12
	cmpq	%r12, %rdx
	jne	LBB0_11
## %bb.12:                              ##   in Loop: Header=BB0_3 Depth=1
	cmpq	%rsi, %r9
	movl	-56(%rbp), %r15d                ## 4-byte Reload
	movq	-88(%rbp), %r12                 ## 8-byte Reload
	movl	-52(%rbp), %r9d                 ## 4-byte Reload
	movq	-48(%rbp), %rdi                 ## 8-byte Reload
	je	LBB0_14
	.p2align	4, 0x90
LBB0_13:                                ##   Parent Loop BB0_3 Depth=1
                                        ## =>  This Inner Loop Header: Depth=2
	movss	(%rbx,%rcx,4), %xmm2            ## xmm2 = mem[0],zero,zero,zero
	cvtss2sd	%xmm2, %xmm2
	movsd	(%r13), %xmm3                   ## xmm3 = mem[0],zero
	mulsd	%xmm1, %xmm3
	addq	$8, %r13
	addsd	%xmm2, %xmm3
	xorps	%xmm2, %xmm2
	cvtsd2ss	%xmm3, %xmm2
	movss	%xmm2, (%rbx,%rcx,4)
	addq	$-1, %rcx
	jb	LBB0_13
LBB0_14:                                ##   in Loop: Header=BB0_3 Depth=1
	movl	%eax, %edx
	notl	%edx
	addl	%r12d, %edx
	testl	%edx, %edx
	jle	LBB0_2
## %bb.15:                              ##   in Loop: Header=BB0_3 Depth=1
	cvtss2sd	%xmm0, %xmm0
	movl	%edx, %ecx
	cmpl	$4, %edx
	jae	LBB0_22
LBB0_30:                                ##   in Loop: Header=BB0_3 Depth=1
	xorl	%r13d, %r13d
LBB0_31:                                ##   in Loop: Header=BB0_3 Depth=1
	movl	%r9d, %edx
	subl	%r13d, %edx
	subq	%r13, %rcx
	leal	(%rax,%r13), %esi
	incl	%esi
	.p2align	4, 0x90
LBB0_32:                                ##   Parent Loop BB0_3 Depth=1
                                        ## =>  This Inner Loop Header: Depth=2
	movslq	%esi, %rsi
	movslq	%edx, %rdx
	movss	(%rbx,%rdx,4), %xmm1            ## xmm1 = mem[0],zero,zero,zero
	cvtss2sd	%xmm1, %xmm1
	movsd	(%r14,%rsi,8), %xmm2            ## xmm2 = mem[0],zero
	mulsd	%xmm0, %xmm2
	addsd	%xmm1, %xmm2
	xorps	%xmm1, %xmm1
	cvtsd2ss	%xmm2, %xmm1
	movss	%xmm1, (%rbx,%rdx,4)
	decl	%edx
	incl	%esi
	decq	%rcx
	jne	LBB0_32
	jmp	LBB0_2
LBB0_17:                                ##   in Loop: Header=BB0_3 Depth=1
	movddup	%xmm0, %xmm1                    ## xmm1 = xmm0[0,0]
	movq	-64(%rbp), %rdx                 ## 8-byte Reload
	leaq	(%rdx,%rcx,4), %rdx
	xorl	%esi, %esi
	movq	-72(%rbp), %rdi                 ## 8-byte Reload
	.p2align	4, 0x90
LBB0_18:                                ##   Parent Loop BB0_3 Depth=1
                                        ## =>  This Inner Loop Header: Depth=2
	movupd	-16(%rdi), %xmm2
	movupd	(%rdi), %xmm3
	movsd	-8(%rdx,%rsi,4), %xmm4          ## xmm4 = mem[0],zero
	movsd	(%rdx,%rsi,4), %xmm5            ## xmm5 = mem[0],zero
	shufps	$225, %xmm5, %xmm5              ## xmm5 = xmm5[1,0,2,3]
	shufps	$225, %xmm4, %xmm4              ## xmm4 = xmm4[1,0,2,3]
	cvtps2pd	%xmm5, %xmm5
	cvtps2pd	%xmm4, %xmm4
	mulpd	%xmm1, %xmm2
	addpd	%xmm5, %xmm2
	mulpd	%xmm1, %xmm3
	addpd	%xmm4, %xmm3
	cvtpd2ps	%xmm2, %xmm2
	cvtpd2ps	%xmm3, %xmm3
	shufps	$225, %xmm2, %xmm2              ## xmm2 = xmm2[1,0,2,3]
	movlps	%xmm2, (%rdx,%rsi,4)
	shufps	$225, %xmm3, %xmm3              ## xmm3 = xmm3[1,0,2,3]
	movlps	%xmm3, -8(%rdx,%rsi,4)
	addq	$32, %rdi
	addq	$-4, %rsi
	cmpq	%rsi, %r10
	jne	LBB0_18
## %bb.19:                              ##   in Loop: Header=BB0_3 Depth=1
	movq	-80(%rbp), %rsi                 ## 8-byte Reload
	movq	%rsi, %rdx
	cmpq	%r8, %rsi
	movq	-48(%rbp), %rdi                 ## 8-byte Reload
	je	LBB0_2
LBB0_20:                                ##   in Loop: Header=BB0_3 Depth=1
	subq	%rdx, %rcx
	leaq	(%rbx,%rcx,4), %rcx
	.p2align	4, 0x90
LBB0_21:                                ##   Parent Loop BB0_3 Depth=1
                                        ## =>  This Inner Loop Header: Depth=2
	movss	(%rcx), %xmm1                   ## xmm1 = mem[0],zero,zero,zero
	cvtss2sd	%xmm1, %xmm1
	movsd	(%r14,%rdx,8), %xmm2            ## xmm2 = mem[0],zero
	mulsd	%xmm0, %xmm2
	addsd	%xmm1, %xmm2
	xorps	%xmm1, %xmm1
	cvtsd2ss	%xmm2, %xmm1
	movss	%xmm1, (%rcx)
	incq	%rdx
	addq	$-4, %rcx
	cmpq	%rdx, %r8
	jne	LBB0_21
	jmp	LBB0_2
LBB0_22:                                ##   in Loop: Header=BB0_3 Depth=1
	leaq	-1(%rcx), %rdx
	movl	%r9d, %esi
	subl	%edx, %esi
	cmpl	%r9d, %esi
	jg	LBB0_30
## %bb.23:                              ##   in Loop: Header=BB0_3 Depth=1
	movq	%rdx, %rdi
	shrq	$32, %rdi
	jne	LBB0_29
## %bb.24:                              ##   in Loop: Header=BB0_3 Depth=1
	leal	1(%rax), %esi
	addl	%eax, %edx
	incl	%edx
	cmpl	%esi, %edx
	jl	LBB0_29
## %bb.25:                              ##   in Loop: Header=BB0_3 Depth=1
	movl	$0, %r13d
	testq	%rdi, %rdi
	movq	-48(%rbp), %rdi                 ## 8-byte Reload
	jne	LBB0_31
## %bb.26:                              ##   in Loop: Header=BB0_3 Depth=1
	movl	%ecx, %r13d
	andl	$-4, %r13d
	movddup	%xmm0, %xmm1                    ## xmm1 = xmm0[0,0]
	movl	%r9d, %edx
	movq	%r13, %rdi
	.p2align	4, 0x90
LBB0_27:                                ##   Parent Loop BB0_3 Depth=1
                                        ## =>  This Inner Loop Header: Depth=2
	movslq	%esi, %rsi
	movupd	(%r14,%rsi,8), %xmm2
	movupd	16(%r14,%rsi,8), %xmm3
	movslq	%edx, %rdx
	movsd	-12(%rbx,%rdx,4), %xmm4         ## xmm4 = mem[0],zero
	movsd	-4(%rbx,%rdx,4), %xmm5          ## xmm5 = mem[0],zero
	shufps	$225, %xmm5, %xmm5              ## xmm5 = xmm5[1,0,2,3]
	shufps	$225, %xmm4, %xmm4              ## xmm4 = xmm4[1,0,2,3]
	cvtps2pd	%xmm5, %xmm5
	cvtps2pd	%xmm4, %xmm4
	mulpd	%xmm1, %xmm2
	addpd	%xmm5, %xmm2
	mulpd	%xmm1, %xmm3
	addpd	%xmm4, %xmm3
	cvtpd2ps	%xmm2, %xmm2
	cvtpd2ps	%xmm3, %xmm3
	shufps	$225, %xmm2, %xmm2              ## xmm2 = xmm2[1,0,2,3]
	movlps	%xmm2, -4(%rbx,%rdx,4)
	shufps	$225, %xmm3, %xmm3              ## xmm3 = xmm3[1,0,2,3]
	movlps	%xmm3, -12(%rbx,%rdx,4)
	addl	$4, %esi
	addl	$-4, %edx
	addq	$-4, %rdi
	jne	LBB0_27
## %bb.28:                              ##   in Loop: Header=BB0_3 Depth=1
	cmpq	%rcx, %r13
	movq	-48(%rbp), %rdi                 ## 8-byte Reload
	je	LBB0_2
	jmp	LBB0_31
LBB0_29:                                ##   in Loop: Header=BB0_3 Depth=1
	xorl	%r13d, %r13d
	movq	-48(%rbp), %rdi                 ## 8-byte Reload
	jmp	LBB0_31
LBB0_33:
	addq	$72, %rsp
	popq	%rbx
	popq	%r12
	popq	%r13
	popq	%r14
	popq	%r15
	popq	%rbp
	retq
	.cfi_endproc
                                        ## -- End function
	.no_dead_strip	_twiddle
.subsections_via_symbols

	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	2                               ; -- Begin function twiddle
_twiddle:                               ; @twiddle
	.cfi_startproc
; %bb.0:
	stp	x26, x25, [sp, #-80]!           ; 16-byte Folded Spill
	.cfi_def_cfa_offset 80
	stp	x24, x23, [sp, #16]             ; 16-byte Folded Spill
	stp	x22, x21, [sp, #32]             ; 16-byte Folded Spill
	stp	x20, x19, [sp, #48]             ; 16-byte Folded Spill
	stp	x29, x30, [sp, #64]             ; 16-byte Folded Spill
	add	x29, sp, #64
	.cfi_def_cfa w29, 16
	.cfi_offset w30, -8
	.cfi_offset w29, -16
	.cfi_offset w19, -24
	.cfi_offset w20, -32
	.cfi_offset w21, -40
	.cfi_offset w22, -48
	.cfi_offset w23, -56
	.cfi_offset w24, -64
	.cfi_offset w25, -72
	.cfi_offset w26, -80
	mov	x8, x7
	mov	x24, x6
	mov	x19, x5
	mov	x20, x4
	mov	x21, x3
	mov	x25, x2
	mov	x22, x1
	mov	x23, x0
	ldr	x7, [x29, #16]
	sub	w9, w2, w4
	sdiv	w26, w9, w5
	mov	x3, x4
	mov	x4, x5
	mov	x5, x6
	mov	x6, x8
	bl	_pretwiddle
	tbnz	w26, #31, LBB0_28
; %bb.1:
	mov	x8, #0
	sub	w16, w20, #1
	sub	w9, w25, #1
	sxtw	x10, w24
	add	w11, w26, #1
	mov	w12, w20
	and	x13, x12, #0xfffffff8
	sub	x14, x22, #12
	add	x15, x21, #32
	b	LBB0_3
LBB0_2:                                 ;   in Loop: Header=BB0_3 Depth=1
	add	w16, w16, w19
	add	x8, x8, #1
	cmp	x8, x11
	b.eq	LBB0_28
LBB0_3:                                 ; =>This Loop Header: Depth=1
                                        ;     Child Loop BB0_21 Depth 2
                                        ;     Child Loop BB0_24 Depth 2
                                        ;     Child Loop BB0_11 Depth 2
                                        ;     Child Loop BB0_13 Depth 2
                                        ;     Child Loop BB0_26 Depth 2
                                        ;     Child Loop BB0_19 Depth 2
	add	x17, x8, x10
	ldr	s0, [x23, x17, lsl #2]
	and	w16, w16, w9
	cmp	w16, w20
	b.ge	LBB0_7
; %bb.4:                                ;   in Loop: Header=BB0_3 Depth=1
	tbnz	w16, #31, LBB0_14
; %bb.5:                                ;   in Loop: Header=BB0_3 Depth=1
	fcvt	d1, s0
	cmp	w16, #7
	b.hs	LBB0_10
; %bb.6:                                ;   in Loop: Header=BB0_3 Depth=1
	mov	x17, x16
	mov	x0, x21
	b	LBB0_13
LBB0_7:                                 ;   in Loop: Header=BB0_3 Depth=1
	cmp	w20, #1
	b.lt	LBB0_2
; %bb.8:                                ;   in Loop: Header=BB0_3 Depth=1
	fcvt	d0, s0
	mov	x17, x16
	sxtw	x17, w17
	cmp	w20, #8
	b.hs	LBB0_20
; %bb.9:                                ;   in Loop: Header=BB0_3 Depth=1
	mov	x1, #0
	b	LBB0_23
LBB0_10:                                ;   in Loop: Header=BB0_3 Depth=1
	add	x1, x16, #1
	and	x2, x1, #0x1fffffff8
	sub	x17, x16, x2
	add	x0, x21, x2, lsl #3
	dup.2d	v2, v1[0]
	add	x3, x14, x16, lsl #2
	mov	x4, x15
	mov	x5, x2
LBB0_11:                                ;   Parent Loop BB0_3 Depth=1
                                        ; =>  This Inner Loop Header: Depth=2
	ldp	q3, q4, [x4, #-32]
	ldp	q5, q6, [x4], #64
	ldp	d16, d7, [x3]
	rev64.2s	v7, v7
	rev64.2s	v16, v16
	ldp	d18, d17, [x3, #-16]
	rev64.2s	v17, v17
	rev64.2s	v18, v18
	fcvtl	v7.2d, v7.2s
	fcvtl	v16.2d, v16.2s
	fcvtl	v17.2d, v17.2s
	fcvtl	v18.2d, v18.2s
	fmla.2d	v7, v3, v2
	fmla.2d	v16, v4, v2
	fmla.2d	v17, v5, v2
	fmla.2d	v18, v6, v2
	fcvtn	v3.2s, v7.2d
	fcvtn	v4.2s, v16.2d
	fcvtn	v5.2s, v17.2d
	fcvtn	v6.2s, v18.2d
	rev64.2s	v3, v3
	rev64.2s	v4, v4
	stp	d4, d3, [x3]
	rev64.2s	v3, v5
	rev64.2s	v4, v6
	stp	d4, d3, [x3, #-16]
	sub	x3, x3, #32
	subs	x5, x5, #8
	b.ne	LBB0_11
; %bb.12:                               ;   in Loop: Header=BB0_3 Depth=1
	cmp	x1, x2
	b.eq	LBB0_14
LBB0_13:                                ;   Parent Loop BB0_3 Depth=1
                                        ; =>  This Inner Loop Header: Depth=2
	ldr	d2, [x0], #8
	lsl	x1, x17, #2
	ldr	s3, [x22, x1]
	fcvt	d3, s3
	fmadd	d2, d1, d2, d3
	fcvt	s2, d2
	str	s2, [x22, x1]
	sub	x17, x17, #1
	cmn	x17, #1
	b.ne	LBB0_13
LBB0_14:                                ;   in Loop: Header=BB0_3 Depth=1
	mvn	w17, w16
	add	w17, w17, w20
	cmp	w17, #1
	b.lt	LBB0_2
; %bb.15:                               ;   in Loop: Header=BB0_3 Depth=1
	fcvt	d0, s0
	cmp	w17, #8
	b.lo	LBB0_17
; %bb.16:                               ;   in Loop: Header=BB0_3 Depth=1
	sub	x0, x17, #1
	add	w1, w16, #1
	add	w2, w1, w0
	sub	w3, w9, w0
	cmp	w3, w9
	lsr	x0, x0, #32
	ccmp	x0, #0, #0, le
	ccmp	w2, w1, #8, eq
	ccmp	x0, #0, #0, ge
	b.eq	LBB0_25
LBB0_17:                                ;   in Loop: Header=BB0_3 Depth=1
	mov	x0, #0
LBB0_18:                                ;   in Loop: Header=BB0_3 Depth=1
	sub	w1, w9, w0
	sub	x17, x17, x0
	add	w0, w16, w0
	add	w0, w0, #1
LBB0_19:                                ;   Parent Loop BB0_3 Depth=1
                                        ; =>  This Inner Loop Header: Depth=2
	ldr	d1, [x21, w0, sxtw #3]
	sbfiz	x2, x1, #2, #32
	ldr	s2, [x22, x2]
	fcvt	d2, s2
	fmadd	d1, d0, d1, d2
	fcvt	s1, d1
	str	s1, [x22, x2]
	sub	w1, w1, #1
	add	w0, w0, #1
	subs	x17, x17, #1
	b.ne	LBB0_19
	b	LBB0_2
LBB0_20:                                ;   in Loop: Header=BB0_3 Depth=1
	dup.2d	v1, v0[0]
	add	x0, x14, x17, lsl #2
	mov	x1, x15
	mov	x2, x13
LBB0_21:                                ;   Parent Loop BB0_3 Depth=1
                                        ; =>  This Inner Loop Header: Depth=2
	ldp	q2, q3, [x1, #-32]
	ldp	q4, q5, [x1], #64
	ldp	d7, d6, [x0]
	rev64.2s	v6, v6
	rev64.2s	v7, v7
	ldp	d17, d16, [x0, #-16]
	rev64.2s	v16, v16
	rev64.2s	v17, v17
	fcvtl	v6.2d, v6.2s
	fcvtl	v7.2d, v7.2s
	fcvtl	v16.2d, v16.2s
	fcvtl	v17.2d, v17.2s
	fmla.2d	v6, v2, v1
	fmla.2d	v7, v3, v1
	fmla.2d	v16, v4, v1
	fmla.2d	v17, v5, v1
	fcvtn	v2.2s, v6.2d
	fcvtn	v3.2s, v7.2d
	fcvtn	v4.2s, v16.2d
	fcvtn	v5.2s, v17.2d
	rev64.2s	v2, v2
	rev64.2s	v3, v3
	stp	d3, d2, [x0]
	rev64.2s	v2, v4
	rev64.2s	v3, v5
	stp	d3, d2, [x0, #-16]
	sub	x0, x0, #32
	sub	x2, x2, #8
	cbnz	x2, LBB0_21
; %bb.22:                               ;   in Loop: Header=BB0_3 Depth=1
	mov	x1, x13
	cmp	x13, x12
	b.eq	LBB0_2
LBB0_23:                                ;   in Loop: Header=BB0_3 Depth=1
	sub	x17, x17, x1
	add	x17, x22, x17, lsl #2
	add	x0, x21, x1, lsl #3
	sub	x1, x12, x1
LBB0_24:                                ;   Parent Loop BB0_3 Depth=1
                                        ; =>  This Inner Loop Header: Depth=2
	ldr	d1, [x0], #8
	ldr	s2, [x17]
	fcvt	d2, s2
	fmadd	d1, d0, d1, d2
	fcvt	s1, d1
	str	s1, [x17], #-4
	subs	x1, x1, #1
	b.ne	LBB0_24
	b	LBB0_2
LBB0_25:                                ;   in Loop: Header=BB0_3 Depth=1
	and	x0, x17, #0xfffffff8
	dup.2d	v1, v0[0]
	mov	x2, x9
	mov	x3, x0
LBB0_26:                                ;   Parent Loop BB0_3 Depth=1
                                        ; =>  This Inner Loop Header: Depth=2
	add	x4, x21, w1, sxtw #3
	ldp	q2, q3, [x4]
	ldp	q4, q5, [x4, #32]
	add	x4, x22, w2, sxtw #2
	ldur	d6, [x4, #-4]
	rev64.2s	v6, v6
	ldur	d7, [x4, #-12]
	rev64.2s	v7, v7
	ldur	d16, [x4, #-20]
	rev64.2s	v16, v16
	ldur	d17, [x4, #-28]
	rev64.2s	v17, v17
	fcvtl	v6.2d, v6.2s
	fcvtl	v7.2d, v7.2s
	fcvtl	v16.2d, v16.2s
	fcvtl	v17.2d, v17.2s
	fmla.2d	v6, v2, v1
	fmla.2d	v7, v3, v1
	fmla.2d	v16, v4, v1
	fmla.2d	v17, v5, v1
	fcvtn	v2.2s, v6.2d
	fcvtn	v3.2s, v7.2d
	fcvtn	v4.2s, v16.2d
	fcvtn	v5.2s, v17.2d
	rev64.2s	v2, v2
	stur	d2, [x4, #-4]
	rev64.2s	v2, v3
	stur	d2, [x4, #-12]
	rev64.2s	v2, v4
	stur	d2, [x4, #-20]
	rev64.2s	v2, v5
	stur	d2, [x4, #-28]
	add	w1, w1, #8
	sub	w2, w2, #8
	sub	x3, x3, #8
	cbnz	x3, LBB0_26
; %bb.27:                               ;   in Loop: Header=BB0_3 Depth=1
	cmp	x0, x17
	b.eq	LBB0_2
	b	LBB0_18
LBB0_28:
	ldp	x29, x30, [sp, #64]             ; 16-byte Folded Reload
	ldp	x20, x19, [sp, #48]             ; 16-byte Folded Reload
	ldp	x22, x21, [sp, #32]             ; 16-byte Folded Reload
	ldp	x24, x23, [sp, #16]             ; 16-byte Folded Reload
	ldp	x26, x25, [sp], #80             ; 16-byte Folded Reload
	ret
	.cfi_endproc
                                        ; -- End function
	.no_dead_strip	_twiddle
.subsections_via_symbols
