	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.section	__TEXT,__literal8,8byte_literals
	.p2align	3                               ## -- Begin function preprocess
LCPI0_0:
	.quad	0x3fe0000000000000              ## double 0.5
LCPI0_1:
	.quad	0xc000000000000000              ## double -2
LCPI0_2:
	.quad	0x3ff0000000000000              ## double 1
	.section	__TEXT,__literal16,16byte_literals
	.p2align	4
LCPI0_3:
	.quad	0x8000000000000000              ## double -0
	.quad	0x8000000000000000              ## double -0
LCPI0_4:
	.quad	0x3fe0000000000000              ## double 0.5
	.quad	0x3fe0000000000000              ## double 0.5
	.section	__TEXT,__text,regular,pure_instructions
	.p2align	4, 0x90
_preprocess:                            ## @preprocess
	.cfi_startproc
## %bb.0:
	pushq	%rbp
	.cfi_def_cfa_offset 16
	.cfi_offset %rbp, -16
	movq	%rsp, %rbp
	.cfi_def_cfa_register %rbp
	pushq	%r14
	pushq	%rbx
	subq	$32, %rsp
	.cfi_offset %rbx, -32
	.cfi_offset %r14, -24
	movq	%rdi, %rbx
	cmpl	$8, %esi
	jl	LBB0_3
## %bb.1:
	movl	%esi, %r14d
	movq	_M_PI@GOTPCREL(%rip), %rax
	movsd	(%rax), %xmm0                   ## xmm0 = mem[0],zero
	addsd	%xmm0, %xmm0
	cvtsi2sd	%esi, %xmm1
	divsd	%xmm1, %xmm0
	movsd	%xmm0, -24(%rbp)                ## 8-byte Spill
	callq	_sin
	movapd	%xmm0, -48(%rbp)                ## 16-byte Spill
	movsd	-24(%rbp), %xmm0                ## 8-byte Reload
                                        ## xmm0 = mem[0],zero
	mulsd	LCPI0_0(%rip), %xmm0
	callq	_sin
	movapd	-48(%rbp), %xmm4                ## 16-byte Reload
	movsd	LCPI0_1(%rip), %xmm1            ## xmm1 = mem[0],zero
	mulsd	%xmm0, %xmm1
	mulsd	%xmm0, %xmm1
	movl	%r14d, %eax
	shrl	$2, %eax
	shrl	%r14d
	movddup	%xmm1, %xmm8                    ## xmm8 = xmm1[0,0]
	addsd	LCPI0_2(%rip), %xmm1
	movddup	%xmm4, %xmm9                    ## xmm9 = xmm4[0,0]
	unpcklpd	%xmm1, %xmm4                    ## xmm4 = xmm4[0],xmm1[0]
	shlq	$4, %r14
	leaq	(%r14,%rbx), %rcx
	addq	$-16, %rcx
	shlq	$4, %rax
	movl	$16, %edx
	movapd	LCPI0_3(%rip), %xmm11           ## xmm11 = [-0.0E+0,-0.0E+0]
	movapd	LCPI0_4(%rip), %xmm10           ## xmm10 = [5.0E-1,5.0E-1]
	.p2align	4, 0x90
LBB0_2:                                 ## =>This Inner Loop Header: Depth=1
	movapd	%xmm4, %xmm12
	xorpd	%xmm11, %xmm12
	movapd	%xmm4, %xmm7
	unpckhpd	%xmm4, %xmm7                    ## xmm7 = xmm7[1],xmm4[1]
	movapd	%xmm7, %xmm5
	xorpd	%xmm11, %xmm5
	movupd	(%rbx,%rdx), %xmm6
	movupd	(%rcx), %xmm1
	movapd	%xmm1, %xmm0
	subpd	%xmm6, %xmm0
	movapd	%xmm1, %xmm3
	addpd	%xmm6, %xmm3
	blendpd	$2, %xmm3, %xmm0                ## xmm0 = xmm0[0],xmm3[1]
	mulpd	%xmm10, %xmm0
	subpd	%xmm1, %xmm6
	movapd	%xmm4, %xmm1
	unpcklpd	%xmm12, %xmm1                   ## xmm1 = xmm1[0],xmm12[0]
	mulpd	%xmm0, %xmm1
	movddup	%xmm4, %xmm2                    ## xmm2 = xmm4[0,0]
	mulpd	%xmm0, %xmm2
	shufpd	$1, %xmm0, %xmm0                ## xmm0 = xmm0[1,0]
	blendpd	$1, %xmm3, %xmm6                ## xmm6 = xmm3[0],xmm6[1]
	mulpd	%xmm10, %xmm6
	mulpd	%xmm0, %xmm7
	addpd	%xmm6, %xmm7
	addpd	%xmm7, %xmm1
	movupd	%xmm1, (%rbx,%rdx)
	movapd	%xmm6, %xmm1
	unpckhpd	%xmm6, %xmm1                    ## xmm1 = xmm1[1],xmm6[1]
	xorpd	%xmm11, %xmm1
	blendpd	$2, %xmm4, %xmm5                ## xmm5 = xmm5[0],xmm4[1]
	unpcklpd	%xmm1, %xmm6                    ## xmm6 = xmm6[0],xmm1[0]
	mulpd	%xmm0, %xmm5
	addpd	%xmm6, %xmm5
	subpd	%xmm2, %xmm5
	movupd	%xmm5, (%rcx)
	movapd	%xmm4, %xmm0
	shufpd	$1, %xmm12, %xmm0               ## xmm0 = xmm0[1],xmm12[0]
	mulpd	%xmm9, %xmm0
	movapd	%xmm4, %xmm1
	mulpd	%xmm8, %xmm1
	addpd	%xmm0, %xmm1
	addpd	%xmm1, %xmm4
	addq	$-16, %rcx
	addq	$16, %rdx
	cmpq	%rdx, %rax
	jne	LBB0_2
