	.text
	.attribute	4, 16
	.attribute	5, "rv64i2p1_m2p0_a2p1_f2p2_d2p2_c2p0_v1p0_zicsr2p0_zifencei2p0_zve32f1p0_zve32x1p0_zve64d1p0_zve64f1p0_zve64x1p0_zvl128b1p0_zvl32b1p0_zvl64b1p0"
	.file	"conv.c"
	.globl	generate_random_kernel          # -- Begin function generate_random_kernel
	.p2align	1
	.type	generate_random_kernel,@function
generate_random_kernel:                 # @generate_random_kernel
# %bb.0:                                # %entry
	addi	sp, sp, -32
	sd	ra, 24(sp)                      # 8-byte Folded Spill
	sd	s0, 16(sp)                      # 8-byte Folded Spill
	fsd	fs0, 8(sp)                      # 8-byte Folded Spill
	mv	s0, a0
	call	rand
	fcvt.s.w	fa5, a0
	lui	a0, 196608
	fmv.w.x	fs0, a0
	fmul.s	fa5, fa5, fs0
	fsw	fa5, 0(s0)
	call	rand
	fcvt.s.w	fa5, a0
	fmul.s	fa5, fa5, fs0
	fsw	fa5, 4(s0)
	call	rand
	fcvt.s.w	fa5, a0
	fmul.s	fa5, fa5, fs0
	fsw	fa5, 8(s0)
	call	rand
	fcvt.s.w	fa5, a0
	fmul.s	fa5, fa5, fs0
	fsw	fa5, 12(s0)
	call	rand
	fcvt.s.w	fa5, a0
	fmul.s	fa5, fa5, fs0
	fsw	fa5, 16(s0)
	call	rand
	fcvt.s.w	fa5, a0
	fmul.s	fa5, fa5, fs0
	fsw	fa5, 20(s0)
	call	rand
	fcvt.s.w	fa5, a0
	fmul.s	fa5, fa5, fs0
	fsw	fa5, 24(s0)
	call	rand
	fcvt.s.w	fa5, a0
	fmul.s	fa5, fa5, fs0
	fsw	fa5, 28(s0)
	call	rand
	fcvt.s.w	fa5, a0
	fmul.s	fa5, fa5, fs0
	fsw	fa5, 32(s0)
	ld	ra, 24(sp)                      # 8-byte Folded Reload
	ld	s0, 16(sp)                      # 8-byte Folded Reload
	fld	fs0, 8(sp)                      # 8-byte Folded Reload
	addi	sp, sp, 32
	ret
.Lfunc_end0:
	.size	generate_random_kernel, .Lfunc_end0-generate_random_kernel
                                        # -- End function
	.globl	convolve                        # -- Begin function convolve
	.p2align	1
	.type	convolve,@function
convolve:                               # @convolve
# %bb.0:                                # %entry
	addi	sp, sp, -64
	sd	s0, 56(sp)                      # 8-byte Folded Spill
	sd	s1, 48(sp)                      # 8-byte Folded Spill
	sd	s2, 40(sp)                      # 8-byte Folded Spill
	sd	s3, 32(sp)                      # 8-byte Folded Spill
	sd	s4, 24(sp)                      # 8-byte Folded Spill
	sd	s5, 16(sp)                      # 8-byte Folded Spill
	sd	s6, 8(sp)                       # 8-byte Folded Spill
	li	t0, 0
	addi	a3, a2, 2047
	addi	a3, a3, 657
	addi	a4, a0, 2047
	addi	a4, a4, 1089
	addi	a6, a1, 36
	csrr	a5, vlenb
	srli	s0, a5, 3
	sltu	a4, a2, a4
	sltu	s1, a0, a3
	and	a4, a4, s1
	sltu	s1, a2, a6
	sltu	a3, a1, a3
	and	a3, a3, s1
	or	a3, a3, a4
	slli	s5, a5, 1
	li	a4, 28
	mul	a4, s0, a4
	andi	a6, a4, 24
	srli	s6, a5, 1
	sltiu	a4, s0, 7
	xori	a3, a3, 1
	and	a7, a4, a3
	fmv.w.x	fa5, zero
	li	a3, 104
	li	t1, 26
	addi	t2, a1, 4
	addi	t3, a1, 8
	addi	t4, a1, 12
	addi	t5, a1, 16
	addi	t6, a1, 20
	addi	s2, a1, 24
	addi	s3, a1, 28
	addi	s4, a1, 32
	vsetvli	a4, zero, e32, m2, ta, ma
	vmv.v.i	v8, 0
.LBB1_1:                                # %for.cond1.preheader
                                        # =>This Loop Header: Depth=1
                                        #     Child Loop BB1_4 Depth 2
                                        #     Child Loop BB1_7 Depth 2
	bnez	a7, .LBB1_3
# %bb.2:                                #   in Loop: Header=BB1_1 Depth=1
	li	a4, 0
	j	.LBB1_6
.LBB1_3:                                # %vector.ph
                                        #   in Loop: Header=BB1_1 Depth=1
	vlse32.v	v10, (a1), zero
	vlse32.v	v12, (t2), zero
	vlse32.v	v14, (t3), zero
	vlse32.v	v16, (t4), zero
	vlse32.v	v18, (t5), zero
	vlse32.v	v20, (t6), zero
	vlse32.v	v22, (s2), zero
	vlse32.v	v24, (s3), zero
	vlse32.v	v26, (s4), zero
	li	a5, 0
	mv	s0, a6
.LBB1_4:                                # %vector.body
                                        #   Parent Loop BB1_1 Depth=1
                                        # =>  This Inner Loop Header: Depth=2
	add	s1, a0, a5
	vl2re32.v	v28, (s1)
	vfmadd.vv	v28, v10, v8
	addi	a4, s1, 4
	vl2re32.v	v30, (a4)
	addi	a4, s1, 8
	vl2re32.v	v0, (a4)
	addi	a4, s1, 112
	vl2re32.v	v2, (a4)
	addi	a4, s1, 116
	vl2re32.v	v4, (a4)
	vfmadd.vv	v30, v12, v28
	vfmadd.vv	v0, v14, v30
	vfmadd.vv	v2, v16, v0
	vfmadd.vv	v4, v18, v2
	addi	a4, s1, 120
	vl2re32.v	v28, (a4)
	addi	a4, s1, 224
	vl2re32.v	v30, (a4)
	addi	a4, s1, 228
	vl2re32.v	v0, (a4)
	addi	a4, s1, 232
	vl2re32.v	v2, (a4)
	vfmadd.vv	v28, v20, v4
	vfmadd.vv	v30, v22, v28
	vfmadd.vv	v0, v24, v30
	vfmadd.vv	v2, v26, v0
	add	a4, a2, a5
	vs2r.v	v2, (a4)
	sub	s0, s0, s6
	add	a5, a5, s5
	bnez	s0, .LBB1_4
# %bb.5:                                #   in Loop: Header=BB1_1 Depth=1
	mv	a4, a6
.LBB1_6:                                # %for.cond5.preheader.preheader
                                        #   in Loop: Header=BB1_1 Depth=1
	addi	t0, t0, 1
	slli	a4, a4, 2
.LBB1_7:                                # %for.cond5.preheader
                                        #   Parent Loop BB1_1 Depth=1
                                        # =>  This Inner Loop Header: Depth=2
	add	a5, a0, a4
	flw	fa4, 0(a5)
	flw	fa3, 0(a1)
	fmadd.s	fa4, fa4, fa3, fa5
	flw	fa3, 4(a5)
	flw	fa2, 4(a1)
	flw	fa1, 8(a5)
	flw	fa0, 8(a1)
	flw	ft0, 112(a5)
	flw	ft1, 12(a1)
	flw	ft2, 116(a5)
	flw	ft3, 16(a1)
	fmadd.s	fa4, fa3, fa2, fa4
	fmadd.s	fa4, fa1, fa0, fa4
	fmadd.s	fa4, ft0, ft1, fa4
	fmadd.s	fa4, ft2, ft3, fa4
	flw	fa3, 120(a5)
	flw	fa2, 20(a1)
	flw	fa1, 224(a5)
	flw	fa0, 24(a1)
	flw	ft0, 228(a5)
	flw	ft1, 28(a1)
	flw	ft2, 232(a5)
	flw	ft3, 32(a1)
	fmadd.s	fa4, fa3, fa2, fa4
	fmadd.s	fa4, fa1, fa0, fa4
	fmadd.s	fa4, ft0, ft1, fa4
	fmadd.s	fa4, ft2, ft3, fa4
	add	a5, a2, a4
	addi	a4, a4, 4
	fsw	fa4, 0(a5)
	bne	a4, a3, .LBB1_7
