LLVM API Documentation
#include <MipsTargetObjectFile.h>


Public Member Functions | |
| void | Initialize (MCContext &Ctx, const TargetMachine &TM) |
| bool | IsGlobalInSmallSection (const GlobalValue *GV, const TargetMachine &TM, SectionKind Kind) const |
| bool | IsGlobalInSmallSection (const GlobalValue *GV, const TargetMachine &TM) const |
| const MCSection * | SelectSectionForGlobal (const GlobalValue *GV, SectionKind Kind, Mangler *Mang, const TargetMachine &TM) const |
| const MCSection * | getReginfoSection () const |
Definition at line 17 of file MipsTargetObjectFile.h.
| const MCSection* llvm::MipsTargetObjectFile::getReginfoSection | ( | ) | const [inline] |
Definition at line 39 of file MipsTargetObjectFile.h.
Referenced by llvm::MipsReginfo::emitMipsReginfoSectionCG().
| void MipsTargetObjectFile::Initialize | ( | MCContext & | ctx, |
| const TargetMachine & | TM | ||
| ) | [virtual] |
Initialize - this method must be called before any actual lowering is done. This specifies the current context for codegen, and gives the lowering implementations a chance to set up their default sections.
Reimplemented from llvm::TargetLoweringObjectFile.
Definition at line 27 of file MipsTargetObjectFile.cpp.
References llvm::SectionKind::getBSS(), llvm::TargetLoweringObjectFile::getContext(), llvm::SectionKind::getDataRel(), llvm::MCContext::getELFSection(), llvm::SectionKind::getMetadata(), llvm::TargetMachine::getSubtarget(), llvm::TargetLoweringObjectFileELF::InitializeELF(), llvm::MipsSubtarget::isABI_N32(), llvm::MipsSubtarget::isABI_N64(), llvm::TargetMachine::Options, llvm::ELF::SHF_ALLOC, llvm::ELF::SHF_MIPS_NOSTRIP, llvm::ELF::SHF_WRITE, llvm::ELF::SHT_MIPS_OPTIONS, llvm::ELF::SHT_MIPS_REGINFO, llvm::ELF::SHT_NOBITS, llvm::ELF::SHT_PROGBITS, and llvm::TargetOptions::UseInitArray.
| bool MipsTargetObjectFile::IsGlobalInSmallSection | ( | const GlobalValue * | GV, |
| const TargetMachine & | TM, | ||
| SectionKind | Kind | ||
| ) | const |
IsGlobalInSmallSection - Return true if this global address should be placed into small data/bss section.
Definition at line 75 of file MipsTargetObjectFile.cpp.
References llvm::dyn_cast(), llvm::TargetMachine::getDataLayout(), llvm::SequentialType::getElementType(), llvm::TargetMachine::getSubtarget(), llvm::GlobalValue::getType(), llvm::DataLayout::getTypeAllocSize(), llvm::SectionKind::isBSS(), llvm::SectionKind::isDataRel(), IsInSmallSection(), llvm::SectionKind::isMergeable1ByteCString(), and llvm::MipsSubtarget::useSmallSection().
Referenced by IsGlobalInSmallSection(), and SelectSectionForGlobal().
| bool MipsTargetObjectFile::IsGlobalInSmallSection | ( | const GlobalValue * | GV, |
| const TargetMachine & | TM | ||
| ) | const |
Definition at line 64 of file MipsTargetObjectFile.cpp.
References llvm::TargetLoweringObjectFile::getKindForGlobal(), llvm::GlobalValue::hasAvailableExternallyLinkage(), llvm::GlobalValue::isDeclaration(), and IsGlobalInSmallSection().
| const MCSection * MipsTargetObjectFile::SelectSectionForGlobal | ( | const GlobalValue * | GV, |
| SectionKind | Kind, | ||
| Mangler * | Mang, | ||
| const TargetMachine & | TM | ||
| ) | const [virtual] |
Reimplemented from llvm::TargetLoweringObjectFileELF.
Definition at line 105 of file MipsTargetObjectFile.cpp.
References llvm::SectionKind::isBSS(), llvm::SectionKind::isDataNoRel(), and IsGlobalInSmallSection().