summaryrefslogtreecommitdiff
path: root/libavcodec/i386
diff options
context:
space:
mode:
authorMichael Niedermayer <michaelni@gmx.at>2003-09-15 19:18:28 +0000
committerMichael Niedermayer <michaelni@gmx.at>2003-09-15 19:18:28 +0000
commit41338ac06f47ae375ab237c351dbac68e7087067 (patch)
tree6224c7514f0b701374883de27c26d111e311302a /libavcodec/i386
parent186447f8fee7f6a0fb58ec243cd0990289d1d8f7 (diff)
another non const static, maybe its thread save now
Originally committed as revision 2276 to svn://svn.ffmpeg.org/ffmpeg/trunk
Diffstat (limited to 'libavcodec/i386')
-rw-r--r--libavcodec/i386/simple_idct_mmx.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/libavcodec/i386/simple_idct_mmx.c b/libavcodec/i386/simple_idct_mmx.c
index 836403ca59..626c1f565b 100644
--- a/libavcodec/i386/simple_idct_mmx.c
+++ b/libavcodec/i386/simple_idct_mmx.c
@@ -47,8 +47,8 @@
static const uint64_t __attribute__((aligned(8))) wm1010= 0xFFFF0000FFFF0000ULL;
static const uint64_t __attribute__((aligned(8))) d40000= 0x0000000000040000ULL;
-static int16_t __attribute__((aligned(8))) temp[64];
-static int16_t __attribute__((aligned(8))) coeffs[]= {
+
+static const int16_t __attribute__((aligned(8))) coeffs[]= {
1<<(ROW_SHIFT-1), 0, 1<<(ROW_SHIFT-1), 0,
// 1<<(COL_SHIFT-1), 0, 1<<(COL_SHIFT-1), 0,
// 0, 1<<(COL_SHIFT-1-16), 0, 1<<(COL_SHIFT-1-16),
@@ -206,6 +206,9 @@ row[7] = input[13];
static inline void idct(int16_t *block)
{
+ int64_t __attribute__((aligned(8))) align_tmp[16];
+ int16_t * const temp= (int16_t*)align_tmp;
+
asm volatile(
#if 0 //Alternative, simpler variant