Tracks virtual register interference across slot indexes and register units.

Synopsis

Declared in <llvm/CodeGen/LiveRegMatrix.h>

class LiveRegMatrix;

Enums

Name

Description

InterferenceKind

Kinds of interference that can block assignment of a virtual register.

Member Functions

Name

Description

LiveRegMatrix [constructor]

Move‐construct a LiveRegMatrix.

assign

Assign VirtReg to PhysReg.

checkInterference

checkInterference overloads

checkInterferenceLanes

Check for lane‐level interference in a segment for PhysReg.

checkRegMaskInterference

Check for regmask interference only.

checkRegUnitInterference

Check for regunit interference only.

getLiveUnions

Directly access the live interval unions per regunit.

getOneVReg

Return one virtual register currently assigned to PhysReg.

init

Initialize the matrix for machine function MF.

invalidateVirtRegs

Invalidate cached interference queries.

isPhysRegUsed

Returns true if the given PhysReg has any live intervals assigned.

isValid

Check that each LiveInterval referenced in LiveIntervalUnion exists.

query

Query a line of the assigned virtual register matrix directly.

unassign

Unassign VirtReg from its physical register.

Friends

Name

Description

llvm::LiveRegMatrixAnalysis

Analysis pass that computes LiveRegMatrix for a machine function.

llvm::LiveRegMatrixWrapperLegacy

Legacy MachineFunctionPass wrapper that computes and owns LiveRegMatrix.

Created with MrDocs