	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.section	__TEXT,__literal16,16byte_literals
	.p2align	4                               ## -- Begin function ac3_downmix_5_to_1_symmetric_c_fixed
LCPI0_0:
	.long	2048                            ## 0x800
	.long	2048                            ## 0x800
	.long	2048                            ## 0x800
	.long	2048                            ## 0x800
	.section	__TEXT,__text,regular,pure_instructions
	.p2align	4, 0x90
_ac3_downmix_5_to_1_symmetric_c_fixed:  ## @ac3_downmix_5_to_1_symmetric_c_fixed
	.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
	.cfi_offset %rbx, -56
	.cfi_offset %r12, -48
	.cfi_offset %r13, -40
	.cfi_offset %r14, -32
	.cfi_offset %r15, -24
	testl	%edx, %edx
	jle	LBB0_11
## %bb.1:
	movq	(%rsi), %rax
	movl	(%rax), %r8d
	movl	4(%rax), %r9d
	movl	12(%rax), %r10d
	movq	(%rdi), %rax
	movq	8(%rdi), %r11
	movq	16(%rdi), %r13
	movq	24(%rdi), %r12
	movq	32(%rdi), %rdi
	movl	%edx, %r15d
	cmpl	$4, %edx
	jae	LBB0_3
## %bb.2:
	xorl	%edx, %edx
	jmp	LBB0_10
LBB0_3:
	leaq	(%rax,%r15,4), %rdx
	leaq	(%r11,%r15,4), %rbx
	leaq	(,%r15,4), %r14
	addq	%r13, %r14
	leaq	(%r12,%r15,4), %rcx
	leaq	(%rdi,%r15,4), %rsi
	cmpq	%rbx, %rax
	setb	-45(%rbp)                       ## 1-byte Folded Spill
	cmpq	%rdx, %r11
	setb	-44(%rbp)                       ## 1-byte Folded Spill
	cmpq	%r14, %rax
	setb	%bl
	cmpq	%rdx, %r13
	setb	-43(%rbp)                       ## 1-byte Folded Spill
	cmpq	%rcx, %rax
	setb	%r14b
	cmpq	%rdx, %r12
	setb	-42(%rbp)                       ## 1-byte Folded Spill
	cmpq	%rsi, %rax
	setb	%sil
	cmpq	%rdx, %rdi
	setb	-41(%rbp)                       ## 1-byte Folded Spill
	xorl	%edx, %edx
	movb	-44(%rbp), %cl                  ## 1-byte Reload
	testb	%cl, -45(%rbp)                  ## 1-byte Folded Reload
	jne	LBB0_10
## %bb.4:
	andb	-43(%rbp), %bl                  ## 1-byte Folded Reload
	jne	LBB0_10
## %bb.5:
	andb	-42(%rbp), %r14b                ## 1-byte Folded Reload
	jne	LBB0_10
## %bb.6:
	andb	-41(%rbp), %sil                 ## 1-byte Folded Reload
	jne	LBB0_10
## %bb.7:
	movl	%r15d, %edx
	andl	$-4, %edx
	movd	%r9d, %xmm0
	pshufd	$0, %xmm0, %xmm0                ## xmm0 = xmm0[0,0,0,0]
	movd	%r10d, %xmm1
	pshufd	$0, %xmm1, %xmm1                ## xmm1 = xmm1[0,0,0,0]
	movd	%r8d, %xmm2
	pshufd	$0, %xmm2, %xmm2                ## xmm2 = xmm2[0,0,0,0]
	leaq	(,%r15,4), %r14
	andq	$-16, %r14
	xorl	%ebx, %ebx
	movdqa	LCPI0_0(%rip), %xmm3            ## xmm3 = [2048,2048,2048,2048]
	.p2align	4, 0x90
LBB0_8:                                 ## =>This Inner Loop Header: Depth=1
	movdqu	(%rax,%rbx), %xmm4
	movdqu	(%r11,%rbx), %xmm5
	pmulld	%xmm0, %xmm5
	movdqu	(%r13,%rbx), %xmm6
	paddd	%xmm4, %xmm6
	pmulld	%xmm2, %xmm6
	paddd	%xmm5, %xmm6
	movdqu	(%r12,%rbx), %xmm4
	movdqu	(%rdi,%rbx), %xmm5
	paddd	%xmm4, %xmm5
	pmulld	%xmm1, %xmm5
	paddd	%xmm6, %xmm5
	paddd	%xmm3, %xmm5
	psrad	$12, %xmm5
	movdqu	%xmm5, (%rax,%rbx)
	addq	$16, %rbx
	cmpq	%rbx, %r14
	jne	LBB0_8
## %bb.9:
	cmpq	%r15, %rdx
	je	LBB0_11
	.p2align	4, 0x90
LBB0_10:                                ## =>This Inner Loop Header: Depth=1
	movl	(%r11,%rdx,4), %ebx
	imull	%r9d, %ebx
	movl	(%r13,%rdx,4), %esi
	movl	(%rdi,%rdx,4), %ecx
	addl	(%r12,%rdx,4), %ecx
	addl	(%rax,%rdx,4), %esi
	imull	%r10d, %ecx
	imull	%r8d, %esi
	addl	%ebx, %esi
	addl	%esi, %ecx
	addl	$2048, %ecx                     ## imm = 0x800
	sarl	$12, %ecx
	movl	%ecx, (%rax,%rdx,4)
	incq	%rdx
	cmpq	%rdx, %r15
	jne	LBB0_10
