math/: Distribute the `mpx-mul4' test vectors, with the correct name.
[catacomb] / math / t / mpx-mul4
diff --git a/math/t/mpx-mul4 b/math/t/mpx-mul4
new file mode 100644 (file)
index 0000000..1373215
--- /dev/null
@@ -0,0 +1,69 @@
+# Test vectors for accelerated multiplication
+
+dmul4 {
+  0000a5a4a3a2a1a000009594939291900000abaaa9a8a7a600009b9a999897960000afaeadacabaa00009f9e9d9c9b9a # c
+    c3c2c1c0c7c6c5c4cbcac9c8cfcecdcc # u
+    e3e2e1e0e7e6e5e4ebeae9e8efeeedec # x
+    d3d2d1d0d7d6d5d4dbdad9d8dfdedddc # v
+    f3f2f1f0f7f6f5f4fbfaf9f8fffefdfc # y
+    d4356fa018c7f681e0be24efecdaf6e0 # zz
+    0004bb142333e4e00004c56cb3ac322d000335ca0eb0310000033cbfe475dfd00001a2236db667a00001a5a668a94f10; ## cc
+}
+
+dmla4 {
+  b3b2b1b0b7b6b5b4bbbab9b8bfbebdbc # a
+    0000a5a4a3a2a1a000009594939291900000abaaa9a8a7a600009b9a999897960000afaeadacabaa00009f9e9d9c9b9a # c
+    c3c2c1c0c7c6c5c4cbcac9c8cfcecdcc # u
+    e3e2e1e0e7e6e5e4ebeae9e8efeeedec # x
+    d3d2d1d0d7d6d5d4dbdad9d8dfdedddc # v
+    f3f2f1f0f7f6f5f4fbfaf9f8fffefdfc # y
+    87e82150d07eac369c78dea7ac99b49d # zz
+    0004bb142333e4e10004c56cb3ac322d000335ca0eb0310000033cbfe475dfd00001a2236db667a00001a5a668a94f10; # cc
+}
+
+mul4 {
+  0000a5a4a3a2a1a000009594939291900000abaaa9a8a7a600009b9a999897960000afaeadacabaa00009f9e9d9c9b9a # c
+    e3e2e1e0e7e6e5e4ebeae9e8efeeedec # x
+    f3f2f1f0f7f6f5f4fbfaf9f8fffefdfc # y
+    964a43a0b812545cd3c4a34a69e3ec23 # zz
+    0002b2f3db03f8310002b880e3fffed70001d457394991000001d812a4ace8a80000ee0b505470500000efed0e0e2428; ## cc
+}
+
+mla4 {
+  b3b2b1b0b7b6b5b4bbbab9b8bfbebdbc # a
+    0000a5a4a3a2a1a000009594939291900000abaaa9a8a7a600009b9a999897960000afaeadacabaa00009f9e9d9c9b9a # c
+    e3e2e1e0e7e6e5e4ebeae9e8efeeedec # x
+    f3f2f1f0f7f6f5f4fbfaf9f8fffefdfc # y
+    49fcf5506fc90a118f7f5d0329a2a9e0 # zz
+    0002b2f3db03f8320002b880e3fffed70001d457394991000001d812a4ace8a80000ee0b505470500000efed0e0e2428; ## cc
+}
+
+mmul4 {
+  c3c2c1c0c7c6c5c4cbcac9c8cfcecdcc # u
+    acadaeafa8a9aaaba4a5a6a7a0a1a2a3 # n
+    d3d2d1d0d7d6d5d4dbdad9d8dfdedddc # v
+    546f97b132b6ca1d10d519b5ca6ab8a9 # m
+    00000000000000000000000000000000 # zz
+    00006c00000012ad00009a8d0000630c0000f0840000979d000077a400000caa # yy
+    0003126be83bdbf40002a05c4867918e000259dfe01b01770001b7e463bf6b7a00011339f770da470000bdab9990cf26; # cc
+}
+
+mmla4 {
+  b3b2b1b0b7b6b5b4bbbab9b8bfbebdbc # a
+    c3c2c1c0c7c6c5c4cbcac9c8cfcecdcc # u
+    acadaeafa8a9aaaba4a5a6a7a0a1a2a3 # n
+    d3d2d1d0d7d6d5d4dbdad9d8dfdedddc # v
+    546f97b132b6ca1d10d519b5ca6ab8a9 # m
+    00000000000000000000000000000000 # zz
+    000016b00000d85500000b390000507000008de20000754b000057700000c5db # yy
+    000338658ad352110002f9fbc6cd85d5000205e99c5e20d300021acac7b997550000fdb10c111c11000131df2708bb59; # cc
+}
+
+mont4 {
+  b3b2b1b0b7b6b5b4bbbab9b8bfbebdbc # a
+    acadaeafa8a9aaaba4a5a6a7a0a1a2a3 # n
+    546f97b132b6ca1d10d519b5ca6ab8a9 # m
+    00000000000000000000000000000000 # zz
+    0000aab00000c5a7000070ab0000ed6400009d5d0000ddad0000dfcb0000b930 # yy
+    0001734705fa761d00019ee57a6290e40000f14fc045d61200010386c155e29100008b1816a19f2700007432ecd64990; # cc
+}