Lines Matching full:merge
115 "ext-tsp-max-merge-density-ratio", cl::ReallyHidden, cl::init(100),
179 /// The gain of merging two chains, that is, the Ext-TSP score of the merge
180 /// together with the corresponding merge 'type' and 'offset'.
329 void merge(ChainT *Other, std::vector<NodeT *> MergedBlocks) { in merge() function
540 assert(!Jumps1->empty() && "cannot merge empty jump list"); in MergedJumpsT()
556 /// Merge two chains of nodes respecting a given 'type' and 'offset'.
585 llvm_unreachable("unexpected chain merge type"); in mergeNodes()
599 // Pass 1: Merge nodes with their mutually forced successors in run()
602 // Pass 2: Merge pairs of chains while improving the ExtTSP objective in run()
605 // Pass 3: Merge cold nodes to reduce code size in run()
727 // Merge nodes with their fallthrough successors. in mergeForcedPairs()
740 /// Merge pairs of chains while improving the ExtTSP objective.
759 // Skip the merge if the combined chain violates the maximum specified in mergeChainPairs()
763 // Don't merge the chains if they have vastly different densities. in mergeChainPairs()
764 // Skip the merge if the ratio between the densities exceeds in mergeChainPairs()
797 // Merge the best pair of chains. in mergeChainPairs()
803 /// Merge remaining nodes into chains w/o taking jump counts into
856 assert(!Edge->jumps().empty() && "trying to merge chains w/o jumps"); in getBestMergeGain()
864 /// Given a merge offset and a list of merge types, try to merge two chains in getBestMergeGain()
875 // Apply the merge, compute the corresponding gain, and update the best in getBestMergeGain()
876 // value, if the merge is beneficial. in getBestMergeGain()
928 /// merge 'type' and 'offset'.
937 // Do not allow a merge that does not preserve the original entry point. in computeMergeGain()
948 /// Merge chain From into chain Into, update the list of active chains,
954 // Merge the nodes. in mergeChains()
957 Into->merge(From, MergedNodes.getNodes()); in mergeChains()
959 // Merge the edges. in mergeChains()
1048 // Merge pairs of chains while improving the objective. in run()
1128 /// Merge pairs of chains while there is an improvement in the objective.
1130 // Create a priority queue containing all edges ordered by the merge gain. in mergeChainPairs()
1160 // Merge the chains while the gain of merging is positive. in mergeChainPairs()
1174 // Merge the best pair of chains. in mergeChainPairs()
1210 assert(!Edge->jumps().empty() && "trying to merge chains w/o jumps"); in getBestMergeGain()
1219 /// Given a list of merge types, try to merge two chains and update Gain in getBestMergeGain()
1222 // Apply the merge, compute the corresponding gain, and update the best in getBestMergeGain()
1223 // value, if the merge is beneficial. in getBestMergeGain()
1256 // Merge offset is always 0, as the chains are not split. in computeMergeGain()
1321 /// Merge chain From into chain Into, update the list of active chains,
1327 // Merge the nodes. in mergeChains()
1330 Into->merge(From, MergedNodes.getNodes()); in mergeChains()
1332 // Merge the edges. in mergeChains()