Lines Matching refs:SwapVector
109 std::vector<PPCVSXSwapEntry> SwapVector; member
234 SwapVector.clear(); in initialize()
235 SwapVector.reserve(InitialVectorSize); in initialize()
288 SwapVector[VecIdx].MentionsPartialVR = 1; in gatherVectorInstructions()
290 SwapVector[VecIdx].IsSwappable = 1; in gatherVectorInstructions()
307 SwapVector[VecIdx].IsSwap = 1; in gatherVectorInstructions()
311 SwapVector[VecIdx].IsSwappable = 1; in gatherVectorInstructions()
312 SwapVector[VecIdx].SpecialHandling = SHValues::SH_XXPERMDI; in gatherVectorInstructions()
324 SwapVector[VecIdx].IsSwappable = 1; in gatherVectorInstructions()
325 SwapVector[VecIdx].SpecialHandling = SHValues::SH_XXPERMDI; in gatherVectorInstructions()
332 SwapVector[VecIdx].MentionsPhysVR = 0; in gatherVectorInstructions()
336 SwapVector[VecIdx].IsSwappable = 1; in gatherVectorInstructions()
337 SwapVector[VecIdx].SpecialHandling = SHValues::SH_XXPERMDI; in gatherVectorInstructions()
346 SwapVector[VecIdx].IsLoad = 1; in gatherVectorInstructions()
352 SwapVector[VecIdx].IsLoad = 1; in gatherVectorInstructions()
353 SwapVector[VecIdx].IsSwap = 1; in gatherVectorInstructions()
363 SwapVector[VecIdx].IsLoad = 1; in gatherVectorInstructions()
364 SwapVector[VecIdx].IsSwappable = 1; in gatherVectorInstructions()
371 SwapVector[VecIdx].IsStore = 1; in gatherVectorInstructions()
377 SwapVector[VecIdx].IsStore = 1; in gatherVectorInstructions()
378 SwapVector[VecIdx].IsSwap = 1; in gatherVectorInstructions()
385 SwapVector[VecIdx].IsSwappable = 1; in gatherVectorInstructions()
392 SwapVector[VecIdx].IsSwappable = 1; in gatherVectorInstructions()
404 SwapVector[VecIdx].IsSwappable = 1; in gatherVectorInstructions()
407 SwapVector[VecIdx].IsSwappable = 1; in gatherVectorInstructions()
408 SwapVector[VecIdx].SpecialHandling = SHValues::SH_COPYWIDEN; in gatherVectorInstructions()
418 SwapVector[VecIdx].IsSwappable = 1; in gatherVectorInstructions()
419 SwapVector[VecIdx].SpecialHandling = SHValues::SH_SPLAT; in gatherVectorInstructions()
543 SwapEntry.VSEId = SwapVector.size(); in addSwapEntry()
544 SwapVector.push_back(SwapEntry); in addSwapEntry()
575 SwapVector[VecIdx].MentionsPhysVR = 1; in lookThruCopyLike()
593 for (unsigned EntryIdx = 0; EntryIdx < SwapVector.size(); ++EntryIdx) { in formWebs()
595 MachineInstr *MI = SwapVector[EntryIdx].VSEMI; in formWebs()
597 LLVM_DEBUG(dbgs() << "\n" << SwapVector[EntryIdx].VSEId << " "); in formWebs()
614 SwapVector[EntryIdx].MentionsPhysVR = 1; in formWebs()
625 (void)EC->unionSets(SwapVector[DefIdx].VSEId, in formWebs()
626 SwapVector[EntryIdx].VSEId); in formWebs()
629 SwapVector[DefIdx].VSEId, in formWebs()
630 SwapVector[EntryIdx].VSEId)); in formWebs()
645 for (unsigned EntryIdx = 0; EntryIdx < SwapVector.size(); ++EntryIdx) { in recordUnoptimizableWebs()
646 int Repr = EC->getLeaderValue(SwapVector[EntryIdx].VSEId); in recordUnoptimizableWebs()
649 if (SwapVector[Repr].WebRejected) in recordUnoptimizableWebs()
655 if (SwapVector[EntryIdx].MentionsPhysVR || in recordUnoptimizableWebs()
656 SwapVector[EntryIdx].MentionsPartialVR || in recordUnoptimizableWebs()
657 !(SwapVector[EntryIdx].IsSwappable || SwapVector[EntryIdx].IsSwap)) { in recordUnoptimizableWebs()
659 SwapVector[Repr].WebRejected = 1; in recordUnoptimizableWebs()
666 LLVM_DEBUG(SwapVector[EntryIdx].VSEMI->dump()); in recordUnoptimizableWebs()
672 else if (SwapVector[EntryIdx].IsLoad && SwapVector[EntryIdx].IsSwap) { in recordUnoptimizableWebs()
673 MachineInstr *MI = SwapVector[EntryIdx].VSEMI; in recordUnoptimizableWebs()
683 if (!SwapVector[UseIdx].IsSwap || SwapVector[UseIdx].IsLoad || in recordUnoptimizableWebs()
684 SwapVector[UseIdx].IsStore) { in recordUnoptimizableWebs()
686 SwapVector[Repr].WebRejected = 1; in recordUnoptimizableWebs()
700 } else if (SwapVector[EntryIdx].IsStore && SwapVector[EntryIdx].IsSwap) { in recordUnoptimizableWebs()
701 MachineInstr *MI = SwapVector[EntryIdx].VSEMI; in recordUnoptimizableWebs()
707 if (!SwapVector[DefIdx].IsSwap || SwapVector[DefIdx].IsLoad || in recordUnoptimizableWebs()
708 SwapVector[DefIdx].IsStore) { in recordUnoptimizableWebs()
710 SwapVector[Repr].WebRejected = 1; in recordUnoptimizableWebs()
726 if (SwapVector[UseIdx].VSEMI->getOpcode() != MI->getOpcode()) { in recordUnoptimizableWebs()
727 SwapVector[Repr].WebRejected = 1; in recordUnoptimizableWebs()
736 LLVM_DEBUG(SwapVector[UseIdx].VSEMI->dump()); in recordUnoptimizableWebs()
756 for (unsigned EntryIdx = 0; EntryIdx < SwapVector.size(); ++EntryIdx) { in markSwapsForRemoval()
758 if (SwapVector[EntryIdx].IsLoad && SwapVector[EntryIdx].IsSwap) { in markSwapsForRemoval()
759 int Repr = EC->getLeaderValue(SwapVector[EntryIdx].VSEId); in markSwapsForRemoval()
761 if (!SwapVector[Repr].WebRejected) { in markSwapsForRemoval()
762 MachineInstr *MI = SwapVector[EntryIdx].VSEMI; in markSwapsForRemoval()
767 SwapVector[UseIdx].WillRemove = 1; in markSwapsForRemoval()
774 } else if (SwapVector[EntryIdx].IsStore && SwapVector[EntryIdx].IsSwap) { in markSwapsForRemoval()
775 int Repr = EC->getLeaderValue(SwapVector[EntryIdx].VSEId); in markSwapsForRemoval()
777 if (!SwapVector[Repr].WebRejected) { in markSwapsForRemoval()
778 MachineInstr *MI = SwapVector[EntryIdx].VSEMI; in markSwapsForRemoval()
782 SwapVector[DefIdx].WillRemove = 1; in markSwapsForRemoval()
788 } else if (SwapVector[EntryIdx].IsSwappable && in markSwapsForRemoval()
789 SwapVector[EntryIdx].SpecialHandling != 0) { in markSwapsForRemoval()
790 int Repr = EC->getLeaderValue(SwapVector[EntryIdx].VSEId); in markSwapsForRemoval()
792 if (!SwapVector[Repr].WebRejected) in markSwapsForRemoval()
819 switch (SwapVector[EntryIdx].SpecialHandling) { in handleSpecialSwappables()
827 MachineInstr *MI = SwapVector[EntryIdx].VSEMI; in handleSpecialSwappables()
866 MachineInstr *MI = SwapVector[EntryIdx].VSEMI; in handleSpecialSwappables()
896 MachineInstr *MI = SwapVector[EntryIdx].VSEMI; in handleSpecialSwappables()
950 for (unsigned EntryIdx = 0; EntryIdx < SwapVector.size(); ++EntryIdx) { in removeSwaps()
951 if (SwapVector[EntryIdx].WillRemove) { in removeSwaps()
953 MachineInstr *MI = SwapVector[EntryIdx].VSEMI; in removeSwaps()
960 SwapVector[EntryIdx].VSEId)); in removeSwaps()
974 for (unsigned EntryIdx = 0; EntryIdx < SwapVector.size(); ++EntryIdx) { in dumpSwapVector()
976 MachineInstr *MI = SwapVector[EntryIdx].VSEMI; in dumpSwapVector()
977 int ID = SwapVector[EntryIdx].VSEId; in dumpSwapVector()
984 if (SwapVector[EntryIdx].IsLoad) in dumpSwapVector()
986 if (SwapVector[EntryIdx].IsStore) in dumpSwapVector()
988 if (SwapVector[EntryIdx].IsSwap) in dumpSwapVector()
990 if (SwapVector[EntryIdx].MentionsPhysVR) in dumpSwapVector()
992 if (SwapVector[EntryIdx].MentionsPartialVR) in dumpSwapVector()
995 if (SwapVector[EntryIdx].IsSwappable) { in dumpSwapVector()
997 switch(SwapVector[EntryIdx].SpecialHandling) { in dumpSwapVector()
1027 if (SwapVector[EntryIdx].WebRejected) in dumpSwapVector()
1029 if (SwapVector[EntryIdx].WillRemove) in dumpSwapVector()