Line data Source code
1 : //===-- Line.cpp ----------------------------------------------------------===//
2 : //
3 : // The LLVM Compiler Infrastructure
4 : //
5 : // This file is distributed under the University of Illinois Open Source
6 : // License. See LICENSE.TXT for details.
7 : //
8 : //===----------------------------------------------------------------------===//
9 :
10 : #include "llvm/DebugInfo/CodeView/Line.h"
11 :
12 : using namespace llvm;
13 : using namespace codeview;
14 :
15 976 : LineInfo::LineInfo(uint32_t StartLine, uint32_t EndLine, bool IsStatement) {
16 976 : LineData = StartLine & StartLineMask;
17 976 : uint32_t LineDelta = EndLine - StartLine;
18 976 : LineData |= (LineDelta << EndLineDeltaShift) & EndLineDeltaMask;
19 976 : if (IsStatement) {
20 971 : LineData |= StatementFlag;
21 : }
22 976 : }
|