	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.globl	_heap_lock_tuple                ## -- Begin function heap_lock_tuple
	.p2align	4, 0x90
_heap_lock_tuple:                       ## @heap_lock_tuple
	.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	$120, %rsp
	.cfi_offset %rbx, -56
	.cfi_offset %r12, -48
	.cfi_offset %r13, -40
	.cfi_offset %r14, -32
	.cfi_offset %r15, -24
	movl	%r9d, -116(%rbp)                ## 4-byte Spill
	movl	%r8d, -92(%rbp)                 ## 4-byte Spill
                                        ## kill: def $ecx killed $ecx def $rcx
	movq	%rcx, -88(%rbp)                 ## 8-byte Spill
	movl	%edx, -124(%rbp)                ## 4-byte Spill
	movq	%rsi, %r12
	movl	%edi, %r14d
	movq	16(%rbp), %r15
	leaq	8(%rsi), %rbx
	movq	_InvalidBuffer@GOTPCREL(%rip), %rax
	movq	(%rax), %rax
	movq	%rax, -104(%rbp)
	movl	$0, -128(%rbp)
	movq	%rbx, %rdi
	callq	_ItemPointerGetBlockNumber
	movl	%r14d, %edi
	movl	%eax, %esi
	callq	_ReadBuffer
	movq	%rax, (%r15)
	movq	%rbx, %rdi
	callq	_ItemPointerGetBlockNumber
	movl	%eax, %r13d
	movq	(%r15), %rdi
	callq	_BufferGetPage
	movl	%eax, %edi
	callq	_PageIsAllVisible
	testq	%rax, %rax
	je	LBB0_2
## %bb.1:
	leaq	-104(%rbp), %rdx
	movl	%r14d, %edi
	movl	%r13d, %esi
	callq	_visibilitymap_pin
LBB0_2:
	movl	%r13d, -120(%rbp)               ## 4-byte Spill
	movq	16(%rbp), %r15
	movq	(%r15), %rdi
	movq	_BUFFER_LOCK_EXCLUSIVE@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	callq	_LockBuffer
	movq	(%r15), %rdi
	callq	_BufferGetPage
	movl	%eax, %r13d
	movq	%rbx, -64(%rbp)                 ## 8-byte Spill
	movq	%rbx, %rdi
	callq	_ItemPointerGetOffsetNumber
	movl	%r13d, %edi
	movl	%eax, %esi
	callq	_PageGetItemId
	movl	%eax, %ebx
	movl	%eax, %edi
	callq	_ItemIdIsNormal
	movl	%eax, %edi
	callq	_Assert
	movl	%r13d, -96(%rbp)                ## 4-byte Spill
	movl	%r13d, %edi
	movl	%ebx, %esi
	callq	_PageGetItem
	movq	%rax, (%r12)
	movl	%ebx, %edi
	callq	_ItemIdGetLength
	movl	%eax, 16(%r12)
	movl	%r14d, %edi
	callq	_RelationGetRelid
	movl	%eax, 12(%r12)
	movq	(%r15), %rdx
	movq	%r12, -72(%rbp)                 ## 8-byte Spill
	movq	%r12, %rdi
	movl	-124(%rbp), %esi                ## 4-byte Reload
	callq	_HeapTupleSatisfiesUpdate
	movq	%rax, %r13
	movq	_TM_Invisible@GOTPCREL(%rip), %rax
	cmpq	(%rax), %r13
	je	LBB0_120
## %bb.3:
	movl	$1, %r12d
	movl	$0, -76(%rbp)                   ## 4-byte Folded Spill
	movl	%r14d, -44(%rbp)                ## 4-byte Spill
	.p2align	4, 0x90
LBB0_4:                                 ## =>This Loop Header: Depth=1
                                        ##     Child Loop BB0_12 Depth 2
	movq	_TM_BeingModified@GOTPCREL(%rip), %rax
	cmpq	(%rax), %r13
	je	LBB0_7
## %bb.5:                               ##   in Loop: Header=BB0_4 Depth=1
	movq	_TM_Updated@GOTPCREL(%rip), %rax
	cmpq	(%rax), %r13
	je	LBB0_7
## %bb.6:                               ##   in Loop: Header=BB0_4 Depth=1
	movq	_TM_Deleted@GOTPCREL(%rip), %rax
	cmpq	(%rax), %r13
	jne	LBB0_92
LBB0_7:                                 ##   in Loop: Header=BB0_4 Depth=1
	movq	-72(%rbp), %rbx                 ## 8-byte Reload
	movq	(%rbx), %rdi
	callq	_HeapTupleHeaderGetRawXmax
	movq	%rax, -56(%rbp)                 ## 8-byte Spill
	movq	(%rbx), %rdi
	movl	(%rdi), %r14d
	movl	4(%rdi), %ebx
	addq	$8, %rdi
	leaq	-112(%rbp), %rsi
	callq	_ItemPointerCopy
	movq	16(%rbp), %rax
	movq	(%rax), %rdi
	movq	_BUFFER_LOCK_UNLOCK@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	callq	_LockBuffer
	testl	%r12d, %r12d
	je	LBB0_15
## %bb.8:                               ##   in Loop: Header=BB0_4 Depth=1
	movq	_HEAP_XMAX_IS_MULTI@GOTPCREL(%rip), %rax
	testl	%r14d, (%rax)
	movq	-88(%rbp), %r12                 ## 8-byte Reload
	je	LBB0_16
## %bb.9:                               ##   in Loop: Header=BB0_4 Depth=1
	movl	%ebx, -132(%rbp)                ## 4-byte Spill
	movl	%r14d, %r15d
	movl	%r14d, %edi
	callq	_HEAP_XMAX_IS_LOCKED_ONLY
	movq	-56(%rbp), %rdi                 ## 8-byte Reload
	leaq	-160(%rbp), %rsi
	xorl	%edx, %edx
	movl	%eax, %ecx
	callq	_GetMultiXactIdMembers
	testl	%eax, %eax
	jle	LBB0_25
## %bb.10:                              ##   in Loop: Header=BB0_4 Depth=1
	movl	%eax, %r12d
	shlq	$4, %r12
	xorl	%ebx, %ebx
	movl	-76(%rbp), %r14d                ## 4-byte Reload
	jmp	LBB0_12
	.p2align	4, 0x90
LBB0_11:                                ##   in Loop: Header=BB0_12 Depth=2
	addq	$16, %rbx
	cmpq	%rbx, %r12
	je	LBB0_26
LBB0_12:                                ##   Parent Loop BB0_4 Depth=1
                                        ## =>  This Inner Loop Header: Depth=2
	movq	-160(%rbp), %rax
	movq	8(%rax,%rbx), %rdi
	callq	_TransactionIdIsCurrentTransactionId
	testq	%rax, %rax
	je	LBB0_11
## %bb.13:                              ##   in Loop: Header=BB0_12 Depth=2
	movq	-160(%rbp), %rax
	movl	(%rax,%rbx), %edi
	callq	_TUPLOCK_from_mxstatus
	movl	$1, %r14d
	cmpl	-88(%rbp), %eax                 ## 4-byte Folded Reload
	jl	LBB0_11
	jmp	LBB0_14
LBB0_15:                                ##   in Loop: Header=BB0_4 Depth=1
	movq	-88(%rbp), %r12                 ## 8-byte Reload
	jmp	LBB0_29
LBB0_16:                                ##   in Loop: Header=BB0_4 Depth=1
	movq	-56(%rbp), %rdi                 ## 8-byte Reload
	callq	_TransactionIdIsCurrentTransactionId
	testq	%rax, %rax
	je	LBB0_29
## %bb.17:                              ##   in Loop: Header=BB0_4 Depth=1
	leal	-131(%r12), %eax
	cmpl	$3, %eax
	ja	LBB0_29
## %bb.18:                              ##   in Loop: Header=BB0_4 Depth=1
	leaq	LJTI0_0(%rip), %rcx
	movslq	(%rcx,%rax,4), %rax
	addq	%rcx, %rax
	jmpq	*%rax
LBB0_19:                                ##   in Loop: Header=BB0_4 Depth=1
	movl	%r14d, %edi
	callq	_HEAP_XMAX_IS_SHR_LOCKED
	testl	%eax, %eax
	jne	LBB0_126
## %bb.20:                              ##   in Loop: Header=BB0_4 Depth=1
	movl	%r14d, %edi
	callq	_HEAP_XMAX_IS_EXCL_LOCKED
	testq	%rax, %rax
	je	LBB0_21
	jmp	LBB0_126
LBB0_25:                                ##   in Loop: Header=BB0_4 Depth=1
	movl	-76(%rbp), %r14d                ## 4-byte Reload
LBB0_26:                                ##   in Loop: Header=BB0_4 Depth=1
	movl	%r14d, -76(%rbp)                ## 4-byte Spill
	movq	-160(%rbp), %rdi
	testq	%rdi, %rdi
	je	LBB0_28
## %bb.27:                              ##   in Loop: Header=BB0_4 Depth=1
	callq	_pfree
LBB0_28:                                ##   in Loop: Header=BB0_4 Depth=1
	movq	-88(%rbp), %r12                 ## 8-byte Reload
	movl	%r15d, %r14d
	movl	-132(%rbp), %ebx                ## 4-byte Reload
LBB0_29:                                ##   in Loop: Header=BB0_4 Depth=1
	cmpl	$131, %r12d
	je	LBB0_21
## %bb.30:                              ##   in Loop: Header=BB0_4 Depth=1
	cmpl	$132, %r12d
	je	LBB0_39
## %bb.31:                              ##   in Loop: Header=BB0_4 Depth=1
	cmpl	$133, %r12d
	jne	LBB0_48
## %bb.32:                              ##   in Loop: Header=BB0_4 Depth=1
	movq	_HEAP_KEYS_UPDATED@GOTPCREL(%rip), %rax
	testl	%ebx, (%rax)
	jne	LBB0_48
## %bb.33:                              ##   in Loop: Header=BB0_4 Depth=1
	movl	%r14d, %edi
	callq	_HEAP_XMAX_IS_LOCKED_ONLY
	movl	%eax, %r14d
	cmpl	$0, -116(%rbp)                  ## 4-byte Folded Reload
	je	LBB0_36
## %bb.34:                              ##   in Loop: Header=BB0_4 Depth=1
	testl	%r14d, %r14d
	jne	LBB0_36
## %bb.35:                              ##   in Loop: Header=BB0_4 Depth=1
	xorl	%eax, %eax
	callq	_GetCurrentTransactionId
	movl	-44(%rbp), %edi                 ## 4-byte Reload
	movq	-72(%rbp), %rsi                 ## 8-byte Reload
	leaq	-112(%rbp), %rdx
	movl	%eax, %ecx
	movl	$133, %r8d
	callq	_heap_lock_updated_tuple
	movq	%rax, %r13
	movq	_TM_Ok@GOTPCREL(%rip), %rax
	cmpq	(%rax), %r13
	jne	LBB0_76
LBB0_36:                                ##   in Loop: Header=BB0_4 Depth=1
	movq	16(%rbp), %rbx
	movq	(%rbx), %rdi
	movq	_BUFFER_LOCK_EXCLUSIVE@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	callq	_LockBuffer
	movq	-72(%rbp), %r13                 ## 8-byte Reload
	movq	(%r13), %rdi
	callq	_HeapTupleHeaderIsOnlyLocked
	testq	%rax, %rax
	je	LBB0_71
## %bb.37:                              ##   in Loop: Header=BB0_4 Depth=1
	movq	_TM_Ok@GOTPCREL(%rip), %rcx
	movl	-44(%rbp), %r14d                ## 4-byte Reload
	jmp	LBB0_91
LBB0_21:                                ##   in Loop: Header=BB0_4 Depth=1
	movl	%r14d, %edi
	callq	_HEAP_XMAX_IS_LOCKED_ONLY
	testl	%eax, %eax
	je	LBB0_48
## %bb.22:                              ##   in Loop: Header=BB0_4 Depth=1
	movl	%r14d, %edi
	callq	_HEAP_XMAX_IS_EXCL_LOCKED
	testq	%rax, %rax
	jne	LBB0_48
## %bb.23:                              ##   in Loop: Header=BB0_4 Depth=1
	movq	16(%rbp), %rbx
	movq	(%rbx), %rdi
	movq	_BUFFER_LOCK_EXCLUSIVE@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	callq	_LockBuffer
	movq	-72(%rbp), %r13                 ## 8-byte Reload
	movq	(%r13), %rax
	movl	(%rax), %edi
	callq	_HEAP_XMAX_IS_LOCKED_ONLY
	testl	%eax, %eax
	je	LBB0_42
