	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.section	__TEXT,__literal16,16byte_literals
	.p2align	4                               ## -- Begin function ff_sbc_calculate_bits
LCPI0_0:
	.long	16                              ## 0x10
	.long	16                              ## 0x10
	.long	16                              ## 0x10
	.long	16                              ## 0x10
	.section	__TEXT,__text,regular,pure_instructions
	.globl	_ff_sbc_calculate_bits
	.p2align	4, 0x90
_ff_sbc_calculate_bits:                 ## @ff_sbc_calculate_bits
	.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	$200, %rsp
	.cfi_offset %rbx, -56
	.cfi_offset %r12, -48
	.cfi_offset %r13, -40
	.cfi_offset %r14, -32
	.cfi_offset %r15, -24
	movq	___stack_chk_guard@GOTPCREL(%rip), %rax
	movq	(%rax), %rax
	movq	%rax, -48(%rbp)
	movslq	(%rdi), %r12
	movl	%r12d, %r15d
	movq	8(%rdi), %r9
	movq	16(%rdi), %rax
	movq	_MONO@GOTPCREL(%rip), %rcx
	cmpq	(%rcx), %rax
	movq	%rdi, -120(%rbp)                ## 8-byte Spill
	je	LBB0_8
## %bb.1:
	movq	_DUAL_CHANNEL@GOTPCREL(%rip), %rcx
	cmpq	(%rcx), %rax
	je	LBB0_8
## %bb.2:
	movq	_STEREO@GOTPCREL(%rip), %rcx
	cmpq	(%rcx), %rax
	je	LBB0_4
## %bb.3:
	movq	_JOINT_STEREO@GOTPCREL(%rip), %rcx
	cmpq	(%rcx), %rax
	jne	LBB0_150
LBB0_4:
	movq	32(%rdi), %rax
	movq	_SNR@GOTPCREL(%rip), %rcx
	cmpq	(%rcx), %rax
	movq	%rsi, -128(%rbp)                ## 8-byte Spill
	movq	%r12, -176(%rbp)                ## 8-byte Spill
	jne	LBB0_64
## %bb.5:
	testl	%r15d, %r15d
	jle	LBB0_66
## %bb.6:
	leaq	(,%r15,4), %r14
	movq	40(%rdi), %rax
	movq	(%rax), %rbx
	leaq	-112(%rbp), %rdi
	movq	%rbx, %rsi
	movq	%r14, %rdx
	callq	_memcpy
	cmpl	$8, %r12d
	jae	LBB0_79
## %bb.7:
	xorl	%eax, %eax
	xorl	%r12d, %r12d
	movq	-120(%rbp), %r8                 ## 8-byte Reload
	jmp	LBB0_87
LBB0_8:
	cmpl	$0, 24(%rdi)
	jle	LBB0_150
## %bb.9:
	leaq	(,%r15,4), %rax
	movl	%r15d, %ecx
	andl	$-8, %ecx
	movq	%rcx, -152(%rbp)                ## 8-byte Spill
	addq	$-8, %rcx
	movq	%rcx, -200(%rbp)                ## 8-byte Spill
	shrq	$3, %rcx
	incq	%rcx
	movl	%ecx, %edx
	andl	$3, %edx
	andq	$-4, %rcx
	movq	%rcx, -184(%rbp)                ## 8-byte Spill
	movl	%r15d, %r14d
	andl	$-2, %r14d
	movq	%rdx, -192(%rbp)                ## 8-byte Spill
	shlq	$5, %rdx
	movq	%rdx, -144(%rbp)                ## 8-byte Spill
	leaq	16(%rsi), %rcx
	movq	%rcx, -160(%rbp)                ## 8-byte Spill
	movq	%rax, -216(%rbp)                ## 8-byte Spill
	andq	$-32, %rax
	movq	%rax, -208(%rbp)                ## 8-byte Spill
	leaq	-112(%rbp), %r13
	movdqa	LCPI0_0(%rip), %xmm6            ## xmm6 = [16,16,16,16]
	xorl	%edx, %edx
	movq	%r9, -224(%rbp)                 ## 8-byte Spill
	jmp	LBB0_11
	.p2align	4, 0x90
LBB0_10:                                ##   in Loop: Header=BB0_11 Depth=1
	movq	-232(%rbp), %rdx                ## 8-byte Reload
	incq	%rdx
	movq	-120(%rbp), %rdi                ## 8-byte Reload
	movslq	24(%rdi), %rax
	addq	$32, %r13
	addq	$32, -160(%rbp)                 ## 8-byte Folded Spill
	movq	-128(%rbp), %rsi                ## 8-byte Reload
	addq	$32, %rsi
	cmpq	%rax, %rdx
	movq	-224(%rbp), %r9                 ## 8-byte Reload
	jge	LBB0_150
LBB0_11:                                ## =>This Loop Header: Depth=1
                                        ##     Child Loop BB0_21 Depth 2
                                        ##     Child Loop BB0_28 Depth 2
                                        ##     Child Loop BB0_31 Depth 2
                                        ##     Child Loop BB0_33 Depth 2
                                        ##     Child Loop BB0_37 Depth 2
                                        ##       Child Loop BB0_39 Depth 3
                                        ##     Child Loop BB0_46 Depth 2
                                        ##     Child Loop BB0_48 Depth 2
                                        ##     Child Loop BB0_51 Depth 2
                                        ##     Child Loop BB0_60 Depth 2
	movq	%rsi, -128(%rbp)                ## 8-byte Spill
	movq	%rdx, %rax
	shlq	$5, %rax
	addq	%rbp, %rax
	addq	$-112, %rax
	movq	%rax, -168(%rbp)                ## 8-byte Spill
	movq	32(%rdi), %rax
	movq	_SNR@GOTPCREL(%rip), %rcx
	cmpq	(%rcx), %rax
	movq	%rdx, -232(%rbp)                ## 8-byte Spill
	jne	LBB0_15
## %bb.12:                              ##   in Loop: Header=BB0_11 Depth=1
	testl	%r15d, %r15d
	jle	LBB0_24
## %bb.13:                              ##   in Loop: Header=BB0_11 Depth=1
	movq	40(%rdi), %rax
	movq	(%rax,%rdx,8), %rbx
	movq	-168(%rbp), %rdi                ## 8-byte Reload
	movq	%rbx, %rsi
	movq	-216(%rbp), %rdx                ## 8-byte Reload
	callq	_memcpy
	cmpl	$8, %r15d
	jae	LBB0_25
## %bb.14:                              ##   in Loop: Header=BB0_11 Depth=1
	xorl	%eax, %eax
	xorl	%edx, %edx
	movq	-120(%rbp), %rdi                ## 8-byte Reload
	movdqa	LCPI0_0(%rip), %xmm6            ## xmm6 = [16,16,16,16]
	jmp	LBB0_33
	.p2align	4, 0x90
LBB0_15:                                ##   in Loop: Header=BB0_11 Depth=1
	testl	%r12d, %r12d
	jle	LBB0_24
## %bb.16:                              ##   in Loop: Header=BB0_11 Depth=1
	movq	_sbc_offset8@GOTPCREL(%rip), %rcx
	cmpl	$4, %r15d
	jne	LBB0_18
## %bb.17:                              ##   in Loop: Header=BB0_11 Depth=1
	movq	_sbc_offset4@GOTPCREL(%rip), %rcx
LBB0_18:                                ##   in Loop: Header=BB0_11 Depth=1
	movq	40(%rdi), %rax
	movq	(%rax,%rdx,8), %rax
	movq	(%rcx), %r8
	xorl	%esi, %esi
	xorl	%edx, %edx
	jmp	LBB0_21
	.p2align	4, 0x90
LBB0_19:                                ##   in Loop: Header=BB0_21 Depth=2
	movq	(%r8,%r9,8), %rcx
	subl	(%rcx,%rsi,4), %ebx
	testl	%ebx, %ebx
	setg	%cl
	shrl	%cl, %ebx
LBB0_20:                                ##   in Loop: Header=BB0_21 Depth=2
	movl	%ebx, (%r13,%rsi,4)
	cmpl	%edx, %ebx
	cmovgl	%ebx, %edx
	incq	%rsi
	cmpq	%rsi, %r15
	je	LBB0_34
LBB0_21:                                ##   Parent Loop BB0_11 Depth=1
                                        ## =>  This Inner Loop Header: Depth=2
	movl	(%rax,%rsi,4), %ebx
	testl	%ebx, %ebx
	jne	LBB0_19
## %bb.22:                              ##   in Loop: Header=BB0_21 Depth=2
	movl	$-5, %ebx
	jmp	LBB0_20
	.p2align	4, 0x90
LBB0_24:                                ##   in Loop: Header=BB0_11 Depth=1
	xorl	%edx, %edx
	jmp	LBB0_34
LBB0_25:                                ##   in Loop: Header=BB0_11 Depth=1
	cmpq	$24, -200(%rbp)                 ## 8-byte Folded Reload
	jae	LBB0_27
## %bb.26:                              ##   in Loop: Header=BB0_11 Depth=1
	pxor	%xmm0, %xmm0
	xorl	%eax, %eax
	pxor	%xmm1, %xmm1
	movq	-120(%rbp), %rdi                ## 8-byte Reload
	movq	-144(%rbp), %rdx                ## 8-byte Reload
	movdqa	LCPI0_0(%rip), %xmm6            ## xmm6 = [16,16,16,16]
	jmp	LBB0_29
LBB0_27:                                ##   in Loop: Header=BB0_11 Depth=1
	pxor	%xmm0, %xmm0
	movq	-184(%rbp), %rcx                ## 8-byte Reload
	xorl	%eax, %eax
	pxor	%xmm1, %xmm1
	movq	-120(%rbp), %rdi                ## 8-byte Reload
	movq	-144(%rbp), %rdx                ## 8-byte Reload
	movdqa	LCPI0_0(%rip), %xmm6            ## xmm6 = [16,16,16,16]
	.p2align	4, 0x90
LBB0_28:                                ##   Parent Loop BB0_11 Depth=1
                                        ## =>  This Inner Loop Header: Depth=2
	movdqu	(%rbx,%rax,4), %xmm2
	pmaxsd	%xmm0, %xmm2
	movdqu	16(%rbx,%rax,4), %xmm0
	pmaxsd	%xmm1, %xmm0
	movdqu	32(%rbx,%rax,4), %xmm1
	movdqu	48(%rbx,%rax,4), %xmm3
	movdqu	64(%rbx,%rax,4), %xmm4
	pmaxsd	%xmm1, %xmm4
	pmaxsd	%xmm2, %xmm4
	movdqu	80(%rbx,%rax,4), %xmm2
	pmaxsd	%xmm3, %xmm2
	pmaxsd	%xmm0, %xmm2
	movdqu	96(%rbx,%rax,4), %xmm0
	pmaxsd	%xmm4, %xmm0
	movdqu	112(%rbx,%rax,4), %xmm1
	pmaxsd	%xmm2, %xmm1
	addq	$32, %rax
	addq	$-4, %rcx
	jne	LBB0_28
