[x265] [PATCH] asm:intra_pred_ang4_2 improved by ~4% 134.99 -> 129.95 with nits and tweaks
dtyx265 at gmail.com
dtyx265 at gmail.com
Sun Mar 29 00:39:26 CET 2015
# HG changeset patch
# User David T Yuen <dtyx265 at gmail.com>
# Date 1427585923 25200
# Node ID 88b50a5f74d98018b1583761a6fc4c5c23f4d401
# Parent 36d70728acc2d9d6103af7530493176c08298ded
asm:intra_pred_ang4_2 improved by ~4% 134.99 -> 129.95 with nits and tweaks
Corrected parameter count
Changed r3m to r3d
Reduced xmm registers to 1
diff -r 36d70728acc2 -r 88b50a5f74d9 source/common/x86/intrapred8.asm
--- a/source/common/x86/intrapred8.asm Fri Mar 27 13:16:28 2015 -0500
+++ b/source/common/x86/intrapred8.asm Sat Mar 28 16:38:43 2015 -0700
@@ -1320,22 +1320,20 @@
; void intraPredAng4(pixel* dst, intptr_t dstStride, pixel* src, int dirMode, int bFilter)
;-----------------------------------------------------------------------------------------
INIT_XMM sse2
-cglobal intra_pred_ang4_2, 3,5,3
+cglobal intra_pred_ang4_2, 4,5,1
lea r4, [r2 + 2]
add r2, 10
- cmp r3m, byte 34
+ cmp r3d, byte 34
cmove r2, r4
movh m0, [r2]
movd [r0], m0
- mova m1, m0
- psrldq m1, 1
- movd [r0 + r1], m1
- mova m2, m0
- psrldq m2, 2
- movd [r0 + r1 * 2], m2
+ psrldq m0, 1
+ movd [r0 + r1], m0
+ psrldq m0, 1
+ movd [r0 + r1 * 2], m0
lea r1, [r1 * 3]
- psrldq m0, 3
+ psrldq m0, 1
movd [r0 + r1], m0
RET
More information about the x265-devel
mailing list