Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
freebsd
GitHub Repository: freebsd/freebsd-src
Path: blob/main/contrib/llvm-project/lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemoteLog.h
39642 views
1
//===-- ProcessGDBRemoteLog.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 LLDB_SOURCE_PLUGINS_PROCESS_GDB_REMOTE_PROCESSGDBREMOTELOG_H
10
#define LLDB_SOURCE_PLUGINS_PROCESS_GDB_REMOTE_PROCESSGDBREMOTELOG_H
11
12
#include "lldb/Utility/Log.h"
13
#include "llvm/ADT/BitmaskEnum.h"
14
15
namespace lldb_private {
16
namespace process_gdb_remote {
17
18
enum class GDBRLog : Log::MaskType {
19
Async = Log::ChannelFlag<0>,
20
Breakpoints = Log::ChannelFlag<1>,
21
Comm = Log::ChannelFlag<2>,
22
Memory = Log::ChannelFlag<3>, // Log memory reads/writes calls
23
MemoryDataLong = Log::ChannelFlag<4>, // Log all memory reads/writes bytes
24
MemoryDataShort = Log::ChannelFlag<5>, // Log short memory reads/writes bytes
25
Packets = Log::ChannelFlag<6>,
26
Process = Log::ChannelFlag<7>,
27
Step = Log::ChannelFlag<8>,
28
Thread = Log::ChannelFlag<9>,
29
Watchpoints = Log::ChannelFlag<10>,
30
LLVM_MARK_AS_BITMASK_ENUM(Watchpoints)
31
};
32
LLVM_ENABLE_BITMASK_ENUMS_IN_NAMESPACE();
33
34
class ProcessGDBRemoteLog {
35
public:
36
static void Initialize();
37
};
38
39
} // namespace process_gdb_remote
40
41
template <> Log::Channel &LogChannelFor<process_gdb_remote::GDBRLog>();
42
43
} // namespace lldb_private
44
45
#endif // LLDB_SOURCE_PLUGINS_PROCESS_GDB_REMOTE_PROCESSGDBREMOTELOG_H
46
47