34 #ifndef PITCH_MIPSR1_H 35 #define PITCH_MIPSR1_H 37 #define OVERRIDE_DUAL_INNER_PROD 47 asm volatile(
"MULT $ac1, $0, $0");
48 asm volatile(
"MULT $ac2, $0, $0");
52 asm volatile(
"MADD $ac1, %0, %1" : :
"r" ((
int)x[j]),
"r" ((
int)y01[j]));
53 asm volatile(
"MADD $ac2, %0, %1" : :
"r" ((
int)x[j]),
"r" ((
int)y02[j]));
55 asm volatile(
"MADD $ac1, %0, %1" : :
"r" ((
int)x[j]),
"r" ((
int)y01[j]));
56 asm volatile(
"MADD $ac2, %0, %1" : :
"r" ((
int)x[j]),
"r" ((
int)y02[j]));
58 asm volatile (
"mflo %0, $ac1":
"=r"(xy01));
59 asm volatile (
"mflo %0, $ac2":
"=r"(xy02));
64 static inline void xcorr_kernel_mips(
const opus_val16 *
x,
80 for (j=0;j<len-3;j+=4)
86 sum_0 = __builtin_mips_madd( sum_0, tmp, y_0);
87 sum_1 = __builtin_mips_madd( sum_1, tmp, y_1);
88 sum_2 = __builtin_mips_madd( sum_2, tmp, y_2);
89 sum_3 = __builtin_mips_madd( sum_3, tmp, y_3);
94 sum_0 = __builtin_mips_madd( sum_0, tmp, y_1 );
95 sum_1 = __builtin_mips_madd( sum_1, tmp, y_2 );
96 sum_2 = __builtin_mips_madd( sum_2, tmp, y_3);
97 sum_3 = __builtin_mips_madd( sum_3, tmp, y_0);
102 sum_0 = __builtin_mips_madd( sum_0, tmp, y_2 );
103 sum_1 = __builtin_mips_madd( sum_1, tmp, y_3 );
104 sum_2 = __builtin_mips_madd( sum_2, tmp, y_0);
105 sum_3 = __builtin_mips_madd( sum_3, tmp, y_1);
111 sum_0 = __builtin_mips_madd( sum_0, tmp, y_3 );
112 sum_1 = __builtin_mips_madd( sum_1, tmp, y_0 );
113 sum_2 = __builtin_mips_madd( sum_2, tmp, y_1);
114 sum_3 = __builtin_mips_madd( sum_3, tmp, y_2);
122 sum_0 = __builtin_mips_madd( sum_0, tmp, y_0 );
123 sum_1 = __builtin_mips_madd( sum_1, tmp, y_1 );
124 sum_2 = __builtin_mips_madd( sum_2, tmp, y_2);
125 sum_3 = __builtin_mips_madd( sum_3, tmp, y_3);
133 sum_0 = __builtin_mips_madd( sum_0, tmp, y_1 );
134 sum_1 = __builtin_mips_madd( sum_1, tmp, y_2 );
135 sum_2 = __builtin_mips_madd( sum_2, tmp, y_3);
136 sum_3 = __builtin_mips_madd( sum_3, tmp, y_0);
144 sum_0 = __builtin_mips_madd( sum_0, tmp, y_2 );
145 sum_1 = __builtin_mips_madd( sum_1, tmp, y_3 );
146 sum_2 = __builtin_mips_madd( sum_2, tmp, y_0);
147 sum_3 = __builtin_mips_madd( sum_3, tmp, y_1);
157 #define OVERRIDE_XCORR_KERNEL 158 #define xcorr_kernel(x, y, sum, len, arch) \ 159 ((void)(arch), xcorr_kernel_mips(x, y, sum, len)) #define dual_inner_prod(x, y01, y02, N, xy1, xy2, arch)
Definition: pitch.h:154
if sum(size(rttStatsVec)) > 0 figure
float opus_val16
Definition: arch.h:148
void
Definition: AVFoundationCFSoftLinking.h:81
int
Definition: runtests.py:53
OPENSSL_EXPORT const ASN1_OBJECT int const unsigned char int len
Definition: x509.h:1053
EGLSurface EGLint x
Definition: eglext.h:950
EGLSurface EGLint EGLint y
Definition: eglext.h:950
#define N
Definition: gcc-loops.cpp:14
string arch
Definition: runtests.py:65
float opus_val32
Definition: arch.h:149
#define opus_int64
Definition: opus_types.h:152
for for j
Definition: complexityMeasures.m:25