[x265] [PATCH 7 of 8] asm: intra_pred_ang4_8_sse2 improved ~3% 617.50 -> 597.50 with nits and tweaks
dtyx265 at gmail.com
dtyx265 at gmail.com
Sat Mar 28 22:35:25 CET 2015
# HG changeset patch
# User David T Yuen <dtyx265 at gmail.com>
# Date 1427578040 25200
# Node ID a6e3c24c0c5f1bdb85c1dc759d9667e64315b8cd
# Parent 3b2a26ca89555b3b9929bbfdb451d715b2a0bfbe
asm: intra_pred_ang4_8_sse2 improved ~3% 617.50 -> 597.50 with nits and tweaks
Corrected parameter count
Changed r3 and r4 to r3d and r4d
tweaked unpacking for performance
diff -r 3b2a26ca8955 -r a6e3c24c0c5f source/common/x86/intrapred8.asm
--- a/source/common/x86/intrapred8.asm Sat Mar 28 14:21:11 2015 -0700
+++ b/source/common/x86/intrapred8.asm Sat Mar 28 14:27:20 2015 -0700
@@ -1506,17 +1506,16 @@
mova m7, [r3 - 16 * 16] ; [ 4]
jmp mangle(private_prefix %+ _ %+ intra_pred_ang4_3 %+ SUFFIX %+ .do_filter4x4)
-cglobal intra_pred_ang4_8, 3,5,8
- xor r4, r4
- inc r4
+cglobal intra_pred_ang4_8, 4,5,8
+ xor r4d, r4d
+ inc r4d
cmp r3m, byte 28
- mov r3, 9
- cmove r3, r4
+ mov r3d, 9
+ cmove r3d, r4d
movh m0, [r2 + r3] ; [8 7 6 5 4 3 2 1]
- mova m1, m0
- psrldq m1, 1 ; [x 8 7 6 5 4 3 2]
- punpcklbw m0, m1 ; [x 8 8 7 7 6 6 5 5 4 4 3 3 2 2 1]
+ punpcklbw m0, m0
+ psrldq m0, 1
punpcklqdq m0, m0
mova m2, m0
More information about the x265-devel
mailing list