SecreC 2 language  2.8.0 (2023.09)
Language and standard library reference
Functions
prefixSum

Functions

template<domain D :shared3p >
D uint8 prefixSum (D uint8[[1]] vec)
 
template<domain D :shared3p >
D uint16 prefixSum (D uint16[[1]] vec)
 
template<domain D :shared3p >
D uint32 prefixSum (D uint32[[1]] vec)
 
template<domain D :shared3p >
D uint64 prefixSum (D uint64[[1]] vec)
 
template<domain D :shared3p >
D int8 prefixSum (D int8[[1]] vec)
 
template<domain D :shared3p >
D int16 prefixSum (D int16[[1]] vec)
 
template<domain D :shared3p >
D int32 prefixSum (D int32[[1]] vec)
 
template<domain D :shared3p >
D int64 prefixSum (D int64[[1]] vec)
 

Detailed Description

Fast prefix sum.

Note
D - shared3p protection domain
Supported types - uint8 / uint16 / uint32 / uint / int8 / int16 / int32 / int
Parameters
vec- a vector of supported type
Returns
Turns the input vector [x1, x2, ..., xn] to [x1, x1 + x2, ... , x1 + ... + xn]
Leakage
None

Function Documentation

◆ prefixSum() [1/8]

D int16 prefixSum ( D int16[[1]]  vec)

◆ prefixSum() [2/8]

D int32 prefixSum ( D int32[[1]]  vec)

◆ prefixSum() [3/8]

D int64 prefixSum ( D int64[[1]]  vec)

◆ prefixSum() [4/8]

D int8 prefixSum ( D int8[[1]]  vec)

◆ prefixSum() [5/8]

D uint16 prefixSum ( D uint16[[1]]  vec)

◆ prefixSum() [6/8]

D uint32 prefixSum ( D uint32[[1]]  vec)

◆ prefixSum() [7/8]

D uint64 prefixSum ( D uint64[[1]]  vec)

◆ prefixSum() [8/8]

D uint8 prefixSum ( D uint8[[1]]  vec)