[x265] [PATCH 3 of 4] asm: fix bug in macro vpbroadcastd for case ymm, xmm
chen
chenm003 at 163.com
Thu Aug 13 19:51:43 CEST 2015
the macro for yasm workaround only, so we'd better keep origin instruction format.
At 2015-08-13 19:22:30,"Dnyaneshwar Gorade" <dnyaneshwar at multicorewareinc.com> wrote:
Hi Min,
This still generates wrong code for case ymm, xmm (as %ifidni %2,xm will be false always).
How about the below code ?
%macro vpbroadcastd 2-3 ;; incresed one argument for case ymm, xmm
%ifid %3 ; case vpbroadcastd ymm, ymm, xmm
vpbroadcastd %1, %3
%elifid %2
movd %1 %+ xmm, %2 ; case vpbroadcastd ymm, rN
vpbroadcastd %1, %1 %+ xmm
%else
vpbroadcastd %1, %2 ; case vpbroadcastd ymm, [memory addr]
%endif
%endmacro
Thanks,
Dnyaneshwar G
On Thu, Aug 13, 2015 at 8:52 AM, Min Chen <chenm003 at 163.com> wrote:
# HG changeset patch
# User Min Chen <chenm003 at 163.com>
# Date 1439424913 25200
# Node ID caf9562dc947f93e8ee237574575e9b67d494fc8
# Parent 09846d1566428a73d70d2fcf2d50324c0dfbbb7f
asm: fix bug in macro vpbroadcastd for case ymm,xmm
---
source/common/x86/x86inc.asm | 6 ++++--
1 files changed, 4 insertions(+), 2 deletions(-)
diff -r 09846d156642 -r caf9562dc947 source/common/x86/x86inc.asm
--- a/source/common/x86/x86inc.asm Wed Aug 12 16:46:57 2015 -0700
+++ b/source/common/x86/x86inc.asm Wed Aug 12 17:15:13 2015 -0700
@@ -1486,10 +1486,12 @@
; workaround: vpbroadcastd with register, the yasm will generate wrong code
%macro vpbroadcastd 2
- %ifid %2
+ %ifidni %2,xm ; case ymm,xmm
+ vpbroadcastd %1, %2
+ %elifid %2 ; case ymm,rN
movd %1 %+ xmm, %2
vpbroadcastd %1, %1 %+ xmm
%else
- vpbroadcastd %1, %2
+ vpbroadcastd %1, %2 ; case ymm,[address]
%endif
%endmacro
_______________________________________________
x265-devel mailing list
x265-devel at videolan.org
https://mailman.videolan.org/listinfo/x265-devel
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.videolan.org/pipermail/x265-devel/attachments/20150814/29b5acd1/attachment-0001.html>
More information about the x265-devel
mailing list