LLVM  14.0.0git
Line.cpp
Go to the documentation of this file.
1 //===-- Line.cpp ----------------------------------------------------------===//
2 //
3 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4 // See https://llvm.org/LICENSE.txt for license information.
5 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6 //
7 //===----------------------------------------------------------------------===//
8 
10 
11 using namespace llvm;
12 using namespace codeview;
13 
14 LineInfo::LineInfo(uint32_t StartLine, uint32_t EndLine, bool IsStatement) {
15  LineData = StartLine & StartLineMask;
16  uint32_t LineDelta = EndLine - StartLine;
17  LineData |= (LineDelta << EndLineDeltaShift) & EndLineDeltaMask;
18  if (IsStatement) {
19  LineData |= StatementFlag;
20  }
21 }
llvm
---------------------— PointerInfo ------------------------------------—
Definition: AllocatorList.h:23
llvm::codeview::LineInfo::LineInfo
LineInfo(uint32_t StartLine, uint32_t EndLine, bool IsStatement)
Definition: Line.cpp:14
llvm::codeview::LineInfo::StatementFlag
@ StatementFlag
Definition: Line.h:33
Line.h
llvm::codeview::LineInfo::EndLineDeltaShift
@ EndLineDeltaShift
Definition: Line.h:28
llvm::codeview::LineInfo::EndLineDeltaMask
@ EndLineDeltaMask
Definition: Line.h:32
uint32_t
llvm::codeview::LineInfo::StartLineMask
@ StartLineMask
Definition: Line.h:31