	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.globl	_in_cksum                       ## -- Begin function in_cksum
	.p2align	4, 0x90
_in_cksum:                              ## @in_cksum
	.cfi_startproc
## %bb.0:
	pushq	%rbp
	.cfi_def_cfa_offset 16
	.cfi_offset %rbp, -16
	movq	%rsp, %rbp
	.cfi_def_cfa_register %rbp
	xorl	%edx, %edx
	cmpl	$2, %esi
	jl	LBB0_12
## %bb.1:
	movl	%esi, %eax
	subl	$3, %eax
	cmovbl	%edx, %eax
	incl	%eax
	cmpl	$6, %eax
	jb	LBB0_10
## %bb.2:
	shrl	%eax
	incl	%eax
	movl	%eax, %r8d
	andl	$-4, %r8d
	leaq	-4(%r8), %rcx
	movq	%rcx, %r9
	shrq	$2, %r9
	incq	%r9
	testq	%rcx, %rcx
	je	LBB0_3
## %bb.4:
	movq	%r9, %rdx
	andq	$-2, %rdx
	pxor	%xmm0, %xmm0
	xorl	%ecx, %ecx
	pxor	%xmm1, %xmm1
	.p2align	4, 0x90
LBB0_5:                                 ## =>This Inner Loop Header: Depth=1
	pmovzxwq	(%rdi,%rcx,2), %xmm2            ## xmm2 = mem[0],zero,zero,zero,mem[1],zero,zero,zero
	paddq	%xmm0, %xmm2
	pmovzxwq	4(%rdi,%rcx,2), %xmm3           ## xmm3 = mem[0],zero,zero,zero,mem[1],zero,zero,zero
	paddq	%xmm1, %xmm3
	pmovzxwq	8(%rdi,%rcx,2), %xmm0           ## xmm0 = mem[0],zero,zero,zero,mem[1],zero,zero,zero
	pmovzxwq	12(%rdi,%rcx,2), %xmm1          ## xmm1 = mem[0],zero,zero,zero,mem[1],zero,zero,zero
	paddq	%xmm2, %xmm0
	paddq	%xmm3, %xmm1
	addq	$8, %rcx
	addq	$-2, %rdx
	jne	LBB0_5
## %bb.6:
	testb	$1, %r9b
	je	LBB0_8
LBB0_7:
	pmovzxwq	(%rdi,%rcx,2), %xmm2            ## xmm2 = mem[0],zero,zero,zero,mem[1],zero,zero,zero
	paddq	%xmm2, %xmm0
	pmovzxwq	4(%rdi,%rcx,2), %xmm2           ## xmm2 = mem[0],zero,zero,zero,mem[1],zero,zero,zero
	paddq	%xmm2, %xmm1
LBB0_8:
	paddq	%xmm1, %xmm0
	pshufd	$238, %xmm0, %xmm1              ## xmm1 = xmm0[2,3,2,3]
	paddq	%xmm0, %xmm1
	movq	%xmm1, %rdx
	cmpq	%rax, %r8
	je	LBB0_12
## %bb.9:
	leaq	(%rdi,%r8,2), %rdi
	subl	%r8d, %esi
	subl	%r8d, %esi
LBB0_10:
	addl	$2, %esi
	.p2align	4, 0x90
LBB0_11:                                ## =>This Inner Loop Header: Depth=1
	movzwl	(%rdi), %eax
	addq	$2, %rdi
	addq	%rax, %rdx
	addl	$-2, %esi
	cmpl	$3, %esi
	ja	LBB0_11
LBB0_12:
	movq	%rdx, %rax
	shrq	$16, %rax
	movzwl	%dx, %ecx
	addl	%ecx, %eax
	movl	%eax, %ecx
	shrl	$16, %ecx
	addl	%eax, %ecx
	notl	%ecx
	movzwl	%cx, %eax
	popq	%rbp
	retq
LBB0_3:
	pxor	%xmm0, %xmm0
	xorl	%ecx, %ecx
	pxor	%xmm1, %xmm1
	testb	$1, %r9b
	jne	LBB0_7
	jmp	LBB0_8
	.cfi_endproc
                                        ## -- End function
