about summary refs log tree commit diff
path: root/tests/run-make/coverage-llvmir
AgeCommit message (Collapse)AuthorLines
2023-10-22coverage: Emit the filenames section before encoding per-function mappingsZalathar-3/+3
Most coverage metadata is encoded into two sections in the final executable. The `__llvm_covmap` section mostly just contains a list of filenames, while the `__llvm_covfun` section contains encoded coverage maps for each instrumented function. The catch is that each per-function record also needs to contain a hash of the filenames list that it refers to. Historically this was handled by assembling most of the per-function data into a temporary list, then assembling the filenames buffer, then using the filenames hash to emit the per-function data, and then finally emitting the filenames table itself. However, now that we build the filenames table up-front (via a separate traversal of the per-function data), we can hash and emit that part first, and then emit each of the per-function records immediately after building. This removes the awkwardness of having to temporarily store nearly-complete per-function records.
2023-07-27CHECK only for opaque ptrJosh Stone-2/+2
2023-06-28Remove the old `coverage-reports` and `coverage` directoriesZalathar-1/+1
2023-05-12Usage of atomic counters for llvm code coverageEvgeniy A. Dushistov-1/+1
2023-01-11Move /src/test to /testsAlbert Larsan-0/+152