[flang-commits] [flang] [llvm] [mlir] [Flang][OpenMP] Implement device clause lowering for target directive (PR #173509)

via flang-commits flang-commits at lists.llvm.org
Wed Dec 24 12:54:44 PST 2025


github-actions[bot] wrote:

<!--PREMERGE ADVISOR COMMENT: Linux-->
# :penguin: Linux x64 Test Results

* 97370 tests passed
* 1858 tests skipped

All executed tests passed, but another part of the build **failed**. Click on a failure below to see the details.

<details>
<summary>unittests/Frontend/CMakeFiles/LLVMFrontendTests.dir/OpenMPIRBuilderTest.cpp.o</summary>

```
FAILED: unittests/Frontend/CMakeFiles/LLVMFrontendTests.dir/OpenMPIRBuilderTest.cpp.o
sccache /opt/llvm/bin/clang++ -DGTEST_HAS_RTTI=0 -DLLVM_BUILD_STATIC -D_DEBUG -D_GLIBCXX_ASSERTIONS -D_GLIBCXX_USE_CXX11_ABI=1 -D_GNU_SOURCE -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -I/home/gha/actions-runner/_work/llvm-project/llvm-project/build/unittests/Frontend -I/home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/unittests/Frontend -I/home/gha/actions-runner/_work/llvm-project/llvm-project/build/include -I/home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/include -I/home/gha/actions-runner/_work/llvm-project/llvm-project/third-party/unittest/googletest/include -I/home/gha/actions-runner/_work/llvm-project/llvm-project/third-party/unittest/googlemock/include -gmlt -fPIC -fno-semantic-interposition -fvisibility-inlines-hidden -Werror -Werror=date-time -Werror=unguarded-availability-new -Wall -Wextra -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wmissing-field-initializers -pedantic -Wno-long-long -Wc++98-compat-extra-semi -Wimplicit-fallthrough -Wcovered-switch-default -Wno-noexcept-type -Wnon-virtual-dtor -Wdelete-non-virtual-dtor -Wsuggest-override -Wstring-conversion -Wno-pass-failed -Wmisleading-indentation -Wctad-maybe-unsupported -fdiagnostics-color -ffunction-sections -fdata-sections -O3 -DNDEBUG -std=c++17  -Wno-variadic-macros -Wno-gnu-zero-variadic-macro-arguments -fno-exceptions -funwind-tables -fno-rtti -UNDEBUG -Wno-suggest-override -MD -MT unittests/Frontend/CMakeFiles/LLVMFrontendTests.dir/OpenMPIRBuilderTest.cpp.o -MF unittests/Frontend/CMakeFiles/LLVMFrontendTests.dir/OpenMPIRBuilderTest.cpp.o.d -o unittests/Frontend/CMakeFiles/LLVMFrontendTests.dir/OpenMPIRBuilderTest.cpp.o -c /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/unittests/Frontend/OpenMPIRBuilderTest.cpp
/home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/unittests/Frontend/OpenMPIRBuilderTest.cpp:6508:55: error: no viable conversion from 'TargetRegionEntryInfo' to 'Value *'
6508 |                               Builder.saveIP(), Info, EntryInfo, DefaultAttrs,
|                                                       ^~~~~~~~~
/home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/include/llvm/Frontend/OpenMP/OMPIRBuilder.h:3344:14: note: passing argument to parameter 'DeviceID' here
3344 |       Value *DeviceID, TargetRegionEntryInfo &EntryInfo,
|              ^
/home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/unittests/Frontend/OpenMPIRBuilderTest.cpp:6682:37: error: no viable conversion from 'TargetRegionEntryInfo' to 'Value *'
6682 |                               Info, EntryInfo, DefaultAttrs, RuntimeAttrs,
|                                     ^~~~~~~~~
/home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/include/llvm/Frontend/OpenMP/OMPIRBuilder.h:3344:14: note: passing argument to parameter 'DeviceID' here
3344 |       Value *DeviceID, TargetRegionEntryInfo &EntryInfo,
|              ^
/home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/unittests/Frontend/OpenMPIRBuilderTest.cpp:6847:49: error: too few arguments to function call, expected at least 16, have 15
6843 |       OMPBuilder.createTarget(OmpLoc, /*IsOffloadEntry=*/true, Builder.saveIP(),
|       ~~~~~~~~~~~~~~~~~~~~~~~
6844 |                               Builder.saveIP(), Info, EntryInfo, DefaultAttrs,
6845 |                               RuntimeAttrs, /*IfCond=*/nullptr, Inputs,
6846 |                               GenMapInfoCB, BodyGenCB, SimpleArgAccessorCB,
6847 |                               CustomMapperCB, {}));
|                                                 ^
/home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/unittests/Frontend/OpenMPIRBuilderTest.cpp:37:30: note: expanded from macro 'ASSERT_EXPECTED_INIT'
37 |   auto __Expected##VarName = Init;                                             \
|                              ^~~~
/home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/include/llvm/Frontend/OpenMP/OMPIRBuilder.h:3340:33: note: 'createTarget' declared here
3340 |   LLVM_ABI InsertPointOrErrorTy createTarget(
|                                 ^
3341 |       const LocationDescription &Loc, bool IsOffloadEntry,
|       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
3342 |       OpenMPIRBuilder::InsertPointTy AllocaIP,
|       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
3343 |       OpenMPIRBuilder::InsertPointTy CodeGenIP, TargetDataInfo &Info,
|       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
3344 |       Value *DeviceID, TargetRegionEntryInfo &EntryInfo,
|       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
3345 |       const TargetKernelDefaultAttrs &DefaultAttrs,
|       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
3346 |       const TargetKernelRuntimeAttrs &RuntimeAttrs, Value *IfCond,
|       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
3347 |       SmallVectorImpl<Value *> &Inputs, GenMapInfoCallbackTy GenMapInfoCB,
|       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
3348 |       TargetBodyGenCallbackTy BodyGenCB,
|       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
3349 |       TargetGenArgAccessorsCallbackTy ArgAccessorFuncCB,
|       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
3350 |       CustomMapperCallbackTy CustomMapperCB,
|       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
3351 |       const SmallVector<DependData> &Dependencies, bool HasNowait = false,
|       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
3352 |       Value *DynCGroupMem = nullptr,
|       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
3353 |       omp::OMPDynGroupprivateFallbackType DynCGroupMemFallback =
|       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
3354 |           omp::OMPDynGroupprivateFallbackType::Abort);
|           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/unittests/Frontend/OpenMPIRBuilderTest.cpp:6954:78: error: too few arguments to function call, expected at least 16, have 15
6950 |                        OMPBuilder.createTarget(
|                        ~~~~~~~~~~~~~~~~~~~~~~~
6951 |                            Loc, /*IsOffloadEntry=*/true, EntryIP, EntryIP, Info,
6952 |                            EntryInfo, DefaultAttrs, RuntimeAttrs,
6953 |                            /*IfCond=*/nullptr, CapturedArgs, GenMapInfoCB,
6954 |                            BodyGenCB, SimpleArgAccessorCB, CustomMapperCB, {}));
|                                                                              ^
/home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/unittests/Frontend/OpenMPIRBuilderTest.cpp:37:30: note: expanded from macro 'ASSERT_EXPECTED_INIT'
37 |   auto __Expected##VarName = Init;                                             \
|                              ^~~~
/home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/include/llvm/Frontend/OpenMP/OMPIRBuilder.h:3340:33: note: 'createTarget' declared here
3340 |   LLVM_ABI InsertPointOrErrorTy createTarget(
|                                 ^
3341 |       const LocationDescription &Loc, bool IsOffloadEntry,
|       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
3342 |       OpenMPIRBuilder::InsertPointTy AllocaIP,
|       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
3343 |       OpenMPIRBuilder::InsertPointTy CodeGenIP, TargetDataInfo &Info,
|       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
3344 |       Value *DeviceID, TargetRegionEntryInfo &EntryInfo,
|       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
3345 |       const TargetKernelDefaultAttrs &DefaultAttrs,
|       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
3346 |       const TargetKernelRuntimeAttrs &RuntimeAttrs, Value *IfCond,
|       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
3347 |       SmallVectorImpl<Value *> &Inputs, GenMapInfoCallbackTy GenMapInfoCB,
|       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
3348 |       TargetBodyGenCallbackTy BodyGenCB,
|       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
3349 |       TargetGenArgAccessorsCallbackTy ArgAccessorFuncCB,
|       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
3350 |       CustomMapperCallbackTy CustomMapperCB,
|       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
3351 |       const SmallVector<DependData> &Dependencies, bool HasNowait = false,
|       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
3352 |       Value *DynCGroupMem = nullptr,
|       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
3353 |       omp::OMPDynGroupprivateFallbackType DynCGroupMemFallback =
|       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
3354 |           omp::OMPDynGroupprivateFallbackType::Abort);
|           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/unittests/Frontend/OpenMPIRBuilderTest.cpp:7076:37: error: no viable conversion from 'TargetRegionEntryInfo' to 'Value *'
7076 |                               Info, EntryInfo, DefaultAttrs, RuntimeAttrs,
|                                     ^~~~~~~~~
/home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/include/llvm/Frontend/OpenMP/OMPIRBuilder.h:3344:14: note: passing argument to parameter 'DeviceID' here
3344 |       Value *DeviceID, TargetRegionEntryInfo &EntryInfo,
|              ^
5 errors generated.
```
</details>

If these failures are unrelated to your changes (for example tests are broken or flaky at HEAD), please open an issue at https://github.com/llvm/llvm-project/issues and add the `infrastructure` label.

https://github.com/llvm/llvm-project/pull/173509


More information about the flang-commits mailing list