	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	4, 0x90                         ## -- Begin function compute_dense
_compute_dense:                         ## @compute_dense
	.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	%r12
	pushq	%rbx
	.cfi_offset %rbx, -48
	.cfi_offset %r12, -40
	.cfi_offset %r14, -32
	.cfi_offset %r15, -24
	movl	(%rdi), %r15d
	testl	%r15d, %r15d
	jle	LBB0_11
## %bb.1:
	movq	%rsi, %r14
	movl	4(%rdi), %r9d
	movq	8(%rdi), %r8
	movl	%r9d, %esi
	andl	$-2, %esi
	leaq	(,%r15,8), %rcx
	xorl	%r12d, %r12d
	movq	_WEIGHTS_SCALE@GOTPCREL(%rip), %r10
	jmp	LBB0_2
	.p2align	4, 0x90
LBB0_7:                                 ##   in Loop: Header=BB0_2 Depth=1
	mulss	(%r10), %xmm0
	movss	%xmm0, (%r14,%r12,4)
	incq	%r12
	cmpq	%r15, %r12
	je	LBB0_8
LBB0_2:                                 ## =>This Loop Header: Depth=1
                                        ##     Child Loop BB0_16 Depth 2
	movss	(%r8,%r12,4), %xmm0             ## xmm0 = mem[0],zero,zero,zero
	testl	%r9d, %r9d
	jle	LBB0_7
## %bb.3:                               ##   in Loop: Header=BB0_2 Depth=1
	movq	16(%rdi), %r11
	cmpl	$1, %r9d
	jne	LBB0_15
## %bb.4:                               ##   in Loop: Header=BB0_2 Depth=1
	xorl	%ebx, %ebx
	jmp	LBB0_5
	.p2align	4, 0x90
LBB0_15:                                ##   in Loop: Header=BB0_2 Depth=1
	leaq	(%r11,%r12,4), %rax
	xorl	%ebx, %ebx
	.p2align	4, 0x90
LBB0_16:                                ##   Parent Loop BB0_2 Depth=1
                                        ## =>  This Inner Loop Header: Depth=2
	movss	(%rax), %xmm1                   ## xmm1 = mem[0],zero,zero,zero
	mulss	(%rdx,%rbx,4), %xmm1
	addss	%xmm0, %xmm1
	movss	(%rax,%r15,4), %xmm0            ## xmm0 = mem[0],zero,zero,zero
	mulss	4(%rdx,%rbx,4), %xmm0
	addss	%xmm1, %xmm0
	addq	$2, %rbx
	addq	%rcx, %rax
	cmpq	%rbx, %rsi
	jne	LBB0_16
LBB0_5:                                 ##   in Loop: Header=BB0_2 Depth=1
	testb	$1, %r9b
	je	LBB0_7
## %bb.6:                               ##   in Loop: Header=BB0_2 Depth=1
	movq	%rbx, %rax
	imulq	%r15, %rax
	addq	%r12, %rax
	movss	(%r11,%rax,4), %xmm1            ## xmm1 = mem[0],zero,zero,zero
	mulss	(%rdx,%rbx,4), %xmm1
	addss	%xmm1, %xmm0
	jmp	LBB0_7
LBB0_8:
	movq	24(%rdi), %rax
	movq	_ACTIVATION_SIGMOID@GOTPCREL(%rip), %rcx
	cmpq	(%rcx), %rax
	jne	LBB0_17
## %bb.9:
	xorl	%ebx, %ebx
	.p2align	4, 0x90
LBB0_10:                                ## =>This Inner Loop Header: Depth=1
	movss	(%r14,%rbx,4), %xmm0            ## xmm0 = mem[0],zero,zero,zero
	callq	_sigmoid_approx
	movss	%xmm0, (%r14,%rbx,4)
	incq	%rbx
	cmpq	%rbx, %r15
	jne	LBB0_10
	jmp	LBB0_23
