aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--NOTE.md2
-rw-r--r--problems/05-Abs/07.vsm23
2 files changed, 24 insertions, 1 deletions
diff --git a/NOTE.md b/NOTE.md
index 7571e91..7ffb9fd 100644
--- a/NOTE.md
+++ b/NOTE.md
@@ -8,7 +8,7 @@ M = 自分の点
| 問題 | m | M | m-M |
|-----------------|-----|-----|-----|
| Mul 7 | 88 | 70 | 18 |
-| Abs | 100 | 68 | 32 |
+| Abs | 100 | 80 | 20 |
| FAM 8 | 85 | 85 | 0 |
| FMul 2 | 100 | 100 | 0 |
| Lesseq | 100 | 100 | 0 |
diff --git a/problems/05-Abs/07.vsm b/problems/05-Abs/07.vsm
new file mode 100644
index 0000000..6f52852
--- /dev/null
+++ b/problems/05-Abs/07.vsm
@@ -0,0 +1,23 @@
+imm f"inf" $t
+lpassa $llm0v $lln0v $llr0v
+lpassa $llm16v $lln16v $llr16v
+lpassa $llm32v $lln32v $llr32v
+lpassa $llm48v $lln48v $llr48v
+lpassa $llm64v $lln64v $llr64v
+lpassa $llm80v $lln80v $llr80v; fvfma -$lr0v $t -$t $omr1
+isub $ls0 $lm0v $ln0v/$imr1; fvfma -$lr8v $t -$t $omr1
+isub $ls0 $lm8v $ln8v/$imr1; fvfma -$lr16v $t -$t $omr1
+isub $ls0 $lm16v $ln16v/$imr1; fvfma -$lr24v $t -$t $omr1
+isub $ls0 $lm24v $ln24v/$imr1; fvfma -$lr32v $t -$t $omr1
+isub $ls0 $lm32v $ln32v/$imr1; fvfma -$lr40v $t -$t $omr1
+isub $ls0 $lm40v $ln40v/$imr1; fvfma -$lr48v $t -$t $omr1
+isub $ls0 $lm48v $ln48v/$imr1; fvfma -$lr56v $t -$t $omr1
+isub $ls0 $lm56v $ln56v/$imr1; fvfma -$lr64v $t -$t $omr1
+isub $ls0 $lm64v $ln64v/$imr1; fvfma -$lr72v $t -$t $omr1
+isub $ls0 $lm72v $ln72v/$imr1; fvfma -$lr80v $t -$t $omr1
+isub $ls0 $lm80v $ln80v/$imr1
+
+# (88 / 16 + 1).times { |i| puts "lpassa $llm#{16*i}v $lln#{16*i}v $llr#{16*i}v" }
+# (88 / 8).times { |i| puts "fvfma -$lr#{8*i}v $t -$t $omr1"; puts "isub $ls0 $lm#{8*i}v $ln#{8*i}v/$imr1" }
+
+# hvfma に 2長語で入れて 2長語のマスクを得る?