	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	4, 0x90                         ## -- Begin function put_dc
_put_dc:                                ## @put_dc
	.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
	.cfi_offset %rbx, -56
	.cfi_offset %r12, -48
	.cfi_offset %r13, -40
	.cfi_offset %r14, -32
	.cfi_offset %r15, -24
                                        ## kill: def $r9d killed $r9d def $r9
                                        ## kill: def $r8d killed $r8d def $r8
	movq	%rcx, -104(%rbp)                ## 8-byte Spill
	movq	%rdx, -96(%rbp)                 ## 8-byte Spill
	movq	(%rdi), %rcx
	movq	%rdi, -64(%rbp)                 ## 8-byte Spill
	movq	16(%rdi), %rax
	movq	(%rax), %rax
	movq	%rcx, -72(%rbp)                 ## 8-byte Spill
	movq	(%rcx), %rcx
	movq	%rcx, -112(%rbp)                ## 8-byte Spill
	movq	%r8, -80(%rbp)                  ## 8-byte Spill
	leal	(%r8,%r8), %ecx
	movl	%ecx, -48(%rbp)                 ## 4-byte Spill
	movq	%r9, -88(%rbp)                  ## 8-byte Spill
	leal	(%r9,%r9), %ecx
	movl	%ecx, -44(%rbp)                 ## 4-byte Spill
	xorl	%edx, %edx
	.p2align	4, 0x90
LBB0_1:                                 ## =>This Loop Header: Depth=1
                                        ##     Child Loop BB0_2 Depth 2
	movl	%edx, %ecx
	shrl	%ecx
	leal	(,%rcx,8), %edi
	movq	%rdi, -120(%rbp)                ## 8-byte Spill
	movl	%edx, -52(%rbp)                 ## 4-byte Spill
                                        ## kill: def $edx killed $edx def $rdx
	andl	$1, %edx
	movl	%edx, %r8d
	leal	1(,%rdx,8), %edi
	movl	%edi, -56(%rbp)                 ## 4-byte Spill
	leal	2(,%rdx,8), %r9d
	leal	3(,%rdx,8), %r12d
	leal	4(,%rdx,8), %r11d
	leal	5(,%rdx,8), %r14d
	movl	%edx, %edi
	orl	-48(%rbp), %edi                 ## 4-byte Folded Reload
	addl	-44(%rbp), %ecx                 ## 4-byte Folded Reload
	movq	-64(%rbp), %rbx                 ## 8-byte Reload
	imull	8(%rbx), %ecx
	addl	%edi, %ecx
	movslq	%ecx, %rcx
	movq	-112(%rbp), %rdi                ## 8-byte Reload
	movl	(%rdi,%rcx,4), %r13d
	cmpl	$2040, %r13d                    ## imm = 0x7F8
	movl	$2040, %ecx                     ## imm = 0x7F8
	cmovgel	%ecx, %r13d
	leal	6(,%rdx,8), %r15d
	testl	%r13d, %r13d
	movl	$0, %ecx
	cmovlel	%ecx, %r13d
	leal	7(,%rdx,8), %edi
	shrl	$3, %r13d
	shll	$3, %r8d
	xorl	%edx, %edx
	.p2align	4, 0x90
LBB0_2:                                 ##   Parent Loop BB0_1 Depth=1
                                        ## =>  This Inner Loop Header: Depth=2
	movq	-120(%rbp), %rcx                ## 8-byte Reload
	addl	%edx, %ecx
	movl	(%rax), %r10d
	imull	%ecx, %r10d
	addl	%r8d, %r10d
	movslq	%r10d, %rbx
	movl	%r13d, (%rsi,%rbx,4)
	movl	(%rax), %ebx
	imull	%ecx, %ebx
	addl	-56(%rbp), %ebx                 ## 4-byte Folded Reload
	movslq	%ebx, %rbx
	movl	%r13d, (%rsi,%rbx,4)
	movl	(%rax), %ebx
	imull	%ecx, %ebx
	addl	%r9d, %ebx
	movslq	%ebx, %rbx
	movl	%r13d, (%rsi,%rbx,4)
	movl	(%rax), %ebx
	imull	%ecx, %ebx
	addl	%r12d, %ebx
	movslq	%ebx, %rbx
	movl	%r13d, (%rsi,%rbx,4)
	movl	(%rax), %ebx
	imull	%ecx, %ebx
	addl	%r11d, %ebx
	movslq	%ebx, %rbx
	movl	%r13d, (%rsi,%rbx,4)
	movl	(%rax), %ebx
	imull	%ecx, %ebx
	addl	%r14d, %ebx
	movslq	%ebx, %rbx
	movl	%r13d, (%rsi,%rbx,4)
	movl	(%rax), %ebx
	imull	%ecx, %ebx
	addl	%r15d, %ebx
	movslq	%ebx, %rbx
	movl	%r13d, (%rsi,%rbx,4)
	imull	(%rax), %ecx
	addl	%edi, %ecx
	movslq	%ecx, %rcx
	movl	%r13d, (%rsi,%rcx,4)
	incl	%edx
	cmpl	$8, %edx
	jne	LBB0_2