LBB0_29:                                ##   in Loop: Header=BB0_11 Depth=1
	cmpq	$0, -192(%rbp)                  ## 8-byte Folded Reload
	je	LBB0_32
## %bb.30:                              ##   in Loop: Header=BB0_11 Depth=1
	leaq	(%rbx,%rax,4), %rax
	addq	$16, %rax
	xorl	%ecx, %ecx
	.p2align	4, 0x90
LBB0_31:                                ##   Parent Loop BB0_11 Depth=1
                                        ## =>  This Inner Loop Header: Depth=2
	movdqu	-16(%rax,%rcx), %xmm2
	pmaxsd	%xmm2, %xmm0
	movdqu	(%rax,%rcx), %xmm2
	pmaxsd	%xmm2, %xmm1
	addq	$32, %rcx
	cmpq	%rcx, %rdx
	jne	LBB0_31
LBB0_32:                                ##   in Loop: Header=BB0_11 Depth=1
	pmaxsd	%xmm1, %xmm0
	pshufd	$238, %xmm0, %xmm1              ## xmm1 = xmm0[2,3,2,3]
	pmaxsd	%xmm0, %xmm1
	pshufd	$85, %xmm1, %xmm0               ## xmm0 = xmm1[1,1,1,1]
	pmaxsd	%xmm1, %xmm0
	movd	%xmm0, %edx
	movq	-152(%rbp), %rcx                ## 8-byte Reload
	movq	%rcx, %rax
	cmpq	%r15, %rcx
	je	LBB0_34
	.p2align	4, 0x90
LBB0_33:                                ##   Parent Loop BB0_11 Depth=1
                                        ## =>  This Inner Loop Header: Depth=2
	movl	(%rbx,%rax,4), %ecx
	cmpl	%edx, %ecx
	cmovgl	%ecx, %edx
	incq	%rax
	cmpq	%rax, %r15
	jne	LBB0_33
LBB0_34:                                ##   in Loop: Header=BB0_11 Depth=1
	incl	%edx
	movl	48(%rdi), %eax
	movl	%eax, -132(%rbp)                ## 4-byte Spill
	xorl	%r10d, %r10d
	jmp	LBB0_37
	.p2align	4, 0x90
LBB0_35:                                ##   in Loop: Header=BB0_37 Depth=2
	leal	(%rax,%r10), %esi
	cmpl	-132(%rbp), %esi                ## 4-byte Folded Reload
	movq	%r8, %r12
	jge	LBB0_43
LBB0_36:                                ##   in Loop: Header=BB0_37 Depth=2
	addl	%r10d, %eax
	movl	%r9d, %edx
	movl	%eax, %r10d
LBB0_37:                                ##   Parent Loop BB0_11 Depth=1
                                        ## =>  This Loop Header: Depth=2
                                        ##       Child Loop BB0_39 Depth 3
	leal	-1(%rdx), %r9d
	testl	%r15d, %r15d
	jle	LBB0_42
## %bb.38:                              ##   in Loop: Header=BB0_37 Depth=2
	leal	15(%rdx), %r11d
	movq	%r12, %r8
	xorl	%esi, %esi
	xorl	%eax, %eax
	cmpl	$1, %r12d
	je	LBB0_40
	.p2align	4, 0x90
LBB0_39:                                ##   Parent Loop BB0_11 Depth=1
                                        ##     Parent Loop BB0_37 Depth=2
                                        ## =>    This Inner Loop Header: Depth=3
	leal	1(%rax), %ecx
	leal	2(%rax), %ebx
	movl	(%r13,%rsi,4), %edi
	cmpl	%edx, %edi
	cmovnel	%eax, %ebx
	movl	4(%r13,%rsi,4), %r12d
	cmpl	%r11d, %edi
	cmovgel	%ebx, %ecx
	cmpl	%edx, %edi
	cmovlel	%ebx, %ecx
	leal	1(%rcx), %eax
	leal	2(%rcx), %edi
	cmpl	%edx, %r12d
	cmovnel	%ecx, %edi
	cmpl	%r11d, %r12d
	cmovgel	%edi, %eax
	cmpl	%edx, %r12d
	cmovlel	%edi, %eax
	addq	$2, %rsi
	cmpq	%rsi, %r14
	jne	LBB0_39
LBB0_40:                                ##   in Loop: Header=BB0_37 Depth=2
	testb	$1, %r15b
	je	LBB0_35
## %bb.41:                              ##   in Loop: Header=BB0_37 Depth=2
	movq	-168(%rbp), %rcx                ## 8-byte Reload
	movl	(%rcx,%rsi,4), %ecx
	leal	2(%rax), %esi
	cmpl	%edx, %ecx
	cmovnel	%eax, %esi
	incl	%eax
	cmpl	%r11d, %ecx
	cmovgel	%esi, %eax
	cmpl	%edx, %ecx
	cmovlel	%esi, %eax
                                        ## kill: def $eax killed $eax def $rax
	jmp	LBB0_35
	.p2align	4, 0x90
LBB0_42:                                ##   in Loop: Header=BB0_37 Depth=2
	xorl	%eax, %eax
	cmpl	-132(%rbp), %r10d               ## 4-byte Folded Reload
	jl	LBB0_36
	jmp	LBB0_10
	.p2align	4, 0x90
LBB0_43:                                ##   in Loop: Header=BB0_11 Depth=1
	addl	$-2, %edx
	cmpl	-132(%rbp), %esi                ## 4-byte Folded Reload
	cmovel	%esi, %r10d
	cmovel	%edx, %r9d
	leal	2(%r9), %r11d
	cmpl	$8, %r15d
	jae	LBB0_45
## %bb.44:                              ##   in Loop: Header=BB0_11 Depth=1
	xorl	%edx, %edx
	movq	-128(%rbp), %rbx                ## 8-byte Reload
	movq	-120(%rbp), %r8                 ## 8-byte Reload
	xorl	%edi, %edi
	movl	$16, %eax
	jmp	LBB0_48
	.p2align	4, 0x90
LBB0_45:                                ##   in Loop: Header=BB0_11 Depth=1
	movd	%r11d, %xmm0
	pshufd	$0, %xmm0, %xmm0                ## xmm0 = xmm0[0,0,0,0]
	movd	%r9d, %xmm1
	pshufd	$0, %xmm1, %xmm1                ## xmm1 = xmm1[0,0,0,0]
	xorl	%edx, %edx
	movq	-160(%rbp), %rcx                ## 8-byte Reload
	movq	-208(%rbp), %rsi                ## 8-byte Reload
	.p2align	4, 0x90
LBB0_46:                                ##   Parent Loop BB0_11 Depth=1
                                        ## =>  This Inner Loop Header: Depth=2
	movdqa	(%r13,%rdx), %xmm2
	movdqa	16(%r13,%rdx), %xmm3
	movdqa	%xmm0, %xmm4
	pcmpgtd	%xmm2, %xmm4
	psubd	%xmm1, %xmm2
	movdqa	%xmm0, %xmm5
	pcmpgtd	%xmm3, %xmm5
	psubd	%xmm1, %xmm3
	pminsd	%xmm6, %xmm2
	pminsd	%xmm6, %xmm3
	pandn	%xmm2, %xmm4
	pandn	%xmm3, %xmm5
	movdqu	%xmm4, -16(%rcx,%rdx)
	movdqu	%xmm5, (%rcx,%rdx)
	addq	$32, %rdx
	cmpq	%rdx, %rsi
	jne	LBB0_46
## %bb.47:                              ##   in Loop: Header=BB0_11 Depth=1
	movq	-152(%rbp), %rcx                ## 8-byte Reload
	movq	%rcx, %rdx
	cmpq	%r15, %rcx
	movq	-128(%rbp), %rbx                ## 8-byte Reload
	movq	-120(%rbp), %r8                 ## 8-byte Reload
	movl	$0, %edi
	movl	$16, %eax
	je	LBB0_49
	.p2align	4, 0x90
LBB0_48:                                ##   Parent Loop BB0_11 Depth=1
                                        ## =>  This Inner Loop Header: Depth=2
	movl	(%r13,%rdx,4), %ecx
	movl	%ecx, %esi
	subl	%r9d, %esi
	cmpl	$16, %esi
	cmovgel	%eax, %esi
	cmpl	%r11d, %ecx
	cmovll	%edi, %esi
	movl	%esi, (%rbx,%rdx,4)
	incq	%rdx
	cmpq	%rdx, %r15
	jne	LBB0_48
LBB0_49:                                ##   in Loop: Header=BB0_11 Depth=1
	movl	48(%r8), %edx
	cmpl	%edx, %r10d
	jge	LBB0_58
## %bb.50:                              ##   in Loop: Header=BB0_11 Depth=1
	incl	%r9d
	movl	$1, %eax
	.p2align	4, 0x90
LBB0_51:                                ##   Parent Loop BB0_11 Depth=1
                                        ## =>  This Inner Loop Header: Depth=2
	movl	-4(%rbx,%rax,4), %esi
	leal	-2(%rsi), %ecx
	cmpl	$13, %ecx
	ja	LBB0_53
## %bb.52:                              ##   in Loop: Header=BB0_51 Depth=2
	incl	%esi
	movl	$1, %edi
	jmp	LBB0_55
	.p2align	4, 0x90
LBB0_53:                                ##   in Loop: Header=BB0_51 Depth=2
	cmpl	%r9d, -4(%r13,%rax,4)
	jne	LBB0_56
## %bb.54:                              ##   in Loop: Header=BB0_51 Depth=2
	leal	1(%r10), %ecx
	movl	$2, %esi
	movl	$2, %edi
	cmpl	%ecx, %edx
	jle	LBB0_56
LBB0_55:                                ##   in Loop: Header=BB0_51 Depth=2
	movl	%esi, -4(%rbx,%rax,4)
	addl	%edi, %r10d
LBB0_56:                                ##   in Loop: Header=BB0_51 Depth=2
	movl	48(%r8), %edx
	cmpl	%edx, %r10d
	jge	LBB0_58
## %bb.57:                              ##   in Loop: Header=BB0_51 Depth=2
	leaq	1(%rax), %rcx
	cmpq	%r12, %rax
	movq	%rcx, %rax
	jl	LBB0_51
LBB0_58:                                ##   in Loop: Header=BB0_11 Depth=1
	cmpl	%edx, %r10d
	jge	LBB0_10
## %bb.59:                              ##   in Loop: Header=BB0_11 Depth=1
	movl	$1, %eax
	.p2align	4, 0x90
