aboutsummaryrefslogtreecommitdiffstats
path: root/libavcodec/i386
diff options
context:
space:
mode:
authorMichael Niedermayer <michaelni@gmx.at>2007-08-26 12:34:22 +0000
committerMichael Niedermayer <michaelni@gmx.at>2007-08-26 12:34:22 +0000
commit90e9e94d0fe5f2dc84629354756e031ce295d01c (patch)
treeba94b681d1dcfe31a2ed59303c1b89337281d1c5 /libavcodec/i386
parent71253ce9a685a4fbb507a9cb34f1c7c1253648fe (diff)
downloadffmpeg-90e9e94d0fe5f2dc84629354756e031ce295d01c.tar.gz
workaround gcc bug, untested as my gcc is not complaining
Originally committed as revision 10236 to svn://svn.ffmpeg.org/ffmpeg/trunk
Diffstat (limited to 'libavcodec/i386')
-rw-r--r--libavcodec/i386/dsputil_mmx.c4
-rw-r--r--libavcodec/i386/snowdsp_mmx.c2
2 files changed, 6 insertions, 0 deletions
diff --git a/libavcodec/i386/dsputil_mmx.c b/libavcodec/i386/dsputil_mmx.c
index 191688ce23..ec0b6b6569 100644
--- a/libavcodec/i386/dsputil_mmx.c
+++ b/libavcodec/i386/dsputil_mmx.c
@@ -3623,13 +3623,17 @@ void dsputil_init_mmx(DSPContext* c, AVCodecContext *avctx)
#ifdef CONFIG_SNOW_DECODER
if(mm_flags & MM_SSE2 & 0){
c->horizontal_compose97i = ff_snow_horizontal_compose97i_sse2;
+#ifdef CONFIG_7REGS
c->vertical_compose97i = ff_snow_vertical_compose97i_sse2;
+#endif
c->inner_add_yblock = ff_snow_inner_add_yblock_sse2;
}
else{
if(mm_flags & MM_MMXEXT){
c->horizontal_compose97i = ff_snow_horizontal_compose97i_mmx;
+#ifdef CONFIG_7REGS
c->vertical_compose97i = ff_snow_vertical_compose97i_mmx;
+#endif
}
c->inner_add_yblock = ff_snow_inner_add_yblock_mmx;
}
diff --git a/libavcodec/i386/snowdsp_mmx.c b/libavcodec/i386/snowdsp_mmx.c
index 8271340333..7912fdba5b 100644
--- a/libavcodec/i386/snowdsp_mmx.c
+++ b/libavcodec/i386/snowdsp_mmx.c
@@ -388,6 +388,7 @@ void ff_snow_horizontal_compose97i_mmx(IDWTELEM *b, int width){
}
}
+#ifdef CONFIG_7REGS
#define snow_vertical_compose_sse2_load_add(op,r,t0,t1,t2,t3)\
""op" ("r",%%"REG_d"), %%"t0" \n\t"\
""op" 16("r",%%"REG_d"), %%"t1" \n\t"\
@@ -602,6 +603,7 @@ void ff_snow_vertical_compose97i_mmx(IDWTELEM *b0, IDWTELEM *b1, IDWTELEM *b2, I
:"+d"(i)
:"r"(b0),"r"(b1),"r"(b2),"r"(b3),"r"(b4),"r"(b5));
}
+#endif //CONFIG_7REGS
#define snow_inner_add_yblock_sse2_header \
IDWTELEM * * dst_array = sb->line + src_y;\