summaryrefslogtreecommitdiffstats
path: root/lldb/source/Symbol/Function.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'lldb/source/Symbol/Function.cpp')
-rw-r--r--lldb/source/Symbol/Function.cpp10
1 files changed, 10 insertions, 0 deletions
diff --git a/lldb/source/Symbol/Function.cpp b/lldb/source/Symbol/Function.cpp
index 8ce275852c5..11480f7c086 100644
--- a/lldb/source/Symbol/Function.cpp
+++ b/lldb/source/Symbol/Function.cpp
@@ -387,6 +387,16 @@ Function::CalculateSymbolContext(SymbolContext* sc)
Module *
Function::CalculateSymbolContextModule ()
{
+ const Section *section = m_range.GetBaseAddress().GetSection();
+ if (section)
+ {
+ const Section *linked_section = section->GetLinkedSection();
+ if (linked_section)
+ return linked_section->GetModule();
+ else
+ return section->GetModule();
+ }
+
return this->GetCompileUnit()->GetModule();
}
OpenPOWER on IntegriCloud