|
|
@@ -29,7 +29,12 @@
|
|
|
#ifndef _ARM_UTILS_HELIUM_H_
|
|
|
#define _ARM_UTILS_HELIUM_H_
|
|
|
|
|
|
-#if defined (ARM_MATH_HELIUM)
|
|
|
+/***************************************
|
|
|
+
|
|
|
+Definitions available for MVEF and MVEI
|
|
|
+
|
|
|
+***************************************/
|
|
|
+#if defined (ARM_MATH_HELIUM) || defined(ARM_MATH_MVEF) || defined(ARM_MATH_MVEI)
|
|
|
|
|
|
#define nbLanes(sz) (128/sz)
|
|
|
|
|
|
@@ -56,6 +61,18 @@
|
|
|
const float16_t*: VEC_LANES_F16, \
|
|
|
default: "err")
|
|
|
|
|
|
+
|
|
|
+
|
|
|
+#define post_incr_vec_size(ptr) ptr += nb_vec_lanes(ptr)
|
|
|
+
|
|
|
+#endif /* defined (ARM_MATH_HELIUM) || defined(ARM_MATH_MVEF) || defined(ARM_MATH_MVEI) */
|
|
|
+
|
|
|
+/***************************************
|
|
|
+
|
|
|
+Definitions available for MVEF only
|
|
|
+
|
|
|
+***************************************/
|
|
|
+#if defined (ARM_MATH_HELIUM) || defined(ARM_MATH_MVEF)
|
|
|
__STATIC_FORCEINLINE float32_t vecAddAcrossF32Mve(float32x4_t in)
|
|
|
{
|
|
|
float32_t acc;
|
|
|
@@ -65,9 +82,14 @@ __STATIC_FORCEINLINE float32_t vecAddAcrossF32Mve(float32x4_t in)
|
|
|
|
|
|
return acc;
|
|
|
}
|
|
|
+#endif /* defined (ARM_MATH_HELIUM) || defined(ARM_MATH_MVEF) */
|
|
|
|
|
|
-#define post_incr_vec_size(ptr) ptr += nb_vec_lanes(ptr)
|
|
|
+/***************************************
|
|
|
+
|
|
|
+Definitions available for MVEI only
|
|
|
|
|
|
-#endif
|
|
|
+***************************************/
|
|
|
+#if defined (ARM_MATH_HELIUM) || defined(ARM_MATH_MVEI)
|
|
|
+#endif /* defined (ARM_MATH_HELIUM) || defined(ARM_MATH_MVEI) */
|
|
|
|
|
|
#endif
|