Sorry, I missed this question.
3. Can you comment on MacOS X? I mean can one use the code under MacOS
X? As far as I know MacOS pre-X uses same calling convention as AIX, but
I don't know if it's case for MacOS X...
I don't have MacOS X here so I can't be sure either. I have had a quick
look at what would be required to support this platform, GCC appears to be
the system compiler so I'd be unsurprised if the Linux-PPC code just
worked.
Peter
Peter Waltenberg
Team Lead
IBM Crypto for C Team
IBM/Tivoli Gold Coast Office
Phone: +61-7-55524016
Andy Polyakov
<[EMAIL PROTECTED] To: Peter
Waltenberg/Australia/[EMAIL PROTECTED]
.se> cc: [EMAIL PROTECTED]
Sent by: Subject: Re: [openssl.org #762]
Assembler speedups for PPC Linux
owner-openssl-dev@
openssl.org
29/11/2003 11:08
PM
Please respond to
openssl-dev
> > Attached. Assembler optimizations for PowerPC Linux, 32 and 64 bit.
> >
> > (See attached file: linux_ppc32.s)(See attached file: linux_ppc64.s)
Which reminds me! I have had a look at the code in both Linux and AIX
modules and several questions were risen.
1. I was under impression that AIX and Linux use different calling
convention (stack frame and stuff). Am I wrong? I wonder because code in
AIX and Linux modules appears essentially identical. Well, leaf
functions can be identical, as they don't have to allocate a stack
frame, but bn_div_words made me suspicious...
2. If code is essentially identical, why two separate modules? Why not
let pre-processor take care of OS specifics and keep the same code base?
3. Can you comment on MacOS X? I mean can one use the code under MacOS
X? As far as I know MacOS pre-X uses same calling convention as AIX, but
I don't know if it's case for MacOS X...
4. Your bn_[add|sub]_words make no sense to me. You have 4 add
instructions per loop spin... As far as I understand carry flag is
preserved over branch instruction and therefore single
addition/subtraction instruction, adde|subfe, should be sufficient per
spin. What am I missing? I didn't have closer look at other routines
[yet]...
A.
______________________________________________________________________
OpenSSL Project http://www.openssl.org
Development Mailing List [EMAIL PROTECTED]
Automated List Manager [EMAIL PROTECTED]
______________________________________________________________________
OpenSSL Project http://www.openssl.org
Development Mailing List [EMAIL PROTECTED]
Automated List Manager [EMAIL PROTECTED]