.subsections_via_symbols

	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.globl	_in_cksum                       ; -- Begin function in_cksum
	.p2align	2
_in_cksum:                              ; @in_cksum
	.cfi_startproc
; %bb.0:
	cmp	w1, #2
	b.lt	LBB0_3
; %bb.1:
	subs	w8, w1, #3
	csel	w8, wzr, w8, lo
	add	w8, w8, #1
	cmp	w8, #62
	b.hs	LBB0_4
; %bb.2:
	mov	x11, #0
	mov	x8, x0
	b	LBB0_7
LBB0_3:
	mov	x11, #0
	b	LBB0_9
LBB0_4:
	movi.2d	v0, #0000000000000000
	lsr	w8, w8, #1
	movi.2d	v2, #0000000000000000
	add	w9, w8, #1
	movi.2d	v1, #0000000000000000
	and	x10, x9, #0xffffffe0
	movi.2d	v3, #0000000000000000
	add	x8, x0, x10, lsl #1
	movi.2d	v4, #0000000000000000
	movi.2d	v18, #0000000000000000
	movi.2d	v7, #0000000000000000
	sub	w1, w1, w10, lsl #1
	add	x11, x0, #32
	mov	x12, x10
	movi.2d	v23, #0000000000000000
	movi.2d	v17, #0000000000000000
	movi.2d	v5, #0000000000000000
	movi.2d	v21, #0000000000000000
	movi.2d	v19, #0000000000000000
	movi.2d	v6, #0000000000000000
	movi.2d	v20, #0000000000000000
	movi.2d	v16, #0000000000000000
	movi.2d	v22, #0000000000000000
LBB0_5:                                 ; =>This Inner Loop Header: Depth=1
	ldp	q24, q25, [x11, #-32]
	ushll.4s	v26, v24, #0
	ushll2.4s	v24, v24, #0
	ushll.4s	v27, v25, #0
	ushll2.4s	v25, v25, #0
	ldp	q28, q29, [x11], #64
	ushll.4s	v30, v28, #0
	ushll2.4s	v28, v28, #0
	ushll.4s	v31, v29, #0
	ushll2.4s	v29, v29, #0
	uaddw2.2d	v3, v3, v24
	uaddw.2d	v1, v1, v24
	uaddw2.2d	v2, v2, v26
	uaddw.2d	v0, v0, v26
	uaddw2.2d	v23, v23, v25
	uaddw.2d	v7, v7, v25
	uaddw2.2d	v18, v18, v27
	uaddw.2d	v4, v4, v27
	uaddw2.2d	v19, v19, v28
	uaddw.2d	v21, v21, v28
	uaddw2.2d	v5, v5, v30
	uaddw.2d	v17, v17, v30
	uaddw2.2d	v22, v22, v29
	uaddw.2d	v16, v16, v29
	uaddw2.2d	v20, v20, v31
	uaddw.2d	v6, v6, v31
	subs	x12, x12, #32
	b.ne	LBB0_5
; %bb.6:
	add.2d	v2, v18, v2
	add.2d	v3, v23, v3
	add.2d	v0, v4, v0
	add.2d	v1, v7, v1
	add.2d	v1, v21, v1
	add.2d	v0, v17, v0
	add.2d	v3, v19, v3
	add.2d	v2, v5, v2
	add.2d	v2, v20, v2
	add.2d	v3, v22, v3
	add.2d	v0, v6, v0
	add.2d	v1, v16, v1
	add.2d	v0, v0, v1
	add.2d	v1, v2, v3
	add.2d	v0, v0, v1
	addp.2d	d0, v0
	fmov	x11, d0
	cmp	x10, x9
	b.eq	LBB0_9
LBB0_7:
	add	w9, w1, #2
LBB0_8:                                 ; =>This Inner Loop Header: Depth=1
	ldrh	w10, [x8], #2
	add	x11, x11, x10
	sub	w9, w9, #2
	cmp	w9, #3
	b.hi	LBB0_8
LBB0_9:
	lsr	x8, x11, #16
	add	w8, w8, w11, uxth
	add	w8, w8, w8, lsr #16
	mvn	w8, w8
	and	w0, w8, #0xffff
	ret
	.cfi_endproc
                                        ; -- End function
.subsections_via_symbols
