};
- typedef MCSection MCSectionELF;
+ class MCSectionELF : public MCSection {
+ MCSectionELF(const StringRef &Name, bool IsDirective, SectionKind K,
+ MCContext &Ctx) : MCSection(Name, IsDirective, K, Ctx) {}
+ public:
+
+ static MCSectionELF *Create(const StringRef &Name, bool IsDirective,
+ SectionKind K, MCContext &Ctx);
+
+ };
+
+ class MCSectionMachO : public MCSection {
+ MCSectionMachO(const StringRef &Name, bool IsDirective, SectionKind K,
+ MCContext &Ctx) : MCSection(Name, IsDirective, K, Ctx) {}
+ public:
+
+ static MCSectionMachO *Create(const StringRef &Name, bool IsDirective,
+ SectionKind K, MCContext &Ctx);
+ };
+
+ class MCSectionPECOFF : public MCSection {
+ MCSectionPECOFF(const StringRef &Name, bool IsDirective, SectionKind K,
+ MCContext &Ctx) : MCSection(Name, IsDirective, K, Ctx) {}
+ public:
+
+ static MCSectionPECOFF *Create(const StringRef &Name, bool IsDirective,
+ SectionKind K, MCContext &Ctx);
+ };
} // end namespace llvm
Entry = this;
}
-MCSection *MCSection::Create(const StringRef &Name, bool IsDirective,
- SectionKind K, MCContext &Ctx) {
+MCSection *MCSection::
+Create(const StringRef &Name, bool IsDirective, SectionKind K, MCContext &Ctx) {
return new (Ctx) MCSection(Name, IsDirective, K, Ctx);
}
+
+MCSectionELF *MCSectionELF::
+Create(const StringRef &Name, bool IsDirective, SectionKind K, MCContext &Ctx) {
+ return new (Ctx) MCSectionELF(Name, IsDirective, K, Ctx);
+}
+
+
+MCSectionMachO *MCSectionMachO::
+Create(const StringRef &Name, bool IsDirective, SectionKind K, MCContext &Ctx) {
+ return new (Ctx) MCSectionMachO(Name, IsDirective, K, Ctx);
+}
+
+
+MCSectionPECOFF *MCSectionPECOFF::
+Create(const StringRef &Name, bool IsDirective, SectionKind K, MCContext &Ctx) {
+ return new (Ctx) MCSectionPECOFF(Name, IsDirective, K, Ctx);
+}
+