<div dir="auto">Also if there's any file in covoar directory of coverage-merge branch that's called symbol-set.c symbol_set_reader.h or any variation of that, that you don't already have pull all of them into your current branch.</div><br><div class="gmail_quote"><div dir="ltr">On Tue, 17 Apr 2018, 07:19 Cillian O'Donnell, <<a href="mailto:cpodonnell8@gmail.com">cpodonnell8@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="auto">Some things are definitely missing there. Git checkout main.c coverage-merge. If you have that branch lying around, that definitely has everything in it. I must of missed of some things updating to current master. Fingers crossed this solves our problems<div dir="auto"><br></div></div><br><div class="gmail_quote"><div dir="ltr">On Mon, 16 Apr 2018, 22:52 Vijay Kumar Banerjee, <<a href="mailto:vijaykumar9597@gmail.com" target="_blank" rel="noreferrer">vijaykumar9597@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="auto"><div><br><br><div class="gmail_quote"><div dir="ltr">On Tue, 17 Apr 2018, 03:19 Joel Sherrill, <<a href="mailto:joel@rtems.org" rel="noreferrer noreferrer" target="_blank">joel@rtems.org</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><br><div class="gmail_extra"><br><div class="gmail_quote">On Mon, Apr 16, 2018 at 4:47 PM, Vijay Kumar Banerjee <span dir="ltr"><<a href="mailto:vijaykumar9597@gmail.com" rel="noreferrer noreferrer noreferrer" target="_blank">vijaykumar9597@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><br><div class="gmail_extra"><div><div class="m_-4853997476376020076m_-710965887708498260m_-8375609387675333733h5"><br clear="all"><div><div class="m_-4853997476376020076m_-710965887708498260m_-8375609387675333733m_1290806999441222554gmail_signature"><div dir="ltr"><div><div dir="ltr">On 17 April 2018 at 01:43, Cillian O'Donnell <span dir="ltr"><<a href="mailto:cpodonnell8@gmail.com" rel="noreferrer noreferrer noreferrer" target="_blank">cpodonnell8@gmail.com</a>></span> wrote:<br></div></div></div></div></div></div></div><div class="gmail_quote"><div><div class="m_-4853997476376020076m_-710965887708498260m_-8375609387675333733h5"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><br><div class="gmail_extra"><br><div class="gmail_quote"><span class="m_-4853997476376020076m_-710965887708498260m_-8375609387675333733m_1290806999441222554gmail-">On 16 April 2018 at 17:46, Joel Sherrill <span dir="ltr"><<a href="mailto:joel@rtems.org" rel="noreferrer noreferrer noreferrer" target="_blank">joel@rtems.org</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><br><div class="gmail_extra"><br><div class="gmail_quote"><span class="m_-4853997476376020076m_-710965887708498260m_-8375609387675333733m_1290806999441222554gmail-m_-83190965577567442gmail-">On Mon, Apr 16, 2018 at 2:33 AM, Vijay Kumar Banerjee <span dir="ltr"><<a href="mailto:vijaykumar9597@gmail.com" rel="noreferrer noreferrer noreferrer" target="_blank">vijaykumar9597@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr">current status :<div>the coverage is running now with rtems-test and generating the report, however, the report doesn't show any data.</div></div></blockquote><div><br></div></span><div>I've been lurking as you have been making progress. Now you have crossed</div><div>into something you probably need some hints at. Some things to check:</div><div><br></div><div>+ Obviously, check output for signs that something didn't happen right.</div><div>Anything from a path wrong, etc. The configuration has to be right to</div><div>point to the source code, object code, executables, etc. </div><div><br></div><div>+ A lot of source code has moved around since last summer. Check</div><div>that it is looking in the right places inside RTEMS.</div><div><br></div><div>+ Does the mechanism to get debug information actually work? Cillian?</div></div></div></div></blockquote><div><br></div></span><div>The covoar debug option just disables the cleaning of the tempfiles to take a look, so it's not as powerful as it might seem :)... I always used gdb here so that's probably the way to go.<br></div><span class="m_-4853997476376020076m_-710965887708498260m_-8375609387675333733m_1290806999441222554gmail-"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div class="gmail_extra"><div class="gmail_quote"><div><br></div><div>+ There is a utility named trace-converter. Make sure your qemu traces<br></div><div>have information in them.</div><div><br></div><div>+ Cillian probably has guidance on running it just on one test (say ticker)</div><div>so you can see every step.</div><div><br></div><div>+ Check that the executables have symbolic information. "file" should</div><div>show if they are stripped or not.</div><div><br></div><div>I recall covoar has a verbose mode which should be of use.</div><div><br></div><div>Cillian .. do you have instructions on running covoar in gdb?</div></div></div></div></blockquote><div><br></div></span><div>Alright so run rtems-test with --no-clean option to leave the coverage files lying around<br><br>$HOME/development/rtems/test/test/rtems-tools/tester/rtems-test --rtems-tools=$HOME/development/rtems/5 --log=coverage-analysis.log --rtems-bsp=leon3_qemu --coverage --no-clean --rtems-builddir=$HOME/development/rtems/leon3 sparc-rtems5/c/leon3/testsuites/samples<br><br></div><div>Then run<br><br></div><div>gdb covoar<br><br></div><div>from gdb prompt <br><br>run -S /home/cpod/coverage_test/leon3/coverage/score.symcfg -O /home/cpod/coverage_test/leon3/test/score -fQEMU -Tsparc-rtems5 -E/home/cpod/development/rtems/test/test/vijay/rtems-tools/tester/rtems/testing/coverage/Explanations.txt -c.cov -eexe -pRTEMS-5 /home/cpod/development/rtems/leon3/sparc-rtems5/c/leon3/testsuites/samples/base_sp/base_sp.exe<br><br></div><div>The options there are ( if you're wondering )<br><br> -c COVERAGEFILE_EXTENSION EXECUTABLE1 ... EXECUTABLE2<br><br> -v - verbose output<br> -T TARGET - architecture target name<br> -f FORMAT - simulator format <br>(RTEMS, QEMU, TSIM or Skyeye)<br> -E EXPLANATIONS - file of explanations<br> -s SYMBOLS_FILE - symbols of interest<br> -S SYMBOL_SET_FILE - path to symbol_sets.cfg<br> -1 EXECUTABLE - executable to get symbols from<br> -e EXE_EXTENSION - suffix for executables<br> -c COVERAGEFILE_EXT - coverage file suffix<br> -g GCNOS_LIST - list of *.gcno files<br> -p PROJECT_NAME - name of the project<br> -O Output_Directory - output directory default=.<br> -d debug - disable cleaning of tempfiles.<br><br></div></div></div></div></blockquote><div><br></div></div></div><div>maybe the problem is here . I am getting an error for the -S . Here are the list of options that show up , capital S for symbol_set_file is not one of them .</div><div><br></div><div>Usage: /home/lunatic/development/rtems/5/bin/covoar [-v] -T TARGET -f FORMAT [-E EXPLANATIONS] -e EXE_EXTENSION -c COVERAGEFILE_EXTENSION EXECUTABLE1 ... EXECUTABLE2</div><div><br></div><div> -v - verbose at initialization</div><div> -T TARGET - target name</div><div> -f FORMAT - coverage file format (RTEMS, QEMU, TSIM or Skyeye)</div><div> -E EXPLANATIONS - name of file with explanations</div><div> -s SYMBOLS_FILE - name of file with symbols of interest</div><div> -1 EXECUTABLE - name of executable to get symbols from</div><div> -e EXE_EXTENSION - extension of the executables to analyze</div><div> -c COVERAGEFILE_EXTENSION - extension of the coverage files to analyze</div><div> -g GCNOS_LIST - name of file with list of *.gcno files</div><span><div> -p PROJECT_NAME - name of the project</div></span><div> -C ConfigurationFileName - name of configuration file</div><div> -O Output_Directory - name of output directory (default=.</div></div></div></div></blockquote><div><br></div><div>Is it processed by the getopts switch statement in main() but not listed in the usage? That is</div><div>an easy mistake to creep in.</div></div></div></div></blockquote></div></div><div dir="auto">It gives an "invalid option" error</div><div dir="auto"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div class="gmail_extra"><div class="gmail_quote"><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div class="gmail_extra"><div class="gmail_quote"><span><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div class="gmail_extra"><div class="gmail_quote"><div></div><div>Just trying it there, it runs into segmentation fault. So trying to access memory it shouldn't.<br><br>Starting program: /home/cpod/covoar -S /home/cpod/coverage_test/leon3/coverage/score.symcfg -O /home/cpod/coverage_test/leon3/test/score -fQEMU -Tsparc-rtems5 -E/home/cpod/development/rtems/test/test/vijay/rtems-tools/tester/rtems/testing/coverage/Explanations.txt -c.cov -eexe -pRTEMS-5 /home/cpod/development/rtems/leon3/sparc-rtems5/c/leon3/testsuites/samples/base_sp/base_sp.exe<br>Reading configuration symbol set file: /home/cpod/coverage_test/leon3/coverage/score.symcfg<br><br>Program received signal SIGSEGV, Segmentation fault.<br>0x00007ffff7b769bb in std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) ()<br> from /usr/lib/x86_64-linux-gnu/libstdc++.so.6<br><br></div><div>Ahhh feels good to have error messages back.<br><br></div><div>Oh also build covoar with no optimization and you'll have an easier time looking at stuff in gdb<br></div><div><br>cd rtems-tools/tester/covoar<br><br></div><div>vim wscript and change the '-O2' to '-O0' and then build again with waf and use that covoar to with gdb<br></div><div> <br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div class="gmail_extra"><div class="gmail_quote"><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div><span class="m_-4853997476376020076m_-710965887708498260m_-8375609387675333733m_1290806999441222554gmail-m_-83190965577567442gmail-m_-63266058933992612HOEnZb"><font color="#888888"><br clear="all"><div><div class="m_-4853997476376020076m_-710965887708498260m_-8375609387675333733m_1290806999441222554gmail-m_-83190965577567442gmail-m_-63266058933992612m_1506347161607737147gmail_signature"><div dir="ltr"><div><div dir="ltr">-- vijay</div></div></div></div></div>
</font></span></div></div>
</blockquote></div><br></div></div>
</blockquote></div><br></div></div>
</blockquote></span></div><br></div></div>
</blockquote></div><br></div></div>
</blockquote></div></div></div>
</blockquote></div></blockquote></div>