Add a method "GetEntryPoint" to the ObjectFile class, and implement it on MachO & ELF - though the ELF implementation is probably a little weak. Then use this method in place of directly looking for "start" in the ThreadPlanCallFunction constructor to find the stopping point for our function evaluation.
llvm-svn: 127194
diff --git a/lldb/source/Plugins/ObjectFile/ELF/ObjectFileELF.h b/lldb/source/Plugins/ObjectFile/ELF/ObjectFileELF.h
index 5de0a8a..2b78da5 100644
--- a/lldb/source/Plugins/ObjectFile/ELF/ObjectFileELF.h
+++ b/lldb/source/Plugins/ObjectFile/ELF/ObjectFileELF.h
@@ -115,6 +115,9 @@
virtual lldb_private::Address
GetImageInfoAddress();
+
+ virtual lldb_private::Address
+ GetEntryPointAddress ();
private:
ObjectFileELF(lldb_private::Module* module,
@@ -156,6 +159,9 @@
/// Data extractor holding the string table used to resolve section names.
lldb_private::DataExtractor m_shstr_data;
+ /// Cached value of the entry point for this module.
+ lldb_private::Address m_entry_point_address;
+
/// Returns a 1 based index of the given section header.
unsigned
SectionIndex(const SectionHeaderCollIter &I);