	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.globl	_mod_color_calculate_degamma_curve ## -- Begin function mod_color_calculate_degamma_curve
	.p2align	4, 0x90
_mod_color_calculate_degamma_curve:     ## @mod_color_calculate_degamma_curve
	.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	$24, %rsp
	.cfi_offset %rbx, -56
	.cfi_offset %r12, -48
	.cfi_offset %r13, -40
	.cfi_offset %r14, -32
	.cfi_offset %r15, -24
	movq	%rsi, %r15
	movq	_TRANSFER_FUNCTION_UNITY@GOTPCREL(%rip), %rax
	cmpl	%edi, (%rax)
	je	LBB0_6
## %bb.1:
	movl	%edi, %ebx
	movq	_TRANSFER_FUNCTION_LINEAR@GOTPCREL(%rip), %rax
	cmpl	%edi, (%rax)
	je	LBB0_6
## %bb.2:
	movq	_TRANSFER_FUNCTION_PQ@GOTPCREL(%rip), %rax
	cmpl	%ebx, (%rax)
	jne	LBB0_8
## %bb.3:
	movq	_MAX_HW_POINTS@GOTPCREL(%rip), %rbx
	movq	__EXTRA_POINTS@GOTPCREL(%rip), %rax
	movq	(%rax), %rdi
	addq	(%rbx), %rdi
	movq	_GFP_KERNEL@GOTPCREL(%rip), %rax
	movl	(%rax), %edx
	movl	$12, %esi
	callq	_kvcalloc
	testq	%rax, %rax
	je	LBB0_37
## %bb.4:
	movq	%rax, %r14
	movq	(%rbx), %rsi
	movq	_coordinates_x@GOTPCREL(%rip), %rax
	movq	(%rax), %rdx
	movq	%r14, %rdi
	callq	_build_de_pq
	movq	(%rbx), %r8
	movq	40(%r15), %rax
	movq	24(%r15), %rcx
	movq	32(%r15), %rdx
	leaq	1(%r8), %r9
	cmpq	$4, %r9
	jae	LBB0_38
## %bb.5:
	xorl	%esi, %esi
	jmp	LBB0_47
LBB0_6:
	movq	_MAX_HW_POINTS@GOTPCREL(%rip), %rax
	movq	(%rax), %r11
	movq	_coordinates_x@GOTPCREL(%rip), %rax
	movq	(%rax), %rdx
	movq	40(%r15), %rsi
	movq	24(%r15), %rbx
	movq	32(%r15), %rdi
	leaq	1(%r11), %rax
	cmpq	$8, %rax
	jae	LBB0_17
## %bb.7:
	xorl	%r8d, %r8d
	jmp	LBB0_29
LBB0_8:
	movq	_TRANSFER_FUNCTION_SRGB@GOTPCREL(%rip), %rax
	cmpl	%ebx, (%rax)
	je	LBB0_34
## %bb.9:
	movq	_TRANSFER_FUNCTION_BT709@GOTPCREL(%rip), %rax
	cmpl	%ebx, (%rax)
	je	LBB0_34
## %bb.10:
	movq	_TRANSFER_FUNCTION_GAMMA22@GOTPCREL(%rip), %rax
	cmpl	%ebx, (%rax)
	je	LBB0_34
## %bb.11:
	movq	_TRANSFER_FUNCTION_GAMMA24@GOTPCREL(%rip), %rax
	cmpl	%ebx, (%rax)
	je	LBB0_34
## %bb.12:
	movq	_TRANSFER_FUNCTION_GAMMA26@GOTPCREL(%rip), %rax
	cmpl	%ebx, (%rax)
	je	LBB0_34
## %bb.13:
	movq	_TRANSFER_FUNCTION_HLG@GOTPCREL(%rip), %rcx
	xorl	%eax, %eax
	cmpl	%ebx, (%rcx)
	jne	LBB0_84
## %bb.14:
	movq	_MAX_HW_POINTS@GOTPCREL(%rip), %rbx
	movq	__EXTRA_POINTS@GOTPCREL(%rip), %rax
	movq	(%rax), %rdi
	addq	(%rbx), %rdi
	movq	_GFP_KERNEL@GOTPCREL(%rip), %rax
	movl	(%rax), %edx
	movl	$12, %esi
	callq	_kvcalloc
	testq	%rax, %rax
	je	LBB0_37
## %bb.15:
	movq	%rax, %r14
	movq	(%rbx), %rsi
	movq	_coordinates_x@GOTPCREL(%rip), %rax
	movq	(%rax), %rdx
	movq	%r14, %rdi
	movl	$80, %ecx
	movl	$1000, %r8d                     ## imm = 0x3E8
	callq	_build_hlg_degamma
	movq	(%rbx), %r8
	movq	40(%r15), %rax
	movq	24(%r15), %rcx
	movq	32(%r15), %rdx
	leaq	1(%r8), %r9
	cmpq	$4, %r9
	jae	LBB0_69
## %bb.16:
	xorl	%esi, %esi
	jmp	LBB0_78
LBB0_17:
	movq	%rax, -64(%rbp)                 ## 8-byte Spill
	movq	%r15, -56(%rbp)                 ## 8-byte Spill
	leaq	(%rsi,%r11,4), %rcx
	addq	$4, %rcx
	leaq	(%rdi,%r11,4), %rax
	addq	$4, %rax
	leaq	(%rbx,%r11,4), %r8
	addq	$4, %r8
	leaq	(%rdx,%r11,4), %r12
	addq	$4, %r12
	cmpq	%rax, %rsi
	setb	-44(%rbp)                       ## 1-byte Folded Spill
	cmpq	%rcx, %rdi
	setb	%r13b
	cmpq	%r8, %rsi
	setb	%r15b
	cmpq	%rcx, %rbx
	setb	-43(%rbp)                       ## 1-byte Folded Spill
	cmpq	%r12, %rsi
	setb	%r9b
	cmpq	%rcx, %rdx
	setb	%cl
	cmpq	%r8, %rdi
	setb	%r10b
	cmpq	%rax, %rbx
	setb	-42(%rbp)                       ## 1-byte Folded Spill
	cmpq	%r12, %rdi
	setb	%r14b
	cmpq	%rax, %rdx
	setb	%al
	cmpq	%r12, %rbx
	setb	%r12b
	cmpq	%r8, %rdx
	setb	-41(%rbp)                       ## 1-byte Folded Spill
	xorl	%r8d, %r8d
	testb	%r13b, -44(%rbp)                ## 1-byte Folded Reload
	jne	LBB0_87
## %bb.18:
	andb	-43(%rbp), %r15b                ## 1-byte Folded Reload
	jne	LBB0_87
## %bb.19:
	andb	%cl, %r9b
	movq	-56(%rbp), %r15                 ## 8-byte Reload
	jne	LBB0_29
## %bb.20:
	andb	-42(%rbp), %r10b                ## 1-byte Folded Reload
	jne	LBB0_29
## %bb.21:
	andb	%al, %r14b
	jne	LBB0_29
