	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.section	__TEXT,__literal8,8byte_literals
	.p2align	3                               ## -- Begin function png_write_cHRM
LCPI0_0:
	.quad	0x3ff0000000000000              ## double 1
LCPI0_1:
	.quad	0x3fe999999999999a              ## double 0.80000000000000004
LCPI0_2:
	.quad	0x40f86a0000000000              ## double 1.0E+5
LCPI0_3:
	.quad	0x3fe0000000000000              ## double 0.5
LCPI0_4:
	.quad	0x0000000000000000              ## double 0
	.section	__TEXT,__text,regular,pure_instructions
	.globl	_png_write_cHRM
	.p2align	4, 0x90
_png_write_cHRM:                        ## @png_write_cHRM
	.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	$200, %rsp
	.cfi_offset %rbx, -24
	movsd	%xmm7, -160(%rbp)               ## 8-byte Spill
	movsd	%xmm6, -192(%rbp)               ## 8-byte Spill
	movsd	%xmm5, -168(%rbp)               ## 8-byte Spill
	movsd	%xmm4, -200(%rbp)               ## 8-byte Spill
	movsd	%xmm3, -176(%rbp)               ## 8-byte Spill
	movsd	%xmm2, -208(%rbp)               ## 8-byte Spill
	movsd	%xmm1, -152(%rbp)               ## 8-byte Spill
	movsd	%xmm0, -184(%rbp)               ## 8-byte Spill
	movl	%edi, %ebx
	movq	___stack_chk_guard@GOTPCREL(%rip), %rax
	movq	(%rax), %rax
	movq	%rax, -16(%rbp)
	leaq	L_.str(%rip), %rsi
	movl	$1, %edi
	callq	_png_debug
	movsd	-184(%rbp), %xmm2               ## 8-byte Reload
                                        ## xmm2 = mem[0],zero
	movsd	-152(%rbp), %xmm1               ## 8-byte Reload
                                        ## xmm1 = mem[0],zero
	movapd	%xmm2, %xmm0
	addsd	%xmm1, %xmm0
	ucomisd	LCPI0_0(%rip), %xmm0
	ja	LBB0_5
## %bb.1:
	ucomisd	LCPI0_1(%rip), %xmm1
	ja	LBB0_5
## %bb.2:
	xorpd	%xmm0, %xmm0
	ucomisd	%xmm2, %xmm0
	ja	LBB0_5
## %bb.3:
	ucomisd	LCPI0_1(%rip), %xmm2
	ja	LBB0_5
## %bb.4:
	xorpd	%xmm0, %xmm0
	ucomisd	%xmm1, %xmm0
	ja	LBB0_5
## %bb.7:
	mulsd	LCPI0_2(%rip), %xmm2
	addsd	LCPI0_3(%rip), %xmm2
	cvttsd2si	%xmm2, %rsi
	leaq	-144(%rbp), %rdi
	callq	_png_save_uint_32
	movsd	-152(%rbp), %xmm0               ## 8-byte Reload
                                        ## xmm0 = mem[0],zero
	mulsd	LCPI0_2(%rip), %xmm0
	addsd	LCPI0_3(%rip), %xmm0
	cvttsd2si	%xmm0, %rsi
	leaq	-128(%rbp), %rdi
	callq	_png_save_uint_32
	movsd	-208(%rbp), %xmm2               ## 8-byte Reload
                                        ## xmm2 = mem[0],zero
	xorpd	%xmm0, %xmm0
	ucomisd	%xmm2, %xmm0
	movsd	-176(%rbp), %xmm1               ## 8-byte Reload
                                        ## xmm1 = mem[0],zero
	ja	LBB0_10
## %bb.8:
	xorpd	%xmm0, %xmm0
	ucomisd	%xmm1, %xmm0
	ja	LBB0_10
## %bb.9:
	movapd	%xmm2, %xmm0
	addsd	%xmm1, %xmm0
	ucomisd	LCPI0_0(%rip), %xmm0
	ja	LBB0_10
