diff options
Diffstat (limited to 'llvm/lib/ProfileData/CoverageMappingWriter.cpp')
-rw-r--r-- | llvm/lib/ProfileData/CoverageMappingWriter.cpp | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/llvm/lib/ProfileData/CoverageMappingWriter.cpp b/llvm/lib/ProfileData/CoverageMappingWriter.cpp index f9bbe61fb48..f5e6ab46380 100644 --- a/llvm/lib/ProfileData/CoverageMappingWriter.cpp +++ b/llvm/lib/ProfileData/CoverageMappingWriter.cpp @@ -181,7 +181,11 @@ void CoverageMappingWriter::write(raw_ostream &OS) { } assert(I.LineStart >= PrevLineStart); encodeULEB128(I.LineStart - PrevLineStart, OS); - encodeULEB128(I.ColumnStart, OS); + uint64_t CodeBeforeColumnStart = + uint64_t(I.HasCodeBefore) | + (uint64_t(I.ColumnStart) + << CounterMappingRegion::EncodingHasCodeBeforeBits); + encodeULEB128(CodeBeforeColumnStart, OS); assert(I.LineEnd >= I.LineStart); encodeULEB128(I.LineEnd - I.LineStart, OS); encodeULEB128(I.ColumnEnd, OS); |