#include "llvm/CodeGen/ExecutionDomainFix.h"
#include "llvm/CodeGen/MachineRegisterInfo.h"
#include "llvm/CodeGen/TargetInstrInfo.h"
#include "llvm/Support/Debug.h"
usingnamespacellvm;
#define DEBUG_TYPE …
iterator_range<SmallVectorImpl<int>::const_iterator>
ExecutionDomainFix::regIndices(unsigned Reg) const { … }
DomainValue *ExecutionDomainFix::alloc(int domain) { … }
void ExecutionDomainFix::release(DomainValue *DV) { … }
DomainValue *ExecutionDomainFix::resolve(DomainValue *&DVRef) { … }
void ExecutionDomainFix::setLiveReg(int rx, DomainValue *dv) { … }
void ExecutionDomainFix::kill(int rx) { … }
void ExecutionDomainFix::force(int rx, unsigned domain) { … }
void ExecutionDomainFix::collapse(DomainValue *dv, unsigned domain) { … }
bool ExecutionDomainFix::merge(DomainValue *A, DomainValue *B) { … }
void ExecutionDomainFix::enterBasicBlock(
const LoopTraversal::TraversedMBBInfo &TraversedMBB) { … }
void ExecutionDomainFix::leaveBasicBlock(
const LoopTraversal::TraversedMBBInfo &TraversedMBB) { … }
bool ExecutionDomainFix::visitInstr(MachineInstr *MI) { … }
void ExecutionDomainFix::processDefs(MachineInstr *MI, bool Kill) { … }
void ExecutionDomainFix::visitHardInstr(MachineInstr *mi, unsigned domain) { … }
void ExecutionDomainFix::visitSoftInstr(MachineInstr *mi, unsigned mask) { … }
void ExecutionDomainFix::processBasicBlock(
const LoopTraversal::TraversedMBBInfo &TraversedMBB) { … }
bool ExecutionDomainFix::runOnMachineFunction(MachineFunction &mf) { … }