mirror of
https://github.com/zama-ai/tfhe-rs.git
synced 2026-04-28 03:01:21 -04:00
zk-cuda-backend: - Create point_traits.h with canonical Affine<T>, Projective<T> definitions, replacing duplicates in curve.cu and common.cuh (PointSelector/ProjectiveSelector removed) - Standardize associated type name to FieldType (was Field in curve.cu) - Add mixed_add() to unified Projective<T> trait - Move MSM function declarations from curve.h to msm.h - Change MSM scratch buffer type from typed pointer to void* and add gpu_memory_allocated parameter, removing internal Montgomery conversion from unmanaged wrappers (callers must provide Montgomery points) - Add pippenger_scratch_size_g1/g2 helpers so callers can query exact scratch buffer size instead of computing it externally - Use safe_mul_sizeof from checked_arithmetic.h in managed wrappers, replacing verbose __builtin_mul_overflow blocks - Rename get_msm_threads_per_block -> msm_threads_per_block (int -> uint32_t) - Add Montgomery form annotations to Fp operator declarations - Update Rust FFI bindings to match new C API signatures - Add Display trait doc comments for G1/G2 types noting Montgomery assumption - Add NAMING_CONVENTIONS.md with full naming reference - Update README.md: project structure, MSM API examples, scratch size API, remove dead links