From a7ad2afa5e86bd7366db55f6c37837532b9be599 Mon Sep 17 00:00:00 2001 From: Andy Polyakov Date: Tue, 19 Jul 2005 22:37:57 +0000 Subject: [PATCH] Engage MD5 assembler module. --- Configure | 8 ++++---- TABLE | 40 ++++++++++++++++++++-------------------- crypto/md5/Makefile | 4 ++++ crypto/md5/md5_locl.h | 3 +++ 4 files changed, 31 insertions(+), 24 deletions(-) diff --git a/Configure b/Configure index a214db36a4..6b574d1152 100755 --- a/Configure +++ b/Configure @@ -119,7 +119,7 @@ my $x86_coff_asm="x86cpuid-cof.o:bn86-cof.o co86-cof.o:dx86-cof.o yx86-cof.o:ax8 my $x86_out_asm="x86cpuid-out.o:bn86-out.o co86-out.o:dx86-out.o yx86-out.o:ax86-out.o:bx86-out.o:mx86-out.o:sx86-out.o s512sse2-out.o:cx86-out.o:rx86-out.o:rm86-out.o:r586-out.o"; my $x86_64_asm="x86_64cpuid.o:x86_64-gcc.o::aes-x86_64.o::md5-x86_64.o:::rc4-x86_64.o::"; -my $ia64_asm=":bn-ia64.o::aes_core.o aes_cbc.o aes-ia64.o:::sha1-ia64.o sha256-ia64.o sha512-ia64.o::rc4-ia64.o::"; +my $ia64_asm="ia64cpuid.o:bn-ia64.o::aes_core.o aes_cbc.o aes-ia64.o::md5-ia64.o:sha1-ia64.o sha256-ia64.o sha512-ia64.o::rc4-ia64.o::"; my $no_asm="::::::::::"; @@ -323,9 +323,9 @@ my %table=( "linux-generic64","gcc:-DTERMIO -O3 -Wall::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHAR RC4_CHUNK DES_INT DES_UNROLL BF_PTR:${no_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", # -bpowerpc64-linux is transient option, -m64 should be the one to use... "linux-ppc64", "gcc:-bpowerpc64-linux -DB_ENDIAN -DTERMIO -O3 -Wall::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHAR RC4_CHUNK DES_RISC1 DES_UNROLL::linux_ppc64.o::::::::::dlfcn:linux-shared:-fPIC:-bpowerpc64-linux:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", -"linux-ia64", "gcc:-DL_ENDIAN -DTERMIO -O3 -Wall::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHUNK:${ia64_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", -"linux-ia64-ecc","ecc:-DL_ENDIAN -DTERMIO -O2 -Wall -no_cpprt::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHUNK:${ia64_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", -"linux-ia64-icc","icc:-DL_ENDIAN -DTERMIO -O2 -Wall -no_cpprt::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHUNK:${ia64_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", +"linux-ia64", "gcc:-DL_ENDIAN -DTERMIO -O3 -Wall::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHUNK DES_UNROLL DES_INT:${ia64_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", +"linux-ia64-ecc","ecc:-DL_ENDIAN -DTERMIO -O2 -Wall -no_cpprt::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHUNK DES_INT:${ia64_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", +"linux-ia64-icc","icc:-DL_ENDIAN -DTERMIO -O2 -Wall -no_cpprt::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHUNK DES_RISC1 DES_INT:${ia64_asm}:dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", "linux-x86_64", "gcc:-m64 -DL_ENDIAN -DTERMIO -O3 -Wall -DMD32_REG_T=int::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHUNK BF_PTR2 DES_INT DES_UNROLL:${x86_64_asm}:dlfcn:linux-shared:-fPIC:-m64:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", #### SPARC Linux setups # Ray Miller has patiently diff --git a/TABLE b/TABLE index 5c1007f37a..8f09e1ff19 100644 --- a/TABLE +++ b/TABLE @@ -116,12 +116,12 @@ $thread_cflag = -pthread -D_THREAD_SAFE -D_REENTRANT $sys_id = $lflags = $bn_ops = SIXTY_FOUR_BIT_LONG RC4_CHUNK -$cpuid_obj = +$cpuid_obj = ia64cpuid.o $bn_obj = bn-ia64.o $des_obj = $aes_obj = aes_core.o aes_cbc.o aes-ia64.o $bf_obj = -$md5_obj = +$md5_obj = md5-ia64.o $sha1_obj = sha1-ia64.o sha256-ia64.o sha512-ia64.o $cast_obj = $rc4_obj = rc4-ia64.o @@ -254,7 +254,7 @@ $bn_ops = SIXTY_FOUR_BIT_LONG RC4_CHUNK DES_INT DES_UNROLL $cpuid_obj = x86_64cpuid.o $bn_obj = x86_64-gcc.o $des_obj = -$aes_obj = +$aes_obj = aes-x86_64.o $bf_obj = $md5_obj = md5-x86_64.o $sha1_obj = @@ -1925,12 +1925,12 @@ $thread_cflag = $sys_id = $lflags = -ldl $bn_ops = SIXTY_FOUR_BIT MD2_CHAR RC4_INDEX DES_UNROLL DES_RISC1 DES_INT -$cpuid_obj = +$cpuid_obj = ia64cpuid.o $bn_obj = bn-ia64.o $des_obj = $aes_obj = aes_core.o aes_cbc.o aes-ia64.o $bf_obj = -$md5_obj = +$md5_obj = md5-ia64.o $sha1_obj = sha1-ia64.o sha256-ia64.o sha512-ia64.o $cast_obj = $rc4_obj = rc4-ia64.o @@ -2141,12 +2141,12 @@ $thread_cflag = $sys_id = $lflags = -ldl $bn_ops = SIXTY_FOUR_BIT_LONG MD2_CHAR RC4_INDEX DES_UNROLL DES_RISC1 DES_INT -$cpuid_obj = +$cpuid_obj = ia64cpuid.o $bn_obj = bn-ia64.o $des_obj = $aes_obj = aes_core.o aes_cbc.o aes-ia64.o $bf_obj = -$md5_obj = +$md5_obj = md5-ia64.o $sha1_obj = sha1-ia64.o sha256-ia64.o sha512-ia64.o $cast_obj = $rc4_obj = rc4-ia64.o @@ -2168,12 +2168,12 @@ $thread_cflag = $sys_id = $lflags = -ldl $bn_ops = SIXTY_FOUR_BIT_LONG MD2_CHAR RC4_INDEX DES_UNROLL DES_RISC1 DES_INT -$cpuid_obj = +$cpuid_obj = ia64cpuid.o $bn_obj = bn-ia64.o $des_obj = $aes_obj = aes_core.o aes_cbc.o aes-ia64.o $bf_obj = -$md5_obj = +$md5_obj = md5-ia64.o $sha1_obj = sha1-ia64.o sha256-ia64.o sha512-ia64.o $cast_obj = $rc4_obj = rc4-ia64.o @@ -2680,13 +2680,13 @@ $unistd = $thread_cflag = -D_REENTRANT $sys_id = $lflags = -ldl -$bn_ops = SIXTY_FOUR_BIT_LONG RC4_CHUNK -$cpuid_obj = +$bn_ops = SIXTY_FOUR_BIT_LONG RC4_CHUNK DES_UNROLL DES_INT +$cpuid_obj = ia64cpuid.o $bn_obj = bn-ia64.o $des_obj = $aes_obj = aes_core.o aes_cbc.o aes-ia64.o $bf_obj = -$md5_obj = +$md5_obj = md5-ia64.o $sha1_obj = sha1-ia64.o sha256-ia64.o sha512-ia64.o $cast_obj = $rc4_obj = rc4-ia64.o @@ -2707,13 +2707,13 @@ $unistd = $thread_cflag = -D_REENTRANT $sys_id = $lflags = -ldl -$bn_ops = SIXTY_FOUR_BIT_LONG RC4_CHUNK -$cpuid_obj = +$bn_ops = SIXTY_FOUR_BIT_LONG RC4_CHUNK DES_INT +$cpuid_obj = ia64cpuid.o $bn_obj = bn-ia64.o $des_obj = $aes_obj = aes_core.o aes_cbc.o aes-ia64.o $bf_obj = -$md5_obj = +$md5_obj = md5-ia64.o $sha1_obj = sha1-ia64.o sha256-ia64.o sha512-ia64.o $cast_obj = $rc4_obj = rc4-ia64.o @@ -2734,13 +2734,13 @@ $unistd = $thread_cflag = -D_REENTRANT $sys_id = $lflags = -ldl -$bn_ops = SIXTY_FOUR_BIT_LONG RC4_CHUNK -$cpuid_obj = +$bn_ops = SIXTY_FOUR_BIT_LONG RC4_CHUNK DES_RISC1 DES_INT +$cpuid_obj = ia64cpuid.o $bn_obj = bn-ia64.o $des_obj = $aes_obj = aes_core.o aes_cbc.o aes-ia64.o $bf_obj = -$md5_obj = +$md5_obj = md5-ia64.o $sha1_obj = sha1-ia64.o sha256-ia64.o sha512-ia64.o $cast_obj = $rc4_obj = rc4-ia64.o @@ -2873,7 +2873,7 @@ $bn_ops = SIXTY_FOUR_BIT_LONG RC4_CHUNK BF_PTR2 DES_INT DES_UNROLL $cpuid_obj = x86_64cpuid.o $bn_obj = x86_64-gcc.o $des_obj = -$aes_obj = +$aes_obj = aes-x86_64.o $bf_obj = $md5_obj = md5-x86_64.o $sha1_obj = @@ -3683,7 +3683,7 @@ $bn_ops = SIXTY_FOUR_BIT_LONG RC4_CHUNK BF_PTR2 DES_INT DES_UNROLL $cpuid_obj = x86_64cpuid.o $bn_obj = x86_64-gcc.o $des_obj = -$aes_obj = +$aes_obj = aes-x86_64.o $bf_obj = $md5_obj = md5-x86_64.o $sha1_obj = diff --git a/crypto/md5/Makefile b/crypto/md5/Makefile index c2d8bc697a..9ae82f26a0 100644 --- a/crypto/md5/Makefile +++ b/crypto/md5/Makefile @@ -72,6 +72,10 @@ md5-sparcv9.o: asm/md5-sparcv9.S md5-x86_64.s: asm/md5-x86_64.pl; $(PERL) asm/md5-x86_64.pl $@ +md5-ia64.s: asm/md5-ia64.S + $(CC) $(CFLAGS) -E asm/md5-ia64.S | \ + $(PERL) -ne 's/;\s+/;\n/g; print;' > $@ + files: $(PERL) $(TOP)/util/files.pl Makefile >> $(TOP)/MINFO diff --git a/crypto/md5/md5_locl.h b/crypto/md5/md5_locl.h index 94f395f27a..e1c3274c7a 100644 --- a/crypto/md5/md5_locl.h +++ b/crypto/md5/md5_locl.h @@ -73,6 +73,9 @@ # elif defined(__sparc) && defined(OPENSSL_SYS_ULTRASPARC) void md5_block_asm_data_order_aligned (MD5_CTX *c, const MD5_LONG *p,size_t num); # define HASH_BLOCK_DATA_ORDER_ALIGNED md5_block_asm_data_order_aligned +# elif defined(__ia64) || defined(__ia64__) || defined(_M_IA64) +# define md5_block_host_order md5_block_asm_host_order +# define md5_block_data_order md5_block_asm_data_order # endif #endif -- 2.25.1