	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.section	__TEXT,__literal16,16byte_literals
	.p2align	4                               ## -- Begin function calculate_ecc
LCPI0_0:
	.long	1                               ## 0x1
	.long	1                               ## 0x1
	.long	1                               ## 0x1
	.long	1                               ## 0x1
LCPI0_1:
	.long	1                               ## 0x1
	.long	2                               ## 0x2
	.long	4                               ## 0x4
	.long	8                               ## 0x8
LCPI0_2:
	.long	16                              ## 0x10
	.long	32                              ## 0x20
	.long	64                              ## 0x40
	.long	128                             ## 0x80
LCPI0_3:
	.long	256                             ## 0x100
	.long	512                             ## 0x200
	.long	1024                            ## 0x400
	.long	2048                            ## 0x800
LCPI0_4:
	.long	4096                            ## 0x1000
	.long	8192                            ## 0x2000
	.long	16384                           ## 0x4000
	.long	32768                           ## 0x8000
LCPI0_5:
	.long	65536                           ## 0x10000
	.long	131072                          ## 0x20000
	.long	262144                          ## 0x40000
	.long	524288                          ## 0x80000
LCPI0_6:
	.long	1048576                         ## 0x100000
	.long	2097152                         ## 0x200000
	.long	4194304                         ## 0x400000
	.long	8388608                         ## 0x800000
LCPI0_7:
	.long	16777216                        ## 0x1000000
	.long	33554432                        ## 0x2000000
	.long	67108864                        ## 0x4000000
	.long	134217728                       ## 0x8000000
LCPI0_8:
	.long	268435456                       ## 0x10000000
	.long	536870912                       ## 0x20000000
	.long	1073741824                      ## 0x40000000
	.long	2147483648                      ## 0x80000000
	.section	__TEXT,__text,regular,pure_instructions
	.p2align	4, 0x90
_calculate_ecc:                         ## @calculate_ecc
	.cfi_startproc
