	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	4, 0x90                         ## -- Begin function mips_cksum
_mips_cksum:                            ## @mips_cksum
	.cfi_startproc
## %bb.0:
	pushq	%rbp
	.cfi_def_cfa_offset 16
	.cfi_offset %rbp, -16
	movq	%rsp, %rbp
	.cfi_def_cfa_register %rbp
                                        ## kill: def $edx killed $edx def $rdx
	movq	_HDR_LENGTH@GOTPCREL(%rip), %rax
	movl	(%rax), %r11d
	movl	%r11d, %r8d
	decl	%r8d
	je	LBB0_1
## %bb.6:
	addl	$-2, %r11d
	xorl	%eax, %eax
	cmpl	$7, %r11d
	jb	LBB0_15
## %bb.7:
	incq	%r11
	movq	%r11, %r9
	andq	$-8, %r9
	leaq	-8(%r9), %rax
	movq	%rax, %r10
	shrq	$3, %r10
	incq	%r10
	testq	%rax, %rax
	je	LBB0_8
## %bb.9:
	movq	%r10, %rcx
	andq	$-2, %rcx
	pxor	%xmm0, %xmm0
	xorl	%eax, %eax
	pxor	%xmm1, %xmm1
	.p2align	4, 0x90
LBB0_10:                                ## =>This Inner Loop Header: Depth=1
	pmovzxbd	1(%rdi,%rax), %xmm2             ## xmm2 = mem[0],zero,zero,zero,mem[1],zero,zero,zero,mem[2],zero,zero,zero,mem[3],zero,zero,zero
	paddd	%xmm0, %xmm2
	pmovzxbd	5(%rdi,%rax), %xmm3             ## xmm3 = mem[0],zero,zero,zero,mem[1],zero,zero,zero,mem[2],zero,zero,zero,mem[3],zero,zero,zero
	paddd	%xmm1, %xmm3
	pmovzxbd	9(%rdi,%rax), %xmm0             ## xmm0 = mem[0],zero,zero,zero,mem[1],zero,zero,zero,mem[2],zero,zero,zero,mem[3],zero,zero,zero
	pmovzxbd	13(%rdi,%rax), %xmm1            ## xmm1 = mem[0],zero,zero,zero,mem[1],zero,zero,zero,mem[2],zero,zero,zero,mem[3],zero,zero,zero
	paddd	%xmm2, %xmm0
	paddd	%xmm3, %xmm1
	addq	$16, %rax
	addq	$-2, %rcx
	jne	LBB0_10
## %bb.11:
	testb	$1, %r10b
	je	LBB0_13
LBB0_12:
	pmovzxbd	1(%rdi,%rax), %xmm2             ## xmm2 = mem[0],zero,zero,zero,mem[1],zero,zero,zero,mem[2],zero,zero,zero,mem[3],zero,zero,zero
	paddd	%xmm2, %xmm0
	pmovzxbd	5(%rdi,%rax), %xmm2             ## xmm2 = mem[0],zero,zero,zero,mem[1],zero,zero,zero,mem[2],zero,zero,zero,mem[3],zero,zero,zero
	paddd	%xmm2, %xmm1
LBB0_13:
	paddd	%xmm1, %xmm0
	pshufd	$238, %xmm0, %xmm1              ## xmm1 = xmm0[2,3,2,3]
	paddd	%xmm0, %xmm1
	pshufd	$85, %xmm1, %xmm0               ## xmm0 = xmm1[1,1,1,1]
	paddd	%xmm1, %xmm0
	movd	%xmm0, %eax
	cmpq	%r9, %r11
	je	LBB0_2
## %bb.14:
	subl	%r9d, %r8d
	addq	%r9, %rdi
LBB0_15:
	movl	%r8d, %r8d
	xorl	%r9d, %r9d
	.p2align	4, 0x90
LBB0_16:                                ## =>This Inner Loop Header: Depth=1
	movzbl	1(%rdi,%r9), %ecx
	addl	%ecx, %eax
	incq	%r9
	cmpl	%r9d, %r8d
	jne	LBB0_16
LBB0_2:
	testl	%edx, %edx
	jne	LBB0_3
	jmp	LBB0_25
LBB0_1:
	xorl	%eax, %eax
	testl	%edx, %edx
	je	LBB0_25
