class MCLOHContainer

Declaration

class MCLOHContainer { /* full declaration omitted */ };

Declared at: llvm/include/llvm/MC/MCLinkerOptimizationHint.h:136

Member Variables

private uint64_t EmitSize = 0
Keep track of the emit size of all the LOHs.
private SmallVector<llvm::MCLOHDirective, 32> Directives
Keep track of all LOH directives.

Method Overview

  • public MCLOHContainer()
  • public void addDirective(llvm::MCLOHType Kind, const MCLOHDirective::LOHArgs & Args)
  • public void emit(llvm::MachObjectWriter & ObjWriter, const llvm::MCAsmLayout & Layout) const
  • public const llvm::MCLOHContainer::LOHDirectives & getDirectives() const
  • public uint64_t getEmitSize(const llvm::MachObjectWriter & ObjWriter, const llvm::MCAsmLayout & Layout) const
  • public void reset()

Methods

MCLOHContainer()

Declared at: llvm/include/llvm/MC/MCLinkerOptimizationHint.h:146

void addDirective(
    llvm::MCLOHType Kind,
    const MCLOHDirective::LOHArgs& Args)

Description

Add the directive of the given kind \p Kind with the given arguments\p Args to the container.

Declared at: llvm/include/llvm/MC/MCLinkerOptimizationHint.h:155

Parameters

llvm::MCLOHType Kind
const MCLOHDirective::LOHArgs& Args

void emit(llvm::MachObjectWriter& ObjWriter,
          const llvm::MCAsmLayout& Layout) const

Description

Emit all Linker Optimization Hint in one big table. Each line of the table is emitted by LOHDirective::emit.

Declared at: llvm/include/llvm/MC/MCLinkerOptimizationHint.h:171

Parameters

llvm::MachObjectWriter& ObjWriter
const llvm::MCAsmLayout& Layout

const llvm::MCLOHContainer::LOHDirectives&
getDirectives() const

Description

Const accessor to the directives.

Declared at: llvm/include/llvm/MC/MCLinkerOptimizationHint.h:149

uint64_t getEmitSize(
    const llvm::MachObjectWriter& ObjWriter,
    const llvm::MCAsmLayout& Layout) const

Description

Get the size of the directives if emitted.

Declared at: llvm/include/llvm/MC/MCLinkerOptimizationHint.h:160

Parameters

const llvm::MachObjectWriter& ObjWriter
const llvm::MCAsmLayout& Layout

void reset()

Declared at: llvm/include/llvm/MC/MCLinkerOptimizationHint.h:176