[llvm] r296413 - [DebugInfo] Fix some Clang-tidy modernize and Include What You Use warnings; other minor fixes (NFC).

David Blaikie via llvm-commits llvm-commits at lists.llvm.org
Fri Apr 7 11:30:47 PDT 2017


On Fri, Apr 7, 2017 at 11:18 AM Mehdi Amini <mehdi.amini at apple.com> wrote:

> On Mar 6, 2017, at 2:36 PM, David Blaikie via llvm-commits <
> llvm-commits at lists.llvm.org> wrote:
>
> In the past the LLVM Project's generally avoided mass cleanup (even
> whitespace - which is a bit easier to workaround) due to the issues it has
> with version history and churn.
>
>
> I don’t agree with this statement: I don’t believe we avoided *cleanup*
> but instead we avoided *mass formatting* changes.
>

What's your take on the motivation for that avoidance? For me it seemed
like the avoidance was that the benefit wasn't worth the churn/blame/etc.

To me that motivation potentially applies to more than just whitespace &
some of these changes seem like they maybe fall under a similar
categorization.


>
> I believe I've mentioned/suggested this in the past - but this sort of
> cleanup is probably worth an llvm-dev discussion to figure out what the
> right path is for it in general. (in that conversation I'd point out that
> without tool integration to /maintain/ these invariants/stylistic rules,
> it's off less/little value to do the cleanup as it'll regress relatively
> quickly)
>
> Please start an llvm-dev thread and get some kind of closure on the best
> strategy before continuing with these sort of changes.
>
>
> We’ve always welcome any kind of refactoring and cleanup in the past, I
> don’t see why you would want to guard it on having the tools / bot
> available before (or anything else FWIW).
>
> Just `git log` and grep for NFC to get tons of such examples.
>

NFC changes are often refactoring to enabled further work - I don't think
they're exactly comparable to the patches under discussion here.

(some of the more similar examples include applying clang-format to a whole
file that's about to be significantly edited by the same author anyway - so
as to avoid weird half-formatted code)


