	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.section	__TEXT,__literal8,8byte_literals
	.p2align	3                               ## -- Begin function filter_channel
LCPI0_0:
	.quad	0xbff0000000000000              ## double -1
LCPI0_1:
	.quad	0x3ff0000000000000              ## double 1
LCPI0_2:
	.quad	0x3f5999999999999a              ## double 0.0015625000000000001
LCPI0_3:
	.quad	0x3fe0000000000000              ## double 0.5
	.section	__TEXT,__literal16,16byte_literals
	.p2align	4
LCPI0_4:
	.long	0x4b800000                      ## float 16777216
	.long	0x4b800000                      ## float 16777216
	.space	4
	.space	4
LCPI0_6:
	.long	0x33800000                      ## float 5.96046448E-8
	.long	0x33800000                      ## float 5.96046448E-8
	.space	4
	.space	4
	.section	__TEXT,__literal4,4byte_literals
	.p2align	2
LCPI0_5:
	.long	0x4b800000                      ## float 16777216
LCPI0_7:
	.long	0x33800000                      ## float 5.96046448E-8
	.section	__TEXT,__text,regular,pure_instructions
	.p2align	4, 0x90
_filter_channel:                        ## @filter_channel
	.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	$40, %rsp
	.cfi_offset %rbx, -56
	.cfi_offset %r12, -48
	.cfi_offset %r13, -40
	.cfi_offset %r14, -32
	.cfi_offset %r15, -24
	movl	%edx, %ebx
	movq	(%rsi), %rax
	movq	%rax, -64(%rbp)                 ## 8-byte Spill
	movl	(%rax), %esi
	movl	%esi, %eax
	imull	%edx, %eax
	cltd
	idivl	%ecx
	movl	%eax, %r8d
	incl	%ebx
	imull	%esi, %ebx
	movl	%ebx, %eax
	cltd
	idivl	%ecx
	movl	%eax, -52(%rbp)                 ## 4-byte Spill
	cmpl	%eax, %r8d
	jge	LBB0_32
## %bb.1:
	movq	(%rdi), %r10
	movslq	%r8d, %rcx
	movss	LCPI0_5(%rip), %xmm4            ## xmm4 = mem[0],zero,zero,zero
	movaps	LCPI0_4(%rip), %xmm5            ## xmm5 = <1.6777216E+7,1.6777216E+7,u,u>
	movq	%r10, -48(%rbp)                 ## 8-byte Spill
	jmp	LBB0_2
	.p2align	4, 0x90
LBB0_31:                                ##   in Loop: Header=BB0_2 Depth=1
	movq	-80(%rbp), %rcx                 ## 8-byte Reload
	incq	%rcx
	cmpl	%ecx, -52(%rbp)                 ## 4-byte Folded Reload
	je	LBB0_32
LBB0_2:                                 ## =>This Loop Header: Depth=1
                                        ##     Child Loop BB0_13 Depth 2
                                        ##     Child Loop BB0_19 Depth 2
                                        ##     Child Loop BB0_25 Depth 2
                                        ##     Child Loop BB0_34 Depth 2
                                        ##     Child Loop BB0_30 Depth 2
	movq	32(%r10), %r14
	movq	%rcx, %r13
	shlq	$6, %r13
	movq	-64(%rbp), %rax                 ## 8-byte Reload
	movq	8(%rax), %rax
	movq	%rcx, -80(%rbp)                 ## 8-byte Spill
	movq	(%rax,%rcx,8), %rax
	movq	(%r14,%r13), %r12
	cmpl	$0, 24(%r10)
	je	LBB0_6
## %bb.3:                               ##   in Loop: Header=BB0_2 Depth=1
	movl	(%r10), %ecx
	andl	$511, %ecx                      ## imm = 0x1FF
	movq	56(%r14,%r13), %rdx
	cmpq	$0, (%rdx,%rcx,8)
	movsd	8(%r14,%r13), %xmm0             ## xmm0 = mem[0],zero
	je	LBB0_5
## %bb.4:                               ##   in Loop: Header=BB0_2 Depth=1
	leaq	(%r14,%r13), %rsi
	addq	$8, %rsi
	addsd	LCPI0_0(%rip), %xmm0
	movsd	%xmm0, (%rsi)
