Outils pour utilisateurs

Outils du site


prog:llvm-cov

Outil de couverture de code.

Compilation

Options à ajouter à la compilation : -O0 -fprofile-instr-generate -fcoverage-mapping -mllvm -runtime-counter-relocation

Options à ajouter au lieur : -fprofile-instr-generate -fcoverage-mapping

Puis exécuter le ou les programmes à tester. Attention, pas d'exécution en parallèle.

Génération du rapport

shopt -s globstar dotglob
llvm-profdata-11 merge -output=code.profdata **/*.profraw
mkdir build/coverage
llvm-cov-11 show -use-color --format html -instr-profile=code.profdata binary_a -object binary_b -output-dir=build/coverage
find build/coverage -name "*.html" -exec tidy -i -m --doctype html5 --drop-empty-elements no {} \;
find build/coverage -name "*.html" -exec sed -i -r "s#Created: .*-.*-.* .*:.*h4#</h4#g" {} \;

On commence par fusionner toutes les traces avec llvm-profdata puis on génère le rapport au format HTML.

En option, on indente et on supprime la date pour qu'un diff simple puisse se faire.

prog/llvm-cov.txt · Dernière modification : 2023/05/10 10:13 de root