1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-24 11:42:57 +01:00

add new PIC16Section class, this time hopefully not breaking the build :)

llvm-svn: 78505
This commit is contained in:
Chris Lattner 2009-08-08 21:37:01 +00:00
parent 246602757e
commit 8329a281b2
3 changed files with 40 additions and 2 deletions

View File

@ -0,0 +1,37 @@
//===- PIC16Section.h - PIC16-specific section representation ---*- C++ -*-===//
//
// The LLVM Compiler Infrastructure
//
// This file is distributed under the University of Illinois Open Source
// License. See LICENSE.TXT for details.
//
//===----------------------------------------------------------------------===//
//
// This file declares the MCSection class.
//
//===----------------------------------------------------------------------===//
#ifndef LLVM_PIC16SECTION_H
#define LLVM_PIC16SECTION_H
#include "llvm/MC/MCSection.h"
#include "llvm/MC/MCContext.h"
namespace llvm {
class MCSectionPIC16 : public MCSection {
MCSectionPIC16(const StringRef &Name, bool IsDirective, SectionKind K,
MCContext &Ctx) : MCSection(Name, IsDirective, K, Ctx) {}
public:
static MCSectionPIC16 *Create(const StringRef &Name, bool IsDirective,
SectionKind K, MCContext &Ctx) {
return new (Ctx) MCSectionPIC16(Name, IsDirective, K, Ctx);
}
};
} // end namespace llvm
#endif

View File

@ -8,6 +8,7 @@
//===----------------------------------------------------------------------===//
#include "PIC16TargetObjectFile.h"
#include "PIC16Section.h"
#include "PIC16ISelLowering.h"
#include "PIC16TargetMachine.h"
#include "llvm/DerivedTypes.h"
@ -24,7 +25,7 @@ const MCSection *PIC16TargetObjectFile::
getPIC16Section(const char *Name, bool isDirective, SectionKind Kind) const {
if (MCSection *S = getContext().GetSection(Name))
return S;
return MCSection::Create(Name, isDirective, Kind, getContext());
return MCSectionPIC16::Create(Name, isDirective, Kind, getContext());
}

View File

@ -26,7 +26,7 @@ namespace llvm {
/// again and printing only those that match the current section.
/// Keeping values inside the sections make printing a section much easier.
///
/// FIXME: Reimplement by inheriting from MCSection.
/// FIXME: MOVE ALL THIS STUFF TO MCSectionPIC16.
///
struct PIC16Section {
const MCSection *S_; // Connection to actual Section.