	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.section	__TEXT,__literal4,4byte_literals
	.p2align	2                               ## -- Begin function dradb4
LCPI0_0:
	.long	0x3fb504f3                      ## float 1.41421354
LCPI0_1:
	.long	0xbfb504f3                      ## float -1.41421354
	.section	__TEXT,__text,regular,pure_instructions
	.p2align	4, 0x90
_dradb4:                                ## @dradb4
	.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
	movq	%rcx, -64(%rbp)                 ## 8-byte Spill
                                        ## kill: def $edi killed $edi def $rdi
	movl	%esi, %eax
	imull	%edi, %eax
	movl	%eax, -48(%rbp)                 ## 4-byte Spill
	leal	(,%rdi,4), %ecx
	movq	%rdi, -56(%rbp)                 ## 8-byte Spill
	leal	(%rdi,%rdi), %eax
	movl	%eax, -44(%rbp)                 ## 4-byte Spill
	testl	%esi, %esi
	jle	LBB0_3
## %bb.1:
	movslq	-56(%rbp), %r10                 ## 4-byte Folded Reload
	movslq	-48(%rbp), %r15                 ## 4-byte Folded Reload
	movslq	%ecx, %r11
	movslq	-44(%rbp), %r12                 ## 4-byte Folded Reload
	leal	-1(%r11), %edi
	shlq	$2, %r11
	shlq	$2, %r10
	leaq	(,%r15,4), %rax
	leaq	(%rax,%rax,2), %r14
	movl	%esi, %r13d
	movq	-64(%rbp), %rax                 ## 8-byte Reload
	movq	%rdx, %rbx
	.p2align	4, 0x90
LBB0_2:                                 ## =>This Inner Loop Header: Depth=1
	movss	-4(%rbx,%r12,4), %xmm0          ## xmm0 = mem[0],zero,zero,zero
	movss	(%rbx,%r12,4), %xmm1            ## xmm1 = mem[0],zero,zero,zero
	addss	%xmm0, %xmm0
	addss	%xmm1, %xmm1
	movss	(%rbx), %xmm2                   ## xmm2 = mem[0],zero,zero,zero
	movslq	%edi, %rdi
	movss	(%rdx,%rdi,4), %xmm3            ## xmm3 = mem[0],zero,zero,zero
	movaps	%xmm2, %xmm4
	subss	%xmm3, %xmm4
	addss	%xmm3, %xmm2
	movaps	%xmm0, %xmm3
	addss	%xmm2, %xmm3
	movss	%xmm3, (%rax)
	movaps	%xmm4, %xmm3
	subss	%xmm1, %xmm3
	movss	%xmm3, (%rax,%r15,4)
	subss	%xmm0, %xmm2
	movss	%xmm2, (%rax,%r15,8)
	addss	%xmm1, %xmm4
	movss	%xmm4, (%rax,%r14)
	addl	%ecx, %edi
	addq	%r11, %rbx
	addq	%r10, %rax
	decl	%r13d
	jne	LBB0_2
LBB0_3:
	cmpl	$2, -56(%rbp)                   ## 4-byte Folded Reload
	jl	LBB0_15
## %bb.4:
	movl	%ecx, %r11d
	jne	LBB0_5
## %bb.12:
	testl	%esi, %esi
	jg	LBB0_13
	jmp	LBB0_15
LBB0_5:
	movq	%r8, -112(%rbp)                 ## 8-byte Spill
	movq	%r9, -120(%rbp)                 ## 8-byte Spill
	testl	%esi, %esi
	movl	-44(%rbp), %r14d                ## 4-byte Reload
	jle	LBB0_10
