	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.section	__TEXT,__literal16,16byte_literals
	.p2align	4                               ## -- Begin function update_buffer_lossy
LCPI0_0:
	.long	0                               ## 0x0
	.long	1                               ## 0x1
	.long	2                               ## 0x2
	.long	3                               ## 0x3
LCPI0_1:
	.long	4                               ## 0x4
	.long	4                               ## 0x4
	.long	4                               ## 0x4
	.long	4                               ## 0x4
LCPI0_2:
	.long	1                               ## 0x1
	.long	1                               ## 0x1
	.long	1                               ## 0x1
	.long	1                               ## 0x1
LCPI0_3:
	.long	8                               ## 0x8
	.long	8                               ## 0x8
	.long	8                               ## 0x8
	.long	8                               ## 0x8
	.section	__TEXT,__text,regular,pure_instructions
	.p2align	4, 0x90
_update_buffer_lossy:                   ## @update_buffer_lossy
	.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	$24, %rsp
	.cfi_offset %rbx, -56
	.cfi_offset %r12, -48
	.cfi_offset %r13, -40
	.cfi_offset %r14, -32
	.cfi_offset %r15, -24
	movq	_MLX5E_MAX_BUFFER@GOTPCREL(%rip), %rax
	movl	(%rax), %r13d
	testl	%r13d, %r13d
	jle	LBB0_15
## %bb.1:
	movl	%edi, -44(%rbp)                 ## 4-byte Spill
	movl	%ecx, -48(%rbp)                 ## 4-byte Spill
	movq	%r9, -56(%rbp)                  ## 8-byte Spill
	notl	%esi
	movq	%r8, -64(%rbp)                  ## 8-byte Spill
	movq	(%r8), %r15
	movd	%esi, %xmm0
	pshufd	$0, %xmm0, %xmm8                ## xmm8 = xmm0[0,0,0,0]
	xorl	%r10d, %r10d
	movdqa	LCPI0_1(%rip), %xmm10           ## xmm10 = [4,4,4,4]
	movdqa	LCPI0_2(%rip), %xmm12           ## xmm12 = [1,1,1,1]
	movdqa	LCPI0_3(%rip), %xmm11           ## xmm11 = [8,8,8,8]
	xorl	%r8d, %r8d
	xorl	%r12d, %r12d
	jmp	LBB0_2
	.p2align	4, 0x90
LBB0_11:                                ##   in Loop: Header=BB0_2 Depth=1
	incq	%r8
	movslq	%r13d, %rax
	cmpq	%rax, %r8
	jge	LBB0_12
LBB0_2:                                 ## =>This Loop Header: Depth=1
                                        ##     Child Loop BB0_6 Depth 2
                                        ##     Child Loop BB0_8 Depth 2
	movq	_MLX5E_MAX_PRIORITY@GOTPCREL(%rip), %rax
	movl	(%rax), %r11d
	movl	$0, %ecx
	movl	$0, %eax
	testl	%r11d, %r11d
	jle	LBB0_9
## %bb.3:                               ##   in Loop: Header=BB0_2 Depth=1
	cmpl	$8, %r11d
	jae	LBB0_5
## %bb.4:                               ##   in Loop: Header=BB0_2 Depth=1
	xorl	%r14d, %r14d
	xorl	%eax, %eax
	xorl	%ecx, %ecx
	jmp	LBB0_8
	.p2align	4, 0x90
LBB0_5:                                 ##   in Loop: Header=BB0_2 Depth=1
	movl	%r11d, %r14d
	andl	$-8, %r14d
	movq	%r8, %xmm1
	pshufd	$68, %xmm1, %xmm13              ## xmm13 = xmm1[0,1,0,1]
	leaq	(,%r11,4), %r9
	andq	$-32, %r9
	pxor	%xmm14, %xmm14
	xorl	%ecx, %ecx
	pxor	%xmm15, %xmm15
	pxor	%xmm2, %xmm2
	pxor	%xmm9, %xmm9
	movdqa	LCPI0_0(%rip), %xmm3            ## xmm3 = [0,1,2,3]
	.p2align	4, 0x90
