> There will be more comments later.

BODY_00_xx in SHA1 module. There is branch covering for unaligned input.
I'd suggest movua.l, but then I noticed that it's missing in manual
you've mentioned. Is it recently introduced instruction or is it
erroneously omitted from manual? On a side note I personally would
settle for single branch in the beginning of grand loop for aligning
input...

Another concern I have is usage of gbr. What I'd like to know is that it
is *not* used for something else, for example as thread pointer. I
simply don't know enough about SH4, but I know thread pointer is problem
on e.g. PPC platform. Trouble is that the problem doesn't and can't
emerge in our tests, but it can ruin for real-life application when
asynchronous signal handler has to dereference thread pointer.

As for SHA245 module. *If* gbr is safe to use and loading small
constants gives better instruction-level parallelism [on older CPUs],
then it might be more appropriate to setup gbr to point at shared small
constant table. Thing is that it takes more time to bring multiple small
constant tables to cache, then single one. What do you think? A.
______________________________________________________________________
OpenSSL Project                                 http://www.openssl.org
Development Mailing List                       [email protected]
Automated List Manager                           [email protected]

Reply via email to