	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	4, 0x90                         ## -- Begin function niu_init_mac_ipp_pcs_base
_niu_init_mac_ipp_pcs_base:             ## @niu_init_mac_ipp_pcs_base
	.cfi_startproc
## %bb.0:
	pushq	%rbp
	.cfi_def_cfa_offset 16
	.cfi_offset %rbp, -16
	movq	%rsp, %rbp
	.cfi_def_cfa_register %rbp
	movl	(%rdi), %edx
	cmpq	$3, %rdx
	ja	LBB0_3
## %bb.1:
	leaq	LJTI0_0(%rip), %rax
	movslq	(%rax,%rdx,4), %rcx
	addq	%rax, %rcx
	jmpq	*%rcx
LBB0_2:
	movq	_XMAC_PORT0_OFF@GOTPCREL(%rip), %rax
	movq	(%rax), %rax
	addq	24(%rdi), %rax
	movq	%rax, 32(%rdi)
	movabsq	$70368744177664, %rax           ## imm = 0x400000000000
	movq	%rax, 4(%rdi)
	movl	$8192, 12(%rdi)                 ## imm = 0x2000
	jmp	LBB0_8
LBB0_3:
	movl	16(%rdi), %edi
	leaq	L_.str(%rip), %rsi
                                        ## kill: def $edx killed $edx killed $rdx
	callq	_dev_err
	movq	_EINVAL@GOTPCREL(%rip), %rcx
	xorl	%eax, %eax
	subl	(%rcx), %eax
	popq	%rbp
	retq
LBB0_4:
	movq	_XMAC_PORT1_OFF@GOTPCREL(%rip), %rax
	movq	(%rax), %rax
	addq	24(%rdi), %rax
	movq	%rax, 32(%rdi)
	movabsq	$175921860476928, %rax          ## imm = 0xA00000008000
	movq	%rax, 4(%rdi)
	movl	$32768, 12(%rdi)                ## imm = 0x8000
	jmp	LBB0_8
LBB0_5:
	movq	_BMAC_PORT2_OFF@GOTPCREL(%rip), %rax
	movq	(%rax), %rax
	addq	24(%rdi), %rax
	movq	%rax, 32(%rdi)
	movabsq	$246290604638208, %rax          ## imm = 0xE00000004000
	jmp	LBB0_7
LBB0_6:
	movq	_BMAC_PORT3_OFF@GOTPCREL(%rip), %rax
	movq	(%rax), %rax
	addq	24(%rdi), %rax
	movq	%rax, 32(%rdi)
	movabsq	$316659348848640, %rax          ## imm = 0x120000000C000
LBB0_7:
	movq	%rax, 4(%rdi)
	movl	$-1, 12(%rdi)
LBB0_8:
	xorl	%eax, %eax
	popq	%rbp
	retq
	.cfi_endproc
	.p2align	2, 0x90
	.data_region jt32
.set L0_0_set_2, LBB0_2-LJTI0_0
.set L0_0_set_4, LBB0_4-LJTI0_0
.set L0_0_set_5, LBB0_5-LJTI0_0
.set L0_0_set_6, LBB0_6-LJTI0_0
LJTI0_0:
	.long	L0_0_set_2
	.long	L0_0_set_4
	.long	L0_0_set_5
	.long	L0_0_set_6
	.end_data_region
                                        ## -- End function
	.comm	_XMAC_PORT0_OFF,8,3             ## @XMAC_PORT0_OFF
	.comm	_XMAC_PORT1_OFF,8,3             ## @XMAC_PORT1_OFF
	.comm	_BMAC_PORT2_OFF,8,3             ## @BMAC_PORT2_OFF
	.comm	_BMAC_PORT3_OFF,8,3             ## @BMAC_PORT3_OFF
	.section	__TEXT,__cstring,cstring_literals
L_.str:                                 ## @.str
	.asciz	"Port %u is invalid, cannot compute MAC block offset\n"

	.comm	_EINVAL,4,2                     ## @EINVAL
	.no_dead_strip	_niu_init_mac_ipp_pcs_base
.subsections_via_symbols

	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.section	__TEXT,__literal8,8byte_literals
	.p2align	3                               ; -- Begin function niu_init_mac_ipp_pcs_base
lCPI0_0:
	.long	49152                           ; 0xc000
	.long	73728                           ; 0x12000
lCPI0_1:
	.long	16384                           ; 0x4000
	.long	57344                           ; 0xe000
lCPI0_2:
	.long	32768                           ; 0x8000
	.long	40960                           ; 0xa000
lCPI0_3:
	.long	0                               ; 0x0
	.long	16384                           ; 0x4000
	.section	__TEXT,__text,regular,pure_instructions
	.p2align	2
_niu_init_mac_ipp_pcs_base:             ; @niu_init_mac_ipp_pcs_base
	.cfi_startproc
