)]}'
{
  "log": [
    {
      "commit": "e0175ca7e440a87e9d03f249fc8f210063df7908",
      "tree": "982e64580d19fc846cd7f2a1fa1dee2fbe2274d8",
      "parents": [
        "ec706c24acb4d1db6a583a57b76adfb9250d39eb"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Mar 14 14:38:08 2013 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Mar 14 14:38:08 2013 -0700"
      },
      "message": "Don\u0027t search off the end of the index for bad Olson ids.\n\nIn the old code, the index was a file to itself, so it made sense to\nread until you hit the end of the file. In the new code, the index is\nfollowed by hundreds of KiB of data, so we need to just search the\nindex.\n\nBug: 8368791\nChange-Id: Icf5f8b5516cf3a93679fa849c9f6cd1cb100e0f1\n"
    },
    {
      "commit": "ec706c24acb4d1db6a583a57b76adfb9250d39eb",
      "tree": "fcb512131936b2b686571bc53f2b6a3b06fca45f",
      "parents": [
        "980508b0ead3ee01e99e93635c57eb76d1aba62d",
        "9aceab50155b17741faded1fb22e2daa51a07fb1"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Mar 13 00:44:33 2013 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Mar 13 00:44:33 2013 +0000"
      },
      "message": "Merge \"Use the kernel\u0027s MAX_ERRNO in the syscall stubs.\""
    },
    {
      "commit": "9aceab50155b17741faded1fb22e2daa51a07fb1",
      "tree": "d1a976cb41c6aa807c6b07f0e858f92ea5763b4f",
      "parents": [
        "94a34010c1f989032c0a4dc7a7a68d069ca23b1e"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Mar 12 14:57:30 2013 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Mar 12 17:43:58 2013 -0700"
      },
      "message": "Use the kernel\u0027s MAX_ERRNO in the syscall stubs.\n\nBug: http://code.google.com/p/android/issues/detail?id\u003d53104\nChange-Id: Iaabf7025b153e96dc5eca231a33a32d4cb7d8116\n"
    },
    {
      "commit": "980508b0ead3ee01e99e93635c57eb76d1aba62d",
      "tree": "182a5d15ddfa546dc5b61969de3193be16c4ace9",
      "parents": [
        "94a34010c1f989032c0a4dc7a7a68d069ca23b1e",
        "04954a43b362b8c817cc5859513efad0c344f412"
      ],
      "author": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Tue Mar 12 22:24:09 2013 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Mar 12 22:24:09 2013 +0000"
      },
      "message": "Merge \"Break bionic implementations into arch versions.\""
    },
    {
      "commit": "04954a43b362b8c817cc5859513efad0c344f412",
      "tree": "372c39b6cfec1bc006a1adbdbc191a7c594a136b",
      "parents": [
        "6b4c77f854c079138d552608b9df5fa3035f0fcc"
      ],
      "author": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Tue Feb 26 01:30:00 2013 -0800"
      },
      "committer": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Tue Mar 12 14:06:08 2013 -0700"
      },
      "message": "Break bionic implementations into arch versions.\n\nMove arch specific code for arm, mips, x86 into separate\nmakefiles.\nIn addition, add different arm cpu versions of memcpy/memset.\n\nBug: 8005082\n\nMerge from internal master (acdde8c1cf8e8beed98c052757d96695b820b50c).\n\nChange-Id: I04f3d0715104fab618e1abf7cf8f7eec9bec79df\n"
    },
    {
      "commit": "94a34010c1f989032c0a4dc7a7a68d069ca23b1e",
      "tree": "2aa24aece4d7a3b1d380f2edafb14967da9d1c0b",
      "parents": [
        "f21aa3b61ebc6b1a7c34265699f40bd9b5af7952",
        "cb2069bf69b14f0e76593e1ec4d1deb6fa15232c"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Mar 12 19:08:36 2013 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Mar 12 19:08:36 2013 +0000"
      },
      "message": "Merge \"Support large errno values on ARM.\""
    },
    {
      "commit": "cb2069bf69b14f0e76593e1ec4d1deb6fa15232c",
      "tree": "2aa24aece4d7a3b1d380f2edafb14967da9d1c0b",
      "parents": [
        "f21aa3b61ebc6b1a7c34265699f40bd9b5af7952"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Mar 12 11:55:45 2013 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Mar 12 11:55:45 2013 -0700"
      },
      "message": "Support large errno values on ARM.\n\nBug: http://code.google.com/p/android/issues/detail?id\u003d53104\nChange-Id: Ic6c40be2dc50f0644a3d8b09ceae59c38f2d5b53\n"
    },
    {
      "commit": "f21aa3b61ebc6b1a7c34265699f40bd9b5af7952",
      "tree": "b6d10789c2be00f069e643a70cb9e29223f0e07d",
      "parents": [
        "6b4c77f854c079138d552608b9df5fa3035f0fcc",
        "ca0c11bd823f37f03cc8067cb182876827d5275a"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Mar 12 18:54:27 2013 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Mar 12 18:54:27 2013 +0000"
      },
      "message": "Merge \"Use more types than just \u0027unsigned\u0027 in the linker.\""
    },
    {
      "commit": "ca0c11bd823f37f03cc8067cb182876827d5275a",
      "tree": "b6d10789c2be00f069e643a70cb9e29223f0e07d",
      "parents": [
        "6b4c77f854c079138d552608b9df5fa3035f0fcc"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Mar 12 10:40:45 2013 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Mar 12 11:26:56 2013 -0700"
      },
      "message": "Use more types than just \u0027unsigned\u0027 in the linker.\n\nStill chipping away at the situation where every variable in the\nlinker was of type \u0027unsigned\u0027. This patch switches counts over to\nbeing size_t and adds an explicit type for init/fini function pointers\nand arrays of function pointers.\n\nAlso improve logging from CallArray.\n\nAlso remove trailing \"\\n\"s from log messages.\n\nChange-Id: Ie036d2622caac50f4d29f0570888bb527661d77e\n"
    },
    {
      "commit": "6b4c77f854c079138d552608b9df5fa3035f0fcc",
      "tree": "ce04ae839a072d7987805daa96c5ac66bb2d7558",
      "parents": [
        "53630c0e5bb6f845ba633e8dedc08b827f7b5d0c",
        "fa8c05dc00bb41ae8fe5cb5e4f82816e30f7f7b2"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Mar 12 17:24:03 2013 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Mar 12 17:24:04 2013 +0000"
      },
      "message": "Merge \"Use Elf32_Addr instead of unsigned in linker\""
    },
    {
      "commit": "fa8c05dc00bb41ae8fe5cb5e4f82816e30f7f7b2",
      "tree": "ce04ae839a072d7987805daa96c5ac66bb2d7558",
      "parents": [
        "53630c0e5bb6f845ba633e8dedc08b827f7b5d0c"
      ],
      "author": {
        "name": "Kito Cheng",
        "email": "kito@0xlab.org",
        "time": "Tue Mar 12 14:58:06 2013 +0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Mar 12 10:19:14 2013 -0700"
      },
      "message": "Use Elf32_Addr instead of unsigned in linker\n\nChange-Id: I52dcbb4b0ff0a4052e0ad7a9bbeb2df65c9d2f66\n"
    },
    {
      "commit": "53630c0e5bb6f845ba633e8dedc08b827f7b5d0c",
      "tree": "a72bdac42fe5e821df146d043ee98fe0cdaa95ef",
      "parents": [
        "4b032ee9b94137e41ee54e9bb3bcf0ba5ad43cbc",
        "4a05bef4c06dac05f1c9aa8cfc5b7e7dd6642385"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Mar 12 01:28:36 2013 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Mar 12 01:28:36 2013 +0000"
      },
      "message": "Merge \"Cache the most-recently used timezone for mktime_tz and localtime_tz.\""
    },
    {
      "commit": "4a05bef4c06dac05f1c9aa8cfc5b7e7dd6642385",
      "tree": "493815df9e9ddc9b5ce10780ef416eda8d7bb6e2",
      "parents": [
        "62c5cd0781e95c1c50b63c37a9a87bc158e64d38"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Mar 11 17:17:02 2013 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Mar 11 17:17:02 2013 -0700"
      },
      "message": "Cache the most-recently used timezone for mktime_tz and localtime_tz.\n\nNormally, the C library implicitly caches your timezone by virtue\nof the fact that the prehistoric API assumes a single timezone for\nthe entire process.\n\nThe unfortunate mktime_tz and localtime_tz extensions work around\nthis, but represent timezones as strings to their callers, so code\nthat makes heavy use of these needs a cache to be able to perform\nacceptably until it can hopefully one day be rewritten to use\njava.util.Calendar or icu4c.\n\nBug: 8270865\nChange-Id: I92e3964e86dc33ceac925f819cc5e26ff4203f50\n"
    },
    {
      "commit": "4b032ee9b94137e41ee54e9bb3bcf0ba5ad43cbc",
      "tree": "afc15e8812a3881d3b6ead10b6f9463840b1f370",
      "parents": [
        "62c5cd0781e95c1c50b63c37a9a87bc158e64d38",
        "b6e22482d4fbf62c23707a9096eecd2082a63ef1"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Mar 11 17:55:27 2013 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Mar 11 17:55:27 2013 +0000"
      },
      "message": "Merge \"Let bionic use the correct definition of ssize_t.\""
    },
    {
      "commit": "62c5cd0781e95c1c50b63c37a9a87bc158e64d38",
      "tree": "1bfc7c69fd0ca6420a5af1d331fe6a049027d1be",
      "parents": [
        "809eed1dedb833af1aba56c6a1d059123b43049a",
        "cdb27f239b4b6308c61d0348b5af6256913f7737"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Mar 11 16:42:57 2013 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Mar 11 16:42:57 2013 +0000"
      },
      "message": "Merge \"Upgrade to tzdata2013b.\""
    },
    {
      "commit": "cdb27f239b4b6308c61d0348b5af6256913f7737",
      "tree": "1bfc7c69fd0ca6420a5af1d331fe6a049027d1be",
      "parents": [
        "809eed1dedb833af1aba56c6a1d059123b43049a"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Mar 11 09:41:45 2013 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Mar 11 09:41:45 2013 -0700"
      },
      "message": "Upgrade to tzdata2013b.\n\nFrom the release notes:\n\n  Changes affecting current and future time stamps:\n\n    Haiti uses US daylight-saving rules this year, and presumably future years.\n    This changes time stamps starting today.  (Thanks to Steffen Thorsen.)\n\n    Paraguay will end DST on March 24 this year.\n    (Thanks to Steffen Thorsen.)  For now, assume it\u0027s just this year.\n\n    Morocco does not observe DST during Ramadan;\n    try to predict Ramadan in Morocco as best we can.\n    (Thanks to Erik Homoet for the heads-up.)\n\nChange-Id: I98d5290ea5a1d9fb1eeddab1c9e72135dc9e4bd1\n"
    },
    {
      "commit": "b6e22482d4fbf62c23707a9096eecd2082a63ef1",
      "tree": "7d6b9ca2c00e54eb9d38a16cd49e2903add83ce4",
      "parents": [
        "809eed1dedb833af1aba56c6a1d059123b43049a"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Mar 08 15:28:52 2013 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Mar 08 15:28:52 2013 -0800"
      },
      "message": "Let bionic use the correct definition of ssize_t.\n\nBug: 8253769\nChange-Id: I50c7cc20828fc089b83580e039ce9153a6c5a8cc\n"
    },
    {
      "commit": "809eed1dedb833af1aba56c6a1d059123b43049a",
      "tree": "3d0aacb40e3d21584c3d6617c44cdaccc3208040",
      "parents": [
        "c9f80814259a81dce12ba35d1750fa2b23fef48d",
        "0493a6f7be42e22d68e1d6ddb8eb2edaf818756f"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Mar 07 19:57:17 2013 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Mar 07 19:57:17 2013 +0000"
      },
      "message": "Merge \"Regenerate NOTICE files.\""
    },
    {
      "commit": "0493a6f7be42e22d68e1d6ddb8eb2edaf818756f",
      "tree": "3d0aacb40e3d21584c3d6617c44cdaccc3208040",
      "parents": [
        "c9f80814259a81dce12ba35d1750fa2b23fef48d"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Mar 07 11:48:58 2013 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Mar 07 11:51:10 2013 -0800"
      },
      "message": "Regenerate NOTICE files.\n\nAlso clean up some obsolete cruft.\n\nChange-Id: Iec3b36f6607f7a08b72de99294ed5b6cd910dd5f\n"
    },
    {
      "commit": "c9f80814259a81dce12ba35d1750fa2b23fef48d",
      "tree": "fd179cecfe09946df99438b1e1a8bc1ea5bd041c",
      "parents": [
        "33031fed84e24fb7791f123df45abc1a3812ac59",
        "6b3f49a5374305ce9690c3c5ca2aadc90f54c521"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Mar 07 00:54:22 2013 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Mar 07 00:54:22 2013 +0000"
      },
      "message": "Merge \"Upgrade to current NetBSD popen/pclose.\""
    },
    {
      "commit": "6b3f49a5374305ce9690c3c5ca2aadc90f54c521",
      "tree": "7dcd0542e0e59e974bb6aae6a2c861e38f7d5dd1",
      "parents": [
        "db794197cc880e3805bcefbea780476a359066c2"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Mar 06 16:20:55 2013 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Mar 06 16:20:55 2013 -0800"
      },
      "message": "Upgrade to current NetBSD popen/pclose.\n\nThis gets us back to using vfork now our ARM vfork assembler stub is\nfixed, and adds the missing thread safety for the \u0027pidlist\u0027.\n\nBug: 5335385\nChange-Id: Ib08bfa65b2cb9fa695717aae629ea14816bf988d\n"
    },
    {
      "commit": "33031fed84e24fb7791f123df45abc1a3812ac59",
      "tree": "ea5429c056945c294bd7021bc130b1d95af47e54",
      "parents": [
        "db794197cc880e3805bcefbea780476a359066c2",
        "2d4b9b7cff78b9a378d7fc0f28c702dc43002020"
      ],
      "author": {
        "name": "Brian Carlstrom",
        "email": "bdc@google.com",
        "time": "Wed Mar 06 23:55:56 2013 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Mar 06 23:55:56 2013 +0000"
      },
      "message": "Merge \"Fix typo of DT_NEEDED for DT_NULL\""
    },
    {
      "commit": "2d4b9b7cff78b9a378d7fc0f28c702dc43002020",
      "tree": "194dcbc0fefd3d6ba27e2ad0719c597223df8fb0",
      "parents": [
        "0b4a85bf1e11e28f66d0f101f9e7d4c51a0bb31c"
      ],
      "author": {
        "name": "Brian Carlstrom",
        "email": "bdc@google.com",
        "time": "Wed Mar 06 15:32:16 2013 -0800"
      },
      "committer": {
        "name": "Brian Carlstrom",
        "email": "bdc@google.com",
        "time": "Wed Mar 06 15:50:30 2013 -0800"
      },
      "message": "Fix typo of DT_NEEDED for DT_NULL\n\n(cherry-pick of 138b205ea9efc117fe522c2d7191378023a6e2cd)\n\nChange-Id: Ia895cb3018df55554627f1f61dcdfdada4a961ce\n"
    },
    {
      "commit": "db794197cc880e3805bcefbea780476a359066c2",
      "tree": "82c71032c0a4b14a87c0f2c579f1aa949aa8bc0c",
      "parents": [
        "0b4a85bf1e11e28f66d0f101f9e7d4c51a0bb31c",
        "642331b5dd5647e7d196ac4f44406fd435478a56"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Mar 06 23:13:01 2013 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Mar 06 23:13:01 2013 +0000"
      },
      "message": "Merge \"Fix debug malloc.\""
    },
    {
      "commit": "642331b5dd5647e7d196ac4f44406fd435478a56",
      "tree": "82c71032c0a4b14a87c0f2c579f1aa949aa8bc0c",
      "parents": [
        "0b4a85bf1e11e28f66d0f101f9e7d4c51a0bb31c"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Mar 06 15:03:53 2013 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Mar 06 15:03:53 2013 -0800"
      },
      "message": "Fix debug malloc.\n\nThis was broken by the change to use AT_RANDOM for the stack guards.\n\nBug: 7959813\nBug: 8330764\nChange-Id: I791900092b72a9a900f16585237fa7ad82aaed9f\n"
    },
    {
      "commit": "0b4a85bf1e11e28f66d0f101f9e7d4c51a0bb31c",
      "tree": "cbbcab7d154e153e518bc63418ec73d1da262396",
      "parents": [
        "20958207d5f9d36cc6f6b3edc4ff899c73b72b02",
        "5e2492eb89b778ee71e37e7406fe290d986ece70"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Mar 06 17:25:51 2013 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Mar 06 17:25:51 2013 +0000"
      },
      "message": "Merge \"Fix TIMING/STATS/COUNT_PAGES dynamic linker build\""
    },
    {
      "commit": "5e2492eb89b778ee71e37e7406fe290d986ece70",
      "tree": "cbbcab7d154e153e518bc63418ec73d1da262396",
      "parents": [
        "20958207d5f9d36cc6f6b3edc4ff899c73b72b02"
      ],
      "author": {
        "name": "Kito Cheng",
        "email": "kito@0xlab.org",
        "time": "Wed Mar 06 23:52:45 2013 +0800"
      },
      "committer": {
        "name": "Kito Cheng",
        "email": "kito@0xlab.org",
        "time": "Wed Mar 06 23:58:48 2013 +0800"
      },
      "message": "Fix TIMING/STATS/COUNT_PAGES dynamic linker build\n\nChange-Id: I6432ac378816da253b83d1c7fb1d3fb64647b89e\n"
    },
    {
      "commit": "20958207d5f9d36cc6f6b3edc4ff899c73b72b02",
      "tree": "daea65f5ba68690bad9e040af7a02fb1221ee0bd",
      "parents": [
        "c41dcad040ede2975ea63e383a8a3d36e3642d56",
        "43cc7f795b48e9c13a54e15af829369805f11652"
      ],
      "author": {
        "name": "Brian Carlstrom",
        "email": "bdc@google.com",
        "time": "Wed Mar 06 09:06:16 2013 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Mar 06 09:06:16 2013 +0000"
      },
      "message": "Merge \"Fix MIPS linker build\""
    },
    {
      "commit": "43cc7f795b48e9c13a54e15af829369805f11652",
      "tree": "daea65f5ba68690bad9e040af7a02fb1221ee0bd",
      "parents": [
        "c41dcad040ede2975ea63e383a8a3d36e3642d56"
      ],
      "author": {
        "name": "Brian Carlstrom",
        "email": "bdc@google.com",
        "time": "Wed Mar 06 01:03:25 2013 -0800"
      },
      "committer": {
        "name": "Brian Carlstrom",
        "email": "bdc@google.com",
        "time": "Wed Mar 06 01:05:08 2013 -0800"
      },
      "message": "Fix MIPS linker build\n\n(cherry-picked from 8c7d8c2057e303985f78eab96da747ddaa013c78)\n\nChange-Id: Idcf62ab95f8fccbc2d7c3e771a4cfbe768a1555e\n"
    },
    {
      "commit": "c41dcad040ede2975ea63e383a8a3d36e3642d56",
      "tree": "5be356ef45653f3a118ebac4a66858d24a4bdb6b",
      "parents": [
        "036f909720fd0d56dbd04b9a761fb1d0714980b0",
        "650be4e584eeab3591b9e273bfd6d169eea60853"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Mar 06 06:26:55 2013 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Mar 06 06:26:56 2013 +0000"
      },
      "message": "Merge \"More linker cleanup.\""
    },
    {
      "commit": "650be4e584eeab3591b9e273bfd6d169eea60853",
      "tree": "5be356ef45653f3a118ebac4a66858d24a4bdb6b",
      "parents": [
        "036f909720fd0d56dbd04b9a761fb1d0714980b0"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Mar 05 18:47:58 2013 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Mar 05 22:24:34 2013 -0800"
      },
      "message": "More linker cleanup.\n\nChange-Id: I9fb3c7c0d4b4ffef0eeaf092d4e30ffe63a08671\n"
    },
    {
      "commit": "036f909720fd0d56dbd04b9a761fb1d0714980b0",
      "tree": "ed4e667a1d2f471113c5cc3973b457e37d9183bd",
      "parents": [
        "be21fe7a5947e24f9f0db90f8e16c54766d1237a",
        "d4ee82dfa3ba01baa10e3ca48fcb31a27b8a4e81"
      ],
      "author": {
        "name": "Brian Carlstrom",
        "email": "bdc@google.com",
        "time": "Wed Mar 06 01:01:23 2013 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Mar 06 01:01:23 2013 +0000"
      },
      "message": "Merge \"Minor linker cleanup, primarily to use Elf32_Dyn\""
    },
    {
      "commit": "d4ee82dfa3ba01baa10e3ca48fcb31a27b8a4e81",
      "tree": "b3e7ea16cf946c1d23131bb86f59e043449b7776",
      "parents": [
        "d392e044c7a03ff1c0903c3512d00955bc7de473"
      ],
      "author": {
        "name": "Brian Carlstrom",
        "email": "bdc@google.com",
        "time": "Thu Feb 28 15:58:45 2013 -0800"
      },
      "committer": {
        "name": "Brian Carlstrom",
        "email": "bdc@google.com",
        "time": "Tue Mar 05 15:27:21 2013 -0800"
      },
      "message": "Minor linker cleanup, primarily to use Elf32_Dyn\n\nChange-Id: Ifa9408e9859c6f79444715bed4808b7c13fdced5\n"
    },
    {
      "commit": "be21fe7a5947e24f9f0db90f8e16c54766d1237a",
      "tree": "039387dfed7da8124d696b9fb0cca398a68878d5",
      "parents": [
        "133d97e4b07a733787fb85692ad8427fdc3d1d22",
        "69af6e61e12e85cccd6e01185917adefc9fefe9c"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Mar 05 22:19:14 2013 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Mar 05 22:19:14 2013 +0000"
      },
      "message": "Merge \"Upgrade to tzdata2013a.\""
    },
    {
      "commit": "69af6e61e12e85cccd6e01185917adefc9fefe9c",
      "tree": "039387dfed7da8124d696b9fb0cca398a68878d5",
      "parents": [
        "133d97e4b07a733787fb85692ad8427fdc3d1d22"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Mar 05 14:00:38 2013 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Mar 05 14:00:38 2013 -0800"
      },
      "message": "Upgrade to tzdata2013a.\n\nFrom the release notes:\n\n    Chile\u0027s 2013 rules, and we guess rules for 2014 and later, will be\n    the same as 2012, namely Apr Sun\u003e\u003d23 03:00 UTC to Sep Sun\u003e\u003d2 04:00 UTC.\n    (Thanks to Steffen Thorsen and Robert Elz.)\n\n    New Zones Asia/Khandyga, Asia/Ust-Nera, Europe/Busingen.\n    (Thanks to Tobias Conradi and Arthur David Olson.)\n\nChange-Id: I351e04b3348420ad7df7c648963c235b534033d2\n"
    },
    {
      "commit": "133d97e4b07a733787fb85692ad8427fdc3d1d22",
      "tree": "acc5666aacecc375428cb7b57521c11b8e7dc977",
      "parents": [
        "cf9a9604adb27600c79ca236578a8be89168202f",
        "14283004f5a8fe4c74961a9c89009a781e1becbe"
      ],
      "author": {
        "name": "Ben Cheng",
        "email": "bccheng@google.com",
        "time": "Tue Mar 05 21:04:38 2013 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Mar 05 21:04:38 2013 +0000"
      },
      "message": "Merge \"Add stack unwinding directives to memcpy.\""
    },
    {
      "commit": "cf9a9604adb27600c79ca236578a8be89168202f",
      "tree": "fcba00075768a0021c868e67b6e2160e2fc776b6",
      "parents": [
        "d392e044c7a03ff1c0903c3512d00955bc7de473",
        "eb93ebffba21e2c9b8a12bb86db60d38c7750270"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Mar 05 20:13:32 2013 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Mar 05 20:13:33 2013 +0000"
      },
      "message": "Merge \"Switch to upstream-freebsd for the unmolested wchar code.\""
    },
    {
      "commit": "eb93ebffba21e2c9b8a12bb86db60d38c7750270",
      "tree": "fcba00075768a0021c868e67b6e2160e2fc776b6",
      "parents": [
        "d392e044c7a03ff1c0903c3512d00955bc7de473"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Mar 01 18:35:56 2013 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Mar 01 18:35:56 2013 -0800"
      },
      "message": "Switch to upstream-freebsd for the unmolested wchar code.\n\nChange-Id: I87b4d76ff8da04109ae53638eec4f11629798960\n"
    },
    {
      "commit": "d392e044c7a03ff1c0903c3512d00955bc7de473",
      "tree": "c6daa38f29aa9a327b094eda31340251fdedef11",
      "parents": [
        "c5c6cb3f13642386e08acf687b4bc39f568bad0c",
        "f0777843c03deb26b1f78c8edd17c557041696e9"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Sat Mar 02 01:22:04 2013 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Sat Mar 02 01:22:04 2013 +0000"
      },
      "message": "Merge \"Move realpath.c to upstream-freebsd.\""
    },
    {
      "commit": "f0777843c03deb26b1f78c8edd17c557041696e9",
      "tree": "c6daa38f29aa9a327b094eda31340251fdedef11",
      "parents": [
        "c5c6cb3f13642386e08acf687b4bc39f568bad0c"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Mar 01 16:59:46 2013 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Mar 01 17:11:39 2013 -0800"
      },
      "message": "Move realpath.c to upstream-freebsd.\n\nThis is actually a slightly newer upstream version than the one I\noriginally pulled. Hopefully now it\u0027s in upstream-freebsd it will\nbe easier to track upstream, though I still need to sit down and\nwrite the necessary scripts at some point.\n\nBug: 5110679\nChange-Id: I87e563f0f95aa8e68b45578e2a8f448bbf827a33\n"
    },
    {
      "commit": "14283004f5a8fe4c74961a9c89009a781e1becbe",
      "tree": "5a0c444eac02166c7da383d34bf1d127b88fb5bc",
      "parents": [
        "66273ac2b6b8c2042350204575bd290d96dea681"
      ],
      "author": {
        "name": "Ben Cheng",
        "email": "bccheng@google.com",
        "time": "Fri Mar 01 12:38:09 2013 -0800"
      },
      "committer": {
        "name": "Ben Cheng",
        "email": "bccheng@google.com",
        "time": "Fri Mar 01 14:56:04 2013 -0800"
      },
      "message": "Add stack unwinding directives to memcpy.\n\nAlso include some Android specific header files.\n\nChange-Id: Idbcbd43458ba945ca8c61bfbc04ea15fc0ae4e00\n"
    },
    {
      "commit": "c5c6cb3f13642386e08acf687b4bc39f568bad0c",
      "tree": "848d0eea78b6abb9a8fa4eda248d5a59723dec8c",
      "parents": [
        "8f149da08dc3125824e168f8d29613be80b2085c",
        "66273ac2b6b8c2042350204575bd290d96dea681"
      ],
      "author": {
        "name": "Ben Cheng",
        "email": "bccheng@android.com",
        "time": "Fri Mar 01 10:24:58 2013 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Mar 01 10:24:58 2013 -0800"
      },
      "message": "am 66273ac2: Merge \"Adding strcmp tuned for Cortex-A15.\"\n\n* commit \u002766273ac2b6b8c2042350204575bd290d96dea681\u0027:\n  Adding strcmp tuned for Cortex-A15.\n"
    },
    {
      "commit": "8f149da08dc3125824e168f8d29613be80b2085c",
      "tree": "529c9b701e3254a1cfc778781a58e4af8075cfb4",
      "parents": [
        "305a999589a8dfde077589106853522d483d24d2",
        "b3b1ab6213df15f99c9af3088cfe733428816fd3"
      ],
      "author": {
        "name": "Ben Cheng",
        "email": "bccheng@android.com",
        "time": "Fri Mar 01 10:24:58 2013 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Mar 01 10:24:58 2013 -0800"
      },
      "message": "am b3b1ab62: Merge \"Adding memcpy tuned for Cortex-A15.\"\n\n* commit \u0027b3b1ab6213df15f99c9af3088cfe733428816fd3\u0027:\n  Adding memcpy tuned for Cortex-A15.\n"
    },
    {
      "commit": "305a999589a8dfde077589106853522d483d24d2",
      "tree": "cc5bc9d6f089ac3feea538afee486544b3f594ae",
      "parents": [
        "7fe8229b49ea091d769b63052247ca12280975eb",
        "8fa924e5dff4588cca8586e0e727b9a544db7083"
      ],
      "author": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Fri Mar 01 10:24:57 2013 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Mar 01 10:24:57 2013 -0800"
      },
      "message": "am 8fa924e5: Merge \"unistd.h: don\\\u0027t include sys/capability.h\"\n\n* commit \u00278fa924e5dff4588cca8586e0e727b9a544db7083\u0027:\n  unistd.h: don\u0027t include sys/capability.h\n"
    },
    {
      "commit": "66273ac2b6b8c2042350204575bd290d96dea681",
      "tree": "46907ef08a6d030661d02a12d419a66f6813edc3",
      "parents": [
        "b3b1ab6213df15f99c9af3088cfe733428816fd3",
        "eb149e954ed7c455d3fb3b19bc064ad358c8bb1e"
      ],
      "author": {
        "name": "Ben Cheng",
        "email": "bccheng@android.com",
        "time": "Fri Mar 01 18:18:33 2013 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Mar 01 18:18:34 2013 +0000"
      },
      "message": "Merge \"Adding strcmp tuned for Cortex-A15.\""
    },
    {
      "commit": "b3b1ab6213df15f99c9af3088cfe733428816fd3",
      "tree": "ce4035fb98a4ab92a52e44e2b20737caa1d4dca1",
      "parents": [
        "8fa924e5dff4588cca8586e0e727b9a544db7083",
        "5b349fc22e7ba35ecb76b365d8be71939d204cde"
      ],
      "author": {
        "name": "Ben Cheng",
        "email": "bccheng@android.com",
        "time": "Fri Mar 01 18:18:05 2013 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Mar 01 18:18:05 2013 +0000"
      },
      "message": "Merge \"Adding memcpy tuned for Cortex-A15.\""
    },
    {
      "commit": "8fa924e5dff4588cca8586e0e727b9a544db7083",
      "tree": "a8a95bac07cf511c84de00c50dd7add3a7f2e1a4",
      "parents": [
        "9c1912c4bf5eb0edc07bfd333226c4e0b7a629eb",
        "6524d3cad7a1adfc709ace7e983afb9789fed888"
      ],
      "author": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Fri Mar 01 18:14:47 2013 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Mar 01 18:14:47 2013 +0000"
      },
      "message": "Merge \"unistd.h: don\u0027t include sys/capability.h\""
    },
    {
      "commit": "6524d3cad7a1adfc709ace7e983afb9789fed888",
      "tree": "a8a95bac07cf511c84de00c50dd7add3a7f2e1a4",
      "parents": [
        "9c1912c4bf5eb0edc07bfd333226c4e0b7a629eb"
      ],
      "author": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Fri Mar 01 09:46:45 2013 -0800"
      },
      "committer": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Fri Mar 01 10:10:55 2013 -0800"
      },
      "message": "unistd.h: don\u0027t include sys/capability.h\n\nDon\u0027t pull in unnecessary header files. AFAIK, I\u0027ve fixed all\nthe code which didn\u0027t include the correct header files.\n\nChange-Id: If0b7bba74e77cb24a0cf9ce8968aa07400855e58\n"
    },
    {
      "commit": "eb149e954ed7c455d3fb3b19bc064ad358c8bb1e",
      "tree": "2c83e62fa897004cc5ca4ff7a27b7cd729e260cc",
      "parents": [
        "5b349fc22e7ba35ecb76b365d8be71939d204cde"
      ],
      "author": {
        "name": "Greta Yorsh",
        "email": "greta.yorsh@arm.com",
        "time": "Fri Nov 30 09:31:38 2012 +0000"
      },
      "committer": {
        "name": "David Butcher",
        "email": "david.butcher@arm.com",
        "time": "Fri Mar 01 10:41:01 2013 +0000"
      },
      "message": "Adding strcmp tuned for Cortex-A15.\n\nThe attached patch provides a new implementation of strcmp for ARM,\nusing LDRD instead of LDR whenever possible.\n\nFor older architectures that do not support LDRD, this implementation\nuses the same algorithm as before.\n\nTesting and benchmarking:\n* Validation: successfully passes a test that compares different strings\nof length 1-128 and offsets 0-8 from a word boundary. Checked on\nqemu/A15/A9, ARM/Thumb mode, Big/Little Endian.\n* Integration with gcc: no regression on qemu for arm-none-eabi --with-cpu\na15/a9 --with-mode arm/thumb.\n\nChange-Id: I9e230e1b99dbdc9119b69ee858a89038c516a4ea\nSigned-off-by: Vassilis Laganakos \u003cvasileios.laganakos@arm.com\u003e\n"
    },
    {
      "commit": "5b349fc22e7ba35ecb76b365d8be71939d204cde",
      "tree": "e47414c63add667725f134e35e9df2c6f1b31ae0",
      "parents": [
        "7c0dd555c09c880b71c7c4039993d1d029add109"
      ],
      "author": {
        "name": "Greta Yorsh",
        "email": "greta.yorsh@arm.com",
        "time": "Tue Oct 04 16:02:25 2011 +0000"
      },
      "committer": {
        "name": "David Butcher",
        "email": "david.butcher@arm.com",
        "time": "Fri Mar 01 10:40:50 2013 +0000"
      },
      "message": "Adding memcpy tuned for Cortex-A15.\n\nThe strategy for large block sizes is LDRD and STRD with offset addressing,\nwhere the main loop copies 64 bytes in every iteration, (i.e., 8 calls to\nLDRD and STRD pairs), interleaving load and stores (i.e., the pairs of LDRD\nand STRD of the same data are consecutive instructions), and the writeback\nof an updated address is a separate instruction, which allows us to write\nback the accumulated update once per iteration.\n\nThis strategy is implemented in memcpy.S. In some configurations, a plain\nversion of memcpy (included from memcpy-stub.c) is used instead of the\noptimized one.\n\nValidation:\n* Correctness: checked memcpy using a test harness for block sizes\nranging between 1 to 128, and source and destination buffers alignment\nranging in { 0,1,2,3,4,8,12 } bytes each.\n* Performance: benchmarking on Cortex-A15 FPGA indicates that this strategy\nis better for A15 than the strategy used by glibc and even slightly better\nthan using NEON. Benchmarking on Cortex-A9 bare metal and Linux shows\nthat the proposed strategy is reasonable: not as fast as the version of\nmemcpy from glibc (which is the best open source strategy for A9), but\ncomparable with csl and bionic.\n* Integration with GCC: no regression for arm-none-eabi --with-cpu\ncortex-a15 and cortex-a9.\n\nChange-Id: Ied56354d8992c62ae3e02d582a2bd55585d814b9\nSigned-off-by: Vassilis Laganakos \u003cvasileios.laganakos@arm.com\u003e\n"
    },
    {
      "commit": "7fe8229b49ea091d769b63052247ca12280975eb",
      "tree": "cad4ca2e8ac800ee91f322333a45836234fc4549",
      "parents": [
        "58b997c8121455ecb9aa1b80d7c796115149ec2a",
        "9c1912c4bf5eb0edc07bfd333226c4e0b7a629eb"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Feb 28 11:43:11 2013 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Feb 28 11:43:11 2013 -0800"
      },
      "message": "am 9c1912c4: Merge \"Avoid changing the C++ ABI with ssize_t.\"\n\n* commit \u00279c1912c4bf5eb0edc07bfd333226c4e0b7a629eb\u0027:\n  Avoid changing the C++ ABI with ssize_t.\n"
    },
    {
      "commit": "9c1912c4bf5eb0edc07bfd333226c4e0b7a629eb",
      "tree": "b3e37a52ccb3f6ee74750976cfbab0faedbc8fb5",
      "parents": [
        "f5f906c184677b8295523231cfeead9ed94661ad",
        "e255642dc1178663860104d9da2590056fae8d0b"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Feb 28 19:28:53 2013 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Feb 28 19:28:53 2013 +0000"
      },
      "message": "Merge \"Avoid changing the C++ ABI with ssize_t.\""
    },
    {
      "commit": "e255642dc1178663860104d9da2590056fae8d0b",
      "tree": "b3e37a52ccb3f6ee74750976cfbab0faedbc8fb5",
      "parents": [
        "f5f906c184677b8295523231cfeead9ed94661ad"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Feb 28 10:51:14 2013 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Feb 28 10:51:31 2013 -0800"
      },
      "message": "Avoid changing the C++ ABI with ssize_t.\n\nBug: 8253769\nChange-Id: Ia325003ed6e59da553e2bdde7c43515bc191b8ba\n"
    },
    {
      "commit": "58b997c8121455ecb9aa1b80d7c796115149ec2a",
      "tree": "0f6dcb5b548c2697dd4a6bc76c4f6a32e714d715",
      "parents": [
        "406968b2444bf29e449acebdfb7ff174abd1e0ad",
        "f5f906c184677b8295523231cfeead9ed94661ad"
      ],
      "author": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Tue Feb 26 13:50:03 2013 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Feb 26 13:50:03 2013 -0800"
      },
      "message": "am f5f906c1: Merge \"libc: create sys/capability.h\"\n\n* commit \u0027f5f906c184677b8295523231cfeead9ed94661ad\u0027:\n  libc: create sys/capability.h\n"
    },
    {
      "commit": "f5f906c184677b8295523231cfeead9ed94661ad",
      "tree": "8196bd0651e4a5b7edefd952696f7e8d97dcfa27",
      "parents": [
        "c0e9ddd002f6084c29c26236d741d64d01713c15",
        "7c0dd555c09c880b71c7c4039993d1d029add109"
      ],
      "author": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Tue Feb 26 21:38:10 2013 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Feb 26 21:38:11 2013 +0000"
      },
      "message": "Merge \"libc: create sys/capability.h\""
    },
    {
      "commit": "7c0dd555c09c880b71c7c4039993d1d029add109",
      "tree": "8196bd0651e4a5b7edefd952696f7e8d97dcfa27",
      "parents": [
        "c0e9ddd002f6084c29c26236d741d64d01713c15"
      ],
      "author": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Tue Feb 26 13:27:15 2013 -0800"
      },
      "committer": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Tue Feb 26 13:27:15 2013 -0800"
      },
      "message": "libc: create sys/capability.h\n\nPer \"man capset\", sys/capability.h is the appropriate header file\nfor the capget / capset definition, not unistd.h. Fixed.\n\nAs a short term hack, continue to include sys/capability.h in\nunistd.h, until we can fix all the code which uses capget / capset.\n\nChange-Id: I6e7cf55955d761ca785a14c5e4b7a44125d8fc15\n"
    },
    {
      "commit": "406968b2444bf29e449acebdfb7ff174abd1e0ad",
      "tree": "f57dd93a9ea7e66bbfb6387807dc070cd110d24a",
      "parents": [
        "7b8bf68133cda6c5ff9207248b563c2f6297e22a",
        "c0e9ddd002f6084c29c26236d741d64d01713c15"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Feb 25 14:54:54 2013 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Feb 25 14:54:54 2013 -0800"
      },
      "message": "am c0e9ddd0: Merge \"Reimplement scandir(3).\"\n\n* commit \u0027c0e9ddd002f6084c29c26236d741d64d01713c15\u0027:\n  Reimplement scandir(3).\n"
    },
    {
      "commit": "c0e9ddd002f6084c29c26236d741d64d01713c15",
      "tree": "72d4f9e8dcc65601e89b70d11ab4b02f7fce64b5",
      "parents": [
        "f6bb5bf498810d0622f66020059c87b96738c35b",
        "701bec2af33feaa9dddf12ccf8e4c714441b7f2e"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Feb 25 22:43:28 2013 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon Feb 25 22:43:28 2013 +0000"
      },
      "message": "Merge \"Reimplement scandir(3).\""
    },
    {
      "commit": "701bec2af33feaa9dddf12ccf8e4c714441b7f2e",
      "tree": "72d4f9e8dcc65601e89b70d11ab4b02f7fce64b5",
      "parents": [
        "f6bb5bf498810d0622f66020059c87b96738c35b"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Feb 25 13:14:31 2013 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Feb 25 13:14:31 2013 -0800"
      },
      "message": "Reimplement scandir(3).\n\nThe old scandir implementation didn\u0027t take into account the varying\nsize of directory entries, and didn\u0027t correctly clean up on its\nerror exits.\n\nBug: 7339844\nChange-Id: Ib40e3564709752241a3119a496cbb2192e3f9abe\n"
    },
    {
      "commit": "7b8bf68133cda6c5ff9207248b563c2f6297e22a",
      "tree": "bfcb51badd3088e8466d032203438dfc6e434885",
      "parents": [
        "440bc83d924fa616614b4b426da66c2893048887",
        "f6bb5bf498810d0622f66020059c87b96738c35b"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Feb 22 14:02:44 2013 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Feb 22 14:02:44 2013 -0800"
      },
      "message": "am f6bb5bf4: Merge \"Add the glibc-compatible names to \u003csys/endian.h\u003e.\"\n\n* commit \u0027f6bb5bf498810d0622f66020059c87b96738c35b\u0027:\n  Add the glibc-compatible names to \u003csys/endian.h\u003e.\n"
    },
    {
      "commit": "f6bb5bf498810d0622f66020059c87b96738c35b",
      "tree": "9e01356e2a81c9c25f7cd0c47ff9a99c7fedabe0",
      "parents": [
        "7b2c6385effbb6d6e98bfe29cc6c144211128d9e",
        "cf820d7e96d572484cfd2ef436a4cfada6d38175"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Feb 22 21:46:59 2013 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Feb 22 21:46:59 2013 +0000"
      },
      "message": "Merge \"Add the glibc-compatible names to \u003csys/endian.h\u003e.\""
    },
    {
      "commit": "440bc83d924fa616614b4b426da66c2893048887",
      "tree": "c096eadb143e61d0936ee3c83e32acf49918df48",
      "parents": [
        "cadc858329a5929911eff5f9a208229112e36a93",
        "7b2c6385effbb6d6e98bfe29cc6c144211128d9e"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Feb 22 12:10:15 2013 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Feb 22 12:10:15 2013 -0800"
      },
      "message": "am 7b2c6385: Merge \"Fix \u003cmemory.h\u003e to be a synonym for \u003cstring.h\u003e like in glibc.\"\n\n* commit \u00277b2c6385effbb6d6e98bfe29cc6c144211128d9e\u0027:\n  Fix \u003cmemory.h\u003e to be a synonym for \u003cstring.h\u003e like in glibc.\n"
    },
    {
      "commit": "cadc858329a5929911eff5f9a208229112e36a93",
      "tree": "a1c6bc18080cd258b00cf732759cad095b0c8cc4",
      "parents": [
        "2a5b57db8c711b6f33581a68cfb7b82298ad988c",
        "bc0e7ee18157c2ffe65644514555689f4259ccfe"
      ],
      "author": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Fri Feb 22 11:53:05 2013 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Feb 22 11:53:05 2013 -0800"
      },
      "message": "am bc0e7ee1: Merge \"libc: add sys/signal.h for compatibility\"\n\n* commit \u0027bc0e7ee18157c2ffe65644514555689f4259ccfe\u0027:\n  libc: add sys/signal.h for compatibility\n"
    },
    {
      "commit": "7b2c6385effbb6d6e98bfe29cc6c144211128d9e",
      "tree": "39d65e36e299688dd3bde219b1134170d2b1cbb7",
      "parents": [
        "bc0e7ee18157c2ffe65644514555689f4259ccfe",
        "6f1b7a64076528a7eac6c872ba5b294bbe418be8"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Feb 22 19:49:38 2013 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Feb 22 19:49:39 2013 +0000"
      },
      "message": "Merge \"Fix \u003cmemory.h\u003e to be a synonym for \u003cstring.h\u003e like in glibc.\""
    },
    {
      "commit": "bc0e7ee18157c2ffe65644514555689f4259ccfe",
      "tree": "856ac4469d83a6ba1a0940aae1ce6b18bc8cb5e3",
      "parents": [
        "580a707376d81bfcb39919f0a1203b39a39dbd8a",
        "b22a6849902d3bb4a105224c82998703fd6dbb06"
      ],
      "author": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Fri Feb 22 19:33:52 2013 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Feb 22 19:33:53 2013 +0000"
      },
      "message": "Merge \"libc: add sys/signal.h for compatibility\""
    },
    {
      "commit": "6f1b7a64076528a7eac6c872ba5b294bbe418be8",
      "tree": "31a837911a7e210e813f8b5e47f73432a5ad9011",
      "parents": [
        "a9ff09d1fc22292adc12cf99d4d44448d619b3cf"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Feb 22 11:11:48 2013 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Feb 22 11:11:48 2013 -0800"
      },
      "message": "Fix \u003cmemory.h\u003e to be a synonym for \u003cstring.h\u003e like in glibc.\n\nChange-Id: If23589c5d85dffd28788e04b010303620fa178ca\n"
    },
    {
      "commit": "cf820d7e96d572484cfd2ef436a4cfada6d38175",
      "tree": "72931a04845c0cc0edc1e2b34647e95d6417ad2f",
      "parents": [
        "a9ff09d1fc22292adc12cf99d4d44448d619b3cf"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Feb 22 11:01:17 2013 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Feb 22 11:04:27 2013 -0800"
      },
      "message": "Add the glibc-compatible names to \u003csys/endian.h\u003e.\n\nAlso remove declarations for functions that don\u0027t exist; these\nare all macros.\n\nBug: http://code.google.com/p/android/issues/detail?id\u003d41769\nChange-Id: Ia3774ab2ff7d3c535f83774eac61068f9b11e194\n"
    },
    {
      "commit": "b22a6849902d3bb4a105224c82998703fd6dbb06",
      "tree": "856ac4469d83a6ba1a0940aae1ce6b18bc8cb5e3",
      "parents": [
        "580a707376d81bfcb39919f0a1203b39a39dbd8a"
      ],
      "author": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Fri Feb 22 10:38:28 2013 -0800"
      },
      "committer": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Fri Feb 22 10:38:28 2013 -0800"
      },
      "message": "libc: add sys/signal.h for compatibility\n\nSome applications look for sys/signal.h instead of signal.h.\nWork around those apps.\n\nChange-Id: I76ac7744ebc56d196b5f0cb9ed381d32817436b9\n"
    },
    {
      "commit": "2a5b57db8c711b6f33581a68cfb7b82298ad988c",
      "tree": "8961babade5ca58fb6c2f359b4b8d99a6a217402",
      "parents": [
        "398f46dd92fbb72e2a275cddccffdfde384bb3b4",
        "580a707376d81bfcb39919f0a1203b39a39dbd8a"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Feb 21 17:55:28 2013 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Feb 21 17:55:28 2013 -0800"
      },
      "message": "am 580a7073: Merge \"Stop advertising rindex(3), which is both deprecated and unimplemented.\"\n\n* commit \u0027580a707376d81bfcb39919f0a1203b39a39dbd8a\u0027:\n  Stop advertising rindex(3), which is both deprecated and unimplemented.\n"
    },
    {
      "commit": "580a707376d81bfcb39919f0a1203b39a39dbd8a",
      "tree": "a8ed6260b45d305d695f99c7aa1b96e1617caaee",
      "parents": [
        "a0259b42eba08e6d71a274fa3f770afccbb93107",
        "538f6fc202b07219ce78de54c0e05ab81e937154"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Feb 22 01:45:02 2013 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Feb 22 01:45:02 2013 +0000"
      },
      "message": "Merge \"Stop advertising rindex(3), which is both deprecated and unimplemented.\""
    },
    {
      "commit": "538f6fc202b07219ce78de54c0e05ab81e937154",
      "tree": "a8ed6260b45d305d695f99c7aa1b96e1617caaee",
      "parents": [
        "a0259b42eba08e6d71a274fa3f770afccbb93107"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Feb 21 17:39:06 2013 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Feb 21 17:39:06 2013 -0800"
      },
      "message": "Stop advertising rindex(3), which is both deprecated and unimplemented.\n\nChange-Id: I3c775d9974e49c3f76a53e46e022659657b89034\n"
    },
    {
      "commit": "398f46dd92fbb72e2a275cddccffdfde384bb3b4",
      "tree": "089c258f92dd22d02eb99a54813025de0c22e6d7",
      "parents": [
        "719d46f8ac4f2af89f8e8927db8c460b91622417",
        "a0259b42eba08e6d71a274fa3f770afccbb93107"
      ],
      "author": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Thu Feb 21 17:39:03 2013 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Feb 21 17:39:03 2013 -0800"
      },
      "message": "am a0259b42: Merge \"libc: remove bcmp prototype\"\n\n* commit \u0027a0259b42eba08e6d71a274fa3f770afccbb93107\u0027:\n  libc: remove bcmp prototype\n"
    },
    {
      "commit": "a0259b42eba08e6d71a274fa3f770afccbb93107",
      "tree": "2bd5972364d7716ee16f5a9b9f926815ea988ac9",
      "parents": [
        "a9ff09d1fc22292adc12cf99d4d44448d619b3cf",
        "11ebbc8437af208f64861b7531502ff0eeb30e03"
      ],
      "author": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Fri Feb 22 01:22:34 2013 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Feb 22 01:22:35 2013 +0000"
      },
      "message": "Merge \"libc: remove bcmp prototype\""
    },
    {
      "commit": "11ebbc8437af208f64861b7531502ff0eeb30e03",
      "tree": "0fbde52d13d9be98860d588530a320e4d7b3427f",
      "parents": [
        "ccd403161cdcc88a0ffcaecd1bc707e2d4c88a1c"
      ],
      "author": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Thu Feb 21 17:17:09 2013 -0800"
      },
      "committer": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Thu Feb 21 17:17:09 2013 -0800"
      },
      "message": "libc: remove bcmp prototype\n\nAFAIK, bionic only ever provided an implementation of bcmp\nfor x86, and even then, the code was never actually compiled.\nRemove the prototype.\n\nbcmp() has been obsoleted and replaced by memcmp()\n\nChange-Id: I549d02ab6a9241a9acbbbfade0d98a9a02c2eaee\n"
    },
    {
      "commit": "719d46f8ac4f2af89f8e8927db8c460b91622417",
      "tree": "bc4fb5227ad931ad5af39d47c97be023caf6c99f",
      "parents": [
        "818b1423d228e478245a1b0d2fe687606ea1741c",
        "a9ff09d1fc22292adc12cf99d4d44448d619b3cf"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Feb 21 14:17:47 2013 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Feb 21 14:17:47 2013 -0800"
      },
      "message": "am a9ff09d1: Merge \"Fix raise(3) so it works in signal handlers.\"\n\n* commit \u0027a9ff09d1fc22292adc12cf99d4d44448d619b3cf\u0027:\n  Fix raise(3) so it works in signal handlers.\n"
    },
    {
      "commit": "a9ff09d1fc22292adc12cf99d4d44448d619b3cf",
      "tree": "aa35c41ee98aad9b065591a5497515163534e956",
      "parents": [
        "ccd403161cdcc88a0ffcaecd1bc707e2d4c88a1c",
        "fae89fc4042ee4c360842234dfda7831c313bd44"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Feb 21 20:05:35 2013 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Feb 21 20:05:35 2013 +0000"
      },
      "message": "Merge \"Fix raise(3) so it works in signal handlers.\""
    },
    {
      "commit": "fae89fc4042ee4c360842234dfda7831c313bd44",
      "tree": "aa35c41ee98aad9b065591a5497515163534e956",
      "parents": [
        "ccd403161cdcc88a0ffcaecd1bc707e2d4c88a1c"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Feb 21 11:22:23 2013 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Feb 21 11:22:23 2013 -0800"
      },
      "message": "Fix raise(3) so it works in signal handlers.\n\nWe could special-case raise(3) in non-threaded programs, but the more\nconservative course is to make pthread_kill(3) work in signal handlers\nat the cost of a race shared by other C libraries.\n\nChange-Id: I59fb23d03bdabf403435e731704b33acdf3e0234\n"
    },
    {
      "commit": "818b1423d228e478245a1b0d2fe687606ea1741c",
      "tree": "b192bbae9d1c536c3177bd1a42b4c1e9a2464ac5",
      "parents": [
        "ccd403161cdcc88a0ffcaecd1bc707e2d4c88a1c"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Wed Feb 20 12:47:58 2013 -0800"
      },
      "committer": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Wed Feb 20 12:47:58 2013 -0800"
      },
      "message": "Fix mako builds. Do not merge.\n\nRevert \"Regenerate msm_ion.h.\"\n\nThis reverts commit 3fac8f7f492302ae680288996e31debc645fd684.\n"
    },
    {
      "commit": "ccd403161cdcc88a0ffcaecd1bc707e2d4c88a1c",
      "tree": "102909efb095eaa603f94de0617720b5364875b9",
      "parents": [
        "593abb7b593a34d501c90512953a7368add6d185",
        "c641cafbc387849510d7f408e85f72fa3608916d"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Feb 19 22:13:53 2013 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Feb 19 22:13:53 2013 +0000"
      },
      "message": "Merge \"use architecture-specific ssize_t definition\""
    },
    {
      "commit": "c641cafbc387849510d7f408e85f72fa3608916d",
      "tree": "102909efb095eaa603f94de0617720b5364875b9",
      "parents": [
        "593abb7b593a34d501c90512953a7368add6d185"
      ],
      "author": {
        "name": "Thorsten Glaser",
        "email": "tg@mirbsd.org",
        "time": "Sun Feb 17 16:50:58 2013 +0000"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Feb 19 14:12:55 2013 -0800"
      },
      "message": "use architecture-specific ssize_t definition\n\nafter change 32822 was rejected, this is the more light-weight\nversion of the fix: libc/include/sys/types.h already - via\nlibc/kernel/common/linux/posix_types.h - includes a definition\nof __kernel_ssize_t from libc/kernel/arch-*/asm/posix_types.h\nwhich is architecture-specific, toolchain-agnostic and also\ngets rid of the gcc -Wformat warning (which it issues correctly,\nsince this i̲s̲ indeed a bug in bionic)\n\nChange-Id: Ie4503ab16628bc25815a836d07556f665e9795c7\n"
    },
    {
      "commit": "593abb7b593a34d501c90512953a7368add6d185",
      "tree": "a8a8578f639d377ea78e31ae03e6f542df0db328",
      "parents": [
        "eeecff7293efd6becf3b07b8d24cada3d820c894",
        "61ba9b526bf62a5a6ab717497d34e2f569fc0116"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Feb 19 21:58:18 2013 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Feb 19 21:58:18 2013 +0000"
      },
      "message": "Merge \"stdlib: atexit: include \u003csys/cdefs.h\u003e\""
    },
    {
      "commit": "eeecff7293efd6becf3b07b8d24cada3d820c894",
      "tree": "12c24efbf20cb14c26f78734ea106c9d591ea870",
      "parents": [
        "b5862d4d8a1246dc1e21695cf3bacafefedf0428",
        "9d23e04c43dbb8480bea8be28b8a2f37423bec49"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Feb 19 21:37:55 2013 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Feb 19 21:37:55 2013 +0000"
      },
      "message": "Merge \"Fix pthreads functions that should return ESRCH.\""
    },
    {
      "commit": "9d23e04c43dbb8480bea8be28b8a2f37423bec49",
      "tree": "e403288cf01ce40d6f330da09a317c7ad6dc2cb2",
      "parents": [
        "081318e3550b1a8d8384d98d7c94527681691120"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Feb 15 19:21:51 2013 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Feb 19 12:21:41 2013 -0800"
      },
      "message": "Fix pthreads functions that should return ESRCH.\n\nimgtec pointed out that pthread_kill(3) was broken, but most of the\nother functions that ought to return ESRCH for invalid/exited threads\nwere equally broken.\n\nChange-Id: I96347f6195549aee0c72dc39063e6c5d06d2e01f\n"
    },
    {
      "commit": "b5862d4d8a1246dc1e21695cf3bacafefedf0428",
      "tree": "6a56fd685e729382a1937b5f1d4f6be10de6689c",
      "parents": [
        "7f67f78ad5c3da689997edd8fbb5afb6e5fc6355",
        "aa772a33ba31151c2d74c61600db9da42bc663e4"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Feb 19 19:14:26 2013 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Feb 19 19:14:26 2013 +0000"
      },
      "message": "Merge \"Update linker README.\""
    },
    {
      "commit": "aa772a33ba31151c2d74c61600db9da42bc663e4",
      "tree": "3722bffd77c793881108f886b355c21f6428ec24",
      "parents": [
        "39804dcde6c1c596285432b28cdb09382ce59663"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Feb 19 11:13:44 2013 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Feb 19 11:13:44 2013 -0800"
      },
      "message": "Update linker README.\n\nChange-Id: Icaa353e9cf1848c86e7445f4ad590bdab44f7941\n"
    },
    {
      "commit": "61ba9b526bf62a5a6ab717497d34e2f569fc0116",
      "tree": "a767ff99e72327a460b49ca20d00aae45f041955",
      "parents": [
        "7f67f78ad5c3da689997edd8fbb5afb6e5fc6355"
      ],
      "author": {
        "name": "Chirayu Desai",
        "email": "cdesai@cyanogenmod.org",
        "time": "Sat Feb 16 21:23:27 2013 +0530"
      },
      "committer": {
        "name": "Chirayu Desai",
        "email": "cdesai@cyanogenmod.org",
        "time": "Sat Feb 16 21:23:27 2013 +0530"
      },
      "message": "stdlib: atexit: include \u003csys/cdefs.h\u003e\n\nChange-Id: Ib9eb167710a021e0a2b5c77a06a9338cdc748e6d\n"
    },
    {
      "commit": "7f67f78ad5c3da689997edd8fbb5afb6e5fc6355",
      "tree": "263e91b624c47c73ab88c4d4b15a7fc8596c77a4",
      "parents": [
        "39804dcde6c1c596285432b28cdb09382ce59663",
        "081318e3550b1a8d8384d98d7c94527681691120"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Sat Feb 16 00:40:21 2013 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Sat Feb 16 00:40:21 2013 +0000"
      },
      "message": "Merge \"dalvik is big enough and ugly enough to handle System.arraycopy itself.\""
    },
    {
      "commit": "081318e3550b1a8d8384d98d7c94527681691120",
      "tree": "263e91b624c47c73ab88c4d4b15a7fc8596c77a4",
      "parents": [
        "39804dcde6c1c596285432b28cdb09382ce59663"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Feb 15 14:27:52 2013 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Feb 15 14:27:52 2013 -0800"
      },
      "message": "dalvik is big enough and ugly enough to handle System.arraycopy itself.\n\nChange-Id: I4b54a15ea101c0c6bab06cfb11e4178f5a57fc05\n"
    },
    {
      "commit": "39804dcde6c1c596285432b28cdb09382ce59663",
      "tree": "19eef7fcbba616a52bd37f4c83ece3e918b25445",
      "parents": [
        "3e3b239d2be0c5a92e91385f4f10b8f7da8d2837",
        "40eabe24e4e3ae8ebe437f1f4e43cf39cbba2e9e"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Feb 15 21:55:22 2013 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Feb 15 21:55:22 2013 +0000"
      },
      "message": "Merge \"Fix the pthread_setname_np test.\""
    },
    {
      "commit": "40eabe24e4e3ae8ebe437f1f4e43cf39cbba2e9e",
      "tree": "19eef7fcbba616a52bd37f4c83ece3e918b25445",
      "parents": [
        "3e3b239d2be0c5a92e91385f4f10b8f7da8d2837"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Feb 14 18:59:37 2013 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Feb 15 12:08:59 2013 -0800"
      },
      "message": "Fix the pthread_setname_np test.\n\nFix the pthread_setname_np test to take into account that emulator kernels are\nso old that they don\u0027t support setting the name of other threads.\n\nThe CLONE_DETACHED thread is obsolete since 2.5 kernels.\n\nRename kernel_id to tid.\n\nFix the signature of __pthread_clone.\n\nClean up the clone and pthread_setname_np implementations slightly.\n\nChange-Id: I16c2ff8845b67530544bbda9aa6618058603066d\n"
    },
    {
      "commit": "3e3b239d2be0c5a92e91385f4f10b8f7da8d2837",
      "tree": "7cf2172c26930b783a5e19106b35364c8964504d",
      "parents": [
        "0a2cb815974ea96af664fa966079966a08916722",
        "7fd803cdfa873c01138dcbd614ec92418169b1c2"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Feb 15 02:10:29 2013 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Feb 15 02:10:29 2013 +0000"
      },
      "message": "Merge \"Fix the stack protector death test.\""
    },
    {
      "commit": "7fd803cdfa873c01138dcbd614ec92418169b1c2",
      "tree": "7cf2172c26930b783a5e19106b35364c8964504d",
      "parents": [
        "0a2cb815974ea96af664fa966079966a08916722"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Feb 14 16:33:52 2013 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Feb 14 16:35:58 2013 -0800"
      },
      "message": "Fix the stack protector death test.\n\nNow __stack_chk_fail calls abort(3) directly, we terminate with\nSIGSEGV rather than SIGABRT. (Because of the workaround for the\ndebuggerd lossage in the abort(3) implementation, which was the\nmotivation for switching __stack_chk_fail over to abort(3).)\n\nAlso clarify the comment on the weird pthread death test, so it\ndoesn\u0027t get copied and pasted onto real death tests.\n\nChange-Id: Ie832eaded61359c99e7a10db65e28f35e8f63eed\n"
    },
    {
      "commit": "0a2cb815974ea96af664fa966079966a08916722",
      "tree": "51be004cff7354853be8efacfa3df0cd09070bb3",
      "parents": [
        "b128f49fd58beecc5287ddff6366a97e5aa2e468",
        "fb7eb5e07f43587c2bedf2aaa53b21fa002417bb"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Feb 14 23:50:13 2013 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Feb 14 23:50:13 2013 +0000"
      },
      "message": "Merge \"Simplify __stack_chk_fail, and fix it so we get debuggerd stack traces.\""
    },
    {
      "commit": "b128f49fd58beecc5287ddff6366a97e5aa2e468",
      "tree": "798c9a05a6e66e98031d14755e6c1135669b5e9e",
      "parents": [
        "c2d26ce7452e69b9492cd28b7c0271866798658b",
        "0276656daad362e84f615943568213f3f10db0cc"
      ],
      "author": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Thu Feb 14 22:49:28 2013 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Feb 14 22:49:28 2013 +0000"
      },
      "message": "Merge \"bionic: Add securebits.h\""
    },
    {
      "commit": "fb7eb5e07f43587c2bedf2aaa53b21fa002417bb",
      "tree": "2854e0357877216fe1d7e8722085a561b22b123b",
      "parents": [
        "c2d26ce7452e69b9492cd28b7c0271866798658b"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Feb 14 14:37:34 2013 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Feb 14 14:37:34 2013 -0800"
      },
      "message": "Simplify __stack_chk_fail, and fix it so we get debuggerd stack traces.\n\nBug: 2487269\nChange-Id: Iec5e470fc22cd9108404f634a9d4baa2c7b7f58f\n"
    },
    {
      "commit": "0276656daad362e84f615943568213f3f10db0cc",
      "tree": "798c9a05a6e66e98031d14755e6c1135669b5e9e",
      "parents": [
        "c2d26ce7452e69b9492cd28b7c0271866798658b"
      ],
      "author": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Thu Feb 14 14:03:37 2013 -0800"
      },
      "committer": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Thu Feb 14 14:03:37 2013 -0800"
      },
      "message": "bionic: Add securebits.h\n\nChange-Id: I2031796b9be117558b80246498b29736492cf269\n"
    },
    {
      "commit": "c2d26ce7452e69b9492cd28b7c0271866798658b",
      "tree": "47048a5d5610b0c5d3b6976a8cd9262dfef00066",
      "parents": [
        "fe33fc790a16d85ce4109a4575d6fdcd88d42023",
        "dc5ec07158079b39f758ed41eca5b937e52c3729"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Feb 14 19:17:32 2013 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Feb 14 19:17:33 2013 +0000"
      },
      "message": "Merge \"Turn on -Werror for ssp.cpp.\""
    },
    {
      "commit": "dc5ec07158079b39f758ed41eca5b937e52c3729",
      "tree": "47048a5d5610b0c5d3b6976a8cd9262dfef00066",
      "parents": [
        "fe33fc790a16d85ce4109a4575d6fdcd88d42023"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Feb 14 11:15:58 2013 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Feb 14 11:15:58 2013 -0800"
      },
      "message": "Turn on -Werror for ssp.cpp.\n\nlibc_bionic.a is already compiled -Werror, but this one file gets\ncompiled into its own library because it needs to be compiled with\n-fno-stack-protector.\n\nChange-Id: I273c535ab5c73ccaccbcf793fda1f788a2589abe\n"
    },
    {
      "commit": "fe33fc790a16d85ce4109a4575d6fdcd88d42023",
      "tree": "6febba1dc5464e2ab17e47a6473d314b50337cfb",
      "parents": [
        "6b97c7dc0376577276abbdacc52e5cc11cf8a7fd",
        "a261afb7c9de7c59dd078fa88f40b7818f79a098"
      ],
      "author": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Thu Feb 14 17:48:30 2013 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Feb 14 17:48:30 2013 +0000"
      },
      "message": "Merge \"fix compiler warning.\""
    },
    {
      "commit": "a261afb7c9de7c59dd078fa88f40b7818f79a098",
      "tree": "6febba1dc5464e2ab17e47a6473d314b50337cfb",
      "parents": [
        "6b97c7dc0376577276abbdacc52e5cc11cf8a7fd"
      ],
      "author": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Thu Feb 14 09:44:13 2013 -0800"
      },
      "committer": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Thu Feb 14 09:44:13 2013 -0800"
      },
      "message": "fix compiler warning.\n\nbionic/libc/bionic/ssp.cpp:41:31: warning: converting to non-pointer type \u0027uintptr_t {aka unsigned int}\u0027 from NULL [-Wconversion-null]\n\nChange-Id: Id154ed4a99520cca64ffd3dbe4d743db6e2da28a\n"
    }
  ],
  "next": "6b97c7dc0376577276abbdacc52e5cc11cf8a7fd"
}
