	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.section	__TEXT,__literal16,16byte_literals
	.p2align	4                               ## -- Begin function compute_crc32c_combine
LCPI0_0:
	.long	1                               ## 0x1
	.long	2                               ## 0x2
	.long	4                               ## 0x4
	.long	8                               ## 0x8
LCPI0_1:
	.long	16                              ## 0x10
	.long	32                              ## 0x20
	.long	64                              ## 0x40
	.long	128                             ## 0x80
LCPI0_2:
	.long	256                             ## 0x100
	.long	512                             ## 0x200
	.long	1024                            ## 0x400
	.long	2048                            ## 0x800
LCPI0_3:
	.long	4096                            ## 0x1000
	.long	8192                            ## 0x2000
	.long	16384                           ## 0x4000
	.long	32768                           ## 0x8000
LCPI0_4:
	.long	65536                           ## 0x10000
	.long	131072                          ## 0x20000
	.long	262144                          ## 0x40000
	.long	524288                          ## 0x80000
LCPI0_5:
	.long	1048576                         ## 0x100000
	.long	2097152                         ## 0x200000
	.long	4194304                         ## 0x400000
	.long	8388608                         ## 0x800000
LCPI0_6:
	.long	16777216                        ## 0x1000000
	.long	33554432                        ## 0x2000000
	.long	67108864                        ## 0x4000000
	.long	134217728                       ## 0x8000000
	.section	__TEXT,__text,regular,pure_instructions
	.globl	_compute_crc32c_combine
	.p2align	4, 0x90
_compute_crc32c_combine:                ## @compute_crc32c_combine
	.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
	pushq	%rax
	.cfi_offset %rbx, -56
	.cfi_offset %r12, -48
	.cfi_offset %r13, -40
	.cfi_offset %r14, -32
	.cfi_offset %r15, -24
	movl	%edi, %r15d
	testl	%edx, %edx
	jle	LBB0_10
## %bb.1:
	movl	%edx, %r12d
	movl	%esi, %r14d
	cmpb	$0, _compute_crc32c_combine.power_buf_initialized(%rip)
	jne	LBB0_5
## %bb.2:
	movl	$-2097792136, _compute_crc32c_combine.power_buf(%rip) ## imm = 0x82F63B78
	leaq	_compute_crc32c_combine.power_buf(%rip), %rsi
	movaps	LCPI0_0(%rip), %xmm0            ## xmm0 = [1,2,4,8]
	movups	%xmm0, _compute_crc32c_combine.power_buf+4(%rip)
	movaps	LCPI0_1(%rip), %xmm0            ## xmm0 = [16,32,64,128]
	movups	%xmm0, _compute_crc32c_combine.power_buf+20(%rip)
	movaps	LCPI0_2(%rip), %xmm0            ## xmm0 = [256,512,1024,2048]
	movups	%xmm0, _compute_crc32c_combine.power_buf+36(%rip)
	movaps	LCPI0_3(%rip), %xmm0            ## xmm0 = [4096,8192,16384,32768]
	movups	%xmm0, _compute_crc32c_combine.power_buf+52(%rip)
	movaps	LCPI0_4(%rip), %xmm0            ## xmm0 = [65536,131072,262144,524288]
	movups	%xmm0, _compute_crc32c_combine.power_buf+68(%rip)
	movaps	LCPI0_5(%rip), %xmm0            ## xmm0 = [1048576,2097152,4194304,8388608]
	movups	%xmm0, _compute_crc32c_combine.power_buf+84(%rip)
	movaps	LCPI0_6(%rip), %xmm0            ## xmm0 = [16777216,33554432,67108864,134217728]
	movups	%xmm0, _compute_crc32c_combine.power_buf+100(%rip)
	movabsq	$2305843009482129408, %rax      ## imm = 0x2000000010000000
	movq	%rax, _compute_crc32c_combine.power_buf+116(%rip)
	movl	$1073741824, _compute_crc32c_combine.power_buf+124(%rip) ## imm = 0x40000000
	movl	$31, %ebx
	.p2align	4, 0x90
LBB0_3:                                 ## =>This Inner Loop Header: Depth=1
	leaq	128(%rsi), %r13
	movq	%r13, %rdi
	callq	_gf32_matrix_square
	movq	%r13, %rsi
	decq	%rbx
	jne	LBB0_3
