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/x86_64



On Sun, Jul 17, 2011 at 10:31:44PM +0200, Joerg Sonnenberger wrote:
> On Sun, Jul 17, 2011 at 10:25:47PM +0200, Jean-Yves Migeon wrote:
> > On 17.07.2011 21:48, Joerg Sonnenberger wrote:
> > > Module Name:      src
> > > Committed By:     joerg
> > > Date:             Sun Jul 17 19:48:31 UTC 2011
> > > 
> > > Modified Files:
> > >   src/crypto/external/bsd/openssl/lib/libcrypto/arch/x86_64: aes.inc
> > > 
> > > Log Message:
> > > Disable Clang's integrated assembler for the AES-NI files for now.
> > > Somewhere in this mess of .byte streams, corruption happens. Disassembly
> > > only shows slightly different filling of alignment sequences, further
> > > analysis is needed.
> > > 
> > > XXX This should be rewritten to be proper assembler code
> > 
> > The .byte streams are required for the inclusion of the AES NI
> > instructions, which are not supported with our current gcc version.
> > 
> > Should be fixed once we have stabilized gcc 4.5 (dunno about other
> > compilers though, especially pcc).
> 
> That doesn't make any sense. This are *assembler* instructions, not GCC
> intrinsics.

Also, having looked at the file, even if it is using instructions that
the assembler can't process, it is a horrid mess.
There are much better ways to specify instructions than just .byte sequences.
Even if you aren't using CPP, the assmembler will support local constants
and expressions.
Even a few comments would help.

        David

-- 
David Laight: david%l8s.co.uk@localhost


Home | Main Index | Thread Index | Old Index