)]}'
{
  "commit": "ffb940d7fb9d3a0abd655b90642fe2201550bbd5",
  "tree": "15a7f298a1293465b7a12c19ddea4e2392c56c9b",
  "parents": [
    "19b530052723e0c95a662e5bdb554cb607db3a39"
  ],
  "author": {
    "name": "Jonas Paulsson",
    "email": "paulson1@linux.ibm.com",
    "time": "Mon Jan 26 13:42:25 2026 -0600"
  },
  "committer": {
    "name": "Cullen Rhodes",
    "email": "cullen.rhodes@arm.com",
    "time": "Thu Jan 29 08:15:25 2026 +0000"
  },
  "message": "[SystemZ] Support fp16 vector ABI and basic codegen. (#171066)\n\n- Make v8f16 a legal type so that arguments can be passed in vector\nregisters. Handle fp16 vectors so that they have the same ABI as other\nfp vectors.\n\n- Set the preferred vector action for fp16 vectors to \"split\". This will\nscalarize all operations, which is not always necessary (like with\nmemory operations), but it avoids the superfluous operations that result\nafter first widening and then scalarizing a narrow vector (like v4f16).\n\nFixes #168992\n\n(cherry picked from commit c999e9a4fe8870f7943551d9ff8b575eb282d16d)\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "fab6050a0d876f04d928a284bc78254777f6aa6d",
      "old_mode": 33188,
      "old_path": "clang/test/CodeGen/SystemZ/systemz-abi-vector.c",
      "new_id": "0c577723c6265e7a3c81fb007cceab8d6c5802e0",
      "new_mode": 33188,
      "new_path": "clang/test/CodeGen/SystemZ/systemz-abi-vector.c"
    },
    {
      "type": "modify",
      "old_id": "2795de5eeeb66a75fa08e76249fd3ea23e832f9b",
      "old_mode": 33188,
      "old_path": "llvm/lib/Target/SystemZ/SystemZCallingConv.td",
      "new_id": "69202e3fcbc5757d10d51d980c0eb5b13881210f",
      "new_mode": 33188,
      "new_path": "llvm/lib/Target/SystemZ/SystemZCallingConv.td"
    },
    {
      "type": "modify",
      "old_id": "87b074194c74fdfc49c4b4172313be1e5fcd5cf4",
      "old_mode": 33188,
      "old_path": "llvm/lib/Target/SystemZ/SystemZISelLowering.cpp",
      "new_id": "21beef238f1878301ea80e24e68a8232e684ad6c",
      "new_mode": 33188,
      "new_path": "llvm/lib/Target/SystemZ/SystemZISelLowering.cpp"
    },
    {
      "type": "modify",
      "old_id": "c7cc26c5527e6dc0e9d605f33c46b7a43d181693",
      "old_mode": 33188,
      "old_path": "llvm/lib/Target/SystemZ/SystemZISelLowering.h",
      "new_id": "bdc29c5e424e8050560881ff371b0186f64f8f18",
      "new_mode": 33188,
      "new_path": "llvm/lib/Target/SystemZ/SystemZISelLowering.h"
    },
    {
      "type": "modify",
      "old_id": "479bab5ce62b8ce9e1ced5e2d9279e79f45b2b40",
      "old_mode": 33188,
      "old_path": "llvm/lib/Target/SystemZ/SystemZInstrVector.td",
      "new_id": "eb5753cfcde99c4b26e3099db7f064ea6d05234d",
      "new_mode": 33188,
      "new_path": "llvm/lib/Target/SystemZ/SystemZInstrVector.td"
    },
    {
      "type": "modify",
      "old_id": "a02cafaaafcdf87b0dea89d9301c276a95c8473b",
      "old_mode": 33188,
      "old_path": "llvm/lib/Target/SystemZ/SystemZOperators.td",
      "new_id": "2a5b0435c1565c5e083a9bf481a08f58c5af54c4",
      "new_mode": 33188,
      "new_path": "llvm/lib/Target/SystemZ/SystemZOperators.td"
    },
    {
      "type": "modify",
      "old_id": "e79f12b449a880205da2367dfd779f8324d4da31",
      "old_mode": 33188,
      "old_path": "llvm/lib/Target/SystemZ/SystemZRegisterInfo.td",
      "new_id": "1ef8e81c8f8299f60db6e27ac125d7688a749cb5",
      "new_mode": 33188,
      "new_path": "llvm/lib/Target/SystemZ/SystemZRegisterInfo.td"
    },
    {
      "type": "modify",
      "old_id": "0bc647aa0e0f7c1dc180bf2a4fcf7e1987cf6ff4",
      "old_mode": 33188,
      "old_path": "llvm/test/CodeGen/SystemZ/atomic-memops.ll",
      "new_id": "ae2a74d030caf0e348568c51c45cdc1cc33d89c4",
      "new_mode": 33188,
      "new_path": "llvm/test/CodeGen/SystemZ/atomic-memops.ll"
    },
    {
      "type": "modify",
      "old_id": "e02f931c4d31e0674bada470146443b712ce89b5",
      "old_mode": 33188,
      "old_path": "llvm/test/CodeGen/SystemZ/canonicalize-vars.ll",
      "new_id": "d0f3414e894971a6e487072c227f4bddfa9ed6cf",
      "new_mode": 33188,
      "new_path": "llvm/test/CodeGen/SystemZ/canonicalize-vars.ll"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "825472299d02824d9e27228363644c108536b7d0",
      "new_mode": 33188,
      "new_path": "llvm/test/CodeGen/SystemZ/fp-half-vector-binops.ll"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "fac8a64be28f6afe1225077ccd70a22cc65d67f1",
      "new_mode": 33188,
      "new_path": "llvm/test/CodeGen/SystemZ/fp-half-vector-conv.ll"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "0500f43b7f33e00259a7d63f7b96bf3452110ea9",
      "new_mode": 33188,
      "new_path": "llvm/test/CodeGen/SystemZ/fp-half-vector-fcmp-select.ll"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "2c8a69ec1e2c92d0841f84c293dc7abb5ea107f4",
      "new_mode": 33188,
      "new_path": "llvm/test/CodeGen/SystemZ/fp-half-vector-mem.ll"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "e1daffecc374c7396a2f42d0619dbe03b8b5727d",
      "new_mode": 33188,
      "new_path": "llvm/test/CodeGen/SystemZ/fp-half-vector-move.ll"
    },
    {
      "type": "delete",
      "old_id": "4997c5b0c617d71d20c91ba4c47add44cbe3899c",
      "old_mode": 33188,
      "old_path": "llvm/test/CodeGen/SystemZ/fp-half-vector.ll",
      "new_id": "0000000000000000000000000000000000000000",
      "new_mode": 0,
      "new_path": "/dev/null"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "6ce8288aa849956cdc6ecc1043772b9aed177b11",
      "new_mode": 33188,
      "new_path": "llvm/test/CodeGen/SystemZ/vec-abi-01.ll"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "c57a9d6b3378affa6e63321fdf27838cc01f3056",
      "new_mode": 33188,
      "new_path": "llvm/test/CodeGen/SystemZ/vec-abi-02.ll"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "6a44fe7ef66964f66a52c5e940bb263daad7ed44",
      "new_mode": 33188,
      "new_path": "llvm/test/CodeGen/SystemZ/vec-abi-03.ll"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "3e03e2a5d46218e5cd5ce7485338db7f133b699d",
      "new_mode": 33188,
      "new_path": "llvm/test/CodeGen/SystemZ/vec-abi-04.ll"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "60e0114edf60023ed08a73a71b7ce51d8bba64c5",
      "new_mode": 33188,
      "new_path": "llvm/test/CodeGen/SystemZ/vec-abi-05.ll"
    },
    {
      "type": "modify",
      "old_id": "cb8850e58c589649d7da230596b61420b8e44328",
      "old_mode": 33188,
      "old_path": "llvm/test/CodeGen/SystemZ/vec-cmp-09.ll",
      "new_id": "3ed6d200cd03c3d2f9f8ab657c4a48d9d22ad08e",
      "new_mode": 33188,
      "new_path": "llvm/test/CodeGen/SystemZ/vec-cmp-09.ll"
    },
    {
      "type": "modify",
      "old_id": "a1eb6b3990ff67f5ff7cf2b8b683e2e025dbee5d",
      "old_mode": 33188,
      "old_path": "llvm/test/CodeGen/SystemZ/vec-eswap-01.ll",
      "new_id": "9baf67a75920c5be11934168d5787107ac7f4150",
      "new_mode": 33188,
      "new_path": "llvm/test/CodeGen/SystemZ/vec-eswap-01.ll"
    },
    {
      "type": "modify",
      "old_id": "2ce3aa5a42e8aaa215541a41c87d4e52364b47a6",
      "old_mode": 33188,
      "old_path": "llvm/test/CodeGen/SystemZ/vec-eswap-02.ll",
      "new_id": "4eb6bcfcfb04b5cd21690187e95e676ba43f62a9",
      "new_mode": 33188,
      "new_path": "llvm/test/CodeGen/SystemZ/vec-eswap-02.ll"
    },
    {
      "type": "modify",
      "old_id": "27c9e5f71f403ac9304f99cdcf5d71ce8417b37c",
      "old_mode": 33188,
      "old_path": "llvm/test/CodeGen/SystemZ/vec-move-04.ll",
      "new_id": "400ca0b58bda9ce83800d9fa3b92c8e715e97fa6",
      "new_mode": 33188,
      "new_path": "llvm/test/CodeGen/SystemZ/vec-move-04.ll"
    },
    {
      "type": "modify",
      "old_id": "99871196d685eb240f125eecf8b87c5a73897450",
      "old_mode": 33188,
      "old_path": "llvm/test/CodeGen/SystemZ/vec-move-05.ll",
      "new_id": "4e092da3f7070c60d12cc57e1f1c157d984ca89a",
      "new_mode": 33188,
      "new_path": "llvm/test/CodeGen/SystemZ/vec-move-05.ll"
    },
    {
      "type": "modify",
      "old_id": "b0d06f782dee7a5f497ee8846452e54c09ad6473",
      "old_mode": 33188,
      "old_path": "llvm/test/CodeGen/SystemZ/vec-move-07.ll",
      "new_id": "638148ef5f29dc73bcd331ae354b8c959215a7b5",
      "new_mode": 33188,
      "new_path": "llvm/test/CodeGen/SystemZ/vec-move-07.ll"
    },
    {
      "type": "modify",
      "old_id": "3c3862bf9e19296bb5b67ca79d5062ca600f4b88",
      "old_mode": 33188,
      "old_path": "llvm/test/CodeGen/SystemZ/vec-move-10.ll",
      "new_id": "5af836c696fc93001bf375ba7ba92b52f4f89310",
      "new_mode": 33188,
      "new_path": "llvm/test/CodeGen/SystemZ/vec-move-10.ll"
    },
    {
      "type": "modify",
      "old_id": "c862d86de64e8ddba2c50c6c28daacf63b73d6ae",
      "old_mode": 33188,
      "old_path": "llvm/test/CodeGen/SystemZ/vec-move-12.ll",
      "new_id": "2dadd5b0ff70311a2c3405da8f4574164ff6cfb6",
      "new_mode": 33188,
      "new_path": "llvm/test/CodeGen/SystemZ/vec-move-12.ll"
    },
    {
      "type": "modify",
      "old_id": "4beec05eaece3864ab0e32b618fb73f985843d23",
      "old_mode": 33188,
      "old_path": "llvm/test/CodeGen/SystemZ/vec-perm-01.ll",
      "new_id": "4d1c6306d2ccc8db5d94a0b0c00549018ca7bb1b",
      "new_mode": 33188,
      "new_path": "llvm/test/CodeGen/SystemZ/vec-perm-01.ll"
    },
    {
      "type": "modify",
      "old_id": "aa18923055575a9dbb004002405a4ebc1467f1cd",
      "old_mode": 33188,
      "old_path": "llvm/test/CodeGen/SystemZ/vec-perm-03.ll",
      "new_id": "91727315e2ef7bf13b51a21538b0f55bc0e135a6",
      "new_mode": 33188,
      "new_path": "llvm/test/CodeGen/SystemZ/vec-perm-03.ll"
    }
  ]
}
