From 79687079a97a039c325ab79d7a95920d800b791f Mon Sep 17 00:00:00 2001 From: Justin Ruggles Date: Mon, 18 Jun 2012 23:39:14 -0400 Subject: x86: add support for fmaddps fma4 instruction with abstraction to avx/sse --- libavutil/x86/x86inc.asm | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) (limited to 'libavutil/x86') diff --git a/libavutil/x86/x86inc.asm b/libavutil/x86/x86inc.asm index b76a10c..4b4a19b 100644 --- a/libavutil/x86/x86inc.asm +++ b/libavutil/x86/x86inc.asm @@ -1093,16 +1093,22 @@ AVX_INSTR pfmul, 1, 0, 1 %undef j %macro FMA_INSTR 3 - %macro %1 4-7 %1, %2, %3 - %if cpuflag(xop) - v%5 %1, %2, %3, %4 + %macro %1 5-8 %1, %2, %3 + %if cpuflag(xop) || cpuflag(fma4) + v%6 %1, %2, %3, %4 %else - %6 %1, %2, %3 - %7 %1, %4 + %ifidn %1, %4 + %7 %5, %2, %3 + %8 %1, %4, %5 + %else + %7 %1, %2, %3 + %8 %1, %4 + %endif %endif %endmacro %endmacro +FMA_INSTR fmaddps, mulps, addps FMA_INSTR pmacsdd, pmulld, paddd FMA_INSTR pmacsww, pmullw, paddw FMA_INSTR pmadcswd, pmaddwd, paddd -- cgit v1.1