	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	4, 0x90                         ## -- Begin function derive_spatial_merge_candidates
_derive_spatial_merge_candidates:       ## @derive_spatial_merge_candidates
	.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	$120, %rsp
	.cfi_offset %rbx, -56
	.cfi_offset %r12, -48
	.cfi_offset %r13, -40
	.cfi_offset %r14, -32
	.cfi_offset %r15, -24
                                        ## kill: def $r8d killed $r8d def $r8
	movq	%r8, -104(%rbp)                 ## 8-byte Spill
                                        ## kill: def $ecx killed $ecx def $rcx
                                        ## kill: def $edx killed $edx def $rdx
	movq	%rdx, -72(%rbp)                 ## 8-byte Spill
	movl	%esi, %r8d
	movl	24(%rbp), %r13d
	movl	16(%rbp), %r14d
	movq	48(%rdi), %r12
	movq	40(%rdi), %rax
	movq	8(%rax), %rax
	movq	%rax, -152(%rbp)                ## 8-byte Spill
	movl	8(%r12), %eax
	movl	%eax, -80(%rbp)                 ## 4-byte Spill
	movl	12(%r12), %r15d
	movl	16(%r12), %eax
	movl	%eax, -76(%rbp)                 ## 4-byte Spill
	movl	20(%r12), %eax
	movl	%eax, -60(%rbp)                 ## 4-byte Spill
	movl	24(%r12), %eax
	movl	%eax, -136(%rbp)                ## 4-byte Spill
	movq	_HEVC_SLICE_P@GOTPCREL(%rip), %rsi
	movq	(%rdi), %rdx
	movq	8(%rdi), %rax
	movl	(%rax), %ebx
	cmpq	(%rsi), %rdx
	movq	%rdi, -48(%rbp)                 ## 8-byte Spill
	movq	%r8, %rdx
	movq	%r8, -56(%rbp)                  ## 8-byte Spill
	movq	%rcx, -96(%rbp)                 ## 8-byte Spill
	jne	LBB0_2
## %bb.1:
	movl	%ebx, -132(%rbp)                ## 4-byte Spill
	jmp	LBB0_3
LBB0_2:
	movl	4(%rax), %esi
	movl	%ebx, %edi
	callq	_FFMIN
	movq	-56(%rbp), %r8                  ## 8-byte Reload
	movq	-48(%rbp), %rdi                 ## 8-byte Reload
	movl	%eax, -132(%rbp)                ## 4-byte Spill
LBB0_3:
	leal	-1(%r8), %eax
	movl	%eax, -88(%rbp)                 ## 4-byte Spill
	movq	-72(%rbp), %rbx                 ## 8-byte Reload
	leal	-1(%rbx), %eax
	movl	%eax, -84(%rbp)                 ## 4-byte Spill
	xorl	$1, %r13d
	orl	%r13d, %r14d
	sete	%r13b
	jne	LBB0_7
## %bb.4:
	movq	(%r12), %rax
	movq	_PART_Nx2N@GOTPCREL(%rip), %rcx
	xorl	%edx, %edx
	cmpq	(%rcx), %rax
	je	LBB0_80
## %bb.5:
	movq	_PART_nLx2N@GOTPCREL(%rip), %rcx
	cmpq	(%rcx), %rax
	je	LBB0_80
## %bb.6:
	movq	_PART_nRx2N@GOTPCREL(%rip), %rcx
	movl	$0, -64(%rbp)                   ## 4-byte Folded Spill
	cmpq	(%rcx), %rax
	je	LBB0_11
LBB0_7:
	movq	-104(%rbp), %rax                ## 8-byte Reload
	leal	(%rax,%rbx), %edx
	decl	%edx
	movl	-88(%rbp), %esi                 ## 4-byte Reload
	movl	%r8d, %ecx
	movl	%ebx, %r8d
	callq	_is_diff_mer
	movl	$0, -64(%rbp)                   ## 4-byte Folded Spill
	testq	%rax, %rax
	je	LBB0_41
## %bb.8:
	xorl	%edx, %edx
	movq	40(%rbp), %r15
LBB0_9:
	testb	%r13b, %r13b
	je	LBB0_14
## %bb.10:
	movq	(%r12), %rax
	movq	-72(%rbp), %rbx                 ## 8-byte Reload
	jmp	LBB0_11
LBB0_14:
	movq	-96(%rbp), %rsi                 ## 8-byte Reload
	movq	-72(%rbp), %rbx                 ## 8-byte Reload
	movl	%edx, %r13d
	jmp	LBB0_15
LBB0_41:
	movq	_A1@GOTPCREL(%rip), %rbx
	movl	(%rbx), %esi
	movl	%r15d, %edi
	callq	_AVAILABLE
	movl	$0, %edx
	testl	%eax, %eax
	movq	40(%rbp), %r15
	je	LBB0_9
## %bb.42:
	movl	%eax, %r14d
	movl	(%rbx), %esi
	leaq	-128(%rbp), %rdi
	callq	_TAB_MVF_PU
	movq	-112(%rbp), %rax
	movq	%rax, 16(%r15)
	movups	-128(%rbp), %xmm0
	movups	%xmm0, (%r15)
	cmpl	$0, 32(%rbp)
	je	LBB0_87
## %bb.43:
	movl	$1, %edx
	movl	%r14d, -64(%rbp)                ## 4-byte Spill
	jmp	LBB0_9
LBB0_80:
	movl	$0, -64(%rbp)                   ## 4-byte Folded Spill
LBB0_11:
	movq	_PART_2NxN@GOTPCREL(%rip), %rcx
	xorl	%edi, %edi
	cmpq	(%rcx), %rax
	movq	-96(%rbp), %rsi                 ## 8-byte Reload
	je	LBB0_78
## %bb.12:
	movq	_PART_2NxnU@GOTPCREL(%rip), %rcx
	cmpq	(%rcx), %rax
	movq	40(%rbp), %r15
	movl	%edx, %r13d
	je	LBB0_17
## %bb.13:
	movq	_PART_2NxnD@GOTPCREL(%rip), %rcx
	cmpq	(%rcx), %rax
	je	LBB0_17
LBB0_15:
	movq	-56(%rbp), %rcx                 ## 8-byte Reload
	movq	%rsi, %r12
	addl	%ecx, %esi
	decl	%esi
	movq	-48(%rbp), %rdi                 ## 8-byte Reload
	movl	-84(%rbp), %edx                 ## 4-byte Reload
                                        ## kill: def $ecx killed $ecx killed $rcx
	movl	%ebx, %r8d
	callq	_is_diff_mer
	testq	%rax, %rax
	je	LBB0_44
LBB0_16:
	xorl	%edi, %edi
	movq	%r12, %rsi
