summaryrefslogtreecommitdiffstats
path: root/lldb/include/lldb/lldb-private-interfaces.h
diff options
context:
space:
mode:
authorGreg Clayton <gclayton@apple.com>2012-02-05 02:38:54 +0000
committerGreg Clayton <gclayton@apple.com>2012-02-05 02:38:54 +0000
commitc96605461cddc640730fcbe93f35059a444a335c (patch)
treed82f72f7ea9da116705150fcfa3993442c0c135b /lldb/include/lldb/lldb-private-interfaces.h
parent6987fdb6208b491fb31d5599eeed6ea2f2c9f30d (diff)
downloadbcm5719-llvm-c96605461cddc640730fcbe93f35059a444a335c.tar.gz
bcm5719-llvm-c96605461cddc640730fcbe93f35059a444a335c.zip
<rdar://problem/10560053>
Fixed "target modules list" (aliased to "image list") to output more information by default. Modified the "target modules list" to have a few new options: "--header" or "-h" => show the image header address "--offset" or "-o" => show the image header address offset from the address in the file (the slide applied to the shared library) Removed the "--symfile-basename" or "-S" option, and repurposed it to "--symfile-unique" "-S" which will show the symbol file if it differs from the executable file. ObjectFile's can now be loaded from memory for cases where we don't have the files cached locally in an SDK or net mounted root. ObjectFileMachO can now read mach files from memory. Moved the section data reading code into the ObjectFile so that the object file can get the section data from Process memory if the file is only in memory. lldb_private::Module can now load its object file in a target with a rigid slide (very common operation for most dynamic linkers) by using: bool Module::SetLoadAddress (Target &target, lldb::addr_t offset, bool &changed) lldb::SBModule() now has a new constructor in the public interface: SBModule::SBModule (lldb::SBProcess &process, lldb::addr_t header_addr); This will find an appropriate ObjectFile plug-in to load an image from memory where the object file header is at "header_addr". llvm-svn: 149804
Diffstat (limited to 'lldb/include/lldb/lldb-private-interfaces.h')
-rw-r--r--lldb/include/lldb/lldb-private-interfaces.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/lldb/include/lldb/lldb-private-interfaces.h b/lldb/include/lldb/lldb-private-interfaces.h
index 16c8778e014..1e95c04a936 100644
--- a/lldb/include/lldb/lldb-private-interfaces.h
+++ b/lldb/include/lldb/lldb-private-interfaces.h
@@ -21,6 +21,7 @@ namespace lldb_private
typedef DynamicLoader* (*DynamicLoaderCreateInstance) (Process* process, bool force);
typedef ObjectContainer* (*ObjectContainerCreateInstance) (Module* module, lldb::DataBufferSP& dataSP, const FileSpec *file, lldb::addr_t offset, lldb::addr_t length);
typedef ObjectFile* (*ObjectFileCreateInstance) (Module* module, lldb::DataBufferSP& dataSP, const FileSpec* file, lldb::addr_t offset, lldb::addr_t length);
+ typedef ObjectFile* (*ObjectFileCreateMemoryInstance) (Module* module, lldb::DataBufferSP& dataSP, const lldb::ProcessSP &process_sp, lldb::addr_t offset);
typedef LogChannel* (*LogChannelCreateInstance) ();
typedef EmulateInstruction * (*EmulateInstructionCreateInstance) (const ArchSpec &arch, InstructionType inst_type);
typedef OperatingSystem* (*OperatingSystemCreateInstance) (Process *process, bool force);
OpenPOWER on IntegriCloud