LibSWIFFT  1.2.0
Macros | Functions
swifft_arith_api.inl File Reference

LibSWIFFT internal C arithmetic API. More...

This graph shows which files directly or indirectly include this file:

Macros

#define LIBSWIFFT_API(name)   name
 

Functions

void LIBSWIFFT_API() SWIFFT_ConstSet (BitSequence output[SWIFFT_OUTPUT_BLOCK_SIZE], const int16_t operand)
 Sets a constant value at each SWIFFT hash value element. More...
 
void LIBSWIFFT_API() SWIFFT_ConstAdd (BitSequence output[SWIFFT_OUTPUT_BLOCK_SIZE], const int16_t operand)
 Adds a constant value to each SWIFFT hash value element. More...
 
void LIBSWIFFT_API() SWIFFT_ConstSub (BitSequence output[SWIFFT_OUTPUT_BLOCK_SIZE], const int16_t operand)
 Subtracts a constant value from each SWIFFT hash value element. More...
 
void LIBSWIFFT_API() SWIFFT_ConstMul (BitSequence output[SWIFFT_OUTPUT_BLOCK_SIZE], const int16_t operand)
 Multiply a constant value into each SWIFFT hash value element. More...
 
void LIBSWIFFT_API() SWIFFT_Set (BitSequence output[SWIFFT_OUTPUT_BLOCK_SIZE], const BitSequence operand[SWIFFT_OUTPUT_BLOCK_SIZE])
 Sets a SWIFFT hash value to another, element-wise. More...
 
void LIBSWIFFT_API() SWIFFT_Add (BitSequence output[SWIFFT_OUTPUT_BLOCK_SIZE], const BitSequence operand[SWIFFT_OUTPUT_BLOCK_SIZE])
 Adds a SWIFFT hash value to another, element-wise. More...
 
void LIBSWIFFT_API() SWIFFT_Sub (BitSequence output[SWIFFT_OUTPUT_BLOCK_SIZE], const BitSequence operand[SWIFFT_OUTPUT_BLOCK_SIZE])
 Subtracts a SWIFFT hash value from another, element-wise. More...
 
void LIBSWIFFT_API() SWIFFT_Mul (BitSequence output[SWIFFT_OUTPUT_BLOCK_SIZE], const BitSequence operand[SWIFFT_OUTPUT_BLOCK_SIZE])
 Multiplies a SWIFFT hash value from another, element-wise. More...
 
void LIBSWIFFT_API() SWIFFT_ConstSetMultiple (int nblocks, BitSequence *output, const int16_t *operand)
 Sets a constant value at each SWIFFT hash value element for multiple blocks. More...
 
void LIBSWIFFT_API() SWIFFT_ConstAddMultiple (int nblocks, BitSequence *output, const int16_t *operand)
 Adds a constant value to each SWIFFT hash value element for multiple blocks. More...
 
void LIBSWIFFT_API() SWIFFT_ConstSubMultiple (int nblocks, BitSequence *output, const int16_t *operand)
 Subtracts a constant value from each SWIFFT hash value element for multiple blocks. More...
 
void LIBSWIFFT_API() SWIFFT_ConstMulMultiple (int nblocks, BitSequence *output, const int16_t *operand)
 Multiply a constant value into each SWIFFT hash value element for multiple blocks. More...
 
void LIBSWIFFT_API() SWIFFT_SetMultiple (int nblocks, BitSequence *output, const BitSequence *operand)
 Sets a SWIFFT hash value to another, element-wise, for multiple blocks. More...
 
void LIBSWIFFT_API() SWIFFT_AddMultiple (int nblocks, BitSequence *output, const BitSequence *operand)
 Adds a SWIFFT hash value to another, element-wise, for multiple blocks. More...
 
void LIBSWIFFT_API() SWIFFT_SubMultiple (int nblocks, BitSequence *output, const BitSequence *operand)
 Subtracts a SWIFFT hash value from another, element-wise, for multiple blocks. More...
 
