• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /freebsd-13-stable/contrib/llvm-project/llvm/lib/Target/ARM/

Lines Matching defs:Phi

138   void pushOutAdd(PHINode *&Phi, Value *OffsSecondOperand, unsigned StartIndex);
140 void pushOutMul(PHINode *&Phi, Value *IncrementPerRound,
679 PHINode *Phi = dyn_cast<PHINode>(Offsets);
680 if (Phi == nullptr || Phi->getNumIncomingValues() != 2 ||
681 Phi->getParent() != L->getHeader() || Phi->getNumUses() != 2)
689 Phi->getIncomingBlock(0) == L->getLoopLatch() ? 0 : 1;
691 Offsets = Phi->getIncomingValue(IncrementIndex);
698 if (OffsetsIncoming != Phi)
703 Builder.SetInsertPoint(&Phi->getIncomingBlock(1 - IncrementIndex)->back());
709 Instruction::Shl, Phi->getIncomingValue(1 - IncrementIndex),
711 "ScaledIndex", &Phi->getIncomingBlock(1 - IncrementIndex)->back());
720 "StartIndex", &Phi->getIncomingBlock(1 - IncrementIndex)->back());
726 &Phi->getIncomingBlock(1 - IncrementIndex)->back());
727 Phi->setIncomingValue(1 - IncrementIndex, OffsetsIncoming);
735 Value *Load = tryCreateMaskedGatherBaseWB(I, Phi, Builder, Immediate);
742 NewInduction = tryCreateMaskedScatterBaseWB(I, Phi, Builder, Immediate);
748 Phi->setIncomingValue(IncrementIndex, NewInduction);
753 void MVEGatherScatterLowering::pushOutAdd(PHINode *&Phi,
758 &cast<Instruction>(Phi->getIncomingBlock(StartIndex)->back());
761 Instruction::Add, Phi->getIncomingValue(StartIndex), OffsSecondOperand,
766 Phi->addIncoming(NewIndex, Phi->getIncomingBlock(StartIndex));
767 Phi->addIncoming(Phi->getIncomingValue(IncrementIndex),
768 Phi->getIncomingBlock(IncrementIndex));
769 Phi->removeIncomingValue(IncrementIndex);
770 Phi->removeIncomingValue(StartIndex);
773 void MVEGatherScatterLowering::pushOutMul(PHINode *&Phi,
783 Phi->getIncomingBlock(LoopIncrement == 1 ? 0 : 1)->back());
787 Instruction::Mul, Phi->getIncomingValue(LoopIncrement == 1 ? 0 : 1),
795 Instruction::Add, Phi, Product, "IncrementPushedOutMul",
796 cast<Instruction>(Phi->getIncomingBlock(LoopIncrement)->back())
799 Phi->addIncoming(StartIndex,
800 Phi->getIncomingBlock(LoopIncrement == 1 ? 0 : 1));
801 Phi->addIncoming(NewIncrement, Phi->getIncomingBlock(LoopIncrement));
802 Phi->removeIncomingValue((unsigned)0);
803 Phi->removeIncomingValue((unsigned)0);
853 PHINode *Phi;
856 Phi = cast<PHINode>(Offs->getOperand(0));
859 Phi = cast<PHINode>(Offs->getOperand(1));
873 Phi = cast<PHINode>(Offs->getOperand(0));
876 Phi = cast<PHINode>(Offs->getOperand(1));
885 if (Phi->getParent() != L->getHeader() ||
886 Phi->getNumIncomingValues() != 2)
894 if ((Op = dyn_cast<Instruction>(Phi->getIncomingValue(i))) != nullptr)
896 (Op->getOperand(0) == Phi || Op->getOperand(1) == Phi))
902 cast<Instruction>(Phi->getIncomingValue(IncrementingBlock));
908 (IncInstruction->getOperand(0) == Phi) ? 1 : 0);
924 if (Phi->getNumUses() == 2) {
931 Instruction::BinaryOps(IncInstruction->getOpcode()), Phi,
933 Phi->setIncomingValue(IncrementingBlock, IncInstruction);
935 NewPhi = Phi;
938 NewPhi = PHINode::Create(Phi->getType(), 0, "NewPhi", Phi);
941 NewPhi->addIncoming(Phi->getIncomingValue(IncrementingBlock == 1 ? 0 : 1),
942 Phi->getIncomingBlock(IncrementingBlock == 1 ? 0 : 1));
947 Phi->getIncomingBlock(IncrementingBlock));
952 Builder.SetInsertPoint(Phi);