	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.globl	_gistplacetopage                ## -- Begin function gistplacetopage
	.p2align	4, 0x90
_gistplacetopage:                       ## @gistplacetopage
	.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	$152, %rsp
	.cfi_offset %rbx, -56
	.cfi_offset %r12, -48
	.cfi_offset %r13, -40
	.cfi_offset %r14, -32
	.cfi_offset %r15, -24
	movl	%r9d, -48(%rbp)                 ## 4-byte Spill
	movq	%r8, -72(%rbp)                  ## 8-byte Spill
	movq	%rcx, %rbx
	movq	%rdx, -64(%rbp)                 ## 8-byte Spill
	movl	%esi, %r14d
	movl	%edi, -44(%rbp)                 ## 4-byte Spill
	movq	%rcx, %rdi
	callq	_BufferGetBlockNumber
	movq	%rax, -88(%rbp)                 ## 8-byte Spill
	movq	%rbx, -104(%rbp)                ## 8-byte Spill
	movq	%rbx, %rdi
	callq	_BufferGetPage
	movq	%rax, %r12
	movq	%rax, %rdi
	callq	_GistPageIsLeaf
	movq	%rax, %r15
	testq	%rax, %rax
	setne	-49(%rbp)                       ## 1-byte Folded Spill
	movq	%r12, %rdi
	callq	_GistFollowRight
	testq	%rax, %rax
	je	LBB0_2
## %bb.1:
	movq	_ERROR@GOTPCREL(%rip), %rax
	movl	(%rax), %edi
	leaq	L_.str(%rip), %rsi
	xorl	%eax, %eax
	callq	_elog
LBB0_2:
	movq	_NIL@GOTPCREL(%rip), %rax
	movq	(%rax), %rax
	movq	40(%rbp), %rcx
	movq	%rax, (%rcx)
	movq	%r12, %rdi
	movq	-72(%rbp), %rsi                 ## 8-byte Reload
	movl	-48(%rbp), %edx                 ## 4-byte Reload
	movl	16(%rbp), %ecx
	movl	%r14d, %r8d
	callq	_gistnospace
	testl	%eax, %eax
	je	LBB0_81
## %bb.3:
	movl	%eax, %r13d
	movq	%r12, %rdi
	callq	_GistPageIsLeaf
	testq	%rax, %rax
	je	LBB0_6
## %bb.4:
	movq	%r12, %rdi
	callq	_GistPageHasGarbage
	testq	%rax, %rax
	je	LBB0_6
## %bb.5:
	movl	56(%rbp), %ecx
	movl	-44(%rbp), %edi                 ## 4-byte Reload
	movq	%r12, %rsi
	movq	-104(%rbp), %rdx                ## 8-byte Reload
	callq	_gistprunepage
	movq	%r12, %rdi
	movq	-72(%rbp), %rsi                 ## 8-byte Reload
	movl	-48(%rbp), %edx                 ## 4-byte Reload
	movl	16(%rbp), %ecx
	movl	%r14d, %r8d
	callq	_gistnospace
	movl	%eax, %r13d
	testl	%eax, %eax
	je	LBB0_81
LBB0_6:
	movq	_InvalidBlockNumber@GOTPCREL(%rip), %rax
	movq	(%rax), %rax
	movq	%rax, -120(%rbp)                ## 8-byte Spill
	movq	_GIST_ROOT_BLKNO@GOTPCREL(%rip), %rax
	movq	(%rax), %rax
	movq	%rax, -96(%rbp)                 ## 8-byte Spill
	leaq	-76(%rbp), %rsi
	movq	%r12, -112(%rbp)                ## 8-byte Spill
	movq	%r12, %rdi
	callq	_gistextractpage
	movq	%rax, %rbx
	movl	16(%rbp), %r14d
	movl	%r14d, %edi
	callq	_OffsetNumberIsValid
	testq	%rax, %rax
	je	LBB0_9
## %bb.7:
	movq	_FirstOffsetNumber@GOTPCREL(%rip), %rax
	movslq	(%rax), %rcx
	movslq	%r14d, %rax
	subq	%rcx, %rax
	movl	-76(%rbp), %edx
	decl	%edx
	movl	%edx, -76(%rbp)
	subl	%eax, %edx
	je	LBB0_9
## %bb.8:
	leaq	(%rbx,%rax,8), %rdi
	leaq	(%rbx,%rax,8), %rsi
	addq	$8, %rsi
	shll	$3, %edx
	callq	_memmove
LBB0_9:
	leaq	-76(%rbp), %rsi
	movq	%rbx, %rdi
	movq	-72(%rbp), %rdx                 ## 8-byte Reload
	movl	-48(%rbp), %ecx                 ## 4-byte Reload
	callq	_gistjoinvector
	movl	-76(%rbp), %ecx
	movl	-44(%rbp), %edi                 ## 4-byte Reload
	movq	-112(%rbp), %rsi                ## 8-byte Reload
	movq	%rax, %rdx
	movq	-64(%rbp), %r8                  ## 8-byte Reload
	callq	_gistSplit
	movq	%rax, %r14
	testq	%rax, %rax
	je	LBB0_10
## %bb.11:
	xorl	%eax, %eax
	movq	%r14, %rcx
	.p2align	4, 0x90
LBB0_12:                                ## =>This Inner Loop Header: Depth=1
	incl	%eax
	movq	8(%rcx), %rcx
	testq	%rcx, %rcx
	jne	LBB0_12
	jmp	LBB0_13
LBB0_81:
	xorl	%eax, %eax
	callq	_START_CRIT_SECTION
	movl	16(%rbp), %r14d
	movl	%r14d, %edi
	callq	_OffsetNumberIsValid
	testq	%rax, %rax
	je	LBB0_86
## %bb.82:
	movl	-48(%rbp), %r13d                ## 4-byte Reload
	cmpl	$1, %r13d
	jne	LBB0_85
## %bb.83:
	movq	-72(%rbp), %rax                 ## 8-byte Reload
	movq	(%rax), %rbx
	movq	%rbx, %rdi
	callq	_IndexTupleSize
	movq	%r12, %rdi
	movl	%r14d, %esi
	movl	%ebx, %edx
	movl	%eax, %ecx
	callq	_PageIndexTupleOverwrite
	testl	%eax, %eax
	movl	-44(%rbp), %r15d                ## 4-byte Reload
	movq	24(%rbp), %r14
	jne	LBB0_88
## %bb.84:
	movq	_ERROR@GOTPCREL(%rip), %rax
	movl	(%rax), %r14d
	movl	%r15d, %edi
	callq	_RelationGetRelationName
	leaq	L_.str.2(%rip), %rsi
	movl	%r14d, %edi
	movq	24(%rbp), %r14
	movl	%eax, %edx
	xorl	%eax, %eax
	callq	_elog
	jmp	LBB0_88
LBB0_10:
	xorl	%eax, %eax
LBB0_13:
	movl	%r13d, -124(%rbp)               ## 4-byte Spill
	xorl	%r13d, %r13d
	movq	-96(%rbp), %rcx                 ## 8-byte Reload
	cmpq	-88(%rbp), %rcx                 ## 8-byte Folded Reload
	sete	%r13b
	addl	%eax, %r13d
	movq	_GIST_MAX_SPLIT_PAGES@GOTPCREL(%rip), %rax
	movl	(%rax), %ecx
	cmpl	%ecx, %r13d
	jle	LBB0_15
