	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.section	__TEXT,__literal8,8byte_literals
	.p2align	3                               ## -- Begin function precalculate_fade_factors
LCPI0_0:
	.quad	0xbff0000000000000              ## double -1
LCPI0_5:
	.quad	0x3ff0000000000000              ## double 1
	.section	__TEXT,__literal16,16byte_literals
	.p2align	4
LCPI0_1:
	.long	0                               ## 0x0
	.long	1                               ## 0x1
	.space	4
	.space	4
LCPI0_2:
	.long	2                               ## 0x2
	.long	2                               ## 0x2
	.space	4
	.space	4
LCPI0_3:
	.quad	0x3ff0000000000000              ## double 1
	.quad	0x3ff0000000000000              ## double 1
LCPI0_4:
	.long	4                               ## 0x4
	.long	4                               ## 0x4
	.space	4
	.space	4
	.section	__TEXT,__text,regular,pure_instructions
	.p2align	4, 0x90
_precalculate_fade_factors:             ## @precalculate_fade_factors
	.cfi_startproc
## %bb.0:
	pushq	%rbp
	.cfi_def_cfa_offset 16
	.cfi_offset %rbp, -16
	movq	%rsp, %rbp
	.cfi_def_cfa_register %rbp
	testl	%esi, %esi
	jle	LBB0_11
## %bb.1:
	cvtsi2sd	%esi, %xmm1
	movsd	LCPI0_0(%rip), %xmm0            ## xmm0 = mem[0],zero
	divsd	%xmm1, %xmm0
	movq	(%rdi), %rax
	movq	8(%rdi), %rcx
	movl	%esi, %r8d
	xorl	%edi, %edi
	cmpl	$4, %esi
	jb	LBB0_6
## %bb.2:
	movq	%rcx, %rdx
	subq	%rax, %rdx
	cmpq	$32, %rdx
	jb	LBB0_6
## %bb.3:
	movl	%r8d, %edi
	andl	$-4, %edi
	movddup	%xmm0, %xmm1                    ## xmm1 = xmm0[0,0]
	leaq	(,%r8,8), %rsi
	andq	$-32, %rsi
	movdqa	LCPI0_1(%rip), %xmm2            ## xmm2 = <0,1,u,u>
	xorl	%edx, %edx
	movdqa	LCPI0_2(%rip), %xmm8            ## xmm8 = <2,2,u,u>
	movapd	LCPI0_3(%rip), %xmm3            ## xmm3 = [1.0E+0,1.0E+0]
	movdqa	LCPI0_4(%rip), %xmm5            ## xmm5 = <4,4,u,u>
	.p2align	4, 0x90
LBB0_4:                                 ## =>This Inner Loop Header: Depth=1
	movdqa	%xmm2, %xmm6
	paddd	%xmm8, %xmm6
	cvtdq2pd	%xmm2, %xmm7
	cvtdq2pd	%xmm6, %xmm6
	addpd	%xmm3, %xmm7
	addpd	%xmm3, %xmm6
	mulpd	%xmm1, %xmm7
	addpd	%xmm3, %xmm7
	mulpd	%xmm1, %xmm6
	addpd	%xmm3, %xmm6
	movupd	%xmm7, (%rax,%rdx)
	movupd	%xmm6, 16(%rax,%rdx)
	movapd	%xmm3, %xmm4
	subpd	%xmm7, %xmm4
	movapd	%xmm3, %xmm7
	subpd	%xmm6, %xmm7
	movupd	%xmm4, (%rcx,%rdx)
	movupd	%xmm7, 16(%rcx,%rdx)
	paddd	%xmm5, %xmm2
	addq	$32, %rdx
	cmpq	%rdx, %rsi
	jne	LBB0_4
## %bb.5:
	cmpq	%r8, %rdi
	je	LBB0_11
LBB0_6:
	movq	%rdi, %rdx
	notq	%rdx
	testb	$1, %r8b
	je	LBB0_8
## %bb.7:
	movl	%edi, %esi
	orl	$1, %esi
	xorps	%xmm1, %xmm1
	cvtsi2sd	%esi, %xmm1
	mulsd	%xmm0, %xmm1
	movsd	LCPI0_5(%rip), %xmm2            ## xmm2 = mem[0],zero
	addsd	%xmm2, %xmm1
	movsd	%xmm1, (%rax,%rdi,8)
	subsd	%xmm1, %xmm2
	movsd	%xmm2, (%rcx,%rdi,8)
	orq	$1, %rdi
LBB0_8:
	addq	%r8, %rdx
	je	LBB0_11
## %bb.9:
	movsd	LCPI0_5(%rip), %xmm1            ## xmm1 = mem[0],zero
	.p2align	4, 0x90