## %bb.0:
	pushq	%rbp
	.cfi_def_cfa_offset 16
	.cfi_offset %rbp, -16
	movq	%rsp, %rbp
	.cfi_def_cfa_register %rbp
	subq	$96, %rsp
	movd	%esi, %xmm0
	pshufd	$0, %xmm0, %xmm8                ## xmm8 = xmm0[0,0,0,0]
	movdqa	%xmm0, %xmm3
	movd	%edi, %xmm9
	pshufd	$0, %xmm9, %xmm5                ## xmm5 = xmm9[0,0,0,0]
	movdqa	%xmm5, %xmm0
	psrld	$3, %xmm0
	movdqa	%xmm5, %xmm1
	psrld	$1, %xmm1
	pblendw	$240, %xmm0, %xmm1              ## xmm1 = xmm1[0,1,2,3],xmm0[4,5,6,7]
	movdqa	%xmm5, %xmm0
	psrld	$2, %xmm0
	pblendw	$15, %xmm9, %xmm0               ## xmm0 = xmm9[0,1,2,3],xmm0[4,5,6,7]
	movdqa	%xmm9, %xmm4
	pblendw	$204, %xmm1, %xmm0              ## xmm0 = xmm0[0,1],xmm1[2,3],xmm0[4,5],xmm1[6,7]
	movdqa	%xmm0, -64(%rbp)                ## 16-byte Spill
	movdqa	%xmm8, %xmm0
	psrld	$3, %xmm0
	movdqa	%xmm8, %xmm1
	psrld	$1, %xmm1
	pblendw	$240, %xmm0, %xmm1              ## xmm1 = xmm1[0,1,2,3],xmm0[4,5,6,7]
	movdqa	%xmm8, %xmm0
	psrld	$2, %xmm0
	pblendw	$15, %xmm3, %xmm0               ## xmm0 = xmm3[0,1,2,3],xmm0[4,5,6,7]
	pblendw	$204, %xmm1, %xmm0              ## xmm0 = xmm0[0,1],xmm1[2,3],xmm0[4,5],xmm1[6,7]
	movdqa	%xmm0, -48(%rbp)                ## 16-byte Spill
	movdqa	%xmm5, %xmm0
	psrld	$7, %xmm0
	movdqa	%xmm5, %xmm1
	psrld	$5, %xmm1
	pblendw	$240, %xmm0, %xmm1              ## xmm1 = xmm1[0,1,2,3],xmm0[4,5,6,7]
	movdqa	%xmm9, %xmm0
	psrld	$4, %xmm0
	movdqa	%xmm5, %xmm2
	psrld	$6, %xmm2
	pblendw	$15, %xmm0, %xmm2               ## xmm2 = xmm0[0,1,2,3],xmm2[4,5,6,7]
	pblendw	$204, %xmm1, %xmm2              ## xmm2 = xmm2[0,1],xmm1[2,3],xmm2[4,5],xmm1[6,7]
	movdqa	%xmm2, -32(%rbp)                ## 16-byte Spill
	movdqa	%xmm8, %xmm0
	psrld	$7, %xmm0
	movdqa	%xmm8, %xmm1
	psrld	$5, %xmm1
	pblendw	$240, %xmm0, %xmm1              ## xmm1 = xmm1[0,1,2,3],xmm0[4,5,6,7]
	movdqa	%xmm3, %xmm0
	psrld	$4, %xmm0
	movdqa	%xmm8, %xmm11
	psrld	$6, %xmm11
	pblendw	$15, %xmm0, %xmm11              ## xmm11 = xmm0[0,1,2,3],xmm11[4,5,6,7]
	pblendw	$204, %xmm1, %xmm11             ## xmm11 = xmm11[0,1],xmm1[2,3],xmm11[4,5],xmm1[6,7]
	movdqa	%xmm5, %xmm0
	psrld	$11, %xmm0
	movdqa	%xmm5, %xmm1
	psrld	$9, %xmm1
	pblendw	$240, %xmm0, %xmm1              ## xmm1 = xmm1[0,1,2,3],xmm0[4,5,6,7]
	movdqa	%xmm9, %xmm0
	psrld	$8, %xmm0
	movdqa	%xmm5, %xmm12
	psrld	$10, %xmm12
	pblendw	$15, %xmm0, %xmm12              ## xmm12 = xmm0[0,1,2,3],xmm12[4,5,6,7]
	pblendw	$204, %xmm1, %xmm12             ## xmm12 = xmm12[0,1],xmm1[2,3],xmm12[4,5],xmm1[6,7]
	movdqa	%xmm8, %xmm0
	psrld	$11, %xmm0
	movdqa	%xmm8, %xmm1
	psrld	$9, %xmm1
	pblendw	$240, %xmm0, %xmm1              ## xmm1 = xmm1[0,1,2,3],xmm0[4,5,6,7]
	movdqa	%xmm3, %xmm0
	psrld	$8, %xmm0
	movdqa	%xmm8, %xmm13
	psrld	$10, %xmm13
	pblendw	$15, %xmm0, %xmm13              ## xmm13 = xmm0[0,1,2,3],xmm13[4,5,6,7]
	pblendw	$204, %xmm1, %xmm13             ## xmm13 = xmm13[0,1],xmm1[2,3],xmm13[4,5],xmm1[6,7]
	movdqa	%xmm5, %xmm0
	psrld	$15, %xmm0
	movdqa	%xmm5, %xmm1
	psrld	$13, %xmm1
	pblendw	$240, %xmm0, %xmm1              ## xmm1 = xmm1[0,1,2,3],xmm0[4,5,6,7]
	movdqa	%xmm9, %xmm0
	psrld	$12, %xmm0
	movdqa	%xmm5, %xmm14
	psrld	$14, %xmm14
	pblendw	$15, %xmm0, %xmm14              ## xmm14 = xmm0[0,1,2,3],xmm14[4,5,6,7]
	pblendw	$204, %xmm1, %xmm14             ## xmm14 = xmm14[0,1],xmm1[2,3],xmm14[4,5],xmm1[6,7]
	movdqa	%xmm8, %xmm0
	psrld	$15, %xmm0
	movdqa	%xmm8, %xmm1
	psrld	$13, %xmm1
	pblendw	$240, %xmm0, %xmm1              ## xmm1 = xmm1[0,1,2,3],xmm0[4,5,6,7]
	movdqa	%xmm3, %xmm0
	psrld	$12, %xmm0
	movdqa	%xmm8, %xmm10
	psrld	$14, %xmm10
	pblendw	$15, %xmm0, %xmm10              ## xmm10 = xmm0[0,1,2,3],xmm10[4,5,6,7]
	pblendw	$204, %xmm1, %xmm10             ## xmm10 = xmm10[0,1],xmm1[2,3],xmm10[4,5],xmm1[6,7]
	movdqa	%xmm5, %xmm0
	psrld	$19, %xmm0
	movdqa	%xmm5, %xmm1
	psrld	$17, %xmm1
	pblendw	$240, %xmm0, %xmm1              ## xmm1 = xmm1[0,1,2,3],xmm0[4,5,6,7]
	movdqa	%xmm9, %xmm0
	psrld	$16, %xmm0
	movdqa	%xmm5, %xmm15
	psrld	$18, %xmm15
	pblendw	$15, %xmm0, %xmm15              ## xmm15 = xmm0[0,1,2,3],xmm15[4,5,6,7]
	pblendw	$204, %xmm1, %xmm15             ## xmm15 = xmm15[0,1],xmm1[2,3],xmm15[4,5],xmm1[6,7]
	movdqa	%xmm8, %xmm0
	psrld	$19, %xmm0
	movdqa	%xmm8, %xmm1
	psrld	$17, %xmm1
	pblendw	$240, %xmm0, %xmm1              ## xmm1 = xmm1[0,1,2,3],xmm0[4,5,6,7]
	movdqa	%xmm3, %xmm0
	psrld	$16, %xmm0
	movdqa	%xmm8, %xmm9
	psrld	$18, %xmm9
	pblendw	$15, %xmm0, %xmm9               ## xmm9 = xmm0[0,1,2,3],xmm9[4,5,6,7]
	pblendw	$204, %xmm1, %xmm9              ## xmm9 = xmm9[0,1],xmm1[2,3],xmm9[4,5],xmm1[6,7]
	movdqa	%xmm5, %xmm0
	psrld	$23, %xmm0
	movdqa	%xmm5, %xmm2
	psrld	$21, %xmm2
	pblendw	$240, %xmm0, %xmm2              ## xmm2 = xmm2[0,1,2,3],xmm0[4,5,6,7]
	movdqa	%xmm4, -16(%rbp)                ## 16-byte Spill
	movdqa	%xmm4, %xmm0
	psrld	$20, %xmm0
	movdqa	%xmm5, %xmm6
	psrld	$22, %xmm6
	pblendw	$15, %xmm0, %xmm6               ## xmm6 = xmm0[0,1,2,3],xmm6[4,5,6,7]
	pblendw	$204, %xmm2, %xmm6              ## xmm6 = xmm6[0,1],xmm2[2,3],xmm6[4,5],xmm2[6,7]
	movdqa	%xmm8, %xmm0
	psrld	$23, %xmm0
	movdqa	%xmm8, %xmm2
	psrld	$21, %xmm2
	pblendw	$240, %xmm0, %xmm2              ## xmm2 = xmm2[0,1,2,3],xmm0[4,5,6,7]
	movdqa	%xmm3, %xmm0
	psrld	$20, %xmm3
	movdqa	%xmm8, %xmm7
	psrld	$22, %xmm7
	pblendw	$15, %xmm3, %xmm7               ## xmm7 = xmm3[0,1,2,3],xmm7[4,5,6,7]
	pblendw	$204, %xmm2, %xmm7              ## xmm7 = xmm7[0,1],xmm2[2,3],xmm7[4,5],xmm2[6,7]
	movdqa	%xmm5, %xmm2
	psrld	$27, %xmm2
	movdqa	%xmm5, %xmm3
	psrld	$25, %xmm3
	pblendw	$240, %xmm2, %xmm3              ## xmm3 = xmm3[0,1,2,3],xmm2[4,5,6,7]
	movdqa	%xmm4, %xmm2
	psrld	$24, %xmm2
	movdqa	%xmm5, %xmm1
	psrld	$26, %xmm1
	pblendw	$15, %xmm2, %xmm1               ## xmm1 = xmm2[0,1,2,3],xmm1[4,5,6,7]
	pblendw	$204, %xmm3, %xmm1              ## xmm1 = xmm1[0,1],xmm3[2,3],xmm1[4,5],xmm3[6,7]
	movdqa	%xmm8, %xmm2
	psrld	$27, %xmm2
	movdqa	%xmm8, %xmm3
	psrld	$25, %xmm3
	pblendw	$240, %xmm2, %xmm3              ## xmm3 = xmm3[0,1,2,3],xmm2[4,5,6,7]
	movdqa	%xmm0, %xmm2
	psrld	$24, %xmm2
	movdqa	%xmm8, %xmm4
	psrld	$26, %xmm4
	pblendw	$15, %xmm2, %xmm4               ## xmm4 = xmm2[0,1,2,3],xmm4[4,5,6,7]
	pblendw	$204, %xmm3, %xmm4              ## xmm4 = xmm4[0,1],xmm3[2,3],xmm4[4,5],xmm3[6,7]
	movdqa	%xmm5, %xmm2
	psrld	$31, %xmm2
	movdqa	%xmm5, %xmm3
	psrld	$29, %xmm3
	pblendw	$240, %xmm2, %xmm3              ## xmm3 = xmm3[0,1,2,3],xmm2[4,5,6,7]
	movdqa	-16(%rbp), %xmm2                ## 16-byte Reload
	psrld	$28, %xmm2
	psrld	$30, %xmm5
	pblendw	$15, %xmm2, %xmm5               ## xmm5 = xmm2[0,1,2,3],xmm5[4,5,6,7]
	pblendw	$204, %xmm3, %xmm5              ## xmm5 = xmm5[0,1],xmm3[2,3],xmm5[4,5],xmm3[6,7]
	movdqa	%xmm8, %xmm2
	psrld	$31, %xmm2
	movdqa	%xmm8, %xmm3
	psrld	$29, %xmm3
	pblendw	$240, %xmm2, %xmm3              ## xmm3 = xmm3[0,1,2,3],xmm2[4,5,6,7]
	psrld	$28, %xmm0
	psrld	$30, %xmm8
	pblendw	$15, %xmm0, %xmm8               ## xmm8 = xmm0[0,1,2,3],xmm8[4,5,6,7]
	pblendw	$204, %xmm3, %xmm8              ## xmm8 = xmm8[0,1],xmm3[2,3],xmm8[4,5],xmm3[6,7]
	movdqa	LCPI0_0(%rip), %xmm2            ## xmm2 = [1,1,1,1]
	movdqa	-64(%rbp), %xmm0                ## 16-byte Reload
	pand	%xmm2, %xmm0
	movdqa	%xmm0, -64(%rbp)                ## 16-byte Spill
	movdqa	-48(%rbp), %xmm0                ## 16-byte Reload
	pand	%xmm2, %xmm0
	movdqa	%xmm0, -48(%rbp)                ## 16-byte Spill
	movdqa	-32(%rbp), %xmm0                ## 16-byte Reload
	pand	%xmm2, %xmm0
	movdqa	%xmm0, -32(%rbp)                ## 16-byte Spill
	pand	%xmm2, %xmm11
	movdqa	%xmm11, -224(%rbp)              ## 16-byte Spill
	pand	%xmm2, %xmm12
	movdqa	%xmm12, -208(%rbp)              ## 16-byte Spill
	pand	%xmm2, %xmm13
	movdqa	%xmm13, -192(%rbp)              ## 16-byte Spill
	pand	%xmm2, %xmm14
	movdqa	%xmm14, -160(%rbp)              ## 16-byte Spill
	pand	%xmm2, %xmm10
	movdqa	%xmm10, -144(%rbp)              ## 16-byte Spill
	pand	%xmm2, %xmm15
	movdqa	%xmm15, -128(%rbp)              ## 16-byte Spill
	pand	%xmm2, %xmm9
	movdqa	%xmm9, -112(%rbp)               ## 16-byte Spill
	pand	%xmm2, %xmm6
	movdqa	%xmm6, -96(%rbp)                ## 16-byte Spill
	pand	%xmm2, %xmm7
	movdqa	%xmm7, -80(%rbp)                ## 16-byte Spill
	pand	%xmm2, %xmm1
	movdqa	%xmm1, %xmm7
	pand	%xmm2, %xmm4
	movdqa	%xmm4, %xmm6
	pand	%xmm2, %xmm5
	movdqa	%xmm5, -16(%rbp)                ## 16-byte Spill
	pand	%xmm2, %xmm8
	movdqa	%xmm8, -176(%rbp)               ## 16-byte Spill
	movq	_ecc_table@GOTPCREL(%rip), %rax
	movq	(%rax), %rdx
	xorl	%ecx, %ecx
	xorl	%eax, %eax
	movdqa	LCPI0_1(%rip), %xmm13           ## xmm13 = [1,2,4,8]
	movdqa	LCPI0_2(%rip), %xmm15           ## xmm15 = [16,32,64,128]
	movdqa	LCPI0_3(%rip), %xmm10           ## xmm10 = [256,512,1024,2048]
	movdqa	LCPI0_4(%rip), %xmm11           ## xmm11 = [4096,8192,16384,32768]
	movdqa	LCPI0_5(%rip), %xmm12           ## xmm12 = [65536,131072,262144,524288]
	movdqa	LCPI0_6(%rip), %xmm14           ## xmm14 = [1048576,2097152,4194304,8388608]
	movdqa	LCPI0_7(%rip), %xmm2            ## xmm2 = [16777216,33554432,67108864,134217728]
	movdqa	LCPI0_8(%rip), %xmm3            ## xmm3 = [268435456,536870912,1073741824,2147483648]
	.p2align	4, 0x90