## %bb.3:                               ##   in Loop: Header=BB0_1 Depth=1
	movl	-52(%rbp), %edx                 ## 4-byte Reload
	incl	%edx
	cmpl	$4, %edx
	jne	LBB0_1
## %bb.4:
	movq	-88(%rbp), %rcx                 ## 8-byte Reload
	movq	-64(%rbp), %rdx                 ## 8-byte Reload
	imull	12(%rdx), %ecx
	addl	-80(%rbp), %ecx                 ## 4-byte Folded Reload
	movslq	%ecx, %rcx
	movq	-72(%rbp), %rsi                 ## 8-byte Reload
	movq	8(%rsi), %rdx
	movq	16(%rsi), %rsi
	movl	(%rdx,%rcx,4), %edx
	movl	(%rsi,%rcx,4), %ecx
	cmpl	$2040, %edx                     ## imm = 0x7F8
	movl	$2040, %r8d                     ## imm = 0x7F8
	cmovll	%edx, %r8d
	movl	$2040, %edi                     ## imm = 0x7F8
	shrl	$3, %r8d
	andl	$8191, %r8d                     ## imm = 0x1FFF
	xorl	%ebx, %ebx
	testl	%edx, %edx
	cmovsl	%ebx, %r8d
	cmpl	$2040, %ecx                     ## imm = 0x7F8
	cmovll	%ecx, %edi
	shrl	$3, %edi
	andl	$8191, %edi                     ## imm = 0x1FFF
	testl	%ecx, %ecx
	cmovsl	%ebx, %edi
	movq	-104(%rbp), %rdx                ## 8-byte Reload
	testq	%rdx, %rdx
	movq	-96(%rbp), %rsi                 ## 8-byte Reload
	je	LBB0_6
	.p2align	4, 0x90
LBB0_5:                                 ## =>This Inner Loop Header: Depth=1
	movslq	4(%rax), %rcx
	movslq	%ebx, %rbx
	imulq	%rbx, %rcx
	movl	%r8d, (%rsi,%rcx,4)
	movslq	8(%rax), %rcx
	imulq	%rbx, %rcx
	movl	%edi, (%rdx,%rcx,4)
	movslq	4(%rax), %rcx
	imulq	%rbx, %rcx
	movl	%r8d, 4(%rsi,%rcx,4)
	movslq	8(%rax), %rcx
	imulq	%rbx, %rcx
	movl	%edi, 4(%rdx,%rcx,4)
	movslq	4(%rax), %rcx
	imulq	%rbx, %rcx
	movl	%r8d, 8(%rsi,%rcx,4)
	movslq	8(%rax), %rcx
	imulq	%rbx, %rcx
	movl	%edi, 8(%rdx,%rcx,4)
	movslq	4(%rax), %rcx
	imulq	%rbx, %rcx
	movl	%r8d, 12(%rsi,%rcx,4)
	movslq	8(%rax), %rcx
	imulq	%rbx, %rcx
	movl	%edi, 12(%rdx,%rcx,4)
	movslq	4(%rax), %rcx
	imulq	%rbx, %rcx
	movl	%r8d, 16(%rsi,%rcx,4)
	movslq	8(%rax), %rcx
	imulq	%rbx, %rcx
	movl	%edi, 16(%rdx,%rcx,4)
	movslq	4(%rax), %rcx
	imulq	%rbx, %rcx
	movl	%r8d, 20(%rsi,%rcx,4)
	movslq	8(%rax), %rcx
	imulq	%rbx, %rcx
	movl	%edi, 20(%rdx,%rcx,4)
	movslq	4(%rax), %rcx
	imulq	%rbx, %rcx
	movl	%r8d, 24(%rsi,%rcx,4)
	movslq	8(%rax), %rcx
	imulq	%rbx, %rcx
	movl	%edi, 24(%rdx,%rcx,4)
	movslq	4(%rax), %rcx
	imulq	%rbx, %rcx
	movl	%r8d, 28(%rsi,%rcx,4)
	movslq	8(%rax), %rcx
	imulq	%rbx, %rcx
	movl	%edi, 28(%rdx,%rcx,4)
	incl	%ebx
	cmpl	$8, %ebx
	jne	LBB0_5