# %bb.8:                                # %for.cond.cleanup3
                                        #   in Loop: Header=BB1_1 Depth=1
	addi	a0, a0, 112
	addi	a2, a2, 104
	bne	t0, t1, .LBB1_1
# %bb.9:                                # %for.cond.cleanup
	ld	s0, 56(sp)                      # 8-byte Folded Reload
	ld	s1, 48(sp)                      # 8-byte Folded Reload
	ld	s2, 40(sp)                      # 8-byte Folded Reload
	ld	s3, 32(sp)                      # 8-byte Folded Reload
	ld	s4, 24(sp)                      # 8-byte Folded Reload
	ld	s5, 16(sp)                      # 8-byte Folded Reload
	ld	s6, 8(sp)                       # 8-byte Folded Reload
	addi	sp, sp, 64
	ret
.Lfunc_end1:
	.size	convolve, .Lfunc_end1-convolve
                                        # -- End function
	.globl	flatten                         # -- Begin function flatten
	.p2align	1
	.type	flatten,@function
flatten:                                # @flatten
# %bb.0:                                # %entry
	csrr	a2, vlenb
	srli	a3, a2, 3
	li	a4, 6
	bltu	a4, a3, .LBB2_3
# %bb.1:                                # %vector.memcheck
	lui	a4, 1
	addiw	a4, a4, -1392
	add	a5, a0, a4
	bgeu	a1, a5, .LBB2_4
# %bb.2:                                # %vector.memcheck
	add	a4, a4, a1
	bgeu	a0, a4, .LBB2_4
.LBB2_3:
	li	a6, 0
	j	.LBB2_6
.LBB2_4:                                # %vector.ph
	li	t2, 0
	li	a5, 28
	mul	a3, a3, a5
	andi	a6, a3, 24
	srli	a7, a2, 1
	li	a3, 52
	mul	t0, a2, a3
	li	a2, 104
	vsetvli	a3, zero, e32, m2, ta, ma
	mv	t1, a6
.LBB2_5:                                # %vector.body
                                        # =>This Inner Loop Header: Depth=1
	add	a4, a0, t2
	vlse32.v	v8, (a4), a2
	add	a5, a1, t2
	vsse32.v	v8, (a5), a2
	addi	a3, a4, 4
	vlse32.v	v8, (a3), a2
	addi	a3, a5, 4
	vsse32.v	v8, (a3), a2
	addi	a3, a4, 8
	vlse32.v	v8, (a3), a2
	addi	a3, a5, 8
	vsse32.v	v8, (a3), a2
	addi	a3, a4, 12
	vlse32.v	v8, (a3), a2
	addi	a3, a5, 12
	vsse32.v	v8, (a3), a2
	addi	a3, a4, 16
	vlse32.v	v8, (a3), a2
	addi	a3, a5, 16
	vsse32.v	v8, (a3), a2
	addi	a3, a4, 20
	vlse32.v	v8, (a3), a2
	addi	a3, a5, 20
	vsse32.v	v8, (a3), a2
	addi	a3, a4, 24
	vlse32.v	v8, (a3), a2
	addi	a3, a5, 24
	vsse32.v	v8, (a3), a2
	addi	a3, a4, 28
	vlse32.v	v8, (a3), a2
	addi	a3, a5, 28
	vsse32.v	v8, (a3), a2
	addi	a3, a4, 32
	vlse32.v	v8, (a3), a2
	addi	a3, a5, 32
	vsse32.v	v8, (a3), a2
	addi	a3, a4, 36
	vlse32.v	v8, (a3), a2
	addi	a3, a5, 36
	vsse32.v	v8, (a3), a2
	addi	a3, a4, 40
	vlse32.v	v8, (a3), a2
	addi	a3, a5, 40
	vsse32.v	v8, (a3), a2
	addi	a3, a4, 44
	vlse32.v	v8, (a3), a2
	addi	a3, a5, 44
	vsse32.v	v8, (a3), a2
	addi	a3, a4, 48
	vlse32.v	v8, (a3), a2
	addi	a3, a5, 48
	vsse32.v	v8, (a3), a2
	addi	a3, a4, 52
	vlse32.v	v8, (a3), a2
	addi	a3, a5, 52
	vsse32.v	v8, (a3), a2
	addi	a3, a4, 56
	vlse32.v	v8, (a3), a2
	addi	a3, a5, 56
	vsse32.v	v8, (a3), a2
	addi	a3, a4, 60
	vlse32.v	v8, (a3), a2
	addi	a3, a5, 60
	vsse32.v	v8, (a3), a2
	addi	a3, a4, 64
	vlse32.v	v8, (a3), a2
	addi	a3, a5, 64
	vsse32.v	v8, (a3), a2
	addi	a3, a4, 68
	vlse32.v	v8, (a3), a2
	addi	a3, a5, 68
	vsse32.v	v8, (a3), a2
	addi	a3, a4, 72
	vlse32.v	v8, (a3), a2
	addi	a3, a5, 72
	vsse32.v	v8, (a3), a2
	addi	a3, a4, 76
	vlse32.v	v8, (a3), a2
	addi	a3, a5, 76
	vsse32.v	v8, (a3), a2
	addi	a3, a4, 80
	vlse32.v	v8, (a3), a2
	addi	a3, a5, 80
	vsse32.v	v8, (a3), a2
	addi	a3, a4, 84
	vlse32.v	v8, (a3), a2
	addi	a3, a5, 84
	vsse32.v	v8, (a3), a2
	addi	a3, a4, 88
	vlse32.v	v8, (a3), a2
	addi	a3, a5, 88
	vsse32.v	v8, (a3), a2
	addi	a3, a4, 92
	vlse32.v	v8, (a3), a2
	addi	a3, a5, 92
	vsse32.v	v8, (a3), a2
	addi	a3, a4, 96
	vlse32.v	v8, (a3), a2
	addi	a3, a5, 96
	vsse32.v	v8, (a3), a2
	addi	a3, a4, 100
	vlse32.v	v8, (a3), a2
	addi	a3, a5, 100
	vsse32.v	v8, (a3), a2
	sub	t1, t1, a7
	add	t2, t2, t0
	bnez	t1, .LBB2_5
.LBB2_6:                                # %for.cond1.preheader.preheader
	li	a2, 104
	mul	a2, a6, a2
	addi	a3, a2, 52
	add	a2, a0, a3
	add	a1, a1, a3
	addi	a0, a0, 2047
	addi	a0, a0, 709
.LBB2_7:                                # %for.cond1.preheader
                                        # =>This Inner Loop Header: Depth=1
	flw	fa5, -52(a2)
	fsw	fa5, -52(a1)
	flw	fa5, -48(a2)
	fsw	fa5, -48(a1)
	flw	fa5, -44(a2)
	fsw	fa5, -44(a1)
	flw	fa5, -40(a2)
	fsw	fa5, -40(a1)
	flw	fa5, -36(a2)
	fsw	fa5, -36(a1)
	flw	fa5, -32(a2)
	fsw	fa5, -32(a1)
	flw	fa5, -28(a2)
	fsw	fa5, -28(a1)
	flw	fa5, -24(a2)
	fsw	fa5, -24(a1)
	flw	fa5, -20(a2)
	fsw	fa5, -20(a1)
	flw	fa5, -16(a2)
	fsw	fa5, -16(a1)
	flw	fa5, -12(a2)
	fsw	fa5, -12(a1)
	flw	fa5, -8(a2)
	fsw	fa5, -8(a1)
	flw	fa5, -4(a2)
	fsw	fa5, -4(a1)
	flw	fa5, 0(a2)
	fsw	fa5, 0(a1)
	flw	fa5, 4(a2)
	fsw	fa5, 4(a1)
	flw	fa5, 8(a2)
	fsw	fa5, 8(a1)
	flw	fa5, 12(a2)
	fsw	fa5, 12(a1)
	flw	fa5, 16(a2)
	fsw	fa5, 16(a1)
	flw	fa5, 20(a2)
	fsw	fa5, 20(a1)
	flw	fa5, 24(a2)
	fsw	fa5, 24(a1)
	flw	fa5, 28(a2)
	fsw	fa5, 28(a1)
	flw	fa5, 32(a2)
	fsw	fa5, 32(a1)
	flw	fa5, 36(a2)
	fsw	fa5, 36(a1)
	flw	fa5, 40(a2)
	fsw	fa5, 40(a1)
	flw	fa5, 44(a2)
	fsw	fa5, 44(a1)
	flw	fa5, 48(a2)
	fsw	fa5, 48(a1)
	addi	a2, a2, 104
	addi	a1, a1, 104
	bne	a2, a0, .LBB2_7