LBB0_11:
	popq	%rbx
	popq	%r12
	popq	%r13
	popq	%r14
	popq	%r15
	popq	%rbp
	retq
	.cfi_endproc
                                        ## -- End function
	.no_dead_strip	_ac3_downmix_5_to_1_symmetric_c_fixed
.subsections_via_symbols

	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	2                               ; -- Begin function ac3_downmix_5_to_1_symmetric_c_fixed
_ac3_downmix_5_to_1_symmetric_c_fixed:  ; @ac3_downmix_5_to_1_symmetric_c_fixed
	.cfi_startproc
; %bb.0:
	cmp	w2, #1
	b.lt	LBB0_12
; %bb.1:
	ldr	x10, [x1]
	ldp	w8, w9, [x10]
	ldr	w10, [x10, #12]
	ldp	x11, x13, [x0]
	ldp	x14, x15, [x0, #16]
	ldr	x16, [x0, #32]
	mov	w12, w2
	cmp	w2, #16
	b.hs	LBB0_3
; %bb.2:
	mov	x17, #0
	b	LBB0_10
LBB0_3:
	mov	x17, #0
	lsl	x3, x12, #2
	add	x4, x11, x3
	add	x0, x14, x3
	cmp	x11, x0
	ccmp	x14, x4, #2, lo
	cset	w0, lo
	add	x1, x15, x3
	cmp	x11, x1
	ccmp	x15, x4, #2, lo
	cset	w1, lo
	add	x2, x16, x3
	cmp	x11, x2
	ccmp	x16, x4, #2, lo
	cset	w2, lo
	cmp	x13, x4
	add	x3, x13, x3
	ccmp	x11, x3, #2, lo
	b.lo	LBB0_10
; %bb.4:
	tbnz	w0, #0, LBB0_10
; %bb.5:
	tbnz	w1, #0, LBB0_10
; %bb.6:
	tbnz	w2, #0, LBB0_10
; %bb.7:
	dup.4s	v0, w9
	and	x17, x12, #0xfffffff0
	dup.4s	v1, w10
	add	x0, x16, #32
	dup.4s	v2, w8
	add	x1, x11, #32
	add	x2, x15, #32
	add	x3, x14, #32
	add	x4, x13, #32
	movi.4s	v3, #8, lsl #8
	mov	x5, x17
LBB0_8:                                 ; =>This Inner Loop Header: Depth=1
	ldp	q4, q5, [x1, #-32]
	ldp	q6, q7, [x1]
	ldp	q16, q17, [x4, #-32]
	ldp	q18, q19, [x4], #64
	ldp	q20, q21, [x3, #-32]
	ldp	q22, q23, [x3], #64
	ldp	q24, q25, [x2, #-32]
	ldp	q26, q27, [x2], #64
	ldp	q28, q29, [x0, #-32]
	ldp	q30, q31, [x0], #64
	add.4s	v24, v28, v24
	add.4s	v25, v29, v25
	add.4s	v26, v30, v26
	add.4s	v27, v31, v27
	add.4s	v4, v20, v4
	add.4s	v5, v21, v5
	add.4s	v6, v22, v6
	add.4s	v7, v23, v7
	mul.4s	v4, v4, v2
	mul.4s	v5, v5, v2
	mul.4s	v6, v6, v2
	mul.4s	v7, v7, v2
	mla.4s	v4, v16, v0
	mla.4s	v5, v17, v0
	mla.4s	v6, v18, v0
	mla.4s	v7, v19, v0
	mla.4s	v4, v24, v1
	mla.4s	v5, v25, v1
	mla.4s	v6, v26, v1
	mla.4s	v7, v27, v1
	add.4s	v4, v4, v3
	add.4s	v5, v5, v3
	add.4s	v6, v6, v3
	add.4s	v7, v7, v3
	sshr.4s	v4, v4, #12
	sshr.4s	v5, v5, #12
	sshr.4s	v6, v6, #12
	sshr.4s	v7, v7, #12
	stp	q4, q5, [x1, #-32]
	stp	q6, q7, [x1], #64
	subs	x5, x5, #16
	b.ne	LBB0_8
; %bb.9:
	cmp	x17, x12
	b.eq	LBB0_12
LBB0_10:
	lsl	x0, x17, #2
	add	x16, x16, x0
	add	x15, x15, x0
	add	x14, x14, x0
	add	x13, x13, x0
	add	x11, x11, x0
	sub	x12, x12, x17
LBB0_11:                                ; =>This Inner Loop Header: Depth=1
	ldr	w17, [x11]
	ldr	w0, [x13], #4
	ldr	w1, [x14], #4
	ldr	w2, [x15], #4
	ldr	w3, [x16], #4
	add	w2, w3, w2
	add	w17, w1, w17
	mul	w17, w17, w8
	madd	w17, w0, w9, w17
	madd	w17, w2, w10, w17
	add	w17, w17, #2048
	asr	w17, w17, #12
	str	w17, [x11], #4
	subs	x12, x12, #1
	b.ne	LBB0_11
LBB0_12:
	ret
	.cfi_endproc
                                        ; -- End function
	.no_dead_strip	_ac3_downmix_5_to_1_symmetric_c_fixed
.subsections_via_symbols
