Rev 1905 | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 1905 | Rev 3960 | ||
---|---|---|---|
Line 88... | Line 88... | ||
88 | } |
88 | } |
89 | #endif |
89 | #endif |
90 | } |
90 | } |
Line 91... | Line 91... | ||
91 | 91 | ||
92 | #ifdef OPT_MMXORSSE |
92 | #ifdef OPT_MMXORSSE |
93 | #ifndef OPT_X86_64 |
93 | #if !defined(OPT_X86_64) && !defined(OPT_NEON) |
94 | void make_decode_tables_mmx_asm(long scaleval, float* decwin_mmx, float *decwins); |
94 | void make_decode_tables_mmx_asm(long scaleval, float* decwin_mmx, float *decwins); |
95 | void make_decode_tables_mmx(mpg123_handle *fr) |
95 | void make_decode_tables_mmx(mpg123_handle *fr) |
96 | { |
96 | { |
97 | debug("MMX decode tables"); |
97 | debug("MMX decode tables"); |
Line 208... | Line 208... | ||
208 | scaleval_long = - scaleval_long; |
208 | scaleval_long = - scaleval_long; |
209 | #else |
209 | #else |
210 | scaleval = - scaleval; |
210 | scaleval = - scaleval; |
211 | #endif |
211 | #endif |
212 | } |
212 | } |
213 | #if defined(OPT_X86_64) || defined(OPT_ALTIVEC) || defined(OPT_SSE) || defined(OPT_ARM) |
213 | #if defined(OPT_X86_64) || defined(OPT_ALTIVEC) || defined(OPT_SSE) || defined(OPT_ARM) || defined(OPT_NEON) |
214 | if(fr->cpu_opts.type == x86_64 || fr->cpu_opts.type == altivec || fr->cpu_opts.type == sse || fr->cpu_opts.type == arm) |
214 | if(fr->cpu_opts.type == x86_64 || fr->cpu_opts.type == altivec || fr->cpu_opts.type == sse || fr->cpu_opts.type == arm || fr->cpu_opts.type == neon) |
215 | { /* for float SSE / AltiVec / ARM decoder */ |
215 | { /* for float SSE / AltiVec / ARM decoder */ |
216 | for(i=512; i<512+32; i++) |
216 | for(i=512; i<512+32; i++) |
217 | { |
217 | { |
218 | fr->decwin[i] = (i&1) ? fr->decwin[i] : 0; |
218 | fr->decwin[i] = (i&1) ? fr->decwin[i] : 0; |
219 | } |
219 | } |
220 | for(i=0; i<512; i++) |
220 | for(i=0; i<512; i++) |
221 | { |
221 | { |
222 | fr->decwin[512+32+i] = -fr->decwin[511-i]; |
222 | fr->decwin[512+32+i] = -fr->decwin[511-i]; |
223 | } |
223 | } |
- | 224 | #ifdef OPT_NEON |
|
- | 225 | if(fr->cpu_opts.type == neon) |
|
- | 226 | { |
|
- | 227 | for(i=0; i<512; i+=2) |
|
- | 228 | { |
|
- | 229 | fr->decwin[i] = -fr->decwin[i]; |
|
- | 230 | } |
|
- | 231 | } |
|
- | 232 | #endif |
|
224 | } |
233 | } |
225 | #endif |
234 | #endif |
226 | debug("decode tables done"); |
235 | debug("decode tables done"); |
227 | } |
236 | } |