## %bb.24:                              ##   in Loop: Header=BB0_4 Depth=1
	movq	(%r13), %rax
	movl	(%rax), %edi
	callq	_HEAP_XMAX_IS_EXCL_LOCKED
	movq	_TM_Ok@GOTPCREL(%rip), %rcx
	testq	%rax, %rax
	movl	-44(%rbp), %r14d                ## 4-byte Reload
	jne	LBB0_73
	jmp	LBB0_91
LBB0_38:                                ##   in Loop: Header=BB0_4 Depth=1
	movl	%r14d, %edi
	callq	_HEAP_XMAX_IS_EXCL_LOCKED
	testq	%rax, %rax
	jne	LBB0_126
LBB0_39:                                ##   in Loop: Header=BB0_4 Depth=1
	movq	_HEAP_XMAX_IS_MULTI@GOTPCREL(%rip), %rax
	testl	%r14d, (%rax)
	je	LBB0_43
## %bb.40:                              ##   in Loop: Header=BB0_4 Depth=1
	movq	-56(%rbp), %rdi                 ## 8-byte Reload
                                        ## kill: def $edi killed $edi killed $rdi
	movl	%r14d, %esi
	movl	$132, %edx
	xorl	%ecx, %ecx
	callq	_DoesMultiXactIdConflict
	testl	%eax, %eax
	jne	LBB0_48
	jmp	LBB0_41
LBB0_43:                                ##   in Loop: Header=BB0_4 Depth=1
	movl	%r14d, %edi
	callq	_HEAP_XMAX_IS_KEYSHR_LOCKED
	testq	%rax, %rax
	je	LBB0_48
LBB0_41:                                ##   in Loop: Header=BB0_4 Depth=1
	movq	16(%rbp), %rbx
	movq	(%rbx), %rdi
	movq	_BUFFER_LOCK_EXCLUSIVE@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	callq	_LockBuffer
	movq	-72(%rbp), %r13                 ## 8-byte Reload
	movq	(%r13), %rax
	movl	(%rax), %edi
	movl	%r14d, %esi
	callq	_xmax_infomask_changed
	testq	%rax, %rax
	jne	LBB0_42
## %bb.45:                              ##   in Loop: Header=BB0_4 Depth=1
	movq	(%r13), %rdi
	callq	_HeapTupleHeaderGetRawXmax
	movq	%rax, %rdi
	movq	-56(%rbp), %rsi                 ## 8-byte Reload
	callq	_TransactionIdEquals
	movq	_TM_Ok@GOTPCREL(%rip), %rcx
	testl	%eax, %eax
	movl	-44(%rbp), %r14d                ## 4-byte Reload
	jne	LBB0_91
	jmp	LBB0_73
LBB0_46:                                ##   in Loop: Header=BB0_4 Depth=1
	movl	%r14d, %edi
	callq	_HEAP_XMAX_IS_EXCL_LOCKED
	testq	%rax, %rax
	je	LBB0_48
## %bb.47:                              ##   in Loop: Header=BB0_4 Depth=1
	movq	_HEAP_KEYS_UPDATED@GOTPCREL(%rip), %rax
	testl	%ebx, (%rax)
	jne	LBB0_126
	.p2align	4, 0x90
LBB0_48:                                ##   in Loop: Header=BB0_4 Depth=1
	movq	_HEAP_XMAX_IS_MULTI@GOTPCREL(%rip), %rax
	testl	%r14d, (%rax)
	je	LBB0_60
LBB0_49:                                ##   in Loop: Header=BB0_4 Depth=1
	movq	_TM_Updated@GOTPCREL(%rip), %rax
	cmpq	(%rax), %r13
	je	LBB0_76
## %bb.50:                              ##   in Loop: Header=BB0_4 Depth=1
	movq	_TM_Deleted@GOTPCREL(%rip), %rax
	cmpq	(%rax), %r13
	je	LBB0_76
## %bb.51:                              ##   in Loop: Header=BB0_4 Depth=1
	cmpl	$0, -76(%rbp)                   ## 4-byte Folded Reload
	jne	LBB0_53
## %bb.52:                              ##   in Loop: Header=BB0_4 Depth=1
	movl	-44(%rbp), %edi                 ## 4-byte Reload
	movq	-64(%rbp), %rsi                 ## 8-byte Reload
	movl	%r12d, %edx
	movl	-92(%rbp), %ecx                 ## 4-byte Reload
	leaq	-128(%rbp), %r8
	callq	_heap_acquire_tuplock
	testl	%eax, %eax
	je	LBB0_68
LBB0_53:                                ##   in Loop: Header=BB0_4 Depth=1
	movq	_HEAP_XMAX_IS_MULTI@GOTPCREL(%rip), %rax
	testl	%r14d, (%rax)
	je	LBB0_64
## %bb.54:                              ##   in Loop: Header=BB0_4 Depth=1
	movl	%r12d, %edi
	xorl	%esi, %esi
	callq	_get_mxact_status_for_lock
	movq	%rax, %r13
	movq	_MultiXactStatusNoKeyUpdate@GOTPCREL(%rip), %rax
	cmpq	(%rax), %r13
	jl	LBB0_56
## %bb.55:                              ##   in Loop: Header=BB0_4 Depth=1
	movq	_ERROR@GOTPCREL(%rip), %rax
	movl	(%rax), %edi
	leaq	L_.str(%rip), %rsi
	callq	_elog
LBB0_56:                                ##   in Loop: Header=BB0_4 Depth=1
	movl	-92(%rbp), %eax                 ## 4-byte Reload
	cmpl	$128, %eax
	je	LBB0_69
## %bb.57:                              ##   in Loop: Header=BB0_4 Depth=1
	cmpl	$129, %eax
	je	LBB0_70
## %bb.58:                              ##   in Loop: Header=BB0_4 Depth=1
	cmpl	$130, %eax
	jne	LBB0_80
## %bb.59:                              ##   in Loop: Header=BB0_4 Depth=1
	movq	_XLTW_Lock@GOTPCREL(%rip), %rax
	movl	(%rax), %r9d
	subq	$8, %rsp
	movq	-56(%rbp), %rdi                 ## 8-byte Reload
                                        ## kill: def $edi killed $edi killed $rdi
	movq	%r13, %rsi
	movl	%r14d, %edx
	movl	-44(%rbp), %ecx                 ## 4-byte Reload
	movq	-64(%rbp), %r8                  ## 8-byte Reload
	pushq	$0
	callq	_MultiXactIdWait
	addq	$16, %rsp
	jmp	LBB0_80
LBB0_60:                                ##   in Loop: Header=BB0_4 Depth=1
	movq	-56(%rbp), %rdi                 ## 8-byte Reload
	callq	_TransactionIdIsCurrentTransactionId
	testq	%rax, %rax
	je	LBB0_49
## %bb.61:                              ##   in Loop: Header=BB0_4 Depth=1
	movq	16(%rbp), %rbx
	movq	(%rbx), %rdi
	movq	_BUFFER_LOCK_EXCLUSIVE@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	callq	_LockBuffer
	movq	-72(%rbp), %r13                 ## 8-byte Reload
	movq	(%r13), %rax
	movl	(%rax), %edi
	movl	%r14d, %esi
	callq	_xmax_infomask_changed
	testq	%rax, %rax
	jne	LBB0_42
## %bb.62:                              ##   in Loop: Header=BB0_4 Depth=1
	movq	(%r13), %rdi
	callq	_HeapTupleHeaderGetRawXmax
	movq	%rax, %rdi
	movq	-56(%rbp), %rsi                 ## 8-byte Reload
	callq	_TransactionIdEquals
	testl	%eax, %eax
	movl	-44(%rbp), %r14d                ## 4-byte Reload
	je	LBB0_73
## %bb.63:                              ##   in Loop: Header=BB0_4 Depth=1
	movq	(%r13), %rax
	movl	(%rax), %edi
	callq	_HEAP_XMAX_IS_LOCKED_ONLY
	movl	%eax, %edi
	callq	_Assert
	jmp	LBB0_90
LBB0_64:                                ##   in Loop: Header=BB0_4 Depth=1
	movl	-92(%rbp), %eax                 ## 4-byte Reload
	cmpl	$128, %eax
	je	LBB0_74
## %bb.65:                              ##   in Loop: Header=BB0_4 Depth=1
	cmpl	$129, %eax
	je	LBB0_78
## %bb.66:                              ##   in Loop: Header=BB0_4 Depth=1
	cmpl	$130, %eax
	jne	LBB0_80
## %bb.67:                              ##   in Loop: Header=BB0_4 Depth=1
	movq	_XLTW_Lock@GOTPCREL(%rip), %rax
	movl	(%rax), %ecx
	movq	-56(%rbp), %rdi                 ## 8-byte Reload
	movl	-44(%rbp), %esi                 ## 4-byte Reload
	movq	-64(%rbp), %rdx                 ## 8-byte Reload
	callq	_XactLockTableWait
	jmp	LBB0_80
LBB0_68:                                ##   in Loop: Header=BB0_4 Depth=1
	movq	_TM_WouldBlock@GOTPCREL(%rip), %rax
	movq	(%rax), %r13
	movq	16(%rbp), %rax
	movq	(%rax), %rdi
	movq	_BUFFER_LOCK_EXCLUSIVE@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	callq	_LockBuffer
	movl	$0, -76(%rbp)                   ## 4-byte Folded Spill
	jmp	LBB0_77
LBB0_69:                                ##   in Loop: Header=BB0_4 Depth=1
	movq	-56(%rbp), %rdi                 ## 8-byte Reload
                                        ## kill: def $edi killed $edi killed $rdi
	movq	%r13, %rsi
	movl	%r14d, %edx
	movl	-44(%rbp), %ecx                 ## 4-byte Reload
	xorl	%r8d, %r8d
	callq	_ConditionalMultiXactIdWait
	testl	%eax, %eax
	jne	LBB0_80
	jmp	LBB0_75
LBB0_70:                                ##   in Loop: Header=BB0_4 Depth=1
	movq	-56(%rbp), %rdi                 ## 8-byte Reload
                                        ## kill: def $edi killed $edi killed $rdi
	movq	%r13, %rsi
	movl	%r14d, %edx
	movl	-44(%rbp), %ecx                 ## 4-byte Reload
	xorl	%r8d, %r8d
	callq	_ConditionalMultiXactIdWait
	testl	%eax, %eax
	jne	LBB0_80
	jmp	LBB0_79
LBB0_71:                                ##   in Loop: Header=BB0_4 Depth=1
	movq	(%r13), %rax
	movq	_HEAP_KEYS_UPDATED@GOTPCREL(%rip), %rcx
	movl	(%rcx), %ecx
	andl	4(%rax), %ecx
	orl	%r14d, %ecx
	movq	_TM_Ok@GOTPCREL(%rip), %rcx
	movl	-44(%rbp), %r14d                ## 4-byte Reload
	je	LBB0_91
LBB0_73:                                ##   in Loop: Header=BB0_4 Depth=1
	xorl	%r12d, %r12d
	jmp	LBB0_96
LBB0_74:                                ##   in Loop: Header=BB0_4 Depth=1
	movq	-56(%rbp), %rdi                 ## 8-byte Reload
	callq	_ConditionalXactLockTableWait
	testl	%eax, %eax
	jne	LBB0_80
LBB0_75:                                ##   in Loop: Header=BB0_4 Depth=1
	movq	_TM_WouldBlock@GOTPCREL(%rip), %rax
	movq	(%rax), %r13
	jmp	LBB0_76
LBB0_78:                                ##   in Loop: Header=BB0_4 Depth=1
	movq	-56(%rbp), %rdi                 ## 8-byte Reload
	callq	_ConditionalXactLockTableWait
	testl	%eax, %eax
	jne	LBB0_80
LBB0_79:                                ##   in Loop: Header=BB0_4 Depth=1
	movq	_ERROR@GOTPCREL(%rip), %rax
	movl	(%rax), %r13d
	movq	_ERRCODE_LOCK_NOT_AVAILABLE@GOTPCREL(%rip), %rax
	movl	(%rax), %edi
	callq	_errcode
	movl	-44(%rbp), %edi                 ## 4-byte Reload
	callq	_RelationGetRelationName
	leaq	L_.str.1(%rip), %rdi
	movl	%eax, %esi
	callq	_errmsg
	movl	%r13d, %edi
	movl	%eax, %esi
	callq	_ereport
LBB0_80:                                ##   in Loop: Header=BB0_4 Depth=1
	cmpl	$0, -116(%rbp)                  ## 4-byte Folded Reload
	je	LBB0_83
## %bb.81:                              ##   in Loop: Header=BB0_4 Depth=1
	movl	%r14d, %edi
	callq	_HEAP_XMAX_IS_LOCKED_ONLY
	testl	%eax, %eax
	jne	LBB0_83
