summaryrefslogtreecommitdiffstats
path: root/scons
diff options
context:
space:
mode:
authorJosé Fonseca <[email protected]>2011-02-10 12:16:26 +0000
committerJosé Fonseca <[email protected]>2011-02-10 16:29:10 +0000
commitd60f07489ef45fcdc46edbc51e662d2157a55cab (patch)
tree5a4292cb7a0f97fb6ee78273e470a5d9cb74bd4d /scons
parent1a8899d6301c01639fa713b87fbb47280e61ff07 (diff)
scons: Disable -mstackrealign on MinGW again.
It's still broken, however it doesn't show up on debug builds.
Diffstat (limited to 'scons')
-rw-r--r--scons/gallium.py5
1 files changed, 4 insertions, 1 deletions
diff --git a/scons/gallium.py b/scons/gallium.py
index c4144273a55..322b23b2b00 100644
--- a/scons/gallium.py
+++ b/scons/gallium.py
@@ -349,12 +349,15 @@ def generate(env):
'-m32',
#'-march=pentium4',
]
- if distutils.version.LooseVersion(ccversion) >= distutils.version.LooseVersion('4.2'):
+ if distutils.version.LooseVersion(ccversion) >= distutils.version.LooseVersion('4.2') \
+ and (platform != 'windows' or env['build'] == 'debug' or True):
# NOTE: We need to ensure stack is realigned given that we
# produce shared objects, and have no control over the stack
# alignment policy of the application. Therefore we need
# -mstackrealign ore -mincoming-stack-boundary=2.
#
+ # XXX: -O and -mstackrealign causes stack corruption on MinGW
+ #
# XXX: We could have SSE without -mstackrealign if we always used
# __attribute__((force_align_arg_pointer)), but that's not
# always the case.