# %bb.8:                                # %for.cond.cleanup
	ret
.Lfunc_end2:
	.size	flatten, .Lfunc_end2-flatten
                                        # -- End function
	.globl	fully_connected                 # -- Begin function fully_connected
	.p2align	1
	.type	fully_connected,@function
fully_connected:                        # @fully_connected
# %bb.0:                                # %entry
	csrr	a7, vlenb
	srli	t0, a7, 3
	li	a4, 169
	addi	a6, a1, 2047
	bgeu	a4, t0, .LBB3_2
# %bb.1:
	li	t1, 0
	fmv.w.x	fa5, zero
	j	.LBB3_5
.LBB3_2:                                # %vector.ph
	li	a4, 1020
	mul	a4, t0, a4
	andi	t1, a4, 672
	srli	t2, a7, 1
	vsetvli	a4, zero, e32, m1, ta, ma
	vmv.s.x	v8, zero
	slli	t3, a7, 1
	mv	t4, t1
	mv	t5, a1
	mv	a4, a0
.LBB3_3:                                # %vector.body
                                        # =>This Inner Loop Header: Depth=1
	vl2re32.v	v10, (a4)
	vl2re32.v	v12, (t5)
	vsetvli	a5, zero, e32, m2, ta, ma
	vfmul.vv	v10, v10, v12
	vfredosum.vs	v8, v10, v8
	add	a4, a4, t3
	sub	t4, t4, t2
	add	t5, t5, t3
	bnez	t4, .LBB3_3
# %bb.4:                                # %middle.block
	li	a4, 676
	vfmv.f.s	fa5, v8
	beq	t1, a4, .LBB3_7
.LBB3_5:                                # %for.body4.preheader
	slli	a5, t1, 2
	add	a4, a1, a5
	add	a5, a5, a0
	addi	t1, a6, 657
.LBB3_6:                                # %for.body4
                                        # =>This Inner Loop Header: Depth=1
	flw	fa4, 0(a5)
	flw	fa3, 0(a4)
	fmadd.s	fa5, fa4, fa3, fa5
	addi	a4, a4, 4
	addi	a5, a5, 4
	bne	a4, t1, .LBB3_6
.LBB3_7:                                # %for.cond.cleanup3
	flw	fa4, 0(a2)
	fadd.s	fa5, fa5, fa4
	li	a4, 169
	fsw	fa5, 0(a3)
	bgeu	a4, t0, .LBB3_9
# %bb.8:
	li	a6, 0
	fmv.w.x	fa5, zero
	j	.LBB3_12
.LBB3_9:                                # %vector.ph52
	addi	t3, a6, 657
	li	a4, 1020
	mul	a4, t0, a4
	andi	a6, a4, 672
	srli	t1, a7, 1
	vsetvli	a4, zero, e32, m1, ta, ma
	vmv.s.x	v8, zero
	slli	t2, a7, 1
	mv	t4, a6
	mv	a5, a0
.LBB3_10:                               # %vector.body57
                                        # =>This Inner Loop Header: Depth=1
	vl2re32.v	v10, (a5)
	vl2re32.v	v12, (t3)
	vsetvli	a4, zero, e32, m2, ta, ma
	vfmul.vv	v10, v10, v12
	vfredosum.vs	v8, v10, v8
	add	a5, a5, t2
	sub	t4, t4, t1
	add	t3, t3, t2
	bnez	t4, .LBB3_10
# %bb.11:                               # %middle.block49
	li	a4, 676
	vfmv.f.s	fa5, v8
	beq	a6, a4, .LBB3_14
.LBB3_12:                               # %for.body4.1.preheader
	slli	a5, a6, 2
	add	a4, a5, a1
	addi	a4, a4, 2047
	addi	a4, a4, 657
	add	t1, a0, a5
	lui	a5, 1
	addiw	a6, a5, 1312
	add	a6, a6, a1
.LBB3_13:                               # %for.body4.1
                                        # =>This Inner Loop Header: Depth=1
	flw	fa4, 0(t1)
	flw	fa3, 0(a4)
	fmadd.s	fa5, fa4, fa3, fa5
	addi	a4, a4, 4
	addi	t1, t1, 4
	bne	a4, a6, .LBB3_13
.LBB3_14:                               # %for.cond.cleanup3.1
	flw	fa4, 4(a2)
	fadd.s	fa5, fa5, fa4
	li	a4, 169
	fsw	fa5, 4(a3)
	bgeu	a4, t0, .LBB3_16
# %bb.15:
	li	a6, 0
	fmv.w.x	fa5, zero
	j	.LBB3_19
.LBB3_16:                               # %vector.ph67
	lui	a4, 1
	addiw	t3, a4, 1312
	add	t3, t3, a1
	li	a4, 1020
	mul	a4, t0, a4
	andi	a6, a4, 672
	srli	t1, a7, 1
	vsetvli	a4, zero, e32, m1, ta, ma
	vmv.s.x	v8, zero
	slli	t2, a7, 1
	mv	t4, a6
	mv	a5, a0
.LBB3_17:                               # %vector.body72
                                        # =>This Inner Loop Header: Depth=1
	vl2re32.v	v10, (a5)
	vl2re32.v	v12, (t3)
	vsetvli	a4, zero, e32, m2, ta, ma
	vfmul.vv	v10, v10, v12
	vfredosum.vs	v8, v10, v8
	add	a5, a5, t2
	sub	t4, t4, t1
	add	t3, t3, t2
	bnez	t4, .LBB3_17
# %bb.18:                               # %middle.block64
	li	a4, 676
	vfmv.f.s	fa5, v8
	beq	a6, a4, .LBB3_21
.LBB3_19:                               # %for.body4.2.preheader
	slli	a5, a6, 2
	add	a6, a5, a1
	lui	a4, 1
	addiw	a4, a4, 1312
	add	a4, a4, a6
	add	t1, a0, a5
	lui	a5, 2
	addiw	a6, a5, -80
	add	a6, a6, a1
.LBB3_20:                               # %for.body4.2
                                        # =>This Inner Loop Header: Depth=1
	flw	fa4, 0(t1)
	flw	fa3, 0(a4)
	fmadd.s	fa5, fa4, fa3, fa5
	addi	a4, a4, 4
	addi	t1, t1, 4
	bne	a4, a6, .LBB3_20
.LBB3_21:                               # %for.cond.cleanup3.2
	flw	fa4, 8(a2)
	fadd.s	fa5, fa5, fa4
	li	a4, 169
	fsw	fa5, 8(a3)
	bgeu	a4, t0, .LBB3_23
# %bb.22:
	li	a6, 0
	fmv.w.x	fa5, zero
	j	.LBB3_26
.LBB3_23:                               # %vector.ph82
	lui	a4, 2
	addiw	t3, a4, -80
	add	t3, t3, a1
	li	a4, 1020
	mul	a4, t0, a4
	andi	a6, a4, 672
	srli	t1, a7, 1
	vsetvli	a4, zero, e32, m1, ta, ma
	vmv.s.x	v8, zero
	slli	t2, a7, 1
	mv	t4, a6
	mv	a5, a0
.LBB3_24:                               # %vector.body87
                                        # =>This Inner Loop Header: Depth=1
	vl2re32.v	v10, (a5)
	vl2re32.v	v12, (t3)
	vsetvli	a4, zero, e32, m2, ta, ma
	vfmul.vv	v10, v10, v12
	vfredosum.vs	v8, v10, v8
	add	a5, a5, t2
	sub	t4, t4, t1
	add	t3, t3, t2
	bnez	t4, .LBB3_24
# %bb.25:                               # %middle.block79
	li	a4, 676
	vfmv.f.s	fa5, v8
	beq	a6, a4, .LBB3_28
.LBB3_26:                               # %for.body4.3.preheader
	slli	a5, a6, 2
	add	a6, a5, a1
	lui	a4, 2
	addiw	a4, a4, -80
	add	a4, a4, a6
	add	t1, a0, a5
	lui	a5, 3
	addiw	a6, a5, -1472
	add	a6, a6, a1
.LBB3_27:                               # %for.body4.3
                                        # =>This Inner Loop Header: Depth=1
	flw	fa4, 0(t1)
	flw	fa3, 0(a4)
	fmadd.s	fa5, fa4, fa3, fa5
	addi	a4, a4, 4
	addi	t1, t1, 4
	bne	a4, a6, .LBB3_27
