On Wed, Oct 22, 2014 at 10:03 AM, Niels Möller <[email protected]> wrote:
> I think I will leave the curve25519 and eddsa code for now, even though
> there are several important optimizations left to do (see the just
> updated http://www.lysator.liu.se/~nisse/nettle/plan.html).
> I think it's getting time to do fat binaries. To make progress, I think
> it's best to start with something simple, relying on
> __attribute__((constructor) and/or __attribute__(ifunc ...)).
> For the case of memxor (where on x86_64, the fat binary mechanism needs
> to select between sse2 and non-sse2 code), I'm also considering some
> reorganization:
>  * Use smaller assembly routines doing one case each, and let the main
>    entry point always be C code which can sort out the different cases
>    and handle bytes at the beginning and end of the buffer.
>  * Fix the cases where the current current code reads a few bytes
>    outside of input buffers (but luckily without crossing word
>    boundaries, iirc).
>  * Add some internal entry points, for cases where alignment is known by
>    the caller.

That would really be great news, and would be a very good incentive to
port gnutls to nettle
3.x. If I could add to that list, I think that simplicity of 3rd party
enhancements to that fat binary
is also significant, as I believe you'd like to rely on others doing
these optimizations for their
CPU types.

regards,
Nikos
_______________________________________________
nettle-bugs mailing list
[email protected]
http://lists.lysator.liu.se/mailman/listinfo/nettle-bugs
  • Fat binaries Niels Möller
    • Re: Fat binaries Nikos Mavrogiannopoulos

Reply via email to