	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	4, 0x90                         ## -- Begin function color_to_ycbcr
_color_to_ycbcr:                        ## @color_to_ycbcr
	.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	%r9, %r11
	movq	%r8, %r9
	movl	%ecx, %r12d
	movl	%edx, %ebx
	movl	%esi, %r13d
	movq	16(%rbp), %r10
	movq	(%rdi), %r14
	movq	_V4L2_QUANTIZATION_FULL_RANGE@GOTPCREL(%rip), %rax
	movq	(%rax), %r15
	xorl	%r8d, %r8d
	cmpq	%r15, %r14
	setne	%r8b
	shll	$4, %r8d
	movl	8(%rdi), %eax
	addl	$-128, %eax
	cmpl	$6, %eax
	ja	LBB0_18
## %bb.1:
	leaq	LJTI0_0(%rip), %rcx
	movslq	(%rcx,%rax,4), %rax
	addq	%rcx, %rax
	jmpq	*%rax
LBB0_8:
	leaq	_color_to_ycbcr.rec709(%rip), %rdi
	jmp	LBB0_7
LBB0_6:
	leaq	_color_to_ycbcr.bt601(%rip), %rdi
LBB0_7:
	movl	%r13d, %esi
	movl	%ebx, %edx
	movl	%r12d, %ecx
	movl	$16, %r8d
	jmp	LBB0_4
LBB0_17:
	cmpq	%r15, %r14
	leaq	_color_to_ycbcr.smpte240m_full(%rip), %rax
	leaq	_color_to_ycbcr.smpte240m(%rip), %rdi
	jmp	LBB0_3
LBB0_10:
	movq	%r9, -56(%rbp)                  ## 8-byte Spill
	movq	%r11, -64(%rbp)                 ## 8-byte Spill
	movl	%r13d, %edi
	callq	_rec709_to_linear
	imull	$17149, %eax, %eax              ## imm = 0x42FD
	movl	%eax, -44(%rbp)                 ## 4-byte Spill
	movl	%ebx, %edi
	callq	_rec709_to_linear
	imull	$44260, %eax, %ebx              ## imm = 0xACE4
	addl	-44(%rbp), %ebx                 ## 4-byte Folded Reload
	movl	%r12d, %edi
	callq	_rec709_to_linear
	imull	$3871, %eax, %edi               ## imm = 0xF1F
	addl	%ebx, %edi
	sarl	$16, %edi
	callq	_linear_to_rec709
	cmpq	%r15, %r14
	jne	LBB0_12
## %bb.11:
	movl	$41275, %edx                    ## imm = 0xA13B
	movl	$33643, %ecx                    ## imm = 0x836B
	movl	%eax, %esi
	jmp	LBB0_13
LBB0_18:
	cmpq	%r15, %r14
	leaq	_color_to_ycbcr.rec709_full(%rip), %rax
	leaq	_color_to_ycbcr.rec709(%rip), %rdi
	jmp	LBB0_3
LBB0_2:
	cmpq	%r15, %r14
	leaq	_color_to_ycbcr.bt601_full(%rip), %rax
	leaq	_color_to_ycbcr.bt601(%rip), %rdi
	jmp	LBB0_3
LBB0_9:
	cmpq	%r15, %r14
	leaq	_color_to_ycbcr.bt2020_full(%rip), %rax
	leaq	_color_to_ycbcr.bt2020(%rip), %rdi
LBB0_3:
	cmoveq	%rax, %rdi
	movl	%r13d, %esi
	movl	%ebx, %edx
	movl	%r12d, %ecx
LBB0_4:
	pushq	%r10
	pushq	%r11
	callq	_rgb2ycbcr
	addq	$40, %rsp
LBB0_5:
	popq	%rbx
	popq	%r12
	popq	%r13
	popq	%r14
	popq	%r15
	popq	%rbp
	retq
