	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	4, 0x90                         ## -- Begin function tcp_lro_csum_th
_tcp_lro_csum_th:                       ## @tcp_lro_csum_th
	.cfi_startproc
## %bb.0:
	pushq	%rbp
	.cfi_def_cfa_offset 16
	.cfi_offset %rbp, -16
	movq	%rsp, %rbp
	.cfi_def_cfa_register %rbp
	movl	$0, (%rdi)
	movq	8(%rdi), %rsi
	testq	%rsi, %rsi
	jle	LBB0_1
## %bb.2:
	cmpq	$4, %rsi
	jae	LBB0_4
## %bb.3:
	xorl	%edx, %edx
	movq	%rsi, %rax
	movq	%rdi, %rcx
	jmp	LBB0_7
LBB0_1:
	xorl	%edx, %edx
	jmp	LBB0_11
LBB0_4:
	movq	%rsi, %r8
	andq	$-4, %r8
	movl	%esi, %eax
	andl	$3, %eax
	movq	%r8, %rcx
	shlq	$4, %rcx
	addq	%rdi, %rcx
	addq	$32, %rdi
	pxor	%xmm0, %xmm0
	movq	%r8, %rdx
	pxor	%xmm1, %xmm1
	.p2align	4, 0x90
LBB0_5:                                 ## =>This Inner Loop Header: Depth=1
	movdqu	-32(%rdi), %xmm2
	movdqu	-16(%rdi), %xmm3
	movdqu	(%rdi), %xmm4
	movdqu	16(%rdi), %xmm5
	movdqa	%xmm2, %xmm6
	punpckldq	%xmm3, %xmm6            ## xmm6 = xmm6[0],xmm3[0],xmm6[1],xmm3[1]
	paddd	%xmm0, %xmm6
	movdqa	%xmm4, %xmm7
	punpckldq	%xmm5, %xmm7            ## xmm7 = xmm7[0],xmm5[0],xmm7[1],xmm5[1]
	paddd	%xmm1, %xmm7
	punpckhdq	%xmm3, %xmm2            ## xmm2 = xmm2[2],xmm3[2],xmm2[3],xmm3[3]
	movdqa	%xmm2, %xmm0
	paddd	%xmm6, %xmm0
	punpckhdq	%xmm5, %xmm4            ## xmm4 = xmm4[2],xmm5[2],xmm4[3],xmm5[3]
	movdqa	%xmm4, %xmm1
	paddd	%xmm7, %xmm1
	addq	$64, %rdi
	addq	$-4, %rdx
	jne	LBB0_5
## %bb.6:
	paddd	%xmm0, %xmm1
	pshufd	$85, %xmm1, %xmm0               ## xmm0 = xmm1[1,1,1,1]
	paddd	%xmm1, %xmm0
	movd	%xmm0, %edx
	cmpq	%r8, %rsi
	je	LBB0_9
LBB0_7:
	incq	%rax
	.p2align	4, 0x90
LBB0_8:                                 ## =>This Inner Loop Header: Depth=1
	addl	(%rcx), %edx
	addl	8(%rcx), %edx
	decq	%rax
	addq	$16, %rcx
	cmpq	$1, %rax
	ja	LBB0_8
LBB0_9:
	cmpl	$65536, %edx                    ## imm = 0x10000
	jl	LBB0_11
	.p2align	4, 0x90
LBB0_10:                                ## =>This Inner Loop Header: Depth=1
	movl	%edx, %eax
	shrl	$16, %eax
	movzwl	%dx, %edx
	addl	%eax, %edx
	cmpl	$65535, %edx                    ## imm = 0xFFFF
	ja	LBB0_10
LBB0_11:
	movzwl	%dx, %eax
	popq	%rbp
	retq
	.cfi_endproc
                                        ## -- End function
	.no_dead_strip	_tcp_lro_csum_th
.subsections_via_symbols

	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	2                               ; -- Begin function tcp_lro_csum_th
_tcp_lro_csum_th:                       ; @tcp_lro_csum_th
	.cfi_startproc
; %bb.0:
	str	wzr, [x0]
	ldr	x10, [x0, #8]
	cmp	x10, #1
	b.lt	LBB0_3
; %bb.1:
	cmp	x10, #8
	b.hs	LBB0_4
; %bb.2:
	mov	w12, #0
	mov	x9, x10
	mov	x8, x0
	b	LBB0_7
LBB0_3:
	and	w0, wzr, #0xffff
	ret
LBB0_4:
	and	x11, x10, #0xfffffffffffffff8
	and	x9, x10, #0x7
	add	x8, x0, x11, lsl #4
	movi.2d	v0, #0000000000000000
	add	x12, x0, #64
	mov	x13, x11
	movi.2d	v1, #0000000000000000
	movi.2d	v2, #0000000000000000
	movi.2d	v3, #0000000000000000
LBB0_5:                                 ; =>This Inner Loop Header: Depth=1
	sub	x14, x12, #64
	ld2.2d	{ v4, v5 }, [x14]
	sub	x14, x12, #32
	ld2.2d	{ v6, v7 }, [x14]
	mov	x14, x12
	ld2.2d	{ v16, v17 }, [x14], #32
	ld2.2d	{ v18, v19 }, [x14]
	xtn.2s	v20, v4
	xtn.2s	v21, v6
	xtn.2s	v22, v16
	xtn.2s	v23, v18
	add.2s	v0, v0, v20
	add.2s	v1, v1, v21
	add.2s	v2, v2, v22
	add.2s	v3, v3, v23
	xtn.2s	v4, v5
	xtn.2s	v5, v7
	xtn.2s	v6, v17
	xtn.2s	v7, v19
	add.2s	v0, v0, v4
	add.2s	v1, v1, v5
	add.2s	v2, v2, v6
	add.2s	v3, v3, v7
	add	x12, x12, #128
	subs	x13, x13, #8
	b.ne	LBB0_5
; %bb.6:
	add.2s	v0, v1, v0
	add.2s	v0, v2, v0
	add.2s	v0, v3, v0
	addp.2s	v0, v0, v0
	fmov	w12, s0
	cmp	x10, x11
	b.eq	LBB0_9
LBB0_7:
	add	x9, x9, #1
LBB0_8:                                 ; =>This Inner Loop Header: Depth=1
	ldr	w10, [x8]
	ldr	w11, [x8, #8]
	add	w10, w12, w10
	add	w12, w10, w11
	sub	x9, x9, #1
	add	x8, x8, #16
	cmp	x9, #1
	b.hi	LBB0_8
LBB0_9:
	cmp	w12, #16, lsl #12               ; =65536
	b.lt	LBB0_11
LBB0_10:                                ; =>This Inner Loop Header: Depth=1
	lsr	w8, w12, #16
	add	w12, w8, w12, uxth
	lsr	w8, w12, #16
	cbnz	w8, LBB0_10
LBB0_11:
	and	w0, w12, #0xffff
	ret
	.cfi_endproc
                                        ; -- End function
	.no_dead_strip	_tcp_lro_csum_th
.subsections_via_symbols