.LBB3_28:                               # %for.cond.cleanup3.3
	flw	fa4, 12(a2)
	lui	a6, 3
	fadd.s	fa5, fa5, fa4
	li	a4, 169
	fsw	fa5, 12(a3)
	bgeu	a4, t0, .LBB3_30
# %bb.29:
	li	t1, 0
	fmv.w.x	fa5, zero
	j	.LBB3_33
.LBB3_30:                               # %vector.ph97
	addiw	t4, a6, -1472
	add	t4, t4, a1
	li	a4, 1020
	mul	a4, t0, a4
	andi	t1, a4, 672
	srli	t2, a7, 1
	vsetvli	a4, zero, e32, m1, ta, ma
	vmv.s.x	v8, zero
	slli	t3, a7, 1
	mv	t5, t1
	mv	a5, a0
.LBB3_31:                               # %vector.body102
                                        # =>This Inner Loop Header: Depth=1
	vl2re32.v	v10, (a5)
	vl2re32.v	v12, (t4)
	vsetvli	a4, zero, e32, m2, ta, ma
	vfmul.vv	v10, v10, v12
	vfredosum.vs	v8, v10, v8
	add	a5, a5, t3
	sub	t5, t5, t2
	add	t4, t4, t3
	bnez	t5, .LBB3_31
# %bb.32:                               # %middle.block94
	li	a4, 676
	vfmv.f.s	fa5, v8
	beq	t1, a4, .LBB3_35
.LBB3_33:                               # %for.body4.4.preheader
	slli	a5, t1, 2
	add	t2, a5, a1
	lui	t1, 3
	addiw	a4, t1, -1472
	add	a4, a4, t2
	add	a5, a5, a0
	addiw	t1, t1, 1232
	add	t1, t1, a1
.LBB3_34:                               # %for.body4.4
                                        # =>This Inner Loop Header: Depth=1
	flw	fa4, 0(a5)
	flw	fa3, 0(a4)
	fmadd.s	fa5, fa4, fa3, fa5
	addi	a4, a4, 4
	addi	a5, a5, 4
	bne	a4, t1, .LBB3_34
.LBB3_35:                               # %for.cond.cleanup3.4
	flw	fa4, 16(a2)
	fadd.s	fa5, fa5, fa4
	li	a4, 169
	fsw	fa5, 16(a3)
	bgeu	a4, t0, .LBB3_37
# %bb.36:
	li	a6, 0
	fmv.w.x	fa5, zero
	j	.LBB3_40
.LBB3_37:                               # %vector.ph112
	addiw	t3, a6, 1232
	add	t3, t3, a1
	li	a4, 1020
	mul	a4, t0, a4
	andi	a6, a4, 672
	srli	t1, a7, 1
	vsetvli	a4, zero, e32, m1, ta, ma
	vmv.s.x	v8, zero
	slli	t2, a7, 1
	mv	t4, a6
	mv	a5, a0
.LBB3_38:                               # %vector.body117
                                        # =>This Inner Loop Header: Depth=1
	vl2re32.v	v10, (a5)
	vl2re32.v	v12, (t3)
	vsetvli	a4, zero, e32, m2, ta, ma
	vfmul.vv	v10, v10, v12
	vfredosum.vs	v8, v10, v8
	add	a5, a5, t2
	sub	t4, t4, t1
	add	t3, t3, t2
	bnez	t4, .LBB3_38
# %bb.39:                               # %middle.block109
	li	a4, 676
	vfmv.f.s	fa5, v8
	beq	a6, a4, .LBB3_42
.LBB3_40:                               # %for.body4.5.preheader
	slli	a5, a6, 2
	add	a6, a5, a1
	lui	a4, 3
	addiw	a4, a4, 1232
	add	a4, a4, a6
	add	t1, a0, a5
	lui	a5, 4
	addiw	a6, a5, -160
	add	a6, a6, a1
.LBB3_41:                               # %for.body4.5
                                        # =>This Inner Loop Header: Depth=1
	flw	fa4, 0(t1)
	flw	fa3, 0(a4)
	fmadd.s	fa5, fa4, fa3, fa5
	addi	a4, a4, 4
	addi	t1, t1, 4
	bne	a4, a6, .LBB3_41
.LBB3_42:                               # %for.cond.cleanup3.5
	flw	fa4, 20(a2)
	fadd.s	fa5, fa5, fa4
	li	a4, 169
	fsw	fa5, 20(a3)
	bgeu	a4, t0, .LBB3_44
# %bb.43:
	li	a6, 0
	fmv.w.x	fa5, zero
	j	.LBB3_47
.LBB3_44:                               # %vector.ph127
	lui	a4, 4
	addiw	t3, a4, -160
	add	t3, t3, a1
	li	a4, 1020
	mul	a4, t0, a4
	andi	a6, a4, 672
	srli	t1, a7, 1
	vsetvli	a4, zero, e32, m1, ta, ma
	vmv.s.x	v8, zero
	slli	t2, a7, 1
	mv	t4, a6
	mv	a5, a0
.LBB3_45:                               # %vector.body132
                                        # =>This Inner Loop Header: Depth=1
	vl2re32.v	v10, (a5)
	vl2re32.v	v12, (t3)
	vsetvli	a4, zero, e32, m2, ta, ma
	vfmul.vv	v10, v10, v12
	vfredosum.vs	v8, v10, v8
	add	a5, a5, t2
	sub	t4, t4, t1
	add	t3, t3, t2
	bnez	t4, .LBB3_45
# %bb.46:                               # %middle.block124
	li	a4, 676
	vfmv.f.s	fa5, v8
	beq	a6, a4, .LBB3_49
.LBB3_47:                               # %for.body4.6.preheader
	slli	a5, a6, 2
	add	a6, a5, a1
	lui	a4, 4
	addiw	a4, a4, -160
	add	a4, a4, a6
	add	t1, a0, a5
	lui	a5, 5
	addiw	a6, a5, -1552
	add	a6, a6, a1
.LBB3_48:                               # %for.body4.6
                                        # =>This Inner Loop Header: Depth=1
	flw	fa4, 0(t1)
	flw	fa3, 0(a4)
	fmadd.s	fa5, fa4, fa3, fa5
	addi	a4, a4, 4
	addi	t1, t1, 4
	bne	a4, a6, .LBB3_48
.LBB3_49:                               # %for.cond.cleanup3.6
	flw	fa4, 24(a2)
	lui	a6, 5
	fadd.s	fa5, fa5, fa4
	li	a4, 169
	fsw	fa5, 24(a3)
	bgeu	a4, t0, .LBB3_51
# %bb.50:
	li	t1, 0
	fmv.w.x	fa5, zero
	j	.LBB3_54
.LBB3_51:                               # %vector.ph142
	addiw	t4, a6, -1552
	add	t4, t4, a1
	li	a4, 1020
	mul	a4, t0, a4
	andi	t1, a4, 672
	srli	t2, a7, 1
	vsetvli	a4, zero, e32, m1, ta, ma
	vmv.s.x	v8, zero
	slli	t3, a7, 1
	mv	t5, t1
	mv	a5, a0
.LBB3_52:                               # %vector.body147
                                        # =>This Inner Loop Header: Depth=1
	vl2re32.v	v10, (a5)
	vl2re32.v	v12, (t4)
	vsetvli	a4, zero, e32, m2, ta, ma
	vfmul.vv	v10, v10, v12
	vfredosum.vs	v8, v10, v8
	add	a5, a5, t3
	sub	t5, t5, t2
	add	t4, t4, t3
	bnez	t5, .LBB3_52
# %bb.53:                               # %middle.block139
	li	a4, 676
	vfmv.f.s	fa5, v8
	beq	t1, a4, .LBB3_56
.LBB3_54:                               # %for.body4.7.preheader
	slli	a5, t1, 2
	add	t2, a5, a1
	lui	t1, 5
	addiw	a4, t1, -1552
	add	a4, a4, t2
	add	a5, a5, a0
	addiw	t1, t1, 1152
	add	t1, t1, a1
.LBB3_55:                               # %for.body4.7
                                        # =>This Inner Loop Header: Depth=1
	flw	fa4, 0(a5)
	flw	fa3, 0(a4)
	fmadd.s	fa5, fa4, fa3, fa5
	addi	a4, a4, 4
	addi	a5, a5, 4
	bne	a4, t1, .LBB3_55
.LBB3_56:                               # %for.cond.cleanup3.7
	flw	fa4, 28(a2)
	fadd.s	fa5, fa5, fa4
	li	a4, 169
	fsw	fa5, 28(a3)
	bgeu	a4, t0, .LBB3_58