## %bb.82:                              ##   in Loop: Header=BB0_4 Depth=1
	xorl	%eax, %eax
	callq	_GetCurrentTransactionId
	movl	-44(%rbp), %edi                 ## 4-byte Reload
	movq	-72(%rbp), %rsi                 ## 8-byte Reload
	leaq	-112(%rbp), %rdx
	movl	%eax, %ecx
	movl	%r12d, %r8d
	callq	_heap_lock_updated_tuple
	movq	%rax, %r13
	movq	_TM_Ok@GOTPCREL(%rip), %rax
	cmpq	(%rax), %r13
	jne	LBB0_76
LBB0_83:                                ##   in Loop: Header=BB0_4 Depth=1
	movq	16(%rbp), %rbx
	movq	(%rbx), %rdi
	movq	_BUFFER_LOCK_EXCLUSIVE@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	callq	_LockBuffer
	movq	-72(%rbp), %r13                 ## 8-byte Reload
	movq	(%r13), %rax
	movl	(%rax), %edi
	movl	%r14d, %esi
	callq	_xmax_infomask_changed
	testq	%rax, %rax
	je	LBB0_84
LBB0_42:                                ##   in Loop: Header=BB0_4 Depth=1
	movl	-44(%rbp), %r14d                ## 4-byte Reload
	xorl	%r12d, %r12d
	jmp	LBB0_96
LBB0_76:                                ##   in Loop: Header=BB0_4 Depth=1
	movq	16(%rbp), %rax
	movq	(%rax), %rdi
	movq	_BUFFER_LOCK_EXCLUSIVE@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	callq	_LockBuffer
LBB0_77:                                ##   in Loop: Header=BB0_4 Depth=1
	xorl	%r12d, %r12d
	movl	-44(%rbp), %r14d                ## 4-byte Reload
	jmp	LBB0_92
LBB0_84:                                ##   in Loop: Header=BB0_4 Depth=1
	movq	(%r13), %rdi
	callq	_HeapTupleHeaderGetRawXmax
	movq	%rax, %rdi
	movq	-56(%rbp), %rsi                 ## 8-byte Reload
	callq	_TransactionIdEquals
	testl	%eax, %eax
	je	LBB0_42
## %bb.85:                              ##   in Loop: Header=BB0_4 Depth=1
	movq	_HEAP_XMAX_IS_MULTI@GOTPCREL(%rip), %rax
	testl	%r14d, (%rax)
	jne	LBB0_87
## %bb.86:                              ##   in Loop: Header=BB0_4 Depth=1
	movq	(%r13), %rdi
	movq	(%rbx), %rsi
	movq	-56(%rbp), %rdx                 ## 8-byte Reload
	callq	_UpdateXmaxHintBits
LBB0_87:                                ##   in Loop: Header=BB0_4 Depth=1
	movq	(%r13), %rax
	movl	(%rax), %edi
	movq	_HEAP_XMAX_INVALID@GOTPCREL(%rip), %rax
	testl	%edi, (%rax)
	movl	-44(%rbp), %r14d                ## 4-byte Reload
	jne	LBB0_90
## %bb.88:                              ##   in Loop: Header=BB0_4 Depth=1
	callq	_HEAP_XMAX_IS_LOCKED_ONLY
	testl	%eax, %eax
	jne	LBB0_90
## %bb.89:                              ##   in Loop: Header=BB0_4 Depth=1
	movq	(%r13), %rdi
	callq	_HeapTupleHeaderIsOnlyLocked
	testq	%rax, %rax
	je	LBB0_97
LBB0_90:                                ##   in Loop: Header=BB0_4 Depth=1
	movq	_TM_Ok@GOTPCREL(%rip), %rcx
LBB0_91:                                ##   in Loop: Header=BB0_4 Depth=1
	movq	(%rcx), %r13
	xorl	%r12d, %r12d
	.p2align	4, 0x90
LBB0_92:                                ##   in Loop: Header=BB0_4 Depth=1
	movq	_TM_Ok@GOTPCREL(%rip), %rax
	cmpq	(%rax), %r13
	jne	LBB0_107
## %bb.93:                              ##   in Loop: Header=BB0_4 Depth=1
	movq	-104(%rbp), %rax
	movq	_InvalidBuffer@GOTPCREL(%rip), %rcx
	cmpq	(%rcx), %rax
	jne	LBB0_101
## %bb.94:                              ##   in Loop: Header=BB0_4 Depth=1
	movl	-96(%rbp), %edi                 ## 4-byte Reload
	callq	_PageIsAllVisible
	testq	%rax, %rax
	je	LBB0_101
## %bb.95:                              ##   in Loop: Header=BB0_4 Depth=1
	movq	16(%rbp), %rbx
	movq	(%rbx), %rdi
	movq	_BUFFER_LOCK_UNLOCK@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	callq	_LockBuffer
	movl	%r14d, %edi
	movl	-120(%rbp), %esi                ## 4-byte Reload
	leaq	-104(%rbp), %rdx
	callq	_visibilitymap_pin
	movq	(%rbx), %rdi
	movq	_BUFFER_LOCK_EXCLUSIVE@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	callq	_LockBuffer
	movq	-72(%rbp), %r13                 ## 8-byte Reload
LBB0_96:                                ##   in Loop: Header=BB0_4 Depth=1
	movq	(%rbx), %rdx
	movq	%r13, %rdi
	movl	-124(%rbp), %esi                ## 4-byte Reload
	callq	_HeapTupleSatisfiesUpdate
	movq	%rax, %r13
	movq	_TM_Invisible@GOTPCREL(%rip), %rax
	cmpq	(%rax), %r13
	jne	LBB0_4
	jmp	LBB0_120
LBB0_97:                                ##   in Loop: Header=BB0_4 Depth=1
	movq	(%r13), %rsi
	addq	$8, %rsi
	movq	-64(%rbp), %rdi                 ## 8-byte Reload
	callq	_ItemPointerEquals
	testl	%eax, %eax
	je	LBB0_100
## %bb.98:                              ##   in Loop: Header=BB0_4 Depth=1
	movq	(%r13), %rdi
	callq	_HeapTupleHeaderIndicatesMovedPartitions
	movq	_TM_Updated@GOTPCREL(%rip), %rcx
	testq	%rax, %rax
	jne	LBB0_91
## %bb.99:                              ##   in Loop: Header=BB0_4 Depth=1
	movq	_TM_Deleted@GOTPCREL(%rip), %rcx
	jmp	LBB0_91
LBB0_100:                               ##   in Loop: Header=BB0_4 Depth=1
	movq	_TM_Updated@GOTPCREL(%rip), %rcx
	jmp	LBB0_91
LBB0_14:
	movq	-160(%rbp), %rdi
	callq	_pfree
	movq	_TM_Ok@GOTPCREL(%rip), %rax
	movq	(%rax), %r13
	movq	-88(%rbp), %r12                 ## 8-byte Reload
LBB0_127:
	movl	-44(%rbp), %r14d                ## 4-byte Reload
	movq	-64(%rbp), %rbx                 ## 8-byte Reload
	jmp	LBB0_121
LBB0_101:
	movq	-72(%rbp), %r12                 ## 8-byte Reload
	movq	(%r12), %rdi
	callq	_HeapTupleHeaderGetRawXmax
	movq	%rax, %r14
	movq	(%r12), %rax
	movl	(%rax), %r13d
	xorl	%eax, %eax
	callq	_MultiXactIdSetOldestMember
	movq	(%r12), %rax
	movl	4(%rax), %ebx
	xorl	%eax, %eax
	callq	_GetCurrentTransactionId
	subq	$8, %rsp
	leaq	-136(%rbp), %r10
	leaq	-80(%rbp), %r11
	movq	%r14, %rdi
	movl	%r13d, %esi
	movl	%ebx, %edx
	movl	%eax, %ecx
	movq	-88(%rbp), %r8                  ## 8-byte Reload
                                        ## kill: def $r8d killed $r8d killed $r8
	xorl	%r9d, %r9d
	pushq	%r10
	pushq	%r11
	leaq	-112(%rbp), %rax
	pushq	%rax
	callq	_compute_new_xmax_infomask
	addq	$32, %rsp
	xorl	%eax, %eax
	callq	_START_CRIT_SECTION
	movq	_HEAP_XMAX_BITS@GOTPCREL(%rip), %rax
	movl	(%rax), %eax
	notl	%eax
	movq	(%r12), %rcx
	andl	(%rcx), %eax
	movl	%eax, (%rcx)
	movq	_HEAP_KEYS_UPDATED@GOTPCREL(%rip), %rdx
	movl	(%rdx), %edx
	notl	%edx
	andl	4(%rcx), %edx
	orl	-80(%rbp), %eax
	movl	%eax, (%rcx)
	orl	-136(%rbp), %edx
	movl	%edx, 4(%rcx)
	movl	-80(%rbp), %edi
	callq	_HEAP_XMAX_IS_LOCKED_ONLY
	testl	%eax, %eax
	je	LBB0_103
## %bb.102:
	movq	(%r12), %rdi
	callq	_HeapTupleHeaderClearHotUpdated
LBB0_103:
	movq	(%r12), %rdi
	movq	-112(%rbp), %rsi
	callq	_HeapTupleHeaderSetXmax
	movl	-80(%rbp), %edi
	callq	_HEAP_XMAX_IS_LOCKED_ONLY
	testl	%eax, %eax
	movq	-64(%rbp), %r15                 ## 8-byte Reload
	je	LBB0_105
## %bb.104:
	movl	8(%r12), %eax
	movq	(%r12), %rcx
	movl	%eax, 8(%rcx)
LBB0_105:
	movl	-96(%rbp), %edi                 ## 4-byte Reload
	callq	_PageIsAllVisible
	testq	%rax, %rax
	movl	-44(%rbp), %ebx                 ## 4-byte Reload
	movl	-120(%rbp), %esi                ## 4-byte Reload
	je	LBB0_111
## %bb.106:
	movq	-104(%rbp), %rdx
	movq	_VISIBILITYMAP_ALL_FROZEN@GOTPCREL(%rip), %rax
	movl	(%rax), %ecx
	movl	%ebx, %edi
	callq	_visibilitymap_clear
	testq	%rax, %rax
	sete	%r14b
	jmp	LBB0_112
LBB0_107:
	movq	_TM_SelfModified@GOTPCREL(%rip), %r14
	cmpq	(%r14), %r13
	sete	%al
	movq	_TM_Updated@GOTPCREL(%rip), %rbx
	cmpq	(%rbx), %r13
	sete	%cl
	orb	%al, %cl
	movq	_TM_Deleted@GOTPCREL(%rip), %rax
	cmpq	(%rax), %r13
	sete	%al
	movq	_TM_WouldBlock@GOTPCREL(%rip), %rdx
	cmpq	(%rdx), %r13
	sete	%dl
	orb	%al, %dl
	orb	%cl, %dl
	movzbl	%dl, %edi
	callq	_Assert
	movq	-72(%rbp), %r15                 ## 8-byte Reload
	movq	(%r15), %rax
	movq	_HEAP_XMAX_INVALID@GOTPCREL(%rip), %rcx
	movl	(%rcx), %ecx
	xorl	%edi, %edi
	andl	(%rax), %ecx
	sete	%dil
	callq	_Assert
	movl	$1, %edi
	cmpq	(%rbx), %r13
	jne	LBB0_109
## %bb.108:
	movq	(%r15), %rsi
	addq	$8, %rsi
	movq	-64(%rbp), %rdi                 ## 8-byte Reload
	callq	_ItemPointerEquals
	xorl	%edi, %edi
	testl	%eax, %eax
	sete	%dil
LBB0_109:
	callq	_Assert
	movq	(%r15), %rdi
	movl	8(%rdi), %eax
	movq	24(%rbp), %r12
	movl	%eax, 8(%r12)
	callq	_HeapTupleHeaderGetUpdateXid
	movl	%eax, 4(%r12)
	cmpq	(%r14), %r13
	jne	LBB0_117
## %bb.110:
	movq	(%r15), %rdi
	callq	_HeapTupleHeaderGetCmax
	jmp	LBB0_118
LBB0_111:
	movb	$1, %r14b
LBB0_112:
	movq	16(%rbp), %rax
	movq	(%rax), %rdi
	callq	_MarkBufferDirty
	movl	%ebx, %edi
	callq	_RelationNeedsWAL
	testq	%rax, %rax
	je	LBB0_116
