class GISelCSEInfo

Declaration

class GISelCSEInfo : public GISelChangeObserver { /* full declaration omitted */ };

Declared at: llvm/include/llvm/CodeGen/GlobalISel/CSEInfo.h:71

Inherits from: GISelChangeObserver

Method Overview

Inherited from GISelChangeObserver:

Methods

GISelCSEInfo()

Declared at: llvm/include/llvm/CodeGen/GlobalISel/CSEInfo.h:117

void analyze(llvm::MachineFunction& MF)

Declared at: llvm/include/llvm/CodeGen/GlobalISel/CSEInfo.h:150

Parameters

llvm::MachineFunction& MF

void changedInstr(llvm::MachineInstr& MI)

Description

This instruction was mutated in some way.

Declared at: llvm/include/llvm/CodeGen/GlobalISel/CSEInfo.h:160

Parameters

llvm::MachineInstr& MI

void changingInstr(llvm::MachineInstr& MI)

Description

This instruction is about to be mutated in some way.

Declared at: llvm/include/llvm/CodeGen/GlobalISel/CSEInfo.h:159

Parameters

llvm::MachineInstr& MI

void countOpcodeHit(unsigned int Opc)

Declared at: llvm/include/llvm/CodeGen/GlobalISel/CSEInfo.h:152

Parameters

unsigned int Opc

void createdInstr(llvm::MachineInstr& MI)

Description

An instruction has been created and inserted into the function. Note that the instruction might not be a fully fledged instruction at this point and won't be if the MachineFunction::Delegate is calling it. This is because the delegate only sees the construction of the MachineInstr before operands have been added.

Declared at: llvm/include/llvm/CodeGen/GlobalISel/CSEInfo.h:158

Parameters

llvm::MachineInstr& MI

void erasingInstr(llvm::MachineInstr& MI)

Description

An instruction is about to be erased.

Declared at: llvm/include/llvm/CodeGen/GlobalISel/CSEInfo.h:157

Parameters

llvm::MachineInstr& MI

void handleRecordedInst(llvm::MachineInstr* MI)

Description

Use this callback to inform CSE about a newly fully created instruction.

Declared at: llvm/include/llvm/CodeGen/GlobalISel/CSEInfo.h:131

Parameters

llvm::MachineInstr* MI

void handleRecordedInsts()

Description

Use this callback to insert all the recorded instructions. At this point, all of these insts need to be fully constructed and should not be missing any operands.

Declared at: llvm/include/llvm/CodeGen/GlobalISel/CSEInfo.h:136

void handleRemoveInst(llvm::MachineInstr* MI)

Description

Remove this inst from the CSE map. If this inst has not been inserted yet, it will be removed from the Tempinsts list if it exists.

Declared at: llvm/include/llvm/CodeGen/GlobalISel/CSEInfo.h:140

Parameters

llvm::MachineInstr* MI

void print()

Declared at: llvm/include/llvm/CodeGen/GlobalISel/CSEInfo.h:154

void recordNewInstruction(llvm::MachineInstr* MI)

Description

Records a newly created inst in a list and lazily insert it to the CSEMap. Sometimes, this method might be called with a partially constructed MachineInstr,

Declared at: llvm/include/llvm/CodeGen/GlobalISel/CSEInfo.h:128

Parameters

llvm::MachineInstr* MI

void releaseMemory()

Declared at: llvm/include/llvm/CodeGen/GlobalISel/CSEInfo.h:142

void setCSEConfig(int Opt)

Declared at: llvm/include/llvm/CodeGen/GlobalISel/CSEInfo.h:144

Parameters

int Opt

void setMF(llvm::MachineFunction& MF)

Declared at: llvm/include/llvm/CodeGen/GlobalISel/CSEInfo.h:121

Parameters

llvm::MachineFunction& MF

bool shouldCSE(unsigned int Opc) const

Declared at: llvm/include/llvm/CodeGen/GlobalISel/CSEInfo.h:148

Parameters

unsigned int Opc

virtual ~GISelCSEInfo()

Declared at: llvm/include/llvm/CodeGen/GlobalISel/CSEInfo.h:119