)]}'
{
  "commit": "2c880a20471c82689996a47aae7e213edff832a4",
  "tree": "28c2e417c2c35657511fa720b5c30bce36b17d11",
  "parents": [
    "81080a729af568f7b5fde92b9170cc17065027c9"
  ],
  "author": {
    "name": "Peter Collingbourne",
    "email": "pcc@google.com",
    "time": "Wed Aug 07 16:30:50 2019 -0700"
  },
  "committer": {
    "name": "CQ bot account: commit-bot@chromium.org",
    "email": "commit-bot@chromium.org",
    "time": "Thu Aug 08 18:03:43 2019 +0000"
  },
  "message": "Add assembly support for -fsanitize\u003dhwaddress tagged globals.\n\nAs of LLVM r368102, Clang will set a pointer tag in bits 56-63 of the\naddress of a global when compiling with -fsanitize\u003dhwaddress. This requires\nan adjustment to assembly code that takes the address of such globals: the\ncode cannot use the regular R_AARCH64_ADR_PREL_PG_HI21 relocation to refer\nto the global, since the tag would take the address out of range. Instead,\nthe code must use the non-checking (_NC) variant of the relocation (the\nlink-time check is substituted by a runtime check).\n\nThis change makes the necessary adjustment in all of the places where it\nis needed when compiling with -fsanitize\u003dhwaddress. While here, shrink the\ncode by an instruction in each of those places by folding the addend into\nthe load, and remove some dead code that seems to have been left over from\ncommit 293d9ee4e837d122a28cd992e37779a5de48dc7f.\n\nWe check for a sufficiently new clang before using the :pg_hi21_nc: relocation\nvariant because support for this variant was only added recently.\n\nChange-Id: Ic9da8386e19c03c1e90c103a81232a254277e9a5\nReviewed-on: https://boringssl-review.googlesource.com/c/boringssl/+/36924\nReviewed-by: Adam Langley \u003cagl@google.com\u003e\nCommit-Queue: Adam Langley \u003cagl@google.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "02325e7a2edf27b9709c3f128f0a91752f03155f",
      "old_mode": 33261,
      "old_path": "crypto/chacha/asm/chacha-armv8.pl",
      "new_id": "9cae28c0ddfe92a0ca5a869a112e4f6e8a7ccbc8",
      "new_mode": 33261,
      "new_path": "crypto/chacha/asm/chacha-armv8.pl"
    },
    {
      "type": "modify",
      "old_id": "c1474626d9a567eea5676026f71fcb0924f8b6a6",
      "old_mode": 33188,
      "old_path": "crypto/fipsmodule/sha/asm/sha1-armv8.pl",
      "new_id": "59d55b3c0c4df2d8966dfafd706d2c4b50150ec8",
      "new_mode": 33188,
      "new_path": "crypto/fipsmodule/sha/asm/sha1-armv8.pl"
    },
    {
      "type": "modify",
      "old_id": "64306be8d27ad4d215590e86ef96c8d468caf432",
      "old_mode": 33188,
      "old_path": "crypto/fipsmodule/sha/asm/sha512-armv8.pl",
      "new_id": "205b06dcba24b1b9899c142dc8c22a365c080934",
      "new_mode": 33188,
      "new_path": "crypto/fipsmodule/sha/asm/sha512-armv8.pl"
    },
    {
      "type": "modify",
      "old_id": "655be61bf6f60903eb0c3aa65466cb6327af4fc3",
      "old_mode": 33261,
      "old_path": "crypto/perlasm/arm-xlate.pl",
      "new_id": "4dec2760b2f9c657e8eedf76b358bee32680f973",
      "new_mode": 33261,
      "new_path": "crypto/perlasm/arm-xlate.pl"
    }
  ]
}
