summaryrefslogtreecommitdiff
path: root/silk
diff options
context:
space:
mode:
authorJean-Marc Valin <jmvalin@jmvalin.ca>2013-12-09 16:31:07 -0500
committerJean-Marc Valin <jmvalin@jmvalin.ca>2013-12-09 16:31:07 -0500
commit3039c9bde55eef9b343123a533fc2199c8793f36 (patch)
tree54e8ec13550479feb8d6f983beda7e5f66440eef /silk
parenta9b7def9f5b6e6ee64747572d678735595a897fd (diff)
downloadopus-3039c9bde55eef9b343123a533fc2199c8793f36.tar.gz
Makes silk_inner_prod_aligned() use celt_inner_prod() in fixed-point.
Should make it easier when writing assembly.
Diffstat (limited to 'silk')
-rw-r--r--silk/fixed/vector_ops_FIX.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/silk/fixed/vector_ops_FIX.c b/silk/fixed/vector_ops_FIX.c
index 509c8b35..ad8f07fd 100644
--- a/silk/fixed/vector_ops_FIX.c
+++ b/silk/fixed/vector_ops_FIX.c
@@ -30,6 +30,7 @@ POSSIBILITY OF SUCH DAMAGE.
#endif
#include "SigProc_FIX.h"
+#include "pitch.h"
/* Copy and multiply a vector by a constant */
void silk_scale_copy_vector16(
@@ -73,12 +74,16 @@ opus_int32 silk_inner_prod_aligned(
const opus_int len /* I vector lengths */
)
{
+#ifdef FIXED_POINT
+ return celt_inner_prod(inVec1, inVec2, len);
+#else
opus_int i;
opus_int32 sum = 0;
for( i = 0; i < len; i++ ) {
sum = silk_SMLABB( sum, inVec1[ i ], inVec2[ i ] );
}
return sum;
+#endif
}
opus_int64 silk_inner_prod16_aligned_64(