)]}'
{
  "commit": "3037cefe56affe48ac53d85b9e33c2c3a408c41f",
  "tree": "519641eb4975432d6d48744b50c273e25fb8062e",
  "parents": [
    "c02a969de74ae3118f4a66ae76860ad21603fc44"
  ],
  "author": {
    "name": "Indu Bhagat",
    "email": "indu.bhagat@oracle.com",
    "time": "Mon Jan 15 01:00:23 2024 -0800"
  },
  "committer": {
    "name": "Indu Bhagat",
    "email": "indu.bhagat@oracle.com",
    "time": "Mon Jan 15 03:31:35 2024 -0800"
  },
  "message": "opcodes: gas: x86: define and use Rex2 as attribute not constraint\n\nRex2 is currently an operand constraint.  For the upcoming SCFI\nimplementation in GAS, we need to identify operations which implicitly\nupdate the stack pointer.  An operand constraint enumerator for implicit\nstack op seems more appropriate than an attribute.  However, two opcodes\ncurrently necessitate both Rex2 and an implicit stack op marker; this\nprompts revisiting the current representations a bit.\n\nMake Rex2 a standalone attribute, so that later a new operand constraint\nmay be added for IMPLICIT_STACK_OP.\n\nChangeLog:\n\t* gas/config/tc-i386.c (is_apx_rex2_encoding): Update the check.\n\t* opcodes/i386-gen.c: Add a new BITFIELD for Rex2.\n\t* opcodes/i386-opc.h (REX2_REQUIRED): Remove.\n\t* opcodes/i386-opc.tbl: Remove Rex2 operand constraint.\n\t* opcodes/i386-tbl.h: Regenerated.\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "856edbe557c892e58e37bfedddb29f72b018d865",
      "old_mode": 33188,
      "old_path": "gas/config/tc-i386.c",
      "new_id": "b25fa373680d8e7467d698c2352f7df30dcd18df",
      "new_mode": 33188,
      "new_path": "gas/config/tc-i386.c"
    },
    {
      "type": "modify",
      "old_id": "e8b92e32f456efff26e9e0f7f7f55922c24e7b15",
      "old_mode": 33188,
      "old_path": "opcodes/i386-gen.c",
      "new_id": "2133121648648c73bb72d223048d77ed2adc91b9",
      "new_mode": 33188,
      "new_path": "opcodes/i386-gen.c"
    },
    {
      "type": "modify",
      "old_id": "61a11214914df045090af6526eda0ec979d31433",
      "old_mode": 33188,
      "old_path": "opcodes/i386-opc.h",
      "new_id": "889636e3951ccdcf28d03244d832a424e76c07f1",
      "new_mode": 33188,
      "new_path": "opcodes/i386-opc.h"
    },
    {
      "type": "modify",
      "old_id": "aceac97dbaaaef40f8fb70a4b1a3bf6069343635",
      "old_mode": 33188,
      "old_path": "opcodes/i386-opc.tbl",
      "new_id": "b9c2f1ce57ebe14127a5bbb1507453f2ad9da9c9",
      "new_mode": 33188,
      "new_path": "opcodes/i386-opc.tbl"
    },
    {
      "type": "modify",
      "old_id": "b08f56edaeab848a70e8c99a7e1e17c0de0a2cfc",
      "old_mode": 33188,
      "old_path": "opcodes/i386-tbl.h",
      "new_id": "ffd27ff6cac79b4e49404b09b6851e99008dabb8",
      "new_mode": 33188,
      "new_path": "opcodes/i386-tbl.h"
    }
  ]
}
