	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.section	__TEXT,__literal8,8byte_literals
	.p2align	3                               ## -- Begin function get_rgb2xyz_matrix
LCPI0_0:
	.quad	0x3ff0000000000000              ## double 1
	.section	__TEXT,__literal16,16byte_literals
	.p2align	4
LCPI0_1:
	.quad	0x3ff0000000000000              ## double 1
	.quad	0x3ff0000000000000              ## double 1
	.section	__TEXT,__text,regular,pure_instructions
	.p2align	4, 0x90
_get_rgb2xyz_matrix:                    ## @get_rgb2xyz_matrix
	.cfi_startproc
## %bb.0:
	pushq	%rbp
	.cfi_def_cfa_offset 16
	.cfi_offset %rbp, -16
	movq	%rsp, %rbp
	.cfi_def_cfa_register %rbp
	pushq	%rbx
	subq	$120, %rsp
	.cfi_offset %rbx, -24
	movq	%rdi, %rbx
	movsd	48(%rbp), %xmm2                 ## xmm2 = mem[0],zero
	movsd	56(%rbp), %xmm0                 ## xmm0 = mem[0],zero
	movsd	64(%rbp), %xmm5                 ## xmm5 = mem[0],zero
	movsd	72(%rbp), %xmm1                 ## xmm1 = mem[0],zero
	movsd	LCPI0_0(%rip), %xmm4            ## xmm4 = mem[0],zero
	movapd	%xmm4, %xmm3
	subsd	%xmm2, %xmm3
	divsd	%xmm0, %xmm2
	movsd	%xmm2, -24(%rbp)                ## 8-byte Spill
	subsd	%xmm0, %xmm3
	divsd	%xmm0, %xmm3
	movsd	%xmm3, -16(%rbp)                ## 8-byte Spill
	subsd	%xmm5, %xmm4
	divsd	%xmm1, %xmm5
	movapd	%xmm5, -112(%rbp)               ## 16-byte Spill
	subsd	%xmm1, %xmm4
	divsd	%xmm1, %xmm4
	movapd	%xmm4, -128(%rbp)               ## 16-byte Spill
	movsd	%xmm2, 16(%rdi)
	movapd	LCPI0_1(%rip), %xmm1            ## xmm1 = [1.0E+0,1.0E+0]
	movupd	%xmm1, 24(%rdi)
	movabsq	$4607182418800017408, %rax      ## imm = 0x3FF0000000000000
	movq	%rax, 40(%rdi)
	movsd	%xmm3, 64(%rdi)
	movddup	%xmm5, %xmm0                    ## xmm0 = xmm5[0,0]
	movapd	%xmm0, -48(%rbp)                ## 16-byte Spill
	movddup	%xmm4, %xmm0                    ## xmm0 = xmm4[0,0]
	movapd	%xmm0, -96(%rbp)                ## 16-byte Spill
	movapd	16(%rbp), %xmm2
	movupd	24(%rbp), %xmm0
	movhpd	32(%rbp), %xmm2                 ## xmm2 = xmm2[0],mem[0]
	movhpd	40(%rbp), %xmm0                 ## xmm0 = xmm0[0],mem[0]
	subpd	%xmm2, %xmm1
	divpd	%xmm0, %xmm2
	movapd	%xmm2, -64(%rbp)                ## 16-byte Spill
	subpd	%xmm0, %xmm1
	divpd	%xmm0, %xmm1
	movapd	%xmm1, -80(%rbp)                ## 16-byte Spill
	movupd	%xmm2, (%rdi)
	movupd	%xmm1, 48(%rdi)
	movq	%rdi, %rsi
	callq	_invert_matrix3x3
	movsd	(%rbx), %xmm0                   ## xmm0 = mem[0],zero
	movsd	8(%rbx), %xmm1                  ## xmm1 = mem[0],zero
	movsd	16(%rbx), %xmm2                 ## xmm2 = mem[0],zero
	movhpd	24(%rbx), %xmm0                 ## xmm0 = xmm0[0],mem[0]
	mulpd	-48(%rbp), %xmm0                ## 16-byte Folded Reload
	movhpd	32(%rbx), %xmm1                 ## xmm1 = xmm1[0],mem[0]
	movhpd	40(%rbx), %xmm2                 ## xmm2 = xmm2[0],mem[0]
	addpd	%xmm0, %xmm1
	mulpd	-96(%rbp), %xmm2                ## 16-byte Folded Reload
	movapd	-112(%rbp), %xmm0               ## 16-byte Reload
	mulsd	48(%rbx), %xmm0
	addsd	56(%rbx), %xmm0
	movapd	%xmm0, %xmm3
	movapd	-128(%rbp), %xmm0               ## 16-byte Reload
	mulsd	64(%rbx), %xmm0
	addpd	%xmm1, %xmm2
	addsd	%xmm3, %xmm0
	movapd	-64(%rbp), %xmm1                ## 16-byte Reload
	mulpd	%xmm2, %xmm1
	movupd	%xmm1, (%rbx)
	movupd	%xmm2, 24(%rbx)
	mulpd	-80(%rbp), %xmm2                ## 16-byte Folded Reload
	movupd	%xmm2, 48(%rbx)
	movsd	-24(%rbp), %xmm1                ## 8-byte Reload
                                        ## xmm1 = mem[0],zero
	mulsd	%xmm0, %xmm1
	movsd	%xmm1, 16(%rbx)
	movsd	%xmm0, 40(%rbx)
	mulsd	-16(%rbp), %xmm0                ## 8-byte Folded Reload
	movsd	%xmm0, 64(%rbx)
	addq	$120, %rsp
	popq	%rbx
	popq	%rbp
	retq
	.cfi_endproc
                                        ## -- End function
	.no_dead_strip	_get_rgb2xyz_matrix
