	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	4, 0x90                         ## -- Begin function cpc925_mc_get_pfn
_cpc925_mc_get_pfn:                     ## @cpc925_mc_get_pfn
	.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	%r12
	pushq	%rbx
	.cfi_offset %rbx, -48
	.cfi_offset %r12, -40
	.cfi_offset %r14, -32
	.cfi_offset %r15, -24
	movq	%rcx, %r9
	movq	%rsi, %r12
	movq	_MEAR_BCNT_MASK@GOTPCREL(%rip), %rcx
	movq	(%rcx), %r15
	andq	%rsi, %r15
	movq	_MEAR_BCNT_SHIFT@GOTPCREL(%rip), %rcx
	movb	(%rcx), %cl
	shrq	%cl, %r15
	movq	_MEAR_RANK_MASK@GOTPCREL(%rip), %rcx
	movq	(%rcx), %rbx
	andq	%rsi, %rbx
	movq	_MEAR_RANK_SHIFT@GOTPCREL(%rip), %rcx
	movb	(%rcx), %cl
	movq	_MEAR_COL_MASK@GOTPCREL(%rip), %rsi
	movq	(%rsi), %rsi
	andq	%r12, %rsi
	movq	_MEAR_COL_SHIFT@GOTPCREL(%rip), %rax
	movb	(%rax), %r11b
	movq	_MEAR_BANK_MASK@GOTPCREL(%rip), %rax
	movq	_MEAR_ROW_MASK@GOTPCREL(%rip), %r10
	movq	(%rax), %r14
	andq	%r12, %r14
	andq	(%r10), %r12
	movq	_MEAR_BANK_SHIFT@GOTPCREL(%rip), %rax
	movb	(%rax), %r10b
	shrq	%cl, %rbx
	movl	%r11d, %ecx
	shrq	%cl, %rsi
	movl	%ebx, (%r8)
	movq	(%rdi), %rax
	movq	(%rax,%rbx,8), %rax
	movq	(%rax), %rdi
	movq	_PAGE_SHIFT@GOTPCREL(%rip), %r8
	movb	(%r8), %cl
	shlq	%cl, %rdi
	addq	%r15, %rsi
	movl	%esi, %eax
	andl	$1, %eax
	shlq	$14, %rax
	movl	%esi, %ecx
	andl	$2, %ecx
	shlq	$12, %rcx
	orq	%rax, %rcx
	movl	%esi, %eax
	andl	$4, %eax
	shlq	$10, %rax
	orq	%rcx, %rax
	movl	%esi, %ecx
	andl	$8, %ecx
	shlq	$8, %rcx
	orq	%rax, %rcx
	movl	%esi, %eax
	andl	$16, %eax
	shlq	$6, %rax
	orq	%rcx, %rax
	movl	%esi, %ecx
	andl	$32, %ecx
	shlq	$4, %rcx
	orq	%rax, %rcx
	movl	%esi, %eax
	andl	$64, %eax
	shlq	$2, %rax
	orq	%rcx, %rax
	movl	%esi, %ecx
	andl	$128, %ecx
	orq	%rax, %rcx
	movq	%rsi, %rax
	shrq	$2, %rax
	andl	$64, %eax
	orq	%rcx, %rax
	movq	%rsi, %rcx
	shrq	$4, %rcx
	andl	$32, %ecx
	orq	%rax, %rcx
	shrq	$6, %rsi
	andl	$16, %esi
	orq	%rcx, %rsi
	orq	%rdi, %rsi
	movl	%r10d, %ecx
	shrq	%cl, %r14
	shlq	$19, %r14
	movl	%r12d, %eax
	andl	$1, %eax
	shlq	$26, %rax
	orq	%r14, %rax
	movl	%r12d, %ecx
	andl	$2, %ecx
	shlq	$24, %rcx
	orq	%rax, %rcx
	movl	%r12d, %eax
	andl	$4, %eax
	shlq	$22, %rax
	orq	%rcx, %rax
	movq	%r12, %rcx
	shlq	$18, %rcx
	movl	%ecx, %edi
	andl	$2097152, %edi                  ## imm = 0x200000
	orq	%rax, %rdi
	movl	%ecx, %eax
	andl	$4194304, %eax                  ## imm = 0x400000
	orq	%rdi, %rax
	andl	$8388608, %ecx                  ## imm = 0x800000
	orq	%rcx, %rax
	movl	%r12d, %ecx
	andl	$64, %ecx
	shlq	$12, %rcx
	orq	%rax, %rcx
	movl	%r12d, %eax
	shll	$10, %eax
	andl	$131072, %eax                   ## imm = 0x20000
	orq	%rcx, %rax
	movl	%r12d, %ecx
	shll	$8, %ecx
	andl	$65536, %ecx                    ## imm = 0x10000
	orq	%rax, %rcx
	movl	%r12d, %eax
	shll	$6, %eax
	andl	$32768, %eax                    ## imm = 0x8000
	orq	%rcx, %rax
	movl	%r12d, %ecx
	shll	$19, %ecx
	andl	$536870912, %ecx                ## imm = 0x20000000
	orq	%rax, %rcx
	movl	%r12d, %eax
	shll	$17, %eax
	andl	$268435456, %eax                ## imm = 0x10000000
	orq	%rcx, %rax
	shll	$15, %r12d
	andl	$134217728, %r12d               ## imm = 0x8000000
	orq	%rax, %r12
	orq	%rsi, %r12
	movq	_PAGE_SIZE@GOTPCREL(%rip), %rax
	movslq	(%rax), %rax
	decq	%rax
	andq	%r12, %rax
	movq	%rax, (%r9)
	movb	(%r8), %cl
	movq	%r12, %rax
	shrq	%cl, %rax
	movq	%rax, (%rdx)
	leaq	L_.str(%rip), %rsi
	movq	%r12, %rdx
	xorl	%edi, %edi
	popq	%rbx
	popq	%r12
	popq	%r14
	popq	%r15
	popq	%rbp
	jmp	_edac_dbg                       ## TAILCALL
	.cfi_endproc
                                        ## -- End function
	.comm	_MEAR_BCNT_MASK,8,3             ## @MEAR_BCNT_MASK
	.comm	_MEAR_BCNT_SHIFT,8,3            ## @MEAR_BCNT_SHIFT
	.comm	_MEAR_RANK_MASK,8,3             ## @MEAR_RANK_MASK
	.comm	_MEAR_RANK_SHIFT,8,3            ## @MEAR_RANK_SHIFT
	.comm	_MEAR_COL_MASK,8,3              ## @MEAR_COL_MASK
	.comm	_MEAR_COL_SHIFT,8,3             ## @MEAR_COL_SHIFT
	.comm	_MEAR_BANK_MASK,8,3             ## @MEAR_BANK_MASK
	.comm	_MEAR_BANK_SHIFT,8,3            ## @MEAR_BANK_SHIFT
	.comm	_MEAR_ROW_MASK,8,3              ## @MEAR_ROW_MASK
	.comm	_PAGE_SHIFT,8,3                 ## @PAGE_SHIFT
	.comm	_PAGE_SIZE,4,2                  ## @PAGE_SIZE
	.section	__TEXT,__cstring,cstring_literals
