for first time disable aesenc for arm64

This commit is contained in:
Arm64 plaz 2018-04-24 18:23:40 +00:00
parent d9b8731ddc
commit 66de7ad049
3 changed files with 16 additions and 1 deletions

View File

@ -60,9 +60,14 @@ endif
ifeq ($(USE_AESNI),yes) ifeq ($(USE_AESNI),yes)
#check if AES-NI is supported by CPU #check if AES-NI is supported by CPU
ifneq ($(shell $(GREP) -c aes /proc/cpuinfo),0) ifneq ($(shell $(GREP) -c aes /proc/cpuinfo),0)
machine := $(shell uname -m)
ifeq ($(machine), aarch64)
CXXFLAGS += -DARM64AES
else
CPU_FLAGS += -maes -DAESNI CPU_FLAGS += -maes -DAESNI
endif endif
endif endif
endif
ifeq ($(USE_AVX),yes) ifeq ($(USE_AVX),yes)
#check if AVX supported by CPU #check if AVX supported by CPU

View File

@ -594,6 +594,13 @@ namespace crypto
// AES // AES
#ifdef AESNI #ifdef AESNI
#ifdef ARM64AES
void init_aesenc(void) __attribute__((constructor)){
}
#endif
#define KeyExpansion256(round0,round1) \ #define KeyExpansion256(round0,round1) \
"pshufd $0xff, %%xmm2, %%xmm2 \n" \ "pshufd $0xff, %%xmm2, %%xmm2 \n" \
"movaps %%xmm1, %%xmm4 \n" \ "movaps %%xmm1, %%xmm4 \n" \

View File

@ -124,6 +124,9 @@ namespace crypto
#ifdef AESNI #ifdef AESNI
#ifdef ARM64AES
void init_aesenc(void) __attribute__((constructor));
#endif
class ECBCryptoAESNI class ECBCryptoAESNI
{ {
public: public: