1 //===-- sanitizer_symbolizer_mac.h ------------------------------*- C++ -*-===//
3 // This file is distributed under the University of Illinois Open Source
4 // License. See LICENSE.TXT for details.
6 //===----------------------------------------------------------------------===//
8 // This file is shared between various sanitizers' runtime libraries.
10 // Header for Mac-specific "atos" symbolizer.
11 //===----------------------------------------------------------------------===//
13 #ifndef SANITIZER_SYMBOLIZER_MAC_H
14 #define SANITIZER_SYMBOLIZER_MAC_H
16 #include "sanitizer_platform.h"
19 #include "sanitizer_symbolizer_internal.h"
21 namespace __sanitizer
{
23 class DlAddrSymbolizer
: public SymbolizerTool
{
25 bool SymbolizePC(uptr addr
, SymbolizedStack
*stack
) override
;
26 bool SymbolizeData(uptr addr
, DataInfo
*info
) override
;
29 class AtosSymbolizerProcess
;
31 class AtosSymbolizer
: public SymbolizerTool
{
33 explicit AtosSymbolizer(const char *path
, LowLevelAllocator
*allocator
);
35 bool SymbolizePC(uptr addr
, SymbolizedStack
*stack
) override
;
36 bool SymbolizeData(uptr addr
, DataInfo
*info
) override
;
39 AtosSymbolizerProcess
*process_
;
42 } // namespace __sanitizer
44 #endif // SANITIZER_MAC
46 #endif // SANITIZER_SYMBOLIZER_MAC_H