diff options
Diffstat (limited to 'llvm/include/llvm/DebugInfo/CodeView/Line.h')
-rw-r--r-- | llvm/include/llvm/DebugInfo/CodeView/Line.h | 22 |
1 files changed, 20 insertions, 2 deletions
diff --git a/llvm/include/llvm/DebugInfo/CodeView/Line.h b/llvm/include/llvm/DebugInfo/CodeView/Line.h index a7cdbdaac32..b466ca6e223 100644 --- a/llvm/include/llvm/DebugInfo/CodeView/Line.h +++ b/llvm/include/llvm/DebugInfo/CodeView/Line.h @@ -10,11 +10,14 @@ #ifndef LLVM_DEBUGINFO_CODEVIEW_LINE_H #define LLVM_DEBUGINFO_CODEVIEW_LINE_H +#include "llvm/Support/Endian.h" #include <cinttypes> namespace llvm { namespace codeview { +using llvm::support::ulittle32_t; + class LineInfo { public: static const uint32_t AlwaysStepIntoLineNumber = 0xfeefee; @@ -118,7 +121,22 @@ public: bool isNeverStepInto() const { return LineInf.isNeverStepInto(); } }; -} -} + +enum class InlineeLinesSignature : uint32_t { + Normal, // CV_INLINEE_SOURCE_LINE_SIGNATURE + ExtraFiles // CV_INLINEE_SOURCE_LINE_SIGNATURE_EX +}; + +struct InlineeSourceLine { + TypeIndex Inlinee; // ID of the function that was inlined. + ulittle32_t FileID; // Offset into FileChecksums subsection. + ulittle32_t SourceLineNum; // First line of inlined code. + // If extra files present: + // ulittle32_t ExtraFileCount; + // ulittle32_t Files[]; +}; + +} // namespace codeview +} // namespace llvm #endif |