)]}'
{
  "commit": "c8cb37347fde3ae12c943c2133a1043eece4c127",
  "tree": "0605dc42c2c8534960374271cd486567a2ca8a0d",
  "parents": [
    "4ced24d1907a8ce28868cc3fe403d769197352be"
  ],
  "author": {
    "name": "Christoph Müllner",
    "email": "christoph.muellner@vrull.eu",
    "time": "Fri Jun 30 22:43:33 2023 +0200"
  },
  "committer": {
    "name": "Christoph Müllner",
    "email": "christoph.muellner@vrull.eu",
    "time": "Sat Jul 01 07:14:45 2023 +0200"
  },
  "message": "RISC-V: Add support for the Zvbb ISA extension\n\nZvbb is part of the vector crypto extensions.\n\nThis extension adds the following instructions:\n- vandn.[vv,vx]\n- vbrev.v\n- vbrev8.v\n- vrev8.v\n- vclz.v\n- vctz.v\n- vcpop.v\n- vrol.[vv,vx]\n- vror.[vv,vx,vi]\n- vwsll.[vv,vx,vi]\n\nbfd/ChangeLog:\n\n\t* elfxx-riscv.c (riscv_multi_subset_supports): Add instruction\n\tclass support for Zvbb.\n\t(riscv_multi_subset_supports_ext): Likewise.\n\ngas/ChangeLog:\n\n\t* config/tc-riscv.c (validate_riscv_insn): Add \u0027l\u0027 as new format\n\tstring directive.\n\t(riscv_ip): Likewise.\n\t* testsuite/gas/riscv/zvbb.d: New test.\n\t* testsuite/gas/riscv/zvbb.s: New test.\n\ninclude/ChangeLog:\n\n\t* opcode/riscv-opc.h (MATCH_VANDN_VV): New.\n\t(MASK_VANDN_VV): New.\n\t(MATCH_VANDN_VX): New.\n\t(MASK_VANDN_VX): New.\n\t(MATCH_VBREV8_V): New.\n\t(MASK_VBREV8_V): New.\n\t(MATCH_VBREV_V): New.\n\t(MASK_VBREV_V): New.\n\t(MATCH_VCLZ_V): New.\n\t(MASK_VCLZ_V): New.\n\t(MATCH_VCPOP_V): New.\n\t(MASK_VCPOP_V): New.\n\t(MATCH_VCTZ_V): New.\n\t(MASK_VCTZ_V): New.\n\t(MATCH_VREV8_V): New.\n\t(MASK_VREV8_V): New.\n\t(MATCH_VROL_VV): New.\n\t(MASK_VROL_VV): New.\n\t(MATCH_VROL_VX): New.\n\t(MASK_VROL_VX): New.\n\t(MATCH_VROR_VI): New.\n\t(MASK_VROR_VI): New.\n\t(MATCH_VROR_VV): New.\n\t(MASK_VROR_VV): New.\n\t(MATCH_VROR_VX): New.\n\t(MASK_VROR_VX): New.\n\t(MATCH_VWSLL_VI): New.\n\t(MASK_VWSLL_VI): New.\n\t(MATCH_VWSLL_VV): New.\n\t(MASK_VWSLL_VV): New.\n\t(MATCH_VWSLL_VX): New.\n\t(MASK_VWSLL_VX): New.\n\t(DECLARE_INSN): New.\n\t* opcode/riscv.h (EXTRACT_RVV_VI_UIMM6): New.\n\t(ENCODE_RVV_VI_UIMM6): New.\n\t(enum riscv_insn_class): Add instruction class for Zvbb.\n\nopcodes/ChangeLog:\n\n\t* riscv-dis.c (print_insn_args): Add \u0027l\u0027 as new format string\n\tdirective.\n\t* riscv-opc.c: Add Zvbb instructions.\n\nSigned-off-by: Nathan Huckleberry \u003cnhuck@google.com\u003e\nSigned-off-by: Christoph Müllner \u003cchristoph.muellner@vrull.eu\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "497709ef0dba95ebaaf4dacbeb7ad11c7a7f384d",
      "old_mode": 33188,
      "old_path": "bfd/elfxx-riscv.c",
      "new_id": "21a4dc8ae8b838646e56ee82d8f49d5bade1669c",
      "new_mode": 33188,
      "new_path": "bfd/elfxx-riscv.c"
    },
    {
      "type": "modify",
      "old_id": "6bd3b2f198a2d8cf4567a12630559839bad054df",
      "old_mode": 33188,
      "old_path": "gas/config/tc-riscv.c",
      "new_id": "297bb9b2a819b6de32574871ce314b148fa489e5",
      "new_mode": 33188,
      "new_path": "gas/config/tc-riscv.c"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "c6c9df5c681586e10e11440a3df11e0f6b9c09b4",
      "new_mode": 33188,
      "new_path": "gas/testsuite/gas/riscv/zvbb.d"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "7a666ff959b051eb06d1bb0c45300e4592a86735",
      "new_mode": 33188,
      "new_path": "gas/testsuite/gas/riscv/zvbb.s"
    },
    {
      "type": "modify",
      "old_id": "3d5f6606d91d2f450ece3474f3ce16c002e3fae1",
      "old_mode": 33188,
      "old_path": "include/opcode/riscv-opc.h",
      "new_id": "9003200d2d40e0b8580c89d05924a8f0d72a1fc3",
      "new_mode": 33188,
      "new_path": "include/opcode/riscv-opc.h"
    },
    {
      "type": "modify",
      "old_id": "e96b95782c41189cfac40151dfb744697d6596db",
      "old_mode": 33188,
      "old_path": "include/opcode/riscv.h",
      "new_id": "487856478f30e02c93c4a664110f9fe0add77888",
      "new_mode": 33188,
      "new_path": "include/opcode/riscv.h"
    },
    {
      "type": "modify",
      "old_id": "576cd2478844c8336f7ff2d0079b70d7b9877715",
      "old_mode": 33188,
      "old_path": "opcodes/riscv-dis.c",
      "new_id": "827d9b67437dbe860aa7a8947c57596030ee9556",
      "new_mode": 33188,
      "new_path": "opcodes/riscv-dis.c"
    },
    {
      "type": "modify",
      "old_id": "c607e0957648bbc0c956ab020c319364702b2d4a",
      "old_mode": 33188,
      "old_path": "opcodes/riscv-opc.c",
      "new_id": "6e8313bac16d0bbb38c209ecc62d145d469cd90a",
      "new_mode": 33188,
      "new_path": "opcodes/riscv-opc.c"
    }
  ]
}
