summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--scons/gallium.py9
1 files changed, 7 insertions, 2 deletions
diff --git a/scons/gallium.py b/scons/gallium.py
index 0e5de0d0f8..f4e82e8e0a 100644
--- a/scons/gallium.py
+++ b/scons/gallium.py
@@ -391,15 +391,15 @@ def generate(env):
else:
ccflags += [
'/O2', # optimize for speed
- #'/fp:fast', # fast floating point
+ '/GL', # enable whole program optimization
]
ccflags += [
+ '/fp:fast', # fast floating point
'/W3', # warning level
#'/Wp64', # enable 64 bit porting warnings
]
if env['machine'] == 'x86':
ccflags += [
- #'/QIfist', # Suppress _ftol
#'/arch:SSE2', # use the SSE2 instructions
]
if platform == 'windows':
@@ -477,6 +477,11 @@ def generate(env):
]
# Handle circular dependencies in the libraries
env['_LIBFLAGS'] = '-Wl,--start-group ' + env['_LIBFLAGS'] + ' -Wl,--end-group'
+ if msvc:
+ if not env['debug']:
+ # enable Link-time Code Generation
+ linkflags += ['/LTCG']
+ env.Append(ARFLAGS = ['/LTCG'])
if platform == 'windows' and msvc:
# See also:
# - http://msdn2.microsoft.com/en-us/library/y0zzbyt4.aspx