diff options
| author | Kuba Brecka <kuba.brecka@gmail.com> | 2015-04-11 17:16:25 +0000 |
|---|---|---|
| committer | Kuba Brecka <kuba.brecka@gmail.com> | 2015-04-11 17:16:25 +0000 |
| commit | 93c6a668fc17c116cb1ae184d9969b15b5fa8f65 (patch) | |
| tree | cc786daf0aa1a38211c78b47ea883ac4965b211e /compiler-rt/lib/sanitizer_common/sanitizer_symbolizer.h | |
| parent | 80172372771ee46373965e5ea45240375b46154d (diff) | |
| download | bcm5719-llvm-93c6a668fc17c116cb1ae184d9969b15b5fa8f65.tar.gz bcm5719-llvm-93c6a668fc17c116cb1ae184d9969b15b5fa8f65.zip | |
[Sanitizer] Merge POSIXSymbolizer and WinSymbolizer
The two subclasses of Symbolizer now only define two virtual functions, PlatformDemangle and PlatformPrepareForSandboxing. Let's make these non-virtual and directly defined by individual platforms.
Reviewed at http://reviews.llvm.org/D8912
llvm-svn: 234690
Diffstat (limited to 'compiler-rt/lib/sanitizer_common/sanitizer_symbolizer.h')
| -rw-r--r-- | compiler-rt/lib/sanitizer_common/sanitizer_symbolizer.h | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/compiler-rt/lib/sanitizer_common/sanitizer_symbolizer.h b/compiler-rt/lib/sanitizer_common/sanitizer_symbolizer.h index 11cce9dd21f..92332230f80 100644 --- a/compiler-rt/lib/sanitizer_common/sanitizer_symbolizer.h +++ b/compiler-rt/lib/sanitizer_common/sanitizer_symbolizer.h @@ -75,7 +75,7 @@ struct DataInfo { class SymbolizerTool; -class Symbolizer { +class Symbolizer final { public: /// Initialize and return platform-specific implementation of symbolizer /// (if it wasn't already initialized). @@ -146,8 +146,8 @@ class Symbolizer { bool modules_fresh_; // Platform-specific default demangler, must not return nullptr. - virtual const char *PlatformDemangle(const char *name) { UNIMPLEMENTED(); } - virtual void PlatformPrepareForSandboxing() { UNIMPLEMENTED(); } + const char *PlatformDemangle(const char *name); + void PlatformPrepareForSandboxing(); static Symbolizer *symbolizer_; static StaticSpinMutex init_mu_; @@ -160,7 +160,6 @@ class Symbolizer { typedef IntrusiveList<SymbolizerTool>::Iterator Iterator; IntrusiveList<SymbolizerTool> tools_; - protected: explicit Symbolizer(IntrusiveList<SymbolizerTool> tools); static LowLevelAllocator symbolizer_allocator_; |

