On Fri, 1 Apr 2011, Vitor Sessak wrote:

+ vextractf128   Z(0), m0, 0
+ vextractf128  ZH(0), m1, 0
+ vextractf128   Z(1), m0, 1
+ vextractf128  ZH(1), m1, 1
+ vextractf128   Z(2), m5, 0
+ vextractf128  ZH(2), m3, 0
+ vextractf128   Z(3), m5, 1
+ vextractf128  ZH(3), m3, 1

Deinterleave real and imaginary some more, and update imdct to match.

+ vinsertf128 m0, m0, Z(4), 0
+ vinsertf128 m0, m0, Z(6), 1
+ vinsertf128 m1, m1, Z(5), 0
+ vinsertf128 m1, m1, Z(7), 1

Factor into fft_permute.

+ %macro T4_2_AVX 3
+ %macro T8_2_AVX 6
+ %macro PASS_SMALL_AVX 3

These are identical to the sse versions if you apply x86inc's sse-emulation of vex ops, right?
And the deinterleaving should make PASS_BIG_AVX identical too.

--Loren Merritt
_______________________________________________
libav-devel mailing list
[email protected]
https://lists.libav.org/mailman/listinfo/libav-devel

Reply via email to