Index: build/config/compiler/BUILD.gn |
diff --git a/build/config/compiler/BUILD.gn b/build/config/compiler/BUILD.gn |
index 6774b2a36b68419ac0e649da0b3292ff3e15647b..2902acf9b55658cf642ba73ba593dddeb482456a 100644 |
--- a/build/config/compiler/BUILD.gn |
+++ b/build/config/compiler/BUILD.gn |
@@ -1294,7 +1294,6 @@ config("no_incompatible_pointer_warnings") { |
if (is_win) { |
common_optimize_on_cflags = [ |
"/Ob2", # Both explicit and auto inlining. |
- "/Oy-", # Disable omitting frame pointers, must be after /O2. |
"/d2Zi+", # Improve debugging of optimized code. |
"/Zc:inline", # Remove unreferenced COMDAT (faster links). |
] |
@@ -1384,18 +1383,21 @@ if (is_win) { |
} |
config("default_stack_frames") { |
- if (is_posix && !(is_mac || is_ios)) { |
- if (using_sanitizer || enable_profiling || is_debug || |
- current_cpu == "arm64") { |
- # Explicitly ask for frame pointers, otherwise: |
- # * Stacks may be missing for sanitizer and profiling builds. |
- # * Debug tcmalloc can crash (crbug.com/636489). |
- # * Stacks may be missing for arm64 crash dumps (crbug.com/391706). |
+ if (is_posix) { |
+ if (enabled_frame_pointers) { |
cflags = [ "-fno-omit-frame-pointer" ] |
- } else if (is_android) { |
+ } else { |
cflags = [ "-fomit-frame-pointer" ] |
Mark Mentovai
2017/03/30 23:43:29
I think we’d never want this in a debug-ish config
erikchen
2017/04/03 06:33:39
I'm just maintaining the previous behavior.
|
} |
} |
+ |
+ if (is_win) { |
+ if (enabled_frame_pointers) { |
+ common_optimize_on_cflags += [ "/Oy-" ] # Disable omitting frame pointers, must be after /O2. |
+ } else { |
+ common_optimize_on_cflags += [ "/Oy" ] |
+ } |
+ } |
} |
# Default "optimization on" config. |