LLVM  mainline
Public Member Functions
llvm::TargetLoweringObjectFileELF Class Reference

#include <TargetLoweringObjectFileImpl.h>

Inheritance diagram for llvm::TargetLoweringObjectFileELF:
Inheritance graph
[legend]
Collaboration diagram for llvm::TargetLoweringObjectFileELF:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 TargetLoweringObjectFileELF ()
 ~TargetLoweringObjectFileELF () override
void emitPersonalityValue (MCStreamer &Streamer, const TargetMachine &TM, const MCSymbol *Sym) const override
MCSectiongetSectionForConstant (SectionKind Kind, const Constant *C) const override
 Given a constant with the SectionKind, return a section that it should be placed in.
MCSectiongetExplicitSectionGlobal (const GlobalValue *GV, SectionKind Kind, Mangler &Mang, const TargetMachine &TM) const override
 Targets should implement this method to assign a section to globals with an explicit section specfied.
MCSectionSelectSectionForGlobal (const GlobalValue *GV, SectionKind Kind, Mangler &Mang, const TargetMachine &TM) const override
MCSectiongetSectionForJumpTable (const Function &F, Mangler &Mang, const TargetMachine &TM) const override
bool shouldPutJumpTableInFunctionSection (bool UsesLabelDifference, const Function &F) const override
const MCExprgetTTypeGlobalReference (const GlobalValue *GV, unsigned Encoding, Mangler &Mang, const TargetMachine &TM, MachineModuleInfo *MMI, MCStreamer &Streamer) const override
 Return an MCExpr to use for a reference to the specified type info global variable from exception handling information.
MCSymbolgetCFIPersonalitySymbol (const GlobalValue *GV, Mangler &Mang, const TargetMachine &TM, MachineModuleInfo *MMI) const override
void InitializeELF (bool UseInitArray_)
MCSectiongetStaticCtorSection (unsigned Priority, const MCSymbol *KeySym) const override
MCSectiongetStaticDtorSection (unsigned Priority, const MCSymbol *KeySym) const override

Detailed Description

Definition at line 35 of file TargetLoweringObjectFileImpl.h.


Constructor & Destructor Documentation

Definition at line 40 of file TargetLoweringObjectFileImpl.h.

Definition at line 42 of file TargetLoweringObjectFileImpl.h.


Member Function Documentation

void TargetLoweringObjectFileELF::emitPersonalityValue ( MCStreamer Streamer,
const TargetMachine TM,
const MCSymbol Sym 
) const [override, virtual]
MCSection * TargetLoweringObjectFileELF::getExplicitSectionGlobal ( const GlobalValue GV,
SectionKind  Kind,
Mangler Mang,
const TargetMachine TM 
) const [override, virtual]

Targets should implement this method to assign a section to globals with an explicit section specfied.

The implementation of this method can assume that GV->hasSection() is true.

Implements llvm::TargetLoweringObjectFile.

Reimplemented in llvm::XCoreTargetObjectFile.

Definition at line 202 of file TargetLoweringObjectFileImpl.cpp.

References llvm::C, getELFComdat(), getELFKindForNamedSection(), getELFSectionFlags(), getELFSectionType(), llvm::GlobalValue::getSection(), and llvm::ELF::SHF_GROUP.

Given a constant with the SectionKind, return a section that it should be placed in.

Given a mergeable constant with the specified size and relocation information, return a section that it should be placed in.

Reimplemented from llvm::TargetLoweringObjectFile.

Reimplemented in llvm::MipsTargetObjectFile, and llvm::XCoreTargetObjectFile.

Definition at line 353 of file TargetLoweringObjectFileImpl.cpp.

References llvm::SectionKind::isMergeableConst16(), llvm::SectionKind::isMergeableConst4(), llvm::SectionKind::isMergeableConst8(), llvm::SectionKind::isReadOnly(), llvm::SectionKind::isReadOnlyWithRel(), and llvm::SectionKind::isReadOnlyWithRelLocal().

MCSection * TargetLoweringObjectFileELF::getSectionForJumpTable ( const Function F,
Mangler Mang,
const TargetMachine TM 
) const [override, virtual]
MCSection * TargetLoweringObjectFileELF::getStaticCtorSection ( unsigned  Priority,
const MCSymbol KeySym 
) const [override, virtual]

Reimplemented from llvm::TargetLoweringObjectFile.

Definition at line 409 of file TargetLoweringObjectFileImpl.cpp.

References getStaticStructorSection().

MCSection * TargetLoweringObjectFileELF::getStaticDtorSection ( unsigned  Priority,
const MCSymbol KeySym 
) const [override, virtual]

Reimplemented from llvm::TargetLoweringObjectFile.

Definition at line 415 of file TargetLoweringObjectFileImpl.cpp.

References getStaticStructorSection().

const MCExpr * TargetLoweringObjectFileELF::getTTypeGlobalReference ( const GlobalValue GV,
unsigned  Encoding,
Mangler Mang,
const TargetMachine TM,
MachineModuleInfo MMI,
MCStreamer Streamer 
) const [override, virtual]
MCSection * TargetLoweringObjectFileELF::SelectSectionForGlobal ( const GlobalValue GV,
SectionKind  Kind,
Mangler Mang,
const TargetMachine TM 
) const [override, virtual]
bool TargetLoweringObjectFileELF::shouldPutJumpTableInFunctionSection ( bool  UsesLabelDifference,
const Function F 
) const [override, virtual]

Reimplemented from llvm::TargetLoweringObjectFile.

Definition at line 343 of file TargetLoweringObjectFileImpl.cpp.


The documentation for this class was generated from the following files: