	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.section	__TEXT,__literal8,8byte_literals
	.p2align	3                               ## -- Begin function init_gaussian_filter
LCPI0_0:
	.quad	0x3fe0000000000000              ## double 0.5
LCPI0_1:
	.quad	0xbff0000000000000              ## double -1
LCPI0_2:
	.quad	0x4008000000000000              ## double 3
LCPI0_3:
	.quad	0x3fd5555555555555              ## double 0.33333333333333331
LCPI0_4:
	.quad	0x3ff0000000000000              ## double 1
	.section	__TEXT,__text,regular,pure_instructions
	.p2align	4, 0x90
_init_gaussian_filter:                  ## @init_gaussian_filter
	.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	%rbx
	subq	$24, %rsp
	.cfi_offset %rbx, -40
	.cfi_offset %r14, -32
	.cfi_offset %r15, -24
	movq	%rdi, %r15
	movsd	(%rdi), %xmm2                   ## xmm2 = mem[0],zero
	movq	_M_PI@GOTPCREL(%rip), %rax
	movsd	(%rax), %xmm0                   ## xmm0 = mem[0],zero
	addsd	%xmm0, %xmm0
	xorpd	%xmm3, %xmm3
	ucomisd	%xmm3, %xmm0
	jb	LBB0_2
## %bb.1:
	sqrtsd	%xmm0, %xmm0
	jmp	LBB0_3
LBB0_2:
	movsd	%xmm2, -32(%rbp)                ## 8-byte Spill
	callq	_sqrt
	movsd	-32(%rbp), %xmm2                ## 8-byte Reload
                                        ## xmm2 = mem[0],zero
	xorpd	%xmm3, %xmm3
LBB0_3:
	movsd	(%r15), %xmm1                   ## xmm1 = mem[0],zero
	ucomisd	%xmm3, %xmm1
	jbe	LBB0_6
## %bb.4:
	mulsd	LCPI0_0(%rip), %xmm2
	movsd	LCPI0_1(%rip), %xmm1            ## xmm1 = mem[0],zero
	addsd	%xmm2, %xmm1
	divsd	LCPI0_2(%rip), %xmm1
	addsd	LCPI0_3(%rip), %xmm1
	cvttsd2si	%xmm2, %r14d
	mulsd	%xmm1, %xmm0
	movsd	LCPI0_4(%rip), %xmm2            ## xmm2 = mem[0],zero
	divsd	%xmm0, %xmm2
	movsd	%xmm2, -48(%rbp)                ## 8-byte Spill
	movapd	%xmm1, %xmm0
	addsd	%xmm1, %xmm0
	mulsd	%xmm1, %xmm0
	movsd	%xmm0, -40(%rbp)                ## 8-byte Spill
	negl	%r14d
	xorpd	%xmm3, %xmm3
	xorl	%ebx, %ebx
	.p2align	4, 0x90
LBB0_5:                                 ## =>This Inner Loop Header: Depth=1
	movsd	%xmm3, -32(%rbp)                ## 8-byte Spill
	leal	(%r14,%rbx), %eax
	imull	%eax, %eax
	negl	%eax
	xorps	%xmm0, %xmm0
	cvtsi2sd	%eax, %xmm0
	divsd	-40(%rbp), %xmm0                ## 8-byte Folded Reload
	cvttsd2si	%xmm0, %edi
	callq	_exp
	movsd	-32(%rbp), %xmm3                ## 8-byte Reload
                                        ## xmm3 = mem[0],zero
	mulsd	-48(%rbp), %xmm0                ## 8-byte Folded Reload
	movq	8(%r15), %rax
	movsd	%xmm0, (%rax,%rbx,8)
	incq	%rbx
	xorps	%xmm2, %xmm2
	cvtsi2sd	%ebx, %xmm2
	addsd	%xmm0, %xmm3
	movsd	(%r15), %xmm1                   ## xmm1 = mem[0],zero
	ucomisd	%xmm2, %xmm1
	ja	LBB0_5
LBB0_6:
	xorpd	%xmm0, %xmm0
	ucomisd	%xmm0, %xmm1
	movsd	LCPI0_4(%rip), %xmm2            ## xmm2 = mem[0],zero
	jbe	LBB0_9
## %bb.7:
	divsd	%xmm3, %xmm2
	movq	8(%r15), %rax
	xorl	%ecx, %ecx
	.p2align	4, 0x90
