diff options
author | Jonas Devlieghere <jonas@devlieghere.com> | 2024-09-03 10:33:30 -0700 |
---|---|---|
committer | Jonas Devlieghere <jonas@devlieghere.com> | 2024-09-03 14:38:39 -0700 |
commit | 98bde7fd872c10e49035d5dc5d2f2b44489f6a07 (patch) | |
tree | 359de1ee43e0d913e86f1d018f7d06f9e92a79a2 | |
parent | d966d4708fe5084e47ca3d9d411935d6870aefff (diff) | |
download | llvm-98bde7fd872c10e49035d5dc5d2f2b44489f6a07.zip llvm-98bde7fd872c10e49035d5dc5d2f2b44489f6a07.tar.gz llvm-98bde7fd872c10e49035d5dc5d2f2b44489f6a07.tar.bz2 |
[lldb] Avoid FileSpec indirection where we can use SupportFiles directly
Now that more parts of LLDB know about SupportFiles, avoid going through
FileSpec (and losing the Checksum in the process). Instead, use the
SupportFile directly.
-rw-r--r-- | lldb/source/Commands/CommandObjectSource.cpp | 4 | ||||
-rw-r--r-- | lldb/source/Core/SourceManager.cpp | 3 | ||||
-rw-r--r-- | lldb/source/Symbol/LineTable.cpp | 4 |
3 files changed, 5 insertions, 6 deletions
diff --git a/lldb/source/Commands/CommandObjectSource.cpp b/lldb/source/Commands/CommandObjectSource.cpp index 1fc1224..86c090f 100644 --- a/lldb/source/Commands/CommandObjectSource.cpp +++ b/lldb/source/Commands/CommandObjectSource.cpp @@ -1053,7 +1053,7 @@ protected: ? sc.line_entry.column : 0; target.GetSourceManager().DisplaySourceLinesWithLineNumbers( - std::make_shared<SupportFile>(sc.comp_unit->GetPrimaryFile()), + sc.comp_unit->GetPrimarySupportFile(), sc.line_entry.line, column, lines_to_back_up, m_options.num_lines - lines_to_back_up, "->", &result.GetOutputStream(), GetBreakpointLocations()); @@ -1174,7 +1174,7 @@ protected: m_options.num_lines = 10; const uint32_t column = 0; target.GetSourceManager().DisplaySourceLinesWithLineNumbers( - std::make_shared<SupportFile>(sc.comp_unit->GetPrimaryFile()), + sc.comp_unit->GetPrimarySupportFile(), m_options.start_line, column, 0, m_options.num_lines, "", &result.GetOutputStream(), GetBreakpointLocations()); diff --git a/lldb/source/Core/SourceManager.cpp b/lldb/source/Core/SourceManager.cpp index f6e59ce..f97d86a 100644 --- a/lldb/source/Core/SourceManager.cpp +++ b/lldb/source/Core/SourceManager.cpp @@ -504,8 +504,7 @@ void SourceManager::File::CommonInitializer(SupportFileSP support_file_sp, SymbolContext sc; sc_list.GetContextAtIndex(0, sc); if (sc.comp_unit) - SetSupportFile(std::make_shared<SupportFile>( - sc.comp_unit->GetPrimaryFile())); + SetSupportFile(sc.comp_unit->GetPrimarySupportFile()); } } } diff --git a/lldb/source/Symbol/LineTable.cpp b/lldb/source/Symbol/LineTable.cpp index 8fb002c..3d2afcd 100644 --- a/lldb/source/Symbol/LineTable.cpp +++ b/lldb/source/Symbol/LineTable.cpp @@ -288,8 +288,8 @@ bool LineTable::ConvertEntryAtIndexToLineEntry(uint32_t idx, else line_entry.range.SetByteSize(0); - line_entry.file_sp = std::make_shared<SupportFile>( - m_comp_unit->GetSupportFiles().GetFileSpecAtIndex(entry.file_idx)); + line_entry.file_sp = + m_comp_unit->GetSupportFiles().GetSupportFileAtIndex(entry.file_idx); line_entry.original_file_sp = m_comp_unit->GetSupportFiles().GetSupportFileAtIndex(entry.file_idx); line_entry.line = entry.line; |