Use X64 ASM ed25519 signatures on Linux/x64, which are about 10X faster. Will matter a lot for network controllers, not so much for other things.

This commit is contained in:
Adam Ierymenko 2018-03-13 06:51:17 -07:00
commit beb170e4fb
68 changed files with 37123 additions and 68 deletions

View file

@ -0,0 +1,11 @@
#include "fe25519.h"
void fe25519_unpack(fe25519 *r, const unsigned char x[32])
{
/* assuming little-endian */
r->v[0] = *(unsigned long long *)x;
r->v[1] = *(((unsigned long long *)x)+1);
r->v[2] = *(((unsigned long long *)x)+2);
r->v[3] = *(((unsigned long long *)x)+3);
r->v[3] &= 0x7fffffffffffffffULL;
}