## %bb.113:
	xorl	%ebx, %ebx
	xorl	%eax, %eax
	callq	_XLogBeginInsert
	movq	16(%rbp), %rax
	movq	(%rax), %rsi
	movq	_REGBUF_STANDARD@GOTPCREL(%rip), %rax
	movl	(%rax), %edx
	xorl	%edi, %edi
	callq	_XLogRegisterBuffer
	movq	%r15, %rdi
	callq	_ItemPointerGetOffsetNumber
	movl	%eax, -144(%rbp)
	movq	-112(%rbp), %rax
	movq	%rax, -152(%rbp)
	movl	-80(%rbp), %edi
	movq	(%r12), %rax
	movl	4(%rax), %esi
	callq	_compute_infobits
	movl	%eax, -156(%rbp)
	testb	%r14b, %r14b
	jne	LBB0_115
## %bb.114:
	movq	_XLH_LOCK_ALL_FROZEN_CLEARED@GOTPCREL(%rip), %rax
	movl	(%rax), %ebx
LBB0_115:
	movl	%ebx, -160(%rbp)
	movq	_SizeOfHeapLock@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	leaq	-160(%rbp), %rdi
	callq	_XLogRegisterData
	movq	_RM_HEAP_ID@GOTPCREL(%rip), %rax
	movl	(%rax), %edi
	movq	_XLOG_HEAP_LOCK@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	callq	_XLogInsert
	movl	-96(%rbp), %edi                 ## 4-byte Reload
	movl	%eax, %esi
	callq	_PageSetLSN
LBB0_116:
	xorl	%eax, %eax
	callq	_END_CRIT_SECTION
	movq	_TM_Ok@GOTPCREL(%rip), %rax
	movq	(%rax), %r13
	jmp	LBB0_119
LBB0_117:
	movq	_InvalidCommandId@GOTPCREL(%rip), %rax
	movl	(%rax), %eax
LBB0_118:
	movl	%eax, (%r12)
LBB0_119:
	movl	-44(%rbp), %r14d                ## 4-byte Reload
LBB0_120:
	movq	16(%rbp), %rax
	movq	(%rax), %rdi
	movq	_BUFFER_LOCK_UNLOCK@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	callq	_LockBuffer
	movq	-64(%rbp), %rbx                 ## 8-byte Reload
	movq	-88(%rbp), %r12                 ## 8-byte Reload
LBB0_121:
	movq	-104(%rbp), %rdi
	callq	_BufferIsValid
	testq	%rax, %rax
	je	LBB0_123
## %bb.122:
	movq	-104(%rbp), %rdi
	callq	_ReleaseBuffer
LBB0_123:
	cmpl	$0, -128(%rbp)
	je	LBB0_125
## %bb.124:
	movl	%r14d, %edi
	movq	%rbx, %rsi
	movl	%r12d, %edx
	callq	_UnlockTupleTuplock
LBB0_125:
	movq	%r13, %rax
	addq	$120, %rsp
	popq	%rbx
	popq	%r12
	popq	%r13
	popq	%r14
	popq	%r15
	popq	%rbp
	retq
LBB0_126:
	movq	_TM_Ok@GOTPCREL(%rip), %rax
	movq	(%rax), %r13
	jmp	LBB0_127
LBB0_128:
	movl	%r14d, %edi
	callq	_HEAP_XMAX_IS_KEYSHR_LOCKED
	movl	$1, %r15d
	testq	%rax, %rax
	je	LBB0_130
## %bb.129:
	movq	-64(%rbp), %rbx                 ## 8-byte Reload
	jmp	LBB0_132
LBB0_130:
	movl	%r14d, %edi
	callq	_HEAP_XMAX_IS_SHR_LOCKED
	testl	%eax, %eax
	movq	-64(%rbp), %rbx                 ## 8-byte Reload
	jne	LBB0_132
## %bb.131:
	movl	%r14d, %edi
	callq	_HEAP_XMAX_IS_EXCL_LOCKED
	xorl	%r15d, %r15d
	testq	%rax, %rax
	setne	%r15b
LBB0_132:
	movl	%r15d, %edi
	callq	_Assert
	movq	_TM_Ok@GOTPCREL(%rip), %rax
	movq	(%rax), %r13
	movq	-88(%rbp), %r12                 ## 8-byte Reload
	movl	-44(%rbp), %r14d                ## 4-byte Reload
	jmp	LBB0_121
	.cfi_endproc
	.p2align	2, 0x90
	.data_region jt32
.set L0_0_set_19, LBB0_19-LJTI0_0
.set L0_0_set_38, LBB0_38-LJTI0_0
.set L0_0_set_128, LBB0_128-LJTI0_0
.set L0_0_set_46, LBB0_46-LJTI0_0
LJTI0_0:
	.long	L0_0_set_19
	.long	L0_0_set_38
	.long	L0_0_set_128
	.long	L0_0_set_46
	.end_data_region
                                        ## -- End function
	.comm	_InvalidBuffer,8,3              ## @InvalidBuffer
	.comm	_BUFFER_LOCK_EXCLUSIVE,4,2      ## @BUFFER_LOCK_EXCLUSIVE
	.comm	_TM_Invisible,8,3               ## @TM_Invisible
	.comm	_TM_BeingModified,8,3           ## @TM_BeingModified
	.comm	_TM_Updated,8,3                 ## @TM_Updated
	.comm	_TM_Deleted,8,3                 ## @TM_Deleted
	.comm	_BUFFER_LOCK_UNLOCK,4,2         ## @BUFFER_LOCK_UNLOCK
	.comm	_HEAP_XMAX_IS_MULTI,4,2         ## @HEAP_XMAX_IS_MULTI
	.comm	_TM_Ok,8,3                      ## @TM_Ok
	.comm	_HEAP_KEYS_UPDATED,4,2          ## @HEAP_KEYS_UPDATED
	.comm	_TM_WouldBlock,8,3              ## @TM_WouldBlock
	.comm	_MultiXactStatusNoKeyUpdate,8,3 ## @MultiXactStatusNoKeyUpdate
	.comm	_ERROR,4,2                      ## @ERROR
	.section	__TEXT,__cstring,cstring_literals
L_.str:                                 ## @.str
	.asciz	"invalid lock mode in heap_lock_tuple"

	.comm	_XLTW_Lock,4,2                  ## @XLTW_Lock
	.comm	_ERRCODE_LOCK_NOT_AVAILABLE,4,2 ## @ERRCODE_LOCK_NOT_AVAILABLE
L_.str.1:                               ## @.str.1
	.asciz	"could not obtain lock on row in relation \"%s\""

	.comm	_HEAP_XMAX_INVALID,4,2          ## @HEAP_XMAX_INVALID
	.comm	_TM_SelfModified,8,3            ## @TM_SelfModified
	.comm	_InvalidCommandId,4,2           ## @InvalidCommandId
	.comm	_HEAP_XMAX_BITS,4,2             ## @HEAP_XMAX_BITS
	.comm	_VISIBILITYMAP_ALL_FROZEN,4,2   ## @VISIBILITYMAP_ALL_FROZEN
	.comm	_REGBUF_STANDARD,4,2            ## @REGBUF_STANDARD
	.comm	_XLH_LOCK_ALL_FROZEN_CLEARED,4,2 ## @XLH_LOCK_ALL_FROZEN_CLEARED
	.comm	_SizeOfHeapLock,4,2             ## @SizeOfHeapLock
	.comm	_RM_HEAP_ID,4,2                 ## @RM_HEAP_ID
	.comm	_XLOG_HEAP_LOCK,4,2             ## @XLOG_HEAP_LOCK
.subsections_via_symbols

	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.globl	_heap_lock_tuple                ; -- Begin function heap_lock_tuple
	.p2align	2
_heap_lock_tuple:                       ; @heap_lock_tuple
	.cfi_startproc