## %bb.12:
	movsd	LCPI0_2(%rip), %xmm0            ## xmm0 = mem[0],zero
	mulsd	%xmm0, %xmm2
	movsd	LCPI0_3(%rip), %xmm0            ## xmm0 = mem[0],zero
	addsd	%xmm0, %xmm2
	cvttsd2si	%xmm2, %rsi
	leaq	-112(%rbp), %rdi
	callq	_png_save_uint_32
	movsd	-176(%rbp), %xmm0               ## 8-byte Reload
                                        ## xmm0 = mem[0],zero
	mulsd	LCPI0_2(%rip), %xmm0
	addsd	LCPI0_3(%rip), %xmm0
	cvttsd2si	%xmm0, %rsi
	leaq	-96(%rbp), %rdi
	callq	_png_save_uint_32
	xorpd	%xmm0, %xmm0
	movsd	-200(%rbp), %xmm2               ## 8-byte Reload
                                        ## xmm2 = mem[0],zero
	ucomisd	%xmm2, %xmm0
	movsd	-168(%rbp), %xmm1               ## 8-byte Reload
                                        ## xmm1 = mem[0],zero
	ja	LBB0_15
## %bb.13:
	ucomisd	%xmm1, %xmm0
	ja	LBB0_15
## %bb.14:
	movapd	%xmm2, %xmm0
	addsd	%xmm1, %xmm0
	ucomisd	LCPI0_0(%rip), %xmm0
	ja	LBB0_15
## %bb.16:
	movsd	LCPI0_2(%rip), %xmm0            ## xmm0 = mem[0],zero
	mulsd	%xmm0, %xmm2
	movsd	LCPI0_3(%rip), %xmm0            ## xmm0 = mem[0],zero
	addsd	%xmm0, %xmm2
	cvttsd2si	%xmm2, %rsi
	leaq	-80(%rbp), %rdi
	callq	_png_save_uint_32
	movsd	-168(%rbp), %xmm0               ## 8-byte Reload
                                        ## xmm0 = mem[0],zero
	mulsd	LCPI0_2(%rip), %xmm0
	addsd	LCPI0_3(%rip), %xmm0
	cvttsd2si	%xmm0, %rsi
	leaq	-64(%rbp), %rdi
	callq	_png_save_uint_32
	xorpd	%xmm0, %xmm0
	movsd	-192(%rbp), %xmm2               ## 8-byte Reload
                                        ## xmm2 = mem[0],zero
	ucomisd	%xmm2, %xmm0
	movsd	-160(%rbp), %xmm1               ## 8-byte Reload
                                        ## xmm1 = mem[0],zero
	ja	LBB0_19
## %bb.17:
	ucomisd	%xmm1, %xmm0
	ja	LBB0_19
## %bb.18:
	movapd	%xmm2, %xmm0
	addsd	%xmm1, %xmm0
	ucomisd	LCPI0_0(%rip), %xmm0
	ja	LBB0_19
## %bb.20:
	movsd	LCPI0_2(%rip), %xmm0            ## xmm0 = mem[0],zero
	mulsd	%xmm0, %xmm2
	movsd	LCPI0_3(%rip), %xmm0            ## xmm0 = mem[0],zero
	addsd	%xmm0, %xmm2
	cvttsd2si	%xmm2, %rsi
	leaq	-48(%rbp), %rdi
	callq	_png_save_uint_32
	movsd	-160(%rbp), %xmm0               ## 8-byte Reload
                                        ## xmm0 = mem[0],zero
	mulsd	LCPI0_2(%rip), %xmm0
	addsd	LCPI0_3(%rip), %xmm0
	cvttsd2si	%xmm0, %rsi
	leaq	-32(%rbp), %rdi
	callq	_png_save_uint_32
	movq	_png_cHRM@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	leaq	-144(%rbp), %rdx
	movl	%ebx, %edi
	movl	$32, %ecx
	callq	_png_write_chunk
	jmp	LBB0_21
LBB0_5:
	leaq	L_.str.1(%rip), %rsi
	movl	%ebx, %edi
	callq	_png_warning
	movq	_stderr@GOTPCREL(%rip), %rax
	movl	(%rax), %edi
	movq	___stack_chk_guard@GOTPCREL(%rip), %rax
	movq	(%rax), %rax
	cmpq	-16(%rbp), %rax
	jne	LBB0_23
## %bb.6:
	leaq	L_.str.2(%rip), %rsi
	movsd	-184(%rbp), %xmm0               ## 8-byte Reload
                                        ## xmm0 = mem[0],zero
	movsd	-152(%rbp), %xmm1               ## 8-byte Reload
                                        ## xmm1 = mem[0],zero
	addq	$200, %rsp
	popq	%rbx
	popq	%rbp
	jmp	_fprintf                        ## TAILCALL