LBB0_17:
	movl	%edi, -60(%rbp)                 ## 4-byte Spill
	movq	%rsi, %r12
	movq	_B0@GOTPCREL(%rip), %r14
	movl	(%r14), %esi
	movl	-136(%rbp), %edi                ## 4-byte Reload
	callq	_AVAILABLE
	testl	%eax, %eax
	je	LBB0_26
## %bb.18:
	movq	-56(%rbp), %rax                 ## 8-byte Reload
	leal	(%r12,%rax), %ebx
	movq	-48(%rbp), %rax                 ## 8-byte Reload
	movq	32(%rax), %rax
	cmpl	4(%rax), %ebx
	jge	LBB0_25
## %bb.19:
	movl	(%r14), %edi
	callq	_PRED_BLOCK_AVAILABLE
	testq	%rax, %rax
	je	LBB0_25
## %bb.20:
	movq	-48(%rbp), %rdi                 ## 8-byte Reload
	movl	%ebx, %esi
	movl	-84(%rbp), %edx                 ## 4-byte Reload
	movq	-56(%rbp), %rcx                 ## 8-byte Reload
                                        ## kill: def $ecx killed $ecx killed $rcx
	movq	-72(%rbp), %rbx                 ## 8-byte Reload
	movl	%ebx, %r8d
	callq	_is_diff_mer
	testq	%rax, %rax
	jne	LBB0_26
## %bb.21:
	cmpl	$0, -60(%rbp)                   ## 4-byte Folded Reload
	je	LBB0_23
## %bb.22:
	movl	(%r14), %edi
	movq	_B1@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	callq	_COMPARE_MV_REFIDX
	testq	%rax, %rax
	jne	LBB0_26
LBB0_23:
	movl	%r13d, %eax
	leaq	(%rax,%rax,2), %rbx
	movl	(%r14), %esi
	leaq	-128(%rbp), %rdi
	callq	_TAB_MVF_PU
	movq	-112(%rbp), %rax
	movq	%rax, 16(%r15,%rbx,8)
	movups	-128(%rbp), %xmm0
	movups	%xmm0, (%r15,%rbx,8)
	cmpl	32(%rbp), %r13d
	je	LBB0_87
## %bb.24:
	incl	%r13d
	movq	-96(%rbp), %r12                 ## 8-byte Reload
LBB0_25:
	movq	-72(%rbp), %rbx                 ## 8-byte Reload
LBB0_26:
	movl	-80(%rbp), %edi                 ## 4-byte Reload
	movq	_A0@GOTPCREL(%rip), %r14
	movl	(%r14), %esi
	callq	_AVAILABLE
	testl	%eax, %eax
	je	LBB0_30
## %bb.27:
	movq	-104(%rbp), %rax                ## 8-byte Reload
	addl	%eax, %ebx
	movq	-48(%rbp), %rax                 ## 8-byte Reload
	movq	32(%rax), %rax
	cmpl	8(%rax), %ebx
	jge	LBB0_30
## %bb.28:
	movl	(%r14), %edi
	callq	_PRED_BLOCK_AVAILABLE
	testq	%rax, %rax
	je	LBB0_30
## %bb.29:
	movq	-48(%rbp), %rdi                 ## 8-byte Reload
	movl	-88(%rbp), %esi                 ## 4-byte Reload
	movl	%ebx, %edx
	movq	-56(%rbp), %rcx                 ## 8-byte Reload
                                        ## kill: def $ecx killed $ecx killed $rcx
	movq	-72(%rbp), %r8                  ## 8-byte Reload
                                        ## kill: def $r8d killed $r8d killed $r8
	callq	_is_diff_mer
	testq	%rax, %rax
	je	LBB0_81
LBB0_30:
	movl	-76(%rbp), %edi                 ## 4-byte Reload
	movq	_B2@GOTPCREL(%rip), %r14
	movl	(%r14), %esi
	callq	_AVAILABLE
	testl	%eax, %eax
	je	LBB0_32
## %bb.31:
	movq	-48(%rbp), %rdi                 ## 8-byte Reload
	movl	-88(%rbp), %esi                 ## 4-byte Reload
	movl	-84(%rbp), %edx                 ## 4-byte Reload
	movq	-56(%rbp), %rcx                 ## 8-byte Reload
                                        ## kill: def $ecx killed $ecx killed $rcx
	movq	-72(%rbp), %r8                  ## 8-byte Reload
                                        ## kill: def $r8d killed $r8d killed $r8
	callq	_is_diff_mer
	testq	%rax, %rax
	je	LBB0_48
LBB0_32:
	movl	%r13d, %ebx
	movq	-48(%rbp), %rdi                 ## 8-byte Reload
LBB0_33:
	movq	-56(%rbp), %rsi                 ## 8-byte Reload
LBB0_34:
	cmpq	$0, 24(%rdi)
	je	LBB0_55
## %bb.35:
	cmpl	16(%rdi), %ebx
	jge	LBB0_55
## %bb.36:
	movq	%rbx, -56(%rbp)                 ## 8-byte Spill
	movq	$0, -128(%rbp)
	movq	$0, -144(%rbp)
	leaq	-128(%rbp), %rax
	xorl	%r15d, %r15d
	movq	-48(%rbp), %rdi                 ## 8-byte Reload
	movq	-72(%rbp), %r14                 ## 8-byte Reload
	movl	%r14d, %edx
	movl	%r12d, %ecx
	movq	%rsi, %rbx
	movq	-104(%rbp), %r13                ## 8-byte Reload
	movl	%r13d, %r8d
	xorl	%r9d, %r9d
	pushq	$0
	pushq	%rax
	callq	_temporal_luma_motion_vector
	movq	-48(%rbp), %rdi                 ## 8-byte Reload
	addq	$16, %rsp
	movl	%eax, %edx
	movq	(%rdi), %rax
	movq	_HEVC_SLICE_B@GOTPCREL(%rip), %rcx
	cmpq	(%rcx), %rax
	jne	LBB0_38
## %bb.37:
	leaq	-144(%rbp), %rax
	movq	-48(%rbp), %rdi                 ## 8-byte Reload
	movl	%ebx, %esi
	movq	%rdx, %rbx
	movl	%r14d, %edx
	movl	%r12d, %ecx
	movl	%r13d, %r8d
	xorl	%r9d, %r9d
	pushq	$1
	pushq	%rax
	callq	_temporal_luma_motion_vector
	movq	%rbx, %rdx
	movq	-48(%rbp), %rdi                 ## 8-byte Reload
	addq	$16, %rsp
	movl	%eax, %r15d
LBB0_38:
	movl	%edx, %eax
	orl	%r15d, %eax
	movq	-56(%rbp), %rbx                 ## 8-byte Reload
	je	LBB0_54
