mirror of https://git.ffmpeg.org/ffmpeg.git
x86/opusdsp: replace loads with shuffles
Has a slight speedup. Can't be carried over to aarch64, since it has no shufps-like instruction. Reviewed-by: Paul B Mahol <onemda@gmail.com> Signed-off-by: James Almer <jamrial@gmail.com>
This commit is contained in:
parent
c2f305ca17
commit
4b7166c9d5
|
@ -24,9 +24,6 @@ SECTION_RODATA
|
||||||
|
|
||||||
; 0.85..^1 0.85..^2 0.85..^3 0.85..^4
|
; 0.85..^1 0.85..^2 0.85..^3 0.85..^4
|
||||||
tab_st: dd 0x3f599a00, 0x3f38f671, 0x3f1d382a, 0x3f05a32f
|
tab_st: dd 0x3f599a00, 0x3f38f671, 0x3f1d382a, 0x3f05a32f
|
||||||
tab_x0: dd 0x0, 0x3f599a00, 0x3f599a00, 0x3f599a00
|
|
||||||
tab_x1: dd 0x0, 0x0, 0x3f38f671, 0x3f38f671
|
|
||||||
tab_x2: dd 0x0, 0x0, 0x0, 0x3f1d382a
|
|
||||||
|
|
||||||
SECTION .text
|
SECTION .text
|
||||||
|
|
||||||
|
@ -45,9 +42,9 @@ cglobal opus_deemphasis, 4, 4, 8, out, in, coeff, len
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
movaps m4, [tab_st]
|
movaps m4, [tab_st]
|
||||||
movaps m5, [tab_x0]
|
VBROADCASTSS m5, m4
|
||||||
movaps m6, [tab_x1]
|
shufps m6, m4, m4, q1111
|
||||||
movaps m7, [tab_x2]
|
shufps m7, m4, m4, q2222
|
||||||
|
|
||||||
.loop:
|
.loop:
|
||||||
movaps m1, [inq] ; x0, x1, x2, x3
|
movaps m1, [inq] ; x0, x1, x2, x3
|
||||||
|
|
Loading…
Reference in New Issue