Project Ne10
An open, optimized software library for the ARM architecture.
Classes | Macros | Typedefs | Functions
NE10_fft_generic_int32.neonintrinsic.h File Reference
#include "NE10_types.h"
#include "NE10_macros.h"
#include "NE10_fft.neonintrinsic.h"
#include "NE10_fft_generic_int32.h"

Go to the source code of this file.

Classes

struct  NE10_FFT_SCALING< RADIX, SIZE >
 
struct  NE10_FFT_SCALING< RADIX, 1 >
 

Macros

#define NE10_REAL_DUP_NEON_S32   vdupq_n_s32
 
#define NE10_CPLX_LOAD(PTR)   vld2q_s32 ((ne10_int32_t*) (PTR))
 
#define NE10_CPLX_STORE(PTR, OUT)
 

Typedefs

typedef int32x4x2_t CPLX
 
typedef int32x4_t REAL
 

Functions

template<>
CPLX NE10_CPX_LOAD_S< CPLX > (const CPLX *ptr)
 
template<>
void NE10_CPX_STORE_S< CPLX > (CPLX *ptr, const CPLX out)
 
template<>
void NE10_LOAD_BY_STEP< 1, CPLX > (CPLX out[1], const CPLX *Fin, const ne10_int32_t)
 
template<>
void NE10_STORE_BY_STEP< 1, CPLX > (CPLX *Fout, const CPLX out[1], const ne10_int32_t)
 
template<int RADIX>
void NE10_LOAD_TW_AND_MUL (CPLX scratch_in[RADIX], const ne10_fft_cpx_int32_t *ptr_in, const ne10_int32_t step)
 
template<>
void NE10_LOAD_TW_AND_MUL< 1 > (CPLX[1], const ne10_fft_cpx_int32_t *, const ne10_int32_t)
 
template<>
void NE10_CONJ_S< CPLX > (CPLX &cplx)
 
template<>
void NE10_CONJ< 1, CPLX > (CPLX in[1])
 
void NE10_CPX_ADD_NEON_S32 (CPLX &result, const CPLX a, const CPLX b)
 
void NE10_CPX_SUB_NEON_S32 (CPLX &result, const CPLX a, const CPLX b)
 
REAL NE10_HALF (REAL src)
 
template<int RADIX>
void NE10_FFT_FCU_NEON_S32 (CPLX[RADIX], const CPLX[RADIX])
 
template<>
void NE10_FFT_FCU_NEON_S32< 2 > (CPLX scratch_out[2], const CPLX scratch_in[2])
 
template<>
void NE10_FFT_FCU_NEON_S32< 3 > (CPLX Fout[3], const CPLX Fin[3])
 
template<>
void NE10_FFT_FCU_NEON_S32< 4 > (CPLX scratch_out[4], const CPLX scratch_in[4])
 
template<>
void NE10_FFT_FCU_NEON_S32< 5 > (CPLX Fout[5], const CPLX Fin[5])
 

Macro Definition Documentation

#define NE10_CPLX_LOAD (   PTR)    vld2q_s32 ((ne10_int32_t*) (PTR))

Definition at line 64 of file NE10_fft_generic_int32.neonintrinsic.h.

#define NE10_CPLX_STORE (   PTR,
  OUT 
)
Value:
do { \
vst2q_s32 ((ne10_int32_t*) (PTR), OUT); \
} while (0)
int32_t ne10_int32_t
Definition: NE10_types.h:76

Definition at line 65 of file NE10_fft_generic_int32.neonintrinsic.h.

#define NE10_REAL_DUP_NEON_S32   vdupq_n_s32

Definition at line 61 of file NE10_fft_generic_int32.neonintrinsic.h.

Typedef Documentation

typedef int32x4x2_t CPLX

Definition at line 59 of file NE10_fft_generic_int32.neonintrinsic.h.

typedef int32x4_t REAL

Definition at line 60 of file NE10_fft_generic_int32.neonintrinsic.h.

Function Documentation

template<>
void NE10_CONJ< 1, CPLX > ( CPLX  in[1])
inline

Definition at line 182 of file NE10_fft_generic_int32.neonintrinsic.h.

template<>
void NE10_CONJ_S< CPLX > ( CPLX cplx)
inline

Definition at line 176 of file NE10_fft_generic_int32.neonintrinsic.h.

void NE10_CPX_ADD_NEON_S32 ( CPLX result,
const CPLX  a,
const CPLX  b 
)
inline

Definition at line 228 of file NE10_fft_generic_int32.neonintrinsic.h.

template<>
CPLX NE10_CPX_LOAD_S< CPLX > ( const CPLX ptr)
inline

Definition at line 105 of file NE10_fft_generic_int32.neonintrinsic.h.

template<>
void NE10_CPX_STORE_S< CPLX > ( CPLX ptr,
const CPLX  out 
)
inline

Definition at line 111 of file NE10_fft_generic_int32.neonintrinsic.h.

void NE10_CPX_SUB_NEON_S32 ( CPLX result,
const CPLX  a,
const CPLX  b 
)
inline

Definition at line 234 of file NE10_fft_generic_int32.neonintrinsic.h.

template<int RADIX>
void NE10_FFT_FCU_NEON_S32 ( CPLX  [RADIX],
const CPLX  [RADIX] 
)
inline
template<>
void NE10_FFT_FCU_NEON_S32< 2 > ( CPLX  scratch_out[2],
const CPLX  scratch_in[2] 
)
inline

Definition at line 257 of file NE10_fft_generic_int32.neonintrinsic.h.

template<>
void NE10_FFT_FCU_NEON_S32< 3 > ( CPLX  Fout[3],
const CPLX  Fin[3] 
)
inline

Definition at line 265 of file NE10_fft_generic_int32.neonintrinsic.h.

template<>
void NE10_FFT_FCU_NEON_S32< 4 > ( CPLX  scratch_out[4],
const CPLX  scratch_in[4] 
)
inline

Definition at line 297 of file NE10_fft_generic_int32.neonintrinsic.h.

template<>
void NE10_FFT_FCU_NEON_S32< 5 > ( CPLX  Fout[5],
const CPLX  Fin[5] 
)
inline

Definition at line 317 of file NE10_fft_generic_int32.neonintrinsic.h.

REAL NE10_HALF ( REAL  src)
inline

Definition at line 240 of file NE10_fft_generic_int32.neonintrinsic.h.

template<>
void NE10_LOAD_BY_STEP< 1, CPLX > ( CPLX  out[1],
const CPLX Fin,
const ne10_int32_t   
)
inline

Definition at line 117 of file NE10_fft_generic_int32.neonintrinsic.h.

template<int RADIX>
void NE10_LOAD_TW_AND_MUL ( CPLX  scratch_in[RADIX],
const ne10_fft_cpx_int32_t ptr_in,
const ne10_int32_t  step 
)
inline

Definition at line 151 of file NE10_fft_generic_int32.neonintrinsic.h.

template<>
void NE10_LOAD_TW_AND_MUL< 1 > ( CPLX  [1],
const ne10_fft_cpx_int32_t ,
const ne10_int32_t   
)
inline

Definition at line 166 of file NE10_fft_generic_int32.neonintrinsic.h.

template<>
void NE10_STORE_BY_STEP< 1, CPLX > ( CPLX Fout,
const CPLX  out[1],
const ne10_int32_t   
)
inline

Definition at line 125 of file NE10_fft_generic_int32.neonintrinsic.h.