Index: build/config/compiler/compiler.gni |
diff --git a/build/config/compiler/compiler.gni b/build/config/compiler/compiler.gni |
index 2cb9637059831e9809dc97540d0b49da5b1df17e..eba4b338bd0a48c49e59cf0961e5809790ea649f 100644 |
--- a/build/config/compiler/compiler.gni |
+++ b/build/config/compiler/compiler.gni |
@@ -86,12 +86,17 @@ if (is_mac || is_ios) { |
} |
# Unwinding with frame pointers requires that frame pointers are enabled by |
-# default for most translation units, and that the architecture isn't thumb, as |
-# frame pointers are not correctly emitted for thumb. |
-if (enabled_frame_pointers && !(current_cpu == "arm" && arm_use_thumb)) { |
- can_unwind_with_frame_pointers = true |
-} else { |
+# default for most translation units, that they are emitted correctly, and that |
+# the compiler or platform provides a way to access them. |
+if (current_cpu == "arm" && arm_use_thumb) { |
+ # ARM Thumb builds do not emit frame pointers correctly. |
+ can_unwind_with_frame_pointers = false |
+} else if (is_win) { |
+ # Windows 32-bit does provide frame pointers, but the compiler does not provide |
brettw
2017/04/10 18:29:35
80 cols?
Wez
2017/04/10 18:49:10
Seriously, gn format, you only had to do the one t
|
+ # intrinsics to access them, so we don't use them. |
can_unwind_with_frame_pointers = false |
+} else { |
+ can_unwind_with_frame_pointers = enabled_frame_pointers |
} |
declare_args() { |