summaryrefslogtreecommitdiff
path: root/src/lib/libcrypto/ripemd/ripemd.c
diff options
context:
space:
mode:
authorjsing <>2023-08-10 11:04:30 +0000
committerjsing <>2023-08-10 11:04:30 +0000
commitf6e99d3e9a37d3bed7122d2f97eee891c310d170 (patch)
tree4c455b7d9c28fc06fc4180931849a0aaec03a8b4 /src/lib/libcrypto/ripemd/ripemd.c
parent5a77e73fb0ac46302afb79b0f971bd8ccd2c3979 (diff)
downloadopenbsd-f6e99d3e9a37d3bed7122d2f97eee891c310d170.tar.gz
openbsd-f6e99d3e9a37d3bed7122d2f97eee891c310d170.tar.bz2
openbsd-f6e99d3e9a37d3bed7122d2f97eee891c310d170.zip
Inline X variables definitions.
Inline the WL and WR defines, which only add yet another layer of abstraction and make the code harder to follow. No change to generated assembly. Discussed with tb@
Diffstat (limited to 'src/lib/libcrypto/ripemd/ripemd.c')
-rw-r--r--src/lib/libcrypto/ripemd/ripemd.c348
1 files changed, 174 insertions, 174 deletions
diff --git a/src/lib/libcrypto/ripemd/ripemd.c b/src/lib/libcrypto/ripemd/ripemd.c
index ae8be98ee7..24b5986576 100644
--- a/src/lib/libcrypto/ripemd/ripemd.c
+++ b/src/lib/libcrypto/ripemd/ripemd.c
@@ -1,4 +1,4 @@
1/* $OpenBSD: ripemd.c,v 1.4 2023/08/10 11:00:46 jsing Exp $ */ 1/* $OpenBSD: ripemd.c,v 1.5 2023/08/10 11:04:30 jsing Exp $ */
2/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) 2/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com)
3 * All rights reserved. 3 * All rights reserved.
4 * 4 *
@@ -128,27 +128,27 @@ __END_HIDDEN_DECLS
128#include "rmdconst.h" 128#include "rmdconst.h"
129 129
130#define RIP1(a,b,c,d,e,w,s) { \ 130#define RIP1(a,b,c,d,e,w,s) { \
131 a+=F1(b,c,d)+X(w); \ 131 a+=F1(b,c,d)+w; \
132 a=ROTATE(a,s)+e; \ 132 a=ROTATE(a,s)+e; \
133 c=ROTATE(c,10); } 133 c=ROTATE(c,10); }
134 134
135#define RIP2(a,b,c,d,e,w,s,K) { \ 135#define RIP2(a,b,c,d,e,w,s,K) { \
136 a+=F2(b,c,d)+X(w)+K; \ 136 a+=F2(b,c,d)+w+K; \
137 a=ROTATE(a,s)+e; \ 137 a=ROTATE(a,s)+e; \
138 c=ROTATE(c,10); } 138 c=ROTATE(c,10); }
139 139
140#define RIP3(a,b,c,d,e,w,s,K) { \ 140#define RIP3(a,b,c,d,e,w,s,K) { \
141 a+=F3(b,c,d)+X(w)+K; \ 141 a+=F3(b,c,d)+w+K; \
142 a=ROTATE(a,s)+e; \ 142 a=ROTATE(a,s)+e; \
143 c=ROTATE(c,10); } 143 c=ROTATE(c,10); }
144 144
145#define RIP4(a,b,c,d,e,w,s,K) { \ 145#define RIP4(a,b,c,d,e,w,s,K) { \
146 a+=F4(b,c,d)+X(w)+K; \ 146 a+=F4(b,c,d)+w+K; \
147 a=ROTATE(a,s)+e; \ 147 a=ROTATE(a,s)+e; \
148 c=ROTATE(c,10); } 148 c=ROTATE(c,10); }
149 149
150#define RIP5(a,b,c,d,e,w,s,K) { \ 150#define RIP5(a,b,c,d,e,w,s,K) { \
151 a+=F5(b,c,d)+X(w)+K; \ 151 a+=F5(b,c,d)+w+K; \
152 a=ROTATE(a,s)+e; \ 152 a=ROTATE(a,s)+e; \
153 c=ROTATE(c,10); } 153 c=ROTATE(c,10); }
154 154
@@ -203,118 +203,118 @@ ripemd160_block_data_order(RIPEMD160_CTX *ctx, const void *p, size_t num)
203 X( 0) = l; 203 X( 0) = l;
204 HOST_c2l(data, l); 204 HOST_c2l(data, l);
205 X( 1) = l; 205 X( 1) = l;
206 RIP1(A, B, C, D, E, WL00, 11); 206 RIP1(A, B, C, D, E, X(0), 11);
207 HOST_c2l(data, l); 207 HOST_c2l(data, l);
208 X( 2) = l; 208 X( 2) = l;
209 RIP1(E, A, B, C, D, WL01, 14); 209 RIP1(E, A, B, C, D, X(1), 14);
210 HOST_c2l(data, l); 210 HOST_c2l(data, l);
211 X( 3) = l; 211 X( 3) = l;
212 RIP1(D, E, A, B, C, WL02, 15); 212 RIP1(D, E, A, B, C, X(2), 15);
213 HOST_c2l(data, l); 213 HOST_c2l(data, l);
214 X( 4) = l; 214 X( 4) = l;
215 RIP1(C, D, E, A, B, WL03, 12); 215 RIP1(C, D, E, A, B, X(3), 12);
216 HOST_c2l(data, l); 216 HOST_c2l(data, l);
217 X( 5) = l; 217 X( 5) = l;
218 RIP1(B, C, D, E, A, WL04, 5); 218 RIP1(B, C, D, E, A, X(4), 5);
219 HOST_c2l(data, l); 219 HOST_c2l(data, l);
220 X( 6) = l; 220 X( 6) = l;
221 RIP1(A, B, C, D, E, WL05, 8); 221 RIP1(A, B, C, D, E, X(5), 8);
222 HOST_c2l(data, l); 222 HOST_c2l(data, l);
223 X( 7) = l; 223 X( 7) = l;
224 RIP1(E, A, B, C, D, WL06, 7); 224 RIP1(E, A, B, C, D, X(6), 7);
225 HOST_c2l(data, l); 225 HOST_c2l(data, l);
226 X( 8) = l; 226 X( 8) = l;
227 RIP1(D, E, A, B, C, WL07, 9); 227 RIP1(D, E, A, B, C, X(7), 9);
228 HOST_c2l(data, l); 228 HOST_c2l(data, l);
229 X( 9) = l; 229 X( 9) = l;
230 RIP1(C, D, E, A, B, WL08, 11); 230 RIP1(C, D, E, A, B, X(8), 11);
231 HOST_c2l(data, l); 231 HOST_c2l(data, l);
232 X(10) = l; 232 X(10) = l;
233 RIP1(B, C, D, E, A, WL09, 13); 233 RIP1(B, C, D, E, A, X(9), 13);
234 HOST_c2l(data, l); 234 HOST_c2l(data, l);
235 X(11) = l; 235 X(11) = l;
236 RIP1(A, B, C, D, E, WL10, 14); 236 RIP1(A, B, C, D, E, X(10), 14);
237 HOST_c2l(data, l); 237 HOST_c2l(data, l);
238 X(12) = l; 238 X(12) = l;
239 RIP1(E, A, B, C, D, WL11, 15); 239 RIP1(E, A, B, C, D, X(11), 15);
240 HOST_c2l(data, l); 240 HOST_c2l(data, l);
241 X(13) = l; 241 X(13) = l;
242 RIP1(D, E, A, B, C, WL12, 6); 242 RIP1(D, E, A, B, C, X(12), 6);
243 HOST_c2l(data, l); 243 HOST_c2l(data, l);
244 X(14) = l; 244 X(14) = l;
245 RIP1(C, D, E, A, B, WL13, 7); 245 RIP1(C, D, E, A, B, X(13), 7);
246 HOST_c2l(data, l); 246 HOST_c2l(data, l);
247 X(15) = l; 247 X(15) = l;
248 RIP1(B, C, D, E, A, WL14, 9); 248 RIP1(B, C, D, E, A, X(14), 9);
249 RIP1(A, B, C, D, E, WL15, 8); 249 RIP1(A, B, C, D, E, X(15), 8);
250 250
251 RIP2(E, A, B, C, D, WL16, 7, KL1); 251 RIP2(E, A, B, C, D, X(7), 7, KL1);
252 RIP2(D, E, A, B, C, WL17, 6, KL1); 252 RIP2(D, E, A, B, C, X(4), 6, KL1);
253 RIP2(C, D, E, A, B, WL18, 8, KL1); 253 RIP2(C, D, E, A, B, X(13), 8, KL1);
254 RIP2(B, C, D, E, A, WL19, 13, KL1); 254 RIP2(B, C, D, E, A, X(1), 13, KL1);
255 RIP2(A, B, C, D, E, WL20, 11, KL1); 255 RIP2(A, B, C, D, E, X(10), 11, KL1);
256 RIP2(E, A, B, C, D, WL21, 9, KL1); 256 RIP2(E, A, B, C, D, X(6), 9, KL1);
257 RIP2(D, E, A, B, C, WL22, 7, KL1); 257 RIP2(D, E, A, B, C, X(15), 7, KL1);
258 RIP2(C, D, E, A, B, WL23, 15, KL1); 258 RIP2(C, D, E, A, B, X(3), 15, KL1);
259 RIP2(B, C, D, E, A, WL24, 7, KL1); 259 RIP2(B, C, D, E, A, X(12), 7, KL1);
260 RIP2(A, B, C, D, E, WL25, 12, KL1); 260 RIP2(A, B, C, D, E, X(0), 12, KL1);
261 RIP2(E, A, B, C, D, WL26, 15, KL1); 261 RIP2(E, A, B, C, D, X(9), 15, KL1);
262 RIP2(D, E, A, B, C, WL27, 9, KL1); 262 RIP2(D, E, A, B, C, X(5), 9, KL1);
263 RIP2(C, D, E, A, B, WL28, 11, KL1); 263 RIP2(C, D, E, A, B, X(2), 11, KL1);
264 RIP2(B, C, D, E, A, WL29, 7, KL1); 264 RIP2(B, C, D, E, A, X(14), 7, KL1);
265 RIP2(A, B, C, D, E, WL30, 13, KL1); 265 RIP2(A, B, C, D, E, X(11), 13, KL1);
266 RIP2(E, A, B, C, D, WL31, 12, KL1); 266 RIP2(E, A, B, C, D, X(8), 12, KL1);
267 267
268 RIP3(D, E, A, B, C, WL32, 11, KL2); 268 RIP3(D, E, A, B, C, X(3), 11, KL2);
269 RIP3(C, D, E, A, B, WL33, 13, KL2); 269 RIP3(C, D, E, A, B, X(10), 13, KL2);
270 RIP3(B, C, D, E, A, WL34, 6, KL2); 270 RIP3(B, C, D, E, A, X(14), 6, KL2);
271 RIP3(A, B, C, D, E, WL35, 7, KL2); 271 RIP3(A, B, C, D, E, X(4), 7, KL2);
272 RIP3(E, A, B, C, D, WL36, 14, KL2); 272 RIP3(E, A, B, C, D, X(9), 14, KL2);
273 RIP3(D, E, A, B, C, WL37, 9, KL2); 273 RIP3(D, E, A, B, C, X(15), 9, KL2);
274 RIP3(C, D, E, A, B, WL38, 13, KL2); 274 RIP3(C, D, E, A, B, X(8), 13, KL2);
275 RIP3(B, C, D, E, A, WL39, 15, KL2); 275 RIP3(B, C, D, E, A, X(1), 15, KL2);
276 RIP3(A, B, C, D, E, WL40, 14, KL2); 276 RIP3(A, B, C, D, E, X(2), 14, KL2);
277 RIP3(E, A, B, C, D, WL41, 8, KL2); 277 RIP3(E, A, B, C, D, X(7), 8, KL2);
278 RIP3(D, E, A, B, C, WL42, 13, KL2); 278 RIP3(D, E, A, B, C, X(0), 13, KL2);
279 RIP3(C, D, E, A, B, WL43, 6, KL2); 279 RIP3(C, D, E, A, B, X(6), 6, KL2);
280 RIP3(B, C, D, E, A, WL44, 5, KL2); 280 RIP3(B, C, D, E, A, X(13), 5, KL2);
281 RIP3(A, B, C, D, E, WL45, 12, KL2); 281 RIP3(A, B, C, D, E, X(11), 12, KL2);
282 RIP3(E, A, B, C, D, WL46, 7, KL2); 282 RIP3(E, A, B, C, D, X(5), 7, KL2);
283 RIP3(D, E, A, B, C, WL47, 5, KL2); 283 RIP3(D, E, A, B, C, X(12), 5, KL2);
284 284
285 RIP4(C, D, E, A, B, WL48, 11, KL3); 285 RIP4(C, D, E, A, B, X(1), 11, KL3);
286 RIP4(B, C, D, E, A, WL49, 12, KL3); 286 RIP4(B, C, D, E, A, X(9), 12, KL3);
287 RIP4(A, B, C, D, E, WL50, 14, KL3); 287 RIP4(A, B, C, D, E, X(11), 14, KL3);
288 RIP4(E, A, B, C, D, WL51, 15, KL3); 288 RIP4(E, A, B, C, D, X(10), 15, KL3);
289 RIP4(D, E, A, B, C, WL52, 14, KL3); 289 RIP4(D, E, A, B, C, X(0), 14, KL3);
290 RIP4(C, D, E, A, B, WL53, 15, KL3); 290 RIP4(C, D, E, A, B, X(8), 15, KL3);
291 RIP4(B, C, D, E, A, WL54, 9, KL3); 291 RIP4(B, C, D, E, A, X(12), 9, KL3);
292 RIP4(A, B, C, D, E, WL55, 8, KL3); 292 RIP4(A, B, C, D, E, X(4), 8, KL3);
293 RIP4(E, A, B, C, D, WL56, 9, KL3); 293 RIP4(E, A, B, C, D, X(13), 9, KL3);
294 RIP4(D, E, A, B, C, WL57, 14, KL3); 294 RIP4(D, E, A, B, C, X(3), 14, KL3);
295 RIP4(C, D, E, A, B, WL58, 5, KL3); 295 RIP4(C, D, E, A, B, X(7), 5, KL3);
296 RIP4(B, C, D, E, A, WL59, 6, KL3); 296 RIP4(B, C, D, E, A, X(15), 6, KL3);
297 RIP4(A, B, C, D, E, WL60, 8, KL3); 297 RIP4(A, B, C, D, E, X(14), 8, KL3);
298 RIP4(E, A, B, C, D, WL61, 6, KL3); 298 RIP4(E, A, B, C, D, X(5), 6, KL3);
299 RIP4(D, E, A, B, C, WL62, 5, KL3); 299 RIP4(D, E, A, B, C, X(6), 5, KL3);
300 RIP4(C, D, E, A, B, WL63, 12, KL3); 300 RIP4(C, D, E, A, B, X(2), 12, KL3);
301 301
302 RIP5(B, C, D, E, A, WL64, 9, KL4); 302 RIP5(B, C, D, E, A, X(4), 9, KL4);
303 RIP5(A, B, C, D, E, WL65, 15, KL4); 303 RIP5(A, B, C, D, E, X(0), 15, KL4);
304 RIP5(E, A, B, C, D, WL66, 5, KL4); 304 RIP5(E, A, B, C, D, X(5), 5, KL4);
305 RIP5(D, E, A, B, C, WL67, 11, KL4); 305 RIP5(D, E, A, B, C, X(9), 11, KL4);
306 RIP5(C, D, E, A, B, WL68, 6, KL4); 306 RIP5(C, D, E, A, B, X(7), 6, KL4);
307 RIP5(B, C, D, E, A, WL69, 8, KL4); 307 RIP5(B, C, D, E, A, X(12), 8, KL4);
308 RIP5(A, B, C, D, E, WL70, 13, KL4); 308 RIP5(A, B, C, D, E, X(2), 13, KL4);
309 RIP5(E, A, B, C, D, WL71, 12, KL4); 309 RIP5(E, A, B, C, D, X(10), 12, KL4);
310 RIP5(D, E, A, B, C, WL72, 5, KL4); 310 RIP5(D, E, A, B, C, X(14), 5, KL4);
311 RIP5(C, D, E, A, B, WL73, 12, KL4); 311 RIP5(C, D, E, A, B, X(1), 12, KL4);
312 RIP5(B, C, D, E, A, WL74, 13, KL4); 312 RIP5(B, C, D, E, A, X(3), 13, KL4);
313 RIP5(A, B, C, D, E, WL75, 14, KL4); 313 RIP5(A, B, C, D, E, X(8), 14, KL4);
314 RIP5(E, A, B, C, D, WL76, 11, KL4); 314 RIP5(E, A, B, C, D, X(11), 11, KL4);
315 RIP5(D, E, A, B, C, WL77, 8, KL4); 315 RIP5(D, E, A, B, C, X(6), 8, KL4);
316 RIP5(C, D, E, A, B, WL78, 5, KL4); 316 RIP5(C, D, E, A, B, X(15), 5, KL4);
317 RIP5(B, C, D, E, A, WL79, 6, KL4); 317 RIP5(B, C, D, E, A, X(13), 6, KL4);
318 318
319 a = A; 319 a = A;
320 b = B; 320 b = B;
@@ -328,90 +328,90 @@ ripemd160_block_data_order(RIPEMD160_CTX *ctx, const void *p, size_t num)
328 D = ctx->D; 328 D = ctx->D;
329 E = ctx->E; 329 E = ctx->E;
330 330
331 RIP5(A, B, C, D, E, WR00, 8, KR0); 331 RIP5(A, B, C, D, E, X(5), 8, KR0);
332 RIP5(E, A, B, C, D, WR01, 9, KR0); 332 RIP5(E, A, B, C, D, X(14), 9, KR0);
333 RIP5(D, E, A, B, C, WR02, 9, KR0); 333 RIP5(D, E, A, B, C, X(7), 9, KR0);
334 RIP5(C, D, E, A, B, WR03, 11, KR0); 334 RIP5(C, D, E, A, B, X(0), 11, KR0);
335 RIP5(B, C, D, E, A, WR04, 13, KR0); 335 RIP5(B, C, D, E, A, X(9), 13, KR0);
336 RIP5(A, B, C, D, E, WR05, 15, KR0); 336 RIP5(A, B, C, D, E, X(2), 15, KR0);
337 RIP5(E, A, B, C, D, WR06, 15, KR0); 337 RIP5(E, A, B, C, D, X(11), 15, KR0);
338 RIP5(D, E, A, B, C, WR07, 5, KR0); 338 RIP5(D, E, A, B, C, X(4), 5, KR0);
339 RIP5(C, D, E, A, B, WR08, 7, KR0); 339 RIP5(C, D, E, A, B, X(13), 7, KR0);
340 RIP5(B, C, D, E, A, WR09, 7, KR0); 340 RIP5(B, C, D, E, A, X(6), 7, KR0);
341 RIP5(A, B, C, D, E, WR10, 8, KR0); 341 RIP5(A, B, C, D, E, X(15), 8, KR0);
342 RIP5(E, A, B, C, D, WR11, 11, KR0); 342 RIP5(E, A, B, C, D, X(8), 11, KR0);
343 RIP5(D, E, A, B, C, WR12, 14, KR0); 343 RIP5(D, E, A, B, C, X(1), 14, KR0);
344 RIP5(C, D, E, A, B, WR13, 14, KR0); 344 RIP5(C, D, E, A, B, X(10), 14, KR0);
345 RIP5(B, C, D, E, A, WR14, 12, KR0); 345 RIP5(B, C, D, E, A, X(3), 12, KR0);
346 RIP5(A, B, C, D, E, WR15, 6, KR0); 346 RIP5(A, B, C, D, E, X(12), 6, KR0);
347 347
348 RIP4(E, A, B, C, D, WR16, 9, KR1); 348 RIP4(E, A, B, C, D, X(6), 9, KR1);
349 RIP4(D, E, A, B, C, WR17, 13, KR1); 349 RIP4(D, E, A, B, C, X(11), 13, KR1);
350 RIP4(C, D, E, A, B, WR18, 15, KR1); 350 RIP4(C, D, E, A, B, X(3), 15, KR1);
351 RIP4(B, C, D, E, A, WR19, 7, KR1); 351 RIP4(B, C, D, E, A, X(7), 7, KR1);
352 RIP4(A, B, C, D, E, WR20, 12, KR1); 352 RIP4(A, B, C, D, E, X(0), 12, KR1);
353 RIP4(E, A, B, C, D, WR21, 8, KR1); 353 RIP4(E, A, B, C, D, X(13), 8, KR1);
354 RIP4(D, E, A, B, C, WR22, 9, KR1); 354 RIP4(D, E, A, B, C, X(5), 9, KR1);
355 RIP4(C, D, E, A, B, WR23, 11, KR1); 355 RIP4(C, D, E, A, B, X(10), 11, KR1);
356 RIP4(B, C, D, E, A, WR24, 7, KR1); 356 RIP4(B, C, D, E, A, X(14), 7, KR1);
357 RIP4(A, B, C, D, E, WR25, 7, KR1); 357 RIP4(A, B, C, D, E, X(15), 7, KR1);
358 RIP4(E, A, B, C, D, WR26, 12, KR1); 358 RIP4(E, A, B, C, D, X(8), 12, KR1);
359 RIP4(D, E, A, B, C, WR27, 7, KR1); 359 RIP4(D, E, A, B, C, X(12), 7, KR1);
360 RIP4(C, D, E, A, B, WR28, 6, KR1); 360 RIP4(C, D, E, A, B, X(4), 6, KR1);
361 RIP4(B, C, D, E, A, WR29, 15, KR1); 361 RIP4(B, C, D, E, A, X(9), 15, KR1);
362 RIP4(A, B, C, D, E, WR30, 13, KR1); 362 RIP4(A, B, C, D, E, X(1), 13, KR1);
363 RIP4(E, A, B, C, D, WR31, 11, KR1); 363 RIP4(E, A, B, C, D, X(2), 11, KR1);
364 364
365 RIP3(D, E, A, B, C, WR32, 9, KR2); 365 RIP3(D, E, A, B, C, X(15), 9, KR2);
366 RIP3(C, D, E, A, B, WR33, 7, KR2); 366 RIP3(C, D, E, A, B, X(5), 7, KR2);
367 RIP3(B, C, D, E, A, WR34, 15, KR2); 367 RIP3(B, C, D, E, A, X(1), 15, KR2);
368 RIP3(A, B, C, D, E, WR35, 11, KR2); 368 RIP3(A, B, C, D, E, X(3), 11, KR2);
369 RIP3(E, A, B, C, D, WR36, 8, KR2); 369 RIP3(E, A, B, C, D, X(7), 8, KR2);
370 RIP3(D, E, A, B, C, WR37, 6, KR2); 370 RIP3(D, E, A, B, C, X(14), 6, KR2);
371 RIP3(C, D, E, A, B, WR38, 6, KR2); 371 RIP3(C, D, E, A, B, X(6), 6, KR2);
372 RIP3(B, C, D, E, A, WR39, 14, KR2); 372 RIP3(B, C, D, E, A, X(9), 14, KR2);
373 RIP3(A, B, C, D, E, WR40, 12, KR2); 373 RIP3(A, B, C, D, E, X(11), 12, KR2);
374 RIP3(E, A, B, C, D, WR41, 13, KR2); 374 RIP3(E, A, B, C, D, X(8), 13, KR2);
375 RIP3(D, E, A, B, C, WR42, 5, KR2); 375 RIP3(D, E, A, B, C, X(12), 5, KR2);
376 RIP3(C, D, E, A, B, WR43, 14, KR2); 376 RIP3(C, D, E, A, B, X(2), 14, KR2);
377 RIP3(B, C, D, E, A, WR44, 13, KR2); 377 RIP3(B, C, D, E, A, X(10), 13, KR2);
378 RIP3(A, B, C, D, E, WR45, 13, KR2); 378 RIP3(A, B, C, D, E, X(0), 13, KR2);
379 RIP3(E, A, B, C, D, WR46, 7, KR2); 379 RIP3(E, A, B, C, D, X(4), 7, KR2);
380 RIP3(D, E, A, B, C, WR47, 5, KR2); 380 RIP3(D, E, A, B, C, X(13), 5, KR2);
381 381
382 RIP2(C, D, E, A, B, WR48, 15, KR3); 382 RIP2(C, D, E, A, B, X(8), 15, KR3);
383 RIP2(B, C, D, E, A, WR49, 5, KR3); 383 RIP2(B, C, D, E, A, X(6), 5, KR3);
384 RIP2(A, B, C, D, E, WR50, 8, KR3); 384 RIP2(A, B, C, D, E, X(4), 8, KR3);
385 RIP2(E, A, B, C, D, WR51, 11, KR3); 385 RIP2(E, A, B, C, D, X(1), 11, KR3);
386 RIP2(D, E, A, B, C, WR52, 14, KR3); 386 RIP2(D, E, A, B, C, X(3), 14, KR3);
387 RIP2(C, D, E, A, B, WR53, 14, KR3); 387 RIP2(C, D, E, A, B, X(11), 14, KR3);
388 RIP2(B, C, D, E, A, WR54, 6, KR3); 388 RIP2(B, C, D, E, A, X(15), 6, KR3);
389 RIP2(A, B, C, D, E, WR55, 14, KR3); 389 RIP2(A, B, C, D, E, X(0), 14, KR3);
390 RIP2(E, A, B, C, D, WR56, 6, KR3); 390 RIP2(E, A, B, C, D, X(5), 6, KR3);
391 RIP2(D, E, A, B, C, WR57, 9, KR3); 391 RIP2(D, E, A, B, C, X(12), 9, KR3);
392 RIP2(C, D, E, A, B, WR58, 12, KR3); 392 RIP2(C, D, E, A, B, X(2), 12, KR3);
393 RIP2(B, C, D, E, A, WR59, 9, KR3); 393 RIP2(B, C, D, E, A, X(13), 9, KR3);
394 RIP2(A, B, C, D, E, WR60, 12, KR3); 394 RIP2(A, B, C, D, E, X(9), 12, KR3);
395 RIP2(E, A, B, C, D, WR61, 5, KR3); 395 RIP2(E, A, B, C, D, X(7), 5, KR3);
396 RIP2(D, E, A, B, C, WR62, 15, KR3); 396 RIP2(D, E, A, B, C, X(10), 15, KR3);
397 RIP2(C, D, E, A, B, WR63, 8, KR3); 397 RIP2(C, D, E, A, B, X(14), 8, KR3);
398 398
399 RIP1(B, C, D, E, A, WR64, 8); 399 RIP1(B, C, D, E, A, X(12), 8);
400 RIP1(A, B, C, D, E, WR65, 5); 400 RIP1(A, B, C, D, E, X(15), 5);
401 RIP1(E, A, B, C, D, WR66, 12); 401 RIP1(E, A, B, C, D, X(10), 12);
402 RIP1(D, E, A, B, C, WR67, 9); 402 RIP1(D, E, A, B, C, X(4), 9);
403 RIP1(C, D, E, A, B, WR68, 12); 403 RIP1(C, D, E, A, B, X(1), 12);
404 RIP1(B, C, D, E, A, WR69, 5); 404 RIP1(B, C, D, E, A, X(5), 5);
405 RIP1(A, B, C, D, E, WR70, 14); 405 RIP1(A, B, C, D, E, X(8), 14);
406 RIP1(E, A, B, C, D, WR71, 6); 406 RIP1(E, A, B, C, D, X(7), 6);
407 RIP1(D, E, A, B, C, WR72, 8); 407 RIP1(D, E, A, B, C, X(6), 8);
408 RIP1(C, D, E, A, B, WR73, 13); 408 RIP1(C, D, E, A, B, X(2), 13);
409 RIP1(B, C, D, E, A, WR74, 6); 409 RIP1(B, C, D, E, A, X(13), 6);
410 RIP1(A, B, C, D, E, WR75, 5); 410 RIP1(A, B, C, D, E, X(14), 5);
411 RIP1(E, A, B, C, D, WR76, 15); 411 RIP1(E, A, B, C, D, X(0), 15);
412 RIP1(D, E, A, B, C, WR77, 13); 412 RIP1(D, E, A, B, C, X(3), 13);
413 RIP1(C, D, E, A, B, WR78, 11); 413 RIP1(C, D, E, A, B, X(9), 11);
414 RIP1(B, C, D, E, A, WR79, 11); 414 RIP1(B, C, D, E, A, X(11), 11);
415 415
416 D = ctx->B + c + D; 416 D = ctx->B + c + D;
417 ctx->B = ctx->C + d + E; 417 ctx->B = ctx->C + d + E;