# %bb.57:
	li	a6, 0
	fmv.w.x	fa5, zero
	j	.LBB3_61
.LBB3_58:                               # %vector.ph157
	addiw	t3, a6, 1152
	add	t3, t3, a1
	li	a4, 1020
	mul	a4, t0, a4
	andi	a6, a4, 672
	srli	t1, a7, 1
	vsetvli	a4, zero, e32, m1, ta, ma
	vmv.s.x	v8, zero
	slli	t2, a7, 1
	mv	t4, a6
	mv	a5, a0
.LBB3_59:                               # %vector.body162
                                        # =>This Inner Loop Header: Depth=1
	vl2re32.v	v10, (a5)
	vl2re32.v	v12, (t3)
	vsetvli	a4, zero, e32, m2, ta, ma
	vfmul.vv	v10, v10, v12
	vfredosum.vs	v8, v10, v8
	add	a5, a5, t2
	sub	t4, t4, t1
	add	t3, t3, t2
	bnez	t4, .LBB3_59
# %bb.60:                               # %middle.block154
	li	a4, 676
	vfmv.f.s	fa5, v8
	beq	a6, a4, .LBB3_63
.LBB3_61:                               # %for.body4.8.preheader
	slli	a5, a6, 2
	add	a6, a5, a1
	lui	a4, 5
	addiw	a4, a4, 1152
	add	a4, a4, a6
	add	t1, a0, a5
	lui	a5, 6
	addiw	a6, a5, -240
	add	a6, a6, a1
.LBB3_62:                               # %for.body4.8
                                        # =>This Inner Loop Header: Depth=1
	flw	fa4, 0(t1)
	flw	fa3, 0(a4)
	fmadd.s	fa5, fa4, fa3, fa5
	addi	a4, a4, 4
	addi	t1, t1, 4
	bne	a4, a6, .LBB3_62
.LBB3_63:                               # %for.cond.cleanup3.8
	flw	fa4, 32(a2)
	fadd.s	fa5, fa5, fa4
	li	a4, 169
	fsw	fa5, 32(a3)
	bgeu	a4, t0, .LBB3_65
# %bb.64:
	li	a6, 0
	fmv.w.x	fa5, zero
	j	.LBB3_68
.LBB3_65:                               # %vector.ph172
	lui	a4, 6
	addiw	t1, a4, -240
	add	t1, t1, a1
	li	a4, 1020
	mul	a4, t0, a4
	andi	a6, a4, 672
	srli	t0, a7, 1
	vsetvli	a4, zero, e32, m1, ta, ma
	vmv.s.x	v8, zero
	slli	a7, a7, 1
	mv	t2, a6
	mv	a5, a0
.LBB3_66:                               # %vector.body177
                                        # =>This Inner Loop Header: Depth=1
	vl2re32.v	v10, (a5)
	vl2re32.v	v12, (t1)
	vsetvli	a4, zero, e32, m2, ta, ma
	vfmul.vv	v10, v10, v12
	vfredosum.vs	v8, v10, v8
	add	a5, a5, a7
	sub	t2, t2, t0
	add	t1, t1, a7
	bnez	t2, .LBB3_66
# %bb.67:                               # %middle.block169
	li	a4, 676
	vfmv.f.s	fa5, v8
	beq	a6, a4, .LBB3_70
.LBB3_68:                               # %for.body4.9.preheader
	slli	a6, a6, 2
	add	a4, a6, a1
	lui	a5, 6
	addiw	a5, a5, -240
	add	a4, a4, a5
	add	a0, a0, a6
	lui	a5, 7
	addiw	a5, a5, -1632
	add	a1, a1, a5
.LBB3_69:                               # %for.body4.9
                                        # =>This Inner Loop Header: Depth=1
	flw	fa4, 0(a0)
	flw	fa3, 0(a4)
	fmadd.s	fa5, fa4, fa3, fa5
	addi	a4, a4, 4
	addi	a0, a0, 4
	bne	a4, a1, .LBB3_69
.LBB3_70:                               # %for.cond.cleanup3.9
	flw	fa4, 36(a2)
	fadd.s	fa5, fa5, fa4
	fsw	fa5, 36(a3)
	ret
.Lfunc_end3:
	.size	fully_connected, .Lfunc_end3-fully_connected
                                        # -- End function
	.globl	main                            # -- Begin function main
	.p2align	1
	.type	main,@function
main:                                   # @main
# %bb.0:                                # %entry
	addi	sp, sp, -496
	sd	ra, 488(sp)                     # 8-byte Folded Spill
	sd	s0, 480(sp)                     # 8-byte Folded Spill
	sd	s1, 472(sp)                     # 8-byte Folded Spill
	sd	s2, 464(sp)                     # 8-byte Folded Spill
	sd	s3, 456(sp)                     # 8-byte Folded Spill
	sd	s4, 448(sp)                     # 8-byte Folded Spill
	sd	s5, 440(sp)                     # 8-byte Folded Spill
	sd	s6, 432(sp)                     # 8-byte Folded Spill
	sd	s7, 424(sp)                     # 8-byte Folded Spill
	sd	s8, 416(sp)                     # 8-byte Folded Spill
	sd	s9, 408(sp)                     # 8-byte Folded Spill
	sd	s10, 400(sp)                    # 8-byte Folded Spill
	sd	s11, 392(sp)                    # 8-byte Folded Spill
	fsd	fs0, 384(sp)                    # 8-byte Folded Spill
	fsd	fs1, 376(sp)                    # 8-byte Folded Spill
	fsd	fs2, 368(sp)                    # 8-byte Folded Spill
	fsd	fs3, 360(sp)                    # 8-byte Folded Spill
	fsd	fs4, 352(sp)                    # 8-byte Folded Spill
	fsd	fs5, 344(sp)                    # 8-byte Folded Spill
	fsd	fs6, 336(sp)                    # 8-byte Folded Spill
	fsd	fs7, 328(sp)                    # 8-byte Folded Spill
	fsd	fs8, 320(sp)                    # 8-byte Folded Spill
	lui	a0, 9
	addiw	a0, a0, -1440
	sub	sp, sp, a0
	csrr	a0, vlenb
	slli	a0, a0, 2
	sub	sp, sp, a0
	lui	a0, 8
	addiw	a0, a0, -160
	add	s0, sp, a0
	lui	a0, 6
	addiw	a0, a0, -240
	addi	a1, sp, 160
	add	a0, a0, a1
	sd	a0, 64(sp)                      # 8-byte Folded Spill
	lui	a0, 5
	addiw	a2, a0, 1152
	add	a2, a2, a1
	sd	a2, 56(sp)                      # 8-byte Folded Spill
	addiw	a0, a0, -1552
	add	a0, a0, a1
	sd	a0, 48(sp)                      # 8-byte Folded Spill
	lui	a0, 4
	addiw	a0, a0, -160
	add	a0, a0, a1
	sd	a0, 40(sp)                      # 8-byte Folded Spill
	lui	a0, 3
	addiw	a2, a0, 1232
	add	a2, a2, a1
	sd	a2, 32(sp)                      # 8-byte Folded Spill
	addiw	a0, a0, -1472
	add	a0, a0, a1
	sd	a0, 24(sp)                      # 8-byte Folded Spill
	lui	a0, 2
	addiw	s8, a0, -80
	add	s8, s8, a1
	lui	a0, 1
	addiw	s9, a0, 1312
	add	s9, s9, a1
	addi	a0, a1, 2047
	addi	s10, a0, 657
	li	a0, 0
	call	time
	sext.w	a0, a0
	call	srand
	addi	a0, s0, 2047
	addi	a0, a0, 1089
	sd	a0, 72(sp)                      # 8-byte Folded Spill
	lui	a0, 196608
	fmv.w.x	fs0, a0
	lui	a0, 8
	addiw	a0, a0, -160
	add	s11, sp, a0