; %bb.0:
	sub	sp, sp, #208
	.cfi_def_cfa_offset 208
	stp	x28, x27, [sp, #112]            ; 16-byte Folded Spill
	stp	x26, x25, [sp, #128]            ; 16-byte Folded Spill
	stp	x24, x23, [sp, #144]            ; 16-byte Folded Spill
	stp	x22, x21, [sp, #160]            ; 16-byte Folded Spill
	stp	x20, x19, [sp, #176]            ; 16-byte Folded Spill
	stp	x29, x30, [sp, #192]            ; 16-byte Folded Spill
	add	x29, sp, #192
	.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	x24, x7
	mov	x22, x6
	stp	w5, w4, [sp, #24]               ; 8-byte Folded Spill
	mov	x19, x3
	str	w2, [sp, #48]                   ; 4-byte Folded Spill
	mov	x23, x1
	mov	x20, x0
Lloh0:
	adrp	x8, _InvalidBuffer@GOTPAGE
Lloh1:
	ldr	x8, [x8, _InvalidBuffer@GOTPAGEOFF]
Lloh2:
	ldr	x8, [x8]
	add	x26, x1, #8
	stur	x8, [x29, #-88]
	str	wzr, [sp, #84]
	mov	x0, x26
	bl	_ItemPointerGetBlockNumber
	mov	x1, x0
	mov	x0, x20
	bl	_ReadBuffer
	str	x0, [x22]
	mov	x0, x26
	bl	_ItemPointerGetBlockNumber
	mov	x21, x0
	ldr	x0, [x22]
	bl	_BufferGetPage
	bl	_PageIsAllVisible
	cbz	x0, LBB0_2
; %bb.1:
	sub	x2, x29, #88
	mov	x0, x20
	mov	x1, x21
	bl	_visibilitymap_pin
LBB0_2:
	str	w21, [sp, #36]                  ; 4-byte Folded Spill
	ldr	x0, [x22]
Lloh3:
	adrp	x8, _BUFFER_LOCK_EXCLUSIVE@GOTPAGE
Lloh4:
	ldr	x8, [x8, _BUFFER_LOCK_EXCLUSIVE@GOTPAGEOFF]
Lloh5:
	ldr	w1, [x8]
	bl	_LockBuffer
	ldr	x0, [x22]
	bl	_BufferGetPage
	mov	x25, x0
	mov	x0, x26
	bl	_ItemPointerGetOffsetNumber
	mov	x1, x0
	mov	x0, x25
	bl	_PageGetItemId
	mov	x21, x0
	bl	_ItemIdIsNormal
	bl	_Assert
	mov	x0, x25
	mov	x1, x21
	bl	_PageGetItem
	str	x0, [x23]
	mov	x0, x21
	bl	_ItemIdGetLength
	str	w0, [x23, #16]
	mov	x0, x20
	bl	_RelationGetRelid
	str	w0, [x23, #12]
	ldr	x2, [x22]
	mov	x0, x23
	ldr	w1, [sp, #48]                   ; 4-byte Folded Reload
	bl	_HeapTupleSatisfiesUpdate
	mov	x28, x0
Lloh6:
	adrp	x8, _TM_Invisible@GOTPAGE
Lloh7:
	ldr	x8, [x8, _TM_Invisible@GOTPAGEOFF]
Lloh8:
	ldr	x8, [x8]
Lloh9:
	adrp	x27, _BUFFER_LOCK_UNLOCK@GOTPAGE
Lloh10:
	ldr	x27, [x27, _BUFFER_LOCK_UNLOCK@GOTPAGEOFF]
	cmp	x0, x8
	b.eq	LBB0_114
; %bb.3:
	str	x24, [sp, #16]                  ; 8-byte Folded Spill
	str	wzr, [sp, #52]                  ; 4-byte Folded Spill
	mov	w24, #1
	str	w25, [sp, #32]                  ; 4-byte Folded Spill
	ldr	w21, [sp, #36]                  ; 4-byte Folded Reload
LBB0_4:                                 ; =>This Loop Header: Depth=1
                                        ;     Child Loop BB0_10 Depth 2
Lloh11:
	adrp	x8, _TM_BeingModified@GOTPAGE
Lloh12:
	ldr	x8, [x8, _TM_BeingModified@GOTPAGEOFF]
Lloh13:
	ldr	x8, [x8]
Lloh14:
	adrp	x9, _TM_Updated@GOTPAGE
Lloh15:
	ldr	x9, [x9, _TM_Updated@GOTPAGEOFF]
Lloh16:
	ldr	x9, [x9]
Lloh17:
	adrp	x10, _TM_Deleted@GOTPAGE
Lloh18:
	ldr	x10, [x10, _TM_Deleted@GOTPAGEOFF]
Lloh19:
	ldr	x10, [x10]
	cmp	x28, x8
	ccmp	x28, x9, #4, ne
	ccmp	x28, x10, #4, ne
	b.ne	LBB0_87
; %bb.5:                                ;   in Loop: Header=BB0_4 Depth=1
	ldr	x0, [x23]
	bl	_HeapTupleHeaderGetRawXmax
	str	x0, [sp, #40]                   ; 8-byte Folded Spill
	ldr	x8, [x23]
	ldp	w21, w25, [x8]
	add	x0, x8, #8
	add	x1, sp, #96
	bl	_ItemPointerCopy
	ldr	x0, [x22]
	ldr	w1, [x27]
	bl	_LockBuffer
	cbz	w24, LBB0_21
; %bb.6:                                ;   in Loop: Header=BB0_4 Depth=1
Lloh20:
	adrp	x8, _HEAP_XMAX_IS_MULTI@GOTPAGE
Lloh21:
	ldr	x8, [x8, _HEAP_XMAX_IS_MULTI@GOTPAGEOFF]
Lloh22:
	ldr	w8, [x8]
	tst	w8, w21
	b.eq	LBB0_16
; %bb.7:                                ;   in Loop: Header=BB0_4 Depth=1
	mov	x27, x26
	mov	x26, x20
	mov	x0, x21
	bl	_HEAP_XMAX_IS_LOCKED_ONLY
	mov	x3, x0
	add	x1, sp, #56
	ldr	x0, [sp, #40]                   ; 8-byte Folded Reload
	mov	w2, #0
	bl	_GetMultiXactIdMembers
	cmp	w0, #1
	b.lt	LBB0_13
; %bb.8:                                ;   in Loop: Header=BB0_4 Depth=1
	mov	x24, #0
	mov	w8, w0
	lsl	x20, x8, #4
	b	LBB0_10
LBB0_9:                                 ;   in Loop: Header=BB0_10 Depth=2
	add	x24, x24, #16
	cmp	x20, x24
	b.eq	LBB0_13
LBB0_10:                                ;   Parent Loop BB0_4 Depth=1
                                        ; =>  This Inner Loop Header: Depth=2
	ldr	x8, [sp, #56]
	add	x8, x8, x24
	ldr	x0, [x8, #8]
	bl	_TransactionIdIsCurrentTransactionId
	cbz	x0, LBB0_9
; %bb.11:                               ;   in Loop: Header=BB0_10 Depth=2
	ldr	x8, [sp, #56]
	ldr	w0, [x8, x24]
	bl	_TUPLOCK_from_mxstatus
	cmp	w0, w19
	b.ge	LBB0_97
; %bb.12:                               ;   in Loop: Header=BB0_10 Depth=2
	mov	w8, #1
	str	w8, [sp, #52]                   ; 4-byte Folded Spill
	b	LBB0_9
LBB0_13:                                ;   in Loop: Header=BB0_4 Depth=1
	ldr	x0, [sp, #56]
	mov	x20, x26
	cbz	x0, LBB0_15
; %bb.14:                               ;   in Loop: Header=BB0_4 Depth=1
	bl	_pfree
LBB0_15:                                ;   in Loop: Header=BB0_4 Depth=1
	mov	x26, x27
Lloh23:
	adrp	x27, _BUFFER_LOCK_UNLOCK@GOTPAGE
Lloh24:
	ldr	x27, [x27, _BUFFER_LOCK_UNLOCK@GOTPAGEOFF]
	b	LBB0_21
LBB0_16:                                ;   in Loop: Header=BB0_4 Depth=1
	ldr	x0, [sp, #40]                   ; 8-byte Folded Reload
	bl	_TransactionIdIsCurrentTransactionId
	cbz	x0, LBB0_21
; %bb.17:                               ;   in Loop: Header=BB0_4 Depth=1
	sub	w8, w19, #131
	cmp	w8, #3
	b.hi	LBB0_21
; %bb.18:                               ;   in Loop: Header=BB0_4 Depth=1
Lloh25:
	adrp	x11, lJTI0_0@PAGE
Lloh26:
	add	x11, x11, lJTI0_0@PAGEOFF
	adr	x9, LBB0_19
	ldrh	w10, [x11, x8, lsl #1]
	add	x9, x9, x10, lsl #2
	br	x9
LBB0_19:                                ;   in Loop: Header=BB0_4 Depth=1
	mov	x0, x21
	bl	_HEAP_XMAX_IS_SHR_LOCKED
	cbnz	w0, LBB0_124
; %bb.20:                               ;   in Loop: Header=BB0_4 Depth=1
	mov	x0, x21
	bl	_HEAP_XMAX_IS_EXCL_LOCKED
	cbz	x0, LBB0_30
	b	LBB0_124
LBB0_21:                                ;   in Loop: Header=BB0_4 Depth=1
	cmp	w19, #131
	b.eq	LBB0_30
; %bb.22:                               ;   in Loop: Header=BB0_4 Depth=1
	cmp	w19, #132
	b.eq	LBB0_35
; %bb.23:                               ;   in Loop: Header=BB0_4 Depth=1
	cmp	w19, #133
	b.ne	LBB0_42
; %bb.24:                               ;   in Loop: Header=BB0_4 Depth=1
Lloh27:
	adrp	x8, _HEAP_KEYS_UPDATED@GOTPAGE
Lloh28:
	ldr	x8, [x8, _HEAP_KEYS_UPDATED@GOTPAGEOFF]
Lloh29:
	ldr	w8, [x8]
	tst	w8, w25
	b.ne	LBB0_42
; %bb.25:                               ;   in Loop: Header=BB0_4 Depth=1
	mov	x0, x21
	bl	_HEAP_XMAX_IS_LOCKED_ONLY
	mov	x21, x0
	ldr	w25, [sp, #32]                  ; 4-byte Folded Reload
	ldr	w8, [sp, #24]                   ; 4-byte Folded Reload
	cbz	w8, LBB0_28
; %bb.26:                               ;   in Loop: Header=BB0_4 Depth=1
	cbnz	w21, LBB0_28
; %bb.27:                               ;   in Loop: Header=BB0_4 Depth=1
	bl	_GetCurrentTransactionId
	mov	x3, x0
	add	x2, sp, #96
	mov	x0, x20
	mov	x1, x23
	mov	w4, #133
	bl	_heap_lock_updated_tuple
Lloh30:
	adrp	x8, _TM_Ok@GOTPAGE
Lloh31:
	ldr	x8, [x8, _TM_Ok@GOTPAGEOFF]
Lloh32:
	ldr	x8, [x8]
	cmp	x0, x8
	b.ne	LBB0_93
LBB0_28:                                ;   in Loop: Header=BB0_4 Depth=1
	ldr	x0, [x22]
Lloh33:
	adrp	x8, _BUFFER_LOCK_EXCLUSIVE@GOTPAGE
Lloh34:
	ldr	x8, [x8, _BUFFER_LOCK_EXCLUSIVE@GOTPAGEOFF]
Lloh35:
	ldr	w1, [x8]
	bl	_LockBuffer
	ldr	x0, [x23]
	bl	_HeapTupleHeaderIsOnlyLocked
	cbz	x0, LBB0_67
; %bb.29:                               ;   in Loop: Header=BB0_4 Depth=1
Lloh36:
	adrp	x8, _TM_Ok@GOTPAGE
Lloh37:
	ldr	x8, [x8, _TM_Ok@GOTPAGEOFF]
	ldr	w21, [sp, #36]                  ; 4-byte Folded Reload
	b	LBB0_85
LBB0_30:                                ;   in Loop: Header=BB0_4 Depth=1
	mov	x0, x21
	bl	_HEAP_XMAX_IS_LOCKED_ONLY
	cbz	w0, LBB0_42
; %bb.31:                               ;   in Loop: Header=BB0_4 Depth=1
	mov	x0, x21
	bl	_HEAP_XMAX_IS_EXCL_LOCKED
	ldr	w25, [sp, #32]                  ; 4-byte Folded Reload
	cbnz	x0, LBB0_43
; %bb.32:                               ;   in Loop: Header=BB0_4 Depth=1
	ldr	x0, [x22]
Lloh38:
	adrp	x8, _BUFFER_LOCK_EXCLUSIVE@GOTPAGE
Lloh39:
	ldr	x8, [x8, _BUFFER_LOCK_EXCLUSIVE@GOTPAGEOFF]
Lloh40:
	ldr	w1, [x8]
	bl	_LockBuffer
	ldr	x8, [x23]
	ldr	w0, [x8]
	bl	_HEAP_XMAX_IS_LOCKED_ONLY
	cbz	w0, LBB0_77
; %bb.33:                               ;   in Loop: Header=BB0_4 Depth=1
	ldr	x8, [x23]
	ldr	w0, [x8]
	bl	_HEAP_XMAX_IS_EXCL_LOCKED
	ldr	w21, [sp, #36]                  ; 4-byte Folded Reload
	cbnz	x0, LBB0_68
	b	LBB0_84
LBB0_34:                                ;   in Loop: Header=BB0_4 Depth=1
	mov	x0, x21
	bl	_HEAP_XMAX_IS_EXCL_LOCKED
	cbnz	x0, LBB0_124
LBB0_35:                                ;   in Loop: Header=BB0_4 Depth=1
Lloh41:
	adrp	x8, _HEAP_XMAX_IS_MULTI@GOTPAGE
Lloh42:
	ldr	x8, [x8, _HEAP_XMAX_IS_MULTI@GOTPAGEOFF]
Lloh43:
	ldr	w8, [x8]
	tst	w8, w21
	b.eq	LBB0_37
; %bb.36:                               ;   in Loop: Header=BB0_4 Depth=1
	ldr	x0, [sp, #40]                   ; 8-byte Folded Reload
                                        ; kill: def $w0 killed $w0 killed $x0
	mov	x1, x21
	mov	w2, #132
	mov	x3, #0
	bl	_DoesMultiXactIdConflict
	ldr	w25, [sp, #32]                  ; 4-byte Folded Reload
	cbnz	w0, LBB0_43
	b	LBB0_38
LBB0_37:                                ;   in Loop: Header=BB0_4 Depth=1
	mov	x0, x21
	bl	_HEAP_XMAX_IS_KEYSHR_LOCKED
	ldr	w25, [sp, #32]                  ; 4-byte Folded Reload
	cbz	x0, LBB0_43
LBB0_38:                                ;   in Loop: Header=BB0_4 Depth=1
	ldr	x0, [x22]
Lloh44:
	adrp	x8, _BUFFER_LOCK_EXCLUSIVE@GOTPAGE
Lloh45:
	ldr	x8, [x8, _BUFFER_LOCK_EXCLUSIVE@GOTPAGEOFF]
Lloh46:
	ldr	w1, [x8]
	bl	_LockBuffer
	ldr	x8, [x23]
	ldr	w0, [x8]
	mov	x1, x21
	bl	_xmax_infomask_changed
	cbnz	x0, LBB0_77
; %bb.39:                               ;   in Loop: Header=BB0_4 Depth=1
	ldr	x0, [x23]
	bl	_HeapTupleHeaderGetRawXmax
	ldr	x1, [sp, #40]                   ; 8-byte Folded Reload
	bl	_TransactionIdEquals
Lloh47:
	adrp	x8, _TM_Ok@GOTPAGE
Lloh48:
	ldr	x8, [x8, _TM_Ok@GOTPAGEOFF]
	ldr	w21, [sp, #36]                  ; 4-byte Folded Reload
	cbnz	w0, LBB0_85
	b	LBB0_68
LBB0_40:                                ;   in Loop: Header=BB0_4 Depth=1
	mov	x0, x21
	bl	_HEAP_XMAX_IS_EXCL_LOCKED
	cbz	x0, LBB0_42
; %bb.41:                               ;   in Loop: Header=BB0_4 Depth=1
Lloh49:
	adrp	x8, _HEAP_KEYS_UPDATED@GOTPAGE
Lloh50:
	ldr	x8, [x8, _HEAP_KEYS_UPDATED@GOTPAGEOFF]
Lloh51:
	ldr	w8, [x8]
	tst	w8, w25
	ldr	w25, [sp, #32]                  ; 4-byte Folded Reload
	b.eq	LBB0_43
	b	LBB0_124
LBB0_42:                                ;   in Loop: Header=BB0_4 Depth=1
	ldr	w25, [sp, #32]                  ; 4-byte Folded Reload
LBB0_43:                                ;   in Loop: Header=BB0_4 Depth=1
Lloh52:
	adrp	x8, _HEAP_XMAX_IS_MULTI@GOTPAGE
Lloh53:
	ldr	x8, [x8, _HEAP_XMAX_IS_MULTI@GOTPAGEOFF]
Lloh54:
	ldr	w8, [x8]
	tst	w8, w21
	b.eq	LBB0_56
LBB0_44:                                ;   in Loop: Header=BB0_4 Depth=1
Lloh55:
	adrp	x8, _TM_Updated@GOTPAGE
Lloh56:
	ldr	x8, [x8, _TM_Updated@GOTPAGEOFF]
Lloh57:
	ldr	x8, [x8]
Lloh58:
	adrp	x9, _TM_Deleted@GOTPAGE
Lloh59:
	ldr	x9, [x9, _TM_Deleted@GOTPAGEOFF]
Lloh60:
	ldr	x9, [x9]
	cmp	x28, x8
	ccmp	x28, x9, #4, ne
	b.ne	LBB0_47
LBB0_45:                                ;   in Loop: Header=BB0_4 Depth=1
	ldr	x0, [x22]
Lloh61:
	adrp	x8, _BUFFER_LOCK_EXCLUSIVE@GOTPAGE
Lloh62:
	ldr	x8, [x8, _BUFFER_LOCK_EXCLUSIVE@GOTPAGEOFF]
Lloh63:
	ldr	w1, [x8]
	bl	_LockBuffer
LBB0_46:                                ;   in Loop: Header=BB0_4 Depth=1
	ldr	w21, [sp, #36]                  ; 4-byte Folded Reload
	b	LBB0_86
LBB0_47:                                ;   in Loop: Header=BB0_4 Depth=1
	ldr	w8, [sp, #52]                   ; 4-byte Folded Reload
	cbnz	w8, LBB0_49
; %bb.48:                               ;   in Loop: Header=BB0_4 Depth=1
	add	x4, sp, #84
	mov	x0, x20
	mov	x1, x26
	mov	x2, x19
	ldr	w3, [sp, #28]                   ; 4-byte Folded Reload
	bl	_heap_acquire_tuplock
	cbz	w0, LBB0_64
LBB0_49:                                ;   in Loop: Header=BB0_4 Depth=1
Lloh64:
	adrp	x8, _HEAP_XMAX_IS_MULTI@GOTPAGE
Lloh65:
	ldr	x8, [x8, _HEAP_XMAX_IS_MULTI@GOTPAGEOFF]
Lloh66:
	ldr	w8, [x8]
	tst	w8, w21
	b.eq	LBB0_60
; %bb.50:                               ;   in Loop: Header=BB0_4 Depth=1
	mov	x0, x19
	mov	w1, #0
	bl	_get_mxact_status_for_lock
	mov	x28, x0
Lloh67:
	adrp	x8, _MultiXactStatusNoKeyUpdate@GOTPAGE
Lloh68:
	ldr	x8, [x8, _MultiXactStatusNoKeyUpdate@GOTPAGEOFF]
Lloh69:
	ldr	x8, [x8]
	cmp	x0, x8
	b.lt	LBB0_52
; %bb.51:                               ;   in Loop: Header=BB0_4 Depth=1
Lloh70:
	adrp	x8, _ERROR@GOTPAGE
Lloh71:
	ldr	x8, [x8, _ERROR@GOTPAGEOFF]
Lloh72:
	ldr	w0, [x8]
Lloh73:
	adrp	x1, l_.str@PAGE
Lloh74:
	add	x1, x1, l_.str@PAGEOFF
	bl	_elog
LBB0_52:                                ;   in Loop: Header=BB0_4 Depth=1
	ldr	w8, [sp, #28]                   ; 4-byte Folded Reload
	cmp	w8, #128
	b.eq	LBB0_65
; %bb.53:                               ;   in Loop: Header=BB0_4 Depth=1
	cmp	w8, #129
	b.eq	LBB0_66
; %bb.54:                               ;   in Loop: Header=BB0_4 Depth=1
	cmp	w8, #130
	b.ne	LBB0_73
; %bb.55:                               ;   in Loop: Header=BB0_4 Depth=1
Lloh75:
	adrp	x8, _XLTW_Lock@GOTPAGE
Lloh76:
	ldr	x8, [x8, _XLTW_Lock@GOTPAGEOFF]
Lloh77:
	ldr	w5, [x8]
	ldr	x0, [sp, #40]                   ; 8-byte Folded Reload
                                        ; kill: def $w0 killed $w0 killed $x0
	mov	x1, x28
	mov	x2, x21
	mov	x3, x20
	mov	x4, x26
	mov	x6, #0
	bl	_MultiXactIdWait
	b	LBB0_73
LBB0_56:                                ;   in Loop: Header=BB0_4 Depth=1
	ldr	x0, [sp, #40]                   ; 8-byte Folded Reload
	bl	_TransactionIdIsCurrentTransactionId
	cbz	x0, LBB0_44
; %bb.57:                               ;   in Loop: Header=BB0_4 Depth=1
	ldr	x0, [x22]
Lloh78:
	adrp	x8, _BUFFER_LOCK_EXCLUSIVE@GOTPAGE
Lloh79:
	ldr	x8, [x8, _BUFFER_LOCK_EXCLUSIVE@GOTPAGEOFF]
Lloh80:
	ldr	w1, [x8]
	bl	_LockBuffer
	ldr	x8, [x23]
	ldr	w0, [x8]
	mov	x1, x21
	bl	_xmax_infomask_changed
	cbnz	x0, LBB0_77
; %bb.58:                               ;   in Loop: Header=BB0_4 Depth=1
	ldr	x0, [x23]
	bl	_HeapTupleHeaderGetRawXmax
	ldr	x1, [sp, #40]                   ; 8-byte Folded Reload
	bl	_TransactionIdEquals
	ldr	w21, [sp, #36]                  ; 4-byte Folded Reload
	cbz	w0, LBB0_68
; %bb.59:                               ;   in Loop: Header=BB0_4 Depth=1
	ldr	x8, [x23]
	ldr	w0, [x8]
	bl	_HEAP_XMAX_IS_LOCKED_ONLY
	bl	_Assert
	b	LBB0_84
LBB0_60:                                ;   in Loop: Header=BB0_4 Depth=1
	ldr	w8, [sp, #28]                   ; 4-byte Folded Reload
	cmp	w8, #128
	b.eq	LBB0_69
; %bb.61:                               ;   in Loop: Header=BB0_4 Depth=1
	cmp	w8, #129
	b.eq	LBB0_71
; %bb.62:                               ;   in Loop: Header=BB0_4 Depth=1
	cmp	w8, #130
	b.ne	LBB0_73
; %bb.63:                               ;   in Loop: Header=BB0_4 Depth=1
Lloh81:
	adrp	x8, _XLTW_Lock@GOTPAGE
Lloh82:
	ldr	x8, [x8, _XLTW_Lock@GOTPAGEOFF]
Lloh83:
	ldr	w3, [x8]
	ldr	x0, [sp, #40]                   ; 8-byte Folded Reload
	mov	x1, x20
	mov	x2, x26
	bl	_XactLockTableWait
	b	LBB0_73
LBB0_64:                                ;   in Loop: Header=BB0_4 Depth=1
Lloh84:
	adrp	x8, _TM_WouldBlock@GOTPAGE
Lloh85:
	ldr	x8, [x8, _TM_WouldBlock@GOTPAGEOFF]
Lloh86:
	ldr	x28, [x8]
	ldr	x0, [x22]
Lloh87:
	adrp	x8, _BUFFER_LOCK_EXCLUSIVE@GOTPAGE
Lloh88:
	ldr	x8, [x8, _BUFFER_LOCK_EXCLUSIVE@GOTPAGEOFF]
Lloh89:
	ldr	w1, [x8]
	bl	_LockBuffer
	str	wzr, [sp, #52]                  ; 4-byte Folded Spill
	b	LBB0_46
LBB0_65:                                ;   in Loop: Header=BB0_4 Depth=1
	ldr	x0, [sp, #40]                   ; 8-byte Folded Reload
                                        ; kill: def $w0 killed $w0 killed $x0
	mov	x1, x28
	mov	x2, x21
	mov	x3, x20
	mov	x4, #0
	bl	_ConditionalMultiXactIdWait
	cbnz	w0, LBB0_73
	b	LBB0_70
LBB0_66:                                ;   in Loop: Header=BB0_4 Depth=1
	ldr	x0, [sp, #40]                   ; 8-byte Folded Reload
                                        ; kill: def $w0 killed $w0 killed $x0
	mov	x1, x28
	mov	x2, x21
	mov	x3, x20
	mov	x4, #0
	bl	_ConditionalMultiXactIdWait
	cbnz	w0, LBB0_73
	b	LBB0_72
LBB0_67:                                ;   in Loop: Header=BB0_4 Depth=1
	ldr	x8, [x23]
	ldr	w8, [x8, #4]
Lloh90:
	adrp	x9, _HEAP_KEYS_UPDATED@GOTPAGE
Lloh91:
	ldr	x9, [x9, _HEAP_KEYS_UPDATED@GOTPAGEOFF]
Lloh92:
	ldr	w9, [x9]
	and	w9, w9, w8
Lloh93:
	adrp	x8, _TM_Ok@GOTPAGE
Lloh94:
	ldr	x8, [x8, _TM_Ok@GOTPAGEOFF]
	orr	w9, w9, w21
	ldr	w21, [sp, #36]                  ; 4-byte Folded Reload
	cbz	w9, LBB0_85
LBB0_68:                                ;   in Loop: Header=BB0_4 Depth=1
	mov	w24, #0
	b	LBB0_91
LBB0_69:                                ;   in Loop: Header=BB0_4 Depth=1
	ldr	x0, [sp, #40]                   ; 8-byte Folded Reload
	bl	_ConditionalXactLockTableWait
	cbnz	w0, LBB0_73
LBB0_70:                                ;   in Loop: Header=BB0_4 Depth=1
Lloh95:
	adrp	x8, _TM_WouldBlock@GOTPAGE
Lloh96:
	ldr	x8, [x8, _TM_WouldBlock@GOTPAGEOFF]
Lloh97:
	ldr	x28, [x8]
	b	LBB0_45
LBB0_71:                                ;   in Loop: Header=BB0_4 Depth=1
	ldr	x0, [sp, #40]                   ; 8-byte Folded Reload
	bl	_ConditionalXactLockTableWait
	cbnz	w0, LBB0_73
LBB0_72:                                ;   in Loop: Header=BB0_4 Depth=1
Lloh98:
	adrp	x8, _ERROR@GOTPAGE
Lloh99:
	ldr	x8, [x8, _ERROR@GOTPAGEOFF]
Lloh100:
	ldr	w28, [x8]
Lloh101:
	adrp	x8, _ERRCODE_LOCK_NOT_AVAILABLE@GOTPAGE
Lloh102:
	ldr	x8, [x8, _ERRCODE_LOCK_NOT_AVAILABLE@GOTPAGEOFF]
Lloh103:
	ldr	w0, [x8]
	bl	_errcode
	mov	x0, x20
	bl	_RelationGetRelationName
	mov	x1, x0
Lloh104:
	adrp	x0, l_.str.1@PAGE
Lloh105:
	add	x0, x0, l_.str.1@PAGEOFF
	bl	_errmsg
	mov	x1, x0
	mov	x0, x28
	bl	_ereport
LBB0_73:                                ;   in Loop: Header=BB0_4 Depth=1
	ldr	w8, [sp, #24]                   ; 4-byte Folded Reload
	cbz	w8, LBB0_76
; %bb.74:                               ;   in Loop: Header=BB0_4 Depth=1
	mov	x0, x21
	bl	_HEAP_XMAX_IS_LOCKED_ONLY
	cbnz	w0, LBB0_76
; %bb.75:                               ;   in Loop: Header=BB0_4 Depth=1
	bl	_GetCurrentTransactionId
	mov	x3, x0
	add	x2, sp, #96
	mov	x0, x20
	mov	x1, x23
	mov	x4, x19
	bl	_heap_lock_updated_tuple
Lloh106:
	adrp	x8, _TM_Ok@GOTPAGE
Lloh107:
	ldr	x8, [x8, _TM_Ok@GOTPAGEOFF]
Lloh108:
	ldr	x8, [x8]
	cmp	x0, x8
	b.ne	LBB0_92
LBB0_76:                                ;   in Loop: Header=BB0_4 Depth=1
	ldr	x0, [x22]
Lloh109:
	adrp	x8, _BUFFER_LOCK_EXCLUSIVE@GOTPAGE
Lloh110:
	ldr	x8, [x8, _BUFFER_LOCK_EXCLUSIVE@GOTPAGEOFF]
Lloh111:
	ldr	w1, [x8]
	bl	_LockBuffer
	ldr	x8, [x23]
	ldr	w0, [x8]
	mov	x1, x21
	bl	_xmax_infomask_changed
	cbz	x0, LBB0_78
LBB0_77:                                ;   in Loop: Header=BB0_4 Depth=1
	ldr	w21, [sp, #36]                  ; 4-byte Folded Reload
	mov	w24, #0
	b	LBB0_91
LBB0_78:                                ;   in Loop: Header=BB0_4 Depth=1
	ldr	x0, [x23]
	bl	_HeapTupleHeaderGetRawXmax
	ldr	x1, [sp, #40]                   ; 8-byte Folded Reload
	bl	_TransactionIdEquals
	cbz	w0, LBB0_77
; %bb.79:                               ;   in Loop: Header=BB0_4 Depth=1
Lloh112:
	adrp	x8, _HEAP_XMAX_IS_MULTI@GOTPAGE
Lloh113:
	ldr	x8, [x8, _HEAP_XMAX_IS_MULTI@GOTPAGEOFF]
Lloh114:
	ldr	w8, [x8]
	tst	w8, w21
	b.ne	LBB0_81
; %bb.80:                               ;   in Loop: Header=BB0_4 Depth=1
	ldr	x0, [x23]
	ldr	x1, [x22]
	ldr	x2, [sp, #40]                   ; 8-byte Folded Reload
	bl	_UpdateXmaxHintBits
LBB0_81:                                ;   in Loop: Header=BB0_4 Depth=1
	ldr	x8, [x23]
	ldr	w0, [x8]
Lloh115:
	adrp	x8, _HEAP_XMAX_INVALID@GOTPAGE
Lloh116:
	ldr	x8, [x8, _HEAP_XMAX_INVALID@GOTPAGEOFF]
Lloh117:
	ldr	w8, [x8]
	tst	w8, w0
	ldr	w21, [sp, #36]                  ; 4-byte Folded Reload
	b.ne	LBB0_84
; %bb.82:                               ;   in Loop: Header=BB0_4 Depth=1
	bl	_HEAP_XMAX_IS_LOCKED_ONLY
	cbnz	w0, LBB0_84
; %bb.83:                               ;   in Loop: Header=BB0_4 Depth=1
	ldr	x0, [x23]
	bl	_HeapTupleHeaderIsOnlyLocked
	cbz	x0, LBB0_94
LBB0_84:                                ;   in Loop: Header=BB0_4 Depth=1
Lloh118:
	adrp	x8, _TM_Ok@GOTPAGE
Lloh119:
	ldr	x8, [x8, _TM_Ok@GOTPAGEOFF]
LBB0_85:                                ;   in Loop: Header=BB0_4 Depth=1
	ldr	x28, [x8]
LBB0_86:                                ;   in Loop: Header=BB0_4 Depth=1
	mov	w24, #0
LBB0_87:                                ;   in Loop: Header=BB0_4 Depth=1
Lloh120:
	adrp	x8, _TM_Ok@GOTPAGE
Lloh121:
	ldr	x8, [x8, _TM_Ok@GOTPAGEOFF]
Lloh122:
	ldr	x8, [x8]
	cmp	x28, x8
	b.ne	LBB0_104
; %bb.88:                               ;   in Loop: Header=BB0_4 Depth=1
	ldur	x8, [x29, #-88]
Lloh123:
	adrp	x9, _InvalidBuffer@GOTPAGE
Lloh124:
	ldr	x9, [x9, _InvalidBuffer@GOTPAGEOFF]
Lloh125:
	ldr	x9, [x9]
	cmp	x8, x9
	b.ne	LBB0_98
; %bb.89:                               ;   in Loop: Header=BB0_4 Depth=1
	mov	x0, x25
	bl	_PageIsAllVisible
	cbz	x0, LBB0_98
; %bb.90:                               ;   in Loop: Header=BB0_4 Depth=1
	ldr	x0, [x22]
	ldr	w1, [x27]
	bl	_LockBuffer
	sub	x2, x29, #88
	mov	x0, x20
	mov	x1, x21
	bl	_visibilitymap_pin
	ldr	x0, [x22]
Lloh126:
	adrp	x8, _BUFFER_LOCK_EXCLUSIVE@GOTPAGE
Lloh127:
	ldr	x8, [x8, _BUFFER_LOCK_EXCLUSIVE@GOTPAGEOFF]
Lloh128:
	ldr	w1, [x8]
	bl	_LockBuffer
LBB0_91:                                ;   in Loop: Header=BB0_4 Depth=1
	ldr	x2, [x22]
	mov	x0, x23
	ldr	w1, [sp, #48]                   ; 4-byte Folded Reload
	bl	_HeapTupleSatisfiesUpdate
	mov	x28, x0
Lloh129:
	adrp	x8, _TM_Invisible@GOTPAGE
Lloh130:
	ldr	x8, [x8, _TM_Invisible@GOTPAGEOFF]
Lloh131:
	ldr	x8, [x8]
	cmp	x0, x8
	b.ne	LBB0_4
	b	LBB0_114
LBB0_92:                                ;   in Loop: Header=BB0_4 Depth=1
	mov	x28, x0
	b	LBB0_45
LBB0_93:                                ;   in Loop: Header=BB0_4 Depth=1
	mov	x28, x0
	ldr	x0, [x22]
Lloh132:
	adrp	x8, _BUFFER_LOCK_EXCLUSIVE@GOTPAGE
Lloh133:
	ldr	x8, [x8, _BUFFER_LOCK_EXCLUSIVE@GOTPAGEOFF]
Lloh134:
	ldr	w1, [x8]
	bl	_LockBuffer
	mov	w24, #0
	ldr	w21, [sp, #36]                  ; 4-byte Folded Reload
	b	LBB0_87
LBB0_94:                                ;   in Loop: Header=BB0_4 Depth=1
	ldr	x8, [x23]
	add	x1, x8, #8
	mov	x0, x26
	bl	_ItemPointerEquals
	cbz	w0, LBB0_96
; %bb.95:                               ;   in Loop: Header=BB0_4 Depth=1
	ldr	x0, [x23]
	bl	_HeapTupleHeaderIndicatesMovedPartitions
	cmp	x0, #0
Lloh135:
	adrp	x8, _TM_Updated@GOTPAGE
Lloh136:
	ldr	x8, [x8, _TM_Updated@GOTPAGEOFF]
Lloh137:
	adrp	x9, _TM_Deleted@GOTPAGE
Lloh138:
	ldr	x9, [x9, _TM_Deleted@GOTPAGEOFF]
	csel	x8, x9, x8, eq
	b	LBB0_85
LBB0_96:                                ;   in Loop: Header=BB0_4 Depth=1
Lloh139:
	adrp	x8, _TM_Updated@GOTPAGE
Lloh140:
	ldr	x8, [x8, _TM_Updated@GOTPAGEOFF]
	b	LBB0_85
LBB0_97:
	ldr	x0, [sp, #56]
	bl	_pfree
Lloh141:
	adrp	x8, _TM_Ok@GOTPAGE
Lloh142:
	ldr	x8, [x8, _TM_Ok@GOTPAGEOFF]
Lloh143:
	ldr	x28, [x8]
	mov	x20, x26
	mov	x26, x27
	b	LBB0_115
LBB0_98:
	ldr	x0, [x23]
	bl	_HeapTupleHeaderGetRawXmax
	mov	x21, x0
	ldr	x8, [x23]
	ldr	w25, [x8]
	bl	_MultiXactIdSetOldestMember
	ldr	x8, [x23]
	ldr	w27, [x8, #4]
	bl	_GetCurrentTransactionId
	mov	x3, x0
	add	x8, sp, #88
	str	x8, [sp]
	add	x6, sp, #96
	add	x7, sp, #92
	mov	x0, x21
	mov	x1, x25
	mov	x2, x27
	mov	x4, x19
	mov	w5, #0
	bl	_compute_new_xmax_infomask
	bl	_START_CRIT_SECTION
Lloh144:
	adrp	x8, _HEAP_XMAX_BITS@GOTPAGE
Lloh145:
	ldr	x8, [x8, _HEAP_XMAX_BITS@GOTPAGEOFF]
Lloh146:
	ldr	w8, [x8]
	ldr	x9, [x23]
	ldp	w10, w11, [x9]
	bic	w8, w10, w8
	str	w8, [x9]
Lloh147:
	adrp	x10, _HEAP_KEYS_UPDATED@GOTPAGE
Lloh148:
	ldr	x10, [x10, _HEAP_KEYS_UPDATED@GOTPAGEOFF]
Lloh149:
	ldr	w10, [x10]
	bic	w10, w11, w10
	ldr	w11, [sp, #92]
	orr	w8, w11, w8
	str	w8, [x9]
	ldp	w8, w0, [sp, #88]
	orr	w8, w8, w10
	str	w8, [x9, #4]
	bl	_HEAP_XMAX_IS_LOCKED_ONLY
	cbz	w0, LBB0_100
; %bb.99:
	ldr	x0, [x23]
	bl	_HeapTupleHeaderClearHotUpdated
LBB0_100:
	ldr	x0, [x23]
	ldr	x1, [sp, #96]
	bl	_HeapTupleHeaderSetXmax
	ldr	w0, [sp, #92]
	bl	_HEAP_XMAX_IS_LOCKED_ONLY
	ldr	w24, [sp, #32]                  ; 4-byte Folded Reload
	cbz	w0, LBB0_102
; %bb.101:
	ldr	w8, [x23, #8]
	ldr	x9, [x23]
	str	w8, [x9, #8]
LBB0_102:
	mov	x0, x24
	bl	_PageIsAllVisible
Lloh150:
	adrp	x27, _BUFFER_LOCK_UNLOCK@GOTPAGE
Lloh151:
	ldr	x27, [x27, _BUFFER_LOCK_UNLOCK@GOTPAGEOFF]
	ldr	w1, [sp, #36]                   ; 4-byte Folded Reload
	cbz	x0, LBB0_106
; %bb.103:
	ldur	x2, [x29, #-88]
Lloh152:
	adrp	x8, _VISIBILITYMAP_ALL_FROZEN@GOTPAGE
Lloh153:
	ldr	x8, [x8, _VISIBILITYMAP_ALL_FROZEN@GOTPAGEOFF]
Lloh154:
	ldr	w3, [x8]
	mov	x0, x20
	bl	_visibilitymap_clear
	cmp	x0, #0
	cset	w21, eq
	b	LBB0_107
LBB0_104:
Lloh155:
	adrp	x21, _TM_SelfModified@GOTPAGE
Lloh156:
	ldr	x21, [x21, _TM_SelfModified@GOTPAGEOFF]
	ldr	x8, [x21]
	cmp	x28, x8
Lloh157:
	adrp	x24, _TM_Updated@GOTPAGE
Lloh158:
	ldr	x24, [x24, _TM_Updated@GOTPAGEOFF]
	ldr	x8, [x24]
	ccmp	x28, x8, #4, ne
Lloh159:
	adrp	x8, _TM_Deleted@GOTPAGE
Lloh160:
	ldr	x8, [x8, _TM_Deleted@GOTPAGEOFF]
Lloh161:
	ldr	x8, [x8]
	ccmp	x28, x8, #4, ne
Lloh162:
	adrp	x8, _TM_WouldBlock@GOTPAGE
Lloh163:
	ldr	x8, [x8, _TM_WouldBlock@GOTPAGEOFF]
Lloh164:
	ldr	x8, [x8]
	ccmp	x28, x8, #4, ne
	cset	w0, eq
	bl	_Assert
	ldr	x8, [x23]
	ldr	w8, [x8]
Lloh165:
	adrp	x9, _HEAP_XMAX_INVALID@GOTPAGE
Lloh166:
	ldr	x9, [x9, _HEAP_XMAX_INVALID@GOTPAGEOFF]
Lloh167:
	ldr	w9, [x9]
	tst	w9, w8
	cset	w0, eq
	bl	_Assert
	ldr	x8, [x24]
	cmp	x28, x8
	b.ne	LBB0_110
; %bb.105:
	ldr	x8, [x23]
	add	x1, x8, #8
	mov	x0, x26
	bl	_ItemPointerEquals
	cmp	w0, #0
	cset	w0, eq
	b	LBB0_111
LBB0_106:
	mov	w21, #1
LBB0_107:
	ldr	x0, [x22]
	bl	_MarkBufferDirty
	mov	x0, x20
	bl	_RelationNeedsWAL
	cbz	x0, LBB0_109
; %bb.108:
	bl	_XLogBeginInsert
	ldr	x1, [x22]
Lloh168:
	adrp	x8, _REGBUF_STANDARD@GOTPAGE
Lloh169:
	ldr	x8, [x8, _REGBUF_STANDARD@GOTPAGEOFF]
Lloh170:
	ldr	w2, [x8]
	mov	w0, #0
	bl	_XLogRegisterBuffer
	mov	x0, x26
	bl	_ItemPointerGetOffsetNumber
	str	w0, [sp, #72]
	ldr	x8, [sp, #96]
	str	x8, [sp, #64]
	ldr	w0, [sp, #92]
	ldr	x8, [x23]
	ldr	w1, [x8, #4]
	bl	_compute_infobits
Lloh171:
	adrp	x8, _XLH_LOCK_ALL_FROZEN_CLEARED@GOTPAGE
Lloh172:
	ldr	x8, [x8, _XLH_LOCK_ALL_FROZEN_CLEARED@GOTPAGEOFF]
Lloh173:
	ldr	w8, [x8]
	cmp	w21, #0
	csel	w8, wzr, w8, ne
	stp	w8, w0, [sp, #56]
Lloh174:
	adrp	x8, _SizeOfHeapLock@GOTPAGE
Lloh175:
	ldr	x8, [x8, _SizeOfHeapLock@GOTPAGEOFF]
Lloh176:
	ldr	w1, [x8]
	add	x0, sp, #56
	bl	_XLogRegisterData
Lloh177:
	adrp	x8, _RM_HEAP_ID@GOTPAGE
Lloh178:
	ldr	x8, [x8, _RM_HEAP_ID@GOTPAGEOFF]
Lloh179:
	ldr	w0, [x8]
Lloh180:
	adrp	x8, _XLOG_HEAP_LOCK@GOTPAGE
Lloh181:
	ldr	x8, [x8, _XLOG_HEAP_LOCK@GOTPAGEOFF]
Lloh182:
	ldr	w1, [x8]
	bl	_XLogInsert
	mov	x1, x0
	mov	x0, x24
	bl	_PageSetLSN
LBB0_109:
	bl	_END_CRIT_SECTION
Lloh183:
	adrp	x8, _TM_Ok@GOTPAGE
Lloh184:
	ldr	x8, [x8, _TM_Ok@GOTPAGEOFF]
Lloh185:
	ldr	x28, [x8]
	b	LBB0_114
LBB0_110:
	mov	w0, #1
LBB0_111:
	ldr	x24, [sp, #16]                  ; 8-byte Folded Reload
	bl	_Assert
	ldr	x0, [x23]
	ldr	w8, [x0, #8]
	str	w8, [x24, #8]
	bl	_HeapTupleHeaderGetUpdateXid
	str	w0, [x24, #4]
	ldr	x8, [x21]
	cmp	x28, x8
	b.ne	LBB0_113
; %bb.112:
	ldr	x0, [x23]
	bl	_HeapTupleHeaderGetCmax
	str	w0, [x24]
	b	LBB0_114
LBB0_113:
Lloh186:
	adrp	x8, _InvalidCommandId@GOTPAGE
Lloh187:
	ldr	x8, [x8, _InvalidCommandId@GOTPAGEOFF]
Lloh188:
	ldr	w8, [x8]
	str	w8, [x24]
LBB0_114:
	ldr	x0, [x22]
	ldr	w1, [x27]
	bl	_LockBuffer
LBB0_115:
	ldur	x0, [x29, #-88]
	bl	_BufferIsValid
	cbz	x0, LBB0_117
; %bb.116:
	ldur	x0, [x29, #-88]
	bl	_ReleaseBuffer
LBB0_117:
	ldr	w8, [sp, #84]
	cbz	w8, LBB0_119
; %bb.118:
	mov	x0, x20
	mov	x1, x26
	mov	x2, x19
	bl	_UnlockTupleTuplock
LBB0_119:
	mov	x0, x28
	ldp	x29, x30, [sp, #192]            ; 16-byte Folded Reload
	ldp	x20, x19, [sp, #176]            ; 16-byte Folded Reload
	ldp	x22, x21, [sp, #160]            ; 16-byte Folded Reload
	ldp	x24, x23, [sp, #144]            ; 16-byte Folded Reload
	ldp	x26, x25, [sp, #128]            ; 16-byte Folded Reload
	ldp	x28, x27, [sp, #112]            ; 16-byte Folded Reload
	add	sp, sp, #208
	ret
LBB0_120:
	mov	x0, x21
	bl	_HEAP_XMAX_IS_KEYSHR_LOCKED
	cbnz	x0, LBB0_122
; %bb.121:
	mov	x0, x21
	bl	_HEAP_XMAX_IS_SHR_LOCKED
	cbz	w0, LBB0_125
LBB0_122:
	mov	w0, #1
LBB0_123:
	bl	_Assert
LBB0_124:
Lloh189:
	adrp	x8, _TM_Ok@GOTPAGE
Lloh190:
	ldr	x8, [x8, _TM_Ok@GOTPAGEOFF]
Lloh191:
	ldr	x28, [x8]
	b	LBB0_115
LBB0_125:
	mov	x0, x21
	bl	_HEAP_XMAX_IS_EXCL_LOCKED
	cmp	x0, #0
	cset	w0, ne
	b	LBB0_123
	.loh AdrpLdrGotLdr	Lloh0, Lloh1, Lloh2
	.loh AdrpLdrGot	Lloh9, Lloh10
	.loh AdrpLdrGotLdr	Lloh6, Lloh7, Lloh8
	.loh AdrpLdrGotLdr	Lloh3, Lloh4, Lloh5
	.loh AdrpLdrGotLdr	Lloh17, Lloh18, Lloh19
	.loh AdrpLdrGotLdr	Lloh14, Lloh15, Lloh16
	.loh AdrpLdrGotLdr	Lloh11, Lloh12, Lloh13
	.loh AdrpLdrGotLdr	Lloh20, Lloh21, Lloh22
	.loh AdrpLdrGot	Lloh23, Lloh24
	.loh AdrpAdd	Lloh25, Lloh26
	.loh AdrpLdrGotLdr	Lloh27, Lloh28, Lloh29
	.loh AdrpLdrGotLdr	Lloh30, Lloh31, Lloh32
	.loh AdrpLdrGotLdr	Lloh33, Lloh34, Lloh35
	.loh AdrpLdrGot	Lloh36, Lloh37
	.loh AdrpLdrGotLdr	Lloh38, Lloh39, Lloh40
	.loh AdrpLdrGotLdr	Lloh41, Lloh42, Lloh43
	.loh AdrpLdrGotLdr	Lloh44, Lloh45, Lloh46
	.loh AdrpLdrGot	Lloh47, Lloh48
	.loh AdrpLdrGotLdr	Lloh49, Lloh50, Lloh51
	.loh AdrpLdrGotLdr	Lloh52, Lloh53, Lloh54
	.loh AdrpLdrGotLdr	Lloh58, Lloh59, Lloh60
	.loh AdrpLdrGotLdr	Lloh55, Lloh56, Lloh57
	.loh AdrpLdrGotLdr	Lloh61, Lloh62, Lloh63
	.loh AdrpLdrGotLdr	Lloh64, Lloh65, Lloh66
	.loh AdrpLdrGotLdr	Lloh67, Lloh68, Lloh69
	.loh AdrpAdd	Lloh73, Lloh74
	.loh AdrpLdrGotLdr	Lloh70, Lloh71, Lloh72
	.loh AdrpLdrGotLdr	Lloh75, Lloh76, Lloh77
	.loh AdrpLdrGotLdr	Lloh78, Lloh79, Lloh80
	.loh AdrpLdrGotLdr	Lloh81, Lloh82, Lloh83
	.loh AdrpLdrGotLdr	Lloh87, Lloh88, Lloh89
	.loh AdrpLdrGotLdr	Lloh84, Lloh85, Lloh86
	.loh AdrpLdrGot	Lloh93, Lloh94
	.loh AdrpLdrGotLdr	Lloh90, Lloh91, Lloh92
	.loh AdrpLdrGotLdr	Lloh95, Lloh96, Lloh97
	.loh AdrpAdd	Lloh104, Lloh105
	.loh AdrpLdrGotLdr	Lloh101, Lloh102, Lloh103
	.loh AdrpLdrGotLdr	Lloh98, Lloh99, Lloh100
	.loh AdrpLdrGotLdr	Lloh106, Lloh107, Lloh108
	.loh AdrpLdrGotLdr	Lloh109, Lloh110, Lloh111
	.loh AdrpLdrGotLdr	Lloh112, Lloh113, Lloh114
	.loh AdrpLdrGotLdr	Lloh115, Lloh116, Lloh117
	.loh AdrpLdrGot	Lloh118, Lloh119
	.loh AdrpLdrGotLdr	Lloh120, Lloh121, Lloh122
	.loh AdrpLdrGotLdr	Lloh123, Lloh124, Lloh125
	.loh AdrpLdrGotLdr	Lloh126, Lloh127, Lloh128
	.loh AdrpLdrGotLdr	Lloh129, Lloh130, Lloh131
	.loh AdrpLdrGotLdr	Lloh132, Lloh133, Lloh134
	.loh AdrpLdrGot	Lloh137, Lloh138
	.loh AdrpLdrGot	Lloh135, Lloh136
	.loh AdrpLdrGot	Lloh139, Lloh140
	.loh AdrpLdrGotLdr	Lloh141, Lloh142, Lloh143
	.loh AdrpLdrGotLdr	Lloh147, Lloh148, Lloh149
	.loh AdrpLdrGotLdr	Lloh144, Lloh145, Lloh146
	.loh AdrpLdrGot	Lloh150, Lloh151
	.loh AdrpLdrGotLdr	Lloh152, Lloh153, Lloh154
	.loh AdrpLdrGotLdr	Lloh165, Lloh166, Lloh167
	.loh AdrpLdrGotLdr	Lloh162, Lloh163, Lloh164
	.loh AdrpLdrGotLdr	Lloh159, Lloh160, Lloh161
	.loh AdrpLdrGot	Lloh157, Lloh158
	.loh AdrpLdrGot	Lloh155, Lloh156
	.loh AdrpLdrGotLdr	Lloh180, Lloh181, Lloh182
	.loh AdrpLdrGotLdr	Lloh177, Lloh178, Lloh179
	.loh AdrpLdrGotLdr	Lloh174, Lloh175, Lloh176
	.loh AdrpLdrGotLdr	Lloh171, Lloh172, Lloh173
	.loh AdrpLdrGotLdr	Lloh168, Lloh169, Lloh170
	.loh AdrpLdrGotLdr	Lloh183, Lloh184, Lloh185
	.loh AdrpLdrGotLdr	Lloh186, Lloh187, Lloh188
	.loh AdrpLdrGotLdr	Lloh189, Lloh190, Lloh191
	.cfi_endproc
	.section	__TEXT,__const
	.p2align	1
lJTI0_0:
	.short	(LBB0_19-LBB0_19)>>2
	.short	(LBB0_34-LBB0_19)>>2
	.short	(LBB0_120-LBB0_19)>>2
	.short	(LBB0_40-LBB0_19)>>2
                                        ; -- End function
	.comm	_InvalidBuffer,8,3              ; @InvalidBuffer
	.comm	_BUFFER_LOCK_EXCLUSIVE,4,2      ; @BUFFER_LOCK_EXCLUSIVE
	.comm	_TM_Invisible,8,3               ; @TM_Invisible
	.comm	_TM_BeingModified,8,3           ; @TM_BeingModified
	.comm	_TM_Updated,8,3                 ; @TM_Updated
	.comm	_TM_Deleted,8,3                 ; @TM_Deleted
	.comm	_BUFFER_LOCK_UNLOCK,4,2         ; @BUFFER_LOCK_UNLOCK
	.comm	_HEAP_XMAX_IS_MULTI,4,2         ; @HEAP_XMAX_IS_MULTI
	.comm	_TM_Ok,8,3                      ; @TM_Ok
	.comm	_HEAP_KEYS_UPDATED,4,2          ; @HEAP_KEYS_UPDATED
	.comm	_TM_WouldBlock,8,3              ; @TM_WouldBlock
	.comm	_MultiXactStatusNoKeyUpdate,8,3 ; @MultiXactStatusNoKeyUpdate
	.comm	_ERROR,4,2                      ; @ERROR
	.section	__TEXT,__cstring,cstring_literals
l_.str:                                 ; @.str
	.asciz	"invalid lock mode in heap_lock_tuple"

	.comm	_XLTW_Lock,4,2                  ; @XLTW_Lock
	.comm	_ERRCODE_LOCK_NOT_AVAILABLE,4,2 ; @ERRCODE_LOCK_NOT_AVAILABLE
l_.str.1:                               ; @.str.1
	.asciz	"could not obtain lock on row in relation \"%s\""

	.comm	_HEAP_XMAX_INVALID,4,2          ; @HEAP_XMAX_INVALID
	.comm	_TM_SelfModified,8,3            ; @TM_SelfModified
	.comm	_InvalidCommandId,4,2           ; @InvalidCommandId
	.comm	_HEAP_XMAX_BITS,4,2             ; @HEAP_XMAX_BITS
	.comm	_VISIBILITYMAP_ALL_FROZEN,4,2   ; @VISIBILITYMAP_ALL_FROZEN
	.comm	_REGBUF_STANDARD,4,2            ; @REGBUF_STANDARD
	.comm	_XLH_LOCK_ALL_FROZEN_CLEARED,4,2 ; @XLH_LOCK_ALL_FROZEN_CLEARED
	.comm	_SizeOfHeapLock,4,2             ; @SizeOfHeapLock
	.comm	_RM_HEAP_ID,4,2                 ; @RM_HEAP_ID
	.comm	_XLOG_HEAP_LOCK,4,2             ; @XLOG_HEAP_LOCK
.subsections_via_symbols
