Reviewers: Kasper Lund,

Description:
Enable -fstrict-aliasing in the GYP build of V8 for the Mac in Release
mode.
-fstrict-aliasing is enabled by mainline gcc at -O2 and higher, but in
Apple
gcc, it must be enabled explicitly.  This results in a 1.5% improvement
in V8
benchmark scores.

This also removes the -fno-exceptions and -fno-rtti settings from v8.gyp
for
the Mac, and removes -fno-rtti from v8.gyp for Linux, because these
settings
have become part of Chromium's common.gypi, included here, as of r23304
at the
latest.  The settings in v8.gyp have become redundant.

Please review this at http://codereview.chromium.org/174154

SVN Base: http://v8.googlecode.com/svn/branches/bleeding_edge/

Affected files:
   M     tools/gyp/v8.gyp


Index: tools/gyp/v8.gyp
===================================================================
--- tools/gyp/v8.gyp    (revision 2733)
+++ tools/gyp/v8.gyp    (working copy)
@@ -97,15 +97,16 @@
                  ],
                }],
              ],
-            'cflags_cc': [
-              '-fno-rtti',
-            ],
            }],
-         ['OS=="mac"', {
-           'xcode_settings': {
-             'GCC_OPTIMIZATION_LEVEL': '3',
-           },
-         }],
+          ['OS=="mac"', {
+            'xcode_settings': {
+              'GCC_OPTIMIZATION_LEVEL': '3',  # -O3
+              'GCC_STRICT_ALIASING': 'YES',   # -fstrict-aliasing.   
Mainline gcc
+                                              # enables this at -O2 and  
above,
+                                              # but Apple gcc does not  
unless it
+                                              # is specified explicitly.
+            },
+          }],
            ['OS=="win"', {
              'msvs_configuration_attributes': {
                'OutputDirectory': '$(SolutionDir)$(ConfigurationName)',
@@ -133,10 +134,6 @@
          ],
        },
      },
-    'xcode_settings': {
-      'GCC_ENABLE_CPP_EXCEPTIONS': 'NO',
-      'GCC_ENABLE_CPP_RTTI': 'NO',
-    },
    },
    'targets': [
      {
@@ -392,7 +389,7 @@
              '../../src/arm/assembler-arm.cc',
              '../../src/arm/assembler-arm.h',
              '../../src/arm/builtins-arm.cc',
-           '../../src/arm/cfg-arm.cc',
+            '../../src/arm/cfg-arm.cc',
              '../../src/arm/codegen-arm.cc',
              '../../src/arm/codegen-arm.h',
              '../../src/arm/constants-arm.h',
@@ -423,7 +420,7 @@
              '../../src/ia32/assembler-ia32.cc',
              '../../src/ia32/assembler-ia32.h',
              '../../src/ia32/builtins-ia32.cc',
-           '../../src/ia32/cfg-ia32.cc',
+            '../../src/ia32/cfg-ia32.cc',
              '../../src/ia32/codegen-ia32.cc',
              '../../src/ia32/codegen-ia32.h',
              '../../src/ia32/cpu-ia32.cc',
@@ -456,7 +453,7 @@
              '../../src/x64/assembler-x64.cc',
              '../../src/x64/assembler-x64.h',
              '../../src/x64/builtins-x64.cc',
-           '../../src/x64/cfg-x64.cc',
+            '../../src/x64/cfg-x64.cc',
              '../../src/x64/codegen-x64.cc',
              '../../src/x64/codegen-x64.h',
              '../../src/x64/cpu-x64.cc',



--~--~---------~--~----~------------~-------~--~----~
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev
-~----------~----~----~----~------~----~------~--~---

Reply via email to