Lines Matching refs:MachineInstr

83   static bool canHandle(const MachineInstr *MI);
88 bool canReorder(const MachineInstr *A, const MachineInstr *B);
101 Optional<ArrayRef<MachineInstr *>::iterator> PotentialDependence;
105 Optional<ArrayRef<MachineInstr *>::iterator> PotentialDependence) in DependenceResult()
117 DependenceResult computeDependence(const MachineInstr *MI,
118 ArrayRef<MachineInstr *> Block);
123 MachineInstr *MemOperation;
126 MachineInstr *CheckOperation;
139 MachineInstr *OnlyDependency;
142 explicit NullCheck(MachineInstr *memOperation, MachineInstr *checkOperation, in NullCheck()
146 MachineInstr *onlyDependency) in NullCheck()
151 MachineInstr *getMemOperation() const { return MemOperation; } in getMemOperation()
153 MachineInstr *getCheckOperation() const { return CheckOperation; } in getCheckOperation()
161 MachineInstr *getOnlyDependency() const { return OnlyDependency; } in getOnlyDependency()
171 MachineInstr *insertFaultingInstr(MachineInstr *MI, MachineBasicBlock *MBB,
184 AliasResult areMemoryOpsAliased(MachineInstr &MI, MachineInstr *PrevMI);
198 SuitabilityResult isSuitableMemoryOp(MachineInstr &MI, unsigned PointerReg,
199 ArrayRef<MachineInstr *> PrevInsts);
204 bool canHoistInst(MachineInstr *FaultingMI, unsigned PointerReg,
205 ArrayRef<MachineInstr *> InstsSeenSoFar,
206 MachineBasicBlock *NullSucc, MachineInstr *&Dependence);
230 bool ImplicitNullChecks::canHandle(const MachineInstr *MI) { in canHandle()
244 ImplicitNullChecks::computeDependence(const MachineInstr *MI, in computeDependence()
245 ArrayRef<MachineInstr *> Block) { in computeDependence()
249 Optional<ArrayRef<MachineInstr *>::iterator> Dep; in computeDependence()
267 bool ImplicitNullChecks::canReorder(const MachineInstr *A, in canReorder()
268 const MachineInstr *B) { in canReorder()
322 ImplicitNullChecks::areMemoryOpsAliased(MachineInstr &MI, in areMemoryOpsAliased()
323 MachineInstr *PrevMI) { in areMemoryOpsAliased()
360 ImplicitNullChecks::isSuitableMemoryOp(MachineInstr &MI, unsigned PointerReg, in isSuitableMemoryOp()
361 ArrayRef<MachineInstr *> PrevInsts) { in isSuitableMemoryOp()
386 bool ImplicitNullChecks::canHoistInst(MachineInstr *FaultingMI, in canHoistInst()
388 ArrayRef<MachineInstr *> InstsSeenSoFar, in canHoistInst()
390 MachineInstr *&Dependence) { in canHoistInst()
579 SmallVector<MachineInstr *, 8> InstsSeenSoFar; in analyzeBlockForNullChecks()
585 MachineInstr *Dependence; in analyzeBlockForNullChecks()
612 MachineInstr *ImplicitNullChecks::insertFaultingInstr( in insertFaultingInstr()
613 MachineInstr *MI, MachineBasicBlock *MBB, MachineBasicBlock *HandlerMBB) { in insertFaultingInstr()
679 MachineInstr *FaultingInstr = insertFaultingInstr( in rewriteNullChecks()