## %bb.39:
	leal	(%rdx,%r15,2), %eax
	movl	%ebx, %ecx
	leaq	(%rcx,%rcx,2), %r14
	movq	40(%rbp), %r15
	movl	%eax, (%r15,%r14,8)
	movq	8(%r15,%r14,8), %rdi
	callq	_AV_ZERO16
	movq	-56(%rbp), %rbx                 ## 8-byte Reload
	movq	-48(%rbp), %rdi                 ## 8-byte Reload
	xorl	%eax, %eax
	movq	-128(%rbp), %rcx
	movq	16(%r15,%r14,8), %rdx
	movq	%rcx, (%rdx)
	movq	-144(%rbp), %rcx
	movq	16(%r15,%r14,8), %rdx
	movq	%rcx, 8(%rdx)
	cmpl	32(%rbp), %ebx
	setne	%cl
	je	LBB0_87
## %bb.40:
	movb	%cl, %al
	addl	%eax, %ebx
	jmp	LBB0_55
LBB0_44:
	movq	_B1@GOTPCREL(%rip), %r14
	movl	(%r14), %esi
	movl	-60(%rbp), %edi                 ## 4-byte Reload
	callq	_AVAILABLE
	testl	%eax, %eax
	je	LBB0_16
## %bb.45:
	movl	%eax, -60(%rbp)                 ## 4-byte Spill
	cmpl	$0, -64(%rbp)                   ## 4-byte Folded Reload
	je	LBB0_75
## %bb.46:
	movl	(%r14), %edi
	movq	_A1@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	callq	_COMPARE_MV_REFIDX
	testq	%rax, %rax
	je	LBB0_75
## %bb.47:
	movq	%r12, %rsi
	jmp	LBB0_77
LBB0_48:
	cmpl	$0, -64(%rbp)                   ## 4-byte Folded Reload
	je	LBB0_50
## %bb.49:
	movl	(%r14), %edi
	movq	_A1@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	callq	_COMPARE_MV_REFIDX
	testq	%rax, %rax
	jne	LBB0_32
LBB0_50:
	cmpl	$0, -60(%rbp)                   ## 4-byte Folded Reload
	je	LBB0_85
## %bb.51:
	movl	(%r14), %edi
	movq	_B1@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	callq	_COMPARE_MV_REFIDX
	testq	%rax, %rax
	jne	LBB0_32
## %bb.52:
	cmpl	$4, %r13d
	movq	-48(%rbp), %rdi                 ## 8-byte Reload
	movq	-56(%rbp), %rsi                 ## 8-byte Reload
	jne	LBB0_86
## %bb.53:
	movl	%r13d, %ebx
	jmp	LBB0_34
LBB0_54:
	movq	40(%rbp), %r15
LBB0_55:
	movq	(%rdi), %rcx
	movq	_HEVC_SLICE_B@GOTPCREL(%rip), %rdx
	movl	16(%rdi), %eax
	cmpq	(%rdx), %rcx
	jne	LBB0_71
## %bb.56:
	cmpl	$2, %ebx
	jb	LBB0_71
## %bb.57:
	cmpl	%eax, %ebx
	jge	LBB0_71
## %bb.58:
	leal	-1(%rbx), %r8d
	imull	%ebx, %r8d
	testl	%r8d, %r8d
	je	LBB0_71
## %bb.59:
	decq	%r8
	xorl	%r14d, %r14d
	movq	_l0_l1_cand_idx@GOTPCREL(%rip), %r9
	movq	_PF_L0@GOTPCREL(%rip), %rsi
	movq	%r8, -72(%rbp)                  ## 8-byte Spill
	.p2align	4, 0x90
LBB0_60:                                ## =>This Inner Loop Header: Depth=1
	movq	(%r9), %rax
	movq	(%rax,%r14,8), %rcx
	movslq	(%rcx), %rax
	leaq	(%rax,%rax,2), %rax
	movl	(%rsi), %edx
	testl	%edx, (%r15,%rax,8)
	je	LBB0_69
## %bb.61:                              ##   in Loop: Header=BB0_60 Depth=1
	movslq	4(%rcx), %rcx
	leaq	(%rcx,%rcx,2), %rcx
	movq	_PF_L1@GOTPCREL(%rip), %rdx
	movl	(%rdx), %edx
	testl	%edx, (%r15,%rcx,8)
	je	LBB0_69
## %bb.62:                              ##   in Loop: Header=BB0_60 Depth=1
	movq	%r15, %rdx
	movq	8(%r15,%rax,8), %r15
	movq	16(%rdx,%rax,8), %rsi
	movq	8(%rdx,%rcx,8), %r13
	movq	16(%rdx,%rcx,8), %r12
	movq	(%r15), %rax
	movq	-152(%rbp), %rdx                ## 8-byte Reload
	movq	(%rdx), %rcx
	movq	8(%rdx), %rdx
	movq	(%rcx,%rax,8), %rcx
	movq	8(%r13), %rdi
	cmpq	(%rdx,%rdi,8), %rcx
	jne	LBB0_66
## %bb.63:                              ##   in Loop: Header=BB0_60 Depth=1
	movq	%rsi, -104(%rbp)                ## 8-byte Spill
	movq	%rsi, %rdi
	callq	_AV_RN32A
	movq	%rax, -56(%rbp)                 ## 8-byte Spill
	leaq	8(%r12), %rdi
	callq	_AV_RN32A
	cmpq	%rax, -56(%rbp)                 ## 8-byte Folded Reload
	jne	LBB0_65
## %bb.64:                              ##   in Loop: Header=BB0_60 Depth=1
	movq	-48(%rbp), %rdi                 ## 8-byte Reload
	movq	40(%rbp), %r15
	jmp	LBB0_68
LBB0_65:                                ##   in Loop: Header=BB0_60 Depth=1
	movq	(%r15), %rax
	movq	-104(%rbp), %rsi                ## 8-byte Reload
LBB0_66:                                ##   in Loop: Header=BB0_60 Depth=1
	movslq	%ebx, %rcx
	movq	%rcx, -56(%rbp)                 ## 8-byte Spill
	leaq	(%rcx,%rcx,2), %r15
	movq	40(%rbp), %rcx
	movq	8(%rcx,%r15,8), %rcx
	movq	%rax, (%rcx)
	movq	8(%r13), %rax
	movq	%rax, 8(%rcx)
	movq	_PF_BI@GOTPCREL(%rip), %rax
	movl	(%rax), %eax
	movq	40(%rbp), %rcx
	movl	%eax, (%rcx,%r15,8)
	movq	40(%rbp), %rax
	movq	16(%rax,%r15,8), %rdi
	callq	_AV_COPY32
	movq	40(%rbp), %rax
	movq	16(%rax,%r15,8), %rdi
	movq	40(%rbp), %r15
	addq	$8, %rdi
	addq	$8, %r12
	movq	%r12, %rsi
	callq	_AV_COPY32
	xorl	%eax, %eax
	movq	-56(%rbp), %rcx                 ## 8-byte Reload
	cmpl	32(%rbp), %ecx
	setne	%cl
	movq	-48(%rbp), %rdi                 ## 8-byte Reload
	je	LBB0_87