LBB0_3:
	leal	-1(%rdx), %r9d
	cmpl	$7, %r9d
	jb	LBB0_23
## %bb.4:
	incq	%r9
	movq	%r9, %r8
	andq	$-8, %r8
	movd	%eax, %xmm0
	leaq	-8(%r8), %rax
	movq	%rax, %rcx
	shrq	$3, %rcx
	incq	%rcx
	testq	%rax, %rax
	je	LBB0_5
## %bb.17:
	movq	%rcx, %rax
	andq	$-2, %rax
	pxor	%xmm1, %xmm1
	xorl	%edi, %edi
	.p2align	4, 0x90
LBB0_18:                                ## =>This Inner Loop Header: Depth=1
	pmovzxbd	(%rsi,%rdi), %xmm2              ## xmm2 = mem[0],zero,zero,zero,mem[1],zero,zero,zero,mem[2],zero,zero,zero,mem[3],zero,zero,zero
	paddd	%xmm0, %xmm2
	pmovzxbd	4(%rsi,%rdi), %xmm3             ## xmm3 = mem[0],zero,zero,zero,mem[1],zero,zero,zero,mem[2],zero,zero,zero,mem[3],zero,zero,zero
	paddd	%xmm1, %xmm3
	pmovzxbd	8(%rsi,%rdi), %xmm0             ## xmm0 = mem[0],zero,zero,zero,mem[1],zero,zero,zero,mem[2],zero,zero,zero,mem[3],zero,zero,zero
	pmovzxbd	12(%rsi,%rdi), %xmm1            ## xmm1 = mem[0],zero,zero,zero,mem[1],zero,zero,zero,mem[2],zero,zero,zero,mem[3],zero,zero,zero
	paddd	%xmm2, %xmm0
	paddd	%xmm3, %xmm1
	addq	$16, %rdi
	addq	$-2, %rax
	jne	LBB0_18
## %bb.19:
	testb	$1, %cl
	je	LBB0_21
LBB0_20:
	pmovzxbd	(%rsi,%rdi), %xmm2              ## xmm2 = mem[0],zero,zero,zero,mem[1],zero,zero,zero,mem[2],zero,zero,zero,mem[3],zero,zero,zero
	paddd	%xmm2, %xmm0
	pmovzxbd	4(%rsi,%rdi), %xmm2             ## xmm2 = mem[0],zero,zero,zero,mem[1],zero,zero,zero,mem[2],zero,zero,zero,mem[3],zero,zero,zero
	paddd	%xmm2, %xmm1
LBB0_21:
	paddd	%xmm1, %xmm0
	pshufd	$238, %xmm0, %xmm1              ## xmm1 = xmm0[2,3,2,3]
	paddd	%xmm0, %xmm1
	pshufd	$85, %xmm1, %xmm0               ## xmm0 = xmm1[1,1,1,1]
	paddd	%xmm1, %xmm0
	movd	%xmm0, %eax
	cmpq	%r8, %r9
	je	LBB0_25
## %bb.22:
	subl	%r8d, %edx
	addq	%r8, %rsi
LBB0_23:
	movl	%edx, %ecx
	xorl	%edx, %edx
	.p2align	4, 0x90
LBB0_24:                                ## =>This Inner Loop Header: Depth=1
	movzbl	(%rsi,%rdx), %edi
	addl	%edi, %eax
	incq	%rdx
	cmpl	%edx, %ecx
	jne	LBB0_24
LBB0_25:
	popq	%rbp
	retq
LBB0_8:
	pxor	%xmm0, %xmm0
	xorl	%eax, %eax
	pxor	%xmm1, %xmm1
	testb	$1, %r10b
	jne	LBB0_12
	jmp	LBB0_13
LBB0_5:
	pxor	%xmm1, %xmm1
	xorl	%edi, %edi
	testb	$1, %cl
	jne	LBB0_20
	jmp	LBB0_21
	.cfi_endproc
                                        ## -- End function
	.comm	_HDR_LENGTH,4,2                 ## @HDR_LENGTH
	.no_dead_strip	_mips_cksum
