)]}'
{
  "log": [
    {
      "commit": "b765a3f7f7b7c7efaab5fb331796b53439dbe04c",
      "tree": "feba405a8f483f2dcf14ceab0528848f24468e91",
      "parents": [
        "487ad46b7ee79eb4a03d3560072c309280069c04"
      ],
      "author": {
        "name": "Aart Bik",
        "email": "ajcbik@google.com",
        "time": "Thu May 10 14:47:48 2018 -0700"
      },
      "committer": {
        "name": "Aart Bik",
        "email": "ajcbik@google.com",
        "time": "Tue May 15 13:23:29 2018 -0700"
      },
      "message": "Refactoring LSE/LSA: introduce heap location type\n\nRationale:\nThis refactoring introduces data types to heap locations.\nThis will allow better type disambiguation in the future.\nAs a first showcase, it already removes rather error-prone\n\"exceptional\" code in LSE dealing with array types on null\nvalues. Furthermore, many LSA specific details started to \"leak\"\ninto clients, which is also error-prone. This refactoring moves\nsuch details back into just LSA, where it belongs.\n\nTest: test-art-host,target\n\nBug: b/77906240\n\nChange-Id: Id327bbe86dde451a942c9c5f9e83054c36241882\n"
    },
    {
      "commit": "213f857ab772e32baaaac378551e2ddf1e2c151c",
      "tree": "8c091e70ec1d1923bdf9d8bba400c4b69441aef3",
      "parents": [
        "ea7638349dd23dfdd6ee0c2e45a63faa653962e3"
      ],
      "author": {
        "name": "Alan Leung",
        "email": "acleung@google.com",
        "time": "Fri Sep 08 14:44:24 2017 -0700"
      },
      "committer": {
        "name": "Alan Leung",
        "email": "acleung@google.com",
        "time": "Mon Oct 16 23:59:02 2017 -0700"
      },
      "message": "Make checker-null-array-get less dexer sensitive.\n\nBug: 65168732\nTest: art/test/run-test ... 586-checker-null-array-get\nChange-Id: Icc4f9e899e494aa0db11a10e7570d496c256e356\n"
    },
    {
      "commit": "11ffec2462645e7fd3c1db602399920886834b7f",
      "tree": "184c234a1ad94f8019364868b43eb7f7b7e3aade",
      "parents": [
        "f8c81921ba6d0e0443c92368d1536dcbe3e4ce7d"
      ],
      "author": {
        "name": "Igor Murashkin",
        "email": "iam@google.com",
        "time": "Tue Jun 27 15:36:23 2017 -0700"
      },
      "committer": {
        "name": "Igor Murashkin",
        "email": "iam@google.com",
        "time": "Tue Jun 27 15:36:23 2017 -0700"
      },
      "message": "test: Modify 586-checker-null-array-get for javac/dx\n\nPreviously 1 of the methods were failing checker with javac/dx.\nMove their old bytecode to a smali file to retain testing of those\noptimizations.\n\nRewrite the checker tests in Main.java to use the javac/dx-generated\nbytecode.\n\nTest: art/test/run-test --64 --host --optimizing --build-with-javac-dx 586-checker-null-array-get\nBug: 62950048\nBug: 36902714\nChange-Id: Ib320509422a358e116c24bb1b33442c0cf09ba25\n"
    },
    {
      "commit": "6beced4c017826f7c449f12fac7fa42403657f2b",
      "tree": "f53614eeeaa92be9a7398e262d9440f59e3384a5",
      "parents": [
        "e89667815b9d0a1eacb91678fed2a7518bb07cc2"
      ],
      "author": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Tue Nov 15 15:51:31 2016 -0800"
      },
      "committer": {
        "name": "Mathieu Chartier",
        "email": "mathieuc@google.com",
        "time": "Wed Nov 16 10:41:40 2016 -0800"
      },
      "message": "Change iftable to never be null\n\nSimplifies code generation by removing a null check. The null case\nis rare.\n\nRitzperf code size: 13107624 -\u003e 13095336\n\nAlso addressed comments from previous CL.\n\nBug: 32577579\n\nTest: test-art-host, run ritzperf both with CC\n\nChange-Id: I2b31e800867112869d7f0643e16c08826296979e\n"
    },
    {
      "commit": "bb2c93b8d833db3b872fe7130712d73260c5503f",
      "tree": "deabb2a88a55deda1dd3d3bf9945ec64d806853a",
      "parents": [
        "ceeb3b73f84e8b11f362605007d382405d08d95c"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Wed May 04 14:00:12 2016 +0100"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Tue May 10 09:18:30 2016 +0100"
      },
      "message": "Relax the DCHECK in load store elimination.\n\nThe DCHECK was too strong, as we could come from a field or array\nget on null, instead of null directly.\n\nbug:27831001\n\n(cherry picked from commit 65fef30952bb92acec7ed36f7f431d93f7ce88b3)\n\nChange-Id: Ia3ba1235e95408d66349a02fc438df9c2cf9e255\n"
    },
    {
      "commit": "b1d91574f80a1d7944c1d32d6e368a8c7f004b4b",
      "tree": "7c5411ff6689ebae5271ab264d46440b0d5cca06",
      "parents": [
        "7c06aef061fa176331b77a88c1ff2c6ae401a5f0"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Fri Mar 18 16:25:38 2016 +0000"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Mon Mar 21 10:30:56 2016 +0000"
      },
      "message": "Call HuntForOriginalReference to get to the null.\n\nThe null constant might be hiding under a HBoundType\n(which we could clean up in instruction simplifier, but\nthat is orthogonal).\n\nbug:27683874\nChange-Id: Ide8ec5bcd439ec0fca5e54175ebeedc5a9f679a3\n"
    },
    {
      "commit": "0397163516fb882589c5be734439dedfe4d271fb",
      "tree": "2a9ffbf2cb65aa28e8ec5d298f97d81c16d2408f",
      "parents": [
        "0205b58a0d7a9ce5832393857c19c086c78996e9"
      ],
      "author": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Thu Mar 17 10:44:24 2016 +0000"
      },
      "committer": {
        "name": "Nicolas Geoffray",
        "email": "ngeoffray@google.com",
        "time": "Thu Mar 17 13:24:10 2016 +0000"
      },
      "message": "Fix load store elimination bug in the presence of null[i].\n\nDue to the dex specification, we can be in a state where\ntwo array get with the same dex register inputs are typed\ndifferently.\n\nbug:27683874\n\nChange-Id: Ia821fd32e86c306093372249e7686332a7584263\n"
    }
  ]
}