LBB0_60:                                ##   Parent Loop BB0_11 Depth=1
                                        ## =>  This Inner Loop Header: Depth=2
	movq	-128(%rbp), %rsi                ## 8-byte Reload
	movl	-4(%rsi,%rax,4), %ecx
	cmpl	$15, %ecx
	jg	LBB0_62
## %bb.61:                              ##   in Loop: Header=BB0_60 Depth=2
	incl	%ecx
	movl	%ecx, -4(%rsi,%rax,4)
	incl	%r10d
	movq	-120(%rbp), %rcx                ## 8-byte Reload
	movl	48(%rcx), %edx
LBB0_62:                                ##   in Loop: Header=BB0_60 Depth=2
	cmpl	%edx, %r10d
	jge	LBB0_10
## %bb.63:                              ##   in Loop: Header=BB0_60 Depth=2
	leaq	1(%rax), %rcx
	cmpq	%r12, %rax
	movq	%rcx, %rax
	jl	LBB0_60
	jmp	LBB0_10
LBB0_64:
	cmpl	$4, %r15d
	jne	LBB0_67
## %bb.65:
	movq	_sbc_offset4@GOTPCREL(%rip), %rax
	testl	%r15d, %r15d
	jg	LBB0_68
LBB0_66:
	xorl	%r12d, %r12d
	jmp	LBB0_99
LBB0_67:
	movq	_sbc_offset8@GOTPCREL(%rip), %rax
	testl	%r15d, %r15d
	jle	LBB0_66
LBB0_68:
	movq	(%rax), %rax
	movq	40(%rdi), %rcx
	movq	(%rcx), %rdx
	xorl	%esi, %esi
	xorl	%r12d, %r12d
	jmp	LBB0_71
	.p2align	4, 0x90
LBB0_69:                                ##   in Loop: Header=BB0_71 Depth=1
	movq	(%rax,%r9,8), %rcx
	subl	(%rcx,%rsi,4), %ebx
	testl	%ebx, %ebx
	setg	%cl
	shrl	%cl, %ebx
LBB0_70:                                ##   in Loop: Header=BB0_71 Depth=1
	movl	%ebx, -112(%rbp,%rsi,4)
	cmpl	%r12d, %ebx
	cmovgl	%ebx, %r12d
	incq	%rsi
	cmpq	%rsi, %r15
	je	LBB0_73
LBB0_71:                                ## =>This Inner Loop Header: Depth=1
	movl	(%rdx,%rsi,4), %ebx
	testl	%ebx, %ebx
	jne	LBB0_69
## %bb.72:                              ##   in Loop: Header=BB0_71 Depth=1
	movl	$-5, %ebx
	jmp	LBB0_70
LBB0_73:
	movq	40(%rdi), %rcx
	movq	8(%rcx), %rdx
	xorl	%esi, %esi
	jmp	LBB0_76
	.p2align	4, 0x90
LBB0_74:                                ##   in Loop: Header=BB0_76 Depth=1
	movq	(%rax,%r9,8), %rcx
	subl	(%rcx,%rsi,4), %ebx
	testl	%ebx, %ebx
	setg	%cl
	shrl	%cl, %ebx
LBB0_75:                                ##   in Loop: Header=BB0_76 Depth=1
	movl	%ebx, -80(%rbp,%rsi,4)
	cmpl	%r12d, %ebx
	cmovgl	%ebx, %r12d
	incq	%rsi
	cmpq	%rsi, %r15
	je	LBB0_99
LBB0_76:                                ## =>This Inner Loop Header: Depth=1
	movl	(%rdx,%rsi,4), %ebx
	testl	%ebx, %ebx
	jne	LBB0_74
## %bb.77:                              ##   in Loop: Header=BB0_76 Depth=1
	movl	$-5, %ebx
	jmp	LBB0_75
LBB0_79:
	movl	%r15d, %eax
	andl	$-8, %eax
	leaq	-8(%rax), %rdx
	movq	%rdx, %rsi
	shrq	$3, %rsi
	incq	%rsi
	movl	%esi, %ecx
	andl	$3, %ecx
	cmpq	$24, %rdx
	jae	LBB0_81
## %bb.80:
	pxor	%xmm0, %xmm0
	xorl	%edx, %edx
	pxor	%xmm1, %xmm1
	movq	-120(%rbp), %r8                 ## 8-byte Reload
	jmp	LBB0_83
LBB0_81:
	andq	$-4, %rsi
	pxor	%xmm0, %xmm0
	xorl	%edx, %edx
	pxor	%xmm1, %xmm1
	movq	-120(%rbp), %r8                 ## 8-byte Reload
	.p2align	4, 0x90
LBB0_82:                                ## =>This Inner Loop Header: Depth=1
	movdqu	(%rbx,%rdx,4), %xmm2
	pmaxsd	%xmm0, %xmm2
	movdqu	16(%rbx,%rdx,4), %xmm0
	pmaxsd	%xmm1, %xmm0
	movdqu	32(%rbx,%rdx,4), %xmm1
	movdqu	48(%rbx,%rdx,4), %xmm3
	movdqu	64(%rbx,%rdx,4), %xmm4
	pmaxsd	%xmm1, %xmm4
	pmaxsd	%xmm2, %xmm4
	movdqu	80(%rbx,%rdx,4), %xmm2
	pmaxsd	%xmm3, %xmm2
	pmaxsd	%xmm0, %xmm2
	movdqu	96(%rbx,%rdx,4), %xmm0
	pmaxsd	%xmm4, %xmm0
	movdqu	112(%rbx,%rdx,4), %xmm1
	pmaxsd	%xmm2, %xmm1
	addq	$32, %rdx
	addq	$-4, %rsi
	jne	LBB0_82
LBB0_83:
	testq	%rcx, %rcx
	je	LBB0_86
## %bb.84:
	leaq	(%rbx,%rdx,4), %rdx
	addq	$16, %rdx
	shlq	$5, %rcx
	xorl	%esi, %esi
	.p2align	4, 0x90
LBB0_85:                                ## =>This Inner Loop Header: Depth=1
	movdqu	-16(%rdx,%rsi), %xmm2
	pmaxsd	%xmm2, %xmm0
	movdqu	(%rdx,%rsi), %xmm2
	pmaxsd	%xmm2, %xmm1
	addq	$32, %rsi
	cmpq	%rsi, %rcx
	jne	LBB0_85
LBB0_86:
	pmaxsd	%xmm1, %xmm0
	pshufd	$238, %xmm0, %xmm1              ## xmm1 = xmm0[2,3,2,3]
	pmaxsd	%xmm0, %xmm1
	pshufd	$85, %xmm1, %xmm0               ## xmm0 = xmm1[1,1,1,1]
	pmaxsd	%xmm1, %xmm0
	movd	%xmm0, %r12d
	cmpq	%r15, %rax
	je	LBB0_88
	.p2align	4, 0x90
LBB0_87:                                ## =>This Inner Loop Header: Depth=1
	movl	(%rbx,%rax,4), %ecx
	cmpl	%r12d, %ecx
	cmovgl	%ecx, %r12d
	incq	%rax
	cmpq	%rax, %r15
	jne	LBB0_87
LBB0_88:
	leaq	-80(%rbp), %rdi
	movq	40(%r8), %rax
	movq	8(%rax), %rbx
	movq	%rbx, %rsi
	movq	%r14, %rdx
	callq	_memcpy
	cmpl	$8, %r15d
	jae	LBB0_90
## %bb.89:
	xorl	%eax, %eax
	movq	-120(%rbp), %rdi                ## 8-byte Reload
	jmp	LBB0_98
LBB0_90:
	movl	%r15d, %eax
	andl	$-8, %eax
	movd	%r12d, %xmm0
	pshufd	$0, %xmm0, %xmm0                ## xmm0 = xmm0[0,0,0,0]
	leaq	-8(%rax), %rdx
	movq	%rdx, %rsi
	shrq	$3, %rsi
	incq	%rsi
	movl	%esi, %ecx
	andl	$3, %ecx
	cmpq	$24, %rdx
	jae	LBB0_92
## %bb.91:
	xorl	%edx, %edx
	movdqa	%xmm0, %xmm1
	movq	-120(%rbp), %rdi                ## 8-byte Reload
	jmp	LBB0_94
LBB0_92:
	andq	$-4, %rsi
	xorl	%edx, %edx
	movdqa	%xmm0, %xmm1
	movq	-120(%rbp), %rdi                ## 8-byte Reload
	.p2align	4, 0x90
LBB0_93:                                ## =>This Inner Loop Header: Depth=1
	movdqu	(%rbx,%rdx,4), %xmm2
	pmaxsd	%xmm0, %xmm2
	movdqu	16(%rbx,%rdx,4), %xmm0
	pmaxsd	%xmm1, %xmm0
	movdqu	32(%rbx,%rdx,4), %xmm1
	movdqu	48(%rbx,%rdx,4), %xmm3
	movdqu	64(%rbx,%rdx,4), %xmm4
	pmaxsd	%xmm1, %xmm4
	pmaxsd	%xmm2, %xmm4
	movdqu	80(%rbx,%rdx,4), %xmm2
	pmaxsd	%xmm3, %xmm2
	pmaxsd	%xmm0, %xmm2
	movdqu	96(%rbx,%rdx,4), %xmm0
	pmaxsd	%xmm4, %xmm0
	movdqu	112(%rbx,%rdx,4), %xmm1
	pmaxsd	%xmm2, %xmm1
	addq	$32, %rdx
	addq	$-4, %rsi
	jne	LBB0_93
LBB0_94:
	testq	%rcx, %rcx
	je	LBB0_97
## %bb.95:
	leaq	(%rbx,%rdx,4), %rdx
	addq	$16, %rdx
	shlq	$5, %rcx
	xorl	%esi, %esi
	.p2align	4, 0x90
LBB0_96:                                ## =>This Inner Loop Header: Depth=1
	movdqu	-16(%rdx,%rsi), %xmm2
	pmaxsd	%xmm2, %xmm0
	movdqu	(%rdx,%rsi), %xmm2
	pmaxsd	%xmm2, %xmm1
	addq	$32, %rsi
	cmpq	%rsi, %rcx
	jne	LBB0_96
LBB0_97:
	pmaxsd	%xmm1, %xmm0
	pshufd	$238, %xmm0, %xmm1              ## xmm1 = xmm0[2,3,2,3]
	pmaxsd	%xmm0, %xmm1
	pshufd	$85, %xmm1, %xmm0               ## xmm0 = xmm1[1,1,1,1]
	pmaxsd	%xmm1, %xmm0
	movd	%xmm0, %r12d
	cmpq	%r15, %rax
	je	LBB0_99
	.p2align	4, 0x90
