diff options
Diffstat (limited to 'include/llvm/DebugInfo/CodeView/ModuleDebugInlineeLinesFragment.h')
| -rw-r--r-- | include/llvm/DebugInfo/CodeView/ModuleDebugInlineeLinesFragment.h | 17 | 
1 files changed, 10 insertions, 7 deletions
diff --git a/include/llvm/DebugInfo/CodeView/ModuleDebugInlineeLinesFragment.h b/include/llvm/DebugInfo/CodeView/ModuleDebugInlineeLinesFragment.h index 177367c111c3..348497cbf7f2 100644 --- a/include/llvm/DebugInfo/CodeView/ModuleDebugInlineeLinesFragment.h +++ b/include/llvm/DebugInfo/CodeView/ModuleDebugInlineeLinesFragment.h @@ -20,6 +20,8 @@ namespace llvm {  namespace codeview {  class ModuleDebugInlineeLineFragmentRef; +class ModuleDebugFileChecksumFragment; +class StringTable;  enum class InlineeLinesSignature : uint32_t {    Normal,    // CV_INLINEE_SOURCE_LINE_SIGNATURE @@ -42,11 +44,10 @@ struct InlineeSourceLine {  }  template <> struct VarStreamArrayExtractor<codeview::InlineeSourceLine> { -  typedef codeview::ModuleDebugInlineeLineFragmentRef ContextType; +  typedef bool ContextType;    static Error extract(BinaryStreamRef Stream, uint32_t &Len, -                       codeview::InlineeSourceLine &Item, -                       ContextType *Fragment); +                       codeview::InlineeSourceLine &Item, bool HasExtraFiles);  };  namespace codeview { @@ -74,7 +75,8 @@ private:  class ModuleDebugInlineeLineFragment final : public ModuleDebugFragment {  public: -  explicit ModuleDebugInlineeLineFragment(bool HasExtraFiles); +  ModuleDebugInlineeLineFragment(ModuleDebugFileChecksumFragment &Checksums, +                                 bool HasExtraFiles);    static bool classof(const ModuleDebugFragment *S) {      return S->kind() == ModuleDebugFragmentKind::InlineeLines; @@ -83,11 +85,12 @@ public:    Error commit(BinaryStreamWriter &Writer) override;    uint32_t calculateSerializedLength() override; -  void addInlineSite(TypeIndex FuncId, uint32_t FileOffset, -                     uint32_t SourceLine); -  void addExtraFile(uint32_t FileOffset); +  void addInlineSite(TypeIndex FuncId, StringRef FileName, uint32_t SourceLine); +  void addExtraFile(StringRef FileName);  private: +  ModuleDebugFileChecksumFragment &Checksums; +    bool HasExtraFiles = false;    uint32_t ExtraFileCount = 0;  | 
