)]}'
{
  "commit": "4eb8c2c8d864b73343c18734b216b1dd62ba312e",
  "tree": "4bf263a1fe68a08d4c028df7164cff7f547ce4c6",
  "parents": [
    "2fc4c88bf43f0ea5ea305eae2b7af24b2cc93287"
  ],
  "author": {
    "name": "bill_ofarrell",
    "email": "billo@ca.ibm.com",
    "time": "Mon Apr 30 12:14:33 2018 -0400"
  },
  "committer": {
    "name": "Michael Munday",
    "email": "mike.munday@ibm.com",
    "time": "Mon May 14 22:55:51 2018 +0000"
  },
  "message": "poly1305: add optimized s390x SIMD implementation with VMSL\n\nSIMD implementation based the on the algorithm outlined in:\nNEON crypto, Daniel J. Bernstein and Peter Schwabe\nhttps://cryptojedi.org/papers/neoncrypto-20120320.pdf\nand as modified for VMSL as described in\nAccelerating Poly1305 Cryptographic Message Authentication on the z14\nO\u0027Farrell, Gadriwala, et al, CASCON 2017, p48-55\nhttps://ibm.ent.box.com/s/jf9gedj0e9d2vjctfyh186shaztavnht\n\nname\t\told\t\tnew\t\tdelta\n64\t\t485MB/s\t\t1315 MB/s\t+171.58%\n1K\t\t607MB/s\t\t4352 MB/s\t+616.97%\n64Unaligned\t485MB/s\t\t1373 MB/s       +183.09%\n1KUnaligned\t606MB/s\t\t4286 MB/s\t+607.26%\n2M\t\t607MB/s\t\t5529 MB/s\t+810.87%\n\nChange-Id: I31ccc25ced09180d99ea5c9233f0dcdc8666fc98\nReviewed-on: https://go-review.googlesource.com/110297\nRun-TryBot: Michael Munday \u003cmike.munday@ibm.com\u003e\nTryBot-Result: Gobot Gobot \u003cgobot@golang.org\u003e\nReviewed-by: Michael Munday \u003cmike.munday@ibm.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "017027fe6e5edbb2c4db9626fea3e7755e91962a",
      "old_mode": 33188,
      "old_path": "poly1305/poly1305_test.go",
      "new_id": "dce4d636be59451ea73eb4a7858cfa6fac88dd4b",
      "new_mode": 33188,
      "new_path": "poly1305/poly1305_test.go"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "751eec52743ce32579f4716559abf942d1e6c050",
      "new_mode": 33188,
      "new_path": "poly1305/sum_noasm.go"
    },
    {
      "type": "modify",
      "old_id": "b2805a5ca173b29dabaa49aade4ea82322779551",
      "old_mode": 33188,
      "old_path": "poly1305/sum_ref.go",
      "new_id": "c4d59bd09874cf24ade413e0da715c0eacaef5cd",
      "new_mode": 33188,
      "new_path": "poly1305/sum_ref.go"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "7a266cece46adad6e09165b48e7afa83e90c9fca",
      "new_mode": 33188,
      "new_path": "poly1305/sum_s390x.go"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "356c07a6c2b122ec9c205dca9c8d6a35229756b9",
      "new_mode": 33188,
      "new_path": "poly1305/sum_s390x.s"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "e548020b14e198b9824ab47927365bc86f68a91a",
      "new_mode": 33188,
      "new_path": "poly1305/sum_vmsl_s390x.s"
    }
  ]
}