.LBB4_1:                                # %for.cond2.preheader
                                        # =>This Inner Loop Header: Depth=1
	addi	s7, s11, 32
	call	rand
	mv	s2, a0
	call	rand
	mv	s3, a0
	call	rand
	mv	s4, a0
	call	rand
	mv	s5, a0
	call	rand
	mv	s6, a0
	call	rand
	mv	s1, a0
	call	rand
	mv	s0, a0
	call	rand
	vsetivli	zero, 8, e32, m2, ta, ma
	vmv.v.x	v8, s2
	vslide1down.vx	v8, v8, s3
	vslide1down.vx	v8, v8, s4
	vslide1down.vx	v8, v8, s5
	vslide1down.vx	v8, v8, s6
	vslide1down.vx	v8, v8, s1
	vslide1down.vx	v8, v8, s0
	vslide1down.vx	v8, v8, a0
	vfcvt.f.x.v	v8, v8
	vfmul.vf	v8, v8, fs0
	vse32.v	v8, (s11)
	call	rand
	mv	s2, a0
	call	rand
	mv	s3, a0
	call	rand
	mv	s4, a0
	call	rand
	mv	s5, a0
	call	rand
	mv	s6, a0
	call	rand
	mv	s1, a0
	call	rand
	mv	s0, a0
	call	rand
	vsetivli	zero, 8, e32, m2, ta, ma
	vmv.v.x	v8, s2
	vslide1down.vx	v8, v8, s3
	vslide1down.vx	v8, v8, s4
	vslide1down.vx	v8, v8, s5
	vslide1down.vx	v8, v8, s6
	vslide1down.vx	v8, v8, s1
	vslide1down.vx	v8, v8, s0
	vslide1down.vx	v8, v8, a0
	vfcvt.f.x.v	v8, v8
	vfmul.vf	v8, v8, fs0
	vse32.v	v8, (s7)
	call	rand
	mv	s2, a0
	addi	s7, s11, 64
	call	rand
	mv	s3, a0
	call	rand
	mv	s4, a0
	call	rand
	mv	s5, a0
	call	rand
	mv	s6, a0
	call	rand
	mv	s1, a0
	call	rand
	mv	s0, a0
	call	rand
	vsetivli	zero, 8, e32, m2, ta, ma
	vmv.v.x	v8, s2
	vslide1down.vx	v8, v8, s3
	vslide1down.vx	v8, v8, s4
	vslide1down.vx	v8, v8, s5
	vslide1down.vx	v8, v8, s6
	vslide1down.vx	v8, v8, s1
	vslide1down.vx	v8, v8, s0
	vslide1down.vx	v8, v8, a0
	vfcvt.f.x.v	v8, v8
	vfmul.vf	v8, v8, fs0
	vse32.v	v8, (s7)
	call	rand
	mv	s2, a0
	addi	s3, s11, 96
	call	rand
	mv	s1, a0
	call	rand
	mv	s0, a0
	call	rand
	vsetivli	zero, 4, e32, m1, ta, ma
	vmv.v.x	v8, s2
	vslide1down.vx	v8, v8, s1
	vslide1down.vx	v8, v8, s0
	vslide1down.vx	v8, v8, a0
	vfcvt.f.x.v	v8, v8
	vfmul.vf	v8, v8, fs0
	addi	s11, s11, 112
	vse32.v	v8, (s3)
	ld	a0, 72(sp)                      # 8-byte Folded Reload
	bne	s11, a0, .LBB4_1
# %bb.2:                                # %for.cond.cleanup
	call	rand
	fcvt.s.w	fa5, a0
	lui	a0, 196608
	fmv.w.x	fs8, a0
	fmul.s	fs0, fa5, fs8
	call	rand
	fcvt.s.w	fa5, a0
	fmul.s	fs1, fa5, fs8
	call	rand
	fcvt.s.w	fa5, a0
	fmul.s	fs2, fa5, fs8
	call	rand
	fcvt.s.w	fa5, a0
	fmul.s	fs3, fa5, fs8
	call	rand
	fcvt.s.w	fa5, a0
	fmul.s	fs4, fa5, fs8
	call	rand
	fcvt.s.w	fa5, a0
	fmul.s	fs5, fa5, fs8
	call	rand
	fcvt.s.w	fa5, a0
	fmul.s	fs6, fa5, fs8
	call	rand
	fcvt.s.w	fa5, a0
	fmul.s	fs7, fa5, fs8
	call	rand
	li	t5, 0
	fcvt.s.w	fa5, a0
	fmul.s	fa5, fa5, fs8
	lui	a0, 8
	addiw	a0, a0, -160
	add	a0, a0, sp
	flw	ft1, 0(a0)
	flw	ft0, 4(a0)
	flw	fa4, 112(a0)
	flw	fa3, 116(a0)
	csrr	a0, vlenb
	srli	t2, a0, 3
	vsetvli	a1, zero, e32, m2, ta, ma
	vfmv.v.f	v12, fs0
	vfmv.v.f	v14, fs1
	vfmv.v.f	v16, fs2
	vfmv.v.f	v18, fs3
	vfmv.v.f	v20, fs4
	vfmv.v.f	v22, fs5
	vfmv.v.f	v6, fs6
	vfmv.v.f	v24, fs7
	vfmv.v.f	v8, fa5
	lui	a1, 8
	addiw	a1, a1, 72
	add	s2, sp, a1
	slli	a4, a0, 1
	li	a1, 28
	mul	a1, t2, a1
	andi	t3, a1, 24
	srli	s3, a0, 1
	lui	a0, 7
	addiw	a0, a0, 1232
	add	a2, sp, a0
	lui	a0, 8
	addiw	a0, a0, -160
	add	a6, sp, a0
	li	a7, 112
	li	t0, 6
	fmv.w.x	fa2, zero
	li	s4, 104
	li	t1, 26
	addi	a0, s3, -1
	slli	a0, a0, 32
	srli	t6, a0, 32
	addi	t4, t6, 1
	addi	a5, s3, -1
	lui	a0, 8
	addiw	a0, a0, -160
	add	a1, sp, a0
	csrr	a0, vlenb
	slli	a0, a0, 1
	add	a0, a0, sp
	lui	a3, 9
	addiw	a3, a3, -1120
	add	a0, a0, a3
	vs2r.v	v12, (a0)                       # Unknown-size Folded Spill
	lui	a0, 9
	addiw	a0, a0, -1120
	add	a0, a0, sp
	vs2r.v	v8, (a0)                        # Unknown-size Folded Spill
.LBB4_3:                                # %for.cond1.preheader.i
                                        # =>This Loop Header: Depth=1
                                        #     Child Loop BB4_6 Depth 2
                                        #     Child Loop BB4_9 Depth 2
	fmv.s	fa1, fa4
	fmv.s	fa0, fa3
	mul	a0, t5, a7
	add	a0, a0, a6
	flw	fa4, 224(a0)
	flw	fa3, 228(a0)
	bgeu	t0, t2, .LBB4_5
# %bb.4:                                #   in Loop: Header=BB4_3 Depth=1
	li	a0, 0
	fmv.s	ft2, fa3
	fmv.s	ft3, fa4
	fmv.s	ft4, fa0
	fmv.s	ft5, fa1
	j	.LBB4_8
.LBB4_5:                                # %vector.ph
                                        #   in Loop: Header=BB4_3 Depth=1
	vsetvli	a0, zero, e32, m1, ta, ma
	vfmv.s.f	v8, fa3
	vsetvli	zero, t4, e32, m2, ta, ma
	vslideup.vx	v0, v8, t6
	vsetvli	a0, zero, e32, m2, ta, ma
	vfmv.s.f	v8, fa4
	vsetvli	zero, t4, e32, m2, ta, ma
	vslideup.vx	v4, v8, t6
	vsetvli	a0, zero, e32, m2, ta, ma
	vfmv.s.f	v8, fa0
	vsetvli	zero, t4, e32, m2, ta, ma
	vslideup.vx	v28, v8, t6
	vsetvli	a0, zero, e32, m2, ta, ma
	vfmv.s.f	v8, fa1
	vsetvli	zero, t4, e32, m2, ta, ma
	vslideup.vx	v2, v8, t6
	vsetvli	a0, zero, e32, m2, ta, ma
	vfmv.s.f	v8, ft0
	vsetvli	zero, t4, e32, m2, ta, ma
	vslideup.vx	v26, v8, t6
	vsetvli	a0, zero, e32, m2, ta, ma
	vfmv.s.f	v8, ft1
	vsetvli	zero, t4, e32, m2, ta, ma
	vslideup.vx	v30, v8, t6
	mv	a0, t3
	mv	s1, a2
	mv	a3, s2