LBB0_1:                                 ## =>This Inner Loop Header: Depth=1
	movd	4(%rdx,%rcx,8), %xmm4           ## xmm4 = mem[0],zero,zero,zero
	pshufd	$0, %xmm4, %xmm4                ## xmm4 = xmm4[0,0,0,0]
	movd	(%rdx,%rcx,8), %xmm5            ## xmm5 = mem[0],zero,zero,zero
	pshufd	$0, %xmm5, %xmm8                ## xmm8 = xmm5[0,0,0,0]
	movdqa	%xmm8, %xmm5
	pand	%xmm13, %xmm5
	pcmpeqd	%xmm13, %xmm5
	pand	-64(%rbp), %xmm5                ## 16-byte Folded Reload
	movdqa	%xmm4, %xmm1
	pand	%xmm13, %xmm1
	pcmpeqd	%xmm13, %xmm1
	pand	-48(%rbp), %xmm1                ## 16-byte Folded Reload
	pxor	%xmm5, %xmm1
	movdqa	%xmm8, %xmm0
	pand	%xmm15, %xmm0
	pcmpeqd	%xmm15, %xmm0
	pand	-32(%rbp), %xmm0                ## 16-byte Folded Reload
	movdqa	%xmm4, %xmm5
	pand	%xmm15, %xmm5
	pcmpeqd	%xmm15, %xmm5
	pand	-224(%rbp), %xmm5               ## 16-byte Folded Reload
	pxor	%xmm0, %xmm5
	pxor	%xmm1, %xmm5
	movdqa	%xmm8, %xmm0
	pand	%xmm10, %xmm0
	pcmpeqd	%xmm10, %xmm0
	pand	-208(%rbp), %xmm0               ## 16-byte Folded Reload
	movdqa	%xmm4, %xmm1
	pand	%xmm10, %xmm1
	pcmpeqd	%xmm10, %xmm1
	pand	-192(%rbp), %xmm1               ## 16-byte Folded Reload
	pxor	%xmm0, %xmm1
	movdqa	%xmm8, %xmm9
	pand	%xmm11, %xmm9
	pcmpeqd	%xmm11, %xmm9
	pand	-160(%rbp), %xmm9               ## 16-byte Folded Reload
	pxor	%xmm1, %xmm9
	pxor	%xmm5, %xmm9
	movdqa	%xmm4, %xmm0
	pand	%xmm11, %xmm0
	pcmpeqd	%xmm11, %xmm0
	pand	-144(%rbp), %xmm0               ## 16-byte Folded Reload
	movdqa	%xmm8, %xmm1
	pand	%xmm12, %xmm1
	pcmpeqd	%xmm12, %xmm1
	pand	-128(%rbp), %xmm1               ## 16-byte Folded Reload
	pxor	%xmm0, %xmm1
	movdqa	%xmm4, %xmm0
	pand	%xmm12, %xmm0
	pcmpeqd	%xmm12, %xmm0
	pand	-112(%rbp), %xmm0               ## 16-byte Folded Reload
	pxor	%xmm1, %xmm0
	movdqa	%xmm8, %xmm5
	pand	%xmm14, %xmm5
	pcmpeqd	%xmm14, %xmm5
	pand	-96(%rbp), %xmm5                ## 16-byte Folded Reload
	pxor	%xmm0, %xmm5
	pxor	%xmm9, %xmm5
	movdqa	%xmm4, %xmm0
	pand	%xmm14, %xmm0
	pcmpeqd	%xmm14, %xmm0
	pand	-80(%rbp), %xmm0                ## 16-byte Folded Reload
	movdqa	%xmm8, %xmm1
	pand	%xmm2, %xmm1
	pcmpeqd	%xmm2, %xmm1
	pand	%xmm7, %xmm1
	pxor	%xmm0, %xmm1
	movdqa	%xmm4, %xmm0
	pand	%xmm2, %xmm0
	pcmpeqd	%xmm2, %xmm0
	pand	%xmm6, %xmm0
	pxor	%xmm1, %xmm0
	pand	%xmm3, %xmm8
	pcmpeqd	%xmm3, %xmm8
	pand	-16(%rbp), %xmm8                ## 16-byte Folded Reload
	pxor	%xmm0, %xmm8
	pand	%xmm3, %xmm4
	pcmpeqd	%xmm3, %xmm4
	pand	-176(%rbp), %xmm4               ## 16-byte Folded Reload
	pxor	%xmm8, %xmm4
	pxor	%xmm5, %xmm4
	pshufd	$238, %xmm4, %xmm0              ## xmm0 = xmm4[2,3,2,3]
	pxor	%xmm4, %xmm0
	pshufd	$85, %xmm0, %xmm1               ## xmm1 = xmm0[1,1,1,1]
	pxor	%xmm0, %xmm1
	movd	%xmm1, %esi
	shll	%cl, %esi
	orl	%esi, %eax
	incq	%rcx
	cmpq	$8, %rcx
	jne	LBB0_1
