diff options
author | otto <> | 2008-09-19 06:09:01 +0000 |
---|---|---|
committer | otto <> | 2008-09-19 06:09:01 +0000 |
commit | d8a728372d924a59e821c02139ecd7915c848b4d (patch) | |
tree | 4bd0fad7309fd9e5917f84ba519345a74823bc67 /src/lib/libcrypto/rc4 | |
parent | 404f42e023f74f798d3e32269dc691e855f21e4c (diff) | |
download | openbsd-d8a728372d924a59e821c02139ecd7915c848b4d.tar.gz openbsd-d8a728372d924a59e821c02139ecd7915c848b4d.tar.bz2 openbsd-d8a728372d924a59e821c02139ecd7915c848b4d.zip |
fix some cause of bad TEXTREL on i386 and amd64
- global function calls in .init sections (diff makes them via PLT)
- calls to global functions in aes-586.S (made static or local)
- global variable accesses in rc4-x86_64.S (now made via GOT)
from djm@large; ok miod@
Diffstat (limited to 'src/lib/libcrypto/rc4')
-rwxr-xr-x | src/lib/libcrypto/rc4/asm/rc4-x86_64.pl | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/src/lib/libcrypto/rc4/asm/rc4-x86_64.pl b/src/lib/libcrypto/rc4/asm/rc4-x86_64.pl index 2d47320485..92c52f3433 100755 --- a/src/lib/libcrypto/rc4/asm/rc4-x86_64.pl +++ b/src/lib/libcrypto/rc4/asm/rc4-x86_64.pl | |||
@@ -269,8 +269,7 @@ RC4_set_key: | |||
269 | xor $ido,$ido | 269 | xor $ido,$ido |
270 | xor %r10,%r10 | 270 | xor %r10,%r10 |
271 | xor %r11,%r11 | 271 | xor %r11,%r11 |
272 | 272 | mov PIC_GOT(OPENSSL_ia32cap_P),$idx#d | |
273 | mov OPENSSL_ia32cap_P(%rip),$idx#d | ||
274 | bt \$20,$idx#d | 273 | bt \$20,$idx#d |
275 | jnc .Lw1stloop | 274 | jnc .Lw1stloop |
276 | bt \$30,$idx#d | 275 | bt \$30,$idx#d |
@@ -338,7 +337,7 @@ RC4_set_key: | |||
338 | RC4_options: | 337 | RC4_options: |
339 | .picmeup %rax | 338 | .picmeup %rax |
340 | lea .Lopts-.(%rax),%rax | 339 | lea .Lopts-.(%rax),%rax |
341 | mov OPENSSL_ia32cap_P(%rip),%edx | 340 | mov PIC_GOT(OPENSSL_ia32cap_P),%edx |
342 | bt \$20,%edx | 341 | bt \$20,%edx |
343 | jnc .Ldone | 342 | jnc .Ldone |
344 | add \$12,%rax | 343 | add \$12,%rax |