.subsections_via_symbols

	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	2                               ; -- Begin function get_rgb2xyz_matrix
_get_rgb2xyz_matrix:                    ; @get_rgb2xyz_matrix
	.cfi_startproc
; %bb.0:
	stp	d15, d14, [sp, #-96]!           ; 16-byte Folded Spill
	.cfi_def_cfa_offset 96
	stp	d13, d12, [sp, #16]             ; 16-byte Folded Spill
	stp	d11, d10, [sp, #32]             ; 16-byte Folded Spill
	stp	d9, d8, [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 b8, -40
	.cfi_offset b9, -48
	.cfi_offset b10, -56
	.cfi_offset b11, -64
	.cfi_offset b12, -72
	.cfi_offset b13, -80
	.cfi_offset b14, -88
	.cfi_offset b15, -96
	mov	x19, x1
	ldp	d0, d1, [x0]
	fdiv	d8, d0, d1
	ldp	d2, d3, [x0, #16]
	fdiv	d9, d2, d3
	ldp	d4, d5, [x0, #32]
	fdiv	d10, d4, d5
	ldp	d6, d7, [x0, #48]
	fdiv	d11, d6, d7
	fmov	d16, #1.00000000
	fsub	d0, d16, d0
	fsub	d0, d0, d1
	fdiv	d12, d0, d1
	fsub	d0, d16, d2
	fsub	d0, d0, d3
	fdiv	d13, d0, d3
	fsub	d0, d16, d4
	fsub	d0, d0, d5
	fdiv	d14, d0, d5
	fsub	d0, d16, d6
	fsub	d0, d0, d7
	stp	d8, d9, [x1]
	str	d10, [x1, #16]
	fmov.2d	v1, #1.00000000
	stur	q1, [x1, #24]
	stp	d12, d13, [x1, #48]
	mov	x8, #4607182418800017408
	str	x8, [x1, #40]
	str	d14, [x1, #64]
	fdiv	d15, d0, d7
	mov	x0, x1
	bl	_invert_matrix3x3
	ldp	d0, d1, [x19]
	fmadd	d0, d0, d11, d1
	ldp	d1, d2, [x19, #16]
	fmadd	d0, d1, d15, d0
	ldp	d1, d3, [x19, #32]
	fmadd	d1, d2, d11, d1
	fmadd	d1, d3, d15, d1
	ldp	d2, d3, [x19, #48]
	fmadd	d2, d2, d11, d3
	ldr	d3, [x19, #64]
	fmadd	d2, d3, d15, d2
	fmul	d3, d0, d8
	fmul	d4, d0, d12
	fmul	d5, d1, d9
	stp	d3, d5, [x19]
	fmul	d3, d1, d13
	stp	d4, d3, [x19, #48]
	fmul	d3, d2, d10
	stp	d3, d0, [x19, #16]
	stp	d1, d2, [x19, #32]
	fmul	d0, d2, d14
	str	d0, [x19, #64]
	ldp	x29, x30, [sp, #80]             ; 16-byte Folded Reload
	ldp	x20, x19, [sp, #64]             ; 16-byte Folded Reload
	ldp	d9, d8, [sp, #48]               ; 16-byte Folded Reload
	ldp	d11, d10, [sp, #32]             ; 16-byte Folded Reload
	ldp	d13, d12, [sp, #16]             ; 16-byte Folded Reload
	ldp	d15, d14, [sp], #96             ; 16-byte Folded Reload
	ret
	.cfi_endproc
                                        ; -- End function
	.no_dead_strip	_get_rgb2xyz_matrix
.subsections_via_symbols