LBB0_5:                                 ##   in Loop: Header=BB0_2 Depth=1
	movq	$0, (%rdx,%rcx,8)
	movsd	24(%r14,%r13), %xmm1            ## xmm1 = mem[0],zero
	movsd	LCPI0_1(%rip), %xmm2            ## xmm2 = mem[0],zero
	subsd	%xmm1, %xmm2
	mulsd	16(%r14,%r13), %xmm2
	mulsd	LCPI0_2(%rip), %xmm0
	addsd	LCPI0_3(%rip), %xmm0
	mulsd	%xmm1, %xmm0
	addsd	%xmm2, %xmm0
	movsd	%xmm0, 16(%r14,%r13)
LBB0_6:                                 ##   in Loop: Header=BB0_2 Depth=1
	movslq	4(%r10), %r9
	testq	%r9, %r9
	jle	LBB0_20
## %bb.7:                               ##   in Loop: Header=BB0_2 Depth=1
	movl	%r9d, %ebx
	movq	8(%r10), %rsi
	movq	32(%r14,%r13), %r8
	cmpl	$1, %ebx
	jne	LBB0_9
## %bb.8:                               ##   in Loop: Header=BB0_2 Depth=1
	xorl	%edi, %edi
	jmp	LBB0_15
	.p2align	4, 0x90
LBB0_9:                                 ##   in Loop: Header=BB0_2 Depth=1
	movq	%rbx, %rcx
	shlq	$4, %rcx
	leaq	(%r8,%rcx), %rdx
	addq	$-12, %rdx
	leaq	(%rsi,%rbx,4), %rcx
	leaq	(%rax,%rbx,4), %rdi
	cmpq	%rcx, %r8
	setb	%r10b
	cmpq	%rsi, %rdx
	seta	%r11b
	cmpq	%rdi, %r8
	setb	%cl
	cmpq	%rax, %rdx
	seta	%dl
	testb	%r11b, %r10b
	jne	LBB0_10
## %bb.11:                              ##   in Loop: Header=BB0_2 Depth=1
	movl	$0, %edi
	andb	%dl, %cl
	movq	-48(%rbp), %r10                 ## 8-byte Reload
	jne	LBB0_15
## %bb.12:                              ##   in Loop: Header=BB0_2 Depth=1
	movl	%ebx, %edi
	andl	$-2, %edi
	leaq	24(%r8), %rdx
	xorl	%ecx, %ecx
	.p2align	4, 0x90
LBB0_13:                                ##   Parent Loop BB0_2 Depth=1
                                        ## =>  This Inner Loop Header: Depth=2
	movsd	(%rsi,%rcx,4), %xmm0            ## xmm0 = mem[0],zero
	movsd	(%rax,%rcx,4), %xmm1            ## xmm1 = mem[0],zero
	mulps	%xmm0, %xmm1
	mulps	%xmm5, %xmm1
	movss	%xmm1, -24(%rdx)
	extractps	$1, %xmm1, -8(%rdx)
	movq	$0, -16(%rdx)
	movq	$0, (%rdx)
	addq	$2, %rcx
	addq	$32, %rdx
	cmpq	%rcx, %rdi
	jne	LBB0_13
## %bb.14:                              ##   in Loop: Header=BB0_2 Depth=1
	cmpq	%rbx, %rdi
	jne	LBB0_15
	jmp	LBB0_20
LBB0_10:                                ##   in Loop: Header=BB0_2 Depth=1
	xorl	%edi, %edi
	movq	-48(%rbp), %r10                 ## 8-byte Reload
	.p2align	4, 0x90
LBB0_15:                                ##   in Loop: Header=BB0_2 Depth=1
	movq	%rdi, %rdx
	testb	$1, %bl
	je	LBB0_17
## %bb.16:                              ##   in Loop: Header=BB0_2 Depth=1
	movss	(%rsi,%rdi,4), %xmm0            ## xmm0 = mem[0],zero,zero,zero
	mulss	(%rax,%rdi,4), %xmm0
	mulss	%xmm4, %xmm0
	movq	%rdi, %rcx
	shlq	$4, %rcx
	movss	%xmm0, (%r8,%rcx)
	movq	$0, 8(%r8,%rcx)
	movq	%rdi, %rdx
	orq	$1, %rdx
LBB0_17:                                ##   in Loop: Header=BB0_2 Depth=1
	notq	%rdi
	addq	%rbx, %rdi
	je	LBB0_20
