diff options
Diffstat (limited to 'src/lib/libcrypto/des/asm/des-586.pl')
-rw-r--r-- | src/lib/libcrypto/des/asm/des-586.pl | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/src/lib/libcrypto/des/asm/des-586.pl b/src/lib/libcrypto/des/asm/des-586.pl index 5b5f39cebd..e11b2ef80f 100644 --- a/src/lib/libcrypto/des/asm/des-586.pl +++ b/src/lib/libcrypto/des/asm/des-586.pl | |||
@@ -154,11 +154,8 @@ sub DES_encrypt | |||
154 | &rotl($L,3); | 154 | &rotl($L,3); |
155 | } | 155 | } |
156 | 156 | ||
157 | # PIC-ification:-) | 157 | &picsetup($trans); |
158 | &call (&label("pic_point")); | 158 | &picsymbol($trans, &label("DES_SPtrans"), $trans); |
159 | &set_label("pic_point"); | ||
160 | &blindpop($trans); | ||
161 | &lea ($trans,&DWP(&label("DES_SPtrans")."-".&label("pic_point"),$trans)); | ||
162 | 159 | ||
163 | &mov( "ecx", &wparam(1) ); | 160 | &mov( "ecx", &wparam(1) ); |
164 | 161 | ||
@@ -314,6 +311,7 @@ sub FP_new | |||
314 | 311 | ||
315 | sub DES_SPtrans | 312 | sub DES_SPtrans |
316 | { | 313 | { |
314 | &rodataseg(); | ||
317 | &set_label("DES_SPtrans",64); | 315 | &set_label("DES_SPtrans",64); |
318 | &data_word(0x02080800, 0x00080000, 0x02000002, 0x02080802); | 316 | &data_word(0x02080800, 0x00080000, 0x02000002, 0x02080802); |
319 | &data_word(0x02000000, 0x00080802, 0x00080002, 0x02000002); | 317 | &data_word(0x02000000, 0x00080802, 0x00080002, 0x02000002); |
@@ -450,4 +448,5 @@ sub DES_SPtrans | |||
450 | &data_word(0x00820000, 0x00020080, 0x20020080, 0x20800000); | 448 | &data_word(0x00820000, 0x00020080, 0x20020080, 0x20800000); |
451 | &data_word(0x00000080, 0x20820000, 0x00820080, 0x00000000); | 449 | &data_word(0x00000080, 0x20820000, 0x00820080, 0x00000000); |
452 | &data_word(0x20000000, 0x20800080, 0x00020000, 0x00820080); | 450 | &data_word(0x20000000, 0x20800080, 0x00020000, 0x00820080); |
451 | &previous(); | ||
453 | } | 452 | } |