[PATCH 0/2] covoar: Dispose of file info in ExecutableInfo

Alex White alex.white at oarcorp.com
Fri Apr 30 20:01:33 UTC 2021


This patch set includes two patches that significantly lower the memory
usage of covoar. For a full coverage run of the leon3 BSP on my
machine, the peak memory usage falls from 9.6 GB down to 1.4 GB.

The cleanup of the ELF and DWARF info had previously been moved from
the ExecutableInfo class's constructor to its destructor. This was done
to ensure that ExecutableInfo::getSourceAndLine() could utilize the
DWARF info. A side effect of that change was increased memory usage.

These patches ensure that no ELF or DWARF objects are held by the
ExecutableInfo class after construction.

Alex White (2):
  covoar: Store only the file name in ExecutableInfo
  covoar: Store address-to-line info outside of DWARF

 rtemstoolkit/rld-dwarf.cpp           |   5 +
 rtemstoolkit/rld-dwarf.h             |   5 +
 tester/covoar/AddressToLineMapper.cc | 105 +++++++++++++++
 tester/covoar/AddressToLineMapper.h  | 193 +++++++++++++++++++++++++++
 tester/covoar/ExecutableInfo.cc      |  85 ++++++------
 tester/covoar/ExecutableInfo.h       |  15 ++-
 tester/covoar/wscript                |   1 +
 7 files changed, 358 insertions(+), 51 deletions(-)
 create mode 100644 tester/covoar/AddressToLineMapper.cc
 create mode 100644 tester/covoar/AddressToLineMapper.h

-- 
2.27.0



More information about the devel mailing list