You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
For example RISCVInstructionSelector.cpp (possibly since #110782):
NumRegions 892,077
NumFiles 387,470 (Expansions)
It takes bunch of minutes for me.
llvm-cov is not required for reproduction. Just add -Xclang -dump-coverage-mapping onto -profile-instr-generate -fcoverage-mapping. The dump calls CoverageMappingReader for encoded covmap.
The text was updated successfully, but these errors were encountered:
This improves `-dump-coverage-mapping` (939,498 lines) for
`RISCVInstructionSelector.cpp` from 30m to 1m18s and also improves
`llvm-cov` for `check-llvm` from 33m to 24s.
The current implementation behaved O(N^2) order with hundreds
thousands of Expansions.
This assumes:
- Records are partitioned by FileID.
- ExpandedFileID doesn't point FileID==0, since it is the root.
- The Count in Expansion is propagated from 1st Record in
ExpandedFileID.
Therefore another fact below can be assumed.
- Propagation chain consists of Expansions at each 1st Record.
This scans the Record at most a few times. O(N) is expected.
Fixes#113173
For example
RISCVInstructionSelector.cpp
(possibly since #110782):It takes bunch of minutes for me.
llvm-cov
is not required for reproduction. Just add-Xclang -dump-coverage-mapping
onto-profile-instr-generate -fcoverage-mapping
. The dump calls CoverageMappingReader for encoded covmap.The text was updated successfully, but these errors were encountered: