Compiler cleanup

  o Added slow path for string resolution
  o Removed dead throw internal and runtime error
  o Restructured debug and optimization disable flags for make it easier
    for command-line option support.
  o Removed/converted #if 1/0 blocks

Change-Id: I65fc561a55437b3f74d0dfff5af87f938008d70e
diff --git a/src/compiler/CompilerIR.h b/src/compiler/CompilerIR.h
index 2d4f83e..14af69d 100644
--- a/src/compiler/CompilerIR.h
+++ b/src/compiler/CompilerIR.h
@@ -192,7 +192,8 @@
     LIR* classPointerList;              // Relocatable
     int numClassPointers;
     LIR* chainCellOffsetLIR;
-    int disableOpt;
+    uint32_t disableOpt;                // optControlVector flags
+    uint32_t enableDebug;               // debugControlVector flags
     int headerSize;                     // bytes before the first code ptr
     int dataOffset;                     // starting offset of literal pool
     int totalSize;                      // header + code size
@@ -203,8 +204,6 @@
     std::vector<uint32_t> coreVmapTable;
     std::vector<short> fpVmapTable;
     bool printMe;
-    bool printMeVerbose;
-    bool dumpCFG;
     bool hasClassLiterals;              // Contains class ptrs used as literals
     bool hasLoop;                       // Contains a loop
     bool hasInvoke;                     // Contains an invoke instruction