)]}'
{
  "log": [
    {
      "commit": "2ca10eb3f47ef3c2535c137853f7a63d10bb908b",
      "tree": "3684d1d5ef4791795b64620e97f952896c5a2011",
      "parents": [
        "02f41015a0933f146b886c62bb5b02c322ddf882"
      ],
      "author": {
        "name": "Aart Bik",
        "email": "ajcbik@google.com",
        "time": "Wed Nov 15 15:17:53 2017 -0800"
      },
      "committer": {
        "name": "Aart Bik",
        "email": "ajcbik@google.com",
        "time": "Mon Nov 20 10:38:26 2017 -0800"
      },
      "message": "Refactored optimization passes setup.\n\nRationale:\nRefactors the way we set up optimization passes\nin the compiler into a more centralized approach.\nThe refactoring also found some \"holes\" in the\nexisting mechanism (missing string lookup in\nthe debugging mechanism, or inablity to set\nalternative name for optimizations that may repeat).\n\nBug: 64538565\n\nTest: test-art-host test-art-target\nChange-Id: Ie5e0b70f67ac5acc706db91f64612dff0e561f83\n"
    },
    {
      "commit": "0e3151b70450ce3ed81543c4b22d99069713f979",
      "tree": "a9e1a8667aed657229a14a17b1a138d8d27bc4ea",
      "parents": [
        "6fde072609bd65ee1e8bd71dec9bc5899c99f9d7"
      ],
      "author": {
        "name": "Mingyao Yang",
        "email": "mingyao@google.com",
        "time": "Mon Oct 30 11:19:57 2017 -0700"
      },
      "committer": {
        "name": "Mingyao Yang",
        "email": "mingyao@google.com",
        "time": "Fri Nov 10 12:14:57 2017 -0800"
      },
      "message": "Improvement on array element aliasing analysis.\n\nMore robust array element aliasing analysis which covers aliasing\nbetween all heap locations.\n\nTest: run-test on host.\nTest: 530-checker-lse/load_store_analysis_test.cc cover array index aliasing.\nChange-Id: Ie0d1696bedb7811c6a4bc0786ef93ca724493de2\n"
    },
    {
      "commit": "b50b16a68ababbc9acab6102bf0bb63bd5083763",
      "tree": "f440f12f8ab3b14b8c4b02c978561f43356e61b0",
      "parents": [
        "2202d56061941b4fecbdb018d84bcefb05b6c683"
      ],
      "author": {
        "name": "xueliang.zhong",
        "email": "xueliang.zhong@linaro.org",
        "time": "Tue Sep 19 17:43:29 2017 +0100"
      },
      "committer": {
        "name": "Mingyao Yang",
        "email": "mingyao@google.com",
        "time": "Thu Nov 09 15:48:04 2017 -0800"
      },
      "message": "Support VecLoad and VecStore in LSA.\n\nTest: test-art-host\nTest: test-art-target\nTest: load_store_analysis_test\n\nChange-Id: I7d819061ec9ea12f86a926566c3845231fce6e26\n"
    },
    {
      "commit": "e0eb48353ddf0c1b79bfec2ba15c899a413c2c70",
      "tree": "71dfe896afa05c39d64373518d1e1e36cb8d8d43",
      "parents": [
        "3e6c13997373efac343a65740da0c4f6e77338b9"
      ],
      "author": {
        "name": "xueliang.zhong",
        "email": "xueliang.zhong@linaro.org",
        "time": "Mon Oct 30 13:43:14 2017 +0000"
      },
      "committer": {
        "name": "xueliang.zhong",
        "email": "xueliang.zhong@linaro.org",
        "time": "Thu Nov 02 16:17:17 2017 +0000"
      },
      "message": "Fix LSA hunt for original reference bug.\n\nFix a bug in LSA where it doesn\u0027t take IntermediateAddress\ninto account during hunting for original reference.\n\nIn following example, original reference i0 can be transformed\nby NullCheck, BoundType, IntermediateAddress, etc.\n  i0 NewArray\n  i1 HInstruction(i0)\n  i2 ArrayGet(i1, index)\n\nTest: test-art-host\nTest: test-art-target\nTest: load_store_analysis_test\nTest: 706-checker-scheduler\n\nChange-Id: I162dd8a86fcd31daee3517357c6af638c950b31b\n"
    },
    {
      "commit": "009d166842195711eca4d5768c59a8f7404e6875",
      "tree": "297cbed4084e905767bd979d54697693fd0c7262",
      "parents": [
        "52d52f5dc3e005829926e68c656fb27e8b008ae9"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Tue Oct 10 13:21:15 2017 +0100"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Thu Oct 12 10:43:29 2017 +0100"
      },
      "message": "Use ScopedArenaAllocator in BCE, DCE, LSE, ...\n\n... ReferenceTypePropagation and GraphChecker.\n\nDefine and use a new allocation kind for LoadStoreAnalysis.\n\nMemory needed to compile the two most expensive methods for\naosp_angler-userdebug boot image:\n  BatteryStats.dumpCheckinLocked() : 19.7MiB -\u003e 19.6MiB (-79KiB)\n  BatteryStats.dumpLocked(): 39.4MiB -\u003e 39.3MiB (-120KiB)\n\nTest: m test-art-host-gtest\nTest: testrunner.py --host --optimizing\nBug: 64312607\nChange-Id: Ib0cf074ac21ab67d8f8f2efabbdfb84cce9cae8e\n"
    },
    {
      "commit": "ca6fff898afcb62491458ae8bcd428bfb3043da1",
      "tree": "195a6b16d3a4b34acc2faf91ce56f448efb15e07",
      "parents": [
        "aa7273e56fbafc2692c8d20a31b50d2f4bdd2aa1"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Tue Oct 03 14:49:14 2017 +0100"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Fri Oct 06 17:53:50 2017 +0100"
      },
      "message": "ART: Use ScopedArenaAllocator for pass-local data.\n\nPasses using local ArenaAllocator were hiding their memory\nusage from the allocation counting, making it difficult to\ntrack down where memory was used. Using ScopedArenaAllocator\nreveals the memory usage.\n\nThis changes the HGraph constructor which requires a lot of\nchanges in tests. Refactor these tests to limit the amount\nof work needed the next time we change that constructor.\n\nTest: m test-art-host-gtest\nTest: testrunner.py --host\nTest: Build with kArenaAllocatorCountAllocations \u003d true.\nBug: 64312607\nChange-Id: I34939e4086b500d6e827ff3ef2211d1a421ac91a\n"
    },
    {
      "commit": "0ebe0d83138bba1996e9c8007969b5381d972b32",
      "tree": "a5ee66ebc5b587ade97e56ac8fc7d832fbbed4af",
      "parents": [
        "e1e347dace0ded83774999bb26c37527dcdb1d5a"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Thu Sep 21 22:50:39 2017 +0100"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Mon Sep 25 15:45:01 2017 +0100"
      },
      "message": "ART: Introduce compiler data type.\n\nReplace most uses of the runtime\u0027s Primitive in compiler\nwith a new class DataType. This prepares for introducing\nnew types, such as Uint8, that the runtime does not need\nto know about.\n\nTest: m test-art-host-gtest\nTest: testrunner.py --host\nBug: 23964345\nChange-Id: Iec2ad82454eec678fffcd8279a9746b90feb9b0c\n"
    },
    {
      "commit": "fef2884b18bcc01cc40edb2ae809d42b5a510c33",
      "tree": "8649630bb875a85aeb0086fafc25fcf43fbc703c",
      "parents": [
        "02cb397857c979dffae95e2db2678a72ec407cf0"
      ],
      "author": {
        "name": "Mingyao Yang",
        "email": "mingyao@google.com",
        "time": "Mon Aug 28 15:20:57 2017 -0700"
      },
      "committer": {
        "name": "Mingyao Yang",
        "email": "mingyao@google.com",
        "time": "Mon Aug 28 16:33:04 2017 -0700"
      },
      "message": "Simplify CreateReferenceInfoForReferenceType() in load-store-analysis\n\nWe now do CreateReferenceInfoForReferenceType() in VisitInstruction()\nwhich catches all cases where a reference value is created.\n\nTest: run-test on hosts\nChange-Id: I14ce59ba44558e3e800fc2543f4e190cbb2fd75e\n"
    },
    {
      "commit": "1f0eefc59d34fb5b6f088791cdd268a5ee194407",
      "tree": "d8511d10a121b52830f132824ef5b984223ae82b",
      "parents": [
        "52a3c989f96984f9bc9e02620694fc44708a1df2"
      ],
      "author": {
        "name": "Mingyao Yang",
        "email": "mingyao@google.com",
        "time": "Thu Aug 03 16:43:40 2017 -0700"
      },
      "committer": {
        "name": "Mingyao Yang",
        "email": "mingyao@google.com",
        "time": "Thu Aug 03 16:51:50 2017 -0700"
      },
      "message": "Add VisitNewArray() in lsa.\n\nWe missed one VisitNewArray() to create reference info right when a\nNewArray is seen. This may break pre-existence based aliasing analysis\nsince another reference may be wrongly treated as existing before the\nNewArray.\n\nAlso doing the same for a few more nodes that have reference values.\nThis is not correctness issue but can open up more opportunities for\ndetecting false aliases.\n\nTest: run-test on host.\nBug: 64018485\nChange-Id: I11f7857ab6b933448e7ba9ab6451d77dfc5c61a7\n"
    },
    {
      "commit": "016c0f165dc6872d22c12c239d19b094983519f1",
      "tree": "bef8e9912412d02b7aa3913f2750147835454b2e",
      "parents": [
        "d1c983a5bc3ae50eab3af405ae8a415e1f36f532"
      ],
      "author": {
        "name": "xueliang.zhong",
        "email": "xueliang.zhong@linaro.org",
        "time": "Fri May 12 18:16:31 2017 +0100"
      },
      "committer": {
        "name": "xueliang.zhong",
        "email": "xueliang.zhong@linaro.org",
        "time": "Mon Jun 26 11:30:39 2017 +0100"
      },
      "message": "Improve array index analysis in LSA.\n\nThis CL improves analysis on array index in load store analysis.\n\nTest: m test-art-host\nTest: m test-art-target\nTest: m test-art-host-gtest-load_store_analysis_test\n\nChange-Id: Id5e5aa8b396c68e082db95809659494107985fa2\n"
    },
    {
      "commit": "c239a2bb9474a1266c4882638fdb19056370e16d",
      "tree": "57fc8b0ba198cc6a6db65cbf48a600c38d269890",
      "parents": [
        "80dd30abe3fac52f6de4aec0543918d360f7d08a"
      ],
      "author": {
        "name": "xueliang.zhong",
        "email": "xueliang.zhong@linaro.org",
        "time": "Thu Apr 27 15:31:37 2017 +0100"
      },
      "committer": {
        "name": "xueliang.zhong",
        "email": "xueliang.zhong@linaro.org",
        "time": "Fri May 19 17:17:06 2017 +0100"
      },
      "message": "Create load store analysis pass\n\nThis CL separates load store analysis from LSE pass.\n\nThe load and store analysis in LSE pass records information\nabout heap memory accesses for arrays and fields.\nSuch information can also be used in the other optimizations like\ninstruction scheduling pass which can eliminate side-effect\ndependencies between memory accesses to different locations.\n\nTest: m test-art-host\nTest: m test-art-target\nTest: m test-art-host-gtest-load_store_analysis_test\nTest: 530-checker-lse\n\nChange-Id: I353a2b9a03b19bfa0e7ef07716d60bd4254c7ea7\n"
    }
  ]
}
