diff options
Diffstat (limited to 'include/llvm/DebugInfo/CodeView/DebugSubsectionRecord.h')
| -rw-r--r-- | include/llvm/DebugInfo/CodeView/DebugSubsectionRecord.h | 12 | 
1 files changed, 12 insertions, 0 deletions
diff --git a/include/llvm/DebugInfo/CodeView/DebugSubsectionRecord.h b/include/llvm/DebugInfo/CodeView/DebugSubsectionRecord.h index 694731742064..ee17b47d8e63 100644 --- a/include/llvm/DebugInfo/CodeView/DebugSubsectionRecord.h +++ b/include/llvm/DebugInfo/CodeView/DebugSubsectionRecord.h @@ -51,11 +51,23 @@ class DebugSubsectionRecordBuilder {  public:    DebugSubsectionRecordBuilder(std::shared_ptr<DebugSubsection> Subsection,                                 CodeViewContainer Container); + +  /// Use this to copy existing subsections directly from source to destination. +  /// For example, line table subsections in an object file only need to be +  /// relocated before being copied into the PDB. +  DebugSubsectionRecordBuilder(const DebugSubsectionRecord &Contents, +                               CodeViewContainer Container); +    uint32_t calculateSerializedLength();    Error commit(BinaryStreamWriter &Writer) const;  private: +  /// The subsection to build. Will be null if Contents is non-empty.    std::shared_ptr<DebugSubsection> Subsection; + +  /// The bytes of the subsection. Only non-empty if Subsection is null. +  DebugSubsectionRecord Contents; +    CodeViewContainer Container;  };  | 
