go through PIC16TargetObjectFile to make sections instead of

creating them directly in the pic16 asmprinter.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78317 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Chris Lattner
2009-08-06 16:27:28 +00:00
parent fc60eb4033
commit 759b88898d
4 changed files with 26 additions and 12 deletions

View File

@ -16,8 +16,7 @@
using namespace llvm;
PIC16TargetObjectFile::PIC16TargetObjectFile()
: ExternalVarDecls(0), ExternalVarDefs(0)
{
: ExternalVarDecls(0), ExternalVarDefs(0) {
}
void PIC16TargetObjectFile::Initialize(MCContext &Ctx, const TargetMachine &tm){
@ -47,6 +46,18 @@ void PIC16TargetObjectFile::Initialize(MCContext &Ctx, const TargetMachine &tm){
SectionKind::getMetadata()));
}
const MCSection *PIC16TargetObjectFile::
getSectionForFunction(const std::string &FnName) const {
std::string T = PAN::getCodeSectionName(FnName);
return getOrCreateSection(T.c_str(), false, SectionKind::getText());
}
const MCSection *PIC16TargetObjectFile::
getSectionForFunctionFrame(const std::string &FnName) const {
std::string T = PAN::getFrameSectionName(FnName);
return getOrCreateSection(T.c_str(), false, SectionKind::getDataRel());
}
const MCSection *
PIC16TargetObjectFile::getBSSSectionForGlobal(const GlobalVariable *GV) const {