## %bb.18:                              ##   in Loop: Header=BB0_2 Depth=1
	movq	%rdx, %rcx
	shlq	$4, %rcx
	leaq	(%r8,%rcx), %rdi
	addq	$24, %rdi
	.p2align	4, 0x90
LBB0_19:                                ##   Parent Loop BB0_2 Depth=1
                                        ## =>  This Inner Loop Header: Depth=2
	movss	(%rsi,%rdx,4), %xmm0            ## xmm0 = mem[0],zero,zero,zero
	mulss	(%rax,%rdx,4), %xmm0
	mulss	%xmm4, %xmm0
	movss	%xmm0, -24(%rdi)
	movq	$0, -16(%rdi)
	movss	4(%rsi,%rdx,4), %xmm0           ## xmm0 = mem[0],zero,zero,zero
	mulss	4(%rax,%rdx,4), %xmm0
	mulss	%xmm4, %xmm0
	movss	%xmm0, -8(%rdi)
	movq	$0, (%rdi)
	addq	$2, %rdx
	addq	$32, %rdi
	cmpq	%rdx, %rbx
	jne	LBB0_19
LBB0_20:                                ##   in Loop: Header=BB0_2 Depth=1
	leaq	(%r14,%r13), %rax
	movq	%rax, -72(%rbp)                 ## 8-byte Spill
	movslq	16(%r10), %rax
	movq	32(%r14,%r13), %rsi
	cmpl	%eax, %r9d
	jge	LBB0_26
## %bb.21:                              ##   in Loop: Header=BB0_2 Depth=1
	movl	%eax, %edx
	subl	%r9d, %edx
	movq	%r9, %rcx
	testb	$1, %dl
	je	LBB0_23
## %bb.22:                              ##   in Loop: Header=BB0_2 Depth=1
	movq	%r9, %rcx
	shlq	$4, %rcx
	movl	$0, (%rsi,%rcx)
	movq	$0, 8(%rsi,%rcx)
	leaq	1(%r9), %rcx
LBB0_23:                                ##   in Loop: Header=BB0_2 Depth=1
	notq	%r9
	addq	%rax, %r9
	je	LBB0_26
## %bb.24:                              ##   in Loop: Header=BB0_2 Depth=1
	subq	%rcx, %rax
	shlq	$4, %rcx
	addq	%rsi, %rcx
	addq	$24, %rcx
	.p2align	4, 0x90
LBB0_25:                                ##   Parent Loop BB0_2 Depth=1
                                        ## =>  This Inner Loop Header: Depth=2
	movl	$0, -24(%rcx)
	movq	$0, -16(%rcx)
	movl	$0, -8(%rcx)
	movq	$0, (%rcx)
	addq	$32, %rcx
	addq	$-2, %rax
	jne	LBB0_25
LBB0_26:                                ##   in Loop: Header=BB0_2 Depth=1
	leaq	(%r14,%r13), %r15
	addq	$32, %r15
	movl	52(%r14,%r13), %edi
	callq	_av_fft_permute
	movl	52(%r14,%r13), %edi
	movq	(%r15), %rsi
	callq	_av_fft_calc
	movq	(%r15), %rdi
	movq	-48(%rbp), %rbx                 ## 8-byte Reload
	movl	20(%rbx), %esi
	callq	_preprocess
	movq	(%r15), %rdx
	movl	44(%r14,%r13), %r8d
	movl	48(%r14,%r13), %ecx
	movl	24(%rbx), %r9d
	movq	%rbx, %rdi
	movq	-72(%rbp), %rsi                 ## 8-byte Reload
	callq	_process_frame
	movq	(%r15), %rdi
	movl	20(%rbx), %esi
	callq	_postprocess
	movl	40(%r14,%r13), %edi
	movq	(%r15), %rsi
	callq	_av_fft_permute
	movl	40(%r14,%r13), %edi
	movq	(%r15), %rsi
	callq	_av_fft_calc
	movss	LCPI0_5(%rip), %xmm4            ## xmm4 = mem[0],zero,zero,zero
	movq	%rbx, %r10
	movl	4(%rbx), %eax
	testl	%eax, %eax
	movaps	LCPI0_4(%rip), %xmm5            ## xmm5 = <1.6777216E+7,1.6777216E+7,u,u>
	movss	LCPI0_7(%rip), %xmm6            ## xmm6 = mem[0],zero,zero,zero
	movaps	LCPI0_6(%rip), %xmm7            ## xmm7 = <5.96046448E-8,5.96046448E-8,u,u>
	jle	LBB0_31
