summaryrefslogtreecommitdiffstats
path: root/tester/covoar/ExecutableInfo.h
diff options
context:
space:
mode:
authorAlex White <alex.white@oarcorp.com>2021-04-30 14:34:18 -0500
committerJoel Sherrill <joel@rtems.org>2021-06-17 16:00:08 -0500
commitac56fce7c17e40c6ecd7980fa828a76550bbacb3 (patch)
treee59a7e98baa63d8ac08a9265f5b8c9dd6d58efde /tester/covoar/ExecutableInfo.h
parentcovoar: Store only the file name in ExecutableInfo (diff)
downloadrtems-tools-ac56fce7c17e40c6ecd7980fa828a76550bbacb3.tar.bz2
covoar: Store address-to-line info outside of DWARF
This adds the AddressToLineMapper class and supporting classes to assume responsibility of tracking address-to-line information. This allows the DWARF library to properly cleanup all of its resources and leads to significant memory savings. Closes #4383
Diffstat (limited to 'tester/covoar/ExecutableInfo.h')
-rw-r--r--tester/covoar/ExecutableInfo.h11
1 files changed, 6 insertions, 5 deletions
diff --git a/tester/covoar/ExecutableInfo.h b/tester/covoar/ExecutableInfo.h
index 5d5a595..dfc71aa 100644
--- a/tester/covoar/ExecutableInfo.h
+++ b/tester/covoar/ExecutableInfo.h
@@ -15,6 +15,7 @@
#include <rld-files.h>
#include <rld-symbols.h>
+#include "AddressToLineMapper.h"
#include "CoverageMapBase.h"
#include "SymbolTable.h"
@@ -158,11 +159,6 @@ namespace Coverage {
);
/*!
- * The DWARF data to the ELF executable.
- */
- rld::dwarf::file debug;
-
- /*!
* The executable's file name.
*/
std::string fileName;
@@ -173,6 +169,11 @@ namespace Coverage {
rld::symbols::table symbols;
/*!
+ * The address-to-line mapper for this executable.
+ */
+ AddressToLineMapper mapper;
+
+ /*!
* This map associates a symbol with its coverage map.
*/
typedef std::map<std::string, CoverageMapBase *> CoverageMaps;