	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	4, 0x90                         ## -- Begin function sxgbe_get_hw_features
_sxgbe_get_hw_features:                 ## @sxgbe_get_hw_features
	.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	%rdi, %rbx
	movq	8(%rdi), %rax
	movq	(%rax), %rax
	movl	(%rdi), %edi
	xorl	%esi, %esi
	callq	*(%rax)
	testl	%eax, %eax
	je	LBB0_2
## %bb.1:
	movl	%eax, %r14d
	movl	%eax, %edi
	callq	_SXGBE_HW_FEAT_PMT_TEMOTE_WOP
	movl	%eax, 124(%rbx)
	movl	%r14d, %edi
	callq	_SXGBE_HW_FEAT_PMT_MAGIC_PKT
	movl	%eax, 120(%rbx)
	movl	%r14d, %edi
	callq	_SXGBE_HW_FEAT_IEEE1500_2008
	movl	%eax, 116(%rbx)
	movl	%r14d, %edi
	callq	_SXGBE_HW_FEAT_TX_CSUM_OFFLOAD
	movl	%eax, 112(%rbx)
	movl	%r14d, %edi
	callq	_SXGBE_HW_FEAT_RX_CSUM_OFFLOAD
	movl	%eax, 108(%rbx)
	movl	%r14d, %edi
	callq	_SXGBE_HW_FEAT_MACADDR_COUNT
	movl	%eax, 104(%rbx)
	movl	%r14d, %edi
	callq	_SXGBE_HW_FEAT_TSTMAP_SRC
	movl	%eax, 100(%rbx)
	movl	%r14d, %edi
	callq	_SXGBE_HW_FEAT_SRCADDR_VLAN
	movl	%eax, 96(%rbx)
	movl	%r14d, %edi
	callq	_SXGBE_HW_FEAT_EEE
	movl	%eax, 92(%rbx)
LBB0_2:
	movq	8(%rbx), %rax
	movq	(%rax), %rax
	movl	(%rbx), %edi
	movl	$1, %esi
	callq	*(%rax)
	testl	%eax, %eax
	je	LBB0_4
## %bb.3:
	movl	%eax, %r14d
	movl	%eax, %edi
	callq	_SXGBE_HW_FEAT_RX_FIFO_SIZE
	movl	%eax, 88(%rbx)
	movl	%r14d, %edi
	callq	_SXGBE_HW_FEAT_TX_FIFO_SIZE
	movq	%rax, 80(%rbx)
	movl	%r14d, %edi
	callq	_SXGBE_HW_FEAT_TX_FIFO_SIZE
	movq	%rax, 72(%rbx)
	movl	%r14d, %edi
	callq	_SXGBE_HW_FEAT_DCB
	movl	%eax, 64(%rbx)
	movl	%r14d, %edi
	callq	_SXGBE_HW_FEAT_SPLIT_HDR
	movl	%eax, 60(%rbx)
	movl	%r14d, %edi
	callq	_SXGBE_HW_FEAT_TSO
	movl	%eax, 56(%rbx)
	movl	%r14d, %edi
	callq	_SXGBE_HW_FEAT_DEBUG_MEM_IFACE
	movl	%eax, 52(%rbx)
	movl	%r14d, %edi
	callq	_SXGBE_HW_FEAT_RSS
	movl	%eax, 48(%rbx)
	movl	%r14d, %edi
	callq	_SXGBE_HW_FEAT_HASH_TABLE_SIZE
	movl	%eax, 44(%rbx)
	movl	%r14d, %edi
	callq	_SXGBE_HW_FEAT_L3L4_FILTER_NUM
	movl	%eax, 40(%rbx)
LBB0_4:
	movq	8(%rbx), %rax
	movq	(%rax), %rax
	movl	(%rbx), %edi
	movl	$2, %esi
	callq	*(%rax)
	movl	%eax, %r14d
	testl	%eax, %eax
	je	LBB0_6
## %bb.5:
	movl	%r14d, %edi
	callq	_SXGBE_HW_FEAT_RX_MTL_QUEUES
	movl	%eax, 36(%rbx)
	movl	%r14d, %edi
	callq	_SXGBE_HW_FEAT_TX_MTL_QUEUES
	movl	%eax, 32(%rbx)
	movl	%r14d, %edi
	callq	_SXGBE_HW_FEAT_RX_DMA_CHANNELS
	movl	%eax, 28(%rbx)
	movl	%r14d, %edi
	callq	_SXGBE_HW_FEAT_TX_DMA_CHANNELS
	movl	%eax, 24(%rbx)
	movl	%r14d, %edi
	callq	_SXGBE_HW_FEAT_PPS_OUTPUTS
	movl	%eax, 20(%rbx)
	movl	%r14d, %edi
	callq	_SXGBE_HW_FEAT_AUX_SNAPSHOTS
	movl	%eax, 16(%rbx)
