)]}'
{
  "log": [
    {
      "commit": "576a375bc2049d88998b43429a15df0a1011861f",
      "tree": "990f058beff9efa7cf6881e2d8247a241d09e9ac",
      "parents": [
        "dcc8feb6966779ef0c4739aa4fdb35bf4dc01713"
      ],
      "author": {
        "name": "Dimitry Ivanov",
        "email": "dimitry@google.com",
        "time": "Tue Aug 09 06:58:55 2016 -0700"
      },
      "committer": {
        "name": "Dimitry Ivanov",
        "email": "dimitry@google.com",
        "time": "Tue Aug 09 06:58:55 2016 -0700"
      },
      "message": "linker: fix mips build\n\nChange-Id: I88c5ba7f33825ae9b36992b32d30579ec4a66915\nTest: lunch aosp_mips-eng \u0026\u0026 mm\n"
    },
    {
      "commit": "769b33fadf45a039741f932672ac2c4f901d7d4a",
      "tree": "bf29858de176dd3bf144c547174eb99e1727e85a",
      "parents": [
        "c5e79567e0b02eb3a02d6b2820b901d4ba392e87"
      ],
      "author": {
        "name": "Dimitry Ivanov",
        "email": "dimitry@google.com",
        "time": "Thu Jul 21 11:33:40 2016 -0700"
      },
      "committer": {
        "name": "Dimitry Ivanov",
        "email": "dimitry@google.com",
        "time": "Mon Aug 01 19:47:27 2016 +0000"
      },
      "message": "Sync linker with internal branch\n\nThis change includes dlwarning implementation and\nthe compatibility greylist for apps targeting pre-N.\n\nChange-Id: Ibf02a07cc58cbbb1a5aef4ac34558c5d43e4305f\nTest: Run bionic-unit-tests --gtest_filter\u003ddl*:Dl*\n"
    },
    {
      "commit": "2ee458830824c66f5713a6982e6beae8f8a1dc37",
      "tree": "9de170bf66937e24f4ef480a8ac23992c01480ef",
      "parents": [
        "6a20add8136864b858955f6721fd3c0665f99036"
      ],
      "author": {
        "name": "Goran Jakovljevic",
        "email": "Goran.Jakovljevic@imgtec.com",
        "time": "Fri Mar 11 16:22:08 2016 +0000"
      },
      "committer": {
        "name": "Goran Jakovljevic",
        "email": "Goran.Jakovljevic@imgtec.com",
        "time": "Fri Mar 11 17:33:09 2016 +0100"
      },
      "message": "Revert \"[MIPS] Link .dex or .oat code lacking .MIPS.abiflags segment\"\n\nThis reverts commit 0acb15ead6a554a6879b29fd90726b9ea8fd98c4.\n\nThis workaround is not needed any more. Now ART generates\n.MIPS.abiflags segments in its files. This is done in\nIe06a3c4e384a23a77db7d04a2508edbf3a6d3933.\n\nChange-Id: I746289eed443a0fdbe8fd0b1199bcc5cd4d024e1\n"
    },
    {
      "commit": "05d08e9716b5974d6ed08973f44930804890b902",
      "tree": "e3a33c02c6a918c04d30d93a315bf5b90b6cb512",
      "parents": [
        "d2be3802582e69bfaf1a8ab02849bc44c4fa2ce6"
      ],
      "author": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Thu Feb 04 13:16:38 2016 -0800"
      },
      "committer": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Fri Feb 05 16:03:55 2016 -0800"
      },
      "message": "Updated to v4.4.1 kernel headers.\n\nSmall modifications needed to allow compilation with the new headers:\n\n- Manually modify bionic/libc/kernel/uapi/asm-mips/asm/siginfo.h to\n  remove the uapi from the include.\n- PR_XXX defines are now available for mips, so remove the definition\n  from linker_mips.cpp.\n\nBug: 23789423\nChange-Id: I6dc8a03b012426d3a937db15cb24d3a50fab5a8c\n"
    },
    {
      "commit": "dccc40883ace81d203b3ed66944847e55f45da6f",
      "tree": "d5789dd83347d04268924c6fc5f8b2ea80fbf81e",
      "parents": [
        "cbd0a15be881abb8ce1feb5b389da2f517a9a4c6"
      ],
      "author": {
        "name": "Douglas Leung",
        "email": "douglas.leung@imgtec.com",
        "time": "Thu Sep 17 15:16:53 2015 -0700"
      },
      "committer": {
        "name": "Douglas Leung",
        "email": "douglas.leung@imgtec.com",
        "time": "Thu Sep 17 15:17:06 2015 -0700"
      },
      "message": "Fix mips FP abi bug in the linker.\n\nChange-Id: I1ffab938eb06f9dc0963ee15bc10eca216618792\n"
    },
    {
      "commit": "0acb15ead6a554a6879b29fd90726b9ea8fd98c4",
      "tree": "46f69f98361fe7d345e562cc727f13e4068c2284",
      "parents": [
        "807f27f9548077f114dc009f60764fb0241a2620"
      ],
      "author": {
        "name": "Duane Sand",
        "email": "duane.sand@imgtec.com",
        "time": "Tue Jul 28 14:04:29 2015 -0700"
      },
      "committer": {
        "name": "Duane Sand",
        "email": "duane.sand@imgtec.com",
        "time": "Fri Jul 31 13:55:42 2015 -0700"
      },
      "message": "[MIPS] Link .dex or .oat code lacking .MIPS.abiflags segment\n\nThis corrects an issue with mips32 Art on mips64r6 Android, where\nJava ran slowly due to unintended use of kernel-trap emulation of\nsingle-precision floating point registers. This also regressed all\nArt tests due to an extra logcat line\n    WARNING: linker: Using FRE\u003d1 mode to run \"...\"\n\nWhen targeting mips32r6, Art generates modeless or FR\u003d1 floating point\ncode, same as Android\u0027s own native mips32r6 modules. So the trapping was\nunneeded. Linker was confusing Art-generated modules with those from\nold NDK compilers, which do need that trapping mode.\n\nThis linker filename check may become unnecessary, if Art learns how to\ngenerate .MIPS.abiflags segments in its generated elf-like codefiles.\n\nChange-Id: I18069d1234960c680c5df739514da09015a7fdb6\n"
    },
    {
      "commit": "bc425c73e07dc150d1dcb64889ca7d379dace410",
      "tree": "73d8edd1bc1627b8cd3a6a307c86f4958aaf56e8",
      "parents": [
        "c666838ad6e578f429783a82f9b9a5bbddd3a9a8"
      ],
      "author": {
        "name": "Duane Sand",
        "email": "duane.sand@imgtec.com",
        "time": "Mon Jun 01 16:29:14 2015 -0700"
      },
      "committer": {
        "name": "Dmitriy Ivanov",
        "email": "dimitry@google.com",
        "time": "Wed Jun 24 16:43:19 2015 -0700"
      },
      "message": "[MIPS] Support FR\u003d0 emulation on FR\u003d1 64-bit FP registers\n\nEnables running of older MIPS NDK-built apps on mips64r6.\n\nWorks with kernel supporting FRE emulation, and old kernels.\n\nChange-Id: If5e392ed89e9910cd1ccd30e0fd5c4a5acea2c7d\n"
    },
    {
      "commit": "cc838904642c60f29e915ab3eb6b736782b32923",
      "tree": "07d47b6970ab90a52ad2e2d86c6d3880fd5d4660",
      "parents": [
        "d02ec08427b006e80191ce60690ce48a788fb832"
      ],
      "author": {
        "name": "Dimitry Ivanov",
        "email": "dimitry@google.com",
        "time": "Wed Jun 24 20:43:33 2015 +0000"
      },
      "committer": {
        "name": "Dimitry Ivanov",
        "email": "dimitry@google.com",
        "time": "Wed Jun 24 20:43:33 2015 +0000"
      },
      "message": "Revert \"[MIPS] Support FR\u003d0 emulation on FR\u003d1 64-bit FP registers\"\n\nThis reverts commit d02ec08427b006e80191ce60690ce48a788fb832.\n\nBug: http://b/22045439\nChange-Id: Iaf10ff1e2948083cce0098f29d5b87b32bfae1b7\n"
    },
    {
      "commit": "d02ec08427b006e80191ce60690ce48a788fb832",
      "tree": "57600817094afe772b68efa3ecbef1f0191e301b",
      "parents": [
        "6cc98af72b0c48c58b2ab5fdb5f7abb842175299"
      ],
      "author": {
        "name": "Duane Sand",
        "email": "duane.sand@imgtec.com",
        "time": "Mon Jun 01 16:29:14 2015 -0700"
      },
      "committer": {
        "name": "Dmitriy Ivanov",
        "email": "dimitry@google.com",
        "time": "Sun Jun 21 11:36:57 2015 -0700"
      },
      "message": "[MIPS] Support FR\u003d0 emulation on FR\u003d1 64-bit FP registers\n\nEnables running of older MIPS NDK-built apps on mips64r6.\n\nWorks with kernel supporting FRE emulation, and old kernels.\n\nChange-Id: I13923fe62cd83ad1d337f13a50f2eda2dfdd906f\n"
    },
    {
      "commit": "dbe26fdcc7de503539837467299b96c4a93084cc",
      "tree": "09944070d08e984face62ae29fb4f019b174e6e4",
      "parents": [
        "2c3d8d8b2c77a2439e324f8ef2369589024f33ed"
      ],
      "author": {
        "name": "Dmitriy Ivanov",
        "email": "dimitry@google.com",
        "time": "Mon May 04 19:30:49 2015 -0700"
      },
      "committer": {
        "name": "Dmitriy Ivanov",
        "email": "dimitry@google.com",
        "time": "Mon May 04 19:30:49 2015 -0700"
      },
      "message": "Fix protected symbol lookups for mips\n\nBug: http://b/20694161\nChange-Id: I5cc58034f9776e1db9cddc34abe48ef85f6048f4\n"
    },
    {
      "commit": "f39cb63603da949325b4d186e870d0c3de01eb30",
      "tree": "39d151cabf9ca4702f1666101b6c25a5a954b931",
      "parents": [
        "7e4bbbae4a1e2034e6fa47ac2b0e1e7ca970acf0"
      ],
      "author": {
        "name": "Dmitriy Ivanov",
        "email": "dimitry@google.com",
        "time": "Thu Apr 30 20:17:03 2015 -0700"
      },
      "committer": {
        "name": "Dmitriy Ivanov",
        "email": "dimitry@google.com",
        "time": "Thu Apr 30 20:17:03 2015 -0700"
      },
      "message": "Lookup version info when relocating mips got\n\nBug: http://b/20693971\nBug: http://b/20139821\nChange-Id: I28bd3bc44dafe048761b2c598facfe20320128c4\n"
    },
    {
      "commit": "7e4bbbae4a1e2034e6fa47ac2b0e1e7ca970acf0",
      "tree": "be63e276f1c60b88ed06811497de551c52e9eb03",
      "parents": [
        "788ea593ec27f4bb8600c88d5717a914fe79ed8b"
      ],
      "author": {
        "name": "Dmitriy Ivanov",
        "email": "dimitry@google.com",
        "time": "Thu Apr 30 19:49:19 2015 -0700"
      },
      "committer": {
        "name": "Dmitriy Ivanov",
        "email": "dimitry@google.com",
        "time": "Thu Apr 30 19:49:19 2015 -0700"
      },
      "message": "Refactoring: move VersionTracker to link_image\n\n  Use one instance of VersionTracker per link (instead of 2).\n\nChange-Id: I6860013df65f5969975c82ebdae8bd90a82e0a82\n"
    },
    {
      "commit": "31b408d2c2e070c35838e7859ca4a4e5eb0c45fc",
      "tree": "a79f2ff20acf3747392d9e330d70833d2be1d119",
      "parents": [
        "6a4c9d9bf9e3d2679394850ab49a42f368e12c2d"
      ],
      "author": {
        "name": "Dmitriy Ivanov",
        "email": "dimitry@google.com",
        "time": "Thu Apr 30 16:11:48 2015 -0700"
      },
      "committer": {
        "name": "Dmitriy Ivanov",
        "email": "dimitry@google.com",
        "time": "Thu Apr 30 16:12:32 2015 -0700"
      },
      "message": "Refactoring: extract lookup_version_info(..)\n\nChange-Id: I47f9c21a1738dc520fd83281c8227dc3a7e79650\n"
    },
    {
      "commit": "0373d4f47342e0a6f146af9023a146b0b707442b",
      "tree": "bc649cbeb6bdd3d44fb0d3eb0a8cfc55ffed4646",
      "parents": [
        "fa6f6496078426fe332a5ae9bba009c98dfabc94"
      ],
      "author": {
        "name": "Dmitriy Ivanov",
        "email": "dimitry@google.com",
        "time": "Wed Apr 29 14:41:06 2015 -0700"
      },
      "committer": {
        "name": "Dmitriy Ivanov",
        "email": "dimitry@google.com",
        "time": "Wed Apr 29 14:41:06 2015 -0700"
      },
      "message": "Fix mips relocation to use load_bias as intended\n\nBug: http://b/20658994\nChange-Id: I5a15605fe34db359e26d563e13841ae993083c4a\n"
    },
    {
      "commit": "18870d350c29c83bdcecbe5cf3715b2c800275f7",
      "tree": "8f41a50086a97f88be5bf98d2a2806a26d854d5a",
      "parents": [
        "9ceec1a75dfcc8b032aa3a974b0cfc3bff5a306e"
      ],
      "author": {
        "name": "Dmitriy Ivanov",
        "email": "dimitry@google.com",
        "time": "Wed Apr 22 13:10:04 2015 -0700"
      },
      "committer": {
        "name": "Dmitriy Ivanov",
        "email": "dimitry@google.com",
        "time": "Wed Apr 22 13:29:42 2015 -0700"
      },
      "message": "Always use signed leb128 decoder\n\n  Relocation packer no longer encodes relocation tables\n  using unsigned leb128: https://android-review.googlesource.com/147745\n\nBug: http://b/18051137\nChange-Id: I620b7188e5f3dd9d5123431aa1fc7feca76be607\n"
    },
    {
      "commit": "2a815361448d01b0f4e575f507ce31913214c536",
      "tree": "82b941e908b54d6d48ef04495ff2808aa2823ae1",
      "parents": [
        "c6ccdfaf1ff4665ec96962863054263510d73e7b"
      ],
      "author": {
        "name": "Dmitriy Ivanov",
        "email": "dimitry@google.com",
        "time": "Thu Apr 09 13:42:33 2015 -0700"
      },
      "committer": {
        "name": "Dmitriy Ivanov",
        "email": "dimitry@google.com",
        "time": "Thu Apr 16 17:57:30 2015 -0700"
      },
      "message": "Support symbol versioning\n\nBug: http://b/20139821\nChange-Id: I64122a0fb0960c20b2ce614161b7ab048456b681\n"
    },
    {
      "commit": "aae859cc3ca127d890e853cbf12b731e05624a22",
      "tree": "159e996dd6756b99fe70371e99a69ec6040e851b",
      "parents": [
        "e686df8d839216460f02cf7db6c4e26a13e49afd"
      ],
      "author": {
        "name": "Dmitriy Ivanov",
        "email": "dimitry@google.com",
        "time": "Tue Mar 31 11:14:03 2015 -0700"
      },
      "committer": {
        "name": "Dimitry Ivanov",
        "email": "dimitry@google.com",
        "time": "Mon Apr 06 21:15:43 2015 +0000"
      },
      "message": "Add realpath for soinfo\n\n  This change adds realpath to soinfo and\n  extends limit on filenames from 128 to PATH_MAX.\n\n  It also removes soinfo::name field, linker uses\n  dt_soname instead.\n\nBug: http://b/19818481\nBug: https://code.google.com/p/android/issues/detail?id\u003d80336\nChange-Id: I9cff4cb5bda3ee2bc74e1bbded9594ea7fbe2a08\n"
    },
    {
      "commit": "20d89cb5b0d5eb7546a8fe8da44bbd91564dbdda",
      "tree": "0dad262c1284ec393f11eae840e7603905a2204c",
      "parents": [
        "16c77212792808b9e4d8229e64c5b42f4327b6dc"
      ],
      "author": {
        "name": "Dmitriy Ivanov",
        "email": "dimitry@google.com",
        "time": "Mon Mar 30 18:43:38 2015 -0700"
      },
      "committer": {
        "name": "Dmitriy Ivanov",
        "email": "dimitry@google.com",
        "time": "Tue Mar 31 11:49:25 2015 -0700"
      },
      "message": "Fix long lines and replace macros with functions.\n\nChange-Id: I4e1cab488d5b2c8e4289da617350a86e72a4ba12\n"
    },
    {
      "commit": "18a6956b76a071097fc658c5fe13ef010e31864a",
      "tree": "9a5213aeddb62ffcf0002986808b6699c5988e9e",
      "parents": [
        "fa26eee77685e8dee7986e62a7d263003f5bd25a"
      ],
      "author": {
        "name": "Dmitriy Ivanov",
        "email": "dimitry@google.com",
        "time": "Wed Feb 04 16:05:30 2015 -0800"
      },
      "committer": {
        "name": "Dmitriy Ivanov",
        "email": "dimitry@google.com",
        "time": "Fri Mar 06 17:12:47 2015 -0800"
      },
      "message": "Add support for packed relocations.\n\nChange-Id: I796a4ce86d3fccb8361c19889419c96147ee3c9f\n"
    },
    {
      "commit": "fa26eee77685e8dee7986e62a7d263003f5bd25a",
      "tree": "62213ea06678718120ad1ff2e98c67e8a48c3198",
      "parents": [
        "f8ff6b103bde3433d6f7dbf762fc7bf657d7de5f"
      ],
      "author": {
        "name": "Dmitriy Ivanov",
        "email": "dimitry@google.com",
        "time": "Tue Feb 03 16:06:47 2015 -0800"
      },
      "committer": {
        "name": "Dmitriy Ivanov",
        "email": "dimitry@google.com",
        "time": "Fri Mar 06 13:01:08 2015 -0800"
      },
      "message": "Refactoring: introduce reloc_iterators\n\n Replace rel/rela array with reloc_iterators.\n\nChange-Id: I6165d062e0390b6bc60da2e8279aabbedf828ec9\n"
    },
    {
      "commit": "db3078d97b57224c2c845cefbd46adc77fadfb37",
      "tree": "661223283754d76c74e444f217f46c679d266ad9",
      "parents": [
        "385c07a74ca5438a6f7fe0ada2b461f880563073"
      ],
      "author": {
        "name": "Nikola Veljkovic",
        "email": "Nikola.Veljkovic@imgtec.com",
        "time": "Wed Jan 28 16:18:52 2015 +0100"
      },
      "committer": {
        "name": "Nikola Veljkovic",
        "email": "Nikola.Veljkovic@imgtec.com",
        "time": "Wed Jan 28 16:19:18 2015 +0100"
      },
      "message": "Fix mips64 build. Replace explicit cast with static_cast\n\nChange-Id: Ib08fbe8bb832884a3eb33904fe4d490759116cb2\n"
    },
    {
      "commit": "114ff69f1753c7fe4d749f8fb0c082b80e0d43f4",
      "tree": "63fb91599444f45664f9e656294699609481d4fb",
      "parents": [
        "ffa2c9edb5b1cf295bceffc7876a68747b6fa259"
      ],
      "author": {
        "name": "Dmitriy Ivanov",
        "email": "dimitry@google.com",
        "time": "Wed Jan 14 11:36:38 2015 -0800"
      },
      "committer": {
        "name": "Dmitriy Ivanov",
        "email": "dimitry@google.com",
        "time": "Wed Jan 14 18:03:19 2015 -0800"
      },
      "message": "Refactoring: move mips reloc to separate method\n\nChange-Id: I712614853e3f0e515f5c2bdd8f0aaa5feeae8e55\n"
    }
  ]
}
