[PATCH] [compiler-rt] Symbolizer refactoring: Make WinSymbolizer use SymbolizerTool interface

Timur Iskhodzhanov timurrrr at google.com
Fri Mar 6 03:54:22 PST 2015


Re: `EnumProcessModules` -- see also `DumpProcessMap()` in `sanitizer_win.cc`.
What's the problem with `FindModuleNameAndOffsetForAddress` initializing `dbghelp`?


================
Comment at: lib/sanitizer_common/sanitizer_symbolizer_win.cc:59
@@ +58,3 @@
+bool WinSymbolizerTool::SymbolizeData(uptr addr, DataInfo *info) {
+  return false;
+}
----------------
The implementation is trivial, please make it inline.

================
Comment at: lib/sanitizer_common/sanitizer_symbolizer_win.cc:155
@@ +154,3 @@
+    SymbolizedStack *res = SymbolizedStack::New(addr);
+    FindModuleNameAndOffsetForAddress(addr, &module_name, &module_offset);
+    res->info.FillModuleInfo(module_name, module_offset);
----------------
I think this should be
   if (FindModuleNameAndOffsetForAddress(addr, &module_name, &module_offset))
     res->info.FillModuleInfo(module_name, module_offset);

================
Comment at: lib/sanitizer_common/sanitizer_symbolizer_win.h:20
@@ +19,3 @@
+
+class WinSymbolizerTool : public SymbolizerTool {
+ public:
----------------
Looking at the code in `lib/sanitizer_common/sanitizer_symbolizer_internal.h`, SymbolizerTool comments assume POSIX.  Can you please update the comments there to remove this assumption?

http://reviews.llvm.org/D8089

EMAIL PREFERENCES
  http://reviews.llvm.org/settings/panel/emailpreferences/






More information about the llvm-commits mailing list