diff options
Diffstat (limited to 'src/libFLAC/deduplication/lpc_compute_autocorrelation_intrin.c')
-rw-r--r-- | src/libFLAC/deduplication/lpc_compute_autocorrelation_intrin.c | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/src/libFLAC/deduplication/lpc_compute_autocorrelation_intrin.c b/src/libFLAC/deduplication/lpc_compute_autocorrelation_intrin.c new file mode 100644 index 00000000..5843b000 --- /dev/null +++ b/src/libFLAC/deduplication/lpc_compute_autocorrelation_intrin.c @@ -0,0 +1,13 @@ + (void) lag; + FLAC__ASSERT(lag <= MAX_LAG); + + for(int i = 0; i < MAX_LAG; i++) + autoc[i] = 0.0; + + for(int i = 0; i < MAX_LAG; i++) + for(int j = 0; j <= i; j++) + autoc[j] += (double)data[i] * (double)data[i-j]; + + for(int i = MAX_LAG; i < (int)data_len; i++) + for(int j = 0; j < MAX_LAG; j++) + autoc[j] += (double)data[i] * (double)data[i-j]; |