diff options
Diffstat (limited to 'libass/x86/utils.asm')
-rw-r--r-- | libass/x86/utils.asm | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/libass/x86/utils.asm b/libass/x86/utils.asm index 9d0ecb9..9102472 100644 --- a/libass/x86/utils.asm +++ b/libass/x86/utils.asm @@ -64,13 +64,26 @@ movd xm%1, %2 %if mmsize == 32 vpbroadcastw m%1, xm%1 -%elif mmsize == 16 +%else punpcklwd m%1, m%1 pshufd m%1, m%1, q0000 %endif %endmacro ;------------------------------------------------------------------------------ +; BCASTD 1:m_dst, 2:r_src +;------------------------------------------------------------------------------ + +%macro BCASTD 2 + movd xm%1, %2 +%if mmsize == 32 + vpbroadcastd m%1, xm%1 +%else + pshufd m%1, m%1, q0000 +%endif +%endmacro + +;------------------------------------------------------------------------------ ; PABSW 1:m_reg, 2:m_tmp ;------------------------------------------------------------------------------ |