Mod 3

Submission Date: 2024/9/1 17:28:15
Status: Accepted
Author: mosh
Lines: 43

VSM

# 0 <= m <= 255 (= 0xff)
# 0b100 mod 3 = 1
# 4
imm ui"0xf0f0f0f0" $ls32/1000
# 4, 2
imm i"0xf0f0f0f" $ls36/1000
imm i"0x3030303" $ls38/1000
imm i"0x3" $ls40/1000
# 8, 16, 24, 4, 2
imm i"8" $ls60/1000
imm i"16" $ls62/1000
imm i"24" $ls64/1000
imm i"4" $ls66/1000
imm i"2" $ls68/1000
# 8324
# X[0:8] + X[8:16] << 8 + X[16:24] << 16 + X[24:32] << 24
uilsl $lm8v $ls60 $nowrite
uiadd $lm0v $aluf $lr0v
uilsl $lm16v $ls62 $nowrite
uiadd $lr0v $aluf $lr0v
uilsl $lm24v $ls64 $nowrite
uiadd $lr0v $aluf $lr0v
# 44
#
uiand $aluf $ls36 $ls0v
uiand $lr0v $ls32 $nowrite
uilsr $aluf $ls66 $nowrite
uiadd $ls0v $aluf $lr0v
#
# 22
uiand $aluf $ls38 $ls0v
uilsr $lr0v $ls68 $nowrite
uiadd $ls0v $aluf $lr0v
#
# m=1270b01112
uiand $aluf $ls38 $ls0v
uilsr $lr0v $ls68 $nowrite
uiadd $ls0v $aluf $lr0v
uiand $aluf $ls38 $ls0v
uilsr $lr0v $ls68 $nowrite
uiadd $ls0v $aluf $lr0v
# 0b110
# 0:8
uiand $aluf $ls40 $ls0v
isub $ls68 $aluf $omr1
ipassa $ls0v $ln0v/$imr1
# 8:16
uilsr $lr0v $ls60 $ls0v
uiand $aluf $ls40 $ls0v
isub $ls68 $aluf $omr1
ipassa $ls0v $ln8v/$imr1
# 16:24
uilsr $lr0v $ls62 $ls0v
uiand $aluf $ls40 $ls0v
isub $ls68 $aluf $omr1
ipassa $ls0v $ln16v/$imr1
# 24:32
uilsr $lr0v $ls64 $ls0v
uiand $aluf $ls40 $ls0v
isub $ls68 $aluf $omr1
ipassa $ls0v $ln24v/$imr1
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Standard Output

ACCEPTED!! score=43 j=43 m=0 bytes=1053
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Standard Error

------------------- vsm --------------------
# ======= In(0): ((16_MAB:1, 4_PE:1, 16:1, 2_W:1))@LM0 / UInt =======
d set $lm0m0p0 1 000000680000007F # values=[104, 127] / UInt @[0],[1]
d set $lm2m0p0 1 00000061000000C7 # values=[97, 199] / UInt @[2],[3]
d set $lm4m0p0 1 0000005F000000F8 # values=[95, 248] / UInt @[4],[5]
d set $lm6m0p0 1 0000002700000007 # values=[39, 7] / UInt @[6],[7]
d set $lm8m0p0 1 0000001200000096 # values=[18, 150] / UInt @[8],[9]
d set $lm10m0p0 1 000000500000003C # values=[80, 60] / UInt @[10],[11]
d set $lm12m0p0 1 0000006700000098 # values=[103, 152] / UInt @[12],[13]
d set $lm14m0p0 1 0000007C000000D9 # values=[124, 217] / UInt @[14],[15]
d set $lm16m0p0 1 0000005B000000CA # values=[91, 202] / UInt @[16],[17]
d set $lm18m0p0 1 000000BC0000009C # values=[188, 156] / UInt @[18],[19]
d set $lm20m0p0 1 0000008300000010 # values=[131, 16] / UInt @[20],[21]
d set $lm22m0p0 1 00000027000000DB # values=[39, 219] / UInt @[22],[23]
d set $lm24m0p0 1 000000DB000000DA # values=[219, 218] / UInt @[24],[25]
d set $lm26m0p0 1 000000EB000000C1 # values=[235, 193] / UInt @[26],[27]
d set $lm28m0p0 1 000000D600000092 # values=[214, 146] / UInt @[28],[29]
d set $lm30m0p0 1 00000011000000AA # values=[17, 170] / UInt @[30],[31]
d set $lm0m0p1 1 0000001F00000005 # values=[31, 5] / UInt @[32],[33]
d set $lm2m0p1 1 000000E000000083 # values=[224, 131] / UInt @[34],[35]
d set $lm4m0p1 1 000000B2000000AC # values=[178, 172] / UInt @[36],[37]
d set $lm6m0p1 1 0000009400000084 # values=[148, 132] / UInt @[38],[39]
d set $lm8m0p1 1 0000004900000070 # values=[73, 112] / UInt @[40],[41]
d set $lm10m0p1 1 000000B1000000C1 # values=[177, 193] / UInt @[42],[43]
d set $lm12m0p1 1 000000350000003E # values=[53, 62] / UInt @[44],[45]
d set $lm14m0p1 1 0000004400000086 # values=[68, 134] / UInt @[46],[47]
 
 
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX