diff options
author | Clément Bœsch <u@pkh.me> | 2014-01-11 12:58:08 +0100 |
---|---|---|
committer | Clément Bœsch <u@pkh.me> | 2014-01-12 20:19:00 +0100 |
commit | e11ceea68ff365e59e0fa8dea0c28182dc6f4287 (patch) | |
tree | b3587463ce4173d01faa42cbbf210333d6472709 /libavcodec | |
parent | c9aa0b8f70b14d8898dd70d18ed8ee8634209eb2 (diff) | |
download | ffmpeg-e11ceea68ff365e59e0fa8dea0c28182dc6f4287.tar.gz |
vp9/x86: factor out some code in VP9_UNPACK_MULSUB_2W_4X.
Diffstat (limited to 'libavcodec')
-rw-r--r-- | libavcodec/x86/vp9itxfm.asm | 17 |
1 files changed, 9 insertions, 8 deletions
diff --git a/libavcodec/x86/vp9itxfm.asm b/libavcodec/x86/vp9itxfm.asm index 8f2a6e0865..fe04b81a26 100644 --- a/libavcodec/x86/vp9itxfm.asm +++ b/libavcodec/x86/vp9itxfm.asm @@ -70,21 +70,22 @@ SECTION .text psrad m%2, 14 %endmacro -%macro VP9_UNPACK_MULSUB_2W_4X 7-9 ; dst1, dst2, (src1, src2,) coef1, coef2, rnd, tmp1, tmp2 -%if %0 == 7 - punpckhwd m%6, m%2, m%1 +%macro VP9_MULSUB_2W_4X 7 ; dst1, dst2, coef1, coef2, rnd, tmp1/src, tmp2 VP9_MULSUB_2W_2X %7, %6, %5, [pw_m%3_%4], [pw_%4_%3] - punpcklwd m%2, m%1 VP9_MULSUB_2W_2X %1, %2, %5, [pw_m%3_%4], [pw_%4_%3] packssdw m%1, m%7 packssdw m%2, m%6 +%endmacro + +%macro VP9_UNPACK_MULSUB_2W_4X 7-9 ; dst1, dst2, (src1, src2,) coef1, coef2, rnd, tmp1, tmp2 +%if %0 == 7 + punpckhwd m%6, m%2, m%1 + punpcklwd m%2, m%1 + VP9_MULSUB_2W_4X %1, %2, %3, %4, %5, %6, %7 %else punpckhwd m%8, m%4, m%3 - VP9_MULSUB_2W_2X %9, %8, %7, [pw_m%5_%6], [pw_%6_%5] punpcklwd m%2, m%4, m%3 - VP9_MULSUB_2W_2X %1, %2, %7, [pw_m%5_%6], [pw_%6_%5] - packssdw m%1, m%9 - packssdw m%2, m%8 + VP9_MULSUB_2W_4X %1, %2, %5, %6, %7, %8, %9 %endif %endmacro |