On Mon, Apr 5, 2021 at 2:25 PM Alex White <alex.wh...@oarcorp.com> wrote: > > This patch set changes the way covoar is invoked so that its run time > is greatly reduced. For instance, a full coverage run for the > xilinx_zynq_a9_qemu took 58 minutes before these changes. After making > these changes, that same coverage run takes 3 minutes 15 seconds. > > Care has been taken to limit the amount of formatting and C++ > modernization changes so that patch review is easier. A follow-up patch > will clean up some of the methods that were touched as part of the > covoar patch. > > Details can be found here: > https://devel.rtems.org/ticket/4374
To help with review: Most changes just cascade from the fact that the data structures in `DesiredSymbols` have changed. Instead of just having a set of all symbols, there is now also a mapping of symbol set names to lists of symbol names. Additionally, the statistics are now stored in a map which is keyed on the symbol set names. A large number of changes in the covoar patch follow the same pattern of changing a loop from iterating over the master set to now iterating over all symbols in a given symbol set and doing a lookup in the master set. Before: loop over symbolName-info pairs in master set do something with info After: loop over setName-symbolNames pairs loop over symbolName in symbolNames look up info in master set by symbolName do something with info > > Alex White (2): > covoar: Split symbols by symbol set > coverage.py: Call covoar once > > tester/covoar/DesiredSymbols.cc | 465 +++++++++++++++++--------------- > tester/covoar/DesiredSymbols.h | 98 +++++-- > tester/covoar/ReportsBase.cc | 181 +++++++------ > tester/covoar/ReportsBase.h | 40 ++- > tester/covoar/ReportsHtml.cc | 62 +++-- > tester/covoar/ReportsHtml.h | 13 +- > tester/covoar/ReportsText.cc | 66 ++--- > tester/covoar/ReportsText.h | 13 +- > tester/covoar/covoar.cc | 6 +- > tester/rt/coverage.py | 59 ++-- > 10 files changed, 571 insertions(+), 432 deletions(-) > > -- > 2.27.0 > > _______________________________________________ > devel mailing list > devel@rtems.org > http://lists.rtems.org/mailman/listinfo/devel _______________________________________________ devel mailing list devel@rtems.org http://lists.rtems.org/mailman/listinfo/devel