[x265] [PATCH] x86inc.asm: fix vpbroadcastd bug on Mac platform

Satoshi Nakagawa nakagawa424 at oki.com
Mon Sep 8 11:54:23 CEST 2014



At changeset 27364e9, wrong version pushd.

Correct patch is Min's later one.



--- a/source/common/x86/x86inc.asm	Fri Sep 05 17:36:18 2014 -0700
+++ b/source/common/x86/x86inc.asm	Sun Sep 07 15:24:49 2014 +0900
@@ -1489,6 +1489,6 @@
     movd         %1 %+ xmm, %2
     vpbroadcastd %1, %1 %+ xmm
   %else
-    vbroadcastsd %1, %2
+    vpbroadcastd %1, %2
   %endif
 %endmacro



> -----Original Message-----
> From: x265-devel [mailto:x265-devel-bounces at videolan.org] On Behalf Of
> Min Chen
> Sent: Saturday, September 06, 2014 8:48 AM
> To: x265-devel at videolan.org
> Subject: [x265] [PATCH] x86inc.asm: fix vpbroadcastd bug on Mac platform
> 
> # HG changeset patch
> # User Min Chen <chenm003 at 163.com>
> # Date 1409960883 25200
> # Node ID 8abcfdeeea2eab2e11da59002dad42dcf16aeab8
> # Parent  e0db7914e7020a6a6454fbf1d3ce793efa2209a1
> x86inc.asm: fix vpbroadcastd bug on Mac platform
> 
> diff -r e0db7914e702 -r 8abcfdeeea2e source/common/x86/x86inc.asm
> --- a/source/common/x86/x86inc.asm	Fri Sep 05 16:47:42 2014 -0700
> +++ b/source/common/x86/x86inc.asm	Fri Sep 05 16:48:03 2014 -0700
> @@ -888,6 +888,8 @@
>      %define ymmmm%1   mm%1
>      %define ymmxmm%1 xmm%1
>      %define ymmymm%1 ymm%1
> +    %define ymm%1xmm xmm%1
> +    %define xmm%1ymm ymm%1
>      %define xm%1 xmm %+ m%1
>      %define ym%1 ymm %+ m%1
>  %endmacro
> @@ -1480,3 +1482,13 @@
>  %endif
>  %endmacro
>  %endif
> +
> +; workaround: vpbroadcastd with register, the yasm will generate wrong
> +code %macro vpbroadcastd 2
> +  %ifid %2
> +    movd         %1 %+ xmm, %2
> +    vpbroadcastd %1, %1 %+ xmm
> +  %else
> +    vpbroadcastd %1, %2
> +  %endif
> +%endmacro
> 
> _______________________________________________
> x265-devel mailing list
> x265-devel at videolan.org
> https://mailman.videolan.org/listinfo/x265-devel



More information about the x265-devel mailing list