## %bb.14:
	movq	_ERROR@GOTPCREL(%rip), %rax
	movl	(%rax), %edi
	leaq	L_.str.1(%rip), %rsi
	movl	%r13d, %edx
	xorl	%eax, %eax
	callq	_elog
LBB0_15:
	movl	$0, -48(%rbp)                   ## 4-byte Folded Spill
	movq	%r14, %rbx
	movq	-96(%rbp), %rax                 ## 8-byte Reload
	cmpq	-88(%rbp), %rax                 ## 8-byte Folded Reload
	je	LBB0_19
## %bb.16:
	movq	-112(%rbp), %rbx                ## 8-byte Reload
	movq	%rbx, %rdi
	callq	_GistPageGetOpaque
	movq	(%rax), %rax
	movq	%rax, -120(%rbp)                ## 8-byte Spill
	movq	%rbx, %rdi
	callq	_GistPageGetNSN
	movl	%eax, -48(%rbp)                 ## 4-byte Spill
	movq	-104(%rbp), %rbx                ## 8-byte Reload
	movq	%rbx, (%r14)
	movq	%rbx, %rdi
	callq	_BufferGetBlockNumber
	movq	%rax, 24(%r14)
	movq	%rbx, %rdi
	callq	_BufferGetPage
	movq	%rax, %rdi
	callq	_PageGetTempPageCopySpecial
	xorl	%ebx, %ebx
	movq	%rax, 16(%r14)
	testq	%r15, %r15
	je	LBB0_18
## %bb.17:
	movq	_F_LEAF@GOTPCREL(%rip), %rcx
	movl	(%rcx), %ebx
LBB0_18:
	movq	%rax, %rdi
	callq	_GistPageGetOpaque
	movl	%ebx, 8(%rax)
	movq	8(%r14), %rbx
LBB0_19:
	movq	%r13, -112(%rbp)                ## 8-byte Spill
	movq	%r14, -64(%rbp)                 ## 8-byte Spill
	testq	%rbx, %rbx
	movl	-44(%rbp), %r13d                ## 4-byte Reload
	je	LBB0_24
## %bb.20:
	movq	_F_LEAF@GOTPCREL(%rip), %r12
	jmp	LBB0_21
	.p2align	4, 0x90
LBB0_23:                                ##   in Loop: Header=BB0_21 Depth=1
	movq	%rax, %rdi
	callq	_GISTInitBuffer
	movq	(%rbx), %rdi
	callq	_BufferGetPage
	movq	%rax, 16(%rbx)
	movq	(%rbx), %rdi
	callq	_BufferGetBlockNumber
	movq	%rax, 24(%rbx)
	movq	-104(%rbp), %rdi                ## 8-byte Reload
	callq	_BufferGetBlockNumber
	movq	%rax, %r14
	movq	(%rbx), %rdi
	callq	_BufferGetBlockNumber
	movl	%r13d, %edi
	movq	%r14, %rsi
	movq	%rax, %rdx
	callq	_PredicateLockPageSplit
	movq	8(%rbx), %rbx
	testq	%rbx, %rbx
	je	LBB0_24
LBB0_21:                                ## =>This Inner Loop Header: Depth=1
	movl	%r13d, %edi
	callq	_gistNewBuffer
	xorl	%esi, %esi
	movq	%rax, (%rbx)
	testq	%r15, %r15
	je	LBB0_23
## %bb.22:                              ##   in Loop: Header=BB0_21 Depth=1
	movl	(%r12), %esi
	jmp	LBB0_23
LBB0_24:
	movq	-64(%rbp), %rbx                 ## 8-byte Reload
	testq	%rbx, %rbx
	je	LBB0_31
## %bb.25:
	movl	-44(%rbp), %r14d                ## 4-byte Reload
	movl	64(%rbp), %r12d
	movq	32(%rbp), %r13
	.p2align	4, 0x90
LBB0_26:                                ## =>This Inner Loop Header: Depth=1
	movq	24(%rbx), %rsi
	movq	48(%rbx), %rdi
	callq	_ItemPointerSetBlockNumber
	movq	48(%rbx), %rdi
	callq	_GistTupleSetValid
	movq	8(%rbx), %rbx
	testq	%rbx, %rbx
	jne	LBB0_26
## %bb.27:
	movq	-96(%rbp), %rax                 ## 8-byte Reload
	cmpq	-88(%rbp), %rax                 ## 8-byte Folded Reload
	je	LBB0_33
## %bb.28:
	movq	-64(%rbp), %rax                 ## 8-byte Reload
	testq	%rax, %rax
	je	LBB0_32
## %bb.29:
	movq	%rax, %rbx
	movq	%rax, %r15
	movq	40(%rbp), %r14
	.p2align	4, 0x90
LBB0_30:                                ## =>This Inner Loop Header: Depth=1
	movl	$16, %edi
	callq	_palloc
	movq	(%rbx), %rcx
	movq	%rcx, (%rax)
	movq	48(%rbx), %rcx
	movq	%rcx, 8(%rax)
	movq	(%r14), %rdi
	movq	%rax, %rsi
	callq	_lappend
	movq	%rax, (%r14)
	movq	8(%rbx), %rbx
	testq	%rbx, %rbx
	jne	LBB0_30
	jmp	LBB0_40
LBB0_31:
	movq	-96(%rbp), %rax                 ## 8-byte Reload
	cmpq	-88(%rbp), %rax                 ## 8-byte Folded Reload
	movl	-44(%rbp), %r14d                ## 4-byte Reload
	movl	64(%rbp), %r12d
	movq	32(%rbp), %r13
	jne	LBB0_32
LBB0_33:
	movq	-104(%rbp), %rdi                ## 8-byte Reload
	movq	%rdi, -192(%rbp)
	callq	_BufferGetPage
	movq	%rax, %rdi
	callq	_PageGetTempPageCopySpecial
	movq	%rax, -176(%rbp)
	movq	%rax, %rdi
	callq	_GistPageGetOpaque
	movl	$0, 8(%rax)
	movq	-64(%rbp), %r14                 ## 8-byte Reload
	testq	%r14, %r14
	je	LBB0_104
## %bb.34:
	xorl	%edi, %edi
	xorl	%ebx, %ebx
	movq	%r14, %rax
	.p2align	4, 0x90
LBB0_35:                                ## =>This Inner Loop Header: Depth=1
	incl	%ebx
	movq	8(%rax), %rax
	addl	$8, %edi
	testq	%rax, %rax
	jne	LBB0_35
## %bb.36:
	callq	_palloc
	movq	%rax, %rdi
	testq	%r14, %r14
	je	LBB0_39
## %bb.37:
	movq	%rdi, %rax
	movq	%r14, %rcx
	.p2align	4, 0x90
LBB0_38:                                ## =>This Inner Loop Header: Depth=1
	movq	48(%rcx), %rdx
	movq	%rdx, (%rax)
	movq	8(%rcx), %rcx
	addq	$8, %rax
	testq	%rcx, %rcx
	jne	LBB0_38
	jmp	LBB0_39
LBB0_86:
	movq	_InvalidOffsetNumber@GOTPCREL(%rip), %rax
	movq	(%rax), %rcx
	movq	%r12, %rdi
	movq	-72(%rbp), %rsi                 ## 8-byte Reload
	movl	-48(%rbp), %r13d                ## 4-byte Reload
	jmp	LBB0_87
