aboutsummaryrefslogtreecommitdiff
path: root/llvm/tools/llvm-symbolizer/llvm-symbolizer.cpp
diff options
context:
space:
mode:
authorAmy Huang <akhuang@google.com>2020-11-19 11:49:22 -0800
committerAmy Huang <akhuang@google.com>2020-11-23 15:57:08 -0800
commitc74b427cb2a90309ee0c29df21ad1ca26390263c (patch)
tree9c1b58285ab30b17651a5bec2732b3e8cfd4ca2f /llvm/tools/llvm-symbolizer/llvm-symbolizer.cpp
parentd6239b3ea6c143a0c395eb3b8512677feaf6acc0 (diff)
downloadllvm-c74b427cb2a90309ee0c29df21ad1ca26390263c.zip
llvm-c74b427cb2a90309ee0c29df21ad1ca26390263c.tar.gz
llvm-c74b427cb2a90309ee0c29df21ad1ca26390263c.tar.bz2
[llvm-symbolizer] Switch to using native symbolizer by default on Windows
llvm-symbolizer used to use the DIA SDK for symbolization on Windows; this patch switches to using native symbolization, which was implemented recently. Users can still make the symbolizer use DIA by adding the `-dia` flag in the LLVM_SYMBOLIZER_OPTS environment variable. Differential Revision: https://reviews.llvm.org/D91814
Diffstat (limited to 'llvm/tools/llvm-symbolizer/llvm-symbolizer.cpp')
-rw-r--r--llvm/tools/llvm-symbolizer/llvm-symbolizer.cpp8
1 files changed, 7 insertions, 1 deletions
diff --git a/llvm/tools/llvm-symbolizer/llvm-symbolizer.cpp b/llvm/tools/llvm-symbolizer/llvm-symbolizer.cpp
index f57922b..875432b 100644
--- a/llvm/tools/llvm-symbolizer/llvm-symbolizer.cpp
+++ b/llvm/tools/llvm-symbolizer/llvm-symbolizer.cpp
@@ -288,7 +288,13 @@ int main(int argc, char **argv) {
Opts.RelativeAddresses = Args.hasArg(OPT_relative_address);
Opts.UntagAddresses =
Args.hasFlag(OPT_untag_addresses, OPT_no_untag_addresses, !IsAddr2Line);
- Opts.UseNativePDBReader = Args.hasArg(OPT_use_native_pdb_reader);
+ Opts.UseDIA = Args.hasArg(OPT_use_dia);
+#if !defined(LLVM_ENABLE_DIA_SDK)
+ if (Opts.UseDIA) {
+ WithColor::warning() << "DIA not available; using native PDB reader\n";
+ Opts.UseDIA = false;
+ }
+#endif
Opts.UseSymbolTable = true;
for (const opt::Arg *A : Args.filtered(OPT_dsym_hint_EQ)) {