1 #ifndef NTT_H
2 #define NTT_H
3 
4 #include <stdint.h>
5 #include <immintrin.h>
6 
7 #define ntt_avx KYBER_NAMESPACE(ntt_avx)
8 void ntt_avx(__m256i *r, const __m256i *qdata);
9 #define invntt_avx KYBER_NAMESPACE(invntt_avx)
10 void invntt_avx(__m256i *r, const __m256i *qdata);
11 
12 #define nttpack_avx KYBER_NAMESPACE(nttpack_avx)
13 void nttpack_avx(__m256i *r, const __m256i *qdata);
14 #define nttunpack_avx KYBER_NAMESPACE(nttunpack_avx)
15 void nttunpack_avx(__m256i *r, const __m256i *qdata);
16 
17 #define basemul_avx KYBER_NAMESPACE(basemul_avx)
18 void basemul_avx(__m256i *r,
19                  const __m256i *a,
20                  const __m256i *b,
21                  const __m256i *qdata);
22 
23 #define ntttobytes_avx KYBER_NAMESPACE(ntttobytes_avx)
24 void ntttobytes_avx(uint8_t *r, const __m256i *a, const __m256i *qdata);
25 #define nttfrombytes_avx KYBER_NAMESPACE(nttfrombytes_avx)
26 void nttfrombytes_avx(__m256i *r, const uint8_t *a, const __m256i *qdata);
27 
28 #endif
29