## %bb.27:                              ##   in Loop: Header=BB0_2 Depth=1
	movq	8(%r10), %rcx
	movq	(%r15), %rdx
	cmpl	$4, %eax
	ja	LBB0_33
## %bb.28:                              ##   in Loop: Header=BB0_2 Depth=1
	xorl	%esi, %esi
	jmp	LBB0_29
	.p2align	4, 0x90
LBB0_33:                                ##   in Loop: Header=BB0_2 Depth=1
	movl	%eax, %edi
	andl	$3, %edi
	testq	%rdi, %rdi
	movl	$4, %esi
	cmoveq	%rsi, %rdi
	movq	%rax, %rsi
	subq	%rdi, %rsi
	leaq	48(%rdx), %rdi
	xorl	%ebx, %ebx
	.p2align	4, 0x90
LBB0_34:                                ##   Parent Loop BB0_2 Depth=1
                                        ## =>  This Inner Loop Header: Depth=2
	movsd	(%rcx,%rbx,4), %xmm0            ## xmm0 = mem[0],zero
	movsd	8(%rcx,%rbx,4), %xmm1           ## xmm1 = mem[0],zero
	movss	-48(%rdi), %xmm2                ## xmm2 = mem[0],zero,zero,zero
	insertps	$16, -32(%rdi), %xmm2           ## xmm2 = xmm2[0],mem[0],xmm2[2,3]
	movss	-16(%rdi), %xmm3                ## xmm3 = mem[0],zero,zero,zero
	mulps	%xmm0, %xmm2
	insertps	$16, (%rdi), %xmm3              ## xmm3 = xmm3[0],mem[0],xmm3[2,3]
	mulps	%xmm1, %xmm3
	mulps	%xmm7, %xmm2
	cvtps2pd	%xmm2, %xmm0
	mulps	%xmm7, %xmm3
	cvtps2pd	%xmm3, %xmm1
	movupd	(%r12,%rbx,8), %xmm2
	addpd	%xmm0, %xmm2
	movupd	16(%r12,%rbx,8), %xmm0
	addpd	%xmm1, %xmm0
	movupd	%xmm2, (%r12,%rbx,8)
	movupd	%xmm0, 16(%r12,%rbx,8)
	addq	$4, %rbx
	addq	$64, %rdi
	cmpq	%rbx, %rsi
	jne	LBB0_34
LBB0_29:                                ##   in Loop: Header=BB0_2 Depth=1
	movq	%rsi, %rdi
	shlq	$4, %rdi
	addq	%rdi, %rdx
	.p2align	4, 0x90
LBB0_30:                                ##   Parent Loop BB0_2 Depth=1
                                        ## =>  This Inner Loop Header: Depth=2
	movss	(%rcx,%rsi,4), %xmm0            ## xmm0 = mem[0],zero,zero,zero
	mulss	(%rdx), %xmm0
	mulss	%xmm6, %xmm0
	cvtss2sd	%xmm0, %xmm0
	addsd	(%r12,%rsi,8), %xmm0
	movsd	%xmm0, (%r12,%rsi,8)
	incq	%rsi
	addq	$16, %rdx
	cmpq	%rsi, %rax
	jne	LBB0_30
	jmp	LBB0_31
LBB0_32:
	xorl	%eax, %eax
	addq	$40, %rsp
	popq	%rbx
	popq	%r12
	popq	%r13
	popq	%r14
	popq	%r15
	popq	%rbp
	retq
	.cfi_endproc
                                        ## -- End function
	.no_dead_strip	_filter_channel
.subsections_via_symbols

	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	2                               ; -- Begin function filter_channel
_filter_channel:                        ; @filter_channel
	.cfi_startproc
; %bb.0:
	stp	d13, d12, [sp, #-144]!          ; 16-byte Folded Spill
	.cfi_def_cfa_offset 144
	stp	d11, d10, [sp, #16]             ; 16-byte Folded Spill
	stp	d9, d8, [sp, #32]               ; 16-byte Folded Spill
	stp	x28, x27, [sp, #48]             ; 16-byte Folded Spill
	stp	x26, x25, [sp, #64]             ; 16-byte Folded Spill
	stp	x24, x23, [sp, #80]             ; 16-byte Folded Spill
	stp	x22, x21, [sp, #96]             ; 16-byte Folded Spill
	stp	x20, x19, [sp, #112]            ; 16-byte Folded Spill
	stp	x29, x30, [sp, #128]            ; 16-byte Folded Spill
	add	x29, sp, #128
	.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
	.cfi_offset w27, -88
	.cfi_offset w28, -96
	.cfi_offset b8, -104
	.cfi_offset b9, -112
	.cfi_offset b10, -120
	.cfi_offset b11, -128
	.cfi_offset b12, -136
	.cfi_offset b13, -144
	ldr	x21, [x1]
	ldr	w9, [x21]
	mul	w10, w9, w2
	sdiv	w8, w10, w3
	add	w9, w9, w10
	sdiv	w22, w9, w3
	cmp	w8, w22
	b.ge	LBB0_31
; %bb.1:
	ldr	x19, [x0]
	sxtw	x23, w8
	mov	w24, #1266679808
	dup.2s	v8, w24
	mov	w25, #864026624
	dup.2s	v9, w25
	fmov	d10, #1.00000000
	fmov	d11, #0.50000000
	fmov	d12, #-1.00000000
	b	LBB0_3
LBB0_2:                                 ;   in Loop: Header=BB0_3 Depth=1
	add	x23, x23, #1
	cmp	w22, w23
	b.eq	LBB0_31
LBB0_3:                                 ; =>This Loop Header: Depth=1
                                        ;     Child Loop BB0_13 Depth 2
                                        ;     Child Loop BB0_16 Depth 2
                                        ;     Child Loop BB0_20 Depth 2
                                        ;     Child Loop BB0_23 Depth 2
                                        ;     Child Loop BB0_28 Depth 2
                                        ;     Child Loop BB0_30 Depth 2
	ldr	x8, [x19, #32]
	add	x20, x8, x23, lsl #6
	ldr	x9, [x21, #8]
	ldr	x10, [x9, x23, lsl #3]
	ldr	x28, [x20]
	ldr	w9, [x19, #24]
	cbz	w9, LBB0_7
; %bb.4:                                ;   in Loop: Header=BB0_3 Depth=1
	ldr	w9, [x19]
	and	x9, x9, #0x1ff
	mov	x12, x20
	ldr	d0, [x12, #8]!
	ldr	x11, [x12, #48]
	ldr	x13, [x11, x9, lsl #3]
	cbz	x13, LBB0_6
; %bb.5:                                ;   in Loop: Header=BB0_3 Depth=1
	fadd	d0, d0, d12
	str	d0, [x12]
LBB0_6:                                 ;   in Loop: Header=BB0_3 Depth=1
	str	xzr, [x11, x9, lsl #3]
	add	x9, x8, x23, lsl #6
	ldp	d2, d1, [x9, #16]
	fsub	d3, d10, d1
	fmul	d2, d2, d3
	mov	x11, #-7378697629483820647
	movk	x11, #39322
	movk	x11, #16217, lsl #48
	fmov	d3, x11
	fmadd	d0, d0, d3, d11
	fmadd	d0, d1, d0, d2
	str	d0, [x9, #16]
LBB0_7:                                 ;   in Loop: Header=BB0_3 Depth=1
	ldr	w9, [x19, #4]
	cmp	w9, #1
	b.lt	LBB0_17
; %bb.8:                                ;   in Loop: Header=BB0_3 Depth=1
	ldr	x11, [x19, #8]
	add	x12, x8, x23, lsl #6
	ldr	x12, [x12, #32]
	cmp	w9, #1
	b.ne	LBB0_10
; %bb.9:                                ;   in Loop: Header=BB0_3 Depth=1
	mov	x13, #0
	b	LBB0_15
LBB0_10:                                ;   in Loop: Header=BB0_3 Depth=1
	mov	x13, #0
	add	x14, x12, x9, lsl #4
	sub	x15, x14, #12
	lsl	x14, x9, #2
	add	x16, x11, x14
	add	x14, x10, x14
	cmp	x12, x14
	ccmp	x15, x10, #0, lo
	cset	w14, hi
	cmp	x15, x11
	ccmp	x12, x16, #2, hi
	b.lo	LBB0_15
; %bb.11:                               ;   in Loop: Header=BB0_3 Depth=1
	tbnz	w14, #0, LBB0_15
; %bb.12:                               ;   in Loop: Header=BB0_3 Depth=1
	and	x13, x9, #0xfffffffe
	add	x14, x12, #16
	mov	x15, x13
	mov	x16, x10
	mov	x17, x11
LBB0_13:                                ;   Parent Loop BB0_3 Depth=1
                                        ; =>  This Inner Loop Header: Depth=2
	ldr	d0, [x17], #8
	ldr	d1, [x16], #8
	fmul.2s	v0, v0, v1
	fmul.2s	v0, v0, v8
	stur	s0, [x14, #-16]
	st1.s	{ v0 }[1], [x14]
	stur	xzr, [x14, #-8]
	str	xzr, [x14, #8]
	add	x14, x14, #32
	subs	x15, x15, #2
	b.ne	LBB0_13
; %bb.14:                               ;   in Loop: Header=BB0_3 Depth=1
	cmp	x13, x9
	b.eq	LBB0_17
LBB0_15:                                ;   in Loop: Header=BB0_3 Depth=1
	lsl	x14, x13, #2
	add	x10, x10, x14
	add	x11, x11, x14
	add	x12, x12, x13, lsl #4
	add	x12, x12, #8
	sub	x13, x9, x13
LBB0_16:                                ;   Parent Loop BB0_3 Depth=1
                                        ; =>  This Inner Loop Header: Depth=2
	ldr	s0, [x11], #4
	ldr	s1, [x10], #4
	fmul	s0, s0, s1
	fmov	s1, w24
	fmul	s0, s0, s1
	stur	s0, [x12, #-8]
	str	xzr, [x12], #16
	subs	x13, x13, #1
	b.ne	LBB0_16
LBB0_17:                                ;   in Loop: Header=BB0_3 Depth=1
	sxtw	x12, w9
	ldrsw	x9, [x19, #16]
	add	x27, x8, x23, lsl #6
	mov	x26, x27
	ldr	x1, [x26, #32]!
	cmp	w12, w9
	b.ge	LBB0_24
; %bb.18:                               ;   in Loop: Header=BB0_3 Depth=1
	sub	x8, x9, x12
	cmp	x8, #4
	b.lo	LBB0_22
; %bb.19:                               ;   in Loop: Header=BB0_3 Depth=1
	and	x10, x8, #0xfffffffffffffffc
	add	x11, x10, x12
	add	x12, x1, x12, lsl #4
	add	x12, x12, #32
	mov	x13, x10
LBB0_20:                                ;   Parent Loop BB0_3 Depth=1
                                        ; =>  This Inner Loop Header: Depth=2
	stur	wzr, [x12, #-32]
	stur	wzr, [x12, #-16]
	str	wzr, [x12]
	str	wzr, [x12, #16]
	stur	xzr, [x12, #-24]
	stur	xzr, [x12, #-8]
	str	xzr, [x12, #8]
	str	xzr, [x12, #24]
	add	x12, x12, #64
	subs	x13, x13, #4
	b.ne	LBB0_20
; %bb.21:                               ;   in Loop: Header=BB0_3 Depth=1
	mov	x12, x11
	cmp	x8, x10
	b.eq	LBB0_24
LBB0_22:                                ;   in Loop: Header=BB0_3 Depth=1
	add	x8, x1, x12, lsl #4
	add	x8, x8, #8
	sub	x9, x9, x12
LBB0_23:                                ;   Parent Loop BB0_3 Depth=1
                                        ; =>  This Inner Loop Header: Depth=2
	stur	wzr, [x8, #-8]
	str	xzr, [x8], #16
	subs	x9, x9, #1
	b.ne	LBB0_23
LBB0_24:                                ;   in Loop: Header=BB0_3 Depth=1
	ldr	w0, [x27, #52]
	bl	_av_fft_permute
	ldr	w0, [x27, #52]
	ldr	x1, [x26]
	bl	_av_fft_calc
	ldr	x0, [x26]
	ldr	w1, [x19, #20]
	bl	_preprocess
	ldr	x2, [x26]
	ldp	w4, w3, [x27, #44]
	ldr	w5, [x19, #24]
	mov	x0, x19
	mov	x1, x20
	bl	_process_frame
	ldr	x0, [x26]
	ldr	w1, [x19, #20]
	bl	_postprocess
	ldr	w0, [x27, #40]
	ldr	x1, [x26]
	bl	_av_fft_permute
	ldr	w0, [x27, #40]
	ldr	x1, [x26]
	bl	_av_fft_calc
	ldr	w8, [x19, #4]
	cmp	w8, #1
	b.lt	LBB0_2
; %bb.25:                               ;   in Loop: Header=BB0_3 Depth=1
	ldr	x10, [x19, #8]
	ldr	x9, [x26]
	cmp	w8, #8
	b.hi	LBB0_27
; %bb.26:                               ;   in Loop: Header=BB0_3 Depth=1
	mov	x11, #0
	b	LBB0_29
LBB0_27:                                ;   in Loop: Header=BB0_3 Depth=1
	ands	x11, x8, #0x7
	mov	w12, #8
	csel	x11, x12, x11, eq
	sub	x11, x8, x11
	add	x12, x28, #32
	add	x13, x9, #64
	add	x14, x10, #16
	mov	x15, x11
LBB0_28:                                ;   Parent Loop BB0_3 Depth=1
                                        ; =>  This Inner Loop Header: Depth=2
	sub	x16, x13, #64
	sub	x17, x13, #32
	ld4.2s	{ v0, v1, v2, v3 }, [x16]
	ld4.2s	{ v4, v5, v6, v7 }, [x17]
	ldp	d16, d17, [x14, #-16]
	ldp	d18, d19, [x14], #32
	mov	x16, x13
	ld4.2s	{ v20, v21, v22, v23 }, [x16], #32
	ld4.2s	{ v24, v25, v26, v27 }, [x16]
	fmul.2s	v0, v16, v0
	fmul.2s	v1, v17, v4
	fmul.2s	v2, v18, v20
	fmul.2s	v3, v19, v24
	fmul.2s	v0, v0, v9
	fmul.2s	v1, v1, v9
	fmul.2s	v2, v2, v9
	fmul.2s	v3, v3, v9
	fcvtl	v0.2d, v0.2s
	fcvtl	v1.2d, v1.2s
	fcvtl	v2.2d, v2.2s
	fcvtl	v3.2d, v3.2s
	ldp	q4, q5, [x12, #-32]
	ldp	q6, q7, [x12]
	fadd.2d	v0, v4, v0
	fadd.2d	v1, v5, v1
	fadd.2d	v2, v6, v2
	fadd.2d	v3, v7, v3
	stp	q0, q1, [x12, #-32]
	stp	q2, q3, [x12], #64
	add	x13, x13, #128
	subs	x15, x15, #8
	b.ne	LBB0_28
LBB0_29:                                ;   in Loop: Header=BB0_3 Depth=1
	add	x12, x28, x11, lsl #3
	add	x10, x10, x11, lsl #2
	sub	x8, x8, x11
	add	x9, x9, x11, lsl #4
LBB0_30:                                ;   Parent Loop BB0_3 Depth=1
                                        ; =>  This Inner Loop Header: Depth=2
	ldr	s0, [x10], #4
	ldr	s1, [x9], #16
	fmul	s0, s0, s1
	fmov	s1, w25
	fmul	s0, s0, s1
	fcvt	d0, s0
	ldr	d1, [x12]
	fadd	d0, d1, d0
	str	d0, [x12], #8
	subs	x8, x8, #1
	b.ne	LBB0_30
	b	LBB0_2
LBB0_31:
	mov	w0, #0
	ldp	x29, x30, [sp, #128]            ; 16-byte Folded Reload
	ldp	x20, x19, [sp, #112]            ; 16-byte Folded Reload
	ldp	x22, x21, [sp, #96]             ; 16-byte Folded Reload
	ldp	x24, x23, [sp, #80]             ; 16-byte Folded Reload
	ldp	x26, x25, [sp, #64]             ; 16-byte Folded Reload
	ldp	x28, x27, [sp, #48]             ; 16-byte Folded Reload
	ldp	d9, d8, [sp, #32]               ; 16-byte Folded Reload
	ldp	d11, d10, [sp, #16]             ; 16-byte Folded Reload
	ldp	d13, d12, [sp], #144            ; 16-byte Folded Reload
	ret
	.cfi_endproc
                                        ; -- End function
	.no_dead_strip	_filter_channel
.subsections_via_symbols
