llvm::AntiDepBreaker

This class works in conjunction with the post-RA scheduler to rename registers to break register anti-dependencies (WAR hazards).

Synopsis

Declared in <llvm/CodeGen/AntiDepBreaker.h>

class AntiDepBreaker;

Type Aliases

NameDescription
DbgValueVector Pairs of DBG_VALUE (or DBG_PHI) instructions with the parent instruction whose register rename may affect them.

Member Functions

NameDescription
~AntiDepBreaker [destructor] [virtual]Virtual destructor.
BreakAntiDependencies [virtual]Identify anti-dependencies within a basic-block region and break them by renaming registers.
FinishBlock [virtual]Finish anti-dep breaking for a basic block.
Observe [virtual]Update liveness information to account for the current instruction, which will not be scheduled.
StartBlock [virtual]Initialize anti-dep breaking for a new basic block.
UpdateDbgValue Update DBG_VALUE or DBG_PHI if dependency breaker is updating other machine instruction to use NewReg.
UpdateDbgValues Update all DBG_VALUE instructions that may be affected by the dependency breaker's update of ParentMI to use NewReg.

Non-Member Functions

NameDescription
createAggressiveAntiDepBreakerCreate an aggressive anti-dependence breaker.
createCriticalAntiDepBreakerCreate a critical-path anti-dependence breaker.