Modify lldbutil.in_range(symbol, section) to deal with the symbol whose
end address is an LLDB_INVALID_ADDRESS. Modify the test case to dump all the symbols in all the sections. llvm-svn: 140710
This commit is contained in:
parent
933d51682f
commit
c0f53df8ff
|
|
@ -53,10 +53,17 @@ def in_range(symbol, section):
|
||||||
symEA = symbol.GetEndAddress().GetFileAddress()
|
symEA = symbol.GetEndAddress().GetFileAddress()
|
||||||
secSA = section.GetFileAddress()
|
secSA = section.GetFileAddress()
|
||||||
secEA = secSA + section.GetByteSize()
|
secEA = secSA + section.GetByteSize()
|
||||||
if (secSA <= symSA and symEA < secEA):
|
|
||||||
return True
|
if symEA != lldb.LLDB_INVALID_ADDRESS:
|
||||||
|
if secSA <= symSA and symEA <= secEA:
|
||||||
|
return True
|
||||||
|
else:
|
||||||
|
return False
|
||||||
else:
|
else:
|
||||||
return False
|
if secSA <= symSA and symSA < secEA:
|
||||||
|
return True
|
||||||
|
else:
|
||||||
|
return False
|
||||||
|
|
||||||
def symbol_iter(module, section):
|
def symbol_iter(module, section):
|
||||||
"""Given a module and its contained section, returns an iterator on the
|
"""Given a module and its contained section, returns an iterator on the
|
||||||
|
|
|
||||||
|
|
@ -43,8 +43,12 @@ class ModuleAndSectionAPIsTestCase(TestBase):
|
||||||
INDENT2 = INDENT * 2
|
INDENT2 = INDENT * 2
|
||||||
for sec in exe_module.section_iter():
|
for sec in exe_module.section_iter():
|
||||||
print sec
|
print sec
|
||||||
if sec.GetName() == "__TEXT":
|
print INDENT + "Number of subsections: %d" % sec.GetNumSubSections()
|
||||||
print INDENT + "Number of subsections: %d" % sec.GetNumSubSections()
|
if sec.GetNumSubSections() == 0:
|
||||||
|
for sym in symbol_iter(exe_module, sec):
|
||||||
|
print INDENT + repr(sym)
|
||||||
|
print INDENT + "symbol type: %s" % symbol_type_to_str(sym.GetType())
|
||||||
|
else:
|
||||||
for subsec in sec:
|
for subsec in sec:
|
||||||
print INDENT + repr(subsec)
|
print INDENT + repr(subsec)
|
||||||
# Now print the symbols belonging to the subsection....
|
# Now print the symbols belonging to the subsection....
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue