Source-Changes-D archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: CVS commit: src/crypto/external/bsd/openssl/lib/libcrypto/arch
On Fri, Jul 22, 2011 at 10:50:56PM +0000, Jean-Yves Migeon wrote:
> Module Name: src
> Committed By: jym
> Date: Fri Jul 22 22:50:56 UTC 2011
>
> Modified Files:
> src/crypto/external/bsd/openssl/lib/libcrypto/arch/i386: aesni-586.S
> aesni-x86.S
> src/crypto/external/bsd/openssl/lib/libcrypto/arch/x86_64:
> aesni-x86_64.S
>
> Log Message:
> Turn AES NI support code into something more readable.
>
> i386 and amd64 both tested with their own chroot. No regression observed.
Much better. One thing remains. It would be nice to replace
.byte 0xf3,0xc3
with either a simple ret or a ret $0, depending on whether it has a
label on it or not. The reason for this mess seems to be a bug in
certain generation of AMD CPUs. So essentially,
.Lfoo:
.byte 0xf3,0xc3
should become:
.Lfoo:
ret $0
and all other instances can be converted to plain ret. This is a bit
longer than the 0xf3,0xc3 encoding, but has the advantage of not
depending on invalid instruction encodings. This is kind of cosmetical
though.
Joerg
Home |
Main Index |
Thread Index |
Old Index