LBB0_8:                                 ## =>This Inner Loop Header: Depth=1
	movsd	(%rax,%rcx,8), %xmm0            ## xmm0 = mem[0],zero
	mulsd	%xmm2, %xmm0
	movsd	%xmm0, (%rax,%rcx,8)
	incq	%rcx
	xorps	%xmm0, %xmm0
	cvtsi2sd	%ecx, %xmm0
	movsd	(%r15), %xmm1                   ## xmm1 = mem[0],zero
	ucomisd	%xmm0, %xmm1
	ja	LBB0_8
LBB0_9:
	addq	$24, %rsp
	popq	%rbx
	popq	%r14
	popq	%r15
	popq	%rbp
	retq
	.cfi_endproc
                                        ## -- End function
	.comm	_M_PI,8,3                       ## @M_PI
	.no_dead_strip	_init_gaussian_filter
.subsections_via_symbols

	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	2                               ; -- Begin function init_gaussian_filter
_init_gaussian_filter:                  ; @init_gaussian_filter
	.cfi_startproc
; %bb.0:
	stp	d11, d10, [sp, #-80]!           ; 16-byte Folded Spill
	.cfi_def_cfa_offset 80
	stp	d9, d8, [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 b8, -56
	.cfi_offset b9, -64
	.cfi_offset b10, -72
	.cfi_offset b11, -80
	mov	x19, x0
	ldr	d10, [x0]
Lloh0:
	adrp	x8, _M_PI@GOTPAGE
Lloh1:
	ldr	x8, [x8, _M_PI@GOTPAGEOFF]
Lloh2:
	ldr	d0, [x8]
	fadd	d1, d0, d0
	fsqrt	d0, d1
	fcmp	d0, d0
	b.vs	LBB0_8
LBB0_1:
	fmov	d8, #1.00000000
	ldr	d1, [x19]
	movi	d9, #0000000000000000
	fcmp	d1, #0.0
	b.le	LBB0_4
; %bb.2:
	mov	x20, #0
	fmov	d1, #0.50000000
	fmul	d1, d10, d1
	fmov	d2, #-1.00000000
	fadd	d2, d1, d2
	fmov	d3, #3.00000000
	mov	x8, #6148914691236517205
	movk	x8, #16341, lsl #48
	fdiv	d2, d2, d3
	fmov	d3, x8
	fadd	d2, d2, d3
	fcvtzs	w8, d1
	fmul	d0, d0, d2
	fdiv	d10, d8, d0
	fadd	d0, d2, d2
	fmul	d11, d2, d0
	neg	w21, w8
	movi	d9, #0000000000000000
LBB0_3:                                 ; =>This Inner Loop Header: Depth=1
	add	w8, w21, w20
	mneg	w8, w8, w8
	scvtf	d0, w8
	fdiv	d0, d0, d11
	fcvtzs	w0, d0
	bl	_exp
	fmul	d0, d10, d0
	ldr	x8, [x19, #8]
	str	d0, [x8, x20, lsl #3]
	fadd	d9, d9, d0
	add	x20, x20, #1
	scvtf	d0, w20
	ldr	d1, [x19]
	fcmp	d1, d0
	b.gt	LBB0_3
LBB0_4:
	fcmp	d1, #0.0
	b.le	LBB0_7
; %bb.5:
	mov	x8, #0
	ldr	x9, [x19, #8]
	fdiv	d0, d8, d9
LBB0_6:                                 ; =>This Inner Loop Header: Depth=1
	lsl	x10, x8, #3
	ldr	d1, [x9, x10]
	fmul	d1, d0, d1
	str	d1, [x9, x10]
	add	x8, x8, #1
	scvtf	d1, w8
	ldr	d2, [x19]
	fcmp	d2, d1
	b.gt	LBB0_6
LBB0_7:
	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	d9, d8, [sp, #16]               ; 16-byte Folded Reload
	ldp	d11, d10, [sp], #80             ; 16-byte Folded Reload
	ret
LBB0_8:
	fmov	d0, d1
	bl	_sqrt
	b	LBB0_1
	.loh AdrpLdrGotLdr	Lloh0, Lloh1, Lloh2
	.cfi_endproc
                                        ; -- End function
	.comm	_M_PI,8,3                       ; @M_PI
	.no_dead_strip	_init_gaussian_filter
.subsections_via_symbols