## %bb.2:
	addq	$96, %rsp
	popq	%rbp
	retq
	.cfi_endproc
                                        ## -- End function
	.comm	_ecc_table,8,3                  ## @ecc_table
	.no_dead_strip	_calculate_ecc
.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 calculate_ecc
lCPI0_0:
	.long	0                               ; 0x0
	.long	4294967295                      ; 0xffffffff
	.long	4294967294                      ; 0xfffffffe
	.long	4294967293                      ; 0xfffffffd
lCPI0_1:
	.long	4294967292                      ; 0xfffffffc
	.long	4294967291                      ; 0xfffffffb
	.long	4294967290                      ; 0xfffffffa
	.long	4294967289                      ; 0xfffffff9
lCPI0_2:
	.long	4294967288                      ; 0xfffffff8
	.long	4294967287                      ; 0xfffffff7
	.long	4294967286                      ; 0xfffffff6
	.long	4294967285                      ; 0xfffffff5
lCPI0_3:
	.long	4294967284                      ; 0xfffffff4
	.long	4294967283                      ; 0xfffffff3
	.long	4294967282                      ; 0xfffffff2
	.long	4294967281                      ; 0xfffffff1
lCPI0_4:
	.long	4294967280                      ; 0xfffffff0
	.long	4294967279                      ; 0xffffffef
	.long	4294967278                      ; 0xffffffee
	.long	4294967277                      ; 0xffffffed
