<div dir="auto"><div><br><br><div class="gmail_quote"><div dir="ltr">On Thu, 10 May 2018, 03:43 Chris Johns, <<a href="mailto:chrisj@rtems.org">chrisj@rtems.org</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">On 10/5/18 8:47 am, Cillian O'Donnell wrote:<br>
> Just running covoar there, we seem to be running into some problems at the<br>
> source line lookup stage<br>
<br>
Thank you for testing this. I assume it builds OK and we can run it?<br></blockquote></div></div><div dir="auto"><br></div><div dir="auto">Builds with a couple of warnings, other than that it's fine. Hopefully no issues on freebsd.</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">
<br>
> cpod@cpod ~/development/rtems/leon3 $ covoar -S<br>
> /home/cpod/development/rtems/test/rtems-tools/tester/rtems/testing/coverage/score-symbols.ini<br>
> -O /home/cpod/coverage_test/test/score<br>
> -E/home/cpod/development/rtems/test/rtems-tools/tester/rtems/testing/coverage/Explanations.txt<br>
> -p RTEMS-5 -v sparc-rtems5/c/leon3/testsuites/samples/hello/hello.exe<br>
> Processing multiple executable/coverage file pairs<br>
> Coverage Format : html<br>
> Target          : sparc-rtems5<br>
> <br>
> Coverage file sparc-rtems5/c/leon3/testsuites/samples/hello/hello.cov for<br>
> executable: sparc-rtems5/c/leon3/testsuites/samples/hello/hello.exe<br>
> Loading symbol sets:<br>
> /home/cpod/development/rtems/test/rtems-tools/tester/rtems/testing/coverage/score-symbols.ini<br>
>  Symbol set: score<br>
>  Loading library: sparc-rtems5/c/leon3/cpukit/score/libscore.a<br>
> cache:load-sym: object files: 192<br>
> cache:load-sym: symbols: 382<br>
> Analyzing 382 symbols<br>
> Extracting information from: sparc-rtems5/c/leon3/testsuites/samples/hello/hello.exe<br>
> Created unified coverage map for _RTEMS_Lock_allocator (0x0 - 0x13)<br>
> Created unified coverage map for _RTEMS_Unlock_allocator (0x0 - 0x13)<br>
> Created unified coverage map for _API_Mutex_Lock (0x0 - 0x2f)<br>
> Created unified coverage map for _API_Mutex_Unlock (0x0 - 0x2f)<br>
> Created unified coverage map for _Chain_Initialize (0x0 - 0x4f)<br>
> Created unified coverage map for _Freechain_Initialize (0x0 - 0x33)<br>
> Created unified coverage map for _Freechain_Get (0x0 - 0x77)<br>
> Created unified coverage map for _Freechain_Put (0x0 - 0x27)<br>
> Created unified coverage map for _Heap_Allocate_aligned_with_boundary (0x0 - 0x23f)<br>
> ................<br>
> ...............<br>
> ...............<br>
> Branch always taken found in_Workspace_Handler_initialization (0x4000ab8c -<br>
> 0x4000ab8f)<br>
> Branch never taken found in _Workspace_Handler_initialization (0x1073785764 -<br>
> 0x1073785767)<br>
> Branch never taken found in _Workspace_Handler_initialization (0x1073785776 -<br>
> 0x1073785779)<br>
> Calculate statistics<br>
> Looking up source lines for uncovered ranges and branches<br>
> Looking up source lines for uncovered ranges in CSWTCH.1<br>
> terminate called after throwing an instance of 'rld::error'<br>
> Aborted<br>
> <br>
> --------------------<br>
> GDB<br>
> --------------------<br>
> <br>
> (gdb) bt<br>
> #0  0x00007ffff74aa428 in __GI_raise (sig=sig@entry=6)<br>
>     at ../sysdeps/unix/sysv/linux/raise.c:54<br>
> #1  0x00007ffff74ac02a in __GI_abort () at abort.c:89<br>
> #2  0x00007ffff7ae484d in __gnu_cxx::__verbose_terminate_handler() ()<br>
>    from /usr/lib/x86_64-linux-gnu/libstdc++.so.6<br>
> #3  0x00007ffff7ae26b6 in ?? () from /usr/lib/x86_64-linux-gnu/libstdc++.so.6<br>
> #4  0x00007ffff7ae2701 in std::terminate() ()<br>
>    from /usr/lib/x86_64-linux-gnu/libstdc++.so.6<br>
> #5  0x00007ffff7ae2919 in __cxa_throw ()<br>
>    from /usr/lib/x86_64-linux-gnu/libstdc++.so.6<br>
> #6  0x000000000042ad4a in rld::dwarf::address::path[abi:cxx11]() const (<br>
>     this=this@entry=0x7fffffffcc10) at ../rtemstoolkit/rld-dwarf.cpp:129<br>
> #7  0x000000000042dfad in rld::dwarf::file::get_source (this=this@entry=0x6be568,<br>
>     addr=<optimized out>, source_file="unknown", source_line=@0x7fffffffccdc: -1)<br>
>     at ../rtemstoolkit/rld-dwarf.cpp:860<br>
> #8  0x000000000040d541 in Coverage::ExecutableInfo::getSourceAndLine (<br>
>     this=this@entry=0x6be3c0, address=<optimized out>, line="")<br>
>     at ../tester/covoar/ExecutableInfo.cc:134<br>
> #9  0x000000000040a115 in Coverage::DesiredSymbols::determineSourceLines (<br>
>     this=this@entry=0xafee70, theRanges=theRanges@entry=0xd626f0,<br>
>     theExecutable=0x6be3c0) at ../tester/covoar/DesiredSymbols.cc:411<br>
> #10 0x000000000040a24f in Coverage::DesiredSymbols::findSourceForUncovered (<br>
>     this=0xafee70) at ../tester/covoar/DesiredSymbols.cc:440<br>
> #11 0x0000000000406028 in main (argc=<optimized out>, argv=<optimized out>)<br>
>     at ../tester/covoar/covoar.cc:526<br>
<br>
This looks like an exception being thrown in a destructor path.<br>
<br>
> <br>
> I'll attach a trace file I'm using to debug, hopefully you can use this. It has<br>
> to go with hello.exe in the build directory<br>
<br>
Thank you for this. I will try and see what I find.<br>
<br>
Chris<br>
</blockquote></div></div></div>