diff options
author | jsing <> | 2016-09-04 13:39:48 +0000 |
---|---|---|
committer | jsing <> | 2016-09-04 13:39:48 +0000 |
commit | becd55246777151f47f161f226165d6bbae02434 (patch) | |
tree | 8448743b8bbc8081b0156ee839d5f261bd4b2e7f /src | |
parent | b2c01adca87a476df9e30dd7c0b91b5c06d59cf6 (diff) | |
download | openbsd-becd55246777151f47f161f226165d6bbae02434.tar.gz openbsd-becd55246777151f47f161f226165d6bbae02434.tar.bz2 openbsd-becd55246777151f47f161f226165d6bbae02434.zip |
Less vax.
ok deraadt@
Diffstat (limited to 'src')
-rw-r--r-- | src/lib/libcrypto/arch/vax/Makefile.inc | 21 | ||||
-rw-r--r-- | src/lib/libcrypto/arch/vax/bn_asm_vax.S | 436 | ||||
-rw-r--r-- | src/lib/libcrypto/arch/vax/opensslconf.h | 157 | ||||
-rw-r--r-- | src/lib/libcrypto/whrlpool/wp_block.c | 4 |
4 files changed, 1 insertions, 617 deletions
diff --git a/src/lib/libcrypto/arch/vax/Makefile.inc b/src/lib/libcrypto/arch/vax/Makefile.inc deleted file mode 100644 index f7764cf44a..0000000000 --- a/src/lib/libcrypto/arch/vax/Makefile.inc +++ /dev/null | |||
@@ -1,21 +0,0 @@ | |||
1 | # $OpenBSD: Makefile.inc,v 1.2 2014/11/17 20:31:22 miod Exp $ | ||
2 | |||
3 | # vax-specific libcrypto build rules | ||
4 | |||
5 | # aes | ||
6 | CFLAGS+=-DOPENSSL_NO_ASM | ||
7 | SRCS+= aes_core.c aes_cbc.c | ||
8 | # bf | ||
9 | SRCS+= bf_enc.c | ||
10 | # bn | ||
11 | SRCS+= bn_asm_vax.S | ||
12 | # camellia | ||
13 | SRCS+= camellia.c cmll_cbc.c cmll_misc.c | ||
14 | # des | ||
15 | SRCS+= des_enc.c fcrypt_b.c | ||
16 | # rc4 | ||
17 | SRCS+= rc4_enc.c rc4_skey.c | ||
18 | ## rc5 | ||
19 | #SRCS+= rc5_enc.c | ||
20 | # whrlpool | ||
21 | SRCS+= wp_block.c | ||
diff --git a/src/lib/libcrypto/arch/vax/bn_asm_vax.S b/src/lib/libcrypto/arch/vax/bn_asm_vax.S deleted file mode 100644 index 2969ae9dac..0000000000 --- a/src/lib/libcrypto/arch/vax/bn_asm_vax.S +++ /dev/null | |||
@@ -1,436 +0,0 @@ | |||
1 | # $OpenBSD: bn_asm_vax.S,v 1.1 2014/04/11 22:51:53 miod Exp $ | ||
2 | # $NetBSD: bn_asm_vax.S,v 1.1 2003/11/03 10:22:28 ragge Exp $ | ||
3 | |||
4 | #include <machine/asm.h> | ||
5 | |||
6 | # w.j.m. 15-jan-1999 | ||
7 | # | ||
8 | # it's magic ... | ||
9 | # | ||
10 | # ULONG bn_mul_add_words(ULONG r[],ULONG a[],int n,ULONG w) { | ||
11 | # ULONG c = 0; | ||
12 | # int i; | ||
13 | # for(i = 0; i < n; i++) <c,r[i]> := r[i] + c + a[i] * w ; | ||
14 | # return c; | ||
15 | # } | ||
16 | |||
17 | ENTRY(bn_mul_add_words,R6) | ||
18 | movl 4(%ap),%r2 # *r | ||
19 | movl 8(%ap),%r3 # *a | ||
20 | movl 12(%ap),%r4 # n | ||
21 | movl 16(%ap),%r5 # w | ||
22 | clrl %r6 # return value ("carry") | ||
23 | |||
24 | 0: emul %r5,(%r3),(%r2),%r0 # w * a[0] + r[0] -> r0 | ||
25 | |||
26 | # fixup for "negative" r[] | ||
27 | tstl (%r2) | ||
28 | bgeq 1f | ||
29 | incl %r1 # add 1 to highword | ||
30 | |||
31 | 1: # add saved carry to result | ||
32 | addl2 %r6,%r0 | ||
33 | adwc $0,%r1 | ||
34 | |||
35 | # combined fixup for "negative" w, a[] | ||
36 | tstl %r5 # if w is negative... | ||
37 | bgeq 1f | ||
38 | addl2 (%r3),%r1 # ...add a[0] again to highword | ||
39 | 1: tstl (%r3) # if a[0] is negative... | ||
40 | bgeq 1f | ||
41 | addl2 %r5,%r1 # ...add w again to highword | ||
42 | 1: | ||
43 | movl %r0,(%r2)+ # save low word in dest & advance *r | ||
44 | addl2 $4,%r3 # advance *a | ||
45 | movl %r1,%r6 # high word in r6 for return value | ||
46 | |||
47 | sobgtr %r4,0b # loop? | ||
48 | |||
49 | movl %r6,%r0 | ||
50 | ret | ||
51 | |||
52 | # .title vax_bn_mul_words unsigned multiply & add, 32*32+32=>64 | ||
53 | #; | ||
54 | #; w.j.m. 15-jan-1999 | ||
55 | #; | ||
56 | #; it's magic ... | ||
57 | #; | ||
58 | #; ULONG bn_mul_words(ULONG r[],ULONG a[],int n,ULONG w) { | ||
59 | #; ULONG c = 0; | ||
60 | #; int i; | ||
61 | #; for(i = 0; i < num; i++) <c,r[i]> := a[i] * w + c ; | ||
62 | #; return(c); | ||
63 | #; } | ||
64 | # | ||
65 | |||
66 | ENTRY(bn_mul_words,R6) | ||
67 | movl 4(%ap),%r2 # *r | ||
68 | movl 8(%ap),%r3 # *a | ||
69 | movl 12(%ap),%r4 # n | ||
70 | movl 16(%ap),%r5 # w | ||
71 | clrl %r6 # carry | ||
72 | |||
73 | 0: emul %r5,(%r3),%r6,%r0 # w * a[0] + carry -> r0 | ||
74 | |||
75 | # fixup for "negative" carry | ||
76 | tstl %r6 | ||
77 | bgeq 1f | ||
78 | incl %r1 | ||
79 | |||
80 | 1: # combined fixup for "negative" w, a[] | ||
81 | tstl %r5 | ||
82 | bgeq 1f | ||
83 | addl2 (%r3),%r1 | ||
84 | 1: tstl (%r3) | ||
85 | bgeq 1f | ||
86 | addl2 %r5,%r1 | ||
87 | |||
88 | 1: movl %r0,(%r2)+ | ||
89 | addl2 $4,%r3 | ||
90 | movl %r1,%r6 | ||
91 | |||
92 | sobgtr %r4,0b | ||
93 | |||
94 | movl %r6,%r0 | ||
95 | ret | ||
96 | |||
97 | |||
98 | |||
99 | # .title vax_bn_sqr_words unsigned square, 32*32=>64 | ||
100 | #; | ||
101 | #; w.j.m. 15-jan-1999 | ||
102 | #; | ||
103 | #; it's magic ... | ||
104 | #; | ||
105 | #; void bn_sqr_words(ULONG r[],ULONG a[],int n) { | ||
106 | #; int i; | ||
107 | #; for(i = 0; i < n; i++) <r[2*i+1],r[2*i]> := a[i] * a[i] ; | ||
108 | #; } | ||
109 | # | ||
110 | |||
111 | ENTRY(bn_sqr_words,0) | ||
112 | movl 4(%ap),%r2 # r | ||
113 | movl 8(%ap),%r3 # a | ||
114 | movl 12(%ap),%r4 # n | ||
115 | |||
116 | 0: movl (%r3)+,%r5 # r5 = a[] & advance | ||
117 | |||
118 | emul %r5,%r5,$0,%r0 # a[0] * a[0] + 0 -> r0 | ||
119 | |||
120 | # fixup for "negative" a[] | ||
121 | tstl %r5 | ||
122 | bgeq 1f | ||
123 | addl2 %r5,%r1 | ||
124 | addl2 %r5,%r1 | ||
125 | |||
126 | 1: movq %r0,(%r2)+ # store 64-bit result | ||
127 | |||
128 | sobgtr %r4,0b # loop | ||
129 | |||
130 | ret | ||
131 | |||
132 | |||
133 | # .title vax_bn_div_words unsigned divide | ||
134 | #; | ||
135 | #; Richard Levitte 20-Nov-2000 | ||
136 | #; | ||
137 | #; ULONG bn_div_words(ULONG h, ULONG l, ULONG d) | ||
138 | #; { | ||
139 | #; return ((ULONG)((((ULLONG)h)<<32)|l) / (ULLONG)d); | ||
140 | #; } | ||
141 | #; | ||
142 | #; Using EDIV would be very easy, if it didn't do signed calculations. | ||
143 | #; Any time any of the input numbers are signed, there are problems, | ||
144 | #; usually with integer overflow, at which point it returns useless | ||
145 | #; data (the quotient gets the value of l, and the remainder becomes 0). | ||
146 | #; | ||
147 | #; If it was just for the dividend, it would be very easy, just divide | ||
148 | #; it by 2 (unsigned), do the division, multiply the resulting quotient | ||
149 | #; and remainder by 2, add the bit that was dropped when dividing by 2 | ||
150 | #; to the remainder, and do some adjustment so the remainder doesn't | ||
151 | #; end up larger than the divisor. For some cases when the divisor is | ||
152 | #; negative (from EDIV's point of view, i.e. when the highest bit is set), | ||
153 | #; dividing the dividend by 2 isn't enough, and since some operations | ||
154 | #; might generate integer overflows even when the dividend is divided by | ||
155 | #; 4 (when the high part of the shifted down dividend ends up being exactly | ||
156 | #; half of the divisor, the result is the quotient 0x80000000, which is | ||
157 | #; negative...) it needs to be divided by 8. Furthermore, the divisor needs | ||
158 | #; to be divided by 2 (unsigned) as well, to avoid more problems with the sign. | ||
159 | #; In this case, a little extra fiddling with the remainder is required. | ||
160 | #; | ||
161 | #; So, the simplest way to handle this is always to divide the dividend | ||
162 | #; by 8, and to divide the divisor by 2 if it's highest bit is set. | ||
163 | #; After EDIV has been used, the quotient gets multiplied by 8 if the | ||
164 | #; original divisor was positive, otherwise 4. The remainder, oddly | ||
165 | #; enough, is *always* multiplied by 8. | ||
166 | #; NOTE: in the case mentioned above, where the high part of the shifted | ||
167 | #; down dividend ends up being exactly half the shifted down divisor, we | ||
168 | #; end up with a 33 bit quotient. That's no problem however, it usually | ||
169 | #; means we have ended up with a too large remainder as well, and the | ||
170 | #; problem is fixed by the last part of the algorithm (next paragraph). | ||
171 | #; | ||
172 | #; The routine ends with comparing the resulting remainder with the | ||
173 | #; original divisor and if the remainder is larger, subtract the | ||
174 | #; original divisor from it, and increase the quotient by 1. This is | ||
175 | #; done until the remainder is smaller than the divisor. | ||
176 | #; | ||
177 | #; The complete algorithm looks like this: | ||
178 | #; | ||
179 | #; d' = d | ||
180 | #; l' = l & 7 | ||
181 | #; [h,l] = [h,l] >> 3 | ||
182 | #; [q,r] = floor([h,l] / d) # This is the EDIV operation | ||
183 | #; if (q < 0) q = -q # I doubt this is necessary any more | ||
184 | #; | ||
185 | #; r' = r >> 29 | ||
186 | #; if (d' >= 0) | ||
187 | #; q' = q >> 29 | ||
188 | #; q = q << 3 | ||
189 | #; else | ||
190 | #; q' = q >> 30 | ||
191 | #; q = q << 2 | ||
192 | #; r = (r << 3) + l' | ||
193 | #; | ||
194 | #; if (d' < 0) | ||
195 | #; { | ||
196 | #; [r',r] = [r',r] - q | ||
197 | #; while ([r',r] < 0) | ||
198 | #; { | ||
199 | #; [r',r] = [r',r] + d | ||
200 | #; [q',q] = [q',q] - 1 | ||
201 | #; } | ||
202 | #; } | ||
203 | #; | ||
204 | #; while ([r',r] >= d') | ||
205 | #; { | ||
206 | #; [r',r] = [r',r] - d' | ||
207 | #; [q',q] = [q',q] + 1 | ||
208 | #; } | ||
209 | #; | ||
210 | #; return q | ||
211 | # | ||
212 | #;r2 = l, q | ||
213 | #;r3 = h, r | ||
214 | #;r4 = d | ||
215 | #;r5 = l' | ||
216 | #;r6 = r' | ||
217 | #;r7 = d' | ||
218 | #;r8 = q' | ||
219 | # | ||
220 | |||
221 | ENTRY(bn_div_words,R6|R7|R8) | ||
222 | movl 4(%ap),%r3 # h | ||
223 | movl 8(%ap),%r2 # l | ||
224 | movl 12(%ap),%r4 # d | ||
225 | |||
226 | bicl3 $-8,%r2,%r5 # l' = l & 7 | ||
227 | bicl3 $7,%r2,%r2 | ||
228 | |||
229 | bicl3 $-8,%r3,%r6 | ||
230 | bicl3 $7,%r3,%r3 | ||
231 | |||
232 | addl2 %r6,%r2 | ||
233 | |||
234 | rotl $-3,%r2,%r2 # l = l >> 3 | ||
235 | rotl $-3,%r3,%r3 # h = h >> 3 | ||
236 | |||
237 | movl %r4,%r7 # d' = d | ||
238 | |||
239 | clrl %r6 # r' = 0 | ||
240 | clrl %r8 # q' = 0 | ||
241 | |||
242 | tstl %r4 | ||
243 | beql 0f # Uh-oh, the divisor is 0... | ||
244 | bgtr 1f | ||
245 | rotl $-1,%r4,%r4 # If d is negative, shift it right. | ||
246 | bicl2 $0x80000000,%r4 # Since d is then a large number, the | ||
247 | # lowest bit is insignificant | ||
248 | # (contradict that, and I'll fix the problem!) | ||
249 | 1: | ||
250 | ediv %r4,%r2,%r2,%r3 # Do the actual division | ||
251 | |||
252 | tstl %r2 | ||
253 | bgeq 1f | ||
254 | mnegl %r2,%r2 # if q < 0, negate it | ||
255 | 1: | ||
256 | tstl %r7 | ||
257 | blss 1f | ||
258 | rotl $3,%r2,%r2 # q = q << 3 | ||
259 | bicl3 $-8,%r2,%r8 # q' gets the high bits from q | ||
260 | bicl3 $7,%r2,%r2 | ||
261 | brb 2f | ||
262 | |||
263 | 1: # else | ||
264 | rotl $2,%r2,%r2 # q = q << 2 | ||
265 | bicl3 $-4,%r2,%r8 # q' gets the high bits from q | ||
266 | bicl3 $3,%r2,%r2 | ||
267 | 2: | ||
268 | rotl $3,%r3,%r3 # r = r << 3 | ||
269 | bicl3 $-8,%r3,%r6 # r' gets the high bits from r | ||
270 | bicl3 $7,%r3,%r3 | ||
271 | addl2 %r5,%r3 # r = r + l' | ||
272 | |||
273 | tstl %r7 | ||
274 | bgeq 5f | ||
275 | bitl $1,%r7 | ||
276 | beql 5f # if d' < 0 && d' & 1 | ||
277 | subl2 %r2,%r3 # [r',r] = [r',r] - [q',q] | ||
278 | sbwc %r8,%r6 | ||
279 | 3: | ||
280 | bgeq 5f # while r < 0 | ||
281 | decl %r2 # [q',q] = [q',q] - 1 | ||
282 | sbwc $0,%r8 | ||
283 | addl2 %r7,%r3 # [r',r] = [r',r] + d' | ||
284 | adwc $0,%r6 | ||
285 | brb 3b | ||
286 | |||
287 | # The return points are placed in the middle to keep a short distance from | ||
288 | # all the branch points | ||
289 | 1: | ||
290 | # movl %r3,%r1 | ||
291 | movl %r2,%r0 | ||
292 | ret | ||
293 | 0: | ||
294 | movl $-1,%r0 | ||
295 | ret | ||
296 | 5: | ||
297 | tstl %r6 | ||
298 | bneq 6f | ||
299 | cmpl %r3,%r7 | ||
300 | blssu 1b # while [r',r] >= d' | ||
301 | 6: | ||
302 | subl2 %r7,%r3 # [r',r] = [r',r] - d' | ||
303 | sbwc $0,%r6 | ||
304 | incl %r2 # [q',q] = [q',q] + 1 | ||
305 | adwc $0,%r8 | ||
306 | brb 5b | ||
307 | |||
308 | |||
309 | |||
310 | # .title vax_bn_add_words unsigned add of two arrays | ||
311 | #; | ||
312 | #; Richard Levitte 20-Nov-2000 | ||
313 | #; | ||
314 | #; ULONG bn_add_words(ULONG r[], ULONG a[], ULONG b[], int n) { | ||
315 | #; ULONG c = 0; | ||
316 | #; int i; | ||
317 | #; for (i = 0; i < n; i++) <c,r[i]> = a[i] + b[i] + c; | ||
318 | #; return(c); | ||
319 | #; } | ||
320 | # | ||
321 | |||
322 | ENTRY(bn_add_words,0) | ||
323 | movl 4(%ap),%r2 # r | ||
324 | movl 8(%ap),%r3 # a | ||
325 | movl 12(%ap),%r4 # b | ||
326 | movl 16(%ap),%r5 # n | ||
327 | clrl %r0 | ||
328 | |||
329 | tstl %r5 | ||
330 | bleq 1f | ||
331 | |||
332 | 0: movl (%r3)+,%r1 # carry untouched | ||
333 | adwc (%r4)+,%r1 # carry used and touched | ||
334 | movl %r1,(%r2)+ # carry untouched | ||
335 | sobgtr %r5,0b # carry untouched | ||
336 | |||
337 | adwc $0,%r0 | ||
338 | 1: ret | ||
339 | |||
340 | #; | ||
341 | #; Richard Levitte 20-Nov-2000 | ||
342 | #; | ||
343 | #; ULONG bn_sub_words(ULONG r[], ULONG a[], ULONG b[], int n) { | ||
344 | #; ULONG c = 0; | ||
345 | #; int i; | ||
346 | #; for (i = 0; i < n; i++) <c,r[i]> = a[i] - b[i] - c; | ||
347 | #; return(c); | ||
348 | #; } | ||
349 | # | ||
350 | |||
351 | ENTRY(bn_sub_words,R6) | ||
352 | movl 4(%ap),%r2 # r | ||
353 | movl 8(%ap),%r3 # a | ||
354 | movl 12(%ap),%r4 # b | ||
355 | movl 16(%ap),%r5 # n | ||
356 | clrl %r0 | ||
357 | |||
358 | tstl %r5 | ||
359 | bleq 1f | ||
360 | |||
361 | 0: movl (%r3)+,%r6 # carry untouched | ||
362 | sbwc (%r4)+,%r6 # carry used and touched | ||
363 | movl %r6,(%r2)+ # carry untouched | ||
364 | sobgtr %r5,0b # carry untouched | ||
365 | |||
366 | 1: adwc $0,%r0 | ||
367 | ret | ||
368 | |||
369 | # | ||
370 | # Ragge 20-Sep-2003 | ||
371 | # | ||
372 | # Multiply a vector of 4/8 longword by another. | ||
373 | # Uses two loops and 16/64 emuls. | ||
374 | # | ||
375 | |||
376 | ENTRY(bn_mul_comba4,R6|R7|R8|R9) | ||
377 | movl $4,%r9 # 4*4 | ||
378 | brb 6f | ||
379 | |||
380 | ENTRY(bn_mul_comba8,R6|R7|R8|R9) | ||
381 | movl $8,%r9 # 8*8 | ||
382 | |||
383 | 6: movl 8(%ap),%r3 # a[] | ||
384 | movl 12(%ap),%r7 # b[] | ||
385 | brb 5f | ||
386 | |||
387 | ENTRY(bn_sqr_comba4,R6|R7|R8|R9) | ||
388 | movl $4,%r9 # 4*4 | ||
389 | brb 0f | ||
390 | |||
391 | ENTRY(bn_sqr_comba8,R6|R7|R8|R9) | ||
392 | movl $8,%r9 # 8*8 | ||
393 | |||
394 | 0: | ||
395 | movl 8(%ap),%r3 # a[] | ||
396 | movl %r3,%r7 # a[] | ||
397 | |||
398 | 5: movl 4(%ap),%r5 # r[] | ||
399 | movl %r9,%r8 | ||
400 | |||
401 | clrq (%r5) # clear destinatino, for add. | ||
402 | clrq 8(%r5) | ||
403 | clrq 16(%r5) # these only needed for comba8 | ||
404 | clrq 24(%r5) | ||
405 | |||
406 | 2: clrl %r4 # carry | ||
407 | movl %r9,%r6 # inner loop count | ||
408 | movl (%r7)+,%r2 # value to multiply with | ||
409 | |||
410 | 1: emul %r2,(%r3),%r4,%r0 | ||
411 | tstl %r4 | ||
412 | bgeq 3f | ||
413 | incl %r1 | ||
414 | 3: tstl %r2 | ||
415 | bgeq 3f | ||
416 | addl2 (%r3),%r1 | ||
417 | 3: tstl (%r3) | ||
418 | bgeq 3f | ||
419 | addl2 %r2,%r1 | ||
420 | |||
421 | 3: addl2 %r0,(%r5)+ # add to destination | ||
422 | adwc $0,%r1 # remember carry | ||
423 | movl %r1,%r4 # add carry in next emul | ||
424 | addl2 $4,%r3 | ||
425 | sobgtr %r6,1b | ||
426 | |||
427 | movl %r4,(%r5) # save highest add result | ||
428 | |||
429 | ashl $2,%r9,%r4 | ||
430 | subl2 %r4,%r3 | ||
431 | subl2 $4,%r4 | ||
432 | subl2 %r4,%r5 | ||
433 | |||
434 | sobgtr %r8,2b | ||
435 | |||
436 | ret | ||
diff --git a/src/lib/libcrypto/arch/vax/opensslconf.h b/src/lib/libcrypto/arch/vax/opensslconf.h deleted file mode 100644 index e3795ce73a..0000000000 --- a/src/lib/libcrypto/arch/vax/opensslconf.h +++ /dev/null | |||
@@ -1,157 +0,0 @@ | |||
1 | #include <openssl/opensslfeatures.h> | ||
2 | /* crypto/opensslconf.h.in */ | ||
3 | |||
4 | /* Generate 80386 code? */ | ||
5 | #undef I386_ONLY | ||
6 | |||
7 | #if defined(HEADER_CRYPTLIB_H) && !defined(OPENSSLDIR) | ||
8 | #define OPENSSLDIR "/etc/ssl" | ||
9 | #endif | ||
10 | |||
11 | #undef OPENSSL_UNISTD | ||
12 | #define OPENSSL_UNISTD <unistd.h> | ||
13 | |||
14 | #undef OPENSSL_EXPORT_VAR_AS_FUNCTION | ||
15 | |||
16 | #if defined(HEADER_IDEA_H) && !defined(IDEA_INT) | ||
17 | #define IDEA_INT unsigned int | ||
18 | #endif | ||
19 | |||
20 | #if defined(HEADER_MD2_H) && !defined(MD2_INT) | ||
21 | #define MD2_INT unsigned int | ||
22 | #endif | ||
23 | |||
24 | #if defined(HEADER_RC2_H) && !defined(RC2_INT) | ||
25 | /* I need to put in a mod for the alpha - eay */ | ||
26 | #define RC2_INT unsigned int | ||
27 | #endif | ||
28 | |||
29 | #if defined(HEADER_RC4_H) | ||
30 | #if !defined(RC4_INT) | ||
31 | /* using int types make the structure larger but make the code faster | ||
32 | * on most boxes I have tested - up to %20 faster. */ | ||
33 | /* | ||
34 | * I don't know what does "most" mean, but declaring "int" is a must on: | ||
35 | * - Intel P6 because partial register stalls are very expensive; | ||
36 | * - elder Alpha because it lacks byte load/store instructions; | ||
37 | */ | ||
38 | #define RC4_INT unsigned int | ||
39 | #endif | ||
40 | #if !defined(RC4_CHUNK) | ||
41 | /* | ||
42 | * This enables code handling data aligned at natural CPU word | ||
43 | * boundary. See crypto/rc4/rc4_enc.c for further details. | ||
44 | */ | ||
45 | #undef RC4_CHUNK | ||
46 | #endif | ||
47 | #endif | ||
48 | |||
49 | #if (defined(HEADER_NEW_DES_H) || defined(HEADER_DES_H)) && !defined(DES_LONG) | ||
50 | /* If this is set to 'unsigned int' on a DEC Alpha, this gives about a | ||
51 | * %20 speed up (longs are 8 bytes, int's are 4). */ | ||
52 | #ifndef DES_LONG | ||
53 | #define DES_LONG unsigned int | ||
54 | #endif | ||
55 | #endif | ||
56 | |||
57 | #if defined(HEADER_BN_H) && !defined(CONFIG_HEADER_BN_H) | ||
58 | #define CONFIG_HEADER_BN_H | ||
59 | #define BN_LLONG | ||
60 | |||
61 | /* Should we define BN_DIV2W here? */ | ||
62 | |||
63 | /* Only one for the following should be defined */ | ||
64 | /* The prime number generation stuff may not work when | ||
65 | * EIGHT_BIT but I don't care since I've only used this mode | ||
66 | * for debuging the bignum libraries */ | ||
67 | #undef SIXTY_FOUR_BIT_LONG | ||
68 | #undef SIXTY_FOUR_BIT | ||
69 | #define THIRTY_TWO_BIT | ||
70 | #undef SIXTEEN_BIT | ||
71 | #undef EIGHT_BIT | ||
72 | #endif | ||
73 | |||
74 | #if defined(HEADER_RC4_LOCL_H) && !defined(CONFIG_HEADER_RC4_LOCL_H) | ||
75 | #define CONFIG_HEADER_RC4_LOCL_H | ||
76 | /* if this is defined data[i] is used instead of *data, this is a %20 | ||
77 | * speedup on x86 */ | ||
78 | #define RC4_INDEX | ||
79 | #endif | ||
80 | |||
81 | #if defined(HEADER_BF_LOCL_H) && !defined(CONFIG_HEADER_BF_LOCL_H) | ||
82 | #define CONFIG_HEADER_BF_LOCL_H | ||
83 | #undef BF_PTR | ||
84 | #endif /* HEADER_BF_LOCL_H */ | ||
85 | |||
86 | #if defined(HEADER_DES_LOCL_H) && !defined(CONFIG_HEADER_DES_LOCL_H) | ||
87 | #define CONFIG_HEADER_DES_LOCL_H | ||
88 | #ifndef DES_DEFAULT_OPTIONS | ||
89 | /* the following is tweaked from a config script, that is why it is a | ||
90 | * protected undef/define */ | ||
91 | #ifndef DES_PTR | ||
92 | #undef DES_PTR | ||
93 | #endif | ||
94 | |||
95 | /* This helps C compiler generate the correct code for multiple functional | ||
96 | * units. It reduces register dependancies at the expense of 2 more | ||
97 | * registers */ | ||
98 | #ifndef DES_RISC1 | ||
99 | #undef DES_RISC1 | ||
100 | #endif | ||
101 | |||
102 | #ifndef DES_RISC2 | ||
103 | #undef DES_RISC2 | ||
104 | #endif | ||
105 | |||
106 | #if defined(DES_RISC1) && defined(DES_RISC2) | ||
107 | YOU SHOULD NOT HAVE BOTH DES_RISC1 AND DES_RISC2 DEFINED!!!!! | ||
108 | #endif | ||
109 | |||
110 | /* Unroll the inner loop, this sometimes helps, sometimes hinders. | ||
111 | * Very mucy CPU dependant */ | ||
112 | #ifndef DES_UNROLL | ||
113 | #define DES_UNROLL | ||
114 | #endif | ||
115 | |||
116 | /* These default values were supplied by | ||
117 | * Peter Gutman <pgut001@cs.auckland.ac.nz> | ||
118 | * They are only used if nothing else has been defined */ | ||
119 | #if !defined(DES_PTR) && !defined(DES_RISC1) && !defined(DES_RISC2) && !defined(DES_UNROLL) | ||
120 | /* Special defines which change the way the code is built depending on the | ||
121 | CPU and OS. For SGI machines you can use _MIPS_SZLONG (32 or 64) to find | ||
122 | even newer MIPS CPU's, but at the moment one size fits all for | ||
123 | optimization options. Older Sparc's work better with only UNROLL, but | ||
124 | there's no way to tell at compile time what it is you're running on */ | ||
125 | |||
126 | #if defined( sun ) /* Newer Sparc's */ | ||
127 | # define DES_PTR | ||
128 | # define DES_RISC1 | ||
129 | # define DES_UNROLL | ||
130 | #elif defined( __ultrix ) /* Older MIPS */ | ||
131 | # define DES_PTR | ||
132 | # define DES_RISC2 | ||
133 | # define DES_UNROLL | ||
134 | #elif defined( __osf1__ ) /* Alpha */ | ||
135 | # define DES_PTR | ||
136 | # define DES_RISC2 | ||
137 | #elif defined ( _AIX ) /* RS6000 */ | ||
138 | /* Unknown */ | ||
139 | #elif defined( __hpux ) /* HP-PA */ | ||
140 | /* Unknown */ | ||
141 | #elif defined( __aux ) /* 68K */ | ||
142 | /* Unknown */ | ||
143 | #elif defined( __dgux ) /* 88K (but P6 in latest boxes) */ | ||
144 | # define DES_UNROLL | ||
145 | #elif defined( __sgi ) /* Newer MIPS */ | ||
146 | # define DES_PTR | ||
147 | # define DES_RISC2 | ||
148 | # define DES_UNROLL | ||
149 | #elif defined(i386) || defined(__i386__) /* x86 boxes, should be gcc */ | ||
150 | # define DES_PTR | ||
151 | # define DES_RISC1 | ||
152 | # define DES_UNROLL | ||
153 | #endif /* Systems-specific speed defines */ | ||
154 | #endif | ||
155 | |||
156 | #endif /* DES_DEFAULT_OPTIONS */ | ||
157 | #endif /* HEADER_DES_LOCL_H */ | ||
diff --git a/src/lib/libcrypto/whrlpool/wp_block.c b/src/lib/libcrypto/whrlpool/wp_block.c index 9a681c2888..57f5b5df7a 100644 --- a/src/lib/libcrypto/whrlpool/wp_block.c +++ b/src/lib/libcrypto/whrlpool/wp_block.c | |||
@@ -1,4 +1,4 @@ | |||
1 | /* $OpenBSD: wp_block.c,v 1.10 2016/03/15 20:50:22 krw Exp $ */ | 1 | /* $OpenBSD: wp_block.c,v 1.11 2016/09/04 13:39:48 jsing Exp $ */ |
2 | /** | 2 | /** |
3 | * The Whirlpool hashing function. | 3 | * The Whirlpool hashing function. |
4 | * | 4 | * |
@@ -66,8 +66,6 @@ typedef unsigned long long u64; | |||
66 | # endif | 66 | # endif |
67 | #elif defined(__arm__) | 67 | #elif defined(__arm__) |
68 | # define SMALL_REGISTER_BANK | 68 | # define SMALL_REGISTER_BANK |
69 | #elif defined(__vax__) | ||
70 | # define SMALL_REGISTER_BANK | ||
71 | #endif | 69 | #endif |
72 | 70 | ||
73 | #undef ROTATE | 71 | #undef ROTATE |