diff options
author | Jim Ingham <jingham@apple.com> | 2012-08-31 23:49:32 +0000 |
---|---|---|
committer | Jim Ingham <jingham@apple.com> | 2012-08-31 23:49:32 +0000 |
commit | fcb59bcfc62550b14924199f7e67c48a4bf9f9ee (patch) | |
tree | 416a7e7ff7ef0d77f97d2ca9933a7886e2ee7acb | |
parent | d204afaee81ca4f9b4a1ee98d39ad49721999cb2 (diff) | |
download | bcm5719-llvm-fcb59bcfc62550b14924199f7e67c48a4bf9f9ee.tar.gz bcm5719-llvm-fcb59bcfc62550b14924199f7e67c48a4bf9f9ee.zip |
Add a convenience function to get the range containing a given PC specified as load address + Target.
llvm-svn: 163038
-rw-r--r-- | lldb/include/lldb/Symbol/Block.h | 3 | ||||
-rw-r--r-- | lldb/source/Symbol/Block.cpp | 10 |
2 files changed, 13 insertions, 0 deletions
diff --git a/lldb/include/lldb/Symbol/Block.h b/lldb/include/lldb/Symbol/Block.h index 0ca8547a136..f2041a12041 100644 --- a/lldb/include/lldb/Symbol/Block.h +++ b/lldb/include/lldb/Symbol/Block.h @@ -446,6 +446,9 @@ public: bool GetRangeContainingAddress (const Address& addr, AddressRange &range); + + bool + GetRangeContainingLoadAddress (lldb::addr_t load_addr, Target &target, AddressRange &range); uint32_t GetRangeIndexContainingAddress (const Address& addr); diff --git a/lldb/source/Symbol/Block.cpp b/lldb/source/Symbol/Block.cpp index fef56b17bfd..1cda1caaa3a 100644 --- a/lldb/source/Symbol/Block.cpp +++ b/lldb/source/Symbol/Block.cpp @@ -317,6 +317,16 @@ Block::GetRangeContainingAddress (const Address& addr, AddressRange &range) return false; } +bool +Block::GetRangeContainingLoadAddress (lldb::addr_t load_addr, Target &target, AddressRange &range) +{ + Address load_address; + load_address.SetLoadAddress(load_addr, &target); + AddressRange containing_range; + return GetRangeContainingAddress(load_address, containing_range); +} + + uint32_t Block::GetRangeIndexContainingAddress (const Address& addr) { |