Lines Matching defs:virtReg
92 bool hasPhys(unsigned virtReg) const {
93 return getPhys(virtReg) != NO_PHYS_REG;
98 unsigned getPhys(unsigned virtReg) const {
99 assert(TargetRegisterInfo::isVirtualRegister(virtReg));
100 return Virt2PhysMap[virtReg];
105 void assignVirt2Phys(unsigned virtReg, unsigned physReg) {
106 assert(TargetRegisterInfo::isVirtualRegister(virtReg) &&
108 assert(Virt2PhysMap[virtReg] == NO_PHYS_REG &&
111 Virt2PhysMap[virtReg] = physReg;
116 void clearVirt(unsigned virtReg) {
117 assert(TargetRegisterInfo::isVirtualRegister(virtReg));
118 assert(Virt2PhysMap[virtReg] != NO_PHYS_REG &&
120 Virt2PhysMap[virtReg] = NO_PHYS_REG;
130 unsigned getRegAllocPref(unsigned virtReg);
137 /// @brief records virtReg is a split live interval from SReg.
138 void setIsSplitFromReg(unsigned virtReg, unsigned SReg) {
139 Virt2SplitMap[virtReg] = SReg;
142 /// @brief returns the live interval virtReg is split from.
143 unsigned getPreSplitReg(unsigned virtReg) const {
144 return Virt2SplitMap[virtReg];
158 bool isAssignedReg(unsigned virtReg) const {
159 if (getStackSlot(virtReg) == NO_STACK_SLOT)
163 return (Virt2SplitMap[virtReg] && Virt2PhysMap[virtReg] != NO_PHYS_REG);
168 int getStackSlot(unsigned virtReg) const {
169 assert(TargetRegisterInfo::isVirtualRegister(virtReg));
170 return Virt2StackSlotMap[virtReg];
175 int assignVirt2StackSlot(unsigned virtReg);
178 void assignVirt2StackSlot(unsigned virtReg, int frameIndex);