.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 mips_cksum
lCPI0_0:
	.byte	12                              ; 0xc
	.byte	255                             ; 0xff
	.byte	255                             ; 0xff
	.byte	255                             ; 0xff
	.byte	13                              ; 0xd
	.byte	255                             ; 0xff
	.byte	255                             ; 0xff
	.byte	255                             ; 0xff
	.byte	14                              ; 0xe
	.byte	255                             ; 0xff
	.byte	255                             ; 0xff
	.byte	255                             ; 0xff
	.byte	15                              ; 0xf
	.byte	255                             ; 0xff
	.byte	255                             ; 0xff
	.byte	255                             ; 0xff
lCPI0_1:
	.byte	0                               ; 0x0
	.byte	255                             ; 0xff
	.byte	255                             ; 0xff
	.byte	255                             ; 0xff
	.byte	1                               ; 0x1
	.byte	255                             ; 0xff
	.byte	255                             ; 0xff
	.byte	255                             ; 0xff
	.byte	2                               ; 0x2
	.byte	255                             ; 0xff
	.byte	255                             ; 0xff
	.byte	255                             ; 0xff
	.byte	3                               ; 0x3
	.byte	255                             ; 0xff
	.byte	255                             ; 0xff
	.byte	255                             ; 0xff
lCPI0_2:
	.byte	4                               ; 0x4
	.byte	255                             ; 0xff
	.byte	255                             ; 0xff
	.byte	255                             ; 0xff
	.byte	5                               ; 0x5
	.byte	255                             ; 0xff
	.byte	255                             ; 0xff
	.byte	255                             ; 0xff
	.byte	6                               ; 0x6
	.byte	255                             ; 0xff
	.byte	255                             ; 0xff
	.byte	255                             ; 0xff
	.byte	7                               ; 0x7
	.byte	255                             ; 0xff
	.byte	255                             ; 0xff
	.byte	255                             ; 0xff
lCPI0_3:
	.byte	8                               ; 0x8
	.byte	255                             ; 0xff
	.byte	255                             ; 0xff
	.byte	255                             ; 0xff
	.byte	9                               ; 0x9
	.byte	255                             ; 0xff
	.byte	255                             ; 0xff
	.byte	255                             ; 0xff
	.byte	10                              ; 0xa
	.byte	255                             ; 0xff
	.byte	255                             ; 0xff
	.byte	255                             ; 0xff
	.byte	11                              ; 0xb
	.byte	255                             ; 0xff
	.byte	255                             ; 0xff
	.byte	255                             ; 0xff
	.section	__TEXT,__text,regular,pure_instructions
	.p2align	2
_mips_cksum:                            ; @mips_cksum
	.cfi_startproc
; %bb.0:
Lloh0:
	adrp	x9, _HDR_LENGTH@GOTPAGE
Lloh1:
	ldr	x9, [x9, _HDR_LENGTH@GOTPAGEOFF]
Lloh2:
	ldr	w10, [x9]
	subs	w9, w10, #1
	b.eq	LBB0_3
; %bb.1:
	mov	x8, x0
	sub	w13, w10, #2
	cmp	w13, #7
	b.hs	LBB0_4
; %bb.2:
	mov	w0, #0
	mov	x14, x8
	b	LBB0_14
LBB0_3:
	mov	w0, #0
	b	LBB0_16
LBB0_4:
	add	x10, x13, #1
	adrp	x11, lCPI0_1@PAGE
	adrp	x12, lCPI0_2@PAGE
	cmp	w13, #31
	b.hs	LBB0_6
; %bb.5:
	mov	w0, #0
	mov	x13, #0
	b	LBB0_10
LBB0_6:
	and	x13, x10, #0x1ffffffe0
	add	x14, x8, #17
	movi.2d	v0, #0000000000000000
Lloh3:
	adrp	x15, lCPI0_0@PAGE
Lloh4:
	ldr	q1, [x15, lCPI0_0@PAGEOFF]
	ldr	q2, [x11, lCPI0_1@PAGEOFF]
	ldr	q3, [x12, lCPI0_2@PAGEOFF]
	movi.2d	v5, #0000000000000000
Lloh5:
	adrp	x15, lCPI0_3@PAGE
Lloh6:
	ldr	q17, [x15, lCPI0_3@PAGEOFF]
	mov	x15, x13
	movi.2d	v4, #0000000000000000
	movi.2d	v7, #0000000000000000
	movi.2d	v6, #0000000000000000
	movi.2d	v18, #0000000000000000
	movi.2d	v16, #0000000000000000
	movi.2d	v19, #0000000000000000
