	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.globl	_iflib_device_register          ## -- Begin function iflib_device_register
	.p2align	4, 0x90
_iflib_device_register:                 ## @iflib_device_register
	.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	$56, %rsp
	.cfi_offset %rbx, -56
	.cfi_offset %r12, -48
	.cfi_offset %r13, -40
	.cfi_offset %r14, -32
	.cfi_offset %r15, -24
	movq	%rcx, -88(%rbp)                 ## 8-byte Spill
	movq	%rdx, %r15
	movq	%rsi, %rbx
	movl	%edi, %r14d
	movq	_M_IFLIB@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	movq	_M_WAITOK@GOTPCREL(%rip), %rax
	movq	_M_ZERO@GOTPCREL(%rip), %r13
	movl	(%r13), %edx
	orl	(%rax), %edx
	movl	$176, %edi
	callq	_malloc
	movq	%rax, %r12
	movq	%rax, -56(%rbp)                 ## 8-byte Spill
	testq	%rbx, %rbx
	jne	LBB0_2
## %bb.1:
	movq	8(%r15), %rax
	movl	(%rax), %edi
	movq	_M_IFLIB@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	movl	(%r13), %edx
	movq	_M_WAITOK@GOTPCREL(%rip), %rax
	orl	(%rax), %edx
	callq	_malloc
	movq	%rax, %rbx
	movl	%r14d, %edi
	movq	%r12, %rsi
	callq	_device_set_softc
	movq	_IFC_SC_ALLOCATED@GOTPCREL(%rip), %rax
	movl	(%rax), %eax
	orl	%eax, (%r12)
LBB0_2:
	movq	%r15, 168(%r12)
	movl	%r14d, 16(%r12)
	movq	%rbx, 8(%r12)
	movq	%r12, %rdi
	callq	_iflib_register
	testl	%eax, %eax
	je	LBB0_7
## %bb.3:
	leaq	L_.str(%rip), %rsi
	movl	%r14d, %edi
	movl	%eax, %ebx
	movl	%eax, %edx
	xorl	%eax, %eax
	callq	_device_printf
	movq	_M_IFLIB@GOTPCREL(%rip), %r13
	jmp	LBB0_4
LBB0_7:
	movq	%r15, %rbx
	movq	%r12, %rdi
	callq	_iflib_add_device_sysctl_pre
	movl	24(%r12), %r15d
	movq	%r12, %rdi
	callq	_iflib_reset_qvalues
	movq	%r12, %rdi
	callq	_CTX_LOCK
	movq	%r12, %rdi
	callq	_IFDI_ATTACH_PRE
	testl	%eax, %eax
	je	LBB0_10
## %bb.8:
	leaq	L_.str.1(%rip), %rsi
	movl	%r14d, %edi
	movl	%eax, %ebx
	movl	%eax, %edx
	xorl	%eax, %eax
	callq	_device_printf
	movq	_M_IFLIB@GOTPCREL(%rip), %r13
	jmp	LBB0_9
LBB0_10:
	movl	%r15d, -60(%rbp)                ## 4-byte Spill
	movl	%r14d, -44(%rbp)                ## 4-byte Spill
	movq	-56(%rbp), %rax                 ## 8-byte Reload
	leaq	56(%rax), %rdi
	callq	__iflib_pre_assert
	movq	160(%r12), %rax
	movl	(%rax), %eax
	movl	%eax, 48(%r12)
	movq	_IFLIB_DRIVER_MEDIA@GOTPCREL(%rip), %rax
	movl	(%rax), %eax
	movq	%rbx, -72(%rbp)                 ## 8-byte Spill
	testl	%eax, (%rbx)
	je	LBB0_12
## %bb.11:
	movl	152(%r12), %eax
	movl	%eax, 44(%r12)
LBB0_12:
	movq	_IFCAP_HWSTATS@GOTPCREL(%rip), %rbx
	movl	(%rbx), %esi
	orl	56(%r12), %esi
	movq	_IFCAP_NOMAP@GOTPCREL(%rip), %r15
	orl	(%r15), %esi
	movl	-60(%rbp), %r14d                ## 4-byte Reload
	movl	%r14d, %edi
	callq	_if_setcapabilities
	movl	(%rbx), %esi
	orl	64(%r12), %esi
	orl	(%r15), %esi
	movl	%r14d, %edi
	callq	_if_setcapenable
	movl	68(%r12), %ecx
	movl	72(%r12), %eax
	testl	%ecx, %ecx
	movq	_M_IFLIB@GOTPCREL(%rip), %r13
	movq	%r12, %rbx
	je	LBB0_15
## %bb.13:
	testl	%eax, %eax
	je	LBB0_16
## %bb.14:
	cmpl	%ecx, %eax
	jge	LBB0_16
LBB0_15:
	movl	%eax, 68(%rbx)
LBB0_16:
	movl	76(%rbx), %ecx
	movl	80(%rbx), %eax
	testl	%ecx, %ecx
	je	LBB0_19
## %bb.17:
	testl	%eax, %eax
	je	LBB0_20
## %bb.18:
	cmpl	%ecx, %eax
	jge	LBB0_20
LBB0_19:
	movl	%eax, 76(%rbx)
LBB0_20:
	movq	-72(%rbp), %rax                 ## 8-byte Reload
	movl	(%rax), %eax
	movq	_IFLIB_HAS_TXCQ@GOTPCREL(%rip), %rcx
	xorl	%r15d, %r15d
	movl	(%rcx), %ecx
	andl	%eax, %ecx
	setne	%r15b
	movq	_IFLIB_HAS_RXCQ@GOTPCREL(%rip), %rcx
	xorl	%esi, %esi
	andl	(%rcx), %eax
	setne	%sil
	movq	88(%rbx), %rax
	movq	144(%rbx), %rcx
	movl	(%rax,%r15,4), %edx
	movl	(%rcx,%rsi,4), %ecx
	leaq	L_.str.2(%rip), %rsi
	movl	-44(%rbp), %edi                 ## 4-byte Reload
	xorl	%eax, %eax
	callq	_device_printf
	movl	96(%rbx), %ecx
	movq	88(%rbx), %rax
	movl	(%rax,%r15,4), %eax
	movq	_MAX_SINGLE_PACKET_FRACTION@GOTPCREL(%rip), %r12
	cltd
	idivl	(%r12)
	cmpl	%eax, %ecx
	jle	LBB0_22
