summaryrefslogtreecommitdiff
path: root/apps/codecs/Tremor/block.c
diff options
context:
space:
mode:
Diffstat (limited to 'apps/codecs/Tremor/block.c')
-rw-r--r--apps/codecs/Tremor/block.c43
1 files changed, 6 insertions, 37 deletions
diff --git a/apps/codecs/Tremor/block.c b/apps/codecs/Tremor/block.c
index 9dce13c6e5..80cbb7809c 100644
--- a/apps/codecs/Tremor/block.c
+++ b/apps/codecs/Tremor/block.c
@@ -262,11 +262,7 @@ int vorbis_synthesis_blockin(vorbis_dsp_state *v,vorbis_block *vb){
262 vorbis_info *vi=v->vi; 262 vorbis_info *vi=v->vi;
263 codec_setup_info *ci=(codec_setup_info *)vi->codec_setup; 263 codec_setup_info *ci=(codec_setup_info *)vi->codec_setup;
264 private_state *b=v->backend_state; 264 private_state *b=v->backend_state;
265#ifdef CPU_COLDFIRE
266 int j; 265 int j;
267#else
268 int i,j;
269#endif
270 266
271 if(v->pcm_current>v->pcm_returned && v->pcm_returned!=-1)return(OV_EINVAL); 267 if(v->pcm_current>v->pcm_returned && v->pcm_returned!=-1)return(OV_EINVAL);
272 268
@@ -312,47 +308,25 @@ int vorbis_synthesis_blockin(vorbis_dsp_state *v,vorbis_block *vb){
312 /* large/large */ 308 /* large/large */
313 ogg_int32_t *pcm=v->pcm[j]+prevCenter; 309 ogg_int32_t *pcm=v->pcm[j]+prevCenter;
314 ogg_int32_t *p=vb->pcm[j]; 310 ogg_int32_t *p=vb->pcm[j];
315#ifdef CPU_COLDFIRE 311 vect_add(pcm, p, n1);
316 mcf5249_vect_add(pcm, p, n1);
317#else
318 for(i=0;i<n1;i++)
319 pcm[i]+=p[i];
320#endif
321 }else{ 312 }else{
322 /* large/small */ 313 /* large/small */
323 ogg_int32_t *pcm=v->pcm[j]+prevCenter+n1/2-n0/2; 314 ogg_int32_t *pcm=v->pcm[j]+prevCenter+n1/2-n0/2;
324 ogg_int32_t *p=vb->pcm[j]; 315 ogg_int32_t *p=vb->pcm[j];
325#ifdef CPU_COLDFIRE 316 vect_add(pcm, p, n0);
326 mcf5249_vect_add(pcm, p, n0);
327#else
328 for(i=0;i<n0;i++)
329 pcm[i]+=p[i];
330#endif
331 } 317 }
332 }else{ 318 }else{
333 if(v->W){ 319 if(v->W){
334 /* small/large */ 320 /* small/large */
335 ogg_int32_t *pcm=v->pcm[j]+prevCenter; 321 ogg_int32_t *pcm=v->pcm[j]+prevCenter;
336 ogg_int32_t *p=vb->pcm[j]+n1/2-n0/2; 322 ogg_int32_t *p=vb->pcm[j]+n1/2-n0/2;
337#ifdef CPU_COLDFIRE 323 vect_add(pcm, p, n0);
338 mcf5249_vect_add(pcm, p, n0); 324 vect_copy(&pcm[n0], &p[n0], n1/2-n0/2);
339 mcf5249_vect_copy(&pcm[n0], &p[n0], n1/2-n0/2);
340#else
341 for(i=0;i<n0;i++)
342 pcm[i]+=p[i];
343 for(;i<n1/2+n0/2;i++)
344 pcm[i]=p[i];
345#endif
346 }else{ 325 }else{
347 /* small/small */ 326 /* small/small */
348 ogg_int32_t *pcm=v->pcm[j]+prevCenter; 327 ogg_int32_t *pcm=v->pcm[j]+prevCenter;
349 ogg_int32_t *p=vb->pcm[j]; 328 ogg_int32_t *p=vb->pcm[j];
350#ifdef CPU_COLDFIRE 329 vect_add(pcm, p, n0);
351 mcf5249_vect_add(pcm, p, n0);
352#else
353 for(i=0;i<n0;i++)
354 pcm[i]+=p[i];
355#endif
356 } 330 }
357 } 331 }
358 332
@@ -360,12 +334,7 @@ int vorbis_synthesis_blockin(vorbis_dsp_state *v,vorbis_block *vb){
360 { 334 {
361 ogg_int32_t *pcm=v->pcm[j]+thisCenter; 335 ogg_int32_t *pcm=v->pcm[j]+thisCenter;
362 ogg_int32_t *p=vb->pcm[j]+n; 336 ogg_int32_t *p=vb->pcm[j]+n;
363#ifdef CPU_COLDFIRE 337 vect_copy(pcm, p, n);
364 mcf5249_vect_copy(pcm, p, n);
365#else
366 for(i=0;i<n;i++)
367 pcm[i]=p[i];
368#endif
369 } 338 }
370 } 339 }
371 340