## %bb.22:
	andb	-41(%rbp), %r12b                ## 1-byte Folded Reload
	jne	LBB0_29
## %bb.23:
	movq	-64(%rbp), %r9                  ## 8-byte Reload
	movq	%r9, %r8
	andq	$-8, %r8
	leaq	-8(%r8), %rax
	movq	%rax, %r10
	shrq	$3, %r10
	incq	%r10
	testq	%rax, %rax
	je	LBB0_52
## %bb.24:
	movq	%r10, %rcx
	andq	$-2, %rcx
	xorl	%eax, %eax
	.p2align	4, 0x90
LBB0_25:                                ## =>This Inner Loop Header: Depth=1
	movups	(%rdx,%rax,4), %xmm0
	movups	16(%rdx,%rax,4), %xmm1
	movups	%xmm0, (%rsi,%rax,4)
	movups	%xmm1, 16(%rsi,%rax,4)
	movups	(%rdx,%rax,4), %xmm0
	movups	16(%rdx,%rax,4), %xmm1
	movups	%xmm0, (%rdi,%rax,4)
	movups	%xmm1, 16(%rdi,%rax,4)
	movups	(%rdx,%rax,4), %xmm0
	movups	16(%rdx,%rax,4), %xmm1
	movups	%xmm0, (%rbx,%rax,4)
	movups	%xmm1, 16(%rbx,%rax,4)
	movups	32(%rdx,%rax,4), %xmm0
	movups	48(%rdx,%rax,4), %xmm1
	movups	%xmm0, 32(%rsi,%rax,4)
	movups	%xmm1, 48(%rsi,%rax,4)
	movups	32(%rdx,%rax,4), %xmm0
	movups	48(%rdx,%rax,4), %xmm1
	movups	%xmm0, 32(%rdi,%rax,4)
	movups	%xmm1, 48(%rdi,%rax,4)
	movdqu	32(%rdx,%rax,4), %xmm0
	movups	48(%rdx,%rax,4), %xmm1
	movdqu	%xmm0, 32(%rbx,%rax,4)
	movups	%xmm1, 48(%rbx,%rax,4)
	addq	$16, %rax
	addq	$-2, %rcx
	jne	LBB0_25
## %bb.26:
	testb	$1, %r10b
	je	LBB0_28
LBB0_27:
	movups	(%rdx,%rax,4), %xmm0
	movups	16(%rdx,%rax,4), %xmm1
	movups	%xmm0, (%rsi,%rax,4)
	movups	%xmm1, 16(%rsi,%rax,4)
	movups	(%rdx,%rax,4), %xmm0
	movups	16(%rdx,%rax,4), %xmm1
	movups	%xmm0, (%rdi,%rax,4)
	movups	%xmm1, 16(%rdi,%rax,4)
	movdqu	(%rdx,%rax,4), %xmm0
	movups	16(%rdx,%rax,4), %xmm1
	movdqu	%xmm0, (%rbx,%rax,4)
	movups	%xmm1, 16(%rbx,%rax,4)
LBB0_28:
	movl	$1, %eax
	cmpq	%r8, %r9
	je	LBB0_84
LBB0_29:
	movq	%r8, %r9
	testb	$1, %r11b
	jne	LBB0_31
## %bb.30:
	movl	(%rdx,%r8,4), %eax
	movl	%eax, (%rsi,%r8,4)
	movl	(%rdx,%r8,4), %eax
	movl	%eax, (%rdi,%r8,4)
	movl	(%rdx,%r8,4), %eax
	movl	%eax, (%rbx,%r8,4)
	movq	%r8, %r9
	orq	$1, %r9
LBB0_31:
	movl	$1, %eax
	cmpq	%r8, %r11
	je	LBB0_84
## %bb.32:
	subq	%r9, %r11
	incq	%r11
	leaq	(%rbx,%r9,4), %r8
	addq	$4, %r8
	leaq	(%rdi,%r9,4), %rdi
	addq	$4, %rdi
	leaq	(%rsi,%r9,4), %rsi
	addq	$4, %rsi
	leaq	(%rdx,%r9,4), %rdx
	addq	$4, %rdx
	xorl	%ebx, %ebx
	.p2align	4, 0x90
LBB0_33:                                ## =>This Inner Loop Header: Depth=1
	movl	-4(%rdx,%rbx,4), %ecx
	movl	%ecx, -4(%rsi,%rbx,4)
	movl	-4(%rdx,%rbx,4), %ecx
	movl	%ecx, -4(%rdi,%rbx,4)
	movl	-4(%rdx,%rbx,4), %ecx
	movl	%ecx, -4(%r8,%rbx,4)
	movl	(%rdx,%rbx,4), %ecx
	movl	%ecx, (%rsi,%rbx,4)
	movl	(%rdx,%rbx,4), %ecx
	movl	%ecx, (%rdi,%rbx,4)
	movl	(%rdx,%rbx,4), %ecx
	movl	%ecx, (%r8,%rbx,4)
	addq	$2, %rbx
	cmpq	%rbx, %r11
	jne	LBB0_33
	jmp	LBB0_84
LBB0_34:
	movq	_MAX_HW_POINTS@GOTPCREL(%rip), %r12
	movq	__EXTRA_POINTS@GOTPCREL(%rip), %rax
	movq	(%rax), %rdi
	addq	(%r12), %rdi
	movq	_GFP_KERNEL@GOTPCREL(%rip), %rax
	movl	(%rax), %edx
	movl	$12, %esi
	callq	_kvcalloc
	testq	%rax, %rax
	je	LBB0_37
## %bb.35:
	movq	%rax, %r14
	movq	(%r12), %rsi
	movq	_coordinates_x@GOTPCREL(%rip), %rax
	movq	(%rax), %rdx
	movq	%r14, %rdi
	movl	%ebx, %ecx
	callq	_build_degamma
	movq	(%r12), %r8
	movq	40(%r15), %rax
	movq	24(%r15), %rcx
	movq	32(%r15), %rdx
	leaq	1(%r8), %r9
	cmpq	$4, %r9
	jae	LBB0_54
## %bb.36:
	xorl	%esi, %esi
	jmp	LBB0_63
LBB0_37:
	xorl	%eax, %eax
	jmp	LBB0_85
LBB0_38:
	movq	%r15, -56(%rbp)                 ## 8-byte Spill
	leaq	(%rax,%r8,4), %rsi
	addq	$4, %rsi
	leaq	4(%rdx,%r8,4), %rdi
	leaq	(%rcx,%r8,4), %r13
	addq	$4, %r13
	leaq	(%r8,%r8,2), %rbx
	addq	$3, %rbx
	leaq	(%r14,%rbx,4), %rbx
	cmpq	%rdi, %rax
	setb	-44(%rbp)                       ## 1-byte Folded Spill
	cmpq	%rsi, %rdx
	setb	-43(%rbp)                       ## 1-byte Folded Spill
	cmpq	%r13, %rax
	setb	%r12b
	cmpq	%rsi, %rcx
	setb	-42(%rbp)                       ## 1-byte Folded Spill
	cmpq	%rbx, %rax
	setb	%r15b
	cmpq	%rsi, %r14
	setb	-41(%rbp)                       ## 1-byte Folded Spill
	cmpq	%r13, %rdx
	setb	%r10b
	cmpq	%rdi, %rcx
	setb	-64(%rbp)                       ## 1-byte Folded Spill
	cmpq	%rbx, %rdx
	setb	%r11b
	cmpq	%rdi, %r14
	setb	-45(%rbp)                       ## 1-byte Folded Spill
	cmpq	%rbx, %rcx
	setb	%dil
	cmpq	%r13, %r14
	setb	%r13b
	xorl	%esi, %esi
	movb	-43(%rbp), %bl                  ## 1-byte Reload
	testb	%bl, -44(%rbp)                  ## 1-byte Folded Reload
	jne	LBB0_89
## %bb.39:
	andb	-42(%rbp), %r12b                ## 1-byte Folded Reload
	jne	LBB0_89
## %bb.40:
	andb	-41(%rbp), %r15b                ## 1-byte Folded Reload
	jne	LBB0_89
## %bb.41:
	andb	-64(%rbp), %r10b                ## 1-byte Folded Reload
	movq	-56(%rbp), %r15                 ## 8-byte Reload
	jne	LBB0_47
## %bb.42:
	andb	-45(%rbp), %r11b                ## 1-byte Folded Reload
	jne	LBB0_47
## %bb.43:
	andb	%r13b, %dil
	jne	LBB0_47
## %bb.44:
	movq	%r9, %rsi
	andq	$-4, %rsi
	leaq	44(%r14), %rdi
	xorl	%ebx, %ebx
	.p2align	4, 0x90
LBB0_45:                                ## =>This Inner Loop Header: Depth=1
	movd	-36(%rdi), %xmm0                ## xmm0 = mem[0],zero,zero,zero
	pinsrd	$1, -24(%rdi), %xmm0
	pinsrd	$2, -12(%rdi), %xmm0
	pinsrd	$3, (%rdi), %xmm0
	movdqu	%xmm0, (%rax,%rbx,4)
	movd	-40(%rdi), %xmm0                ## xmm0 = mem[0],zero,zero,zero
	pinsrd	$1, -28(%rdi), %xmm0
	pinsrd	$2, -16(%rdi), %xmm0
	pinsrd	$3, -4(%rdi), %xmm0
	movdqu	%xmm0, (%rdx,%rbx,4)
	movd	-44(%rdi), %xmm0                ## xmm0 = mem[0],zero,zero,zero
	pinsrd	$1, -32(%rdi), %xmm0
	pinsrd	$2, -20(%rdi), %xmm0
	pinsrd	$3, -8(%rdi), %xmm0
	movdqu	%xmm0, (%rcx,%rbx,4)
	addq	$4, %rbx
	addq	$48, %rdi
	cmpq	%rbx, %rsi
	jne	LBB0_45
## %bb.46:
	cmpq	%rsi, %r9
	je	LBB0_83
	jmp	LBB0_47
LBB0_52:
	xorl	%eax, %eax
	testb	$1, %r10b
	jne	LBB0_27
	jmp	LBB0_28
LBB0_54:
	movq	%r15, -56(%rbp)                 ## 8-byte Spill
	leaq	(%rax,%r8,4), %rsi
	addq	$4, %rsi
	leaq	4(%rdx,%r8,4), %rdi
	leaq	(%rcx,%r8,4), %r13
	addq	$4, %r13
	leaq	(%r8,%r8,2), %rbx
	addq	$3, %rbx
	leaq	(%r14,%rbx,4), %rbx
	cmpq	%rdi, %rax
	setb	-44(%rbp)                       ## 1-byte Folded Spill
	cmpq	%rsi, %rdx
	setb	-43(%rbp)                       ## 1-byte Folded Spill
	cmpq	%r13, %rax
	setb	%r12b
	cmpq	%rsi, %rcx
	setb	-42(%rbp)                       ## 1-byte Folded Spill
	cmpq	%rbx, %rax
	setb	%r15b
	cmpq	%rsi, %r14
	setb	-41(%rbp)                       ## 1-byte Folded Spill
	cmpq	%r13, %rdx
	setb	%r10b
	cmpq	%rdi, %rcx
	setb	-64(%rbp)                       ## 1-byte Folded Spill
	cmpq	%rbx, %rdx
	setb	%r11b
	cmpq	%rdi, %r14
	setb	-45(%rbp)                       ## 1-byte Folded Spill
	cmpq	%rbx, %rcx
	setb	%dil
	cmpq	%r13, %r14
	setb	%r13b
	xorl	%esi, %esi
	movb	-43(%rbp), %bl                  ## 1-byte Reload
	testb	%bl, -44(%rbp)                  ## 1-byte Folded Reload
	jne	LBB0_92
## %bb.55:
	andb	-42(%rbp), %r12b                ## 1-byte Folded Reload
	jne	LBB0_92
## %bb.56:
	andb	-41(%rbp), %r15b                ## 1-byte Folded Reload
	jne	LBB0_92
## %bb.57:
	andb	-64(%rbp), %r10b                ## 1-byte Folded Reload
	movq	-56(%rbp), %r15                 ## 8-byte Reload
	jne	LBB0_63
## %bb.58:
	andb	-45(%rbp), %r11b                ## 1-byte Folded Reload
	jne	LBB0_63
## %bb.59:
	andb	%r13b, %dil
	jne	LBB0_63
## %bb.60:
	movq	%r9, %rsi
	andq	$-4, %rsi
	leaq	44(%r14), %rdi
	xorl	%ebx, %ebx
	.p2align	4, 0x90
LBB0_61:                                ## =>This Inner Loop Header: Depth=1
	movd	-36(%rdi), %xmm0                ## xmm0 = mem[0],zero,zero,zero
	pinsrd	$1, -24(%rdi), %xmm0
	pinsrd	$2, -12(%rdi), %xmm0
	pinsrd	$3, (%rdi), %xmm0
	movdqu	%xmm0, (%rax,%rbx,4)
	movd	-40(%rdi), %xmm0                ## xmm0 = mem[0],zero,zero,zero
	pinsrd	$1, -28(%rdi), %xmm0
	pinsrd	$2, -16(%rdi), %xmm0
	pinsrd	$3, -4(%rdi), %xmm0
	movdqu	%xmm0, (%rdx,%rbx,4)
	movd	-44(%rdi), %xmm0                ## xmm0 = mem[0],zero,zero,zero
	pinsrd	$1, -32(%rdi), %xmm0
	pinsrd	$2, -20(%rdi), %xmm0
	pinsrd	$3, -8(%rdi), %xmm0
	movdqu	%xmm0, (%rcx,%rbx,4)
	addq	$4, %rbx
	addq	$48, %rdi
	cmpq	%rbx, %rsi
	jne	LBB0_61
## %bb.62:
	cmpq	%rsi, %r9
	je	LBB0_83
	jmp	LBB0_63