## %bb.21:
	movl	$1, %edi
	movl	%eax, %esi
	callq	_max
	movl	%eax, 96(%rbx)
	movq	88(%rbx), %rax
	movl	(%rax,%r15,4), %eax
	cltd
	idivl	(%r12)
LBB0_22:
	movq	-56(%rbp), %r15                 ## 8-byte Reload
	cmpl	%eax, 100(%rbx)
	jle	LBB0_24
## %bb.23:
	movl	$1, %edi
	movl	%eax, %esi
	callq	_max
	movl	%eax, 100(%rbx)
LBB0_24:
	movl	%r14d, %edi
	callq	_if_getcapabilities
	movq	_IFCAP_TSO@GOTPCREL(%rip), %rcx
	testl	%eax, (%rcx)
	je	LBB0_26
## %bb.25:
	movl	140(%rbx), %edi
	movq	_IP_MAXPACKET@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	callq	_min
	movl	%r14d, %edi
	movl	%eax, %esi
	callq	_if_sethwtsomax
	movl	100(%rbx), %esi
	addl	$-3, %esi
	movl	%r14d, %edi
	callq	_if_sethwtsomaxsegcount
	movl	136(%rbx), %esi
	movl	%r14d, %edi
	callq	_if_sethwtsomaxsegsize
LBB0_26:
	movl	104(%rbx), %eax
	testl	%eax, %eax
	jne	LBB0_28
## %bb.27:
	movl	$64, 104(%rbx)
	movl	$64, %eax
LBB0_28:
	decl	%eax
	movl	%eax, 108(%rbx)
	leaq	20(%r15), %r12
	movq	__task_fn_admin@GOTPCREL(%rip), %rax
	movl	(%rax), %edx
	movq	%r12, %rdi
	xorl	%esi, %esi
	movq	%rbx, %rcx
	callq	_GROUPTASK_INIT
	movq	_qgroup_if_config_tqg@GOTPCREL(%rip), %rax
	movl	(%rax), %edi
	leaq	L_.str.3(%rip), %r9
	movq	%r12, %rsi
	movq	%rbx, -56(%rbp)                 ## 8-byte Spill
	movq	%rbx, %rdx
	xorl	%ecx, %ecx
	xorl	%r8d, %r8d
	callq	_taskqgroup_attach
	movq	_INTR_CPUS@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	addq	$40, %r15
	movl	-44(%rbp), %ebx                 ## 4-byte Reload
	movl	%ebx, %edi
	movl	$4, %edx
	movq	%r15, %rcx
	callq	_bus_get_cpus
	testq	%rax, %rax
	je	LBB0_30
## %bb.29:
	leaq	L_.str.4(%rip), %rsi
	movl	%ebx, %edi
	xorl	%eax, %eax
	callq	_device_printf
	movq	_all_cpus@GOTPCREL(%rip), %rdi
	movq	%r15, %rsi
	callq	_CPU_COPY
LBB0_30:
	movq	%r15, %rdi
	callq	_CPU_COUNT
	xorl	%edi, %edi
	testq	%rax, %rax
	setg	%dil
	callq	_MPASS
	movq	_IFLIB_SKIP_MSIX@GOTPCREL(%rip), %rax
	movl	(%rax), %eax
	movq	-72(%rbp), %rcx                 ## 8-byte Reload
	testl	%eax, (%rcx)
	movq	%r12, -80(%rbp)                 ## 8-byte Spill
	je	LBB0_32
## %bb.31:
	movq	-56(%rbp), %r15                 ## 8-byte Reload
	movl	112(%r15), %r12d
	jmp	LBB0_35
LBB0_32:
	movq	-56(%rbp), %r15                 ## 8-byte Reload
	cmpq	$0, 120(%r15)
	je	LBB0_34
## %bb.33:
	movq	%r15, %rdi
	callq	_iflib_msix_init
	movl	%eax, %r12d
	jmp	LBB0_35
LBB0_34:
	movl	$1, 112(%r15)
	movl	$1, 68(%r15)
	movl	$1, 76(%r15)
	movq	_IFLIB_INTR_LEGACY@GOTPCREL(%rip), %rax
	movq	(%rax), %rax
	movq	%rax, 128(%r15)
	xorl	%r12d, %r12d
LBB0_35:
	movq	%r15, %rdi
	callq	_iflib_queues_alloc
	testl	%eax, %eax
	je	LBB0_39
## %bb.36:
	movl	%eax, %ebx
	leaq	L_.str.5(%rip), %rsi
	movl	-44(%rbp), %edi                 ## 4-byte Reload
	xorl	%eax, %eax
	callq	_device_printf
LBB0_37:
	movq	%r15, %rdi
	callq	_iflib_free_intr_mem
	jmp	LBB0_38
LBB0_39:
	movq	%r15, %rdi
	callq	_iflib_qset_structures_setup
	movl	%eax, %ebx
	testl	%eax, %eax
	je	LBB0_40
LBB0_38:
	movq	%r15, %rdi
	callq	_iflib_tx_structures_free
	movq	%r15, %rdi
	callq	_iflib_rx_structures_free
	movq	_qgroup_if_config_tqg@GOTPCREL(%rip), %rax
	movl	(%rax), %edi
	movq	-80(%rbp), %rsi                 ## 8-byte Reload
	callq	_taskqgroup_detach
	movq	%r15, %rdi
	callq	_IFDI_DETACH
	movq	%r15, %r12
LBB0_9:
	movq	%r12, %rdi
	callq	_CTX_UNLOCK
	movq	%r12, %rdi
	callq	_iflib_deregister
LBB0_4:
	movl	16(%r12), %edi
	xorl	%esi, %esi
	callq	_device_set_softc
	movq	_IFC_SC_ALLOCATED@GOTPCREL(%rip), %rax
	movl	(%rax), %eax
	testl	%eax, (%r12)
	je	LBB0_6
## %bb.5:
	movq	8(%r12), %rdi
	movl	(%r13), %esi
	callq	_free
LBB0_6:
	movl	(%r13), %esi
	movq	%r12, %rdi
	callq	_free
	movl	%ebx, %eax
LBB0_63:
	addq	$56, %rsp
	popq	%rbx
	popq	%r12
	popq	%r13
	popq	%r14
	popq	%r15
	popq	%rbp
	retq
LBB0_40:
	movq	%r15, %rdi
	callq	_get_ctx_core_offset
	movl	%eax, 36(%r15)
	movq	%r15, %rdi
	callq	_IFDI_INTR_DISABLE
	cmpl	$2, %r12d
	jl	LBB0_49
