)]}'
{
  "log": [
    {
      "commit": "b5e81858a47dd7ed051135f6982fbc4e13d0f309",
      "tree": "7da467d2b2d18de134960b0efbf7e484c6a8e4aa",
      "parents": [
        "4d26534f6a65d7af89cc32da8fbc32beed693201"
      ],
      "author": {
        "name": "jeffhao",
        "email": "jeffhao@google.com",
        "time": "Mon Mar 12 11:15:45 2012 -0700"
      },
      "committer": {
        "name": "jeffhao",
        "email": "jeffhao@google.com",
        "time": "Mon Mar 12 13:57:13 2012 -0700"
      },
      "message": "Added code to allow method tracing from command line.\n\nCrated a set of command line switches to allow method tracing to be\nenabled from the command line. They are -Xmethod-trace,\n-Xmethod-trace-file, and -Xmethod-trace-file-size.\n\nChange-Id: I7ecaa07aba3d7ca41f2ff3a9a9341d97833afe36\n"
    },
    {
      "commit": "4d26534f6a65d7af89cc32da8fbc32beed693201",
      "tree": "fc79ab41e1d6e73b57cc1a7914f3cc12fc834b1d",
      "parents": [
        "ab058bb04d11ed086116d95f2d55bf6b35e8cc35",
        "1db858a51e18a7d61f6c9a16f438b653314be00d"
      ],
      "author": {
        "name": "Brian Carlstrom",
        "email": "bdc@google.com",
        "time": "Sun Mar 11 22:47:11 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sun Mar 11 22:47:11 2012 -0700"
      },
      "message": "Merge \"Fix DexFile::GetChecksum to work on plain .dex files\" into dalvik-dev"
    },
    {
      "commit": "1db858a51e18a7d61f6c9a16f438b653314be00d",
      "tree": "14cf698e7a6d2c2663f4d9bddff0e81cfd64103f",
      "parents": [
        "904667a58fa38437d1be6907beb3fb76d1982e0b"
      ],
      "author": {
        "name": "Brian Carlstrom",
        "email": "bdc@google.com",
        "time": "Sun Mar 11 22:44:45 2012 -0700"
      },
      "committer": {
        "name": "Brian Carlstrom",
        "email": "bdc@google.com",
        "time": "Sun Mar 11 22:44:45 2012 -0700"
      },
      "message": "Fix DexFile::GetChecksum to work on plain .dex files\n\nChange-Id: I8947e0288378a1cc31fd8e60dad0bf25a76cfd1e\n"
    },
    {
      "commit": "ab058bb04d11ed086116d95f2d55bf6b35e8cc35",
      "tree": "eb6d9f03207431ce9bcb262fe661765cfcca8b5e",
      "parents": [
        "49c4894f76f6a7aec4d6a1ec2c901700c9108944"
      ],
      "author": {
        "name": "Ian Rogers",
        "email": "irogers@google.com",
        "time": "Sun Mar 11 22:19:38 2012 -0700"
      },
      "committer": {
        "name": "Ian Rogers",
        "email": "irogers@google.com",
        "time": "Sun Mar 11 22:40:50 2012 -0700"
      },
      "message": "Make code buffer units 8bit rather than 16bit.\n\nChange-Id: I1ca087c4f7f820a8816388095405603f4163b354\n"
    },
    {
      "commit": "49c4894f76f6a7aec4d6a1ec2c901700c9108944",
      "tree": "ac32b9284b268b1ee0070f9ce380e1d77a69d7ae",
      "parents": [
        "efccc565091b3409ed1372615b4ea4e2f6c39323"
      ],
      "author": {
        "name": "Ian Rogers",
        "email": "irogers@google.com",
        "time": "Sun Mar 11 15:15:37 2012 -0700"
      },
      "committer": {
        "name": "Ian Rogers",
        "email": "irogers@google.com",
        "time": "Sun Mar 11 15:15:37 2012 -0700"
      },
      "message": "Add instruction-set option to dex2oat\n\nChange-Id: I3beefe28abb0ea8fc4697eded2793fd52e3f12c7\n"
    },
    {
      "commit": "efccc565091b3409ed1372615b4ea4e2f6c39323",
      "tree": "c0987fb6051a0c4abe2129dc3564c51274fab7e1",
      "parents": [
        "904667a58fa38437d1be6907beb3fb76d1982e0b"
      ],
      "author": {
        "name": "buzbee",
        "email": "buzbee@google.com",
        "time": "Sun Mar 11 11:19:28 2012 -0700"
      },
      "committer": {
        "name": "buzbee",
        "email": "buzbee@google.com",
        "time": "Sun Mar 11 11:19:28 2012 -0700"
      },
      "message": "Frame layout change\n\nThis CL slightly changes the frame layout to remove an old unnecessary\nslot, allow for the inclusion of compiler-generated temps and\nunifies all variable offset calculation into a single function shared\nby the compilers and the runtime system.\n\n   o Update the GetVRegOffset function in stack.cc to understand the\n     new layout.\n\n   o Remove compiler-private offset calculation code and route\n     everything through the shared GetVRegOffset in thread.cc.\n\n   o Remove \"filler word\" that existed immediately after the last\n     Dalvik local.  This was there to address an initial concern that\n     I had about a single argument register being reused later as a\n     long.  Now convinced that it won\u0027t happen.\n\n   o Extend the old \"padding\" region to include compiler-created temps\n     that can appear to the rest of the rest of the system as\n     Dalvik registers.  The new temps will have Dalvik register numbers\n     of -2 and lower.\n\n   o Treat Method* for the current method as a special Dalvik register\n     denoted by reg number -1.\n\nChange-Id: I5b5f3aef9c6a01d3a647ced6ec06981ed228c785\n"
    },
    {
      "commit": "5cb71bb4437db51f415e57e6002ba1ef023e7de1",
      "tree": "6fcbe0549c759dde4e6513da373fdda8fb605815",
      "parents": [
        "55c02cd377ada856e4ca12f8a433da0f9888a667"
      ],
      "author": {
        "name": "Brian Carlstrom",
        "email": "bdc@google.com",
        "time": "Fri Mar 09 14:57:37 2012 -0800"
      },
      "committer": {
        "name": "Brian Carlstrom",
        "email": "bdc@google.com",
        "time": "Sat Mar 10 23:20:18 2012 -0800"
      },
      "message": "Fix VMStack_getClosestUserClassLoader\n\nFixes failure in libcore.java.io.OldAndroidSerializationTest#testSerialization\n\nChange-Id: I13187f081ea87402be88d59a48ec3890505342ae\n"
    },
    {
      "commit": "55c02cd377ada856e4ca12f8a433da0f9888a667",
      "tree": "bae180877d1c35451000bdb2a1e61ed82a011174",
      "parents": [
        "73666be63d30f9af5487982f69600be38caaed1b",
        "05eba3650f876c5f39e92d1b9646c9aea00df4a2"
      ],
      "author": {
        "name": "buzbee",
        "email": "buzbee@google.com",
        "time": "Sat Mar 10 21:14:27 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat Mar 10 21:14:27 2012 -0800"
      },
      "message": "Merge \"Monitor enter/exit cleanup\" into dalvik-dev"
    },
    {
      "commit": "05eba3650f876c5f39e92d1b9646c9aea00df4a2",
      "tree": "e191716e3364927a44fd3413ca377dfe2dcd3679",
      "parents": [
        "d13d11f07bc50c60fa9c9049e593f279725d8f72"
      ],
      "author": {
        "name": "buzbee",
        "email": "buzbee@google.com",
        "time": "Sat Mar 10 20:11:27 2012 -0800"
      },
      "committer": {
        "name": "buzbee",
        "email": "buzbee@google.com",
        "time": "Sat Mar 10 20:11:27 2012 -0800"
      },
      "message": "Monitor enter/exit cleanup\n\nIf-conversion of the arm monitor enter/exit logic to avoid\nmispredicted forward branch.  Small, but measureable improvement\nin synchronization benchmark.\n\nChange-Id: I88154a9690258099ec1d6de6297e9a7bade97d88\n"
    },
    {
      "commit": "0ece7b950dc5821e79c930acf31fb7e73c570849",
      "tree": "ce4006468c5ea8b068055b5f770b058477e35a25",
      "parents": [
        "e663a5b5b218deae32de739d89f888ceeeba65df"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Mar 09 18:14:40 2012 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Sat Mar 10 09:51:21 2012 -0800"
      },
      "message": "Remove an unnecessary \"art\" prefix on functions in the art namespace.\n\nChange-Id: I160bc78ef9000364f657a9972dd8c648ca2f53aa\n"
    },
    {
      "commit": "e663a5b5b218deae32de739d89f888ceeeba65df",
      "tree": "a2e963bb923f5dee3092832a5482400190a88b31",
      "parents": [
        "d13d11f07bc50c60fa9c9049e593f279725d8f72",
        "719ace4734f519c67fd2c1ff7a232c079309a615"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Sat Mar 10 09:50:19 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat Mar 10 09:50:19 2012 -0800"
      },
      "message": "Merge \"Stop saying \"typedef struct\" and \"typedef enum\".\" into dalvik-dev"
    },
    {
      "commit": "d13d11f07bc50c60fa9c9049e593f279725d8f72",
      "tree": "a90205398971583e79f475e5b7488cb3f8ab0a8b",
      "parents": [
        "d20db02db57625150058f1face0efad610ec7b25",
        "46f060a53fffc14333096f0a48f95730ee4768ee"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Mar 09 22:24:46 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Mar 09 22:24:46 2012 -0800"
      },
      "message": "Merge \"Move other compiler bits into the compiler shared libraries.\" into dalvik-dev"
    },
    {
      "commit": "719ace4734f519c67fd2c1ff7a232c079309a615",
      "tree": "ccce9abb445238e4a00c9d4bfba093fb16bc8c7c",
      "parents": [
        "b3cd1229e6904365ca0ca2a7bbc4701ad1908154"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Mar 09 18:06:03 2012 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Mar 09 18:06:03 2012 -0800"
      },
      "message": "Stop saying \"typedef struct\" and \"typedef enum\".\n\nSeeing new instances of this C-ism go in makes me a sad panda.\n\nChange-Id: Ie3dd414b8b5e57a4164e88eb2d8559545569628d\n"
    },
    {
      "commit": "46f060a53fffc14333096f0a48f95730ee4768ee",
      "tree": "e29bd9d927e315191840e81fd1ddbcfbddaa04cc",
      "parents": [
        "b3cd1229e6904365ca0ca2a7bbc4701ad1908154"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Mar 09 17:36:50 2012 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Mar 09 17:36:50 2012 -0800"
      },
      "message": "Move other compiler bits into the compiler shared libraries.\n\nChange-Id: I288337af4c70716709217ff2d21050ba5f858807\n"
    },
    {
      "commit": "d20db02db57625150058f1face0efad610ec7b25",
      "tree": "927844094f0e38b688fde1f7fd695ceff8f07bec",
      "parents": [
        "b3cd1229e6904365ca0ca2a7bbc4701ad1908154"
      ],
      "author": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Fri Mar 09 16:12:53 2012 -0800"
      },
      "committer": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Fri Mar 09 16:12:53 2012 -0800"
      },
      "message": "Re-remove the code that the preceding commit removed.\n\ncommit a433b2e8 just removed this code.\n\nChange-Id: I9561b40c659ca62527e4dbfce33249ed34731b6a\n"
    },
    {
      "commit": "b3cd1229e6904365ca0ca2a7bbc4701ad1908154",
      "tree": "d499bee2134f38253118461070e6e11b2b33c4fc",
      "parents": [
        "e7825db4cfe76eabf5e3ebc0358b5e067ca3f484"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Mar 09 16:00:38 2012 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Mar 09 16:00:38 2012 -0800"
      },
      "message": "Really fix build.\n\nChange-Id: I09c76b8fede9e926519b206010ba6c7ab44c3216\n"
    },
    {
      "commit": "e7825db4cfe76eabf5e3ebc0358b5e067ca3f484",
      "tree": "cacc5b5d3c41e30943df6edaadb614c0cfff78ee",
      "parents": [
        "b3bd5f07884f5a1f2b84224363b1372d7c28d447"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Mar 09 15:46:57 2012 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Mar 09 15:46:57 2012 -0800"
      },
      "message": "Fix build.\n\nThe compilers had drifted a bit while I was away.\n\nChange-Id: I938a5992e8e100f512db4c7934ac4b3ec80e8138\n"
    },
    {
      "commit": "b3bd5f07884f5a1f2b84224363b1372d7c28d447",
      "tree": "6e2997ab64b4a4f32d7ef539a4649adc736ea553",
      "parents": [
        "ddbd01ac1660d57416879d5a576482f1048dde64"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Mar 08 21:05:27 2012 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Mar 09 15:37:46 2012 -0800"
      },
      "message": "Refactor the compilers out of libart.\n\nThis builds three separate compilers and dynamically links with the right one\nat runtime.\n\nChange-Id: I59d22b9884f41de733c09f97e29ee290236d5f4b\n"
    },
    {
      "commit": "ddbd01ac1660d57416879d5a576482f1048dde64",
      "tree": "0fb4767de9915243addbdb712563e1ac330da0d2",
      "parents": [
        "0b440ef78eae4f1c8558dca549e9c94a84f42639"
      ],
      "author": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Fri Mar 09 14:42:12 2012 -0800"
      },
      "committer": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Fri Mar 09 15:04:58 2012 -0800"
      },
      "message": "Move compiler-specific code out of runtime_support_common.\n\nHelpers or utilities such as FindFieldFast are still in\nruntime_support_common. But LLVM has different stacks, no callee-saves\nand different exception mechanisms. Those won\u0027t belong to\nruntime_support_common.\n\nChange-Id: Ibc43d7d53316941481a6a21815ddefdc1e6bdde6\n"
    },
    {
      "commit": "0b440ef78eae4f1c8558dca549e9c94a84f42639",
      "tree": "19dbd7cf27e3ab3bffab3f8fe74a709b33b1023f",
      "parents": [
        "a433b2e8edf91c8124abd8eb5b3bd558a40fc987"
      ],
      "author": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Fri Mar 09 13:05:11 2012 -0800"
      },
      "committer": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Fri Mar 09 14:07:00 2012 -0800"
      },
      "message": "Fix crashes.\n\nThe bug was due to a refactoring error last night. We will also take out\n_artInvokeCommon and other confusing de-dup in the next CL. But I want\nto fix the crash right away.\n\nChange-Id: Ic3fcb0bbaaca44cf368f79994a0cdcfac5fdfc8b\n"
    },
    {
      "commit": "a433b2e8edf91c8124abd8eb5b3bd558a40fc987",
      "tree": "d0c6b2cd101ed66897193ac03f4738d6a7473da3",
      "parents": [
        "f5a9d80f6afaf714c1afeaf2e869ff194aa2556a"
      ],
      "author": {
        "name": "Ian Rogers",
        "email": "irogers@google.com",
        "time": "Fri Mar 09 08:40:33 2012 -0800"
      },
      "committer": {
        "name": "Ian Rogers",
        "email": "irogers@google.com",
        "time": "Fri Mar 09 08:59:48 2012 -0800"
      },
      "message": "Tidy MIPS floating point helpers.\n\nFix initialization bug in thread.cc.\n\nChange-Id: Ibdc81d6f5c8b1a245044bf901003179167a5d4f1\n"
    },
    {
      "commit": "f5a9d80f6afaf714c1afeaf2e869ff194aa2556a",
      "tree": "11e1164eb4fcd8c9a04e96c69e4b0e133562c9de",
      "parents": [
        "399ed3f4bb92eb69b739c4c5d9dcf2d4c78696b2"
      ],
      "author": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Fri Mar 09 01:31:09 2012 -0800"
      },
      "committer": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Fri Mar 09 01:31:09 2012 -0800"
      },
      "message": "Fix build: Move a 2-line function to runtime_support_common\n\nChange-Id: I59df076e148b571d253df2aa3bb852fc032c9714\n"
    },
    {
      "commit": "399ed3f4bb92eb69b739c4c5d9dcf2d4c78696b2",
      "tree": "2a7136e079f2d7d93519b3f63184a952b3362939",
      "parents": [
        "4d3c07f0bbfd07815f2ac848ad2b08979b9bee4d"
      ],
      "author": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Thu Mar 08 01:27:04 2012 -0800"
      },
      "committer": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Fri Mar 09 00:17:21 2012 -0800"
      },
      "message": "Add object-space related runtime support.\n\nChange-Id: Ieac2be41efcb57923de6f1dedad94fab0803812d\n"
    },
    {
      "commit": "055b77628479f1e5934f9fb992ffc680de16661d",
      "tree": "5baeda84ecd05518b4df23dfb0afb6b85cd4b61e",
      "parents": [
        "8fc6d41482b54c12fca4235e8b979e4a93499a14"
      ],
      "author": {
        "name": "Brian Carlstrom",
        "email": "bdc@google.com",
        "time": "Thu Mar 08 11:41:52 2012 -0800"
      },
      "committer": {
        "name": "Brian Carlstrom",
        "email": "bdc@google.com",
        "time": "Thu Mar 08 11:41:52 2012 -0800"
      },
      "message": "Remove non-functional IsInSamePackage implementation\n\nThis version tried to use std::mismatch instead of a loop.\n\nChange-Id: I463bef4a36dd91573369754db2f32f3d45fc53dc\n"
    },
    {
      "commit": "8fc6d41482b54c12fca4235e8b979e4a93499a14",
      "tree": "d1ec4e9682e1b520fc9fb23107d53dc9986ef2ac",
      "parents": [
        "d9c7ad348b56172c1d87f214dd293ac822ac717d",
        "9a8a8889418e09bf2d4ae3f683fbb40a71c3c8f4"
      ],
      "author": {
        "name": "Ian Rogers",
        "email": "irogers@google.com",
        "time": "Thu Mar 08 02:34:21 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Mar 08 02:34:21 2012 -0800"
      },
      "message": "Merge \"Disable virtual call sharpening.\" into dalvik-dev"
    },
    {
      "commit": "9a8a8889418e09bf2d4ae3f683fbb40a71c3c8f4",
      "tree": "706ce6181dfd046845a82d60b3b66ee7270131d3",
      "parents": [
        "680b1bdd7e5d112ba4b95d6c81a43b65119b3b9c"
      ],
      "author": {
        "name": "Ian Rogers",
        "email": "irogers@google.com",
        "time": "Thu Mar 08 02:30:55 2012 -0800"
      },
      "committer": {
        "name": "Ian Rogers",
        "email": "irogers@google.com",
        "time": "Thu Mar 08 02:30:55 2012 -0800"
      },
      "message": "Disable virtual call sharpening.\n\nA regression in voice search was seen. Disable for now. Add a few\nassertions to aid future diagnostics.\n\nChange-Id: I635b1126b3e45293489b6b7ad54d838773ae7030\n"
    },
    {
      "commit": "d9c7ad348b56172c1d87f214dd293ac822ac717d",
      "tree": "6516e97ffb605f93fd1c0cf4726be8b05fb45a8c",
      "parents": [
        "2824bf55b43b441dad8bb54530f1758883766480"
      ],
      "author": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Thu Mar 08 02:01:18 2012 -0800"
      },
      "committer": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Thu Mar 08 02:01:18 2012 -0800"
      },
      "message": "Fix the build. Add inline back to appease -Werror.\n\nChange-Id: Ib05030d29a2d9c1ee08413f24ca9c7c2082bf72f\n"
    },
    {
      "commit": "2824bf55b43b441dad8bb54530f1758883766480",
      "tree": "261b7ed890806d7d1d2d6c0d41fbb334761064d0",
      "parents": [
        "680b1bdd7e5d112ba4b95d6c81a43b65119b3b9c",
        "b0ee9d705a51b3de188be1f8a28e00574d8eabae"
      ],
      "author": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Wed Mar 07 23:57:46 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Mar 07 23:57:46 2012 -0800"
      },
      "message": "Merge \"Add runtime_support_common.\" into dalvik-dev"
    },
    {
      "commit": "b0ee9d705a51b3de188be1f8a28e00574d8eabae",
      "tree": "6106b897dabfd4a0fd7a13b6c38205df63844c0b",
      "parents": [
        "d8af8bd46c13347ca15558999db4da85dbc31818"
      ],
      "author": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Wed Mar 07 16:39:26 2012 -0800"
      },
      "committer": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Wed Mar 07 23:56:54 2012 -0800"
      },
      "message": "Add runtime_support_common.\n\nAddressed the issue that we shouldn\u0027t maintain 2 copies of almost the\nsame code.\n\nChange-Id: I212656f65e6c47e1167a193c1024100ae97f0028\n"
    },
    {
      "commit": "680b1bdd7e5d112ba4b95d6c81a43b65119b3b9c",
      "tree": "21514b638db9b28cf26b4b452c3e5f9449568812",
      "parents": [
        "d8af8bd46c13347ca15558999db4da85dbc31818"
      ],
      "author": {
        "name": "Ian Rogers",
        "email": "irogers@google.com",
        "time": "Wed Mar 07 20:18:49 2012 -0800"
      },
      "committer": {
        "name": "Ian Rogers",
        "email": "irogers@google.com",
        "time": "Wed Mar 07 20:18:49 2012 -0800"
      },
      "message": "Unify branch flags, pretty printer for OpKind.\n\nLIR operand 0 is always an offset for a branch. This is clear in\nconditional branches that are binary and have the 2nd operand as the\ncondition codes of the branch. This changes unconditional branches to be\nunary and therefore more intention revealing that the 1st operand will\nbe used by the assembler to hold an offset.\n\nA \u003c\u003c operator for OpKind allows easy pretty printing.\n\nChange-Id: I933b8e0bf43f5be3eff13f93c3fc1539ae526840\n"
    },
    {
      "commit": "d8af8bd46c13347ca15558999db4da85dbc31818",
      "tree": "a0153603c7fef38d7af3f41bcfa7d5c4ccba55fc",
      "parents": [
        "5cd9e6d5ca3e8736b307240bf7307e8aceceae5d",
        "5bc5a7b9d9adcfb50e18bd3776d3875ad7a4ae8c"
      ],
      "author": {
        "name": "buzbee",
        "email": "buzbee@google.com",
        "time": "Wed Mar 07 16:14:04 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Mar 07 16:14:04 2012 -0800"
      },
      "message": "Merge \"MIPS runtime support stubs.  Untested/uncompiled\" into dalvik-dev"
    },
    {
      "commit": "5bc5a7b9d9adcfb50e18bd3776d3875ad7a4ae8c",
      "tree": "7cbe66a8ee0fa788d2ac3bfc0708d7f0c7322228",
      "parents": [
        "86a4bce32e2aaf3d377c0acf865f0630a7c30495"
      ],
      "author": {
        "name": "buzbee",
        "email": "buzbee@google.com",
        "time": "Wed Mar 07 15:52:59 2012 -0800"
      },
      "committer": {
        "name": "buzbee",
        "email": "buzbee@google.com",
        "time": "Wed Mar 07 15:52:59 2012 -0800"
      },
      "message": "MIPS runtime support stubs.  Untested/uncompiled\n\nFirst stab at translating the Arm stubs to MIPS code.\n\nChange-Id: I0cff280c760b6355e2ede85434752efe1e425c58\n"
    },
    {
      "commit": "5cd9e6d5ca3e8736b307240bf7307e8aceceae5d",
      "tree": "9fcf7b0012e96c2d7280eca681406d932c5440be",
      "parents": [
        "86a4bce32e2aaf3d377c0acf865f0630a7c30495",
        "e89df50ee79b5e6c38a46e23133f970c8ee226f4"
      ],
      "author": {
        "name": "jeffhao",
        "email": "jeffhao@google.com",
        "time": "Wed Mar 07 12:18:16 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Mar 07 12:18:16 2012 -0800"
      },
      "message": "Merge \"Fixed instruction decoding for throw-verification error format.\" into dalvik-dev"
    },
    {
      "commit": "e89df50ee79b5e6c38a46e23133f970c8ee226f4",
      "tree": "21789ccac161066276fe92777ab6c42c8f8954e9",
      "parents": [
        "6150d9889b56e95f1267d9200c5702b16e0d32d5"
      ],
      "author": {
        "name": "jeffhao",
        "email": "jeffhao@google.com",
        "time": "Wed Mar 07 12:15:46 2012 -0800"
      },
      "committer": {
        "name": "jeffhao",
        "email": "jeffhao@google.com",
        "time": "Wed Mar 07 12:15:46 2012 -0800"
      },
      "message": "Fixed instruction decoding for throw-verification error format.\n\nThe decoder was not populating register vA and vB.\n\nChange-Id: I5a162f308ef919f4c98efe9bbdf8eb263906d01a\n"
    },
    {
      "commit": "86a4bce32e2aaf3d377c0acf865f0630a7c30495",
      "tree": "98517211fdb1309f461e3fe3c41a34739ad121c1",
      "parents": [
        "6150d9889b56e95f1267d9200c5702b16e0d32d5"
      ],
      "author": {
        "name": "buzbee",
        "email": "buzbee@google.com",
        "time": "Tue Mar 06 18:15:00 2012 -0800"
      },
      "committer": {
        "name": "buzbee",
        "email": "buzbee@google.com",
        "time": "Wed Mar 07 12:10:21 2012 -0800"
      },
      "message": "Fix branch bug (showed up in codegen for debug)\n\nThere are a few \"safe\" optimizations in the compiler - removing\nregister copies where source and target are the same, deleting\nbranches to the next instruction, etc.  One of the redundant\nbranch optimizations, however, was incorrect and resulted in\na good branch being deleted.  This one showed up in the debug\nbuild, and resulted in a failure to do a suspend check (because\nthe branch to the suspend check was deleted).\n\nI had hoped that this but might also be the case of some\nother unexpected failures, but unfortunately I was only able\nto trigger it when doing a \"codegen for debug\" build.\n\nThe source of the bug was a confusion around 16 v/ 32-bit\nunconditional branch encodings.  For a 32-bit unconditional\nbranch, going to the next instruction means an displacement\nof zero.  However, for 16-bit branches, the next instruction\nis represented by a displacement of -1.\n\nTo help track down this sort of thing in the future, this CL\nalso adds a new optimization disable flag: kSafeOptimizations.\nThis will allow us to really turn off all optimizations for A/B\ntesting.\n\nAlso in this CL we are re-enabling the ability to promote argument\nregisters and improving somewhat the code sequence for suspend\ncheck when debug is enabled.\n\nChange-Id: Ib6b202746eac751cab3b4609805a389c18cb67b2\n"
    },
    {
      "commit": "6150d9889b56e95f1267d9200c5702b16e0d32d5",
      "tree": "84a16e556fe52a499c252ab6989cb9327d6c80c3",
      "parents": [
        "7cce95f86941dfd791496229d90fd1a5714b2ec1",
        "fc34adb0c40e336c4d0582698fd6d4bf3b3de5e1"
      ],
      "author": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Wed Mar 07 09:59:04 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Mar 07 09:59:04 2012 -0800"
      },
      "message": "Merge \"Use llvm_shutdown_obj to fix \"static initialization order fiasco.\"\" into dalvik-dev"
    },
    {
      "commit": "7cce95f86941dfd791496229d90fd1a5714b2ec1",
      "tree": "9eb4e40b75a4068be8b1062ebdbf52a34a41febf",
      "parents": [
        "720fc19a1602ca1ee06cd7936979c2c30422a739",
        "4dcbffb3c6e8757d127dede32c8efa6c04e44a70"
      ],
      "author": {
        "name": "Brian Carlstrom",
        "email": "bdc@google.com",
        "time": "Wed Mar 07 09:40:28 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Mar 07 09:40:28 2012 -0800"
      },
      "message": "Merge \"Fix oatdump OAT_LOCATION output\" into dalvik-dev"
    },
    {
      "commit": "fc34adb0c40e336c4d0582698fd6d4bf3b3de5e1",
      "tree": "7ad6793be3c7c90c0e698fa77814e4edd05389a3",
      "parents": [
        "720fc19a1602ca1ee06cd7936979c2c30422a739"
      ],
      "author": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Wed Mar 07 08:51:44 2012 -0800"
      },
      "committer": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Wed Mar 07 09:18:56 2012 -0800"
      },
      "message": "Use llvm_shutdown_obj to fix \"static initialization order fiasco.\"\n\nYesterday we added a static guard, which is removed from this commit.\nUsing llvm_shutdown_obj will avoid the ordering problem.\n\nChange-Id: Iaa2e4293373c849f6b07082fb70b49ff0e805033\n"
    },
    {
      "commit": "720fc19a1602ca1ee06cd7936979c2c30422a739",
      "tree": "2400cb17a1ad91d2f0986b67e360ee365fe3ed53",
      "parents": [
        "786d583ffb498ccf07a133e0ed22cbe6ea1d2c27",
        "66adbb79b317e08b6b4838a51d38ae81a7bb87fa"
      ],
      "author": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Wed Mar 07 08:47:31 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Mar 07 08:47:31 2012 -0800"
      },
      "message": "Merge \"Implement thread-related runtime support routines.\" into dalvik-dev"
    },
    {
      "commit": "66adbb79b317e08b6b4838a51d38ae81a7bb87fa",
      "tree": "80ad3febdfb99f341dca0fb7b4a228b9c74d9891",
      "parents": [
        "666527de37f04d50e52987d5d0878f2de9cc1e8a"
      ],
      "author": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Wed Mar 07 01:31:50 2012 -0800"
      },
      "committer": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Wed Mar 07 01:54:21 2012 -0800"
      },
      "message": "Implement thread-related runtime support routines.\n\nChange-Id: Idb6165ba4525293b5ac8d65a5f37240ef6bc3483\n"
    },
    {
      "commit": "4dcbffb3c6e8757d127dede32c8efa6c04e44a70",
      "tree": "568c490d168780cf314c550c1b10c5459e68d78c",
      "parents": [
        "a79d86d1564ae2ab75055ce62beb4f07d2f6bd5d"
      ],
      "author": {
        "name": "Brian Carlstrom",
        "email": "bdc@google.com",
        "time": "Wed Mar 07 00:21:18 2012 -0800"
      },
      "committer": {
        "name": "Brian Carlstrom",
        "email": "bdc@google.com",
        "time": "Wed Mar 07 00:21:18 2012 -0800"
      },
      "message": "Fix oatdump OAT_LOCATION output\n\nregressed in 3a5c1ce3f11805a3382046f699c8fb1410a602b3\n\nChange-Id: I85ea2d8a4e5c97ac69a5a9d505b58bbd98215234\n"
    },
    {
      "commit": "a79d86d1564ae2ab75055ce62beb4f07d2f6bd5d",
      "tree": "b36ef3e6e80fadbb1c80a37f56d3f01fc0807eda",
      "parents": [
        "666527de37f04d50e52987d5d0878f2de9cc1e8a",
        "7d77624abcc39cc94e8c59a67db2ed06b8adff08"
      ],
      "author": {
        "name": "Brian Carlstrom",
        "email": "bdc@google.com",
        "time": "Tue Mar 06 23:08:47 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Mar 06 23:08:47 2012 -0800"
      },
      "message": "Merge \"Change CHECK(dex_cache !\u003d NULL) to use DCHECK\" into dalvik-dev"
    },
    {
      "commit": "7d77624abcc39cc94e8c59a67db2ed06b8adff08",
      "tree": "c455f20888c968f4f991bebb41a2ed46f8895000",
      "parents": [
        "adb8c67f6d87a160d4e3a8afea7cb93f6c14568b"
      ],
      "author": {
        "name": "Brian Carlstrom",
        "email": "bdc@google.com",
        "time": "Tue Mar 06 23:05:49 2012 -0800"
      },
      "committer": {
        "name": "Brian Carlstrom",
        "email": "bdc@google.com",
        "time": "Tue Mar 06 23:05:49 2012 -0800"
      },
      "message": "Change CHECK(dex_cache !\u003d NULL) to use DCHECK\n\nChange-Id: If10b8748eff68f4b57c6ae6ecf4b18be4b4546b5\n"
    },
    {
      "commit": "be5ff20bc68de0d14f043421815c5f3dbe0c39da",
      "tree": "31445fbc651ff0dec85678c48ae45969d78f6adf",
      "parents": [
        "63deaad18853e55097761e47a9eedd12eb0c1e58"
      ],
      "author": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Tue Mar 06 21:57:49 2012 -0800"
      },
      "committer": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Tue Mar 06 21:57:49 2012 -0800"
      },
      "message": "Fix ART_USE_LLVM_COMPILER breakage.\n\nCope with today\u0027s compiler.cc change.\n\nChange-Id: I0f13536652a5b7c617648fe43a03dbbec391efd6\n"
    },
    {
      "commit": "63deaad18853e55097761e47a9eedd12eb0c1e58",
      "tree": "4eb14783cac63b87c7985409a8f8d70ebceaa4e5",
      "parents": [
        "adb8c67f6d87a160d4e3a8afea7cb93f6c14568b"
      ],
      "author": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Tue Mar 06 17:26:37 2012 -0800"
      },
      "committer": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Tue Mar 06 21:53:05 2012 -0800"
      },
      "message": "Fix memory corruption due to premature llvm_shutdown().\n\nUnder LLVM, multiple compiler-related gtests randomly crashes from time\nto time, because common_test.h has code to new multiple compiler\ninstances. Multiple CompilerLLVM instances may cause crash if one\nshuts down LLVM prematurely.\n\nThis fix uses static class member. Destructor is where we shut\ndown LLVM.\n\nChange-Id: Ied371794af7ca9eb2c9fe6b278fd779a61a4a753\n"
    },
    {
      "commit": "adb8c67f6d87a160d4e3a8afea7cb93f6c14568b",
      "tree": "93b265743b7fd7a831803f6bc84e2aa8ce338156",
      "parents": [
        "731b2abfccd8704d129e3b8e46a086660161fef3"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Mar 06 16:49:32 2012 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Mar 06 17:21:07 2012 -0800"
      },
      "message": "Move the compiler away from libdex.\n\nChange-Id: I0c5fdc38d94f1199023cfc6aab3060b927ad2383\n"
    },
    {
      "commit": "731b2abfccd8704d129e3b8e46a086660161fef3",
      "tree": "dae3ad92a46b1846b767bfb643b1360b6973b8f7",
      "parents": [
        "f56197c5519395fcf8226a7148cc87367e0a7ad4"
      ],
      "author": {
        "name": "Brian Carlstrom",
        "email": "bdc@google.com",
        "time": "Tue Mar 06 16:53:35 2012 -0800"
      },
      "committer": {
        "name": "Brian Carlstrom",
        "email": "bdc@google.com",
        "time": "Tue Mar 06 16:53:35 2012 -0800"
      },
      "message": "Make the code more defensive against null DexCache values\n\nChange-Id: Iaa3f17dced518a5d2a53479b3ae3cebacb1e3b6a\n"
    },
    {
      "commit": "f56197c5519395fcf8226a7148cc87367e0a7ad4",
      "tree": "1403d90cb236e3643192e40a293b71ea8cd4a3be",
      "parents": [
        "9787ac4a18e71a57ed2b559759e9903b557a65dd"
      ],
      "author": {
        "name": "jeffhao",
        "email": "jeffhao@google.com",
        "time": "Mon Mar 05 18:01:54 2012 -0800"
      },
      "committer": {
        "name": "jeffhao",
        "email": "jeffhao@google.com",
        "time": "Tue Mar 06 16:19:22 2012 -0800"
      },
      "message": "Verifier can handle an unresolved method or class.\n\nAdded a new dex verifier entry point that takes in a ClassDef index and\ncontext instead of a Class pointer. This allows basic structural\nverification to still be run on classes that FindClass fails to find. If\nthe basic structural classes fail, then the compilation for the class is\nskipped. Before, an unresolvable malformed class would cause the\ncompiler to segfault.\n\nChange-Id: Ia02c77560bf274281c4e22250983dc96511501eb\n"
    },
    {
      "commit": "9787ac4a18e71a57ed2b559759e9903b557a65dd",
      "tree": "57f673ba508c0fea41b9a231866ecd4b47f42adf",
      "parents": [
        "bc615a1d16969196168d5d4632f2cb1aa8b6664b"
      ],
      "author": {
        "name": "Logan Chien",
        "email": "loganchien@google.com",
        "time": "Tue Mar 06 18:24:03 2012 +0800"
      },
      "committer": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Tue Mar 06 14:38:23 2012 -0800"
      },
      "message": "Skip src/jni_compiler.cc from llvm backend\n\nLLVM backend has llvm-specific JNI compiler, which\nis using different calling convention and being\nincompatible with src/jni_compiler.cc, thus we are\nnot using src/jni_compiler.cc in the llvm backend.\n\nChange-Id: I68a3beb2668b4bcc8ed36aed57fa252907ad2453\n"
    },
    {
      "commit": "bc615a1d16969196168d5d4632f2cb1aa8b6664b",
      "tree": "471480a66cf51e692c4107627798a7c5ca148d49",
      "parents": [
        "fc5bc67b206208415e09dec039413fdb87b45f18"
      ],
      "author": {
        "name": "Logan Chien",
        "email": "loganchien@google.com",
        "time": "Tue Mar 06 17:03:48 2012 +0800"
      },
      "committer": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Tue Mar 06 14:16:11 2012 -0800"
      },
      "message": "Create the runtime support table from the function list.\n\nChange-Id: I04fb12c51e7820e3fe169bc0865778350071cd93\n"
    },
    {
      "commit": "fc5bc67b206208415e09dec039413fdb87b45f18",
      "tree": "9076b3e266d90cc618a13ebe1371fb02053864b3",
      "parents": [
        "bae4c85765fa94393c44c0e3be532a08761913cd"
      ],
      "author": {
        "name": "Logan Chien",
        "email": "loganchien@google.com",
        "time": "Tue Mar 06 16:54:30 2012 +0800"
      },
      "committer": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Tue Mar 06 11:05:32 2012 -0800"
      },
      "message": "Add more runtime function defintion for LLVM.\n\nChange-Id: I5d510055411155d17bb4d5c0395454c14e96a27c\n"
    },
    {
      "commit": "bae4c85765fa94393c44c0e3be532a08761913cd",
      "tree": "5ccf9af51bb5c6b8817989874a266587d4d2a72a",
      "parents": [
        "2771fb1ebc5dd9be8b56ff721c0b2606287d5a62"
      ],
      "author": {
        "name": "Logan Chien",
        "email": "loganchien@google.com",
        "time": "Tue Mar 06 16:53:31 2012 +0800"
      },
      "committer": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Tue Mar 06 11:05:17 2012 -0800"
      },
      "message": "Remove the quotation of the function name.\n\nChange-Id: Ib01363787fe69b23996bdd0e200a07c7997370fc\n"
    },
    {
      "commit": "2771fb1ebc5dd9be8b56ff721c0b2606287d5a62",
      "tree": "7b171a58a1a5cc6eb7aae2b2df84934bc530444e",
      "parents": [
        "6f8048d151c1f80db84e712f6fbd8419bd10cfa6"
      ],
      "author": {
        "name": "Logan Chien",
        "email": "loganchien@google.com",
        "time": "Tue Mar 06 16:28:35 2012 +0800"
      },
      "committer": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Tue Mar 06 11:04:36 2012 -0800"
      },
      "message": "Move the runtime support function lookup callback to runtime_support_llvm.cc.\n\nChange-Id: I5384543966880742a814cfac398edd30060e06d9\n"
    },
    {
      "commit": "6f8048d151c1f80db84e712f6fbd8419bd10cfa6",
      "tree": "c0239e4d331df0782c3c8af166f7268ffd334d13",
      "parents": [
        "3b2b2e7622404b6b08d97ed368b78c5b7984dd07",
        "de797834a282bf913e144f83ff044efd6d77b278"
      ],
      "author": {
        "name": "Ian Rogers",
        "email": "irogers@google.com",
        "time": "Tue Mar 06 10:42:01 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Mar 06 10:42:01 2012 -0800"
      },
      "message": "Merge \"Dummy up MOV instructions, add/tweak comments.\" into dalvik-dev"
    },
    {
      "commit": "de797834a282bf913e144f83ff044efd6d77b278",
      "tree": "2d4e91dfc5065b1b046c22972739129c48ad5a2d",
      "parents": [
        "96ab420e2a78f9832a094254354062b8bc54bf72"
      ],
      "author": {
        "name": "Ian Rogers",
        "email": "irogers@google.com",
        "time": "Tue Mar 06 10:18:10 2012 -0800"
      },
      "committer": {
        "name": "Ian Rogers",
        "email": "irogers@google.com",
        "time": "Tue Mar 06 10:41:21 2012 -0800"
      },
      "message": "Dummy up MOV instructions, add/tweak comments.\n\nAlso reorder some things to help me see them on screen at the same time.\n\nChange-Id: I398b46410f73d7853b5a1734f5c2a9e256b981bf\n"
    },
    {
      "commit": "3b2b2e7622404b6b08d97ed368b78c5b7984dd07",
      "tree": "156ce660d5b69500c379405924782c9a182cd3c3",
      "parents": [
        "a6b2ca64e4ee348265ff61e6e3250e446f44636e"
      ],
      "author": {
        "name": "Logan Chien",
        "email": "loganchien@google.com",
        "time": "Tue Mar 06 16:11:45 2012 +0800"
      },
      "committer": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Tue Mar 06 10:04:52 2012 -0800"
      },
      "message": "Fix IGET/IPUT slow path code generation.\n\nTwo bugs are fixed in this commit:\n\n1. IGET instructions is calling Set*Instance runtime\n   function, which should be changed to Get*Instance.\n\n2. We should pass the object address to the runtime\n   function for IGET and IPUT.\n\nChange-Id: I10c317e5c2d093966d8a0f2fd422f9bb5d2b34ba\n"
    },
    {
      "commit": "a6b2ca64e4ee348265ff61e6e3250e446f44636e",
      "tree": "e389bf3f75590871a0a5dd9e43c14c304ff20045",
      "parents": [
        "96ab420e2a78f9832a094254354062b8bc54bf72"
      ],
      "author": {
        "name": "Logan Chien",
        "email": "loganchien@google.com",
        "time": "Tue Mar 06 15:50:54 2012 +0800"
      },
      "committer": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Tue Mar 06 09:50:48 2012 -0800"
      },
      "message": "Remove unused runtime support function.\n\nart_object_init_from_code() is longer useful after\n\"f3773f0: Move finalizer registration into managed code\"\nhas been committed.\n\nart_resolve_method_frome_code() has never been used\nand won\u0027t be used in the future.\n\nChange-Id: I114eb4e985b733ff3183c60ebc23fc54007423fd\n"
    },
    {
      "commit": "96ab420e2a78f9832a094254354062b8bc54bf72",
      "tree": "6430fd7a7009d3de261995af55253970756c7a28",
      "parents": [
        "95ba0dc516531776813c426e85ce868ead564a7b"
      ],
      "author": {
        "name": "Ian Rogers",
        "email": "irogers@google.com",
        "time": "Mon Mar 05 19:51:02 2012 -0800"
      },
      "committer": {
        "name": "Ian Rogers",
        "email": "irogers@google.com",
        "time": "Tue Mar 06 09:06:14 2012 -0800"
      },
      "message": "Beginning of X86 encoding map and instruction size routine.\n\nChange-Id: Idaa0d5e0852d7bcfeabff443a45223a078ad02d2\n"
    },
    {
      "commit": "95ba0dc516531776813c426e85ce868ead564a7b",
      "tree": "9d1de523e588210764373cdd1b44de8b04eb8468",
      "parents": [
        "f03c288c11ce3334fccab7fe31d8ebd14ad02157"
      ],
      "author": {
        "name": "Brian Carlstrom",
        "email": "bdc@google.com",
        "time": "Mon Mar 05 22:06:14 2012 -0800"
      },
      "committer": {
        "name": "Brian Carlstrom",
        "email": "bdc@google.com",
        "time": "Mon Mar 05 22:06:14 2012 -0800"
      },
      "message": "Adjust Thumb2 code offsets\n\nChange-Id: I2ec65c653bda3b47efa54d5496c96a3c7f343e5a\n"
    },
    {
      "commit": "f03c288c11ce3334fccab7fe31d8ebd14ad02157",
      "tree": "f726d1813d8fdb576eab842ba5b035d4898daa6a",
      "parents": [
        "7638ae31e349f4d257d718f1cb62532ccf0a46a1"
      ],
      "author": {
        "name": "Brian Carlstrom",
        "email": "bdc@google.com",
        "time": "Mon Mar 05 20:29:06 2012 -0800"
      },
      "committer": {
        "name": "Brian Carlstrom",
        "email": "bdc@google.com",
        "time": "Mon Mar 05 20:45:30 2012 -0800"
      },
      "message": "Remove redundant oat file fields\n\nChange-Id: I2d48acec661c491a692971767694d13a2355e22a\n"
    },
    {
      "commit": "7638ae31e349f4d257d718f1cb62532ccf0a46a1",
      "tree": "93a257d620ea28425a28e36ad5082ea0d1d445e4",
      "parents": [
        "a7678db092ac6bb79f7cad490099a1015fbbc714",
        "a72ec820f8cb8e04b0ba87a62e36b05a2c92ef36"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Mar 05 17:45:11 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Mar 05 17:45:11 2012 -0800"
      },
      "message": "Merge \"Store the instruction set in the oat header, and use it in oatdump.\" into dalvik-dev"
    },
    {
      "commit": "a72ec820f8cb8e04b0ba87a62e36b05a2c92ef36",
      "tree": "c94c0a91525d1cc6d08daaf36d4c092f303b0287",
      "parents": [
        "e88dfbf138bc204b1ce21911f1c34098ea74af7c"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Mar 05 17:12:22 2012 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Mar 05 17:44:43 2012 -0800"
      },
      "message": "Store the instruction set in the oat header, and use it in oatdump.\n\nChange-Id: I5cc4b853c3ebf1efcc1feb14ce05c97ceabe2c3e\n"
    },
    {
      "commit": "a7678db092ac6bb79f7cad490099a1015fbbc714",
      "tree": "95181107e5ef16068298cbec717b605f54748ca4",
      "parents": [
        "e88dfbf138bc204b1ce21911f1c34098ea74af7c"
      ],
      "author": {
        "name": "buzbee",
        "email": "buzbee@google.com",
        "time": "Mon Mar 05 15:35:46 2012 -0800"
      },
      "committer": {
        "name": "buzbee",
        "email": "buzbee@google.com",
        "time": "Mon Mar 05 15:35:46 2012 -0800"
      },
      "message": "x86 source code hack and slash\n\nMade a pass over the compiler source to get it into a compileable\nstate for the x86 target.  Lots of temporary #ifdefs, but it\ncompiles and makes it to oatArchInit().\n\nChange-Id: Ib8bcd2a032e47dcb83430dbc479a29758e084359\n"
    },
    {
      "commit": "e88dfbf138bc204b1ce21911f1c34098ea74af7c",
      "tree": "c7ca47856bf4b47563cb31b455f299871f7b7a6f",
      "parents": [
        "9831bfac0d2ef54a996ae02e0755600ecb5f66ea"
      ],
      "author": {
        "name": "buzbee",
        "email": "buzbee@google.com",
        "time": "Mon Mar 05 11:19:57 2012 -0800"
      },
      "committer": {
        "name": "buzbee",
        "email": "buzbee@google.com",
        "time": "Mon Mar 05 11:22:32 2012 -0800"
      },
      "message": "x86 codegen source file skeletons\n\nAdd source files for x86 code generation.  These are basically just\nthe MIPS versions with all bodies ifdef\u0027d out and replaced with\nUNIMPLEMENTED(WARNING).\n\nThere is also one real change in this CL related to the way the\nassembler computes instruction size.  We now set the initial\ninstruction size into the LIR during flag generation.  For x86, this\nsize may be changed during assembly when we detect the ability to\nsubstitute a general instruction for an equivalent one with a shorter\nencoding.\n\nNOTE: the new files are not yet ready for compilation.  That will be\nthe next CL.\n\nChange-Id: Id94fbeeb7c3e36ba4a8d93c3807351ea20c74133\n"
    },
    {
      "commit": "9831bfac0d2ef54a996ae02e0755600ecb5f66ea",
      "tree": "0931a3b4b09af073876805bde7f0784ab6503d4e",
      "parents": [
        "4455f7816c697b36fc3c158234770c6f1176b41e",
        "e32ca23c21187f62aaef70d33de3c362e2bbd0e3"
      ],
      "author": {
        "name": "Ian Rogers",
        "email": "irogers@google.com",
        "time": "Mon Mar 05 10:28:57 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Mar 05 10:28:57 2012 -0800"
      },
      "message": "Merge \"Start of X86 LIR description.\" into dalvik-dev"
    },
    {
      "commit": "e32ca23c21187f62aaef70d33de3c362e2bbd0e3",
      "tree": "3534e61e1742bb496df5bac7ae15602a0d111d17",
      "parents": [
        "cad9606ee40300d19d9e135065f8ffe29d970c29"
      ],
      "author": {
        "name": "Ian Rogers",
        "email": "irogers@google.com",
        "time": "Mon Mar 05 10:20:23 2012 -0800"
      },
      "committer": {
        "name": "Ian Rogers",
        "email": "irogers@google.com",
        "time": "Mon Mar 05 10:23:19 2012 -0800"
      },
      "message": "Start of X86 LIR description.\n\nChange-Id: I34298bf9cf6bfdb022064bc7fdabffae857c8c5c\n"
    },
    {
      "commit": "4455f7816c697b36fc3c158234770c6f1176b41e",
      "tree": "015a112589bea82b5b04f21c76fd961e3e95d31a",
      "parents": [
        "cad9606ee40300d19d9e135065f8ffe29d970c29"
      ],
      "author": {
        "name": "buzbee",
        "email": "buzbee@google.com",
        "time": "Mon Mar 05 10:14:28 2012 -0800"
      },
      "committer": {
        "name": "buzbee",
        "email": "buzbee@google.com",
        "time": "Mon Mar 05 10:16:02 2012 -0800"
      },
      "message": "Fix type in README.mips\n\nChange-Id: I0089fba3a0e04573043f3805180c8785342a6862\n"
    },
    {
      "commit": "cad9606ee40300d19d9e135065f8ffe29d970c29",
      "tree": "d43c03c0a5e677353a499077e720d62974cb28dd",
      "parents": [
        "fb6adba0d5d5505610fbd325e7911db700a2f1e8"
      ],
      "author": {
        "name": "Ian Rogers",
        "email": "irogers@google.com",
        "time": "Sun Mar 04 10:33:52 2012 -0800"
      },
      "committer": {
        "name": "Ian Rogers",
        "email": "irogers@google.com",
        "time": "Mon Mar 05 09:07:56 2012 -0800"
      },
      "message": "Fix MIPS comment typo.\n\nChange-Id: I0235350b4d5204e6c3a63b7f73b83c85628067f3\n"
    },
    {
      "commit": "fb6adba0d5d5505610fbd325e7911db700a2f1e8",
      "tree": "84ad8f9cc55a2ae87f80c05927126af7e75604d7",
      "parents": [
        "123e8a7fdf69b40603f7df95f08d62c69ee1c07e"
      ],
      "author": {
        "name": "Ian Rogers",
        "email": "irogers@google.com",
        "time": "Sun Mar 04 21:51:51 2012 -0800"
      },
      "committer": {
        "name": "Ian Rogers",
        "email": "irogers@google.com",
        "time": "Mon Mar 05 08:56:55 2012 -0800"
      },
      "message": "Sharpen virtual calls to final methods.\n\nAlso remove unused instance resolution stub.\n\nChange-Id: I2abb988d107e98ac0148fb81464b22622a468382\n"
    },
    {
      "commit": "123e8a7fdf69b40603f7df95f08d62c69ee1c07e",
      "tree": "ff5a69bd1c8457127d7570f0484ae7f867f41a03",
      "parents": [
        "3ad8b9d7e2f44d7dc5c2e5e500d27f3a31dc5628",
        "ed64e8d73d55e9b2b3e34439ee5747cdb8415c5e"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Mar 05 07:01:26 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Mar 05 07:01:26 2012 -0800"
      },
      "message": "Merge \"Add the missing operator\u003c\u003c for InstructionSet and use it in the disassembler.\" into dalvik-dev"
    },
    {
      "commit": "3ad8b9d7e2f44d7dc5c2e5e500d27f3a31dc5628",
      "tree": "e4d24a0c1e7ba5f176a364836858a59a20555dd4",
      "parents": [
        "edbd6ed0f5881e9cc9e2e864aa35b3ea390afacf"
      ],
      "author": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Sun Mar 04 23:41:35 2012 -0800"
      },
      "committer": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Sun Mar 04 23:41:35 2012 -0800"
      },
      "message": "Fix build. ART mandates the ordering of fields in SIRT.\n\nChange-Id: I3ea8e165d9598b35045d895caf04a276a6c50576\n"
    },
    {
      "commit": "edbd6ed0f5881e9cc9e2e864aa35b3ea390afacf",
      "tree": "2b139ed283c1527333d425b0b7c914c3a6c89f71",
      "parents": [
        "113f4fc6600ac72c3d5b8ef7c8a9e041116111d0"
      ],
      "author": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Sun Mar 04 22:32:59 2012 -0800"
      },
      "committer": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Sun Mar 04 23:08:37 2012 -0800"
      },
      "message": "No more \"-0\", \"-1\" files. gtest-0 or boot-0 are OK, not \"-0\"\n\nChange-Id: I3b00d1511cf03e4bf54b222971f69f2f13f9ab04\n"
    },
    {
      "commit": "113f4fc6600ac72c3d5b8ef7c8a9e041116111d0",
      "tree": "2d185d86ad0e12f028661fba18f809338c982b39",
      "parents": [
        "a8a9c3490776ab897a15bebd31119c94ede5c19a"
      ],
      "author": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Sun Mar 04 14:28:35 2012 -0800"
      },
      "committer": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Sun Mar 04 23:07:30 2012 -0800"
      },
      "message": "Add runtime support routines to runtime_support_llvm.h and utils_llvm.\n\nE.g., to pass compiler_test, add\nart_throw_null_pointer_exception_from_code.\n\nChange-Id: Ib8a367fd52ee82dcafe8f916050f0b59e5eda3bb\n"
    },
    {
      "commit": "a8a9c3490776ab897a15bebd31119c94ede5c19a",
      "tree": "71f4bea1ffafb679209f18aee242ca41c3fd7ed2",
      "parents": [
        "a33cb99eeb65cb91ba29bfc31d7794b761781e74"
      ],
      "author": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Sat Mar 03 22:35:16 2012 -0800"
      },
      "committer": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Sun Mar 04 23:04:23 2012 -0800"
      },
      "message": "Initial runtime support routines for ART LLVM.\n\nChange-Id: Id5bb87685e1a95444bdd7a676f68b378e1b88d3f\n"
    },
    {
      "commit": "a33cb99eeb65cb91ba29bfc31d7794b761781e74",
      "tree": "5c5a6eae547d986613caae2ca6bcb7947526d205",
      "parents": [
        "a2ebdd74eb2f36e6efa7a482bc11c7b93d97c2c3",
        "40627dbd27b3c9e2cf32768882d9859ce71ef015"
      ],
      "author": {
        "name": "Ian Rogers",
        "email": "irogers@google.com",
        "time": "Sun Mar 04 20:11:39 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sun Mar 04 20:11:39 2012 -0800"
      },
      "message": "Merge \"Disassembler support for branches.\" into dalvik-dev"
    },
    {
      "commit": "40627dbd27b3c9e2cf32768882d9859ce71ef015",
      "tree": "5dc265a1a3fda7c75679c5c6a5cb55d2bd3ada90",
      "parents": [
        "11f9d2130e938511efceb6d2a4793cee7dfdde35"
      ],
      "author": {
        "name": "Ian Rogers",
        "email": "irogers@google.com",
        "time": "Sun Mar 04 17:31:09 2012 -0800"
      },
      "committer": {
        "name": "Ian Rogers",
        "email": "irogers@google.com",
        "time": "Sun Mar 04 20:08:54 2012 -0800"
      },
      "message": "Disassembler support for branches.\n\nChange-Id: Ifc6b0177a984b972c54ac5e3a86ab874fcc9d747\n"
    },
    {
      "commit": "a2ebdd74eb2f36e6efa7a482bc11c7b93d97c2c3",
      "tree": "2d63c98a1f729f1e17969bfbc4b7dc1da48f4567",
      "parents": [
        "11f9d2130e938511efceb6d2a4793cee7dfdde35"
      ],
      "author": {
        "name": "buzbee",
        "email": "buzbee@google.com",
        "time": "Sun Mar 04 14:57:06 2012 -0800"
      },
      "committer": {
        "name": "buzbee",
        "email": "buzbee@google.com",
        "time": "Sun Mar 04 15:00:36 2012 -0800"
      },
      "message": "Complete MIPS code generation support\n\nWith this CL code generation for MIPS is complete (though untested on\nactual hardware).  Core and the boot classpath compile without issue.\n\nThe primary thrust here was to support expanding of short branch\nsequences to long form during assembly if the displacement field overflowed.\nThat led to a general cleanup of creation on LIR nodes outside of the\nnormal flow.\n\nAlso introduced is a README to describe the state of MIPS support, as well\nas memory barrier handling.\n\nChange-Id: I251a2ef8d74bc7183406dce9493464be24a9d7f7\n"
    },
    {
      "commit": "11f9d2130e938511efceb6d2a4793cee7dfdde35",
      "tree": "cf6a63ad64a66c5ee225c789adc15ba4962d526c",
      "parents": [
        "e8267506ac2d64351e21ce90e8643b9247e1803c"
      ],
      "author": {
        "name": "Bill Buzbee",
        "email": "buzbee@google.com",
        "time": "Sat Mar 03 20:03:18 2012 -0800"
      },
      "committer": {
        "name": "Bill Buzbee",
        "email": "buzbee@google.com",
        "time": "Sat Mar 03 20:03:18 2012 -0800"
      },
      "message": "Mips portable floating point support\n\nFleshing out the portable floating point.\n\nChange-Id: Ie7a6dcb168a4eb2a61a52e6d747da4118d54f3aa\n"
    },
    {
      "commit": "e8267506ac2d64351e21ce90e8643b9247e1803c",
      "tree": "e36eebed027e0db210b6edb1b95f5475064904c0",
      "parents": [
        "434ce294296b41a962a4fd86c3deb1f0f462d3e6",
        "c5159d55ca8e9022b748176f9f53676e8e9d4cd2"
      ],
      "author": {
        "name": "buzbee",
        "email": "buzbee@google.com",
        "time": "Sat Mar 03 16:33:01 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat Mar 03 16:33:01 2012 -0800"
      },
      "message": "Merge \"MIPS switch table support\" into dalvik-dev"
    },
    {
      "commit": "c5159d55ca8e9022b748176f9f53676e8e9d4cd2",
      "tree": "d407a682788fbbca4dbd0821350058a3c2901617",
      "parents": [
        "5b455485c1deda58959fdc410050e01448c032c2"
      ],
      "author": {
        "name": "buzbee",
        "email": "buzbee@google.com",
        "time": "Sat Mar 03 11:48:39 2012 -0800"
      },
      "committer": {
        "name": "buzbee",
        "email": "buzbee@google.com",
        "time": "Sat Mar 03 16:32:24 2012 -0800"
      },
      "message": "MIPS switch table support\n\nAnd 64-bit neg/add/sub (ouch! Mips has no carry bit...)\n\nChange-Id: Ifb94324a0052d6069977fb8f22679b95890445d8\n"
    },
    {
      "commit": "434ce294296b41a962a4fd86c3deb1f0f462d3e6",
      "tree": "00961755d4b53d178f8820febbf6f352778b77f3",
      "parents": [
        "4c17dffabb0ad062574018ba1b2e760ec34a03ee",
        "c77928475995d01e1d6d2b2d6672510d01a5fce4"
      ],
      "author": {
        "name": "Ian Rogers",
        "email": "irogers@google.com",
        "time": "Sat Mar 03 15:48:38 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat Mar 03 15:48:38 2012 -0800"
      },
      "message": "Merge \"Fix bug in JNI compiler AAPCS padding calculation\" into dalvik-dev"
    },
    {
      "commit": "c77928475995d01e1d6d2b2d6672510d01a5fce4",
      "tree": "a7d7f10217216601bd26e1e500750d0cf0300da4",
      "parents": [
        "5b455485c1deda58959fdc410050e01448c032c2"
      ],
      "author": {
        "name": "Ian Rogers",
        "email": "irogers@google.com",
        "time": "Sat Mar 03 15:36:20 2012 -0800"
      },
      "committer": {
        "name": "Ian Rogers",
        "email": "irogers@google.com",
        "time": "Sat Mar 03 15:48:03 2012 -0800"
      },
      "message": "Fix bug in JNI compiler AAPCS padding calculation\n\nFixes bug found in Google Earth.\n\nChange-Id: I54beb05a67e77a004052b567c11837cc6f2c18fe\n"
    },
    {
      "commit": "4c17dffabb0ad062574018ba1b2e760ec34a03ee",
      "tree": "5c677c962ec3b8503149dd33e3bd3af48804c28c",
      "parents": [
        "5b455485c1deda58959fdc410050e01448c032c2"
      ],
      "author": {
        "name": "Logan Chien",
        "email": "loganchien@google.com",
        "time": "Fri Mar 02 20:15:46 2012 +0800"
      },
      "committer": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Sat Mar 03 09:38:27 2012 -0800"
      },
      "message": "Enable -arm-long-calls for ARMv7/Thumb2 code generation.\n\nChange-Id: I3d31fe94f5fb2ff6990343f5399f3c0352c89234\n"
    },
    {
      "commit": "ed64e8d73d55e9b2b3e34439ee5747cdb8415c5e",
      "tree": "8e46939e7ea4873aad92fee45e2fef688a34f0e0",
      "parents": [
        "5b455485c1deda58959fdc410050e01448c032c2"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Mar 02 20:37:45 2012 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Mar 02 20:37:45 2012 -0800"
      },
      "message": "Add the missing operator\u003c\u003c for InstructionSet and use it in the disassembler.\n\nChange-Id: I9de4a8a00d9fcbad79f6893eff2aa28aafa8e6e3\n"
    },
    {
      "commit": "5b455485c1deda58959fdc410050e01448c032c2",
      "tree": "8d845941c908b6ef33e2b27add49c56da5a1f2b2",
      "parents": [
        "3a5c1ce3f11805a3382046f699c8fb1410a602b3",
        "a4060e5fe4729fa30bde965efc35779690478fa4"
      ],
      "author": {
        "name": "Ian Rogers",
        "email": "irogers@google.com",
        "time": "Fri Mar 02 17:03:07 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Mar 02 17:03:07 2012 -0800"
      },
      "message": "Merge \"Fix a deadlock caused by my big threading change yesterday.\" into dalvik-dev"
    },
    {
      "commit": "a4060e5fe4729fa30bde965efc35779690478fa4",
      "tree": "c1689d50ddc3914c64d53ca345157702cdd4e661",
      "parents": [
        "1f729aac2e3a4924d09cdb1a17f72ee2e22745b4"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Mar 02 16:51:35 2012 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Mar 02 16:51:35 2012 -0800"
      },
      "message": "Fix a deadlock caused by my big threading change yesterday.\n\nAlso add even more locking diagnostics that catch this class of error and\nexplain what you\u0027ve done in clear terms. In this case:\n\n03-02 16:42:46.040 20768 20785 E art     : holding ThreadListLock while doing condition variable wait on ThreadSuspendCountLock\n...\n03-02 16:42:46.493 23421 23421 I DEBUG   :     #01  pc 00149e5f  /system/lib/libartd.so (art::Runtime::Abort(char const*, int)+338)\n03-02 16:42:46.493 23421 23421 I DEBUG   :     #02  pc 00113c0b  /system/lib/libartd.so (art::LogMessage::~LogMessage()+1026)\n03-02 16:42:46.493 23421 23421 I DEBUG   :     #03  pc 0015a723  /system/lib/libartd.so (art::Thread::CheckSafeToWait(art::MutexRank)+290)\n03-02 16:42:46.493 23421 23421 I DEBUG   :     #04  pc 0012481f  /system/lib/libartd.so (art::ConditionVariable::Wait(art::Mutex\u0026)+26)\n03-02 16:42:46.493 23421 23421 I DEBUG   :     #05  pc 001631fb  /system/lib/libartd.so (art::ThreadList::FullSuspendCheck(art::Thread*)+154)\n03-02 16:42:46.493 23421 23421 I DEBUG   :     #06  pc 00159ffd  /system/lib/libartd.so (art::Thread::SetState(art::Thread::State)+128)\n03-02 16:42:46.493 23421 23421 I DEBUG   :     #07  pc 00161bb5  /system/lib/libartd.so (art::ScopedThreadListLock::ScopedThreadListLock()+64)\n03-02 16:42:46.493 23421 23421 I DEBUG   :     #08  pc 00164a31  /system/lib/libartd.so (art::ThreadList::Unregister()+92)\n03-02 16:42:46.493 23421 23421 I DEBUG   :     #09  pc 0015e537  /system/lib/libartd.so (art::Thread::CreateCallback(void*)+230)\n03-02 16:42:46.493 23421 23421 I DEBUG   :     #10  pc 00013b08  /system/lib/libc.so (__thread_entry+48)\n03-02 16:42:46.493 23421 23421 I DEBUG   :     #11  pc 0001363c  /system/lib/libc.so (pthread_create+180)\n\nChange-Id: I9cdb770e766f63359ab7d11ee1993dd7a6fc1c90\n"
    },
    {
      "commit": "3a5c1ce3f11805a3382046f699c8fb1410a602b3",
      "tree": "74d7f28a910d4670de71d9edc2e9af3b56d31636",
      "parents": [
        "41f05df8aeba13e853a22820a0f4bf094233e2d9"
      ],
      "author": {
        "name": "Ian Rogers",
        "email": "irogers@google.com",
        "time": "Wed Feb 29 10:06:46 2012 -0800"
      },
      "committer": {
        "name": "Ian Rogers",
        "email": "irogers@google.com",
        "time": "Fri Mar 02 15:47:32 2012 -0800"
      },
      "message": "Extra verbosity and disassembler for oatdump\n\nDisassembler for thumb2 instructions.\nPrint outlying methods for ART files.\nFind oat code methods that require trampolines.\nFix accounting of code and which file contains which bytes.\nDump oat meta-data.\n\nChange-Id: I10f52a4841f57a3f65d61ce0d1bb71bb4eb9f595\n"
    },
    {
      "commit": "41f05df8aeba13e853a22820a0f4bf094233e2d9",
      "tree": "0f107dd37b06d85ee3cf4261b855d836f1f4ba6a",
      "parents": [
        "be00364d260ea96323a070723af0bd61e3ea703a",
        "0398c42cd64682d18120a26c6c39b193fdf97658"
      ],
      "author": {
        "name": "buzbee",
        "email": "buzbee@google.com",
        "time": "Fri Mar 02 15:40:30 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Mar 02 15:40:30 2012 -0800"
      },
      "message": "Merge \"More MIPS support\" into dalvik-dev"
    },
    {
      "commit": "be00364d260ea96323a070723af0bd61e3ea703a",
      "tree": "065731f9d2f41c68f4d7dea0a642857f2ab8a69d",
      "parents": [
        "bc6ba404efa7bec4ca5d9fdee890cba7beaaee5a"
      ],
      "author": {
        "name": "buzbee",
        "email": "buzbee@google.com",
        "time": "Fri Mar 02 15:28:37 2012 -0800"
      },
      "committer": {
        "name": "buzbee",
        "email": "buzbee@google.com",
        "time": "Fri Mar 02 15:28:37 2012 -0800"
      },
      "message": "Another attempt to fix the mac build\n\nChange-Id: Ib005ee782085e809f97ffb1a8fb843bca29d2e2d\n"
    },
    {
      "commit": "0398c42cd64682d18120a26c6c39b193fdf97658",
      "tree": "f5a60c8bca5d4acd7b31d21239f3c74bf7c7d42c",
      "parents": [
        "82488f563e7f72f8c626052893c1792d76ab3faf"
      ],
      "author": {
        "name": "buzbee",
        "email": "buzbee@google.com",
        "time": "Fri Mar 02 15:22:47 2012 -0800"
      },
      "committer": {
        "name": "buzbee",
        "email": "buzbee@google.com",
        "time": "Fri Mar 02 15:22:47 2012 -0800"
      },
      "message": "More MIPS support\n\nWorking through the unimps.\n\nChange-Id: Ie088d2061ca9a77f42ebd75e2936159465deed10\n"
    },
    {
      "commit": "bc6ba404efa7bec4ca5d9fdee890cba7beaaee5a",
      "tree": "f309b72db67250d828d5db168834c9167c2b4e80",
      "parents": [
        "1f729aac2e3a4924d09cdb1a17f72ee2e22745b4"
      ],
      "author": {
        "name": "buzbee",
        "email": "buzbee@google.com",
        "time": "Fri Mar 02 14:52:47 2012 -0800"
      },
      "committer": {
        "name": "buzbee",
        "email": "buzbee@google.com",
        "time": "Fri Mar 02 14:57:37 2012 -0800"
      },
      "message": "Fix the mac build - tweak the display format\n\nChange-Id: I6c89ba96556f0db847d3426544adeeac98e14051\n"
    },
    {
      "commit": "1f729aac2e3a4924d09cdb1a17f72ee2e22745b4",
      "tree": "c591f64fea660a410647adc82a3f08c160399efd",
      "parents": [
        "82488f563e7f72f8c626052893c1792d76ab3faf"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Mar 02 13:55:41 2012 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Mar 02 13:55:41 2012 -0800"
      },
      "message": "Make diagnostic output more consistent.\n\nChange-Id: I3a2feb06fc0ef1db6b17ebd64c2241d94193a5d7\n"
    },
    {
      "commit": "82488f563e7f72f8c626052893c1792d76ab3faf",
      "tree": "e17e3bc62adf8b57bfeb86a3a879dfb099d3d1d7",
      "parents": [
        "013b6f296ff7c0cb6aa5aeb6868df05995eeadb7"
      ],
      "author": {
        "name": "buzbee",
        "email": "buzbee@google.com",
        "time": "Fri Mar 02 08:20:26 2012 -0800"
      },
      "committer": {
        "name": "buzbee",
        "email": "buzbee@google.com",
        "time": "Fri Mar 02 13:02:52 2012 -0800"
      },
      "message": "Multi-target Codegen cleanup\n\nTrying to get a bit more consistent in the abstraction layer\nnaming:\n\n     genXXX   -\u003e high-level codegen, for ex: genIGet()\n     opXXX    -\u003e instruction-level output, for ex: opRegImm()\n\nAlso more fleshing out of the Mips codegen support.\n\nChange-Id: Iafdf397cbb5015bfe3aa2c38680d96c7c05f8bc4\n"
    },
    {
      "commit": "013b6f296ff7c0cb6aa5aeb6868df05995eeadb7",
      "tree": "6ea7d86b3b79d8562fc50566ac392f3572a971e2",
      "parents": [
        "6d6d754c5500e29e5e6ec6b3404725535b794e1e"
      ],
      "author": {
        "name": "Logan Chien",
        "email": "loganchien@google.com",
        "time": "Fri Mar 02 17:20:33 2012 +0800"
      },
      "committer": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Fri Mar 02 01:41:30 2012 -0800"
      },
      "message": "Print LLVM passes time consumption.\n\nChange-Id: I592b843da83acefb5b397e07565406254081d3df\n"
    },
    {
      "commit": "6d6d754c5500e29e5e6ec6b3404725535b794e1e",
      "tree": "34a6c1bbad3860fab9d9c9f6980d0559af63f934",
      "parents": [
        "480c5734d2bf5bceace1d5db96c41ea6ba328273"
      ],
      "author": {
        "name": "Logan Chien",
        "email": "loganchien@google.com",
        "time": "Fri Mar 02 14:00:31 2012 +0800"
      },
      "committer": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Thu Mar 01 22:11:17 2012 -0800"
      },
      "message": "Remove duplicated code.\n\nChange-Id: Ib884f29e1dcefd6e36526b0b306031a7a52e8c43\n"
    },
    {
      "commit": "480c5734d2bf5bceace1d5db96c41ea6ba328273",
      "tree": "22745353684e846bb93b21bde4799e89421a9b44",
      "parents": [
        "ffb465f23d9549dd591e6aa62e9250523cb00233",
        "ce1190657a66a414e8e6a79cf9bcf6ddeae0d934"
      ],
      "author": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Thu Mar 01 21:21:25 2012 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Mar 01 21:21:26 2012 -0800"
      },
      "message": "Merge \"Remove MutexLock from the argument.  Use AssertHeld instead.\" into dalvik-dev"
    },
    {
      "commit": "ffb465f23d9549dd591e6aa62e9250523cb00233",
      "tree": "2108ba79a4ec8031faa56ef0806f93bc2217c237",
      "parents": [
        "71ac99485e79ad7eb1ba3ea2d404d53bb5784c13"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Mar 01 18:46:05 2012 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Mar 01 21:15:36 2012 -0800"
      },
      "message": "libcorkscrew native stacks, mutex ranking, and better ScopedThreadListLock.\n\nThis change uses libcorkscrew to show native stacks for threads in kNative or,\nunlike dalvikvm, kVmWait --- working on the runtime directly I\u0027ve found it\nsomewhat useful to be able to see _which_ internal resource we\u0027re waiting on.\nWe can always take that back out (or make it oatexecd-only) if it turns out to\nbe too noisy/confusing for app developers.\n\nThis change also lets us rank mutexes and enforce -- in oatexecd -- that you\ntake locks in a specific order.\n\nBoth of these helped me test the third novelty: removing the heap locking from\nScopedThreadListLock. I\u0027ve manually inspected all the callers and added a\nScopedHeapLock where I think one is necessary. In manual testing, this makes\njdb a lot less prone to locking us up. There still seems to be a problem with\nthe JDWP VirtualMachine.Resume command, but I\u0027ll look at that separately. This\nis a big enough and potentially disruptive enough change already.\n\nChange-Id: Iad974358919d0e00674662dc8a69cc65878cfb5c\n"
    },
    {
      "commit": "ce1190657a66a414e8e6a79cf9bcf6ddeae0d934",
      "tree": "ed4593bbfd1cab11ffdd72bea3b6b3a0b153b5dd",
      "parents": [
        "71ac99485e79ad7eb1ba3ea2d404d53bb5784c13"
      ],
      "author": {
        "name": "Logan Chien",
        "email": "loganchien@google.com",
        "time": "Fri Mar 02 11:57:34 2012 +0800"
      },
      "committer": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Thu Mar 01 21:11:24 2012 -0800"
      },
      "message": "Remove MutexLock from the argument.  Use AssertHeld instead.\n\nChange-Id: I43beab4cf30cbb6b2d3c383d492240d4a1ac8068\n"
    },
    {
      "commit": "71ac99485e79ad7eb1ba3ea2d404d53bb5784c13",
      "tree": "1a3a853d1b3b64f3d99b4b8f8dd9d2f85cd13d92",
      "parents": [
        "5de3494e4297c0d480409da3fecee39173f1d4e1"
      ],
      "author": {
        "name": "buzbee",
        "email": "buzbee@google.com",
        "time": "Thu Mar 01 17:23:10 2012 -0800"
      },
      "committer": {
        "name": "buzbee",
        "email": "buzbee@google.com",
        "time": "Thu Mar 01 17:23:10 2012 -0800"
      },
      "message": "Change assembler to use byte instruction lengths\n\nChange the Arm \u0026 Mips instruction templaces to record instruction\nsize in bytes rather than half-words.  Also includes a few Mips\nchanges to get us in compilable state.\n\nChange-Id: I5a4f6cbd0cb0569805d9dfbd341c244152e59ac7\n"
    },
    {
      "commit": "5de3494e4297c0d480409da3fecee39173f1d4e1",
      "tree": "269cd3447925d0b474d47fb056da4730f288ee12",
      "parents": [
        "6edfde4ae89f3a16d22ca82c928a5dd420e9fce9"
      ],
      "author": {
        "name": "buzbee",
        "email": "buzbee@google.com",
        "time": "Thu Mar 01 14:51:57 2012 -0800"
      },
      "committer": {
        "name": "buzbee",
        "email": "buzbee@google.com",
        "time": "Thu Mar 01 16:43:54 2012 -0800"
      },
      "message": "Another step towards a Mips target\n\nUpdating the MIPS target to use the now common codegen routines.\nStill much to do, but the general structure is sufficient to allow\nwork to begin on the other target.\n\nChange-Id: I0d288fdfb59c8e76fad73185fdd56b345e87b604\n"
    }
  ],
  "next": "6edfde4ae89f3a16d22ca82c928a5dd420e9fce9"
}
