diff --git a/include/llvm/MC/MCSection.h b/include/llvm/MC/MCSection.h index 3a898595248..62e1129fd78 100644 --- a/include/llvm/MC/MCSection.h +++ b/include/llvm/MC/MCSection.h @@ -19,47 +19,43 @@ #include "llvm/Support/Compiler.h" namespace llvm { - class MCAsmInfo; - class MCExpr; - class raw_ostream; +class MCAsmInfo; +class MCExpr; +class raw_ostream; - /// MCSection - Instances of this class represent a uniqued identifier for a - /// section in the current translation unit. The MCContext class uniques and - /// creates these. - class MCSection { - public: - enum SectionVariant { - SV_COFF = 0, - SV_ELF, - SV_MachO - }; +/// Instances of this class represent a uniqued identifier for a section in the +/// current translation unit. The MCContext class uniques and creates these. +class MCSection { +public: + enum SectionVariant { SV_COFF = 0, SV_ELF, SV_MachO }; - private: - MCSection(const MCSection&) = delete; - void operator=(const MCSection&) = delete; - protected: - MCSection(SectionVariant V, SectionKind K) : Variant(V), Kind(K) {} - SectionVariant Variant; - SectionKind Kind; - public: - virtual ~MCSection(); +private: + MCSection(const MCSection &) = delete; + void operator=(const MCSection &) = delete; - SectionKind getKind() const { return Kind; } +protected: + MCSection(SectionVariant V, SectionKind K) : Variant(V), Kind(K) {} + SectionVariant Variant; + SectionKind Kind; - SectionVariant getVariant() const { return Variant; } +public: + virtual ~MCSection(); - virtual void PrintSwitchToSection(const MCAsmInfo &MAI, - raw_ostream &OS, - const MCExpr *Subsection) const = 0; + SectionKind getKind() const { return Kind; } - // UseCodeAlign - Return true if a .align directive should use - // "optimized nops" to fill instead of 0s. - virtual bool UseCodeAlign() const = 0; + SectionVariant getVariant() const { return Variant; } - /// isVirtualSection - Check whether this section is "virtual", that is - /// has no actual object file contents. - virtual bool isVirtualSection() const = 0; - }; + virtual void PrintSwitchToSection(const MCAsmInfo &MAI, raw_ostream &OS, + const MCExpr *Subsection) const = 0; + + /// Return true if a .align directive should use "optimized nops" to fill + /// instead of 0s. + virtual bool UseCodeAlign() const = 0; + + /// Check whether this section is "virtual", that is has no actual object + /// file contents. + virtual bool isVirtualSection() const = 0; +}; } // end namespace llvm