## %bb.41:
	movq	(%r15), %rax
	movl	(%rax), %edi
	movq	_ifdi_rx_queue_intr_enable_desc@GOTPCREL(%rip), %r14
	xorl	%esi, %esi
	movq	%r14, %rdx
	callq	_kobj_lookup_method
	cmpq	%r14, %rax
	je	LBB0_42
## %bb.44:
	movq	(%r15), %rax
	movl	(%rax), %edi
	movq	_ifdi_tx_queue_intr_enable_desc@GOTPCREL(%rip), %r14
	xorl	%esi, %esi
	movq	%r14, %rdx
	callq	_kobj_lookup_method
	cmpq	%r14, %rax
	je	LBB0_45
## %bb.46:
	movq	%r15, %rdi
	movl	%r12d, %esi
	callq	_IFDI_MSIX_INTR_ASSIGN
	testl	%eax, %eax
	movl	-60(%rbp), %r14d                ## 4-byte Reload
	je	LBB0_55
## %bb.47:
	leaq	L_.str.8(%rip), %rsi
	jmp	LBB0_48
LBB0_49:
	movq	128(%r15), %rax
	movq	_IFLIB_INTR_MSIX@GOTPCREL(%rip), %rcx
	cmpq	(%rcx), %rax
	jne	LBB0_50
## %bb.54:
	leaq	L_.str.11(%rip), %rsi
	movl	-44(%rbp), %edi                 ## 4-byte Reload
	xorl	%eax, %eax
	callq	_device_printf
	movq	_ENODEV@GOTPCREL(%rip), %rax
	movl	(%rax), %ebx
	movq	-56(%rbp), %r15                 ## 8-byte Reload
	jmp	LBB0_37
LBB0_50:
	movl	$0, -64(%rbp)
	movq	_IFLIB_INTR_MSI@GOTPCREL(%rip), %rcx
	cmpq	(%rcx), %rax
	jne	LBB0_52
## %bb.51:
	xorl	%edi, %edi
	cmpl	$1, %r12d
	sete	%dil
	callq	_MPASS
	movl	$1, -64(%rbp)
LBB0_52:
	movq	-56(%rbp), %r15                 ## 8-byte Reload
	movl	32(%r15), %esi
	movq	8(%r15), %rdx
	leaq	L_.str.9(%rip), %r8
	leaq	-64(%rbp), %rcx
	movq	%r15, %rdi
	callq	_iflib_legacy_setup
	testl	%eax, %eax
	je	LBB0_55
## %bb.53:
	leaq	L_.str.10(%rip), %rsi
LBB0_48:
	movl	-44(%rbp), %edi                 ## 4-byte Reload
	movl	%eax, %ebx
	movl	%eax, %edx
	xorl	%eax, %eax
	callq	_device_printf
	jmp	LBB0_38
LBB0_42:
	leaq	L_.str.6(%rip), %rsi
	jmp	LBB0_43
LBB0_55:
	movl	24(%r15), %edi
	movl	28(%r15), %esi
	callq	_ether_ifattach
	movq	%r15, %rdi
	callq	_IFDI_ATTACH_POST
	testl	%eax, %eax
	je	LBB0_58
## %bb.56:
	leaq	L_.str.12(%rip), %rsi
	movl	-44(%rbp), %edi                 ## 4-byte Reload
	jmp	LBB0_57
LBB0_45:
	leaq	L_.str.7(%rip), %rsi
LBB0_43:
	movl	-44(%rbp), %edi                 ## 4-byte Reload
	xorl	%eax, %eax
	callq	_device_printf
	movq	_EOPNOTSUPP@GOTPCREL(%rip), %rax
	movl	(%rax), %ebx
	jmp	LBB0_38
LBB0_58:
	movl	%r14d, %edi
	callq	_if_getcapabilities
	movq	_IFCAP_VLAN_MTU@GOTPCREL(%rip), %rcx
	testl	%eax, (%rcx)
	je	LBB0_60
## %bb.59:
	movl	%r14d, %edi
	movl	$4, %esi
	callq	_if_setifheaderlen
LBB0_60:
	movq	%r15, %rdi
	callq	_iflib_netmap_attach
	testl	%eax, %eax
	je	LBB0_62
## %bb.61:
	movl	16(%r15), %edi
	leaq	L_.str.13(%rip), %rsi
LBB0_57:
	movl	%eax, %ebx
	movl	%eax, %edx
	xorl	%eax, %eax
	callq	_device_printf
	movl	24(%r15), %edi
	callq	_ether_ifdetach
	jmp	LBB0_37
LBB0_62:
	movq	-88(%rbp), %rax                 ## 8-byte Reload
	movq	%r15, (%rax)
	movl	24(%r15), %edi
	movq	_iflib@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	callq	_DEBUGNET_SET
	movl	24(%r15), %edi
	movq	_iflib_if_get_counter@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	callq	_if_setgetcounterfn
	movq	%r15, %rdi
	callq	_iflib_add_device_sysctl_post
	movq	%r15, %rdi
	callq	_iflib_add_pfil
	movq	_IFC_INIT_DONE@GOTPCREL(%rip), %rax
	movl	(%rax), %eax
	orl	%eax, (%r15)
	movq	%r15, %rdi
	callq	_CTX_UNLOCK
	xorl	%eax, %eax
	jmp	LBB0_63
	.cfi_endproc
                                        ## -- End function
	.comm	_M_IFLIB,4,2                    ## @M_IFLIB
	.comm	_M_WAITOK,4,2                   ## @M_WAITOK
	.comm	_M_ZERO,4,2                     ## @M_ZERO
	.comm	_IFC_SC_ALLOCATED,4,2           ## @IFC_SC_ALLOCATED
	.section	__TEXT,__cstring,cstring_literals
L_.str:                                 ## @.str
	.asciz	"iflib_register failed %d\n"

L_.str.1:                               ## @.str.1
	.asciz	"IFDI_ATTACH_PRE failed %d\n"

	.comm	_IFLIB_DRIVER_MEDIA,4,2         ## @IFLIB_DRIVER_MEDIA
	.comm	_IFCAP_HWSTATS,4,2              ## @IFCAP_HWSTATS
	.comm	_IFCAP_NOMAP,4,2                ## @IFCAP_NOMAP
	.comm	_IFLIB_HAS_TXCQ,4,2             ## @IFLIB_HAS_TXCQ
	.comm	_IFLIB_HAS_RXCQ,4,2             ## @IFLIB_HAS_RXCQ
