From c79c5a256be9d8a279c873c37903f9eead71f355 Mon Sep 17 00:00:00 2001 From: Andy Polyakov Date: Tue, 15 Jul 2008 13:24:16 +0000 Subject: des-596.pl update: short-circuit reference to DES_SPtrans. --- crypto/des/asm/des-586.pl | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/crypto/des/asm/des-586.pl b/crypto/des/asm/des-586.pl index 32282bd5fc..5b5f39cebd 100644 --- a/crypto/des/asm/des-586.pl +++ b/crypto/des/asm/des-586.pl @@ -24,6 +24,8 @@ $small_footprint=1 if (grep(/\-DOPENSSL_SMALL_FOOTPRINT/,@ARGV)); # one can discuss setting this variable to 1 unconditionally, as # the folded loop is only 3% slower than unrolled, but >7 times smaller +&public_label("DES_SPtrans"); + &DES_encrypt_internal(); &DES_decrypt_internal(); &DES_encrypt("DES_encrypt1",1); @@ -153,7 +155,10 @@ sub DES_encrypt } # PIC-ification:-) - &picmeup($trans,"DES_SPtrans"); + &call (&label("pic_point")); + &set_label("pic_point"); + &blindpop($trans); + &lea ($trans,&DWP(&label("DES_SPtrans")."-".&label("pic_point"),$trans)); &mov( "ecx", &wparam(1) ); @@ -309,7 +314,6 @@ sub FP_new sub DES_SPtrans { - &public_label("DES_SPtrans"); &set_label("DES_SPtrans",64); &data_word(0x02080800, 0x00080000, 0x02000002, 0x02080802); &data_word(0x02000000, 0x00080802, 0x00080002, 0x02000002); -- cgit v1.2.1