Count Up

Submission Date: 2024/9/17 2:36:58
Status: Accepted
Author: value
Lines: 86

VSM

#
# imm i"0" $ls0
imm i"1" $ls10 $r0
imm i"2" $ls20 $r1
imm i"1024" $ls124/1000
imm i"3" $ls30
#
# imm i"1" $r0
# imm i"2" $r1
# imm i"1025" $r2
# imm i"1026" $r3
iadd $ls124 $lr0 $lr2/1000
# imm i"2049" $r4
# imm i"2050" $r5
iadd $ls124 $aluf $lr4/1000
# imm i"3073" $r6
# imm i"3074" $r7
iadd $ls124 $aluf $lr6/1000
# mabid>>1<<7 | subpeid<<1 | (mabid%2)<<3 = mabid>>1<<7 | l1bid<<4 | (mabid & 1)<<3 | subpeid<<1
# = (((mabid>>1<<3 | l1bid)<<1 | (mabid & 1))<<2 | subpeid)<<1
iand $mabid $ls10 $ls100 # tmp = mabid & 1
ilsr $mabid $ls10 $nowrite
ilsl $aluf $ls30 $nowrite
ior $l1bid $aluf $nowrite
ilsl $aluf $ls10 $nowrite
ior $ls100 $aluf $nowrite
ilsl $aluf $ls20 $nowrite
ior $subpeid $aluf $nowrite
ilsl $aluf $ls10 $ls100
# d get $ls100n0c0 1
# nop
#
iadd $aluf $lr0v $lr0v # iadd $ls100 $lr0v $lr0v
# nop
# iadd $ls200 $lr0v $lr8v
# nop
# iadd $ls200 $lr8v $lr16v
# nop
# iadd $ls200 $lr16v $lr24v
# nop
# iadd $ls200 $lr24v $lr32v
# nop
# iadd $ls200 $lr32v $lr40v
# nop
# iadd $ls200 $lr40v $lr48v
# nop
# iadd $ls200 $lr48v $lr56v
# PE 1 L1B 64 PE
# L1BM 64 4 WR / 256 WW$lb[0:2048]
# i L1B j, MAB k(0..15), PE l(0..3) 1..2 + 2l + 8k + 128j + 1024i
# l2bmd 8
l1bmd $aluf $lb0 #l1bmd $lr0v $lb0 # lb[0:8]b0=1..16, lb[0:8]b1=17..32, ..., lb[0:8]b7=112..128, lb[8:16]b0=129..137
#l1bmd $lr8v $lb256 # $lr[z]b[b]m[m]p[p] =
#l1bmd $lr16v $lb512 # $lb = [[[lr0 pe0,pe1,pe2,pe3]@m0, [....]@m1, ..., [....]@m15], [[lr2 pe0,...]@m0, ...], _, _]*8
#l1bmd $lr24v $lb768 # $lb[8i:9i]@j = 1..16 + 16j + 128i
#l1bmd $lr32v $lb1024 # $lb[0:8]@0 = 1..16, $lb[8:16]@j = 1..16 + 16j + 128
#l1bmd $lr40v $lb1280 # 16j + [1, 2, ..., 16, 129, 130, ..., 256, ...]
#l1bmd $lr48v $lb1536 # 8 l1b LW 128 -> 2 MAB 128 MAB
#l1bmd $lr56v $lb1792
nop
#
imm i"4096" $ls200
# L1BM 8 / L2BM 64/
# 1 32 256
# 1..512 ~ [1..128, 129..256, _..382, _..512] ~ [[1..16@0, ..32@1, ..., 112..128@7], _, _, _]
# i L1B j(0..7) lb[8i:9i]@j = 1..16 + 16j + 128i
# lc = [[lb[0:8]@0, lb[0:8]@1, ..., lb[0:8]@7], [lb[8:16]@0, ...], ...]
# $lb[x]@y := 1..2 + 2(x/8*128 + x%8 + 8y)
# 1 L1B 16
l2bmd $lb0 $lc0
l2bmd $lb32 $lc256
l2bmd $lb64 $lc512
l2bmd $lb96 $lc768; iadd $ls200 $lr0v $lr8v # Use $lr0v.
l2bmd $lb128 $lc1024
l2bmd $lb160 $lc1280; l1bmd $lr8v $lb256; iadd $ls200 $lr8v $lr16v # Use.
l2bmd $lb192 $lc1536
l2bmd $lb224 $lc1792
l2bmd $lb256 $lc2048 # Use.
l2bmd $lb288 $lc2304
l2bmd $lb320 $lc2560
l2bmd $lb352 $lc2816
l2bmd $lb384 $lc3072
l2bmd $lb416 $lc3328; l1bmd $lr16v $lb512; iadd $ls200 $lr16v $lr24v # Use.
l2bmd $lb448 $lc3584
l2bmd $lb480 $lc3840
l2bmd $lb512 $lc4096 # Use.
l2bmd $lb544 $lc4352
l2bmd $lb576 $lc4608
l2bmd $lb608 $lc4864
l2bmd $lb640 $lc5120
l2bmd $lb672 $lc5376; l1bmd $lr24v $lb768; iadd $ls200 $lr24v $lr32v # Use.
l2bmd $lb704 $lc5632
l2bmd $lb736 $lc5888
l2bmd $lb768 $lc6144 # Use.
l2bmd $lb800 $lc6400
l2bmd $lb832 $lc6656
l2bmd $lb864 $lc6912
l2bmd $lb896 $lc7168
l2bmd $lb928 $lc7424; l1bmd $lr32v $lb1024; iadd $ls200 $lr32v $lr40v # Use.
l2bmd $lb960 $lc7680
l2bmd $lb992 $lc7936
l2bmd $lb1024 $lc8192 # Use.
l2bmd $lb1056 $lc8448
l2bmd $lb1088 $lc8704
l2bmd $lb1120 $lc8960
l2bmd $lb1152 $lc9216
l2bmd $lb1184 $lc9472; l1bmd $lr40v $lb1280; iadd $ls200 $lr40v $lr48v # Use.
l2bmd $lb1216 $lc9728
l2bmd $lb1248 $lc9984
l2bmd $lb1280 $lc10240 # Use.
l2bmd $lb1312 $lc10496
l2bmd $lb1344 $lc10752
l2bmd $lb1376 $lc11008
l2bmd $lb1408 $lc11264
l2bmd $lb1440 $lc11520; l1bmd $lr48v $lb1536; iadd $ls200 $lr48v $lr56v # Use $lr48v.
l2bmd $lb1472 $lc11776
l2bmd $lb1504 $lc12032
l2bmd $lb1536 $lc12288 # Use $lb1536.
l2bmd $lb1568 $lc12544
l2bmd $lb1600 $lc12800
l2bmd $lb1632 $lc13056
l2bmd $lb1664 $lc13312
l2bmd $lb1696 $lc13568; l1bmd $lr56v $lb1792 # Use $lr56v.
l2bmd $lb1728 $lc13824
l2bmd $lb1760 $lc14080
l2bmd $lb1792 $lc14336 # Use $lb1792.
l2bmd $lb1824 $lc14592
l2bmd $lb1856 $lc14848
l2bmd $lb1888 $lc15104
l2bmd $lb1920 $lc15360
l2bmd $lb1952 $lc15616
l2bmd $lb1984 $lc15872
l2bmd $lb2016 $lc16128
nop
# 0, 0 L2BM 0 DRMA 0 16Ki
mvp/n16384 $lc0@0.0 $d0@0
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Standard Output

ACCEPTED!! score=86 j=85 m=1 bytes=2211
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Standard Error

------------------- vsm --------------------
#
# imm i"0" $ls0
imm i"1" $ls10 $r0
imm i"2" $ls20 $r1
imm i"1024" $ls124/1000
imm i"3" $ls30
#
# imm i"1" $r0
# imm i"2" $r1
# imm i"1025" $r2
# imm i"1026" $r3
iadd $ls124 $lr0 $lr2/1000
# imm i"2049" $r4
# imm i"2050" $r5
iadd $ls124 $aluf $lr4/1000
# imm i"3073" $r6
# imm i"3074" $r7
iadd $ls124 $aluf $lr6/1000
# mabid>>1<<7 | subpeid<<1 | (mabid%2)<<3 = mabid>>1<<7 | l1bid<<4 | (mabid & 1)<<3 | subpeid<<1
# = (((mabid>>1<<3 | l1bid)<<1 | (mabid & 1))<<2 | subpeid)<<1
iand $mabid $ls10 $ls100 # tmp = mabid & 1
ilsr $mabid $ls10 $nowrite
 
 
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX