From: Andy Polyakov Date: Tue, 3 May 2005 22:59:17 +0000 (+0000) Subject: Engage md5-x86_64 assembler module. X-Git-Tag: OpenSSL_0_9_8-beta1~13^2~55 X-Git-Url: https://git.librecmc.org/?a=commitdiff_plain;h=73a948508131ad3711b7f6e89d270776e2569e01;p=oweals%2Fopenssl.git Engage md5-x86_64 assembler module. --- diff --git a/Configure b/Configure index 8857ae8e64..cd3cf07f6c 100755 --- a/Configure +++ b/Configure @@ -118,7 +118,7 @@ my $x86_elf_asm="x86cpuid-elf.o:bn86-elf.o co86-elf.o:dx86-elf.o yx86-elf.o:ax86 my $x86_coff_asm="x86cpuid-cof.o:bn86-cof.o co86-cof.o:dx86-cof.o yx86-cof.o:ax86-cof.o:bx86-cof.o:mx86-cof.o:sx86-cof.o s512sse2-cof.o:cx86-cof.o:rx86-cof.o:rm86-cof.o:r586-cof.o"; 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:::::::rc4-x86_64.o::"; +my $x86_64_asm="x86_64cpuid.o:x86_64-gcc.o::::md5-x86_64.o:::rc4-x86_64.o::"; my $ia64_asm=":ia64.o::aes_core.o aes_cbc.o aes-ia64.o:::sha1-ia64.o sha256-ia64.o sha512-ia64.o::rc4-ia64.o::"; my $no_asm="::::::::::"; diff --git a/TABLE b/TABLE index dbd22d1ada..4dfc614920 100644 --- a/TABLE +++ b/TABLE @@ -283,7 +283,7 @@ $bn_obj = x86_64-gcc.o $des_obj = $aes_obj = $bf_obj = -$md5_obj = +$md5_obj = md5-x86_64.o $sha1_obj = $cast_obj = $rc4_obj = rc4-x86_64.o @@ -3091,7 +3091,7 @@ $bn_obj = x86_64-gcc.o $des_obj = $aes_obj = $bf_obj = -$md5_obj = +$md5_obj = md5-x86_64.o $sha1_obj = $cast_obj = $rc4_obj = rc4-x86_64.o @@ -3901,7 +3901,7 @@ $bn_obj = x86_64-gcc.o $des_obj = $aes_obj = $bf_obj = -$md5_obj = +$md5_obj = md5-x86_64.o $sha1_obj = $cast_obj = $rc4_obj = rc4-x86_64.o diff --git a/crypto/md5/Makefile b/crypto/md5/Makefile index 86f0f85422..67ce4bf366 100644 --- a/crypto/md5/Makefile +++ b/crypto/md5/Makefile @@ -76,6 +76,8 @@ md5-sparcv9.o: asm/md5-sparcv9.S $(CC) $(ASFLAGS) -DMD5_BLOCK_DATA_ORDER -c \ -o md5-sparcv9.o asm/md5-sparcv9.S +md5-x86_64.s: asm/md5-x86_64.pl; $(PERL) asm/md5-x86_64.pl $@ + files: $(PERL) $(TOP)/util/files.pl Makefile >> $(TOP)/MINFO diff --git a/crypto/md5/md5_locl.h b/crypto/md5/md5_locl.h index b29f0de7e3..2f5b045f36 100644 --- a/crypto/md5/md5_locl.h +++ b/crypto/md5/md5_locl.h @@ -66,7 +66,7 @@ #endif #ifdef MD5_ASM -# if defined(__i386) || defined(__i386__) || defined(_M_IX86) || defined(__INTEL__) +# if defined(__i386) || defined(__i386__) || defined(_M_IX86) || defined(__INTEL__) || defined(__x86_64) || defined(__x86_64__) # define md5_block_host_order md5_block_asm_host_order # elif defined(__sparc) && defined(OPENSSL_SYS_ULTRASPARC) void md5_block_asm_data_order_aligned (MD5_CTX *c, const MD5_LONG *p,size_t num); @@ -77,7 +77,7 @@ void md5_block_host_order (MD5_CTX *c, const void *p,size_t num); void md5_block_data_order (MD5_CTX *c, const void *p,size_t num); -#if defined(__i386) || defined(__i386__) || defined(_M_IX86) || defined(__INTEL__) +#if defined(__i386) || defined(__i386__) || defined(_M_IX86) || defined(__INTEL__) || defined(__x86_64) || defined(__x86_64__) /* * *_block_host_order is expected to handle aligned data while * *_block_data_order - unaligned. As algorithm and host (x86)