LBB0_12:
	imull	$219, %eax, %ecx
	movslq	%ecx, %rcx
	imulq	$-2139062143, %rcx, %rdx        ## imm = 0x80808081
	shrq	$32, %rdx
	addl	%edx, %ecx
	movl	%ecx, %edx
	sarl	$7, %edx
	shrl	$31, %ecx
	leal	(%rdx,%rcx), %esi
	addl	$256, %esi                      ## imm = 0x100
	movl	$36257, %edx                    ## imm = 0x8DA1
	movl	$29553, %ecx                    ## imm = 0x7371
LBB0_13:
	movq	-64(%rbp), %rdi                 ## 8-byte Reload
	movq	-56(%rbp), %rbx                 ## 8-byte Reload
	movl	%esi, (%rbx)
	subl	%eax, %r12d
	cmovgl	%edx, %ecx
	imull	%r12d, %ecx
	sarl	$16, %ecx
	addl	$2048, %ecx                     ## imm = 0x800
	movl	%ecx, (%rdi)
	subl	%eax, %r13d
	movq	16(%rbp), %rdx
	jle	LBB0_14
## %bb.16:
	cmpq	%r15, %r14
	movl	$65700, %eax                    ## imm = 0x100A4
	movl	$57713, %ecx                    ## imm = 0xE171
	jmp	LBB0_15
LBB0_14:
	cmpq	%r15, %r14
	movl	$37989, %eax                    ## imm = 0x9465
	movl	$33371, %ecx                    ## imm = 0x825B
LBB0_15:
	cmovel	%eax, %ecx
	imull	%ecx, %r13d
	sarl	$16, %r13d
	addl	$2048, %r13d                    ## imm = 0x800
	movl	%r13d, (%rdx)
	addq	$24, %rsp
	jmp	LBB0_5
	.cfi_endproc
	.p2align	2, 0x90
	.data_region jt32
.set L0_0_set_8, LBB0_8-LJTI0_0
.set L0_0_set_6, LBB0_6-LJTI0_0
.set L0_0_set_17, LBB0_17-LJTI0_0
.set L0_0_set_10, LBB0_10-LJTI0_0
.set L0_0_set_9, LBB0_9-LJTI0_0
.set L0_0_set_18, LBB0_18-LJTI0_0
.set L0_0_set_2, LBB0_2-LJTI0_0
LJTI0_0:
	.long	L0_0_set_8
	.long	L0_0_set_6
	.long	L0_0_set_17
	.long	L0_0_set_10
	.long	L0_0_set_9
	.long	L0_0_set_18
	.long	L0_0_set_2
	.end_data_region
                                        ## -- End function
	.section	__TEXT,__const
	.p2align	4                               ## @color_to_ycbcr.bt601
_color_to_ycbcr.bt601:
	.long	16763                           ## 0x417b
	.long	32910                           ## 0x808e
	.long	6391                            ## 0x18f7
	.long	4294957623                      ## 0xffffda37
	.long	4294948299                      ## 0xffffb5cb
	.long	28672                           ## 0x7000
	.long	28672                           ## 0x7000
	.long	4294943287                      ## 0xffffa237
	.long	4294962635                      ## 0xffffedcb

	.p2align	4                               ## @color_to_ycbcr.bt601_full
_color_to_ycbcr.bt601_full:
	.long	19519                           ## 0x4c3f
	.long	38319                           ## 0x95af
	.long	7442                            ## 0x1d12
	.long	4294956284                      ## 0xffffd4fc
	.long	4294945670                      ## 0xffffab86
	.long	32640                           ## 0x7f80
	.long	32640                           ## 0x7f80
	.long	4294939964                      ## 0xffff953c
	.long	4294961990                      ## 0xffffeb46

	.p2align	4                               ## @color_to_ycbcr.rec709
_color_to_ycbcr.rec709:
	.long	11919                           ## 0x2e8f
	.long	40097                           ## 0x9ca1
	.long	4048                            ## 0xfd0
	.long	4294960725                      ## 0xffffe655
	.long	4294945197                      ## 0xffffa9ad
	.long	28672                           ## 0x7000
	.long	28672                           ## 0x7000
	.long	4294941251                      ## 0xffff9a43
	.long	4294964671                      ## 0xfffff5bf

	.p2align	4                               ## @color_to_ycbcr.rec709_full
