| Commit message (Collapse) | Author | Files | Lines |
|
|
|
- Removed the includes of app_common.h
- Removed app_common references in build infrastructure
- Removed app_common.cc and app_common.h
|
|
- Removed SymbolsToAnalyze from app_common and replaced it with the
symbolsToAnalyze_m member variable in DesiredSymbols, GcovData, and
ObjdumpProcessor
- Added a parameter to constructors to initialize symbolsToAnalyze_m
- Moved the definition of objdumpLine_t out of ObjdumpProcessor to make
it work with DesiredSymbols
|
|
- Replaced dynamicLibrary in app_common with local variables
- Changed data type to string
- Changed conditionals to reflect this
|
|
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
|
|
This changes the ExecutableInfo class to only store the executable
file's name rather than an entire instance of rld::files::object. This
allows the rld::files::object to be cleaned up in the ExecutableInfo
constructor.
Updates #4383
|
|
This fixes an integer overflow that would occur if a function's high PC
address were zero in the DWARF info.
|
|
|
|
A null pointer dereference happens later in the program execution if
the files are cleaned up at the end of the ExecutableInfo constructor.
This change fixes the null pointer dereference.
|
|
Occasionally the compiler will generate symbols that look similar to
symbols defined in RTEMS code except that they contain some suffix.
These symbol suffixes are only found in the ELF symbol table; the
symbols appear to be normal in the DWARF info. This appears to be
happening on all architectures.
For example, the function _Message_queue_Create from rtems appears as
"_Message_queue_Create.part.0". Other suffixes include ".isra.0",
".constprop.0", and ".0".
This looks to be related to compiler optimizations. Symbols with
suffixes were being treated as unique. For our purposes, they should be
mapped to the equivalent symbols in the DWARF info. This has been
fixed.
|
|
There were a couple of issues with the way the DWARF info was being
read. The first issue was that it inefficiently included all symbols,
even symbols that were not desired. The second issue is that it did
not handle inline functions correctly. These have been fixed.
|
|
Some NOP instructions were not being marked as executed because they
are located at the end of uncovered ranges. This has been fixed.
|
|
|
|
This avoids the processing being killed with to many file handles
open.
|
|
Use DAWRF function data to create the executable coverage
maps. Integrate the existing objdump processing with this
data.
- Refactor CoverageMapBase to have the address ranges
and address info as separate objects. Move the
to address info into a vector. Add support for
multiple address ranges.
- DesiredSymbols is only interested in function symbols.
- ExecutableInfo creates coverage maps from DWARF function
data.
- Add warning flags to the covoar build.
- Varous C++11 refactoring.
|
|
Updates #3462
|
|
|
|
Add a suitable catch to covoar's main.
|
|
|
|
Add ability to organize symbol sets of libraries in INI file
and then read them with covoar and load the symbols directly from the
libraries.
rtems-tools/../testing: Add configuration files for coverage analysis.
A number of covoar options are not required and are defaulted.
Co-author: Krzysztof Miesowicz <krzysztof.miesowicz@gmail.com>
Co-author: Vijay Kumar Banerjee <vijaykumar9597@gmail.com>
Co-author: Chris Johns <chrisj@rtems.org>
|
|
|
|
Use waf to build covoar.
|