.LBB4_6:                                # %vector.body
                                        #   Parent Loop BB4_3 Depth=1
                                        # =>  This Inner Loop Header: Depth=2
	vmv2r.v	v10, v30
	vmv2r.v	v30, v26
	vmv2r.v	v8, v2
	vmv2r.v	v2, v28
	vmv2r.v	v12, v24
	vmv2r.v	v24, v6
	vmv2r.v	v6, v4
	vmv2r.v	v4, v0
	addi	s0, a3, -224
	vl2re32.v	v26, (s0)
	vsetivli	zero, 1, e32, m2, ta, ma
	vslidedown.vx	v30, v30, a5
	vsetvli	s0, zero, e32, m2, ta, ma
	vslideup.vi	v30, v26, 1
	vsetivli	zero, 1, e32, m2, ta, ma
	vslidedown.vx	v10, v10, a5
	vsetvli	s0, zero, e32, m2, ta, ma
	vslideup.vi	v10, v30, 1
	vmv.v.i	v0, 0
	csrr	s0, vlenb
	slli	s0, s0, 1
	add	s0, s0, sp
	lui	s5, 9
	addiw	s5, s5, -1120
	add	s0, s0, s5
	vl2r.v	v28, (s0)                       # Unknown-size Folded Reload
	vfmacc.vv	v0, v28, v10
	vfmacc.vv	v0, v30, v14
	vfmacc.vv	v0, v26, v16
	addi	s0, a3, -112
	vl2re32.v	v28, (s0)
	vsetivli	zero, 1, e32, m2, ta, ma
	vslidedown.vx	v2, v2, a5
	vsetvli	s0, zero, e32, m2, ta, ma
	vslideup.vi	v2, v28, 1
	vsetivli	zero, 1, e32, m2, ta, ma
	vslidedown.vx	v8, v8, a5
	vsetvli	s0, zero, e32, m2, ta, ma
	vslideup.vi	v8, v2, 1
	vfmadd.vv	v8, v18, v0
	vfmacc.vv	v8, v2, v20
	vfmacc.vv	v8, v28, v22
	vl2re32.v	v0, (a3)
	vsetivli	zero, 1, e32, m2, ta, ma
	vslidedown.vx	v4, v4, a5
	vsetvli	s0, zero, e32, m2, ta, ma
	vslideup.vi	v4, v0, 1
	vsetivli	zero, 1, e32, m2, ta, ma
	vslidedown.vx	v10, v6, a5
	vmv2r.v	v6, v24
	vmv2r.v	v24, v12
	vsetvli	s0, zero, e32, m2, ta, ma
	vslideup.vi	v10, v4, 1
	vfmadd.vv	v10, v6, v8
	vfmacc.vv	v10, v4, v12
	lui	s0, 9
	addiw	s0, s0, -1120
	add	s0, s0, sp
	vl2r.v	v8, (s0)                        # Unknown-size Folded Reload
	vfmacc.vv	v10, v0, v8
	vs2r.v	v10, (s1)
	add	a3, a3, a4
	sub	a0, a0, s3
	add	s1, s1, a4
	bnez	a0, .LBB4_6
# %bb.7:                                # %middle.block
                                        #   in Loop: Header=BB4_3 Depth=1
	vsetivli	zero, 1, e32, m2, ta, ma
	vslidedown.vx	v8, v0, t6
	vfmv.f.s	ft2, v8
	vslidedown.vx	v8, v4, t6
	vfmv.f.s	ft3, v8
	vslidedown.vx	v8, v28, t6
	vfmv.f.s	ft4, v8
	vslidedown.vx	v8, v2, t6
	vfmv.f.s	ft5, v8
	vslidedown.vx	v8, v26, t6
	vfmv.f.s	ft0, v8
	vslidedown.vx	v8, v30, t6
	vfmv.f.s	ft1, v8
	mv	a0, t3
.LBB4_8:                                # %for.cond5.preheader.i.preheader
                                        #   in Loop: Header=BB4_3 Depth=1
	addi	t5, t5, 1
	slli	a0, a0, 2
.LBB4_9:                                # %for.cond5.preheader.i
                                        #   Parent Loop BB4_3 Depth=1
                                        # =>  This Inner Loop Header: Depth=2
	fmv.s	ft6, ft0
	add	a3, a1, a0
	flw	ft0, 8(a3)
	fmadd.s	ft1, ft1, fs0, fa2
	fmadd.s	ft1, ft6, fs1, ft1
	fmv.s	ft7, ft4
	fmadd.s	ft1, ft0, fs2, ft1
	flw	ft4, 120(a3)
	fmadd.s	ft1, ft5, fs3, ft1
	fmadd.s	ft1, ft7, fs4, ft1
	fmv.s	ft5, ft2
	flw	ft2, 232(a3)
	fmadd.s	ft1, ft4, fs5, ft1
	fmadd.s	ft1, ft3, fs6, ft1
	fmadd.s	fa6, ft5, fs7, ft1
	fmv.s	ft3, ft5
	fmv.s	ft5, ft7
	fmv.s	ft1, ft6
	fmadd.s	ft6, ft2, fa5, fa6
	add	a3, a2, a0
	addi	a0, a0, 4
	fsw	ft6, 0(a3)
	bne	a0, s4, .LBB4_9
# %bb.10:                               # %for.cond.cleanup3.i
                                        #   in Loop: Header=BB4_3 Depth=1
	addi	s2, s2, 112
	addi	a2, a2, 104
	addi	a1, a1, 112
	fmv.s	ft0, fa0
	fmv.s	ft1, fa1
	bne	t5, t1, .LBB4_3
# %bb.11:                               # %convolve.exit
	lui	a0, 7
	addiw	a0, a0, 1232
	add	a0, a0, sp
	lui	a1, 7
	addiw	a1, a1, -1472
	add	a1, a1, sp
	call	flatten
	call	rand
	fcvt.s.w	fa5, a0
	lui	a0, 196608
	fmv.w.x	fs0, a0
	fmul.s	fa5, fa5, fs0
	fsw	fa5, 120(sp)
	addi	s0, sp, 160
	addi	a0, s0, 2047
	addi	s1, a0, 657
.LBB4_12:                               # %for.body35
                                        # =>This Inner Loop Header: Depth=1
	call	rand
	fcvt.s.w	fa5, a0
	fmul.s	fa5, fa5, fs0
	fsw	fa5, 0(s0)
	addi	s0, s0, 4
	bne	s0, s1, .LBB4_12
# %bb.13:                               # %for.cond.cleanup34
	call	rand
	fcvt.s.w	fa5, a0
	lui	a0, 196608
	fmv.w.x	fs0, a0
	fmul.s	fa5, fa5, fs0
	fsw	fa5, 124(sp)
	lui	a0, 1
	addiw	s0, a0, 1312
	addi	a0, sp, 160
	add	s0, s0, a0
	ld	s2, 56(sp)                      # 8-byte Folded Reload
	ld	s4, 48(sp)                      # 8-byte Folded Reload
	ld	s6, 40(sp)                      # 8-byte Folded Reload
.LBB4_14:                               # %for.body35.1
                                        # =>This Inner Loop Header: Depth=1
	call	rand
	fcvt.s.w	fa5, a0
	fmul.s	fa5, fa5, fs0
	fsw	fa5, 0(s10)
	addi	s10, s10, 4
	bne	s10, s0, .LBB4_14
# %bb.15:                               # %for.cond.cleanup34.1
	call	rand
	fcvt.s.w	fa5, a0
	lui	a0, 196608
	fmv.w.x	fs0, a0
	fmul.s	fa5, fa5, fs0
	fsw	fa5, 128(sp)
	lui	a0, 2
	addiw	s0, a0, -80
	addi	a0, sp, 160
	add	s5, a0, s0
	ld	s3, 64(sp)                      # 8-byte Folded Reload
	ld	s0, 32(sp)                      # 8-byte Folded Reload
	ld	s1, 24(sp)                      # 8-byte Folded Reload
.LBB4_16:                               # %for.body35.2
                                        # =>This Inner Loop Header: Depth=1
	call	rand
	fcvt.s.w	fa5, a0
	fmul.s	fa5, fa5, fs0
	fsw	fa5, 0(s9)
	addi	s9, s9, 4
	bne	s9, s5, .LBB4_16
# %bb.17:                               # %for.cond.cleanup34.2
	call	rand
	fcvt.s.w	fa5, a0
	lui	a0, 196608
	fmv.w.x	fs0, a0
	fmul.s	fa5, fa5, fs0
	fsw	fa5, 132(sp)
	lui	a0, 3
	addiw	s5, a0, -1472
	addi	a0, sp, 160
	add	s5, s5, a0
.LBB4_18:                               # %for.body35.3
                                        # =>This Inner Loop Header: Depth=1
	call	rand
	fcvt.s.w	fa5, a0
	fmul.s	fa5, fa5, fs0
	fsw	fa5, 0(s8)
	addi	s8, s8, 4
	bne	s8, s5, .LBB4_18
# %bb.19:                               # %for.cond.cleanup34.3
	call	rand
	fcvt.s.w	fa5, a0
	lui	a0, 196608
	fmv.w.x	fs0, a0
	fmul.s	fa5, fa5, fs0
	fsw	fa5, 136(sp)
	lui	a0, 3
	addiw	s5, a0, 1232
	addi	a0, sp, 160
	add	s5, s5, a0