void LIBSWIFFT_API() SWIFFT_MulMultiple (int nblocks, BitSequence *output, const BitSequence *operand)
 Multiplies a SWIFFT hash value from another, element-wise, for multiple blocks. More...
 

Detailed Description

LibSWIFFT internal C arithmetic API.

Macro Definition Documentation

◆ LIBSWIFFT_API

#define LIBSWIFFT_API (   name)    name

Function Documentation

◆ SWIFFT_Add()

void LIBSWIFFT_API() SWIFFT_Add ( BitSequence  output[SWIFFT_OUTPUT_BLOCK_SIZE],
const BitSequence  operand[SWIFFT_OUTPUT_BLOCK_SIZE] 
)

Adds a SWIFFT hash value to another, element-wise.

Parameters
[in,out]outputthe hash value of SWIFFT to modify.
[in]operandthe hash value to add.

◆ SWIFFT_AddMultiple()

void LIBSWIFFT_API() SWIFFT_AddMultiple ( int  nblocks,
BitSequence output,
const BitSequence operand 
)

Adds a SWIFFT hash value to another, element-wise, for multiple blocks.

Parameters
[in]nblocksthe number of blocks to operate on.
[in,out]outputthe hash value of SWIFFT to modify.
[in]operandthe hash value to add.
[in]nblocksthe number of blocks to operate on.
[in,out]outputthe hash value of SWIFFT to modify, per block.
[in]operandthe hash value to add, per block.

◆ SWIFFT_ConstAdd()

void LIBSWIFFT_API() SWIFFT_ConstAdd ( BitSequence  output[SWIFFT_OUTPUT_BLOCK_SIZE],
const int16_t  operand 
)

Adds a constant value to each SWIFFT hash value element.

Parameters
[in,out]outputthe hash value of SWIFFT to modify.
[in]operandthe constant value to add.

◆ SWIFFT_ConstAddMultiple()

void LIBSWIFFT_API() SWIFFT_ConstAddMultiple ( int  nblocks,
BitSequence output,
const int16_t *  operand 
)

Adds a constant value to each SWIFFT hash value element for multiple blocks.

Parameters
[in]nblocksthe number of blocks to operate on.
[in,out]outputthe hash value of SWIFFT to modify, per block.
[in]operandthe constant value to add, per block.

◆ SWIFFT_ConstMul()

void LIBSWIFFT_API() SWIFFT_ConstMul ( BitSequence  output[SWIFFT_OUTPUT_BLOCK_SIZE],
const int16_t  operand 
)

Multiply a constant value into each SWIFFT hash value element.

Parameters
[in,out]outputthe hash value of SWIFFT to modify.
[in]operandthe constant value to multiply by.

◆ SWIFFT_ConstMulMultiple()

void LIBSWIFFT_API() SWIFFT_ConstMulMultiple ( int  nblocks,
BitSequence output,
const int16_t *  operand 
)

Multiply a constant value into each SWIFFT hash value element for multiple blocks.

Parameters
[in]nblocksthe number of blocks to operate on.
[in,out]outputthe hash value of SWIFFT to modify, per block.
[in]operandthe constant value to multiply by, per block.

◆ SWIFFT_ConstSet()

void LIBSWIFFT_API() SWIFFT_ConstSet ( BitSequence  output[SWIFFT_OUTPUT_BLOCK_SIZE],
const int16_t  operand 
)

Sets a constant value at each SWIFFT hash value element.

Parameters
[out]outputthe hash value of SWIFFT to modify.
[in]operandthe constant value to set.

◆ SWIFFT_ConstSetMultiple()

void LIBSWIFFT_API() SWIFFT_ConstSetMultiple ( int  nblocks,
BitSequence output,
const int16_t *  operand 
)

Sets a constant value at each SWIFFT hash value element for multiple blocks.

Parameters
[in]nblocksthe number of blocks to operate on.
[out]outputthe hash value of SWIFFT to modify, per block.
[in]operandthe constant value to set, per block.

◆ SWIFFT_ConstSub()