LBB0_69:
	movq	%r15, -56(%rbp)                 ## 8-byte Spill
	leaq	(%rax,%r8,4), %rsi
	addq	$4, %rsi
	leaq	4(%rdx,%r8,4), %rdi
	leaq	(%rcx,%r8,4), %r13
	addq	$4, %r13
	leaq	(%r8,%r8,2), %rbx
	addq	$3, %rbx
	leaq	(%r14,%rbx,4), %rbx
	cmpq	%rdi, %rax
	setb	-44(%rbp)                       ## 1-byte Folded Spill
	cmpq	%rsi, %rdx
	setb	-43(%rbp)                       ## 1-byte Folded Spill
	cmpq	%r13, %rax
	setb	%r12b
	cmpq	%rsi, %rcx
	setb	-42(%rbp)                       ## 1-byte Folded Spill
	cmpq	%rbx, %rax
	setb	%r15b
	cmpq	%rsi, %r14
	setb	-41(%rbp)                       ## 1-byte Folded Spill
	cmpq	%r13, %rdx
	setb	%r10b
	cmpq	%rdi, %rcx
	setb	-64(%rbp)                       ## 1-byte Folded Spill
	cmpq	%rbx, %rdx
	setb	%r11b
	cmpq	%rdi, %r14
	setb	-45(%rbp)                       ## 1-byte Folded Spill
	cmpq	%rbx, %rcx
	setb	%dil
	cmpq	%r13, %r14
	setb	%r13b
	xorl	%esi, %esi
	movb	-43(%rbp), %bl                  ## 1-byte Reload
	testb	%bl, -44(%rbp)                  ## 1-byte Folded Reload
	jne	LBB0_95
## %bb.70:
	andb	-42(%rbp), %r12b                ## 1-byte Folded Reload
	jne	LBB0_95
## %bb.71:
	andb	-41(%rbp), %r15b                ## 1-byte Folded Reload
	jne	LBB0_95
## %bb.72:
	andb	-64(%rbp), %r10b                ## 1-byte Folded Reload
	movq	-56(%rbp), %r15                 ## 8-byte Reload
	jne	LBB0_78
## %bb.73:
	andb	-45(%rbp), %r11b                ## 1-byte Folded Reload
	jne	LBB0_78
## %bb.74:
	andb	%r13b, %dil
	jne	LBB0_78
## %bb.75:
	movq	%r9, %rsi
	andq	$-4, %rsi
	leaq	44(%r14), %rdi
	xorl	%ebx, %ebx
	.p2align	4, 0x90
LBB0_76:                                ## =>This Inner Loop Header: Depth=1
	movd	-36(%rdi), %xmm0                ## xmm0 = mem[0],zero,zero,zero
	pinsrd	$1, -24(%rdi), %xmm0
	pinsrd	$2, -12(%rdi), %xmm0
	pinsrd	$3, (%rdi), %xmm0
	movdqu	%xmm0, (%rax,%rbx,4)
	movd	-40(%rdi), %xmm0                ## xmm0 = mem[0],zero,zero,zero
	pinsrd	$1, -28(%rdi), %xmm0
	pinsrd	$2, -16(%rdi), %xmm0
	pinsrd	$3, -4(%rdi), %xmm0
	movdqu	%xmm0, (%rdx,%rbx,4)
	movd	-44(%rdi), %xmm0                ## xmm0 = mem[0],zero,zero,zero
	pinsrd	$1, -32(%rdi), %xmm0
	pinsrd	$2, -20(%rdi), %xmm0
	pinsrd	$3, -8(%rdi), %xmm0
	movdqu	%xmm0, (%rcx,%rbx,4)
	addq	$4, %rbx
	addq	$48, %rdi
	cmpq	%rbx, %rsi
	jne	LBB0_76
## %bb.77:
	cmpq	%rsi, %r9
	je	LBB0_83
	jmp	LBB0_78
LBB0_87:
	movq	-56(%rbp), %r15                 ## 8-byte Reload
	jmp	LBB0_29
LBB0_89:
	movq	-56(%rbp), %r15                 ## 8-byte Reload
LBB0_47:
	movq	%rsi, %rdi
	testb	$1, %r8b
	jne	LBB0_49
## %bb.48:
	leaq	(%rsi,%rsi,2), %rdi
	movl	8(%r14,%rdi,4), %ebx
	movl	%ebx, (%rax,%rsi,4)
	movl	4(%r14,%rdi,4), %ebx
	movl	%ebx, (%rdx,%rsi,4)
	movl	(%r14,%rdi,4), %edi
	movl	%edi, (%rcx,%rsi,4)
	movq	%rsi, %rdi
	orq	$1, %rdi
LBB0_49:
	cmpq	%rsi, %r8
	je	LBB0_83
## %bb.50:
	leaq	(%rdi,%rdi,2), %rsi
	leaq	(%r14,%rsi,4), %rsi
	addq	$20, %rsi
	.p2align	4, 0x90
LBB0_51:                                ## =>This Inner Loop Header: Depth=1
	movl	-12(%rsi), %ebx
	movl	%ebx, (%rax,%rdi,4)
	movl	-16(%rsi), %ebx
	movl	%ebx, (%rdx,%rdi,4)
	movl	-20(%rsi), %ebx
	movl	%ebx, (%rcx,%rdi,4)
	movl	(%rsi), %ebx
	movl	%ebx, 4(%rax,%rdi,4)
	movl	-4(%rsi), %ebx
	movl	%ebx, 4(%rdx,%rdi,4)
	movl	-8(%rsi), %ebx
	movl	%ebx, 4(%rcx,%rdi,4)
	addq	$2, %rdi
	addq	$24, %rsi
	cmpq	%rdi, %r9
	jne	LBB0_51
	jmp	LBB0_83
LBB0_92:
	movq	-56(%rbp), %r15                 ## 8-byte Reload
LBB0_63:
	movq	%rsi, %rdi
	testb	$1, %r8b
	jne	LBB0_65
## %bb.64:
	leaq	(%rsi,%rsi,2), %rdi
	movl	8(%r14,%rdi,4), %ebx
	movl	%ebx, (%rax,%rsi,4)
	movl	4(%r14,%rdi,4), %ebx
	movl	%ebx, (%rdx,%rsi,4)
	movl	(%r14,%rdi,4), %edi
	movl	%edi, (%rcx,%rsi,4)
	movq	%rsi, %rdi
	orq	$1, %rdi
LBB0_65:
	cmpq	%rsi, %r8
	je	LBB0_83
## %bb.66:
	leaq	(%rdi,%rdi,2), %rsi
	leaq	(%r14,%rsi,4), %rsi
	addq	$20, %rsi
	.p2align	4, 0x90
