)]}'
{
  "commit": "4d9479fa8f4e949bc4c5768477cd36687c1c6b29",
  "tree": "b08a3cdba448e3185d1a333d096cc02d2531a68f",
  "parents": [
    "b3a6d434a7051d879718ef92a4fafd1697759aed"
  ],
  "author": {
    "name": "Andre Kuhlenschmidt",
    "email": "andre.kuhlenschmidt@gmail.com",
    "time": "Fri May 09 11:12:24 2025 -0700"
  },
  "committer": {
    "name": "GitHub",
    "email": "noreply@github.com",
    "time": "Fri May 09 11:12:24 2025 -0700"
  },
  "message": "[flang][openacc] Allow open acc routines from other modules. (#136012)\n\nOpenACC routines annotations in separate compilation units currently get\nignored, which leads to errors in compilation. There are two reason for\ncurrently ignoring open acc routine information and this PR is\naddressing both.\n- The module file reader doesn\u0027t read back in openacc directives from\nmodule files.\n  - Simple fix in `flang/lib/Semantics/mod-file.cpp`\n- The lowering to HLFIR doesn\u0027t generate routine directives for symbols\nimported from other modules that are openacc routines.\n- This is the majority of this diff, and is address by the changes that\nstart in `flang/lib/Lower/CallInterface.cpp`.",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "0d7038a7fd8564041743c772ae36fdf6242e6a44",
      "old_mode": 33188,
      "old_path": "flang/include/flang/Lower/OpenACC.h",
      "new_id": "bbe3b01fdb29dcd3c7329c3403320ce0b7ad2a04",
      "new_mode": 33188,
      "new_path": "flang/include/flang/Lower/OpenACC.h"
    },
    {
      "type": "modify",
      "old_id": "1d997abef6deea22889f0376029ff7aa52f48e59",
      "old_mode": 33188,
      "old_path": "flang/include/flang/Semantics/symbol.h",
      "new_id": "97c1e30631840f37c101a44ff1dd46b7cb5b69b5",
      "new_mode": 33188,
      "new_path": "flang/include/flang/Semantics/symbol.h"
    },
    {
      "type": "modify",
      "old_id": "0a61f61ab8f7533ba384403c3a299aca0cfc1993",
      "old_mode": 33188,
      "old_path": "flang/lib/Lower/Bridge.cpp",
      "new_id": "43375e84f21fa24daa89c9de06346e916e4abc23",
      "new_mode": 33188,
      "new_path": "flang/lib/Lower/Bridge.cpp"
    },
    {
      "type": "modify",
      "old_id": "73e0984f0163550d2b62ee6b1bceb12d188cbeaa",
      "old_mode": 33188,
      "old_path": "flang/lib/Lower/CallInterface.cpp",
      "new_id": "676c26dbcdbeca8329e0f7262793d6fa26367528",
      "new_mode": 33188,
      "new_path": "flang/lib/Lower/CallInterface.cpp"
    },
    {
      "type": "modify",
      "old_id": "82daa05c165cb832ffbb429850872b27eb48b303",
      "old_mode": 33188,
      "old_path": "flang/lib/Lower/OpenACC.cpp",
      "new_id": "2f70041a04dde0ac3cab73ff75d0953cdcae2288",
      "new_mode": 33188,
      "new_path": "flang/lib/Lower/OpenACC.cpp"
    },
    {
      "type": "modify",
      "old_id": "12fc553518cfdc16a1a8f51ea80c459ea46a721d",
      "old_mode": 33188,
      "old_path": "flang/lib/Semantics/mod-file.cpp",
      "new_id": "3ea37ceddd05664380e7c609547a47476cfad4ec",
      "new_mode": 33188,
      "new_path": "flang/lib/Semantics/mod-file.cpp"
    },
    {
      "type": "modify",
      "old_id": "60531538e6d593b323ed75d0508195c1801a6f02",
      "old_mode": 33188,
      "old_path": "flang/lib/Semantics/resolve-directives.cpp",
      "new_id": "138749a97eb72e8b0de9ac81d779f42edc97506b",
      "new_mode": 33188,
      "new_path": "flang/lib/Semantics/resolve-directives.cpp"
    },
    {
      "type": "modify",
      "old_id": "32eb6c2c5a18879a58f919e310600be52e9021fa",
      "old_mode": 33188,
      "old_path": "flang/lib/Semantics/symbol.cpp",
      "new_id": "2118970a7bf25041f1b1ea330582633082c6487b",
      "new_mode": 33188,
      "new_path": "flang/lib/Semantics/symbol.cpp"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "36e41fc631c77d9b18d786228560f8b4546a4b8c",
      "new_mode": 33188,
      "new_path": "flang/test/Lower/OpenACC/acc-module-definition.f90"
    },
    {
      "type": "modify",
      "old_id": "2cf6bf8b2bc06d08dca5b218034bdd1c9af2ce94",
      "old_mode": 33188,
      "old_path": "flang/test/Lower/OpenACC/acc-routine-named.f90",
      "new_id": "de9784a1146cccd0188dd39785bfe969e9e9a3a8",
      "new_mode": 33188,
      "new_path": "flang/test/Lower/OpenACC/acc-routine-named.f90"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "059324230a7469ff86485e0e1e54f28383796053",
      "new_mode": 33188,
      "new_path": "flang/test/Lower/OpenACC/acc-routine-use-module.f90"
    },
    {
      "type": "modify",
      "old_id": "1170af18bc33410bd712c392f19bf9d0b97427a4",
      "old_mode": 33188,
      "old_path": "flang/test/Lower/OpenACC/acc-routine.f90",
      "new_id": "789f3a57e1f79b1ee8a86172831b133969eccc7b",
      "new_mode": 33188,
      "new_path": "flang/test/Lower/OpenACC/acc-routine.f90"
    }
  ]
}
