summaryrefslogtreecommitdiff
path: root/libavutil/x86/x86util.asm
diff options
context:
space:
mode:
Diffstat (limited to 'libavutil/x86/x86util.asm')
-rw-r--r--libavutil/x86/x86util.asm10
1 files changed, 9 insertions, 1 deletions
diff --git a/libavutil/x86/x86util.asm b/libavutil/x86/x86util.asm
index 807e87e60e..1064e9a25c 100644
--- a/libavutil/x86/x86util.asm
+++ b/libavutil/x86/x86util.asm
@@ -340,11 +340,19 @@
%endif
%endmacro
-%macro PAVGB 2
+%macro PAVGB 2-4
%if cpuflag(mmxext)
pavgb %1, %2
%elif cpuflag(3dnow)
pavgusb %1, %2
+%elif cpuflag(mmx)
+ movu %3, %2
+ por %3, %1
+ pxor %1, %2
+ pand %1, %4
+ psrlq %1, 1
+ psubb %3, %1
+ SWAP %1, %3
%endif
%endmacro