summaryrefslogtreecommitdiffstats
path: root/libass/x86/utils.asm
diff options
context:
space:
mode:
Diffstat (limited to 'libass/x86/utils.asm')
-rw-r--r--libass/x86/utils.asm15
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
;------------------------------------------------------------------------------