Mercurial > libavcodec.hg
comparison x86/vp8dsp.asm @ 12274:1d207bb5cd29 libavcodec
Use nested ifs instead of &&, which appears to not work with %ifidn (i.e. this
construct was always enabled, even for <ssse3 versions).
author | rbultje |
---|---|
date | Mon, 26 Jul 2010 13:56:51 +0000 |
parents | dd90555c98fd |
children | 709d5848abf8 |
comparison
equal
deleted
inserted
replaced
12273:7323559a53fd | 12274:1d207bb5cd29 |
---|---|
1392 and rsp, ~(mmsize-1) ; align stack | 1392 and rsp, ~(mmsize-1) ; align stack |
1393 %endif | 1393 %endif |
1394 %if mmsize == 8 ; mmx/mmxext | 1394 %if mmsize == 8 ; mmx/mmxext |
1395 mov r3, 2 | 1395 mov r3, 2 |
1396 %endif | 1396 %endif |
1397 %ifnidn %1, sse2 && mmsize == 16 | 1397 %ifnidn %1, sse2 |
1398 %if mmsize == 16 | |
1398 pxor m0, m0 | 1399 pxor m0, m0 |
1400 %endif | |
1399 %endif | 1401 %endif |
1400 SPLATB_REG m7, r2, m0 ; splat "flim" into register | 1402 SPLATB_REG m7, r2, m0 ; splat "flim" into register |
1401 | 1403 |
1402 ; set up indexes to address 4 rows | 1404 ; set up indexes to address 4 rows |
1403 mov r2, r1 | 1405 mov r2, r1 |
1582 %define dst2_reg I_reg | 1584 %define dst2_reg I_reg |
1583 %ifndef m8 | 1585 %ifndef m8 |
1584 %define stack_reg hev_thr_reg | 1586 %define stack_reg hev_thr_reg |
1585 %endif | 1587 %endif |
1586 | 1588 |
1587 %ifnidn %1, sse2 && mmsize == 16 | 1589 %ifnidn %1, sse2 |
1590 %if mmsize == 16 | |
1588 pxor m7, m7 | 1591 pxor m7, m7 |
1592 %endif | |
1589 %endif | 1593 %endif |
1590 | 1594 |
1591 %ifndef m8 ; mmx/mmxext or sse2 on x86-32 | 1595 %ifndef m8 ; mmx/mmxext or sse2 on x86-32 |
1592 ; splat function arguments | 1596 ; splat function arguments |
1593 SPLATB_REG m0, E_reg, m7 ; E | 1597 SPLATB_REG m0, E_reg, m7 ; E |
2179 %define dst2_reg I_reg | 2183 %define dst2_reg I_reg |
2180 %ifndef m8 | 2184 %ifndef m8 |
2181 %define stack_reg hev_thr_reg | 2185 %define stack_reg hev_thr_reg |
2182 %endif | 2186 %endif |
2183 | 2187 |
2184 %ifnidn %1, sse2 && mmsize == 16 | 2188 %ifnidn %1, sse2 |
2189 %if mmsize == 16 | |
2185 pxor m7, m7 | 2190 pxor m7, m7 |
2191 %endif | |
2186 %endif | 2192 %endif |
2187 | 2193 |
2188 %ifndef m8 ; mmx/mmxext or sse2 on x86-32 | 2194 %ifndef m8 ; mmx/mmxext or sse2 on x86-32 |
2189 ; splat function arguments | 2195 ; splat function arguments |
2190 SPLATB_REG m0, E_reg, m7 ; E | 2196 SPLATB_REG m0, E_reg, m7 ; E |