Quick compiler: complete switch support

With this CL, all Dex opcodes are handled.  We pass 79 run-tests,
and fail 12.  Temporarily going single-threaded for the Quick
compiler (llvm's ir-builder dies otherwise - will figure out what I
need to do for multi-threaded operation in a later CL).

Change-Id: I389e94d9a831096d4e7493460729933fb45e649e
diff --git a/src/compiler/codegen/MethodCodegenDriver.cc b/src/compiler/codegen/MethodCodegenDriver.cc
index 62939ba..d49b329 100644
--- a/src/compiler/codegen/MethodCodegenDriver.cc
+++ b/src/compiler/codegen/MethodCodegenDriver.cc
@@ -447,7 +447,7 @@
       break;
 
     case Instruction::SPARSE_SWITCH:
-      genSparseSwitch(cUnit, vB, rlSrc[0], labelList);
+      genSparseSwitch(cUnit, vB, rlSrc[0]);
       break;
 
     case Instruction::CMPL_FLOAT:
@@ -878,7 +878,7 @@
 bool methodBlockCodeGen(CompilationUnit* cUnit, BasicBlock* bb)
 {
   MIR* mir;
-  LIR* labelList = (LIR*) cUnit->blockLabelList;
+  LIR* labelList = cUnit->blockLabelList;
   int blockId = bb->id;
 
   cUnit->curBlock = bb;
@@ -992,7 +992,7 @@
 /* Set basic block labels */
 bool labelBlocks(CompilationUnit* cUnit, BasicBlock* bb)
 {
-  LIR* labelList = (LIR*) cUnit->blockLabelList;
+  LIR* labelList = cUnit->blockLabelList;
   int blockId = bb->id;
 
   cUnit->curBlock = bb;
@@ -1037,7 +1037,7 @@
 {
   /* Used to hold the labels of each block */
   cUnit->blockLabelList =
-      (void *) oatNew(cUnit, sizeof(LIR) * cUnit->numBlocks, true, kAllocLIR);
+      (LIR*) oatNew(cUnit, sizeof(LIR) * cUnit->numBlocks, true, kAllocLIR);
 
   oatDataFlowAnalysisDispatcher(cUnit, methodBlockCodeGen,
                                 kPreOrderDFSTraversal, false /* Iterative */);