)]}'
{
  "log": [
    {
      "commit": "22f058726d35dd8f40b3763649e61740b3d22535",
      "tree": "987dd5df7627c2c3e8c798089083cb797627daed",
      "parents": [
        "3dca4c04170bb4c7b26609e55f3f4966d46b681a"
      ],
      "author": {
        "name": "Aart Bik",
        "email": "ajcbik@google.com",
        "time": "Tue Oct 27 15:56:28 2015 -0700"
      },
      "committer": {
        "name": "Aart Bik",
        "email": "ajcbik@google.com",
        "time": "Wed Oct 28 13:57:14 2015 -0700"
      },
      "message": "Generate taken-test during trip-count analysis.\n\nRationale: for loops that may not be taken, this taken-test\n           can be used by clients of the induction variable\n           analysis to ensure trip-count evaluation is valid.\n\nChange-Id: Ia64749e2389b7224e69d6a49bb604b1964c11068\n"
    },
    {
      "commit": "a841bc3fb000a9cdbbb7b3cedf2cb7a11e2c82ce",
      "tree": "875da22fe58b8be37e556a790fa199678f67ed3c",
      "parents": [
        "25255512bae64fefc5cb76b1590e8e9c1dd42e82",
        "5233f93ee336b3581ccdb993ff6342c52fec34b0"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Wed Sep 30 17:46:01 2015 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Sep 30 17:46:01 2015 +0000"
      },
      "message": "Merge \"Optimizing: Tag even more arena allocations.\""
    },
    {
      "commit": "9401f5397128ddc8dc36de923dd5e6bd4e4b5be4",
      "tree": "4ff8052307da80baa89dfa80a446f48752c0e95c",
      "parents": [
        "931e26843bbb688eacfa67b40414c6b8f221a56a"
      ],
      "author": {
        "name": "Aart Bik",
        "email": "ajcbik@google.com",
        "time": "Mon Sep 28 16:25:56 2015 -0700"
      },
      "committer": {
        "name": "Aart Bik",
        "email": "ajcbik@google.com",
        "time": "Wed Sep 30 09:58:53 2015 -0700"
      },
      "message": "Implemented trip-count safety information.\n\nAs shown in the induction analysis presentation, trip-counts need to\ndeal with potential taken/not-taken situations (so that trip-count\nis either valid in the full loop or just in the loop-body proper)\nand potential finite/infinite situations (the latter can still be\nanalyzed but may need to run-time test later to guard against the\ninfinite conditions). This CL provides that information.\n\nChange-Id: I0445d8e836b80a3614af217ce3e39d766e77b986\n"
    },
    {
      "commit": "5233f93ee336b3581ccdb993ff6342c52fec34b0",
      "tree": "225dc0ab491263ef56362a8d0fe2926266bd5047",
      "parents": [
        "de8a3f4dce1e9ff0e3be16956b06bafc8cd4f397"
      ],
      "author": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Tue Sep 29 19:01:15 2015 +0100"
      },
      "committer": {
        "name": "Vladimir Marko",
        "email": "vmarko@google.com",
        "time": "Tue Sep 29 19:46:03 2015 +0100"
      },
      "message": "Optimizing: Tag even more arena allocations.\n\nTag previously \"Misc\" arena allocations with more specific\nallocation types. Move some native heap allocations to the\narena in BCE.\n\nBug: 23736311\nChange-Id: If8ef15a8b614dc3314bdfb35caa23862c9d4d25c\n"
    },
    {
      "commit": "f475bee067ae0f6dd2a022c823c642265f97b065",
      "tree": "a411acce47e6b60ef87bc2f873604aad1d31c318",
      "parents": [
        "15ed726eae70a479f3179de68a643ef30c777cbb"
      ],
      "author": {
        "name": "Aart Bik",
        "email": "ajcbik@google.com",
        "time": "Wed Sep 16 12:50:25 2015 -0700"
      },
      "committer": {
        "name": "Aart Bik",
        "email": "ajcbik@google.com",
        "time": "Wed Sep 23 16:20:53 2015 -0700"
      },
      "message": "Various improvements in finding induction variables.\n\nRationale:\n(1) Analyze multi-way phis (requested by Nicolas, Igor, and Mingyao).\n(2) Analyze trip count for restricted !\u003d loops\n(3) Added unit test for public API of range analysis (static methods\n    were already well-tested).\n\nChange-Id: I9285d22d3bb927f141204cc4697ea6fe5120994d\n"
    },
    {
      "commit": "d14c59564870c910bdc823081f0ed1101f599231",
      "tree": "36a831f8c786823129bebbf03a4ca48ff6ed3c23",
      "parents": [
        "e6576390f957c82c2aede438834d028066757368"
      ],
      "author": {
        "name": "Aart Bik",
        "email": "ajcbik@google.com",
        "time": "Tue Sep 08 15:25:15 2015 -0700"
      },
      "committer": {
        "name": "Aart Bik",
        "email": "ajcbik@google.com",
        "time": "Thu Sep 10 10:16:04 2015 -0700"
      },
      "message": "Induction variable range analysis.\n\nRationale: by computing an upper bound on the trip count of each\n           loop after induction var analysis has completed, a\n\t   simple range analysis yields lower and upper bounds on\n\t   all induced expressions in a loop; this analysis\n\t   plugs directly into BCE (follow-up CL).\n\nChange-Id: I46a3fe48721ca372547199b39a3498c47992597d\n"
    },
    {
      "commit": "471a2034171346dda4539b985b95aa6370531171",
      "tree": "9f04b5dd3169909953ac4e38c106287f12e0bbef",
      "parents": [
        "6b79454092582bea4a72872d04e4bc9f0a48a4b8"
      ],
      "author": {
        "name": "Aart Bik",
        "email": "ajcbik@google.com",
        "time": "Fri Sep 04 18:22:11 2015 -0700"
      },
      "committer": {
        "name": "Aart Bik",
        "email": "ajcbik@google.com",
        "time": "Mon Sep 07 10:35:55 2015 -0700"
      },
      "message": "Simplify loop invariant operations during induction analysis.\n\nRationale:\nSaves some memory for nodes that are not really required, and\nyields slightly more readable debugging strings.\n\nChange-Id: I95b64b48869699137b5d49e26eb20091e264de7a\n"
    },
    {
      "commit": "e609b7cf9996389e6e693f149489737436172a2c",
      "tree": "14f1c83ea83d1b9133272af1dc6f3ad314f1fef3",
      "parents": [
        "fb32aca04cc1b5f5e8325d79664882f25f253881"
      ],
      "author": {
        "name": "Aart Bik",
        "email": "ajcbik@google.com",
        "time": "Thu Aug 27 13:46:58 2015 -0700"
      },
      "committer": {
        "name": "Aart Bik",
        "email": "ajcbik@google.com",
        "time": "Fri Sep 04 17:03:39 2015 -0700"
      },
      "message": "Further development of induction variable analysis.\n\nVarious improvements:\n(1) Introduced period sequences.\n(2) Extended all transfer functions to deal with all cases;\n    also refactored these to read more compactly.\n(3) Improved debugging output for constants for readability.\n(4) Used direct pointer in mappings for clarify.\n(5) Several induction info \"constructors\" for readability.\n(6) Various other changes suggested in earlier code reviews.\n\nChange-Id: I9d5381f1676b63d30cea6f5e304d4b7bda7acb96\n"
    },
    {
      "commit": "30efb4e00c2a9aa318d44486b5eacaa7178d20ef",
      "tree": "90c4e84b5473def182fa443191ba8de80fa62d63",
      "parents": [
        "574d75597013cb12a961c0d4365d1618d8ef6977"
      ],
      "author": {
        "name": "Aart Bik",
        "email": "ajcbik@google.com",
        "time": "Thu Jul 30 12:14:31 2015 -0700"
      },
      "committer": {
        "name": "Aart Bik",
        "email": "ajcbik@google.com",
        "time": "Wed Aug 26 17:20:28 2015 +0000"
      },
      "message": "Induction variable analysis (with unit tests).\n\nRationale:\nInduction variable analysis forms the basis of a wide\nvariety of compiler optimizations. This implementation\nfinds induction variables using the elegant SSA-based\nalgorithm defined by [Gerlek et al.].\n\nChange-Id: I79b8dce33ffb8b283c179699a8dff5bd196f75b2\n"
    }
  ]
}