lCPI0_5:
	.long	4294967276                      ; 0xffffffec
	.long	4294967275                      ; 0xffffffeb
	.long	4294967274                      ; 0xffffffea
	.long	4294967273                      ; 0xffffffe9
lCPI0_6:
	.long	4294967272                      ; 0xffffffe8
	.long	4294967271                      ; 0xffffffe7
	.long	4294967270                      ; 0xffffffe6
	.long	4294967269                      ; 0xffffffe5
lCPI0_7:
	.long	4294967268                      ; 0xffffffe4
	.long	4294967267                      ; 0xffffffe3
	.long	4294967266                      ; 0xffffffe2
	.long	4294967265                      ; 0xffffffe1
lCPI0_8:
	.long	1                               ; 0x1
	.long	2                               ; 0x2
	.long	4                               ; 0x4
	.long	8                               ; 0x8
lCPI0_9:
	.long	16                              ; 0x10
	.long	32                              ; 0x20
	.long	64                              ; 0x40
	.long	128                             ; 0x80
lCPI0_10:
	.long	256                             ; 0x100
	.long	512                             ; 0x200
	.long	1024                            ; 0x400
	.long	2048                            ; 0x800
lCPI0_11:
	.long	4096                            ; 0x1000
	.long	8192                            ; 0x2000
	.long	16384                           ; 0x4000
	.long	32768                           ; 0x8000