## %bb.4:
	movb	$1, _compute_crc32c_combine.power_buf_initialized(%rip)
LBB0_5:
	leaq	_compute_crc32c_combine.power_buf+384(%rip), %rbx
	jmp	LBB0_6
	.p2align	4, 0x90
LBB0_8:                                 ##   in Loop: Header=BB0_6 Depth=1
	movl	%r12d, %eax
	sarl	%eax
	subq	$-128, %rbx
	cmpl	$1, %r12d
	movl	%eax, %r12d
	jbe	LBB0_9
LBB0_6:                                 ## =>This Inner Loop Header: Depth=1
	testb	$1, %r12b
	je	LBB0_8
## %bb.7:                               ##   in Loop: Header=BB0_6 Depth=1
	movq	%rbx, %rdi
	movl	%r15d, %esi
	callq	_gf32_matrix_times
	movl	%eax, %r15d
	jmp	LBB0_8
LBB0_9:
	xorl	%r14d, %r15d
LBB0_10:
	movl	%r15d, %eax
	addq	$8, %rsp
	popq	%rbx
	popq	%r12
	popq	%r13
	popq	%r14
	popq	%r15
	popq	%rbp
	retq
	.cfi_endproc
                                        ## -- End function
.zerofill __DATA,__bss,_compute_crc32c_combine.power_buf_initialized,1,2 ## @compute_crc32c_combine.power_buf_initialized
.zerofill __DATA,__bss,_compute_crc32c_combine.power_buf,4096,4 ## @compute_crc32c_combine.power_buf
.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 compute_crc32c_combine
lCPI0_0:
	.long	2197175160                      ; 0x82f63b78
	.long	1                               ; 0x1
	.long	2                               ; 0x2
	.long	4                               ; 0x4
lCPI0_1:
	.long	8                               ; 0x8
	.long	16                              ; 0x10
	.long	32                              ; 0x20
	.long	64                              ; 0x40
lCPI0_2:
	.long	128                             ; 0x80
	.long	256                             ; 0x100
	.long	512                             ; 0x200
	.long	1024                            ; 0x400
lCPI0_3:
	.long	2048                            ; 0x800
	.long	4096                            ; 0x1000
	.long	8192                            ; 0x2000
	.long	16384                           ; 0x4000
lCPI0_4:
	.long	32768                           ; 0x8000
	.long	65536                           ; 0x10000
	.long	131072                          ; 0x20000
	.long	262144                          ; 0x40000
lCPI0_5:
	.long	524288                          ; 0x80000
	.long	1048576                         ; 0x100000
	.long	2097152                         ; 0x200000
	.long	4194304                         ; 0x400000
lCPI0_6:
	.long	8388608                         ; 0x800000
	.long	16777216                        ; 0x1000000
	.long	33554432                        ; 0x2000000
	.long	67108864                        ; 0x4000000
lCPI0_7:
	.long	134217728                       ; 0x8000000
	.long	268435456                       ; 0x10000000
	.long	536870912                       ; 0x20000000
	.long	1073741824                      ; 0x40000000
	.section	__TEXT,__text,regular,pure_instructions
	.globl	_compute_crc32c_combine
	.p2align	2
_compute_crc32c_combine:                ; @compute_crc32c_combine
	.cfi_startproc