LBB0_3:
	movsd	(%rbx), %xmm0                   ## xmm0 = mem[0],zero
	movsd	8(%rbx), %xmm1                  ## xmm1 = mem[0],zero
	movapd	%xmm0, %xmm2
	addsd	%xmm1, %xmm2
	movsd	%xmm2, (%rbx)
	subsd	%xmm1, %xmm0
	movsd	%xmm0, 8(%rbx)
	addq	$32, %rsp
	popq	%rbx
	popq	%r14
	popq	%rbp
	retq
	.cfi_endproc
                                        ## -- End function
	.comm	_M_PI,8,3                       ## @M_PI
	.no_dead_strip	_preprocess
.subsections_via_symbols

	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	2                               ; -- Begin function preprocess
_preprocess:                            ; @preprocess
	.cfi_startproc
; %bb.0:
	stp	d11, d10, [sp, #-64]!           ; 16-byte Folded Spill
	.cfi_def_cfa_offset 64
	stp	d9, d8, [sp, #16]               ; 16-byte Folded Spill
	stp	x20, x19, [sp, #32]             ; 16-byte Folded Spill
	stp	x29, x30, [sp, #48]             ; 16-byte Folded Spill
	add	x29, sp, #48
	.cfi_def_cfa w29, 16
	.cfi_offset w30, -8
	.cfi_offset w29, -16
	.cfi_offset w19, -24
	.cfi_offset w20, -32
	.cfi_offset b8, -40
	.cfi_offset b9, -48
	.cfi_offset b10, -56
	.cfi_offset b11, -64
	mov	x20, x1
	mov	x19, x0
Lloh0:
	adrp	x8, _M_PI@GOTPAGE
Lloh1:
	ldr	x8, [x8, _M_PI@GOTPAGEOFF]
Lloh2:
	ldr	d0, [x8]
	fadd	d0, d0, d0
	scvtf	d1, w1
	fdiv	d9, d0, d1
	fmov	d10, #0.50000000
	fmul	d0, d9, d10
	bl	_sin
	fmov	d8, d0
	fmov	d0, d9
	bl	_sin
	cmp	w20, #8
	b.lt	LBB0_3
; %bb.1:
	fmov	d1, #-2.00000000
	fmul	d1, d8, d1
	fmul	d1, d8, d1
	lsr	w8, w20, #2
	lsr	w9, w20, #1
	fmov	d2, #1.00000000
	fadd	d3, d1, d2
	sub	x8, x8, #1
	add	x9, x19, w9, uxtw #4
	sub	x9, x9, #8
	add	x10, x19, #24
	fmov	d2, d0
LBB0_2:                                 ; =>This Inner Loop Header: Depth=1
	ldp	d4, d7, [x10, #-8]
	ldp	d5, d16, [x9, #-8]
	fadd	d6, d4, d5
	fmul	d6, d6, d10
	fsub	d17, d7, d16
	fmul	d17, d17, d10
	fadd	d7, d7, d16
	fmul	d7, d7, d10
	fsub	d4, d5, d4
	fmul	d4, d4, d10
	fmadd	d5, d3, d7, d6
	fmadd	d5, d2, d4, d5
	stur	d5, [x10, #-8]
	fmadd	d5, d3, d4, d17
	fneg	d16, d2
	fmsub	d5, d2, d7, d5
	str	d5, [x10], #16
	fmsub	d5, d3, d7, d6
	fmsub	d5, d2, d4, d5
	fnmsub	d4, d3, d4, d17
	fmsub	d4, d2, d7, d4
	stp	d5, d4, [x9, #-8]
	fmul	d4, d0, d16
	fmadd	d4, d3, d1, d4
	fmul	d5, d0, d3
	fadd	d3, d3, d4
	fmadd	d4, d2, d1, d5
	fadd	d2, d2, d4
	sub	x9, x9, #16
	sub	x8, x8, #1
	cbnz	x8, LBB0_2
LBB0_3:
	ldp	d0, d1, [x19]
	fadd	d2, d0, d1
	fsub	d0, d0, d1
	stp	d2, d0, [x19]
	ldp	x29, x30, [sp, #48]             ; 16-byte Folded Reload
	ldp	x20, x19, [sp, #32]             ; 16-byte Folded Reload
	ldp	d9, d8, [sp, #16]               ; 16-byte Folded Reload
	ldp	d11, d10, [sp], #64             ; 16-byte Folded Reload
	ret
	.loh AdrpLdrGotLdr	Lloh0, Lloh1, Lloh2
	.cfi_endproc
                                        ; -- End function
	.comm	_M_PI,8,3                       ; @M_PI
	.no_dead_strip	_preprocess
.subsections_via_symbols
