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 
11 using namespace lldb_private;
12 
13 static 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 
32 static Log::Channel g_channel(g_categories, KDPLog::Packets);
33 
LogChannelFor()34 template <> Log::Channel &lldb_private::LogChannelFor<KDPLog>() {
35   return g_channel;
36 }
37 
Initialize()38 void ProcessKDPLog::Initialize() { Log::Register("kdp-remote", g_channel); }
39