LBB0_6:
	movl	%r14d, %eax
	popq	%rbx
	popq	%r14
	popq	%rbp
	retq
	.cfi_endproc
                                        ## -- End function
	.no_dead_strip	_sxgbe_get_hw_features
.subsections_via_symbols

	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	2                               ; -- Begin function sxgbe_get_hw_features
_sxgbe_get_hw_features:                 ; @sxgbe_get_hw_features
	.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
	mov	x19, x0
	ldr	x8, [x0, #8]
	ldr	x8, [x8]
	ldr	x8, [x8]
	ldr	w0, [x0]
	mov	w1, #0
	blr	x8
	cbz	w0, LBB0_2
; %bb.1:
	mov	x20, x0
	bl	_SXGBE_HW_FEAT_PMT_TEMOTE_WOP
	str	w0, [x19, #124]
	mov	x0, x20
	bl	_SXGBE_HW_FEAT_PMT_MAGIC_PKT
	str	w0, [x19, #120]
	mov	x0, x20
	bl	_SXGBE_HW_FEAT_IEEE1500_2008
	str	w0, [x19, #116]
	mov	x0, x20
	bl	_SXGBE_HW_FEAT_TX_CSUM_OFFLOAD
	str	w0, [x19, #112]
	mov	x0, x20
	bl	_SXGBE_HW_FEAT_RX_CSUM_OFFLOAD
	str	w0, [x19, #108]
	mov	x0, x20
	bl	_SXGBE_HW_FEAT_MACADDR_COUNT
	str	w0, [x19, #104]
	mov	x0, x20
	bl	_SXGBE_HW_FEAT_TSTMAP_SRC
	str	w0, [x19, #100]
	mov	x0, x20
	bl	_SXGBE_HW_FEAT_SRCADDR_VLAN
	str	w0, [x19, #96]
	mov	x0, x20
	bl	_SXGBE_HW_FEAT_EEE
	str	w0, [x19, #92]
LBB0_2:
	ldr	x8, [x19, #8]
	ldr	x8, [x8]
	ldr	x8, [x8]
	ldr	w0, [x19]
	mov	w1, #1
	blr	x8
	cbz	w0, LBB0_4
; %bb.3:
	mov	x20, x0
	bl	_SXGBE_HW_FEAT_RX_FIFO_SIZE
	str	w0, [x19, #88]
	mov	x0, x20
	bl	_SXGBE_HW_FEAT_TX_FIFO_SIZE
	str	x0, [x19, #80]
	mov	x0, x20
	bl	_SXGBE_HW_FEAT_TX_FIFO_SIZE
	str	x0, [x19, #72]
	mov	x0, x20
	bl	_SXGBE_HW_FEAT_DCB
	str	w0, [x19, #64]
	mov	x0, x20
	bl	_SXGBE_HW_FEAT_SPLIT_HDR
	str	w0, [x19, #60]
	mov	x0, x20
	bl	_SXGBE_HW_FEAT_TSO
	str	w0, [x19, #56]
	mov	x0, x20
	bl	_SXGBE_HW_FEAT_DEBUG_MEM_IFACE
	str	w0, [x19, #52]
	mov	x0, x20
	bl	_SXGBE_HW_FEAT_RSS
	str	w0, [x19, #48]
	mov	x0, x20
	bl	_SXGBE_HW_FEAT_HASH_TABLE_SIZE
	str	w0, [x19, #44]
	mov	x0, x20
	bl	_SXGBE_HW_FEAT_L3L4_FILTER_NUM
	str	w0, [x19, #40]
LBB0_4:
	ldr	x8, [x19, #8]
	ldr	x8, [x8]
	ldr	x8, [x8]
	ldr	w0, [x19]
	mov	w1, #2
	blr	x8
	mov	x20, x0
	cbz	w0, LBB0_6
; %bb.5:
	mov	x0, x20
	bl	_SXGBE_HW_FEAT_RX_MTL_QUEUES
	str	w0, [x19, #36]
	mov	x0, x20
	bl	_SXGBE_HW_FEAT_TX_MTL_QUEUES
	str	w0, [x19, #32]
	mov	x0, x20
	bl	_SXGBE_HW_FEAT_RX_DMA_CHANNELS
	str	w0, [x19, #28]
	mov	x0, x20
	bl	_SXGBE_HW_FEAT_TX_DMA_CHANNELS
	str	w0, [x19, #24]
	mov	x0, x20
	bl	_SXGBE_HW_FEAT_PPS_OUTPUTS
	str	w0, [x19, #20]
	mov	x0, x20
	bl	_SXGBE_HW_FEAT_AUX_SNAPSHOTS
	str	w0, [x19, #16]
LBB0_6:
	mov	x0, x20
	ldp	x29, x30, [sp, #16]             ; 16-byte Folded Reload
	ldp	x20, x19, [sp], #32             ; 16-byte Folded Reload
	ret
	.cfi_endproc
                                        ; -- End function
	.no_dead_strip	_sxgbe_get_hw_features
.subsections_via_symbols