LBB0_11:
	movq	24(%rdi), %rax
	movq	_ACTIVATION_SIGMOID@GOTPCREL(%rip), %rcx
	cmpq	(%rcx), %rax
	je	LBB0_23
## %bb.12:
	movq	_ACTIVATION_TANH@GOTPCREL(%rip), %rcx
	cmpq	(%rcx), %rax
	je	LBB0_23
## %bb.13:
	movq	_ACTIVATION_RELU@GOTPCREL(%rip), %rcx
	cmpq	(%rcx), %rax
	jne	LBB0_14
	jmp	LBB0_23
LBB0_17:
	movq	_ACTIVATION_TANH@GOTPCREL(%rip), %rcx
	cmpq	(%rcx), %rax
	jne	LBB0_20
## %bb.18:
	xorl	%ebx, %ebx
	.p2align	4, 0x90
LBB0_19:                                ## =>This Inner Loop Header: Depth=1
	movss	(%r14,%rbx,4), %xmm0            ## xmm0 = mem[0],zero,zero,zero
	callq	_tansig_approx
	movss	%xmm0, (%r14,%rbx,4)
	incq	%rbx
	cmpq	%rbx, %r15
	jne	LBB0_19
	jmp	LBB0_23
LBB0_20:
	movq	_ACTIVATION_RELU@GOTPCREL(%rip), %rcx
	cmpq	(%rcx), %rax
	jne	LBB0_14
## %bb.21:
	xorl	%ebx, %ebx
	.p2align	4, 0x90
LBB0_22:                                ## =>This Inner Loop Header: Depth=1
	movss	(%r14,%rbx,4), %xmm0            ## xmm0 = mem[0],zero,zero,zero
	xorl	%edi, %edi
	callq	_FFMAX
	movss	%xmm0, (%r14,%rbx,4)
	incq	%rbx
	cmpq	%rbx, %r15
	jne	LBB0_22
LBB0_23:
	popq	%rbx
	popq	%r12
	popq	%r14
	popq	%r15
	popq	%rbp
	retq
LBB0_14:
	xorl	%edi, %edi
	popq	%rbx
	popq	%r12
	popq	%r14
	popq	%r15
	popq	%rbp
	jmp	_av_assert0                     ## TAILCALL
	.cfi_endproc
                                        ## -- End function
	.comm	_WEIGHTS_SCALE,4,2              ## @WEIGHTS_SCALE
	.comm	_ACTIVATION_SIGMOID,8,3         ## @ACTIVATION_SIGMOID
	.comm	_ACTIVATION_TANH,8,3            ## @ACTIVATION_TANH
	.comm	_ACTIVATION_RELU,8,3            ## @ACTIVATION_RELU
	.no_dead_strip	_compute_dense
.subsections_via_symbols

	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	2                               ; -- Begin function compute_dense
_compute_dense:                         ; @compute_dense
	.cfi_startproc
