)]}'
{
  "commit": "45daa4fdc68f5faa5bd5c33da052d2415cd88540",
  "tree": "21326d7b1059d2828bb7a93c0e1d5a48be610d99",
  "parents": [
    "d90159add4140d6f4994f5767fa6ef31cc28897b"
  ],
  "author": {
    "name": "Valentin Clement (バレンタイン クレメン)",
    "email": "clementval@gmail.com",
    "time": "Fri May 17 09:37:53 2024 -0700"
  },
  "committer": {
    "name": "GitHub",
    "email": "noreply@github.com",
    "time": "Fri May 17 09:37:53 2024 -0700"
  },
  "message": "[flang][cuda] Move CUDA Fortran operations to a CUF dialect (#92317)\n\nThe number of operations dedicated to CUF grew and where all still in\r\nFIR. In order to have a better organization, the CUF operations,\r\nattributes and code is moved into their specific dialect and files. CUF\r\ndialect is tightly coupled with HLFIR/FIR and their types.\r\n\r\nThe CUF attributes are bundled into their own library since some\r\nHLFIR/FIR operations depend on them and the CUF dialect depends on the\r\nFIR types. Without having the attributes into a separate library there\r\nwould be a dependency cycle.",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "d70d3268acac13dcfa3d48c8fc1dc6954368c26a",
      "old_mode": 33188,
      "old_path": "flang/include/flang/Lower/ConvertVariable.h",
      "new_id": "515f4695951b43c4007a8373ccbf5829a123e2bd",
      "new_mode": 33188,
      "new_path": "flang/include/flang/Lower/ConvertVariable.h"
    },
    {
      "type": "modify",
      "old_id": "0d650f830b64e07af24ea1cf9553c9fb2baa1523",
      "old_mode": 33188,
      "old_path": "flang/include/flang/Optimizer/Builder/FIRBuilder.h",
      "new_id": "287730ef2ac85b2e4e8ac65e4b501c8e08db5b36",
      "new_mode": 33188,
      "new_path": "flang/include/flang/Optimizer/Builder/FIRBuilder.h"
    },
    {
      "type": "modify",
      "old_id": "6cc8e71b3b18dad27813605a39a2ea726ff02cca",
      "old_mode": 33188,
      "old_path": "flang/include/flang/Optimizer/Builder/HLFIRTools.h",
      "new_id": "43aa1661550ec8c227ea39cc301cbbb48e1ec0c4",
      "new_mode": 33188,
      "new_path": "flang/include/flang/Optimizer/Builder/HLFIRTools.h"
    },
    {
      "type": "modify",
      "old_id": "f00993d4d377804c28fd7acb1776c2cd0ab52f58",
      "old_mode": 33188,
      "old_path": "flang/include/flang/Optimizer/Dialect/CMakeLists.txt",
      "new_id": "301a93c1fe5b4499a170e02e45d865de18754e1f",
      "new_mode": 33188,
      "new_path": "flang/include/flang/Optimizer/Dialect/CMakeLists.txt"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "bae7fe3484f4edb7f737315aa02052829ad48880",
      "new_mode": 33188,
      "new_path": "flang/include/flang/Optimizer/Dialect/CUF/Attributes/CMakeLists.txt"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "f32e39b543e3f7484b2f5ed6974e8caceebdf4dd",
      "new_mode": 33188,
      "new_path": "flang/include/flang/Optimizer/Dialect/CUF/Attributes/CUFAttr.h"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "8e2b5467252715af2f98429c88787e653f078c9c",
      "new_mode": 33188,
      "new_path": "flang/include/flang/Optimizer/Dialect/CUF/Attributes/CUFAttr.td"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "07490c7b9ca2c8584376fbdf4d634f1bb1047e4a",
      "new_mode": 33188,
      "new_path": "flang/include/flang/Optimizer/Dialect/CUF/CMakeLists.txt"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "cf562b2268355274c274facada8cb7224987d3f3",
      "new_mode": 33188,
      "new_path": "flang/include/flang/Optimizer/Dialect/CUF/CUFDialect.h"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "df866e5664068a4f072a2953cff242c201bcd531",
      "new_mode": 33188,
      "new_path": "flang/include/flang/Optimizer/Dialect/CUF/CUFDialect.td"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "4132db672e394d1e1cbac749d4baaf2f069b1893",
      "new_mode": 33188,
      "new_path": "flang/include/flang/Optimizer/Dialect/CUF/CUFOps.h"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "72157bce4f768a4fa4535ff2dffd1e079ba8fe54",
      "new_mode": 33188,
      "new_path": "flang/include/flang/Optimizer/Dialect/CUF/CUFOps.td"
    },
    {
      "type": "modify",
      "old_id": "f8b3fb861cc62f51804eefa96e56f8ea75ebb24f",
      "old_mode": 33188,
      "old_path": "flang/include/flang/Optimizer/Dialect/FIRAttr.td",
      "new_id": "989319ff3ddaffe7b415459fff0565b9aeae3c6f",
      "new_mode": 33188,
      "new_path": "flang/include/flang/Optimizer/Dialect/FIRAttr.td"
    },
    {
      "type": "modify",
      "old_id": "016ad0433ed84789eb40da3fb5684d9088f6a447",
      "old_mode": 33188,
      "old_path": "flang/include/flang/Optimizer/Dialect/FIROps.h",
      "new_id": "9f07364ddb6279f9ea7cd672be4d08c8c6ec2719",
      "new_mode": 33188,
      "new_path": "flang/include/flang/Optimizer/Dialect/FIROps.h"
    },
    {
      "type": "modify",
      "old_id": "64c5e360b28f7935d93370736e1b53f84c28bdf1",
      "old_mode": 33188,
      "old_path": "flang/include/flang/Optimizer/Dialect/FIROps.td",
      "new_id": "d9c11490400661ab8df93facd90f087a22bdd002",
      "new_mode": 33188,
      "new_path": "flang/include/flang/Optimizer/Dialect/FIROps.td"
    },
    {
      "type": "modify",
      "old_id": "46b62d8de8d3799dc96f8e25291f1699cede4b04",
      "old_mode": 33188,
      "old_path": "flang/include/flang/Optimizer/Dialect/FIROpsSupport.h",
      "new_id": "b68a39bf374bd7ce3de98c6f29123c1aa221e1ed",
      "new_mode": 33188,
      "new_path": "flang/include/flang/Optimizer/Dialect/FIROpsSupport.h"
    },
    {
      "type": "modify",
      "old_id": "376417e3c35315c80585bcc5028276eb59113ab7",
      "old_mode": 33188,
      "old_path": "flang/include/flang/Optimizer/HLFIR/HLFIROps.td",
      "new_id": "b537d9e11ef80b83fef8be8225c76c85890fe246",
      "new_mode": 33188,
      "new_path": "flang/include/flang/Optimizer/HLFIR/HLFIROps.td"
    },
    {
      "type": "modify",
      "old_id": "9f4c4ed28a4aeca275ee2be4a54affcba81ea563",
      "old_mode": 33188,
      "old_path": "flang/include/flang/Optimizer/Support/InitFIR.h",
      "new_id": "48cc1cbc645684a1e575cac4d1fad783a630c47c",
      "new_mode": 33188,
      "new_path": "flang/include/flang/Optimizer/Support/InitFIR.h"
    },
    {
      "type": "modify",
      "old_id": "2da6f24da40e93f7fbf5d8eb0f824727cd7d295b",
      "old_mode": 33188,
      "old_path": "flang/include/flang/Optimizer/Support/Utils.h",
      "new_id": "d8bcb5fae034dee0a70407b791100572ebb6c5b5",
      "new_mode": 33188,
      "new_path": "flang/include/flang/Optimizer/Support/Utils.h"
    },
    {
      "type": "modify",
      "old_id": "a701c264bc4c22a0f6fa36eac14a07657cc70f8f",
      "old_mode": 33188,
      "old_path": "flang/lib/Frontend/CMakeLists.txt",
      "new_id": "f85665d114299980f1beb42a756eca96712fcbbe",
      "new_mode": 33188,
      "new_path": "flang/lib/Frontend/CMakeLists.txt"
    },
    {
      "type": "modify",
      "old_id": "a1957c0eb1bb7eb9f55ad29e6b71ef3da6c284c5",
      "old_mode": 33188,
      "old_path": "flang/lib/Lower/Allocatable.cpp",
      "new_id": "61f4bbd856a8a23c4927c8d489f03ec9dc627256",
      "new_mode": 33188,
      "new_path": "flang/lib/Lower/Allocatable.cpp"
    },
    {
      "type": "modify",
      "old_id": "afbc1122de868f318fd0175a0fa850ba0feafed9",
      "old_mode": 33188,
      "old_path": "flang/lib/Lower/Bridge.cpp",
      "new_id": "4a29c6b8fae78d844384094139497941c78ccbea",
      "new_mode": 33188,
      "new_path": "flang/lib/Lower/Bridge.cpp"
    },
    {
      "type": "modify",
      "old_id": "1546409752e7812759fff2cd2b67d97b8089ab86",
      "old_mode": 33188,
      "old_path": "flang/lib/Lower/CMakeLists.txt",
      "new_id": "ba6622d8504a4f1877c71b0426a2647ea129c61d",
      "new_mode": 33188,
      "new_path": "flang/lib/Lower/CMakeLists.txt"
    },
    {
      "type": "modify",
      "old_id": "c1f54ad392879942ff148d25beb3847f96be6caa",
      "old_mode": 33188,
      "old_path": "flang/lib/Lower/CallInterface.cpp",
      "new_id": "cfbb7c7f6b4f4e1a829b10168603b6bda1f5969e",
      "new_mode": 33188,
      "new_path": "flang/lib/Lower/CallInterface.cpp"
    },
    {
      "type": "modify",
      "old_id": "c6bfe359216995a26e8e775329244c7705d3b00b",
      "old_mode": 33188,
      "old_path": "flang/lib/Lower/ConvertCall.cpp",
      "new_id": "7ec719a2cb9ecfef4d85024228ed2558366bb61c",
      "new_mode": 33188,
      "new_path": "flang/lib/Lower/ConvertCall.cpp"
    },
    {
      "type": "modify",
      "old_id": "5ddd8a6a9d41f2e65d4657d76febc11188d8888e",
      "old_mode": 33188,
      "old_path": "flang/lib/Lower/ConvertVariable.cpp",
      "new_id": "b8868161fa05075f275e35072845b3dc451df2d7",
      "new_mode": 33188,
      "new_path": "flang/lib/Lower/ConvertVariable.cpp"
    },
    {
      "type": "modify",
      "old_id": "bd018d7f015b8681bf2066bc5896f45b7fe16cf3",
      "old_mode": 33188,
      "old_path": "flang/lib/Optimizer/Builder/FIRBuilder.cpp",
      "new_id": "3c3fd02d7c88e86e67e4b3c709338ebdc6f280e5",
      "new_mode": 33188,
      "new_path": "flang/lib/Optimizer/Builder/FIRBuilder.cpp"
    },
    {
      "type": "modify",
      "old_id": "8fdab2a571812d992d82ec37fbb89f815bc2db22",
      "old_mode": 33188,
      "old_path": "flang/lib/Optimizer/Builder/HLFIRTools.cpp",
      "new_id": "511585dc768946d8beaf0765d38f1b848d1f2da2",
      "new_mode": 33188,
      "new_path": "flang/lib/Optimizer/Builder/HLFIRTools.cpp"
    },
    {
      "type": "modify",
      "old_id": "745439b7e1e5e874537d09cb5dd32cb19c7132e5",
      "old_mode": 33188,
      "old_path": "flang/lib/Optimizer/Dialect/CMakeLists.txt",
      "new_id": "a8235f841b879d12582eff319beea907a044630a",
      "new_mode": 33188,
      "new_path": "flang/lib/Optimizer/Dialect/CMakeLists.txt"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "81db40f3ba466d56ecb16d772e86f54af08ea813",
      "new_mode": 33188,
      "new_path": "flang/lib/Optimizer/Dialect/CUF/Attributes/CMakeLists.txt"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "52c733dcad6f02c7cfaf989170969878fa2a1755",
      "new_mode": 33188,
      "new_path": "flang/lib/Optimizer/Dialect/CUF/Attributes/CUFAttr.cpp"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "d5ce5e0a7614dbe05f3eab956604f4967730819b",
      "new_mode": 33188,
      "new_path": "flang/lib/Optimizer/Dialect/CUF/CMakeLists.txt"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "47d3636df4f9f727dc8ea2b66b9b5e5150cc292e",
      "new_mode": 33188,
      "new_path": "flang/lib/Optimizer/Dialect/CUF/CUFDialect.cpp"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "870652c72fab78d72577dba5bf74154494de2f7a",
      "new_mode": 33188,
      "new_path": "flang/lib/Optimizer/Dialect/CUF/CUFOps.cpp"
    },
    {
      "type": "modify",
      "old_id": "9ea3a0568f6916745907e408717c394fbf71a147",
      "old_mode": 33188,
      "old_path": "flang/lib/Optimizer/Dialect/FIRAttr.cpp",
      "new_id": "2faba63dfba0739582dc9414b0a6ca8e6c8892fa",
      "new_mode": 33188,
      "new_path": "flang/lib/Optimizer/Dialect/FIRAttr.cpp"
    },
    {
      "type": "modify",
      "old_id": "4d1e8cd1405afef32b22af53383e14c0f438dda9",
      "old_mode": 33188,
      "old_path": "flang/lib/Optimizer/Dialect/FIRDialect.cpp",
      "new_id": "4b1dadaac6728acbad2db30a55319e33df45428d",
      "new_mode": 33188,
      "new_path": "flang/lib/Optimizer/Dialect/FIRDialect.cpp"
    },
    {
      "type": "modify",
      "old_id": "edf7f7f4b1a966e004ce81c1b2b8929736839fa3",
      "old_mode": 33188,
      "old_path": "flang/lib/Optimizer/Dialect/FIROps.cpp",
      "new_id": "94113da9a46cf9d53e820b468264a692cf3e41cc",
      "new_mode": 33188,
      "new_path": "flang/lib/Optimizer/Dialect/FIROps.cpp"
    },
    {
      "type": "modify",
      "old_id": "dc9e080b0f8be45f758dda33296727e05751f5bf",
      "old_mode": 33188,
      "old_path": "flang/lib/Optimizer/HLFIR/IR/CMakeLists.txt",
      "new_id": "267d6469ee7abb2d0ac3d5c43012294690afe56f",
      "new_mode": 33188,
      "new_path": "flang/lib/Optimizer/HLFIR/IR/CMakeLists.txt"
    },
    {
      "type": "modify",
      "old_id": "c232ae165d4c8867ad777bb665d512481984d884",
      "old_mode": 33188,
      "old_path": "flang/lib/Optimizer/HLFIR/IR/HLFIROps.cpp",
      "new_id": "11196353b07c78be57db0045dd6e0402d377c6c2",
      "new_mode": 33188,
      "new_path": "flang/lib/Optimizer/HLFIR/IR/HLFIROps.cpp"
    },
    {
      "type": "modify",
      "old_id": "ad569ce3b41f170be898f8722c6f52a1a439f685",
      "old_mode": 33188,
      "old_path": "flang/lib/Optimizer/HLFIR/Transforms/CMakeLists.txt",
      "new_id": "fa3a59303137ffdeea2a66fad3e792b9307cadb0",
      "new_mode": 33188,
      "new_path": "flang/lib/Optimizer/HLFIR/Transforms/CMakeLists.txt"
    },
    {
      "type": "modify",
      "old_id": "3570e0011ca7e6b044d8f3868a21d2e5d962c3b5",
      "old_mode": 33188,
      "old_path": "flang/lib/Optimizer/HLFIR/Transforms/ConvertToFIR.cpp",
      "new_id": "e56595d1c8e232638633c551c4de219aaeb27589",
      "new_mode": 33188,
      "new_path": "flang/lib/Optimizer/HLFIR/Transforms/ConvertToFIR.cpp"
    },
    {
      "type": "modify",
      "old_id": "5a12e3c1a4bf2071cba3ff59008a44f1742353c5",
      "old_mode": 33188,
      "old_path": "flang/test/Fir/cuf-invalid.fir",
      "new_id": "6e18e48ac82fc53b584c2feaa7f092b35349c8ac",
      "new_mode": 33188,
      "new_path": "flang/test/Fir/cuf-invalid.fir"
    },
    {
      "type": "modify",
      "old_id": "8e2346def43ea826cd6ef36cc88d3b361d5873d5",
      "old_mode": 33188,
      "old_path": "flang/test/Fir/cuf.mlir",
      "new_id": "188044d04b8481f2874da9efab2947bbc368d4da",
      "new_mode": 33188,
      "new_path": "flang/test/Fir/cuf.mlir"
    },
    {
      "type": "modify",
      "old_id": "eff5f13669e904ce9eb80e8dbeb2f0795a27af6d",
      "old_mode": 33188,
      "old_path": "flang/test/Lower/CUDA/cuda-allocatable.cuf",
      "new_id": "74a3ec100a8f2e2b94f27ba441d08112e0477eb9",
      "new_mode": 33188,
      "new_path": "flang/test/Lower/CUDA/cuda-allocatable.cuf"
    },
    {
      "type": "modify",
      "old_id": "3eb42a6a5d40fb745020a2bd16c1e9bf5c0c7779",
      "old_mode": 33188,
      "old_path": "flang/test/Lower/CUDA/cuda-data-attribute.cuf",
      "new_id": "f7f58a43a14393726dd3ce975eef852ced4841cd",
      "new_mode": 33188,
      "new_path": "flang/test/Lower/CUDA/cuda-data-attribute.cuf"
    },
    {
      "type": "modify",
      "old_id": "0a2608639bce7c62b99ea8acc17e9d53752a3a15",
      "old_mode": 33188,
      "old_path": "flang/test/Lower/CUDA/cuda-data-transfer.cuf",
      "new_id": "084314ed63ecd82416e7586c99ddc889376988b8",
      "new_mode": 33188,
      "new_path": "flang/test/Lower/CUDA/cuda-data-transfer.cuf"
    },
    {
      "type": "modify",
      "old_id": "7e28fbb2231a2dccccefa18f33ad07ac9e93bf9b",
      "old_mode": 33188,
      "old_path": "flang/test/Lower/CUDA/cuda-kernel-calls.cuf",
      "new_id": "82d1a61f8e157c724350ad5d44238c41fa2d7e07",
      "new_mode": 33188,
      "new_path": "flang/test/Lower/CUDA/cuda-kernel-calls.cuf"
    },
    {
      "type": "modify",
      "old_id": "e1cc35772618acf79717e5f5360337a9c51e7f4f",
      "old_mode": 33188,
      "old_path": "flang/test/Lower/CUDA/cuda-kernel-loop-directive.cuf",
      "new_id": "89de367b723f5bf6778dafa11c1daeb15276adaa",
      "new_mode": 33188,
      "new_path": "flang/test/Lower/CUDA/cuda-kernel-loop-directive.cuf"
    },
    {
      "type": "modify",
      "old_id": "ae5bf63d2da49b35ad4cce7b6b5bc08af2496810",
      "old_mode": 33188,
      "old_path": "flang/test/Lower/CUDA/cuda-mod.cuf",
      "new_id": "f03e72e94780ff5e797ab0765bb179d2bc4fb261",
      "new_mode": 33188,
      "new_path": "flang/test/Lower/CUDA/cuda-mod.cuf"
    },
    {
      "type": "modify",
      "old_id": "47d3805065a5a7d8329fa705c52df0472ca98938",
      "old_mode": 33188,
      "old_path": "flang/test/Lower/CUDA/cuda-module-use.cuf",
      "new_id": "130fefab24d90ba362c2772bfacf3fcfc2953b4a",
      "new_mode": 33188,
      "new_path": "flang/test/Lower/CUDA/cuda-module-use.cuf"
    },
    {
      "type": "modify",
      "old_id": "d9765f6cd2fe8cd3888377850c99507df49ef295",
      "old_mode": 33188,
      "old_path": "flang/test/Lower/CUDA/cuda-proc-attribute.cuf",
      "new_id": "f8b8dd8e296b4318a4c4628acfce8845767aa71d",
      "new_mode": 33188,
      "new_path": "flang/test/Lower/CUDA/cuda-proc-attribute.cuf"
    },
    {
      "type": "modify",
      "old_id": "f21fa3b7bae350c24f3b08811e33100d83622283",
      "old_mode": 33188,
      "old_path": "flang/tools/bbc/CMakeLists.txt",
      "new_id": "9410fd005660066a92dee91cde076b305a14df85",
      "new_mode": 33188,
      "new_path": "flang/tools/bbc/CMakeLists.txt"
    },
    {
      "type": "modify",
      "old_id": "43b0c74696f57e80a0110e1d6dcbbcac90a5b0f6",
      "old_mode": 33188,
      "old_path": "flang/tools/fir-opt/CMakeLists.txt",
      "new_id": "43679a9d5357824ee38ab401aa9e76cd600513bb",
      "new_mode": 33188,
      "new_path": "flang/tools/fir-opt/CMakeLists.txt"
    },
    {
      "type": "modify",
      "old_id": "6d83353b4e0d4c70080cea94e229d273b0ffc251",
      "old_mode": 33188,
      "old_path": "flang/tools/tco/CMakeLists.txt",
      "new_id": "808219ac361f2add21db66a9cfcf9112fc3df606",
      "new_mode": 33188,
      "new_path": "flang/tools/tco/CMakeLists.txt"
    },
    {
      "type": "modify",
      "old_id": "9c165d998e2e11ab21fabc6a6afb7e795b08eb41",
      "old_mode": 33188,
      "old_path": "flang/unittests/Optimizer/CMakeLists.txt",
      "new_id": "7299e3ee0529a9a4a8bc4b8172d174e241e257ba",
      "new_mode": 33188,
      "new_path": "flang/unittests/Optimizer/CMakeLists.txt"
    },
    {
      "type": "modify",
      "old_id": "f5f559ef887c8594095553c740d21c3d45dc057a",
      "old_mode": 33188,
      "old_path": "flang/unittests/Optimizer/FortranVariableTest.cpp",
      "new_id": "87efb624735cfd05c75a8a52b201ed25f7630b1f",
      "new_mode": 33188,
      "new_path": "flang/unittests/Optimizer/FortranVariableTest.cpp"
    }
  ]
}
