changeset 10152:ed85bbd5dccb libavcodec

DCA: move an aligned array from stack to context
author mru
date Thu, 10 Sep 2009 08:49:59 +0000
parents 6cd8b6fd5f0f
children 7a63015e4627
files dca.c
diffstat 1 files changed, 5 insertions(+), 5 deletions(-) [+]
line wrap: on
line diff
--- a/dca.c	Wed Sep 09 21:44:48 2009 +0000
+++ b/dca.c	Thu Sep 10 08:49:59 2009 +0000
@@ -230,6 +230,7 @@
     DECLARE_ALIGNED_16(float, subband_fir_hist[DCA_PRIM_CHANNELS_MAX][512]);
     float subband_fir_noidea[DCA_PRIM_CHANNELS_MAX][32];
     int hist_index[DCA_PRIM_CHANNELS_MAX];
+    DECLARE_ALIGNED_16(float, raXin[32]);
 
     int output;                 ///< type of output
     float add_bias;             ///< output bias
@@ -751,7 +752,6 @@
 {
     const float *prCoeff;
     int i, j;
-    DECLARE_ALIGNED_16(float, raXin[32]);
 
     int hist_index= s->hist_index[chans];
     float *subband_fir_hist2 = s->subband_fir_noidea[chans];
@@ -771,13 +771,13 @@
         float *subband_fir_hist = s->subband_fir_hist[chans] + hist_index;
         /* Load in one sample from each subband and clear inactive subbands */
         for (i = 0; i < s->subband_activity[chans]; i++){
-            if((i-1)&2) raXin[i] = -samples_in[i][subindex];
-            else        raXin[i] =  samples_in[i][subindex];
+            if((i-1)&2) s->raXin[i] = -samples_in[i][subindex];
+            else        s->raXin[i] =  samples_in[i][subindex];
         }
         for (; i < 32; i++)
-            raXin[i] = 0.0;
+            s->raXin[i] = 0.0;
 
-        ff_imdct_half(&s->imdct, subband_fir_hist, raXin);
+        ff_imdct_half(&s->imdct, subband_fir_hist, s->raXin);
 
         /* Multiply by filter coefficients */
         for (i = 0; i < 16; i++){