summaryrefslogtreecommitdiff
path: root/src/lib/libcrypto/rc4
diff options
context:
space:
mode:
authorotto <>2008-09-19 06:09:01 +0000
committerotto <>2008-09-19 06:09:01 +0000
commitd8a728372d924a59e821c02139ecd7915c848b4d (patch)
tree4bd0fad7309fd9e5917f84ba519345a74823bc67 /src/lib/libcrypto/rc4
parent404f42e023f74f798d3e32269dc691e855f21e4c (diff)
downloadopenbsd-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-xsrc/lib/libcrypto/rc4/asm/rc4-x86_64.pl5
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:
338RC4_options: 337RC4_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