-rw-r--r-- 700 lib25519-20260614/crypto_mGnP/ed25519/arm64-neonplusuma10l/ge25519_pack.c raw
// linker define ge25519_10l_dense_pack // linker use fe25519_invert // linker use fe25519_mul // linker use fe25519_pack // linker use fe25519_4l_to_10l_dense // linker use fe25519_10l_dense_to_4l // linker use fe25519_10l_dense_getparity #include "fe25519.h" #include "sc25519.h" #include "ge25519.h" void ge25519_10l_dense_pack(unsigned char r[32], const ge25519_p3_10l_dense *p) { fe25519_10l_dense tx,ty,zi; fe25519 t; fe25519_10l_dense_to_4l(&t,&p->z); fe25519_invert(&t,&t); fe25519_4l_to_10l_dense(&zi,&t); fe25519_mul(&tx,&p->x,&zi); fe25519_mul(&ty,&p->y,&zi); fe25519_10l_dense_to_4l(&t,&ty); fe25519_pack(r,&t); r[31] ^= fe25519_10l_dense_getparity(&tx) << 7; }