1 //===-- LogChannelDWARF.h ---------------------------------------*- C++ -*-===// 2 // 3 // The LLVM Compiler Infrastructure 4 // 5 // This file is distributed under the University of Illinois Open Source 6 // License. See LICENSE.TXT for details. 7 // 8 //===----------------------------------------------------------------------===// 9 10 #ifndef SymbolFileDWARF_LogChannelDWARF_h_ 11 #define SymbolFileDWARF_LogChannelDWARF_h_ 12 13 // C Includes 14 // C++ Includes 15 // Other libraries and framework includes 16 // Project includes 17 #include "lldb/Core/Log.h" 18 19 #define DWARF_LOG_DEBUG_INFO (1u << 1) 20 #define DWARF_LOG_DEBUG_LINE (1u << 2) 21 #define DWARF_LOG_DEBUG_PUBNAMES (1u << 3) 22 #define DWARF_LOG_DEBUG_PUBTYPES (1u << 4) 23 #define DWARF_LOG_DEBUG_ARANGES (1u << 5) 24 #define DWARF_LOG_LOOKUPS (1u << 6) 25 #define DWARF_LOG_TYPE_COMPLETION (1u << 7) 26 #define DWARF_LOG_DEBUG_MAP (1u << 8) 27 #define DWARF_LOG_ALL (UINT32_MAX) 28 #define DWARF_LOG_DEFAULT (DWARF_LOG_DEBUG_INFO) 29 30 namespace lldb_private { 31 class LogChannelDWARF { 32 static Log::Channel g_channel; 33 34 public: 35 static void Initialize(); 36 static void Terminate(); 37 38 static Log *GetLogIfAll(uint32_t mask) { return g_channel.GetLogIfAll(mask); } 39 static Log *GetLogIfAny(uint32_t mask) { return g_channel.GetLogIfAny(mask); } 40 }; 41 } 42 43 #endif // SymbolFileDWARF_LogChannelDWARF_h_ 44