	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	4, 0x90                         ## -- Begin function bnx2x_mcast_refresh_registry_e2
_bnx2x_mcast_refresh_registry_e2:       ## @bnx2x_mcast_refresh_registry_e2
	.cfi_startproc
## %bb.0:
	pushq	%rbp
	.cfi_def_cfa_offset 16
	.cfi_offset %rbp, -16
	movq	%rsp, %rbp
	.cfi_def_cfa_register %rbp
	movq	%rsi, %rdi
	movq	_BNX2X_MCAST_VEC_SZ@GOTPCREL(%rip), %rax
	movl	(%rax), %r8d
	testl	%r8d, %r8d
	jle	LBB0_1
## %bb.2:
	movq	8(%rdi), %r10
	cmpl	$1, %r8d
	jne	LBB0_4
## %bb.3:
	xorl	%edx, %edx
	xorl	%esi, %esi
LBB0_10:
	testb	$1, %r8b
	je	LBB0_13
## %bb.11:
	movl	(%r10,%rdx,4), %eax
	testl	%eax, %eax
	je	LBB0_13
	.p2align	4, 0x90
LBB0_12:                                ## =>This Inner Loop Header: Depth=1
	leal	-1(%rax), %ecx
	incl	%esi
	andl	%eax, %ecx
	movl	%ecx, %eax
	jne	LBB0_12
	jmp	LBB0_13
LBB0_1:
	xorl	%esi, %esi
LBB0_13:
	callq	*(%rdi)
	xorl	%eax, %eax
	popq	%rbp
	retq
LBB0_4:
	movl	%r8d, %r9d
	andl	$-2, %r9d
	xorl	%edx, %edx
	xorl	%esi, %esi
	jmp	LBB0_5
	.p2align	4, 0x90
LBB0_9:                                 ##   in Loop: Header=BB0_5 Depth=1
	addq	$2, %rdx
	cmpq	%r9, %rdx
	je	LBB0_10
LBB0_5:                                 ## =>This Loop Header: Depth=1
                                        ##     Child Loop BB0_6 Depth 2
                                        ##     Child Loop BB0_8 Depth 2
	movl	(%r10,%rdx,4), %eax
	testl	%eax, %eax
	je	LBB0_7
	.p2align	4, 0x90
LBB0_6:                                 ##   Parent Loop BB0_5 Depth=1
                                        ## =>  This Inner Loop Header: Depth=2
	leal	-1(%rax), %ecx
	incl	%esi
	andl	%eax, %ecx
	movl	%ecx, %eax
	jne	LBB0_6
LBB0_7:                                 ##   in Loop: Header=BB0_5 Depth=1
	leaq	(,%rdx,4), %rax
	orq	$4, %rax
	movl	(%r10,%rax), %eax
	testl	%eax, %eax
	je	LBB0_9
	.p2align	4, 0x90
LBB0_8:                                 ##   Parent Loop BB0_5 Depth=1
                                        ## =>  This Inner Loop Header: Depth=2
	leal	-1(%rax), %ecx
	incl	%esi
	andl	%eax, %ecx
	movl	%ecx, %eax
	jne	LBB0_8
	jmp	LBB0_9
	.cfi_endproc
                                        ## -- End function
	.comm	_BNX2X_MCAST_VEC_SZ,4,2         ## @BNX2X_MCAST_VEC_SZ
	.no_dead_strip	_bnx2x_mcast_refresh_registry_e2
.subsections_via_symbols

	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	2                               ; -- Begin function bnx2x_mcast_refresh_registry_e2
_bnx2x_mcast_refresh_registry_e2:       ; @bnx2x_mcast_refresh_registry_e2
	.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	x0, x1
Lloh0:
	adrp	x8, _BNX2X_MCAST_VEC_SZ@GOTPAGE
Lloh1:
	ldr	x8, [x8, _BNX2X_MCAST_VEC_SZ@GOTPAGEOFF]
Lloh2:
	ldr	w8, [x8]
	cmp	w8, #1
	b.lt	LBB0_3
; %bb.1:
	ldr	x9, [x0, #8]
	cmp	w8, #16
	b.hs	LBB0_4
; %bb.2:
	mov	x10, #0
	mov	w1, #0
	b	LBB0_8
LBB0_3:
	mov	w1, #0
	b	LBB0_7
LBB0_4:
	and	x10, x8, #0xfffffff0
	add	x11, x9, #32
	movi.2d	v0, #0000000000000000
	mov	x12, x10
	movi.2d	v1, #0000000000000000
	movi.2d	v2, #0000000000000000
	movi.2d	v3, #0000000000000000
LBB0_5:                                 ; =>This Inner Loop Header: Depth=1
	ldp	q4, q5, [x11, #-32]
	ldp	q6, q7, [x11], #64
	cmeq.4s	v16, v4, #0
	cmeq.4s	v17, v5, #0
	cmeq.4s	v18, v6, #0
	cmeq.4s	v19, v7, #0
	cnt.16b	v4, v4
	uaddlp.8h	v4, v4
	uaddlp.4s	v4, v4
	cnt.16b	v5, v5
	uaddlp.8h	v5, v5
	uaddlp.4s	v5, v5
	cnt.16b	v6, v6
	uaddlp.8h	v6, v6
	uaddlp.4s	v6, v6
	cnt.16b	v7, v7
	uaddlp.8h	v7, v7
	uaddlp.4s	v7, v7
	bic.16b	v4, v4, v16
	add.4s	v0, v0, v4
	bic.16b	v4, v5, v17
	add.4s	v1, v1, v4
	bic.16b	v4, v6, v18
	add.4s	v2, v2, v4
	bic.16b	v4, v7, v19
	add.4s	v3, v3, v4
	subs	x12, x12, #16
	b.ne	LBB0_5
; %bb.6:
	add.4s	v0, v1, v0
	add.4s	v0, v2, v0
	add.4s	v0, v3, v0
	addv.4s	s0, v0
	fmov	w1, s0
	cmp	x10, x8
	b.ne	LBB0_8
LBB0_7:
	ldr	x8, [x0]
	blr	x8
	mov	w0, #0
	ldp	x29, x30, [sp], #16             ; 16-byte Folded Reload
	ret
LBB0_8:
	add	x9, x9, x10, lsl #2
	sub	x8, x8, x10
	b	LBB0_10
LBB0_9:                                 ;   in Loop: Header=BB0_10 Depth=1
	add	x9, x9, #4
	subs	x8, x8, #1
	b.eq	LBB0_7
LBB0_10:                                ; =>This Inner Loop Header: Depth=1
	ldr	w10, [x9]
	cbz	w10, LBB0_9
; %bb.11:                               ;   in Loop: Header=BB0_10 Depth=1
	fmov	d0, x10
	cnt.8b	v0, v0
	uaddlv.8b	h0, v0
	fmov	w10, s0
	add	w1, w10, w1
	b	LBB0_9
	.loh AdrpLdrGotLdr	Lloh0, Lloh1, Lloh2
	.cfi_endproc
                                        ; -- End function
	.comm	_BNX2X_MCAST_VEC_SZ,4,2         ; @BNX2X_MCAST_VEC_SZ
	.no_dead_strip	_bnx2x_mcast_refresh_registry_e2
.subsections_via_symbols
