	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.globl	_ehea_map_vaddr                 ## -- Begin function ehea_map_vaddr
	.p2align	4, 0x90
_ehea_map_vaddr:                        ## @ehea_map_vaddr
	.cfi_startproc
## %bb.0:
	pushq	%rbp
	.cfi_def_cfa_offset 16
	.cfi_offset %rbp, -16
	movq	%rsp, %rbp
	.cfi_def_cfa_register %rbp
	pushq	%r14
	pushq	%rbx
	.cfi_offset %rbx, -32
	.cfi_offset %r14, -24
	movq	_ehea_bmap@GOTPCREL(%rip), %rbx
	cmpq	$0, (%rbx)
	je	LBB0_1
## %bb.2:
	movq	%rdi, %r14
	callq	___pa
	movq	_SECTION_SIZE_BITS@GOTPCREL(%rip), %rcx
	movb	(%rcx), %cl
	shrq	%cl, %rax
	movq	_EHEA_TOP_INDEX_SHIFT@GOTPCREL(%rip), %rcx
	movb	(%rcx), %cl
	movq	%rax, %rsi
	shrq	%cl, %rsi
	movq	_EHEA_INDEX_MASK@GOTPCREL(%rip), %rcx
	movq	(%rcx), %rdx
	movl	%edx, %ecx
	andl	%esi, %ecx
	movq	(%rbx), %rsi
	movq	(%rsi), %rsi
	movslq	%ecx, %rcx
	movq	(%rsi,%rcx,8), %rsi
	testq	%rsi, %rsi
	je	LBB0_1
## %bb.3:
	movq	_EHEA_DIR_INDEX_SHIFT@GOTPCREL(%rip), %rcx
	movb	(%rcx), %cl
	movq	%rax, %rdi
	shrq	%cl, %rdi
	movl	%edx, %ecx
	andl	%edi, %ecx
	movq	(%rsi), %rsi
	movslq	%ecx, %rcx
	movq	(%rsi,%rcx,8), %rcx
	testq	%rcx, %rcx
	je	LBB0_1
## %bb.4:
	andl	%eax, %edx
	movq	(%rcx), %rax
	movslq	%edx, %rcx
	movq	(%rax,%rcx,8), %rcx
	testq	%rcx, %rcx
	je	LBB0_1
## %bb.5:
	movq	_EHEA_SECTSIZE@GOTPCREL(%rip), %rax
	movslq	(%rax), %rax
	decq	%rax
	andq	%r14, %rax
	orq	%rcx, %rax
	jmp	LBB0_6
LBB0_1:
	movq	_EHEA_INVAL_ADDR@GOTPCREL(%rip), %rax
	movq	(%rax), %rax
LBB0_6:
	popq	%rbx
	popq	%r14
	popq	%rbp
	retq
	.cfi_endproc
                                        ## -- End function
	.comm	_ehea_bmap,8,3                  ## @ehea_bmap
	.comm	_EHEA_INVAL_ADDR,8,3            ## @EHEA_INVAL_ADDR
	.comm	_SECTION_SIZE_BITS,8,3          ## @SECTION_SIZE_BITS
	.comm	_EHEA_TOP_INDEX_SHIFT,8,3       ## @EHEA_TOP_INDEX_SHIFT
	.comm	_EHEA_INDEX_MASK,8,3            ## @EHEA_INDEX_MASK
	.comm	_EHEA_DIR_INDEX_SHIFT,8,3       ## @EHEA_DIR_INDEX_SHIFT
	.comm	_EHEA_SECTSIZE,4,2              ## @EHEA_SECTSIZE
.subsections_via_symbols

	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.globl	_ehea_map_vaddr                 ; -- Begin function ehea_map_vaddr
	.p2align	2
_ehea_map_vaddr:                        ; @ehea_map_vaddr
	.cfi_startproc