LBB0_32:
	movb	$1, %bl
	xorl	%eax, %eax
	movq	%rax, -64(%rbp)                 ## 8-byte Spill
	testl	%r12d, %r12d
	jne	LBB0_62
	jmp	LBB0_60
LBB0_85:
	movq	%r12, %rbx
	movq	%r12, %rdi
	movl	%r14d, %esi
	callq	_PageIndexTupleDelete
	movq	_InvalidOffsetNumber@GOTPCREL(%rip), %rax
	movq	(%rax), %rcx
	movq	%r12, %rdi
	movq	-72(%rbp), %rsi                 ## 8-byte Reload
LBB0_87:
	movl	%r13d, %edx
	callq	_gistfillbuffer
	movl	-44(%rbp), %r15d                ## 4-byte Reload
	movq	24(%rbp), %r14
LBB0_88:
	movq	-104(%rbp), %rdi                ## 8-byte Reload
	callq	_MarkBufferDirty
	movq	32(%rbp), %rbx
	movq	%rbx, %rdi
	callq	_BufferIsValid
	testq	%rax, %rax
	je	LBB0_90
## %bb.89:
	movq	%rbx, %rdi
	callq	_MarkBufferDirty
LBB0_90:
	cmpl	$0, 64(%rbp)
	je	LBB0_92
## %bb.91:
	movq	_GistBuildLSN@GOTPCREL(%rip), %rax
	movl	(%rax), %r15d
LBB0_98:
	movq	32(%rbp), %r13
	jmp	LBB0_99
LBB0_92:
	movl	%r15d, %edi
	callq	_RelationNeedsWAL
	testq	%rax, %rax
	je	LBB0_97
## %bb.93:
	movl	16(%rbp), %ebx
	movl	%ebx, %edi
	callq	_OffsetNumberIsValid
	testq	%rax, %rax
	je	LBB0_94
## %bb.95:
	movl	%ebx, -192(%rbp)
	movl	$1, %edx
	jmp	LBB0_96
LBB0_104:
	xorl	%ebx, %ebx
	xorl	%edi, %edi
	callq	_palloc
	movq	%rax, %rdi
LBB0_39:
	movq	_GIST_ROOT_BLKNO@GOTPCREL(%rip), %rax
	movq	(%rax), %rax
	movq	%rax, -168(%rbp)
	movl	%ebx, -160(%rbp)
	leaq	-136(%rbp), %rdx
	movl	%ebx, %esi
	callq	_gistfillitupvec
	movq	%rax, -152(%rbp)
	movq	$0, -144(%rbp)
	movq	%r14, -184(%rbp)
	leaq	-192(%rbp), %r15
LBB0_40:
	movq	_InvalidOffsetNumber@GOTPCREL(%rip), %r13
	movq	%r15, %rax
	movq	%r15, -64(%rbp)                 ## 8-byte Spill
	jmp	LBB0_41
	.p2align	4, 0x90
LBB0_56:                                ##   in Loop: Header=BB0_41 Depth=1
	callq	_GistClearFollowRight
LBB0_57:                                ##   in Loop: Header=BB0_41 Depth=1
	movq	16(%r15), %rdi
	movl	-48(%rbp), %esi                 ## 4-byte Reload
	callq	_GistPageSetNSN
	movq	8(%r15), %r15
	testq	%r15, %r15
	je	LBB0_58
LBB0_41:                                ## =>This Loop Header: Depth=1
                                        ##     Child Loop BB0_43 Depth 2
	cmpl	$0, 32(%r15)
	jle	LBB0_49
## %bb.42:                              ##   in Loop: Header=BB0_41 Depth=1
	movq	40(%r15), %rbx
	xorl	%r12d, %r12d
	jmp	LBB0_43
	.p2align	4, 0x90
LBB0_48:                                ##   in Loop: Header=BB0_43 Depth=2
	movq	%rbx, %rdi
	callq	_IndexTupleSize
	cltq
	addq	%rax, %rbx
	incl	%r12d
	cmpl	32(%r15), %r12d
	jge	LBB0_49
LBB0_43:                                ##   Parent Loop BB0_41 Depth=1
                                        ## =>  This Inner Loop Header: Depth=2
	movq	16(%r15), %r14
	movq	%rbx, %rdi
	callq	_IndexTupleSize
	movq	_FirstOffsetNumber@GOTPCREL(%rip), %rcx
	movl	(%rcx), %ecx
	addl	%r12d, %ecx
	movq	%r14, %rdi
	movl	%ebx, %esi
	movl	%eax, %edx
	xorl	%r8d, %r8d
	xorl	%r9d, %r9d
	callq	_PageAddItem
	cmpq	(%r13), %rax
	jne	LBB0_45
## %bb.44:                              ##   in Loop: Header=BB0_43 Depth=2
	movq	_ERROR@GOTPCREL(%rip), %rax
	movl	(%rax), %r14d
	movl	-44(%rbp), %edi                 ## 4-byte Reload
	callq	_RelationGetRelationName
	movl	%r14d, %edi
	leaq	L_.str.2(%rip), %rsi
	movl	%eax, %edx
	xorl	%eax, %eax
	callq	_elog
LBB0_45:                                ##   in Loop: Header=BB0_43 Depth=2
	movq	24(%rbp), %r14
	testq	%r14, %r14
	je	LBB0_48
## %bb.46:                              ##   in Loop: Header=BB0_43 Depth=2
	movq	-72(%rbp), %rax                 ## 8-byte Reload
	movq	(%rax), %rsi
	movq	%rbx, %rdi
	callq	_ItemPointerEquals
	testq	%rax, %rax
	je	LBB0_48
## %bb.47:                              ##   in Loop: Header=BB0_43 Depth=2
	movq	24(%r15), %rax
	movq	%rax, (%r14)
	jmp	LBB0_48
	.p2align	4, 0x90
LBB0_49:                                ##   in Loop: Header=BB0_41 Depth=1
	movq	8(%r15), %rax
	movq	-120(%rbp), %rbx                ## 8-byte Reload
	testq	%rax, %rax
	je	LBB0_52
## %bb.50:                              ##   in Loop: Header=BB0_41 Depth=1
	movq	24(%r15), %rcx
	movq	-120(%rbp), %rbx                ## 8-byte Reload
	movq	_GIST_ROOT_BLKNO@GOTPCREL(%rip), %rdx
	cmpq	(%rdx), %rcx
	je	LBB0_52
## %bb.51:                              ##   in Loop: Header=BB0_41 Depth=1
	movq	24(%rax), %rbx
LBB0_52:                                ##   in Loop: Header=BB0_41 Depth=1
	movq	16(%r15), %rdi
	callq	_GistPageGetOpaque
	movq	%rbx, (%rax)
	movq	16(%r15), %rdi
	cmpl	$0, 48(%rbp)
	je	LBB0_56
## %bb.53:                              ##   in Loop: Header=BB0_41 Depth=1
	cmpq	$0, 8(%r15)
	je	LBB0_56
## %bb.54:                              ##   in Loop: Header=BB0_41 Depth=1
	movq	-96(%rbp), %rax                 ## 8-byte Reload
	cmpq	-88(%rbp), %rax                 ## 8-byte Folded Reload
	je	LBB0_56