LBB0_10:                                ## =>This Inner Loop Header: Depth=1
	xorps	%xmm2, %xmm2
	cvtsi2sd	%edi, %xmm2
	addsd	%xmm1, %xmm2
	mulsd	%xmm0, %xmm2
	addsd	%xmm1, %xmm2
	movsd	%xmm2, (%rax,%rdi,8)
	movapd	%xmm1, %xmm3
	subsd	%xmm2, %xmm3
	movsd	%xmm3, (%rcx,%rdi,8)
	leal	1(%rdi), %edx
	xorps	%xmm2, %xmm2
	cvtsi2sd	%edx, %xmm2
	addsd	%xmm1, %xmm2
	mulsd	%xmm0, %xmm2
	addsd	%xmm1, %xmm2
	movsd	%xmm2, 8(%rax,%rdi,8)
	movapd	%xmm1, %xmm3
	subsd	%xmm2, %xmm3
	movsd	%xmm3, 8(%rcx,%rdi,8)
	addq	$2, %rdi
	cmpq	%r8, %rdi
	jne	LBB0_10
LBB0_11:
	popq	%rbp
	retq
	.cfi_endproc
                                        ## -- End function
	.no_dead_strip	_precalculate_fade_factors
.subsections_via_symbols

	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.section	__TEXT,__literal8,8byte_literals
	.p2align	3                               ; -- Begin function precalculate_fade_factors
lCPI0_0:
	.long	0                               ; 0x0
	.long	1                               ; 0x1
	.section	__TEXT,__text,regular,pure_instructions
	.p2align	2
_precalculate_fade_factors:             ; @precalculate_fade_factors
	.cfi_startproc
; %bb.0:
	cmp	w1, #1
	b.lt	LBB0_8
; %bb.1:
	mov	x8, #0
	scvtf	d0, w1
	fmov	d1, #-1.00000000
	fdiv	d0, d1, d0
	ldp	x9, x10, [x0]
	mov	w11, w1
	cmp	w1, #8
	b.lo	LBB0_6
; %bb.2:
	sub	x12, x10, x9
	cmp	x12, #64
	b.lo	LBB0_6
; %bb.3:
	and	x8, x11, #0xfffffff8
	dup.2d	v1, v0[0]
	add	x12, x10, #32
Lloh0:
	adrp	x13, lCPI0_0@PAGE
Lloh1:
	ldr	d2, [x13, lCPI0_0@PAGEOFF]
	add	x13, x9, #32
	movi.2s	v3, #2
	movi.2s	v4, #4
	movi.2s	v5, #6
	fmov.2d	v6, #1.00000000
	movi.2s	v7, #8
	mov	x14, x8
LBB0_4:                                 ; =>This Inner Loop Header: Depth=1
	add.2s	v16, v2, v3
	add.2s	v17, v2, v4
	add.2s	v18, v2, v5
	sshll.2d	v19, v2, #0
	scvtf.2d	v19, v19
	sshll.2d	v16, v16, #0
	scvtf.2d	v16, v16
	sshll.2d	v17, v17, #0
	scvtf.2d	v17, v17
	sshll.2d	v18, v18, #0
	scvtf.2d	v18, v18
	fadd.2d	v19, v19, v6
	fadd.2d	v16, v16, v6
	fadd.2d	v17, v17, v6
	fadd.2d	v18, v18, v6
	mov.16b	v20, v6
	fmla.2d	v20, v19, v1
	mov.16b	v19, v6
	fmla.2d	v19, v16, v1
	mov.16b	v16, v6
	fmla.2d	v16, v17, v1
	mov.16b	v17, v6
	fmla.2d	v17, v18, v1
	stp	q20, q19, [x13, #-32]
	stp	q16, q17, [x13], #64
	fsub.2d	v18, v6, v20
	fsub.2d	v19, v6, v19
	fsub.2d	v16, v6, v16
	fsub.2d	v17, v6, v17
	stp	q18, q19, [x12, #-32]
	stp	q16, q17, [x12], #64
	add.2s	v2, v2, v7
	subs	x14, x14, #8
	b.ne	LBB0_4
; %bb.5:
	cmp	x8, x11
	b.eq	LBB0_8
LBB0_6:
	fmov	d1, #1.00000000
LBB0_7:                                 ; =>This Inner Loop Header: Depth=1
	scvtf	d2, w8
	fadd	d2, d2, d1
	fmadd	d2, d0, d2, d1
	lsl	x12, x8, #3
	str	d2, [x9, x12]
	fsub	d2, d1, d2
	str	d2, [x10, x12]
	add	x8, x8, #1
	cmp	x11, x8
	b.ne	LBB0_7
LBB0_8:
	ret
	.loh AdrpLdr	Lloh0, Lloh1
	.cfi_endproc
                                        ; -- End function
	.no_dead_strip	_precalculate_fade_factors
.subsections_via_symbols
