Browse Source

Use nested ifs instead of &&, which appears to not work with %ifidn (i.e. this

construct was always enabled, even for <ssse3 versions).

Originally committed as revision 24509 to svn://svn.ffmpeg.org/ffmpeg/trunk
tags/n0.8
Ronald S. Bultje 15 years ago
parent
commit
bcd4aa6498
1 changed files with 9 additions and 3 deletions
  1. +9
    -3
      libavcodec/x86/vp8dsp.asm

+ 9
- 3
libavcodec/x86/vp8dsp.asm View File

@@ -1394,8 +1394,10 @@ cglobal vp8_%2_loop_filter_simple_%1, 3, %3
%if mmsize == 8 ; mmx/mmxext %if mmsize == 8 ; mmx/mmxext
mov r3, 2 mov r3, 2
%endif %endif
%ifnidn %1, sse2 && mmsize == 16
%ifnidn %1, sse2
%if mmsize == 16
pxor m0, m0 pxor m0, m0
%endif
%endif %endif
SPLATB_REG m7, r2, m0 ; splat "flim" into register SPLATB_REG m7, r2, m0 ; splat "flim" into register


@@ -1584,9 +1586,11 @@ cglobal vp8_%2_loop_filter16y_inner_%1, 5, %3, %5
%define stack_reg hev_thr_reg %define stack_reg hev_thr_reg
%endif %endif


%ifnidn %1, sse2 && mmsize == 16
%ifnidn %1, sse2
%if mmsize == 16
pxor m7, m7 pxor m7, m7
%endif %endif
%endif


%ifndef m8 ; mmx/mmxext or sse2 on x86-32 %ifndef m8 ; mmx/mmxext or sse2 on x86-32
; splat function arguments ; splat function arguments
@@ -2181,9 +2185,11 @@ cglobal vp8_%2_loop_filter16y_mbedge_%1, 5, %3, %5
%define stack_reg hev_thr_reg %define stack_reg hev_thr_reg
%endif %endif


%ifnidn %1, sse2 && mmsize == 16
%ifnidn %1, sse2
%if mmsize == 16
pxor m7, m7 pxor m7, m7
%endif %endif
%endif


%ifndef m8 ; mmx/mmxext or sse2 on x86-32 %ifndef m8 ; mmx/mmxext or sse2 on x86-32
; splat function arguments ; splat function arguments


Loading…
Cancel
Save