summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--volk/include/volk/volk_32s_and_aligned16.h14
-rw-r--r--volk/include/volk/volk_8s_convert_16s_aligned16.h12
-rw-r--r--volk/include/volk/volk_8s_convert_32f_aligned16.h13
-rw-r--r--volk/orc/Makefile.am5
4 files changed, 42 insertions, 2 deletions
diff --git a/volk/include/volk/volk_32s_and_aligned16.h b/volk/include/volk/volk_32s_and_aligned16.h
index e9f1e3a43..16c63fd48 100644
--- a/volk/include/volk/volk_32s_and_aligned16.h
+++ b/volk/include/volk/volk_32s_and_aligned16.h
@@ -63,7 +63,19 @@ static inline void volk_32s_and_aligned16_generic(int32_t* cVector, const int32_
}
#endif /* LV_HAVE_GENERIC */
-
+#if LV_HAVE_ORC
+/*!
+ \brief Ands the two input vectors and store their results in the third vector
+ \param cVector The vector where the results will be stored
+ \param aVector One of the vectors
+ \param bVector One of the vectors
+ \param num_points The number of values in aVector and bVector to be anded together and stored into cVector
+*/
+extern void volk_32s_and_aligned16_orc_impl(int32_t* cVector, const int32_t* aVector, const int32_t* bVector, unsigned int num_points);
+static inline void volk_32s_and_aligned16_orc(int32_t* cVector, const int32_t* aVector, const int32_t* bVector, unsigned int num_points){
+ volk_32s_and_aligned16_orc_impl(cVector, aVector, bVector, num_points);
+}
+#endif /* LV_HAVE_ORC */
#endif /* INCLUDED_VOLK_32s_AND_ALIGNED16_H */
diff --git a/volk/include/volk/volk_8s_convert_16s_aligned16.h b/volk/include/volk/volk_8s_convert_16s_aligned16.h
index 0efe3c6a1..c52c64eae 100644
--- a/volk/include/volk/volk_8s_convert_16s_aligned16.h
+++ b/volk/include/volk/volk_8s_convert_16s_aligned16.h
@@ -65,6 +65,18 @@ static inline void volk_8s_convert_16s_aligned16_generic(int16_t* outputVector,
}
#endif /* LV_HAVE_GENERIC */
+#if LV_HAVE_ORC
+ /*!
+ \brief Converts the input 8 bit integer data into 16 bit integer data
+ \param inputVector The 8 bit input data buffer
+ \param outputVector The 16 bit output data buffer
+ \param num_points The number of data values to be converted
+ */
+extern void volk_8s_convert_16s_aligned16_orc_impl(int16_t* outputVector, const int8_t* inputVector, unsigned int num_points);
+static inline void volk_8s_convert_16s_aligned16_orc(int16_t* outputVector, const int8_t* inputVector, unsigned int num_points){
+ volk_8s_convert_16s_aligned16_orc_impl(outputVector, inputVector, num_points);
+}
+#endif /* LV_HAVE_ORC */
diff --git a/volk/include/volk/volk_8s_convert_32f_aligned16.h b/volk/include/volk/volk_8s_convert_32f_aligned16.h
index 54b66ef8f..700a0fa42 100644
--- a/volk/include/volk/volk_8s_convert_32f_aligned16.h
+++ b/volk/include/volk/volk_8s_convert_32f_aligned16.h
@@ -86,6 +86,19 @@ static inline void volk_8s_convert_32f_aligned16_generic(float* outputVector, co
}
#endif /* LV_HAVE_GENERIC */
+#if LV_HAVE_ORC
+ /*!
+ \brief Converts the input 8 bit integer data into floating point data, and divides the each floating point output data point by the scalar value
+ \param inputVector The 8 bit input data buffer
+ \param outputVector The floating point output data buffer
+ \param scalar The value divided against each point in the output buffer
+ \param num_points The number of data values to be converted
+ */
+extern void volk_8s_convert_32f_aligned16_orc_impl(float* outputVector, const int8_t* inputVector, const float scalar, unsigned int num_points);
+static inline void volk_8s_convert_32f_aligned16_orc(float* outputVector, const int8_t* inputVector, const float scalar, unsigned int num_points){
+ volk_8s_convert_32f_aligned16_orc_impl(outputVector, inputVector, scalar, num_points);
+}
+#endif /* LV_HAVE_ORC */
diff --git a/volk/orc/Makefile.am b/volk/orc/Makefile.am
index 092e66534..a4af7dac6 100644
--- a/volk/orc/Makefile.am
+++ b/volk/orc/Makefile.am
@@ -23,7 +23,10 @@ lib_LTLIBRARIES = libvolk_orc.la
libvolk_orc_la_LDFLAGS = $(ORC_LDFLAGS)
libvolk_orc_la_SOURCES = \
-volk_32f_sqrt_aligned16_orc_impl.orc
+volk_32f_sqrt_aligned16_orc_impl.orc \
+volk_8s_convert_16s_aligned16_orc_impl.orc \
+volk_8s_convert_32f_aligned16_orc_impl.orc \
+volk_32s_and_aligned16_orc_impl