)]}' { "log": [ { "commit": "c709f39d730b9762a514cf7a7e198c9edd5bac90", "tree": "89731aa3e7b74f0ab5d04ce39edc2f4a38ee71c5", "parents": [ "f9348600f1521265e7db7b07ffcdb615930052ec" ], "author": { "name": "Krzysztof Parzyszek", "email": "Krzysztof.Parzyszek@amd.com", "time": "Thu Mar 28 07:52:47 2024 -0500" }, "committer": { "name": "Copybara-Service", "email": "copybara-worker@google.com", "time": "Thu Mar 28 05:54:10 2024 -0700" }, "message": "[OpenMP] Apply post-commit review comments in PR86289, NFC (#86828)\n\nFix include guard name, fix typo, add comments with OpenMP spec\nsections.\n\nGitOrigin-RevId: e8e80d07c867cadcfd82741693a04b2913904956\n" }, { "commit": "f9348600f1521265e7db7b07ffcdb615930052ec", "tree": "cb325f8c3dea03f26bd9ce54da01db837942045e", "parents": [ "540a8d1e69ad352ee5ce7bda006f5ed3284b71bb" ], "author": { "name": "Krzysztof Parzyszek", "email": "Krzysztof.Parzyszek@amd.com", "time": "Thu Mar 28 07:46:01 2024 -0500" }, "committer": { "name": "Copybara-Service", "email": "copybara-worker@google.com", "time": "Thu Mar 28 05:52:16 2024 -0700" }, "message": "[flang][OpenMP] Make several function local to OpenMP.cpp, NFC (#86726)\n\nThere were several functions, mostly reduction-related, that were only\ncalled from OpenMP.cpp. Remove them from OpenMP.h, and make them local\nin OpenMP.cpp:\n- genOpenMPReduction\n- findReductionChain\n- getConvertFromReductionOp\n- updateReduction\n- removeStoreOp\n\nAlso, move the function bodies out of the \"public\" section.\n\nGitOrigin-RevId: 79199753fd6c39aac881b9556614c5db2775dc85\n" }, { "commit": "540a8d1e69ad352ee5ce7bda006f5ed3284b71bb", "tree": "d9d394eaeb5948504f9e52d197dc3268d29378c0", "parents": [ "b2781cddd10afb1d0bc6777c48e321dcb19df9c3" ], "author": { "name": "Marc Auberer", "email": "marc.auberer@chillibits.com", "time": "Thu Mar 28 12:42:44 2024 +0100" }, "committer": { "name": "Copybara-Service", "email": "copybara-worker@google.com", "time": "Thu Mar 28 04:48:07 2024 -0700" }, "message": "[flang] Remove duplicate call to va_end() (#86865)\n\nFixes #86825\n\nGitOrigin-RevId: 9d61f7ea660bc4087763e679a7f2b87c50cca108\n" }, { "commit": "b2781cddd10afb1d0bc6777c48e321dcb19df9c3", "tree": "83d6f44df53477f1503e8f9e1b7640be6ca155bb", "parents": [ "8b7f85032eb365ee8449fb112ec9f454f219ebe6" ], "author": { "name": "Krzysztof Parzyszek", "email": "Krzysztof.Parzyszek@amd.com", "time": "Wed Mar 27 11:37:09 2024 -0500" }, "committer": { "name": "Copybara-Service", "email": "copybara-worker@google.com", "time": "Wed Mar 27 09:40:28 2024 -0700" }, "message": "[flang][OpenMP] Rename makeList overloads to make{Objects,Clauses}, NFC (#86725)\n\nReserve `makeList` to create a list given an explicit converter\nfunction.\n\nGitOrigin-RevId: 4d177435bae03551245ffdc4dfcee5345323121d\n" }, { "commit": "8b7f85032eb365ee8449fb112ec9f454f219ebe6", "tree": "b3031925ebc5c9ec55278329e973720391dbfead", "parents": [ "d8904cac28fe0bd4a5e94823ecc46bb7af01f047" ], "author": { "name": "Razvan Lupusoru", "email": "razvan.lupusoru@gmail.com", "time": "Tue Mar 26 12:52:13 2024 -0700" }, "committer": { "name": "Copybara-Service", "email": "copybara-worker@google.com", "time": "Tue Mar 26 12:56:38 2024 -0700" }, "message": "[flang][acc] Add support for lowering combined constructs (#86696)\n\nPR#80319 added support to record combined construct semantics via an\nattribute. Add lowering support for this.\n\nGitOrigin-RevId: 14e17ea1f62d9861f90a6a31e7c8a1d12bb081fc\n" }, { "commit": "d8904cac28fe0bd4a5e94823ecc46bb7af01f047", "tree": "97cfaa610acb758ef9fa29044867b67ae295d0d7", "parents": [ "1be41329828db89d7fc9e8209879e37a8315dfda" ], "author": { "name": "Peter Klausler", "email": "35819229+klausler@users.noreply.github.com", "time": "Tue Mar 26 12:41:54 2024 -0700" }, "committer": { "name": "Copybara-Service", "email": "copybara-worker@google.com", "time": "Tue Mar 26 12:45:08 2024 -0700" }, "message": "[flang] Dodge bogus GCC 13.2.0 error message in new code (#86708)\n\nRearrange some new code a little bit to avoid a bogus error message\ncoming out from GCC 13.2.0 about an uninitialized data member in a\nparser.\n\nGitOrigin-RevId: 8a84596310f5b141817c784f0b4b46a636767e6e\n" }, { "commit": "1be41329828db89d7fc9e8209879e37a8315dfda", "tree": "8239b732e222e73ea8b8bdcc0346eaea909db87e", "parents": [ "075c13ce449224c4c3bdd3b25c61f3e76aae00df" ], "author": { "name": "Krzysztof Parzyszek", "email": "Krzysztof.Parzyszek@amd.com", "time": "Tue Mar 26 13:54:26 2024 -0500" }, "committer": { "name": "Copybara-Service", "email": "copybara-worker@google.com", "time": "Tue Mar 26 11:59:29 2024 -0700" }, "message": "[flang][OpenMP] Make OpenMP clause representation language-agnostic (#86289)\n\nThe clause templates defined in ClauseT.h were originally based on\nflang\u0027s parse tree nodes. Since those representations are going to be\nreused for clang (together with the clause splitting code), it makes\nsense to separate them from flang, and instead have them based on the\nactual OpenMP spec (v5.2).\n\nThe member names in the templates follow the naming presented in the\nspec, and the representation (e.g. members) is derived from the clause\ndefinitions as described in the spec.\n\nSince the representations of some clauses has changed (while preserving\nthe information), the current code using the clauses (especially the\ncode converting parser::OmpClause to omp::Clause) needs to be adjusted.\n\nThis patch does not make any functional changes.\n\nGitOrigin-RevId: 148a55795de7ac465a8e494d5d382e100da643f6\n" }, { "commit": "075c13ce449224c4c3bdd3b25c61f3e76aae00df", "tree": "0b99f229c2ca927c52ed7e3c0cf48fc041e69fc5", "parents": [ "edc57ed5190c195b13d77e1a2a611eaaab183202" ], "author": { "name": "Peter Klausler", "email": "35819229+klausler@users.noreply.github.com", "time": "Tue Mar 26 10:11:19 2024 -0700" }, "committer": { "name": "Copybara-Service", "email": "copybara-worker@google.com", "time": "Tue Mar 26 10:17:20 2024 -0700" }, "message": "[flang] Catch impossible but necessary TBP override (#86558)\n\nAn apparent attempt to override a type-bound procedure is not allowed to\nbe interpreted as on override when the procedure is PRIVATE and the\noverride attempt appears in another module. However, if the TBP that\nwould have been overridden is a DEFERRED procedure in an abstract base\ntype, the override must take place. PRIVATE DEFERRED procedures must\ntherefore have all of their overrides appear in the same module as the\nabstract base type.\n\nGitOrigin-RevId: f4fc959c35eb862776ac2e83cb9f41aa88989e3f\n" }, { "commit": "edc57ed5190c195b13d77e1a2a611eaaab183202", "tree": "fa9f6966a7cdd6723f8633f9169022c106c81997", "parents": [ "68ac8050bf226c99d55cbf66fb0d72e6cf2fd501" ], "author": { "name": "Peter Klausler", "email": "35819229+klausler@users.noreply.github.com", "time": "Tue Mar 26 10:02:22 2024 -0700" }, "committer": { "name": "Copybara-Service", "email": "copybara-worker@google.com", "time": "Tue Mar 26 10:05:17 2024 -0700" }, "message": "[flang][NFC] Address reported \"possible missing return\" (#86523)\n\nA function uses \"if constexpr\" to consider all possible types in a\nvariant, but looks as if it can fall out without returning an\nexpression. Add a final \"else\" with a crash to make things more clear\nand to protect against unlikely future extensions of the type.\n\nFixes https://github.com/llvm/llvm-project/issues/86391.\n\nGitOrigin-RevId: f92f77521263c8f20171b62688ecc86de9c9dfa9\n" }, { "commit": "68ac8050bf226c99d55cbf66fb0d72e6cf2fd501", "tree": "ee83cfe0a352b1f7f4a2def5d0547925ecb31a1a", "parents": [ "c4770eefaf9bda716c03c042425bb51f5cc69340" ], "author": { "name": "Peter Klausler", "email": "35819229+klausler@users.noreply.github.com", "time": "Tue Mar 26 09:50:37 2024 -0700" }, "committer": { "name": "Copybara-Service", "email": "copybara-worker@google.com", "time": "Tue Mar 26 09:53:00 2024 -0700" }, "message": "[flang] Special-case handling of INTRINSIC in type-decl-stmt (#86518)\n\nFortran allows the INTRINSIC attribute to be specified with a distinct\nattribute statement, and also as part of the attribute list of a\ntype-declaration-stmt. This is an odd case (especially as the declared\ntype is mandated to be ignored if it doesn\u0027t match the type of the\nintrinsic function) that can lead to odd error messages and crashes,\nsince the rest of name resolution expects that intrinsics with explicit\ndeclarations will have been declared with INTRINSIC attribute\nstatements. Resolve by handling an \"inline\" INTRINSIC attribute as a\nspecial case while processing a type-declaration-stmt, so that\n\n real, intrinsic :: acos, asin, atan\n\nis processed exactly as if it had been\n\n intrinsic acos, asin, atan; real acos, asin, atan\n\nFixes https://github.com/llvm/llvm-project/issues/86382.\n\nGitOrigin-RevId: 8f01ecaeb8e537511718c4df123fb92633d9f73d\n" }, { "commit": "c4770eefaf9bda716c03c042425bb51f5cc69340", "tree": "4d5add748f1d829d904c162e56225ca4a7bf1f3e", "parents": [ "5f27f268100882ee5bcd3ad0dcc0ffc0ebab7134" ], "author": { "name": "Slava Zakharin", "email": "szakharin@nvidia.com", "time": "Tue Mar 26 09:47:10 2024 -0700" }, "committer": { "name": "Copybara-Service", "email": "copybara-worker@google.com", "time": "Tue Mar 26 09:50:41 2024 -0700" }, "message": "[flang][runtime] Use cuda::std::variant in the CUDA build. (#86615)\n\nAdded `FLANG_LIBCUDACXX_PATH` CMake variable to specify\ninstallation of header-only libcudacxx library.\nIf it is specified, the `\u003ccuda/std/variant\u003e` is used to provide\nimplementation of `std::variant`.\n\nGitOrigin-RevId: 7860f970666f46184ad740db48a69882d62e64fc\n" }, { "commit": "5f27f268100882ee5bcd3ad0dcc0ffc0ebab7134", "tree": "033cb603c711276109f40d586dcf35330bd8ba85", "parents": [ "5eba220fb472e9697f3d31b86b842b28183cb837" ], "author": { "name": "Peter Klausler", "email": "35819229+klausler@users.noreply.github.com", "time": "Tue Mar 26 09:40:48 2024 -0700" }, "committer": { "name": "Copybara-Service", "email": "copybara-worker@google.com", "time": "Tue Mar 26 09:47:12 2024 -0700" }, "message": "[flang] Catch non-constant targets for procedure pointer initialization (#86338)\n\nDetect attempts to use non-constant targets, including internal\nprocedures, as initializers for procedure pointers, including components\nof structure components being used as initializers.\n\nGitOrigin-RevId: 5a0382ce7ab3577630bdbb396e9ddaed8749101e\n" }, { "commit": "5eba220fb472e9697f3d31b86b842b28183cb837", "tree": "a1423480c1589f63df13e6a1e56cc24457c5bb5c", "parents": [ "9df9260695c4e0ba59f4d997b4dbc0f1d3f7e6af" ], "author": { "name": "Peter Klausler", "email": "35819229+klausler@users.noreply.github.com", "time": "Tue Mar 26 09:21:16 2024 -0700" }, "committer": { "name": "Copybara-Service", "email": "copybara-worker@google.com", "time": "Tue Mar 26 09:27:56 2024 -0700" }, "message": "[flang][runtime] Runtime support for REDUCE() (#86214)\n\nSupports the REDUCE() transformational intrinsic function of Fortran\n(see F\u00272023 16.9.173) in a manner similar to the existing support for\nSUM(), PRODUCT(), \u0026c. There are APIs for total reductions to scalar\nresults, and APIs for partial reductions that reduce the rank of the\nargument by one.\n\nThis implementation requires more functions than other reductions\nbecause the various possible types of the user-supplied OPERATION\u003d\nfunction need to be elaborated.\n\nOnce the basic API in reduce.h has been approved, later patches will\nimplement lowering.\n\nREDUCE() is primarily for completeness, not portability; only one other\nFortran compiler implements this F\u00272018 feature today, and only some\ntypes work correctly with it.\n\nGitOrigin-RevId: 3ada883f7c96e099e1a665c091751bff5f16690e\n" }, { "commit": "9df9260695c4e0ba59f4d997b4dbc0f1d3f7e6af", "tree": "5fca921e3312bf041e4e618905967f5a27374a59", "parents": [ "f2a3babdc80b06c9ac9ab3f11624e2898c5d1a40" ], "author": { "name": "Peter Klausler", "email": "35819229+klausler@users.noreply.github.com", "time": "Tue Mar 26 08:59:22 2024 -0700" }, "committer": { "name": "Copybara-Service", "email": "copybara-worker@google.com", "time": "Tue Mar 26 09:03:02 2024 -0700" }, "message": "[flang] Fix crash in name resolution (#85835)\n\nConvertToObjectEntity() returns true for use- and host-associated object\nsymbols, too. Ensure in this case that the symbol really is a\nnon-associated object.\n\nFixes https://github.com/llvm/llvm-project/issues/85776.\n\nGitOrigin-RevId: f50f0caf87d762ca1c4a0122bd29d2fc9c667113\n" }, { "commit": "f2a3babdc80b06c9ac9ab3f11624e2898c5d1a40", "tree": "d3ead3cc0ae64c3de6af7115bce02a366bdbabf9", "parents": [ "3b0c22ee54546275af598eddeba719952e74b145" ], "author": { "name": "Peter Klausler", "email": "35819229+klausler@users.noreply.github.com", "time": "Tue Mar 26 08:46:21 2024 -0700" }, "committer": { "name": "Copybara-Service", "email": "copybara-worker@google.com", "time": "Tue Mar 26 08:53:06 2024 -0700" }, "message": "[flang] Accept more unrecognized !DIR$ compiler directives (#85829)\n\nWhen encountering an unparsable !DIR$ compiler directive line, accept it\nas a whole source line and emit a warning that it is unrecognizable.\n\nFixes https://github.com/llvm/llvm-project/issues/59107,\nhttps://github.com/llvm/llvm-project/issues/82212, and\nhttps://github.com/llvm/llvm-project/issues/82654.\n\nGitOrigin-RevId: 6e261d9c37a49b19552b439712703968ea88ee2a\n" }, { "commit": "3b0c22ee54546275af598eddeba719952e74b145", "tree": "dfabafde738cb080dd5350af276985f432b11219", "parents": [ "afa67062f2f93c493e190f53c1b18e355587f734" ], "author": { "name": "Daniel Chen", "email": "cdchen@ca.ibm.com", "time": "Tue Mar 26 11:29:24 2024 -0400" }, "committer": { "name": "Copybara-Service", "email": "copybara-worker@google.com", "time": "Tue Mar 26 08:34:12 2024 -0700" }, "message": "[Flang] Support for passing procedure pointer, reference to a function that returns a procedure pointer to structure constructor. (#86533)\n\nThis PR fixes `not yet implemented: procedure pointer component in\nstructure constructor` as shown in the following test case.\n\n```\n MODULE M\n TYPE :: DT\n PROCEDURE(Fun), POINTER, NOPASS :: pp1\n END TYPE\n\n CONTAINS\n\n INTEGER FUNCTION Fun(Arg)\n INTEGER :: Arg\n Fun \u003d Arg\n END FUNCTION\n\n END MODULE\n\n PROGRAM MAIN\n USE M\n IMPLICIT NONE\n TYPE (DT) :: v2\n PROCEDURE(FUN), POINTER :: pp2\n v2 \u003d DT(pp2)\n v2 \u003d DT(bar())\n CONTAINS\n FUNCTION BAR() RESULT(res)\n PROCEDURE(FUN), POINTER :: res\n END\n END\n ```\n\nGitOrigin-RevId: 4998587e6f5f66d464ac22ad4c11fe9afd2d56ab\n" }, { "commit": "afa67062f2f93c493e190f53c1b18e355587f734", "tree": "659f152f038c4ddec4e91ca428097e13ea945206", "parents": [ "fbcd89c41d85d7b15e404f9fb3fa654d3641b2c7" ], "author": { "name": "Carlos Seo", "email": "carlos.seo@linaro.org", "time": "Tue Mar 26 10:47:18 2024 -0300" }, "committer": { "name": "Copybara-Service", "email": "copybara-worker@google.com", "time": "Tue Mar 26 06:53:14 2024 -0700" }, "message": "[Flang] Add new CHECK_MSG() function (#86576)\n\nAdded a new variant of the CHECK() function that takes a custom message\nas a parameter. This is useful for more meaninful error messages when\nthe compiler is expected to crash.\n\nFixes #78931\n\nGitOrigin-RevId: a51d13f5db08e36e0b734bc2aa9b5c4fea9cf116\n" }, { "commit": "fbcd89c41d85d7b15e404f9fb3fa654d3641b2c7", "tree": "43242c9a4735024b3bfc4081ceca6c93f1441e9d", "parents": [ "f916a9e7e3023ba683099735e5cc2c8185f59b2a" ], "author": { "name": "Slava Zakharin", "email": "szakharin@nvidia.com", "time": "Mon Mar 25 16:01:25 2024 -0700" }, "committer": { "name": "Copybara-Service", "email": "copybara-worker@google.com", "time": "Mon Mar 25 16:08:55 2024 -0700" }, "message": "[flang][runtime] Prepare enabling PRINT of integer32 for device. (#86247)\n\nThis commit adds required files into the offload build closure,\nwhich means adding RT_API_ATTRS and other markers.\n\nThe implementation does not work for CUDA yet, because of\nstd::variant,swap,reverse usage. These issues will be resolved\nseparately (e.g. by using libcudacxx header files).\nGitOrigin-RevId: 8ebf741136c66f51053315bf4f0ef828c6f66094\n" }, { "commit": "f916a9e7e3023ba683099735e5cc2c8185f59b2a", "tree": "67317a1d1ce7c46be494ef2c016aecdd09804031", "parents": [ "1eb2dea211bce722687b2b3a7c11b3769537effe" ], "author": { "name": "Valentin Clement (バレンタイン クレメン)", "email": "clementval@gmail.com", "time": "Mon Mar 25 11:53:39 2024 -0700" }, "committer": { "name": "Copybara-Service", "email": "copybara-worker@google.com", "time": "Mon Mar 25 11:58:22 2024 -0700" }, "message": "[flang][cuda] Lower simple host to device data transfer (#85960)\n\nIn CUDA Fortran data transfer can be done via assignment statements\nbetween host and device variables.\n\nThis patch introduces a `fir.cuda_data_transfer` operation that\nmaterialized the data transfer between two memory references.\n\nSimple transfer not involving descriptors from host to device are also\nlowered in this patch. When the rhs is an expression that required an\nevaluation, a temporary is created. The evaluation is done on the host\nand then the transfer is initiated.\n\nImplicit transfer when device symbol are present on the rhs is not part\nof this patch. Transfer from device to host is not part of this patch.\n\nGitOrigin-RevId: 4e6745cc4db309c0e1b5e41d4598f67763f4c096\n" }, { "commit": "1eb2dea211bce722687b2b3a7c11b3769537effe", "tree": "01d5940f681c7e407c209ea313898d49ba5d5ff8", "parents": [ "e096e4ac83095614f79175a8dcfc097ca9ac5b03" ], "author": { "name": "Krzysztof Parzyszek", "email": "Krzysztof.Parzyszek@amd.com", "time": "Mon Mar 25 09:54:04 2024 -0500" }, "committer": { "name": "Copybara-Service", "email": "copybara-worker@google.com", "time": "Mon Mar 25 08:01:06 2024 -0700" }, "message": "[flang][OpenMP] Organize `genOMP` functions in OpenMP.cpp, NFC (#86309)\n\nPut all of the genOMP functions together, organize them in two groups:\nfor declarative constructs and for other (executable) constructs.\n\nReplace visit functions for OpenMPDeclarativeConstruct and\nOpenMPConstruct from listing individual visitors for each variant\nalternative to using a single generic visitor. Essentially, going from\n```\n std::visit(\n [](foo x) { genOMP(foo); }\n [](bar x) { TODO }\n [](baz x) { genOMP(baz); }\n )\n```\nto\n```\nvoid genOMP(bar x) { // Separate visitor for an unhandled case\n TODO\n}\n\n[...]\n std::visit([\u0026](auto \u0026\u0026s) { genOMP(s); }) // generic\n```\n\nThis doesn\u0027t change any functionality, just reorganizes the functions a\nbit. The intent here is to improve the readability of this file.\n\nGitOrigin-RevId: 564035edb0e67a177fd911fc779cd64300a9b5ef\n" }, { "commit": "e096e4ac83095614f79175a8dcfc097ca9ac5b03", "tree": "064daf8a2c36bec13d5901f09bb8655b7e77bcfc", "parents": [ "2c1191a3ce73e278fe7adecb4f4aa152d724e510" ], "author": { "name": "Jie Fu", "email": "jiefu@tencent.com", "time": "Mon Mar 25 21:59:01 2024 +0800" }, "committer": { "name": "Copybara-Service", "email": "copybara-worker@google.com", "time": "Mon Mar 25 07:15:59 2024 -0700" }, "message": "[flang] Fix -Wunused-variable in BoxedProcedure.cpp (NFC)\n\nllvm-project/flang/lib/Optimizer/CodeGen/BoxedProcedure.cpp:157:12:\nerror: unused variable \u0027it\u0027 [-Werror,-Wunused-variable]\n auto it \u003d convertedTypes.try_emplace(ty, rec);\n ^\n1 error generated.\nGitOrigin-RevId: b33166472c17b51b0b70a72424c2387e95f11b2d\n" }, { "commit": "2c1191a3ce73e278fe7adecb4f4aa152d724e510", "tree": "f380112040e819bc7fcd5cd5b4f50536e8983fa7", "parents": [ "5246346915a2b677dee90fa1226c548b7cb4fb2f" ], "author": { "name": "Leandro Lupori", "email": "leandro.lupori@linaro.org", "time": "Mon Mar 25 08:48:11 2024 -0300" }, "committer": { "name": "Copybara-Service", "email": "copybara-worker@google.com", "time": "Mon Mar 25 04:50:02 2024 -0700" }, "message": "[flang][OpenMP] Allow loop iteration variables in DSA clauses (#86194)\n\nIteration variables of non-associated loops may be listed in DSA\nclauses.\n\nFixes https://github.com/llvm/llvm-project/issues/78938\n\nGitOrigin-RevId: edcf65d40c4160db0a888e801560a671b10179d2\n" }, { "commit": "5246346915a2b677dee90fa1226c548b7cb4fb2f", "tree": "2b440ba51c31b69b05eb124607cf52bc4e78805a", "parents": [ "188dec00ffe8e5dd0b0f8e46328163a7fc8b35ee" ], "author": { "name": "jeanPerier", "email": "jperier@nvidia.com", "time": "Mon Mar 25 11:31:51 2024 +0100" }, "committer": { "name": "Copybara-Service", "email": "copybara-worker@google.com", "time": "Mon Mar 25 03:37:52 2024 -0700" }, "message": "[flang][NFC] speedup BoxedProcedure for derived types with many components (#86144)\n\nThis patch speeds up the compilation time of the example in\nhttps://github.com/llvm/llvm-project/issues/76478#issuecomment-2011023289\nfrom 2 minutes with my builds to about 2 seconds.\n\nMLIR timers showed more than 98% of the time was spend in BoxedProcedure\ntrying to figure out if a type needs to be converted.\n\nThis is because walking the fir.type members is very expansive for types\ncontaining many components and/or components with many sub-components.\n\nIncrease the caching time of visited types from \"the type being visited\"\nto \"the whole pass\". Use DenseMap since it is not ok anymore to assume\nthis container will only have a few elements.\n\nGitOrigin-RevId: a0e9a8da45402eea0db71976ab78d195a7287222\n" }, { "commit": "188dec00ffe8e5dd0b0f8e46328163a7fc8b35ee", "tree": "c95278de110ed2f9a5f30a2640877e39c2ae715f", "parents": [ "67e33c7209c5c1c52e7aa8341ee2f98afa60af8a" ], "author": { "name": "AtariDreams", "email": "83477269+AtariDreams@users.noreply.github.com", "time": "Sun Mar 24 06:48:04 2024 -0400" }, "committer": { "name": "Copybara-Service", "email": "copybara-worker@google.com", "time": "Sun Mar 24 03:54:01 2024 -0700" }, "message": "[flang] Silence MSVC warning about shifts (NFC) (#83737)\n\nYes, 64-bit shifts are intended.\n\nGitOrigin-RevId: 4d69855e9d380ecb7c1f7a64c7b37258fe36f525\n" }, { "commit": "67e33c7209c5c1c52e7aa8341ee2f98afa60af8a", "tree": "c45d33c38bd44c75bfe85a8ff9f61dc6233339ab", "parents": [ "84efeab7ca3c61525ac2de3e57be877491397590" ], "author": { "name": "Valentin Clement (バレンタイン クレメン)", "email": "clementval@gmail.com", "time": "Fri Mar 22 12:56:45 2024 -0700" }, "committer": { "name": "Copybara-Service", "email": "copybara-worker@google.com", "time": "Fri Mar 22 13:03:34 2024 -0700" }, "message": "[flang][NFC] Extract FIROpConversion to its own files (#86213)\n\nThis PR extracts `FIROpConversion` and `FIROpAndTypeConversion`\ntemplated base patterns to a header file. All the functions from\nFIROpConversion that do not require the template argument are moved to a\nbase class named `ConvertFIRToLLVMPattern`.\nThis move is done so the `FIROpConversion` pattern and all its utility\nfunctions can be reused outside of the codegen pass.\n\nFor the most part the code is only moved to the new files and not\nmodified. The only update is that addition of the PatternBenefit\nargument with a default value to the constructor so it can be forwarded\nto the `ConversionPattern` ctor.\n\nThis split is done in a similar way for the `ConvertOpToLLVMPattern`\nbase pattern that is based on the `ConvertToLLVMPattern` base class in\n`mlir/include/mlir/Conversion/LLVMCommon/Pattern.h`.\n\nGitOrigin-RevId: e9639e9c0636d9e2b9591c2cdac5cac75e363e77\n" }, { "commit": "84efeab7ca3c61525ac2de3e57be877491397590", "tree": "170aece4ebf6b6397e29db5b5778101d9bf6ebf7", "parents": [ "4d8ee0c95bcc7a6555a5966662c6adae123571d6" ], "author": { "name": "jeanPerier", "email": "jperier@nvidia.com", "time": "Fri Mar 22 11:13:04 2024 +0100" }, "committer": { "name": "Copybara-Service", "email": "copybara-worker@google.com", "time": "Fri Mar 22 03:14:24 2024 -0700" }, "message": "[flang] Fix lowering of host associated cray pointee symbols (#86121)\n\nCray pointee symbols can be host associated from a module or host\nprocedure while the related cray pointer is not explicitly associated.\nThis caused the \"not yet implemented: lowering symbol to HLFIR\" to fire\nwhen lowering a reference to the cray pointee and fetching the cray\npointer.\n\nThis patch:\n- Ensures cray pointers are always instantiated when instantiating a\ncray pointee.\n- Fix internal procedure lowering to deal with cray pointee host\nassociation like it does for pointers (the lowering strategy for cray\npointee is to create a pointer that is updated with the cray pointer\nvalue before being fetched).\n\nThis should fix the bug reported in\nhttps://github.com/llvm/llvm-project/issues/85420.\n\nGitOrigin-RevId: de7a50fb88faa1dafee33f10149561936214062b\n" }, { "commit": "4d8ee0c95bcc7a6555a5966662c6adae123571d6", "tree": "5c414402a2fcf8ca6b0fdde0129b67e8b9ffca99", "parents": [ "0d14f30b51cf1254cb9103a96a8c20022786ba78" ], "author": { "name": "Slava Zakharin", "email": "szakharin@nvidia.com", "time": "Thu Mar 21 15:12:31 2024 -0700" }, "committer": { "name": "Copybara-Service", "email": "copybara-worker@google.com", "time": "Thu Mar 21 15:17:59 2024 -0700" }, "message": "[flang][runtime] Added pseudo file unit for simplified PRINT. (#86134)\n\nA file unit is emulated via a temporary buffer that accumulates\nthe output, which is printed out via std::printf at the end\nof the IO statement. This implementation will be used for the offload\ndevices.\n\nGitOrigin-RevId: 00f3454bbe04ae8cf0eeda981c439e7f97390bd4\n" }, { "commit": "0d14f30b51cf1254cb9103a96a8c20022786ba78", "tree": "ed2ab82252ba4d5941db6512710803da2745462d", "parents": [ "02ac4a03b804a746728a44e9de2717120dedd6d8" ], "author": { "name": "Krzysztof Parzyszek", "email": "Krzysztof.Parzyszek@amd.com", "time": "Thu Mar 21 15:12:43 2024 -0500" }, "committer": { "name": "Copybara-Service", "email": "copybara-worker@google.com", "time": "Thu Mar 21 13:16:15 2024 -0700" }, "message": "[flang][OpenMP] Convert processTODO and remove unused objects (#81627)\n\nRemove `ClauseIterator2` and `clauses2` from ClauseProcessor.\n\n[Clause representation 5/6]\n\nGitOrigin-RevId: 2ab106cbd428984df3dda2f6983d5f956917cb69\n" }, { "commit": "02ac4a03b804a746728a44e9de2717120dedd6d8", "tree": "0b8f95ec33d30a2e8071ee068f44b6549fc5299a", "parents": [ "4b8abde92245c4789b88046a0f05ce799f44d0cd" ], "author": { "name": "Daniel Chen", "email": "cdchen@ca.ibm.com", "time": "Thu Mar 21 13:50:40 2024 -0400" }, "committer": { "name": "Copybara-Service", "email": "copybara-worker@google.com", "time": "Thu Mar 21 10:57:08 2024 -0700" }, "message": "[Flang] Support for NULL() and procedure in structure constructor for procedure pointer component. (#85991)\n\nThis PR fixes a subset of procedure pointer component initialization in\nstructure constructor.\nIt covers\n 1. NULL()\n 2. procedure\n\n For example:\n ```\n MODULE M\n TYPE :: DT\n !PROCEDURE(Fun), POINTER, NOPASS :: pp1\n PROCEDURE(Fun), POINTER :: pp1\n END TYPE\n\n CONTAINS\n\n INTEGER FUNCTION Fun(Arg)\n class(dt) :: arg\n END FUNCTION\n\n END MODULE\n\n PROGRAM MAIN\n USE M\n IMPLICIT NONE\n TYPE (DT), PARAMETER :: v1 \u003d DT(NULL())\n TYPE (DT) :: v2\n v2 \u003d DT(fun)\n END\n ```\n\nPassing a procedure pointer itself or reference to a function that\nreturns a procedure pointer is TODO.\n\nGitOrigin-RevId: e84a985cbf4b26c10812e9bd339db9cfd037f581\n" }, { "commit": "4b8abde92245c4789b88046a0f05ce799f44d0cd", "tree": "7489b08645b868ac3fba899af0d46d4f1e3bd940", "parents": [ "3ef53856ed070285e0de03b92afc79cda76e7d60" ], "author": { "name": "Tarun Prabhu", "email": "tarun@lanl.gov", "time": "Thu Mar 21 10:22:33 2024 -0600" }, "committer": { "name": "Copybara-Service", "email": "copybara-worker@google.com", "time": "Thu Mar 21 09:26:02 2024 -0700" }, "message": "[flang][NFC] Fix header guards\n\nSome header guards conflicted with clang. Fix a few others to follow the\nconvention in the rest of the headers in flang.\n\nGitOrigin-RevId: d9f0d9a1452ed78e943423c9fbbd63674625f7f5\n" }, { "commit": "3ef53856ed070285e0de03b92afc79cda76e7d60", "tree": "72dec7112ec6c38d8288463bef710e7f32806715", "parents": [ "8fa47afa376d7d6b3609c3bcbbb57e916779f124" ], "author": { "name": "Sergio Afonso", "email": "safonsof@amd.com", "time": "Thu Mar 21 12:25:48 2024 +0000" }, "committer": { "name": "Copybara-Service", "email": "copybara-worker@google.com", "time": "Thu Mar 21 05:31:43 2024 -0700" }, "message": "Reapply \"[Flang][OpenMP][Lower] NFC: Move clause processing helpers into the ClauseProcessor (#85258)\" (#85807)\n\nThis patch contains slight modifications to the reverted PR #85258 to\navoid issues with constructs containing multiple reduction clauses,\nuncovered by a test on the gfortran testsuite.\n\nThis reverts commit 9f80444c2e669237a5c92013f1a42b91b5609012.\n\nGitOrigin-RevId: 734026347cca85cf0e242ef5f04896f55e0ac113\n" }, { "commit": "8fa47afa376d7d6b3609c3bcbbb57e916779f124", "tree": "35da7cea868aab9f297ab2e5a6ba87fa3a9f8a7a", "parents": [ "8f9e5205c20f425c045b839513e70c61bfc11975" ], "author": { "name": "Krzysztof Parzyszek", "email": "Krzysztof.Parzyszek@amd.com", "time": "Wed Mar 20 15:00:29 2024 -0500" }, "committer": { "name": "Copybara-Service", "email": "copybara-worker@google.com", "time": "Wed Mar 20 13:04:42 2024 -0700" }, "message": "[flang][Lower] Convert OMP Map and related functions to evaluate::Expr (#81626)\n\nThe related functions are `gatherDataOperandAddrAndBounds` and\n`genBoundsOps`. The former is used in OpenACC as well, and it was\nupdated to pass evaluate::Expr instead of parser objects.\n\nThe difference in the test case comes from unfolded conversions of index\nexpressions, which are explicitly of type integer(kind\u003d8).\n\nDelete now unused `findRepeatableClause2` and `findClause2`.\n\nAdd `AsGenericExpr` that takes std::optional. It already returns\noptional Expr. Making it accept an optional Expr as input would reduce\nthe number of necessary checks when handling frequent optional values in\nevaluator.\n\n[Clause representation 4/6]\n\nGitOrigin-RevId: 84115494d6475e1aea3cdd1163d3a88243b75f36\n" }, { "commit": "8f9e5205c20f425c045b839513e70c61bfc11975", "tree": "f2550cb0ec3341c64f938970d26c379168e4a6c8", "parents": [ "b77625966a529daf603317e15a58a4b5d3d18a07" ], "author": { "name": "Valentin Clement (バレンタイン クレメン)", "email": "clementval@gmail.com", "time": "Wed Mar 20 12:58:11 2024 -0700" }, "committer": { "name": "Copybara-Service", "email": "copybara-worker@google.com", "time": "Wed Mar 20 13:04:34 2024 -0700" }, "message": "[flang][cuda] Fix fir.cuda_kernel_launch assembly with no args (#85987)\n\nWhen the kernel launch has no arguments, the generated parser was\nexpecting at least a type to be present. Make the last part of the\nassemble format optional.\nAdd a run line to round-trip the output through fir-opt so we make sure\nthe IR can be parsed and printed correctly.\n\nGitOrigin-RevId: 0177a9547e588222acaf6d006747b5f7014e6fd8\n" }, { "commit": "b77625966a529daf603317e15a58a4b5d3d18a07", "tree": "76440963704c9b5f7300ec402598efa436e56838", "parents": [ "608e41b0495682da7daa9c695684911aae03c989" ], "author": { "name": "Tom Eccles", "email": "tom.eccles@arm.com", "time": "Wed Mar 20 15:47:00 2024 +0000" }, "committer": { "name": "Copybara-Service", "email": "copybara-worker@google.com", "time": "Wed Mar 20 08:49:19 2024 -0700" }, "message": "[flang][OpenMP] simplify getReductionName (#85666)\n\nRe-use fir::getTypeAsString instead of creating something new here. This\nspells integer names like i32 instead of i_32 so there is a lot of test\nchurn.\n\nGitOrigin-RevId: 3deaa77f1a25f0cdfcf23c34fac0b51293f32f9c\n" }, { "commit": "608e41b0495682da7daa9c695684911aae03c989", "tree": "be5cd0104c3570bf44142c059c6c25da6a0debcc", "parents": [ "667e18e7aba3deb0563add45ee45f8f4aeea8fd0" ], "author": { "name": "Michael Klemm", "email": "michael.klemm@amd.com", "time": "Wed Mar 20 13:47:26 2024 +0100" }, "committer": { "name": "Copybara-Service", "email": "copybara-worker@google.com", "time": "Wed Mar 20 05:58:47 2024 -0700" }, "message": "[flang][OpenMP] Compile proper `omp_lib.mod` from the `openmp/src/include` sources (#80874)\n\nThis PR changes the build system to use use the sources for the module\n`omp_lib` and the `omp_lib.h` include file from the `openmp` runtime\nproject and not from a separate copy of these files. This will greatly\nreduce potential for inconsistencies when adding features to the OpenMP\nruntime implementation.\n\nWhen the OpenMP subproject is not configured, this PR also disables the\ncorresponding LIT tests with a \"REQUIRES\" directive at the beginning of\nthe OpenMP test files.\n\n---------\n\nCo-authored-by: Valentin Clement (バレンタイン クレメン) \u003cclementval@gmail.com\u003e\nGitOrigin-RevId: fb5fd2d82f9befba9cf5152d1a0c5e6f91ee48f0\n" }, { "commit": "667e18e7aba3deb0563add45ee45f8f4aeea8fd0", "tree": "4a361f0c21cac0f92fc3757376f09ff512e23d90", "parents": [ "8c1b7ee10f4f1fa5872f59fb537539c8dd5bf669" ], "author": { "name": "Sergio Afonso", "email": "safonsof@amd.com", "time": "Wed Mar 20 11:19:38 2024 +0000" }, "committer": { "name": "Copybara-Service", "email": "copybara-worker@google.com", "time": "Wed Mar 20 04:26:22 2024 -0700" }, "message": "[MLIR][OpenMP] NFC: Uniformize OpenMP ops names (#85393)\n\nThis patch proposes the renaming of certain OpenMP dialect operations with the\ngoal of improving readability and following a uniform naming convention for\nMLIR operations and associated classes. In particular, the following operations\nare renamed:\n\n- `omp.map_info` -\u003e `omp.map.info`\n- `omp.target_update_data` -\u003e `omp.target_update`\n- `omp.ordered_region` -\u003e `omp.ordered.region`\n- `omp.cancellationpoint` -\u003e `omp.cancellation_point`\n- `omp.bounds` -\u003e `omp.map.bounds`\n- `omp.reduction.declare` -\u003e `omp.declare_reduction`\n\nAlso, the following MLIR operation classes have been renamed:\n\n- `omp::TaskLoopOp` -\u003e `omp::TaskloopOp`\n- `omp::TaskGroupOp` -\u003e `omp::TaskgroupOp`\n- `omp::DataBoundsOp` -\u003e `omp::MapBoundsOp`\n- `omp::DataOp` -\u003e `omp::TargetDataOp`\n- `omp::EnterDataOp` -\u003e `omp::TargetEnterDataOp`\n- `omp::ExitDataOp` -\u003e `omp::TargetExitDataOp`\n- `omp::UpdateDataOp` -\u003e `omp::TargetUpdateOp`\n- `omp::ReductionDeclareOp` -\u003e `omp::DeclareReductionOp`\n- `omp::WsLoopOp` -\u003e `omp::WsloopOp`\n\nGitOrigin-RevId: d84252e064b3f35aa879c10e207f77e931f351d9\n" }, { "commit": "8c1b7ee10f4f1fa5872f59fb537539c8dd5bf669", "tree": "9b5ffbeea2b1dc5990ee8353b36b2632f24b992d", "parents": [ "23a483e9cc29c7e259bebe7c0d639b05c19f052d" ], "author": { "name": "Tom Eccles", "email": "tom.eccles@arm.com", "time": "Wed Mar 20 10:35:11 2024 +0000" }, "committer": { "name": "Copybara-Service", "email": "copybara-worker@google.com", "time": "Wed Mar 20 03:37:17 2024 -0700" }, "message": "[flang][OpenMP] lower simple array reductions (#84958)\n\nThis has been tested with arrays with compile-time constant bounds.\nAllocatable arrays and arrays with non-constant bounds are not yet\nsupported. User-defined reduction functions are also not yet supported.\n\nThe design is intended to work for arrays with non-constant bounds too\nwithout a lot of extra work (mostly there are bugs in OpenMPIRBuilder I\nhaven\u0027t fixed yet).\n\nWe need some way to get these runtime bounds into the reduction init and\ncombiner regions. To keep things simple for now I opted to always box\nthe array arguments so the box can be passed as one argument and the\nlower bounds and extents read from the box. This has the disadvantage of\nresulting in fir.box_dim operations inside of the critical section. If\nthese prove to be a performance issue, we could follow OpenACC reading\nbox lower bounds and extents before the reduction and passing them as\nblock arguments to the reduction init and combiner regions. I would\nprefer to keep things simple for now.\n\nNote: this implementation only works when the HLFIR lowering is used. I\ndon\u0027t think it is worth supporting FIR-only lowering because the plan is\nfor that to be removed soon.\n\nOpenMP array reductions 6/6\nPrevious PR: https://github.com/llvm/llvm-project/pull/84957\n\nGitOrigin-RevId: 197f3ecf92b91ad1626307a17edf0761f2e4136b\n" }, { "commit": "23a483e9cc29c7e259bebe7c0d639b05c19f052d", "tree": "f2a2a3bcc2169e04428f552a4237e8c88e99d03c", "parents": [ "63bd4735e637bbaa9181645d79fe740042936e84" ], "author": { "name": "Tom Eccles", "email": "tom.eccles@arm.com", "time": "Wed Mar 20 10:09:50 2024 +0000" }, "committer": { "name": "Copybara-Service", "email": "copybara-worker@google.com", "time": "Wed Mar 20 03:14:55 2024 -0700" }, "message": "[flang][NFC] move extractSequenceType helper out of OpenACC to share code (#84957)\n\nMoving extractSequenceType to FIRType.h so that this can also be used\nfrom OpenMP.\n\nOpenMP array reductions 5/6\nPrevious PR: https://github.com/llvm/llvm-project/pull/84955\nNext PR: https://github.com/llvm/llvm-project/pull/84958\n\nGitOrigin-RevId: 3b0a426b3fbe99e128b718a4761ea30b394ce9bb\n" }, { "commit": "63bd4735e637bbaa9181645d79fe740042936e84", "tree": "fdd7680cd6e340153dec751187a1999423776641", "parents": [ "698cde2652b074badfffd85f8ccf7d86c2f6018e" ], "author": { "name": "Tom Eccles", "email": "tom.eccles@arm.com", "time": "Wed Mar 20 09:52:04 2024 +0000" }, "committer": { "name": "Copybara-Service", "email": "copybara-worker@google.com", "time": "Wed Mar 20 02:52:48 2024 -0700" }, "message": "[flang][CodeGen] Run PreCGRewrite on omp reduction declare ops (#84954)\n\nOpenMP reduction declare operations can contain FIR code which needs to\nbe lowered to LLVM. With array reductions, these regions can contain\nmore complicated operations which need PreCGRewriting. A similar extra\ncase was already needed for fir::GlobalOp.\n\nOpenMP array reductions 3/6\nPrevious PR: https://github.com/llvm/llvm-project/pull/84953\nNext PR: https://github.com/llvm/llvm-project/pull/84955\n\nGitOrigin-RevId: 1f63a56cede85bcd5f4fea3663bd3a47b801a396\n" }, { "commit": "698cde2652b074badfffd85f8ccf7d86c2f6018e", "tree": "28506a3c2dec567256b86d19580066c5c1d2be4f", "parents": [ "dafcfbb2c828719172ccc06e2c118fa62d58dc86" ], "author": { "name": "Tom Eccles", "email": "tom.eccles@arm.com", "time": "Wed Mar 20 09:47:49 2024 +0000" }, "committer": { "name": "Copybara-Service", "email": "copybara-worker@google.com", "time": "Wed Mar 20 02:52:38 2024 -0700" }, "message": "[flang] run CFG conversion on omp reduction declare ops (#84953)\n\nMost FIR passes only look for FIR operations inside of functions (either\nbecause they run only on func.func or they run on the module but iterate\nover functions internally). But there can also be FIR operations inside\nof fir.global, some OpenMP and OpenACC container operations.\n\nThis has worked so far for fir.global and OpenMP reductions because they\nonly contained very simple FIR code which doesn\u0027t need most passes to be\nlowered into LLVM IR. I am not sure how OpenACC works.\n\nIn the long run, I hope to see a more systematic approach to making sure\nthat every pass runs on all of these container operations. I will write\nan RFC for this soon.\n\nIn the meantime, this pass duplicates the CFG conversion pass to also\nrun on omp reduction operations. This is similar to how the\nAbstractResult pass is already duplicated for fir.global operations.\n\nOpenMP array reductions 2/6\nPrevious PR: https://github.com/llvm/llvm-project/pull/84952\nNext PR: https://github.com/llvm/llvm-project/pull/84954\n\n---------\n\nCo-authored-by: Mats Petersson \u003cmats.petersson@arm.com\u003e\nGitOrigin-RevId: 1f1e0948f20338961f995426c11497e8f21ceb08\n" }, { "commit": "dafcfbb2c828719172ccc06e2c118fa62d58dc86", "tree": "18f41ddbf4982f7b3a6e2efe43b7260932106191", "parents": [ "1f6e6e56ddc7438009b42e2bf12fcb6d6fe88155" ], "author": { "name": "Valentin Clement (バレンタイン クレメン)", "email": "clementval@gmail.com", "time": "Tue Mar 19 13:15:58 2024 -0700" }, "committer": { "name": "Copybara-Service", "email": "copybara-worker@google.com", "time": "Tue Mar 19 13:21:20 2024 -0700" }, "message": "[flang][cuda] Update syntax of fir.cuda_kernel_launch to match fir.call (#85814)\n\n`fir.cuda_kernel_launch` represents a call to a cuda kernel with the\nchervon syntax. Its assembly format is meant to match `fir.call`. This\npatch updates the format to match the syntax closer for args and their\ntypes.\n\nGitOrigin-RevId: 4242d15e68580d1d1f7c4d782a59e6dffb698ca8\n" }, { "commit": "1f6e6e56ddc7438009b42e2bf12fcb6d6fe88155", "tree": "769976d9605edd7cbc8e434bdcd608321044af48", "parents": [ "5ccc0fbafd6dfcb10c47a64b1b0c116c335121a8" ], "author": { "name": "harishch4", "email": "harishcse44@gmail.com", "time": "Tue Mar 19 22:46:57 2024 +0530" }, "committer": { "name": "Copybara-Service", "email": "copybara-worker@google.com", "time": "Tue Mar 19 10:21:51 2024 -0700" }, "message": "[Flang] Fix to the module procedure interface block ignoring implicit… (#85735)\n\n… of host scoping unit.\n\nFix as proposed by @thtsikas [here\n](https://github.com/llvm/llvm-project/commit/11d07d9ef618497b825badee8b4f06a48575606b#commitcomment-139798026).\n\nGitOrigin-RevId: a7eaae4ec686ddfb8f91868fc8d053b2163f7ec7\n" }, { "commit": "5ccc0fbafd6dfcb10c47a64b1b0c116c335121a8", "tree": "f46720e06300031f1c8096de019b5cfbc794749c", "parents": [ "8c70bd7978896ed0ed87cd7d5b0c4d3d6a8b130d" ], "author": { "name": "Stephen Tozer", "email": "stephen.tozer@sony.com", "time": "Tue Mar 19 14:40:46 2024 +0000" }, "committer": { "name": "Copybara-Service", "email": "copybara-worker@google.com", "time": "Tue Mar 19 07:43:58 2024 -0700" }, "message": "Reapply \"[flang] Fix cuda-option test on Darwin (#85687)\"\n\nThis commit was mistakenly reverted in place of the actual failing\ncommit prior; reapplying.\n\nThis reverts commit db4170a4f3a701a62f5c1ef2e6a30f490f107f7d.\n\nGitOrigin-RevId: 885f93d62a0a7d2955a755cdc451d394577b36e2\n" }, { "commit": "8c70bd7978896ed0ed87cd7d5b0c4d3d6a8b130d", "tree": "a3b5c0b5ec5c4359e19568d41643701607a68306", "parents": [ "2267ce56b3bab37afaf2a8a7517773b23e7eaa27" ], "author": { "name": "Stephen Tozer", "email": "stephen.tozer@sony.com", "time": "Tue Mar 19 14:37:26 2024 +0000" }, "committer": { "name": "Copybara-Service", "email": "copybara-worker@google.com", "time": "Tue Mar 19 07:41:55 2024 -0700" }, "message": "Revert \"[flang] Fix cuda-option test on Darwin (#85687)\"\n\nReverted due to buildbot failures:\nhttps://lab.llvm.org/buildbot/#/builders/139/builds/61717/\n\nThis reverts commit b4b7d988bdb48827a822d9c87fdc460dceae5cab.\n\nGitOrigin-RevId: db4170a4f3a701a62f5c1ef2e6a30f490f107f7d\n" }, { "commit": "2267ce56b3bab37afaf2a8a7517773b23e7eaa27", "tree": "f46720e06300031f1c8096de019b5cfbc794749c", "parents": [ "d83b8d7936661d13a9fc30eccc6a35ccfd3e3b79" ], "author": { "name": "Leandro Lupori", "email": "leandro.lupori@linaro.org", "time": "Tue Mar 19 11:35:52 2024 -0300" }, "committer": { "name": "Copybara-Service", "email": "copybara-worker@google.com", "time": "Tue Mar 19 07:41:47 2024 -0700" }, "message": "[flang] Fix cuda-option test on Darwin (#85687)\n\nOn Darwin, -isysroot is needed and is automatically appended to\n%flang and %flang_fc1, so use %flang_fc1 instead to have both -fc1\nand -isysroot in the expected positions and avoid errors.\n\nGitOrigin-RevId: b4b7d988bdb48827a822d9c87fdc460dceae5cab\n" }, { "commit": "d83b8d7936661d13a9fc30eccc6a35ccfd3e3b79", "tree": "a3b5c0b5ec5c4359e19568d41643701607a68306", "parents": [ "dd91b727ce1bd95b3577adfbab051bd97752d55e" ], "author": { "name": "Sergio Afonso", "email": "safonsof@amd.com", "time": "Tue Mar 19 13:25:33 2024 +0000" }, "committer": { "name": "Copybara-Service", "email": "copybara-worker@google.com", "time": "Tue Mar 19 06:32:49 2024 -0700" }, "message": "Revert \"[Flang][OpenMP][Lower] NFC: Move clause processing helpers into the ClauseProcessor (#85258)\"\n\nReverting due to failing gfortran test.\n\nThis reverts commit 2f2f16f32bb2a6c250b19adbc229d9dc3b38640c.\n\nGitOrigin-RevId: 9f80444c2e669237a5c92013f1a42b91b5609012\n" }, { "commit": "dd91b727ce1bd95b3577adfbab051bd97752d55e", "tree": "bec2b2404ecc5408f1b6ed473df5defdd406c324", "parents": [ "0899ddf2a4af788c250b8cfa6ac465ecd9e2d117" ], "author": { "name": "Sergio Afonso", "email": "safonsof@amd.com", "time": "Tue Mar 19 11:49:45 2024 +0000" }, "committer": { "name": "Copybara-Service", "email": "copybara-worker@google.com", "time": "Tue Mar 19 04:55:54 2024 -0700" }, "message": "[Flang][OpenMP][Lower] NFC: Move clause processing helpers into the ClauseProcessor (#85258)\n\nThis patch moves some code in PFT to MLIR OpenMP lowering to the\n`ClauseProcessor` class. This is so that some behavior that is related\nto certain clauses stays within the `ClauseProcessor` and it\u0027s not the\ncaller the one responsible for always doing this when the clause is\npresent.\n\nGitOrigin-RevId: 2f2f16f32bb2a6c250b19adbc229d9dc3b38640c\n" }, { "commit": "0899ddf2a4af788c250b8cfa6ac465ecd9e2d117", "tree": "a3b5c0b5ec5c4359e19568d41643701607a68306", "parents": [ "9beb6ec3bf268db5f6a4310c8b8b5b2f16707f28" ], "author": { "name": "Sergio Afonso", "email": "safonsof@amd.com", "time": "Tue Mar 19 10:45:59 2024 +0000" }, "committer": { "name": "Copybara-Service", "email": "copybara-worker@google.com", "time": "Tue Mar 19 03:48:00 2024 -0700" }, "message": "[Flang][Lower] NFC: Replace SmallVector with more suitable alternatives (#85227)\n\nIn this patch some uses of `llvm::SmallVector` in Flang\u0027s lowering to\nMLIR are replaced by other types (i.e. `llvm::ArrayRef` and\n`llvm::SmallVectorImpl`) which are intended for these uses. This\ngenerally prevents relying on always passing small vectors with a\nparticular number of elements in the stack.\n\nGitOrigin-RevId: d671ebe46ce6bb542ab81ea120751c985f3fe4a3\n" }, { "commit": "9beb6ec3bf268db5f6a4310c8b8b5b2f16707f28", "tree": "944a3cb6296d36abd9dd77045be3a88c3c6c7472", "parents": [ "da35114c867c15533b81015408e1967eae5ecfaf" ], "author": { "name": "jeanPerier", "email": "jperier@nvidia.com", "time": "Tue Mar 19 11:45:31 2024 +0100" }, "committer": { "name": "Copybara-Service", "email": "copybara-worker@google.com", "time": "Tue Mar 19 03:47:53 2024 -0700" }, "message": "[flang] Enable polymorphic lowering by default (#83285)\n\nPolymorphic entity lowering status is good. The main remaining TODO is\nto allow lowering of vector subscripted polymorphic entity, but this\ndoes not deserve blocking all application using polymorphism.\n\nRemove experimental option and enable lowering of polymorphic entity by\ndefault.\n\nGitOrigin-RevId: d0829fbdeda0a2faa8cf684e1396e579691bdfa2\n" }, { "commit": "da35114c867c15533b81015408e1967eae5ecfaf", "tree": "bbeb968151d7a8e1fbc6e12fc5e1126ac1504aae", "parents": [ "7ff58bcf8f56bbf6d47ce0b9f65203f8c8178c18" ], "author": { "name": "Sergio Afonso", "email": "safonsof@amd.com", "time": "Tue Mar 19 10:39:57 2024 +0000" }, "committer": { "name": "Copybara-Service", "email": "copybara-worker@google.com", "time": "Tue Mar 19 03:47:46 2024 -0700" }, "message": "[Flang][OpenMP] Complete and organize directive sets (#85219)\n\nThis patch adds a couple of new directive sets for composite constructs,\ncompletes some of the existing ones with missing values, refactors all*\nsets to always build on the corresponding top* set and reorders sets and\ndirectives alphabetically.\n\nNo functional change intended.\n\nGitOrigin-RevId: 9f6b6636c77ad4736c66efd0119b3be4541e9af4\n" }, { "commit": "7ff58bcf8f56bbf6d47ce0b9f65203f8c8178c18", "tree": "1c79772c42305c83875ba2b83cb927299813a41c", "parents": [ "7d6eeef74d3f22020c71b4e10c0645d4afe053ac" ], "author": { "name": "jeanPerier", "email": "jperier@nvidia.com", "time": "Tue Mar 19 11:26:36 2024 +0100" }, "committer": { "name": "Copybara-Service", "email": "copybara-worker@google.com", "time": "Tue Mar 19 03:47:37 2024 -0700" }, "message": "[flang] Lower sequence associated argument passed by descriptor (#85696)\n\nThe current lowering did not handle sequence associated argument passed\nby descriptor. This case is special because sequence association implies\nthat the actual and dummy argument need to to agree in rank and shape.\nUsually, arguments that can be sequence associated are passed by raw\naddress, and the shape mistmatch is transparent. But there are three\ncases of explicit and assumed-size arrays passed by descriptors:\n - polymorphic arguments\n - BIND(C) assumed-length arguments (F\u00272023 18.3.7 (5)).\n - length parametrized derived types (TBD)\n\nThe callee side is expecting a descriptor containing the dummy rank and\nshape. This was not the case. This patch fix that by evaluating the\ndummy shape on the caller side using the interface (that has to be\navailable when arguments are passed by descriptors).\n\nGitOrigin-RevId: 8eee236021f72821d628ec31d8e8d1f92e7821d3\n" }, { "commit": "7d6eeef74d3f22020c71b4e10c0645d4afe053ac", "tree": "d40a8cf65ab07f53efd8fd038096c3be5f4ed253", "parents": [ "ae33366d2fe43c763b4a9a3911bc50f5db50d4e3" ], "author": { "name": "Valentin Clement (バレンタイン クレメン)", "email": "clementval@gmail.com", "time": "Mon Mar 18 19:46:11 2024 -0700" }, "committer": { "name": "Copybara-Service", "email": "copybara-worker@google.com", "time": "Mon Mar 18 20:29:41 2024 -0700" }, "message": "[flang][cuda] Handle lowering of stars in cuf kernel launch parameters (#85695)\n\nParsing of the cuf kernel loop directive has been updated to handle\nvariants with the * syntax. This patch updates the lowering to make use\nof them.\n\n- If the grid or block syntax uses only stars then the operation\nvariadic operand remains empty.\n- If there is values and stars, then stars are represented as a zero\nconstant value.\n\nGitOrigin-RevId: f6a2a55ba1fe1a4b720b8760704785d12137b35e\n" }, { "commit": "ae33366d2fe43c763b4a9a3911bc50f5db50d4e3", "tree": "7e192a8d1a568294b44ddcd5ca92e461d8138faf", "parents": [ "3a2df0b53a99bcabda533909c9f7fb838dc96db8" ], "author": { "name": "Kelvin Li", "email": "kkwli@users.noreply.github.com", "time": "Mon Mar 18 21:35:56 2024 -0400" }, "committer": { "name": "Copybara-Service", "email": "copybara-worker@google.com", "time": "Mon Mar 18 18:42:32 2024 -0700" }, "message": "[flang] Diagnose calling impure final procedure due to finalization in FORALL (#85685)\n\nThis patch checks the LHS of an assignment in a FORALL loop and\ndiagnoses if any impure final procedure is called.\n\nGitOrigin-RevId: a5f576e5961ecc099bd7ccf8565da090edc84b0d\n" }, { "commit": "3a2df0b53a99bcabda533909c9f7fb838dc96db8", "tree": "9ee80e9cc649ff0ca81598612fbca4dcf403edb7", "parents": [ "95a1121118859f1ab770f8398f25c90a092e2514" ], "author": { "name": "Valentin Clement (バレンタイン クレメン)", "email": "clementval@gmail.com", "time": "Mon Mar 18 17:11:04 2024 -0700" }, "committer": { "name": "Copybara-Service", "email": "copybara-worker@google.com", "time": "Mon Mar 18 17:12:51 2024 -0700" }, "message": "[flang][cuda] Add proper TODO for cuda fortran assignment (#85705)\n\nData transfer between host and device can be done with assignment\nstatements in CUDA Fortran. This is currently not lowered so adding a\nproper TODO.\n\nhttps://docs.nvidia.com/hpc-sdk/archive/24.3/compilers/cuda-fortran-prog-guide/index.html#cfref-data-trans-assgn-statemts\n\nGitOrigin-RevId: 8a6a0f1954937341abd501529f3d7454937110a5\n" }, { "commit": "95a1121118859f1ab770f8398f25c90a092e2514", "tree": "741d135fb3678dd1b480ee26fa3868e2b5b30e01", "parents": [ "b28dca359945edc28eed03a31f6d1ed3c7c3d5f1" ], "author": { "name": "Slava Zakharin", "email": "szakharin@nvidia.com", "time": "Mon Mar 18 16:29:58 2024 -0700" }, "committer": { "name": "Copybara-Service", "email": "copybara-worker@google.com", "time": "Mon Mar 18 16:35:49 2024 -0700" }, "message": "[flang][runtime] Get rid of warnings in F18 runtime CUDA build. (#85488)\n\nGitOrigin-RevId: f4e90e3f3c02a94a17bd8fe6ad18dbb46f92d027\n" }, { "commit": "b28dca359945edc28eed03a31f6d1ed3c7c3d5f1", "tree": "e1a389317a475cc87a984bbf58a0368831e1deed", "parents": [ "ee865ccf0993d205745d21aa346b4da0bd8462ee" ], "author": { "name": "Peter Klausler", "email": "35819229+klausler@users.noreply.github.com", "time": "Mon Mar 18 14:14:41 2024 -0700" }, "committer": { "name": "Copybara-Service", "email": "copybara-worker@google.com", "time": "Mon Mar 18 14:18:43 2024 -0700" }, "message": "[flang] Fix crash on erroneous program (#85615) (#85659)\n\nReplace a pointer that should never be null with a reference argument so\nthat it\u0027s always defined.\n\nFixes https://github.com/llvm/llvm-project/issues/85615.\n\nGitOrigin-RevId: d0d9839b146692160aa3e0efed86faefde949f49\n" }, { "commit": "ee865ccf0993d205745d21aa346b4da0bd8462ee", "tree": "cf32da294e81f12ea2a1b28388ff4079ba380936", "parents": [ "2e83899739d06e65c6e9d5ff235b4195ef9e47a1" ], "author": { "name": "Peter Klausler", "email": "35819229+klausler@users.noreply.github.com", "time": "Mon Mar 18 14:13:50 2024 -0700" }, "committer": { "name": "Copybara-Service", "email": "copybara-worker@google.com", "time": "Mon Mar 18 14:18:36 2024 -0700" }, "message": "[flang] Catch inappropriate attributes for PARAMETERs (#85588)\n\nThere\u0027s several symbol attributes that cannot be applied to named\nconstants, but that weren\u0027t being checked.\n\nGitOrigin-RevId: 53e8d501e2653f416bea9ddf2687bb0aff0c9e46\n" }, { "commit": "2e83899739d06e65c6e9d5ff235b4195ef9e47a1", "tree": "6b37401a39abed3584488466c58a36e0908f0ec1", "parents": [ "67c7b3d9af1c79575c43d46bfaf21304d189d691" ], "author": { "name": "Peter Klausler", "email": "35819229+klausler@users.noreply.github.com", "time": "Mon Mar 18 14:13:02 2024 -0700" }, "committer": { "name": "Copybara-Service", "email": "copybara-worker@google.com", "time": "Mon Mar 18 14:18:27 2024 -0700" }, "message": "[flang][runtime] Round hex REAL input correctly with excess digits (#85587)\n\nExcess hexadecimal digits were too significant for rounding purposes,\nleading to inappropriate rounding away from zero for some modes.\n\nGitOrigin-RevId: 7eb5d4fc129a9b99b4dfe8f84507a08a72b55ecf\n" }, { "commit": "67c7b3d9af1c79575c43d46bfaf21304d189d691", "tree": "362534333897667830a7a25da7da83b47ac2b1f1", "parents": [ "322ca7e5ebd4a9807d97c6ac490ce49c671b0e55" ], "author": { "name": "Peter Klausler", "email": "35819229+klausler@users.noreply.github.com", "time": "Mon Mar 18 14:12:09 2024 -0700" }, "committer": { "name": "Copybara-Service", "email": "copybara-worker@google.com", "time": "Mon Mar 18 14:18:19 2024 -0700" }, "message": "[flang] Fix SCALE() folding with big scale factors (#85576)\n\nThe folding of the SCALE() intrinsic function is implemented via\nmultiplication by a power of two; this simplifies handling of\nexceptional cases. But sometimes scaling by a power of two requires an\nexponent larger or smaller than a floating-point format can represent,\nand two multiplications are required.\n\nGitOrigin-RevId: 606a997a3cb83437e1aeef9fee55144863b0ad76\n" }, { "commit": "322ca7e5ebd4a9807d97c6ac490ce49c671b0e55", "tree": "356de655fc622e5988574ac564128f72d8f82a94", "parents": [ "1e9b5f800eb27fbe5644efab75de7ea939c33415" ], "author": { "name": "Peter Klausler", "email": "35819229+klausler@users.noreply.github.com", "time": "Mon Mar 18 14:11:43 2024 -0700" }, "committer": { "name": "Copybara-Service", "email": "copybara-worker@google.com", "time": "Mon Mar 18 14:18:10 2024 -0700" }, "message": "[flang] Reduce recursion in common::visit (#85483)\n\nThis patch yields small speed-ups in compiler build and execution times,\nbut more importantly, reduces the stack depth needed in a build\nenvironment where tail call optimization does not appear to occur.\n\nGitOrigin-RevId: 0007d7eac9367d184df173a0b7450dfdaaf8a551\n" }, { "commit": "1e9b5f800eb27fbe5644efab75de7ea939c33415", "tree": "c34ba6fe253263093652747c75c3b9f18ab0e7ba", "parents": [ "5619a9110c1b84b8d6dfbe6c8ded795667be5fde" ], "author": { "name": "Valentin Clement (バレンタイン クレメン)", "email": "clementval@gmail.com", "time": "Mon Mar 18 11:17:32 2024 -0700" }, "committer": { "name": "Copybara-Service", "email": "copybara-worker@google.com", "time": "Mon Mar 18 11:23:26 2024 -0700" }, "message": "[flang][NFC] Fix include style (#85655)\n\nGitOrigin-RevId: 85d7fef6c1ea08c944c8e0eda6ea520d49e595b4\n" }, { "commit": "5619a9110c1b84b8d6dfbe6c8ded795667be5fde", "tree": "91ac95cf60aa313526c6e0237cd90a3fb7a93608", "parents": [ "2880696b034b4d61dded81cf63c3dade771d7da2" ], "author": { "name": "Kelvin Li", "email": "kkwli@users.noreply.github.com", "time": "Mon Mar 18 10:59:47 2024 -0400" }, "committer": { "name": "Copybara-Service", "email": "copybara-worker@google.com", "time": "Mon Mar 18 08:06:29 2024 -0700" }, "message": "[flang] Diagnose the impure procedure reference in finalization according to the rank of the entity (#85475)\n\nUse the rank of the array section to determine which final procedure\nwould be called in diagnosing whether that procedure is impure or not.\n\nGitOrigin-RevId: 0c21377aeafc523bd4a8c40bd27e33498f3199f7\n" }, { "commit": "2880696b034b4d61dded81cf63c3dade771d7da2", "tree": "eb6a7b34b4dc5f4a973f13239c54a081b9b98011", "parents": [ "dbd06d323d2c66e77e81e55c86c2100e4e898a5f" ], "author": { "name": "Kareem Ergawy", "email": "kareem.ergawy@amd.com", "time": "Mon Mar 18 10:44:44 2024 +0100" }, "committer": { "name": "Copybara-Service", "email": "copybara-worker@google.com", "time": "Mon Mar 18 02:48:35 2024 -0700" }, "message": "[flang][MLIR][OpenMP] Extend delayed privatization for scalar allocatables and pointers (#84740)\n\nOne more step in extending support for delayed privatization. This diff\nadds support for scalar allocatables and pointers.\n\nGitOrigin-RevId: 87cee71b3738547465481740fcbde7d73283678f\n" }, { "commit": "dbd06d323d2c66e77e81e55c86c2100e4e898a5f", "tree": "e56e83235ad038ae89ed02d8ba71f116318984e1", "parents": [ "749bf4492659b1591de9e3270b3dd4cc67133f4a" ], "author": { "name": "Slava Zakharin", "email": "szakharin@nvidia.com", "time": "Fri Mar 15 14:45:04 2024 -0700" }, "committer": { "name": "Copybara-Service", "email": "copybara-worker@google.com", "time": "Fri Mar 15 14:47:32 2024 -0700" }, "message": "[NFC][flang] Reorder const and RT_API_ATTRS.\n\nClean-up to keep the type qualifier next to the type.\n\nReviewers: klausler\n\nReviewed By: klausler\n\nPull Request: https://github.com/llvm/llvm-project/pull/85180\n\nGitOrigin-RevId: 8ebf4084f13d939eb33cd0a29d057158fa15a3a7\n" }, { "commit": "749bf4492659b1591de9e3270b3dd4cc67133f4a", "tree": "433b65d54fe981ab7cbeab81ea508508ad721eea", "parents": [ "fa42706986fc2e09fe4068bc3f3d8fcec08bc8b6" ], "author": { "name": "Krzysztof Parzyszek", "email": "Krzysztof.Parzyszek@amd.com", "time": "Fri Mar 15 16:42:06 2024 -0500" }, "committer": { "name": "Copybara-Service", "email": "copybara-worker@google.com", "time": "Fri Mar 15 14:47:25 2024 -0700" }, "message": "[flang][OpenMP] Convert DataSharingProcessor to omp::Clause (#81629)\n\n[Clause representation 6/6]\n\nGitOrigin-RevId: 037a32a9a73286cf6e1bf439c61b03767658b564\n" }, { "commit": "fa42706986fc2e09fe4068bc3f3d8fcec08bc8b6", "tree": "16c2c6323ee8ebcc522b91affe4b0bc7d6b913cd", "parents": [ "8587bd147ff3e0448f7479e463c493565a8c822d" ], "author": { "name": "Slava Zakharin", "email": "szakharin@nvidia.com", "time": "Fri Mar 15 14:41:47 2024 -0700" }, "committer": { "name": "Copybara-Service", "email": "copybara-worker@google.com", "time": "Fri Mar 15 14:47:17 2024 -0700" }, "message": "[flang][runtime] Added Fortran::common::reference_wrapper for use on device.\n\nThis is a simplified implementation of std::reference_wrapper that can be used\nin the offload builds for the device code. The methods are properly\nmarked with RT_API_ATTRS so that the device compilation succedes.\n\nReviewers: jeanPerier, klausler\n\nReviewed By: jeanPerier\n\nPull Request: https://github.com/llvm/llvm-project/pull/85178\n\nGitOrigin-RevId: d8f97c067c9488f00bfaa17086c672d1fb7106d9\n" }, { "commit": "8587bd147ff3e0448f7479e463c493565a8c822d", "tree": "f3712736b4406ede3daf60c43be99546eca68ae9", "parents": [ "84c0ba23104c1f84897a68c71a18a9ef77c4e31f" ], "author": { "name": "Slava Zakharin", "email": "szakharin@nvidia.com", "time": "Fri Mar 15 14:25:47 2024 -0700" }, "committer": { "name": "Copybara-Service", "email": "copybara-worker@google.com", "time": "Fri Mar 15 14:31:36 2024 -0700" }, "message": "[flang][runtime] Added Fortran::common::optional for use on device.\n\nThis is a simplified implementation of std::optional that can be used\nin the offload builds for the device code. The methods are properly\nmarked with RT_API_ATTRS so that the device compilation succedes.\n\nReviewers: klausler, jeanPerier\n\nReviewed By: jeanPerier\n\nPull Request: https://github.com/llvm/llvm-project/pull/85177\n\nGitOrigin-RevId: 71e0261fb0c6c382f68eedddf6bbcf637e6709f2\n" }, { "commit": "84c0ba23104c1f84897a68c71a18a9ef77c4e31f", "tree": "e60d32177bfdc48c36ea80506e17da37533df960", "parents": [ "3a38b52e722c7e7a1d4c6289dd6c6d63d59ba9a4" ], "author": { "name": "Peter Klausler", "email": "35819229+klausler@users.noreply.github.com", "time": "Fri Mar 15 13:57:42 2024 -0700" }, "committer": { "name": "Copybara-Service", "email": "copybara-worker@google.com", "time": "Fri Mar 15 14:00:18 2024 -0700" }, "message": "[flang] Parse !$CUF KERNEL DO \u003c\u003c\u003c (*) (#85338)\n\nAccept and represent asterisks within the parenthesized grid and block\nspecification lists.\n\nGitOrigin-RevId: 60fa2b0670b874b702ddb9f81d098af692ea6875\n" }, { "commit": "3a38b52e722c7e7a1d4c6289dd6c6d63d59ba9a4", "tree": "e24e06d5ef454fed361414dac4815de7f3b5b357", "parents": [ "f1a9a9b802781bdbe06b562d79243e14c879c5c4" ], "author": { "name": "Peter Klausler", "email": "35819229+klausler@users.noreply.github.com", "time": "Fri Mar 15 13:56:47 2024 -0700" }, "committer": { "name": "Copybara-Service", "email": "copybara-worker@google.com", "time": "Fri Mar 15 14:00:10 2024 -0700" }, "message": "[flang][runtime] Fix off-by-one error in EX0.0 output editing (#85428)\n\nThe maximum number of significant hexadecimal digits in EX0.0 REAL\noutput editing is 29, not 28. Fix by computing it at build time from the\nprecision of REAL(16).\n\nGitOrigin-RevId: 5e21fa23bb242d6e0575c1ca630e4d293413aed6\n" }, { "commit": "f1a9a9b802781bdbe06b562d79243e14c879c5c4", "tree": "d071dd6d2ce018353af6daa4e4a4d7591b26ad77", "parents": [ "cc2e54497de82426cf65fb5109977e5353508654" ], "author": { "name": "Slava Zakharin", "email": "szakharin@nvidia.com", "time": "Fri Mar 15 08:25:49 2024 -0700" }, "committer": { "name": "Copybara-Service", "email": "copybara-worker@google.com", "time": "Fri Mar 15 08:32:31 2024 -0700" }, "message": "[flang] Lower REAL(16) MODULO to Float128Math library call. (#85322)\n\nI did not test it through in #85005, and my assumption was wrong:\narith::RemFOp might be lowered to an fmodf128() call that does not\nexist everywhere.\nGitOrigin-RevId: 86293a7c1377d1c795961f0e73799977eeb4829a\n" }, { "commit": "cc2e54497de82426cf65fb5109977e5353508654", "tree": "3d7cf3911ba88f92f00f56a37fe43d40a04557f2", "parents": [ "f0bce4177eff2b22015fa8136a93e9e764c2c480" ], "author": { "name": "Valentin Clement (バレンタイン クレメン)", "email": "clementval@gmail.com", "time": "Fri Mar 15 07:22:22 2024 -0700" }, "committer": { "name": "Copybara-Service", "email": "copybara-worker@google.com", "time": "Fri Mar 15 07:28:36 2024 -0700" }, "message": "[flang][cuda] Lower dim3 grid z correctly on calls (#85346)\n\nGitOrigin-RevId: 65284be2992fc7c6feafc44dda7c0f00df7aacfb\n" }, { "commit": "f0bce4177eff2b22015fa8136a93e9e764c2c480", "tree": "2e894b7dd163c19f5b1627165218eef0d6497c98", "parents": [ "d3ff172b52016446e98fe09f327675e2f413a145" ], "author": { "name": "Jie Fu", "email": "jiefu@tencent.com", "time": "Fri Mar 15 20:30:05 2024 +0800" }, "committer": { "name": "Copybara-Service", "email": "copybara-worker@google.com", "time": "Fri Mar 15 05:37:21 2024 -0700" }, "message": "[flang][OpenMP] Remove unused variable (NFC)\n\nllvm-project/flang/lib/Lower/OpenMP/ClauseProcessor.cpp:97:15:\nerror: unused variable \u0027allocatorOperand\u0027 [-Werror,-Wunused-variable]\n mlir::Value allocatorOperand;\n ^\n1 error generated.\nGitOrigin-RevId: 5b5525d403f4b1e155c5fc50649b6c6d9e7d4de5\n" }, { "commit": "d3ff172b52016446e98fe09f327675e2f413a145", "tree": "4891aa7638020a52e98805a29de48b85c96da465", "parents": [ "74d96078455004e166e459ba3b5288ed8b5778c8" ], "author": { "name": "Krzysztof Parzyszek", "email": "Krzysztof.Parzyszek@amd.com", "time": "Fri Mar 15 07:04:42 2024 -0500" }, "committer": { "name": "Copybara-Service", "email": "copybara-worker@google.com", "time": "Fri Mar 15 05:06:53 2024 -0700" }, "message": "[flang][OpenMP] Convert repeatable clauses (except Map) in ClauseProc… (#81623)\n\n…essor\n\nRename `findRepeatableClause` to `findRepeatableClause2`, and make the\nnew `findRepeatableClause` operate on new `omp::Clause` objects.\n\nLeave `Map` unchanged, because it will require more changes for it to\nwork.\n\n[Clause representation 3/6]\n\nGitOrigin-RevId: 63e70c05537c54edae975c8b5449ff87444abec2\n" }, { "commit": "74d96078455004e166e459ba3b5288ed8b5778c8", "tree": "644ffa7279d895be72acbc48048528a0f0fd0e44", "parents": [ "930a84268d3ab4f660ba5d7ed9f8b22d2a0d79ed" ], "author": { "name": "Tom Eccles", "email": "tom.eccles@arm.com", "time": "Fri Mar 15 11:46:12 2024 +0000" }, "committer": { "name": "Copybara-Service", "email": "copybara-worker@google.com", "time": "Fri Mar 15 04:48:54 2024 -0700" }, "message": "[flang] support fir.alloca operations inside of omp reduction ops (#84952)\n\nAdvise to place the alloca at the start of the first block of whichever\nregion (init or combiner) we are currently inside.\n\nIt probably isn\u0027t safe to put an alloca inside of a combiner region\nbecause this will be executed multiple times. But that would be a bug to\nfix in Lower/OpenMP.cpp, not here.\n\nOpenMP array reductions 1/6\nNext PR: https://github.com/llvm/llvm-project/pull/84953\n\nGitOrigin-RevId: e12b46fef76472b3eeb3c689dbd848c72ff8486f\n" }, { "commit": "930a84268d3ab4f660ba5d7ed9f8b22d2a0d79ed", "tree": "8089b5a252b4779ded07f151719e3ce1172c4dd1", "parents": [ "24b5eb3e25fb02d6451f5525611602465f584941" ], "author": { "name": "Tom Eccles", "email": "tom.eccles@arm.com", "time": "Fri Mar 15 11:12:09 2024 +0000" }, "committer": { "name": "Copybara-Service", "email": "copybara-worker@google.com", "time": "Fri Mar 15 04:14:12 2024 -0700" }, "message": "[flang][Semantics][OpenMP] set intrinsic attr for reductions (#85114)\n\nReductions such as min are intrinsic procedures. This distinguishes them\nfrom user defined reductions. Previously, the intrinsic attribute was\nnot set when visiting reduction clauses causing them to be missed.\n\nwsloop-reduction-min.f90 (the other min reduction test) worked because\nit contained \"min\" used as an intrinsic inside of the body of the\nreduction. This allowed ResolveNamesVisitor::HandleProcedureName to set\nthe correct attribute on that Symbol.\n\nGitOrigin-RevId: 53d8c6b1b1f7cfce9bd42032e8cb6cc1ddcf6c78\n" }, { "commit": "24b5eb3e25fb02d6451f5525611602465f584941", "tree": "d8be955f4f2c98ddebf260e6de3a8bee0a7ee507", "parents": [ "f51f73e3bc5f4026fa289230d5c74587b10aba5c" ], "author": { "name": "Iman Hosseini", "email": "hosseini.iman@yahoo.com", "time": "Fri Mar 15 01:11:38 2024 +0000" }, "committer": { "name": "Copybara-Service", "email": "copybara-worker@google.com", "time": "Thu Mar 14 18:14:33 2024 -0700" }, "message": "[flang][cuda] Update FIROps.td to add $grid_z to CudaKernelLaunch (#85318)\n\ngrid can be 3 dimensional. (@clementval)\n\nGitOrigin-RevId: b4d3c2cac2426070258cdb32d6932bf05e938c7d\n" }, { "commit": "f51f73e3bc5f4026fa289230d5c74587b10aba5c", "tree": "cceb8d96005cc7653931e553cc13f9205f2be539", "parents": [ "4222f5bdfa1a04fb417aaefcbab332f26ad3eee3" ], "author": { "name": "Valentin Clement", "email": "clementval@gmail.com", "time": "Thu Mar 14 17:27:20 2024 -0700" }, "committer": { "name": "Copybara-Service", "email": "copybara-worker@google.com", "time": "Thu Mar 14 17:32:23 2024 -0700" }, "message": "[flang] Avoid module dependency failure when __fortran_buitlin is updated\n\nGitOrigin-RevId: 6b2bab2839c7a379556a10287034bd55906d7094\n" }, { "commit": "4222f5bdfa1a04fb417aaefcbab332f26ad3eee3", "tree": "1dd04fa604722c711bbaf2cd68a73e7d59fc2f37", "parents": [ "5287b5b419946e21e4b1fcf121657a17e9948da1" ], "author": { "name": "Valentin Clement", "email": "clementval@gmail.com", "time": "Wed Mar 13 14:40:01 2024 -0700" }, "committer": { "name": "Copybara-Service", "email": "copybara-worker@google.com", "time": "Thu Mar 14 15:56:55 2024 -0700" }, "message": "[flang] Lower c_ptr_eq/ne for iso_c_binding (#85293)\n\nComparing c_ptr type for equality or inequality is raising an error.\n\n```\nnot yet implemented: intrinsic module procedure: c_ptr_eq\n```\nor this one for inequality\n```\nnot yet implemented: intrinsic module procedure: c_ptr_ne\n```\n\nThis patch adds a lowering for them and fix the `__fortran_builtins.f90` module for inequality.\n\nReland after fix has landed for circular modules #85309\n\nGitOrigin-RevId: c75009ef7c5044cd1d2a54ffc572d609da19cb5a\n" }, { "commit": "5287b5b419946e21e4b1fcf121657a17e9948da1", "tree": "22a4b47b64d66117c44073f1b1029813f5cef2d8", "parents": [ "6ef41b57214eb7f694224e3f5438a5ad23dfe228" ], "author": { "name": "Peter Klausler", "email": "35819229+klausler@users.noreply.github.com", "time": "Thu Mar 14 15:29:06 2024 -0700" }, "committer": { "name": "Copybara-Service", "email": "copybara-worker@google.com", "time": "Thu Mar 14 15:30:18 2024 -0700" }, "message": "[flang] Clip circular dependence between implementation modules (#85309)\n\nflang/module/__fortran_type_info.mod uses __fortran_builtins.mod, but it\nis also implicitly used when compiling __fortran_builtins.f90 (or\nanything else). If __fortran_type_info.mod finds an old\n__fortran_builtins.mod file, compilation can fail while building the new\none.\n\nBreak the dependence by *not* generating runtime derived type\ninformation for __fortran_builtins.f90.\n\nGitOrigin-RevId: dc55c4435d796f6ec316de0698df9b8649816068\n" }, { "commit": "6ef41b57214eb7f694224e3f5438a5ad23dfe228", "tree": "09d49578fb374241fb5c54236cf436c6499ea657", "parents": [ "605bfdf34489273c815171117692e65d459a3ac2" ], "author": { "name": "Krzysztof Parzyszek", "email": "Krzysztof.Parzyszek@amd.com", "time": "Thu Mar 14 17:24:40 2024 -0500" }, "committer": { "name": "Copybara-Service", "email": "copybara-worker@google.com", "time": "Thu Mar 14 15:30:10 2024 -0700" }, "message": "[flang][OpenMP] Convert unique clauses in ClauseProcessor (#81622)\n\nTemporarily rename old clause list to `clauses2`, old clause iterator to\n`ClauseIterator2`.\nChange `findUniqueClause` to iterate over `omp::Clause` objects, modify\nall handlers to operate on \u0027omp::clause::xyz` equivalents.\n\n[Clause representation 2/6]\n\nGitOrigin-RevId: f9e557961e993d9b9b4e4782d345cbb2c87e9361\n" }, { "commit": "605bfdf34489273c815171117692e65d459a3ac2", "tree": "e65a81f437aecff2e1ef8a79fa4a7e09b625fe8b", "parents": [ "c03360a0538c8ef08136a2ecbf4bd4c70c8eb334" ], "author": { "name": "Slava Zakharin", "email": "szakharin@nvidia.com", "time": "Thu Mar 14 13:00:46 2024 -0700" }, "committer": { "name": "Copybara-Service", "email": "copybara-worker@google.com", "time": "Thu Mar 14 13:02:44 2024 -0700" }, "message": "[flang][runtime] Temporary fix for unresolved reference in CUDA F18 runtime. (#85294)\n\nAvoid referencing executionEnvironment in the device code, since\nenvironment.cpp is not part of the CUDA build yet.\nThis is a temporary fix before #85182 is merged.\n\nGitOrigin-RevId: c08d70a5cbc61efc5c8636c8788f39270f59dec5\n" }, { "commit": "c03360a0538c8ef08136a2ecbf4bd4c70c8eb334", "tree": "ab68c755cf268d2bb80fd197e6740f3022bb3edd", "parents": [ "01bb3a4030cd599f9fa0c141e94f8d45dc15d9f4" ], "author": { "name": "Valentin Clement (バレンタイン クレメン)", "email": "clementval@gmail.com", "time": "Thu Mar 14 11:27:33 2024 -0700" }, "committer": { "name": "Copybara-Service", "email": "copybara-worker@google.com", "time": "Thu Mar 14 11:31:27 2024 -0700" }, "message": "Revert \"[flang] Lower c_ptr_eq/ne for iso_c_binding\" (#85293)\n\nReverts llvm/llvm-project#85135\n\nThere is an issue with module file generation in flang build.\n\nGitOrigin-RevId: 8e3c0a299f7eb8019f70420bb9d5362731ba13fe\n" }, { "commit": "01bb3a4030cd599f9fa0c141e94f8d45dc15d9f4", "tree": "8fb53de2082488cb2226ad1aa0f21813eb6fc3e4", "parents": [ "f517b805d3baf1b71454a1f94338f6d17c2accd3" ], "author": { "name": "Valentin Clement (バレンタイン クレメン)", "email": "clementval@gmail.com", "time": "Thu Mar 14 10:30:23 2024 -0700" }, "committer": { "name": "Copybara-Service", "email": "copybara-worker@google.com", "time": "Thu Mar 14 10:34:59 2024 -0700" }, "message": "[flang] Lower c_ptr_eq/ne for iso_c_binding (#85135)\n\nComparing c_ptr type for equality or inequality is raising an error.\n\n```\nnot yet implemented: intrinsic module procedure: c_ptr_eq\n```\nor this one for inequality\n```\nnot yet implemented: intrinsic module procedure: c_ptr_ne\n```\n\nThis patch adds a lowering for them and fix the `__fortran_builtins.f90`\nmodule for inequality.\n\nGitOrigin-RevId: 15788e8dd38ffaa4336eda4c03079b6ea4d7df6d\n" }, { "commit": "f517b805d3baf1b71454a1f94338f6d17c2accd3", "tree": "ab68c755cf268d2bb80fd197e6740f3022bb3edd", "parents": [ "cd0973333a090e6dd478b169d9e1e97a742a786d" ], "author": { "name": "Krzysztof Parzyszek", "email": "Krzysztof.Parzyszek@amd.com", "time": "Thu Mar 14 11:46:52 2024 -0500" }, "committer": { "name": "Copybara-Service", "email": "copybara-worker@google.com", "time": "Thu Mar 14 09:53:11 2024 -0700" }, "message": "Fix NDEBUG build: guard call to `dump` with #if/#endif\n\nGitOrigin-RevId: 5a77bdc3e7d60c1724054d09a7dc7c67fb58ea9a\n" }, { "commit": "cd0973333a090e6dd478b169d9e1e97a742a786d", "tree": "f026c98b97dbb64080dae7f4f1bb9943b87a6f82", "parents": [ "3f0e52dd005668bc5f014a7e05bb63015fdec917" ], "author": { "name": "Valentin Clement (バレンタイン クレメン)", "email": "clementval@gmail.com", "time": "Thu Mar 14 09:39:28 2024 -0700" }, "committer": { "name": "Copybara-Service", "email": "copybara-worker@google.com", "time": "Thu Mar 14 09:41:31 2024 -0700" }, "message": "[flang][NFC] Expose patterns from PreCGRewrite pass (#85156)\n\nExpose patterns so they can be reused in other passes.\n\nGitOrigin-RevId: 22eb8000d22efe1bf06518e84af84d34ff6375de\n" }, { "commit": "3f0e52dd005668bc5f014a7e05bb63015fdec917", "tree": "b2164a6f185c48177f1be3c8144834a4dcf94125", "parents": [ "75c5fbf1dff12abcec5b77206c7b502d0446c1f5" ], "author": { "name": "Krzysztof Parzyszek", "email": "Krzysztof.Parzyszek@amd.com", "time": "Thu Mar 14 11:05:44 2024 -0500" }, "committer": { "name": "Copybara-Service", "email": "copybara-worker@google.com", "time": "Thu Mar 14 09:10:04 2024 -0700" }, "message": "Fix -Werror build\n\nIn file included from ../llvm-project/flang/lib/Lower/OpenMP/Clauses.cpp:9:\n../llvm-project/flang/lib/Lower/OpenMP/Clauses.h:195:17: error: suggest braces around initialization of subobject [-Werror,-Wmissing-braces]\n 195 | return Clause{id, specific, source};\n | ^~~~~~~~~~~~\n | { }\n\nGitOrigin-RevId: 6479218932117ab36cba578bb458ee7c0fb4bf0a\n" }, { "commit": "75c5fbf1dff12abcec5b77206c7b502d0446c1f5", "tree": "8877b7c6505107a88c21849d0922c6ee6fb8f79b", "parents": [ "0bf16777435550e9e54fd2e00ecb8d55bc59fd1b" ], "author": { "name": "Krzysztof Parzyszek", "email": "Krzysztof.Parzyszek@amd.com", "time": "Thu Mar 14 10:26:03 2024 -0500" }, "committer": { "name": "Copybara-Service", "email": "copybara-worker@google.com", "time": "Thu Mar 14 08:29:00 2024 -0700" }, "message": "[flang][OpenMP] Implement flexible OpenMP clause representation (#81621)\n\nThe new set of classes representing OpenMP classes mimics the contents\nof parser::OmpClause, but differs in a few aspects:\n- it can be easily created, copied, etc.\n- is based on semantics::SomeExpr instead of parser objects.\n\nThis set of classes is geared towards a language-agnostic representation\nof OpenMP clauses. While the class members are still based on flang\u0027s\n`parser::OmpClause`, the classes themselves are actually C++ templates\nparameterized with types essential to represent necessary information.\nThe two parameters are\n- `IdType`: the type that can represent object\u0027s identity (for flang it\nwill be `semantics::Symbol *`),\n- `ExprType`: the type that can represent expressions, arithmetic and\nobject references (`semantics::MaybeExpr` in flang).\n\nThe templates are defined in a namespace `tomp` (to distinguish it from\n`omp`).\n\nThis patch introduces file \"Clauses.cpp\", which contains instantiations\nof all of the templates for flang. The instantiations are members of\nnamespace `omp`, and include an all-encompassing variant class\n`omp::Clause`, which is the analog of `parser::OmpClause`.\nThe class `OmpObject` is represented by `omp::Object`, which contains\nthe symbol associated with the object, and `semantics::MaybeExpr`\nrepresenting the designator for the symbol reference. For each specific\nclause in the variant `parser::OmpClause`, there exists a `make`\nfunction that will generate the corresponding `omp::Clause` from it. The\nintent was to use the make functions as variant visitors. The creation\nof a clause instance would then follow the pattern:\n```\nomp::Clause clause \u003d std::visit([](auto \u0026\u0026s) { return make(s, semaCtx); }, parserClause.u);\n```\n\nIf a new clause `foo` is added in the future, then:\n- a new template `tomp::FooT` representing the clause needs to be added\nto ClauseT.h,\n- a new instance needs to be created in flang, this can be as simple as\n`using Foo \u003d tomp::FooT\u003c...\u003e`,\n- a new make function needs to be implemented to create object of class\nFoo from `parser::OmpClause::Foo`.\n\nThis patch only introduces the new classes, they are not yet used\nanywhere.\n\n[Clause representation 1/6]\n\nGitOrigin-RevId: ea2cfcc15b4a0c5e823ed173ac8701d1ba6081eb\n" }, { "commit": "0bf16777435550e9e54fd2e00ecb8d55bc59fd1b", "tree": "ed5404a9729ff4c5a113b06c2a1c3ce0dc46dd60", "parents": [ "3d61dbc693664b644d2675349e2fc1dde535972a" ], "author": { "name": "Slava Zakharin", "email": "szakharin@nvidia.com", "time": "Wed Mar 13 16:04:16 2024 -0700" }, "committer": { "name": "Copybara-Service", "email": "copybara-worker@google.com", "time": "Wed Mar 13 16:10:43 2024 -0700" }, "message": "[flang][runtime] Fixed flang-runtime-cuda-gcc builder after af964c7. (#85144)\n\nGitOrigin-RevId: b87db5b6c28f1b5b2358213351d837bc72777cd5\n" }, { "commit": "3d61dbc693664b644d2675349e2fc1dde535972a", "tree": "aa83e9c65a2807c560cf90372f5d20d4905f93c5", "parents": [ "1467379d0972ee2211dc7c4976ed09782901db9a" ], "author": { "name": "Peter Klausler", "email": "35819229+klausler@users.noreply.github.com", "time": "Wed Mar 13 15:13:56 2024 -0700" }, "committer": { "name": "Copybara-Service", "email": "copybara-worker@google.com", "time": "Wed Mar 13 15:20:05 2024 -0700" }, "message": "[flang] Correct accessibility of name that is both generic and derive… (#85098)\n\n…d type\n\nWhen the same name is used for a derived type and generic interface in a\nmodule, and no explicit PUBLIC or PRIVATE statement appears for the name\nbut the derived type definition does have an explicit accessibility,\nthat accessibility must also apply to the generic interface.\n\nGitOrigin-RevId: 702a86a8f1e4d96c62574fc8d7dd9ccea243517a\n" }, { "commit": "1467379d0972ee2211dc7c4976ed09782901db9a", "tree": "a70e368ad9a31406339292ce3d22c39052a0d5ae", "parents": [ "6f54c53fbe331c509d07e48b4ce702c1823675b7" ], "author": { "name": "Peter Klausler", "email": "35819229+klausler@users.noreply.github.com", "time": "Wed Mar 13 15:02:00 2024 -0700" }, "committer": { "name": "Copybara-Service", "email": "copybara-worker@google.com", "time": "Wed Mar 13 15:07:50 2024 -0700" }, "message": "[flang][runtime] Handle end of internal output correctly (#84994)\n\nAt the end of an internal output statement, be sure to finish any\nfollowing control edit descriptors in the format (if any), and (for\noutput) advance to the next record. Return the right I/O error status\ncode if output overruns the buffer.\n\nGitOrigin-RevId: fc71a49eca630a0f201261b89c5c9b0252ddb48b\n" }, { "commit": "6f54c53fbe331c509d07e48b4ce702c1823675b7", "tree": "8e06e1f823b954cc5876e86b1d919e8feac28b1c", "parents": [ "a09b4d058fffa978bd1dcbd34866087e3ecb96fb" ], "author": { "name": "Peter Klausler", "email": "35819229+klausler@users.noreply.github.com", "time": "Wed Mar 13 14:52:25 2024 -0700" }, "committer": { "name": "Copybara-Service", "email": "copybara-worker@google.com", "time": "Wed Mar 13 14:58:52 2024 -0700" }, "message": "[flang][runtime] Let FORT_CHECK_POINTER_DEALLOCATION\u003d0 disable runtime … (#84956)\n\n…check\n\nAdd an environment variable by which a user can disable the pointer\nvalidation check in DEALLOCATE statement handling. This is not safe, but\nit can help make a code work that allocates a pointer with an extended\nderived type, associates its target with a pointer to one of its\nancestor types, and then deallocates that pointer.\n\nGitOrigin-RevId: af964c7e31f0728e84c97b734933fcb9a1912bce\n" }, { "commit": "a09b4d058fffa978bd1dcbd34866087e3ecb96fb", "tree": "dfd7c93bdb8ba9c4c590c0a2114a41eaa0d61efc", "parents": [ "f05f77fd6789d5103637b5b3464045f3db96f6c7" ], "author": { "name": "Peter Klausler", "email": "35819229+klausler@users.noreply.github.com", "time": "Wed Mar 13 14:42:40 2024 -0700" }, "committer": { "name": "Copybara-Service", "email": "copybara-worker@google.com", "time": "Wed Mar 13 14:49:56 2024 -0700" }, "message": "[flang] Support multiple distinct module files with same name in one … (#84838)\n\n…compilation\n\nAllow multiple module files with the same module name to exist in one\ncompilation; distinct modules are distinguished by their hashes.\n\nGitOrigin-RevId: 5661188c5766c3136d1954d769825261715b1f9a\n" }, { "commit": "f05f77fd6789d5103637b5b3464045f3db96f6c7", "tree": "40337e0e938f02549610253a0bd8572ed089b4c8", "parents": [ "8006d39bcb74e23f59066af4b4bf93493a9268f1" ], "author": { "name": "Peter Klausler", "email": "35819229+klausler@users.noreply.github.com", "time": "Wed Mar 13 14:30:04 2024 -0700" }, "committer": { "name": "Copybara-Service", "email": "copybara-worker@google.com", "time": "Wed Mar 13 14:36:36 2024 -0700" }, "message": "[flang] Omit parent components for references to bindings (#84836)\n\nhttps://github.com/llvm/llvm-project/pull/78593 changed expression\nsemantics to always include the names of parent components that were\nnecessary to access an inherited component. This turns out to have\nbroken calls to inherited NOPASS procedure bindings. Update the patch to\nomit explicit parent components when accessing bindings, while retaining\nthem for component accesses (including procedure components).\n\nGitOrigin-RevId: ccfb9e6eb7429885e6d09e99cf89bce41f1ca3cc\n" }, { "commit": "8006d39bcb74e23f59066af4b4bf93493a9268f1", "tree": "ebb086483e3d1817b7bd288834a9c112bbadd1d8", "parents": [ "1618f0a5ef6d0fab3fafdfecfd0a7dfb3ae16716" ], "author": { "name": "Peter Klausler", "email": "35819229+klausler@users.noreply.github.com", "time": "Wed Mar 13 14:11:45 2024 -0700" }, "committer": { "name": "Copybara-Service", "email": "copybara-worker@google.com", "time": "Wed Mar 13 14:17:59 2024 -0700" }, "message": "[flang] Emit warning when Hollerith actual passed to CLASS(*) (#84084)\n\nWhen a Hollerith actual argument is associated with an unlimited\npolymorphic dummy argument, it\u0027s treated as if it were CHARACTER. Some\nother compilers treat it as if it had been BOZ, so emit a portability\nwarning.\n\nResolves https://github.com/llvm/llvm-project/issues/83548.\n\nGitOrigin-RevId: 03e50c451427d908bbf8cf2d455de3ebba49fe4f\n" }, { "commit": "1618f0a5ef6d0fab3fafdfecfd0a7dfb3ae16716", "tree": "29f59b94cb2ef7ebaacc5f86fe849a5036bef836", "parents": [ "7e01b0032429c8e09fdc77154cdc1610a25be461" ], "author": { "name": "Valentin Clement (バレンタイン クレメン)", "email": "clementval@gmail.com", "time": "Wed Mar 13 09:14:40 2024 -0700" }, "committer": { "name": "Copybara-Service", "email": "copybara-worker@google.com", "time": "Wed Mar 13 09:16:25 2024 -0700" }, "message": "[flang][cuda] Enable cuda with -x cuda option (#84944)\n\nFlang driver was already able to enable the CUDA language feature base\non the file extension but there was no command line option. This PR adds\none.\n\nGitOrigin-RevId: 8a8ef1cacfcd7745d2b6ad00431e6fa9ab9a2fb4\n" }, { "commit": "7e01b0032429c8e09fdc77154cdc1610a25be461", "tree": "33d7e247fcd20d0966b88d8fc827891664a31d85", "parents": [ "a2b3567c52a3fa51102edd7a410efec0b9761ec4" ], "author": { "name": "Slava Zakharin", "email": "szakharin@nvidia.com", "time": "Wed Mar 13 08:27:15 2024 -0700" }, "committer": { "name": "Copybara-Service", "email": "copybara-worker@google.com", "time": "Wed Mar 13 08:30:53 2024 -0700" }, "message": "[flang][runtime] Added lowering and runtime for REAL(16) IEEE_FMA. (#85017)\n\nGitOrigin-RevId: d24ff9aec4f2741804268a66d711d6d31cd06138\n" }, { "commit": "a2b3567c52a3fa51102edd7a410efec0b9761ec4", "tree": "7d1c1d769dd48a5f538dfadc0a4ac45f1e45aad7", "parents": [ "969798e47037439e5c0dfa6e48b490205ba108bd" ], "author": { "name": "Slava Zakharin", "email": "szakharin@nvidia.com", "time": "Wed Mar 13 08:26:49 2024 -0700" }, "committer": { "name": "Copybara-Service", "email": "copybara-worker@google.com", "time": "Wed Mar 13 08:30:44 2024 -0700" }, "message": "[flang] Enable REAL(16) MODULO lowering. (#85005)\n\nThe lowering currently relies on the trivial operations,\nso we should just lower it for REAL(16) the same way we do this\nfor other trivial operations.\n\nGitOrigin-RevId: 286c3b500dc36b2451683bde5d681bf6efea3e63\n" }, { "commit": "969798e47037439e5c0dfa6e48b490205ba108bd", "tree": "02eb710b7e15ee588e89c82fffde47ffda6592d1", "parents": [ "a3cd1095d6558476fd2843b12b34c9049fa02d54" ], "author": { "name": "Slava Zakharin", "email": "szakharin@nvidia.com", "time": "Wed Mar 13 08:26:33 2024 -0700" }, "committer": { "name": "Copybara-Service", "email": "copybara-worker@google.com", "time": "Wed Mar 13 08:30:35 2024 -0700" }, "message": "[flang] Moved REAL(16) RANDOM_NUMBER to Float128Math library. (#85002)\n\nGitOrigin-RevId: e0738cc65865c31975b5bdbbf89c5a4dbbe06dc5\n" }, { "commit": "a3cd1095d6558476fd2843b12b34c9049fa02d54", "tree": "c0ede57cd67449c93993fc56ad0efae0c42380a4", "parents": [ "bdb17e2783b2aa9718c4e77a8fa2ecc3cde665b9" ], "author": { "name": "agozillon", "email": "Andrew.Gozillon@amd.com", "time": "Wed Mar 13 16:18:21 2024 +0100" }, "committer": { "name": "Copybara-Service", "email": "copybara-worker@google.com", "time": "Wed Mar 13 08:24:27 2024 -0700" }, "message": "[Flang][OpenMP] Implement \"promotion\" of use_device_ptr non-cptr arguments to use_device_addr (#82834)\n\nThis effectively implements some now deprecated OpenMP functionality\nthat some applications (most notably at the moment GenASiS)\nunfortunately depend on (deprecated in specification version 5.2):\n\n\"If a list item in a use_device_ptr clause is not of type C_PTR, the\nbehavior is as if the list item appeared in a use_device_addr clause.\nSupport for such list items in a use_device_ptr clause is deprecated.\"\n\nThis PR downgrades the hard-error to a deprecated warning and \"promotes\"\nthe above cases by simply moving the offending operands from the\nuse_device_ptr value list to the back of the use_device_addr list (and\nmoves the related symbols, locs and types that form the BlockArgs\ncorrespondingly) and then the generation of the target data construct\nproceeds as normal.\n\nGitOrigin-RevId: 096ee4e16fd62cd578d20ec4e8ad4756f4e369ee\n" }, { "commit": "bdb17e2783b2aa9718c4e77a8fa2ecc3cde665b9", "tree": "6a7f40c0bb598d66b093b5b4777df6b3981671e7", "parents": [ "58c1e82048caead8088be65a368a0969237307ac" ], "author": { "name": "Tom Eccles", "email": "tom.eccles@arm.com", "time": "Wed Mar 13 14:51:09 2024 +0000" }, "committer": { "name": "Copybara-Service", "email": "copybara-worker@google.com", "time": "Wed Mar 13 07:54:02 2024 -0700" }, "message": "[flang][OpenMP][OMPIRBuilder][mlir] Optionally pass reduction vars by ref (#84304)\n\nPreviously reduction variables were always passed by value into and out\nof the initialization and combiner regions of the OpenMP reduction\ndeclare operation.\n\nThis worked well for reductions of primitive types (and might perform\nbetter than passing by reference). But passing by reference will be\nuseful for array and derived type reductions (e.g. to move allocation\ninside of the init region).\n\nPassing reductions by reference requires different LLVM-IR generation\nwhen lowering from MLIR because some of the loads/stores/allocations\nwill now be moved inside of the init and combiner regions. This\nalternate code generation is requested using a new attribute to\nomp.wsloop and omp.parallel.\n\nExisting lowerings from mlir are unaffected (these will continue to use\nthe by-value argument passing.\n\nFlang will continue to pass by-value argument passing for trivial types\nunless a (hidden) command line argument is supplied. Non-trivial types\nwill always use the by-ref lowering.\n\nArray reductions are not ready yet (but are coming very soon). In the\nmeantime, this is tested by forcing existing reductions to use by-ref.\n\nCommit series for by-ref OpenMP reductions 3/3\n\n---------\n\nCo-authored-by: Mats Petersson \u003cmats.petersson@arm.com\u003e\nGitOrigin-RevId: f46f5a01f4d5a7dcaf4a8fde5fc44eafdd9dbf27\n" } ], "next": "58c1e82048caead8088be65a368a0969237307ac" }