; %bb.0:
	stp	x20, x19, [sp, #-32]!           ; 16-byte Folded Spill
	.cfi_def_cfa_offset 32
	stp	x29, x30, [sp, #16]             ; 16-byte Folded Spill
	add	x29, sp, #16
	.cfi_def_cfa w29, 16
	.cfi_offset w30, -8
	.cfi_offset w29, -16
	.cfi_offset w19, -24
	.cfi_offset w20, -32
Lloh0:
	adrp	x20, _ehea_bmap@GOTPAGE
Lloh1:
	ldr	x20, [x20, _ehea_bmap@GOTPAGEOFF]
	ldr	x8, [x20]
	cbz	x8, LBB0_5
; %bb.1:
	mov	x19, x0
	bl	___pa
Lloh2:
	adrp	x8, _SECTION_SIZE_BITS@GOTPAGE
Lloh3:
	ldr	x8, [x8, _SECTION_SIZE_BITS@GOTPAGEOFF]
Lloh4:
	ldr	x8, [x8]
Lloh5:
	adrp	x9, _EHEA_TOP_INDEX_SHIFT@GOTPAGE
Lloh6:
	ldr	x9, [x9, _EHEA_TOP_INDEX_SHIFT@GOTPAGEOFF]
	lsr	x8, x0, x8
Lloh7:
	ldr	x9, [x9]
	lsr	x10, x8, x9
Lloh8:
	adrp	x9, _EHEA_INDEX_MASK@GOTPAGE
Lloh9:
	ldr	x9, [x9, _EHEA_INDEX_MASK@GOTPAGEOFF]
Lloh10:
	ldr	x9, [x9]
	and	w10, w10, w9
	ldr	x11, [x20]
	ldr	x11, [x11]
	sbfiz	x10, x10, #3, #32
	ldr	x10, [x11, x10]
	cbz	x10, LBB0_5
; %bb.2:
Lloh11:
	adrp	x11, _EHEA_DIR_INDEX_SHIFT@GOTPAGE
Lloh12:
	ldr	x11, [x11, _EHEA_DIR_INDEX_SHIFT@GOTPAGEOFF]
Lloh13:
	ldr	x11, [x11]
	lsr	x11, x8, x11
	and	w11, w11, w9
	ldr	x10, [x10]
	sbfiz	x11, x11, #3, #32
	ldr	x10, [x10, x11]
	cbz	x10, LBB0_5
; %bb.3:
	and	w8, w9, w8
	ldr	x9, [x10]
	sbfiz	x8, x8, #3, #32
	ldr	x8, [x9, x8]
	cbz	x8, LBB0_5
; %bb.4:
Lloh14:
	adrp	x9, _EHEA_SECTSIZE@GOTPAGE
Lloh15:
	ldr	x9, [x9, _EHEA_SECTSIZE@GOTPAGEOFF]
Lloh16:
	ldrsw	x9, [x9]
	sub	x9, x9, #1
	and	x9, x9, x19
	orr	x0, x9, x8
	b	LBB0_6
LBB0_5:
Lloh17:
	adrp	x8, _EHEA_INVAL_ADDR@GOTPAGE
Lloh18:
	ldr	x8, [x8, _EHEA_INVAL_ADDR@GOTPAGEOFF]
Lloh19:
	ldr	x0, [x8]
LBB0_6:
	ldp	x29, x30, [sp, #16]             ; 16-byte Folded Reload
	ldp	x20, x19, [sp], #32             ; 16-byte Folded Reload
	ret
	.loh AdrpLdrGot	Lloh0, Lloh1
	.loh AdrpLdrGotLdr	Lloh8, Lloh9, Lloh10
	.loh AdrpLdrGotLdr	Lloh5, Lloh6, Lloh7
	.loh AdrpLdrGotLdr	Lloh2, Lloh3, Lloh4
	.loh AdrpLdrGotLdr	Lloh11, Lloh12, Lloh13
	.loh AdrpLdrGotLdr	Lloh14, Lloh15, Lloh16
	.loh AdrpLdrGotLdr	Lloh17, Lloh18, Lloh19
	.cfi_endproc
                                        ; -- End function
	.comm	_ehea_bmap,8,3                  ; @ehea_bmap
	.comm	_EHEA_INVAL_ADDR,8,3            ; @EHEA_INVAL_ADDR
	.comm	_SECTION_SIZE_BITS,8,3          ; @SECTION_SIZE_BITS
	.comm	_EHEA_TOP_INDEX_SHIFT,8,3       ; @EHEA_TOP_INDEX_SHIFT
	.comm	_EHEA_INDEX_MASK,8,3            ; @EHEA_INDEX_MASK
	.comm	_EHEA_DIR_INDEX_SHIFT,8,3       ; @EHEA_DIR_INDEX_SHIFT
	.comm	_EHEA_SECTSIZE,4,2              ; @EHEA_SECTSIZE
.subsections_via_symbols
