arnaucube
arnaucube/poulpyPublic Self-hosted repository
poulpy/poulpy-backend/src/cpu_spqlios/spqlios-arithmetic/spqlios/reim/reim_execute.c
poulpy-backend/src/cpu_spqlios/spqlios-arithmetic/spqlios/reim/reim_execute.cRaw
 1#include "reim_fft_internal.h"
 2#include "reim_fft_private.h"
 3
 4EXPORT void reim_from_znx32(const REIM_FROM_ZNX32_PRECOMP* tables, void* r, const int32_t* a) {
 5  tables->function(tables, r, a);
 6}
 7
 8EXPORT void reim_from_tnx32(const REIM_FROM_TNX32_PRECOMP* tables, void* r, const int32_t* a) {
 9  tables->function(tables, r, a);
10}
11
12EXPORT void reim_to_tnx32(const REIM_TO_TNX32_PRECOMP* tables, int32_t* r, const void* a) {
13  tables->function(tables, r, a);
14}
15
16EXPORT void reim_fftvec_add(const REIM_FFTVEC_ADD_PRECOMP* tables, double* r, const double* a, const double* b) {
17  tables->function(tables, r, a, b);
18}
19
20EXPORT void reim_fftvec_sub(const REIM_FFTVEC_SUB_PRECOMP* tables, double* r, const double* a, const double* b) {
21  tables->function(tables, r, a, b);
22}
23
24EXPORT void reim_fftvec_mul(const REIM_FFTVEC_MUL_PRECOMP* tables, double* r, const double* a, const double* b) {
25  tables->function(tables, r, a, b);
26}
27
28EXPORT void reim_fftvec_addmul(const REIM_FFTVEC_ADDMUL_PRECOMP* tables, double* r, const double* a, const double* b) {
29  tables->function(tables, r, a, b);
30}
31
32EXPORT void reim_fftvec_automorphism(const REIM_FFTVEC_AUTOMORPHISM_PRECOMP* tables, int64_t p, double* r,
33                                     const double* a, uint64_t a_size) {
34  tables->function.apply(tables, p, r, a, a_size);
35}
36
37EXPORT void reim_fftvec_automorphism_inplace(const REIM_FFTVEC_AUTOMORPHISM_PRECOMP* tables, int64_t p, double* a,
38                                             uint64_t a_size, uint8_t* tmp_bytes) {
39  tables->function.apply_inplace(tables, p, a, a_size, tmp_bytes);
40}
41
42EXPORT uint64_t reim_fftvec_automorphism_inplace_tmp_bytes(const REIM_FFTVEC_AUTOMORPHISM_PRECOMP* tables) {
43  return tables->function.apply_inplace_tmp_bytes(tables);
44}