| Index: build/toolchain.gypi
|
| diff --git a/build/toolchain.gypi b/build/toolchain.gypi
|
| index 36d60c28ab98d03e79d9ba9688b8afd344cacd3f..95e2cd2ef595a9ac1124ab3d5238f50d608d1fd4 100644
|
| --- a/build/toolchain.gypi
|
| +++ b/build/toolchain.gypi
|
| @@ -60,19 +60,7 @@
|
|
|
| 'v8_enable_backtrace%': 0,
|
|
|
| - # Speeds up Debug builds:
|
| - # 0 - compiler optimizations off (debuggable) (default). This may
|
| - # be 5x slower than Release (or worse).
|
| - # 1 - turn on compiler optimizations. and #undef DEBUG/#define NDEBUG.
|
| - # This may be hard or impossible to debug. This may still be
|
| - # 2x slower than Release (or worse).
|
| - # 2 - Turn on optimizations, and also #undef DEBUG / #define NDEBUG
|
| - # (but leave V8_ENABLE_CHECKS and most other assertions enabled.
|
| - # This may cause some v8 tests to fail in the Debug configuration.
|
| - # This roughly matches the performance of a Release build and can
|
| - # be used by embedders that need to build their own code as debug
|
| - # but don't want or need a debug version of V8. This should produce
|
| - # near-release speeds.
|
| + # Turns on compiler optimizations in Debug builds (#defines are unaffected).
|
| 'v8_optimized_debug%': 0,
|
|
|
| # Enable profiling support. Only required on Windows.
|
| @@ -447,6 +435,7 @@
|
| 'configurations': {
|
| 'Debug': {
|
| 'defines': [
|
| + 'DEBUG',
|
| 'ENABLE_DISASSEMBLER',
|
| 'V8_ENABLE_CHECKS',
|
| 'OBJECT_PRINT',
|
| @@ -460,96 +449,41 @@
|
| }, {
|
| 'RuntimeLibrary': '1', # /MTd
|
| }],
|
| - ['v8_optimized_debug==0', {
|
| - 'Optimization': '0',
|
| - }, {
|
| - 'Optimization': '2',
|
| + ['v8_optimized_debug==1', {
|
| + 'Optimization': '1',
|
| 'InlineFunctionExpansion': '2',
|
| 'EnableIntrinsicFunctions': 'true',
|
| 'FavorSizeOrSpeed': '0',
|
| 'StringPooling': 'true',
|
| 'BasicRuntimeChecks': '0',
|
| - 'conditions': [
|
| - ['component=="shared_library"', {
|
| - 'RuntimeLibrary': '2', #/MD
|
| - }, {
|
| - 'RuntimeLibrary': '0', #/MT
|
| - }],
|
| - ['v8_target_arch=="x64"', {
|
| - # TODO(2207): remove this option once the bug is fixed.
|
| - 'WholeProgramOptimization': 'true',
|
| - }],
|
| - ],
|
| + }, {
|
| + 'Optimization': '0',
|
| }],
|
| ],
|
| },
|
| 'VCLinkerTool': {
|
| - 'conditions': [
|
| - ['v8_optimized_debug==0', {
|
| - 'LinkIncremental': '2',
|
| - }, {
|
| - 'LinkIncremental': '1',
|
| - 'OptimizeReferences': '2',
|
| - 'EnableCOMDATFolding': '2',
|
| - }],
|
| - ],
|
| + 'LinkIncremental': '2',
|
| },
|
| },
|
| 'conditions': [
|
| - ['v8_optimized_debug==2', {
|
| - 'defines': [
|
| - 'NDEBUG',
|
| - ],
|
| - }, {
|
| - 'defines': [
|
| - 'DEBUG',
|
| - ],
|
| - }],
|
| ['OS=="linux" or OS=="freebsd" or OS=="openbsd" or OS=="netbsd"', {
|
| 'cflags': [ '-Wall', '<(werror)', '-W', '-Wno-unused-parameter',
|
| '-Wnon-virtual-dtor', '-Woverloaded-virtual',
|
| '<(wno_array_bounds)' ],
|
| 'conditions': [
|
| - ['v8_optimized_debug==0', {
|
| - 'cflags!': [
|
| - '-O0',
|
| - '-O3',
|
| - '-O2',
|
| - '-O1',
|
| - '-Os',
|
| - ],
|
| - 'cflags': [
|
| - '-fdata-sections',
|
| - '-ffunction-sections',
|
| - ],
|
| - }],
|
| ['v8_optimized_debug==1', {
|
| 'cflags!': [
|
| '-O0',
|
| - '-O3', # TODO(2807) should be -O1.
|
| '-O2',
|
| '-Os',
|
| ],
|
| 'cflags': [
|
| '-fdata-sections',
|
| '-ffunction-sections',
|
| - '-O1', # TODO(2807) should be -O3.
|
| - ],
|
| - }],
|
| - ['v8_optimized_debug==2', {
|
| - 'cflags!': [
|
| - '-O0',
|
| '-O1',
|
| - '-O2',
|
| - '-Os',
|
| - ],
|
| - 'cflags': [
|
| - '-fdata-sections',
|
| - '-ffunction-sections',
|
| - '-O3',
|
| ],
|
| }],
|
| - ['v8_optimized_debug!=0 and gcc_version==44 and clang==0', {
|
| + ['v8_optimized_debug==1 and gcc_version==44 and clang==0', {
|
| 'cflags': [
|
| # Avoid crashes with gcc 4.4 in the v8 test suite.
|
| '-fno-tree-vrp',
|
| @@ -578,11 +512,11 @@
|
| ['OS=="mac"', {
|
| 'xcode_settings': {
|
| 'conditions': [
|
| - ['v8_optimized_debug==0', {
|
| - 'GCC_OPTIMIZATION_LEVEL': '0', # -O0
|
| - }, {
|
| - 'GCC_OPTIMIZATION_LEVEL': '3', # -O3
|
| + ['v8_optimized_debug==1', {
|
| + 'GCC_OPTIMIZATION_LEVEL': '1', # -O1
|
| 'GCC_STRICT_ALIASING': 'YES',
|
| + }, {
|
| + 'GCC_OPTIMIZATION_LEVEL': '0', # -O0
|
| }],
|
| ],
|
| },
|
|
|