Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
freebsd
GitHub Repository: freebsd/freebsd-src
Path: blob/main/contrib/llvm-project/lldb/source/Plugins/DynamicLoader/wasm-DYLD/DynamicLoaderWasmDYLD.h
39646 views
1
//===-- DynamicLoaderWasmDYLD.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 liblldb_Plugins_DynamicLoaderWasmDYLD_h_
10
#define liblldb_Plugins_DynamicLoaderWasmDYLD_h_
11
12
#include "lldb/Target/DynamicLoader.h"
13
14
namespace lldb_private {
15
namespace wasm {
16
17
class DynamicLoaderWasmDYLD : public DynamicLoader {
18
public:
19
DynamicLoaderWasmDYLD(Process *process);
20
21
static void Initialize();
22
static void Terminate() {}
23
24
static llvm::StringRef GetPluginNameStatic() { return "wasm-dyld"; }
25
static llvm::StringRef GetPluginDescriptionStatic();
26
27
static DynamicLoader *CreateInstance(Process *process, bool force);
28
29
/// DynamicLoader
30
/// \{
31
void DidAttach() override;
32
void DidLaunch() override {}
33
Status CanLoadImage() override { return Status(); }
34
lldb::ThreadPlanSP GetStepThroughTrampolinePlan(Thread &thread,
35
bool stop) override;
36
lldb::ModuleSP LoadModuleAtAddress(const lldb_private::FileSpec &file,
37
lldb::addr_t link_map_addr,
38
lldb::addr_t base_addr,
39
bool base_addr_is_offset) override;
40
41
/// \}
42
43
/// PluginInterface protocol.
44
/// \{
45
llvm::StringRef GetPluginName() override { return GetPluginNameStatic(); }
46
/// \}
47
};
48
49
} // namespace wasm
50
} // namespace lldb_private
51
52
#endif // liblldb_Plugins_DynamicLoaderWasmDYLD_h_
53
54