Export Segment.IsGapRegion to JSON

Summary:
So that external tools can make use of that information and not display such lines as uncovered.

Fixes https://bugs.llvm.org/show_bug.cgi?id=45300

Reviewers: vsk

Reviewed By: vsk

Differential Revision: https://reviews.llvm.org/D76763
This commit is contained in:
Dennis Felsing 2020-03-27 17:43:25 +01:00 committed by Aaron Puchert
parent 9dcb20a7d0
commit aa0be69e74
2 changed files with 7 additions and 6 deletions

View File

@ -4,8 +4,8 @@ CHECK-SAME: "files":[
CHECK-SAME: {"expansions":[],
CHECK-SAME: "filename":"/tmp/binary-formats.c",
CHECK-SAME: "segments":
CHECK-SAME: 4,40,100,true,true
CHECK-SAME: 4,42,0,false,false
CHECK-SAME: 4,40,100,true,true,false
CHECK-SAME: 4,42,0,false,false,false
CHECK-SAME: "summary":{"functions":{"count":1,"covered":1,"percent":100},
CHECK-SAME: "instantiations":{"count":1,"covered":1,"percent":100},
CHECK-SAME: "lines":{"count":1,"covered":1,"percent":100},
@ -24,4 +24,4 @@ CHECK-SAME: "lines":{"count":1,"covered":1,"percent":100},
CHECK-SAME: "regions":{"count":1,"covered":1,"notcovered":0,"percent":100}}}
CHECK-SAME: ],
CHECK-SAME: "type":"llvm.coverage.json.export"
CHECK-SAME: "version":"2.0.0"
CHECK-SAME: "version":"2.0.1"

View File

@ -53,7 +53,7 @@
#include <utility>
/// The semantic version combined as a string.
#define LLVM_COVERAGE_EXPORT_JSON_STR "2.0.0"
#define LLVM_COVERAGE_EXPORT_JSON_STR "2.0.1"
/// Unique type identifier for JSON coverage export.
#define LLVM_COVERAGE_EXPORT_JSON_TYPE_STR "llvm.coverage.json.export"
@ -72,8 +72,9 @@ int64_t clamp_uint64_to_int64(uint64_t u) {
}
json::Array renderSegment(const coverage::CoverageSegment &Segment) {
return json::Array({Segment.Line, Segment.Col, clamp_uint64_to_int64(Segment.Count),
Segment.HasCount, Segment.IsRegionEntry});
return json::Array({Segment.Line, Segment.Col,
clamp_uint64_to_int64(Segment.Count), Segment.HasCount,
Segment.IsRegionEntry, Segment.IsGapRegion});
}
json::Array renderRegion(const coverage::CountedRegion &Region) {