diff options
author | Mounir IDRASSI <mounir.idrassi@idrix.fr> | 2025-01-17 00:58:54 +0100 |
---|---|---|
committer | Mounir IDRASSI <mounir.idrassi@idrix.fr> | 2025-01-17 00:58:54 +0100 |
commit | 54bd81999007b467420acab780c704c91bc1b057 (patch) | |
tree | fb2e3dbc899e6acd89f82406d6712508c015e1c8 /src/Volume | |
parent | c79f8102e094f512ac5c706fa30a2741d697b003 (diff) | |
download | VeraCrypt-54bd81999007b467420acab780c704c91bc1b057.tar.gz VeraCrypt-54bd81999007b467420acab780c704c91bc1b057.zip |
Windows/Linux/macOS: implement AES hardware support on ARM64 (ARMv8)
Diffstat (limited to 'src/Volume')
-rw-r--r-- | src/Volume/Volume.make | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/src/Volume/Volume.make b/src/Volume/Volume.make index 52d212eb..e38542bb 100644 --- a/src/Volume/Volume.make +++ b/src/Volume/Volume.make @@ -43,6 +43,7 @@ ifeq "$(PLATFORM)" "MacOSX" ifneq "$(COMPILE_ASM)" "false" OBJSEX += ../Crypto/Aes_asm.oo OBJS += ../Crypto/Aes_hw_cpu.o + OBJSEX += ../Crypto/Aes_hw_armv8.oo OBJS += ../Crypto/Aescrypt.o OBJSEX += ../Crypto/Twofish_asm.oo OBJSEX += ../Crypto/Camellia_asm.oo @@ -78,6 +79,9 @@ else ifeq "$(CPU_ARCH)" "x64" OBJS += ../Crypto/sha512_avx1_x64.o OBJS += ../Crypto/sha512_avx2_x64.o OBJS += ../Crypto/sha512_sse4_x64.o +else ifeq "$(CPU_ARCH)" "arm64" + OBJARMV8CRYPTO += ../Crypto/Aes_hw_armv8.oarmv8crypto + OBJS += ../Crypto/Aescrypt.o else OBJS += ../Crypto/Aescrypt.o endif @@ -140,6 +144,12 @@ VolumeLibrary: Volume.a ifeq "$(ENABLE_WOLFCRYPT)" "0" ifeq "$(PLATFORM)" "MacOSX" ifneq "$(COMPILE_ASM)" "false" +../Crypto/Aes_hw_armv8.oo: ../Crypto/Aes_hw_armv8.c + @echo Compiling $(<F) + $(CC) $(CFLAGS_ARM64) -c ../Crypto/Aes_hw_armv8.c -o ../Crypto/Aes_hw_armv8_arm64.o + $(CC) $(CFLAGS_X64) -c ../Crypto/Aes_hw_armv8.c -o ../Crypto/Aes_hw_armv8_x64.o + lipo -create ../Crypto/Aes_hw_armv8_arm64.o ../Crypto/Aes_hw_armv8_x64.o -output ../Crypto/Aes_hw_armv8.oo + rm -fr ../Crypto/Aes_hw_armv8_arm64.o ../Crypto/Aes_hw_armv8_x64.o ../Crypto/Aes_asm.oo: ../Crypto/Aes_x86.asm ../Crypto/Aes_x64.asm @echo Assembling $(<F) $(AS) $(ASFLAGS32) -o ../Crypto/Aes_x86.o ../Crypto/Aes_x86.asm |