1328 lines
19 KiB
ArmAsm
1328 lines
19 KiB
ArmAsm
.file "71_full_conn.sy"
|
|
.option pic
|
|
.attribute arch, "rv64i2p1_m2p0_a2p1_f2p2_d2p2_c2p0_zicsr2p0_zifencei2p0"
|
|
.attribute unaligned_access, 0
|
|
.attribute stack_align, 16
|
|
.text
|
|
.align 1
|
|
.globl relu_reg
|
|
.type relu_reg, @function
|
|
relu_reg:
|
|
not a5,a0
|
|
srai a5,a5,63
|
|
and a0,a5,a0
|
|
li a5,127
|
|
ble a0,a5,.L3
|
|
li a0,127
|
|
.L3:
|
|
ret
|
|
.size relu_reg, .-relu_reg
|
|
.align 1
|
|
.globl model
|
|
.type model, @function
|
|
model:
|
|
lw t4,0(a0)
|
|
li a3,-106
|
|
addi sp,sp,-304
|
|
mulw a2,a3,t4
|
|
lw t2,32(a0)
|
|
sd s1,288(sp)
|
|
lw s1,4(a0)
|
|
lw t1,8(a0)
|
|
li t5,-94
|
|
slliw a5,s1,6
|
|
sd s0,296(sp)
|
|
sd s9,224(sp)
|
|
lw s0,12(a0)
|
|
lw s9,20(a0)
|
|
mulw t5,t5,t2
|
|
lw t6,52(a0)
|
|
lw t0,16(a0)
|
|
sd s5,256(sp)
|
|
sd s10,216(sp)
|
|
lw s5,24(a0)
|
|
lw s10,60(a0)
|
|
sw a5,164(sp)
|
|
subw a4,a5,s1
|
|
slliw a5,t1,3
|
|
lw a6,28(a0)
|
|
slliw a4,a4,1
|
|
addw a5,a5,t1
|
|
slliw a7,s9,1
|
|
addw a2,a2,a4
|
|
slliw a5,a5,1
|
|
slliw a4,s0,5
|
|
sd s2,280(sp)
|
|
sd s3,272(sp)
|
|
sd s4,264(sp)
|
|
sd s6,248(sp)
|
|
sd s7,240(sp)
|
|
lw s6,36(a0)
|
|
sd s8,232(sp)
|
|
sd s11,208(sp)
|
|
sd s9,72(sp)
|
|
sd t0,24(sp)
|
|
sd t6,8(sp)
|
|
negw t0,t0
|
|
sd s5,88(sp)
|
|
sw a7,168(sp)
|
|
sd s10,80(sp)
|
|
subw a2,a2,a5
|
|
subw a4,s0,a4
|
|
addw a7,a7,s9
|
|
lw a1,44(a0)
|
|
addw a2,a2,a4
|
|
sw t0,204(sp)
|
|
slliw a4,t0,3
|
|
slliw a7,a7,4
|
|
slliw t0,a6,4
|
|
negw s2,s5
|
|
subw a7,a7,s9
|
|
addw a2,a2,a4
|
|
li t3,-121
|
|
addw a4,t0,a6
|
|
mulw t3,t3,s6
|
|
addw a2,a2,a7
|
|
slliw a4,a4,2
|
|
slliw a7,s2,2
|
|
addw a2,a2,a7
|
|
li a5,-21
|
|
subw a4,a4,a6
|
|
addw a4,a2,a4
|
|
addw a4,a4,t5
|
|
li s3,-43
|
|
mulw a5,a5,a1
|
|
lw t5,88(a0)
|
|
lw s7,64(a0)
|
|
sw t0,180(sp)
|
|
mv s11,t5
|
|
lw t0,40(a0)
|
|
sd t5,16(sp)
|
|
li t5,87
|
|
sw s2,104(sp)
|
|
lw s2,48(a0)
|
|
mulw s3,s3,t6
|
|
li t6,-42
|
|
lw a7,56(a0)
|
|
mv s4,t0
|
|
sd t0,40(sp)
|
|
slliw t0,t0,3
|
|
sd a1,48(sp)
|
|
subw t0,t0,s4
|
|
lw a1,72(a0)
|
|
addw a4,a4,t3
|
|
mulw t5,t5,s7
|
|
slliw s4,s2,4
|
|
lw t3,68(a0)
|
|
addw a4,a4,t0
|
|
subw s4,s2,s4
|
|
slliw t0,a7,3
|
|
lw s8,80(a0)
|
|
addw a5,a4,a5
|
|
sw t0,100(sp)
|
|
slliw a4,s4,2
|
|
mulw t6,t6,s10
|
|
subw t0,t0,a7
|
|
lw a2,84(a0)
|
|
addw a4,a5,a4
|
|
slliw a5,t0,4
|
|
addw a4,a4,s3
|
|
sd s7,56(sp)
|
|
subw a5,a5,t0
|
|
li s7,110
|
|
slliw s3,t3,3
|
|
mulw a3,a3,a1
|
|
addw a5,a4,a5
|
|
subw a4,s3,t3
|
|
li s3,-100
|
|
sw t5,120(sp)
|
|
addw a5,a5,t6
|
|
lw t6,120(sp)
|
|
lw t0,76(a0)
|
|
slliw a4,a4,2
|
|
addw a5,a5,t6
|
|
mulw s4,s7,s8
|
|
addw a4,a4,t3
|
|
lw t5,92(a0)
|
|
lw t6,96(a0)
|
|
addw a5,a5,a4
|
|
slliw a0,t0,5
|
|
addw a5,a5,a3
|
|
subw a0,t0,a0
|
|
addw a4,a5,a0
|
|
li a3,-22
|
|
mulw s3,s3,a2
|
|
subw a4,a4,s4
|
|
sd s8,64(sp)
|
|
mv s8,s5
|
|
sd s6,32(sp)
|
|
sw s4,160(sp)
|
|
slliw s4,t6,6
|
|
subw s4,t6,s4
|
|
slliw a0,t5,1
|
|
slliw s4,s4,1
|
|
mulw a3,a3,s11
|
|
addw a4,a4,s3
|
|
slliw s3,s5,4
|
|
li s5,-75
|
|
mv s11,s3
|
|
sw s3,188(sp)
|
|
slliw s3,s10,4
|
|
addw s3,s3,s10
|
|
ld s10,64(sp)
|
|
subw s8,s8,s11
|
|
mulw s5,s5,t5
|
|
ld s11,48(sp)
|
|
addw a4,a4,a3
|
|
slliw a3,s6,5
|
|
slliw s6,s10,6
|
|
mv s10,s9
|
|
sw a0,200(sp)
|
|
addw s4,s4,t6
|
|
slliw s3,s3,1
|
|
slliw a5,t2,5
|
|
addw a4,a4,s5
|
|
slliw s5,s9,4
|
|
li s9,-67
|
|
mulw s9,s9,s11
|
|
sw s5,184(sp)
|
|
addw a4,a4,s4
|
|
ld s4,32(sp)
|
|
subw a5,a5,t2
|
|
slliw a5,a5,2
|
|
mv s7,s5
|
|
subw a3,s4,a3
|
|
slliw s5,s2,3
|
|
addw a0,a0,t5
|
|
sw s9,112(sp)
|
|
slliw s9,s8,3
|
|
sw s9,108(sp)
|
|
sw s3,116(sp)
|
|
ld s8,64(sp)
|
|
slliw a0,a0,4
|
|
addw a0,a0,t5
|
|
addw s3,s6,s8
|
|
sw s3,128(sp)
|
|
addw s3,a5,t2
|
|
subw a5,s10,s7
|
|
sw a5,144(sp)
|
|
slliw a5,a3,1
|
|
sw a5,148(sp)
|
|
subw a5,s2,s5
|
|
sw a5,152(sp)
|
|
li a5,-70
|
|
mulw a5,a5,t1
|
|
sext.w s4,a4
|
|
sw s3,132(sp)
|
|
sw a0,140(sp)
|
|
sw a5,124(sp)
|
|
li a5,82
|
|
mulw a5,a5,s1
|
|
sw a5,136(sp)
|
|
bge s4,zero,.L6
|
|
li a4,0
|
|
li s4,0
|
|
.L6:
|
|
li a5,127
|
|
ble s4,a5,.L7
|
|
li a4,127
|
|
.L7:
|
|
li s3,-82
|
|
mulw s3,s3,t1
|
|
slliw a5,t4,2
|
|
slliw a3,s1,1
|
|
sw a5,176(sp)
|
|
addw a3,a3,s1
|
|
addw a5,a5,t4
|
|
slliw a0,a5,4
|
|
slliw a3,a3,3
|
|
ld s5,24(sp)
|
|
addw a0,a5,a0
|
|
subw a3,a3,s1
|
|
addw a5,a0,a3
|
|
li s4,-103
|
|
mulw s4,s4,s0
|
|
addw a5,a5,s3
|
|
li s3,-123
|
|
ld a0,32(sp)
|
|
ld a3,72(sp)
|
|
ld s7,40(sp)
|
|
li s10,-111
|
|
slliw s8,a3,6
|
|
slliw a3,a0,1
|
|
addw a3,a3,a0
|
|
mulw s3,s3,s5
|
|
addw a5,a5,s4
|
|
slliw a3,a3,4
|
|
subw a3,a3,a0
|
|
slliw a0,a1,1
|
|
addw s5,a0,a1
|
|
sw a0,192(sp)
|
|
li a0,50
|
|
slliw s6,t3,6
|
|
addw s6,s6,t3
|
|
addw a5,a5,s3
|
|
lw s3,108(sp)
|
|
addw a5,a5,s8
|
|
mulw a0,a0,a6
|
|
addw a5,a5,s3
|
|
slliw s3,t0,3
|
|
subw s4,s3,t0
|
|
sw s3,196(sp)
|
|
li s3,-59
|
|
slliw s5,s5,4
|
|
subw s5,s5,a1
|
|
slliw s4,s4,4
|
|
sw s8,156(sp)
|
|
mulw s11,s3,t2
|
|
addw a5,a5,a0
|
|
slliw a0,a2,1
|
|
ld s8,16(sp)
|
|
addw s3,a0,a2
|
|
addw s4,s4,t0
|
|
slliw s3,s3,4
|
|
sw a0,172(sp)
|
|
subw s3,s3,a2
|
|
slliw a0,t5,2
|
|
mulw s10,s10,s7
|
|
addw a5,a5,s11
|
|
lw s7,112(sp)
|
|
addw a5,a5,a3
|
|
li a3,-106
|
|
slliw s9,s8,2
|
|
addw s8,a0,t5
|
|
slliw s8,s8,4
|
|
addw a5,a5,s10
|
|
addw a5,a5,s7
|
|
ld s7,8(sp)
|
|
mulw a3,a3,s2
|
|
li s10,-75
|
|
mulw s7,s10,s7
|
|
addw a5,a5,a3
|
|
li s10,-102
|
|
li a3,-39
|
|
mulw s10,s10,a7
|
|
addw a5,a5,s7
|
|
ld s7,56(sp)
|
|
mulw a3,a3,s7
|
|
lw s7,116(sp)
|
|
addw a5,a5,s10
|
|
li s10,46
|
|
addw a5,a5,s7
|
|
li s7,77
|
|
mulw s10,s10,t6
|
|
addw a5,a5,a3
|
|
addw a5,a5,s6
|
|
lw a3,160(sp)
|
|
addw a5,a5,s5
|
|
addw a5,a5,s4
|
|
addw a5,a5,a3
|
|
addw a5,a5,s3
|
|
subw a5,a5,s9
|
|
addw a5,a5,s8
|
|
addw a5,a5,s10
|
|
mulw s7,a4,s7
|
|
mv s9,a5
|
|
bge a5,zero,.L8
|
|
li s9,0
|
|
li a5,0
|
|
.L8:
|
|
li a4,127
|
|
ble a5,a4,.L9
|
|
li s9,127
|
|
.L9:
|
|
lw a4,168(sp)
|
|
ld a3,72(sp)
|
|
li a5,26
|
|
li s8,76
|
|
mulw s8,s8,s1
|
|
addw s4,a4,a3
|
|
lw a4,180(sp)
|
|
ld s11,40(sp)
|
|
li s10,-95
|
|
addw s3,a4,a6
|
|
slliw a4,s3,2
|
|
sw a4,160(sp)
|
|
ld s3,24(sp)
|
|
ld a4,32(sp)
|
|
mulw a5,a5,t4
|
|
slliw s5,s0,3
|
|
slliw a3,a4,4
|
|
addw a3,a3,a4
|
|
slliw a4,s11,4
|
|
addw a4,a4,s11
|
|
ld s11,88(sp)
|
|
subw s5,s5,s0
|
|
slliw s5,s5,2
|
|
addw s5,s5,s0
|
|
mulw s10,s10,s3
|
|
addw a5,a5,s8
|
|
lw s8,124(sp)
|
|
slliw s4,s4,5
|
|
slliw s6,t2,2
|
|
addw a5,a5,s8
|
|
li s8,52
|
|
addw a5,a5,s5
|
|
addw s6,s6,t2
|
|
slliw a3,a3,1
|
|
mulw s8,s8,s11
|
|
addw a5,a5,s10
|
|
addw a5,a5,s4
|
|
mv s3,a5
|
|
ld a5,48(sp)
|
|
li s10,102
|
|
slliw a4,a4,1
|
|
lw s4,100(sp)
|
|
slliw s5,s2,1
|
|
addw s5,s5,s2
|
|
mulw s10,s10,a5
|
|
addw a5,s3,s8
|
|
lw s3,160(sp)
|
|
slliw s5,s5,1
|
|
subw s4,s4,a7
|
|
subw a5,a5,s3
|
|
subw a5,a5,s6
|
|
addw a5,a5,a3
|
|
subw a5,a5,a4
|
|
ld a4,8(sp)
|
|
li s6,-38
|
|
addw a5,a5,s10
|
|
mulw s6,s6,a4
|
|
addw a5,a5,s5
|
|
subw a0,t5,a0
|
|
slliw s4,s4,2
|
|
slliw a3,a0,1
|
|
subw s4,s4,a7
|
|
ld a0,80(sp)
|
|
slliw a4,s9,2
|
|
li s10,110
|
|
slliw s11,t3,2
|
|
addw a5,a5,s6
|
|
addw a5,a5,s4
|
|
ld s4,56(sp)
|
|
mulw s10,s10,a0
|
|
addw a0,a4,s9
|
|
li a4,116
|
|
addw s3,s11,t3
|
|
slliw s3,s3,3
|
|
subw s3,s3,t3
|
|
slliw s8,a1,6
|
|
subw s8,a1,s8
|
|
slliw s5,a2,4
|
|
subw s5,s5,a2
|
|
mulw a4,a4,s4
|
|
li s4,-99
|
|
addw a5,a5,s10
|
|
slliw s5,s5,3
|
|
slliw a0,a0,3
|
|
subw a0,a0,s9
|
|
sw s11,168(sp)
|
|
addw a0,s7,a0
|
|
mulw s4,s4,t0
|
|
addw a5,a5,a4
|
|
addw a5,a5,s3
|
|
ld s3,16(sp)
|
|
li a4,-39
|
|
addw a5,a5,s8
|
|
mulw a4,a4,s3
|
|
lw s3,128(sp)
|
|
addw a5,a5,s4
|
|
addw a5,a5,s3
|
|
li s3,94
|
|
addw a5,a5,s5
|
|
mulw s3,s3,t6
|
|
addw a5,a5,a4
|
|
addw a5,a5,a3
|
|
addw a5,a5,s3
|
|
mv a3,a5
|
|
bge a5,zero,.L10
|
|
li a3,0
|
|
li a5,0
|
|
.L10:
|
|
li a4,127
|
|
ble a5,a4,.L11
|
|
li a3,127
|
|
.L11:
|
|
li s5,-23
|
|
mulw a4,s5,t4
|
|
lw s3,164(sp)
|
|
ld s9,72(sp)
|
|
slliw a5,t1,1
|
|
li s7,50
|
|
addw a5,a5,t1
|
|
subw s6,s1,s3
|
|
slliw s8,s9,2
|
|
slliw a5,a5,4
|
|
addw a5,a5,t1
|
|
mulw s7,s7,s0
|
|
addw a4,a4,s6
|
|
addw s6,s8,s9
|
|
addw a4,a4,a5
|
|
slliw a5,s6,4
|
|
addw s6,s6,a5
|
|
sw s8,180(sp)
|
|
ld a5,88(sp)
|
|
lw s8,188(sp)
|
|
ld s10,24(sp)
|
|
li s4,-117
|
|
subw a5,a5,s8
|
|
ld s8,32(sp)
|
|
slliw s3,s10,3
|
|
addw s3,s3,s10
|
|
mulw s8,s4,s8
|
|
slliw s3,s3,3
|
|
addw a4,a4,s7
|
|
addw a4,a4,s3
|
|
addw a4,a4,s6
|
|
slliw a5,a5,1
|
|
addw a5,a4,a5
|
|
ld a4,8(sp)
|
|
slliw s3,a6,1
|
|
li s6,110
|
|
mulw s6,s6,a4
|
|
ld s7,40(sp)
|
|
lw a4,132(sp)
|
|
addw s3,s3,a6
|
|
slliw s3,s3,2
|
|
addw a5,a5,s3
|
|
addw a5,a5,a4
|
|
slliw s3,s7,6
|
|
addw a5,a5,s8
|
|
addw s7,s3,s7
|
|
subw s7,a5,s7
|
|
slliw a4,s2,5
|
|
lw a5,112(sp)
|
|
subw a4,a4,s2
|
|
slliw a4,a4,2
|
|
addw s7,s7,a5
|
|
addw a5,a4,s2
|
|
ld s8,80(sp)
|
|
addw a5,s7,a5
|
|
slliw s7,a7,5
|
|
addw a5,a5,s6
|
|
subw s6,a7,s7
|
|
ld s7,56(sp)
|
|
sw s3,160(sp)
|
|
li s3,-123
|
|
mulw s3,s3,s8
|
|
li a4,83
|
|
addw a5,a5,s6
|
|
slliw s6,a2,5
|
|
mulw a4,a4,s7
|
|
lw s7,200(sp)
|
|
addw a5,a5,s3
|
|
lw s3,192(sp)
|
|
addw s8,s7,t5
|
|
li s7,122
|
|
addw s3,s3,a1
|
|
slliw s3,s3,2
|
|
subw s3,s3,a1
|
|
slliw s8,s8,5
|
|
addw a5,a5,a4
|
|
slliw a4,a3,7
|
|
subw a4,a4,a3
|
|
ld a3,64(sp)
|
|
mulw s7,s7,t3
|
|
addw a0,a0,a4
|
|
li a4,-47
|
|
subw s8,s8,t5
|
|
mulw a4,a4,a3
|
|
ld a3,16(sp)
|
|
addw a5,a5,s7
|
|
addw a5,a5,s3
|
|
mulw s5,s5,t0
|
|
mulw s4,s4,a3
|
|
li a3,118
|
|
addw a5,a5,s5
|
|
addw a5,a5,a4
|
|
subw a5,a5,s6
|
|
mulw a3,a3,t6
|
|
addw a5,a5,s4
|
|
addw a5,a5,s8
|
|
addw a5,a5,a3
|
|
mv a4,a5
|
|
bge a5,zero,.L12
|
|
li a4,0
|
|
li a5,0
|
|
.L12:
|
|
li a3,127
|
|
ble a5,a3,.L13
|
|
li a4,127
|
|
.L13:
|
|
lw a5,136(sp)
|
|
slliw s4,t4,3
|
|
lw a3,156(sp)
|
|
addw s4,s4,a5
|
|
ld a5,72(sp)
|
|
li s3,-104
|
|
mulw s3,s3,t1
|
|
subw a3,a5,a3
|
|
lw a5,104(sp)
|
|
ld s5,32(sp)
|
|
li s9,-116
|
|
slliw s7,a5,4
|
|
li a5,101
|
|
ld s10,56(sp)
|
|
mulw a5,a5,s0
|
|
addw s4,s4,s3
|
|
slliw s3,s5,2
|
|
sw s3,188(sp)
|
|
addw s3,s3,s5
|
|
slliw s8,s3,4
|
|
subw s8,s8,s3
|
|
ld s3,24(sp)
|
|
ld s5,40(sp)
|
|
addw s4,s4,a5
|
|
ld a5,48(sp)
|
|
mulw s9,s9,s3
|
|
slliw s6,s5,5
|
|
slliw s3,a5,2
|
|
subw s3,a5,s3
|
|
slliw a5,a7,4
|
|
addw s6,s6,s5
|
|
sw a5,192(sp)
|
|
subw s5,a5,a7
|
|
li a5,-70
|
|
slliw s6,s6,1
|
|
mulw a5,a5,a6
|
|
addw s4,s4,s9
|
|
addw a3,s4,a3
|
|
addw a3,a3,s7
|
|
ld s7,80(sp)
|
|
slliw s3,s3,5
|
|
slliw s5,s5,2
|
|
slliw s4,s7,1
|
|
addw s9,s4,s7
|
|
sw s4,164(sp)
|
|
addw a3,a3,a5
|
|
lw a5,132(sp)
|
|
slliw s4,s10,2
|
|
li s7,-101
|
|
addw a3,a3,a5
|
|
addw a3,a3,s8
|
|
ld s8,8(sp)
|
|
addw s4,s4,s10
|
|
mulw s7,s7,s2
|
|
li s10,-114
|
|
addw a5,a3,s6
|
|
addw a5,a5,s3
|
|
subw s5,s5,a7
|
|
slliw s9,s9,2
|
|
ld s6,64(sp)
|
|
slliw a3,a2,2
|
|
addw a3,a3,a2
|
|
slliw s3,s6,4
|
|
mulw s10,s10,s8
|
|
addw a5,a5,s7
|
|
li s8,-95
|
|
subw s3,s3,s6
|
|
ld s6,16(sp)
|
|
slliw a3,a3,4
|
|
subw a3,a3,a2
|
|
slliw s7,s6,1
|
|
addw s7,s7,s6
|
|
slliw s6,t6,5
|
|
addw a5,a5,s10
|
|
addw a5,a5,s5
|
|
addw a5,a5,s9
|
|
addw a5,a5,s4
|
|
mulw s8,s8,t3
|
|
li s4,116
|
|
li s5,-93
|
|
sw s6,200(sp)
|
|
subw s6,t6,s6
|
|
slliw s6,s6,2
|
|
mulw s4,s4,a1
|
|
addw a5,a5,s8
|
|
mulw s5,s5,t0
|
|
addw a5,a5,s4
|
|
li s4,-106
|
|
mulw s4,a4,s4
|
|
addw a5,a5,s5
|
|
lw a4,140(sp)
|
|
addw a5,a5,s3
|
|
addw a5,a5,a3
|
|
addw a5,a5,s7
|
|
addw a4,a5,a4
|
|
addw a5,a4,s6
|
|
mv a4,a5
|
|
addw a0,a0,s4
|
|
bge a5,zero,.L14
|
|
li a4,0
|
|
li a5,0
|
|
.L14:
|
|
li a3,127
|
|
ble a5,a3,.L15
|
|
li a4,127
|
|
.L15:
|
|
li a3,-102
|
|
mulw a3,a3,t1
|
|
lw a5,176(sp)
|
|
li s4,-74
|
|
ld s7,24(sp)
|
|
addw s6,a5,t4
|
|
slliw a5,s1,4
|
|
slliw s3,s7,4
|
|
slliw s6,s6,4
|
|
addw a5,a5,s1
|
|
addw s6,s6,t4
|
|
mulw s4,s4,s0
|
|
subw s3,s3,s7
|
|
slliw a5,a5,2
|
|
addw a5,s6,a5
|
|
slliw s3,s3,3
|
|
mv s6,s7
|
|
addw s3,s3,s6
|
|
ld s7,88(sp)
|
|
li s6,101
|
|
addw a5,a5,a3
|
|
mulw s6,s6,a6
|
|
slliw a3,s7,3
|
|
addw a5,a5,s4
|
|
subw a3,a3,s7
|
|
mv s4,s7
|
|
lw s7,144(sp)
|
|
addw a5,a5,s3
|
|
slliw a3,a3,3
|
|
subw a3,a3,s4
|
|
addw a5,a5,s7
|
|
slliw s3,t2,3
|
|
addw a5,a5,a3
|
|
ld a3,48(sp)
|
|
sw s3,112(sp)
|
|
subw s3,t2,s3
|
|
li s5,114
|
|
slliw s3,s3,1
|
|
mulw a3,s5,a3
|
|
addw a5,a5,s6
|
|
addw s3,s3,t2
|
|
addw a5,a5,s3
|
|
lw s3,148(sp)
|
|
ld s4,56(sp)
|
|
li s10,-21
|
|
addw a5,a5,s3
|
|
lw s3,160(sp)
|
|
slliw s11,a4,2
|
|
subw a4,a4,s11
|
|
addw a5,a5,s3
|
|
li s3,38
|
|
mulw s3,s3,s2
|
|
addw a5,a5,a3
|
|
lw a3,100(sp)
|
|
addw a4,a0,a4
|
|
li a0,-50
|
|
subw s9,a3,a7
|
|
slliw a3,s4,3
|
|
subw s8,a3,s4
|
|
lw s4,168(sp)
|
|
slliw s9,s9,4
|
|
addw a5,a5,s3
|
|
addw s7,s4,t3
|
|
ld s4,8(sp)
|
|
sw a5,132(sp)
|
|
ld a5,80(sp)
|
|
mulw s10,s10,s4
|
|
ld s3,64(sp)
|
|
slliw s8,s8,4
|
|
slliw s7,s7,1
|
|
slliw s4,s3,3
|
|
slliw s6,a1,4
|
|
subw s4,s3,s4
|
|
slliw s4,s4,4
|
|
slliw s3,t6,3
|
|
addw s3,s3,t6
|
|
mulw s5,s5,a5
|
|
lw a5,132(sp)
|
|
slliw s3,s3,3
|
|
addw a5,a5,s10
|
|
addw a5,a5,s9
|
|
mulw a0,a0,t0
|
|
addw a5,a5,s5
|
|
addw a5,a5,s8
|
|
subw a5,a5,s7
|
|
subw a5,a5,s6
|
|
li s5,-116
|
|
addw a5,a5,a0
|
|
addw a5,a5,s4
|
|
ld s4,16(sp)
|
|
mulw s5,s5,a2
|
|
li a0,-54
|
|
mulw a0,a0,s4
|
|
li s4,82
|
|
addw a5,a5,s5
|
|
mulw s4,s4,t5
|
|
addw a5,a5,a0
|
|
addw a5,a5,s4
|
|
subw a0,a5,s3
|
|
mv a5,a0
|
|
bge a0,zero,.L16
|
|
li a5,0
|
|
li a0,0
|
|
.L16:
|
|
li s3,127
|
|
ble a0,s3,.L17
|
|
li a5,127
|
|
.L17:
|
|
li s5,-77
|
|
mulw s5,s5,s1
|
|
li s7,-90
|
|
slliw s9,t4,4
|
|
slliw s4,t1,5
|
|
ld s6,24(sp)
|
|
subw a0,s9,t4
|
|
addw s4,s4,t1
|
|
slliw s4,s4,1
|
|
slliw s3,s6,2
|
|
subw s3,s6,s3
|
|
mulw s7,s7,s0
|
|
addw a0,a0,s5
|
|
addw a0,a0,s4
|
|
lw s5,184(sp)
|
|
ld s4,72(sp)
|
|
slliw s3,s3,1
|
|
ld s8,32(sp)
|
|
subw s4,s4,s5
|
|
slliw s4,s4,1
|
|
slliw s5,a6,2
|
|
addw a0,a0,s7
|
|
addw a0,a0,s3
|
|
addw s3,a0,s4
|
|
lw a0,104(sp)
|
|
ld s4,40(sp)
|
|
li s6,-110
|
|
slliw a0,a0,3
|
|
mulw s6,s6,s8
|
|
addw a0,s3,a0
|
|
mv s11,s5
|
|
li s3,-95
|
|
addw s5,s5,a6
|
|
slliw s5,s5,4
|
|
addw s5,s5,a6
|
|
addw a0,a0,s5
|
|
ld s5,48(sp)
|
|
slliw s7,t2,1
|
|
mulw s3,s3,s4
|
|
slliw s4,s5,4
|
|
subw s4,s4,s5
|
|
slliw s4,s4,2
|
|
subw s4,s4,s5
|
|
addw a0,a0,s7
|
|
ld s5,8(sp)
|
|
sw s7,132(sp)
|
|
li s7,52
|
|
addw a0,a0,s6
|
|
mulw s7,s7,s2
|
|
addw a0,a0,s3
|
|
addw a0,a0,s4
|
|
slliw s4,s5,4
|
|
subw s4,s4,s5
|
|
ld s5,80(sp)
|
|
lw s3,100(sp)
|
|
slliw a5,a5,5
|
|
slliw s6,s5,5
|
|
addw s6,s6,s5
|
|
li s5,58
|
|
mulw s5,s5,t3
|
|
subw s3,s3,a7
|
|
addw a0,a0,s7
|
|
slliw s3,s3,3
|
|
subw s3,s3,a7
|
|
addw a0,a0,s4
|
|
addw a0,a0,s3
|
|
ld s3,56(sp)
|
|
slliw s4,a1,4
|
|
subw a0,a0,s6
|
|
subw a3,a3,s3
|
|
slliw a3,a3,1
|
|
addw s4,s4,a1
|
|
addw a3,a0,a3
|
|
slliw s4,s4,2
|
|
addw a3,a3,s5
|
|
subw s4,s4,a1
|
|
addw a0,a3,s4
|
|
lw a3,172(sp)
|
|
ld s7,64(sp)
|
|
li s3,86
|
|
mulw s3,s3,t0
|
|
addw s5,a3,a2
|
|
li a3,-79
|
|
ld s6,16(sp)
|
|
slliw s5,s5,4
|
|
addw a4,a4,a5
|
|
slliw s10,s6,3
|
|
subw s4,s6,s10
|
|
slliw s4,s4,1
|
|
addw s4,s4,s6
|
|
mulw a3,a3,s7
|
|
addw a0,a0,s3
|
|
lw s3,200(sp)
|
|
slliw s6,t5,4
|
|
subw s6,t5,s6
|
|
addw s3,s3,t6
|
|
slliw s3,s3,1
|
|
addw a0,a0,a3
|
|
addw a0,a0,s5
|
|
addw a0,a0,s4
|
|
addw a0,a0,s6
|
|
addw a5,a0,s3
|
|
mv a3,a5
|
|
bge a5,zero,.L18
|
|
li a3,0
|
|
li a5,0
|
|
.L18:
|
|
li a0,127
|
|
ble a5,a0,.L19
|
|
li a3,127
|
|
.L19:
|
|
ld a0,40(sp)
|
|
lw s4,136(sp)
|
|
slliw a5,t1,4
|
|
slliw s3,t4,5
|
|
addw a5,a5,t1
|
|
li s8,104
|
|
mulw s8,s8,a0
|
|
addw s3,s3,t4
|
|
slliw a5,a5,2
|
|
slliw a0,s0,4
|
|
addw s3,s3,s4
|
|
subw a5,a5,t1
|
|
subw a0,a0,s0
|
|
addw a5,s3,a5
|
|
slliw a0,a0,1
|
|
addw a5,a5,a0
|
|
lw a0,204(sp)
|
|
ld s5,72(sp)
|
|
ld s3,48(sp)
|
|
slliw a0,a0,1
|
|
addw a5,a5,a0
|
|
lw a0,156(sp)
|
|
li s4,-119
|
|
mulw s4,s4,s3
|
|
addw a0,a0,s5
|
|
addw a5,a5,a0
|
|
lw a0,108(sp)
|
|
slliw s3,a6,3
|
|
subw s7,a6,s3
|
|
subw a5,a5,a0
|
|
lw a0,112(sp)
|
|
slliw s7,s7,1
|
|
addw s7,s7,a6
|
|
addw a0,a0,t2
|
|
addw s7,a5,s7
|
|
slliw a0,a0,1
|
|
addw s7,s7,a0
|
|
lw a5,188(sp)
|
|
ld a0,32(sp)
|
|
li s6,107
|
|
mulw s6,s6,a7
|
|
addw a5,a5,a0
|
|
addw s7,s7,a5
|
|
ld a0,56(sp)
|
|
ld a5,8(sp)
|
|
addw s7,s7,s8
|
|
li s5,82
|
|
addw s7,s7,s4
|
|
lw s4,152(sp)
|
|
mv s8,a5
|
|
mulw s5,s5,a0
|
|
slliw a0,a5,3
|
|
addw a5,a0,a5
|
|
slliw a5,a5,3
|
|
addw s7,s7,s4
|
|
subw a5,a5,s8
|
|
addw a5,s7,a5
|
|
ld s8,80(sp)
|
|
lw s7,164(sp)
|
|
addw a5,a5,s6
|
|
li s4,-104
|
|
lw s6,168(sp)
|
|
mulw s4,s4,a1
|
|
addw s7,s7,s8
|
|
slliw s7,s7,3
|
|
addw a5,a5,s7
|
|
subw s6,t3,s6
|
|
addw a5,a5,s5
|
|
slliw s6,s6,5
|
|
li s7,-121
|
|
addw a5,a5,s6
|
|
ld s6,16(sp)
|
|
mulw s7,s7,t0
|
|
li s5,83
|
|
addw a5,a5,s4
|
|
lw s4,172(sp)
|
|
addw s4,s4,a2
|
|
slliw s4,s4,5
|
|
addw s4,s4,a2
|
|
mulw s5,s5,s6
|
|
lw s6,128(sp)
|
|
addw a5,a5,s7
|
|
addw a5,a5,s6
|
|
li s6,46
|
|
addw a5,a5,s4
|
|
li s4,-84
|
|
mulw s6,s6,t5
|
|
addw a5,a5,s5
|
|
li s5,-95
|
|
mulw s4,s4,t6
|
|
addw a5,a5,s6
|
|
mulw a3,a3,s5
|
|
addw s4,a5,s4
|
|
mv a5,s4
|
|
addw a3,a4,a3
|
|
bge s4,zero,.L20
|
|
li a5,0
|
|
li s4,0
|
|
.L20:
|
|
li a4,127
|
|
ble s4,a4,.L21
|
|
li a5,127
|
|
.L21:
|
|
subw s5,t4,s9
|
|
slliw s5,s5,1
|
|
slliw a4,s1,3
|
|
addw s5,s5,t4
|
|
subw a4,a4,s1
|
|
addw a4,s5,a4
|
|
li s4,38
|
|
ld s5,24(sp)
|
|
mulw s4,s4,s0
|
|
li s6,-90
|
|
addw s3,s3,a6
|
|
ld s8,48(sp)
|
|
slliw s3,s3,2
|
|
addw s3,s3,a6
|
|
mulw s6,s6,s5
|
|
lw s5,124(sp)
|
|
addw a4,a4,s5
|
|
addw a4,a4,s4
|
|
lw s4,104(sp)
|
|
slliw s7,s4,5
|
|
addw a4,a4,s6
|
|
lw s6,144(sp)
|
|
lw s4,112(sp)
|
|
addw a4,a4,s6
|
|
addw s5,s4,t2
|
|
addw a4,a4,s7
|
|
addw a4,a4,s3
|
|
slliw s5,s5,2
|
|
li s4,-46
|
|
mulw s4,s4,s8
|
|
addw a4,a4,s5
|
|
li s5,-70
|
|
ld s6,40(sp)
|
|
lw s3,160(sp)
|
|
subw s3,s6,s3
|
|
slliw s3,s3,1
|
|
addw s3,s3,s6
|
|
mulw s5,s5,s2
|
|
lw s2,148(sp)
|
|
addw a4,a4,s2
|
|
li s2,-73
|
|
addw s3,a4,s3
|
|
ld a4,8(sp)
|
|
addw s3,s3,s4
|
|
li s4,-77
|
|
mulw s2,s2,a7
|
|
addw s3,s3,s5
|
|
addw a0,a0,a4
|
|
li s5,-75
|
|
slliw a0,a0,2
|
|
addw a0,a0,a4
|
|
addw a4,s3,a0
|
|
slliw s3,a1,3
|
|
addw s3,s3,a1
|
|
slliw s3,s3,3
|
|
mulw s5,s5,t3
|
|
addw a4,a4,s2
|
|
lw s2,116(sp)
|
|
subw s3,s3,a1
|
|
slliw a0,a2,3
|
|
subw a4,a4,s2
|
|
lw s2,120(sp)
|
|
addw a0,a0,a2
|
|
slliw a0,a0,2
|
|
subw a4,a4,s2
|
|
addw a4,a4,s5
|
|
slliw s2,t5,3
|
|
mulw s4,s4,t0
|
|
subw s2,t5,s2
|
|
addw a4,a4,s3
|
|
ld s3,64(sp)
|
|
slliw s2,s2,1
|
|
addw s2,s2,t5
|
|
li t5,53
|
|
addw a0,a0,a2
|
|
mulw t5,t5,s3
|
|
addw a4,a4,s4
|
|
ld s4,16(sp)
|
|
li s3,-103
|
|
addw a4,a4,t5
|
|
mulw s3,s3,s4
|
|
addw a4,a4,a0
|
|
li a0,-114
|
|
li t5,-50
|
|
mulw a0,a0,t6
|
|
addw a4,a4,s3
|
|
addw a4,a4,s2
|
|
mulw t5,a5,t5
|
|
addw a5,a4,a0
|
|
mv a4,a5
|
|
addw t5,a3,t5
|
|
bge a5,zero,.L22
|
|
li a4,0
|
|
li a5,0
|
|
.L22:
|
|
li a3,127
|
|
ble a5,a3,.L23
|
|
li a4,127
|
|
.L23:
|
|
li a3,42
|
|
mulw a3,a3,s1
|
|
addw s9,s9,t4
|
|
slliw s9,s9,2
|
|
subw s9,s9,t4
|
|
li a0,-123
|
|
slliw a5,t1,2
|
|
addw a5,a5,t1
|
|
slliw a5,a5,3
|
|
addw a5,a5,t1
|
|
li t1,-92
|
|
mulw a0,a0,s0
|
|
addw s9,s9,a3
|
|
ld s0,72(sp)
|
|
lw a3,180(sp)
|
|
addw a5,s9,a5
|
|
addw a6,s11,a6
|
|
addw a3,a3,s0
|
|
ld s0,24(sp)
|
|
slliw a3,a3,1
|
|
li t4,-51
|
|
mulw t1,t1,s0
|
|
lw s0,132(sp)
|
|
addw a5,a5,a0
|
|
slliw a0,a6,4
|
|
addw s11,s0,t2
|
|
ld s0,88(sp)
|
|
subw a0,a0,a6
|
|
li a6,-77
|
|
slliw s11,s11,5
|
|
addw a5,a5,t1
|
|
addw a5,a5,a3
|
|
lw a3,192(sp)
|
|
mulw a6,a6,s0
|
|
ld s0,80(sp)
|
|
addw t1,a3,a7
|
|
lw a3,164(sp)
|
|
slliw t1,t1,2
|
|
subw a7,t1,a7
|
|
addw a3,a3,s0
|
|
slliw a3,a3,4
|
|
subw a3,a3,s0
|
|
ld s0,32(sp)
|
|
slliw t1,t3,4
|
|
addw t1,t1,t3
|
|
mulw t4,t4,s0
|
|
ld s0,40(sp)
|
|
li t3,109
|
|
addw a5,a5,a6
|
|
slliw a6,t6,2
|
|
addw a6,a6,t6
|
|
addw a5,a5,a0
|
|
li t6,-74
|
|
addw a5,a5,s11
|
|
slliw t1,t1,2
|
|
mulw t3,t3,s0
|
|
ld s0,16(sp)
|
|
addw a5,a5,t4
|
|
slliw t4,a6,4
|
|
addw s10,s10,s0
|
|
ld s0,48(sp)
|
|
addw a6,a6,t4
|
|
li t4,-122
|
|
lw a0,196(sp)
|
|
slliw s10,s10,2
|
|
mulw t6,t6,s0
|
|
ld s0,8(sp)
|
|
addw a5,a5,t3
|
|
li t3,22
|
|
subw a0,a0,t0
|
|
slliw a0,a0,2
|
|
addw a0,a0,t0
|
|
mulw t4,t4,s0
|
|
lw s0,152(sp)
|
|
addw a5,a5,t6
|
|
addw a5,a5,s0
|
|
ld s0,56(sp)
|
|
addw a5,a5,t4
|
|
mulw t3,t3,s0
|
|
addw a5,a5,a7
|
|
addw a5,a5,a3
|
|
li a3,38
|
|
ld s0,64(sp)
|
|
mulw a3,a3,a1
|
|
addw a5,a5,t3
|
|
subw a5,a5,t1
|
|
li a1,115
|
|
addw a5,a5,a3
|
|
mulw a1,a1,s0
|
|
li a3,-121
|
|
addw a5,a5,a0
|
|
mulw a3,a3,a2
|
|
li a2,-23
|
|
addw a5,a5,a1
|
|
mulw a4,a4,a2
|
|
addw a5,a5,a3
|
|
lw a3,140(sp)
|
|
addw a5,a5,s10
|
|
subw a5,a5,a3
|
|
addw a3,a5,a6
|
|
mv a5,a3
|
|
addw t5,t5,a4
|
|
bge a3,zero,.L24
|
|
li a5,0
|
|
li a3,0
|
|
.L24:
|
|
li a4,127
|
|
ble a3,a4,.L25
|
|
li a5,127
|
|
.L25:
|
|
li a4,46
|
|
mulw a5,a5,a4
|
|
ld s0,296(sp)
|
|
ld s1,288(sp)
|
|
ld s2,280(sp)
|
|
ld s3,272(sp)
|
|
ld s4,264(sp)
|
|
ld s5,256(sp)
|
|
ld s6,248(sp)
|
|
ld s7,240(sp)
|
|
ld s8,232(sp)
|
|
addw a0,t5,a5
|
|
ld s9,224(sp)
|
|
ld s10,216(sp)
|
|
ld s11,208(sp)
|
|
sgt a0,a0,zero
|
|
addi sp,sp,304
|
|
jr ra
|
|
.size model, .-model
|
|
.section .text.startup,"ax",@progbits
|
|
.align 1
|
|
.globl main
|
|
.type main, @function
|
|
main:
|
|
addi sp,sp,-176
|
|
sd ra,168(sp)
|
|
sd s0,160(sp)
|
|
sd s1,152(sp)
|
|
sd s2,144(sp)
|
|
sd s3,136(sp)
|
|
sd s4,128(sp)
|
|
sd s5,120(sp)
|
|
sd s6,112(sp)
|
|
call getint@plt
|
|
ble a0,zero,.L29
|
|
mv s5,a0
|
|
addi s6,sp,8
|
|
addi s4,sp,108
|
|
li s2,5
|
|
.L28:
|
|
mv s3,s6
|
|
.L34:
|
|
mv s1,s3
|
|
li s0,0
|
|
.L30:
|
|
call getint@plt
|
|
sw a0,0(s1)
|
|
addiw s0,s0,1
|
|
addi s1,s1,4
|
|
bne s0,s2,.L30
|
|
addi s3,s3,20
|
|
bne s3,s4,.L34
|
|
mv a0,s6
|
|
call model
|
|
beq a0,zero,.L32
|
|
li a0,99
|
|
call putch@plt
|
|
li a0,97
|
|
call putch@plt
|
|
li a0,116
|
|
call putch@plt
|
|
li a0,10
|
|
call putch@plt
|
|
.L33:
|
|
addiw s5,s5,-1
|
|
bne s5,zero,.L28
|
|
.L29:
|
|
ld ra,168(sp)
|
|
ld s0,160(sp)
|
|
ld s1,152(sp)
|
|
ld s2,144(sp)
|
|
ld s3,136(sp)
|
|
ld s4,128(sp)
|
|
ld s5,120(sp)
|
|
ld s6,112(sp)
|
|
li a0,0
|
|
addi sp,sp,176
|
|
jr ra
|
|
.L32:
|
|
li a0,100
|
|
call putch@plt
|
|
li a0,111
|
|
call putch@plt
|
|
li a0,103
|
|
call putch@plt
|
|
li a0,10
|
|
call putch@plt
|
|
j .L33
|
|
.size main, .-main
|
|
.globl _sysy_idx
|
|
.globl _sysy_us
|
|
.globl _sysy_s
|
|
.globl _sysy_m
|
|
.globl _sysy_h
|
|
.globl _sysy_l2
|
|
.globl _sysy_l1
|
|
.globl _sysy_end
|
|
.globl _sysy_start
|
|
.bss
|
|
.align 3
|
|
.type _sysy_idx, @object
|
|
.size _sysy_idx, 4
|
|
_sysy_idx:
|
|
.zero 4
|
|
.zero 4
|
|
.type _sysy_us, @object
|
|
.size _sysy_us, 4096
|
|
_sysy_us:
|
|
.zero 4096
|
|
.type _sysy_s, @object
|
|
.size _sysy_s, 4096
|
|
_sysy_s:
|
|
.zero 4096
|
|
.type _sysy_m, @object
|
|
.size _sysy_m, 4096
|
|
_sysy_m:
|
|
.zero 4096
|
|
.type _sysy_h, @object
|
|
.size _sysy_h, 4096
|
|
_sysy_h:
|
|
.zero 4096
|
|
.type _sysy_l2, @object
|
|
.size _sysy_l2, 4096
|
|
_sysy_l2:
|
|
.zero 4096
|
|
.type _sysy_l1, @object
|
|
.size _sysy_l1, 4096
|
|
_sysy_l1:
|
|
.zero 4096
|
|
.type _sysy_end, @object
|
|
.size _sysy_end, 16
|
|
_sysy_end:
|
|
.zero 16
|
|
.type _sysy_start, @object
|
|
.size _sysy_start, 16
|
|
_sysy_start:
|
|
.zero 16
|
|
.ident "GCC: (Debian 12.2.0-13) 12.2.0"
|
|
.section .note.GNU-stack,"",@progbits
|