Lines Matching refs:coverage
11 LLVM has a simple code coverage instrumentation built in (SanitizerCoverage).
14 simple coverage reporting and visualization,
15 however if you need *just* coverage visualization you may want to use
21 With ``-fsanitize-coverage=trace-pc-guard`` the compiler will insert the following code
100 clang++ -g -fsanitize-coverage=trace-pc-guard trace-pc-guard-example.cc -c
127 With ``-fsanitize-coverage=inline-8bit-counters`` the compiler will insert
129 This is similar to ``-fsanitize-coverage=trace-pc-guard`` but instead of a
148 With ``-fsanitize-coverage=inline-bool-flag`` the compiler will insert
150 This is similar to ``-fsanitize-coverage=inline-8bit-counter`` but instead of
174 With ``-fsanitize-coverage=pc-table`` the compiler will create a table of
175 instrumented PCs. Requires either ``-fsanitize-coverage=inline-8bit-counters``,
176 or ``-fsanitize-coverage=inline-bool-flag``, or ``-fsanitize-coverage=trace-pc-guard``.
189 // of 8-bit counters (-fsanitize-coverage=inline-8bit-counters), or
190 // boolean flags (-fsanitize-coverage=inline=bool-flags), or trace_pc_guard
191 // callbacks (-fsanitize-coverage=trace-pc-guard).
200 With ``-fsanitize-coverage=trace-pc`` the compiler will insert
218 like this: ``-fsanitize-coverage=func,trace-pc-guard``.
222 Use ``no-prune`` (e.g. ``-fsanitize-coverage=bb,no-prune,trace-pc-guard``)
223 to disable pruning. This could be useful for better coverage visualization.
226 Edge coverage
254 The edge-level coverage simply splits all critical edges by introducing new
271 With ``-fsanitize-coverage=trace-cmp`` the compiler will insert extra instrumentation
273 Similarly, with ``-fsanitize-coverage=trace-div`` the compiler will instrument
275 and with ``-fsanitize-coverage=trace-gep`` --
278 Similarly, with ``-fsanitize-coverage=trace-loads`` and ``-fsanitize-coverage=trace-stores``
282 of ``-fsanitize-coverage={trace-pc,inline-8bit-counters,inline-bool}``
299 // These callbacks are emitted by -fsanitize-coverage=trace-cmp since 2017-08-11
338 With ``-fsanitize-coverage=control-flow`` the compiler will create a table to collect
389 Disabling instrumentation with ``__attribute__((no_sanitize("coverage")))``
392 It is possible to disable coverage instrumentation for select functions via the
393 function attribute ``__attribute__((no_sanitize("coverage")))``. Because this
402 With ``-fsanitize-coverage-allowlist=allowlist.txt``
403 and ``-fsanitize-coverage-ignorelist=blocklist.txt``,
453 default implementations of some of the coverage callbacks.
454 You may use this implementation to dump the coverage on disk at the process
471 % clang++ -g cov.cc -fsanitize=address -fsanitize-coverage=trace-pc-guard
472 % ASAN_OPTIONS=coverage=1 ./a.out; wc -c *.sancov
476 % ASAN_OPTIONS=coverage=1 ./a.out foo ; wc -c *.sancov
499 An simple ``sancov`` tool is provided to process coverage files.
511 -print - Print coverage addresses
528 coverage report. The missing information is contained
537 running ``tools/sancov/coverage-report-server.py`` script that will start
548 % ASAN_OPTIONS="coverage=1:coverage_dir=/tmp/cov" ./a.out foo