ARMv8 : Aarch32 support, SHA256 speedup

This commit is contained in:
Jacob Barthelmeh
2016-09-28 10:22:27 -06:00
parent 91580552bc
commit 6f4b704552
3 changed files with 2252 additions and 418 deletions

View File

@@ -544,18 +544,28 @@ AM_CONDITIONAL([BUILD_AESCCM], [test "x$ENABLED_AESCCM" = "xyes"])
# AES-ARM # AES-ARM
AC_ARG_ENABLE([armasm], AC_ARG_ENABLE([armasm],
[AS_HELP_STRING([--enable-armasm],[Enable wolfSSL ARM ASM support (default: disabled)])], [AS_HELP_STRING([--enable-armasm],[Enable wolfSSL ARMv8 ASM support (default: disabled)])],
[ ENABLED_ARMASM=$enableval ], [ ENABLED_ARMASM=$enableval ],
[ ENABLED_ARMASM=no ] [ ENABLED_ARMASM=no ]
) )
if test "$ENABLED_ARMASM" = "yes" if test "$ENABLED_ARMASM" = "yes"
then then
AM_CFLAGS="$AM_CFLAGS -DWOLFSSL_ARMASM" AM_CFLAGS="$AM_CFLAGS -DWOLFSSL_ARMASM"
if test "$GCC" = "yes" #Check if mcpu and mfpu values already set if not use default
then case $CPPFLAGS in
# GCC needs this flag *mcpu* | *mfpu*)
AM_CFLAGS="$AM_CFLAGS -mcpu=generic+crypto" break;; #Do not override user set values
fi *)
case $host_cpu in
*aarch64*)
#+crypto needed for hardware acceleration
AM_CPPFLAGS="$AM_CPPFLAGS -mcpu=generic+crypto"
AC_MSG_NOTICE([64bit ARMv8 found, setting mcpu to generic+crypto]);;
*)
AM_CPPFLAGS="$AM_CPPFLAGS -mfpu=crypto-neon-fp-armv8"
AC_MSG_NOTICE([32bit ARMv8 found, setting mfpu to crypto-neon-fp-armv8]);;
esac
esac
fi fi
AM_CONDITIONAL([BUILD_ARMASM], [test "x$ENABLED_ARMASM" = "xyes"]) AM_CONDITIONAL([BUILD_ARMASM], [test "x$ENABLED_ARMASM" = "xyes"])

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff