On Wed, Jun 2, 2021 at 7:37 PM Chris Johns wrote:
>
> Looking good with a single comment below ...
>
> On 3/6/21 6:08 am, Alex White wrote:
> > This adds the AddressToLineMapper class and supporting classes to
> > assume responsibility of tracking address-to-line informat
---
tester/covoar/CoverageMapBase.cc | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/tester/covoar/CoverageMapBase.cc b/tester/covoar/CoverageMapBase.cc
index 6ca5cf7..f0b5890 100644
--- a/tester/covoar/CoverageMapBase.cc
+++ b/tester/covoar/CoverageMapBase.cc
@@ -121,7 +121,7
---
tester/covoar/Explanations.cc | 24 +++-
1 file changed, 11 insertions(+), 13 deletions(-)
diff --git a/tester/covoar/Explanations.cc b/tester/covoar/Explanations.cc
index 1449fb2..4d177eb 100644
--- a/tester/covoar/Explanations.cc
+++ b/tester/covoar/Explanations.cc
@@
This corrects an issue where the starting line numbers of explanations
had their last digit removed. This was caused by code left over for
handling C file IO where the newline was included in the buffer.
---
tester/covoar/Explanations.cc | 2 --
1 file changed, 2 deletions(-)
diff --git
On Mon, Jun 7, 2021 at 8:14 PM Chris Johns wrote:
>
> On 8/6/21 1:44 am, Joel Sherrill wrote:
> >
> >
> > On Mon, Jun 7, 2021 at 7:00 AM Alex White > <mailto:alex.wh...@oarcorp.com>> wrote:
> >
> >
> > On Wed, Jun 2, 2021 at 7:37
---
tester/covoar/Explanations.cc | 3 +++
1 file changed, 3 insertions(+)
diff --git a/tester/covoar/Explanations.cc b/tester/covoar/Explanations.cc
index 1449fb2..64cad5c 100644
--- a/tester/covoar/Explanations.cc
+++ b/tester/covoar/Explanations.cc
@@ -87,6 +87,9 @@ namespace Coverage {
The ordering of keys cannot be guaranteed in a dictionary. This changes
the options iteration to no longer rely on key ordering.
Closes #4402
---
rtemstoolkit/mailer.py | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/rtemstoolkit/mailer.py b/rtemstoolkit/mailer.py
index
On Wed, May 5, 2021 at 10:15 PM Chris Johns wrote:
>
> On 6/5/21 4:49 am, Gedare Bloom wrote:
> > On Wed, May 5, 2021 at 9:16 AM Alex White wrote:
> >>
> >> On Wed, May 5, 2021 at 9:47 AM Gedare Bloom wrote:
> >>>
> >>> Why?
> >>
This adds the improved mailer.py script from rtems-tools.
Closes #4388
---
source-builder/sb/mailer.py | 194 ++--
source-builder/sb/options.py| 26 -
source-builder/sb/setbuilder.py | 2 +
3 files changed, 189 insertions(+), 33 deletions(-)
diff --git
This fixes a bug where covoar reports uncovered ranges of size 1. When a
NOP instruction is encountered at the end of a function, the remaining
non-instruction bytes are marked as executed. The loop that marks the
remaining bytes as executed was not considering the last address of the
function.
ping :)
From: Alex White
Sent: Tuesday, May 11, 2021 10:19 AM
To: devel@rtems.org
Cc: Alex White
Subject: [PATCH v4] sb: Merge mailer changes from rtems-tools
This adds the improved mailer.py script from rtems-tools.
Closes #4388
---
source-builder/sb
On Wed, May 26, 2021 at 7:39 PM Chris Johns wrote:
>
> On 12/5/21 3:19 am, Alex White wrote:
> > This adds the improved mailer.py script from rtems-tools.
> >
> > Closes #4388
> > ---
> > source-builder/sb/mailer.py | 194 ++
On Tue, May 25, 2021 at 7:24 PM Chris Johns wrote:
>
>
>
> On 1/5/21 8:01 am, Alex White wrote:
> > This adds the AddressToLineMapper class and supporting classes to
> > assume responsibility of tracking address-to-line information.
> >
> > This allows the D
ping :)
From: Alex White
Sent: Friday, April 30, 2021 3:01 PM
To: devel@rtems.org
Cc: Alex White
Subject: [PATCH 0/2] covoar: Dispose of file info in ExecutableInfo
This patch set includes two patches that significantly lower the memory
usage of covoar
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
---
rtemstoolkit/rld-dwarf.cpp
On Wed, Jul 7, 2021 at 6:55 PM Chris Johns wrote:
>
> On 7/7/21 11:37 pm, Ryan Long wrote:
> > I'll get those pointers changed to references, and remove the whitespace
> > changes. Is there a particular reason to not use '\n' instead of std::endl?
>
> Awesome and thanks.
>
> > I read that
On Wed, Jun 30, 2021 at 11:40 PM wrote:
>
> From: Chris Johns
>
> - The member variable `path_` cannot be a reference and initialised to
> a const char* type input. To do so would require there is a temporary with
> an unspecified life time.
> ---
> tester/covoar/AddressToLineMapper.h | 2
This adds the improved mailer.py script from rtems-tools.
Closes #4388
---
source-builder/sb/mailer.py | 193 ++--
source-builder/sb/options.py| 26 -
source-builder/sb/setbuilder.py | 2 +
3 files changed, 188 insertions(+), 33 deletions(-)
diff --git
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
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
---
tester/covoar/ExecutableInfo.cc | 12 +---
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
---
rtemstoolkit/rld-dwarf.cpp
This adds the improved mailer.py script from rtems-tools.
Closes #4388
---
source-builder/sb/mailer.py | 192 ++--
source-builder/sb/options.py| 9 ++
source-builder/sb/setbuilder.py | 2 +
3 files changed, 171 insertions(+), 32 deletions(-)
diff --git
This adds the improved mailer.py script from rtems-tools.
Closes #4388
---
source-builder/sb/mailer.py | 192 ++--
source-builder/sb/options.py| 26 -
source-builder/sb/setbuilder.py | 2 +
3 files changed, 187 insertions(+), 33 deletions(-)
diff --git
The ordering of keys cannot be guaranteed in a dictionary. This changes
the options dictionary to an OrderedDict to preserve key order. This
also fixes the iteration start point in add_arguments.
Closes #4402
---
rtemstoolkit/mailer.py | 24 +---
1 file changed, 13
On Wed, May 5, 2021 at 9:47 AM Gedare Bloom wrote:
>
> Why?
To prevent the '--mail' and '--use-gitconfig' options from being added more
than once to the ArgumentParser in add_arguments.
Alex
>
> On Wed, May 5, 2021 at 8:08 AM Alex White wrote:
> >
> > The
---
.../aarch64/aarch64-exception-frame-print.c | 105 +-
1 file changed, 101 insertions(+), 4 deletions(-)
diff --git a/cpukit/score/cpu/aarch64/aarch64-exception-frame-print.c
b/cpukit/score/cpu/aarch64/aarch64-exception-frame-print.c
index 59b5d06032..348151a468 100644
---
On Mon, Mar 22, 2021 at 2:33 PM Joel Sherrill wrote:
>> +static const char* _exception_class_to_string( uint16_t exception_class )
>> +{
>> + switch (exception_class)
>> + {
>> + case 0b01: return "Trapped WFI or WFE instruction";
>> + case 0b11: return "Trapped MCR or MRC access with
The taken/not taken bit was being interpreted incorrectly. This led
to branches being marked "always taken" when they were never taken.
This has been fixed.
---
tester/covoar/TargetBase.cc | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/tester/covoar/TargetBase.cc
There was a potential that the branch info loop never terminated.
This has been fixed by adding a more reliable termination condition
and logging an error if it cannot find the branch target.
---
tester/covoar/CoverageReaderQEMU.cc | 9 -
1 file changed, 8 insertions(+), 1 deletion(-)
v2:
- Revert change to ENTRIES macro in CoverageReaderQEMU.cc
This patch set contains a couple of fixes for issues that were found
while using covoar to analyze branch coverage in QEMU.
Alex White (2):
covoar/CoverageReaderQEMU: Fix infinite loop
covoar/TargetBase: Fix QEMU branch info
Hi,
Here is the status of the rtems-tools patches I have sent out over the past few
weeks (an X means the latest patch revision has been reviewed):
[ ] tester: Limit branch coverage percentage precision
[ ] coverage: Fix option processing on FreeBSD
[ ] coverage/symbol-sets.ini : Add libtrace
[
---
tester/covoar/TargetFactory.cc | 2 +
tester/covoar/Target_aarch64.cc | 100
tester/covoar/Target_aarch64.h | 77
tester/covoar/wscript | 1 +
4 files changed, 180 insertions(+)
create mode 100644
On Wed, Mar 24, 2021 at 12:25 PM Gedare Bloom wrote:
>
> On Wed, Mar 24, 2021 at 10:46 AM Alex White wrote:
> > diff --git a/tester/covoar/Target_aarch64.cc
> > b/tester/covoar/Target_aarch64.cc
> > new file mode 100644
> > index 000..64472d6
> > -
On Wed, Mar 24, 2021 at 11:04 AM Joel Sherrill wrote:
>
>
>
> On Wed, Mar 24, 2021 at 10:52 AM Gedare Bloom wrote:
>>
>> On Wed, Mar 24, 2021 at 7:56 AM Alex White wrote:
>> > My plan is to resend the patches that have not been reviewed and meter
>> &
ping
> -Original Message-
> From: Alex White
> Sent: Thursday, March 18, 2021 1:05 PM
> To: devel@rtems.org
> Cc: Alex White
> Subject: [PATCH v5 0/2] Fix NOP recognition
>
> v5:
> - Fix missing std::dec at the end of error message printing in
> Cove
ping
> -Original Message-
> From: Alex White
> Sent: Thursday, March 11, 2021 12:26 PM
> To: devel@rtems.org
> Cc: Alex White
> Subject: [PATCH] covoar/Target_arm: Add THUMB branch instructions
>
> The ".n" and ".w" variants of the T
Some NOP instructions were not being marked as executed because they
are located at the end of uncovered ranges. This has been fixed.
---
tester/covoar/CoverageMapBase.cc | 10 +++
tester/covoar/CoverageMapBase.h | 4 ++
tester/covoar/DesiredSymbols.cc | 38 +--
instructions were showing up as
unexecuted in coverage reports.
Alex White (2):
covoar: Fix NOP execution marking
covoar/Target_i386: Add NOP patterns
tester/covoar/CoverageMapBase.cc | 10 +++
tester/covoar/CoverageMapBase.h | 4 ++
tester/covoar/DesiredSymbols.cc | 38
A couple of NOP patterns found with the pc686 BSP were not detected.
This has been fixed.
---
tester/covoar/Target_i386.cc | 9 +
1 file changed, 9 insertions(+)
diff --git a/tester/covoar/Target_i386.cc b/tester/covoar/Target_i386.cc
index e0c9c0f..4567c1e 100644
---
ping
> -Original Message-
> From: Alex White
> Sent: Friday, March 19, 2021 2:10 PM
> To: devel@rtems.org
> Cc: Alex White
> Subject: [PATCH v4] covoar: Handle periods in symbols from objdump
>
> Occasionally the compiler will generate symbols that look simi
On Thu, Mar 25, 2021 at 2:38 PM Gedare Bloom wrote:
>
> On Thu, Mar 25, 2021 at 10:05 AM Joel Sherrill wrote:
> >
> >
> >
> > On Thu, Mar 25, 2021 at 10:42 AM Gedare Bloom wrote:
> >>
> >> On Thu, Mar 18, 2021 at 12:05 PM Alex White wrote:
&
in Coverage::finalizeSymbol()
v3:
- Fix double increment of rangeIndex in Coverage::finalizeSymbol()
v2:
- Fix leftover debugging code in Coverage::finalizeSymbol()
This patch set fixes a couple cases where NOP instructions were showing
up as unexecuted in coverage reports.
Alex White (2):
covoar
A couple of NOP patterns found with the pc686 BSP were not detected.
This has been fixed.
---
tester/covoar/Target_i386.cc | 9 +
1 file changed, 9 insertions(+)
diff --git a/tester/covoar/Target_i386.cc b/tester/covoar/Target_i386.cc
index e0c9c0f..4567c1e 100644
---
Some NOP instructions were not being marked as executed because they
are located at the end of uncovered ranges. This has been fixed.
---
tester/covoar/CoverageMapBase.cc | 10 +++
tester/covoar/CoverageMapBase.h | 4 ++
tester/covoar/DesiredSymbols.cc | 38 +--
On Mon, Mar 29, 2021 at 4:39 PM Chris Johns wrote:
>
> On 30/3/21 7:56 am, Gedare Bloom wrote:
> > On Fri, Mar 12, 2021 at 10:07 AM Alex White wrote:
> >>
> >> This adds a new behavior to the -d option which allows the creation of
> >> named objdump out
ping
On Fri, Mar 12, 2021 at 11:14 AM Alex White wrote:
>
> This fixes an integer overflow that would occur if a function's high PC
> address were zero in the DWARF info.
> ---
> tester/covoar/ExecutableInfo.cc | 5 +
> 1 file changed, 5 insertions(+)
>
> di
ping
On Fri, Mar 12, 2021 at 11:14 AM Alex White wrote:
>
> ---
> tester/covoar/ExecutableInfo.cc | 10 ++
> 1 file changed, 10 insertions(+)
>
> diff --git a/tester/covoar/ExecutableInfo.cc b/tester/covoar/ExecutableInfo.cc
> index 187bb77..5a730fd 100644
ything.
Alex
>
> On Tue, Mar 30, 2021 at 8:45 AM Alex White wrote:
> >
> > ping
> >
> > On Fri, Mar 12, 2021 at 11:14 AM Alex White wrote:
> > >
> > > This fixes an integer overflow that would occur if a function's high PC
> > > addr
The `rangeIndex` variable is 1 higher than the index at which the first
instruction address was found. This fixes the loop to set `rangeIndex`
correctly.
---
tester/covoar/ObjdumpProcessor.cc | 9 -
1 file changed, 4 insertions(+), 5 deletions(-)
diff --git
t; > Branch: master
> > Commit: 420d7a13672991a1480d06ac02190f2976b9253b
> > Changeset:
> > http://git.rtems.org/rtems-tools/commit/?id=420d7a13672991a1480d06ac02190f2976b9253b
> >
> > Author: Alex White
> > Date: Wed Mar 3 09:48:00 2021 -0600
> >
> > rld-
The `rangeIndex` variable is 1 higher than the index at which the first
instruction address was found. This fixes the lookup after the loop to
account for that fact.
---
tester/covoar/ObjdumpProcessor.cc | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git
On Wed, Mar 31, 2021 at 11:22 AM Gedare Bloom wrote:
>
> On Wed, Mar 31, 2021 at 10:05 AM Alex White wrote:
> >
> > The `rangeIndex` variable is 1 higher than the index at which the first
> > instruction address was found. This fixes the lookup after the loop to
&
This changes the way covoar organizes the symbols. Instead of treating
all symbols as one set, covoar is now aware of multiple symbol sets and
tracks statistics for each set. It now also generates reports for each
symbol set.
This change relieves the caller of covoar of the reponsibility of
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
Alex White (2):
covoar: Split symbols
Updates #4374
---
tester/rt/coverage.py | 59 +--
1 file changed, 29 insertions(+), 30 deletions(-)
diff --git a/tester/rt/coverage.py b/tester/rt/coverage.py
index 29ed60b..8860c94 100644
--- a/tester/rt/coverage.py
+++ b/tester/rt/coverage.py
@@ -304,22
On Mon, Apr 5, 2021 at 2:25 PM Alex White 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, tha
---
.../aarch64/aarch64-exception-frame-print.c | 133 --
1 file changed, 123 insertions(+), 10 deletions(-)
diff --git a/cpukit/score/cpu/aarch64/aarch64-exception-frame-print.c
b/cpukit/score/cpu/aarch64/aarch64-exception-frame-print.c
index 59b5d06032..a8c492b1da 100644
---
On Tue, Mar 23, 2021 at 11:46 AM Gedare Bloom wrote:
>
> On Tue, Mar 23, 2021 at 10:31 AM Alex White wrote:
> >
> > ---
> > .../aarch64/aarch64-exception-frame-print.c | 133 --
> > 1 file changed, 123 insertions(+), 10 deletions(-)
> &g
On Thu, Mar 25, 2021 at 6:10 PM Chris Johns wrote:
>
> On 26/3/21 8:49 am, Alex White wrote:
> > Some NOP instructions were not being marked as executed because they
> > are located at the end of uncovered ranges. This has been fixed.
> > ---
> > tester/co
On Sat, Mar 27, 2021 at 9:46 AM Gedare Bloom wrote:
>
> On Fri, Mar 12, 2021 at 10:17 AM Alex White wrote:
> >
> > ---
> > tester/rtems/testing/coverage/symbol-sets.ini | 3 ++-
> > 1 file changed, 2 insertions(+), 1 deletion(-)
> >
> > diff --git a/tes
ping
> -Original Message-
> From: Alex White
> Sent: Friday, March 12, 2021 11:07 AM
> To: devel@rtems.org
> Cc: Alex White
> Subject: [PATCH] covoar: Add option to create named objdumps
>
> This adds a new behavior to the -d option which allows the creation of
---
.../aarch64/aarch64-exception-frame-print.c | 135 --
1 file changed, 125 insertions(+), 10 deletions(-)
diff --git a/cpukit/score/cpu/aarch64/aarch64-exception-frame-print.c
b/cpukit/score/cpu/aarch64/aarch64-exception-frame-print.c
index 59b5d06032..e207a5a81d 100644
---
Updates #4374
---
tester/rt/coverage.py | 60 +--
1 file changed, 30 insertions(+), 30 deletions(-)
diff --git a/tester/rt/coverage.py b/tester/rt/coverage.py
index 29ed60b..beda207 100644
--- a/tester/rt/coverage.py
+++ b/tester/rt/coverage.py
@@ -304,22
On Tue, Apr 6, 2021 at 10:56 AM Gedare Bloom wrote:
>
> looks ok, it's a lot to try to process though.
>
> In a future patch it would be good to provide more useful names, I
> don't know what 'ha' and 'la' mean, if anything. at least 'a' I
> understand to be an address.
>
> Also, the typedef with
This patch set contains a few improvements to error handling in covoar
that result in more meaningful error messages.
Alex White (3):
covoar: Catch exceptional case
covoar: Improve findCoverageMap error message
covoar: Fix overflow of high PC address
tester/covoar/ExecutableInfo.cc | 23
This fixes an integer overflow that would occur if a function's high PC
address were zero in the DWARF info.
---
tester/covoar/ExecutableInfo.cc | 5 +
1 file changed, 5 insertions(+)
diff --git a/tester/covoar/ExecutableInfo.cc b/tester/covoar/ExecutableInfo.cc
index 30828a6..7f33f20 100644
---
tester/covoar/ExecutableInfo.cc | 8 ++--
1 file changed, 6 insertions(+), 2 deletions(-)
diff --git a/tester/covoar/ExecutableInfo.cc b/tester/covoar/ExecutableInfo.cc
index 5a730fd..30828a6 100644
--- a/tester/covoar/ExecutableInfo.cc
+++ b/tester/covoar/ExecutableInfo.cc
@@ -177,7
Occasionally the compiler will generate symbols that look similar to
symbols defined in RTEMS code except that they contain some suffix.
This looks to be related to compiler optimizations. Such symbols were
being treated as unique. For our purposes, they should be mapped to
the equivalent symbols
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.
---
tester/covoar/ExecutableInfo.cc | 9 ++---
1 file changed, 6 insertions(+), 3 deletions(-)
diff
---
tester/rtems/testing/coverage/symbol-sets.ini | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/tester/rtems/testing/coverage/symbol-sets.ini
b/tester/rtems/testing/coverage/symbol-sets.ini
index 9617dd8..52e25ff 100644
--- a/tester/rtems/testing/coverage/symbol-sets.ini
This adds a new behavior to the -d option which allows the creation of
named objdump outputs in the /tmp directory. This allows the outputs to
be reused on subsequent runs of covoar rather than running objdump
again.
---
tester/covoar/ObjdumpProcessor.cc | 22 +-
Some NOP instructions were not being marked as executed because they
are located at the end of uncovered ranges. This has been fixed.
---
tester/covoar/CoverageMapBase.cc | 10 +++
tester/covoar/CoverageMapBase.h | 4 ++
tester/covoar/DesiredSymbols.cc | 38 --
v3:
- Fix double increment of rangeIndex in Coverage::finalizeSymbol()
v2:
- Fix leftover debugging code in Coverage::finalizeSymbol()
This patch set fixes a couple cases where NOP instructions were showing
up as unexecuted in coverage reports.
Alex White (2):
covoar: Fix NOP execution
A couple of NOP patterns found with the pc686 BSP were not detected.
This has been fixed.
---
tester/covoar/Target_i386.cc | 9 +
1 file changed, 9 insertions(+)
diff --git a/tester/covoar/Target_i386.cc b/tester/covoar/Target_i386.cc
index e0c9c0f..4567c1e 100644
---
Covoar had not been updated to account for the paths used by the new
build system. This has been fixed.
---
tester/covoar/covoar.cc | 5 -
1 file changed, 5 deletions(-)
diff --git a/tester/covoar/covoar.cc b/tester/covoar/covoar.cc
index 84d883a..bf95cb4 100644
--- a/tester/covoar/covoar.cc
This patch set includes a few improvements to the coverage reports.
Alex White (4):
covoar/reports: Add new statistics to summary
coverage/reports: Improve formatting and clarity
coverage/reports: Share common JS and CSS in reports
coverage: Give coverage bars red background
tester
---
tester/rt/coverage.py | 3 +++
1 file changed, 3 insertions(+)
diff --git a/tester/rt/coverage.py b/tester/rt/coverage.py
index ec3957c..a561d26 100644
--- a/tester/rt/coverage.py
+++ b/tester/rt/coverage.py
@@ -129,6 +129,9 @@ class report_gen_html:
head_section += 'width:
This moves all of the javascript and CSS files that are shared by the
symbol set HTML reports to the shared parent directory. It also includes
the javascript and CSS in the top-level index file.
---
tester/covoar/ReportsHtml.cc | 4 ++--
tester/rt/coverage.py| 11 ++-
2 files
The TargetBase class contains a member variable named
branchInstructions. The name omits the fact that it is only meant to
contain conditional branch instructions. Its name has been changed to
conditionalBranchInstructions to avoid confusion.
---
tester/covoar/TargetBase.cc | 10 +++-
al Message-
From: Chris Johns
Sent: Wednesday, March 10, 2021 7:18 PM
To: Alex White ; devel@rtems.org
Subject: Re: [PATCH 1/2] covoar: Fix NOP execution marking
On 11/3/21 10:33 am, Alex White wrote:
> Some NOP instructions were not being marked as executed because they
> are located at the
Some NOP instructions were not being marked as executed because they
are located at the end of uncovered ranges. This has been fixed.
---
tester/covoar/CoverageMapBase.cc | 10 +++
tester/covoar/CoverageMapBase.h | 4 ++
tester/covoar/DesiredSymbols.cc | 38 --
v2:
- Fix leftover debugging code in Coverage::finalizeSymbol()
This patch set fixes a couple cases where NOP instructions were showing
up as unexecuted in coverage reports.
Alex White (2):
covoar: Fix NOP execution marking
covoar/Target_i386: Add NOP patterns
tester/covoar
A couple of NOP patterns found with the pc686 BSP were not detected.
This has been fixed.
---
tester/covoar/Target_i386.cc | 9 +
1 file changed, 9 insertions(+)
diff --git a/tester/covoar/Target_i386.cc b/tester/covoar/Target_i386.cc
index e0c9c0f..4567c1e 100644
---
The ".n" and ".w" variants of the THUMB branch instructions were not
included in the list of conditional branch instructions. They have
been added.
---
tester/covoar/Target_arm.cc | 34 ++
1 file changed, 34 insertions(+)
diff --git a/tester/covoar/Target_arm.cc
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.
---
This patch set contains a couple of fixes for issues that were found
while using covoar to analyze branch coverage in QEMU.
Alex White (2):
covoar/CoverageReaderQEMU: Fix infinite loop
covoar/TargetBase: Fix QEMU branch info
tester/covoar/CoverageReaderQEMU.cc | 11 +--
tester
The taken/not taken bit was being interpreted incorrectly. This led
to branches being marked "always taken" when they were never taken.
This has been fixed.
---
tester/covoar/TargetBase.cc | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/tester/covoar/TargetBase.cc
There was a potential that the branch info loop never terminated.
This has been fixed by adding a more reliable termination condition
and logging an error if it cannot find the branch target.
---
tester/covoar/CoverageReaderQEMU.cc | 11 +--
1 file changed, 9 insertions(+), 2 deletions(-)
This patch no longer applies assuming that the latest revision of my earlier
patch, "covoar: Handle periods in symbols from objdump", is accepted.
-Original Message-----
From: Alex White
Sent: Friday, March 12, 2021 11:14 AM
To: devel@rtems.org
Cc: Alex White
Subject: [PATCH 2
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
> I have lost of the context of why covoar would like to strip the suffixes and
> use only the base symbol name. Could you please explain why this is being
> done?
Sure. The symbol names in the DWARF info never contain these suffixes.
Covoar strips the suffixes while reading the objdump output
.
I found a good explanation of this directly in the GCC source here:
https://gcc.gnu.org/git/?p=gcc.git;a=blob;f=gcc/ipa-split.c;h=5e918ee3fbf6a86bd7fbfab6293f90c146b74977;hb=HEAD
Alex
From: Joel Sherrill
Sent: Tuesday, March 16, 2021 9:53 AM
To: Alex White
Cc: rtems-de...@rtems.org
Subject: Re
in Coverage::finalizeSymbol()
v2:
- Fix leftover debugging code in Coverage::finalizeSymbol()
This patch set fixes a couple cases where NOP instructions were showing
up as unexecuted in coverage reports.
Alex White (2):
covoar: Fix NOP execution marking
covoar/Target_i386: Add NOP patterns
A couple of NOP patterns found with the pc686 BSP were not detected.
This has been fixed.
---
tester/covoar/Target_i386.cc | 9 +
1 file changed, 9 insertions(+)
diff --git a/tester/covoar/Target_i386.cc b/tester/covoar/Target_i386.cc
index e0c9c0f..4567c1e 100644
---
Some NOP instructions were not being marked as executed because they
are located at the end of uncovered ranges. This has been fixed.
---
tester/covoar/CoverageMapBase.cc | 10 +++
tester/covoar/CoverageMapBase.h | 4 ++
tester/covoar/DesiredSymbols.cc | 38 +--
> -Original Message-
> From: Chris Johns
> Sent: Tuesday, March 16, 2021 7:18 PM
> To: j...@rtems.org; Alex White
> Cc: rtems-de...@rtems.org
> Subject: Re: [PATCH v3] covoar: Handle periods in symbols from objdump
>
> On 17/3/21 9:56 am, Joel Sherrill wrote:
---
tester/rt/coverage.py| 3 ++-
tester/rtems/testing/bsps/griscv-sis-cov.ini | 1 -
tester/rtems/testing/bsps/leon3-qemu-cov.ini | 1 -
tester/rtems/testing/bsps/leon3-sis-cov.ini | 1 -
4 files changed, 2 insertions(+), 4 deletions(-)
diff --git
The tester configurations had not been updated to match the paths and
conventions used by the new build system. These have been updated,
and a few more libraries have been enabled in symbol-sets.ini.
---
tester/rtems/testing/coverage/symbol-sets.ini | 91 ++-
1 file changed, 46
/rtems/testing/bsps/a53_lp64_qemu-cov.ini
@@ -0,0 +1,40 @@
+#
+# RTEMS Tools Project (http://www.rtems.org/)
+# Copyright 2021 Alex White(alex.wh...@oarcorp.com)
+# All rights reserved.
+#
+# This file is part of the RTEMS Tools package in 'rtems-tools'.
+#
+# Redistribution and use in source and binary
This patch set updates symbol-sets.ini to work with the paths used by
the new build system, removes the need for "target" in the BSP
configurations that include coverage, and adds a few new
coverage-enabled BSP configurations.
Alex White (3):
tester: Update to support new build syste
1 - 100 of 289 matches
Mail list logo