diff options
Diffstat (limited to 'contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFDebugMacinfoEntry.cpp')
-rw-r--r-- | contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFDebugMacinfoEntry.cpp | 111 |
1 files changed, 0 insertions, 111 deletions
diff --git a/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFDebugMacinfoEntry.cpp b/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFDebugMacinfoEntry.cpp deleted file mode 100644 index f078fbd44f2f..000000000000 --- a/contrib/llvm/tools/lldb/source/Plugins/SymbolFile/DWARF/DWARFDebugMacinfoEntry.cpp +++ /dev/null @@ -1,111 +0,0 @@ -//===-- DWARFDebugMacinfoEntry.cpp ------------------------------*- C++ -*-===// -// -// The LLVM Compiler Infrastructure -// -// This file is distributed under the University of Illinois Open Source -// License. See LICENSE.TXT for details. -// -//===----------------------------------------------------------------------===// - -#include "DWARFDebugMacinfoEntry.h" - -#include "lldb/Utility/Stream.h" - -using namespace lldb_private; -using namespace std; - -DWARFDebugMacinfoEntry::DWARFDebugMacinfoEntry() - : m_type_code(0), m_line(0), m_op2() { - m_op2.cstr = NULL; -} - -DWARFDebugMacinfoEntry::~DWARFDebugMacinfoEntry() {} - -const char *DWARFDebugMacinfoEntry::GetCString() const { - switch (m_type_code) { - case 0: - case DW_MACINFO_start_file: - case DW_MACINFO_end_file: - return NULL; - default: - break; - } - return m_op2.cstr; -} - -void DWARFDebugMacinfoEntry::Dump(Stream *s) const { - if (m_type_code) { - s->PutCString(DW_MACINFO_value_to_name(m_type_code)); - - switch (m_type_code) { - case DW_MACINFO_define: - s->Printf(" line:%u #define %s\n", (uint32_t)m_line, m_op2.cstr); - break; - - case DW_MACINFO_undef: - s->Printf(" line:%u #undef %s\n", (uint32_t)m_line, m_op2.cstr); - break; - - default: - s->Printf(" line:%u str: '%s'\n", (uint32_t)m_line, m_op2.cstr); - break; - - case DW_MACINFO_start_file: - s->Printf(" line:%u file index: '%u'\n", (uint32_t)m_line, - (uint32_t)m_op2.file_idx); - break; - - case DW_MACINFO_end_file: - break; - } - } else { - s->PutCString(" END\n"); - } -} - -bool DWARFDebugMacinfoEntry::Extract(const DWARFDataExtractor &mac_info_data, - lldb::offset_t *offset_ptr) { - if (mac_info_data.ValidOffset(*offset_ptr)) { - m_type_code = mac_info_data.GetU8(offset_ptr); - - switch (m_type_code) { - - case DW_MACINFO_define: - case DW_MACINFO_undef: - // 2 operands: - // Arg 1: operand encodes the line number of the source line on which - // the relevant defining or undefining pre-processor directives - // appeared. - m_line = mac_info_data.GetULEB128(offset_ptr); - // Arg 2: define string - m_op2.cstr = mac_info_data.GetCStr(offset_ptr); - break; - - case DW_MACINFO_start_file: - // 2 operands: - // Op 1: line number of the source line on which the inclusion - // pre-processor directive occurred. - m_line = mac_info_data.GetULEB128(offset_ptr); - // Op 2: a source file name index to a file number in the statement - // information table for the relevant compilation unit. - m_op2.file_idx = mac_info_data.GetULEB128(offset_ptr); - break; - - case 0: // End of list - case DW_MACINFO_end_file: - // No operands - m_line = DW_INVALID_OFFSET; - m_op2.cstr = NULL; - break; - default: - // Vendor specific entries always have a ULEB128 and a string - m_line = mac_info_data.GetULEB128(offset_ptr); - m_op2.cstr = mac_info_data.GetCStr(offset_ptr); - break; - } - return true; - } else - m_type_code = 0; - - return false; -} |