From 3039c9bde55eef9b343123a533fc2199c8793f36 Mon Sep 17 00:00:00 2001
From: Jean-Marc Valin <jmvalin@jmvalin.ca>
Date: Mon, 9 Dec 2013 16:31:07 -0500
Subject: [PATCH] Makes silk_inner_prod_aligned() use celt_inner_prod() in
 fixed-point.

Should make it easier when writing assembly.
---
 silk/fixed/vector_ops_FIX.c | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/silk/fixed/vector_ops_FIX.c b/silk/fixed/vector_ops_FIX.c
index 509c8b35a..ad8f07fde 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(
-- 
GitLab