comparison x86/x86util.asm @ 12498:c997f09d1e10 libavcodec

Move hadamard_diff{,16}_{mmx,mmx2,sse2,ssse3}() from inline asm to yasm, which will hopefully solve the Win64/FATE failures caused by these functions.
author rbultje
date Fri, 17 Sep 2010 01:56:06 +0000
parents 846779f6b164
children
comparison
equal deleted inserted replaced
12497:c5ffa8b81f9c 12498:c997f09d1e10
146 %macro PSIGNW_SSSE3 2 146 %macro PSIGNW_SSSE3 2
147 psignw %1, %2 147 psignw %1, %2
148 %endmacro 148 %endmacro
149 149
150 %macro ABS1_MMX 2 ; a, tmp 150 %macro ABS1_MMX 2 ; a, tmp
151 pxor %2, %2
152 pcmpgtw %2, %1
153 pxor %1, %2
154 psubw %1, %2
155 %endmacro
156
157 %macro ABS2_MMX 4 ; a, b, tmp0, tmp1
158 pxor %3, %3
159 pxor %4, %4
160 pcmpgtw %3, %1
161 pcmpgtw %4, %2
162 pxor %1, %3
163 pxor %2, %4
164 psubw %1, %3
165 psubw %2, %4
166 %endmacro
167
168 %macro ABS1_MMX2 2 ; a, tmp
151 pxor %2, %2 169 pxor %2, %2
152 psubw %2, %1 170 psubw %2, %1
153 pmaxsw %1, %2 171 pmaxsw %1, %2
154 %endmacro 172 %endmacro
155 173
156 %macro ABS2_MMX 4 ; a, b, tmp0, tmp1 174 %macro ABS2_MMX2 4 ; a, b, tmp0, tmp1
157 pxor %3, %3 175 pxor %3, %3
158 pxor %4, %4 176 pxor %4, %4
159 psubw %3, %1 177 psubw %3, %1
160 psubw %4, %2 178 psubw %4, %2
161 pmaxsw %1, %3 179 pmaxsw %1, %3