)]}'
{
  "commit": "873e7b6cf61b5e3fca8ab55ea1b8574dd00a3caf",
  "tree": "2d94b7c992bac3b280784a06e6bc5eeee766ee27",
  "parents": [
    "7fbaef8e801a4a212972aafc380fedae46204837"
  ],
  "author": {
    "name": "Haochen Jiang",
    "email": "haochen.jiang@intel.com",
    "time": "Thu Jul 30 11:01:01 2020 +0800"
  },
  "committer": {
    "name": "Haochen Jiang",
    "email": "haochen.jiang@intel.com",
    "time": "Fri Oct 11 10:38:27 2024 +0800"
  },
  "message": "Support Intel AVX10.2 media instructions\n\nIn disassembler part, for vnni instructions, we extended previous\nVEX part using %XE in disassembler to promote them to EVEX by reusing\nthe original VEX table. For vmpsadbw, we will also use %XE. However,\nit is hard to reuse the VEX table, so we are using new ones.\n\nIn assmbler part, we put the vnni table entries with previous vnni\ninstructions since they are just promotion from AVX-VNNI-INT{8,16}.\nSince we will prefer VEX encoding, we need to use the different table\norder in template \u003cvnni\u003e, which prefers EVEX due to earlier introduction\nfor AVX512_VNNI than AVX_VNNI. This means a new \u003cvnni\u003e. For vdpphps\nand vmpsadbw, we put them at the end of the table, with future AVX10.2\ninstructions.\n\nNit: I will remove the arch requirement for avx_vnni_int{8,16} in\nevex-promote testcases after AVX10.2 implies AVX-VNNI-INT{8,16}.\n\ngas/Changelog:\n\n\t* testsuite/gas/i386/i386.exp: Add AVX10.2 tests.\n\t* testsuite/gas/i386/x86-64.exp: Ditto.\n\t* testsuite/gas/i386/avx10_2-256-1-intel.d: New.\n\t* testsuite/gas/i386/avx10_2-256-1.d: Ditto.\n\t* testsuite/gas/i386/avx10_2-256-1.s: Ditto.\n\t* testsuite/gas/i386/avx10_2-512-1-intel.d: Ditto.\n\t* testsuite/gas/i386/avx10_2-512-1.d: Ditto.\n\t* testsuite/gas/i386/avx10_2-512-1.s: Ditto.\n\t* testsuite/gas/i386/avx10_2-promote.d: Ditto.\n\t* testsuite/gas/i386/avx10_2-promote.s: Ditto.\n\t* testsuite/gas/i386/x86-64-avx10_2-256-1-intel.d: Ditto.\n\t* testsuite/gas/i386/x86-64-avx10_2-256-1.d: Ditto.\n\t* testsuite/gas/i386/x86-64-avx10_2-256-1.s: Ditto.\n\t* testsuite/gas/i386/x86-64-avx10_2-512-1-intel.d: Ditto.\n\t* testsuite/gas/i386/x86-64-avx10_2-512-1.d: Ditto.\n\t* testsuite/gas/i386/x86-64-avx10_2-512-1.s: Ditto.\n\t* testsuite/gas/i386/x86-64-avx10_2-promote.d: Ditto.\n\t* testsuite/gas/i386/x86-64-avx10_2-promote.s: Ditto.\n\nopcodes/Changelog:\n\n\t* i386-dis-evex-prefix.h: Adjust PREFIX_EVEX_0F3852.\n\tAdd PREFIX_EVEX_0F3A42_W_0.\n\t* i386-dis-evex-w.h: Adjust EVEX_W_0F3A42.\n\t* i386-dis-evex.h: Add table pass for AVX10.2\n\tinstructions.\n\t* i386-dis.c: Adjust PREFIX_VEX_0F3850_W_0, PREFIX_VEX_0F3851_W_0,\n\tPREFIX_VEX_0F38D2_W_0 and PREFIX_VEX_0F38D3_W_0.\n\t* i386-opc.tbl: Add AVX10.2 instructions.\n\t* i386-mnem.h: Regenerated.\n\t* i386-tbl.h: Ditto.\n\nCo-authored-by: Lili Cui \u003clili.cui@intel.com\u003e\n",
  "tree_diff": [
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "9aad8f8e2279c03720ccafe98733b4ad936864d8",
      "new_mode": 33188,
      "new_path": "gas/testsuite/gas/i386/avx10_2-256-1-intel.d"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "b3485e674091a874c5a4ae65c278e4139988cad5",
      "new_mode": 33188,
      "new_path": "gas/testsuite/gas/i386/avx10_2-256-1.d"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "b1b30bd382a415adbee0ac41de19bbca379f4dbb",
      "new_mode": 33188,
      "new_path": "gas/testsuite/gas/i386/avx10_2-256-1.s"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "27a36d250b64b5fa41d453313e125d294ca18c69",
      "new_mode": 33188,
      "new_path": "gas/testsuite/gas/i386/avx10_2-512-1-intel.d"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "746c77a978535a0f477fb65d6c5e095bd2e09329",
      "new_mode": 33188,
      "new_path": "gas/testsuite/gas/i386/avx10_2-512-1.d"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "9133c03c9f7a66884c6acf7fd5557576659f2987",
      "new_mode": 33188,
      "new_path": "gas/testsuite/gas/i386/avx10_2-512-1.s"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "ba3ef92403afa4219b8ea68d8ed2d5043a279aa9",
      "new_mode": 33188,
      "new_path": "gas/testsuite/gas/i386/avx10_2-evex-promote.d"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "2f68815a839b2253e1f28d9c87e40fe61f53cb0f",
      "new_mode": 33188,
      "new_path": "gas/testsuite/gas/i386/avx10_2-evex-promote.s"
    },
    {
      "type": "modify",
      "old_id": "6710a56d64a7807d749f34d27fb08115441adcd4",
      "old_mode": 33188,
      "old_path": "gas/testsuite/gas/i386/i386.exp",
      "new_id": "699e2004bef59fb2687c48281fa36d689641784b",
      "new_mode": 33188,
      "new_path": "gas/testsuite/gas/i386/i386.exp"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "5be75c6d1efb00b53129d4f4033f2943d7e1c2ce",
      "new_mode": 33188,
      "new_path": "gas/testsuite/gas/i386/x86-64-avx10_2-256-1-intel.d"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "a512a53d0b278c5059ba0b7a2a1980451fa45283",
      "new_mode": 33188,
      "new_path": "gas/testsuite/gas/i386/x86-64-avx10_2-256-1.d"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "8f58d39f5f696a77763626df7ae404adce1b0b02",
      "new_mode": 33188,
      "new_path": "gas/testsuite/gas/i386/x86-64-avx10_2-256-1.s"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "0049b0a54f1061aa24f3db2fcd2326ec10a81b80",
      "new_mode": 33188,
      "new_path": "gas/testsuite/gas/i386/x86-64-avx10_2-512-1-intel.d"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "4c41b19171032447e0ece70de5a052545655d7ef",
      "new_mode": 33188,
      "new_path": "gas/testsuite/gas/i386/x86-64-avx10_2-512-1.d"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "c2bfa2a8ee5e6c41940682c5a5e901c002ce6467",
      "new_mode": 33188,
      "new_path": "gas/testsuite/gas/i386/x86-64-avx10_2-512-1.s"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "1af470eef241d13adcd1a4a476418d5effc0e590",
      "new_mode": 33188,
      "new_path": "gas/testsuite/gas/i386/x86-64-avx10_2-evex-promote.d"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "dfbfca847704607b455162533584a03a3f7e0edd",
      "new_mode": 33188,
      "new_path": "gas/testsuite/gas/i386/x86-64-avx10_2-evex-promote.s"
    },
    {
      "type": "modify",
      "old_id": "3ffeaafeecdaf999a210ac9bf61fd9f47bcd091d",
      "old_mode": 33188,
      "old_path": "gas/testsuite/gas/i386/x86-64.exp",
      "new_id": "42a900d6317983b63e65642f0a3917be1aae6435",
      "new_mode": 33188,
      "new_path": "gas/testsuite/gas/i386/x86-64.exp"
    },
    {
      "type": "modify",
      "old_id": "0fb6bd4e2adf2a374bec45bae025179e6e454622",
      "old_mode": 33188,
      "old_path": "opcodes/i386-dis-evex-prefix.h",
      "new_id": "574a640e650141966f860dfdd35c3f8322091650",
      "new_mode": 33188,
      "new_path": "opcodes/i386-dis-evex-prefix.h"
    },
    {
      "type": "modify",
      "old_id": "24c0c23f23e2bdd3e3b92c6e3f3c466239ea6083",
      "old_mode": 33188,
      "old_path": "opcodes/i386-dis-evex-w.h",
      "new_id": "27053b49b9c7d3a67bf65c6e71316ab4d15feb10",
      "new_mode": 33188,
      "new_path": "opcodes/i386-dis-evex-w.h"
    },
    {
      "type": "modify",
      "old_id": "559f0fbebde7a5f06de539c73da67f6278825310",
      "old_mode": 33188,
      "old_path": "opcodes/i386-dis-evex.h",
      "new_id": "b5ca4a0aeafffcffecb2b8b44ad4b0d49f36aa56",
      "new_mode": 33188,
      "new_path": "opcodes/i386-dis-evex.h"
    },
    {
      "type": "modify",
      "old_id": "e2c7b1b4ac712863009fb2e45b2dd24d5df22f26",
      "old_mode": 33188,
      "old_path": "opcodes/i386-dis.c",
      "new_id": "3a4af4d61a39eca7be0057807cae979987d94868",
      "new_mode": 33188,
      "new_path": "opcodes/i386-dis.c"
    },
    {
      "type": "modify",
      "old_id": "48f8c94f24bab9061b5b7825efa9fe9b57c053cf",
      "old_mode": 33188,
      "old_path": "opcodes/i386-mnem.h",
      "new_id": "ec6fa8fb812c65766f9746b8cfc948ced236843c",
      "new_mode": 33188,
      "new_path": "opcodes/i386-mnem.h"
    },
    {
      "type": "modify",
      "old_id": "0cd8538257a6178a50d54f463f9862df2bd1a716",
      "old_mode": 33188,
      "old_path": "opcodes/i386-opc.tbl",
      "new_id": "9a14a4d1819a0ccd95500b3cd02bbf1913e37580",
      "new_mode": 33188,
      "new_path": "opcodes/i386-opc.tbl"
    },
    {
      "type": "modify",
      "old_id": "4de957817c04c743e78a77c6b059dde1ac4d1b23",
      "old_mode": 33188,
      "old_path": "opcodes/i386-tbl.h",
      "new_id": "085e8cdf49d13f86c71fc8e39610faeed2e5f3fe",
      "new_mode": 33188,
      "new_path": "opcodes/i386-tbl.h"
    }
  ]
}
