Lines Matching full:duplication
143 cl::desc("Perform tail duplication during placement. "
154 // Heuristic for tail duplication.
157 cl::desc("Instruction cutoff for tail duplication during layout. "
162 // Heuristic for aggressive tail duplication.
165 cl::desc("Instruction cutoff for aggressive tail duplication during "
170 // Heuristic for tail duplication.
180 // Heuristic for tail duplication if profile count is used in cost model.
183 cl::desc("If profile count information is used in tail duplication cost "
184 "model, the gained fall through number from tail duplication "
192 "triangle tail duplication heuristic to kick in. 0 to disable."),
363 /// Member variable for convenience. It may be removed by duplication deep
380 /// Placement decisions can open up new tail duplication opportunities, but
381 /// since tail duplication affects placement decisions of later blocks, it
385 /// Partial tail duplication threshold.
388 /// True: use block profile count to compute tail duplication cost.
389 /// False: use block frequency to compute tail duplication cost.
418 /// The return value is used to model tail duplication cost.
524 /// Check the edge frequencies to see if tail duplication will increase
771 /// Check the edge frequencies to see if tail duplication will increase
773 /// \p Succ would not be chosen otherwise. Tail duplication of \p Succ is
775 /// considering duplication.
1071 // Did we pick the triangle edge? If tail-duplication is profitable, do in getBestTrellisSuccessor()
1079 // Check to see if tail-duplication would be profitable. in getBestTrellisSuccessor()
1118 // Number of possible duplication. in canTailDuplicateUnplacedPreds()
1133 // This will result in a trellis after tail duplication, so we don't in canTailDuplicateUnplacedPreds()
1135 // of a trellis tail duplication can continue to be profitable. in canTailDuplicateUnplacedPreds()
1157 // duplication and for this test. in canTailDuplicateUnplacedPreds()
1164 // to trellises created by tail-duplication, so we just look for the in canTailDuplicateUnplacedPreds()
1173 // No possible duplication in current filter set. in canTailDuplicateUnplacedPreds()
1183 // The integrated tail duplication is really designed for increasing in canTailDuplicateUnplacedPreds()
1192 // If the duplication candidate has more unplaced predecessors than in canTailDuplicateUnplacedPreds()
1193 // successors, the extra duplication can't bring more fallthrough. in canTailDuplicateUnplacedPreds()
1204 // In this example Dup has 2 successors and 3 predecessors, duplication of Dup in canTailDuplicateUnplacedPreds()
1206 // but the duplication into Pred3 can't increase fallthrough. in canTailDuplicateUnplacedPreds()
1208 // A small number of extra duplication may not hurt too much. We need a better in canTailDuplicateUnplacedPreds()
1278 // If PDom isn't eligible for duplication, this isn't the kind of triangle in precomputeTriangleChains()
1556 /// with a boolean indicating if tail duplication is necessary.
1592 // tail-duplication. We keep this vector so we can perform the probability in selectBestSuccessor()
1606 // If tail duplication would make Succ profitable, place it. in selectBestSuccessor()
1627 // Handle the tail duplication candidates in order of decreasing probability. in selectBestSuccessor()
1832 // Placement may have changed tail duplication opportunities. in buildChain()
2972 // at the end because repeating the tail duplication can increase the number in repeatedlyTailDuplicateBlock()
3002 LLVM_DEBUG(dbgs() << "Redoing tail duplication for Succ#" << BB->getNumber() in maybeTailDuplicateBlock()
3062 // We can do partial duplication with precise profile information. in maybeTailDuplicateBlock()
3072 // Update UnscheduledPredecessors to reflect tail-duplication. in maybeTailDuplicateBlock()
3103 // The size cost of duplication is the instruction size of the duplicated block.
3251 // So we can change one duplication into fallthrough. in findDuplicateCandidates()
3325 // At O3 we should be more willing to copy blocks for tail duplication. This in runOnMachineFunction()