; %bb.0:
	stp	x24, x23, [sp, #-64]!           ; 16-byte Folded Spill
	.cfi_def_cfa_offset 64
	stp	x22, x21, [sp, #16]             ; 16-byte Folded Spill
	stp	x20, x19, [sp, #32]             ; 16-byte Folded Spill
	stp	x29, x30, [sp, #48]             ; 16-byte Folded Spill
	add	x29, sp, #48
	.cfi_def_cfa w29, 16
	.cfi_offset w30, -8
	.cfi_offset w29, -16
	.cfi_offset w19, -24
	.cfi_offset w20, -32
	.cfi_offset w21, -40
	.cfi_offset w22, -48
	.cfi_offset w23, -56
	.cfi_offset w24, -64
	mov	x19, x0
	cmp	w2, #1
	b.lt	LBB0_10
; %bb.1:
	mov	x21, x2
	mov	x20, x1
	adrp	x22, _compute_crc32c_combine.power_buf_initialized@PAGE
	ldrb	w8, [x22, _compute_crc32c_combine.power_buf_initialized@PAGEOFF]
	tbnz	w8, #0, LBB0_5
; %bb.2:
	mov	x23, #0
Lloh0:
	adrp	x8, lCPI0_0@PAGE
Lloh1:
	ldr	q0, [x8, lCPI0_0@PAGEOFF]
Lloh2:
	adrp	x8, lCPI0_1@PAGE
Lloh3:
	ldr	q1, [x8, lCPI0_1@PAGEOFF]
Lloh4:
	adrp	x24, _compute_crc32c_combine.power_buf@PAGE
Lloh5:
	add	x24, x24, _compute_crc32c_combine.power_buf@PAGEOFF
	stp	q0, q1, [x24]
Lloh6:
	adrp	x8, lCPI0_2@PAGE
Lloh7:
	ldr	q0, [x8, lCPI0_2@PAGEOFF]
Lloh8:
	adrp	x8, lCPI0_3@PAGE
Lloh9:
	ldr	q1, [x8, lCPI0_3@PAGEOFF]
	stp	q0, q1, [x24, #32]
Lloh10:
	adrp	x8, lCPI0_4@PAGE
Lloh11:
	ldr	q0, [x8, lCPI0_4@PAGEOFF]
Lloh12:
	adrp	x8, lCPI0_5@PAGE
Lloh13:
	ldr	q1, [x8, lCPI0_5@PAGEOFF]
	stp	q0, q1, [x24, #64]
Lloh14:
	adrp	x8, lCPI0_6@PAGE
Lloh15:
	ldr	q0, [x8, lCPI0_6@PAGEOFF]
Lloh16:
	adrp	x8, lCPI0_7@PAGE
Lloh17:
	ldr	q1, [x8, lCPI0_7@PAGEOFF]
	stp	q0, q1, [x24, #96]
LBB0_3:                                 ; =>This Inner Loop Header: Depth=1
	add	x1, x24, x23
	add	x0, x1, #128
	bl	_gf32_matrix_square
	add	x23, x23, #128
	cmp	x23, #3968
	b.ne	LBB0_3
; %bb.4:
	mov	w8, #1
	strb	w8, [x22, _compute_crc32c_combine.power_buf_initialized@PAGEOFF]
LBB0_5:
Lloh18:
	adrp	x22, _compute_crc32c_combine.power_buf@PAGE+384
Lloh19:
	add	x22, x22, _compute_crc32c_combine.power_buf@PAGEOFF+384
	b	LBB0_7
LBB0_6:                                 ;   in Loop: Header=BB0_7 Depth=1
	asr	w8, w21, #1
	add	x22, x22, #128
	cmp	w21, #1
	mov	x21, x8
	b.ls	LBB0_9
LBB0_7:                                 ; =>This Inner Loop Header: Depth=1
	tbz	w21, #0, LBB0_6
; %bb.8:                                ;   in Loop: Header=BB0_7 Depth=1
	mov	x0, x22
	mov	x1, x19
	bl	_gf32_matrix_times
	mov	x19, x0
	b	LBB0_6
LBB0_9:
	eor	w19, w19, w20
LBB0_10:
	mov	x0, x19
	ldp	x29, x30, [sp, #48]             ; 16-byte Folded Reload
	ldp	x20, x19, [sp, #32]             ; 16-byte Folded Reload
	ldp	x22, x21, [sp, #16]             ; 16-byte Folded Reload
	ldp	x24, x23, [sp], #64             ; 16-byte Folded Reload
	ret
	.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 AdrpAdd	Lloh4, Lloh5
	.loh AdrpAdrp	Lloh2, Lloh6
	.loh AdrpLdr	Lloh2, Lloh3
	.loh AdrpAdrp	Lloh0, Lloh2
	.loh AdrpLdr	Lloh0, Lloh1
	.loh AdrpAdd	Lloh18, Lloh19
	.cfi_endproc
                                        ; -- End function
.zerofill __DATA,__bss,_compute_crc32c_combine.power_buf_initialized,1,2 ; @compute_crc32c_combine.power_buf_initialized
.zerofill __DATA,__bss,_compute_crc32c_combine.power_buf,4096,4 ; @compute_crc32c_combine.power_buf
.subsections_via_symbols
