| 1 | # Test vectors for accelerated multiplication |
| 2 | |
| 3 | dmul4 { |
| 4 | 0000a5a4a3a2a1a000009594939291900000abaaa9a8a7a600009b9a999897960000afaeadacabaa00009f9e9d9c9b9a # c |
| 5 | c3c2c1c0c7c6c5c4cbcac9c8cfcecdcc # u |
| 6 | e3e2e1e0e7e6e5e4ebeae9e8efeeedec # x |
| 7 | d3d2d1d0d7d6d5d4dbdad9d8dfdedddc # v |
| 8 | f3f2f1f0f7f6f5f4fbfaf9f8fffefdfc # y |
| 9 | d4356fa018c7f681e0be24efecdaf6e0 # zz |
| 10 | 0004bb142333e4e00004c56cb3ac322d000335ca0eb0310000033cbfe475dfd00001a2236db667a00001a5a668a94f10; # cc |
| 11 | } |
| 12 | |
| 13 | dmla4 { |
| 14 | b3b2b1b0b7b6b5b4bbbab9b8bfbebdbc # a |
| 15 | 0000a5a4a3a2a1a000009594939291900000abaaa9a8a7a600009b9a999897960000afaeadacabaa00009f9e9d9c9b9a # c |
| 16 | c3c2c1c0c7c6c5c4cbcac9c8cfcecdcc # u |
| 17 | e3e2e1e0e7e6e5e4ebeae9e8efeeedec # x |
| 18 | d3d2d1d0d7d6d5d4dbdad9d8dfdedddc # v |
| 19 | f3f2f1f0f7f6f5f4fbfaf9f8fffefdfc # y |
| 20 | 87e82150d07eac369c78dea7ac99b49d # zz |
| 21 | 0004bb142333e4e10004c56cb3ac322d000335ca0eb0310000033cbfe475dfd00001a2236db667a00001a5a668a94f10; # cc |
| 22 | } |
| 23 | |
| 24 | mul4 { |
| 25 | 0000a5a4a3a2a1a000009594939291900000abaaa9a8a7a600009b9a999897960000afaeadacabaa00009f9e9d9c9b9a # c |
| 26 | e3e2e1e0e7e6e5e4ebeae9e8efeeedec # x |
| 27 | f3f2f1f0f7f6f5f4fbfaf9f8fffefdfc # y |
| 28 | 964a43a0b812545cd3c4a34a69e3ec23 # zz |
| 29 | 0002b2f3db03f8310002b880e3fffed70001d457394991000001d812a4ace8a80000ee0b505470500000efed0e0e2428; # cc |
| 30 | } |
| 31 | |
| 32 | mul4zc { |
| 33 | e3e2e1e0e7e6e5e4ebeae9e8efeeedec # x |
| 34 | f3f2f1f0f7f6f5f4fbfaf9f8fffefdfc # y |
| 35 | 6117a200e13e737feee2b25cca449ed7 # zz |
| 36 | 0002b2f3db03f8300002b880e3fffed70001d457394991000001d812a4ace8a80000ee0b505470500000efed0e0e2428; # cc |
| 37 | } |
| 38 | |
| 39 | mla4 { |
| 40 | b3b2b1b0b7b6b5b4bbbab9b8bfbebdbc # a |
| 41 | 0000a5a4a3a2a1a000009594939291900000abaaa9a8a7a600009b9a999897960000afaeadacabaa00009f9e9d9c9b9a # c |
| 42 | e3e2e1e0e7e6e5e4ebeae9e8efeeedec # x |
| 43 | f3f2f1f0f7f6f5f4fbfaf9f8fffefdfc # y |
| 44 | 49fcf5506fc90a118f7f5d0329a2a9e0 # zz |
| 45 | 0002b2f3db03f8320002b880e3fffed70001d457394991000001d812a4ace8a80000ee0b505470500000efed0e0e2428; # cc |
| 46 | } |
| 47 | |
| 48 | mla4zc { |
| 49 | b3b2b1b0b7b6b5b4bbbab9b8bfbebdbc # a |
| 50 | e3e2e1e0e7e6e5e4ebeae9e8efeeedec # x |
| 51 | f3f2f1f0f7f6f5f4fbfaf9f8fffefdfc # y |
| 52 | 14ca53b098f52934aa9d6c158a035c94 # zz |
| 53 | 0002b2f3db03f8310002b880e3fffed70001d457394991000001d812a4ace8a80000ee0b505470500000efed0e0e2428; # cc |
| 54 | } |
| 55 | |
| 56 | mmul4 { |
| 57 | c3c2c1c0c7c6c5c4cbcac9c8cfcecdcc # u |
| 58 | acadaeafa8a9aaaba4a5a6a7a0a1a2a3 # n |
| 59 | d3d2d1d0d7d6d5d4dbdad9d8dfdedddc # v |
| 60 | 546f97b132b6ca1d10d519b5ca6ab8a9 # m |
| 61 | 00000000000000000000000000000000 # zz |
| 62 | 00006c0000009a8d000012ad0000630c0000f084000077a40000979d00000caa # yy |
| 63 | 0003126be83bdbf40002a05c4867918e000259dfe01b01770001b7e463bf6b7a00011339f770da470000bdab9990cf26; # cc |
| 64 | } |
| 65 | |
| 66 | mmla4 { |
| 67 | b3b2b1b0b7b6b5b4bbbab9b8bfbebdbc # a |
| 68 | c3c2c1c0c7c6c5c4cbcac9c8cfcecdcc # u |
| 69 | acadaeafa8a9aaaba4a5a6a7a0a1a2a3 # n |
| 70 | d3d2d1d0d7d6d5d4dbdad9d8dfdedddc # v |
| 71 | 546f97b132b6ca1d10d519b5ca6ab8a9 # m |
| 72 | 00000000000000000000000000000000 # zz |
| 73 | 000016b000000b390000d8550000507000008de2000057700000754b0000c5db # yy |
| 74 | 000338658ad352110002f9fbc6cd85d5000205e99c5e20d300021acac7b997550000fdb10c111c11000131df2708bb59; # cc |
| 75 | } |
| 76 | |
| 77 | mont4 { |
| 78 | b3b2b1b0b7b6b5b4bbbab9b8bfbebdbc # a |
| 79 | acadaeafa8a9aaaba4a5a6a7a0a1a2a3 # n |
| 80 | 546f97b132b6ca1d10d519b5ca6ab8a9 # m |
| 81 | 00000000000000000000000000000000 # zz |
| 82 | 0000aab0000070ab0000c5a70000ed6400009d5d0000dfcb0000ddad0000b930 # yy |
| 83 | 0001734705fa761d00019ee57a6290e40000f14fc045d61200010386c155e29100008b1816a19f2700007432ecd64990; # cc |
| 84 | } |