LogChannelDWARF.h revision 355940
1//===-- LogChannelDWARF.h ---------------------------------------*- C++ -*-===//
2//
3// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4// See https://llvm.org/LICENSE.txt for license information.
5// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6//
7//===----------------------------------------------------------------------===//
8
9#ifndef SymbolFileDWARF_LogChannelDWARF_h_
10#define SymbolFileDWARF_LogChannelDWARF_h_
11
12#include "lldb/Utility/Log.h"
13
14#define DWARF_LOG_DEBUG_INFO (1u << 1)
15#define DWARF_LOG_DEBUG_LINE (1u << 2)
16#define DWARF_LOG_LOOKUPS (1u << 3)
17#define DWARF_LOG_TYPE_COMPLETION (1u << 4)
18#define DWARF_LOG_DEBUG_MAP (1u << 5)
19#define DWARF_LOG_ALL (UINT32_MAX)
20#define DWARF_LOG_DEFAULT (DWARF_LOG_DEBUG_INFO)
21
22namespace lldb_private {
23class LogChannelDWARF {
24  static Log::Channel g_channel;
25
26public:
27  static void Initialize();
28  static void Terminate();
29
30  static Log *GetLogIfAll(uint32_t mask) { return g_channel.GetLogIfAll(mask); }
31  static Log *GetLogIfAny(uint32_t mask) { return g_channel.GetLogIfAny(mask); }
32};
33}
34
35#endif // SymbolFileDWARF_LogChannelDWARF_h_
36