Not a definitive answer, but I know we (IBM) never tested the PPC asm
on BSD.
It's possible that because no one had a PPC machine running BSD to test
the asm paths they were left disabled.
Correct, the reason for why there is no BSD-ppc is that because there
was no opportunity to test it. The PPC assembly modules are maintained
ABI-neutral (i.e. meeting requirements from multiple specifications),
which means that any additional OS has to be explicitly verified. There
is no reason to believe that it won't work, but it still has to be
explicitly verified.
There may be other reasons, but make tests should at least show any
gross problems.
The only subtle problem I can think of that might be there in recent
code is use of 64 bit registers in 32 bit code, if the kernel doesn't
preserve the upper halves of registers you can get clobbered during
signal handling.
It's not the only subtle potential problem, dereferencing TLS register
[or any other data anchor register] in signal handler is. While attempt
to engage ppc_asm and passing 'make test' would show gross problems, it
won't give definitive answer. What would help is explicit reference to
ABI your BSD flavour relies on.
On side note. Given previous questions from originator we are talking
about embedded processor, which is unlike to have 64-bit extensions, so
upper halves unlikely to be concern here. For reference, the problem
with upper halves is two-fold: a) preserving upon context switch between
processes, b) preserving upon signal delivery. a) is commonly taken care
of by kernel, while b) is handled by disabling signals in ppccap.c.
-owner-openssl-...@openssl.org wrote: -
To: openssl-dev openssl-dev@openssl.org
From: Kevin Fowler
Sent by: owner-openssl-...@openssl.org
Date: 08/04/2012 01:04AM
Subject: ppc32_asm for BSD targets
For the BSD-generic32 target, which gets used for *bsd on ppc cpu,
Configure script uses ${no_asm}. Other OS's (linux, darwin, AIX) on ppc
cpu use ${ppc32_asm}.
Are the ppc asm routines not valid for *bsd OS? If so, what about BSD
invalidates them?
Thanks,
Kevin
__
OpenSSL Project http://www.openssl.org
Development Mailing List openssl-dev@openssl.org
Automated List Manager majord...@openssl.org