LBB0_98:                                ## =>This Inner Loop Header: Depth=1
	movl	(%rbx,%rax,4), %ecx
	cmpl	%r12d, %ecx
	cmovgl	%ecx, %r12d
	incq	%rax
	cmpq	%rax, %r15
	jne	LBB0_98
LBB0_99:
	incl	%r12d
	movl	48(%rdi), %r8d
	leaq	-1(%r15), %r9
	movl	%r15d, %r14d
	andl	$-2, %r14d
	xorl	%r11d, %r11d
	xorl	%r10d, %r10d
	jmp	LBB0_101
	.p2align	4, 0x90
LBB0_100:                               ##   in Loop: Header=BB0_101 Depth=1
	leal	-1(%r13), %r12d
	addl	%r10d, %r11d
	leal	(%rsi,%r11), %edx
	movl	%esi, %r10d
	cmpl	%r8d, %edx
	jge	LBB0_111
LBB0_101:                               ## =>This Loop Header: Depth=1
                                        ##     Child Loop BB0_103 Depth 2
                                        ##     Child Loop BB0_108 Depth 2
	movl	%r12d, %r13d
	movl	$0, %esi
	testl	%r15d, %r15d
	jle	LBB0_100
## %bb.102:                             ##   in Loop: Header=BB0_101 Depth=1
	leal	15(%r13), %r12d
	xorl	%eax, %eax
	xorl	%esi, %esi
	testq	%r9, %r9
	je	LBB0_104
	.p2align	4, 0x90
LBB0_103:                               ##   Parent Loop BB0_101 Depth=1
                                        ## =>  This Inner Loop Header: Depth=2
	leal	1(%rsi), %ecx
	leal	2(%rsi), %edi
	movl	-112(%rbp,%rax,4), %edx
	cmpl	%r13d, %edx
	cmovnel	%esi, %edi
	movl	-108(%rbp,%rax,4), %ebx
	cmpl	%r12d, %edx
	cmovgel	%edi, %ecx
	cmpl	%r13d, %edx
	cmovlel	%edi, %ecx
	leal	1(%rcx), %esi
	leal	2(%rcx), %edx
	cmpl	%r13d, %ebx
	cmovnel	%ecx, %edx
	cmpl	%r12d, %ebx
	cmovgel	%edx, %esi
	cmpl	%r13d, %ebx
	cmovlel	%edx, %esi
	addq	$2, %rax
	cmpq	%rax, %r14
	jne	LBB0_103
LBB0_104:                               ##   in Loop: Header=BB0_101 Depth=1
	testb	$1, %r15b
	je	LBB0_106
## %bb.105:                             ##   in Loop: Header=BB0_101 Depth=1
	movl	-112(%rbp,%rax,4), %eax
	leal	2(%rsi), %ecx
	cmpl	%r13d, %eax
	cmovnel	%esi, %ecx
	leal	1(%rsi), %edx
	cmpl	%r12d, %eax
	cmovgel	%ecx, %edx
	cmpl	%r13d, %eax
	cmovlel	%ecx, %edx
	movl	%edx, %esi
LBB0_106:                               ##   in Loop: Header=BB0_101 Depth=1
	testl	%r15d, %r15d
	jle	LBB0_100
## %bb.107:                             ##   in Loop: Header=BB0_101 Depth=1
	xorl	%eax, %eax
	testq	%r9, %r9
	je	LBB0_109
	.p2align	4, 0x90
LBB0_108:                               ##   Parent Loop BB0_101 Depth=1
                                        ## =>  This Inner Loop Header: Depth=2
	leal	1(%rsi), %ecx
	leal	2(%rsi), %edx
	movl	-80(%rbp,%rax,4), %edi
	cmpl	%r13d, %edi
	cmovnel	%esi, %edx
	movl	-76(%rbp,%rax,4), %ebx
	cmpl	%r12d, %edi
	cmovgel	%edx, %ecx
	cmpl	%r13d, %edi
	cmovlel	%edx, %ecx
	leal	1(%rcx), %esi
	leal	2(%rcx), %edx
	cmpl	%r13d, %ebx
	cmovnel	%ecx, %edx
	cmpl	%r12d, %ebx
	cmovgel	%edx, %esi
	cmpl	%r13d, %ebx
	cmovlel	%edx, %esi
	addq	$2, %rax
	cmpq	%rax, %r14
	jne	LBB0_108
LBB0_109:                               ##   in Loop: Header=BB0_101 Depth=1
	testb	$1, %r15b
	je	LBB0_100
## %bb.110:                             ##   in Loop: Header=BB0_101 Depth=1
	movl	-80(%rbp,%rax,4), %eax
	leal	2(%rsi), %ecx
	cmpl	%r13d, %eax
	cmovnel	%esi, %ecx
	leal	1(%rsi), %edx
	cmpl	%r12d, %eax
	cmovgel	%ecx, %edx
	cmpl	%r13d, %eax
	cmovlel	%ecx, %edx
	movl	%edx, %esi
	jmp	LBB0_100
LBB0_111:
	addl	$-2, %r13d
	cmpl	%r8d, %edx
	cmovel	%r13d, %r12d
	testl	%r15d, %r15d
	jle	LBB0_132
## %bb.112:
	leal	2(%r12), %r14d
	xorl	%r10d, %r10d
	movd	%r14d, %xmm8
	movd	%r12d, %xmm1
	cmpl	$8, %r15d
	jae	LBB0_114
## %bb.113:
	xorl	%edi, %edi
	movq	-128(%rbp), %rsi                ## 8-byte Reload
	jmp	LBB0_120
LBB0_114:
	movl	%r15d, %edi
	andl	$-8, %edi
	pshufd	$0, %xmm8, %xmm0                ## xmm0 = xmm8[0,0,0,0]
	pshufd	$0, %xmm1, %xmm3                ## xmm3 = xmm1[0,0,0,0]
	leaq	-8(%rdi), %rax
	movq	%rax, %r9
	shrq	$3, %r9
	incq	%r9
	testq	%rax, %rax
	je	LBB0_152
## %bb.115:
	movabsq	$4611686018427387900, %rcx      ## imm = 0x3FFFFFFFFFFFFFFC
	orq	$2, %rcx
	andq	%r9, %rcx
	xorl	%ebx, %ebx
	movdqa	LCPI0_0(%rip), %xmm4            ## xmm4 = [16,16,16,16]
	movq	-128(%rbp), %rax                ## 8-byte Reload
	.p2align	4, 0x90
LBB0_116:                               ## =>This Inner Loop Header: Depth=1
	movdqa	-112(%rbp,%rbx,4), %xmm5
	movdqa	-96(%rbp,%rbx,4), %xmm6
	movdqa	%xmm0, %xmm7
	pcmpgtd	%xmm5, %xmm7
	psubd	%xmm3, %xmm5
	movdqa	%xmm0, %xmm2
	pcmpgtd	%xmm6, %xmm2
	psubd	%xmm3, %xmm6
	pminsd	%xmm4, %xmm5
	pminsd	%xmm4, %xmm6
	pandn	%xmm5, %xmm7
	pandn	%xmm6, %xmm2
	movdqu	%xmm7, (%rax,%rbx,4)
	movdqu	%xmm2, 16(%rax,%rbx,4)
	movdqa	-80(%rbp,%rbx,4), %xmm2
	movdqa	-64(%rbp,%rbx,4), %xmm5
	movdqa	%xmm0, %xmm6
	pcmpgtd	%xmm2, %xmm6
	psubd	%xmm3, %xmm2
	movdqa	%xmm0, %xmm7
	pcmpgtd	%xmm5, %xmm7
	psubd	%xmm3, %xmm5
	pminsd	%xmm4, %xmm2
	pminsd	%xmm4, %xmm5
	pandn	%xmm2, %xmm6
	pandn	%xmm5, %xmm7
	movdqu	%xmm6, 32(%rax,%rbx,4)
	movdqu	%xmm7, 48(%rax,%rbx,4)
	addq	$16, %rbx
	addq	$-2, %rcx
	jne	LBB0_116
## %bb.117:
	testb	$1, %r9b
	je	LBB0_119
LBB0_118:
	movdqa	-112(%rbp,%rbx,4), %xmm2
	movdqa	-96(%rbp,%rbx,4), %xmm4
	movdqa	%xmm0, %xmm5
	pcmpgtd	%xmm2, %xmm5
	psubd	%xmm3, %xmm2
	pcmpgtd	%xmm4, %xmm0
	psubd	%xmm3, %xmm4
	movdqa	LCPI0_0(%rip), %xmm3            ## xmm3 = [16,16,16,16]
	pminsd	%xmm3, %xmm2
	pminsd	%xmm3, %xmm4
	pandn	%xmm2, %xmm5
	pandn	%xmm4, %xmm0
	movq	-128(%rbp), %rax                ## 8-byte Reload
	movdqu	%xmm5, (%rax,%rbx,4)
	movdqu	%xmm0, 16(%rax,%rbx,4)
LBB0_119:
	cmpq	%r15, %rdi
	movq	-128(%rbp), %rsi                ## 8-byte Reload
	je	LBB0_122
LBB0_120:
	movl	$16, %eax
	.p2align	4, 0x90
LBB0_121:                               ## =>This Inner Loop Header: Depth=1
	movl	-112(%rbp,%rdi,4), %ebx
	movl	%ebx, %ecx
	subl	%r12d, %ecx
	cmpl	$16, %ecx
	cmovgel	%eax, %ecx
	cmpl	%r14d, %ebx
	cmovll	%r10d, %ecx
	movl	%ecx, (%rsi,%rdi,4)
	incq	%rdi
	cmpq	%rdi, %r15
	jne	LBB0_121
LBB0_122:
	xorl	%r10d, %r10d
	cmpl	$8, %r15d
	jae	LBB0_124
## %bb.123:
	xorl	%edi, %edi
	movq	-128(%rbp), %rsi                ## 8-byte Reload
	jmp	LBB0_130
LBB0_124:
	movl	%r15d, %edi
	andl	$-8, %edi
	pshufd	$0, %xmm8, %xmm0                ## xmm0 = xmm8[0,0,0,0]
	pshufd	$0, %xmm1, %xmm1                ## xmm1 = xmm1[0,0,0,0]
	leaq	-8(%rdi), %rax
	movq	%rax, %r9
	shrq	$3, %r9
	incq	%r9
	testq	%rax, %rax
	je	LBB0_153
## %bb.125:
	movabsq	$4611686018427387900, %rcx      ## imm = 0x3FFFFFFFFFFFFFFC
	orq	$2, %rcx
	andq	%r9, %rcx
	xorl	%ebx, %ebx
	movdqa	LCPI0_0(%rip), %xmm2            ## xmm2 = [16,16,16,16]
	movq	-128(%rbp), %rax                ## 8-byte Reload
	.p2align	4, 0x90
