summaryrefslogtreecommitdiff
path: root/ext/ed25519-amd64-asm/fe25519_unpack.c
blob: b3b0f4d58535d493300fe9a537c7f102257d5c73 (plain)
1
2
3
4
5
6
7
8
9
10
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;
}