## %bb.55:                              ##   in Loop: Header=BB0_41 Depth=1
	callq	_GistMarkFollowRight
	jmp	LBB0_57
LBB0_58:
	xorl	%ebx, %ebx
	movq	32(%rbp), %r13
	movl	-44(%rbp), %r14d                ## 4-byte Reload
	movl	64(%rbp), %r12d
	testl	%r12d, %r12d
	jne	LBB0_62
LBB0_60:
	movl	%r14d, %edi
	callq	_RelationNeedsWAL
	testq	%rax, %rax
	je	LBB0_62
## %bb.61:
	movq	-112(%rbp), %rdi                ## 8-byte Reload
	leal	(%rdi,%rdi), %esi
	incl	%esi
                                        ## kill: def $edi killed $edi killed $rdi
	callq	_XLogEnsureRecordSpace
LBB0_62:
	xorl	%eax, %eax
	callq	_START_CRIT_SECTION
	movl	%ebx, -72(%rbp)                 ## 4-byte Spill
	testb	%bl, %bl
	jne	LBB0_65
## %bb.63:
	movq	-64(%rbp), %rbx                 ## 8-byte Reload
	.p2align	4, 0x90
LBB0_64:                                ## =>This Inner Loop Header: Depth=1
	movq	(%rbx), %rdi
	callq	_MarkBufferDirty
	movq	8(%rbx), %rbx
	testq	%rbx, %rbx
	jne	LBB0_64
LBB0_65:
	movq	%r13, %rdi
	callq	_BufferIsValid
	testq	%rax, %rax
	je	LBB0_67
## %bb.66:
	movq	%r13, %rdi
	callq	_MarkBufferDirty
LBB0_67:
	movq	-64(%rbp), %r15                 ## 8-byte Reload
	movq	(%r15), %rdi
	movq	16(%r15), %rbx
	callq	_BufferGetPage
	movq	%rbx, %rdi
	movq	%rax, %rsi
	callq	_PageRestoreTempPage
	movq	(%r15), %rdi
	callq	_BufferGetPage
	movq	%rax, 16(%r15)
	testl	%r12d, %r12d
	je	LBB0_69
## %bb.68:
	movq	_GistBuildLSN@GOTPCREL(%rip), %rax
	movl	(%rax), %r15d
	jmp	LBB0_73
LBB0_69:
	movl	%r14d, %edi
	callq	_RelationNeedsWAL
	testq	%rax, %rax
	je	LBB0_71
## %bb.70:
	xorl	%edi, %edi
	movb	-49(%rbp), %al                  ## 1-byte Reload
	movb	%al, %dil
	movq	-64(%rbp), %rsi                 ## 8-byte Reload
	movq	-120(%rbp), %rdx                ## 8-byte Reload
	movl	-48(%rbp), %ecx                 ## 4-byte Reload
	movq	%r13, %r8
	movl	48(%rbp), %r9d
	callq	_gistXLogSplit
	jmp	LBB0_72
LBB0_71:
	movl	%r14d, %edi
	callq	_gistGetFakeLSN
LBB0_72:
	movl	%eax, %r15d
LBB0_73:
	movl	-72(%rbp), %eax                 ## 4-byte Reload
	testb	%al, %al
	jne	LBB0_76
## %bb.74:
	movq	-64(%rbp), %rbx                 ## 8-byte Reload
	.p2align	4, 0x90
LBB0_75:                                ## =>This Inner Loop Header: Depth=1
	movq	16(%rbx), %rdi
	movl	%r15d, %esi
	callq	_PageSetLSN
	movq	8(%rbx), %rbx
	testq	%rbx, %rbx
	jne	LBB0_75
LBB0_76:
	movq	-96(%rbp), %rax                 ## 8-byte Reload
	cmpq	-88(%rbp), %rax                 ## 8-byte Folded Reload
	jne	LBB0_80
## %bb.77:
	movq	-64(%rbp), %rax                 ## 8-byte Reload
	movq	8(%rax), %rbx
	testq	%rbx, %rbx
	je	LBB0_80
	.p2align	4, 0x90
LBB0_78:                                ## =>This Inner Loop Header: Depth=1
	movq	(%rbx), %rdi
	callq	_UnlockReleaseBuffer
	movq	8(%rbx), %rbx
	testq	%rbx, %rbx
	jne	LBB0_78
LBB0_80:
	movl	-124(%rbp), %ebx                ## 4-byte Reload
	jmp	LBB0_101
LBB0_97:
	movl	%r15d, %edi
	callq	_gistGetFakeLSN
	movl	%eax, %r15d
	jmp	LBB0_98
LBB0_94:
	xorl	%edx, %edx
LBB0_96:
	leaq	-192(%rbp), %rsi
	movq	-104(%rbp), %rdi                ## 8-byte Reload
	movq	-72(%rbp), %rcx                 ## 8-byte Reload
	movl	%r13d, %r8d
	movq	32(%rbp), %r13
	movq	%r13, %r9
	callq	_gistXLogUpdate
	movl	%eax, %r15d
LBB0_99:
	movq	%r12, %rdi
	movl	%r15d, %esi
	callq	_PageSetLSN
	xorl	%ebx, %ebx
	testq	%r14, %r14
	je	LBB0_101
## %bb.100:
	movq	-88(%rbp), %rax                 ## 8-byte Reload
	movq	%rax, (%r14)
LBB0_101:
	movq	%r13, %rdi
	callq	_BufferIsValid
	testq	%rax, %rax
	je	LBB0_103
## %bb.102:
	movq	%r13, %rdi
	callq	_BufferGetPage
	movq	%rax, %r14
	movq	%rax, %rdi
	movl	%r15d, %esi
	callq	_GistPageSetNSN
	movq	%r14, %rdi
	callq	_GistClearFollowRight
	movq	%r14, %rdi
	movl	%r15d, %esi
	callq	_PageSetLSN
LBB0_103:
	xorl	%eax, %eax
	callq	_END_CRIT_SECTION
	movl	%ebx, %eax
	addq	$152, %rsp
	popq	%rbx
	popq	%r12
	popq	%r13
	popq	%r14
	popq	%r15
	popq	%rbp
	retq
	.cfi_endproc
                                        ## -- End function
	.comm	_ERROR,4,2                      ## @ERROR
	.section	__TEXT,__cstring,cstring_literals
L_.str:                                 ## @.str
	.asciz	"concurrent GiST page split was incomplete"

	.comm	_NIL,8,3                        ## @NIL
	.comm	_InvalidBlockNumber,8,3         ## @InvalidBlockNumber
	.comm	_GIST_ROOT_BLKNO,8,3            ## @GIST_ROOT_BLKNO
	.comm	_FirstOffsetNumber,4,2          ## @FirstOffsetNumber
	.comm	_GIST_MAX_SPLIT_PAGES,4,2       ## @GIST_MAX_SPLIT_PAGES
L_.str.1:                               ## @.str.1
	.asciz	"GiST page split into too many halves (%d, maximum %d)"

	.comm	_F_LEAF,4,2                     ## @F_LEAF
	.comm	_InvalidOffsetNumber,8,3        ## @InvalidOffsetNumber
L_.str.2:                               ## @.str.2
	.asciz	"failed to add item to index page in \"%s\""

	.comm	_GistBuildLSN,4,2               ## @GistBuildLSN