LBB0_126:                               ## =>This Inner Loop Header: Depth=1
	movdqa	-80(%rbp,%rbx,4), %xmm3
	movdqa	-64(%rbp,%rbx,4), %xmm4
	movdqa	%xmm0, %xmm5
	pcmpgtd	%xmm3, %xmm5
	psubd	%xmm1, %xmm3
	movdqa	%xmm0, %xmm6
	pcmpgtd	%xmm4, %xmm6
	psubd	%xmm1, %xmm4
	pminsd	%xmm2, %xmm3
	pminsd	%xmm2, %xmm4
	pandn	%xmm3, %xmm5
	pandn	%xmm4, %xmm6
	movdqu	%xmm5, 32(%rax,%rbx,4)
	movdqu	%xmm6, 48(%rax,%rbx,4)
	movdqa	-48(%rbp,%rbx,4), %xmm3
	movdqa	-32(%rbp,%rbx,4), %xmm4
	movdqa	%xmm0, %xmm5
	pcmpgtd	%xmm3, %xmm5
	psubd	%xmm1, %xmm3
	movdqa	%xmm0, %xmm6
	pcmpgtd	%xmm4, %xmm6
	psubd	%xmm1, %xmm4
	pminsd	%xmm2, %xmm3
	pminsd	%xmm2, %xmm4
	pandn	%xmm3, %xmm5
	pandn	%xmm4, %xmm6
	movdqu	%xmm5, 64(%rax,%rbx,4)
	movdqu	%xmm6, 80(%rax,%rbx,4)
	addq	$16, %rbx
	addq	$-2, %rcx
	jne	LBB0_126
## %bb.127:
	testb	$1, %r9b
	je	LBB0_129
LBB0_128:
	movdqa	-80(%rbp,%rbx,4), %xmm2
	movdqa	-64(%rbp,%rbx,4), %xmm3
	movdqa	%xmm0, %xmm4
	pcmpgtd	%xmm2, %xmm4
	psubd	%xmm1, %xmm2
	pcmpgtd	%xmm3, %xmm0
	psubd	%xmm1, %xmm3
	movdqa	LCPI0_0(%rip), %xmm1            ## xmm1 = [16,16,16,16]
	pminsd	%xmm1, %xmm2
	pminsd	%xmm1, %xmm3
	pandn	%xmm2, %xmm4
	pandn	%xmm3, %xmm0
	movq	-128(%rbp), %rax                ## 8-byte Reload
	movdqu	%xmm4, 32(%rax,%rbx,4)
	movdqu	%xmm0, 48(%rax,%rbx,4)
LBB0_129:
	cmpq	%r15, %rdi
	movq	-128(%rbp), %rsi                ## 8-byte Reload
	je	LBB0_132
LBB0_130:
	movl	$16, %eax
	.p2align	4, 0x90
LBB0_131:                               ## =>This Inner Loop Header: Depth=1
	movl	-80(%rbp,%rdi,4), %ebx
	movl	%ebx, %ecx
	subl	%r12d, %ecx
	cmpl	$16, %ecx
	cmovgel	%eax, %ecx
	cmpl	%r14d, %ebx
	cmovll	%r10d, %ecx
	movl	%ecx, 32(%rsi,%rdi,4)
	incq	%rdi
	cmpq	%rdi, %r15
	jne	LBB0_131
LBB0_132:
	cmpl	%r8d, %edx
	cmovel	%edx, %r11d
	movq	-120(%rbp), %rax                ## 8-byte Reload
	movl	48(%rax), %eax
	cmpl	%eax, %r11d
	jge	LBB0_143
## %bb.133:
	incl	%r12d
	xorl	%r8d, %r8d
	xorl	%esi, %esi
	jmp	LBB0_135
	.p2align	4, 0x90
LBB0_134:                               ##   in Loop: Header=BB0_135 Depth=1
	movq	-120(%rbp), %rax                ## 8-byte Reload
	movl	48(%rax), %eax
	cmpl	%eax, %r11d
	jge	LBB0_143
LBB0_135:                               ## =>This Inner Loop Header: Depth=1
	movl	%esi, %r9d
	movslq	%r8d, %rsi
	movq	%r9, %rcx
	shlq	$5, %rcx
	movq	-128(%rbp), %rdx                ## 8-byte Reload
	leaq	(%rdx,%rcx), %rdi
	movl	(%rdi,%rsi,4), %ebx
	leal	-2(%rbx), %edx
	cmpl	$13, %edx
	ja	LBB0_137
## %bb.136:                             ##   in Loop: Header=BB0_135 Depth=1
	incl	%ebx
	movl	$1, %ecx
	jmp	LBB0_139
	.p2align	4, 0x90
LBB0_137:                               ##   in Loop: Header=BB0_135 Depth=1
	addq	%rbp, %rcx
	addq	$-112, %rcx
	cmpl	%r12d, (%rcx,%rsi,4)
	jne	LBB0_140
## %bb.138:                             ##   in Loop: Header=BB0_135 Depth=1
	leal	1(%r11), %edx
	movl	$2, %ebx
	movl	$2, %ecx
	cmpl	%edx, %eax
	jle	LBB0_140
LBB0_139:                               ##   in Loop: Header=BB0_135 Depth=1
	leaq	(%rdi,%rsi,4), %rax
	movl	%ebx, (%rax)
	addl	%ecx, %r11d
LBB0_140:                               ##   in Loop: Header=BB0_135 Depth=1
	movl	$1, %esi
	cmpl	$1, %r9d
	jne	LBB0_134
## %bb.141:                             ##   in Loop: Header=BB0_135 Depth=1
	incl	%r8d
	xorl	%esi, %esi
	cmpl	%r15d, %r8d
	jl	LBB0_134
## %bb.142:
	movq	-120(%rbp), %rax                ## 8-byte Reload
	movl	48(%rax), %eax
LBB0_143:
	cmpl	%eax, %r11d
	movq	-128(%rbp), %rbx                ## 8-byte Reload
	movq	-120(%rbp), %r8                 ## 8-byte Reload
	movq	-176(%rbp), %r9                 ## 8-byte Reload
	jge	LBB0_150
## %bb.144:
	xorl	%eax, %eax
	xorl	%ecx, %ecx
	jmp	LBB0_146
	.p2align	4, 0x90
LBB0_145:                               ##   in Loop: Header=BB0_146 Depth=1
	movl	%edx, %ecx
	cmpl	48(%r8), %r11d
	jge	LBB0_150
LBB0_146:                               ## =>This Inner Loop Header: Depth=1
	movl	%ecx, %edx
	movslq	%eax, %rsi
	shlq	$5, %rdx
	addq	%rbx, %rdx
	movl	(%rdx,%rsi,4), %edi
	cmpl	$15, %edi
	jg	LBB0_148
## %bb.147:                             ##   in Loop: Header=BB0_146 Depth=1
	leaq	(%rdx,%rsi,4), %rdx
	incl	%edi
	movl	%edi, (%rdx)
	incl	%r11d
LBB0_148:                               ##   in Loop: Header=BB0_146 Depth=1
	movl	$1, %edx
	cmpl	$1, %ecx
	jne	LBB0_145
## %bb.149:                             ##   in Loop: Header=BB0_146 Depth=1
	incl	%eax
	xorl	%edx, %edx
	cmpl	%r9d, %eax
	jl	LBB0_145
LBB0_150:
	movq	___stack_chk_guard@GOTPCREL(%rip), %rax
	movq	(%rax), %rax
	cmpq	-48(%rbp), %rax
	jne	LBB0_154
## %bb.151:
	addq	$200, %rsp
	popq	%rbx
	popq	%r12
	popq	%r13
	popq	%r14
	popq	%r15
	popq	%rbp
	retq
LBB0_152:
	xorl	%ebx, %ebx
	testb	$1, %r9b
	jne	LBB0_118
	jmp	LBB0_119
LBB0_153:
	xorl	%ebx, %ebx
	testb	$1, %r9b
	jne	LBB0_128
	jmp	LBB0_129
LBB0_154:
	callq	___stack_chk_fail
	.cfi_endproc
                                        ## -- End function
	.comm	_MONO,8,3                       ## @MONO
	.comm	_DUAL_CHANNEL,8,3               ## @DUAL_CHANNEL
	.comm	_SNR,8,3                        ## @SNR
	.comm	_sbc_offset4,8,3                ## @sbc_offset4
	.comm	_sbc_offset8,8,3                ## @sbc_offset8
	.comm	_STEREO,8,3                     ## @STEREO
	.comm	_JOINT_STEREO,8,3               ## @JOINT_STEREO
.subsections_via_symbols

	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.globl	_ff_sbc_calculate_bits          ; -- Begin function ff_sbc_calculate_bits
	.p2align	2
_ff_sbc_calculate_bits:                 ; @ff_sbc_calculate_bits
	.cfi_startproc
