diff options
Diffstat (limited to 'lldb/scripts/interface/SBModule.i')
| -rw-r--r-- | lldb/scripts/interface/SBModule.i | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/lldb/scripts/interface/SBModule.i b/lldb/scripts/interface/SBModule.i index 32c3c15dee7..4f6e9fd9cfb 100644 --- a/lldb/scripts/interface/SBModule.i +++ b/lldb/scripts/interface/SBModule.i @@ -8,6 +8,29 @@ namespace lldb { +%pythoncode%{ +# ================================== +# Helper function for SBModule class +# ================================== +def in_range(symbol, section): + """Test whether a symbol is within the range of a section.""" + symSA = symbol.GetStartAddress().GetFileAddress() + symEA = symbol.GetEndAddress().GetFileAddress() + secSA = section.GetFileAddress() + secEA = secSA + section.GetByteSize() + + if symEA != LLDB_INVALID_ADDRESS: + if secSA <= symSA and symEA <= secEA: + return True + else: + return False + else: + if secSA <= symSA and symSA < secEA: + return True + else: + return False +%} + %feature("docstring", "Represents an executable image and its associated object and symbol files. |

