updated handling of modulus

This commit is contained in:
Jean-Philippe Bossuat
2025-02-03 15:30:12 +01:00
parent 0b8bf98b2a
commit e6cb70dbdf
7 changed files with 156 additions and 119 deletions

View File

@@ -69,10 +69,10 @@ unsafe extern "C" {
}
unsafe extern "C" {
pub fn vec_znx_zero(module: *const MODULE, res: *mut i64, res_size: u64, res_sl: u64);
pub unsafe fn vec_znx_zero(module: *const MODULE, res: *mut i64, res_size: u64, res_sl: u64);
}
unsafe extern "C" {
pub fn vec_znx_copy(
pub unsafe fn vec_znx_copy(
module: *const MODULE,
res: *mut i64,
res_size: u64,
@@ -84,7 +84,7 @@ unsafe extern "C" {
}
unsafe extern "C" {
pub fn vec_znx_normalize_base2k(
pub unsafe fn vec_znx_normalize_base2k(
module: *const MODULE,
log2_base2k: u64,
res: *mut i64,
@@ -97,5 +97,5 @@ unsafe extern "C" {
);
}
unsafe extern "C" {
pub fn vec_znx_normalize_base2k_tmp_bytes(module: *const MODULE) -> u64;
pub unsafe fn vec_znx_normalize_base2k_tmp_bytes(module: *const MODULE) -> u64;
}

View File

@@ -19,10 +19,10 @@ unsafe extern "C" {
}
unsafe extern "C" {
pub fn vec_dft_zero(module: *const MODULE, res: *mut VEC_ZNX_DFT, res_size: u64);
pub unsafe fn vec_dft_zero(module: *const MODULE, res: *mut VEC_ZNX_DFT, res_size: u64);
}
unsafe extern "C" {
pub fn vec_dft_add(
pub unsafe fn vec_dft_add(
module: *const MODULE,
res: *mut VEC_ZNX_DFT,
res_size: u64,
@@ -33,7 +33,7 @@ unsafe extern "C" {
);
}
unsafe extern "C" {
pub fn vec_dft_sub(
pub unsafe fn vec_dft_sub(
module: *const MODULE,
res: *mut VEC_ZNX_DFT,
res_size: u64,
@@ -44,7 +44,7 @@ unsafe extern "C" {
);
}
unsafe extern "C" {
pub fn vec_znx_dft(
pub unsafe fn vec_znx_dft(
module: *const MODULE,
res: *mut VEC_ZNX_DFT,
res_size: u64,
@@ -54,7 +54,7 @@ unsafe extern "C" {
);
}
unsafe extern "C" {
pub fn vec_znx_idft(
pub unsafe fn vec_znx_idft(
module: *const MODULE,
res: *mut VEC_ZNX_BIG,
res_size: u64,
@@ -64,10 +64,10 @@ unsafe extern "C" {
);
}
unsafe extern "C" {
pub fn vec_znx_idft_tmp_bytes(module: *const MODULE) -> u64;
pub unsafe fn vec_znx_idft_tmp_bytes(module: *const MODULE) -> u64;
}
unsafe extern "C" {
pub fn vec_znx_idft_tmp_a(
pub unsafe fn vec_znx_idft_tmp_a(
module: *const MODULE,
res: *mut VEC_ZNX_BIG,
res_size: u64,

View File

@@ -6,6 +6,8 @@ use crate::ffi::vec_znx_dft::VEC_ZNX_DFT;
pub struct vmp_pmat_t {
_unused: [u8; 0],
}
// [rows][cols] = [#Decomposition][#Limbs]
pub type VMP_PMAT = vmp_pmat_t;
unsafe extern "C" {
@@ -77,6 +79,9 @@ unsafe extern "C" {
tmp_space: *mut u8,
);
}
/*
NOT IMPLEMENTED IN SPQLIOS
unsafe extern "C" {
pub unsafe fn vmp_prepare_dblptr(
module: *const MODULE,
@@ -87,6 +92,7 @@ unsafe extern "C" {
tmp_space: *mut u8,
);
}
*/
unsafe extern "C" {
pub unsafe fn vmp_prepare_contiguous_tmp_bytes(
module: *const MODULE,