Andy Polyakov
f4868c9921
Remove inconsistency in ARM support.
...
This facilitates "universal" builds, ones that target multiple
architectures, e.g. ARMv5 through ARMv7. See commentary in
Configure for details.
Reviewed-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Reviewed-by: Matt Caswell <matt@openssl.org>
(cherry picked from commit c1669e1c20
)
2015-01-06 11:14:23 +01:00
Andy Polyakov
dfb5de6fc0
Harmonize Tru64 and Linux make rules.
...
RT: 3333,3165
Reviewed-by: Rich Salz <rsalz@openssl.org>
(cherry picked from commit d475b2a3bf
)
2014-09-20 10:22:13 +02:00
Andy Polyakov
9dd6240201
x86[_64] assembly pack: add Silvermont performance data.
...
Reviewed-by: Rich Salz <rsalz@openssl.org>
(cherry picked from commit b59f92e75d
)
2014-08-30 19:14:49 +02:00
Rich Salz
089f10e69e
RT2308: Add extern "C" { ... } wrapper
...
Add the wrapper to all public header files (Configure
generates one). Don't bother for those that are just
lists of #define's that do renaming.
Reviewed-by: Tim Hudson <tjh@openssl.org>
Cherry-pick of commit 17e80c6bd0
2014-08-27 21:45:09 -04:00
Andy Polyakov
c991d8ae8b
Initial POWER8 support from development branch.
...
Reviewed-by: Kurt Roeckx <kurt@openssl.org>
Reviewed-by: Tim Hudson <tjh@openssl.org>
2014-07-20 14:36:49 +02:00
Dr. Stephen Henson
6e1e5996df
Sanity check lengths for AES wrap algorithm.
...
Reviewed-by: Tim Hudson <tjh@openssl.org>
(cherry picked from commit d12eef1501
)
2014-07-17 12:58:42 +01:00
Andy Polyakov
371feee876
x86_64 assembly pack: improve masm support.
...
(cherry picked from commit 1b0fe79f3e
)
2014-07-09 22:46:13 +02:00
Andy Polyakov
2064e2db08
Please Clang's sanitizer.
...
PR: #3424,#3423,#3422
(cherry picked from commit 021e5043e5
)
2014-07-09 22:45:38 +02:00
Andy Polyakov
377551b9c4
x86_64 assembly pack: refine clang detection.
...
(cherry picked from commit a356e488ad
)
Resolved conflicts:
crypto/bn/asm/rsaz-avx2.pl
2014-06-28 17:26:03 +02:00
Andy Polyakov
52f856526c
x86_64 assembly pack: addendum to last clang commit.
...
(cherry picked from commit 7eb0488280
)
2014-06-27 22:55:22 +02:00
Andy Polyakov
912f08dd5e
x86_64 assembly pack: allow clang to compile AVX code.
...
(cherry picked from commit ac171925ab
)
2014-06-27 22:55:07 +02:00
Andy Polyakov
5cd8ce42ec
ARMv8 assembly pack: add Cortex performance numbers.
...
(cherry picked from commit 0f777aeb50
)
2014-06-24 08:07:04 +02:00
Andy Polyakov
66aeaec067
ghash-x86_64.pl: optimize for upcoming Atom.
...
(cherry picked from commit 1cf8f57b43
)
2014-06-11 11:35:23 +02:00
Andy Polyakov
77fb5a303b
Engage GHASH for ARMv8.
...
(cherry picked from commit 82741e9c89
)
2014-06-11 00:10:00 +02:00
Andy Polyakov
7344089dc3
Add GHASH for ARMv8 Crypto Extension.
...
Result of joint effort with Ard Biesheuvel.
(cherry picked from commit 2d5a799d27
)
2014-06-11 00:09:35 +02:00
Andy Polyakov
3a97ebb16b
ARM assembly pack: get ARMv7 instruction endianness right.
...
Pointer out and suggested by: Ard Biesheuvel.
(cherry picked from commit 5dcf70a1c5
)
2014-06-10 22:51:15 +02:00
Andy Polyakov
0fb3d5b4fd
bn/asm/armv4-gf2m.pl, modes/asm/ghash-armv4.pl: faster multiplication
...
algorithm suggested in following paper:
Câmara, D.; Gouvêa, C. P. L.; López, J. & Dahab, R.: Fast Software
Polynomial Multiplication on ARM Processors using the NEON Engine.
http://conradoplg.cryptoland.net/files/2010/12/mocrysen13.pdf
(cherry picked from commit f8cee9d081
)
2014-04-24 10:27:52 +02:00
Andy Polyakov
f396e9f4fc
crypto/modes/gcm128.c: more strict aliasing fixes.
...
(cherry picked from commit 997d1aac7c
)
2014-04-06 17:22:12 +02:00
Andy Polyakov
7078d93307
ghash-x86[_64].pl: ~15% improvement on Atom Silvermont
...
(other processors unaffected).
(cherry picked from commit 98e143f118
)
2014-02-13 14:38:59 +01:00
Andy Polyakov
0693dd954e
modes/asm/ghash-s390x.pl: +15% performance improvement on z10.
...
(cherry picked from commit d162584b11
)
2014-02-02 00:10:41 +01:00
Dr. Stephen Henson
bc35b8e435
make update
2013-12-01 23:09:44 +00:00
Andy Polyakov
220d1e5353
modes/asm/ghash-alpha.pl: update from HEAD.
...
PR: 3165
2013-11-12 21:59:01 +01:00
Andy Polyakov
ca44f72938
Make Makefiles OSF-make-friendly.
...
PR: 3165
(cherry picked from commit d1cf23ac86
)
2013-11-12 21:53:39 +01:00
Andy Polyakov
3241496144
modes/asm/ghash-alpha.pl: make it work with older assembler.
...
PR: 3165
(cherry picked from commit d24d1d7daf
)
2013-11-08 23:10:09 +01:00
Andy Polyakov
958608ca1c
Initial aarch64 bits.
...
(cherry picked from commit 039081b809
)
2013-10-13 19:24:22 +02:00
Dr. Stephen Henson
c6f3386577
EVP support for wrapping algorithms.
...
Add support for key wrap algorithms via EVP interface.
Generalise AES wrap algorithm and add to modes, making existing
AES wrap algorithm a special case.
Move test code to evptests.txt
(cherry picked from commit 97cf1f6c28
)
Conflicts:
CHANGES
2013-10-01 14:01:17 +01:00
Andy Polyakov
c7dc404188
crypto/modes/asm/aesni-gcm-x86_64.pl: minor optimization.
...
Avoid occasional up to 8% performance drops.
(cherry picked from commit 7a1a12232a
)
2013-09-09 21:46:02 +02:00
Andy Polyakov
6c7fa27404
PA-RISC assembler pack: switch to bve in 64-bit builds.
...
PR: 3074
(cherry picked from commit 02450ec69d
)
2013-06-30 23:13:23 +02:00
Andy Polyakov
23966faca4
ghash-x86_64.pl: add Haswell performance data.
...
(cherry picked from commit b42759158d
)
2013-06-10 22:50:23 +02:00
Andy Polyakov
0c10cf0ad6
crypto/modes: even more strict aliasing fixes [and fix bug in cbc128.c from
...
previous cbc128.c commit].
2013-06-04 14:31:23 +01:00
Andy Polyakov
62874a5a69
cbc128.c: fix strict aliasing warning.
2013-06-04 14:30:49 +01:00
Andy Polyakov
aacfb2a2c6
Add AES-NI GCM stich and take it into build loop [from master].
2013-05-19 22:06:18 +02:00
Andy Polyakov
0ba304dd31
gcm128.c: update from master (add AVX and VIS3 support).
2013-05-19 21:55:30 +02:00
Andy Polyakov
8eb2da5fbb
ghash-sparcv9.pl: update from master.
2013-05-19 21:53:14 +02:00
Andy Polyakov
d1896e8ccd
ghash-x86_64.pl: update from master.
2013-05-19 21:51:19 +02:00
Andy Polyakov
0edcb7a556
ghash-x86.pl: update from master.
2013-05-19 21:46:03 +02:00
Andy Polyakov
07464787a8
crypto/modes/modes_lcl.h: let STRICT_ALIGNMENT be on ARMv7.
...
While ARMv7 in general is capable of unaligned access, not all instructions
actually are. And trouble is that compiler doesn't seem to differentiate
those capable and incapable of unaligned access. Side effect is that kernel
goes into endless loop retrying same instruction triggering unaligned trap.
Problem was observed in xts128.c and ccm128.c modules. It's possible to
resolve it by using (volatile u32*) casts, but letting STRICT_ALIGNMENT
be feels more appropriate.
(cherry picked from commit 3bdd80521a
)
2013-04-13 21:19:16 +02:00
Andy Polyakov
3f233a1e77
x86_64 assembly pack: make Windows build more robust [from master].
...
PR: 2963 and a number of others
2013-01-22 22:51:29 +01:00
Ben Laurie
2a2e537983
Ignore more.
2012-12-13 12:43:18 +00:00
Andy Polyakov
f0a069c1a2
gcm128.c: fix AAD-only case with AAD length not divisible by 16 [from HEAD].
...
PR: 2859
Submitted by: John Foley
2012-08-13 15:31:10 +00:00
Andy Polyakov
8b654459be
x86_64 assembly pack: make it possible to compile with Perl located
...
on path with spaces [from HEAD].
PR: 2835
2012-06-27 12:48:50 +00:00
Ben Laurie
68d2cf51bc
Reduce version skew: trivia (I hope).
2012-06-03 22:03:37 +00:00
Andy Polyakov
e6255a7d1e
s390x asm pack: fix typos.
2012-04-12 06:46:49 +00:00
Andy Polyakov
7b087bf4a9
modes_lcl.h: make it work on i386 [from HEAD].
...
PR: 2780
2012-03-31 17:03:43 +00:00
Andy Polyakov
bd479e25c7
ghash-x86.pl: engage original MMX version in no-sse2 builds [from HEAD].
2012-01-25 17:56:25 +00:00
Andy Polyakov
4fb7e2b445
Fix OPNESSL vs. OPENSSL typos [from HEAD].
...
PR: 2613
Submitted by: Leena Heino
2012-01-15 13:40:21 +00:00
Dr. Stephen Henson
dc01af7723
Sync ASM/modes to add CCM and XTS modes and assembly language optimisation
...
(from HEAD, original by Andy).
2011-08-11 22:36:19 +00:00
Dr. Stephen Henson
61cdb9f36a
Backport GCM support from HEAD. Minimal support at present: no assembly
...
language optimisation. [original by Andy]
2011-08-04 11:12:38 +00:00
Andy Polyakov
fbe2e28911
AES-NI backport from HEAD. Note that e_aes.c doesn't implement all modes
...
from HEAD yet, more will be back-ported later.
2011-06-28 14:49:35 +00:00
Andy Polyakov
8a898a6fcc
[co]cf128.c: fix "n=0" bug [from HEAD].
2010-04-14 07:47:53 +00:00