35 lines · c
1//===----------------------------------------------------------------------===//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-exception6//7//===----------------------------------------------------------------------===//8 9#ifndef LLDB_SOURCE_PLUGINS_SYMBOLFILE_DWARF_SYMBOLFILEWASM_H10#define LLDB_SOURCE_PLUGINS_SYMBOLFILE_DWARF_SYMBOLFILEWASM_H11 12#include "SymbolFileDWARF.h"13 14namespace lldb_private::plugin {15namespace dwarf {16class SymbolFileWasm : public SymbolFileDWARF {17public:18 SymbolFileWasm(lldb::ObjectFileSP objfile_sp, SectionList *dwo_section_list);19 20 ~SymbolFileWasm() override;21 22 lldb::offset_t GetVendorDWARFOpcodeSize(const DataExtractor &data,23 const lldb::offset_t data_offset,24 const uint8_t op) const override;25 26 bool ParseVendorDWARFOpcode(uint8_t op, const DataExtractor &opcodes,27 lldb::offset_t &offset, RegisterContext *reg_ctx,28 lldb::RegisterKind reg_kind,29 std::vector<Value> &stack) const override;30};31} // namespace dwarf32} // namespace lldb_private::plugin33 34#endif35