OLD | NEW |
1 /* Copyright (c) 2014, Cisco Systems, INC | 1 /* Copyright (c) 2014, Cisco Systems, INC |
2 Written by XiangMingZhu WeiZhou MinPeng YanWang | 2 Written by XiangMingZhu WeiZhou MinPeng YanWang |
3 | 3 |
4 Redistribution and use in source and binary forms, with or without | 4 Redistribution and use in source and binary forms, with or without |
5 modification, are permitted provided that the following conditions | 5 modification, are permitted provided that the following conditions |
6 are met: | 6 are met: |
7 | 7 |
8 - Redistributions of source code must retain the above copyright | 8 - Redistributions of source code must retain the above copyright |
9 notice, this list of conditions and the following disclaimer. | 9 notice, this list of conditions and the following disclaimer. |
10 | 10 |
(...skipping 15 matching lines...) Expand all Loading... |
26 */ | 26 */ |
27 | 27 |
28 #if defined(HAVE_CONFIG_H) | 28 #if defined(HAVE_CONFIG_H) |
29 #include "config.h" | 29 #include "config.h" |
30 #endif | 30 #endif |
31 | 31 |
32 #include "x86/x86cpu.h" | 32 #include "x86/x86cpu.h" |
33 #include "celt_lpc.h" | 33 #include "celt_lpc.h" |
34 #include "pitch.h" | 34 #include "pitch.h" |
35 #include "pitch_sse.h" | 35 #include "pitch_sse.h" |
| 36 #include "vq.h" |
36 | 37 |
37 #if defined(OPUS_HAVE_RTCD) | 38 #if defined(OPUS_HAVE_RTCD) |
38 | 39 |
39 # if defined(FIXED_POINT) | 40 # if defined(FIXED_POINT) |
40 | 41 |
41 #if defined(OPUS_X86_MAY_HAVE_SSE4_1) && !defined(OPUS_X86_PRESUME_SSE4_1) | 42 #if defined(OPUS_X86_MAY_HAVE_SSE4_1) && !defined(OPUS_X86_PRESUME_SSE4_1) |
42 | 43 |
43 void (*const CELT_FIR_IMPL[OPUS_ARCHMASK + 1])( | 44 void (*const CELT_FIR_IMPL[OPUS_ARCHMASK + 1])( |
44 const opus_val16 *x, | 45 const opus_val16 *x, |
45 const opus_val16 *num, | 46 const opus_val16 *num, |
46 opus_val16 *y, | 47 opus_val16 *y, |
47 int N, | 48 int N, |
48 int ord, | 49 int ord, |
49 opus_val16 *mem, | |
50 int arch | 50 int arch |
51 ) = { | 51 ) = { |
52 celt_fir_c, /* non-sse */ | 52 celt_fir_c, /* non-sse */ |
53 celt_fir_c, | 53 celt_fir_c, |
54 celt_fir_c, | 54 celt_fir_c, |
55 MAY_HAVE_SSE4_1(celt_fir), /* sse4.1 */ | 55 MAY_HAVE_SSE4_1(celt_fir), /* sse4.1 */ |
56 MAY_HAVE_SSE4_1(celt_fir) /* avx */ | 56 MAY_HAVE_SSE4_1(celt_fir) /* avx */ |
57 }; | 57 }; |
58 | 58 |
59 void (*const XCORR_KERNEL_IMPL[OPUS_ARCHMASK + 1])( | 59 void (*const XCORR_KERNEL_IMPL[OPUS_ARCHMASK + 1])( |
(...skipping 84 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
144 comb_filter_const_c, /* non-sse */ | 144 comb_filter_const_c, /* non-sse */ |
145 MAY_HAVE_SSE(comb_filter_const), | 145 MAY_HAVE_SSE(comb_filter_const), |
146 MAY_HAVE_SSE(comb_filter_const), | 146 MAY_HAVE_SSE(comb_filter_const), |
147 MAY_HAVE_SSE(comb_filter_const), | 147 MAY_HAVE_SSE(comb_filter_const), |
148 MAY_HAVE_SSE(comb_filter_const) | 148 MAY_HAVE_SSE(comb_filter_const) |
149 }; | 149 }; |
150 | 150 |
151 | 151 |
152 #endif | 152 #endif |
153 | 153 |
| 154 #if defined(OPUS_X86_MAY_HAVE_SSE2) && !defined(OPUS_X86_PRESUME_SSE2) |
| 155 opus_val16 (*const OP_PVQ_SEARCH_IMPL[OPUS_ARCHMASK + 1])( |
| 156 celt_norm *_X, int *iy, int K, int N, int arch |
| 157 ) = { |
| 158 op_pvq_search_c, /* non-sse */ |
| 159 op_pvq_search_c, |
| 160 MAY_HAVE_SSE2(op_pvq_search), |
| 161 MAY_HAVE_SSE2(op_pvq_search), |
| 162 MAY_HAVE_SSE2(op_pvq_search) |
| 163 }; |
| 164 #endif |
| 165 |
154 #endif | 166 #endif |
155 #endif | 167 #endif |
OLD | NEW |