LBB0_10:
	leaq	L_.str.3(%rip), %rsi
	jmp	LBB0_11
LBB0_15:
	leaq	L_.str.4(%rip), %rsi
	jmp	LBB0_11
LBB0_19:
	leaq	L_.str.5(%rip), %rsi
LBB0_11:
	movl	%ebx, %edi
	callq	_png_warning
LBB0_21:
	movq	___stack_chk_guard@GOTPCREL(%rip), %rax
	movq	(%rax), %rax
	cmpq	-16(%rbp), %rax
	jne	LBB0_23
## %bb.22:
	addq	$200, %rsp
	popq	%rbx
	popq	%rbp
	retq
LBB0_23:
	callq	___stack_chk_fail
	.cfi_endproc
                                        ## -- End function
	.section	__TEXT,__cstring,cstring_literals
L_.str:                                 ## @.str
	.asciz	"in png_write_cHRM\n"

L_.str.1:                               ## @.str.1
	.asciz	"Invalid cHRM white point specified"

	.comm	_stderr,4,2                     ## @stderr
L_.str.2:                               ## @.str.2
	.asciz	"white_x=%f, white_y=%f\n"

L_.str.3:                               ## @.str.3
	.asciz	"Invalid cHRM red point specified"

L_.str.4:                               ## @.str.4
	.asciz	"Invalid cHRM green point specified"

L_.str.5:                               ## @.str.5
	.asciz	"Invalid cHRM blue point specified"

	.comm	_png_cHRM,4,2                   ## @png_cHRM
	.comm	_PNG_cHRM,4,2                   ## @PNG_cHRM
.subsections_via_symbols

	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.globl	_png_write_cHRM                 ; -- Begin function png_write_cHRM
	.p2align	2
_png_write_cHRM:                        ; @png_write_cHRM
	.cfi_startproc
