On 12.01.2012 15:54, Andy Polyakov wrote:
In addition one assembler warning (Solaris Sparc):
/usr/ccs/bin/as: "sha512-sparcv9.s", line 676: warning: v8+ ABI
violation: illegal use of %i or %l register as rs1 in "brnz,a" instruction
What version is it? Solaris and assembler (as -V)?
% as -V
as: Sun Compiler Common 10 Patch 09/04/2007
% uname -a
SunOS xxxx5.10 Generic_142900-07 sun4u sparc SUNW,Sun-Fire-V240
% cat /etc/release
Solaris 10 10/08 s10s_u6wos_07b SPARC
Copyright 2008 Sun Microsystems, Inc. All Rights Reserved.
Use is subject to license terms.
Assembled 27 October 2008
gcc was a self-compiled 4.6.2.
For reference, instruction in question performs conditional branch
depending on content of 64-bit %i4 register. Thing about v8+ ABI is that
upper halves of %i and %l registers can be zeroed at any time. While it
would be plain wrong to rely on upper half having non-zero value, the
warning is safe to ignore in *this* case, because %i4 is used to keep a
5-bit value, so it doesn't matter if system zeros upper half or not.
Thanks for the explanation.
I'll see how to work around the warning...
Great, thank's a lot. Happy to retest.
Regards,
Rainer
______________________________________________________________________
OpenSSL Project http://www.openssl.org
Development Mailing List [email protected]
Automated List Manager [email protected]