LBB0_67:                                ## =>This Inner Loop Header: Depth=1
	movl	-12(%rsi), %ebx
	movl	%ebx, (%rax,%rdi,4)
	movl	-16(%rsi), %ebx
	movl	%ebx, (%rdx,%rdi,4)
	movl	-20(%rsi), %ebx
	movl	%ebx, (%rcx,%rdi,4)
	movl	(%rsi), %ebx
	movl	%ebx, 4(%rax,%rdi,4)
	movl	-4(%rsi), %ebx
	movl	%ebx, 4(%rdx,%rdi,4)
	movl	-8(%rsi), %ebx
	movl	%ebx, 4(%rcx,%rdi,4)
	addq	$2, %rdi
	addq	$24, %rsi
	cmpq	%rdi, %r9
	jne	LBB0_67
	jmp	LBB0_83
LBB0_95:
	movq	-56(%rbp), %r15                 ## 8-byte Reload
LBB0_78:
	movq	%rsi, %rdi
	testb	$1, %r8b
	jne	LBB0_80
## %bb.79:
	leaq	(%rsi,%rsi,2), %rdi
	movl	8(%r14,%rdi,4), %ebx
	movl	%ebx, (%rax,%rsi,4)
	movl	4(%r14,%rdi,4), %ebx
	movl	%ebx, (%rdx,%rsi,4)
	movl	(%r14,%rdi,4), %edi
	movl	%edi, (%rcx,%rsi,4)
	movq	%rsi, %rdi
	orq	$1, %rdi
LBB0_80:
	cmpq	%rsi, %r8
	je	LBB0_83
## %bb.81:
	leaq	(%rdi,%rdi,2), %rsi
	leaq	(%r14,%rsi,4), %rsi
	addq	$20, %rsi
	.p2align	4, 0x90
LBB0_82:                                ## =>This Inner Loop Header: Depth=1
	movl	-12(%rsi), %ebx
	movl	%ebx, (%rax,%rdi,4)
	movl	-16(%rsi), %ebx
	movl	%ebx, (%rdx,%rdi,4)
	movl	-20(%rsi), %ebx
	movl	%ebx, (%rcx,%rdi,4)
	movl	(%rsi), %ebx
	movl	%ebx, 4(%rax,%rdi,4)
	movl	-4(%rsi), %ebx
	movl	%ebx, 4(%rdx,%rdi,4)
	movl	-8(%rsi), %ebx
	movl	%ebx, 4(%rcx,%rdi,4)
	addq	$2, %rdi
	addq	$24, %rsi
	cmpq	%rdi, %r9
	jne	LBB0_82
LBB0_83:
	movq	%r14, %rdi
	callq	_kvfree
	movl	$1, %eax
LBB0_84:
	movq	$0, 16(%r15)
	movabsq	$4294967297, %rcx               ## imm = 0x100000001
	movq	%rcx, (%r15)
	movl	$1, 8(%r15)
LBB0_85:
	addq	$24, %rsp
	popq	%rbx
	popq	%r12
	popq	%r13
	popq	%r14
	popq	%r15
	popq	%rbp
	retq
	.cfi_endproc
                                        ## -- End function
	.comm	_TRANSFER_FUNCTION_UNITY,4,2    ## @TRANSFER_FUNCTION_UNITY
	.comm	_TRANSFER_FUNCTION_LINEAR,4,2   ## @TRANSFER_FUNCTION_LINEAR
	.comm	_MAX_HW_POINTS,8,3              ## @MAX_HW_POINTS
	.comm	_coordinates_x,8,3              ## @coordinates_x
	.comm	_TRANSFER_FUNCTION_PQ,4,2       ## @TRANSFER_FUNCTION_PQ
	.comm	__EXTRA_POINTS,8,3              ## @_EXTRA_POINTS
	.comm	_GFP_KERNEL,4,2                 ## @GFP_KERNEL
	.comm	_TRANSFER_FUNCTION_SRGB,4,2     ## @TRANSFER_FUNCTION_SRGB
	.comm	_TRANSFER_FUNCTION_BT709,4,2    ## @TRANSFER_FUNCTION_BT709
	.comm	_TRANSFER_FUNCTION_GAMMA22,4,2  ## @TRANSFER_FUNCTION_GAMMA22
	.comm	_TRANSFER_FUNCTION_GAMMA24,4,2  ## @TRANSFER_FUNCTION_GAMMA24
	.comm	_TRANSFER_FUNCTION_GAMMA26,4,2  ## @TRANSFER_FUNCTION_GAMMA26
	.comm	_TRANSFER_FUNCTION_HLG,4,2      ## @TRANSFER_FUNCTION_HLG
.subsections_via_symbols

	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.globl	_mod_color_calculate_degamma_curve ; -- Begin function mod_color_calculate_degamma_curve
	.p2align	2
_mod_color_calculate_degamma_curve:     ; @mod_color_calculate_degamma_curve
	.cfi_startproc