; %bb.0:
	sub	sp, sp, #272
	.cfi_def_cfa_offset 272
	stp	d15, d14, [sp, #160]            ; 16-byte Folded Spill
	stp	d13, d12, [sp, #176]            ; 16-byte Folded Spill
	stp	d11, d10, [sp, #192]            ; 16-byte Folded Spill
	stp	d9, d8, [sp, #208]              ; 16-byte Folded Spill
	stp	x28, x27, [sp, #224]            ; 16-byte Folded Spill
	stp	x20, x19, [sp, #240]            ; 16-byte Folded Spill
	stp	x29, x30, [sp, #256]            ; 16-byte Folded Spill
	add	x29, sp, #256
	.cfi_def_cfa w29, 16
	.cfi_offset w30, -8
	.cfi_offset w29, -16
	.cfi_offset w19, -24
	.cfi_offset w20, -32
	.cfi_offset w27, -40
	.cfi_offset w28, -48
	.cfi_offset b8, -56
	.cfi_offset b9, -64
	.cfi_offset b10, -72
	.cfi_offset b11, -80
	.cfi_offset b12, -88
	.cfi_offset b13, -96
	.cfi_offset b14, -104
	.cfi_offset b15, -112
	fmov	d8, d7
	fmov	d9, d6
	fmov	d10, d5
	fmov	d11, d4
	fmov	d12, d3
	fmov	d13, d2
	fmov	d14, d1
	fmov	d15, d0
	mov	x19, x0
Lloh0:
	adrp	x8, ___stack_chk_guard@GOTPAGE
Lloh1:
	ldr	x8, [x8, ___stack_chk_guard@GOTPAGEOFF]
Lloh2:
	ldr	x8, [x8]
	stur	x8, [x29, #-104]
Lloh3:
	adrp	x1, l_.str@PAGE
Lloh4:
	add	x1, x1, l_.str@PAGEOFF
	mov	w0, #1
	bl	_png_debug
	fadd	d0, d15, d14
	fmov	d1, #1.00000000
	fcmp	d0, d1
	mov	x8, #-7378697629483820647
	movk	x8, #39322
	movk	x8, #16361, lsl #48
	fmov	d0, x8
	fccmp	d14, d0, #0, le
	b.gt	LBB0_13
; %bb.1:
	fcmp	d15, #0.0
	mov	x8, #-7378697629483820647
	movk	x8, #39322
	movk	x8, #16361, lsl #48
	fmov	d0, x8
	fccmp	d15, d0, #0, pl
	b.gt	LBB0_13
; %bb.2:
	fcmp	d14, #0.0
	b.mi	LBB0_13
; %bb.3:
	stp	d9, d8, [sp, #8]                ; 16-byte Folded Spill
	mov	x8, #116548232544256
	movk	x8, #16632, lsl #48
	fmov	d8, x8
	fmov	d9, #0.50000000
	fmadd	d0, d15, d8, d9
	fcvtzs	x1, d0
	add	x20, sp, #24
	add	x0, sp, #24
	bl	_png_save_uint_32
	fmadd	d0, d14, d8, d9
	fcvtzs	x1, d0
	add	x0, x20, #16
	bl	_png_save_uint_32
	fcmp	d13, #0.0
	b.mi	LBB0_15
; %bb.4:
	fcmp	d12, #0.0
	b.mi	LBB0_15
; %bb.5:
	fadd	d0, d13, d12
	fmov	d1, #1.00000000
	fcmp	d0, d1
	b.gt	LBB0_15
; %bb.6:
	mov	x8, #116548232544256
	movk	x8, #16632, lsl #48
	fmov	d8, x8
	fmov	d9, #0.50000000
	fmadd	d0, d13, d8, d9
	fcvtzs	x1, d0
	add	x20, sp, #24
	add	x0, x20, #32
	bl	_png_save_uint_32
	fmadd	d0, d12, d8, d9
	fcvtzs	x1, d0
	add	x0, x20, #48
	bl	_png_save_uint_32
	fcmp	d11, #0.0
	b.mi	LBB0_16
; %bb.7:
	fcmp	d10, #0.0
	b.mi	LBB0_16
; %bb.8:
	fadd	d0, d11, d10
	fmov	d1, #1.00000000
	fcmp	d0, d1
	b.gt	LBB0_16
; %bb.9:
	mov	x8, #116548232544256
	movk	x8, #16632, lsl #48
	fmov	d8, x8
	fmov	d9, #0.50000000
	fmadd	d0, d11, d8, d9
	fcvtzs	x1, d0
	add	x20, sp, #24
	add	x0, x20, #64
	bl	_png_save_uint_32
	fmadd	d0, d10, d8, d9
	fcvtzs	x1, d0
	add	x0, x20, #80
	bl	_png_save_uint_32
	ldp	d3, d2, [sp, #8]                ; 16-byte Folded Reload
	fcmp	d3, #0.0
	b.mi	LBB0_17
; %bb.10:
	fcmp	d2, #0.0
	b.mi	LBB0_17
; %bb.11:
	fadd	d0, d3, d2
	fmov	d1, #1.00000000
	fcmp	d0, d1
	b.gt	LBB0_17
; %bb.12:
	mov	x8, #116548232544256
	movk	x8, #16632, lsl #48
	fmov	d10, d2
	fmov	d8, x8
	fmov	d9, #0.50000000
	fmadd	d0, d3, d8, d9
	fcvtzs	x1, d0
	add	x20, sp, #24
	add	x0, x20, #96
	bl	_png_save_uint_32
	fmadd	d0, d10, d8, d9
	fcvtzs	x1, d0
	add	x0, x20, #112
	bl	_png_save_uint_32
Lloh5:
	adrp	x8, _png_cHRM@GOTPAGE
Lloh6:
	ldr	x8, [x8, _png_cHRM@GOTPAGEOFF]
Lloh7:
	ldr	w1, [x8]
	add	x2, sp, #24
	mov	x0, x19
	mov	w3, #32
	bl	_png_write_chunk
	b	LBB0_19
LBB0_13:
Lloh8:
	adrp	x1, l_.str.1@PAGE
Lloh9:
	add	x1, x1, l_.str.1@PAGEOFF
	mov	x0, x19
	bl	_png_warning
Lloh10:
	adrp	x8, _stderr@GOTPAGE
Lloh11:
	ldr	x8, [x8, _stderr@GOTPAGEOFF]
Lloh12:
	ldr	w0, [x8]
	ldur	x8, [x29, #-104]
Lloh13:
	adrp	x9, ___stack_chk_guard@GOTPAGE
Lloh14:
	ldr	x9, [x9, ___stack_chk_guard@GOTPAGEOFF]
Lloh15:
	ldr	x9, [x9]
	cmp	x9, x8
	b.ne	LBB0_21
; %bb.14:
Lloh16:
	adrp	x1, l_.str.2@PAGE
Lloh17:
	add	x1, x1, l_.str.2@PAGEOFF
	fmov	d0, d15
	fmov	d1, d14
	ldp	x29, x30, [sp, #256]            ; 16-byte Folded Reload
	ldp	x20, x19, [sp, #240]            ; 16-byte Folded Reload
	ldp	x28, x27, [sp, #224]            ; 16-byte Folded Reload
	ldp	d9, d8, [sp, #208]              ; 16-byte Folded Reload
	ldp	d11, d10, [sp, #192]            ; 16-byte Folded Reload
	ldp	d13, d12, [sp, #176]            ; 16-byte Folded Reload
	ldp	d15, d14, [sp, #160]            ; 16-byte Folded Reload
	add	sp, sp, #272
	b	_fprintf
LBB0_15:
Lloh18:
	adrp	x1, l_.str.3@PAGE
Lloh19:
	add	x1, x1, l_.str.3@PAGEOFF
	b	LBB0_18
LBB0_16:
Lloh20:
	adrp	x1, l_.str.4@PAGE
Lloh21:
	add	x1, x1, l_.str.4@PAGEOFF
	b	LBB0_18
LBB0_17:
Lloh22:
	adrp	x1, l_.str.5@PAGE
Lloh23:
	add	x1, x1, l_.str.5@PAGEOFF
LBB0_18:
	mov	x0, x19
	bl	_png_warning
LBB0_19:
	ldur	x8, [x29, #-104]
Lloh24:
	adrp	x9, ___stack_chk_guard@GOTPAGE
Lloh25:
	ldr	x9, [x9, ___stack_chk_guard@GOTPAGEOFF]
Lloh26:
	ldr	x9, [x9]
	cmp	x9, x8
	b.ne	LBB0_21
; %bb.20:
	ldp	x29, x30, [sp, #256]            ; 16-byte Folded Reload
	ldp	x20, x19, [sp, #240]            ; 16-byte Folded Reload
	ldp	x28, x27, [sp, #224]            ; 16-byte Folded Reload
	ldp	d9, d8, [sp, #208]              ; 16-byte Folded Reload
	ldp	d11, d10, [sp, #192]            ; 16-byte Folded Reload
	ldp	d13, d12, [sp, #176]            ; 16-byte Folded Reload
	ldp	d15, d14, [sp, #160]            ; 16-byte Folded Reload
	add	sp, sp, #272
	ret
LBB0_21:
	bl	___stack_chk_fail
	.loh AdrpAdd	Lloh3, Lloh4
	.loh AdrpLdrGotLdr	Lloh0, Lloh1, Lloh2
	.loh AdrpLdrGotLdr	Lloh5, Lloh6, Lloh7
	.loh AdrpLdrGotLdr	Lloh13, Lloh14, Lloh15
	.loh AdrpLdrGotLdr	Lloh10, Lloh11, Lloh12
	.loh AdrpAdd	Lloh8, Lloh9
	.loh AdrpAdd	Lloh16, Lloh17
	.loh AdrpAdd	Lloh18, Lloh19
	.loh AdrpAdd	Lloh20, Lloh21
	.loh AdrpAdd	Lloh22, Lloh23
	.loh AdrpLdrGotLdr	Lloh24, Lloh25, Lloh26
	.cfi_endproc
                                        ; -- End function
	.section	__TEXT,__cstring,cstring_literals
l_.str:                                 ; @.str
	.asciz	"in png_write_cHRM\n"

l_.str.1:                               ; @.str.1
	.asciz	"Invalid cHRM white point specified"

	.comm	_stderr,4,2                     ; @stderr
l_.str.2:                               ; @.str.2
	.asciz	"white_x=%f, white_y=%f\n"

l_.str.3:                               ; @.str.3
	.asciz	"Invalid cHRM red point specified"

l_.str.4:                               ; @.str.4
	.asciz	"Invalid cHRM green point specified"

l_.str.5:                               ; @.str.5
	.asciz	"Invalid cHRM blue point specified"

	.comm	_png_cHRM,4,2                   ; @png_cHRM
	.comm	_PNG_cHRM,4,2                   ; @PNG_cHRM
.subsections_via_symbols
