summaryrefslogtreecommitdiffstats
path: root/build
diff options
context:
space:
mode:
authortimurrrr@chromium.org <timurrrr@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-05-07 13:19:15 +0000
committertimurrrr@chromium.org <timurrrr@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-05-07 13:19:15 +0000
commit2ae6e0211643007dba78a6d753960c8fffc38aae (patch)
tree16736e73d64166da193a828ef7f00699db77b8e0 /build
parent585b6bdeaf4104d26311f09dbb99f5085b5becb6 (diff)
downloadchromium_src-2ae6e0211643007dba78a6d753960c8fffc38aae.zip
chromium_src-2ae6e0211643007dba78a6d753960c8fffc38aae.tar.gz
chromium_src-2ae6e0211643007dba78a6d753960c8fffc38aae.tar.bz2
Quick fix: explicitly specify /Ob0 to avoid inlining if InlineFunctionExpansion==0; add 'default' value
This is a follow-up for http://codereview.chromium.org/1995004 Looks like InlineFunctionExpansion=0 means "default", not /Ob0 for MSVS... TEST=trybots, tried locally with "vim base/base.vcproj" Review URL: http://codereview.chromium.org/2041002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@46682 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'build')
-rw-r--r--build/common.gypi30
1 files changed, 26 insertions, 4 deletions
diff --git a/build/common.gypi b/build/common.gypi
index 90529a5..93b2320 100644
--- a/build/common.gypi
+++ b/build/common.gypi
@@ -381,8 +381,8 @@
# See http://msdn.microsoft.com/en-us/library/8wtf2dfz(VS.71).aspx
'win_debug_RuntimeChecks%': '3', # 3 = all checks enabled, 0 = off
# See http://msdn.microsoft.com/en-us/library/47238hez(VS.71).aspx
- 'win_debug_InlineFunctionExpansion%': '0', # 0 = off
- 'win_release_InlineFunctionExpansion%': '2', # 2 = max
+ 'win_debug_InlineFunctionExpansion%': '', # empty = default, 0 = off,
+ 'win_release_InlineFunctionExpansion%': '2', # 1 = only __inline, 2 = max
'release_extra_cflags%': '',
'debug_extra_cflags%': '',
@@ -625,8 +625,19 @@
'Optimization': '<(win_debug_Optimization)',
'PreprocessorDefinitions': ['_DEBUG'],
'BasicRuntimeChecks': '<(win_debug_RuntimeChecks)',
- 'InlineFunctionExpansion': '<(win_debug_InlineFunctionExpansion)',
'RuntimeLibrary': '<(win_debug_RuntimeLibrary)',
+ 'conditions': [
+ # According to MSVS, InlineFunctionExpansion=0 means
+ # "default inlining", not "/Ob0".
+ # Thus, we have to handle InlineFunctionExpansion==0 separately.
+ ['win_debug_InlineFunctionExpansion==0', {
+ 'AdditionalOptions': ['/Ob0'],
+ }],
+ ['win_debug_InlineFunctionExpansion!=""', {
+ 'InlineFunctionExpansion':
+ '<(win_debug_InlineFunctionExpansion)',
+ }],
+ ],
},
'VCLinkerTool': {
'LinkIncremental': '<(msvs_debug_link_incremental)',
@@ -656,8 +667,19 @@
'msvs_settings': {
'VCCLCompilerTool': {
'Optimization': '<(win_release_Optimization)',
- 'InlineFunctionExpansion': '<(win_release_InlineFunctionExpansion)',
'RuntimeLibrary': '<(win_release_RuntimeLibrary)',
+ 'conditions': [
+ # According to MSVS, InlineFunctionExpansion=0 means
+ # "default inlining", not "/Ob0".
+ # Thus, we have to handle InlineFunctionExpansion==0 separately.
+ ['win_release_InlineFunctionExpansion==0', {
+ 'AdditionalOptions': ['/Ob0'],
+ }],
+ ['win_release_InlineFunctionExpansion!=""', {
+ 'InlineFunctionExpansion':
+ '<(win_release_InlineFunctionExpansion)',
+ }],
+ ],
},
'VCLinkerTool': {
'LinkIncremental': '1',