summaryrefslogtreecommitdiff
path: root/libavutil
diff options
context:
space:
mode:
authorClément Bœsch <u@pkh.me>2017-03-20 18:38:07 +0100
committerClément Bœsch <u@pkh.me>2017-03-20 18:38:07 +0100
commit3898e346b33515897d6ea83369f39e9d10a419bb (patch)
tree8611a3db8a4e2b7459aa93d070894f36ea185309 /libavutil
parent37cf0d0bbfa0c976c2a7d630d953d6ea4a8979e0 (diff)
parent07e1f99a1bb41d1a615676140eefc85cf69fa793 (diff)
Merge commit '07e1f99a1bb41d1a615676140eefc85cf69fa793'
* commit '07e1f99a1bb41d1a615676140eefc85cf69fa793': x86util: Document SBUTTERFLY macro Merged-by: Clément Bœsch <u@pkh.me>
Diffstat (limited to 'libavutil')
-rw-r--r--libavutil/x86/x86util.asm10
1 files changed, 10 insertions, 0 deletions
diff --git a/libavutil/x86/x86util.asm b/libavutil/x86/x86util.asm
index c50ddc6c54..de7d2d11c1 100644
--- a/libavutil/x86/x86util.asm
+++ b/libavutil/x86/x86util.asm
@@ -34,6 +34,16 @@
[base], [base + stride], [base + 2*stride], [base3], \
[base3 + stride], [base3 + 2*stride], [base3 + stride3], [base3 + stride*4]
+; Interleave low src0 with low src1 and store in src0,
+; interleave high src0 with high src1 and store in src1.
+; %1 - types
+; %2 - index of the register with src0
+; %3 - index of the register with src1
+; %4 - index of the register for intermediate results
+; example for %1 - wd: input: src0: x0 x1 x2 x3 z0 z1 z2 z3
+; src1: y0 y1 y2 y3 q0 q1 q2 q3
+; output: src0: x0 y0 x1 y1 x2 y2 x3 y3
+; src1: z0 q0 z1 q1 z2 q2 z3 q3
%macro SBUTTERFLY 4
%ifidn %1, dqqq
vperm2i128 m%4, m%2, m%3, q0301