>
>> Mehdi
>
>
>
>
> On Mon, Feb 27, 2017 at 3:55 PM Eugene Zelenko via llvm-commits <
> llvm-commits at lists.llvm.org> wrote:
>
> Author: eugenezelenko
> Date: Mon Feb 27 17:43:14 2017
> New Revision: 296413
>
> URL: http://llvm.org/viewvc/llvm-project?rev=296413&view=rev
> Log:
> [DebugInfo] Fix some Clang-tidy modernize and Include What You Use
> warnings; other minor fixes (NFC).
>
> Modified:
>     llvm/trunk/include/llvm/DebugInfo/DIContext.h
>     llvm/trunk/include/llvm/DebugInfo/DWARF/DWARFAbbreviationDeclaration.h
>     llvm/trunk/include/llvm/DebugInfo/DWARF/DWARFAcceleratorTable.h
>     llvm/trunk/include/llvm/DebugInfo/DWARF/DWARFAttribute.h
>     llvm/trunk/include/llvm/DebugInfo/DWARF/DWARFCompileUnit.h
>     llvm/trunk/include/llvm/DebugInfo/DWARF/DWARFDebugAbbrev.h
>     llvm/trunk/include/llvm/DebugInfo/DWARF/DWARFDebugArangeSet.h
>     llvm/trunk/include/llvm/DebugInfo/DWARF/DWARFDebugAranges.h
>     llvm/trunk/include/llvm/DebugInfo/DWARF/DWARFDebugInfoEntry.h
>     llvm/trunk/include/llvm/DebugInfo/DWARF/DWARFDebugLine.h
>     llvm/trunk/include/llvm/DebugInfo/DWARF/DWARFDie.h
>     llvm/trunk/include/llvm/DebugInfo/DWARF/DWARFFormValue.h
>     llvm/trunk/lib/DebugInfo/DWARF/DWARFAbbreviationDeclaration.cpp
>     llvm/trunk/lib/DebugInfo/DWARF/DWARFAcceleratorTable.cpp
>     llvm/trunk/lib/DebugInfo/DWARF/DWARFDebugAbbrev.cpp
>     llvm/trunk/lib/DebugInfo/DWARF/DWARFDebugArangeSet.cpp
>     llvm/trunk/lib/DebugInfo/DWARF/DWARFDebugAranges.cpp
>     llvm/trunk/lib/DebugInfo/DWARF/DWARFDebugInfoEntry.cpp
>     llvm/trunk/lib/DebugInfo/DWARF/DWARFDebugLine.cpp
>     llvm/trunk/lib/DebugInfo/DWARF/DWARFDie.cpp
>     llvm/trunk/lib/DebugInfo/DWARF/DWARFFormValue.cpp
>
> Modified: llvm/trunk/include/llvm/DebugInfo/DIContext.h
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/DebugInfo/DIContext.h?rev=296413&r1=296412&r2=296413&view=diff
>
> ==============================================================================
> --- llvm/trunk/include/llvm/DebugInfo/DIContext.h (original)
> +++ llvm/trunk/include/llvm/DebugInfo/DIContext.h Mon Feb 27 17:43:14 2017
> @@ -1,4 +1,4 @@
> -//===-- DIContext.h ---------------------------------------------*- C++
> -*-===//
> +//===- DIContext.h ----------------------------------------------*- C++
> -*-===//
>  //
>  //                     The LLVM Compiler Infrastructure
>  //
> @@ -32,16 +32,14 @@ class raw_ostream;
>  struct DILineInfo {
>    std::string FileName;
>    std::string FunctionName;
> -  uint32_t Line;
> -  uint32_t Column;
> -  uint32_t StartLine;
> +  uint32_t Line = 0;
> +  uint32_t Column = 0;
> +  uint32_t StartLine = 0;
>
>    // DWARF-specific.
> -  uint32_t Discriminator;
> +  uint32_t Discriminator = 0;
>
> -  DILineInfo()
> -      : FileName("<invalid>"), FunctionName("<invalid>"), Line(0),
> Column(0),
> -        StartLine(0), Discriminator(0) {}
> +  DILineInfo() : FileName("<invalid>"), FunctionName("<invalid>") {}
>
>    bool operator==(const DILineInfo &RHS) const {
>      return Line == RHS.Line && Column == RHS.Column &&
> @@ -90,10 +88,10 @@ public:
>  /// DIGlobal - container for description of a global variable.
>  struct DIGlobal {
>    std::string Name;
> -  uint64_t Start;
> -  uint64_t Size;
> +  uint64_t Start = 0;
> +  uint64_t Size = 0;
>
> -  DIGlobal() : Name("<invalid>"), Start(0), Size(0) {}
> +  DIGlobal() : Name("<invalid>") {}
>  };
>
>  /// A DINameKind is passed to name search methods to specify a
> @@ -179,8 +177,8 @@ private:
>  /// on the fly.
>  class LoadedObjectInfo {
>  protected:
> -  LoadedObjectInfo(const LoadedObjectInfo &) = default;
>    LoadedObjectInfo() = default;
> +  LoadedObjectInfo(const LoadedObjectInfo &) = default;
>
>  public:
>    virtual ~LoadedObjectInfo() = default;
>
> Modified:
> llvm/trunk/include/llvm/DebugInfo/DWARF/DWARFAbbreviationDeclaration.h
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/DebugInfo/DWARF/DWARFAbbreviationDeclaration.h?rev=296413&r1=296412&r2=296413&view=diff
>
> ==============================================================================
> --- llvm/trunk/include/llvm/DebugInfo/DWARF/DWARFAbbreviationDeclaration.h
> (original)
> +++ llvm/trunk/include/llvm/DebugInfo/DWARF/DWARFAbbreviationDeclaration.h
> Mon Feb 27 17:43:14 2017
> @@ -1,4 +1,4 @@
> -//===-- DWARFAbbreviationDeclaration.h --------------------------*- C++
> -*-===//
> +//===- DWARFAbbreviationDeclaration.h ---------------------------*- C++
> -*-===//
>  //
>  //                     The LLVM Compiler Infrastructure
>  //
> @@ -7,17 +7,22 @@
>  //
>
>  //===----------------------------------------------------------------------===//
>
> -#ifndef LLVM_LIB_DEBUGINFO_DWARFABBREVIATIONDECLARATION_H
> -#define LLVM_LIB_DEBUGINFO_DWARFABBREVIATIONDECLARATION_H
> +#ifndef LLVM_DEBUGINFO_DWARFABBREVIATIONDECLARATION_H
> +#define LLVM_DEBUGINFO_DWARFABBREVIATIONDECLARATION_H
>
> +#include "llvm/ADT/iterator_range.h"
>  #include "llvm/ADT/Optional.h"
>  #include "llvm/ADT/SmallVector.h"
>  #include "llvm/Support/DataExtractor.h"
>  #include "llvm/Support/Dwarf.h"
> +#include <cassert>
> +#include <cstddef>
> +#include <cstdint>
> +
>  namespace llvm {
>
> -class DWARFUnit;
>  class DWARFFormValue;
> +class DWARFUnit;
>  class raw_ostream;
>
>  class DWARFAbbreviationDeclaration {
> @@ -25,6 +30,7 @@ public:
>    struct AttributeSpec {
>      AttributeSpec(dwarf::Attribute A, dwarf::Form F, Optional<int64_t> V)
>          : Attr(A), Form(F), ByteSizeOrValue(V) {}
> +
>      dwarf::Attribute Attr;
>      dwarf::Form Form;
>      /// The following field is used for ByteSize for non-implicit_const
> @@ -41,9 +47,11 @@ public:
>      /// * Form == DW_FORM_implicit_const:
>      ///     ByteSizeOrValue contains value for the implicit_const
> attribute.
>      Optional<int64_t> ByteSizeOrValue;
> +
>      bool isImplicitConst() const {
>        return Form == dwarf::DW_FORM_implicit_const;
>      }
> +
>      /// Get the fixed byte size of this Form if possible. This function
> might
>      /// use the DWARFUnit to calculate the size of the Form, like for
>      /// DW_AT_address and DW_AT_ref_addr, so this isn't just an accessor
> for
> @@ -118,16 +126,16 @@ private:
>    /// abbreviation declaration.
>    struct FixedSizeInfo {
>      /// The fixed byte size for fixed size forms.
> -    uint16_t NumBytes;
> +    uint16_t NumBytes = 0;
>      /// Number of DW_FORM_address forms in this abbrevation declaration.
> -    uint8_t NumAddrs;
> +    uint8_t NumAddrs = 0;
>      /// Number of DW_FORM_ref_addr forms in this abbrevation declaration.
> -    uint8_t NumRefAddrs;
> +    uint8_t NumRefAddrs = 0;
>      /// Number of 4 byte in DWARF32 and 8 byte in DWARF64 forms.
> -    uint8_t NumDwarfOffsets;
> -    /// Constructor
> -    FixedSizeInfo()
> -        : NumBytes(0), NumAddrs(0), NumRefAddrs(0), NumDwarfOffsets(0) {}
> +    uint8_t NumDwarfOffsets = 0;
> +
> +    FixedSizeInfo() = default;
> +
>      /// Calculate the fixed size in bytes given a DWARFUnit.
>      ///
>      /// \param U the DWARFUnit to use when determing the byte size.
> @@ -147,6 +155,6 @@ private:
>    Optional<FixedSizeInfo> FixedAttributeSize;
>  };
>
> -}
> +} // end namespace llvm
>
> -#endif
> +#endif // LLVM_DEBUGINFO_DWARFABBREVIATIONDECLARATION_H
>
> Modified: llvm/trunk/include/llvm/DebugInfo/DWARF/DWARFAcceleratorTable.h
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/DebugInfo/DWARF/DWARFAcceleratorTable.h?rev=296413&r1=296412&r2=296413&view=diff
>
> ==============================================================================
> --- llvm/trunk/include/llvm/DebugInfo/DWARF/DWARFAcceleratorTable.h
> (original)
> +++ llvm/trunk/include/llvm/DebugInfo/DWARF/DWARFAcceleratorTable.h Mon
> Feb 27 17:43:14 2017
> @@ -1,4 +1,4 @@
> -//===--- DWARFAcceleratorTable.h --------------------------------*- C++
> -*-===//
> +//===- DWARFAcceleratorTable.h ----------------------------------*- C++
> -*-===//
>  //
>  //                     The LLVM Compiler Infrastructure
>  //
> @@ -7,19 +7,21 @@
>  //
>
>  //===----------------------------------------------------------------------===//
>
> -#ifndef LLVM_LIB_DEBUGINFO_DWARFACCELERATORTABLE_H
> -#define LLVM_LIB_DEBUGINFO_DWARFACCELERATORTABLE_H
> +#ifndef LLVM_DEBUGINFO_DWARFACCELERATORTABLE_H
> +#define LLVM_DEBUGINFO_DWARFACCELERATORTABLE_H
>
>  #include "llvm/ADT/SmallVector.h"
> -#include "llvm/DebugInfo/DWARF/DWARFFormValue.h"
>  #include "llvm/DebugInfo/DWARF/DWARFRelocMap.h"
> +#include "llvm/Support/DataExtractor.h"
>  #include "llvm/Support/Dwarf.h"
>  #include <cstdint>
> +#include <utility>
>
>  namespace llvm {
>
> -class DWARFAcceleratorTable {
> +class raw_ostream;
>
> +class DWARFAcceleratorTable {
>    struct Header {
>      uint32_t Magic;
>      uint16_t Version;
> @@ -41,6 +43,7 @@ class DWARFAcceleratorTable {
>    DataExtractor AccelSection;
>    DataExtractor StringSection;
>    const RelocAddrMap& Relocs;
> +
>  public:
>    DWARFAcceleratorTable(DataExtractor AccelSection, DataExtractor
> StringSection,
>                          const RelocAddrMap &Relocs)
> @@ -50,6 +53,6 @@ public:
>    void dump(raw_ostream &OS) const;
>  };
>
> -}
> +} // end namespace llvm
>
> -#endif
> +#endif // LLVM_DEBUGINFO_DWARFACCELERATORTABLE_H
>
> Modified: llvm/trunk/include/llvm/DebugInfo/DWARF/DWARFAttribute.h
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/DebugInfo/DWARF/DWARFAttribute.h?rev=296413&r1=296412&r2=296413&view=diff
>
> ==============================================================================
> --- llvm/trunk/include/llvm/DebugInfo/DWARF/DWARFAttribute.h (original)
> +++ llvm/trunk/include/llvm/DebugInfo/DWARF/DWARFAttribute.h Mon Feb 27
> 17:43:14 2017
> @@ -1,4 +1,4 @@
> -//===-- DWARFAttribute.h ----------------------------------------*- C++
> -*-===//
> +//===- DWARFAttribute.h -----------------------------------------*- C++
> -*-===//
>  //
>  //                     The LLVM Compiler Infrastructure
>  //
> @@ -7,11 +7,12 @@
>  //
>
>  //===----------------------------------------------------------------------===//
>
> -#ifndef LLVM_LIB_DEBUGINFO_DWARFATTRIBUTE_H
> -#define LLVM_LIB_DEBUGINFO_DWARFATTRIBUTE_H
> +#ifndef LLVM_DEBUGINFO_DWARFATTRIBUTE_H
> +#define LLVM_DEBUGINFO_DWARFATTRIBUTE_H
>
> -#include "llvm/Support/Dwarf.h"
>  #include "llvm/DebugInfo/DWARF/DWARFFormValue.h"
> +#include "llvm/Support/Dwarf.h"
> +#include <cstdint>
>
>  namespace llvm {
>
> @@ -23,17 +24,16 @@ namespace llvm {
>  /// attributes in a DWARFDie.
>  struct DWARFAttribute {
>    /// The debug info/types offset for this attribute.
> -  uint32_t Offset;
> +  uint32_t Offset = 0;
>    /// The debug info/types section byte size of the data for this
> attribute.
> -  uint32_t ByteSize;
> +  uint32_t ByteSize = 0;
>    /// The attribute enumeration of this attribute.
>    dwarf::Attribute Attr;
>    /// The form and value for this attribute.
>    DWARFFormValue Value;
>
>    DWARFAttribute(uint32_t O, dwarf::Attribute A = dwarf::Attribute(0),
> -                 dwarf::Form F = dwarf::Form(0)) :
> -      Offset(0), ByteSize(0), Attr(A), Value(F) {}
> +                 dwarf::Form F = dwarf::Form(0)) : Attr(A), Value(F) {}
>
>    bool isValid() const {
>      return Offset != 0 && Attr != dwarf::Attribute(0);
> @@ -51,6 +51,6 @@ struct DWARFAttribute {
>    }
>  };
>
> -}
> +} // end namespace llvm
>
> -#endif
> +#endif // LLVM_DEBUGINFO_DWARFATTRIBUTE_H
>
> Modified: llvm/trunk/include/llvm/DebugInfo/DWARF/DWARFCompileUnit.h
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/DebugInfo/DWARF/DWARFCompileUnit.h?rev=296413&r1=296412&r2=296413&view=diff
>
> ==============================================================================
> --- llvm/trunk/include/llvm/DebugInfo/DWARF/DWARFCompileUnit.h (original)
> +++ llvm/trunk/include/llvm/DebugInfo/DWARF/DWARFCompileUnit.h Mon Feb 27
> 17:43:14 2017
> @@ -1,4 +1,4 @@
> -//===-- DWARFCompileUnit.h --------------------------------------*- C++
> -*-===//
> +//===- DWARFCompileUnit.h ---------------------------------------*- C++
> -*-===//
>  //
>  //                     The LLVM Compiler Infrastructure
>  //
> @@ -7,10 +7,11 @@
>  //
>
>  //===----------------------------------------------------------------------===//
>
> -#ifndef LLVM_LIB_DEBUGINFO_DWARFCOMPILEUNIT_H
> -#define LLVM_LIB_DEBUGINFO_DWARFCOMPILEUNIT_H
> +#ifndef LLVM_DEBUGINFO_DWARFCOMPILEUNIT_H
> +#define LLVM_DEBUGINFO_DWARFCOMPILEUNIT_H
>
>  #include "llvm/DebugInfo/DWARF/DWARFUnit.h"
> +#include "llvm/DebugInfo/DWARF/DWARFUnitIndex.h"
>
>  namespace llvm {
>
> @@ -23,12 +24,15 @@ public:
>                     const DWARFUnitIndex::Entry *Entry)
>        : DWARFUnit(Context, Section, DA, RS, SS, SOS, AOS, LS, LE, IsDWO,
>                    UnitSection, Entry) {}
> -  void dump(raw_ostream &OS);
> -  static const DWARFSectionKind Section = DW_SECT_INFO;
> +
>    // VTable anchor.
>    ~DWARFCompileUnit() override;
> +
> +  void dump(raw_ostream &OS);
> +
> +  static const DWARFSectionKind Section = DW_SECT_INFO;
>  };
>
> -}
> +} // end namespace llvm
>
> -#endif
> +#endif // LLVM_DEBUGINFO_DWARFCOMPILEUNIT_H
>
> Modified: llvm/trunk/include/llvm/DebugInfo/DWARF/DWARFDebugAbbrev.h
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/DebugInfo/DWARF/DWARFDebugAbbrev.h?rev=296413&r1=296412&r2=296413&view=diff
>
> ==============================================================================
> --- llvm/trunk/include/llvm/DebugInfo/DWARF/DWARFDebugAbbrev.h (original)
> +++ llvm/trunk/include/llvm/DebugInfo/DWARF/DWARFDebugAbbrev.h Mon Feb 27
> 17:43:14 2017
> @@ -1,4 +1,4 @@
> -//===-- DWARFDebugAbbrev.h --------------------------------------*- C++
> -*-===//
> +//===- DWARFDebugAbbrev.h ---------------------------------------*- C++
> -*-===//
>  //
>  //                     The LLVM Compiler Infrastructure
>  //
> @@ -7,10 +7,12 @@
>  //
>
>  //===----------------------------------------------------------------------===//
>
> -#ifndef LLVM_LIB_DEBUGINFO_DWARFDEBUGABBREV_H
> -#define LLVM_LIB_DEBUGINFO_DWARFDEBUGABBREV_H
> +#ifndef LLVM_DEBUGINFO_DWARFDEBUGABBREV_H
> +#define LLVM_DEBUGINFO_DWARFDEBUGABBREV_H
>
>  #include "llvm/DebugInfo/DWARF/DWARFAbbreviationDeclaration.h"
> +#include "llvm/Support/DataExtractor.h"
> +#include <cstdint>
>  #include <map>
>  #include <vector>
>
> @@ -76,6 +78,6 @@ private:
>    void clear();
>  };
>
> -}
> +} // end namespace llvm
>
> -#endif
> +#endif // LLVM_DEBUGINFO_DWARFDEBUGABBREV_H
>
> Modified: llvm/trunk/include/llvm/DebugInfo/DWARF/DWARFDebugArangeSet.h
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/DebugInfo/DWARF/DWARFDebugArangeSet.h?rev=296413&r1=296412&r2=296413&view=diff
>
> ==============================================================================
> --- llvm/trunk/include/llvm/DebugInfo/DWARF/DWARFDebugArangeSet.h
> (original)
> +++ llvm/trunk/include/llvm/DebugInfo/DWARF/DWARFDebugArangeSet.h Mon Feb
> 27 17:43:14 2017
> @@ -1,4 +1,4 @@
> -//===-- DWARFDebugArangeSet.h -----------------------------------*- C++
> -*-===//
> +//===- DWARFDebugArangeSet.h ------------------------------------*- C++
> -*-===//
>  //
>  //                     The LLVM Compiler Infrastructure
>  //
> @@ -7,11 +7,12 @@
>  //
>
>  //===----------------------------------------------------------------------===//
>
> -#ifndef LLVM_LIB_DEBUGINFO_DWARFDEBUGARANGESET_H
> -#define LLVM_LIB_DEBUGINFO_DWARFDEBUGARANGESET_H
> +#ifndef LLVM_DEBUGINFO_DWARFDEBUGARANGESET_H
> +#define LLVM_DEBUGINFO_DWARFDEBUGARANGESET_H
>
>  #include "llvm/ADT/iterator_range.h"
>  #include "llvm/Support/DataExtractor.h"
> +#include <cstdint>
>  #include <vector>
>
>  namespace llvm {
> @@ -40,6 +41,7 @@ public:
>    struct Descriptor {
>      uint64_t Address;
>      uint64_t Length;
> +
>      uint64_t getEndAddress() const { return Address + Length; }
>    };
>
> @@ -53,6 +55,7 @@ private:
>
>  public:
>    DWARFDebugArangeSet() { clear(); }
> +
>    void clear();
>    bool extract(DataExtractor data, uint32_t *offset_ptr);
>    void dump(raw_ostream &OS) const;
> @@ -67,6 +70,6 @@ public:
>    }
>  };
>
> -}
> +} // end namespace llvm
>
> -#endif
> +#endif // LLVM_DEBUGINFO_DWARFDEBUGARANGESET_H
>
> Modified: llvm/trunk/include/llvm/DebugInfo/DWARF/DWARFDebugAranges.h
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/DebugInfo/DWARF/DWARFDebugAranges.h?rev=296413&r1=296412&r2=296413&view=diff
>
> ==============================================================================
> --- llvm/trunk/include/llvm/DebugInfo/DWARF/DWARFDebugAranges.h (original)
> +++ llvm/trunk/include/llvm/DebugInfo/DWARF/DWARFDebugAranges.h Mon Feb 27
> 17:43:14 2017
> @@ -1,4 +1,4 @@
> -//===-- DWARFDebugAranges.h -------------------------------------*- C++
> -*-===//
> +//===- DWARFDebugAranges.h --------------------------------------*- C++
> -*-===//
>  //
>  //                     The LLVM Compiler Infrastructure
>  //
> @@ -7,11 +7,12 @@
>  //
>
>  //===----------------------------------------------------------------------===//
>
> -#ifndef LLVM_LIB_DEBUGINFO_DWARFDEBUGARANGES_H
> -#define LLVM_LIB_DEBUGINFO_DWARFDEBUGARANGES_H
> +#ifndef LLVM_DEBUGINFO_DWARFDEBUGARANGES_H
> +#define LLVM_DEBUGINFO_DWARFDEBUGARANGES_H
>
>  #include "llvm/ADT/DenseSet.h"
>  #include "llvm/Support/DataExtractor.h"
> +#include <cstdint>
>  #include <vector>
>
>  namespace llvm {
> @@ -42,6 +43,7 @@ private:
>        else
>          Length = HighPC - LowPC;
>      }
> +
>      uint64_t HighPC() const {
>        if (Length)
>          return LowPC + Length;
> @@ -51,6 +53,7 @@ private:
>      bool containsAddress(uint64_t Address) const {
>        return LowPC <= Address && Address < HighPC();
>      }
> +
>      bool operator<(const Range &other) const {
>        return LowPC < other.LowPC;
>      }
> @@ -73,7 +76,6 @@ private:
>      }
>    };
>
> -
>    typedef std::vector<Range>              RangeColl;
>    typedef RangeColl::const_iterator       RangeCollIterator;
>
> @@ -82,6 +84,6 @@ private:
>    DenseSet<uint32_t> ParsedCUOffsets;
>  };
>
> -}
> +} // end namespace llvm
>
> -#endif
> +#endif // LLVM_DEBUGINFO_DWARFDEBUGARANGES_H
>
> Modified: llvm/trunk/include/llvm/DebugInfo/DWARF/DWARFDebugInfoEntry.h
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/DebugInfo/DWARF/DWARFDebugInfoEntry.h?rev=296413&r1=296412&r2=296413&view=diff
>
> ==============================================================================
> --- llvm/trunk/include/llvm/DebugInfo/DWARF/DWARFDebugInfoEntry.h
> (original)
> +++ llvm/trunk/include/llvm/DebugInfo/DWARF/DWARFDebugInfoEntry.h Mon Feb
> 27 17:43:14 2017
> @@ -1,4 +1,4 @@
> -//===-- DWARFDebugInfoEntry.h -----------------------------------*- C++
> -*-===//
> +//===- DWARFDebugInfoEntry.h ------------------------------------*- C++
> -*-===//
>  //
>  //                     The LLVM Compiler Infrastructure
>  //
> @@ -7,43 +7,37 @@
>  //
>
>  //===----------------------------------------------------------------------===//
>
> -#ifndef LLVM_LIB_DEBUGINFO_DWARFDEBUGINFOENTRY_H
> -#define LLVM_LIB_DEBUGINFO_DWARFDEBUGINFOENTRY_H
> +#ifndef LLVM_DEBUGINFO_DWARFDEBUGINFOENTRY_H
> +#define LLVM_DEBUGINFO_DWARFDEBUGINFOENTRY_H
>
> -#include "llvm/ADT/SmallVector.h"
> -#include "llvm/DebugInfo/DIContext.h"
>  #include "llvm/DebugInfo/DWARF/DWARFAbbreviationDeclaration.h"
> -#include "llvm/DebugInfo/DWARF/DWARFDebugRangeList.h"
> -#include "llvm/Support/DataTypes.h"
>  #include "llvm/Support/Dwarf.h"
> +#include <cstdint>
>
>  namespace llvm {
>
> -class DWARFDebugAranges;
> -class DWARFCompileUnit;
> +class DataExtractor;
>  class DWARFUnit;
> -class DWARFContext;
> -class DWARFFormValue;
> -struct DWARFDebugInfoEntryInlinedChain;
>
>  /// DWARFDebugInfoEntry - A DIE with only the minimum required data.
>  class DWARFDebugInfoEntry {
>    /// Offset within the .debug_info of the start of this entry.
> -  uint32_t Offset;
> +  uint32_t Offset = 0;
>
>    /// The integer depth of this DIE within the compile unit DIEs where the
>    /// compile/type unit DIE has a depth of zero.
> -  uint32_t Depth;
> +  uint32_t Depth = 0;
> +
> +  const DWARFAbbreviationDeclaration *AbbrevDecl = nullptr;
>
> -  const DWARFAbbreviationDeclaration *AbbrevDecl;
>  public:
> -  DWARFDebugInfoEntry()
> -    : Offset(0), Depth(0), AbbrevDecl(nullptr) {}
> +  DWARFDebugInfoEntry() = default;
>
>    /// Extracts a debug info entry, which is a child of a given unit,
>    /// starting at a given offset. If DIE can't be extracted, returns
> false and
>    /// doesn't change OffsetPtr.
>    bool extractFast(const DWARFUnit &U, uint32_t *OffsetPtr);
> +
>    /// High performance extraction should use this call.
>    bool extractFast(const DWARFUnit &U, uint32_t *OffsetPtr,
>                     const DataExtractor &DebugInfoData,
> @@ -52,15 +46,18 @@ public:
>
>    uint32_t getOffset() const { return Offset; }
>    uint32_t getDepth() const { return Depth; }
> +
>    dwarf::Tag getTag() const {
>      return AbbrevDecl ? AbbrevDecl->getTag() : dwarf::DW_TAG_null;
>    }
> +
>    bool hasChildren() const { return AbbrevDecl &&
> AbbrevDecl->hasChildren(); }
> +
>    const DWARFAbbreviationDeclaration *getAbbreviationDeclarationPtr()
> const {
>      return AbbrevDecl;
>    }
>  };
>
> -}
> +} // end namespace llvm
>
> -#endif
> +#endif // LLVM_DEBUGINFO_DWARFDEBUGINFOENTRY_H
>
> Modified: llvm/trunk/include/llvm/DebugInfo/DWARF/DWARFDebugLine.h
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/DebugInfo/DWARF/DWARFDebugLine.h?rev=296413&r1=296412&r2=296413&view=diff
>
> ==============================================================================
> --- llvm/trunk/include/llvm/DebugInfo/DWARF/DWARFDebugLine.h (original)
> +++ llvm/trunk/include/llvm/DebugInfo/DWARF/DWARFDebugLine.h Mon Feb 27
> 17:43:14 2017
> @@ -1,4 +1,4 @@
> -//===-- DWARFDebugLine.h ----------------------------------------*- C++
> -*-===//
> +//===- DWARFDebugLine.h -----------------------------------------*- C++
> -*-===//
>  //
>  //                     The LLVM Compiler Infrastructure
>  //
> @@ -7,12 +7,13 @@
>  //
>
>  //===----------------------------------------------------------------------===//
>
> -#ifndef LLVM_LIB_DEBUGINFO_DWARFDEBUGLINE_H
> -#define LLVM_LIB_DEBUGINFO_DWARFDEBUGLINE_H
> +#ifndef LLVM_DEBUGINFO_DWARFDEBUGLINE_H
> +#define LLVM_DEBUGINFO_DWARFDEBUGLINE_H
>
>  #include "llvm/DebugInfo/DIContext.h"
>  #include "llvm/DebugInfo/DWARF/DWARFRelocMap.h"
>  #include "llvm/Support/DataExtractor.h"
> +#include <cstdint>
>  #include <map>
>  #include <string>
>  #include <vector>
> @@ -24,13 +25,14 @@ class raw_ostream;
>  class DWARFDebugLine {
>  public:
>    DWARFDebugLine(const RelocAddrMap* LineInfoRelocMap) :
> RelocMap(LineInfoRelocMap) {}
> +
>    struct FileNameEntry {
> -    FileNameEntry() : Name(nullptr), DirIdx(0), ModTime(0), Length(0) {}
> +    FileNameEntry() = default;
>
> -    const char *Name;
> -    uint64_t DirIdx;
> -    uint64_t ModTime;
> -    uint64_t Length;
> +    const char *Name = nullptr;
> +    uint64_t DirIdx = 0;
> +    uint64_t ModTime = 0;
> +    uint64_t Length = 0;
>    };
>
>    struct Prologue {
> @@ -64,9 +66,11 @@ public:
>      std::vector<FileNameEntry> FileNames;
>
>      bool IsDWARF64;
> +
>      uint32_t sizeofTotalLength() const {
>        return IsDWARF64 ? 12 : 4;
>      }
> +
>      uint32_t sizeofPrologueLength() const {
>        return IsDWARF64 ? 8 : 4;
>      }
> @@ -76,10 +80,12 @@ public:
>        return PrologueLength + sizeofTotalLength() + sizeof(Version) +
>               sizeofPrologueLength();
>      }
> +
>      // Length of the line table data in bytes (not including the
> prologue).
>      uint32_t getStatementTableLength() const {
>        return TotalLength + sizeofTotalLength() - getLength();
>      }
> +
>      int32_t getMaxLineIncrementForSpecialOpcode() const {
>        return LineBase + (int8_t)LineRange - 1;
>      }
> @@ -146,6 +152,8 @@ public:
>    // compilation unit may consist of multiple sequences, which are not
>    // guaranteed to be in the order of ascending instruction address.
>    struct Sequence {
> +    Sequence();
> +
>      // Sequence describes instructions at address range [LowPC, HighPC)
>      // and is described by line table rows [FirstRowIndex, LastRowIndex).
>      uint64_t LowPC;
> @@ -154,15 +162,16 @@ public:
>      unsigned LastRowIndex;
>      bool Empty;
>
> -    Sequence();
>      void reset();
>
>      static bool orderByLowPC(const Sequence& LHS, const Sequence& RHS) {
>        return LHS.LowPC < RHS.LowPC;
>      }
> +
>      bool isValid() const {
>        return !Empty && (LowPC < HighPC) && (FirstRowIndex < LastRowIndex);
>      }
> +
>      bool containsPC(uint64_t pc) const {
>        return (LowPC <= pc && pc < HighPC);
>      }
> @@ -177,6 +186,7 @@ public:
>      void appendRow(const DWARFDebugLine::Row &R) {
>        Rows.push_back(R);
>      }
> +
>      void appendSequence(const DWARFDebugLine::Sequence &S) {
>        Sequences.push_back(S);
>      }
> @@ -249,6 +259,7 @@ private:
>    const RelocAddrMap *RelocMap;
>    LineTableMapTy LineTableMap;
>  };
> -}
>
> -#endif
> +} // end namespace llvm
> +
> +#endif // LLVM_DEBUGINFO_DWARFDEBUGLINE_H
>
> Modified: llvm/trunk/include/llvm/DebugInfo/DWARF/DWARFDie.h
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/DebugInfo/DWARF/DWARFDie.h?rev=296413&r1=296412&r2=296413&view=diff
>
> ==============================================================================
> --- llvm/trunk/include/llvm/DebugInfo/DWARF/DWARFDie.h (original)
> +++ llvm/trunk/include/llvm/DebugInfo/DWARF/DWARFDie.h Mon Feb 27 17:43:14
> 2017
> @@ -1,4 +1,4 @@
> -//===-- DWARFDie.h
> --------------------------------------------------------===//
> +//===- DWARFDie.h -----------------------------------------------*- C++
> -*-===//
>  //
>  //                     The LLVM Compiler Infrastructure
>  //
> @@ -7,20 +7,25 @@
>  //
>
>  //===----------------------------------------------------------------------===//
>
> -#ifndef LLVM_LIB_DEBUGINFO_DWARFDIE_H
> -#define LLVM_LIB_DEBUGINFO_DWARFDIE_H
> +#ifndef LLVM_DEBUGINFO_DWARFDIE_H
> +#define LLVM_DEBUGINFO_DWARFDIE_H
>
>  #include "llvm/ADT/ArrayRef.h"
>  #include "llvm/ADT/iterator.h"
>  #include "llvm/ADT/iterator_range.h"
>  #include "llvm/ADT/Optional.h"
> +#include "llvm/DebugInfo/DIContext.h"
>  #include "llvm/DebugInfo/DWARF/DWARFAttribute.h"
>  #include "llvm/DebugInfo/DWARF/DWARFDebugInfoEntry.h"
> +#include "llvm/DebugInfo/DWARF/DWARFDebugRangeList.h"
> +#include "llvm/Support/Dwarf.h"
> +#include <cassert>
> +#include <cstdint>
> +#include <iterator>
>
>  namespace llvm {
>
>  class DWARFUnit;
> -class DWARFDebugInfoEntry;
>  class raw_ostream;
>
>
>  //===----------------------------------------------------------------------===//
> @@ -36,10 +41,11 @@ class raw_ostream;
>  /// also simplifies the attribute extraction calls by not having to
> specify the
>  /// DWARFUnit for each call.
>  class DWARFDie {
> -  DWARFUnit *U;
> -  const DWARFDebugInfoEntry *Die;
> +  DWARFUnit *U = nullptr;
> +  const DWARFDebugInfoEntry *Die = nullptr;
> +
>  public:
> -  DWARFDie() : U(nullptr), Die(nullptr) {}
> +  DWARFDie() = default;
>    DWARFDie(DWARFUnit *Unit, const DWARFDebugInfoEntry * D) : U(Unit),
> Die(D) {}
>
>    bool isValid() const { return U && Die; }
> @@ -47,7 +53,6 @@ public:
>    const DWARFDebugInfoEntry *getDebugInfoEntry() const { return Die; }
>    DWARFUnit *getDwarfUnit() const { return U; }
>
> -
>    /// Get the abbreviation declaration for this DIE.
>    ///
>    /// \returns the abbreviation declaration or NULL for null tags.
> @@ -80,6 +85,7 @@ public:
>    bool isNULL() const {
>      return getAbbreviationDeclarationPtr() == nullptr;
>    }
> +
>    /// Returns true if DIE represents a subprogram (not inlined).
>    bool isSubprogramDIE() const;
>
> @@ -289,16 +295,17 @@ class DWARFDie::attribute_iterator :
>    /// error will be set if the Err member variable is non-NULL and the
> iterator
>    /// will be set to the end value so iteration stops.
>    void updateForIndex(const DWARFAbbreviationDeclaration &AbbrDecl,
> uint32_t I);
> +
>  public:
>    attribute_iterator() = delete;
>    explicit attribute_iterator(DWARFDie D, bool End);
> +
>    attribute_iterator &operator++();
>    explicit operator bool() const { return AttrValue.isValid(); }
>    const DWARFAttribute &operator*() const { return AttrValue; }
>    bool operator==(const attribute_iterator &X) const { return Index ==
> X.Index; }
>  };
>
> -
>  inline bool operator==(const DWARFDie &LHS, const DWARFDie &RHS) {
>    return LHS.getDebugInfoEntry() == RHS.getDebugInfoEntry() &&
>        LHS.getDwarfUnit() == RHS.getDwarfUnit();
> @@ -318,16 +325,19 @@ class DWARFDie::iterator : public iterat
>    }
>  public:
>    iterator() = default;
> +
>    explicit iterator(DWARFDie D) : Die(D) {
>      // If we start out with only a Null DIE then invalidate.
>      skipNull();
>    }
> +
>    iterator &operator++() {
>      Die = Die.getSibling();
>      // Don't include the NULL die when iterating.
>      skipNull();
>      return *this;
>    }
> +
>    explicit operator bool() const { return Die.isValid(); }
>    const DWARFDie &operator*() const { return Die; }
>    bool operator==(const iterator &X) const { return Die == X.Die; }
> @@ -349,4 +359,4 @@ inline iterator_range<DWARFDie::iterator
>
>  } // end namespace llvm
>
> -#endif  // LLVM_LIB_DEBUGINFO_DWARFDIE_H
> +#endif // LLVM_DEBUGINFO_DWARFDIE_H
>
> Modified: llvm/trunk/include/llvm/DebugInfo/DWARF/DWARFFormValue.h
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/DebugInfo/DWARF/DWARFFormValue.h?rev=296413&r1=296412&r2=296413&view=diff
>
> ==============================================================================
> --- llvm/trunk/include/llvm/DebugInfo/DWARF/DWARFFormValue.h (original)
> +++ llvm/trunk/include/llvm/DebugInfo/DWARF/DWARFFormValue.h Mon Feb 27
> 17:43:14 2017
> @@ -1,4 +1,4 @@
> -//===-- DWARFFormValue.h ----------------------------------------*- C++
> -*-===//
> +//===- DWARFFormValue.h -----------------------------------------*- C++
> -*-===//
>  //
>  //                     The LLVM Compiler Infrastructure
>  //
> @@ -11,13 +11,14 @@
>  #define LLVM_DEBUGINFO_DWARFFORMVALUE_H
>
>  #include "llvm/ADT/ArrayRef.h"
> +#include "llvm/ADT/None.h"
>  #include "llvm/ADT/Optional.h"
>  #include "llvm/Support/DataExtractor.h"
>  #include "llvm/Support/Dwarf.h"
> +#include <cstdint>
>
>  namespace llvm {
>
> -template <typename T> class ArrayRef;
>  class DWARFUnit;
>  class raw_ostream;
>
> @@ -38,7 +39,7 @@ public:
>
>  private:
>    struct ValueType {
> -    ValueType() : data(nullptr) {
> +    ValueType() {
>        uval = 0;
>      }
>
> @@ -47,24 +48,27 @@ private:
>        int64_t sval;
>        const char* cstr;
>      };
> -    const uint8_t* data;
> +    const uint8_t* data = nullptr;
>    };
>
>    dwarf::Form Form; // Form for this value.
>    ValueType Value; // Contains all data for the form.
> -  const DWARFUnit *U; // Remember the DWARFUnit at extract time.
> +  const DWARFUnit *U = nullptr; // Remember the DWARFUnit at extract time.
>
>  public:
> -  DWARFFormValue(dwarf::Form F = dwarf::Form(0)) : Form(F), U(nullptr) {}
> +  DWARFFormValue(dwarf::Form F = dwarf::Form(0)) : Form(F) {}
> +
>    dwarf::Form getForm() const { return Form; }
>    void setForm(dwarf::Form F) { Form = F; }
>    void setUValue(uint64_t V) { Value.uval = V; }
>    void setSValue(int64_t V) { Value.sval = V; }
>    void setPValue(const char *V) { Value.cstr = V; }
> +
>    void setBlockValue(const ArrayRef<uint8_t> &Data) {
>      Value.data = Data.data();
>      setUValue(Data.size());
>    }
> +
>    bool isFormClass(FormClass FC) const;
>    const DWARFUnit *getUnit() const { return U; }
>    void dump(raw_ostream &OS) const;
> @@ -77,6 +81,7 @@ public:
>    /// \returns whether the extraction succeeded.
>    bool extractValue(const DataExtractor &Data, uint32_t *OffsetPtr,
>                      const DWARFUnit *U);
> +
>    bool isInlinedCStr() const {
>      return Value.data != nullptr && Value.data == (const
> uint8_t*)Value.cstr;
>    }
> @@ -92,6 +97,7 @@ public:
>    Optional<ArrayRef<uint8_t>> getAsBlock() const;
>    Optional<uint64_t> getAsCStringOffset() const;
>    Optional<uint64_t> getAsReferenceUVal() const;
> +
>    /// Get the fixed byte size for a given form.
>    ///
>    /// If the form always has a fixed valid byte size that doesn't depend
> on a
> @@ -110,6 +116,7 @@ public:
>    /// and was needed to calculate the byte size.
>    static Optional<uint8_t> getFixedByteSize(dwarf::Form Form,
>                                              const DWARFUnit *U = nullptr);
> +
>    /// Get the fixed byte size for a given form.
>    ///
>    /// If the form has a fixed byte size given a valid DWARF version and
> address
> @@ -138,6 +145,7 @@ public:
>    /// \returns true on success, false if the form was not skipped.
>    bool skipValue(DataExtractor debug_info_data, uint32_t *offset_ptr,
>                   const DWARFUnit *U) const;
> +
>    /// Skip a form in \p debug_info_data at offset specified by \p
> offset_ptr.
>    ///
>    /// Skips the bytes for this form in the debug info and updates the
> offset.
> @@ -150,6 +158,7 @@ public:
>    /// \returns true on success, false if the form was not skipped.
>    static bool skipValue(dwarf::Form form, DataExtractor debug_info_data,
>                          uint32_t *offset_ptr, const DWARFUnit *U);
> +
>    /// Skip a form in \p debug_info_data at offset specified by \p
> offset_ptr.
>    ///
>    /// Skips the bytes for this form in the debug info and updates the
> offset.
> @@ -170,6 +179,7 @@ private:
>  };
>
>  namespace dwarf {
> +
>    /// Take an optional DWARFFormValue and try to extract a string value
> from it.
>    ///
>    /// \param V and optional DWARFFormValue to attempt to extract the
> value from.
> @@ -316,6 +326,6 @@ namespace dwarf {
>
>  } // end namespace dwarf
>
> -}
> +} // end namespace llvm
>
> -#endif
> +#endif // LLVM_DEBUGINFO_DWARFFORMVALUE_H
>
> Modified: llvm/trunk/lib/DebugInfo/DWARF/DWARFAbbreviationDeclaration.cpp
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/DebugInfo/DWARF/DWARFAbbreviationDeclaration.cpp?rev=296413&r1=296412&r2=296413&view=diff
>
> ==============================================================================
> --- llvm/trunk/lib/DebugInfo/DWARF/DWARFAbbreviationDeclaration.cpp
> (original)
> +++ llvm/trunk/lib/DebugInfo/DWARF/DWARFAbbreviationDeclaration.cpp Mon
> Feb 27 17:43:14 2017
> @@ -1,4 +1,4 @@
> -//===-- DWARFAbbreviationDeclaration.cpp
> ----------------------------------===//
> +//===- DWARFAbbreviationDeclaration.cpp
> -----------------------------------===//
>  //
>  //                     The LLVM Compiler Infrastructure
>  //
> @@ -7,12 +7,18 @@
>  //
>
>  //===----------------------------------------------------------------------===//
>
> +#include "llvm/ADT/None.h"
> +#include "llvm/ADT/Optional.h"
>  #include "llvm/DebugInfo/DWARF/DWARFAbbreviationDeclaration.h"
>  #include "llvm/DebugInfo/DWARF/DWARFFormValue.h"
>  #include "llvm/DebugInfo/DWARF/DWARFUnit.h"
> +#include "llvm/Support/DataExtractor.h"
>  #include "llvm/Support/Dwarf.h"
>  #include "llvm/Support/Format.h"
>  #include "llvm/Support/raw_ostream.h"
> +#include <cstddef>
> +#include <cstdint>
> +
>  using namespace llvm;
>  using namespace dwarf;
>
>
> Modified: llvm/trunk/lib/DebugInfo/DWARF/DWARFAcceleratorTable.cpp
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/DebugInfo/DWARF/DWARFAcceleratorTable.cpp?rev=296413&r1=296412&r2=296413&view=diff
>
> ==============================================================================
> --- llvm/trunk/lib/DebugInfo/DWARF/DWARFAcceleratorTable.cpp (original)
> +++ llvm/trunk/lib/DebugInfo/DWARF/DWARFAcceleratorTable.cpp Mon Feb 27
> 17:43:14 2017
> @@ -1,4 +1,4 @@
> -//===--- DWARFAcceleratorTable.cpp
> ----------------------------------------===//
> +//===- DWARFAcceleratorTable.cpp
> ------------------------------------------===//
>  //
>  //                     The LLVM Compiler Infrastructure
>  //
> @@ -7,12 +7,19 @@
>  //
>
>  //===----------------------------------------------------------------------===//
>
> +#include "llvm/ADT/SmallVector.h"
>  #include "llvm/DebugInfo/DWARF/DWARFAcceleratorTable.h"
> +#include "llvm/DebugInfo/DWARF/DWARFFormValue.h"
> +#include "llvm/DebugInfo/DWARF/DWARFRelocMap.h"
>  #include "llvm/Support/Dwarf.h"
> +#include "llvm/Support/Compiler.h"
>  #include "llvm/Support/Format.h"
>  #include "llvm/Support/raw_ostream.h"
> +#include <cstddef>
> +#include <cstdint>
> +#include <utility>
>
> -namespace llvm {
> +using namespace llvm;
>
>  bool DWARFAcceleratorTable::extract() {
>    uint32_t Offset = 0;
> @@ -131,4 +138,3 @@ LLVM_DUMP_METHOD void DWARFAcceleratorTa
>      }
>    }
>  }
> -}
>
> Modified: llvm/trunk/lib/DebugInfo/DWARF/DWARFDebugAbbrev.cpp
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/DebugInfo/DWARF/DWARFDebugAbbrev.cpp?rev=296413&r1=296412&r2=296413&view=diff
>
> ==============================================================================
> --- llvm/trunk/lib/DebugInfo/DWARF/DWARFDebugAbbrev.cpp (original)
> +++ llvm/trunk/lib/DebugInfo/DWARF/DWARFDebugAbbrev.cpp Mon Feb 27
> 17:43:14 2017
> @@ -1,4 +1,4 @@
> -//===-- DWARFDebugAbbrev.cpp
> ----------------------------------------------===//
> +//===- DWARFDebugAbbrev.cpp
> -----------------------------------------------===//
>  //
>  //                     The LLVM Compiler Infrastructure
>  //
> @@ -10,6 +10,10 @@
>  #include "llvm/DebugInfo/DWARF/DWARFDebugAbbrev.h"
>  #include "llvm/Support/Format.h"
>  #include "llvm/Support/raw_ostream.h"
> +#include <algorithm>
> +#include <cinttypes>
> +#include <cstdint>
> +
>  using namespace llvm;
>
>  DWARFAbbreviationDeclarationSet::DWARFAbbreviationDeclarationSet() {
>
> Modified: llvm/trunk/lib/DebugInfo/DWARF/DWARFDebugArangeSet.cpp
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/DebugInfo/DWARF/DWARFDebugArangeSet.cpp?rev=296413&r1=296412&r2=296413&view=diff
>
> ==============================================================================
> --- llvm/trunk/lib/DebugInfo/DWARF/DWARFDebugArangeSet.cpp (original)
> +++ llvm/trunk/lib/DebugInfo/DWARF/DWARFDebugArangeSet.cpp Mon Feb 27
> 17:43:14 2017
> @@ -1,4 +1,4 @@
> -//===-- DWARFDebugArangeSet.cpp
> -------------------------------------------===//
> +//===- DWARFDebugArangeSet.cpp
> --------------------------------------------===//
>  //
>  //                     The LLVM Compiler Infrastructure
>  //
> @@ -10,8 +10,11 @@
>  #include "llvm/DebugInfo/DWARF/DWARFDebugArangeSet.h"
>  #include "llvm/Support/Format.h"
>  #include "llvm/Support/raw_ostream.h"
> -#include <algorithm>
>  #include <cassert>
> +#include <cinttypes>
> +#include <cstdint>
> +#include <cstring>
> +
>  using namespace llvm;
>
>  void DWARFDebugArangeSet::clear() {
>
> Modified: llvm/trunk/lib/DebugInfo/DWARF/DWARFDebugAranges.cpp
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/DebugInfo/DWARF/DWARFDebugAranges.cpp?rev=296413&r1=296412&r2=296413&view=diff
>
> ==============================================================================
> --- llvm/trunk/lib/DebugInfo/DWARF/DWARFDebugAranges.cpp (original)
> +++ llvm/trunk/lib/DebugInfo/DWARF/DWARFDebugAranges.cpp Mon Feb 27
> 17:43:14 2017
> @@ -1,4 +1,4 @@
> -//===-- DWARFDebugAranges.cpp -----------------------------------*- C++
> -*-===//
> +//===- DWARFDebugAranges.cpp
> ----------------------------------------------===//
>  //
>  //                     The LLVM Compiler Infrastructure
>  //
> @@ -11,11 +11,13 @@
>  #include "llvm/DebugInfo/DWARF/DWARFCompileUnit.h"
>  #include "llvm/DebugInfo/DWARF/DWARFContext.h"
>  #include "llvm/DebugInfo/DWARF/DWARFDebugArangeSet.h"
> -#include "llvm/Support/Format.h"
> -#include "llvm/Support/raw_ostream.h"
> +#include "llvm/Support/DataExtractor.h"
>  #include <algorithm>
>  #include <cassert>
> +#include <cstdint>
>  #include <set>
> +#include <vector>
> +
>  using namespace llvm;
>
>  void DWARFDebugAranges::extract(DataExtractor DebugArangesData) {
> @@ -81,7 +83,7 @@ void DWARFDebugAranges::construct() {
>    std::sort(Endpoints.begin(), Endpoints.end());
>    uint64_t PrevAddress = -1ULL;
>    for (const auto &E : Endpoints) {
> -    if (PrevAddress < E.Address && ValidCUs.size() > 0) {
> +    if (PrevAddress < E.Address && !ValidCUs.empty()) {
>        // If the address range between two endpoints is described by some
>        // CU, first try to extend the last range in Aranges. If we can't
>        // do it, start a new range.
>
> Modified: llvm/trunk/lib/DebugInfo/DWARF/DWARFDebugInfoEntry.cpp
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/DebugInfo/DWARF/DWARFDebugInfoEntry.cpp?rev=296413&r1=296412&r2=296413&view=diff
>
> ==============================================================================
> --- llvm/trunk/lib/DebugInfo/DWARF/DWARFDebugInfoEntry.cpp (original)
> +++ llvm/trunk/lib/DebugInfo/DWARF/DWARFDebugInfoEntry.cpp Mon Feb 27
> 17:43:14 2017
> @@ -1,4 +1,4 @@
> -//===-- DWARFDebugInfoEntry.cpp
> -------------------------------------------===//
> +//===- DWARFDebugInfoEntry.cpp
> --------------------------------------------===//
>  //
>  //                     The LLVM Compiler Infrastructure
>  //
> @@ -7,20 +7,17 @@
>  //
>
>  //===----------------------------------------------------------------------===//
>
> -#include "SyntaxHighlighting.h"
> -#include "llvm/DebugInfo/DWARF/DWARFCompileUnit.h"
> -#include "llvm/DebugInfo/DWARF/DWARFContext.h"
> +#include "llvm/ADT/Optional.h"
>  #include "llvm/DebugInfo/DWARF/DWARFDebugAbbrev.h"
>  #include "llvm/DebugInfo/DWARF/DWARFDebugInfoEntry.h"
>  #include "llvm/DebugInfo/DWARF/DWARFFormValue.h"
> -#include "llvm/Support/DataTypes.h"
> -#include "llvm/Support/Debug.h"
> -#include "llvm/Support/Dwarf.h"
> -#include "llvm/Support/Format.h"
> -#include "llvm/Support/raw_ostream.h"
> +#include "llvm/DebugInfo/DWARF/DWARFUnit.h"
> +#include "llvm/Support/DataExtractor.h"
> +#include <cstddef>
> +#include <cstdint>
> +
>  using namespace llvm;
>  using namespace dwarf;
> -using namespace syntax;
>
>  bool DWARFDebugInfoEntry::extractFast(const DWARFUnit &U,
>                                               uint32_t *OffsetPtr) {
> @@ -28,6 +25,7 @@ bool DWARFDebugInfoEntry::extractFast(co
>    const uint32_t UEndOffset = U.getNextUnitOffset();
>    return extractFast(U, OffsetPtr, DebugInfoData, UEndOffset, 0);
>  }
> +
>  bool DWARFDebugInfoEntry::extractFast(const DWARFUnit &U, uint32_t
> *OffsetPtr,
>                                        const DataExtractor &DebugInfoData,
>                                        uint32_t UEndOffset, uint32_t D) {
>
> Modified: llvm/trunk/lib/DebugInfo/DWARF/DWARFDebugLine.cpp
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/DebugInfo/DWARF/DWARFDebugLine.cpp?rev=296413&r1=296412&r2=296413&view=diff
>
> ==============================================================================
> --- llvm/trunk/lib/DebugInfo/DWARF/DWARFDebugLine.cpp (original)
> +++ llvm/trunk/lib/DebugInfo/DWARF/DWARFDebugLine.cpp Mon Feb 27 17:43:14
> 2017
> @@ -1,4 +1,4 @@
> -//===-- DWARFDebugLine.cpp
> ------------------------------------------------===//
> +//===- DWARFDebugLine.cpp
> -------------------------------------------------===//
>  //
>  //                     The LLVM Compiler Infrastructure
>  //
> @@ -7,14 +7,23 @@
>  //
>
>  //===----------------------------------------------------------------------===//
>
> +#include "llvm/ADT/SmallString.h"
>  #include "llvm/DebugInfo/DWARF/DWARFDebugLine.h"
> +#include "llvm/DebugInfo/DWARF/DWARFRelocMap.h"
>  #include "llvm/Support/Dwarf.h"
>  #include "llvm/Support/Format.h"
>  #include "llvm/Support/Path.h"
>  #include "llvm/Support/raw_ostream.h"
>  #include <algorithm>
> +#include <cassert>
> +#include <cinttypes>
> +#include <cstdint>
> +#include <cstdio>
> +#include <utility>
> +
>  using namespace llvm;
>  using namespace dwarf;
> +
>  typedef DILineInfoSpecifier::FileLineInfoKind FileLineInfoKind;
>
>  DWARFDebugLine::Prologue::Prologue() { clear(); }
>
> Modified: llvm/trunk/lib/DebugInfo/DWARF/DWARFDie.cpp
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/DebugInfo/DWARF/DWARFDie.cpp?rev=296413&r1=296412&r2=296413&view=diff
>
> ==============================================================================
> --- llvm/trunk/lib/DebugInfo/DWARF/DWARFDie.cpp (original)
> +++ llvm/trunk/lib/DebugInfo/DWARF/DWARFDie.cpp Mon Feb 27 17:43:14 2017
> @@ -1,4 +1,4 @@
> -//===-- DWARFDie.cpp
> ------------------------------------------------------===//
> +//===- DWARFDie.cpp
> -------------------------------------------------------===//
>  //
>  //                     The LLVM Compiler Infrastructure
>  //
> @@ -7,25 +7,33 @@
>  //
>
>  //===----------------------------------------------------------------------===//
>
> -#include "llvm/DebugInfo/DWARF/DWARFDie.h"
>  #include "SyntaxHighlighting.h"
> -#include "llvm/DebugInfo/DWARF/DWARFCompileUnit.h"
> +#include "llvm/ADT/None.h"
> +#include "llvm/ADT/Optional.h"
> +#include "llvm/ADT/StringRef.h"
> +#include "llvm/DebugInfo/DWARF/DWARFAbbreviationDeclaration.h"
>  #include "llvm/DebugInfo/DWARF/DWARFContext.h"
> -#include "llvm/DebugInfo/DWARF/DWARFDebugAbbrev.h"
> -#include "llvm/DebugInfo/DWARF/DWARFDebugInfoEntry.h"
> +#include "llvm/DebugInfo/DWARF/DWARFDebugRangeList.h"
> +#include "llvm/DebugInfo/DWARF/DWARFDie.h"
>  #include "llvm/DebugInfo/DWARF/DWARFFormValue.h"
> -#include "llvm/Support/DataTypes.h"
> -#include "llvm/Support/Debug.h"
> +#include "llvm/DebugInfo/DWARF/DWARFUnit.h"
> +#include "llvm/Support/DataExtractor.h"
>  #include "llvm/Support/Dwarf.h"
>  #include "llvm/Support/Format.h"
> +#include "llvm/Support/MathExtras.h"
>  #include "llvm/Support/raw_ostream.h"
> +#include <algorithm>
> +#include <cassert>
> +#include <cinttypes>
> +#include <cstdint>
> +#include <string>
> +#include <utility>
>
>  using namespace llvm;
>  using namespace dwarf;
>  using namespace syntax;
>
> -namespace {
> - static void dumpApplePropertyAttribute(raw_ostream &OS, uint64_t Val) {
> +static void dumpApplePropertyAttribute(raw_ostream &OS, uint64_t Val) {
>    OS << " (";
>    do {
>      uint64_t Shift = countTrailingZeros(Val);
> @@ -122,8 +130,6 @@ static void dumpAttribute(raw_ostream &O
>    OS << ")\n";
>  }
>
> -} // end anonymous namespace
> -
>  bool DWARFDie::isSubprogramDIE() const {
>    return getTag() == DW_TAG_subprogram;
>  }
> @@ -356,7 +362,6 @@ void DWARFDie::dump(raw_ostream &OS, uns
>    }
>  }
>
> -
>  void DWARFDie::getInlinedChainForAddress(
>      const uint64_t Address, SmallVectorImpl<DWARFDie> &InlinedChain)
> const {
>    if (isNULL())
>
> Modified: llvm/trunk/lib/DebugInfo/DWARF/DWARFFormValue.cpp
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/DebugInfo/DWARF/DWARFFormValue.cpp?rev=296413&r1=296412&r2=296413&view=diff
>
> ==============================================================================
> --- llvm/trunk/lib/DebugInfo/DWARF/DWARFFormValue.cpp (original)
> +++ llvm/trunk/lib/DebugInfo/DWARF/DWARFFormValue.cpp Mon Feb 27 17:43:14
> 2017
> @@ -1,4 +1,4 @@
> -//===-- DWARFFormValue.cpp
> ------------------------------------------------===//
> +//===- DWARFFormValue.cpp
> -------------------------------------------------===//
>  //
>  //                     The LLVM Compiler Infrastructure
>  //
> @@ -9,16 +9,21 @@
>
>  #include "SyntaxHighlighting.h"
>  #include "llvm/ADT/ArrayRef.h"
> +#include "llvm/ADT/None.h"
> +#include "llvm/ADT/Optional.h"
>  #include "llvm/ADT/StringRef.h"
> -#include "llvm/DebugInfo/DWARF/DWARFCompileUnit.h"
>  #include "llvm/DebugInfo/DWARF/DWARFContext.h"
>  #include "llvm/DebugInfo/DWARF/DWARFFormValue.h"
> -#include "llvm/Support/Debug.h"
> +#include "llvm/DebugInfo/DWARF/DWARFRelocMap.h"
> +#include "llvm/DebugInfo/DWARF/DWARFUnit.h"
>  #include "llvm/Support/Dwarf.h"
> +#include "llvm/Support/ErrorHandling.h"
>  #include "llvm/Support/Format.h"
>  #include "llvm/Support/raw_ostream.h"
> -#include <cassert>
> +#include <cinttypes>
> +#include <cstdint>
>  #include <limits>
> +
>  using namespace llvm;
>  using namespace dwarf;
>  using namespace syntax;
> @@ -66,13 +71,16 @@ class FormSizeHelper {
>
>  public:
>    FormSizeHelper(uint16_t V, uint8_t A, llvm::dwarf::DwarfFormat F)
> -  : Version(V), AddrSize(A), Format(F) {}
> +      : Version(V), AddrSize(A), Format(F) {}
> +
>    uint8_t getAddressByteSize() const { return AddrSize; }
> +
>    uint8_t getRefAddrByteSize() const {
>      if (Version == 2)
>        return AddrSize;
>      return getDwarfOffsetByteSize();
>    }
> +
>    uint8_t getDwarfOffsetByteSize() const {
>      switch (Format) {
>        case dwarf::DwarfFormat::DWARF32:
> @@ -497,21 +505,18 @@ DWARFFormValue::dump(raw_ostream &OS) co
>
>    case DW_FORM_sdata:     OS << Value.sval; break;
>    case DW_FORM_udata:     OS << Value.uval; break;
> -  case DW_FORM_strp: {
> +  case DW_FORM_strp:
>      OS << format(" .debug_str[0x%8.8x] = ", (uint32_t)uvalue);
>      dumpString(OS);
>      break;
> -  }
> -  case DW_FORM_GNU_str_index: {
> +  case DW_FORM_GNU_str_index:
>      OS << format(" indexed (%8.8x) string = ", (uint32_t)uvalue);
>      dumpString(OS);
>      break;
> -  }
> -  case DW_FORM_GNU_strp_alt: {
> +  case DW_FORM_GNU_strp_alt:
>      OS << format("alt indirect string, offset: 0x%" PRIx64 "", uvalue);
>      dumpString(OS);
>      break;
> -  }
>    case DW_FORM_ref_addr:
>      OS << format("0x%016" PRIx64, uvalue);
>      break;
> @@ -676,4 +681,3 @@ Optional<uint64_t> DWARFFormValue::getAs
>      return None;
>    return Value.uval;
>  }
> -
>
>
> _______________________________________________
> llvm-commits mailing list
> llvm-commits at lists.llvm.org
> http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits
>
> _______________________________________________
> llvm-commits mailing list
> llvm-commits at lists.llvm.org
> http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20170407/406ebcb5/attachment-0001.html>


More information about the llvm-commits mailing list