Diese page (von Arnim Läuger in 2005) erklärt, dass eine Werkzeugkette {GHDL + gcov} VHDL-Code abdecken kann.GHDL + Code-Abdeckung mit gcov (Ubuntu 16.04 LTS)
Frage: Funktioniert es noch heute mit den neuesten Versionen von GCC, GCOV und GHDL?
Der folgende Befehl fehlschlägt
$ ghdl -a -Wc,-ftest-coverage -Wc,-fprofile-arcs tb_example.vhd
ghdl: unknown option '-Wc,-ftest-coverage' for command '-a'
Mein Setup wie folgt lautet:
$ gcc -v
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/usr/gnat/bin/../libexec/gcc/x86_64-pc-linux-gnu/4.9.4/lto-wrapper
Target: x86_64-pc-linux-gnu
Configured with: ../src/configure --enable-languages=ada,c,c++ --enable-dual-exceptions --enable-_cxa_atexit --enable-threads=posix --with-bugurl=URL:mailto:[email protected] --disable-nls --without-libiconv-prefix --disable-libstdcxx-pch --disable-libada --enable-checking=release --disable-multilib --with-mpfr=/boron.a/gnatmail/sandbox/gpl-2016/x86_64-linux/mpfr_stable/install --with-gmp=/boron.a/gnatmail/sandbox/gpl-2016/x86_64-linux/gmp_stable/install --with-mpc=/boron.a/gnatmail/sandbox/gpl-2016/x86_64-linux/mpc_stable/install --with-build-time-tools=/boron.a/gnatmail/sandbox/gpl-2016/x86_64-linux/gcc/build/buildtools/bin --prefix=/boron.a/gnatmail/sandbox/gpl-2016/x86_64-linux/gcc/pkg --build=x86_64-pc-linux-gnu
Thread model: posix
gcc version 4.9.4 20160426 (for GNAT GPL 2016 20160515) (GCC)
$ gcov -v
gcov (GCC) 4.9.4 20160426 (for GNAT GPL 2016 20160515)
Copyright (C) 2015 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.
There is NO warranty; not even for MERCHANTABILITY or
FITNESS FOR A PARTICULAR PURPOSE.
$ ghdl -v
GHDL 0.34dev (20151126) [Dunoon edition]
Compiled with GNAT Version: GPL 2016 (20160515-49)
mcode code generator
Written by Tristan Gingold.
Copyright (C) 2003 - 2015 Tristan Gingold.
GHDL is free software, covered by the GNU General Public License. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
$ cat /proc/version
Linux version 4.4.0-34-generic ([email protected]) (gcc version 5.3.1 20160413 (Ubuntu 5.3.1-14ubuntu2.1)) #53-Ubuntu SMP Wed Jul 27 16:06:39 UTC 2016
I GHDL mit dem Gebäude mit MCODE Backend mitinstalliert. Könnte es die Wurzel des Bösen sein?
Vielen Dank für Ihre Hilfe!
Danke für Ihre detaillierte Antwort. Sehr hilfreich. Ich werde es versuchen und dann werde ich hier ein Feedback geben. –
Ich habe mit GCC als Backend umgebaut und es funktioniert jetzt großartig. Vielen Dank. Das Sahnehäubchen ist, dass VUnit die Coverage-Ergebnisse direkt in das XML-Format mit einbezieht. Ist es möglich, Coverage in VUnit XML aufzunehmen? (Für jetzt habe ich die .gcda +.gcno erzeugt durch den VUnit-Lauf, aber ich muss am Ende gcov bymyself ausführen und die Ergebnisse sind nicht in der xml) –
Die experimentelle VUnit-Unterstützung für Coverage ist nur für ModelSim, obwohl Arbeit initiiert wurde, um auch andere Simulatoren zu unterstützen. – lasplund