Lines Matching refs:LowerSwitch
1 //===- LowerSwitch.cpp - Eliminate Switch instructions --------------------===//
10 // The LowerSwitch transformation rewrites switch instructions with a sequence
31 /// LowerSwitch Pass - Replace all SwitchInst instructions with chained branch
33 class LowerSwitch : public FunctionPass {
36 LowerSwitch() : FunctionPass(ID) {
71 char LowerSwitch::ID = 0;
72 INITIALIZE_PASS(LowerSwitch, "lowerswitch",
76 char &llvm::LowerSwitchID = LowerSwitch::ID;
79 return new LowerSwitch();
82 bool LowerSwitch::runOnFunction(Function &F) {
100 const LowerSwitch::CaseVector &C)
103 const LowerSwitch::CaseVector &C) {
106 for (LowerSwitch::CaseVector::const_iterator B = C.begin(),
118 BasicBlock* LowerSwitch::switchConvert(CaseItr Begin, CaseItr End,
163 BasicBlock* LowerSwitch::newLeafBlock(CaseRange& Leaf, Value* Val,
224 unsigned LowerSwitch::Clusterify(CaseVector& Cases, SwitchInst *SI) {
258 void LowerSwitch::processSwitchInst(SwitchInst *SI) {