)]}'
{
  "commit": "fb87708317e28573151d588bd117701dd77f2e16",
  "tree": "425f5f65897754af4f760d6b02dfc0b29c91337f",
  "parents": [
    "50eb8659340d4cf318ea208547fa3413caf5e76b"
  ],
  "author": {
    "name": "Brandon Wu",
    "email": "songwu0813@gmail.com",
    "time": "Sat Oct 25 02:38:43 2025 +0800"
  },
  "committer": {
    "name": "GitHub",
    "email": "noreply@github.com",
    "time": "Sat Oct 25 02:38:43 2025 +0800"
  },
  "message": "[RISCV] Support XSfmm C intrinsics (#143070)\n\nIn this version of intrinsics, users need to manage the life time of\ntiles on their own, compiler doesn\u0027t have tile type for variables not\nonly for design simplicity but also preventing users to write bad\nperformance code that could potentially having tile spills which are\nquite expensive in terms of cycles.\n\nIntrinsics are specified at the end of this document\nhttps://www.sifive.com/document-file/xsfmm-matrix-extensions-specification\n\nstack on: https://github.com/llvm/llvm-project/pull/143068 and\nhttps://github.com/llvm/llvm-project/pull/143069",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "13f0d59de93fb873c8db16cc7f8a3107880fa1b4",
      "old_mode": 33188,
      "old_path": "clang/include/clang/Basic/DiagnosticSemaKinds.td",
      "new_id": "f2edf7b84890b78675c5c9ea5fb265a6c35ba7c3",
      "new_mode": 33188,
      "new_path": "clang/include/clang/Basic/DiagnosticSemaKinds.td"
    },
    {
      "type": "modify",
      "old_id": "772fd3ef4201fbebe55186f4eb37f47368e12e81",
      "old_mode": 33188,
      "old_path": "clang/include/clang/Basic/riscv_sifive_vector.td",
      "new_id": "89e644a078682d48ec946d1f605b3b2cf20e787a",
      "new_mode": 33188,
      "new_path": "clang/include/clang/Basic/riscv_sifive_vector.td"
    },
    {
      "type": "modify",
      "old_id": "eaa2ba43885b0873f902a8ae34fd33bf8ecd73b0",
      "old_mode": 33188,
      "old_path": "clang/include/clang/Basic/riscv_vector_common.td",
      "new_id": "7e2d339291713aafd3796c76360a5e87bc8fff10",
      "new_mode": 33188,
      "new_path": "clang/include/clang/Basic/riscv_vector_common.td"
    },
    {
      "type": "modify",
      "old_id": "29a07f19857220499b935cfed53eb463fb44a2a8",
      "old_mode": 33188,
      "old_path": "clang/include/clang/Support/RISCVVIntrinsicUtils.h",
      "new_id": "67149f23116e06dcf3468a8a43158f36c7d83b33",
      "new_mode": 33188,
      "new_path": "clang/include/clang/Support/RISCVVIntrinsicUtils.h"
    },
    {
      "type": "modify",
      "old_id": "920d28561fc2a3e757fb2015a807de5698106abd",
      "old_mode": 33188,
      "old_path": "clang/lib/CodeGen/TargetBuiltins/RISCV.cpp",
      "new_id": "13007221a2ed24a9fd02805109674a48de0c9ff5",
      "new_mode": 33188,
      "new_path": "clang/lib/CodeGen/TargetBuiltins/RISCV.cpp"
    },
    {
      "type": "modify",
      "old_id": "4e67ad6fca262ba88f353b5b8ee155b028183d61",
      "old_mode": 33188,
      "old_path": "clang/lib/Headers/sifive_vector.h",
      "new_id": "ae01627de2d7d7e6ddf335a9c14976180b75defc",
      "new_mode": 33188,
      "new_path": "clang/lib/Headers/sifive_vector.h"
    },
    {
      "type": "modify",
      "old_id": "b5f91a318ced9970fdb6d172ca1884cb6d024e96",
      "old_mode": 33188,
      "old_path": "clang/lib/Sema/SemaRISCV.cpp",
      "new_id": "75dba8049a43c200df7a6e362bfccf7fc3e4ad53",
      "new_mode": 33188,
      "new_path": "clang/lib/Sema/SemaRISCV.cpp"
    },
    {
      "type": "modify",
      "old_id": "dad3d0dae423a361d20a94342524fc6007f6c4e1",
      "old_mode": 33188,
      "old_path": "clang/lib/Support/RISCVVIntrinsicUtils.cpp",
      "new_id": "12e209aec92ce94618effebd6a2ad1046e8b6c3a",
      "new_mode": 33188,
      "new_path": "clang/lib/Support/RISCVVIntrinsicUtils.cpp"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "d162f449d9239f72ccf8850906b50d868bf97112",
      "new_mode": 33188,
      "new_path": "clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/non-policy/non-overloaded/sf_mm_e4m3_e4m3.c"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "342af1eca65bfd9e5d213d554bbb1e2d4b98d462",
      "new_mode": 33188,
      "new_path": "clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/non-policy/non-overloaded/sf_mm_e4m3_e5m2.c"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "b8f58fe230b7697f9d294df978960aef583fd088",
      "new_mode": 33188,
      "new_path": "clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/non-policy/non-overloaded/sf_mm_e5m2_e4m3.c"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "7c2eb3227f0043a25a49d5a18bb45cd90a83394d",
      "new_mode": 33188,
      "new_path": "clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/non-policy/non-overloaded/sf_mm_e5m2_e5m2.c"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "262bc0a5cf66af335f5eddafb56dacf642a4ee92",
      "new_mode": 33188,
      "new_path": "clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/non-policy/non-overloaded/sf_mm_f_f.c"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "35c6756b8b663256755a37c5bbb5af26fc12d73a",
      "new_mode": 33188,
      "new_path": "clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/non-policy/non-overloaded/sf_mm_s_s.c"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "c142fcc19832a00efdc76ee9c117f9cdaa4e3d13",
      "new_mode": 33188,
      "new_path": "clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/non-policy/non-overloaded/sf_mm_s_u.c"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "46350e576e9f77e3c06bda7e4a14a09ae56eca8a",
      "new_mode": 33188,
      "new_path": "clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/non-policy/non-overloaded/sf_mm_u_s.c"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "de84db50339f422e7e3273317793ac85f8551928",
      "new_mode": 33188,
      "new_path": "clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/non-policy/non-overloaded/sf_mm_u_u.c"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "2c23176aca97c85d0fa7fff4ac796142f08963f9",
      "new_mode": 33188,
      "new_path": "clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/non-policy/non-overloaded/sf_vlte16.c"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "a0422cfe2c8ce3756b276b136dda62256303d9c1",
      "new_mode": 33188,
      "new_path": "clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/non-policy/non-overloaded/sf_vlte32.c"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "e8b9552451e65cf0fdcc5bf15093a8b05881c2c8",
      "new_mode": 33188,
      "new_path": "clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/non-policy/non-overloaded/sf_vlte64.c"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "a86ccec3bd3caa082fcf993370749b9cb648b7ee",
      "new_mode": 33188,
      "new_path": "clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/non-policy/non-overloaded/sf_vlte8.c"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "32b7bce839b6e68cc8208b9f1575d857e0f29bc0",
      "new_mode": 33188,
      "new_path": "clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/non-policy/non-overloaded/sf_vsettk.c"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "0ce7c5785a22fcb6713489dda1c342f47f33cec1",
      "new_mode": 33188,
      "new_path": "clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/non-policy/non-overloaded/sf_vsettm.c"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "7b058f4667738b3004fc57bf62be267b7e5e8f55",
      "new_mode": 33188,
      "new_path": "clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/non-policy/non-overloaded/sf_vsettn.c"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "29eaec3668c4f4a45d03470ff72d877182d8f817",
      "new_mode": 33188,
      "new_path": "clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/non-policy/non-overloaded/sf_vsettnt.c"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "bf50e7fe527dda1d869b6c78fc9939d9b7737255",
      "new_mode": 33188,
      "new_path": "clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/non-policy/non-overloaded/sf_vste16.c"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "d1d7191f2b11dd47a948340b12d42c18bc378b5d",
      "new_mode": 33188,
      "new_path": "clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/non-policy/non-overloaded/sf_vste32.c"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "4c7d4b18b30f9d8346bcf30ceb53504526dca5f6",
      "new_mode": 33188,
      "new_path": "clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/non-policy/non-overloaded/sf_vste64.c"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "d03bc61c49f903ab0dbce2a88dc7457f755f8fe0",
      "new_mode": 33188,
      "new_path": "clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/non-policy/non-overloaded/sf_vste8.c"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "7eef2c927934d8941a0665e1c6b49e92de7a2fa2",
      "new_mode": 33188,
      "new_path": "clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/non-policy/non-overloaded/sf_vtdiscard.c"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "37ee5033911329f086a8eb570f142b921bc413cf",
      "new_mode": 33188,
      "new_path": "clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/non-policy/non-overloaded/sf_vtmv_t_v.c"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "d127cf42173ec03b0b7b748682dffd1b5d50296d",
      "new_mode": 33188,
      "new_path": "clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/non-policy/non-overloaded/sf_vtmv_v_t.c"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "1e4de48d321a3006943ad068649d9d5cc9ba18c1",
      "new_mode": 33188,
      "new_path": "clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/non-policy/non-overloaded/sf_vtzero_t.c"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "2f6c4dc324d6033b6da084bd5fda3043d3835c16",
      "new_mode": 33188,
      "new_path": "clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/non-policy/overloaded/sf_mm_e4m3_e4m3.c"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "40ae780d6c46109c3cba965752cb9b6c6623ec93",
      "new_mode": 33188,
      "new_path": "clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/non-policy/overloaded/sf_mm_e4m3_e5m2.c"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "f4f024cbd09886e006d7692b90b1fac800fd9223",
      "new_mode": 33188,
      "new_path": "clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/non-policy/overloaded/sf_mm_e5m2_e4m3.c"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "01399d5d81d395a786c4005eb561c4997a1fac32",
      "new_mode": 33188,
      "new_path": "clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/non-policy/overloaded/sf_mm_e5m2_e5m2.c"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "2371e4ec24fc9f53dfe25ee14e40457177b22111",
      "new_mode": 33188,
      "new_path": "clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/non-policy/overloaded/sf_mm_f_f.c"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "2d34f7d05060a5cdab99d1da7b002a8a2d83ea32",
      "new_mode": 33188,
      "new_path": "clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/non-policy/overloaded/sf_mm_s_s.c"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "1f9bc33412871ab4ddb097e8c9de556c1f9ac8a4",
      "new_mode": 33188,
      "new_path": "clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/non-policy/overloaded/sf_mm_s_u.c"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "2c6d538821fb293f0509c160138b183f0b9cefbf",
      "new_mode": 33188,
      "new_path": "clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/non-policy/overloaded/sf_mm_u_s.c"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "bb1eaf19b04dae15f49114c58005e9443cbf844b",
      "new_mode": 33188,
      "new_path": "clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/non-policy/overloaded/sf_mm_u_u.c"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "e199c1fb35041af3e12a514601185aeb3513ec26",
      "new_mode": 33188,
      "new_path": "clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/non-policy/overloaded/sf_vlte16.c"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "388884d91f0d083b1580c40a7c6c3fb52e6378e6",
      "new_mode": 33188,
      "new_path": "clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/non-policy/overloaded/sf_vlte32.c"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "80d7542f105859b7259ab2ca2a42ffb130de0b72",
      "new_mode": 33188,
      "new_path": "clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/non-policy/overloaded/sf_vlte64.c"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "c29bf933cf85c7d21ab202c884f5ea0d354e07fe",
      "new_mode": 33188,
      "new_path": "clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/non-policy/overloaded/sf_vlte8.c"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "e1fff6c95ce030700983ad30a9c7e2247adf9ca4",
      "new_mode": 33188,
      "new_path": "clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/non-policy/overloaded/sf_vste16.c"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "0c3bc4ce959128ec295dc64e32ec49ff8097aaa5",
      "new_mode": 33188,
      "new_path": "clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/non-policy/overloaded/sf_vste32.c"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "0a568073e1ab98bd33518cd5ba93b824e052149b",
      "new_mode": 33188,
      "new_path": "clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/non-policy/overloaded/sf_vste64.c"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "3115945796ba000d691711fe222a4d3d85d04fee",
      "new_mode": 33188,
      "new_path": "clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/non-policy/overloaded/sf_vste8.c"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "2461c39c64c564b0e11b3d5402860fde9a404fda",
      "new_mode": 33188,
      "new_path": "clang/test/CodeGen/RISCV/rvv-intrinsics-sifive/non-policy/overloaded/sf_vtmv_t_v.c"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "7e055dd70c4b1b3b7f9a6f0b47bff9aff7c1965a",
      "new_mode": 33188,
      "new_path": "clang/test/Sema/sifive-xsfmm.c"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "96d8e0d2a6b1ded7d2350bf51d7a8a17a94edc13",
      "new_mode": 33188,
      "new_path": "clang/test/Sema/sifive_sf_vset_invalid.c"
    },
    {
      "type": "modify",
      "old_id": "74f29ac43ac40103ca57147c30efaff263282e38",
      "old_mode": 33188,
      "old_path": "clang/utils/TableGen/RISCVVEmitter.cpp",
      "new_id": "c316dfd30d9bfaadd0e862c3137f3f91edad4717",
      "new_mode": 33188,
      "new_path": "clang/utils/TableGen/RISCVVEmitter.cpp"
    }
  ]
}
