	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	4, 0x90                         ## -- Begin function OutputFsync
_OutputFsync:                           ## @OutputFsync
	.cfi_startproc
## %bb.0:
	pushq	%rbp
	.cfi_def_cfa_offset 16
	.cfi_offset %rbp, -16
	movq	%rsp, %rbp
	.cfi_def_cfa_register %rbp
	movq	_output_last_fsync@GOTPCREL(%rip), %rax
	movl	%edi, (%rax)
	movq	_output_written_lsn@GOTPCREL(%rip), %rax
	movl	(%rax), %eax
	movq	_output_fsync_lsn@GOTPCREL(%rip), %rcx
	movl	%eax, (%rcx)
	movq	_fsync_interval@GOTPCREL(%rip), %rax
	cmpq	$0, (%rax)
	jle	LBB0_4
## %bb.1:
	movq	_output_needs_fsync@GOTPCREL(%rip), %rax
	cmpl	$0, (%rax)
	je	LBB0_4
## %bb.2:
	movl	$0, (%rax)
	movq	_output_isfile@GOTPCREL(%rip), %rax
	cmpl	$0, (%rax)
	je	LBB0_4
## %bb.3:
	movq	_outfd@GOTPCREL(%rip), %rax
	movl	(%rax), %edi
	callq	_fsync
	testq	%rax, %rax
	jne	LBB0_5
LBB0_4:
	movl	$1, %eax
	popq	%rbp
	retq
LBB0_5:
	movq	_outfile@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	leaq	L_.str(%rip), %rdi
	callq	_pg_log_fatal
	movl	$1, %edi
	callq	_exit
	.cfi_endproc
                                        ## -- End function
	.comm	_output_last_fsync,4,2          ## @output_last_fsync
	.comm	_output_written_lsn,4,2         ## @output_written_lsn
	.comm	_output_fsync_lsn,4,2           ## @output_fsync_lsn
	.comm	_fsync_interval,8,3             ## @fsync_interval
	.comm	_output_needs_fsync,4,2         ## @output_needs_fsync
	.comm	_output_isfile,4,2              ## @output_isfile
	.comm	_outfd,4,2                      ## @outfd
	.section	__TEXT,__cstring,cstring_literals
L_.str:                                 ## @.str
	.asciz	"could not fsync file \"%s\": %m"

	.comm	_outfile,4,2                    ## @outfile
	.no_dead_strip	_OutputFsync
.subsections_via_symbols

	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	2                               ; -- Begin function OutputFsync
_OutputFsync:                           ; @OutputFsync
	.cfi_startproc
; %bb.0:
	stp	x29, x30, [sp, #-16]!           ; 16-byte Folded Spill
	.cfi_def_cfa_offset 16
	mov	x29, sp
	.cfi_def_cfa w29, 16
	.cfi_offset w30, -8
	.cfi_offset w29, -16
Lloh0:
	adrp	x8, _output_last_fsync@GOTPAGE
Lloh1:
	ldr	x8, [x8, _output_last_fsync@GOTPAGEOFF]
Lloh2:
	str	w0, [x8]
Lloh3:
	adrp	x8, _output_written_lsn@GOTPAGE
Lloh4:
	ldr	x8, [x8, _output_written_lsn@GOTPAGEOFF]
Lloh5:
	ldr	w8, [x8]
Lloh6:
	adrp	x9, _output_fsync_lsn@GOTPAGE
Lloh7:
	ldr	x9, [x9, _output_fsync_lsn@GOTPAGEOFF]
Lloh8:
	str	w8, [x9]
Lloh9:
	adrp	x8, _fsync_interval@GOTPAGE
Lloh10:
	ldr	x8, [x8, _fsync_interval@GOTPAGEOFF]
Lloh11:
	ldr	x9, [x8]
Lloh12:
	adrp	x8, _output_needs_fsync@GOTPAGE
Lloh13:
	ldr	x8, [x8, _output_needs_fsync@GOTPAGEOFF]
	ldr	w10, [x8]
	cmp	x9, #1
	ccmp	w10, #0, #4, ge
	b.eq	LBB0_3
; %bb.1:
	str	wzr, [x8]
Lloh14:
	adrp	x8, _output_isfile@GOTPAGE
Lloh15:
	ldr	x8, [x8, _output_isfile@GOTPAGEOFF]
Lloh16:
	ldr	w8, [x8]
	cbz	w8, LBB0_3
; %bb.2:
Lloh17:
	adrp	x8, _outfd@GOTPAGE
Lloh18:
	ldr	x8, [x8, _outfd@GOTPAGEOFF]
Lloh19:
	ldr	w0, [x8]
	bl	_fsync
	cbnz	x0, LBB0_4
LBB0_3:
	mov	w0, #1
	ldp	x29, x30, [sp], #16             ; 16-byte Folded Reload
	ret
LBB0_4:
Lloh20:
	adrp	x8, _outfile@GOTPAGE
Lloh21:
	ldr	x8, [x8, _outfile@GOTPAGEOFF]
Lloh22:
	ldr	w1, [x8]
Lloh23:
	adrp	x0, l_.str@PAGE
Lloh24:
	add	x0, x0, l_.str@PAGEOFF
	bl	_pg_log_fatal
	mov	w0, #1
	bl	_exit
	.loh AdrpLdrGot	Lloh12, Lloh13
	.loh AdrpLdrGotLdr	Lloh9, Lloh10, Lloh11
	.loh AdrpLdrGotStr	Lloh6, Lloh7, Lloh8
	.loh AdrpLdrGotLdr	Lloh3, Lloh4, Lloh5
	.loh AdrpLdrGotStr	Lloh0, Lloh1, Lloh2
	.loh AdrpLdrGotLdr	Lloh14, Lloh15, Lloh16
	.loh AdrpLdrGotLdr	Lloh17, Lloh18, Lloh19
	.loh AdrpAdd	Lloh23, Lloh24
	.loh AdrpLdrGotLdr	Lloh20, Lloh21, Lloh22
	.cfi_endproc
                                        ; -- End function
	.comm	_output_last_fsync,4,2          ; @output_last_fsync
	.comm	_output_written_lsn,4,2         ; @output_written_lsn
	.comm	_output_fsync_lsn,4,2           ; @output_fsync_lsn
	.comm	_fsync_interval,8,3             ; @fsync_interval
	.comm	_output_needs_fsync,4,2         ; @output_needs_fsync
	.comm	_output_isfile,4,2              ; @output_isfile
	.comm	_outfd,4,2                      ; @outfd
	.section	__TEXT,__cstring,cstring_literals
l_.str:                                 ; @.str
	.asciz	"could not fsync file \"%s\": %m"

	.comm	_outfile,4,2                    ; @outfile
	.no_dead_strip	_OutputFsync
.subsections_via_symbols
