Lines Matching full:threading
10 // This file implements the Jump Threading pass.
14 #define DEBUG_TYPE "jump-threading"
44 Threshold("jump-threading-threshold",
45 cl::desc("Max block size to duplicate for jump threading"),
60 /// This pass performs 'jump threading', which looks at blocks that have
133 INITIALIZE_PASS_BEGIN(JumpThreading, "jump-threading",
134 "Jump Threading", false, false)
136 INITIALIZE_PASS_END(JumpThreading, "jump-threading",
137 "Jump Threading", false, false)
139 // Public interface to the Jump Threading pass
145 DEBUG(dbgs() << "Jump threading on function '" << F.getName() << "'\n");
219 // FIXME: THREADING will delete values that are just used to compute the
249 // Threading through a switch statement is particularly profitable. If this
261 /// FindLoopHeaders - We do not want jump threading to turn proper loop
267 /// Note that there definitely are cases when we want to allow threading of
268 /// edges across a loop header. For example, threading a jump from outside the
632 // successor, merge the blocks. This encourages recursive jump threading
705 // terminator to an unconditional branch. This can occur due to threading in
811 /// important optimization that encourages jump threading, and needs to be run
812 /// interlaced with other jump threading tasks.
985 // blocks with known and real destinations to threading undef. We'll handle
1039 // If threading this would thread across a loop header, don't even try to
1107 // this block is a switch, we want to start by threading the batch that goes
1155 // encourage jump threading and to eliminate cases where we have branch on a
1307 // If threading to the same block as we come from, we would infinite loop.
1309 DEBUG(dbgs() << " Not threading across BB '" << BB->getName()
1314 // If threading this would thread across a loop header, don't thread the edge.
1317 DEBUG(dbgs() << " Not threading across loop header BB '" << BB->getName()
1325 DEBUG(dbgs() << " Not threading BB '" << BB->getName()
1342 DEBUG(dbgs() << " Threading edge from '" << PredBB->getName() << "' to '"