L_.str:                                 ## @.str
	.asciz	"ECC physical address 0x%lx\n"

	.comm	_KERN_ERR,4,2                   ## @KERN_ERR
	.no_dead_strip	_cpc925_mc_get_pfn
.subsections_via_symbols

	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	2                               ; -- Begin function cpc925_mc_get_pfn
_cpc925_mc_get_pfn:                     ; @cpc925_mc_get_pfn
	.cfi_startproc
; %bb.0:
	ldr	x8, [x0]
Lloh0:
	adrp	x9, _MEAR_BCNT_MASK@GOTPAGE
Lloh1:
	ldr	x9, [x9, _MEAR_BCNT_MASK@GOTPAGEOFF]
Lloh2:
	ldr	x9, [x9]
	and	x9, x9, x1
Lloh3:
	adrp	x10, _MEAR_BCNT_SHIFT@GOTPAGE
Lloh4:
	ldr	x10, [x10, _MEAR_BCNT_SHIFT@GOTPAGEOFF]
Lloh5:
	ldr	x10, [x10]
Lloh6:
	adrp	x11, _MEAR_RANK_MASK@GOTPAGE
Lloh7:
	ldr	x11, [x11, _MEAR_RANK_MASK@GOTPAGEOFF]
	lsr	x10, x9, x10
Lloh8:
	ldr	x9, [x11]
	and	x9, x9, x1
Lloh9:
	adrp	x11, _MEAR_RANK_SHIFT@GOTPAGE
Lloh10:
	ldr	x11, [x11, _MEAR_RANK_SHIFT@GOTPAGEOFF]
Lloh11:
	ldr	x11, [x11]
	lsr	x9, x9, x11
Lloh12:
	adrp	x11, _MEAR_COL_MASK@GOTPAGE
Lloh13:
	ldr	x11, [x11, _MEAR_COL_MASK@GOTPAGEOFF]
Lloh14:
	ldr	x11, [x11]
Lloh15:
	adrp	x12, _MEAR_COL_SHIFT@GOTPAGE
Lloh16:
	ldr	x12, [x12, _MEAR_COL_SHIFT@GOTPAGEOFF]
	and	x11, x11, x1
Lloh17:
	ldr	x12, [x12]
	lsr	x11, x11, x12
Lloh18:
	adrp	x12, _MEAR_BANK_MASK@GOTPAGE
Lloh19:
	ldr	x12, [x12, _MEAR_BANK_MASK@GOTPAGEOFF]
Lloh20:
	ldr	x12, [x12]
Lloh21:
	adrp	x13, _MEAR_BANK_SHIFT@GOTPAGE
Lloh22:
	ldr	x13, [x13, _MEAR_BANK_SHIFT@GOTPAGEOFF]
Lloh23:
	ldr	x13, [x13]
Lloh24:
	adrp	x14, _MEAR_ROW_MASK@GOTPAGE
Lloh25:
	ldr	x14, [x14, _MEAR_ROW_MASK@GOTPAGEOFF]
