class TargetLoweringObjectFileXCOFF

Declaration

class TargetLoweringObjectFileXCOFF : public TargetLoweringObjectFile { /* full declaration omitted */ };

Declared at: llvm/include/llvm/CodeGen/TargetLoweringObjectFileImpl.h:211

Inherits from: TargetLoweringObjectFile

Method Overview

Methods

void Initialize(llvm::MCContext& Ctx,
                const llvm::TargetMachine& TM)

Description

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.

Declared at: llvm/include/llvm/CodeGen/TargetLoweringObjectFileImpl.h:216

Parameters

llvm::MCContext& Ctx
const llvm::TargetMachine& TM

llvm::MCSection* SelectSectionForGlobal(
    const llvm::GlobalObject* GO,
    llvm::SectionKind Kind,
    const llvm::TargetMachine& TM) const

Declared at: llvm/include/llvm/CodeGen/TargetLoweringObjectFileImpl.h:233

Parameters

const llvm::GlobalObject* GO
llvm::SectionKind Kind
const llvm::TargetMachine& TM

TargetLoweringObjectFileXCOFF()

Declared at: llvm/include/llvm/CodeGen/TargetLoweringObjectFileImpl.h:213

llvm::MCSection* getExplicitSectionGlobal(
    const llvm::GlobalObject* GO,
    llvm::SectionKind Kind,
    const llvm::TargetMachine& TM) const

Description

Targets should implement this method to assign a section to globals with an explicit section specfied. The implementation of this method can assume that GO->hasSection() is true.

Declared at: llvm/include/llvm/CodeGen/TargetLoweringObjectFileImpl.h:221

Parameters

const llvm::GlobalObject* GO
llvm::SectionKind Kind
const llvm::TargetMachine& TM

llvm::MCSection* getSectionForConstant(
    const llvm::DataLayout& DL,
    llvm::SectionKind Kind,
    const llvm::Constant* C,
    unsigned int& Align) const

Description

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

Declared at: llvm/include/llvm/CodeGen/TargetLoweringObjectFileImpl.h:241

Parameters

const llvm::DataLayout& DL
llvm::SectionKind Kind
const llvm::Constant* C
unsigned int& Align

llvm::MCSection* getSectionForJumpTable(
    const llvm::Function& F,
    const llvm::TargetMachine& TM) const

Declared at: llvm/include/llvm/CodeGen/TargetLoweringObjectFileImpl.h:236

Parameters

const llvm::Function& F
const llvm::TargetMachine& TM

llvm::MCSection* getStaticCtorSection(
    unsigned int Priority,
    const llvm::MCSymbol* KeySym) const

Declared at: llvm/include/llvm/CodeGen/TargetLoweringObjectFileImpl.h:224

Parameters

unsigned int Priority
const llvm::MCSymbol* KeySym

llvm::MCSection* getStaticDtorSection(
    unsigned int Priority,
    const llvm::MCSymbol* KeySym) const

Declared at: llvm/include/llvm/CodeGen/TargetLoweringObjectFileImpl.h:226

Parameters

unsigned int Priority
const llvm::MCSymbol* KeySym

static XCOFF::StorageClass
getStorageClassForGlobal(
    const llvm::GlobalObject* GO)

Declared at: llvm/include/llvm/CodeGen/TargetLoweringObjectFileImpl.h:245

Parameters

const llvm::GlobalObject* GO

const llvm::MCExpr* lowerRelativeReference(
    const llvm::GlobalValue* LHS,
    const llvm::GlobalValue* RHS,
    const llvm::TargetMachine& TM) const

Declared at: llvm/include/llvm/CodeGen/TargetLoweringObjectFileImpl.h:229

Parameters

const llvm::GlobalValue* LHS
const llvm::GlobalValue* RHS
const llvm::TargetMachine& TM

bool shouldPutJumpTableInFunctionSection(
    bool UsesLabelDifference,
    const llvm::Function& F) const

Declared at: llvm/include/llvm/CodeGen/TargetLoweringObjectFileImpl.h:218

Parameters

bool UsesLabelDifference
const llvm::Function& F

~TargetLoweringObjectFileXCOFF()

Declared at: llvm/include/llvm/CodeGen/TargetLoweringObjectFileImpl.h:214