)]}'
{
  "commit": "45c2e38b37e40c3b6bdc508065edce0643f79110",
  "tree": "b5c8e22f3b0b6893875c90e2abe807b43ee84663",
  "parents": [
    "fdd0179bb1fdd70d405929b78c7d2fb6b61369b0"
  ],
  "author": {
    "name": "Keith Randall",
    "email": "khr@golang.org",
    "time": "Wed Feb 24 09:12:51 2016 -0800"
  },
  "committer": {
    "name": "Keith Randall",
    "email": "khr@golang.org",
    "time": "Wed Feb 24 18:47:57 2016 +0000"
  },
  "message": "cmd/compile: Drop references to Prog structs after each function\n\nDon\u0027t accumulate a massive list of Prog structs during\ncompilation and write them all out at the end of compilation.\nInstead, convert them to code+relocs (or data+relocs) after each\nfunction is compiled.\n\nTrack down a few other places that were keeping Progs alive\nand nil them out so the Progs get GCd promptly.\n\nSaves ~20% in peak memory usage for the compiler.  Surprisingly not much\nhelp speed-wise (only because we end up doing more GCs.  With a\ncompensating GOGC\u003d120, it does help a bit), but this provides a base for\nmore changes (e.g. reusing a cache of Progs).\n\nChange-Id: I838e01017c228995a687a8110d0cd67bf8596407\nReviewed-on: https://go-review.googlesource.com/19867\nRun-TryBot: Keith Randall \u003ckhr@golang.org\u003e\nTryBot-Result: Gobot Gobot \u003cgobot@golang.org\u003e\nReviewed-by: Josh Bleecher Snyder \u003cjosharian@gmail.com\u003e\nReviewed-by: Ian Lance Taylor \u003ciant@golang.org\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "fc47a39ee62ee08919417c6079dd236beef5dbde",
      "old_mode": 33188,
      "old_path": "src/cmd/compile/internal/gc/dcl.go",
      "new_id": "7e44a4756da50fa7e60f196fc4015a0c4f53eaaa",
      "new_mode": 33188,
      "new_path": "src/cmd/compile/internal/gc/dcl.go"
    },
    {
      "type": "modify",
      "old_id": "30bf736e3eb961e97e2c4685e734a63d8c049a83",
      "old_mode": 33188,
      "old_path": "src/cmd/compile/internal/gc/gsubr.go",
      "new_id": "04e986562dd3f29223eae161179ced3bbd34886f",
      "new_mode": 33188,
      "new_path": "src/cmd/compile/internal/gc/gsubr.go"
    },
    {
      "type": "modify",
      "old_id": "40c92dd15280720fa8b6b710964a6c5ee99fa362",
      "old_mode": 33188,
      "old_path": "src/cmd/internal/obj/objfile.go",
      "new_id": "3dc5152f544aabbe2e267bf6132652b19ff76f86",
      "new_mode": 33188,
      "new_path": "src/cmd/internal/obj/objfile.go"
    }
  ]
}