## %bb.67:                              ##   in Loop: Header=BB0_60 Depth=1
	movb	%cl, %al
	addl	%eax, %ebx
LBB0_68:                                ##   in Loop: Header=BB0_60 Depth=1
	movq	-72(%rbp), %r8                  ## 8-byte Reload
	movq	_l0_l1_cand_idx@GOTPCREL(%rip), %r9
	movq	_PF_L0@GOTPCREL(%rip), %rsi
LBB0_69:                                ##   in Loop: Header=BB0_60 Depth=1
	movl	16(%rdi), %eax
	cmpl	%eax, %ebx
	jge	LBB0_71
## %bb.70:                              ##   in Loop: Header=BB0_60 Depth=1
	leaq	1(%r14), %rcx
	cmpq	%r14, %r8
	movq	%rcx, %r14
	jne	LBB0_60
LBB0_71:
	cmpl	%eax, %ebx
	jge	LBB0_87
## %bb.72:
	movslq	%ebx, %r14
	movq	%r15, %rcx
	movslq	32(%rbp), %r15
	subq	%r14, %r15
	leaq	(%r14,%r14,2), %rax
	leaq	(%rcx,%rax,8), %r12
	addq	$16, %r12
	xorl	%ebx, %ebx
	movq	_PF_L0@GOTPCREL(%rip), %r13
	.p2align	4, 0x90
LBB0_73:                                ## =>This Inner Loop Header: Depth=1
	movq	(%rdi), %rax
	xorl	%ecx, %ecx
	movq	_HEVC_SLICE_B@GOTPCREL(%rip), %rdx
	cmpq	(%rdx), %rax
	sete	%cl
	addl	%ecx, %ecx
	addl	(%r13), %ecx
	movl	%ecx, -16(%r12)
	movq	(%r12), %rdi
	callq	_AV_ZERO32
	movq	(%r12), %rdi
	addq	$8, %rdi
	callq	_AV_ZERO32
	movq	-48(%rbp), %rdi                 ## 8-byte Reload
	cmpl	-132(%rbp), %ebx                ## 4-byte Folded Reload
	movl	$0, %eax
	cmovll	%ebx, %eax
	movq	-8(%r12), %rcx
	movq	%rax, (%rcx)
	movq	%rax, 8(%rcx)
	cmpq	%rbx, %r15
	je	LBB0_87
## %bb.74:                              ##   in Loop: Header=BB0_73 Depth=1
	movslq	16(%rdi), %rax
	addq	$24, %r12
	leaq	(%r14,%rbx), %rcx
	incq	%rcx
	incq	%rbx
	cmpq	%rax, %rcx
	jl	LBB0_73
	jmp	LBB0_87
LBB0_75:
	movl	%r13d, %eax
	leaq	(%rax,%rax,2), %rbx
	movl	(%r14), %esi
	leaq	-128(%rbp), %rdi
	callq	_TAB_MVF_PU
	movq	-112(%rbp), %rax
	movq	%rax, 16(%r15,%rbx,8)
	movups	-128(%rbp), %xmm0
	movups	%xmm0, (%r15,%rbx,8)
	cmpl	32(%rbp), %r13d
	je	LBB0_87
## %bb.76:
	incl	%r13d
	movq	-96(%rbp), %rsi                 ## 8-byte Reload
	movq	-72(%rbp), %rbx                 ## 8-byte Reload
LBB0_77:
	movl	-60(%rbp), %edi                 ## 4-byte Reload
	jmp	LBB0_17
LBB0_78:
	movq	40(%rbp), %r15
	movl	%edx, %r13d
	jmp	LBB0_17
LBB0_81:
	cmpl	$0, -64(%rbp)                   ## 4-byte Folded Reload
	je	LBB0_83
## %bb.82:
	movl	(%r14), %edi
	movq	_A1@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	callq	_COMPARE_MV_REFIDX
	testq	%rax, %rax
	jne	LBB0_30
LBB0_83:
	movl	%r13d, %eax
	leaq	(%rax,%rax,2), %rbx
	movl	(%r14), %esi
	leaq	-128(%rbp), %rdi
	callq	_TAB_MVF_PU
	movq	-112(%rbp), %rax
	movq	%rax, 16(%r15,%rbx,8)
	movups	-128(%rbp), %xmm0
	movups	%xmm0, (%r15,%rbx,8)
	cmpl	32(%rbp), %r13d
	je	LBB0_87
## %bb.84:
	incl	%r13d
	movq	-96(%rbp), %r12                 ## 8-byte Reload
	jmp	LBB0_30
LBB0_85:
	movl	$4, %ebx
	cmpl	$4, %r13d
	movq	-48(%rbp), %rdi                 ## 8-byte Reload
	movq	-56(%rbp), %rsi                 ## 8-byte Reload
	je	LBB0_34
LBB0_86:
	movl	%r13d, %eax
	leaq	(%rax,%rax,2), %rbx
	movl	(%r14), %esi
	leaq	-128(%rbp), %rdi
	callq	_TAB_MVF_PU
	movq	-48(%rbp), %rdi                 ## 8-byte Reload
	movq	-112(%rbp), %rax
	movq	%rax, 16(%r15,%rbx,8)
	movups	-128(%rbp), %xmm0
	movups	%xmm0, (%r15,%rbx,8)
	cmpl	32(%rbp), %r13d
	jne	LBB0_88
LBB0_87:
	addq	$120, %rsp
	popq	%rbx
	popq	%r12
	popq	%r13
	popq	%r14
	popq	%r15
	popq	%rbp
	retq
LBB0_88:
	incl	%r13d
	movl	%r13d, %ebx
	movq	-96(%rbp), %r12                 ## 8-byte Reload
	jmp	LBB0_33
	.cfi_endproc
                                        ## -- End function
	.comm	_HEVC_SLICE_P,8,3               ## @HEVC_SLICE_P
	.comm	_PART_Nx2N,8,3                  ## @PART_Nx2N
	.comm	_PART_nLx2N,8,3                 ## @PART_nLx2N
	.comm	_PART_nRx2N,8,3                 ## @PART_nRx2N
	.comm	_A1,4,2                         ## @A1
	.comm	_PART_2NxN,8,3                  ## @PART_2NxN
	.comm	_PART_2NxnU,8,3                 ## @PART_2NxnU
	.comm	_PART_2NxnD,8,3                 ## @PART_2NxnD
	.comm	_B1,4,2                         ## @B1
	.comm	_B0,4,2                         ## @B0
	.comm	_A0,4,2                         ## @A0
	.comm	_B2,4,2                         ## @B2
	.comm	_HEVC_SLICE_B,8,3               ## @HEVC_SLICE_B
	.comm	_l0_l1_cand_idx,8,3             ## @l0_l1_cand_idx
	.comm	_PF_L0,4,2                      ## @PF_L0
	.comm	_PF_L1,4,2                      ## @PF_L1
	.comm	_PF_BI,4,2                      ## @PF_BI
	.no_dead_strip	_derive_spatial_merge_candidates
