MPD  0.20.18
Data Structures | Macros
Neon.hxx File Reference
#include "Traits.hxx"
#include <arm_neon.h>
Include dependency graph for Neon.hxx:

Go to the source code of this file.

Data Structures

struct  NeonFloatTo16
 Convert floating point samples to 16 bit signed integer using ARM NEON. More...
 

Macros

#define neon_x4_u(func, result, vector)
 Call a NEON intrinsic for each element in the vector. More...
 
#define neon_x4_b(func, result, vector, ...)
 Call a NEON intrinsic for each element in the vector. More...
 

Macro Definition Documentation

◆ neon_x4_b

#define neon_x4_b (   func,
  result,
  vector,
  ... 
)
Value:
do { \
result.val[0] = func(vector.val[0], __VA_ARGS__); \
result.val[1] = func(vector.val[1], __VA_ARGS__); \
result.val[2] = func(vector.val[2], __VA_ARGS__); \
result.val[3] = func(vector.val[3], __VA_ARGS__); \
} while (0)

Call a NEON intrinsic for each element in the vector.

Parameters
functhe NEON intrinsic
resultthe vector variable that gets assigned the result
vectorthe input vector

Definition at line 48 of file Neon.hxx.

◆ neon_x4_u

#define neon_x4_u (   func,
  result,
  vector 
)
Value:
do { \
result.val[0] = func(vector.val[0]); \
result.val[1] = func(vector.val[1]); \
result.val[2] = func(vector.val[2]); \
result.val[3] = func(vector.val[3]); \
} while (0)

Call a NEON intrinsic for each element in the vector.

Parameters
functhe NEON intrinsic
resultthe vector variable that gets assigned the result
vectorthe input vector

Definition at line 34 of file Neon.hxx.