1 //===- PIC16Section.h - PIC16-specific section representation ---*- C++ -*-===//
3 // The LLVM Compiler Infrastructure
5 // This file is distributed under the University of Illinois Open Source
6 // License. See LICENSE.TXT for details.
8 //===----------------------------------------------------------------------===//
10 // This file declares the MCSection class.
12 //===----------------------------------------------------------------------===//
14 #ifndef LLVM_PIC16SECTION_H
15 #define LLVM_PIC16SECTION_H
17 #include "llvm/MC/MCSection.h"
18 #include "llvm/MC/MCContext.h"
19 #include "llvm/Support/raw_ostream.h"
23 class MCSectionPIC16 : public MCSection {
24 MCSectionPIC16(const StringRef &Name, bool IsDirective, SectionKind K,
25 MCContext &Ctx) : MCSection(Name, IsDirective, K, Ctx) {}
28 static MCSectionPIC16 *Create(const StringRef &Name, bool IsDirective,
29 SectionKind K, MCContext &Ctx) {
30 return new (Ctx) MCSectionPIC16(Name, IsDirective, K, Ctx);
34 virtual void PrintSwitchToSection(const TargetAsmInfo &TAI,
35 raw_ostream &OS) const {
36 OS << getName() << '\n';
41 } // end namespace llvm