)]}'
{
  "commit": "1e18ffc9915bb9d3bbcd934d8b3e57ae9fe82f60",
  "tree": "92abdac23f41629b636c939591747e6fe5571ad9",
  "parents": [
    "0346042938539324a5052cc09023c1fe426e8b31"
  ],
  "author": {
    "name": "Jose E. Marchesi",
    "email": "jose.marchesi@oracle.com",
    "time": "Sun Jul 30 22:39:30 2023 +0200"
  },
  "committer": {
    "name": "Jose E. Marchesi",
    "email": "jose.marchesi@oracle.com",
    "time": "Sun Jul 30 22:39:30 2023 +0200"
  },
  "message": "bpf: include, bfd, opcodes: add EF_BPF_CPUVER ELF header flags\n\nThis patch adds support for EF_BPF_CPUVER bits in the ELF\nmachine-dependent header flags.  These bits encode the BPF CPU\nversion for which the object file has been compiled for.\n\nThe BPF assembler is updated so it annotates the object files it\ngenerates with these bits.\n\nThe BPF disassembler is updated so it honors EF_BPF_CPUVER to use the\nappropriate ISA version if the user didn\u0027t specify an explicit ISA\nversion in the command line.  Note that a value of zero in\nEF_BPF_CPUVER is interpreted by the disassembler as \"use the later\nsupported version\" (the BPF CPU versions start with v1.)\n\nThe readelf utility is updated to pretty print EF_BPF_CPUVER when it\nprints out the ELF header:\n\n   $ readelf -h a.out\n   ELF Header:\n     ...\n     Flags:                             0x4, CPU Version: 4\n\nTested in bpf-unknown-none.\n\ninclude/ChangeLog:\n\n2023-07-30  Jose E. Marchesi  \u003cjose.marchesi@oracle.com\u003e\n\n\t* elf/bpf.h (EF_BPF_CPUVER): Define.\n\t* opcode/bpf.h (BPF_XBPF): Change from 0xf to 0xff so it fits in\n\tEF_BPF_CPUVER.\n\nbinutils/ChangeLog:\n\n2023-07-30  Jose E. Marchesi  \u003cjose.marchesi@oracle.com\u003e\n\n\t* readelf.c (get_machine_flags): Recognize and pretty print BPF\n\tmachine flags.\n\nopcodes/ChangeLog:\n\n2023-07-30  Jose E. Marchesi  \u003cjose.marchesi@oracle.com\u003e\n\n\t* bpf-dis.c: Initialize asm_bpf_version to -1.\n\t(print_insn_bpf): Set BPF ISA version from the cpu version ELF\n\theader flags if no explicit version set in the command line.\n\t* disassemble.c (disassemble_init_for_target): Remove unused code.\n\ngas/ChangeLog:\n\n2023-07-30  Jose E. Marchesi  \u003cjose.marchesi@oracle.com\u003e\n\n\t* config/tc-bpf.h (elf_tc_final_processing): Define.\n\t* config/tc-bpf.c (bpf_elf_final_processing): New function.\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "cfd4d1ad45e742eef6ebf2d94a54da157b12427c",
      "old_mode": 33188,
      "old_path": "binutils/ChangeLog",
      "new_id": "65cff807bec7f9ec4de320b510e6aeedee6033a5",
      "new_mode": 33188,
      "new_path": "binutils/ChangeLog"
    },
    {
      "type": "modify",
      "old_id": "bb488ef2a5e68e5c07b40d8c2bb3486638f5f98c",
      "old_mode": 33188,
      "old_path": "binutils/readelf.c",
      "new_id": "4ecff4c393387f961ce5a398897982b6c7e90c27",
      "new_mode": 33188,
      "new_path": "binutils/readelf.c"
    },
    {
      "type": "modify",
      "old_id": "ab139a9257b470215288d049476a7051e1dadef1",
      "old_mode": 33188,
      "old_path": "gas/ChangeLog",
      "new_id": "26d7dc1623b33add58d21360ddf438472c653546",
      "new_mode": 33188,
      "new_path": "gas/ChangeLog"
    },
    {
      "type": "modify",
      "old_id": "7e1bd5d40b8d3a4a8ec3ed78d8b2da22a24cf2fd",
      "old_mode": 33188,
      "old_path": "gas/config/tc-bpf.c",
      "new_id": "b4566d89ddf8c5e15bf209bf55e4efedfc953ae7",
      "new_mode": 33188,
      "new_path": "gas/config/tc-bpf.c"
    },
    {
      "type": "modify",
      "old_id": "d57a66fe4604a6bf78358cfe3d614305a67cd5fa",
      "old_mode": 33188,
      "old_path": "gas/config/tc-bpf.h",
      "new_id": "9fb71eddd14816980f6c0e1283fef617169711ac",
      "new_mode": 33188,
      "new_path": "gas/config/tc-bpf.h"
    },
    {
      "type": "modify",
      "old_id": "eada5e5a0dad855d38a6c00384c906920fa223f6",
      "old_mode": 33188,
      "old_path": "gas/config/tc-sparc.c",
      "new_id": "c273bd75c08ece1c543a6ec3b66cfc16cbd853da",
      "new_mode": 33188,
      "new_path": "gas/config/tc-sparc.c"
    },
    {
      "type": "modify",
      "old_id": "11c1c09306b97bb60852b10cac95d6f12beb4f04",
      "old_mode": 33188,
      "old_path": "include/ChangeLog",
      "new_id": "4d407403944376adac95360d5e6fd181a2384be6",
      "new_mode": 33188,
      "new_path": "include/ChangeLog"
    },
    {
      "type": "modify",
      "old_id": "d0fad08c24ac44453112aece52b9d6ef7f601ce9",
      "old_mode": 33188,
      "old_path": "include/elf/bpf.h",
      "new_id": "e4d416290a7915c1c28b52066f43499a229c84d8",
      "new_mode": 33188,
      "new_path": "include/elf/bpf.h"
    },
    {
      "type": "modify",
      "old_id": "20e323a065b5555c4b9e2b4a651e4e4dbb4a04fd",
      "old_mode": 33188,
      "old_path": "include/opcode/bpf.h",
      "new_id": "6decae4a9a3b1b0089c9be38f26d5d96c17ae37b",
      "new_mode": 33188,
      "new_path": "include/opcode/bpf.h"
    },
    {
      "type": "modify",
      "old_id": "f611ec5bb0fa335f50cd6d371c4359b735166cb7",
      "old_mode": 33188,
      "old_path": "opcodes/ChangeLog",
      "new_id": "9d33da2162746db4b3e323e95485706751c2a2e1",
      "new_mode": 33188,
      "new_path": "opcodes/ChangeLog"
    },
    {
      "type": "modify",
      "old_id": "4fe0efc2f96f879945449fa26db20b3f8e59edf1",
      "old_mode": 33188,
      "old_path": "opcodes/bpf-dis.c",
      "new_id": "a8cb9e8e6db2fa33e617a6f59ff2c3a6132b3085",
      "new_mode": 33188,
      "new_path": "opcodes/bpf-dis.c"
    },
    {
      "type": "modify",
      "old_id": "a5cb396badb01cfcd796576c4f39c849f1622f43",
      "old_mode": 33188,
      "old_path": "opcodes/disassemble.c",
      "new_id": "8aac42ec96cf56f3903c01e613fbf8303cc9985f",
      "new_mode": 33188,
      "new_path": "opcodes/disassemble.c"
    }
  ]
}