L_.str.2:                               ## @.str.2
	.asciz	"Using %d TX descriptors and %d RX descriptors\n"

	.comm	_MAX_SINGLE_PACKET_FRACTION,4,2 ## @MAX_SINGLE_PACKET_FRACTION
	.comm	_IFCAP_TSO,4,2                  ## @IFCAP_TSO
	.comm	_IP_MAXPACKET,4,2               ## @IP_MAXPACKET
	.comm	__task_fn_admin,4,2             ## @_task_fn_admin
	.comm	_qgroup_if_config_tqg,4,2       ## @qgroup_if_config_tqg
L_.str.3:                               ## @.str.3
	.asciz	"admin"

	.comm	_INTR_CPUS,4,2                  ## @INTR_CPUS
L_.str.4:                               ## @.str.4
	.asciz	"Unable to fetch CPU list\n"

	.comm	_all_cpus,4,2                   ## @all_cpus
	.comm	_IFLIB_SKIP_MSIX,4,2            ## @IFLIB_SKIP_MSIX
	.comm	_IFLIB_INTR_LEGACY,8,3          ## @IFLIB_INTR_LEGACY
L_.str.5:                               ## @.str.5
	.asciz	"Unable to allocate queue memory\n"

	.comm	_ifdi_rx_queue_intr_enable_desc,4,2 ## @ifdi_rx_queue_intr_enable_desc
L_.str.6:                               ## @.str.6
	.asciz	"MSI-X requires ifdi_rx_queue_intr_enable method"

	.comm	_EOPNOTSUPP,4,2                 ## @EOPNOTSUPP
	.comm	_ifdi_tx_queue_intr_enable_desc,4,2 ## @ifdi_tx_queue_intr_enable_desc
L_.str.7:                               ## @.str.7
	.asciz	"MSI-X requires ifdi_tx_queue_intr_enable method"

L_.str.8:                               ## @.str.8
	.asciz	"IFDI_MSIX_INTR_ASSIGN failed %d\n"

	.comm	_IFLIB_INTR_MSIX,8,3            ## @IFLIB_INTR_MSIX
	.comm	_IFLIB_INTR_MSI,8,3             ## @IFLIB_INTR_MSI
L_.str.9:                               ## @.str.9
	.asciz	"irq0"

L_.str.10:                              ## @.str.10
	.asciz	"iflib_legacy_setup failed %d\n"

L_.str.11:                              ## @.str.11
	.asciz	"Cannot use iflib with only 1 MSI-X interrupt!\n"

	.comm	_ENODEV,4,2                     ## @ENODEV
L_.str.12:                              ## @.str.12
	.asciz	"IFDI_ATTACH_POST failed %d\n"

	.comm	_IFCAP_VLAN_MTU,4,2             ## @IFCAP_VLAN_MTU
L_.str.13:                              ## @.str.13
	.asciz	"netmap attach failed: %d\n"

	.comm	_iflib,4,2                      ## @iflib
	.comm	_iflib_if_get_counter,4,2       ## @iflib_if_get_counter
	.comm	_IFC_INIT_DONE,4,2              ## @IFC_INIT_DONE
	.comm	_IFCAP_TXCSUM,4,2               ## @IFCAP_TXCSUM
.subsections_via_symbols

	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.globl	_iflib_device_register          ; -- Begin function iflib_device_register
	.p2align	2
_iflib_device_register:                 ; @iflib_device_register
	.cfi_startproc