_color_to_ycbcr.rec709_full:
	.long	13879                           ## 0x3637
	.long	46688                           ## 0xb660
	.long	4713                            ## 0x1269
	.long	4294959816                      ## 0xffffe2c8
	.long	4294942138                      ## 0xffff9dba
	.long	32640                           ## 0x7f80
	.long	32640                           ## 0x7f80
	.long	4294937647                      ## 0xffff8c2f
	.long	4294964307                      ## 0xfffff453

	.p2align	4                               ## @color_to_ycbcr.smpte240m
_color_to_ycbcr.smpte240m:
	.long	11886                           ## 0x2e6e
	.long	39301                           ## 0x9985
	.long	4878                            ## 0x130e
	.long	4294960645                      ## 0xffffe605
	.long	4294945277                      ## 0xffffa9fd
	.long	28672                           ## 0x7000
	.long	28672                           ## 0x7000
	.long	4294941779                      ## 0xffff9c53
	.long	4294964143                      ## 0xfffff3af

	.p2align	4                               ## @color_to_ycbcr.smpte240m_full
_color_to_ycbcr.smpte240m_full:
	.long	13839                           ## 0x360f
	.long	45761                           ## 0xb2c1
	.long	5679                            ## 0x162f
	.long	4294959725                      ## 0xffffe26d
	.long	4294942229                      ## 0xffff9e15
	.long	32640                           ## 0x7f80
	.long	32640                           ## 0x7f80
	.long	4294938247                      ## 0xffff8e87
	.long	4294963707                      ## 0xfffff1fb

	.p2align	4                               ## @color_to_ycbcr.bt2020
_color_to_ycbcr.bt2020:
	.long	14728                           ## 0x3988
	.long	38011                           ## 0x947b
	.long	3325                            ## 0xcfd
	.long	4294959292                      ## 0xffffe0bc
	.long	4294946630                      ## 0xffffaf46
	.long	28672                           ## 0x7000
	.long	28672                           ## 0x7000
	.long	4294940930                      ## 0xffff9902
	.long	4294964992                      ## 0xfffff700

	.p2align	4                               ## @color_to_ycbcr.bt2020_full
_color_to_ycbcr.bt2020_full:
	.long	17149                           ## 0x42fd
	.long	44260                           ## 0xace4
	.long	3871                            ## 0xf1f
	.long	4294958184                      ## 0xffffdc68
	.long	4294943770                      ## 0xffffa41a
	.long	32640                           ## 0x7f80
	.long	32640                           ## 0x7f80
	.long	4294937281                      ## 0xffff8ac1
	.long	4294964673                      ## 0xfffff5c1

	.comm	_V4L2_QUANTIZATION_FULL_RANGE,8,3 ## @V4L2_QUANTIZATION_FULL_RANGE
	.no_dead_strip	_color_to_ycbcr
.subsections_via_symbols

	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	2                               ; -- Begin function color_to_ycbcr
_color_to_ycbcr:                        ; @color_to_ycbcr
	.cfi_startproc
