summaryrefslogtreecommitdiff
path: root/source/Plugins/SymbolFile/DWARF/DWARFDebugLine.h
diff options
context:
space:
mode:
Diffstat (limited to 'source/Plugins/SymbolFile/DWARF/DWARFDebugLine.h')
-rw-r--r--source/Plugins/SymbolFile/DWARF/DWARFDebugLine.h44
1 files changed, 9 insertions, 35 deletions
diff --git a/source/Plugins/SymbolFile/DWARF/DWARFDebugLine.h b/source/Plugins/SymbolFile/DWARF/DWARFDebugLine.h
index 04f72e03a2db..0d236ca686b5 100644
--- a/source/Plugins/SymbolFile/DWARF/DWARFDebugLine.h
+++ b/source/Plugins/SymbolFile/DWARF/DWARFDebugLine.h
@@ -1,9 +1,8 @@
//===-- DWARFDebugLine.h ----------------------------------------*- C++ -*-===//
//
-// The LLVM Compiler Infrastructure
-//
-// This file is distributed under the University of Illinois Open Source
-// License. See LICENSE.TXT for details.
+// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
+// See https://llvm.org/LICENSE.txt for license information.
+// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
//
//===----------------------------------------------------------------------===//
@@ -14,6 +13,7 @@
#include <string>
#include <vector>
+#include "lldb/Utility/FileSpec.h"
#include "lldb/lldb-private.h"
#include "DWARFDataExtractor.h"
@@ -24,16 +24,13 @@
class DWARFUnit;
class SymbolFileDWARF;
-//----------------------------------------------------------------------
// DWARFDebugLine
-//----------------------------------------------------------------------
class DWARFDebugLine {
public:
- //------------------------------------------------------------------
// FileNameEntry
- //------------------------------------------------------------------
struct FileNameEntry {
- FileNameEntry() : name(nullptr), dir_idx(0), mod_time(0), length(0) {}
+ FileNameEntry()
+ : name(nullptr), dir_idx(0), mod_time(0), length(0), checksum() {}
const char *name;
dw_sleb128_t dir_idx;
@@ -42,9 +39,7 @@ public:
llvm::MD5::MD5Result checksum;
};
- //------------------------------------------------------------------
// Prologue
- //------------------------------------------------------------------
struct Prologue {
Prologue()
@@ -99,6 +94,7 @@ public:
file_names.clear();
}
bool GetFile(uint32_t file_idx, const lldb_private::FileSpec &cu_comp_dir,
+ lldb_private::FileSpec::Style style,
lldb_private::FileSpec &file) const;
};
@@ -114,7 +110,6 @@ public:
void Reset(bool default_is_stmt);
void Dump(lldb_private::Log *log) const;
static void Insert(Row::collection &state_coll, const Row &state);
- static void Dump(lldb_private::Log *log, const Row::collection &state_coll);
dw_addr_t address; // The program-counter value corresponding to a machine
// instruction generated by the compiler.
@@ -145,9 +140,7 @@ public:
// instruction set architecture for the current instruction.
};
- //------------------------------------------------------------------
// LineTable
- //------------------------------------------------------------------
struct LineTable {
typedef std::shared_ptr<LineTable> shared_ptr;
@@ -160,15 +153,12 @@ public:
}
uint32_t LookupAddress(dw_addr_t address, dw_addr_t cu_high_pc) const;
- void Dump(lldb_private::Log *log) const;
Prologue::shared_ptr prologue;
Row::collection rows;
};
- //------------------------------------------------------------------
// State
- //------------------------------------------------------------------
struct State : public Row {
typedef void (*Callback)(dw_offset_t offset, const State &state,
void *userData);
@@ -196,20 +186,12 @@ public:
DISALLOW_COPY_AND_ASSIGN(State);
};
- static bool DumpOpcodes(
- lldb_private::Log *log, SymbolFileDWARF *dwarf2Data,
- dw_offset_t line_offset = DW_INVALID_OFFSET,
- uint32_t dump_flags = 0); // If line_offset is invalid, dump everything
- static bool DumpLineTableRows(
- lldb_private::Log *log, SymbolFileDWARF *dwarf2Data,
- dw_offset_t line_offset =
- DW_INVALID_OFFSET); // If line_offset is invalid, dump everything
static bool
ParseSupportFiles(const lldb::ModuleSP &module_sp,
const lldb_private::DWARFDataExtractor &debug_line_data,
- const lldb_private::FileSpec &cu_comp_dir,
dw_offset_t stmt_list,
- lldb_private::FileSpecList &support_files, DWARFUnit *dwarf_cu);
+ lldb_private::FileSpecList &support_files,
+ DWARFUnit *dwarf_cu);
static bool
ParsePrologue(const lldb_private::DWARFDataExtractor &debug_line_data,
lldb::offset_t *offset_ptr, Prologue *prologue,
@@ -218,14 +200,6 @@ public:
ParseStatementTable(const lldb_private::DWARFDataExtractor &debug_line_data,
lldb::offset_t *offset_ptr, State::Callback callback,
void *userData, DWARFUnit *dwarf_cu);
- static dw_offset_t
- DumpStatementTable(lldb_private::Log *log,
- const lldb_private::DWARFDataExtractor &debug_line_data,
- const dw_offset_t line_offset);
- static dw_offset_t
- DumpStatementOpcodes(lldb_private::Log *log,
- const lldb_private::DWARFDataExtractor &debug_line_data,
- const dw_offset_t line_offset, uint32_t flags);
static bool
ParseStatementTable(const lldb_private::DWARFDataExtractor &debug_line_data,
lldb::offset_t *offset_ptr, LineTable *line_table,