summaryrefslogtreecommitdiffstats
path: root/crypto/aes/asm
AgeCommit message (Collapse)Author
2015-04-20aes/asm/vpaes-armv8.pl: make it compile on iOS.Andy Polyakov
Reviewed-by: Richard Levitte <levitte@openssl.org>
2015-04-02aes/asm/aesv8-armx.pl: optimize for Cortex-A5x.Andy Polyakov
ARM has optimized Cortex-A5x pipeline to favour pairs of complementary AES instructions. While modified code improves performance of post-r0p0 Cortex-A53 performance by >40% (for CBC decrypt and CTR), it hurts original r0p0. We favour later revisions, because one can't prevent future from coming. Improvement on post-r0p0 Cortex-A57 exceeds 50%, while new code is not slower on r0p0, or Apple A7 for that matter. [Update even SHA results for latest Cortex-A53.] Reviewed-by: Richard Levitte <levitte@openssl.org>
2015-03-28Add vpaes-amrv8.pl module.Andy Polyakov
Reviewed-by: Richard Levitte <levitte@openssl.org>
2015-02-24aes/asm/bsaes-armv7: fix kernel-side XTS and harmonize with Linux.Andy Polyakov
XTS bug spotted and fix suggested by Adrian Kotelba. Reviewed-by: Tim Hudson <tjh@openssl.org>
2015-01-23Add assembly support to ios64-cross.Andy Polyakov
Fix typos in ios64-cross config line. Reviewed-by: Tim Hudson <tjh@openssl.org>
2015-01-22Fix macosx-ppc build (and typos in unwind info).Andy Polyakov
Reviewed-by: Tim Hudson <tjh@openssl.org>
2015-01-07Fix irix-cc build.Andy Polyakov
Reviewed-by: Matt Caswell <matt@openssl.org>
2015-01-04Remove inconsistency in ARM support.Andy Polyakov
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>
2014-10-15aesni-x86_64.pl: make ECB subroutine Windows ABI compliant.Andy Polyakov
RT: 3553 Reviewed-by: Emilia Kasper <emilia@openssl.org>
2014-08-30x86[_64] assembly pack: add Silvermont performance data.Andy Polyakov
Reviewed-by: Rich Salz <rsalz@openssl.org>
2014-07-09x86_64 assembly pack: improve masm support.Andy Polyakov
2014-06-28x86_64 assembly pack: refine clang detection.Andy Polyakov
2014-06-25aesp8-ppc.pl: rigid input verification in key setup.Andy Polyakov
2014-06-25aesv8-armx.pl: rigid input verification in key setup.Andy Polyakov
2014-06-24x86_64 assembly pack: addendum to last clang commit.Andy Polyakov
2014-06-24x86_64 assembly pack: allow clang to compile AVX code.Andy Polyakov
2014-06-24aesv8-armx.pl: inclrease interleave factor.Andy Polyakov
This is to compensate for higher aes* instruction latency on Cortex-A57.
2014-06-16aesni-sha[1|256]-x86_64.pl: fix logical error and MacOS X build.Andy Polyakov
2014-06-16aesp8-ppc.pl: add CTR mode.Andy Polyakov
2014-06-14aesni-sha256-x86_64.pl: add missing rex in shaext.Andy Polyakov
PR: 3405
2014-06-12Facilitate back-porting of AESNI and SHA modules.Andy Polyakov
Fix SEH and stack handling in Win64 build.
2014-06-11Add support for Intel SHA extension.Andy Polyakov
2014-06-10aesni-mb-x86_64.pl: add Win64 SEH.Andy Polyakov
2014-06-06ARM assembly pack: get ARMv7 instruction endianness right.Andy Polyakov
Pointer out and suggested by: Ard Biesheuvel.
2014-06-06aesv8-armx.pl update:Andy Polyakov
- fix 32-bit build (submitted by Ard Biesheuvel); - fix performance issue in CTR;
2014-06-04aesp8-ppc.pl: fix typos.Andy Polyakov
2014-06-01Engage POWER8 AES support.Andy Polyakov
2014-06-01Engage ARMv8 AES support.Andy Polyakov
2014-05-29aesv8-armx.pl: add CTR implementation.Andy Polyakov
Submitted by: Ard Biesheuvel.
2014-05-29aesp8-ppc.pl: optimize CBC decrypt even further.Andy Polyakov
10-19% improvement depending on key length and endianness.
2014-05-23aesp8-ppc.pl: add optimized CBC decrypt.Andy Polyakov
2014-05-23vpaes-ppc.pl: comply with ABI.Andy Polyakov
2014-05-20aesv8-armx.pl: fix typo.Andy Polyakov
2014-05-20aesv8-armx.pl: optimize by adding 128-bit code paths.Andy Polyakov
2014-05-19Add "teaser" AES module for ARMv8.Andy Polyakov
"Teaser" means that it's initial proof-of-concept to build EVP module upon.
2014-05-12Add "teaser" AES module for PowerISA 2.07.Andy Polyakov
"Teaser" means that it's not integrated yet and purpose of this commit is primarily informational, to exhibit design choices, such as how to handle alignment and endianness. In other words it's proof-of-concept code that EVP module will build upon.
2014-05-04C64x+ assembly pack: make it work with older toolchain.Andy Polyakov
2014-04-24aes/asm/bsaes-x86_64.pl: Atom-specific optimization.Andy Polyakov
2014-04-06vpaes-[x86_64|ppc].pl: fix typo, which for some reason triggers rkhunter.Andy Polyakov
2014-02-25aes/asm/vpaes-ppc.pl: fix traceback info.Andy Polyakov
2014-02-21aes/asm/aesni-x86[_64].pl: minor Atom-specific performance tweak.Andy Polyakov
2014-02-14aes/asm/aesni-x86_64.pl: further optimization for Atom Silvermont.Andy Polyakov
Improve CBC decrypt and CTR by ~13/16%, which adds up to ~25/33% improvement over "pre-Silvermont" version. [Add performance table to aesni-x86.pl].
2014-02-05[aesni|sha*]-mb-x86_64.pl: add data prefetching.Andy Polyakov
2014-02-01crypto/aes/asm/aesni-x86[_64].pl update, up to 14% improvement onAndy Polyakov
Atom Silvermont. On other CPUs one can observe 1% loss on some algorithms.
2014-02-01crypto/sha/asm/sha1-x86_64.pl update:Andy Polyakov
+5% on Atom Silvermont, up to +8% improvement of legacy code. Harmonize sha1-586.pl and aesni-sha1-x86_86.p with sha1-x86_64.pl.
2014-01-07PPC assembly pack: relax 64-bit requirement for little-endian support.Andy Polyakov
2014-01-07aes/asm/vpaes-ppc.pl: add little-endian support.Andy Polyakov
2014-01-04aesni-sha1-x86_64.pl: refine Atom-specific optimization.Andy Polyakov
(and update performance data, and fix typo)
2014-01-03aesni-sha1-x86_64.pl: add stiched decrypt procedure,Andy Polyakov
but keep it disabled, too little gain... Add some Atom-specific optimization.
2013-12-04aes/asm/vpaes-ppc.pl: comply with ABI.Andy Polyakov