diff options
| author | kettenis <> | 2012-10-31 11:19:35 +0000 |
|---|---|---|
| committer | kettenis <> | 2012-10-31 11:19:35 +0000 |
| commit | 32d6b9fd8bf5ca2c2be1fa08a2528c8631540b9a (patch) | |
| tree | df8275e2ac9f9c9853242382bc11bb6d08487c90 /src/lib/libcrypto/aes | |
| parent | e20093d61c475a4cd15e9e663f32b4d0f86f7fc7 (diff) | |
| download | openbsd-32d6b9fd8bf5ca2c2be1fa08a2528c8631540b9a.tar.gz openbsd-32d6b9fd8bf5ca2c2be1fa08a2528c8631540b9a.tar.bz2 openbsd-32d6b9fd8bf5ca2c2be1fa08a2528c8631540b9a.zip | |
On amd64 OPENSSL_cpuid_setup and OPENSSL_ia32cap_P are now hidden so we don't
have to go through the PLT/GOT to get at them anymore. In fact going through
the GOT now fails since we no longer have a GOT entry for OPENSSL_ia32cap_P.
Fixes the problem spotted by jasper@ and sthen@. Based on a diff from mikeb@
who did most of the actual work of tracking down the issue.
ok millert@, mikeb@
Diffstat (limited to 'src/lib/libcrypto/aes')
| -rwxr-xr-x | src/lib/libcrypto/aes/asm/aes-x86_64.pl | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/lib/libcrypto/aes/asm/aes-x86_64.pl b/src/lib/libcrypto/aes/asm/aes-x86_64.pl index 027b4ae2e5..48fa857d5b 100755 --- a/src/lib/libcrypto/aes/asm/aes-x86_64.pl +++ b/src/lib/libcrypto/aes/asm/aes-x86_64.pl | |||
| @@ -1678,7 +1678,7 @@ AES_cbc_encrypt: | |||
| 1678 | lea .LAES_Td(%rip),$sbox | 1678 | lea .LAES_Td(%rip),$sbox |
| 1679 | .Lcbc_picked_te: | 1679 | .Lcbc_picked_te: |
| 1680 | 1680 | ||
| 1681 | mov PIC_GOT(OPENSSL_ia32cap_P),%r10d | 1681 | mov OPENSSL_ia32cap_P(%rip),%r10d |
| 1682 | cmp \$$speed_limit,%rdx | 1682 | cmp \$$speed_limit,%rdx |
| 1683 | jb .Lcbc_slow_prologue | 1683 | jb .Lcbc_slow_prologue |
| 1684 | test \$15,%rdx | 1684 | test \$15,%rdx |