; %bb.0:
	stp	x29, x30, [sp, #-16]!           ; 16-byte Folded Spill
	.cfi_def_cfa_offset 16
	mov	x29, sp
	.cfi_def_cfa w29, 16
	.cfi_offset w30, -8
	.cfi_offset w29, -16
	mov	x8, x0
	ldr	w2, [x0]
	cmp	w2, #3
	b.hi	LBB0_3
; %bb.1:
Lloh0:
	adrp	x9, lJTI0_0@PAGE
Lloh1:
	add	x9, x9, lJTI0_0@PAGEOFF
	adr	x10, LBB0_2
	ldrb	w11, [x9, x2]
	add	x10, x10, x11, lsl #2
	br	x10
LBB0_2:
	mov	w0, #0
	ldr	x9, [x8, #24]
Lloh2:
	adrp	x10, _XMAC_PORT0_OFF@GOTPAGE
Lloh3:
	ldr	x10, [x10, _XMAC_PORT0_OFF@GOTPAGEOFF]
Lloh4:
	ldr	x10, [x10]
	add	x9, x10, x9
	str	x9, [x8, #32]
Lloh5:
	adrp	x9, lCPI0_3@PAGE
Lloh6:
	ldr	d0, [x9, lCPI0_3@PAGEOFF]
	stur	d0, [x8, #4]
	mov	w9, #8192
	b	LBB0_8
LBB0_3:
	ldr	w0, [x8, #16]
Lloh7:
	adrp	x1, l_.str@PAGE
Lloh8:
	add	x1, x1, l_.str@PAGEOFF
                                        ; kill: def $w2 killed $w2 killed $x2
	bl	_dev_err
Lloh9:
	adrp	x8, _EINVAL@GOTPAGE
Lloh10:
	ldr	x8, [x8, _EINVAL@GOTPAGEOFF]
Lloh11:
	ldr	w8, [x8]
	neg	w0, w8
	ldp	x29, x30, [sp], #16             ; 16-byte Folded Reload
	ret
LBB0_4:
	mov	w0, #0
	ldr	x9, [x8, #24]
Lloh12:
	adrp	x10, _XMAC_PORT1_OFF@GOTPAGE
Lloh13:
	ldr	x10, [x10, _XMAC_PORT1_OFF@GOTPAGEOFF]
Lloh14:
	ldr	x10, [x10]
	add	x9, x10, x9
	str	x9, [x8, #32]
Lloh15:
	adrp	x9, lCPI0_2@PAGE
Lloh16:
	ldr	d0, [x9, lCPI0_2@PAGEOFF]
	stur	d0, [x8, #4]
	mov	w9, #32768
	b	LBB0_8
LBB0_5:
	mov	w0, #0
	ldr	x9, [x8, #24]
Lloh17:
	adrp	x10, _BMAC_PORT2_OFF@GOTPAGE
Lloh18:
	ldr	x10, [x10, _BMAC_PORT2_OFF@GOTPAGEOFF]
Lloh19:
	ldr	x10, [x10]
	add	x9, x10, x9
	str	x9, [x8, #32]
Lloh20:
	adrp	x9, lCPI0_1@PAGE
Lloh21:
	ldr	d0, [x9, lCPI0_1@PAGEOFF]
	b	LBB0_7
LBB0_6:
	mov	w0, #0
	ldr	x9, [x8, #24]
Lloh22:
	adrp	x10, _BMAC_PORT3_OFF@GOTPAGE
Lloh23:
	ldr	x10, [x10, _BMAC_PORT3_OFF@GOTPAGEOFF]
Lloh24:
	ldr	x10, [x10]
	add	x9, x10, x9
	str	x9, [x8, #32]
Lloh25:
	adrp	x9, lCPI0_0@PAGE
Lloh26:
	ldr	d0, [x9, lCPI0_0@PAGEOFF]
LBB0_7:
	stur	d0, [x8, #4]
	mov	w9, #-1
LBB0_8:
	str	w9, [x8, #12]
	ldp	x29, x30, [sp], #16             ; 16-byte Folded Reload
	ret
	.loh AdrpAdd	Lloh0, Lloh1
	.loh AdrpLdr	Lloh5, Lloh6
	.loh AdrpLdrGotLdr	Lloh2, Lloh3, Lloh4
	.loh AdrpLdrGotLdr	Lloh9, Lloh10, Lloh11
	.loh AdrpAdd	Lloh7, Lloh8
	.loh AdrpLdr	Lloh15, Lloh16
	.loh AdrpLdrGotLdr	Lloh12, Lloh13, Lloh14
	.loh AdrpLdr	Lloh20, Lloh21
	.loh AdrpLdrGotLdr	Lloh17, Lloh18, Lloh19
	.loh AdrpLdr	Lloh25, Lloh26
	.loh AdrpLdrGotLdr	Lloh22, Lloh23, Lloh24
	.cfi_endproc
	.section	__TEXT,__const
lJTI0_0:
	.byte	(LBB0_2-LBB0_2)>>2
	.byte	(LBB0_4-LBB0_2)>>2
	.byte	(LBB0_5-LBB0_2)>>2
	.byte	(LBB0_6-LBB0_2)>>2
                                        ; -- End function
	.comm	_XMAC_PORT0_OFF,8,3             ; @XMAC_PORT0_OFF
	.comm	_XMAC_PORT1_OFF,8,3             ; @XMAC_PORT1_OFF
	.comm	_BMAC_PORT2_OFF,8,3             ; @BMAC_PORT2_OFF
	.comm	_BMAC_PORT3_OFF,8,3             ; @BMAC_PORT3_OFF
	.section	__TEXT,__cstring,cstring_literals
l_.str:                                 ; @.str
	.asciz	"Port %u is invalid, cannot compute MAC block offset\n"

	.comm	_EINVAL,4,2                     ; @EINVAL
	.no_dead_strip	_niu_init_mac_ipp_pcs_base
.subsections_via_symbols