; %bb.0:
	stp	x28, x27, [sp, #-96]!           ; 16-byte Folded Spill
	.cfi_def_cfa_offset 96
	stp	x26, x25, [sp, #16]             ; 16-byte Folded Spill
	stp	x24, x23, [sp, #32]             ; 16-byte Folded Spill
	stp	x22, x21, [sp, #48]             ; 16-byte Folded Spill
	stp	x20, x19, [sp, #64]             ; 16-byte Folded Spill
	stp	x29, x30, [sp, #80]             ; 16-byte Folded Spill
	add	x29, sp, #80
	.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, x6
	mov	x20, x5
	mov	x21, x4
	mov	x22, x3
	mov	x24, x2
	mov	x23, x1
	ldr	x25, [x0]
Lloh0:
	adrp	x8, _V4L2_QUANTIZATION_FULL_RANGE@GOTPAGE
Lloh1:
	ldr	x8, [x8, _V4L2_QUANTIZATION_FULL_RANGE@GOTPAGEOFF]
Lloh2:
	ldr	x26, [x8]
	cmp	x25, x26
	cset	w8, ne
	lsl	w4, w8, #4
	ldr	w8, [x0, #8]
	sub	w8, w8, #128
	cmp	w8, #6
	b.hi	LBB0_8
; %bb.1:
Lloh3:
	adrp	x9, lJTI0_0@PAGE
Lloh4:
	add	x9, x9, lJTI0_0@PAGEOFF
	adr	x10, LBB0_2
	ldrb	w11, [x9, x8]
	add	x10, x10, x11, lsl #2
	br	x10
LBB0_2:
Lloh5:
	adrp	x0, _color_to_ycbcr.rec709@PAGE
Lloh6:
	add	x0, x0, _color_to_ycbcr.rec709@PAGEOFF
	b	LBB0_4
LBB0_3:
Lloh7:
	adrp	x0, _color_to_ycbcr.bt601@PAGE
Lloh8:
	add	x0, x0, _color_to_ycbcr.bt601@PAGEOFF
LBB0_4:
	mov	x1, x23
	mov	x2, x24
	mov	x3, x22
	mov	w4, #16
	b	LBB0_12
LBB0_5:
Lloh9:
	adrp	x8, _color_to_ycbcr.smpte240m@PAGE
Lloh10:
	add	x8, x8, _color_to_ycbcr.smpte240m@PAGEOFF
Lloh11:
	adrp	x9, _color_to_ycbcr.smpte240m_full@PAGE
Lloh12:
	add	x9, x9, _color_to_ycbcr.smpte240m_full@PAGEOFF
	b	LBB0_11
LBB0_6:
	mov	x0, x23
	bl	_rec709_to_linear
	mov	w8, #17149
	mul	w27, w0, w8
	mov	x0, x24
	bl	_rec709_to_linear
	mov	w8, #44260
	madd	w24, w0, w8, w27
	mov	x0, x22
	bl	_rec709_to_linear
	mov	w8, #3871
	madd	w8, w0, w8, w24
	asr	w0, w8, #16
	bl	_linear_to_rec709
	mov	w8, #41275
	mov	w9, #33643
	cmp	x25, x26
	mov	w10, #219
	mul	w10, w0, w10
	mov	w11, #32897
	movk	w11, #32896, lsl #16
	smull	x11, w10, w11
	lsr	x11, x11, #32
	add	w10, w11, w10
	asr	w11, w10, #7
	add	w10, w11, w10, lsr #31
	add	w10, w10, #256
	mov	w11, #36257
	mov	w12, #29553
	csel	w9, w9, w12, eq
	csel	w8, w8, w11, eq
	csel	w10, w0, w10, eq
	str	w10, [x21]
	subs	w10, w22, w0
	csel	w8, w8, w9, gt
	mul	w8, w10, w8
	asr	w8, w8, #16
	add	w8, w8, #2048
	str	w8, [x20]
	subs	w8, w23, w0
	b.le	LBB0_13
; %bb.7:
	cmp	x25, x26
	mov	w9, #57713
	mov	w10, #164
	movk	w10, #1, lsl #16
	b	LBB0_14
LBB0_8:
Lloh13:
	adrp	x8, _color_to_ycbcr.rec709@PAGE
Lloh14:
	add	x8, x8, _color_to_ycbcr.rec709@PAGEOFF
Lloh15:
	adrp	x9, _color_to_ycbcr.rec709_full@PAGE
Lloh16:
	add	x9, x9, _color_to_ycbcr.rec709_full@PAGEOFF
	b	LBB0_11
LBB0_9:
Lloh17:
	adrp	x8, _color_to_ycbcr.bt601@PAGE
Lloh18:
	add	x8, x8, _color_to_ycbcr.bt601@PAGEOFF
Lloh19:
	adrp	x9, _color_to_ycbcr.bt601_full@PAGE
Lloh20:
	add	x9, x9, _color_to_ycbcr.bt601_full@PAGEOFF
	b	LBB0_11
LBB0_10:
Lloh21:
	adrp	x8, _color_to_ycbcr.bt2020@PAGE
Lloh22:
	add	x8, x8, _color_to_ycbcr.bt2020@PAGEOFF
Lloh23:
	adrp	x9, _color_to_ycbcr.bt2020_full@PAGE
Lloh24:
	add	x9, x9, _color_to_ycbcr.bt2020_full@PAGEOFF
LBB0_11:
	cmp	x25, x26
	csel	x0, x9, x8, eq
	mov	x1, x23
	mov	x2, x24
	mov	x3, x22
LBB0_12:
	mov	x5, x21
	mov	x6, x20
	mov	x7, x19
	ldp	x29, x30, [sp, #80]             ; 16-byte Folded Reload
	ldp	x20, x19, [sp, #64]             ; 16-byte Folded Reload
	ldp	x22, x21, [sp, #48]             ; 16-byte Folded Reload
	ldp	x24, x23, [sp, #32]             ; 16-byte Folded Reload
	ldp	x26, x25, [sp, #16]             ; 16-byte Folded Reload
	ldp	x28, x27, [sp], #96             ; 16-byte Folded Reload
	b	_rgb2ycbcr
LBB0_13:
	cmp	x25, x26
	mov	w9, #33371
	mov	w10, #37989
LBB0_14:
	csel	w9, w10, w9, eq
	mul	w8, w8, w9
	asr	w8, w8, #16
	add	w8, w8, #2048
	str	w8, [x19]
	ldp	x29, x30, [sp, #80]             ; 16-byte Folded Reload
	ldp	x20, x19, [sp, #64]             ; 16-byte Folded Reload
	ldp	x22, x21, [sp, #48]             ; 16-byte Folded Reload
	ldp	x24, x23, [sp, #32]             ; 16-byte Folded Reload
	ldp	x26, x25, [sp, #16]             ; 16-byte Folded Reload
	ldp	x28, x27, [sp], #96             ; 16-byte Folded Reload
	ret
	.loh AdrpLdrGotLdr	Lloh0, Lloh1, Lloh2
	.loh AdrpAdd	Lloh3, Lloh4
	.loh AdrpAdd	Lloh5, Lloh6
	.loh AdrpAdd	Lloh7, Lloh8
	.loh AdrpAdd	Lloh11, Lloh12
	.loh AdrpAdd	Lloh9, Lloh10
	.loh AdrpAdd	Lloh15, Lloh16
	.loh AdrpAdd	Lloh13, Lloh14
	.loh AdrpAdd	Lloh19, Lloh20
	.loh AdrpAdd	Lloh17, Lloh18
	.loh AdrpAdd	Lloh23, Lloh24
	.loh AdrpAdd	Lloh21, Lloh22
	.cfi_endproc
	.section	__TEXT,__const
lJTI0_0:
	.byte	(LBB0_2-LBB0_2)>>2
	.byte	(LBB0_3-LBB0_2)>>2
	.byte	(LBB0_5-LBB0_2)>>2
	.byte	(LBB0_6-LBB0_2)>>2
	.byte	(LBB0_10-LBB0_2)>>2
	.byte	(LBB0_8-LBB0_2)>>2
	.byte	(LBB0_9-LBB0_2)>>2
                                        ; -- End function
	.p2align	2                               ; @color_to_ycbcr.bt601
_color_to_ycbcr.bt601:
	.long	16763                           ; 0x417b
	.long	32910                           ; 0x808e
	.long	6391                            ; 0x18f7
	.long	4294957623                      ; 0xffffda37
	.long	4294948299                      ; 0xffffb5cb
	.long	28672                           ; 0x7000
	.long	28672                           ; 0x7000
	.long	4294943287                      ; 0xffffa237
	.long	4294962635                      ; 0xffffedcb

	.p2align	2                               ; @color_to_ycbcr.bt601_full
_color_to_ycbcr.bt601_full:
	.long	19519                           ; 0x4c3f
	.long	38319                           ; 0x95af
	.long	7442                            ; 0x1d12
	.long	4294956284                      ; 0xffffd4fc
	.long	4294945670                      ; 0xffffab86
	.long	32640                           ; 0x7f80
	.long	32640                           ; 0x7f80
	.long	4294939964                      ; 0xffff953c
	.long	4294961990                      ; 0xffffeb46

	.p2align	2                               ; @color_to_ycbcr.rec709
_color_to_ycbcr.rec709:
	.long	11919                           ; 0x2e8f
	.long	40097                           ; 0x9ca1
	.long	4048                            ; 0xfd0
	.long	4294960725                      ; 0xffffe655
	.long	4294945197                      ; 0xffffa9ad
	.long	28672                           ; 0x7000
	.long	28672                           ; 0x7000
	.long	4294941251                      ; 0xffff9a43
	.long	4294964671                      ; 0xfffff5bf

	.p2align	2                               ; @color_to_ycbcr.rec709_full
_color_to_ycbcr.rec709_full:
	.long	13879                           ; 0x3637
	.long	46688                           ; 0xb660
	.long	4713                            ; 0x1269
	.long	4294959816                      ; 0xffffe2c8
	.long	4294942138                      ; 0xffff9dba
	.long	32640                           ; 0x7f80
	.long	32640                           ; 0x7f80
	.long	4294937647                      ; 0xffff8c2f
	.long	4294964307                      ; 0xfffff453

	.p2align	2                               ; @color_to_ycbcr.smpte240m
_color_to_ycbcr.smpte240m:
	.long	11886                           ; 0x2e6e
	.long	39301                           ; 0x9985
	.long	4878                            ; 0x130e
	.long	4294960645                      ; 0xffffe605
	.long	4294945277                      ; 0xffffa9fd
	.long	28672                           ; 0x7000
	.long	28672                           ; 0x7000
	.long	4294941779                      ; 0xffff9c53
	.long	4294964143                      ; 0xfffff3af

	.p2align	2                               ; @color_to_ycbcr.smpte240m_full
_color_to_ycbcr.smpte240m_full:
	.long	13839                           ; 0x360f
	.long	45761                           ; 0xb2c1
	.long	5679                            ; 0x162f
	.long	4294959725                      ; 0xffffe26d
	.long	4294942229                      ; 0xffff9e15
	.long	32640                           ; 0x7f80
	.long	32640                           ; 0x7f80
	.long	4294938247                      ; 0xffff8e87
	.long	4294963707                      ; 0xfffff1fb

	.p2align	2                               ; @color_to_ycbcr.bt2020
_color_to_ycbcr.bt2020:
	.long	14728                           ; 0x3988
	.long	38011                           ; 0x947b
	.long	3325                            ; 0xcfd
	.long	4294959292                      ; 0xffffe0bc
	.long	4294946630                      ; 0xffffaf46
	.long	28672                           ; 0x7000
	.long	28672                           ; 0x7000
	.long	4294940930                      ; 0xffff9902
	.long	4294964992                      ; 0xfffff700

	.p2align	2                               ; @color_to_ycbcr.bt2020_full
_color_to_ycbcr.bt2020_full:
	.long	17149                           ; 0x42fd
	.long	44260                           ; 0xace4
	.long	3871                            ; 0xf1f
	.long	4294958184                      ; 0xffffdc68
	.long	4294943770                      ; 0xffffa41a
	.long	32640                           ; 0x7f80
	.long	32640                           ; 0x7f80
	.long	4294937281                      ; 0xffff8ac1
	.long	4294964673                      ; 0xfffff5c1

	.comm	_V4L2_QUANTIZATION_FULL_RANGE,8,3 ; @V4L2_QUANTIZATION_FULL_RANGE
	.no_dead_strip	_color_to_ycbcr
.subsections_via_symbols
