PR #5094 added support for non-first-segment-code in drcov by changing the drcov output format. It should have bumped its file format version; we do that here.
drcov2lcov prints a warning but continues if passed the prior version, as we expect it to work for cases that worked before: code in the first segment. An old build of drcov2lcov would have failed on the different module table format in any case; now it gives a better error message about a version change.
Reduces the warning level to 1 for the fatal warnings opening files to make them more visible.
Tested on a version 2 file from an 8.0 run on a +rx-first-segment application: $ clients/bin64/drcov2lcov -input ~/dr/releases/DynamoRIO-Linux-8.0.0-1/drcov*.log && grep -A 5 hello coverage.info [6/6] Generating embed/html/index.html [DRCOV2LCOV] WARNING(1): No output file name specified: using default coverage.info [DRCOV2LCOV] INFO(1): Reading input files... [DRCOV2LCOV] WARNING(1): File is in legacy version 2 format: only code in the first segment of each module will be reported [DRCOV2LCOV] INFO(1): Enumerating line info... [DRCOV2LCOV] WARNING(1): Failed to enumerate lines for [vdso] [DRCOV2LCOV] WARNING(1): Failed to enumerate lines for [vdso] [DRCOV2LCOV] INFO(1): Writing output file... SF:/home/derek/hello.c DA:4,1 DA:5,1 DA:6,1 DA:7,1 DA:8,1
Issue: #2243 (closed)