LBB0_6:                                 ##   Parent Loop BB0_2 Depth=1
                                        ## =>  This Inner Loop Header: Depth=2
	movdqa	%xmm3, %xmm4
	paddd	%xmm10, %xmm4
	pshuflw	$254, %xmm3, %xmm0              ## xmm0 = xmm3[2,3,3,3,4,5,6,7]
	movdqa	%xmm8, %xmm7
	psrld	%xmm0, %xmm7
	pshufd	$238, %xmm3, %xmm0              ## xmm0 = xmm3[2,3,2,3]
	pshuflw	$254, %xmm0, %xmm5              ## xmm5 = xmm0[2,3,3,3,4,5,6,7]
	movdqa	%xmm8, %xmm6
	psrld	%xmm5, %xmm6
	pblendw	$15, %xmm7, %xmm6               ## xmm6 = xmm7[0,1,2,3],xmm6[4,5,6,7]
	pshuflw	$84, %xmm3, %xmm5               ## xmm5 = xmm3[0,1,1,1,4,5,6,7]
	movdqa	%xmm8, %xmm7
	psrld	%xmm5, %xmm7
	pshuflw	$84, %xmm0, %xmm0               ## xmm0 = xmm0[0,1,1,1,4,5,6,7]
	movdqa	%xmm8, %xmm5
	psrld	%xmm0, %xmm5
	pblendw	$15, %xmm7, %xmm5               ## xmm5 = xmm7[0,1,2,3],xmm5[4,5,6,7]
	pblendw	$204, %xmm6, %xmm5              ## xmm5 = xmm5[0,1],xmm6[2,3],xmm5[4,5],xmm6[6,7]
	pshuflw	$254, %xmm4, %xmm0              ## xmm0 = xmm4[2,3,3,3,4,5,6,7]
	movdqa	%xmm8, %xmm6
	psrld	%xmm0, %xmm6
	pshufd	$238, %xmm4, %xmm0              ## xmm0 = xmm4[2,3,2,3]
	pshuflw	$254, %xmm0, %xmm7              ## xmm7 = xmm0[2,3,3,3,4,5,6,7]
	movdqa	%xmm12, %xmm1
	movdqa	%xmm8, %xmm12
	psrld	%xmm7, %xmm12
	pshuflw	$84, %xmm4, %xmm4               ## xmm4 = xmm4[0,1,1,1,4,5,6,7]
	movdqa	%xmm8, %xmm7
	psrld	%xmm4, %xmm7
	pshuflw	$84, %xmm0, %xmm0               ## xmm0 = xmm0[0,1,1,1,4,5,6,7]
	movdqa	%xmm8, %xmm4
	psrld	%xmm0, %xmm4
	pmovzxdq	(%rdx,%rcx), %xmm0              ## xmm0 = mem[0],zero,mem[1],zero
	pblendw	$15, %xmm6, %xmm12              ## xmm12 = xmm6[0,1,2,3],xmm12[4,5,6,7]
	pmovzxdq	8(%rdx,%rcx), %xmm6             ## xmm6 = mem[0],zero,mem[1],zero
	pblendw	$15, %xmm7, %xmm4               ## xmm4 = xmm7[0,1,2,3],xmm4[4,5,6,7]
	pmovzxdq	16(%rdx,%rcx), %xmm7            ## xmm7 = mem[0],zero,mem[1],zero
	pcmpeqq	%xmm13, %xmm6
	pcmpeqq	%xmm13, %xmm0
	pblendw	$204, %xmm12, %xmm4             ## xmm4 = xmm4[0,1],xmm12[2,3],xmm4[4,5],xmm12[6,7]
	movdqa	%xmm1, %xmm12
	movdqa	%xmm0, %xmm1
	shufps	$136, %xmm6, %xmm1              ## xmm1 = xmm1[0,2],xmm6[0,2]
	pand	%xmm12, %xmm5
	pand	%xmm1, %xmm5
	pmovzxdq	24(%rdx,%rcx), %xmm1            ## xmm1 = mem[0],zero,mem[1],zero
	pcmpeqq	%xmm13, %xmm1
	pcmpeqq	%xmm13, %xmm7
	paddd	%xmm5, %xmm2
	movdqa	%xmm7, %xmm5
	shufps	$136, %xmm1, %xmm5              ## xmm5 = xmm5[0,2],xmm1[0,2]
	andps	%xmm12, %xmm5
	andps	%xmm4, %xmm5
	paddd	%xmm5, %xmm9
	packssdw	%xmm6, %xmm0
	psubd	%xmm0, %xmm14
	packssdw	%xmm1, %xmm7
	psubd	%xmm7, %xmm15
	paddd	%xmm11, %xmm3
	addq	$32, %rcx
	cmpq	%rcx, %r9
	jne	LBB0_6
