Transmit mapping table to runtime

Pass the <native offset,dalvik offset> mapping table to the
runtime.  Also update the MonitorEnter/Exit stubs to optionally
take the thread pointer.

Change-Id: Ie1345fbafc6c0477deed44297bba1c566e6301f6
diff --git a/src/compiler/CompilerIR.h b/src/compiler/CompilerIR.h
index 643e795..4ce3177 100644
--- a/src/compiler/CompilerIR.h
+++ b/src/compiler/CompilerIR.h
@@ -176,11 +176,6 @@
     kRetryHalve
 } AssemblerStatus;
 
-typedef struct MappingTable {
-    int targetOffset;
-    int dalvikOffset;
-} MappingTable;
-
 typedef struct CompilationUnit {
     int numInsts;
     int numBlocks;
@@ -198,7 +193,8 @@
     int totalSize;                      // header + code size
     AssemblerStatus assemblerStatus;    // Success or fix and retry
     int assemblerRetries;
-    std::vector<short>codeBuffer;
+    std::vector<short> codeBuffer;
+    std::vector<uint32_t> mappingTable;
     bool printMe;
     bool printMeVerbose;
     bool hasClassLiterals;              // Contains class ptrs used as literals
@@ -279,8 +275,6 @@
      */
      int currentDalvikOffset;
      GrowableList switchTables;
-     int mappingTableSize;
-     MappingTable* mappingTable;
      GrowableList fillArrayData;
      const u2* insns;
      u4 insnsSize;