[x265] [PATCH] asm: replace movd+pshufd+vinserti128 with vpbroadcastd instruction

dnyaneshwar at multicorewareinc.com dnyaneshwar at multicorewareinc.com
Mon Mar 30 07:57:54 CEST 2015


# HG changeset patch
# User Dnyaneshwar G <dnyaneshwar at multicorewareinc.com>
# Date 1427695056 -19800
#      Mon Mar 30 11:27:36 2015 +0530
# Node ID 4d6848d8a53ba22dec61d5dd61d096a1accfbd2e
# Parent  22a312799bb033d40a66fc83a1ac7af192ce2420
asm: replace movd+pshufd+vinserti128 with vpbroadcastd instruction

diff -r 22a312799bb0 -r 4d6848d8a53b source/common/x86/pixel-util8.asm
--- a/source/common/x86/pixel-util8.asm	Fri Mar 27 22:59:30 2015 -0500
+++ b/source/common/x86/pixel-util8.asm	Mon Mar 30 11:27:36 2015 +0530
@@ -1286,9 +1286,8 @@
     mov          r6d, r6m
     shl          r6d, 16
     or           r6d, r5d          ; assuming both (w0<<6) and round are using maximum of 16 bits each.
-    movd         xm0, r6d
-    pshufd       xm0, xm0, 0       ; m0 = [w0<<6, round]
-    vinserti128  m0, m0, xm0, 1    ; document says (pshufd + vinserti128) can be replaced with vpbroadcastd m0, xm0, but having build problem, need to investigate
+
+    vpbroadcastd m0, r6d
 
     movd         xm1, r7m
     vpbroadcastd m2, r8m


More information about the x265-devel mailing list