On Sat, Jun 9, 2018, 2:22 PM Vijay Kumar Banerjee <vijaykumar9...@gmail.com> wrote:
> On 9 June 2018 at 19:56, Joel Sherrill <j...@rtems.org> wrote: > >> >> >> On Sat, Jun 9, 2018, 6:01 AM Vijay Kumar Banerjee < >> vijaykumar9...@gmail.com> wrote: >> >>> Hello, >>> >>> I was going through the gcc manual for gcov >>> >>> https://gcc.gnu.org/onlinedocs/gcc/Gcov-and-Optimization.html#Gcov-and-Optimization >>> >>> It mentions that the flag -fprofile-arcs is necessary for generating the >>> .gcda files. >>> I have tried it with a small hello world program to see the reports, and >>> it seems >>> that for .gcda files this flag is necessary. >>> >>> when I include the flag `-fprofile-arcs` with `-ftest-coverage` and then >>> make >>> I'm getting the following error. >>> >>> ============================= >>> checking whether the C compiler works... no >>> configure: error: in >>> `/home/lunatic/development/rtems/kernel/leon3/sparc-rtems5/c/leon3': >>> configure: error: C compiler cannot create executables >>> See `config.log' for more details >>> gmake[2]: *** [Makefile:731: leon3] Error 1 >>> gmake[2]: Leaving directory >>> '/home/lunatic/development/rtems/kernel/leon3/sparc-rtems5/c' >>> gmake[1]: *** [Makefile:289: all-recursive] Error 1 >>> gmake[1]: Leaving directory >>> '/home/lunatic/development/rtems/kernel/leon3/sparc-rtems5/c' >>> gmake: *** [Makefile:414: all-recursive] Error 1 >>> >>> ============================= >>> >> >> It may be looking for a symbol provided by libgov.a. We don't have that >> based on how we do coverage. >> >> The normal approach is to add it to the RTEMS dummy crt0.c in newlib. >> > > er.... looks confusing, are there any instructions ? :) > What's the error first? What was in config.log in the directory with the failure? >>> >>> On 8 June 2018 at 01:13, Vijay Kumar Banerjee <vijaykumar9...@gmail.com> >>> wrote: >>> >>>> >>>> >>>> On Fri, 8 Jun 2018, 01:09 Joel Sherrill, <j...@rtems.org> wrote: >>>> >>>>> Bringing in Krzysztof. Hoping he can get us on the right track here. >>>>> >>>>> I don't think you can run GcovData.cc independent of a covoar run. >>>>> >>>> Understood. >>>> >>>>> If you can figure out how to write a unit test that would be helpful. >>>>> >>>> Will try to do that if possible. >>>> >>>>> >>>>> On Thu, Jun 7, 2018 at 2:29 PM, Vijay Kumar Banerjee < >>>>> vijaykumar9...@gmail.com> wrote: >>>>> >>>>>> Hello, >>>>>> >>>>>> I was looking into the code in GcovData.cc to see how it works >>>>>> and what it's doing, too me it looked like very messed up, I couldn't >>>>>> understand (yet) what it's trying to do. >>>>>> Is there some way I can manually run it for one file? >>>>>> Is there any place where I can read how it was intended to work? >>>>>> Or something like a flow diagram? >>>>>> >>>>>> >>>>>> -- vijay >>>>>> >>>>>> On 7 June 2018 at 02:56, Vijay Kumar Banerjee < >>>>>> vijaykumar9...@gmail.com> wrote: >>>>>> >>>>>>> >>>>>>> >>>>>>> On Thu, 7 Jun 2018, 02:39 Joel Sherrill, <j...@rtems.org> wrote: >>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> On Wed, Jun 6, 2018, 3:56 PM Vijay Kumar Banerjee < >>>>>>>> vijaykumar9...@gmail.com> wrote: >>>>>>>> >>>>>>>>> On 7 June 2018 at 01:48, Joel Sherrill <j...@rtems.org> wrote: >>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> On Wed, Jun 6, 2018, 2:07 PM Vijay Kumar Banerjee < >>>>>>>>>> vijaykumar9...@gmail.com> wrote: >>>>>>>>>> >>>>>>>>>>> On 6 June 2018 at 20:49, Joel Sherrill <j...@rtems.org> wrote: >>>>>>>>>>> >>>>>>>>>>>> I can't duplicate this. My configure command was: >>>>>>>>>>>> >>>>>>>>>>>> ../rtems/configure --target=sparc-rtems5 >>>>>>>>>>>> --enable-rtemsbsp=leon3 --prefix=/home/joel/rtems-work/tools/5 \ >>>>>>>>>>>> --disable-networking --enable-posix --disable-smp >>>>>>>>>>>> --disable-multiprocessing \ >>>>>>>>>>>> --enable-tests --enable-cxx --enable-maintainer-mode >>>>>>>>>>>> >>>>>>>>>>>> What was yours? >>>>>>>>>>>> >>>>>>>>>>>> I didn't have --enable-cxx and --enable-maintainer-more. >>>>>>>>>>> >>>>>>>>>>> I made some tries and somehow it's perfectly working now. >>>>>>>>>>> >>>>>>>>>>> I am trying to find out now how covoar generates the reports. >>>>>>>>>>> I made a file with a list of all gcno in score/ and run with -g >>>>>>>>>>> argument >>>>>>>>>>> now I'mg seeing the following error while running covoar >>>>>>>>>>> >>>>>>>>>>> ====================== >>>>>>>>>>> Generating Gcov reports... >>>>>>>>>>> Processing file: libscore_a-allocatormutex.gcno >>>>>>>>>>> Unable to open libscore_a-allocatormutex.gcno >>>>>>>>>>> Processing file: libscore_a-apimutexisowner.gcno >>>>>>>>>>> Unable to open libscore_a-apimutexisowner.gcno >>>>>>>>>>> Processing file: libscore_a-apimutexlock.gcno >>>>>>>>>>> Unable to open libscore_a-apimutexlock.gcno >>>>>>>>>>> Processing file: libscore_a-apimutexunlock.gcno >>>>>>>>>>> Unable to open libscore_a-apimutexunlock.gcno >>>>>>>>>>> Processing file: libscore_a-chain.gcno >>>>>>>>>>> Unable to open libscore_a-chain.gcno >>>>>>>>>>> Processing file: libscore_a-chainnodecount.gcno >>>>>>>>>>> . >>>>>>>>>>> . >>>>>>>>>>> . >>>>>>>>>>> ====================== >>>>>>>>>>> >>>>>>>>>> >>>>>>>>>> I suspect this is another instance of the path issues inside the >>>>>>>>>> build tree you and Cillian fixed earlier. >>>>>>>>>> >>>>>>>>>> correcting the path worked. >>>>>>>>> >>>>>>>> >>>>>>>> Submit a patch for this. It needs fixing to get 5onyour next issue. >>>>>>>> >>>>>>> It just needed the absolute path to be fed. >>>>>>> here's what I did. >>>>>>> I manually 'find' all the gcno files under score. >>>>>>> wrote it all in a file separated by newlines. >>>>>>> fed that file as an argument to covoar. >>>>>>> and that brought me here. >>>>>>> >>>>>>> So when we write script, these are the >>>>>>> things that will be done by the script. >>>>>>> >>>>>>> Once everything strats running manually, >>>>>>> we can proceed to write scripts. >>>>>>> >>>>>>>> >>>>>>>>> Now I'm getting this error. >>>>>>>>> >>>>>>>>> Generating Gcov reports... >>>>>>>>> Processing file: >>>>>>>>> sparc-rtems5/c/leon3/cpukit/score/src/libscore_a-kern_tc.gcno >>>>>>>>> ERROR: Unable to read string from gcov file >>>>>>>>> ERROR: Unable to read string length from gcov file >>>>>>>>> ERROR: Unable to read Function starting line number >>>>>>>>> Segmentation fault (core dumped) >>>>>>>>> >>>>>>>> >>>>>>>> Welcome to GSoC! You are now in new territory. :) >>>>>>>> >>>>>>> So here the real work begins! >>>>>>> >>>>>>>> >>>>>>>> Dig in and see what went wrong. Be aware.that GCC file formats may >>>>>>>> (or may not) be subject to.changing over time and this could just be >>>>>>>> bitrot. >>>>>>>> >>>>>>> I got started with it. >>>>>>> >>>>>>>> >>>>>>>> Gcov-dump is installed with the compiler. >>>>>>>> >>>>>>>> You should check it we have a .h file describing the file and it is >>>>>>>> out of date. >>>>>>>> >>>>>>> I'll look into it. >>>>>>> >>>>>>>> >>>>>>>> Also I think we now should bring the gsov maintainer in. >>>>>>>> >>>>>>> The covoar's gcov support needs to be reworked. >>>>>>> We can get the help of the expert here. >>>>>>> >>>>>>>> >>>>>>>> Good job! >>>>>>>> >>>>>>> Thanks. :) >>>>>>> >>>>>>>> >>>>>>>> >>>>>>>>> >>>>>>>>>>>> On Wed, Jun 6, 2018 at 9:40 AM, Vijay Kumar Banerjee < >>>>>>>>>>>> vijaykumar9...@gmail.com> wrote: >>>>>>>>>>>> >>>>>>>>>>>>> Hello, >>>>>>>>>>>>> >>>>>>>>>>>>> I have added the following changes in the >>>>>>>>>>>>> bsps/sparc/leon3/config/leon3.cfg >>>>>>>>>>>>> >>>>>>>>>>>>> ---------- >>>>>>>>>>>>> CFLAGS_OPTIMIZE_V = -Os -g >>>>>>>>>>>>> CFLAGS_OPTIMIZE_V += -ftest-coverage >>>>>>>>>>>>> ------- >>>>>>>>>>>>> >>>>>>>>>>>>> While trying to build with these flags, I got a bunch of >>>>>>>>>>>>> the following errors: >>>>>>>>>>>>> >>>>>>>>>>>>> ========== >>>>>>>>>>>>> {standard input}: Assembler messages: >>>>>>>>>>>>> {standard input}:6510: Error: can't resolve >>>>>>>>>>>>> `.data._SPARC_Counter' {.data._SPARC_Counter section} - >>>>>>>>>>>>> `.LLtext0' {.text >>>>>>>>>>>>> section} >>>>>>>>>>>>> {standard input}:6511: Error: can't resolve >>>>>>>>>>>>> `.data._SPARC_Counter' {.data._SPARC_Counter section} - >>>>>>>>>>>>> `.LLtext0' {.text >>>>>>>>>>>>> section} >>>>>>>>>>>>> >>>>>>>>>>>>> =================== >>>>>>>>>>>>> >>>>>>>>>>>>> after the `make install` I do get a lot of .gcno files, and no >>>>>>>>>>>>> executables. >>>>>>>>>>>>> >>>>>>>>>>>>> -- vijay >>>>>>>>>>>>> >>>>>>>>>>>>> _______________________________________________ >>>>>>>>>>>>> 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