.LBB4_20:                               # %for.body35.4
                                        # =>This Inner Loop Header: Depth=1
	call	rand
	fcvt.s.w	fa5, a0
	fmul.s	fa5, fa5, fs0
	fsw	fa5, 0(s1)
	addi	s1, s1, 4
	bne	s1, s5, .LBB4_20
# %bb.21:                               # %for.cond.cleanup34.4
	call	rand
	fcvt.s.w	fa5, a0
	lui	a0, 196608
	fmv.w.x	fs0, a0
	fmul.s	fa5, fa5, fs0
	fsw	fa5, 140(sp)
	lui	a0, 4
	addiw	s5, a0, -160
	addi	a0, sp, 160
	add	s5, s5, a0
.LBB4_22:                               # %for.body35.5
                                        # =>This Inner Loop Header: Depth=1
	call	rand
	fcvt.s.w	fa5, a0
	fmul.s	fa5, fa5, fs0
	fsw	fa5, 0(s0)
	addi	s0, s0, 4
	bne	s0, s5, .LBB4_22
# %bb.23:                               # %for.cond.cleanup34.5
	call	rand
	fcvt.s.w	fa5, a0
	lui	a0, 196608
	fmv.w.x	fs0, a0
	fmul.s	fa5, fa5, fs0
	fsw	fa5, 144(sp)
	lui	a0, 5
	addiw	s0, a0, -1552
	addi	a0, sp, 160
	add	s0, s0, a0
.LBB4_24:                               # %for.body35.6
                                        # =>This Inner Loop Header: Depth=1
	call	rand
	fcvt.s.w	fa5, a0
	fmul.s	fa5, fa5, fs0
	fsw	fa5, 0(s6)
	addi	s6, s6, 4
	bne	s6, s0, .LBB4_24
# %bb.25:                               # %for.cond.cleanup34.6
	call	rand
	fcvt.s.w	fa5, a0
	lui	a0, 196608
	fmv.w.x	fs0, a0
	fmul.s	fa5, fa5, fs0
	fsw	fa5, 148(sp)
	lui	a0, 5
	addiw	s0, a0, 1152
	addi	a0, sp, 160
	add	s0, s0, a0
.LBB4_26:                               # %for.body35.7
                                        # =>This Inner Loop Header: Depth=1
	call	rand
	fcvt.s.w	fa5, a0
	fmul.s	fa5, fa5, fs0
	fsw	fa5, 0(s4)
	addi	s4, s4, 4
	bne	s4, s0, .LBB4_26
# %bb.27:                               # %for.cond.cleanup34.7
	call	rand
	fcvt.s.w	fa5, a0
	lui	a0, 196608
	fmv.w.x	fs0, a0
	fmul.s	fa5, fa5, fs0
	fsw	fa5, 152(sp)
	lui	a0, 6
	addiw	s0, a0, -240
	addi	a0, sp, 160
	add	s0, s0, a0
.LBB4_28:                               # %for.body35.8
                                        # =>This Inner Loop Header: Depth=1
	call	rand
	fcvt.s.w	fa5, a0
	fmul.s	fa5, fa5, fs0
	fsw	fa5, 0(s2)
	addi	s2, s2, 4
	bne	s2, s0, .LBB4_28
# %bb.29:                               # %for.cond.cleanup34.8
	call	rand
	fcvt.s.w	fa5, a0
	lui	a0, 196608
	fmv.w.x	fs0, a0
	fmul.s	fa5, fa5, fs0
	fsw	fa5, 156(sp)
	lui	a0, 7
	addiw	s0, a0, -1632
	addi	a0, sp, 160
	add	s0, s0, a0
.LBB4_30:                               # %for.body35.9
                                        # =>This Inner Loop Header: Depth=1
	call	rand
	fcvt.s.w	fa5, a0
	fmul.s	fa5, fa5, fs0
	fsw	fa5, 0(s3)
	addi	s3, s3, 4
	bne	s3, s0, .LBB4_30
# %bb.31:                               # %for.cond.cleanup34.9
	lui	a0, 7
	addiw	a0, a0, -1472
	add	a0, a0, sp
	addi	a1, sp, 160
	addi	a2, sp, 120
	addi	a3, sp, 80
	call	fully_connected
	lui	a0, %hi(.Lstr)
	addi	a0, a0, %lo(.Lstr)
	call	puts
	flw	fa5, 80(sp)
	fcvt.d.s	fa5, fa5
	lui	a0, %hi(.L.str.1)
	addi	s0, a0, %lo(.L.str.1)
	fmv.x.d	a1, fa5
	mv	a0, s0
	call	printf
	flw	fa5, 84(sp)
	fcvt.d.s	fa5, fa5
	fmv.x.d	a1, fa5
	mv	a0, s0
	call	printf
	flw	fa5, 88(sp)
	fcvt.d.s	fa5, fa5
	fmv.x.d	a1, fa5
	mv	a0, s0
	call	printf
	flw	fa5, 92(sp)
	fcvt.d.s	fa5, fa5
	fmv.x.d	a1, fa5
	mv	a0, s0
	call	printf
	flw	fa5, 96(sp)
	fcvt.d.s	fa5, fa5
	fmv.x.d	a1, fa5
	mv	a0, s0
	call	printf
	flw	fa5, 100(sp)
	fcvt.d.s	fa5, fa5
	fmv.x.d	a1, fa5
	mv	a0, s0
	call	printf
	flw	fa5, 104(sp)
	fcvt.d.s	fa5, fa5
	fmv.x.d	a1, fa5
	mv	a0, s0
	call	printf
	flw	fa5, 108(sp)
	fcvt.d.s	fa5, fa5
	fmv.x.d	a1, fa5
	mv	a0, s0
	call	printf
	flw	fa5, 112(sp)
	fcvt.d.s	fa5, fa5
	fmv.x.d	a1, fa5
	mv	a0, s0
	call	printf
	flw	fa5, 116(sp)
	fcvt.d.s	fa5, fa5
	fmv.x.d	a1, fa5
	mv	a0, s0
	call	printf
	li	a0, 10
	call	putchar
	li	a0, 0
	csrr	a1, vlenb
	slli	a1, a1, 2
	add	sp, sp, a1
	lui	a1, 9
	addiw	a1, a1, -1440
	add	sp, sp, a1
	ld	ra, 488(sp)                     # 8-byte Folded Reload
	ld	s0, 480(sp)                     # 8-byte Folded Reload
	ld	s1, 472(sp)                     # 8-byte Folded Reload
	ld	s2, 464(sp)                     # 8-byte Folded Reload
	ld	s3, 456(sp)                     # 8-byte Folded Reload
	ld	s4, 448(sp)                     # 8-byte Folded Reload
	ld	s5, 440(sp)                     # 8-byte Folded Reload
	ld	s6, 432(sp)                     # 8-byte Folded Reload
	ld	s7, 424(sp)                     # 8-byte Folded Reload
	ld	s8, 416(sp)                     # 8-byte Folded Reload
	ld	s9, 408(sp)                     # 8-byte Folded Reload
	ld	s10, 400(sp)                    # 8-byte Folded Reload
	ld	s11, 392(sp)                    # 8-byte Folded Reload
	fld	fs0, 384(sp)                    # 8-byte Folded Reload
	fld	fs1, 376(sp)                    # 8-byte Folded Reload
	fld	fs2, 368(sp)                    # 8-byte Folded Reload
	fld	fs3, 360(sp)                    # 8-byte Folded Reload
	fld	fs4, 352(sp)                    # 8-byte Folded Reload
	fld	fs5, 344(sp)                    # 8-byte Folded Reload
	fld	fs6, 336(sp)                    # 8-byte Folded Reload
	fld	fs7, 328(sp)                    # 8-byte Folded Reload
	fld	fs8, 320(sp)                    # 8-byte Folded Reload
	addi	sp, sp, 496
	ret
.Lfunc_end4:
	.size	main, .Lfunc_end4-main
                                        # -- End function
	.type	.L.str.1,@object                # @.str.1
	.section	.rodata.str1.1,"aMS",@progbits,1
.L.str.1:
	.asciz	"%f "
	.size	.L.str.1, 4

	.type	.Lstr,@object                   # @str
.Lstr:
	.asciz	"Output values:"
	.size	.Lstr, 15

	.ident	"clang version 18.1.4 (git@github.com:llvm/llvm-project.git e6c3289804a67ea0bb6a86fadbe454dd93b8d855)"
	.section	".note.GNU-stack","",@progbits
	.addrsig