Lloh26:
	ldr	x14, [x14]
	str	w9, [x4]
	ldr	x8, [x8, x9, lsl #3]
	ldr	x8, [x8]
Lloh27:
	adrp	x9, _PAGE_SHIFT@GOTPAGE
Lloh28:
	ldr	x9, [x9, _PAGE_SHIFT@GOTPAGEOFF]
	ldr	x15, [x9]
	lsl	x8, x8, x15
	add	x10, x11, x10
	lsl	w11, w10, #14
	and	x11, x11, #0x4000
	orr	x8, x11, x8
	lsl	w11, w10, #12
	and	x11, x11, #0x2000
	orr	x8, x11, x8
	lsl	w11, w10, #10
	and	x11, x11, #0x1000
	orr	x8, x11, x8
	lsl	w11, w10, #8
	and	x11, x11, #0x800
	orr	x8, x11, x8
	lsl	w11, w10, #6
	and	x11, x11, #0x400
	orr	x8, x11, x8
	lsl	w11, w10, #4
	and	x11, x11, #0x200
	orr	x8, x11, x8
	lsl	w11, w10, #2
	and	x11, x11, #0x100
	orr	x8, x11, x8
	and	x11, x10, #0x80
	orr	x8, x11, x8
	lsr	x11, x10, #2
	and	x11, x11, #0x40
	orr	x8, x11, x8
	lsr	x11, x10, #4
	and	x11, x11, #0x20
	orr	x8, x11, x8
	lsr	x10, x10, #6
	and	x10, x10, #0x10
	orr	x8, x10, x8
	and	x10, x12, x1
	lsr	x10, x10, x13
	and	x11, x14, x1
	orr	x8, x8, x10, lsl #19
	lsl	w10, w11, #26
	and	x10, x10, #0x4000000
	orr	x8, x10, x8
	lsl	w10, w11, #24
	and	x10, x10, #0x2000000
	orr	x8, x10, x8
	lsl	w10, w11, #22
	and	x10, x10, #0x1000000
	orr	x8, x10, x8
	lsl	x10, x11, #18
	and	x12, x10, #0x200000
	orr	x8, x12, x8
	and	x12, x10, #0x400000
	orr	x8, x12, x8
	and	x10, x10, #0x800000
	orr	x8, x10, x8
	lsl	w10, w11, #12
	and	x10, x10, #0x40000
	orr	x8, x10, x8
	lsl	w10, w11, #10
	and	x10, x10, #0x20000
	orr	x8, x10, x8
	lsl	w10, w11, #8
	and	x10, x10, #0x10000
	orr	x8, x10, x8
	lsl	w10, w11, #6
	and	x10, x10, #0x8000
	orr	x8, x10, x8
	lsl	w10, w11, #19
	and	x10, x10, #0x20000000
	orr	x8, x10, x8
	lsl	w10, w11, #17
	and	x10, x10, #0x10000000
	orr	x8, x10, x8
	lsl	w10, w11, #15
	and	x10, x10, #0x8000000
	orr	x8, x10, x8
Lloh29:
	adrp	x10, _PAGE_SIZE@GOTPAGE
Lloh30:
	ldr	x10, [x10, _PAGE_SIZE@GOTPAGEOFF]
Lloh31:
	ldrsw	x10, [x10]
	sub	x10, x10, #1
	and	x10, x8, x10
	str	x10, [x3]
	ldr	x9, [x9]
	lsr	x9, x8, x9
	str	x9, [x2]
Lloh32:
	adrp	x1, l_.str@PAGE
Lloh33:
	add	x1, x1, l_.str@PAGEOFF
	mov	w0, #0
	mov	x2, x8
	b	_edac_dbg
	.loh AdrpAdd	Lloh32, Lloh33
	.loh AdrpLdrGotLdr	Lloh29, Lloh30, Lloh31
	.loh AdrpLdrGot	Lloh27, Lloh28
	.loh AdrpLdrGotLdr	Lloh24, Lloh25, Lloh26
	.loh AdrpLdrGotLdr	Lloh21, Lloh22, Lloh23
	.loh AdrpLdrGotLdr	Lloh18, Lloh19, Lloh20
	.loh AdrpLdrGotLdr	Lloh15, Lloh16, Lloh17
	.loh AdrpLdrGotLdr	Lloh12, Lloh13, Lloh14
	.loh AdrpLdrGotLdr	Lloh9, Lloh10, Lloh11
	.loh AdrpLdrGotLdr	Lloh6, Lloh7, Lloh8
	.loh AdrpLdrGotLdr	Lloh3, Lloh4, Lloh5
	.loh AdrpLdrGotLdr	Lloh0, Lloh1, Lloh2
	.cfi_endproc
                                        ; -- End function
	.comm	_MEAR_BCNT_MASK,8,3             ; @MEAR_BCNT_MASK
	.comm	_MEAR_BCNT_SHIFT,8,3            ; @MEAR_BCNT_SHIFT
	.comm	_MEAR_RANK_MASK,8,3             ; @MEAR_RANK_MASK
	.comm	_MEAR_RANK_SHIFT,8,3            ; @MEAR_RANK_SHIFT
	.comm	_MEAR_COL_MASK,8,3              ; @MEAR_COL_MASK
	.comm	_MEAR_COL_SHIFT,8,3             ; @MEAR_COL_SHIFT
	.comm	_MEAR_BANK_MASK,8,3             ; @MEAR_BANK_MASK
	.comm	_MEAR_BANK_SHIFT,8,3            ; @MEAR_BANK_SHIFT
	.comm	_MEAR_ROW_MASK,8,3              ; @MEAR_ROW_MASK
	.comm	_PAGE_SHIFT,8,3                 ; @PAGE_SHIFT
	.comm	_PAGE_SIZE,4,2                  ; @PAGE_SIZE
	.section	__TEXT,__cstring,cstring_literals
l_.str:                                 ; @.str
	.asciz	"ECC physical address 0x%lx\n"

	.comm	_KERN_ERR,4,2                   ; @KERN_ERR
	.no_dead_strip	_cpc925_mc_get_pfn
.subsections_via_symbols
