	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	4, 0x90                         ## -- Begin function mlx5e_hv_vhca_fill_ring_stats
_mlx5e_hv_vhca_fill_ring_stats:         ## @mlx5e_hv_vhca_fill_ring_stats
	.cfi_startproc
## %bb.0:
	pushq	%rbp
	.cfi_def_cfa_offset 16
	.cfi_offset %rbp, -16
	movq	%rsp, %rbp
	.cfi_def_cfa_register %rbp
	movq	8(%rdi), %rcx
	movslq	%esi, %rsi
	shlq	$4, %rsi
	movl	12(%rcx,%rsi), %eax
	movl	%eax, 12(%rdx)
	movl	8(%rcx,%rsi), %eax
	movl	%eax, 8(%rdx)
	movl	(%rdi), %eax
	testl	%eax, %eax
	jle	LBB0_9
## %bb.1:
	movq	(%rcx,%rsi), %rcx
	movl	(%rdx), %esi
	movl	4(%rdx), %edi
	cmpl	$4, %eax
	jae	LBB0_3
## %bb.2:
	xorl	%r8d, %r8d
	jmp	LBB0_6
LBB0_3:
	movl	%eax, %r8d
	andl	$-4, %r8d
	movd	%esi, %xmm8
	movd	%edi, %xmm2
	movq	%rax, %rsi
	shlq	$4, %rsi
	andq	$-64, %rsi
	pxor	%xmm1, %xmm1
	xorl	%edi, %edi
	pxor	%xmm3, %xmm3
	.p2align	4, 0x90
LBB0_4:                                 ## =>This Inner Loop Header: Depth=1
	movdqu	(%rcx,%rdi), %xmm0
	movdqu	16(%rcx,%rdi), %xmm5
	movdqu	32(%rcx,%rdi), %xmm6
	movdqu	48(%rcx,%rdi), %xmm7
	movdqa	%xmm0, %xmm4
	punpckhdq	%xmm5, %xmm4            ## xmm4 = xmm4[2],xmm5[2],xmm4[3],xmm5[3]
	paddd	%xmm4, %xmm2
	movdqa	%xmm6, %xmm4
	punpckhdq	%xmm7, %xmm4            ## xmm4 = xmm4[2],xmm7[2],xmm4[3],xmm7[3]
	paddd	%xmm4, %xmm3
	punpckldq	%xmm5, %xmm0            ## xmm0 = xmm0[0],xmm5[0],xmm0[1],xmm5[1]
	paddd	%xmm0, %xmm8
	punpckldq	%xmm7, %xmm6            ## xmm6 = xmm6[0],xmm7[0],xmm6[1],xmm7[1]
	paddd	%xmm6, %xmm1
	addq	$64, %rdi
	cmpq	%rdi, %rsi
	jne	LBB0_4
## %bb.5:
	paddd	%xmm2, %xmm3
	pshufd	$85, %xmm3, %xmm0               ## xmm0 = xmm3[1,1,1,1]
	paddd	%xmm3, %xmm0
	movd	%xmm0, %edi
	paddd	%xmm8, %xmm1
	pshufd	$85, %xmm1, %xmm0               ## xmm0 = xmm1[1,1,1,1]
	paddd	%xmm1, %xmm0
	movd	%xmm0, %esi
	cmpq	%rax, %r8
	je	LBB0_8
LBB0_6:
	subq	%r8, %rax
	shlq	$4, %r8
	addq	%r8, %rcx
	addq	$8, %rcx
	.p2align	4, 0x90
LBB0_7:                                 ## =>This Inner Loop Header: Depth=1
	addl	(%rcx), %edi
	addl	-8(%rcx), %esi
	addq	$16, %rcx
	decq	%rax
	jne	LBB0_7
LBB0_8:
	movl	%edi, 4(%rdx)
	movl	%esi, (%rdx)
LBB0_9:
	popq	%rbp
	retq
	.cfi_endproc
                                        ## -- End function
	.no_dead_strip	_mlx5e_hv_vhca_fill_ring_stats
.subsections_via_symbols

	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	2                               ; -- Begin function mlx5e_hv_vhca_fill_ring_stats
_mlx5e_hv_vhca_fill_ring_stats:         ; @mlx5e_hv_vhca_fill_ring_stats
	.cfi_startproc
; %bb.0:
                                        ; kill: def $w1 killed $w1 def $x1
	ldr	x9, [x0, #8]
	add	x8, x9, w1, sxtw #4
	ldr	d0, [x8, #8]
	str	d0, [x2, #8]
	ldr	w8, [x0]
	cmp	w8, #1
	b.lt	LBB0_9
; %bb.1:
	sxtw	x10, w1
	lsl	x10, x10, #4
	ldr	x9, [x9, x10]
	ldp	w12, w11, [x2]
	cmp	w8, #8
	b.hs	LBB0_3
; %bb.2:
	mov	x10, #0
	b	LBB0_6
LBB0_3:
	and	x10, x8, #0xfffffff8
	movi.2d	v0, #0000000000000000
	movi.2d	v1, #0000000000000000
	mov.s	v1[0], w12
	movi.2d	v2, #0000000000000000
	mov.s	v2[0], w11
	add	x11, x9, #64
	mov	x12, x10
	movi.2d	v3, #0000000000000000
	movi.2d	v4, #0000000000000000
	movi.2d	v5, #0000000000000000
	movi.2d	v6, #0000000000000000
	movi.2d	v7, #0000000000000000
LBB0_4:                                 ; =>This Inner Loop Header: Depth=1
	sub	x13, x11, #64
	ld2.2d	{ v16, v17 }, [x13]
	sub	x13, x11, #32
	ld2.2d	{ v18, v19 }, [x13]
	mov	x13, x11
	ld2.2d	{ v20, v21 }, [x13], #32
	ld2.2d	{ v22, v23 }, [x13]
	xtn.2s	v24, v17
	xtn.2s	v25, v19
	xtn.2s	v26, v21
	xtn.2s	v27, v23
	add.2s	v2, v2, v24
	add.2s	v5, v5, v25
	add.2s	v6, v6, v26
	add.2s	v7, v7, v27
	xtn.2s	v16, v16
	xtn.2s	v17, v18
	xtn.2s	v18, v20
	xtn.2s	v19, v22
	add.2s	v1, v1, v16
	add.2s	v0, v0, v17
	add.2s	v3, v3, v18
	add.2s	v4, v4, v19
	add	x11, x11, #128
	subs	x12, x12, #8
	b.ne	LBB0_4
; %bb.5:
	add.2s	v2, v5, v2
	add.2s	v2, v6, v2
	add.2s	v2, v7, v2
	addp.2s	v2, v2, v2
	fmov	w11, s2
	add.2s	v0, v0, v1
	add.2s	v0, v3, v0
	add.2s	v0, v4, v0
	addp.2s	v0, v0, v0
	fmov	w12, s0
	cmp	x10, x8
	b.eq	LBB0_8
LBB0_6:
	add	x9, x9, x10, lsl #4
	add	x9, x9, #8
	sub	x8, x8, x10
LBB0_7:                                 ; =>This Inner Loop Header: Depth=1
	ldr	w10, [x9]
	add	w11, w11, w10
	ldur	w10, [x9, #-8]
	add	w12, w12, w10
	add	x9, x9, #16
	subs	x8, x8, #1
	b.ne	LBB0_7
LBB0_8:
	stp	w12, w11, [x2]
LBB0_9:
	ret
	.cfi_endproc
                                        ; -- End function
	.no_dead_strip	_mlx5e_hv_vhca_fill_ring_stats
.subsections_via_symbols