lCPI0_12:
	.long	65536                           ; 0x10000
	.long	131072                          ; 0x20000
	.long	262144                          ; 0x40000
	.long	524288                          ; 0x80000
lCPI0_13:
	.long	1048576                         ; 0x100000
	.long	2097152                         ; 0x200000
	.long	4194304                         ; 0x400000
	.long	8388608                         ; 0x800000
lCPI0_14:
	.long	16777216                        ; 0x1000000
	.long	33554432                        ; 0x2000000
	.long	67108864                        ; 0x4000000
	.long	134217728                       ; 0x8000000
lCPI0_15:
	.long	268435456                       ; 0x10000000
	.long	536870912                       ; 0x20000000
	.long	1073741824                      ; 0x40000000
	.long	2147483648                      ; 0x80000000
	.section	__TEXT,__text,regular,pure_instructions
	.p2align	2
_calculate_ecc:                         ; @calculate_ecc
	.cfi_startproc
; %bb.0:
	stp	d13, d12, [sp, #-48]!           ; 16-byte Folded Spill
	.cfi_def_cfa_offset 48
	stp	d11, d10, [sp, #16]             ; 16-byte Folded Spill
	stp	d9, d8, [sp, #32]               ; 16-byte Folded Spill
	.cfi_offset b8, -8
	.cfi_offset b9, -16
	.cfi_offset b10, -24
	.cfi_offset b11, -32
	.cfi_offset b12, -40
	.cfi_offset b13, -48
	mov	x8, x0
	mov	x9, #0
	mov	w0, #0
	dup.4s	v28, w1
	dup.4s	v22, w8
Lloh0:
	adrp	x8, lCPI0_0@PAGE
Lloh1:
	ldr	q1, [x8, lCPI0_0@PAGEOFF]
	ushl.4s	v0, v22, v1
	movi.4s	v29, #1
	and.16b	v0, v0, v29
	ushl.4s	v1, v28, v1
	and.16b	v1, v1, v29
Lloh2:
	adrp	x8, lCPI0_1@PAGE
Lloh3:
	ldr	q3, [x8, lCPI0_1@PAGEOFF]
	ushl.4s	v2, v22, v3
	and.16b	v2, v2, v29
	ushl.4s	v3, v28, v3
	and.16b	v3, v3, v29
Lloh4:
	adrp	x8, lCPI0_2@PAGE
Lloh5:
	ldr	q5, [x8, lCPI0_2@PAGEOFF]
	ushl.4s	v4, v22, v5
	and.16b	v4, v4, v29
	ushl.4s	v5, v28, v5
	and.16b	v5, v5, v29
Lloh6:
	adrp	x8, lCPI0_3@PAGE
Lloh7:
	ldr	q7, [x8, lCPI0_3@PAGEOFF]
	ushl.4s	v6, v22, v7
	and.16b	v6, v6, v29
	ushl.4s	v7, v28, v7
	and.16b	v7, v7, v29
Lloh8:
	adrp	x8, lCPI0_4@PAGE
Lloh9:
	ldr	q17, [x8, lCPI0_4@PAGEOFF]
	ushl.4s	v16, v22, v17
	and.16b	v16, v16, v29
	ushl.4s	v17, v28, v17
	and.16b	v17, v17, v29
Lloh10:
	adrp	x8, lCPI0_5@PAGE
Lloh11:
	ldr	q19, [x8, lCPI0_5@PAGEOFF]
	ushl.4s	v18, v22, v19
	and.16b	v18, v18, v29
	ushl.4s	v19, v28, v19
	and.16b	v19, v19, v29
Lloh12:
	adrp	x8, lCPI0_6@PAGE
Lloh13:
	ldr	q21, [x8, lCPI0_6@PAGEOFF]
	ushl.4s	v20, v22, v21
	and.16b	v20, v20, v29
	ushl.4s	v21, v28, v21
	and.16b	v21, v21, v29
Lloh14:
	adrp	x8, lCPI0_7@PAGE
Lloh15:
	ldr	q30, [x8, lCPI0_7@PAGEOFF]
	ushl.4s	v22, v22, v30
	and.16b	v22, v22, v29
Lloh16:
	adrp	x8, lCPI0_8@PAGE
Lloh17:
	ldr	q23, [x8, lCPI0_8@PAGEOFF]
Lloh18:
	adrp	x8, lCPI0_9@PAGE
Lloh19:
	ldr	q24, [x8, lCPI0_9@PAGEOFF]
Lloh20:
	adrp	x8, lCPI0_10@PAGE
Lloh21:
	ldr	q25, [x8, lCPI0_10@PAGEOFF]
Lloh22:
	adrp	x8, lCPI0_11@PAGE
Lloh23:
	ldr	q26, [x8, lCPI0_11@PAGEOFF]
Lloh24:
	adrp	x8, lCPI0_12@PAGE
Lloh25:
	ldr	q27, [x8, lCPI0_12@PAGEOFF]
	ushl.4s	v30, v28, v30
Lloh26:
	adrp	x8, lCPI0_13@PAGE
Lloh27:
	ldr	q28, [x8, lCPI0_13@PAGEOFF]
	and.16b	v29, v30, v29
Lloh28:
	adrp	x8, lCPI0_14@PAGE
Lloh29:
	ldr	q30, [x8, lCPI0_14@PAGEOFF]
Lloh30:
	adrp	x8, lCPI0_15@PAGE
Lloh31:
	ldr	q31, [x8, lCPI0_15@PAGEOFF]
Lloh32:
	adrp	x8, _ecc_table@GOTPAGE
Lloh33:
	ldr	x8, [x8, _ecc_table@GOTPAGEOFF]
Lloh34:
	ldr	x8, [x8]
	add	x8, x8, #4
LBB0_1:                                 ; =>This Inner Loop Header: Depth=1
	sub	x10, x8, #4
	ld1r.4s	{ v8 }, [x10]
	ld1r.4s	{ v9 }, [x8]
	and.16b	v10, v8, v23
	cmeq.4s	v10, v10, #0
	and.16b	v11, v9, v23
	cmeq.4s	v11, v11, #0
	bic.16b	v10, v0, v10
	bcax.16b	v10, v10, v1, v11
	and.16b	v11, v8, v24
	cmeq.4s	v11, v11, #0
	and.16b	v12, v9, v24
	cmeq.4s	v12, v12, #0
	bcax.16b	v10, v10, v2, v11
	bcax.16b	v10, v10, v3, v12
	and.16b	v11, v8, v25
	cmeq.4s	v11, v11, #0
	and.16b	v12, v9, v25
	cmeq.4s	v12, v12, #0
	bcax.16b	v10, v10, v4, v11
	bcax.16b	v10, v10, v5, v12
	and.16b	v11, v8, v26
	cmeq.4s	v11, v11, #0
	and.16b	v12, v9, v26
	cmeq.4s	v12, v12, #0
	bcax.16b	v10, v10, v6, v11
	bcax.16b	v10, v10, v7, v12
	and.16b	v11, v8, v27
	cmeq.4s	v11, v11, #0
	and.16b	v12, v9, v27
	cmeq.4s	v12, v12, #0
	bcax.16b	v10, v10, v16, v11
	bcax.16b	v10, v10, v17, v12
	and.16b	v11, v8, v28
	cmeq.4s	v11, v11, #0
	and.16b	v12, v9, v28
	cmeq.4s	v12, v12, #0
	bcax.16b	v10, v10, v18, v11
	bcax.16b	v10, v10, v19, v12
	and.16b	v11, v8, v30
	cmeq.4s	v11, v11, #0
	and.16b	v12, v9, v30
	cmeq.4s	v12, v12, #0
	bcax.16b	v10, v10, v20, v11
	bcax.16b	v10, v10, v21, v12
	and.16b	v8, v8, v31
	cmeq.4s	v8, v8, #0
	and.16b	v9, v9, v31
	cmeq.4s	v9, v9, #0
	bcax.16b	v8, v10, v22, v8
	bcax.16b	v8, v8, v29, v9
	ext.16b	v9, v8, v8, #8
	eor.8b	v8, v8, v9
	mov.s	w10, v8[1]
	fmov	w11, s8
	eor	w10, w11, w10
	lsl	w10, w10, w9
	orr	w0, w10, w0
	add	x9, x9, #1
	add	x8, x8, #8
	cmp	x9, #8
	b.ne	LBB0_1
; %bb.2:
	ldp	d9, d8, [sp, #32]               ; 16-byte Folded Reload
	ldp	d11, d10, [sp, #16]             ; 16-byte Folded Reload
	ldp	d13, d12, [sp], #48             ; 16-byte Folded Reload
	ret
	.loh AdrpLdrGotLdr	Lloh32, Lloh33, Lloh34
	.loh AdrpAdrp	Lloh30, Lloh32
	.loh AdrpLdr	Lloh30, Lloh31
	.loh AdrpAdrp	Lloh28, Lloh30
	.loh AdrpLdr	Lloh28, Lloh29
	.loh AdrpAdrp	Lloh26, Lloh28
	.loh AdrpLdr	Lloh26, Lloh27
	.loh AdrpAdrp	Lloh24, Lloh26
	.loh AdrpLdr	Lloh24, Lloh25
	.loh AdrpAdrp	Lloh22, Lloh24
	.loh AdrpLdr	Lloh22, Lloh23
	.loh AdrpAdrp	Lloh20, Lloh22
	.loh AdrpLdr	Lloh20, Lloh21
	.loh AdrpAdrp	Lloh18, Lloh20
	.loh AdrpLdr	Lloh18, Lloh19
	.loh AdrpAdrp	Lloh16, Lloh18
	.loh AdrpLdr	Lloh16, Lloh17
	.loh AdrpAdrp	Lloh14, Lloh16
	.loh AdrpLdr	Lloh14, Lloh15
	.loh AdrpAdrp	Lloh12, Lloh14
	.loh AdrpLdr	Lloh12, Lloh13
	.loh AdrpAdrp	Lloh10, Lloh12
	.loh AdrpLdr	Lloh10, Lloh11
	.loh AdrpAdrp	Lloh8, Lloh10
	.loh AdrpLdr	Lloh8, Lloh9
	.loh AdrpAdrp	Lloh6, Lloh8
	.loh AdrpLdr	Lloh6, Lloh7
	.loh AdrpAdrp	Lloh4, Lloh6
	.loh AdrpLdr	Lloh4, Lloh5
	.loh AdrpAdrp	Lloh2, Lloh4
	.loh AdrpLdr	Lloh2, Lloh3
	.loh AdrpAdrp	Lloh0, Lloh2
	.loh AdrpLdr	Lloh0, Lloh1
	.cfi_endproc
                                        ; -- End function
	.comm	_ecc_table,8,3                  ; @ecc_table
	.no_dead_strip	_calculate_ecc
.subsections_via_symbols
