29 void DynamicLoaderWasmDYLD::Initialize() {
30 PluginManager::RegisterPlugin(GetPluginNameStatic(),
31 GetPluginDescriptionStatic(), CreateInstance);
34 llvm::StringRef DynamicLoaderWasmDYLD::GetPluginDescriptionStatic() {
35 return "Dynamic loader plug-in that watches for shared library "
36 "loads/unloads in WebAssembly engines.";
41 bool should_create = force;
45 llvm::Triple::wasm32);
54 void DynamicLoaderWasmDYLD::DidAttach() {
55 Log *log =
GetLog(LLDBLog::DynamicLoader);
56 LLDB_LOGF(log,
"DynamicLoaderWasmDYLD::%s()", __FUNCTION__);
59 auto error = m_process->LoadModules();
63 ThreadPlanSP DynamicLoaderWasmDYLD::GetStepThroughTrampolinePlan(
Thread &thread,
65 return ThreadPlanSP();
68 lldb::ModuleSP DynamicLoaderWasmDYLD::LoadModuleAtAddress(
71 if (ModuleSP module_sp = DynamicLoader::LoadModuleAtAddress(
72 file, link_map_addr, base_addr, base_addr_is_offset))
75 if (ModuleSP module_sp = m_process->ReadModuleFromMemory(file, base_addr)) {
76 UpdateLoadedSections(module_sp, link_map_addr, base_addr,
false);
77 m_process->GetTarget().GetImages().AppendIfNeeded(module_sp);