[x265] cmake: avoid different stack alignment for GCC in 32-bit Windows

chen chenm003 at 163.com
Wed Jul 27 16:59:13 CEST 2016


I suggest use gcc option -mpreferred-stack-boundary


Min


At 2016-07-27 16:15:41,"Pradeep Ramachandran" <pradeep at multicorewareinc.com> wrote:

`-msse` only enables the use of SSE instructions with GCC. Since we already add `-march=i686` which is Pentium Pro's instruction set, sse should anyways be added.
Why does adding this explicitly get rid of the stack misalignment problem that you are witnessing? Is there some new change to this option with 6.1 that I am missing?


Pradeep.


On Tue, Jul 26, 2016 at 7:20 PM, Mateusz <mateuszb at poczta.onet.pl> wrote:


There are bugs in GCC 6.1 that preventto compileworking32-bit x265 forWindows (on default options).
This patch adds '-msse' option to default 32-bit build option to avoid different stack alignment.


# HG changeset patch
# User Ma0 <mateuszb at poczta.onet.pl>
# Date 1469540439 -7200
#      Tue Jul 26 15:40:39 2016 +0200
# Node ID b95ee119b5c6ccac4892c430c494d1a5f22b2ce0
# Parent  5a0e139e29386ecebafc9c555aedcd3e0f61c70c
cmake: avoid different stack alignment for GCC in 32-bit Windows

diff -r 5a0e139e2938 -r b95ee119b5c6 source/CMakeLists.txt
--- a/source/CMakeLists.txt    Fri Jul 22 13:13:42 2016 +0530
+++ b/source/CMakeLists.txt    Tue Jul 26 15:40:39 2016 +0200
@@ -184,6 +184,9 @@
         string(FIND "${CMAKE_CXX_FLAGS}" "-march" marchPos)
         if(marchPos LESS "0")
             add_definitions(-march=i686)
+            if(WIN32 AND NOT INTEL_CXX)
+                add_definitions(-msse)
+            endif()
         endif()
     endif()
     if(ARM AND CROSS_COMPILE_ARM)
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.videolan.org/pipermail/x265-devel/attachments/20160727/e6a5779d/attachment.html>


More information about the x265-devel mailing list