## %bb.6:
	movl	-56(%rbp), %edi                 ## 4-byte Reload
	movslq	-48(%rbp), %rcx                 ## 4-byte Folded Reload
	movq	%rdi, -128(%rbp)                ## 8-byte Spill
	leaq	(,%rdi,4), %rdi
	movq	%rdi, -104(%rbp)                ## 8-byte Spill
	movq	-64(%rbp), %rdi                 ## 8-byte Reload
	leaq	(%rdi,%rcx,4), %rbx
	leaq	(%rdi,%rcx,8), %r13
	leaq	(%rcx,%rcx,2), %rcx
	leaq	(%rdi,%rcx,4), %r10
	xorl	%r15d, %r15d
	movl	%r11d, %eax
	xorl	%ecx, %ecx
	movl	%esi, -72(%rbp)                 ## 4-byte Spill
	movl	%r11d, -68(%rbp)                ## 4-byte Spill
	movq	%rdx, -96(%rbp)                 ## 8-byte Spill
	movq	-120(%rbp), %r9                 ## 8-byte Reload
	movq	-112(%rbp), %r8                 ## 8-byte Reload
	.p2align	4, 0x90
LBB0_7:                                 ## =>This Loop Header: Depth=1
                                        ##     Child Loop BB0_8 Depth 2
	movl	%ecx, -76(%rbp)                 ## 4-byte Spill
	movl	%eax, -80(%rbp)                 ## 4-byte Spill
	movslq	%eax, %rcx
	leaq	(%rdx,%rcx,4), %rax
	movq	%rax, -136(%rbp)                ## 8-byte Spill
	movl	%r14d, -44(%rbp)                ## 4-byte Spill
	movslq	%r14d, %rsi
	leaq	(%rdx,%rsi,4), %r11
	shlq	$32, %rsi
	movl	%r15d, -84(%rbp)                ## 4-byte Spill
	movslq	%r15d, %rax
	leaq	(%rdx,%rax,4), %r14
	movl	$2, %r15d
	movq	$-2, %r12
	movq	16(%rbp), %rax
	.p2align	4, 0x90