; %bb.0:
	sub	sp, sp, #192
	.cfi_def_cfa_offset 192
	stp	x28, x27, [sp, #96]             ; 16-byte Folded Spill
	stp	x26, x25, [sp, #112]            ; 16-byte Folded Spill
	stp	x24, x23, [sp, #128]            ; 16-byte Folded Spill
	stp	x22, x21, [sp, #144]            ; 16-byte Folded Spill
	stp	x20, x19, [sp, #160]            ; 16-byte Folded Spill
	stp	x29, x30, [sp, #176]            ; 16-byte Folded Spill
	add	x29, sp, #176
	.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
	mov	x19, x1
	mov	x20, x0
Lloh0:
	adrp	x8, ___stack_chk_guard@GOTPAGE
Lloh1:
	ldr	x8, [x8, ___stack_chk_guard@GOTPAGEOFF]
Lloh2:
	ldr	x8, [x8]
	str	x8, [sp, #88]
	ldrsw	x24, [x0]
	and	x23, x24, #0xffffffff
	ldp	x17, x8, [x0, #8]
Lloh3:
	adrp	x9, _MONO@GOTPAGE
Lloh4:
	ldr	x9, [x9, _MONO@GOTPAGEOFF]
Lloh5:
	ldr	x9, [x9]
Lloh6:
	adrp	x10, _DUAL_CHANNEL@GOTPAGE
Lloh7:
	ldr	x10, [x10, _DUAL_CHANNEL@GOTPAGEOFF]
Lloh8:
	ldr	x10, [x10]
	cmp	x8, x9
	ccmp	x8, x10, #4, ne
	b.ne	LBB0_48
; %bb.1:
	ldr	w8, [x20, #24]
	cmp	w8, #1
	b.lt	LBB0_123
; %bb.2:
	mov	x26, #0
	lsl	x21, x23, #2
	and	x0, x23, #0xfffffff0
	and	x28, x21, #0x3ffffffc0
Lloh9:
	adrp	x1, _SNR@GOTPAGE
Lloh10:
	ldr	x1, [x1, _SNR@GOTPAGEOFF]
	mov	w27, #16
	movi.4s	v18, #16
	add	x25, sp, #24
	stp	x0, x17, [sp, #8]               ; 16-byte Folded Spill
	b	LBB0_4
LBB0_3:                                 ;   in Loop: Header=BB0_4 Depth=1
	add	x26, x26, #1
	ldrsw	x8, [x20, #24]
	add	x25, x25, #32
	add	x19, x19, #32
	cmp	x26, x8
	b.ge	LBB0_123
LBB0_4:                                 ; =>This Loop Header: Depth=1
                                        ;     Child Loop BB0_12 Depth 2
                                        ;     Child Loop BB0_16 Depth 2
                                        ;     Child Loop BB0_19 Depth 2
                                        ;     Child Loop BB0_22 Depth 2
                                        ;       Child Loop BB0_24 Depth 3
                                        ;     Child Loop BB0_31 Depth 2
                                        ;     Child Loop BB0_33 Depth 2
                                        ;     Child Loop BB0_39 Depth 2
                                        ;     Child Loop BB0_44 Depth 2
	ldr	x8, [x20, #32]
	ldr	x9, [x1]
	cmp	x8, x9
	b.ne	LBB0_8
; %bb.5:                                ;   in Loop: Header=BB0_4 Depth=1
	cmp	w23, #1
	b.lt	LBB0_14
; %bb.6:                                ;   in Loop: Header=BB0_4 Depth=1
	add	x8, sp, #24
	add	x0, x8, x26, lsl #5
	ldr	x8, [x20, #40]
	ldr	x22, [x8, x26, lsl #3]
	mov	x1, x22
	mov	x2, x21
	bl	_memcpy
	cmp	w24, #16
	b.hs	LBB0_15
; %bb.7:                                ;   in Loop: Header=BB0_4 Depth=1
	mov	x10, #0
	mov	w8, #0
	ldp	x0, x17, [sp, #8]               ; 16-byte Folded Reload
Lloh11:
	adrp	x1, _SNR@GOTPAGE
Lloh12:
	ldr	x1, [x1, _SNR@GOTPAGEOFF]
	movi.4s	v18, #16
	b	LBB0_18
LBB0_8:                                 ;   in Loop: Header=BB0_4 Depth=1
	cmp	w24, #1
	b.lt	LBB0_14
; %bb.9:                                ;   in Loop: Header=BB0_4 Depth=1
	mov	x9, #0
	mov	w8, #0
	ldr	x10, [x20, #40]
	ldr	x10, [x10, x26, lsl #3]
	cmp	w23, #4
Lloh13:
	adrp	x11, _sbc_offset4@GOTPAGE
Lloh14:
	ldr	x11, [x11, _sbc_offset4@GOTPAGEOFF]
Lloh15:
	adrp	x12, _sbc_offset8@GOTPAGE
Lloh16:
	ldr	x12, [x12, _sbc_offset8@GOTPAGEOFF]
	csel	x11, x11, x12, eq
	ldr	x11, [x11]
	b	LBB0_12
LBB0_10:                                ;   in Loop: Header=BB0_12 Depth=2
	ldr	x13, [x11, x17, lsl #3]
	ldr	w13, [x13, x9]
	sub	w12, w12, w13
	cmp	w12, #0
	cset	w13, gt
	lsr	w12, w12, w13
LBB0_11:                                ;   in Loop: Header=BB0_12 Depth=2
	str	w12, [x25, x9]
	cmp	w12, w8
	csel	w8, w12, w8, gt
	add	x9, x9, #4
	cmp	x21, x9
	b.eq	LBB0_20
LBB0_12:                                ;   Parent Loop BB0_4 Depth=1
                                        ; =>  This Inner Loop Header: Depth=2
	ldr	w12, [x10, x9]
	cbnz	w12, LBB0_10
; %bb.13:                               ;   in Loop: Header=BB0_12 Depth=2
	mov	w12, #-5
	b	LBB0_11
LBB0_14:                                ;   in Loop: Header=BB0_4 Depth=1
	mov	w8, #0
	b	LBB0_20
LBB0_15:                                ;   in Loop: Header=BB0_4 Depth=1
	add	x8, x22, #32
	movi.2d	v0, #0000000000000000
	ldp	x0, x17, [sp, #8]               ; 16-byte Folded Reload
	mov	x9, x0
	movi.2d	v1, #0000000000000000
	movi.2d	v2, #0000000000000000
	movi.2d	v3, #0000000000000000
LBB0_16:                                ;   Parent Loop BB0_4 Depth=1
                                        ; =>  This Inner Loop Header: Depth=2
	ldp	q4, q5, [x8, #-32]
	ldp	q6, q7, [x8], #64
	smax.4s	v0, v4, v0
	smax.4s	v1, v5, v1
	smax.4s	v2, v6, v2
	smax.4s	v3, v7, v3
	subs	x9, x9, #16
	b.ne	LBB0_16
; %bb.17:                               ;   in Loop: Header=BB0_4 Depth=1
	smax.4s	v0, v0, v1
	smax.4s	v0, v0, v2
	smax.4s	v0, v0, v3
	smaxv.4s	s0, v0
	fmov	w8, s0
	mov	x10, x0
	cmp	x0, x23
Lloh17:
	adrp	x1, _SNR@GOTPAGE
Lloh18:
	ldr	x1, [x1, _SNR@GOTPAGEOFF]
	movi.4s	v18, #16
	b.eq	LBB0_20
LBB0_18:                                ;   in Loop: Header=BB0_4 Depth=1
	add	x9, x22, x10, lsl #2
	sub	x10, x23, x10
LBB0_19:                                ;   Parent Loop BB0_4 Depth=1
                                        ; =>  This Inner Loop Header: Depth=2
	ldr	w11, [x9], #4
	cmp	w11, w8
	csel	w8, w11, w8, gt
	subs	x10, x10, #1
	b.ne	LBB0_19
LBB0_20:                                ;   in Loop: Header=BB0_4 Depth=1
	mov	w9, #0
	add	w11, w8, #1
	ldr	w8, [x20, #48]
	b	LBB0_22
LBB0_21:                                ;   in Loop: Header=BB0_22 Depth=2
	add	w9, w12, w9
	mov	x11, x10
LBB0_22:                                ;   Parent Loop BB0_4 Depth=1
                                        ; =>  This Loop Header: Depth=2
                                        ;       Child Loop BB0_24 Depth 3
	sub	w10, w11, #1
	cmp	w23, #1
	b.lt	LBB0_26
; %bb.23:                               ;   in Loop: Header=BB0_22 Depth=2
	mov	x13, #0
	mov	w12, #0
	add	w14, w11, #15
LBB0_24:                                ;   Parent Loop BB0_4 Depth=1
                                        ;     Parent Loop BB0_22 Depth=2
                                        ; =>    This Inner Loop Header: Depth=3
	ldr	w15, [x25, x13]
	add	w16, w12, #2
	cmp	w15, w11
	csel	w16, w16, w12, eq
	cmp	w15, w14
	ccmp	w15, w11, #4, lt
	csinc	w12, w16, w12, le
	add	x13, x13, #4
	cmp	x21, x13
	b.ne	LBB0_24
; %bb.25:                               ;   in Loop: Header=BB0_22 Depth=2
	add	w13, w12, w9
	cmp	w13, w8
	b.lt	LBB0_21
	b	LBB0_28
LBB0_26:                                ;   in Loop: Header=BB0_22 Depth=2
	cmp	w9, w8
	b.ge	LBB0_3
; %bb.27:                               ;   in Loop: Header=BB0_22 Depth=2
	mov	w12, #0
	b	LBB0_21
LBB0_28:                                ;   in Loop: Header=BB0_4 Depth=1
	sub	w11, w11, #2
	cmp	w13, w8
	csel	w8, w13, w9, eq
	csel	w10, w11, w10, eq
	add	w9, w10, #2
	cmp	w23, #16
	b.hs	LBB0_30
; %bb.29:                               ;   in Loop: Header=BB0_4 Depth=1
	mov	x11, #0
	b	LBB0_33
LBB0_30:                                ;   in Loop: Header=BB0_4 Depth=1
	mov	x11, #0
	dup.4s	v0, w9
	dup.4s	v1, w10
LBB0_31:                                ;   Parent Loop BB0_4 Depth=1
                                        ; =>  This Inner Loop Header: Depth=2
	add	x12, x25, x11
	ldp	q2, q3, [x12]
	ldp	q4, q5, [x12, #32]
	cmgt.4s	v6, v0, v2
	cmgt.4s	v7, v0, v3
	cmgt.4s	v16, v0, v4
	cmgt.4s	v17, v0, v5
	sub.4s	v2, v2, v1
	sub.4s	v3, v3, v1
	sub.4s	v4, v4, v1
	sub.4s	v5, v5, v1
	smin.4s	v2, v2, v18
	smin.4s	v3, v3, v18
	smin.4s	v4, v4, v18
	smin.4s	v5, v5, v18
	bic.16b	v2, v2, v6
	bic.16b	v3, v3, v7
	bic.16b	v4, v4, v16
	bic.16b	v5, v5, v17
	add	x12, x19, x11
	stp	q2, q3, [x12]
	stp	q4, q5, [x12, #32]
	add	x11, x11, #64
	cmp	x28, x11
	b.ne	LBB0_31
; %bb.32:                               ;   in Loop: Header=BB0_4 Depth=1
	mov	x11, x0
	cmp	x0, x23
	b.eq	LBB0_34
LBB0_33:                                ;   Parent Loop BB0_4 Depth=1
                                        ; =>  This Inner Loop Header: Depth=2
	lsl	x12, x11, #2
	ldr	w13, [x25, x12]
	sub	w14, w13, w10
	cmp	w14, #16
	csel	w14, w14, w27, lt
	cmp	w13, w9
	csel	w13, wzr, w14, lt
	str	w13, [x19, x12]
	add	x11, x11, #1
	cmp	x23, x11
	b.ne	LBB0_33
LBB0_34:                                ;   in Loop: Header=BB0_4 Depth=1
	ldr	w9, [x20, #48]
	cmp	w8, w9
	b.ge	LBB0_42
; %bb.35:                               ;   in Loop: Header=BB0_4 Depth=1
	mov	x11, #0
	add	w10, w10, #1
	b	LBB0_39
LBB0_36:                                ;   in Loop: Header=BB0_39 Depth=2
	add	w9, w12, #1
	mov	w12, #1
LBB0_37:                                ;   in Loop: Header=BB0_39 Depth=2
	str	w9, [x19, x11, lsl #2]
	add	w8, w8, w12
LBB0_38:                                ;   in Loop: Header=BB0_39 Depth=2
	add	x11, x11, #1
	ldr	w9, [x20, #48]
	cmp	w8, w9
	ccmp	x11, x24, #0, lt
	b.ge	LBB0_42
LBB0_39:                                ;   Parent Loop BB0_4 Depth=1
                                        ; =>  This Inner Loop Header: Depth=2
	ldr	w12, [x19, x11, lsl #2]
	sub	w13, w12, #2
	cmp	w13, #13
	b.ls	LBB0_36
; %bb.40:                               ;   in Loop: Header=BB0_39 Depth=2
	ldr	w12, [x25, x11, lsl #2]
	add	w13, w8, #1
	cmp	w12, w10
	ccmp	w9, w13, #4, eq
	b.le	LBB0_38
; %bb.41:                               ;   in Loop: Header=BB0_39 Depth=2
	mov	w9, #2
	mov	w12, #2
	b	LBB0_37
LBB0_42:                                ;   in Loop: Header=BB0_4 Depth=1
	cmp	w8, w9
	b.ge	LBB0_3
; %bb.43:                               ;   in Loop: Header=BB0_4 Depth=1
	mov	x10, #0
LBB0_44:                                ;   Parent Loop BB0_4 Depth=1
                                        ; =>  This Inner Loop Header: Depth=2
	ldr	w11, [x19, x10, lsl #2]
	cmp	w11, #15
	b.gt	LBB0_46
; %bb.45:                               ;   in Loop: Header=BB0_44 Depth=2
	add	w9, w11, #1
	str	w9, [x19, x10, lsl #2]
	add	w8, w8, #1
	ldr	w9, [x20, #48]
LBB0_46:                                ;   in Loop: Header=BB0_44 Depth=2
	cmp	w8, w9
	b.ge	LBB0_3
; %bb.47:                               ;   in Loop: Header=BB0_44 Depth=2
	add	x10, x10, #1
	cmp	x10, x24
	b.lt	LBB0_44
	b	LBB0_3
LBB0_48:
Lloh19:
	adrp	x9, _STEREO@GOTPAGE
Lloh20:
	ldr	x9, [x9, _STEREO@GOTPAGEOFF]
Lloh21:
	ldr	x9, [x9]
Lloh22:
	adrp	x10, _JOINT_STEREO@GOTPAGE
Lloh23:
	ldr	x10, [x10, _JOINT_STEREO@GOTPAGEOFF]
Lloh24:
	ldr	x10, [x10]
	cmp	x8, x9
	ccmp	x8, x10, #4, ne
	b.ne	LBB0_123
; %bb.49:
	ldr	x8, [x20, #32]
Lloh25:
	adrp	x9, _SNR@GOTPAGE
Lloh26:
	ldr	x9, [x9, _SNR@GOTPAGEOFF]
Lloh27:
	ldr	x9, [x9]
	cmp	x8, x9
	b.ne	LBB0_53
; %bb.50:
	cmp	w23, #1
	b.lt	LBB0_59
; %bb.51:
	lsl	x21, x23, #2
	ldr	x8, [x20, #40]
	ldr	x22, [x8]
	add	x0, sp, #24
	mov	x1, x22
	mov	x2, x21
	bl	_memcpy
	cmp	w23, #16
	b.hs	LBB0_65
; %bb.52:
	mov	x8, #0
	mov	w25, #0
	b	LBB0_68
LBB0_53:
Lloh28:
	adrp	x8, _sbc_offset4@GOTPAGE
Lloh29:
	ldr	x8, [x8, _sbc_offset4@GOTPAGEOFF]
Lloh30:
	adrp	x9, _sbc_offset8@GOTPAGE
Lloh31:
	ldr	x9, [x9, _sbc_offset8@GOTPAGEOFF]
	cmp	w23, #4
	csel	x8, x8, x9, eq
	cmp	w23, #0
	b.le	LBB0_59
; %bb.54:
	mov	x10, #0
	mov	w25, #0
	ldr	x8, [x8]
	ldr	x9, [x20, #40]
	ldr	x11, [x9]
	lsl	x9, x23, #2
	add	x12, sp, #24
	b	LBB0_57
LBB0_55:                                ;   in Loop: Header=BB0_57 Depth=1
	ldr	x14, [x8, x17, lsl #3]
	ldr	w14, [x14, x10]
	sub	w13, w13, w14
	cmp	w13, #0
	cset	w14, gt
	lsr	w13, w13, w14
LBB0_56:                                ;   in Loop: Header=BB0_57 Depth=1
	str	w13, [x12, x10]
	cmp	w13, w25
	csel	w25, w13, w25, gt
	add	x10, x10, #4
	cmp	x9, x10
	b.eq	LBB0_60
LBB0_57:                                ; =>This Inner Loop Header: Depth=1
	ldr	w13, [x11, x10]
	cbnz	w13, LBB0_55
; %bb.58:                               ;   in Loop: Header=BB0_57 Depth=1
	mov	w13, #-5
	b	LBB0_56
LBB0_59:
	mov	w25, #0
	b	LBB0_77
LBB0_60:
	mov	x10, #0
	ldr	x11, [x20, #40]
	ldr	x11, [x11, #8]
	add	x12, sp, #24
	add	x12, x12, #32
	b	LBB0_63
LBB0_61:                                ;   in Loop: Header=BB0_63 Depth=1
	ldr	x14, [x8, x17, lsl #3]
	ldr	w14, [x14, x10]
	sub	w13, w13, w14
	cmp	w13, #0
	cset	w14, gt
	lsr	w13, w13, w14
LBB0_62:                                ;   in Loop: Header=BB0_63 Depth=1
	str	w13, [x12, x10]
	cmp	w13, w25
	csel	w25, w13, w25, gt
	add	x10, x10, #4
	cmp	x9, x10
	b.eq	LBB0_77
LBB0_63:                                ; =>This Inner Loop Header: Depth=1
	ldr	w13, [x11, x10]
	cbnz	w13, LBB0_61
; %bb.64:                               ;   in Loop: Header=BB0_63 Depth=1
	mov	w13, #-5
	b	LBB0_62
LBB0_65:
	and	x8, x23, #0xfffffff0
	add	x9, x22, #32
	movi.2d	v0, #0000000000000000
	mov	x10, x8
	movi.2d	v1, #0000000000000000
	movi.2d	v2, #0000000000000000
	movi.2d	v3, #0000000000000000
LBB0_66:                                ; =>This Inner Loop Header: Depth=1
	ldp	q4, q5, [x9, #-32]
	ldp	q6, q7, [x9], #64
	smax.4s	v0, v4, v0
	smax.4s	v1, v5, v1
	smax.4s	v2, v6, v2
	smax.4s	v3, v7, v3
	subs	x10, x10, #16
	b.ne	LBB0_66
; %bb.67:
	smax.4s	v0, v0, v1
	smax.4s	v0, v0, v2
	smax.4s	v0, v0, v3
	smaxv.4s	s0, v0
	fmov	w25, s0
	cmp	x8, x23
	b.eq	LBB0_70
LBB0_68:
	add	x9, x22, x8, lsl #2
	sub	x8, x23, x8
LBB0_69:                                ; =>This Inner Loop Header: Depth=1
	ldr	w10, [x9], #4
	cmp	w10, w25
	csel	w25, w10, w25, gt
	subs	x8, x8, #1
	b.ne	LBB0_69
LBB0_70:
	add	x8, sp, #24
	add	x0, x8, #32
	ldr	x8, [x20, #40]
	ldr	x22, [x8, #8]
	mov	x1, x22
	mov	x2, x21
	bl	_memcpy
	cmp	w23, #16
	b.hs	LBB0_72
; %bb.71:
	mov	x8, #0
	b	LBB0_75
LBB0_72:
	and	x8, x23, #0xfffffff0
	add	x9, x22, #32
	dup.4s	v0, w25
	mov	x10, x8
	mov.16b	v1, v0
	mov.16b	v2, v0
	mov.16b	v3, v0
LBB0_73:                                ; =>This Inner Loop Header: Depth=1
	ldp	q4, q5, [x9, #-32]
	ldp	q6, q7, [x9], #64
	smax.4s	v0, v4, v0
	smax.4s	v1, v5, v1
	smax.4s	v2, v6, v2
	smax.4s	v3, v7, v3
	subs	x10, x10, #16
	b.ne	LBB0_73
; %bb.74:
	smax.4s	v0, v0, v1
	smax.4s	v0, v0, v2
	smax.4s	v0, v0, v3
	smaxv.4s	s0, v0
	fmov	w25, s0
	cmp	x8, x23
	b.eq	LBB0_77
LBB0_75:
	sub	x9, x23, x8
	add	x8, x22, x8, lsl #2
LBB0_76:                                ; =>This Inner Loop Header: Depth=1
	ldr	w10, [x8], #4
	cmp	w10, w25
	csel	w25, w10, w25, gt
	subs	x9, x9, #1
	b.ne	LBB0_76
LBB0_77:
	mov	w8, #0
	mov	w12, #0
	add	w11, w25, #1
	ldr	w9, [x20, #48]
	add	x10, sp, #24
	add	x13, x10, #32
	b	LBB0_80
LBB0_78:                                ;   in Loop: Header=BB0_80 Depth=1
	mov	w15, #0
LBB0_79:                                ;   in Loop: Header=BB0_80 Depth=1
	add	w8, w12, w8
	add	w10, w15, w8
	mov	x12, x15
	cmp	w10, w9
	b.ge	LBB0_86
LBB0_80:                                ; =>This Loop Header: Depth=1
                                        ;     Child Loop BB0_82 Depth 2
                                        ;     Child Loop BB0_85 Depth 2
	mov	x14, x11
	sub	w11, w11, #1
	cmp	w23, #1
	b.lt	LBB0_78
; %bb.81:                               ;   in Loop: Header=BB0_80 Depth=1
	mov	w15, #0
	add	w10, w14, #15
	add	x16, sp, #24
	mov	x17, x23
LBB0_82:                                ;   Parent Loop BB0_80 Depth=1
                                        ; =>  This Inner Loop Header: Depth=2
	ldr	w0, [x16], #4
	add	w1, w15, #2
	cmp	w0, w14
	csel	w1, w1, w15, eq
	cmp	w0, w10
	ccmp	w0, w14, #4, lt
	csinc	w15, w1, w15, le
	subs	x17, x17, #1
	b.ne	LBB0_82
; %bb.83:                               ;   in Loop: Header=BB0_80 Depth=1
	cmp	w23, #1
	b.lt	LBB0_79
; %bb.84:                               ;   in Loop: Header=BB0_80 Depth=1
	mov	x16, x13
	mov	x17, x23
LBB0_85:                                ;   Parent Loop BB0_80 Depth=1
                                        ; =>  This Inner Loop Header: Depth=2
	ldr	w0, [x16], #4
	add	w1, w15, #2
	cmp	w0, w14
	csel	w1, w1, w15, eq
	cmp	w0, w10
	ccmp	w0, w14, #4, lt
	csinc	w15, w1, w15, le
	subs	x17, x17, #1
	b.ne	LBB0_85
	b	LBB0_79
LBB0_86:
	sub	w12, w14, #2
	cmp	w10, w9
	csel	w11, w12, w11, eq
	cmp	w23, #1
	b.lt	LBB0_101
; %bb.87:
	add	w12, w11, #2
	dup.4s	v0, w12
	dup.4s	v1, w11
	cmp	w23, #16
	b.hs	LBB0_89
; %bb.88:
	mov	x13, #0
	b	LBB0_92
LBB0_89:
	and	x13, x23, #0xfffffff0
	add	x14, x19, #32
	add	x15, sp, #24
	add	x15, x15, #32
	movi.4s	v2, #16
	mov	x16, x13
LBB0_90:                                ; =>This Inner Loop Header: Depth=1
	ldp	q3, q4, [x15, #-32]
	ldp	q5, q6, [x15], #64
	cmgt.4s	v7, v0, v3
	cmgt.4s	v16, v0, v4
	cmgt.4s	v17, v0, v5
	cmgt.4s	v18, v0, v6
	sub.4s	v3, v3, v1
	sub.4s	v4, v4, v1
	sub.4s	v5, v5, v1
	sub.4s	v6, v6, v1
	smin.4s	v3, v3, v2
	smin.4s	v4, v4, v2
	smin.4s	v5, v5, v2
	smin.4s	v6, v6, v2
	bic.16b	v3, v3, v7
	bic.16b	v4, v4, v16
	bic.16b	v5, v5, v17
	stp	q3, q4, [x14, #-32]
	bic.16b	v3, v6, v18
	stp	q5, q3, [x14], #64
	subs	x16, x16, #16
	b.ne	LBB0_90
; %bb.91:
	cmp	x13, x23
	b.eq	LBB0_94
LBB0_92:
	lsl	x15, x13, #2
	add	x14, x19, x15
	add	x16, sp, #24
	add	x15, x16, x15
	sub	x13, x23, x13
	mov	w16, #16
LBB0_93:                                ; =>This Inner Loop Header: Depth=1
	ldr	w17, [x15], #4
	sub	w0, w17, w11
	cmp	w0, #16
	csel	w0, w0, w16, lt
	cmp	w17, w12
	csel	w17, wzr, w0, lt
	str	w17, [x14], #4
	subs	x13, x13, #1
	b.ne	LBB0_93
LBB0_94:
	cmp	w24, #16
	b.hs	LBB0_96
; %bb.95:
	mov	x13, #0
	b	LBB0_99
LBB0_96:
	and	x13, x23, #0xfffffff0
	add	x14, x19, #80
	add	x15, sp, #24
	add	x15, x15, #48
	movi.4s	v2, #16
	mov	x16, x13
LBB0_97:                                ; =>This Inner Loop Header: Depth=1
	ldp	q3, q4, [x15, #-16]
	ldp	q5, q6, [x15, #16]
	cmgt.4s	v7, v0, v3
	cmgt.4s	v16, v0, v4
	cmgt.4s	v17, v0, v5
	cmgt.4s	v18, v0, v6
	sub.4s	v3, v3, v1
	sub.4s	v4, v4, v1
	sub.4s	v5, v5, v1
	sub.4s	v6, v6, v1
	smin.4s	v3, v3, v2
	smin.4s	v4, v4, v2
	smin.4s	v5, v5, v2
	smin.4s	v6, v6, v2
	bic.16b	v3, v3, v7
	bic.16b	v4, v4, v16
	bic.16b	v5, v5, v17
	stp	q3, q4, [x14, #-48]
	bic.16b	v3, v6, v18
	stp	q5, q3, [x14, #-16]
	add	x14, x14, #64
	add	x15, x15, #64
	subs	x16, x16, #16
	b.ne	LBB0_97
; %bb.98:
	cmp	x13, x23
	b.eq	LBB0_101
LBB0_99:
	lsl	x15, x13, #2
	add	x14, x19, x15
	add	x14, x14, #32
	sub	x13, x23, x13
	add	x16, sp, #24
	add	x15, x16, x15
	add	x15, x15, #32
	mov	w16, #16
LBB0_100:                               ; =>This Inner Loop Header: Depth=1
	ldr	w17, [x15], #4
	sub	w0, w17, w11
	cmp	w0, #16
	csel	w0, w0, w16, lt
	cmp	w17, w12
	csel	w17, wzr, w0, lt
	str	w17, [x14], #4
	subs	x13, x13, #1
	b.ne	LBB0_100
LBB0_101:
	cmp	w10, w9
	csel	w8, w10, w8, eq
	ldr	w12, [x20, #48]
	cmp	w8, w12
	b.ge	LBB0_114
; %bb.102:
	mov	w9, #0
	mov	w13, #0
	add	w10, w11, #1
	add	x11, sp, #24
	b	LBB0_105
LBB0_103:                               ;   in Loop: Header=BB0_105 Depth=1
	mov	w13, #1
LBB0_104:                               ;   in Loop: Header=BB0_105 Depth=1
	ldr	w12, [x20, #48]
	cmp	w8, w12
	b.ge	LBB0_114
LBB0_105:                               ; =>This Inner Loop Header: Depth=1
	mov	w13, w13
	add	x14, x19, x13, lsl #5
	add	x14, x14, w9, sxtw #2
	ldr	w15, [x14]
	sub	w16, w15, #2
	cmp	w16, #13
	b.hi	LBB0_107
; %bb.106:                              ;   in Loop: Header=BB0_105 Depth=1
	add	w12, w15, #1
	mov	w15, #1
	b	LBB0_109
LBB0_107:                               ;   in Loop: Header=BB0_105 Depth=1
	sxtw	x15, w9
	add	x16, x11, x13, lsl #5
	ldr	w15, [x16, x15, lsl #2]
	add	w16, w8, #1
	cmp	w15, w10
	ccmp	w12, w16, #4, eq
	b.le	LBB0_110
; %bb.108:                              ;   in Loop: Header=BB0_105 Depth=1
	mov	w12, #2
	mov	w15, #2
LBB0_109:                               ;   in Loop: Header=BB0_105 Depth=1
	str	w12, [x14]
	add	w8, w8, w15
LBB0_110:                               ;   in Loop: Header=BB0_105 Depth=1
	cmp	w13, #1
	b.ne	LBB0_103
; %bb.111:                              ;   in Loop: Header=BB0_105 Depth=1
	add	w9, w9, #1
	cmp	w9, w23
	b.ge	LBB0_113
; %bb.112:                              ;   in Loop: Header=BB0_105 Depth=1
	mov	w13, #0
	b	LBB0_104
LBB0_113:
	ldr	w12, [x20, #48]
LBB0_114:
	cmp	w8, w12
	b.ge	LBB0_123
; %bb.115:
	mov	w9, #0
	mov	w10, #0
	b	LBB0_118
LBB0_116:                               ;   in Loop: Header=BB0_118 Depth=1
	mov	w10, #1
LBB0_117:                               ;   in Loop: Header=BB0_118 Depth=1
	ldr	w11, [x20, #48]
	cmp	w8, w11
	b.ge	LBB0_123
LBB0_118:                               ; =>This Inner Loop Header: Depth=1
	mov	w11, w10
	add	x11, x19, x11, lsl #5
	add	x11, x11, w9, sxtw #2
	ldr	w12, [x11]
	cmp	w12, #15
	b.gt	LBB0_120
; %bb.119:                              ;   in Loop: Header=BB0_118 Depth=1
	add	w12, w12, #1
	str	w12, [x11]
	add	w8, w8, #1
LBB0_120:                               ;   in Loop: Header=BB0_118 Depth=1
	cmp	w10, #1
	b.ne	LBB0_116
; %bb.121:                              ;   in Loop: Header=BB0_118 Depth=1
	add	w9, w9, #1
	cmp	w9, w23
	b.ge	LBB0_123
; %bb.122:                              ;   in Loop: Header=BB0_118 Depth=1
	mov	w10, #0
	b	LBB0_117
LBB0_123:
	ldr	x8, [sp, #88]
Lloh32:
	adrp	x9, ___stack_chk_guard@GOTPAGE
Lloh33:
	ldr	x9, [x9, ___stack_chk_guard@GOTPAGEOFF]
Lloh34:
	ldr	x9, [x9]
	cmp	x9, x8
	b.ne	LBB0_125
; %bb.124:
	ldp	x29, x30, [sp, #176]            ; 16-byte Folded Reload
	ldp	x20, x19, [sp, #160]            ; 16-byte Folded Reload
	ldp	x22, x21, [sp, #144]            ; 16-byte Folded Reload
	ldp	x24, x23, [sp, #128]            ; 16-byte Folded Reload
	ldp	x26, x25, [sp, #112]            ; 16-byte Folded Reload
	ldp	x28, x27, [sp, #96]             ; 16-byte Folded Reload
	add	sp, sp, #192
	ret
LBB0_125:
	bl	___stack_chk_fail
	.loh AdrpLdrGotLdr	Lloh6, Lloh7, Lloh8
	.loh AdrpLdrGotLdr	Lloh3, Lloh4, Lloh5
	.loh AdrpLdrGotLdr	Lloh0, Lloh1, Lloh2
	.loh AdrpLdrGot	Lloh9, Lloh10
	.loh AdrpLdrGot	Lloh11, Lloh12
	.loh AdrpLdrGot	Lloh15, Lloh16
	.loh AdrpLdrGot	Lloh13, Lloh14
	.loh AdrpLdrGot	Lloh17, Lloh18
	.loh AdrpLdrGotLdr	Lloh22, Lloh23, Lloh24
	.loh AdrpLdrGotLdr	Lloh19, Lloh20, Lloh21
	.loh AdrpLdrGotLdr	Lloh25, Lloh26, Lloh27
	.loh AdrpLdrGot	Lloh30, Lloh31
	.loh AdrpLdrGot	Lloh28, Lloh29
	.loh AdrpLdrGotLdr	Lloh32, Lloh33, Lloh34
	.cfi_endproc
                                        ; -- End function
	.comm	_MONO,8,3                       ; @MONO
	.comm	_DUAL_CHANNEL,8,3               ; @DUAL_CHANNEL
	.comm	_SNR,8,3                        ; @SNR
	.comm	_sbc_offset4,8,3                ; @sbc_offset4
	.comm	_sbc_offset8,8,3                ; @sbc_offset8
	.comm	_STEREO,8,3                     ; @STEREO
	.comm	_JOINT_STEREO,8,3               ; @JOINT_STEREO
.subsections_via_symbols
