You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

724 lines
11 KiB

.align 2
.section .data
n:
.word 0
.section .text
.global __aeabi_memclr4
__aeabi_memclr4:
.L1:
MV t5, a0
MV t6, a1
ADD t6, a0, t6
LI a0, 0
.L2:
SW zero, (t5)
ADDI t5, t5, 4
BLT t5, t6, .L2
RET
.global main
main:
.L3:
LI t6, -1360
ADD sp, sp, t6
SD fp, 32(sp)
LI t6, 1360
ADD fp, sp, t6
LI t6, -1336
ADD t6, t6, fp
SD ra, (t6)
LI t6, -1344
ADD t6, t6, fp
SD s2, (t6)
LI t6, -1352
ADD t6, t6, fp
SD s3, (t6)
LI t6, -1360
ADD t6, t6, fp
SD s4, (t6)
.L4:
ADDI sp, sp, -8
CALL getint
ADDI sp, sp, 8
SW a0, -8(fp)
LW s2, -8(fp)
LI t6, -1072
ADD t6, t6, fp
SW s2, (t6)
SW s2, -8(fp)
J .L5
.L6:
LI t6, -1320
ADD t6, t6, fp
LW s2, (t6)
SW s2, -24(fp)
LW a0, -24(fp)
LI t6, -1360
ADD t6, t6, fp
LD s4, (t6)
LI t6, -1352
ADD t6, t6, fp
LD s3, (t6)
LI t6, -1344
ADD t6, t6, fp
LD s2, (t6)
LI t6, -1336
ADD t6, t6, fp
LD ra, (t6)
LI t6, -1328
ADD t6, t6, fp
LD fp, (t6)
LI t6, 1360
ADD sp, sp, t6
RET
.L5:
LI t6, -1072
ADD t6, t6, fp
LW s2, (t6)
LI s3, 5
SUB t6, s2, s3
SEQZ s4, t6
SW s2, -40(fp)
SW s4, -48(fp)
SW a0, -24(fp)
LW s2, -48(fp)
BGTZ s2, .L7
J .L8
.L7:
LI t6, -1072
ADD t6, t6, fp
LW s3, (t6)
LI s4, 1
SW s2, -48(fp)
ADDW s2, s3, s4
LI t6, -1072
ADD t6, t6, fp
SW s2, (t6)
SW s2, -64(fp)
SW s3, -56(fp)
J .L5
.L8:
LI t0, 0
LI t6, -1312
ADD t6, t6, fp
SW t0, (t6)
LI t6, -1312
ADD t6, t6, fp
LW s2, (t6)
LI s3, 1
ADDW s4, s2, s3
LI t6, -1304
ADD t6, t6, fp
SW s4, (t6)
SW s2, -80(fp)
LI t6, -1304
ADD t6, t6, fp
LW s2, (t6)
LI s3, 1
SW s4, -88(fp)
ADDW s4, s2, s3
LI t6, -1296
ADD t6, t6, fp
SW s4, (t6)
SW s2, -104(fp)
LI t6, -1296
ADD t6, t6, fp
LW s2, (t6)
LI s3, 1
SW s4, -112(fp)
ADDW s4, s2, s3
LI t6, -1288
ADD t6, t6, fp
SW s4, (t6)
SW s2, -128(fp)
LI t6, -1288
ADD t6, t6, fp
LW s2, (t6)
LI s3, 1
SW s4, -136(fp)
ADDW s4, s2, s3
LI t6, -1280
ADD t6, t6, fp
SW s4, (t6)
SW s2, -152(fp)
LI t6, -1280
ADD t6, t6, fp
LW s2, (t6)
LI s3, 1
SW s4, -160(fp)
ADDW s4, s2, s3
LI t6, -1272
ADD t6, t6, fp
SW s4, (t6)
SW s2, -176(fp)
LI t6, -1272
ADD t6, t6, fp
LW s2, (t6)
LI s3, 1
SW s4, -184(fp)
ADDW s4, s2, s3
LI t6, -1264
ADD t6, t6, fp
SW s4, (t6)
SW s2, -200(fp)
LI t6, -1264
ADD t6, t6, fp
LW s2, (t6)
LI s3, 1
SW s4, -208(fp)
ADDW s4, s2, s3
LI t6, -1256
ADD t6, t6, fp
SW s4, (t6)
SW s2, -224(fp)
LI t6, -1256
ADD t6, t6, fp
LW s2, (t6)
LI s3, 1
SW s4, -232(fp)
ADDW s4, s2, s3
LI t6, -1248
ADD t6, t6, fp
SW s4, (t6)
SW s2, -248(fp)
LI t6, -1248
ADD t6, t6, fp
LW s2, (t6)
LI s3, 1
SW s4, -256(fp)
ADDW s4, s2, s3
LI t6, -1240
ADD t6, t6, fp
SW s4, (t6)
SW s2, -272(fp)
LI t6, -1240
ADD t6, t6, fp
LW s2, (t6)
LI s3, 1
SW s4, -280(fp)
ADDW s4, s2, s3
LI t6, -1232
ADD t6, t6, fp
SW s4, (t6)
SW s2, -296(fp)
LI t6, -1232
ADD t6, t6, fp
LW s2, (t6)
LI s3, 1
SW s4, -304(fp)
ADDW s4, s2, s3
LI t6, -1224
ADD t6, t6, fp
SW s4, (t6)
SW s2, -320(fp)
LI t6, -1224
ADD t6, t6, fp
LW s2, (t6)
LI s3, 1
SW s4, -328(fp)
ADDW s4, s2, s3
LI t6, -1216
ADD t6, t6, fp
SW s4, (t6)
SW s2, -344(fp)
LI t6, -1216
ADD t6, t6, fp
LW s2, (t6)
LI s3, 1
SW s4, -352(fp)
ADDW s4, s2, s3
LI t6, -1208
ADD t6, t6, fp
SW s4, (t6)
SW s2, -368(fp)
LI t6, -1208
ADD t6, t6, fp
LW s2, (t6)
LI s3, 1
SW s4, -376(fp)
ADDW s4, s2, s3
LI t6, -1200
ADD t6, t6, fp
SW s4, (t6)
SW s2, -392(fp)
LI t6, -1200
ADD t6, t6, fp
LW s2, (t6)
LI s3, 1
SW s4, -400(fp)
ADDW s4, s2, s3
LI t6, -1192
ADD t6, t6, fp
SW s4, (t6)
SW s2, -416(fp)
LI t6, -1192
ADD t6, t6, fp
LW s2, (t6)
LI s3, 1
SW s4, -424(fp)
ADDW s4, s2, s3
LI t6, -1184
ADD t6, t6, fp
SW s4, (t6)
SW s2, -440(fp)
LI t6, -1184
ADD t6, t6, fp
LW s2, (t6)
LI s3, 1
SW s4, -448(fp)
ADDW s4, s2, s3
LI t6, -1176
ADD t6, t6, fp
SW s4, (t6)
SW s2, -464(fp)
LI t6, -1176
ADD t6, t6, fp
LW s2, (t6)
LI s3, 1
SW s4, -472(fp)
ADDW s4, s2, s3
LI t6, -1168
ADD t6, t6, fp
SW s4, (t6)
SW s2, -488(fp)
LI t6, -1168
ADD t6, t6, fp
LW s2, (t6)
LI s3, 1
SW s4, -496(fp)
ADDW s4, s2, s3
LI t6, -1160
ADD t6, t6, fp
SW s4, (t6)
SW s2, -512(fp)
LI t6, -1160
ADD t6, t6, fp
LW s2, (t6)
LI s3, 1
SW s4, -520(fp)
ADDW s4, s2, s3
LI t6, -1152
ADD t6, t6, fp
SW s4, (t6)
SW s2, -536(fp)
LI t6, -1152
ADD t6, t6, fp
LW s2, (t6)
LI s3, 1
SW s4, -544(fp)
ADDW s4, s2, s3
LI t6, -1144
ADD t6, t6, fp
SW s4, (t6)
SW s2, -560(fp)
LI t6, -1144
ADD t6, t6, fp
LW s2, (t6)
LI s3, 1
SW s4, -568(fp)
ADDW s4, s2, s3
LI t6, -1136
ADD t6, t6, fp
SW s4, (t6)
SW s2, -584(fp)
LI t6, -1136
ADD t6, t6, fp
LW s2, (t6)
LI s3, 1
SW s4, -592(fp)
ADDW s4, s2, s3
LI t6, -1128
ADD t6, t6, fp
SW s4, (t6)
SW s2, -608(fp)
LI t6, -1128
ADD t6, t6, fp
LW s2, (t6)
LI s3, 1
SW s4, -616(fp)
ADDW s4, s2, s3
LI t6, -1120
ADD t6, t6, fp
SW s4, (t6)
SW s2, -632(fp)
LI t6, -1120
ADD t6, t6, fp
LW s2, (t6)
LI s3, 1
SW s4, -640(fp)
ADDW s4, s2, s3
LI t6, -1112
ADD t6, t6, fp
SW s4, (t6)
SW s2, -656(fp)
LI t6, -1112
ADD t6, t6, fp
LW s2, (t6)
LI s3, 1
SW s4, -664(fp)
ADDW s4, s2, s3
LI t6, -1104
ADD t6, t6, fp
SW s4, (t6)
SW s2, -680(fp)
LI t6, -1104
ADD t6, t6, fp
LW s2, (t6)
LI s3, 1
SW s4, -688(fp)
ADDW s4, s2, s3
LI t6, -1096
ADD t6, t6, fp
SW s4, (t6)
SW s2, -704(fp)
LI t6, -1096
ADD t6, t6, fp
LW s2, (t6)
LI s3, 1
SW s4, -712(fp)
ADDW s4, s2, s3
LI t6, -1088
ADD t6, t6, fp
SW s4, (t6)
SW s2, -728(fp)
LI t6, -1088
ADD t6, t6, fp
LW s2, (t6)
LI s3, 1
SW s4, -736(fp)
ADDW s4, s2, s3
LI t6, -1080
ADD t6, t6, fp
SW s4, (t6)
SW s2, -752(fp)
LI t6, -1312
ADD t6, t6, fp
LW s2, (t6)
ADDI sp, sp, -24
SW s2, -776(fp)
LW a0, -776(fp)
CALL putint
ADDI sp, sp, 24
LI t6, -1304
ADD t6, t6, fp
LW s2, (t6)
ADDI sp, sp, -24
SW a0, -776(fp)
SW s2, -784(fp)
LW a0, -784(fp)
CALL putint
ADDI sp, sp, 24
LI t6, -1296
ADD t6, t6, fp
LW s2, (t6)
ADDI sp, sp, -24
SW a0, -784(fp)
SW s2, -792(fp)
LW a0, -792(fp)
CALL putint
ADDI sp, sp, 24
LI t6, -1288
ADD t6, t6, fp
LW s2, (t6)
ADDI sp, sp, -24
SW a0, -792(fp)
SW s2, -800(fp)
LW a0, -800(fp)
CALL putint
ADDI sp, sp, 24
LI t6, -1280
ADD t6, t6, fp
LW s2, (t6)
ADDI sp, sp, -24
SW a0, -800(fp)
SW s2, -808(fp)
LW a0, -808(fp)
CALL putint
ADDI sp, sp, 24
LI t6, -1272
ADD t6, t6, fp
LW s2, (t6)
ADDI sp, sp, -24
SW a0, -808(fp)
SW s2, -816(fp)
LW a0, -816(fp)
CALL putint
ADDI sp, sp, 24
LI t6, -1264
ADD t6, t6, fp
LW s2, (t6)
ADDI sp, sp, -24
SW a0, -816(fp)
SW s2, -824(fp)
LW a0, -824(fp)
CALL putint
ADDI sp, sp, 24
LI t6, -1256
ADD t6, t6, fp
LW s2, (t6)
ADDI sp, sp, -24
SW a0, -824(fp)
SW s2, -832(fp)
LW a0, -832(fp)
CALL putint
ADDI sp, sp, 24
LI t6, -1248
ADD t6, t6, fp
LW s2, (t6)
ADDI sp, sp, -24
SW a0, -832(fp)
SW s2, -840(fp)
LW a0, -840(fp)
CALL putint
ADDI sp, sp, 24
LI t6, -1240
ADD t6, t6, fp
LW s2, (t6)
ADDI sp, sp, -24
SW a0, -840(fp)
SW s2, -848(fp)
LW a0, -848(fp)
CALL putint
ADDI sp, sp, 24
LI t6, -1232
ADD t6, t6, fp
LW s2, (t6)
ADDI sp, sp, -24
SW a0, -848(fp)
SW s2, -856(fp)
LW a0, -856(fp)
CALL putint
ADDI sp, sp, 24
LI t6, -1224
ADD t6, t6, fp
LW s2, (t6)
ADDI sp, sp, -24
SW a0, -856(fp)
SW s2, -864(fp)
LW a0, -864(fp)
CALL putint
ADDI sp, sp, 24
LI t6, -1216
ADD t6, t6, fp
LW s2, (t6)
ADDI sp, sp, -24
SW a0, -864(fp)
SW s2, -872(fp)
LW a0, -872(fp)
CALL putint
ADDI sp, sp, 24
LI t6, -1208
ADD t6, t6, fp
LW s2, (t6)
ADDI sp, sp, -24
SW a0, -872(fp)
SW s2, -880(fp)
LW a0, -880(fp)
CALL putint
ADDI sp, sp, 24
LI t6, -1200
ADD t6, t6, fp
LW s2, (t6)
ADDI sp, sp, -24
SW a0, -880(fp)
SW s2, -888(fp)
LW a0, -888(fp)
CALL putint
ADDI sp, sp, 24
LI t6, -1192
ADD t6, t6, fp
LW s2, (t6)
ADDI sp, sp, -24
SW a0, -888(fp)
SW s2, -896(fp)
LW a0, -896(fp)
CALL putint
ADDI sp, sp, 24
LI t6, -1184
ADD t6, t6, fp
LW s2, (t6)
ADDI sp, sp, -24
SW a0, -896(fp)
SW s2, -904(fp)
LW a0, -904(fp)
CALL putint
ADDI sp, sp, 24
LI t6, -1176
ADD t6, t6, fp
LW s2, (t6)
ADDI sp, sp, -24
SW a0, -904(fp)
SW s2, -912(fp)
LW a0, -912(fp)
CALL putint
ADDI sp, sp, 24
LI t6, -1168
ADD t6, t6, fp
LW s2, (t6)
ADDI sp, sp, -24
SW a0, -912(fp)
SW s2, -920(fp)
LW a0, -920(fp)
CALL putint
ADDI sp, sp, 24
LI t6, -1160
ADD t6, t6, fp
LW s2, (t6)
ADDI sp, sp, -24
SW a0, -920(fp)
SW s2, -928(fp)
LW a0, -928(fp)
CALL putint
ADDI sp, sp, 24
LI t6, -1152
ADD t6, t6, fp
LW s2, (t6)
ADDI sp, sp, -24
SW a0, -928(fp)
SW s2, -936(fp)
LW a0, -936(fp)
CALL putint
ADDI sp, sp, 24
LI t6, -1144
ADD t6, t6, fp
LW s2, (t6)
ADDI sp, sp, -24
SW a0, -936(fp)
SW s2, -944(fp)
LW a0, -944(fp)
CALL putint
ADDI sp, sp, 24
LI t6, -1136
ADD t6, t6, fp
LW s2, (t6)
ADDI sp, sp, -24
SW a0, -944(fp)
SW s2, -952(fp)
LW a0, -952(fp)
CALL putint
ADDI sp, sp, 24
LI t6, -1128
ADD t6, t6, fp
LW s2, (t6)
ADDI sp, sp, -24
SW a0, -952(fp)
SW s2, -960(fp)
LW a0, -960(fp)
CALL putint
ADDI sp, sp, 24
LI t6, -1120
ADD t6, t6, fp
LW s2, (t6)
ADDI sp, sp, -24
SW a0, -960(fp)
SW s2, -968(fp)
LW a0, -968(fp)
CALL putint
ADDI sp, sp, 24
LI t6, -1112
ADD t6, t6, fp
LW s2, (t6)
ADDI sp, sp, -24
SW a0, -968(fp)
SW s2, -976(fp)
LW a0, -976(fp)
CALL putint
ADDI sp, sp, 24
LI t6, -1104
ADD t6, t6, fp
LW s2, (t6)
ADDI sp, sp, -24
SW a0, -976(fp)
SW s2, -984(fp)
LW a0, -984(fp)
CALL putint
ADDI sp, sp, 24
LI t6, -1096
ADD t6, t6, fp
LW s2, (t6)
ADDI sp, sp, -24
SW a0, -984(fp)
SW s2, -992(fp)
LW a0, -992(fp)
CALL putint
ADDI sp, sp, 24
LI t6, -1088
ADD t6, t6, fp
LW s2, (t6)
ADDI sp, sp, -24
SW a0, -992(fp)
SW s2, -1000(fp)
LW a0, -1000(fp)
CALL putint
ADDI sp, sp, 24
LI t6, -1080
ADD t6, t6, fp
LW s2, (t6)
ADDI sp, sp, -24
SW a0, -1000(fp)
SW s2, -1008(fp)
LW a0, -1008(fp)
CALL putint
ADDI sp, sp, 24
LI t0, 10
LI t6, -1056
ADD t6, t6, fp
SW t0, (t6)
LI t6, -1056
ADD t6, t6, fp
LW s2, (t6)
ADDI sp, sp, -24
SW a0, -1008(fp)
LI t6, -1024
ADD t6, t6, fp
SW s2, (t6)
LI t6, -1024
ADD t6, t6, fp
LW a0, (t6)
CALL putch
ADDI sp, sp, 24
LI t6, -1072
ADD t6, t6, fp
LW s2, (t6)
ADDI sp, sp, -24
LI t6, -1024
ADD t6, t6, fp
SW a0, (t6)
LI t6, -1032
ADD t6, t6, fp
SW s2, (t6)
LI t6, -1032
ADD t6, t6, fp
LW a0, (t6)
CALL putint
ADDI sp, sp, 24
LI t6, -1056
ADD t6, t6, fp
LW s2, (t6)
ADDI sp, sp, -24
LI t6, -1032
ADD t6, t6, fp
SW a0, (t6)
LI t6, -1040
ADD t6, t6, fp
SW s2, (t6)
LI t6, -1040
ADD t6, t6, fp
LW a0, (t6)
CALL putch
ADDI sp, sp, 24
LI t6, -1112
ADD t6, t6, fp
LW s2, (t6)
LI t6, -1320
ADD t6, t6, fp
SW s2, (t6)
LI t6, -1048
ADD t6, t6, fp
SW s2, (t6)
SW s4, -760(fp)
LI t6, -1040
ADD t6, t6, fp
SW a0, (t6)
J .L6