)]}'
{
  "commit": "537c9dfe43c8ca78e68e340fc140bca4d8bfaaa0",
  "tree": "40633d6c6b6b11756462379e6011eee4cdf285e4",
  "parents": [
    "f671756e047d6bc429798536b39e1bbd761e5ce5"
  ],
  "author": {
    "name": "Andreas Auernhammer",
    "email": "aead@mail.de",
    "time": "Tue Jan 17 17:25:01 2017 +0100"
  },
  "committer": {
    "name": "Adam Langley",
    "email": "agl@golang.org",
    "time": "Wed Feb 08 20:50:45 2017 +0000"
  },
  "message": "poly1305: simplify reference implementation\n\nReduce code complexity by replacing the floating-point implementation\nwith a 32-bit implementation.\n\nMoreover this improves the performance on 386:\n\nname \t\told time/op \tnew time/op \tdelta\n64-2 \t\t972ns ± 2% \t350ns ± 1% \t-64.04% (p\u003d0.029 n\u003d4+4)\n1K-2 \t\t10.9µs ± 3% \t4.2µs ± 1% \t-61.11% (p\u003d0.029 n\u003d4+4)\n64Unaligned-2\t969ns ± 2% \t354ns ± 2% \t-63.44% (p\u003d0.029 n\u003d4+4)\n1KUnaligned-2 \t10.8µs ± 3% \t4.2µs ± 1% \t-61.15% (p\u003d0.029 n\u003d4+4)\n\nname \t\told speed \tnew speed \tdelta\n64-2 \t\t65.8MB/s ± 2% \t182.9MB/s ± 1% \t+177.93% (p\u003d0.029 n\u003d4+4)\n1K-2 \t\t94.3MB/s ± 3% \t242.3MB/s ± 1% \t+157.08% (p\u003d0.029 n\u003d4+4)\n64Unaligned-2 \t66.0MB/s ± 2% \t180.4MB/s ± 2% \t+173.32% (p\u003d0.029 n\u003d4+4)\n1KUnaligned-2  \t94.4MB/s ± 3%  \t243.0MB/s ± 1% \t+157.36% (p\u003d0.029 n\u003d4+4)\n\nThere are already optimized versions for amd64 and arm,\nand a optimized version for s390x seems to be planned.\n\tSee: https://go-review.googlesource.com/#/c/32812/\n\nChange-Id: I7a5ac62ae33727b0e6060cb966de73a468317e30\nReviewed-on: https://go-review.googlesource.com/35294\nReviewed-by: Michael Munday \u003cmunday@ca.ibm.com\u003e\nReviewed-by: Adam Langley \u003cagl@golang.org\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "dbe50e78a0d3c30f5d1842dbc1daf9079d51f9a5",
      "old_mode": 33188,
      "old_path": "poly1305/sum_ref.go",
      "new_id": "b2805a5ca173b29dabaa49aade4ea82322779551",
      "new_mode": 33188,
      "new_path": "poly1305/sum_ref.go"
    }
  ]
}