## %bb.7:                               ##   in Loop: Header=BB0_2 Depth=1
	paddd	%xmm2, %xmm9
	pshufd	$238, %xmm9, %xmm0              ## xmm0 = xmm9[2,3,2,3]
	paddd	%xmm9, %xmm0
	pshufd	$85, %xmm0, %xmm1               ## xmm1 = xmm0[1,1,1,1]
	paddd	%xmm0, %xmm1
	movd	%xmm1, %ecx
	paddd	%xmm14, %xmm15
	pshufd	$238, %xmm15, %xmm0             ## xmm0 = xmm15[2,3,2,3]
	paddd	%xmm15, %xmm0
	pshufd	$85, %xmm0, %xmm1               ## xmm1 = xmm0[1,1,1,1]
	paddd	%xmm0, %xmm1
	movd	%xmm1, %eax
	cmpq	%r11, %r14
	je	LBB0_9
	.p2align	4, 0x90
LBB0_8:                                 ##   Parent Loop BB0_2 Depth=1
                                        ## =>  This Inner Loop Header: Depth=2
	movl	(%rdx,%r14,4), %r9d
	xorl	%edi, %edi
	btl	%r14d, %esi
	setb	%dil
	xorl	%ebx, %ebx
	cmpq	%r9, %r8
	sete	%bl
	cmovnel	%r10d, %edi
	addl	%edi, %ecx
	addl	%ebx, %eax
	incq	%r14
	cmpq	%r14, %r11
	jne	LBB0_8
LBB0_9:                                 ##   in Loop: Header=BB0_2 Depth=1
	xorl	%edi, %edi
	cmpl	%eax, %ecx
	sete	%dil
	cmpl	%edi, (%r15,%r8,4)
	je	LBB0_11
## %bb.10:                              ##   in Loop: Header=BB0_2 Depth=1
	movl	%edi, (%r15,%r8,4)
	movq	_MLX5E_MAX_BUFFER@GOTPCREL(%rip), %rax
	movl	(%rax), %r13d
	movl	$1, %r12d
	jmp	LBB0_11
LBB0_12:
	xorl	%eax, %eax
	testl	%r12d, %r12d
	je	LBB0_16
## %bb.13:
	movq	-64(%rbp), %rdi                 ## 8-byte Reload
	movl	-48(%rbp), %esi                 ## 4-byte Reload
	movl	-44(%rbp), %edx                 ## 4-byte Reload
	callq	_update_xoff_threshold
	testl	%eax, %eax
	jne	LBB0_16
## %bb.14:
	movq	-56(%rbp), %rax                 ## 8-byte Reload
	movl	$1, (%rax)
LBB0_15:
	xorl	%eax, %eax
LBB0_16:
	addq	$24, %rsp
	popq	%rbx
	popq	%r12
	popq	%r13
	popq	%r14
	popq	%r15
	popq	%rbp
	retq
	.cfi_endproc
                                        ## -- End function
	.comm	_MLX5E_MAX_BUFFER,4,2           ## @MLX5E_MAX_BUFFER
	.comm	_MLX5E_MAX_PRIORITY,4,2         ## @MLX5E_MAX_PRIORITY
	.no_dead_strip	_update_buffer_lossy
.subsections_via_symbols

	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.section	__TEXT,__literal16,16byte_literals
	.p2align	4                               ; -- Begin function update_buffer_lossy
lCPI0_0:
	.long	0                               ; 0x0
	.long	1                               ; 0x1
	.long	2                               ; 0x2
	.long	3                               ; 0x3
	.section	__TEXT,__text,regular,pure_instructions
	.p2align	2
_update_buffer_lossy:                   ; @update_buffer_lossy
	.cfi_startproc
