Lines Matching refs:VReg
286 Optional<APInt> llvm::getIConstantVRegVal(Register VReg, in getIConstantVRegVal() argument
289 VReg, MRI, /*LookThroughInstrs*/ false); in getIConstantVRegVal()
290 assert((!ValAndVReg || ValAndVReg->VReg == VReg) && in getIConstantVRegVal()
298 llvm::getIConstantVRegSExtVal(Register VReg, const MachineRegisterInfo &MRI) { in getIConstantVRegSExtVal() argument
299 Optional<APInt> Val = getIConstantVRegVal(VReg, MRI); in getIConstantVRegSExtVal()
311 Register VReg, const MachineRegisterInfo &MRI, IsOpcodeFn IsConstantOpcode, in getConstantVRegValWithLookThrough() argument
317 while ((MI = MRI.getVRegDef(VReg)) && !IsConstantOpcode(MI) && in getConstantVRegValWithLookThrough()
330 VReg = MI->getOperand(1).getReg(); in getConstantVRegValWithLookThrough()
333 VReg = MI->getOperand(1).getReg(); in getConstantVRegValWithLookThrough()
334 if (Register::isPhysicalRegister(VReg)) in getConstantVRegValWithLookThrough()
338 VReg = MI->getOperand(1).getReg(); in getConstantVRegValWithLookThrough()
367 return ValueAndVReg{Val, VReg}; in getConstantVRegValWithLookThrough()
408 Register VReg, const MachineRegisterInfo &MRI, bool LookThroughInstrs) { in getIConstantVRegValWithLookThrough() argument
409 return getConstantVRegValWithLookThrough(VReg, MRI, isIConstant, in getIConstantVRegValWithLookThrough()
414 Register VReg, const MachineRegisterInfo &MRI, bool LookThroughInstrs, in getAnyConstantVRegValWithLookThrough() argument
417 VReg, MRI, isAnyConstant, getCImmOrFPImmAsAPInt, LookThroughInstrs, in getAnyConstantVRegValWithLookThrough()
422 Register VReg, const MachineRegisterInfo &MRI, bool LookThroughInstrs) { in getFConstantVRegValWithLookThrough() argument
424 VReg, MRI, isFConstant, getCImmOrFPImmAsAPInt, LookThroughInstrs); in getFConstantVRegValWithLookThrough()
427 return FPValueAndVReg{getConstantFPVRegVal(Reg->VReg, MRI)->getValueAPF(), in getFConstantVRegValWithLookThrough()
428 Reg->VReg}; in getFConstantVRegValWithLookThrough()
432 llvm::getConstantFPVRegVal(Register VReg, const MachineRegisterInfo &MRI) { in getConstantFPVRegVal() argument
433 MachineInstr *MI = MRI.getVRegDef(VReg); in getConstantFPVRegVal()
1021 Optional<ValueAndVReg> getAnyConstantSplat(Register VReg, in getAnyConstantSplat() argument
1024 MachineInstr *MI = getDefIgnoringCopies(VReg, MRI); in getAnyConstantSplat()
1062 return mi_match(SplatValAndReg->VReg, MRI, m_SpecificICst(SplatValue)); in isBuildVectorConstantSplat()
1078 getIConstantVRegValWithLookThrough(SplatValAndReg->VReg, MRI); in getIConstantSplatVal()
1095 return getIConstantVRegSExtVal(SplatValAndReg->VReg, MRI); in getIConstantSplatSExtVal()
1105 Optional<FPValueAndVReg> llvm::getFConstantSplat(Register VReg, in getFConstantSplat() argument
1108 if (auto SplatValAndReg = getAnyConstantSplat(VReg, MRI, AllowUndef)) in getFConstantSplat()
1109 return getFConstantVRegValWithLookThrough(SplatValAndReg->VReg, MRI); in getFConstantSplat()