RTEMS coverage

Joel Sherrill joel.sherrill at OARcorp.com
Wed Mar 9 16:14:09 UTC 2011


As Aitor has mentioned, he got gcov to work with RTEMS.
But that is not how the coverage results published
at http://www.rtems.org/ftp/pub/rtems/people/joel/coverage
are generated.

We use tools in the rtems-testing CVS module in conjunction
with simulators which produce either instruction traces or
bitmap coverage information.  With this input, the tools
can report which instructions are not executed and, if the
simulator information gathered allows it, branches which
were only taken or not taken.  There is information now
coverage available on these BSPs.

     * arm/edb7312
     * arm/gumstix
     * arm/smdk2410
     * i386/pc386
     * lm32/lm32_evr
     * m68k/uC5282
     * powerpc/qemuppc
     * sparc/erc32
     * sparc/leon2
     * sparc/leon3

Releases 4.10.0, 4.9.4, and 4.9.5 have coverage reports
for various BSPs as part of the release package.

has a summary of the coverage state of the various branches when
that presentation was made.

I am pretty sure I have subsequently gathered data back as far
as 4.5.  The tools in rtems-testing can be used to do this BUT
we have only used tsim with sparc BSPs on older versions.

Setting up the old versions on modern OSes can be tricky.
You will have to look in the config.log and see what it is
specifically not finding.  Sometimes you have to manually
install compatibility or old RPMs.

I would be happy to do this as a consulting service for
a specific set of methods.  But I suspect based upon
the domain that you are a student.  Right?


On 03/08/2011 02:40 AM, Domenico Di Leo wrote:
> I'm interested in analyzing the coverage of RTEMS code, some piece of
> the kernel and some managers.
> I would like to know if there is any (easy) way to do it.
> As far as I know, it is not possible to use GCOV (because there is no
> porting). The first alternative that I found
> is covmerge
>    http://bharath-rtems.blogspot.com/2010/05/getting-started-with-coverage-on-rtems.html
> I've tried to use it on RTEMS 4.6 (I have to analyze the coverage over
> the last 4 versions) and
> after running the configure command,  I get the error message "sure to
> have zlib and headers installed"
>    zlib-1.2.5-2.fc14.686 is installed on my fedora 14. Maybe configure is
> looking for an older version.
> Since  I do not want to change the configuration of my Fedora, is there
> any workaround for the configure file?
> Is there another way to know the coverage of managers and internal piece
> of kernel in RTEMS.
> Any help is appreciated.
> Thank you in advance.

Joel Sherrill, Ph.D.             Director of Research&  Development
joel.sherrill at OARcorp.com        On-Line Applications Research
Ask me about RTEMS: a free RTOS  Huntsville AL 35805
    Support Available             (256) 722-9985

More information about the users mailing list