void LIBSWIFFT_API() SWIFFT_ConstSub ( BitSequence  output[SWIFFT_OUTPUT_BLOCK_SIZE],
const int16_t  operand 
)

Subtracts a constant value from each SWIFFT hash value element.

Parameters
[in,out]outputthe hash value of SWIFFT to modify.
[in]operandthe constant value to subtract.

◆ SWIFFT_ConstSubMultiple()

void LIBSWIFFT_API() SWIFFT_ConstSubMultiple ( int  nblocks,
BitSequence output,
const int16_t *  operand 
)

Subtracts a constant value from each SWIFFT hash value element for multiple blocks.

Parameters
[in]nblocksthe number of blocks to operate on.
[in,out]outputthe hash value of SWIFFT to modify, per block.
[in]operandthe constant value to subtract, per block.

◆ SWIFFT_Mul()

void LIBSWIFFT_API() SWIFFT_Mul ( BitSequence  output[SWIFFT_OUTPUT_BLOCK_SIZE],
const BitSequence  operand[SWIFFT_OUTPUT_BLOCK_SIZE] 
)

Multiplies a SWIFFT hash value from another, element-wise.

Parameters
[in,out]outputthe hash value of SWIFFT to modify.
[in]operandthe hash value to multiply by.

◆ SWIFFT_MulMultiple()

void LIBSWIFFT_API() SWIFFT_MulMultiple ( int  nblocks,
BitSequence output,
const BitSequence operand 
)

Multiplies a SWIFFT hash value from another, element-wise, for multiple blocks.

Parameters
[in]nblocksthe number of blocks to operate on.
[in,out]outputthe hash value of SWIFFT to modify.
[in]operandthe hash value to multiply by.
[in]nblocksthe number of blocks to operate on.
[in,out]outputthe hash value of SWIFFT to modify, per block.
[in]operandthe hash value to multiply by, per block.

◆ SWIFFT_Set()

void LIBSWIFFT_API() SWIFFT_Set ( BitSequence  output[SWIFFT_OUTPUT_BLOCK_SIZE],
const BitSequence  operand[SWIFFT_OUTPUT_BLOCK_SIZE] 
)

Sets a SWIFFT hash value to another, element-wise.

Parameters
[in,out]outputthe hash value of SWIFFT to modify.
[in]operandthe hash value to set to.

◆ SWIFFT_SetMultiple()

void LIBSWIFFT_API() SWIFFT_SetMultiple ( int  nblocks,
BitSequence output,
const BitSequence operand 
)

Sets a SWIFFT hash value to another, element-wise, for multiple blocks.

Parameters
[in]nblocksthe number of blocks to operate on.
[in,out]outputthe hash value of SWIFFT to modify.
[in]operandthe hash value to set to.
[in]nblocksthe number of blocks to operate on.
[in,out]outputthe hash value of SWIFFT to modify, per block.
[in]operandthe hash value to set to, per block.

◆ SWIFFT_Sub()

void LIBSWIFFT_API() SWIFFT_Sub ( BitSequence  output[SWIFFT_OUTPUT_BLOCK_SIZE],
const BitSequence  operand[SWIFFT_OUTPUT_BLOCK_SIZE] 
)

Subtracts a SWIFFT hash value from another, element-wise.

Parameters
[in,out]outputthe hash value of SWIFFT to modify.
[in]operandthe hash value to subtract.

◆ SWIFFT_SubMultiple()

void LIBSWIFFT_API() SWIFFT_SubMultiple ( int  nblocks,
BitSequence output,
const BitSequence operand 
)

Subtracts a SWIFFT hash value from another, element-wise, for multiple blocks.

Parameters
[in]nblocksthe number of blocks to operate on.
[in,out]outputthe hash value of SWIFFT to modify.
[in]operandthe hash value to subtract.
[in]nblocksthe number of blocks to operate on.
[in,out]outputthe hash value of SWIFFT to modify, per block.
[in]operandthe hash value to subtract, per block.