Misc fixes, new compiler unit tests

Fixed disassembly logging, miscellaneous codegen bugs and added a
set of unit tests (most of which fail because array allocation isn't quite
there yet in the codegen).

Failing tests conditionally compiled out for now.

Change-Id: I39c148f9a7686fac21c844a7a7f5ec86d4e0e1c5
diff --git a/src/compiler/codegen/arm/Thumb2/Gen.cc b/src/compiler/codegen/arm/Thumb2/Gen.cc
index 1a126e4..d8ecc84 100644
--- a/src/compiler/codegen/arm/Thumb2/Gen.cc
+++ b/src/compiler/codegen/arm/Thumb2/Gen.cc
@@ -1335,18 +1335,18 @@
     switch( mir->dalvikInsn.opcode) {
         case OP_SHL_LONG:
         case OP_SHL_LONG_2ADDR:
+            UNIMPLEMENTED(FATAL) << "Need SHL_LONG helper";
             //genDispatchToHandler(cUnit, TEMPLATE_SHL_LONG);
-            assert(0);  // unimp
             break;
         case OP_SHR_LONG:
         case OP_SHR_LONG_2ADDR:
+            UNIMPLEMENTED(FATAL) << "Need SHR_LONG helper";
             //genDispatchToHandler(cUnit, TEMPLATE_SHR_LONG);
-            assert(0); // unimp
             break;
         case OP_USHR_LONG:
         case OP_USHR_LONG_2ADDR:
+            UNIMPLEMENTED(FATAL) << "Need USHR_LONG helper";
             //genDispatchToHandler(cUnit, TEMPLATE_USHR_LONG);
-            assert(0); // unimp
             break;
         default:
             return true;