.subsections_via_symbols

	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.globl	_gistplacetopage                ; -- Begin function gistplacetopage
	.p2align	2
_gistplacetopage:                       ; @gistplacetopage
	.cfi_startproc
; %bb.0:
	sub	sp, sp, #288
	.cfi_def_cfa_offset 288
	stp	x28, x27, [sp, #192]            ; 16-byte Folded Spill
	stp	x26, x25, [sp, #208]            ; 16-byte Folded Spill
	stp	x24, x23, [sp, #224]            ; 16-byte Folded Spill
	stp	x22, x21, [sp, #240]            ; 16-byte Folded Spill
	stp	x20, x19, [sp, #256]            ; 16-byte Folded Spill
	stp	x29, x30, [sp, #272]            ; 16-byte Folded Spill
	add	x29, sp, #272
	.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	x22, x7
	mov	x28, x6
	mov	x21, x5
	mov	x24, x4
	mov	x25, x3
	str	x2, [sp, #88]                   ; 8-byte Folded Spill
	mov	x26, x1
	str	w0, [sp, #108]                  ; 4-byte Folded Spill
	ldp	x27, x20, [x29, #16]
	mov	x0, x3
	bl	_BufferGetBlockNumber
	str	x0, [sp, #72]                   ; 8-byte Folded Spill
	mov	x0, x25
	bl	_BufferGetPage
	mov	x19, x0
	bl	_GistPageIsLeaf
	mov	x23, x0
	cmp	x0, #0
	cset	w8, ne
	str	w8, [sp, #44]                   ; 4-byte Folded Spill
	mov	x0, x19
	bl	_GistFollowRight
	cbz	x0, LBB0_2
; %bb.1:
Lloh0:
	adrp	x8, _ERROR@GOTPAGE
Lloh1:
	ldr	x8, [x8, _ERROR@GOTPAGEOFF]
Lloh2:
	ldr	w0, [x8]
Lloh3:
	adrp	x1, l_.str@PAGE
Lloh4:
	add	x1, x1, l_.str@PAGEOFF
	bl	_elog
LBB0_2:
	ldr	w8, [x29, #40]
	str	w8, [sp, #60]                   ; 4-byte Folded Spill
Lloh5:
	adrp	x8, _NIL@GOTPAGE
Lloh6:
	ldr	x8, [x8, _NIL@GOTPAGEOFF]
Lloh7:
	ldr	x8, [x8]
	str	x20, [sp, #48]                  ; 8-byte Folded Spill
	str	x8, [x20]
	mov	x0, x19
	mov	x1, x24
	mov	x2, x21
	mov	x3, x28
	mov	x4, x26
	bl	_gistnospace
	cbz	w0, LBB0_16
; %bb.3:
	mov	x20, x0
	mov	x0, x19
	bl	_GistPageIsLeaf
	cbz	x0, LBB0_6
; %bb.4:
	mov	x0, x19
	bl	_GistPageHasGarbage
	cbz	x0, LBB0_6
; %bb.5:
	ldr	w3, [x29, #36]
	ldr	w0, [sp, #108]                  ; 4-byte Folded Reload
	mov	x1, x19
	mov	x2, x25
	bl	_gistprunepage
	mov	x0, x19
	mov	x1, x24
	mov	x2, x21
	mov	x3, x28
	mov	x4, x26
	bl	_gistnospace
	mov	x20, x0
	cbz	w0, LBB0_16
LBB0_6:
	str	w20, [sp, #40]                  ; 4-byte Folded Spill
	str	x27, [sp, #32]                  ; 8-byte Folded Spill
Lloh8:
	adrp	x8, _InvalidBlockNumber@GOTPAGE
Lloh9:
	ldr	x8, [x8, _InvalidBlockNumber@GOTPAGEOFF]
Lloh10:
	ldr	x8, [x8]
	str	x8, [sp, #96]                   ; 8-byte Folded Spill
Lloh11:
	adrp	x8, _GIST_ROOT_BLKNO@GOTPAGE
Lloh12:
	ldr	x8, [x8, _GIST_ROOT_BLKNO@GOTPAGEOFF]
Lloh13:
	ldr	x8, [x8]
	str	x8, [sp, #64]                   ; 8-byte Folded Spill
	sub	x1, x29, #92
	mov	x0, x19
	bl	_gistextractpage
	mov	x20, x0
	mov	x0, x28
	bl	_OffsetNumberIsValid
Lloh14:
	adrp	x27, _FirstOffsetNumber@GOTPAGE
Lloh15:
	ldr	x27, [x27, _FirstOffsetNumber@GOTPAGEOFF]
	cbz	x0, LBB0_9
; %bb.7:
	ldr	w8, [x27]
	ldur	w9, [x29, #-92]
	sub	w10, w9, #1
	stur	w10, [x29, #-92]
	sub	w9, w28, w8
	subs	w8, w10, w9
	b.eq	LBB0_9
; %bb.8:
	add	x0, x20, w9, sxtw #3
	add	x1, x0, #8
	lsl	w2, w8, #3
	bl	_memmove
LBB0_9:
	sub	x1, x29, #92
	mov	x0, x20
	mov	x2, x24
	mov	x3, x21
	bl	_gistjoinvector
	mov	x2, x0
	ldur	w3, [x29, #-92]
	ldr	w26, [sp, #108]                 ; 4-byte Folded Reload
	mov	x0, x26
	mov	x1, x19
	ldr	x4, [sp, #88]                   ; 8-byte Folded Reload
	bl	_gistSplit
	mov	x28, x0
	mov	w8, #0
	cbz	x0, LBB0_12
; %bb.10:
	mov	x9, x28
LBB0_11:                                ; =>This Inner Loop Header: Depth=1
	add	w8, w8, #1
	ldr	x9, [x9, #8]
	cbnz	x9, LBB0_11
LBB0_12:
	ldp	x10, x9, [sp, #64]              ; 16-byte Folded Reload
	cmp	x10, x9
	cinc	w9, w8, eq
Lloh16:
	adrp	x8, _GIST_MAX_SPLIT_PAGES@GOTPAGE
Lloh17:
	ldr	x8, [x8, _GIST_MAX_SPLIT_PAGES@GOTPAGEOFF]
Lloh18:
	ldr	w8, [x8]
	str	x9, [sp, #24]                   ; 8-byte Folded Spill
	cmp	w9, w8
	b.le	LBB0_14
; %bb.13:
Lloh19:
	adrp	x9, _ERROR@GOTPAGE
Lloh20:
	ldr	x9, [x9, _ERROR@GOTPAGEOFF]
Lloh21:
	ldr	w0, [x9]
	str	x8, [sp, #8]
	ldr	x8, [sp, #24]                   ; 8-byte Folded Reload
	str	x8, [sp]
Lloh22:
	adrp	x1, l_.str.1@PAGE
Lloh23:
	add	x1, x1, l_.str.1@PAGEOFF
	bl	_elog
LBB0_14:
	ldp	x9, x8, [sp, #64]               ; 16-byte Folded Reload
	cmp	x9, x8
	b.ne	LBB0_20
; %bb.15:
	str	wzr, [sp, #88]                  ; 4-byte Folded Spill
	mov	x20, x28
	cbnz	x20, LBB0_21
	b	LBB0_23
LBB0_16:
	bl	_START_CRIT_SECTION
	mov	x0, x28
	bl	_OffsetNumberIsValid
	cbz	x0, LBB0_38
; %bb.17:
	mov	x23, x21
	cmp	w21, #1
	b.ne	LBB0_40
; %bb.18:
	ldr	x20, [x24]
	mov	x0, x20
	bl	_IndexTupleSize
	mov	x3, x0
	mov	x0, x19
	mov	x1, x28
	mov	x2, x20
	bl	_PageIndexTupleOverwrite
	ldr	w21, [sp, #108]                 ; 4-byte Folded Reload
	cbnz	w0, LBB0_42
; %bb.19:
Lloh24:
	adrp	x8, _ERROR@GOTPAGE
Lloh25:
	ldr	x8, [x8, _ERROR@GOTPAGEOFF]
Lloh26:
	ldr	w20, [x8]
	mov	x0, x21
	bl	_RelationGetRelationName
                                        ; kill: def $w0 killed $w0 def $x0
	str	x0, [sp]
Lloh27:
	adrp	x1, l_.str.2@PAGE
Lloh28:
	add	x1, x1, l_.str.2@PAGEOFF
	mov	x0, x20
	bl	_elog
	b	LBB0_42
LBB0_20:
	mov	x0, x19
	bl	_GistPageGetOpaque
	ldr	x8, [x0]
	str	x8, [sp, #96]                   ; 8-byte Folded Spill
	mov	x0, x19
	bl	_GistPageGetNSN
	str	w0, [sp, #88]                   ; 4-byte Folded Spill
	str	x25, [x28]
	mov	x0, x25
	bl	_BufferGetBlockNumber
	str	x0, [x28, #24]
	mov	x0, x25
	bl	_BufferGetPage
	bl	_PageGetTempPageCopySpecial
	str	x0, [x28, #16]
Lloh29:
	adrp	x8, _F_LEAF@GOTPAGE
Lloh30:
	ldr	x8, [x8, _F_LEAF@GOTPAGEOFF]
Lloh31:
	ldr	w8, [x8]
	cmp	x23, #0
	csel	w19, wzr, w8, eq
	bl	_GistPageGetOpaque
	str	w19, [x0, #8]
	ldr	x20, [x28, #8]
	cbz	x20, LBB0_23
LBB0_21:
Lloh32:
	adrp	x21, _F_LEAF@GOTPAGE
Lloh33:
	ldr	x21, [x21, _F_LEAF@GOTPAGEOFF]
LBB0_22:                                ; =>This Inner Loop Header: Depth=1
	mov	x0, x26
	bl	_gistNewBuffer
	str	x0, [x20]
	ldr	w8, [x21]
	cmp	x23, #0
	csel	w1, wzr, w8, eq
	bl	_GISTInitBuffer
	ldr	x0, [x20]
	bl	_BufferGetPage
	str	x0, [x20, #16]
	ldr	x0, [x20]
	bl	_BufferGetBlockNumber
	str	x0, [x20, #24]
	mov	x0, x25
	bl	_BufferGetBlockNumber
	mov	x19, x0
	ldr	x0, [x20]
	bl	_BufferGetBlockNumber
	mov	x2, x0
	mov	x0, x26
	mov	x1, x19
	bl	_PredicateLockPageSplit
	ldr	x20, [x20, #8]
	cbnz	x20, LBB0_22
LBB0_23:
	ldr	w8, [x29, #32]
	str	w8, [sp, #84]                   ; 4-byte Folded Spill
	cbz	x28, LBB0_31
; %bb.24:
	mov	x19, x28
LBB0_25:                                ; =>This Inner Loop Header: Depth=1
	ldr	x0, [x19, #48]
	ldr	x1, [x19, #24]
	bl	_ItemPointerSetBlockNumber
	ldr	x0, [x19, #48]
	bl	_GistTupleSetValid
	ldr	x19, [x19, #8]
	cbnz	x19, LBB0_25
; %bb.26:
	ldp	x9, x8, [sp, #64]               ; 16-byte Folded Reload
	cmp	x9, x8
	ldr	x20, [sp, #48]                  ; 8-byte Folded Reload
	b.eq	LBB0_32
; %bb.27:
	cbz	x28, LBB0_39
; %bb.28:
	mov	x19, x28
LBB0_29:                                ; =>This Inner Loop Header: Depth=1
	mov	w0, #16
	bl	_palloc
	mov	x1, x0
	ldr	x8, [x19]
	str	x8, [x0]
	ldr	x8, [x19, #48]
	str	x8, [x0, #8]
	ldr	x0, [x20]
	bl	_lappend
	str	x0, [x20]
	ldr	x19, [x19, #8]
	cbnz	x19, LBB0_29
; %bb.30:
	mov	x26, x28
	b	LBB0_51
LBB0_31:
	ldp	x9, x8, [sp, #64]               ; 16-byte Folded Reload
	cmp	x9, x8
	b.ne	LBB0_39
LBB0_32:
	str	x25, [sp, #112]
	mov	x0, x25
	bl	_BufferGetPage
	bl	_PageGetTempPageCopySpecial
	str	x0, [sp, #128]
	bl	_GistPageGetOpaque
	str	wzr, [x0, #8]
	mov	w0, #0
	cbz	x28, LBB0_49
; %bb.33:
	mov	w23, #0
	mov	x8, x28
LBB0_34:                                ; =>This Inner Loop Header: Depth=1
	add	w23, w23, #1
	ldr	x8, [x8, #8]
	add	w0, w0, #8
	cbnz	x8, LBB0_34
; %bb.35:
	bl	_palloc
	cbz	x28, LBB0_50
; %bb.36:
	mov	x8, x0
	mov	x9, x28
LBB0_37:                                ; =>This Inner Loop Header: Depth=1
	ldr	x10, [x9, #48]
	str	x10, [x8], #8
	ldr	x9, [x9, #8]
	cbnz	x9, LBB0_37
	b	LBB0_50
LBB0_38:
Lloh34:
	adrp	x8, _InvalidOffsetNumber@GOTPAGE
Lloh35:
	ldr	x8, [x8, _InvalidOffsetNumber@GOTPAGEOFF]
Lloh36:
	ldr	x3, [x8]
	mov	x0, x19
	mov	x1, x24
	mov	x23, x21
	mov	x2, x21
	b	LBB0_41
LBB0_39:
	mov	x22, #0
	mov	w19, #1
	ldr	x27, [sp, #32]                  ; 8-byte Folded Reload
	ldr	w21, [sp, #60]                  ; 4-byte Folded Reload
	cbnz	w21, LBB0_72
	b	LBB0_70
LBB0_40:
	mov	x0, x19
	mov	x1, x28
	bl	_PageIndexTupleDelete
Lloh37:
	adrp	x8, _InvalidOffsetNumber@GOTPAGE
Lloh38:
	ldr	x8, [x8, _InvalidOffsetNumber@GOTPAGEOFF]
Lloh39:
	ldr	x3, [x8]
	mov	x0, x19
	mov	x1, x24
	mov	x2, x23
LBB0_41:
	bl	_gistfillbuffer
	ldr	w21, [sp, #108]                 ; 4-byte Folded Reload
LBB0_42:
	mov	x0, x25
	bl	_MarkBufferDirty
	mov	x0, x27
	bl	_BufferIsValid
	cbz	x0, LBB0_44
; %bb.43:
	mov	x0, x27
	bl	_MarkBufferDirty
LBB0_44:
	ldr	w8, [sp, #60]                   ; 4-byte Folded Reload
	cbz	w8, LBB0_46
; %bb.45:
Lloh40:
	adrp	x8, _GistBuildLSN@GOTPAGE
Lloh41:
	ldr	x8, [x8, _GistBuildLSN@GOTPAGEOFF]
Lloh42:
	ldr	w21, [x8]
	b	LBB0_92
LBB0_46:
	mov	x0, x21
	bl	_RelationNeedsWAL
	cbz	x0, LBB0_88
; %bb.47:
	mov	x0, x28
	bl	_OffsetNumberIsValid
	cbz	x0, LBB0_89
; %bb.48:
	str	w28, [sp, #112]
	mov	w2, #1
	b	LBB0_90
LBB0_49:
	bl	_palloc
	mov	w23, #0
LBB0_50:
Lloh43:
	adrp	x8, _GIST_ROOT_BLKNO@GOTPAGE
Lloh44:
	ldr	x8, [x8, _GIST_ROOT_BLKNO@GOTPAGEOFF]
Lloh45:
	ldr	x8, [x8]
	str	x8, [sp, #136]
	str	w23, [sp, #144]
	add	x8, sp, #112
	add	x2, x8, #56
	mov	x1, x23
	bl	_gistfillitupvec
	stp	x0, xzr, [sp, #152]
	str	x28, [sp, #120]
	add	x26, sp, #112
LBB0_51:
Lloh46:
	adrp	x28, _InvalidOffsetNumber@GOTPAGE
Lloh47:
	ldr	x28, [x28, _InvalidOffsetNumber@GOTPAGEOFF]
Lloh48:
	adrp	x19, _ERROR@GOTPAGE
Lloh49:
	ldr	x19, [x19, _ERROR@GOTPAGEOFF]
	str	x26, [sp, #48]                  ; 8-byte Folded Spill
Lloh50:
	adrp	x23, l_.str.2@PAGE
Lloh51:
	add	x23, x23, l_.str.2@PAGEOFF
	b	LBB0_54
LBB0_52:                                ;   in Loop: Header=BB0_54 Depth=1
	bl	_GistClearFollowRight
LBB0_53:                                ;   in Loop: Header=BB0_54 Depth=1
	ldr	x0, [x26, #16]
	ldr	w1, [sp, #88]                   ; 4-byte Folded Reload
	bl	_GistPageSetNSN
	ldr	x26, [x26, #8]
	cbz	x26, LBB0_69
LBB0_54:                                ; =>This Loop Header: Depth=1
                                        ;     Child Loop BB0_57 Depth 2
	ldr	w8, [x26, #32]
	cmp	w8, #1
	b.lt	LBB0_62
; %bb.55:                               ;   in Loop: Header=BB0_54 Depth=1
	mov	w21, #0
	ldr	x25, [x26, #40]
	b	LBB0_57
LBB0_56:                                ;   in Loop: Header=BB0_57 Depth=2
	mov	x0, x25
	bl	_IndexTupleSize
	add	x25, x25, w0, sxtw
	add	w21, w21, #1
	ldr	w8, [x26, #32]
	cmp	w21, w8
	b.ge	LBB0_62
LBB0_57:                                ;   Parent Loop BB0_54 Depth=1
                                        ; =>  This Inner Loop Header: Depth=2
	ldr	x20, [x26, #16]
	mov	x0, x25
	bl	_IndexTupleSize
	mov	x2, x0
	ldr	w8, [x27]
	add	w3, w21, w8
	mov	x0, x20
	mov	x1, x25
	mov	w4, #0
	mov	w5, #0
	bl	_PageAddItem
	ldr	x8, [x28]
	cmp	x0, x8
	b.ne	LBB0_59
; %bb.58:                               ;   in Loop: Header=BB0_57 Depth=2
	ldr	w20, [x19]
	ldr	w0, [sp, #108]                  ; 4-byte Folded Reload
	bl	_RelationGetRelationName
                                        ; kill: def $w0 killed $w0 def $x0
	str	x0, [sp]
	mov	x0, x20
	mov	x1, x23
	bl	_elog
LBB0_59:                                ;   in Loop: Header=BB0_57 Depth=2
	cbz	x22, LBB0_56
; %bb.60:                               ;   in Loop: Header=BB0_57 Depth=2
	ldr	x1, [x24]
	mov	x0, x25
	bl	_ItemPointerEquals
	cbz	x0, LBB0_56
; %bb.61:                               ;   in Loop: Header=BB0_57 Depth=2
	ldr	x8, [x26, #24]
	str	x8, [x22]
	b	LBB0_56
LBB0_62:                                ;   in Loop: Header=BB0_54 Depth=1
	ldr	x8, [x26, #8]
	ldr	x20, [sp, #96]                  ; 8-byte Folded Reload
	cbz	x8, LBB0_65
; %bb.63:                               ;   in Loop: Header=BB0_54 Depth=1
	ldr	x9, [x26, #24]
Lloh52:
	adrp	x10, _GIST_ROOT_BLKNO@GOTPAGE
Lloh53:
	ldr	x10, [x10, _GIST_ROOT_BLKNO@GOTPAGEOFF]
Lloh54:
	ldr	x10, [x10]
	ldr	x20, [sp, #96]                  ; 8-byte Folded Reload
	cmp	x9, x10
	b.eq	LBB0_65
; %bb.64:                               ;   in Loop: Header=BB0_54 Depth=1
	ldr	x20, [x8, #24]
LBB0_65:                                ;   in Loop: Header=BB0_54 Depth=1
	ldr	x0, [x26, #16]
	bl	_GistPageGetOpaque
	str	x20, [x0]
	ldr	x0, [x26, #16]
	ldr	w8, [sp, #84]                   ; 4-byte Folded Reload
	cbz	w8, LBB0_52
; %bb.66:                               ;   in Loop: Header=BB0_54 Depth=1
	ldr	x8, [x26, #8]
	cbz	x8, LBB0_52
; %bb.67:                               ;   in Loop: Header=BB0_54 Depth=1
	ldp	x9, x8, [sp, #64]               ; 16-byte Folded Reload
	cmp	x9, x8
	b.eq	LBB0_52
; %bb.68:                               ;   in Loop: Header=BB0_54 Depth=1
	bl	_GistMarkFollowRight
	b	LBB0_53
LBB0_69:
	mov	w19, #0
	ldr	x27, [sp, #32]                  ; 8-byte Folded Reload
	ldr	w26, [sp, #108]                 ; 4-byte Folded Reload
	ldr	w21, [sp, #60]                  ; 4-byte Folded Reload
	ldr	x22, [sp, #48]                  ; 8-byte Folded Reload
	cbnz	w21, LBB0_72
LBB0_70:
	mov	x0, x26
	bl	_RelationNeedsWAL
	cbz	x0, LBB0_72
; %bb.71:
	mov	w1, #1
	ldr	x0, [sp, #24]                   ; 8-byte Folded Reload
	bfi	w1, w0, #1, #31
                                        ; kill: def $w0 killed $w0 killed $x0
	bl	_XLogEnsureRecordSpace
LBB0_72:
	bl	_START_CRIT_SECTION
	tbnz	w19, #0, LBB0_75
; %bb.73:
	mov	x20, x22
LBB0_74:                                ; =>This Inner Loop Header: Depth=1
	ldr	x0, [x20]
	bl	_MarkBufferDirty
	ldr	x20, [x20, #8]
	cbnz	x20, LBB0_74
LBB0_75:
	mov	x0, x27
	bl	_BufferIsValid
	cbz	x0, LBB0_77
; %bb.76:
	mov	x0, x27
	bl	_MarkBufferDirty
LBB0_77:
	ldr	x20, [x22, #16]
	ldr	x0, [x22]
	bl	_BufferGetPage
	mov	x1, x0
	mov	x0, x20
	bl	_PageRestoreTempPage
	ldr	x0, [x22]
	bl	_BufferGetPage
	str	x0, [x22, #16]
	cbz	w21, LBB0_79
; %bb.78:
Lloh55:
	adrp	x8, _GistBuildLSN@GOTPAGE
Lloh56:
	ldr	x8, [x8, _GistBuildLSN@GOTPAGEOFF]
Lloh57:
	ldr	w21, [x8]
	ldr	w20, [sp, #40]                  ; 4-byte Folded Reload
	tbz	w19, #0, LBB0_83
	b	LBB0_85
LBB0_79:
	mov	x0, x26
	bl	_RelationNeedsWAL
	ldr	w20, [sp, #40]                  ; 4-byte Folded Reload
	cbz	x0, LBB0_81
; %bb.80:
	ldr	w0, [sp, #44]                   ; 4-byte Folded Reload
	mov	x1, x22
	ldr	x2, [sp, #96]                   ; 8-byte Folded Reload
	ldp	w5, w3, [sp, #84]               ; 8-byte Folded Reload
	mov	x4, x27
	bl	_gistXLogSplit
	b	LBB0_82
LBB0_81:
	mov	x0, x26
	bl	_gistGetFakeLSN
LBB0_82:
	mov	x21, x0
	tbnz	w19, #0, LBB0_85
LBB0_83:
	mov	x19, x22
LBB0_84:                                ; =>This Inner Loop Header: Depth=1
	ldr	x0, [x19, #16]
	mov	x1, x21
	bl	_PageSetLSN
	ldr	x19, [x19, #8]
	cbnz	x19, LBB0_84
LBB0_85:
	ldp	x9, x8, [sp, #64]               ; 16-byte Folded Reload
	cmp	x9, x8
	b.ne	LBB0_94
; %bb.86:
	ldr	x19, [x22, #8]
	cbz	x19, LBB0_94
LBB0_87:                                ; =>This Inner Loop Header: Depth=1
	ldr	x0, [x19]
	bl	_UnlockReleaseBuffer
	ldr	x19, [x19, #8]
	cbnz	x19, LBB0_87
	b	LBB0_94
LBB0_88:
	mov	x0, x21
	bl	_gistGetFakeLSN
	b	LBB0_91
LBB0_89:
	mov	w2, #0
LBB0_90:
	add	x1, sp, #112
	mov	x0, x25
	mov	x3, x24
	mov	x4, x23
	mov	x5, x27
	bl	_gistXLogUpdate
LBB0_91:
	mov	x21, x0
LBB0_92:
	mov	x0, x19
	mov	x1, x21
	bl	_PageSetLSN
	mov	w20, #0
	cbz	x22, LBB0_94
; %bb.93:
	ldr	x8, [sp, #72]                   ; 8-byte Folded Reload
	str	x8, [x22]
LBB0_94:
	mov	x0, x27
	bl	_BufferIsValid
	cbz	x0, LBB0_96
; %bb.95:
	mov	x0, x27
	bl	_BufferGetPage
	mov	x19, x0
	mov	x1, x21
	bl	_GistPageSetNSN
	mov	x0, x19
	bl	_GistClearFollowRight
	mov	x0, x19
	mov	x1, x21
	bl	_PageSetLSN
LBB0_96:
	bl	_END_CRIT_SECTION
	mov	x0, x20
	ldp	x29, x30, [sp, #272]            ; 16-byte Folded Reload
	ldp	x20, x19, [sp, #256]            ; 16-byte Folded Reload
	ldp	x22, x21, [sp, #240]            ; 16-byte Folded Reload
	ldp	x24, x23, [sp, #224]            ; 16-byte Folded Reload
	ldp	x26, x25, [sp, #208]            ; 16-byte Folded Reload
	ldp	x28, x27, [sp, #192]            ; 16-byte Folded Reload
	add	sp, sp, #288
	ret
	.loh AdrpAdd	Lloh3, Lloh4
	.loh AdrpLdrGotLdr	Lloh0, Lloh1, Lloh2
	.loh AdrpLdrGotLdr	Lloh5, Lloh6, Lloh7
	.loh AdrpLdrGot	Lloh14, Lloh15
	.loh AdrpLdrGotLdr	Lloh11, Lloh12, Lloh13
	.loh AdrpLdrGotLdr	Lloh8, Lloh9, Lloh10
	.loh AdrpLdrGotLdr	Lloh16, Lloh17, Lloh18
	.loh AdrpAdd	Lloh22, Lloh23
	.loh AdrpLdrGotLdr	Lloh19, Lloh20, Lloh21
	.loh AdrpAdd	Lloh27, Lloh28
	.loh AdrpLdrGotLdr	Lloh24, Lloh25, Lloh26
	.loh AdrpLdrGotLdr	Lloh29, Lloh30, Lloh31
	.loh AdrpLdrGot	Lloh32, Lloh33
	.loh AdrpLdrGotLdr	Lloh34, Lloh35, Lloh36
	.loh AdrpLdrGotLdr	Lloh37, Lloh38, Lloh39
	.loh AdrpLdrGotLdr	Lloh40, Lloh41, Lloh42
	.loh AdrpLdrGotLdr	Lloh43, Lloh44, Lloh45
	.loh AdrpAdd	Lloh50, Lloh51
	.loh AdrpLdrGot	Lloh48, Lloh49
	.loh AdrpLdrGot	Lloh46, Lloh47
	.loh AdrpLdrGotLdr	Lloh52, Lloh53, Lloh54
	.loh AdrpLdrGotLdr	Lloh55, Lloh56, Lloh57
	.cfi_endproc
                                        ; -- End function
	.comm	_ERROR,4,2                      ; @ERROR
	.section	__TEXT,__cstring,cstring_literals
l_.str:                                 ; @.str
	.asciz	"concurrent GiST page split was incomplete"

	.comm	_NIL,8,3                        ; @NIL
	.comm	_InvalidBlockNumber,8,3         ; @InvalidBlockNumber
	.comm	_GIST_ROOT_BLKNO,8,3            ; @GIST_ROOT_BLKNO
	.comm	_FirstOffsetNumber,4,2          ; @FirstOffsetNumber
	.comm	_GIST_MAX_SPLIT_PAGES,4,2       ; @GIST_MAX_SPLIT_PAGES
l_.str.1:                               ; @.str.1
	.asciz	"GiST page split into too many halves (%d, maximum %d)"

	.comm	_F_LEAF,4,2                     ; @F_LEAF
	.comm	_InvalidOffsetNumber,8,3        ; @InvalidOffsetNumber
l_.str.2:                               ; @.str.2
	.asciz	"failed to add item to index page in \"%s\""

	.comm	_GistBuildLSN,4,2               ; @GistBuildLSN
.subsections_via_symbols
