summaryrefslogtreecommitdiff
path: root/libavutil/float_dsp.h
diff options
context:
space:
mode:
authorJustin Ruggles <justin.ruggles@gmail.com>2012-09-24 15:00:53 -0400
committerJustin Ruggles <justin.ruggles@gmail.com>2012-12-05 11:23:36 -0500
commitac7eb4cb20ea84cfc911794722695d501b354ee9 (patch)
treeb9736adb1c0e993f0051b11cc249b67404e518f3 /libavutil/float_dsp.h
parentda025d115a1ada58081cd869e85b81a1c183ae9e (diff)
float_dsp: add vector_dmul_scalar() to multiply a vector of doubles
Include x86-optimized versions for SSE2 and AVX.
Diffstat (limited to 'libavutil/float_dsp.h')
-rw-r--r--libavutil/float_dsp.h15
1 files changed, 15 insertions, 0 deletions
diff --git a/libavutil/float_dsp.h b/libavutil/float_dsp.h
index cb4b28f0e2..41b73c5b26 100644
--- a/libavutil/float_dsp.h
+++ b/libavutil/float_dsp.h
@@ -66,6 +66,21 @@ typedef struct AVFloatDSPContext {
*/
void (*vector_fmul_scalar)(float *dst, const float *src, float mul,
int len);
+
+ /**
+ * Multiply a vector of double by a scalar double. Source and
+ * destination vectors must overlap exactly or not at all.
+ *
+ * @param dst result vector
+ * constraints: 32-byte aligned
+ * @param src input vector
+ * constraints: 32-byte aligned
+ * @param mul scalar value
+ * @param len length of vector
+ * constraints: multiple of 8
+ */
+ void (*vector_dmul_scalar)(double *dst, const double *src, double mul,
+ int len);
} AVFloatDSPContext;
/**