6 /* ---------------------------------------------------------------- */
7 /* -- Tests, in the same order that they appear in main() -- */
8 /* -- The full list of instructions tested appear at the end of -- */
10 /* ---------------------------------------------------------------- */
12 // SHA512H <Qd>, <Qn>, <Vm>.2D
14 GEN_THREEVEC_TEST(sha512h_00_01_02
, "sha512h q0, q1, v2.2d", 0, 1, 2)
15 GEN_THREEVEC_TEST(sha512h_01_02_03
, "sha512h q1, q2, v3.2d", 1, 2, 3)
16 GEN_THREEVEC_TEST(sha512h_02_03_04
, "sha512h q2, q3, v4.2d", 2, 3, 4)
17 GEN_THREEVEC_TEST(sha512h_03_04_05
, "sha512h q3, q4, v5.2d", 3, 4, 5)
18 GEN_THREEVEC_TEST(sha512h_04_05_06
, "sha512h q4, q5, v6.2d", 4, 5, 6)
19 GEN_THREEVEC_TEST(sha512h_05_06_07
, "sha512h q5, q6, v7.2d", 5, 6, 7)
20 GEN_THREEVEC_TEST(sha512h_06_07_08
, "sha512h q6, q7, v8.2d", 6, 7, 8)
21 GEN_THREEVEC_TEST(sha512h_07_08_09
, "sha512h q7, q8, v9.2d", 7, 8, 9)
22 GEN_THREEVEC_TEST(sha512h_08_09_10
, "sha512h q8, q9, v10.2d", 8, 9, 10)
23 GEN_THREEVEC_TEST(sha512h_09_10_11
, "sha512h q9, q10, v11.2d", 9, 10, 11)
24 GEN_THREEVEC_TEST(sha512h_10_11_12
, "sha512h q10, q11, v12.2d", 10, 11, 12)
25 GEN_THREEVEC_TEST(sha512h_11_12_13
, "sha512h q11, q12, v13.2d", 11, 12, 13)
26 GEN_THREEVEC_TEST(sha512h_12_13_14
, "sha512h q12, q13, v14.2d", 12, 13, 14)
27 GEN_THREEVEC_TEST(sha512h_13_14_15
, "sha512h q13, q14, v15.2d", 13, 14, 15)
28 GEN_THREEVEC_TEST(sha512h_14_15_16
, "sha512h q14, q15, v16.2d", 14, 15, 16)
29 GEN_THREEVEC_TEST(sha512h_15_16_17
, "sha512h q15, q16, v17.2d", 15, 16, 17)
30 GEN_THREEVEC_TEST(sha512h_16_17_18
, "sha512h q16, q17, v18.2d", 16, 17, 18)
31 GEN_THREEVEC_TEST(sha512h_17_18_19
, "sha512h q17, q18, v19.2d", 17, 18, 19)
32 GEN_THREEVEC_TEST(sha512h_18_19_20
, "sha512h q18, q19, v20.2d", 18, 19, 20)
33 GEN_THREEVEC_TEST(sha512h_19_20_21
, "sha512h q19, q20, v21.2d", 19, 20, 21)
34 GEN_THREEVEC_TEST(sha512h_20_21_22
, "sha512h q20, q21, v22.2d", 20, 21, 22)
35 GEN_THREEVEC_TEST(sha512h_21_22_23
, "sha512h q21, q22, v23.2d", 21, 22, 23)
36 GEN_THREEVEC_TEST(sha512h_22_23_24
, "sha512h q22, q23, v24.2d", 22, 23, 24)
37 GEN_THREEVEC_TEST(sha512h_23_24_25
, "sha512h q23, q24, v25.2d", 23, 24, 25)
38 GEN_THREEVEC_TEST(sha512h_24_25_26
, "sha512h q24, q25, v26.2d", 24, 25, 26)
39 GEN_THREEVEC_TEST(sha512h_25_26_27
, "sha512h q25, q26, v27.2d", 25, 26, 27)
40 GEN_THREEVEC_TEST(sha512h_26_27_28
, "sha512h q26, q27, v28.2d", 26, 27, 28)
41 GEN_THREEVEC_TEST(sha512h_27_28_29
, "sha512h q27, q28, v29.2d", 27, 28, 29)
42 GEN_THREEVEC_TEST(sha512h_28_29_30
, "sha512h q28, q29, v30.2d", 28, 29, 30)
43 GEN_THREEVEC_TEST(sha512h_29_30_31
, "sha512h q29, q30, v31.2d", 29, 30, 31)
45 // SHA512H2 <Qd>, <Qn>, <Vm>.2D
47 GEN_THREEVEC_TEST(sha512h2_00_01_02
, "sha512h2 q0, q1, v2.2d", 0, 1, 2)
48 GEN_THREEVEC_TEST(sha512h2_01_02_03
, "sha512h2 q1, q2, v3.2d", 1, 2, 3)
49 GEN_THREEVEC_TEST(sha512h2_02_03_04
, "sha512h2 q2, q3, v4.2d", 2, 3, 4)
50 GEN_THREEVEC_TEST(sha512h2_03_04_05
, "sha512h2 q3, q4, v5.2d", 3, 4, 5)
51 GEN_THREEVEC_TEST(sha512h2_04_05_06
, "sha512h2 q4, q5, v6.2d", 4, 5, 6)
52 GEN_THREEVEC_TEST(sha512h2_05_06_07
, "sha512h2 q5, q6, v7.2d", 5, 6, 7)
53 GEN_THREEVEC_TEST(sha512h2_06_07_08
, "sha512h2 q6, q7, v8.2d", 6, 7, 8)
54 GEN_THREEVEC_TEST(sha512h2_07_08_09
, "sha512h2 q7, q8, v9.2d", 7, 8, 9)
55 GEN_THREEVEC_TEST(sha512h2_08_09_10
, "sha512h2 q8, q9, v10.2d", 8, 9, 10)
56 GEN_THREEVEC_TEST(sha512h2_09_10_11
, "sha512h2 q9, q10, v11.2d", 9, 10, 11)
57 GEN_THREEVEC_TEST(sha512h2_10_11_12
, "sha512h2 q10, q11, v12.2d", 10, 11, 12)
58 GEN_THREEVEC_TEST(sha512h2_11_12_13
, "sha512h2 q11, q12, v13.2d", 11, 12, 13)
59 GEN_THREEVEC_TEST(sha512h2_12_13_14
, "sha512h2 q12, q13, v14.2d", 12, 13, 14)
60 GEN_THREEVEC_TEST(sha512h2_13_14_15
, "sha512h2 q13, q14, v15.2d", 13, 14, 15)
61 GEN_THREEVEC_TEST(sha512h2_14_15_16
, "sha512h2 q14, q15, v16.2d", 14, 15, 16)
62 GEN_THREEVEC_TEST(sha512h2_15_16_17
, "sha512h2 q15, q16, v17.2d", 15, 16, 17)
63 GEN_THREEVEC_TEST(sha512h2_16_17_18
, "sha512h2 q16, q17, v18.2d", 16, 17, 18)
64 GEN_THREEVEC_TEST(sha512h2_17_18_19
, "sha512h2 q17, q18, v19.2d", 17, 18, 19)
65 GEN_THREEVEC_TEST(sha512h2_18_19_20
, "sha512h2 q18, q19, v20.2d", 18, 19, 20)
66 GEN_THREEVEC_TEST(sha512h2_19_20_21
, "sha512h2 q19, q20, v21.2d", 19, 20, 21)
67 GEN_THREEVEC_TEST(sha512h2_20_21_22
, "sha512h2 q20, q21, v22.2d", 20, 21, 22)
68 GEN_THREEVEC_TEST(sha512h2_21_22_23
, "sha512h2 q21, q22, v23.2d", 21, 22, 23)
69 GEN_THREEVEC_TEST(sha512h2_22_23_24
, "sha512h2 q22, q23, v24.2d", 22, 23, 24)
70 GEN_THREEVEC_TEST(sha512h2_23_24_25
, "sha512h2 q23, q24, v25.2d", 23, 24, 25)
71 GEN_THREEVEC_TEST(sha512h2_24_25_26
, "sha512h2 q24, q25, v26.2d", 24, 25, 26)
72 GEN_THREEVEC_TEST(sha512h2_25_26_27
, "sha512h2 q25, q26, v27.2d", 25, 26, 27)
73 GEN_THREEVEC_TEST(sha512h2_26_27_28
, "sha512h2 q26, q27, v28.2d", 26, 27, 28)
74 GEN_THREEVEC_TEST(sha512h2_27_28_29
, "sha512h2 q27, q28, v29.2d", 27, 28, 29)
75 GEN_THREEVEC_TEST(sha512h2_28_29_30
, "sha512h2 q28, q29, v30.2d", 28, 29, 30)
76 GEN_THREEVEC_TEST(sha512h2_29_30_31
, "sha512h2 q29, q30, v31.2d", 29, 30, 31)
78 // SHA512SU0 <Vd>.2D, <Vn>.2D
80 GEN_TWOVEC_TEST(sha512su0_00_01
, "sha512su0 v0.2d, v1.2d", 0, 1)
81 GEN_TWOVEC_TEST(sha512su0_01_02
, "sha512su0 v1.2d, v2.2d", 1, 2)
82 GEN_TWOVEC_TEST(sha512su0_02_03
, "sha512su0 v2.2d, v3.2d", 2, 3)
83 GEN_TWOVEC_TEST(sha512su0_03_04
, "sha512su0 v3.2d, v4.2d", 3, 4)
84 GEN_TWOVEC_TEST(sha512su0_04_05
, "sha512su0 v4.2d, v5.2d", 4, 5)
85 GEN_TWOVEC_TEST(sha512su0_05_06
, "sha512su0 v5.2d, v6.2d", 5, 6)
86 GEN_TWOVEC_TEST(sha512su0_06_07
, "sha512su0 v6.2d, v7.2d", 6, 7)
87 GEN_TWOVEC_TEST(sha512su0_07_08
, "sha512su0 v7.2d, v8.2d", 7, 8)
88 GEN_TWOVEC_TEST(sha512su0_08_09
, "sha512su0 v8.2d, v9.2d", 8, 9)
89 GEN_TWOVEC_TEST(sha512su0_09_10
, "sha512su0 v9.2d, v10.2d", 9, 10)
90 GEN_TWOVEC_TEST(sha512su0_10_11
, "sha512su0 v10.2d, v11.2d", 10, 11)
91 GEN_TWOVEC_TEST(sha512su0_11_12
, "sha512su0 v11.2d, v12.2d", 11, 12)
92 GEN_TWOVEC_TEST(sha512su0_12_13
, "sha512su0 v12.2d, v13.2d", 12, 13)
93 GEN_TWOVEC_TEST(sha512su0_13_14
, "sha512su0 v13.2d, v14.2d", 13, 14)
94 GEN_TWOVEC_TEST(sha512su0_14_15
, "sha512su0 v14.2d, v15.2d", 14, 15)
95 GEN_TWOVEC_TEST(sha512su0_15_16
, "sha512su0 v15.2d, v16.2d", 15, 16)
96 GEN_TWOVEC_TEST(sha512su0_16_17
, "sha512su0 v16.2d, v17.2d", 16, 17)
97 GEN_TWOVEC_TEST(sha512su0_17_18
, "sha512su0 v17.2d, v18.2d", 17, 18)
98 GEN_TWOVEC_TEST(sha512su0_18_19
, "sha512su0 v18.2d, v19.2d", 18, 19)
99 GEN_TWOVEC_TEST(sha512su0_19_20
, "sha512su0 v19.2d, v20.2d", 19, 20)
100 GEN_TWOVEC_TEST(sha512su0_20_21
, "sha512su0 v20.2d, v21.2d", 20, 21)
101 GEN_TWOVEC_TEST(sha512su0_21_22
, "sha512su0 v21.2d, v22.2d", 21, 22)
102 GEN_TWOVEC_TEST(sha512su0_22_23
, "sha512su0 v22.2d, v23.2d", 22, 23)
103 GEN_TWOVEC_TEST(sha512su0_23_24
, "sha512su0 v23.2d, v24.2d", 23, 24)
104 GEN_TWOVEC_TEST(sha512su0_24_25
, "sha512su0 v24.2d, v25.2d", 24, 25)
105 GEN_TWOVEC_TEST(sha512su0_25_26
, "sha512su0 v25.2d, v26.2d", 25, 26)
106 GEN_TWOVEC_TEST(sha512su0_26_27
, "sha512su0 v26.2d, v27.2d", 26, 27)
107 GEN_TWOVEC_TEST(sha512su0_27_28
, "sha512su0 v27.2d, v28.2d", 27, 28)
108 GEN_TWOVEC_TEST(sha512su0_28_29
, "sha512su0 v28.2d, v29.2d", 28, 29)
109 GEN_TWOVEC_TEST(sha512su0_29_30
, "sha512su0 v29.2d, v30.2d", 29, 30)
110 GEN_TWOVEC_TEST(sha512su0_30_31
, "sha512su0 v30.2d, v31.2d", 30, 31)
112 // SHA512SU1 <Vd>.2D, <Vn>.2D, <Vm>.2D
114 GEN_THREEVEC_TEST(sha512su1_00_01_02
, "sha512su1 v0.2d, v1.2d, v2.2d", 0, 1, 2)
115 GEN_THREEVEC_TEST(sha512su1_01_02_03
, "sha512su1 v1.2d, v2.2d, v3.2d", 1, 2, 3)
116 GEN_THREEVEC_TEST(sha512su1_02_03_04
, "sha512su1 v2.2d, v3.2d, v4.2d", 2, 3, 4)
117 GEN_THREEVEC_TEST(sha512su1_03_04_05
, "sha512su1 v3.2d, v4.2d, v5.2d", 3, 4, 5)
118 GEN_THREEVEC_TEST(sha512su1_04_05_06
, "sha512su1 v4.2d, v5.2d, v6.2d", 4, 5, 6)
119 GEN_THREEVEC_TEST(sha512su1_05_06_07
, "sha512su1 v5.2d, v6.2d, v7.2d", 5, 6, 7)
120 GEN_THREEVEC_TEST(sha512su1_06_07_08
, "sha512su1 v6.2d, v7.2d, v8.2d", 6, 7, 8)
121 GEN_THREEVEC_TEST(sha512su1_07_08_09
, "sha512su1 v7.2d, v8.2d, v9.2d", 7, 8, 9)
122 GEN_THREEVEC_TEST(sha512su1_08_09_10
, "sha512su1 v8.2d, v9.2d, v10.2d", 8, 9, 10)
123 GEN_THREEVEC_TEST(sha512su1_09_10_11
, "sha512su1 v9.2d, v10.2d, v11.2d", 9, 10, 11)
124 GEN_THREEVEC_TEST(sha512su1_10_11_12
, "sha512su1 v10.2d, v11.2d, v12.2d", 10, 11, 12)
125 GEN_THREEVEC_TEST(sha512su1_11_12_13
, "sha512su1 v11.2d, v12.2d, v13.2d", 11, 12, 13)
126 GEN_THREEVEC_TEST(sha512su1_12_13_14
, "sha512su1 v12.2d, v13.2d, v14.2d", 12, 13, 14)
127 GEN_THREEVEC_TEST(sha512su1_13_14_15
, "sha512su1 v13.2d, v14.2d, v15.2d", 13, 14, 15)
128 GEN_THREEVEC_TEST(sha512su1_14_15_16
, "sha512su1 v14.2d, v15.2d, v16.2d", 14, 15, 16)
129 GEN_THREEVEC_TEST(sha512su1_15_16_17
, "sha512su1 v15.2d, v16.2d, v17.2d", 15, 16, 17)
130 GEN_THREEVEC_TEST(sha512su1_16_17_18
, "sha512su1 v16.2d, v17.2d, v18.2d", 16, 17, 18)
131 GEN_THREEVEC_TEST(sha512su1_17_18_19
, "sha512su1 v17.2d, v18.2d, v19.2d", 17, 18, 19)
132 GEN_THREEVEC_TEST(sha512su1_18_19_20
, "sha512su1 v18.2d, v19.2d, v20.2d", 18, 19, 20)
133 GEN_THREEVEC_TEST(sha512su1_19_20_21
, "sha512su1 v19.2d, v20.2d, v21.2d", 19, 20, 21)
134 GEN_THREEVEC_TEST(sha512su1_20_21_22
, "sha512su1 v20.2d, v21.2d, v22.2d", 20, 21, 22)
135 GEN_THREEVEC_TEST(sha512su1_21_22_23
, "sha512su1 v21.2d, v22.2d, v23.2d", 21, 22, 23)
136 GEN_THREEVEC_TEST(sha512su1_22_23_24
, "sha512su1 v22.2d, v23.2d, v24.2d", 22, 23, 24)
137 GEN_THREEVEC_TEST(sha512su1_23_24_25
, "sha512su1 v23.2d, v24.2d, v25.2d", 23, 24, 25)
138 GEN_THREEVEC_TEST(sha512su1_24_25_26
, "sha512su1 v24.2d, v25.2d, v26.2d", 24, 25, 26)
139 GEN_THREEVEC_TEST(sha512su1_25_26_27
, "sha512su1 v25.2d, v26.2d, v27.2d", 25, 26, 27)
140 GEN_THREEVEC_TEST(sha512su1_26_27_28
, "sha512su1 v26.2d, v27.2d, v28.2d", 26, 27, 28)
141 GEN_THREEVEC_TEST(sha512su1_27_28_29
, "sha512su1 v27.2d, v28.2d, v29.2d", 27, 28, 29)
142 GEN_THREEVEC_TEST(sha512su1_28_29_30
, "sha512su1 v28.2d, v29.2d, v30.2d", 28, 29, 30)
143 GEN_THREEVEC_TEST(sha512su1_29_30_31
, "sha512su1 v29.2d, v30.2d, v31.2d", 29, 30, 31)
145 /* ---------------------------------------------------------------- */
147 /* ---------------------------------------------------------------- */
151 assert(sizeof(V128
) == 16);
153 printf("\nSHA512H <Qd>, <Qn>, <Vm>.2D\n\n");
155 if (1) test_sha512h_00_01_02(TyD
);
156 if (1) test_sha512h_01_02_03(TyD
);
157 if (1) test_sha512h_02_03_04(TyD
);
158 if (1) test_sha512h_03_04_05(TyD
);
159 if (1) test_sha512h_04_05_06(TyD
);
160 if (1) test_sha512h_05_06_07(TyD
);
161 if (1) test_sha512h_06_07_08(TyD
);
162 if (1) test_sha512h_07_08_09(TyD
);
163 if (1) test_sha512h_08_09_10(TyD
);
164 if (1) test_sha512h_09_10_11(TyD
);
165 if (1) test_sha512h_10_11_12(TyD
);
166 if (1) test_sha512h_11_12_13(TyD
);
167 if (1) test_sha512h_12_13_14(TyD
);
168 if (1) test_sha512h_13_14_15(TyD
);
169 if (1) test_sha512h_14_15_16(TyD
);
170 if (1) test_sha512h_15_16_17(TyD
);
171 if (1) test_sha512h_16_17_18(TyD
);
172 if (1) test_sha512h_17_18_19(TyD
);
173 if (1) test_sha512h_18_19_20(TyD
);
174 if (1) test_sha512h_19_20_21(TyD
);
175 if (1) test_sha512h_20_21_22(TyD
);
176 if (1) test_sha512h_21_22_23(TyD
);
177 if (1) test_sha512h_22_23_24(TyD
);
178 if (1) test_sha512h_23_24_25(TyD
);
179 if (1) test_sha512h_24_25_26(TyD
);
180 if (1) test_sha512h_25_26_27(TyD
);
181 if (1) test_sha512h_26_27_28(TyD
);
182 if (1) test_sha512h_27_28_29(TyD
);
183 if (1) test_sha512h_28_29_30(TyD
);
184 if (1) test_sha512h_29_30_31(TyD
);
186 printf("\nSHA512H2 <Qd>, <Qn>, <Vm>.2D\n\n");
188 if (1) test_sha512h2_00_01_02(TyD
);
189 if (1) test_sha512h2_01_02_03(TyD
);
190 if (1) test_sha512h2_02_03_04(TyD
);
191 if (1) test_sha512h2_03_04_05(TyD
);
192 if (1) test_sha512h2_04_05_06(TyD
);
193 if (1) test_sha512h2_05_06_07(TyD
);
194 if (1) test_sha512h2_06_07_08(TyD
);
195 if (1) test_sha512h2_07_08_09(TyD
);
196 if (1) test_sha512h2_08_09_10(TyD
);
197 if (1) test_sha512h2_09_10_11(TyD
);
198 if (1) test_sha512h2_10_11_12(TyD
);
199 if (1) test_sha512h2_11_12_13(TyD
);
200 if (1) test_sha512h2_12_13_14(TyD
);
201 if (1) test_sha512h2_13_14_15(TyD
);
202 if (1) test_sha512h2_14_15_16(TyD
);
203 if (1) test_sha512h2_15_16_17(TyD
);
204 if (1) test_sha512h2_16_17_18(TyD
);
205 if (1) test_sha512h2_17_18_19(TyD
);
206 if (1) test_sha512h2_18_19_20(TyD
);
207 if (1) test_sha512h2_19_20_21(TyD
);
208 if (1) test_sha512h2_20_21_22(TyD
);
209 if (1) test_sha512h2_21_22_23(TyD
);
210 if (1) test_sha512h2_22_23_24(TyD
);
211 if (1) test_sha512h2_23_24_25(TyD
);
212 if (1) test_sha512h2_24_25_26(TyD
);
213 if (1) test_sha512h2_25_26_27(TyD
);
214 if (1) test_sha512h2_26_27_28(TyD
);
215 if (1) test_sha512h2_27_28_29(TyD
);
216 if (1) test_sha512h2_28_29_30(TyD
);
217 if (1) test_sha512h2_29_30_31(TyD
);
219 printf("\nSHA512SU0 <Vd>.2D, <Vn>.2D\n\n");
221 if (1) test_sha512su0_00_01(TyD
);
222 if (1) test_sha512su0_01_02(TyD
);
223 if (1) test_sha512su0_02_03(TyD
);
224 if (1) test_sha512su0_03_04(TyD
);
225 if (1) test_sha512su0_04_05(TyD
);
226 if (1) test_sha512su0_05_06(TyD
);
227 if (1) test_sha512su0_06_07(TyD
);
228 if (1) test_sha512su0_07_08(TyD
);
229 if (1) test_sha512su0_08_09(TyD
);
230 if (1) test_sha512su0_09_10(TyD
);
231 if (1) test_sha512su0_10_11(TyD
);
232 if (1) test_sha512su0_11_12(TyD
);
233 if (1) test_sha512su0_12_13(TyD
);
234 if (1) test_sha512su0_13_14(TyD
);
235 if (1) test_sha512su0_14_15(TyD
);
236 if (1) test_sha512su0_15_16(TyD
);
237 if (1) test_sha512su0_16_17(TyD
);
238 if (1) test_sha512su0_17_18(TyD
);
239 if (1) test_sha512su0_18_19(TyD
);
240 if (1) test_sha512su0_19_20(TyD
);
241 if (1) test_sha512su0_20_21(TyD
);
242 if (1) test_sha512su0_21_22(TyD
);
243 if (1) test_sha512su0_22_23(TyD
);
244 if (1) test_sha512su0_23_24(TyD
);
245 if (1) test_sha512su0_24_25(TyD
);
246 if (1) test_sha512su0_25_26(TyD
);
247 if (1) test_sha512su0_26_27(TyD
);
248 if (1) test_sha512su0_27_28(TyD
);
249 if (1) test_sha512su0_28_29(TyD
);
250 if (1) test_sha512su0_29_30(TyD
);
251 if (1) test_sha512su0_30_31(TyD
);
253 printf("\nSHA512SU1 <Vd>.2D, <Vn>.2D, <Vm>.2D\n\n");
255 if (1) test_sha512su1_00_01_02(TyD
);
256 if (1) test_sha512su1_01_02_03(TyD
);
257 if (1) test_sha512su1_02_03_04(TyD
);
258 if (1) test_sha512su1_03_04_05(TyD
);
259 if (1) test_sha512su1_04_05_06(TyD
);
260 if (1) test_sha512su1_05_06_07(TyD
);
261 if (1) test_sha512su1_06_07_08(TyD
);
262 if (1) test_sha512su1_07_08_09(TyD
);
263 if (1) test_sha512su1_08_09_10(TyD
);
264 if (1) test_sha512su1_09_10_11(TyD
);
265 if (1) test_sha512su1_10_11_12(TyD
);
266 if (1) test_sha512su1_11_12_13(TyD
);
267 if (1) test_sha512su1_12_13_14(TyD
);
268 if (1) test_sha512su1_13_14_15(TyD
);
269 if (1) test_sha512su1_14_15_16(TyD
);
270 if (1) test_sha512su1_15_16_17(TyD
);
271 if (1) test_sha512su1_16_17_18(TyD
);
272 if (1) test_sha512su1_17_18_19(TyD
);
273 if (1) test_sha512su1_18_19_20(TyD
);
274 if (1) test_sha512su1_19_20_21(TyD
);
275 if (1) test_sha512su1_20_21_22(TyD
);
276 if (1) test_sha512su1_21_22_23(TyD
);
277 if (1) test_sha512su1_22_23_24(TyD
);
278 if (1) test_sha512su1_23_24_25(TyD
);
279 if (1) test_sha512su1_24_25_26(TyD
);
280 if (1) test_sha512su1_25_26_27(TyD
);
281 if (1) test_sha512su1_26_27_28(TyD
);
282 if (1) test_sha512su1_27_28_29(TyD
);
283 if (1) test_sha512su1_28_29_30(TyD
);
284 if (1) test_sha512su1_29_30_31(TyD
);
289 /* ---------------------------------------------------------------- */
290 /* -- List of instructions tested in order of execution. -- */
291 /* -- Useful strings when searching for blocks of test cases. -- */
292 /* ---------------------------------------------------------------- */
294 SHA512H <Qd>, <Qn>, <Vm>.2D SHA512 Hash update part 1
295 SHA512H2 <Qd>, <Qn>, <Vm>.2D SHA512 Hash update part 2
296 SHA512SU0 <Vd>.2D, <Vn>.2D SHA512 Schedule Update 0
297 SHA512SU1 <Vd>.2D, <Vn>.2D, <Vm>.2D SHA512 Schedule Update 1