)]}'
{
  "log": [
    {
      "commit": "4dda3376b71209fae07f5c3c8ac3eb4b54207aa8",
      "tree": "0d96a327d1b3a7e09eff178a66c0b5fb946cfc85",
      "parents": [
        "71af6f7aab7491665fe2d6beb9af4c251a99ad56"
      ],
      "author": {
        "name": "Alexey Frunze",
        "email": "Alexey.Frunze@imgtec.com",
        "time": "Mon Jun 01 18:31:49 2015 -0700"
      },
      "committer": {
        "name": "Roland Levillain",
        "email": "rpl@google.com",
        "time": "Fri Jun 19 15:43:58 2015 +0100"
      },
      "message": "MIPS: Initial version of optimizing compiler for MIPS64R6.\n\nBug: 21555893\nChange-Id: I874dc356eee6ab061a32f8f3df5f8ac3a4ab7dcf\nSigned-off-by: Alexey Frunze \u003cAlexey.Frunze@imgtec.com\u003e\nSigned-off-by: Douglas Leung \u003cdouglas.leung@imgtec.com\u003e\n"
    },
    {
      "commit": "403e0d55a3e9c18d4228d0aab31dec0c908dc73d",
      "tree": "22beb87b8be836e2851bb2637446ceb47d9d4389",
      "parents": [
        "1576be32be4a99a1cffdaaf209a3cd67e8b2f88a"
      ],
      "author": {
        "name": "Goran Jakovljevic",
        "email": "Goran.Jakovljevic@imgtec.com",
        "time": "Wed Apr 08 16:26:05 2015 +0200"
      },
      "committer": {
        "name": "Goran Jakovljevic",
        "email": "Goran.Jakovljevic@imgtec.com",
        "time": "Thu Apr 09 08:23:53 2015 +0200"
      },
      "message": "[MIPS] Refactoring code for disassembler\n\nCode for mips64 is merged with code for mips.\n\nChange-Id: I2e3f2118c69a189787ae8e7f09adb4ee5c0d00d9\n"
    },
    {
      "commit": "65b798ea10dd716c1bb3dda029f9bf255435af72",
      "tree": "774e9901b6917989a63f07f927c3b4d8b921a013",
      "parents": [
        "c411c6cc327d3f2b3b4d1987b07dd442205d9454"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Mon Apr 06 09:35:22 2015 -0700"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Mon Apr 06 14:05:07 2015 -0700"
      },
      "message": "ART: Enable more Clang warnings\n\nChange-Id: Ie6aba02f4223b1de02530e1515c63505f37e184c\n"
    },
    {
      "commit": "027f0ff64c2512b9a5f1f54f3fea1bec481eb0f5",
      "tree": "9202535f219d7343b4c26d5c43f0bcb7c31650df",
      "parents": [
        "6cc763c8b8157fb42dd44e1dfb84812546500dc1"
      ],
      "author": {
        "name": "Douglas Leung",
        "email": "douglas.leung@imgtec.com",
        "time": "Fri Feb 27 19:05:03 2015 -0800"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Fri Mar 20 16:51:56 2015 -0700"
      },
      "message": "ART: Add Mips32r6 backend support\n\nAdd Mips32r6 compiler support.\n\nDon\u0027t use deprecated Mips32r2 instructions if running in Mips32r6\nmode.\n\nChange-Id: I54e689aa8c026ccb75c4af515aa2794f471c9f67\n"
    },
    {
      "commit": "1cd27903529ee10229fa639dc8438a75517de492",
      "tree": "c3689e5286876ea6deb967a79869bac5d270551f",
      "parents": [
        "f5c224cca603ef1dba9bb80952613facc22598fa"
      ],
      "author": {
        "name": "Douglas Leung",
        "email": "douglas.leung@imgtec.com",
        "time": "Fri Feb 13 16:55:57 2015 -0800"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Sat Feb 28 00:11:26 2015 +0000"
      },
      "message": "ART: Fix Mips disassembler for some floating point instructions.\n\nChange-Id: I2b661a8dae4cd924c081df85f570007cf645769c\n"
    },
    {
      "commit": "8d36591d93920e7b7830c3ffee3759b561f5339e",
      "tree": "3217249ce513848ed93dcec981d6ed4c13c2fc60",
      "parents": [
        "8fccea249b1a6f1469eeea42c2b2cca06ce1c70d"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Tue Jan 13 11:32:32 2015 -0800"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Tue Jan 13 11:32:32 2015 -0800"
      },
      "message": "ART: Use jalr instead of jr for Mips\n\nUse the jalr instruction instead of jr in stubs and compiled code.\n\nChange-Id: Idacc5167a5bb0113dc2e7716e4767e5ed07b5e0b\n"
    },
    {
      "commit": "cf7f19135f0e273f7b0136315633c2abfc715343",
      "tree": "ffa4d9efd9c45f4b6789acc1f534bb9327052b7e",
      "parents": [
        "aea6888b056be21adf762e066c7f33b8939b8a06"
      ],
      "author": {
        "name": "Ian Rogers",
        "email": "irogers@google.com",
        "time": "Wed Oct 22 22:06:39 2014 -0700"
      },
      "committer": {
        "name": "Ian Rogers",
        "email": "irogers@google.com",
        "time": "Wed Oct 22 22:21:57 2014 -0700"
      },
      "message": "C++11 related clean-up of DISALLOW_..\n\nMove DISALLOW_COPY_AND_ASSIGN to delete functions. By no having declarations\nwith no definitions this prompts better warning messages so deal with these\nby correcting the code.\nAdd a DISALLOW_ALLOCATION and use for ValueObject and mirror::Object.\nMake X86 assembly operand types ValueObjects to fix compilation errors.\nTidy the use of iostream and ostream.\nAvoid making cutils a dependency via mutex-inl.h for tests that link against\nlibart. Push tracing dependencies into appropriate files and mutex.cc.\nx86 32-bit host symbols size is increased for libarttest, avoid copying this\nin run-test 115 by using symlinks and remove this test\u0027s higher than normal\nulimit.\nFix the RunningOnValgrind test in RosAllocSpace to not use GetHeap as it\nreturns NULL when the heap is under construction by Runtime.\n\nChange-Id: Ia246f7ac0c11f73072b30d70566a196e9b78472b\n"
    },
    {
      "commit": "c7dd295a4e0cc1d15c0c96088e55a85389bade74",
      "tree": "0c08a2236bc9ba5d9a4dc75d4dd0ed2d76f8f1c6",
      "parents": [
        "94e5af8602150efa95bde35cc9be9891ddf30135"
      ],
      "author": {
        "name": "Ian Rogers",
        "email": "irogers@google.com",
        "time": "Tue Oct 21 23:31:19 2014 -0700"
      },
      "committer": {
        "name": "Ian Rogers",
        "email": "irogers@google.com",
        "time": "Wed Oct 22 12:06:23 2014 -0700"
      },
      "message": "Tidy up logging.\n\nMove gVerboseMethods to CompilerOptions. Now \"--verbose-methods\u003d\" option to\ndex2oat rather than runtime argument \"-verbose-methods:\".\nMove ToStr and Dumpable out of logging.h, move LogMessageData into logging.cc\nexcept for a forward declaration.\nRemove ConstDumpable as Dump methods are all const (and make this so if not\ncurrently true).\nMake LogSeverity an enum and improve compile time assertions and type checking.\nRemove log_severity.h that\u0027s only used in logging.h.\nWith system headers gone from logging.h, go add to .cc files missing system\nheader includes.\nAlso, make operator new in ValueObject private for compile time instantiation\nchecking.\n\nChange-Id: I3228f614500ccc9b14b49c72b9821c8b0db3d641\n"
    },
    {
      "commit": "2cbaccb67e22c0b313a9785bfc65bcb4b25d0676",
      "tree": "daeb766e19880b651fd9c4a719c9a07dd7d4bd0e",
      "parents": [
        "bace0378d720a1d2938ec7f6be17e2814671d20a"
      ],
      "author": {
        "name": "Brian Carlstrom",
        "email": "bdc@google.com",
        "time": "Sun Sep 14 20:34:17 2014 -0700"
      },
      "committer": {
        "name": "Brian Carlstrom",
        "email": "bdc@google.com",
        "time": "Tue Sep 16 12:50:08 2014 -0700"
      },
      "message": "Avoid printing absolute addresses in oatdump\n\n- Added printing of OatClass offsets.\n- Added printing of OatMethod offsets.\n- Added bounds checks for code size size, code size, mapping table, gc map, vmap table.\n- Added sanity check of 100k for code size.\n- Added partial disassembly of questionable code.\n- Added --no-disassemble to disable disassembly.\n- Added --no-dump:vmap to disable vmap dumping.\n- Reordered OatMethod info to be in file order.\n\nBug: 15567083\n\n(cherry picked from commit 34fa79ece5b3a1940d412cd94dbdcc4225aae72f)\n\nChange-Id: I2c368f3b81af53b735149a866f3e491c9ac33fb8\n"
    },
    {
      "commit": "dd7624d2b9e599d57762d12031b10b89defc9807",
      "tree": "c972296737f992a84b1552561f823991d28403f0",
      "parents": [
        "8464a64a50190c06e95015a932eda9511fa6473d"
      ],
      "author": {
        "name": "Ian Rogers",
        "email": "irogers@google.com",
        "time": "Fri Mar 14 17:43:00 2014 -0700"
      },
      "committer": {
        "name": "Ian Rogers",
        "email": "irogers@google.com",
        "time": "Tue Apr 01 08:24:16 2014 -0700"
      },
      "message": "Allow mixing of thread offsets between 32 and 64bit architectures.\n\nBegin a more full implementation x86-64 REX prefixes.\nDoesn\u0027t implement 64bit thread offset support for the JNI compiler.\n\nChange-Id: If9af2f08a1833c21ddb4b4077f9b03add1a05147\n"
    },
    {
      "commit": "38e12034f1ef2b32e98b6e49cb36b7cc37a7f1be",
      "tree": "9a879d4034bce742c8b5ef0680c2da2d8da5139d",
      "parents": [
        "fb5b21d1d598b6b42e5d5ca1dac4a040832558fb"
      ],
      "author": {
        "name": "Ian Rogers",
        "email": "irogers@google.com",
        "time": "Fri Mar 14 14:06:14 2014 -0700"
      },
      "committer": {
        "name": "Ian Rogers",
        "email": "irogers@google.com",
        "time": "Fri Mar 14 14:16:04 2014 -0700"
      },
      "message": "x86-64 disassembler support.\n\nChange-Id: I0ae39ae1ffdae2500ff368354f9e4702445176f0\n"
    },
    {
      "commit": "02ed4c04468ca5f5540c5b704ac3e2f30eb9e8f4",
      "tree": "fd568452f4ae81868087e9a5f6c04a9051d0ef83",
      "parents": [
        "28c2300d9a85f4e7288fb5d94280332f923b4df3"
      ],
      "author": {
        "name": "Ian Rogers",
        "email": "irogers@google.com",
        "time": "Fri Sep 06 13:10:04 2013 -0700"
      },
      "committer": {
        "name": "Ian Rogers",
        "email": "irogers@google.com",
        "time": "Mon Sep 09 08:33:36 2013 -0700"
      },
      "message": "Move disassembler out of runtime.\n\nBug: 9877500.\nChange-Id: Ica6d9f5ecfd20c86e5230a2213827bd78cd29a29\n"
    },
    {
      "commit": "7934ac288acfb2552bb0b06ec1f61e5820d924a4",
      "tree": "43f3acd8af7fd34d4ae7b64f6e06bb8429d74bb8",
      "parents": [
        "fb331d7ca004f39608fcfdae49d38df90c702ea9"
      ],
      "author": {
        "name": "Brian Carlstrom",
        "email": "bdc@google.com",
        "time": "Fri Jul 26 10:54:15 2013 -0700"
      },
      "committer": {
        "name": "Brian Carlstrom",
        "email": "bdc@google.com",
        "time": "Fri Jul 26 11:55:10 2013 -0700"
      },
      "message": "Fix cpplint whitespace/comments issues\n\nChange-Id: Iae286862c85fb8fd8901eae1204cd6d271d69496\n"
    },
    {
      "commit": "7940e44f4517de5e2634a7e07d58d0fb26160513",
      "tree": "ac90242d96229a6942f6e24ab137bc1f8f2e0025",
      "parents": [
        "5cd9e3b122f276f610980cbaf0d2ad6ed4cd9088"
      ],
      "author": {
        "name": "Brian Carlstrom",
        "email": "bdc@google.com",
        "time": "Fri Jul 12 13:46:57 2013 -0700"
      },
      "committer": {
        "name": "Brian Carlstrom",
        "email": "bdc@google.com",
        "time": "Fri Jul 12 17:49:01 2013 -0700"
      },
      "message": "Create separate Android.mk for main build targets\n\nThe runtime, compiler, dex2oat, and oatdump now are in seperate trees\nto prevent dependency creep.  They can now be individually built\nwithout rebuilding the rest of the art projects. dalvikvm and jdwpspy\nwere already this way. Builds in the art directory should behave as\nbefore, building everything including tests.\n\nChange-Id: Ic6b1151e5ed0f823c3dd301afd2b13eb2d8feb81\n"
    },
    {
      "commit": "d74e41b1cce5373aa24fd2fbea735173f6113d5a",
      "tree": "fa06500c0496aa2954bd2ae32713ba4fd14d4b32",
      "parents": [
        "333a8ec11113e75552093cf8be6fbda2673a5be3"
      ],
      "author": {
        "name": "Brian Carlstrom",
        "email": "bdc@google.com",
        "time": "Sun Mar 24 23:47:01 2013 -0700"
      },
      "committer": {
        "name": "Brian Carlstrom",
        "email": "bdc@google.com",
        "time": "Sun Mar 24 23:47:01 2013 -0700"
      },
      "message": "Fixes for comparisons between signed and unsigned values with new jb-mr2 compiler\n\nChange-Id: Ibfcf8dca0b36b29548231c829be3c160c1c6d747\n"
    },
    {
      "commit": "e222ee0b794f941af4fb1b32fb8224e32942ea7b",
      "tree": "0b9f5fe6398663c9d871881cf7de28eca8bdfc6f",
      "parents": [
        "1aa246dec5abe212f699de1413a0c4a191ca364a"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Dec 13 14:41:43 2012 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Dec 13 15:24:45 2012 -0800"
      },
      "message": "Move stringpiece.h and stringprintf.h to base/.\n\nChange-Id: I7f71b4a12f99c5f81771146c66629ae5a947b229\n"
    },
    {
      "commit": "07ed66b5ae659c452cbe1ab20c3dbf1d6f546461",
      "tree": "2350745da33df6fcb9fb0c9059e55ea5d5ea8f67",
      "parents": [
        "76b6167407c2b6f5d40ad895b2793a6b037f54b2"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Dec 12 18:34:25 2012 -0800"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Dec 12 18:35:05 2012 -0800"
      },
      "message": "Move logging.h into base/logging.h.\n\nChange-Id: Id68f85f7c3a71b156cb40dec63f94d4fb827f279\n"
    },
    {
      "commit": "2bcb4a496b7aa00d996df3a070524f7568fb35a1",
      "tree": "8422ab8d65b7422008094b2eaadec0dad87b2df3",
      "parents": [
        "efc6369224b036a1fb77849f7ae65b3492c832c0"
      ],
      "author": {
        "name": "Ian Rogers",
        "email": "irogers@google.com",
        "time": "Thu Nov 08 10:39:18 2012 -0800"
      },
      "committer": {
        "name": "Ian Rogers",
        "email": "irogers@google.com",
        "time": "Fri Nov 16 14:01:34 2012 -0800"
      },
      "message": "Add \"kind\" argument to Get/SetVReg.\n\nIn order to determine where a register is promoted its necessary to know\nthe kind of use of the register.\nExtend notion of precise-ness to numeric verifier register types.\nDump verifier output in oatdump.\nDump vregs with their location or constant value.\nIntroduce indenting ostream utility.\n\nChange-Id: Ia3d29497877976bc24465484743bca08236e1768\n"
    },
    {
      "commit": "b23a7729cf7855fa05345d03a4d84111d5ec7172",
      "tree": "5313e076b19387db3cbcac95225d3f098f19451d",
      "parents": [
        "137e88f798857321f4007631fdf052d2830ec2c4"
      ],
      "author": {
        "name": "Ian Rogers",
        "email": "irogers@google.com",
        "time": "Tue Oct 09 16:54:26 2012 -0700"
      },
      "committer": {
        "name": "Ian Rogers",
        "email": "irogers@google.com",
        "time": "Tue Oct 09 16:54:26 2012 -0700"
      },
      "message": "Dump maps inline in disassembled code.\n\nIn pursuit of Bug: 7250540, dump mapping and GC map tables inline such\nas:\n\n0x607333a8: f8dfe11c    ldr.w   lr, [pc, #284]  ; 0x6076416d\n0x607333ac: 1c05        mov     r5, r0\n0x607333ae: f8df0144    ldr.w   r0, [pc, #324]  ; 0x6003ba08\n0x607333b2: 9a0b        ldr     r2, [sp, #44]\n0x607333b4: f04f0b2f    orr     r11, pc, ThumbExpand(47)\n0x607333b8: 1c29        mov     r1, r5\n0x607333ba: 465b        mov     r3, r11\n0x607333bc: 2900        cmp     r1, #0\n0x607333be: f0008070    beq.w   +224 (0x607334a2)\n0x607333c2: 47f0        blx     lr\nsuspend point dex PC: 44\nGC map objects:  v2 (r7), v3 (r5), v6 ([sp + #84]), v7 (r6)\n...\n\nAs GC map and mapping tables are inline, don\u0027t dump them.\nAlso dump dex instructions before code.\n\nChange-Id: I9f0c04182a4cda6844027eae22e8151f2827dc99\n"
    },
    {
      "commit": "4f8f04ad94e68d2307a955d6bd72415fc0852725",
      "tree": "f4c7f58a5149667b5f8e3376064faa81f5b9842e",
      "parents": [
        "3e96a16c27c986275f60afe682d0b2a3064f45c9"
      ],
      "author": {
        "name": "jeffhao",
        "email": "jeffhao@google.com",
        "time": "Tue Oct 02 18:10:35 2012 -0700"
      },
      "committer": {
        "name": "jeffhao",
        "email": "jeffhao@google.com",
        "time": "Wed Oct 03 13:34:43 2012 -0700"
      },
      "message": "Fix endianness of compiled code and stacks of stubs for MIPS.\n\nThe gtests now all work on MIPS.\n\nChange-Id: I2883ce002f23d75e700366014517c863fb626d09\n"
    },
    {
      "commit": "60454e8b48663e6e5cb4bb301cec5edf93f8ce54",
      "tree": "926b9b6cc9379e6ec090d4c36e0698ba76e04380",
      "parents": [
        "f49a495e249534c051d2d10bc3310253bb99b5d3"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Apr 25 12:56:03 2012 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Apr 25 12:56:03 2012 -0700"
      },
      "message": "MIPS disassembler.\n\n    0x0000: invoke-direct {v0}, Ljava/lang/Object;.\u003cinit\u003e()V // method@163\n            0xf7229004: 8e220050    lw      r2, +80(r17)  ; stack_end_\n            0xf7229008: 27bdfff8    addiu   r29, r29, -8\n            0xf722900c: afb20004    sw      r18, +4(r29)\n            0xf7229010: afbf0000    sw      r31, +0(r29)\n            0xf7229014: 27a3ffe8    addiu   r3, r29, -24\n            0xf7229018: 0062402b    sltu    r8, r3, r2\n            0xf722901c: 15000010    bne     r8, r0, 0xf7229060  ; +68\n            0xf7229020: 00000000    nop\n            0xf7229024: 0060e825    or      r29, r3, r0\n            0xf7229028: afa40000    sw      r4, +0(r29)\n            0xf722902c: 00a09025    or      r18, r5, r0\n            0xf7229030: 8fa40000    lw      r4, +0(r29)\n            0xf7229034: 02402825    or      r5, r18, r0\n            0xf7229038: 8c840010    lw      r4, +16(r4)\n            0xf722903c: 8c840298    lw      r4, +664(r4)\n            0xf7229040: 8c820020    lw      r2, +32(r4)\n            0xf7229044: 0040f809    jalr    r2\n            0xf7229048: 00000000    nop\n    0x0003: return-void\n            0xf722904c: 8fb2001c    lw      r18, +28(r29)\n            0xf7229050: 8fbf0018    lw      r31, +24(r29)\n            0xf7229054: 27bd0020    addiu   r29, r29, 32\n            0xf7229058: 03e00008    jr      r31\n            0xf722905c: 00000000    nop\n    0x0000: invoke-direct {v0}, Ljava/lang/Object;.\u003cinit\u003e()V // method@163\n            0xf7229060: 27bd0008    addiu   r29, r29, 8\n            0xf7229064: 8e2901f4    lw      r9, +500(r17)  ; pThrowStackOverflowFromCode\n            0xf7229068: 0120f809    jalr    r9\n            0xf722906c: 00000000    nop\n\nChange-Id: Ib5b8c9ed91fa92586f3b93793b5fb893e9ac09c2\n"
    }
  ]
}
