diff options
author | michael <michael@b3059339-0415-0410-9bf9-f77b7e298cf2> | 2005-06-02 20:54:03 +0000 |
---|---|---|
committer | michael <michael@b3059339-0415-0410-9bf9-f77b7e298cf2> | 2005-06-02 20:54:03 +0000 |
commit | 3f3ef3d48b62dc4b065be2f182ad635b4c083ca4 (patch) | |
tree | 6ec0747b4b55700f563fb2569b7b311cf16b4ce0 /liba52 | |
parent | c9f8f44dbeb88fad8e45d8565aa7c3ed186ed707 (diff) |
one bugfix and a few gcc4 bug workaorunds by (Gianluigi Tiesi: mplayer, netfarm it)
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@15618 b3059339-0415-0410-9bf9-f77b7e298cf2
Diffstat (limited to 'liba52')
-rw-r--r-- | liba52/imdct.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/liba52/imdct.c b/liba52/imdct.c index 67deab8904..68140fc816 100644 --- a/liba52/imdct.c +++ b/liba52/imdct.c @@ -770,6 +770,8 @@ imdct_do_512_sse(sample_t data[],sample_t delay[], sample_t bias) int m; int two_m; int two_m_plus_one; + int two_m_plus_one_shl3; + complex_t *buf_offset; /* sample_t tmp_a_i; sample_t tmp_a_r; @@ -938,6 +940,8 @@ imdct_do_512_sse(sample_t data[],sample_t delay[], sample_t bias) for (m=3; m < 7; m++) { two_m = (1 << m); two_m_plus_one = two_m<<1; + two_m_plus_one_shl3 = (two_m_plus_one<<3); + buf_offset = buf+128; asm volatile( "movl %0, %%esi \n\t" ".balign 16 \n\t" @@ -963,7 +967,7 @@ imdct_do_512_sse(sample_t data[],sample_t delay[], sample_t bias) "addl %2, %%esi \n\t" "cmpl %1, %%esi \n\t" " jb 1b \n\t" - :: "g" (buf), "m" (buf+128), "m" (two_m_plus_one<<3), "r" (two_m<<3), + :: "g" (buf), "m" (buf_offset), "m" (two_m_plus_one_shl3), "r" (two_m<<3), "r" (sseW[m]) : "%esi", "%edi", "%edx" ); |