)]}'
{
  "log": [
    {
      "commit": "ba67d7d31efbbdc6e8e8870b2cf0faf7d22db454",
      "tree": "35991880b54af24665e8635a4dc8362eef46567c",
      "parents": [
        "58f7cd7085e08ccf9b1b5e51e69fceec2ba4a024"
      ],
      "author": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Sat Jun 23 18:48:04 2012 -0700"
      },
      "committer": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Sat Jun 23 18:48:04 2012 -0700"
      },
      "message": "Revert \"Cleanup runtime support. Inline via IR builder.\"\n\nThis reverts commit afa97e2b4ede9c5fb590399b106a42728ce3b999.\n"
    },
    {
      "commit": "afa97e2b4ede9c5fb590399b106a42728ce3b999",
      "tree": "1abf70b4685ed2bc0ede88264ac98f6c56dfa9e7",
      "parents": [
        "7baf96f592522b763d15389a01c6ab6f0a977621"
      ],
      "author": {
        "name": "TDYa127",
        "email": "tdy@google.com",
        "time": "Fri Jun 22 22:20:11 2012 -0700"
      },
      "committer": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Fri Jun 22 22:33:33 2012 -0700"
      },
      "message": "Cleanup runtime support. Inline via IR builder.\n\nChange-Id: Ib34067489defa75f7e1feb1c382820e52754e72e\n"
    },
    {
      "commit": "a64f157a79bec7215e29f18a5a73d70edb0f8abf",
      "tree": "987ed565770acb5be5b3dbfef2fe349aa6d78177",
      "parents": [
        "8b0c81613688b5091c22a02d4c881376a0509a1c"
      ],
      "author": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Fri Jun 22 00:09:57 2012 -0700"
      },
      "committer": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Fri Jun 22 00:09:57 2012 -0700"
      },
      "message": "Fix art-portable\u0027s build. Adding 1 more parameter.\n\nChange-Id: I15d761cc1816a7a5f9043aabf2e834c5bfd49cbe\nAuthor: irogers.\n"
    },
    {
      "commit": "0399dde18753aa9bd2bd0d7cf60beef154d164a4",
      "tree": "ea88327c01ca321074aaa59b97e4c54348802937",
      "parents": [
        "de5705dcf4ab5f92d48e144bcd7b59f7bcd18e16"
      ],
      "author": {
        "name": "Ian Rogers",
        "email": "irogers@google.com",
        "time": "Wed Jun 06 17:09:28 2012 -0700"
      },
      "committer": {
        "name": "Ian Rogers",
        "email": "irogers@google.com",
        "time": "Thu Jun 21 22:11:24 2012 -0700"
      },
      "message": "Remove Frame, merge shadow and quick representations.\n\nChange-Id: I5ae03a5e52111792d2df7e83cbd89ab25777844b\n"
    },
    {
      "commit": "77065fb5116f8c558327e8bfe540e14e965841f0",
      "tree": "6f4abea1f4bd161e4a29a98dbb9b84ceab5b29fb",
      "parents": [
        "713b00e106f6f27142a3273acf496865729c936f"
      ],
      "author": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Thu Jun 21 11:32:19 2012 -0700"
      },
      "committer": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Thu Jun 21 11:32:19 2012 -0700"
      },
      "message": "[LLVM] Fix parameter bug in throwing ArrayIndexOutOfBoundsException.\n\nFix bug exposed by 201-built-in-exception-detail-messages.\n\nChange-Id: Id20072db40486302c6fb6ffbe64ab7b0fb2ce85f\n"
    },
    {
      "commit": "c147826c9223a6835bcdbdb3a47af258457de1f0",
      "tree": "5e2836908ad00274f1db7aa3369599af3069c744",
      "parents": [
        "92e3134cd84c134f167175288671a1e6838c908f"
      ],
      "author": {
        "name": "TDYa127",
        "email": "tdy@google.com",
        "time": "Wed Jun 20 20:22:27 2012 -0700"
      },
      "committer": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Wed Jun 20 22:12:21 2012 -0700"
      },
      "message": "Save R9 when up-call.\n\nThanks to Ian who found this bug. This change can also fix a jni_internal_test\non device when we use -O2 instead of -O0.\n\nChange-Id: I38ac829409aeacb120f5b3d239aedcd39ec32e63\n"
    },
    {
      "commit": "3f6635a2c84d645002f651c312d53f8348646c1f",
      "tree": "e46caa5d1199aca6f6b3c1cbd5f0e706606682c3",
      "parents": [
        "c553b95527b78c1fcf9b719a87d8875f71280f71"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Jun 19 13:37:49 2012 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Jun 19 14:26:32 2012 -0700"
      },
      "message": "Improve JniAbort (and JNI tests).\n\nThis has been on my to-do list for a while, but it actually bit people\nin the ass yesterday. This change enables us to write a lot more (and\nbetter) tests, but for now I\u0027ve just improved the tests that already\nexisted.\n\nChange-Id: I04a18656de60b47e5a6b5777204c144209d1448e\n"
    },
    {
      "commit": "c553b95527b78c1fcf9b719a87d8875f71280f71",
      "tree": "14161d83a8b454f0f9733e8a7ac8d8c95d6dbb40",
      "parents": [
        "672df88dceaedcc2111e3b9aef1deb01885537a8"
      ],
      "author": {
        "name": "Ian Rogers",
        "email": "irogers@google.com",
        "time": "Mon Jun 18 23:39:11 2012 -0700"
      },
      "committer": {
        "name": "Ian Rogers",
        "email": "irogers@google.com",
        "time": "Mon Jun 18 23:39:11 2012 -0700"
      },
      "message": "Fix JNI return type checking on portable path.\n\nChange-Id: I83c259d0b27c06c8f258c71e1536d4bfa50bb0cc\n"
    },
    {
      "commit": "53519bf663e185d40a4cdf8b5af67ba34c725fa7",
      "tree": "7ad63505088353f8e8302d75933a53ff351136e7",
      "parents": [
        "69c27e04a96f037ee0ec0472c103416d4a4d5850"
      ],
      "author": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Sun Jun 17 03:45:00 2012 -0700"
      },
      "committer": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Sun Jun 17 03:51:59 2012 -0700"
      },
      "message": "Set Target CPU.\n\nChange-Id: I1d80b87421e353c5f4925aaaec0b8301048cd0a6\n"
    },
    {
      "commit": "6cf23884730574ca364b357e823259f4993e6908",
      "tree": "50ad618096847b2dfe423ece38246891870c84ce",
      "parents": [
        "cee4d0c1c2faacf0eae748a24cc7e455e067d977"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Jun 15 15:42:07 2012 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Jun 15 15:42:07 2012 -0700"
      },
      "message": "Simplify the default stack size handling.\n\nThe extra 16KB was just silly. We only need a notion of \"default stack size\"\nif there\u0027s an explicit command-line override.\n\nChange-Id: Ia63e00047a420546656ac8d2dad46789994157a3\n"
    },
    {
      "commit": "7de4bbe6019d432456cdac48332b60e44f130777",
      "tree": "8285d2b04ef1be7f22a6d489233f661d0932681c",
      "parents": [
        "1395b1e06c1d0ff5155b0c5d113ad3bd6f163c07"
      ],
      "author": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Fri Jun 15 08:25:48 2012 -0700"
      },
      "committer": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Fri Jun 15 08:25:48 2012 -0700"
      },
      "message": "Get llvm performance back.\n\nChange-Id: I2ee32bc26e9cd33a541fc85154634b1d77d5bc16\n"
    },
    {
      "commit": "b2e940a5e5fe25ca4c779129652d836e3a6adc67",
      "tree": "314165523d4e34e26bddff532a794ffda0de5429",
      "parents": [
        "3bb50b1ce3debd9722e7a7affd5c91025666ccc2"
      ],
      "author": {
        "name": "TDYa127",
        "email": "tdy@google.com",
        "time": "Mon Jun 11 17:56:10 2012 -0700"
      },
      "committer": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Mon Jun 11 20:19:50 2012 -0700"
      },
      "message": "Fix assume_this_non_null.\n\nIf we modify \"this\" register, we can\u0027t assume this will not be null.\n\nChange-Id: Ic4715d892af948e2c0f73de5be9159454ab661d6\n"
    },
    {
      "commit": "9eb5f03e0dd90ac25e01fcf81f832c50a1f09d2c",
      "tree": "711b2485f69db3c5af915a9442f45e0322ee299d",
      "parents": [
        "622a6988351d77da0008142f4ce1ea447d838556"
      ],
      "author": {
        "name": "TDYa127",
        "email": "tdy@google.com",
        "time": "Sun Jun 10 11:12:28 2012 -0700"
      },
      "committer": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Sun Jun 10 11:13:08 2012 -0700"
      },
      "message": "Fix MethodInfo. Remove unused shadow frame entry.\n\nChange-Id: I140b3640e1b1bd7575dd8134e295409937dbfd4b\n"
    },
    {
      "commit": "b08ed1255fc34b9f34bcea66cd5e0a292af3d698",
      "tree": "ecc865c3f942fe0949ef3d9b0bb3aa585f6e2d61",
      "parents": [
        "7a2a23a44d27f769718e28327af671f4e486c49a"
      ],
      "author": {
        "name": "TDYa127",
        "email": "tdy@google.com",
        "time": "Tue Jun 05 23:51:19 2012 -0700"
      },
      "committer": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Wed Jun 06 21:52:21 2012 -0700"
      },
      "message": "Implement thin-lock fast path for compiler-llvm.\n\nChange-Id: I09d6a0dba4df7cbeb0c0e3f432ab3b09fce0846d\n"
    },
    {
      "commit": "7a2a23a44d27f769718e28327af671f4e486c49a",
      "tree": "345a05da812927dafe13af82a4926257c3b368e9",
      "parents": [
        "95dfa6a8c522ad84a492d88666ea69fe7a3852c5"
      ],
      "author": {
        "name": "Logan Chien",
        "email": "loganchien@google.com",
        "time": "Wed Jun 06 11:01:00 2012 +0800"
      },
      "committer": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Wed Jun 06 21:22:11 2012 -0700"
      },
      "message": "Cleanup proxy stub compiler code.\n\nChange-Id: I2a5815cc2a38f5cea9e9c36e5e6db92c1a861eaa\n"
    },
    {
      "commit": "95dfa6a8c522ad84a492d88666ea69fe7a3852c5",
      "tree": "8e0d56021463754f2ea55ef53bf03aca49f79a68",
      "parents": [
        "a1beb1f8d37e5a02af12d80e59012f68112b3113"
      ],
      "author": {
        "name": "Logan Chien",
        "email": "loganchien@google.com",
        "time": "Fri Jun 01 16:08:02 2012 +0800"
      },
      "committer": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Wed Jun 06 21:15:07 2012 -0700"
      },
      "message": "Refine compiler runtime function list.\n\nThis CL includes several changes:\n\n1. Define 3 different compiler runtime function list\n   for different architecture:\n\n   - COMPILER_RUNTIME_FUNC_LIST_ARM\n   - COMPILER_RUNTIME_FUNC_LIST_MIPS\n   - COMPILER_RUNTIME_FUNC_LIST_X86\n\n2. Split MIPS compiler runtime function list from the\n   X86 version.\n\n3. Replace COMPILER_RUNTIME_FUNC_LIST with\n   COMPILER_RUNTIME_FUNC_LIST_NATIVE.  \"Native\" means\n   the host of the runtime.\n\nChange-Id: Ic18b793dd8c153cac4f7bc82dcd07e44576b7f58\n"
    },
    {
      "commit": "a1beb1f8d37e5a02af12d80e59012f68112b3113",
      "tree": "38eee5d1a143ce32530dda291b194c77e0d62989",
      "parents": [
        "fc6c5fde1b7cd0b8f06af2626bf7c597232f478d"
      ],
      "author": {
        "name": "Logan Chien",
        "email": "loganchien@google.com",
        "time": "Fri Jun 01 16:03:27 2012 +0800"
      },
      "committer": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Wed Jun 06 21:12:48 2012 -0700"
      },
      "message": "Rename CStringComparator to CStringLessThanComparator.\n\nChange-Id: Ie44950ebe5c65cd071238fb504769f71f346c729\n"
    },
    {
      "commit": "fc6c5fde1b7cd0b8f06af2626bf7c597232f478d",
      "tree": "ad195d37d0b2ed82c5f14dee79d1e860e96b78e7",
      "parents": [
        "4cf8f16f737e12625c549f915436b25e2b991289"
      ],
      "author": {
        "name": "Logan Chien",
        "email": "loganchien@google.com",
        "time": "Fri Jun 01 16:07:12 2012 +0800"
      },
      "committer": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Wed Jun 06 21:09:59 2012 -0700"
      },
      "message": "Add missing object.h to runtime_support_llvm.h\n\nChange-Id: I668cba1edab6d6cb3a39bfb81a87c203c4687bbe\n"
    },
    {
      "commit": "07a062cc9770d0fa8c73f116db4cb15bfba8b7b3",
      "tree": "23330ae6fd81e917aefd644d10a1d7018c913795",
      "parents": [
        "1ab4c0fc637cb6bb0ca5ce1401d6035001d73c1d"
      ],
      "author": {
        "name": "Logan Chien",
        "email": "loganchien@google.com",
        "time": "Fri Jun 01 11:24:29 2012 +0800"
      },
      "committer": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Wed Jun 06 18:37:29 2012 -0700"
      },
      "message": "Enable ARM long calls.\n\nChange-Id: I464817aac1ceeb155313ba0e2d290507050fda85\n"
    },
    {
      "commit": "6ea01141a8840cdff0ccc6a96e75ea2de082a3f5",
      "tree": "e244c88bf511c1f1a684f8a138b4d928ed5f7b63",
      "parents": [
        "dac5eb2dddf852818569bfc7ef2224146878c347"
      ],
      "author": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Sun Jun 03 14:26:08 2012 -0700"
      },
      "committer": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Sun Jun 03 14:28:59 2012 -0700"
      },
      "message": "GCC 4.6 (in dalvik-dev) is stricter about converting from NULL.\n\nFix the LLVM build for dalvik-dev.\n\nChange-Id: I35636b971453c2977b39ff840c2960c63ad658d6\n"
    },
    {
      "commit": "dac5eb2dddf852818569bfc7ef2224146878c347",
      "tree": "1cc5de0481d7b2b236ddd8e41bb472c7bc2f88e4",
      "parents": [
        "e5fc334cbe894cb8ff575cf4ab72e20e486c303e"
      ],
      "author": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Sun Jun 03 14:06:04 2012 -0700"
      },
      "committer": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Sun Jun 03 14:08:37 2012 -0700"
      },
      "message": "Optimization experiment.\n\nChange-Id: I58f429554e6082e65324429267289b8a70a0193e\n"
    },
    {
      "commit": "d4f82b63556a5e143e0c35fc06b69dbb60405f77",
      "tree": "c33b34745d3e6ecf323867b4c2d07c7c4353752d",
      "parents": [
        "eead4ac17ec9d5e750269a7d36bf6c36a6fd60c6"
      ],
      "author": {
        "name": "TDYa127",
        "email": "tdy@google.com",
        "time": "Sat Jun 02 21:48:09 2012 -0700"
      },
      "committer": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Sun Jun 03 09:33:18 2012 -0700"
      },
      "message": "Inline String.IndexOf and String.CompareTo.\n\nChange-Id: Ie012ff37f5d0e3ae48ac4c01b9e475628b11e45d\n"
    },
    {
      "commit": "eead4ac17ec9d5e750269a7d36bf6c36a6fd60c6",
      "tree": "911602ed79cde974cba5b6a18d57fc27987436ef",
      "parents": [
        "de479be99328d2113bf483e082c9ecf235a34d69"
      ],
      "author": {
        "name": "TDYa127",
        "email": "tdy@google.com",
        "time": "Sun Jun 03 07:15:25 2012 -0700"
      },
      "committer": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Sun Jun 03 09:12:30 2012 -0700"
      },
      "message": "Implement proxy stub for compiler_llvm.\n\nChange-Id: Id8ba59c62795d885a18b3cc634e7ef370a2d2f97\n"
    },
    {
      "commit": "de479be99328d2113bf483e082c9ecf235a34d69",
      "tree": "7a51b8512e12561b9b05238f489d98c1d4a4fdb9",
      "parents": [
        "af543476661966c83a1e1c4db4fbef0d9a2d3afa"
      ],
      "author": {
        "name": "TDYa127",
        "email": "tdy@google.com",
        "time": "Thu May 31 08:03:26 2012 -0700"
      },
      "committer": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Sun Jun 03 09:02:22 2012 -0700"
      },
      "message": "Refactor runtime support builder.\n\nAlso, add inline assembly for load offset from current thread.\n\nChange-Id: I5c32c04a5ab9a8574acbaf8ee3e08761ebe33d4f\n"
    },
    {
      "commit": "af543476661966c83a1e1c4db4fbef0d9a2d3afa",
      "tree": "25a85124f4f3ecc96292d8d9d74d70eb62be1f22",
      "parents": [
        "cb8f890e0723c4c9379aaf5c58bc80096c043f21"
      ],
      "author": {
        "name": "TDYa127",
        "email": "tdy@google.com",
        "time": "Mon May 28 21:49:23 2012 -0700"
      },
      "committer": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Sun Jun 03 08:59:14 2012 -0700"
      },
      "message": "Lazy pushing shadow frame.\n\nFunction:\naget v0, v1, v2\nreturn v0\n\nOriginal:\npush shadow frame;\nif (null pointer)        { throw; pop shadow frame; unwind; }\nif (index out of bounds) { throw; pop shadow frame; unwind; }\nload from array;\npop shadow frame;\nreturn;\n\nNew:\nif (null pointer)        { push shadow frame; throw; pop shadow frame; unwind; }\nif (index out of bounds) { push shadow frame; throw; pop shadow frame; unwind; }\nload from array;\nreturn;\n\nChange-Id: I7fc0ff12b9a5454f8e1491b9ce1cdef3afcbed23\n"
    },
    {
      "commit": "526643e38c344701d96068f351548a393c67b6be",
      "tree": "aabe346bdca4957185bf8cd2102bdc6bb583a92e",
      "parents": [
        "bd050618b502031a00294ebb652b5bc159a7388b"
      ],
      "author": {
        "name": "TDYa127",
        "email": "tdy@google.com",
        "time": "Sat May 26 01:01:48 2012 -0700"
      },
      "committer": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Thu May 31 21:48:44 2012 -0700"
      },
      "message": "Remove unnecessary exception and suspend checks.\n\n1. Post exception check, when 2 consecutive branches are return and exception\nunwind, respectively, merge these 2 branches as the caller doesn\u0027t care\nthe return value when an exception is pending..\n\n2. If the method is leaf, we can elide the suspend check.\n\n3. Also, move suspend checks to be before pushing shadow frame for the sake of \"1\"\nand for reducing code size (Multiple returns).\n\nChange-Id: I18f38f97f4e7714eadab4a1d6a568aa6e2c982ae\n"
    },
    {
      "commit": "26e9307287578ca784d0b0562cbececf32412130",
      "tree": "f99652cf9253b565fdca15d5abd1e226ea9fc6fc",
      "parents": [
        "29dbef28a9fa99d337265de1f054ba418f6bf127"
      ],
      "author": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Wed May 30 19:13:08 2012 -0700"
      },
      "committer": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Wed May 30 19:13:08 2012 -0700"
      },
      "message": "Make compiler_llvm target independent. To build x86 image.\n\nChange-Id: Ic013e71a3ed13d5e64d3db6551626299ff480eea\n"
    },
    {
      "commit": "0de52be83fc634d1407d8574986e8014de1df4fa",
      "tree": "8ae618f94b59174459b0332ad7608cab4933cf8b",
      "parents": [
        "e21021411bcab601692815ea13696f7426ac026e"
      ],
      "author": {
        "name": "TDYa127",
        "email": "tdy@google.com",
        "time": "Sun May 27 20:49:31 2012 -0700"
      },
      "committer": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Wed May 30 16:10:11 2012 -0700"
      },
      "message": "Remove data dependency of push/pop shadow frame.\n\nChange-Id: I883a1082190084ddfa4a09b8953ac9dafa256e7e\n"
    },
    {
      "commit": "e21021411bcab601692815ea13696f7426ac026e",
      "tree": "8a2069c1c675edef160517e273e467cb9d1d009e",
      "parents": [
        "b5c4922f3c0f56eec5064536c4bb780c4f58f3fb"
      ],
      "author": {
        "name": "TDYa127",
        "email": "tdy@google.com",
        "time": "Sat May 26 10:27:38 2012 -0700"
      },
      "committer": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Wed May 30 16:10:11 2012 -0700"
      },
      "message": "Refactor dalvik_reg.\n\nAlso, fix ComputeMethodInfo, ARRAY_LENGTH may throw exception.\n\nDon\u0027t store arguments to shadow frame, it already existed in the\ncaller\u0027s shadow frame.\n\nChange-Id: I184a93ed7f3caea924514d425e6a00dc60464f90\n"
    },
    {
      "commit": "4b644ecd8e8a266747dfdc9a960e27520b1d5738",
      "tree": "0e72eea43b07ca859fd212bcdab083b4f9e2a37c",
      "parents": [
        "a4f94740f9d66b21f4bcd3a225c434aa29cfa323"
      ],
      "author": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Tue May 29 17:16:31 2012 -0700"
      },
      "committer": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Tue May 29 17:16:31 2012 -0700"
      },
      "message": "Fix art LLVM build.\n\nChange-Id: I1060b557d1cd35d0f6ac76c3e097ca23f57fdaa3\n"
    },
    {
      "commit": "a4f94740f9d66b21f4bcd3a225c434aa29cfa323",
      "tree": "88e3834418ac3e12d2c270fed3a370bda2643d0b",
      "parents": [
        "214d307f3d5bbfe6254ae9e96d504d3e665baa2c"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue May 29 16:28:38 2012 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue May 29 16:28:38 2012 -0700"
      },
      "message": "Finish cleanup of class/field/method caching.\n\nChange-Id: I289ae724cbd98487429275837d23b7b2d7096156\n"
    },
    {
      "commit": "eac766769e3114a078c188ea26776a81f0edb3cf",
      "tree": "4b9b8dfc89725173431817baba4455c013e40577",
      "parents": [
        "3f9ace8d90bfc48c8d7bf35af66de8ce8238de7f"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu May 24 21:56:51 2012 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri May 25 12:04:43 2012 -0700"
      },
      "message": "DO NOT MERGE Fix all unsafe caching to be like libcore.\n\nThis way, if a runtime is restarted within a process, we re-initialize all\nthe cached data.\n\nConflicts:\n\n\tsrc/native/java_lang_Runtime.cc -- nativeExit lost an argument in dalvik-dev\n\n(cherry picked from commit 7756d5473fa27ce7e6ac7c31770eef7030431da4)\n\nChange-Id: I6184fc20c2a9ec16c4b053584a4d1c3b64452d0f\n"
    },
    {
      "commit": "b2eb5c18d628dc84bdc424b5e5a491382d867e36",
      "tree": "42e7e0700c5a45224c2b72e3c80f84404a906345",
      "parents": [
        "a964d414bafe15287a68f5360ef8de737b165ee9"
      ],
      "author": {
        "name": "TDYa127",
        "email": "tdy@google.com",
        "time": "Thu May 24 15:52:10 2012 -0700"
      },
      "committer": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Thu May 24 21:24:42 2012 -0700"
      },
      "message": "Reduce memory usage.\n\nAlso, fix InferredRegCategoryMap constructor. (The regs_size is uint16_t.)\n\nChange-Id: If85df1ad78c3acc6d3c19e605ee7d90f43df1159\n"
    },
    {
      "commit": "a964d414bafe15287a68f5360ef8de737b165ee9",
      "tree": "b5e1c3aca9432ef3f24f14e56563c950593fbf8b",
      "parents": [
        "cf44e6f1ec194a906f4760a7c0395fdb0123d7ae"
      ],
      "author": {
        "name": "TDYa127",
        "email": "tdy@google.com",
        "time": "Sun May 20 23:42:19 2012 -0700"
      },
      "committer": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Thu May 24 21:24:39 2012 -0700"
      },
      "message": "Fix float/double mem2reg issue.\n\nIf we bitcast the pointer, it can\u0027t do the mem2reg.\n\nChange-Id: I54790929a91d17500857ee231672a325238ad176\n"
    },
    {
      "commit": "82d31cdf122c284ca9c3b4292f09edc9b13a2970",
      "tree": "0aeaf341f53fbc42a81cce090da3cf57293b16fa",
      "parents": [
        "d66a87583bebcd5f89906aeaae9f8fb104ef2ac9"
      ],
      "author": {
        "name": "Logan Chien",
        "email": "loganchien@google.com",
        "time": "Wed May 23 18:37:44 2012 +0800"
      },
      "committer": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Wed May 23 08:46:36 2012 -0700"
      },
      "message": "Fix invoke-direct and invoke-direct/range CTS.\n\nChange-Id: I224d438f1cc74c72cb3c7edee26e2fab0e3bcee6\n"
    },
    {
      "commit": "3978da5ef34dee0d1e33e6606445a21b3b8475f4",
      "tree": "c91ef13838c6153e12285f7e3b9c729abde250a7",
      "parents": [
        "b203a20cb91faafca8419769a64fc43813c215ca"
      ],
      "author": {
        "name": "TDYa127",
        "email": "tdy@google.com",
        "time": "Sat May 19 07:45:39 2012 -0700"
      },
      "committer": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Sat May 19 13:58:13 2012 -0700"
      },
      "message": "Improve output code, while compilation time delta is in the noise range\n\nChange-Id: I1def5b1602c95155752b75d797a1c78c231fc721\n"
    },
    {
      "commit": "b5eb00c20a21d346eedd20904e0b31768f172465",
      "tree": "7e8e0c08665af1f7006f20fc4fa8b94503e66929",
      "parents": [
        "4b1baf1659581a9c30ee859061101a9842ddd8b3"
      ],
      "author": {
        "name": "Logan Chien",
        "email": "loganchien@google.com",
        "time": "Fri May 18 19:56:46 2012 +0800"
      },
      "committer": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Fri May 18 12:20:22 2012 -0700"
      },
      "message": "Use multithread while compiling LLVM bitcode.\n\nSince the LLVM multithread issue has been resolved,\nwe can use multithreaded compilation instead of\nmulti-process with pipe.\n\nWith this CL, we can reduce the strange deadlock\nbetween \"main\" and \"Compile Worker\" process.\n\nChange-Id: Ib2db7eb371347d6631a0dfc51a959a6237b5e513\n"
    },
    {
      "commit": "4b1baf1659581a9c30ee859061101a9842ddd8b3",
      "tree": "f5eb0c88b3037e88b2ae780fb940f69750c1ca5b",
      "parents": [
        "6e474f8a2eb5379c74e589a41713c9b26aed2904"
      ],
      "author": {
        "name": "Logan Chien",
        "email": "loganchien@google.com",
        "time": "Fri May 18 16:28:36 2012 +0800"
      },
      "committer": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Fri May 18 12:19:38 2012 -0700"
      },
      "message": "Fix filled-new-array to pass CTS.\n\nDon\u0027t rely on dex cache when we are compiling the method.\nWe should determine the array type from the type descriptor,\nwhich is specified in the dex file.\n\n$ cts-tradefed run singleCommand cts --class \\\ndot.junit.opcodes.filled_new_array_range.JUnit_Test_filled_new_array_range\n\nChange-Id: If99c236c06bc2f1e2576c6deec24e2456fb37dcd\n"
    },
    {
      "commit": "6e474f8a2eb5379c74e589a41713c9b26aed2904",
      "tree": "6fecf7b7feaad9e12214b4a2346f2c61c9a1a738",
      "parents": [
        "d70faafce3b04aa79faa5def1e907f29bc24a788"
      ],
      "author": {
        "name": "TDYa127",
        "email": "tdy@google.com",
        "time": "Thu May 17 21:23:57 2012 -0700"
      },
      "committer": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Fri May 18 12:19:09 2012 -0700"
      },
      "message": "Only initialize the shadow frame table.\n\nThe shadow frame header will be filled before used.\n\nChange-Id: Ic7375012c1a65ea67dd9be648671edb9d4a5fb9a\n"
    },
    {
      "commit": "b9ff6b1c87788d398e10820423371ff0f9bd3ca1",
      "tree": "2818c66024c380720f517665af9cbb312891e165",
      "parents": [
        "29c0cd1f38efdb8c201317b5bc07f6b9dce97cef"
      ],
      "author": {
        "name": "TDYa127",
        "email": "tdy@google.com",
        "time": "Thu May 17 11:14:29 2012 -0700"
      },
      "committer": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Fri May 18 00:21:28 2012 -0700"
      },
      "message": "Move all alloca to the first basic block.\n\nChange-Id: I30581c70cb84ffc812f9a834ac1fd25e21bb7008\n"
    },
    {
      "commit": "29c0cd1f38efdb8c201317b5bc07f6b9dce97cef",
      "tree": "6368f3f5078e624cc8cdbf152eab3eb02362f220",
      "parents": [
        "9fb89dda9390a2c0b37944f34bdf61d20cf750f5"
      ],
      "author": {
        "name": "TDYa127",
        "email": "tdy@google.com",
        "time": "Thu May 17 04:51:08 2012 -0700"
      },
      "committer": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Fri May 18 00:21:28 2012 -0700"
      },
      "message": "Inline specific method.\n\nChange-Id: Ie9f035211df3ad552768be6aa3c6a38adb3ce046\n"
    },
    {
      "commit": "8db6ea39275171cc738c12685c4c6c5fd0c2af45",
      "tree": "04eba1debfd07268707f201b62cd0e36bbf1acf7",
      "parents": [
        "f165286d35bb5cc0e173cbf2d233314c7e805795"
      ],
      "author": {
        "name": "TDYa127",
        "email": "tdy@google.com",
        "time": "Thu May 17 04:48:42 2012 -0700"
      },
      "committer": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Thu May 17 21:28:26 2012 -0700"
      },
      "message": "Code cleanup. Simplify EmitArrayGEP.\n\nChange-Id: Ief3d2448859ceae2e3818f29d69076423bfbd1e1\n"
    },
    {
      "commit": "f165286d35bb5cc0e173cbf2d233314c7e805795",
      "tree": "f57b5062dd2afc0c8c659cb6e19cca7758a1e659",
      "parents": [
        "aaa5edcf2deb1bddcbf5fb27820ad2240ac5b4f2"
      ],
      "author": {
        "name": "TDYa127",
        "email": "tdy@google.com",
        "time": "Wed May 16 21:44:35 2012 -0700"
      },
      "committer": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Thu May 17 21:28:13 2012 -0700"
      },
      "message": "Don\u0027t allocate unused shadow frame entry.\n\nChange-Id: Ic1d9c4279c246358e812ccaba2fb535c5a01674d\n"
    },
    {
      "commit": "aaa5edcf2deb1bddcbf5fb27820ad2240ac5b4f2",
      "tree": "c2d0f408237ad5a30bfd67819e5c9a72cc3ac45e",
      "parents": [
        "983f2e411aee6b1d09e6da30e059b782b2699909"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed May 16 15:54:30 2012 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed May 16 15:54:30 2012 -0700"
      },
      "message": "Improve reflection IllegalArgumentException detail messages.\n\nAlso add a missing InstanceOf check that was causing CheckJNI to kill us\nif someone tried to pass an inappropriate reference type through\nMethod.invoke. (Amusingly, CheckJNI produced pretty much the exact detail\nmessage that Method.invoke should have.)\n\nPlus a new test for this stuff.\n\nBug: 6504175\nChange-Id: Ice95eecbdba5a0927c6eaf68e56d6500dc52ad2e\n"
    },
    {
      "commit": "aad0d97e772d80467c248007fa096b191884d823",
      "tree": "0f54e1a39c9b1977c482d68efbe673ac0642dd89",
      "parents": [
        "358767703ddf9ae526330bb50d836cac4983fbd7"
      ],
      "author": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Wed May 16 00:50:55 2012 -0700"
      },
      "committer": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Wed May 16 01:04:51 2012 -0700"
      },
      "message": "Call out the functions that we actually import.\n\nAddressed Stephen\u0027s review two days ago.\n\nChange-Id: If37f4f922e9c5cde1a05a7f667fa925c3dfa7737\n"
    },
    {
      "commit": "358767703ddf9ae526330bb50d836cac4983fbd7",
      "tree": "b17869baaa8d251c614da9752b4d08ca2b7d268b",
      "parents": [
        "cc1b4c3aa7e769421de656c8fd396e91875435bd"
      ],
      "author": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Tue May 15 12:02:12 2012 -0700"
      },
      "committer": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Tue May 15 23:53:21 2012 -0700"
      },
      "message": "Change DCHECK_NE(, MAX_EXPECT) to DCHECK_LT(, MAX_EXPECT)\n\nChange-Id: I4cd89d00fa597b15897973e7f9d940adecc1958a\n"
    },
    {
      "commit": "cc1b4c3aa7e769421de656c8fd396e91875435bd",
      "tree": "d0db17974b08f12bbfa646e5cdd24c3d8ff61d50",
      "parents": [
        "bab4283a7a5fa8f739258d6ba4e109f42c31a6a3"
      ],
      "author": {
        "name": "TDYa127",
        "email": "tdy@google.com",
        "time": "Tue May 15 07:31:37 2012 -0700"
      },
      "committer": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Tue May 15 23:51:25 2012 -0700"
      },
      "message": "Remove unnecessary checks for small methods.\n\nRemove unnecessary shadow frames, suspend checks, stack overflow checks,\nnull pointer checks for small methods.\n\nChange-Id: I4e67e2d38a398ff62b84a74265efb26ce054fab3\n"
    },
    {
      "commit": "bab4283a7a5fa8f739258d6ba4e109f42c31a6a3",
      "tree": "24c537ea7b57bbfe7cfb65be2c70ac6c70d3c278",
      "parents": [
        "ce9c317b806aabd7d460a52e1c46f04f7e2c9bb6",
        "41005ddb5576b8630a1084fbb3979ffa602c0599"
      ],
      "author": {
        "name": "jeffhao",
        "email": "jeffhao@google.com",
        "time": "Tue May 15 15:50:29 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue May 15 15:50:29 2012 -0700"
      },
      "message": "Merge \"Fix x86 type conversions. test-art-host-oat passes.\" into ics-mr1-plus-art"
    },
    {
      "commit": "41005ddb5576b8630a1084fbb3979ffa602c0599",
      "tree": "af8d74573cc3a98c959566233d12bdb15251910c",
      "parents": [
        "c3f8fa57268740f95a3c25e605bcab638b18d7b9"
      ],
      "author": {
        "name": "jeffhao",
        "email": "jeffhao@google.com",
        "time": "Wed May 09 17:58:52 2012 -0700"
      },
      "committer": {
        "name": "jeffhao",
        "email": "jeffhao@google.com",
        "time": "Tue May 15 15:44:18 2012 -0700"
      },
      "message": "Fix x86 type conversions. test-art-host-oat passes.\n\n- test-art-host-oat enabled in test builds.\n\n- Created inline versions of float-to-int and double-to-int.\n\n- Fixed calls to helper functions for long-to-float/double and\n  float/double-to-long.\n\n- Removed storePair and replaced its use with storeBaseDispWide (fixes\n  iput-wide and aput-wide with doubles).\n\n- Renamed helper functions to have art_ prefix.\n\n- Fixed move-exception to store the result back.\n\n- Fixed floating point comparison when the destination reg is the same as\n  a source. The typing would get confused since the source is floating\n  point, but the result is int, and a clobber is needed to overwrite the\n  expected result type. A similar thing happens in float/double-to-int.\n\nChange-Id: I0a876072254411aa42d6acadb8723be030727219\n"
    },
    {
      "commit": "ce9c317b806aabd7d460a52e1c46f04f7e2c9bb6",
      "tree": "3a8cedf75c0261b553e5285c23427d8528216e56",
      "parents": [
        "c3f8fa57268740f95a3c25e605bcab638b18d7b9"
      ],
      "author": {
        "name": "TDYa127",
        "email": "tdy@google.com",
        "time": "Tue May 15 06:09:27 2012 -0700"
      },
      "committer": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Tue May 15 08:52:33 2012 -0700"
      },
      "message": "Fix X86 compilation.\n\nThis commit is to work-around an LLVM bug. LLVM\u0027s DisableUnitAtATime will\nbreak X86 compilation (logan), and I saw this in the llvm PassManagerBuilder:\n  // FIXME: We shouldn\u0027t bother with this anymore.\n  MPM.add(createStripDeadPrototypesPass());\n\nWe follow the workaround above in the LLVM tree. It does magic.\n\nChange-Id: I699757f3385a91202d34141d7f154cd0e80bae03\n"
    },
    {
      "commit": "c3f8fa57268740f95a3c25e605bcab638b18d7b9",
      "tree": "4075ef3292c686d94e30508ef30552389c92682a",
      "parents": [
        "b1bab1c9e40ff9049f57f09a876ac77b44517144"
      ],
      "author": {
        "name": "Logan Chien",
        "email": "loganchien@google.com",
        "time": "Fri May 11 11:23:39 2012 +0800"
      },
      "committer": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Tue May 15 02:30:00 2012 -0700"
      },
      "message": "Reorder LLVM initialize procedure.\n\nChange-Id: I7c5683c010d936eaa893866dc65b1254359eb8f6\n"
    },
    {
      "commit": "b1bab1c9e40ff9049f57f09a876ac77b44517144",
      "tree": "530ac235980d51562ffdc02be53556b836d182aa",
      "parents": [
        "7834cbd5d8a0e61db14339910d2223a3e59d7efc"
      ],
      "author": {
        "name": "Logan Chien",
        "email": "loganchien@google.com",
        "time": "Fri May 11 11:05:45 2012 +0800"
      },
      "committer": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Tue May 15 02:29:51 2012 -0700"
      },
      "message": "Code cleanup: Remove unnecessary parameter.\n\nChange-Id: I978ba7857be99af643cf5377029662b056431e3c\n"
    },
    {
      "commit": "7834cbd5d8a0e61db14339910d2223a3e59d7efc",
      "tree": "9b3d08603051c47f603f3633a4c6827ac43d88a4",
      "parents": [
        "e4c2ccceb57114d6745b74f18d8748591692b532"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon May 14 18:25:16 2012 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon May 14 18:25:16 2012 -0700"
      },
      "message": "Consistently use __asm__ rather than asm.\n\nFor grepability.\n\nChange-Id: Iae46e1684695eb42cfc1267b744d0442acbbfe25\n"
    },
    {
      "commit": "e4c2ccceb57114d6745b74f18d8748591692b532",
      "tree": "ee09736b8dadd8a484fe0a617c4b7f0cbb2753b0",
      "parents": [
        "1d7e510d90369b10aae8704ec71a9964d76dd402"
      ],
      "author": {
        "name": "TDYa127",
        "email": "tdy@google.com",
        "time": "Sun May 13 21:10:36 2012 -0700"
      },
      "committer": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Mon May 14 14:43:39 2012 -0700"
      },
      "message": "Reduce compilation time.\n\nThis change will decrease run-time performance by 5%. But it can\ndecrease the compilation time by 20%.\n\nChange-Id: I9981f896e56aa2119a2b33730a54a8f4420d3d83\n"
    },
    {
      "commit": "1d7e510d90369b10aae8704ec71a9964d76dd402",
      "tree": "061fbf24d11035876c57898c2245f940dfd70e7b",
      "parents": [
        "9d7bc820e0a8dc761750f8b9af1d2258100e6176"
      ],
      "author": {
        "name": "TDYa127",
        "email": "tdy@google.com",
        "time": "Sun May 13 09:27:05 2012 -0700"
      },
      "committer": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Mon May 14 14:42:58 2012 -0700"
      },
      "message": "Reduce shadow frame size.\n\nChange-Id: Ifbd5cb38d0666a1f5db1abe7da36ff86a93f87b5\n"
    },
    {
      "commit": "9d7bc820e0a8dc761750f8b9af1d2258100e6176",
      "tree": "e349e2c362df3a59e2682f8f81b1838348bc125f",
      "parents": [
        "f15b0ab64754345429b4ffaec7f8a4e3194d1a74"
      ],
      "author": {
        "name": "TDYa127",
        "email": "tdy@google.com",
        "time": "Sun May 13 08:49:37 2012 -0700"
      },
      "committer": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Mon May 14 14:42:23 2012 -0700"
      },
      "message": "Fix run-test 083 regression.\n\nChange-Id: I5c2d0dfa46a7e6cfa05f8186b97d546a3a268c50\n"
    },
    {
      "commit": "f15b0ab64754345429b4ffaec7f8a4e3194d1a74",
      "tree": "8181357b4059446d9c32741f145efbe53730d8ee",
      "parents": [
        "45ef96aabafc259edcba2f624b10926487c98273"
      ],
      "author": {
        "name": "TDYa127",
        "email": "tdy@google.com",
        "time": "Fri May 11 21:01:36 2012 -0700"
      },
      "committer": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Mon May 14 14:41:15 2012 -0700"
      },
      "message": "Only do the suspend check at return and loop latch.\n\nChange-Id: I0c7d2b25288bfb85dfc8a0650b75aff2162f9903\n"
    },
    {
      "commit": "2f701e5a4a4bc371064a3168552948e7b3b43c7f",
      "tree": "a94cdceb230d0a1c8af9943cfd4b43d8c3466571",
      "parents": [
        "ac7b5bb79899865b2375d14bc3af2079ec2eb28d"
      ],
      "author": {
        "name": "TDYa127",
        "email": "tdy@google.com",
        "time": "Fri May 11 13:23:50 2012 -0700"
      },
      "committer": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Sat May 12 00:57:37 2012 -0700"
      },
      "message": "Remove unnecessary UpdateDexPC.\n\nThese functions won\u0027t throw exception, so we have no need to update dex\npc.\n\nChange-Id: Ib4e5aa85367f49b0cc87ce941acc7361fe489cf0\n"
    },
    {
      "commit": "ac7b5bb79899865b2375d14bc3af2079ec2eb28d",
      "tree": "a835cbd1158a04bb01ea3505a6a5e561e0f9d527",
      "parents": [
        "6819a91aa4e9c59a555a8fd14f4be263ae5d8dbb"
      ],
      "author": {
        "name": "TDYa127",
        "email": "tdy@google.com",
        "time": "Fri May 11 13:17:49 2012 -0700"
      },
      "committer": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Sat May 12 00:57:37 2012 -0700"
      },
      "message": "Add support for llvm static branch prediction.\n\nChange-Id: I8025db404d59a7ef17e4f8b878d0ab5c8cf7dab4\n"
    },
    {
      "commit": "6819a91aa4e9c59a555a8fd14f4be263ae5d8dbb",
      "tree": "6213f26dab78f7561d8cf687321084b57f66fc47",
      "parents": [
        "d955bec688d007bd3afdde89a08691a8fe97a6a9"
      ],
      "author": {
        "name": "TDYa127",
        "email": "tdy@google.com",
        "time": "Fri May 11 13:10:35 2012 -0700"
      },
      "committer": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Sat May 12 00:57:37 2012 -0700"
      },
      "message": "GetCurrentThread can be set as pure on X86.\n\nChange-Id: Iee1d075a21ea645de47a0f5d41db89173ed2b03a\n"
    },
    {
      "commit": "d955bec688d007bd3afdde89a08691a8fe97a6a9",
      "tree": "470a831c469cdefde79151b17b6e5877045c300c",
      "parents": [
        "71e85b74eb5710a689e83623706b3bb372762eb5"
      ],
      "author": {
        "name": "TDYa127",
        "email": "tdy@google.com",
        "time": "Fri May 11 10:54:02 2012 -0700"
      },
      "committer": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Sat May 12 00:57:37 2012 -0700"
      },
      "message": "TBAA, separate RuntimeInfo and ShadowFrame.\n\nChange-Id: I943d0af693573c0bf9fcc1fd7862c67916a95a34\n"
    },
    {
      "commit": "388a83b106a79dbc82288c78e641fc914c7d6a5b",
      "tree": "23ad16e2e199eb3d38db10fcdcb3cf20d81a91c9",
      "parents": [
        "2cc3050f18384bb50922e52a6ebda3f5f3866339"
      ],
      "author": {
        "name": "TDYa127",
        "email": "tdy@google.com",
        "time": "Wed May 09 18:56:22 2012 -0700"
      },
      "committer": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Wed May 09 18:59:55 2012 -0700"
      },
      "message": "Free the resource on target device.\n\nChange-Id: Iecb491e32ed8266cc2f866398c6f49fa5156be87\n"
    },
    {
      "commit": "a22ea0351a9ea781b14f05a7c0d7fde27e5fd9bb",
      "tree": "31cc9d00462dc61706bd6bfec4e26b91f0e99d1e",
      "parents": [
        "2b43f3a12224bc688b859858991ec0ec7d9ea5f4"
      ],
      "author": {
        "name": "TDYa127",
        "email": "tdy@google.com",
        "time": "Wed May 09 12:20:01 2012 -0700"
      },
      "committer": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Wed May 09 16:40:24 2012 -0700"
      },
      "message": "Restore the logging of compilation progress on target device.\n\nYesterday\u0027s removal of \"fork\" on the target compilation accidentally\ndropped the logging. Restoring it back here.\n\nChange-Id: I32c58ee85b81f443edd3313ccee3cf56227d5017\n"
    },
    {
      "commit": "9d93ee67676dc0cf7832ea3379e1978d327d4ed5",
      "tree": "1b38dd7226fcd4c600619b22ac82e74233780967",
      "parents": [
        "d3e24c21dcf3f76f00a00e7e0a8c59a4575e0e7b"
      ],
      "author": {
        "name": "TDYa127",
        "email": "tdy@google.com",
        "time": "Wed May 09 09:56:07 2012 -0700"
      },
      "committer": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Wed May 09 10:02:47 2012 -0700"
      },
      "message": "In-place load ELF.\n\nChange-Id: I88e1f57349bd3646c349d4c965e6c9b46ed77404\n"
    },
    {
      "commit": "d3e24c21dcf3f76f00a00e7e0a8c59a4575e0e7b",
      "tree": "fed17bf043fbddeed8257f2bd106fbe4b055c5f4",
      "parents": [
        "e6a7adc91696930dae60c3d0eac46473a74d9941"
      ],
      "author": {
        "name": "TDYa127",
        "email": "tdy@google.com",
        "time": "Sat May 05 20:54:19 2012 -0700"
      },
      "committer": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Wed May 09 10:02:42 2012 -0700"
      },
      "message": "TBAA, separate JRuntime and ConstJObject.\n\nThis change can eliminate redundant virtual table load.\n\nAlso, fix comment.\n\nChange-Id: I9deb9979eadce6ad728b6582cef80001e3a7039e\n"
    },
    {
      "commit": "e6a7adc91696930dae60c3d0eac46473a74d9941",
      "tree": "57d7bba34007b7516ea2dfd0a43075537e951ebb",
      "parents": [
        "42515cfaa8905071438cf21a0b924bb0c400c8c7"
      ],
      "author": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Wed May 09 02:50:08 2012 -0700"
      },
      "committer": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Wed May 09 02:50:08 2012 -0700"
      },
      "message": "Fix LLVM build for gcc 4.6. -Werror\u003dunused-but-set-variable.\n\nAlso, remove dead code (CreateAlloca) and optimize the code.\n\nChange-Id: I0474e67f5e4f802cd785db11257d2049f1bffd16\n"
    },
    {
      "commit": "08e1ba3c5899213e63007b0158e0a491f2449ea4",
      "tree": "f53f9352a3c9e6fe6e6e9a3f0a90f58bae69ac8a",
      "parents": [
        "e0e4024b2e3f6fa6feb3ef42f0f072ffb004f8f7"
      ],
      "author": {
        "name": "Logan Chien",
        "email": "loganchien@google.com",
        "time": "Tue May 08 15:08:51 2012 +0800"
      },
      "committer": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Tue May 08 11:53:40 2012 -0700"
      },
      "message": "Don\u0027t fork dex2oat process on target device.\n\nChange-Id: I35370d328aaa1aaaed5b56e62e51c4c74afa9cba\n"
    },
    {
      "commit": "e0e4024b2e3f6fa6feb3ef42f0f072ffb004f8f7",
      "tree": "7db4374ad2630d5d9870248c441a60e80a658502",
      "parents": [
        "9199e7237615d31d943941f2b27c6f7709d88c05"
      ],
      "author": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Tue May 08 01:04:03 2012 -0700"
      },
      "committer": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Tue May 08 01:04:03 2012 -0700"
      },
      "message": "Reduce memory usage by halving the materialization threshold.\n\nAlso, functions declared with __attribute__((always_inline)) MUST be\ninlined.\n\nNote that FunctionInlining uses a heuristic to inline direct function\ncalls to small functions. Function size (computed by # of basic blocks\n* some factors) \u003c Inlining-threshold will be inlined.\n\nBut invoke* insn should be inlined by other means anyway.\n\nChange-Id: I3f06ead75c78dfc83985458809311b7fa78bc1d7\n"
    },
    {
      "commit": "9d3ba24f05f251e9a8c7034315afca6c08b705ad",
      "tree": "e9f62f7b8dcc7c5001bc1429e327a25139e28d4b",
      "parents": [
        "145d491d1a30b291eb3ea608507a04451237f327"
      ],
      "author": {
        "name": "TDYa127",
        "email": "tdy@google.com",
        "time": "Mon May 07 08:28:27 2012 -0700"
      },
      "committer": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Mon May 07 10:58:24 2012 -0700"
      },
      "message": "Fix compiling breakage (SIGSEGV) from doing \"make -jN\", where N \u003e 1.\n\nChange-Id: Ic030cb6b31326536f1507e63c9922f24b70c2d9e\n"
    },
    {
      "commit": "145d491d1a30b291eb3ea608507a04451237f327",
      "tree": "d8b8871d91a1b6e367eeaa753944adc0f855d5bc",
      "parents": [
        "8fe384d8fe6c501527489a1217e5edb904754dc7"
      ],
      "author": {
        "name": "TDYa127",
        "email": "tdy@google.com",
        "time": "Sun May 06 21:44:45 2012 -0700"
      },
      "committer": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Sun May 06 23:04:49 2012 -0700"
      },
      "message": "Mark suspend as RuntimeInfo.\n\nChange-Id: Ib474032c0d7817cd5aff2e84b00ef2f82573cbac\n"
    },
    {
      "commit": "8fe384d8fe6c501527489a1217e5edb904754dc7",
      "tree": "e2cb14837c7ff09f1203314320d39355a07907c9",
      "parents": [
        "ddd893f30c802a0d4a3430f3507297c86df9869d"
      ],
      "author": {
        "name": "TDYa127",
        "email": "tdy@google.com",
        "time": "Sun May 06 20:14:17 2012 -0700"
      },
      "committer": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Sun May 06 23:04:43 2012 -0700"
      },
      "message": "Mark some functions as readonly for optimization.\n\nAlso, code cleanup, and fix comment.\n\nChange-Id: Ia25e9bc6f02b5838b1cd18efc32d2084e6db0953\n"
    },
    {
      "commit": "706e7dbb0dc15e809c2e2346b3bc4927bc1290cd",
      "tree": "0f48cc61b80e401edd88b114f00d23ab8fbb7551",
      "parents": [
        "8ca100552be43ed11351a27497e3581abb055311"
      ],
      "author": {
        "name": "TDYa127",
        "email": "tdy@google.com",
        "time": "Sun May 06 00:05:33 2012 -0700"
      },
      "committer": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Sun May 06 15:02:05 2012 -0700"
      },
      "message": "TBAA, separate different types of heap load/store.\n\nChange-Id: I24dc2857db2985239e17d97fdd6463d7f2b54985\n"
    },
    {
      "commit": "8ca100552be43ed11351a27497e3581abb055311",
      "tree": "9cb200eb83a1ac723439ab39a3d44e576af1fa59",
      "parents": [
        "aba61123f9c10a19ab0c14f9833622d8e4788f96"
      ],
      "author": {
        "name": "TDYa127",
        "email": "tdy@google.com",
        "time": "Sat May 05 19:57:06 2012 -0700"
      },
      "committer": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Sun May 06 15:01:16 2012 -0700"
      },
      "message": "TBAA, separate RuntimeInfo and JRuntime.\n\nChange-Id: Ia540883349e2699503d7eeb1d4b602beeb74510f\n"
    },
    {
      "commit": "aba61123f9c10a19ab0c14f9833622d8e4788f96",
      "tree": "f1115329c37be1497fa06232cefce093cfa56774",
      "parents": [
        "d0379748bd05b949a8e2193b44ddf4950f9569a8"
      ],
      "author": {
        "name": "TDYa127",
        "email": "tdy@google.com",
        "time": "Fri May 04 18:28:36 2012 -0700"
      },
      "committer": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Sat May 05 17:33:44 2012 -0700"
      },
      "message": "Basic TBAA.\n\nSeparate load/store of register, memory, runtime information, and stack\ntemp.\n\nChange-Id: I9d1eadac718c48f43839b0762460defc6c641ae4\n"
    },
    {
      "commit": "b6bed0bedd0dc82df5eb53e00446de7da46e3c85",
      "tree": "5c0890f2733715c409959f75b2025e2d8f7bd4ad",
      "parents": [
        "67ae8ff80555a506f68abe3ad17195553725f2ca"
      ],
      "author": {
        "name": "Logan Chien",
        "email": "loganchien@google.com",
        "time": "Fri May 04 15:03:56 2012 +0800"
      },
      "committer": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Fri May 04 02:04:46 2012 -0700"
      },
      "message": "Manage llvm::TargetMachine with smart pointer.\n\nWe should delete llvm::TargetMachine if we don\u0027t have to\nuse it anymore; otherwise we will suffer from the memory\nleak.\n\nChange-Id: I776c3447b7e73531f2c99a3b082dfbeebcd4af22\n"
    },
    {
      "commit": "67ae8ff80555a506f68abe3ad17195553725f2ca",
      "tree": "c06dba029805561f1025b4b782b9014b5dc2e0ba",
      "parents": [
        "7f5b9be62c034b29f3bb550478da9af28e88f72b"
      ],
      "author": {
        "name": "TDYa127",
        "email": "tdy@google.com",
        "time": "Wed May 02 19:08:02 2012 -0700"
      },
      "committer": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Thu May 03 18:38:40 2012 -0700"
      },
      "message": "Emit name only in debug mode.\n\nChange-Id: I5de11b98ae07eccce2ce12d55867ae8d4a98288c\n"
    },
    {
      "commit": "7f5b9be62c034b29f3bb550478da9af28e88f72b",
      "tree": "123880aa0d911e9bdf635cc87633704b3d4392b0",
      "parents": [
        "5e5a804e7be57876df789c88dc0503879f969f39"
      ],
      "author": {
        "name": "TDYa127",
        "email": "tdy@google.com",
        "time": "Sun Apr 29 01:31:49 2012 -0700"
      },
      "committer": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Thu May 03 18:28:57 2012 -0700"
      },
      "message": "Separate object register and shadow frame entry.\n\nThe shadow frame already escaped. LLVM can\u0027t do optimization for the\nshadow frame entry.\n\nChange-Id: I3a6e4a3066ebcc9a6530e3313061af3a7d18c456\n"
    },
    {
      "commit": "5e5a804e7be57876df789c88dc0503879f969f39",
      "tree": "08e0973ba2d442605a9ef6f27ca0088005f1f015",
      "parents": [
        "9948913c01c761493472ccb60ab19be336ac4af4"
      ],
      "author": {
        "name": "TDYa127",
        "email": "tdy@google.com",
        "time": "Sun Apr 29 01:30:27 2012 -0700"
      },
      "committer": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Thu May 03 17:38:41 2012 -0700"
      },
      "message": "Remove unnecessary exception check.\n\nChange-Id: Iba16ed9439253dfe635cf216a77a567c8ed32e1d\n"
    },
    {
      "commit": "9948913c01c761493472ccb60ab19be336ac4af4",
      "tree": "055e91dec1af28263e07927a34f64eca681c2084",
      "parents": [
        "97339c4d9e528609b4778edec113dac6e1c5d682"
      ],
      "author": {
        "name": "TDYa127",
        "email": "tdy@google.com",
        "time": "Sun Apr 29 01:27:58 2012 -0700"
      },
      "committer": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Thu May 03 17:37:53 2012 -0700"
      },
      "message": "Improve the information in the bitcode.\n\nAdd origin function named basicblock, and use hex for dex_pc.\n\nChange-Id: I48d59b034c5c8405dcc8341ab956cb70f96d27d9\n"
    },
    {
      "commit": "97339c4d9e528609b4778edec113dac6e1c5d682",
      "tree": "d118007707b2ad25478f0df979db3f5d16484b64",
      "parents": [
        "6cdebe30fbfcc015481808b32eb5741ed72fe2f1"
      ],
      "author": {
        "name": "TDYa127",
        "email": "tdy@google.com",
        "time": "Sun Apr 29 01:26:35 2012 -0700"
      },
      "committer": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Thu May 03 17:35:23 2012 -0700"
      },
      "message": "Reorder stack overflow check.\n\nIt seems we can\u0027t call function before these alloca instructions.\nOtherwise, LLVM would not promote these locations to registers.\n\nChange-Id: I0b77eb29a01ededcf5f386c904182cae6435cd5a\n"
    },
    {
      "commit": "ee1f59b401d3ea64cf73661af8e64d18173d4851",
      "tree": "d8cdca10b525c6a3a558c52af76ef61f84993499",
      "parents": [
        "1ecce9487a1b3aac6b656f5704cf86a961ab0481"
      ],
      "author": {
        "name": "TDYa127",
        "email": "tdy@google.com",
        "time": "Wed Apr 25 00:56:40 2012 -0700"
      },
      "committer": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Thu May 03 16:42:34 2012 -0700"
      },
      "message": "Code cleanup.\n\nUse LoadFromObjectOffset and StoreToObjectOffset.\n\nChange-Id: I04e3779e8448709add8eed010a71f80c15cb6ca5\n"
    },
    {
      "commit": "86f5067d92f380e3a167d9c786b5f5c15d8dd0db",
      "tree": "c155994f51b722aad1d75717865985b291845271",
      "parents": [
        "19c350a9197411d427b71b7ab15b18417701de10"
      ],
      "author": {
        "name": "Logan Chien",
        "email": "loganchien@google.com",
        "time": "Tue Apr 24 13:08:45 2012 +0800"
      },
      "committer": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Wed May 02 04:19:59 2012 -0700"
      },
      "message": "Change to implement fill-array-data with runtime function.\n\nWe can get the array data payload from the DexFile, thus\nwe don\u0027t have to duplicate it in the ELF image.  As the\nresult we can reduce the size of the Oat file.\n\nChange-Id: I08e241a43e2d7fb1b20638da68b5dfae61b120bb\n"
    },
    {
      "commit": "19c350a9197411d427b71b7ab15b18417701de10",
      "tree": "057337f29c4cb3ab6ea2521a5f9e959cdb84c1ce",
      "parents": [
        "736df0253aa65ebccb29ddb6443c31b7730ca3e5"
      ],
      "author": {
        "name": "Logan Chien",
        "email": "loganchien@google.com",
        "time": "Tue May 01 19:21:32 2012 +0800"
      },
      "committer": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Wed May 02 04:19:59 2012 -0700"
      },
      "message": "Move payload data structures to dex_instruction.h.\n\nChange-Id: Ib46aab7bac70b008bf8569e3e9e30caa31320255\n"
    },
    {
      "commit": "736df0253aa65ebccb29ddb6443c31b7730ca3e5",
      "tree": "1cd9c391ab4400abdbc5a4c31c6789b3af0f286d",
      "parents": [
        "d8749cff01eb5d91ff770d8f75d853745903e781"
      ],
      "author": {
        "name": "Logan Chien",
        "email": "loganchien@google.com",
        "time": "Fri Apr 27 16:25:57 2012 +0800"
      },
      "committer": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Wed May 02 04:19:59 2012 -0700"
      },
      "message": "Use try item offset to find catch block instead of Dex PC.\n\nChange-Id: Icb8cd07a824be638c02a6204cfaf034a249d49b5\n"
    },
    {
      "commit": "d8749cff01eb5d91ff770d8f75d853745903e781",
      "tree": "18c1e63408156e0fcb4fb864f5e699f843762c05",
      "parents": [
        "1d5abec2454f3144f2c816674760aaac6e28bd0f"
      ],
      "author": {
        "name": "Logan Chien",
        "email": "loganchien@google.com",
        "time": "Fri Apr 27 12:25:22 2012 +0800"
      },
      "committer": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Wed May 02 04:19:59 2012 -0700"
      },
      "message": "Remove unused file: src/compiler_llvm/frontend.cc\n\nChange-Id: I035e60d2c274d5bc5f158b30c671c32d110f0a0a\n"
    },
    {
      "commit": "ef4a6564254012b7ba00d6310521b1c0d938bdac",
      "tree": "f8baca905b3ea99e3b116d99833ea520448552e8",
      "parents": [
        "6ee997605c9f5a029250e50330ac764d1eb8112a"
      ],
      "author": {
        "name": "Logan Chien",
        "email": "loganchien@google.com",
        "time": "Tue Apr 24 18:02:24 2012 +0800"
      },
      "committer": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Tue May 01 22:15:07 2012 -0700"
      },
      "message": "Remove unnecessary zero-initializer.\n\nDex verifier will guarantee that a Dalvik register will be\ninitialized before any usage.  So we don\u0027t have to generate\nthe code to initialize them to 0 after allocation.\n\nNOTE: We wrote the zero-initializer for historical reason.\nThere was a bug in the implementation of SHL, SHR, USHR,\nand result in undef value after optimization.  Since we\nhave found the bug, and we don\u0027t get undef any more, it\u0027s\ntime to remove these zero-initializer to save code size\nand run time.\n\nChange-Id: I0375af3bed08495f6743699c7a72c295cad71dfa\n"
    },
    {
      "commit": "8e9b449433e304686935f870cde484be3f48b178",
      "tree": "72f33700c55ba1b1ab47b03ff0dd7a309a543af3",
      "parents": [
        "58e63f9e999605bce6e8dc301eaf5e2ee0981e03"
      ],
      "author": {
        "name": "TDYa127",
        "email": "tdy@google.com",
        "time": "Tue Apr 24 15:50:27 2012 -0700"
      },
      "committer": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Tue Apr 24 20:28:43 2012 -0700"
      },
      "message": "Fix run-test 003, llvm method_compiler bug.\n\nChange-Id: I87c211d829c41d5406587f491fd55934afc06fd9\n"
    },
    {
      "commit": "17826bfcdfbb27ebc13f01ffc5859b390f78e4e0",
      "tree": "8b725fb2c4c7ded8914429dad1d71addef7f3702",
      "parents": [
        "677cabcbf27ce0dfbc65cdc99a5ca022de4db086"
      ],
      "author": {
        "name": "TDYa127",
        "email": "tdy@google.com",
        "time": "Tue Apr 24 01:15:10 2012 -0700"
      },
      "committer": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Tue Apr 24 19:15:51 2012 -0700"
      },
      "message": "Just use getPtrEquiveInt to load method.\n\nChange-Id: I8cbf155a0bfc4ea0f0d61dbf981e0ace43ef2c2b\n"
    },
    {
      "commit": "677cabcbf27ce0dfbc65cdc99a5ca022de4db086",
      "tree": "c7591daaedb9cdeee2507faefa10e3dd7f05b24a",
      "parents": [
        "4bccc6b307f1598f336f18a0157013bd77cbc101"
      ],
      "author": {
        "name": "TDYa127",
        "email": "tdy@google.com",
        "time": "Tue Apr 24 00:57:17 2012 -0700"
      },
      "committer": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Tue Apr 24 19:15:51 2012 -0700"
      },
      "message": "Reduce materialize threshold.\n\nChange-Id: I251476c58330186bbaab24bca641ff4ce74b1e0c\n"
    },
    {
      "commit": "4bccc6b307f1598f336f18a0157013bd77cbc101",
      "tree": "4a40ebc5e694e0bd4e6e18fa804c5efd0e0d09e9",
      "parents": [
        "4d8df827af6c90ae4be02309680317bac85287f8"
      ],
      "author": {
        "name": "TDYa127",
        "email": "tdy@google.com",
        "time": "Tue Apr 24 00:54:25 2012 -0700"
      },
      "committer": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Tue Apr 24 19:15:51 2012 -0700"
      },
      "message": "No need zero initialize jni shadow frame.\n\nChange-Id: Ic47142b18e41b69f72613a1b24e99d9f68736217\n"
    },
    {
      "commit": "415576be9e4ee74b3663baa08ccf9f01b30a4bf9",
      "tree": "ea4243f278c176679c92d389bfe95012ba1d7c82",
      "parents": [
        "e8ecce7f456536f9bff788dbce949153badddbc2"
      ],
      "author": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Mon Apr 23 15:28:53 2012 -0700"
      },
      "committer": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Mon Apr 23 15:28:53 2012 -0700"
      },
      "message": "Use FunctionInline instead of AlwaysInline. -O3.\n\nChange-Id: I47ec6ee19db9de9d2982bc0d8decebab2357abe9\n"
    },
    {
      "commit": "e8ecce7f456536f9bff788dbce949153badddbc2",
      "tree": "7ccbb39f6a75a2663bbb67316fa3ea7142f328ea",
      "parents": [
        "1da28750569fe8edf47bfab1397bc1d35a1dee24"
      ],
      "author": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Mon Apr 23 15:00:32 2012 -0700"
      },
      "committer": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Mon Apr 23 15:00:32 2012 -0700"
      },
      "message": "Forgot to close pipe -- Bug fix. Also, change to use PLOG.\n\nChange-Id: I16653bb036881ab5c50ae2afa60f246b99febb5c\n"
    },
    {
      "commit": "fca64370bf2c553a6b2d97a89626e70dd7c30f20",
      "tree": "f1c187f756684b488a1fd582b65801e43040257d",
      "parents": [
        "8ba2fc5b1ca044241e03c355424b782a9a8ca08d"
      ],
      "author": {
        "name": "Logan Chien",
        "email": "loganchien@google.com",
        "time": "Mon Apr 23 14:57:01 2012 +0800"
      },
      "committer": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Mon Apr 23 03:51:14 2012 -0700"
      },
      "message": "Implement partial sharpening for LLVM.\n\nChange-Id: I0c6953d6428edda71230c0088b9e0c9decada3b7\n"
    },
    {
      "commit": "8ba2fc5b1ca044241e03c355424b782a9a8ca08d",
      "tree": "768bd5c27210785bea49e0930aa76eb138988a03",
      "parents": [
        "90dc30f4b9967e850d0594e57dfa8e7cb0369575"
      ],
      "author": {
        "name": "Logan Chien",
        "email": "loganchien@google.com",
        "time": "Mon Apr 23 09:10:46 2012 +0800"
      },
      "committer": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Mon Apr 23 03:24:28 2012 -0700"
      },
      "message": "Add mutex lock to CompilationUnit.\n\nChange-Id: I2555dcc72ca8a765627b9267bfc32ad97315472f\n"
    },
    {
      "commit": "799ef4f839564561fd91907b49e3a587c9a77a41",
      "tree": "b63fd8d4786072d41837d27b147247b627ac808f",
      "parents": [
        "80cd474be3aa348ce7c73efdda994b4e46840a2c"
      ],
      "author": {
        "name": "Logan Chien",
        "email": "loganchien@google.com",
        "time": "Mon Apr 23 00:17:47 2012 +0800"
      },
      "committer": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Sun Apr 22 11:52:00 2012 -0700"
      },
      "message": "Replace tmpfile with pipe.\n\nChange-Id: Ifc303b7a5e5d52c2491b0c5c0987177449c750ef\n"
    },
    {
      "commit": "80cd474be3aa348ce7c73efdda994b4e46840a2c",
      "tree": "94844ca030e35f0ea19f56a5e9afb7a76f238146",
      "parents": [
        "b4e6fff1ecc8853f4ca6dadcca5151cac84048db"
      ],
      "author": {
        "name": "Logan Chien",
        "email": "loganchien@google.com",
        "time": "Mon Apr 23 00:14:45 2012 +0800"
      },
      "committer": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Sun Apr 22 11:51:54 2012 -0700"
      },
      "message": "Fix unit test by holding compiler_lock_ on ourselves.\n\nBecause in previous CL, we removed the MutexLock in the\nMaterialize for parallel compilation, we don\u0027t hold the\nlock before we call LoadElfFromCompilationUnit anymore.\nThus, we have to acquire for the lock in\nLoadElfFromCompilationUnit.\n\nChange-Id: Ia1b059bdffafc54a473820244bcfcfc634771061\n"
    },
    {
      "commit": "853cd09d6ffc87a270d0d531f84f246d534b8c82",
      "tree": "f66b7329f1c6c0d370cd9eeb78ff6a0e86751653",
      "parents": [
        "ce154726f34ebfbdce905da008b6359bea9ae50a"
      ],
      "author": {
        "name": "TDYa127",
        "email": "tdy@google.com",
        "time": "Sat Apr 21 22:15:31 2012 -0700"
      },
      "committer": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Sun Apr 22 01:34:46 2012 -0700"
      },
      "message": "Fix llvm runtime support bug.\n\nChange-Id: I7c023e861cb8738ade67ef66155a318c8bd5735a\n"
    },
    {
      "commit": "ce154726f34ebfbdce905da008b6359bea9ae50a",
      "tree": "a55a63792d3cb1fea3fd1544a23f402cb581fdd7",
      "parents": [
        "e2f0911dfc7cec7c48ad0dea50f2028ae0f1fd0f"
      ],
      "author": {
        "name": "TDYa127",
        "email": "tdy@google.com",
        "time": "Sat Apr 21 16:43:29 2012 -0700"
      },
      "committer": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Sun Apr 22 00:21:06 2012 -0700"
      },
      "message": "Partial inlining of the stub check.\n\nChange-Id: I31dbe31276876c3a7ff5e24f6a1a19ce8a61d72e\n"
    },
    {
      "commit": "05fe3b630e9ae50837ae88ba09581bd281aa184a",
      "tree": "22064a582abbd4aa491c0b43a499cd0470b74ec9",
      "parents": [
        "706e9b62e1bac8a774466937ab32fcd655f5b723"
      ],
      "author": {
        "name": "TDYa127",
        "email": "tdy@google.com",
        "time": "Sat Apr 21 00:28:54 2012 -0700"
      },
      "committer": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Sat Apr 21 15:11:36 2012 -0700"
      },
      "message": "Implement X86 trampoline for llvm compiler.\n\nChange-Id: I0c6ec3a59eaebd5e28ca8e95f2711a31b79b9279\n"
    },
    {
      "commit": "706e9b62e1bac8a774466937ab32fcd655f5b723",
      "tree": "6555a296ce8cfade1c5078d27c1e3877b10c4f68",
      "parents": [
        "c8dc101f8e89feb588de3326bd9be0b84228ca2a"
      ],
      "author": {
        "name": "TDYa127",
        "email": "tdy@google.com",
        "time": "Thu Apr 19 12:24:26 2012 -0700"
      },
      "committer": {
        "name": "Shih-wei Liao",
        "email": "sliao@google.com",
        "time": "Sat Apr 21 15:09:24 2012 -0700"
      },
      "message": "Add more Thread to runtime support llvm.\n\nChange-Id: I0ee7c841f7b287126fa1ba8db5983a9fa2a1f04f\n"
    }
  ],
  "next": "c8dc101f8e89feb588de3326bd9be0b84228ca2a"
}