LBB0_7:                                 ; =>This Inner Loop Header: Depth=1
	ldp	q20, q24, [x14, #-16]
	tbl.16b	v21, { v20 }, v1
	tbl.16b	v22, { v20 }, v2
	tbl.16b	v23, { v20 }, v3
	tbl.16b	v20, { v20 }, v17
	tbl.16b	v25, { v24 }, v1
	tbl.16b	v26, { v24 }, v2
	tbl.16b	v27, { v24 }, v3
	tbl.16b	v24, { v24 }, v17
	add.4s	v4, v4, v20
	add.4s	v5, v5, v23
	add.4s	v0, v0, v22
	add.4s	v7, v7, v21
	add.4s	v16, v16, v24
	add.4s	v18, v18, v27
	add.4s	v6, v6, v26
	add.4s	v19, v19, v25
	add	x14, x14, #32
	subs	x15, x15, #32
	b.ne	LBB0_7
; %bb.8:
	add.4s	v1, v18, v5
	add.4s	v2, v19, v7
	add.4s	v0, v6, v0
	add.4s	v3, v16, v4
	add.4s	v0, v0, v3
	add.4s	v1, v1, v2
	add.4s	v0, v0, v1
	addv.4s	s0, v0
	fmov	w0, s0
	cmp	x10, x13
	b.eq	LBB0_16
; %bb.9:
	tst	x10, #0x18
	b.eq	LBB0_13
LBB0_10:
	and	x15, x10, #0x1fffffff8
	sub	w9, w9, w15
	add	x14, x8, x15
	movi.2d	v0, #0000000000000000
	mov.s	v0[0], w0
	movi.2d	v1, #0000000000000000
	add	x8, x13, x8
	add	x8, x8, #1
	sub	x13, x13, x15
	ldr	q2, [x11, lCPI0_1@PAGEOFF]
	ldr	q3, [x12, lCPI0_2@PAGEOFF]
LBB0_11:                                ; =>This Inner Loop Header: Depth=1
	ldr	d4, [x8], #8
	tbl.16b	v5, { v4 }, v2
	tbl.16b	v4, { v4 }, v3
	add.4s	v1, v1, v4
	add.4s	v0, v0, v5
	adds	x13, x13, #8
	b.ne	LBB0_11
; %bb.12:
	add.4s	v0, v0, v1
	addv.4s	s0, v0
	fmov	w0, s0
	cmp	x10, x15
	b.ne	LBB0_14
	b	LBB0_16
LBB0_13:
	add	x14, x8, x13
	sub	w9, w9, w13
LBB0_14:
	add	x8, x14, #1
LBB0_15:                                ; =>This Inner Loop Header: Depth=1
	ldrb	w10, [x8], #1
	add	w0, w0, w10
	subs	w9, w9, #1
	b.ne	LBB0_15
LBB0_16:
	cbz	w2, LBB0_30
; %bb.17:
	sub	w9, w2, #1
	cmp	w9, #7
	b.hs	LBB0_19
; %bb.18:
	mov	x10, x1
	b	LBB0_29
LBB0_19:
	add	x8, x9, #1
	cmp	w9, #31
	b.hs	LBB0_21
; %bb.20:
	mov	x9, #0
	b	LBB0_25
LBB0_21:
	and	x9, x8, #0x1ffffffe0
	movi.2d	v1, #0000000000000000
	movi.2d	v0, #0000000000000000
	mov.s	v0[0], w0
	add	x10, x1, #16
Lloh7:
	adrp	x11, lCPI0_0@PAGE
Lloh8:
	ldr	q2, [x11, lCPI0_0@PAGEOFF]
Lloh9:
	adrp	x11, lCPI0_1@PAGE
Lloh10:
	ldr	q3, [x11, lCPI0_1@PAGEOFF]
Lloh11:
	adrp	x11, lCPI0_2@PAGE
Lloh12:
	ldr	q4, [x11, lCPI0_2@PAGEOFF]
Lloh13:
	adrp	x11, lCPI0_3@PAGE
Lloh14:
	ldr	q5, [x11, lCPI0_3@PAGEOFF]
	mov	x11, x9
	movi.2d	v6, #0000000000000000
	movi.2d	v7, #0000000000000000
	movi.2d	v16, #0000000000000000
	movi.2d	v18, #0000000000000000
	movi.2d	v17, #0000000000000000
	movi.2d	v19, #0000000000000000
LBB0_22:                                ; =>This Inner Loop Header: Depth=1
	ldp	q20, q24, [x10, #-16]
	tbl.16b	v21, { v20 }, v2
	tbl.16b	v22, { v20 }, v3
	tbl.16b	v23, { v20 }, v4
	tbl.16b	v20, { v20 }, v5
	tbl.16b	v25, { v24 }, v2
	tbl.16b	v26, { v24 }, v3
	tbl.16b	v27, { v24 }, v4
	tbl.16b	v24, { v24 }, v5
	add.4s	v6, v6, v20
	add.4s	v1, v1, v23
	add.4s	v0, v0, v22
	add.4s	v7, v7, v21
	add.4s	v17, v17, v24
	add.4s	v18, v18, v27
	add.4s	v16, v16, v26
	add.4s	v19, v19, v25
	add	x10, x10, #32
	subs	x11, x11, #32
	b.ne	LBB0_22
; %bb.23:
	add.4s	v1, v18, v1
	add.4s	v2, v19, v7
	add.4s	v0, v16, v0
	add.4s	v3, v17, v6
	add.4s	v0, v0, v3
	add.4s	v1, v1, v2
	add.4s	v0, v0, v1
	addv.4s	s0, v0
	fmov	w0, s0
	cmp	x8, x9
	b.eq	LBB0_30
; %bb.24:
	tst	x8, #0x18
	b.eq	LBB0_28
LBB0_25:
	and	x11, x8, #0x1fffffff8
	sub	w2, w2, w11
	add	x10, x1, x11
	movi.2d	v0, #0000000000000000
	movi.2d	v1, #0000000000000000
	mov.s	v1[0], w0
	add	x12, x1, x9
	sub	x9, x9, x11
Lloh15:
	adrp	x13, lCPI0_1@PAGE
Lloh16:
	ldr	q2, [x13, lCPI0_1@PAGEOFF]
Lloh17:
	adrp	x13, lCPI0_2@PAGE
Lloh18:
	ldr	q3, [x13, lCPI0_2@PAGEOFF]
LBB0_26:                                ; =>This Inner Loop Header: Depth=1
	ldr	d4, [x12], #8
	tbl.16b	v5, { v4 }, v2
	tbl.16b	v4, { v4 }, v3
	add.4s	v0, v0, v4
	add.4s	v1, v1, v5
	adds	x9, x9, #8
	b.ne	LBB0_26
; %bb.27:
	add.4s	v0, v1, v0
	addv.4s	s0, v0
	fmov	w0, s0
	cmp	x8, x11
	b.ne	LBB0_29
	b	LBB0_30
LBB0_28:
	add	x10, x1, x9
	sub	w2, w2, w9
LBB0_29:                                ; =>This Inner Loop Header: Depth=1
	ldrb	w8, [x10], #1
	add	w0, w0, w8
	subs	w2, w2, #1
	b.ne	LBB0_29
LBB0_30:
	ret
	.loh AdrpLdrGotLdr	Lloh0, Lloh1, Lloh2
	.loh AdrpLdr	Lloh5, Lloh6
	.loh AdrpAdrp	Lloh3, Lloh5
	.loh AdrpLdr	Lloh3, Lloh4
	.loh AdrpLdr	Lloh13, Lloh14
	.loh AdrpAdrp	Lloh11, Lloh13
	.loh AdrpLdr	Lloh11, Lloh12
	.loh AdrpAdrp	Lloh9, Lloh11
	.loh AdrpLdr	Lloh9, Lloh10
	.loh AdrpAdrp	Lloh7, Lloh9
	.loh AdrpLdr	Lloh7, Lloh8
	.loh AdrpLdr	Lloh17, Lloh18
	.loh AdrpAdrp	Lloh15, Lloh17
	.loh AdrpLdr	Lloh15, Lloh16
	.cfi_endproc
                                        ; -- End function
	.comm	_HDR_LENGTH,4,2                 ; @HDR_LENGTH
	.no_dead_strip	_mips_cksum
.subsections_via_symbols