.subsections_via_symbols

	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	2                               ; -- Begin function derive_spatial_merge_candidates
_derive_spatial_merge_candidates:       ; @derive_spatial_merge_candidates
	.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	x28, x7
	mov	x25, x6
	mov	x20, x4
	mov	x21, x3
	mov	x23, x2
	mov	x24, x1
	mov	x19, x0
	ldr	x8, [x29, #24]
	str	x8, [sp, #56]                   ; 8-byte Folded Spill
	ldp	x8, x22, [x0, #40]
	ldr	x8, [x8, #8]
	str	x8, [sp, #40]                   ; 8-byte Folded Spill
	ldp	w12, w27, [x22, #8]
	ldp	w11, w8, [x22, #16]
	str	w8, [sp]                        ; 4-byte Folded Spill
	ldr	w8, [x22, #24]
	str	w8, [sp, #20]                   ; 4-byte Folded Spill
	sub	w8, w1, #1
	str	w8, [sp, #32]                   ; 4-byte Folded Spill
Lloh0:
	adrp	x8, _HEVC_SLICE_P@GOTPAGE
Lloh1:
	ldr	x8, [x8, _HEVC_SLICE_P@GOTPAGEOFF]
	sub	w9, w2, #1
	str	w9, [sp, #28]                   ; 4-byte Folded Spill
Lloh2:
	ldr	x9, [x8]
	ldp	x10, x8, [x0]
	ldr	w26, [x8]
	cmp	x10, x9
	stp	w11, w12, [sp, #12]             ; 8-byte Folded Spill
	b.eq	LBB0_2
; %bb.1:
	ldr	w1, [x8, #4]
	mov	x0, x26
	bl	_FFMIN
	mov	x26, x0
LBB0_2:
	str	w20, [sp, #8]                   ; 4-byte Folded Spill
	add	w10, w20, w23
	str	w21, [sp, #24]                  ; 4-byte Folded Spill
	add	w21, w21, w24
	ldr	w8, [x29, #16]
	str	x8, [sp, #48]                   ; 8-byte Folded Spill
	cmp	w25, #0
	ccmp	w28, #1, #0, eq
	cset	w20, eq
	str	w10, [sp, #4]                   ; 4-byte Folded Spill
	b.ne	LBB0_6
; %bb.3:
	mov	w25, #0
	ldr	x8, [x22]
Lloh3:
	adrp	x9, _PART_Nx2N@GOTPAGE
Lloh4:
	ldr	x9, [x9, _PART_Nx2N@GOTPAGEOFF]
Lloh5:
	ldr	x9, [x9]
	cmp	x8, x9
	b.eq	LBB0_14
; %bb.4:
Lloh6:
	adrp	x9, _PART_nLx2N@GOTPAGE
Lloh7:
	ldr	x9, [x9, _PART_nLx2N@GOTPAGEOFF]
Lloh8:
	ldr	x9, [x9]
	cmp	x8, x9
	b.eq	LBB0_14
; %bb.5:
Lloh9:
	adrp	x9, _PART_nRx2N@GOTPAGE
Lloh10:
	ldr	x9, [x9, _PART_nRx2N@GOTPAGEOFF]
Lloh11:
	ldr	x9, [x9]
	mov	x28, x25
	cmp	x8, x9
	b.eq	LBB0_15
LBB0_6:
	sub	w2, w10, #1
	mov	x0, x19
	ldr	w1, [sp, #32]                   ; 4-byte Folded Reload
	mov	x3, x24
	mov	x4, x23
	bl	_is_diff_mer
	cbz	x0, LBB0_10
; %bb.7:
	mov	w28, #0
LBB0_8:
	mov	w25, #0
	cbz	w20, LBB0_13
LBB0_9:
	ldr	x8, [x22]
	b	LBB0_15
LBB0_10:
Lloh12:
	adrp	x25, _A1@GOTPAGE
Lloh13:
	ldr	x25, [x25, _A1@GOTPAGEOFF]
	ldr	w1, [x25]
	mov	x0, x27
	bl	_AVAILABLE
	mov	x28, x0
	cbz	w0, LBB0_8
; %bb.11:
	ldr	w0, [x25]
	add	x8, sp, #72
	bl	_TAB_MVF_PU
	ldur	q0, [sp, #72]
	ldr	x9, [sp, #56]                   ; 8-byte Folded Reload
	str	q0, [x9]
	ldr	x8, [sp, #88]
	str	x8, [x9, #16]
	ldr	x8, [sp, #48]                   ; 8-byte Folded Reload
	cbz	w8, LBB0_70
; %bb.12:
	mov	w25, #1
	cbnz	w20, LBB0_9
LBB0_13:
	ldr	w22, [sp, #28]                  ; 4-byte Folded Reload
	b	LBB0_18
LBB0_14:
	mov	x28, x25
LBB0_15:
	mov	w27, #0
Lloh14:
	adrp	x9, _PART_2NxN@GOTPAGE
Lloh15:
	ldr	x9, [x9, _PART_2NxN@GOTPAGEOFF]
Lloh16:
	ldr	x9, [x9]
	cmp	x8, x9
	b.eq	LBB0_25
; %bb.16:
Lloh17:
	adrp	x9, _PART_2NxnU@GOTPAGE
Lloh18:
	ldr	x9, [x9, _PART_2NxnU@GOTPAGEOFF]
Lloh19:
	ldr	x9, [x9]
	cmp	x8, x9
	ldr	w22, [sp, #28]                  ; 4-byte Folded Reload
	b.eq	LBB0_26
; %bb.17:
Lloh20:
	adrp	x9, _PART_2NxnD@GOTPAGE
Lloh21:
	ldr	x9, [x9, _PART_2NxnD@GOTPAGEOFF]
Lloh22:
	ldr	x9, [x9]
	cmp	x8, x9
	b.eq	LBB0_26
LBB0_18:
	sub	w1, w21, #1
	mov	x0, x19
	mov	x2, x22
	mov	x3, x24
	mov	x4, x23
	bl	_is_diff_mer
	cbz	x0, LBB0_20
; %bb.19:
	mov	w27, #0
	b	LBB0_26
LBB0_20:
Lloh23:
	adrp	x20, _B1@GOTPAGE
Lloh24:
	ldr	x20, [x20, _B1@GOTPAGEOFF]
	ldr	w1, [x20]
	ldr	w0, [sp]                        ; 4-byte Folded Reload
	bl	_AVAILABLE
	mov	x27, x0
	cbz	w0, LBB0_26
; %bb.21:
	cbz	w28, LBB0_23
; %bb.22:
	ldr	w0, [x20]
Lloh25:
	adrp	x8, _A1@GOTPAGE
Lloh26:
	ldr	x8, [x8, _A1@GOTPAGEOFF]
Lloh27:
	ldr	w1, [x8]
	bl	_COMPARE_MV_REFIDX
	cbnz	x0, LBB0_26
LBB0_23:
	mov	w8, #24
	ldr	x9, [sp, #56]                   ; 8-byte Folded Reload
	umaddl	x22, w25, w8, x9
	ldr	w0, [x20]
	add	x8, sp, #72
	bl	_TAB_MVF_PU
	ldur	q0, [sp, #72]
	str	q0, [x22]
	ldr	x8, [sp, #88]
	str	x8, [x22, #16]
	ldr	x8, [sp, #48]                   ; 8-byte Folded Reload
	cmp	w25, w8
	b.eq	LBB0_70
; %bb.24:
	add	w25, w25, #1
LBB0_25:
	ldr	w22, [sp, #28]                  ; 4-byte Folded Reload
LBB0_26:
Lloh28:
	adrp	x20, _B0@GOTPAGE
Lloh29:
	ldr	x20, [x20, _B0@GOTPAGEOFF]
	ldr	w1, [x20]
	ldr	w0, [sp, #20]                   ; 4-byte Folded Reload
	bl	_AVAILABLE
	cbz	w0, LBB0_30
; %bb.27:
	ldr	x8, [x19, #32]
	ldr	w8, [x8, #4]
	cmp	w21, w8
	b.ge	LBB0_30
; %bb.28:
	ldr	w0, [x20]
	bl	_PRED_BLOCK_AVAILABLE
	cbz	x0, LBB0_30
; %bb.29:
	mov	x0, x19
	mov	x1, x21
	mov	x2, x22
	mov	x3, x24
	mov	x4, x23
	bl	_is_diff_mer
	cbz	x0, LBB0_76
LBB0_30:
	ldr	w0, [sp, #16]                   ; 4-byte Folded Reload
Lloh30:
	adrp	x20, _A0@GOTPAGE
Lloh31:
	ldr	x20, [x20, _A0@GOTPAGEOFF]
	ldr	w1, [x20]
	bl	_AVAILABLE
	cbz	w0, LBB0_38
; %bb.31:
	ldr	x8, [x19, #32]
	ldr	w8, [x8, #8]
	ldr	w9, [sp, #4]                    ; 4-byte Folded Reload
	cmp	w9, w8
	ldr	w21, [sp, #24]                  ; 4-byte Folded Reload
	b.ge	LBB0_39
; %bb.32:
	ldr	w0, [x20]
	bl	_PRED_BLOCK_AVAILABLE
	cbz	x0, LBB0_39
; %bb.33:
	mov	x0, x19
	ldr	w1, [sp, #32]                   ; 4-byte Folded Reload
	ldr	w2, [sp, #4]                    ; 4-byte Folded Reload
	mov	x3, x24
	mov	x4, x23
	bl	_is_diff_mer
	cbnz	x0, LBB0_39
; %bb.34:
	cbz	w28, LBB0_36
; %bb.35:
	ldr	w0, [x20]
Lloh32:
	adrp	x8, _A1@GOTPAGE
Lloh33:
	ldr	x8, [x8, _A1@GOTPAGEOFF]
Lloh34:
	ldr	w1, [x8]
	bl	_COMPARE_MV_REFIDX
	cbnz	x0, LBB0_39
LBB0_36:
	mov	w8, #24
	ldr	x9, [sp, #56]                   ; 8-byte Folded Reload
	umaddl	x21, w25, w8, x9
	ldr	w0, [x20]
	add	x8, sp, #72
	bl	_TAB_MVF_PU
	ldur	q0, [sp, #72]
	str	q0, [x21]
	ldr	x8, [sp, #88]
	str	x8, [x21, #16]
	ldr	x8, [sp, #48]                   ; 8-byte Folded Reload
	cmp	w25, w8
	b.eq	LBB0_70
; %bb.37:
	add	w25, w25, #1
	ldp	w21, w22, [sp, #24]             ; 8-byte Folded Reload
	b	LBB0_39
LBB0_38:
	ldr	w21, [sp, #24]                  ; 4-byte Folded Reload
LBB0_39:
	ldr	w0, [sp, #12]                   ; 4-byte Folded Reload
Lloh35:
	adrp	x20, _B2@GOTPAGE
Lloh36:
	ldr	x20, [x20, _B2@GOTPAGEOFF]
	ldr	w1, [x20]
	bl	_AVAILABLE
	cbz	w0, LBB0_41
; %bb.40:
	mov	x0, x19
	ldr	w1, [sp, #32]                   ; 4-byte Folded Reload
	mov	x2, x22
	mov	x3, x24
	mov	x4, x23
	bl	_is_diff_mer
	cbz	x0, LBB0_71
LBB0_41:
	ldr	w20, [sp, #8]                   ; 4-byte Folded Reload
LBB0_42:
	ldr	x8, [x19, #24]
Lloh37:
	adrp	x27, _HEVC_SLICE_B@GOTPAGE
Lloh38:
	ldr	x27, [x27, _HEVC_SLICE_B@GOTPAGEOFF]
	cbz	x8, LBB0_49
; %bb.43:
	ldr	w8, [x19, #16]
	cmp	w25, w8
	b.ge	LBB0_49
; %bb.44:
	stp	xzr, xzr, [sp, #64]
	add	x6, sp, #72
	mov	x0, x19
	mov	x1, x24
	mov	x2, x23
	mov	x3, x21
	mov	x4, x20
	mov	w5, #0
	mov	w7, #0
	bl	_temporal_luma_motion_vector
	mov	x3, x21
	mov	x21, x0
	mov	w0, #0
	ldr	x8, [x19]
	ldr	x9, [x27]
	cmp	x8, x9
	b.ne	LBB0_46
; %bb.45:
	add	x6, sp, #64
	mov	x0, x19
	mov	x1, x24
	mov	x2, x23
	mov	x4, x20
	mov	w5, #0
	mov	w7, #1
	bl	_temporal_luma_motion_vector
LBB0_46:
	orr	w8, w21, w0
	cbz	w8, LBB0_49
; %bb.47:
	add	w8, w21, w0, lsl #1
	mov	w9, #24
	ldr	x21, [sp, #56]                  ; 8-byte Folded Reload
	umaddl	x20, w25, w9, x21
	str	w8, [x20]
	ldr	x0, [x20, #8]
	bl	_AV_ZERO16
	ldr	x8, [sp, #72]
	ldr	x9, [x20, #16]
	str	x8, [x9]
	ldr	x8, [sp, #64]
	ldr	x9, [x20, #16]
	str	x8, [x9, #8]
	ldr	x8, [sp, #48]                   ; 8-byte Folded Reload
	cmp	w25, w8
	cinc	w25, w25, ne
	b.eq	LBB0_70
; %bb.48:
	mov	x12, x21
	b	LBB0_50
LBB0_49:
	ldr	x12, [sp, #56]                  ; 8-byte Folded Reload
LBB0_50:
	ldr	x9, [x19]
	ldr	x10, [x27]
	ldr	w8, [x19, #16]
	cmp	x9, x10
	b.ne	LBB0_66
; %bb.51:
	cmp	w25, #2
	b.lo	LBB0_66
; %bb.52:
	cmp	w25, w8
	b.ge	LBB0_66
; %bb.53:
	sub	w9, w25, #1
	mul	w9, w9, w25
	cbz	w9, LBB0_66
; %bb.54:
	mov	x23, #0
	lsl	x8, x9, #3
	sub	x13, x8, #8
Lloh39:
	adrp	x14, _l0_l1_cand_idx@GOTPAGE
Lloh40:
	ldr	x14, [x14, _l0_l1_cand_idx@GOTPAGEOFF]
	mov	w15, #24
Lloh41:
	adrp	x16, _PF_L0@GOTPAGE
Lloh42:
	ldr	x16, [x16, _PF_L0@GOTPAGEOFF]
	str	x13, [sp, #32]                  ; 8-byte Folded Spill
LBB0_55:                                ; =>This Inner Loop Header: Depth=1
	ldr	x8, [x14]
	ldr	x9, [x8, x23]
	ldrsw	x8, [x9]
	madd	x8, x8, x15, x12
	ldr	w10, [x8]
	ldr	w11, [x16]
	tst	w11, w10
	b.eq	LBB0_64
; %bb.56:                               ;   in Loop: Header=BB0_55 Depth=1
	ldrsw	x9, [x9, #4]
	mul	x10, x9, x15
	ldr	w10, [x12, x10]
Lloh43:
	adrp	x11, _PF_L1@GOTPAGE
Lloh44:
	ldr	x11, [x11, _PF_L1@GOTPAGEOFF]
Lloh45:
	ldr	w11, [x11]
	tst	w11, w10
	b.eq	LBB0_64
; %bb.57:                               ;   in Loop: Header=BB0_55 Depth=1
	mov	x20, x27
	mov	x24, x19
	mov	x19, x26
	ldp	x27, x21, [x8, #8]
	madd	x8, x9, x15, x12
	ldp	x28, x26, [x8, #8]
	ldr	x8, [x27]
	ldr	x10, [sp, #40]                  ; 8-byte Folded Reload
	ldp	x9, x10, [x10]
	ldr	x9, [x9, x8, lsl #3]
	ldr	x11, [x28, #8]
	ldr	x10, [x10, x11, lsl #3]
	cmp	x9, x10
	b.ne	LBB0_61
; %bb.58:                               ;   in Loop: Header=BB0_55 Depth=1
	mov	x0, x21
	bl	_AV_RN32A
	mov	x22, x0
	add	x0, x26, #8
	bl	_AV_RN32A
	cmp	x22, x0
	b.ne	LBB0_60
; %bb.59:                               ;   in Loop: Header=BB0_55 Depth=1
	mov	x26, x19
	mov	x19, x24
	ldr	x12, [sp, #56]                  ; 8-byte Folded Reload
	b	LBB0_63
LBB0_60:                                ;   in Loop: Header=BB0_55 Depth=1
	ldr	x8, [x27]
	ldr	x12, [sp, #56]                  ; 8-byte Folded Reload
	mov	w15, #24
LBB0_61:                                ;   in Loop: Header=BB0_55 Depth=1
	smaddl	x22, w25, w15, x12
	ldr	x9, [x22, #8]
	str	x8, [x9]
	ldr	x8, [x28, #8]
	str	x8, [x9, #8]
Lloh46:
	adrp	x8, _PF_BI@GOTPAGE
Lloh47:
	ldr	x8, [x8, _PF_BI@GOTPAGEOFF]
Lloh48:
	ldr	w8, [x8]
	str	w8, [x22]
	ldr	x0, [x22, #16]
	mov	x1, x21
	bl	_AV_COPY32
	ldr	x8, [x22, #16]
	add	x0, x8, #8
	add	x1, x26, #8
	bl	_AV_COPY32
	ldp	x8, x12, [sp, #48]              ; 16-byte Folded Reload
	cmp	w25, w8
	cinc	w25, w25, ne
	b.eq	LBB0_70
; %bb.62:                               ;   in Loop: Header=BB0_55 Depth=1
	mov	x26, x19
	mov	x19, x24
LBB0_63:                                ;   in Loop: Header=BB0_55 Depth=1
	mov	x27, x20
	ldr	x13, [sp, #32]                  ; 8-byte Folded Reload
Lloh49:
	adrp	x14, _l0_l1_cand_idx@GOTPAGE
Lloh50:
	ldr	x14, [x14, _l0_l1_cand_idx@GOTPAGEOFF]
	mov	w15, #24
Lloh51:
	adrp	x16, _PF_L0@GOTPAGE
Lloh52:
	ldr	x16, [x16, _PF_L0@GOTPAGEOFF]
LBB0_64:                                ;   in Loop: Header=BB0_55 Depth=1
	ldr	w8, [x19, #16]
	cmp	w25, w8
	b.ge	LBB0_66
; %bb.65:                               ;   in Loop: Header=BB0_55 Depth=1
	add	x9, x23, #8
	cmp	x13, x23
	mov	x23, x9
	b.ne	LBB0_55
LBB0_66:
	cmp	w25, w8
	b.ge	LBB0_70
; %bb.67:
	mov	x20, #0
	sxtw	x21, w25
	ldr	x8, [sp, #48]                   ; 8-byte Folded Reload
	sxtw	x8, w8
	sub	x22, x8, x21
	mov	w8, #24
	smaddl	x8, w25, w8, x12
	add	x23, x8, #16
Lloh53:
	adrp	x24, _PF_L0@GOTPAGE
Lloh54:
	ldr	x24, [x24, _PF_L0@GOTPAGEOFF]
LBB0_68:                                ; =>This Inner Loop Header: Depth=1
	ldr	w8, [x24]
	ldr	x9, [x19]
	ldr	x10, [x27]
	cmp	x9, x10
	cset	w9, eq
	add	w8, w8, w9, lsl #1
	stur	w8, [x23, #-16]
	ldr	x0, [x23]
	bl	_AV_ZERO32
	ldr	x8, [x23]
	add	x0, x8, #8
	bl	_AV_ZERO32
	ldur	x8, [x23, #-8]
	cmp	w20, w26
	csel	w9, w20, wzr, lt
	stp	x9, x9, [x8]
	cmp	x22, x20
	b.eq	LBB0_70
; %bb.69:                               ;   in Loop: Header=BB0_68 Depth=1
	ldrsw	x8, [x19, #16]
	add	x20, x20, #1
	add	x23, x23, #24
	add	x9, x21, x20
	cmp	x9, x8
	b.lt	LBB0_68
LBB0_70:
	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_71:
	cbz	w28, LBB0_73
; %bb.72:
	ldr	w0, [x20]
Lloh55:
	adrp	x8, _A1@GOTPAGE
Lloh56:
	ldr	x8, [x8, _A1@GOTPAGEOFF]
Lloh57:
	ldr	w1, [x8]
	bl	_COMPARE_MV_REFIDX
	cbnz	x0, LBB0_41
LBB0_73:
	cbz	w27, LBB0_80
; %bb.74:
	ldr	w0, [x20]
Lloh58:
	adrp	x8, _B1@GOTPAGE
Lloh59:
	ldr	x8, [x8, _B1@GOTPAGEOFF]
Lloh60:
	ldr	w1, [x8]
	bl	_COMPARE_MV_REFIDX
	cbnz	x0, LBB0_41
; %bb.75:
	cmp	w25, #4
	b.ne	LBB0_82
	b	LBB0_41
LBB0_76:
	cbz	w27, LBB0_78
; %bb.77:
	ldr	w0, [x20]
Lloh61:
	adrp	x8, _B1@GOTPAGE
Lloh62:
	ldr	x8, [x8, _B1@GOTPAGEOFF]
Lloh63:
	ldr	w1, [x8]
	bl	_COMPARE_MV_REFIDX
	cbnz	x0, LBB0_30
LBB0_78:
	mov	w8, #24
	ldr	x9, [sp, #56]                   ; 8-byte Folded Reload
	umaddl	x21, w25, w8, x9
	ldr	w0, [x20]
	add	x8, sp, #72
	bl	_TAB_MVF_PU
	ldur	q0, [sp, #72]
	str	q0, [x21]
	ldr	x8, [sp, #88]
	str	x8, [x21, #16]
	ldr	x8, [sp, #48]                   ; 8-byte Folded Reload
	cmp	w25, w8
	b.eq	LBB0_70
; %bb.79:
	add	w25, w25, #1
	ldr	w22, [sp, #28]                  ; 4-byte Folded Reload
	b	LBB0_30
LBB0_80:
	cmp	w25, #4
	b.ne	LBB0_82
; %bb.81:
	mov	w25, #4
	b	LBB0_41
LBB0_82:
	mov	w8, #24
	ldr	x9, [sp, #56]                   ; 8-byte Folded Reload
	umaddl	x21, w25, w8, x9
	ldr	w0, [x20]
	add	x8, sp, #72
	bl	_TAB_MVF_PU
	ldur	q0, [sp, #72]
	str	q0, [x21]
	ldr	x8, [sp, #88]
	str	x8, [x21, #16]
	ldr	x8, [sp, #48]                   ; 8-byte Folded Reload
	cmp	w25, w8
	b.eq	LBB0_70
; %bb.83:
	add	w25, w25, #1
	ldr	w20, [sp, #8]                   ; 4-byte Folded Reload
	ldr	w21, [sp, #24]                  ; 4-byte Folded Reload
	b	LBB0_42
	.loh AdrpLdrGotLdr	Lloh0, Lloh1, Lloh2
	.loh AdrpLdrGotLdr	Lloh3, Lloh4, Lloh5
	.loh AdrpLdrGotLdr	Lloh6, Lloh7, Lloh8
	.loh AdrpLdrGotLdr	Lloh9, Lloh10, Lloh11
	.loh AdrpLdrGot	Lloh12, Lloh13
	.loh AdrpLdrGotLdr	Lloh14, Lloh15, Lloh16
	.loh AdrpLdrGotLdr	Lloh17, Lloh18, Lloh19
	.loh AdrpLdrGotLdr	Lloh20, Lloh21, Lloh22
	.loh AdrpLdrGot	Lloh23, Lloh24
	.loh AdrpLdrGotLdr	Lloh25, Lloh26, Lloh27
	.loh AdrpLdrGot	Lloh28, Lloh29
	.loh AdrpLdrGot	Lloh30, Lloh31
	.loh AdrpLdrGotLdr	Lloh32, Lloh33, Lloh34
	.loh AdrpLdrGot	Lloh35, Lloh36
	.loh AdrpLdrGot	Lloh37, Lloh38
	.loh AdrpLdrGot	Lloh41, Lloh42
	.loh AdrpLdrGot	Lloh39, Lloh40
	.loh AdrpLdrGotLdr	Lloh43, Lloh44, Lloh45
	.loh AdrpLdrGotLdr	Lloh46, Lloh47, Lloh48
	.loh AdrpLdrGot	Lloh51, Lloh52
	.loh AdrpLdrGot	Lloh49, Lloh50
	.loh AdrpLdrGot	Lloh53, Lloh54
	.loh AdrpLdrGotLdr	Lloh55, Lloh56, Lloh57
	.loh AdrpLdrGotLdr	Lloh58, Lloh59, Lloh60
	.loh AdrpLdrGotLdr	Lloh61, Lloh62, Lloh63
	.cfi_endproc
                                        ; -- End function
	.comm	_HEVC_SLICE_P,8,3               ; @HEVC_SLICE_P
	.comm	_PART_Nx2N,8,3                  ; @PART_Nx2N
	.comm	_PART_nLx2N,8,3                 ; @PART_nLx2N
	.comm	_PART_nRx2N,8,3                 ; @PART_nRx2N
	.comm	_A1,4,2                         ; @A1
	.comm	_PART_2NxN,8,3                  ; @PART_2NxN
	.comm	_PART_2NxnU,8,3                 ; @PART_2NxnU
	.comm	_PART_2NxnD,8,3                 ; @PART_2NxnD
	.comm	_B1,4,2                         ; @B1
	.comm	_B0,4,2                         ; @B0
	.comm	_A0,4,2                         ; @A0
	.comm	_B2,4,2                         ; @B2
	.comm	_HEVC_SLICE_B,8,3               ; @HEVC_SLICE_B
	.comm	_l0_l1_cand_idx,8,3             ; @l0_l1_cand_idx
	.comm	_PF_L0,4,2                      ; @PF_L0
	.comm	_PF_L1,4,2                      ; @PF_L1
	.comm	_PF_BI,4,2                      ; @PF_BI
	.no_dead_strip	_derive_spatial_merge_candidates
.subsections_via_symbols