LBB0_8:                                 ##   Parent Loop BB0_7 Depth=1
                                        ## =>  This Inner Loop Header: Depth=2
	movq	%rsi, %rdx
	sarq	$30, %rdx
	orq	$4, %rdx
	movq	%rdi, %rcx
	movq	%r10, %rdi
	movq	%r13, %r10
	movq	-96(%rbp), %r13                 ## 8-byte Reload
	movss	(%r13,%rdx), %xmm4              ## xmm4 = mem[0],zero,zero,zero
	movq	%r10, %r13
	movq	%rdi, %r10
	movq	%rcx, %rdi
	movss	-4(%r14,%r15,4), %xmm1          ## xmm1 = mem[0],zero,zero,zero
	movss	(%r14,%r15,4), %xmm2            ## xmm2 = mem[0],zero,zero,zero
	movq	-136(%rbp), %rcx                ## 8-byte Reload
	movss	-4(%rcx,%r12,4), %xmm8          ## xmm8 = mem[0],zero,zero,zero
	movss	(%rcx,%r12,4), %xmm3            ## xmm3 = mem[0],zero,zero,zero
	movaps	%xmm2, %xmm0
	addss	%xmm3, %xmm0
	subss	%xmm3, %xmm2
	movss	(%r11,%r15,4), %xmm6            ## xmm6 = mem[0],zero,zero,zero
	movss	-4(%r11,%r12,4), %xmm9          ## xmm9 = mem[0],zero,zero,zero
	movss	(%r11,%r12,4), %xmm3            ## xmm3 = mem[0],zero,zero,zero
	movaps	%xmm6, %xmm5
	subss	%xmm3, %xmm5
	addss	%xmm3, %xmm6
	movaps	%xmm1, %xmm10
	subss	%xmm8, %xmm10
	addss	%xmm8, %xmm1
	movaps	%xmm4, %xmm7
	subss	%xmm9, %xmm7
	addss	%xmm9, %xmm4
	movaps	%xmm1, %xmm3
	addss	%xmm4, %xmm3
	movss	%xmm3, -4(%rdi,%r15,4)
	subss	%xmm4, %xmm1
	movaps	%xmm2, %xmm3
	addss	%xmm5, %xmm3
	movss	%xmm3, (%rdi,%r15,4)
	subss	%xmm5, %xmm2
	movaps	%xmm10, %xmm3
	subss	%xmm6, %xmm3
	addss	%xmm6, %xmm10
	movaps	%xmm0, %xmm4
	addss	%xmm7, %xmm4
	subss	%xmm7, %xmm0
	movss	-4(%r8,%r15,4), %xmm5           ## xmm5 = mem[0],zero,zero,zero
	mulss	%xmm4, %xmm5
	movss	-8(%r8,%r15,4), %xmm6           ## xmm6 = mem[0],zero,zero,zero
	mulss	%xmm3, %xmm6
	subss	%xmm5, %xmm6
	movss	%xmm6, -4(%rbx,%r15,4)
	mulss	-4(%r8,%r15,4), %xmm3
	mulss	-8(%r8,%r15,4), %xmm4
	addss	%xmm3, %xmm4
	movss	%xmm4, (%rbx,%r15,4)
	movss	-4(%r9,%r15,4), %xmm3           ## xmm3 = mem[0],zero,zero,zero
	mulss	%xmm2, %xmm3
	movss	-8(%r9,%r15,4), %xmm4           ## xmm4 = mem[0],zero,zero,zero
	mulss	%xmm1, %xmm4
	subss	%xmm3, %xmm4
	movss	%xmm4, -4(%r13,%r15,4)
	mulss	-4(%r9,%r15,4), %xmm1
	mulss	-8(%r9,%r15,4), %xmm2
	addss	%xmm1, %xmm2
	movss	%xmm2, (%r13,%r15,4)
	movss	-4(%rax,%r15,4), %xmm1          ## xmm1 = mem[0],zero,zero,zero
	mulss	%xmm0, %xmm1
	movss	-8(%rax,%r15,4), %xmm2          ## xmm2 = mem[0],zero,zero,zero
	mulss	%xmm10, %xmm2
	subss	%xmm1, %xmm2
	movss	%xmm2, -4(%r10,%r15,4)
	mulss	-4(%rax,%r15,4), %xmm10
	mulss	-8(%rax,%r15,4), %xmm0
	addss	%xmm10, %xmm0
	movss	%xmm0, (%r10,%r15,4)
	addq	$2, %r15
	addq	$-2, %r12
	movabsq	$8589934592, %rcx               ## imm = 0x200000000
	addq	%rcx, %rsi
	cmpq	-128(%rbp), %r15                ## 8-byte Folded Reload
	jb	LBB0_8
## %bb.9:                               ##   in Loop: Header=BB0_7 Depth=1
	movl	-76(%rbp), %ecx                 ## 4-byte Reload
	incl	%ecx
	movl	-68(%rbp), %r11d                ## 4-byte Reload
	movl	-84(%rbp), %r15d                ## 4-byte Reload
	addl	%r11d, %r15d
	movl	-44(%rbp), %r14d                ## 4-byte Reload
	addl	%r11d, %r14d
	movl	-80(%rbp), %eax                 ## 4-byte Reload
	addl	%r11d, %eax
	movq	-104(%rbp), %rdx                ## 8-byte Reload
	addq	%rdx, %rdi
	addq	%rdx, %rbx
	addq	%rdx, %r13
	addq	%rdx, %r10
	movl	-72(%rbp), %esi                 ## 4-byte Reload
	cmpl	%esi, %ecx
	movq	-96(%rbp), %rdx                 ## 8-byte Reload
	jne	LBB0_7
LBB0_10:
	testl	%esi, %esi
	jle	LBB0_15
## %bb.11:
	movq	-56(%rbp), %rax                 ## 8-byte Reload
                                        ## kill: def $eax killed $eax killed $rax
	andl	$-2147483647, %eax              ## imm = 0x80000001
	cmpl	$1, %eax
	je	LBB0_15
