Lines Matching refs:AddrInst
3538 bool matchOperationAddr(User *AddrInst, unsigned Opcode, unsigned Depth,
4811 bool AddressingModeMatcher::matchOperationAddr(User *AddrInst, unsigned Opcode, in matchOperationAddr() argument
4825 return matchAddr(AddrInst->getOperand(0), Depth); in matchOperationAddr()
4827 auto AS = AddrInst->getType()->getPointerAddressSpace(); in matchOperationAddr()
4830 if (TLI.getValueType(DL, AddrInst->getOperand(0)->getType()) == PtrTy) in matchOperationAddr()
4831 return matchAddr(AddrInst->getOperand(0), Depth); in matchOperationAddr()
4837 if (AddrInst->getOperand(0)->getType()->isIntOrPtrTy() && in matchOperationAddr()
4841 AddrInst->getOperand(0)->getType() != AddrInst->getType()) in matchOperationAddr()
4842 return matchAddr(AddrInst->getOperand(0), Depth); in matchOperationAddr()
4846 AddrInst->getOperand(0)->getType()->getPointerAddressSpace(); in matchOperationAddr()
4847 unsigned DestAS = AddrInst->getType()->getPointerAddressSpace(); in matchOperationAddr()
4849 return matchAddr(AddrInst->getOperand(0), Depth); in matchOperationAddr()
4867 if (isa<ConstantInt>(AddrInst->getOperand(First)) in matchOperationAddr()
4868 && !isa<ConstantInt>(AddrInst->getOperand(Second))) in matchOperationAddr()
4871 if (matchAddr(AddrInst->getOperand(First), Depth + 1) && in matchOperationAddr()
4872 matchAddr(AddrInst->getOperand(Second), Depth + 1)) in matchOperationAddr()
4882 if (matchAddr(AddrInst->getOperand(Second), Depth + 1) && in matchOperationAddr()
4883 matchAddr(AddrInst->getOperand(First), Depth + 1)) in matchOperationAddr()
4899 ConstantInt *RHS = dyn_cast<ConstantInt>(AddrInst->getOperand(1)); in matchOperationAddr()
4906 return matchScaledValue(AddrInst->getOperand(0), Scale, Depth); in matchOperationAddr()
4915 gep_type_iterator GTI = gep_type_begin(AddrInst); in matchOperationAddr()
4916 for (unsigned i = 1, e = AddrInst->getNumOperands(); i != e; ++i, ++GTI) { in matchOperationAddr()
4920 cast<ConstantInt>(AddrInst->getOperand(i))->getZExtValue(); in matchOperationAddr()
4930 dyn_cast<ConstantInt>(AddrInst->getOperand(i))) { in matchOperationAddr()
4952 if (matchAddr(AddrInst->getOperand(0), Depth + 1)) { in matchOperationAddr()
4953 if (!cast<GEPOperator>(AddrInst)->isInBounds()) in matchOperationAddr()
4959 if (EnableGEPOffsetSplit && isa<GetElementPtrInst>(AddrInst) && in matchOperationAddr()
4966 Value *Base = AddrInst->getOperand(0); in matchOperationAddr()
4968 auto *GEP = cast<GetElementPtrInst>(AddrInst); in matchOperationAddr()
4990 if (!cast<GEPOperator>(AddrInst)->isInBounds()) in matchOperationAddr()
4994 if (!matchAddr(AddrInst->getOperand(0), Depth + 1)) { in matchOperationAddr()
5002 AddrMode.BaseReg = AddrInst->getOperand(0); in matchOperationAddr()
5006 if (!matchScaledValue(AddrInst->getOperand(VariableOperand), VariableScale, in matchOperationAddr()
5015 AddrMode.BaseReg = AddrInst->getOperand(0); in matchOperationAddr()
5017 if (!matchScaledValue(AddrInst->getOperand(VariableOperand), in matchOperationAddr()
5030 Instruction *Ext = dyn_cast<Instruction>(AddrInst); in matchOperationAddr()
5084 if (IntrinsicInst *II = dyn_cast<IntrinsicInst>(AddrInst)) { in matchOperationAddr()
5088 return matchAddr(AddrInst->getOperand(0), Depth); in matchOperationAddr()