; %bb.0:
	stp	x20, x19, [sp, #-32]!           ; 16-byte Folded Spill
	.cfi_def_cfa_offset 32
	stp	x29, x30, [sp, #16]             ; 16-byte Folded Spill
	add	x29, sp, #16
	.cfi_def_cfa w29, 16
	.cfi_offset w30, -8
	.cfi_offset w29, -16
	.cfi_offset w19, -24
	.cfi_offset w20, -32
	ldr	w20, [x0]
	cmp	w20, #1
	b.lt	LBB0_13
; %bb.1:
	mov	x19, x1
	mov	x8, #0
	ldr	w9, [x0, #4]
	cmp	x9, #15
	ldr	x10, [x0, #8]
	ccmp	w20, #1, #0, hi
	cset	w11, eq
	and	x12, x9, #0xfffffff0
	add	x13, x2, #32
	lsl	x14, x20, #6
	lsl	x15, x20, #2
	mov	w16, #8
Lloh0:
	adrp	x17, _WEIGHTS_SCALE@GOTPAGE
Lloh1:
	ldr	x17, [x17, _WEIGHTS_SCALE@GOTPAGEOFF]
	b	LBB0_3
LBB0_2:                                 ;   in Loop: Header=BB0_3 Depth=1
	ldr	s1, [x17]
	fmul	s0, s0, s1
	str	s0, [x19, x8, lsl #2]
	add	x8, x8, #1
	add	x16, x16, #1
	cmp	x8, x20
	b.eq	LBB0_11
LBB0_3:                                 ; =>This Loop Header: Depth=1
                                        ;     Child Loop BB0_6 Depth 2
                                        ;     Child Loop BB0_10 Depth 2
	ldr	s0, [x10, x8, lsl #2]
	cmp	w9, #1
	b.lt	LBB0_2
; %bb.4:                                ;   in Loop: Header=BB0_3 Depth=1
	ldr	x1, [x0, #16]
	cbz	w11, LBB0_8
; %bb.5:                                ;   in Loop: Header=BB0_3 Depth=1
	add	x3, x1, x16, lsl #2
	mov	x4, x13
	mov	x5, x12
LBB0_6:                                 ;   Parent Loop BB0_3 Depth=1
                                        ; =>  This Inner Loop Header: Depth=2
	ldp	q1, q2, [x3, #-32]
	ldp	q3, q4, [x3]
	ldp	q5, q6, [x4, #-32]
	ldp	q7, q16, [x4], #64
	fmul.4s	v1, v1, v5
	mov	s5, v1[3]
	mov	s17, v1[2]
	mov	s18, v1[1]
	fmul.4s	v2, v2, v6
	mov	s6, v2[3]
	mov	s19, v2[2]
	mov	s20, v2[1]
	fmul.4s	v3, v3, v7
	mov	s7, v3[3]
	mov	s21, v3[2]
	mov	s22, v3[1]
	fmul.4s	v4, v4, v16
	mov	s16, v4[3]
	mov	s23, v4[2]
	mov	s24, v4[1]
	fadd	s0, s0, s1
	fadd	s0, s0, s18
	fadd	s0, s0, s17
	fadd	s0, s0, s5
	fadd	s0, s0, s2
	fadd	s0, s0, s20
	fadd	s0, s0, s19
	fadd	s0, s0, s6
	fadd	s0, s0, s3
	fadd	s0, s0, s22
	fadd	s0, s0, s21
	fadd	s0, s0, s7
	fadd	s0, s0, s4
	fadd	s0, s0, s24
	fadd	s0, s0, s23
	fadd	s0, s0, s16
	add	x3, x3, x14
	subs	x5, x5, #16
	b.ne	LBB0_6
; %bb.7:                                ;   in Loop: Header=BB0_3 Depth=1
	mov	x4, x12
	cmp	x12, x9
	b.eq	LBB0_2
	b	LBB0_9
LBB0_8:                                 ;   in Loop: Header=BB0_3 Depth=1
	mov	x4, #0
LBB0_9:                                 ;   in Loop: Header=BB0_3 Depth=1
	madd	x3, x20, x4, x8
	add	x1, x1, x3, lsl #2
	add	x3, x2, x4, lsl #2
	sub	x4, x9, x4
LBB0_10:                                ;   Parent Loop BB0_3 Depth=1
                                        ; =>  This Inner Loop Header: Depth=2
	ldr	s1, [x1]
	ldr	s2, [x3], #4
	fmadd	s0, s1, s2, s0
	add	x1, x1, x15
	subs	x4, x4, #1
	b.ne	LBB0_10
	b	LBB0_2
LBB0_11:
	ldr	x8, [x0, #24]
Lloh2:
	adrp	x9, _ACTIVATION_SIGMOID@GOTPAGE
Lloh3:
	ldr	x9, [x9, _ACTIVATION_SIGMOID@GOTPAGEOFF]
Lloh4:
	ldr	x9, [x9]
	cmp	x8, x9
	b.ne	LBB0_14
LBB0_12:                                ; =>This Inner Loop Header: Depth=1
	ldr	s0, [x19]
	bl	_sigmoid_approx
	str	s0, [x19], #4
	subs	x20, x20, #1
	b.ne	LBB0_12
	b	LBB0_18
LBB0_13:
	ldr	x8, [x0, #24]
Lloh5:
	adrp	x9, _ACTIVATION_SIGMOID@GOTPAGE
Lloh6:
	ldr	x9, [x9, _ACTIVATION_SIGMOID@GOTPAGEOFF]
Lloh7:
	ldr	x9, [x9]
Lloh8:
	adrp	x10, _ACTIVATION_TANH@GOTPAGE
Lloh9:
	ldr	x10, [x10, _ACTIVATION_TANH@GOTPAGEOFF]
Lloh10:
	ldr	x10, [x10]
Lloh11:
	adrp	x11, _ACTIVATION_RELU@GOTPAGE
Lloh12:
	ldr	x11, [x11, _ACTIVATION_RELU@GOTPAGEOFF]
Lloh13:
	ldr	x11, [x11]
	cmp	x8, x9
	ccmp	x8, x10, #4, ne
	ccmp	x8, x11, #4, ne
	b.eq	LBB0_18
	b	LBB0_19
LBB0_14:
Lloh14:
	adrp	x9, _ACTIVATION_TANH@GOTPAGE
Lloh15:
	ldr	x9, [x9, _ACTIVATION_TANH@GOTPAGEOFF]
Lloh16:
	ldr	x9, [x9]
	cmp	x8, x9
	b.ne	LBB0_16
LBB0_15:                                ; =>This Inner Loop Header: Depth=1
	ldr	s0, [x19]
	bl	_tansig_approx
	str	s0, [x19], #4
	subs	x20, x20, #1
	b.ne	LBB0_15
	b	LBB0_18
LBB0_16:
Lloh17:
	adrp	x9, _ACTIVATION_RELU@GOTPAGE
Lloh18:
	ldr	x9, [x9, _ACTIVATION_RELU@GOTPAGEOFF]
Lloh19:
	ldr	x9, [x9]
	cmp	x8, x9
	b.ne	LBB0_19
LBB0_17:                                ; =>This Inner Loop Header: Depth=1
	ldr	s0, [x19]
	mov	w0, #0
	bl	_FFMAX
	str	s0, [x19], #4
	subs	x20, x20, #1
	b.ne	LBB0_17
LBB0_18:
	ldp	x29, x30, [sp, #16]             ; 16-byte Folded Reload
	ldp	x20, x19, [sp], #32             ; 16-byte Folded Reload
	ret
LBB0_19:
	mov	w0, #0
	ldp	x29, x30, [sp, #16]             ; 16-byte Folded Reload
	ldp	x20, x19, [sp], #32             ; 16-byte Folded Reload
	b	_av_assert0
	.loh AdrpLdrGot	Lloh0, Lloh1
	.loh AdrpLdrGotLdr	Lloh2, Lloh3, Lloh4
	.loh AdrpLdrGotLdr	Lloh11, Lloh12, Lloh13
	.loh AdrpLdrGotLdr	Lloh8, Lloh9, Lloh10
	.loh AdrpLdrGotLdr	Lloh5, Lloh6, Lloh7
	.loh AdrpLdrGotLdr	Lloh14, Lloh15, Lloh16
	.loh AdrpLdrGotLdr	Lloh17, Lloh18, Lloh19
	.cfi_endproc
                                        ; -- End function
	.comm	_WEIGHTS_SCALE,4,2              ; @WEIGHTS_SCALE
	.comm	_ACTIVATION_SIGMOID,8,3         ; @ACTIVATION_SIGMOID
	.comm	_ACTIVATION_TANH,8,3            ; @ACTIVATION_TANH
	.comm	_ACTIVATION_RELU,8,3            ; @ACTIVATION_RELU
	.no_dead_strip	_compute_dense
.subsections_via_symbols