LBB0_13:
	movq	-56(%rbp), %rbx                 ## 8-byte Reload
	leal	(%rbx,%rbx,2), %edi
	movslq	%ebx, %rax
	decl	%ebx
	movslq	%r11d, %r8
	movslq	%ebx, %r11
	movslq	-48(%rbp), %r9                  ## 4-byte Folded Reload
	movslq	%edi, %r10
	shlq	$2, %r8
	movq	-64(%rbp), %rcx                 ## 8-byte Reload
	leaq	(%rcx,%r11,4), %rdi
	shlq	$2, %rax
	leaq	(,%r9,4), %rbx
	leaq	(%rbx,%rbx,2), %rbx
	addq	%r9, %r11
	leaq	(%rcx,%r11,4), %rcx
	movss	LCPI0_0(%rip), %xmm0            ## xmm0 = mem[0],zero,zero,zero
	movss	LCPI0_1(%rip), %xmm1            ## xmm1 = mem[0],zero,zero,zero
	.p2align	4, 0x90
LBB0_14:                                ## =>This Inner Loop Header: Depth=1
	movss	-4(%rdx,%rax), %xmm2            ## xmm2 = mem[0],zero,zero,zero
	movss	(%rdx,%rax), %xmm3              ## xmm3 = mem[0],zero,zero,zero
	movss	-4(%rdx,%r10,4), %xmm4          ## xmm4 = mem[0],zero,zero,zero
	movss	(%rdx,%r10,4), %xmm5            ## xmm5 = mem[0],zero,zero,zero
	movaps	%xmm3, %xmm6
	addss	%xmm5, %xmm6
	subss	%xmm3, %xmm5
	movaps	%xmm2, %xmm3
	subss	%xmm4, %xmm3
	addss	%xmm4, %xmm2
	addss	%xmm2, %xmm2
	movss	%xmm2, (%rdi)
	movaps	%xmm3, %xmm2
	subss	%xmm6, %xmm2
	mulss	%xmm0, %xmm2
	movss	%xmm2, (%rcx)
	addss	%xmm5, %xmm5
	movss	%xmm5, (%rdi,%r9,8)
	addss	%xmm6, %xmm3
	mulss	%xmm1, %xmm3
	movss	%xmm3, (%rdi,%rbx)
	addq	%r8, %rdx
	addq	%rax, %rdi
	addq	%rax, %rcx
	decl	%esi
	jne	LBB0_14
LBB0_15:
	popq	%rbx
	popq	%r12
	popq	%r13
	popq	%r14
	popq	%r15
	popq	%rbp
	retq
	.cfi_endproc
                                        ## -- End function
	.no_dead_strip	_dradb4
.subsections_via_symbols

	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	2                               ; -- Begin function dradb4
_dradb4:                                ; @dradb4
	.cfi_startproc
