Commit 7f1fb68f authored by Tom Tan's avatar Tom Tan Committed by Commit Bot

Disable frame pointer omission for Windows ARM64 debug build

RtlCaptureStackBackTrace on Windows ARM64 relies on frame pointer chain to walk
the stack which is guaranteed by "/Oy-" option for clang-cl.exe/cl.exe. This
option is enabled in optimized build but not in debug build which could cause
missing Chromium modules in stack trace.

Bug: 893460
Change-Id: I60c3196aa8917209cfcf059eecc1660c291f5c17
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1854825Reviewed-by: default avatarNico Weber <thakis@chromium.org>
Commit-Queue: Tom Tan <Tom.Tan@microsoft.com>
Cr-Commit-Position: refs/heads/master@{#705184}
parent c3fdfcff
...@@ -2039,6 +2039,12 @@ config("no_optimize") { ...@@ -2039,6 +2039,12 @@ config("no_optimize") {
"/Ob0", # Disable all inlining (on by default). "/Ob0", # Disable all inlining (on by default).
"/GF", # Enable string pooling (off by default). "/GF", # Enable string pooling (off by default).
] ]
if (target_cpu == "arm64") {
# Disable omitting frame pointers for no_optimize build because stack
# trace on Windows ARM64 relies on it.
cflags += [ "/Oy-" ]
}
} else if (is_android && !android_full_debug) { } else if (is_android && !android_full_debug) {
# On Android we kind of optimize some things that don't affect debugging # On Android we kind of optimize some things that don't affect debugging
# much even when optimization is disabled to get the binary size down. # much even when optimization is disabled to get the binary size down.
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment