)]}'
{
  "log": [
    {
      "commit": "2ffb703bf431d74326c88266b4ddaf225eb3c6ad",
      "tree": "0552c3c76a42b18f9e7460d501fb71a6dc2e7f33",
      "parents": [
        "c4b6f3116f15c8e4fdf2e4f604ababdee12d8923"
      ],
      "author": {
        "name": "Igor Murashkin",
        "email": "iam@google.com",
        "time": "Wed Nov 08 13:35:21 2017 -0800"
      },
      "committer": {
        "name": "Igor Murashkin",
        "email": "iam@google.com",
        "time": "Wed Nov 08 15:15:52 2017 -0800"
      },
      "message": "cpplint: Cleanup errors\n\nCleanup errors from upstream cpplint in preparation\nfor moving art\u0027s cpplint fork to upstream tip-of-tree cpplint.\n\nTest: cd art \u0026\u0026 mm\nBug: 68951293\nChange-Id: I15faed4594cbcb8399850f8bdee39d42c0c5b956\n"
    },
    {
      "commit": "0c18338ebae6b3597c882887f8354b64abb5e90f",
      "tree": "fde8624a51b99ef7338784c863a9edf55dc2d08b",
      "parents": [
        "10d39085d5e064ae0afdc898eb32741a660c4b9d"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Thu Jul 13 22:26:24 2017 -0700"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Tue Jul 18 00:09:01 2017 -0700"
      },
      "message": "ART: Replace or remove some ObjectCallback Walk functions\n\nReplace with visitor functions in RegionSpace and SpaceBitmap. Remove\nold ObjectCallback version in HeapBitmap. Fix up users. Move some\nthread-safety annotations.\n\nMove ObjectCallback definition to the only remaining user (ModUnionTable).\n\nTest: m\nChange-Id: I10307aeacad0c60d21fbade2081ec040d6a6ac4c\n"
    },
    {
      "commit": "057d977aed600843dd4a617dca7098555d79110b",
      "tree": "1af506ef9e3ae36d44c355b0baa49b362d976f83",
      "parents": [
        "6a669aac63ffc17b5e903aa4a1f285fe338eadcf"
      ],
      "author": {
        "name": "Hiroshi Yamauchi",
        "email": "yamauchi@google.com",
        "time": "Fri Feb 17 15:33:23 2017 -0800"
      },
      "committer": {
        "name": "Hiroshi Yamauchi",
        "email": "yamauchi@google.com",
        "time": "Tue Feb 21 13:50:11 2017 -0800"
      },
      "message": "Always mark reference referents in transaction mode.\n\nFix a to-space invariant check failure in EnqueueFinalizerReferences.\n\nReference processing can be a problem and useless during transaction\nbecause it\u0027s not easy to roll back what reference processing does and\nthere\u0027s no daemon threads running (in the unstarted runtime). To avoid\nissues, always mark reference referents.\n\nAdd a do_atomic_update parameter to MarkHeapReference.\n\nBug: 35417063\nTest: test-art-host with CC/CMS/SS.\nChange-Id: If32eba8fca19ef86e5d13f7925d179c8aecb9e27\n"
    },
    {
      "commit": "97509954404d031594b2ecbda607314d169d512e",
      "tree": "bb5371ba90d52e2f561b1dc6959584857cb84683",
      "parents": [
        "c6f3439b67962584cfb764133e192c3317f0e1fc"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Mon Jul 13 14:35:43 2015 -0700"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Tue Jul 14 16:45:27 2015 -0700"
      },
      "message": "Clean up GC callbacks to be virtual methods\n\nChange-Id: Ia08034a4e5931c4fcb329c3bd3c4b1f301135735\n"
    },
    {
      "commit": "3cf225386e8129dcbe32b289279ecb87ec255318",
      "tree": "53690ffa8c39d650bbb95a974e2ea777ef689320",
      "parents": [
        "a51df8a59f2be2c797a98fb60c6eca9b049412bf"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Thu Jul 09 15:15:09 2015 -0700"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Thu Jul 09 16:27:43 2015 -0700"
      },
      "message": "Clean up some includes\n\nChange-Id: Ia03a3b54b235df38d5cfe096fef1aebe2b80eb29\n"
    },
    {
      "commit": "2cebb24bfc3247d3e9be138a3350106737455918",
      "tree": "d04d27d21b3c7733d784e303f01f873bb99e7770",
      "parents": [
        "1f02f1a7b3073b8fef07770a67fbf94afad317f0"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Tue Apr 21 16:50:40 2015 -0700"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Wed Apr 22 12:44:27 2015 -0700"
      },
      "message": "Replace NULL with nullptr\n\nAlso fixed some lines that were too long, and a few other minor\ndetails.\n\nChange-Id: I6efba5fb6e03eb5d0a300fddb2a75bf8e2f175cb\n"
    },
    {
      "commit": "e34fa1df67fbe0173b4ea9abddcc3ae3d0537037",
      "tree": "a5148f079b5671a95f60910c41981ebf91db3a02",
      "parents": [
        "9f06b1946ae3ef1d2fd75bbf7f0a288bc611fe58"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Wed Jan 14 14:55:47 2015 -0800"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Thu Jan 15 12:23:28 2015 -0800"
      },
      "message": "Print more info in MarkSweep::VerifyRoot\n\nRefactored old root callback to use a new class called RootInfo.\nRootInfo contains all the relevant info related to the root\nassociated with the callback. The MarkSweep::VerifyRoot function\nnow uses this info to print the StackVisitor\u0027s described location\nif the GC root is of the type kRootJavaFrame.\n\nSome other cleanup.\n\nExample output:\nE/art     (12167): Tried to mark 0x123 not contained by any spaces\nE/art     (12167): Attempting see if it\u0027s a bad root\nE/art     (12167): Found invalid root: 0x123 with type RootJavaFrame\nE/art     (12167): Location\u003dVisiting method\n\u0027void java.lang.Runtime.gc()\u0027 at dex PC 0xffffffff (native PC 0x0)\nvreg\u003d0\n\n(cherry picked from commit 12f7423a2bb4bfab76700d84eb6d4338d211983a)\n\nBug: 18588862\nChange-Id: Ic5a2781f704e931265ffb3621c2eab4b2e25f60f\n"
    },
    {
      "commit": "4c13a3ff475f206c4d0a86ee2595c45392fd942f",
      "tree": "5a96dff1dd5952aa70c2f25de46ea89d93e9225b",
      "parents": [
        "524e5e3815d2b16ee77beda9976b7ec3aa54aba6"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Mon Jul 14 14:57:16 2014 -0700"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Wed Jul 16 12:34:43 2014 -0700"
      },
      "message": "Disable adding main and non moving spaces to immune region in GSS\n\nDisabled adding the main and non moving space to the immune region.\nThis will enable us to recycle bump pointer spaces for malloc space\n-\u003e malloc space compaction as well as collector transitions.\n\nAlso added logic for falling back to the non moving space, we may\ncopy objects there.\n\nRefactored mod union table logic into MarkReachableObjects.\n\nNo measurable performance benefit or regression.\n\nBug: 14059466\nBug: 16291259\n\nChange-Id: If663d9fdbde943b988173b7f6ac844e5f78a0327\n"
    },
    {
      "commit": "98d1cc8033251c93786e2fa8c59a2e555a9493be",
      "tree": "f0a76b8fff060ee484af09028da65a8339d57057",
      "parents": [
        "aebf3cda094f34cf846d19a7724bdc8005267c95"
      ],
      "author": {
        "name": "Mingyao Yang",
        "email": "mingyao@google.com",
        "time": "Thu May 15 17:02:16 2014 -0700"
      },
      "committer": {
        "name": "Ian Rogers",
        "email": "irogers@google.com",
        "time": "Fri Jul 11 17:17:10 2014 -0700"
      },
      "message": "Improve performance of invokevirtual/invokeinterface with embedded imt/vtable\n\nAdd an embedded version of imt/vtable into class object. Both tables start at\nfixed offset within class object so method/entry point can be loaded directly\nfrom class object for invokeinterface/invokevirtual.\n\nBug: 8142917\nChange-Id: I4240d58cfbe9250107c95c0708c036854c455968\n"
    },
    {
      "commit": "308351ada0008b0cbe1a5afc31c302c975554ee4",
      "tree": "1447c36df5616515d6e7ac35c185721d3c829c4b",
      "parents": [
        "97ed29f800c56a06fd6989e0883e4c97bedd2453"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Sun Jun 15 12:39:02 2014 -0700"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Mon Jun 16 14:01:52 2014 -0700"
      },
      "message": "Change reference processing to use heap references.\n\nRemoves several SetReferents for updating moved referents. Cleaned\nup other aspects of the code.\n\nChange-Id: Ibcb4d713fadea617efee7e936352ddf77ff4c370\n"
    },
    {
      "commit": "8ab7e78be6835d63a2cee9f234334ed8fb409781",
      "tree": "269a90e5efe2af987ff662062904807c3d3926da",
      "parents": [
        "fd1264475562006c93b651d33e0a6266e8093ebe"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Mon May 19 16:55:27 2014 -0700"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Tue May 20 15:15:05 2014 -0700"
      },
      "message": "Improve heap verification for invalid roots.\n\nThe new root verification prints the root type and owner thread id as\nwell as the type of the object.\n\nAlso a bit of work for planned multi-threaded verification.\n\nBug: 14289301\n\nChange-Id: Ia73c517dc11ec6dd82f3d945604ee3836b3db536\n"
    },
    {
      "commit": "4db7449c0065971ec3a64ca04aeb64cfd2e802f0",
      "tree": "a75e8c888151388653cf81a1a35f008cb7e24528",
      "parents": [
        "ec3a2157d2a3e8bcfb34e9a2f2aa54254a8eec19"
      ],
      "author": {
        "name": "Hiroshi Yamauchi",
        "email": "yamauchi@google.com",
        "time": "Tue Apr 22 17:10:48 2014 -0700"
      },
      "committer": {
        "name": "Hiroshi Yamauchi",
        "email": "yamauchi@google.com",
        "time": "Mon Apr 28 12:42:43 2014 -0700"
      },
      "message": "Improve GSS reference processing.\n\nSupport the case where the reference object is in the free list space\nand the referent object is in the bump pointer space at a bump pointer\nspace collection.\n\nBug: 11650816\nChange-Id: If98b08edc9e37351c74ee07cb3f2d30c2b4d0056\n"
    },
    {
      "commit": "7bf9f190cd33a7e2f8584299eb889e9df66e0323",
      "tree": "1817368ef167a6340129d2a59b0c423f5c87d604",
      "parents": [
        "34df691e64a6491e7312a850a1ad255e4cf02702"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Fri Apr 04 11:09:41 2014 -0700"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Fri Apr 04 11:22:27 2014 -0700"
      },
      "message": "Improve invalid root dumping.\n\nThe invalid root dumping now attempts to print the root type.\n\nChange-Id: Ie821296d569f34909ba6e2705f5c347cd2143a3a\n"
    },
    {
      "commit": "407f702da4f867c074fc3c8c688b8f8c32279eff",
      "tree": "6a856b64f655f5aab1c538eab28e9c69f9010122",
      "parents": [
        "d201dec03334bcc25add81704981a78c19927d87"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Tue Feb 18 14:37:05 2014 -0800"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Mon Mar 24 16:35:21 2014 -0700"
      },
      "message": "Refactor object reference visiting logic.\n\nRefactored the reference visiting logic to be in mirror::Object\ninstead of MarkSweep.\n\nChange-Id: I773249478dc463d83b465e85c2402320488577c0\n"
    },
    {
      "commit": "3bb57c7b41bf5419fe895e7aa664d8d430205ba8",
      "tree": "55b28f12c3e5b9174499fe49acec195410880566",
      "parents": [
        "a3537fb03e092a82f08ceb670a2eafa703203465"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Tue Feb 18 11:38:45 2014 -0800"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Thu Feb 20 10:00:24 2014 -0800"
      },
      "message": "Change ProcessReferences to not use RecursiveMarkObject.\n\nCalling ProcessMarkStack in RecursiveMarkObject caused a lot of\noverhead due to timing logger splits. Changed the logic to be the\nsame as prior to the reference queue refactoring which involves\ncalling process mark stack after preserving soft references and\nenqueueing finalizer references.\n\nFinalizingGC longest pause is reduced by around 1/2 down to ~300ms.\nBenchmark score ~400000 -\u003e ~600000.\n\nAlso changed the timing logger splits in the GC to have (Paused) if\nthe split is a paused part of the GC.\n\nBug: 12129382\n\nChange-Id: I7476d4f23670b19d70738e2fd48e37ec2f57e9f4\n"
    },
    {
      "commit": "815873ecc312b1d231acce71e1a16f42cdaf09f2",
      "tree": "18ba2fa951775e60b240271bfe975e6e2cfc654c",
      "parents": [
        "2befd09cf4fe89a18a655f3e1dd310831bfa769f"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Thu Feb 13 18:02:13 2014 -0800"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Tue Feb 18 10:45:12 2014 -0800"
      },
      "message": "Change root visitor to use Object**.\n\nSimplifies code and improves the performance of root visiting since\nwe usually don\u0027t need to check to see if the object moved.\n\nChange-Id: Iba998f5a15ae1fa1b53ca5226dd2168a411196cf\n"
    },
    {
      "commit": "83c8ee000d525017ead8753fce6bc1020249b96a",
      "tree": "d5167ed15dee2629905ac3640b6ea0578d4ae312",
      "parents": [
        "7cba217ab0661d74deccbb97160cdf60b74d4ea3"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Tue Jan 28 14:50:23 2014 -0800"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Tue Feb 11 10:40:10 2014 -0800"
      },
      "message": "Add root types and thread id to root visiting.\n\nEnables us to pass the root type and thread id to hprof.\n\nBug: 12680863\nChange-Id: I6a0f1f9e3aa8f9b4033d695818ae7ca3460d67cb\n"
    }
  ]
}