; %bb.0:
	stp	d13, d12, [sp, #-80]!           ; 16-byte Folded Spill
	.cfi_def_cfa_offset 80
	stp	d11, d10, [sp, #16]             ; 16-byte Folded Spill
	stp	d9, d8, [sp, #32]               ; 16-byte Folded Spill
	stp	x20, x19, [sp, #48]             ; 16-byte Folded Spill
	stp	x29, x30, [sp, #64]             ; 16-byte Folded Spill
	add	x29, sp, #64
	.cfi_def_cfa w29, 16
	.cfi_offset w30, -8
	.cfi_offset w29, -16
	.cfi_offset w19, -24
	.cfi_offset w20, -32
	.cfi_offset b8, -40
	.cfi_offset b9, -48
	.cfi_offset b10, -56
	.cfi_offset b11, -64
	.cfi_offset b12, -72
	.cfi_offset b13, -80
Lloh0:
	adrp	x9, _MLX5E_MAX_BUFFER@GOTPAGE
Lloh1:
	ldr	x9, [x9, _MLX5E_MAX_BUFFER@GOTPAGEOFF]
	ldr	w10, [x9]
	cmp	w10, #1
	b.lt	LBB0_16
; %bb.1:
	mov	x19, x5
	mov	x8, x0
	mov	x11, #0
	mov	w14, #0
	mvn	w12, w1
	ldr	x13, [x4]
	dup.4s	v0, w12
	add	x15, x2, #32
Lloh2:
	adrp	x16, _MLX5E_MAX_PRIORITY@GOTPAGE
Lloh3:
	ldr	x16, [x16, _MLX5E_MAX_PRIORITY@GOTPAGEOFF]
Lloh4:
	adrp	x17, lCPI0_0@PAGE
Lloh5:
	ldr	q1, [x17, lCPI0_0@PAGEOFF]
	mvni.4s	v2, #3
	mvni.4s	v3, #7
	mvni.4s	v4, #11
	movi.4s	v5, #1
	movi.4s	v6, #16
	b	LBB0_3
LBB0_2:                                 ;   in Loop: Header=BB0_3 Depth=1
	add	x11, x11, #1
	cmp	x11, w10, sxtw
	b.ge	LBB0_13
LBB0_3:                                 ; =>This Loop Header: Depth=1
                                        ;     Child Loop BB0_8 Depth 2
                                        ;     Child Loop BB0_10 Depth 2
	ldr	w17, [x16]
	cmp	w17, #1
	b.lt	LBB0_6
; %bb.4:                                ;   in Loop: Header=BB0_3 Depth=1
	cmp	w17, #16
	b.hs	LBB0_7
; %bb.5:                                ;   in Loop: Header=BB0_3 Depth=1
	mov	x0, #0
	mov	w5, #0
	mov	w1, #0
	b	LBB0_10
LBB0_6:                                 ;   in Loop: Header=BB0_3 Depth=1
	mov	w1, #0
	mov	w5, #0
	b	LBB0_11
LBB0_7:                                 ;   in Loop: Header=BB0_3 Depth=1
	dup.2d	v19, x11
	movi.2d	v7, #0000000000000000
	and	x0, x17, #0xfffffff0
	movi.2d	v16, #0000000000000000
	mov	x1, x0
	mov	x5, x15
	movi.2d	v17, #0000000000000000
	movi.2d	v18, #0000000000000000
	movi.2d	v20, #0000000000000000
	movi.2d	v21, #0000000000000000
	movi.2d	v22, #0000000000000000
	mov.16b	v24, v1
	movi.2d	v23, #0000000000000000
LBB0_8:                                 ;   Parent Loop BB0_3 Depth=1
                                        ; =>  This Inner Loop Header: Depth=2
	ldp	q25, q26, [x5, #-32]
	ushll.2d	v27, v25, #0
	ushll2.2d	v25, v25, #0
	ushll.2d	v28, v26, #0
	ushll2.2d	v26, v26, #0
	ldp	q29, q30, [x5], #64
	ushll.2d	v31, v29, #0
	ushll2.2d	v29, v29, #0
	ushll.2d	v8, v30, #0
	ushll2.2d	v30, v30, #0
	neg.4s	v9, v24
	ushl.4s	v9, v0, v9
	sub.4s	v10, v2, v24
	ushl.4s	v10, v0, v10
	sub.4s	v11, v3, v24
	ushl.4s	v11, v0, v11
	sub.4s	v12, v4, v24
	ushl.4s	v12, v0, v12
	cmeq.2d	v25, v19, v25
	cmeq.2d	v27, v19, v27
	uzp1.4s	v25, v27, v25
	and.16b	v27, v9, v25
	cmeq.2d	v26, v19, v26
	cmeq.2d	v28, v19, v28
	uzp1.4s	v26, v28, v26
	and.16b	v28, v10, v26
	cmeq.2d	v29, v19, v29
	cmeq.2d	v31, v19, v31
	uzp1.4s	v29, v31, v29
	and.16b	v31, v11, v29
	cmeq.2d	v30, v19, v30
	cmeq.2d	v8, v19, v8
	uzp1.4s	v30, v8, v30
	and.16b	v8, v12, v30
	and.16b	v27, v27, v5
	and.16b	v28, v28, v5
	and.16b	v31, v31, v5
	and.16b	v8, v8, v5
	add.4s	v20, v20, v27
	add.4s	v21, v21, v28
	add.4s	v22, v22, v31
	add.4s	v23, v23, v8
	sub.4s	v7, v7, v25
	sub.4s	v16, v16, v26
	sub.4s	v17, v17, v29
	sub.4s	v18, v18, v30
	add.4s	v24, v24, v6
	subs	x1, x1, #16
	b.ne	LBB0_8
; %bb.9:                                ;   in Loop: Header=BB0_3 Depth=1
	add.4s	v19, v21, v20
	add.4s	v19, v22, v19
	add.4s	v19, v23, v19
	addv.4s	s19, v19
	fmov	w1, s19
	add.4s	v7, v16, v7
	add.4s	v7, v17, v7
	add.4s	v7, v18, v7
	addv.4s	s7, v7
	fmov	w5, s7
	cmp	x0, x17
	b.eq	LBB0_11
LBB0_10:                                ;   Parent Loop BB0_3 Depth=1
                                        ; =>  This Inner Loop Header: Depth=2
	ldr	w6, [x2, x0, lsl #2]
	lsr	w7, w12, w0
	and	w7, w7, #0x1
	cmp	x11, x6
	csel	w6, w7, wzr, eq
	add	w1, w1, w6
	cinc	w5, w5, eq
	add	x0, x0, #1
	cmp	x17, x0
	b.ne	LBB0_10
LBB0_11:                                ;   in Loop: Header=BB0_3 Depth=1
	cmp	w1, w5
	cset	w17, eq
	ldr	w0, [x13, x11, lsl #2]
	cmp	w0, w17
	b.eq	LBB0_2
; %bb.12:                               ;   in Loop: Header=BB0_3 Depth=1
	str	w17, [x13, x11, lsl #2]
	ldr	w10, [x9]
	mov	w14, #1
	b	LBB0_2
LBB0_13:
	cbz	w14, LBB0_16
; %bb.14:
	mov	x0, x4
	mov	x1, x3
	mov	x2, x8
	bl	_update_xoff_threshold
	cbnz	w0, LBB0_17
; %bb.15:
	mov	w8, #1
	str	w8, [x19]
	b	LBB0_17
LBB0_16:
	mov	w0, #0
LBB0_17:
	ldp	x29, x30, [sp, #64]             ; 16-byte Folded Reload
	ldp	x20, x19, [sp, #48]             ; 16-byte Folded Reload
	ldp	d9, d8, [sp, #32]               ; 16-byte Folded Reload
	ldp	d11, d10, [sp, #16]             ; 16-byte Folded Reload
	ldp	d13, d12, [sp], #80             ; 16-byte Folded Reload
	ret
	.loh AdrpLdrGot	Lloh0, Lloh1
	.loh AdrpLdr	Lloh4, Lloh5
	.loh AdrpLdrGot	Lloh2, Lloh3
	.cfi_endproc
                                        ; -- End function
	.comm	_MLX5E_MAX_BUFFER,4,2           ; @MLX5E_MAX_BUFFER
	.comm	_MLX5E_MAX_PRIORITY,4,2         ; @MLX5E_MAX_PRIORITY
	.no_dead_strip	_update_buffer_lossy
.subsections_via_symbols
