Skip to main content

Module tables

Module tables 

Source
Expand description

Lookup-tables used by Engine:s.

All tables are global and each is initialized at most once.

§Tables

TableSizeUsed in encodingUsed in decodingBy engines
Exp128 kiByesyesall
Log128 kiByesyesall
LogWalsh128 kiB-yesall
Mul168 MiByesyesNoSimd
Mul1288 MiByesyesAvx2 Ssse3
Skew128 kiByesyesall

Structs§

ExpLog
Struct holding the Exp and Log lookup tables.
Multiply128lutT
Elements of the Mul128 table

Functions§

get_exp_log
Lazily initialized exponentiation and logarithm tables.
get_log_walsh
Lazily initialized logarithmic Walsh transform table.
get_mul16
Lazily initialized multiplication table for the NoSimd engine.
get_mul128
Lazily initialized multiplication table for SIMD engines.
get_skew
Lazily initialized skew table used in FFT and IFFT operations.
mul
Calculates x * log_m using Exp and Log tables.

Type Aliases§

Exp
Used by Naive engine for multiplications and by all Engine:s to initialize other tables.
Log
Used by Naive engine for multiplications and by all Engine:s to initialize other tables.
LogWalsh
Used by all Engine:s in Engine::eval_poly.
Mul16
Used by NoSimd engine for multiplications.
Mul128
Used by Avx2 and Ssse3 engines for multiplications.
Skew
Used by all Engine:s for FFT and IFFT.