LBB0_6:
	popq	%rbx
	popq	%r12
	popq	%r13
	popq	%r14
	popq	%r15
	popq	%rbp
	retq
	.cfi_endproc
                                        ## -- End function
	.no_dead_strip	_put_dc
.subsections_via_symbols

	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	2                               ; -- Begin function put_dc
_put_dc:                                ; @put_dc
	.cfi_startproc
; %bb.0:
	stp	x26, x25, [sp, #-64]!           ; 16-byte Folded Spill
	.cfi_def_cfa_offset 64
	stp	x24, x23, [sp, #16]             ; 16-byte Folded Spill
	stp	x22, x21, [sp, #32]             ; 16-byte Folded Spill
	stp	x20, x19, [sp, #48]             ; 16-byte Folded Spill
	.cfi_offset w19, -8
	.cfi_offset w20, -16
	.cfi_offset w21, -24
	.cfi_offset w22, -32
	.cfi_offset w23, -40
	.cfi_offset w24, -48
	.cfi_offset w25, -56
	.cfi_offset w26, -64
	mov	w10, #0
	ldr	x8, [x0, #16]
	ldr	x8, [x8]
	ldr	x9, [x0]
	ldr	x11, [x9]
	lsl	w12, w4, #1
	lsl	w13, w5, #1
	mov	w14, #2040
LBB0_1:                                 ; =>This Loop Header: Depth=1
                                        ;     Child Loop BB0_2 Depth 2
	mov	w15, #0
	lsr	w17, w10, #1
	lsl	w16, w17, #3
	and	w24, w10, #0x1
	orr	w6, w24, w12
	add	w17, w17, w13
	ldr	w7, [x0, #8]
	madd	w17, w7, w17, w6
	ldr	w17, [x11, w17, sxtw #2]
	cmp	w17, #2040
	csel	w17, w17, w14, lt
	cmp	w17, #0
	csel	w17, w17, wzr, gt
	lsr	w17, w17, #3
	mov	w6, #1
	bfi	w6, w24, #3, #1
	mov	w7, #2
	bfi	w7, w24, #3, #1
	mov	w19, #3
	bfi	w19, w24, #3, #1
	mov	w20, #4
	bfi	w20, w24, #3, #1
	mov	w21, #5
	bfi	w21, w24, #3, #1
	mov	w22, #6
	bfi	w22, w24, #3, #1
	mov	w23, #7
	bfi	w23, w24, #3, #1
	lsl	w24, w24, #3
LBB0_2:                                 ;   Parent Loop BB0_1 Depth=1
                                        ; =>  This Inner Loop Header: Depth=2
	add	w25, w16, w15
	ldr	w26, [x8]
	madd	w26, w26, w25, w24
	str	w17, [x1, w26, sxtw #2]
	ldr	w26, [x8]
	madd	w26, w26, w25, w6
	str	w17, [x1, w26, sxtw #2]
	ldr	w26, [x8]
	madd	w26, w26, w25, w7
	str	w17, [x1, w26, sxtw #2]
	ldr	w26, [x8]
	madd	w26, w26, w25, w19
	str	w17, [x1, w26, sxtw #2]
	ldr	w26, [x8]
	madd	w26, w26, w25, w20
	str	w17, [x1, w26, sxtw #2]
	ldr	w26, [x8]
	madd	w26, w26, w25, w21
	str	w17, [x1, w26, sxtw #2]
	ldr	w26, [x8]
	madd	w26, w26, w25, w22
	str	w17, [x1, w26, sxtw #2]
	ldr	w26, [x8]
	madd	w25, w26, w25, w23
	str	w17, [x1, w25, sxtw #2]
	add	w15, w15, #1
	cmp	w15, #8
	b.ne	LBB0_2
; %bb.3:                                ;   in Loop: Header=BB0_1 Depth=1
	add	w10, w10, #1
	cmp	w10, #4
	b.ne	LBB0_1
; %bb.4:
	ldr	w10, [x0, #12]
	madd	w10, w10, w5, w4
	sbfiz	x10, x10, #2, #32
	ldp	x11, x9, [x9, #8]
	ldr	w11, [x11, x10]
	ldr	w10, [x9, x10]
	mov	w12, #2040
	cmp	w11, #2040
	csel	w9, w11, w12, lt
	ubfx	w9, w9, #3, #13
	cmp	w11, #0
	csel	w9, wzr, w9, lt
	cmp	w10, #2040
	csel	w11, w10, w12, lt
	ubfx	w11, w11, #3, #13
	cmp	w10, #0
	csel	w10, wzr, w11, lt
	cbz	x3, LBB0_7
; %bb.5:
	mov	w11, #0
	orr	w12, wzr, #0x1
	orr	w13, wzr, #0x2
	orr	w14, wzr, #0x3
	orr	w15, wzr, #0x4
	orr	w16, wzr, #0x6
	orr	w17, wzr, #0x7
LBB0_6:                                 ; =>This Inner Loop Header: Depth=1
	ldr	w0, [x8, #4]
	mul	w0, w0, w11
	str	w9, [x2, w0, sxtw #2]
	ldr	w0, [x8, #8]
	mul	w0, w0, w11
	str	w10, [x3, w0, sxtw #2]
	ldr	w0, [x8, #4]
	madd	w0, w0, w11, w12
	str	w9, [x2, w0, sxtw #2]
	ldr	w0, [x8, #8]
	madd	w0, w0, w11, w12
	str	w10, [x3, w0, sxtw #2]
	ldr	w0, [x8, #4]
	madd	w0, w0, w11, w13
	str	w9, [x2, w0, sxtw #2]
	ldr	w0, [x8, #8]
	madd	w0, w0, w11, w13
	str	w10, [x3, w0, sxtw #2]
	ldr	w0, [x8, #4]
	madd	w0, w0, w11, w14
	str	w9, [x2, w0, sxtw #2]
	ldr	w0, [x8, #8]
	madd	w0, w0, w11, w14
	str	w10, [x3, w0, sxtw #2]
	ldr	w0, [x8, #4]
	madd	w0, w0, w11, w15
	str	w9, [x2, w0, sxtw #2]
	ldr	w0, [x8, #8]
	madd	w0, w0, w11, w15
	str	w10, [x3, w0, sxtw #2]
	ldr	w0, [x8, #4]
	mul	w0, w0, w11
	add	w0, w0, #5
	str	w9, [x2, w0, sxtw #2]
	ldr	w0, [x8, #8]
	mul	w0, w0, w11
	add	w0, w0, #5
	str	w10, [x3, w0, sxtw #2]
	ldr	w0, [x8, #4]
	madd	w0, w0, w11, w16
	str	w9, [x2, w0, sxtw #2]
	ldr	w0, [x8, #8]
	madd	w0, w0, w11, w16
	str	w10, [x3, w0, sxtw #2]
	ldr	w0, [x8, #4]
	madd	w0, w0, w11, w17
	str	w9, [x2, w0, sxtw #2]
	ldr	w0, [x8, #8]
	madd	w0, w0, w11, w17
	str	w10, [x3, w0, sxtw #2]
	add	w11, w11, #1
	cmp	w11, #8
	b.ne	LBB0_6
LBB0_7:
	ldp	x20, x19, [sp, #48]             ; 16-byte Folded Reload
	ldp	x22, x21, [sp, #32]             ; 16-byte Folded Reload
	ldp	x24, x23, [sp, #16]             ; 16-byte Folded Reload
	ldp	x26, x25, [sp], #64             ; 16-byte Folded Reload
	ret
	.cfi_endproc
                                        ; -- End function
	.no_dead_strip	_put_dc
.subsections_via_symbols