; %bb.0:
	stp	x22, x21, [sp, #-48]!           ; 16-byte Folded Spill
	.cfi_def_cfa_offset 48
	stp	x20, x19, [sp, #16]             ; 16-byte Folded Spill
	stp	x29, x30, [sp, #32]             ; 16-byte Folded Spill
	add	x29, sp, #32
	.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
	mov	x19, x1
Lloh0:
	adrp	x8, _TRANSFER_FUNCTION_UNITY@GOTPAGE
Lloh1:
	ldr	x8, [x8, _TRANSFER_FUNCTION_UNITY@GOTPAGEOFF]
Lloh2:
	ldr	w8, [x8]
Lloh3:
	adrp	x9, _TRANSFER_FUNCTION_LINEAR@GOTPAGE
Lloh4:
	ldr	x9, [x9, _TRANSFER_FUNCTION_LINEAR@GOTPAGEOFF]
Lloh5:
	ldr	w9, [x9]
	cmp	w8, w0
	ccmp	w9, w0, #4, ne
	b.ne	LBB0_3
; %bb.1:
Lloh6:
	adrp	x8, _MAX_HW_POINTS@GOTPAGE
Lloh7:
	ldr	x8, [x8, _MAX_HW_POINTS@GOTPAGEOFF]
Lloh8:
	ldr	x11, [x8]
Lloh9:
	adrp	x8, _coordinates_x@GOTPAGE
Lloh10:
	ldr	x8, [x8, _coordinates_x@GOTPAGEOFF]
Lloh11:
	ldr	x8, [x8]
	ldp	x10, x9, [x19, #32]
	ldr	x12, [x19, #24]
	add	x14, x11, #1
	cmp	x14, #8
	b.hs	LBB0_7
; %bb.2:
	mov	x13, #0
	b	LBB0_16
LBB0_3:
	mov	x21, x0
Lloh12:
	adrp	x8, _TRANSFER_FUNCTION_PQ@GOTPAGE
Lloh13:
	ldr	x8, [x8, _TRANSFER_FUNCTION_PQ@GOTPAGEOFF]
Lloh14:
	ldr	w8, [x8]
	cmp	w8, w0
	b.ne	LBB0_18
; %bb.4:
Lloh15:
	adrp	x21, _MAX_HW_POINTS@GOTPAGE
Lloh16:
	ldr	x21, [x21, _MAX_HW_POINTS@GOTPAGEOFF]
Lloh17:
	adrp	x8, __EXTRA_POINTS@GOTPAGE
Lloh18:
	ldr	x8, [x8, __EXTRA_POINTS@GOTPAGEOFF]
	ldr	x9, [x21]
Lloh19:
	ldr	x8, [x8]
	add	x0, x8, x9
Lloh20:
	adrp	x8, _GFP_KERNEL@GOTPAGE
Lloh21:
	ldr	x8, [x8, _GFP_KERNEL@GOTPAGEOFF]
Lloh22:
	ldr	w2, [x8]
	mov	w1, #12
	bl	_kvcalloc
	cbz	x0, LBB0_63
; %bb.5:
	mov	x20, x0
	ldr	x1, [x21]
Lloh23:
	adrp	x8, _coordinates_x@GOTPAGE
Lloh24:
	ldr	x8, [x8, _coordinates_x@GOTPAGEOFF]
Lloh25:
	ldr	x2, [x8]
	bl	_build_de_pq
	ldr	x12, [x21]
	ldp	x9, x8, [x19, #32]
	ldr	x10, [x19, #24]
	add	x13, x12, #1
	cmp	x13, #8
	b.hs	LBB0_26
; %bb.6:
	mov	x11, #0
	b	LBB0_35
LBB0_7:
	mov	x13, #0
	lsl	x15, x11, #2
	add	x16, x15, #4
	add	x2, x9, x16
	add	x3, x10, x16
	add	x1, x12, x16
	cmp	x9, x1
	ccmp	x12, x2, #2, lo
	cset	w15, lo
	add	x4, x8, x16
	cmp	x9, x4
	ccmp	x8, x2, #2, lo
	cset	w16, lo
	cmp	x10, x1
	ccmp	x12, x3, #2, lo
	cset	w17, lo
	cmp	x10, x4
	ccmp	x8, x3, #2, lo
	cset	w0, lo
	cmp	x12, x4
	ccmp	x8, x1, #2, lo
	cset	w1, lo
	cmp	x10, x2
	ccmp	x9, x3, #2, lo
	b.lo	LBB0_16
; %bb.8:
	tbnz	w15, #0, LBB0_16
; %bb.9:
	tbnz	w16, #0, LBB0_16
; %bb.10:
	tbnz	w17, #0, LBB0_16
; %bb.11:
	tbnz	w0, #0, LBB0_16
; %bb.12:
	tbnz	w1, #0, LBB0_16
; %bb.13:
	and	x13, x14, #0xfffffffffffffff8
	add	x15, x8, #16
	add	x16, x9, #16
	add	x17, x10, #16
	add	x0, x12, #16
	mov	x1, x13
LBB0_14:                                ; =>This Inner Loop Header: Depth=1
	ldp	q0, q1, [x15, #-16]
	stp	q0, q1, [x16, #-16]
	stp	q0, q1, [x17, #-16]
	add	x15, x15, #32
	stp	q0, q1, [x0, #-16]
	add	x16, x16, #32
	add	x17, x17, #32
	add	x0, x0, #32
	subs	x1, x1, #8
	b.ne	LBB0_14
; %bb.15:
	cmp	x14, x13
	b.eq	LBB0_61
LBB0_16:
	sub	x11, x11, x13
	add	x11, x11, #1
	lsl	x13, x13, #2
	add	x12, x12, x13
	add	x10, x10, x13
	add	x9, x9, x13
	add	x8, x8, x13
LBB0_17:                                ; =>This Inner Loop Header: Depth=1
	ldr	w13, [x8]
	str	w13, [x9], #4
	ldr	w13, [x8]
	str	w13, [x10], #4
	ldr	w13, [x8], #4
	str	w13, [x12], #4
	subs	x11, x11, #1
	b.ne	LBB0_17
	b	LBB0_61
LBB0_18:
Lloh26:
	adrp	x8, _TRANSFER_FUNCTION_SRGB@GOTPAGE
Lloh27:
	ldr	x8, [x8, _TRANSFER_FUNCTION_SRGB@GOTPAGEOFF]
Lloh28:
	ldr	w8, [x8]
Lloh29:
	adrp	x9, _TRANSFER_FUNCTION_BT709@GOTPAGE
Lloh30:
	ldr	x9, [x9, _TRANSFER_FUNCTION_BT709@GOTPAGEOFF]
Lloh31:
	ldr	w9, [x9]
Lloh32:
	adrp	x10, _TRANSFER_FUNCTION_GAMMA22@GOTPAGE
Lloh33:
	ldr	x10, [x10, _TRANSFER_FUNCTION_GAMMA22@GOTPAGEOFF]
Lloh34:
	ldr	w10, [x10]
Lloh35:
	adrp	x11, _TRANSFER_FUNCTION_GAMMA24@GOTPAGE
Lloh36:
	ldr	x11, [x11, _TRANSFER_FUNCTION_GAMMA24@GOTPAGEOFF]
Lloh37:
	ldr	w11, [x11]
Lloh38:
	adrp	x12, _TRANSFER_FUNCTION_GAMMA26@GOTPAGE
Lloh39:
	ldr	x12, [x12, _TRANSFER_FUNCTION_GAMMA26@GOTPAGEOFF]
Lloh40:
	ldr	w12, [x12]
	cmp	w8, w21
	ccmp	w9, w21, #4, ne
	ccmp	w10, w21, #4, ne
	ccmp	w11, w21, #4, ne
	ccmp	w12, w21, #4, ne
	b.ne	LBB0_22
; %bb.19:
Lloh41:
	adrp	x22, _MAX_HW_POINTS@GOTPAGE
Lloh42:
	ldr	x22, [x22, _MAX_HW_POINTS@GOTPAGEOFF]
Lloh43:
	adrp	x8, __EXTRA_POINTS@GOTPAGE
Lloh44:
	ldr	x8, [x8, __EXTRA_POINTS@GOTPAGEOFF]
	ldr	x9, [x22]
Lloh45:
	ldr	x8, [x8]
	add	x0, x8, x9
Lloh46:
	adrp	x8, _GFP_KERNEL@GOTPAGE
Lloh47:
	ldr	x8, [x8, _GFP_KERNEL@GOTPAGEOFF]
Lloh48:
	ldr	w2, [x8]
	mov	w1, #12
	bl	_kvcalloc
	cbz	x0, LBB0_63
; %bb.20:
	mov	x20, x0
	ldr	x1, [x22]
Lloh49:
	adrp	x8, _coordinates_x@GOTPAGE
Lloh50:
	ldr	x8, [x8, _coordinates_x@GOTPAGEOFF]
Lloh51:
	ldr	x2, [x8]
	mov	x3, x21
	bl	_build_degamma
	ldr	x12, [x22]
	ldp	x9, x8, [x19, #32]
	ldr	x10, [x19, #24]
	add	x13, x12, #1
	cmp	x13, #8
	b.hs	LBB0_38
; %bb.21:
	mov	x11, #0
	b	LBB0_47
LBB0_22:
Lloh52:
	adrp	x8, _TRANSFER_FUNCTION_HLG@GOTPAGE
Lloh53:
	ldr	x8, [x8, _TRANSFER_FUNCTION_HLG@GOTPAGEOFF]
Lloh54:
	ldr	w8, [x8]
	cmp	w8, w21
	b.ne	LBB0_37
; %bb.23:
Lloh55:
	adrp	x21, _MAX_HW_POINTS@GOTPAGE
Lloh56:
	ldr	x21, [x21, _MAX_HW_POINTS@GOTPAGEOFF]
Lloh57:
	adrp	x8, __EXTRA_POINTS@GOTPAGE
Lloh58:
	ldr	x8, [x8, __EXTRA_POINTS@GOTPAGEOFF]
	ldr	x9, [x21]
Lloh59:
	ldr	x8, [x8]
	add	x0, x8, x9
Lloh60:
	adrp	x8, _GFP_KERNEL@GOTPAGE
Lloh61:
	ldr	x8, [x8, _GFP_KERNEL@GOTPAGEOFF]
Lloh62:
	ldr	w2, [x8]
	mov	w1, #12
	bl	_kvcalloc
	cbz	x0, LBB0_63
; %bb.24:
	mov	x20, x0
	ldr	x1, [x21]
Lloh63:
	adrp	x8, _coordinates_x@GOTPAGE
Lloh64:
	ldr	x8, [x8, _coordinates_x@GOTPAGEOFF]
Lloh65:
	ldr	x2, [x8]
	mov	w3, #80
	mov	w4, #1000
	bl	_build_hlg_degamma
	ldr	x12, [x21]
	ldp	x9, x8, [x19, #32]
	ldr	x10, [x19, #24]
	add	x13, x12, #1
	cmp	x13, #8
	b.hs	LBB0_49
; %bb.25:
	mov	x11, #0
	b	LBB0_58
LBB0_26:
	mov	x11, #0
	lsl	x14, x13, #2
	add	x1, x9, x14
	mov	w15, #12
	madd	x0, x13, x15, x20
	add	x2, x10, x14
	cmp	x8, x2
	add	x3, x8, x14
	ccmp	x10, x3, #2, lo
	cset	w14, lo
	cmp	x8, x0
	ccmp	x20, x3, #2, lo
	cset	w15, lo
	cmp	x9, x2
	ccmp	x10, x1, #2, lo
	cset	w16, lo
	cmp	x9, x0
	ccmp	x20, x1, #2, lo
	cset	w17, lo
	cmp	x10, x0
	ccmp	x20, x2, #2, lo
	cset	w0, lo
	cmp	x9, x3
	ccmp	x8, x1, #2, lo
	b.lo	LBB0_35
; %bb.27:
	tbnz	w14, #0, LBB0_35
; %bb.28:
	tbnz	w15, #0, LBB0_35
; %bb.29:
	tbnz	w16, #0, LBB0_35
; %bb.30:
	tbnz	w17, #0, LBB0_35
; %bb.31:
	tbnz	w0, #0, LBB0_35
; %bb.32:
	and	x11, x13, #0xfffffffffffffff8
	add	x14, x8, #16
	add	x15, x9, #16
	add	x16, x10, #16
	mov	x17, x11
	mov	x0, x20
LBB0_33:                                ; =>This Inner Loop Header: Depth=1
	mov	x1, x0
	add	x0, x0, #96
	ld3.4s	{ v0, v1, v2 }, [x1], #48
	ld3.4s	{ v3, v4, v5 }, [x1]
	stp	q2, q5, [x14, #-16]
	stp	q1, q4, [x15, #-16]
	stp	q0, q3, [x16, #-16]
	add	x14, x14, #32
	add	x15, x15, #32
	add	x16, x16, #32
	subs	x17, x17, #8
	b.ne	LBB0_33
; %bb.34:
	cmp	x13, x11
	b.eq	LBB0_60
LBB0_35:
	sub	x12, x12, x11
	add	x12, x12, #1
	lsl	x13, x11, #2
	add	x10, x10, x13
	add	x9, x9, x13
	add	x8, x8, x13
	mov	w13, #12
	mul	x11, x11, x13
	add	x11, x20, x11
	add	x11, x11, #4
LBB0_36:                                ; =>This Inner Loop Header: Depth=1
	ldr	w13, [x11, #4]
	str	w13, [x8], #4
	ldr	w13, [x11]
	str	w13, [x9], #4
	ldur	w13, [x11, #-4]
	str	w13, [x10], #4
	add	x11, x11, #12
	subs	x12, x12, #1
	b.ne	LBB0_36
	b	LBB0_60
LBB0_37:
	mov	w0, #0
	b	LBB0_62
LBB0_38:
	mov	x11, #0
	lsl	x14, x13, #2
	add	x1, x9, x14
	mov	w15, #12
	madd	x0, x13, x15, x20
	add	x2, x10, x14
	cmp	x8, x2
	add	x3, x8, x14
	ccmp	x10, x3, #2, lo
	cset	w14, lo
	cmp	x8, x0
	ccmp	x20, x3, #2, lo
	cset	w15, lo
	cmp	x9, x2
	ccmp	x10, x1, #2, lo
	cset	w16, lo
	cmp	x9, x0
	ccmp	x20, x1, #2, lo
	cset	w17, lo
	cmp	x10, x0
	ccmp	x20, x2, #2, lo
	cset	w0, lo
	cmp	x9, x3
	ccmp	x8, x1, #2, lo
	b.lo	LBB0_47
; %bb.39:
	tbnz	w14, #0, LBB0_47
; %bb.40:
	tbnz	w15, #0, LBB0_47
; %bb.41:
	tbnz	w16, #0, LBB0_47
; %bb.42:
	tbnz	w17, #0, LBB0_47
; %bb.43:
	tbnz	w0, #0, LBB0_47
; %bb.44:
	and	x11, x13, #0xfffffffffffffff8
	add	x14, x8, #16
	add	x15, x9, #16
	add	x16, x10, #16
	mov	x17, x11
	mov	x0, x20
LBB0_45:                                ; =>This Inner Loop Header: Depth=1
	mov	x1, x0
	add	x0, x0, #96
	ld3.4s	{ v0, v1, v2 }, [x1], #48
	ld3.4s	{ v3, v4, v5 }, [x1]
	stp	q2, q5, [x14, #-16]
	stp	q1, q4, [x15, #-16]
	stp	q0, q3, [x16, #-16]
	add	x14, x14, #32
	add	x15, x15, #32
	add	x16, x16, #32
	subs	x17, x17, #8
	b.ne	LBB0_45
; %bb.46:
	cmp	x13, x11
	b.eq	LBB0_60
LBB0_47:
	sub	x12, x12, x11
	add	x12, x12, #1
	lsl	x13, x11, #2
	add	x10, x10, x13
	add	x9, x9, x13
	add	x8, x8, x13
	mov	w13, #12
	mul	x11, x11, x13
	add	x11, x20, x11
	add	x11, x11, #4
LBB0_48:                                ; =>This Inner Loop Header: Depth=1
	ldr	w13, [x11, #4]
	str	w13, [x8], #4
	ldr	w13, [x11]
	str	w13, [x9], #4
	ldur	w13, [x11, #-4]
	str	w13, [x10], #4
	add	x11, x11, #12
	subs	x12, x12, #1
	b.ne	LBB0_48
	b	LBB0_60
LBB0_49:
	mov	x11, #0
	lsl	x14, x13, #2
	add	x1, x9, x14
	mov	w15, #12
	madd	x0, x13, x15, x20
	add	x2, x10, x14
	cmp	x8, x2
	add	x3, x8, x14
	ccmp	x10, x3, #2, lo
	cset	w14, lo
	cmp	x8, x0
	ccmp	x20, x3, #2, lo
	cset	w15, lo
	cmp	x9, x2
	ccmp	x10, x1, #2, lo
	cset	w16, lo
	cmp	x9, x0
	ccmp	x20, x1, #2, lo
	cset	w17, lo
	cmp	x10, x0
	ccmp	x20, x2, #2, lo
	cset	w0, lo
	cmp	x9, x3
	ccmp	x8, x1, #2, lo
	b.lo	LBB0_58
; %bb.50:
	tbnz	w14, #0, LBB0_58
; %bb.51:
	tbnz	w15, #0, LBB0_58
; %bb.52:
	tbnz	w16, #0, LBB0_58
; %bb.53:
	tbnz	w17, #0, LBB0_58
; %bb.54:
	tbnz	w0, #0, LBB0_58
; %bb.55:
	and	x11, x13, #0xfffffffffffffff8
	add	x14, x8, #16
	add	x15, x9, #16
	add	x16, x10, #16
	mov	x17, x11
	mov	x0, x20
LBB0_56:                                ; =>This Inner Loop Header: Depth=1
	mov	x1, x0
	add	x0, x0, #96
	ld3.4s	{ v0, v1, v2 }, [x1], #48
	ld3.4s	{ v3, v4, v5 }, [x1]
	stp	q2, q5, [x14, #-16]
	stp	q1, q4, [x15, #-16]
	stp	q0, q3, [x16, #-16]
	add	x14, x14, #32
	add	x15, x15, #32
	add	x16, x16, #32
	subs	x17, x17, #8
	b.ne	LBB0_56
; %bb.57:
	cmp	x13, x11
	b.eq	LBB0_60
LBB0_58:
	sub	x12, x12, x11
	add	x12, x12, #1
	lsl	x13, x11, #2
	add	x10, x10, x13
	add	x9, x9, x13
	add	x8, x8, x13
	mov	w13, #12
	mul	x11, x11, x13
	add	x11, x20, x11
	add	x11, x11, #4
LBB0_59:                                ; =>This Inner Loop Header: Depth=1
	ldr	w13, [x11, #4]
	str	w13, [x8], #4
	ldr	w13, [x11]
	str	w13, [x9], #4
	ldur	w13, [x11, #-4]
	str	w13, [x10], #4
	add	x11, x11, #12
	subs	x12, x12, #1
	b.ne	LBB0_59
LBB0_60:
	mov	x0, x20
	bl	_kvfree
LBB0_61:
	mov	w0, #1
LBB0_62:
	str	xzr, [x19, #16]
	movi.2s	v0, #1
	str	d0, [x19]
	mov	w8, #1
	str	w8, [x19, #8]
LBB0_63:
	ldp	x29, x30, [sp, #32]             ; 16-byte Folded Reload
	ldp	x20, x19, [sp, #16]             ; 16-byte Folded Reload
	ldp	x22, x21, [sp], #48             ; 16-byte Folded Reload
	ret
	.loh AdrpLdrGotLdr	Lloh3, Lloh4, Lloh5
	.loh AdrpLdrGotLdr	Lloh0, Lloh1, Lloh2
	.loh AdrpLdrGotLdr	Lloh9, Lloh10, Lloh11
	.loh AdrpLdrGotLdr	Lloh6, Lloh7, Lloh8
	.loh AdrpLdrGotLdr	Lloh12, Lloh13, Lloh14
	.loh AdrpLdrGotLdr	Lloh20, Lloh21, Lloh22
	.loh AdrpLdrGotLdr	Lloh17, Lloh18, Lloh19
	.loh AdrpLdrGot	Lloh15, Lloh16
	.loh AdrpLdrGotLdr	Lloh23, Lloh24, Lloh25
	.loh AdrpLdrGotLdr	Lloh38, Lloh39, Lloh40
	.loh AdrpLdrGotLdr	Lloh35, Lloh36, Lloh37
	.loh AdrpLdrGotLdr	Lloh32, Lloh33, Lloh34
	.loh AdrpLdrGotLdr	Lloh29, Lloh30, Lloh31
	.loh AdrpLdrGotLdr	Lloh26, Lloh27, Lloh28
	.loh AdrpLdrGotLdr	Lloh46, Lloh47, Lloh48
	.loh AdrpLdrGotLdr	Lloh43, Lloh44, Lloh45
	.loh AdrpLdrGot	Lloh41, Lloh42
	.loh AdrpLdrGotLdr	Lloh49, Lloh50, Lloh51
	.loh AdrpLdrGotLdr	Lloh52, Lloh53, Lloh54
	.loh AdrpLdrGotLdr	Lloh60, Lloh61, Lloh62
	.loh AdrpLdrGotLdr	Lloh57, Lloh58, Lloh59
	.loh AdrpLdrGot	Lloh55, Lloh56
	.loh AdrpLdrGotLdr	Lloh63, Lloh64, Lloh65
	.cfi_endproc
                                        ; -- End function
	.comm	_TRANSFER_FUNCTION_UNITY,4,2    ; @TRANSFER_FUNCTION_UNITY
	.comm	_TRANSFER_FUNCTION_LINEAR,4,2   ; @TRANSFER_FUNCTION_LINEAR
	.comm	_MAX_HW_POINTS,8,3              ; @MAX_HW_POINTS
	.comm	_coordinates_x,8,3              ; @coordinates_x
	.comm	_TRANSFER_FUNCTION_PQ,4,2       ; @TRANSFER_FUNCTION_PQ
	.comm	__EXTRA_POINTS,8,3              ; @_EXTRA_POINTS
	.comm	_GFP_KERNEL,4,2                 ; @GFP_KERNEL
	.comm	_TRANSFER_FUNCTION_SRGB,4,2     ; @TRANSFER_FUNCTION_SRGB
	.comm	_TRANSFER_FUNCTION_BT709,4,2    ; @TRANSFER_FUNCTION_BT709
	.comm	_TRANSFER_FUNCTION_GAMMA22,4,2  ; @TRANSFER_FUNCTION_GAMMA22
	.comm	_TRANSFER_FUNCTION_GAMMA24,4,2  ; @TRANSFER_FUNCTION_GAMMA24
	.comm	_TRANSFER_FUNCTION_GAMMA26,4,2  ; @TRANSFER_FUNCTION_GAMMA26
	.comm	_TRANSFER_FUNCTION_HLG,4,2      ; @TRANSFER_FUNCTION_HLG
.subsections_via_symbols