; %bb.0:
	sub	sp, sp, #128
	.cfi_def_cfa_offset 128
	stp	x28, x27, [sp, #32]             ; 16-byte Folded Spill
	stp	x26, x25, [sp, #48]             ; 16-byte Folded Spill
	stp	x24, x23, [sp, #64]             ; 16-byte Folded Spill
	stp	x22, x21, [sp, #80]             ; 16-byte Folded Spill
	stp	x20, x19, [sp, #96]             ; 16-byte Folded Spill
	stp	x29, x30, [sp, #112]            ; 16-byte Folded Spill
	add	x29, sp, #112
	.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	x21, x3
	mov	x24, x2
	mov	x22, x1
	mov	x20, x0
Lloh0:
	adrp	x26, _M_IFLIB@GOTPAGE
Lloh1:
	ldr	x26, [x26, _M_IFLIB@GOTPAGEOFF]
Lloh2:
	adrp	x23, _M_WAITOK@GOTPAGE
Lloh3:
	ldr	x23, [x23, _M_WAITOK@GOTPAGEOFF]
	ldr	w1, [x26]
	ldr	w8, [x23]
Lloh4:
	adrp	x25, _M_ZERO@GOTPAGE
Lloh5:
	ldr	x25, [x25, _M_ZERO@GOTPAGEOFF]
	ldr	w9, [x25]
	orr	w2, w9, w8
	mov	w0, #176
	bl	_malloc
	mov	x19, x0
Lloh6:
	adrp	x27, _IFC_SC_ALLOCATED@GOTPAGE
Lloh7:
	ldr	x27, [x27, _IFC_SC_ALLOCATED@GOTPAGEOFF]
	cbnz	x22, LBB0_2
; %bb.1:
	ldr	x8, [x24, #8]
	ldr	w0, [x8]
	ldr	w1, [x26]
	ldr	w8, [x23]
	ldr	w9, [x25]
	orr	w2, w9, w8
	bl	_malloc
	mov	x22, x0
	mov	x0, x20
	mov	x1, x19
	bl	_device_set_softc
	ldr	w8, [x27]
	ldr	w9, [x19]
	orr	w8, w9, w8
	str	w8, [x19]
LBB0_2:
	str	x24, [x19, #168]
	str	w20, [x19, #16]
	str	x22, [x19, #8]
	mov	x0, x19
	bl	_iflib_register
	cbz	w0, LBB0_4
; %bb.3:
	mov	x25, x0
	str	x25, [sp]
Lloh8:
	adrp	x1, l_.str@PAGE
Lloh9:
	add	x1, x1, l_.str@PAGEOFF
	mov	x0, x20
	bl	_device_printf
	b	LBB0_35
LBB0_4:
	mov	x0, x19
	bl	_iflib_add_device_sysctl_pre
	ldr	w22, [x19, #24]
	mov	x0, x19
	bl	_iflib_reset_qvalues
	mov	x0, x19
	bl	_CTX_LOCK
	mov	x0, x19
	bl	_IFDI_ATTACH_PRE
	cbz	w0, LBB0_6
; %bb.5:
	mov	x25, x0
	str	x25, [sp]
Lloh10:
	adrp	x1, l_.str.1@PAGE
Lloh11:
	add	x1, x1, l_.str.1@PAGEOFF
	mov	x0, x20
	bl	_device_printf
                                        ; kill: def $w25 killed $w25 killed $x25 def $x25
	b	LBB0_34
LBB0_6:
	add	x0, x19, #56
	bl	__iflib_pre_assert
	ldr	x8, [x19, #160]
	ldr	w8, [x8]
	str	w8, [x19, #48]
	ldr	w8, [x24]
Lloh12:
	adrp	x9, _IFLIB_DRIVER_MEDIA@GOTPAGE
Lloh13:
	ldr	x9, [x9, _IFLIB_DRIVER_MEDIA@GOTPAGEOFF]
Lloh14:
	ldr	w9, [x9]
	tst	w9, w8
	b.eq	LBB0_8
; %bb.7:
	ldr	w8, [x19, #152]
	str	w8, [x19, #44]
LBB0_8:
	ldr	w8, [x19, #56]
Lloh15:
	adrp	x23, _IFCAP_HWSTATS@GOTPAGE
Lloh16:
	ldr	x23, [x23, _IFCAP_HWSTATS@GOTPAGEOFF]
	ldr	w9, [x23]
	orr	w8, w9, w8
Lloh17:
	adrp	x25, _IFCAP_NOMAP@GOTPAGE
Lloh18:
	ldr	x25, [x25, _IFCAP_NOMAP@GOTPAGEOFF]
	ldr	w9, [x25]
	orr	w1, w8, w9
	mov	x0, x22
	bl	_if_setcapabilities
	ldr	w8, [x19, #64]
	ldr	w9, [x23]
	orr	w8, w9, w8
	ldr	w9, [x25]
	orr	w1, w8, w9
	mov	x0, x22
	bl	_if_setcapenable
	ldp	w9, w8, [x19, #68]
	cbz	w9, LBB0_10
; %bb.9:
	cmp	w8, #0
	ccmp	w8, w9, #0, ne
	b.ge	LBB0_11
LBB0_10:
	str	w8, [x19, #68]
LBB0_11:
	ldp	w9, w8, [x19, #76]
	cbz	w9, LBB0_13
; %bb.12:
	cmp	w8, #0
	ccmp	w8, w9, #0, ne
	b.ge	LBB0_14
LBB0_13:
	str	w8, [x19, #76]
LBB0_14:
	ldr	w8, [x24]
Lloh19:
	adrp	x9, _IFLIB_HAS_TXCQ@GOTPAGE
Lloh20:
	ldr	x9, [x9, _IFLIB_HAS_TXCQ@GOTPAGEOFF]
Lloh21:
	ldr	w9, [x9]
	tst	w9, w8
	cset	w23, ne
Lloh22:
	adrp	x9, _IFLIB_HAS_RXCQ@GOTPAGE
Lloh23:
	ldr	x9, [x9, _IFLIB_HAS_RXCQ@GOTPAGEOFF]
Lloh24:
	ldr	w9, [x9]
	tst	w9, w8
	cset	w8, ne
	ldr	x9, [x19, #88]
	lsl	x25, x23, #2
	ldr	x10, [x19, #144]
	ldr	w9, [x9, x25]
	ldr	w8, [x10, w8, uxtw #2]
	stp	x9, x8, [sp]
Lloh25:
	adrp	x1, l_.str.2@PAGE
Lloh26:
	add	x1, x1, l_.str.2@PAGEOFF
	mov	x0, x20
	bl	_device_printf
	ldr	x8, [x19, #88]
	ldr	w8, [x8, x25]
	ldr	w9, [x19, #96]
Lloh27:
	adrp	x25, _MAX_SINGLE_PACKET_FRACTION@GOTPAGE
Lloh28:
	ldr	x25, [x25, _MAX_SINGLE_PACKET_FRACTION@GOTPAGEOFF]
	ldr	w10, [x25]
	sdiv	w1, w8, w10
	cmp	w9, w1
	b.le	LBB0_16
; %bb.15:
	mov	w0, #1
	bl	_max
	str	w0, [x19, #96]
	ldr	x8, [x19, #88]
	ldr	w8, [x8, x23, lsl #2]
	ldr	w9, [x25]
	sdiv	w1, w8, w9
LBB0_16:
	ldr	w8, [x19, #100]
	cmp	w8, w1
	b.le	LBB0_18
; %bb.17:
	mov	w0, #1
	bl	_max
	str	w0, [x19, #100]
LBB0_18:
	mov	x0, x22
	bl	_if_getcapabilities
Lloh29:
	adrp	x8, _IFCAP_TSO@GOTPAGE
Lloh30:
	ldr	x8, [x8, _IFCAP_TSO@GOTPAGEOFF]
Lloh31:
	ldr	w8, [x8]
	tst	w8, w0
	b.eq	LBB0_20
; %bb.19:
	ldr	w0, [x19, #140]
Lloh32:
	adrp	x8, _IP_MAXPACKET@GOTPAGE
Lloh33:
	ldr	x8, [x8, _IP_MAXPACKET@GOTPAGEOFF]
Lloh34:
	ldr	w1, [x8]
	bl	_min
	mov	x1, x0
	mov	x0, x22
	bl	_if_sethwtsomax
	ldr	w8, [x19, #100]
	sub	w1, w8, #3
	mov	x0, x22
	bl	_if_sethwtsomaxsegcount
	ldr	w1, [x19, #136]
	mov	x0, x22
	bl	_if_sethwtsomaxsegsize
LBB0_20:
	ldr	w8, [x19, #104]
	cbnz	w8, LBB0_22
; %bb.21:
	mov	w8, #64
	str	w8, [x19, #104]
LBB0_22:
	sub	w8, w8, #1
	str	w8, [x19, #108]
	add	x23, x19, #20
Lloh35:
	adrp	x8, __task_fn_admin@GOTPAGE
Lloh36:
	ldr	x8, [x8, __task_fn_admin@GOTPAGEOFF]
Lloh37:
	ldr	w2, [x8]
	mov	x0, x23
	mov	w1, #0
	mov	x3, x19
	bl	_GROUPTASK_INIT
Lloh38:
	adrp	x28, _qgroup_if_config_tqg@GOTPAGE
Lloh39:
	ldr	x28, [x28, _qgroup_if_config_tqg@GOTPAGEOFF]
	ldr	w0, [x28]
Lloh40:
	adrp	x5, l_.str.3@PAGE
Lloh41:
	add	x5, x5, l_.str.3@PAGEOFF
	mov	x1, x23
	mov	x2, x19
	mov	x3, #0
	mov	x4, #0
	bl	_taskqgroup_attach
Lloh42:
	adrp	x8, _INTR_CPUS@GOTPAGE
Lloh43:
	ldr	x8, [x8, _INTR_CPUS@GOTPAGEOFF]
Lloh44:
	ldr	w1, [x8]
	add	x25, x19, #40
	mov	x0, x20
	mov	w2, #4
	mov	x3, x25
	bl	_bus_get_cpus
	cbz	x0, LBB0_24
; %bb.23:
Lloh45:
	adrp	x1, l_.str.4@PAGE
Lloh46:
	add	x1, x1, l_.str.4@PAGEOFF
	mov	x0, x20
	bl	_device_printf
Lloh47:
	adrp	x0, _all_cpus@GOTPAGE
Lloh48:
	ldr	x0, [x0, _all_cpus@GOTPAGEOFF]
	mov	x1, x25
	bl	_CPU_COPY
LBB0_24:
	mov	x0, x25
	bl	_CPU_COUNT
	cmp	x0, #0
	cset	w0, gt
	bl	_MPASS
	ldr	w8, [x24]
Lloh49:
	adrp	x9, _IFLIB_SKIP_MSIX@GOTPAGE
Lloh50:
	ldr	x9, [x9, _IFLIB_SKIP_MSIX@GOTPAGEOFF]
Lloh51:
	ldr	w9, [x9]
	tst	w9, w8
	b.eq	LBB0_26
; %bb.25:
	ldr	w24, [x19, #112]
	b	LBB0_29
LBB0_26:
	ldr	x8, [x19, #120]
	cbz	x8, LBB0_28
; %bb.27:
	mov	x0, x19
	bl	_iflib_msix_init
	mov	x24, x0
	b	LBB0_29
LBB0_28:
	mov	w24, #0
	mov	w8, #1
	str	w8, [x19, #112]
	str	w8, [x19, #68]
	str	w8, [x19, #76]
Lloh52:
	adrp	x8, _IFLIB_INTR_LEGACY@GOTPAGE
Lloh53:
	ldr	x8, [x8, _IFLIB_INTR_LEGACY@GOTPAGEOFF]
Lloh54:
	ldr	x8, [x8]
	str	x8, [x19, #128]
LBB0_29:
	mov	x0, x19
	bl	_iflib_queues_alloc
	cbz	w0, LBB0_32
; %bb.30:
	mov	x25, x0
Lloh55:
	adrp	x1, l_.str.5@PAGE
Lloh56:
	add	x1, x1, l_.str.5@PAGEOFF
	mov	x0, x20
	bl	_device_printf
LBB0_31:
	mov	x0, x19
	bl	_iflib_free_intr_mem
	b	LBB0_33
LBB0_32:
	mov	x0, x19
	bl	_iflib_qset_structures_setup
	mov	x25, x0
	cbz	w0, LBB0_39
LBB0_33:
	mov	x0, x19
	bl	_iflib_tx_structures_free
	mov	x0, x19
	bl	_iflib_rx_structures_free
	ldr	w0, [x28]
	mov	x1, x23
	bl	_taskqgroup_detach
	mov	x0, x19
	bl	_IFDI_DETACH
LBB0_34:
	mov	x0, x19
	bl	_CTX_UNLOCK
	mov	x0, x19
	bl	_iflib_deregister
LBB0_35:
	ldr	w0, [x19, #16]
	mov	x1, #0
	bl	_device_set_softc
	ldr	w8, [x19]
	ldr	w9, [x27]
	tst	w9, w8
	b.eq	LBB0_37
; %bb.36:
	ldr	x0, [x19, #8]
	ldr	w1, [x26]
	bl	_free
LBB0_37:
	ldr	w1, [x26]
	mov	x0, x19
	bl	_free
LBB0_38:
	mov	x0, x25
	ldp	x29, x30, [sp, #112]            ; 16-byte Folded Reload
	ldp	x20, x19, [sp, #96]             ; 16-byte Folded Reload
	ldp	x22, x21, [sp, #80]             ; 16-byte Folded Reload
	ldp	x24, x23, [sp, #64]             ; 16-byte Folded Reload
	ldp	x26, x25, [sp, #48]             ; 16-byte Folded Reload
	ldp	x28, x27, [sp, #32]             ; 16-byte Folded Reload
	add	sp, sp, #128
	ret
LBB0_39:
	mov	x0, x19
	bl	_get_ctx_core_offset
	str	w0, [x19, #36]
	mov	x0, x19
	bl	_IFDI_INTR_DISABLE
	cmp	w24, #2
	b.lt	LBB0_44
; %bb.40:
	ldr	x8, [x19]
	ldr	w0, [x8]
Lloh57:
	adrp	x25, _ifdi_rx_queue_intr_enable_desc@GOTPAGE
Lloh58:
	ldr	x25, [x25, _ifdi_rx_queue_intr_enable_desc@GOTPAGEOFF]
	mov	x1, #0
	mov	x2, x25
	bl	_kobj_lookup_method
	cmp	x0, x25
	b.eq	LBB0_51
; %bb.41:
	ldr	x8, [x19]
	ldr	w0, [x8]
Lloh59:
	adrp	x25, _ifdi_tx_queue_intr_enable_desc@GOTPAGE
Lloh60:
	ldr	x25, [x25, _ifdi_tx_queue_intr_enable_desc@GOTPAGEOFF]
	mov	x1, #0
	mov	x2, x25
	bl	_kobj_lookup_method
	cmp	x0, x25
	b.eq	LBB0_54
; %bb.42:
	mov	x0, x19
	mov	x1, x24
	bl	_IFDI_MSIX_INTR_ASSIGN
	cbz	w0, LBB0_52
; %bb.43:
	mov	x25, x0
	str	x25, [sp]
Lloh61:
	adrp	x1, l_.str.8@PAGE
Lloh62:
	add	x1, x1, l_.str.8@PAGEOFF
	b	LBB0_50
LBB0_44:
	ldr	x8, [x19, #128]
Lloh63:
	adrp	x9, _IFLIB_INTR_MSIX@GOTPAGE
Lloh64:
	ldr	x9, [x9, _IFLIB_INTR_MSIX@GOTPAGEOFF]
Lloh65:
	ldr	x9, [x9]
	cmp	x8, x9
	b.ne	LBB0_46
; %bb.45:
Lloh66:
	adrp	x1, l_.str.11@PAGE
Lloh67:
	add	x1, x1, l_.str.11@PAGEOFF
	mov	x0, x20
	bl	_device_printf
Lloh68:
	adrp	x8, _ENODEV@GOTPAGE
Lloh69:
	ldr	x8, [x8, _ENODEV@GOTPAGEOFF]
Lloh70:
	ldr	w25, [x8]
	b	LBB0_31
LBB0_46:
	str	wzr, [sp, #28]
Lloh71:
	adrp	x9, _IFLIB_INTR_MSI@GOTPAGE
Lloh72:
	ldr	x9, [x9, _IFLIB_INTR_MSI@GOTPAGEOFF]
Lloh73:
	ldr	x9, [x9]
	cmp	x8, x9
	b.ne	LBB0_48
; %bb.47:
	cmp	w24, #1
	cset	w0, eq
	bl	_MPASS
	mov	w8, #1
	str	w8, [sp, #28]
LBB0_48:
	ldr	w1, [x19, #32]
	ldr	x2, [x19, #8]
Lloh74:
	adrp	x4, l_.str.9@PAGE
Lloh75:
	add	x4, x4, l_.str.9@PAGEOFF
	add	x3, sp, #28
	mov	x0, x19
	bl	_iflib_legacy_setup
	cbz	w0, LBB0_52
; %bb.49:
	mov	x25, x0
	str	x25, [sp]
Lloh76:
	adrp	x1, l_.str.10@PAGE
Lloh77:
	add	x1, x1, l_.str.10@PAGEOFF
LBB0_50:
	mov	x0, x20
	bl	_device_printf
                                        ; kill: def $w25 killed $w25 killed $x25 def $x25
	b	LBB0_33
LBB0_51:
Lloh78:
	adrp	x1, l_.str.6@PAGE
Lloh79:
	add	x1, x1, l_.str.6@PAGEOFF
	b	LBB0_55
LBB0_52:
	ldp	w0, w1, [x19, #24]
	bl	_ether_ifattach
	mov	x0, x19
	bl	_IFDI_ATTACH_POST
	cbz	w0, LBB0_56
; %bb.53:
	mov	x25, x0
	str	x25, [sp]
Lloh80:
	adrp	x1, l_.str.12@PAGE
Lloh81:
	add	x1, x1, l_.str.12@PAGEOFF
	mov	x0, x20
	b	LBB0_60
LBB0_54:
Lloh82:
	adrp	x1, l_.str.7@PAGE
Lloh83:
	add	x1, x1, l_.str.7@PAGEOFF
LBB0_55:
	mov	x0, x20
	bl	_device_printf
Lloh84:
	adrp	x8, _EOPNOTSUPP@GOTPAGE
Lloh85:
	ldr	x8, [x8, _EOPNOTSUPP@GOTPAGEOFF]
Lloh86:
	ldr	w25, [x8]
	b	LBB0_33
LBB0_56:
	mov	x0, x22
	bl	_if_getcapabilities
Lloh87:
	adrp	x8, _IFCAP_VLAN_MTU@GOTPAGE
Lloh88:
	ldr	x8, [x8, _IFCAP_VLAN_MTU@GOTPAGEOFF]
Lloh89:
	ldr	w8, [x8]
	tst	w8, w0
	b.eq	LBB0_58
; %bb.57:
	mov	x0, x22
	mov	w1, #4
	bl	_if_setifheaderlen
LBB0_58:
	mov	x0, x19
	bl	_iflib_netmap_attach
	mov	x25, x0
	cbz	w0, LBB0_61
; %bb.59:
	ldr	w0, [x19, #16]
	str	x25, [sp]
Lloh90:
	adrp	x1, l_.str.13@PAGE
Lloh91:
	add	x1, x1, l_.str.13@PAGEOFF
LBB0_60:
	bl	_device_printf
                                        ; kill: def $w25 killed $w25 killed $x25 def $x25
	ldr	w0, [x19, #24]
	bl	_ether_ifdetach
	b	LBB0_31
LBB0_61:
	str	x19, [x21]
	ldr	w0, [x19, #24]
Lloh92:
	adrp	x8, _iflib@GOTPAGE
Lloh93:
	ldr	x8, [x8, _iflib@GOTPAGEOFF]
Lloh94:
	ldr	w1, [x8]
	bl	_DEBUGNET_SET
	ldr	w0, [x19, #24]
Lloh95:
	adrp	x8, _iflib_if_get_counter@GOTPAGE
Lloh96:
	ldr	x8, [x8, _iflib_if_get_counter@GOTPAGEOFF]
Lloh97:
	ldr	w1, [x8]
	bl	_if_setgetcounterfn
	mov	x0, x19
	bl	_iflib_add_device_sysctl_post
	mov	x0, x19
	bl	_iflib_add_pfil
Lloh98:
	adrp	x8, _IFC_INIT_DONE@GOTPAGE
Lloh99:
	ldr	x8, [x8, _IFC_INIT_DONE@GOTPAGEOFF]
Lloh100:
	ldr	w8, [x8]
	ldr	w9, [x19]
	orr	w8, w9, w8
	str	w8, [x19]
	mov	x0, x19
	bl	_CTX_UNLOCK
	b	LBB0_38
	.loh AdrpLdrGot	Lloh6, Lloh7
	.loh AdrpLdrGot	Lloh4, Lloh5
	.loh AdrpLdrGot	Lloh2, Lloh3
	.loh AdrpLdrGot	Lloh0, Lloh1
	.loh AdrpAdd	Lloh8, Lloh9
	.loh AdrpAdd	Lloh10, Lloh11
	.loh AdrpLdrGotLdr	Lloh12, Lloh13, Lloh14
	.loh AdrpLdrGot	Lloh17, Lloh18
	.loh AdrpLdrGot	Lloh15, Lloh16
	.loh AdrpLdrGot	Lloh27, Lloh28
	.loh AdrpAdd	Lloh25, Lloh26
	.loh AdrpLdrGotLdr	Lloh22, Lloh23, Lloh24
	.loh AdrpLdrGotLdr	Lloh19, Lloh20, Lloh21
	.loh AdrpLdrGotLdr	Lloh29, Lloh30, Lloh31
	.loh AdrpLdrGotLdr	Lloh32, Lloh33, Lloh34
	.loh AdrpLdrGotLdr	Lloh42, Lloh43, Lloh44
	.loh AdrpAdd	Lloh40, Lloh41
	.loh AdrpLdrGot	Lloh38, Lloh39
	.loh AdrpLdrGotLdr	Lloh35, Lloh36, Lloh37
	.loh AdrpLdrGot	Lloh47, Lloh48
	.loh AdrpAdd	Lloh45, Lloh46
	.loh AdrpLdrGotLdr	Lloh49, Lloh50, Lloh51
	.loh AdrpLdrGotLdr	Lloh52, Lloh53, Lloh54
	.loh AdrpAdd	Lloh55, Lloh56
	.loh AdrpLdrGot	Lloh57, Lloh58
	.loh AdrpLdrGot	Lloh59, Lloh60
	.loh AdrpAdd	Lloh61, Lloh62
	.loh AdrpLdrGotLdr	Lloh63, Lloh64, Lloh65
	.loh AdrpLdrGotLdr	Lloh68, Lloh69, Lloh70
	.loh AdrpAdd	Lloh66, Lloh67
	.loh AdrpLdrGotLdr	Lloh71, Lloh72, Lloh73
	.loh AdrpAdd	Lloh74, Lloh75
	.loh AdrpAdd	Lloh76, Lloh77
	.loh AdrpAdd	Lloh78, Lloh79
	.loh AdrpAdd	Lloh80, Lloh81
	.loh AdrpAdd	Lloh82, Lloh83
	.loh AdrpLdrGotLdr	Lloh84, Lloh85, Lloh86
	.loh AdrpLdrGotLdr	Lloh87, Lloh88, Lloh89
	.loh AdrpAdd	Lloh90, Lloh91
	.loh AdrpLdrGotLdr	Lloh98, Lloh99, Lloh100
	.loh AdrpLdrGotLdr	Lloh95, Lloh96, Lloh97
	.loh AdrpLdrGotLdr	Lloh92, Lloh93, Lloh94
	.cfi_endproc
                                        ; -- End function
	.comm	_M_IFLIB,4,2                    ; @M_IFLIB
	.comm	_M_WAITOK,4,2                   ; @M_WAITOK
	.comm	_M_ZERO,4,2                     ; @M_ZERO
	.comm	_IFC_SC_ALLOCATED,4,2           ; @IFC_SC_ALLOCATED
	.section	__TEXT,__cstring,cstring_literals
l_.str:                                 ; @.str
	.asciz	"iflib_register failed %d\n"

l_.str.1:                               ; @.str.1
	.asciz	"IFDI_ATTACH_PRE failed %d\n"

	.comm	_IFLIB_DRIVER_MEDIA,4,2         ; @IFLIB_DRIVER_MEDIA
	.comm	_IFCAP_HWSTATS,4,2              ; @IFCAP_HWSTATS
	.comm	_IFCAP_NOMAP,4,2                ; @IFCAP_NOMAP
	.comm	_IFLIB_HAS_TXCQ,4,2             ; @IFLIB_HAS_TXCQ
	.comm	_IFLIB_HAS_RXCQ,4,2             ; @IFLIB_HAS_RXCQ
l_.str.2:                               ; @.str.2
	.asciz	"Using %d TX descriptors and %d RX descriptors\n"

	.comm	_MAX_SINGLE_PACKET_FRACTION,4,2 ; @MAX_SINGLE_PACKET_FRACTION
	.comm	_IFCAP_TSO,4,2                  ; @IFCAP_TSO
	.comm	_IP_MAXPACKET,4,2               ; @IP_MAXPACKET
	.comm	__task_fn_admin,4,2             ; @_task_fn_admin
	.comm	_qgroup_if_config_tqg,4,2       ; @qgroup_if_config_tqg
l_.str.3:                               ; @.str.3
	.asciz	"admin"

	.comm	_INTR_CPUS,4,2                  ; @INTR_CPUS
l_.str.4:                               ; @.str.4
	.asciz	"Unable to fetch CPU list\n"

	.comm	_all_cpus,4,2                   ; @all_cpus
	.comm	_IFLIB_SKIP_MSIX,4,2            ; @IFLIB_SKIP_MSIX
	.comm	_IFLIB_INTR_LEGACY,8,3          ; @IFLIB_INTR_LEGACY
l_.str.5:                               ; @.str.5
	.asciz	"Unable to allocate queue memory\n"

	.comm	_ifdi_rx_queue_intr_enable_desc,4,2 ; @ifdi_rx_queue_intr_enable_desc
l_.str.6:                               ; @.str.6
	.asciz	"MSI-X requires ifdi_rx_queue_intr_enable method"

	.comm	_EOPNOTSUPP,4,2                 ; @EOPNOTSUPP
	.comm	_ifdi_tx_queue_intr_enable_desc,4,2 ; @ifdi_tx_queue_intr_enable_desc
l_.str.7:                               ; @.str.7
	.asciz	"MSI-X requires ifdi_tx_queue_intr_enable method"

l_.str.8:                               ; @.str.8
	.asciz	"IFDI_MSIX_INTR_ASSIGN failed %d\n"

	.comm	_IFLIB_INTR_MSIX,8,3            ; @IFLIB_INTR_MSIX
	.comm	_IFLIB_INTR_MSI,8,3             ; @IFLIB_INTR_MSI
l_.str.9:                               ; @.str.9
	.asciz	"irq0"

l_.str.10:                              ; @.str.10
	.asciz	"iflib_legacy_setup failed %d\n"

l_.str.11:                              ; @.str.11
	.asciz	"Cannot use iflib with only 1 MSI-X interrupt!\n"

	.comm	_ENODEV,4,2                     ; @ENODEV
l_.str.12:                              ; @.str.12
	.asciz	"IFDI_ATTACH_POST failed %d\n"

	.comm	_IFCAP_VLAN_MTU,4,2             ; @IFCAP_VLAN_MTU
l_.str.13:                              ; @.str.13
	.asciz	"netmap attach failed: %d\n"

	.comm	_iflib,4,2                      ; @iflib
	.comm	_iflib_if_get_counter,4,2       ; @iflib_if_get_counter
	.comm	_IFC_INIT_DONE,4,2              ; @IFC_INIT_DONE
	.comm	_IFCAP_TXCSUM,4,2               ; @IFCAP_TXCSUM
.subsections_via_symbols
