1//===-- ProcessKDPLog.cpp -------------------------------------------------===//
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#include "ProcessKDPLog.h"
10
11using namespace lldb_private;
12
13static constexpr Log::Category g_categories[] = {
14 {{"async"}, {"log asynchronous activity"}, KDPLog::Async},
15 {{"break"}, {"log breakpoints"}, KDPLog::Breakpoints},
16 {{"comm"}, {"log communication activity"}, KDPLog::Comm},
17 {{"data-long"},
18 {"log memory bytes for memory reads and writes for all transactions"},
19 KDPLog::MemoryDataLong},
20 {{"data-short"},
21 {"log memory bytes for memory reads and writes for short transactions "
22 "only"},
23 KDPLog::MemoryDataShort},
24 {{"memory"}, {"log memory reads and writes"}, KDPLog::Memory},
25 {{"packets"}, {"log gdb remote packets"}, KDPLog::Packets},
26 {{"process"}, {"log process events and activities"}, KDPLog::Process},
27 {{"step"}, {"log step related activities"}, KDPLog::Step},
28 {{"thread"}, {"log thread events and activities"}, KDPLog::Thread},
29 {{"watch"}, {"log watchpoint related activities"}, KDPLog::Watchpoints},
30};
31
32static Log::Channel g_channel(g_categories, KDPLog::Packets);
33
34template <> Log::Channel &lldb_private::LogChannelFor<KDPLog>() {
35 return g_channel;
36}
37
38void ProcessKDPLog::Initialize() { Log::Register(name: "kdp-remote", channel&: g_channel); }
39

source code of lldb/source/Plugins/Process/MacOSX-Kernel/ProcessKDPLog.cpp