; %bb.0:
	sub	sp, sp, #112
	.cfi_def_cfa_offset 112
	stp	x28, x27, [sp, #16]             ; 16-byte Folded Spill
	stp	x26, x25, [sp, #32]             ; 16-byte Folded Spill
	stp	x24, x23, [sp, #48]             ; 16-byte Folded Spill
	stp	x22, x21, [sp, #64]             ; 16-byte Folded Spill
	stp	x20, x19, [sp, #80]             ; 16-byte Folded Spill
	stp	x29, x30, [sp, #96]             ; 16-byte Folded Spill
	.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
	.cfi_offset w25, -72
	.cfi_offset w26, -80
	.cfi_offset w27, -88
	.cfi_offset w28, -96
                                        ; kill: def $w0 killed $w0 def $x0
	mul	w22, w1, w0
	lsl	w9, w0, #2
	lsl	w20, w0, #1
	cmp	w1, #1
	b.lt	LBB0_3
; %bb.1:
	mov	x16, x22
	sxtw	x10, w16
	sbfiz	x11, x20, #2, #32
	sub	w12, w9, #1
	mov	x13, x9
	sbfiz	x13, x13, #2, #32
	mov	x14, x0
	add	x15, x10, w22, sxtw #1
	sbfiz	x14, x14, #2, #32
	lsl	x15, x15, #2
	sbfiz	x16, x16, #3, #32
	mov	x17, x3
	mov	x7, x2
	mov	x19, x1
LBB0_2:                                 ; =>This Inner Loop Header: Depth=1
	add	x21, x7, x11
	ldp	s0, s1, [x21, #-4]
	fadd	s0, s0, s0
	fadd	s1, s1, s1
	ldr	s2, [x2, w12, sxtw #2]
	ldr	s3, [x7]
	fsub	s4, s3, s2
	fadd	s2, s3, s2
	fadd	s3, s0, s2
	str	s3, [x17]
	fsub	s3, s4, s1
	str	s3, [x17, x10, lsl #2]
	fsub	s0, s2, s0
	str	s0, [x17, x16]
	fadd	s0, s1, s4
	str	s0, [x17, x15]
	add	w12, w12, w9
	add	x7, x7, x13
	add	x17, x17, x14
	subs	w19, w19, #1
	b.ne	LBB0_2
LBB0_3:
	subs	w7, w0, #1
	b.le	LBB0_15
; %bb.4:
	cmp	w0, #2
	b.ne	LBB0_6
; %bb.5:
	cmp	w1, #1
	b.ge	LBB0_13
	b	LBB0_15
LBB0_6:
	stp	x7, x22, [sp]                   ; 16-byte Folded Spill
	cmp	w1, #1
	b.lt	LBB0_11
; %bb.7:
	mov	w11, #0
	mov	w12, #0
	mov	w13, w0
	lsl	x14, x13, #2
	mov	w15, #12
	ldr	x8, [sp, #8]                    ; 8-byte Folded Reload
	smaddl	x15, w8, w15, x3
	add	x16, x2, #8
	mov	x17, #8589934592
	mov	x7, x3
	mov	x19, x9
                                        ; kill: def $w20 killed $w20 killed $x20 def $x20
	add	x21, x3, w8, sxtw #2
	add	x22, x3, w8, sxtw #3
LBB0_8:                                 ; =>This Loop Header: Depth=1
                                        ;     Child Loop BB0_9 Depth 2
	mov	x23, #0
	add	x24, x2, w19, sxtw #2
	add	x25, x2, w20, sxtw #2
	sbfiz	x26, x20, #32, #32
	mov	x27, #-12
	mov	w28, #2
	add	x30, x16, w11, sxtw #2
LBB0_9:                                 ;   Parent Loop BB0_8 Depth=1
                                        ; =>  This Inner Loop Header: Depth=2
	add	x10, x30, x23
	ldr	s0, [x10]
	add	x8, x24, x27
	ldp	s2, s1, [x8]
	fadd	s3, s0, s1
	add	x8, x25, x23
	ldr	s4, [x8, #8]
	add	x8, x25, x27
	ldp	s6, s5, [x8]
	fsub	s0, s0, s1
	fsub	s1, s4, s5
	fadd	s4, s4, s5
	ldur	s5, [x10, #-4]
	fsub	s7, s5, s2
	asr	x8, x26, #30
	fadd	s2, s5, s2
	orr	x8, x8, #0x4
	ldr	s5, [x2, x8]
	fsub	s16, s5, s6
	fadd	s5, s5, s6
	fadd	s6, s2, s5
	add	x8, x7, x23
	fadd	s17, s0, s1
	str	s17, [x8, #8]
	fsub	s0, s0, s1
	fsub	s1, s7, s4
	str	s6, [x8, #4]
	fadd	s4, s4, s7
	fadd	s6, s3, s16
	add	x8, x4, x23
	ldp	s7, s17, [x8]
	fsub	s2, s2, s5
	fneg	s5, s17
	fmul	s5, s6, s5
	fmadd	s5, s7, s1, s5
	add	x10, x21, x23
	str	s5, [x10, #4]
	ldp	s5, s7, [x8]
	fmul	s1, s1, s7
	fmadd	s1, s5, s6, s1
	str	s1, [x10, #8]
	add	x8, x5, x23
	ldp	s1, s5, [x8]
	fneg	s5, s5
	fmul	s5, s0, s5
	fmadd	s1, s1, s2, s5
	add	x10, x22, x23
	fsub	s3, s3, s16
	str	s1, [x10, #4]
	ldp	s1, s5, [x8]
	fmul	s2, s2, s5
	fmadd	s0, s1, s0, s2
	str	s0, [x10, #8]
	add	x8, x6, x23
	ldp	s0, s1, [x8]
	fneg	s1, s1
	fmul	s1, s3, s1
	fmadd	s0, s0, s4, s1
	add	x10, x15, x23
	str	s0, [x10, #4]
	ldp	s0, s1, [x8]
	fmul	s1, s4, s1
	add	x28, x28, #2
	fmadd	s0, s0, s3, s1
	str	s0, [x10, #8]
	add	x23, x23, #8
	sub	x27, x27, #8
	add	x26, x26, x17
	cmp	x28, x13
	b.lo	LBB0_9
; %bb.10:                               ;   in Loop: Header=BB0_8 Depth=1
	add	w12, w12, #1
	add	w11, w11, w9
	add	w20, w20, w9
	add	w19, w19, w9
	add	x21, x21, x14
	add	x22, x22, x14
	add	x15, x15, x14
	add	x7, x7, x14
	cmp	w12, w1
	b.ne	LBB0_8
LBB0_11:
	cmp	w1, #1
	ldp	x7, x22, [sp]                   ; 16-byte Folded Reload
	b.lt	LBB0_15
; %bb.12:
	and	w8, w0, #0x80000001
	cmp	w8, #1
	b.eq	LBB0_15
LBB0_13:
	add	w8, w0, w0, lsl #1
	sxtw	x10, w22
	sbfiz	x11, x8, #2, #32
	sub	x12, x2, #4
	sbfiz	x9, x9, #2, #32
	sbfiz	x13, x7, #2, #32
	sbfiz	x14, x0, #2, #32
	mov	w8, #12
	smaddl	x15, w22, w8, x13
	add	x8, x13, w22, sxtw #3
	mov	w16, #1267
	movk	w16, #16309, lsl #16
	mov	w17, #1267
	movk	w17, #49077, lsl #16
	add	x10, x10, w7, sxtw
LBB0_14:                                ; =>This Inner Loop Header: Depth=1
	add	x0, x12, x14
	add	x2, x12, x11
	ldp	s1, s0, [x0]
	ldp	s3, s2, [x2]
	fadd	s4, s0, s2
	fadd	s5, s1, s3
	fadd	s5, s5, s5
	str	s5, [x3, x13]
	fsub	s1, s1, s3
	fsub	s3, s1, s4
	fmov	s5, w16
	fmul	s3, s3, s5
	str	s3, [x3, x10, lsl #2]
	fsub	s0, s2, s0
	fadd	s0, s0, s0
	str	s0, [x3, x8]
	fadd	s0, s4, s1
	fmov	s1, w17
	fmul	s0, s0, s1
	str	s0, [x3, x15]
	add	x12, x12, x9
	add	x3, x3, x14
	subs	w1, w1, #1
	b.ne	LBB0_14
LBB0_15:
	ldp	x29, x30, [sp, #96]             ; 16-byte Folded Reload
	ldp	x20, x19, [sp, #80]             ; 16-byte Folded Reload
	ldp	x22, x21, [sp, #64]             ; 16-byte Folded Reload
	ldp	x24, x23, [sp, #48]             ; 16-byte Folded Reload
	ldp	x26, x25, [sp, #32]             ; 16-byte Folded Reload
	ldp	x28, x27, [sp, #16]             ; 16-byte Folded Reload
	add	sp, sp, #112
	ret
	.cfi_endproc
                                        ; -- End function
	.no_dead_strip	_dradb4
.subsections_via_symbols
